背景描述:

由于在编译caffe版的Mobile-Yolo时会需要安装opencv库,而我系统之前安装的opencv版本一直都是2.4.13版本,而github上的Mobile-Yolo项目中调用了OpenCV3中的视频读写函数,与opencv2的有所差异,因此需要安装OpenCV3版本,项目推荐的OpenCV版本为OpenCV3.3.1;

Caffe 版 MobileNet-Yolo项目地址 (对应的安装编译教程为:编译教程

OpenCV3.3.1下载链接

由于需要从源码编译安装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

https://blog.csdn.net/gxsheen/article/details/79090454

https://blog.csdn.net/qinglongzhan/article/details/81942935