论文地址:https://arxiv.org/abs/2005.03492

摘要

1.介绍

2.背景

2.1图像中的文字

2.2基本问题和特殊问题

2.2.1基本问题

2.2.2特殊问题

2.3应用

3.方法

3.1裁剪场景文本图像识别

3.1.1基于分割的方法

3.1.2基于无分割的方法

图像预处理阶段

特征表示阶段

序列建模阶段

预测阶段

3.1.3 其他潜在方法

3.2端到端网络

4.评估和协议

5.讨论和未来方向


摘要

文本的历史可以追溯到数千年前。 在广泛的基于视觉的应用场景中,文本携带的丰富而精确的语义信息非常重要。 因此,自然场景中的文本识别已经成为计算机视觉和模式识别领域的活跃研究领域。 近年来,随着深度学习的兴起和发展,许多方法在创新,实用性和效率方面都显示出了希望。 本文旨在(1)总结与场景文本识别相关的基本问题和最新技术; (2)介绍新的见解和想法; (3)对公开资源进行全面审查; (4)指出今后的工作方向。 总而言之,该文献回顾试图呈现场景文本识别领域的整个蓝图。 它为进入该领域的人们提供了全面的参考,并可能有助于激发未来的研究。 相关资源可从我们的Github存储库中获得:https://github.com/HCIILAB/Scene-Text-Recognition (资源非常丰富!建议立刻收藏!)

1.介绍

文本是用于记录,交流或继承文化的符号系统。 作为人类最有影响力的发明之一,文本在人类生活中发挥了重要作用。 具体来说,文本携带的丰富而精确的语义信息在各种基于视觉的应用场景中都很重要,例如图像搜索[1],智能检测[2],工业自动化[3],机器人导航[4]和 即时翻译[5]。 因此,最近的“ ICDAR健壮阅读比赛”的出现表明自然场景中的文本识别已引起研究人员和从业者的关注[6],[7],[8],[9],[10],[11] ,[12]。

在自然场景中识别文本,也称为场景文本识别(STR),通常被认为是光学字符识别(OCR)的一种特殊形式,即基于相机的OCR。 尽管扫描文档中的OCR十分发达[13] [14],但STR仍然具有挑战性,因为背景复杂,字体多种和成像条件不完善等诸多因素。 图1比较了扫描文档中STR和OCR的以下特征。

•背景:与扫描文档中的OCR不同,自然场景中的文本可以出现在任何物体(例如,招牌,墙壁或产品包装)上。 因此,场景文本图像可能包含非常复杂的背景。 此外,背景的纹理在视觉上可能类似于文本,这给识别带来了额外的挑战。

•形式:扫描文档中的文本通常以单色打印,并具有规则的字体,一致的大小和均匀的排列。 在自然场景中,文本会以不规则的字体,不同的大小和不同的方向以多种颜色出现。 文本的多样性使STR比OCR在扫描的文档中更加困难和具有挑战性。

•噪声:自然场景中的文本通常会因噪声干扰而失真,例如照明不均匀,分辨率低和运动模糊。 成像条件不完善会导致STR故障。

•访问:扫描的文本通常是正面的,并且占据图像的主要部分。 但是,场景文本是随机捕获的,这会导致不规则变形(例如透视变形)。 各种形状的文本增加了识别字符和预测文本字符串的难度。

由于其重要性和挑战性,近年来在自然场景中识别文本引起了学术界和工业界的极大兴趣。

早期研究[15],[16],[17]主要依靠手工制作的特征。 这些功能的低功能限制了识别性能。 随着深度学习的发展,神经网络极大地提高了STR的性能。 几个主要因素正在驱动基于深度学习的STR算法。 第一个因素是硬件系统的先进性。 高性能计算系统[18]可以训练大规模识别网络。此外,现代移动设备[19],[20]能够实时运行复杂的算法。 第二种是基于深度学习的STR算法中的自动特征学习,它不仅使研究人员摆脱了设计和选择手工特征的繁琐工作,而且还大大提高了识别性能。 第三是对STR应用的需求不断增长[21],[22],[23],[24],[25]。 自然场景中的文本可以提供丰富而精确的信息,这有助于理解场景。 在大数据时代,自然场景中的文本自动识别在经济上是可行的,吸引了研究者和从业人员。

本文试图全面回顾STR领域,并为算法的公平比较建立基线。 通过总结基本问题和最新技术,介绍新的见解和想法,并展望未来的趋势,我们展示了STR的全貌。 因此,本白皮书旨在为研究人员提供参考,并为将来的工作提供帮助。 此外,我们对包括标准基准数据集和相关代码在内的可公开获得的资源进行了全面的综述。

文献[26],[27],[28],[29],[30],[31]中有几条STR综述。 但是,上述大多数调查[26],[27],[28],[29],[30]都已过时。许多最近的进展(例如,2018 2020年开发的算法)未包括在这些调查中。 我们请读者阅读这些论文,以进行更全面的历史文学评论。 此外,Zhu等[29]和Long等[31] 回顾了场景文本检测和识别的方法。 Yin等[30]调查了视频中文本检测,跟踪和识别的算法。 与这些调查不同,本文主要关注STR,目的是对该领域进行更详细,全面的概述。

本文的其余部分安排如下:第二部分介绍了背景,基本问题以及与文本相关的特殊问题。 第三部分介绍了近年来为STR开发的新见解和构想。第四部分总结了标准基准数据集和评估协议,并比较了识别算法的性能。 最后,第5节总结了论文,并确定了ST未来工作的潜在方向

2.背景

为了全面了解STR领域,我们将介绍与文本相关的基本问题和特殊问题。 此外,本节将列出并分析STR的一些代表性应用。

2.1图像中的文字

文字在图像中的显示方式可能有所不同。 图2显示了示例和典型分类。 例如,如果按文本形式分类,则手写文本和印刷文本是两个基本类。 值得注意的是,分类方法可能会重叠。 由于各种手写风格和字符触摸问题,手写文本识别比印刷文本识别更具挑战性[32],[33]。 根据脚本/语言,图像中的文本可能包含不同的字符,例如拉丁文,中文或印地文。 诸如文本类别和阅读顺序之类的文本特性在不同语言中差异很大。 按照[28]中的定义,图像中的文本也可以分为“图形文本”和“场景文本”。 前者是指以数字形式叠加在视频或图像上的文本。 后者是指在其本机环境中捕获的对象上的文本。场景文本具有多种样式,可以出现在任何表面上,这使得很难区分复杂背景的文本。通常,STR处理印刷的拉丁场景文本。

本文总结的所有方法都使用这种类型的文本。

2.2基本问题和特殊问题

在许多基于视觉的应用场景中,文本携带的丰富而精确的信息非常重要。 但是,从自然场景中提取文本并在其他应用程序中使用它是一个复杂的过程。 如图3所示,文献中在此任务的各个阶段定义了各种基本问题:文本本地化,文本验证,文本检测,文本分割,文本识别和端到端系统。 此外,由于文本的独特挑战,存在与文本相关的特殊问题。 还简要介绍了文本增强,文本跟踪和自然语言处理(NLP)。 对这些通用概念的清晰理解可以帮助研究人员分析不同任务之间的差异和联系。

2.2.1基本问题

•文本定位:文本定位的目标是[34]精确地定位文本组件,并将它们分组到尽可能少的背景的候选文本区域[28]。 早期的文本本地化方法基于低级特征,例如颜色[35],[36],渐变[37],[38],笔画宽度变换[39],[40],最大稳定的末梢区域(MSER) [41],[42],Canny检测器[43],[44]和连接的分量分析[45],[46]。 当前的大多数方法基于深度神经网络[47],[48],[49]。

•文本验证:文本验证[50]旨在验证文本候选区域为文本还是非文本。通常使用 在文本本地化之后过滤候选区域,因为文本定位有时会引入误报。 文本验证的方法包括先验知识[51],[37],[52],支持向量机(SVM)分类器[24]和条件随机场(CRF)[50]。 最近的工作[15],[53]使用卷积神经网络(CNN)来改善文本/非文本的辨别力。

•文本检测:文本检测的功能[54]用于通过定位和验证来确定是否存在文本28]。 作为端到端系统的基础,它提供了精确而紧凑的文本实例图像以进行文本识别。 文本检测方法可以粗略分类为基于回归的方法[55],[56],[57],[58],[59]和基于实例分割的方法[60],[61],[62],[63] 。

•文本分割:文本分割已被确定为最具挑战性的问题之一[64]。 它包括文本行分割[65],[52]和字符分割[66],[67]。 前者是指将多个文本行的区域拆分为单个文本行的多个子区域。 后者是指将文本实例分成单个字符的多个区域。 字符分割通常用于早期的文本识别方法[68],[69],[70]。

•文本识别:文本识别[68]将裁剪的文本实例图像转换为目标字符串序列。 它是端到端系统的重要组成部分,可提供可靠的识别结果。 传统的文本识别方法依赖手工制作的功能,例如定向梯度描述符的直方图[15],连接的组件[16]和笔划宽度变换[17]。 最新研究使用深度学习编码器-解码器框架[71],[72],[73]。

•端到端系统:鉴于场景文本图像,端到端系统[68]可以直接将所有文本区域转换为 目标字符串序列。 它通常包括文本检测,文本识别和后处理。 实时,高效的端到端系统[16],[70],[74]的构建已成为近年来的新趋势。 一些研究者[68],[15],[75]将文本检测和文本识别解释为两个独立的子问题,将它们组合起来构成一个端到端的系统。 另一种方法[53],[76],[77],[78]是通过共享信息来共同优化文本检测和文本识别。

2.2.2特殊问题

•脚本识别:脚本识别[79]旨在预测给定文本图像的脚本。 它在多语言系统中扮演着越来越重要的角色。由于文本识别依赖于语言,因此检测脚本和语言有助于选择正确的语言模型[80]。 脚本识别可以解释为图像分类问题,通常设计区别性表示,例如中级特征[81],[82],卷积特征[83],[84],[85]和笔触部分表示[86]。

•文本增强:文本增强[87]可以重新显示降级的文本,提高文本的分辨率[88],消除文本的变形或消除背景[89],从而降低了难度 文字识别。 已经研究了许多用于文本增强的算法,并获得了有希望的结果,例如反卷积[90],[91],基于学习的方法[87]和稀疏重构[92]。

•文本跟踪:文本跟踪的目的 [30],[93]是为了保持视频中相邻帧之间文本位置和跟踪文本的完整性。 与图像中的静态文本不同,用于移动文本的跟踪算法必须在像素级别或子像素级别标识精确的文本区域,因为错误的跟踪可能会将文本与其背景或噪声文本混合在一起。 时空分析[94],[95]通常用于视频中的文本跟踪。 最近的一项研究[96]也预测了跟踪字符的运动。

•自然语言处理:自然语言处理(NLP)[97]探索了如何使用计算机来理解和操纵自然语言文本或语音。 NLP是人机通信的桥梁。 文本作为非结构化数据的最重要类型,是NLP的主要对象。 NLP的基于文本的应用程序非常广泛,包括机器翻译[98],[99],自动摘要[100],[101],问题解答[102],[103]和关系提取[104], [105]。

2.3应用

文本作为世界交流和感知的最重要载体,丰富了我们的生活。 在各个行业以及我们日常生活中,文本识别的许多应用包括文档理解[106],信息提取[107],[108],文本视觉问题解答(文本VQA)[109],[110] ],图像分类[111],历史文档数字化[21],[112],自动地理编码系统[22],[113],多媒体检索[23],[24],水表号读取[25],文本- 语音转换设备[114]等。 图4展示了一些代表性的应用程序。

3.方法

在早期的研究中,手工制作的特征被用于文本识别,例如定向梯度描述符的直方图[15],连接的分量[16]和笔划宽度变换[17]。 但是,这些方法的性能受到低容量功能的限制。 随着深度学习的兴起和发展,社区在各种方法的创新,实用性和效率方面见证了实质性的进步。 与传统方法相比,深度学习方法具有以下优点:i)自动化:自动特征表示学习可以使研究人员免于凭经验设计手工特征。 ii)效率:出色的识别性能远远超过传统算法。 iii)通用化:算法可以轻松地应用于类似的基于视觉的问题。 在本节中,我们将介绍深度学习时代为STR和端到端系统提出的新见解和想法。 审查了每种方法的主要作用。 如果有多个贡献,我们将分别对其进行分析。

3.1裁剪场景文本图像识别

STR的目的是将裁剪的文本实例图像转换为目标字符串序列。 自然界中有两种类型的场景文本,即规则的和不规则的。 存在两种主要的STR类别:基于分段的方法和无分段的方法。 对于无分段方法,它们可以大致分为基于CTC的[115]方法[116]和基于注意力的[98]方法[73],[72]。 此外,本节还介绍了其他有希望的想法,例如标签嵌入[117],[118]。 表1给出了这些识别方法的综合列表和分类。

3.1.1基于分割的方法

STR方法的一类是基于分割[70],[15],[53],它通常包括三个步骤:图像预处理,字符分割和字符识别。 基于分割的方法尝试从输入文本实例图像中定位每个字符的位置,应用字符分类器识别每个字符,然后将字符分组到文本行中以获得最终识别结果。

早期成功的基于深度学习的STR系统 由Wang等人开发[68],它使用了一个图形模型,该图形模型以字符的分数和位置作为输入,以确定来自小词典的特定单词的最佳配置。 提出的识别算法优于领先的商用OCR引擎ABBYY FineReader1,后者是STR的基准。 后来,受深度卷积神经网络在视觉理解上的成功启发[119],Wang等[15],Mishra等[120],刘等[121]结合了多层神经网络和无监督特征学习来训练一个高精度的字符识别器模块。 对于后处理,将具有字符间距的字符响应,基于波束搜索算法[122]或基于加权有限状态换能器[123]的表示应用于识别已定义词典中的目标单词。 为了进一步改善识别性能,研究人员探索了健壮的词图像表示形式,例如尺度不变特征变换(SIFT)描述符[124],Strokelets [125]和中层特征[126]。

所有上述方法都依赖于词典来获得最终的识别结果。 但是,查询时间线性地取决于词典的大小。 对于openlexicon,由于搜索空间大,因此这些策略不切实际。 为了解决此问题,已对STR进行了无词典的尝试。 一些研究者[69]通过采用大型词典作为高阶统计语言模型来克服了对受限词表的需求。 其他人则利用大型数据[70]和更复杂的神经网络[53],[127],例如卷积Maxout网络[128],以无词典的方式解决了STR。 最近,Wan等[129]建立了一个基于语义分割的识别系统,该系统可以预测具有两个独立分支的字符的类和几何信息,并进一步提高识别性能。

尽管基于分割的STR方法已经取得了重大进展,但仍然存在关键缺点:i)所有这些流水线需要准确检测各个字符,这已被识别为社区中最具挑战性的问题之一[64]。 因此,字符检测器/分段器的质量通常会限制识别性能。 ii)基于分段的识别器无法对超出单个字符的上下文信息进行建模,这可能会导致训练过程中单词级别的结果不佳。

3.1.2基于无分割的方法

第二类是无分割方法[131],[116],[71],[73],[72]。 该方法是识别整个文本行,并着重于通过编码器-解码器框架将整个文本实例图像直接映射到目标字符串序列,从而避免了字符分割。图5显示了一种典型的无分割方法,该方法包含图像预处理,特征表示,序列建模和预测的四个阶段。

图像预处理阶段

图像预处理旨在通过减轻来自不完美成像条件的干扰来提高图像质量,这可能会改善特征表示和识别。

•背景去除。文本可能出现在背景复杂的各种场景中。 背景的纹理特征在视觉上可能与文本相似,这会导致识别上的额外困难。不是复杂的特征表示[147]和综合方法[171],[172],一种直观但鲜为人知的解决方案是将文本内容与复杂背景分开 。 尽管传统的二值化方法[173]在文档图像上效果很好,但是它们无法处理自然图像中文本外观和噪点方面的实质性变化。 [89]使用生成对抗网络(GANs)[174]在保留文本内容的同时去除了背景,从而降低了识别难度并极大地提高了性能。

•文本图像超分辨率(TextSR)。场景文本通常会因各种噪声干扰而失真, 例如低分辨率。 低分辨率可能导致错误识别的字符或单词。 文本图像超分辨率(TextSR)[175]可以输出与给定的低分辨率图像一致的合理的高分辨率图像。 这种方法可以帮助低分辨率图像中的文本识别。经典方法,例如双线性,双三次或设计的过滤,旨在重建自然图像的详细纹理,但不适用于模糊文本[167]。 Wang等[167]并没有将超分辨率简单地视为回归问题[176]。 首先将TextSR方法与识别任务相结合,从而大大提高了文本识别器的性能。

•矫正。校正的功能是对输入的文本实例图像进行规范化处理,消除失真并减少不规则文本识别的难度 。 具体来说,不规则文本[137]指的是具有透视失真或任意弯曲形状的文本,通常会引起其他识别方面的挑战。空间转换器网络(STN)[177]被用作早期纠正模块,以纠正整个文本图像[178],[135]]或单个字符区域[141]。 后来,Shi等[73]和Jeonghunet等158]采用薄板样条(TPS)[179]处理更复杂的失真。 最近,提出了一些设计合理的校正网络。例如,开发了一种多对象校正网络[72],通过预测输入图像各部分的偏移量来校正不规则文本。 Zhan等[48]设计了一种新颖的行拟合变换和一个基于TPS的迭代校正框架,以实现最佳的场景文本校正。 根据中心线,比例尺和方向等局部属性,Yang等 [155]提出了一种对称约束整流网络。为了处理各种畸变,复杂的整流模块是必需的,并成为一种新趋势。 但是,这些都会影响识别算法的速度和内存消耗。 从业者应根据不同应用场景下的需求选择最佳的权衡。 此外,随着不规则文本检测的发展,值得重新考虑STR系统是否需要校正模块。

图像预处理包括但不限于上述类型。 它可以通过改善图像质量来显着降低识别难度。 各种方法可以组合使用。 尽管存在许多识别算法,但这些用于文本的辅助预处理方法在社区中并不常用,尤其是用于背景去除和TextSR。 此外,大多数通用的现成算法都集中在单个对象的样式上,而场景文本图像通常包含多个字符。 因此,针对STR的精心设计和专门设计的预处理算法值得研究人员在未来的工作中关注。

特征表示阶段

特征表示法将输入文本实例图像映射到反映与字符识别相关的属性的表示法,同时抑制字体,颜色,大小和背景等不相关的特征。

受[180],[181],[68]成功的启发 ,Su等[131]在他们的STR系统中使用定向梯度直方图(HOG)功能[182]来构造单词图像的顺序特征。 后来,CNN [138],[140],[141],[143],[72]已广泛用于特征表示阶段,例如VGGNet [183]​​,[116],[178],[133]。 ,[71],[137],[162]。 为了更强大的特征表示,在STR算法中应用了一些复杂的神经网络,例如ResNet [184] [135],[145],[148],[73],[151],[166],[152],[ 154],[48],[155],[157],[158],[161],[163],[164]和DenseNet [185],[150],[160]。 近来,已经进行了一些尝试以从不同的角度来改进特征表示模块。 Lee等人使用了递归CNN [134]为参数有效和有效的图像特征表示,它可以在相同的参数容量下增加传统CNN的深度,并产生更紧凑的特征响应。 Wang等人受递归卷积神经网络(RCNN)图像分类的启发[186]。 [139]通过引入控制RCNN中的上下文调制的门,设计了用于特征序列表示的延迟循环卷积层。 Liu等 [142]专注于实时STR,并提出了一种新颖的二进制卷积层。他们声称二进制表示显着加快了运行时推断并减少了内存使用。[150],[33],[159],[160] ],[165],[145]认为,由CNN直接处理源图像会引入额外的噪声。 因此,他们将CNN与注意力机制结合起来[98]来增强前景文本的表示并抑制背景噪声。

更深,更高级的特征提取器通常会产生更好的表示能力,这适合于改善具有复杂背景的STR。 然而,性能的提高是以存储器和计算消耗为代价的[158]。 背景去除技术[187]与简单特征提取器的组合可能是未来研究的替代方法。

序列建模阶段

序列建模作为视觉特征和预测之间的桥梁,可以在一系列字符中捕获上下文信息,以供下一阶段预测每个字符,这比独立处理每个符号更加稳定和有用。

多个双向长期短期记忆(BiLSTM) 模型是在[188]中引入的,并广泛用于[131],[116],[178],[135],[136],[139],[140],[141],[148],[150] ],[73],[72],[151],[154],[48],[157],[157],[158],[162],[166]作为序列建模模块,因为它具有捕获能力 远程依赖关系。 Litman等。 [169]在网络层增加了中间监督,并成功地训练了一个更深的BiLSTM模型来改善上下文依赖的编码。 但是,一些研究者[138],[145],[152],[160],[161]认为BiLSTM不是STR算法的必要组成部分。 他们认为,尽管BiLSTM有效地建模了上下文,但其结构在计算上非常耗时且费时。 此外,在训练过程中可能会导致梯度消失/爆炸。 因此,使用滑动窗口[138]或深一维CNN [145],[152],[160]代替BiLSTM。 最近,Yu等[170]引入了全局语义推理模块,以通过多路并行传输来捕获全局语义上下文。

上下文线索对于基于图像的序列识别是有益的。 尽管基于递归神经网络(RNN)[189]的结构(例如BiLSTM或LSTM)可以对字符序列进行建模,但存在一些固有的局限性。 与此相反,CNN或转换器[190]不仅可以有效地处理长序列,而且可以高效地并行化。由于CNN或转换器结构的固有优势,使用CNN或转换器结构对语言序列进行建模可能是一种新的趋势。

预测阶段

预测阶段的目的是从输入文本实例图像的识别特征中估计目标字符串序列。 连接主义的时间分类(CTC)[115]和注意力机制[98]是两种主要技术。 此外,本节还介绍了有关预测阶段的其他潜在想法。

连接主义时间分类

CTC由Graves等[115]提出用于训练RNN [191],[189]直接标记未分段的序列。CTC在许多领域都取得了重大进步,例如语音识别[192],[193]和在线手写文本识别[188],[ 194]。 CTC通常在STR中用作预测模块,即通过计算条件概率将CNN或RNN产生的输入特征转换为目标字符串序列的转录层。 特别地,CTC可以通过有效地汇总所有可能的输入-输出序列比对来最大化输出序列的可能性,并允许训练分类器而无需​​在输入序列和目标序列之间进行任何事先比对。

条件概率的表述可以简述如下。 输入特征用y =(y1,y2 ... yT)表示,其中Tis是序列长度。 Everyytis在L上的概率分布。 具体来说,L代表所有标签的集合,包括所有字符和代表无效输出的额外的空白符号。 长度为T的CTC路径序列,由空白符号和标签索引组成。 由于有许多可能的方式可以将这些路径映射到转录,因此定义了CTC映射功能以从每个路径中删除重复的标签并删除空白符号。 然后,通过将映射到  的所有路径的概率求和来计算条件概率:

其中,将π的概率定义为,而是在t时刻具有标签的概率。 间接地计算上述等式在计算上是昂贵的,大多数研究者[135],[116],[138]采用前向后退算法[188]来有效地计算它。

受CTC在语音处理方面的成功启发,Su等[131],He等[195]和Shi等[116]首先将其应用于STR。 从那时起,许多基于CTC的预测算法[135],[136],[138],[139],[150],[160],[161]已经显示出有希望的转录性能。 但是,Liu[146]认为CTC倾向于产生高度尖峰和过度自信的分布,这是过度拟合的症状。 为了解决这个问题,他们提出了一种基于最大条件熵增强和CTC探索能力的正则化方法。 [196]通过融合焦点损失来修改传统的CTC,以解决对极端不平衡样本的识别问题。 最近,Hu等[168]通过在STR中使用图卷积网络(GCN)[197]提高了CTC的准确性和鲁棒性。

CTC具有出色的转录性能和稳定性。 但是,它面临一些固有的局限性:i)CTC的基本方法很复杂,导致长文本序列的计算成本很高。ii)CTC遭受峰值分布问题[115],[198],并且其性能通常会降低。 重复的模式。 iii)CTC几乎不能应用于二维(2D)预测问题,例如不规则的场景文本识别,其中输入文本实例图像中的字符以空间结构分布。 为了解决这个问题,Wan等人。 [199]通过沿高度方向添加另一个尺寸来扩展香草CTC。 尽管认知性能有所提高,但提出的2D-CTC模型尚未完全解决2D预测问题。 因此,应用CTC解决二维预测问题可能是未来研究的潜在方向。

注意力机制

注意机制是由Bahdanau等[98]在神经机器翻译领域提出的,它可以自动搜索与给定源句的各个部分相关的预测词。 基于注意力机制的许多方法已经在各个领域取得了显着的进步,例如图像标题[210],文本识别[73]和遥感图像的场景文本分类[211]。

对于STR,注意机制通常与RNN结构结合在一起作为预测模块,特别是注意机制通过参考目标字符的历史和编码的特征向量来学习输入实例图像和输出文本序列之间的对齐方式。 令输出预测序列表示为o =(o1,o2 ... oM),其中Min表示最大解码步长。 在此步骤中,输出预测值由下式给出:

其中,是在t时刻RNN的隐藏状态。 通常,门控循环单元(GRU)[191]用于更新和模拟长期依赖性。 因此,的计算公式为:

其中,是前一个输出的嵌入向量。 此外,表示glimpse向量,通过计算特征h =(h1,h2 ... hN)的加权和得到

其中,N是特征长度。是注意力权重向量,计算方式如下:

其中,为对齐分数,表示高级特征表示与当前输出之间的相关程度。 在上面的等式2和6中,Wo,bo,Ws,Wh和b是所有可训练参数。

受神经机器翻译系统发展的启发,大量基于注意力的方法[134],[178],[137],[140],[73],[72],[154],[48] ],[33],[155],[158],[164]已经出现在STR领域。 此外,还从不同的角度进行了一些尝试来提高寻常的注意力:

i)应用于二维预测问题。对于不规则的场景文本识别,各种字符的放置大大增加了识别的难度。 寻常的注意[134]被应用于表示1D特征选择和解码。 通过直接施加普通注意力,在2D文本分发和1D特征表示之间存在显着冲突。 因此,Yang等[137],Li等[154]和Huang等[159]提出了用于不规则文本识别的2D注意机制。

ii)改进隐式语言模型的构建。 Chen等[151]和Wang等[148]认为,生成的glimpse vector的功能不足以表示预测的字符。 [151]将高阶字符语言模型引入了普通的注意力机制,而Wang等[148] 通过输入已经生成的部分字符序列和所有出席的对齐历史记录,构建了一个记忆增强的注意力模型。 Shi等[73]指出,基于普通注意力的预测模块仅在一个方向上捕获了输出依存关系,而在另一个方向上忽略了输出依存关系。 因此,他们提出了一种双向注意的双向解码器,该解码器具有相反的方向。

iii)改进并行化并降低了复杂度。尽管基于RNN结构的普通注意力机制可以捕获远距离依赖性,但计算量大且耗时。 在[163],[156],[149],[170]中广泛采用了一种最新的变体,即Transformer [190],以提高STR的并行度并降低其复杂性。

iv)解决注意力漂移。注意力漂移现象意味着注意力模型无法将每个特征向量与输入图像中的对应目标区域准确关联。 一些研究者通过将偏离的注意力重新集中到目标区域上来增加了解决该问题的信息,例如定位监督[71]和编码坐标[162]。 其他[157],[159],[163]以级联的方式提高了注意力的对齐精度。 具体来说,Wang等[166]认为严重的对齐问题是由其重复对齐机制引起的。 因此,他们将对齐操作与使用历史解码结果解耦。

近年来,基于注意力的预测方法已成为STR领域的主流方法,并且由于其专注于信息领域的能力而在解码方面优于CTC。 此外,注意方法可以轻松地扩展到复杂的2D预测问题。 但是,注意力机制存在一些缺点:i)由于此方法依赖于注意力模块进行标签对齐,因此需要更多的存储和计算量[212]。 ii)对于长文本序列,由于输入实例图像和输出文本序列之间没有对齐[213],即注意力漂移现象,很难从零开始训练注意力机制。 iii)当前对注意力机制的研究主要集中在仅涉及几个字符类别(例如,英语,法语)的语言上。 据我们所知,没有公开报道有效地应用注意力机制来处理诸如中文文本识别之类的大型类别文本识别任务。

讨论

CTC和注意机制都有其优势和局限性。 最近,一些研究者[168],[169]同时应用了CTC和注意力机制来实现准确的预测并保持快速的推理速度。 Cong等 [214]在大规模的现实世界场景文本句子识别任务中,综合比较了这两种预测方法。 基于广泛的实验,他们为研究人员和从业人员提供了实用的建议。 例如,与基于CTC的方法相比,基于注意力的方法在孤立的单词识别任务上可以实现更高的识别精度,但在句子识别任务上却表现较差。 因此,应根据不同的应用场景和约束条件选择正确的预测方法。 此外,在未来的工作中探索替代的预测策略也很有价值。 例如,设计了聚合交叉熵函数[215]来代替CTC和注意力机制。 它以更快的实施速度,减少的存储需求和便捷的使用实现了竞争性性能。

3.1.3 其他潜在方法

已经以不同的观点考虑和探索了其他方法。 Goel等人的动机是“整体大于部分之和”。 [130]通过将场景和合成图像特征与加权动态时间规整(wDTW)方法进行匹配来识别自然场景中的文本。 后来,阿尔玛兹等人。 [117]和Rodriguez等人[118] 将识别和检索的任务解释为最近的邻居问题。 他们将标签图像嵌入和属性学习结合在一起,将单词图像和文本字符串都嵌入到一个公共的向量子空间或欧氏空间中。 具体来说,代表相同单词的图像和字符串将靠近在一起。 最近,Jaderberget等。 [132]将STR列为多类分类问题。 他们仅根据合成数据训练了一个深层的CNN分类器:来自90个单词词典的大约900万张图像。 由于每个单词都对应一个输出神经元,因此建议的文本分类器无法识别字典外单词。 此外,他们将CNN与CRFgraphical模型相结合以实现不受约束的文本识别[133]。

3.2端到端网络

给定具有复杂背景的文本图像作为输入,端到端系统旨在将所有文本区域直接转换为字符串序列。 通常,它包括文本检测,文本识别和后处理。 过去,文本检测和识别已被解释为两个独立的子问题,这些子问题结合起来可以从图像[68],[15],[53],[216],[217],[75], [132],[200],[201]。最近,实时,高效的端到端系统的构建已成为社区中的新趋势。表2比较了这些端到端方法的特征。

有几个因素促进了端到端系统的出现:i)错误可能以文本检测和识别的级联方式累积,这可能导致很大一部分垃圾预测,而端到端系统可以防止错误的产生以及在训练过程中积累。 ii)在端到端系统中,文本检测和识别可以共享信息,并且可以共同优化以提高总体性能。 iii)端到端系统更易于维护和适应新的领域,而维护具有数据和模型相关性的级联管道需要大量的工程工作。 iv)端到端系统具有竞争优势,具有更快的推理速度和较小的存储需求。

最近的许多研究[76]显示了联合优化的端到端模型的有效性,该模型通常包括检测分支和识别分支。 Bartz等[218] 集成并共同学习了一个STN [177]以检测图像的文本区域。 相应的图像区域被直接裁剪并馈入一个简单的神经网络以识别文本内容。 然后使用高级的检测和识别算法来构建联合的端到端系统。 两个分支都通过裁剪检测分支的兴趣区域(RoIs)特征并将其馈送到识别分支来桥接。 通常,Girshick [219]提出了RoIPool,将不同比例和长宽比的RoI转换为固定大小的特征图,以进行物体检测。 但是,由于文本长度的较大变化,此方法可能导致明显的失真。 为了解决这个问题,Li等[74]提出了可变大小的RoIPool,以适应原始的宽高比。由于RoIPool进行的量化会导致RoIs与提取的特征之间出现失准,因此许多方法都使用双线性插值来提取文本实例特征,例如双线性采样[76],RoIRotate [ 203],以及文本对齐层[77]。 最近的端到端系统[202],[165],[206],[208],[209]集中于任意形状的弯曲文本。 例如,Liao等[202] 他们的扩展工作[165]使用RoIAlign [220]来保存更准确的位置信息,将每个字符检索为通用对象,并使用字符级注释组成最终文本。 Feng等[206]生成密集的检测四边形,并使用提出的RoIS-lide将从每个四边形裁剪的特征转换为已校正的特征。 然后将所有文本功能输入到基于CTC的识别器中,使框架摆脱字符级注释。 Wang等[208]没有将文字检测分支公式化为边界框提取或实例分割任务,而在边界上定位了一组点,并采用了TPS [179]变换来使每个文本的特征扁平化。Qiao等[209]提出了形状转换模块,该模块迭代生成潜在的基准点,并使用TPS将检测到的文本区域转换为没有额外参数的规则形态。 Liu等[78]引入参数化的贝塞尔曲线以适应任意形状的文本,并设计了新颖的BezierAlign层以精确计算弯曲形状的文本实例的卷积特征。上述双线性插值方法的目的是将不规则形状的特征校正为文本的轴对齐特征识别器,其中差异是生成采样网格的方式。 然而,Qin等[207]认为,特征校正是推广到不规则形状文本的关键瓶颈。 他们引入了RoI遮罩以滤除邻近的文本和背景,从而使识别器无需进行纠正。Xing等[205]在没有任何RoI操作的情况下直接对全部功能执行字符检测和识别。

尽管当前的端到端系统在许多实际场景中都能很好地工作,但它们存在局限性。应考虑以下困难:i)如何有效地桥接并在文本检测和识别之间共享信息? ii)如何在文本检测和识别之间学习难度和收敛速度的显着差异之间取得平衡? iii)如何改善联合优化? 此外,尚未开发出一种简单,紧凑且功能强大的端到端系统。

4.评估和协议

#待补充

5.讨论和未来方向

文本在人类生活中发挥了重要作用。 在自然场景中自动阅读文本具有很大的实用价值。 因此,场景文本识别已经成为计算机视觉和模式识别领域一个重要而活跃的研究领域。 本文总结了与场景文本识别相关的基本问题和最新技术,介绍了新的见解和想法,并对公共可用资源进行了全面回顾。 在过去的几十年中,识别方法的创新,实用性和效率有了实质性的进步。 但是,还有大量的空间可用于将来的研究:

•泛化能力。泛化能力是指识别算法在各种输入和应用程序中有效的能力。 大多数应用程序应适应各种输入,例如大小,形状和字体样式。 此外,识别算法应该对环境干扰不敏感,并且能够处理现实世界中的复杂性。

•评估协议。近年来提出的许多方法都声称已推动了该技术的发展。 但是,数据集,先验条件和测试环境的不一致性使得很难公平地比较报告值的票面价值。 社区中需要进行公平的比较。

•数据问题。大多数深度学习算法高度依赖于足够数量的高质量数据。一方面,合成现实数据可用于训练需要数据的算法,它具有潜在的优势。另一方面,使用未标记的真实世界数据的方法在将来值得考虑。 随着许多现实数据集的出现,我们应该重新考虑是否统一训练数据集是训练模型的唯一选择,然后再用现实数据集进行评估。(这种策略在当前的大多数研究中被广泛采用。)

•场景。该研究旨在提高人的素质 生活。 但是,对于STR,研究和应用之间仍然存在差距(例如,背景更加复杂,现实世界中的噪音更多)。 因此,研究人员和从业人员不应局限于几个标准基准。 现实世界中的镜头可能会在将来提供新的研究机会。

•图像预处理。为提高算法的识别性能,日益复杂的识别器已成为社区的新趋势。但是,这不是值得考虑的唯一观点。 一些潜在的图像预处理问题值得研究人员关注,例如TextSR [175]和背景去除[89],它们可以从新的角度极大地减少STR的难度并提高性能。

•端到端系统。 实时,高效的端到端系统吸引了研究人员和从业人员的兴趣。 但是,端到端系统的性能与OCR在扫描文档中的性能相比仍然远远落后。简单,紧凑但功能强大的端到端系统可能是一个新趋势。 此外,值得考虑的是,工业应用是否需要端到端解决方案。

•语言。多种文化的代表在现代城市中生活和交流。 多语言文本识别对于人类交流以及智慧城市发展至关重要。 尽管存在许多识别算法,但大多数识别算法仅针对拉丁文字。 尚未广泛研究非拉丁语的识别,例如中文场景文本,它是大型类别文本,与拉丁语文本相比具有独特的特征。

•安全性。因为STR算法可以适应许多基于视觉的私有场景(例如银行卡,ID卡和驾驶执照),识别方法的安全性非常重要。 尽管具有高性能,但大多数基于深度学习的文本识别器还是很容易受到对抗示例的攻击。增强STR算法的安全性将是未来的潜在方向。

•STR +NLP。NLP是人机通信的桥梁。 同时,文本是世界上沟通和感知的最重要载体。 NLP和STR的组合可能是各个领域的重要趋势,例如文本VQA [109],[238],文档理解[106]和信息提取[108],[107]。

【综述】【场景文字识别】Text Recognition in the Wild: A Survey相关推荐

  1. 论文翻译-Text Recognition in the Wild: A Survey

    论文翻译-Text Recognition in the Wild: A Survey 原文地址:https://arxiv.org/pdf/2005.03492v3.pdf 参考翻译:https:/ ...

  2. OCR之端到端任意形状的场景文字识别 ICCV2019 End-to-End Text Spotting

    OCR之端到端任意形状的场景文字识别 ICCV2019 End-to-End Text Spotting 端到端文本识别(End-to-End Text Spotting)是将文本阅读问题看成一个整体 ...

  3. php 点对点,浅析点对点(End-to-End)的场景文字识别

    一.背景 随着智能手机的广泛普及和移动互联网的迅速发展,通过手机等移动终端的摄像头获取.检索和分享资讯已经逐步成为一种生活方式.基于摄像头的(Camera-based)的应用更加强调对拍摄场景的理解. ...

  4. 史上最全场景文字识别资源汇集(56篇重要论文 + 20 个开源代码 + 330 个实验结果 + 1882个统计信息)...

    点击上方"AI算法与图像处理",选择加"星标"或"置顶" 重磅干货,第一时间送达 作者:刘崇宇 转载自:CSIG文档图像分析与识别专委会 本 ...

  5. CVPR 2020 | 旷视研究院探究优化场景文字识别的「词汇依赖」问题

    IEEE国际计算机视觉与模式识别会议 CVPR 2020 (IEEE Conference on Computer Vision and Pattern Recognition) 大会官方论文结果公布 ...

  6. YunOS场景文字识别

    摘要: 该文章先介绍常见的文字识别方法,然后介绍YunOS在场景文字识别方面取得的进展.结果和技术方案.将重点讲解技术方案的两个主要部分:1)基于全卷积网络的从局部到整体的文字行检测方法:2)基于BL ...

  7. 基于深度学习的自然场景文字识别

    声明:本文来源,详细内容请参考原博文https://blog.csdn.net/xiaofei0801/article/details/72778223 1.1引言 传统光学字符识别主要面向高质量的文 ...

  8. 场景文字识别的算法创新与应用,来自百度的技术前沿

    点击我爱计算机视觉标星,更快获取CVML新技术 几天前,52CV曾经向大家推荐百度家 OCR主题的飞桨博士会: 飞桨博士会第四期,中国深度学习技术俱乐部诚邀您加入 百度组织的这个会比较高端,很多52C ...

  9. OpenVINO™场景文字识别与同步与异步推理

    场景文字检测与识别模型 OpenVINO2021.4支持场景文字检测是基于MobileNetV2的PixelLink模型,模型有两个分别是text-detection-0003与text-detect ...

最新文章

  1. C++ 输入字符串和string 类型总结
  2. Linux:网络编程
  3. java垃圾回收之循环引用
  4. 线性代数之矩阵偏导续
  5. flutter 页面加载动画_Flutter撸一个加载动画
  6. 谈谈JAVA工程狮面试中经常遇到的面试题目------什么是MVC设计模式
  7. 重造车轮—基于JQ的商品展示放大镜
  8. php学到什么程度可以学thinkphp,thinkphp学习一
  9. c语言编程流水灯与交通灯实验,51单片机c语言交灯设计报告.doc
  10. 销毁session的三种方式
  11. 缠论中枢python源码_缠论中枢主图指标 源码 通达信 贴图 自动画笔
  12. ES3、ES5、ES6继承
  13. 倾向得分匹配PSM案例分析
  14. 有赞搜索系统的技术内幕
  15. 一文了解AAAI国际会议–附: 各年论文连接
  16. Knockout+RequireJS+Sammy搭建简单的SPA脚手架
  17. CS5218 DP转HDMI 4K30HZ转换方案|DP++to HDMI(4k30)
  18. Swagger3.0官方starter诞生,可以扔掉那些野生starter了
  19. 【百度地图循环标记多个点,点击显示对应详情】
  20. 井号法(#)创建二叉树(利用前序遍历来建树)C++实现

热门文章

  1. Edittext android:inputType 输入的限制
  2. 教妹学Java(十三):if-else 语句详解
  3. 基于神经网络的天气质量指数预测
  4. 在Latex使用條列式清單itemize , enumerate , description [转]
  5. Latex修改itemize间距
  6. itemize 与enumerate 对某段文字加特别关注的标点
  7. android通过听筒播放声音,Android 听筒播放模式实现代码
  8. centos虚拟机设置禁止休眠
  9. C# StringBuilder 的使用
  10. OSPF 网络类型和LSA限制