Abstract
低分辨率文本图像经常出现在自然场景中,例如手机捕获的文档。识别低分辨率文本图像具有挑战性,因为它们会丢失详细的内容信息,从而导致识别精度下降。一个直观的解决方案是引入超分辨率(SR)技术作为预处理。但是,以前的单图像超分辨率(SISR)方法是在合成的低分辨率图像(例如Bicubic下采样)上训练的,该方法很简单,不适合真正的低分辨率文本识别。为此,我们提出了一个真实场景文本SR数据集,称为TextZoom。它包含成对的真实低分辨率和高分辨率图像,这些图像由具有不同焦距的相机在野外捕获。如图1所示,它比合成数据更具真实性和挑战性。我们认为提高识别精度是Scene Text super-resolution (SR)的最终目标。为此,开发了具有三个新颖模块的称为TSRN的新的文本超分辨率网络。
(1)提出了一种顺序残差块来提取文本图像的序列信息。
(2)提出了边界感知损失来锐化字符边界。
(3)提出了一个中央对齐模块来缓解TextZoom中的对齐错误问题。
在TextZoom上进行的大量实验表明,与合成SR数据相比,我们的TSRN大大提高了CRNN的识别精度达13%以上,而ASTER和MORAN的识别精度提高了近9.0%。此外,我们的TSRN在提高TextZoom中LR图像的识别精度方面明显优于7种最新的SR方法。例如,在ASTER和CRNN的识别精度上,它比LapSRN分别高出5%和8%。我们的结果表明,野外的低分辨率文本识别远未解决,因此需要更多的研究工作。这些代码和模型将在以下位置发布:github.com/JasonBoy1/TextZoom
图1. TextZoom中合成LR,真实LR和HR图像之间的比较。 “ Syn LR”表示BICUBIC HR下采样图像。 “真实LR”和“ HR”表示相机使用不同焦距拍摄的LR和HR图像。 从图像中我们可以发现,真实的LR图像比合成的LR图像更具挑战性。
Keywords: Scene Text Recognition, Super-Resolution, Dataset, Sequence, Boundary
Introduction
场景文本识别是计算机视觉中一项基本而重要的任务,因为它通常是许多下游文本相关的应用程序的关键步骤,包括文档检索,卡片识别,车牌识别等[35,34,43,3]。由于卷积神经网络(CNN)的发展,场景文本识别取得了巨大的成功。
对于大多数受约束的情况(例如,扫描副本或网络图像中的文本),已经提出了许多准确而有效的方法。最近的工作集中于自然场景中的文本[25,26,6,28,37,44,41,42],由于文本的多样性,模糊性,方向性,形状和低分辨率,因此具有挑战性。可以在[27]中找到对文本识别的最新优势的详尽调查。现代文本识别器在清晰的文本图像上取得了令人印象深刻的结果。然而,当识别低分辨率文本图像时,它们的性能会急剧下降[1]。识别LR文本的主要困难是光学退化模糊了字符的形状。因此,如果我们将SR方法引入识别之前的预处理过程,将是有希望的。令我们惊讶的是,没有真正的数据集和相应的方法集中在场景文本超分辨率上。
在本文中,我们提出了一个成对的场景文本超分辨率数据集,称为TextZoom,这是第一个关注真实文本超分辨率的数据集。以前的超分辨率方法[7,20,23,24,22,47,21]通过简单地应用均匀退化(如双三次插值或模糊核)来生成高分辨率(HR)图像的低分辨率副本。不幸的是,真实的模糊场景文本图像在退化形成变化更大。场景文本具有任意形状,分布式光照和不同背景。场景文本图像的超分辨率更具挑战性。因此,提出的TextZoom非常必要,它包含具有相同文本内容的成对的LR和HR文本图像。 TextZoom数据集是从新提出的SISR数据集中裁剪而来的[4,46]。我们的数据集具有三个主要优点。
(1)该数据集具有良好的注释。我们提供文字图像的方向,文字内容和原始焦距。
(2)数据集包含来自不同自然场景的丰富文本,包括街景,图书馆,商店,车辆内饰等。
(3)将数据集按难度仔细地分为三个子集。
在TextZoom上进行的实验表明,我们的TSRN大大提高了CRNN的识别精度,与合成SR数据相比提高了13%。注释和分配策略将在第3节中简要介绍,并在补充材料中进行详细演示。
此外,为了重建低分辨率的文本图像,我们提出了一种面向文本的端到端方法。传统的单图像超分辨率(SISR)方法仅着眼于重建纹理细节,仅满足人类的视觉感知。但是,场景文本超分辨率(SR)是一项非常特殊的任务,因为它包含高级文本内容。前后字符之间具有信息关系。显然,如果其他字符清晰可见,则单个模糊字符不会使人类无法识别整个单词。为了解决此任务,首先,我们提供了一个序列残差块来对文本行中的循环信息进行建模,这使我们能够在前后字符之间建立关联。其次,我们提出了一种称为梯度轮廓损失的边界感知损失,以重建字符的尖锐边界。这种损失有助于我们更好地区分字符和背景,并生成更明确的形状。第三,由于摄像机的不准确,成对的图像对不齐不能避免。我们提出了一个中央对齐模块,以使相应的像素更加对齐。我们通过两个步骤来评估识别的准确性:(1)对LR文本图像使用不同的方法进行超分辨率; (2)用训练过的文本识别器评估SR文本图像,例如ASTER,MOCAN和CRNN。广泛的实验表明,在提高TextZoom中LR图像的识别精度方面,我们的TSRN明显优于7种最新的SR方法。例如,在ASTER和CRNN的识别精度上,它比LapSRN分别高出5%和8%。我们的结果表明,野外的低分辨率文本识别远未解决,因此需要更多的研究工作。
这项工作的贡献是三方面的:
1.我们介绍了第一个具有不同焦距的真实配对场景文本SR数据集TextZoom。我们用三个子集注释和分配数据集:分别为简单,中等和困难。
2.通过比较和分析在合成LR和提出的LR图像上训练的模型,我们证明了提出的TextZoom数据集的优越性。我们还从不同方面证明了场景文本SR的必要性。
3.我们提出了一个具有三个新颖模块的新型文本超分辨率网络。 通过在TextZoom上进行训练和测试以进行公平的比较,它明显超过了7种代表性SR方法。
Related work
Super-Resolution
超分辨率旨在输出与给定的低分辨率图像一致的合理的高分辨率图像。传统方法(例如双线性,双三次或设计的过滤)利用以下洞察力:相邻像素通常表现出相似的颜色,并根据预定义的公式通过在相邻像素的颜色之间进行插值来生成输出。在深度学习时代,超分辨率被视为回归问题,其中输入是低分辨率图像,目标输出是
高分辨率图像[7,20,23,22,24,47,21]。在输入和目标输出对上训练一个深度神经网络,以最大程度地减少预测和地面ground truth之间的距离度量。这些工作主要是在那些流行的数据集上进行训练和评估的[2,45,30,14,31,40]。在这些数据集中,LR图像是通过下采样插值或高斯模糊滤波生成的。最近,一些工作通过调整相机的焦距来捕获LR-HR图像对[4,46,5]。在[4,5]中,采用了一种预处理方法来减少所捕获的LR和HR图像之间的失调。而在[46]中,提出了一种上下文双向损失来利用失调。在这项工作中,提出了一个新的数据集TextZoom,该数据集可填补不存在配对场景文本SR数据集的情况。它被很好地注释并且根据难易程度进行分配。我们希望它可以作为具有挑战性的基准。
Text Recognition
早期的工作采用自下而上的方式[18],该方式首先检测单个字符并将其集成到单词中,或者采用自上而下的方式[16],将单词图像区域视为一个整体并将其识别为多类图像分类问题。考虑到场景文本通常以字符序列的形式出现,CRNN [36]将其视为序列识别问题,并采用递归神经网络(RNN)对序列特征进行建模。通常将CTC [10]损失与RNN输出结合起来,以计算预测序列与目标[25,26]之间的条件概率。最近,越来越多的基于注意力机制的识别方法已经取得了显著的进步[6,28]。 ASTER [37]根据空间变换网络(STN)[17]校正了定向文本或弯曲文本,然后使用注意力的序列到序列模型进行了识别。在这项工作中,我们选择最先进的识别器ASTER [37],MORAN [28]和CRNN [36]作为基线识别器,以评估SR图像的识别准确性。
Scene Text Image Super-Resolution
先前在场景文本图像超分辨率上进行的一些工作旨在提高识别精度和图像质量评估指标。 [29]比较了几种人工滤波器在降采样后的文本图像上的性能。 [32]提出了一种卷积转置的卷积架构来处理二进制文档SR。 [8]将SRCNN [7]应用于ICDAR 2015竞赛TextSR [33]的文本图像SR中,并取得了良好的性能,但未提出面向文本的方法。
这些作品在低分辨率文本识别方面迈出了一步,但它们仅对下采样的图像进行训练,学习回归逆双曲线(或双线性)插值是简单映射功能。由于所有LR图像都是通过简单的下采样公式完全相同地生成的,因此无法很好地泛化到真实文本图像。
TextZoom Dataset
数据收集和注释
我们提出的数据集TextZoom来自两个最先进的SISR数据集:RealSR [4]和SRRAW [46]。这两个新提出的数据集由数码相机捕获的成对的LR-HR图像组成。
RealSR [4]使用两个数码相机(佳能5D3和尼康D810)以四个焦距拍摄。在RealSR [4]中,将这四个焦距图像分别分配为ground truth图像,2X LR图像,3X LR图像,4X LR图像。对于RealSR,我们在105mm焦距图像上注释单词的边界框。 SR-RAW通过SONY FE相机以7种不同的焦距收集,范围从24-240mm。以短焦距拍摄的图像可以用作LR图像,而以较长焦距拍摄的图像可以用作相应的ground truth。对于SR-RAW,我们在240mm焦距图像上注释单词的边界框。
我们给每组中焦距最大的图像标上标签,并按照相同的矩形从剩下的图片中裁切文本框。因此,未对准是不可避免的。带注释的结果中有一些自上而下或垂直的文本框。在此任务中,我们将所有这些图像旋转为水平以更好地识别。我们的数据集中只有很少的弯曲文本图像。对于每对LR-HR图像,我们提供区分大小写的字符串(包括标点符号),边界框的类型和原始焦距的注释。我们在补充材料中详细演示了从SR-RAW和RealSR裁剪的文本图像的详细注释原理。
裁剪后的文本框的大小是多种多样的,例如高度从7到1700像素,因此不适合将从相同焦距裁剪的文本图像视为同一域。根据这些考虑因素,我们定义我们的原则。
(1)没有补丁。在SISR中,通常通过裁剪原始图像中的补丁来生成数据[23,22,9,4,46]。由于字符的形状应保持完整,因此无法将文本图像切成小块。
(2)精度分布。我们将文本图像按照高度和测试准确性(请参阅补充材料中显示的表)进行分类。我们发现,当高度大于32像素时,精度不会明显提高。将图像设置为32像素高也是场景文本识别研究的习惯规则[36,6,28]。小于8像素的图像的准确性太低,几乎没有超分辨率的价值,因此我们丢弃高度小于8像素的图像。
(3)编号。我们发现,在裁剪的文本图像中,高度范围从8到32占了大多数。
(4)没有下采样。由于不应将插值退化引入真实的模糊图像中,因此我们只能将LR图像上采样到相对较大的尺寸。
遵循这4个注意事项,我们对16-32像素高度到32像素高度的图像进行上采样,并对8-16像素高度到16像素高度的图像进行上采样。我们得出结论,(16,32)应该是一个很好的配对,以形成用于场景文本SR任务的2X训练集。例如,从150mm焦距和高度(大小在16-32像素中)拍摄的文本图像将作为70mm对应物的ground truth。因此,我们选择了高度在16像素到32像素之间的所有图像作为ground truth图像,并将其上采样到128×32(宽×高)的大小,并将相应的2X LR图像上采样到 64×16(宽×高)的大小。对于此任务,主要由于文本识别的特殊特性,我们仅从带注释的文本图像生成此2X LR-HR对数据集。我们其他比例的带注释的图像可以用于不同目的。
分配TextZoom
SR-RAW和RealSR由具有不同焦距的不同相机收集。与物体的距离也影响图像的清晰度。因此,数据集应根据其分布进行进一步划分。
训练集和测试集分别从SR-RAW和RealSR中的原始训练集和测试集裁剪而来。 SR-RAW的作者使用了从相机到拍摄对象的较大距离,以最大程度地减少视角偏移[46]。因此,与RealSR相比,在相似焦距下,来自SR-RAW的文本图像的准确性相对较低。通过ASTER测试,在SR-RAW中从100mm焦距裁切出的图像的准确性为52.1%[37],而通过ASTER测试在RealSR中从105mm焦距裁切出的图像的准确性为75.0%(请参阅附表)材料)。在相同高度下,较小焦距的图像会更加模糊。考虑到这一点,我们按难度将数据集分为三个子集。从RealSR裁剪的LR图像为容易。来自SR-RAW的LR图像和焦距大于50mm的图像被视为中等。剩下的为困难。
在此任务中,我们的主要目的是提高对容易,中等和困难子集的识别精度。 我们在补充材料中显示了峰值信噪比(PSNR)和结构相似性指数(SSIM)的结果。
数据集统计信息
补充材料中显示了TextZoom的详细统计信息。
Method
在本节中,我们详细介绍了我们提出的方法TSRN。 首先,我们在4.1节中简要描述我们的pipline。 然后,我们展示了提出的序列残差块。 第三,我们介绍我们的中央对准模块。 最后,我们引入了新的梯度轮廓损失来锐化文本边界。
4.1 Pipeline
图3, 我们提出的TSRN的说明。我们二进制掩码与RGB通道串联, 作为RGBM的4通道输入。输入图像由中央对齐模块接收,然后输入到管道中。输出的是超分辨的RGB图像。输出由L2损失监督。RGB通道的输出由LGP损失来监督。
我们的基准是SRResNet [23]。如图3所示,我们主要对SRResNet的结构进行两个修改:
(1) 在网络前面添加一个中央对齐模块;
(2) 用提议的顺序残差块(SRB)替换原始基本块。
在这项工作中,我们将二进制掩模与RGB图像连接起来作为输入。通过计算图像的平均灰度等级,可以简单地生成二进制掩码。掩模的详细信息在补充材料中显示。在训练过程中,首先,输入由中央对齐模块进行校正。然后,我们使用CNN从校正后的图像中提取浅层特征。堆叠五个SRB,我们提取更深层的和序列相关的特征,并按照ResNet [12]进行shortcut连接。最终由上采样模块和CNN生成SR图像。我们还设计了一种梯度先验损失(LGP),旨在增强字符的形状边界。网络的输出由MSELoss(L2)和我们提出的梯度轮廓损失(LGP)监控。
4.2 Sequential Residual Block
先前的最新SR方法主要在PSNR和SSIM中追求更好的性能。传统的SISR只关心纹理重建,而文本图像具有很强的顺序特征。在文本识别任务中,场景文本图像对上下文信息进行编码,通过递归神经网络(RNN)进行文本识别[13]。从他们那里得到启发,我们通过添加双向LSTM(BLSTM)机制修改了残差块[23]。受[39]的启发,我们在水平线上建立了序列连接器,并将特征融合到更深的通道中。与[39]不同,我们建立的网络内递归体系结构不是用于检测,而是用于底层重建,因此我们仅适应构建文本行序列相关性的想法。在图3中,简要示出了SRB。首先,我们通过CNN提取特征。然后,置换和调整特征图的大小,因为可以将水平文本行编码为序列。然后,BLSTM可以传播误差微分[36],并将特征图转化为特征序列,并将其反馈回卷积层。为了使倾斜的文本图像具有与序列相关的鲁棒性,我们从水平和垂直两个方向引入BLSTM。 BLSTM将水平和垂直卷积特征作为顺序输入,并在隐藏层中循环更新其内部状态。
4.3 Central Alignment Module
失准使像素到像素的损失,例如L1和L2产生明显的伪像和双阴影。 这主要是由于训练数据中像素的未对准。 由于LR图像中的某些文本像素在空间上与HR图像中的背景像素相对应,因此网络可能会学习错误的逐像素对应信息。 如第3节所述, 与LR图像相比,HR图像中的文本区域更加居中对齐。 因此,我们将STN [17]作为我们的中央对齐模块。 STN是一个空间变换网络,可以校正图像并端到端学习。 为了灵活地纠正空间变化,我们采用TPS变换作为变换操作。 一旦LR图像中的文本区域在中心附近对齐,逐像素损失将获得更好的性能,并且可以减轻伪影。 我们将在补充材料中显示中央对准模块的更多详细信息。
4.4 Gradient Profile Loss
[38]中提出了梯度轮廓先验(GPP),以在SISR任务中产生更锐利的边缘。 梯度场是指像素的RGB值的空间梯度。
由于我们有一个成对的文本超分辨率数据集,因此我们可以将HR图像的梯度场用作ground truth。 通常,文本图像中字符的颜色与背景形成强烈对比,因此锐化边界而不是平滑字符会使字符更加清晰。
5 Experiments
5.1 Datasets
我们在提出的TextZoom(请参阅第3节)训练集上训练SR方法。 我们根据容易,中等和困难的三个子集评估模型。 为避免降采样退化,所有LR图像均应上采样为64×16,HR图像应升为128×32。
Implementation Details
在训练期间,我们将L2损失的权重设置为1,将LGP的权重设定为1e−4。 我们使用动量项为0.9的Adam优化器。 在评估识别准确性时,我们使用官方的Pytorch版本代码和ASTER发布的模型:aster.pytorch,MORAN:MORAN v2.pytorch,CRNN:crnn.pytorch。
所有SR模型均使用4个NVIDIA GTX 1080ti GPU按500个时期进行训练。 batchsize被调整为原始论文中的设置。
5.3 Is SR necessary for Text Recognition?
我们从三个方面进一步定量分析了超分辨率的必要性。
假设如果我们直接在小尺寸图像上训练识别网络,则在识别低分辨率(LR)文本图像上可以获得更好的性能,然后可以取消超分辨率过程。该疑问是合理的,因为深度神经网络在训练域上具有很强的鲁棒性。为了反驳此疑问并证明文本图像超分辨率的必要性,我们比较了4种方法的识别精度:
- Released
使用经过一般尺寸训练的ASTER [37]模型来识别(高度不少于32像素,我们在这里使用官方发布的模型)。 - ReIm
用在低分辨率图像上训练的模型进行识别, 在这项工作中,我们在Syn90K [15]和SynthText [11]上以64×16的大小重新实现了ASTER [37],所有训练细节均与原始论文相同)除输入大小。 - Fine-tune
在我们的TextZoom训练集中Fine-tune发布的ASTER [37]模型。 - Ours
根据尺寸选择低分辨率图像,然后使用我们提出的TSRN生成SR图像,然后使用ASTER [37]官方发布的模型对其进行识别3。
为了验证鲁棒性,我们从7个常见场景文本测试集IC13,IC15,CUTE,IC03,SVT,SVTP,CUTE和IIIT5K中选择了所有小于64×16的图像,总共获得436张图像。我们将此测试集称为CommonLR。我们在数据集TextZoom和CommonLR上比较了这4种方法。从表2中可以看出,重新实现的模型确实可以大幅提高LR图像的准确性。 TextZoom的平均准确性可以提高5.4%,从47.2%提高到52.6%。而且CommonLR的精度也可以提高5%。重新实现的模型的结果仍低于我们的结果的准确性(TSRN(我们的)+ ASTER(已发布))。
当我们在TextZoom训练集上微调Aster时,TextZoom测试集的准确性甚至会比我们的方法更高。但是TextZoom是用于识别任务的小型数据集,其不同分布会导致识别器过拟合。微调方法的CommonLR的精度最低。而且,在这种微调的Aster模型上,其他测试集(如IC13,IC15等)将急剧下降超过10.0%。
实际上,我们的方法在以下方面优于微调和重新实现的方法。
(1)经过微调的模型在TextZoom上过拟合。由于TextZoom的数量远远不足以进行文本识别任务,因此它在TextZoom上实现了最高的性能,而在CommomLR上却达到了最低。超分辨率(低级任务)通常需要较少的数据就能收敛。我们的方法可以根据大小直接选择SR或者不选择SR,以获得更好的整体性能。
(2)我们的SR方法还可以为人们阅读提供更好的视觉效果(见图5)。
(3)重新实现和微调方法分别需要2个识别模型来识别大尺寸和小尺寸图像,而我们的方法只需要一个微小的SR模型,这会带来边际计算成本。这部分可以在补充材料中找到。
因此,SR方法可以成为场景文本识别的一种有效,便捷的预处理程序。
5.4 Synthetic LR vs. TextZoom LR
为了证明配对场景文本SR图像的优越性,我们比较了在合成数据集和TextZoom数据集上训练的模型的性能。 定量结果显示在补充材料中。
5.5 Ablation Study on TSRN
为了研究TSRN中每个组件的影响,我们逐渐修改了网络的配置并比较了它们之间的差异以构建最佳网络。为简便起见,我们仅比较ASTER的准确性[37]。
1)SRB。我们在SR-ResNet [23]中将BLSTM机制添加到基本残差块中,并获得提出的SRB。 SRB是TSRN中的基本组成部分。比较表3中的#0和#1,堆叠5个SRB,与SRResNet [23]相比,我们可以将平均准确度提高4.9%。
2)中央对齐模块。中央对齐模块可以使平均准确度提高1.5%,如表3的方法2所示。从图5中可以看出,没有中央对齐模块,伪影很强,而且字符扭曲。尽管对齐方式更合适,但由于逐像素损失函数可以更好地监督训练,因此我们可以生成更高质量的图像。
3)梯度轮廓损失。从表3的方法3中,我们可以发现建议的梯度分布损失可以使平均准确度提高0.5%。尽管增加很小,但视觉效果更好(图5方法3)。
在补充材料中,我们将进一步讨论该方法的详细组成部分。
5.6 Comparison with State-of-the-Art SR methods
为了证明TSRN的有效性,我们在TextZoom数据集上比较了7种SISR方法,包括SRCNN [7],VDSR [20],SRResNet [23],RRDB [22],EDSR [24],RDN [47]和LapSRN [21]。所有的网络都在我们的TextZoom训练集中进行了训练,并在我们的三个测试子集中进行了评估。
在表4中,我们列出了由ASTER [37],MORAN [28]和CRNN [36]测试的所有上述7种方法,以及BICUBIC和提出的TSRN。在表4中,可以看出TSRN在识别准确度方面明显优于所有7种SISR方法。尽管这7种SISR方法可以达到相对较高的准确度,但我们应该注意的是SR结果与BICUBIC之间的差距。这些方法可以将平均准确度提高2.3%到5.8%,而我们的方法可以将平均准确率提高10.7%到14.6%。我们还可以发现,我们的TSRN可以提高所有三个最新识别器的准确性。在补充材料中,我们展示了PSNR和SSIM的结果,并表明我们的TSRN还可以超越PSNR和SSIM中的大多数最新方法。
6 Conclusion and Discussion
在这项工作中,我们验证了场景文本图像超分辨率任务的重要性。我们提出了TextZoom数据集,据我们所知,它是第一个真正配对的场景文本图像超分辨率数据集。 TextZoom进行了很好的注释和分配,并分为三个子集:简单,中等和困难。通过广泛的实验,我们证明了真实数据优于合成数据。为了解决文本图像超分辨率的任务,我们建立了一种新的面向文本的超分辨率方法TSRN。我们的TSRN明显胜过7种SR方法。它还表明低分辨率文本超分辨率和识别远未解决,因此需要更多的研究工作。
将来,我们将捕获更多合理分布的文本图像。避免使用过大或过小的图像。图像还应该包含更多种语言,例如中文,法语和德语。我们还将关注新方法,例如将识别注意力引入文本超分辨率任务中。