自学内容网 自学内容网

论文精读:通过目标感知双分支蒸馏的跨域目标检测(CVPR2022)

原文标题:Cross Domain Object Detection by Target-Perceived Dual Branch Distillation

中文标题:通过目标感知双分支蒸馏进行跨域目标检测

论文地址: https://arxiv.org/abs/2205.01291

代码地址: GitHub - Feobi1999/TDD

这篇文章是由中科院深圳先进研究院、商汤科技研究院、北航等机构发布的

1、摘要

跨域目标检测是一项现实且具有挑战性的任务。由于数据分布的大幅偏移和目标域数据缺乏详细的标注信息,跨域目标检测性能往往不尽人意。为了解决这个问题,作者提出了一种新颖的目标感知双分支蒸馏(TDD)框架。通过将源域和目标域的检测分支集成在统一的师生学习方案中,可以有效地减少域漂移,并产生可靠的监督。首先在两个域之间引入一个不同的目标提案感知器,它通过迭代交叉注意来促使目标感知上下文,自适应增强源检测器对目标图像中的目标的感知能力。随后设计了一种简洁的双分支自蒸馏策略用于模型训练,该策略可以通过两个分支的自蒸馏逐步集成来自不同领域互补对象的知识。最后对跨域目标检测中的许多广泛使用的场景进行了广泛的实验,结果表明,作者的 TDD 在所有基准测试中都显著优于最先进的方法。

2Introduction

2.1、跨域目标检测面临的挑战和困难

在先进的深度神经网络的帮助下,目标检测取得了显著的成功;然而在自动驾驶和移动机器人等现实应用中,它仍然面临挑战;由于天气、照明、物体外观等各种条件,数据差异往往很大。 因此近年来,跨域目标检测受到了广泛的关注;这个问题有两个难点。首先,目标检测更容易受到域漂移的影响;其主要原因是目标检测侧重于实例级预测,对各种图像风格和内容的目标变化更为敏感。其次,目标标注信息的获取成本和劳动强度较高,导致在新领域中缺乏对目标有监督式判别。这两者都不可避免地降低了目标域的检测性能。

2.2、现有方法的瓶颈和局限

近年来,人们提出了几种跨域目标检测方法;遗憾的是它们大多集中在域漂移或标签上的缺陷,这限制了它们在跨域目标检测中的能力。例如,领域自适应domain adaption方法提出通过对抗性训练来减少领域漂移;在这种对抗设计中,除了模型优化不稳定外,网络的识别能力也受到限制;如下图1所示,基于对抗性的GPA往往会对目标域特征显著的区域产生错误的预测。半监督方法UBT缺乏对雾中物体的感知,而基于对抗性的GPA试图识别雾中的物体,但给出了一些错误的预测,例如第一排是摩托车,第二排是人。作者的方法可以更准确地预测边界框和物体类别。

基于自训练的方法从半监督学习的角度研究问题,并提出通过标签蒸馏生成伪对象监督。通过这种方式,许多先进的半监督方法可以转移到这个任务中。然而这些方法往往不足以处理复杂的领域转移,像UBT这样的半监督方法很难感知目标域中的目标,因此这两种解在跨域目标检测中都不能令人满意。

2.3、本文提出的方法

在此基础上,作者提出了一种新的目标感知双分支蒸馏(TDD)框架,该框架可以在简洁的双分支检测网络中通过对象感知和知识蒸馏有效地解决领域转移和标签缺陷问题。具体来说,该的网络由一个源自适应分支(source-adaptive branch)和一个类目标分支(target-like branch)组成,这两个分支都被精心设计以面向目标来减少域转移。对于源自适应分支,作者引入了一个独特的目标提案感知器(distinct Target Proposal Perceiver),它利用迭代交叉注意力(iterative cross-attention)来发现每个提案的目标域上下文;它可以自适应增强源分支以感知目标域图像中的对象。对于类目标分支,将源域的图像转换为类目标域的图像,通过使用这些已标注的图像训练该分支,可以可靠地学习目标域的判别性目标知识。最后,作者设计了一种简明的双分支自蒸馏网络训练策略,这是一个定制的mean-teacher风格框架,用于从源自适应分支和类目标分支生成目标域图像的伪标签注释。通过以上精心设计的三个训练步骤,即联合域预训练跨域蒸馏双教师提炼,我们可以逐步整合来自不同领域的互补目标知识,以促进跨领域目标的检测。

2.4、本文贡献

综上所述,本文有以下贡献。首先,作者开发了一种新颖的目标感知双分支蒸馏(TDD)框架,该框架利用两个不同的检测分支通过统一的师生学习方式来解决域漂移和标签缺陷问题。其次,作者引入了一个智能目标提案感知器模块,它可以通过提案上下文中的交叉注意转换器自适应地引导源检测分支感知目标域对象。最后,作者对许多广泛使用的基准进行了广泛的实验,本文的 TDD 大大优于最先进的方法。

3、Related Work

3.1、目标检测

目标检测(Object detection)是计算机视觉的基本任务之一。近年来,在深度神经网络强大的表示能力的推动下,目标检测取得了良好的性能。以往的工作大致可分为两级和单级探测器。最近,一些基于无锚(anchor-free)和transformer的方法也在检测任务中脱颖而出。

3.2、跨域目标检测(Cross domain object detection)

首先,有研究提出图像和实例层域分类器,通过对抗学习的方式实现特征对齐。在此基础上,有研究分别针对局部特征和全局特征实施强-弱对齐策略(strong-weak alignment strategy)。有研究采用多级域特征对齐(multi level domain feature alignment)。也有研究在多标签分类模型的帮助下,利用图像级和实例级预测之间的分类一致性。还有研究提出了一种中心感知特征对齐(center-aware feature alignment)方法,允许判别器聚焦于来自目标区域的特征。其他一些研究在对抗性学习阶段增加了额外的限制或者强调处理前景和背景特征的不同策略。

另一种主流方法致力于解决目标域标注不准确的问题。有研究使用目标域中的原始标记数据和经过精炼改进的机器生成伪标签来重新训练目标检测器。有研究从半监督学习的角度出发,并将目标之间的关系融入师生模块一致性成本的度量中。也有研究提出了一种同时利用类源(source-like)图像和类目标(target-like)图像的跨域蒸馏(cross-domain distillation)方法,它采用软标签和实例选择的方法来解决Mean-Teacher中的模型偏差;与之不同的是,作者的方法提出了一个双分支框架和一个跨领域感知器,用于师生相互学习。

3.3、半监督目标检测(Semi-supervised object detection)

当训练集只有一部分注释时,半监督目标检测试图解决这个问题。在此背景下,有研究提出了一种基于一致性的方法,强制输入图像及其翻转版本之间保持预测一致性。有研究使用少量已标注的数据预先训练检测器,并在未标注数据上生成伪标签来微调预训练检测器。有研究提出了采用强增强和弱增强来改进平均教师法,通过EMA训练可以得到更准确的伪标签。这些方法由于数据集相似,可以很容易地应用于跨域目标检测问题,但它们没有考虑到数据域之间的差异性,这不可避免地限制了它们的检测性能。

4、Proposed Methods

4.1、Overview

如下图所示,作者提出了一个新的目标感知双分支蒸馏框架(TDD),它同时解决了跨域目标检测任务中域漂移和缺乏标注信息的问题。

首先,作者从输入图像的角度介绍了一个风格迁移(Style Transfer)模块,它用于将源域图像转换为类似目标域的样式,从而可以通过这种类似目标域的迁移域来弥合领域差距。此外,由于类目标域图像继承了相应源域图像的标签注释,因此可以在类目标域中用作额外的目标监督。在本文中主要使用一种简洁有效的傅立叶变换方法作为该模块。

其次,从模型体系架构的角度设计了一种新型的双分支检测网络。通过这种设计,可以有效地从不同的领域提取互补的目标知识,从而提高目标图像上的目标检测性能。该网络由一个共享权重的提案提取器(proposal extractor)和两个单独的检测分支组成;前者允许构造所有图像的域不变特征空间,用于域泛化;而后者保留了每幅图像的域特定目标特征,用于域区分;具体两个检测分支分别是源自适应(Source-Adaptive,SA)分支和类目标(Target-Like,TL)分支;作者使用源域图像的提案来训练SA分支,同时用类目标域图像的提案来训练TL分支;此外,将真实目标域图像的提案发送到两个分支中,以便从源域和类目标域学习对象知识。但是源域可能与目标域有很大不同,在这种情况下,如果没有任何面向目标域的引导,就无法在 SA 分支中准确地检测到目标域图像的提案。为了解决这个问题,作者设计了一种新颖的目标提案感知器(Target Proposal Perceiver),它巧妙地在两个分支中的提案特征之间使用迭代交叉注意;在这种情况下,作者利用TL分支的上下文提案作为指导,可以有效地指导SA分支感知目标域中的目标提案。

最后,作者从有监督的角度介绍了一种简洁的双分支自蒸馏方法。如前所述,目标域中的所有图像都没有任何标注信息,因此在目标域产生可靠的监督是至关重要的。由于双分支网络可以从SA和TL分支的协同合作中构造出每个目标域图像的鉴别伪标签,为了有效地利用这些伪标签,自蒸馏是基于师生相互学习的,它可以在训练过程中动态调整教师分支,逐步提高两个分支的目标域监督。

4.2、Target Proposal Perceiver(目标提案感知器)

将每个目标域图像的提案特征分别输入到 SA 和 TL 分支,以便从两个领域学习目标知识;然而由于源域和真实目标域之间的巨大偏移,SA分支并不擅长利用这些特征来检测目标。为了指导 SA 分支发现目标域对象,作者在 SA 分支和 TL 分支之间提出了一种新的Target Proposal感知器,它可以逐步利用 TL 分支中的目标上下文来增强SA分支中的 Proposal 特征。与通用的感知器架构不同,作者的目标提案感知器是为跨域目标检测精心定制的,通过迭代使用 Transformer 风格的交叉注意来减少实例级别的域转移。

如上图所示,将目标域图像 Xt 输入提案提取器,生成其提案特征 Pt。随后将这些提案特征 Pt 分别放入 SA 和 TL 分支,其中 Target Proposal Perceiver 利用交叉注意力来处理它们,如下所示:

首先,为了从 SA 和 TL 分支中提取目标知识,作者使用 FC 层 FSA(.)FTL(.) 将提案特征 Pt 编码为源特征 ΦSA 和类目标特征 ΦTL。其次,作者在Eq.(3)中引入了 ΦSAΦTL 之间的新型多头提案交叉注意(Multi-Head Proposal Cross Attention,MHPCA);它可以利用目标的提案特征 ΦTL 作为上下文指导,增强源提案特征 ΦSA 以感知目标域图像中的目标。

4.2.1、Proposal Cross Attention(提案交叉注意力)

1具体来说,本文的MHPCA是一个简洁的带有Query-Key-Value的Transformer样式。在每个交叉注意头中,我们使用FC层将 ΦSA 编码为Query,并将 ΦTL 编码为Key和Value;利用Key和Query之间的相似度来发现ΦSAΦTL 之间的密切关系;然后将这种密切关系作为指导来聚合类目标特征 V(ΦTL) 作为 SA 分支的跨域上下文。注意力计算公式如下:

其中,Q(ΦSA)表示第 i 个源域提议特征 ΦSA 编码后的查询向量Query;K(ΦTL)表示第 i 个目标域提案特征 ΦTL 编码后的键向量Key;V(ΦTL)表示第 i 个目标域提案特征 ΦTL 编码后的值向量Value;HTL 表示通过交叉注意力机制从目标域聚合的上下文信息,这些信息将被用来增强源域的提议特征,使其更好地适应目标域;W是一个相似度函数,它计算Query和Key之间的相似度,在Transformer中,这通常是缩放点积,然而作者考虑到一个目标检测问题,认为空间位置信息对于描述提案之间的相似性可能是重要的;因此作者在本文中使用了几何权重(geometry weight)来描述任意两个提案边界框bbox之间的位置相似性。

2)Ai,j表示在 MHPCA 中,第 i 个查询(Query)和第 j 个键(Key)之间的基本相似度得分Ai,j​ 的值越大,表示第 i 个源域查询和第 j 个目标域键越相似,这个基本相似度得分随后会被用来计算注意力权重,进而影响目标域上下文信息的聚合。

3)Wi,j 表示第 i 个源域查询(Query)和第 j 个目标域键(Key)之间的加权相似度得分。这个加权相似度得分是通过将基本相似度得分 Ai,j 与一个几何权重 Ui,j 相乘得到的。几何权重 Ui,j​ 用于描述两个提议框之间的空间位置相似性。作者使用几何权重U来增强特征相似度Ai,j,并通过softmax的加权公式来描述Eq.(4)中的提案相似度W。exp(Ai,j​​) 是 Ai,j 的指数函数,用于将基本相似度得分转换为一个非负值,这个值可以用于后续的softmax归一化。

4.2.2、Iterative MHPCA(迭代多头提案交叉注意力)

在每个交叉注意力头上获得类目标分支的上下文信息 HTL 后,使用 FC 层 G(.) 来汇总 L 个注意力头产生的所有上下文信息。这一步将多个注意力头产生的信息合并,以形成一个综合的上下文表示。将汇总后的上下文信息与源域的提案特征 Φ𝑆𝐴 结合,形成增强后的源域提案特征 Ψ𝑆𝐴它包含了目标域的上下文信息。这个过程可以表示为 ΨSA = ΦSA + G([H(1)TL, ...  ..,H(L)TL])。在这种情况下,作者将源提案特征ΦSA增强为目标域感知特征ΨSA,从而使SA分支能够感知目标域图像中相关的目标上下文。最后,通过迭代应用MHPCA两次,目标提案感知器(Target Proposal Perceiver)可以逐步地利用来自TL分支的目标域上下文信息,以增强SA分支的学习能力。这种迭代机制使得模型能够更深入地理解和适应目标域的特征。

4.3、Dual-Branch Self Distillation(双分支自蒸馏)

本节将解释如何训练网络来进行跨域目标检测。如前所述,图像在目标域中是未标记的,因此为这些图像生成可靠的伪标注对于有效的训练是至关重要的。为了实现这一目标,作者设计了一种通用的双分支自蒸馏方法,该方法可以从SA分支和TL分支生成伪标签,通过自训练来协同增强检测网络。具体来说,它基于师生相互学习,但对跨域目标检测进行了精心设计。如下图所示,它包括三个关键阶段,即联合域预训练、跨域蒸馏和双师精化。

4.3.1、Joint-Domain Pretraining(联合域预训练)

该阶段是为了生成可靠的双分支网络初始化。如前所述,类目标域的图像具有从源域图像继承的注释,因此我们通过联合源域和类目标域的标记图像进行多任务学习,来预先训练双分支网络。这一阶段的训练损失函数包括三个阶段:

1首先,在所有域(源域、目标域和类目标域)之间共享RPN,生成域不变特征;使用源域数据和类目标域数据来训练该模块,

L(S+TL) RPN = LRPN(XS,YS) + LRPN(XTL,YTL),其中 RPN 损失包含Faster RCNN中的RPN分类和回归损失。

2然后,使用不同的检测分支来学习不同领域的特定目标知识。分别使用源域数据和类目标域数据训练SA和TL分支,

L(S)SA = LSA(XS,YS)L(TL)TL = LTL(XTL,YTL),其中每个分支损失包含Faster RCNN中的ROI分类和回归损失。

4.3.2、Cross-Domain Distillation(跨域蒸馏)

在联合域预训练之后,我们利用良好初始化的网络在目标域中生成未标记图像的伪标签。如上图所示,这一阶段是一个简明的自蒸馏过程,其中教师和学生都基于双分支网络。具体来说,将目标域图像提供给固定且训练有素的教师,该教师可以从SA和TL分支生成对应图像的伪标签;接着使用NMS去除重复的bbox,设置一个阈值,以获得预测置信度较高的bbox作为每个分支中该目标图像的伪标签。最后将目标图像输入到可学习的学生中,并通过教师的伪标签对学生进行训练。这一阶段的训练损失函数包括三个阶段:

1由于伪标签ˆYtSAˆYtTL分别来自SA和TL分支,因此RPN损失包含两个项L(t)RPN = LRPN(Xt, ˆYtSA) +LRPN(Xt, ˆYtTL

2此外,SA分支和TL分支也使用目标域图像的伪标签进行训练,即:L(T)SA = LSA(Xt, ˆYtSA) L(T)TL = LTL(Xt, ˆYtTL)。

此外,增加学生的多样性对于之后完善教师也很重要。对于每个目标域图像,我们用它的强增强作为学生的输入来预测目标框,同时用它的弱增强作为教师的输入来提供可靠的伪标签。最后,在此阶段通过Eq.(6)用源域图像和类目标域图像训练学生网络,以减少两个检测分支的学习难度。

4.3.3、Dual-Teacher Refinement(双教师精化)

为了生成更稳定的伪标签,作者通过指数移动平均线(EMA)逐步从学生提炼出教师。

其中,ΘteacherΘstudent是教师模型和学生模型中的可学习参数。请注意,我们以迭代的方式执行蒸馏和细化,这可以通过师生相互学习来提高跨域目标检测的性能,即教师生成伪标签来训练学生,学生传递它学习到的内容来更新教师。

4.4、小结

最后,我们解释如何在此过程中训练目标提案感知器。我们只在最后两个阶段训练它。在跨域蒸馏阶段,我们使用预训练网络作为教师模型,并使用带有随机初始化的目标提议感知器的预训练网络作为学生模型。经过本阶段的多次训练迭代,可以获得训练有素的目标提案感知器。随后,在细化阶段,从整个学生网络中更新教师,其中所有模块都经过充分训练。而且,Target Proposal Perceiver 只是在训练阶段用来指导SA分支。在双分支框架下,在推理过程中仅使用SA分支教师来获得检测结果,因为它已经被学生和 TL 分支很好地完善了。

5、Experiments

在本节中,作者对具有明显域偏移的主流跨域目标检测基准进行了实验,包括不利天气条件自适应(Adverse Weather Conditions Adaptation)、合成到真实自适应(Synthetic to Real Adaptation)和跨相机自适应(Cross Camera Adaptation)。

5.1、Implementation details(实现细节)

作者采用在ImageNet上预训练的VGG16和ResNet50作为Faster R-CNN的backbone。每个输入图像的较短边缘被调整为600像素。网络由SGD优化器训练,权重衰减为0.0005,动量为0.9。所有实验的学习率和最大训练迭代分别为0.01和25000次,其中联合域预训练阶段为9000次,跨域蒸馏和双师细化阶段为16000次。使用Focal-loss作为分类损失,在整个训练阶段都使用强弱增强(strong-weak augmentations)。设置多头交叉注意力头数为L=16。提案特征分别通过三个FC层编码为Key-Query-Value,输出维度=1024。在傅里叶变换模块中设置频率参数β = 0.1。获取目标图像伪标签的阈值设置为0.7。在双教师细化阶段,设置EMA比率α = 0.9996来更新教师模型。

5.2、Adverse Weather Conditions Adaptation(恶劣天气的自适应)

5.2.1、Datesets

在本实验,以城市景观 Cityscapes 为源域,雾蒙城市景观 Foggy Cityscapes 为目标域,实现了恶劣天气条件下的适应(C→F)。Cityssasa是包含3,475张图像的真实城市场景数据集,2,975张图像用于训练,其余500张用于验证。Foggy Cityscapes是由城市景观生成的合成数据集,本实验使用强度最高的雾级(β = 0.02)。使用Cityssasa的列车子集图像和未标记的Foggy Cityscapes列车子集图像进行训练,使用Foggy Cityscapes验证集进行评估。

5.2.2、Results

检测结果如下表1所示。Source only表示仅使用源域数据训练的Faster RCNN模型。Oracle(tgt)模型使用已标记的目标域数据进行训练。Oracle(src+tgt)模型使用来自源域和目标域的已标记数据进行训练。为了公平比较,将采用相同主干实现的方法进行了比较。对于基于vgg的方法,最先进的MeGA实现了41.8%的mAP,而作者的结果TDD显示了+1.3%的显著提高。对于基于resnet50的方法,TDD优于所有先前的工作,并获得+1.4%的显着mAP增益。值得注意的是,作者的方法展现出了能与两个oracle模型相竞争的性能。结果表明,该模型能够在感知目标领域知识的同时,保留源领域的有用信息进行区分。

5.3、Synthetic to Real Adaptation(合成图像到真实图像的适应)

5.3.1、Datesets

在本实验是TDD模型从合成数据到现实世界的适应例子。Sim10k 用作源域数据集,Cityscapes 表示目标域(S→C)。SIM10K 是一个包含 10,000 张图像的模拟数据集。本实验仅在普通类“汽车”上训练检测器。使用整个数据集 Sim10k 和未标记的 Cityscapes 训练集进行训练,使用 Cityscapes 的验证集进行评估。

5.3.2、Results

汽车的mAP检测结果见下表2。可以看到本文提出的TDD方法可以在两个不同的领域之间实现最先进的性能。它比基于 vgg 的 EPM 和基于 resnet50 的 SFA 分别高出+4.4%和+10.7%,表明作者的方法在解决领域适应问题方面具有稳定的能力。

5.4、Cross Camera Adaption(跨相机的适应)

5.4.1、Datesets

作者对KITTI、cityscape和BDD100k数据集进行了两个跨相机自适应实验。在第一个实验中,作者从KITTI调整到城市景观,其中只使用汽车类别进行评估(K→C)。KITTI是一个类似于cityscape的场景数据集,但是具有不同的相机设置,它由 7,481 个用于训练的标记图像组成。在第二个实验中,作者从 Cityscapes 适应到 BDD100K (C→B),这是一个更具挑战性的工作,具有更多类别和场景。BDD100k 的白天子集用作目标域,包括 36,278 个训练图像和 5,258 个验证图像。

5.4.2、Results

KITTI适应结果如上表2所示。TDD性能比基于VGG的sota方法CoT高3.8%,比基于ResNet50的方法GPA高1.9%。同时,BDD100K 的结果总结如下表3所示。TDD大幅超越了之前的所有工作。这证明了本文方法在更复杂的情况下表现得很好。此外还观察到基于ResNet50主干的明显改进,将仅源结果提高了9.8%。进一步验证了该方法的稳健性。

6、Conclusion

在这项工作中,作者提出了一个新的目标感知双分支蒸馏框架。通过目标建议感知器和双分支自蒸馏过程,共同解决了跨域目标检测中的域移位和标记不足问题。最后在多个基准上进行了广泛的实验,结果清楚地表明本文的TDD超越了现有的最先进的模型。


原文地址:https://blog.csdn.net/m0_63294504/article/details/142907142

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!