首页 > 代码库 > OpenCV在MFC图像控件内显示图像

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

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

2.创建对应的图像控件,button控件。

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.csdn.net/superdont/article/details/24851727

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