【读点论文】SPTS v2:Single-Point Scene Text Spotting,通过改变标注方式获得更好的模型泛化能力,相比于SPTS提高了模型训练合推理速度

SPTS v2: Single-Point Scene Text Spotting

Abstract

  • 端到端场景文本识别由于文本检测和识别之间的内在协同作用而取得了重大进展。以往的方法通常以手工标注为前提,如水平矩形、旋转矩形、四边形、多边形等,这比单点标注要昂贵得多。我们的新框架SPTS v2允许我们使用单点注释训练高性能的文本识别模型。SPTS v2保留了具有实例分配解码器(IAD)的自回归 Transformer 的优点,通过顺序地预测同一预测序列内所有文本实例的中心点,而具有并行识别解码器(PRD)的文本并行识别,这大大降低了对序列长度的要求。这两个解码器具有相同的参数,通过简单而有效的信息传输过程交互连接,传递梯度和信息。在各种现有基准数据集上的综合实验表明,SPTS v2可以用更少的参数胜过以前最先进的单点文本观测者,同时实现19倍的推理速度。在我们的SPTS v2框架的背景下,我们的实验表明,与其他表示相比,单点表示在场景文本识别中具有潜在的偏好。这种尝试为超越现有范例领域的场景文本识别应用提供了重要的机会。代码可从https://github.com/Yuliang-Liu/SPTSv2获得。
  • 论文地址:[2301.01635] SPTS v2: Single-Point Scene Text Spotting (arxiv.org),Accepted for publication in TPAMI 2023。SPTS v2: Single-Point Scene Text Spotting | Papers With Code

INTRODUCTION

  • 近年来,情景文本阅读技术取得了长足的进步。给定图像,文本定位器可以同时定位和识别文本内容,从而实现许多现实世界的应用,如文档数字化、智能助手和自动驾驶仪。基本上,矩形、四边形和多边形等边界框通常用于表示不同形状的文本。然而,人类可以直观地阅读没有这样一个定义区域的文本,这一事实鼓励了无边界框文本识别器的发展,解除了边界框注释所施加的限制。

  • 如下图所示,前面的方法使用由一系列坐标组成的边界框来定义实例级文本,其中封闭的区域被认为是一个正样本。由于其简单和直接性,边界框已成为许多其他视觉任务的首选注释格式。然而,与对象检测任务中的目标通常以定义的外观呈现不同,文本实例可能由于不同的排版和字体而以任意形状出现。

    • 在这里插入图片描述

    • 现有的OCR方法通常使用边界框来表示文本区域。然而,受人类如何在没有这样一个定义区域的情况下直观地阅读文本的启发,本文证明了单个点足以指导模型学习强场景文本识别器。

  • 因此,需要使用边界框来包含更多的坐标,如多边形,来标记这些任意形状的文本。否则,可能会涉及相当大的噪声,这可能会对识别性能产生负面影响。例如,Total-Text 最多使用20个坐标,而SCUT-CTW1500 最多使用28个坐标来注释单个弯曲场景文本实例。虽然使用多边形可以在一定程度上缓解标注任意形状文本的噪声问题,但也大大增加了标注成本。针对这些问题,本文提出了一种基于单引导点的场景文本监控新方法。如上图所示,每个文本由实例中的单个点表示。这种流线型的表示打破了边界框的限制,使模型能够自由地访问附近的像素,并进一步学习区分文本之间的边界。此外,与多边形相比,它大大节省了标注成本。

  • 近十年来,场景文本识别的研究重点从水平文本和多向文本转向任意形状文本,体现在从矩形和四边形注释向更紧凑但更昂贵的多边形的转变。如图2所示,矩形边界框容易涉及到其他文本实例,可能会混淆后续的场景文本识别。此外,许多人已经努力开发更复杂的表示来适应任意形状的文本实例。

    • 在这里插入图片描述

    • LabelMe工具测量了不同的注释样式及其时间成本(对于示例图像中的所有文本实例)。绿色区域是阳性样本,而红色虚线框是可能包含的噪声。注意,时间是由三个标注者的平均值测量的。对于点以外的表示,它们通常需要放大以对准确切的位置,这消耗了大量的注释工作。

  • 例如,如下图所示,Mask TextSpotter利用边界多边形对文本区域进行定位。Text Dragon利用字符级边界框生成中心线来预测局部几何属性,ABCNet将多边形标注转换为bezier曲线来表示弯曲的文本实例,Text Snake通过一系列以对称轴为中心的有序磁盘来描述文本实例。这些启发式表示是由知识渊博的专家精心设计的。尽管它们已被证明对文本检测和识别模块之间的特征对齐是有效的,但对人工设计规则的依赖不可否认地破坏了通用性。具体来说,需要特定的网络架构和模块来处理特征和标注信息,例如RoI模块的变体和后处理机制。此外,如上图所示,上述依赖多边形或字符边界框标注的表示方式标注成本较高,而提出的单点标注方法可以将标注成本减半。

    • 在这里插入图片描述

    • 文本实例的不同表示。

  • 在过去的几年里,一些研究者探索了用弱监督的方式训练粗糙标注的OCR模型。这些方法主要可以分为两类,即(1)引导标签到更细的粒度和(2)部分标注训练。前者通常从字级或行级注释派生字符级标签;因此,这些模型可以在不引入间接成本的情况下享受众所周知的字符级监督的优势。后者致力于用更少的训练样本获得有竞争力的表现。然而,这两种方法仍然依赖于边界框注释。最近的一项研究[SPTS: Single-point text spotting]表明,场景文本的仅点注释仍然可以在场景文本识别任务中取得具有竞争力的性能

  • 用更简单的标注格式(如单点注释)替换边界框的潜在问题之一是,大多数文本观测者依赖于类似roi的采样策略来提取共享的主干特征。例如,Li等人和Mask TextSpotter需要RoI内的框和掩码预测;ABCNet提出了bezeralign将曲面表示包装成水平格式,而TextDragon引入了RoISlide来统一检测和识别头。

  • 在本文中,受最近基于序列的目标检测器Pix2Seq的成功启发,我们证明了文本观测者可以用单点进行训练。由于标注形式简洁,可以显著节省标注时间,如图所示的样本图像单点标注时间,仅为字符级边界框标注时间的不到五十分之一。选择点注释的另一个激励因素是可以开发一个干净高效的OCR管道,抛弃复杂的后处理模块和基于图像的采样策略;因此,roi引入的模糊性(见图中红色虚线区域)可以得到缓解。

  • 然而,采用单点表示仍然具有挑战性。在我们的会议版本中,以前最先进的单点文本定位器(SPTS)使用自回归的Transformer为所有文本实例生成长序列。在这里,仅点预测非常简单,可以整体处理无序的文本实例。因此,它可以学习避免重复预测、特定的标签分配方法,如DETR中的二部匹配,或复杂的后处理,如非最大抑制(NMS)。虽然我们的会议版本SPTS是有效的,但它的推理速度非常低,特别是同时包含多个实例的图像

  • 因此,为了在利用自回归预测的同时保持高效率,我们设计了SPTS v2,在实现更高性能的同时显著提高了推理速度。具体来说,我们观察到结果的长序列主要被文本识别所占据,因此我们只能在第一实例分配解码器(IAD)中自回归地预测每个实例的位置,例如x和y,称为指示器;而对于第二个并行识别解码器(PRD),每个指示器负责其后续的文本识别预测,可以并行实现。这背后的基本原理是,IAD是解决隐式标签分配,而PRD是对给定标签分配后的特征的相关文本识别结果进行并行预测。为了实现从识别特征到IAD阶段的梯度流,我们提出了一种简单有效的信息传输方法,该方法集成了文本位置和IAD阶段特征的嵌入,这对SPTS v2的成功至关重要。We summarize our contributions as follows:

    • 我们将文本识别作为一项语言建模任务,只使用交叉熵损失。这种简化的方法消除了复杂的后处理和采样策略的需要,提供了更大的灵活性。
    • SPTS v2引入了一种新的实例分配解码器(IAD)和并行识别解码器(PRD),通过一种简单而有效的信息传输方法,共享相同的参数。SPTS v2显著减少了序列的长度,优于会议版SPTS,参数更少,推理速度快19倍。
    • 在五个基准上进行的大量实验,即ICDAR 2013 , ICDAR 2015 , TotalText , SCUT-CTW1500和Inverse-Text,涉及水平和任意形状的文本,证明了我们的方法与之前最先进的技术相比具有竞争力。

RELATED WORK

  • 在过去的几十年里,针对场景文本识别的各种场景,提出了多种标注样式,包括以笔划级或字符级边界框表示的字母、以矩形表示的水平文本、以四边形表示的多方向文本[、以多边形表示的任意形状文本、以及其他新颖的表示,如单点或非点。

Character-level Scene Text Spotter

  • 在早期阶段,许多经典方法需要字符级注释来训练模型。Wang等使用基于HOG特征的字符分类器来读取文本。Bissacco等将DNN与HOG特征相结合,构建了用于文本识别的字符分类器系统。后续工作进一步发展了卷积神经网络作为字符分类器。以上方法使用字符级注释调整为水平文本。一些研究者试图扩展角色级场景文本识别器来处理任意形状的文本。Mask TextSpotter设计了字符分割模块对字符进行定位和识别;它的改进版本[Mask TextSpotter: An end-to-end trainable neural network for spotting text with arbitrary shapes, Mask TextSpotter v3: Segmentation proposal network for robust scene text spotting]显著降低人工标注的成本。CharNet提出了一个单阶段框架,通过使用字符级注释来提高文本识别性能。CFRATS定位字符区域,并将字符区域的信息发送给基于注意力的识别器。MANGO开发了一个位置感知掩码注意模块,为字符生成位置掩码,并使用序列解码器获得识别结果。

Rectangle-based Scene Text Spotter

  • 基于矩形的场景文本识别器在任务的前期起着重要的作用。Weinman等提出了一种文本识别系统,该系统首先生成文本建议,然后使用独立的单词识别模型提取文本内容。Li等采用了一种通用的目标检测器框架Faster R-CNN来检测矩形文本,并通过共享主干连接检测器和基于ctc的[Connectionist temporal classification]识别器。其增强版[Towards end-to-end text spotting in natural scenes]配备了2D注意力识别模块,用于处理不规则文本。Gupta等采用FCRN检测矩形框,并使用词分类器作为识别器。最近,Liao等提出了一种基于TextBoxes和CRNN的文本识别系统,分别用于单词的定位和识别。Shi等使用TextBoxes作为检测器获得检测结果,并提出了一种新的识别器ASTER,该识别器采用薄板样条变换作为纠错网络对识别图像进行纠错。

Multi-oriented Scene Text Spotter

  • 最近的方法是开发多方向场景文本定位器来处理具有复杂形状的文本实例。Busta等提出了一种Deep TextSpotter,它使用YOLOv2作为检测器来检测多方向文本,并使用基于ctc的识别器将识别特征转换为字符序列。FOTS提出了一种新的RoI操作,称为RoI Rotate,将面向文本识别特征从四边形检测结果转换为规则特征。He等人提出了一个类似的框架来定位文本的实例。他们进一步开发了一种文本对齐方法,将旋转的特征采样到水平特征中,并使用基于注意力的识别器来提高性能。

Arbitrarily-shaped Scene Text Spotter

  • 由于文本的形状、颜色、字体和语言的多样性,对任意形状的场景文本进行识别是一项具有挑战性的工作,越来越受到人们的关注。在这方面,文本通常用任意形状的多边形进行注释。最近,Qin等提出了一种RoI Masking方法来抑制识别特征的背景噪声,并使用基于二维注意力的识别器从识别特征中读取任意形状的文本。Wang等人基于快速探测器PAN设计了一个定位系统,命名为pa++。TextNet预测四边形文本建议来定位文本,并开发了一个视角RoI转换过程来纠正四边形特征。Feng等将文本实例描述为一系列四边形,并提出了RoISlide将四边形连接起来进行文本识别。Wang等对定向矩形框进行检测,并将定向矩形框转化为边界。边界作为薄板样条变换的基准点,将不规则文本校正为规则文本。Qiao等人使用了类似的方法,他们开发了一个分割检测器来生成基点。ABCNet使用了一种单级检测器,它结合了参数化的Bezier曲线来表示文本实例,以及一种新的RoI操作(BeizerAlign),用于将任意形状的文本特征采样为水平格式。其改进版本[ABCNet v2: Adaptive bezier-curve network for real-time end-toend text spotting]采用BiFPN作为主干,并使用基于注意力的识别器进一步提高性能。SwinTextSpotter进一步利用了检测和识别之间的一种新的协同方式,称为识别转换模块,使检测在识别损失的情况下可区分。TESTR基于deform - detr设计了单编码器双解码器结构,去掉了手工设计的组件。ABINet++使用了ABCnetV2中的框架,并进一步使用具有自治、双向和迭代语言模型的识别器[Read like humans: Autonomous, bidirectional and iterative language modeling for scene text recognition]来提高性能。

Point-based and Transcription-only Scene Text Spotter

  • 最近的几项研究探索了使用转录数据来开发或辅助文本识别系统。例如,TTS 在deform - detr中集成了一个RNN识别头,并使用匈牙利算法仅使用文本转录注释来增强模型。同样,TOSS 利用语音注释的纯转录数据来训练模型。得益于其提出的从粗到细的交叉注意机制,TOSS可以在不需要检测数据的情况下生成粗文本掩码。
  • 我们之前的工作,单点文本识别器使用自回归 Transformer 为所有文本实例创建长序列,这也可以用于单点和仅转录的训练。然而,它面临着推理速度的限制,特别是对于具有许多文本实例的图像。为了克服这些挑战,我们开发了SPTS v2,该模型通过巧妙地增强自回归预测和提高效率,显著提高了推理速度和性能

METHODOLOGY

Preliminary

  • 大多数现有的文本定位算法都需要定制模块来桥接检测和识别块,其中主干特征被裁剪并在检测和识别头之间共享,例如BezierAlign , RoISlide和roimasks。受Pix2Seq的启发,单点文本识别器(SPTS)将文本识别问题作为语言建模任务,基于一个直观的假设,如果一个深度模型知道目标是什么和在哪里,它可以被教导通过所需的序列来告诉结果。SPTS使用自回归Transformer为所有文本实例生成长序列,有效地管理无序实例。尽管它很有效,但它的推理速度受到了很大的影响,特别是当图像包含大量文本实例时。

SPTS v2

  • 为了提高推理速度和整体性能,SPTS v2的设计具有实例分配解码器(IAD)和并行识别解码器(PRD),每个解码器处理该过程的不同方面。IAD对综合序列中的每个文本实例自动回归预测“指标”(如x和y坐标),而PRD利用这些指标,能够对相应的文本识别结果进行并行预测。IAD和PRD都采用Transformer解码器结构。为了实现参数约简,两个模型的解码器共享参数,并由检测和识别任务的梯度来监督。最初,共享解码器作为IAD运行,预测“指标”。随后,结合一种新的信息传输方法,将共享解码器转换为PRD,从而允许对文本识别结果进行并行预测。这种信息传输方法将位置嵌入与IAD特征相融合,从而促进了识别特征的梯度流。
  • 具体而言,如下图所示,每张输入图像首先通过CNN和Transformer编码器进行编码,提取视觉和上下文特征。然后,捕获的特征由Transformer解码器解码,其中以自动回归的方式预测令牌。与以前的算法不同,我们进一步将边界框简化为位于文本实例中第一个字符左上角或文本实例中心的角点,如下图所示。得益于这种简单而有效的表示,可以避免基于先验知识精心设计的模块,例如基于分割的方法中使用的分组策略和基于框的文本定位器中配备的特征采样块。
    • 在这里插入图片描述

    • 拟议的SPTS v2的整体框架。视觉和上下文特征首先由一系列CNN和Transformer编码器提取。然后,这些特征分别通过IAD和PRD自动回归解码成包含定位和识别信息的序列。对于IAD,它预测同一序列内文本实例的所有中心点的坐标,而对于PRD,识别结果是并行预测的。注意,IAD与PRD共享相同的参数,因此没有为PRD阶段引入额外的参数。

Sequence Construction

  • 为了用序列表示目标文本实例,需要将连续描述(例如,边界框)转换为离散空间。为此,我们将边界框简化为单个点,并使用变长转录代替单标记对象类别。SPTS的主要局限性是序列长度过长会显著降低推理速度。这是因为对于单词级和行级文本实例,识别结果通常固定为最大长度,分别为25和100。为此,在SPTS v2中,我们设计了实例分配解码器(IAD)和并行识别解码器(PRD)来克服这些限制。

Instance Assignment Decoder

  • 文献[SPTS],[Pix2Seq]表明自回归解码器是有效的;然而,直观的是,考虑到文本实例的长序列,这是一个耗时的解决方案。为了提高效率,SPTS v2通过共享相同的Transformer解码器,将检测和识别分为两个阶段的工作流程。第一阶段称为实例分配解码器(IAD)。在第一阶段,SPTS v2只对每个文本实例的中心点进行解码,直到序列结束。一个直观的流水线如下图所示。

    • 在这里插入图片描述

    • IAD (Instance Assignment Decoder)的输入输出顺序。每一组x和y表示不同的文本实例。

  • 具体来说,文本实例中心点的连续坐标被统一离散为 [ 1 , n b i n s ] [1,n_{bins}] [1,nbins] 之间的整数,其中 n b i n s n_{bins} nbins 控制离散程度。例如,长边为800像素的图像只需要 n b i n s = 800 n_{bins} = 800 nbins=800 就可以实现零量化误差。请注意,文本实例的中心点是通过对上中点和下中点取平均值得到的,如图(b)所示。到目前为止,文本实例可以由三部分组成的序列表示,即[x, y, t],其中(x, y)是离散坐标,t是将在PRD中预测的转录文本。值得注意的是,转录本身是离散的,即每个字符代表一个类别。

    • 在这里插入图片描述

    • 用不同的位置指示点。

  • 和 标记被插入到序列的头部和尾部,分别表示序列的开始和结束。因此,给定一个包含N个文本实例的图像,构造的序列将包含2N个离散的标记,其中文本实例将随机排序。事实上,如之前的研究[Pix2Seq]所示,可以有效地学习随机排序的文本实例,从而在不明显的情况下实现对不同隐藏特征的标签分配,巧妙地避免了像使用二部匹配那样的显式标签分配,而二部匹配在DETR系列中起着至关重要的作用。实际上,与其他标签赋值相比,实例赋值直观上更有效。密集标签分配方法使用非最大抑制(NMS)选择合适的检测结果进行识别。二部匹配标签分配方法使用最大实例数来检测和识别文本,这消耗了空文本实例的额外计算。

Parallel Recognition Decoder

  • 在IAD的帮助下,我们分离了不同的文本实例。在并行识别解码器中,可以同时获得不同文本实例的内容。与一般的对象检测将对象划分为固定的类别不同,文本内容识别是一个目标序列长度可变的序列分类问题。这可能会导致不对齐问题,并可能消耗更多的计算资源。为了消除这些问题,我们首先将文本填充或截断为固定长度K,其中< pad >令牌用于填补较短文本实例的空缺。此外,假设字符有ncls类别(例如,英语字符和符号为97),用于标记序列的字典的词汇量大小可以计算为ncls + 3,其中额外的三个类别用于, 和标记。根据经验,在我们的实验中,我们将K和 n b i n s n_{bins} nbins 分别设置为25(对于SCUT-CTW1500为100)和1000。此外, n t i n_{ti} nti 的最大值被设置为60,这意味着包含超过60个文本实例的序列将被截断。PAD的图示如下图所示。

    • 在这里插入图片描述
  • 并行识别解码器(PRD)的输入和输出序列。每一行代表不同的文本实例。给定信息传输产生的特征,并行预测识别结果,直到达到最大长度或EOS符号。

  • 我们假设一张图像包含N个文本实例,每个实例包含最大数量的K个字符。SPTS需要Nv1个循环来预测该图像,其中Nv1定义为:

    • N v 1 = ( 2 + K ) ⋅ N + 1 , ( 1 ) N_{v1}=(2+K)·N+1,(1) Nv1=(2+K)N+1,(1)

    • 而对于SPTS v2,它只需要Nv2 for循环,其中Nv2为:

    • N v 2 = 2 ⋅ N + K + 1 N_{v2}=2·N+K+1 Nv2=2N+K+1

    • K·(N−1)还原。在我们的实现中,N和K分别被设置为60和25。在这种情况下,SPTS需要1,621个自回归循环,而SPTS v2只需要146个循环,循环数量减少了91.0%(1475/1621)。实际上,在PRD中,如果所有实例都满足序列结束符号,SPTS v2也可以提前结束。通过PRD,可以显著提高推理速度。

Information Transmission

  • 这两种解码器的参数是共享的,并由检测和识别梯度来监督。然而,在不同的文本实例之间存在信息丢失。在SPTS中,可以通过识别令牌感知之前检测到的文本信息,并传递文本识别的梯度来监督不同文本实例的预测。这种交互对于SPTS v2中的并行识别解码器找到文本的正确位置也很重要。为了解决这个问题,我们提出了一种信息传递的方法。形式上,我们首先提取隐藏文本实例位置特征(feat的缩写)和相应的文本位置预测结果(如x1, y1)。然后,我们将文本实例位置结果转换为嵌入,然后将其添加到文本实例位置特征中。该过程可表述如下:

    • 在这里插入图片描述
  • 在信息传递的帮助下,后期文本识别的梯度可以通过特征或特征传递到不同的文本实例中,并且PRD阶段的识别令牌可以通过特征感知先前检测到的文本信息。PRD将这些先验信息作为指示解码器的前两个查询,从而并行识别所有文本实例。在实践中,这种直接的传输对SPTS v2至关重要。

Model Training

  • 由于训练SPTS v2是为了预测令牌,所以只需要在训练时最大化似然损失,可以写成:

    • L = m a x ∑ i = 1 L w i l o g P ( s ˉ ∣ I , s 1 : i ) L=max\sum_{i=1}^Lw_ilogP(\bar s|I,s_{1:i}) L=maxi=1LwilogP(sˉI,s1:i)

    • 其中 I 是输入图像, s ˉ \bar s sˉ 是输出序列,s是输入序列,L是序列的长度,wi 是第 i 个标记的可能性的权重,经验设置为1。对于IAD和PRD,它们共享相同的Transformer,只需要交叉熵损失,保持简洁的管道

Inference

  • 在推理阶段,SPTS v2首先顺序预测 IAD 中的位置令牌,直到序列 令牌结束。然后,信息传输将融合检测特征,并行自动回归预测文本内容。预测的序列随后将被分成多个片段。因此,标记可以很容易地转换为点坐标和转录,从而产生文本定位结果。此外,对相应段中所有令牌的可能性进行平均并分配为置信度分数,以过滤原始输出,有效地消除冗余和假阳性预测

EXPERIMENTS

  • 我们报告了五个基准的实验结果,包括水平数据集ICDAR 2013,多方向数据集ICDAR 2015,任意形状数据集TotalText和SCUT-CTW1500,以及逆文本数据集。

Datasets

  • 曲线合成数据集150k。通过对合成样本进行预训练,可以提高文本识别器的性能。根据之前的工作,我们使用由SynthText工具箱生成的150k合成图像,其中包含大约三分之一的弯曲文本和三分之二的水平实例。
  • ICDAR 2013包含229个训练样本和233个测试样本,而图像主要是在 controlled environment 中捕获的,其中大多数文本都是水平呈现并明确聚焦的。
  • ICDAR 2015由偶然捕获的1000张训练图像和500张测试图像组成,其中包含在复杂背景下呈现的多方向文本实例,在模糊、扭曲等方面有很强的变化。
  • Total-Text包括1255个训练图像和300个测试图像,其中每个图像中至少有一个弯曲样本,并在单词级别用多边形边界框进行注释。
  • SCUT-CTW1500是另一个广泛使用的基准,用于识别任意形状的场景文本,它涉及1,000和500张图像进行训练和测试。文本实例在文本行级别由多边形标记。
  • Inverse-Text是最近提出的一个数据集,主要关注任意形状的场景文本,其中约40%的逆类实例包含500个测试图像。根据之前的工作,我们使用在Total-Text上训练的模型测试该数据集。

Evaluation Protocol

  • 现有的文本定位任务评估协议包括两个步骤。首先,计算ground-truth (GT)与detection box之间的交集over union (IoU)分数;只有当IoU分数大于指定的阈值(通常设置为0.5)时,方框才匹配。然后,将每个匹配的边界框内的识别内容与GT转录进行比较;只有当预测文本与GT相同时,它才会有助于端到端准确性。然而,在该方法中,每个文本实例由单个点表示;因此,基于IoU的评估度量不能用于度量性能。同时,比较基于边界盒的方法和基于点的方法的定位性能可能是不公平的,例如,直接将边界盒内的点视为真阳性可能会高估检测性能。为此,我们提出了一个新的评估指标,以确保与现有方法进行相对公平的比较,该指标主要考虑端到端准确性,因为它反映了检测和识别性能(故障检测通常会导致错误的识别结果)。

  • 具体如下图所示,我们修改了文本实例匹配规则,将IoU度量替换为距离度量,即选择与GT盒中心点距离最近的预测点,并使用与现有基准测试相同的全匹配规则测量识别结果。只有一个置信度最高的预测点才会与基本事实相匹配;其他的则被标记为假阳性

    • 在这里插入图片描述

    • 基于点的评估度量的说明。钻石是预测的点,圆圈代表GT。

  • 为了探索所提出的评价协议是否能够真实地代表模型的精度,下表比较了ABCNetv1和ABCNetv2在Total-Text和SCUT-CTW1500上的端到端识别精度,即常用的基于IoU的边界框度量和所提出的基于点的度量。结果表明,基于点的评价方案可以很好地反映性能,其中基于盒的评价值与基于点的评价值之间的差异不超过0.5%。例如,ABCNetv1模型在SCUT-CTW1500数据集上在这两个指标下分别获得了53.5%和53.0%的分数。因此,在接下来的实验中,我们使用基于点的度量来评估所提出的SPTS v2。

    • 在这里插入图片描述

    • 基于点的度量和基于多边形的度量评估端到端识别性能的比较。使用官方代码复制结果。

Implemented Details

  • 该模型首先在包含Curved Synthetic dataset 150k、MLT-2017、ICDAR 2013、ICDAR 2015和Total-Text的组合数据集上进行150 epoch的预训练,由AdamW进行优化,初始学习率为5 × 10−4,学习率线性衰减为1 × 10−5。预训练后,模型在每个目标数据集的训练分割上再进行200次微调,固定学习率为1 × 10−5。整个模型在16个NVIDIA A100 GPU上进行分布式训练,每个GPU的批处理大小为8个。注意,有效批大小为64,因为在minibatch中对每个图像执行两个独立的增强。此外,我们使用ResNet50作为骨干网,而Transformer编码器和解码器都由6层8头组成。

  • 关于 transformer 的架构,我们采用了Pre-LN Transformer。在训练过程中,输入图像的短尺寸随机调整为640到896(间隔为32)的范围,同时保持长侧小于1,600像素,遵循之前的方法。采用随机裁剪和旋转进行数据增强。在推理阶段,我们按照之前的工作,将短边的大小调整为1000,同时保持长边的长度小于1824像素。

  • 为了提高模型输出的准确性和可靠性,我们制定了一个三步程序来过滤冗余的预测。首先,我们导出检测令牌和识别令牌的分类置信度分数。然后,我们计算这些令牌的平均置信度得分。在最后一步,我们根据这个平均分数设置一个阈值,过滤掉低于它的预测。通过这种方法,可以减少大多数误报

Ablation Study

  • 我们首先进行消融研究,以评估不同设计的SPTS v2。因为PRD需要启动标记来并行地预测识别结果,至少在基线设置中需要隐藏特征(称为Feat)或位置嵌入(称为Token)。结果如下表所示。我们可以看到,如果不共享IAD和PRD的参数,就Total-Text数据集的Full指标而言,性能会下降1.4%。此外,根据表中的第1、2和4行,集成Token和Feat可以进一步提高性能,例如,在Full度量方面,分别比单独使用Token和Feat高3%和5.5%。结果表明了信息传递的重要性。我们使用预训练的模型来测试结果。

    • 在这里插入图片描述

    • 基于设计的全文消融研究。“None”表示没有词典。“Full”表示我们使用了测试集中出现的所有单词。Feat和token分别表示等式5右侧的项目。共享表示共享IAD和PRD的参数。

  • 直观地说,边界框所包围区域中的所有点都应该能够表示目标文本实例。为了探讨差异,我们进行了消融研究,使用三种不同的策略获得指示点,即通过平均上下中点获得的中心点,左上角和盒子内的随机点。需要注意的是,我们在这里使用相应的ground-truth来计算距离矩阵来评估性能,以保证公平的比较,即左上角使用到ground-truth左上角点的距离,中央使用到ground-truth中心点的距离,随机使用到ground-truth多边形最近的距离。

  • 结果如下表所示,其中左上角的结果最差。随机的结果接近中心,在无指标方面大约差1%。虽然中心点比其他格式表现出最好的性能,但这表明性能对点标注的位置不是很敏感。

    • 在这里插入图片描述

    • Ablation study of the position of the indicated point.

  • 在序列构建过程中,通过将点坐标修改为边界框的位置,该方法可以很容易地扩展到生成边界框。在这里,我们进行消融研究,仅通过改变文本实例的表征来探索影响。具体来说,研究了四种变体,包括:1)Bezier曲线边界框;2)矩形边界框;3)指示点;4) non-point。注意,对于非点表示,我们只使用SPTS实现结果,因为使用SPTS v2很难实现,因为SPTS v2需要预测PRD阶段的位置。

  • 由于我们在这里只关注端到端性能,为了尽量减少检测结果的影响,每种方法都使用相应的表示来匹配评估中的GT框。也就是说,单点模型使用第4.2节介绍的评价指标,即点之间的距离;SPTS v2-Rect的预测与多边形标注的限定矩形匹配;SPTS v2-Bezier采用匹配多边形框的原始度量;非点的评价指标可参考第5.1节。如下表所示,SPTS v2点在TotalText和SCUT-CTW1500数据集上都实现了最佳性能,大大优于其他表示。这样的实验结果表明,一个低成本的标注,即指示点,能够为文本标记任务提供监督。在此,为了使这些发现更有根据,我们进一步提供如下分析:

    • 在这里插入图片描述

    • 不同形状边界框的对比。Np是通过不同表示描述文本实例的位置所需的参数数量。训练计划的2倍。

    • SPTS-Rect和SPTS-Bezier的结果使用与sptpoint相同的训练计划得到。为了进一步探讨前者是否需要更长的训练时间,我们将下表中的SPTS-Point与2× epoch训练的SPTSBezier进行了比较。可以看出,2× epochs 的SPTS-Bezier并没有明显优于1×次元的SPTS-Bezier,仍然不如1×次元的SPTS-Point。此外,使用较长的训练计划甚至会导致SCUT-CTW1500在SPTS-Bezier的None指标上的性能降低,这表明训练计划可能不是这种情况。

    • 为了进一步消除不同度量的影响,我们也直接采用矩形或bezier曲线包围框内的中心点来测试与我们方法相同的点度量。结果如下表所示,方差仍然与表1的结论一致,即点度量的结果与基于框或多边形的度量的结果在None度量方面接近。

      • 在这里插入图片描述

      • 基于点的度量和基于盒的度量评估端到端识别性能的比较。

    • 从之前的场景文本识别方法中我们可以看到,有时即使检测结果不准确,如缺少字符的某些区域,识别结果仍然是准确的,如下图顶部所示。这是因为文本识别的对齐基于特征空间,其中裁剪的特征具有足够的文本内容接受域。这种现象也可以支持我们的发现:如下图底部所示,由于图像在我们的方法中是全局编码的,因此一个近似的位置可能足以让模型捕获附近所需的特征,这可能进一步释放Transformer的功率。

    • 在这里插入图片描述

    • 接受野对最终的识别是有益的。Upper: ABCNet v2的结果。下:我们方法的粗糙感受野。

  • 如第3节所述,文本实例按照构造的序列随机排序。在这里,我们进一步研究文本实例顺序的影响。不同排序策略在Total-Text和SCUT-CTW1500上的性能如下表所示。“Area”和“Dist2ori”表示文本实例分别按面积和到左上角原点的距离降序排序。“自顶向下”表示文本实例从上到下排列。可以看出,我们的方法的随机顺序达到了最好的性能。尽管结果可能与直觉相反,但随机有序设置的效果最好;然而,这与pix2seq模型的结果是一致的,当使用集合顺序时,pix2seq模型会遇到丢失对象的问题。在这种情况下,随机顺序可能会潜在地解决这个问题,因为它可能会在稍后捕获那些丢失的对象。由于在不同的迭代中对相同的图像构建了不同的序列,因此经验上使模型更加鲁棒。

    • 在这里插入图片描述

    • 序列构建中文本实例不同排序策略的消蚀研究。

  • 我们进一步对IAD和PRD的共享解码器层以及我们的Total-Text框架的各种主干进行了深度消融研究,如下表所示。我们观察到,使用ResNet-34作为主干,在None指标方面超过ResNet-18 4.1%。使用ResNet-50作为主干可以比ResNet-34进一步提高3.8%。此外,我们发现解码器层数对不同主干网的性能有很大的影响。例如,使用ResNet-18、ResNet34和ResNet-50作为主干,将解码器层的数量从6层减少到1层,就Total-Text数据集的None指标而言,性能下降了49.1%、42%和15.2%

    • 在这里插入图片描述

    • 端到端识别结果和全文本检测结果。“None”表示没有词典。“Full”表示我们使用了测试集中出现的所有单词。解码器1表示使用一层解码器而不是使用六层。

  • 在本节中,我们对模拟的带噪注释数据进行实验,进一步证明SPTS v2的潜力。对于ABCNet v2,我们首先通过对 GT 多边形点标注的随机扰动,在CTW1500的训练数据中引入噪声。将随机扰动应用于CTW1500数据集上多边形点的 GT 值训练标注。对于SPTS v2,我们首先计算 GT 多边形点注释的中心点。按照类似的过程,我们对CTW1500数据集的中心点施加随机扰动。随后,使用扰动标注对ABCNet v2和SPTS v2进行了训练。结果如下表所示,SPTS v2的退化约为0.6%,而ABCNet v2的退化约为2.4%,干扰半径为5,这可以强调SPTS v2对噪声的鲁棒性。干扰半径为10时,SPTS v2下降约2.0%,ABCNet v2下降约2.6%。我们注意到许多文本实例具有较短的高度,中心点的干扰半径为10可能导致它落在文本实例之外

    • 在这里插入图片描述

    • SCUT-CTW1500上模拟噪声注释数据结果的消融研究。“None”表示没有词典。“Full”表示我们使用测试集中出现的所有单词。

Comparison with Existing Methods on Scene Text Benchmarks

  • 下表将本文方法与现有方法在广泛使用的ICDAR 2013基准上进行比较。我们的方法在“强”词汇下实现了最佳性能,同时在“弱”和“一般”指标上实现了相当的性能。注意SPTS v2的速度比以前最先进的基于单点的方法快20倍,参数更少

    • 在这里插入图片描述

    • ICDAR 2013的端到端识别结果。“S”、“W”和“G”分别代表对“Strong”、“Weak”和“Generic”词汇的识别。SPTS v2比SPTS快19倍。

  • ICDAR 2015数据集的定量结果如下表所示。所提出的方法与最先进的方法之间存在性能差距。该方法直接基于低分辨率的高级特征预测文本序列,没有RoI操作,无法准确识别微小文本。定量地,如果在评估时忽略面积小于3000(调整大小后)的文本,ICDAR 2015上通用词汇的F-measure将提高到77.5。此外,目前ICDAR 2015上最先进的方法通常在训练和测试期间采用更大的图像尺寸。例如,测试图像的短边被调整为1440像素,而长边则短于4000像素。如下表所示,在较大的测试规模下,SPTSv2在ICDAR 2015上的性能要远远好于较小的测试规模

    • 在这里插入图片描述

    • ICDAR 2015不同测试尺度的消融研究。“S”、“W”和“G”分别代表对“Strong”、“Weak”和“Generic”词汇的识别。

  • 我们进一步将我们的方法与包含任意形状文本的现有基准方法进行比较,包括Total-Text和SCUT-CTW1500。如下表所示,对于基于单点的方法,我们的方法达到了最先进的性能,大大优于TOSS。此外,从下表可以看出,我们的方法在基于长文本行的SCUT-CTW1500数据集上取得了较好的结果,这进一步证明了单点可以足够强地指导文本的识别。对于具有挑战性的逆文本,我们的方法在与之前的方法[SwinTextSpotter]相同的设置下进一步取得了优异的性能,在“None”和“Full”指标方面分别比之前的技术提高了8.0%和7.0%,证明了其在处理旋转任意形状文本方面的鲁棒性。

    • 在这里插入图片描述

    • 在Total-Text, SCUT-CTW1500, ICDAR2015和Inverse-Text上的端到端文本识别结果。“None”表示没有lexicon free。“Full”表示我们使用测试集中出现的所有单词。“S”、“W”和“G”分别代表对“强”、“弱”和“通用”词汇的识别。

  • 总之,在几个基准测试中,与以前的文本检测器相比,所提出的方法可以获得具有竞争力的性能。特别是在两个曲线数据集上,即SCUT-CTW1500,本文方法的性能大大优于最近提出的一些方法。我们的方法能够在任意形状的文本上获得更好的准确率的原因可能是:(1)我们的方法抛弃了基于先验知识设计的特定任务模块(如RoI模块);因此,识别精度与检测结果解耦,即即使检测位置移位,我们的方法也能获得可接受的识别结果。另一方面,输入到识别模块的特征在训练时是基于 ground-truth 位置采样,而在测试时是基于检测结果采样,这就导致了特征的错位。然而,通过以序列建模的方式处理定位任务,该方法消除了这些问题,从而在基于任意形状的特别长的文本行数据集上显示出更强的鲁棒性。

  • 5个数据集的部分可视化结果如下图所示。从图中可以看出,该方法在弯曲、密集、高度旋转和长文本中显示出鲁棒性。在第二行最右边的图像中,多方向密集的长文本可能导致重叠,从而导致基于边界框的方法遗漏实例。然而,使用我们的方法,即使用单点进行位置指示,这种干扰自然会减少,从而能够准确地发现大多数实例。

    • 在这里插入图片描述

    • 定性结果对场景文本基准。图像选自Total-Text(第一行)、SCUT-CTW1500(第二行)、ICDAR 2013(第三行)、ICDAR 2015(第四行)和Inverse-Text(第五行)。

DISCUSSION

  • 我们进一步进行实验来综合评价我们的方法的局限性和其他性质。

Transcription-only Text Spotting

  • 正如TTSweak提出的那样,一种方法在仅使用合成数据预训练的转录微调中显示出有希望的结果。我们进一步证明,我们的方法也可以在没有位置标注监督的情况下收敛。我们通过在合成数据和真实数据中从构建的序列中去除指示点的坐标,开发了一个无点文本定位(NPTS)模型。下表列出了我们的模型与其他方法的比较。在评价度量方面,我们用预测和GT转录之间的编辑距离矩阵代替预测和ground truth (GT)点之间的距离矩阵。其他方面与第4.2节中概述的一致。当我们使用来自真实数据的位置信息时,SPTS v2提供了最佳性能。在仅转录的上下文中,TTS优于TOSS和NPTS模型。这可能归因于免费获得的合成数据中的位置信息提供了有价值的监督,而TOSS和NPTS仅依赖于合成数据转录。这表明位置指示对文本识别任务的重要性。在不使用来自合成数据的位置信息的场景中,NPTS的性能优于TOSS。下图显示了NPTS的定性结果,表明该模型已经获得了仅基于转录文本隐式定位文本的能力。
    • 在这里插入图片描述

    • SPTS和NPTS模型端到端识别结果的比较。 L o c s y n t h Loc_{synth} Locsynth 表示仅对合成数据使用位置监督,不需要手动标注。另一方面, L o c r e a l Loc_{real} Locreal 表示对真实数据使用位置监管。

Failure Cases

  • 我们对失效结果进行了定性误差分析。下图给出了一些代表性误差的可视化。在图(b)的情况下,由于文本中严重的透视畸变和照明造成的干扰而产生误差。在图(a)中,对某些旋转字符的识别出现错误。例如,在最右边的文本中,字符“U”被错误地识别为“I”。在图©中,我们的方法成功检测到顶部的反向文本;但是,对于这个特定的情况,它无法生成任何识别结果。对于图(d)中的情况,由于存在分隔字符的句号符号而产生错误。此外,在图(e)中,我们的方法将一个文本分成两个,导致错误的识别预测。虽然识别不受文本边界的约束,但不同文本实例之间的错误区分最终会导致文本识别的失败。在图(f)中,模型预测的识别结果与视觉数据完全不一致,这可以根据之前的预测推断出来。此外,所提出的方法在处理一些艺术词汇时仍然存在困难,如图(g)所示。对于水平排列的垂直文本,由于缺乏训练样本,我们的方法无法识别文本,如图(i)所示。
    • 在这里插入图片描述

    • NPTS模型在几个场景文本基准上的定性结果。图片选自Total-Text(第一行)、SCUT-CTW1500(第二行)、ICDAR 2013(第三行)和ICDAR 2015(第四行)。最好在屏幕上观看。

CONCLUSION

  • 我们提出了SPTS v2,这是一种新的场景文本识别范式,它表明极低成本的单点标注可以成功地用于训练强大的文本识别器。SPTS v2基于一个简洁的基于transformer的框架,在该框架中,文本的检测和识别被简单地表述为语言序列,只需要交叉熵损失,不需要特征对齐,也不需要额外的后处理策略。它包括一个实例分配解码器(IAD),保留了统一同一序列内所有文本实例的优点;一个并行识别解码器(PRD)以及简单而有效的信息传输方法,可以显着减少序列的长度。注意,IAD和PRD共享完全相同的参数。使用更少的参数,SPTS v2优于以前最先进的单点文本观测者(SPTS),同时推理速度提高了19倍。大量的实验表明,这种基于点的方法仍然可以获得有竞争力的结果。SPTS v2的一个关键优势是它能够大大减少所需的序列长度。其训练方法的直接性质使其特别适合于多任务场景,使不同的多模式数据能够通过一个内聚的标记到语言管道进行处理。使用更大的模型来研究这个问题可能会为探索提供一个有希望的途径。

  • 信息茧房则是由于个人或群体对信息选择的偏见和倾向,导致只接触和相信与自己立场相符的观点,形成一个封闭的信息环境。这个观念本质上来自于传播学中的“自我强化”概念,也就是说人们天生喜欢“强化已有的认知,而非自我颠覆”。在短视频平台中则会通过算法和标签推送把人们的“自我强化"倾向值拉满,在这种时候,人们主要接触和接受的就会基本都是与自己观点相同的意见与信息,考虑到大部分人都不会有“兼听则明"的能力,也就自然忽视掉了与自己观点相悖的信息。在这种情况下,就可能会号致认知偏差、信息过滤和信息孤岛等问题进一步加重,这些问题则会进一步阻碍多样性观点下的理解与对话。

  • 如果你喜欢上一个人,但没有实质进展,不妨让他帮你忙。比如借书、借文具,借游戏等等,当然这些都需要还给对方。这些做完后,对方会主动关心你。比起被别人帮助,人们更愿意帮助别人,并对受助者产生好感。让别人喜欢你的最好方式,不是帮助他们,而是让他们来帮助你,这便是富兰克林效应。别人帮助你了之后,记得常怀感恩的心。滴水之思,当涌泉相报,这条无论是用于朋友还是上司都适合。请别人帮忙之后,在生活中可以常常想到对方,可以是顺手多买的水果咖啡等,节日要给对方一点小礼物,让对方知道你是个懂得感恩的人,关系自然就会拉近。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

羞儿

写作是兴趣,打赏看心情

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值