TextSR_note - yubo105139/paper GitHub Wiki
对用于文本检测和识别的图像进行超分,首先想到的就是将识别的损失函数进行融合。TextSR使用该方法
TextSR: Content-Aware Text Super-Resolution Guided by Recognition(ICML2019)
介绍
传统的超分辨率方法是以重建自然图像的细节纹理为目的,不适用于模糊文本。与自然图像的纹理相比,场景文本具有任意的姿态、光照和模糊,超分辨率文本图像具有更大的挑战性。需要一个内容感知的文本超分辨率网络。提出使用文字识别网络指导超分网络的训练,来生成清晰、锐化的、可识别的文本图像进行识别。将文本识别的Loss作为文本感知的缺失来指导超分辨率网络的训练,从而更加关注文本的内容,而不是无关的背景区域。
简要概述
整个模型由生成器、鉴别器和文本识别器三部分组成。生成器和鉴别器采用(SRGAN),文本识别器采用(ASTER)。
生成器中,超分网络用于上采样小的模糊文本到合适的大小用于识别。
鉴别器中,分类网络对HR图和生成的SR图进行判别,用于对抗训练。
使用文本感知损失 Text Perceptual Loss (TPL) ,使生成器产生更清晰的图。TPL由文本识别器提供,用于指导生成器生成更易进行识别的图。
方法:先训练ASTER识别器, 然后ASTER的参数保持不变,训练SR的生成器。
详细设计
1.SRGAN
netG 为生成器使用了感知损失perceptual loss 和对抗损失adversarial loss 。
传统的生成器只关注纹理细节,关注不重要的背景区的细节。由此提出TextSR,使用了内容感知生成器。
2.TextSR网络结构
-
**generator network:**upsample, output SR.
2个反卷积层, 上采样4倍。
-
discriminator network: distinguish, is SR or HR
输入为SR图, 输出为该图为HR的概率值
-
text recognition: ASTER
由text rectification network 和text recognitionnetwork组成。矫正网络能矫正字符和对不规则字符进行变形。识别网络使用en-decode结构对序列字符进行预测。
encode 残差块进行特征提取。
decode为引入注意力机制的LSTM结构,能识别94个字符类别。
损失函数
SRGAN的损失l_SR由对抗损失和内容感知损失组成。
对抗损失
包括生成损失和判别损失。
生成器生成的SR的pixel-wise loss
判断其为HR图的可能性。
文本感知损失
文字识别器的损失定义如下:
根据生成的SR图片的文字序列被正确识别来定义
期望基于该训练集训练的生成器,其生成的图像$l^{TR}$尽可能小。表达为:
inspired by perceptual loss
原始的感知损失perceptual loss, 使用一个在imagenet上预训练好的VGG网络,计算SR和原始图的特征图相似度。从而使网络理解图像上的一般内容。
如何融合文字识别器
为了让文本感知器更好的监督生成器的生成,做了以下几组测试:
- 对生成器和ASTER文字识别器同时进行端到端训练
- 先训练ASTER,然后同时对生成器和ASTER文字识别器同时进行端到端训练
- 先训练好ASTER,在训练生成网络的时候固定ASTER的参数。
实验结果发现这几种方法表现相似,所以选用文字识别器参数固定的方法。
实验设计
实验设置
1.使用的数据集 SynthText :trainning data ;filter smaller than 128*32;1.29 millions
2.优化器及参数,网络权重初始化分布,batch, iteration, learning rate,硬件配置,
有效性验证
- 超分的表现
在所有数据集上,相比SRGAN和BICUBIC, TextSR在超分指标上表现优越。
- TPL对文本图像的有效性
加入超分,加入带内容感知损失的超分方法 对小文本图像识别的有效性,相比SRGAN,TextSR对文字图像识别准确率提高更明显。
在ICI3数据上文本识别率, 随着图像size减小,加入超分的识别效果增长越大。
使用中间层的激活热图(activations heatmap.),表明TPL增强了对文字区域的响应。
- 与其他SOT方法比较识别精度
融合TextSR的ASTER识别器。
- 带额外的文本检测的作用
场景文本图像不需要检测,自动对文字区域进行了超分。
训练数据集的缘故, 重建英文文字效果更好。
总结:
将文本识别的Loss作为文本感知的缺失来指导超分辨率网络的训练,从而更加关注文本的内容,而不是无关的背景区域。
使用GAN的方法实现超分,将文本识别损失反向传播至生成网络。