欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    基于Matlab的车牌识别系统设计论文完整.doc

    • 资源ID:35084171       资源大小:178.50KB        全文页数:33页
    • 资源格式: DOC        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    基于Matlab的车牌识别系统设计论文完整.doc

    中国矿业大学模式识别- 基于matlab车牌识别系统设计指导教师: 梁志贞 周世斌 姓 名: 田凯 班 级: 信科10-1班 学 号: 08103476 时 间:二一三年六月目录1 绪论11.1 车牌号识别研究背景11.2 车牌号识别技术研究现状和趋势21.3 车牌识别研究内容42 车牌识别系统设计原理概述63 车牌识别系统程序设计83.1 图像读取及车牌区域提取83.2 字符切割153.3字符识别194 仿真结果及分析224.1 车牌定位及图像读取及其图像处理224.2 车牌字符分割及其图像处理224.3 车牌字符识别及其图像处理235 结论24附录:程序清单271 绪论1.1 车牌号识别研究背景随着我国公路交通事业发展,车辆数量正在迅速增长,在给出行提供方便同时,车辆管理上存在问题日益突出,人工管理方式已经不能满足实际需要。微电子、通信与计算机技术在交通领域应用极大地提高了交通管理效率。作为信息来源自动检测、图像识别技术越来越受到人们重视。近年来计算机飞速发展与数字图像技术日趋成熟,为传统交通管理带来巨大转变,先进计算机处理技术,不但可以将人力从繁琐人工观察、监测中解放出来,而且能够大大提高其精确度,汽车牌照自动识别系统就是在这样背景及目下进行开发。汽车牌照等相关信息自动采集与管理对于交通车辆管理、园区车辆管理、停车场管理、交警稽查等方面有着十分重要意义,成为信息处理技术一项重要研究课题。车牌识别难点:1)由于车牌图像多在室外采集,会受到光照条件、天气条件影响,会出现图像模糊,对比度低,目标区域过小,色彩失真等影响,并且会伴随复杂背景图像,这些都会影响车牌定位及识别。2)每次采集时目标所处位置不会一样,采集视角会有很大变化,并且由于车牌挂不正,都将导致车牌出现扭曲。3)牌照多样性。其他国家汽车牌照格式,如尺寸大小,牌照上字符排列等,通常只有一种。而我国则根据不同车型、用途,规定了多种牌照格式,例如分为军车、警车、普通车等。我国标准车牌照是由汉字、英文字母与阿拉伯数字组成,汉字识别及字母与数字识别有很大不同,增加了识别难度。4)我国汽车牌照底色与字符颜色多样,蓝底白字、黄底黑字、黑底白字、红底黑字、绿底白字等多种。5)由于环境、道路或人为因素造成汽车牌照污染严重,这种情况下国外发达国家不允许上路,而在我国仍可上路行驶。使得车牌对比度降低,特征不是很明显,即使在定位准确情况下,字符识别也会受到很大影响。目前在国内存在多种牌照格式,且存在以上种种困难与特殊性,加大了我国车牌自动识别难度,使得中国车辆牌照识别远远难于国外车辆牌照识别。因而如何提高识别率与识别处理实时性及实用性成了一个紧要任务。1.2 车牌号识别技术研究现状与趋势1.2.1国内外车牌识别技术情况及我国车牌特点目前我国有普通地方车牌号、武警车牌号、军队车牌号三种类型,普通地方车牌号又叫自选号牌车牌(如图1所示),自选号牌车牌尺寸是,即车牌长宽比为4.5:1,一共7个字符,每个字符高宽比为2:1。首个字符为中文字符,为各个省或直辖市简称,第二个字符为英文大写字符,前两个字符确定该车牌所在地,后五个字符由阿拉伯数字及英文大写字符组合而成,并且后五个字符间距相同,七个字符大小也相同。图 1.1 我国车牌号示例车辆牌照自动识别技术是智能交通系统一个重要组成部分,广泛应用于交通监控及管理。车辆牌照识别系统技术能够从一幅车辆图像中准确定位出车牌区域,然后经过字符切割与识别实现车辆牌照自动识别。目前车牌识别系统主要应用于以下领域:1)停车场管理系统。利用车牌识别技术对出入车辆号牌进行识别与匹配,及停车卡结合实现自动计时、计费车辆收费管理系统。2)公路自动管理系统。以车牌自动识别技术为基础,及通信等其他高科技结合,对高速公路交通流状况进行自动监测、自动布控,从而降低交通事故发生率,确保交通顺畅。3)安防布控。采用车牌识别技术实现对车辆自动识别,快速报警,既可以有效查找被盗车辆,同时又为公安机关提供了对犯罪嫌疑人交通工具进行远程跟踪及监查技术手段。4)城市十字交通路口“电子警察”。可以对违章车辆进行责任追究,也可以辅助进行交通流量统计,交通监测与疏导。5)小区、校园车辆管理系统。社区保安系统将出入车辆通过车牌识别技术进行记录,将结果及内部车辆列表对比可以实现防盗监管。1.3 车牌识别研究内容车牌系统是计算机视觉与模式识别技术在智能交通领域重要应用课题之一。车牌识别系统是一特定目标位对象专用计算机系统,该系统能从一幅图像中自动提取车牌图像、自动分割自符,进而对分割自符图像进行图像识别。系统一般由硬件与软件构成。硬件设备一般由车体感应设备、辅助光源、摄像机、图像采集卡与计算机。软件部分是系统核心,主要实现车牌自符识别功能。车牌识别学科主要有模式识别、人工智能、图像处理、计算机视觉与信号处理等。这些领域许多技术都可以应用到车牌识别系统中,车牌识别技术研究也必然推动这些相关学科发展。车牌识别关键技术有:车牌定位、字符切割与字符识别等。车牌定位是要完成从图像中确定车牌位置并提取车牌区域图像,目前常用方法有:基于直线检测方法、机遇及域值化方法、基于灰度边缘检测方法、基于彩色图像车牌分割方法、神经网络法与基于矢量量化牌照定位方法等。字符切割时完成车牌区域图像切分处理从而得到所需要单个字符图象。目前常用方法有:基于投影方法与基于连通字符提取等方法。字符识别是利用字符识别原理识别提取出字符图像,目前常用方法有:基于模板匹配方法、基于特征方法与神经网络法等。2 车牌识别系统设计原理概述一个完整车牌号识别系统要完成从图像采集到字符识别输出,过程相当复杂,基本可以分成硬件部分跟软件部分,硬件部分包括系统触发、图像采集,软件部分包括图像预处理、车牌位置提取、字符分割、字符识别四大部分,一个车牌识别系统基本结构如图2.1所示:原始图像图像预处理车牌位置提取字符分割字符识别输出结果图 2.1 车牌识别系统基本结构框图一:原始图像:由停车场固定彩色摄像机、数码相机或其他扫描装置拍摄到图像。二:图像预处理:对动态采集到图像进行滤波,边界增强等处理以克服图像处理。三:车牌位置提取:通过运算得到图像边缘,再计算边缘图像投影面积,寻找谷峰点以大概确定车牌位置,再计算连通域宽高比,剔除不在阈值范围内连通域,最后便得到了车牌区域。四:字符分割:利用投影检测字符定位分割方法得到单个字符。五:字符识别:利用模板匹配方法及数据库中字符进行匹配从而确认出字符。六:输出结果:得到最后汽车牌照,包括汉字、字母与数字。 车牌号图像识别要进行牌照号码、颜色识别 。为了进行牌照识别,需要以下几个基本步骤:a.牌照定位,定位图片中牌照位置;b.牌照字符分割,把牌照中字符分割出来;c.牌照字符识别,把分割好字符进行识别,最终组成牌照号码。牌照识别过程中,牌照颜色识别依据算法不同,可能在上述不同步骤实现,通常及牌照识别互相配合、互相验证。(1)牌照定位:自然环境下,由于汽车图像背景复杂、光照不均匀等原因,如何在自然背景中准确地确定牌照区域是整个识别过程关键。一般采用方案是首先对采集到视频图像进行大范围相关搜索,找到符合汽车牌照特征若干区域作为候选区,然后对这些侯选区域做进一步分析、评判,最后选定一个最佳区域作为牌照区域,并将其从图象中分割出来。通过以上步骤,牌照一般能够被定位。(2)牌照字符分割 :在完成牌照区域定位后,还需要将牌照区域分割成单个字符,然后进行字符识别,最后输出结果。字符分割一般采用垂直投影法。垂直投影法原理是由于字符在垂直方向上投影必然在字符间或字符内间隙处取得局部最小值附近,并且这个位置应满足牌照字符书写格式、字符、尺寸限制与一些其他条件。所以利用垂直投影法对复杂环境下汽车图像字符分割有较好效果。(3)牌照字符识别:字符识别方法目前主要得算法有两种即基于模板匹配算法与基于人工神经网络算法。基于模板匹配算法首先将分割后字符二值化,并将其尺寸大小缩放为字符数据库中模板大小,然后及所有模板进行匹配,最后选最佳匹配作为结果。基于人工神经元网络算法有两种:一种是先对待识别字符进行特征提取,然后用所获得特征来训练神经网络分配器;另一种方法是直接把待处理图像输入网络,由网络自动实现特征提取直至识别出结果。实际应用中,牌照识别系统识别率及牌照质量与拍摄质量密切相关。牌照质量会受到各种因素影响,如生锈、污损、油漆剥落、字体褪色、牌照被遮挡、牌照倾斜、高亮反光、多牌照、假牌照等等;实际拍摄过程也会受到环境亮度、拍摄亮度、车辆速度等等因素影响。这些影响因素不同程度上降低了牌照识别识别率,也正是牌照识别系统困难与挑战所在。为了提高识别率,除了不断完善识别算法,还应该想办法克服各种光照条件,使采集到图像最利于识别。3 车牌识别系统程序设计图像读取及车牌区域提取主要有:图像灰度图转化、图像边缘检测、灰度图腐蚀、图像平滑处理以及车牌区域边界值计算。其程序流程图如下: 输入车牌图象灰度校正平滑处理提取边缘 图 3.1 预处理及边缘提取框图 目前比较常用图像格式有*.BMP、*.JPG、*.GIF、*.PCX、*.TIFF 等,本课题采集到图片是*.JPG 格式。因为使用*.JPG图像时有一个软件开发联合会组织制定、有损压缩格式,能够将图像压缩在很小储存空间,而且广泛支持 Internet 标准,是面前使用最广图片保存与传输格式,大多数摄像设备都以*.JPG格式保存。利用图像工具箱Car_Image_RGB=imread(Image_Name);即可将图像读取出来,这样读取得到是RGB图像,RGB图像分别用红、绿、蓝三个色度值为一组代表每个像素颜色,因此Car_Image_RGB是一个数组,m、n表示图像像素行、列数。我国车牌颜色及其RGB值如下,蓝底(0,0,255)白字(255,255,255)、黄底(255,255,0)黑字(0,0,0)、黑底(0,0,0)白字(255,255,255)、红底(255,0,0)黑字(0,0,0),由于车牌底色不同,所以从RGB图像直接进行车牌区域提取存在很大困难,但不管哪种底色车牌,其底色及上面字符颜色对比度大,将RGB图像转化成灰度图像时,车牌底色跟字符灰度值会相差很大。例如蓝色(255,0,0)及白色(255,255,255)在R通道中并无区分,而在G、R 通道或是灰度图象中数值相差很大。同理对白底黑字牌照可用R 通道,绿底白字牌照可以用G 通道就可以明显呈现出牌照区域位置,便于后续处理。原图、灰度对于将彩色图象转换成灰度图象时,图象灰度值H可由下面公式计算: (3.1) (3.2)(3.1)式使用了权值加重法,(3.2)式使用均值法,使用权值法好处是可以突出某个通道,Matlab内RGB转灰度图函数rgb2gray()就是使用(3.1)式权值比例公式,这样就可以利用边缘检测方法,识别出临近区域灰度值相差大分界区。通过程序运行其效果图见图3.2与图3.3:图 3.2 原始图像图 3.3灰度图像由原图与灰度图运行结果可知,能清晰地读出原彩色图样,通过图形对比分析,原始图中车牌区域灰度明显不同于其他区域,蓝底部分最为明显。经过程序运行出来灰度图可以比较容易识别出车牌区域,达到了预期灰度效果。 在Matlab中利用函数edge()实现边缘检测,具体用法如下所示:Car_Image_Bin=edge(Car_Image_Gray,'robert',0.15,'both');在edge()函数中有Sobel算子,Prewitt算子,Roberts算子,Log算子,Canny算子及Robert算子,几种算法相比之下,Roberts算子是一种最简单算子,是一种利用局部差分算子寻找边缘算子,他采用对角线方向相邻两象素之差近似梯度幅值检测边缘。检测垂直边缘效果好于斜向边缘,定位精度高,对噪声敏感,无法抑制噪声影响。 因此本课题使用了Robert算子。由于Roberts边缘检测算子是一种利用局部差分算子寻找边缘算子, 根据任一相互垂直方向上差分都可用来估计梯度,Robert 算子采用对角方向相邻两像素之差,其计算公式如下: (3.3) (3.4)其幅值为: (3.5)Robert梯度以为中心,所以他度量了点处与方向(相互正交)灰度变化。适当取门限T,做如下判断:,(x,y)为阶跃状边缘点。Roberts边缘检测算子相当于用与:图 3.4 边缘效果图从边缘效果图可以看出,经过处理以后车牌轮廓已经非常明显了,车牌区域及汽车标志边缘呈现白色条纹,基本上达到了边缘检测效果。但是,在车牌附近其他区域也由于各种干扰影响,也存在一些白色区域。所以要对图像做进一步处理,用灰度图腐蚀来消除多余边界点。所谓腐蚀即一种消除边界点,使边界向内部收缩过程。利用它可以消除小而且无意义物体。腐蚀规则是输出图像最小值是输入图像领域中最小值,在一个二值图像中,只要有一个像素值为0,则相应输出像素值为0。假设B对X腐蚀所产生二值图像E是满足以下条件点(x,y)集合:如果B原点平移到点(x,y),那么B将完全包含于X中。本系统使用imerode()函数,Car_Image_Erode=imerode(Car_Image_Bin,Se);其中结构元素Se又被形象成为刷子,用于测试输入图像,一般比待处理图像小很多。结构元素大小形状任意,一般是二维。二维结构元素为数值0与1组成矩阵,结构元素中数值为1点决定结构元素领域像素在进行腐蚀操作时是否需要参加运算。结构元素太大,会造成腐蚀过度,造成信息丢失,太小起不了预期效果,这里使用矩阵线性结构元素,即。腐蚀后如图:图 3.5 腐蚀效果图从腐蚀结果分析,腐蚀目是消除小而无意义物体,对比边缘效果检测图及腐蚀效果图可以看出,在边缘检测图中还有小无意义图像已经被完全消除了,留下来仅仅是车牌区域以及车标志。已经得到了车牌图像轮廓线了,只要再经过适当处理即可把车牌提出出来。得到车牌区域图像轮廓线后,由于图像数字化误差与噪声直接影响了脚点提取,因此在脚点提取之前必须对图像进行平滑处理,Matlab有一个图像平滑处理函数imclose(),它及开运算相反,融合窄缺口与细长弯口,去掉小洞,填补轮廓上缝隙。Car_Image_Perform=imclose(Car_Image_Erode,Se);结构单元中Se一个小于对象闭合图形,只要两个封闭域距离小于Se,就将这两个连接成一个连通域,Se生成方式采用Se=strel('rectangle',25,25);即Se是一个一个矩形,使用矩形是因为车牌是一个矩形,这样,可以是提取图像最接近预期效果。由于车牌图像经过腐蚀以后只剩下车牌区域以及车标志。在程序运行图像平滑后效果如下:图 3.6 平滑处理后效果 从平滑后效果图分析,达到了预定目标。消除了图像数字化误差与噪声对脚点直接提取影响。图像平滑处理了,可能会有多个闭合区域,对于不是车牌区域必须予以删除,Matlab提供了一个函数bwareaopen(),用于删除二值图像中面积小于一个定值对象,默认情况下使用8邻域,Car_Image_Perform2=bwareaopen(Car_Image_Perform,2000);这样,Car_Image_Perform中面积小于2000对象都被删除了。小对象被删除后图像如图3.7所示:图 3.7 移除小对象后效果图 移除小对象后效果图已经非常明显了,图像中最后只存在车牌区域,其他图像已经完全滤除掉了,包括小物体,车标志等影响已经没有了。在将原始图像进行二值化,然后轮廓平滑处理后,图像每个点为两个离散值中一个,这两个值代表开(1)及关(0),即只有黑及白特殊灰度图像,并且整个图像只有两个域(如果有多个域需改变参数后重新进行一此剔除干扰对象处理),全1域即为车牌区域,并且近似矩形,长宽比为4.5:1,也可以用这两个特性去检验提取区域是否为车牌区域。经区域确定了,即可将车牌四个边界值确定下来。这里采用水平及垂直双向投影法。水平坐标确定,先定义一个数组,其中为原始图像宽度值,然后将二值图像垂直投影到轴。从直方图中基本可以看书水平方向上两个分界线,为了便于处理,该课题将像素值临界值定量化,取值5个像素。从左向右寻找第一个1值像素大于5坐标为水平方向左侧分界线,从右向左寻找到第一个1值像素量大于5为右侧分界线,程序可以用for循环语句。垂直方向分界线可用同样方法实现。分界线计算后,即可从原图像中剪切出只包含车牌区域图像。剪切得到图像如下。图3.8为二值图切割车牌区域,图3.9为RGB图像切割出来图像:图 3.8 车牌区域二值图裁减图像图 3.9 原图中车牌区域图像 对比原始图像及二值图裁减图可以看出,车牌四个边界值基本上被确定下来了,这样就可以从原始图像中直接确定车牌区域了。所以车牌就成功地被提取出来了。3.2 字符切割由于图像车牌号区域提取后获得是从原始图像中剪切,是RGB图像,分割同样采取投影法,故同样需要先将RGB图像转换成灰度值,再将灰度图转化成二进制图,转化方法就是限定一个阀值,如果大于阀值则为1,小于阀值为0,阀值采用全局阀值,全局阀值是指整幅图像都采用相同阀值T处理,适用于背景与前景有明显对比图像。虽然图像间受背景、光照等影响存在较大差异,但计算简单,程序运算效率高。在Matlab实现方式如下:T=round(License_Image_Gray_max-(License_Image_Gray_max-License_Image_Gray_min)/3); 同时采集大图像噪点依然存在,因此可以通过处理图像低频部分来锐化图像。这里采用高通滤波算法。由此可得出滤波前后图像如下所示: 图 3.10 车牌区域图像滤波前效果图 3.11 车牌区域图像滤波后效果可以对比滤波前跟滤波后图像,如图3.10与图3.11所示,很明显,不但噪声去除了,而且图像得到了锐化。腐蚀已经在在上文介绍,膨胀刚好及腐蚀相反,运算规则是输出图像像素值是输入图像邻域中最大值,在一个二值图像中,只要一个像素值为1,则相应输出像素值为1。根据经验值,车牌图像中,字符面积及车牌面积之比在(0.235,0.365)之间,因此计算字符面积及车牌面积比值,如果大于0.365则对图像进行腐蚀,如果小于0.235则对图像进行膨胀,在这里结构元素Se使用一个二维单位矩阵。对于此对象,系统给予膨胀处理,效果图如图3.12所示:图 3.12 车牌区域图像腐蚀、膨胀后效果完成牌照区域定位后,再将牌照区域分割成单个字符,然后进行识别。字符分割一般采用垂直投影法。由于字符在垂直方向上投影必然在字符间或字符内间隙处取得局部最小值附近,并且这个位置应满足牌照字符书写格式、字符、尺寸限制与一些其他条件。利用垂直投影法对复杂环境下汽车图像中字符分割有较好效果。 计算水平投影进行车牌水平校正去掉车牌的框架 分析垂直投影找到每个字符中心位置按左右宽度切割出字符 图 3.13 牌照字符切割框图2007年颁布我国车牌规范(普通中小型汽车)规定车牌总长440mm,牌照中7个字符实际总长为409mm 左右,宽140mm,每个字符45mm宽,90mm高,字符间距为10mm,其中第二个字符及第三个字符间距较为特殊,为,最后一个字符及第一个字符距边界25mm。这样,如果平均分配每个字符在牌照中占据宽度,那么每个字符宽度为:width/7(width 为车牌图像宽度)。但是,实际上,第二个第三个字符之间存在一个黑点,牌照左右两边及图像边缘也都有一定宽度,所以每个字符宽度应该小于width/7。考虑所有情况,一般情况下最小宽度为width/9。因此,字符宽度可以从width/9 到width/7 之间渐进变化得到,程序流程图。字符切割流程图如下图所示: 开始车牌二值图像切除周边空白垂直投影从左往右查找,垂直投影白色像素点累计小于10的值的wide以水平区域(0,wide)剪切出判断是否为标准字符保存这个字符将剩余部分保存并覆盖原先图像字符个数是否为7结束YNNY图 3.14 字符切割流程图字符分割一般采用垂直投影法。在这之前还必须切除周边空白,由于字符在垂直方向上投影必然在字符间或字符内间隙处取得局部最小值附近,并且这个位置应满足牌照字符书写格式、字符、尺寸限制与一些其他条件。利用垂直投影法对复杂环境下汽车图像中字符分割有较好效果。经过切割,切割字符图像如下:图 3.15 经切割七个字符切割后一连串字符串变成了单个字符,为后面字符匹配识别奠定了基础。3.3 字符识别目前字符识别方案有使用神经网络与模板匹配法进行比对。人工神经网络是模拟人脑思维功能与组织建立起来数学模型,虽然现在神经网络正在迅速发展,但总体来说应用还是相对复杂。模板匹配法虽然识别率低,但实现简单,计算量小,只有矩阵加减及统计,而且车牌字符是有阿拉伯数字,英文大写字母,还有部分汉字,虽有字库量不大,字符较规整时对字符图像缺损、污迹干扰适应力强且识别率相当高,因此本课题使用这种方法。对于模板匹配,首先建立标准模板库,库中字符使用统一尺寸,这里使用。由于图像采集时图像像素值不一样,经切割出来字符大小也会不一样,所以在进行匹配前必须先进行字符图像归一化。使图像字符大小跟模板图像大小一致,Matlab提供一个改变图像大小函数imresize(I,Size,Model),Model是插值运算方法,这里选用'nearest'最近邻插值法,经归一化后图像如下。图 3.16 经归一化后七个字符切割字符经过归一化之后,每个字符大小基本一致,由此便解决了像素值不一致带来问题,并且利于与库中字符进行匹配比较。字符匹配识别是要前提要简历可以及之相比较字库表,再将已切割并进行了归一化处理单个字符相比较,逐个字符进行匹配比较,再将待识别字符特征值与模板字符相减,找到相减值为最小那个即为匹配得最好字符。字符识别步骤如下:建立模板字库表读取分割出来的字符第一个字符与模板中的汉字模板进行匹配第二个字符与模板中的字母模板进行匹配待识别字符与模板字符相减,值越小相似度越大,找到最小的一个即为匹配的最好的识别完成,输出此模板对应值后5个字符与模板中的字母与数字模板进行匹配图 3.17 字符匹配框图字符匹配准确度是车牌识别中关键部分,所以首先要简历精准有效模板字库表,便于切割完字符及库中内容相比较,接下来是读取切割字符,从第一个字符开始一次及库中字符相比较匹配,切割后字符特征值及库中模板字符相减,找到值最小那个就是匹配得最恰当字符。匹配方法采用将目标图像及模板图像逐点做差,得到第三幅图像,程序实现如下for ii=1:40 or jj=1:20 Word_Image_Diff(ii,jj)=Word_Image(ii,jj)-Word_Image_Code(ii,jj); endend最后计算第三幅二进制图像中像素值为1个数,数值最小即为匹配出来结果,经对比可得相似度最高数字图 3.18 字符相似度比较如图3.18所示:第一个字符在Lib_Code_No=39处取得最大相似度,查字库Lib_Code_No=39字符为“鲁”,则可以确定该字符为“鲁”,同理可得出其他6个字符。4 仿真结果及分析4.1 车牌定位及图像读取及其图像处理车牌定位后系统边缘检测仿真结果图如下图所示:图 4.1 图像读取及检测结果图结果分析:图像车牌区域提取就是从原图中截取含车牌部分,即RGB图像,然后进行字符切割及识别。为了去除图像中噪声点必须对截取图像进行滤波处理,经滤波后,不仅去除了噪声,并且使图像得到了锐化。经过这些步骤可以使得最终识别出图像及原图相似度更高,即结果更精确。仿真结果也使得车牌部分从原图被准确提取出来了,达到了车牌定位及图像读取及其图像处理目。4.2 车牌字符分割及其图像处理对经边缘检测扫描后图像经字符切割后图像如下图所示:图 4.2 字符分割及归一化结果图结果分析:从MATLAB编程运行结果看,便于图像进行匹配识别,必须先将连续字符切割成单个字符,并且在切割字符之前要将周边空白切除掉。由以上结果图可以看到,车牌被切成只含字符部分,并且七个字符被切成清晰七个字符,实现了字符切割。由右侧归一化图像可以看出,切割出图像像素值与模板图像达到了一致,由此便避免了切割出图像像素值不一致所带来问题。4.3 车牌字符识别及其图像处理图像经上述处理后再进行识别,次图像与原图有一定差异,其字符相似度曲线成一定规律,其曲线图如下图所示:图 4.3 字符识别结果图结果分析:字符识别是这样一个过程,根据建立模板字符库将分割出来字符与模板库中字符一一匹配,将切割字符与模板相减得到一个差值,差值越小表明字符匹配程度越高。由图4.3可知,字符匹配识别难易程度不一致,但总体能识别出汉字、字母与数字。5 结论本课题对车牌识别系统软件部分进行了研究,分别从图像预处理、车牌定位、字符分割以及字符识别等方面进行了系统分析。主要工作内容及结论如下: (1)整理与总结了国内外在车牌定位、分割、字符识别方面研究成果与发展方向,系统介绍了我国车牌固有特征,以及车牌识别特点。 (2)在车牌定位我们采用基于灰度跳变定位方法,采用先对图像进行预处理,再进行二值化操作方法。实验表明本方法既保留了车牌区域信息,又减少了噪声干扰,从而简化了二值化处理过程,实验表明本方法既保留了车牌区域信息,又减少了噪声干扰,从而简化了二值化处理过程,提高了后续处理速度。(3)基于彩色分量定位方法,运用基于蓝色象素点统计特性方法对车牌是蓝色车牌进行定位。实验表明,用该方法实现车牌定位准确率较高。(4)用MATLAB编程运行结果可以得出,本设计采用图像预处理、边缘检测、开闭运算子、车牌长宽比特征识别等对车牌定位都是非常有效,而本设计提出二次水平投影分析与阈值技术有效检测了车牌图像上下左右边框、旋转角度,准确实现车牌字符分割,对多个车牌进行实验,均有很高正确率。本设计虽然只对蓝底白字车牌进行分割识别,对黑底白字车牌原则上整个算法可直接适用,对白底黑字车牌、黄底黑字车牌,需要对车牌定位算法进行调整,并将图像反转(0变1、1变0),而车牌字符分割算法仍然行之有效。因此,本设计提出车牌字符分割算法实验证明是准确、有效、可行。附录:程序清单function d=main(jpg)close allclc%I=imread('car1.JPG');I=imread('chepai.jpg');figure(1),imshow(I);title('原图')I1=rgb2gray(I);figure(2),subplot(1,2,1),imshow(I1);title('灰度图');figure(2),subplot(1,2,2),imhist(I1);title('灰度图直方图');I2=edge(I1,'robert',0.15,'both');figure(3),imshow(I2);title('robert算子边缘检测')se=1;1;1;I3=imerode(I2,se);figure(4),imshow(I3);title('腐蚀后图像');se=strel('rectangle',25,25);I4=imclose(I3,se);figure(5),imshow(I4);title('平滑图像轮廓');I5=bwareaopen(I4,2000);figure(6),imshow(I5);title('从对象中移除小对象');y,x,z=size(I5);myI=double(I5);tic Blue_y=zeros(y,1); for i=1:y for j=1:x if(myI(i,j,1)=1) Blue_y(i,1)= Blue_y(i,1)+1;%蓝色像素点统计 end end end temp MaxY=max(Blue_y);%Y方向车牌区域确定 PY1=MaxY; while (Blue_y(PY1,1)>=5)&&(PY1>1) PY1=PY1-1; end PY2=MaxY; while (Blue_y(PY2,1)>=5)&&(PY2<y) PY2=PY2+1; end IY=I(PY1:PY2,:,:); % X方向 % Blue_x=zeros(1,x);%进一步确定x方向车牌区域 for j=1:x for i=PY1:PY2 if(myI(i,j,1)=1) Blue_x(1,j)= Blue_x(1,j)+1; end end end PX1=1; while (Blue_x(1,PX1)<3)&&(PX1<x) PX1=PX1+1; end PX2=x; while (Blue_x(1,PX2)<3)&&(PX2>PX1) PX2=PX2-1; end PX1=PX1+50;%对车牌区域校正 PX2=PX2-50; PY1=PY1+45; PY2=PY2-45; dw=I(PY1:PY2-8,PX1:PX2,:); t=toc; figure(7),subplot(1,2,1),imshow(IY),title('行方向合理区域');figure(7),subplot(1,2,2),imshow(dw),title('定位剪切后彩色车牌图像')imwrite(dw,'dw.jpg');=uigetfile('dw.jpg','输入一个定位裁剪后车牌图像');jpg=strcat();a=imread('dw.jpg');b=rgb2gray(a);imwrite(b,'1.车牌灰度图像.jpg');figure(8);subplot(3,2,1),imshow(b),title('1.车牌灰度图像')g_max=double(max(max(b);g_min=double(min(min(b);T=round(g_max-(g_max-g_min)/2); % T为二值化阈值m,n=size(b);d=(double(b)>=T); % d:二值图像imwrite(d,'2.车牌二值图像.jpg');figure(8);subplot(3,2,2),imshow(d),title('2.车牌二值图像')figure(8),subplot(3,2,3),imshow(d),title('3.均值滤波前')% 滤波h=fspecial('average',3);d=im2bw(round(filter2(h,d);imwrite(d,'4.均值滤波后.jpg');figure(8),subplot(3,2,4),imshow(d),title('4.均值滤波后')% 某些图像进行操作% 膨胀或腐蚀% se=strel('square',3); % 使用一个3X3正方形结果元素对象对创建图像进行膨胀% 'line'/'diamond'/'ball'.se=eye(2); % eye(n) returns the n-by-n identity matrix 单位矩阵m,n=size(d); d=imerode(d,se); d=imdilate(d,se);endimwrite(d,'5.膨胀或腐蚀处理后.jpg');figure(8),subplot(3,2,5),imshow(d),title('5.膨胀或腐蚀处理后')% 寻找连续有文字块,若长度大于某阈值,则认为该块有两个字符组成,需要分割d=qiege(d);m,n=size(d);figure,subplot(2,1,1),imshow(d),title(n)k1=1;k2=1;s=sum(d);j=1;while j=n while s(j)=0 j=j+1; end k1=j; while s(j)=0 && j<=n-1 j=j+1; end k2=j-1; if k2-k1>=round(n/6.5) val,num=min(sum(d(:,k1+5:k2-5); d(:,k1+num+5)=0; % 分割 endend% 再切割d=qiege(d);% 切割出 7 个字符y1=10;y2=0.25;flag=0;word1=;while flag=0 m,n=size(d); left=1;wide=0; while sum(d(:,wide+1)=0 wide=wide+1; end if wide<y1 % 认为是左侧干扰 d(:,1:wide)=0; d=qiege(d); else temp=qiege(imcrop(d,1 1 wide m); m,n=size(temp); al

    注意事项

    本文(基于Matlab的车牌识别系统设计论文完整.doc)为本站会员(叶***)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开