CVPR23/ICCV23自监督文本识别

文章介绍了CVPR23和ICCV23上关于自监督文本识别的研究,包括字符伪标签的获取、文本掩码和水平位置信息的构建。对比了无监督和语言感知方法,提出字形注意力网络和自监督字符到字符蒸馏方法,以提高文本识别性能,特别是对无序文本的识别。
摘要由CSDN通过智能技术生成

文本识别CVPR23和ICCV23近期工作

论文:Self-Supervised Implicit Glyph Attention for Text Recognition (CVPR2023)
SIGA paper
SIGA code
论文:Self-supervised Character-to-Character Distillation for Text Recognition(ICCV2023)
CCD paper
CCD code

背景介绍

现有的文本实例主要分为两类:有序文本(context texts)和 无序文本(contextless texts)
在这里插入图片描述
近期的一些工作往往聚焦于识别有序文本,包括但不限于,language-free methods and language-aware methods.
对于language-aware methods, 主要利用语言模型去解决语义上下文的问题。
比如当视觉模型(language-free model)识别出"universlty", 语言模型可以很好地解决视觉识别错误,得到"university"。但语言模型存在的问题有以下两点:
1)语言模型需要联合视觉模型的输出,通过优化字符预测的联合分布,得到好的精度。然而当将wiki语料库正确的单词送给单一的语言模型时,其精度只有50%左右。语言模型的能力还有待提升。
2)语言模型不能够很好地泛化到任意文本上,比如无序文本。
对于language-aware methods, 现有的方法能够分为基于隐式注意力的方法和基于有监督注意力的方法。
在这里插入图片描述
隐式注意力的方法,往往会存在注意力漂移的问题;有监督地注意力方法利用bounding boxes 标注解决了这个问题,但其存在三方面的问题:1)需要额外的 bounding boxes标注信息,它们是昂贵的;2)现有的含bounding boxes 数据量有限,像MJ数据集就没有这类标注信息,往往需要结合半监督学习等技术;3)这些方法的注意力通道是与类别相关的,是memory-intensive. 以GB2312 的6763个字符类别为例,其注意力通道将有6763个,增加了模型的负担。
对于无序文本识别这一块,首先一方面受关注度还比较低,其次仅有少量的工作聚焦在特定的工业场景,例如集装箱文本识别、钢卷号识别等,但它们具有固定的编码规则 (xxx-xx-xxx) ,识别相对简单,不具有好的泛化性。当引入新的工业文本编码规则时,识别网络需要重新设计和训练,这是耗时费力的;

动机

结合上面的背景知识,如果想要识别任意的文本(有序文本和无序文本),language-free method是首要选择。
而视觉模型的核心在于,将文本识别看成字符级的分类任务,主要利用视觉信息去识别每个字符。
那么对于文本实例图像来讲,识别字符,最核心的视觉信息那便是 字形结构(glyph)了。
那如何提取字形结构呢?
方案一:
在这里插入图片描述
我们可以进行像素级的标注,但显然不够友好,又回到了原点。

方案二:
在这里插入图片描述
对于任意一张归一化好的图像(基于TPS水平矫正之后),如果我们能够分布获得其文本掩码和每个字符的水平位置,那么单个字符结构我们便能很轻易的得到。
有了上面的想法,下面的重点就在于如何获取文本掩码 和 字符水平位置。

构建字符伪标签

获取文本掩码

我们惊奇地发现,绝大部分图像可以通过一个简单的kmeans聚类算法得到两个聚类中心,这两个聚类中心分别对应着前景和背景区域。考虑到无监督聚类算法不具有识别两个聚类中心的能力,我们结合了先验知识:在大部分情况下,文本实例图像的四条边缘像素值多属于背景。
我们在背景和颜色比较复杂的TextSeg数据集上进行了分割性能评测,两个聚类中心的IoU值为39.8%和40.1%,
结合先验知识后,其IoU为70.0%.
有了聚类后的前景伪标签,我们进一步采取了无监督的策略去训一个文本分割器,旨在学习更好的前景特征表示。

在这里插入图片描述

获取水平位置信息

近年来,基于隐式的注意力,以CRNN/TRBA为代表的方法在文本识别方面取得了很好的应用。
其基本形式为:
在这里插入图片描述
具体可参考我之前的一些介绍:
知乎文本识别系列工作介绍
通过上图b,我们可以看出基于隐式注意力的方法天然地提供了很好的水平位置信息。因此我们基于此进行再次开发。考虑到现有的隐式注意力方法,在解码阶段由于位置信息的掩码会存在注意力漂移的问题,也就是当前的注意力并不能够对齐当前需要解码的字符。因此我们提出了注意力对齐的方法,其思路很简单:
在这里插入图片描述
我们提出了一个优化函数,旨在于保证两点:
1)注意力向量之间两两正交;2)所有注意力向量与预测的文本掩码的点乘之和应尽可能与预测掩码相同。
在这里插入图片描述

Text Recognition (CVPR23)

由前面的介绍,我们便可以获得字形伪标签,一些图片如下:
在这里插入图片描述
然后我们提出字形注意力网络,监督信号为我们在线生成的字形伪标签。值得注意的是,我们的注意力网络通道数是固定的,不与字符类别数量有关系,默认情况下为文本实例图像最大字符数。
具体的网络图如下:
在这里插入图片描述
SIGA方法的优点:1)建立了隐式注意力方法与有监督注意力方法的桥梁;2)不需要额外的标注,在线生成伪标签;3)相比于之前的粗糙的注意力,首次引入字形注意力去获得更加具有简明性的特征,显式地对特征图进行监督。

对比language-free methods性能

在这里插入图片描述

对比language-aware methods 性能

在这里插入图片描述

无序文本性能对比

我们提供了两个无序文本数据集,第一个为MPSC(金属零件表面字符数据集),其多有字符和数字随机组合而成,因其来自于网络,所以不同于钢卷号等具有特定规则的文本数据集,其文本是随机的,总数量为15003张图像。为了进一步论证我们的方法在视觉方法上的性能,我们follow现有的文字合成工作,合成了一个1M图像的无序文本数据集ArbitText.
在这里插入图片描述

Text Recognition (ICCV23)

我们第二篇工作在第一篇基础上,聚焦于自监督学习。

自监督学习背景

1)基于对比学习的范式 MOCO系列 SIMCLR SwAV DINO等工作:
简单来讲,一张图像,通过不同的增强方式去获得两个视角,它们分别送入网络提取高层次图像特征。通过建立两个视角下特征的一致性,可以促使网络学习到通用的特征表示。在下游任务上,通过微调等技术进一步促使特征聚合,使得特征具有语义信息,用于分类、分割、检测、识别、重建等任务。
2)基于掩码重建的范式 MAE系列
简单来讲,一张图像,通过随机掩码固定或随机比例的图像patch, 得到masked image, 网络通过学习unmasked patches的信息,去重建masked patches。

动机

当处理复杂的文本图像(如不规则结构、低分辨率、严重遮挡和光照不均匀)时,现有的监督文本识别方法需要大量数据。尽管这些方法采用大规模合成文本图像来减少对带注释的真实图像的依赖,但域间隙(domain gap)仍然限制了识别性能。因此,通过自监督学习来探索未标记真实图像上的鲁棒文本特征表示是一个很好的解决方案。
然而,现有的自监督文本识别方法通过沿水平轴粗糙地拆分视觉特征来进行序列到序列的表示学习,这限制了增强的灵活性,因为基于几何的大规模增强可能导致序列到序列的特征不一致。
许多工作(如simclr)都证实数据增强是自监督学习的重中之重。
因此与sequence-to-sequence相比,我们基于字符伪标签提取技术,提出了一种新颖的自监督字符到字符蒸馏方法,character-to-character distillation(CCD),它可以实现多种增强,以促进通用的文本表示学习。
在此基础上,CCD利用图像中两个增强视图之间的变换矩阵,在灵活增强下,在保持局部特征成对对齐的同时,轻松丰富了局部特征的多样性。
在这里插入图片描述

实施方案

具体来说,与工作1提出的字形伪标签构建方案不同的是,考虑到很多真实的文本图像没有标签,因此我们无法使用隐式注意力对齐模块去获得水平位置信息,进而无法切分得到单个字符结构。
退而求其次,我们采用寻找连通域的方式,去分割字符,具体来说:

from measure import label
regions = label(text_mask, connectivity=1)

单个连通域可以被看成 字符结构,半字符结构,字符串结构 以及 背景区域。 一些可视化例子:
在这里插入图片描述
我们人工统计了在TextSeg数据集上的连通域类别的数量情况:
在这里插入图片描述
可以看到,
1)CCD在灵活的增强下享受大约77%的成对字符对齐,以学习字符实例特征表示;
2)即使在由于上述问题而难以聚类字符的情况下,字符串或半字符(与序列项相比都属于前景)的表示一致性仍然可以有效地促进文本前景特征的学习;
3)在最坏的情况下,我们的方法至少可以退化为与序列级自监督方法相同的表示一致性学习。

网络框架

在这里插入图片描述

对比现有的自监督方法

在这里插入图片描述

对比现有的SOTA方法

在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值