论坛上看到非常经典的VS2008 + OpenCV 2.0下的配置过程:

(这里用的是opencv2.0)

1. 文件 | 项目 | MFC | MFC应用程序 |(新名称如MFCtest)|next
2. 单文档,取消使用Unicode库选项,选中在静态库中使用MFC | next
3. 取消ActiveX控件选项 | next | 完成
4. 项目 | 属性 | 链接器 | 
输入(活动Debug) | 附加依赖项 | cxcore200d.lib cv200d.lib highgui200d.lib

输入(Release) | 附加依赖项 | cxcore200.lib cv200.lib highgui200.lib

《opencv1.0的话是cxcore.lib cv.lib ml.lib cvaux.lib highgui.lib》

5.
解决方案中 | MFCtestDoc.h 中增加 | include “highgui.h” | 
public 中增加 CImage m_image
6. 类视图 | 右击 CMFCtestDoc | 增加 | 增加函数 | 增加函数名OnOpenDocument | 参数类型 LPCTSTR,参数lpszPathName | 添加 | 选中虚函数。|
(注意:这里我直接用下来菜单中的bool(小写),编译会出错的,改为BOOL(大写)后编译通过,看了下自带的OnNewDocument的返回值也是BOOL(大写))
7. 在OnOpenDocument中增加代码:

  1. if(!CDocument::OnOpenDocument(lpszPathName))  return false;
  2. m_image.Load(lpszPathName);
  3. return true;

8. 同6,7步增加OnSaveDocument代码:

  1. m_image.Save(lpszPathName);
  2. return true;

9. 在CMFCtestView中的OnDraw中在原有代码基础上修改为:
(注意首先把OnDraw的参数改为CDC* pDC)

  1. CMFC_testDoc* pDoc = GetDocument();
  2. ASSERT_VALID(pDoc);
  3. if (!pDoc)
  4. return;
  5. CImage & img = pDoc ->m_image;
  6. CRect r;
  7. GetClientRect (&r);
  8. img.DrawToHDC(pDC->GetSafeHdc() ,r);

10.运行正常

from: http://blog.csdn.net/abcjennifer/article/details/7215765

MFC中快速应用OpenCV教程的更多相关文章

  1. MFC中快速应用OpenCV(转)

    转载链接:http://wiki.opencv.org.cn/index.php/MFC%E4%B8%AD%E5%BF%AB%E9%80%9F%E5%BA%94%E7%94%A8OpenCV 简介和缘 ...

  2. MFC中的CDC详细教程

    参考:  MFC中的CDC详细教程1,2,3 StretchDIBits用法

  3. MWeb for Mac使用教程-如何在文档库中快速搜索

    使用MWeb for Mac专业的 Markdown 编辑写作软件,可以让你随时记录自己的想法,灵感,创意,为您的工作节省宝贵的时间.本篇文章带来的是MWeb for Mac如何在文档库中快速搜索使用 ...

  4. duilib进阶教程 -- 在MFC中使用duilib (1)

    由于入门教程的反响还不错,因此Alberl就以直播的形式来写<进阶教程>啦,本教程的前提: 1.请先阅读<仿迅雷播放器教程> 2.要有一定的duilib基础,如果还没,请先阅读 ...

  5. CRL快速开发框架系列教程七(使用事务)

    本系列目录 CRL快速开发框架系列教程一(Code First数据表不需再关心) CRL快速开发框架系列教程二(基于Lambda表达式查询) CRL快速开发框架系列教程三(更新数据) CRL快速开发框 ...

  6. CRL快速开发框架系列教程五(使用缓存)

    本系列目录 CRL快速开发框架系列教程一(Code First数据表不需再关心) CRL快速开发框架系列教程二(基于Lambda表达式查询) CRL快速开发框架系列教程三(更新数据) CRL快速开发框 ...

  7. CRL快速开发框架系列教程二(基于Lambda表达式查询)

    本系列目录 CRL快速开发框架系列教程一(Code First数据表不需再关心) CRL快速开发框架系列教程二(基于Lambda表达式查询) CRL快速开发框架系列教程三(更新数据) CRL快速开发框 ...

  8. VC++ MFC中如何将应用程序的配置信息保存到注册表中(二)

    在上一篇中介绍了几个写入注册表数据和读取注册表数据的接口,并介绍了使用方法. 这一片教你如何使得你的应用程序在下次打开时保持上一次关闭前的状态. 在上一篇添加的代码的基础上,要添加WM_CLOSE消息 ...

  9. MFC中使用Duilib--1

    网上找到Duilib入门教程中,第一个给的时基于SDK的例子,在这里,自己写了个MFC的,与入门教程中的例子一样. 新建一个窗口类(CTestDlg) TestDlg.h内容如下: [cpp] vie ...

随机推荐

  1. Java 8 VM GC Tuning Guide Charter2

    第二章 Ergonomics Ergonomics is the process by which the Java Virtual Machine (JVM) and garbage collect ...

  2. CentOS-6.5安装配置JDK-7和JDK-8

    安装说明 系统环境:centos-6.5 软件:jdk-7-linux-x64.rpm , jdk-8u5-linux-i586.tar.gz  下载地址:http://www.oracle.com/ ...

  3. 玩转SmartQQ之登录

    SmartQQ是腾讯新出的一个WebQQ,登录地址是:http://w.qq.com/,目前之前的WebQQ可以继续使用,登录地址:http://web2.qq.com/webqq.html,Smar ...

  4. Careercup - Google面试题 - 4857362737266688

    2014-05-04 00:10 题目链接 原题: Write a function return an integer that satisfies the following conditions ...

  5. Java 集合类(一)

    今天我们先讲一下Collection: Collection和Collections的区别: java.util.Collection是一种java集合接口,它提供了对集合对象的基本操作通用接口方法, ...

  6. Ext学习-基础组件介绍

    1.目标    学习对象获取,组件基础,事件模型以及学习ExtJS中的基础组件的应用. 2.内容   1.对象获取   2.组件原理以及基础   3.事件模型   4.常用组件的介绍 3.学习步骤 1 ...

  7. STS中取消show in Breadcrumb方法

    前言:STS是Spring产品下的一个开发工具,它和eclipse很像,只不过对Spring有更好的兼容.Show in Breadcrumb是快速导航条,可以清晰的看到我们当前的类,属性或方法的导航 ...

  8. js获取时间

    var myDate = new Date(); console.log(myDate.toLocaleString()); function getNowFormatDate() { var dat ...

  9. oracle Execute Immediate 用法

      包含using into用法. Declare        v_sid Integer:=20020101;        v_sql Varchar2(100);        v_resul ...

  10. 使用JAVA反射初始化数组(转)

    在做JSON解析时,遇到了在不知道数组类型的前期下,需要转化为具体类型数组的问题.可以使用JAVA的反射来做. JSONArray jsonArray = (JSONArray) entry.getV ...