APP下载

基于生成式对抗网络的合成孔径雷达舰船数据增广在改进单次多盒检测器中的应用

2020-01-08杨龙苏娟李响

兵工学报 2019年12期
关键词:检测器舰船卷积

杨龙,苏娟,李响

(火箭军工程大学 核工程学院,陕西 西安 710025)

0 引言

合成孔径雷达(SAR)因其具有全天时、全天候、多视角、多俯角的数据获取优势,在目标检测领域,SAR图像目标检测技术已经成为当前军用和民用领域研究的热点。而SAR图像舰船目标检测则是军用领域对海目标检测的重要分支,通过对敌方舰船的精确检测,可为我方精确制导武器精确打击目标提供有力的支持。

随着深度学习的不断发展,基于深度学习的目标检测技术已经成为当前计算机视觉领域的主流方向[1],而基于深度学习的SAR图像舰船目标检测技术也在一步步走向成熟。其中,文献[2]提出了一种基于深度卷积神经网络SAR图像舰船目标检测技术,首先构造了国内该领域唯一的一个SAR舰船目标检测数据集(SSDD),在更快速区域卷积神经网络(Farster R-CNN)[3]的基础上,提出了特征聚合、迁移学习、损失函数设计和应用细节的创新,检测的平均准确率达到75.6%;文献[4]提出一种基于生成式对抗网络(GAN)[5]和线上难例样本挖掘的SAR图像舰船目标检测技术,在Fast R-CNN[6]的基础上,使用对抗网络生成难例样本增强检测器适应性,同时使用线上难例挖掘技术避免了少量的难例样本在采样时被忽略,提高了模型的检测精度,在SSDD上平均准确率达到70.2%;文献[7]提出了一种全新的基于上下文区域的多层融合卷积神经网络,融合了图像深层语义和浅层次的高分辨率特征,提高了小型舰船检测性能,并在Sentinel-1数据集上的进行了实验验证。文献[8]提出一种基于Fast R-CNN的密集连接多尺度神经网络,从上到下将一个特征映射与每一个其他特征映射紧密连接起来,用于解决多尺度、多场景SAR舰船检测问题,在多个公开数据集进行测试,也取得了很好的检测效果。

基于深度学习的SAR图像舰船目标检测技术在舰船检测领域已经展现出了强大的实时检测能力,但是数据集稀少仍然是限制该领域进一步发展的瓶颈。已有的数据集又存在着数据集小、目标大小不均匀、难以包含各种复杂条件下的舰船目标等众多缺点,因此通过一定的技术对现有SAR图像数据集进行扩充与完善,对SAR图像舰船目标检测具有重要的意义。

目前相对成熟的生成图像方法是通过GAN产生新的图像。随着GAN的发展,其生成的图像越来越逼真,比较典型的GAN有深度卷积生成式对抗网络(DCGAN)[9]、信息最大化生成式对抗网络(infoGAN)[10]、像素对像素(pix2pix)生成式对抗网络(pix2pix GAN)[11]等,但是鲜有学者将其用于SAR图像的生成。因此,本文考虑采用pix2pix技术对SAR图像舰船目标进行数据增广,首先制作一个用于pix2pix的数据集,生成800张新的SAR舰船图像,然后用开源图片标注软件Labelimg对生成的数据进行标注,将标注好的数据加入单次多盒检测器(SSD)[12]中进行对比分析。针对SSD检测算法对小目标检测效果不佳的缺点,本文吸收GoogleNet[13]中Inceptionv2[14]模块的经验,通过一种多尺度卷积核特征提取的方式,提高了SSD检测算法对不同尺度舰船目标的检测能力,实验结果表明改进的SSD显著地提高了SAR舰船检测精度。

本文将基于pix2pix的SAR舰船数据增广技术与改进的SSD结合起来,将生成的SAR数据加入算法中进行多组对比分析实验,通过对实验结果的分析论证得到以下两个结论:1)采用pix2pix技术扩充的数据集对检测精度有一定的提高,但依然存在着上限;2)扩充数据集对原SSD检测算法的检测效果要优于对改进SSD检测算法的检测效果。

1 基于pix2pix的SAR舰船数据集增广

1.1 数据集

首先建立一个用于pix2pix的SAR舰船生成数据集(SSG),数据来源有部分SSDD中的舰船图片、Sentinel-1数据中的部分舰船图片,以及高分三号卫星拍摄的部分舰船图片共2 000张,训练集中图片模式为原图和边缘的成对图片,原图和边缘图片尺寸大小均裁剪为256×256,其中获得图片边缘图片的算法采用标准的Canny[15]边缘算子,测试集为空白图片和边缘图片,测试集中的边缘图片是采用绘图技术生成的舰船轮廓图片,用于生成不同场景下的SAR舰船图像。表1所示为部分pix2pix训练集和测试集的图像。

表1 SSG数据集部分图片
Tab.1 Partial pictures of SSG dataset

在制作测试集的过程中,尽量多加入一些较小的舰船目标,通过加入不均匀的轮廓生成港口等复杂环境,用以加强之后的检测器对小目标与不同场景的适应能力。

1.2 基于pix2pix的SAR舰船生成

图像的转换问题本质上是像素到像素的映射,本文使用pix2pix生成SAR舰船图片实现线稿图到实时图的转换,结构如图1所示。

图1 GAN训练过程Fig.1 Training process of GAN

训练的过程中边缘图像x作为GAN训练的条件输入生成器G和鉴别器D中。生成器G实际上是图像x和随机噪声z到y的映射:G:{x,z}→y.训练生成器G生成鉴别器D无法辨识真伪的图像,训练判别器D尽力地识别出伪造的图像。

一般地,GAN目标函数可以表示为

LcGAN=Ex,y[log2D(x,y)]+
Ex,z[log2(1-D(x,G(x,z))],

(1)

式中:E表示期望值。

G要得到函数的最小值,而D要得到函数最大值,二者互相进行博弈。为了测试输入条件x对判别器的重要性,也训练了一个没有x的普通GAN:

LcGAN=Ey[log2D(y)]+
Ex,z[log2(1-D(G(x,z))],

(2)

同时融合了传统损失函数得到最终的目标方程为

(3)

式中:

LL1(G)=Ex,z[‖y-G(x,z)‖1].

(4)

本文使用文献[16]中的生成器和判别器结构,卷积单元形式为conv-BatchNorm-Relu,生成器结构没有使用原始的解码- 编码网络[17],而是模仿U-net[17]在原始的结构中增加了条线连接,如图2所示,在第j和第k-j层增加了跳线,k为网络的总层数。判别器使用马尔可夫过程的判别器,使用传统的L1-loss函数虽然会使生成的图片产生模糊问题,但是在很多情况下能够捕捉到低频信息,因此判别器的设计需要对高频进行建模,关注局部的感兴趣目标块。判别器对每个目标块判别为真假,在整张图片上运行这个判别器,最后取平均值作为输出。对于SAR图像而言,这样做能够在测试时较好地对舰船目标进行重建,这是因为SAR图像的拍摄角度不同,质量也会产生差异,而通过对所有图片的学习能够综合考虑到每个目标块的质量差异,使模型训练得更加充分。

图2 鉴别器结构图Fig.2 Discriminator structure

1.3 选取生成的SAR舰船图像评价指标

选取信息熵、等效视数、平均梯度以及目标长宽比作为生成图像的评价指标。

1)熵是随机信号中不确定度的一种表达方式,对于一幅M×N的SAR图像,其熵表示为

(5)

(6)

式中:Pmn表示取某一灰度值l(m,n)的概率;num[l(m,n)]表示某一灰度值l(m,n)的像素数目;M×N表示图像总的像素个数。SAR图像的信息熵越小,其包含的信息量越多;相反,SAR图像的信息熵越大,其包含的信息量越少,图像则会不清晰。

2)等效视数[18]常用于SAR图像的质量效果评估,是SAR图像中衡量斑点噪声强弱的标准,定义为图形均值与标准差的比值,表示为

(7)

式中:ENL表示SAR图像的等效视数;μ表示图像的均值;σ表示图像的标准差。

SAR图像的等效视数越大,表明其斑点噪声越弱,图像的对比度越强;反之,图像的等效视数越小,其斑点噪声则越强,对比度越小,图像的整个效果则会显得很模糊。

3)平均梯度[18]反映了图像边缘附近灰度的差异,能够反映图像微小细节变化的速率,其计算公式为

(8)

式中:ΔIx表示横坐标轴方向上的差分;ΔIy表示纵坐标轴方向上的差分。

一幅图像的平均梯度越大,表明其层次越分明,图像会更加清晰;相反,一幅图像平均梯度越小,图像会看起来较为模糊,清晰度不够。

4)目标长宽比是指目标最小外接矩形长与宽的比值,其定义为

(9)

式中:W为最小外接矩形的长;L为最小外接矩形的宽。一般情况下,利用长宽比r可以将感兴趣的目标与其他干扰物分开。

1.4 对生成图片的标注

对舰船目标区域的标注使用开源软件Labelimg,该软件使用Python语言编写,可以对目标区域做标签;标签中包含目标的4个坐标(c,v,h,w),其中(c,v)为目标区域矩形框的左上角坐标,h为矩形框的高度,w为矩形框的宽度,根据ImageNet所使用的PASCAL VOC[19]格式存成XML文件,方便之后将标注好的数据加入检测器进行训练。

2 基于改进SSD的SAR舰船目标检测算法

2.1 SSD检测算法的基本原理

SSD检测算法有SSD300和SSD512两种结构,可以用于输入不同尺寸的样本检测,SSD300的基本原理是基于前馈卷积网络,首先产生固定大小的默认框集合,利用不同层次的特征图基于所产生的默认框来进行位置的回归和类别的预测;然后利用非极大值抑制算法对每个类别预测到的所有先验框集合进行筛选,去除多余的和概率较低的边框,生成最终的检测结果。相比于双阶段检测算法,SSD检测算法消除了双阶段检测算法对每一个候选边框的特征重采样阶段,使算法速度极大地提高,检测的准确度也得到了保证。

如图3所示,SSD300的网络框架由两部分构成,第1部分为基础网络架构,第2部分为附加网络架构。基础网络使用的是VGG16,附加网络为尺度不断减小的卷积层,在Conv4_3、Conv7、Conv8_2、Conv9_2、Conv10_2、Conv11_2共6个层提取特征图用来预测,特征图尺寸分别为38×38、19×19、10×10、5×5、3×3、1×1,不同特征图设置不同的先验框数目,先验框尺寸随特征图大小的降低呈线性递增:

(10)

式中:t为特征图的个数;sk表示先验框与图片的尺寸比例;smax表示比例的最大值;smin表示比例的最小值。

模型训练所使用的损失函数为位置误差与置信度误差的加权和:

(11)

图3 SSD网络结构图Fig.3 SSD network structure

2.2 改进SSD检测算法

SSD检测算法最大的缺点是对小目标检测效果不佳,而在SAR舰船目标中又存在大量的像素点小于10的舰船目标,本文吸取GoogleNet中的Inceptionv2模块的经验,SSD的前4个预测层加入Inceptionv2模块,Inceptionv2通过增加网络的宽度和增加感受野来增强网络对不同尺度目标的检测能力,其主要特点是在多个尺寸上进行卷积再进行聚合。结构如图4所示,BN表示批归一化处理[20],使用Relu激活函数。

在SAR舰船目标中,存在各种不同尺寸的舰船,对前4个特征预测图分别加入Inceptionv2模块,通过增加网络宽度来增强网络对不同尺度舰船的适应性,在Inceptionv2模块中不同支路的感受野不同,第2、第3个支路中的第1个1×1卷积层是为了通过降维方式减小参数量,同时通过两个卷积的级联可以组合出更多的非线性特征,提取到特征图更加丰富的特征。第1个支路采用1×1的卷积对特征图进行处理,第2个支路用3×3的卷积对特征图进行处理,第3个支路用两个3×3的卷积对特征图进行处理,相当于一个5×5的卷积的感受野,但是参数量大为减少,从第1个支路到第3个支路感受野逐渐扩大,第4个支路采用池化层加1×1的卷积层来提取特征,最后将4个支路输出的特征图聚合,得到最终的特征预测图。对于不同尺寸的特征图,每一支路所用卷积核的维度不同,具体结构如图4所示。

在得到以上新的4个特征预测图之后,与原SSD算法的后两个特征预测图组成新的6个特征图,在新的特征图上进行预测。

图4 改进的预测图生成结构Fig.4 Improved predictive structure

3 实验结果与分析

3.1 实验平台

硬件平台:计算机CPU inter®Xeon(R)E5-2603v4@1.70 GHz×6,显卡NVIDIA GTX 1080Ti GPU(16 GB内存)。

网络框架:Pytorch(使用Visdom可视化)。

编程语言:C语言和Python.

操作系统:Ubuntu 16.04.

数据集:GAN使用本文构造的SSG数据集,SSD检测算法使用SSDD数据集[2]。

3.2 实验结果与分析

首先使用pix2pix进行SAR舰船的数据集增广,使用标准的方法交替训练生成器D和鉴别器G,使用小批量梯度下降法[21]且应用Adam优化器[22],在测试时使用随机失活(dropout)[23]和批归一化处理,训练一个pix2pix网络。表2所示为5种典型场景的仿真图像与真实图像对比。

从表2中可以看出,生成的SAR舰船图像已经接近于真实的图像,不仔细观察难以用肉眼判别出来,为了对生成的图像做进一步质量效果评估,从生成的SAR舰船图像中与SSDD中分别选取相似的典型场景的5张SAR舰船图像,包括港口舰船和海面舰船,分别求出其信息熵、等效视数、平均梯度以及目标长宽比,进而对其质量进行客观评价,最后对生成的图像与真实图像进行客观的比较分析。

表2 生成图像与真实图像对比
Tab.2 Comparison of generated and real images

表3所示为生成图像与真实图像的指标对比。从表3中可以得出,生成SAR舰船图像信息熵与真实图像的信息熵相差不大且略小,生成图像的等效视数大于真实图像的等效视数,表明真实的SAR舰船图像噪声分布较广,生成的SAR舰船图像斑点噪声相对较少,信息量足够。但是生成图像的平均梯度小于真实图像的平均梯度,图像的层次感依然弱于真实图像。同时生成图像的目标长宽比与真实图像的目标长宽比也比较接近,表明生成的图片与真实图片的目标几何特性也具有相似性。总之,使用pix2pix生成的SAR舰船图像与真实图像的效果相差不大,能够满足一般的需求。

本文SSD检测算法使用的评价指标为平均准确率。在SSDD上对本文所提出的方法进行验证,验证在训练器中依次加入100、200、300、400、500、600、700、800张图片对检测精度的影响以及在训练器中加入不同张数条件下改进SSD检测算法对检测器检测精度的影响,实验结果如表4所示。

表3 指标对比Tab.3 Comparison of indicators

表4 算法比较Tab.4 Algorithms comparison

注:√表示选择将生成图片加入原SSD或者改进SSD中。

表4反映了生成图像对检测器性能的影响。从表4中可以看出,当没有将生成的样本加入检测器中时,改进SSD检测算法相比原SSD检测算法平均准确率由75.6%提高到80.3%.随着将GAN生成样本逐渐加入训练器中,测试的平均准确率会逐步提高,当生成的800张样本全部加入训练器中之后,原SSD检测算法的精度由75.6%提高到79.9%,提高了4.3个百分点,改进SSD检测精度由80.3%提高到82.2%,提高了1.9个百分点。但是从表4中仍然可以看出,对于原SSD检测算法,当在训练器中加入500张图片时检测精度达到79.8%,继续向训练器中添加图片,检测的平均准确率基本不再上升,对于改进SSD检测算法,往训练器中添加800张图片检测器性能只有1.9%的提升。对比表4实验结果可以发现,使用pix2pix生成的舰船样本对检测器性能有一定的提高,但是检测的平均准确率不会随着样本数量的增加而不断提高,使用pix2pix生成的舰船样本对原SSD检测算法性能提升要优于改进SSD检测算法。主要有以下两个原因:

1)使用pix2pix生成的舰船目标行为尺度比较单一,模拟生成如复杂港口等恶劣环境下的舰船仍然比较困难,而真实海面环境下的舰船目标变化范围更大,斑点噪声更加明显。而正是因为生成的舰船目标中缺少这些复杂环境变化等状况,所以在检测的过程中检测器对复杂环境下舰船目标的适应能力有限,当不断地往训练集中添加生成的图片后,检测器性能会达到一定的瓶颈不再提升。

2)原SSD检测算法本身存在着对小目标检测效果不佳的缺点,将生成的多种尺度的舰船图片加入检测器中,使得网络更加适应了SAR舰船的多尺度性,使得SSD的检测精度大大提高。当使用改进SSD检测算法后,检测器已经适应不同尺寸的舰船目标,对各种尺寸舰船目标的检测性能已经得到提升,因此继续向训练样本中添加生成的图片对检测器的性能提升很有限。为了直观地体现,将表4中数据用曲线图连接起来,如图5所示。从图5中可以发现:当添加的样本数量达到一定的数量时,检测器性能也会达到一个瓶颈,精度不再上升。

图5 平均准确率随检测器中添加样本数的变化曲线Fig.5 Change of average precision with the number of samples added to the detector

表5所示为本文所提出的方法与原SSD检测效果对比,表5中图片上数字表示检测为舰船目标的概率,图片来源于SSDD中4种典型的难例样本。从样本1和样本3的检测结果可以看出:在斑点噪声极为严重、图片模糊不清的情况下,原SSD检测算法对SAR舰船目标的检测性能有限,本文算法检测效果较好,能够适应一定的复杂环境,对于港口和河道区域的舰船能够直接检测到,且不需要像传统检测算法那样对图片进行海陆分离等预处理;样本2是典型的港口区域密集停靠的舰船目标,从检测结果可以看出,原SSD算法和改进SSD算法对密集港口舰船目标的检测效果也较好,但是错检严重,原SSD算法把上方左边的两艘舰船错检成了一艘,上方右边的3艘船错检成了2艘,而改进SSD算法能够准确地检测到舰船目标数量,检测效果得到了提升;样本4是典型的小目标,原SSD检测算法对小目标检测算法不佳,图中的6艘舰船只检测到了2艘,漏检明显,而改进SSD算法虽然也有漏检,但是6艘舰船检测到了5艘,漏检率明显降低。总之,相比于传统的检测算法,改进SSD算法实现了端对端的SAR舰船目标检测,虽然仍然存在漏检的情况,但能够满足基本的需求。

表5 检测结果对比
Tab.5 Comparison of test results

4 结论

本文提出一种基于生成式对抗网络的SAR舰船目标生成方法与一种改进SSD的SAR舰船检测算法。建立了一个用于产生SAR舰船目标的生成式对抗网络的数据集SSG,进行了一次用生成对抗网络产生SAR舰船目标的有益尝试,并将生成的SAR图像标注后加入原SSD检测算法以及改进SSD检测算法中进行验证。主要得到以下结论:

1)将产生的数据标注后加入SSD中,原SSD检测算法的平均准确率由75.6%提高到了79.9%.

2)通过在检测器测试网络加入Inceptionv2模块,提高了网络对不同尺度目标的适应性,检测的平均准确率由原始的75.6%提高到了80.3%.

3)当把生成的舰船数据加入改进SSD中后,平均准确率由80.3%提高到了82.2%.

通过GAN产生SAR舰船目标的前提是收集大量的SAR舰船图像并对图像做一定的预处理,制作生成式对抗网络的训练样本,生成的SAR图像需要进行标记才能够加入检测器中,过程中需要消耗大量的人力物力。但是从实验结果中仍然能够发现生成的SAR舰船数据行为单一,对检测器的性能提升仍然存在上限。

在将来的工作中,将进一步完善SSG数据集,改进生成对抗网络结构,以满足生成复杂环境下舰船目标的需要,使之能够更好地提高目标检测性能。

猜你喜欢

检测器舰船卷积
支持向量机的舰船图像识别与分类技术
风浪干扰条件下舰船航向保持非线性控制系统
基于高速公路事故黑点的检测器优化布设
参数可调的联合子空间目标检测方法 *
一种基于卷积神经网络的地磁基准图构建方法
基于3D-Winograd的快速卷积算法设计及FPGA实现
基于物元-阴性选择算法的轴箱轴承故障检测
一种并行不对称空洞卷积模块①
舰船测风传感器安装位置数值仿真
从滤波器理解卷积