摘要
1. 简介
使用递归神经网络来预测不定长的字符。也有人提出了一个转换模块,将输入的图片进行矫正来处理弯曲的文本。
论文的主要贡献
- 分析了现有论文提到的各个数据集的不一致性。
- 针对OCR识别提出了一个统一的框架,将模型分成4个连续的部分:矫正转换(Trans),特征提取(Feat),序列模块(Seq),预测(Pred)
- 该框架不仅提供了现有的方法,而且还提供了它们可能的变体,以便对模块方面的贡献进行广泛的分析。通过这项研究,我们更加严格地评估了各个模块的贡献,并提出了以前被忽视的模块组合,从而改进了现有的技术水平。此外,我们还分析了基准数据集上的失败案例,以确定STR中的剩余挑战。
2. 数据集
2.1 人工合成的数据集
-
MJSynth(MJ)含有8.9百万的croped文本图片,主要特点如下:
- 不同的字体渲染
- 边框和阴影渲染
- 背景着色
- 字体,边框和背景的合成
- 应用投影失真
- 与现实世界的图像混合
- 添加噪音
-
SynthText(ST),是另外一个人工合成的图片,其本来是用于文本定位的。但是其中可以crop出5.5百万的文字图片
MJ和SJ的样例图:
在前有的论文中,有些论文用了MJ/ST,而训练数据集的不统一,就很难评判是否是模型的提高,所以以后要用同样的训练数据集
2.2 显示数据集for测试
主要有7个现实数据集,如上图。同时可以分为常规数据集和非常规数据集:
- IIIT
- SVT,谷歌街景图像,257张训练,647张测试,有很强的噪音,模糊和低分辨率
- IC03
- IC13
非常规数据集 - IC15
- SP是从谷歌街景中收集的,包含645幅图像用于评估。由于非正面视角的流行,许多图像包含了透视投影
- CT,主要为弯曲的文本
3. STR框架分析
STR任务和与计算机视觉任务(如目标检测)和序列预测任务相似,所以很多都是CNN和RNN的提高。
- 第一个就是CRNN,CNN+RNN的组合,用CNN提取特征,用RNN对其进行重构,实现鲁棒序列预测
- 为了矫正文本图像,矫正模块提出来了
- 改进的CNN特征提取器
- 为了提高推理速度,有的模型忽略了RNN
- 为了提高字符序列预测,提出了基于注意力的解码器
整个框架主要分为了4个部分
- 矫正模块
TPS,一个STN的变体,以其灵活性应用于文本行不同的纵横比[24,17]。TPS在一组基准点之间使用平滑样条插值, - 特征提取模块
主要测试了VGG,RCNN,ResNet - 序列模块
主要是从CNN的特征中提取额外的特征,主要用BiLSTM,RNN是单方向的 - 预测模块
主要有两种方式:CTC和attention基于注意力机制的方式
4. 实验和分析
2×