摘要:深层卷积神经网络技术在文本检测方面取得了很大的成功。现有的大多数方法都试图通过复杂的网络设计来提高精度,而很少关注速度。在本文中,我们提出了一个通用的文本检测框架,称为引导CNN,以同时实现这两个目标。该模型由一个引导子网络和一个初级文本检测器组成,前者从输入图像中学习引导掩码,后者只在引导掩码中进行卷积和非线性运算。一方面,引导子网络对非文本区域进行粗过滤,大大降低了计算复杂度。另一方面,主文本检测器侧重于文本与非文本硬区域的区分和文本边界框的回归,实现了更好的检测精度。提出了一种训练策略,称为背景感知块随机合成,以进一步提高性能。我们证明了所提议的CNN引导方法不仅有效而且高效,以CTPN[52]和EAST这两种最先进的方法为基础[64]。在具有挑战性的基准ICDAR 2013年,它平均加速了2.9倍的CTPN,同时提高了1.5%的F-measure。在ICDAR 2015上,它将向EAST加速2.0倍,同时将F-measure提高1.0%。
近年来,阅读野生自然图像中的文本越来越受到关注,如[3,7,10,11,13,22,27,36,37,39,40,52,55,57,64]。大量的文本模式和高度杂乱的背景是文本检测的主要挑战。
图1:引导主文本检测器的示意图。使用红色和蓝色矩形指示的制导掩码。引导掩码(蓝色)在训练过程中由背景感知块随机合成(红色)扩展。在测试时,引导掩码不会被扩展
图2:文本在场景图像中非常稀疏。左边显示了一个示例图像。右图显示了ICDAR 2013年测试集的文本区域比例组成。(0%,10%),(10%,20%),(20%,30%)和(30%,40%)的图像分别占57%,21%,11%和6%。只有5%的图像具有超过40%的文本区域。
近期的文本检测方法[3,7,11,12,13,14,21,22,27,36,37,52,64]直接预测文本的包围盒,大大提高了文本检测的准确率。他们专注于设计更好的网络架构和目标功能,而较少关注检测速度,这阻止了文本检测在实际应用中部署。虽然存在加速普通CNNs的方法[4,8,29,49,54,61],但它们通常以牺牲准确性为代价来实现加速,而且不适合文本检测。
文本在自然场景图像中出现非常稀疏,如图2所示。我们对ICDAR 2013年测试集的统计数据显示,只有9.7%的区域有文本,其余为背景。除了文本附近的背景区域外,背景区域对于文本检测和文本识别是无用的,如[11,12]所述,因此在文本检测器中是不必要的处理。过滤掉它们可能会加速文本检测器。然而,在不牺牲精度的前提下过滤掉背景并不是件小事。这种过滤操作应该很快,而且计算开销非常小。我们还需要在过滤后对文本区域进行高召回,因为下一阶段无法检测到被过滤掉的文本。
为了达到这一目的,报纸上刊登了一篇文章,描述了人类在野外生存的特点,并提出了一种简单而有效的总体框架来进行文本检测,即CNN,以加快文本检测器的速度,同时提高其准确性。它模仿了人类视觉系统的过程:首先浏览整个图像,然后聚焦于突出的区域。具体来说,它由两个子网络组成:一个引导子网络和一个主文本检测器。从文本区域作为监控信号的输入图像中学习制导子网络。它的目标是找到文本区域并粗略地过滤掉大多数非文本区域。主文本探测器使用任何现有的单一基于CNN转发文本检测方法为骨干,在每一个卷积,和非线性操作进行只有在指导面具预测的指导子网(见图1)。这样,主文本探测器关注区分文本和非文本,并预测边界框的文本。
为此,本文充分利用了自然文本稀疏性的特点,提出了一种简单而有效的文本检测通用框架,称为引导 CNN,以加快文本检测器的速度,同时提高其准确性。它模仿了人类视觉系统的过程:首先浏览整个图像,然后聚焦于突出的区域。具体来说,它由两个子网络组成:一个引导子网络和一个主文本检测器。从文本区域作为监控信号的输入图像中学习引导子网络。它的目标是找到文本区域并粗略地过滤掉大多数非文本区域。主文本探测器使用任何现有的单一基于CNN转发文本检测方法为骨干,在每一个卷积,和非线性操作进行只有在指导具预测的引导子网(见图1)。这样,主文本探测器所关注区分文本和非文本,并预测边界框的文本。
同时提高速度和准确度是一项挑战。为了更好地平衡制导性能和计算负载,我们引入了一个具有金字塔池层的上下文模块,在引导子网络中捕获全局上下文信息。对初级文本检测器进行训练,只使用由真实值导出的guidance mask,由于没有学习到足够的背景模式,会导致较高的误报率。为了解决这一问题,我们提出了基于背景感知块的随机合成,通过在训练过程中随机合成背景中的前景块来扩展guidance mask (见图1)。它可以被解释为一种特殊的dropout。
所提出的导CNN是一个通用的框架,可以很容易地插入到现有的基于前向CNN的文本检测方法中。我们在标准基准上进行实验,分别是SWT[5]、ICDAR 2011[38]、ICDAR 2013[23]、ICDAR 2015[24],各脊骨。该方法显著加快了目前最先进的方法[52,64],同时平均获得更高的准确率。具体来说,在ICDAR 2013年,它将CTPN[52]加速2.9倍,同时平均提高了1.5%的准确率。在ICDAR 2015上,它将向EAST加速[64]2.0倍,同时提高了1.0%的准确率。在ICDAR 2013上,F-measure为0.901;在ICDAR 2015上,F-measure为0.823
Related Work
文献中现有的文本检测方法大致可以分为两种方法,即传统的基于特征的方法和基于深度学习的方法。
传统的基于特征的方法。小波、梯度和HOG等特征在其他计算机视觉应用中得到了广泛的应用,这些特征在[1,28,33,47,51]中被用于文本检测。随后,提出了笔画宽度变换(Stroke Width Transform, SWT),用于查找每个图像像素的笔画宽度值[5,55]。它通过结合文本像素的颜色提示进行扩展,显著提高了组件间分离和组件间连接[15]的性能。使用极值区域(ER)生成候选字符[39,41],然后通过最大稳定极值区域(MSERs)进行改进[16,57,58]。与传统手工制作特征的方法不同,本文提出的通用框架将特征提取和文本检测统一在深度神经网络中,并以端到端的方式训练特征提取器和检测器。
基于深度学习的方法。先前的工作[12,17,19,53]在这个流检测文本与CNNs在滑动窗口或区域提议。他们没有在滑动窗口或区域提议之间共享计算,因此导致了缓慢的培训和测试。Yao等人[56]和Zhang等人[62]对文本区域、单个字符及其与FCN的关系进行了估计。与一般物体不同的是,词往往具有较大的纵横比和多个方向。为此,textbox[32]使用了具有大范围长宽比和垂直偏移量的默认框。CTPN[52]固定默认框的宽度,只预测每个默认框的高度。深度匹配先验网络[36]使用四边形滑动窗口,而EAST[64]直接在卷积特征映射上预测四边形形状。Ma等人[37]提出了旋转检测任意性场景文本的方案,Jiang等人[22]预测轴向包围盒和倾斜包围盒为多任务学习。与以上方法不同的是,本文提出的导通CNN是一种基于现有文本检测器的通用框架,它只需要单次转发就可以提高检测的准确性和速度。
我们的工作与网络加速的工作有关。提出了线性分解来加速CNNs层[4,18,26],并在[61]中考虑了非线性逼近,进一步扩展了线性分解的概念。量化、剪枝和霍夫曼编码被提出,以加速CNNs和压缩其重量在[8,54]。在保持网络结构不变的情况下[2,6,43,49],将CNNs的权值进行了二值化。我们提出的导CNN与这些方法正交,可以与它们结合进一步加速。
图3:用于文本检测的引导CNN框架。它由一个由红色dash矩形指示的制导子网络,一个由蓝色dash矩形指示的主文本检测器组成。给定输入图像(a),首先使用CNN获取卷积特征图(b),然后使用上下文模块(c)进行capturemulti-scale context预测一个制导图,然后将制导图进行二值化(d)到一个guidance mask (e)。最后,使用(扩展的) guidance mask引导主文本检测器检测文本(在训练过程中),最终检测(f)。
我们的工作也与级联CNNs有关。[31, 42, 59, 60]首先使用滑动窗口方法、完全卷积网络或区域提议网络生成人脸候选,然后一个一个地将每个裁剪人脸候选加入一系列级联CNNs中,进一步过滤和包围盒细化。[30]将单个深度模型视为多个子模型的级联,并逐步处理较硬的区域。与以上方法不同,我们的guide CNN没有对象(即它可以是任何形状的制导掩码,用来告诉主文本检测器它的卷积和非线性运算是在哪里进行的。
3、Guided CNN
我们提出的引导CNN是基于观察到文本在自然场景图像中出现非常稀疏,如图2所示。我们的目标是通过过滤掉大部分背景来提高现有CNN基本文本检测器的速度和准确性。我们通过提出一种精心设计的网络架构和相应的培训流程来指导CNN,从而实现这两个目标。我们的框架概述如图3所示。它由制导子网络和主文本检测器组成。制导子网络用于粗略预测制导掩码,即,文本区域。主文本检测器仅在制导掩码中进行卷积和非线性运算。我们的引导CNN是一个文本检测的通用框架。它的主文本检测器可以使用任何现有的基于CNN的前向文本检测器作为主干。我们用命名引导主干来表示引导CNN。例如,以CTPN为骨干的导通CNN称为导通CTPN。
3.1 Guidance Subnetwork
图4:有上下文模块和没有上下文模块的制导子网络的数量和质量。(a)有或没有上下文模块的制导子网络召回精度曲线。(b)左列和右列分别显示与预测制导掩码叠加的输入图像,没有和上下文模块重叠。
制导子网络使用预训练的PVANET[25]提取卷积特征图,如图3 (b)所示。, conv5_4为输入图像的1 32大小。在地图的顶部,我们使用context模块提取多个scale context并预测制导,如图3 (c)所示,它的输出保持了输入图像的1 32,并在训练过程中被送入交叉熵损失层。我们使用训练数据的文本包围盒生成地面真值制导掩码。我们用一个四元组(r,c,h,w)表示一个矩形,它指定了它的左上角(r,c)和它的高度和宽度(h,w)。高召回,我们设置了地面真理标签的位置(y,x)最后预测指导地图1只要对应的矩形(32 y−16、32 x−16,32岁,32)在输入图像与任何文本边界框的十字路口。预测指导地图是关键(图3(d))与thresholdτ指导面具如图3所示(e)。
受最近图像分割[34]的发展启发,我们设计了具有金字塔池化的上下文模块。如图3 (c)所示,上下文模块由3个级别组成。在第一层(第一行),每个位置的特征向量都是l2标准化的,然后是卷积层来预测制导图。后两个级别遵循相同的过程,只是它们使用了一个平均池化层,使用stride 2向下采样特征图,然后向上采样,最后预测制导图。为了避免feature map的不平衡大小,引入了每一层的规范化层。所有级别的预测制导图都是元素级叠加在一起,然后再将它们放入损耗层。
上下文模块对于保证制导子网络具有较高的查全率和精度至关重要。图4(a)对比了使用上下文模块的制导子网络和不使用上下文模块的制导子网络(即,第一级预测)对ICDAR 2013年。结果表明,带有上下文模块的制导子网络比不带上下文模块的制导子网络获得的制导预测精度要高得多。图4 (b)显示了使用上下文模块和不使用上下文模块预测的指导掩码(二值化指导映射)。显然,上下文模块可以大大减少假警报,提高召回率。我们强调,由于上下文模块的feature map足够小(即, 1 32的输入图像大小)。
3.2 Primary Text Detector 主文本检测器
主文本检测器可以使用任何现有的基于CNN的前向文本检测器作为主干。在现有的文本检测器中,每个卷积层只有一个输入,卷积运算在整个输入特征图中进行。相反,在我们的主文本检测器中,每个卷积层都有两个输入,即由制导子网络预测的输入特征图和制导掩码,卷积运算只在制导掩码中进行。
图5:引导卷积图。红色表示制导掩模中的特征向量。
图6:通过后台感知块随机合成提高了性能。表明CTPN, 表示未再训练时将预测制导掩模应用于CTPN测试,表示用预测制导掩模训练的制导CTPN, H表示用预测制导掩模和随机合成训练的制导CTPN,表示用地面真值掩模和随机合成训练的制导CTPN。
引导掩码中的所有区域在主文本检测器中都是一次处理,而但不是一个接一个。为此,我们通过修改caffe[20]中的“im2col”来实现一个新的层,称为制导卷积,如图5所示。与最初的“im2col”将输入特征映射重新排序为一个大矩阵不同的是,我们的制导卷积层仅在制导掩码中重新排序输入特征向量(图5(a))并生成一个小得多的矩阵(图5(b))。使用卷积滤波矩阵(图5 (c))进行矩阵乘法运算后,将其输出插入到背景为零的大输出特征图中(图5 (d))。由图5可以得出,如果制导掩码占整个feature map区域的1 r的比例,那么制导CNN可以在不考虑制导子网络开销的情况下,以r倍的速度加速其主干。
3.3背景感知块随机综合训练
用指导训练初级文本检测器并不简单。直接训练初级文本检测器会导致较高的误报率。这是合理的,因为初级文本检测器在训练过程中没有学习到很多背景模式的变化。
为此,我们通过随机合成扩展预测指导面具面罩与大小32×32块(因为每个位置代表32×32输入图像的矩形)的背景,一个概率p在训练。实验表明,这种简单的检测方法是非常有效的,可以大大提高最终文本的检测性能。当p =0时,训练初级文本检测器,不进行随机合成。当p=1时,在整个feature map中没有进行卷积等非线性运算的制导掩码,将其降解为主干。
图6对比了不同训练策略下ICDAR 2013年的结果。首先,我们直接在原始CTPN上应用我们的预测制导掩码,无需再训练。它的性能比最初的CTPN略差。这很简单,因为在训练过程中从来没有学习过由预测掩码引起的feature map上的轮廓模式。因此,我们再用预测制导(PG)训练CTPN。它的性能得到了改善,但仍然比CTPN差。实验结果表明,该方法有许多假警报。正如我们之前讨论的,完全删除背景模式会导致这个问题。在我们的第三种策略中,我们进一步验证了这一点。在第三种策略中,我们使用预测制导掩码和背景感知块级随机合成(Syn) (p = 0.4)来训练主文本检测器。使用这种策略的训练比原来的CTPN表现得更好,同时大大加快了速度。虽然预测的引导掩码具有较高的回忆率,但它可能会遗漏一些小型或大型文本。为了解决这一问题,我们选择了第四种策略,即使用地面真值制导掩码(GT)和随机合成(Syn)来训练主文本检测器。我们发现,这种训练策略在召回率和准确率上进一步提高了。除另有说明外,其余的实验结果都使用这种训练策略进行报告。
优点。用地面真值制导和随机综合训练初级文本检测器有两个明显的优点。首先,主文本检测器在大大加速的同时,能获得比主干更好的性能。其次,引导子网络的训练与主文本检测器的训练不相关。因此,它们可以单独或并行地进行训练,从而便于部署。
Connection with Dropout
一个可能的解释为我们background-aware块随机合成是辍学[50]功能地图背景的概率1−p。根据drop的标准测试流程,在测试过程中,我们将主文本检测器中的feature map乘以p,但在背景区域的比例不为0,可以进一步改进主文本检测器。为了澄清,我们将这种测试方法称为引导主干+。例如,以CTPN为骨干的导通CNN,如果在测试时遵循drop - out测试程序,则称为导通CTPN+。我们强调引导骨干+不会加速其骨干。当准确而不是速度是最重要的时候,可以使用它。
背景感知块的随机合成不同于标准的drop - out。首先,标准的drop - drop功能激活是独立的,而我们的方法每次删除一个块的所有激活。第二,标准的drop - out在任何地方都减少了激活,而我们的方法只在后台(非掩蔽区域)。我们在检测层之前插入了一个drop - out层进行实验,没有观察到任何改进。
实验
从表1可以看出,指南CTPN在f测度方面始终优于CTPN,同时获得了相当大的加速。指南CTPN+表现最好,牺牲了一些速度。在计算资源充足的情况下,可以使用它。具体地说,在2011年ICDAR ICDAR 2013与CTPN相比,引导CTPN改善F-measure 1.5∼1.8%,加速2.9倍。引导CTPN +提高F-measure 2.1∼2.8%放缓0.3倍的成本。在SWT上,导通CTPN+和导通CTPN+分别获得0.7%和1.5%的F-measure增益,虽然其ground truth在文本行级别上进行了标注,与我们的训练数据(如ICDAR 2013的训练集)不同。引导CTPN最终加速4.2次。令人惊讶的是,引导CTPN获得高召回率虽然输入图像过滤掉大部分地区,我们相信这是因为指导机制使得文本探测器努力专注于区分非文本和文本区域,和边界框回归,导致更好的培训和推广。在ICDAR 2013上,我们还分析了制导CTPN的每个组件的运行时间。制导子网络占运行时的15%,主文本检测器占85%。
由表2可知,与EAST相比,Guided EAST使F-measure提高了1.0%,加速了2.0倍。指南东方+提高了1.5%的F-measure,同时减慢了20%。
总结
介绍
加ctpn基础上 增加引导cnn
2. 目前模型存在的问题
3.本文将会解决的问题
我们提出的引导CNN是基于观察到文本在自然场景图像中出现非常稀疏,我们的目标是通过过滤掉大部分背景来提高现有CNN基本文本检测器的速度和准确性。我们通过提出一种精心设计的网络架构和相应的培训流程来指导CNN,从而实现这两个目标。
网络加速 提出了线性分解来加速CNNs层
模型
本文充分利用了自然文本稀疏性的特点,提出了一种简单而有效的文本检测通用框架,称为引导 CNN,以加快文本检测器的速度,同时提高其准确性。它模仿了人类视觉系统的过程:首先浏览整个图像,然后聚焦于突出的区域。具体来说,它由两个子网络组成:一个引导子网络和一个主文本检测器。从文本区域作为监控信号的输入图像中学习引导子网络。它的目标是找到文本区域并粗略地过滤掉大多数非文本区域。主文本探测器使用任何现有的单一基于CNN转发文本检测方法为骨干,在每一个卷积,和非线性操作进行只有在指导具预测的引导子网(见图1)。这样,主文本探测器所关注区分文本和非文本,并预测边界框的文本。
引入了一个具有金字塔池层的上下文模块,在引导子网络中捕获全局上下文信息
提出了基于背景感知块的随机合成,通过在训练过程中随机合成背景中的前景块来扩展guidance mask 。它可以被解释为一种特殊的dropout。
主文本检测器可以使用任何现有的基于CNN的前向文本检测器作为主干。在现有的文本检测器中,每个卷积层只有一个输入,卷积运算在整个输入特征图中进行。相反,在我们的主文本检测器中,每个卷积层都有两个输入,即由制导子网络预测的输入特征图和制导掩码,卷积运算只在制导掩码中进行。
文本检测由 引导CNN框架(子网络) + 主文本检测器
基于背景感知的分组随机综合训练策略,提高了训练的准确率和部署的便捷性