本文主要是介绍FDA: 用于语义分割的傅里叶域自适应,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
论文链接:https://arxiv.org/abs/2004.05498
代码链接:GitHub - YanchaoYang/FDA: Fourier Domain Adaptation for Semantic Segmentation
机构:UCLA
发表于2020CVPR
这篇文章别的地方略读了,主要看看方法,感兴趣自己去翻原文233333
摘要
我们描述了一种简单的无监督域自适应方法,即通过交换源和目标分布的低频频谱来减小源和目标分布之间的差异。我们在语义分割中说明了该方法,其中密集注释的图像在一个领域(例如,合成数据)中很丰富,但在另一个领域(例如,真实图像)中很难获得。目前最先进的方法是复杂的,一些需要对抗性优化,以使神经网络的主干对离散域选择变量保持不变。我们的方法不需要任何训练来执行域对齐,只需要一个简单的傅里叶变换及其逆变换。尽管它很简单,但当集成到相对标准的语义分割模型中时,它在当前基准测试中实现了最先进的性能。我们的结果表明,即使是简单的程序也可以忽略数据中令人讨厌的可变性,而更复杂的方法很难从中学习
背景
我们的方法如图1所示:只需计算每个输入图像的(快速)傅里叶变换(FFT),并在使用源域中的原始注释通过逆FFT (iFFT)重建用于训练的图像之前,将目标图像的低水平频率替换为源图像。
傅里叶域自适应需要选择一个自由参数,即要交换的光谱邻域的大小(图1中的绿色正方形)。我们测试了各种尺寸,以及一种简单的多尺度方法,该方法由不同域尺寸产生的结果平均组成。
我们的方法的动机源于观察到低水平频谱(振幅)可以在不影响高水平语义感知的情况下显著变化。某物是车辆还是人,不应取决于传感器的特性、光源或其他低水平的可变性源。然而,这种可变性对频谱有重大影响,迫使基于学习的模型与其他讨厌的可变性一起“学习它”。如果这种可变性没有在训练集中表现出来,模型就不能泛化。这一点尤其重要,因为网络似乎不能很好地在不同的低级统计数据之间传递[1]。
相关工作
Semantic Segmentation
Domain Adaptation
旨在减少两个分布之间的差距
一种常见的差异度量是MMD(最大平均差异)及其核变体[15,27],由CMD(中心矩差异)扩展[52]到高阶统计量[3,30]。
Adversarial Learning
使用经过训练的鉴别器来最大限度地消除源表示和目标表示之间的混淆,从而减少域差异。‘
这个就是那个用于医学分割的实时Test-time adaption_test time adaptation 去噪-CSDN博客
中的方法了!
方法
2.1. Fourier Domain Adaptation (FDA)
在无监督域自适应(UDA)中,我们得到一个源数据集 ,其中xs ∈ R H X W X3 是个有颜色的图像,而ys ∈ R H X W 是xs的语义图
是目标域数据集
在这里,我们提出傅里叶域自适应(FDA)来减少两个数据集之间的域差距。
让FA,FP:R H X W X3→R H X W X3是对于一个RGB图的傅里叶变换F 的振幅amplitude和相位phase分量
e.g 对于一个单通道图片x我们有↓,这可以使用FFT算法在[13]中有效地实现。相应地,F^-1是将频谱信号(相位和振幅)映射回图像空间的傅里叶反变换。
更多的,我们表示Mβ是一个mask,它的值都是零除了 β∈ (0,1)中心区域↓,其中这里我们假设图像的中心是(0,0)。注意β并没有被以像素衡量,因此 β的选择并没有依赖图片的大小或者分辨率。
给定两个随机采样的图像xs ~Ds; xt ~ Dt,傅里叶域适应可以公式化为↓
其中源图像FA(xs)的振幅低频部分被目标图像xt的振幅低频部分所取代。然后,在相位分量不变的情况下,将修改后的xs的光谱表示映射回图像xs!t,其内容与xs相同,但会类似于Dt样本的外观。这个过程在Fig1中解释,其中Mβ表现为绿色
β的选择
当β = 0的时候 xs→t和xs是一样的,β = 1 的时候 xs→t 和xt是一样的
图2解释了这样的一个过程,但也有可见的伪影(artifacts),从图2的放大区域可以看到。
然而,在table1中我们展示了β 多种选择得到效果以及结果模型的平均值,类似于简单的多尺度池化方法
2.2. FDA for Semantic Segmentation
给一个已经适应过的原数据集Ds→t,我们可以训练一个语义分割网络Øw,与参数w,通过减少下面的交叉熵损失
由于FDA将这两个领域结合在一起,因此UDA成为一个半监督学习(SSL)问题。SSL的关键是正则化模型。我们使用决策边界的惩罚作为标准来跨越未标记空间中的聚类。
假设类分离,这可以通过惩罚决策边界遍历由数据点密集填充的区域来实现,这可以通过最小化目标图像上的预测熵来实现。然而,如[45]所述,这在低熵区域是无效的。我们没有在像素上设置任意阈值来施加惩罚,而是使用鲁棒加权函数来实现熵最小化,即↓,
其中是沙博尼耶罚函数(Charbonnier penalty function)。 它对高熵预测 > 0.5的惩罚大于对低熵预测的惩罚,如图所示
将其与自适应源图像上的分割损失相结合,我们可以使用以下总体损失来训练语义分割网络Øw
Self-Supervised training
是通过使用高度自信的伪标签来提高SSL性能的一种常见方法。在没有正则化的情况下,这个实践是自我引用的,所以我们关注正则化。
如文献[42]所述,均值教师mean teacher通过平均模型权重来提高半监督学习绩效,这在学习过程中提供了正则化。在这里,我们提出使用多个模型预测的平均值来正则化自学习。
然而,与一次使用相同的损失训练多个模型不同,有一个明确的散度项,我们直接训练多个Øwβ 在 FDA过程中,不需要显式强制模型发散。我们实例化M=3分割网络
它们都是使用(6)从头开始训练的,对于某一目标图像xti的均值预测可以通过:
注意,网络的输出是softmax激活,因此平均值仍然是K个类别的概率分布。使用M模型生成的伪标签,我们可以训练Øwβ利用下面的自监督训练损失得到进一步的改进↓,其中 D^t是Dt用伪标签y^ti 扩充了
因为我们的训练细节与β的在FDA操作中不同,我们把利用不同分割网络的均值预测的自监督训练称为Multi-band Transfer(MBT)。我们的FDA语义分割网络的完整训练过程包括使用Eq.(6)从头开始对M个模型进行一轮初始训练,以及使用Eq.(8)进行另外两轮自监督训练,我们将在下一节中详细介绍。
实验
数据集
GTA5
SYNTHIA
CityScapes
Segmentation Network
实验结果
这篇关于FDA: 用于语义分割的傅里叶域自适应的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!