OpenCV在MFC图像控件内显示图像

本文介绍如何在MFC应用程序中使用OpenCV显示图像。主要内容包括:完成环境配置;创建图像与按钮控件;进行图像格式转换,解决OpenCV2版本下CvvImage不被支持的问题;并提供完整代码及运行结果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.按照文章《OpenCV+MFC显示图像》,完成配置。

2.创建相应的图像控件,按钮控件。

3.进行类型转换。

在当前OpenCV2版本内,图像格式为cv::Mat ,而该格式无法直接在MFC内显示。因此,需要将其转换为可以在MFC内显示的CvvImage类格式,该类内有函数 DrawToHDC()支持MFC。试了一下无法直接实现,需要曲线救国。首先,将 格式cv::Mat变换为格式IplImage,再转换格式为 CvvImage。

还有问题,目前openCV2版本不再支持CvvImage,故需要导入该类的CvvImage.h和CvvImage.cpp。具体方法可以百度。

4.代码:

Mat mat=imread("llz.jpg");  
CDC* pDC = GetDlgItem(IDC_STATIC)->GetDC();
HDC hDC = pDC->GetSafeHdc();
IplImage img = mat;
CvvImage cimg;
cimg.CopyOf( &img );
CRect rect;
GetDlgItem(IDC_STATIC)->GetClientRect(&rect);
cimg.DrawToHDC(hDC, &rect);
ReleaseDC( pDC );

5.运行结果。


参考文献:

1.MFC中使用openCV显示、处理图像,http://licong1018.blog.163.com/blog/static/9026978420129239178934/

PS,需要加上namespace....http://blog.youkuaiyun.com/superdont/article/details/24851727

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

superdont

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值