centos7下opencv3.3安装

转载自:http://blog.csdn.net/kakitgogogo/article/details/52490010


opencv是个跨平台计算机视觉库,很久之前就对opencv感兴趣了,但是由于以前用的是centos6.8,各种依赖项都是版本太老,安装起来十分费尽(glib,gtk+什么的更新无力)。直到现在更新到了centos7,终于安装成功了。在此把安装过程记录下来。安装方法参考了CentOS7配置opencv for python && eclipse c/c++


在安装之前,要先配置好epel源,因为下面的某些安装在系统自带的源中找不到

[plain]  view plain   copy
  1. yum -y install epel-release  

首先是gcc,g++等这些基本的工具,一般都是有的。没有的话就用yum install来安装。

[plain]  view plain   copy
  1. yum install gcc gcc-c++  
  2. yum install cmake  
  3. yum install python-devel numpy  

然后是opencv的依赖项

[plain]  view plain   copy
  1. yum install gtk2-devel  
  2. yum install libdc1394-devel  
  3. yum install libv4l-devel  
  4. yum install gstreamer-plugins-base-devel  

然后是最麻烦的步骤了,就是安装ffmpeg-devel,要在pbone上才能找到。用这个源要先注册,但是我在这一步就走不下去了,就算是用Gmail也受不到确认邮件。于是就直接下载ffmpeg-devel的包自行安装。安装肯定不会顺利,因为有一堆依赖的库。然后依赖的库又依赖别的库。反正根据它的要求去pbone上面下载库就行了,随便你是用深度优先还是广度优先(幸好下载不用注册)。下了大概十几二十项就搞定了。全都是rpm文件,安装命令都用形如下面的命令的格式就行了
[plain]  view plain   copy
  1. rpm -i xxx.rpm  

安装好各种依赖之后就可以安装opencv了。

[plain]  view plain   copy
  1. $cd opencv  
  2. $madir release     
  3. $cd release  
  4.   
  5. $cmake -D WITH_TBB=ON -D WITH_EIGEN=ON ..    
  6. $cmake -D BUILD_DOCS=ON -D BUILD_TESTS=OFF -D BUILD_PERF_TESTS=OFF -D BUILD_EXAMPLES=OFF ..    
  7. $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 ..    
  8. $cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local ..  
  9.   
  10. $make  
  11.   
  12. $sudo make install  


安装好后需要加动态库配置:
/bin/bash -c 'echo "/usr/local/lib" > /etc/ld.so.conf.d/opencv.conf'


然后加载动态库:

ldconfig



到这里已经安装好了。写一个c++小程序来测试一下:

[cpp]  view plain   copy
  1. //test.cpp  
  2. #include <opencv2/core/core.hpp>  
  3. #include <opencv2/highgui/highgui.hpp>  
  4. #include <opencv2/imgproc/imgproc.hpp>  
  5.   
  6. int main(int argc,char *argv[])  
  7. {  
  8.     cv::Mat image;  
  9.     image=cv::imread("1.png");  
  10.       
  11.     cv::namedWindow("1.png");  
  12.     cv::imshow("1.png",image);  
  13.   
  14.     cv::waitKey();  
  15.     return 0;  
  16. }  


编译前设置pkgconfig路径:
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig/


然后用g++编译:

[cpp]  view plain   copy
  1. g++ -g -o test test.cpp `pkg-config --cflags --libs opencv`  


运行:

./test


猜你喜欢

转载自blog.csdn.net/dongtinghong/article/details/78217913
今日推荐