基于MATLAB的BP神经网络的水果数字图像识别_第1页
基于MATLAB的BP神经网络的水果数字图像识别_第2页
基于MATLAB的BP神经网络的水果数字图像识别_第3页
基于MATLAB的BP神经网络的水果数字图像识别_第4页
基于MATLAB的BP神经网络的水果数字图像识别_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、精选优质文档-倾情为你奉上精选优质文档-倾情为你奉上专心-专注-专业专心-专注-专业精选优质文档-倾情为你奉上专心-专注-专业基于MATLAB BP神经网络的水果数字图像识别 【摘要】 随着现代社会的发展,信息的形式和数量正在迅猛增长。其中很大一部分是图像,图像可以把事物生动的呈现在我们面前,让我们更直观地接受信息。同时,计算机已经作为一种人们普遍使用的工具为人们的生产生活服务。如今我们也可以把这些技术应用在经营领域。作为智能经营系统(InteUigent Traffic System,简称ITS)中的一个重要组成部分的图像识别技术,当然就是其中的重点研究对象。数字图像识别(License P

2、1ate Recognition,简称LPR),是一种关于计算机的包括图像处理、数学技术、数据库、信息技术以及智能技术于一体的综合技术。用MATLAB做图像识别比用其他工具有许多优势,因为MATLAB在图像的灰度化、二值化、滤波等方面都有很大优势,所以,本次实验我们利用MATLAB的这些优点来对图像进行识别。【关键词】BP神经网络;图像识别;特征识别;特征提取;图像;Matlab程序、代码技术咨询+企鹅 一 课题研究背景(一) 图像识别的提出及应用随着信息化时代的不断发展,人们越来越多地使用信息化的手段来解决各种问题办公自动化、先进制造业、电子商务等利用计算机技术而产生的新兴行业正不断靠近我们

3、的生活。在信息社会中,我们每天都接触大量的数据工作数据、个人数据、无意间获得的数据等在这些数据中,有些数据需要我们人工处理,而有些则可以利用计算机快速准确的完成特征识别就是其中的一个范畴。特征识别是一种图像识别技术,他的输入是一张带有某种特征的图片,而输出则是计算机中对于图片中特征的反应结果。所以,可以广泛的应用于各种领域:如,图像检测、手写识别、自动阅读器、机器视觉在生活生产的各个方面都起到了非常重要的作用。(二)图像识别的机理图像识别是人工智能的一个重要领域。为了编制模拟人类图像识别活动的计算机程序,人们提出了不同的图像识别模型。例如模板匹配模型。这种模型认为,识别某个图像,必须在过去的经

4、验中有这个图像的记忆模式,又叫模板。当前的刺激如果能与大脑中的模板相匹配,这个图像也就被识别了。例如有一个字母A,如果在脑中有个A模板,字母A的大小、方位、形状都与这个A模板完全一致,字母A就被识别了。这个模型简单明了,也容易得到实际应用。但这种模型强调图像必须与脑中的模板完全符合才能加以识别,而事实上人不仅能识别与脑中的模板完全一致的图像,也能识别与模板不完全一致的图像。例如,人们不仅能识别某一个具体的字母A,也能识别印刷体的、手写体的、方向不正、大小不同的各种字母A。同时,人能识别的图像是大量的,如果所识别的每一个图像在脑中都有一个相应的模板,也是不可能的。为了解决模板匹配模型存在的问题,

5、格式塔心理学家又提出了一个原型匹配模型。这种模型认为,在长时记忆中存储的并不是所要识别的无数个模板,而是图像的某些“相似性”。从图像中抽象出来的“相似性”就可作为原型,拿它来检验所要识别的图像。如果能找到一个相似的原型,这个图像也就被识别了。这种模型从神经上和记忆探寻的过程上来看,都比模板匹配模型更适宜,而且还能说明对一些不规则的,但某些方面与原型相似的图像的识别。但是,这种模型没有说明人是怎样对相似的“刺激”进行辨别和加工的,它也难以在计算机程序中得到实现。因此又有人提出了一个更复杂的模型,即“泛魔”识别模型。(四)本文的研究内容 1 原理分析 由于数字图像是唯一的特征标识符号,在经营管理中

6、具有不可替代的作用,因此数字图像识别系统应具有很高的识别正确率,对环境光照条件、拍摄位置等因素的影响应有较大的容阈,并且要求满足实时性要求。区域搜索与分割图像分割归一化图像特征提取图像识别图像输入预处理图2-1 水果特征识别系统原理图该系统是计算机图像处理与特征识别技术在智能化经营管理系统中的应用,它主要由水果图像的采集和预处理、水果区域的定位和提取、图像的分割和识别等几个部分组成,如图1所示。其基本工作过程如下:(1)图像的采集;(2)数字图像的图像通视频卡输入计算机进行预处理,图像预处理包括图像转换、图像增强、滤波和水平矫正等;(3)由检索模块进行搜索与检测,定位并分割出包含水果特征的矩形

7、区域;(4)对水果特征进行二值化并分割出单个图像,经归一化后输入单个图像识别系统进行识别。2 总体设计方案数字图像识别整个系统主要是由图像定位和特征识别两部分组成,其中图像定位又可以分为图像预处理及边缘提取模块和水果的定位及分割模块;特征识别可以分为特征分割与特征提取和单个特征识别两个模块。为了用于水果的分割和水果特征的识别,原始图像应具有适当的亮度,较大的对比度和清晰可辩的水果图像。但由于该系统的摄像部分工作于开放的户外环境,加之数字图像的整洁度、自然光照条件、拍摄时摄像机与水果的距离和角度等因素的影响,水果图像可能出现模糊、歪斜和缺损等严重缺陷,因此需要对原始图像进行识别前的预处理。水果的

8、定位和分割是水果识别系统的关键技术之一,其主要目的是在经图像预处理后的原始灰度图像中确定水果的具体位置,并将包含水果特征的一块子图像从整个图像中分割出来,供特征识别子系统识别之用,分割的准确与否直接关系到整个水果特征识别系统的识别率。由于拍摄时的光照条件、水果的整洁程度的影响,和摄像机的焦距调整、镜头的光学畸变所产生的噪声都会不同程度地造成水果特征的边界模糊、细节不清、笔划断开或粗细不均,加上水果上的污斑等缺陷,致使特征提取困难,进而影响特征识别的准确性。因此,需要对特征在识别之前再进行一次针对性的处理。图像识别的最终目的就是对图像上的文字进行识别。主要应用的为模板匹配方法。因为系统运行的过程

9、中,主要进行的都是图像处理,在这个过程中要进行大量的数据处理,所以处理器和内存要求比较高,CPU要求主频在600HZ及以上,内存在128MB及以上。系统可以运行于Windows98、Windows2000或者Windows XP操作系统下,程序调试时使用matlab。三 具体技术路线(1)图像预处理及边缘提取图像预处理技术可最大限度提高图像正确识别率,这些图像预处理包括图像灰度化、平滑、倾斜校正、灰度修正等。 输入水果图像灰度校正平滑处理提取边缘 图3-1 预处理及边缘提取流程图1、图像的采集与转换考虑到现有水果的特征与背景的颜色搭配一般有多种,利用不同的色彩通道就可以将区域与背景明显地区分出

10、来,因为蓝色(255,0,0)与白色(255,255,255)在通道中并无区分,而在G、R 通道或是灰度图像中并无此便利。原图、灰度图及其直方图见图2与图3。对于将彩色图像转换成灰度图像时,图像灰度值可由下面的公式计算: (3-1) (3-2) 2、边缘提取边缘是指图像局部亮度变化显著的部分,是图像风、纹理特征提取和形状特征提取等图像分析的重要基础。所以在此我们要对图像进行边缘检测。图象增强处理对图象的可辨认度的改善和简化后续的水果特征定位和分割的难度都是很有必要的。增强图象对比度度的方法有:灰度线性变换、图象平滑处理等。(1)灰度校正由于水果图像在拍摄时受到种种条件的限制和干扰,图像的灰度值

11、往往与实际景物不完全匹配,这将直接影响到图像的后续处理。如果造成这种影响的原因主要是由于被摄物体的远近不同,使得图像中央区域和边缘区域的灰度失衡,或是由于摄像头在扫描时各点的灵敏度有较大的差异而产生图像灰度失真,或是由于曝光不足而使得图像的灰度变化范围很窄。这时就可以采用灰度校正的方法来处理,增强灰度的变化范围、丰富灰度层次,以达到增强图像的对比度和分辨率。我们发现数字图像图像的灰度取值范围大多局限在r=(50,200)之间,而且总体上灰度偏低,图象较暗。根据图象处理系统的条件,最好将灰度范围展开到s=(0,255)之间,为此我们对灰度值作如下的变换: s = T(r) r=r min,,r

12、max (3-3) 使得SSmin, Smax,其中,T为线性变换,灰度线性变换 (3-4) 图3-3 线性图(2)若 r(50,200)s(0,255) 则: (3-5) (3)平滑处理 对于受噪声干扰严重的图像,由于噪声点多在频域中映射为高频分量,因此可以在通过低通滤波器来滤除噪声,但实际中为了简化算法,也可以直接在空域中用求邻域平均值的方法来削弱噪声的影响,这种方法称为图象平滑处理。例如,某一象素点的邻域S有两种表示方法:8邻域和4邻域分别对应的邻域平均值为 (3-6) 23i,j144325i,j1678图 3-5 邻域及其邻域模板 (4)其中,M 为邻域中除中心象素点f(i,j) 之

13、外包括的其它象素总数,对于4邻域M=4,8 邻域M=8。然而,邻域平均值的平滑处理会使得图像灰度急剧变化的地方,尤其是物体边缘区域和特征轮廓等部分产生模糊作用。为了克服这种平均化引起的图像模糊现象,我们给中心点象素值与其邻域平均值的差值设置一固定的阈值,只有大于该阈值的点才能替换为邻域平均值,而差值不大于阈值时,仍保留原来的值,从而减少由于平均化引起的图像模糊。图像中数字图像是具有比较显著特征的一块图像区域,这此特征表现在:近似水平的矩形区域;其中特征串都是按水平方向排列的;在整体图像中的位置较为固定。正是由于水果图像的这些特点,再经过适当的图象变换,它在整幅中可以明显地呈现出其边缘。边缘提取

14、是较经典的算法,此处边缘的提取采用的是Roberts算子。 2 图像的定位与分割 图像定位对图像识别系统来说至关重要,目前已经提出了很多图像定位的方法,这些方法都具有一个共同的出发点,即通过水果区域的特征来判断水果。根据不同的实现方法,大致可以把现有的定位方法分为直接法和间接法两类。 1)直接法。利用图像的尺寸、特征间距、特征特征等纹理特征定位图像。利用图像部分垂直高频丰富的特点先利用小波提取图像的垂直高频信息,然后利用数学形态学方法对小波分解后的细节图像进行一系列的形态运算,进一步消除无用的信息和噪声,以定位图像。 2)间接法。主要是指利用神经网络法或者遗传算法定位图像的方法。利用遗传算法对

15、图像进行优化搜索,结合区域特征矢量构造的适应度函数,最终寻找到图像的水果区域的最佳定位参量。 对图像进行腐蚀去除杂质通过计算寻找X和Y方向车牌的区域完成车牌定位对分割出的车牌做进一步处理 图3-8 水果定位于分割流程图(1)水果区域的定位水果图像经过了以上的处理后,水果区域已经十分明显,而且其边缘得到了勾勒和加强。此时可进一步确定水果在整幅图像中的准确位置。这里选用的是数学形态学的方法,其基本思想是用具有一定形态的机构元素去量度和提取图像中的对应形状以达到对图像分析和识别的目的。数学形态学的应用可以简化图像数据,保持它们基本的形态特征,并除去不相干的结构。在本程序中用到了膨胀和闭合这两个基本运

16、算,最后还用了bwareaopen来去除对象中不相干的小对象。(2)水果区域的分割对图像的分割可以有很多种方法,本程序是利用图像的彩色信息的彩色分割方法。根据图像底色等有关的先验知识,采用彩色像素点统计的方法分割出合理的图像区域,确定图像底色蓝色RGB对应的各自灰度范围,然后行方向统计在此颜色范围内的像素点数量,设定合理的阈值,确定图像在行方向的合理区域。然后,在分割出的行区域内,统计列方向蓝色像素点的数量,最终确定完整的图像区域。(3)图像进一步处理经过上述方法分割出来的图像图像中存在目标物体、背景还有噪声,要想从图像中直接提取出目标物体,最常用的方法就是设定一个阈值T,用T将图像的数据分成

17、两部分:大于T的像素群和小于T的像素群,即对图像二值化。3 特征的分割与归一化m,n=size(d),逐排检查有没有白色像素点,设置1=j0。在网络训练阶段用准备好的样本数据依次通过输入层、隐层和输出层。比较输出结果和期望值,若没有达到要求的误差程度或者训练次数,即经过输出层、隐层和输入层,来调节权值,以便使网络成为一定适应能力的模型。 用matlab 神经网络工具箱,用BP神经网络生成网络函数,部分程序如下:net=newff(pr,25 1,logsig purelin, traingdx, learngdm);net.trainParam.epochs=3000;net.trainPar

18、am.goal=0.001;net.trainParam.show=10;net.trainParam.lr=0.05;net=train(net,p,t)即创建和训练神经网络。其中权值函数为“logsig”,学习函数为:“purelin”.运行后,可在matlab上得到:LOADING.ans =LOAD OK.TRAINGDX, Epoch 0/3000, MSE 18.0267/0.001, Gradient 19.9528/1e-006TRAINGDX, Epoch 10/3000, MSE 6.55309/0.001, Gradient 1.92177/1e-006TRAINGDX,

19、 Epoch 20/3000, MSE 5.08303/0.001, Gradient 1.59205/1e-006TRAINGDX, Epoch 30/3000, MSE 3.32551/0.001, Gradient 1.35881/1e-006TRAINGDX, Epoch 40/3000, MSE 1.70977/0.001, Gradient 0./1e-006TRAINGDX, Epoch 50/3000, MSE 0./0.001, Gradient 0./1e-006TRAINGDX, Epoch 60/3000, MSE 0./0.001, Gradient 0./1e-00

20、6TRAINGDX, Epoch 70/3000, MSE 0./0.001, Gradient 0./1e-006TRAINGDX, Epoch 80/3000, MSE 0./0.001, Gradient 0./1e-006TRAINGDX, Epoch 90/3000, MSE 0./0.001, Gradient 0./1e-006TRAINGDX, Epoch 100/3000, MSE 0./0.001, Gradient 0./1e-006TRAINGDX, Epoch 110/3000, MSE 0./0.001, Gradient 0./1e-006TRAINGDX, Ep

21、och 120/3000, MSE 0./0.001, Gradient 0./1e-006TRAINGDX, Epoch 130/3000, MSE 0./0.001, Gradient 0./1e-006TRAINGDX, Epoch 140/3000, MSE 0./0.001, Gradient 0./1e-006TRAINGDX, Epoch 150/3000, MSE 0./0.001, Gradient 0./1e-006TRAINGDX, Epoch 160/3000, MSE 0./0.001, Gradient 0./1e-006TRAINGDX, Epoch 170/30

22、00, MSE 0./0.001, Gradient 0./1e-006TRAINGDX, Epoch 180/3000, MSE 0./0.001, Gradient 0./1e-006TRAINGDX, Epoch 190/3000, MSE 0./0.001, Gradient 0./1e-006TRAINGDX, Epoch 200/3000, MSE 0./0.001, Gradient 0./1e-006TRAINGDX, Epoch 210/3000, MSE 0./0.001, Gradient 0./1e-006TRAINGDX, Epoch 220/3000, MSE 0.

23、/0.001, Gradient 0./1e-006TRAINGDX, Epoch 230/3000, MSE 0./0.001, Gradient 0./1e-006TRAINGDX, Epoch 240/3000, MSE 0./0.001, Gradient 0./1e-006TRAINGDX, Epoch 248/3000, MSE 0./0.001, Gradient 0./1e-006TRAINGDX, Performance goal met.即神经网络训练过程。误差曲线即测试样例经训练后的实际输出结果和期望输出的差值情况。其变化如图21,图22。 图 3-15 训练过程中误差曲

24、线变化 图 3-16 训练结束时误差曲线 可见,当神经网络训练完成后,其样本得出的输出结果和期望输出结果完全相同,即误差为零。识别结果如下:FileName:D:testa = 3答案正确。训练后神经网络以及权重结果信息为:net = Neural Network object: architecture: numInputs: 1 numLayers: 2 biasConnect: 1; 1 inputConnect: 1; 0 layerConnect: 0 0; 1 0 outputConnect: 0 1 targetConnect: 0 1 numOutputs: 1 (read-o

25、nly) numTargets: 1 (read-only) numInputDelays: 0 (read-only) numLayerDelays: 0 (read-only) subobject structures: inputs: 1x1 cell of inputs layers: 2x1 cell of layers outputs: 1x2 cell containing 1 output targets: 1x2 cell containing 1 target biases: 2x1 cell containing 2 biases inputWeights: 2x1 ce

26、ll containing 1 input weight layerWeights: 2x2 cell containing 1 layer weight functions: adaptFcn: trains initFcn: initlay performFcn: mse trainFcn: traingdx parameters: adaptParam: .passes initParam: (none) performParam: (none) trainParam: .epochs, .goal, .lr, .lr_dec, .lr_inc, .max_fail, .max_perf

27、_inc, .mc, .min_grad, .show, .time weight and bias values: IW: 2x1 cell containing 1 input weight matrix LW: 2x2 cell containing 1 layer weight matrix b: 2x1 cell containing 2 bias vectors other: userdata: (user stuff) 由此可见,程序可满足期望要求。当然,也经常有识别错误的情况发生。对于识别错误情况的分析可知,主要原因:一是水果自身的污渍等影响了图像的质量;二是水果特征的分割失败

28、导致的识别错误;再就是部分特征的形状相似性,比如,B 和8;A 和4 等特征识别结果可能发生混淆的情况。总之,尽管目前水果特征的识别率还不理想,但是只要在分割出的特征的大小、位置的归一化,以及尝试提取分类识别能力更好的特征值和设计分类器等环节上再完善,进一步提高识别率是完全可行的。四 总结(一)课题小结 在数字图像特征识别系统的研究领域,近几年出现了许多切实可行的识别技术和方法,从这些新技术和方法中可以看到两个明显的趋势:一是单一的预处理和识别技术都无法达到理想的结果,多种方法的有机结合才能使系统有效识别能力提高。在此次实验中,也汲取了以上一些算法的思想,结合实际,反复比较,综合分析;二是在有效性和实用的原则下,结合神经网络和人工智能的新技术的应用是研究的一个方向。 根据图像特点,一般采用的图像定位算法有:1.边缘检测定位算法;2.利用哈夫变换进行图像定位;3.色彩分割提取图像等。这里我采用的是边缘检测的方法实现定位的。特征分割的方法也有多种:1. 基于聚类分析的特征分割;2. 投影分割的方法;3.基于模板匹配的特征分割等。最常用的是投影分割,主要是针对在图像定位,图像预处理

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论