OpenCV的全称是:Open Source Computer Vision Library。OpenCV是一个基于(开源)发行的跨平台计算机视觉库,可以运行在Linux、Windows和Mac OS操作系统上。它轻量级而且高效——由一系列 C 函数和少量 C++ 类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。Opencv在图像处理和计算机视觉方面的应用方面使用得较多,故在此介绍如何在Redhat下配置opencv
Cmake的安装
安装Cmake是为了后续编译opencv源码,并提供依赖环境。可以通过下面的地址获取Cmake安装包http://www.cmake.org/cmake/resources/software.html。下载完成之后,通过tar命令对压缩包进行解压,进入解压目录后,在解压目录打开终端,在终端中依次执行./bootstrap->make->makeinstall即可完成Cmake的安装。
OpenCv的安装
首先可以到opencv的官网下载opencv,笔者这里选用的opencv版本为opencv2.3.1。下载完成之后,将opencv的安装包解压到/usr/local目录下,然后进入解压之后的目录,执行如下命令:
执行完成之后,依次执行make->makeinstall命令。接下来进行环境变量的配置。新建文件/etc/ld.so.conf.d/opencv.conf,并在文件中添加/usr/local/lib。保存之后执行配置sudo ldconfig,这样就可以将我们创建的.conf文件给包含进来。添加环境路径,执行sudo vim/etc/bashrc之后,在文件的末尾添加如下语句:
保存之后执行source /etc/bashrc。接下来我们测试一下opencv是否安装成功。
这里执行的是opencv实例里面的人脸识别,如果执行成功可以看到如图所示的结果:
Eclipse下配置opencv
在Linux环境下虽然可以使用gcc、g++等命令完成对程序的编译,但对于大型程序的调试而言,其使用不是非常方便,而eclipse提供了强大的debug功能,可以帮助我们比较高效地进行程序的开发。首先需要下载Eclipse for c/c++,可以去eclipse的官网进行下载安装,之后安装jdk,并配置环境变量:执行命令vim /etc/profile,在文件中加入如下语句,具体路径可以根据自己的jdk安装情况进行修改。
export JAVA_HOME=/usr/java/jdk1.8.0_20export PATH=$JAVA_HOME/bin/:$PATHexportCLASSPATH=.:$JAVA_HOME/lib/dt/jar:JAVA_HOME/lib/tool.jar
保存文件后执行source/etc/profile。如果读者和笔者一样安装系统时选择了软件开发工作站的话,那么以上关于eclipse的jdk配置可以省略,因为系统在安装时已经默认配置完成。接下来在eclipse中配置opencv,新建一个项目,然后点击项目->属性->c/c++build->Settings ->GCCC++ Complier->includes添加opencv所在的头文件目录:
在GCC C++ Linker部分,添加相应的库目录和库,需要添加的库可以通过pkg-config --libsopencv查询。
然后执行如下代码,测试opencv是否配置成功。#include<cv.h> #include<highgui.h> using namespace std; int main(){ IplImage *img=cvLoadImage("test.jpg"); cvNamedWindow("ShowImage"); cvShowImage("ShowImage",img); cvWaitKey(); return 0; }