ubuntu 20.4完全卸载opencv 安装opencv 4.4

首先完全卸载刷机时自带的opencv旧版本,不同版本版本会引起冲突。
1. 先到opencv编译安装的目录build下
cd build
sudo make uninstall
cd ..
sudo rm -r build
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.检查是否删除完
pkg-config opencv --libs
pkg-config opencv --modversion
没有删除干净在用下面的命令,干净了就不用了,下面命令劲有点大,会连同依赖给删除了。
    sudo apt-get purge libopencv*
    sudo apt autoremove
    sudo apt-get update
安装opencv 4.4

OpenCV源码下载官网地址: https://opencv.org.

 ubuntu 20.4完全卸载opencv 安装opencv 4.4_第1张图片

 点sources下载 opencv-4.4.0.zip

opencv_contrib下载地址: https://github.com/opencv/opencv_contrib

ubuntu 20.4完全卸载opencv 安装opencv 4.4_第2张图片

 ubuntu 20.4完全卸载opencv 安装opencv 4.4_第3张图片

 点击download zip下载opencv_contrib-4.4.0.zip

ubuntu 20.4完全卸载opencv 安装opencv 4.4_第4张图片

 点tutorials进入官网安装教程,这才是最正宗的安装方法

ubuntu 20.4完全卸载opencv 安装opencv 4.4_第5张图片

解压上面下载的2个文件:    opencv-4.4.0.zip    opencv_contrib-4.4.0

主文件夹内新建opencv文件夹,把上面解压的2个文件夹放入opencv内

ubuntu 20.4完全卸载opencv 安装opencv 4.4_第6张图片

 

 终端输入:

sudo apt update && sudo apt install -y cmake g++ wget unzip

cd opencv4.4

mkdir -p build && cd build

cmake -DOPENCV_EXTRA_MODULES_PATH=../opencv_contrib-4.4.0/modules ../opencv-4.4.0

make -j4

ubuntu 20.4完全卸载opencv 安装opencv 4.4_第7张图片

这个报错是因为编译的时候需要下载文件,尔文件在国外,下载不了,导致编译出错,opencv官网有对这个问题的解决方法,参考官网链接:

https://github.com/opencv/opencv_contrib/issues/1301

提示缺少文件boostdesc_lbgm.i等,这些文件一共11个,在下面可以下载到,下载完解压,放入 opencv_contrib-4.4.0/modules/xfeatures2d/src 内,是最简单的解决办法。

ubuntu 20.4完全卸载opencv 安装opencv 4.4_第8张图片

百度网盘 请输入提取码   提取码 e1wc 

我也试了其他网友提供的下载文件,没有编译成功,应该是不同版本文件有区别。

ubuntu 20.4完全卸载opencv 安装opencv 4.4_第9张图片

 这个错误是需要导入头文件的位置不对,按下面图片改一下test_features2d.cpp 51 52行,test_rotation_and_scale_invariance.cpp  7  8行就能通过编译。

ubuntu 20.4完全卸载opencv 安装opencv 4.4_第10张图片

 ubuntu 20.4完全卸载opencv 安装opencv 4.4_第11张图片

make -j4

sudo make install

 

ubuntu 20.4完全卸载opencv 安装opencv 4.4_第12张图片

至此安装完成,按照官网安装步骤会少走很多弯路。

按官方文档安装的程序一般是能正常运行的,但在运行orb_slam3却会报错

terminate called after throwing an instance of 'cv::Exception'
  what():  OpenCV(4.2.0) /home/ros2/opencv4.4/opencv-4.4.0/modules/highgui/src/window.cpp:634: error: (-2:Unspecified error) The function is not implemented. Rebuild the library with Windows, GTK+ 2.x or Cocoa support. If you are on Ubuntu or Debian, install libgtk2.0-dev and pkg-config, then re-run cmake or configure script in function 'cvNamedWindow'


问题出在,安装opencv时编译配置出现了问题。

如果opencv工作不正常删除build文件夹重新用下面命令编译:

cd opencv4.4
rm -rf build
mkdir build
cd build

cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D WITH_TBB=ON -D BUILD_NEW_PYTHON_SUPPORT=ON -D WITH_V4L=ON -D WITH_QT=ON -D WITH_OPENGL=ON -DOPENCV_EXTRA_MODULES_PATH=../opencv_contrib-4.4.0/modules ../opencv-4.4.0

make -j4
sudo make install

解决方法参考:

The function is not implemented. Rebuild the library with Windows, GTK+ 2.x or Cocoa support_JT_BOT的博客-CSDN博客

你可能感兴趣的:(opencv,ubuntu,人工智能)