Qt + VS2010 下使用Opencv

本文介绍了如何在Qt+Visual Studio 2010环境下配置和使用OpenCV 2.3.0。首先从官网下载OpenCV的win 2.3版本并解压,然后在Qt项目的.pro文件中添加相关设置,接着在头文件中引入必要的库,最后编写测试程序实现图像反色功能。在仅使用VS时,需要配置库和包含目录,并在Release模式下指定附加依赖项。
摘要由CSDN通过智能技术生成

1 先去官网下载OpenCV,这使用的是win 2.3版本的。

http://ncu.dl.sourceforge.net/project/opencvlibrary/opencv-win/2.3/OpenCV-2.3.0-win-superpack.exe

2 下载后,解压文件 D:\OpenCV

3 *.pro文件添加

INCLUDEPATH +=D:\OpenCV\opencv\build\include\opencv2 \
D:\OpenCV\opencv\build\include\opencv \
D:\OpenCV\opencv\build\include

CONFIG(release,debug|release)
{
    LIBS += D:\OpenCV\opencv\build\x86\vc10\lib\opencv_calib3d230.lib \
    D:\OpenCV\opencv\build\x86\vc10\lib\opencv_contrib230.lib \
    D:\OpenCV\opencv\build\x86\vc10\lib\opencv_core230.lib \
    D:\OpenCV\opencv\build\x86\vc10\lib\opencv_features2d230.lib \
    D:\OpenCV\opencv\build\x86\vc10\lib\opencv_flann230.lib \
    D:\OpenCV\opencv\build\x86\vc10\lib\opencv_gpu230.lib \
    D:\OpenCV\opencv\build\x86\vc10\lib\opencv_highgui230.lib \
    D:\OpenCV\opencv\build\x86\vc10\lib\opencv_imgproc230.lib \
    D:\OpenCV\opencv\build\x86\vc10\lib\opencv_legacy230.lib \
    D:\OpenCV\opencv\build\x86\vc10\lib\opencv_ml230.lib \
    D:\OpenCV\opencv\build\x86\vc10\lib\opencv_objdetect230.lib \
 #   D:\OpenCV\opencv\build\x86\vc10\lib\opencv_ts230.lib \
    D:\OpenCV\opencv\build\x86\vc10\lib\opencv_video230.lib
}
CONFIG(debug,debug|release)
{
    LIBS +=D:\OpenCV\opencv\build\x86\vc10\lib\opencv_calib3d230d.lib \
    D:\OpenCV\opencv\build\x86\vc10\lib\opencv_contrib230d.lib \
    D:\OpenCV\opencv\build\x86\vc10\lib\opencv_core230d.lib \
    D:\OpenCV\opencv\build\x86\vc10\lib\opencv_features2d230d.lib \
    D:\OpenCV\opencv\build\x86\vc10\lib\opencv_flann230d.lib \
    D:\OpenCV\opencv\build\x86\vc10\lib\opencv_gpu230d.lib \
    D:\OpenCV\opencv\build\x86\vc10\lib\opencv_highgui230d.lib \
    D:\OpenCV\opencv\build\x86\vc10\lib\opencv_imgproc230d.lib \
    D:\OpenCV\opencv\build\x86\vc10\lib\opencv_legacy230d.lib \
    D:\OpenCV\opencv\build\x86\vc10\lib\opencv_ml230d.lib \
    D:\OpenCV\opencv\build\x86\vc10\lib\opencv_objdetect230d.lib \
 #   D:\OpenCV\opencv\build\x86\vc10\lib\opencv_ts230d.lib \
    D:\OpenCV\opencv\build\x86\vc10\lib\opencv_video230d.lib
}

4 在.h文件里添加

#include<opencv2/opencv.hpp>
using namespace cv;

5 测试程序 图像反色

   char* filename="1.png";
   int i,j,k;
    //载入图像
    IplImage * img=cvLoadImage(filename,1);
	CvScalar s;
    int height= img->height;
    int width= img->width;
    int channel= img->nChannels;
    printf("the image is %d X %d wiht %d channels",height,width,channel);
    for(i=0;i<height;i++)
    for(j=0;j<width;j++)
    {
        s=cvGet2D(img,i,j); // get the (i,j) pixel value
        for(k=0;k<channel;k++)
        s.val[k]=255-s.val[k];
        cvSet2D(img,i,j,s); // set the (i,j) pixel value
    }

    cvNamedWindow( "win", CV_WINDOW_AUTOSIZE);//创建窗口
    cvShowImage( "win", img );//显示图像
    cvWaitKey(0); //等待按键
    cvDestroyWindow( "Image" );//销毁窗口
    cvReleaseImage( &img); //释放图像
6 效果图



注意:路径不要有中文,空格,如果编译没有错误,运行时提示缺少 *.dll,就把 *.dll拷贝到exe的目录下,还有在我的*.pro里注释了2行,把231改成了230。

博客原文:http://blog.csdn.net/nimingzhe2008/article/details/7474306(修改后,验证无误)

----续

如果只是VS 使用opencv\build\x86\vc10\lib 和opencv\build\include\opencv2作为lib和include

同时在Release模式下,项目属性--附加依赖项里添加

opencv_calib3d230.lib

opencv_contrib230.lib

opencv_core230.lib

opencv_features2d230.lib

opencv_flann230.lib

opencv_gpu230.lib

opencv_highgui230.lib

opencv_imgproc230.lib

opencv_legacy230.lib

opencv_ml230.lib

opencv_objdetect230.lib

opencv_video230.lib

同时在exe目录下添加dll

opencv_core230.dll

opencv_highgui230.dll



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值