由于合成孔径雷达(Synthetic Aperture Radar,SAR)具有远距离、穿透云雾植被、全天候对地观测的特点[1],近些年来其在军事和民用领域的应用也越来越广泛。但是SAR图像的图像特性会随着不同的成像参数、成像姿态、地物环境等发生较大的变化,使得SAR图像的目标检测和识别变得非常困难[2]。
传统的SAR图像目标检测方法以恒虚警率(Constant False Alarm Rate,CFAR)检测算法及其衍生算法的应用最为广泛[3]。但是该方法需要目标与背景杂波具有较高的对比度,且假设背景杂波是满足某种统计模型的分布,具有较大的局限性。卷积神经网络(Convolutional Neural Network,CNN)是人工神经网络(Artificial Neural Network,ANN)的一种,由于其采用权值共享的策略来减少参数,对图像的平移、缩放、倾斜或其他形式的变形具有高度的不变性,因此被广泛用于二维图像目标的检测和识别中。CNN在不同阶段的学习中可以抽象出不同层次的特征,避免了传统机器学习算法中人工设计特征和分类器的过程。
CNN以其衍生算法在图像识别领域发展迅速[4-9]。 Faster-RCNN框架是从R-CNN[10]和 Fast-RCNN[11]迭代发展而来,把目标检测识别的步骤(特征区域生成、特征提取、分类和候选区域回归)统一到一个深度网络的框架之内,可以取得更快的检测速度和更好的检测精度[12]。其提出区域生成网络(Region Proposal Network,RPN)来代替Selective Search的方法预测建议框,不仅可以生成质量高、数量少的建议框,而且由于RPN的预测可以在GPU中完成,且卷积网和Fast-RCNN可以部分共享,所以大幅提升了目标检测的速度。
本文以Faster-RCNN为基本框架,利用深度学习客户端对预处理后的样本进行扩充和训练,分别使用ZF和VGG-16网络进行端到端的车辆目标检测实验。
目前在SAR图像检测和识别领域,由于数据源的限制,使用较多的公开数据集是MSTAR数据集和MiniSAR数据集。MSTAR数据集中每一幅图像的尺寸为128×128,包含3大类7种型号的目标,数据集中对一种型号的目标都采集了不同方位角和俯仰角的图像。该数据集由于图像尺寸较小且背景杂波的干扰很小,一般用于目标识别研究,不适用于大场景图像的目标检测。MiniSAR数据集的图像尺寸为2 510×1 638,图像中包含多种姿态的目标,且包含多种干扰信号(建筑物,树木等),但是数据量很少,无法对模型进行充分训练,只能作为验证集检验模型预测的精度。
在本文中使用的数据是在某地区布设不同类型(包括大巴、吊车和卡车)、不同摆放角度的车辆目标后,利用机载的全极化X波段雷达对该布设场景进行多个航次的成像后获取的。对成像后的slc数据进行数据预处理,得到方位向和距离向分辨率为0.3 m的地距幅度图像。以约3 000× 3 000的大小对这些地距幅度图像进行裁剪后,得到17幅包含车辆目标和复杂背景全极化图像的数据库。该数据库的示例如图1所示。
图1 全极化数据示意图
人工对68(17×4,17个架次4个不同极化方式)幅图像中的车辆目标进行标注,参考VOC2007数据格式生成对应的xml文件。利用python +pyQT5编写的深度学习训练客户端,对模型进行训练和测试。该客户端如图2所示,其相比于原始搭建的py-faster-rcnn工程有以下几点优势:
图2 深度学习客户端截图
1) 原始的py-faster-rcnn工程数据集的准备必须按照固定的格式放在固定的路径下,例如训练和测试的数据、标注xml文件以及训练和测试数据的列表必须放在py-faster-rcnn\data\VOCdevkit2007\ VOC2007路径下的JPEGImages,Annotations和ImageSets文件夹下;而使用客户端进行训练时,只需要提供一个包含数据和xml文件绝对路径的文件列表即可。
2) 客户端集成了数据裁剪和旋转的功能,可以把输入的图像数据裁剪为长宽固定为1 000× 1 000的图像(Faster-RCNN模型不适用于长宽太大的SAR图像),设置图像旋转的角度间隔对裁剪后的图像进行旋转,用来扩充数据集。
3) 原始的py-faster-rcnn工程在训练和测试时,想要添加或者删除目标检测识别的种类时,需要修改相应的python代码;而客户端则只需要提供目标分类文件,用户可以自定义识别的种类。
该网络模型的设计参考Faster-RCNN的基本框架,其网络结构如图3所示,主要由特征提取层、RPN层、ROI池化层和分类提取层组成。
图3 网络结构示意图
1) 特征提取层主要包含多个卷积层、激活层和池化层等,其通过提取图像的特征图来作为候选提取层和分类识别层的输入。特征提取层根据网络的深度,可以分为VGG-16网络和ZF网络两种,VGG-16网络包含13个卷积层、13个激活函数层和4个池化层,而ZF网络则包含5个卷积层、5个激活函数层和2个池化层,两个模型输出的特征图大小都为原图的1/16。由于卷积层的数目更少,因此ZF模型相对于VGG-16模型训练和测试的速度更快。在本文的实验中,对ZF和VGG模型都进行了实验,实验效果的对比展示在第4节。
2) 区域生成网络通过在特征提取层输入的最后一层特征图中滑窗提取候选框,对特征图中的每一个像素点设置9个大小和长宽比不同的锚点(anchor),并结合边框回归初步得到目标的候选框。因为实验中车辆目标相对于输入的1 000× 1 000的图像而言较小,因此增加了3个小尺寸的锚点,设置了12个大小和长宽比不同的锚点。
3) ROI池化层收集输入的特征图和候选框,综合这些信息后提取候选框特征图,送入后续的分类识别层判定目标类别。
4) 分类识别层对候选框进行分类识别,并进行更精确的边框回归,最终实现对复杂背景SAR图像的目标检测。
训练的客户端把64幅大约3 000×3 000的输入图像裁剪为固定大小的1 000×1 000的图像,并对每个裁剪后的样本以30°的旋转间隔进行数据的扩充,最后得到训练集有5 676个样本,验证集有2 772个样本,剩下的4幅原始图像以同样的方式制作成660个样本作为测试集。为了测试训练得到的模型是否适应不同场景下的目标检测,因此在MiniSAR数据集中选取部分数据制作成968个测试样本作为补充,增加到测试集中。
本文使用ZF和VGG-16网络在样本数据集上进行训练验证和测试,训练时两种模型的参数文件配置如下:基础学习率1×10-4,权值衰减率 5×10-4,迭代次数分别选取1 000, 5 000和10 000次,可以得到总共6个模型输出文件。
训练时采用全监督训练模式,整个训练过程分为两部分,第一部分利用迁移学习对网络模型的部分参数进行预训练;第二部分是利用样本数据集对模型进行再训练,完成端到端的车辆目标检测。由于SAR图像的数据相对较少,无法充分从零开始训练网络,故引入迁移学习。在本试验中迁移学习使用的具体步骤是:
1) 针对ZF和VGG-16网络分别利用大型数据集ILSVRC-2012对网络中的随机初始化参数进行预训练。
2) 保留训练好的模型的特征提取层参数,利用扩充的SAR数据集对候选提取层和分类识别层进行再训练。
3) 利用再训练好模型完成目标检测和识别。
虽然预训练数据集是光学图像,与SAR图像有一定出入,但通过大量训练使得模型参数拟合到可以检测识别目标,其效果远远优于初始化参数,并能大幅减少网络的训练开销。如图4所示,采用迁移学习的方法(绿色)与直接训练的方法(蓝色)相比明显加快了网络的收敛速度,而且收敛后的损失值要小于直接训练值。其次,该方法可以有效降低训练网络对大量样本的需求。
图4 损失曲线对比图
基于Faster-RCNN框架端到端的模型训练和测试流程如图5所示。
图5 复杂背景SAR目标检测流程
本文实验使用平台的配置为Win7系统,处理器为Intel Xeon CPU E5-2637 v2 @3.5 GHz,RAM为16 GB,GPU选择的是NVIDIA Tesla K40m,其显存为12 GB,计算能力为3.5。
两种模型均采用平均准确率(mean Average Precision, mAP)作为检测效果评价标准。mAP是根据查全率和查准率所绘制曲线的积分,解决了传统评估标准查全率(R)、查准率(P)和F-Score的单点值局限性。因此,mAP可以更有效地综合评估算法的有效性和准确性。其计算公式为
如表1所示,展示了两种模型在660个测试集和1 628个测试集(包含MiniSAR数据)中的检测结果的指标统计。
表1 指标统计表
实验模型单图平均检测耗时/s迭代次数mAPmAP(MiniSAR)T1T2T3ZF0.1410000.560.5650000.610.60100000.680.68T4T5T6VGG-160.2510000.570.5750000.630.62100000.690.68
通过对比T1~T6的实验可以发现以下几点结论:1)由于VGG-16网络的层数更深,所以单张图像的检测耗时也高于ZF网络;2)随着迭代次数的增加,ZF和VGG-16网络在两种测试集中的mAP也相应提高;3)ZF网络和VGG-16网络在两种测试集中的mAP十分接近,这说明对于本文实验的场景,ZF网络4个卷积层所提取的特征已经足够进行车辆目标的检测,再增加网络的深度并不会提升车辆目标的检测效果;4)对比两个测试集中的检测结果,两种网络mAP也十分接近,这说明即使训练迭代次数设置为10 000,两种网络也没有过拟合的现象出现。综合以上4点分析,下面展示实验T3在MiniSAR测试集的部分检测结果和训练损失曲线,如图6和图7所示。
图6 ZF网络迭代10 000次的检测结果
图6(b)中图片为MiniSAR截取的场景之一,其余3张为原始测试集中的场景。对目标检测结果和真实的标注结果进行统计如表2所示。可以发现4张图片的查准率达到90.5%,查全率达到97.4%,F1-Score达到93.8%。
表2 部分场景指标统计表
场景目标真实个数检测目标个数虚警目标个数漏检目标个数①111320②0000③8910④202011合计394241
图7中有5类损失值,其中4类为每次训练迭代时的瞬时损失值,包括回归框损失(bbox_loss)、分类层损失(cls_loss)、RPN层分类损失(rpn_cls_ loss)、RPN层回归框损失(rpn_bbox_loss)。而总的损失(train_total_loss)则是平均损失值,观察train_total_loss的曲线可以发现,随着迭代次数的增加,train_total_loss趋于收敛。
图7 损失曲线图
本文提出了一个基于Faster-RCNN框架的、端对端的、具备在复杂背景下进行SAR车辆目标检测的方案。对原始样本进行标注后,使用深度学习客户端对样本裁剪并旋转来扩充样本,并设置相同的训练参数对ZF和VGG-16网络分别进行训练。训练完成后的模型分别使用两种测试集进行评价,评价的结果表明:在本文实验场景下,随着迭代次数的增加,两种网络的检测效果都随着提升;ZF具备更快的检测时间以及和VGG-16网络相同的检测效果。选取ZF网络迭代10 000次的模型,在1 628幅测试样本中的mAP达到0.68,在4幅不同场景的样本中F1-Score达到93.8%。虽然基于ZF网络训练得到的模型在实验数据集中取得了较好的检测效果,但是与之相比网络层数更深的VGG-16网络并没有取得预想中更好的检测效果,有可能是因为随着网络层数的增加导致网络性能下降。因此下一步工作准备将深度残差网络ResNet和Faster-RCNN框架结合,实验能否利用ResNet顺序累加残差块的特性[13],来解决深度卷积网络性能退化的问题。
[1] 黄世奇,王善成. 微波遥感SAR军事探测技术研究[J]. 飞航导弹, 2005(4):13-16.
[2] 史丹荣. 基于深度学习的SAR图像舰船检测[D]. 西安: 西安电子科技大学, 2015.
[3] 王思雨,高鑫,孙皓,等. 基于卷积神经网络的高分辨率SAR图像飞机目标检测方法[J]. 雷达学报, 2017, 6(2):195-203.
[4] GOODFELLOW I J, WARDE-FARLEY D, MIRZA M, et al. Maxout Networks[C]∥ 30th International Conference on Machine Learning, Atlanta: IMLS, 2013:2356-2364.
[5] HE Kaiming, ZHANG Xiangyu, REN Shaoqing, et al. Delving Deep into Rectifiers: Surpassing Human-Level Performance on Imagenet Classification[C]∥ IEEE International Conference on Computer Vision, Santiago, Chile: IEEE, 2015:1026-1034.
[6] KRIZHEVSKY A, SUTSKEVER I, HINTON G E. Imagenet Classification with Deep Convolutional Neural Networks[C]∥ 26th Annual Conference on Neural Information Processing Systems, Lake Tahoe, Nevada: Canada Neural Information Processing System Foundation, 2012:1097-1105.
[7] SZEGEDY C, LIU W, LIA Y, et al. Going Deeper with Convolutions[C]∥ IEEE Conference on Computer Vision and Pattern Recognition, Boston, MA: IEEE, 2015:1-9.
[8] ZEILER M D, FERGUS R. Visualizing and Understanding Convolutional Networks[C]∥ European Conference on Computer Vision, Zurich: Springer, Cham, 2014:818-833.
[9] ZHANG Xiangyu, ZOU Jianhua, MING Xiang, et al. Efficient and Accurate Approximations of Nonlinear Convolutional Networks[C]∥ IEEE Conference on Computer Vision and Pattern Recognition, Boston, MA: IEEE, 2015:1984-1992.
[10] GIRSHICK R, DONAHUE J, DARRELL Y, et al. Rich Feature Hierarchies for Accurate Object Detection and Semantic Segmentation[C]∥ IEEE Conference on Computer Vision and Pattern Recognition, Columbus, OH: IEEE, 2014:580-587.
[11] GIRSHICK R. Fast R-CNN[C]∥ IEEE International Conference on Computer Vision, Santiago, Chile: IEEE, 2015:1440-1448.
[12] REN S, HE K, GIRSHICK R, et al. Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks[C]∥ 32nd Annual Conference on Neural Information Processing Systems, Montreal, Canada: Canada Neural Information Processing System Foundation, 2015:91-99.
[13] HE Kaiming, ZHANG Xiangyu, REN Shaoqing, et al. Deep Residual Learning for Image Recognition[C]∥ IEEE Conference on Computer Vision and Pattern Recognition, Las Vegas, NV: IEEE, 2016:770-778.
常 沛 男,1994年生,安徽人,武汉大学摄影测量与遥感硕士研究生,主要研究方向为基于深度学习的SAR图像目标检测和识别。
E-mail:changpei@whu.edu.cn
夏 勇 男,1992年生,安徽人,西安电子科技大学信号与信息处理硕士研究生,主要研究方向为雷达目标识别。
李玉景 女,1990年生,江苏人,西安电子科技大学硕士研究生,主要研究方向为深度学习与图像处理。
吴 涛 男,1982年生,湖北人,中科院遥感所博士研究生,主要研究方向为SAR图像处理。