OpenPose

openpose

⭐⭐⭐☆☆ (3/5) 🧩 软硬件结合 已发布
CMU-Perceptual-Computing-Lab 32184 Stars 未知 BOM 完整度: /5 教程完整度: /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支持
运行时间特性
支持操作系统
硬件加速
输入格式
输出格式
编程接口

项目资源

物料清单 (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应用。
**动画制作**:捕捉人体动作数据,驱动虚拟角色动画。
**医疗康复**:监测患者的康复训练动作,提供反馈。
**安防监控**:检测异常行为或人群姿态分析。