Implicit Feature Alignment: Learn to Convert Text Recognizer to Text Spotter

在这里插入图片描述

Motivation

在两阶段的OCR算法中,文字识别算法的效果通常收到文字检测的效果限制。 作者提出了 Implicit Feature Alignment,IFA模块,能够让普通的文字检测模块在无需text detector下进行多行文字识别(识别篇章)

通过将IFA整合到文字识别的两种主流方法 attention-based和CTC-based,分别对应attention-guided prediction(ADP)和Extended CTC(ExCTC);并且为了抑制negative prediction,改进 Aggregation Cross-Entropy,提出Wassetein-based Hollow Aggreation Cross-Entropy(WH-ACE )

方法

在这里插入图片描述

模型在推理过程如图所示,输入图像 x x x(单行文本或者多行文本),首先采用CNN的特征提取器 F \mathfrak{F} F提取得到特征F
在这里插入图片描述
得到的特征 F F F直接经过分类器 C \mathfrak{C} C得到分类的结果图Y,其中K表示字符类别数+空字符
在这里插入图片描述
通过后处理就可以得到最终的预测序列。

IFA隐式位置对齐,从而特征F直接接分类器,能够在对应位置预测出正确的字符。下面详细介绍各个部分组件。

Attention-guided Dense Prediction(ADP)

模型在训练时图片用的单行文本。在通常的带注意力机制Encoder decoder中, attention decoder A \mathfrak{A} A采用RNN,GRU,LSTM等序列化输出文本,从而保证输出的序列关系,即
P ( y ∣ x ) = P ( y 1 ∣ x ) P ( y 2 ∣ x , y 1 ) ∗ . . . ∗ P ( y t ∣ x , y 1 , . . . , y t − 1 ) P(y|x)=P(y1_|x)P(y_2|x,y_1)*...*P(y_t|x,y_1,...,y_{t-1}) P(yx)=P(y1x)P(y2x,y1)...P(ytx,y1,...,yt1)
将attention map在t步记作 α t \alpha_t αt,
在这里插入图片描述
其中 e t , h , w e_{t,h,w} et,h,w是用来计算attention map的energy map或者score map。上下文向量 c t c_t ct,
在这里插入图片描述
c t c_t ct作为分类器的输入,得到t时刻的预测 y t y_t yt
在这里插入图片描述
损失函数为交叉熵损失函数,
在这里插入图片描述
在这里插入图片描述

softmax会鼓励预测接近one hot分布(感觉这部分是,t步预测时attenion map通常只在对应的字符附件有响应,从而才有下面的公式)
在这里插入图片描述
所以这里是认为attention map的机制实现了对齐的,从而网络也学习到像素对应的位置特征。

Extended CTC(ExCTC)

这里的ExCTC是利用squeezeNet channel-wise做attention的思想,将得到的 N ∗ C ∗ H ∗ W N*C*H*W NCHW的feature map沿着 H H H维度做attention,这样通过softmax后每一列只有一个响应,在沿着 H H H方向求和,得到 N ∗ C ∗ 1 ∗ W N*C*1*W NC1W,最后直接过分类器都得到预测结果,预测结果是1维的,接下来就是传统的CTC loss。
在这里插入图片描述

Wassertein-based Hollow ACE(WH-ACE)

后处理

通过分类器,最终得到对应的二维的字符预测结果,接下来就需要后处理。这里的后处理类似于DFS求解连通域
按照从左到右,从上到下的顺序,寻找每一个非blank预测结果,将所有联通的结果合并算作一个,最后得到最后的结果。

总结

本文在训练用单行文本训练,通过设计的attention模块和exCTC保证网络在不需要字符级的标注下,能够在多行文本inference在不同位置预测对应字符。但是感觉从原理上attention 部分在多行能够起作用,SE部分多行文本应该一列只有一个响应啊,虽然在inference的时候将SE的去掉,也许是通过训练时后只用单行文本,用SE来引导网络在对应位置和字符建立implicit的约束吧。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值