EPTA算法在字符识别中的应用_第1页
EPTA算法在字符识别中的应用_第2页
EPTA算法在字符识别中的应用_第3页
EPTA算法在字符识别中的应用_第4页
EPTA算法在字符识别中的应用_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

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

文档简介

二二 一一 年年 六六 月月 本科毕业设计说明书本科毕业设计说明书 学校代码 学校代码 1012810128 学学 号 号 200520203005200520203005 题题 目目 EPTAEPTA 算法在字符识别中的应用算法在字符识别中的应用 学学生生姓姓名名 高高 斌斌 学学 院院 信信 息息 工工 程程 学学 院院 系系 别别 电电 子子 信信 息息 工工 程程 系系 专专 业业 电电 子子 信信 息息 工工 程程 班班 级级 电电 子子0 0 6 6 1 1 指指导导教教师师 韩韩建建峰峰 讲讲师师 内蒙古工业大学本科毕业设计说明书 摘 要 字符识别是采用数字图像处理的方法识别字符的一门技术 它在各领域都得到广 泛的应用 在字符识别中最重要的预处理过程 细化 在细化算法中 并行细化算 法是一种较好的算法 相对于经典的并行细化算法 改进的增强并行细化算法可以更 好的解决两像素图像斜线信息丢失 多余枝杈和冗余像素的问题 具有更高的效率和 鲁棒性 本文首先对字符识别系统中的细化及其实现平台 MATLAB 简单介绍 然后阐述了 经典细化算法中的 ZS 算法和 LW 算法以及改进后的 EPTA 算法原理 通过 MATLAB 实现这几种算法对字符的细化 经过对比分析出 EPTA 算法相比经典算法没有多余枝 杈的情况下很好的解决了两像素斜线丢失问题 对冗余像素的问题也得到了一定的解 决 最后分析得出经典算法细化规整清晰字符图像时斜线信息丢失并不严重 EPTA 算 法在运算速度较经典算稍慢 关键词 细化 并行细化算法 EPTA MATLAB 内蒙古工业大学本科毕业设计说明书 Abstract Character recognition is a technology based on digital image processing to identify the character which have been widely used in various fields In character recognition the most important pretreatment process is thinning In thinning algorithms Parallel thinning algorithm is a more better method for the classical parallel thinning algorithms the novel Enhanced Parallel Thinning Algorithm can be solves the problems such as information shrink in slanting line two pixel line preservation and needless trees Some experiments show that the proposed algorithm is robust and efficient This dissertation introduce the thinning in character recognition system and the flat roof to achieve it first Then expound the principle of the ZS algorithm and the LW algorithm in the classical thinning algorithm and the novel EPTA algorithm After that we achieve the thinning by these algorithms on MATLAB Analysis the advantage of the EPTA solves the problems such as information shrink in slanting line two pixel line preservation and needless trees by comparing the classical algorithm The ultimate analysis obtains the EPTA algorithm solves the neat and clear character not very obvious the thinning speed of the EPTA algorithm is slowly than the classical algorithm Keywords Thinning Parallel Thinning Algorithm EPTA MATLAB 内蒙古工业大学本科毕业设计说明书 目 录 引 言 1 一 字符识别简介 1 二 字符识别应用及其算法流程 1 三 并行细化算法 2 四 EPTA 算法在字符识别中的应用 2 第一章 并行细化算法原理与 MATLAB 图像处理简介 3 1 1 细化的概念 3 1 2 经典并行细化算法 3 1 2 1 基本定义 3 1 2 2ZHANG SUEN 并行细化算法原理 4 1 2 3 LU WANG 并行细化算法原理 4 1 3Enhanced Parallel Thinning Algorithm 增强并行细化算法 5 1 3 1 经典并行细化算法的缺陷及增强并行细化算法的满足条件 5 1 3 2 增强并行细化算法原理 EPTA 5 1 3 3 算法分析及其优点 6 1 4MATLAB 简介及其在图像处理中的应用 6 1 4 1 MATLAB 及数字图像处理简介 6 1 4 2 MATLAB 在本文中的主要应用程序代码简介 7 第二章 经典并行细化算法的实现 8 2 1 ZS 算法的实现及其结果分析 8 2 1 1 ZS 算法的实现 8 2 1 2 ZS 算法结果分析 9 2 2LW 算法的实现及其结果分析 9 2 2 1 LW 算法的实现 9 2 2 2 LW 算法结果分析 10 2 3ZS 算法和 LW 算法的差异对比及其结果分析 10 第三章 增强并行细化算法的实现 11 内蒙古工业大学本科毕业设计说明书 3 1EPTA 算法的实现 11 3 1 1 EPTA 算法的细化实现 11 3 1 2 EPTA 算法结果分析 12 3 2EPTA 算法与经典细化算法的差异 12 3 3EPTA 算法的优点及不足 13 3 3 1 EPTA 算法的优点 13 3 3 2 EPTA 算法的不足 14 结 论 15 参考文献 16 附录 A 程序清单 17 附录 B 细化原图像 24 谢 辞 25 内蒙古工业大学本科毕业设计说明书 1 引 言 一 字符识别简介 图像识别在我们的生活中应用十分广泛 从我们日常生活中最简单的扫描仪识别 字符到交通应用中的车牌字符识别再到我们的指纹识别以至到现代军事通用卫星对战 略地理图片的分析再到宇宙探索中对宇宙图片的图像识别 从我们最简单的日常生活 到最广袤的宇宙探索应用 图像识别技术应用已经越来越广泛 字符识别更是我们日 常生活中所离不开的 字符识别所需要的步骤很多 从对图像的采集 除噪 分割等等一系列前置步骤 再到识别过程中的模块匹配和特征匹配等等一系列步骤都十分繁琐 字符识别地方法 主要有基于模板匹配算法和基于人工神经网络算法 基于模板匹配算法是首先将分割 的字符二值化 并将其尺寸缩放为字符数据库中模板的大小 然后与所有模板进行匹 配 最后选取最佳匹配作为结果 建立数字库对该方法在字符识别的过程十分重要 数字库准确才能保证数据正确 基于人工神经元网络的算法有两种 一种是首先对特 征提取待识别字符 然后用所获得的特征训练神经网络分配器 另一种是直接将待处 理的图像输入网络由网络自动实现特征提取直至识别结果 二 字符识别应用及其算法流程 字符识别是数字图像处理中应用相当成熟和广泛的技术 无论从航天高科技到我 们日常生活当中的车牌识别 都有着十分广泛的应用 字符识别技术比较简单的做法 就是对字符进行骨架细化 对细化后的图像对比模板图像 从而对字符进行识别 字 符识别中大多系统都需要如下几个主要的步骤如图 0 图 0 字符识别系统 从图中可以看到 模板匹配需要样本和数据库图片相比较 其中样本则需要细化 细化的程度如何 准确度如何 效率如何关系到整个字符识别的准确性和高效性 所 以对于字符识别中最重要的预处理阶段 细化方法就显得尤为重要了 样本与数据库中的图像相减建立数据库计算误差 输出识别结果依次识别并识别找到误差最小图片 内蒙古工业大学本科毕业设计说明书 三 并行细化算法 从图1 1我们可以看到 字符识别系统中最重要的部分就是样本于数据库图片相减 而在相减过程中最重要的部分就是对字符图像进行骨架细化 然后进行图像相减对比 细化就是骨架化 这种算法在保持原图像机构信息的前提下 可以删除边缘像素 抽 取单像素的骨架特征 细化是图像预处理过程的重要方法 其分类按照图形连续性分 为4邻接和8邻接 按照迭代方式又分为串行和并行 串行细化算法是指处理像素过程 中像素处理的先后顺序 其消除或保留无法预测 并行细化算法利用相同条件同时检 测所有像素点 结果是各项通行 在算法原理方面 并行方法是优于串行方法的 并行细化算法快速 准确 其中最为经典的就是 ZHANG 和 SUEN 提出的算法也 就是 ZS 算法 它是一种并行 8 邻接的细化算法 优于其连续性 对直线 拐角以及 T 型交叉点比较精确的与原图像一致 处理效果极好 可以同时从四个方向处理 迭 代次数也很少 执行速度也很快 其缺点就是斜线信息容易丢失 细化结果存在冗余 像素 LU 和 WANG 提出的 LS 算法就是对这个缺点进行改进的新算法 可以解决 ZS 算法斜线信息丢失 但是产生多余的枝杈 而且结果仍然存在冗余像素 EPTA 算法就 是在这两个算法基础上提出的增强并行细化算法 它可以很好的解决斜线信息丢失 多余枝杈和冗余像素问题 具有较高的效率和鲁棒性 四 EPTA 算法在字符识别中的应用 EPTA 算法在字符识别和指纹识别中要比 ZS 和 LW 算法更加优秀 本文主要以 MATLAB 为平台 对 EPTA 算法进行实现 同时对比 ZS 算法和 LW 算法 对不同的 字符 如中文 英文 数字等 进行一系列的仿真细化 然后对比其结果 对其优越 性和缺点进行分析 优于它的优越性 使得 EPTA 算法在字符识别中更受欢迎 其准 确性和效率性均很优秀 从而为字符识别的后续工作提供很好的预处理 从而为后续 的模块匹配和基于人工神经网络算法字符识别提供一个良好的预处理 对于字符识别中的其他步骤例如图像的采集 除噪 二值化等其他预处理步骤 本文将简单略过 主要的重点部分就是在 MATLAB 中实现 EPTA 算法对字符的骨架细 化 并且对比 ZS 算法和 LW 算法对比评估 从而得出细化过程中最适合各种字符的算 法 最终得出结果 对该算法的适用领域得出结论 对多种细化算法提出它们的适用 范围 内蒙古工业大学本科毕业设计说明书 第一章 并行细化算法原理与 MATLAB 图像处理简介 1 1 细化的概念 细化的思想是 层层剥夺 即从线条边缘开始一层一层向里剥夺 直到线条剩下 一个像素为止 图像细化一般作为一种图像预处理技术出现 目的是提取源图像的骨 架 即是将源图像中线条宽度大于 1 像素的线条细化成只有 一个像素宽 形成 骨架 形成股价后能比较容易分析图像 如提取图像特征 进行字符识别 细化按照细化 后图像的连续性又可以分为 4 邻接和 8 邻接 按照处理过程中的迭代方式分为串行细 化和并行细化 串行细化即是一边检测所有满足细化条件的点一边删除细化点 并行 细化及时检测细化点的时候不进行点的删除只进行标记 而在检测完整图像后一次性 去除要细化的点 其结果是各项同性 就算法原理来看 并行细化算法优于串行细化 算法 1 2 经典并行细化算法 1 2 1 基本定义 在介绍经典并行细化算法以及改进后的并行细化算法 EPTA 算法 之前 为了便 于算法的描述 我们先做几个定义 对于二值图像 G P 为图像中任意像素 当 P 为黑色像素时值为 1 为白色时值为 0 定义 1 像素 P 的 8 邻域 像素 P 上 下 左 右 4 个像素及其对角线 4 个像素 点组成的集合 NP P2 P3 P9 成为像素 P 的 8 邻域 见图 1 1 定义 2 像素 P 的连接数 像素 P 的 8 邻域中黑色像素的个数 A P 9 2i Pi 定义 3 像素 P 的交叉数 像素 P 的 8 邻域中的点按顺 或逆 时针方向一周从 白色像素变为黑色像素的次数 B P 见图 1 2 2 8 2 291i i ipppp 图 1 1 点 P 的 8 邻域 图 1 2 点 P 的交叉数 P9P2P3 P8PP4 P7P6P5 P 内蒙古工业大学本科毕业设计说明书 同时我们定义 当前扫描次数为 n Sn为第 n 次扫描前原图像 G 中的黑色像 素集合 En为第 n 次扫描所标注的需要从 Sn中删除的黑色像素集合 1 2 2ZHANG SUEN 并行细化算法原理 迭代次数 n 的初始值设为 0 当 n 为偶数时 执行子过程 1 该过程扫描当前图像 中所有的黑色像素 如果像素 P 满足下列 4 个条件 a b c d 则标记像素 P 为 需要删除 a 保证图像骨架端点不被删除6 2 PA b 使像素 P 点 8 邻域按黑白分别聚集 不会出现交错情形1 PB c 控制删除点为右下方的边缘像素0642 PPP d 控制删除点为左上方的边缘像素0864 PPP 当 n 为奇数时执行子过程 2 在该过程中如果像素满足如上 a b 两个条件和如 下两个条件 e f 则标记像素点 P 为需要删除 e 控制删除点为左下方的边缘像素0842 PPP f 控制删除点为右上方的边缘像素0862 PPP 可以看出 ZS 算法是通过从 4 个方向不断删除不属于图像骨架的像素达到细化目 的 为了保持源图像的拓扑连接属性 算法每一次迭代都分为两个子过程 子过程 1 和子过程 2 采用对称扫描方式从 4 个方向删除边缘像素 从而使图像的中间像素即骨 架信息得以保存 1 2 3 LU WANG 并行细化算法原理 ZS 算法能够很好的保持图像的连接属性 但同时也存在一些缺陷 尤其在处理两 像素宽度斜线时 细化的结果会丢失部分骨架信息 为了改善 ZS 算法的效果 LU 和 WANG 进行了一些改进 LW 算法修改了子过程 2 的判定条件 a 为 a a 6 3 pA 判定条件 a 的修改使连接数为 2 的边缘像素保留下来 改善了 ZS 算法的斜线信 息丢失问题 但同时也使细化结果存在多余枝杈 更没有解决冗余像素问题 因此我们得出经典并行细化的三个缺陷 1 斜线信息丢失问题 2 多余枝杈问题 3 冗余像素过多 因此针对这三个缺陷 我们在不改变经典算法优点的前提下提出一 个新的算法 该算法不但继承了经典算法的优秀特点 还应该去除冗余像素 并且在 细化时不产生多余枝杈的情况下不丢失斜线信息 内蒙古工业大学本科毕业设计说明书 1 3Enhanced Parallel Thinning Algorithm 增强并行细化算法 1 3 1 经典并行细化算法的缺陷及增强并行细化算法的满足条件 由上述可知 经典并行细化算法兼顾了图像的连续性 对直线 拐角及 T 型交叉 点可以精确地保持与原图像的一致 处理效果较好 而且可以同时从 4 个方向处理 迭代次数少 执行速度快 其缺点是斜线信息容易丢失 细化结果存在冗余像素 也 正是因为这个原因 LW 算法通过在子算法 2 中增加标记像素的连接数 这样就能使 得斜线信息丢失减少 但是同样的 这样也使得细化结果产生多余枝杈 然而冗余像 素的细化缺陷仍然未得到解决 至此 我们得出要想使得细化结果鲁棒性强 迭代次 数较少 我们也得出了增强并行细化算法所必须要达到的一个标准条件 1 骨架图像必须保持原图像的连通性 2 骨架图像应该尽可能的是原图像的中心线 3 细化骨架要尽可能细 去除冗余像素 争取得到一个像素宽的像素的线条图像 4 算法速度要快 应使用尽可能少的迭代次数 依据这些条件 我们在 ZS 和 LW 算法基础上 经过改进 减少局部信息丢失 尽 可能多的去除冗余像素 同时尽量少的产生多余枝杈 使其具有较强的鲁棒性 并且 尽可能的减少迭代次数 在运算速度上尽可能快 这样才有应用的价值 1 3 2 增强并行细化算法原理 EPTA 1 初始化 当前扫描次数 n 0 Sn为原图像 G 中所有的黑像素集合 删除点集 nE 2 如果 n mod20 转 3 否则执行 dcbaPSPPEEnnn满足条件 转步骤 4 3 执行 febaPSPPEEnnn满足条件 4 如果或者算法满足条件 g 转步骤 5 否则执行 nEnnnESS 1 nn 转步骤 2 nE g 12 PBPASPPEnn 5 执行 如果 转步骤 6 nE jiPSPPEEnnn和条件满足条件 nE 否则执行 重复步骤 5 nnnESS i 01386 PPP 内蒙古工业大学本科毕业设计说明书 j 01964 PPP 6 输出 算法结束 nS 1 3 3 算法分析及其优点 在 EPTA 第一阶段的步骤 1 4 中 EPTA 采用类似 ZS 的双扫描过程 其 区别很容易看出是在每个扫描子过程后 增加是否结束第一阶段扫描的判断 其判断 条件之一为 g 条件 这个条件表明 如果在一次扫描子过程所产生的标注删除像素集 nE 中 nE 每个像素的 8 邻域只包含两个黑像素 则这个扫描过程结束 这样 就解决 了 ZS 信息丢失问题 随后 当这个扫描过程结束后 添加一个二阶段扫描过程 这个过程中条件 i 着 重删除图像中存在的冗余像素 保证删除 P 不会影响图像的邻接属性 同理 03 P 条件 j 也是这个作用 我们在之后的 MATLAB 编程中也是按照各个算法的步骤进行 编程的 经过这两个补充作用 就很大程度上减少了斜线信息丢失和冗余像素多余的问题 同时可产生单像素图像骨架 其鲁棒性也就大大的增强了 1 4MATLAB 简介及其在图像处理中的应用 1 4 1 MATLAB 及数字图像处理简介 MATLAB 是由美国 Mathwork 公司推出的一款科技应用软件 它的全称也就是矩 阵在实验室 顾名思义 它是以矩阵为单位进行处理 它是一种高性能 用于工程计 算的编程软件 它把科学计算 结果可视化和编程都集中在一个使用非常方便的环境 中 其语言允许使用数学形式的语言 相对于 BASIC FORTRAN 和 C 语言更加接近 书写计算公式的思维方式 因此 MATLAB 语言也可以通俗的成为 演算纸 式科学算 法语言 编写简单 编程效率高 易学易懂 MALAB 系统由两部分组成 即 MATLAB 内核和辅助工具箱 两者的调用构成了 MATLAB 的强大功能 MATLAB 语言以数组为基本数据单位 包括控制流语句 函 数 数据结构 输入输出和面向对象等特点的高级语言 它具有如下主要特点 1 运算符和库函数极其丰富 2 MATLAB 语言是一种解释执行语言 3 图形功能强大 4 功能强大的工具箱 5 易于扩充 6 良好的交互性和开放性 内蒙古工业大学本科毕业设计说明书 数字图像处理是采用一定的算法对数字图像进行处理 以获得人眼视觉或者某种 接收系统所需要的图像过程 数字图像处理的基础是数学 主要任务是进行各种算法 设计和算法实现 数字图像处理技术在近年来得到广泛的应用 依据应用领域的不同 数字图像处 理技术也分为许多分支技术 其重要的分支技术主要为 图像变换 图像增强与复原 图像压缩编码 图像分割 图像识别等等 这些技术的主要特点也很多 信息量大 要求处理速度比较快 占用频带较宽 数字图像处理中各个像素相关性强 压缩潜力 大 图像质量评价主要受主观因素影响 图像处理技术综合性强 也正是因为这些特 点 我们可以很容易看出数字图像处理与数字信号处理学 计算机图形学 计算机视 觉有着非常紧密的联系 正是因为 MATLAB 得优秀特点和数字图像处理的特点我们可以使用 MATLAB 较 轻松地实现数字图像处理 同样 作为 EPTA 算法这样一个字符识别预处理的数字图 像处理内容 用 MATLAB 实现是很方便快捷的 1 4 2 MATLAB 在本文中的主要应用程序代码简介 由于本文主要内容是对字符的细化 所以对于其他的预处理过程例如除噪 滤波 以及图像增强等不再过多阐述 下面介绍一下本文中主要使用的一些 MATLAB 图像处 理操作的代码 1 Imread 这个函数就是实现图像文件的读取操作 本文中用到该函数的语法也很简 单 A Imread filename fmt 其中 fmt 制定了图像的格式 可选值为 bmp hdf jpg png tif pcx 和 xwd 图像格式也可以和文件名写在一起即 filename fmt 默认的文件目录为当前 MATLAB 的工作目录 2 Imwrite 既然有图像的读取 就有图像的输出和保存 这个函数就是实现这个作 用的 其语法与 Imwrite 相同 3 Rgb2gray 这个函数的功能有两个 我们用到的就是把衣服真彩图像转换成一幅灰 度图像 其调用格式为 I rgb2gray RGB 4 Imgray 这个函数在本文中主要用到的就是对灰度图像二值化并且可以设定阀值 imb imgray x x 为阀值 5 两图像相减 例如本文程序中用到的imthin5 abs imthin3 imthin2 两图像做减 法在求绝对值其实是求两图像的差异 以上就是本文中主要用到的一些简单的数字图像处理函数 其余用到的部分语句 如循环语句等以及描述算法的语言都很简单 在此就不在详细说明 内蒙古工业大学本科毕业设计说明书 第二章 经典并行细化算法的实现 2 1 ZS 算法的实现及其结果分析 2 1 1 ZS 算法的实现 通过 MATLAB 的编程 得出 ZS 算法对汉字 数字 英文字母等的细化结果如下 1 ZS 算法对汉字的细化处理 如图 2 1 图 2 1 ZS 算法对汉字的细化处理结果 2 ZS 算法对数字的细化处理 如图 2 2 图 2 2 ZS 算法对数字的细化处理结果 3 ZS 算法对英文字母的细化处理 如图 2 3 图 2 3 ZS 算法对英文字母的细化处理结果 4 ZS 算法对综合图片字符的细化处理 如图 2 4 图 2 4 ZS 算法对综合图片文字的细化处理结果 内蒙古工业大学本科毕业设计说明书 2 1 2 ZS 算法结果分析 由 ZS 算法对上述四种类型的细化结果处理得知 ZS 算法作为经典的并行细化算法 对字体的细化很好 对直线拐角可以比较精确的与原图像一致 但是对第四幅图片的 细化来看 由于字体有不规整的部分 斜线信息丢失比较严重对于 ZS 的冗余信息未细 化我们将在后面对细化字体放大进行单像素分析时详细介绍 2 2 LW 算法的实现及其结果分析 2 2 1 LW 算法的实现 通过 MATLAB 的编程 得出 LW 算法对汉字 数字 英文字母等的细化结果如下 1 LW 算法对汉字的细化处理 如图 2 5 图 2 5 LW 算法对汉字的细化处理结果 2 LW 算法对数字的细化处理 如图 2 6 图 2 6 LW 算法对数字的细化处理结果 3 LW 算法对英文字母的细化处理 如图 2 7 图 2 7 LW 算法对英文的细化处理结果 4 LW 算法对综合图片字符的细化处理 如图 2 8 图 2 8 LW 算法对综合图片文字的细化处理结果 内蒙古工业大学本科毕业设计说明书 2 2 2 LW 算法结果分析 由 LW 算法对上述四种类型的字体进行细化后得知 LW 细化算法虽然是在 ZS 算 法上改进而来的 但是对于汉字 数字 英文字母这三类比较规整的字体细化而言并 没有多少提升效果 反而带来了多余枝杈 不利于字符识别 对于组后一幅图像的细 化来看 LW 算法在细节上保留了更多的斜线信息 大大的减少了斜线信息丢失问题 接下来我们来详细对比一下 ZS 算法和 LW 算法对字符细化的差异 并且来讨论下这两 种算法的缺陷 2 3ZS 算法和 LW 算法的差异对比及其结果分析 我们用一个具体的例子来比较这两种算法对字符识别处理的效果进行分析 以粗 体的 永 字来对图像细化并且做差从而看出他们的差异 用 ZS 对 永 字的细化结果如图 2 9 用 LW 对 永 字的细化结果如图 2 10 图 2 9 ZS 对 永 的细化 图 2 10 LW 对 永 的细化 我们对两种细化结果进行相减得出他们的差异 如图 2 11 由图中我们可以清楚地看到 LW 细化结 果枝杈过多 在一般情况下 ZS 细化算法要更胜一 筹 但是两者在面对冗余像素问题却都没有很好的 解决 这样对于我们来说 提出一个新的方法既能 像 ZS 算法一样没有多余枝杈 又可以像 LW 算法 一样不会丢失局部信息 同时还可以使冗余像素很 好的去除 尽量单像素显示骨架信息 同时算法要 足够快 这就提出了 EPTA 算法 图 2 11 LW 减 ZS 的图像结果 内蒙古工业大学本科毕业设计说明书 第三章 增强并行细化算法的实现 3 1EPTA 算法的实现 结合上一章我们通过实例说明了经典并行细化算法的缺陷和优点 在这个基础上 提出的 EPTA 算法可以很好的解决上述问题 由第二章的算法原理我们通过编程实现 EPTA 算法对字符的骨架化 3 1 1 EPTA 算法的细化实现 1 EPTA 算法对汉字的细化处理 如图 3 1 图 3 1 EPTA 算法对汉字的细化处理结果 2 EPTA 算法对数字的细化处理 如图 3 2 图 3 2 EPTA 算法对汉字的细化处理结果 3 EPTA 算法对英文字母的细化处理 如图 3 3 图 3 3 EPTA 算法对英文字母的细化处理结果 4 EPTA 算法对综合图片字符的细化处理 如图 3 4 图 3 4 EPTA 算法对综合图片文字的细化处理结果 内蒙古工业大学本科毕业设计说明书 3 1 2 EPTA 算法结果分析 由上述细化结果的图像 我们首先可以看到 EPTA 算法相对于 LW 算法 首先没 有多余枝杈的问题 其次 对比第四幅图像来看 尤其是学校图标 EPTA 算法的斜线 信息丢失量减少了 相对于 ZS 算法突出了其很大的优点 通过上述的细化处理结果我 们可以很清楚的看到 EPTA 算法解决了经典并行细化算法中的两个问题 斜线信息 丢失和多余枝杈问题 对于冗余像素的去除我们将在下面的篇幅详细讲解 同时把以 上两个优点再一次用更加明显的实例再一次展示 3 2EPTA 算法与经典细化算法的差异 首先我们继续对 永 粗体字进行细化 并且让 EPTA 算法结果与 ZS 和 LW 算法 结果做差 得出 EPTA 算法与经典算法的差异 EPTA 对 永 字的细化如图 3 5 所示 EPTA 对 永 字的细化结果与 ZS 和 LW 的细化结果差异如图 3 6 和图 3 7 所示 图 3 5 EPTA 对 永 的细化 图 3 6 EPTA 减 ZS 的细化输出图像 由 EPTA 对 永 的细化结果我们可以很清 楚地看到 EPTA 算法可以很清楚的描绘出图像的 骨架 由 EPTA 算法与 ZS 算法结果图做差得知 EPTA 算法去除了多余的冗余像素 尤其是斜线部 分的冗余像素 EPTA 与 LW 算法结果图做差后 我们可以明显看出枝杈部分明显减少 同时斜线 部分的冗余像素也极大地去除 图 3 7 EPTA 减 LW 的细化输出图 像 内蒙古工业大学本科毕业设计说明书 3 3EPTA 算法的优点及不足 从上一小节我们比较清楚地了解了 EPTA 算法与经典算法的差异 并且对其优点 有了一定的了解 接下来我们对几个字符图像进行细化 然后得出单像素的图像 由 此来完全掌握 EPTA 算法的优势和不足 3 3 1 EPTA 算法的优点 在此我们以一幅简单的图像 斜线图像来分析 EPTA 算法的单像素显示结果 并 且那它对比 ZS 和 LW 算法 以此得出 EPTA 算法的优势 1 ZS 与 LW 算法对斜线信息的像素显示细化结果 如图 3 8 和图 3 9 所示 图 3 8 ZS 像素显示细化结果 图 3 9 LW 像素显示细化结果 2 EPTA 算法对斜线信息的像素显示细化结果 如图 3 10 所示 从图中可以看出 EPTA 算法在斜线出基本都是 以单像素 描述 骨架的 鲁棒性更强 骨架显示 也更为清晰 相对比来看 LW 在图左下角低端的末 端枝杈更为严重 对比三幅图 可以肯定的是 EPTA 可以去除更多的冗余像素 不会产生多余枝 杈 同时我们把 ZS 和 LW 细化的图像与 EPTA 细 化后的图像做差我们可以看出他们的差异 从这里 可以看出 EPTA 细化几乎要比 ZS 和 LW 少了整整 一条 骨架 EPTA 算法在去除冗余像素要好很 多 3 10 EPTA 像素显示细化结果 内蒙古工业大学本科毕业设计说明书 3 EPTA 与 ZS 和 LW 细化差异的像素显示结果 如图 3 11 和图 3 12 所示 图 3 11 EPTA 减 ZS 细化输出像素显示 图 3 12 EPTA 减 ZS 细化输出像素显示 从上两个图可以看出 EPTA 对比 ZS 和 LW 相减之后仍然有一条较为清晰地斜线骨 架 这个斜线骨架就是冗余像素 同样在 LW 右上角处有一个不邻接的单像素 也就 是多余的枝杈 至此我们可以清晰地得出一个结论 EPTA 算法可以更好的去除冗余像 素 这样结合第三章的内容 我们得出 EPTA 算法的优点 EPTA 算法不会产生局部信 息丢失 细化枝杈少 并且可以更好的去除冗余像素 而且算法次数没有增加总体迭 代时间代价 因此效率较高 并且鲁棒性极好 3 3 2 EPTA 算法的不足 对于 EPTA 算法 首先来看 它的步骤要比 ZS 和 LW 算法更为繁琐 虽然算法次 数没有增加迭代时间代价 但是其算法速度上来看肯定要比经典算法要慢 其次 EPTA 算法在对于不是要求特别精确应用方面相对于经典算法并没有特别明显的效果提升 因此对于普通的要求不是很精确的应用我们仍然应用经典算法更为迅速 3 3 3 三种算法的优缺点分析 由 EPTA 的优点和不足来看 我们得出了三种算法的应用范围 对于大量的 需 要高速度但是对精确度要求不高的细化应用我们应该选择经典算法细化 当斜线信息 容易丢失时应选择使用 LW 算法细化防止斜线信息丢失 否则使用 ZS 算法可以使得多 余枝杈减少 如果对于速度要求较低 但是对精度要求较高的细化应用应该选择 EPTA 算法 可以达到很好的效果 总体来看 EPTA 算法要比经典算法要好很多 尤其是在冗余像素的去除上做到了 内蒙古工业大学本科毕业设计说明书 经点算法远远没有达到的鲁棒性 单像素描述骨架使得字符信息特征更加准确 随着 计算机运算速度的提高 EPTA 算法必将成为细化算法中新的 经典 结 论 本文通过对字符识别的简单介绍 提出了字符识别中最为重要的预处理 细化 通过对细化的介绍了两种经典细化算法 ZS 和 LW 细化算法 在通过 MATLAB 对两 种算法实现并且作出对不同字符 不同图像的细化之后 得出两种经典算法的优点和 缺陷 在这个基础上取其优点 改善其不足得出了增强并行细化算法 EPTA 算法 通过对 EPTA 细化实验并且对比经典细化算法 得出 EPTA 算法的优势和不足 EPTA 算法克服了经典并行细化算法中的三大缺陷 斜线信息丢失 冗余像素较多 多余枝杈问题 并且其算法速度相比经典算法不是很慢 延续了并行细化算法简洁 快速的优点 具有较高的效率和鲁棒性 但是由于 EPTA 算法步骤较多所以必然地会 使得大量字符识别应用增加细化时间 对于不需要特别精确的细化来说 其效率性不 如经典算法 EPTA 算法适用于对细化速度要求不是很高 对精度要求较高的字符识别 但是面对细化速度要求高 精度要求较粗略的字符识别应用应该使用经典的 ZS 或者 LW 算法更为合适 在字符细化过程中综合应用各种算法共同细化更为稳妥和效率 在本课题的设计当中 自己首先对 MATLAB 在数字图像处理中的应用更为深入 对 MATLAB 语言更为熟悉 其次对字符识别系统有了简单的了解 对细化的三种算法 理解深入 掌握了三种算法在 MATLAB 中的实现 也掌握了数字图像处理的基本方法 但是知识结构和时间的限制 今后需要学习和补充的知识有许多 特别是关于 MATLAB 工具的使用 它是我们未来学习和工作的一个必不可少的强大工具 本文在设计时由于时间仓促 由于对字符图像的采集不是很充足 没有取得两像 素的字符图像 使得 ZS 算法没有过多的斜线信息丢失 从而使得 EPTA 算法在这个优 势上的展现不是很明显 同时本次课题仅仅使用几种算法对字符识别有了一个简单的 预处理 只是字符识别应用中的冰山一角 要想成功利用 EPTA 算法实现完整的字符 识别 还需要很多很多工作要做 除此之外 细化算法也有着很广阔的发展前景 随 着计算机速度的提升 我们可以开发出更好的细化算法来对字符进行预处理 同时综 内蒙古工业大学本科毕业设计说明书 合应用多种细化算法共同细化图像可以使细化更加完善 参考文献 1 王刚 冀小平 基于 MATLAB 的车牌识别系统的研究 电子设计工程 2009 年 11 期 2 包建军 樊青 鲁棒的二值图像并行细化算法 计算机辅助工程 2006 年 04 期 3 ZHANG Y Y SUEN C Y A fast parallel algorithm for thinning digital patterns 4 LUH E WANG P S P An improved fast parallel algorithm for thinning digital patterns 1985 5 LU H E WANG P S P A comment on a fast parallel thinning algorithm for thinning digital Patterns 1986 6 GONZALEZ R C WOODS R E Digital Image Processing 2003 7 王家隆 郭成安 一种改进的图像模板细化算法 中国图像图形学报 A 辑 2004 3 8 孙祥 徐流美 吴清 MATLAB7 0 基础教程 清华大学出版社 2005 9 张汗灵 MATLAB 在图像处理中的应用 清华大学出版社 2008 10 张德丰 MATLAB 数字图像处理 机械工业出版社 2009 11 章毓晋 图像工程 上册 图像处理和分析 清华大学出版社 1998 12 高伟 刘喜平 基于粗糙集的车牌字符识别方法 山西大学学报 自然科学版 28 3 13 冯平 罗军辉 MATLAB7 0 在图像处理中的应用 14 张敏 二值图像中一种改进的细化算法 现代电子技术 2005 28 19 15 李永江 潘保昌 郑胜林 细化算法在手写体字符识别中的应用 现代电子技术 2008 12 16 叶晨洲 廖金周 梅帆 车辆牌照字符识别系统 J 计算机系统应用 1999 5 10 13 17 郑继刚 MATLAB 在数字图像处理中的应用 保山师专学报 2009 28 5 18 杨静 基于数学形态学的图像分割研究及应用 仪器仪表用户 2005 5 18 19 19 范芳蕾 李亮玉 周欣 蒋海珍 岳建峰 基于 VC 与 MATLAB 混合编程的焊接熔池 图像处理 天津工业大学学报 2007 26 4 20 许志影 李晋平 MATLA 及其在图像处理中的应用 计算机与现代化 2003 4 内蒙古工业大学本科毕业设计说明书 附录 A 程序清单 ZS 算法主程序算法主程序 function out zs im zs appises the Zhang Suen skeletonization algorithm to image IM IM must be binary luteven makelut zseven 3 lutodd makelut zsodd 3 done 0 N 2 last im previous applylut last lutodd current applylut previous luteven while done 0 if all current last done 1 end N N 1 last previous previous current if mod N 2 0 current applylut current luteven else current applylut current lutodd end end out current 内蒙古工业大学本科毕业设计说明书 ZS 算法偶数次扫描程序算法偶数次扫描程序 function out zseven nbhd s sum nbhd n

温馨提示

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

评论

0/150

提交评论