Language Matters: A Weakly Supervised Vision-Language Pre-training Approach for Scene Text Detection and Spotting
Abstract
- 最近,视觉语言预训练 (VLP) 技术通过联合学习视觉和文本表示,极大地帮助了各种视觉语言任务,这在直观上有助于光学字符识别 (OCR) 任务,因为场景文本图像中含有丰富的视觉和文本信息。然而,这些方法不能很好地处理 OCR 任务,因为实例级文本编码和图像文本对获取(即图像和其中捕获的文本)都很困难。
- 本文提出了一种弱监督预训练方法 oCLIP,它可以通过联合学习和对齐视觉和文本信息来获取有效的场景文本表示。我们的网络由一个图像编码器和一个字符感知文本编码器组成,分别提取视觉和文本特征,以及一个视觉文本解码器,它对文本和视觉特征之间的相互作用进行建模,以学习有效的场景文本表示。通过学习文本特征,预训练模型可以很好地关注图像中的文本并具有字符感知能力。
- 此外,这些设计能够从弱注释文本(即没有文本边界框的图像中的部分文本)中学习,从而大大减轻了数据注释约束。 在 ICDAR2019-LSVT 中对弱注释图像进行的实验表明,我们的预训练模型在将其权重分别转移到其他文本检测和识别网络时将 F 分数提高了 +2.5% 和 +4.8%。此外,所提出的方法在多个公共数据集上的表现始终优于现有的预训练技术(例如,Total-Text 和 CTW1500 分别提高了 +3.2% 和 +1.3%)。
- 论文地址:[2203.03911] Language Matters: A Weakly Supervised Vision-Language Pre-training Approach for Scene Text Detection and Spotting (arxiv.org)
- 项目地址:GitHub - bytedance/oclip
- 被ECCV 2022录为oral的论文“Language Matters:A Weakly Supervised Vision-Language Pre-training Approach for Scene Text Detection and Spotting”。该论文提出了一种弱监督的预训练方法oCLIP,该方法通过联合学习和对齐视觉和文本信息来获得有效的场景文本表示,可以使用弱标注的文本进行预训练(仅对图片中的部分文字进行文字标注,且不需要框标注)。
Introduction
-
光学字符识别 (OCR)(包括场景文本检测、识别和识别)近年来在计算机视觉和深度学习研究界引起了越来越多的关注,因为它在多语言翻译、自动驾驶等领域有着广泛的应用。现有的大多数 OCR 技术都遵循通用的计算机视觉流程,首先从输入图像中提取视觉特征,然后执行特征回归或分类以进行文本检测或识别,如图 1 (a) 所示。 然而,我们人类阅读文本时通常不仅利用每个文本的视觉特征,还利用我们记忆中的语言知识。例如,我们通常利用相应文本语言的知识更快、更轻松地定位和阅读文本。因此,视觉和文本信息对于从自然场景图像中稳健地读取文本都很有用。
-
-
图 1. 通用光学字符识别 (OCR)、视觉语言预训练 (VLP) 管道和所提出的管道的说明:通用 OCR 管道仅关注图像中的视觉特征。此外,通用 VLP 模型从输入图像和相应的句子级文本中提取图像和语言特征,并通过多模态编码器对所有视觉和文本特征之间的交互进行建模。不同之处在于,所提出的模型从图像中的文本实例中提取实例级文本特征。它对每个文本实例与其提取的图像特征之间的交互进行建模,这些特征可以仅通过弱监督进行训练(即图像中没有文本边界框的部分文本)。我们预训练的模型权重可以直接转移到各种场景文本检测器和检测器,性能显著提高。
-
-
最近,许多视觉语言预训练 (VLP) 技术 中研究了联合学习视觉和文本表示,并且它极大地促进了各种视觉语言 (VL) 任务,例如视觉问答 (VQA)、图像文本检索等。作为与语言相关的任务,OCR 可以直观地受益于这些 VLP 技术。然而,大多数现有的 VLP 方法在应用于 OCR 任务时通常会受到两个典型限制。(1)VL 任务中的每个图像通常与一个句子或段落相关联,其中单词或短语(即标记)按阅读顺序排列。相反,OCR 任务中的图像通常包含许多文本实例,每个文本实例由一个或多个标记组成。一个文本实例中的标记通常彼此紧密相关(例如,图 1(c)中的“重新定义”和“保险”),而不同文本实例中的标记则完全不相关(例如,图 1(c)中的“保险”和“154”)。这使以一般的顺序方式对文本信息进行编码变得困难。(2)大多数 VLP 模型从图像-文本对中学习,其中图像和文本在内容级别相互关联(例如,图像和标题),如图 1(b)所示。这些内容相关的图像-文本对可以从网络、社交媒体等轻松获得,这已被证明对各种 VL 任务有效 。相比之下,OCR 任务旨在检测和识别图像中出现的文本实例,如图 1(c)所示。与 VL 任务相比,图像-文本对(即其中的图像和文本)更难获得,需要昂贵且低效的注释。
-
我们提出了一种 OCR 对比语言-图像预训练 (oCLIP) 技术,该技术利用文本信息来学习有效的视觉文本表示,以便更好地检测和识别场景文本。与现有 VLP 方法 中的文本编码器不同,我们设计了一个字符感知文本编码器,如图 1© 所示。它通过从每个文本实例中的字符序列中编码文本信息来提取语言特征,而不考虑不相关文本实例之间的关系。此外,我们引入了一个视觉文本解码器,它仅对输入图像与每个标记文本实例之间的关系进行建模,而不是对输入图像中所有捕获的文本进行建模。 通过这两种设计,我们的网络可以从弱注释数据(即没有文本边界框的图像中的部分文本实例)中学习有效的视觉文本表示,这大大减轻了数据采集挑战并能够利用大量弱注释图像。
-
本文的贡献有三点。首先,它引入了一个端到端可训练的预训练网络,允许利用语言监督来学习有效的视觉文本表示。其次,我们设计了一个字符感知文本编码器和一个视觉文本解码器,可以提取有效的实例级文本信息并从部分文本转录中学习,而无需文本边界框。第三,在多个公共数据集上进行的大量实验表明,所提出的弱监督预训练网络在各种场景文本检测和识别数据集上均实现了卓越的性能。
Related Work
Scene Text Detection and Spotting
-
最近的场景文本检测器大多是在全标注数据上训练的,这些数据大致可以分为两类。第一类采用自下而上的方法,首先检测低级文本元素,如字符 、文本段和文本关键点 ,然后将它们分组为单词或文本行。第二类将单词视为一种特定类型的对象,许多场景文本检测器如 EAST 、TextBoxes++ 、RRD 和 PSENet 被设计为使用通用对象检测或分割技术直接检测文本边界框。此外,许多研究人员通过文本边框或计数器、变形卷积 、局部细化 等研究文本特定特征以实现稳健的文本检测。
-
此外,许多方法都旨在解决数据偏差问题。一些工作 旨在合成可用于训练场景文本检测、识别和识别模型的场景文本图像。此外,WeText 和 OPM 设计了不同的弱监督机制,以使用不同类型的数据进行训练。GA-DAN 和 TST 研究了将合成的场景文本图像适应真实的领域自适应。最近,STKM 被提出来为不同的场景文本检测器预训练通用模型主干。
-
此外,还设计了许多端到端可训练的场景文本识别器,其中文本检测器和识别器相互补充。Li 等人 首次将场景文本检测器和基于 RNN 的识别器集成到统一网络中。Liu 等人 和 He 等人 利用更先进的场景文本检测器或识别器来获得更好的文本识别性能。最近,Mask TextSpotters 采用 Mask R-CNN 作为文本检测器,并使用字符分割或注意模块进行识别。ABCNet 提出使用贝塞尔曲线检测文本。TextDragon 检测文本的中心线,并沿着该中心线按顺序识别字符。Baek 等人 提出通过弱监督机制训练来检测字符。Xing 等人 提出同时检测和识别字符。MANGO 设计用于使用 mask 注意引导进行文本识别。此外,还研究了较少注释的文本识别。
Vision-Language Pre-training
- 受自然语言处理 (NLP) 社区中先进的基于 Transformer 的预训练技术 的启发,近年来,许多视觉语言预训练方法得到了研究,极大地促进了计算机视觉社区中的许多多模态任务。ViLBERT 和 LXMERT 提出了一个双流框架,其中包含一个视觉语言共同注意模块,用于跨模态特征融合。另一方面,VisualBERT 、UnicoderVL、VL-BERT 和 UNITER 遵循单流框架(即 vanilla BERT 结构),专注于包括 VCR 和 VQA 在内的通用 VL 任务。 此外,许多 VLP 方法已被提出用于 VL 任务,例如用于视觉关系检测的 RVLBERT 、用于视觉导航的 PERVALENT 和 VLN-BERT、用于视觉对话的 VisualID 和 VD-BERT 等。
Methodology
-
我们提出了一种预训练技术,通过与文本信息进行特征对齐来学习更好的场景文本视觉表示。如图 2 所示,所提出的网络首先使用图像编码器(包括网络主干 ResNet-50 ,后跟多头注意层)从输入图像中提取图像嵌入。字符感知文本编码器旨在通过对每个文本实例中的字符序列进行编码,从输入图像中文本实例的转录中提取文本信息。
-
-
图 2. 所提方法的框架:给定一个输入图像,图像编码器(包括一个主干,后面跟着一个多头注意层)首先提取视觉特征。同时,每个文本实例中的字符被转换为字符嵌入,字符感知文本编码器进一步从字符嵌入中提取文本实例嵌入。视觉文本解码器对文本实例嵌入和相应的图像嵌入之间的交互进行建模。在训练期间,每个文本实例中的随机字符将被屏蔽(如红色框所示),并通过预测被屏蔽的字符来优化整个网络
-
-
提取的文本和视觉特征被传递到视觉文本解码器中,该解码器对输入图像的视觉特征与每个文本实例的文本特征之间的交互进行建模。在训练期间,我们随机屏蔽每个文本实例中的一个字符,并通过利用提取的视觉和文本特征预测屏蔽的字符来优化网络。
-
oCLIP的整体框架。整个网络包含三个部分:
- 1)图像编码器(ResNet50+多头注意力层)
- 2)字符感知文本编码器
- 3)视觉-文本解码器。
-
图像经过图像编码器得到图像编码,字符感知文本编码器通过对文本实例的字符进行编码得到文本实例编码。得到的图像编码和文本实例编码随后通过视觉-文本解码器进行交互建模。在训练的时候,会随机Mask掉每个文本实例中的一个字符,网络通过预测这个字符进行优化。
Character-Aware Text Encoder
-
在一般 VL 任务中,文本(例如标题、说明等)通常是由文本标记序列组成的句子。因此,VL 任务的文本编码器通常设计为以顺序方式对文本进行编码。然而,OCR 任务中的自然场景图像通常包含一个或多个文本实例。每个文本实例中的文本标记彼此顺序相关,而来自不同文本实例的文本标记通常完全不相关。这使得使用通用文本编码器对这些文本实例进行编码变得很困难。为了解决这个问题,我们设计了一个字符感知文本编码器。
-
所提出的字符感知文本编码器以字符序列的形式提取输入文本实例的实例级文本嵌入。给定图像中的 n 个带注释的文本实例 T = {t0, t1, … tn−1},每个文本实例 ti 由字符序列 t i = [ c 0 i , c 1 i , , . . . , c k − 1 i ] t_i = [c^i_0 , c^i_1, , ... , c^i_{k−1} ] ti=[c0i,c1i,,...,ck−1i] 组成。我们将字符嵌入到固定大小的向量中,并添加一组学习到的位置编码 P E = [P E0, P E1, … , P Ek] 来仅捕获每个文本实例中字符的序列信息,可以通过以下公式表示:
- c e j i = W c ⋅ c j i + P E j , i ∈ [ 0 , n − 1 ] , j ∈ [ 0 , k − 1 ] , ( 1 ) ce_j^i = W_c \cdot c_j^i + PE_j, \:\:\:\:\: i \in [0, n-1], \:\:\:\:\: j \in [0, k-1], (1) ceji=Wc⋅cji+PEj,i∈[0,n−1],j∈[0,k−1],(1)
-
其中 Wc 是字符嵌入矩阵。因此,第 i 个文本实例 c e i = [ c e 0 i , c e 1 i , . . . , c e k − 1 i ] ce^i = [ce^i_0 , ce^i _1 , ..., ce^i _{k−1} ] cei=[ce0i,ce1i,...,cek−1i] 的编码字符嵌入被传递到 Transformer 编码器中,该编码器对文本实例中所有字符之间的交互进行建模,并从其字符嵌入 cei 中提取文本实例嵌入 tei 。结果,字符感知文本编码器从带注释的文本实例 t = {t0, t1, …, ten−1} 中提取文本实例嵌入 te = {te0, te1, …, ten−1}。注意,每个文本实例中随机选择的字符在训练期间被设置为掩码类别进行掩码。
-
所提出的字符感知文本编码器有效地编码了实例级文本信息,而忽略了每对文本实例之间的关系。此外,它还可以帮助学习更好的视觉文本表示。 下图 显示了两个示例图像,并附有来自图像编码器中注意层的注意图。如图 3 所示,通过从通用文本编码器中提取文本信息,整个模型仅关注部分文本实例(例如“Footpath”的“Foo”和“th”)。这是因为通用文本编码器中的标记通常包含多个字符(例如标记“Footpath”包含 8 个字符),因此模型倾向于根据语言知识仅关注标记中最重要的部分。相反,所提出的文本编码器可以更好地关注图像中的所有文本区域,并意识到每个字符,证明了所提出的编码器在学习场景文本检测和识别任务的视觉文本表示方面的优势。
-
-
图 3. 所提出的字符感知文本编码器的说明:第一列给出了示例图像,第 2-3 列分别显示了使用通用句子级文本编码器和所提出的字符感知文本编码器的模型获得的注意力图(来自图像编码器中的注意力层)。与通用文本编码器相比,所提出的字符感知文本编码器更好地关注文本区域,从而更好地学习网络主干的场景文本视觉表示。
-
Visual-Textual Decoder
-
现有的场景文本预训练技术需要完全注释的数据进行训练,其中提供了所有文本实例的边界框或转录。然而,这样的注释通常非常昂贵且难以获得。为了解决数据注释偏差,我们提出了一个视觉文本解码器,它模拟输入图像和每个单独的注释文本之间的交互,同时忽略未标记的文本。因此,可以使用图像中部分文本实例的注释来训练模型。
-
给定一个如图 2 所示的输入图像 I,我们首先分别使用图像编码器(包括网络主干和多头注意层)和字符感知文本编码器提取图像嵌入 ie 和文本信息 te。因此,视觉文本解码器学习 ie 与 te 中每个项目(即每个文本实例的嵌入)之间的关系,以增强对视觉表征的学习。具体来说,视觉文本解码器由 6 个堆叠的解码器层组成,每个解码器层包含一个多头注意层和一个前馈网络。文本实例嵌入 te 作为查询传递到视觉文本解码器中,图像嵌入 ie 作为键和值传递到解码器中。这允许每个文本实例单独关注图像嵌入中的所有位置。请注意,我们不采用视觉文本解码器中的自注意层,以便忽略每对文本实例之间的关系并消除未标记文本实例的影响。因此,该模型可以有效地从部分注释的文本实例中学习。最后,视觉文本解码器预测每个文本实例中的屏蔽字符以进行优化。
-
仅通过从文本信息中学习语言知识即可预测掩码字符。我们在图 4 中说明了解码器的注意力图,以证明所提出的视觉文本解码器的有效性。 对于图 4 中的每个样本图像,我们将三个文本实例(带有掩码字符 [M])传入我们的网络,我们获得三个注意力图和三个预测掩码字符,每个字符对应于一个输入文本实例。 如图 4 所示,视觉文本解码器不仅可以预测掩码字符(例如,“ST[M]RLING”的“I”),而且还能很好地关注图像中相应掩码字符的区域。可以看出,所提出的解码器将视觉和文本特征对齐以预测掩码字符(而不是单独使用文本信息),证明了所提出的视觉文本解码器的有效性。
-
-
图 4. 所提出的视觉文本解码器的说明:第一列中给出了两个示例图像,第 2-4 列中的每个框中从上到下分别显示了输入文本实例(掩码字符用 [M] 突出显示)、解码器中相应的注意力图和预测的掩码字符。所提出的视觉文本解码器很好地对齐了视觉和文本特征,从而有效地关注和预测图像中的掩码字符。
-
Network Optimization
-
在训练过程中,提出的模型以文本实例 T(带有掩蔽字符 y m s k y ^{msk} ymsk)和图像 I 作为输入,并预测掩蔽字符 p m s k ( I , T ) p ^{msk}(I, T) pmsk(I,T) 进行优化。我们将掩蔽字符预测视为分类问题,并采用交叉熵 H 进行优化:
- L c l s = E ( I , T ) ∼ D H ( y m s k , p m s k ( I , T ) ) . ( 2 ) \mathcal {L}_{cls} = \mathbb {E}_{(I, T)\sim D}\text {H}( {y}^{msk}, {p}^{msk}(I, T)). (2) Lcls=E(I,T)∼DH(ymsk,pmsk(I,T)).(2)
-
此外,受 CLIP 的启发,我们采用批次级对比损失来加快收敛速度。给定训练批次中的 N 个图像和 N 个文本,我们从所有文本和图像中形成 N 2 N^2 N2(文本,图像)对,其中 N 对文本和图像相互相关, N 2 − N N^2-N N2−N 对不相关。对于每个图像和文本,我们计算 softmax 归一化的图像到文本和文本到图像的相似度,如下所示:
-
p b i 2 t ( I ) = exp ( I , T b ) ∑ b = 1 B exp ( I , T b ) , p b t 2 i ( T ) = exp ( T , I b ) ∑ b = 1 B exp ( T , I b ) . ( 3 ) p^{i2t}_b(I) = \frac {\text {exp}(I, T_b)}{ {\textstyle \sum _{b=1}^{B}} \text {exp}(I, T_b)}, \:\:\:\:\:p^{t2i}_b(T) = \frac {\text {exp}(T, I_b)}{ {\textstyle \sum _{b=1}^{B}} \text {exp}(T, I_b)}. (3) pbi2t(I)=∑b=1Bexp(I,Tb)exp(I,Tb),pbt2i(T)=∑b=1Bexp(T,Ib)exp(T,Ib).(3)
-
令 y i 2 t ( I ) y ^{i2t} (I) yi2t(I) 和 y t 2 i ( T ) y ^{t2i} (T) yt2i(T) 表示真实独热相似度,其中负对的概率为 0,正对的概率为 1。 因此,批次级对比损失定义为:
-
L b c = E ( I , T ) ∼ D [ H ( y i 2 t ( I ) , p i 2 t ( I ) ) + H ( y t 2 i ( T ) , p t 2 i ( T ) ) ] . ( 4 ) \mathcal {L}_{bc} = \mathbb {E}_{(I, T)\sim D}[\text {H}( {y}^{i2t}(I), {p}^{i2t}(I)) + \text {H}( {y}^{t2i}(T), {p}^{t2i}(T))]. (4) Lbc=E(I,T)∼D[H(yi2t(I),pi2t(I))+H(yt2i(T),pt2i(T))].(4)
-
完整的预训练目标定义为:
-
L = L c l s + L b c . ( 5 ) \mathcal {L}=\mathcal {L}_{cls}+\mathcal {L}_{bc}. (5) L=Lcls+Lbc.(5)
-
Experiments
Datasets
- 我们在实验中使用了许多公共数据集,包括 SynthText、ICDAR2019-LSVT、CTW1500、Total-Text 和 ICDAR2015。更多详细信息请参阅补充材料。
Implementation Details
- 预训练:我们使用 ResNet-50 作为所提网络图像编码器的主干。训练期间,输入图像的大小调整为 512×512。 我们采用 Adam 优化器 ,将解耦权重衰减正则化 应用于所有非增益或偏差的权重。初始学习率为 1e −4,使用余弦计划衰减 。该模型在 8 个 Tesla V100 GPU 上以 640 的批处理大小进行 100 次端到端训练。每个文本实例的长度设置为 25。
- 微调:我们对几个场景文本检测器和检测器进行了微调,以评估所提出的方法,包括:1)PSENet ,2)DB ,3)FCENet ,4)TextBPN ,和 5)Mask TextSpotter-v3 。更多详细信息请参阅补充材料。
Experimental Results
-
我们从三个方面评估了所提出的方法。首先,我们通过使用弱注释数据(即每个图像中都有部分注释的文本实例)进行训练来评估所提出方法的性能。其次,我们将所提出的方法与场景文本社区中现有的预训练技术进行比较。第三,我们将所提出的方法与最先进的场景文本检测器和检测器进行比较。
-
弱监督预训练:我们评估了所提方法在从弱注释数据中学习视觉文本表示方面的表现。我们首先在 400,000 张弱注释图像上对我们的模型进行预训练(即仅提供每张图像中感兴趣的文本的转录),并在来自 ICDAR2019-LSVT 数据集的 30,000 张完全注释的图像上对不同的场景文本检测器和检测器进行微调,从而进行实验。如表 1 和表 2 所示,所提方法提高了不同场景文本检测器和检测器的性能,表明所提方法可以有效地从弱注释数据中学习视觉表示。请注意,大多数以前的方法是针对完全注释的图像进行训练而设计的,它们无法很好地利用来自 ICDAR2019-LSVT 数据集的弱注释图像。
-
-
表 1. 不同模型在 ICDAR2019LSVT 数据集上的场景文本检测性能。‘+oCLIP’:我们采用 ICDAR2019-LSVT 数据集中 400,000 张弱注释图像的预训练模型进行微调。
-
-
表 2. 不同模型在 ICDAR2019LSVT 数据集上的场景文本识别性能。‘+oCLIP’:我们采用 ICDAR2019-LSVT 数据集中 400,000 张弱注释图像的预训练模型进行微调。‘P’、‘R’、‘F’、‘1-NED’ 和 ‘E2E’ 分别指准确率、召回率、F 分数、标准化编辑距离的标准化度量和端到端。
-
-
此外,我们在 SynthText 数据集上进行了一项实验,以展示注释文本数量对模型性能的影响。我们首先从 SynthText 数据集中准备四组文本注释,方法是在每个图像中随机选择不同比例的文本实例(即 25%、50%、75% 和 100%)(例如,每个图像中的 4 个文本实例中有 1 个用于训练“25%”模型)。接下来,我们使用四组文本注释在 SynthText 数据集中的所有图像上预训练四个模型,然后将主干权重转移到 Total-Text 数据集上微调 PSENet。为了进行比较,我们报告了另外两个模型的性能,包括:
- 1)“无预训练”模型,即不采用预训练;
- 2)“基线”模型,即首先在 SynthText 上训练 PSENet,然后在 Total-Text 上进行微调。
-
如表 3 所示,所有四个预训练模型都有助于提高 PSENet 的性能,其性能明显优于“无预训练”和“基线”模型。此外,通过对不同数量的注释文本进行预训练,这四个模型在场景文本检测任务上实现了相当的性能,证明了所提出的弱监督学习的有效性。
-
-
表 3. 所提出的弱监督预训练技术的有效性:我们使用 SynthText 数据集中不同比例的文本实例预训练四个模型(例如,对于“25%”模型,每张图片中的 4 个文本实例中有 1 个用于训练),并将模型权重转移到 Total-Text 数据集上对 PSENet 进行微调。 “基线”:在 SynthText 上训练 PSENet,然后在 Total-Text 上进行微调。
-
-
与现有场景文本预训练策略的比较:我们将所提出的方法与两种场景文本预训练策略进行比较,包括:(1)在 SynthText 数据集上训练 PSENet,然后在真实数据集上进行微调,以及(2)使用 STKM 在 SynthText 上进行预训练,并将预训练的权重转移到真实数据集上微调 PSENet。为了公平比较,我们在具有完整注释的 SynthText 上对我们的模型进行预训练,并将主干权重转移到真实数据集上微调 PSENet。如表 4 所示,通过对同一组数据进行预训练,所提出的方法在 Total-Text 和 CTW1500 数据集上的 F 分数分别比现有的预训练技术高出 +3.3% 和 +1.3%。
-
-
表 4. 与现有场景文本预训练技术的比较:通过对同一组数据(即 SynthText 数据集)进行预训练,所提出的预训练方法在不同数据集上的表现始终优于现有的预训练技术。 ‘+SynthText’:使用 SynthText 训练 PSENet,然后使用 Total-Text 进行微调。
-
-
从网络图像自动采集数据并进行训练:由于能够从弱注释图像中成功学习,因此所提出的 oCLIP 可以简单地应用于自动数据采集和训练管道。我们从 4000 万张网络图像中提取了文本,并使用现有的场景文本检测器和识别器模型预训练过滤掉了置信度较低的文本。 如表 4 所示,通过从网络图像中自动提取的数据进行学习,oCLIP 显著提高了 PSENet 在 Total-Text 和 CTW1500 数据集上的性能。更多详细信息请参阅补充材料。
-
与最先进的场景文本检测器和检测器进行比较:我们进一步进行实验,将所提出的方法与最先进的场景文本检测和检测技术进行比较。为了公平比较,我们在 SynthText 上使用完整注释的方法预训练模型,并将主干权重转移到真实数据集上微调 DB、FCENet、TextBPN 和 Mask TextSpotter-V3。如表 5-8 所示,所提出的预训练模型有效地将现有的场景文本检测器提升到不同数据集上最先进的性能。此外,通过从我们的模型中转移预训练的权重,不同场景文本检测器和检测器的性能始终得到大幅提升。
-
-
表 5. 与 CTW1500 数据集上最先进的场景文本检测技术的比较。‘+oCLIP’ 表示采用我们在 SynthText 数据集上预先训练的模型进行微调。‘RN50’、‘PD’、‘Syn’ 和 ‘MLT’ 分别指 ResNet50、预训练数据、SynthText 数据集和 ICDAR2017-MLT 数据集
-
-
表 6. TotalText 数据集上与最先进的场景文本检测技术的比较。“+oCLIP”表示采用我们在 SynthText 数据集上预先训练的模型进行微调。“RN50”、“PD”、“Syn”和“MLT”分别指 ResNet-50、预训练数据、SynthText 数据集和 ICDAR2017-MLT 数据集
-
-
表 7. 与 ICDAR2015 数据集上最先进的场景文本检测技术的比较。‘+oCLIP’ 表示采用我们在 SynthText 数据集上预先训练的模型进行微调。‘RN50’、‘PD’、‘Syn’ 和 ‘MLT’ 分别指 ResNet50、预训练数据、SynthText 数据集和 ICDAR2017-MLT 数据集。
-
-
表 8. 与 ICDAR2015 和 Total-Text 数据集上最先进的场景文本识别技术进行比较。‘+oCLIP’ 表示该模型是根据我们在 SynthText 数据集上预先训练的模型进行微调的。‘S’、‘W’ 和 ‘G’ 表示 ICDAR2015 的强、弱、通用词典的端到端识别。‘Full’ 表示 Total-Text 的完整词典。
-
Ablation Studies
- 我们研究了我们方法中不同模块的贡献,包括字符感知编码器 (CAE)、视觉文本解码器 (VTD) 和批处理级对比损失 (BCL)。我们在完全注释的 SynthText 数据集上训练了包含不同模块的四个模型,并在 TotalText 数据集上微调了 PSENet。如表 9 所示,在我们的网络中包含不同的模块后,PSENet 的性能可以持续提高,证明了网络中不同模块的有效性。
-
-
表 9. 在 TotalText 数据集上对所提出的场景文本检测方法进行的消融研究。我们使用具有不同模块的预训练模型对 PSENet 进行微调。“CAE”、“VTD”和“BCL”分别指字符感知编码器、视觉文本解码器和批次级对比损失。
-
Conclusion
- 本文介绍了一种用于场景文本检测和识别任务的弱监督预训练技术。它侧重于从图像和文本转录中联合学习视觉和文本信息,以增强视觉表征的学习。它设计了一个字符感知文本编码器和一个视觉文本解码器,提高了所提方法在没有文本边界框的情况下仅从部分文本转录中学习的可行性。实验结果表明,所提方法可以有效地从弱注释的场景文本数据集中学习,这大大减轻了数据获取挑战,并显著促进了不同的场景文本检测器和识别器的发展。
Language Matters: A Weakly Supervised Vision-Language Pre-training Approach for Scene Text Detection and Spotting
Automatic Data Acquisition and Training from Web Images
-
大多数现有的场景文本检测和识别模型都是在完整注释的数据上进行训练的,而这些数据很难从网络图像中获得。相反,所提出的弱监督预训练方法可以简单地应用于自动数据采集和训练流程,具体步骤如下:(1)使用现有的 OCR 技术从网络图像中提取文本;(2)过滤掉置信度较低的文本实例(即检测和识别的置信度分数较低的文本);(3)在收集的网络图像和提取的文本实例上对模型进行预训练。
-
我们按照这个流程进行实验。我们首先使用 PSENet 进行检测,使用 Conformer 进行识别,从网页图片中提取文本。然后,我们过滤掉置信度较低的文本和非文本图像,得到 4000 万个图文对。最后,我们使用所提出的方法预训练模型,并将预训练模型中的权重迁移到 Total-Text 和 CTW1500 数据集上对 PSENet 进行微调。如表 1 所示,通过自动提取数据和预训练,所提出的方法显著提高了 PSENet 在 Total-Text 和 CTW1500 数据集上的性能,证明了所提出方法的有效性。这个结果也表明,通过大规模网页图片预训练可以有效提升场景文本模型的性能。
-
-
表 1. 从网络图像自动获取数据并进行训练:通过对从网络自动提取的图像和文本进行预训练,所提出的方法可以在 TotalText 和 CTW1500 数据集上显著提升现有的场景文本检测器。
-
-
此外,所提出的预训练模型有效地加速了场景文本模型的收敛。如图1所示,经过预训练的场景文本检测器比未经预训练的原始模型收敛得更快。
-
-
图1. 通过对网络图片进行预训练,模型比没有预训练的原始模型收敛速度更快。
-
Datsets
- SynthText 包含超过 800,000 张合成场景文本图像,其中大部分为单词级别,带有多方向矩形注释。SynthText 数据集中的文本均为英文。
- ICDAR2019-LSVT 包含 450,000 张图像,其中大部分为中文文本。 400,000 张图像注释较弱,仅提供这些图像中感兴趣的文本的转录。此外,50,000 张图像已完全注释,分为包含 30,000 张图像的训练集和包含 20,000 张图像的测试集。
- CTW1500 包含 1,000 张训练图像和 500 张测试图像,其中包含 10,751 个多方向文本实例,其中 3,530 个是任意弯曲的。 大多数文本实例使用 14 个顶点在文本行级别进行注释,其中文本主要是英文和中文。
- Total-Text 包含 1,255 张训练图像和 300 张测试图像,其中文本均为英文。它包含大量多方向的弯曲文本实例,每个实例都使用多边形在单词级别进行注释。
- ICDAR2015 有 1000 张训练图像和 500 张测试图像,这些图像由 Google Glass 收集,分辨率低且存在运动模糊。所有文本实例均使用四边形框在单词级别进行注释。
Implementation Details
- 我们对几个场景文本检测器和检测器进行了微调,以评估所提出的方法,包括:1)PSENet,2)DB ,3)FCENet ,4)TextBPN 和 5) Mask TextSpotter-v3 。实验使用相应的开源代码进行。对于 DB,我们用 ResNet-50 替换原始网络主干(即可变形的 ResNet-50),以更好地展示所提出的方法。对于 TextBPN,我们遵循他们论文中报告的实验设置来重新训练整个模型,因为未提供配置文件。
More Samples
- 所提出的方法可以仅通过语言监督来关注具有字符意识的文本区域。图 2 显示了另外四个示例图像及其注意力图。如图 2 所示,所提出的模型可以有效地关注文本区域和缺失字符区域(对应于每个输入文本实例)。特别是在图 2 的最后一行,所提出的解码器可以关注无上下文文本实例中缺失字符的区域,证明了所提出的方法在建模视觉和文本信息关系方面的有效性。
-
-
图 2. 给出第一行中的样本图像,第二行显示图像编码器中相应的注意力图。第 3-4 行分别显示上下文文本和无上下文文本作为输入,以及解码器中相应的注意力图和预测字符。编码器和解码器分别有效地关注文本和字符区域。
-
More Experimental Results
- 最近的场景文本识别器通常在 ICDAR2015 数据集上根据两个评估指标进行评估。我们在主稿中报告了端到端识别的结果,并在表 2 中另外报告了单词识别的结果。
-
-
表 2. 与 ICDAR2015 上最先进的场景文本识别技术进行比较。‘+oCLIP’ 表示该模型是根据我们在 SynthText 数据集上预先训练的模型进行微调的。‘S’、‘W’ 和 ‘G’ 分别表示使用 ICDAR2015 的强、弱、通用词典进行单词识别。‘Full’ 表示 Total-Text 的完整词典。
-