C#调用usb摄像头的实现方法

2021/11/12 17:12:23

本文主要是介绍C#调用usb摄像头的实现方法,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

1、下载aforge类库,下载地址:,我下载的版本是:aforge.net framework-2.2.5.exe;
2、下载安装好后,将下载类库中的release文件夹复制到c#项目的可执行文件文件夹,即debug文件夹下;
3、在c#项目中添加引用,右击解决方案资源管理器下的引用上,点击添加引用,通过浏览找到debug文件夹下的release文件夹选择要添加的引用文件:aforge、aforge.controls、aforge.imaging、aforge.video、aforge.video.directshow;
在这里插入图片描述
在这里插入图片描述

4、在工具箱中添加aforge.controls控件:先在工具箱中(单击右键)添加新的选项卡,命名为aforge;然后把release文件夹下的aforge.controls.dll文件拖到aforge中,aforge将添加新的控件,效果如下图:
在这里插入图片描述
在这里插入图片描述

5、在窗体中放置一个videosourceplayer控件,用于显示摄像头的数据;并放置一个combobox来进行不同摄像头选择;并放置一个button用来停止显示,便于切换不同摄像头画面;
在这里插入图片描述
在这里插入图片描述

6、代码:

using system;
using system.windows.forms;
using aforge.video.directshow;
namespace usbcamera
{
  public partial class form1 : form
  {
    private filterinfocollection videodevices;//所有摄像设备
    private videocapturedevice videodevice;//摄像设备
    public form1()
    {
      initializecomponent();
    }
    private void form1_load(object sender, eventargs e)
    {
      videodevices = new filterinfocollection(filtercategory.videoinputdevice);//得到所有接入的摄像设备
      if (videodevices.count != 0)
      {
        foreach (filterinfo device in videodevices)
        {
          combobox1.items.add(device.name);//把摄像设备添加到摄像列表中          
        }        
      }
      else
      {
        messagebox.show("没有找到摄像头!");
      }
    }
    private void combobox1_selectedindexchanged(object sender, eventargs e)
    {
      videodevice = new videocapturedevice(videodevices[combobox1.selectedindex].monikerstring);      
      videosourceplayer1.videosource = videodevice;       
      videosourceplayer1.signaltostop();
      videosourceplayer1.waitforstop();
      videosourceplayer1.start();
    }
    private void button1_click(object sender, eventargs e)
    {
      videosourceplayer1.stop();
    }
  }
}

在这里插入图片描述
在这里插入图片描述

我这边是接了两个可用的usb摄像头,可以实现两者之间的选择切换。

到此这篇关于c#调用usb摄像头的实现方法的文章就介绍到这了



这篇关于C#调用usb摄像头的实现方法的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程