windows下QT creator+openCV配置和使用

 

原文地址:http://blog.csdn.net/u012234115/article/details/41871449?utm_source=tuicool&utm_medium=referral

网上的教程都是教怎么用minGW和cmake编译OpenCV然后再导入,简直太麻烦了,不利于新手,这里有个简单的方法。

1.安装qt sdk

我装的是qt 5.3 msvc版32位,内置了qt creator,直接用windows带的msvc编译器。

2.安装opencv

我装的是opencv2.4.9 for windows,解压到D盘根目录下了。

注意opencv for windows解压后就有个build文件夹,说明是用msvc编译器编译好的,我们的qt用的是msvc编译器的话就可以直接导入链接库和头文件了,不需要网上那些人所说的要搞minGW和cmake编译,如果你装的qt是minGW版的就需要用cmake重新编译一遍opencv,相关教程一搜一大把。

3.在qt creator中建一个标准的控制台C++工程项目。

随便建哪种项目都是可以的,这里为了方便直接建立最简单的C++控制台项目。

4.配置opencv的环境变量(此步貌似可省,但是配个环境变量总是保险的)

在另一篇博客里讲过http://blog.csdn.net/u012234115/article/details/38612977

扫描二维码关注公众号,回复: 3495741 查看本文章

5.修改工程的pro文件。

要包含头文件目录和静态连接库目录,在里面加入

[plain] view plain copy print?在CODE上查看代码片派生到我的代码片

  1. INCLUDEPATH+=d:/opencv/build/include/opencv \  
  2.                     d:/opencv/build/include/opencv2 \  
  3.                    d:/opencv/build/include  
  4. LIBS+=D:\opencv\build\x86\vc12\lib\opencv_ml249d.lib  
  5. LIBS+=D:\opencv\build\x86\vc12\lib\opencv_calib3d249d.lib  
  6. LIBS+=D:\opencv\build\x86\vc12\lib\opencv_contrib249d.lib  
  7. LIBS+=D:\opencv\build\x86\vc12\lib\opencv_core249d.lib  
  8. LIBS+=D:\opencv\build\x86\vc12\lib\opencv_features2d249d.lib  
  9. LIBS+=D:\opencv\build\x86\vc12\lib\opencv_flann249d.lib  
  10. LIBS+=D:\opencv\build\x86\vc12\lib\opencv_gpu249d.lib  
  11. LIBS+=D:\opencv\build\x86\vc12\lib\opencv_highgui249d.lib  
  12. LIBS+=D:\opencv\build\x86\vc12\lib\opencv_imgproc249d.lib  
  13. LIBS+=D:\opencv\build\x86\vc12\lib\opencv_legacy249d.lib  
  14. LIBS+=D:\opencv\build\x86\vc12\lib\opencv_objdetect249d.lib  
  15. LIBS+=D:\opencv\build\x86\vc12\lib\opencv_ts249d.lib  
  16. LIBS+=D:\opencv\build\x86\vc12\lib\opencv_video249d.lib  
  17. LIBS+=D:\opencv\build\x86\vc12\lib\opencv_nonfree249d.lib  
  18. LIBS+=D:\opencv\build\x86\vc12\lib\opencv_ocl249d.lib  
  19. LIBS+=D:\opencv\build\x86\vc12\lib\opencv_photo249d.lib  
  20. LIBS+=D:\opencv\build\x86\vc12\lib\opencv_stitching249d.lib  
  21. LIBS+=D:\opencv\build\x86\vc12\lib\opencv_superres249d.lib  
  22. LIBS+=D:\opencv\build\x86\vc12\lib\opencv_videostab249d.lib  

以上加入的是debug版本的库,如果要release版本的就把后面的d去掉。其中/和\这两种斜杠都可以表示路径,但是不同路径换行分隔必须用\,INCLUDEPATH和LIBS等都可以一次加多条或者一次加一条,注意格式

加完了注意要qmake一下。

6.代码

main.cpp

[cpp] view plain copy print?在CODE上查看代码片派生到我的代码片

  1. #include <iostream>  
  2. #include <opencv2/core/core.hpp>  
  3. #include <opencv2/highgui/highgui.hpp>  
  4. using namespace std;  
  5. using namespace cv;  
  6. int main(int argc,char **argv)  
  7. {  
  8.   
  9. //    IplImage *pImg=cvLoadImage("D:/codetest/qttest/main/HelloWorld.png");  
  10. //    cvShowImage("test",pImg);  
  11.     cout<<"opencv"<<endl;  
  12.     Mat src=imread("D:/codetest/qttest/main/laura.jpg");  //在qt里面读取图片貌似只支持绝对路径  
  13.     imshow("test",src);  
  14.     waitKey(0);  
  15.     return 0;  
  16. }  

老版和新版的opencv API都可以用了,注意在qt里读图片好像不能用相对路径,如果是gui程序的话也许可以放在资源文件里再用相对路径,未测试。

7.效果

古墓丽影劳拉大姐霸气镇楼~

猜你喜欢

转载自blog.csdn.net/HYY0228/article/details/70232973