本人经过了多次尝试,系统崩溃重装多次之后总结经验得到。
安装OpenCV要想在QT下使用没有问题,需要先安装ffmpeg。
1.ffmpeg下载链接如下:

http://ffmpeg.org/

进入官网界面如下
在这里插入图片描述点击Download,然后进入下面的界面
在这里插入图片描述
按照图示依次点击,会进入版本下载界面,如下
在这里插入图片描述选择合适的版本下载。

tar -xvf ffmpeg-git-arm64-static.tar.xz

解压后,进入解压文件夹

./configure --extra-cflags=-fPIC
make -j8
make install

至此安装ffmpeg结束,接下来安装opencv

2.opencv下载链接

https://opencv.org/releases/

我下载安装的是opencv3.3
下载解压的命令此处不在赘述。
下载完成后,进入解压目录,并执行下面的命令
首先,修改一个文件,不然安装过程中会报错

vim home/opencv-3.3.0/modules/videoio/src/cap_ffmpeg_impl.hpp

然后加入下面三句宏定义
#define AV_CODEC_FLAG_GLOBAL_HEADER (1 << 22)
#define CODEC_FLAG_GLOBAL_HEADER AV_CODEC_FLAG_GLOBAL_HEADER
#define AVFMT_RAWPICTURE 0x0020
mkdir build
cd build
cmake -D OPENCV_GENERATE_PKGCONFIG=ON -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local  -D WITH_FFMPEG=ON ..

上面这个cmake命令很重要,尤其是OPENCV_GENERATE_PKGCONFIG=ON,这个很重要,不写安装完成后会出现很多问题。
cmake结束后,继续执行下面的命令

make -j8
make install

至此,,opencv安装愉快的结束。
打开QT运行的时候,大概率报错。
error while loading shared libraries: libopencv_core.so.3.3: cannot open shared object file: No such file or directory
不要慌,还有解决方案,如下

sudo vim /etc/ld.so.conf
在include那句话下面加入
/usr/local/lib
然后在终端执行
sudo ldconfig

下面是环境变量的配置,配置环境变量需谨慎,一定要仔细,不然会导致系统瘫痪。

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

打开文件后输入/usr/local/lib,并保存退出
vim /etc/profile
在末尾加入
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH

source /etc/profile
Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐