APP下载

多层次特征融合与注意力机制的文本检测

2022-05-09骆文莉

小型微型计算机系统 2022年4期
关键词:卷积注意力算法

骆文莉,吴 秦

(江南大学 人工智能与计算机学院,江苏 无锡 214122)

(江南大学 江苏省模式识别与计算智能工程实验室,江苏 无锡 214122)

1 引 言

文本在日常生活中广泛存在,例如车辆牌照、产品名称和路标等.相比于场景中的其他元素,文本拥有着更精确、更丰富的表达能力.因此,想要实现更高级别的文本识别,更好地理解场景中的内容,文本检测非常重要.

在深度学习方法普及之前,用手工设计的特征[1,2]和传统分类器来进行文本检测很难取得重大突破.随着卷积神经网络(Convolutional Neural Networks,CNNs)在许多计算机视觉任务中的成功,越来越多的基于深度学习的文本检测方法被提出,主要分为基于回归和基于分割这两种方法.基于回归的方法通常是对目标检测方法(例如SSD[3]和Faster-RCNN[4])的改进.这些方法可以成功定位矩形或四边形边界框的文本,但是它们不能很好地检测任意形状的文本.而分割类的检测方法可以检测任意形状的文本,但是弯曲文本的检测结果有待提高.此外,由相机视角和文本本身引起的尺度多变性问题以及文本分布的多样性仍然给文本检测带来了极大的挑战.

针对上述问题,本文提出了一个多层次特征融合与注意力机制的自然场景文本检测器.针对文本尺度多变性的问题,本文提出了一个新的特征融合模块.利用不同扩张率的空洞卷积来捕获多尺度信息,在不减小特征尺度的同时,获取了更丰富的特征,缓解了自然场景图像中文本尺度多变性的问题.针对文本分布多样性的问题,本文提出了一个注意力模块,通过全局特征通道注意力来加强文本信息,削弱非文本信息,提高特征的表示能力,能有效实现不同通道间文本特征的交互,减少误检.

为了证明本文所提方法的有效性,本文在4个数据集上进行了实验,包括一个多方向文本检测数据集(ICDAR2015)、两个弯曲文本检测数据集(CTW1500,Total-Text)和一个多语言文本检测数据集(MSRA-TD500),都得到了不错的结果.

2 相关工作

深度学习近些年来在众多研究领域,展现了其强大魅力,诸如图像识别、场景视图分割还有目标检测等计算机视觉领域.而目前文本检测领域最常用的两类方法:回归和分割,也是基于深度学习来实现的.

通过对边界框执行回归操作,从一般目标检测方法派生出基于回归的文本检测方法.Liao 等人提出的TextBoxes[5]算法修改了SSD的锚点和卷积内核的比例,来检测不同长宽比的文本.TextBoxes++[6]方法通过回归四边形边界框替换矩形边界框来检测多方向文本.Liao 等人提出RRD[7]方法分别提取了旋转不变和敏感特征进行分类和回归,在检测长文本和方向变化比较大的文本时,该方法效果很好.Zhong[8]等人提出了一种基于Faster R-CNN的方法来扩大文本与一般对象之间的差异.Tian等人提出的CTPN[9]是第一次将RNN应用在场景文本检测中的方法,该方法将文本表示为具有固定宽度的多个小垂直锚点,再合并得到对文本框的预测.He等人提出SSTD[10]方法通过生成注意力图,来增强文本的特征图信息并抑制背景信息,该方法对于预测小文本效果很好.Ma等人提出的RRPN[11]方法通过旋转框来检测多方向文本,提高了多方向文本的准确率.尽管基于回归的方法在检测水平文本方面很有效,但它们并不擅长检测任意形状的文本.

基于分割的文本检测方法主要是对全卷积网络[12](FCN)的改进.Zhang[13]等首先使用基于全卷积网络和最大稳定极值区域(MSER)的算法来检测定向文本.Deng等人提出的PixelLink[14]算法,不仅对输入图像中的像素进行文本或非文本预测;它还对当前像素与其周围8个像素之间的连接关系,进行预测,以便对属于同一文本实例的像素进行分组.Zhou等人提出的EAST[15]算法同时使用分割和边界框回归来检测场景文本,并取得了良好的效果.在Long等人提出的Textsnake[16]算法中,将文本描述为具有不同半径和方向的重叠圆环序列,这种方法能非常灵活的检测弯曲文本.Liao等人提出的Mask Text Spotter[17]算法通过语义分割和空间注意力机制解决了不规则文本的检测和识别问题.Xie等人提出的SPCNet[18]算法以Mask R-CNN为基准,并引入了文本上下文模块和重新评分机制,来提高检测精度并减少错误检测的发生.Wang等人提出了一种基于分割、尺度扩展和多尺度预测的算法PSENet[19],能检测任意形状文本的同时还能检测多语言的文本.Baek等人提出的CRAFT[20]算法使用类激活映射(CAM)操作来检测每个字符,并将检测到的字符连接在一起以获得相应的文本边界多边形,仅仅使用较小的感受野就可以预测较大、较长的文本.Liao等人提出DB[21]算法,将ResNet网络所提取的特征送入特征金字塔中,并提出可微分近似二值化替换固定阈值的一般二值化,使该过程可与分割网络一起训练.该种方法有区分文本区域、背景区域、离得近的文本实例的优点.

基于分割的方法能对任意形状的文本进行检测.但是,分割结果的好坏会极大地影响这类方法的性能.例如,分割模块将同一个文本分成多块就会导致该文字区域最终被检测为多个区域.并且文本尺度多变性和分布的多样性也给文本检测带来了极大的挑战.与上面提到的工作相比,我们的方法结合了多层次特征融合模块和通道注意力机制进一步提高文本检测性能.

3 本文的方法

3.1 总体网络架构

文本尺度多变性和文本分布的多样性是自然场景文本检测中存在的两个主要挑战.针对这些问题,本文设计了一种新的多层次特征融合以及通道注意力的卷积神经网络,网络框架如图1所示.主要包含3个部分:多层次特征融合模块,注意力机制,可微分二值化模块.第1个部分是基础主干网络,多层次特征融合模块,如图1的左部分所示:将ResNet[22]的从conv2_x到conv5_x的特征与特征金字塔网络相结合,生成4路不同层次的特征图;并将ResNet的conv4_x的特征送入空洞卷积池化模块(Dilated Convolutional Pooling Network,DCPN),通过具有3种空洞率的空洞卷积并行来获取不同尺度的特征,并获得额外的1路特征图.接着再将该5路特征进行concat相结合,送入下一个模块.本文将在3.2节详细介绍该模块.第2个部分是注意力机制,如图1的中间部分所示:该模块利用通道注意力来加强文本相关的信息,削弱非文本信息,提高特征的表达能力,本文将在3.3节详细介绍注意力机制.图1的右部分所示是网络的第3个部分可微分二值化模块:使用可微分二值化算法来进行后处理并且得到检测结果,该部分将在3.4节简要描述.另外本文将在3.5节介绍训练标签的生成和损失函数.

图1 多层次特征融合与注意力机制的文本检测框架Fig.1 Framework of text detection based on multi-level feature fusion and attention mechanism

3.2 多层次特征融合

如图1的左部分所示,将从基础网络Resnet50提取的1/4、1/8、1/16、1/32的特征图分别记作C2、C3、C4、C5.本文将这些层的特征从C5开始自上而下逐层上采样至和上一层同样尺寸,再进行级联,分别得到P5、P4、P3、P2共4路通道数为64的不同层次的特征图,公式如下所示:P5=conv1(C5),P4=conv1(C4)‖UP×2(P5),P3=conv1(C3)‖UP×2(P4) ,P2=conv1(C2)‖UP×2(P3).其中conv1指的是1×1卷积,它可以方便地实现特征通道的升维或降维,有利于组织不同通道间的信息,提高网络的表达能力;UP×2(·)表示2倍上采样;“‖”操作表示相加.在图2中,画出了具有代表性的特征图P5和P4的生成过程.

图2 特征的横向连接操作Fig.2 Feature lateral connection operation

虽然可以通过卷积(convolution)结合下采样(pooling)方法来减小图像尺寸,这样每个像素都有一个较大的感受野(receptive field),但有导致分辨率下降、局部信息丢失的缺点.而空洞卷积(dilated convolution),是在普通的卷积图里注入空洞来增加感受野.与原来的卷积相比,空洞卷积还具有一个称为扩张率的超参数,指的是卷积内核的间隔数(普通卷积的扩张率是1).所以空洞卷积在我们在的网络中被多次使用,可以不进行下采样却能使每个像素有较大感受野.

图1左部分的DCPN分支是本文对C4特征经过空洞卷积池化模块的进一步提取.图3是本文的空洞卷积池化模块:本文对主干网络ResNet的C4特征图以3种不同扩张率(r)的空洞卷积并行采样,来获得不同的感受野,充分捕捉图像的上下文.将C4特征分别经过1×1conv、3×3conv(r=6)、3×3conv(r=12)、3×3conv(r=18)和一个pooling池化操作,得到5个通道数为256的多尺度特征,将其进行级联操作(concatenation)后得到通道数为1280的特征图,再通过一个1×1conv得到通道数为256的特征图.而经过DCPN后的特征会进一步卷积得到通道数为64的特征图.为了进一步组合所获得的不同层次的语义特征,本文融合了P5、P4、DCPN、P3、P2这5个特征图,以获得特征图X.

图3 空洞卷积池化模块Fig.3 Dilated convolutional pooling network(DCPN)

(1)

X如公式(1)所示,其中(·)表示级联操作,UP×2,UP×4,UP×8依次表示2、4和8倍上采样操作.

3.3 注意力机制

卷积核通常能在局部感受野中融合空间信息,但是会忽略通道之间的信息表达,因此本文通过通道注意力机制来增强神经网络提取特征的能力.注意力机制如图1中间部分所示.

假设由多层次特征融合模块所提取的特征图可以由公式(2)表示:

X=[X1,X2,…,XC],X∈RC×H×W

(2)

其中C、H、W分别代表特征图的通道数、高度和宽度.

每张特征图中所有像素的平均值使用全局平均池化(Global average pooling)来计算,以该操作的输出来代表相应特征图的通道的值.第c个通道的全局平均池的输出表示为zc,zc可由公式(3)计算得到:

(3)

其中xc(i,j)代表第c个通道特征图xc上(i,j)位置的值.可以得到:

z=[z1,z2,…,zC]T

(4)

ECANet[23]分析了SENet[24]中的通道注意力模块,发现:在学习通道注意力的时候需要避免特征降维.因此借鉴ECANet,在注意力机制中,避免使用全连接层来降维,而是利用一个卷积来实现跨通道间的信息交互,考虑当前通道和其k个邻域通道的信息交流.再经过激活函数得到特征权重向量ω=[ω1,ω2,…,ωC]T,ωc代表的是经过特征选择后的第c个通道的特征重要性.ω的计算方式如公式(5)所示:

ω=σ(conv1dk(z))

(5)

其中σ(·)表示Sigmoid激活函数操作,而conv1dk(z)表示当前通道的k个邻域通道间的卷积.

(6)

经过注意力机制,使不同通道间的特征信息可以实现有效交互,从而增强与文本相关的特征并抑制不相关的特征.本文在4.3节的对比实验证明了注意力机制模块的有效性.

3.4 可微分的二值化

(7)

3.5 损失函数

在训练过程中,本文用不同的标签来对概率图、阈值图和近似二值化图进行指导.图4是标签生成的示意图,一般数据集给的都是完整文本框的标签G,需要进行缩放处理.概率图和近似二值化图用相同的标签,使用 Vatti裁剪算法[25](Vatti clipping algorithm),将人工标注的文本标签G向内缩小距离d得到Gs,其中缩小距离d由公式(8)所示,S是多边形的面积,r是缩小比例,设置为0.4,C是多边形的周长.而阈值图的标签是向外扩张同样的距离d得到GL,再将Gs和GL中间区域中的值设置为t_max=0.7,其他区域用t_min=0.3进行填充.

图4 标签生成Fig.4 Label generations

(8)

本文损失函数L由Lp、Lb、Lt这3个部分组成,L可由公式(9)来计算:

L=Lp+α×Lb+β×Lt

(9)

其中Lp、Lb、Lt分别代表概率图的损失函数、近似二值化图的损失函数和阈值图的损失函数.在实验中,本文将α和β分别设置为1.0和10.

对于Lp和Lb使用二值交叉熵损失函数(binary crossentropy(BCE)loss),如公式(10)所示.

Lp=Lb=∑i∈Smyilogxi+(1-yi)log(1-xi)

(10)

其中Sm代表着训练过程中由OHEM[26]预测的文本区域,yi表示概率图的标签值,xi表示预测值.

对于阈值图的损失函数Lt为膨胀文本多边形GL中预测与标签之间的L1距离之和,Lt如公式(11)所示:

(11)

4 实 验

4.1 数据集

接下来简单介绍本文实验中用到的数据集.

SynthText[27]:这是一个由背景图片合成的包含80万张图片的大型数据集,用这个数据集来预训练本文的模型.

ICDAR2015[28]:ICDAR2015数据集是一个由1000张训练图片和500张测试图片组成的纯英文文本数据集,该数据集中每个文本区域的标签是四边形.与其他方法一样,本文将忽略那些标记为“###”的检测有难度的文本.

CTW1500[29]:CTW1500是由1000张训练图片和500张测试图片组成的纯英文弯曲文本数据集,每个文本区域都用14个顶点的多边形来表示,以充分描述弯曲文本的形状.

Total-Text[30]:Total-Text是一个由1255张训练图片和300张测试图片组成的数据集,该数据集包含多种不同文本方向:水平、多方向和弯曲,克服了别的数据集文本方向单一的缺点.

MSRA-TD500[31]:MSRA-TD500是包含英语和中文的多语言文本检测数据集,其中300张图片作为训练集,200张图片作为测试集.由于该数据集训练图片较少,依照之前的方法[15,16,21],本文将MSRA-TD500的300张图片和HUST-TR400[32]数据集的400张图片一并作为训练集.

4.2 实验细节

4.2.1 数据增强

为了增强训练数据,本文使用以下3种数据增强方法:1)在(-10°,10°)角度范围内,随机选取一个角度进行旋转;2)随机裁剪和翻转;3)将处理过的图片调整成 640×640的大小.

4.2.2 实验设置

4.2.3 评价指标

用准确度(P,Precision)、召回率(R,Recall),还有利用这两个指标加权调和计算的平均得分(F,F1-measure).这3个指标来量化文本检测算法的性能,其值越大,检测性能越好.P、R的计算分别如公式(12)、公式(13)所示:

(12)

(13)

其中NTrue表示能正确检测的文本框的个数,NDet表示网络模型检测出的文本框个数,用NGT来表示真实文本框的个数,F的计算如公式(14)所示:

(14)

4.3 对比实验

本文在CTW1500数据集上对注意力机制模块中的参数做了实验.另外,为了验证多层次特征融合模块和注意力机制模块的有效性,分别在CTW1500和ICDAR2015数据集上做了4组对比实验,这些实验都没有经过预训练.

4.3.1 注意力机制

在3.3中介绍了注意力机制来更好地提取文本特征.本文在CTW1500数据集上做了实验来验证哪一个k(公式(5))最适合本文的注意力模块,将CTW1500数据集的1000张训练图片分成800张和200张,其中800张图片用来训练模型,另外200张图片作为验证集来得到结果.k值以2的间隔从1到9进行变化,结果如图5所示,可以发现当k=7时,CTW1500数据集取得最好的验证结果.因此,在后面的实验中本文设置,k=7,ω=σ(conv1d7(z))被用来表示当前通道和其7个邻域通道的信息交流.

图5 在CTW1500数据集上比较不同值k的结果Fig.5 Comparison of results with different values of k on CTW1500

4.3.2 各模块的对比实验

实验1.基础实验模块,如表1的第1行所示.

表1 在CTW1500和ICDAR2015数据集上对比实验结果Table 1 Results of ablation experiments on CTW1500 and ICDAR2015

实验2.本文添加了多层次特征融合模块,在基础实验中,没有这个模块,仅仅使用特征金字塔模块提取的特征.该模块的实验结果如表1的第2行所示,可以发现和基础实验模块相比F1-measure在ICDAR2015数据集上有0.35%的提升,在CTW1500数据集上有0.83%的提升.

实验3.在3.3节,引入了注意力机制来提取文本检测的特征.从表1的第3行可以看到加了注意力机制的实验结果.和基础实验模块相比,在ICDAR2015数据集上,F1-measure提高了0.69%;在CTW1500数据集上,F1-measure提高了1.47%.

实验4.该实验是将本文提出的多层次特征融合模块和注意力机制的一个整合,该结果在表1的第4行.在ICDAR2015数据集上,F1-measure提高了1.04%;在CTW1500数据集上,F1-measure提高了1.71%.

4.4 与其他算法的比较

为了验证本文方法的有效性,本文还与当前领先的一些结果作比较.

多方向文本检测:在表2中可以看到在多方向文本检测数据集ICDAR2015上实验结果优于DB等主流算法.在F1-measure指标上,本文方法和PSENet方法相比高2.98%,和DB算法相比高1.02%.

表2 ICDAR2015上实验结果Table 2 Results of ICDAR2015

弯曲文本检测:在Total-Text和CTW1500这两个数据集上的实验充分证明了本文方法对弯曲文本检测的鲁棒性.从表3中可以看到,在CTW1500数据集上本文的方法在准确率方面达到了最先进的表现.尤其是,“Ours-Res50(1024)”比DB算法在F1-measure上有近1.4%的提升,相比于PSENet算法,F1-measure提高了2.6%.从表4中可以看到,在Total-Text 数据集上“Ours-Res50(800)”相比于PSENet算法,F1-measure提高了4.92%,相比于CRAFT算法,F1-measure提高了2.19%,相比于DB算法F1-measure有1.81%的提升.综合表3和表4可看出,本文方法在检测弯曲文本数据集上的鲁棒性.

表3 CTW1500上实验结果Table 3 Results of CTW1500

表4 Total-Text上实验结果Table 4 Results of Total-Text

多语言文本检测:本文的方法也能将多语言文本检测地很好.如表5在MSRA-TD500数据集上的结果所示,“Ours-Res50(736)”在 F1-measure上超过“DB-Res50(736)”1.55%.

表5 MSRA-TD500上实验结果Table 5 Results of MSRA-TD500

为了直观地展示文本检测的效果,图6展示了本文算法和对比算法DB在一些测试图片上的结果.从左到右,分别是测试图片、真实标签图、DB算法生成的预测结果、本文算法生成的预测结果,在真实标签图中,实线标注框表示必须要检测出的文本,虚线的标注框表示该文本检测时有一定的难度,可以不要求检测出;从上到下,测试图片分别取自ICDAR2015、MSRA-TD500、Total-Text 和 CTW1500.从图6(a)可以看出,本文的方法对同一张图像中不同尺度的文本可以很好的检测;从图6(b)可以看出,本文的方法对有一定旋转角度的文本的检测效果也很好;图6(c)直观的展示了本文的方法不仅能检测出各种形状的文本而且能在一定程度上减少误检,提高文本检测的准确率;图6(d)可以看出本文的方法可以鲁棒地检测圆弧形状文本.

图6 一些测试图片示例Fig.6 Some samples of testing images

5 结束语

自然场景文本检测技术在日常生活中的应用十分广泛.但由于文本尺度变化大和文本分布多样等问题给精确检测文本带来了巨大的挑战.本文利用不同扩张率的空洞卷积设计的多层次特征融合模块,能扩大卷积核的感受野,来获取不同尺度的特征,减少了因为尺度差异大引起的漏检.此外,本文提出的注意力机制模块利用通道注意力能够有效地实现跨通道间的信息交互,提取更能代表文本的特征,有利于减少误检.在4个公开的文本检测数据集上的实验结果显示,本文方法的F1-measure比最先进的方法要好,充分验证了本文方法的有效性.

在实验中还发现,ICDAR2015数据集中的图片十分模糊,会带来网络训练的不稳定性.另外,这种图片在实际应用中也经常出现,本文作者将进一步研究怎么将模糊的图片检测的更好,进一步来提升本文模型的泛化性和文本检测准确性.

猜你喜欢

卷积注意力算法
基于全卷积神经网络的猪背膘厚快速准确测定
基于图像处理与卷积神经网络的零件识别
让注意力“飞”回来
基于深度卷积网络与空洞卷积融合的人群计数
Travellng thg World Full—time for Rree
卷积神经网络概述
学习算法的“三种境界”
算法框图的补全
算法初步知识盘点
A Beautiful Way Of Looking At Things