首先,感谢佳楠的帮助。
环境: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的目录
环境: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的动态链接库
2) 新建一个空的qt工程,我取名为test。 在test.pro文件内添加opencv的动态链接库
如果不知道都有什么,可用
(
pkg-config
向用户向程序提供相应库的路径、版本号等信息)
pkg-config opencv --libs --cflags opencv >>opencv.config
(--cflags参数提取出编译所需的选项,--libs参数提取出连接时的选项 )
将输出相应的信息在 opencv.config 中,进行修改之后,我的如下:
然后把上面的都复制到 test.pro文件内 即可。
3)测试
在main.cpp里使用下面代码
#include <cv.h>
(--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内容添加到
注意的地方是, lena.jpg在所建工程的目录下,指的是在所在工程的debug文件中,如我的在“ build-testopencv-桌面-Debug ”,否则不会显示图片。
然后运行,有图有真相:
至此,QT中添加opencv完成。缺憾的是以后重新写程序是还要自己在 .pro 文件中自己添加依赖库。
网上有一种方法是: 直接将上面的添加的INCLUDEPATH和LIBS内容添加到
- sudo gedit /usr/share/qt4/mkspecs/default/qmake.conf
“这样以后就不用在每个工程里配置了,不过移植的时候就需要注意了。”可见于
http://blog.csdn.net/b5w2p0/article/details/8945388
但我在ubuntu 中试验时发现这种方法并不成功,opencv 所需要的 “cv.h”等还是找不到相应的路径。所以,并未采用这一种方法。
欢迎讨论。
但我在ubuntu 中试验时发现这种方法并不成功,opencv 所需要的 “cv.h”等还是找不到相应的路径。所以,并未采用这一种方法。
欢迎讨论。