centos7下opencv3.4.1 的安装和编译全解

centos7下opencv3.4.1 的安装和编译全解

一、下载和安装

1、下载网址:https://opencv.org/     注意系统版本。

2、linux下依赖库安装

正式安装opencv之前,需要安装好opencv编译的依赖包,列举如下:

(1)cmake

apt-get install cmake

(2)essential

在ubuntu环境下: apt-get install build-essential

在centos环境下:  yum install gcc gcc-c++ kernel-devel 安装gcc-essential

                     yum install gcc-gfortran 安装gfortran

安装完后,可以用 gcc -v 、g++ -v 和 fortran -v 查看版本。

 (3)gtk2.0

在ubuntu环境下:apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev

在centos环境下:(安装git)yum install git

(安装gtk 图形化界面库)安装必要文件包:yum install libgnomeui-devel

  安装必要组件:yum install gtk2 gtk2-devel gtk2-devel-docs

  安装可选组件:yum install gnome-devel gnome-devel-docs 


 
 
  1. gtk测试用例
  2. #include <gtk/gtk.h>
  3. int main(int argc, char *argv[])
  4. {
  5. GtkWidget *windows;
  6. gtk_init(&argc,&argv);
  7. windows = gtk_window_new(GTK_WINDOW_TOPLEVEL);
  8. gtk_widget_show(windows);
  9. gtk_main();
  10. return 0;
  11. }
  12. gcc -o 1 1.c `pkg-config --libs --cflags gtk+ -2.0`
  13. ./ 1 若出现对话框表示成功!

(4)pkg-config


 
 
  1. cd /opt/pkg wget http: //pkgconfig.freedesktop.org/releases/pkg-config-0.29.2.tar.gz
  2. tar xvf pkg-config -0.29 .2.tar.gz cd pkg-config -0.29 .2
  3. ./configure --prefix=/usr/local/pkg-config --with-internal-glib
  4. make
  5. make instal
  6. 验证查看环境十分OK pkg-config --version

3、ffmpeg组件安装

主要依赖的有 libavcodec-dev libavformat-dev libswscale-dev,这些库都是FFmpeg 开源库中的,可以通过以下两种方法获得。

(1)直接安装ffmpeg-devel


 
 
  1. 1、先安装epel扩展源
  2. yum -y install epel- release
  3. 2、安装其他扩展源
  4. yum localinstall –nogpgcheck https://download1.rpmfusion.org/free/el/rpmfusion-free- release -7.noarch.rpm
  5. yum localinstall –nogpgcheck https://download1.rpmfusion.org/nonfree/el/rpmfusion-nonfree- release -7.noarch.rpm
  6. rpm – import http://li.nux.ro/download/nux/RPM-GPG- KEY-nux.ro
  7. rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop- release -0 -1.el7.nux.noarch.rpm
  8. 3、最后安装ffmpeg
  9. yum -y install ffmpeg ffmpeg-devel
  10. 4、测试ffmpeg有没有安装成功
  11. 输入命令ffmpeg - version

(2)编译源码ffmpeg


 
 
  1. 1、下载:在官网上下载FFmpe源码包,解压;
  2. 2、配置:生成makefile,具体如下:./configure --enable-libopencv --enable-swscale --enable-avresample--enable-gpl --enable-shared;
  3. 3、编译:执行make –j8进行并行编译;
  4. 4、安装:执行make install。
  5. 5、添加ffmpeg到环境变量执行如下命令:
  6. PKG_CONFIG_PATH=$PKG_CONFIG_PATH :/usr/local/lib/pkgconfig
  7. export PKG_CONFIG_PATH
  8. 备注:如果不执行,Opencv在cmake的时候不能找到对应的ffmpeg库

4、安装opencv其他依赖项


 
 
  1. yum install python-devel numpy
  2. yum install libdc1394-devel
  3. yum install libv4l-devel
  4. yum install gstreamer-plugins-base-devel

5、编译和安装opencv

(1)opencv源码编译和安装


 
 
  1. $cd opencv
  2. $madir build
  3. $cd build
  4. $cmake -D WITH_TBB= ON -D WITH_EIGEN= ON ..
  5. $cmake -D BUILD_DOCS= ON -D BUILD_TESTS= OFF -D BUILD_PERF_TESTS= OFF -D BUILD_EXAMPLES= OFF ..
  6. $cmake -D WITH_OPENCL= OFF -D WITH_CUDA= OFF -D BUILD_opencv_gpu= OFF -D BUILD_opencv_gpuarithm= OFF -D BUILD_opencv_gpubgsegm= OFF -D BUILD_opencv_gpucodec= OFF -D BUILD_opencv_gpufeatures2d= OFF -D BUILD_opencv_gpufilters= OFF -D BUILD_opencv_gpuimgproc= OFF -D BUILD_opencv_gpulegacy= OFF -D BUILD_opencv_gpuoptflow= OFF -D BUILD_opencv_gpustereo= OFF -D BUILD_opencv_gpuwarping= OFF ..
  7. $cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local ..
  8. $make
  9. $sudo make install

(2)opencv配置与加载动态库


 
 
  1. 1)路径添加和加载
  2. 在centos7 系统中,
  3. cd /etc/ld.so.conf.d
  4. 添加opencv.conf
  5. 添加opencv编译产生的lib库路径到opencv.conf中,如下命令:
  6. /bin/bash -c 'echo "/opt/opencv/lib64" > /etc/ld.so.conf.d/opencv.conf'
  7. 加载 ldconfig
  8. 注意在其他linux系统中可能有区别,但是意在让系统知道opencv lib库的路径,能够完成动态加载。
  9. 2)添加PATH
  10. 输入命令gedit /etc/bashrc
  11. 在文件末尾另起行加入PKG_CONFIG_PATH=$PKG_CONFIG_PATH :/usr/local/lib/pkgconfig
  12. export PKG_CONFIG_PATH
  13. 保存退出
  14. 输入source /etc/bashrc使配置生效
  15. 输入updatedb更新数据库
  16. 3)pkg-config配置
  17. 默认的pkg搜索链接路径/usr/lib/pkgconfig,需要将opencv.pc拷贝到pkg的默认路径下。
  18. cp /opt/opencv/lib64/pkgconfig/opencv.pc /usr/lib/pkgconfig

到此,opencv的编译、安装和配置就算完成了,是不是很麻烦,装的时候想打人的心都有了。可以通过查看cmake时,ffmpeg是否添加编译成功,以此验证opencv是否已经安装成功。

6、opencv测试

opencv源码库samples 路径下有丰富的测试用例。


 
 
  1. cd ../samples/cpp/example_cmake
  2. make
  3. ./opencv_example

执行后出现如下对话框,恭喜你,安装成功了。

看到网上还有其他的测试用例,也添加到这里。


 
 
  1. //test.cpp
  2. #include <opencv2/core/core.hpp>
  3. #include <opencv2/highgui/highgui.hpp>
  4. #include <opencv2/imgproc/imgproc.hpp>
  5. int main(int argc,char *argv[])
  6. {
  7. cv::Mat image;
  8. image=cv::imread( "1.png");
  9. cv::namedWindow( "1.png");
  10. cv::imshow( "1.png",image);
  11. cv::waitKey();
  12. return 0;
  13. }
  14. g++ -g -o test test.cpp `pkg-config --cflags --libs opencv`

随便找张图,有对话框弹出原图。(特地找了张治愈系)

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值