0


(超详细)Ubuntu18.04下安装及卸载opencv+opencv_contrib

为了做毕设,我已经被这个东西折磨了很多天了,现在真的悟了。写下人生的第一篇博客,希望能够帮助大家。

说明:

** 1.本教程适用c++和python环境**

** 2.opencv和opencv_contrib版本如果和我不一样也可以装装看,毕竟方法都大同小异**

版本:Ubuntu18.04
Opencv-4.1.2
Opencv_contrib-4.1.2

百度云链接:https://pan.baidu.com/s/14Q7N1p-7QrUBQzGIAPCWBw 密码: spgp

装opencv_contrib时会报错需要用到第一个文件,所以如果不需要装opencv_contrib,只载opencv-4.1.2.zip即可,需要则全载。

一、卸载opencv (如果没装那直接跳过这一步)

1、查看已安装的 opencv 版本

  1. pkg-config --modversion opencv//或pkg-config --modversion opencv4

2、卸载

1.找到当初安装 opencv4.1.2的 build 目录,进入 build 目录

  1. cd ~/opencv-4.1.2/build
  2. sudo make uninstall
  3. cd ..
  4. sudo rm -rf build

2.清理 /usr 中所有 opencv 相关项

  1. //注意这里为了确保删干净重复写了一些路径,建议大家打开文件夹对照代码所示路径一个个删除
  2. sudo rm -r /usr/local/include/opencv2 /usr/local/include/opencv /usr/include/opencv /usr/include/opencv2 /usr/local/share/opencv /usr/local/share/OpenCV /usr/share/opencv /usr/share/OpenCV /usr/local/bin/opencv* /usr/local/lib/libopencv*
  3. cd /usr
  4. //发现搜不到有关opencv的任何文件,说明删干净了
  5. find . -name "*opencv*" | xargs sudo rm -rf
  6. cd ~
  7. sudo rm -rf opencv-4.1.2

二、安装 opencv-4.1.2 + opencv_contrib-4.1.2

1.下载opencv-4.1.2及opencv_contrib-4.1.2 百度云链接已经放在文章开头了

2.安装依赖项

  1. sudo apt install build-essential
  2. sudo apt install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
  3. sudo apt install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev

3.使用cmake构建opencv

使用unzip命令将opencv-4.1.2和opencv_contrib-4.1.2解压,opencv-4.1.2放在主目录下,opencv_contrib-4.1.2移到opencv_4.1.2目录下,并在opencv-4.1.2目录下新建build文件夹

  1. unzip opencv-4.1.2.zip
  2. unzip opencv_contrib-4.1.2.zip
  3. //自己把opencv-4.1.2放在主目录下,opencv_contrib-4.1.2移到opencv_4.1.2中
  4. cd ~/opencv-4.1.2
  5. mkdir build

将boostdesc.i等.zip里的文件全部复制到~/opencv-4.1.2/opencv_contrib-4.1.2/modules/xfeatures2d/src下(因为这些文件很难载下来,缺少这一步的话,后续编译就会报错)

** 执行以下代码(重点部分,认真操作)**

  1. cd ~/opencv-4.1.2/build
  2. //前三行别的设不设置都无所谓,OPENCV_GENERATE_PKGCONFIG如果不设置在opencv4中就不会
  3. //自动生成opencv.pc文件导致查询不到opencv版本号,后续要解决只能自己手写文件(但是容易错)
  4. //或者卸载opencv重装,所以这里直接开启就一劳永逸了
  5. cmake -D WITH_TBB=ON -D WITH_EIGEN=ON -D OPENCV_GENERATE_PKGCONFIG=ON ..
  6. cmake -D BUILD_DOCS=ON -D BUILD_TESTS=OFF -D BUILD_PERF_TESTS=OFF -D BUILD_EXAMPLES=ON ..
  7. cmake -D WITH_OPENCL=OFF -D WITH_CUDA=OFF -D BUILD_opencv_gpu=OFF -D BUILD_opencv_gpuarithm=OFF -D BUILD_opencv_gpubgsegm=OFF ..
  8. //OPENCV_ENABLE_NONFREE:BOOL如果不开启在使用sift/surf等算法时会报错
  9. //因为我是用c++进行编程 所以用INSTALL_C_EXAMPLES=ON,如果想用python则替换为INSTALL_PYTHON_EXAMPLES=ON
  10. //OPENCV_EXTRA_MODULES_PATH后面跟的是opencv_contrib-4.1.2的路径,记得照着自己的电脑路径改一下
  11. //如果不需要装opencv_contrib-4.1.2 那就删掉OPENCV_EXTRA_MODULES_PATH
  12. cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D OPENCV_ENABLE_NONFREE:BOOL=ON -D INSTALL_C_EXAMPLES=ON -D OPENCV_EXTRA_MODULES_PATH=~/opencv-4.1.2/opencv_contrib-4.1.2/modules ..

接下来开始编译

  1. //有单线程和多线程两种编译方法 单线程编译比较慢,建议采用多线程
  2. //j后面表示的数字是想要用几线程进行编译,这里我选择了8线程
  3. sudo make -j//单线程
  4. sudo make -j8//多线程

编译结束后

  1. sudo make install

4.配置opencv环境

  1. //打开opencv.conf
  2. sudo gedit /etc/ld.so.conf.d/opencv.conf
  3. //在末尾添加
  4. /usr/local/lib
  5. //保存后执行以下命令,确保配置生效
  6. sudo ldconfig
  7. //打开bash.bashrc
  8. sudo gedit /etc/bash.bashrc
  9. //在文末添加
  10. PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
  11. export PKG_CONFIG_PATH
  12. //保存后执行以下命令,确保配置生效
  13. sudo updatedb

5.测试

  1. cd ~/opencv-4.1.2/samples/cpp/example_cmake
  2. cmake .
  3. make
  4. ./opencv_example

如果摄像头打开,左上角出现 Hello OpenCV 则证明安装成功

如果还有问题,欢迎留言。第一次写博客,如有不妥之处,还请多多担待。

参考教程:

Ubuntu16.04卸载opencv 3.0.0,安装opencv3.4.2 + contrib

在 Ubuntu系统下安装 OpenCV 全过程

linux下编译安装opencv生成opencv.pc

解决 Configuring incomplete, errors occurred! 问题 树莓派安装opencv报错

Ubuntu16下opencv3 +opencv_contrib3最简单安装,并解决SIFT 和 SURF在opencv3以上应用报错


本文转载自: https://blog.csdn.net/weixin_44985971/article/details/123209435
版权归原作者 weixin_44985971 所有, 如有侵权,请联系我们删除。

“(超详细)Ubuntu18.04下安装及卸载opencv+opencv_contrib”的评论:

还没有评论