精选优质文档-----倾情为你奉上
精选优质文档-----倾情为你奉上
专心---专注---专业
专心---专注---专业
精选优质文档-----倾情为你奉上
专心---专注---专业
实际环境下汽车牌照识别方法的研究与实现扫描,如果蓝色像素的数量小于某一阈值就停止扫描,这就分别确定了车牌区域的上下边界。然后用同样的方法左右扫描,这样就可以找到左右边界,左右边界确定以后,就可以圈定车牌所属的区域了。
但是这种方法对于光照条件较好、没有发生偏色,并且少有蓝色背景干扰的情况下比较有效,如果有蓝色干扰背景,或者车牌区域有偏色的情况下,就不是很理想。例如,对于老师给的如图3所示的照片,这种简单的统计像素点就没有效果。
图3 老师提供的汽车图片
因此,我们继续观察图片,在颜色统计的方法上提出了两种改进方式:第一种方式是统计蓝色像素点之后,再统计同一行(列)上的白色
精选优质文档-----倾情为你奉上
精选优质文档-----倾情为你奉上
专心---专注---专业
专心---专注---专业
精选优质文档-----倾情为你奉上
专心---专注---专业
像素点个数,如果这一行(列)上的白色像素点也达到一个阈值,那么说明这个区域可能是车牌区域。第二种方式是,发现照片中汽车会有周围的环境有将强的差别,而蓝色的干扰区域一般是出现在图片的上、左、右三个方位,因此在扫描的时候,可以不从照片最上面和最左边开始扫描,而是选定某一个地方,这个地方的背景干扰不多,而且不至于把汽车的牌照截出去。我们认为这里其实可以用某些边缘提取或者是物体形态学的相关方法来实现,但是最终没有实现好。
其次是汽车牌照字符的切割。
在设计初期,我们先手动截取了车牌区域的图片进行分析。如图4所示。
图4 汽车牌照的区域
我们分析了这张图片的特点,发现汽车牌照区域的图片结构相对简单,颜色构成不复杂,因此可以按照图5所示的步骤进行操作。
倾斜矫正
灰度化
二值化
字符切割
图5 汽车牌照字符分割的主要步骤
灰度化利用matlab提供的函数rgb2gray(图片)即可,灰度化之后,图像就变成了一个二维矩阵,这样信息量大大减少,不必要的信息变少,留下的都是车牌识别中需要关心的主要信息。
像图4中所示的图片,灰度化之后也很难进行处理,因此需要进行倾斜校正。倾斜校正的时候利用matlab提供的radon(图片,range);进行,先求一个倾斜角,然后按照倾斜角进行旋转。
然后为了进一步压缩图像的不必要信息,需要对车牌照片进行二值化,也就是将照片中灰度级大于某个阈值的的所有点都置成255,小于某个阈值的所有点都置成1,这样,图片中就只有两种点:纯白和纯黑,这样就可以抓住主要特征进行分析了。
但是在进行二值化处理的时候,遇到了一个问题,就是老师给的照片提出出车牌区域之后,二值化的结果是全黑的。因为我们当时设置的阈值是125,而老师提供的照片光照强度比较暗,因此就导致车牌字符所在的区域的像素值也较低,因此将这一部分也变成了黑色。这个问题可以通过matlab提供的函数
精选优质文档-----倾情为你奉上
精选优质文档-----倾情为你奉上
专心---专注---专业
专心---专注---专业
精选优质文档-----倾情为你奉上
专心---专注---专业
level = graythresh(tempLicence);
tempLicence=im2bw(tempLicence,level);
进行处理,第一个函数graythresh的含义是,matlab会通过对图片进行分析,找一个合适的阈值,这个阈值能将图片灰度值相对较高和相对较低的点区分开来,避免了全黑或者全白的情况。
得到了如图6所示的二值化图片之后,我们对其进行了分析。
图6 经过处理后的车牌图像
拿到这幅图像之后的下一个要解决的问题就是将其分割成七个小部分,每个小部分对应的是一个汉字、字母或者数字。
在这么做之前,首先要对图片进行分析,发现图片的中央区域是有用的信息,而周围的点都是干扰,应该将它们截取掉。我们将这个图片向Y方向和X方向进行投影,得到了图7、图8所示的两幅图像。
图7 二值图Y轴方向的投影
通过对图7进行分析,我们发现,图片上、下两部分的干扰与车牌之间在投影之后有很大的差别,很明显,它们之间有着明显的断层。我们可以利用它们之间的断层,对车牌的上下干扰部分进行裁剪。我们采用的方法是:首先找到图像的中央,然后从中央向两端分别扫描,每一个方向如果遇到第一个值小于阈值,并且下一个值也小于阈值的时候,就认定找到了字符与边框干扰的边界,记下这个值,进行切割就可以去除上下边框。
精选优质文档---
模式识别-车牌识别文档(共14页) 来自淘豆网m.daumloan.com转载请标明出处.