MATLAB车牌识别系统

一、摘 要

车牌识别系统作为智能交通管理必不可缺的一子系统,它的系统主要分为四个重要部分:图像的预处理、车牌定位、字符分割和字符识别。在本次设计中,我们所采用的是一套基于MATLAB的车牌自动识别的方式,对于车牌的识别,它具有较强的识别能力,能有效地解决带有噪声和图像在不同条件下所带来的一些负面影响的问题。最后的设计结果也表明了MATLAB使车牌识别系统在运行上十分有效。



二、 设计原理

该系统主要分为四个部分,分别是图像预处理、车牌定位、车牌字符分割、字符识别。

如下图1-1所示:


9a1e37ba94eb836114eeb0599f6668d7.png


图1-1 牌照识别系统原理图

  1. 1.原图像:在应用领域上直接由摄像机等其他拍摄装置拍摄的图片。
  2. 2.图像预处理:将原RGB模式的原图像转为灰阶模式,对图像内物体进行边缘检测。
  3. 3.车牌定位:对经过预处理的灰度图像进行腐蚀、平滑得到车牌的主要区域。
  4. 4.字符识别:对车牌区域进行检测,寻找大一某个阈值的非连续块进而进行二值化切割,再对切割后的独立出来的字符进行匹配模式的识别。


三、 车牌识别系统设计与实现

3.1 提出总体设计方案


整个系统中对于车牌的位置的定位和车牌号码的字符识别最为重要。其中的车牌定位又分为图像图像灰度化、图像边缘检测和图像腐蚀;另外车牌号码的识别又由车牌号码的分割和单号码模块匹配结合。该系统的主要目的是将车牌部分通过对图像预处理后从原始图像中分离出来,再将车牌内车牌号的字符单个分离出来,再对单个字符进行模板匹配识别,所以车牌定位分离、字符定位、分离的结果在体统的识别过程中显得特别重要。

在对车牌定位之前,应对原始图像进行一些预处理前,为减少对后续定位、识别的影响,为图像具有较大的对比度和较大的清晰度,更好地运用于牌照分割和字符识别,应对原始图像进行一些处理。因为对于原始图像的来源主要是摄像机直接拍摄处理道路上行驶的车辆,加上车牌照本身的整洁程度、自然光的照射条件、摄像机镜头的光学畸变产生的噪声、拍摄时摄像机与车牌照的距离、车辆行驶的速度以及摄像头的拍摄角度,在这些负面的影响下有可能造成车牌照的图像清晰度不够、角度不正、等严重损坏影响对车牌字符识别的准确度。导致对于车牌的定位和字符分割的结果不准确。

3.2 图像预处理

通常使用摄像头拍摄到的车辆会存在大量的噪省,所以在处理车牌照图像识别前要先对图像做一些预先的处理。由摄像机等所采集到的含车辆的图片的预处理是指将采集到的含车辆车牌的原图像亮度做一定的调整和去除图像本身的噪声处理,让图像变得更清晰,并保留图像本身的纹理构造和增强图像的颜色信息,尽可能减少对后面将要识别的区域纹理和颜色信息的噪声的影响,让后面的车牌定位的准确性有所提高

3.2.1图像灰度化

一张灰度图指的是它只包含了它本身固有的亮度而不含有它的色彩信息,像八九十年代前的黑白照片就是一张亮度连续变化的灰度图。把一张彩色的图像转为灰阶模式就是灰度化处理。一张彩色的图像都是由R、G、B三原色组成,图像的色彩信息会随着三原色的改变而改变。在计算机上,R、G、B的多少决定了这张图像的颜色,通常,R、G、B它们都各有256级亮度,用数字0到255组成。灰度化就是让原彩色图像的R、G、B相等的过程。



6ecdb998b0556873bc44703a33617746.png


图2-1 车牌灰度图及灰度直方图



3.2.2 图像边缘检测

定位和分割的是识别系统技术主要板块,它的主要作用是图像经过预处理后得到灰度图像的照片后,以确定该图像中包含所要字符的特定位置。由于该点是原来的图像象是非常典型的一个子区域的,主要是周围的矩形横向确切的较高水平,相对原始图像也更侧重于的中心位置,并且灰度区域是完全不同的,所以边缘形检测是一个简单方案对于灰度图像检测图像分割。

处理效果图如下图3-2:


3cd7c7dc44370016dabad81f2e5d3e22.png


图3-2 车牌边缘检测图




3.3 车牌定位

3.3.1 灰度图像腐蚀


图像腐蚀是一种形态学运算,它仅对二值图并且根据数学形态学集合方式而形成的到目前已经被广泛应用的数字图像处理的方法。图像腐蚀它的根本依据是:为了得到和衡量灰度图像中所要的对应物体形状,而用结构元素对灰度图进行勘测,找到图像中可以容纳下这个结构元素的位置以达到目的。图像腐蚀可以消除图像中小的而且对没有意义的“污点”,如果“污点”之间有着细小的接通,则可以选择较大的结构元素,把它们一起腐蚀掉。如果结构元素的值都是正的,则得到的图像会比输出图像亮。

腐蚀效果图如下图3-3:


ac01d6697ecd6d7f0cd911df7bff5fee.png


图3-3 灰度图腐蚀后效果图

·


3.3.2 平滑图像、移除小对象

为了保存并呈现出图像中有意义的信息且要消除噪声干扰,我们通常对图像采用平滑处理。

效果如下图3-4:


ba8203a71c74c89ffd54754ba8f0ebd3.png

894338c8c37fc4e23009844e86e3ff51.png


图3-4 平滑、移除小对象效果图


3.3.3 牌照区域的分割

到这里要将车牌照从原图像分离出来,这里运用了彩色分离的方法。一般车牌照颜色会区别于车身或者其他颜色,所以这里我们就可以设定一个颜色以及设定一个阈值范围,再经过平滑的区域上再进行扫描车牌颜色所对应的灰度范围,来得到车牌的最终位置。

最终得到的车牌:



b4fa4e4b675cb17e6500a998e1fbfe45.png


图3-5 定位到的车牌


得到了这张带有噪声的目标图像后,我们还要对图像进行再处理,这里我们最经常用到的方法是对图像二值化,再滤波。首先设置一个阈值,然后用这个阈值再讲图像划分为两个部分,再经过平均线性滤波的方法对图像像素进行滤波,再把这个像素值赋予整张图像作为其同意像素。



3.4 字符分割


字符分割、归一化

因为车牌本身字符之间的间隔较大,所以我们可以设置一个阈值,在对车牌进行扫描,如果存在有连续大于阈值的空白块,则将在这里从上到下进行分割。

对于分割出来的字符,我们还需要对其进行统一规格的设置,这有利于后面对字符的识别。


f986ce5c6676c20c36fe474ab5e4cdb4.png
图3-6 字符分割与归一化流程图









7e918edab9d6f30861d878ebcc3ee9e5.png
图3-7归一化处理后的七个字符图像







3.5字符的识别


建立自动识别的代码表

读取分割出来的字符

第一个字符与模板中的汉字模板进行匹配

第二个字符与模板中的字母模板进行匹配

待识别字符与模板字符相减,值越小相似度越大,找到最小的一个即为匹配的最好的

识别完成,输出此模板对应值

后5个字符与模板中的字母与数字模板进行匹配

图3-8 字符识别流程图


字符识别的准确性直接决定了该系统是否可靠。在之前的研究中最经常被用于字符的识别主要有模板匹配法和神经网络识别法。在这次研究设计中我们采用的是模板匹配法进行识别,该方法是将分割出来的字符样本进行字符归一化处理,使图像大小与原先已经存储在计算机内的标准字符大小一致,再与标准字符进行一一对比,最后结果取差异最小的相对应的标准字符。这种模板匹配的方法相对比较快速、简单。但是对字符图像要求比较高,一旦图像有噪声或者亮度问题其结果就可以能存在差异。神经网络识别法,它是结合神经网络技术,依靠人的经验来取得字符的特征,再利用神经网络的辨别能力来对字符进行识别,这个方法得到的结果会比较准确,但技术要求较高。


对该系统使用的模板匹配的识别方法,它先依次提取需要识别的字符的二值图像上下左右四个点的像素点,想沿着图像中心方向提取周围像素点,计算出每个像素点与标准模板对应该坐标的像素点的相识度,其中相似度最高的标准字符图就作为需要的字符的对应字。也可以计算出原始图像一些特征像素点之间的距离,再计算出标准模板对应特征点的距离,再判断他们距离的差异。取最小差异的标准模板为结果。但是,由于原始字符在可能会由于拍摄的时候角度原因和图像经过处理后,图像像素点距离发生改变。所以,在对标准模板的设计时应根据实际拍摄角度等多做一些相对于的模板,让比较结果更为精确。





882df3e3a71e217e87ccd9d7fce2f9e2.png
图3-9 最终识别显示结果

  • 4
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

你的matlab大师

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值