目录
第1章 绪论 2
1.1 课题背景及研究目的和意义 2
1.2 车牌识别技术的发展概况 4
1.3 车牌识别的基本流程 6
1.4 本文主要研究内容 11
第2章 建立图片集 14
2.1 引言 14
2.2 获取原始图片集 16
2.3 建立车牌区域候选人图片集 17
2.4 建立字符判断图片集 19
2.5 建立数字和字母识别图片集 22
2.6 建立中文字符识别图片集 23
2.7 本章小结 28
第3章 提取车牌区域候选人 28
3.1 引言 28
3.2 图像处理方法的简要介绍 32
3.3 特征提取 38
3.4 提取感兴趣区域 44
3.5 本章小结 48
第4章 字符分析 48
4.1 引言 48
4.2 基于 SVM 的字符判断 51
4.3 区域提取与校正 58
4.4 文本检测 66
4.5 本章小结 72
第5章 字符识别 73
5.1 引言 73
5.2 字母和数字的识别 74
5.3 汉字识别 83
5.4 本章小结 87
第6章 程序综合 88
6.1 程序编写平台搭建 88
6.2 程序框架结构 89
参考文献 95
1.4 本文主要研究内容
本文主要阐述了一种更加“通用”的中文车牌识别方法及其程序实现,该方法针对于识别多种背景,视角,大小,光照条件和来源的车牌图片,它的基本流程如图 1-2 所示,输入需要识别的图片,通过分析边缘或者颜色特征,得到车牌区域候选人,通过对车牌区域候选人进行字符分析,判断它的字符数是否为七,是则将字符分析的结果输入字符识别中,输出车牌号,否则认为它不是车牌。
本次毕业设计的关键点在于实现一种“通用”的中文车牌识别方法,本文的“通用”指的是基于多种背景,视角,大小,光照条件和来源。虽然中文车牌种类繁多, 但由于图片数量的限制以及个人精力有限,本文只研究了生活中最为常见的小型汽车车牌,也就是蓝底白字白框线的尺寸为 440mm×140mm 的车牌,本文的“通用”不涉及各种类型的中文车牌识别。
由于本文中车牌候选区域的获取依然是基于传统数字图像处理方法,所以 该方法除了只能用于“蓝牌”的识别这一不足外,还存在以下四点限制。
(1)输入图片最大边长为 1600 个像素点,整个车牌区域占整张图片中的像素点数目不得超过 1/8。
(2)车牌区域在原图片中肉眼可以清晰分辨,没有严重的模糊现象,车牌中的所有字符没有缺损和遮挡。
(3)车牌区域像素点数在 1000 到 10 万之间,车牌的倾斜角度不超过±45°, “蓝牌”的标准尺寸为 440mm×140mm,为了限制过度的缩放操作使车牌区域形变严重,图中车牌的长宽比需在 1.3 到 6.0 之间。
(4)图片没有较大的水印和人为的涂画,天气状况均为晴天。
图 1-2 本文研究方法的基本流程图
本文主体部分共有五章,分别是建立图片集、提取车牌区域候选人、字符分析、字符的识别、程序综合与分析。
图片集的建立是本研究开展的基础工作,也是研究中相比其他各项工作人力消耗最大的部分,数据集的质量和数量,是整套方法建立的依据。数据集的制作分为 5 个部分:获取包含车牌的数字图片集;获取车牌区域候选人的数据集;建立字符判断的数据集;建立数字和字母识别的数据集;建立中文字符识别的数据集。
车牌区域候选人的获取章节的主要内容是对图片集进行分析并探讨适用的定位方法,传统的车牌定位即使结合了多种图像处理的技术,也是用一套方法去处理不同环境下的图片,实际上不同的场景适合不同的处理方法,细化分类才能帮助机器更好的理解决策。
字符分析章节的处理对象是车牌区域候选人,主要分为字符候选人的提取,字符判断和文本提取三个部分,该部分可以实现非车牌区域的滤除和车牌区域字符分割两大功能。字符候选人的提取采用改进的最大稳定极值区域(Maximally Stable Extremal Regions,MSER)的方法,字符判断使用了基于 20 个字符特征的支持向量机(Support Vector Machine,SVM)作为分类器。字符候选人的提取和字符判断只针对车牌上的数字和字母,不包括汉字。字符聚类搜索可以解决字符嵌套和字符遗漏的问题,完成字符外接矩形校正,最终得到完整的车牌字符序列。
字符的识别章节分为汉字和非汉字识别两部分,其中汉字为 31 个省份的简称, 分类器使用是自主设计的 10 卷积神经网络(Convert Neutral Network,CNN)模型
——MyLeNet,分类器输入是大小为 32*32 的黑白图片;非汉字指的是车牌上使用的 10 种数字和 24 种英文大写字符,它们的识别使用了 BP 神经网络(Back Propagation Neutral Network),分类器的输入是基于纹理的金字塔梯度方向直方图
(Pyramid of Histogram of Oriented Gradients,PHOG)的维度为 180 的特征向量。为了充分说明所用分类器的合理性,本章对比了 BP 神经网络和 CNN 的汉字识别效果以及 SVM 和 BP 神经网络对数字和字母的识别效果。
程序综合章节简要说明了项目平台的搭建过程和程序的框架结构,介绍了本次研究所使用的开发工具集 Visual Studio 和主要使用的计算机视觉库 OpenCV 和卷积神经网络框架 Caffe,阐述了程序如何综合前几章节的研究成果实现自动识别一张或多张图片的功能,展示了程序的运行效果。