论文翻译-A holistic representation guided attention network for scene text recognition

本文主要是介绍论文翻译-A holistic representation guided attention network for scene text recognition,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

论文翻译-A holistic representation guided attention network for scene text recognition

  • 原文地址:https://arxiv.org/pdf/1904.01375.pdf
  • 【推荐】相关阅读资料下载:
    链接:https://pan.baidu.com/s/13SM-GiLwuuNMtuUVMSEkXw
    提取码:8j8n
  • 【注】:翻译仅供参考,准确含义和表达参考英文原文

用于场景文本识别的整体表征引导的注意网络

摘要

尽管最近取得了一些进展,但阅读自然图像中任意形状的不规则场景文本仍然是一个具有挑战性的问题。许多现有的方法采用复杂的网络结构来处理各种形状,使用额外的注释来加强监督,或者采用难以训练的递归神经网络来进行序列建模。在这项工作中,我们提出了一种简单而强大的场景文本识别方法。在不需要将输入图像转换为序列表示的情况下,我们直接将二维CNN特征与基于注意力的序列解码器相连,该解码器由整体表示引导。整体表征可以引导基于注意力的解码器专注于更准确的区域。由于没有采用递归模块,我们的模型可以进行并行训练。与RNN同行相比,它实现了1.5倍到9.4倍的后向传递速度和1.3倍到7.9倍的前向传递速度。所提出的模型只用词级注释进行训练。通过这种简单的设计,我们的方法在被评估的规则和不规则场景文本基准数据集上实现了最先进或有竞争力的识别性能。
关键词:整体表征 卷积-注意力 转化器 场景文本识别

1.绪论

自然场景图像中的文字包含丰富的语义信息,在许多情况下对视觉理解和推理至关重要。文字阅读已被整合到各种视觉任务中,如细粒度的图像分类[1, 2, 3]、图像检索[1, 4]和视觉问题回答[5, 6]。
如图1(a)所示,识别几乎是直线的规则文本可以被视为一个序列-序列问题,并由注意力递归神经网络(RNN)框架解决。与常规文本识别相比,对机器来说,识别任意形状的不规则文本要具有更大的挑战性。现有的不规则文本识别方法可以大致分为四种类型,即形状矫正、多方向编码、字符检测和基于二维注意力的方法,分别如图1(b)、(c)、(d)、(e)所示。基于形状矫正的方法[7]首先将不规则文本近似地矫正为规则文本,然后应用规则文本识别器。然而,严重扭曲或弯曲的形状是很难被矫正的。Cheng等人[8]提出了一种复杂的四方向编码方法来识别任意方向的文本,然而,这引入了冗余的表示。基于字符检测的方法[9]首先检测和识别单个字符,然后用单独的后处理方法将它们连接起来,这本身就需要字符级的注释,而且不能进行端到端的训练。基于二维注意力的方法在解码过程中学习注意二维空间中的单个字符特征,这可以通过单词级[10]或字符级注释[11]进行训练。
在这里插入图片描述

图1:典型的架构和我们用于场景文本识别的模型。(a)是用于常规文本识别器的基于1D注意力的编码器-解码器基本框架[16]。(b)-(f)都是用于不规则文本识别。(b)基于形状矫正[7];©基于多方向编码[8];(d)基于字符检测[9];(e)基于二维注意力[10];(f)我们的模型(基于端到端的可训练卷积注意力,没有使用RNN。)

请注意,大量的不规则文本识别器(例如[7, 12, 8, 10, 13])仍然需要将输入图像转换为中间序列表示,并使用RNNs进行编码和解码。这种类型的方法有两个局限性。首先,鉴于不规则文本实际上分布在二维空间,在某种程度上,将其转换为一维序列表示是不合适的,也是困难的。如[9]所示,从二维角度解决不规则文本的识别问题可能会产生更稳健的性能。其次,由于梯度消失/编码的问题,RNNs本身就很难被并行化,而且通常很难训练。在常规文本识别领域,已经有一些尝试用非递归架构来取代RNN,包括基于卷积的[14]和基于注意力的序列建模[15]方法。然而,这两种方法仍然是基于序列对序列的结构,不能很好地处理任意形状的不规则文本。
为此,我们提出了一个简单而稳健的不规则文本识别架构,如图1(f)所示。我们的方法直接将基于CNN的二维图像编码器与基于注意力的一维序列解码器连接起来,避免了使用中间序列表示。受NLP中的Transformer[17]的启发,我们采用了一个基于注意力的解码器,它不依赖于递归连接,因此可以并行训练并快速收敛。
请注意,Transformer是为机器翻译而提出的,将一维序列作为输入。但我们提出的不规则文本识别器的输入是二维图像,这使得这两个模型相互之间有所不同。在Transformer中起着关键作用的自我注意机制在输入和输出序列中都起着长距离依赖的模型,而在我们的文本识别模型中则相对不那么重要。
首先,我们不使用自我注意,而是使用CNN对输入的场景文本图像进行编码。因此,我们需要在解码器中使用二维注意力。其次,在解码器中使用自我注意并没有提供明显的性能增益。这并不奇怪:单个单词的字符之间的依赖性通常比一个句子或段落的单词之间的依赖性要弱。
我们的主要贡献有三个方面。

  1. 建议的模型设计简单。它只包括一个用于图像编码的CNN模型和一个基于注意力的序列解码器。与序列-序列文本识别器不同的是,我们不把输入图像转换为序列表示,这本身对复杂形状的文本来说就是一种挑战。相反,我们通过一个CNN模型将输入图像转换为二维特征图和一维整体表征,然后将它们直接连接到序列解码器。此外,所提出的模型的训练只需要单词级别的注释,这使得它可以用通常不带有字符级别注释的真实数据进行训练。
    2)我们提出的方法是一个端到端可训练的非递归网络,用于规则和不规则文本识别。在不使用任何RNN模块的情况下,这个模型可以被并行训练。与最先进的基于RNN的不规则文本识别器[7, 10]相比,我们的模型在后向传递中的速度是1.5倍到9.4倍,在前向传递中的速度是1.3倍到7.9倍。这种加速导致了快速的实验周转,使我们的模型可以扩展到更大的数据集。
    3)我们将整个图像的丰富的上下文信息编码为一个整体的表示,算法在整体表示所提供的上下文信息的帮助下,更好地集中于要解码的字符。如图4所示,该算法在整体表征的帮助下专注于更准确的区域。
    记号:
    矩阵和列向量分别用粗体大写和小写字母表示。 R^m和 R^(m×n)分别表示实值的m维向量和m×n矩阵。 〈a,b〉∈R指的是 〖a∈R〗^m和 〖b∈R〗^m 。 〖[a,b]∈R〗^(m×2)和 〖[a;b]∈R〗^2m分别表示a和b的水平和垂直堆栈。

2.相关工作

不规则场景文本识别。

早期的场景文本识别工作采用自下而上的方式[18, 19],首先检测单个字符[20],并通过动态编程将其整合为一个单词,或者采用自上而下的方式[21],将单词补丁作为一个整体,以多类图像分类的方式进行识别。考虑到场景文本一般以字符序列的形式出现,最近的工作将其建模为一个序列识别问题。RNNs一般用于序列特征学习。连接主义时间分类(CTC)和序列到序列的学习模型是两种普遍的方法,被广泛用于场景文本识别[22, 16, 12, 23, 24]。此外,一些多语言场景文本识别数据集和多语言场景文本识别工作也得到了研究[25, 26]。
不规则文本的识别方法大多由上述框架驱动,但涉及一些改进,以处理不规则文本的扭曲或曲率。例如,Su和Lu[27]提出了一种新的集合技术,将两个RNN的输出结合起来以获得更好的识别结果,并使用HoG而不是深度网络特征进行识别。Shi等人[13,7]提出通过空间变换器网络(STW)[28]将不规则的文字图像矫正为规则的图像,然后使用一维注意力序列到序列模型进行识别。Zhan和Lu[29]提出通过一个创新的整流网络来迭代去除透视变形和文字线的弯曲,从而形成一个正面平行的文字视图,用于识别。Liu等人[30]没有对整个文字图像进行矫正,而是提出通过STW检测并矫正文字中的单个字符。Cheng[8]通过RNNs捕获不规则文本图像沿四个方向的深层特征,然后通过基于一维注意力的解码器将其结合起来,生成字符序列。设计了一个滤波门来融合这些冗余的特征并去除不相关的特征。Liao等人[9]认为用一维序列表示不规则的文本图像是不合适的,并提出了一个字符注意全卷积网络来准确检测二维视角下的每个字符。然后用一个单独的基于分割的方法来实现单词的形成。这个模型不能进行端到端的训练。一些方法试图将一维注意力机制扩展到二维空间。通常需要字符级的注释来监督二维注意力网络的训练。例如,Cheng等人[12]提出的聚焦注意网络(FAN)引入了一个聚焦网络来解决局部字符特征和目标之间的注意力漂移问题。Yang等人[11]引入了一个辅助的全卷积网络,用于密集字符的检测。在单词解码过程中,使用对准损失来监督注意力模型的训练。Li等人[10]修改了注意力模型,并提出了一个量身定做的基于二维注意力的框架,用于精确的局部特征提取。然而,在编码器和解码器中分别采用了2层的RNNs,这就排除了计算的并行化,并承受了沉重的计算负担。

非递归序列建模。

近年来,有人提出在序列到序列的学习框架中去除递归结构,从而实现完全的并行计算,加快处理速度。Gehring等人[31]提出了一个完全采用卷积层的机器翻译架构。序列中的组成结构可以基于层次化的表征被发现。然而,这个模型在学习遥远位置之间的依赖关系方面仍然有困难。Vaswani等人[17]提出了一个用于机器翻译的 “Transformer”,它完全基于注意力机制。基本的自我注意模块可以通过位置对计算,而不是通过RNNs计算的位置链来得出序列中不同位置之间的依赖关系,这导致了更多的计算并行化和更低的模型复杂性。受到这个模型的启发,Dong等人[32]将Transformer引入到语音识别中,Yu等人[33]将局部卷积与全局自我注意相结合,用于阅读理解任务。最近,Dehghani等人[34]对Transformer进行了扩展,并提出了 “通用Transformer”,以处理字符串复制或逻辑推理中字符串的长度超过训练时的观察值。还有一些不使用递归网络的场景文本阅读的努力。Gao等人[14]提出了一个用于场景文本识别的端到端注意卷积网络,之后是CTC层来生成最终的标签。Wu[35]基于卷积序列到序列的学习框架[31],提出了一个滑动卷积注意力网络用于场景文本识别。Sheng等人[15]在Transformer[17]的基础上提出了一个用于场景文本识别的非递归序列到序列的模型,自我注意模块作为编码器和解码器的基本模块来学习字符依赖关系。所有这些序列到序列的框架都主要用于常规文本识别,由于其固有的模型设计,不容易扩展到处理不规则文本。相比之下,在这项工作中,我们提出了一个简单而有效的基于卷积和注意力模块的二维图像到一维序列模型。它将文本图像直接映射为字符序列,可以解决规则和不规则场景的文本识别。

3.模型结构

如图2所示,所提出的模型是基于编码器-解码器的结构,这种结构在许多跨模式转换任务中很受欢迎。以前的基于序列的文本识别器用一维序列表示输入图像,然而,在处理二维空间的不规则文本散布时,会遇到困难。另外,我们采用一个CNN编码器来提取文本图像的二维特征图(二维表示)和整体表示(一维表示)。所得到的图像表征然后被送入一个基于注意力的解码器,该解码器由屏蔽的自我注意力、二维注意力和点状前馈层堆叠而成。
在测试过程中,解码器在每一步都将整体表征和先前生成的字符的嵌入作为输入,该嵌入与当前位置的编码相加,通过二维注意力自适应地注意相关图像区域,并预测当前位置的字符。在训练期间,解码器的计算可以很容易地与给定的真实标签并行。在下文中,我们将详细介绍我们提出的模型的每个组成部分。

3.1.编码器

我们采用基于ResNet34[36]的架构作为我们的CNN编码器,它由一个改良的ResNet34和一个整体表征提取器组成,如图2所示。修改后的ResNet34的详细信息如表1所示。ResNet34的最后一个平均池层被移除,然后是两个分支。一个分支是1×1的卷积层,将二维特征图的维度从512转化为1024,并输入二维注意力;另一个分支是整体表征提取器,由B瓶颈、平均池和全连接层组成。由此产生的整体表征构成解码器的输入。消融研究表明,在我们的案例中,B=6就足够了(详见4.3节)。所有的输入图像都被均匀地调整为48×160×3,从而得到大小为6×20×512的特征图。我们还评估了其他CNN骨干,如ResNet18、ResNet50和ResNet152的图像编码,这些骨干并没有提供明显的性能改进,这一点参考了消融实验的情况。请注意,在不破坏图像原始长宽比的情况下重新调整图像的比例可能更合理[10],这一点我们留待以后的工作。
在这里插入图片描述

表1:修改后的ResNet34的配置。"Conv "代表卷积层,内核大小和输出通道都在这里。卷积层的stride和padding都被设置为 “1”。"Layer "代表堆叠的基本块,提出了块的数量、输出通道和跨度。"k "表示内核大小,"s "表示stride。

3.2.解码器

受[17]的启发,设计的基于注意力的序列解码器由三层组成:1)一个掩蔽的自我注意力机制,用于模拟输出词中不同字符之间的依赖关系;2)一个连接编码器和解码器的二维注意力模块;3)一个分别应用于每个解码位置的点式前馈层。上述三层中的每一层都采用了带有加法运算的残差连接,然后进行层的归一化。上述三个部分组成一个块,可以叠加N次而不共享参数。在Transformer[17]中有N=6个块,但我们发现在我们的情况下,只使用一个块已经达到了饱和的性能(见第4.3节)。在下文中,我们将详细描述解码器的组成部分。
在这里插入图片描述

图2:我们提出的模型的整体结构。它由两部分组成:一个基于ResNet34的图像编码器(左)和一个基于注意力的序列解码器(右)。由修改后的ResNet34生成的二维特征图通过1×1卷积层连接到解码器中的二维注意力模块,我们堆叠了6个瓶颈模块来提取一维整体表征,这可以帮助二维注意力更加准确。瓶颈模块与ResNet[36]中相同。与其他不规则文本识别器[37, 7]相比,没有递归网络来模拟表征。作为一个非递归网络,我们的模型可以被并行训练。此外,训练我们的模型只需要词级注释。

输出嵌入和位置编码。

在测试过程中,先前生成的字符将在每个解码步骤中被嵌入到一个d/2维的向量中,该向量与当前位置的编码进一步相加,如下所示。
在这里插入图片描述

其中p是位置,而 i ∈ {1,…,(d/2)}是维度。然后,它们被串联成一个整体的表示。而在训练时,地面真实的字符被右移并同时嵌入,这就实现了平行训练。

多头点积注意力。

我们解码器中的掩蔽式自我注意和二维注意都是基于多头点积注意的表述[17]。在这里,我们简单回顾一下这个公式。规模化的点乘法注意力将一个查询 q ∈R^d和一组d维向量的键值对 〖{(k_i,v_i)}〗_(i=1,2,…,M)(M是键值对的数量),并计算输出值的加权和,其中每个值的权重是由查询和相应的键的缩放点积计算的。缩放点积注意的表述可以表示如下。
在这里插入图片描述

是注意权重,K = [k1, k2 , . . . , kM ],V = [v1 , v2 , . . . , vM ]。如果有
是一组查询Q=[q1 , q2 , . . . , qM’ ](M’是查询的数量),那么我们有。
在这里插入图片描述

上述缩放点积注意可以多次应用(多头),对Q、K和V进行不同的线性投影,然后进行串联和投影操作。
在这里插入图片描述

这些参数是 W_iq∈R(d/H×d), W_ik∈R(d/H×d) W_iv∈R(d/H×d)和 Wo∈R(d×d).在我们提出的模型中,我们将注意力头的数量H设定为16个(关于H的选择,见第4.3节的消融研究)。

被掩盖的自我注意。

这个注意层是用来模拟不同解码位置之间的依赖关系,其中查询、键和值是相同的。在这种情况下,M = M’ = 解码序列的长度。一个掩码被应用来防止每个位置注意该位置之后的位置。

二维注意。

在这一层中,查询来自于屏蔽的自我注意层,而键和值是CNN编码器的二维输出特征。在这种情况下,M=6×20,M’是解码序列的长度。它是编码器和解码器之间的主要连接,它允许每个解码位置注意编码器输出的2D位置。

点式前馈层。

一个简单的前馈网络被应用于二维注意力层输出的每个位置,它包含两个维度为d’的线性变换和一个ReLU非线性之间。这个层的参数在所有位置上都是共享的。

预测和损失函数。

一个线性转换,然后是一个softmax函数,用来将解码器的输出转化为字符类的预测概率。这里我们使用94个字符类,包括数字、区分大小写的字母和32个标点字符。这些参数也是在所有解码位置上共享的。标准的交叉熵函数被用来计算每个解码位置的预测概率相对于地面真相的损失。
在这里插入图片描述

图3:我们模型中的双向解码器。解码器1和解码器2的结构是相同的,参数也不共享。它们之间的区别是标签序列的顺序,一个是正常的,另一个是相反的。

3.3.双向解码器

ASTER[7]提出了一种双向解码器,它由两个方向相反的解码器组成。如图3所示,一个解码器被训练成从左到右预测字符,另一个则从右到左。如果一个样本的第一个字符难以识别,在从右到左的标签的帮助下,它可能会更容易。因为在倒序中,第一个字符变成了最后一个,那么其他字符就会对最后一个字符的识别起到一定的作用,从而提高识别精度。在测试阶段,我们在两个解码器中挑选出识别分数最高的一个。

4.实验

场景文本识别的数据集已经在[38]中进行了广泛的研究,我们在一些与[38]一致的场景文本识别数据集上评估了我们方法的性能。还进行了消融研究,以研究不同模型超参数的影响。

4.1.数据集

我们的模型只在合成数据集上训练,不使用任何真实世界的图像。同样的训练模型,没有进一步的微调,然后在以下标准数据集上进行评估。IIIT 5K-Words (IIIT5K) [39], Street View Text (SVT) [18], ICDAR2013 (IC13) [40], ICDAR2015 (IC15) [41], Street View Text Perspective (SVTP) [19] 和CUTE80 (CT80) [42]。
合成数据集 采用两个公共合成数据集来训练我们的模型。
Synth90K是由[21]发布的900万字合成数据,SynthText是由[43]提出的800万字数据。
IIIT5K[39]是从互联网上收集的。它有3000张裁剪过的单词图片用于测试,其中有近乎水平的文本实例。
SVT[18]包含647张裁剪过的文本图像用于测试。它是从谷歌街景中收集的。虽然文本实例大多是水平的,但许多图像被噪声和模糊严重破坏,或者分辨率很低。
IC13[40]有1095个常规单词补丁供测试。为了公平比较,我们删除了包含非字母数字字符的图像,这样就有1015张图像。
IC15[41]由谷歌眼镜偶然拍摄的图像组成,因此有许多不规则的词块(视角或方向)。它包括2077张图片用于测试。为了与以前的方法[8, 37, 29, 12, 24, 7]进行公平的比较,我们还使用了IC15数据集的两个简化版本,称为IC15-Char&Digit和IC15-1811。IC15-Char&Digit也包括2077张图像,但放弃了注释中的非字母数字字符。IC15-1811放弃了有非字母数字字符的图像,包含1811张图像。
SVTP[19]包含了645张裁剪过的图片用于测试。图片选自谷歌街景中的侧视角度快照,这些图片大多是透视变形的。
CT80[42]由288张裁剪过的高分辨率图像组成,用于测试。它是专门为评估弧形文字识别的性能而收集的。

4.2.实施细节

拟议的模型是用PyTorch实现的。所有实验都是在拥有11GB内存的NVIDIA GTX 1080Ti GPU上进行的。我们使用ADADELTA优化器[44]来训练模型,批次大小为160。Synth90K和SynthText的采样比例为1 : 1,在一个批次中,模型在合成数据集上训练4个epochs。整体表示维度等于词嵌入维度,即512。因此,在我们的实验中,维度d和d’分别被设定为1024和2048。
在这里插入图片描述

表2:不同的修正CNN主干的性能。修改后的ResNet34在性能和模型大小之间取得了良好的平衡。

在测试阶段,借鉴[10],对于高度大于宽度两倍的图像,我们将图像旋转±90度。得分最高的识别结果将被选为最终输出。波束搜索也被应用于解码器。它保留累积分数最高的前k个候选者,其中k在我们的实验中被经验性地设定为5。

4.3.消融研究

CNN骨干网的选择。

我们首先用不同的CNN模型进行图像编码实验,包括ResNet18、ResNet34、ResNet50和ResNet152。表2中的实验结果显示,ResNet34在模型大小和准确性之间取得了良好的平衡。所以我们在下面的实验中选择ResNet34作为我们的主干。

解码器块的数量。

如表3的第4、6、7行所示,我们将解码器块的数量设置为1、2、3,同时保持注意力头的数量为16。结果表明,当N=1时,我们的模型取得了最佳性能。这一现象与Transformer[17]的实验结果相反,后者显示使用更多的块可以产生更好的机器翻译性能。

注意力头数。

另一个影响识别性能的因素是注意头的数量H。我们分别用1、4、8、16、32个注意头来评估我们模型的识别性能。表3中的实验结果表明,我们使用的注意头越多,它的性能就越好。在下文中,我们将注意力头数H设定为16。
在这里插入图片描述

表3:解码器中不同块数和注意头数的性能。它表明,使用更多的头可以稍微提高性能,但使用更多的块(H = 16)会降低性能。
在这里插入图片描述

图4:有无整体表征的注意力图的案例研究。有了整体表征,我们的算法倾向于更正确地聚焦于要解码的字符区域。最好以彩色方式观看。

整体性代表的影响。

我们的模型中的整体表示向量编码了整个输入图像的丰富上下文信息。它在每个时间步骤中与最后解码的字符一起被送入解码器。图4展示了一个使用和不使用整体表征生成的二维注意力图的案例研究。我们可以看到,有了整体表征提供的上下文信息,该算法更准确地集中于要解码的字符。此外,我们还研究了用于生成整体表征的瓶颈数量的影响。如表4所示,使用更多的瓶颈模块可以提高常规和不规则单词识别的性能。当瓶颈数量达到6时,性能几乎饱和。所以我们默认将瓶颈B的数量设置为6。
在这里插入图片描述

表4:不同瓶颈数的整体表示的性能。表中显示,使用更深的瓶颈可以提高规则和不规则数据集的性能,当瓶颈数为6时,性能几乎达到饱和。
在这里插入图片描述

表5:编码器和解码器中是否有自我注意的性能。比较第1行和第2行,从我们的模型中去掉解码器中的自我注意会导致性能适度下降。从第2行和第3行,我们可以看到,在编码器中增加自我注意并没有显示出任何改善。

自我注意的影响。

自我注意力在许多序列-序列任务(如机器翻译)中起着关键作用,因为它有能力为长距离的依赖关系建模。在图像处理的背景下,自我注意与非局部神经网络有着相似的精神[45]。在本节中,我们将研究自我注意在我们提出的不规则文本识别模型中的影响。我们首先在卷积特征图的基础上增加了一个自我注意模块,以加强对远距离图像区域之间依赖关系的表示。然而,表5中的结果显示,在编码器中增加自我注意并没有带来改善。另一方面,为了考察自我注意在解码器方面的影响,我们将自我注意模块从解码器中移除。与原始模型相比,所得到的模型的识别性能只是适度下降(对于包含普通文本的IIIT5K,识别率为0.7%,对于由不规则文本组成的IC15,识别率为0.1%),这仍然与以前的方法相当。
与机器翻译相比,我们发现在我们的不规则文本识别器中,使用自我注意对性能的影响相对较小。我们分析说,原因可能有三方面。首先,不规则文本识别任务中需要建模的序列长度通常比机器翻译中的要小。例如,在Multi30K[46]的英德翻译数据集中,输入和输出序列的平均长度分别为11.8和11.1。而在IC15[41]的测试集中,不规则文本识别的输出序列的平均长度为5.3。显然,对于短序列来说,建立长距离的依赖关系模型不太重要。其次,鉴于ResNet34的最终特征层的接受域为98,与输入图像的大小(48×160)相当,深度CNN编码器已经对一定程度的长距离依赖进行建模。最后,在机器翻译中,自我注意通常被用来模拟一个句子甚至一个段落中单词之间的依赖关系。彼此相距甚远的词语之间仍然存在丰富的语义和句法关系。而对于不规则文本识别,每个输入图像通常包含一个特定的单词,自我注意只用来模拟单词中的字符依赖关系。一个词的字符之间的依赖关系通常比一个句子或段落中的词之间的依赖关系要弱。这可能就是为什么自我注意在经验上对不规则文本识别的性能没有很大的提高。

双向解码器的影响。

为了评估双向解码器的有效性,我们比较了不同解码器的识别精度。正常,只识别从左到右顺序的文本;反转,只识别从右到左顺序的文本;双向,在正常和反转之间选择识别分数最高的一个。
表6显示,正常和反转具有相似的准确性。Normal在IC15上的表现好,而Reversed在IIIT5K上的表现好。虽然Normal和Reversed之间只有很小的准确率差异,但它们结合起来后有很大的性能改进。
在这里插入图片描述

表6:用不同的解码器进行测试。"正常 "指从左到右的顺序,"反转 "指从右到左的顺序,"双向 "指它们的组合。

文字整顿的影响。

我们进行了实验来研究文本整顿对我们框架的影响。我们使用了[37]中的多对象整顿网络作为文本整顿方法。如表7所示,文本整顿方法在我们提出的框架中效果并不好。
主要原因可能是我们基于二维注意力的方法已经能够很好地处理不规则文本。在没有整顿的情况下,我们的二维注意力模块可以定位分布在二维空间的单个字符。这样一来,整顿对我们的方法影响不大。如图5所示,文本图像被MORAN[37](一种整流+1d注意力的方法)大幅整流,但当我们基于2D注意力的方法配备了相同的整流模块并进行端到端训练时,图像只发生了轻微的转变。
在这里插入图片描述

表7:在我们的方法上有无文字整顿方法的表现。文本整顿算法使用了[37]中的多对象整顿网络。

4.4.与最新技术的比较

在这一节中,我们评估了我们的模型,在N=1,H=16和d=1024的情况下,与最先进的方法在几个基准上进行比较。为了公平比较,我们只展示了SAR[10]和TextScanner[50]用合成数据训练的性能。如表8所示,我们提出的方法在所有评估的不规则文本识别设置上都优于其他字级方法。特别是,它在IC15-1811上实现了3.4%(从76.1%到79.5%)的准确率,在CT80上实现了1.0%(从84.4%到85.4%)的准确率。
而对于常规文本数据集,我们的表现也很有竞争力。在IIIT5K数据集上,我们的模型比最好的词级模型(94.7%对94.3%)好0.4%,该数据集包含了三个被评估的常规数据集中数量最多的测试图像。虽然我们的方法只使用词级注释,但它比IIIT5K的最佳字符级模型((94.7%对95.3%))稍差。
我们还将我们的模型大小和计算速度与一个简单而强大的基线[10]和一个最先进的模型[7]进行比较。实验在1080Ti GPU上进行,批次大小为20。由于非重现属性,我们的模型明显比这两个基于RNN的模型快。
在这里插入图片描述

图5:我们提出的基于二维注意力和基于整流的(MORAN[37])不规则文本识别器的比较。第二列中的图像是由我们的方法和文本整顿方法整顿的图像;第三列展示了整顿后的图像和使用作者的实现的相应预测;第四列给出了我们的方法的预测和在所有字符解码步骤中聚合注意力权重的热图。
在这里插入图片描述

表8:公共数据集上的场景文本识别性能。 "Char&Digit "表示在预测和注释中舍弃非字母数字字符,"1811 "表示舍弃有任何非字母数字字符的图像,还剩下1811张图像。“50”、"1k "和 "Full "是词库大小,"None “表示没有词库。对于有词库的数据集,我们从词库中选择与预测词有最小编辑距离的词。”*"表示用词级和字符级注释训练的模型。粗体字和斜体字分别代表最佳和次佳性能。

一些成功和失败的案例也呈现在图6中。在第二行中,那些具有不同形状的图片可以被正确识别,这表明我们的模型有能力处理复杂形状的文本。我们的方法有几个原因会做出错误的判断,包括模糊的图像、低分辨率、垂直的文字、灯光和遮挡。我们发现垂直文本的识别准确率非常低,主要原因可能是目前的合成数据集中垂直文本样本很少。
图7显示了在不同解码步骤中注意力图的一些情况。我们可以看到,解码器可以将注意力集中在要解码的字符的右侧区域,但有时会出现小的位置漂移。

5.总结

在这项工作中,我们提出了一个简单而强大的整体表征引导的注意力网络,用于场景文本识别。我们模型的简单性体现在三个方面。1)简单的结构:所提出的模型直接连接了一个CNN编码器和一个基于注意力的编码器。我们没有像许多现有的不规则文本识别器那样将输入图像转换成序列。2) 平行训练:作为一个非递归网络,我们的模型可以被平行训练。与两个最先进的基于RNN的不规则文本识别器相比,我们模型的计算速度明显更快。3)简单的训练数据:我们的模型只依赖于词级注释。而且我们在解码器中使用图像的整体表示,以帮助二维注意力集中在正确的区域。作为一个简单的元算法,这个模型可以通过多种方式进行扩展,例如通过堆叠的二维注意力纳入多尺度图像特征,以及在保持长宽比的情况下调整输入图像的大小。我们把它们留给进一步的工作。
在这里插入图片描述

表9:训练速度和模型大小的比较。速度是以20个大小的批次平均评估的。我们的模型在后向通道中快1.5倍到9.4倍,在前向通道中快1.3倍到7.9倍。
在这里插入图片描述

图6:我们的方法的一些成功和失败案例。图中还说明了结合所有解码步骤的二维注意力权重。“GT”:地面实况,“Pred”。预测,“FR”。失败的原因,“Res”。原始图像分辨率。失败的原因包括模糊、低分辨率(LR)、灯光、垂直文本(VT)和遮挡等。最好以彩色观看。

在这里插入图片描述在这里插入图片描述

图7:不同解码步骤下的注意力图的案例研究

参考文献

创作不易,喜欢的话加个关注点个赞,❤谢谢谢谢❤

这篇关于论文翻译-A holistic representation guided attention network for scene text recognition的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/193941

相关文章

poj 2349 Arctic Network uva 10369(prim or kruscal最小生成树)

题目很麻烦,因为不熟悉最小生成树的算法调试了好久。 感觉网上的题目解释都没说得很清楚,不适合新手。自己写一个。 题意:给你点的坐标,然后两点间可以有两种方式来通信:第一种是卫星通信,第二种是无线电通信。 卫星通信:任何两个有卫星频道的点间都可以直接建立连接,与点间的距离无关; 无线电通信:两个点之间的距离不能超过D,无线电收发器的功率越大,D越大,越昂贵。 计算无线电收发器D

AI hospital 论文Idea

一、Benchmarking Large Language Models on Communicative Medical Coaching: A Dataset and a Novel System论文地址含代码 大多数现有模型和工具主要迎合以患者为中心的服务。这项工作深入探讨了LLMs在提高医疗专业人员的沟通能力。目标是构建一个模拟实践环境,人类医生(即医学学习者)可以在其中与患者代理进行医学

论文翻译:arxiv-2024 Benchmark Data Contamination of Large Language Models: A Survey

Benchmark Data Contamination of Large Language Models: A Survey https://arxiv.org/abs/2406.04244 大规模语言模型的基准数据污染:一项综述 文章目录 大规模语言模型的基准数据污染:一项综述摘要1 引言 摘要 大规模语言模型(LLMs),如GPT-4、Claude-3和Gemini的快

什么是 Flash Attention

Flash Attention 是 由 Tri Dao 和 Dan Fu 等人在2022年的论文 FlashAttention: Fast and Memory-Efficient Exact Attention with IO-Awareness 中 提出的, 论文可以从 https://arxiv.org/abs/2205.14135 页面下载,点击 View PDF 就可以下载。 下面我

论文阅读笔记: Segment Anything

文章目录 Segment Anything摘要引言任务模型数据引擎数据集负责任的人工智能 Segment Anything Model图像编码器提示编码器mask解码器解决歧义损失和训练 Segment Anything 论文地址: https://arxiv.org/abs/2304.02643 代码地址:https://github.com/facebookresear

论文翻译:ICLR-2024 PROVING TEST SET CONTAMINATION IN BLACK BOX LANGUAGE MODELS

PROVING TEST SET CONTAMINATION IN BLACK BOX LANGUAGE MODELS https://openreview.net/forum?id=KS8mIvetg2 验证测试集污染在黑盒语言模型中 文章目录 验证测试集污染在黑盒语言模型中摘要1 引言 摘要 大型语言模型是在大量互联网数据上训练的,这引发了人们的担忧和猜测,即它们可能已

OmniGlue论文详解(特征匹配)

OmniGlue论文详解(特征匹配) 摘要1. 引言2. 相关工作2.1. 广义局部特征匹配2.2. 稀疏可学习匹配2.3. 半稠密可学习匹配2.4. 与其他图像表示匹配 3. OmniGlue3.1. 模型概述3.2. OmniGlue 细节3.2.1. 特征提取3.2.2. 利用DINOv2构建图形。3.2.3. 信息传播与新的指导3.2.4. 匹配层和损失函数3.2.5. 与Super

BERT 论文逐段精读【论文精读】

BERT: 近 3 年 NLP 最火 CV: 大数据集上的训练好的 NN 模型,提升 CV 任务的性能 —— ImageNet 的 CNN 模型 NLP: BERT 简化了 NLP 任务的训练,提升了 NLP 任务的性能 BERT 如何站在巨人的肩膀上的?使用了哪些 NLP 已有的技术和思想?哪些是 BERT 的创新? 1标题 + 作者 BERT: Pre-trainin

【Python报错已解决】AttributeError: ‘list‘ object has no attribute ‘text‘

🎬 鸽芷咕:个人主页  🔥 个人专栏: 《C++干货基地》《粉丝福利》 ⛺️生活的理想,就是为了理想的生活! 文章目录 前言一、问题描述1.1 报错示例1.2 报错分析1.3 解决思路 二、解决方法2.1 方法一:检查属性名2.2 步骤二:访问列表元素的属性 三、其他解决方法四、总结 前言 在Python编程中,属性错误(At

[论文笔记]LLM.int8(): 8-bit Matrix Multiplication for Transformers at Scale

引言 今天带来第一篇量化论文LLM.int8(): 8-bit Matrix Multiplication for Transformers at Scale笔记。 为了简单,下文中以翻译的口吻记录,比如替换"作者"为"我们"。 大语言模型已被广泛采用,但推理时需要大量的GPU内存。我们开发了一种Int8矩阵乘法的过程,用于Transformer中的前馈和注意力投影层,这可以将推理所需