CentOS安装OpenCV-2.4.13

一、 前言

由于我比较喜欢在Linux系统下编程,所以就决定在CentOS6.7下安装opencv

二、 系统环境搭建

1. 系统: CentOS 6.7 ,64位

2. GCC: gcc version 4.8.5 (GCC) 及以上均可

3. cmake: cmake version 2.8.12.2及以上均可

4. Python: Python 2.6.6及以上均可

请继续进行以下安装:

# yum install python-devel

# yum install libjpeg libjpeg-devel zlib zlib-devel freetype freetype-devel lcms lcms-devel

# yum install python-imaging


5. Numpy :numpy-1.9.0 ,参考文献[1]

# wget http://jaist.dl.sourceforge.net/project/numpy/NumPy/1.9.0/numpy-1.9.0.zip
# unzip numpy-1.9.0.zip
# cd numpy-1.9.0
# python setup.py install
# reboot


我这里使用的是numpy-1.9.2.tar.gz包安装的:

1)numpy介绍

Numpy是Python的一个科学计算的库,提供了矩阵运算的功能,类似的还有intel mkl库、matlab矩阵库等等,在机器学习中会大量使用矩阵以及相关运算。numpy不包含在python内部,所以使用前需要进行库的安装。

2、环境

centos 6.2
python 2.7.11点击下载
numpy1.9.2点击下载

3、python安装

检查下机器原来是否就装有python,直接运行python命令看下当前版本(本机自带python2.6.6版本),如果有不要盲目卸载,因为卸载了可能导致其他应用或者服务无法正常使用,这里采取的做法是直接安装python 2.7版本,不要覆盖之前的版本。(取名python2.7,以后运行python的时候就敲python2.7命令,互不干扰)

tar -zxvf Python-2.7.11.tgz mkdir /usr/local/python27 ./configure --prefix=/usr/local/python27 make && make install ln -s /usr/local/python27/bin/python /usr/bin/python2.7
  • 1
  • 2
  • 3
  • 4
  • 5


运行python2.7命令,出现上图情况说明python2.7已经安装好

4、numpy库安装

tar -zxvf numpy-1.9.2.tar.gz cd numpy-.2 python2.7.11 setup.py install cd /
    4
# python2.7 >>>from numpy import * >>>random.rand(4,5)
    3


进入python交互环境,运行如下命令出现上图说明numpy安装成功
注:安装完numpy记得不要停留在numpy的安装目录,否则加载numpy会提示错误


6. 安装依赖库:

# yum install gtk+-devel gimp-devel gimp-devel-tools gimp-help-browser zlib-devel libtiff-devel libjpeg-devel libpng-devel gstreamer-devel libavc1394-devel libraw1394-devel libdc1394-devel jasper-devel jasper-utils swig python libtool nasm

# yum install gtk*

7. 安装yasm

# wget http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz

# tar zxvf yasm-1.3.0.tar.gz
# cd yasm-1.3.0
# ./configure
# make && make install

8. 安装ffmpeg,参考文献[3],建议不要指定--prefix,采用安装路径即可

# 从ffmpeg官网:https://www.ffmpeg.org/download.html下载源代码

# tar -jxvf ffmpeg-3.2.4.tar.bz2

# ./configure --enable-shared --enable-gpl --enable-swscale

其中--enable-shared表示生成动态链接库,可以供以后编程使用,同时生成的可执行程序也依赖这些动态库。如果不加上--enable-shared选项则使用静态链接的方式编译,此时不会生成动态库,同时生成的ffmpeg等的可执行文件体积也比较大,但他们不需要动态库就可以直接运行.

# make (大约15分钟)

# make install


三、 安装OpenCV-2.4.13

1. 从官网下载opencv-2.4.13.zip

2. 执行安装

# unzip opencv-2.4.13.zip
# cd opencv-2.4.13
# cmake CMakeLists.txt

(此处大约1分钟,会看到很多打印信息,包括ffmepg的配置信息,如果是YES,则一切OK,如下图所示)


# make && make install

(此处大约30分钟)

四、 测试是否安装成功(请进入桌面模式,才能看到图片,纯命令行看不到图片

1. # vim /etc/ld.so.conf.d/opencv.conf 创建并编辑该文件。填入:/usr/local/lib
2. # ldconfig
3. # vim /etc/bashrc 文件末尾,填写以下2行:
PKG_CONfig_PATH=$PKG_CONfig_PATH:/usr/local/lib/pkgconfig
export PKG_CONfig_PATH
4. # source /etc/bashrc 使文件生效
5. 进入opencv-2.4.13下的 samples / c 目录
运行脚本$./build_all.sh
等待其编译完后,执行目录下的其中一个程序 $./find_obj 。可以看到结果


结果如图:


五、 常见错误解决方


报错信息:

OpenCV Error: Unspecified error (The function is not implemented. Rebuild the library with Windows,GTK+ 2.x or Carbon support. If you are on Ubuntu or Debian,install libgtk2.0-dev and pkg-config,then re-run cmake or configure script) in cvNamedWindow,...................


解决方案:

(1)彻底删除已安装的opencv

# 删除解压后的安装包,重新解压一次opencv-2.4.13.zip

# rm -rf /usr/local/lib/libopencv*

# rm -rf /usr/local/include/opencv
# rm -rf /usr/local/include/opencv2

(2)重复第三、四步,执行安装

-----------------------------------------------------------------------------------------------------------------------------------

六、 参考文献:

[1]http://blog.csdn.net/genghaihua/article/details/44305949

[2]http://blog.csdn.net/luotuo44/article/details/8909258

[3]http://noalgo.info/874.html

相关文章

Centos下搭建性能监控Spotlight
CentOS 6.3下Strongswan搭建IPSec VPN
在CentOS6.5上安装Skype与QQ
阿里云基于centos6.5主机VPN配置
CentOS 6.3下配置multipah
CentOS安装、配置APR和tomcat-native