OpenPose的安装配置与实现,以及遇到的问题与解决方法

参考博客地址:OpenPose安装配置与测试
之前在自己电脑上配置了一下,但运行不起来,OpenPose对于电脑的硬件要求还是很高的,我的小破电脑实在是撑不起来。。。之后用公司电脑才跑起来了。下面有官网发布的配置要求,以供参考。

我的电脑配置:
这里写图片描述
这里写图片描述
这里写图片描述

公司电脑配置:
这里写图片描述
这里写图片描述
这里写图片描述

一、OpenPose的配置与实现
针对win10
官方硬件支持:

  • Nvidia GPU version:

    1.NVIDIA graphics card with at least 1.6 GB available 
    2.At least 2.5 GB    of free RAM memory for BODY_25 model or 2 GB for COCO model (assuming    cuDNN installed).  
    3.Highly recommended: cuDNN.
    
  • AMD GPU version:

    1.Vega series graphics card
    2.At least 2 GB of free RAM memory.
    
  • CPU version:

    Around 8GB of free RAM memory.
    
  • Highly recommended: a CPU with at least 8 cores.

  • -

前期准备工作:
1.VS 2015 Enterprise Update 3安装包
2.CMake GUI安装包(https://cmake.org/download/
3.AMD GPU version(https://support.amd.com/en-us/download
4.CUDA 安装包(https://developer.nvidia.com/cuda-downloads)(8.0版本)
5.CuDNN 安装包(https://developer.nvidia.com/cudnn)(5.1版本)

具体配置与实现过程:
1.安装vs 2015(勾选visual C++)

2.安装CUDA,默认安装(9.2版本安装过程中会报错,可能因为是专为vs2017版本提供的,还没有测试,之后可以试试运行效果)

3.将cuDNN下载解压后内容覆盖CUDA中相应文件夹的内容

4.下载安装AMD 软件

5.双击运行../openpose-master/models/中的getModels.bat或getModels.sh文件中任意一个

6.分别双击运行../openpose-master/3rdparty/windows中的getCaffe.bat,getCaffe3rdparty.bat和getOpenCV.bat文件

7.打开CMake GUI,源文件目录中添加../openpose-master文件夹目录,在目标文件目录中添加一个不存在或空的文件夹目录(如../openpose-master/build),如果文件夹不存在会提示是否要创建,点击YES;然后点击Configure,在弹窗中选择“Visual Studio 14 2015 Win64”,点击Finish;最后当提示框中显示Configuring finished后,点击Generate,后关闭窗口。

8.进入../openpose-master/build/路径下,打开OpenPose.sln即可。依次打开Examples/OpenPoseDemo/openpose.cpp文件,并且设置OpenPoseDemo为启动项目。

9.使用release编译运行模式
(1)运行.jpg图片检测识别pose:修改image_dir的值为“example/media/” (此处的example/media/路径为../openpose-master/examples/media/路径)
(2)运行.avi视频检测识别pose:修改video中的image_dir的值为“example/media/”
(3)Pose+hand:修改配置,设置hand变量的值为true
(4)Pose+face:修改配置,设置face变量的值为true

二、问题及解决方法
1.编译过程中弹出报错窗口,内容:0x00007FFDDE8C1F08 处(位于 OpenPoseDemo.exe 中)有未经处理的异常: Microsoft C++ 异常: std::runtime_error,位于内存位置 0x0000005E406F1720 处。错误列表中显示无法查找或打开PDB文件。

解决方法:菜单栏->调试 ->选项 ->符号->勾选 Microsoft符号服务器
这里写图片描述

2.编译过程中出现很多关于cuda头文件的报错,考虑到可能是在安装过程中的问题,后选择将9.2版本的卸载后重新安装8.0版本的,8.0版本安装过程中没有报错。(PS:如果有需要,这里卸载过程最好跟着以下网址教程进行https://blog.csdn.net/shuiyuejihua/article/details/78738664,另外重装CUDA后别忘了将cuDNN内容复制到CUDA中,openpose最好也重新cmake一下,因为在安装过程中会自动进行一些配置。我就是卸载重装了CUDA后没重装openpose,之后需要各种自己配置cuda目录,就算配置好了还是报了如下图的错)。
这里写图片描述

3.如果在编译过程中出现如下图问题,可以参考网站教程:http://www.it1352.com/487757.html(打开文件:“C:\Program Files(x86)\MSBuild\Microsoft.Cpp\v4.0\V120\BuildCustomizations\CUDA 8.0.props”,搜索字词 DepsOutputDir,删除变量%(RelativeDir)并以管理员模式保存。)
这里写图片描述

4.如果出现以下报错弹窗,就是内存溢出,可以通过修改分辨率来解决。可参考网址:https://blog.csdn.net/lgh0824/article/details/75808938
这里写图片描述

公司电脑上编译运行出现的问题:
1.
Error:
VideoCapture (IP camera/video) could not be opened for path: ‘examples/media/’. If it is a video path, is the path correct?

Coming from:
-D:\openpose\openpose-master\src\openpose\producer\videoCaptureReader.cpp:op::VideoCaptureReader::VideoCaptureReader():37
-D:\openpose\openpose-master\src\openpose\producer\videoCaptureReader.cpp:op::VideoCaptureReader::VideoCaptureReader():41
-D:\openpose\openpose-master\src\openpose\utilities\flagsToOpenPose.cpp:op::flagsToProducer():211
-D:\openpose\openpose-master\examples\openpose\openpose.cpp:openPoseDemo():372
terminate called after throwing an instance of ‘std::runtime_error’
解决办法:
https://github.com/CMU-Perceptual-Computing-Lab/openpose/issues/41
(路径要写成examples/media/video.avi,我写成了examples/media/)
如果不是这个问题,可能是OpenCV的问题,需要重新安装opencv试试。

猜你喜欢

转载自blog.csdn.net/weixin_42770591/article/details/81869688