Ubuntu20.04+Opencv4.4.0+contrib详细配置过程
1. 安装准备
1.1 安装依赖项
sudo apt-get install cmake
sudo apt-get install build-essential libgtk2.0-dev libavcodec-dev libavformat-dev libjpeg-dev libswscale-dev libtiff5-dev libgtk2.0-dev pkg-config
1.2 下载opencv和contrib
去Opencv官网下载4.4.0的Sources,下好后解压
去github下载4.4.0的contrib压缩包
将contrib压缩包解压后放进之前解压好的Opencv Sources的文件夹下
- 编译安装
在上图所示的文件夹中打开终端
mkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local -D OPENCV_GENERATE_PKGCONFIG=ON -D OPENCV_ENABLE_NONFREE=YES -D OPENCV_EXTRA_MODULES_PATH=/home/yourname/opencv-4.4.0/opencv_contrib-4.4.0/modules/ ..
make -j4
sudo make install
CMAKE_INSTALL_PREFIX是安装路径,如果没特殊需求建议就用/usr/local
OPENCV_ENABLE_NONFREE=YES是允许使用申请了专利的一些算法,必须加上这句
OPENCV_GENERATE_PKGCONFIG=ON因为opencv4默认不生成.pc文件,所以加上这句
OPENCV_EXTRA_MODULES_PATH是contrib包的路径,改成你自己的
3.1 cmake中有些文件下载失败
可以在build文件夹下的CMakeDownloadLog.txt中查看,主要看#cmake_download这行,前面是文件名,后面是下载地址,缺什么下什么。
其中有11个文件好像网上大多数人都会缺,如下图我选中的那11个,boostdesc_bgm.i,vgg_generated_48.i那些.单独下载完后,将这11个放进/opencv-4.4.0/opencv_contrib-4.4.0/modules/xfeatures2d/src/文件夹下。
其他如果还有缺的,根据CMakeDownloadLog.txt中的路径将它们下载完再放到指定地方。
3.2 .编译过程中出现如下错误:
①fatal error: features2d/test/test_detectors_regression.impl.hpp: No such file or directory
原因是没找到这个文件,解决方法如下:
将opencv / modules / features2d复制,然后粘贴到build目录中来解决该问题。
4. 环境配置 4.1 环境配置添加库路径
在/etc/ld.so.conf.d/opencv4.conf中(如果没有就自己新建一个)写入/usr/local/lib。
sudo gedit /etc/ld.so.conf.d/opencv4.conf
保存然后更新一下。
sudo ldconfig
4.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
sudo updatedb
4.3 配置ld.so.conf
有时会报错error while loading shared libraries: libopencv_core.so.*
这时候就加一步
sudo gedit /etc/ld.so.conf
在末尾加上/usr/local/lib
保存然后更新一下
sudo ldconfig
4.4 验证
pkg-config --modversion opencv4
看看显示的版本是不是4.4.0。