EAST: An Efficient and Accurate Scene Text Detector——译文

 

摘要

之前针对场景文本检测的方法在各个基准上都获得前途无量的性能。但是,当处理具有挑战性的场景时,它们都功亏一篑,由于整体效果由算法多个阶段和模块的共同作用决定的。在本文工作种,我们提出了一件简单且很强大的算法,在自然场景中获得更快且准确的文本检测。这个算法在单一的神经网络中,直接预测整幅图中任意方向和四边形的单词或文本行,消除了中间步骤(例如,候选聚合和单词的分割)。算法的简单性允许集中精力设计loss函数和神经网络结构。在标准数据集上包括ICDAR2015、COCO-Text和MSRA-TD500的实验表明提出的算法在准确率和效率上都很明显胜过目前最好的方法。在ICDAR2015数据集上,提出的算法在720p分辨率的图获得0.78的F-score,13.2fps。

 

1、引言

最近,提取和理解自然场景中的文本信息变得越来越重要和受欢迎,这一事实已被ICDAR一系列竞赛空前大的参赛者的数量和NIST评估的TRAIT2016的举行证实。

文本检测,作为后续处理的先决条件,在整个文本信息提取和理解的过程中扮演着至关重要的角色。之前提出的文本检测算法在该领域的各个基准上已经获得前途无量的性能。文本检测的关键是区分文本和背景的特征的设计。传统的,特征是人工设计来捕获场景文本性质的,与此同时基于深度学习的方法中,直接从训练数据中学习有效的特征。

但是,存在方法中,传统的或者基于神经网络的,大多数包括几个步骤和模块,这可能不是最优的并且耗时的。所以,这些方法的准确率和有效性仍不能达到满意。

在本文中,我们提出一个快且准确的场景文本检测算法,只有两步。这个算法利用全卷积网络模型来直接产生单词或文本行级别的预测,消除了冗余和慢的中间步骤。产生的文本预测,既可以是旋转的矩形也可以是四边形,这些动刀非极大抑制中来得到最终的结果。和现存的方法比较,根据在标准数据集上的定性定量的实验,提出的算法获得显著增强的性能,运行更快。

其中,提出的算法在ICDAR2015数据集上获得0.78的F-score(在多尺度上测试得0.8072),在MSRA-TD500上0.7608,以及在COCO-Text上是0.3945,在效果上胜过之前最优得算法,同时需要更少得平均之间(对于我们最好效果得模型在Titan-X GPU上720p分辨率13.2fps,对于最快得模型是16.8fps)。

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

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

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

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

 

2、相关工作

场景文本检测和识别在计算机视觉领域很长一段时间是活跃的研究课题。众多激动人心的想法和有效的方法被研究出来。在一些调研论文中可以发现综合概览和详细分析。这部分集中介绍和提出的算法最相关的工作。

传统算法依赖人工设计特征。基于Stoke Width Transform(SWT)和Maximally Stable Extremal Regions(MSER)的方法一般通过边缘检测或极值区域的提取来搜索字符后选区。Zhang等人使用文本的局部对称性质,为文本区域检测设计各种特征。FASText是一个快速文本检测系统,它是针对笔画提取适应和修改了总所周知的FAST关键点检测器。但是,这些方法在准确率和适应性都输给了基于深度神经网络的方法,尤其在处理具有挑战性的场景时,例如低分辨率和几何形变。

 

 

近期,场景文本检测领域已经进入一个新的时代,基于深度神经网络的算法逐渐成为主流。Huang等人首先发现用MSER找到的候选区然后再用深度卷积网络作为一个强分类器可以减少false positives。Jaderberg等人的方法在滑动窗口扫描图片,然后用卷积神经网络模型为每个尺度生成稠密热力图。后来,Jaderberg等人用一个CNN和一个ACF来捕获单词候选区域,然后用回来来修正它们。Tian等人发明了垂直anchors,构建了一个CNN-RNN结合的模型来检测水平方向的文本行。不同于这些方法,Zhang等人提出利用FCN来生成heatmap,用分量投影来估计方向。这些方法在标准数据集上获得了出色的效果。但是,如图2(a-d)所示,这些大多包括很多步骤和模块,例如用正滤波器来删除false positive、候选区域回归、行组合和单词分割。过多的步骤和模块可能要求彻底的调试,导致次优的效果,同时增加整个算法的处理时间。

在本文中,我们设计了一种基于深度FCN的算法,直接把文本检测的最终目标作为任务:单词或文本行级的检测。如图2(e)所示,模型抛弃了不必要的中间组件和步骤,允许端对端的训练和优化。最终的系统,用一个简单的轻量级的神经网络组成,在效果和速度上都明显优于之前的方法。

 

3、方法

提出的算法的关键模块时神经网络模型,可以直接从整幅图训练来预测文本实例的存在和几何形状。模型时一个FCN适用于文本检测,输出单词或文本行的稠密每个像素的预测。这消除了中间步骤,力图候选区域、文本区域合并和单词分割。后处理步骤仅包含在预测的几何形状上的阈值过滤和NMS操作。检测器叫做EAST,因为它是一个有效且准确的场景文本检测算法。

3.1 pipeline

我们的算法总体的概览如图2(e)所示。算法沿用了DenseBox的通用设计,一张图送到FCN中,得到像素级的分数map和几何形状的多通道。

预测通道中的一个时分数map,像素值时在[0,1]之间。剩下的通道代表几何形状,从每个像素级别将单词框出来。分数代表在同一位置预测的几何形状的置信度。

我们对于文本区域实验了两种几何形状,旋转矩形(RBOX)和四边形(QUAD),对每种几何形状设计了不同的loss函数。然后在每个预测的区域用阈值过滤,分数高于阈值的几何位置被认为时有效的,保留下来进行后边的NMS。NMS后的结果就认为时算法的最终输出。

 

3.2 网络设计

当设计文本检测的神经网络时,必须考虑几个因素。由于文本区域的大小,如图5所示,变化很大,决定大的单词的存在需要来自神经网络的后边阶段的特征,同时预测准确的包围小的单词的几何形状需要在早一些的阶段的低级别信息。所以网络必须用来自不同级别的特征来满足这些要求。HyperNet在特征图上满足了这些条件,但是在大的特征图上合并大量通道将极大的增加后边阶段的计算量。

为了解决这个问题,我们采用了U-shape来逐渐合并特征图,同时使得上采样的分支较小。我们最终的网络既利用了不同级别的特征图还保持了一个较小的计算量。

我们模型的原理图如图3所示。模型可以分解为3部分:特征提取主干,特征合并分支和输出层。

主干可以是通过ImageNet数据集预训练过的卷积网络,卷积和池化层交替。从主干提取的特征图的四级,表示为fi,大小分别是输入图像的1/32、1/16、1/8和1/4。在图3中,描述了PVANet。在我们的实验中,我们也采用了总所周知的VGG16模型,提取pooling-2到pooling-5的特征图。

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

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

每层卷积的输出通道数如图3所示。我们保持在分支中卷积的通道数较小,这只增加了主干计算量的一小部分,使得网络计算更有效。最后的输出层包括几个1*1卷积操作,将32通道的特征图映射到1个通道的分数map Fs和一个多通道的几何map Fg。几何形状的输出可以是RBOX和QUAD中的任意一个,如表1总结。

对于RBOX,几何形状用边界框的坐标对应的4个通道(AABB)R和旋转角度1个通道来表示。R的公式和[9]中的一样,4个通道分别表示4个像素位置到矩形的上、右、下、左边界的距离。

对于QUAD Q,我们用8个数来表示四边形的4个角顶点到像素点位置的坐标偏移。由于每个距离偏移量包括两个数,几何输出包含8个通道

 

3.3 标签生成

3.3.1 对于四边形的分数map的生成

没有一般的loss,我们只考虑几何形状是四边形的情况。在score map上四边形的正样本区域粗略设计为原始区域的收缩版,如图4(a)所示。

对于四边形是四边形顺时针方向的顶点。对于收缩Q,我们首先对每个顶点pi计算参考长度ri

是pi和pj之间的L2距离。

我们首先压缩四边形的两个较长边,然后是较短的。对于一对两个相对的边,我们通过比较它们长度的均值来决定哪个是更长的。对于每个边,我们压缩是通过分别沿着边将两个端点向中间移动

 

3.3.2 几何map的生成

如3.2中讨论的,几何map可以是RBOX或QUAD中的任意一个。对于RBOX的生成过程如图4(c-e)所示。

对于文本区域是以QUAD形式标定的数据集(如ICDAR2015),我们首先生成一个旋转矩形,用最小的面积覆盖区域。然后对每个有正的分数的像素,我们计算这些点到文本框的4个边的距离,然后放到RBOX ground truth的4个通道中。对于QUAD ground truth,每个在8个通道的几何map中有正分数的像素的值是到四边形4个顶点的坐标偏移。

 

3.4 Loss Functions

Loss可以公式化为

分别表示分数map和几何形状的loss,其中平衡两个loss之间的重要性。在我们的实验中,我们设置为1。

3.4.1 Loss for Score Map

在最好的检测算法中,训练数据是很小心的通过平衡样本和难负样本挖掘来处理目标的不平衡分布。这样做可以提高网络性能。但是,用这样的技术不可避免的引入了一个不可微的步骤,以及更多的参数调试和更复杂的算法,这是违背我们的设计原则的。

为了获得简单的训练程序,我们用在[38]中介绍的类平衡交叉熵,给定如下

是分数map的预测,是ground truth。参数是用来平衡正负样本的

平衡交叉熵第一次应用是在Yao等人[41]中检测文本作为score map预测的目标函数。我们发现在实际中表现很好。

 

3.4.2 Loss for Geometries

对于文本检测的一大挑战是在自然场景图片中的文本大小变化极大。直接用L1或L2 loss来回归可能导致loss偏向于更大更长的文本区域。由于我们需要对大的和小的文本区域生成准确的文本几何形状预测,所以回归loss应该是具有尺度不变性。因此,我们在RBOX回归的AABB部分采用IoU loss,对于QUAD回归用尺度归一化的smoothed-L1 loss。

RBOX 对于AABB部分,我们采用[46]中的IoU loss,因为它对于不同大小的目标具有不变性。

表示预测的AABB的几何形状,是它对应的ground truth。很容易可以看出来相交的矩形的宽和高是

分别表示一个像素点到它对应的矩形的上、右、下和左边界的距离。并集为

所以,交并比可以很容易计算出来。接下来,旋转矩形的loss这样计算

表示旋转标度的预测,表示ground truth。最后整个几何结构的loss是AABB loss和angle loss的加权和,如下

在我们的实验中设为10。

注意我们计算时忽略旋转角度。这可以看作时四边形的近似,当角度被很好的预测时。尽管在训练时情况不太一样,但它仍可以给网络加正确的梯度来学习预测

QUAD 我们扩展了针对单词四边形设计的在[6]中的smooth-L1 loss通过加额外的归一化项,它在一个方向时更长的。将所有的坐标值组合成一个有序集合

然后loss可以写成

归一化项是四边形缩短后的边长,给定如下

是所有不同顶点顺序的的等价四边形的集合。按顺序排序是必须的,因为在公共训练数据集中的四边形的标定是不一致的。

3.5 训练

网络是用ADAN优化器端对端的训练的。为了加速学习,我们一律从图片中剪裁512*512大小的样本来形成24大小的minibatch。ADAM的学习率从0.001开始,每27300个minibatch下降1/10,在0.00001停止。网络训练直到性能停止提升。

 

3.6 Locality-Aware NMS

为了形成最终的结果,经过阈值筛选后保留下的几何结构应该用NMS合并。基本的NMS算法运行速度是,n是候选几何结构的数量,因为我们面对来自稠密预测中几万的几何结构,这样的速度是不能接受的。(得到的预测结果太多,直接进行NMS太耗时)

假设来自邻近像素的几何结构倾向于很高的相关性,我们提出一行一行的合并几何结构同时合并在同一行的几何结构,我们将迭代合并当前遇到的几何结构和最后一个合并的。这提高了方法在最好的情况运行时间是。尽管它的最差的情况和基本的NMS是一样的,只要局部假设成立,实际中算法运行足够快。这个过程在Algorithm 1中总结。

值得一提的是,在中,合并四边形的坐标是用给定的两个四边形的分数加权平均的。具体来说,如果,那么,这里是a的坐标中用下标i表示的一个,是几何结构a的分数。

实际中,有一点点不同,我们是平均而不是选几何结构,在标准NMS流程中也是这么做的,扮演一个投票机制,这反过来当处理视频时,带来了稳定的效果。尽管如此,我们仍对函数描述采用单词“NMS”。

4、Experiments

为了我们提出的算法和现有的算法进行比较,我们在三个公开数据集ICDAR2015、COCO-Text和MSRA-TD500上进行了定性定量的实验。

 

4.1 基准数据集

ICDAR2015是在ICDAR 2015 Robust Reading Competition中第四个挑战中用的。共包括1500张图片,1000张用于训练,剩下的是测试。文本区域是用四边形的4个点来标注的,和本文中的QUAD相对应。我们也通过适应一个有最小面积的旋转矩形来产生RBOX输出。这些图像是用Google Glass随机拍的。所以场景中文本是任意方向的,可能存在运动模糊和低分辨率。我们也用了来自ICDAR2013的229张训练数据。

COCO-Text 是至今最大的文本检测数据集。它是从MS-COCO数据中选取再利用的。共标定了63686张图,43686选来作为训练集,剩下的20000用于测试。单词区域是以对应坐标的边界框(AABB)的形式标定的,是RBOX的一种特殊情况。对于该数据集,我们设角度为0。我们用和ICDAR2015相同的数据处理方法和测试方法。

MSRA-TD500 是包括300训练图片和200测试图片的数据集。文本区域是任意方向的,在句子级别标定的。不同于其他数据集,它包括英文和中文。文本区域是以RBOX方式标注的。因为训练数据太少以致于不能学习一个深度模型,我们也利用了来自HUSTTR400数据集的400张图作为训练数据。

 

4.2 基础网络

除了COCO-Text,所有的文本检测数据集和通用目标检测的数据集相比都是相对小的,因此如果对所有的基准采用单一的网络,可能出现过拟合和欠拟合。我们用三种不同的基础网络进行实验,输出不同的几何结构,在所有的数据集上评估提出的框架。这些网络在Tab2中总结。

VGG16 在很多任务中被广泛用作基础网络来支持后续特定任务的微调,包括文本检测。这个网络有两个缺点:(1)整个网络的感受野小,conv5_3输出的每个像素点仅有196的感受野,(2)它是一个相对大的网络。

PVANET 是在[17]中介绍的轻量级网络,目标是取代Faster-RCNN中的特征提取器。因为它对于GPU完全利用并行计算来说太小,我们也采用了PVANET2x,将原来的PVANET的通道扩大2倍,利用更多的并行计算同时比PVANET运行慢了一点点。详细介绍在4.5部分中。最后一层卷积的输出的感受野是809,比VGG16大很多。

这些模型都是在ImageNet数据集上预训练过的。

4.3 定性结果

图5描述了几个提出算法的检测例子。它可以处理各种具有挑战性的场景,例如不均衡光照、低分辨率、变化各异的方向和透视变形。此外,由于在NMS流程中的投票机制,提出的方法在有多种形式的文本实例的视频上也表现很高的稳定性。

提出的方法的中间结果如图6所示。可以看出,在多变的方向的文本实例的检测中,训练模型产生高准确率的几何结构map和分数score。

 

 

 

 

 

4.4 定量结果

如表3和4所示,我们的方法在ICDAR2015和COCO-Text上很明显优于目前最好的方法。

 

在ICDAR2015挑战中,当图片按原始尺寸输入时,提出的方法获得0.782的F-score。当用同样的网络在多尺度上测试,我们的方法达到0.8072的F-score,这比最好的方法将近高了0.16,绝对值是(0.8072 vs 0.6477)。

和用VGG16网络的结果对比,当用QUAD输出时提出的方法比先前最优的工作高0.0924,用RBOX时高0.116.同时,这些网络是很有效的,如4.5部分显示。

在COCO-Text中,提出算法的三种设置都比之前最好的在准确率上高。尤其考虑COCO-Text是目前最大最具挑战性的基准,在F-score上比[41]提高了0.0614同时recall是0.053,这证明了提出的算法的优势。注意我们也包括了来自[36]的结果作为参考,但是这些结果实际上不是有效的基准,因为方法(A、B和C)用于数据标定。

提出算法相对于之前的方法的改善证明了直接以最终目标作为认为减少冗余过程的简单文本检测算法可以击败精心设计的算法,甚至那些组合了大的神经网络模型。

如表5所示,我们方法的三种设置在MSRA-TD500上都获得了出色的结果。效果最好的F-score是比[41高一点点。和Zhang等人的[48]比较,之前公布的最好的系统,最好的获得在F-score上0.0208在准确率上0.0428的提高。

 

注意在MSRA-TD500上,我们的算法用VGG16组成比PVANET和PVANET2x差很多(0.7023 vs 0.7445和0.7608),主要的原因是VGG16的感受野比PVANET和PVANET2x小很多,同时MSRA-TD500的评估规则要求文本检测算法输出文本行代替单词级别的预测。

另外,我们也在ICDAR2013上评估了Ours+PVANET2x。获得recall、precision和F-score分别是0.8267、0.9264和0.8737。

 

4.5 速度比较

所有的速度比较如表6所示。我们公布的数据是从运行来自ICDAR2015数据集上的500张测试图像用原始分辨率(1280*720)用我们最好的网络求平均值。实验是在一个服务上进行的,用a single NVIDIA Titan X graphic card with Maxwell architecture and an Intel E5-2670 v3 @ 2.30GHz CPU。对于提出的算法,后处理包括阈值过滤和NMS,其他的应该参考原始论文。

当提出的算法明显优于目前最好的方法时,引用这个简单有效的算法计算量仍保持很低。可以从表6中观察到,我们方法最快的设置运行速度时16.8FPS,同时最低设置时6.52FPS。甚至是效果最好的模型Ours+PVANET2x运行速度也是13.2FPS。这证明了我们的方法在最有效的文本检测器中在基准上获得最优的效果。

 

 

4.6 限制

检测器可以处理的文本实例的最大尺寸和网络的感受野成比例。这限制了网络预测更长的文本区域如横跨图像的文本行。

当然,算法可能漏检或误检一些垂直方向的文本实例,优于在ICDAR2015训练集中它们仅仅占了文本区域的很小的比例。

 

5、总结和展望

我们提出了一个场景文本检测器,用一个简单的神经网络直接从整幅图生成单词或行级别的预测。通过用合适的loss函数,检测器可以预测旋转矩形和四边形的文本区域,这依赖于具体应用。在标准数据集上的实验说明了提出的算法在准确率和效率上显著优于之前的方法。

将来研究的方向包括:(1)采用几何公式允许直接检测弯曲文本(2)集成文本识别到检测器中(3)将这种思想扩大到普通目标检测中。

 

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值