背景描述:
由于在编译caffe版的Mobile-Yolo时会需要安装opencv库,而我系统之前安装的opencv版本一直都是2.4.13版本,而github上的Mobile-Yolo项目中调用了OpenCV3中的视频读写函数,与opencv2的有所差异,因此需要安装OpenCV3版本,项目推荐的OpenCV版本为OpenCV3.3.1;
Caffe 版 MobileNet-Yolo项目地址 (对应的安装编译教程为:编译教程)
由于需要从源码编译安装OpenCV3.3.1因此,我下载的是其源码。
1.查看当前版本OpenCV:
pkg-config --modversion opencv
原本的版本安装在 /usr/local/include/opencv和 /usr/local/include/opencv2
新的版本路径得更改:/usr/local/include/opencv3.3.1/include/opencv /usr/local/include/opencv3.3.1/include/opencv2
2.安装新版本OpenCV
项目描述推荐的OpenCV安装操作如下:
Install opencv
download opencv-3.3.1 from web
$ cd opencv-3.3.1
$ mkdir build
$ cd build
$ cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..
$ make -j8
$ sudo make install
如果将预先设定的安装路径设置为/usr/local的话会与我之前默认的安装版本opencv2.4.13混淆,因此我重新指定了安装路径如下:
我将下载的opencv3.3.1源码包解压到/usr/local/目录下了(如下图),
切到opencv3.3.1目录下:
cd opencv-3.3.1/
mkdir release
cd release
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local/include/opencv3.3.1 ..
make -j8
#切到root权限下执行如下指令:
make install -j4
上面指令中的“ .. ” 千万别省略了。
这样opencv-3.3.1就被安装在了/usr/local/include/opencv3.3.1目录下了
3.配置OpenCV环境
通过bashrc文件设置PKG_CONFIG_PATH
vi ~/.bashrc
#在文件的末尾加入:
export PKG_CONFIG_PATH=/usr/local/include/opencv3.3.1/lib/pkgconfig
export LD_LIBRARY_PATH= /usr/local/include/opencv3.1.1/lib
保存后并执行:
source ~/.bashrc
然后配置lib的路径:
cd /etc/ld.so.conf.d
touch opencv.conf
sudo vi opencv.conf
#在opencv.conf里面写入:/usr/local/include/opencv3.1.1/lib
sudo ldconfig
这时候使用命令测试:
pkg-config --modversion opencv
pkg-config --cflags opencv
pkg-config --libs opencv
可以看到全都已经变成了opencv-3.1.1版本了。如果还想使用原来的opencv-2.4.13,只需要再修改PKG_CONFIG_PATH为opencv-2.4.13的pkgconfig路径即可。
参考:https://blog.csdn.net/zhengbq_seu/article/details/82851068