CentOS7配置opencv for python && eclipse c/c++[更新]

 更改前的安装过程有些问题,主要是ffmpeg-devel的安装部分,这里重新说一下

两种安装方法:

第一种,直接:

    # yum install numpy opencv*

    这种方法安装了之后,能够在python中使用opencv(import cv2),但是如何在C++环境中使用opencv,我还不清楚

第二种方法,从源码安装

1, 安装 opencv 的依赖项

    google: install opencv for python in fedora
    发现:
    http://docs.opencv.org/trunk/doc/py_tutorials/py_setup/py_setup_in_fedora/py_setup_in_fedora.html
    按照上面所述,开始安装 opencv 的依赖项
    python 中的依赖项:
    yum install cmake
    yum install python-devel numpy
    yum install gcc gcc-c++
    opencv 的依赖项:
    yum install gtk2-devel
    yum install libdc1394-devel
    yum install libv4l-devel
    yum install ffmpeg-devel
    yum install gstreamer-plugins-base-devel

注意:

 安装上面的依赖项之前,需要先把epel7 ,rpmforge7,pbone源安装好。

 截至到我更新这篇博文为止,epel7以及rpmforge7都还没有正式版,还是beta版,自己在网上找找。

 pbone源是一个需要付费的源,但是注册了会提供15天的试用。另外,ffmpeg-devel这个依赖项在pbone的centos源中还没有,因此,在安装pbone源时,操作系统选Red Hat EL7,不要选CentOS7(至于,RHEL与CENTOS软件通用性的程度如何,此处不做讨论,笔者在安装过程中,没有发现因为是CentOS系统用RHEL的Pbone源出现什么问题)。

 软件源配置好了之后,直接各种yum就将依赖项都安装好了。

 还有一些其他可选的依赖项,大家自己视情况安装吧!

2, 安装 opencv
    在网上下载 opencv 源码
    解压后

# cd opencv
# madir release
# cd release
# cmake -D WITH_TBB=ON -D WITH_EIGEN=ON ..
# cmake -D BUILD_DOCS=ON -D BUILD_TESTS=OFF -D BUILD_PERF_TESTS=OFF -D BUILD_EXAMPLES=OFF ..
# 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 ..
# cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local ..
# make
wait long long time ......
# make install     
安装完毕

3, python 路径配置
    # cp /usr/local/lib/python2.7/site-packages/cv2.so /usr/lib/python2.7/site-packages
    # export PYTHONPATH=$PYTHONPATH:/usr/local/lib/python2.7/site-packages
    然后打开 python,import cv2 ,发现已经 OK 了

  

    发现 import cv2 已经无误了!!!
    It's so beautiful!!!

4, opencv 环境变量配置
    (eclipse 的安装以及 C/C++的安装,此处不讲)
    切换到 root 用户# vi /etc/ld.so.conf.d/opencv.conf
    加入/usr/local/lib
    # ldconfig
    # cd        返回默认目录
    # vi .bashrc     在最后加上 PKG_CONFIG_PATH=/usr/local/lib/pkgconfig 和 export PKG_CONFIG_PATH 两行
    # reboot

5, 配置 eclipse
    重启后,打开 eslipse,新建 C++工程
    工程建好后,进入
    Project->Properties->C/C++ Build->Settings
    在 GCC C++ Compiler->includes
      include paths 中加入:
        /usr/local/include/opencv

    

    在 GCC C++ Linker->Libraries 里
      Library search path 里,加入
      /usr/local/lib
        Libraries 里加入
        opencv_core; opencv_imgproc; opencv_highgui; opencv_ml; opencv_video; opencv_features2d; opencv_calib3d; opencv_objdetect; opencv_contrib; opencv_legacy; opencv_flann

    

下面写入测试代码:

#include <iostream>
#include <cv.h>
#include <highgui.h>

using namespace std;

int main ( int argc, char **argv )
{
    IplImage *pImg = cvLoadImage("/home/zh/1.jpg");
    cvNamedWindow("Image", 1);
    cvShowImage("Image", pImg);
    cvWaitKey(0);
    cout << "!!!Hello World!!!" << endl; // prints !!!Hello World!!!
    return 0;
}

如果正确显示图片,那就是无误了。

ELSE:
发现 eclipse 一个小小的坑爹的地方,命名代码没有错误,他还总是画红色波浪线,说有错误,说不存在该变量或者啥的,但是运行是无误的,如下图示:

 

对 eclipse 甚是无语

 

posted @ 2014-08-06 16:27  PAK FA T-50  阅读(1595)  评论(0编辑  收藏  举报