笔记2:win7下 OpenCv2.4.3+Qt5.0.1版本的配置
2015-06-23 14:38
435 查看
一、最近在摸索Qt,得知Opencv可以在Qt下用,故搜索网上怎么在win7(64位)下配置,其中2个帖子给我莫大的帮助:
1、http://blog.csdn.net/qiurisuixiang/article/details/8665278
2、http://www.cnblogs.com/zjutzz/archive/2013/05/30/3109373.html
写下此帖,只为我以后需要配置时作参考,另外在配置过程中(花费一天多)遇到的一些错误,当时没有解决,写在此处,望前辈们给予解决。
刚开始用Qt5.1.1去配置Opencv2.4.6(目前最新版本),直接下载Opencv2.4.6,执行解压后在build\x86\mingw目录下有2个文件夹bin和lib,没有再编译,直接用的,可惜没有成功:
在运行Qt程序时老是出现异常:退出代码 -1073741515。 ---希望看到的大牛能解释下
然后想重新生成以下bin和lib,用Cmake编译opencv,老是报错:未解决
无奈,选择了配置:win7+Opencv2.4.3+Qt5.0.1+cmake2.8.11 此过程竟然没有报错,也许是幸运。
其中Opencv2.4.3解压后的bin和lib 我用的也不好使, 你可以先试一下,避免走弯路,不行的话再用下面的步骤重新生成
介绍一下步骤:参考1帖
1、下载所需工具
(1)Qt Creator 下载地址http://qt-project.org (建议下载这个qt-windows-opensource-5.0.1-mingw47_32-x86-offline.exe)
(2)OpenCV 下载地址http://opencv.org/(版本2.4.3,编译用的MinGW4.7,高版本没有成功,如果有成功的可以交流)
(3)CMake 下载地址http://www.cmake.org/cmake/resources/software.html(这个是为了重新编译Opencv用到的工具)
2、安装:
(1)安装qt-windows-opensource-5.0.1-mingw47_32-x86-offline.exe,此版本安装时自己安装Qt Creater,注意要选中tools里的
mingw47。
安装完成后加环境变量path:D:\Study_Tools\Qt\Qt5.0.1\5.0.1\mingw47_32\bin;
D:\Study_Tools\Qt\Qt5.0.1\Tools\MinGw\bin;
(2)OpenCv直接解压到一个目录,如本人的:D:\Study_Tools\OpenCv\opencv2.4.3
目录内容如下: build下是编译好的,开始先试用,可以省时间不去重新生成
(3)安装Cmake,(安装时要选“添加到系统路径中”)。
3、使用Cmake编译OpenCv
(1)配置源码路径(OpenCv解压目录)和目标路径(可以随便设置)
如下图:(参考)
(2)点击configue,弹出对话框,选择MinGW makefiles,此时可以选择第一项(只安装了一个Qt的版本,且设置了环境变量)
本人选择specify native compilers(第二个选项),然后对于C和C++分别设定,我的是D:\Study_Tools\Qt\Qt5.0.1\Tools\MinGW\bin\gcc.exe和D:\Study_Tools\Qt\Qt5.0.1\Tools\MinGW\bin\g++.exe 确定后点左下方“configure”,会有很多项是红色的,这正常。
(3)如上图红色区域内,勾选生成列表中的WITH_OPENGL和WITH_QT两项,其他项最好不要改动, 再次点击Configure按钮,红色消失。 此刻若遇到错误请参照2帖
(4)确认无错后,点击点击Generate按钮,生成makefile文件,成功后,底下会提示Generating done
最终结果:中间不能出现红色警告
4、需要在cmd中进入编译好的目录下make和make install
(1)进入D:\Study_Tools\Qt\opencv2.4 (目标路径)
(2)执行 mingw32-make命令:此过程较为漫长
特别注意:之前要将D:\Study_Tools\Qt\opencv2.4\install\bin; 加在Path中,可能会出错:
Linking CXX executable ..\..\bin\opencv_perf_core.exe
Info: resolving vtable for cv::_OutputArray by linking to __imp___ZTVN2cv12_OutputArrayE (auto-import)
Info: resolving vtable for cv::_InputArray by linking to __imp___ZTVN2cv11_InputArrayE (auto-import)
Info: resolving vtable for cv::Exception by linking to __imp___ZTVN2cv9ExceptionE (auto-import)
collect2: ld returned 1 exit status
(3)到100%后, 执行mingw32-make install,此过程大约需要1到2分钟
至此编译结束,可以在目标路径下找到bin和lib,这是我们需要的,你可以删除其他目录,也可以将这2个文件夹拷贝到别的地方,删除该目录,占地方。
5、将bin和lib 复制到 C:\OpenCv下,再将D:\Study_Tools\OpenCv\opencv2.4.3\build\下(opencv2.4.3的解压目录)的include复制到C:\OpenCv。
添加系统环境变量C:\OpenCv\bin。
到这Qt下的Opencv环境已经配置完成,下面可以在Qt Creater下进行验证:
6、打开Qt Creater,新建一个空工程,我这里用我笔记1里测试的代码进行验证:
(1)在pro文件中添加
INCLUDEPATH+=C:\OpenCv\include\opencv
(2)添加.cpp文件:
(3)运行就可以得到与前面在VC配置下运行的结果一样了。
1、http://blog.csdn.net/qiurisuixiang/article/details/8665278
2、http://www.cnblogs.com/zjutzz/archive/2013/05/30/3109373.html
写下此帖,只为我以后需要配置时作参考,另外在配置过程中(花费一天多)遇到的一些错误,当时没有解决,写在此处,望前辈们给予解决。
刚开始用Qt5.1.1去配置Opencv2.4.6(目前最新版本),直接下载Opencv2.4.6,执行解压后在build\x86\mingw目录下有2个文件夹bin和lib,没有再编译,直接用的,可惜没有成功:
在运行Qt程序时老是出现异常:退出代码 -1073741515。 ---希望看到的大牛能解释下
然后想重新生成以下bin和lib,用Cmake编译opencv,老是报错:未解决
无奈,选择了配置:win7+Opencv2.4.3+Qt5.0.1+cmake2.8.11 此过程竟然没有报错,也许是幸运。
其中Opencv2.4.3解压后的bin和lib 我用的也不好使, 你可以先试一下,避免走弯路,不行的话再用下面的步骤重新生成
介绍一下步骤:参考1帖
1、下载所需工具
(1)Qt Creator 下载地址http://qt-project.org (建议下载这个qt-windows-opensource-5.0.1-mingw47_32-x86-offline.exe)
(2)OpenCV 下载地址http://opencv.org/(版本2.4.3,编译用的MinGW4.7,高版本没有成功,如果有成功的可以交流)
(3)CMake 下载地址http://www.cmake.org/cmake/resources/software.html(这个是为了重新编译Opencv用到的工具)
2、安装:
(1)安装qt-windows-opensource-5.0.1-mingw47_32-x86-offline.exe,此版本安装时自己安装Qt Creater,注意要选中tools里的
mingw47。
安装完成后加环境变量path:D:\Study_Tools\Qt\Qt5.0.1\5.0.1\mingw47_32\bin;
D:\Study_Tools\Qt\Qt5.0.1\Tools\MinGw\bin;
(2)OpenCv直接解压到一个目录,如本人的:D:\Study_Tools\OpenCv\opencv2.4.3
目录内容如下: build下是编译好的,开始先试用,可以省时间不去重新生成
(3)安装Cmake,(安装时要选“添加到系统路径中”)。
3、使用Cmake编译OpenCv
(1)配置源码路径(OpenCv解压目录)和目标路径(可以随便设置)
如下图:(参考)
(2)点击configue,弹出对话框,选择MinGW makefiles,此时可以选择第一项(只安装了一个Qt的版本,且设置了环境变量)
本人选择specify native compilers(第二个选项),然后对于C和C++分别设定,我的是D:\Study_Tools\Qt\Qt5.0.1\Tools\MinGW\bin\gcc.exe和D:\Study_Tools\Qt\Qt5.0.1\Tools\MinGW\bin\g++.exe 确定后点左下方“configure”,会有很多项是红色的,这正常。
(3)如上图红色区域内,勾选生成列表中的WITH_OPENGL和WITH_QT两项,其他项最好不要改动, 再次点击Configure按钮,红色消失。 此刻若遇到错误请参照2帖
(4)确认无错后,点击点击Generate按钮,生成makefile文件,成功后,底下会提示Generating done
最终结果:中间不能出现红色警告
4、需要在cmd中进入编译好的目录下make和make install
(1)进入D:\Study_Tools\Qt\opencv2.4 (目标路径)
(2)执行 mingw32-make命令:此过程较为漫长
特别注意:之前要将D:\Study_Tools\Qt\opencv2.4\install\bin; 加在Path中,可能会出错:
Linking CXX executable ..\..\bin\opencv_perf_core.exe
Info: resolving vtable for cv::_OutputArray by linking to __imp___ZTVN2cv12_OutputArrayE (auto-import)
Info: resolving vtable for cv::_InputArray by linking to __imp___ZTVN2cv11_InputArrayE (auto-import)
Info: resolving vtable for cv::Exception by linking to __imp___ZTVN2cv9ExceptionE (auto-import)
collect2: ld returned 1 exit status
(3)到100%后, 执行mingw32-make install,此过程大约需要1到2分钟
至此编译结束,可以在目标路径下找到bin和lib,这是我们需要的,你可以删除其他目录,也可以将这2个文件夹拷贝到别的地方,删除该目录,占地方。
5、将bin和lib 复制到 C:\OpenCv下,再将D:\Study_Tools\OpenCv\opencv2.4.3\build\下(opencv2.4.3的解压目录)的include复制到C:\OpenCv。
添加系统环境变量C:\OpenCv\bin。
到这Qt下的Opencv环境已经配置完成,下面可以在Qt Creater下进行验证:
6、打开Qt Creater,新建一个空工程,我这里用我笔记1里测试的代码进行验证:
(1)在pro文件中添加
INCLUDEPATH+=C:\OpenCv\include\opencv
INCLUDEPATH+=C:\OpenCv\include\opencv2
INCLUDEPATH+=C:\OpenCv\include
LIBS+=C:\OpenCv\lib\libopencv_calib3d243.dll.a
LIBS+=C:\OpenCv\lib\libopencv_contrib243.dll.a
LIBS+=C:\OpenCv\lib\libopencv_core243.dll.a
LIBS+=C:\OpenCv\lib\libopencv_features2d243.dll.a
LIBS+=C:\OpenCv\lib\libopencv_flann243.dll.a
LIBS+=C:\OpenCv\lib\libopencv_gpu243.dll.a
LIBS+=C:\OpenCv\lib\libopencv_highgui243.dll.a
LIBS+=C:\OpenCv\lib\libopencv_imgproc243.dll.a
LIBS+=C:\OpenCv\lib\libopencv_legacy243.dll.a
LIBS+=C:\OpenCv\lib\libopencv_ml243.dll.a
LIBS+=C:\OpenCv\lib\libopencv_objdetect243.dll.a
LIBS+=C:\OpenCv\lib\libopencv_video243.dll.a
LIBS+=C:\OpenCv\lib\libopencv_photo243.dll.a
(2)添加.cpp文件:
<span style="FONT-SIZE: 14px">#include"cv.h" #include"cxcore.h" #include"highgui.h" int main() { //声明IplImage指针 //IplImage *pImg = new IplImage; IplImage *pImg ; //载入图片 pImg=cvLoadImage("D:/Picture/qt_pic/haokan.jpg",1); //创建窗口 cvNamedWindow("Image",1); //显示图像 cvShowImage("Image",pImg); //等待按键 cvWaitKey(0); //销毁窗口 cvDestroyWindow("Image"); //释放图像 cvReleaseImage(&pImg); return 0; }</span>
(3)运行就可以得到与前面在VC配置下运行的结果一样了。
相关文章推荐
- Qt初试
- QTPtest中Action种类
- vs qt中增加png图标
- Qt Creater调试时一直出现:“DEBUGGER: Waiting for debug socket connect” 和“DEBUGGER: go to sleep”
- vs中使用qt的qrc生成rcc资源文件
- qt中的qrc文件和rcc文件
- qt显示图片汇总
- Qt for Visual Studio 版本中编译报 qtmaind.lib问题
- Qt中各个控件利用Qt Designer来setStyleSheet
- Qt 编码中的某一字从 UTF-8 转换到 UNICODE 国际化时可能用到
- QT串口程序已16进制接受和发送数据
- QT中的小问题总结!
- 读Pyqt4教程,带你入门Pyqt4 _012
- 读Pyqt4教程,带你入门Pyqt4 _011
- Qt多个信号连接到一个槽,在槽中识别信号的发送者方法
- qt的QListwiget设置横向的排列
- 根据进程名称获取进程pid,结束进程,执行exe文件
- 在Qt5.4中调用 sql server 2008 的存储过程如何获取返回值
- QT实现,通过URL下载文件的接口实现
- Qt一个错误的解决方法