1. 引言
近年来,随着深度学习的快速发展,诸如目标检测[1]-[4]等计算机视觉任务取得了重大突破。目标检测的主旨是对图像中感兴趣的目标进行识别和定位。现阶段许多训练有素的目标检测器已被证明可以实现良好的性能训练和数据测试。然而,目前数据处理依赖大量有标注的数据,而现实场景运用过程中很难满足这一条件。如果通过人工标注数据进行训练,则会消耗大量人力物力,造成社会资源的浪费。此外,由于源域(有标签)和目标域(无标签)在特征分布上有所差异,将在源域上训练好的模型用于目标域,往往取得较差的效果,这大大限制了目标检测器的通用性和可移植性,例如在不良天气条件下的自动驾驶等问题。如图1所示,第一行表示来自Cityscapes [5]的图片,第二行表示来自Foggy Cityscapes [6]的图片。两行的结果均由在Cityscapes上训练的传统Faster R-CNN [2]检测,可以看到在域偏移的Foggy Cityscapes上出现了大量漏检的现象。
Figure 1. Example of object detection effect in domain shift scenarios
图1. 域偏移场景下的目标检测示例图
为了解决上述问题,一些学者提出了无监督域自适应(Unsupervised Domain Adaptation, UDA)方法。UDA旨在学习可迁移的特征以缩小跨域的差异。在早期的工作中,通常采用的策略是最小化领域差异度量[7]-[9],即通过最小化两个领域分布差异,提取领域不变性特征。衡量两个领域间分布差异的标准包括最大均值差异(Maximum Mean Discrepancy, MMD) [8]、H-散度[10]和Wasserstein距离[11]。最近的工作通过添加领域分类器执行对抗性训练[12] [13],这种方法的思想源于生成对抗网络(Generative Adversarial Networks, GANs)。对抗域适应方法的训练过程实质上就是特征提取器与领域判别器的博弈过程:领域判别器通过学习来区分源域特征与目标域特征,而特征提取器通过学习具有领域不变性的特征表示来混淆领域判别器。
在过去的几年中,许多工作将UDA的思想扩展到目标检测任务。先前的目标检测领域自适应工作[14]-[17]在Faster R-CNN [2]模型的基础上设计了域自适应组件,通过对抗训练的方式分别在全局的图像级别和局部的实例级别减小领域差异。这类工作忽略了显著的类别级差异,导致了模型对目标的类别识别错误等问题。后续的工作[18]通过类别原型对跨域检测进行建模,并通过最小化领域的类原型之间的差异来实现类别级域适应。这种方法虽然强调了类别级差异,但直接对齐类原型的做法忽略了类内的差异,导致了次优的适应结果。最近的工作[19]通过构建语义完整的图来建模领域信息,并将域适应问题转化为图匹配问题,即通过在两个图之间建立成对的节点对应关系,实现图节点的一对一匹配,解决了现有类别级方法在语义不匹配和次优原型对齐方面的问题。此外,在过去的两年内,陆续有学者从师生模型、任务解耦以及特征分解等新的视角来研究域适应目标检测问题。
传统的域适应目标检测方法通常假设同时访问源域数据和目标域数据,但是在实际情况中,由于隐私原因(例如医疗数据不能公开),或者数据传输问题(例如数据集非常大),并不能获取到源域数据,而只能获取到源域训练好的模型。因此,无源领域自适应(Source-Free Domain Adaptation, SFDA)的研究受到了越来越多的关注,它只利用源域训练好的模型和未标记的目标域数据来完成源域到目标域的域适应,如图2所示。近年来,一些学者通过伪标签、自监督学习等方法建立SFDA框架,实现了无源域数据情况下的领域自适应目标检测。最近,约翰霍普金斯大学的研究团队首次建立online-SFDA,创新性地在离线和在线设置中适应和改进目标域上的泛化性能。
Figure 2. Comparison between UDA and SFDA
图2. UDA与SFDA的比较示意图
2. 经典的域适应目标检测算法
2.1. UDA目标检测
2.1.1. 基于Faster R-CNN的对抗域适应
2018年,Chen等人[14]首次在Faster R-CNN模型的基础上,设计了两个基于H散度理论的域自适应组件,分别在图像和实例级减小了域差异,并以对抗训练策略学习鲁棒的域不变特征,实现以端到端的方式训练目标检测模型。他们的模型DAF的网络架构如图3所示。在Faster R-CNN模型中,不同级别的领域分类器通过一致性正则化得到进一步增强,以学习领域不变的区域候选网络(Region Proposal Network, RPN)。DAF作为一个经典模型,虽然在一定程度上实现了域适应目标检测,但因其在图像级别只有一个域分类器,这使得模型在全局范围很难实现领域对齐,从而限制了跨域检测性能的提升。
Figure 3. Structure of DAF
图3. DAF网络架构图
2019年,He等人[15]针对不受限制的目标检测任务提出了一种多对抗Faster R-CNN框架MAF,如图4所示。该框架通过设计层次领域特征对齐模块和聚合候选特征对齐模块,固有地解决了在特征表示中用于域适应的域差异最小化问题。通过尺度缩减模块(Scale Reduction Module, SRM)实现在不损失信息的情况下缩减特征图,同时提高了MAF的训练效率。为了实现候选特征的域混淆,该框架提出了加权梯度反转层(Weighted Gradient Reversal Layer, WGRL)。它用较大的梯度权重惩罚难以混淆的样本,用较小的梯度权重放松容易混淆的样本。该框架弥补了DAF在图像级只有一个域分类器的不足,从而实现了更好的领域对齐。
Figure 4. Structure of MAF
图4. MAF网络架构图
同年,为了解决在全局图像级别将源域和目标域图像的整个分布彼此完全匹配可能会失败的问题,同时为了加强纹理和颜色等局部特征的强匹配,Saito等人[16]提出一种基于强局部对齐和弱全局对齐的检测器自适应方法SWF。该方法将对抗性对齐损失集中在全局相似的图像上,而不太强调对齐全局不相似的图像。
2020年,Xu等人[17]提出一个分类正则化框架来缓解以往域适应目标检测忽略匹配关键图像区域和跨域的重要实例的问题,它可作为即插即用的组件应用于一系列域适应Faster R-CNN方法。该框架通过利用图像级预测(通过分类器)和实例级预测(通过检测头)之间的分类一致性作为正则化因子来自动寻找目标域的硬对齐实例。
2021年,Rezaeianaran等人[20]提出了一种新颖的UDA算法ViSGA,通过对抗性训练对来自源域和目标域的候选的基于视觉相似性的分组进行对齐来做目标检测。此外,该算法针对如何诱导对齐问题,比较了使用对比损失和对抗性训练作为对齐机制的有效性。
以上方法旨在通过添加领域分类器,并通过其与特征提取器之间的对抗实现全局图像级和局部实例级领域差异的最小化。然而,这类方法忽略了源域和目标域显著的类别级差异,导致了模型对目标类别的误判。
2.1.2. 基于Faster R-CNN的类别级域适应
基于Faster R-CNN的类别级域适应方法旨在解决对抗域适应忽略领域类别差异的问题。2020年,Xu等人[18]提出了一个图诱导原型对齐框架GPA,通过精心设计的类别原型表示来执行类别级的领域对齐,如图5所示。具体地,他们首先通过基于图的信息传播聚集每个实例的关键信息;其次为类别级域对齐导出原型表示;最后通过增强类内紧密性和类间可分离性来执行类别级域对齐。此外,为了减轻类别不平衡对域适应的负面影响,该框架设计了类别加权对比损失来协调域适应的训练过程。GPA虽然强调了类别级差异的重要性,但其直接对齐类原型的做法,不可避免地会忽略某一类别的全局信息,使得模型生成次优的域适应结果。
Figure 5. Structure of GPA
图5. GPA网络架构图
2.1.3. 基于FCOS的像素级域适应
在域适应目标检测领域,全局特征上的图像级对齐可能同时混淆前景和背景像素,而使用实例级对齐可能会有背景噪声。2020年,Hsu等人[21]为解决上述问题提出了一个域自适应框架EPM,通过执行中心感知特征对齐,将更多的注意力放在前景像素上,减少了在自适应过程中由背景噪声引起的不利影响。不同于以前的方法,EPM首次尝试在像素级完成域适应目标检测,为细粒度的域适应提供了新的灵感。
2021年,Tian等人[22]提出知识迁移网络KT Net,KT Net构建在具有内在知识挖掘和关系知识约束的基础检测器上,如图6所示。该方法设计了一个由源域和目标域共享的前景/背景分类器来提取不同场景中目标的公共属性知识。通过对关系知识图进行建模,并在源领域、目标领域以及跨领域条件下显式约束类别相关性的一致性,检测器最终能够学习到与目标相关且与域无关的特征表示。
Figure 6. Structure of KT Net
图6. KT Net网络架构图
2022年,Li等人[19]为域适应目标检测提出了一个语义完整的图匹配框架SIGMA,如图7所示。该框架设计了一个嵌入图的语义完成(Graph-embedded Semantic Completion, GSC)模块,通过在缺失类别中生成幻觉图节点来补全不匹配的语义。然后,他们通过建立跨图像的图结构来模拟类别条件分布,并将域适应重新表述为图匹配问题。最后,该框架通过一种新颖的二分图匹配适配器(Bipartite Graph Matching, BGM)来实现细粒度的域适应。该框架弥补了现有类别级方法在简单直接的类原型对齐方面的不足,并首次将图匹配引入到像素级域适应问题中来,为域适应目标检测与图的结合提供了新的思路。
Figure 7. Structure of SIGMA
图7. SIGMA网络架构图
2023年,Li等人[23]在SIGMA的基础上提出了一个改进的语义完整图匹配框架SIGMA++,补全了不匹配的语义,并用超图匹配重新表达域适应。具体地,该框架提出了一个超图语义补全(Hypergraphical Semantic Completion, HSC)模块来生成不匹配类中的幻觉图节点。其次,该框架构建超图来建模类条件分布。最后,该框架通过二分超图匹配(Bipartite Hypergraph Matching, BHM)模块来实现细粒度的域适应。
2.1.4. 基于师生模型的域适应
利用师生模型来实现域适应是UDA目标检测的一个新策略。这里的平均教师(Mean Teacher, MT)最初是为半监督学习提出的。它由两个具有相同架构的模型组成,即一个学生模型和一个教师模型。学生模型使用标记数据作为标准进行训练,教师模型使用学生模型的指数移动平均(Exponential Moving Average, EMA)权重。教师模型通过使用基于未标记样本的蒸馏损失来加强教师和学生模型的一致性,然后引导学生模型更加稳定。在蒸馏过程中,通过向未标记的目标域样本添加一个小的扰动,并选择具有高概率的样本进行预测,以进一步增强模型的鲁棒性。因此,它适合应用于目标检测,以解决同时预测边界框和类别导致的目标检测模型对数据变化敏感的问题。
2021年,Deng等人[24]提出了一种新的无偏均值教师框架UMT。具体地,对于教师模型,该框架设计了一种跨域的机器翻译方法,以最大限度地利用教师模型的专业知识。此外,对于学生模型,该框架通过像素级自适应增加训练样本来减小其偏差。最后,对于教学过程,该框架采用一种非分布估计策略来选择最适合当前模型的样本,以进一步增强跨域蒸馏过程。
2022年,Li等人[25]提出了一个自适应教师框架AT,该框架利用领域对抗学习和弱–强数据增强来解决领域自适应问题。具体地,该框架在学生模型中采用特征级对抗训练,允许源域和目标域派生的特征共享相似的分布。这个过程确保学生模型产生领域不变的特征。此外,该框架在教师模型(从目标域获取数据)和学生模型(从两个域获取数据)之间应用弱–强数据增强和相互学习。这使得教师模型能够从学生模型学习知识,而不会偏向于源领域。
2.1.5. 基于任务解耦与特征分解的域适应
近年来,陆续有研究学者从任务解耦和特征分解的角度重新完成域适应目标检测。通过不同角度对任务进行解耦,模型可以在独立的任务空间中分别提升性能。此外,通过特征分解的方式,模型能够在全局和局部水平提高特征适应的能力,以更好地完成域适应目标检测。
2022年,Zhao等人[26]提出了特定于任务的不一致性对齐TIA,通过在独立的任务空间中开发新的对齐机制,以一种解耦的方式提高检测器在分类和定位这两个子任务上的性能。具体地,该方法为分类和定位分支添加了一组辅助预测器,并利用它们的行为不一致性作为更细粒度的特定于领域的度量。然后,通过单独优化特定于任务的损失来减小每个任务空间中的类别和边界差异。
同年,Jiang等人[27]提出一个解耦自适应框架D-adapt,将对抗性自适应和检测器的训练解耦。该框架通过引入参数独立的类别适配器将对抗性适应与检测器的训练分离。此外,该框架还引入了边界框适配器来提高定位性能,它与检测器和类别适配器都是独立的。
同年,Liu等人[28]设计了一个领域分解Faster R-CNN模型DDF,以消除检测任务特征学习中的源域特定信息。该方法设计了一个与领域判别器联合优化的全局三元组分解(Global Triplet Disentanglement, GTD)模块,通过三元组特征分解策略在全局水平上提高特征适应能力。此外,该方法基于实例对象的共享和私有特征之间的相似性正则化,提出了实例相似性分解(Instance Similarity Disentanglement, ISD)模块,进一步促进了特征在局部阶段的分解。
2.2. SFDA目标检测
在实际场景中,由于某些原因,我们并不能获取源域数据,只能获取到利用源域数据训练好的模型。因此,如何利用源域训练好的模型和未标记的目标域数据来完成域适应目标检测成为了学者们的研究焦点。无源领域自适应方法(SFDA)正是为上述问题提供了解决方案。最近,一些学者通过伪标签、自监督学习等方法建立SFDA框架,创新性地实现了无源域数据情况下目标域检测性能的提升。
2021年,Li等人[29]首次提出了一种无源数据的域自适应目标检测(Source Data-Free Domain Adaptive Object Detection, SFOD)框架,创新性地将无源域适应建模为一个带有噪声标签的学习问题,并使其可解。如图8所示,自熵下降(Self-Entropy Descent, SED)被用于在不使用任何手工标签的情况下,为可靠的伪标签生成搜索合适的置信度阈值。此外,针对标签去噪问题,该框架通过Mosaic数据增强进行假阴性挖掘与模拟,从而提升检测的性能。
Figure 8. Structure of SFOD
图8. SFOD网络架构图
同年,Huang等人[30]设计了一种创新的历史对比学习(Historical Contrastive Learning, HCL)技术,利用历史源假设来弥补源数据的缺失。首先,该方法引入历史对比实例判别(Historical Contrastive Instance Discrimination, HCID),通过对比当前适应模型和历史模型生成的嵌入,从目标样本中学习。其次,该方法引入历史对比类别辨别(Historical Contrastive Category Discrimination, HCCD),通过伪标记目标样本来学习类别可区分的目标表征。
2022年,Li等人[31]提出了一种新颖的学习忽略领域风格的方法LODS,通过强制模型忽略目标领域风格来减少域差异。该方法增强每个目标域图像的风格,并利用原始图像和增强图像之间的风格差异作为模型适应的自监督信号。通过将增强的图像视为辅助视图,利用一种学生教师架构来学习忽略相对于原始图像的风格差异。
2023年,约翰霍普金斯大学的研究团队[32]设计了一种新的对比损失,通过利用给定目标域输入的对象关系来增强目标表示。这些对象实例关系使用实例关系图(Instance Relation Graph, IRG)网络建模,然后用于指导对比表征学习。此外,该方法利用一个学生教师架构有效地从源域训练模型中提取知识到目标域。
同年,约翰霍普金斯大学的研究团队[33]提出了一种新颖的统一适应框架,该框架首次在离线和在线设置中适应和改进目标域上的泛化性能。具体地,该框架引入了MemXformer——一种基于交叉注意力转换器的记忆模块,其中记忆中的项目利用了域迁移并记录了目标分布的原型模式。此外,MemXformer产生强正负对来引导新的对比损失,这增强了目标特定的表征学习。
3. 域适应目标检测的常用数据集
在域适应目标检测领域,常用的数据集有Cityscapes、Foggy Cityscapes、Sim10k、KITTI、BDD100k、Pascal VOC、Clipart1k、Watercolor2k和Comic2k。接下来我们将按照常见适应场景对上述数据集进行分组介绍。
Cityscapes→Foggy Cityscapes。Cityscapes [5]是在晴朗天气条件下用车载相机拍摄的街道场景数据集,由训练集(2975张图像)和验证集(500张图像)组成,具有八类带注释的边界框。Foggy Cityscapes [6]是一个基于Cityscapes的带有雾天噪声的合成数据集。因此,两个数据集的图像和标注是兼容的。一般地,研究者将前者和后者分别作为源域和目标域,并且在这个适应场景中探索不同天气条件下的领域差异。
Sim10k→Cityscapes。Sim10k [34]是从视频游戏Grand Theft Auto V中获得的模拟数据集,包含10,000张合成图像,只有汽车这一个类,共有58,701个带注释的边界框。一般地,研究者将Sim10k、Cityscapes分别作为源域和目标域,并且在这个适应场景中探索合成数据与真实数据之间的领域差异。
KITTI→Cityscapes。KITTI [35]是从车载摄像机收集的真实世界交通场景数据集,由训练集(7481张图像)和验证集(7518张图像)组成,包含了汽车这一类别的带注释的边界框。研究者将KITTI、Cityscapes分别作为源域(或目标域)和目标域(或源域),并且在这个适应场景中探索不同相机设置条件下的两个真实数据集之间的领域差异。
Cityscapes→BDD100k。BDD100k [36]是一个大规模的城市景观数据集,包含来自不同城市的100,000张图像,涵盖六种天气,六种不同的场景,三种不同的时间段,具有十类带注释的边界框。在域适应场景实验中,研究者提取标记为daytime的子集,包括36,728张训练图像和5258张验证图像。一般地,研究者将Cityscapes、BDD100k分别作为源域和目标域,并且在这个适应场景中探索较小数据集到大规模数据集的适应。
Pascal VOC→Clipart1k/Watercolor2k/Comic2k。Pascal VOC [37]是一个真实世界数据集,包含2007和2012两个子集,共20个常见的类别和16,551张图像。Clipart1k、Watercolor2k和Comic2k [38]是带有抽象、艺术和滑稽风格的图像数据集。Clipart1k包含1000张图像,并与Pascal VOC共享20个类别。Watercolor2k和Comic2k分别包含2000张图像(1000张训练图像和1000张测试图像),并与Pascal VOC共享6个类别,即自行车、汽车、鸟、猫、狗和人。一般地,研究者将Pascal VOC作为源域,Clipart1k、Watercolor2k和Comic2k分别作为目标域,并且在这三组适应场景中探索真实世界图像与艺术风格图像之间的领域差异。对于Pascal VOC→Clipart1k,主流的设置是利用所有Clipart1k图像作为未标记目标域以完成训练和测试;对于Pascal VOC→Watercolor2k/Comic2k,研究者使用1000张图像作为训练集进行训练,并使用1000张图像作为测试集进行评估。
4. 研究展望
近年来,随着深度神经网络的迅速发展,目标检测等计算机视觉任务取得了极大的突破。由于在实际应用过程中领域偏移的存在,领域自适应目标检测技术也随之应运而生。现有的域适应目标检测方法在Faster R-CNN、FCOS等经典的目标检测器上执行不同粒度(包括图像级、实例级、类别级以及像素级)的领域对齐。尽管取得了一定的成果,但由于域差异的影响,跨域检测仍面临着一些难以解决的挑战。
在域适应目标检测领域,不利天气条件下的检测是最为常见的场景实验。在这组实验中,研究者通常将在晴天拍摄的图像作为源域,将雾天的图像作为目标域。但由于微小的尺度(长距离)和低质量的外观(大雾)导致的较差的视觉特征,模型可能会遗漏和错误地检测到一些被大雾遮挡的远处物体。因此,如何提升较大域差异场景下跨域检测模型的性能是一个具有潜力的发展方向。此外,如何提升跨域小目标的检测性能也是一个值得探讨的问题。
通常,域适应目标检测有一个前提条件,即源域和目标域的类别标签一致,只有数据分布不一致。然而在实际应用中很难满足两个域的类别标签一致的条件,尤其是目标域中存在源域没有的类别这种情况。如何在上述情形中提升域适应目标检测器的性能同样是一个具有潜力的发展方向。
经典的域适应目标检测问题通常假设只有一个目标域且目标域样本已知,但实际情况往往更加复杂,即需要将源域上训练好的模型同时迁移到多个目标域,或者实现目标域样本未知情况下的领域泛化。因此,如何实现分布差异较大的多目标域情形下的领域自适应是未来需要克服的一个难题。此外,如何更好地进行领域泛化也是一个极具潜力的发展方向。
近年来,深度学习的发展日益迅速,随之诞生了许多卓越的方法与机制,如强化学习、注意力机制等。强化学习通过奖励和惩罚两种方法来训练一个智能体,最终让这个智能体能够根据实际环境自主做出决策。将强化学习应用于域适应目标检测中,无疑能够实现智能决策和模型优化。如何通过引入奖励机制,并指定一个合适的奖励函数来提高域适应目标检测模型的性能是一个发展潜力巨大的研究方向。此外,注意力机制可以帮助模型更好地关注重要的特征和区域。将注意力机制与域适应目标检测相结合,有利于提高模型在不同领域的适应能力,同样具有潜在的发展空间。
现阶段的域适应目标检测通常被应用于不同天气、不同相机设置、从合成图像到真实图像以及从真实世界图像到艺术风格画作等的场景适应。在未来,跨域目标检测方法应当尝试被应用于更多领域,如自动驾驶、医疗影像等。扩大域适应目标检测的应用范围,并在推广过程中根据不同场景实现模型的最佳性能,是一个值得继续深入研究的问题。
在实际应用中,目标检测系统可能面临对抗攻击,如何提升域适应目标检测系统的鲁棒性、对抗攻击能力,是一个重要的挑战。此外,在某些场景下,对于域适应目标检测系统可能需要实时性和高效性能,如何提高算法的处理速度和效率也是一个挑战。
在未来的研究中,我们需要解决上述挑战,不断提升域适应目标检测的准确性、鲁棒性和通用性,推动该领域向更加成熟和完善的方向发展,为实际应用场景提供更好的解决方案。
致 谢
衷心感谢所有为本研究提供帮助与支持的学者、专家、组织和机构。
NOTES
*通讯作者。