项目中用到 USB 摄像头,需要根据情况进行图像抓拍,查了半天资料,比较多的是使用 WPFMediaKit 和 AForge 。
但是由于项目要求不显示 USB 摄像头拍摄的画面,最终确定使用 AForge 解决。
下面用一个测试程序记录一下。
一、无预览拍照
首先建立一个 WPF 项目,我的就叫 AForgeTest,你们随意就好:
然后在 NuGet 包管理器中安装 AForge 库:
我只安装了图中打勾的几个库,这个根据自己项目需要安装就好。
不过用 USB 摄像头拍照必须安装:
AForge.Video
AForge.Control
AForge.Video.DirectShow
这三个库文件。
不习惯使用 NuGet 也可以到 AForge 的 .NET lib 下载页面下载。
在 MainWindow.xaml 文件中添加两个按钮:
<Window x:Class="AForgeTest.MainWindow"
xmlns="http://www.easck.com/winfx/2006/xaml/presentation"
xmlns:x="http://www.easck.com/winfx/2006/xaml"
xmlns:d="http://www.easck.com/expression/blend/2008"
xmlns:mc="http://www.easck.com/markup-compatibility/2006"
xmlns:local="clr-namespace:AForgeTest"
mc:Ignorable="d"
Closing="Window_Closing">
<StackPanel>
<Button Name="btnCapture" Click="btnCapture_Click">拍照</Button>
<Button Name="btnOpenCamera" Click="btnOpenCamera_Click">打开</Button>
</StackPanel>
</Window>












