基于MATLAB的高速公路车牌识别系统(共35页).doc

上传人:飞****2 文档编号:13583182 上传时间:2022-04-30 格式:DOC 页数:35 大小:863KB
返回 下载 相关 举报
基于MATLAB的高速公路车牌识别系统(共35页).doc_第1页
第1页 / 共35页
基于MATLAB的高速公路车牌识别系统(共35页).doc_第2页
第2页 / 共35页
点击查看更多>>
资源描述

《基于MATLAB的高速公路车牌识别系统(共35页).doc》由会员分享,可在线阅读,更多相关《基于MATLAB的高速公路车牌识别系统(共35页).doc(35页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、精选优质文档-倾情为你奉上基于MATLAB的高速公路车牌识别系统第一章 绪论本书主要讨论的是一种高速公路车牌识别系统的设计与实现方法。车牌识别系统是不停车电子收费系统得重要构成部分,而后者又是智能运输系统的核心应用之一。1.1 车牌识别系统介绍车牌识别技术(Vehicle License Plate Recognition,VLPR)是计算机视觉和模式识别技术在现代智能交通系统中的一项重要研究课题,是实现交通管理智能化的重要环节,它是以数字图像处理、模式识别、计算机视觉等技术为基础的智能识别系统,它利用每一个汽车都有唯一的车牌号码,通过摄像机锁拍摄的车辆图像进行车牌号码的识别。在不影响汽车状态

2、的情况下计算机自动完成车牌的识别,从而降低交通管理工作的复杂度。自动车牌识别在车辆管理和交通安全管理中具有十分重要的意义。根据公安部科技强警的战略目标,北京优特桥电子技术有限公司和清华大学合作,投资150多万,经过三年多的联合开发,终于将多媒体网络车牌识别系统研制成功。多媒体网络车牌识别系统作为公安部重点攻关项目之一,在查辑犯罪车辆、控制违法违规车辆等公安工作中发挥了重要作用,是实现畅通工程的重要技术保证。2000年6月,公安部科技局组织有关专家对多媒体网络车牌识别系统进行了技术鉴定。公安部领导和技术专家对该系统的先进性、实用性给予了充分的肯定,并指出:该系统综合了车牌牌号自动识别技术、多媒体

3、技术、分布式网络数据库管理技术等先进技术,建成了我国第一套试用于实战的警务系统。该系统中采用的金字塔特征流快速搜索匹配算法(FP-SAMA)达到了国际先进水平。该系统已经在河北、厦门等地投入了实际工程运用,收到了良好的社会效益。实践证明,该系统确实具有良好的推广价值和广泛的应用前景。1.2 车牌识别系统的应用车牌自动识别技术在车辆过路、过桥全自动不停车收费、交通流量控制指标的测量、车辆自动识别、高速公路上的事故自动测报、不停车检查、车辆定位、汽车防盗、稽查和追踪车辆违规、违法行为、维护交通和城市治安、防止交通堵塞、提高收费路桥的服务速度、缓解交通紧张状况等方面将会起到积极的作用。多媒体网络车牌

4、识别系统是一个分布式网络数据库环境下的实时响应系统,运行在WindowsNT环境下.它由三个主要部分组成,包括卡口图像识别子系统、指挥中心数据管理子系统和拦截监控子系统。卡口车辆图象信息采集CCD获取实时车牌图像数据后,系统在极短时间内(1秒左右)完成图像识别、车数据入库、图像数据入库、检索数据等处理。如果发现通过车辆是公安机关需要查找的车辆(如被盗抢车辆),系统通过远程数据网络,向指挥中心和拦截站发出告警信息,通知有关部门或有关人员。告警信息包括:发现可疑车辆的时间、地点、车牌号码、抓拍的车辆照片、车辆被缉查的原因等1.3 MATLAB的简介MATLAB 是美国MathWorks公司出品的,

5、用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。MATLAB是矩阵实验室(Matrix Laboratory)的简称,和、并称为三大数学软件。它在数学类科技应用软件中在方面首屈一指。MATLAB可以进行运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、金融建模设计与分析等领域。MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完相同的事情简捷得多,并且mathwo

6、rk也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。在新的版本中也加入了对,的支持。可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用,此外许多的MATLAB爱好者都编写了一些经典的程序,用户可以直接进行下载就可以用。20世纪70年代,美国新墨西哥大学计算机科学系主任Cleve Moler为了减轻学生编程的负担,用FORTRAN编写了最早的MATLAB。1984年由Little、Moler、Steve Bangert合作成立了的MathWorks公司正式把MATLAB推向市场。到20世纪90年代,MATLAB已成为国际控制界的标准计算

7、软件。第二章 系统概述2.1 系统构成本地数据处理中心的组成: 该数据处理中心包括一台数据库服务器和若干台车牌识别系统工作站。每台车牌识别系统工作站由一部(CCD)摄象机、一组照明设备和一套高速图像识别处理软件组成。数据处理中心通过光缆与拦截站报警终端连接。指挥中心数据处理中心的组成:该指挥中心数据处理中心包括一台数据库服务器和一台车牌识别监视系统工作站。一般通过DDN信道与本地数据处理中心连接。拦截站的组成:由一台拦截响应工作站构成。一般通过光缆与本地数据处理中心连接。2.2 系统工作原理高速公路车牌识别系统主要友五部分组成。第一部分:图像获取。在这个部分中我们通过在道路两侧安装高分辨率的摄

8、像机对过往的车辆进行动态或静态抓拍,再通过图像采集卡采集当前的图像并形成图像数据组存储在计算机重,此时存储在计算机中的图像是彩色图像。第二部分:图像处理。由于在第一部分重我们得到的图像是彩色图像,其颜色种类较多,不利于图像处理,因此我们将彩色图像转换为灰度图像进行处理。应用MATLAB中的函数(rgeb2gray)可以实现图像转换。经过转换后的灰度车牌图像通常都是数字灰度图像,其灰度值为0225。为了将车牌图像中的字符与背景分离,常采用二值化技术将数字灰度图像转换为数字二值图像,应用MATLAB中的函数(im2bw)可以实现这一转换。二值图像是一种所有像素值只能在两种可能的离散值重取其一的图像

9、,也称黑白图像。本质上讲,这两个可能的像素值分别对应0和1,以这种方式来操作图像可以更加容易地识别出图像的结构特征。在整个系统中二值化很关键,直接影响到后面的分割与识别,因为字符的分割是识别是基于车牌区域的二值化结果进行的。二值化技术又称做阈值化技术,其目的就是要找出一个合适的阈值,将待研究的区域划分为前景和背景两部分。二值化后的车牌要能再现原字符图像,基本不出现笔画断裂和粘连现象,尽量不丢失原字符的特征。另外,二值化算法还可以用于精确定为车牌的上下左右边界。第三部分:图像分割。这一部分是整个系统的核心部分,如果图像不能准确的分割出来将会直接影响最终能否识别出车牌,即识别率的高低。图像分割就是

10、目标与背景的先验知识(西方哲学家将只是分为两种:先验和后验。先验意味着仅凭推理得到的知识(先验经验观察),而不受直接或间接经验(这里经验通常指通过感官对于世界的观察)的影响。后验指其他种类的知识,也就是知识的的来和证实需要需要借助经验(经验观察之后),也被称做经验知识),对图像中的目标、背景进行标记、定位,然后将待识别的目标从背景或其他伪目标中分离出来。图像分割是图像提取的重要组成部分,只有有效的完成分割才能进一步提取目标特征并识别目标。第四部分:字符识别。对于车牌字符识别,目前最常用的方法是基于神经网络和模板匹配的方法。基于神经网络的车牌字符识别方法对于解析度较高(车牌高度不小于120个像素

11、)和图像比较清晰的车牌能有效的识别车牌中的字符,但是对于较底解析度和较为模糊的车牌则显得无能为力。现已有一种在模板匹配的基础上改进的方法进行字符识别,使对车牌字符的识别性能得到了改进。第五部分:数据库管理。首先需要建立一个大型的数据库,在这个数据库中存储一定数量的车牌号码及这些车的一些相关资料。通过前面的步骤,已把车牌提取出来,接下来将提取的车牌号码与数据库中存储的车牌号码进行比较,如果相同系统就会自动找到该车牌并显示相关信信息;如果不同,说明系统中没有该车牌的记录,此时系统会自动储存该车牌号码,以备需要。第三章 车牌识别系统设计3.1系统实现框图传统的车牌识别系统主要采用摄像头、视频采集卡、

12、工控机几个主要模块搭建出来的方法来实现,其优势是实现容易,但是成本高、实时性不强、安装和维护不便。而在本文系统设计中,摒弃了传统的模式,采用TI公司的TMS320C6713B高性能(强大的并行运算能力)DSP作为识别算法的运行硬件平台,Altera公司性价比很高的Cyclone系列EP1C12Q240型号的FPGA作为协调整个系统的工作与相关的图像采集及控制,再加上一些外围器件(FLASH、SDRAM等)共同构成本嵌入式车牌识别系统硬件平台,如图3-1所示。与传统的车牌识别系统不同,该系统无需计算机即可实现车牌图像的采集、识别、输出结果,具有识别性能高、环境适应性强、安装维护简单、成本低等特点

13、。其中采用以DSP和FPGA作为核心的系统设计最大优点是结构灵活、通用性强、适合于模块化设计,从而能够实现高效率的算法和实时控制;同时其开发过程可以并行运行。图3-1嵌入式车牌识别系统硬件平台3.2车牌区域定位车牌图像的区域定位部分是将输入的图像去掉彩色信息,进行灰度化,并对采集的图像进行增强、恢复、变换,目的是突出车牌的最主要特征,以便更好的提取车牌。灰度图像(GrayScale)是指只包含亮度信息、不包含色彩信息的图像,例如平时看到的亮度由暗到亮连续变化的黑白照片。根据实时性要求,车牌定位提取应具有较高的鲁棒性,从一整幅图像包括车身、背景中提取车牌,需要抓住车牌的最主要特征,牌照区域具有不

14、同于背景区域的特征,利用车牌底色和车牌字符的灰度或颜色信息差别和车牌区域中灰度变化频率较高,以及车牌有一定的宽度和高度、宽高比满足一定的要求等,进行车牌的定位分割,它是一种简单、可靠,能满足实时性要求的方法。对预处理后的图像每一行按照式进行后向差分绝对值运算:由于牌照区域含有多次的灰度变化,通过累加差分后的每一行图像可以得到一条曲线,曲线的若干个极大值所在波峰就是车牌可能存在的垂直位置。然后对预处理后图像的每一列按照式进行同样的处理。可以得到若干个车牌可能存在的水平位置。交叉匹配后能够得到若干个车牌可能存在的具体位置。这种算法有可能会得到若干个无法区分的车牌区域,也可能一个车牌区域都找不到。我

15、们对这种算法进行改善,就有了移动窗口算法。3.3车牌字符分割字符分割与识别是先将车牌区域分割成单个的字符,然后再进行识别,难点是模糊、断裂的字符的识别。字符分割目前一般采用垂直投影法。由于字符块在竖直方向上的投影必然在字符间或字符内的间隙处取得局部最小值,因此字符的正确分割位置应该在上述局部最小值的附近,并且这个位置应满足车牌的字符书写格式、字符尺寸限制和一些其他条件。利用垂直投影法,对复杂环境下的汽车图像中的字符分割有较好的效果。 字符识别方法目前主要有基于模板匹配算法和基于人工神经网络算法。基于模板匹配算法首先把待识别字符二值化并将其尺寸大小缩放为字符数据库中模板的大小,然后与所有的模板进

16、行匹配,最后选最佳匹配作为结果。由于这种匹配算法稳定性较差、时间花费也较大,因此在此基础上提出了基于关键点的匹配算法。此算法先对待识别字符进行关键点提取,然后对关键点去噪,最后再确定字符的分类。这种匹配算法只利用了字符的关键点进行匹配,因此提高了识别速度又具有较高的识别率。基于人工神经网络的算法主要有两种:一种是先对待识别字符进行特征提取,然后用所获得的特征来训练神经网络分类器;另一种方法是直接把待处理图像输入网络,由网络自动实现特征提取直至识别出结果。前一种方法识别结果与特征提取有关,而特征提取比较耗时,因此特征提取是关键。后一种方法无须特征提取和模板匹配,随着相关技术的进步,这种方法更实用

17、。车牌字符分割是车牌识别中比较重要的一个环节。如何准确而迅速地找出车牌的位置,一直是个热门话题,目前提出来的研究方法也很多,主要是基于灰度特征分析的方法,因为基于彩色信息的方法计算量大并且受图像亮度影响大。比较成熟的有统计的投影直方图,使用Hough变换检测边缘,小波分析等。统计投影直方图法虽然简单,但是效果最差;Hough检测边缘的方法速度较快,但不能应对车牌有形变的情况;小波分析的方法技术含量最高,但运算量大,速度最慢。本文提出一种二值化图像梯度边缘检测法,并在Matlab中实现。二值化技术又称为阈值化技术,其目的就是要找出一个合适的阈值,将待研究的区域划分为前景和背景两部分。经过转换后的

18、车牌灰度图像通常都是数字灰度图像,其灰度值为0225.为了将车牌图像中的字符与背景分离,常采用二值化技术将数字灰度图像转换为数字二值图像。二值化后的车牌要能再现原字符图像,基本不出现笔画断裂和粘连现象,尽量不丢失原字符的特征。另外,二值化算法还可以用在车牌定位过程中精确定位车牌的上下左右边界。该方法可以快速地对车牌区域进行定位,并将其分割出来。车牌分割流程如下图3-2所示。图3-2车牌分割流程字符分割与识别是先将车牌区域分割成单个的字符,然后再进行识别,难点是模糊、断裂的字符的识别。字符分割目前一般采用垂直投影法。由于字符块在竖直方向上的投影必然在字符间或字符内的间隙处取得局部最小值,因此字符

19、的正确分割位置应该在上述局部最小值的附近,并且这个位置应满足车牌的字符书写格式、字符尺寸限制和一些其他条件。利用垂直投影法,对复杂环境下的汽车图像中的字符分割有较好的效果。3.4车牌字符识别 别方法目前主要有基于模板匹配算法和基于人工神经网络算法。基于模板匹配算法首先把待识别字符二值化并将其尺寸大小缩放为字符数据库中模板的大小,然后与所有的模板进行匹配,最后选最佳匹配作为结果。由于这种匹配算法稳定性较差、时间花费也较大,因此在此基础上提出了基于关键点的匹配算法。此算法先对待识别字符进行关键点提取,然后对关键点去噪,最后再确定字符的分类。这种匹配算法只利用了字符的关键点进行匹配,因此提高了识别速

20、度又具有较高的识别率。基于人工神经网络的算法主要有两种:一种是先对待识别字符进行特征提取,然后用所获得的特征来训练神经网络分类器;另一种方法是直接把待处理图像输入网络,由网络自动实现特征提取直至识别出结果。前一种方法识别结果与特征提取有关,而特征提取比较耗时,因此特征提取是关键。后一种方法无须特征提取和模板匹配,随着相关技术的进步,这种方法更实用。汽车牌照自动识别系统中的关键技术车牌区域定位技术和字符分割与字符识别技术现今发展都日趋成熟,且算法比较多。目前在实际应用中,车牌区域定位算法大多将自适应边界搜索法和灰度图像数学形态学运算法结合起来使用,以提高定位的精度;车牌字符识别算法大多采用运算速

21、度较快的人工神经网络算法。每一种算法均有其优缺点,只有经过工程实际检验的算法,才是最佳的算法。3.5图像边缘检测边缘检测是为了检测出图像的边缘,而非边缘区域将被去掉。本文将梯度边缘增强引入到二值化图像中,也就是说,在图像中亮度没有发生突变的区域,将会变黑。公式如下: 3-5-1其中B(i,j)表示二值化图像每点所对应的象素的二值化亮度值,E(i,j)表示经过边缘检测后新图像中每个点所对应象素的二值化亮度值。这种方法将图像向右移一个象素,然后用原图像减去平移后的图像;再将图像向下移一个象素,然后再用原图像减去平移后的图像。取两个平移后的结果的绝对值,然后再相加。在二值化图像中,因为大于1的数也是

22、显示白色,那么用这种方法对图像进行边缘检测后,发生突变的地方在新图像中将为白色。这种边缘检测方法的优点是速度很快,而且将存在边缘的地方在图像显示上都得到了加强。效果如图3-3所示。图3-3边缘检测3.6 图像形态学处理及区域筛选车牌所在的区域含有丰富的边缘信息,而形态学的膨胀能使这些区域形成连通区域,以便进一步筛选。假设图像为X,结构元素为S,膨胀的定义为: 3-6-1普通的膨胀是扫描上面生成图像所有的象素,如果扫描的点为白色,那么则执行膨胀命令,比如文献6中,就使用于该点右下角mn矩形为膨胀结构元素,虽然这种方法可以形成连通区域,但是很容易使一些单独存在的细小线段变粗,也就是说,对线段多的图

23、像效果可能不会太好。而本文膨胀算法能很好地处理以上情况,不会使图3-4中无用细小线段变粗,而且能有效地消除细小线段。算法如下:图3-4图像形态学处理第(1)步是垂直方向的膨胀效果如上图a所示,第(2)步如上图b所示是水平方向的膨胀。第(3)步将一些细小线段,方便以后的处理,如上图c所示。相比普通的膨胀算法,这种膨胀算法可以最大限度地消除无效膨胀,并不是任何白象素点都会进行膨胀处理,而是在周围一定范围内存在其他白象素点才会再膨胀。3.7 CCRCCR(Connetcted Components Analysis)首先对连通区域标号,然后通过连通区域的筛选,最终得出几个车牌的候选区域。在连通区域的

24、判决过程中,主要是根据车牌图像的特征参数来决定是否保留。车牌在膨胀后图像中的特性为:车牌区域的白象素密度高。横边比纵边长。中国车牌的长宽比为40:14,经过形变后,一般会小于这个值。根据以上特性,CCR的算法如下:扫描图P2,如果碰到的目标象素的白象素点,有编号且为label,记录其的标号,然后进入(2)。继续扫描P2,只有所扫描的点标号为(1)步中所记录下的标号,才开始判决,并同时记录下连通区域最左最右的横坐标和最上最下的纵坐标,并保存在Xmin,Xmax,Ymin,Ymax。而且,每扫描一个目标点,则白象素点的个数number自动加1。如果|Xmin-Xmax|3。那么这个区域为非车牌区域

25、。如果number(XX*YY)M,那么这个连通区域也不是车牌区域。其中XX=Xmax-Xmin,YY=Ymax-Ymin。M一般为0.8以上,因为经过本文中的几步膨胀,车牌区域内的门象素所占百分比一般很高。label自加1,并跳到(2)。直到所有连通区域都经过以上几步以后才结束。设最后生成图像P3,如图d所示。3.8 蒙板判决在几何理论中,连通区域的宏观形态可以用他的拓扑性质来衡量。除撕裂或者扭接外,在任何变形下不改变的图像性质为拓扑性质。而图像的连通性和区域的空洞数是拓扑性质。欧拉数是一种区域的拓扑描述符,描述的是区域的连通行。对一个给定平面区域来说,区域内的连通组元(其中任何两点可用完全

26、在内部的曲线相连接的点集合)的个数C盒区域内的孔数H都是常用的拓扑性质,他们可被进一步用来定义欧拉数(Euler number),E=C-H。经过处理,图像最后只剩下一些车牌的候选区域,可能有很多只是连通区域类似于车牌区域,而且这些连通区域只有白色和黑色,如果把P3与最初生成的二值图像取交集,那么只有类似车牌的区域图像是有效的,然后再去分析每个区域内的欧拉数就可以了,这种处理叫做蒙板处理。根据文献8中的理论,当某一区域的欧拉数大于3的时候,就可以当作车牌区域,所以计算候选区域内的欧拉数如果小于3则不是车牌区域。不过,中国的情况与欧洲不同,欧洲的车牌全部由字母组成,也就是说,中国的车牌的欧拉数会

27、大于欧洲的,所以当设置蒙板筛选欧拉数阈值条件时,可以设置大一些,根据大量的实验,可以得知,中同的二值化车牌欧拉数一般大于8。具体方法可参考文献8。综上所述,车牌分割是车牌识别系统中一个很重要的环节,这个步骤的成功与否直接影响车牌识别的效果。总之,本文算法能较好地对车牌进行准备定位及分割,能为车牌识别系统提供可靠的保障。第四章 牌照图像的提取牌照图像提取的核心就是车牌区域的提取和字符的分割。本章详细介绍了利用MATLAB语言对这牌区域的定位提取和字符的分割等方面的处理。4.1 车牌区域提取4.1.1 车牌的分割从车辆图像中正确分割出牌照区域是牌照识别中最为关键的步骤之一。所谓图像分割,就是根据目

28、标与背景的先验知识,对图像中的目标和背景进行标记、定位,然后将待识别的目标从背景或其他伪目标中分离出来。图像分割是图像提取的重要组成部分,只有有效的完成分割,才能进一步提取目标特征并识别目标。在这里目标就是车辆牌照,所有的车辆牌照都具有一些共同特征。图像上有大量长短不一、类似直线与长方形的区域,还有一些灰度特征类似于文字区域的汽车厂商标志区域,如奥迪车类似于4个O组成的标志。牌照文字周围有一个类似于长方形的边框,其厚度不一,而且有断裂处,有时候弯曲度比较大。文字大小统一,排列成行,由于拍摄原因,有一定程度的倾斜,文字与背景之间有明显对度对比。根据处理牌照的类似性和特点,有多种牌照分割方法,如字

29、符竖向纹理统计、彩色分类、神经网络、矢量量化、模板匹配等。然而,由于汽车图像往往是在复杂的自然环境中得到的,所以很多分离方法都会失去作用。据统计,字符竖向纹理统计的分割方法能够对各类牌照图像实现很好的分割效果。4.1.2 车牌的定位车牌提取技术主要是将车牌图像部分从有背景的图片中分离出来的过程。由于整个图像车牌部分的字符颜色和车牌背景颜色差别很大,其灰度级分布有一定的规律和范围,并且车牌的高度具有一定的比例,因此可以将车牌从背景图片中分离出来。提取车牌可以采用如下方法:定牌照上下的边界的算法描述。首先设定门限为127,设定检测阈值为15(依据经验得到),然后对图像自上而下进行扫描,若某一行的0

30、1和10变化次数大于该阈值,则设其为待测车牌的最低点,继续扫描直至01和10变化次数小于阈值,将该阈值设为待测车牌的最高点。若最高点与做低点之差大于15,则认为目标已检测到,否则继续进行扫描;如果未检测到符合上述条件的目标,则自动调整门限值重复以上的操作,直到找到目标为止。定牌照左右边界的算法描述。在找到车牌的上下限后,利用二值图像在竖直方向上的投影作为特征,从左至右寻找目标的中心点坐标。考察以前所得的目标高度作为边长的正方形区域。4.2 车牌区域提取的MATLAB实现车牌分割是车牌识别中比较重要的一个环节。如何准确而迅速地找出车牌的位置,一直是个热门话题,目前提出来的研究方法也很多,主要是基

31、于灰度特征分析的方法,因为基于彩色信息的方法计算量大并且受图像亮度影响大。比较成熟的有统计的投影直方图,使用Hough变换检测边缘,小波分析等。统计投影直方图法虽然简单,但是效果最差;Hough检测边缘的方法速度较快,但不能应对车牌有形变的情况;小波分析的方法技术含量最高,但运算量大,速度最慢。本文提出一种二值化图像梯度边缘检测法,并在Matlab中实现。该方法可以快速地对车牌区域进行定位,并将其分割出来。流程如图4-1所示。图4-1车牌分割流程(1)图像二值化一般的车牌识别,预处理都是基于灰度图的,但是在通常情况下,车牌所在位置是亮度较高的区域。如果设置一个比较恰当的阈值,就可以生成一个含有

32、车牌信息的二值化图像,而在二值化图像的情况下运算,计算量将大大减少。具体方法如下: 4-2-1其中g(x,y)为图像中某一象素点的亮度。T为设置好的阈值,而阈值的确定是二值化的重点,本文采用Sauvola阈值分割法。T的设定将不是单一的按照亮度来决定,而图像的层次、平均亮度、纹理特征以及图像的逻辑构成都会影响T的大小,即使是污染严重而且是光照不好的图像也能很好地进行二值化处理。这种方法将是以象素点(x,y)为中心的bb窗口内求出亮度平均值和方差并经过一定运算求出T。如下式: 4-2-2其中m(x,y)和(x,y)为需要求出的平均值和方差。根据文献4中该公式可设定为K=0.5,R=128,b=1

33、0。效果如图4-2所示。4-2图像二值化(2) 图像边缘检测边缘检测是为了检测出图像的边缘,而非边缘区域将被去掉。本文将文献5中的梯度边缘增强引入到二值化图像中,也就是说,在图像中亮度没有发生突变的区域,将会变黑。公式如下: 4-2-3其中B(i,j)表示二值化图像每点所对应的象素的二值化亮度值,E(i,j)表示经过边缘检测后新图像中每个点所对应象素的二值化亮度值。这种方法的原理与文献5中的原理相似先将图像向右移一个象素,然后用原图像减去平移后的图像;再将图像向下移一个象素,然后再用原图像减去平移后的图像。取两个平移后的结果的绝对值,然后再相加。在二值化图像中,因为大于1的数也是显示白色,那么

34、用这种方法对图像进行边缘检测后,发生突变的地方在新图像中将为白色。这种边缘检测方法的优点是速度很快,而且将存在边缘的地方在图像显示上都得到了加强。效果如图4-3所示。4-3边缘检测第五章 字符识别本章介绍了字符识别的各种方法,重点讨论了用神经网络方法对车牌照字符的识别,用MATLAB完成了对车牌照数字识别的模拟,最后给出实验结果。5.1 引言字符识别是模式识别领域的一项传统的课题,这是因为字符识别不是一个孤立的问题,而是模式识别领域中大多数课题都会遇到的基本问题,并且在不同的课题中,由于具体的条件不同,解决的方法也不尽相同,因而字符识别的研究仍具有理论和实践意义。这里讨论的是用神经网络识别数字

35、的问题. 人工神经网络模式识别方法是近些年提出的新方法,为字符识别研究提供了一种新手段,它具有一些传统技术所没有的优点:良好的容错能力、分类能力强、并行处理能力和自学习能力。因而,采用神经网络识别方式是一种很好的选择。5.2 模式识别方法的比较针对模式特征的不同选择及其判别决策方法的不同,可将模式识别方法大致分为5大类。这5种识别方法均可实现字符识别,但它们特点不同,必须根据条件进行选择。统计模式法:对已知类别的模式样本进行各种特征的提取和分析,选取对分类有利的特征,并对其统计均值等按已知类别分别进行学习,按贝叶斯最小误差准则,根据以上统计特征设计出一个分类误差最小的决策超平面,识别过程就是对

36、未知模式进行相同的特征提取和分类,通过决策平面方程决定该特征相应的模式所属的类别。此方法比较成熟,能考虑干扰、噪声等的影响,识别模式基元能力强。但对结构复杂的模式抽取特征困难;不能反映模式的结构特征,难以描述模式的性质;难以从整体角度考虑识别问题。句法结构方法:分为训练过程和识别过程:训练过程就是用已知结构信息的模式作为训练样本,先识别出基元和它们之间的连接关系,并用字母符号表示它们,然后用构造句子的方法来描述生成这些场景的过程,并由此推断出生成该场景的一种文法规则;识别过程就是对未知结构的模式进行基元识别及其相互关系分析,然后用训练过程中获得的文法对其作句法分析,如果它能被已知结构信息的文法

37、分析出来,则该模式具有与该文法相同的结构,否则就可判定不是这种结构。此方法识别方便,可从简单的基元开始,由简至繁;能反映模式的结构特征,能描述模式的性质,对图像畸变的抗干扰能力较强,但当存在干扰及噪声时,抽取基元困难,且易失误。逻辑特征法:就是其特征的选择对一类模式识别问题来说是独一无二的,即在一类问题中只有1个模式具有某1种(或某1组合的)逻辑特征,此方法建立了关于知识表示及组织,目标搜索及匹配的完整体系;对需通过众多规则的推理达到识别目标的问题,有很好的效果,但当样品有缺损,背景不清晰,规则不明确甚至有歧义时,效果不好。模糊模式方法:就是在模式识别过程中引入了模糊集的概念,由于隶属度函数作

38、为样品与模板相似程度的量度,故能反映整体的、主要的特性,模糊模式有相当程度的抗干扰与畸变,从而允许样品有相当程度的干扰与畸变,但准确合理的隶属度函数往往难以建立。目前有学者在研究,并将其引入神经网络方法形成模糊神经网络识别系统。神经网络方法:就是使用人工神经网络方法实现模式识别。可处理一些环境信息十分复杂,背景知识不清楚,推理规则不明确的问题,允许样品有较大的缺损、畸变,神经网络方法的缺点是其模型在不断丰富完善中,目前能识别的模式类还不够多,神经网络方法允许样品有较大的缺损和畸变,其运行速度快,自适应性能好,具有较高的分辨率。5.3 神经网络字符识别系统神经网络的字符识别系统是神经网络模式识别

39、系统的一种,原理是一致的。一般神经网络字符识别系统由预处理,特征提取和神经网络分类器组成。预处理就是将原始数据中的无用信息删除,平滑,二值化和进行幅度归一化等。神经网络字符识别系统中的特征提取部分不一定存在,这样就分为两大类:有特征提取部分的:这一类系统实际上是传统方法与神经网络方法技术的结合,这种方法可以充分利用人的经验来获取模式特征以及神经网络分类能力来识别字符。特征提取必须能反应整个字符的特征。但它的抗干扰能力不如第2类。无特征提取部分的:省去特征抽取,整个字符直接作为神经网络的输入(有人称此种方式是使用字符网格特征),这种方式下,系统的神经网络结构的复杂度大大增加了,输入模式维数的增加

40、导致了网络规模的庞大。此外,神经网络结构需要完全自己消除模式变形的影响。但是网络的抗干扰性能好,识别率高。构造神经网络分类器首先要选择适当的网络结构:神经网络分类器的输入就是数字字符的特征向量;神经网络分类器的输出节点应该是字符数。10个数字输出层就有个10个神经元,每个神经元代表一个数字;隐层数要选好,每层神经元数要合适,目前有很多采用一层隐层的网络结构。然后要选择适当的学习算法,这样才会有很好的识别效果。在学习阶段应该用大量的样本进行训练学习,通过样本的大量学习对神经网络的各层网络的连接权值进行修正,使其对样本有正确的识别结果,这就像人记数字一样,网络中的神经元就像是人脑细胞,权值的改变就

41、像是人脑细胞的相互作用的改变,神经网络在样本学习中就像人记数字一样,学习样本时的网络权值调整就相当于人记住各个数字的形象,网络权值就是网络记住的内容,网络学习阶段就像人由不认识数字到认识数字反复学习过程是一样的。神经网络是按整个特征向量的整体来记忆数字的,只要大多数特征符合曾学习过的样本就可识别为同一字符,所以当样本存在较大噪声时神经网络分类器仍可正确识别。在字符识别阶段,只要将输入进行预处理,特征提取后的特征向量作为神经网络分类器的输入,经过网络的计算,分类器的输出就是识别结果。5.4 BP神经网络这里我们采用BP神经网络来进行车辆字符的识别。BP网络是采用Widrow-Hoff学习算法和非

42、线性可微转移函数的多层网络。一个典型的BP网络采用的是梯度下降算法,也就是Widrow-Hoff算法所规定的。backpropagation就是指的为非线性多层网络计算梯度的方法。一个典型的BP网络结构如图5-4-1所示:图5-1 BP网络结构图我们将它用向量图表示如图5-2所示: 图5-2 BP网络向量图其中:对于第k个模式对,输出层单元的j的加权输入为 ,该单元的实际输出为 ,而隐含层单元i的加权输入为 ,该单元的实际输出为 ,函数f为可微分递减函数 。5.5 车牌数字识别我采用Matlab来模拟用神经网络进行车牌照数字识别这一过程。作为对比,一种采用提取特征部分的方法,一组采用无特征部分

43、提取的方法。提取特征法采用投影-变换系数法进行特征提取。设为图形尺寸,()和()分别是图形在轴和轴上的投影,对它们进行Fourier变换得到K个变换系数,从K个变换系数gk(k0,1,2,K-1)中选出M个有代表性的特征,使它满足类间距离要大、类内距离要小,这里选出16个作为有代表性的特征作为网络输入。由于神经网络对图形的旋转、平移敏感,车牌照数字的获取中不可避免的存在这一类问题,所以即使是采用无特征部分提取的时候,也要对图形进行处理,这里对图形矩阵进行二维fft变换,分别得到矩阵的幅值和相值,通过实验可知网络对变换矩阵的相值收敛性好,因此这里取矩阵的相值作为网络输入。我取了0-9共十个数字作

44、为待识别数,每个数字取6个样本进行训练,共有60个训练样本,另取10个样本作为识别样本。神经网络采用三层结构,提取特征法有16个输入,隐含层取24个神经元,输出为十个,无特征提取法有16X16个输入,隐含层取24个神经元,输出也为10个,取最大输出端对应的数字作为识别结果,如果所有输出端的结果都小于0.5,则认为系统无法识别。其收敛波形两种不同方法的收敛速度,采用无特征提取法要快的多,但是由于其网络规模要比特整体取法大,每一次训练所耗时间要长,所以总的训练时间两者相差不多。识别样本和识别结果示例如附录所示。根据结果来看,采用无特征提取得到字符识别率为84.3%,采用有特征提取得到的字符识别率为

45、92.9%,后者明显高于前者。如要进提高识别率,可以考虑改良特征值的提取,采集更多的样本进行训练及改善网络结构。第六章 车牌识别系统实现6.1车牌图像提取本章中我们主要是通过程序运行来实现车牌识别系统,根据程序运行的步骤一步步将车牌从我们拍摄的照片中提取、处理、分割并通过字符识别最终识别出车牌。系统图形界面设计如下图:图6-1 车牌识别程序首先设计GUI面板 gcf = figure(1); % 定义GUI面板scrsz = get(0,ScreenSize); %定义屏幕宽度set(gcf, Position, 0 0 scrsz(3) scrsz(4)/1.1);set(gcf,color

46、,white);在GUI上显示四个图display_picture(internal_images/title.jpg,1,1, 1);display_picture(internal_images/title2.jpg,1,2, 1);display_picture(internal_images/title3.jpg,1,3, 1);display_picture(internal_images/title4.jpg,1,4, 2);图6-2 车牌识别系统GUI面板编写主函数function go(image, imName)display_picture(image, 1, strcat

47、(Captured Frame: , imName), 1);在第一个窗口显示一张待识别的图片图6-3 待识别图像上图为该系统中我们要进行车牌识别的车辆照片,首先先对图片进行处理,对牌照定位。牌照定位是在预处理后的灰度图象中确定牌照的具体位置,并将包含牌照字符的子图象从整个图象划分出来,供字符识别系统识别。 车牌的定位方法主要有3种。基于边缘检测的车牌定位方法 首先运用Canon边缘算子在全图范围检测边缘,然后利用Hough变换搜索与竖直投影重叠的水平直线,定位车牌上下边界,最后在得到的水平直线附近搜索竖直直线定位车牌的左右边界,从而定位车牌区域。基于边缘检测的定位方法的优点是定位准确,但是受车牌变形和边缘短列的影响大,运算时间长,且车牌的边缘容易和背景上的车窗、树木的边缘混淆。基于水平方向灰度变化的车牌定位方法 首先,利用车牌区域水平灰度高于背景的特点对图象二值化;然后,在二值图上搜索连通域,并根据连通域的集合特征定位车辆区域。方法(2)要比方法(1)的效果好,速度快,漏检率低,但不能够准确地定位车牌的边界,很难与背景文字、车灯等同样灰度变化明

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

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

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