简介 AForge.NET是一个专门为开发者和研究者基于C#框架设计的,他包括计算机视觉与
人工智能,图像处理,神经网络,遗传算法,机器学习,模糊系统,机器人控制等领域。
主要架构
这个框架由一系列的类库组成。主要包括有:
AForge.Imaging —— 一些日常的图像处理和过滤器
AForge.Vision —— 计算机视觉应用类库
AForge.Neuro —— 神经网络计算库AForge.Genetic -进化算法编程库
AForge.MachineLearning —— 机器学习类库
AForge.Robotics —— 提供一些机器学习的工具类库
AForge.Video —— 一系列的视频处理类库
AForge.Fuzzy —— 模糊推理系统类库
AForge.Controls—— 图像,三维,图表显示控件
特点
该框架架构合理,易于扩展,涉及多个较前沿的技术模块,可以为相关开发人员或科研人员的工作提供极大便利。该
框架使用LGPLv3
[1]
协议,2.0以前版本遵循GPLv3
[2]
协议,如果对于协议有协商需要可以联系项目作者。
相关开发工具
Image Processing Prototyper
该工具
[3]
意在让图像算法和识别算法的测试更简单更快捷,让开发人员更专注于算法本身,而不是构建测试界面和用例。
AForge.NET Debugging Visualizer
虽然Image Processing Prototyper方便快捷,但是并不是所有类都可以受惠,AForge.NET Debugging Visualizers
[4]
就是一个补充。它支持以下4类的调试:
System.Drawing.Image
System.Drawing.Imaging.BitmapData
AForge.Imaging.UnmanagedImage
AForge.Math.Histogram
文档和参考资料
AForge.NET的资料相当丰富,官方SVN自带例子若干,博客园,51CTO等技术网站均有大量相关文章
[5-6]
。
示例展示
1.基于符号识别的3D现实增强技术
AR技术
2.基于模糊系统的自动导航
fuzzy
3.运动检测
4.2D增强技术
其他可用开源库
GRATF
符号识别和目标追踪的库,可以用于机器人控制,当然也可以用于现实增强。
Image Processing Lab
基于C#的图像处理库,提供了一系列可用于AForge.Net的接口和工具。