视频移动方向检测

SKILL前端设计
前端设计 未标注权限 许可证不明确
安装这个技能

视频运动方向分析测试技能。播放测试视频触发告警事件,下载事件视频并通过Farneback密集光流法分析运动方向,验证摄像头移动追踪功能。

一句话选型结论

按资料字段整理

视频移动方向检测是前端设计类的 Agent Skill,安装方式未标注,权限级别未标注,许可证不明确,有可直接复制的安装命令。技能本质是给模型读的说明书,效果取决于模型与客户端;装完先用一个小任务验证,再放进正式流程。

分类前端设计 安装方式未标注 权限级别未标注权限 许可证许可证不明确
累计安装 未标注 本周 未标注
GitHub 星标 未标注 仓库 未标注
下载量 未标注 技能市场下载数
权限级别 未标注权限 安装前请确认风险范围
许可证 许可证不明确 未说明

安装

未标注
在支持 Skills 的客户端里执行,装完问一句「你有哪些技能」验证
skillhub install user_337487bc/video-motion-direction-skill
  1. 1
    确认客户端支持

    确认你的客户端支持 Skills(Claude、Codex、Cursor 等),并升级到较新的版本。

  2. 2
    拿到技能文件

    执行上面的命令安装;也可以把仓库里的 SKILL.md 手动放进客户端的 skills 目录。

  3. 3
    刷新技能列表

    重新打开客户端,或刷新技能列表,让新放进来的技能被加载。

  4. 4
    验证是否生效

    问一句「你有哪些技能」,确认列表里出现它,再拿一个小任务试跑。

技能档案

前端设计
字段来自技能仓库与公开索引,中文说明由本站标注
作者 / 维护方user_337487bc仓库 未标注 · 版本 未标注
宿主客户端未标注技能可被这些客户端加载
安装方式未标注安装包 community
权限级别未标注权限安装前请确认风险范围
许可证未说明许可证不明确,商用前请自行确认条款
仓库可用性available技能仓库当前是否可访问
最近核验未标注上游最后核验时间 · 数据更新 1791625178
正文体量5.7 KBSKILL.md 原文大小,越大说明说明书写得越细

典型使用场景

3 类
按分类整理的常见用法,具体以 SKILL.md 为准
出页面与组件

按描述生成页面结构和组件草稿。

调整样式与布局

改间距、配色与响应式布局。

生成设计说明

把设计稿整理成开发能接的说明。

选择建议

装之前先看这几条
按条目字段给出的判断,不替你决定用不用

值得选的地方

  • 有可直接复制的安装命令,不用自己翻文档找入口。

先想清楚的地方

  • 没有标注权限级别,实际能做什么要装好后确认。
  • 许可证不明确,商用或二次分发前先到仓库确认条款。
  • 没有做站内核验,内容以作者仓库为准。
  • 技能只是说明书,实际效果取决于模型与客户端,装完先用小任务试一遍。

更适合

  • 需要在前端设计场景里给模型补一套做法的人。
  • 愿意先读一遍 SKILL.md、确认它会让模型做什么的人。

不太适合

  • 对许可证要求很严、必须明确可商用的人。
  • 只想装完就自动变强、不打算看说明书的人。

同类对比

6 个同类
同分类里挑最接近的几条,字段以各自详情页为准
技能权限级别安装方式累计安装宿主客户端安装命令
视频移动方向检测当前 未标注权限 未标注 未标注 未标注 有
前端设计 只读 GitHub 仓库 882.3 万 Codex、Claude、Cursor 有
Vercel 组合模式 联网访问 GitHub 仓库 385.9 万 Codex、Claude、Cursor 有
Vercel React native skills 前端 只读 GitHub 仓库 246.9 万 Codex、Claude、Cursor 有
adapt 搜索 浏览器控制 GitHub 仓库 202.7 万 Codex、Claude、Cursor 有
使用我的浏览器 浏览器控制 GitHub 仓库 184.8 万 Codex、Claude、Cursor 有

SKILL.md 全文

5.7 KB
模型实际读到的说明书原文,来自技能仓库

video-motion-direction-skill — 视频运动方向分析测试

基于 Farneback 密集光流法分析视频帧间运动,自动将视频按方向变化切分为连续时间段,输出「向左3.5秒 → 静止1.2秒 → 向右5.0秒」的时间轴。

测试流程

  1. 前置条件1: 从 test_config.json 读取配置(应用名称、设备名称、功能项、数据资源)
  2. 前置条件2: ADB端口策略 — 命令行优先 > 配置文件 基础信息.安卓模拟器 > 默认值 5555。模拟器类型映射: 雷电→5555, MuMu→16384
  3. 前置条件3: 调用 ydkj_camera_position_init 执行PTZ预置位初始化
  4. 主流程:
    - 连接设备 → 进入直播页
    - 播放测试视频(PotPlayer),触发移动追踪告警
    - 获取告警事件 → 下载事件关联视频
    - 用 Farneback 密集光流法分析视频运动方向
    - 验证主要方向是否为期望值(默认期望向右)
  5. 输出: JSON 结果文件(含 result.passed)

参数

参数 说明 默认值
--adb-port ADB端口 从配置文件读/5555
--device-name 设备名称 从配置文件读
--video 测试视频路径 从配置文件读/D:\video\运动跟踪_背景不动_从左向右_.mp4
--play-duration 播放时长(秒) 配置文件测试标准/15
--min-segment 最小分析片段(秒) 0.6
--no-ptz 跳过PTZ初始化 无
--skip-app 纯分析模式(跳过APP操作) 无
--prompt 提示词文件路径 无

使用方式

全流程测试(含APP操作)

python motion_direction_test.py

全流程测试(指定参数)

python motion_direction_test.py --adb-port 5555 --device-name ydkj123

纯视频分析模式(跳过APP+PTZ)

python motion_direction_test.py --skip-app --video D:\video\test.mp4 --min-segment 0.6

直接用核心分析模块

python scripts/analyze_motion.py D:\video\test.mp4 --min-segment 0.6

配置项(test_config.json)

基础信息

{
  "基础信息": {
    "应用名称": "移动爱家",
    "产品名称": "V71S",
    "设备名称": "ydkj123",
    "安卓模拟器": "雷电"
  },
  "功能项": {
    "PTZ云台": "支持",
    "移动追踪": "支持"
  },
  "数据资源": {
    "运行跟踪视频": "运动跟踪_背景不动_从左向右_.mp4"
  }
}

输出

测试/执行结果输出到:workspace/test_output/video-motion-direction-skill/motion_direction_test_YYYYMMDD_HHMMSS.json

JSON 输出格式(含 result.passed)

{
  "device": "ydkj123",
  "test_time": "2026-06-12T12:30:00",
  "steps": [
    {"step": 0, "action": "connect_device", "status": "passed"},
    {"step": 1, "action": "ptz_position_init", "status": "passed"},
    {"step": 2, "action": "play_video", "status": "passed"},
    {"step": 3, "action": "fetch_event_video", "status": "passed"},
    {"step": 4, "action": "analyze_direction", "status": "passed", "direction": "right"},
    {"step": 5, "action": "verify_direction", "status": "passed", "expected": "right", "actual": "right"}
  ],
  "result": {
    "passed": true,
    "messages": "success"
  },
  "main_direction": "right",
  "video_analyzed": "D:\\video\\downloaded_20260612_123000.mp4",
  "direction_analysis": {
    "video": "motion_track_downloaded_20260612_123000.mp4",
    "fps": 15.0,
    "duration_sec": 19.87,
    "main_direction": "right",
    "main_direction_percent": 63.6,
    "timeline": [
      {"direction": "right", "start_sec": 0.13, "end_sec": 2.47, "duration_sec": 2.34, "frames": 18, "avg_magnitude": 3.7},
      {"direction": "still", "start_sec": 3.47, "end_sec": 4.47, "duration_sec": 1.0, "frames": 8, "avg_magnitude": 0.0}
    ]
  },
  "verification": {
    "result": {"passed": true, "messages": "PASS: direction=right (expected=right)"},
    "expected_direction": "right",
    "actual_direction": "right"
  }
}

result 字段说明

字段 类型 说明
result.passed bool 全部步骤通过为 true,否则 false
result.messages string "success" 或 "failed"

核心分析模块(analyze_motion.py)

analyze_motion.py 是底层视频分析模块,保持独立可调用:

python skills/video-motion-direction-skill/scripts/analyze_motion.py <input_video> [options]
参数 说明 默认值
input_video 输入视频路径(必填) -
-o, --output JSON 结果输出路径 控制台输出
--skip-frames 跳帧数 1
--min-segment 最小片段时长(秒) 0.6
--still-threshold 静止判定幅度阈值 0.8
--max-frames 最大分析帧数(0=全部) 0
--fps 手动指定fps auto

算法说明

  1. Farneback密集光流:计算相邻帧每个像素的运动向量
  2. 方向判定:按0°/90°/180°/270°分为右/下/左/上四个方向
  3. 滑动窗口平滑:3帧窗口消除单帧毛刺
  4. 短片段合并:小于min-segment的片段合并到相邻最长的片段
  5. 静止判定:整体运动幅度低于still-threshold时标记为静止

依赖

  • Python: opencv-python, numpy, uiautomator2
  • 系统: adb, PotPlayer(播放测试视频时)
  • 技能: ydkj_camera_position_init, ydkj_camera_fetch_events_test, potplayer-video-player-skill, emulator-app-launcher

常见问题

5 问
答案由本站依据条目字段整理
视频移动方向检测怎么安装?

在支持 Skills 的客户端里执行:skillhub install user_337487bc/video-motion-direction-skill。安装方式为未标注。装完刷新技能列表或重开客户端。

视频移动方向检测支持哪些客户端?

资料没有标注宿主客户端,但只要客户端支持 Skills(Claude、Codex、Cursor 等),一般都能加载。

视频移动方向检测权限高吗,安全吗?

权限级别为未标注权限。安装前先看它会读取或写入哪些内容。

视频移动方向检测收费吗?

本站不代收费用,也没有标注具体价格。是否收费取决于技能本身和所用的模型或客户端,正式使用前按作者说明确认。

视频移动方向检测用什么许可证?

许可证标注为 未说明(许可证不明确)。商用或二次分发前请到仓库确认条款原文。

热门专题

按场景挑技能
全部专题 →

技能内容以作者仓库为准;分类、权限级别与许可证状态的中文说明为中文整理,最近核验 未标注。