换了系统,今天又重新安装一下opencv,记录以下全过程,以及遇到的一些常见错误的解决办法。网上的安装教材很多,但遇到一些错误还是要自己一个一个去找,索性自己总结一个。

一、下载安装包

1、opencv下载 选择你要装的版本下载source压缩包(我装的是opencv3.4.13)
在这里插入图片描述

2、opencv_contrib下载 在Tags里找到相应版本下载,注意版本要与opencv一致(这里就是opencv_contrib3.4.13)
在这里插入图片描述3、下载好解压后,将opencv_contrib3.4.13放在opencv3.4.13文件夹里面(为方便后续操作,可将上面两个文件夹分别命名为opencv和opencv_conrib)。

二、环境配置

打开终端,依次执行

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

三、安装

1、在opencv文件夹下新建build文件夹

cd opencv
mkdir build

在这里插入图片描述2、在build路径下cmake

cd build
cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local -D OPENCV_EXTRA_MODULES_PATH=../opencv_contrib/modules ..
//后面“../opencv_contrib-3.4.0/modules”为你opencv_contrib的modules文件夹所在的路径

在这里插入图片描述

在这里插入图片描述

3、完成后再make

sudo make

这时可能会出现这样的问题:
在这里插入图片描述这是因为一些文件没有下载下来,不只此处的boostdesc_bgm.i,还有
boostdesc_bgm_bi.i
boostdesc_bgm_hd.i
boostdesc_binboost_064.i
boostdesc_binboost_128.i
boostdesc_binboost_256.i
vgg_generated_120.i
vgg_generated_64.i
vgg_generated_80.i
vgg_generated_48.i
解决办法:下载缺失的文件,然后拷贝到xfeatures2d/src下面。
然后,前面的问题没有了,到99%时,可能又有新问题了:
在这里插入图片描述解决办法:这类错误要看错误前面的他给出了源码中哪里有问题,找到错误提示处的文件源码,比如这里(上图):…/.opencv/modules/stitching/include/opencv2/stitching/detail/src/matchers.cpp中的52行有错,一般都是给的绝对路径不准确没有找到那个对应的文件。后面给出cuda.hpp的位置,把这个绝对路径直接代替报错处52行给出的不准确路径即可,如下图:
修改后的matchers.cpp类似的,下面这个错误就是找不到…/opencv/modules/stitching/src/precomp.hpp这个路径下的这个文件,把里面91行的

#include “/opencv2/xfeatures2d/cuda.hpp”

修改成

#include "/home/(你的用户名)/opencv/opencv_contrib/modules/xfeatures2d/include/opencv2/xfeatures2d/cuda.hpp"*//(这个就是cuda.hpp这个文件的绝对路径)

在这里插入图片描述修改好后保存关闭。
下面这个错误是路径里的features2d.cpp前面少了一个x
在这里插入图片描述改好后,再make,有错继续改,直到100%
在这里插入图片描述4、执行make install命令

sudo make install

5、添加路径

sudo vim /etc/ld.so.conf.d/opencv.conf

若找不到vim命令则说明你之前没装,需要自己安装以下,打开一个终端,输入:

sudo apt install vim

然后在打开文件中添加如下内容:

/usr/local/lib

复制粘贴即可,然后保存退出(依次输入:wq,冒号是要输入的部分哦)
之后再终端输入:

sudo ldconfig

使其保存并生效。
再在终端输入

sudo vim /etc/bash.bashrc

打开文件后在末尾输入:

PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
export PKG_CONFIG_PATH

保存退出,终端输入:

source /etc/bash.bashrc

至此,opencv及opencv_contrib安装配置完成了!

四、测试

进入opencv/samples/cpp/example_cmake目录下,终端打开,依次输入:

cmake .
make
./opencv_example

运行结果依次为:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述出现上图,你的摄像头打开了,就可以了,长舒一口气。

参考资料:https://blog.csdn.net/qq_38236355/article/details/88864023

希望您运气好,能一遍成功!
若您觉得有帮助记得点个赞哦,感谢支持~

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐