Emgu CV(OpenCV for C#)学习笔记(3)
2013-11-14 18:30
393 查看
第三个例子:捕获摄像头
利用Emgu.CV.Capture可以捕获摄像头,得到的的画面既可以在ImageViewer中以新窗口的方式显示,也可以在imageBox中来显示。示例很简单,我按照自己的理解做了注释。直接贴代码如下:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using Emgu.CV;
using Emgu.CV.UI;
using Emgu.CV.Structure;
namespace CameraCapture
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
//viewer显示
ImageViewer viewer = new ImageViewer(); //定义用于显示图像的imageviewer
viewer.Text = "摄像头窗口";
Capture capture = new Capture(); //创建获得图像的captue
Application.Idle += new EventHandler(delegate(object sender1, EventArgs e1)
{
viewer.Image = capture.QueryFrame(); //画面帧赋于ImageViewer
});
viewer.Show(); //显示
}
private void button2_Click(object sender, EventArgs e)
{
//显示在控件上
Capture capture = new Capture();
Application.Idle += new EventHandler(delegate(object sender1, EventArgs e1)
{
imageBox1.Image = capture.QueryFrame();
});
}
}
}
运行结果如下图所示:
利用Emgu.CV.Capture可以捕获摄像头,得到的的画面既可以在ImageViewer中以新窗口的方式显示,也可以在imageBox中来显示。示例很简单,我按照自己的理解做了注释。直接贴代码如下:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using Emgu.CV;
using Emgu.CV.UI;
using Emgu.CV.Structure;
namespace CameraCapture
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
//viewer显示
ImageViewer viewer = new ImageViewer(); //定义用于显示图像的imageviewer
viewer.Text = "摄像头窗口";
Capture capture = new Capture(); //创建获得图像的captue
Application.Idle += new EventHandler(delegate(object sender1, EventArgs e1)
{
viewer.Image = capture.QueryFrame(); //画面帧赋于ImageViewer
});
viewer.Show(); //显示
}
private void button2_Click(object sender, EventArgs e)
{
//显示在控件上
Capture capture = new Capture();
Application.Idle += new EventHandler(delegate(object sender1, EventArgs e1)
{
imageBox1.Image = capture.QueryFrame();
});
}
}
}
运行结果如下图所示:
相关文章推荐
- Emgu CV(OpenCV for C#)学习笔记(1)
- OpenCV for Ios 学习笔记(9)-用OPENGL渲染AR场景2
- OpenCV for Ios 学习笔记(2)-AR
- OpenCV学习笔记(六)—— OpenCV for Android打开相机
- OpenCV学习笔记(七)—— OpenCV for Android实时图像处理
- Opencv for Python 学习笔记 2.1 摄像头
- OpenCV for Ios 学习笔记(1)-配置
- C# OpenCV学习笔记二之图像读写的两种方法
- Opencv for Python 学习笔记 2.1 摄像头
- c# opencvsharp学习笔记(5)CvTrackbar,HSV,通道分割合并
- Mechine learning for OpenCV 学习笔记 day3
- OpenCV中parallel_for 和 parallel_for_学习笔记
- C# OpenCV学习笔记五之图像轮廓
- Machine learning for OpenCV 学习笔记 day5
- C# OpenCV学习笔记三之图像捕捉及其灰度转换方法
- OpenCV中parallel_for 和 parallel_for_学习笔记
- Machine learning for OpenCV 学习笔记 day4
- OpenCV for Ios 学习笔记(9)-用OPENGL渲染AR场景2
- OpenCV for Android Studio 学习笔记(一):NDK及OpenCV的安装配置
- OpenCV中parallel_for 和 parallel_for_学习笔记