【论文】ABCNet: Real-time Scene Text Spotting with Adaptive Bezier-Curve Network

论文题目:【论文】ABCNet: Real-time Scene Text Spotting with Adaptive Bezier-Curve Network

作者:Yuliang Liu, Hao Chen, Chunhua Shen, Tong He, Lianwen Jin, Liangwei Wang

会议/时间:CVPR2020

链接: arXiv

论文目标

目前的文本检测和识别任务,包括基于字符或者基于分割的方式,通常需要负责的后处理流程提取得到文本边界框或者是负责的模型结构和处理流程。文章通过提出自适应的贝塞尔曲线网络,实现了端到端的检测和识别任务,同时避免引入计算开支,在保证较高的准确率的时候具有较高的效率。使用贝塞尔曲线作为边界框也可以减少任意形状文本的表示成本。

相关工作

端到端的文本识别任务通常包括文本检测和文本识别两个阶段。在通用的端到端文本识别任务中,可以使用RoI Pooling等方式将检测阶段提取到的特征应用在识别任务中。类似的思路还包括RoI Masking、RoI Transform、Text Align Sampling、RoI Slide等方式。在面向任意形状文本的端到端识别任务中,关键在于在检测阶段使用什么方式来表示任意形状的文本,例如使用多边形边框或者使用基于单字符的方式。

本文方法

模型整体结构如下,主要包括贝塞尔曲线表示的文本检测,贝塞尔对齐和轻量级的文本识别网络。

abc-framework.png

在模型中,将文本边框使用贝塞尔曲线表示。其中文本行的长边使用三阶贝塞尔曲线表示,短边则直接相连。因此每个文本行对象使用8个控制点表示。模型的预测输出阶段输出16个通道的数据,表示这8个控制点到外接正矩形左上角的偏移量(其实是计算 $\Delta x = b_{ix}-x_{min}, \Delta y = b_{iy}-y_{min}$)。这样可以将控制点位于图像边界之外的情况也考虑进来。

abc-curve.png

由于使用贝塞尔曲线表示任意形状的文本位置,在训练时需要将数据集中使用矩形/多边形的标注转换为贝塞尔曲线的形式。这里使用最小二乘的方式优化求解如下方程,可以得到多边形标注对应的贝塞尔曲线控制点坐标。

abc-bezier.png

在提取特征用于识别模型时,文中提出了BezierAlign方式,取代RoI Pooling等其他的方式,可以提取到更加稳定的特征。具体的方式为在平行于贝塞尔曲线的位置进行等距离采样,采用双线性差值的方式得到输出的特征值。公式如下。其中,输出特征值为 $h_{out} \times w_{out}$。对于输出特征图上的点 $g_i$,坐标为 $(g_{iw}, g_{ih})$,根据 $t$计算上下贝塞尔曲线上的采样点 $tp$和 $bp$,从而得到在原图中的采样点 $op$,再使用双线性差值的方式提取特征。 $$\begin{aligned} t &= \frac{g_{iw}}{w_{out}} \\ op &= bp \cdot \frac{g_{ih}}{h_{out}} + tp\cdot (1 - \frac{g_{ih}}{h_{out}}) \end{aligned}$$ 对齐结果如下。

abc-align.png

在训练的时候,使用Ground Truth中的边界框从检测阶段中提取特征用于识别模块的训练,避免检测阶段尚未收敛时产生的影响。

结果分析

在Total-Text数据集上进行Ablation Study。可以证明文中提出的BezierAlign相比其他的特征提取和对齐方式能提高性能,同时BezierAlign受到采样数量的影响,考虑到性能和速度的折衷,经过实验之后选择了(7,32)。

在Total-Text和CTW1500上的测试表示模型性能达到了SOTA。

abc-sota1.png
abc-sota2.png

总结

提出了使用Bezier表示任意形状文本边界的方式,结合BezierAlign可以实现性能的提升。同时不引入多余的计算量,具有较高的效率。

Lei Yang
Lei Yang
PhD candidate

My research interests include visual speech recognition and semantics segmentation.