1、准备OpenCV及OpenCV-contrib源码
opencv4.5.2下载地址:https://github.com/opencv/opencv/archive/4.5.2.zip
opencv-contrib4.5.2下载地址:https://github.com/opencv/opencv_contrib/releases/tag/4.5.2
1.1 安装依赖
sudo apt-get install build-essential
sudo apt-get install cmake git
sudo apt-get install libgtk2.0-dev
sudo apt-get install pkg-config
sudo apt-get install libavcodec-dev
sudo apt-get install libavformat-dev
sudo apt-get install libswscale-dev
sudo apt-get install libtbb2 libtbb-dev
sudo apt-get install libjpeg-dev libpng-dev libtiff-dev
sudo apt-get install libdc1394-22-dev
2、安装cmake-gui并打开cmake-gui界面
sudo apt-get install cmake-qt-gui
cmake-gui
2.1 选择opencv源文件所在路径;到CmakeLists.txt所在目录,选择输出build文件所在路径
2.2 点击configure,出现编译的配置选项。
这里需要科学上网,若在解决编译opencv时,卡在IPPICV: Download: ippicv_2020_lnx_intel64_20191018_general.tgz 点击此处解决
2.3 在中间列表中找到“OPENCV_EXTRA_MODULES_PATH”,把之前opencv_contrib解压文件夹下的modules路径加入进去。
并且勾选“OPENCV_ENABLE_NONFREE”!;不然nonfree用不起来( 是为了在编译成功后可以使用具有专利保护的算法,如果该变量不被选中,就不能使用具有专利保护的算法);点击configure;再点击Generate;
注:(1)对于找不到ippicv的问题去github下载ippicv包到本地,然后修改3rdparty/ippicv/ippicv.cmake的文件,将地址修改为本地目录;
3、编译安装
在configure done和generate done之后,进入build文件夹,输入命令make -j8进行编译。
安装生成的库到/usr下,通过命令sudo make install
4、环境配置
(1)首先将OpenCV的库添加到路径,从而可以让系统找到
sudo gedit /etc/ld.so.conf.d/opencv.conf
执行此命令后打开的可能是一个空白的文件,不用管,只需要在文件末尾添加
/usr/local/lib
执行如下命令使得刚才的配置路径生效
sudo ldconfig
(2)配置bash
sudo gedit /etc/bash.bashrc
在末尾追加:
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
export PKG_CONFIG_PATH
保存,执行如下命令使得配置生效:
source /etc/bash.bashrc