注意:
在整个安装过程中,包括后期QT的使用中不要出现中文路径。会很坑的。
一、下载openCV4.1.2
可以再官网进行下载https://opencv.org/releases/->选择Sources下载源码然后进行编译安装
也可以在https://github.com/opencv/opencv/tree/4.1.2下载源码进行编译安装
也可以在百度云盘下载安装https://pan.baidu.com/s/1LIqIvyA6BjjAy1pkC-Mg0w。
二、更新Ubuntu18.04apt源为阿里源(如果已更新或者其他源可以自己尝试)。
// 1.备份/etc/apt/sources.list
1 cp /etc/apt/sources.list /etc/apt/sources.list.bak
// 2.打开/etc/apt/sources.list
1 sudo vim /etc/apt/sources.list
// 3.删除文件内所有内容
// 4.将一下内容复制进/etc/apt/sources.list文件中
1 deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse 2 deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse 3 deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse 4 deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse 5 deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse 6 deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse 7 deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse 8 deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse 9 deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse 10 deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
// 5.更新源
1 sudo apt-get update 2 sudo apt-get upgrade
三、解决ubuntu1804无法安装libjasper-dev问题(速度会非常的慢,一定要耐心等待)
// 1.检测是否有问题
1 apt-get install libjasper-dev
如果有报错信息:errorE: unable to locate libjasper-dev则继续解决一下问题,没有则可跳过第三步。
// 2.解决方案
1 sudo add-apt-repository "deb http://security.ubuntu.com/ubuntu xenial-security main" 2 sudo apt update 3 sudo apt install libjasper1 libjasper-dev
添加一个源来重新安装,其中,libjasper1是新的依赖项。
但是上述命令会可能产生新的问题。无法找到add-apt-repository问题
// 3.解决add-apt-repository问题
1 apt-get -y install software-properties-common 2 apt-get -y install apt-file 3 apt-get update
四、添加openCV安装的相关准备
//1.安装cmake(如果已经安装过可以忽略)
1 sudo apt-get install cmake
// 2.安装openCV相关依赖(如果刚才第三步失败或者跳过的话可能 libjasper-dev 会报错)
1 sudo apt-get install build-essential libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev
事实上,OpenCV的依赖项众多,在cmake阶段检查依赖项是否安装,调整自己的功能。因此,可根据项目需要调整安装依赖项。
五、安装openCV
//1.将下载的opencv-4.1.2.zip拷贝到主目录下,并解压缩
// 2.打开终端并切换至主目录下的openCV-4.1.2
1 cd /home/DepZcb/openCV-4.1.2
// 3.在openCV-4.1.2下创建一个名为build目录,并切换到这个目录下
1 mkdir build 2 cd ./build
// 4.执行cmake,生成makefile文件
1 cmake -D CMAKE_BUILD_TYPE=Release -D OPENCV_GENERATE_PKGCONFIG=ON -D CMAKE_INSTALL_PREFIX=/usr/local ..
命令说明:
OpenCV4默认不生成.pc文件,OPENCV_GENERATE_PKGCONFIG=ON才会生成。该编译选项开启生成opencv4.pc文件,支持pkg-config功能。
可用-D CMAKE_INSTALL_PREFIX指定安装目录。如果指定安装目录则默认各部分分别安装在/usr/local/目录的include/ bin/ lib/3个文件夹下.
.. 为上一级目录。
// 5.执行makefile文件(有些人说上一步不会生成makefile,我在虚拟机和纯系统中都试过,在deepin下安装也试过没有出现类似问题。但出现了一堆其他问题,感觉还是源没有配置好)
1 sudo make -j[N]
说明:-j[n]我的电脑是四核四线程,可以运行make -j4,如果是八核可用make -j8。如果不想编译时影响工作,可以用-j3。建议虚拟机的同学就直接运行sudo make就行.
这一步事件很长的,大概需要半个小时往上。请耐心等待。
// 6.进行make install安装
1 sudo make install
六、C++环境配置
// 1.先在/etc/ld.so.conf.d/文件夹下新建一个opencv4.conf,然后再文件中写入/usr/local/lib。
1 cd /etc/ld.so.conf.d/ 2 sudo touch opencv4.conf 3 sudo sh -c 'echo "/usr/local/lib" > opencv4.conf'入代码片
// 2.更新pkg-config
1 sudo ldconfig
// 3.查看安装
1 pkg-config --libs opencv4 2 pkg-config --cflags opencv4
// 4.配置bash
1 sudo vim /etc/bash.bashrc 2 //在末尾添加 3 PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig 4 export PKG_CONFIG_PATH
//5.更新bash
1 sudo source /etc/bash.bashrc 2 //激活配置然后更新database 3 sudo updatedb
可能会遇到问题sudo: source: command not found,这时可如下2步处理(如图):
1> sudo -s
2> source /etc/profile
安装完成
七、可能出现的问题
// 1.QT5 Core编译错误
View Code
解决办法:安装qt5-default
1 sudo apt-get install qt5-default
八、python环境的配置
// 1.安装python和numpy
1 sudo apt-get install python-dev python-numpy python3-dev python3-numpy #如果已经安装过,则该步骤省略
// 2.验证
$ python3 >>> import cv2 >>> print(cv2.__version__) '4.1.1' >>>
九、卸载openCV
如果安装出现了百度不能解决的问题。最好的办法就是卸载重新装一次(第一次安装时前前后后卸载了四五次)。
// 1. 删除openCV4.conf
1 cd /etc/ld.so.conf.d/ 2 sudo rm opencv4.conf
// 2.卸载
1 cd 2 cd ./OpenCV-4.1.1/build 3 sudo make uinstall