Multi-source Domain Adaptation for Semantic Segmentation

摘要

 用于语义分割的实域自适应仿真已被积极研究用于自动驾驶等各种应用。现有的方法主要集中在单个源设置上,无法轻松处理具有不同分布的多个源的更实际的场景。在本文中,我们建议研究用于语义分割的多源域自适应。具体来说,我们设计了一个新的框架,称为多源对抗域聚合网络(MADAN),它可以以端到端的方式进行训练。首先,我们为每个源生成一个具有动态语义一致性的自适应域,同时在像素级循环上一致地对准目标。其次,我们提出了子域聚合鉴别器和跨域循环鉴别器,以使不同的适应域更紧密地聚合。最后,在训练分割网络的同时,在聚合域和目标域之间进行特征级对齐。从合成的GTA和SYNTHIA到真实的城市景观和BDDS数据集的大量实验表明,所提出的MADAN模型优于最先进的方法。

1、简介

语义分割为图像中的每个像素分配语义标签(例如,汽车、骑自行车的人、行人、道路)。该计算机视觉内核在许多应用中发挥着至关重要的作用,从自动驾驶[1]和机器人控制到医学成像和时尚推荐。随着深度学习,特别是卷积神经网络的出现,已经提出了几种端到端的语义分割方法。尽管这些方法取得了有希望的结果,但也存在一些局限性。一方面,训练这些方法需要具有像素级注释的大规模标记数据,这是非常昂贵和耗时的。例如,在Cityscapes数据集中标记每个图像大约需要90分钟。另一方面,由于存在领域偏移或数据集偏差,他们无法很好地将所学知识推广到新的领域。

为了避免数据收集和注释的成本,由于图形和模拟基础设施的进步,可以从CARLA和GTA-V等模拟器中创建无限量的合成标记数据。为了缩小不同领域之间的差距,通过理论分析和算法设计,提出了领域自适应(DA)或知识转移技术。除了标记源域上的传统任务损失外,深度无监督域自适应(UDA)方法通常使用另一种损失进行训练,以处理域偏移,如差异损失、对抗性损失、重建损失等。当前用于语义分割的模拟到真实DA方法都集中在单个源设置上,而没有考虑从具有不同分布的多个源收集标记数据的更实际的场景。简单地将不同的源组合成一个源并直接使用单个源DA可能不能很好地执行,因为来自不同源域的图像在学习过程中可能会相互干扰。

早期对多源DA(MDA)的研究使用了浅层模型。最近,有人提出了一些只关注图像分类的多源深度UDA方法。由于以下原因,将这些MDA方法从分类直接扩展到分割可能无法很好地执行。(1) 分割是一项结构化的预测任务,其决策函数比分类更为复杂,因为它必须在指数大的标签空间中解决预测[48,71]。(2) 目前的MDA方法主要集中在特征级对齐上,只对齐高级信息。这对于粗粒度的分类任务来说可能足够了,但对于执行逐像素预测的细粒度语义分割来说显然不够。(3) 这些MDA方法只对齐每个源和目标对。尽管不同的来源与目标相匹配,但不同来源之间可能存在显著的错位。
为了应对上述挑战,在本文中,我们提出了一个新的框架,称为多源对抗域聚合网络(MADAN),它由动态对抗图像生成、对抗域聚合和特征对齐的语义分割组成。首先,对于每个源,我们使用具有周期一致性损失的生成对抗性网络(GAN)生成一个自适应域,该域强制源图像和目标图像之间的像素级对齐。为了保持图像翻译前后的语义,我们提出了一种新的语义一致性损失,通过最小化训练的分割模型的源预测和动态分割模型的自适应预测之间的KL差异。其次,我们没有为每个源域训练分类器,而是提出了一个子域聚合鉴别器,以直接使不同的自适应域不可区分,以及一个跨域循环鉴别器来区分来自每个源的图像和从其他源传输的图像。这样,不同的适应域可以更好地聚合到一个更统一的域中。最后,基于聚合域训练分割模型,同时在聚合域和目标域之间实现特征级对齐。

总之,我们的贡献有三方面。(1) 我们建议对来自多个来源的语义分割进行领域自适应。据我们所知,这是关于多源结构化领域自适应的第一项工作。(2) 我们设计了一个名为MADAN的新框架来进行语义分割的MDA。除了特征级对齐之外,还通过为每个源循环生成一个自适应域来进一步考虑像素级对齐,该域与新的动态语义一致性损失保持一致。提出了子域聚合鉴别器和跨域循环鉴别器,以更好地对齐不同的自适应域。(3) 我们从合成的GTA和SYNTHIA到真实的Cityscapes和BDDS数据集进行了广泛的实验,结果证明了我们提出的MADAN模型的有效性。

2、问题设置

 我们考虑无监督MDA场景,其中有多个标记源域,其中M是源域的数量,一个未标记的目标域T。 在第i个源域S_i中,假设是从源分布中提取的观测数据和相应标签,其中N_iS_i中的样本数。在目标域T中,设表示从目标分布中提取而没有标签观测的目标数据,其中N_T是目标样本数。除非另有说明,否则我们有两个假设:(1)同质性,即,表明在同一图像空间中观察到来自不同域的数据,但具有不同的分布;(2) 闭集,即。其中Y是标签集,这意味着所有域共享相同的类空间。基于协变量移位和概念漂移,我们的目标是学习一个适应模型,该模型可以正确预测来自训练于的目标域的样本标签。

3、多源对抗域聚合网络

在本节中,我们介绍了所提出的用于语义分割自适应的多源对抗域聚合网络。该框架如图1所示,由三个组成部分组成:动态对抗图像生成、对抗域聚合和特征对齐语义分割。DAIG旨在从视觉外观的角度生成从源域到目标域的自适应图像,同时利用动态分割模型保留语义信息。为了减少自适应域之间的距离,从而生成更聚合的统一域,提出了ADA,包括跨域循环鉴别器和子域聚合鉴别器。最后,FSS以对抗性的方式在特征级别学习域不变表示。表1将MADAN与几种最先进的DA方法进行了比较。

3.1、动态对抗图像生成

DAIG的目标是使来自不同源域的图像在视觉上与目标图像相似,就好像它们是从相同的目标域分布中绘制的一样。为此,对于每个源域S_i,我们引入生成器映射到目标T,以便生成欺骗D_T的自适应图像,D_T是像素级对抗性鉴别器。D_T与每个同时训练,以从自适应图像中对真实目标图像X_T进行分类。相应的GAN损失函数为:

                

由于映射是高度约束的,我们使用逆映射以及循环一致性损失,以加强,反之亦然。同样,我们引入了D_i来将X_i中分类,具有以下GAN损失:

                

  循环一致性损失[39]确保所学习的映射是循环一致的,从而防止它们相互矛盾,定义为:

                

自适应图像预计包含与原始源图像相同的语义信息,但语义一致性仅部分受到循环一致性损失的约束。CyCADA中提出的语义一致性损失是为了更好地保存语义信息。都被输入到预处理的分割模型F_i(X_i, Y_i)。然而,自从来自不同的域,使用相同的分割模型(即Fi)来获得分割结果,然后计算语义一致性损失可能对图像生成不利。理想情况下,调整后的图像应该输入到针对目标域训练的网络F_T中,这是不可行的,因为UDA中没有目标域标签。不是在上使用F_i,我们建议动态更新网络F_A,它采用作为输入,使其最佳输入域(网络性能最佳的域)从F_i逐渐变为F_T。我们使用在自适应域上训练的任务分割模型F作为F_A,即F_A = F,这具有两个优点:(1)成为F_A的最佳输入域,当F被训练为在目标域上具有更好的性能时,F_A后的语义损失将促进来生成在像素级别上更接近目标域的图像;(2) 由于F_AF可以共享参数,因此不引入额外的训练或内存空间,这是非常有效的。所提出的动态语义一致性(DSC)损失为:

                

  其中KL(·||·)是两个分布之间的KL散度。

3.2、对抗域聚合

我们可以为每个自适应域训练不同的分割模型,并将不同的预测与目标图像的特定权重相结合,或者我们可以简单地将所有自适应域组合在一起,训练一个模型。在第一种策略中,确定如何为不同的适应域选择权重是一项挑战。此外,每个目标图像都需要在参考时间被输入到所有分割模型中,这是相当低效的。对于第二种策略,由于对齐空间是高维的,尽管适应的域与目标相对对齐,但它们可能彼此明显不对齐。为了缓解这个问题,我们提出了对抗性域聚合,用两种鉴别器使不同的适应域更紧密地聚合。一种是子域聚合鉴别器(SAD),其设计目的是直接使不同的适应域不可区分。对于S_i,引入了具有以下损失函数的鉴别器D^i_A

                

另一种是跨域循环鉴别器。对于每个源域S_i,我们使用GT将图像从适配域转移回并使用鉴别器D_i中对X_i进行分类,其对应于以下损失函数:

                

请注意,使用不同鉴别器损失的更复杂组合来更好地聚合具有较大距离的域可能会提高性能。我们把这作为未来的工作,并将通过损失项的动态加权和结合一些来源的先验领域知识来探索这一方向。

3.3、特征对齐语义学习

 在对抗性域聚合之后,不同域的自适应图像被更紧密地聚合和排列。同时,动态对抗性图像生成中的语义一致性损失确保了图像翻译前后的语义信息,即分割标签得到保留。假设单一聚集域的图像为,相应的标签为。然后,我们可以基于X'Y训练具有以下交叉熵损失的任务分割模型F

                

 其中,L是类的数量,H, W是自适应图像的高度和宽度,σ是softmax函数,是指示函数,并且在索引处的值。此外,我们在X'X_T之间施加了特征级对齐,这可以提高在分割模型F上推断X_T的过程中的分割性能。我们引入了鉴别器D_F来实现这一目标。特征级GAN损失定义为:     

                   

  其中F中编码器的最后一个卷积层(即特征图)的输出。

3.4、MADAN学习

所提出的MADAN学习框架利用了自适应技术,包括像素级对齐、循环一致性、语义一致性、域聚合和特征级对齐。综合所有这些组成部分,MADAN的总体目标损失函数为:

                

  训练过程对应于根据以下优化来求解目标模型F

                 

 其中G和D分别表示等式(9)中的所有生成器和鉴别器。

4、实验

 在本节中,我们首先介绍了实验设置,然后从数量和质量上比较了所提出的MADAN和几种最先进的方法的分割结果,然后进行了一些消融研究。

4.1、实验设置

数据集。在我们的适应实验中,我们使用合成的GTA[18]和SYNTHIA[19]数据集作为源域,使用真实的Cityscapes和BDDS数据集作为目标域。
基线:

我们将MADAN与以下方法进行比较。(1) 仅源,即在源域上训练,并直接在目标域上测试。我们可以将其视为DA的下界。(2)单源DA,通过单源DA执行多源DA,包括FCNs-Wld[47]、CDA[48]、ROAD[50]、AdaptSeg[71]、CyCADA[32]和DCAN[55]。(3) 多源DA,将一些多源DA方法扩展到多源设置,包括MDAN[69]。为了进行比较,我们还报告了oracle设置的结果,其中分割模型在目标域上进行了训练和测试。对于纯源和单源DA标准,我们采用了两种策略:(1)单源,即对每个单源进行自适应;(2) 源合并,即所有源域合并为传统的单个源。对于MDAN,我们扩展了用于分割任务的原始分类网络。
评估指标:

在[47,48,32,56]之后,我们使用并集上的平均交集(mIoU)来评估分割结果。在实验中,我们采用了GTA和SYNTHIA的16个交集类,与Cityscapes和BDDS兼容,用于所有mIoU评估。
实现细节:

尽管MADAN可以以端到端的方式进行训练,但由于硬件资源有限,我们分三个阶段进行训练。首先,我们在没有语义一致性损失的情况下训练两个CycleGAN(9个残差块用于生成器,4个卷积层用于鉴别器)[39],然后在具有来自源域的相应标签的自适应图像上训练FCN F。其次,在用上面训练的F更新FA之后,我们使用CycleGAN生成具有等式中提出的DSC损失的自适应图像。(4)并使用SAD和CCD聚合不同的自适应域。最后,我们在具有特征级对齐的聚合域中对新适应的图像训练FCN。对上述阶段进行迭代训练。
我们选择使用FCN[5]作为我们的语义分割网络,并且,由于VGG网络家族通常用于报告DA结果,我们使用VGG-16[73]作为FCN主干。网络中特征提取层的权重是从ImageNet[74]上训练的模型中初始化的。该网络在PyTorch中实现,并使用Adam优化器[75]使用批量大小为8的初始学习率为1e-4进行训练。所有图像的大小都调整为600×1080,然后在20个时期的像素级自适应训练期间裁剪为400×400。SAD和CCD分别在前5个和10个时期被冻结。

 

4.2、与现有技术的比较

表2和表3显示了所提出的MADAN模型与其他基线(包括仅源、单源DA和多源DA)之间的性能比较,如按类IoU和mIoU测量的。从结果来看,我们有以下观察结果:
(1) 将在源域上训练的分割模型直接转移到目标域的纯源方法在大多数自适应设置中获得最差的性能。这是显而易见的,因为由于域偏移的存在,观察到的图像和标签的联合概率分布在源和目标之间存在显著差异。如果没有领域自适应,直接转移就无法很好地处理这个领域缺口。简单地组合不同的源域比每个单个源表现得更好,这表明尽管不同源之间的域发生了变化,但多个源比单个源的优越性。
(2) 在GTA和SYNTHIA上,将纯源和单源DA分别进行比较,结果表明,所有的自适应方法都表现得更好,这证明了领域自适应在语义分割中的有效性。比较CyCADA在单源和源组合设置中的结果,我们可以得出结论,简单地组合不同的源域并执行单源DA可能会导致性能下降。
(3) MADAN在所有自适应方法中获得了最高的mIoU分数,并受益于像素级和特征级对齐、循环一致性、动态语义一致性、域聚合和多源的联合考虑。MADAN也显著优于源组合DA,其中不同源之间也存在域偏移。通过弥补这一差距,多源DA可以提高自适应性能。一方面,与单源DA相比,MADAN利用了来自多个源的更多有用信息。另一方面,其他多源DA方法[68,69,70]只考虑特征级对齐,这对于粗粒度任务(如图像分类)可能足够,但对于细粒度任务(如语义分割,一种逐像素预测任务)显然不够。此外,我们考虑了具有动态语义一致性损失的像素级对齐,并进一步聚合了不同的自适应域。
(4) 在目标域上训练的预言机方法的性能明显优于其他方法。然而,为了训练该模型,需要来自目标域的地面实况分割标签,而这些标签在UDA设置中实际上是不可用的。我们可以将这种性能视为UDA的一个上限。显然,所有自适应算法与oracle方法之间仍然存在很大的性能差距,需要在DA方面进一步努力。

可视化:

定性语义分割结果如图2所示。我们可以清楚地看到,通过所提出的方法进行自适应后,视觉分割结果得到了显著改善。我们还在图3中可视化了从GTA和SYNTHIA到城市景观的像素级对齐结果。我们可以看到,通过我们最终提出的像素级对齐方法(f),图像的风格接近城市景观,同时语义信息得到了很好的保留。

4.3、消融研究

首先,我们将MADAN中提出的动态语义一致性(DSC)损失与CyCADA[32]中的原始语义一致性损失进行了比较。如表4和表5所示,我们可以看到,对于所有模拟到真实的适应,DSC都获得了更好的结果。在证明其价值后,我们在随后的实验中使用DSC损失。其次,我们逐步研究了MADAN中不同组件对城市景观和BDDS的有效性。结果如表6和表7所示。我们可以观察到:(1)两种域聚合方法,即SAD和CCD,都可以通过使不同的适应域更紧密地聚合来获得更好的性能,而SAD优于CCD;(2) 加入DSC损失可以进一步提高mIoU评分,再次证明DSC的有效性;(3) 特征级比对也有助于适应任务;(4) 模块在某种程度上是正交的,因为添加每个模块不会导致性能下降。

 4.4、讨论

计算成本

由于所提出的框架处理了一个更困难的问题,即多源域自适应,因此使用了更多的模块来对齐不同的源,这导致了更大的模型。在我们的实验中,MADAN在4个NVIDIA Tesla P40 GPU上使用两个源域训练40小时,这大约是在单个源上训练时间的两倍。然而,MADAN在推理过程中没有引入任何额外的计算,这是实际工业应用中最大的问题,例如自动驾驶。

关于表现不佳的类别

在某些类别(如栅栏和杆子)上表现不佳的主要原因有两个:1)缺乏包含这些类别的图像;2)模拟图像和真实图像之间对象的结构差异(例如,模拟图像中的树比真实图像中的树木高得多)。为不同类别生成更多图像和提高模拟环境中对象的多样性是我们在未来工作中探索的两个有希望的方向,这可能有助于解决这些问题。

5、结论

在本文中,我们研究了多源域自适应,用于从合成数据到真实数据的语义分割。设计了一个新的框架,称为多源对抗域聚合网络(MADAN),由三个组件组成。对于每个源域,我们生成了具有新的动态语义一致性损失的自适应图像。此外,我们提出了子域聚合鉴别器和跨域循环鉴别器,以更好地聚合不同的适应域。与其他技术(如像素级和特征级对齐以及循环一致性)相比,MADAN在GTA和SYNTHIA的Cityscapes上分别实现了15.6%、1.6%、4.1%和12.0%的mIoU改进,在BDDS上实现了11.7%、0.6%、2.6%和11.3%的mIoU改进。为了进一步的研究,我们计划研究多模态DA,例如同时使用图像和激光雷达数据,以更好地提高自适应性能。利用神经结构搜索等技术提高MADAN的计算效率是另一个值得研究的方向。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Wanderer001

ROIAlign原理

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值