基于图像处理的汽车牌照的识别_第1页
基于图像处理的汽车牌照的识别_第2页
基于图像处理的汽车牌照的识别_第3页
基于图像处理的汽车牌照的识别_第4页
基于图像处理的汽车牌照的识别_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1 基于图像处理的汽车牌照的识别 摘要摘要 以一幅汽车牌照的识别为例 具体介绍了车牌自动识别的原理 整个处理过程分为预处理 边缘提 取 车牌定位 字符分割 字符识别五大模块 用MATLAB软件编程来实现每一个部分 最后识别出汽车牌 照 在研究的同时对其中出现的问题进行了具体分析 处理 寻找出对于具体的汽车牌照识别过程的最好 的方法 关键词关键词 汽车牌照 车牌提取 字符分割 字符识别 The vehicle license recognition based on the image processing Author Chen Qiuju Tutor Li Fangzhou School of Physics and Electronic Information Wen Zhou Normal College 325027 AbstractAbstract With one vehicle license recognition the principle of the automobile License recognition is introduced 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 best method of recognition to the very vehicle license is found KeywordsKeywords vehicle license vehicle license location character segmentation Character recognition 1 引言 1 1 选题意义 2 汽车牌照自动识别系统是以汽车牌照为特定目标的专用计算机视觉系统 是计算机视觉 和模式识别技术在智能交通领域应用的重要研究课题之一 是实现交通管理智能化的重要 环节 它可广泛应用于交通流量检测 交通控制与诱导 机场 港口 小区的车辆管理 不停车自动收费 闯红灯等违章车辆监控以及车辆安全防盗等领域 具有广阔的应用前景 目前 发达国家LPR 汽车牌照识别技术License Plate Recognition LPR 简称 车牌 通 系统在实际交通系统中已成功应用 而我国的开发应用进展缓慢 车牌识别系统基本 上还停留在实验室阶段 基于这种现状还有它广阔的应用前景 目前对汽车车牌的识别研 究就有了深远的意义 1 2 课题组成 汽车车牌的识别过程主要包括车牌定位 字符车牌分割和车牌字符识别三个关键环节 其识别流程如下 原始图像 由数码相机或其它扫描装置拍摄到的图像 图像预处理 对动态采集到的图像进行滤波 边界增强等处理以克服图像干扰 边缘提取 通过微分运算 2 值化处理 得到图像的边缘 车牌定位 计算边缘图像的投影面积 寻找峰谷点 大致确定车牌位置 再计算此 连通域内的宽高比 剔除不在域值范围内的连通域 最后得到的便为车 牌区域 字符分割 利用投影检测的字符定位分割方法得到单个的字符 字符识别 利用模板匹配的方法与数据库中的字符进行匹配从而确认出字符 得到 最后的汽车牌照 包括英文字母和数字 本文以一幅汽车图像为例 结合图像处理各方面的知识 利用 MATLAB 编程 实现了从 车牌的预处理到字符识别的完整过程 各部分的处理情况如下 2 预处理及边缘提取 原始图像 图像预处理 边缘提取 车牌定位 字符分割 字符识别 3 图1 汽车原图 图像在形成 传输或变换过程中 受多种因素的影响 如 光学系统失真 系统噪声 暴光不足或过量 相对运动等 往往会与原始景物之间或图像与原始图像之间产生了某种 差异 这种差异称为降质或退化 这种降质或退化对我们的处理往往会造成影响 因此在 图像处理之前必须进行预处理 包括去除噪音 边界增强 增加亮度等等 因为噪声主要是一些含高频的突变成分 因此可以通过一个低通滤波器来消除图像中 包含的噪声 并使低频成分得到增强 滤波的方式有两种 一种是空间域滤波 一种是频 率域滤波 在空间域 常见的滤波方式有两种方式 均值滤波和中值滤波 空间域滤波主 要有巴特沃斯滤波器 在车牌边缘提取之前 两种滤波方式均采用了 并与未进行滤波的 边缘进行比较 以下是经处理后的一些图片 图 2 经均值滤波后提取的边缘图像 4 图 3 经巴特沃斯低通滤波后提取的边缘图像 图 4 未滤波直接提取出的边缘信息 5 图 5 经高通滤波器增强后得到的边缘图像 对比以上几幅图片 图 2 的边缘太粗 而图 3 的边缘已经模糊掉了 图 5 中包含的噪声 太多 图 4 未经滤波直接提取出的边缘图像最清晰 所包含的有用信息最多 分析这种情 况产生的原因 归纳起来主要有以下方面 1 原始图像清晰度比较高 从而简化了预处理 2 图像的平滑处理会使图像的边缘信息受到损失 图像变得模糊 3 图像的锐化可以增强图像中物体的边缘轮廓 但同时也使一些噪声得到了增强 综上所述 结合 MATLAB 实验过程 得出不是每一种图像处理之初都适合滤波和边界 增强 本次汽车车牌的识别 为了保存更多的有用信息 经过多次比较 选择图 4 作为后 期处理的依据 边缘的提取采用的是梯度算子 因为其实现过程比较简单 所以在此不多 加赘述了 提取出的边缘含有多个灰度值 要进行二值化处理 选择一个合适的域值 经多次比较 选取域值 T 70 对于灰度值大于 T 的赋值为 255 小于 T 的赋值为 0 经过处理后的图像 如下所示 图 6 二值化后的边缘图像 6 结合后期分割得到的车牌图 7 二值化后的图像在后期的识别中并不会提高车牌的识 别率 因此不采用二值化的图像来进行识别 因此后面的处理依然使用图 4 3 车牌提取 经过边缘提取得到的图像 车牌区域在水平方向灰度面积值具有明显频繁的跳变 在 垂直方向上的面积投影则出现峰 谷 峰的特性 根据这种峰谷特点 自动检测车牌位置峰 点检测的车牌区域定位方法 并对初步定位后的车牌进一步使用微定位技术 该方法包括 三部分 1 车牌的横向定位 2 车牌的纵向定位 3 车牌的微定位 汽车本身具有一定的特点 一般情况下 牌照都挂在缓冲器上或附近 处于车牌照图像 的下半部分 本次分割的主要意图是缩小牌照搜索范围 大致确定出牌照的位置 对如图4 所示的汽车边缘图像f x y 我们首先进行水平方向一阶差分运算 即 g i j f i j f i j 1 其中i 1 2 3 xw 1 j 0 1 2 3 yw 1 其中xw yw分别 为图像的行数和列数 然后对水平差分图像的像素沿水平方向累加产生一个投影表T i 如图7所示 图7 汽车边缘图像的水平面积投影图 一般对应于车牌位置的投影值T i 较大 而在车牌上 下行附近的投影值较小 均有 谷点存在 只要能找到这两个谷点 就能大致确定出车牌照的位置 缩小车牌搜索范围 由图4可以看出 车牌下方的横栏处的T i 值应该是最大的 而车牌位置就在其附近 根据 这些特定 可定出车牌位置大概在320 350行之间 类似的方法得出汽车边缘图像的垂直面积投影图 7 图8 汽车边缘图像的垂直面积投影图 同上可初步得到汽车牌照的列位置在120 210之间 大致确定的牌照位置如下图 图9 粗略定位出的汽车牌照 对初步确定出来的牌照进行微定位 所谓微定位法 就是对基本定位后的车牌图像进 行局部分析 以进一步确定字符范围 缩减车牌的左 右和上 下边界 这有利于后续 的牌照字符处理 具体实现如下 1 由于车牌近似为一个矩形 上下边缘近似为一条直 线 通过简单的灰度变化分析就可以再次定位车牌图像的上下边界 这种情况适合于倾 斜度较小的车牌 对于倾斜程度较大的牌照来说 在其横向定位之前就应该利用相关的 技术进行车牌的矫正 例如Hough 变换技术 2 确定左边界 从左向右扫描 当遇到灰 度值大于设定值60之后 停止扫描 上边界也是利用这种方式得到 这样就得到首字符的 起始位置 再利用牌照的大小 宽高比一般都是固定的这些先验知识 就可以确定出牌照 的具体位置 本设计中采用的车牌 其宽高比为1 3 从而确定出汽车牌照的具体位置 最 后提取出的汽车牌照如下图 图10 二值化的汽车牌照 图11 未进行二值化的汽车牌照 4 字符分割 在汽车牌照自动识别过程中 字符分割有承前启后的作用 它在前期牌照定位的基础 上进行字符的分割 然后再利用分割的结果进行字符识别 字符识别的算法很多 常采用 垂直面积投影法来实现 面积投影法的公式如下 8 由于字符块在竖直方向上的投影必然在字符间或字符内的间隙处取得局部最小值 并且 这个位置应满足车牌的字符书写格式 字符尺寸和其他一些条件的限制 下图是图10在垂 直方向上的面积投影图 从图形中我们很直观的看出投影值中出现了8条间隙 6个字母中 间的间隙只有5个 还有三个间隙是字符间的 有字符的列其灰度值比较高 无字符的则相 对比较低 依据这一点 再结合图10的特征 很容易得到每个字符的起始终止位置 第一 个字符 1 10 第二个字符 10 18 第三个字符 28 41 第四个字符 42 48第五个字符 60 68 第六个字符 68 78 图12 车牌垂直方向上的面积投影图 将图10按照上面的分析行数不变 列数分为六组 分别影射到六个不同的数组中 又因 为在字符的模式识别中 其模板大小统一 因此得到的六个数组必须变换其大小 均统一 成26 14的形式 分割出来的六个字符如下所示 分别命名为 M1 jpg M2 jpg M3 jpg M4 jpg M5 jpg M6jpg并用imwrite函数写入图像文件夹中 以便在后期处理中可以直接进行调用 图12 分割出来的六个字符图像 一般分割出来的字符要进行进一步的处理 以满足下一步字符识别的需要 因为图像中 含有许多燥声 这在预处理的图像中已经看出来了 因此必须进行滤波 然后归一化 二 值处理 使其最后得到的图像与标准模板一样 只含有两种灰度值 黑与白 但是对于车牌 的识别 并不需要这么多的处理就已经可以达到正确识别的目的 在此简化了处理过程 未经滤波归一化 直接进行后期处理 5 字符识别 字符的识别目前用于车牌字符识别 OCR 中的算法主要有基于模板匹配的OCR算法以及 基于人工神经网络的OCR算法 基于模板匹配的OCR的基本过程是 首先对待识别字符进行二 9 值化并将其尺寸大小缩放为字符数据库中模板的大小 然后与所有的模板进行匹配 最后 选最佳匹配作为结果 用人工神经网络进行字符识别主要有两种方法 一种方法是先对待识 别字符进行特征提取 然后用所获得的特征来训练神经网络分类器 识别效果与字符特征 的提取有关 而字符特征提取往往比较耗时 因此 字符特征的提取就成为研究的关键 另一种方法则充分利用神经网络的特点 直接把待处理图像输入网络 由网络自动实现特 征提取直至识别 模板匹配的主要特点是实现简单 当字符较规整时对字符图像的缺损 污迹干扰适应力强且识别率相当高 综合模板匹配的这些优点我们将其用为车牌字符识别 的主要方法 字符识别的算法如下 因此在字符识别之前必须把模板库设置好 汽车拍照的字符一般有七个 大部分车牌第 一位是汉字 通常代表车辆所属省份 或是军种 警别等有特定含义的字符简称 紧接其 后的为字母与数字 车牌字符识别与一般文字识别在于它的字符数有限 汉字共约 50 多个 大写英文字母 26 个 数字 10 个 所以建立字符模板库也极为方便 本次设计所识别的车 牌只有字母与数字 为了实验方便 结合本次设计所选汽车牌照的特点 只建立了 3 个字 母与 3 个数字的模板 其他模板设计的方法与此相同 5 15 1 模板设计模板设计 分析字符分割得到的图像以及其他车牌图像中字符的特点 将模板大小定为 26 14 背景为黑色 代表灰度值 0 字符边缘为白色 代表灰度值 255 设计过程如下 1 用画图工具先画出 P F M 1 0 3 等几个字符的图像 并分别保存为 m11 jpg m12 jpg M1 jpg m14 jpg m15 jpg m16 jpg 根据画图的经验其大小应略大于 26 14 以 利于后面的处理 所得到的字符均为黑字白底 字体为方正姚体 大小 16 号 所画出的图形如下 2 对 1 中获得的粗略图像用 MATLAB 进行处理 处理的方面包括 a 去除边框 利用二维数 组的映射关系实现 去掉开始行 列 与结束行 列 即所有外围像素点 b 提取模板的边 读入字符图像 与模板库中的字母逐 一进行相关运算 寻找相关度最大值所 对应的模板 输出此模板所对应的值 10 缘 其实现方法与前面的汽车边缘提取的方法相同 也是利用梯度算子 C 尺寸大小 变换 切割为标准的 26 14 格式 3 整个处理过程结束后 再用imwrite 函数写入图像库中 作为标准模板使用 经过处理后的标准模板形式如下 模板的设计过程 共进行了两次 作为一幅 jpg 或者 bmp 形式的图片 其中包含了许 许 多多的像素点 各象素点的值也不一样 到底如何来确定这些像素点的值呢 模板设置无 疑成为一个难点 于是便投机取巧 将本身分割得到的字符保存起来直接作为模板使用 这种方法明显不具有科学性 图像识别中模板匹配法是将未知的东西与已知的东西来进行 比较 因此模板库中的字符应该是已知的 是预先设置好的是不可更改的 而不是在实验 过程中来得到 第二次便是用以上的画图工具来一步一步逼近实现模板设置 实验结果显 示 这种方法简单易行 5 25 2 识别过程识别过程 字符识别中模板匹配方法是实现离散输入模式分类的有效途径之一 其实质是度量输入 与样本之间的某种相似性 取相似性最大者为输入模式所属类别 它根据字符的直观形象 抽取特征 用相关匹配原理进行识别 即是将输入字符与标准字符在一个分类器中进行匹 配 车牌字符相关匹配算法如下 输入字符用输入函数 X 表示 标准模板用函数 T 表示 它们的大小均为 26 14 将未 知的模式逐个与模板匹配 求出其相似度 其中 M 26 N 14 Ti 指第 i 个模板 X Ti 是指矩阵对应元素相乘 如果把 X 与 T 都归一化为 1 和 0 则上式表示标准模板与待识图像上对应点均为 1 的数目与标 准模板上 1 点的数目之比 如果 maxSi 则判定 X Ti 否则拒识 这里 为拒识域值 本次实验中直接取相关 最大值为判定域值 用 MATLAB 来实现字符的识别 其中有两个很重要的函数可以直接调用 corr2 函数和 max 函数 Corr2 函数直接用来计算图像拒阵 A 与 B 的相关系数 r A 与 B 的大小及数据类型必须相 同 得到的结果 r 是双精度标量 其调用方法如下 r corr2 A B 因此本设计中的字符识别只需调用此函数 即将分割出来的字符与设置好的模板一一进 行相关运算 然后寻找出它们中的最大相关值 max 函数就是用来选择几个数值的大小值 其调用方式如下 b c max a 其中 b 返回的是比较后得到的最大值 c 是最大值所对应的元素位置 11 同时还自编了一个识别函数 result m 用来返回识别结果 程序代码如下 function c result H M1 imread M1 jpg M2 imread M2 jpg M3 imread M3 jpg M4 imread M4 jpg M5 imread M5 jpg M6 imread M6 jpg M1 double M1 M2 double M2 M3 double M3 M4 double M4 M5 double M5 M6 double M6 d zeros 6 d 1 corr2 H M1 d 2 corr2 H M2 d 3 corr2 H M3 d 4 corr2 H M4 d 5 corr2 H M5 d 6 corr2 H M6 D e max d switch e case 1 c P case 2 c F case 3 c M case 4 c 1 case 5 c 0 case 6 c 3 otherwise end M1 M2 M3 M4 M5 M6 为标准模板对应的二维数组 函数在开始运行时 从主 函数里得到待识别的字符 此字符与模板进行相关运算 同时找出相关运算后的最大值及 对应的函数位置 然后对最大位置进行判别 返回所对应的字符给主程序 并在 MATLAB 运 行窗口显示出来 编写 result m 函数大大简化了计算量 每个字符在识别的时候直接调用此函数 避免了 重新编程浪费的时间及空间 这是本次车牌识别中的一大亮点 运行结果 MATLAB 的运行窗口显示出的车牌号码为 P F M 1 0 3 完成了准确识 12 别车牌的目的 6 总结 6 1 设计过程说明 在汽车车牌识别的整个过程中 查找了很多资料 综合了各方面的信息 车牌实现的每 一步都有许多的方法 各种方法都有其优劣 但是对于具体的图像处理 并不是每一种理 论在实践中都可以实现 即使实现了也很难说哪一种方法最合适 还得在具体的实验中比 较选择 以车牌预处理为例 经过滤波和边界增强处理后提取出的车牌效果明显没有未处 理的效果理想 第二点在程序调试的过程中要耐心的检查每一个错误 测试结果表明 本 设计有以下几条优点 1 充分利用 MATLAB 中已有的函数库 整个程序设计简单易行 2 识别准确率高 6 2 设计工具说明 车牌识别程序设计能够得以顺利完成 在很大程度上得利于MATLAB这套软件 MATLAB 功能强大 它包括数值计算和符号计算 并且计算结果和编程可视化 这为编程调试创造 了一个便利的环境 作为图像处理最适用的工具之一 其突出的特点是它包含一个图像处 理工具包 这个工具包由一系列支持图像处理操作的函数组成 所支持的图像处理操作有 图像的几何操作 邻域和区域操作 图像变换 图像恢复与增强 线性滤波和滤波器设计 变换 DCT 变换等 图像分析和统计 二值图像操作等 在图像的显示方面 MATLAB 提 供了图像文件读入函数imread 用来读取如 bmp tif jpg pcx tiff jpeg hdf xwd 等格式图像文件 图像写出函数imwrite 还有图像显示函数 image imshow 等等 这些 都使编程效率大为提高 7 讨论 本设计已成功达到了车牌识别的目的 而且准确率也很高 但是在整个设计过程中 发 现了几个值得参考的算法 也试图用这种算法来实现车牌识别 但种种原因 而未采用 现在次简单讨论一下 6 1 含8个方向的模板的边缘提取算法 本设计在边缘提取之时 使用的是梯度算子 这种算法的优点是简单易行 但是因为它 不包含边缘的方向 因此对噪声不够敏感 目前 在图像处理方面使用得最多的是一种可 抗噪声的Sobel算法 它定义了8个方向的模板 通常物体的边缘是连续且光滑的 而噪声是随机的 在任一边缘点附近沿边缘的走向 总能找到另一边缘点 且这两边缘点之间的灰度差及方向差都不可能很大 但是噪声则不 13 同 一般情况下 沿任一噪声点的方向 通过上述模板运算得到 不太可能找到与其灰度差 及方向差都很小的噪声点 正是利用这一基本思想 本算法能将实际的边缘点与噪声点区 分开来 加权领域平均算法来进行滤波处理 6 2 加权领域平均算法来进行滤波处理 由实验我们可以看出 一般的滤波器在对图像进行噪声滤除的同时对图像中的细节部分有 不同程度的破坏 都不能达到理想的效果 但是采用加权的邻域平均算法对图像进行噪声 滤除 不仅能够有效地平滑噪声 还能够锐化模糊图像的边缘 加权的邻域平均算法的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论