AForge.NET 是用C#写的一个关于计算机视觉和人工智能领域的框架,它包括图像处理、神经网络、遗传算法和机器学习等。在C#程序中使用摄像头,我习惯性使用AForge.Net提供的类库。本文讲解如何在WPF程序中调用AForge.NET控件实现视频和抓拍功能。
AForge.NET控件是提供WinForm的,在WPF默认情况下无法使用。这就需要WPF与WinForm控件交互,要实现视频功能,需要使用AForge.Controls命名空间中的VideoSourcePlayer控件。这是一个WinForm控件,要在WPF程序中使用,我们需要做如下4步:
解决方案:
1、添加引用:
(1)、在.NET选项卡中选择WindowsFormsIntegration
(2)、在浏览选项卡中添加3个AForge.NET类库:
AForge.Controls.dll
AForge.Video.dll
AForge.Video.DirectShow.dll
2、在XAML的Window区域中添加System.Windows.Forms.Integration命名空间:
xmlns:wfi ="clr-namespace:System.Windows.Forms.Integration;assembly=WindowsFormsIntegration"
3、在XAML的Window区域中添加AForge.Controls命名空间:
xmlns:aforge ="clr-namespace:AForge.Controls;assembly=AForge.Controls"
4、在XAML中加入VideoSourcePlayer可视控件:
<wfi:WindowsFormsHost Grid.Row="0" Margin="5"> <aforge:VideoSourcePlayer x:Name="sourcePlayer" Width="300" Height="360"> </aforge:VideoSourcePlayer> </wfi:WindowsFormsHost>
开发工具:
Visual Studio v2010
.NET Framework 4 Client Profile
AForge.NET Framework 2.2.5
转载参考1:http://blog.csdn.net/jhqin/article/details/6619762/
转载参考2:http://www.suchso.com/projecteactual/wpf-jiaocheng-AForgenet-shexiangtou.html
评论回复