C# 使用AForge调用笔记本摄像头拍照
Posted 来陪朕侍寝
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C# 使用AForge调用笔记本摄像头拍照相关的知识,希望对你有一定的参考价值。
vs2012 winform
连接摄像头设备,这里需要引入
代码:
using AForge; using AForge.Controls; using AForge.Imaging; using AForge.Video; using AForge.Video.DirectShow;
在工具箱中还需要添加AForge.Control,然后找到VideoSourcePlayer这个控件添加到界面上
直接找到dll拖拽到工具箱就可以了(工具箱先建一个选项)
将在camera里面出现很多控件,找到videoSourcePlayer,拖拽至form窗体
然后完成了基本设置
定义全局变量
FilterInfoCollection videoDevices;
VideoCaptureDevice videoSource;
public int selectedDeviceIndex = 0;
然后连接摄像头
1 private void btn_getdevice_Click(object sender, EventArgs e) 2 { 3 videoDevices = new FilterInfoCollection(FilterCategory.VideoInputDevice); 4 selectedDeviceIndex = 0; 5 videoSource = new VideoCaptureDevice(videoDevices[selectedDeviceIndex].MonikerString);//连接摄像头。 6 videoSource.VideoResolution = videoSource.VideoCapabilities[selectedDeviceIndex]; 7 videoSourcePlayer1.VideoSource = videoSource; 8 // set NewFrame event handler 9 videoSourcePlayer1.Start(); 10 }
拍照:
1 private void button1_Click(object sender, EventArgs e) 2 { 3 if (videoSource == null) 4 return; 5 Bitmap bitmap = videoSourcePlayer1.GetCurrentVideoFrame(); 6 string fileName = "54250.jpg";//DateTime.Now.ToString("yyyy-MM-dd-HH-mm-ss-ff") + ".jpg"; 7 bitmap.Save(@"E:\\temp\\" + fileName, ImageFormat.Jpeg); 8 bitmap.Dispose(); 9 }
这样就完成了拍照功能
效果图
以上是关于C# 使用AForge调用笔记本摄像头拍照的主要内容,如果未能解决你的问题,请参考以下文章
C#调用摄像头(AForge)实现扫描条码解析(Zxing)功能