PyOpenPose编译与使用
Posted xizero00
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PyOpenPose编译与使用相关的知识,希望对你有一定的参考价值。
PyOpenPose编译
前言
PyOpenPose是一个OpenPose的python绑定,你可以使用python来实现人体的姿态估计。用上python的openpose,想想就有点小激动呢。哈哈
PyOpenPose依赖于OpenCV3以上的版本,依赖于python2.7这个版本,以及protobuf 2.6.1
-
OpenCV3的版本
其实opencv3的其他版本我也试过,2.4的会出问题,3.3的也会出问题,问了作者之后才知道他装的是3.2的,所以这里建议安装3.2的版本。
并且OpenCV3不要开启dnn,编译OpenCV3的时候一定要关闭dnn,否则会出现caffe.proto相关的错误。 -
protobuf的版本
系统如果是ubuntu的话,执行使用apt安装默认的protobuf就行,protobuf的版本是2.6.1,其他的版本比如3.3的是不行的。
注意系统中不能存在其他版本的protobuf,否则会出现openpose链接到旧版本的protobuf错误。
安装OpenCV3
安装依赖的包
sudo apt-get install -y build-essential cmake pkg-config
sudo apt-get install -y libjpeg8-dev libtiff5-dev libjasper-dev libpng12-dev
sudo apt-get install -y libavcodec-dev libavformat-dev libswscale-dev libv4l-dev
sudo apt-get install -y libxvidcore-dev libx264-dev
sudo apt-get install -y libgtk-3-dev
sudo apt-get install -y libatlas-base-dev gfortran
sudo apt-get install -y python2.7-dev python3.5-dev
下载opencv3.2
cd ~
wget -O opencv.zip https://github.com/opencv/opencv/archive/3.2.0.zip
wget -O opencv_contrib.zip https://github.com/opencv/opencv_contrib/archive/3.2.0.zip
解压源码
unzip opencv.zip
unzop opencv_contrib.zip
编译opencv
cd opencv/
mkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=RELEASE \\
-D CMAKE_INSTALL_PREFIX=/usr/local \\
-D INSTALL_PYTHON_EXAMPLES=ON \\
-D INSTALL_C_EXAMPLES=OFF \\
-D BUILD_opencv_dnn=OFF \\
-D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib/modules \\
-D PYTHON_EXECUTABLE=/usr/bin/python2.7 \\
-D BUILD_EXAMPLES=ON ..
安装
sudo make install
sudo ldconfig
当然你如果想卸载可以sudo make uninstall
安装Protobuf
ubuntu自带的就是 2.6.1所以可以直接安装
sudo apt install libprotobuf-dev protobuf-compiler libprotobuf-lite9v5 protobuf9v5 libprotobuf-c1
编译OpenPose
这个官方有教程,这里不写,只想表明一下编译完openpose自带的caffe之后,需要
make distribute
同样openpose也需要make distribute
,因为后面 PyOpenPose需要用到。
同样本博客也有caffe的安装教程
安装PyOpenPose
#下载PyOpenPose代码
git clone https://github.com/FORTH-ModelBasedTracker/PyOpenPose.git
cd PyOpenPose
#设置环境变量为openpose的路径
export OPENPOSE_ROOT=你的openpose路径
#开始编译
mkdir build
cd build
# 一定要指定python的版本,否则会出错!!!!!!,cmake会找不到正确的python版本
cmake .. -DPYTHON_INCLUDE_DIR=/usr/include/python2.7 -DPYTHON_LIBRARY=/usr/lib/x86_64-linux-gnu/libpython2.7.so
make all -j $nproc
# 测试是否编译成功
cd ..
cd scripts
python OpLoop.py
另外github已经给作者PR了,就看作者同意不同意merge了。
还是把我的github放出来
https://github.com/djangogo/PyOpenPose
Reference
http://www.pyimagesearch.com/2016/10/24/ubuntu-16-04-how-to-install-opencv/
written by xizero00
blog.csdn.net/xizero00
姿态估计群号(做姿态估计的同行可以交流):
6962519489(1群,已满)
970029323(2群)
以上是关于PyOpenPose编译与使用的主要内容,如果未能解决你的问题,请参考以下文章
使用与使用不同 gcc 版本编译的库不同的 gcc 编译应用程序
在 Visual Studio 中编译与在命令行中使用 cl 编译
Visual Studio 与 WebStorm 中的 Typescript 编译 - 两者都使用 Node.js 进行编译吗?