Opencv+VS+MFC 播放视频(cv 2.3+版本)
来源:互联网 发布:linux使用编辑命令 编辑:程序博客网 时间:2024/05/21 09:19
- 配置环境,可以参考:VS2013配置OpenCv3.0
- 建立MFC对话框,添加按钮(打开视频和关闭视频),添加picture控件(IDC_P)。
- 导入Cvvimage 的头文件和cpp文件。下载地址
- 添加全局变量。
VideoCapture capture;CRect rect;CDC *pDC;HDC hDC;CWnd *pwnd;
- 在OnInitDialog()中添加
pDC = pwnd->GetDC();hDC = pDC->GetSafeHdc();pwnd->GetClientRect(&rect);
- 编辑按钮函数。
void CMFCApplication1Dlg::OnBnClickedOpenvideo(){// TODO: 在此添加控件通知处理程序代码//VideoCapture if (!capture.isOpened()){capture.open("D://1.avi");}SetTimer(1, 25, NULL); //定时器,定时时间和帧率一致//Mat image = imread("0308.jpg", 1); //显示图片//DrawPicToHDC(cvCloneImage(&(IplImage)image), IDC_P);}void CMFCApplication1Dlg::OnBnClickedClosevideo(){// TODO: 在此添加控件通知处理程序代码capture.release();}
- 添加timer:项目->类向导
void CMFCApplication1Dlg::OnTimer(UINT_PTR nIDEvent){// TODO: 在此添加消息处理程序代码和/或调用默认值if (1 == nIDEvent) { Mat img; capture.read(img); //从摄像头或者文件中抓取并返回一帧 CvvImage m_CvvImage;IplImage* img_temp = cvCloneImage(&(IplImage)img);m_CvvImage.CopyOf(img_temp, 1); //复制该帧图像 cvReleaseImage(&img_temp); m_CvvImage.DrawToHDC(hDC, &rect); //显示到设备的矩形框内 }CDialogEx::OnTimer(nIDEvent);}
- 其中使用Mat格式,减少内存问题,经测试几乎没有内存问题,后续会把CvvImage中的Iplimage也换成Mat。
0 0
- Opencv+VS+MFC 播放视频(cv 2.3+版本)
- VS2013 MFC opencv 播放视频
- 基于opencv与MFC的视频播放。
- MFC中利用OpenCV实现视频播放
- 视频播放器制作(OpenCV+MFC)
- MFC视频播放器制作(OpenCV)
- VS+MFC+Opencv显示视频和图像。
- opencv +MFC实现视频播放、暂停、视频标注、跟踪
- OpenCV(五): Opencv视频播放控制
- (转载)MFC中使用OpenCV捕捉摄像头视频并在Image控件中播放
- MFC Timer定时器的使用+opencv播放视频
- OpenCV:基于MFC的视频播放器和图片读取器
- 基于MFC的OpenCV简单视频播放器
- OpenCV系列1-简单高效:MFC显示图片、播放视频
- opencv例2.3实现视频播放(带滚动条)
- OpenCV 播放视频(带滚动条)
- opencv学习笔记(二)播放视频
- OpenCV 播放视频
- CSS float导致父元素无法撑开大小解决办法
- c++ map插入。覆盖
- JavaScript学习笔记四
- C# DateTime和时间戳
- MassTransit 学习记录(二) Request/Response
- Opencv+VS+MFC 播放视频(cv 2.3+版本)
- 使用Cocos2d-x的LuaBridge接入OC代码时需要注意的问题
- cocos2dx 工厂模式
- C# split与正则表达式
- python sqlite操作
- 基于Boa-web服务器的远程机器人控制(网络篇)
- Http的post ,get请求
- UISearchbar的学习
- Android中利用ContentResolver获取本地音乐和相片