论文解读系列四:实时端到端场景文字检测识别网络ABCNet(CVPR 2020论文)
摘要:文本检测算法的一个核心问题就是文本行的形状表征形式,很多文字检测算法都是通过提出新的文本框、行的形状表征方法来优化文本检测精度,包括最早由回归水平框到倾斜矩形框的textboxes系列、将文本行看做部分组件组成的seglink、textsnakes、以及最近一系列基于分割的方法cornertext、PSENet等。而本文提出了通过贝塞尔曲线来表征文本框,同时基于贝塞尔曲线更完美贴合曲形文本的特点对文本特征进行矫正,结合嵌入到网络中的基于CTC的文本识别模块组成一个端到端的检测、识别网络。
基本思路
一个常见文本框可以由水平框、倾斜框等表示,而对于曲形的等不规则文本倾斜框等无法完美表征,现有一些基于分割的方法可以通过预测文本框的分隔结果然后通过后处理得到多边形框来尽量贴合曲形文本,而本文提出通过连续平滑的贝塞尔曲线来对曲形文本进行更加贴合的覆盖。
算法框架:
该算法骨干网络为常用的ResNet50加FPN来融合多尺度特征,检测分支为在多个尺度上的特征图上进行类似于EAST的anchor free的密集预测文本的外接矩形框,然后通过RoIAlign对于文本框特征进行提取然后预测回归其对应的贝塞尔曲线控制点(这里论文讲的不是非常清楚,感兴趣可以等代码开源),之后由该文提出的BezierAlign对预测的文本框即相应的贝塞尔曲线系数在特征图上进行矫正然后输入到后接的基于CTC的识别网络,实现端到端的检测、识别。
贝塞尔曲线
该文的一个核心贡献在于提出通过贝塞尔曲线来更好的表征文本框尤其是曲形文本框,贝塞尔曲线的核心思想是通过多项式去逼近连续函数,而具体的工程应用在于通过一系列控制点去绘制平滑的曲线。
(1)
(1)为贝塞尔曲线公式,P0~Pn为相应的控制点,略去数学证明,一个三阶的贝塞尔曲线绘制过程如下
选定四个控制点
在AB上选定一个点E,t = AE / AB,然后在BC上选择点F使得BF / BC = t,以此类推找到点J,将t从A到D的点j连接起来即为相应的贝塞尔曲线。
而现在常用的文字检测识别数据集都是用角点标注的,该文将原标注的角点当做贝塞尔曲线上的点,然后通过最小二乘法求解相应的贝塞尔控制点作为训练用的GT。
BezierAlign
对于曲形文本的识别已有一些方法,基于一些控制点来对于文本特征进行矫正来识别,如ASTER等,而该文针对文本框的曲形形状表征提出了BezierAlign 来对文本特征进行矫正。
具体如下,设我们经过BezierAlign输出得到的特征图大小为Wout X Hout,将输出特征图上的一个像素点映射回原特征图上,则对应的控制系数t应该是不变的即
而上下两条长边分别为两条贝塞尔曲线,再根据输出像素点的高对映射回去的控制点进行插值得到最终要在特征图上进行插值的坐标点。
最后将矫正的特征图输入到后接的基于CTC的识别网络中,实现端到端的训练。
结果
该文提出了用贝塞尔曲线表征曲形文本,并提出了相应的BezierAlign进行特征矫正,实现了一个端到端的文本检测、识别网络。在一些曲形文本数据集上都取得了较好的结果。
- 点赞
- 收藏
- 关注作者
评论(0)