一、新建TEST7项目
二、配置OpenCV链接库,下载并添加CvvImage.h和CvvImage.cpp文件
原因:opencv2.x以上版本已经不支持CvvImage类,而MFC picture控件使用的是Image*类,不支持Mat;

三、插入控件:button、picture


type属性:

  • Frame:显示一个无填充的矩形框
  • Rectangle:显示一个填充的矩形框,矩形颜色可通过Color 属性的下拉列表设定
  • Icon:显示一个图标(Icon)
  • Bitmap:显示一个位图(Bitmap)
  • Owner Draw:自绘
  • Enhanced Metafile:显示一个加强的元数据文件(Metafile)
  • Etched Horz:显示一条横分割线
  • Etched Vert:显示一条竖分割线

四、为控件添加消息处理函数


五、添加代码
在主框架头文件“TEST7Dlg.h”中添加头文件:

 #pragma once#include "cv.h"#include "highgui.h"#include "CvvImage.h"

在主框架头文件“TEST7Dlg.h”中添加成员定义、成员函数声明DrawPicToHDC:

    CRect rect;     //位置矩形CStatic* pStc; //标识图像显示的Picture控件CDC* pDC;      //视频显示控件设备上下文HDC hDC;       //视频显示控件设备句柄CvCapture* capture; //视频获取结构CvvImage cimg;//添加成员函数声明DrawPicToHDCvoid DrawPicToHDC(IplImage *img, UINT ID);

在主框架实现文件“TEST7Dlg.cpp”中添加函数实现代码:

  • 构造函数中初始化:
CTEST7Dlg::CTEST7Dlg(CWnd* pParent /*=NULL*/): CDialogEx(CTEST7Dlg::IDD, pParent)
{m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);pStc=NULL;pDC=NULL;capture=NULL;
}
  • 成员函数DrawPicToHDC的实现:
void CTEST7Dlg::DrawPicToHDC(IplImage *img, UINT ID)
{pStc=(CStatic *)GetDlgItem(ID);//IDC_VIEW为Picture控件IDpDC = pStc->GetDC(); hDC= pDC->GetSafeHdc(); pStc->GetClientRect(&rect);cimg.CopyOf(img);cimg.DrawToHDC( hDC, &rect ); // 将图片绘制到显示控件的指定区域内 ReleaseDC( pDC );
}
  • 在新增按钮的响应函数中添加代码:
void CTEST7Dlg::OnBnClickedOnOpenButton()
{// TODO: 在此添加控件通知处理程序代码IplImage *image=NULL; //原始图像 if(image) cvReleaseImage(&image); image = cvLoadImage("test.bmp"); //显示图片 DrawPicToHDC(image, IDC_PIC_STATIC);
}

六、编译运行,结果如下:

OpenCV+MFC 显示图像相关推荐

  1. OpenCV+MFC显示图像

    OpenCV+MFC显示图像 .h中代码 /****************************************************************************** ...

  2. vs中c语言图形显示出来,VS2010+Opencv+MFC读取图像和视频显示在Picture控件

    VS2010+Opencv+MFC读取图像和视频显示在Picture控件,供大家参考,具体内容如下 1.新建MFC对话框应用程序. 其余选项默认,单击完成,创建出对话框应用程序.删掉原来自带的一些控件 ...

  3. opencv入门 - 显示图像学习总结

    OpenCV的第一个小程序-读取图像并显示 首先新建一个VC++控制台项目如下图所示.本文项目名称helloOpenCV. 在主文件中添加如下代码: #include "stdafx.h&q ...

  4. opencv + MFC 视频图像显示

    1.读取并显示图像 显示图像或视频使用VC中的Picture控件,用到VC图形设备接口的设备上下文(CDC类).比如打开显示这样一个图片lean.jpg 先进行一些初始化工作,代码如下: 1 // D ...

  5. OpenCV+MFC学习笔记(二):OpenCV二值化处理图像并在Picture Control中并自适应显示

    在前面我们已经完成通过OpenCV读取图片在Picture Control中并自适应显示.下面我们很自然的需要对读取的图片进行处理,处理完之后很自然的想到要看看效果.所以今天的笔记是通过OpenCV灰 ...

  6. OpenCV+MFC文档视图结构 构建简易PS图像处理软件

    简介 本文介绍了基于OpenCV图像处理库的MFC框架下的图像处理程序构建方法. 本项目依赖OpenCV库4.1.0版本,构建和编译由VS2017完成. 程序目录 simPS2.h/simPS2.cp ...

  7. VS2015+opencv+MFC+显示图片

    网上有很多关于在MFC显示图片的教程,但是看下来感觉对一个小白来说太过于麻烦,总有些东西没有写完成,操作下来总有些错误,实在没有办法我只好下了一个可以运行的例子,比较之后自己按照下载的例子模仿操作总算 ...

  8. OPENCV MFC 程序出错修改

    error C2146: 语法错误 : 缺少";"(在标识符"PVOID64"的前面) 来源:http://houjixin.blog.163.com/blog ...

  9. 如何在cv2窗口图像上写字_Python for opencv 之 显示图像及在图像上书写文字

    #从Opencv中导入函数 import cv2.cv as cv #创建一个窗口,命名为you need tostruggle, #cv.CV_WINDOW_AUTOSIZE这个参数设定显示窗口虽图 ...

最新文章

  1. js函数语法:ASCII 码的相互转换,字符串操作,数学计算
  2. 华为oj平台的新网址
  3. C++模板:模板简述,函数模板详细说明【C++模板】(56)
  4. BigDecimal的使用说明
  5. 基于FPGA的UART接口协议设计
  6. 电商网站全链路压测实战
  7. 常看网页表单数据_数据收集、整理低效繁琐?WPS表单帮你轻松解决
  8. 机器学习基础(二十八) —— 数据规格化
  9. SDL_BlitSurface的参数是两个PNG时,如何保护其透明度
  10. stm32例程_如何系统地入门学习stm32?
  11. WIN7 SP1系统浏览器怎么离线升级到IE11,怎么解决?
  12. 数电第四章:组合逻辑电路
  13. 掉队于云计算市场是甲骨文裁员的最大原因
  14. 约翰霍普金斯大学计算机专业,约翰霍普金斯大学计算机专业排名第几?
  15. 使用Python进行OpenCV颜色检测和过滤
  16. Java架构师大型互联网高级技术视频教程
  17. 大数据正当时,理解这几个术语很重要
  18. 苹果iOS开发者账号从零开始申请
  19. 数据处理——拉伊达法则去除异常值(Python实现)
  20. CNI-Terway讲解

热门文章

  1. Machine Learning in Action 读书笔记---第3章 决策树
  2. 问君硅谷几多渣?先把Snapchat总裁扒一扒
  3. 2021 新款手机,免费送!
  4. 让 git输出颜色变成彩色的方法
  5. 油烟机烟雾报警_基于STC89C51单片机
  6. concatenation 和 element-wise summation 该选哪个?
  7. 电脑总是区域性白屏,求助各位大佬。
  8. 乙炔黑-离子液体复合修饰玻碳电极(AB-ILs/GCE)|离子液体修饰改性的多壁碳纳米管(MWNTs)
  9. {ResponseInfo:com.qiniu.http.Response@62bd765,status:400, reqId:d4kAAACMt2hWMSEW, xlog:X-Log, xvia:,
  10. 华为又走在美国芯片企业前面,将率先发布5nm工艺芯片