opencv linux上编译安装

opencv库可在https://opencv.org/releases/链接里下载
也可在我的网盘里下载:

链接: https://pan.baidu.com/s/1tQo9yJ_UttJENf0dY8xdJw 提取码: 3fh9 

如需opencv支持ffmpeg库,则需要先编译好ffmpeg. 编译方法可参考:
https://blog.csdn.net/jklinux/article/details/72367829


  1. 先检查cmake工具的版本, 命令"cmake -version", opencv-4.1.0要求cmake版本是3.5.1以上.
    如版本低,可升级cmake工具.
	tar xf cmake-3.14.5.tar.gz
	cd cmake-3.14.5
	./configure
	make 
	make install
  1. 编译opencv库
	unzip opencv-4.1.0.zip
	cd opencv-4.1.0/

	因opencv这个库源码编译是使用cmake工具配置的, 这工具要求不能在源码根目录下操作的.
	所以创建一个子目录,然后在子目录里操作
	mkdir build
	cd build

	//让cmake在配置时,使用指定目录下的*.pc文件(这些文件里有记录所需的库路径及库名)
	export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig/

	cmake ../     //让cmake检查当前系统的状态,在生成的Makefile文件里记录opencv所能用的编译项.

注意输出的如下信息:

	//执行后,如输出有以下信息表示opencv可以调用生成窗口界面
	//如果GUI里所有项都是NO, 则opencv无法使用图形界面。
	--   GUI: 
	--     GTK+:                        YES (ver 3.22.30)  //如果是NO, 则yum install gtk3-devel*
	--       GThread :                  YES (ver 2.56.1)
	--       GtkGlExt:                  NO
	--     VTK support:                 NO

	//表示opencv可支持哪些图像文件格式
	--   Media I/O: 
	--     ZLib:                        /lib64/libz.so (ver 1.2.7)    //  yum install zlib*
	--     JPEG:                        /lib64/libjpeg.so (ver 62)   // yum install libjpeg*
	--     WEBP:                        build (ver encoder: 0x020e)
	--     PNG:                         /lib64/libpng.so (ver 1.5.13)
	--     TIFF:                        /lib64/libtiff.so (ver 42 / 4.0.3)
	--     JPEG 2000:                   build (ver 1.900.1)
	--     OpenEXR:                     build (ver 1.7.1)
	--     HDR:                         YES
	--     SUNRASTER:                   YES
	--     PXM:                         YES
	--     PFM:                         YES

	//表示opencv是否可支持ffmpeg, GStreamer, v4l2等
	--   Video I/O:
	--     DC1394:                      NO
	--     FFMPEG:                      YES
	--       avcodec:                   YES (57.24.102)
	--       avformat:                  YES (57.25.100)
	--       avutil:                    YES (55.17.103)
	--       swscale:                   YES (4.0.100)
	--       avresample:                NO
	--     GStreamer:                   YES (1.10.4)
	--     v4l/v4l2:                    YES (linux/videodev2.h)

cmake配置完成后就会生成Makefile, 然后执行"make && make install"完成即可.

________________________________________________________________________________________________-
为了便系统程序使用opencv库,还需要把opencv库设置一下:

vim /etc/ld.so.conf.d/opencv.conf
增加:
	/usr/local/lib64
保存退出后:
ldconfig     //执行此命令会更新记录系统里的动态库


QT工程里使用opencv动态库时, pro文件需要指定opencv头文件路径及库路径, 如下:

qt工程里的pro文件:
INCLUDEPATH += /usr/local/include/opencv4/

LIBS += -L /usr/local/lib64                  \
    -lopencv_calib3d     -lopencv_imgproc    \
    -lopencv_core        -lopencv_ml         \
    -lopencv_dnn         -lopencv_objdetect  \
    -lopencv_features2d  -lopencv_photo      \
    -lopencv_flann       -lopencv_stitching  \
    -lopencv_gapi        -lopencv_videoio    \
    -lopencv_highgui     -lopencv_video      \
    -lopencv_imgcodecs                       

//同时需要注意,因系统环境的不同,opencv有些库是不会生成的。

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
OpenCV是一种开源的计算机视觉库,可以在Linux上进行编译安装。下面是在Linux编译OpenCV的基本步骤。 首先,我们需要确保我们的系统上已经安装了必要的开发工具和依赖库。可以使用包管理工具(如apt、yum等)来安装这些软件包。常见的依赖库包括CMake、gcc、g++、pkg-config、python等。 接下来,我们需要从OpenCV的官方网站(https://opencv.org/)上下载最新的源代码压缩包。下载后,将其解压到一个合适的目录。 然后,我们需要创建一个构建目录来存放编译生成的文件。进入解压后的OpenCV目录,创建一个名为"build"的目录。然后进入该目录。 在构建目录中,我们需要运行CMake来生成Makefile。命令为"cmake \<path_to_opencv_source>",其中\<path_to_opencv_source>是OpenCV源代码目录的路径。CMake将会根据系统环境和配置选项生成相应的Makefile。 生成Makefile后,我们可以使用make命令进行编译。命令为"make"。这个过程可能需要一些时间,取决于系统性能和源代码的规模。 当编译完成后,我们可以使用make命令进行安装。命令为"sudo make install"。这将会把OpenCV的库文件和头文件复制到系统相应的目录中。 最后,我们还可以设置一些环境变量,使得系统能够找到并使用OpenCV。可以将OpenCV的库文件路径添加到LD\_LIBRARY\_PATH环境变量中,将OpenCV的头文件路径添加到CPLUS\_INCLUDE\_PATH环境变量中。 综上所述,通过以上步骤,我们可以在Linux系统上成功编译安装OpenCV。在编译安装的过程中,如果遇到了问题,可以参考官方文档或社区中的相关帖子来解决。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值