基于笔画宽度的自然环境下的文本检测外文翻译资料

 2022-03-29 09:03

英语原文共 8 页,剩余内容已隐藏,支付完成后下载完整资料


基于笔画宽度的自然环境下的文本检测

Boris Epshtein Eyal Ofek Yonatan Wexler

微软公司

摘要

我们提出了一种寻找每个图像像素的笔画宽度大小的新型图像操作器,并演示其在自然图像中文本检测的用处。 这个运算器只与本地的数据相关的,这使得它更快速强大到足以消除对多尺度计算或扫描窗口的需求。 广泛的测试表明,这种算法胜过最新发布的算法。 它的简单性允许算法检测许多字体和文本语言。

1.绪论

检测自然图像中的文本,而不是扫描打印的页面,传真和名片,这对于许多计算机视觉应用程序而言是重要的一步,例如针对视觉受损的计算机辅助,企业自动地理编码以及机器人导航城市环境。在室内和室外环境中检索文本为各种视觉任务提供了背景线索。此外,已经表明,图像检索算法的性能关键取决于其文本检测模块的性能。例如,两本类似设计但具有不同文本的书籍封面被证明在没有检测到批注文本的情况下几乎没有区别。

在最近的一些研究中考虑了文本检测的问题[1,2,3,4,5,6,7]。为了评估算法的好坏,举办了两场比赛(ICDAR 2003 [8]和ICDAR 2005 [9]的文本场地比赛)。比赛的定性结果表明还有改进的空间(ICDAR 2005文本位置竞赛获胜者显示召回率= 67%,精确度= 62%)。这项工作偏离了以前的工作,通过定义一个合适的图像操作符,其输出使文本能够快速可靠地检测。我们称这个操作符为笔画宽度变换Stroke Width Transform(SWT),因为它将图像数据从包含每个像素的颜色值转换为包含最可能的笔触宽度。由此产生的系统能够检测文本,无论其规模,方向,字体和语言如何。

应用于自然场景的图像时,OCR的成功率急剧下降,如图11所示。有几个原因。 首先,大多数OCR引擎是为扫描文本而设计的,因此依赖于正确分隔文本的分割背景像素。 虽然扫描文本通常很简单,但在自然图像中要困难得多。 第二。 自然图像展现出广泛的成像条件,例如色彩噪点,模糊,遮挡等。最后,虽然传统OCR的页面布局简单且结构化,但在自然图像中更难,因为文本少得多,并且在外观方面整体结构较少且变化较大。

图1:SWT将图像(a)从包含灰度值转换为包含每个像素(b)的可能笔画宽度的数组。 这个信息足以通过测量每个组件中的宽度方差来提取文本, 如(c)所示,因为文本趋于保持固定的笔画宽度。 这使它与树叶等其他图像元素不同。 (d)中显示了检测到的文字。

将文本与场景的其他元素分离的一个特征是其笔触宽度几乎恒定。 这可以用来恢复可能包含文本的区域。在这项工作,我们利用这个事实。 我们表明,一个局部图像运算符结合几何推理可以用来可靠地恢复文本。 本文介绍的主要思想是演示如何计算笔画输出可用于将文本与场景中的其他高频内容分开。 使用逻辑和灵活的几何推理,可以将具有相似笔画宽度的地方组合在一起形成更大的可能是单词的组件。 该推理还允许算法区分文本和任意图形,如图2所示。请注意,我们不要求笔画宽度在整个字母中保持不变,而是允许显示有界变体。

这里提出的方法不同于以前的方法,它不寻求分离特征每个像素的梯度和颜色。相反,我们收集足够的信息以使像素智能分组。在我们的方法中,如果它有一个对应的相对梯度的像素点的梯度是唯一重要的。这种几何验证大大降低了检测的像素的数量,笔画强制许多类似的配对共存在一个小区域。我们的方法的另一个显著差异以前的工作是在一个多尺度金字塔扫描窗口的情况下,通过多种方法[ 3, 4, 25 ]。相反,我们执行信息自下而上的整合,合并相似的笔画宽度的像素连接的组件,它允许我们发现字母在很宽的范围内的尺度相同的形象。因为我们不使用少数离散方向滤波器组,我检测任何方向上的笔画(而且,当然,文本行也是)。

此外,我们不使用任何特定语言的过滤机制,如OCR过滤阶段[ 3 ]或统计梯度方向在候选窗口属于某个字母。这让我们想出一个真正的多语言文本检测算法。

图2:检测自然环境下的文本

不是每一个应用程序的文本检测需要的字符识别的一步。当这些步骤是必要的,一个成功的文本分割步骤对识别性能影响较大。几个以前的文本检测算法[ 3, 18, 19 ]依靠图像区域分类。我们的方法进行准确的文本分割很容易检测到的文本足够的信息。

2.准备工作

大量作品直接处理检测文本从自然图像和视频帧。其他领域的相关工作研究线性特征提取。

用于文本检测方法的综合调查,看[ 1, 2 ]。在一般情况下,检测文本大致可分为两组的方法:基于纹理的方法和基于区域的方法。基于纹理的方法[ 3, 4, 18,19, 22 ] 在多个尺度扫描图像,相邻象素分类基于低梯度的上面和下面的文字,强度高的方差,小波和DCT系数分布的局限性等这一类的方法包括大的计算复杂性的扫描图像在不同尺度上的需要,尺度不同和精度不够的问题是由于固有的事实只有小的(或充分缩小)文本显示算法所需要的性能。此外,这些算法通常无法检测到足够的倾斜的文字。

另一组文本检测算法基于区域[例如, 5,6,23]。 在这些方法中,呈现某些性质(例如近似恒定的颜色)的像素被分组在一起。 然后以几何方式对所得到的连接组件(CC)进行过滤,并使用纹理属性排除不能是字母的CC。 这种方法很有吸引力,因为它可以同时检测任何比例的文本,并且不限于横向文本。 我们的方法属于这一类,但他的主要特征是与通常使用的颜色,边缘或强度相似性非常不同。 我们测量每个像素的笔画宽度,并将具有近似相似笔画宽度的相邻像素合并到CC中,形成字母候选区域。

在[7]中介绍了使用类似于检测字符笔划的思想的工作。然而,该方法与本文中开发的算法有很大不同。在[7]中提出的算法水平扫描图像,寻找强度突然变化的对(在明亮的背景上假设为黑色文本)。然后检查强度变化之间的区域颜色和笔画宽度的恒定性(假定笔画宽度的范围是已知的)。区域被分组在一个大小为W的垂直窗口内,如果找到了足够的区域,则声明存在一个笔画。该方法的局限性包括调整到要找到的文本的多个参数(例如垂直窗口大小W),无法检测水平笔画,以及检测到的笔画未分组为字母候选词,单词和句子的事实。因此,该算法仅能够检测近水平文本。本文提出的性能结果是使用与ICDAR竞争指标不同的指标完成的。我们实现了[7]中的度量,并且证明了我们的算法优于[7] - 参见第4节进行比较。

另一种方法[21]也使用了笔画宽度相似性的思想,但由于遍历水平扫描线来检测垂直笔画,以及使用形态扩张将候选像素连接到连接区域。虽然没有提供ICDAR数据库的性能结果,但该算法将无法处理任意方向的笔画。我们的方法对任意方向的笔画都能检测(见图8,10,12)。

Finally, the work [25] uses the idea of stroke width consistency for detecting text overlays in video sequences. The limitations of the method include the need for integration over scales and orientations of the filter, and,最后,工作〔25〕使用笔画宽度一致性的思想来检测视频序列中的文本叠加。该方法的局限性包括需要对滤波器的尺度和方向进行集成,以及,水平文本的固有衰减。

我们对笔画宽度的定义与线性特征有关,通常在两个领域中处理:遥感(道路网络提取)和医学成像(血管分割)。在道路检测中,航拍或卫星照片中道路宽度的范围是已知的并且是有限的,而出现在自然图像中的文本可以大幅度地变化。此外,道路通常为细长的线性结构,曲率较低,但对于文本来说,情况也是如此。道路检测的大多数技术依赖于上面列出的假设,因此不直接适用于文本检测。有关技术的调查,请参见[10]。最接近的工作是[11],它利用道路边缘反平行的方式来检测位于道路中心线上的点,然后将这些候选中心点分组在一起。没有尝试使用不变的道路宽度来促进分组。我们的方法在笔画的每个像素上使用密集投票,因此可以更加稳定地识别笔画,而不需要面临中心点候选进行分组的困难且脆弱的过程。另一种方法[12]使用从低分辨率图像提取的线条和从高分辨率图像中提取的边缘边缘来寻找候选路线。在文本检测的情况下,对于类似的策略,需要整个多尺度图像金字塔;此外,使用此方法仍不太可能检测到小文本或细文本。

有关血管分割的调查,请参见[13]。 该领域的工作使用模型拟合(蛇,广义柱面),山脊发现(山脊操作器,二值化随后细化,小波)和其他方法。 使用船宽作为从用户指定的种子开始追踪船只的附加特征的研究包括[14,15]。 现有的作品都没有尝试用自下而上的方式直接检测血管,采用这种工作中描述的方式,使用宽度的低变化。

3.文本检测算法

在本节中,我们将描述文本检测算法。 我们首先定义笔画的概念,然后解释笔画宽度变换(3.1),以及它如何用于将像素分组为字母候(3.2)。 最后,我们描述了将字母分组为更大的单词和线条结构的机制,以便进一步过(3.3)该算法的流程图如图5所示。

3.1 笔画宽度变换

笔画宽度变换(简称SWT)是一个局部图像运算器,它为每个像素计算包含该像素的最可能笔画的宽度。 SWT的输出是一个大小等于输入图像大小的图像,其中每个元素包含与该像素相关联的笔画的宽度。我们定义笔画为图像的连续部分,其形成一个 几乎恒定的宽度,如图3(a)所示。 我们不假设知道笔画的实际宽度,而是恢复它。

图3:SWT的实现(a)典型的笔画笔画。 这个笔画中笔划的像素比背景像素更暗。 (b)p是笔画边界上的一个像素。在p处的梯度方向搜索导致找到q,笔画另一侧的相应像素。 (c)沿射线的每个像素由其当前值的最小值和所找到的笔画宽度来指定。

SWT每个元素的初始值设置为infin;。为了恢复笔画,我们首先使用Canny边缘检测器计算图像中的边缘[16]。 之后,考虑每个边缘像素p的梯度方向dp(图3b)。 如果p位于笔画边界上,则dp必须大致垂直于笔画的方向。 我们遵循射线r =p n·d p,ngt; 0直到找到另一个边缘像素q。 我们考虑像素q处的梯度方向d q。 如果d q与dp大致相反,则与沿着段[p,q]的像素相对应的SWT输出图像的每个元素s被分配宽度|| p-q || 除非它已经具有较低的值(图4a)。否则,如果没有找到匹配的像素q,或者如果dq与dp不相反,则射线被丢弃。图3示出了SWT计算的过程。

如图4b所示,更复杂情况下的SWT值(如拐角)在上述第一遍之后将不是真正的笔划宽度。 因此,我们再次传递每个未丢弃的射线,计算其所有像素的中值SWT值m,然后将SWT值大于m的射线的所有像素设置为等于m。

图4: 笔画宽度的求取

这里描述的SWT算子在图像中的边缘像素的数量是线性的,并且在训练阶段确定的最大笔画宽度也是线性的。

3.2 发现文字候选区域

上述步骤输出一个笔画宽度图。下一步是将这些像素聚合成文字候选区域。在本节中,我们将描述为此采用的一组相当普遍的规则。

两个像素有相近的笔画宽度我们就将其连在一起。为此我们修改了传统的连通域规则[17]。我们将一个像素与周围像素笔画宽度之比在3以内的聚合在一起。这个规则笔画宽度缓慢变化的像素点聚合在一起,因此允许更复杂的字体和透视失真(图8)。 为了在黑暗背景下适应明亮文本,反之亦然,我们将该算法应用两次,一次沿着d p并且一次沿着-dp。

我们现在需要确定可能包含文本的组件。 为此,我们采用了一套相当灵活的规则。 每个规则的参数在[8]的训练集上学习。 我们执行的第一个测试是计算每个连接组件内的笔画宽度的方差,并拒绝方差过大的那些。 这可以拒绝叶子这样的区域,这种区域在包括城市和农村场景的许多自然图像中普遍存在,并且已知很难区分文本。 如图1(c)所示,该测试足以区分比叶子更加一致的文本区域。 学习的阈值是特定连接组件的平均笔画宽度的一半。

另一个常见问题是可能围绕文本的连接组件,如符号框。 我们通过确保组件的边界框包含不多于两个其他组件(这通常发生在斜体文本中)来消除这种情况。

最后,尺寸太小或太大的元件可能会被忽略。 从我们的训练集中了解到,我们将可接受的字体高度限制在10到300像素之间。 高度测量的使用使我们能够检测连接的脚本(如手写体和阿拉伯字体),并考虑到由于边缘检测阶段的混叠和缺陷而导致单词中的小写字母趋于连通的趋势。

图5 算法流程图

3.3 形成文本行

为了进一步提高算法的可靠性,我们继续向前看一组字母。寻找这样的组是一个重要的过滤机制,因为单个字母通常不会出现在图像中,推理允许我们去除随机散布的噪音。

文本的一个重要提示是它以线性形式出现。预计一行上的文本会有相似之处,包括相似的笔画宽度,字母宽度,高度以及字母和单词之间的空格。这个推理证明是直接和有价值的。例如,在车轮旁边的灯柱不会被误认为字母“O”和“I”的组合,因为该柱比车轮高很多。我们认为每对字符候选区都有可能属于同一文本行。两个字母候选者应该具有相似的笔画宽度(中间笔画宽度之间的比率必须小于2.0)。字母的高度比不得超过2.0(由于大小写字母之间的差异)。字母之间的距离不得超过宽度的三倍。此外,还要比较配对候选对象的平均颜色,因为同一字中的字母通常期望以相同颜色书写。如3.2节所述,通过优化训练集的性能来学习所有参数。

在算法的下一步中,上面确定的候选对被聚集在一起成为链。最初,每个

全文共7118字,剩余内容已隐藏,支付完成后下载完整资料


资料编号:[14867],资料为PDF文档或Word文档,PDF文档可免费转换为Word

原文和译文剩余内容已隐藏,您需要先支付 30元 才能查看原文和译文全部内容!立即支付

以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。