梁 硕,王士成,陈金勇,于君娜
(中国电子科技集团公司第五十四研究所,河北 石家庄 050081)
近年来,随着光学遥感成像技术的发展,光学遥感图像在空间分辨率、光谱分辨率、时间分辨率等方面取得了巨大进步,对地观测能力得到很大提升,使得可侦察内容更加丰富、目标细节辨识能力大幅提高。舰船作为海上运输载体和重要军事目标,利用遥感图像对其进行自动检测与识别在各种领域有着广阔的应用前景。对遥感影像的舰船目标检测是通过对遥感影像进行预处理、提取和分析,检测出当前影像中存在的舰船目标,并对其位置进行标注。针对遥感影像,需要根据遥感影像的成像机制,分析感兴趣目标在遥感影像中呈现的特点,借鉴现有的目标检测算法,通过对算法结构以及目标特征模型的修改和优化,设计出针对遥感影像舰船目标的检测算法。对舰船目标的检测可以分为两大类:一类为海上航行舰船的检测;另一类为港口舰船检测。针对海上舰船目标检测,能够有效获取舰船活动信息,辅助判断舰船行为意图,该类任务的输入数据往往为宽幅的遥感影像数据,其成像分辨率较低,幅宽较大,能够覆盖较大范围的海域,舰船细节信息不够清晰。但由于其位于海上,背景较为单一,舰船目标特征与背景对比明显,当前对海上舰船的检测能够取得较为良好的效果。相较于海上舰船目标检测,对港口停靠舰船检测是监视特定港口海运交通、获取舰船部署与动态的主要手段,对有效了解海上舰船部署状态具有重要的研究价值。该类任务的输入数据为高分辨率遥感影像数据,其成像分辨率较高,能够获取较为明显的舰船细节信息。但是,港口舰船所处环境位于海陆交界处,背景较为复杂,陆地干扰信息较多,各种类型舰船较为集中且尺度大小不一,对舰船检测带来极大困难。
针对港口舰船检测存在的问题,本文利用深度学习技术,提出基于海岸线候选框的港口舰船目标检测方法,具体贡献如下:
① 基于残差分类网络(ResNet)、多点区域生长算法、特征金字塔网络模型和Faster RCNN检测算法模型,提出了针对港口舰船检测的全流程算法,能够有效解决光学影像中港口区域舰船检测问题。
② 利用ResNet分类网络和多点区域生长算法,对大幅光学遥感影像港口区域进行了海陆分割,在此基础上,沿海岸线进行滑窗,代替了全图滑窗,提出了基于海岸线的候选框,为后续的舰船检测缩小了范围,降低了虚警率,提升了效率。
③ 利用特征金字塔网络,构建舰船检测算法模型,有效解决了港口区域舰船较为集中且尺度大小不一的问题,降低了舰船检测的漏警率。
随着光学遥感图像分辨率的不断提升,舰船的形状、纹理等特征在遥感图像中体现得越来越明显,大量舰船检测方法不断被提出。早些时候,舰船检测往往采用阈值分割和模板匹配的方法,该类方法鲁棒性较差,大多只能应对海上舰船检测,而且受限于舰船的模板,对舰船检测的效果较差。随着机器学习研究的兴起,在舰船检测领域出现了大量人工特征和分类器结合的研究方法,对遥感图像进行特征提取(Haar Like、HoG、SIFT、LBP等),通过舰船目标和背景的特征差异性,对分类器(SVM、Adaboost、随机森林等)进行训练,实现对舰船目标的检测。除此之外,一些学者通过对舰船头部区域特征进行提取,结合分类器进行舰船检测,表现出了一定的效果。随着人工智能技术的迅速发展,基于深度学习的目标检测取得了巨大成就,其检测效果远远优于传统方法。因此,利用人工智能技术对遥感影像舰船目标进行检测成为人们关注的焦点。基于深度学习的目标检测算法大致可分为2类:单阶段和双阶段方法。单阶段方法将图像直接输入模型,通过回归的方式进行预测,直接得出目标的类别和位置范围,典型算法有YOLO[1]、SSD[2]和Retina[3]等。双阶段方法则是首先对输入图像提取候选目标区域,在得到的候选目标区域中再进行类别预测和位置回归,典型算法有RCNN[4]、SPPNet[5]、Fast RCNN[6]、R-FCN[7]、Faster RCNN[8]、FPN[9]和Mask RCNN[10]等。目前,基于单阶段和双阶段的方法均成功应用于舰船检测领域,李晨瑄等[11]针对复杂背景下的舰船目标检测需求,总结了基于深度学习的舰船目标检测技术发展现状,对目前采用的检测算法及适用性做了系统性的归纳梳理。基于单阶段的舰船检测方法一般具有非常高的速度,甚至能够达到实时,但其精度一般低于双阶段方法;基于双阶段的舰船检测方法往往具有较高的精度,但算法运行速度较慢。
针对港口舰船检测,通常的方法是对遥感影像进行海陆分割,去除陆地区域后,仅在海洋区域进行舰船目标检测。王方超等[12]提出了基于二次分割的港口舰船目标检测方法,基于改进后的分水岭算法获得较完整的海陆分离结果,然后对分割后的陆地区域进行二次分割,完成码头和舰船的分离,最后得到舰船检测结果。杨光等[13]提出基于SIFT特征的港口内舰船检测方法,通过建立港口区域模板,快速、准确地定位海水区域,然后对SIFT特征描述子进行改进,提高舰船检测的准确率。王岳环等[14]提出一种基于港口匹配和海域分割的靠岸舰船检测方法,将港口模板变换到实时图同一视角下进行港口配准,确定实时图海域部分,再对海域进行分割,检测出舰船。吴金亮等[15]提出一种基于Mask RCNN框架的舰船目标检测识别方法,通过候选框与像素分割曲线相结合的思路,较好地解决了紧密排列舰船目标的检测问题,使得舰船目标检测结果具有较高的准确度。楚博策等[16]提出一种基于多特征融合的自学习算法,对感兴趣目标提取形态学、灰度和轮廓等多种特征,通过对多特征阈值判定方法对相似舰船目标进行检测,可实现对战场突发状况与未知目标快速反应能力的同时保证较高的检测准确率。黎经元等[17]提出一种基于边缘线梯度特征定位和聚合通道特征的舰船检测方法,基于多尺度多结构元素形态学滤波实现海陆分割,并结合遥感图像中港口的矩形形状特点,定义边缘梯度正切角和港口凹凸度特征以对港口进行定位,获取港口感兴趣区域集合,利用训练完成后的分类器完成舰船目标的最终判别确认。成明辉[18]基于全球海岸线数据完成海岸线匹配,对陆地区域进行填充,实现海陆分割,消除陆地背景的干扰,在此基础上完成舰船目标的检测。倪慧洋[19]利用多结构形态学滤波方法,滤波处理港口视频图像,选取局部自适应阈值分割方法,将滤波处理后的港口视频图像划分为前景图像与背景图像,将港口视频的前景图像作为SSD算法的输入,利用SSD预测网络输出港口滞留船舶检测结果。
目前,既有港口舰船检测方法大多利用海陆分割算法提取整片海域以消除陆地干扰信息,然后在提取得到的海域中完成舰船检测。本文进一步缩小候选范围,重点关注海岸线区域,同时结合深度学习技术,提出基于海岸线候选框的港口舰船检测方法,进一步提升舰船目标检测准确性和效率,实验结果表明,提出的方法具有一定参考价值。
遥感影像中含有丰富的地物信息,数据量大,如果直接进行舰船检测,在检测精度和速度方面都不能取得良好的效果。同时,停靠舰船所处环境位于海陆交界处,背景较为复杂,各种类型舰船尺度大小不一,对舰船检测带来了极大困难。因此,提出一种基于海岸线候选框的港口舰船检测方法,实现港口复杂背景下的舰船检测,具体检测流程如图1所示。
首先,利用大量已知海洋和陆地样本切片数据构建海陆二分类模型并进行训练,针对大幅待处理遥感影像,利用训练好的海陆二分类模型得到待处理遥感影像中若干个海洋区域的初始点,采用区域多点生长算法对这些初始点进行生长,完成海陆分割,确定海岸线位置;然后,沿海岸线对待处理遥感影像进行无重叠切分,生成一系列初始候选框切片;最后,利用基于区域候选网络的目标检测框架和特征金字塔网络构建舰船检测网络模型,利用已知的舰船样本数据对舰船检测网络模型进行训练,利用训练好的舰船检测网络模型对生成的初始候选框切片数据进行检测,依据每个切片舰船检测结果得到待处理遥感影像的舰船检测结果。
海岸线候选区域生成过程主要包括海陆分割及候选区域生成两部分,海陆分割流程如图2所示。利用已有遥感数据制作海洋和陆地的切片样本,基于ResNet50分类网络构造海陆二分类模型,利用切片样本数据对海陆二分类模型进行训练,得到针对切片数据的小尺度海陆二分类模型。然后,将待检测遥感影像切分成一系列预定尺寸的切片数据,利用海陆二分类模型对待处理遥感影像切片数据进行海陆二分类处理,得到若干海洋区域的切片,基于灰度特征确定每个海洋切片中概率最高的位置,作为海洋区域的初始点。基于这些海洋区域初始点,利用区域多点生长的分割算法,将周围与其相似的像素进行合并,以完成“生长”,得到海洋分割结果,具体如图3所示,图中的点即为得到的若干海洋位置初始点。
图2 海陆分割流程Fig.2 Flowchart of sea and land segmentation
图3 海陆分割结果Fig.3 Results of sea and land segmentation
对遥感影像进行海陆分割之后,考虑到停靠舰船应在海岸线附近,因此,并不是按照传统滑窗的方式对影像进行切分,而是沿海岸线提取可能存在舰船的区域。假设遥感影像空间分辨率为xm,由于全球所有舰船长度均小于400 m,为了确定初始候选框能够完全包含舰船目标,设定初始候选框的边长为2×[400/x] pixel。基于该尺寸,沿海岸线以2/3的重叠率生成初始候选框,并在原影像中切分,最终得到一系列正方形的候选区域,在每个候选框内进行舰船检测,影像切分结果如图4所示。
(a)原图
(b)切分之后影像图4 影像切分结果Fig.4 Results of image segmentation
由于停靠舰船的多样性,单一尺度的特征图并不能有效解决舰船的多尺度问题。因此,采用特征金字塔网络,将不同尺度的特征图进行自顶而下的融合以及横向的连接,同时在经过融合和连接的不同尺度特征图上进行预测,示意如图5所示。
图5 多尺度特征网络示意Fig.5 Schematic diagram of multi-scale feature network
首先对输入图像进行特征提取,得到不同层级多个尺度的特征图,然后将高层和低层特征进行融合(对高层特征进行上采样之后与其前一层特征进行融合),重复迭代该过程,最终得到既包含高层语义信息又包含低层细节信息的特征图,同时针对融合后的各个尺度的特征图都进行预测。
以ResNet网络作为CNN骨干网络进行特征提取,并利用特征金字塔网络得到多尺度融合的特征图,基于该特征图形成多个尺度的目标候选区域,然后结合多尺度融合的特征图和目标候选区域对舰船目标进行检测,网络架构如图6所示。
图6 舰船检测网络架构Fig.6 Ship detection network architecture
将切分后的影像输入网络模型,逐层提取特征。在候选区域生成阶段,依次将第2、3、4、5级的特征层进行1×1卷积,与经过上采样的下一级特征层进行融合,然后第5级特征层进行下采样得到语义信息更加丰富的特征图,最终得到5种不同尺度的特征图,在此基础上分别创建不同大小(32、64、128、256、512)以及不同宽高比(1∶2、1∶1、2∶1)的候选框,产生目标候选区域。在感兴趣区域池化阶段,将融合后不同尺度的特征层和一系列候选区域作为输入,其中大尺度的感兴趣区域对应高级别的特征图,小尺度的感兴趣区域对应低级别的特征图,具体对应关系如下:
式中:k0为基准值,设为4,代表最高级别的特征层,w、h为感兴趣区域的宽和高,x为依据影像分辨率切分后的尺寸大小。如果感兴趣区域尺寸最大,则采用第4级别的特征图,如果感兴趣区域更小,则采用更低级别的特征图,依次利用到每个层级的特征图。最后,经过感兴趣区域池化层之后,对目标进行预测,得到目标类别和位置范围。
本文海陆二分类模型的训练数据选自高分2号全色影像数据,影像分辨率为0.8 m,数量为4,对原始影像进行切分后,选取海洋切片样本约5 000张,陆地切片样本约8 000张。舰船检测算法模型基于HRSC2016开源数据集进行训练,HRSC2016数据集中包含4大类19个小类的舰船数据,共包含2 976个舰船目标实例。测试数据集选自谷歌地球中的19级和18级遥感数据,影像分辨率为0.3~0.5 m,30幅遥感影像,影像尺寸均大于10 000 pixel×10 000 pixel,包含舰船目标675个。
本文算法基于Faster RCNN检测网络模型实现,在图像工作站上对谷歌地球上的遥感影像进行舰船检测实验,图像工作站配置单块NVIDA P40 24 GB显卡,遥感影像检测结果如图7和图8所示。
在相同测试环境中,本文算法与Faster RCNN检测算法进行了对比分析,并分别在滑窗和特征金字塔方面设置变量,骨干网络均选用ResNet50,训练数据为HRSC2016数据集,测试数据为30幅遥感影像,影像尺寸均大于10 000 pixel×10 000 pixel,包含舰船目标675个。其中,Faster RCNN算法针对大幅遥感影像进行滑窗检测,滑窗尺寸大小与本文算法初始候选框大小一致,且重叠率均为2/3。同时为保证对比算法和本文算法的可比较性,对比算法采用的海陆分割处理方法与本文算法一致。为保证实验结果准确、可靠,本文对测试数据集进行算法性能测试时,各算法都进行了50次独立重复实验。针对实验结果,本文从检测率、虚警率和算法耗时3个方面进行了统计,各项指标均为50次测试实验结果的平均值。各项指标定义如表1所示,实验对比结果如表2所示。
表1 评价指标定义Tab.1 Definition of evaluation indicators
表2 实验结果Tab.2 Experimental results
实验结果表明,本文算法与Faster RCNN检测算法相比,虚警率和算法耗时大幅降低。其中,相比传统全图滑窗方法及经典海陆分割后海域滑窗方法,本文算法的平均耗时分别降低为约1/2和1/4。在虚警率方面,由于海岸线候选方法进一步缩小了候选区域范围,本文算法去除了部分海域及陆域的干扰,虚警率进一步降低;在引入特征金字塔网络后,整体提升了检测准确性。
对实验结果进行分析得出,本文算法应用的特征金字塔网络抗尺度能力较好,在舰船检测中有一定优势,能够应对舰船尺度大小不一的情况,显著提高舰船检测的检测率,在此基础上,引入海陆分割环节,去除了陆地的大量干扰信息,大幅降低了舰船检测的虚警率;同时,本文提出的基于海岸线切分方法能够精准确定候选区域,不会造成有效信息的损失,为后续舰船检测过程去除大量无效检测区域,大幅提升算法运行效率。
针对大幅遥感影像,提出了一种基于海岸线候选区域的港口舰船目标检测方法,该方法首先对海洋和陆地进行了划分,然后基于海陆分割结果沿海岸线对遥感影像进行了切分处理,并在舰船目标检测算法中引入特征金字塔网络,应对不同尺度大小的舰船目标。实验结果表明,本文提出的方法有效地解决了大幅遥感影像港口舰船目标检测中虚警率过高和由于舰船尺度大小不一带来的漏检问题,大大提升了舰船检测的速度,具有很好的应用价值。