使用级联多级检测器的多分辨率遥感图像的高质量目标检测

 

基于深度学习的物体检测器在精度和自动化程度方面大大改善了遥感图像中最先进的物体检测。然而,物体尺度的巨大变化使得在多分辨率的遥感图像中很难实现高质量的检测,而质量是由训练中使用的交叉联合(IoU)阈值定义的。此外,跨多分辨率图像的正负样本之间的不平衡也使检测精度恶化。最近,人们发现,基于级联的区域卷积神经网络(R-CNN)通过引入级联的三级结构,使用逐步提高的IoU阈值,有可能实现更高的检测...

基于深度学习的物体检测器在精度和自动化程度方面大大改善了遥感图像中最先进的物体检测。然而,物体尺度的巨大变化使得在多分辨率的遥感图像中很难实现高质量的检测,而质量是由训练中使用的交叉联合(IoU)阈值定义的。此外,跨多分辨率图像的正负样本之间的不平衡也使检测精度恶化。最近,人们发现,基于级联的区域卷积神经网络(R-CNN)通过引入级联的三级结构,使用逐步提高的IoU阈值,有可能实现更高的检测质量。然而,当加入第四级时,级联R-CNN的性能下降了。我们调查了原因,发现ROI特征和分类器之间的不匹配可能是造成性能下降的原因。在此,我们提出了一个级联R-CNN++结构来解决这个问题,并将三段式结构扩展到多段式结构,供一般使用。具体来说,对于级联分类,我们提出了一种新的分类器和兴趣区域(RoI)特征的集合策略,以提高推理时的分类精度。在定位方面,我们修改了边界盒回归器的损失函数,以获得零附近更高的灵敏度。在DOTA数据集上的实验表明,Cascade R-CNN++在精度和检测质量方面优于Cascade R-CNN。我们对多分辨率遥感图像进行了进一步分析,以验证模型在不同物体尺度上的可迁移性。

原文链接

https://www.mdpi.com/2072-4292/14/9/2091

背景及科学问题

遥感图像中的物体检测在一些民用和军事应用中发挥着重要作用,如城市规划、地理信息系统更新和搜救行动。与传统方法(基于模板匹配的方法[1,2]、基于知识的方法[3,4]等)相比,基于深度学习的方法通过将人工特征设计的负担迁移到底层学习系统,从原始数据中自动提取特征,使其具有更强大的特征表示能力,以提取更高语义水平的特征图。凭借这一优势,基于深度学习的检测方法在计算机视觉和遥感界都取得了巨大成功[5,6]。

与自然场景图像不同,遥感图像在不同的观测条件下具有更大的尺度变化和更多的特征复杂性,这就要求物体检测器具有更高的泛化能力。最近,基于DNN的检测方法从计算机视觉领域被引入到遥感领域,并在多类物体检测上取得了优异的成绩。遥感图像深度学习物体检测的许多基本问题得到了解决,如缺乏足够的训练样本[7,8],小物体检测的性能差[9,10,11],以及卫星图像中物体的旋转特性[12,13]。撰写于2020年的全面回顾可以在文章[5]中找到。

尽管如此,多分辨率遥感图像中物体尺度的巨大变化仍然给物体检测器带来巨大挑战。最近,一些研究从不同方面探讨了解决这一问题的可能性,可以归纳为三类。(1) 不同层次的特征融合:在这一类别中,许多融合模型都是为了提取多尺度的特征层次,以提高模型在小物体和大物体上的性能。有代表性的研究包括跨尺度特征融合(CSFF)[14]、基于双特征金字塔网络(FPN)的偏振注意机制模块[15]、特征融合架构(FFA)[16]、多片特征金字塔网络[17]和Quad-FPN[18]。(2) 改进区域建议网络以生成更合适的锚点:这些模型解决了多尺度图像中锚点尺寸和物体尺寸的不匹配问题,如自适应长宽比锚点(SARA)[19],多尺度空间注意区域建议网络[20],以及尺寸折叠操作(SF)[21]。(3) 建立平行网络来检测不同尺度的物体:其中一个代表性的工作是多专家检测网络(MEDNet)[22]。

上述方法主要集中在不同尺度的物体之间的特征提取和特征匹配。除此之外,正负样本的不平衡也是模型无法检测不同尺度物体的另一个原因[23]。与小物体相比,大物体更容易被识别为正样本,而且精度更高。当把由高分辨率图像预训练的模型应用于低分辨率图像时,大多数大物体会变成小物体,导致阳性样本太少,无法有效训练模型。

在基于锚点的检测器中,通常使用一个交叉-联合(IoU)阈值来区分阳性/阴性样本,这也定义了检测质量[24]。选择一个合适的阈值是检测质量和精度之间的妥协,因为较低的IoU阈值会带来更多潜在的物体区域建议,但会有更多的噪声样本,这导致了不可靠的检测结果。然而,在训练中使用高的IoU阈值会导致阳性样本太少,从而导致模型过拟合。

为了达到高精度,IoU阈值必须与检测器假说的质量密切相关[25]。级联R-CNN[25],作为两阶段基于锚的检测器的扩展,使用三阶段的级联结构来解决上述问题,训练样本的IoU(即假设的质量)可以通过级联的边界盒回归来逐步提高。这种级联结构依次提高阳性训练样本的数量和质量,以减少过拟合问题。在自然场景图像的实验中,级联结构在检测不同尺度的物体时取得了更好的精度。然而,在级联R-CNN的原始结构中,级联组件的最大数量为3个。当增加第四级时,整体检测性能就会下降[25]。这就限制了级联检测器的扩展,以实现更好的检测性能。

在本文中,我们研究了增加更多级联阶段时性能下降的原因。我们发现,在推理时,级联R-CNN中的原始集合策略在分类器和兴趣区域(RoI)向量之间引入了不匹配,降低了分类精度。

为了克服这一局限性,我们提出了一种新的级联分类的集合策略,即采取同一阶段产生的RoI特征进行分类,而不是统一使用最后阶段的特征。最终的分类结果是通过整合所有阶段的分类器输出得到的。此外,边界盒回归[26]的损失函数被修改以提高灵敏度,使级联回归器随着阶段数的增加而进一步收敛。修改后的级联结构在本文中被表示为级联R-CNN++。

本研究的主要贡献有以下几点。(1)我们研究了级联检测器在增加更多阶段时性能下降的原因;(2)我们提出了一种新的集合策略,以尽量减少推理时分类器和输入RoI之间的不匹配,并提高分类精度;(3)我们提出了一个修改的边界盒回归的损失函数,使边界盒回归在建立更多阶段时进一步收敛。所提出的Cascade R-CNN++方法可以在遥感数据集DOTA上实现最先进的检测性能[27,28]。它可以在大多数需要基于区域建议的方法的情况下实施。在多分辨率遥感图像的实验中,所提出的方法在检测质量和精度上都优于级联R-CNN。

研究方法介绍:级联R-CNN++

级联R-CNN[25]使用三级级联检测器来逐步改善训练样本的IoU分布。通过级联回归,可以实现更高的物体定位精度。然而,当增加第四级时,AP、AP50、AP60、AP70和AP80的指标都会下降,只有AP90略有增加。在此,我们研究了性能下降的原因。

在本文中,我们通过修改Cascade R-CNN来提出Cascade R-CNN++方法。首先,我们为分类器和推理时的RoI特征提出了一个新的集合策略。其次,我们提出了一个改进的损失函数,用于边界箱回归,以实现零附近的高灵敏度,这使得更多阶段的加入能够进一步收敛。图3显示了所提出的级联R-CNN++的一个五阶段的例子。区域建议的生成采用了RPN。

新的分类组合策略

正如在[25]中所定义的,一个分类器被表示为一个函数h(xi)它将一个特征向量xi归入m+1个类中的一个,其中0为背景,其余每个值代表一个类。一个分类器的输出是一个m+1维向量,其最大值表示边界框中的物体所属的类别。分类器是通过最小化交叉熵损失Rcls来训练的。

边界盒回归的修正损失函数

在每个阶段,边界盒回归器被用来通过最小化真实边界盒和候选边界盒之间的偏移量来逐渐使候选提案接近真实标签位置。一个输入建议p可以通过以下方式转化为预测的真实标签框g。推导公式表示如下: image.png 其中p=(px,py,pw,ph)表示输入建议的位置,g=(gx,gy,gw,gh)是预测的真实标签箱。Δ=(tx/cx,ty/cy,tw/cw,th/ch)代表距离向量,即由边界盒回归器进行的微小调整。是影响距离向量大小的权重,权重cx、cy、cw、ch最初设定为(10,10,5,5),并随着阶段的增加而逐渐增加。由于边界盒回归器对偏移向量Δ进行了微调,这些值通常是非常小的。因此,归一化被执行为Δ[25,35,36,41].对于一个图像补丁xj,级联R-CNN[25]中使用的边界盒回归的损失函数可以表示为Rloc,其中Rloc是边界盒回归的交叉熵损失,j是一个候选方案的索引,Nloc是候选提案的数量,Lloc表示S1平滑L1函数[24]。

其中f(xj,pj)是边界盒回归函数,pj=(pjx,pjy,pjw,pjh)是第j个是第j个候选方案,有四个坐标,即中心位置(pjx,pjy),以及盒子的宽度和高度(pjw,pjy).gj代表预测的真实标签框,以同样的方式指定(gj=(gjx,gjy,gjw,gjh)). 此后,除非需要,我们忽略上标j为简单起见。

为了使更多阶段的级联回归能够进一步收敛,我们改进了边界盒回归的损失函数,以实现零附近的高灵敏度。

其中sgn是符号函数,指数4/3的条款(tk/ck)4/3,和k∈{x,y,w,h}。是为了增加非线性并保持灵敏度和损失梯度之间的权衡。输入(tx,ty,tw,th)与边界箱输出偏移量(gx-px,gy-py,gw/pw,gh/ph)绘制成图。对于不同权重的原始和修改后的损失函数ci,i∈{x,y,w,h}。不同阶段(图4和图5)。修改后的损失函数在零点附近的曲线更平滑,表明当候选边界盒和真实标签之间的偏移接近零时,回归器的步长更小(即灵敏度更高)。这一修改使得级联边界盒回归器随着阶段的增加而进一步收敛。 image.png image.png 图6说明了在损失函数中采取不同指数值的效果。我们可以看到,较大的指数值对应于损失函数在零附近的较高灵敏度,但收敛速度较慢。指数项为4/3是灵敏度和收敛速度之间的权衡。该值是经过多次实验后选择的经验值。

试验结果

image.png

阶段性的比较

在DOTA数据集上,我们比较了三级、四级和五级级联R-CNN++的检测性能,它们都以ResNet-50为骨干。结果见表2,其中AP表示平均精度,AP50、AP75和AP90分别表示使用0.5、0.75和0.9的IoU阈值的检测精度。APS、APM和APL分别表示小型、中型和大型物体的检测精度。

如表2所示,整体检测精度随着阶段的增加而提高,以FPS(每秒帧数)衡量的推理速度没有明显下降。

建议修改的消融实验

通过使用ResNet-50骨干网进行消融实验,进一步分析了Cascade R-CNN++的检测性能。结果显示在表3中。采用新的集合策略和修改后的边界盒回归损失函数的级联检测器取得了最好的精度,在AP90中也有明显的改善。

与最先进的检测器的比较

在DOTA-v1.5数据集上,提议的Cascade R-CNN++的性能与最先进的两级/多级检测器进行了比较,详见表4。用*表示的条目使用了包括多尺度训练/推理和SoftNMS在内的增强措施,如[43,45]。

如表4所示,与Faster R-CNN、FPN、RetinaNet和原始Cascade R-CNN相比,提议的Cascade R-CN++在所有指标上都取得了更高的精度。在AP90上的改进最为明显,其次是对中型和小型物体的检测精度(即APM和APS)。这些结果证明,所提出的方法是有效的,并且优于最先进的检测器,特别是在高质量检测方面。在实验中,我们还实现了具有多尺度训练/推理和softNMS的Cascade R-CNN++,在表4中用Cascade R-CNN++ *表示。通过这些改进,Cascade R-CNN++超过了Cascade R-CNN 4.6分。值得注意的是,最近的其他研究从不同的角度(如特征金字塔)探讨了改进措施,表明这些改进措施的累积效应可以进一步提高多阶段检测器在遥感物体检测、实例分割、关键点检测等领域的性能。

在另一个遥感数据集NWPU VHR-10上也进行了比较(表5)。训练以0.01的学习率开始,在30 k和40 k的迭代中分别降低到0.001和0.0001,并在50 k的迭代中完成。其他实施设置与DOTA-v1.5上的实验相同。

从表5中我们可以看出,所提出的Cascade R-CNN++在NWPU VHR-10数据集上产生了最好的性能,特别是在AP75和AP90所显示的高质量检测上。小物体的检测精度比原来的Cascade R-CNN方法提高了4.8%。

模型在多分辨率遥感图像上的可迁移性

进一步的分析是为了比较所提出的模型和原来的Cascade R-CNN在多分辨率遥感图像中的可迁移性。遥感数据集DOTA-v1.5中的图像按不同的系数(如2、3和4)进行了放大。由原始分辨率图像训练的探测模型直接用于推理,以模拟用有限的数据变异性训练的探测器被用于探测不同分辨率图像中的物体的大多数情况。如前所述,DOTA-v1.5数据集包含16类物体,如飞机、船舶、储罐、大型车辆、小型车辆等。这里我们以飞机和港口的检测为例。图7(单物体)和图8(多物体)显示了在多分辨率图像上实现的物体检测性能。 image.png image.png 从图7可以看出,在单物体和大物体检测中,Cascade R-CNN++获得的IoUs略好于Cascade R-CNN。在多物体检测中(图8),Cascade R-CNN的性能随着升级因子的增加而迅速下降,而Cascade R-CNN++在不同分辨率的图像中表现出更好的迁移能力。特别是对于小物体的检测,如图8c,g中的白色椭圆所示,当图像被放大3倍时,Cascade R-CNN++可以检测到大部分的小物体,而Cascade R-CNN则漏掉了大部分的小物体。当图像被放大四倍时,如图8d,h,两个检测模型都漏检了一些小物体。在飞机的检测中(图8d),我们注意到Cascade R-CNN几乎漏掉了所有的小飞机,而Cascade R-CNN++仍然可以检测到几个小飞机。

我们对DOTA-v1.5中所有测试图像上的16类物体进行了上述实验,使用了1、3/2、2、5/2、3、24/7和4的上标比例。图9显示了边界盒回归后获得的IU的博弈图。3/2的升尺度比率是指图像被升尺度2倍,降尺度3倍的情况。这与其他比率相同。 image.png 从图9中我们可以看出,对于按不同比例放大的遥感图像,Cascade R-CNN++比Cascade R-CNN获得了更高的IoU。随着放大比例的增加,Cascade R-CNN++获得的IoU分布的改善变得更加明显。这些结果表明,在多分辨率遥感图像中,Cascade R-CNN++比Cascade R-CNN获得了更高的检测质量。

结论

在本研究中,我们提出了Cascade R-CNN++作为一种改进的级联结构,以实现多分辨率遥感图像的高质量物体检测。新模型克服了原有级联R-CNN的扩展问题,在推理时采用了新的集合策略进行分类,从而消除了分类器和RoI特征之间的不匹配。此外,我们修改了边界盒回归的损失函数,以实现零附近更高的灵敏度,这使得随着级联阶段的增加,可以进一步收敛。使用DOTA-v1.5和NWPU VHR-10数据集验证了所提方法的有效性。级联R-CNN++可以随着阶段的增加而达到更高的精度,并且在高质量检测方面取得了明显的改善(例如AP90)。我们对检测质量进行了进一步分析,以验证模型在多分辨率遥感图像中的可迁移性。与Cascade R-CNN相比,所提出的Cascade R-CNN++在多分辨率图像中检测不同类别的物体时取得了更高的IoU值。随着图像分辨率的降低,这一趋势变得更加明显。

由于遥感训练数据集的可变性有限,深度学习模型在多分辨率图像之间的可迁移性对于遥感物体检测至关重要。”训练一次,应用于多尺度 “是最终目标。本文提出的级联结构和损失函数可以帮助模型提高跨多分辨率图像的可迁移性。它们是独立的组成部分,可以进一步应用于另一个多阶段模型。在未来,我们将探索级联结构在其他任务中的应用,如实例分割和关键点检测。