打开视频的思路跟打开图片的思路是一样的,只不过视频是由一帧帧图片组成,因此,打开视频的处理程序有一个连续的获取图片并逐帧显示的处理过程。GUI同《浅入浅出EmguCv(二)EmguCv打开指定图片》一样,只不过处理程序编程如下所示:

 /// <summary>
/// 点击按钮打开指定图片
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void OpenImage_Click(object sender, EventArgs e)
{
OpenFileDialog openFileDialog = new OpenFileDialog();
if (openFileDialog.ShowDialog() == DialogResult.OK)
{
try
{
capture = new Capture(openFileDialog.FileName);
fps = (int)capture.GetCaptureProperty(CapProp.Fps);
Application.Idle += new EventHandler(ProcessFrame);
}
catch (Exception exp)
{
MessageBox.Show(exp.Message);
} }
}
private void ProcessFrame(object sender, EventArgs e)
{ Mat frame = capture.QueryFrame();
if (frame != null)
{
//为使播放顺畅,添加以下延时
System.Threading.Thread.Sleep((int)(1000.0 /fps-));
picWindow.Image = frame; }
GC.Collect();
}

编译运行,打开视频如图所示:

最新文章

  1. 控制 Android 程序使用的内存
  2. YARN中自己总结的几个关键点
  3. Salesforce select字段的多少对性能影响巨大
  4. ruby -- 基础学习(六)时间计算
  5. [moka同学摘录]iptables防火墙规则的添加、删除、修改、保存
  6. 开启nginx缓存
  7. php练习5——简单的学生管理系统(隐藏控件的使用)
  8. python 下的数据结构与算法---3:python内建数据结构的方法及其时间复杂度
  9. int 价值型追记-time
  10. 一张图告诉你移动Web前端所有技术(工程化、预编译、自动化)
  11. hdu3507 Print Article(斜率DP优化)
  12. 同步IO和异步IO
  13. mvc/mvvm小小的总结
  14. java1环境与简介
  15. SpringMVC(六):@RequestMapping下使用@RequestHeader绑定请求报头的属性值、@CookieValue绑定请求中的Cookie值
  16. 完美解决distinct中使用多个字段的方法
  17. java多线程快速入门(二十一)
  18. spring security入门demo
  19. Http请求中 content-type 和 dataType 区别
  20. J-Link GDB Server Command

热门文章

  1. Qt5.5中,使MainWindow初始为全屏
  2. 黑马程序员——【Java高新技术】——类加载器
  3. 将DataTable导出到Excel
  4. angular 指令作用域 scope
  5. BZOJ 1597 土地购买
  6. RABBITMQ(小总结 持续更新...
  7. [Java Basics3] XML, Unit testing
  8. html 涂改图片功能实现
  9. 使用Gitolite搭建轻量级的Git服务器
  10. BFC?来自CSS中的BFC