• Open Source Computer Vision Library

MFC中快速应用OpenCV

Wikipedia,自由的百科全书

(修订版本间差异)
14:36 2008年12月19日的修订版本
Ollydbg23 (Talk | 贡献)
在Doc类中添加变量
← Previous diff
14:46 2008年12月19日的修订版本
Ollydbg23 (Talk | 贡献)
添加虚函数
Next diff →
第 17行: 第 17行:
==添加虚函数== ==添加虚函数==
 +添加两个函数,分别用来打开图片文件和保存图片文件,添加过程见下图的右键菜单。
 +
 +[[Image:Mfc opencv 04.jpg]]
 +
 +[[Image:Mfc opencv 05.jpg]]
 +
 +分别添加函数OnOpenDocument 和 OnSaveDocument 如下面的代码
 +
 +<c>BOOL CSDI OpenCVDoc::OnOpenDocument(LPCTSTR lpszPathName){
 + if (!CDocument::OnOpenDocument(lpszPathName)) return FALSE;
 + // TODO: Add your specialized creation code here
 + m_image.Load(lpszPathName);
 + return TRUE;
 +}
 +</c>
 +
 +<c>BOOL CSDI OpenCVDoc::OnSaveDocument(LPCTSTR lpszPathName){
 + // TODO: Add your specialized code here and/or call the base class
 + m_image.Save(lpszPathName);
 + return CDocument::OnSaveDocument(lpszPathName);
 +}
 +</c>
==在View类中添加显示图像代码== ==在View类中添加显示图像代码==

14:46 2008年12月19日的修订版本

目录

创建SDI工程

我使用的是Visual C++ 6.0,因此,本教程描述的是在VC6上面演示操作,如果您使用别的版本的VC,我想应该也差不多。 首先,按照VC的向导,产生一个默认的MFC的工程,注意,选择SDI单文档支持的,同时最好选择“use MFC As a static library”(防止MFC中使用OpenCV的内存泄露问题) 具体请参看下面两幅图所示
Image:Mfc_opencv_01.JPG
Image:Mfc_opencv_02.JPG
就这样子一路下去之后,基本的MFC框架就创建完成了。

加入OpenCV库支持

现在加入openCV必须的头文件和库文件。如下图所示,我们添加库文件: cxcore.lib cv.lib highgui.lib
Image:Mfc_opencv_06.JPG

在Doc类中添加变量

Image:Mfc_opencv_07.jpg
找到 ***Doc 也就是文档类的定义,在开头加上 HighGui.h 的头文件包含, 同时添加一个变量CImage m_image;

添加虚函数

添加两个函数,分别用来打开图片文件和保存图片文件,添加过程见下图的右键菜单。

Image:Mfc opencv 04.jpg

Image:Mfc opencv 05.jpg

分别添加函数OnOpenDocument 和 OnSaveDocument 如下面的代码

<c>BOOL CSDI OpenCVDoc::OnOpenDocument(LPCTSTR lpszPathName){

   if (!CDocument::OnOpenDocument(lpszPathName)) return FALSE;
   // TODO: Add your specialized creation code here
   m_image.Load(lpszPathName);
   return TRUE;

} </c>

<c>BOOL CSDI OpenCVDoc::OnSaveDocument(LPCTSTR lpszPathName){

   // TODO: Add your specialized code here and/or call the base class
   m_image.Save(lpszPathName);
   return CDocument::OnSaveDocument(lpszPathName);

} </c>

在View类中添加显示图像代码

代码下载

感谢和后记

Views
Personal tools