APP下载

结合关键点与引导向量的旋转目标检测网络

2024-02-24佘浩东赵良瑾

中国图象图形学报 2024年2期
关键词:中心点关键点高斯

佘浩东,赵良瑾

1.中国科学院空天信息创新研究院,北京 100190;2.中国科学院大学电子电气与通信工程学院,北京 100049;3.中国科学院网络信息体系技术重点实验室,北京 100091

0 引言

遥感图像目标检测的主要任务是对输入遥感图像中的目标进行定位和分类(Chen 和Luo,2021),在对地观测领域具有研究与应用重要价值。虽然基于深度学习方法的目标检测已经取得了重要的进展(聂光涛和黄华,2021),但在遥感复杂场景中仍存在目标排列紧密、目标方向多样等挑战。因此,面向遥感影像的目标检测仍然是研究热点之一。

根据是否预测设定锚框,目标检测算法可划分为有锚框(anchor-base)目标检测算法和无锚框(anchor-free)目标检测算法。有锚框的目标级检测方法通过一系列预设的参考框提高目标框的回归精度,包括Liu 等人(2016)提出的SSD(single shot mul⁃tibox detector)、Girshick 等人(2014)提出的R-CNN(region-convolutional neural network)和 Girshick(2015)提出的Fast R-CNN(fast region-convolutional neural network)等。无锚框目标检测算法因无需大量的预设锚框,减少了大量锚框超参数的设置,可适应更多长宽比以及任意朝向的目标类型。其中基于关键点的目标检测方法是这类算法的重要代表,包括提出的CornerNet(corner network)、(Law 和Deng,2018)、CenterNet(center network)。在遥感领域,Guo等人(2021)提出的CenterNet++(center network plus plus)采用关键点的方法回归关键点以及长宽信息实现舰船的正矩形框回归,基于域不变的USD(uni⁃versal ship detection)算法(Zhang 等,2022),龚声蓉等人(2022)提出的融入混合注意力的可变性空洞卷积,郭伟等人(2022)提出的自适应权重金字塔和分支强相关,以及阮晨等人(2021)提出的新的双向特征金字塔网络能够在不同的舰船数据集上取得不错的检测效果。但是,这些研究都使用正框作为目标的表示,在港口船舶紧密停靠场景、停车场密集车辆排列场景中,同一框中包含相邻目标,无法准确表达单一目标实例。

针对正框表示方法的不足,基于旋转目标框的检测方法得到广泛研究,如Yang 等人(2019)提出的SCRDet(small,cluttered and rotated objects detector)、Cheng 等人(2021)提出的CSFF(cross-scale feature fusion)、R-Libra R-CNN(Guo 等,2020)、Qian 等人(2021)提出的RSDet(rotation sensitive detector)和Yang 等人(2023)提出的SCRDet++(small,cluttered and rotated objects detector plus plus)等。此类研究主要侧重于关键点的提取匹配与目标方向回归,将目标中心点或角点作为关键点进行提取,并引入旋转角度的五参数回归(Yang 等,2019)、基于坐标的八参数回归(Qian 等,2021)、改进的Smooth L1 损失函数(Yang 等,2023)等方式进行目标的有向检测。此外还有直接回归方向向量的研究成果,如Yi 等人(2021)提出的边缘感知向量(box boundary-aware vector,BBA-vector)通过回归4 个向量获得旋转边界框。He 等人(2022)提出的HRPNet(high-resolution polar network)使用一个中心点和4 个矢量来精确定位飞机。但上述方法仍然面临着两个问题:1)关键点的回归是通过热力图中二维高斯核作为正样本,但在遥感图像中目标密集排列,相邻目标的二维高斯核会出现重叠的问题,进而导致目标的漏检;2)向量的回归仍然存在边界连续性和回归一致性问题(Yang 等,2021b),难以预测精确的方向向量,而复杂的回归方式在提高预测精度的同时带来模型复杂度高且效率较低等问题。

针对上述问题,本文提出了一种基于关键点和向量的无锚框目标检测方法。首先,针对遥感目标长宽比变化多样的问题,对目标检测框的建模重点在于目标的中心点和头部顶点位置,以获得包括物体位置、大小和方向在内的主要信息,无需预设锚框超参数。其次,针对遥感目标密集排列的问题,设计旋转椭圆高斯核作为目标中心和头部顶点的表征方式,以避免与相邻目标重叠。此外,椭圆高斯核还具有引导预测点沿着误差较小的方向偏移的作用,预测点沿着椭圆长轴方向的误差偏移比沿着椭圆短轴方向的误差偏移带来的损失量更小,这样预测点更倾向于沿着目标长边方向偏移,生成的检测框更加精确。最后,针对目标方向回归不准的问题,设计引导向量实现同一个目标的中心点与头部顶点的精确匹配,然后以配对的中心点和头部顶点为核心生成检测框,通过消融实验结果验证了向量引导的点对匹配模块的有效性。

本文的主要创新点如下:1)针对遥感目标长宽比多变带来的边界框预测不准的问题,提出一种改进的无锚框遥感目标检测方法,通过对中心关键点、头部关键点以及目标宽度的回归计算来确定旋转目标的边界框,提升预测边界框与目标的贴合程度。2)针对密集排列目标间预测的关键点易重叠导致目标漏检的问题,提出一种改进后的旋转椭圆高斯核。该椭圆高斯核拟合相应的目标形状,且具有与目标一致的角度方向,在增大关键点间距的同时实现更好的表征,提升对目标的检测精度。3)针对仅利用关键点信息导致的目标方向预测不准的问题,设计以中心点为起点的引导向量,通过约束中心点与头部顶点间的匹配关系,改善中心点与头部定点位置预测不准确导致方向预测错误的问题。

1 模型框架

1.1 总体框架

本文提出的目标检测算法模型结构图如图1 所示。整个模型分成两个部分:一个是骨干网络模块,另一个是检测头模块。本文关于旋转目标的建模方式如图2所示。

图1 算法模型Fig.1 Model of the algorithm

图2 目标建模方式Fig.2 Modeling approach to the objects

本文模型需要高分辨率的热力图来进行关键点的预测,这要求骨干网络模块输出大尺寸的特征图。而一般的网络模型,如Simonyan 和Zisserman(2015)提出的VGGNet(Visual Geometry Group network),通过多层卷积后输出的特征图尺寸较小,丢失了目标的空间位置信息,导致无法将其用来准确地定位关键点。采用Newell 等人(2016)提出的沙漏网络(hour⁃glass)作为特征提取网络,保留丰富的高层语义信息与底层的细节特征,实现关键点的回归定位。

1.2 检测头模块

从图1 中可以看到,从骨干网络输出的特征图连接4 个预测分支,分别对应中心点、头部顶点、引导向量以及目标宽度。中心点和头部顶点的预测分支分别生成一幅热力图,通过寻找热力图的局部极值点作为检测出来的中心点和头部顶点,然后根据另一个引导向量预测分支生成的结果,为中心点匹配对应的头部顶点,加上最后一个预测分支的目标宽度,构建有方向的旋转矩形框。

1.2.1 旋转椭圆高斯核

关键点预测是本文方法中的一个重要部分。如果将关键点所在位置作为热力图中的正样本,其余部分作为负样本,这样会出现正负样本数量的不平衡,导致网络无法训练收敛。在CornerNet(Law 和Deng,2018)中提出了一种二维高斯核作为关键点在热力图中的正样本,具体方法是以关键点位置为中心,生成一个圆形的高斯衰减区域。这个圆形区域中,中心点的值为1,其余位置是根据到中心点的距离产生的高斯衰减值。

在遥感图像中,对于许多大长宽比目标,使用二维高斯核作为关键点的热力图真值会对关键点的回归预测产生许多不利的影响。首先是二维圆形高斯核半径的不确定性。由于二维圆形高斯核的半径是由目标的正矩形框长宽决定的,而在遥感目标中,同一个目标在不同方向上的正矩形框长宽是不同的,如图3 所示,这也意味着同一个目标生成的二维高斯核大小是完全不同的。其次是相邻高斯核的重叠。在遥感图像中,目标往往是密集排列的,其在热力图中的高斯核会出现重叠融合的现象,将会导致几个相邻目标在检测结果中只剩下一个。由于不同目标的大小不同,上述问题也难以通过调整二维圆形高斯核半径的超参数解决。最后是预测偏差的不确定性。关键点的预测难免出现误差,对于大长宽比目标而言,预测点与真实点的偏移向量方向沿着长边与沿着短边产生的检测误差是完全不同的,如图4 所示。具体情况是同样大小的偏移向量,沿着长边偏移产生的预测框与真实框的重叠面积会远大于沿着短边方向。

图3 相同目标在不同方向上的正矩形框Fig.3 Positive rectangular boxes of the same target in different orientations

图4 不同方向上的误差偏移带来的影响Fig.4 The effect of error offsets in different directions((a)the actual box;(b)the case where the centroid is offset along the short side;(c)the case where the centroid is offset along the long side)

考虑到二维圆形高斯核带来的问题,本文提出了一种旋转椭圆高斯核。椭圆高斯核长轴的方向与目标的角度方向一致,椭圆高斯核长轴与短轴的产生公式为

式中,W与H分别代表目标旋转矩形框的短边和长边长度,而M是它们的几何平均。函数Gr是Corner⁃Net(Law 和Deng,2018)提出的计算二维圆形高斯核半径的函数,该函数的自变量越大,函数值就越大。r1与r2分别是椭圆高斯核的长轴与短轴。为了避免生成过于扁平的椭圆,在此使用几何平均值计算椭圆的长轴与短轴。

针对高斯核半径的不确定性问题,不同方向的同一个目标的旋转矩形框尺寸是确定的,椭圆高斯核的长轴与短轴长度根据旋转目标检测框的长度与宽度唯一确定。而密集排列的相邻目标的旋转椭圆高斯核拟合目标的形状与方向,从而避免了高斯核的重叠问题。在椭圆高斯核中同样的预测点误差偏移,沿着长轴方向的损失函数值小于沿着短轴方向,从而引导预测点沿着长轴而非短轴偏移,进而生成与真实框重叠面积更大的检测框。

对关键点热力图的回归损失,本文采用改进后的Focal Loss(Lin等,2017)函数,具体为

式中,N表示输入图像中目标的数量,实验中将参数α和β分别设置为2 和4,以平衡正样本和负样本的比例,yc,i,j代表目标真值,pc,i,j代表位置(i,j)的关于第c类别的概率置信度。此外,(1-yi,j)减小了其他位置的损失值,使其更聚焦于中心点。

1.2.2 向量引导的点对匹配模块

在遥感图像的目标检测中,使用头部顶点作为除中心点外的另一个关键点的原因在于:头部是可移动遥感目标中最具有分辨度的区域之一,便于检测,也是不同遥感目标之间最具有相似性的区域,具有泛用性。此外,头部顶点与中心点的结合能够确定目标的长度与朝向。使用引导向量与头部顶点共同确定头部的位置似乎是冗余的。事实上,在算法设计之初检测模块仅仅回归中心点,对于头部顶点使用引导向量直接进行预测。但结果证明,单纯依靠引导向量的回归在预测头部顶点的效果不好,如图5 所示。引导向量的预测不够精确,即便误差不大,这种不精确的引导向量导致生成的检测框的效果比较差。

图5 不精确向量在不同情况下生成的检测框Fig.5 Detection boxes generated by inexact vectors in different cases

针对这个问题,如果使用更复杂的建模与回归方式来更精确地预测引导向量,会导致模型的臃肿与低效。考虑到这种情况,本文提出了一种向量引导的点对匹配模块:直接增加关键点预测分支来预测头部顶点位置,使用引导向量引导中心点匹配对应的目标头部顶点,如图6 所示。通过这个模块,能够在不更改向量回归方式的情况下,基本不增加模型参数的同时获得更加精确的头部顶点位置。具体来说,通过两个关键点预测分支分别独立预测中心点与头部顶点,再利用引导向量将同一个目标的中心点与头部顶点进行匹配。

图6 向量引导的点对匹配模块简图Fig.6 Sketch of a vector-guided point-to-match module

向量预测分支会产生与关键点预测分支热力图相同尺寸的结果图,该结果图的每一个点与热力图中相同位置的点一一对应。结果图中的每个点都包含有指向头部顶点坐标的引导向量,但只有中心点对应到结果图中的点的引导向量才参与目标检测,其余位置的向量并不发挥作用。通过这样的方式,每个中心点都能利用结果图中对应位置的引导向量来寻找相应的头部顶点。

在中心点与头部顶点的匹配过程中,遵循以下策略:每个中心点对应引导向量,到达的位置称为引导点,即该中心点对应目标的头部顶点理论位置,这样每个中心点都对应一个引导点。用欧氏距离来衡量引导点与头部顶点的距离,最近的一对引导点与头部顶点匹配为点对,属于同一个目标。如果出现两个及以上的引导点的最近距离是同一个头部顶点,那么该头部顶点与距离其最近的引导点进行匹配。在一个引导点的最近头部顶点已经与其他引导点匹配的情况下,考察与引导点最近和次近的预测头部顶点的欧氏距离,设该引导点与其最近头部顶点距离为d1,次近头部顶点距离为d2,如果该引导点的最近头部顶点已经与其他引导点进行配对,且满足如下不等式,那么该引导点将与其次近头部顶点进行匹配,否则该引导点直接与其最近头部顶点匹配,即一个头部顶点匹配多个引导点。具体为

式中,阈值threshold默认设置为2。式(3)的意义在于判断次近头部顶点与最近头部顶点距离的相对关系,在最近头部顶点已经进行匹配的情况下,如果次近头部顶点与引导点的距离远远大于最近头部顶点距离,这意味着该引导点与次近头部顶点的匹配会带来较大的误差,此时最近头部顶点仍然是最合适的匹配对象。

引导点与头部顶点的策略如图7所示。

图7 引导点与头部顶点的策略Fig.7 Strategy for lead-in points and head vertices

上述流程能够保证每个引导点在尽可能保持一一配对的情况下都能找到匹配的头部顶点,多余的未曾匹配的头部顶点将被舍弃,这意味着每个中心点都会产生一个对应的检测框。在大多数情况下,每个引导点都能唯一配对头部顶点。但在实际的检测过程中,会出现头部顶点数量少于中心点数量以及引导向量预测误差较大等情况,最近距离与次近距离的判断能够为每个中心点尽可能匹配到最合适的头部顶点。

实际场景中,密集排列目标的头部相邻的时候可能会出现头部顶点匹配混淆的情况。针对这个问题,算法损失函数中调整向量回归的权重,并采用Smooth L1 损失函数(Law 和Deng,2018)来计算向量回归的损失值。该损失函数还能在训练过程中提升引导向量的收敛速度并减少对离群点的敏感性,具体计算为

2 实验结果

本文采用HRSC(high-resolution ship collections)和UCAS-AOD(UCAS-high resolution aerial object detection dataset)数据集验证所提出的算法。HRSC数据集是一个遥感场景下关于舰船的公开数据集,共436 幅训练图像、181 幅验证图像以及444 幅测试图像,图像尺寸从300 × 300像素到1 500 × 900像素不等。UCAS-AOD 数据集图像为1 280 × 659 像素,有1 000 幅飞机图像和510 幅车辆图像,分别包括7 482 个飞机目标和7 114 个车辆目标。其中HRSC数据集中的标注中含有头部顶点;UCAS-AOD 数据集中飞机类别的标注含有目标具体朝向角度,所以能够计算得到飞机的头部顶点。

在实验过程中,将各种尺寸大小的图像裁剪放缩成分辨率为640 × 640 像素输入网络模型。实验一共使用了4 张英伟达RTX 2080Ti 显卡,每张显卡的批处理量为8 张,初始学习率设置为0.01。训练的优化器采用SGD(stochastic gradient descent)方法,动量因子设置为0.9。在训练之前,通过翻转以及旋转等数据增强方式对数据集进行增广。

表1 对比了本文算法与各种目标检测算法在HRSC 数据集的实验结果。其中,平均精度(07)和平均精度(12)分别代表使用2007 年和2012 年的评估指标。本文提出的方法在HRSC 数据集上分别取得了90.78%的平均精度(07)和97.85%的平均精度(12),相较于Chen 等人(2020)的PIoU(pixels-IoU)、Jiang 等人(2018)提出的R2CNN(rotational region CNN)、Yang等人(2021a)提出的R3Det(refined rotation RetinaNet)、Ma 等人(2018)提出的Rotated RPN(region proposal network)、Xie等人(2021)提出的Oriented R-CNN(oriented regionconvolutional neural networks)、Ding 等人(2019)提出的RoI(region of interest)Transformer、Xu等人(2020)提出的Gliding Vertex 和Zhu等人(2022)提出 的GFA-Net(graph focusing aggregation network),都体现出更好的性能。

表1 在HRSC数据集上的对比实验结果Table 1 Results of comparison experiments on the HRSC dataset/%

图8 是本文方法在HRSC 数据集上部分检测结果的可视化图。可以看到,不同尺寸、不同方向以及不同位置的目标都能被精确检测出来。在检测结果中,各个目标的中心点预测比较精准,中心点与头部顶点也没有出现误匹配的情况。但也存在部分目标的宽度预测不准确的问题,导致可视化检测框不能完好地贴合目标边界。

图8 HRSC数据集部分检测结果可视化Fig.8 Visualisation of some of the test results on the HRSC dataset

P-R 曲线是以召回率(recall,R)为横坐标、精确率(precision,P)为纵坐标的曲线图,反映了两者的平衡关系。P-R 曲线中越靠近右上角的位置,反映模型的检测结果中漏检少的同时精确率高。判断一个检测结果是否正确的方式是计算检测框与真实框的交并比(intersection over union,IoU)。与真实框的交并比超过阈值的检测框为正确的检测结果,反之则为错误检测框。HRSC 数据集上不同算法的P-R 曲线如图9 所示,从图中可以看出,本文算法相较于其他检测模型在该数据集中表现了更优秀的结果。

图9 P-R曲线图Fig.9 P-R curve graph

为了获得点对匹配模块中的最佳阈值,即式(3)中的threshold参数,在HRSC数据集上进行了消融实验。表2 展示了不同threshold参数下的检测结果。从表2 可以看出,当threshold参数设置为2 时,本文算法有最高的检测精度。在后续实验中,threshold将默认设置为2。

表2 参数threshold消融实验Table 2 Ablation experiments of threshold parameter

为了研究旋转椭圆高斯核与向量引导的点对匹配模块在本文算法中的影响,在HRSC 数据集上进行了消融实验。表3 展示了消融实验的结果,数据表明,旋转椭圆高斯核与向量引导的点对匹配模块都提高了本文算法的精度。具体来说,旋转椭圆高斯核在HRSC 平均精度(07)、HRSC 平均精度(12)上分别带来了1.42%和1.39%的提升;向量引导的点对匹配模块在上述两个指标中则分别带来了1.06%和1.20%的精度提升。从实验结果可以验证,无论是旋转椭圆高斯核还是向量引导的点对匹配模块,都在HRSC数据集上带来了显著的提升效果。

表3 在HRSC数据集上的消融实验Table 3 Ablation experiments on the HRSC dataset/%

消融实验的可视化结果如图10所示,图10(a)—(d)分别是真实标注框、本文算法在无旋转椭圆高斯核、无点对匹配模块和完整情况下的检测结果。可对比看出,旋转椭圆高斯核和向量引导的点对匹配模块得到的检测框均有效地提升了对真实目标框的贴合效果。

图10 HRSC数据集消融实验检测结果的可视化Fig.10 Visualization of the detection results of the ablation experiment on the HRSC dataset((a)the real labeled boxes;(b)without rotated elliptic Gaussian kernels;(c)without the point pair matching module;(d)in the complete case)

为了验证本文算法在长宽比较小的目标类型上的检测性能,选用UCAS-AOD 数据集中的飞机类进行实验。表4 对比了本文算法与其他算法在UCASAOD 飞机类别上的实验结果,本文方法在飞机类别上取得了98.81%的精度,相较Wei等人(2021)提出的X-LineNet(X-line networks)、Yang 等人(2018)提出的R-DFPN(multiscale rotation dense feature pyra⁃mid networks)、Li 等人(2019)提出的FADet(featureattentioned detector)以及R3Det(Yang 等,2021a),达到了更好的精度,表明本文算法针对不同目标有一定的泛化能力。在UCAS-AOD飞机数据集部分检测结果如图11所示。

表4 在UCAS-AOD飞机类别上的对比实验结果Table 4 Results of comparative experiments on the UCAS-AOD aircraft category

图11 UCAS-AOD飞机数据集部分检测结果Fig.11 Partial detection results of the UCAS-AOD aircraft dataset

在UCAS-AOD 数据集上进行消融实验。表5 中的实验数据表明,旋转椭圆高斯核和向量引导的点对匹配模块在UCAS-AOD数据集的飞机目标上分别带来了0.26%和1.98%的精度提升。

表5 在UCAS-AOD飞机数据集上的消融实验Table 5 Ablation experiments on the UCAS-AOD aircraft dataset

通过与在HRSC 数据集上的结果对比可发现,旋转椭圆高斯核在HRSC 数据集上产生的效果更好。其本质在于旋转椭圆高斯核的设计初衷主要是为了解决大长宽比目标带来的不利因素,而这些因素对于类方形的飞机检测不会带来太大的负面影响。相比于直接回归引导向量,使用向量引导的点对匹配模块无论是在HRSC 数据集还是UCAS-AOD数据集上都带来了明显的提升效果。消融实验的结果如图12 所示,图12(a)—(d)分别是真实标注框、本文算法在无旋转椭圆高斯核、无点对匹配模块和完整情况下的检测结果。可以看出,旋转椭圆高斯核对长宽比较小的目标的检测精度没有明显的提升,但点对匹配模块大大提升了头部顶点的预测精度,从而对检测结果带来较好的提升,检测框的方向更贴近目标的真实方向。

图12 UCAS-AOD消融实验检测结果的可视化Fig.12 Visualization of the detection results of the UCAS-AOD ablation experiment((a)the real labeled boxes;(b)without rotating elliptic Gaussian kernels;(c)without the point pair matching module;(d)in the full case)

3 结论

本文针对复杂遥感图像背景下的目标检测任务,提出了一种基于关键点与有效向量的无锚框目标检测方法,通过对中心点、目标头部点以及引导向量的位置回归,实现对任意方向遥感目标的外接矩形框准确表征以及方向的判别。针对部分遥感目标长宽比较大的特点,设计椭圆高斯核以更好地贴合目标边界以及区分密集排列的遥感目标。针对边界向量的回归问题,使用引导向量指引中心点与头部点的匹配,避免直接回归边界向量导致的不精确。通过实验与其他先进算法进行对比,本文算法在HRSC 数据集上取得了90.78%(VOC 2007)和97.85%(VOC 2012)的平均精度,在UCAS-AOD 数据集飞机类别上有着98.81%的平均精度,均取得了最好的检测效果,从而证实了本文算法在遥感目标检测的有效性与鲁棒性。由于本文算法的检测需要数据集具有头部顶点的标注,而目前大部分的旋转目标数据集并没有关于目标头部顶点的标注,从而无法进一步验证本文算法的有效性,也限制了本文算法的泛用性。因此,下一步将针对头部顶点的标注的建模方式进一步改进,提高模型的泛用性,如在不区分头部与尾部的情况下设计更合适的建模方式。

猜你喜欢

中心点关键点高斯
聚焦金属关键点
肉兔育肥抓好七个关键点
Scratch 3.9更新了什么?
数学王子高斯
如何设置造型中心点?
天才数学家——高斯
汉字艺术结构解析(二)中心点处笔画应紧奏
寻找视觉中心点
有限域上高斯正规基的一个注记
医联体要把握三个关键点