c++ cli && mfc ---opencv 读取图片并显示

 1 const char* imagename = "c:\\cctv.jpg"; 
 2 cv::Mat img = cv::imread(imagename); // Matlab风格的 cvLoadImage 函数的另一种调用
 3 //cv::namedWindow("image", CV_WINDOW_AUTOSIZE); //创建窗口
 4 //cv::imshow("image", img); //显示图像
 5 //IplImage* img = cvLoadImage(imagename, -1);//读入图片
 6 IplImage img2 = IplImage(img);
 7 CvvImage cvvImg;
 8 cvvImg.CopyOf(&img2, 3);
 9 
10 //Control ^ ct = Control::FromHandle(pic_show->Handle);
11 //IntPtr dc = GetDC()
12 
13 RECT rect;
14 BOOL flag = GetClientRect((HWND)pic_show->Handle.ToPointer(), &rect);
15         cvvImg.DrawToHDC(GetDC((HWND)pic_show->Handle.ToPointer()), &rect);
16 
17 
18 
19 ReleaseDC((HWND)pic_show->Handle.ToPointer(), GetDC((HWND)pic_show->Handle.ToPointer()));    

 mfc:

	// TODO:  在此添加额外的初始化代码
	IplImage* pImg; //声明IplImage指针

	//载入图像

	pImg = cvLoadImage("C:\\Users\\Administrator\\Pictures\\Lena.jpg", 0);
	CvvImage image;
	image.CopyOf(pImg, 3);

	HDC hdc = m_image.GetDC()->GetSafeHdc();
	RECT rec;
	m_image.GetClientRect(&rec);
	image.DrawToHDC(hdc, &rec);


	//cvNamedWindow("Image", 1);//创建窗口
	//cvShowImage("Image", pImg);//显示图像

	//cvWaitKey(0); //等待按键

	//cvDestroyWindow("Image");//销毁窗口
	cvReleaseImage(&pImg); //释放图像

 

posted @ 2017-11-08 15:07  微笑的''80  阅读(936)  评论(0)    收藏  举报