APP下载

基于多尺度特征融合的无人机识别与检测

2021-03-26曹靖豪张俊举姚若彤

空天防御 2021年1期

曹靖豪,张俊举,黄 维,姚若彤,张 平

(1.南京理工大学电子工程与光电技术学院,江苏南京 210094;2.江苏北方湖光光电有限公司,江苏无锡 214035)

0 引 言

随着工业的快速发展,无人机技术的发展和应用逐步成熟。无人机由于其体积小、能耗低、机动性高等优势,逐步地被应用于军事化作战中,基于智能算法的无人机目标识别检测技术也逐步被运用于技术安防、军事化侦查等领域中。在无人化作战领域,敌我目标的检测识别是实现无人化作战的核心步骤。

传统的目标检测方法通常人工提取图像特征,经典的目标实时检测方法有光流法、帧差法、背景差分法等。但是传统的图像算法特征提取具有主观性,且检测精度较低,鲁棒性较差。

基于深度学习的目标检测算法主要分为两类:一类是基于区域建议的二阶段目标检测方法,如Faster R-CNN、快速区域卷积神经网络(fast-region-based convolutional neural network,Fast R-CNN)等;另一类是没有区域建议的端到端检测算法(也被称为单阶段检测算法),如YOLO 系列、单阶段多框预测(single shot multiBox detector,SSD)等。就计算精度而言,实验证明,以国际通用的均值平均(mean average precision,mAP)为评价标准,二阶段智能算法的计算精度远高于单阶段检测算法的计算精度。改进后的Faster R-CNN 算法已经被广泛应用于行人检测、道路目标检测等方面。在无人机目标检测方面,张辉等对Faster R-CNN、YOLO v3、SSD算法进行了评估,但未做优化。无人机的目标数据集收集难度较大,往往要从网络图片的无人机特写爬取数据,但是这样的训练集又极有可能与实际需求不符。

本文提出了一种改进Faster R-CNN 算法特征提取层的方案,以解决无人机目标尺度差异问题。首先,设计了Tri-VGG,通过对不同感受野的特征信息融合优化Faster R-CNN算法的检测精度和鲁棒性;然后,设计了一种参数调整和训练策略,解决了实验过程中的过拟合问题。

1 模型构成

1.1 Faster R-CNN算法简介

Faster R-CNN 算法是一种基于区域建议的目标检测算法,其计算过程如图1所示。

图1 Faster R-CNN算法流程示意Fig.1 Faster R-CNN algorithm flow

被拉伸后的原始图像经过特征提取层下采样得到图像的512 通道特征图;特征图经过区域建议网络(region proposal network,RPN)之后,可得到若干个目标建议区域;将这些建议区域结合特征图送入候选框池化层,得到建议区域特征图;将这个特征图送入分类网络,利用特征图计算建议区域的类别,同时通过边框回归得到预测框的精确位置。

1.2 RPN工作流程

通过3×3的卷积核在特征图中滑动产生锚框,再通过卷积将这些特征映射到一个512维的低维特征图中;然后将这个特征图送入2个平行的全连接层中,得到1 个4

k

的位置输出层和1 个2

k

的前景分数输出层。其中,

k

为每个窗口的最大建议锚数,滑动窗口在特征图中以大小为128×128、256×256、512×512,长宽比例为1∶2、1∶1、2∶1 的规格生成锚框。其工作流程如图2所示。

图2 RPN层工作流程Fig.2 RPN layer workflow

通过训练可以使RPN 建议的区域接近实际目标位置,Faster R-CNN 中RPN 损失函数定义如式(1)所示。

边框回归损失函数

L

采用smooth_

L

1 函数表示,定义为

分类损失函数

L

采用交叉熵损失函数表示,定义为

通过对RPN 算法的训练可以提高建议区域的准确率。RPN 输出的建议区域将会和特征提取层的特征图一起进入RoI Pooling 层进行边框回归,得到检测目标的位置和类型。

Faster R-CNN 算法的第2 次边框回归采用与RPN 算法相同形式的损失函数,定义网络的总损失函数

L

为RPN 网络的损失函数

L

与RoI 边框回归损失函数

L

的和,即

2 模型改进

2.1 特征提取层的设计

针对无人机目标检测训练集与实际检测目标尺度可能存在差异的问题,文献[18]提出:大尺度感受野对像素较大的目标较敏感,小尺度感受野对像素较小的目标较敏感。本文设计了一种多个尺度的感受野并行采集特征的特征提取层Tri-VGG(也称Trident-VGG16)。

若直接采用不同面积的卷积核进行下采样,神经网络的计算复杂度会成倍增加,从而造成参数冗余。参数冗余会导致神经网络过拟合,不仅计算耗时长,而且算法精度和计算效率也没有得到明显提高。

针对上述问题,本文采用空洞卷积进行感受野的扩充,空洞卷积的采样示意如图3所示。

图3 空洞卷积原理示意图Fig.3 Diagram of dilated convolution

空洞卷积采用间隔采样的方法,可以在卷积核大小不变的情况下,扩大卷积核的感受野,且变量数目远小于直接使用大尺寸卷积核结构的变量数目,可避免产生过拟合。

模型的特征提取层Tri-VGG 由下采样、并行融合2部分组成。图4为特征提取层的网络结构示意。

图4 特征提取网络结构Fig.4 Feature extraction network structure

下采样部分由4 个卷积层和2 个最大池化层组成,卷积核尺寸为3×3,卷积核数目依次为64、64、128、128。卷积核步长为1,填充为1,目的是保证最大池化层之前的特征图尺寸不变,仅改变通道数。此外,基于实验结论,将下采样部分的梯度取消,以避免数据冗余造成的过拟合。

并行融合模块的基本结构由3路并行的卷积层组成,其中1 路采用非空洞卷积,其余2 路采用空洞卷积。与VGG16 原始结构类似,并行特征采集器的每一路都由9 层卷积层和3 层最大池化层构成,3 路并行网络共享1 组权重,最后3 路特征提取网络通过形式融合,再经过1 层最大池化层后将特征图输出给RPN网络。图4所示的网络结构中,所有卷积层包括特征提取模块的卷积核感受野尺寸均为3×3。

为保证3 路特征图的尺寸匹配,非空洞卷积层的步长为1,填充为1;一路空洞卷积层的膨胀系数为2,相当于5×5 的感受野,步长为1,填充为2;另一路空洞卷积层的膨胀系数为3,相当于7×7的感受野,步长为1,填充为3。

由此,3 路网络共享1 组权重,其目的为:①由于存在训练集和测试集目标在图像中占比不符的情况,多感受野共享同一组权重可抑制神经网络对目标大小的敏感度,增强神经网络检测不同尺度目标的鲁棒性;②避免网络过拟合,因为过拟合会导致损失函数难以收敛、训练时间过长、检测精度较低等问题。采用3 路网络在训练和预测时只使用1 组共享权重的方法可以有效解决上述问题,VGG16 权重预训练策略如图5所示,网络之间的每一层卷积层共享权重。

图5 VGG16权重预训练策略Fig.5 VGG16 weight pre-training strategy

2.2 权重衰减和随机失活策略

采用对RPN 网络权重正则化和对分类器网络权重衰减的方式避免网络参数过多导致过拟合;采用

L

2正则化方法进行权重衰减,如式(5)所示。

式中:

L

为原始RPN损失函数;

n

为样本数目;

C

是一个超参数,用于调整对权重的正则化程度,称为权重衰减常数;

ω

为权重,在神经网络中即为卷积核的权值。

此外,采用随机失活(dropout)方法对分类层进行训练,在训练中随机使一些权重降为0,使得神经网络中各节点的重要性不断被重新平衡,可以避免因网络结构过于复杂导致的过拟合问题。

经过实验验证,在RPN 网络中使用

L

2 正则化与在分类网络中使用随机失活方法相结合,可以有效避免网络的过拟合问题。

3 实验验证与性能分析

实验环境:NVIDIA TITAN XP 显卡、基于Ubuntu 16.04 LTS 的系统、CUDA 10.0 硬件加速环境、Pytorch 1.3.1编程框架。

3.1 数据集的准备

一般的目标检测项目如车辆、人员、遥感船舶等均有成熟的公开数据集,但是由于军用无人机的特殊性,国内外尚不存在较为完善的无人机数据集。网络中爬取的无人机图像多为特写,目标在图像中占比较大,而实际检测图像中的无人机目标在图像中往往占比较小,较为隐蔽。正是为了解决这一问题,本文设计了多路网络权重共享的神经网络,以增强神经网络对于目标大小变化的鲁棒性。

基于上述考虑和优化,本文的数据集由从互联网爬取的背景为多云天空、都市等复杂背景下的2 034张无人机目标特写图片组成,数据格式为PASCAL VOC格式。

将图片尺寸统一为1 024×1 024×3,使用LabelImg 软件标注数据集图片内的目标,制成PASCAL VOC格式的数据集。制作方式如图6所示。

图6 数据集的制作Fig.6 Data set production

图6中目标的名称为无人机的缩写UAV,将数据集图片顺序打乱,取其中约70%作为训练集、约10%作为验证集、约20%作为测试集。将数据集图片通过平移、对称、加噪声等手段进行数据增强,最终得到训练集图片4 000张、验证集图片450张、测试集图片900张。

3.2 实验细节

采用AP为评价标准来评价模型检测性能。

为了对比Tri-VGG 对算法检测精度和速度的影响,首先采用原始的Faster R-CNN 对数据集进行训练,其中单次迭代输入图片批量(batch)大小为2 张图片、总训练次数为14 周期,初始前四层卷积层学习率取0,其余层初始学习率取0.001,每一个周期学习率下降率为0.1,RPN候选框取300个/张,权重衰减常数为0.000 1;然后再用基于改进特征提取层的神经网络模型对其进行训练,其他参数同上。

图7为训练过程中的损失函数曲线,图中ipr_frcnn 表示改进的Faster R-CNN 的损失函数,frcnn表示原始的Faster R-CNN的损失函数。

图7 改进的Faster R-CNN与Faster R-cnn损失函数对比Fig.7 Improved Faster R-CNN and Faster R-CNN loss function comparison

由图7可以看出,经过预训练,损失函数可以较快地收敛到一个较低的数量级。Tri-VGG 与VGG16 提取层检测性能对比如表1所示。

表1 Tri-VGG与VGG16提取层检测性能对比Tab.1 Tri-VGG and VGG16 extraction layer detection performance comparison

由表1可以看出,Tri-VGG 改进的Faster 神经网络检测精度有所提升,提升幅度约8.6%左右,虽然牺牲了部分运算速度,但是检测精度明显提升。

表2对之前的实验结果进行了汇总和对比,从实验结果来看,二阶段网络模型的检测精度略高于一阶段网络检测模型的检测精度,而改进后模型的AP 比原始的Faster R-CNN 检测算法模型的AP 提高了8.6%。至于神经网络的运算速度,二阶段算法的运算速度比一阶段算法的运算速度略低。本文所设计网络通过复杂化网络结构显著提升了检测精度,虽然因此牺牲了少许运算速度,但速度仍能达到24帧/秒,满足实时检测的条件。

表2 算法检测进度比较Tab.2 Algorithm detection progress comparison

目标检测的可视化效果如图8所示。

图8 算法检测结果的可视化效果Fig.8 Visualization of algorithm detection results

4 结束语

本文基于Faster R-CNN 网络,设计了权重共享的多感受野融合特征提取网络Tri-VGG,改进后的多尺度特征融合的Faster R-CNN网络对无人机目标的AP最高达到了90.91%,比原始Faster R-CNN 网络的AP提高了8.6%,并且其检测速度达24 帧/秒,满足实际需求。后续可从改进网络的损失函数、优化Faster R-CNN的边框回归机制等方向进行深入研究。