基于MATLAB的图片中文字的提取及识别
邹浩,余龙,邹勇博,刘宇童,和振乔,李少梅
(西安电子科技大学电子工程学院,西安,710126)
摘要
随着现代社会的发展,信息的形式和数量正在迅猛增长。其中很大一部分是图像,图像可以把事物生动地呈现在我们面前,让我们更直观地接受信息。同时,计算机已经作为一种人们普遍使用的工具为人们的生产生活服务。从图像中提取文字属于信息智能化处理的前沿课题,是当前人工智能与模式识别领域中的研究热点。由于文字具有高级语义特征,对图片内容的理解、索引、检索具有重要作用,因此,研究图片文字提取具有重要的实际意义。又由于静态图像文字提取是动态图像文字提取的基础,故着重介绍了静态图像文字提取技术。
关键词:MATLAB图像处理文字提取文字识别
TextExtractionandRecognitioninImagesBasedonMATLABZOUHao,YUlong,ZOUYongbo,LIUYutong,HEZhenqiao,LIShaomei
(XidianUniversityElectronicEngineeringCollege,Xi'an,710126)
Abstract
Withthedevelopmentofsociety,theformandquantityofimformationareincreasingquickly.Alargepartofthemareimages,whichcanmakethingsvividlypresentedinfrontofus,letusmoreintuitivetoacceptinformation.Atthesametime,thecomputerhasbeenasawidelyusedtoolforpeople'sproductionandlivingservices.Extractingtextfromimagebelongstothefrontierofintelligentinformationprocessing,anditisthecurrenthotresearchtopicinthefieldofartificialintelligenceandpatternrecognition.Asthetextwithhigh-levelsemanticfeatureandplaysanimportantroleonunderstanding,indexingandretrievalimagecontent.Therefore,thestudyonextractingtextsfromimageshaveimportantactualmeanings.Andbecauseextractingtextsfromstillimagesisthebasisforextractingtextsfromdynamicimages,thearticleemphaticallyintroducesthetechnologyofextractingtextsfromstillimages.
KeyWords:MATLABimageprocessingwordextractionwordrecognition
一.引言
随着计算机科学的飞速发展,以图像为主的多媒体信息迅速成为重要的信息传递媒介,在图像中,文字信息(如新闻标题等字幕)包含了丰富的高层语义信息,提取出这些文字,对于图像高层语义的理解、索引和检索非常有帮助。图像文字提取又分为动态图像文字提取和静态图像文字提取两种,其中,静态图像文字提取是动态图像文字提取的基础,其应用范围更为广泛,对它的研究具有基础性,
所以本文主要讨论静态图像的文字提取技
术。静态图像中的文字可分成两大类:一种
是图像中场景本身包含的文字,称为场景
文字;另一种是图像后期制作中加入的文
字,称为人工文字,如右图所示。场景文字
由于其出现的位置、小、颜色和形态的随机
性,一般难于检测和提取;而人工文字则字
体较规范、大小有一定的限度且易辨认,颜
色为单色,相对与前者更易被检测和提取,
又因其对图像内容起到说明总结的作用,故适合用来做图像的索引和检索关键字。对图像中场景文字的研究难度大,目前这方面的研究成果与文献也不是很丰富,本文主要讨论图像中人工文字提取技术。
二.静态图像中文字的特点
静态图像中文字(本文特指人工文字,下同)具有以下主要特征:
(1)文字位于前端,且不会被遮挡;
(2)文字一般是单色的;
(3)文字大小在一幅图片中固定,并且宽度和高度大体相同,从满足人眼视觉感受的角度来说,图像中文字的尺寸既不会过大也不会过小;
(4)文字的分布比较集中;
(5)文字的排列一般为水平方向或垂直方向;
(6)多行文字之间,以及单行内各个字之间存在不同于文字区域的空隙。在静态图片文字的检测与提取过程中,一般情况下都是依据上述特征进行处理的。
三.文字提取、识别的一般流程
≥<=threshithreshii2,12,03静态图像文字提取一般分为以下步骤:文字区域检测与定位、文字分割与文字提取、文字后处理。其流程如图1所示。
(图1)
四.文字提取、识别的详细步骤
1.在Matlab中调用i1=imread('字符.jpg'),可得到原始图像,如图2所示:
(图2)
2.调用i2=rgb2gray(i1),则得到了灰度图像,如图3所示:
(图3)
调用a=size(i1);b=size(i2);可得到:a=3,b=2即三维图像变成了二维灰度图像
3.调用i3=(i2>=thresh);其中thresh为门限,在
[0,255]之间这里,i2_max=double(max(max(i2)));%获取亮度最大值