模式识别作业.docx
《模式识别作业.docx》由会员分享,可在线阅读,更多相关《模式识别作业.docx(12页珍藏版)》请在冰豆网上搜索。
模式识别作业
模式识别作业
题目:
车牌识别系统
作者:
学号:
专业:
学院:
任课老师:
车牌识别系统
1引言
对车辆牌照的识别技术可以作为辨识一辆车最为有效的方法。
牌照识别应用了先进的图像处理,模式识别,人工智能技术来获取,处理,解释,记录拍照的图像。
从人的视觉特点出发,车牌目标区域具有如下特点:
①车牌底色往往与车身颜色、字符颜色有较大差异;②车牌有一个连续或由于磨损而不连续的边框,车牌内字符有多个,基本呈水平排列,所以在牌照的矩形区域内存在较丰富的边缘,呈现出规则的纹理特征;③车牌内字符之间的间隔比较均匀,字符和牌照底色在灰度值上存在跳变,而字符本身与牌照底的内部都有较均匀灰度;④不同图像中牌照的具体大小、位置不确定,但其长度比变化有一定范围,存在一个最大和最小长度比。
车牌识别系统一般包括以下几个部分。
图1车牌识别系统
在第一部分图像采集中,主要通过CCD摄像头与计算机的视频捕捉卡直接相连来完成图像采集,可以实时在监控图像中抓取到含有车辆的图像。
汽车牌照识别(LPR)系统的关键在于后四部分。
首先要对采集到的图像进行预处理,而牌照定位又决定其后的车牌字符识别,因此牌照定位是车牌识别系统的关键的关键,牌照定位就是从包含整个车辆的图像中找到牌照区域的位置。
主要研究内容如下:
1.车牌的定位研究。
先进行图像的预处理,包括:
RGB彩色图像的灰度化、图像灰度拉伸、图像边缘检测、灰度图的二值化等;车牌定位采用基于水平和垂直投影分布特征的方法。
2.字符分割的研究。
先对定位后的车牌图像进行预处理,然后按照车牌的先验信息,用区域增长算法来确定候选车牌的字符区域。
3.字符识别的研究。
对于提取出的单个字符,先进行归一化操作,再与给定的模板做对比,识别出字符。
2.图像的定位
2.1图像的预处理
一般情况下,由CCD采集到的图像会有不理想的情况,如光线过强,或者偏弱,这些都会对后续的图像处理产生一向。
而且车牌位于车身下部,靠近散热片,对比度较差,此时若直接对灰度图像进行定位会有不小的困难,为了获得较好处理的灰度图像,在对CCD采集的原始图像进行灰度化后,要对其灰度转换。
首先对图像灰度拉伸,使灰度级占据0--255整个区域,这样做的目的是为了减少光线过强,或者偏弱时造成的灰度级过少.本文直接采用直方图均衡化,这样处理简单,运算量小,效果也较理想。
2.1.1图像灰度化
汽车图像样本,目前大都是通过摄像机、数码相机等设备拍摄获取的,因而预处理前的图像都是彩色图像。
真彩色图像又称RGB图像,它是利用R,G,B3个分量表示一个像素的颜色,R,G,B分别代表红、绿、蓝3种不同的颜色,通过三基色可以合成出任意颜色。
所以对一个尺寸为m*n的彩色图像来说,存储为一个二m*n*3的多维数组。
如果需要知道图像A中(x,y)处的像素RGB值,则可以使用这样的代码A(x,y,1:
3)。
彩色图像包含着大量的颜色信息,不但在存储上开销很大,而且在处理上也会降低系统的执行速度。
由于图像的每个象素都具有三个不同的颜色分t,存在许多与识别无关的信息,不便于进一步的识别工作,因此在对图像进行识别等处理中经常将彩色图像转变为灰度图像,以加快处理速度。
数字图像分为彩色图像和灰度图像。
在RGB模型中,如果R=G=B,则颜色表示一种灰度颜色,其中R=G=B的值叫做灰度值.由彩色转换为灰度的过程叫做灰度化处理。
灰度图像就是只有强度信息,而没有颜色信息的图像,存储灰度图像只需要一个数据矩阵,矩阵的每个元素表示对应位置的像素的灰度值。
彩色图像的象素色为RGB(R,G,B),灰度图像的象素色为RGB(r,r,r),R,G,B可由彩色图像的颜色分解获得.而R,G,B
的取值范围是0-255,所以灰度的级别只有256级。
灰度化的处理方法主要有如下三种:
(1)最大值法:
使R.G,B的值等于三值中最大的一个,即
R=G=B=max(R,G,B)(3.1)
(2)平均值法:
使R,G,B的值值等于三值和的平均值,即
R=G=B=
(3.2)
(3)加权平均值法:
根据重要性或其它指标给R,G,B赋予不同的权值,并使R,G,B等于它们的值的加权和平均,即
R=G=B=
(3.3)
其中WrWc,Wa,分别为R,G,B的权值。
由于人眼对绿色的敏感度最高,对红色的敏感度次之,对蓝色的敏感度最低,当Wr=0.30,Wa=0.59,Wc=0.11时,能得到最合理的灰度图像。
2.1.2二值化
图像二值化是指整幅图像画面内仅黑、白二值的图像。
在数字图像处理中二值图像占有很重要的地位。
这是因为,一方面,有些需要处理的如文字图像、指纹图像、工程图纸等图像本身是二值的;另一方面,在某些情况下即使图像本身是有灰度的,我们也设法使它变成二值图像再进行处理(即灰度图像的二值化)。
这是考虑到在实用系统中,要求处理的速度高、成本低、信息量大的浓淡图像处理的花销大。
此外二值化的图像能够用几何学中的概念进行分析和特征描述,比灰度图像优势大得多。
在实际的车牌处理系统中,进行图像二值化的关键使确定合适的阈值,使得字符与背景能够分割开来,而且二值变换的结果图像必须要具备良好的保形性,不丢掉有用的形状信息,不会产生额外的空缺等。
同时车牌识别系统要求处理的速度高、成本低、信息量大,采用二值图像进行处理,能大大提高处理效率[1]。
二值化的关键是找到合适的阈值t来区分对象和背景。
设原灰度图像为f(x,y),二值化后的图像为g(x,y),二值化的过程表示如下:
0f(x,y)g(x,y)=(3.4)
255f(x,y)>t
二值化,基于实时性的要求,我力求寻找一种快速而且效果较好的方法,能够更有针对性的解决在不同条件下牌照图像的二值化问题。
求解阈值的方法很多,微分直方图法、最大方差法、基于灰度的数学期望的方法、可变阈值法等。
我们采用最简单的方法,当象素灰度级低于常数C时,[0-C]象素灰度为0,[C-255]象素灰度为255。
2.2车牌定位
车牌图像往往是在复杂的环境中拍摄得到的,车牌由于与复杂的车身背景融为一体,由于车牌在使用中磨损与灰尘及拍摄仪器的影响以及由于拍摄角度的不同,车牌在图像中往往有很大的形变,如何在复杂背景中准确、快速找出车牌的位置成为车牌识别中的难点[2]。
目前已有不少学者在这方面进行了研究。
总结起来主要有如下几类方法:
(1)基于水平灰度变化特征的方法,这种方法主要在车牌定位以前,需要对图像进行预处理,将彩色图像转换为灰度图像,利用车牌区域水平方向的纹理特征进行车牌定位;
(2)基于边缘检测的定位方法,这种方法是利用车牌区域丰富的边缘特征进行车牌定位[3],能够进行检测的方法有多种,如Roberts边缘算子、Prewitt算子、Sobel算子以及拉普拉斯边缘检测;
(3)基于车牌颜色特征的定位方法,这种方法主要是应用车牌的纹理特征、形状特征和颜色特征即利用车牌字符和车牌底色具有明显的反差特征来排除干扰进行车牌的定位;
(4)基于Hough变换的车牌定位方法,这种方法是利用车牌边框的几何特征,采取寻找车牌边框直线的方法进行车牌定位;
(5)基于变换域的车牌定位方法,这种方法是将图像从空域变换到频域进行分析,例如采用小波变换等;
(6)基于数学形态学的车牌定位方法,这种方法是利用数学形态学图像处理的基本思想,利用一个结构元素来探测一个图像,看是否能将这个结构元素很好的填放在图像内部,同时验证填放元素的方法是否有效。
腐蚀、膨胀、开启和关闭是数学形态学的基本运算。
2.3边缘提取
对图像进行边缘提取,边缘提取的最大好处就是能够突出边缘区域,同时使背景图像中无关的部分暗淡。
由于车牌部分是边缘相对集中的区域,在对其边缘分割后,可以看到车牌部分很明显的突现出来。
实现方法中,我们采用了水平差分算法,它利用图像后一列像素减去前一列像素,从而得到边缘图像。
再对所得的图像二值化处理。
实验结果如图2所示
图2边缘提取后的图像
2.4车牌边界的确定
由于车牌一般是由字符、背景和边框组成,提取图像的边缘图像后,在字符与背景处就形成了较强的边缘。
再考虑汽车本身的特点,通常车牌位于汽车缓冲器上或附近,靠近整幅图像的下部,在往下便是路面,路面一般是比较光滑,因此可以在边缘提取时就很有效的将这部分杂质滤除掉,而使干扰图像的噪声处于车牌之上,如车灯,或散热片。
由此,我们采用由下而上的扫描的方法。
首先,对边缘图像的象素沿水平方向累加产生一个投影图,如图3所示。
图3粗略定位的水平投影图
由投影图可以看出有车牌字符的地方,灰度值较高,而且处于图像的下部。
故此,先进行粗略定位,找寻水平投影图大于3分之2最大值的点,找到改点对应的横坐标的最大值,记录坐标。
该点记为车牌的下边界。
根据车牌的几何特征(在初始处对图像进行归一化处理统一成1000×800的大小),车牌高度大约占100个像素,考虑到噪声等因素的影响,粗略将上下边界分别定义为最大值-120,最大值+50。
在上下界粗定位的基础上进行精细定位,即对图像再进行水平投影,找寻大于3分之2最大值的点,记录改点所对应的横坐标的最大值和最小值,那么此两点为车牌的上下边界点。
如图4所示
图4精细定位的水平投影图
在定位出上下边界后,再对特征图像进行垂直投影,得到投影图后,对投影图进行处理,重复水平定位的理念,找寻大于3分之2最大值的点所对应的横坐标的最大值和最小值,即为车牌的左右边界点,完成定位。
如图5所示
图5垂直投影图
3字符分割
区域增长的基本思想是将具有相似性质的象素集合起来构成区域。
首先在待分割的每个区域中选择一个种子点作为增长的起始点,然后在种子点的领域中搜索那些与种子点的相似特征度满足指定增长准则的象素,并与种子点所在区域合并。
此时将新合并的象素作为新的种子点,继续以上搜索和合并过程,直到没有可以合并的象素为止。
本文的算法中采用区域增长算法来确定候选车牌的字符区域。
首先要确定起始的种子点。
字符的像素值最大为255,基于这个信息,选定像素值为255的点为起始点。
然后选择下面的增长标准:
假定一个像素属于一个区域,则这个像素和这个区域里至少有八个像素点是相连的。
如果一个像素同时又和其他区域相连了,则这些区域合并在一起。
由于光照或者背景噪声等的影响,区域增长算法可能生错误的字符区域,就需要根据前文所述的车牌先验信息来删除错误的区域,从而准确定位字符区域。
按照车牌的先验信息字符的尺寸为45mm*90mm,字符间隔为12mm,间隔符宽10mm,那么第二个和第三个字符的间隔为34mm,车牌的左边界和第一个字符的间隔以及车牌右边界和最后一个字符的间隔为25mm,字符到上下边界的间隔也为25mm。
假定字符宽度为cw,字符高度为ch。
则字符间隔为(12/45)*cw=0.27*cw,第二个和第三个字符的间隔为(34/45)*cw=0.76*cw,而车牌的左边界和第一个字符的间隔以及车牌右边界和最后一个字符的间隔就为(25/45)*cw=0.56*cw,字符到上下边界的间隔为(25/45)*ch=0.56*ch。
其中cw=(45/440)*a,ch=(90/140)*b(a,b为分割车牌的宽度和高度)。
根据以上的信息就可以对车牌的字符进行准确的定位。
如图6所示
图6字符分割
4字符识别
4.1归一化
因为扫描得到的图像的字符大小存在较大的差异,统一尺寸有助于字符识别的准确性,提高识别率,从而与模板进行匹配。
归一化主要包括位置归一化、大小归一化及笔划粗细归一化(常用细化算法)。
在这里本人对大小归一化。
对不同大小的字符进行变换,使之成为同一尺寸大小的字符,这个过程称为字符大小归一化。
通过字符大小归一化,许多特征就可以用于识别不同字号混排的字符。
具体实现方法,首先对图像二值化处理,这里的阈值根据大津法得到,然后将字符的外边框按比例线性放大或缩小成为规定尺寸的字符。
如图7所示
图7图像归一化
4.2匹配识别字符
对分割出来的字符进行识别的方法很多,主要有以下几种方法:
(1)利用字符的结构特征和变换(如Fourier变换、Karhunen-Loeve变换等)进行特征提取。
该方法对字符的倾斜、变形都有很高的适应性,但运算量大,对计算机性能的要求较高。
(2)利用字符统计特征进行特征提取。
如提取字符的投影特征、网格特征和轮廓特征组成字符特征矢量进行匹配的方法,识别率较高。
(3)基于字符结构分析的识别方法。
该方法可以识别有较大旋转、变形、缩放的字符图像,但需要进行复杂的字符笔划分析和抽取,对字符图像质量要求较高。
(4)模板匹配法。
由于车辆牌照字符中只有26个大写英文字母、10个阿拉伯数字和约50个汉字,所以字符集合较小,该方法对于有一定变形、污损或笔画缺损的字符图像有较好的识别效果,总体识别率较高,同时也能满足实时性的要求。
经过实验,本文采用的是第四种模板匹配算法。
将分割出来的字符图像与模板图像相减,差值最小的便是与之匹配的模板,从而识别出字符。
图8字符识别流程图
5实验结果
图9z车牌图片定位剪切图
图10灰度图
图11处理后的二值图
图12字符识别图
6总结与展望
本文对车牌识别系统的三大模块----车牌定位、字符分割和字符识别都进行了研究工作。
下面将本文的主要工作及创新研究作如下的总结。
1.车牌定位:
读入图像,然后是进行图像的灰度化、灰度拉伸。
接着分析了边缘算子的检测及图像差分的边缘检测后选择了图像差分的边缘检测。
二值化车牌图像后,采用改进的投影法对图像进行水平定位,然后在粗定位的基础上进行了车牌精确定位。
最后采用投影法对图像进行垂直定位,定位车牌区域。
2.字符分割:
利用车牌的先验知识对字符进行分割
3.字符识别:
归一化字符图像为48×24的字符图像,比较模板图像与字符图像,找到与之匹配的模板,识别出字符。
由于客观条件及时间的限制,本文在很多方面还存在不足,有待于进一步的研究和探讨,主要有以下几点:
1.车牌定位中垂直定位容易受到噪声的影响,进而无法精确定位。
2.字符分割直接采用的先验知识分割虽运算量小,但对定位要求高,这样通用性较弱。
3.模板匹配法虽然识别率高,但运算量较大。
在智能交通系统中,车牌自动识别系统是智能化交通系统非常重要的发展方向。
它在车辆过路、过桥全自动不停车收费,交通流量控制指标的测量,车辆自动识别,高速公路上的事故自动测报,不停车检查,车辆定位,汽车防盗,稽查和追踪车辆违规、违法行为,维护交通安全和城市治安,防止交通堵塞,提高收费路桥的服务速度,缓解交通紧张状况等方面有重要作用,有重要的现实应用意义。
在车辆牌照字符识别系统的研究领域,可以看到两个明显的趋势:
一是单一的预处理和识别技术都无法达到理想的结果,多种方法的有机结合才能使系统有效识别能力提高;二是在有效性和实用的原则下,结合神经网络和人工智能的新技术的应用是研究的一个方向。