码迷,mamicode.com
首页 > 其他好文 > 详细

(ZT) OpenCV下MFC单文档显示图像

时间:2014-05-09 10:31:50      阅读:337      评论:0      收藏:0      [点我收藏+]

标签:style   ext   color   c   width   get   

1、vs2010中新建SDI,最后view类选择ScorllView以形成带滚动条的视图窗口

2、添加OpenCV的链接库

3、添加相应头文件"cv.h" "highgui.h"到doc.h和view.h(要添加在.h文件中,不要添加在.cpp中,否则容易出错

4、doc类中添加变量cv::CImage m_image;如果用IplImage读取文件的话,要想定义IplImage* pimg;图像读入pimg后转存入m_img;

5、doc中重写函数OnOpenDocument();并在//TODO后添加

      m_img.Load(lpszPathName,1);//CImage类直接读取图像

   或pimg=cvLoadImage(lpszPathName,1);

     m_img.CopyOf(pimg,IMAGE_CHANNELS);//用IplImage读取图像转存入CImage类,便于显示

之所以不在view类中直接将IplImage类转存成CImage类,是因为在vs2008下这样操作总是出现错误,此处有待改进

6、在view类中改写OnDraw(CDC* pDC)函数,在//TODO后添加以下代码

    cv::CImage &img=pDoc->m_img;
    HDC hDC=pDC->GetSafeHdc();
    CRect rect(0,0,img.Width(),img.Height());
    img.DrawToHDC(hDC,&rect);    //注意&,否则图像会被拉伸
    CSize sizeTotal;
    sizeTotal.cx=img.Width();
    sizeTotal.cy=img.Height();
    SetScrollSizes(MM_TEXT,sizeTotal);

7、生成调试运行,就可打开OpenCV支持的图像文件

(ZT) OpenCV下MFC单文档显示图像,布布扣,bubuko.com

(ZT) OpenCV下MFC单文档显示图像

标签:style   ext   color   c   width   get   

原文地址:http://www.cnblogs.com/venus024/p/3716798.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!