热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

《ASTER:AnAttentionalSceneTextRecognizerwithFlexibleRectification》论文阅读笔记

ASTER:AnAttentionalSceneTextRecognizerwithFlexibleRectification重点在于实验部分,看看人家围绕创新点都是怎么样做实验的




ASTER: An Attentional Scene Text Recognizer with Flexible Rectification

重点在于实验部分,看看人家围绕创新点都是怎么样做实验的。


文章目录


  • ASTER: An Attentional Scene Text Recognizer with Flexible Rectification
  • Abstract
  • 1. Introduction
  • 2. RELATED WORK
    • 2.1
    • 2.2 文本校正
    • 2.3 文字检测和端到端识别

  • 3. Model
    • 3.2 识别网络

  • 4 Experiments
    • 4.1 实验设置
      • 4.1.1 数据集
      • 4.1.2 文本校正网络
      • 4.1.3 文本识别网络
      • 4.1.4 优化器
      • 4.1.5 实现细节

    • 4.2 文本校正实验
      • 4.2.1 校正效果
      • 4.2.2 对与初始化权重的敏感性

    • 4.3 文本识别实验
      • 4.3.1 注意力分析
      • 4.3.2 双向解码器
      • 4.3.3 准确度和字长的关系

    • 4.4 与现有的技术比较

  • 5 END-TO-END RECOGNITION
  • 6 Conclustion
  • 参考




Abstract

目的: 处理扭曲或不规则布局的文本(如自然场景中的透视文本和弯曲文本,很难识别)提出了ASTER模型,一个端到端的神经网络模型,包括一个校正网络和一个识别网络。


  • 校正网络: 自适应的将输入图像转换成新图像,校正其中的文本。它由a flexible Thin-Plate Spline transformation 所驱动,在没有去人工注释的情况下去训练各种不规则性的文本。
  • 识别网络: an attentional sequence-to-sequence model,能够直接从校正后的图像中预测字符序列。

通过大量的实验,验证了校正的有效性,并展示了ASTER的SOTA识别性能,并证明ASTER是在端到端的识别模型中一个强大组件。

Q1:怎样通过实验来证明其校正有效性以及识别性能的?


1. Introduction

介绍了使用卷积神经网络(CNN)通过字符识别文本的方法,使用CNN对单词进行分类的方法[24],[26],以及使用CNN和递归神经网络的组合来识别字符序列的方法(RNN) [54]。但是没有解决不规则的文本的问题,不规则文本指的是:非水平和正面、具有弯曲布局等的文本。
提出了ASTER,它是具有灵活校正的注意力场景文本识别器,用于场景文本识别。ASTER通过清晰的纠正机制来解决不规则文本问题。
创新点:


  1. 通过校正网络来实现文本校正,这个变换是: parameterized Thin-Plate Spline (TPS),一种 灵活的变换,可以处理各种文本不规则性。该机制在没有额外注释的情况下显著提高了识别性能。
  2. 识别网络通过以an attentional sequence-tosequence 的方式从校正后的图像预测字符序列。并且将传统的单向解码器扩展为双向解码器。双向解码器由两个解码方向相反的解码器组成。它合并了两个解码器的输出,利用了两个方向的依赖性。
  3. 提出了一种利用ASTER的文本校正和识别能力来增强文本检测器的方法。

2. RELATED WORK

2.1

在这里插入图片描述

我们的方法属于结构化学习的范畴。它基于注意序列对序列的学习模型[3],[13]。这种模型学习从输入序列中预测输出序列,最初被提出用于机器翻译和语音识别任务。这篇论文的会议版[55]是第一个,与[36]并行,在场景文本识别任务中探索这样的模型。这项工作进一步扩展了双向解码器[55]。


2.2 文本校正

场景文本通常以单个单词的形式被识别,现在的方法不是很适用,作者的方法在概念上更简单,因为它不需要显式的字符检测。此外,与[64]和[11]相比,我们的方法不需要额外的字符级注释。


2.3 文字检测和端到端识别


  • TextBoxes应用SSD检测器来对文本进行检测
  • EAST使用FCN全卷积神经网络对字符进行分割检测
  • Deep TextSpotter 将基于FCN的检测器和基于CTC的识别器结合成一个端到端的可训练框架。
  • [63] [27]首先生成文本建议,然后用独立的单词识别模型进行识别。

虽然本文的重点是文本识别,但我们表明ASTER有助于实现最先进的端到端性能,即使没有最强的检测器。此外,我们还证明了ASTER可以通过其整流机制增强探测器。这些特性使ASTER成为端到端识别系统中一个有吸引力的识别器。


3. Model

该模型由文本校正网络和文本识别网络两部分组成。在接下来的章节中,我们首先分别描述第3.1节和第3.2节中的两个部分。然后,我们在第3.3节中描述了培训策略。


3.2 识别网络

只使用图像和它们的基本文本注释进行训练,这个模型的核心是CTC算法。CTC提供了一个对水平字符位置和间距不敏感的可微分损失函数,实现了端到端的可训练序列识别。尽管CTC很有效,但它没有一种机制来模拟其输出字符之间的依赖关系。因此,,[54]依赖于外部语言模型,如词典,将语言优先纳入其识别。我们使用双向解码器扩展的序列到序列模型来解决识别问题。由于序列到序列模型的输出是由RNN生成的,它捕获了字符相关性,因此将语言模型(language modeling)纳入了识别过程。此外,双向解码器捕捉两个方向上的字符相关性,利用更丰富的上下文并提高性能。


4 Experiments

用大量的实验来证明作者模型的每个部分的有效性,并将其性能与其他最先进的方法进行比较在本节中,我们从第4.1节中的实验设置开始。然后,我们在第4.2节和第4.3节中进行了一些消融研究,每个研究都针对一个模型零件,以证明其有效性并分析其行为。最后,在第4.4节中,我们评估了公共数据集上的ASTER,并将其与其他最先进的方法进行了比较。


4.1 实验设置


4.1.1 数据集

该模型在两个合成数据集上进行训练,而不需要在其他数据集上进行微调。该模型在5个标准数据集上进行了测试,以评估其总体识别性能。此外,我们在两个特殊的不规则文本数据集上测试了该模型,以验证其校正能力。按照标准,我们使用不区分大小写的单词准确度来评估识别性能。
Synth90k是[24]中提出的合成文本数据集。该数据集包含900万张由一组90k个常用英语单词生成的图像。文字通过随机变换和效果呈现在自然图像上。Synth90k中的每个图像都用一个基本事实词进行注释。该数据集中的所有图像都是为训练而拍摄的。
SynthText是在[19]中提出的合成文本数据集。生成过程与[24]相似。但与[24]不同的是,SynthText是针对文本检测的。因此,文字被渲染到完整的图像上。我们使用基本单词边界框来裁剪单词。
IIIT5k-word(IIIT5k)[44]包含从网络上收集的3000张测试图像。每个图像都与一个50字的短词典和一个1000字的长词典相关联。词典由基本词汇和其他随机词汇组成。
==‘街景T ext (SVT) ==[60]收集自谷歌街景。该测试集包含647张裁剪单词的图片。SVT中的许多图像被噪声、模糊和低分辨率严重破坏。每个图像都与一个50个单词的词典相关联。
ICDAR 2003 (IC03) [42]包含860张过滤后的裁剪词图像。在[60]之后,我们丢弃包含非字母数字字符或少于三个字符的单词。每个图像都有一个在[60]中定义的50个单词的词典。
ICDAR 2013 (IC13) [32]继承了IC03的大部分图像,并通过新图像对其进行了扩展。通过删除包含非字母数字字符的单词来过滤数据集。数据集包含1015幅图像。没有提供词典。
ICDAR 2015 Incidental Text(IC15)是ICDAR 2015 Robust Reading大赛的挑战4[31]。这项挑战以附带的文本图像为特色,这些图像是由一副谷歌眼镜在没有仔细定位和聚焦的情况下拍摄的。因此,数据集包含大量不规则文本。测试图像是通过使用基本单词边界框裁剪单词获得的。
SVT-Perspective (SVTP) 被提出用于评估识别透视文本的性能。SVTP的图像是从谷歌街景的侧视图像中挑选出来的。其中许多被非正面视角严重扭曲。该数据集由639幅用于测试的裁剪图像组成,每幅图像都有一个从支持向量机数据集继承而来的50个单词的词典。
CUTE80 (CUTE) 数据集侧重于弯曲文本。它包含80幅在自然场景中拍摄的高分辨率图像。CUTE80最初是为探测任务而提出的。我们裁剪注释过的单词,得到一个包含288张图片的测试集。没有提供词典。


4.1.2 文本校正网络

图像在进入校正网络之前被调整到64 × 256。我们使用大的输入尺寸,以便在校正采样之前保留高分辨率。采样器输出大小为32 × 100的图像,这也是识别网络的输入大小。定位网络对下采样到32×64的输入图像起作用。它由6个卷积层组成,核大小为3 × 3。前5层中的每一层后面都有一个2 × 2最大池层。输出滤波器的数量分别为32、64、128、256、256和256。卷积层后面是两个完全连接的层。它们的输出单元数量分别为512个和2K个,其中K为控制点数量。在整个实验过程中,我们将K设置为20。K的其他值导致类似的结果。


4.1.3 文本识别网络

识别网络,使用45层残差网络作为卷积特征提取器。每个残差单元由1 × 1卷积和3 × 3卷积组成,最近的工作[23]表明了这种方案的效率。在前两个残差块中,通过2 × 2步卷积对特征图进行下采样。在第四个和第五个剩余块中,步幅变为2×1。为了区分相邻字符,2 × 1下采样步幅沿水平轴保留了更高的分辨率。

剩余网络之后是两层双向LSTM。每一层由一对具有256个隐藏单元的LSTMs组成。在进入下一层之前,LSTMs的输出被连接并线性投影到256维。

解码器是 attentional LSTMs。注意单位和隐藏单位的数量都是256。解码器可识别94个字符类别,包括数字、大写和小写字母以及32个ASCII标点符号

当评估不区分大小写且忽略标点符号时,我们将解码器输出标准化为小写,并移除所有预测的标点符号。

在这里插入图片描述


4.1.4 优化器

模型是从头开始训练的。我们采用ADADELTA [69]作为优化器。带有动量的更简单的SGD优化器也将成功地训练模型,但精度稍低。该模型由64个例子分批训练,迭代100万次。每一批都是由32个来自Synth90k的例子和另外32个来自SynthText的例子构成的。以这种方式训练的模型明显优于仅在Synth90k上训练的模型(例如[54],[55])。学习速率最初设置为1.0,在步骤0.6M和0.8M分别衰减为0.1和0.01。虽然ADADELTA中的学习速率是自适应的,但是我们发现经典的学习速率调度对性能是有益的。


4.1.5 实现细节

我们使用TensorFlow实现了所提出的模型[1]。该型号在一个12GB内存的NVIDIA TITAN Xp显卡上训练。训练速度约为6.5次迭代/秒,用时不到2天即可达到收敛。当测试批量为1时,每幅图像的推理速度为20毫秒。这种速度可以通过更大的批量来提高


4.2 文本校正实验

我们研究文本校正网络的两个方面。首先,我们从定量和定性两个方面研究文本校正的效果。其次,对于定位网络,我们研究了它对权重初始化的敏感性。


4.2.1 校正效果

为了分析校正的效果,我们研究了所提出模型的两个变体。
第一种变型仅由识别网络组成,不执行校正。为了避免其他模型部分的影响,我们还将双向解码器改为单向解码器。
第二种变体是第一种加上校正网络。两种变体都是从头开始训练的,使用第4.1节中描述的相同训练设置。在六个测试数据集上评估了它们的性能,即IIIT5k、SVT、IC03、IC13、SVTP和CUTE。
表2列出了两种变体的结果。可以看出,校正后的模型在所有数据集上都优于未校正的模型,尤其是在SVTP (+4.7%)和CUTE (+3.1%)数据集上。由于这两个数据集都由不规则文本组成,因此校正显示出显著的效果。
在这里插入图片描述
通过构建一系列不规则性水平递增的数据集。(不同的比例混合SVTP+CUTE和IIIT5k来实现的。所有数据集有933个例子。)图9绘制了校正改进(有矩形框和无矩形框的精度差异)对比部分不规则文本。可以看出,校正效果随着不规则程度单调增加,显现出了对不规则文本的校正效果。
在这里插入图片描述
为了进行定性比较,表4显示了来自CUTE80和SVTPerspective的一些示例的校正结果。即使没有对控制点位置的直接监督,校正网络也学会将控制点放置在文本的上下边缘附近。这些点以均匀的间距排列在平滑的曲线上,在校正后的图像中几乎没有失真或伪影。
在这里插入图片描述


4.2.2 对与初始化权重的敏感性

正确的权重初始化是训练校正网络顺利进行的必要条件。如第3.3节所述,我们用零权重和特定值的偏差初始化最后一个完全连接的层。我们将这个初始化方案命名为identity
为了演示权重初始化的效果,图10将identity与另一个称为random的初始化方案进行了比较,其中所有模型层都是随机初始化的。可以看出,identity导致更快的收敛和更稳定的训练过程。同时,一个随机初始化的模型仍然可以通过更多的训练迭代训练成功,最终达到非常接近identity的精度。我们观察到,一个随机初始化的模型最初会产生垃圾校正的图像,但在几千次训练迭代后会恢复正常。


  • 不同模型初始化方案下的单词准确度(左)和训练损失(右)。
    在这里插入图片描述
    在[55]中,一些精心设计的权重初始化方案是成功训练模型所必需的。随机初始化训练完全失败。相比之下,本文的模型对权重初始化不太敏感。即使随机初始化,也能成功训练。

4.3 文本识别实验

在这一部分,我们研究了文本识别网络的几个关键方面,包括它的注意机制、双向解码器以及识别性能与字长的关系。


4.3.1 注意力分析

注意机制在识别网络中起着核心作用。根据等式5,局部特征被加权组合以识别字符。这表明注意机制执行隐含的字符检测。
在这里插入图片描述
为了理解解码器的行为,我们提取了注意权重,即等式5中的αt,并在图11所示的几个示例中对其进行可视化。在每张图片上,一个注意力权重矩阵在2D图上被可视化。图的第t行对应于第t解码步骤的注意力权重。除了非常短的单词,我们可以观察到注意力权重和字符之间的清晰对齐。这展示了由识别网络执行的隐式字符检测。


4.3.2 双向解码器

为了评估双向解码器的有效性,我们创建了三个模型变量,即L2R,它以从左到右的顺序识别文本;R2L,按照从右到左的顺序识别文本;Bidirectional,双向解码器。这些变体也是使用第4.1节中描述的相同训练设置从头开始训练的。表5比较了它们的识别精度。

在这里插入图片描述
总的来说,L2R和R2L具有相似的精度。L2R在IIIT5k、IC03和SVTP方面表现出色,而R2L在其他方面表现出色。这表明这两种变体可能倾向于不同的数据分布。同时,双向在所有数据集上都优于两种变体,只有一个例外,双向等于更好的变体。特别是在支持向量机上,双向解码器的性能分别优于其他两种变体2.8%和1.6%,验证了双向解码器的有效性。


4.3.3 准确度和字长的关系

识别网络将固定大小的图像作为输入。虽然将图像大小调整到固定大小不可避免地会导致图像失真,但我们认为它对性能的影响很小。主要原因是失真同样影响训练和测试数据。因此,我们的模型被训练来处理拉长和压缩的例子。


  • 识别精度与字长的关系(在IIIT5k上测试)
    在这里插入图片描述
    图12显示了识别精度和字长之间的关系。可以看出,对于长度等于或小于11的单词,识别精度相当均匀。超过这个长度,观察到精度下降。然而,这在一定程度上是因为在全词准确性的衡量下,长词天生更难正确预测。我们也尝试过用比例调整大小加上填充来代替固定大小的调整大小,但是在大多数情况下,它会导致更差的性能。

4.4 与现有的技术比较

最后,我们比较了我们的模型和其他最先进的模型的性能。一些数据集提供用于约束识别输出的词汇。当给定一个词典时,我们只需在编辑距离的度量下用最近的词典词替换预测词。


  • 识别结果比较。“50”、“1k”、“Full”都是词汇。“0”表示没有词典。*本文的会议版本。“90k”和“ST”分别是Synth90k和SynthText数据集。“ST+”表示包括字符级注释。“Private”指私人训练数据。

在这里插入图片描述


5 END-TO-END RECOGNITION
6 Conclustion

针对不规则文本识别问题,提出了一种基于STN框架和TPS变换的显式校正机制。生成的文本识别器称为ASTER,在裁剪文本识别和端到端识别任务上表现出卓越的性能。
此外,由于其校正机制,ASTER在增强文本检测器方面显示出额外的优点,甚至能够对为水平文本设计的检测器进行定向文本检测。在这项工作中,端到端的文本识别是以两阶段的方式进行的,这意味着检测是在另一个网络中使用单独的特征进行的。正如我们所展示的,ASTER执行隐式文本检测。但是这种检测能力仅限于目标文本附近的小范围。将这个范围扩展到整个图像将产生一个单阶段、端到端的识别系统,并且是一个值得进一步研究的方向。


参考

博客1



推荐阅读
  • CSS3选择器的使用方法详解,提高Web开发效率和精准度
    本文详细介绍了CSS3新增的选择器方法,包括属性选择器的使用。通过CSS3选择器,可以提高Web开发的效率和精准度,使得查找元素更加方便和快捷。同时,本文还对属性选择器的各种用法进行了详细解释,并给出了相应的代码示例。通过学习本文,读者可以更好地掌握CSS3选择器的使用方法,提升自己的Web开发能力。 ... [详细]
  • 生成式对抗网络模型综述摘要生成式对抗网络模型(GAN)是基于深度学习的一种强大的生成模型,可以应用于计算机视觉、自然语言处理、半监督学习等重要领域。生成式对抗网络 ... [详细]
  • 在Android开发中,使用Picasso库可以实现对网络图片的等比例缩放。本文介绍了使用Picasso库进行图片缩放的方法,并提供了具体的代码实现。通过获取图片的宽高,计算目标宽度和高度,并创建新图实现等比例缩放。 ... [详细]
  • XML介绍与使用的概述及标签规则
    本文介绍了XML的基本概念和用途,包括XML的可扩展性和标签的自定义特性。同时还详细解释了XML标签的规则,包括标签的尖括号和合法标识符的组成,标签必须成对出现的原则以及特殊标签的使用方法。通过本文的阅读,读者可以对XML的基本知识有一个全面的了解。 ... [详细]
  • 本文整理了常用的CSS属性及用法,包括背景属性、边框属性、尺寸属性、可伸缩框属性、字体属性和文本属性等,方便开发者查阅和使用。 ... [详细]
  • 向QTextEdit拖放文件的方法及实现步骤
    本文介绍了在使用QTextEdit时如何实现拖放文件的功能,包括相关的方法和实现步骤。通过重写dragEnterEvent和dropEvent函数,并结合QMimeData和QUrl等类,可以轻松实现向QTextEdit拖放文件的功能。详细的代码实现和说明可以参考本文提供的示例代码。 ... [详细]
  • Linux重启网络命令实例及关机和重启示例教程
    本文介绍了Linux系统中重启网络命令的实例,以及使用不同方式关机和重启系统的示例教程。包括使用图形界面和控制台访问系统的方法,以及使用shutdown命令进行系统关机和重启的句法和用法。 ... [详细]
  • HTML学习02 图像标签的使用和属性
    本文介绍了HTML中图像标签的使用和属性,包括定义图像、定义图像地图、使用源属性和替换文本属性。同时提供了相关实例和注意事项,帮助读者更好地理解和应用图像标签。 ... [详细]
  • Java学习笔记之面向对象编程(OOP)
    本文介绍了Java学习笔记中的面向对象编程(OOP)内容,包括OOP的三大特性(封装、继承、多态)和五大原则(单一职责原则、开放封闭原则、里式替换原则、依赖倒置原则)。通过学习OOP,可以提高代码复用性、拓展性和安全性。 ... [详细]
  • Html5-Canvas实现简易的抽奖转盘效果
    本文介绍了如何使用Html5和Canvas标签来实现简易的抽奖转盘效果,同时使用了jQueryRotate.js旋转插件。文章中给出了主要的html和css代码,并展示了实现的基本效果。 ... [详细]
  • 浏览器中的异常检测算法及其在深度学习中的应用
    本文介绍了在浏览器中进行异常检测的算法,包括统计学方法和机器学习方法,并探讨了异常检测在深度学习中的应用。异常检测在金融领域的信用卡欺诈、企业安全领域的非法入侵、IT运维中的设备维护时间点预测等方面具有广泛的应用。通过使用TensorFlow.js进行异常检测,可以实现对单变量和多变量异常的检测。统计学方法通过估计数据的分布概率来计算数据点的异常概率,而机器学习方法则通过训练数据来建立异常检测模型。 ... [详细]
  • 本文介绍了响应式页面的概念和实现方式,包括针对不同终端制作特定页面和制作一个页面适应不同终端的显示。分析了两种实现方式的优缺点,提出了选择方案的建议。同时,对于响应式页面的需求和背景进行了讨论,解释了为什么需要响应式页面。 ... [详细]
  • 本文介绍了一道经典的状态压缩题目——关灯问题2,并提供了解决该问题的算法思路。通过使用二进制表示灯的状态,并枚举所有可能的状态,可以求解出最少按按钮的次数,从而将所有灯关掉。本文还对状压和位运算进行了解释,并指出了该方法的适用性和局限性。 ... [详细]
  • 本文介绍了如何使用MATLAB调用摄像头进行人脸检测和识别。首先需要安装扩展工具,并下载安装OS Generic Video Interface。然后使用MATLAB的机器视觉工具箱中的VJ算法进行人脸检测,可以直接调用CascadeObjectDetector函数进行检测。同时还介绍了如何调用摄像头进行人脸识别,并对每一帧图像进行识别。最后,给出了一些相关的参考资料和实例。 ... [详细]
  • 本文整理了Java中org.apache.solr.common.SolrDocument.setField()方法的一些代码示例,展示了SolrDocum ... [详细]
author-avatar
瘦瘦的胖菇凉
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有