专题报道
数值模拟 / 仿真 / 虚拟技术 %SPECIAL REPORT
基于
MATLAB
图像处理的汽车牌照识别系统
仇成群
(盐城师范学院,江苏 盐城
)
224002
摘 要:汽车牌照识别系统是交通管理领域和数字图像处理领域里的热点问题
汽车牌照图像识别系统
取
字符分割
、
照
关键词:MATLAB;图像处理;汽车牌照识别;字符分割
中图分类号:TP391
车牌定位
、
对其中出现的问题进行了具体分析
该系统实现了汽车牌照的字符分割,分割准确率高
。
字符识别五大模块,通过调用 MATLAB 函数来实现每一个部分处理过程
、
处理,找出了汽车牌照识别过程的方法
、
文章编号:1002-2333(2008)08-0087-03
文献标识码:A
速度快
、
。
。
。
文中介绍了一种基于 MATLAB 处理的
。
边缘提
、
最后识别出汽车牌
整个处理过程分为预处理
。
A License Plate Recognition System Based on MATLAB Image Processing
(
Yancheng Teachers University
,
Yancheng 224002, China
)
QIU Cheng-qun
Abstract:LPR is one of the hottest issues in the area of the traffic management and digital image processing. In this
paper, it will introduce a license plate recognition system which is based on MATLAB image processing. This system
realizes license character segmentation, which is accuracy and fast. This process was divided into pre -process, edge
extraction, vehicle license location, character division and character recognition, which is implemented separated by
using MATLAB. The license is recognized at last. At the same time, the problems are also analyzed and solved in the
process. The method of recognition to the vehicle license is found.
Key words:MATLAB; image processing; license plate; character segmentation
。
基于
MATLAB
。
车牌定位
、
汽车牌照识别系统是建设智能交通系统不可或缺的
部分
图像处理的汽车牌照识别系统是通
过引入数字摄像技术和计算机信息管理技术,采用先进
模式识别和人工智能技术,通过对图像的采
的图像处理
、
集和处理,获得更多的信息,从而达到更高的智能化管理
程度
边缘提
取
MATLAB
软件编程来实现每一个部分处理工程,最后识别出汽车
牌照[1-4]
1 MATLAB 及其图像处理工具概述
MATrix LABoratory
公司开发的一种功能强
车牌识别系统整个处理过程分为预处理
字符识别五大模块,用
、
(矩阵实验室)的缩
简单
、
的图像处理工具箱,功能十分
写,是
易学的数学软件
强大,支持的图像文件格式丰富,如
字符分割
、
效率高
、
Math Works
。MATLAB
MATLAB
是
、
。
*.BMP、*.JPG、*.
20
等
提供了
。MATLAB 7.1
JPEG、*.GIF、*.TIF、*.TIFF、*.PNG、*.PCX、*.XWD、*.HDF、
多类图像处理
*.ICO、*.CUR
函数,几乎涵盖了图像处理的所有技术方法,是学习和研
这些
究图像处理的人员难得的宝贵资料和加工工具箱
图像算术
函数按其功能可分为:图像显示
运算
图
几何变换
、
、
图像
像增强
、
变换
灰度与二值图像的形态学运算
基
、
、
图像类
于边缘的处理
、
型与类型转换
)
还着重在图形用户界面(
GUI
的制作上作了很大的改善,对这方面有特殊要求的用户
图像登记
、
线性滤波
线性二元滤波设计
、
、
邻域与块处理
、
图像文件
、
像素值与统计
、
色彩映射表操作
、
I/O、
图像分析
、
色彩空间变换
、
图像去模糊
、
。MATLAB
。
。
MATLAB
本文将给出
也可以得到满足
的图像处理工
具箱中的图像处理函数实现图像处理与分析的应用技
术实例
2 基于 MATLAB 图像处理的汽车牌照识别系统
2.1
。
系统组成
基 于
MATLAB
图像处理的汽车牌
照识别系统主要包
字符车
括车牌定位
、
牌分割和车牌字符
识别三个关键环节
其识别流程图如图
。
1
所示
。
原
始
图
像
图
像
预
处
理
边
缘
提
取
车
牌
定
位
字
符
分
割
字
符
识
别
图 1 识别流程图
其中,原始图像:由数码相机或其它扫描装置拍摄
到的图像;图像预处理:对动态采集到的图像进行滤
波
边界增强等处理以克服图像干扰;边缘提取:通过
、
微分运算
二值化处理,得到图像的边缘;车牌定位:计
、
算边缘图像的投影面积,寻找峰谷点,大致确定车牌位
置,再计算此连通域内的宽高比,剔除不在域值范围内
的连通域,最后得到的便为车牌区域;字符分割:利用
投影检测的字符定位分割方法得到单个的字符;字符
识别:利用模板匹配的方法与数据库中的字符进行匹
配从而确认出字符,得到最后的汽车牌照,包括英文字
母和数字
。
本 文 结 合 图 像 处 理 各 方 面 的 知 识, 通 过 调 用
图像函数,给出了从车牌的预处理到字符识别
MATLAB
机械工程师
2008
年第
期
8
87
专题报道
%SPECIAL REPORT 数值模拟 / 仿真 / 虚拟技术
的完整过程实例,说明了基于
照识别系统的特点
。
MATLAB
图像处理汽车牌
2.2
图像预处理及边缘提取
图像在形成
、
系统噪声
、
传输或变换过程中,受多种因素的影
相对
响,如:光学系统失真
、
运动等,往往会与原始景物之间或图像与原始图像之间
因此在图像
产生了某种差异,这种差异称为降质或退化
处理之前必须进行预处理,包括去除噪音
增
、
加亮度等等
曝光不足或过量
、
。
边界增强
、
。
因为噪声主要是一些含高频的突变成分,因此可以
通过一个低通滤波器来消除图像中包含的噪声,并使低
频成分得到增强
滤波的方式有两种,一种是空间域滤
在空间域,常见的滤波方式有两
波,一种是频率域滤波
种方式,均值滤波和中值滤波
空间域滤波主要有巴特沃
在车牌边缘提取之前,两种滤波方式都采用,
斯滤波器
并与未进行滤波的边缘进行比较
。
。
。
。
2
汽车原图如图
所示,未滤波直接提取出的边缘信
所
息图如图
示,对比两幅图片,边缘图像都很清晰,所以没必要进行
低通
所示,经均值滤波后提取的边缘图如图
4
3
高通滤波处理
、
。
。
图 2 汽车原图
图 3 未滤波直接提取出
的边缘信息图
经过实验得出并不是每一种图像处理之初都适合滤
为了保存更多的有用信息,经多次比较,
波和边界增强
选择图
。
4
作为后期处理的图像
。
4
。
。
对图
后的车牌进一步使用微定位技术
该方法包括三部分:
(
)车牌的横向定位;(
)车牌的纵向定位;(
)车牌的微
1
3
2
定位
。
汽车本身具有一定的特点,一般情况下,牌照都挂
在缓冲器上或附近,分割的主要意图是缩小牌照搜索范
所示的汽车边缘图
围,大致确定出牌照的位置
),我们首先进行水平方向一阶差分运算,其中
,
像
y
然后对水平差分图像的像
(
f
x
分别为图像的行数和列数
x、y
(
)
素沿水平方向累加产生一个投影表
。
i
T
)较大,而在车牌
(
一般对应于车牌位置的投影值
T
i
上,下行附近的投影值较小,均有谷点存在
只要能找到
这两个谷点,就能大致确定出汽车牌照的位置,缩小车牌
(
)值
搜索范围
i
T
应该是最大的,而车牌位置就在其附近
根据这些特定,
。
可定出车牌位置大概在
行之间
同上可初步得
之间
到汽车牌照的列位置在
可以看出,车牌下方的横栏处的
266-333
由图
。
。
。
。
5
268-547
。
对初步确定出来的牌照进行微定位,所谓微定位法,
就是对基本定位后的车牌图像进行局部分析,以进一步
确定字符范围,缩减车牌的左
下边界,这有利于
、
确定出汽车牌照的具体位置,最后
后续的牌照字符处理
提取出汽车牌照
右和上
、
。
。
。
。
2.4
字符分割
在汽车牌照自动识别过程中,字符分割有承前启后
它在前期牌照定位的基础上进行字符的分割,然
的作用
字符识别的算法很
后再利用分割的结果进行字符识别
。
多,常采用垂直面积投影法来实现
由于字符块在竖直方
向上的投影必然在字符间或字符内的间隙处取得局部最
字符尺
小值,并且这个位置应满足车牌的字符书写格式
、
是车牌垂直方向上的面
寸和其他一些条件的限制
积投影图
从图形中我们很直观地看出投影值中出现了
个字母中间的间隙只有
个间隙
有字符的列其灰度值比较高,无字符的则相
的特征,很容易得到
个字
;第
个字符:
。
条间隙,
8
6
是字符间的
对比较低
每个字符的起始终止位置
符:
个字符:
1
1-36
;第四个字符:
;第
。
依据这一点,再结合图
个字符:
个字符:
个,还有
个字符:
124-161
86-124
36-74
;第
;第
;第
图
第
。
。
。
6
5
3
6
2
3
5
161-197
6
197-235
7
图 4 经均值滤波后提取
的边缘图
图 5 二值化后的边缘图像
235-269。
二值化后的边缘图像如图
所示,其在后期的识别
中并不会提高车牌的识别率,因此不采用二值化的图像
来进行识别,后续图像处理依然选用图
5
2.3
车牌提取
经过边缘提取得到的图像,车牌区域在水平方向灰
度面积值具有明显频繁跳变,在垂直方向上的面积投影
则出现峰
根据这种峰谷特点,自动检测
车牌位置峰点检测的车牌区域定位方法,并对初步定位
峰的特性
谷
。
-
-
4。
88
机械工程师
2008
年第
期
8
图 6 车牌垂直方向上的面积投影图
按行数不变,列数分为
个不同的
又因为在字符的模式识别中,模板大小统一,因
组分别映射到
7
7
数组中
。
此得到的
形式
7
个数组必须变换其大小,均统一成
的
分割出来的
个字符如图
。
jpg、M2.jpg、M3.jpg、M4.jpg、M5.jpg、M6.Jpg、M7.jpg
M1.
, 并 用
函数写入图像文件夹中,在后期处理中可以直接
7
7
26×14
所示,分别命名为
imwrite
进行调用
。
图 7 分割出来的 7 个字符图像
因为图像中含有许多噪声,因此必须进行滤波,然后
使其最后得到的图像与标准模板一
归一化,二值处理
样,只含有两种灰度值黑与白
。
2.5
字符识别
目前用于车牌字符识别(
。
)中的算法主要有:基
OCR
。
。
。
。
。
OCR
OCR
OCR
基于模板匹配的
用人工神经网络
算法以及基于人工神经网络的
因此,字符特征的提取就成为研究的关键
于模板匹配的
OCR
算法
的基本过程是:首先对待识
别字符进行二值化并将其尺寸大小缩放为字符数据库
中模板的大小,然后与所有的模板进行匹配,最后选最
进行字符识别
佳匹配作为结果
主要有两种方法:一种方法是先对待识别字符进行特征
提取,然后用所获得的特征来训练神经网络分类器
识
别效果与字符特征的提取有关,而字符特征提取往往比
另一
较耗时
种方法则充分利用神经网络的特点,直接把待处理图像
输入网络,由网络自动实现特征提取直至识别
模板匹
配的主要特点是实现简单,当字符较规整时对字符图像
污迹干扰适应力强且识别率相当高,是车牌字
的缺损
、
在字符识别之前必须把模板库
符识别的主要方法[5-8]
设置好
个,大部分车牌第一
警别等有
位是汉字,通常代表车辆所属省份,或是军种
、
车牌
特定含义的字符简称;紧接其后的为字母与数字
。
字符识别与一般文字识别在于它的字符数有限,
十
以及相关的车
个阿拉伯数字,
26
学
牌用汉字:京
使
沪
丙
领
、
、
、
、
、
兰
警等,以及新式军牌中的汉字南
试
边
广
、
、
、
、
、
北
空
海等;车牌颜色:蓝
黄等
所以建
、
、
、
立字符模板库也极为方便
3 模板设计
个大写英文字母
苏
甲
、
、
汽车牌照的字符一般有
消
、
济
、
境
、
沈
、
A~Z
乙
、
港
、
澳
、
台
、
黑
、
白
、
0~9
。
。
。
、
。
。
7
。
、
、
jpg
bmp
一幅
或者
背 景
分析 字 符 分 割 得 到 的图 像 以 及 其 他车 牌 图 像 中
字 符 边 缘 色 等
字 符 的 特 点 ,将 模 板 设 定 大 小
等
格式的图片,其中包含了许许
多多的像素点,各像素点的值也不一样,模板库中 的
字符应该是已知的,是 预 先 设 置好 的 ,是 不 可 更 改
的,而不是在实验过程中来得到
用画图工具一步一
步逼近实现模板设置
实验结果显示,这种方法简单
字符识别中模板匹 配 方 法 是 实现离 散 输 入 模
易行
式分类的有效途径之一,其 实 质 是 度 量 输 入 与 样 本
之间的某种相似性,取 相 似 性 最 大 者 为 输 入模式 所
。
。
。
专题报道
数值模拟 / 仿真 / 虚拟技术 %SPECIAL REPORT
属类别,它根据字符的直观形象抽取特征,用相 关 匹
配原理进行识别,即将 输入 字 符 与 标 准 字 符 在 一 个
分类器中进行匹配 [5-7]
。
r
b
B
A
。
。
。
。
max
r。A
corr2
=max
基于
。max
(
A
r=corr2
MATLAB
实现字符的识别,其中有两个很重要
函
其调用方法:
。Corr2
与
函数和
与
。M1、M2、M3、M4、M5、M6、M7
函数
的相关系数
其调用方式:[
b
返回的是比较后得到的最大值,
c
同时编写一个识别函数
的函数可以直接调用:
数直接用来计算图像矩阵
B
是双精度标
的大小及数据类型必须相同,得到的结果
量
,
),字符识别只需调用此函
B
数,即将分割出来的字符与设置好的模板一一进行相关
函数就是
运算,然后寻找出它们中的最大相关值
用来选择几个数值的大小值
,
(
]
c
a
(
)),其中
是最大值
:
所对应的元素位置
用
result.m
来返回识别结果
为标准模
函数在开始运行时,从主函数里得
板对应的二维数组
到待识别的字符,字符与模板进行相关运算,同时找出
相关运算后的最大值及对应的函数位置
然后对最大位
并 在
置 进 行 判 别 , 返 回 所 对 应 的 字 符 给 主程 序
函数大大简
MATLAB
化了计算量,每个字符在识别的时候直接调用此函数,
的运
避免了重新编程浪费的时间及空间 [7-8]
。MATLAB
,
,
行窗口显示出的车牌号码为:苏,
,准确识
J
7
7
别了车牌
。
4 结 语
基于
图像处理的汽车牌照识别系统很大
程度得利于
功能强大,它包括
数值计算和符号计算,并且计算结果和编程都为可视化
。
本文介绍了一种基于
处理的汽车牌照图像识
通过实验表明该系统可以实现汽车牌照的识别,
别系统
并且准确率高
具有较好的应用前景
运行窗口显示出来
MATLAB
MATLAB
MATLAB
MATLAB
软件,
result.m
编写
,
H
,
7
,
7
。
。
。
。
,
。
[参考文献]
数字图像处理[
[
] 霍宏涛
1
M
[
] 陈桂明,张明照,戚红雨
2
.
.
]
.
应用
北京:机械工业出版社,
2003.
MATLAB
语言处理数字信号与
数字图像[
北京:科学出版社,
]
.
M
2000.
[
] 郎锐
3
.
数字图象处理学
Visual C++
实现[
]
.
M
北京:北京希望电
子出版社,
2002.
[
] 李了了,邓善熙
4
算机信息,
2003
.MATLAB
(
):
,
2
19
65-66.
]
在图像处理技术方面的应用[
J
.
微计
[
] 周妮娜,王敏,黄心汉,吕雪峰,万国红
5
车牌字符识别的预处理
]
算法[
J
.
计算机工程与应用,
220-221.
]
彩色汽车牌照定位方法[
J
.
2003
红外与激光工程,
.
(
):
2
,
15
[
] 任仙怡,周晓
6
.
(
):
3
,
31
2002
204-207.
[
] 许志影,李晋平
7
与现代化,
2003
[
] 苑玮琦,伞晓钟
8
]
及其在图像处理中的应用[
J
.
.MATLAB
(
):
4
]
一种汽车牌照多层次分割定位方法[
J
.
64-65.
.
计算机
中国体
视学与图像分析,
2004
(
,
):
4
9
239-243.
(编辑 昊 天)
//////////
作者简介:仇成群(
1980-
),男,工学硕士,主要从事汽车功能评估工作
。
收稿日期:
2008-06-03
机械工程师
2008
年第
期
8
89