毕业设计--基于单片机的车牌识别系统设计与实现.docx
毕业设计-基于单片机的车牌识别系统设计与实现基于单片机的车牌识别系统设计与实现目录摘要(2)二、选题(4)三、系统主要特点(5)四、系统方案、实现原理(6)4.1图像收集及存储格式(8)4.2图像的灰度化(8)4.3图像的二值化(9)4.4车牌的去边框(9)4.5图像的梯度锐化(10)4.6字符分割算法(11)4.7字符的归一化(12)4.8字符特征提取(13)4.9字符识别算法(15)4.9.1BP神经网络法(15)4.9.2模板匹配法(17)五、操作讲明与硬件框图(18)六、实验程序(19)七、数据统计分析(66)八、结果分析(66)九、实验心得(66)十、参考文献(69)摘要伴随着世界各国汽车数量急剧增加,城市交通状况日益引起人们的重视,怎样有效地进行交通管理,已成为越来越多人关注的焦点,解决这些问题的关键就是建立智能交通系统。车牌识别是智能交通系统的重要组成部分,它在交通控制与监视中有着多种用处,目前已广泛应用于各种领域。本文将TMS320C54XX作为核心器件用于车牌自动识别系统中,完成车牌图像的收集、数字图像的处理、提取车牌信息并针对提取的特征对字符进行识别。首先分析了车牌识别系统实现的背景以及其实现意义。然后对实现车牌识别的硬件环境作扼要介绍。接着对车牌识别经过中所涉及的边缘检测、字符分割、大小归一化等一系列数字图象处理技术进行进一步的具体分析。之后,对几种字符特征提取算法进行了比照分析,最后选取最合适的网格特征提取法,以此为基础进行模扳匹配,最终识别出车牌号码。关键词:车牌提取;图象处理;车牌识别;单片机;模扳匹配AbstractWiththeincrementofvehicleallovertheworld,thesituationofcitytraffichasattractedtheattentionofpeople.Howtocontrolthetrafficeffectivelyhasbecometheproblemwhichmoreandmorepeoplepaycloseattentionto.ThewaytosolvethisproblemistoestablishtheITSIntelligentTransportationSystem.VehiclelicenseplaterecognitionsystemisthecrucialpartoftheITS.Itiswidelyusedinvehiclemonitoringandtrafficcontrol.Thisexperimentattemptstousethenewgeneration单片机DigitalSignalProcessortoimplementtherecognitiontask.The单片机chipTMS320C54XXisusedtoprocessthepictureofthevehicle,distillinformationofthelicenseplateandrecognizethevehiclelicenseplate.Thefirstpartofthethesisisaboutthebackgroundandmeaningofthevehiclelicenseplaterecognitionsystem.Consequentlyweanalyzetheenvironmentoftheexperiment.Inthenextpartweanalysisthefundamentaltheoryandtechniqueoftheimageprocessing,includingthecollectionofpictureofvehicle,distillofthelicenseplate,segmentationalgorithmofcharacter.Thenweputforwardseveralmethodstodistillthefeatureofthecharacters.Onthebasisoftheabove-mentionedresearch,wemakethetemplatematchingandrecognizethecharacters.Keywords:VehicleLicensePlateLocation;ImageProcessing;CharacterRecognition;DSP;templatematching二、选题改革开放以来,我国的交通运输业迅速发展。但伴随着其发展,也出现了一系列问题,如交通堵塞、交通事故和环境污染等等。固然能够靠建设更多的道路设施来知足交通运输增长的需求,但在资源、环境矛盾越来越突出的今天,道路设施的增长将遭到限制,这就需要依靠提供除了设施以外的技术方法来知足这一要求。交通的迅速发展使得全世界的研究者不断采用先进的电子和计算机视觉技术来检视超速车辆、把握车辆行驶,或者用于收费站,以提高车辆的通过速度等等。智能运输系统ITS(IntelligentTransportationSystems)是解决这一矛盾的途径之一,而车牌识别LPR(LicensePlateRecognition)又是ITS中的关键技术之一。传统的车牌识别系统,必须依靠于PC,识别的关键算法全部在计算机中实现,计算机由于其有较高的处理速度和较大的内存,而传统的识别和预处理算法又需要大量的存储空间和较快的cpu处理速度,但是由计算机作为识别主体的系统成本高,而且体积庞大,不易于批量安装和随身携带,当今嵌入式系统的发展日新月易,嵌入式处理器单片机的速度不断提高,在某些方面已经超过了传统的PC,而且最单片机主要的优点就是不依靠于任何操作系统,具有高稳定性,成本低,体积小。正由于以上优点,本课题选择了采用单片机来实现车牌识别。三、系统主要特点车牌识别系统能将输入的车牌图像经过处理识别,输出为几个字节大小的车牌字符串,无论在存储空间的占用还是与管理数据库相连方面都有无可比较的优越性,有着广泛的应用前景。车牌识别系统的成功开发将大大加速智能运输系统的进程。系统采用单片机-EXP-IV实验箱,静态视频图象收集卡,摄像头,该系统的工作经过如下:第一步,由摄像头拍下车牌图像,完成图像收集并将收集来的图像存在视频收集卡的SRAM中。第二步,将图像通过单片机1进行处理,图像处理包括滤波、二值化、倾斜度调整和去除车牌边框、字符分割以及归一化等等。第三步,提取字符的特征,并根据模板匹配法进行识别。第四步,进行双机通信,将分析数据传到单片机2,然后控制液晶屏显示结果。四、系统方案、实现原理汽车牌照自动识别系统工作原理车辆牌照识别系统一般可分为车辆图像获取、车辆牌照子图像区域定位分割、车牌照内字符切分、字符识别(OCR)四大部分:在第一部分主要通过摄像头与计算机的视频捕捉卡直接相连接来完成图像收集,能够实时在线监控图像,重点抓取到含有牌照的图像;该部分功能可简单调用计算机视频捕捉卡厂商提供的各种软件开发工具即可实现。由于车辆牌照自动识别系统前端的车辆位置检测、图像捕捉部分都有了相应的软硬件刹良好的实现了,所以牌照自动识别系统的关键在于第二、三、四部分,而后续的几部分是串行化工作的,即没有前一步正确快速的识别、切分出相对较明晰的字符,其后的识别阶段根本就不能够进行,所以从这个意义上来讲,牌照子区域定位自动识别切分技术是整个系统的重中之重,它处理工作进行的好坏直接影响后续工作,对字符的拒识率和误识率以及识别速度的实时性有很重要的影响;而从算法的相对难易程度上来讲,字符详细的识别部分要大的多,牌照子区域内的字符的切分相对最为容易些。本课题采用单片机作为核心处理器来完成识别经过的算法。总体方案Array图1系统框图图像预处理的必要性:由于车牌图像是在室外自然背景下拍摄,其背景往往很复杂,可能包括自然场景中的人、其他车辆、树木、建筑物等,拍摄图像时的光照条件也因拍摄时间、地点、天气等条件的不同而不同,因而,考虑到车辆牌照具有不因外部条件变化而变化的特征,即牌照区域与汽车背景在灰度分布上存在着明显的差异,而且车牌的底色和车牌照字的颜色也构成强烈比照,在一相对小的范围内变化频繁,据这一特征,可以对车牌进行二值化处理,提取边缘特征,定位出车牌。图像的二值化处理必须保留车牌区域的信息,即二值化后车牌字符要与底色有明显的区别。这里的图像的预处理阀值T的选取至关重要,二值化后,车牌的背景大部分被去除,这样处理之后将大大有利于后续车牌区域的搜索定位。4.1图像收集及存储格式用摄像头对准车牌,按下视频收集卡上的复位键,图像便被存储在收集卡的SRAM空间。存在SRAM中的图像在电脑显示器上显示时,有279行和1440列,每行的地址是连续的,并且每行有1440个像素点,所以对于i行j列的像素点,它的地址为1440*i+jH。本系统图像的存储格式为YUV4:2:2(16bit)格式。4.2图像的灰度化收集来的图像为彩色的,由于其调色板内容比拟复杂,使得图像处理的很多算法都没有办法展开,因而有必要对它进行灰度处理。灰度图像没有颜色的差异,有的只是亮度上的不同。亮度值大的像素点比拟亮亮度值最大为255,为白色,反之,比拟暗亮度值最小为0,为黑色。在SRAM中存放的一个像素点需要两个字节,前一个字节为亮度信息,后一个为色度信息。我们只需要其亮度信息,能够让它同0xff00进行“与操作来去除色度信息。去除了颜色之后,图像变为由不同亮度的灰色组成。4.3图像的二值化在进行了上述的去色调的处理后,图像由彩色图像转化为灰度图像。图像中的每个像素只要亮度值。它的大小只决定像素的亮暗程度。为了便于开展后续的图像处理操作,还需要对得到的灰度图像进行二值化处理。图像的二值化就是把图像中的像素根据一定的标准分化成两种颜色。在本系统中是根据像素的亮度值处理成黑白两种颜色。图像的二值化有很多成熟的算法。它能够采用自适应阈值法,可以以采用给定阈值法。由于车牌字体与背景颜色一般比拟固定且比照鲜明,所以本系统采用给定阈值8的方法。举例讲明:设原图像的像素点表示为f(x,y),阀值选为C,则该算法可表示为:f(x,y)C,f(x,y)=255;大于阀值为白色f(x,y)C,f(x,y)=0;小于阀值为黑色这样就将灰度图像转化为黑白两色图像了,理想情况是背景为黑色,而车牌边框和字符为白色。经过二值化后,电脑显示器上显示的车牌图像见图3-1(b):图2原彩色车牌图3经过二值化处理的车牌4.4车牌的去边框由于车牌字体外有边框,在对字符进行分割、归一化等处理前要先去边框。本系统采用逐行逐列扫描法来去除边框。当前位置:文档视界毕业设计-基于单片机的车牌识别系统设计与实现毕业设计-基于单片机的车牌识别系统设计与实现况,进行字符分割等后续处理时会产生干扰,造成字符被错误分割,严重影响字符识别的正确率。所以有时候要对图像进行锐化处理使模糊的图像变得明晰,同时还能够去除一部分噪声。图像锐化9的方法很多,有微分法、高通滤波法等。我们在这里采用的锐化方法属于微分法的一种。定义如下:设原始图像上的点为f(x,y),定义f(x,y)在(x,y)处的梯度矢量为:Gf(x,y)=|f(x,y)-f(x+1,y)|设一个断定阈值为C,变化后的图像g(x,y)定义为:Gf(x,y)C,g(x,y)=0;Gf(x,y)C,g(x,y)=f(x,y);通过公式能够看出梯度锐化能够使字符模糊的边缘变得明晰,并且能够消除一部分噪声,使图像的边缘细化。4.6字符分割算法车牌在去边框之后,得到七个字符,但识别的时候只能根据每个字符的特征进行判定,所以还要对联在一起的七个字符进行分割。详细算法9如下:第一步,利用上述逐行扫描法找到字符的上下边界,这样就得到了图像大致的高度范围。第二步,在这个高度范围之内自左向右逐列进行扫描,碰到第一个白色像素点以为是字符分割的起始位置,然后继续扫描,直至碰到有一列中没有白色像素,则以为这个字符分割结束,然后继续扫描,根据上面的方法一直扫描直至字符的最右边界。这样就得到了每个字