- 1、本文档共11页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
1、CDIO设计目的
在学习了数据图形的基础上,进行编写摄像头采集程序,对采集的程序进行预处理,对预处理的图像进行特征提取,如分散度,拒不变量等特征,进行模式识别,区分各种形状。
2、CDIO设计正文
2.1图像识别
图像分析技术分类的三种基本范畴
(1) 低级处理:图像获取、预处理,不需要智能
(2) 中级处理:图像分割、表示与描述,需要智能
(3) 高级处理:图像识别、解释,缺少理论,为降低难度,设计得更专用。
对于一个数字图形的识别可以分为以下四个步骤:
(1) 数码图片的获取,
(2 ) 图像的彩色边缘检测、图像的分割,
(3) 图象的颜色特征和形状特征提取
(4) 图像的分类识别。
我们的设计主要是根据图形的边缘特征,以此来与机器记忆中的特征值进行比较,如果比较相近,那么就可以认为是指定的图形形状。
边缘是图像的一个基本特征,携带了图像中的大量信息,边缘检测不仅能得到关于边界的有用的结构信息,而且还能极大地减少要处理的数据,很多图像处理和识别算法都以边缘检测为重要基础。
边缘按其颜色特征可分为灰度边缘和彩色边缘。
(1)灰度图像可由图像亮度函数来描述,灰度边缘可以定义为图像亮度函数的具有边缘特征的不连续点的集合,它描述了灰度函数的局部突变。
(2)彩色图像可由图像色彩函数来描述,彩色边缘可以定义为图像色彩函数的具有边缘特征的不连续点的集合,它描述了色彩函数的局部突变。
长期以来人们主要致力于灰度边缘的研究并取得了很好的效果。但彩色边缘能比灰度图像提供更多的信息。有研究表明,彩色图像中,大约有90%的边缘与灰度图像中的边缘相同,也就是说,有 10%的边缘在灰度图像中是检测不到的。因此,彩色边缘的检测受到越来越多的重视。
彩色边缘检测的方法:
(1)输出融合法
分别对红,绿,蓝三个颜色通道(或其他颜色空间分量)执行边缘检测,
最后的输出是这三幅边缘图像的合成
图1输出融合法
(2)多维梯度法
将三个梯度结合成一个,只需检测一次边缘,从而缩短了整个彩色边缘检测的过程。
图2多维梯度法
以上两种彩色边缘检测算法中常用的梯度算子有:
罗伯特交叉(Robert cross)算子,蒲瑞维特(Prewitt)和索贝尔(Sobel)算子。其中,索贝尔算子是效果较好的一种,并且可以直接应用于彩色图像的各个颜色通道。
对于特征提取。我们可以根据形状特征或者颜色进行提取。
形状特征:
图像经过边缘提取和图像分割等操作,就会得到边缘和区域,也就是获得了目标的形状。
任何物体的形状特征均可由其几何属性(如长度、面积、距离、凹凸等),统计属性(如投影)和拓扑属性(如连通、欧拉数)来进行描述。
可以用来表示形状的特征包括几何特征和矩特征。
颜色特征:
由于颜色特征具有旋转不变性和尺度不变性,因而,在图象识别技术,颜色是使用最广泛的特征之一。而颜色特征的提取是利用颜色特征进行图象识别的关键之一。目前,大部分系统都采用颜色比例分布作为颜色基本特征, 这就是图象领域中的直方图法。
颜色特征提取后,如何用数值来有效的表示图像在颜色上的相似程度,这便是相似度量问题
相似度量也是直接影响识别效果的重要环节,在模式识别技术中,特征的相似度量均采用距离法 ,即特征的相似程度用特征向量的空间距离来表示。
经过彩色边缘检测,图像分割和特征提取,对分割后的图像进行模式匹配,并制作出用户界面,最终实现图像的分类和识别。
2.1.1 图形识别系统的设计
在了解了图形识别的原理的基础之后就是系统的设计,对于图形的识别matlab 是一个比较好的工具,里面集成了关于凸图像处理的函数库,比较方便,但是如果可以把做成的系统使用更加广泛的编程java或者.Net中的C#的话,它的实用性就比较的强了,考虑到系统调用摄像头,以及可以方便的进行已有图形的识别,我们选择使用.Net 开发环境中的C#作为系统开发设计的语言,对于图像处理.Net 类库里面已经有了比较多的方法,同时作为一个比较流行的开发平台,一些开源的进行图像处理的第三方类库,对于我们来说也是比较实用的,最总我们选择了一个比较有名的开源类库AForge.NET。
AForge.NET是一个专门为开发者和研究者基于C#框架设计的,他包括计算机视觉与人工智能,图像处理,神经网络,遗传算法,机器学习,模糊系统,机器人控制等领域。
这个框架由一系列的类库组成。主要包括有:
AForge.Imaging —— 一些日常的图像处理和过滤器
AForge.Vision —— 计算机视觉应用类库
AForge.Neuro —— 神经网络计算库AForge.Genetic -进化算法编程库
AForge.MachineLearning —— 机器学习类库
AF
文档评论(0)