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();


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM