skillfed

Video Action Recognition

Video Action Recognition provides a pipeline for identifying human actions in video by extracting body keypoints and applying rule-based classifiers. It uses MediaPipe Pose to detect 33 body landmarks, then analyzes movement patterns to recognize actions like arm flapping, head banging, and spinning without requiring any model training.

Video Action Recognition detects and classifies human body actions from video using pose estimation and rule-based analysis, without requiring model training.

AI-generated summary based on this skill's SKILL.md

109 19 MIT updated by fdueblab

Install

fdueblab/Micro-Agent/video_action_recognition · repository language: Python

git clone https://github.com/fdueblab/Micro-Agent
cp -r Micro-Agent/workspace/skills/video_action_recognition ~/.claude/skills/video_action_recognition
npx skillfed install fdueblab/Micro-Agent/video_action_recognition

Frequently asked questions

AI-generated answers based on this skill's SKILL.md and metadata

How does Video Action Recognition detect human actions in videos?

Video Action Recognition uses MediaPipe Pose to extract 33 body landmarks from video frames, then applies rule-based classifiers to analyze movement patterns and identify actions like arm flapping, head banging, and spinning. The system requires no model training—it works with pretrained pose detection to recognize behavioral motions in real time.

Can Video Action Recognition extract pose keypoints for action classification?

Yes. Video Action Recognition extracts pose keypoints and analyzes movement patterns to classify actions. By tracking the 33 body landmarks detected by MediaPipe Pose, the skill identifies specific motions and gestures, enabling skeleton-based action recognition without requiring you to train custom models.

What specific motions can Video Action Recognition detect?

Video Action Recognition implements rule-based classifiers for specific motions including arm flapping, head banging, and spinning. The skill builds an end-to-end video processing pipeline that analyzes body movement patterns to recognize these and other behavioral actions from video frames.

Does Video Action Recognition require model training?

No. Video Action Recognition detects and classifies human body actions from video without any model training. It leverages MediaPipe Pose's pretrained skeleton tracking to extract motion features and applies rule-based classifiers to recognize actions, making it ready to use immediately.

How does Video Action Recognition process video for real-time action detection?

Video Action Recognition builds an end-to-end pipeline that samples video frames, extracts pose keypoints using MediaPipe Pose, and applies rule-based classifiers to detect actions in real time. This skeleton-based approach enables fast behavioral motion analysis without requiring training or complex feature engineering.

What license does Video Action Recognition use?

Video Action Recognition is released under the MIT license, allowing free use, modification, and distribution for both commercial and personal projects.

SKILL.md

rendered from the published skill — quoted content, verbatim

视频动作识别技术指导

本技能为基于视频的人体动作识别算法提供技术规范与实现指导。 适用于需要从视频中检测和分类人体动作、且不依赖 LLM 或模型训练的场景。

技术路线总览

对于不需要训练的视频动作分类任务,推荐以下流水线:

视频获取 → 帧采样 → 人体姿态估计(预训练) → 关键点轨迹提取 → 运动学特征计算 → 规则分类器 → 输出标签

一、视频获取与预处理

1.1 从 YouTube 下载视频

使用 yt-dlpyoutube-dl 的活跃维护分支):

import subprocess, os

def download_video(url: str, output_dir: str = "videos") -> str:
    os.makedirs(output_dir, exist_ok=True)
    output_template = os.path.join(output_dir, "%(id)s.%(ext)s")
    cmd = [
        "yt-dlp",
        "-f", "bestvideo[height<=720][ext=mp4]+bestaudio[ext=m4a]/best[height<=720][ext=mp4]/best",
        "--merge-output-format", "mp4",
        "-o", output_template,
        url,
    ]
    subprocess.run(cmd, check=True, capture_output=True, text=True)
    video_id = url.split("v=")[-1].split("&")[0]
    return os.path.join(output_dir, f"{video_id}.mp4")

依赖:pip install yt-dlp

1.2 帧采样策略
  • 建议采样率:每秒 5-10 帧(fps=5~10)即可满足动作识别需求
  • 对于短视频(<60s),可使用均匀采样(如每隔 N 帧取 1 帧)
  • 对于长视频,可先做运动检测,只对有运动的片段进行分析

```python import cv2

def extract_frames(video_path: str, sample_fps: int = 5) -> list: cap = cv2.VideoCapture(video_path) original_fps = cap.get(cv2.CAP_PROP_FPS)

(truncated - see the full file via the links below)

Read as markdown · JSON record · Browse the source repository

File tree — 2 files
workspace/skills/video_action_recognition/SKILL.md
workspace/skills/video_action_recognition/skill.toml

Related skills

Tags

skeleton-based-analysis pre-trained-models rule-based-classification keypoint-tracking behavioral-detection no-training-required motion-feature-extraction video-processing-pipeline gesture-recognition