您好,欢迎访问三七文档
当前位置:首页 > 机械/制造/汽车 > 汽车理论 > 基于matlab的车牌识别系统的设计与实现(1)
图形图像处理与应用课程设计报告目录引言....................................................................21.设计原理.............................................................212.系统框架结构.........................................................22.1工作流程.........................................................33.设计步骤..............................................................43.1设计方案.........................................................44.各模块的实现..........................................................44.1图像预处理.......................................................44.1.1图像灰度化.................................................44.1.2图像的边缘检测.............................................54.2车牌定位和分割...................................................74.2.1车牌的定位.................................................74.2.2车牌的分割.................................................94.2.3对定位后的彩色车牌的进一步处理.............................94.3字符的分割和归一化处理..........................................114.3.1字符的分割....................................................114.3.2字符的归一化处理..............................................125实验结果和分析........................................................126.实验总结.............................................................14主要参考文献...........................................................15附录...................................................................16实验体会...............................................................21基于MATLAB的车牌识别系统的设计——字符分割的设计2引言介绍当前的发展背景车辆的牌照是机动车的识别标志,在交通管理中有着重要的作用。通过汽车车牌识别系统可以监控车辆的信息和行驶状况,可以最迅速的实现车辆控制以及交通状况的调控,所以对于现代智能交通至关重要。该系统主要有两大模块:图像处理模块和字符识别模块。本文主要对图像处理模块进行设计和研究。图像处理模块的质量好坏更是衡量整个系统成功与否的关键。MATLAB语言对于图像的处理非常方便,能够直接调用编好的函数,为整个系统提供了保障。1.设计原理车牌识别系统的摄像头通过对经过指定区域的机动车辆进行拍照,因为照片会受到光照、拍摄位置和车辆行驶速度的影响,导致拍摄的图片不能准确的确定汽车的车牌。而车牌识别系统就通过对机动车辆的照片进行图像预处理、车牌定位、字符分割、字符识别等技术手段,从而得到清晰的机动车牌照的照片,从而提高现代智能交通的管理效率,可以说车牌识别系统对于现代智能交通至关重要。2.系统框架结构汽车车牌自动识别系统主要包括触发拍照、图像采集、图像预处理、车牌定位、字符分割、字符识别、输出结果等单元。3图像采集车牌定位字符分割字符识别输出结果触发牌照图像预处理图2-1车牌识别系统工作流程图2.1工作流程:触发拍照:该单元会自动检测车辆在指定区域的存在,现有的成熟技术的有线圈触发、视频触发、红外触发、雷达触发以及激光触发。其中线圈触发和视频触发得到了广泛的应用。图像采集:该单元是指道路上安装的摄像头在检测到有车辆通过的同时进行拍照并借助网络传送到汽车自动识别系统。图像预处理:该单元是指车牌识别系统对拍摄的汽车图片进行灰度化和边缘检测等处理。车牌定位:是指对预处理过的汽车图片进行处理,把车牌部分进行定位,把无用的部分去除,得到定位好的车牌图片。字符分割:对已经定位的车牌图片的进行字符分割,将车牌分割为7个单一的字符图片字符识别:将已经分割出来的七个字符进行识别。输出结果:输出识别结果,并进行数据存储。43.设计步骤3.1.设计方案:该系统主要是由图像处理和字符识别两部分组成。其中图像处理部分包括图像预处理、边缘提取模块、牌照的定位以及分割模块。字符识别部分可以分为字符分割与特征提取和单个字符识别两个模块。字符识别部分要求照片清晰,但由于该系统的摄像头长时间在室外工作,加上光照条件、摄像头角度和距离、车辆自身条件以及车辆的行驶速度的影响,想拍出较理想的图片很困难。因此,我们要对摄像头拍摄的图片进行预处理,主要包括图片灰度化和图片边缘提取等。车牌定位和车牌分割是整个系统的关键,其作用是在经图象预处理后的灰度图象中确定牌照的具体位置,并将包含牌照字符的一块子图象从整个图象中分割出来,供字符识别子系统识别之用,分割的准确与否直接关系到整个牌照字符识别系统的识别率。车牌识别系统的最终目的就是将不清楚的车牌照片进行识别,输出清晰的图片。现在字符识别的常用方法有模板匹配法和神经网络模型法。4.各模块的实现车牌识别系统包括图像采集、图像预处理、车牌定位、字符分割、字符识别等模块,本文主要研究图像预处理、车牌定位和字符分割三个模块。4.1图像预处理4.1.1图像灰度化:因为车牌识别系统的摄像头拍摄的图片是彩色的,图片的背景颜色有时和车牌的颜色相似,而且彩色图片会占用较大的存储空间,使计算机处理速度变慢,加重计算机负担,所以我们要对拍摄的照片进行灰度化处理。对于将彩色图像转换成灰度图像时,目前比较主流的灰度化方法叫平均值法,公式为:H=0.229R+0.588G+0.144B公式中H表示灰度图的亮度值;R代表彩色图像红色分量值;G代表色彩图像绿色分量值;B代表彩色图像蓝色分量值。RGB5三分量前的系数为经验加权值。加权系数的取值建立在人眼的视觉模型之上。对于人眼较为敏感的绿色取较大的权值;对人眼较为不敏感的蓝色则取较小的权值。通过该公式转换的灰度图能够比较好地反应原图像的亮度信息。在MATLAB中我们可以调用im2gray函数对图像进行灰度化处理。4.1.2图像的边缘检测:边缘是指图像灰度发生空间突变或者在梯度方向上发生突变的像素的集合。用摄像机采集到的机动车图像由于受到噪声干扰以及车辆本身的影响,使得获得的图像质量不理想。因此,在进行对汽车牌照的定位及字符识别之前需要先对车辆图像进行边缘检测处理,提高图像的质量,使其易于后面的分割和识别。通过良好的边缘检测可以大幅度的降低噪声、分离出复杂环境中的车辆图像、保留完好的车牌字符信息,方便后面的车牌精确定位与字符识别。由于车牌识别系统摄像头安装位置固定以及机动车车牌的固有属性,我们可以发现机动车车牌图像都处在水平的矩形区域,在图像中位置较为固定,车牌中字符都是按水平方向排列。因为有这些明显的特征,经过适当的图像变换,可以清晰的呈现出车牌的边缘。本文采用经典的Roberts边缘检测算子来对图像进行边缘检测。灰度化和边缘检测的MATLAB程序如下:I=imread('zhaopian.jpg');figure(1),imshow(I);title('原图')I1=rgb2gray(I);figure(2),imshow(I1);title('灰度图');I2=edge(I1,'robert',0.15,'both');figure(3),imshow(I2);title('Robert边缘检测')6图4-1原始图片图4-2灰度图图4-3Robert算子边缘检测74.2车牌定位和分割该系统的摄像头拍摄的图片是整个机动车的图片,而只有车牌部分是对系统有用的。所以我们要对照片进行车牌定位和分割。车牌的定位和分割是从经过图像预处理后的灰度图像中确定牌照位置,并将车牌部分从整个图像中分割出来,从而进行字符识别。车牌图像的灰度图的车牌部分是一个水平度很高的长方形图样,在原图中比较集中,且灰度值和周围图样有明显差异,因此很容易用边缘检测来对图像进行分割。车牌定位和分割的准确度直接关系到最后的字符识别的质量。对图像进行图像腐蚀除去图像杂质通过计算寻找X和Y方向车牌的区域完成车牌定位对定位后的彩色车牌的进一步处理图4-4车牌定位流程图4.2.1车牌定位机动车图像经过灰度化和边缘检测的处理后,边缘得到了加强,牌照区域已经非常明显。本文采用的是用数学形态学来进行图像处理和模式识别。数学形态学用具有一定形态的机构元素去量度和提取图像中的对应形状以达到对图像分析和识别的目的,能有效的去除噪声,保留图像原有信息的同时提取的边缘比8较平滑,提取的图像骨架也比较连续,断点少。现在我们将经过预处理的图像进行图像腐蚀以及去除杂质,就可以得到相对准确的车牌位置。图4-5腐蚀后的图像图4-6.平滑图像的轮廓9图4-7从对象中移除小对象后图像4.2.2车牌分割本文车牌部分的分割采用的是利用车牌彩色信息的彩色分割法。使用统计彩色像素点的方法分割出车牌区域,确定车牌底色蓝色RGB对应的灰度范围,然后统计在行方向的颜色范围内的像素点数量,确定车牌在行方向的区域。然后,在分割出的行区域内,统计列方向蓝色像素点的数量,最终确定完整的车牌区域。图4-8车牌对位的图像4.2.3对定位后的彩色车牌的进一步处理10定位后车牌图像是彩色的,会占用较大的存储空间,加重计算机负担。且车辆图片不可避免存在噪声,所以要对图像进行灰度化,二值化以及滤波处理。图像的二值化处理就是将图像上的点的灰度置为两个数值,通常为0或255,使整个图像呈现出明显的黑白效果。也就是将256个亮度等级的灰度图像通过适当的门限值选取而获得仍然可以反映图像整体和局部特征的二值化图像。滤波则是为了除去图像噪声。滤波方法有多种,本文采取的滤波方法为均值滤波。均值滤波是典型的线性滤波算法,指在图像上对目标像素给一个模板,该模板包括了其周围的临近像素。再用模板中的全体像素的平均值来代替原来像素值。图4-9车牌的进一步处理114.3字符分割与归一化[m,n]=size(d),逐排检查有没有白色像素点,设置1=jn-1,若图像两边s(j)=0,则切割,去除图像两边多余的部分切割去图像上下多余的部分根据图像的大小,设置一阈值,检测图像的X轴,若宽度等于这一阈值则切割,分离出七个字符归一化切割出来的字符图像的大小为40*20,与模板中字符图像的大小相匹配图4-10.字符分割和归一化流程图4.3.1字符分割将得到的车牌区域图像进行二值化处理后,对图像进行垂直投影,投影图上有明显的类似于峰谷的波形起伏变化,通过对投影图上的波形从左向右进行扫描,根据谷和峰的特征就可以判断出每个字符的位置;计算垂直峰,检测合理的字符高宽比。在字符切割时,往往由于阈值
本文标题:基于matlab的车牌识别系统的设计与实现(1)
链接地址:https://www.777doc.com/doc-5691603 .html