首页 > 代码库 > QT creator中使用opencv
QT creator中使用opencv
最近要用到opencv做图像方面的东西,网上很多是用VS加opencv,但自己对VS不怎么喜欢,想用QT Creator。在网上搜索了很多资料,终于花了一天的时间,在QT Creator上能使用opencv了。
需要的软件:(1)QT Creator。我的版本是4.8.5。这个版本还是在学习亚飞的QT Creator的时候安装的,网上有说QT版本低,而opencv版本高的话,可能在执行mingw32-make命令会报错。因此为了以防万一,我下载的低版本的opencv
(2)opencv。我的版本是2.3.0
(3)cmake 下载地址http://www.cmake.org/cmake/resources/software.html
另外我的计算机的操作系统是xp,32位的。
首先将QT creator, cmake安装好,这个蛮简单的。而安装opencv,设置解压路径就可以了。安装CMake要注意:(1)安装路径不能有中文和空格(2)勾选加入所有境变量中。
将C:\Qt\mingw\bin加入系统变量。
CMake OpenCV,使用CMake(http://www.cmake.org/)生成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所在目录
(注意这张图是我在网上复制的别人的)
再次Configure,无错误后 Generate。
1> Cmd命令 转到Generate到的目录(我的是F:\OpenCV)
cd F:\OpenCV
2> Cmd命令 编译文件
>> mingw32-make
3> Cmd命令 编译INSTALL
>> mingw32-make install
下面开始配置Qt Creator的OpenCV开发环境,拷贝下面三个文件夹放在同一个文件夹下(只需这三个目录,其余生成的文件和文件夹可以删除,以节省磁盘空间)
(1)OpenCV-2.3.0安装目录下的build/include目录
(2)CMake目标路径下,MinGW编译后的bin目录
(3)CMake目标路径下,MinGW编译后的lib目录
拷贝三个目录到同一目录后的结构如下图(我删除了原来的CMake目标目录中的其他目录,拷贝进来了include目录)
将bin目录添加到系统环境变量
至此Qt Creator下的OpenCV开发环境已经配置好,下面在Qt Creator下测试是否已经配置成功
打开Qt Creator,新建一个空工程,然后添加一个cpp文件,任意命名
在pro文件中添加如下OpenCV的依赖文件
INCLUDEPATH+=C:\OpenCV\include\opencv\
C:\OpenCV\include\opencv2\
C:\OpenCV\include
LIBS+=C:\OpenCV\lib\libopencv_calib3d230.dll.a\
C:\OpenCV\lib\libopencv_contrib230.dll.a\
C:\OpenCV\lib\libopencv_core230.dll.a\
C:\OpenCV\lib\libopencv_features2d230.dll.a\
C:\OpenCV\lib\libopencv_flann230.dll.a\
C:\OpenCV\lib\libopencv_gpu230.dll.a\
C:\OpenCV\lib\libopencv_highgui230.dll.a\
C:\OpenCV\lib\libopencv_imgproc230.dll.a\
C:\OpenCV\lib\libopencv_legacy230.dll.a\
C:\OpenCV\lib\libopencv_ml230.dll.a\
C:\OpenCV\lib\libopencv_objdetect230.dll.a\
C:\OpenCV\lib\libopencv_video230.dll.a
这样以后,就可以在主函数中正常编写自己的程序了。
PS:上面的截图都是从网上各个教程里粘贴的,可能看的时候会感觉路径会有问题。