AAAI 2025一种遥感半监督目标检测方法的中文解读

发布于:2025-03-01 ⋅ 阅读:(10) ⋅ 点赞:(0)

Paper(Arxiv):Arxiv版本
Paper(AAAI):
Code
中文大白话解读一下本人发表在AAAI2025上的工作 Multi-clue Consistency Learning to Bridge Gaps Between General and Oriented Object in Semi-supervised Detection

动机

首先介绍一下半监督目标检测任务。目标检测任务通常需要大量精确的检测框作为标签,根据设计的标签匹配策略分配正样本进行学习,而对大量精确标注的需要导致了高昂的人工标注成本。因此,半监督目标检测旨在利用少量带有精确标注的标注数据,以及大量廉价的无标注数据进行算法训练。而对于无标注数据,就需要利用算法本身对其预测伪标签,再反过来监督算法进行学习。因此,提升目标检测半监督学习质量的关键可以总结为以下两点:

  • 提高伪标签的质量,包括提高召回率(不要漏掉目标)、精确度(不要误检目标)以及高定位质量(回归出的检测框能完全贴合目标),这通常涉及到伪标签筛选策略的设计;
  • 在带有噪音的伪标签下进行高质量的学习。伪标签质量再高,也不可能达到百分百准确,因此如何在带有噪音的标签监督下进行有效学习也是关键,这通常涉及到标签匹配策略的设计。

目前的半监督目标检测算法通常采用教师-学生模型的框架,如图1所示,即由教师模型预测伪标签,经过筛选后指导学生模型进行训练,学生模型的权重通过EMA(指数移动平均)算法更新给教师模型,从而保证教师模型预测的伪标签质量能随着算法的迭代而提高。

图1. 通用半监督目标检测算法框架图

而旋转目标检测区别于普通目标检测, 需要预测带有角度的旋转框,由于旋转目标检测绝大多数应用场景在遥感图像上,因此本文章用遥感目标检测代指。遥感场景下目标除了多了旋转角信息,还面临着大长宽比、小目标、密集排列以及尺度变化大等问题,如图2所示,因此在遥感目标检测上进行半监督学习面临的情况会更复杂一些。
在这里插入图片描述

图2. 遥感场景下的目标检测图(来自DOTA-v1.5)

并且,本工作实测,在遥感场景目标检测代表性数据集DOTA-v1.5上,用通用的半监督目标检测方法在单阶段算法FCOS上进行训练,效果会非常差,甚至会出现几十mAP的掉点。 这里解释一下,Mean Teacher是指像图1那样最普通的半监督目标检测算法,即教师模型预测出框,进行NMS和分数阈值的筛选,筛选出的框用于监督学生模型。Mean Teacher在普通场景上是能带来正增长的,但是在这里带来了显著的负增长。

在这里插入图片描述

表1(对应论文表6). 在DOTA-v1.5数据集上,30%标注数据和70%无标注数据设置下进行半监督训练,Mean Teacher会出现显著掉点。

因此,本工作以此为动机,首先分析一下普通半监督目标检测方法为什么在遥感场景上表现不佳,再提出针对性的策略。

原因分析

其实所有原因都是基于在遥感场景下和在普通场景下进行目标检测的差异。为了能直观的感受这种差异,本工作以普通场景下常用的COCO数据集,以及遥感场景下常用的数据集DOAT-v1.5为例,以单阶段目标检测算法FCOS(之所以选这个,是因为在两种场景下表现都很好)作为基准检测器,进行实验和数据统计分析。

1. 伪框的质量差异

该问题是为什么Mean Teacher在DOAT-v1.5上半监督训练掉点的核心原因。由于在半监督的任务设定上,是假设无标注数据的数量是远大于标注数据的,因此无标注数据上预测出的伪标签的质量,决定着半监督学习的质量。衡量伪标签质量的好坏有三点,召回率(不要漏掉目标)、精确度(不要误检目标)以及定位质量(回归出的检测框能完全贴合目标)。接下来一一分析这三点的影响。

我们都知道,单阶段目标检测算法(也叫dense object detector)的标签匹配策略是非黑即白的。特征图上不管是预设框(anchor-based,如RetinaNet)还是候选点(anchor-free,如FCOS),根据标签匹配策略的分配,要么是正样本,要么就是负样本,因此对标签的质量要求非常高。如果召回率较低,说明有很大一部分想检测的目标未被正确分配为正样本,那么就会被选为负样本,严重影响训练(false negative);如果精度较低,说明有很大一部分不想检测的背景区域被错误分为正样本,也会严重影响训练(false positive);同时,就算召回率和精度都挺高,但是旋转伪框的定位质量比较低,那么不管是IoU-based 的标签匹配策略(如RetinaNet)还是IoU-free 的标签匹配策略(如FCOS),都必然会因为虽然框住目标,但是没框好的低定位质量框而将一些在目标周围,但是没有那么合适的预设框或候选点当作正样本,同样也会严重影响训练,如图3(b)所示。
在这里插入图片描述

图3

因此,要维持教师预测伪框在三个指标上的平衡对于半监督训练是最最最重要的。而在遥感场景下,维持伪框三个指标的平衡相较于普通场景是非常困难的,这也是为什么普通场景下的半监督方法应用在遥感场景会严重掉点。观察图3(a)可以更量化的分析。在两个场景的代表性数据集上训练一个FCOS检测器,并对验证集进行推理,在维持相同召回率的情况下,如果不对定位质量(用预测框和真值框的IoU阈值衡量)要求那么高的话,那么DOTA数据集训练的检测器在对应验证集上预测框的精度是很高的,并且高于普通场景,但是定位质量差的预测框监督学生模型训练时,会造成上述提到的问题,严重影响训练;如果增加对预测框的定位质量要求,即增大IoU阈值,那么DOTA下的预测框精度会非常显著的下降,比如0.8的IoU阈值时维持和COCO一样的召回率,那么精度会显著下降到37%,远低于COCO的58%;有疑问可能会觉得,0.7的IoU阈值不是正好吗,但是此时的定位质量还是太低了,尤其还带有旋转角信息。综上,在遥感场景下维持伪框的三个质量平衡非常困难,这也成为了普通场景下的半监督方法应用在遥感场景会严重掉点的本质原因。

2.定位质量表示上的差异

一些大佬们的工作已经指出了单阶段算法存在一个问题,就是在进行预测框筛选的时候,分类分支的分数置信度是无法代表框的定位质量的,因此仅用分类分数进行预测框的筛选不够。一些工作提出了增加一个定位质量分支,专门用来预测定位质量,比如FCOS算法用了centerness,即候选点与真实目标中心点的正则化距离,作为对定位质量的表示。随后一些工作指出在普通场景下(比如COCO数据集),centerness其实和真实的定位质量正相关性不大(本工作也统计了一下,确实如此),因此直接用候选框和真值框的IoU作为定位质量表示(这么看非常合理,因为对定位质量的评测本来就是看IoU)。并且,不用增加一个新的定位质量分支了,只需要在对分类分支进行监督的时候,用定位质量(也就是IoU)代替one-hot 标签的那个1,这样学出来的分类分数就不仅代表分类置信度的高低,还和定位质量联系上了,即Quality Focal Loss(上述想法均来自Generalized Focal Loss这篇论文,学目标检测必看)。

但是,上面说了那么多,都是在普通场景下的问题。遥感场景下当然也有分类分数无法和定位质量挂钩的问题,也可以通过Quality Focal Loss解决。而本工作研究的是,更适用于遥感场景的定位质量表示方式。经过统计发现,尽管FCOS中提出的centerness在普通场景下(COCO数据集)与真实的定位质量相关性不大,但是在旋转目标检测(遥感场景的DOTA数据集)中,相关性非常大。如图4所示,左边是在旋转目标检测(DOTA-v1.5)中测的centerness和真实定位质量(预测并且筛选出的正样本框和对应的真值框的IoU)相关性很强,但是水平目标检测(COCO数据集)上就几乎完全没有了。
在这里插入图片描述

图4. 左边代表DOTA数据集的结果,右边是COCO的

一个合适的定位质量表示,在半监督中进行伪标签筛选的时候可以辅助筛选分类精度和定位质量都高的伪标签,而接下里的实验也发现centerness确实比IoU效果更好一些(实验是在30%标注数据和70%无标注数据的半监督设置上做的,超参数的含义下面会讲)。

在这里插入图片描述

表2(对应论文表8)

3.目标长宽比差异

这个已经很显而易见了,图5(a)能明显看出来遥感场景(DOTA)的极端长宽比目标数量远高于普通场景(COCO),并且分布上差异也大,属于是各种长宽比的目标都有。有些大长宽比目标的判别性特征是分布于目标两端的,比如下面的港口目标。但是IoU-based 的标签匹配策略(如RetinaNet)通过设置IoU阈值进行预设框的筛选时,会倾向于筛选更靠近目标中心的预设框作为正样本。IoU-free 的标签匹配策略(如FCOS)更直接,直接选目标中心一定半径范围内的点作为正样本。以上方法都将大长宽比目标边界的判别性区域标记为负样本,一定程度上混淆算法训练。
在这里插入图片描述

图5. 目标长宽比统计

解决方案

1.尺度感知标签匹配策略

原因分析1中提到,在利用大量无标注数据进行半监督训练时,如何筛选高质量的伪标签是关键中的关键。而上面也分析了,在遥感场景上筛选出召回率高、精度高、定位质量也不能低的旋转框作为伪标签是不现实的。因此,能不能不用伪框(暂且称为box-level pseudo label)了,直接用教师模型预测的logit作为伪标签(即pixel-level pseudo label)进行监督。本工作实验了一下,确实非常有效。pixel-level 伪标签是在Dense Teacher这个工作中提出的,提出动机是省略掉NMS等后处理步骤。用到遥感半监督场景中,很好的解决了伪标签质量导致性能下降这个问题(实验结果如表1所示,Dense Teacher实现了性能的正增长)。
但是,Dense Teacher在进行pixel-level伪标签的筛选中,仅使用了分类分数作为指标。那有没有更好的方案呢?本工作在研究更好的筛选策略时,还发现了一个有意思的事。众所周知,遥感场景中有很多的小目标,这也是检测难点。而小目标由于与背景相像,或者特征不明显,很容易让人觉得,小目标理所当然预测的分数就不高。但是本工作发现,事实有点出入。由于现在的检测器默认都会配置一个FPN作为Neck,FPN中不同尺度的特征图用来检测不同尺度的目标,比如最大的p3特征图,用来检测最小尺度的目标,最小尺度的特征图p7用来检测最大尺度的目标。因此本工作将p3特征图作为小目标的代表,然后一直到p7作为大目标的代表,然后统计了一下各尺度特征图的正样本预测分数的分布,如图6(a)所示,代表小目标的p3上的分数整体是最高的!然后目标尺度越大,分数会越来越低。

在这里插入图片描述

图6

这个统计结果可以作为设计pixel-level伪标签筛选策略的参考。而针对这一现象产生的原因,本工作分析这是由各尺度目标数量上的不平衡导致的。即在遥感场景下,小目标占比过多,因此p3特征图受累需要负责检测的正样本数量就越多,而大尺度目标占比较少,p7相对就轻松一点,其上分配的正样本数量就少很多。而在构建Focal Loss(几乎所有单阶段目标检测算法都会用)时,FPN所有特征图上预设的框或者候选点都会参与计算,那么参与构建loss的总样本点数量是固定的,这其中p3上的正样本数量占比有绝对优势,那么其权重自然也就越大,学习到的分数也高;而其他特征图相对较少,分数偏低。
当然,为了验证这一分析,本工作统计了一下COCO、DOTA-1.0、DOTA-v1.5的各特征图正样本占比,以及预测分数高低的关系。结果如表3所示,均值、方差、最大值和分位数都是预测分数的,占比是正样本数量占比。COCO的各尺度特征图上的正样本数量占比相对更均衡,因此分数也相对均衡;DOTA系列正样本数量在各尺度特征图上分布不是那么均衡,因此预测的分数分布也不均衡。该分析是本工作当前能想到的最合理的解释,真实原因可能更加复杂。

在这里插入图片描述

表3

总之,有了上述观察和分析,那么制定pixel-level伪标签筛选策略就很简单了。本工作想到的最直观的方案就是各尺度特征图分别设定阈值进行筛选。方法有些trick,具体步骤可以看原论文或者代码。在用了尺度感知标签匹配策略之后,pixel-level伪标签的召回率、精确度都有了显著的提升,结果如表4所示。如何设计一个不需要很多超参数的筛选方法当然也值得研究。

在这里插入图片描述

表4

2.置信度一致性标签

原因分析2中,对遥感场景下旋转目标检测的代理定位质量表示进行了分析,centerness与真实定位质量的相关性很好。因此,本工作针对其进行了一些尝试。这里也有一个直观的问题,如图6(b)所示。普通的centerness的表示没有考虑到目标的尺度影响。例如一个小目标,其目标边缘求出来的centerness,和一个大目标边缘求出来的centerness是很接近的(情况一紫色和蓝色)。这样是不好的,因为由于特征提取特性,小目标的中心点和边缘点的距离是非常接近的,那么提取的特征理论上相似度也很大,而让这俩相似度很大的特征预测相差较大的centerness,是很不合理的;相反,大目标就没这么多顾虑了,由于其中心特征和边缘特征相差较大,那么预测的centerness相差也相差较大才合理一下。因此,在对centerness进行表示时,考虑进目标尺度的影响非常重要。
本工作这里就简单的加了个尺度因子,目标相对原图的尺度越小,那么目标内部的centerness求出来的方差就越小;反之越大。最后结合Quality Focal Loss将分类分数和定位质量对齐。具体细节参考原文和代码,这里着重分析原因。

3.高斯中心匹配

针对问题3设计。另外,半监督任务设置中,标注数据本身有精确的人工标注,但数量较少,因此十分珍贵,如何充分利用这些高质量标签也很关键。本工作基于FCOS的标签匹配策略进行改进,FCOS会基于目标中心选一个半径较小的圆,忽略了边缘区域,对大长宽比目标十分不友好。本工作的改进思路是,将真值框内的点全部选为正样本,或者依据真值框的参数构建一个二维高斯表示,选取高斯分布内的点。经过实验,基于高斯的结果更好一些。

总结

以上是本人对遥感半监督目标检测的一些分析和方案,个人认为动机比较明确,但创新比较乏,好在性能不错。该工作历经两次投稿,第一次投了MM(对应Arxiv版本),分数5441(6满分)😭;第二次投了AAAI,顺利接受(7666,满分10)。这是本人第一篇科研工作,各位大佬的任何批评指正对本人接下来的科研认知都会产生正向作用,鞭策才能进步!

彩蛋

再来一些不足分析和未来展望作为彩蛋。本工作的分析都是基于单阶段目标检测算法的。单阶段和双阶段的区别很大程度上在于标签匹配策略,以Faster RCNN为例,其应用了最大IoU匹配策略,很大的特点在于设置了混淆样本。如图7所示,单阶段算法的特征图上的所有样本点全部会参与损失的计算,而且一个样本点要么是正样本,要么是负样本,因此对标签的质量要求极高,这也是为什么表1中Mean Teacher在FCOS上表现很差的核心原因,教师模型预测的旋转伪框的质量不足以支撑筛选高质量的正样本。而双阶段算法是基于区域进行学习的,在第一阶段和第二阶段训练时,会将区域分为三个部分:
正样本区域:在真值框周围匹配的一些高质量正样本区域,能够基本完全覆盖目标;
混淆样本区域:该区域属于是在目标附近但没完全覆盖目标的;
负样本区域:剩下的区域就为负样本区域,和目标基本八杆子打不着。
这三个区域中,正样本区域会提取出区域特征然后作为正样本,混淆样本区域不参与训练,而负样本区域会随机筛选一些提取特征当反面教材。由于混淆样本的设置,以及基于区域的学习,双阶段算法对伪标签召回率的要求并不高,只需要精度和定位质量高的伪标签即可,因为一些真实目标即使未被标注出来而判定为了负样本,那么从预设的上万个负样本中选几百个(原始设置为512)个负样本,选到它的概率微乎其微。因此,Mean Teacher算法在双阶段遥感目标检测器中可以带来正增长,可以作为接下来的研究动机。

在这里插入图片描述

图7. 红框代表真值框

另外,对于定位质量表示,在之后又细想了一下,其很可能和标签匹配策略正相关。即对于IoU-based算法,如RetinaNet,IoU大小是评判正负样本的标准,用IoU可能更合适;对于IoU-free算法,如FCOS,距离目标中心的距离是评判正负样本的标准,因此用centerness可能更合适。还未做实验,也可以研究(不过点太小了)。