Qt配置openCv环境
Windows 7 + QT + OpenNI + Kinect + OpenCV 环境配置
Windows 7 + QT + OpenNI + Kinect + OpenCV环境配置一、配置Microsoft Visual Studio 2010下载并且安装Microsoft Visual Studio 2010。
此处不累赘二、配置QT环境:◆下载并且安装QT :/downloads/◆配置QT编译器:此处为调式器,不建议参考三、O penNi配置下载OpenNi一键配置软件ZigFu:/安装即可。
四、下载opencv2.4.5下载后解压:/project/opencvlibrary/opencv-unix/2.4.5/opencv-2.4.5.ta r.gz右键开始菜单选择Microsoft Visual Studio 2010" -> "Visual Studio T ools" -> "Visual Studio 命令提示(2010)”进入解压后的文件夹输入以下命令:$ cd C:\opencv-2.4.5$ mkdir build-msvc2010$ cd build-msvc2012$ cmake -G "NMakeMakefiles" -DBUILD_PERF_TESTS=OFF-DBUILD_TESTS=OFF -DWITH_FFMPEG=OFF-DCMAKE_BUILD_TYPE=Debug ..$ nmake$ nmake install$ cmake -DCMAKE_BUILD_TYPE=Release ..$ nmake$ nmake install$ nmake cleanbuild-msvc2010文件夹下install下的三个文件就是opecv库,加入系统环境变量。
五、配置QT.pro文件夹下INCLUDEPATH+=D:\msopencv\include \opencv\D:\msopencv\include\opencv2\D:/msopencv/include\$$quote(C:/ProgramFiles(x86)/OpenNI/Include/)LIBS+=D:\msopencv\lib\opencv_calib3d245.lib\D:\msopencv\lib\opencv_contrib245.lib\D:\msopencv\lib\opencv_core245.lib\D:\msopencv\lib\opencv_features2d245.lib\D:\msopencv\lib\opencv_flann245.lib\D:\msopencv\lib\opencv_gpu245.lib\D:\msopencv\lib\opencv_highgui245.lib\D:\msopencv\lib\opencv_imgproc245.lib\D:\msopencv\lib\opencv_legacy245.lib\D:\msopencv\lib\opencv_ml245.lib\D:\msopencv\lib\opencv_objdetect245.lib\D:\msopencv\lib\opencv_video245.lib\$$quote(C:\ProgramFiles(x86)\OpenNI\Lib\NiSampleExtensionModule.lib)\ $$quote(C:\ProgramFiles(x86)\OpenNI\Lib\NiSampleModule.lib)\ $$quote(C:\ProgramFiles(x86)\OpenNI\Lib\OpenNI.jni.lib)\ $$quote(C:\ProgramFiles(x86)\OpenNI\Lib\openNI.lib)\。
基于qt+opencv数字图像处理实验一般步骤
基于qt+opencv数字图像处理实验一般步骤基于QtCreator+openCV的数字图像处理实验一般步骤一、新建Qt Widgets Application项目二、设计应用界面1.拖放所需控件2.应用布局3.修改界面各个对象的文本和名称三、复制图像类型转换类单元文件到项目文件夹Imageconversion是用于Qt图像对象类型与OpenCV图像对象类型直接的转换,是整理自网络,把这两个文件复制到项目文件夹下,方便使用。
四、在构建文件和有关文件头包含openCV库1. 在项目文件“项目名称.pro”文件(*.pro 基本上是构建工程项目时由Qt 处理的第一个文件,这个文件称为Qt 项目文件,一个名为“qmake”的内部Qt 程序负责处理该文件最后添加如下指令语句:include(E:\openCV\opencv331.pri)看起来是这样的:其中opencv331.pri的文件含openCV包含路径和库文件路径,可以把这些路径信息直接一一写在Qt项目文件中,但是比较麻烦。
把这些路径信息统一写在一个文件里面,方便使用。
这个需要根据用户的实际安排情况调整,我的opencv331.pri文件内容如下:INCLUDEPATH+=E:\openCV\opencv331build\install\include LIBS+=E:\openCV\opencv331build\install\x86\mingw\bin\li bopencv_core331.dllLIBS+=E:\openCV\opencv331build\install\x86\mingw\bin\libop encv_highgui331.dll LIBS+=E:\openCV\opencv331build\install\x86\mingw\bin\libopenc v_imgcodecs331.dllLIBS+=E:\openCV\opencv331build\install\x86\mingw\bin\li bopencv_imgproc331.dll LIBS+=E:\openCV\opencv331build\install\x86\mingw\bin\libopenc v_features2d331.dllLIBS+=E:\openCV\opencv331build\install\x86\mingw\bin\li bopencv_calib3d331.dll 2.在头文件中包含opencv、图像数据类型转换以及常用Qt控件#include//Qt图像类,适用于屏显#include//打开文件对话框#include//文件信息类#include//用于管理2D图形对象#include//Qt字符串类#include//弹出窗口类#include//openCV头文件#include//OpenCV头文件#include"imageconversion.h"//图像数据类型转换using namespace cv;五、在mainwindow.h声明私有数据成员1. 与图像读、写和显示有关的几个数据成员:QGraphicsScene sceneL,sceneR,scene;//与QgraphicsView配合显示图像QPixmap pixmapL,pixmapR,pixmap; //用于读、写图像//以后参数根据需要定义double a,b,c,d,nc,r,threshold;enumPointOperation{None=0,LinearExpand,NonLinearExpand,GrayIn vert,BitWise} pointOperation;int fusionOperation;void rotate_arbitrarily_angle(cv::Mat&src,cv::Mat&dst,float angle);2. 在构造函数关联场景和图像显示对象ui->srcGraphicsView->setScene(&srcScene);//关联场景和图形显示对象ui->dstGraphicsView->setScene(&dstScene);如下图:六、定义动作控件槽函数1.打开或关闭图像文件if(ui->openButton->text()=="关闭图像"){sceneL.clear();ui->openButton->setText("打开图像");ui->saveButton->setEnabled(false);return;}QString fileName=QFileDialog::getOpenFileName( this,"打开图像",QDir::currentPath(),"Images(*.png*.bmp*.jpg*.tif)");if(!fileName.isNull()){QFileInfo file(fileName);if(pixmapL.load(file.absoluteFilePath())){ sceneL.clear();//清除原有图像信息sceneL.addPixmap(pixmapL);ui->openButton->setText("关闭图像");ui->saveAsButton->setEnabled(false);}}return;2.保存图像QString fileName=QFileDialog::getSaveFileName( this,"保存图像",QDir::currentPath(),"Images(*.png*.bmp*.jpg*.tif)");if(pixmap.save(fileName,0,100)) QMessageBox::information(this,tr("OK"),tr("保存成功"));elseQMessageBox::information(this,tr("NG"),tr("保存失败"));3.图像处理代码,以加法点运算为例fusionOperation=ui->fusionBox->currentIndex();if(fusionOperation==0){ui->resulLable->setText("出错啦!");QMessageBox::information(this,tr("错误"),tr("请选择算法"));return;}//图像类型转换ImageConversion imgConversion;cv::Mat mat0=imgConversion.QPixmapToCvMat(pixmapL);cv::Mat mat,img1,img2,img;cvtColor(mat0,mat,CV_BGR2GRAY);//mat1,8位无符号数图像mat.convertTo(img1,CV_64FC1);//double类型图像,0~255,图像1 mat0=imgConversion.QPixmapToCvMat(pixmapR);cvtColor(mat0,mat,CV_BGR2GRAY);//mat.convertTo(img2,CV_64FC1);//double类型图像,0~255,图像2 switch(fusionOperation){case1:img=0.5*img1+0.5*img2;ui->resulLable->setText("五五开融合结果图像");break;case2:img=0.3*img1+0.7*img2;ui->resulLable->setText("三七开融合结果图像");break;default:break;}img.convertTo(mat,CV_8UC1);pixmap=imgConversion.cvMatToQPixmap(mat);scene.clear();scene.addPixmap(pixmap);ui->saveAsButton->setEnabled(true);4.点运算处理代码pointOperation=(enumPointOperation)ui->pointOperationBox->currentIndex();if(pointOperation==None){ui->resulLable->setText("出错啦!");QMessageBox::information(this,tr("错误"),tr("请选择算法"));return;}ImageConversion imgConversion;cv::Mat mat0=imgConversion.QPixmapToCvMat(pixmapL);cv::Mat mat1,img1;cvtColor(mat0,mat1,CV_BGR2GRAY);//mat1,8位无符号数图像mat1.convertTo(img1,CV_64FC1);//double类型图像switch(pointOperation){case LinearExpand://ui->aEdit->setValidator(newQDoubleValidator(0.0,1.0,2,this));a=ui->aEdit->text().toDouble();b=ui->bEdit->text().toDouble();c=ui->cEdit->text().toDouble();d=ui->dEdit->text().toDouble();for(int i=0;i<img1.rows;i++){< p="">double*pixrow=img1.ptr(i);for(int j=0;j<img1.cols;j++){< p="">if(pixrow[j]<=a*255)pixrow[j]=c*255;else if(pixrow[j]>=b*255)pixrow[j]=d*255;elsepixrow[j]=c*255+(pixrow[j]-a*255)/(b-a)*(d-c)*255;/*********************************************if(img1.at(i,j)<=a*255)img1.at(i,j)=c*255;else if(img1.at(i,j)>=b*255)img1.at(i,j)=d*255;elseimg1.at(i,j)=c+(img1.at(i,j)-a*255)/(b-a)*(d-c)*255;*************************************************************** ******/}}ui->resulLable->setText("线性扩展结果图像");break;case NonLinearExpand:nc=ui->ncEdit->text().toDouble();cv::log(img1/255+1.0,mat0);img1=mat0*nc*255;ui->resulLable->setText("非线性扩展结果图像");break;case GrayInvert:img1=255-mat1;ui->resulLable->setText("灰度倒置结果图像");break;case BitWise:threshold=ui->thresholdEdit->text().toDouble();for(int i=0;i<img1.rows;i++){< p="">double*pixrow=img1.ptr(i);for(int j=0;j<img1.cols;j++){< p="">if(pixrow[j]>=threshold*255)pixrow[j]=255;elsepixrow[j]=0;}}ui->resulLable->setText("二值化结果图像");break;default:break;}img1.convertTo(mat1,CV_8UC1);pixmap=imgConversion.cvMatToQPixmap(mat1);scene.clear();scene.addPixmap(pixmap);ui->saveAsButton->setEnabled(true);5.图像旋转代码/************************************************************** *****以下代码来自csdn上“笨笨的小棒棒”的个人博客:*https:///u013263891/article/details/8393247 9*在此对作者表示感谢!*************************************************************** **/voidMainWindow::rotate_arbitrarily_angle(cv::Mat&src,cv::Mat&dst,fl oat angle) {float radian=(float)(angle/180.0*CV_PI);//填充图像int maxBorder=(int)(max(src.cols,src.rows)* 1.414);//即为sqrt(2)*max int dx=(maxBorder-src.cols)/2;int dy=(maxBorder-src.rows)/2;copyMakeBorder(src,dst,dy,dy,dx,dx,BORDER_CONSTANT);//旋转Point2f center((float)(dst.cols/2),(float)(dst.rows/2));Mat affine_matrix=getRotationMatrix2D(center,angle, 1.0);//求得旋转矩阵warpAffine(dst,dst,affine_matrix,dst.size());//计算图像旋转之后包含图像的最大的矩形float sinVal=abs(sin(radian));float cosVal=abs(cos(radian));Size targetSize((int)(src.cols*cosVal+src.rows*sinVal),(int)(src.cols*sinVal+src.rows*cosVal));//剪掉多余边框int x=(dst.cols-targetSize.width)/2;int y=(dst.rows-targetSize.height)/2;Rect rect(x,y,targetSize.width,targetSize.height);dst=Mat(dst,rect);}七、如何修改QtCreator应用程序名称修改*.pro文件名称,以及*.pro文件内“TARGET”项的值八、常用1.对象命名用词(1)打开open(2)保存save(3)拉伸stretch(4)平滑smooth(5)锐化sharpen(6)增强enhancement(7)恢复restore(8)分割Segment2.常用openCV函数(1)直方图均衡化Void equalizeHist(InputArray src, OutputArray dst);(2)OpenCV 中获取图像或矩阵最大、最小值C++: void minMaxLoc(InputArray src, double* minVal, double* maxVal=0, Point* minLoc=0, Point* maxLoc=0, InputArray mask=noArray() )C++: void minMaxLoc(const SparseMat& a, double* minVal, double* maxVal, int*minIdx=0, int*maxIdx=0 )</img1.cols;j++){<></img1.rows;i++){<></img1.cols;j++){<></img1.rows;i++){<>。
opencv在QT中的配置和使用教程
opencv在QT中的配置和使⽤教程本⽂使⽤的软件包:QT、cmake、opencv库由于主要参考的是以下两个博客,这⾥就根据他们的内容关键点截图加上⼀些⾃⼰遇到的问题来写,具体细节可参考下⾯两个链接。
1. 2. ⼀、软件安装(1)QT下载地址:QT安装具体细节见博客2,注意以下⼏步同时注意系统变量的添加,博客⼆中有详细说明。
(2)cmake下载地址:选最新版本即可(3)opencv下载地址:根据⾃⼰的系统选择⼆、使⽤cmake编译opencv(1)根据⾃⼰的opencv版本号选择解压(2)等待源代码解压完成(3)解压完成后,启动刚刚安装好的Cmake程序,⾃⼰填写OpenCV刚刚解压的源码⽬录,以及⾃⼰新建⼀个⽂件夹⽤于存放编译完成的opencv,填写到下⼀⾏的编译⽬标⽬录,然后点击下⽅的configure按钮进⾏第⼀次配置。
(4)选择MinGw Makefiles,然后选择第⼆项,完成后点击下⼀步(5)指定c编译器和c++编译器的路径,请找到你的QT⽬录\Tools\mingw730_64\bin下的gcc.exe和g++.exe程序,依次对应填写。
(6)等待第⼀次configure完成。
(configure到最后可能会下载opencv_videoio_ffmpeg相关库⽂件,如果没有梯⼦的话可能会⽐较久)(7)configure完成后,需要配置⼀些参数。
在第三⾏的Search中,搜索WITH_QT,打勾。
搜索WITH_OPENGL,打勾。
搜索ENABLE_PRECOMPILED_HEADERS,取消打勾。
搜索QT5_DIR,将“你的QT路径\5.13.0\mingw73_64\lib\cmake\Qt5”填进去。
例如我的是:D:\WorkApp\QT\5.13.0\mingw73_64\lib\cmake\Qt5,完成以上操作后点击Configure进⾏第⼆次Configure。
(8)第⼆次Configure完成后,点击Generate⽣成opencv编译⽂件到⽬标⽬录。
Qt里添加OpenCV库
Qt里添加OpenCV库0、新建一个控制台工程唯一需要注意的是选择编译器,这一定要和你的opencv下载的编译版本一致!我下载的opencv是msvc2015编译的64位所以这里一定要选择相同的!1、新建的工程点右键,选择添加库,如下图:2、选择外部库3、找到Opencv解压目录下的opencv\build\x64\vc15\lib\opencv_world401.lib 添加include 路径opencv\build\include,具体操作看下图:特别需要注意的是:需要把opencv\build\x64\vc15\lib\bin目录添加到环境变量里Path里4.点击确定后,工程文件*.pro里会添加如下内容:win32:CONFIG(release,debug|release):LIBS+=-LD:/opencv/build/x64/vc15/lib/-lopencv_world401else:win32:CONFIG(debug,debug|release):LIBS+=-LD:/opencv/build/x64/vc15/lib/-lopencv_world401delse:unix:LIBS+=-LD:/opencv/build/x64/vc15/lib/-lopencv_world401INCLUDEPATH+=D:/opencv/build/includeDEPENDPATH+=D:/opencv/build/include5.保存工程,执行qmake,更新工程make文件。
这一步很重要,新手往往忘记这一步导致不能使用!!6. 测试opencv库的安装,在main文件里使用:#include<QCoreApplication>#include<opencv2/core.hpp>#include<opencv2/highgui.hpp>int main(int argc,char*argv[]){QCoreApplication a(argc,argv);cv::Mat img=cv::imread("d:/tmp.bmp",0);cv::imshow("imgtest",img);cv::waitKey(0);return a.exec();}显示结果:同样的道理可以安装其他c++库。
OpenCV与Qt的环境搭建及Demo
OpenCV与Qt的环境搭建及Demo前⾔:前段时间写了很多OpenCV的程序,虽然重点在算法上,但图像窗⼝只能靠cvNamedWindow,效果很不理想。
遂希望⽤Qt配合OpenCV使⽤,为我的程序建⽴图形化界⾯。
然⽽,依我对OpenCV的了解,环境配置⼀定是⽞学,在解决了多个问题后,终于实现了Demo,在这⾥分享下我的成果,也感谢⽂末参考资料中的各位博主。
Qt在Windows环境下有两种编译⽅式,MinGW和msvc。
msvc就是微软的VC运⾏库,只要安装了Visual Studio就⾃带了,在编译速度上⽐较有优势。
缺点是,采⽤msvc编译的话,需要单独安装cdb调试⼯具,才能在Qt中进⾏单步调试,本⽂将采⽤Win10 64bit+opencv 2.4.10 + Qt5.8.0 + VS2013配置环境。
第⼀步:安装与配置OpenCV在此,我们假设你的电脑上已经安装了Visual Studio,本⽂将不再赘述。
因为某些历史问题,我的OpenCV的版本为2.4.10,如果你的版本也是2.x.x,那么你可以直接将2410替换成你的版本。
1. 从下载OpenCV并解压到⼀个⽬录中,我们假设解压到了"D:\opencv\"中。
2. 配置环境变量,在系统->⾼级系统设置->环境变量->系统变量中,找到Path,并添加"D:\opencv\build\x64\vc12\bin"。
请注意上⾯路径中的x64/vc12是需要根据你系统的版本⾃⾏替换的。
第⼆步:安装与配置Qt1. 从下载Qt,并注册账户、开始安装。
注意在安装过程中需要选择MSVC2013 64bit的kit,当然,这也需要根据你系统的版本进⾏替换。
2. 新建⼀个Qt Widges Application,注意勾选VSVC2013。
如果⼀切就绪,Qt Creator中应该为下图所⽰。
3.4. 可以看到,⼀个简单的Qt项⽬由.pro⽂件,头⽂件、源⽂件、界⾯⽂件组成,今后我们都将⽤到。
Windows下QT安装及opencv配置(vs编译器)
Windows下QT安装及opencv配置(vs编译器)1 安装VS2015按照引导程序来即可,⼀般不会出问题。
2 安装Windows调试⼯具X64 Debuggers And Tools-x64_en-us.msiX86 Debuggers And Tools-x86_en-us.msi根据系统位数选择对应的版本,直接傻⽠安装即可。
3 安装QT(qt-opensource-windows-x86-5.9.0.exe)Qt 占⽤的存储空间很⼤,安装之前建议先准备好 8GB 以上的磁盘空间。
对于⽬前 Qt 最新版开发环境,如果不安装源代码包,实际占⽤⼤约 5.5GB;如果选择安装源码包,⼤约占⽤ 7.5GB。
双击下载得到的 qt-opensource-windows-x86-5.9.0.exe 即可开始安装。
Qt 的安装过程和普通的 Windows 软件⼀样,按照向导进⾏操作即可。
(1)注册和登录Qt 在安装过程中会提⽰⽤户进⾏注册和登录,不⽤理会,跳过(Skip)即可,实际开发时不需要登录。
(2)安装路径和关联⽂件Qt 允许⽤户⾃定义安装路径,但是请注意,安装路径不能带空格、中⽂字符或者其它任何特殊字符。
另外,该界⾯还会询问是否关联特定的⽂件类型。
如果关联(默认是关联的),特定后缀的⽂件(包括 .cpp ⽂件)默认使⽤ Qt 打开。
(3)选择安装组件Qt 安装过程中最关键的⼀步是组件的选择(4)Qt 安装组件及其说明选择完了组件,根据向导⼀步⼀步操作就可以了。
4 配置opencv默认opencv已经编译好了。
(1)在配置⽂件⾥添加opencv头⽂件路径和库⽂件路径(2)编写测试代码(3)拷贝opencv dll库到执⾏⽂件⽬录,并运⾏⼤功告成,也可以测试⼀下opencv的深度学习模型推断接⼝,都没有问题。
需要注意的是,vs编译器32位还是64位,或者release还是debug版本,要选择opencv对应的版本。
在QtCreator中使用Opencv2
在Qt Creator中使用Opencv 2.3分类:数字图像处理Qt2012-04-18 17:21 104人阅读评论(0) 收藏举报打开Qt项目中的.pro文件,添加如下代码INCLUDEPATH+=D:\OpenCV\opencv\build\include\opencv2\D:\OpenCV\opencv\build\include\opencv\D:\OpenCV\opencv\build\includeCONFIG(release,debug|release){LIBS+=D:\OpenCV\opencv\build\x86\vc10\lib\opencv_calib3d231.lib\D:\OpenCV\opencv\build\x86\vc10\lib\opencv_contrib231.lib\D:\OpenCV\opencv\build\x86\vc10\lib\opencv_core231.lib\D:\OpenCV\opencv\build\x86\vc10\lib\opencv_features2d231.lib\ D:\OpenCV\opencv\build\x86\vc10\lib\opencv_flann231.lib\D:\OpenCV\opencv\build\x86\vc10\lib\opencv_gpu231.lib\D:\OpenCV\opencv\build\x86\vc10\lib\opencv_highgui231.lib\D:\OpenCV\opencv\build\x86\vc10\lib\opencv_imgproc231.lib\ D:\OpenCV\opencv\build\x86\vc10\lib\opencv_legacy231.lib\D:\OpenCV\opencv\build\x86\vc10\lib\opencv_ml231.lib\D:\OpenCV\opencv\build\x86\vc10\lib\opencv_objdetect231.lib\ D:\OpenCV\opencv\build\x86\vc10\lib\opencv_ts231.lib\D:\OpenCV\opencv\build\x86\vc10\lib\opencv_video231.lib}CONFIG(debug,debug|release){LIBS+=D:\OpenCV\opencv\build\x86\vc10\lib\opencv_calib3d231d.lib\ D:\OpenCV\opencv\build\x86\vc10\lib\opencv_contrib231d.lib\ D:\OpenCV\opencv\build\x86\vc10\lib\opencv_core231d.lib\D:\OpenCV\opencv\build\x86\vc10\lib\opencv_features2d231d.lib\ D:\OpenCV\opencv\build\x86\vc10\lib\opencv_flann231d.lib\D:\OpenCV\opencv\build\x86\vc10\lib\opencv_gpu231d.lib\D:\OpenCV\opencv\build\x86\vc10\lib\opencv_highgui231d.lib\ D:\OpenCV\opencv\build\x86\vc10\lib\opencv_imgproc231d.lib\ D:\OpenCV\opencv\build\x86\vc10\lib\opencv_legacy231d.lib\ D:\OpenCV\opencv\build\x86\vc10\lib\opencv_ml231d.lib\D:\OpenCV\opencv\build\x86\vc10\lib\opencv_objdetect231d.lib\ D:\OpenCV\opencv\build\x86\vc10\lib\opencv_ts231d.lib\D:\OpenCV\opencv\build\x86\vc10\lib\opencv_video231d.lib}注意,你的代码中的路径要根据OpenCV的具体安装路径做改变。
win7 qtcreator+opencv安装与配置
Win7(X64/x86)Qt creator OpenCV2.3配置(v2.0)guo8113说明:对Qt creator、Opencv、mingw不做解释,不懂自己查资料1、需要的软件:(所有软件均可联系本人)QtCreator2.3下载地址:qt官网qt-win-opensource-4.8.4-mingw(qt官网下载)MinGW-gcc440_1(经测试3.X的版本是安装不成功的,我在这上面最少浪费了半天时间)OpenCV-2.3.1-win-superpackcmake-2.8.10.2-win32-x86/cmake/resources/software.html2、软件安装:所有软件安装到C盘根目录下,切记不可有中文目录⏹解压或安装MinGW-gcc440_1,至C盘c:\mingw添加系统环境变量“计算机->右键属性->高级系统设置-》高级”在系统环境变量新建:变量名mingw值C:\mingw⏹安装cmake⏹安装opencv⏹安装qt和qtcreator3、编译与安装3.1 Cmake生成opencvmakefile打开cmake配置源码与安装路径源码路径要包括以下内容目标路径笔者设置为c:\Qt\opencv23.2配置:configure:在下面的选择框选择mingw makefiles,点击finish3.3生成:点击generate3.4进入设置好的目标路径执行在cmd里输入cd c:\Qt\OpenCV2输入:mingw32-make进行编译等待40分钟左右编译完成:执行mingw32-make install进行安装:安装完之后将opencv的bin目录添加到环境变量4配置QTcreator打开QTcreator,工具-选项配置几项如下图:编译器mingwQTCmake5.QT creator配置把c:\Qt\OpenCV2目录下install文件夹中的所有文件包含bin lib include 文件夹,拿到c:\Qt\OpenCV2下(这几个是必须的,其他的可以删掉)。
Vs2019+Qt+Opencv环境配置心得(图文)
Vs2019+Qt+Opencv环境配置⼼得(图⽂)⼀、下载vs2019和qt
(关于vs2019的配置⽅法不在赘述,上⼀篇已经讲解了,点击)
2、
下载qt,在官⽹站下载即可
关于vs和qt安装
vs2019安装到⾃定义的⽬录就⾏,根据个⼈需求选择需要的库,我选择的C++和python库
qt安装的话不需要太⼤改动,msvc2017或者2015选上就⾏,安装到⾃定义的⽬录⼀直下⼀步到安装完成。
⼆、将vs2019和qt添加到系统环境变量中
三、在vs2019中创建新项⽬并添加qt插件
点击拓展--管理拓展--联机--搜索qt--下载
四、创建qt项⽬
配置完成后,点击mian函数,进⾏调试即可测试,另外可在此qt项⽬基础上配置opencv,⽅法的话上⼀篇⽂章有讲到()⾄此vs2019+qt+opencv的配置到此结束,这个也是我⾃⼰在配置过程中⾃⼰摸索,终于将环境配置好并且跑通了代码。
到此这篇关于Vs2019+Qt+Opencv环境配置⼼得(图⽂)的⽂章就介绍到这了,更多相关Vs2019 Qt Opencv配置内容请搜索以前的⽂章或继续浏览下⾯的相关⽂章希望⼤家以后多多⽀持!。
win7下配置OpenCV的Qt开发环境
[OpenCV] -- win7下配置OpenCV的Qt开发环境Email : hahayacoder@0 编译、配置OpenCV的工程相当曲折,编译OpenCV不下5次,一开始还以为是自己的配置、编译步骤有问题,后来发现原来是自己电脑装的Qt Creator版本有点低,里面的MingW版本较低,而OpenCV下载的是最新版本,最新版本的OpenCV需要高版本的MingW。
最后果断换成高版本Qt Creator,终于编译成功。
1 下载所需工具(1)Qt Creator 下载地址 (建议下载最新版本,因为里面带的MinGW版本较高,我最开始使用Qt 4.7.4编译OpenCV-2.4.4一直报错,后来换成Qt 5.0.1编译成功)(2)OpenCV 下载地址/(不建议下载最新版本,最新版本的编译需要高版本的MinGW,不然在执行mingw32-make命令会报错)(3)CMake 下载地址/cmake/resources/software.html2 安装Qt Creator,过程很简单,一直下一步就OK3 安装OpenCV,设置解压路径就OK4 安装CMake,过程同样很简单(注意:(1)安装路径不能有中文和空格(2)勾选加入所有境变量中)5 目前最新的OpenCV版本,安装之后的目录下面有源码和个版本的lib和dll,不过为避免出现问题,还是自己编译6 将C:\Qt\Qt5.0.1\Tools\MinGW\bin加入系统的Path环境变量(假设Qt Creator安装在C盘)7 打开CMake,使用CMake编译OpenCV。
配置源码路径与生成的目标路径(1)源码路径:要选择OpenCV安装目录下含有如下文件的文件夹(2)目标路径:可以随意设置8 点击Configure配置按钮。
在弹出的对话框中选择MinGW makefiles,其余选项保持默认,点击Finish按钮,开始编译9 CMake编译结束界面如下图,勾选生成列表中的WITH_OPENGL和WITH_QT两项,其他项最好不要改动有一点需要注意一下,第二次configure的时候,会报错,说QT5CORE_DIR等等找不到,这一条上述教程里面没有说,我搜索了一下之后发现这个方法可以解决这个问题点击Cmake的entry,然后添加如下的信息,左边不变,右边为你的qt5的路径。
QTOpenCV的安装与配置(win7_64+Qt_5.6.1+opencv_3.1.0)
QT OpenCV的安装与配置(win7_64+Qt_5.6.1+opencv_3.1.0)标签:qtopencv3.0.0win7_64安装组合:Win7-64bits+ qt-opensource-windows-x86-mingw492-5.5.0+ opencv-3.0.0+cmake-3.6.0-rc2-win32-x86感谢以下网友的分享:https:///2014/08/19/qt-5-3-1-64-bit-mingw-windows//question_113329_opencv-3-0-videoio-error/qiurisuixiang/article/details/8665278/info-detail-500574.html准备工作1、安装QT 5.6.0安装在: E:\Qt\Qt5.6.0QT下载地址:/official_releases/64bit QT下载地址是:/projects/qtx64/?source=typ_redirect2、安装opencvOpenCV官网:/下载有OpenCV 3.0.0解压至: E:\Qt\opencv3、安装cmake从CMake下载3.4.0-rc3-win32-x86安装至: E:\Qt\cmakeCMake下载地址:/cmake/resources/software.html安装CMake的的时候,注意安装路径不能有中文和空格,在安装过程中,勾选为所有用户加入到环境变量()4、配置环境变量主要是将 E:\Qt\Qt5.6.1\5.6\mingw49_32\bin 添加到系统环境变量中1.生成Makefiles打开CMake,配置源码路径和生成物(D:/opencvQT)的目标路径:点击Configure,在弹出的框中选择MinGW Makefiles ,并勾选 Specify native compilers:接着配置C和C++编译器路径:C: C:\Qt\Qt5.5.0\Tools\mingw492_32\bin\gcc.exe ->E:\Qt\Qt5.6.1\Tools\mingw492_32\bin\ gcc.exe C++: C:\Qt\Qt5.5.0\Tools\mingw492_32\bin\g++.exe ->E:\Qt\Qt5.6.1\Tools\mingw492_32\bin\ g++.exe点击finish。
QTCreator+Opencv4.x+Libtorch1.7配置
QTCreator+Opencv4.x+Libtorch1.7配置前⾔纯c++⽤户⽽⾔如果要⾃研产品,会⼀个图形界⾯编程⼯具还是有必要的。
⼤多数c++⽤户,如果在Windows平台开发则多使⽤微软全家桶,如果是Linux平台则可能是其他⼯具再cmake。
这篇博客将记录Windows平台,QT Creator中Opencv和Libtorch的配置。
⽹上有较多关于使⽤Mingw编译Opencv源码以供QT Creator使⽤的,事实上,只是基于Opencv和Libtorch的api做开发的话,⽆需编译。
正确的流程为:安装QT Creator时,勾选MSVC编译器,下载opencv的exe⽂件和libtorch的官⽅版压缩包,随后配置Release版本的项⽬即可。
如要直接看正确步骤,前往本⽂“正确步骤”⼩节即可。
各⼯具版本:QT Creator 4.11.0 (Community)QT 5.14.1OpenCV 4.5.0(官⽹) 4.1.1 x64(MingW轮⼦库版)Libtorch 1.7.0(官⽹)CUDA 10.2CUDNN(适配CUDA10.2版本)QT Creator安装不全,编译器选择错误,OpenCv使⽤困难由于⾃⼰以前主⼒开发⼯具是微软全家桶,主要Visual Studio写c++,VS code写python这样,QT Creator⼤致了解后简单装了下,只有MingW x64编译器,这导致OpenCV不能像在Visual Studio⼀样直接下载.exe解压添加动态库即可。
由于不了解QT Creator,配置时直接按照⽹上部分博客在.pro中修改,导致出错。
直接下载opencv官⽹.exe,使⽤MingW编译主要错误表现为:1. 控制台⽆法输出,即QT Creator最下⽅3 应⽤程序输出只有Debugging starts和Debugging has finished字样。
2. cv::Mat可以使⽤,但是imread和imshow均⽆法使⽤,右键项⽬重新构建时出现 undefined reference to `cv::imread(cv::String const....错误undefined reference to也就是“未定义的标识符”错误,这是因为没有正确关联.lib⽂件,⼯程只能找到函数声明,⽆法找到定义。
Qt5.5.1环境下的OpenCV3.1.0的配置(MSVS2010编译器)(陶 实验成功)
i、点击 Generate,生成 MakeFiles 成功。
转到 build 的保存路径为 C:\opencv\a,如下所示:
OpenCV.sln 便是我们需要的解决方案文件。至此,Cmake 全部结束。
2、VS2010 编译 OpenCV 解决方案生成库
a、 VS2010 打开 OpenCV 的解决方案 OpenCV.sln (双击) , 分别编译 Debug 版和 Release 版。选择 ALL_BUILD 项目,右键进行“生成”,而不是 INSTALL,点击“生成--生成解 决方案”,生成 Debug 版的 dll 和 lib,需要几分钟,如下图所示:
4、测试
测试有 2 个方案: 方案一、使用 VS2010 建立、编译 Qt 工程
到此基于 VS2010 编译器的 QT Creator5.5.1 下的 OpenCV-3.1.0 开发环境已 经配置好,剩下的就是测试是否配置成功。 1) 导入原先的 Qt 工程文件.pro,系统自动转换为.sln 工程; 2) 新建 Qt 工程(下面使用该法测试) a、启动 VS2010,点击“文件----新建项目”菜单,
(3)安装 qt-opensource-windows-x86-msvc2010-5.5.1.exe
注意:安装 qt-opensource-windows-x86-msvc2010-5.5.1.exe,选择下面的选项:
安装完前面三个东东,需要先配置一----------------------------------------------------------------------------------------------------------------------
0、安装软件
QT+OpenCV2.4.12配置
在win10 x64下配置QT5.6.0 Mingw+opencv2.4.121.准备好所有工具1)qt-opensource-windows-x86-mingw492-5.6.0.exe2)opencv2.4.123)cmake-3.5.2-win32-x862 . 安装好QT之后打开qtcreator工具—>选项—>构建和运行将cmake中的qmake.exe添加到Cmake中3. 打开opencv中sources中的CMakeLists.txt,参数-DWITH_IPP=OFF -DCMAKE_BUILD_TYPE=RELEASE -DCMAKE_INSTALL_PREFIX=D:/OpenCV,这样编译好的opencv 的路径将在D:/OpenCV。
点击执行Cmake,待完成Cmake之后点击完成。
4. 点击项目,构建步骤勾上install,然后点击菜单栏构建 构建所有项目,开始编译5. 等待编译完成之后,在D:/OpenCV就是我们自己编译好的opencv。
将D:/OpenCV中的include文件夹和x86文件夹方法你想放的位置,我的位置是C:\QT_MinGw\opencv2.4.12_build\include,C:\QT_MinGw\opencv2.4.12_build\x86将C:\QT_MinGw\opencv2.4.12_build\x86\mingw\bin添加到系统变量的Path中6. 新建一个QT项目,1.在.pro文件中添加对opencv的引用,INCLUDEPATH+=C:\QT_MinGw\opencv2.4.12_build\include\C:\QT_MinGw\opencv2.4.12_build\include\opencv\C:\QT_MinGw\opencv2.4.12_build\include\opencv2LIBS+=-LC:\QT_MinGw\opencv2.4.12_build\x86\mingw\lib\libopencv_*.a2.右键项目执行qmake,在main.cpp添加测试代码#include<opencv2/core/core.hpp>#include<opencv2/highgui/highgui.hpp>#include<opencv2/imgproc/imgproc.hpp>using namespace cv;int main(){Mat img=imread("E:/2.jpg",1);namedWindow("abc");imshow("abc",img);waitKey(0);return0;}3.构建->运行大功告成!!!。
Qt各种版本开发工具的配置方法
Windows下Qt各种版本开发工具的配置方法Windows下开发工具的配置:首先安装Microsoft Visuall Studio 2005专业版,然后安装Microsoft ActiveSync公司4.5,再安装STANDARDSDK_500和Windows Mobile 5.0 Pocket PC SDK等软件。
然后到Qt网站下载win-qt-everywhere-opensource-src-4.6.0.zip 软件,解压到某一指定目录,如:D:\Qt\win32binaries目录,然后从:“Visual Studio 2005 命令提示”入手进入命令行,执行自编批处理文件install.bat,内容为:configure -platform win32-msvc2005nmake1、Application命令行方式:在Windows XP桌面上自编批处理命令文件:Qt Desktop Command Prompt.bat,内容为:%COMSPEC% /k "D:\Qt\win32binaries\win32binaries\bin\qtvars.bat vsvars"这样就可通过命令行工具编译、运行Qt应用程序了。
如:qmake –projectqmake –t vcappqmake *.pronmake等就形成了exe程序了。
2、Application Visual Studio 2005集成环境方式:在Windows XP桌面上自编批处理命令文件:Visual Studio with Qt Desktop.bat,内容为:D:\Qt\win32binaries\bin\qtvars.bat vsstart这样就进入Visuall Studio 2005集成环境了。
(注:编译后系统没有qtvars.bat文件,这是从qt-embedded-wince-eval-4.5.3-vs2005.exe安装后D:\Qt\4.5.3\win32binaries\bin 目录下取得的,而qt-embedded-wince-eval-4.5.3-vs2005.exe的使用是有时间限制的)3、Windows Mobile 5.0 Pocket PC:将win-qt-everywhere-opensource-src-4.6.0.zip软件,解压到某一指定目录,如:D:\Qt\wm50binaries目录,然后从:“Visual Studio 2005 命令提示”入手进入命令行,执行自编批处理文件install.bat,内容为:PATH=D:\Qt\wm50binaries\bin;%PATH%configure -xplatform wincewm50pocket-msvc2005set INCLUDE=D:\Program Files\Microsoft Visual Studio 8\VC\ce\include;D:\Program Files\Windows CE Tools\wce500\Windows Mobile 5.0 Pocket PC SDK\Include\Armv4iset LIB=D:\Program Files\Microsoft Visual Studio 8\VC\ce\lib\armv4i;D:\Program Files\Windows CE Tools\wce500\Windows Mobile 5.0 Pocket PC SDK\Lib\ARMV4I set PATH=D:\Program Files\Microsoft Visual Studio 8\VC\ce\bin\x86_arm;%PATH% nmake(注:可根据安装情况进行适当修改)若有qt-embedded-wince-eval-4.5.3-vs2005.exe的checksdk.exe文件和setcepaths.bat 文件,那么自编批处理文件install.bat,也可以内容为:PATH=D:\Qt\wm50binaries\bin;%PATH%configure -xplatform wincewm50pocket-msvc2005setcepaths wincewm50pocket-msvc2005nmake然后再在命令行中执行:nmake因为setcepaths.bat批处理文件可能会强行退出。
Qt5中进行OpenCV开发教程
7 iplImg = cvCreateImageHeader(cvSize(img->width,img->height),8,3);
8 iplImg->imageData = (char *)qImg->bits();
9
10 if(img->origin==IPL_ORIGIN_TL)
11 {
12
32 delete qImg;
33 }
//----main.cpp
1 #include "widget.h"
2 #include <QApplication>
3
4 int main(int argc, char *argv[])
5{
6 QApplication a(argc, argv);
7
8 IplImage *img = cvLoadImage("test.jpg",1);
2)以下是一个具体的简单实例——在自定义的Widget中显示以张图片,源码如下:
//------widget.h
1 #ifndef WIDGET_H 2 #define WIDGET_H 3 4 #include <QWidget> 5 #include <QImage> 6 #include <opencv.hpp> 7 8 class Widget : public QWidget 9{ 10 Q_OBJECT 11 12 public: 13 Widget(IplImage *img,QWidget *parent = 0); 14 ~Widget(); 15 protected: 16 void paintEvent(QPaintEvent *); 17 private: 18 IplImage *iplImg; 19 QImage *qImg; 20 }; 21 22 #endif // WIDGET_H
【IT专家】【从零学习openCV】ubuntu+openCV+qt安装配置
本文由我司收集整编,推荐下载,如有疑问,请与我司联系【从零学习openCV】ubuntu+openCV+qt安装配置2014/11/04 9655 一、Ubuntu安装 ubuntu是linux的一个发行版本,我想对linux有所了解的人应该都知道,我们直接到官网上下载就好了,是免费使用的。
官网下载链接 这里我用的是最新的ubuntu14.04 由于我用的是Mac系统,直接用Vmware fusion7虚拟机将下载好的镜像光盘导入安装即可,和真实的系统安装差不多,ubuntu的安装过程十分地人性化,一路设置过去就好了。
二、openCV安装 首先找到openCV的官网把最新的openCV包下载到ubuntu里,传送门:openCV 下载 下载完成直接右键解压即可,当然你也可以用shell:unzip opencv-2.4.10.zip 解压后不用着急,你会看到解压目录下有一堆文件,这就是我们的openCV库了,但是现在还没法用,得用cmake进行编译才行。
cmake就是一个跨平台的编译器,在ubuntu下我们只需要输入一行指令:apt-get install cmake即可安装 当然如果你觉得安装的版本不合适也可以自行去cmake官网下载相应版本:cmake下载 这里我们选择编译好的版本cmake-3.1.0-rc1-Linux-i386.tar.gz tar zxvf cmake-3.1.0-rc1-Linux-i386.tar.gz –C /usr/local/ 设置环境变量: sudo gedit /home/panda/.bashrc 在打开的文件后添加: export PATH=$PATH:/usr/local/cmake-3.1.0-rc1-Linux-i386/bin。
OpenCV3+Qt5安装及配置
OpenCV3+Qt5安装及配置Qt5的安装这里就不说了,只说opencv3的编译、配置到Qt5及如何使用。
说明:在按照本文进行配置之前,有下载opencv3.3.1安装,之后一直测试失败,寻找各种解决办法。
初次按照本文进行配置,使用的是opencv3.3.1,但是在编译到7%时报了2个错误,编译失败;遂决定完全按照前帖所有版本进行配置,于是取得成功。
版本说明:本机:win7 x64opencv:3.2.0cmake:3.8.21、下载opencv在github搜索opencv,下载3.2.0版本。
下载exe版;2、安装opencv双击exe即解压,解压到D:\MyProgram,即安装完成;3、下载CMake4、安装CMake一直点下一步即安装完成5、配置编译器路径编译器使用qt自带c、c++编译器。
之前有装过的mingw编译器的path路径要去掉。
因此qt要添加两个路径到path:C:\Qt\Qt5.8.0\5.8\mingw53_32\bin;C:\Qt\Qt5.8.0\Tools\mingw530_32\bin6、CMake配置7、CMake修改配置WITH_OPENGL选中,WITH_QT选中,WITH_IPP取消(如果有的话)然后再点击configure。
8、CMake为报错项修改值刚才配置完成之后,还会剩下一些红色的项需要自己修改值:Qt5Concurrent_DIR C:/Qt/Qt5.8.0/5.8/mingw53_32/lib/cmake/Qt5ConcurrentQt5Core_DIR C:/Qt/Qt5.8.0/5.8/mingw53_32/lib/cmake/Qt5CoreQt5Gui_DIR C:/Qt/Qt5.8.0/5.8/mingw53_32/lib/cmake/Qt5GuiQt5OpenGL_DIR C:/Qt/Qt5.8.0/5.8/mingw53_32/lib/cmake/Qt5OpenGLQt5Test_DIR C:/Qt/Qt5.8.0/5.8/mingw53_32/lib/cmake/Qt5TestQt5Widgets_DIR C:/Qt/Qt5.8.0/5.8/mingw53_32/lib/cmake/Qt5Widgets设置好之后再点configure。
Windows环境下配置Qt5.8+opencv3.1.0开发环境的方法
Windows环境下配置Qt5.8+opencv3.1.0开发环境的⽅法最近需要把程序移植到windows系统下,程序都已经写好了,然⽽没想到搭建⼀个开发环境却废了那么多功夫为了防⽌以后重装系统后不会傻眼,决定将环境搭建的过程记录下来,也希望能够帮助到遇到同样问题的⼈好了废话不多说先给出需要下载的东西(4)VS2013 这个直接从⽹上找地址下载吧,我⽤的专业版的,别的版本没试过不保证可以 PS:听说免费版的配置不了这个环境,相信你们能解决的,下个专业版的,百度密...钥(呵呵)好了,下载完这些以后先从VS2013开始安装⼀路确定、NEXT、I accept然后安装完成同样安装Qt Creator⼀路确定,然后搞定注意:我配置的Qt是使⽤MSVC的⽽不是MinGW运⾏OpenCV解压到任意⽬录⾥打开CMake,使⽤CMake编译OpenCV。
配置源码路径与⽣成的⽬标路径(1)源码路径:要选择OpenCV安装⽬录下含有如下⽂件的⽂件夹(2)⽬标路径:可以随意设置点击Configure配置按钮。
在弹出的对话框中选择(如下图所⽰),其余选项保持默认,点击Finish按钮,开始编译CMake编译结束界⾯如下图,勾选⽣成列表中的WITH_OPENGL和WITH_QT两项,其他项最好不要改动再次点击Configure按钮,红⾊消失点击Generate按钮,⽣成makefile⽂件,成功后,底下会提⽰Generating done 进⼊刚才设置的⽬标路径,⽤VS2013打开ALL_BUILD⽂件右击AllBuil⽣成,再右击Install⽣成下⾯开始配置Qt Creator的OpenCV开发环境,拷贝下⾯三个⽂件夹放在同⼀个⽂件夹下(只需这三个⽬录,其余⽣成的⽂件和⽂件夹可以删除,以节省磁盘空间)()(1)OpenCV安装⽬录下的build/include⽬录(就是运⾏opencv-3.1.0.exe解压到的那个⽬录)(2)CMake⽬标⽬录下的lib⽂件和bin⽂件拎出来放在⼀起后,就像这样然后配置⼀下环境变量在系统变量Path⾥加⼊C:\Release\bin C:\Release\lib/Debug然后在Qt⼯程的.pro⽂件中写⼊然后编写程序测试⼀下就可以了最后注意⼀点:在改变了.pro⽂件的内容后,点击构建->执⾏qmake来更新参数。