An Efficient and Accurate Scene Text Detector

在本文中,我们提出一个快且准确的场景文本检测算法,只有两步。这个算法利用全卷积网络模型来直接产生单词或文本行级别的预测,消除了冗余和慢的中间步骤。产生的文本预测,既可以是旋转的矩形也可以是四边形,这些预测结果送入非极大抑制中来得到最终的结果。

本文工作得贡献是三部分:

我们提出了一种包括两步得场景文本检测方法:FCN和NMS合并阶段。FCN直接产生文本区域,消除了中间步骤得冗余和耗时。

算法是灵活得产生单词级别或文本行得预测,其几何形状可以是旋转的矩形或四边形,依赖于特定的应用。

提出的算法在准确率和速度上明显优于现在最好的方法。

该方法利用多层卷积神经网络提取图像特征,再利用该特征分别进行两个任务,像素点的分类,以及对应像素点的框的回归。最后将两个任务结果结合起来,并用非极大值抑制NMS来得到最终检测结果。

网络架构

我们模型的原理图如图3所示。模型可以分解为3部分:特征提取主干,特征合并分支和输出层。.文中使用了PVANet和VGG16,下图1是原文的网络结构图(PVANet)

An Efficient and Accurate Scene Text Detector

主干可以是通过ImageNet数据集预训练过的卷积网络,卷积和池化层交替。.网络输入一张图片,经过四个阶段的卷积层可以得到四张feature map, 分别为f4​,f3​,f2​,f1​,它们相对于输入图片分别缩小An Efficient and Accurate Scene Text Detector之后使用上采样、concat(串联)、卷积操作依次得到h1​,h2​,h3​,h4​,在得到h4​这个融合的feature map后,使用大小为3×3通道数为32的卷积核卷积得到最终的feature map。

在特征合并分支中,我们逐渐合并它们:

An Efficient and Accurate Scene Text Detector

gi是中间状态,hi是合并特征图,操作符[.;.]表示沿通道维度拼接。在每个合并阶段,来自上一阶段的特征map首先喂给unpooling层来扩大二倍它的大小,然后和现在的特征map拼接。接下来,1*1的卷积bottleneck将减少通道的数量减少计算量,后边跟一个3*3的卷积来融合信息来产生这个合并阶段的最终输出。最后的输出,执行3*3的卷积产生合并分支的最终特征图,喂给输出层。

得到最终的feature map后,使用一个大小为1x1通道数为1的卷积核得到一张score map用Fs表示。在feature map上使用一个大小为1×1 通道数为4的卷积核得到text boxes,使用一个大小为1×1 通道数为1的卷积核得到text rotation angle,这里text boxes和text rotation angle合起来称为geometry map用Fg​表示。

文中对文本框的定义有两种,一种是旋转矩形(RBOX),另一种是四边形(QUAD)。因为代码只实现了RBOX,所以下面也只对RBOX框进行分析。

下面我们详细解说第二种表示方式RBOX。我们知道,对于任意一个固定点,如果确定该点到四条边的距离,那么就可以确定一个矩形框。如果再加上角度信息,那么这五个参数d1,d2,d3,d4,以及theta就能唯一确定一个带角度的矩形框。该方法正是采用这个方式得到框回归的GroundTruth。比如图中d图表示每个点的四个距离,e图表示对应的angle。

关于上述的Fs,Fg 要说明的几点
Fs大小为原图的1/4通道数为1,每个像素表示对应于原图中像素为文字的概率值,所以值在[0,1]范围内。

Fg大小也为原图的1/4通道数为5,即4+1(text boxes + text rotation angle)。

text boxes通道数为4,其中text boxes每个像素如果对应原图中该像素为文字,四个通道分别表示该像素点到文本框的四条边的距离,范围定义为输入图像大小,如果输入图像为512,那范围就是[0,512]。下图d表示

text rotation angle通道数为1,其中text rotation angle每个像素如果对应原图中该像素为文字,该像素所在框的倾斜角度,角度范围定义为[-45,45]度。下图e表示

An Efficient and Accurate Scene Text Detector

 关于训练标签的生成

如上可知,训练标签由两个部分组成,一个是score map的标签,一个是geometry map标签。

1. score map标签的生成方法

首先生成一个与图片大小一样的矩阵,值都为0

根据标定好的四边形框对该四边形框进行缩小,缩小方法下面会详细说明,得到最终结果如上图2a中的绿框

将绿框中的像素赋值1表示正样本的score,其他为负样本的score

最后按照每隔4个像素采样,得到图片1/4​大小的score map

上述缩小四边形的方法:

首先定义四个顶点An Efficient and Accurate Scene Text Detector这四个顶点按照顺时针方向排列

计算缩小的参考大小如下式所示,下式表示的是选取与顶点相连的两条边中最小的边的大小记为ri

An Efficient and Accurate Scene Text Detector

其中D(pi,pj)表示点pi与pj之间的l2距离

对于An Efficient and Accurate Scene Text Detector两点,分别移动An Efficient and Accurate Scene Text Detector来缩小他

geometry map标签的生成方法

几何map可以是RBOX或QUAD中的任意一个。对于RBOX的生成过程如上图(c-e)所示。对于文本区域是以QUAD形式标定的数据集(如ICDAR2015),我们首先生成一个旋转的矩形,该矩形覆盖面积最小的区域。然后对于每个有正分数的像素,我们计算其到文本框四个边界的距离,并将其放到RBOX的4个通道中。

损失函数的定义

An Efficient and Accurate Scene Text Detector

An Efficient and Accurate Scene Text Detector

An Efficient and Accurate Scene Text Detector