dhritideepak/safespar
GitHub: dhritideepak/safespar
基于YOLOv8n-pose的计算机视觉pipeline,通过规则化生物力学评分从视频影像中评估武术动作安全性,并探索用学习模型扩展到低质量图像场景。
Stars: 0 | Forks: 0
# safespar
基于计算机视觉的 pipeline,通过 YOLOv8n-pose 关键点提取,利用基于规则的生物力学评分(膝关节屈曲、肘关节伸展、肩部/髋部倾斜、躯干前倾)来评估视频影像中武术动作的安全性。包含用于清理噪声检测的过滤 pipeline,此外还有一个实验性的学习模型,能够对规则无法评分的劣化/低置信度图像进行评分
# 通过计算机视觉进行武术安全性评估
## 概述
一个通过计算机视觉 pipeline 评估视频影像中武术安全性的系统。使用 YOLOv8n-pose 提取姿态关键点,然后通过基于规则的系统计算生物力学安全分数。此外还包含一个实验性的学习模型,旨在探索当基于规则的方法因图像劣化或置信度过低而必须弃权时,该模型能否将安全评分扩展应用到这些场景中。
## 研究问题
学习模型能否将基于几何原理的安全性评分,扩展到那些解析性(基于规则)方法必须弃权的场景中?
## Pipeline
1. **姿态估计** — YOLOv8n-pose (Ultralytics) 从视频帧中提取关键点
2. **检测过滤** — 四阶段过滤链移除不可靠的检测结果:
- `cut_ghosts` — 面积阈值过滤,剔除微小检测
- `filter_by_confidence` — 使用 YOLO 自带的关键点置信度分数来过滤低置信度检测
- `eliminate_overlap` — 基于 IoU 的重复项移除 —— YOLO 在人与人高度重叠的情况下表现不佳
- `check_anatomy` — 针对合并检测结果的肢体比例检查
3. **生物力学评分** — 基于关键点计算五个参数:
- 膝关节屈曲
- 肘关节伸展
- 肩部倾斜
- 髋部倾斜
- 躯干前倾
每个参数通过 `score_parameter()` 进行 0–100 分的打分,并针对每个参数进行置信度门控。总分仅对触发的参数取平均值。
## 数据集
通过 Roboflow 构建:跆拳道和拳击图像(约 3,000 张拳击图像,已筛选为擂台边的拍摄镜头)。空手道因分辨率不足而被舍弃。训练/验证/测试的划分在 Roboflow 中保持不变,以防止数据增强泄漏。
## 工具
- Google Colab(GPU runtime)
- Ultralytics YOLOv8n-pose
- pandas、OpenCV
- Roboflow
## 状态
正在进行中 —— 科研展览项目。
标签:YOLOv8, 姿态估计, 武术分析, 生物力学, 视频处理, 计算机视觉, 逆向工具