双重注意机制的空对地目标智能检测算法
2020-01-03王文庆庞颖刘洋杨东方张萌
王文庆,庞颖,刘洋,杨东方,张萌
(1.西安邮电大学 自动化学院,陕西 西安 710121;2.火箭军工程大学 导弹工程学院,陕西 西安 710025)
0 引言
空对地目标检测的目的是实现空对地场景下对目标的识别和精确定位,也是在空基无人平台遂行多种对地感知和认知任务的关键技术[1]。近年来,随着空基平台在遂行自主巡视、主动侦察监视打击和自然灾害预防等任务中发挥的作用越来越明显,空基目标检测技术得到了越来越多的关注。通过研究新的空对地目标检测算法,提升空基平台对地目标检测的自主性、准确性和实时性,成为当前空基无人领域研究的热点问题[2]。
近年来,目标检测成为了计算机视觉和数字图像处理的一个热门方向,广泛应用于机器人导航、智能视频监控、工业检测、航空航天等诸多领域,具有重要的现实意义。随着深度卷积神经网络[3]的提出和发展,基于深度学习的目标检测[4]算法利用深度卷积网络对图像不同特征信息进行学习,根据该特征对图像中的目标进行描述,然后采用目标分类和边框回归的方法对目标进行检测。目前,基于深度学习的目标检测大致可划分为单级目标检测算法[5-6]和两级目标检测算法[7-9],单级式是在网格上进行固定数量的预测;两级式是先使用一个提议网络寻找目标,然后再使用另一个网络来微调这些提议并输出最终预测结果。两级目标检测算法在特征提取网络之后,采用RPN(region proposal network)策略筛选目标提案[10-11],再进行目标的分类和位置回归。这类算法由于采用RPN策略对图像中的目标提案进行预筛选,提高了目标提案的质量,所以具有较高的检测精度,但此过程耗时较长,使得算法的实时性能较差。而单级目标检测算法则省略RPN过程,在特征提取网络的基础上添加额外的卷积层,再通过位置、尺度和纵横比的密集采样对目标的类别和位置进行回归,提高了检测算法的实时性能,但检测精度相比于两级算法较差,特别是对小目标的检测。实际中,由于空基平台视距远,复杂背景环境的的特点,导致空对地成像的场景范围大,场景中目标的尺寸小,仅占图像的小部分区域,且目标自身包含的特征信息较少,难以消除复杂背景特征的干扰,这些难点给现有目标检测算法提出了挑战。
通常,人眼在观测目标时,并不是将全部视觉信息都尽收眼底,而是关注感兴趣区域信息进行识别。因此,本文仿照人眼视觉[12]和大脑感知图像的过程,在深度学习SSD(single shot multibox detector)算法[13]的基础上,将双重注意机制应用于空对地目标检测中,不仅关注通道中的目标有效特征信息,同时也关注空间位置中的目标重点区域,双重优势更高效地对重要特征之处赋予新的权重,将之称为基于双重注意机制的空对地目标智能检测算法,简称为DAM(dual attention mechanism)-SSD。
1 双重注意目标检测算法
近几年,注意力机制在图像、自然语言处理等领域中都取得了重要的突破,本身也是符合人脑和人眼的感知机制,被证明有益于提高模型的性能。本文选择经典的SSD算法作为基本框架,引入双重注意机制,提出了一种新的空对地目标检测算法。本部分将从空间注意机制、通道注意机制和双重注意机制的原理,DAM-SSD算法的网络化描述和网络损失函数优化多个方面对算法进行详细介绍。
1.1 空间注意机制
当前许多目标检测算法通过融合多尺度的特征信息,感知目标上下文信息,提高目标的检测精度。然而,空对地视角下的目标尺寸比常规视角下的目标尺寸都要小,所以包含的特征信息少;而且,由于目标尺寸小,仅占场景的部分区域,大部分的复杂背景特征的干扰则会导致误检测和漏检测等问题,给目标检测增添了困难。
如图1所示,图像中并不是所有的区域对任务的贡献都是同样重要的,只有任务相关的目标区域才是需要关注的。传统的目标检测算法通过融合不同尺度特征的方法[14],虽然能够丰富目标的特征信息,但难免会引入更多的背景干扰信息,阻碍检测精度的提升。所以,空间注意机制就是寻找重点目标区域特征信息进行处理,抑制背景信息的干扰。由于在大部分情况下目标检测感兴趣的区域只是图像中的一小部分,因此空间注意力的本质就是定位目标区域并进行一些变换或者获取权重,从而减少背景信息干扰,提高检测能力。
图1 空间注意机制提取目标区域示意图
1.2 通道注意机制
空对地视角下,对于目标和场景的理解,与地面常规视角有着很大的不同。以汽车特征这一典型类型为例,在常规视角下,如图2左半部分所示,观察的汽车涵盖了多角度的观测结果,汽车的特征非常地完整丰富。然而在空对地视角下,如图2右半部分所示,观察的汽车都几乎是一模一样的空对地视觉下方形有效特征形状,这时观察到的目标特征才是目标检测所需的目标“有效”特征信息。
图2 常规视角成像(左)和空对地视角成像(右) 对比示意图
因为空对地场景下视觉单一,视距远的特点,此时空对地视觉下的目标形状特征才是空对地目标检测的重要有效特征信息。同理,如图3所示,特征层中每层通道包含着不同复杂特征信息,并不是所有通道都对目标检测有帮助,所以,通道注意机制通过目标检测网络学习到不同通道对空对地目标检测的重要程度,重点关注重要通道。
图3 通道注意学习重要通道示意图
利用通道注意学习机制提升目标检测网络性能,就是通过学习的方式来自动获取到每个特征通道对空对地目标检测的重要程度,然后依照这个重要程度提取有用的特征,通道的权重越高,代表着该通道包含目标有效特征越重要。通道注意机制利用深度神经网络,对特征信息复杂的空对地图像特征通道进行学习,从而提高空对地目标检测精度。
1.3 双重注意机制
双重注意机制结合了空间与通道注意机制双重优势,相比于单重注意机制(single attention mechanism,SAM)只关注空间的注意力机制效果更好。双重注意机制不再平均考虑特征图中全局的特征信息,而是重点关注场景中目标区域和目标有效特征信息[15]。
如图4所示,首先,左侧部分为通道注意结构,通过全局平均池化操作Fsq把卷积层Input的的每个二维的特征图压缩成一个实数ai,这个实数ai具有全局感受视野,然后利用可学习的参数W为每一个实数ai生成权重,通过可学习的方式建立与特征图之间的相关性,最后用学习后包含全局不同重要程度通道特征B与原始特征图Input进行元素相乘,使输出重点通道特征信息[16]。右侧部分为空间注意结构,Conv(.)表示卷积操作,得到的D表示特征空间中整合多个更新权重通道信息后得到的概括特征图,将特征空间中位置xy(x∈W,y∈H)处特征向量的注意权重axy进行Softmax分类操作获得位置概率权重pxy,通过可学习的方式建立与特征图之间的相关性,最后用学习后包含全局空间不同重要程度位置区域特征D与特征图进行元素相乘,使输出重点区域特征的信息。
双重注意机制结构通过筛选特征层中通道和空间上不同重要程度的有效特征信息和目标区域,利用深度网络学习的方式提升有效特征的权重并抑制复杂背景特征权重,从而提升空对地下目标检测精度。
1.4 DAM-SSD算法的网络化描述
本文选用以VGG16为特征提取网络的SSD算法[17]作为目标检测算法的基本框架。SSD算法基本框架由VGG16网络的前conv4_3层、VGG16网络全连接层转为的卷积层conv7以及额外4个递减的卷积层conv8_2,conv9_2,conv10_2,conv11_2组成。在此基础上,SSD算法在不同尺寸的特征图中通过不同大小,纵横比的目标候选框对不同尺寸目标的类别和位置进行回归。
本文提出的DAM-SSD算法,在SSD的基础上,引入双重注意机制,在增强特征图中目标特征表达能力的同时,减小了复杂背景信息的干扰,提高了空对地目标检测算法的性能,具体网络结构如图5所示,左侧为输入图像,此处以300×300大小的图像为例,首先经过VGG16网络中的Conv4_3层将作为用于检测的第1个特征图,从后面新增的卷积层中提取Conv7,Conv8_2,Conv9_2,Conv10_2,Conv11_2作为检测所用的特征图,共提取了6个特征图,其大小分别是(38×38),(19×19),(10×10),(5×5),(3×3),(1×1)。其次,为了有效利用特征图中重点目标区域和有效特征信息,本文设计了双重注意信息机制融合模块MAD,如图5右侧虚线框内所示。利用DAM模块学习得到特征中重点通道和目标区域信息,将SSD前5个不同尺度特征图通过其转换融合,最终学习得到“重点关注”后的特征图,进行目标检测。
1.5 网络损失函数优化
本文在传统的SSD算法基础上引入了双重注意机制,通过学习通道和空间中的特征权重,描述图像中的目标区域信息。为此,在SSD算法损失函数[18]的基础上,引入了双重注意机制损失。因此,本文算法的损失函数可以描述为如下形式:
Lloss=Ldec+LDAM,
(1)
图4 双重注意机制结构
式中:Lloss表示本文算法的损失函数;Ldec表示目标检测器部分的损失函数;LDAM表示本文引入的双重注意机制损失函数。
Lconf(pDAM,[LDAM-label=1])],
(2)
式中:NDAM表示特征中匹配的注意力集中位置的数量;Lc_loc(·)表示smoothL1损失;Lconf(·)表示Softmax交叉熵损失。
在目标检测器损失函数部分,本文采用SSD算法的损失函数,其形式描述如下:
(3)
式中:t表示目标检测器预测的检测框位置参数;Ndec表示检测器匹配到的目标检测框的数量;t*表示图像中标注的目标框位置参数;pdec表示目标检测器预测的类别置信度;lob-label≥1表示图像中标注的目标类别(lob-label=0表示图像中背景区域的类别);Lloc(·)表示smoothL1损失;Lconf(·)表示Softmax交叉熵损失。
2 实验验证
2.1 基于双重注意机制的空对地目标检测数据集
近几年,深度学习下的目标检测常用的数据集包括PASCAL VOC[19],ImageNet,MS COCO等数据集,这些数据集大多以常规视角拍摄为主,用于研究者测试算法性能或者用于竞赛。其虽然能够为深度卷积神经网络的特征提取提供丰富的训练资源,但这些数据集对应的特征提取网络也是建立在常规生活视角上,这与空基平台的观测视角有着很大的不同,对应得到的图像也存在很大的差异,无法满足空对地背景下目标检测任务的需求。不仅如此,现有的空对地场景下的数据集数量相对较少,并且样本的质量和规模差异较大,所以导致在研究空对地目标检测算法中难度较大。为此,本文通过谷歌地球(Google Earth)、无人机拍摄和互联网等途径搜集了空对地场景中的飞机、汽车、卡车和船舶,制作了空对地目标检测任务数据集。根据本文算法的特点和空对地场景下目标检测的需求,在数据集标注之前,将数据集中的图像大小统一处理为300×300,之后再进行标注工作,从而得到本文数据集。
图5 双重注意机制智能检测算法网络结构图
最后,选用搜集制作的3 000张图像及其标注作为本文基于双重注意机制的空对地目标智能检测算法的数据集,该数据集检测的目标包括飞机、汽车、卡车和船舶4种类别,将数据集按照7∶3的比例划分为训练集和测试集参与训练过程。
2.2 DAM-SSD算法验证实验
本部分主要对DAM-SSD算法、SSD算法和单重注意机制目标检测算法(single attention mechanism-SSD,SAM-SSD)进行了分析对比;采用单类目标检测精度(average precision,AP)和算法检测精度(mean average precision,mAP)2种性能指标,用于评估模型的物体分类和定位性能。其中,单类目标检测精度(AP)主要用于评价算法模型检测每一个目标类型的性能好坏,具体计算过程如下:
(4)
式中:P表示检测的精确率(Precesion),计算的是所有“正确被检测”占所有“实际被检测到的目标”的比例;R表示检测的召回率(Recall),计算的是所有“正确被检测”占所有“实际应该检测到的目标”的比例。一般计算AP值,通常以R为横轴,P为纵轴,就可以画出一条P-R曲线,P-R曲线下的面积就定义为AP,如公式(4)。
算法检测精度(mAP)主要用于评价算法模型检测所有或多个类型总体平均的性能好坏,具体计算过程如下:
(5)
式中:N表示检测的类别数量;APi表示类别i的检测精度。
为了验证DAM-SSD算法的性能,本部分将DAM-SSD算法与其他算法在结构有效性、测试效果和验证训练曲线3方面上进行对比实验。
首先,从结构有效性对算法进行分析,在相同数据集规模和参数条件下,对本文算法模型和其他算法模型进行训练和对比实验,评价指标采用AP和mAP,结果如表1所示。
表1 不同算法在同一数据集下不同 类别目标检测精度对比
由表1可以得出结论,相比于SSD算法,DAM-SSD算法目标检测精度提高了4.35%,通过引入双重注意机制,提取特征层中最值得关注的特征信息,提高目标检测的准确性。
相比于SAM-SSD算法只关注空间位置的的重点特征,DAM-SSD算法通过关注特征层的通道与空间位置上的有效目标信息和区域,目标检测精度提高了1.23%,同时不同类别的检测精度均得到了提升。DAM-SSD算法利用本文双重注意机制模块的双重优势,提高了空对地目标检测精度。
DAM-SSD算法与其他算法训练曲线对比实验如图6所示,从蓝色虚线框可以得到,在0~100 epoch内,当3种算法达到同一mAP值时,DAM-SSD算法所需训练代数最少,说明其训练速度最快;从黑色虚线框内可以得到,3种算法中DAM-SSD最终训练验证结果精度值最高。
图6 双重注意机制智能检测算法与其他 算法训练曲线对比实验
综上,DAM-SSD算法与SSD算法和SAM-SSD算法相比,具有相对更快的训练速度,更高验证精度。
本文算法与SSD算法结果可视化对比实验如图7所示,可以看出,本文算法比SSD算法检测效果更准确,对空对地场景下较密集目标也有较好的检测效果,可以证明,本文算法提升了空对地目标检测效果。
图7 双重注意机制智能检测算法和SSD 算法结果可视化对比
3 结束语
本文提出的DAM-SSD算法,改变了传统算法上对全局特征直接检测的方式,通过在SSD算法基础上,引入本文的双重注意机制,针对空对地视觉单一和目标有效特征少的问题,利用DAM模块对通道和空间位置上重点关注的特征信息和区域进行提取,筛选有效信息,继而与原特征图进行融合转换处理,有效避免复杂背景信息的干扰。从不同算法对比实验结果发现,本文提出的DAM-SSD算法,相比于比SSD算法和SAM-SSD算法在空对地目标检测性能上分别提高了4.35%和1.23%;同时,DAM-SSD算法与其他2种算法相比,网络训练结果达到更高精度且速度最快。以上结果表明,本文算法提升了空对地场景下目标检测精度。