基于RSSD 的遥感图像目标检测算法

2024-04-02 03:42吕向东彭超亮陈治国孙鹏飞赵晓楠
现代电子技术 2024年7期
关键词:注意力精度特征

吕向东,彭超亮,陈治国,孙鹏飞,赵晓楠,徐 旸

(1.山东港口青岛港集团有限公司,山东青岛 266001;2.中车长江运输设备集团有限公司,湖北武汉 430065)

0 引 言

遥感图像拥有广阔的视野和丰富的信息,广泛应用于侦查监视、资源勘探、灾害监测、军事作战等领域[1]。遥感图像目标检测是遥感图像解译的重要分支之一,对于挖掘图像的感兴趣区域信息至关重要。传统的目标检测方法有基于统计的目标检测、基于知识的目标检测以及基于模型的目标检测[2]等,这些方法由于需要人工设定先验条件,稳健性差、智能程度低,难以用于检测背景信息复杂的遥感影像目标。随着深度学习技术的迅速发展,遥感图像的目标检测技术实现了重大突破,并已成为当前的研究热点。然而,遥感图像存在背景复杂、目标空间占用比小等特点,对遥感图像目标检测带来了极大挑战[3]。

2012 年,卷积神经网络(Convolutional Neural Network, CNN)在ImageNet[4]图像分类比赛中取得巨大成功,推动了深度学习在图像目标检测领域的应用,并逐步取代传统的目标检测方法。目前基于深度学习的目标检测方法大致分为两类:一类是基于区域的目标识别方法,如Faster R-CNN[5]、R-FCN[6],这些算法将目标检测分为两个阶段,先使用区域候选网络(Region Proposal Network, RPN)提取候选目标信息,再利用检测网络预测和识别候选目标的位置和类别,称为双步目标检测算法;另一类是基于回归的目标识别方法,如SSD(Signal Shot MultiBox Detector)[7]、YOLO(You Only Look Once)[8]等,此类算法直接通过网络产生目标的位置和类别信息,称为单步目标检测算法。文献[9]利用Microsoft COCO[10]数据集对比分析了Faster R-CNN、R-FCN 及SSD三种检测算法的性能,结果表明Faster R-CNN 算法精度最高,SSD 算法速度最快。文献[11]采用多层特征融合的方法改善SSD 算法在小目标检测上的缺陷,提出了RSSD 算法,但该算法对浅层特征信息均进行特征增强,产生过多的特征图,在提高检测精度的同时降低了检测效率。文献[12]提出FPN(Feature Pyramid Network)方法,通过多尺度特征预测和特征融合提高检测性能,但FPN 方法由于直接利用深一层的卷积特征增强反向特征,无法充分利用高层语义信息[13]。文献[14]提出了一种利用ResNet101 改进SSD 的检测算法,但其网络层数太深,网络结构过于复杂,会导致检测速度大幅度降低。

为提高SSD 算法对遥感影像数据集中小目标特征的提取精度,提出基于RSSD 的遥感图像目标检测算法。该算法在SSD 网络结构的基础上,将基准网络模型VGG 替换为残差网络模型ResNet-50,在网络框架中引入注意力模块,使得感受野更关注目标特征,增强低层网络的信息表征能力,采用特征金字塔融合方法,融合网络结构中的高层语义特征和低层视觉特征,将网络的高层特征通过上采样与低层网络提取的特征进行融合,增强检测目标的定位能力,提高小目标检测的精度。

1 基于RSSD 的目标检测算法

SSD 是Liu W 等在2016 年ECCV 上提出的一种目标检测算法,是目前主要的目标检测框架之一。SSD 算法同时具有Faster R-CNN 和YOLO 的优点,既可以提高检测准确率又可以兼顾检测速度。SSD 算法主要由两部分组成:一是采用VGG-16 的前端基础网络提取图像目标的初级特征;二是采用级联的卷积神经网络提取图像目标的高级特征。SSD 算法采用特征金字塔网络的检测方式在特征图上进行不同尺度的Softmax 分类和位置回归。

SSD 算法用于检测遥感图像小目标时,网络结构的基准网络VGG 与预测小目标的卷积层Conv4_3 进行特征融合,将会出现在低级卷积特征层中语义信息不够的问题,使得随着遥感影像小目标数据集中图片和网络层数的增加,SSD 算法提取的特征信息不足,造成识别小目标的精度较低。为提高SSD 算法对遥感影像数据集中小目标特征的提取精度,提出基于RSSD 的遥感图像目标检测算法。RSSD 网络结构如图1 所示。

图1 RSSD 网络结构

RSSD 算法在SSD 网络结构的基础上,首先,将基准网络模型VGG 替换为残差网络模型ResNet-50,通过增加网络深度充分提取遥感图像小目标数据集的底层特征。相比于VGG-16,ResNet-50 网络层数更深,能够更充分提取图像的特征信息,且能有效避免梯度弥散和退化现象;相比于ResNet-101,ResNet-50 网络层数较浅,适合训练样本数量较少的遥感影像数据集。其次,在网络框架中引入注意力模块,使得感受野更关注目标特征,增强低层网络的信息表征能力。最后,采用特征金字塔融合方式,将网络的高层特征通过上采样与低层网络提取的特征进行融合,增强检测目标的定位能力,提高小目标的检测精度。

2 特征金字塔融合

特征金字塔网络是表达输出CNN 网络得到图片信息的一种有效方法,在目标检测中得到广泛应用,并取得了显著效果[15]。特征金字塔网络通过对不同层的特征图进行特征融合,预测多尺度的特征图[16]。

SSD 算法引入ResNet-50 网络后,为避免SSD 目标检测算法中低层网络语义信息不足导致特征提取不充分,造成检测小目标效果较差的问题,利用图像特征金字塔融合的方式搭建检测模型,将上采样的高层特征与低层网络提取的特征进行融合。图像特征金字塔预测流程如图2 所示。

图2 特征金字塔网络预测流程图

3 注意力机制

注意力机制的提出来源于人类视觉系统(Human Visual System, HVS)。为了合理利用有限的视觉信息处理资源,人类需要选择并集中关注视觉区域中的特定部分,称为注意力机制。图像的局部特征提取可以看作一种注意力机制。注意力机制通常作为神经网络的一个附加神经网络,能够对某些输入的部分硬性选择,或者将不同的权重分配给不同的输入部分。

在ResNet-50 残差网络模型中引入注意力模块,增强RSSD 网络对遥感图像中小目标特征信息的提取能力,提高检测精度。注意力模块主要由两部分组成:一部分是通道注意力模块(Channel Attention Module);另一部分是空间注意力模块(Spatial Attention Module)。注意力模块结构如图3 所示。

图3 注意力模块结构

输入的特征图F经过通道注意力模块时,空间维度被压缩,经过共享全连接层MLP 生成通道注意力特征图Mc。通道注意力模块不仅考虑Average pooling,还引入Max pooling,计算公式如下:

式中:Fcavg和Fcmax分别表示在通道注意力模块中经过Average pooling 和Max pooling 的特征图;W0和W1表示多层感知机模型中的两层参数;σ为sigmoid 函数。

通道注意力特征图Mc通过第二部分空间注意力模块的空间关系生成空间注意力特征图Ms,空间注意力特征图更加关注目标所在位置的特征信息,是对通道注意力部分的补充。空间注意力模块对注意力特征图进行通道层面上的压缩后,再对其通道维度上分别做Average pooling和Max pooling,得到的特征图通道数为2,计算公式如下:

式中:F′表示经过通道注意力模块计算之后的特征图;和分别表示在空间注意力模块中经过Average pooling和Maxpooling的特征图;f7×7表示卷积核大小为7×7 的卷积运算;“⊗”表示元素乘法,在乘法过程中注意特征值被相应地传播;F″为最终确定的输出。最后,使用一个卷积核为1 的隐藏层进行卷积操作,生成最终的二维空间注意力图。

4 实验分析

为验证RSSD 算法对遥感图像目标的检测效果,采用VEDAI 航拍遥感影像数据集进行测试分析。VEDAI是航空影像中车辆检测的数据集,是一种在不受限制的环境中对目标检测算法进行基准测试的工具。原始的大视场图像被分割成1 024×1 024 像素并包含不同种类车辆以及其他混淆对象。VEDAI 数据集的图像分为单通道红外图像和RGB 三通道彩色图像,所有图像都在与地面相同距离处拍摄,每张图像平均包含约5.4 个车辆目标,占整个图像总像素的0.07%,是典型的遥感影像小目标数据集。实验硬件采用NVIDAI RTX2080Ti GPU,PC 机操作系统为Ubuntu 18.04,在Python 中基于Pytorch 深度学习框架构建算法模型。为了更好地适应GPU 显存性能,选择数据集中图像大小为512×512 且RGB 三通道彩色图像子集进行实验[17]。VEDAI 数据集中包括9 类目标,分别为Boat、Camping、Car、Others、Pick_up、Tractors、Trucks、Vans 以及Plane。9 类目标数量如表1 所示。

表1 VEDAI 数据集中9 类目标数量

实验中初始学习率为1.1×10-3,迭代30 000 次后学习率调整为1.1×10-4,迭代60 000 次后终止训练,动量参数为0.9,权重衰退率为0.000 5,batch size 设置为8。

平均准确率均值(mean Average Precision, mAP)和每秒帧率(Frame Per Second, FPS)是目标检测领域最常用的评价指标。mAP 定义为所有对象类别平均精度(Average Precision, AP)的平均值,AP可用积分计算表示:

采用SSD 算法和RSSD 算法分别训练VEDAI遥感影像数据集的训练集,并检测测试集中的小目标。SSD 算法和RSSD算法的小目标检测精度变化趋势如图4所示。

图4 检测精度变化趋势图

由图4 可以看出,随着迭代次数的增加,约在10 000 次迭代后,小目标检测精度值保持平稳上升。经过大约40 000 次迭代后,SSD 算法的小目标检测精度稳定在0.55 左右,而RSSD 算法的检测精度稳定在0.60 左右,说明RSSD 算法较为明显地提升了小目标的检测精度。

为验证RSSD 算法的性能,同时利用训练集训练SSD 算法和RSSD 算法在测试集上对9 类小目标进行检测,各类目标检测结果如表2 所示。

表2 各类目标检测结果对比

实验结果表明,相比于SSD 算法,本文提出的RSSD算法的目标检测平均精准度由56.47%提高到63.26%,平均检测精度得到显著提升。特征金字塔融合有效地利用浅层特征层中丰富的局部细节信息和深层特征层的高层语义信息,提升了算法的泛化能力。RSSD 算法通过替换基准网络,加深了原有网络的层数,增加了提取特征信息的计算量,由于引入注意力机制也影响了算法的检测速度,但是检测效果有明显提升。SSD 算法和RSSD 算法检测VEDAI 数据集的部分目标检测结果如图5 所示。

图5 VEDAI 数据集的部分目标检测效果

由图5 可知:SSD 算法对遥感图像目标检测存在明显的漏检、错检和准确率低的问题;RSSD 算法可以避免漏检、错检目标,提升较小目标的检测准确率。

5 结 语

为提高遥感图像小目标的检测效果,本文提出基于RSSD 的遥感图像目标检测算法。该算法采用残差网络模型ResNet-50 作为SSD 网络的基准网络模型,能够提取更深层次的特征信息,且有效地避免梯度弥散和退化现象;引入注意力模块,增强低层网络的信息表征能力;通过图像特征金字塔融合的方式对小目标进行位置回归,提升了目标检测效果。该算法增强了复杂背景的干扰抑制性,提高了较小目标的检测精度,比SSD 算法的mAP 提升6.79%。

注:本文通讯作者为彭超亮。

猜你喜欢
注意力精度特征
让注意力“飞”回来
如何表达“特征”
不忠诚的四个特征
基于DSPIC33F微处理器的采集精度的提高
抓住特征巧观察
“扬眼”APP:让注意力“变现”
A Beautiful Way Of Looking At Things
GPS/GLONASS/BDS组合PPP精度分析
改进的Goldschmidt双精度浮点除法器
线性代数的应用特征