流程
下载Opencv4.5.1以及OpenCV_contrib4.5.1源码
链接
是已经下载好的源码包,缺失文件也已经整合好了,只需要修改一个文件里的CmakeList
百度网盘链接链接:https://pan.baidu.com/s/1Y6reQskaY8ATxS5BK0j6SA
提取码:1234
Opencv缺失文件(已经补齐)
下次安装需要修改的文件有(文件1-4网盘链接改好)
/opencv/opencv-4.5.1/3rdparty/ippicv/ippicv.cmake
/opencv/opencv-4.5.1/3rdparty/ffmpeg/ffmpeg.cmake
/opencv/opencv_contrib-4.5.1/modules/xfeatures2d/cmake/download_boostdesc.cmake
/opencv/opencv_contrib-4.5.1/modules/xfeatures2d/cmake/download_vgg.cmake
/opencv/opencv_contrib-4.5.1/modules/face/CMakeList.txt
其中:文件*/opencv/opencv_contrib-4.5.1/modules/face/CMakeList.txt*
文件*/opencv/opencv-4.5.1/CMakeList.txt*
搜索/home/slam1/,将地址前置的/home/slam1/修改成自己虚拟机内对应的地址
安装依赖
sudo apt-get install build-essential libgtk2.0-dev libgtk-3-dev libavcodec-dev libavformat-dev libjpeg-dev libswscale-dev libtiff5-dev
.bug
如果出现:无法定位 libjasper-dev问题
使用临时添加源方法安装
sudo add-apt-repository "deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ xenial main multiverse restricted universe"
sudo apt update
sudo apt install libjasper1 libjasper-dev
如果临时添加源第一步失败,建议换回系统源重新操作
源码解压并建立build文件夹
将源码拷贝至 ~ 下(其他位置以下代码替换~为自己目录)
sudo apt-get install unzip
unzip opencv.zip
cd ~/opencv/opencv-4.5.1
mkdir build
cd build
build文件夹方便以后修改调试cmake、make、install make产生的文件
cmake
cmake -D CMAKE_INSTALL_PREFIX=/usr/local ..
//将其安装位置定于/usr/local,方便后期PATH链接
make 以及error 解决方案
.bug1
编译过程中出现如下错误:
fatal error: features2d/test/test_detectors_regression.impl.hpp: No such file or directory
原因是没找到这个文件,解决方法如下:
将 /opencv/opencv-4.5.1/modules/features2d 复制粘贴到 /opencv/opencv-4.5.1/build 目录中来解决该问题。
.bug2
出现:
fatal error: boostdesc_bgm.i: No such file or directory
原因是下载的时候有q,所以下图的文件没下载下来,解决方法如下:
将文件夹 /opencv/addition_i 下所有文件复制粘贴 /opencv/opencv_contrib-4.5.1/modules/xfeatures2d/src 中(只复制粘贴文件,不需要文件夹)
再次make,make install
make -j8
sudo make install
make -j8 出错的话就换成 make
PATH路径添加
sudo gedit /etc/ld.so.conf.d/opencv.conf
在文件中加入以下语句
/usr/local/lib
之后在终端输入:
sudo ldconfig
再输入
sudo gedit /etc/bash.bashrc
在文件末尾加入
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
export PKG_CONFIG_PATH
再输入
source /etc/bash.bashrc
使其生效。opencv及opencv_contrib配置完成
其他配置(Ubuntu18.04默认配置)
cmake version 3.10.2
gcc (Ubuntu 7.5.0-3ubuntu1~18.04) 7.5.0
g++ (Ubuntu 7.5.0-3ubuntu1~18.04) 7.5.0