Both Style and Fog Matter
原文:https://arxiv.org/pdf/2112.00484.pdf
解决问题:大雾、下雨、下雪天模糊场景
其他人做法:
1-去雾算法,人工干扰
2-合成的雾图像,不像真实的雾图像那样真实,也会扩大清晰图像和雾图像之间的域差距,产生不令人满意的性能。此外,我们认为这些方法过多地考虑了雾的因素,而忽略了其他因素,这可能会影响SFSU问题中的域差距。
我们做法:
开箱即用,我们建议明确研究SFSU中的域间隙
- 1)以避免直接处理总域间隙;
- 2)不使用合成雾数据或脱雾知识。
我们假设域间隙是由混合雾的影响和风格变化引起的,这两者对SFSU都很重要。
Q:风格和雾因素如何影响分割模型的性能?
利用均方差值(MVV)衡量分割模型在特 定领域的整体性能,即领域性能。
具体来说,在图 2 中,我们训练了一个具有 s 域数据的分割模型
s、m 和 t 域计算 MVV,分别产生 Vss、Vsm 和 Vst。
训练:s 域
测试:s、m 和 t 域 计算 MVV。
首先,我们用 s 域数据训练一个分割模型
这个模型已经学习了领域知识。然后,我们在 s \ m \ t 域数据上进行测试,三个域的性能分别为显示为不同的黄色条。
两个不同的条可以代表性能差距,即域间隙(灰色虚线箭头),例如样式间隙、雾间隙和对偶差距。
训练:我们用 m 域数据调整 Model (s) 以获得Model(s+m)
测试:s、m 和 t 域 计算 MVV。
接下来,我们使用 m 域数据调整分割模型。即,该模型可以学习领域知识(与风格有关因子)在域 s 和 m 之间
这次改编后,风格差距变小(从 0.089 到 0.067),而雾间隙仍然存在(只有 0.004 的微不足道的变化)
因此,我们假设style gap 和fog gap 可以分别划分和关闭,双重差距是两个差距的累积。
CuDA-Net
Feature Disentanglement Networks(FDN)
给定图像x1 和 x2 来自两个不同的域s\m
域不变内容特征 c1 和 c2
特定领域的特征 z1 和 z2
因此,通过特征解开,我们可以从 x1 域到 x2 域传递分割知识
先看图a
【左1】我们首先使用共享内容编码器 Ec(黑线)提取 c1 和 c2 ,以及两个私有编码器分别提取特定领域的特征 z1 和 z2(红色和蓝线)。
【左2】跨域转换,c1-z2\c2-z1,执行域内重建和跨域转换以监督解缠结学习
【左3】此外,我们使用分割头 S 从内容特征 c 生成分割热图 h,其中标签 y1 用作监督信号。
损失选择
我们只设计了四个必要的损失来训练我们的 FDN,旨在使 FDN 能够关闭三个不同的差距(风格差距,雾差距和双重差距)。
而DISE[4]利用7个损失来缩小合成清晰数据和真实清晰数据之间的一个差距,训练耗时且难以收敛
域内重建( Within-domain reconstruction )。我们期望使用内容特征 c 和提取的私有特征 z 完美地重建原图
因此,我们将重建损失定义为:
其中:逐像素损失 Lpixel()
跨域转换( Cross-domain translation)
密集像素预测( Dense pixel prediction)
特征解耦损失( Feature disentanglement loss)
其中:
- L1->2 可以是 Ls->m、Lm->t 或 Ls->t
- 解缠结和权重 λrec、λtrans、λseg 和λsegadv 根据经验设置为 0:5、0:1、1 和 1
风格和雾分解
看图b
通过引入中间域 m,我们可以得到三个不同的输入域组合,(Xs; Xm)、(Xm; Xt) 和 (Xs; Xt),用于三个 FDN,Fs-m、Fm-t 和 Fs-t,三个 FDN 被一一训练,共享领域不变的知识。因为
域 m 和 t 都没有标签,我们使用 Fs-m 来标记域 m 以训练 Fm-t。
累积域适应
累计损失。正如我们的动机所验证的那样,三种领域之间存在累积关系因素(私人特征)。如图 3c 所示:
如果我们
采取Δ(zm; zs) 作为域 m 和s,
取Δ(zt;zm)作为域t和 m之间的雾差异,
并取 Δ(zt;zs) 作为域 t 和 s,
可以合理地假设双重差异是样式和雾差异的累积,
即,Δ(zm; zs) + Δ(zt; zm) = Δ(zt; zs)。因此,我们将累积关系损失函数设计为:
训练pipeline。图 3d 描绘了整个训练过程过程。三个经过训练的子网络 Fs->m、Fm->t 和Fs->t 用作累积域自适应的初始化。
图 3d 中:
共享内容编码器始终可以通过三个步骤进行训练,
我们使用内容编码器来更新伪标签训练雾编码器。
此外,我们以循环的方式训练整个网络
根据经验,我们将 T 设置为 3,这意味着我们进行周期性训练,累计训练3次。
最后,我们使用经过训练的Fs-t 中的内容编码器和分割头 S 以生成用于测试的分割热图。
实验
Datasets:
- Cityscapes
- Foggy Cityscapes
- Foggy Zurich
- Foggy Driving
- Clear Zurich
实验1:性能比较。进行了实验,在Foggy Zurich(FZ) 和Foggy Driving (FD) 上,用所有类的平均 IoU (mIoU %)。
实验2:与 CMAda3+ 的训练数据比较。
我们的 CuDA-Net 和 CuDA-Net+ 两个都优于 CMAda3+,使用更少合成雾数据和较少真实的雾数据。 “轻”、“中”表中的“dense”表示不同的雾密度
实验3:ACDC数据集
它包含四个不利条件类别(雾、雨、雪和夜间)带有像素级注释。
它们每个都包含 1000 张图像,并被分成训练集,验证集和测试集的比例大致为 4:1:5。测试集被保留用于在线测试
性能比较
下图 5. 等式中 λcum 的消融研究。 (6) 在 Foggy Zurichtest 数据集上。结果表明我们的模型对 λcum 不敏感。
图 6.消融研究的定性结果。这些实验是在 Foggy Zurich 测试数据集上进行的。每列显示所提出的方法的结果与不同的组件。结果显示,随着使用的组件越多,空间结构越清晰
图 7. 除雾能力。我们比较我们的除雾由 CuDA-Net 中的 Fm-t 生成的图像与来自传统的除雾方法GFN [24]。输入图像是从Foggy Zurich随机选择。