新手求教,怎样能将opencv配置到qt里
1个回答
展开全部
OpenCV库搞了很久,都没能和qt联合编程,不是这有错误就哪里有问题,网上有很多办法,搜索到的都不好用,什么cmake啊,什么直接链接lib啊,试了都没成功,差点放弃了,不过后来还是成功了,非常EZ,如下:
(1)我下的是差不多最新的Qt,qt-opensource-windows-x86-mingw492-5.5.1,安装很简单,一路确定就好了。
(2)下载opencv库,能成功链接的是OpenCV-2.1.0-win32,其他不知道怎么回事链接不上,带高人讲解;软件我安装在c盘,也是一路确定就好。
(3)打开qt(之前没用过qt建议先研究一下),新建project,简单建一个Application->Qt widgets Application,基类选Qwidget;
(4)修改pro文件,添加如下代码(首先看你opencv安装文件里有没有如下文件,有的化ok):
INCLUDEPATH += C:/opencv2.1/include/opencv
LIBS += -LC:/opencv2.1/lib/ -lcv210 -lcvaux210 -lhighgui210 -lcxcore210
这个意思就是把文件包含进去就可以;
(5)在main.ccp文件或者widget.cpp中(看你要在哪里调用opencv了):
#include"cv.h"
#include"highgui.h"
(6)就可以随便调用opencv库中的函数了,例如在main.cpp中:
#include "widget.h"
#include <QApplication>
#include"cv.h"
#include"highgui.h"
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
IplImage* pImg;
pImg = cvLoadImage("E:/2.jpg",1);
cvNamedWindow( "Image", 1 );
cvShowImage( "Image", pImg );//显示图像
cvWaitKey(0); //等待按键
cvDestroyWindow( "Image" );//销毁窗口
cvReleaseImage( &pImg ); //释放图像
Widget w;
w.show();
return a.exec();
(1)我下的是差不多最新的Qt,qt-opensource-windows-x86-mingw492-5.5.1,安装很简单,一路确定就好了。
(2)下载opencv库,能成功链接的是OpenCV-2.1.0-win32,其他不知道怎么回事链接不上,带高人讲解;软件我安装在c盘,也是一路确定就好。
(3)打开qt(之前没用过qt建议先研究一下),新建project,简单建一个Application->Qt widgets Application,基类选Qwidget;
(4)修改pro文件,添加如下代码(首先看你opencv安装文件里有没有如下文件,有的化ok):
INCLUDEPATH += C:/opencv2.1/include/opencv
LIBS += -LC:/opencv2.1/lib/ -lcv210 -lcvaux210 -lhighgui210 -lcxcore210
这个意思就是把文件包含进去就可以;
(5)在main.ccp文件或者widget.cpp中(看你要在哪里调用opencv了):
#include"cv.h"
#include"highgui.h"
(6)就可以随便调用opencv库中的函数了,例如在main.cpp中:
#include "widget.h"
#include <QApplication>
#include"cv.h"
#include"highgui.h"
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
IplImage* pImg;
pImg = cvLoadImage("E:/2.jpg",1);
cvNamedWindow( "Image", 1 );
cvShowImage( "Image", pImg );//显示图像
cvWaitKey(0); //等待按键
cvDestroyWindow( "Image" );//销毁窗口
cvReleaseImage( &pImg ); //释放图像
Widget w;
w.show();
return a.exec();
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询