1、车辆牌照识别技术研究预处理和粗定位模块 1 摘 要 车牌识别技术是识别技术在现代智能交通系统中的一项重要研究课题,是实现交通监控智能化的重要环节。 本课题主要研究车牌识别技术中的预处理、粗定位、分割以及最终的字符识别等关键环节的核心技术。 本文先说明了车牌识别的意义,现状以及难点,接着介绍了车牌识别技术中的预处理和粗定位模块每个功能点上的算法,并描述了本系统所采用的算法步骤和伪代码,最后总结了本次设计: 其中在图像预处理模块首先通过加权平均法将彩色的车牌图像转化为灰度图像,然后通过中值滤波来消除灰度图像的噪声,接着采用 OTSU算法找到使得函数获得最大 值的灰度阙值,再用全局阙值法对图像进行二
2、值化处理,最后通过Roberts算子进行边缘检测。 粗定位模块首先对边缘图像进行扫描,然后 ,统计跳变点, 在水平方向上求和作投影,确定车牌水平区域,接着进行垂直投影,确定车牌垂直区域,最后对获得的图像进行切割。 关于车牌识别的另外两个模块: 分割模块首先对于车牌进行角度矫正,然后去除车牌上下边框,接着分割获得单独字符。 识别模块既对字符进行识别,并获得车牌识别的最后结果。 实验表明,本文所采用的算法对于车牌的灰度处理,滤波处理,二值化及边缘检测具有较好的效果,但在粗定 位的算法上还应该再加以改进,识别的正确率有待进一步的提高。不过总体来说,本文在车牌图像的预处理和粗定位上还是具有较好的效果。
3、 关键词: 车牌预处理;车牌定位;车牌识别 车辆牌照识别技术研究预处理和粗定位模块 2 第一章 绪论 1.1 引言 车牌识别系统 (License Plate Recognition, LPR)是 智能交通系统 (Intelligent Transportation System, 简称 ITS)的一个重要组成 部分 1。智能交通系统,又称智能运输系统,源于日本和美国最先开始的大规模道路交通运输智能化研究试验。所谓智能交通系统,就是在现 有的交通状况下,充分利用现代高新技术进行合理的交通需求分配和管理,通过卫星导航系统 、 汽车自动引路系统 、 交通信息通信系统 、 视频监控和计算机管理等多种
4、技术手段,使交通系统的通行能力迅速提高 ,实现安全 、 快速和便捷运输的一种交通综合治理方案。 国际上公认的 ITS 领域有:交通管理系统 、 出行信息服务系统 、 商用车辆运营系统 、 电子收费系统 、 公共交通运营系统 、 应急管理系统和车辆控制系统。它使基础交通设施能发挥最大的效能,提高服务质量,从而可以带来巨大的社会效益。 车牌识别系统的目的是运用图像处理和模式识别技术在车辆图像中 自动定位车牌位置并识别牌照号码。车牌识别系统在桥梁和公路路况自动收费 、 停车场无人管理 、 违章车辆自动记录等领域有着广泛的应用。随着机动车辆数量的增多,对车牌识别系统的研究和应用得到越来越多人们的重视。
5、 1.2 课题的研究意义 为减少交通拥挤、堵塞和事故,改善生存环境,世界各国先后投入了大量的资金和人员加紧研究,以期待在将来的 ITS 市场中占据有利地位。欧洲早在 7。年代就开始智能交通的研究, 2000 年欧共体推出了 e-Europe 的计划,旨在投入更多人力物力推进 ITS 在欧洲的进程 : 日本开始道路的智能控制研究较早,早在 70 年代就研制成功了一些道路的控制系统,迄今为止,日本的 ITS 涉及到了车辆导航系统、自动收费系统以及安全驾驶系统等。经过多年的发展,目前欧美车辆牌照识别技术研究预处理和粗定位模块 3 和日本等一些国家在 ITS 研究和开发方面处于领先地位,美国的一些州区
6、已经采用了成熟的 ITS 技术,这些智能系统每年可以为美国节约大量的资源。 近几年 , 我国道路交通迅猛发展 , 随之也带来了对 智能交通 的迫切需求 。 车牌识别的研究与开发一直是现代化交通发展中倍受关注的问题,也是制约交通系统智能化、现代化的重要因素 。 智能交通系统己成为当前交通管理发展的主要方向,而车牌识别技术作为 智能交通系统的 重要组成 ,起着举足轻重的作用。 车牌识别系统具有广泛的应用范围,主要应用于 : (1)高速公路收费、监控管理 ; ( 2)区、停车场管理 ; (3)城市道路监控、违章管理 ; (4)车牌登录、验证 ; (5)车流统计、安全管理等。车牌 识别系统应用于这些系
7、统,可以解决通缉车辆的自动 稽查 问题,可以解决车流高峰期因出入口车流瓶颈造成的路桥卡口、停车场交通堵塞问题,可以解决因工作人员作弊造成的路桥卡口、高速公路、停车场应收款流失的问题,还可以以最简单的方式完成交通部门的车辆信息联网,解决数据统计自动化,模糊查询的问题。 1.3 国内外研究现状 从 20 世纪 90 年代初,国外就已经开始了对汽车牌照自动识别的研究,其主要途径就是对车牌的图像进行分析,自动提前车牌信息,确定汽车牌号。在各种应用中,有使用模糊数学理论也有用神经元网络的算法来识别车牌中的字符,但 由于外界环境光线变化、光路中有灰尘、季节环境变化及车牌本身比较模糊等条件的影响,给车牌的识
8、别带来较大的困难。国外的相关研究有 : (l)jBarroso 提出的基于扫描行高频分析的方法 ; (2)LancasterI.T 提出的类字符分析方法等 。 .为了解决图像恶化的问题,目前国内外采用主 动红外照明摄像或使用特殊的传感器来提高图像的质量,继而提高识别率,但系统的投资成本过大,不适合普遍的推广 。 车牌识别系统中的两个关键子系统是车牌定位系统和车牌字符识别系统。 关于车牌定位系统的研究,国内外学者已经作了大量的工作,但实际效果并不是很理想,比如车牌图像的倾斜、车牌表面的污秽和磨损、光线的干扰等都是影响定位准确度的潜在因素。为此,近年来不少学者针对车牌本身的特点,车辆拍摄的不良现象
9、及背景的复杂状况,先后提出了许多有针对性的定位方法,使车牌定位在技术和方法上都有了很大的改善 。 然而现代化交通系统不断 提高的快节车辆牌照识别技术研究预处理和粗定位模块 4 奏,将对车牌定位的准确率和实时性提出更高的要求。因而进一步加深车牌定位的研究是非常必要的。 车牌字符识别是在车牌准确定位的基础上,对车牌上的汉字、字母、数字进行有效确认的过程,其中汉字识别是一个难点,许多国外的 LPR 系统也往往是因为汉字难识而无法打入中国市场,因而探寻好的方法解决字符的识别也是至关重要的 。 目前己有的方法很多,但其效果与实际的要求相差得很远,难以适应现代化交通系统高速度、快节奏的要求。因而对字符识别
10、的进一步研究也同样具有紧迫性和必要性。 从实用产品来看,如以色列的 Hi-Tech 公司研制的多种 See/Car system,适于几个不同国家的车牌识别,就针对中国格式车牌的 See/Car system。而言,它不能识别汉字,且识别率有待提高。新加坡 Optasia 公司的 VLPRS 产品,适合于新加坡的车牌,另外日本、加拿大、德国、意大利、英国等西方发达国家都有适合于本国车牌的识别系统。 从目前一些产品的性能指标可以看出,车牌识别系统的识别率和识别速度有 待提高。现代交通的飞速发展以及车牌识别系统应用范围的日益拓宽给车牌识别系统提出了更高的要求。因此,研究高速、准确的定位与识别算法是
11、当 前的主要任务,而图像处理技术的发展与摄像设备、计算机性能的提高都会促进车牌识别技术的发展,提高车牌识别系统的性能。 1.4 车牌识别技术中的难点 车牌识别系统对于自然环境下的图片识别的识别率远远低于实际应用要求。 而 区别实验环境,自然环境下的车牌有以下几个特点 2: (1)车牌缺乏统一标准。 由于 我国车牌规范不够,不同汽 车类型有不同的规格、大小和颜色,所以车牌的颜色多,且位数不统一,增加了 灰度图像 二值化 、 车牌字符分割的难度 。 (2)车牌受污损或遮挡。由于车辆长期在户外行驶,车牌容易被腐蚀, 导致字符模糊不清, 对光线散射性不好,极大的影响识别的准确率。而当车牌被遮挡,也会提
12、高车牌定位以及车牌字符分割的难度。 (3)车牌背景也影响到定位的准确率。例如与车牌类似的广告语。 车辆牌照识别技术研究预处理和粗定位模块 5 (4)拍摄 车牌时的角度和光线。 摄像角度越小,车牌在平面图像中变形越小,识别效果越好。拍摄 角度 的不同 对车牌字符分割影响较大,对车牌校正的能力要求较高 。而拍摄时的光线选择,则导致车牌图像的亮度不均,增加了对车牌图像二值化的难度。 另外,车牌识别系统在于 识别速度和识别成功率之间的平衡,也是一大难点。 1.5 课题研究、开发的内容任务与目标 1.整体软件的目 标: 实现从图片库中读入一张车辆图像,然后对图像进行预处理,二值化等步骤将车牌从整张图像中
13、精确定位出来,然后进行字符分割,特征提取,模式匹配等字符识别步骤。最终将车牌以字符串形式通过一个对话框形式输出。 整个设计分为两个模块: (1)车牌识别的预处理工作和粗定位工作, (2)车牌的字符分割及车牌字符识别模块。 2.车牌识别的预处理 13 14和粗定位 17模块的目标: 该模块主要提供以下功能: 读入一张车辆图像,对该图像进行图像灰度化 ,中值过滤 ,灰度图像二值化 .。再按照一定的算法对预处理后的车牌图像 进行边缘检测 ,确定边缘点 ,牌照定位处理,得到粗定位后的图像。 截取粗定位图像 ,并将该图像传给 字符识别 模块处理。车辆牌照识别技术研究预处理和粗定位模块 6 第二章 车牌预
14、处理 2.1 图像的灰度化 在 RGB模型中,如果 BGR 时,则彩色表示一种灰度颜色,其中 BGR 的值叫做灰度值 ,因此,灰度图像每个像素只需一个字节存放灰度值(又称强度值、亮度值),灰度范围为 0-255。一般有以下四种方法对彩色图像进行灰度化 3: 1.分量法 将彩色图像中的三分量的亮度作为三个灰度图像的灰 度值,可根据应用需要选取一种灰度图像。 ),(),(1 jiRjif ),(),(2 jiGjif ),(),(3 jiBjif (2-1) 其中 )3,2,1)(,( kjifk 为转换后的灰度图像在 ),( ji 处的灰度值。 2.最大值法 将彩色图像中的三分量亮度的最大值作为
15、灰度图的灰度值。 ),(),(),(m a x (),( jiBjiGjiRjif (2-2) 3.平均值法 将彩色图像中的三分量亮度求平均得到一个灰度图。 3 ),(),(),(),( jiBjiGjiRjif (2-3) 4.加权平均法 根据重要性及其它指标,将三个分量以不同的权值进行加权平均 16。由于人眼对绿色的敏感最高,对蓝色敏感最低,因此,按下式对 RGB 三分量进行加权平均能得到较合理的灰度图像。 ),(11.0),(59.0),(3.0),( jiBjiGjiRjif (2-4) 本课题采用现行通用的加权平均法,具体实现方法为 : 1获取每个像素点的 RGB 值; 2通过公式
16、Y=0.3R+0.59G+0.11B 获取 YUV 色彩模型上 Y 分量; 车辆牌照识别技术研究预处理和粗定位模块 7 3令原图像 RGB 分量都为 Y; 4获得灰度图像。 相应的伪代码为: FOR i = 0 to width-1 FOR j = 0 to height-1 #遍历图像所有的像素点 color = getPixel(i,j) #获得点 ),( ji 处的像素 y Bc o lo rGc o lo rRc o lo r .11.0.59.0.3.0 #通过加权平均法获得新的像素分量 y setPixel(i,j,color(y,y,y) #用新的像素分量代替原来的 RBG 分量
17、 END END 处理结果如图 2-2 示例: 图 2-1 车牌原图 车辆牌照识别技术研究预处理和粗定位模块 8 图 2-2 灰度化后的图像 2.2 图像的 滤波 由于图像本身存在许多噪声,所以通过图像滤波来清除噪声,引起噪声的原因有:在摄像时,由于光学系统 失真,相对运动,大气流动等都会使图像模糊。再如传输过程中,噪声污染图像,或者 使机器从中提取的信息减少甚至造成错误,因此必须对降质图像进行改善。改善的办法有两类:一类是不考虑图像 降质的原因,只将图像中感兴趣的特征有选择地突出,而衰减其不需要地特征,故改善后的 图像不一定要逼近原图像。这类图像改善方法统称为图像增强技术。另一类改善图像方法
18、是针对图像降质原因,设法去补偿降质因素,从而使改善 的 图像尽可能地逼近原图像,这类图像改善方法统称为图像复原技术。 图像处理 的 目的是为了将感兴趣的目标突出,因而要采用图像增强技术来提高图像的质量。图像增强技术有两类方法 :空域法和频域法 。 空域法主要是在空间域内对图像灰度值运算处理。 频域法是在图像的某种变换域内,对图像的变换值进行运算。这是一种间接的处理 方法。 对车牌图像进行处理,通常采用空域法对车牌图像进行滤波,目的是去除图车辆牌照识别技术研究预处理和粗定位模块 9 像中的噪声,通常使用下面 3 种方法 4:线性滤波 、中值滤波和自适应滤波。 1线性滤波 线性滤波 18可以去除图
19、像中某些类型的噪声,如采用邻域平均法的均值滤波器就非常适合于去除通过扫描得到的图像中的颗粒噪声。 邻域平均法对于给定的图像 ),( jif 中的每个像 素 点 ),( nm ,取其邻域 S。设 S 含有 M 个像素,取其平均值作为处理后所得图像像 素 点 ),( nm 处的灰度。用一 个 像素邻域内各像素灰度平均值来代替该像素原来的灰度,即使用邻域平均技术。 邻域 S 的形状和大小根据图像特点确定。一般取的形状是正方形 、 矩形及十字形等, S 的形状和大小可以在全图处理过程中保持不变,也可根据图像的局部统计特性而变化,点 ),( nm 一般位于 S 的中心。如 S 为 33 的邻域,点 ),
20、( nm 位于 S中心,则: 1 1 1 1 ),(91),( i j jnimfnmf(2.5) 假设噪声 n 是加性噪声,在空间各点互不相关,则经过邻域平均后,噪声的均值不变,方差变为原来的 1/M,即噪声方差变小,说明噪声强度减弱,即抑制了噪声。同时可以看出领域平均法可能使图像目标区域的边界变得模糊。可以证明,对图像进行邻域平均处理相当于图像信号通过一 个 低通滤波器。 2中值滤波 10 中值滤波是一种非线性信号处理方法,它被用来抑制图像中的噪声。对于给定的 n 各数值 ),( 21 naaa ,将它们按大小有序排列,当 n 为奇数时,位于中间位置的那个数值称为这 n 各数值中值;当 n
21、 为 偶数 时,位于中间位置的两个数值的平均值称为这 n 个数值的中值,记为 med ),( 21 naaa 。中值滤波就是这样的一个变换,图像中值滤波后某像素的输出等于该像素邻域中各像素灰度的中值。 中值滤波器可以推广到二维,即对二维图像操作。二维中值滤波的窗口形状和尺寸对滤波效果影响较大,不同的图像内容和不同的应用要求,往往采用不同的窗口形状和尺寸。常用的窗口形状有线状 、 方形 、 圆形 、 十字形以及圆环形等,窗口的尺寸一般先用 3 再取 5 逐点增大 ,直到其滤波效果满意为止。一般对于有缓变的较长轮廓线物体的图像, 采用方形或圆形窗口为宜,对于包含有尖顶角物车辆牌照识别技术研究预处理
22、和粗定位模块 10 体的图像,适宜用十字形窗口。而窗口大小则以不超过图像中最小有效的细线状物体为宜,如果图像中点 、 线 、 尖角细节较多,不宜采用中值滤波。 3自适应滤波 利用 matlab 提供的图像处理工具箱中的 wiener2 函数,可对有恒定能量加性噪声的图像进行低通滤波,根据每个像素局部领域的估计进行像素式自适应维纳滤波,可使得图像在整体上较为平滑。 Wiener2 函数根据图像的局部方差来调整滤波器的输出,当局部方差大时,滤波器的平滑效果较小,滤波器平滑效果强。 Wiener2 函数通 常对于含有白色噪声的图像滤波效果较好。 为了抑制噪声 ,通常会采用低通滤波 19, 但由于边缘
23、轮廓也包含大量的高频信息 ,所以采用低通滤波在过滤噪声的同时 , 也使得边界变得模糊 ; 反之 , 低通滤波后为了提升边缘轮廓 , 还需要使用高通滤波 , 这时存在的噪声也会被加强 , 为了在过滤噪声的同时 , 还能很好的保护边缘轮廓信息 , 所以 本课题采用 中值滤波 。 具体实现方法为: 1获取每个像素点的 RGB 值,由于经过灰度化,所以 BGR ; 2通过一个 33 的像素块存储每个像素点以及它周围像素的 R 分量值 ; 3获取像素块中数据的中值 ; 4另像素点的 RGB 分量等于 3 中获得的中值 ; 5获取通过中值滤波的灰度图像。 相应的伪代码为: FOR i = 0 to width-1 FOR j = 0 to height-1 #遍历图像所有的像素点 FOR k= -1 to 1 FOR n = -1 to 1 #遍历当前点周围的 33 矩阵 color = getPixel(i+k,j+n) dtm=color.r m+ END END sort(dt) #对 dt数组进行排序