红联Linux门户
Linux帮助

CentOS 6.5下安装OpenCV2.3.1详解

发布时间:2014-11-05 10:31:17来源:CSDN作者:小村长

安装的Linux版本是CentOS 6.5,选择的是OpenCV 2.3.1。不是很新的版本。因为在安装OpenCV2.4.9的时候,make的过程中出现了问题。


一:安装依赖包

依赖包用yum安装就可以了,需要以下安装包:

yum install cmake gcc gcc-c++ gtk+-devel gimp-develgimp-devel-tools gimp-help-browser zlib-devel libtiff-devel libjpeg-devellibpng-devel gstreamer-devel libavc1394-devel libraw1394-devel libdc1394-develjasper-devel jasper-utils swig python libtool nasm


二:生成make文件并安装

Opencv2.3.1可以在官网上下载(链接http://opencv.org/这段时间官网跳转到莫名的网址),如有需要可以和我联系。

具体步骤为:

(1)cdopencv2.3.1

(2)cmake -DCMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -DBUILD_NEW_PYTHON_SUPPORT=NO .

//这里可能提示line44错误. 进去Cmakelist.txt,把第44行注释掉

//  注意NO后面为空格+. 必不可少。

(3)cmake

(4)sudo makeinstall


三:配置

新建文件 /etc/ld.so.conf.d/opencv.conf

在文件中添加 /usr/local/lib

保存之后执行配置

sudoldconfig

// 因为在ld.so.conf文件中将所有的/etc/ld.so.conf.d/*.conf文件都包含进来了


四:环境变量配置

sudo vim/etc/bashrc

PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig

exportPKG_CONFIG_PATH

保存之后执行

source /etc/bashrc


五.测试安装是否成功

cd  OpenCV-2.3.1/samples/c

chmod +xbuild_all.sh

./build_all.sh

编译结束之后执行

./facedetectcascade="/usr/local/share/OpenCV/haarcascades/haarcascade_frontalface_alt.xml"--scale=1.5 lena.jpg

如果安装成功的话,lena脸上会有一个蓝色的圈。


六:eclipe for c/c++及测试opencv小案例

(1)Eclipse for c/c++ 下载地址 https://www.eclipse.org/downloads/(这时我才知道eclipse原来有这么多版本,这么地强大)

解压后用./eclipse 打开即可。当然在打开之前机子上是需要安装jdk的。可以用root用户执行:

vi /etc/profile 后面加上:

export JAVA_HOME=/usr/java/jdk1.8.0_20

export PATH=$JAVA_HOME/bin/:$PATH

exportCLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

然后再source /etc/profile就可以了。可以用java –version进行测试是否安装成功

(1)  eclipse与opencv的配置简单说下了,和Windows下很相似

点击项目>properties>C/C++ Build>Settings > GCCC++ Complier>includes 写入:

/usr/local/include

/usr/local/include/opencv

/usr/local/include/opencv2

在GCC C++ Linker > Libraries >

Libraries:填入相应的.so文件。注意这里libopencv_imgproc.so 只需填入opencv_imgproc就可以了。

Library search path: /usr/local/lib


七:安装opencv2.4.9出现的问题

当make的过程中会出现如下的错误:

Building CXX object modules/ocl/CMakeFiles/opencv_ocl.dir/src/hog.cpp.o

c++: Internal error: Killed (program cc1plus)

Please submit a full bug report.

See <http://bugzilla.RedHat.com/bugzilla> forinstructions.

make[2]: ***[modules/ocl/CMakeFiles/opencv_ocl.dir/src/hog.cpp.o] Error 1

make[1]: *** [modules/ocl/CMakeFiles/opencv_ocl.dir/all]Error 2

make: *** [all] Error 2

这里我在网上搜索了下,可能是内存不足引起的,因为我的是在虚拟机上测试的。