ubuntu18.04系统,opencv3.4.9+contrib完全安装指南
- 0.官方教程
- 1.下载
- 2.安装依赖
- 3.安装cmake-gui(非必须)
- 4.选择opencv资源包与工程文件放置目录(build目录)
- 5.点击configure,选择第一项
- 6.重要选项
- 7.再次点击configure,这里注意看详情页里面有哪些错误,主要是下载错误,错误解决方案见下文
- 8.没有错误后,点击generation
- 9.进入build文件夹
- 10.opencv安装完成
- 11.配置动态链接库
- 12.测试
- 13.问题汇总
- 13.1 "opencv2/xfeature2d/cuda.hpp",找不到文件
- 13.2 cvShowImage问题,描述如下。
- 13.3 Cmake-gui详情页出现boostdesc_bgm.i等错误。
- 13.4 Cmake-gui详情页出现face_landmark_model.dat错误
- 13.5 IPPCV、ffmpeg等问题
- 13.6 Failed to load module "canberra-gtk-module"
- 最后-下载
0.官方教程
1.下载
在opencv官网或者github上下载资源包,若下载速度缓慢,可以选择在开源中国的码云下载镜像包,opencv与opencv_contrib版本号需要一致
码云下载链接:码云opencv
2.安装依赖
这部分参考opencv官方教程,可以只安装必须项
3.安装cmake-gui(非必须)
sudo apt install cmake-qt-gui
4.选择opencv资源包与工程文件放置目录(build目录)
5.点击configure,选择第一项
6.重要选项
- CAMKE_INSTALL_PREFIX:库最终安装目录
- OPEN_EXTRA_MODULES_=PATH:选择contrib里面的modules
7.再次点击configure,这里注意看详情页里面有哪些错误,主要是下载错误,错误解决方案见下文
8.没有错误后,点击generation
9.进入build文件夹
make -j8 // 8代表处理器线程
sudo make install
10.opencv安装完成
11.配置动态链接库
12.测试
cmake..
make
13.问题汇总
13.1 “opencv2/xfeature2d/cuda.hpp”,找不到文件
解决办法: 在CMakeLists.txt增加以下内容,下图是CmakeLists.txt位置。
INCLUDE_DIRECTORIES("你的文件夹/opencv_contrib-3.4.9/modules/xfeatures2d/include")
13.2 cvShowImage问题,描述如下。
If you are on Ubuntu or Debian, install libgtk2.0-dev and pkg-config, then re-run cmake or configure script in function cvShowImage.
解决办法: 目前了解到的办法为重装opencv,目前了解到的出现该问题的原因是没有安装依赖,所以先卸载opencv,然后依赖安装好之后,cmake可以看到GTK+已经安装好了。
sudo make uninstall // 进入build文件夹
cd ..
rm -r build // 删除build文件夹
rm -r opencv_installed // 删除库文件安装文件夹
13.3 Cmake-gui详情页出现boostdesc_bgm.i等错误。
解决办法: 这实际上的文件下载出错问题。进入build文件夹,我的是/home/fzy/openCV3.4.9/build,打开CMakeDownloadLog.txt,可以看到如下图所示:
因此只需要将这些文件放到对应的文件夹里就OK了,我的文件夹如下:
/home/fzy/openCV3.4.9/build/downloads/xfeatures2d/
13.4 Cmake-gui详情页出现face_landmark_model.dat错误
解决办法: CMakeDownloadLog.txt可以看到如下内容,因此只需要将文件放到指定文件夹即可。
13.5 IPPCV、ffmpeg等问题
解决办法: 参考如下文档,写的比较详细,就不搬运了,文件的版本需要匹配,具体看文档,如果你是3.4.9的版本,或者文件版本相同,可以直接点击下面的下载链接。
自己编译安装OpenCV (linux/windows)
13.6 Failed to load module “canberra-gtk-module”
解决办法:
sudo apt-get install libcanberra-gtk-module