zoukankan      html  css  js  c++  java
  • WPF摄像头使用(AForge)

    AForge引用

    1.创建WPF项目, 在NuGet安装AForge相关SDK包:

    2.项目引用
    2.1.由于在WPF当中使用AForge,需要通过WindowsFormsHost嵌入在WPF当中使用, 所以需要给项目添加相关引用:

    2.2.页面添加命名空间
    .xaml文件中,添加以下命名空间:

            xmlns:wfi ="clr-namespace:System.Windows.Forms.Integration;assembly=WindowsFormsIntegration"
            xmlns:aforge="clr-namespace:AForge.Controls;assembly=AForge.Controls
    

    3.创建控件
    为XAML中添加一个WindowsFormsHost 嵌入一个VideoSourcePlayer

     <wfi:WindowsFormsHost >
       <aforge:VideoSourcePlayer x:Name="player" Dock="Fill" />
     </wfi:WindowsFormsHost>
    

    初始化

    在后台代码中, 添加初始化代码, 以下代码模拟设置的第一个摄像头, FilterInfoCollection实际为一个集合。

                FilterInfoCollection videoDevices = new FilterInfoCollection(FilterCategory.VideoInputDevice);
                if (videoDevices.Count > 0)
                {
                    var videoDevice = new VideoCaptureDevice(videoDevices[0].MonikerString);
                    videoDevice.VideoResolution = videoDevice.VideoCapabilities[0];  //设置分辨率
                    player.VideoSource = videoDevice; //设置源
                    player.Start(); //启动
                }
    

    实际效果(演示):

    拍照

    player.GetCurrentVideoFrame();
    
  • 相关阅读:
    数字黑洞
    剪刀石头布
    A除以B
    【Java3】打印三角形
    Servlet 之 javax.servlet 包
    关键字之Super
    设计模式之单例模式
    Servlet 之 读取读取 HTTP 头
    static之类方法和实例方法的区别
    Lambda之通过“方法引用”让你的Lambda表达式更加简洁
  • 原文地址:https://www.cnblogs.com/zh7791/p/12971242.html
Copyright © 2011-2022 走看看