caffe openpose/Realtime Multi-Person 2D Pose Estimation using Part Affinity Fields配置(转)

Realtime Multi-Person 2D Pose Estimation using Part Affinity Fields 是CVPR2017的一篇论文,作者称是世界上第一个基于深度学习的实时多人二维姿态估计。

优酷演示地址:链接

前几天作者公布了windows下的代码,下面来说说如何配置:

英文配置地址可以参考作者的github:https://github.com/CMU-Perceptual-Computing-Lab/openpose/blob/master/doc/installation.md#windows

首先你得装好CUDA8,cudnn5.1,vs2015. 其他版本都不行,只有vs2015可以装

作者说要下载Python 2.4.13 64 bits,其实我的anaconda2也可以(2.7的那个版本)

cmake,ninja(我下载了,但是貌似没用到)

下载windows版的 openpose   https://github.com/CMU-Perceptual-Computing-Lab/openpose/tree/windows

并解压,我放在D盘。下载model ,作者给了2个,

http://posefs1.perception.cs.cmu.edu/Users/tsimon/Projects/coco/data/models/coco/pose_iter_440000.caffemodel  (精度高,速度较慢)下载后放到 D:\openpose-windows\models\pose\coco下

http://posefs1.perception.cs.cmu.edu/Users/tsimon/Projects/coco/data/models/mpi/pose_iter_160000.caffemodel(速度快,但是精度低)

下载后放到D:\openpose-windows\models\pose\mpi\下

打开D:\openpose-windows\3rdparty\caffe\caffe-windows\scripts 下的build_win.cmd,开始编译。

提示出错hash 什么不匹配的,原因是网的问题,https://github-production-release-asset-2e65be.s3.amazonaws.com/39632178/8053cdd0-0068-11e7-8b60-c46f580c47e0?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20170531%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20170531T072412Z&X-Amz-Expires=300&X-Amz-Signature=1860d1ab5ee6598f6a93e6230d1b74a09200e95e22d72021043f5176b9d73de3&X-Amz-SignedHeaders=host&actor_id=28419338&response-content-disposition=attachment%3B%20filename%3Dlibraries_v140_x64_py27_1.1.0.tar.bz2&response-content-type=application%2Foctet-stream 下载后复制到D:\openpose-windows\3rdparty\caffe\dependencies\download下。再编译,等待半个小时,就会编译完毕。(若出现no c compiler could be found 请参考我另一篇博文)

接着 打开 D:\openpose-windows\windows_project\OpenPose.sln   右键点击OpenPoseDemo 生成,此时会报错。提示 找不到D:\openpose-windows\3rdparty\lib\Release  caffe.lib 。其实它在 D:\openpose-windows\3rdparty\caffe\lib\Release下,路径的问题。

把release下的的两个文件 放到D:\openpose-windows\3rdparty\lib\Release下 就OK 了。  再编译 又提示错误,说找不到pythoh27(其实也可以在build_win.cmd下 把Python的路径改成你自己的python路径,这样这里就不会报错。)右键OpenPoseDemo,属性,连接器,常规,附加库目录,把你的python路径加进去,我为了防止出错,把2个路径都加了。

再生成,就成功了。顺便再生成一下openpose(貌似没什么东西生成)

此时你会在D:\openpose-windows\windows_project\x64\Release下找到OpenPoseDemo.exe。但是你双击它会提示你缺少各种东西。

作者说把{openpose_folder}\3rdparty\caffe\caffe-windows\build\install\bin\ 下的所有DLL文件复制到{openpose_folder}\windows_project\x64\Release.下

但是我没有找到这个路径。我把D:\openpose-windows\3rdparty\caffe\caffe-windows\scripts\build\tools\Release下的所有DLL文件复制过去。

再把{}openpose_folder}\3rdparty\caffe\dependencies\libraries_v140_x64_py27_1.1.0\libraries\x64\vc14\bin\下的

opencv_ffmpeg310_64.dllopencv_video310.dll 和opencv_videoio310.复制到{openpose_folder}\windows_project\x64\Release下。

此时打开OpenPoseDemo.exe,发现还是缺少一些东西,我在D:\openpose-windows 下搜索缺少的文件,并复制到{openpose_folder}\windows_project\x64\Release下。

此时,发现oppenpose可以打开了,但是提示找不到model,其实是路径的问题,打开OpenPose.sln ,双击OpenPoseDemo下的openpose.cpp.

在第66行,手动设定models的绝对路径,比如我的是这个:

保存,并再次编译。发现oppenpose终于可以打开了!

有些同学可能会提示报错 out of memory (比如说我),其实就是显存不够,爆显存了(1G GT650M伤不起啊

打开OpenPose.sln ,双击OpenPoseDemo下的openpose.cpp.

在第67行、68行 修改网络的大小,我设定成如上的大小,1G显存也可以跑了。

大功告成!

如果想在视频下跑,可以在cmd下使用如下命令:windows_project\x64\Release\OpenPoseDemo.exe --video examples/media/video.avi

如果是图片的话bin\OpenPoseDemo.exe --image_dir examples/media/


 
时间: 2024-10-11 22:23:44

caffe openpose/Realtime Multi-Person 2D Pose Estimation using Part Affinity Fields配置(转)的相关文章

caffe openpose/Realtime Multi-Person 2D Pose Estimation using Part Affinity Fields配置(转)

Realtime Multi-Person 2D Pose Estimation using Part Affinity Fields 是CVPR2017的一篇论文,作者称是世界上第一个基于深度学习的实时多人二维姿态估计. 优酷演示地址:链接 前几天作者公布了windows下的代码,下面来说说如何配置: 英文配置地址可以参考作者的github:https://github.com/CMU-Perceptual-Computing-Lab/openpose/blob/master/doc/inst

Realtime Multi-Person 2D Pose Estimation using Part Affinity Fields(翻译)

0 - Abstract 我们提出了一种方法去在一张图片中有效地识别多个人体的2D姿势.这个方法使用了一个无参数表示法,我们将其叫为Part Affinity Fields(PAFs),其是去在图片中根据个体识别身体各部分的联合.这个架构编码了全体信息,并且允许一个贪婪的从底向上的解析步骤,这在实现实时性能的时候有着高度的精度而无须考虑图像中个体的数量.这个架构被设计成使用了两个分支的相同序列预测过程,从而来联合学习部分定位以及他们的联系.我们的方法在the inaugural COCO 201

human pose estimation

2D Pose estimation主要面临的困难:遮挡.复杂背景.光照.真实世界的复杂姿态.人的尺度不一.拍摄角度不固定等. 单人姿态估计 传统方法:基于Pictorial Structures, DPM ? 基于深度学习的算法包括直接回归坐标(Deep Pose)和通过热力图回归坐标(CPM, Hourlgass) 目前单人姿态估计,主流算法是基于Hourlgass各种更改结构的算法. 多人姿态估计 二维图像姿态估计基于CNN的多人姿态估计方法,通常有2个思路(Bottom-Up Appro

paper 154:姿态估计(Hand Pose Estimation)相关总结

Awesome Works  !!!! Table of Contents Conference Papers 2017 ICCV 2017 CVPR 2017 Others 2016 ECCV 2016 CVPR 2016 Others 2015 ICCV 2015 CVPR 2015 Others 2014 CVPR 2014 Others & Before Journal Papers Theses Datasets Challenges Other Related Papers Eval

Heterogeneous Multi-task Learning for Human Pose Estimation with Deep Convolutional Neural Network

论文题目Heterogeneous Multi-task Learning for Human Pose Estimation with Deep Convolutional Neural Network, 链接 该篇论文是IJCV 2014的, 文章的核心multi-tasks的joint traning. 直接看图说话, 该论文的核心思想/步骤可以分为两个components: 1对图像里面的person进行detection, 以便裁剪出图像里面的人. 这个显然是必要的, 尤其是图像大而p

6D姿态估计从0单排——看论文的小鸡篇——Model Based Training, Detection and Pose Estimation of Texture-Less 3D Objects in Heavily Cluttered Scenes

这是linemod的第二篇,这一篇把训练从online learning 变成了 使用3D model, 并且对于检测结果用 3种方法: color.Pose.Depth来确保不会有false positive.感觉有种不忘初心的感觉(笑 基于linemod,是前一篇的改良 initial version of LINEMOD has some disadvantages. First, templates are learnede online, which is difficule to c

Pose Estimation

Human Pose Estimation for Real-World Crowded Scenarios https://arxiv.org/pdf/1907.06922.pdf CrowdPose: Efficient Crowded Scenes Pose Estimation and A New Benchmark https://arxiv.org/pdf/1812.00324.pdf 原文地址:https://www.cnblogs.com/haiyang21/p/11734855

在自遮挡下的单目图像3D姿态估计 Monocular Image 3D Human Pose Estimation under Self-Occlusion (ICCV 13)

Monocular Image 3D Human Pose Estimationunder Self-Occlusion (ICCV 13) 在自遮挡下的单目图像3D姿态估计 摘要:文中提出在单张图片中3D姿态自动重建的方法.人体关节.易产生幻觉的身体部位的存在,杂乱的背景,都将导致人体姿态判断的歧义性,这都说明这不是一个简单的问题.研究者研究了许多基于运动和阴影的方法,为了减小歧义性,并对3D姿态进行重建.我们算法的关键思想就是增加运动和方向限制.前一个是在3D模型映射到输入图像时增加的限制,

Learning Temporal Pose Estimation from Sparsely-Labeled Videos

facebook AI 出品 之前的关键点论文大多是在静态图片上进行关键点识别,作者的工作是在不完全标注的视频序列中识别关键点,方法是每k帧进行一次关键点标注,标注的帧和某帧未标注的帧进行特征的warping,进行预测标注帧的结果,利用标注帧的结果反向优化未标注帧的关键点结果. <摘要> 现在视频中的多人关键点识别需要密集标注,资金和劳动力消耗大.作者提出的 PoseWarper 网络利用训练视频每K帧一标注的稀疏标注来实现密集关键点的反向传播和估计.对于已标注的视频帧A和未标注的视频帧B,A