Deep Relational Reasoning Graph Network for Arbitrary shape Text Detection
深度关系推理图网络用于任意形状文本检测
摘要
提出了一种新颖的统一关系推理图网络用于任意形状文本检测。在我们的方法中,一个新颖的局部图连接一个文本建议模型(CNN)和一个深度关系推理网络(GCN)使得我们的网络端到端可训练。更具体的说,每一个文本实例将被分成一系列小的矩形组件,小的矩形组件的几何特征(高度,宽度,方向)通过我们的文本建议模型估计。通过几何特征,局部图建立网络可以粗糙的建立不同文本组件之间的联系。为了进一步推理和演绎组件与相邻组件之间相连的可能性,我们采取一个基于图的网络在局部图上执行深度关系推理。实验在公开可用的数据集上证明了方法的state-of-the-art性能。
介绍
由于文本表示形式的限制,先前的工作很难检测任意形状的文本。最近一些方法如TextSnake和CRAFT,尝试通过联通分量方法解决问题。然而这些方法没有深入研究组件之间丰富的关系,对文本组件聚合成为最终的文本实例有帮助。
在基于连通分量的方法中,一个必须的任务是挖掘不同字符或组件区域的合理的关系用于连接他们成为整体的文本实例。现存的方法通常使用预定义规则,link map或embedding map来组合被检测的组件成为文本实例。通常来说,通过可学习的连接关系或嵌入关系来组合文本组件相比于预定义的规则更加健壮,尤其是对于长和弯曲的文本。从我们主要的观察和实验中,深度关系推理用于挖掘这些组件区域之间的稳定关系可以有效的提升弯曲形状文本检测的表现。基于link或embedding的方法通常使用CNNs来推导独立组件之间的连接,但是独立的组件通常是非欧几里得数据,CNNs在处理非欧几里得数据时表现不佳。因此,简单的link map和embedding map对于学习两个不相邻的组件之间的关系是不恰当的。非欧几里得数据可以使用图来表示,所以我们可以将独立地文本组件转换为图。如图1所示,我们将每个文本组件设为一个节点。因此,我们可以搜索一个节点作为中心点,将周围的点与他连接形成一个局部图,在Sec3.3中描述。这是一个共识,图网络有先天优势用于在图上推理节点之间的关系。最近,基于图神经网络的方法在人脸据类,各种任务的全局推理上取得了卓越的表现。深受这些工作的启发,我们采用了一个图卷积网络来执行局部图上的深度推理以演绎组件和相邻组件之间的深度连接可能性用于任意形状的文本检测。
在本篇文章中, 我们提出了一个新颖的利用深度关系推理图网络用于任意形状文本检测。根据CTPN和TextSnake,我们将每一个文本实例分程文本组件,提出了一个文本建议网络来估计这些文本组件的几何形状。为了组合这些生成的组件,我们采用了一个基于图的网络来只进行深度关系推理并推使用组件和其邻居的几何特征来推理连接关系。此外,一个局部的图被设计用于连接文本建议网络和关系推理网络,使得我们的网络可端到端进行训练。最后,我们组和检测的文本组件为整个文本实例,根据相关性的结果。
总结:本篇文章的主要贡献有三个方面
1.提出了一个新颖的统一的端到端可训练架构用于任意形状文本检测,通过一个新颖的局部图连接了基于CNN的文本建议网络和基于GCN的关系推理网络。
2.据我们所知,我们的工作寿词尝试通过图卷积网络进行深度关系推理用于任意形状文本检测。
3.提出的方法在多边形数据集合四边形数据集上均达到了state-of-the-art
相关工作
基于回归的方法
基于分割的方法
基于连通分量的方法:CTPN,SegLink,CRAFT,TextDragon
Relational Reasoning关系推理:
基于连通分量的方法对于长或非四边形文本十分健壮,但是这些方法的性能强烈依赖与分组或边界结果的健壮性。在PixelLink中文本像素通过学习像素与临近像素之间的边界关系进行聚类,在[28]中,embedding特征用于提供实例信息并生成文本区域。CRAFT预测字符区域图和亲密关系图通过一个弱监督学习。区域图用于定位字符,亲密关系图用于组合字符成为实例。这些方法基于CNNs,不可以直接捕获远距离组件区域之间的关系由于局部卷积操作得限制。最近,Wang提出了一种基于光谱的GCN来解决人脸聚类问题,其所设计的GCN可以理性的连接属于同一个人的不同脸实例在复杂的情况下。
提出方法
总览
我们方法的架构如图2所示。文本组件建议网络和深度关系推理图网络共享卷积特征,共享的卷积特征使用VGG16和FPN作为骨干网络,如图3所示。文本建议网络使用共享特征估计文本组件的几何属性。在获得几何特征后,局部图可以大致的建立不同文本组件之间的连接。基于局部图,关系推理网络可以推导出组件和其邻居之间的连接的深度估计。最后,文本组件聚合为整体的文本实例,根据推理结果。
文本组件预测
在我们的工作中,每一个文本实例由一系列有序的矩形组件构成,如图4(a)所示,每一个文本组件D与一组集合属性相关,如D=(x,y,h,w,cos,sin),x,y是文本box的轴心,h,w是组件的高度和宽度,cos和sin表示文本组件的方向。h是h1和h2的和,如图4c所示。w通过一个h的线性转化获得。
w最小为8,最大为24。
为了定义文本组件的方向并更容易地提取文本中心区域,我们使用Textsnake中的方法计算文本区域的头和尾,如图4(a)的黑色箭头。我呢本区域被分为一系列的有序的四边形区域沿着长边。
所以我们可以获得两组点P1和P2。连线标有红色的是上边界线,标有绿色的是下边界线。我们的方法中,我们需要清楚的定义每一个文本实例的上下边界,根据以下标准。
TCR通过缩减文本区域获得。首先,我们计算文本中心线,然后,我们缩减中心线的两端by0.5w的尾部像素,使得网络更容易区分邻近的文本实例,减少NMS的计算花费。最后,我们扩张文本中心线0.3h。在提取共享特征后,两个卷积层用于预测文本组件的特征。有8个通道,4个通道用于TR/TCR的分类分对,四个通道用于回归h1,h2,cos,sin表示文本组件的方向。最终的预测由softmaxing的TR/TCR获得,并调整cos和sin使之平方为1。最后,检测结果通过阈值和位置感知的NMS在正样例上产生。
检测Loss:
Ltr表示TR的loss,只计算在TR之内的像素,Ltcrn计算TR外的像素,用于抑制TCR内的背景噪音。用这种方法,获得的TCR可以有利于后处理步骤。OHEM用于TR loss,负样本和正样本的比例为3:1.在我们的实验中设置lamda1为1.0 lamda2为0.5。
因为高度和角度的属性在非TCR的区域内不存在,我们只计算TCR区域的回归
只计算TCR为正的元素。
局部图生成:
我们基于他们在一个局部图内的上下文信息来估计两个节点之间连接的概率。为每个图像构建一个完整的图是低效的,因为文本组件只与他们的邻居有相连概率。因此,我们构建多个局部图为每一个图片,这些局部图通常包含一定限制数量的节点,使得关系推理变得高效。
我们修改IPS用于生成局部图,核心点的邻居到h-hop作为节点在我们的工作中,我们只是用2-hop作为节点对于局部图。更明确地解释,Vp用于表示局部图Gp中的节点,p表示中心点。p的1-hop邻居由8个最邻近的邻居组成,2-hop邻居由4个最邻近邻居组成。高阶邻居提供了中心点和邻居直线上下文的局部结构辅助信息。在这里我们仅考虑节点之间的欧几里得相似度用于执行KNN操作,
为了避免在训练中由于许多相同的图而造成的梯度累计,节点p应该满足以下条件:
Gp和Gq是两个局部图,中心点p和q在相同的文本实例上,Gp∩Gq是1-hop 邻居的交集,Gp∪Gq是所有的1-hop邻居。在我们的实验中,阈值设置为0.75。这个策略不仅导致了相当大的加速,而且减少了简单样例的数量,保持了简单和复杂样例的平衡。
3.4 深度关系推理
每一张图片中的文本组件将被分程多个局部图通过局部图生成,包含中心点和他的2-hop邻居。局部图中的粗略连接信息对于估计节点和他的邻居的连接概率是有价值的。为了推理和演绎中心点和邻居之间连接的概率,我们采取了一个特定的基于图的神经网络用于基于局部图挖掘中心点与邻居之间的连接关系,图通常用g(X,A)表示,图卷积网络通常取特征矩阵X和邻接矩阵A作为网络的输入,因此,我们需要提取出特征矩阵X并计算矩阵A用于局部图。
节点特征提取:节点特征包括两部分特征,叫做RROI特征和几何特征。为了获得RROI特征,我们使用RRoI Align层,利用了RoI-Align和RRoI的优势提取输入文本组件的特征块。为了确保模型的收敛能力,我们使用使用在训练中使用ground truth生成文本组件。在相同文本实例中的文本组件具有相似的几何特征。然而,RROI特征会损失一些几何属性,如位置信息。因此,我们在节点特征生成时需考虑这些集合属性如图5。对于一个文本组件,我们将他和特征图Fn送入RRoI-Align层,接下获得一个1X3X4XCr特征块,之后将其形变为1X12Cr叫做Fr。文本组件的几何特征根据[29,5]中的技术嵌入到高维特征空间。嵌入通过将不同波长的正弦和余弦函数应用于标量z。
嵌入向量的维度是Cdelta,最后,每一个文本组件嵌入到一个有6Cdelat维度的向量Fg中,最后Fr和Fg拼接为节点特征。
节点特征规范化:我们规范化每一个结点的特征通过减去xp,它将中心点p的信息编码到局部图特征中,使得关系推理网络更容易学到中心点和邻居之间的边界关系。
邻接矩阵生成:我们使用一个邻接矩阵Ap来表示局部图的拓扑结构,对于Vp中的一个节点ni,我们过滤掉u个最接近的邻居U(ni),对于U(ni)中的节点,我们将其设置为1,在我们的工作中,u设置为3。
图卷积:在获得特征矩阵X和邻接矩阵A后,我们使用基于图的关系推理网络来估计中心点和其邻居的连接关系,基于建立好的图。我们修改了[33,8]中的结构,我们的方法中的图卷积层可以被计算为:
G是一个对称规范化的拉普拉斯算子,大小为NXN,操作符代表矩阵拼接,Wl是可训练的权重矩阵;外面是一个非线性激活函数。A~ = A+In是一个局部图的邻接矩阵添加自我连接。D~是一个对角矩阵Dii = Aij的和。
我们的关系推理模型是一个batch Normalization层和一四个使用ReLu激活的图卷积层的堆叠。我们使用softmax交叉熵loss作为优化的目标函数。与[33]相似,在训练中之反向传播1-hop节点的梯度,因为我们只关心节点与1-hop邻居之间的连接。对于测试,我们也只考虑1-hop的节点的分类。
推理:
得到文本组件后,我们组合文本组件到文本实例,根据推理结果。我们首先对TR和TCR进行阈值操作,然后NMS用于减少冗余。为了推理中心点和邻接点的关系,我们循环遍历所有文本组件,以每一个文本组件为中心点构建局部图。因此我们获得了一组由连接概率作为权重的边,最后我们使用BFS集群和合并连接。
在获得了集群的文本组件后,我们对这些组件进行排序用于边的生成。最小路径算法用于寻找通过文本组件中心的最小路径,我们按搜索结果对T进行排序。对于边界生成,我们只需要在有序的文本组件中有序的连接顶部和底部的中点,如图2所示。
实现细节:我们网络的骨架结构是预训练的VGG16在ImageNet上。训练主要包括两个步骤:在SynthText上预训练我们的网络2个epochs,微调特定的数据集600个epochs。在预训练阶段,我们随机裁剪图片区域,调整尺寸到512。batch size设置为12。Adam优化器用于训练模型,学习率10-4。在微调阶段,为了多尺度训练,我们随机裁剪文本区域并调整他们的大小640x640 batchsize=8,800x800 batchsize=4,960x960,batchsize=4。在微调阶段,SGD优化器用于训练我们的模型。初始学习率设置为0.01,每过100个epochs乘以0.8。此外,基本的数据增强操作如旋转,随即裁剪,颜色转换,局部反转被使用。实验在single GPU RTX-2080Ti上进行。
消融实验:
因为MSRA-TD500包含英文和中文,我们使用ICDAR2017-MLT对我们的网络进行预训练。
basline为使用TR和TCL的交集来代替GCN学习的关系。