
ubuntu下OpenPose的安装、使用、初步介绍
安装之前你需要安装caffe。OpenPose 是第一个实时多人姿态估计系统,包括人体姿态、手指、面部表情等,总共有可以检测135个关键点。特点:功能:2D 实时多人关键点检测:15、18或25个身体/脚步的关键点检测,运算时间与检测出的人物数无关。2*21个手部关键点检测,运算时间取决于检测出的人数。70个人脸关键点检测,运算时间取决于检测出的人数。3D 实时单人关...
安装之前你需要安装caffe。
OpenPose 是第一个实时多人姿态估计系统,包括人体姿态、手指、面部表情等,总共有可以检测135个关键点。
特点:
功能:
- 2D 实时多人关键点检测:
15、18或25个身体/脚步的关键点检测,运算时间与检测出的人物数无关。
2*21个手部关键点检测,运算时间取决于检测出的人数。
70个人脸关键点检测,运算时间取决于检测出的人数。
- 3D 实时单人关键点检测:
从多个单视图实现3-D triangulation
红外摄像头的同步处理
与红外、点云、灰度摄像头兼容,并且提供c++的例子添加自定义输入。
- 校准工具箱。
能够使得你更加容易估计失真,内在和外在相机参数。
- 针对未来的加速优化和视觉流畅,增加了单人位置跟踪。
输入:图片、视频、网络摄像头、红外/点云灰度摄像头和IP摄像头,含有c++的实例,用户可以自定义输入。
输出:原有图片+关键点展示(PNG、JPG、AVI等格式),关键点数据存储文件((JSON, XML, YML等格式)。
操作系统: Ubuntu (14, 16), Windows (8, 10), Mac OSX, Nvidia TX2.
其他:项目提供: 命令行测试、C++封装、C++ API接口;CUDA (Nvidia GPU), OpenCL (AMD GPU), and CPU 版本。
- Sep 2018: Experimental single-person tracker 增加处理速度观看体现更加流畅!
- Jun 2018: Combined body-foot model released! 40% faster and 5% more accurate!
- Jun 2018: Python API 发布!
- Jun 2018: OpenCL/AMD graphic card version 发布!
- Jun 2018: Calibration toolbox 发布!
- Jun 2018: Mac OSX version (CPU) 发布!
- Mar 2018: CPU version!
- Mar 2018: 3-D keypoint reconstruction module (从多个摄像头识别)!
更多细节, 检查 all released features 和 release notes.
安装、重装、卸载:
需要在windows下安装的可在官方Github中找到相关链接。这里我在ubuntu下进行安装。
# 下载源码
git clone https://github.com/CMU-Perceptual-Computing-Lab/openpose.git
# 检查是否需要更新
git pull origin master
# 安装cmake-gui
sudo apt-get install cmake-qt-gui
# 下载模型
cd models
./getModels.sh
cd ..
# 创建build文件
mkdir build
填写openpose源码目录以及build,点击Configure按钮, 选择Unix Makefile和use default native compling,点击finish按钮
cmake-gui
完成之后:
重点是将BUILD_CAFFE的勾取消,Caffe_INCLUDE_DIRS和Caffe_LIBS的路径参考上图
点击Generate按钮,显示Generating done。
接下来在openpose文件夹下打开终端,执行:
cd build/
make -j`nproc`
安装完成后,在openpose文件夹下执行:
视频:
./build/examples/openpose/openpose.bin --video examples/media/video.avi
摄像头:
./build/examples/openpose/openpose.bin --face --hand
图片:
./build/examples/openpose/openpose.bin --image_dir examples/media/ --face --hand
大多数用户不需要OpenPose C++/Python而仅仅需要使用OpenPose的Demo:
- OpenPose Demo:为了便于处理图片、视频或者网络摄像头的视频流,并展示和后处理结果,看doc/demo_overview.md,例如,你可以直接通过以下命令在Ubuntu操作系统上处理一个视频。
# Ubuntu
./build/examples/openpose/openpose.bin --video examples/media/video.avi
:: Windows - Portable Demo
bin\OpenPoseDemo.exe --video examples\media\video.avi
- 校准工具箱:三维的OpenPose处理和其它立体视觉处理任务需要你校准摄像机,看doc/modules/calibration_module.md。
- OpenPose C++ API:如果你想读取特定的输入数据、增加个性定制的后处理功能或者展示存储功能,查看C++的API接口,examples/tutorial_api_cpp/ 和 doc/library_introduction.md.你可以创建你自己的代码依照这个例子examples/user_code/,快速完成并且编译整个OpenPose项目,看这个文档examples/user_code/README.md获取更多的创建自己代码的细节问题。
- OpenPose Python API:与C++的接口类似,Python的接口查看文档examples/tutorial_api_python/。
- 增加额外的模块:在文档doc/library_add_new_module.md中可以找到更多的信息。
- 标准的人脸或者手指检测:
- 脸部关键点检测,不进行身体关键点的检测:如果你想要加速(并且会减少检测人脸的数量),查看文档:doc/standalone_face_or_hand_keypoint_detector.md。
- 使用你自己的脸部和手部识别工具:与身体关键点识别不同,你可以使用你自己的脸部和手部识别工具。比方说,在手指能看清但身体看不清的时候使用(OpenPose的识别器不能正常工作),查看文档:doc/standalone_face_or_hand_keypoint_detector.md。
输出
查看输出文件的格式、关键点数据结构等信息,看文档:doc/output.md。
增加运算速度以及基准测试
查看增加运行速度、减少内存需求的提示,查看文档:doc/speed_up_preserving_accuracy.md。
扩展:
- 论文:Realtime Multi-Person 2D Pose Estimation using Part Affinity Fields,Hand Keypoint Detection in Single Images using Multiview Bootstrapping,Convolutional Pose Machines
- CMU训练数据集:CMU Panoptic Studio dataset.
- windows下OpenCv调用模型实现:教程 | OpenCV深度神经网络实现人体姿态评估。
DensePose:
论文地址:arxiv.org/abs/1802.00434
GitHub地址:github.com/facebookresearch/Densepose
数据集地址:github.com/facebookresearch/DensePose/blob/master/INSTALL.md#fetch-densepose-data
Realtime Multi-Person Pose Estimation:
GitHub地址:github.com/ZheC/Realtime_Multi-Person_Pose_Estimation
-
OpenPose C++:github.com/CMU-Perceptual-Computing-Lab/openpose
-
TensorFlow:github.com/ZheC/Realtime_Multi-Person_Pose_Estimation
-
Keras(1):modelzoo.co/model/keras-realtime-multi-person-pose-estimation
-
Keras(2):github.com/michalfaber/keras_Realtime_Multi-Person_Pose_Estimation
-
PyTorch(1):github.com/tensorboy/pytorch_Realtime_Multi-Person_Pose_Estimation
-
PyTorch(2):github.com/DavexPro/pytorch-pose-estimation
-
PyTorch(3):github.com/MVIG-SJTU/AlphaPose/tree/pytorch
-
MXNet:github.com/dragonfly90/mxnet_Realtime_Multi-Person_Pose_Estimation
AlphaPose:
GitHub地址:github.com/MVIG-SJTU/AlphaPose
ArtTracker论文:arxiv.org/abs/1612.01465
DeeperCut论文:arxiv.org/abs/1605.03170
网站地址:pose.mpi-inf.mpg.de/
GitHub地址:github.com/eldar/pose-tensorflow
DeepPose:
-
Chainer:github.com/mitmul/deeppose
-
TensorFlow:github.com/asanakoy/deeppose_tf
-
论文地址:static.googleusercontent.com/media/research.google.com/zh-CN//pubs/archive/42237.pdf
我的微信公众号名称:小小何先生
公众号介绍:主要研究强化学习、计算机视觉、深度学习、机器学习等相关内容,分享学习过程中的学习笔记和心得!期待您的关注,欢迎一起学习交流进步!
更多推荐
所有评论(0)