基于Matlab图像的文字区域检测新方法-纵向边缘

论文核心提示:

嵌入在图像中的文字信息是图像语义的一种重要表达方式,通常反映了图像的主要内容,因此,准确检测出图像中的文字区域是正确理解图像内容的关键。本文提出一种边缘纹理特征与灰度特征相结合的文字区域检测算法。实验证明该算法效果较好。   关键词:边缘检测;纵向边缘;灰度直方图;文字区域

1 引言
  
  随着多媒体技术和计算机网络的飞速发展,越来越多的信息以数字图像的形式传播和存储。图像中的文字包含丰富、明确的信息,一定程度上反映了图像的主要内容。图像中文字区域的准确提取是正确理解图像内容的关键,对于信息检索、图像注释、网络监控、网络垃圾图像过滤、智能交通、数字图书馆等领域都有着重要意义。
  近年来,对于彩色图像文字区域提取的研究已经取得了大量研究成果,Agnihotri[1]通过边缘滤波与形态学运算结合处理图像,利用启发性规则确定文字区域;DatongChen[2]利用Canny算子提取图像边缘,并用支持向量机方法确认文本行;Hua[3]利用文字条角点特征提取出文字块等。但由于图像存在背景纹理复杂,文字尺寸不一致、字体多变、颜色多样、排列方式多变等的复杂性,仍存在文字区域提取的准确率不高、精确度不高、效率不高等问题。
  针对国内外对图像中文字区域提取方法研究现状中存在的问题,提出一种结合图像边缘纹理与灰度特征的方法。实验证明,该方法文字区域提取的准确率较高,对复杂背景图像也能较好地实现文字区域与背景区域的分离。
  
   2 算法基本原理
  
  算法主要分为5个关键步骤:(1)输入彩色图像;(2)将彩色图像转化为灰度图像,并对灰度图像进行纵向边缘检测;(3)通过等值行分割、动态列分割、相邻矩形区域合并确定候选文字区域;(4)候选文字区域灰度直方图分析;(5)根据二值图像生成的四邻域连通域的几何形状特征确定最终文字区域。
  2.1 边缘检测
  一个可识别的文字串通常具有这样的特点[4]:文字的边缘颜色通常和背景有着较强的对比;字符边缘是由横向边缘、纵向边缘、斜向边缘组成的,这些边缘线条使字符具有与背景不同的纹理特征。因此考虑从边缘的角度来检测文字。
  边缘检测前先对彩色图像作灰度化处理。
  常见的边缘检测算子有Roberts算子、Prewitt算子、Sobel算子、Laplacian算子等。对比之下,Sobel算子通过增加权重的方法作卷积处理效果更好,在一定程度上抑制了噪声,且计算代价相对降低[5]。因此,采用Sobel算子检测灰度图像边缘。
  对于灰度数字图像f(i,j),Sobel算子的横向和纵向梯度定义如下[6]:
  如果综合考虑横向和纵向梯度,像素点对应的梯度定义为:
  
  由此可得到了一个边缘图S(i,j)。根据文字纵向边缘尤为明显的特征,只考察灰度图像的纵向边缘。
  将边缘图二值化,并通过细化、去噪等处理,得到如图1-b所示纵向边缘二值图像。
  2.2 候选文字区域的确定
  得到纵向边缘二值图后,采用等高行分割与动态列分割结合的方法检测文字区域。
  (1) 等高行分割
  行区域的高度取值要适当,取值太大,会使高度较小的文字行区域包含大量背景,给分析带来困难。考虑到文字的高度至少要大于6才可以保证文字清晰可见,将原图像平均分成高为6的行区域。
  (2) 动态列分割
  图像中的文字尺寸可能大小不一,因此分割出的不同行区域中的文字边缘间隔距离也可能不相等。解决方法:求每个行区域中的边缘间隔距离均值d,将水平距离小于d的边缘归为同一区域,大于d的边缘分隔开。
  图2-a为行列分割后得到的等高矩形区域。绝大部分含文字的矩形区域被检测出来,部分背景区域被删除,小部分的背景矩形区域被误判为文字矩形区域被保留下来。  

[本论文关键字]:

推荐链接