如何在Qt中使用OpenCV
2个回答
展开全部
用Qt可以方便地创造好看的GUI,要是能和OpenCV结合起来我们就能写出蛮好的一个处理或者管理图片的软件。怎么在Qt中使用OpenCV呢?请看下文:
注:我的Qt版本4.7.4(C:\QtSDK\Desktop\Qt\4.7.4),OpenCV版本2.3.1(E:\opencv),Qt下有MinGW编译器(C:\QtSDK\mingw)
具体步骤:
Step1>
CMake OpenCV,使用CMake)生成OpenCV库的makefile文件,需要注意的是解压出来的OpenCV存储路径中的文件夹不要带有空格或者中文(我的是E:\OpenCV,不要用类似于E:\工程\opencv, E:\Open CV这种),打开CMake,指定源码位置(就是OpenCV解压出来的地方)和存放生成文件的地方,Configure弹出如图对话框,选择MinGW Makefiles和Specify native compilers
跳出对话框用以指定C++和C的编译器路径,C用gcc.exe,在QtSDK目录下的mingw/bin子目录中,C++用g++.exe:
然后再次Configure,无错误后选中WITH_QT
再次Configure会出现下图信息提示找不到Qt的Qmake可执行文件
手动指定Qmake.exe所在目录(在.\QtSDK\Desktop\Qt\4.7.4\mingw\bin下面):
再次Configure,无错误后 Generate。
Step2>
编译
1> Cmd命令 转到Generate到的目录(我的是如上图所示的E:\opencv\MinGW)
>> cd E:\opencv\MinGW
2> Cmd命令 编译文件
>> mingw32-make
3> Cmd命令 编译INSTALL
>> mingw32-make install
过程如图:
Step3>
在存放Generate生成的目录下有一个install目录,编译好的所有结果都在这里啦,包括bin,lib和include,把bin目录放到环境变量path中,其实可以把整个install目录拷贝到某个地方使用,这样就可以把opencv目录里面的内容全删了,省的占空间。我就把install里面的内容全都搬到了E盘下的OpenCVforQt目录下了(0.0)。
Example:
在用QtCreator和OpenCV的时候,修改用到opencv的工程的.pro文件就可以了,添加include和lib,例如:
QT += core gui
TARGET = Win_OpenCV_Test
TEMPLATE = app
INCLUDEPATH += E:\OpenCVforQt\include
INCLUDEPATH += E:\OpenCVforQt\include\opencv
INCLUDEPATH += E:\OpenCVforQt\include\opencv2
LIBS += E:\OpenCVforQt\lib\libopencv_core231.dll.a
LIBS += E:\OpenCVforQt\lib\libopencv_highgui231.dll.a
LIBS += E:\OpenCVforQt\lib\libopencv_imgproc231.dll.a
SOURCES += main.cpp
注:我的Qt版本4.7.4(C:\QtSDK\Desktop\Qt\4.7.4),OpenCV版本2.3.1(E:\opencv),Qt下有MinGW编译器(C:\QtSDK\mingw)
具体步骤:
Step1>
CMake OpenCV,使用CMake)生成OpenCV库的makefile文件,需要注意的是解压出来的OpenCV存储路径中的文件夹不要带有空格或者中文(我的是E:\OpenCV,不要用类似于E:\工程\opencv, E:\Open CV这种),打开CMake,指定源码位置(就是OpenCV解压出来的地方)和存放生成文件的地方,Configure弹出如图对话框,选择MinGW Makefiles和Specify native compilers
跳出对话框用以指定C++和C的编译器路径,C用gcc.exe,在QtSDK目录下的mingw/bin子目录中,C++用g++.exe:
然后再次Configure,无错误后选中WITH_QT
再次Configure会出现下图信息提示找不到Qt的Qmake可执行文件
手动指定Qmake.exe所在目录(在.\QtSDK\Desktop\Qt\4.7.4\mingw\bin下面):
再次Configure,无错误后 Generate。
Step2>
编译
1> Cmd命令 转到Generate到的目录(我的是如上图所示的E:\opencv\MinGW)
>> cd E:\opencv\MinGW
2> Cmd命令 编译文件
>> mingw32-make
3> Cmd命令 编译INSTALL
>> mingw32-make install
过程如图:
Step3>
在存放Generate生成的目录下有一个install目录,编译好的所有结果都在这里啦,包括bin,lib和include,把bin目录放到环境变量path中,其实可以把整个install目录拷贝到某个地方使用,这样就可以把opencv目录里面的内容全删了,省的占空间。我就把install里面的内容全都搬到了E盘下的OpenCVforQt目录下了(0.0)。
Example:
在用QtCreator和OpenCV的时候,修改用到opencv的工程的.pro文件就可以了,添加include和lib,例如:
QT += core gui
TARGET = Win_OpenCV_Test
TEMPLATE = app
INCLUDEPATH += E:\OpenCVforQt\include
INCLUDEPATH += E:\OpenCVforQt\include\opencv
INCLUDEPATH += E:\OpenCVforQt\include\opencv2
LIBS += E:\OpenCVforQt\lib\libopencv_core231.dll.a
LIBS += E:\OpenCVforQt\lib\libopencv_highgui231.dll.a
LIBS += E:\OpenCVforQt\lib\libopencv_imgproc231.dll.a
SOURCES += main.cpp
2016-07-14
展开全部
1、运行安装exe时就弹出对话框不能安装。
解决方法:
更改:我的电脑>属性>高级>环境变量>,然后将TEMP和TMP的值都改为C:\temp
2、解压后仍有许多压缩文件,点击stup.exe时出现警告
解决方法:
你把安装文件夹复制到一个英文文件夹中,比如直接解压到C盘,点击setup.exe安装即可。很多国外软件放在有中文名的文件夹中运行,这是一个bug。比如win-tc对中文特别敏感。所以建议初学者将这些软件(包括MATLAB)都安装在C盘。
3、运行MATLAB时出现Runtime Error,症状如下:
runtime error
另一个对话框里边还有一串JAVA程序。
解决方法:
把电脑主题改成了WindowXP经典主题,再次运行,就OK了。
如果不想启用经典模式,也有另一种解决方法:点击桌面的matlab快捷方式,右键点击“属性”,,点兼容性,选择用兼容模式运行,例如用WIN2000运行就可以了!这下好了吧,即不换回你漂亮的主题,又可用matlab了
4、Matlab安装后可能会遇到这样的问题,打开后窗口出来了,但一会儿以后又自动关闭了!
解决方法:
更改:我的电脑>属性>高级>环境变量>,然后将TEMP和TMP的值都改为C:\temp
2、解压后仍有许多压缩文件,点击stup.exe时出现警告
解决方法:
你把安装文件夹复制到一个英文文件夹中,比如直接解压到C盘,点击setup.exe安装即可。很多国外软件放在有中文名的文件夹中运行,这是一个bug。比如win-tc对中文特别敏感。所以建议初学者将这些软件(包括MATLAB)都安装在C盘。
3、运行MATLAB时出现Runtime Error,症状如下:
runtime error
另一个对话框里边还有一串JAVA程序。
解决方法:
把电脑主题改成了WindowXP经典主题,再次运行,就OK了。
如果不想启用经典模式,也有另一种解决方法:点击桌面的matlab快捷方式,右键点击“属性”,,点兼容性,选择用兼容模式运行,例如用WIN2000运行就可以了!这下好了吧,即不换回你漂亮的主题,又可用matlab了
4、Matlab安装后可能会遇到这样的问题,打开后窗口出来了,但一会儿以后又自动关闭了!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询