点击我爱计算机视觉标星,更快获取CVML新技术
本文简要介绍来自谷歌近期的一篇论文“Towards Unconstrained End-to-End Text Spotting”,此论文已被录用为ICCV 2019 Oral,它主要解决了自然场景图像中文本的端到端识别问题。
一、研究背景
传统OCR方法通常是将自然场景中的文本阅读分解为两个子问题,分别是场景文本检测,截取文本行的识别,总体上再将两个子模型级联达到文本阅读的目的。然而,作者指出这样的级联思路具有不少缺点,例如错误累积,难以最大化端到端的识别性能,数据和模型间的依赖带来的巨大工作量。而端到端文本识别(End-to-End Text Spotting)是将文本阅读问题看成一个整体来解决,其基本思想是设计一个同时具有检测单元和识别单元的模型,共享其中两者的CNN特征,并联合训练。在推断阶段,此端到端模型可以在一个前向传播中预测场景图像中的文本位置和内容信息。
二、原理简述
Fig. 1. Overall architecture
Fig 1是作者提出的端到端模型的整体结构。总体上,模型由3个单元和RoI Masking组成,3个单元分别是Backbone(CNN特征提取单元),Detector(检测单元),Recognizer(识别单元),其中RoI Masking是本文提出的Detector与Recognizer的一种交互模式。
关于Backbone,其输入是H*W的一张自然场景图,作者试验了两种Backbone结构:ResNet-50和Inception-ResNet,并根据[4]进行略微修改,引入Atrous Convolutions使其有效的Output Stride为8,作用是提供Dense Feature的同时可以维持较大的Receptive Field,便于捕获自然场景中尺寸上有巨大变化的文本信息。这个Backbone产生的特征会共享给Detector和Recognizer作为其输入。
关于Detector,作者是基于标准的Mask R-CNN[3]的实现,分为两阶段去检测候选文本区域,第一阶段,Backbone的特征输入到Region Proposal Network后产生一组RoIs,在第二阶段由Cls Head,Reg Head和Mask Prediction Head对RoIs进行进一步分类,精修和实例分割,可参考Fig1的蓝色虚线框部分。注意,稍微不同于Mask R-CNN的有两点,(1)第二阶段的Cls head是Text/non Text二分类,而非Object的多分类;(2)与Cls Head相应,Mask Prediction Head输出通道数变为2,分别代表Background和Text分割信息的Binary Mask。
关于多尺度特征融合和RoI Masking,作者指出Stride 8的特征对于Text Detection是足够的,但对于Text Recognition这个较细粒度的任务则需要更密集的特征,因此,作者引入了多尺度特征融合的方法来加强输入到Recognizer的特征。具体来说,作者将Backbone中的Stride 8和Stride 4的特征按照Feature Pyramid Network[5]的思路进行了两个尺度的融合,可参考Fig1红色虚线框的前半部。另外,本文指出目前End-to-End识别方法存在的一个问题是Detector和Recognizer的交互模式,例如[6]和[8]中是分别使用了RoI Transforms和RoI Rotate去对Rotated Rectangles或Quadrilaterals的文本实例特征进行矫正,这样的交互模式对于直线文本情况是适用的,但往往会失效于曲线文本。因此,作者提出了新的交互模式RoI Masking,具体流程是先由Detector产生的Axis-aligned Bounding Box用来截取特征,然后将这些Cropped Out Feature和Instance Segmentation Mask(Inference阶段由Mask Branch预测得)相乘,最后经过Resize后再送到Attention Decoder中。此举目的是过滤相邻文本和背景信息,并免去对文本特征的矫正操作。本文指出RoI Masking可显著提高Recognizer的性能。
Fig. 2. Architecture of the standalone seq2seq based recognizer
关于Recognizer,由于前述的RoI Masking并没有对特征进行矫正,故CTC-based方法并不适用,据此,作者借鉴了Bahdanau-style的Attention思路[1]来识别文本,如Fig2所示。与[1]一样,本文 Recognizer的主要思想也是由一个LSTM-Decoder来依次预测各个字符,直到预测类别为End-of-Sequence(EOS)才停止。其中,LSTM每个Step的输入是由上一个隐含层状态,上一个输出Symbol
和Context Vector
三部分组成,如下式所示。
上述的Context Vector就是Attention机制的输出表征,其实质是Flattened Image Feature h的加权和(注意此处与[1]不同,[1]中所加权的Feature是Encoder-LSTM的全部Hidden States),其中的权值(Attention Weights)在每个Decoding Step是处于更新状态的。具体来说,每个Step的Attention权值如下式所计算出来,可以看出,其本质上是在建模Decoding States对Conv Feature Map每一处特征(
)的响应值,其中
是可学习的Linear Transform参数。
关于联合训练和损失函数,作者还观察到了目前End-to-End方法存在的另一个问题,也就是Recognizer在训练过程中往往需要远比Detector更多的数据和迭代次数,因此会出现的情况是,现有公开数据集想用来联合训练并得到一个高性能的Attention Decoder是显得不够大的,进一步说,即使通过训练足够长的时间来使Recognizer收敛,但Detector会存在过拟合的高风险。因此,作者通过增加一个部分标注的数据集(通过一个OCR引擎[2]来自动标注)来解决这问题,具体来说,训练过程中当样本是Fully Labeled时,Detector和Recognizer的权值都会更新,当样本是Partially Labeled时,则只有Recognizer被更新,具体如下式。
三、主要实验结果及可视化效果
TABLE 1 Comarison on ICDAR15.”MS” represents multi-scale testing.”P”,”R” and “F” stand for precision, recall and F-score respectively.
TABLE 2 Results on Total-Text. No lexicon is used in end-to-end evaluation.
TABLE 3 Results on ICDAR15 test set under different model configurations and training strategies.
Fig. 3. Qualitative results of the method on ICDAR15(first two columns) and Total-Text(last two columns) datasets.
Fig. 4. Visualization of the atttention weights. Some steps are skipped for better visualization
由TABLE 1、TABLE 2来看,文中所提模型在ICDAR2015(Straight Text的代表)和Total-Text(Curved Text的代表)上取得了SOTA的结果,尤其是Total Text数据集上,比其余方法的End2End结果要大幅度领先,这也一定程度上证明了RoI Masking的方法对于Curve Text的有效性。从Fig3和Fig4也可以辅证本文模型在任意形状的文本检测和识别问题上的鲁棒性,更详细的内容请参考原文,链接附后。
四、总结及讨论
本文模型中的Detector在MaskR-CNN[3]的基础上把其中的Classification Head从多分类改为Text/non-text的二分类,Mask Prediction Branch的输出也相应地调整2通道,分别为Text Mask和Non-text Mask,Masks经过Polygon的拟合得到最终的检测结果。也即,作者将[3]修改为了一个简单、有效的纯检测器。然后,基于Detector产生的RoIs和Masks,作者提出了RoI Masking方法来为Recognizer提供准确的文本特征信息。而Recognizer则是基于Bahdanau-style[1]的Attention思路去构建的一个LSTM-Decoder,能依次选择相关的字符特征进行解码,直到预测的字符类别为EOS。与[1]不同的是所加权的字符特征从Encoder-LSTM的隐含层信息改为Flattened的2维卷积特征。我认为,这样做的好处是可增强Recognizer对二维Irregular Text的位置变化的敏感度。毕竟对于二维图像特征,往往需要经过压缩为一维的特征序列方可输入到LSTM,从而获取Hidden State信息,但这将使文本的二维位置信息部分丢失。最后值得一说的是,本文模型是目前为止第一个可以在端到端训练策略中从部分标注的样本(借助现有OCR Engine[4])中收获性能增益的方法。
RoI Masking是本文方法的一个亮点(虽然很简单很直接)。
关于和Mask TextSpotter的比较,本文和Mask TextSpotter[7]相似的地方是两者模型都和Mask R-CNN[3]关系很大,但不同的地方也很明显。可以概括为,Mask TextSpotter比较完整地继承了Mask R-CNN的思想,它将Mask Prediction Head用于字符分割,Global Word分割和Background分割,值得注意的是,既然Mask Head用于字符分割,即Mask Prediction Head也完成了Recognizer的功能,因为每个Character Mask的通道索引就代表着字符类别;而明显不同的是,本文模型只将Mask R-CNN修改为一个单纯的文本检测器(Detector),其Mask Prediction Head只负责分割出文本和非文本区域,而Recognizer则由独立于Mask R-CNN的Attention-decoder来担任,Detector输出的RoIs和Masks则用于为Recognizer提供准确的Text Instance Feature。另外,两个模型的Mask R-CNN模块中的Classification Head和Regression Head是一致的设计。
五、相关资源
Bahdanau-style attention论文地址:https://arxiv.org/pdf/1409.0473.pdf
Mask R-CNN论文地址:http://openaccess.thecvf.com/content_iccv_2017/html/He_Mask_R-CNN_ICCV_2017_paper.html
FOTS论文地址:http://openaccess.thecvf.com/content_cvpr_2018/html/Liu_FOTS_Fast_Oriented_CVPR_2018_paper.html
TextNet论文地址:https://arxiv.org/pdf/1812.09900.pdf
Mask TextSpotter(ECCV版)论文地址:http://openaccess.thecvf.com/content_ECCV_2018/html/Pengyuan_Lyu_Mask_TextSpotter_An_ECCV_2018_paper.html
参考文献
[1] Bahdanau D, Cho K, Bengio Y. Neural machine translation by jointly learning to align and translate[J]. arXivpreprint arXiv:1409.0473, 2014.
[2] Bissacco A, Cummins M, Netzer Y, etal. Photoocr: Reading text in uncontrolled conditions[C]//Proceedings of theIEEE International Conference on Computer Vision. 2013: 785-792.
[3] He K, Gkioxari G, Dollár P, et al. Mask r-cnn[C]//Proceedingsof the IEEE international conference on computer vision. 2017: 2961-2969.
[4] Huang J, Rathod V, Sun C, et al. Speed/accuracy trade-offsfor modern convolutional object detectors[C]//Proceedings of the IEEEconference on computer vision and pattern recognition. 2017: 7310-7311.
[5] Lin T Y, Dollár P, Girshick R, et al. Feature pyramid networks for object detection[C]//Proceedings of the IEEE conference oncomputer vision and pattern recognition. 2017: 2117-2125.
[6] Liu X, Liang D, Yan S, et al. Fots: Fast oriented textspotting with a unified network[C]//Proceedings of the IEEE conference oncomputer vision and pattern recognition. 2018: 5676-5685.
[7] Lyu P, Liao M, Yao C, et al. Masktextspotter: An end-to-end trainable neural network for spotting text with arbitrary shapes[C]//Proceedings of the European Conference on Computer Vision(ECCV). 2018: 67-83.
[8] Sun Y, Zhang C, Huang Z, et al.TextNet: Irregular Text Reading from Images with an End-to-End Trainable Network[C]//Asian Conference on Computer Vision. Springer, Cham, 2018: 83-99.
原文作者:Siyang Qin, Alessandro Bissacco, MichalisRaptis, Yasuhisa Fujii, Ying Xiao
撰稿:李子彦
编排:高 学
审校:殷 飞
发布:金连文
免责声明:(1)本文仅代表撰稿者观点,个人理解及总结不一定准确及全面,论文完整思想及论点应以原论文为准。(2)本文观点不代表本公众号立场。
OCR交流群
OCR交流群是52CV最活跃的技术交流群之一,关注文本检测、识别、风格化相关技术,聚集了大量学术界和产业界的朋友,扫码添加CV君拉你入群,(如已为CV君其他账号好友请直接私信)
(请务必注明:OCR)
喜欢在QQ交流的童鞋,可以加52CV官方QQ群:805388940。
(不会时时在线,如果没能及时通过验证还请见谅)
长按关注我爱计算机视觉