Linux ubuntu 14.04 环境下Qt creator中添加OpenCv2.4.9

来源:互联网 发布:阿拉比卡咖啡豆 知乎 编辑:程序博客网 时间:2024/06/04 18:04
首先,感谢佳楠的帮助。
环境:Linux Ubuntu 14.04    QT4.8.5   Qt creator2.8.0   OpenCv2.4.9
OpenCv的安装之前已经说过,QT的安装可自行百度,QT源码编译安装时时间较长,我装了五个小时左右。然后配置Qt creator环境。
现在,开始在
Qt creator中添加OpenCv。
1)sudo gedit /usr/share/qt4/mkspecs/default/qmake.conf 
在文件内添加了下面两句:
 
    QMAKE_INCDIR = /usr/include/opencv                              //安装opencv的目录
    QMAKE_LIBS = -lcvaux -lcv -lcxcore -lhighgui -lml 
2)新建一个空的qt工程,我取名为test。在test.pro文件内添加opencv的动态链接库
    如果不知道都有什么,可用 (pkg-config向用户向程序提供相应库的路径、版本号等信息)
    pkg-config opencv --libs --cflags opencv >>opencv.config
(--cflags参数提取出编译所需的选项,--libs参数提取出连接时的选项 )
将输出相应的信息在 
opencv.config 中,进行修改之后,我的如下:
INCLUDEPATH +=/usr/local/include/opencv \
                            /usr/local/include
LIBS +=/usr/local/lib/libopencv_calib3d.so \
/usr/local/lib/libopencv_contrib.so \
/usr/local/lib/libopencv_core.so \
/usr/local/lib/libopencv_features2d.so \
/usr/local/lib/libopencv_flann.so \
/usr/local/lib/libopencv_gpu.so \
/usr/local/lib/libopencv_highgui.so \
/usr/local/lib/libopencv_imgproc.so \
/usr/local/lib/libopencv_legacy.so \
/usr/local/lib/libopencv_ml.so \
/usr/local/lib/libopencv_nonfree.so \
/usr/local/lib/libopencv_objdetect.so \
/usr/local/lib/libopencv_ocl.so \
/usr/local/lib/libopencv_photo.so \
/usr/local/lib/libopencv_stitching.so \
/usr/local/lib/libopencv_superres.so \
/usr/local/lib/libopencv_ts.a \
/usr/local/lib/libopencv_video.so \
/usr/local/lib/libopencv_videostab.so
然后把上面的都复制到 
 test.pro文件内 即可。
3)测试 

在main.cpp里使用下面代码
 
  #include <cv.h> 
    #include <highgui.h>      
    int main()  
    {  
    IplImage *img = 0;  
    img = cvLoadImage("lena.jpg",-1);     //lena.jpg在所建工程的目录下  
    cvNamedWindow("lena", 1);  
    cvShowImage("lena", img);  
    cvWaitKey(0);  
    return 0;  
    } 
 注意的地方是,lena.jpg在所建工程的目录下,指的是在所在工程的debug文件中,如我的在“ build-testopencv-桌面-Debug  ”,否则不会显示图片。
然后运行,有图有真相: 
 图片

至此,QT中添加opencv完成。缺憾的是以后重新写程序是还要自己在 .pro 文件中自己添加依赖库。
  
网上有一种方法是: 
直接将上面的添加的INCLUDEPATH和LIBS内容添加到
                                
  1. sudo gedit /usr/share/qt4/mkspecs/default/qmake.conf  
“这样以后就不用在每个工程里配置了,不过移植的时候就需要注意了。”可见于 http://blog.csdn.net/b5w2p0/article/details/8945388

但我在ubuntu 中试验时发现这种方法并不成功,opencv 所需要的 “cv.h”等还是找不到相应的路径。所以,并未采用这一种方法。

欢迎讨论。
0 0