舞蹈视频处理工具包 🎯
简洁高效的舞蹈视频处理工具包,专注于两个核心功能:过滤多人视频和切分舞蹈片段。
🚀 核心功能
功能1: 过滤多人视频
- 智能检测: 自动识别视频中的舞者人数
- 批量过滤: 标记多人视频,保留单人舞蹈
- 结果记录: 自动生成过滤报告
功能2: 切分舞蹈视频
- 精准识别: 基于上半身+臀部+大腿的严格检测
- 自动切分: 智能识别舞蹈片段并提取
- 长度过滤: 自动丢弃小于5秒的短片段
- 模型优化: 支持多种YOLOv8模型,自动GPU加速
📦 安装
# 安装依赖
pip install -r requirements.in
# 确保FFmpeg已安装
ffmpeg -version
🎯 快速开始
功能1:过滤多人视频
# 过滤目录中的多人视频
python dance_toolkit.py /path/to/videos --mode filter
# 递归处理子目录
python dance_toolkit.py /path/to/videos --mode filter --recursive
功能2:切分舞蹈视频
# 切分舞蹈视频
python dance_toolkit.py /path/to/videos --mode split
# 同时过滤多人并切分
python dance_toolkit.py /path/to/videos --mode both
# 处理单个文件
python dance_toolkit.py video.mp4 --mode split
⚙️ 高级配置
# 自定义参数
python dance_toolkit.py /path/to/videos \
--mode split \
--model yolov8m-pose.pt \
--min-duration 8.0 \
--sample-interval 2 \
--output my_output \
--debug
参数说明
| 参数 | 默认值 | 说明 |
|---|---|---|
--mode |
split | 处理模式: filter/split/both |
--model |
yolov8n-pose.pt | 姿势检测模型 |
--min-duration |
5.0 | 最小时长(秒),小于此值丢弃 |
--sample-interval |
3 | 采样间隔(秒) |
--recursive |
False | 递归处理子目录 |
--debug |
False | 启用调试模式 |
📊 检测逻辑
舞蹈检测标准
- 上半身: 肩膀关键点有效
- 臀部: 臀部关键点有效
- 大腿: 臀部关键点有效(代表大腿出现)
- 置信度: > 0.5
模型选择
yolov8n-pose.pt- 超轻量,速度最快yolov8s-pose.pt- 小模型,平衡性能yolov8m-pose.pt- 中等模型,精度更好yolov8l-pose.pt- 大模型,高精度yolov8x-pose.pt- 超大模型,最高精度
📁 输出结构
output/
├── logs/
│ └── dance_toolkit_YYYYMMDD_HHMMSS.log
├── filter_results.json # 过滤结果记录
├── 【视频名】/
│ ├── clip_001_0s-15s.mp4
│ ├── clip_002_25s-40s.mp4
│ └── processing_info.json
└── ...
🎬 使用场景
- 舞蹈教学: 提取干净的教学片段
- 内容创作: 准备舞蹈素材
- 数据清洗: 过滤掉多人干扰视频
- 批量处理: 大规模视频整理
📈 性能优化
- CPU/GPU自动选择
- 稀疏采样减少处理时间
- 流式复制保持视频质量
- 批处理支持
Metadata
Release files for dance-video-toolkit 1.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| dance_video_toolkit-1.0.0.tar.gz | 18.7 kB | Without provenance | Details for dance_video_toolkit-1.0.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| dance_video_toolkit-1.0.0-py3-none-any.whl | Python 3 | none | any | Details for dance_video_toolkit-1.0.0-py3-none-any.whl |
Total release size: 38.3 kB
Release files / dance_video_toolkit-1.0.0.tar.gz
| Download URL | dance_video_toolkit-1.0.0.tar.gz |
|---|---|
| Size | 18.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
12f46c31a83aeb67f609630ff1e2fd5ba5b9031c0baa693f1607b24c75c8aace
|
|
BLAKE2b-256 checksum How to use checksums |
46d94acc68c1f1951b870d26a48345d6611ca21eb1d955a2eb1cb19dbff336e1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
Release files / dance_video_toolkit-1.0.0-py3-none-any.whl
| Download URL | dance_video_toolkit-1.0.0-py3-none-any.whl |
|---|---|
| Size | 19.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d9ba8fe8c6e854abc756599711b62e7c0dbb6ac6109a889f67972bfdacf1bcdb
|
|
BLAKE2b-256 checksum How to use checksums |
e137573cf8cb830cb1d3097338b5053ca7a8199c40b399c7e11ff10837be444d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
Security for dance-video-toolkit 1.0.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.