OpenPose
openpose
⭐⭐⭐☆☆ (3/5)
🧩 软硬件结合
已发布
项目简介
OpenPose: Real-time multi-person keypoint detection library for body, face, hands, and foot estimation
OpenPose 是由卡内基梅隆大学感知计算实验室开发的开源项目,代表了首个能够实时检测多人身体、手部、面部和脚部关键点的系统,总计可检测多达135个关键点。该项目由 Ginés Hidalgo 等人共同创建,基于 CMU Panoptic Studio 数据集,在计算机视觉领域具有里程碑意义。
标签
项目特点
**实时多人关键点检测**:支持15、18或25个关键点的人体/脚部检测(包括6个脚部关键点),运行时间与检测人数无关。
**手部和面部关键点检测**:支持2x21个手部关键点和70个面部关键点检测,运行时间取决于检测人数。
**3D单人关键点检测**:通过多视图三角测量实现3D姿态重建,支持Flir相机同步。
**校准工具箱**:提供相机畸变、内参和外参的估计功能。
**单人追踪**:支持单人追踪以进一步加速或实现视觉平滑。
**多种输入输出**:支持图像、视频、网络摄像头、Flir/Point Grey相机、IP相机等多种输入源,输出包括图像/视频显示、关键点数据保存(JSON、XML、YML等)以及自定义输出。
**跨平台兼容**:支持Ubuntu(20、18、16、14)、Windows(10、8)、Mac OSX和Nvidia TX2。
**硬件兼容性**:支持CUDA(Nvidia GPU)、OpenCL(AMD GPU)和无GPU(仅CPU)版本。
技术规格
| 关键点总数 | |
|---|---|
| 身体关键点 | |
| 手部关键点 | |
| 面部关键点 | |
| 3D支持 | |
| 运行时间特性 | |
| 支持操作系统 | |
| 硬件加速 | |
| 输入格式 | |
| 输出格式 | |
| 编程接口 |
项目资源
CMU-Perceptual-Computing-Lab/openpose
CMU-Perceptual-Computing-Lab/openpose
CMU-Perceptual-Computing-Lab/openpose
CMU-Perceptual-Computing-Lab/openpose_train
cmu-perceptual-computing-lab.github.io/foot_keypoint_dataset
CMU-Perceptual-Computing-Lab/openpose_unity_plugin
/domedb.perception.cs.cmu.edu
#technologies/b820c21d-8443-4aa2-a49f-8919d93a8740
物料清单 (BOM)
| 物料名称 | 数量 | 参考价格 | 备注 |
|---|---|---|---|
| Nvidia GPU(推荐) | 1 | — | 用于CUDA加速,可选 |
| AMD GPU | 1 | — | 用于OpenCL加速,可选 |
| 普通CPU | 1 | — | 无GPU模式可用 |
| 网络摄像头 | 1 | — | 实时演示用,可选 |
| CUDA | 1 | — | GPU加速必需 |
| OpenCV | 1 | — | 图像处理必需 |
| Caffe | 1 | — | 深度学习框架必需 |
所需工具
| 工具 | 用途 | 是否必需 |
|---|---|---|
| C++ 编译器 | 编译源码 | ✅ 是 |
| CMake | 构建系统 | ✅ 是 |
| Python | 使用Python API | ▢ 推荐 |
| Unity | 使用Unity插件 | ▢ 推荐 |
能力画像
记忆与知识检索
逻辑推演
表达与交流
感知与观察
数理与计算
动手与操作
狂热与坚持
创造与创新
项目图库
视频
watch
所需技能
🔧 **动手能力**:需要能够配置开发环境,编译C++项目,安装CUDA/OpenCV等依赖库,并处理可能的编译错误。
💻 **编程能力**:需要掌握C++或Python编程基础,理解深度学习模型部署流程,能够使用命令行参数和API接口。
⚡ **电子电路**:无需电子电路知识,但了解相机硬件(如Flir相机)会有帮助。
适用场景
**人机交互**:通过实时姿态估计实现手势控制、动作识别等交互方式。
**运动分析**:分析运动员的动作姿态,用于训练和比赛分析。
**增强现实**:将虚拟内容与人体姿态对齐,实现AR应用。
**动画制作**:捕捉人体动作数据,驱动虚拟角色动画。
**医疗康复**:监测患者的康复训练动作,提供反馈。
**安防监控**:检测异常行为或人群姿态分析。