您当前的位置: 首页 >  windows

鱼儿-1226

暂无认证

  • 0浏览

    0关注

    1100博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

Windows10编译CPU版OpenPose

鱼儿-1226 发布时间:2021-12-10 10:28:40 ,浏览量:0

一 OpenPose介绍

OpenPose人体姿态识别项目是美国卡耐基梅隆大学(CMU)基于卷积神经网络(CNN)和监督学习(Supervised Learning)并以caffe为框架开发的开源库。可以实现人体动作、面部表情、手指运动等姿态估计。适用于单人和多人,具有极好的鲁棒性。项目地址:

CMU-Perceptual-Computing-Lab/openpose: OpenPose: Real-time multi-person keypoint detection library for body, face, hands, and foot estimation (github.com)​github.com/CMU-Perceptual-Computing-Lab/openpose

由于笔者电脑为核显CPU,本文介绍OpenPose的CPU版本编译与使用。

OpenPose需进行64位编译。尝试使用mingw进行编译,却发现cmake无法创建64位MinGW工程文件,看来win下必须使用使用vs。

二 相关软件安装

1.Visual Studio 2017

vs2015以上版本都可以,用于编译整个项目,可以在 官网 免费下载安装社区版。本文中使用的为vs2017版本。

2.Cmake 可以在 这里 下载旧版本的Cmake,推荐下载cmake12或13的版本,较新的版本win64选项与旧版本不同,可能会导致最后生成的工程文件编译出错。

3.python

推荐使用3.6版本的python,其他版本可能会出现兼容性上的问题。

三 下载OpenPose源码和模型 1 下载源码

进入OpenPose项目中,下载源码压缩包,也可使用git命令将会整个项目拉到本地。

CMU-Perceptual-Computing-Lab/openpose: OpenPose: Real-time multi-person keypoint detection library for body, face, hands, and foot estimation (github.com)​github.com/CMU-Perceptual-Computing-Lab/openpose

整个压缩包有90M左右,下载很慢的话可以通过gitee克隆整个项目再下载。

下载完成后解压。

2.下载依赖

进入OpenPose的github项目中,点击3rdparty。

点击pybind11,进入该项目并将该项目下载下来。pybind11用于OpenPose编译后可以通过python调用。

将pybind11压缩包解压,将其中的内容复制到之前解压好的OpenPose目录中的3rdparty/pybind11中。

进入3rdparty/windows目录中,双击执行其中的几个以bat为后缀名的批处理文件。它们会下载OpenPose项目所需要的caffe,opencv等框架。

若是觉得下载速度太慢,也可以打开bat文件,自行构造下载链接并通过其他下载工具下载。

这一步也可以略过,之后使用Cmake进行配置的过程中会自动下载这些模型。

3 下载模型

这一步用于下载已经训练好的模型。进入models目录,运行getModels.bat文件,下载整个项目需要的模型。由于整个模型很大,下载会花费很长时间,也可以安装上述方法自行构造下载链接下载。

四 编译OpenPose源代码

打开Cmake-gui,第一行选中OpenPose的目录,第二行指定生成项目的路径,可以自行设置。

点击configure,由于我们需要编译64位的,这里选择win64。vs版本要与已安装的一致。点击finish就会自动进行配置,若前面没有下载模型和依赖,这一步会自动下载,需要耐心等待。

待cmake配置完成(出现CUDA错误不用管)后,找到BUILD_PYTHON,并打上勾,这样编译后才会生成可供python调用的包。

找到GPU_MODE,改成CPU_ONLY,表明我们指定用CPU运行。

将USE_CUDNN取消选中。

再次点击configure,cmake会自动下载cpu版本的caffe。注意下载完成的压缩包应该是32M左右,若只有21M则说明没有下载全,需删除caffe_cpu文件夹后再次进行configure。

上面的操作执行完成后,点击generate进行生成。出现Generating Done后,点击Open Project便可自动打开vs2017.

未能从cmake打开vs时,也可通过OpenPose.sln工程文件手动打开vs。

进入VS后,先将Debug模式改成Release,平台为x64(会生成64位可执行文件)。若平台是x86,则说明cmake第一步错了(cmake默认32位),需要换个目录重新运行一遍cmake。

找到OpenPoseDemo,右键-设为启动项目。

找到OpenPoseDemo,右键-生成,即可编译OpenPose源代码,生成可执行文件。右侧还有数十个Demo可以编译。也可以通过上方的生成-生成解决方案进行整个项目的编译。

编译生成的可执行文件会放在x64/Release文件夹下。

五 运行OpenPoseDemo

将x64/Release目录和OpenPose主文件夹内model目录中全部内容复制到bin文件夹下。

点击右键+shift,打开powershell。

输入./OpenPoseDemo命令, 若能打开摄像头并识别图像则说明编译大功告成啦。

关注
打赏
1604459285
查看更多评论
立即登录/注册

微信扫码登录

0.0410s