SEED: Semantics Enhanced Encoder-Decoder Framework for Scene Text Recognition ---论文阅读笔记

Paper : https://arxiv.org/abs/2005.10977

Code : https://github.com/Pay20Y/SEED

针对图像模糊,照明不均匀和字符不完整的问题提出模型 SEED(语义增强的编解码框架),可以识别低质量的场景文本。

SEED: Semantics Enhanced Encoder-Decoder Framework for Scene Text Recognition ---论文阅读笔记

SEED 基本流程

  1. 图像输入到矫正模块,将不规则形状的文本矫正为水平文本;
  2. 将矫正后的特征输入到编码器 ( CNN + LSTM ) ,输出 hh
  3. 使用两个线性函数将 hh 处理为语义信息 SS
  4. 使用语义信息 SS 作为解码器的初始状态,编码器的输出 hh 作为解码器的输入,预测结果。

SEED 通用框架

对于普通的 Encode-Decoder 和 基于 Attention 的 Encoder-Decode,解码器仅仅依赖局部的信息去解码,而没有使用全局信息,SEED 加入了语义模型学习语义信息作为图片的全局信息。SEED 主要包含四个部分:

  1. 编码器:提取视觉特征,CNN + LSTM;
  2. 语义模型:预测语义信息,当做图片的全局信息
  3. 预训练语言模型:生成 word embedding,监督预测的语义信息
  4. 解码器:预测结果,Attention + RNN

可以使用在任何基于 Attention 的Encode-Decode 的模型。

语义模型

SEED: Semantics Enhanced Encoder-Decoder Framework for Scene Text Recognition ---论文阅读笔记

输入:解码器的输出 hh

结构:两个线性函数 ( 代码中用了一个 )

输出:语义信息 SS

使用预训练的语言模型 FastText 生成的 word embedding 监督语义信息 SS,使用余弦嵌入损失 ( cosine embedding loss )

预训练语言模型

SEED 生成 word embedding 的预训练的语言模型使用 FastText,使用生成的 word embedding 监督预测的语义信息,FastText 也可以解决词汇量不足的问题。

FastText词嵌入的可视化指南

Semantics Enhanced ASTER ( SE-ASTER)

将 ASTER 作为提出框架的一个具体实例,SE-ASTER

SEED: Semantics Enhanced Encoder-Decoder Framework for Scene Text Recognition ---论文阅读笔记

包含四部分:矫正模块,编码器,语义模型,解码器

首先,图像输入到矫正模块,把图片矫正为水平的 (TPS)。

然后,将矫正后的特征输入到编码器中,编码器包含 45 层的 ResNet 和 256 个隐藏单元的 BiLSTM,得到编码器的输出 h=(h1,...,hL)h=(h_1, ...,h_L) ,大小为 $ L × C$ ,LL 是 CNN 最后特征图的宽度,CC 是深度。

编码器输出特征 hh 有两个作用,一个是通过语义模块预测语义信息,另一个是作为解码器的输入。

预测语义信息,首先把特征序列展平为 KK 维的向量 IIK=L×CK=L×C ,使用两个线性函数预测语义信息 SS
S=W2σ(W1I+b1)+b2(1) S = W_2 \sigma (W_1 I + b_1) + b_2 \tag{1}
σ\sigma 是 ReLU **函数。

然后使用语义信息 SS 作为解码器的初始状态,编码器的输出 hh 作为解码器的输入,预测结果。解码器使用单层 attention GRU,attention 使用 Bahdanau-Attention

Loss Function

总损失:
L=Lrec+λLsem(2) L = L_{rec} + \lambda L_{sem} \tag{2}
LrecL_{rec} 是预测概率和 GT 的交叉熵损失,LsemL_{sem} 是预测的语义信息和 word embedding 的 cosine embedding 损失。
Lsem=1cos(S,em)(3) L_{sem} = 1 - cos(S, em) \tag{3}
SS 是预测的语义信息,emem 是预训练的语言模型生成的 word embedding

识别结果示例:

SEED: Semantics Enhanced Encoder-Decoder Framework for Scene Text Recognition ---论文阅读笔记

总结

由于在语义模型存在全连接层,所以在推理阶段提取特征之后的特征维度必须和训练时相同,因此在推理阶段输入图片的大小必须处理为训练时图片的固定大小。在处理较长图片时,强制缩放,会造成一定损失,对预测结果造成负面影响。