OpenCV基础篇——图片显示

继上文,做好opencv的配置以后,很多时候要用的就是显示图片,后面要讲的显示视频和一些测试也是建立在显示图片的基础上的,本次将分享opencv通过win32控制台显示图片和MFC显示图片:


一:OpenCV+win32


建立好win32空文档后,添加新项cpp文件后,直接上代码:


#include "highgui.h" //这个头文件很多时候都会用到,在opencv中
int main()
{
	IplImage* img = cvLoadImage( "E:\\lena.jpg");//加载图片,用iplimage类型的指针指向文件地址
	cvNamedWindow("Example", CV_WINDOW_AUTOSIZE );//命名一个example的窗口,窗口属性为CV_WINDOW_AUTOSIZE,还有其他属性,自己可以了解一下
	cvShowImage("Example", img );//在名字为example的窗口显示img
	cvWaitKey(0);//等待,如果不加这句,基本就是一闪而过
	cvReleaseImage( &img );//释放资源
	cvDestroyWindow("Example");//摧毁窗口
	return 0;


}


二:OpenCV+MFC


新建MFC项目,我选的是对话框,在对话框中拖入picture控件,假设id号为IDC_STATIC2,和一个按键button,假设name为button1


//以下为showimage函数,用来在指定的id控件中显示图片
void CtestDlg::ShowImage(IplImage* img, UINT ID)// ID 是Picture Control控件的ID号
{
         CDC* pDC=GetDlgItem(ID)->GetDC();// 获得显示控件的 DC
         HDC hDC=pDC->GetSafeHdc();// 获取 HDC(设备句柄) 来进行绘图操作

         CRect rect;
         GetDlgItem(ID)->GetClientRect(&rect);

         CvvImage cimg;
         cimg.CopyOf(img);    // 复制图片
         cimg.DrawToHDC(hDC,&rect);

         ReleaseDC(pDC);
}
void CtestDlg::OnBnClickedbutton1()//按键的响应函数
{
	IplImage* img = cvLoadImage( "E:\\lena.jpg");
	ShowImage(img, IDC_STATIC2);//调用showiamge函数在picture控件中显示图片
	cvReleaseImage( &img );//释放

}


注:我建立的名为test的项目,所以类也是test,,mfc新建过后就会出现很多代码,而且直接运行就可以看见界面,我这里主要给出关键的函数和实现,没有在类中的声明。。参考写就一定会成功的。



显示图片就基本结束了,如果有什么不对的,还请大家指出,相互学习




  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值