1、 毕 业 设 计题 目: OCR 系统中的图像预处理的研究和实现 学 院: 计算机与通信学院 专 业: 通信工程 班级:学号: 学生姓名: 导师姓名: 完成日期: 2014 年 6 月 3 日 诚信声明本人声明:1、本人所呈交的毕业设计(论文)是在老师指导下进行的研究工作及取得的研究成果;2、据查证,除了文中特别加以标注和致谢的地方外,毕业设计(论文)中不包含其他人已经公开发表过的研究成果,也不包含为获得其他教育机构的学位而使用过的材料;3、我承诺,本人提交的毕业设计(论文)中的所有内容均真实、可信。作者签名: 日期: 年 月 日毕 业 设 计 ( 论 文 ) 任 务 书题目: OCR 系统中
2、的图像预处理的研究和实现 姓名 系 计算机与通信学院 专业 通信工程 班级 学号 指导老师 职称 讲师 教研室主任 一、基本任务及要求:OCR 技术借助光学输入设备将印刷文献的数字图像输入计算机,由 OCR 程序对其进行自动的分析与识别,形成文字的代码,并以标准格式的文件存储。它可以大大减少手工录入人员的工作量。在整个 OCR 处理过程中,图像预处理的有效性是字符识别成败的重要因素。事实上,由于纸质文档质量不一,如纸透重影、墨点;而获取图像的过程中,可能会出现几何变形、倾斜、卷边、光照不匀等情况,如果直接对这样的图像直接进行识别,正确率将得不到保证。 课题的主要任务是研究和分析成像过程中存在的
3、倾斜、几何变形、卷边、光照不匀等情况,在进行字符匹配之前,进行图像预处理,提高图像质量,进行提高 OCR 识别的正确率。要求熟悉图像增强技术、几何校正和图像还原技术,在 VC 开发环境中,开发出 MFC 风格的 OCR 预处理子系统。 二、进度安排及完成时间:第 1 周:老师集中指导,分析并明确课题任务与要求,学习资料收集检索方法,并搜索收集所需中英文资料。 第 23 周:阅读资料、书籍,学习所需知识,撰写文献综述。 第 45 周:毕业实习、完成毕业实习报告撰写。 第 6 周:初步拟订系统设计方案;完成开题报告。 第 7 周:完成基于单片机的节能型路灯系统的总体设计。 第 813 周:具体设计
4、、调试、修改、实现。 第 1415 周:撰写毕业论文(说明书) 。 第 1617 周:完成毕业答辩资格审查、毕业答辩。 目 录 摘 要 .IABSTRACT.II第 1 章 绪论.11.1 课题研究的背景和意义 11.1.1 OCR 图像预处理 .11.1.2 课题研究的背景.11.1.3 课题研究的意义.21.2 课题研究的国内外现状及应用 31.2.1 课题研究的国内外现状.31.2.2 课题研究的应用.41.3 系统设计简介及课题研究的内容 41.3.1 系统设计简介 .41.3.2 课题研究的内容.61.4 课题设计方案及解决问题的框架 6第 2 章 OCR 图像预处理实现原理 .82
5、.1 文本文字图像预处理的介绍 82.2 灰度变换 82.3 几何校正 82.3.1 几何校正简介.82.3.2 扭曲校正82.3.3 倾斜校正92.4 图像增强 112.4.1 图像增强简介.112.4.2 灰度值分段线性拉伸.122.4.3 灰度值均衡化处理.122.4.4 同态滤波.132.5 二值化及形态学处理 152.5.1 二值化简介.152.5.2 二值化实现.152.5.3 形态学处理.162.6 平滑滤波 .182.6.1 平滑滤波简介.182.6.2 线性滤波.182.6.3 中值滤波.202.6.4 维纳滤波.222.7 文字提取 222.7.1 文字提取简介.222.7
6、.2 文字提取实 现.22第 3 章 MATLAB 相关知识介绍 .243.1 MATLAB 图像处理工作箱支持的图像类型简介 .243.2 MATLAB 相关语句简介 .243.2.1 曲线绘图语句.243.2.2 MATLAB 图像操作语句 .253.3 MATLAB GUI 相关知识及系统功能简介 .253.3.1 MATLAB GUI 相关知识简介 .263.3.2 系统功能简介27第 4 章 基于 MATLAB 图像预处理实现过程及其结果 294.1 灰度变换 294.2 几何校正 304.2.1 灰度图像扭曲校正.304.2.2 二值图像倾斜校正.314.3 图像增强 344.3.
7、1 灰度值分段线性拉伸.344.3.2 灰度值均衡化处理.354.3.3 同态滤波.354.4 二值化及形态学处理 364.4.1 二值化.364.4.2 形态学处理.364.5 平滑滤波 374.6 文字提取 39结束语.41参考文献.43致 谢.44附 录.46湖南工程学院毕业设计(论文)IOCR系统中的图像预处理的研究与实现摘 要:OCR (Optical Character Recognition,光学字符识别)指的是利用光学设备拍摄或者扫描文本文档上的字符信息,通过与纸面明暗差确定字符形状,然后利用字符识别技术转化为计算机文本信息的过程。在整个 OCR 处理过程中,进行有效的图像预处
8、理是字符识别成败的重要因素。在OCR 系统中进行图像预处理的主要目的是提高图像质量,进而提高 OCR 识别的正确率。本文针对获取文本文字图像过程中引入的噪声、倾斜和几何畸变等问题,研究实现了图像读取、灰度化、二值化、扭曲校正、倾斜校正、同态滤波、平滑滤波等算法,最后研究实现了文字分割与提取算法,为后续的文字识别做准备。本课题利用 MATLAB GUI 创建一个应用程序框架,在这个框架内实现了预处理的各个步骤,并以普通相机摄像和扫描仪得到的文本文字图像(JPG 格式)为测试图像,进行了一系列实验。实验结果表明本文采取的算法切合实际。关键词:OCR 图像预处理;几何校正;二值化;平滑滤波;文字提取
9、OCR 系统中的图像预处理的研究与实现IIResearch and implementation of image processing in OCR systemAbstract: OCR(Optical Character Recognition) is the processes of using electronic equipments(such as scanners or digital cameras) to scan characters which be printed on the paper, then determining the characters shape
10、by the detection of brightness patterns , finally using the methods of character recognition to translate word shape into binary word that can be recognized by computer.During the OCR process, the last but not least factor of the character recognition accuracy is the effective image preprocessing.Th
11、e mainly purpose of image preprocessing in OCR system is to improve the image quality and accuracy. In the paper, it has researched and realized the processes of image reading、grayscale、 binaryzation、 skew correction、tilt correction、homomorphic filtering、smoothing filtering algorithm to solve the pr
12、oblems of the text image obtaining noise、 tilting and geometric distortion. It has studied word segmentation and extraction process to prepare for the following text recognition. It has used MATLAB GUI to create an application framework. It has obtained the test images by ordinary camera and scanner
13、 (JPG format) ,and then done a series of experiments of pretreatment process based on GUI framework. The experimental results have show that the algorithm is practical .Keywords:The pretreatment process of OCR system; Geometric correction;Binaryzation;Smoothing filter;Character extractio.湖南工程学院毕业设计(
14、论文)1第1章 绪论1.1 课题研究的背景和意义1.1.1 OCR 图像预处理OCR 科学定义: OCR(optical character recognition)指的是利用光学设备拍摄或者扫描纸质文档上的字符信息,通过与纸面明暗差确定字符形状,然后利用字符识别技术转化为计算机文本文字信息的过程。也就是,将纸质文档资料进行光学处理转换成图像信息之后进行分析处理,获得文字以及相关版面信息的过程。如何除错或利用辅助信息提高识别正确率,是 OCR 最重要的课题的友好性,产品的稳定性,易用性及可行性等。图像预处理科学定义:将每一个文字图像分检出来交给识别模块识别,这一过程称为图像预处理。本文主要研究
15、在预处理过程中前、中、后三个阶段的如何严格地、有效地消除噪声干扰、几何畸变干扰、光照不均干扰等等影响字符识别的方法。1.1.2 课题研究的背景光学文字识别的概念是在上个世纪二十年代末期由德国科学家 Tausheck 最先进行分析的,美国科学家 Handel 也提出了相似的理论学说。最早对纸质文档中的汉字进行识别的是美国 IBM 公司的 Casey 和 Nagy,在上个世纪六十年代中后期他们率先发表了一篇利用模板匹配法技术识别了一千个纸质文档汉字的论文。在上个世纪六、七十年代,就有进行 OCR 技术研究的国家,其中包括中国。在OCR 技术研究的初期阶段,主要的研究对象是文字的识别方法,以数字 0
16、-9 为识别的唯一对象。日本在上个世纪六十年代左右开始对日本的方块文字进行了 OCR 识别技术研究工作,初期也是以数字作为唯一对象进行研究的。能够大规模实际使用的技术是在上个世纪六十年代中期到后期出现的,例如:邮政编码识别系统,在识别邮件的邮政编码的基础上有效地帮助了邮局作区域分信的工作;也因此邮政码一直是各国提倡的地址书写方式。上个世纪七十年代初期,日本的相关学者、专家开始进行了汉字的识别研究。我国的 OCR 技术研究工作起步较晚,但是发展较快,在七十年代才开始对数字、英文字母、以及符号的识别进行了研究,到了七十年代末期就开始进行了汉字识别工作的研究,1986 年之后我国就推出了中文 OCR
17、 产品。由于识别率、产品化、硬件设备成本高、运行速度慢等原因使得 OCR 技术未能达到实用化的地步。只有少数如信息、新闻出版等OCR 系统中的图像预处理的研究与实现2单位使用 OCR 软件。1986 年以后我国在 OCR 技术研究上取得了长足进展,在汉字建模和识别的方法上有了创新性地研究,在开发应用和系统研制方面取得了丰硕的理论、实际成果,许多应用、研究单位推出了中文 OCR 产品。到了上个世纪九十年代,随着我国扫描设备以及信息自动化和办公自动化的普及,很大程度上推进了我国 OCR 技术的研究,使得 OCR 技术识别率、运行速度等等制约着 OCR 技术实用化的瓶颈得到解决。其中以 OCR 为科
18、技核心的云脉技术不断创新进取,研发了一系列 OCR 软件产品,并且运用在医院,学校,企业等各大市场。1.1.3 课题研究的意义(1)OCR 在信息化时代下大规模纸质文字信息转化为计算机文本文字信息的意义。学者臧国全发表的文本数字化图像 OCR 识别的准确度测度实验与提高一文中,作者基于英国图书馆 Reshelp 和 Burney 两个古旧英文报纸数字化项目进行了 OCR 技术的准确度研究。 针对纸质文本文字扫描对象的获取、计算机数字化图像的生产、数字图像的处理和计算机文本文字识别四个阶段中影响准确度的因素进行了分析,得出了提高准确度的具体措施的若干结论。杭州师范学院徐清学者发表的2001200
19、5 我国中文古籍数字化研究综述一文针对古籍全文的数字化问题、提高基础理论研究高度、广度,重点讨论了数字化资源的深度开发与选择,对于数据库建设的问题进行了仔细且全面地讨论。沈阳师范大学图书馆潘德利教授的中国古籍数字化进程和展望针对中国大陆香港、台湾的古籍数字化的进程进行了详细介绍和具体的统计,对我国古籍数字化项目的发展目标进行了预测和展望。从学者的古籍数字化论文中可以看出大规模纸质文档信息转化为计算机文本文字信息技术研究的重要性和实用性以及其深刻意义。文字是信息中的重要载体,其数字化程度决定了信息化的程度。OCR 技术改变了传统的纸质文字资料手动输入的概念。通过 OCR 技术,使用者通过摄像机、
20、扫描设备等等现有的光学输入设备将传统的的纸质报刊、书籍、文稿、表格等印刷品的图像信息转化为可供计算机识别处理的文本文字信息。所以,较传统的手动录入方式,OCR技术大大地增强了资料存储、检索、加工的效率。(2)OCR 预处理对提高 OCR 识别率的目的和意义文字识别是 OCR 系统中的关键环节,是纸质文档信息转化为计算机文本文字信息的最后节点也是最关键节点。OCR 对原文本文字图像的要求是文本文字的源图像要清晰、完整,光照要均匀,笔画不能间断;文本文字图像边缘锯齿不明显并且不卷边等;湖南工程学院毕业设计(论文)3有文字部分摆放水平。但是原文本文字图像的情况是形态各异,千差万别的,由于纸质文档质量
21、不一,如纸透重影、墨点;而获取图像的过程中,可能会出现几何变形、倾斜、卷边、光照不匀等情况。所以需要在识别前,应做一些预先的处理即图像预处理。比如:几何变换、灰度变换、倾斜校正等操作。这个课题的目的就是通过图像预处理,提高图像质量,进而提高 OCR 识别的正确率。1.2 课题研究的国内外现状及应用1.2.1 课题研究的国内外现状(1)国外发展及其现状世界上率先推出的 OCR 处理软件是上个世纪五十年代中后期的 ERA。ERA 是基于窥视孔方法,识别速率为 120 个字符/S。从 OCR 技术的发展历程看,分为三个阶段。第一代的 OCR 产品出现在上世纪六十年代初期,NCR 、FARRINGTO
22、N 、IBM 公司分别研制、推出了自己的 OCR 软件。但它只能识别印刷体的数字、英文字母及部分符号,而且为严格指定的字体。第二代 OCR 产品诞生于上世纪六十年代中期到七十年代初期,可以识别手写字符。日本东芝公司研制、推出的 OCR 产品应用于 IBM 公司,在手写体邮政编码识别的信函自动分拣系统中取得了正确分拣率达到 92%93%的良好应用效果,广泛地应用在了实际生活中。第三代 OCR 产品主要解决的问题为对于质量较差的文档以及大字符集比如数学公式的识别。日本东芝公司于 1983 年发布了其研制的印刷体日本汉字的 OCR 系统,识别速度为 70100 个字符/S,取得了 99.5%的识别率
23、。经过不断地改进,针对印刷体手写日本汉字的识别达到了实际应用水平。(2)国内发展及其现状我国在 OCR 技术方面的研究工作起步较晚,但是发展势头强劲,在七十年代才开始对数字、英语字母及字符的识别工作进行研究,到了七十年代末期才开始进行汉字的识别研究工作。我国政府从七五计划到现在的 863 计划一直坚持立足于国产的 OCR识别技术的研究。从八十年代中期开始,国内的中文 OCR 技术的研究到达了高潮阶段,到了九十年代中期,国内汉王公司推出了汉字中文的 OCR 系统,达到了可以初步实用化的水平。目前,我国的 OCR 技术应用市场十分广泛。在信息技术以及计算机技术日益普及的今天,如何将汉字方便、快捷输
24、入到计算机中并且能够高效率地进行识别,成为了影响人机交互式操作的重要难题,也成为计算机是否能够在我国得到普及和应用。目OCR 系统中的图像预处理的研究与实现4前,OCR 对英文的正确识别率较高,而对于汉字,尤其是手写汉字,识别率较低。如何提高 OCR 对手写汉字的识别率,将是未来的一个重要的研究方向。1.2.2 课题研究的应用(1)大规模文本文字信息数字化我国中文古籍浩如烟海,由于纸质文档保存文字信息容易受到温度、空气氧化、虫蛀等等非人为控制原因的影响而产生字体模糊、变形、纸质发黄、脆化,使得识别率降低,所以古籍数字化是一个刻不容缓的项目。(2)在智能交通处罚系统中的应用在智能交通系统 ITS
25、 的违章处罚信息中,最重要的是要知道车牌号,也就是对车牌号的识别。因为违规车牌号是交管部门处罚违章者的依据,因此捕捉到清晰的车牌号是智能交通系统 ITS 的违章处罚信息中最重要的一步。采取措其工作流程为:通过安装在路面上方的摄像头采集到违章车辆图像,然后经过图像的预处理提取到车牌号码,利用计算机相关技术以及数字图像处理技术将获得的图像信息进行处理、分析,最后获得实时的违规、违章的机动车辆的信息,进行实时的信息发布、交通处罚等相关工作。不过由于外界环境的干扰,比如说大雾天气,或者镜头、牌照沾染灰尘等原因,使得获取的大部分车牌图像都是较为模糊的。(3)在办公室自动化图像应用在现实的工作、学习过程中
26、都需要阅读、转手大量的纸质文档材料,由于传真、复印等环节导致获取的文本质量的急剧下降导致识别率降低,所以在办公自动化处理中低质量的文本占很大部分。综上所述 OCR 技术在信息化时代发挥的作用是巨大的。1.3 系统设计简介及课题研究的内容1.3.1 系统设计简介OCR 系统图像预处理技术是由几个相互依存但又相互独立的模块组成,相互独立保证了对于各式文本文字图像处理的灵活性,相互依存保证了文本文字图像处理的有效性。通常,一个 OCR 系统由以下几个部分组成如图 1.1 所示。湖南工程学院毕业设计(论文)5图像输入预处理特征提取文字识别后处理文字输出图 1.1 OCR 系统框架图本文研究的是图像预处
27、理,从图像预处理的定义来看,预处理的作用就是怎样提高文字识别率。从图 1.2、图 1.3 可以看出实际待处理文本文字图像存在的问题。图 1.2 实际获取的图像OCR 系统中的图像预处理的研究与实现6图 1.3 实际获取的图像实际拍摄获取的待处理的文本文字图像存在的问题有相机拍摄时,由于电子转移产生的噪声、光照不均、相机透镜产生的扭曲现象、拍照时的随意性产生的倾斜问题。总的来说,OCR 系统的图像预处理的模块如图 1.4 所示:图像输入 灰度变换 几何变换 图像增强图像分割版面分析文字切分归一化文字细化图 1.4 图像预处理的模块本课题研究的是预处理过程中的灰度变换,几何校正,图像增强,二值化,
28、文字提取功能。1.3.2 课题研究的内容本课题是 OCR 系统中的图像预处理的研究和实现,通过 MATLAB 实现算法。预处理包括灰度变换、几何校正、图像增强、二值化、文字提取功能。本课题由以下几个方面构成。第 1 章从 OCR 系统、预处理定义入手,详细地介绍了课题背景,发展历程,国内外发展、应用现状。简单扼要地介绍了基于定义所要求我们实现的内容。第 2 章从实现的内容出发,详细地介绍了课题涉及到的预处理方面的理论原理以及实现算法。湖南工程学院毕业设计(论文)7第 3 章本文系统地介绍了涉及到的 MATLAB M 文件、语句、 GUI 句柄涉及的相关知识,方便读者入手进行了解。第 4 章介绍
29、了具体实现以及实现过程中差错控制以及遇到的问题。结束语则是对此课题的总结包括心得、遇到的问题、如何去解决以及展望。1.4 课题设计方案及解决问题的框架课题的主要目的是提高 OCR 系统文字识别率,在实际提取的图像中遇到的噪声、光照不均、扭曲畸变、倾斜问题便是课题需要解决的问题,课题设计的方案为如图 1.5实际文本文字图像预处理的设计方案。读取图像 灰度图像 是否扭曲校正选择参数 k 1 , k 2 ,进行扭曲校正灰度值分段线性拉伸同态滤波 均衡化二值化平滑滤波提取骨架倾斜校正提取文字并列选择 并列选择YN图 1.5 实际文本文字图像预处理的设计方案OCR 系统中的图像预处理的研究与实现8第2章
30、 OCR图像预处理实现原理2.1 文本文字图像预处理的介绍在 OCR 技术中,对文本文字图像进行特征提取、分割以及文字识别前所进行的处理叫做图像预处理。进行预处理的最终目的就是将文本文字图像中所有的文字信息进行正确地识别,该过程在本系统中分为图像增强、二值化、几何变换、平滑滤波,文字提取几个步骤。2.2 灰度变换经由光学设备采集到的图像或者在计算机中存储的图像为 RGB 彩色图像,RGB是红、绿、蓝的简称,每个像素中每种颜色占一个字节。彩色图像包含了大量的色彩信息,占用大量内存且大大降低了处理速度,将彩色图像转化为可以基本识别图像信息的灰度值图像可以大大地简化处理速度。当图像中的每一个像素值
31、R=G=B 时,则表示一种灰度颜色。灰度化通常有三种方法。表 2.1 灰度化三种方法最大值法 R=G=B=max(R,G,B )平均值法 R=G=B=(R+G+B)/3加权值法 R=G=B=0.30R+0.59G+0.11B因为人眼对绿色敏感度最高,红色次之,蓝色最低,因此权值法中的加权值法可以得到最适合的灰度图像。2.3 几何校正2.3.1 几何校正简介我们对选取的文本文字图像有着较为严格的要求。在实际处理过程中,因为某些图像源摆设的固定性、光学设备摆设的随意性和相机凹凸镜头的原因,造成了拍摄图像的扭曲畸变和倾斜畸变,2.3.2 和 2.3.3 节针对两种情况进行了科学分析并提出解决方案使得
32、处理后的文本文字图像能够适合文字识别。2.3.2 扭曲校正在图像获取的过程中由于扫描仪或相机透镜存在的原因、纸质文档纸面卷曲的原因,会产生某种程度的图像扭曲畸变,针对扭曲畸变问题,本文采用了高次函数进行拟合校正的方法。具体的校正过程如图 2.1 所示。湖南工程学院毕业设计(论文)9拍摄过程中的某些原因导致扭曲畸变 x=x(u,v)y=y(u,v)进行拟合校正(U,V)(X,Y)(X,Y)图 2.1 高次函数进行拟合校正过程其中拟合函数: (2-1)221, vkuvux(2-2)221,y其中 k1,k2 分别是控制水平方向、竖直方向上的扭曲矫正的参数。本文中预设 k1= -0.0000002
33、4,k2=0.在程序运行过程中可以根据具体图像的扭曲程度调节参数值。2.3.3 倾斜校正(1)radon 校正Radon 算法是一种通过定方向投影叠加,找到最大投影值时角度,从而确定图像倾斜角度的算法。具体过程如图 2.2 所示。(0,0)xY(0,0)YX IMMG IXY图 2.2 radon 变换解析二值图像矩阵 的矩阵坐标 ,将 作为原点坐标,建立笛卡尔坐xyjkI,xyjk,1,N标轴,矩阵坐标变换为笛卡尔坐标: , 相对于 X 轴 建立 XykY坐标轴,图像的笛卡尔坐标在 的 轴上进行投影,统计投影值, 从xyjk, ,OCR 系统中的图像预处理的研究与实现10度变换,寻找最大投影
34、值对应的角度 , 90便是矩阵图像矩阵 需要逆时。90 xyjkI,针转动的倾斜角度。(2)Hough 校正Hough 校正是通过寻找参数最大重叠点对应的的角度进行图像倾斜矫正的。具体过程见图 2.3 Hough 变换解析。图 2.3 Hough 变换解析一条直线在直角坐标系下可以用 y=kx+b 表示, 霍夫变换的主要思想是利用该方程的参数空间和变量空间的对应关系。在变量空间里 作为已知量,在参数空间yx,作为变量坐标,或者相反。直线 在参数空间映射的点为 ,参bk, 1bky1b,k数空间直线 在变量空间映射的点为 ,过变量 有无数条直线与bxky11,yx,参数空间点对应。由此可以做如下
35、推论:在变量空间 个点分布在同一直线上,各个N点在参数空间中按照倾斜角度均匀提取 条直线,则 条直线会在参数空间中有M一个重叠数目达到 的点,该点对应的变量空间的直线的倾斜角度便是文字图像的倾M斜角度。由于斜率 K 在直线垂直 X 轴的情况下为无穷大,所以直接用直角坐标系下的参数映射法存在不合适实际情况的地方。选用极坐标, yxsinco, 表示直线到原点的距离, 为线上点与原点连线与 X 轴角度。(2-3)sinsincoAyx由于汉子是方块形,有些文字有明显的框或者存在明显的竖线、横线的情况,在进行 hough 变换时会将这些直线提取出来,得到错误的倾斜角度,这是实际处理过程中无法避免的,
36、解决办法是对提取的直线进行阈值控制,具体办法是将提取的直线的倾斜角度用 plot()显示,根据具体图像的倾斜角度选取阈值范围,将阈值范围以外的倾斜角度去掉,将阈值以内的倾斜角度使用最小二乘法算法求得合适的倾斜角度。设留下的倾斜角度为 , ,最合适的角度为 ,1n,2 最小,利用最小二乘法求得最合适的角度为:221 ny=k*x+by=k1*x+b1(k,b)(k1,b1)湖南工程学院毕业设计(论文)11。n21从骨架图矩阵 ( 1 , 1 )坐标开始= 0 : 0 . 1 : 1 8 0上式三角变换为 : = A * a r c t a n ( x0/ y0) ,si,A20yx在参数空间里边
37、找 的叠加点数量 , 9 0 - 即是图像倾斜角度i ( G2+ G4+ G6+G8) ?T h r e s h o l d = ( G1+ G3+ G5+ G7-4 * G0) / 4T h r e s h o l d = ( G1+ G2+ G3+ G4+G5+ G6+ G7+ G8- 8 * G0) / 8设 g r a y 代表当前点 B M P ( i , j )的灰度值 , 当 g r a y 小于等于阈值时 , 此点白点用 1 表示; 否则为黑点用 0 表示 。YN图 2.8 自适应二值化算法描述2.5.3 形态学处理二值形态学有四种基本变换:膨胀、腐蚀、开运算、闭运算。膨胀与腐
38、蚀运算式建立在集合的 Minkowsku 和与差基础上的,它们是所有复合形OCR 系统中的图像预处理的研究与实现16态学变换或形态分析的基础。形态学主要利用结构元素对每个二值图像像素附近特定的区域进行逻辑运算得到相应的输出图像。图像形态学处理效果主要取决于结构元素相关信息,比如:形状、大小。 给定二值矩阵图像 Ii,j,结构元素 Ti,j,运算的得到的矩阵图像为 IMAGi,j,运算表达式为 .膨胀: lkTljkiIANDmlk , j - ( N -1 ) / 2 : j + ( N - 1 ) / 2 )括号中小于 0 下标所对应的点的值设为 0i = o | | j = pYNj =
39、pYNj + +i + + , j = 1i = 1 , j = 1A = ( 1 / N * N ) * B图 2.10 线性滤波算法12 )12,(),(n nmH湖南工程学院毕业设计(论文)18若采用 3*3 邻域进行邻域中值运算。 1),()9/(,ij jnmifyxf(2-16)假设噪声 yxn,是加性噪声,在空间各点互不相关,且期望是 0,方差为2,yxg,是未受污染的图像,含有噪声的图像 f 经过邻域平均后为: ),(),()/1(,)/1(), yxngMyxf(2-17)由上式可知,经过平均后,噪声的均值不变,方差 22/1a,即噪声方差变小,说明噪声强度减弱了,既抑制了噪
40、声。邻域平均法作用为:(1)平滑图像信号。(2)使得图像目标区域边界变得模糊。通过卷积和频域计算的关系来看,对图像进行邻域平均处理的效果等同于对图像进行了低通滤波处理。证明过程如下:S=1,1,1,1:1,1,1,1:1,1,1,1:1,1,1,1矩阵,对 S 进行二维傅立叶变换,如图 2.11 对(4*4)邻域进行傅立叶变换.图 2.11 对(4*4)邻域进行傅立叶变换根据算法我们可以计算模板 S 与图像矩阵 A 的卷积。OCR 系统中的图像预处理的研究与实现19根据卷积算法对应的频率域处理过程,可以得出卷积可以实现邻域相加求平均的效果就是对图像 A 进行了低通滤波。但这种方法会使得图像变得
41、模糊,因此平滑后常需要锐化来增强。2.6.3 中值滤波中值滤波是处理噪声的非线性滤波算法。算法为:对于给定的 n 个数值 ,将数组 ani 元素按从大到小排序,n 为奇数a,.an2n1i时,取 ,若 n 为偶数取 。/21-ani/21/ii 中值滤波的方法运算简单,便于实现,而且能较好地保护边界,但有时会失掉图像的细线和小块的目标区域。邻域的大小决定在多少个数值中求中值,窗口的形状决定在什么样的几何空间中取元素计算中值。对二维图像,窗口 S 的形状可以是矩形、圆形、及十字形等,实际处理时 S 的中心位于待处理点上。窗口大小及形状有时对滤波效果影响很大。中值滤波对椒盐噪声有较好的去噪效果。具
42、体算法实现如图 2.12 所示。根据具体对称窗口形状选取最长宽 L , 高 H , 选取的值可定为 , 高为奇数值 , 宽为奇数值定义为一个 L * H 的 0值矩阵 S按照具体窗口形状将 S 中的元素点的值设为 1窗口元素的序列为从左到右 , 从上到下排序i = 1 , j = 1将窗口中点置于图像 A i j , 然后将窗口覆盖的元素按大小排序设为i = o | | j = pj = pj + + j = 1 , i + +A = BNYNYa.,ann21nk数组N 为奇数时 , 取 B i , j =N 为偶数 , 取 B i , j =1/2-nak/.an21nk图像矩阵 A o
43、, p , 处理后图像矩阵B o , p 图 2.12 中值滤波算法示意图2.6.4 维纳滤波维纳自适应滤波效果通常比线形滤波的效果好,维纳滤波器对噪声抑制效果较好。维纳滤波函数通常对于含有白噪声的图像滤波效果更好。维纳滤波函数采用的算法是首先估计出像素的局部矩阵,和方差: (2-18) (2-19)是图像中每个象素的 M*N 的邻域。然后,对每一个像素利用维纳函数估计出灰度值: )2,1(*)/()2(22 nanb (2-20)2.7 文字提取2.7.1 文字提取简介文字提取是指将待识别的文字,从其所在的行中单独地提取出来。本系统中采用投影法进行文字提取。具体实现过程为,先考察文字行投影,
44、选取阈值,确定行边界之后,提取每个文字行,再对每行文字进行列投,选取阈值,获取得到文字边界之后 22,2 ),1()*/(naNM2,/n湖南工程学院毕业设计(论文)20再提取出文字。首先,提取出行文字,对处理后的文字行垂直列扫描,记录每文字行中像素值为 1(白像素)的个数,考察各列的扫描值:若扫描中该列白像素个数的和为零或者是小于阈值 thresh,则可认为此处是字符的间隙;若相邻间隙之间黑色区域的宽度大于设定的字间阈值 widththresh,小于阈值 widththresh 或者明显小于其前面分割得到的字符宽度,则认为该部分是文字中的偏旁部首,将于下一个相邻部首区域合并;若相邻间隙区域的
45、宽度小于阈值 Widththresh,高度明显小于其前面分割字符的高度,则可认为此区域为噪声块,将其做删除处理;若切割宽度大于阈值 Widththresh,则在该区域内重新调整切分阈值 cut,并结合前后的切分区域进行二次切分和区域合并处理。2.7.2 文字提取实现在 matlab 中图像存储在以列为主的矩阵中,文字提取前的形态学闭操作、平滑滤波部分将零散分布在图像中的的二值化之后的噪声去掉了,在提取文字时设定的去噪声阈值是非常小的,在 110 个像素点左右。具体实现过程见图 2.13 文字提取。对文本二值图像进行行投影 , 行投影即 : 将每行 1 值相加 , 根据投影结果找出阈值以便与进行行文字切割 。提取每行文字并显示结果对提取出来的每行二值化文字图像进行列投影 , 即 :将每列 1 相加 , 根据投影结果选取文字间隙阈值 ,偏旁间隙阈值 , 噪声阈值提取每个文字并显示是否满意 ?保存分割出来的文字是否满意 ?YNYN二值图像 b w o , p 图 2.13 文字提取