Liu, Y., Chen, H., Shen, C., He, T., Jin, L., & Wang, L. (2020CVPR). ABCNet: Real-time Scene Text Spotting with Adaptive Bezier-Curve Network. http://arxiv.org/abs/2002.10200
这篇文章的想法最开始是由金连文老师(OCR方向的巨佬)提出来,后来在阿德莱德沈老师组里访问期间合作完成。

总结:design a simple yet effective end-to-end framework for spotting oriented or curved scene text in images
Contributions:

  • 引入一个Bezier 曲线去拟合任意形状的文本,写了一个negligible computation overhead
  • 设计了一个BezierAlign层for accurate feature alignment,连接检测网络和识别网络的关键

Motivation:
 Existing methods can be roughly categorized into two groups: character-based and segmentation-based. These methods require a large amount of expensive annotations. In addition, almost all of these methods are slow in inference, hampering the deployment to real-time applications.
image.png

Bezier Curve

 Bezier是一种矢量绘制曲线的方法,具体参考Bezier curve. 表达的简单点就是用几个点的相关关系可以得到一种唯一的曲线表达。
image.gif

 论文中固定用四个点去拟合得到一条曲线用作于不规则文本的检测。image.png
具体点就是将原来的用多个坐标点的label表示转换为Bezier Curve表示,然后这个Curve是用四个控制点可以表示出来,也就是Beizer Curve。
image.png

Bezier Curve label产生

 对于不规则文本数据集,如Total-text and CTW1500,将数据集中的每个文本实例用两条Bezier Curve表示,每一条根据原label(也就是数个坐标点)利用最小二乘发拟合得到。论文中公式如下,$p{i}$表示the annotated points。(这里有点没看懂,这个$B{i,n}$应该是Beizer Curve公式中的,这个$b_{i}$应该是我们要求的四个点,但是不是很明白最小二乘法和这些值之间的关系)
image.png

BezierAlign

 BezierAlign is extended from RoIAlign,如图所示,采用的每一个column都与Bezier正交。对于所给的input feature map and Bezier curve
control points,考虑上方Bezier和下方Bezier之间的采样点。
image.png

Recognition

 识别部分如下所示,是CRNN的简化版。
image.png

总结

 现在的由于不规则文本检测的影响,多数检测算法采用分割去检测文本,但是分割方式多数有复杂的后处理,而且不易控制,鲁棒性差,速度慢。但是回归对于检测任意形状文本又不友好,难以去拟合。而且基于分割的检测由于后处理很复杂,难以运用到端到端任务中。
 因此该论文,采用回归四个点,用这些点计算Bezier Curve去表示文本,个人觉得比较新颖,用回归固定点解决不规则文本检测问题。但是感觉仍然有改进的很多地方,比如四点的Bezier Curve是否已经能满足所有情况,Bezier Curve的label生成是否合理。
 该论文的实验结果在CTW1500和total-text上表现都很好,分别为74.1%和78.4%,速度也很好(这大概就是回归的优势)。但是论文里面没有在其他常规数据集如ICDAR2015上面实验,不知道效果咋样。

链接

更多可以参考CSIG文档图像分析与识别专委会的一篇推文分析ABCNet