linux ubuntu12.04上opencv2.4.7 cmake2.8.12.1 qt4环境搭建

来源:互联网 发布:mac下搭建lamp环境 编辑:程序博客网 时间:2024/06/05 08:57

转载 http://blog.csdn.net/jiebaoabcabc/article/details/22825411

以前做的win7上搭建opencv-qt文章:http://blog.csdn.net/jiebaoabcabc/article/details/17097765         

今天闲来无事,来吧opencv移植到linux上玩玩,由于几月前做过win7上的opencv2.4.7移植,感觉信心满满,但是还是在移植过程中遇到了点问题。

下面我们来看看具体的安装过程:

安装包准备:

         opencv-2.4.7.tar.gz              http://opencv.org/   建议下载最新版本for linux

         cmake-2.8.12.1-Linux-i386.tar.gz   http://www.cmake.org/cmake/resources/software.html

安装环境搭建:

         opencv在ubuntu中正确运行,需要在make以前在ubuntu安装pkg-config和libgtk2.0-dev

    所以我们要先将运行apt-getinstall libgtk2.0-dev 

                                                 apt-get install pkg-config

cmake的安装:

   cmake是我们编译安装opencv库的一个重要工具,它帮我们设定一些配置,用于生成用于编译安装的makefile,而且它可以通过界面进行配置,我感觉linux下的cmake比win上的更好用哎。

    1.首先我们先解压cmake  tar -zxvf cmake-2.8.12.1-Linux-i386.tar.gz -C/home/cmake/

     2.添加环境变量     gedit /etc/profile

     在最后添加       export PATH=$PATH: /home/cmake/cmake-2.8.10.2-Linux-i386/bin

     更新配置         source /etc/profile

     3.测试下cmake安装是否ok     cmake --version

opencv的解压:

         1.创建文件夹 #mkdir/home/opencv

         2.解压  tar -zxvf opencv-2.4.7.tar.gz -C /home/opencv

         3.创建文件夹(这里创建pc上运行的安装目录,arm上运行的安装目录)

cmake对opencv的配置:

         这里主要配置编译器路径,安装路径,库的安装需要之类的。

         1.运行cmake图形界面  #cmake-gui

         2.sourcecode指的是源码根路径,就是解压得到的文件夹    OpenCV-2.4.7/

         3.buildthe hinaries指的是生成makefile与待编译源码的路径  opencv-pv/

         4.点击configure,这里配置编译器选项,默认选择Unix Makefiles -> Use default native      compilers 先在pc上运行试试,就不用修改了。点击finish


5.配置自己需要的库和安装目录,buildtype键入Release,installprefix是opencv安装路  径,默认是在/usr/local下,我想修改成别的路径还没成功


         如果想在qt上运行你的opencv,就要选上,这个版本的cmake在ubuntu里选择图案      竟然是叉叉。。。



         6.再按下configure,没有红色说明配置ok(这里说明一下 我的qt是qt4,出现一下红字  不用理会,如果qt版本是qt5就需要在qt安装目录下一个个找出对应文件夹路径填上,   否则没法产生makefile)

 

         7.点击generate,瞬间完成 提示Generating done说明cmake完成,产生了makefile

编译安装opencv:

         1.cd到你填写的buildbinaries文件夹下,看到makefile后,运行make指令机子卡的      童鞋可以各忙各的了(顺便提醒一下,不想重新再编译一遍的童鞋一定要注意         libgtk2.0-dev的安装)

         2.makeinstall安装安装完后可以在/usr/local/lib下看到编译好的opencv共享库。

         3.登记库路径   gedit /etc/ld.so.conf.d/opencv.conf   自己创建配置文件

           在文件内添加/usr/local/lib,然后运行命令ldconfig更新库配置

         4.添加环境变量  gedit /etc/bash.bashrc     在文件后添加:

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

           export PKG_CONFIG_PATH

           退出后source /etc/bash.bashrc更新配置。

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

到这里我们的opencv-qt环境已经搭建完毕了,接下来测试一下效果:

测试1:  运行opencv源码中自带的人脸识别测试例程

         1.  cd /OpenCV-2.4.7/samples/c

         2.  ./build_all.sh   编译测试程序

         3.  ./facedetect--cascade="/usr/local/share/OpenCV/haarcascades/haarcascade_frontalface_alt.xml"--scale=1.5 lena.jpg     如果成功则显示图片


测试2: 在qt上运行个测试程序

         1.打开qt,创建一个空白项目,在工程构建文件中添加opencv的头文件和库路径

  1. INCLUDEPATH+=/home/opencv/opencv-2.4.7/include/opencv     \  
  2.                 /home/opencv/opencv-2.4.7/include/opencv2    \  
  3.                 /home/opencv/opencv-2.4.7/include  
  4. LIBS+= /usr/local/lib/libopencv*  

         2.新建一个c++源文件添加到工程中,贴上下面的代码

  1. #include"cv.h"  
  2. #include"cxcore.h"  
  3. #include"highgui.h"  
  4. int main()  
  5. {  
  6.     //声明IplImage指针  
  7.     IplImage *pImg;  
  8.     //载入图片  
  9.     pImg=cvLoadImage("/home/project/sword_art_online22.jpg",1);    //图片路径,小心  
  10.     //创建窗口  
  11.     cvNamedWindow("Image",1);  
  12.     //显示图像  
  13.     cvShowImage("Image",pImg);  
  14.     //等待按键  
  15.     cvWaitKey(0);  
  16.     //销毁窗口  
  17.     cvDestroyWindow("Image");  
  18.     //释放图像  
  19.     cvReleaseImage(&pImg);  
  20.     return 0;  
  21. }  

结果显示出我的爱图:

明天把opencv移植到ok6410板子上,移植成功了再继续写,米娜桑,下回见咯

0 0
原创粉丝点击