1、OpenCV下载地址:http://opencv.org/downloads.html

因为本人电脑装的是vs2010,所以下载的是opencv-2.4.11.exe(vc10、vc11、vc12),最新版3.0没有vc10;

高版本的OpenCV已经为VS系列编译器预先配置好了动态库和静态库,不需要自己cmake编译了。
%OpenCV%代表安装目录,vc10是vc的版本,可以查看目录支持什么版本
  • 32位系统 & VC2010,库目录   %OpenCV%\build\x86\vc10\lib
  • 64位系统 & VC2010,库目为:%OpenCV%\build\x64\vc10\lib
因为2.4.11版本的opencv内嵌了TBB的功能,所以取消了TBB直接安装,这样就不需要再配置TBB环境变量了。(假装没看见)
 
我们可以看到安装目录下有vc10 vc11 vc12所以你懂得。

解压:D:\opencv

2、配置

(1).创建一个MFC的对话框程序:

打开  项目---属性

配置属性”->“VC++目录”->“包含目录”,包含

(2).配置include

D:\opencvD:\opencv\build\include

D:\opencv\build\include\opencv

D:\opencv\build\include\opencv

(3).配置lib目录(此处是Debug版本)

//附加包含目录D:\opencv\build\x86\vc10\lib (说明xxxxxd.lib是Debug版本, xxxxx.lib是Release版本)

opencv_calib3d2411d.lib
opencv_contrib2411d.lib
opencv_core2411d.lib
opencv_features2d2411d.lib
opencv_flann2411d.lib
opencv_gpu2411d.lib
opencv_highgui2411d.lib
opencv_imgproc2411d.lib
opencv_legacy2411d.lib
opencv_ml2411d.lib
opencv_nonfree2411d.lib
opencv_objdetect2411d.lib
opencv_ocl2411d.lib
opencv_photo2411d.lib
opencv_stitching2411d.lib
opencv_superres2411d.lib
opencv_ts2411d.lib
opencv_video2411d.lib
opencv_videostab2411d.lib

(4).引入lib对应的dll

3、显示第一个图片

 void CCOpenCvDemoDlg::OnBnClickedButton3()
{
//显示图像文件
const char *pstrImageName = "F:\\VSProject\\COpenCvDemo\\image\\second.jpg";
const char *pstrWindowsTitle = "OpenCV第一个程序";
//从文件中读取图像
IplImage *pImage = cvLoadImage(pstrImageName, CV_LOAD_IMAGE_UNCHANGED); //创建窗口
cvNamedWindow(pstrWindowsTitle, CV_WINDOW_AUTOSIZE); //在指定窗口中显示图像
cvShowImage(pstrWindowsTitle, pImage); //等待按键事件
cvWaitKey(); cvDestroyWindow(pstrWindowsTitle);
cvReleaseImage(&pImage);
}

对代码中的主要函数进行下讲解:

1.创建窗口 cvNamedWindow

函数名称:cvNamedWindow
函数功能:创建窗口
函数原型:
int cvNamedWindow( const char* name, int
flags=CV_WINDOW_AUTOSIZE );

参数说明:
第一个参数表示窗口的名字,它被用来区分不同的窗口,并被显示为窗口标题。被创建的窗口可以通过它们的名字被引用。

第二个参数表示窗口属性标志。目前唯一支持的标志是CV_WINDOW_AUTOSIZE。当这个标志被设置后,用户不能手动改变窗口大小,窗口大小会自动调整以适合被显示图像。

函数cvNamedWindow创建一个可以放置图像和trackbar的窗口。

注意:
如果已经存在这个名字的窗口,这个函数将不做任何事情。

2.在指定窗口中显示图像 cvShowImage

函数名称:cvShowImage

函数功能:在指定窗口中显示图像
函数原型:
void cvShowImage( const char*
name, const CvArr* image );
参数说明:

第一个参数:窗口的名字。
第二个参数:被显示的图像。

3.等待按键事件 cvWaitKey

函数名称:cvWaitKey

函数功能:等待按键事件

函数原型:
int cvWaitKey( int delay=0
);
参数说明:

第一个参数:延迟的毫秒数,当delay<=0时表示无限等待。

函数返回值:

如果超过指定时间则返回-1,否则返回被按键的值。

最新文章

  1. java-Filter过滤器
  2. iOS - Swift 面向对象语法
  3. VMware系统运维(十四)部署虚拟化桌面 Horzion View Manager 5.2 配置许可
  4. My_Plan
  5. Web APP 随笔
  6. 【Deep Learning学习笔记】Efficient Estimation of Word Representations in Vector Space_google2013
  7. 基于FFmpeg和Qt的播放器 QtAV库
  8. Codeforces Round #316 (Div. 2)
  9. mysql 数据库连接(远程和本地原理同样)
  10. CSS技巧!像table一样布局div
  11. LeetCode204:Count Primes
  12. SAX,DOM,JAXP,JDOM,DOM4J比较
  13. Angular--ui-router的使用
  14. XSD详解三 - 复合元素+总结篇
  15. VisualStudio移动开发(C#、VB.NET)Smobiler开发平台——VoiceRecorder控件的使用方式.Net移动开发
  16. 一些常用的meta标签
  17. (PMP)第2章-----项目运行环境
  18. SQL server 2012 数据库日志缓存过大
  19. VS2017使用文档
  20. Alpha冲刺(5/10)——2019.4.28

热门文章

  1. 为什么在 Java 中用 (low+high)&gt;&gt;&gt;1 代替 (low+high)/2 或 (low+high)&gt;&gt;1 来计算平均值呢?好在哪里?
  2. IOS8 UIAlertController 弹框
  3. RTSP/RTMP/HLS/HTTP流媒体播放器EasyPlayer
  4. requests 中文乱码
  5. Golang RPC 性能测试
  6. java之异常的捕获及处理
  7. 配置tomcat,访问端口改为80
  8. FFMPEG more samples than frame size (avcodec_encode_audio2) 的解决方案
  9. the art of seo(chapter one)
  10. Linux 修改所属组与所属人