Fedora18下opencv-2.4.5安装记录+并在python搭建opencv环境

    来CSDN的时间不长,账号也是才注册的。最近看了一些大神的blog,不管是类似于本文的教程还是理论方面的研究报告写的都非常详细,当然对自己的帮助也很大。现在也该是自己写blog的时候了,不是么~这是我的第一篇原创blog,迈出第一步总是需要下定决心的。这篇文章可能会写的很不专业,我是抱着学习的态度来跟大家分享经验的,也希望各位大神能对blog给出一些意见哈~

    正文:一个手抖不小心把原来的Fedora17给删了,不得已重装的Fedora18。本着精简的原则在安装Fedora18时没有选择太多的软件包,所以在安装Opencv时需要自行解决一系列Required Packages的问题,因而这篇文章对Archlinux下的opencv安装也有一定的参考意义。


1. 首先安装CMake   


sudo yum -y install cmake


2. 安装ffmpeg或者libav development packages


    这两个任选其一,关于二者的关系请看这里,或者自行百度。

    前者的安装比较容易

sudo yum install ffmpeg
    后者我是源码安装,步骤如下:

    首先在libav项目官网下载源码包

tar xvf /your_path libav-9.6.tar.gz
cd /your_path/libav-9.6
./configure #这里建议先添加参数--help查看配置选项
    这时可能报错: yasm not found, use --disable-yasm for a crippled build

    我不是很明白,但按照它说的添加配置参数就可以了,同时我又设置的安装位置,如下:

./configure --disable-yasm --prefix=/usr/local

    之后

make -j2 #-j2是进行双线程编译,速度更快,如果你的计算机支持四线程的话,当然可以是-j4啦
sudo make install #会安装到刚才配置时--prefix参数指定的位置


3. 安装GTK+2.x(现在的版本都到GTK+-3.6.4了哈)


    两种 方法:

    1.  yum list | grep gtk3 找到相应的安装包,直接yum安装。这个就不做详细解释了,应该都会。

    2. 在项目网站下载源码,里面的几个包,第一个是GTK+3.6的源码,下面几个都是GTK的底层依赖包,需要先行安装。

    具体的安装步骤,请参照这篇bolg: http://blog.csdn.net/kasagawa/article/details/6824871,这里就不再复制粘贴了。

4. 安装pkg-config


sudo yum install pkgconfig


5. 可选安装


    libdc1394 2.x

    libjpeg-dev, libpng-dev, libtiff-dev, libjasper-dev.

    直接yum安装就可以了

sudo yum -y install libdc1394 libjpeg-devel libpng-devel libtiff-devel libjasper-devel


6. 安装Opencv-2.4.5


    下载opencv源码包

tar -xvf OpenCV-2.4.5.tar.bz2
cd OpenCV-2.4.5/
mkdir release
cd release
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D BUILD_PYTHON_SUPPORT=ON ..
make -j2
make install

    添加库路径

sudo vim /etc/ld.so.conf.d/opencv.conf
    加入
/usr/local/lib
    更新系统库
sudo ldconfig
    设置环境变量
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH


可能遇到的问题


    (1) 在make编译opencv时经常出现错误,我遇到的是:

Linking CXX executable ../../bin/opencv_perf_core /lib/libEGL.so.1: undefined reference to `wl_display_dispatch_queue_pending' collect2: error: ld returned 1 exit status make[2]: * [bin/opencv_perf_core] Error 1 make[1]: * [modules/core/CMakeFiles/opencv_perf_core.dir/all] Error 2

make: * [all] Error 2

    在这里还有这里找到了解决方法:

yum update libwayland*

    重新make就能通过了。


    (2) 安装完成后可以进行测试

cd ~/opencv-2.4.5/samples/c
chmod +x build_all.sh
./build_all.sh

   我遇到了如下问题:

Package opencv was not found in the pkg-config search path.
Perhaps you should add the directory containing `opencv.pc'
to the PKG_CONFIG_PATH environment variable
No package 'opencv' found

    解决方法是
cp /usr/local/lib/pkgconfig/opencv.pc /usr/lib/pkgconfig 

    如果还是无法解决,可能原因是在编译安装opencv和export环境变量的时候用的是root权限,而这里调用程序时用的是普通用户,所以无法找到相关文件。

    在~/.bash_profile最后添加:
PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
export PKG_CONFIG_PATH
    重新登录系统,编译程序,成功。

Python中搭建opencv开发环境


    Python已经随系统安装,就不再介绍它的安装步骤了。在Opencv安装完成后,只需将/usr/local/lib/python2.7/site-packages下的文件cv.py和cv2.so复制到usr/lib/python2.7/site-packages下就可以了。
cp /usr/local/lib/python2.7/site-packages/cv.py /usr/lib/python2.7/site-packages/cv.py
cp /usr/local/lib/python2.7/site-packages/cv2.so /usr/lib/python2.7/site-packages/cv2.so
    在Terminal中打开python加载opencv模块:
import cv2
    ......

参考资料

     http://www.cnblogs.com/zjutzz/archive/2013/04/09/3010916.html
     http://www.opencv.org.cn/forum/viewtopic.php?t=14610
     http://www.opencv.org.cn/forum/viewtopic.php?t=3045

你可能感兴趣的:(OpenCV,学习笔记)