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.dll
, opencv_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/
caffe openpose/Realtime Multi-Person 2D Pose Estimation using Part Affinity Fields配置(转)的更多相关文章
- Realtime Multi-Person 2D Pose Estimation using Part Affinity Fields(翻译)
0 - Abstract 我们提出了一种方法去在一张图片中有效地识别多个人体的2D姿势.这个方法使用了一个无参数表示法,我们将其叫为Part Affinity Fields(PAFs),其是去在图片中 ...
- Realtime Multi-Person 2D Pose Estimation using Part Affinity Fields(理解)
0 - 人体姿态识别存在的挑战 图像中的个体数量.尺寸大小.位置均未知 个体间接触.遮挡等影响检测 实时性要求较高,传统的自顶向下方法运行时间随着个体数越多而越长 1 - 整体思路 整个模型架构是自底 ...
- (转)Awesome Human Pose Estimation
Awesome Human Pose Estimation 2018-10-08 11:02:35 Copied from: https://github.com/cbsudux/awesome-hu ...
- human pose estimation
2D Pose estimation主要面临的困难:遮挡.复杂背景.光照.真实世界的复杂姿态.人的尺度不一.拍摄角度不固定等. 单人姿态估计 传统方法:基于Pictorial Structures, ...
- 手势估计- Hand Pose Estimation
http://blog.csdn.net/myarrow/article/details/51933651 1. 目前进展 1.1 相关资料 1)HANDS CVPR 2016 2 ...
- 论文解读:3D Hand Shape and Pose Estimation from a Singl RGB Image
本文链接:https://blog.csdn.net/williamyi96/article/details/89207640由于最近做到了一些 3D Hand Pose Estimation 相关的 ...
- paper 154:姿态估计(Hand Pose Estimation)相关总结
Awesome Works !!!! Table of Contents Conference Papers 2017 ICCV 2017 CVPR 2017 Others 2016 ECCV 20 ...
- Social Grouping for Multi-Target Tracking and Head Pose Estimation in Video(翻译)
0 - ABSTRACT 许多计算机任务在缺少上下文信息的情况下的处理会更加困难.例如,在多相机跟踪任务下,行人可能在不同照相机下面因为有这不同的姿势和灯光条件而看起来很不一样.类似地,在低分辨率高角 ...
- 论文笔记: Mutual Learning to Adapt for Joint Human Parsing and Pose Estimation
Mutual Learning to Adapt for Joint Human Parsing and Pose Estimation 2018-11-03 09:58:58 Paper: http ...
随机推荐
- nyoj 单调递增子序列(二)
单调递增子序列(二) 时间限制:1000 ms | 内存限制:65535 KB 难度:4 描述 给定一整型数列{a1,a2...,an}(0<n<=100000),找出单调递增最长 ...
- JUC锁之 框架
根据锁的添加到Java中的时间,Java中的锁,可以分为"同步锁"和"JUC包中的锁". 同步锁 即通过synchronized关键字来进行同步,实现对竞争资源 ...
- Centos7安装killall,fuser, killall,pstree和pstree.x11
centos7精简安装后,使用中发现没有killall命令. 经查找,可以通过以下命令解决: yum -y install psmisc 简单介绍一下 psmisc : Psmisc软件包包含三个帮助 ...
- C语言扩展动态内存报错:realloc(): invalid next size: 0x0000000002365010 ***
晚上被这个内存扩展崩溃的问题折腾的有点崩溃,当答案揭晓的那一刻,恍然大悟,原来如此简单. 练习题目:输入一个字符串,根据字母进行排序,说白了就是一个简单的冒泡 #include <stdio.h ...
- iotBaidu问题小结
1.后台程序不能正常运行: d:\>java -jar MqttService.jar Exception in thread "main" java.lang.Securi ...
- 关于 ake sure class name exists, is public, and has an empty constructor that is public
解决方法:自定义的fragment最好有一个Public的参数为空的构造函数,若需要传入一个参数,可以使用下面的方法 public FileViewFragment(){ } public stati ...
- 两个DataTable关联查询(inner join、left join)C#代码
using System; using System.Collections.Generic; using System.Text; using System.Data; namespace Cons ...
- Kong管理UI -kong-dashboard (附kong封装webservice方法)
本文仍然是在centos 6.7的环境下进行 本文转载请注明出处 —— xiaoEight btw如果要正常使用管理UI,前提为kong已经正常run(可参考)起来,此 ...
- shell 9test命令
shell中的test用于检查某个条件是否成立,它可以进行数值.字符和文件三个方面的测试. 数值测试 * -eq 等于为true * -ne 不等,为true * -gt 大于,为true * -ge ...
- CentOS 6.4 添加永久静态路由所有方法汇总(原创)
转摘,原文章地址:http://blog.sina.com.cn/s/blog_828e50020101ern5.html 查看路由的命令route -n CentOS添加永久静态路由 在使用双网卡, ...