Linux系统下编译OpenCV(解决无法读取图片和视频的问题)

1. 下载源码

首先下载opencv的源码,链接:

Releases - OpenCVhttps://opencv.org/releases/2. 安装工具包

· Cmake 、GCC 、Git 、GTK+2.x 或更高版本, including 头 (libgtk2.0-dev)、pkg-config、python、ffmpeg或libav开发包;

直接sudo apt install 就可以了,如果报错就输入 工具包name --version(如ffmpeg --version),查看提示。

3. 安装依赖

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

如果提示 E: 无法定位软件包 libjasper-dev

sudo add-apt-repository "deb http://security.ubuntu.com/ubuntu xenial-security main"

再次运行如下命令:

sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev

不安装依赖项并不会影响编译通过,但会导致opencv无法读取图片、视频。

4. 编译

解压源码,在源码文件夹中新建build文件夹并进入

unzip opencv.tar

cd opencv

mkdir build

cd build

生成makefile文件

cmake -DWITH_GTK_2_X=ON -DCMAKE_INSTALL_PREFIX=/usr/local WITH_FFMPEG ..

编译

make

安装头文件、依赖库

make install

绿色标出的为编译过程,安装工具包,配置依赖项可以是为了使Opencv可以正常运行。

安装完成后会在usr/local/include、usr/local/lib、usr/local/bin文件夹中找到刚才编译的头文件和依赖库,然后在cpp中就可以使用 #include <opencv2/opencv.hpp>了。

5. 参考链接

Ubuntu 18.04.2下编译安装OpenCV 3.4.0 过程_Linux教程_Linux公社-Linux系统门户网站 (linuxidc.com)

关于Linux下使用OpenCv读取视频打不开的问题 - 韶子 - 博客园 (cnblogs.com)

猜你喜欢

转载自blog.csdn.net/m0_58772523/article/details/123408500