本文首发于微信公众号 CVHub,严禁私自转载或售卖到其他平台,违者必究。
导读
本文主要介绍了一种用于改进夜间辅助驾驶场景分割的方法,该方法通过使用双图像自适应可学习滤波器(
回到正文,夜间驾驶场景分割中存在两个主要挑战。一是由于视觉感知能力较差,难以获得大规模标记的夜间数据集。为此,最近开发了一些夜间数据集,如
By the way, CVHub 知识星球现已正式上线,欢迎志同道合的小伙伴一同加入。本星球致力于打造视觉领域高质量的知识付费平台,每日为大家分享原创、多领域、有深度的前沿科技论文解读及带来业内最新的招聘信息渠道,offer 快人一步!
方法
Framework
众所周知,在无人驾驶中,对驾驶场景图像进行语义解析对于实现自动驾驶至关重要。尽管在白天图像上已经取得了不错的性能,但在夜间图像上的性能通常表现较差,这是由于曝光不足和缺乏合适标注数据等原因所致。
为了解决这些问题,作者提出了一种名为
该方法使用基于 CNN 的小型参数预测器 (CNN-PP) 学习分割网络,该网络使用下采样输入图像来预测 DIF 模块中滤波器的超参数。其中,输入的高分辨率图像由 DIF 处理以帮助分割网络获得更好的分割性能。
- 图像自适应处理模块(
IAPM ) - 可学习引导滤波器(
LGF )
通过
Image-adaptive Processing Module
从上述框架爱图可以看出,
CNN-PP
DIF
Learnable Guided Filter
可学习的引导滤波器(LGF)模块,它在分割网络之后应用以进一步改善分割结果。LGF 模块利用引导滤波器的概念,并经过训练以自适应地处理每个图像,以获得更好的分割性能并保持边缘。
引导滤波器利用引导图(表示为
I
I
I)、输入图像(表示为
p
p
p)和输出图像(表示为
q
q
q)。其假设
q
q
q 是在以像素
k
k
k 为中心的窗口
ω
k
ω_{k}
ωk? 内对
I
I
I 进行线性变换得到的。线性变换中的系数
a
k
a_{k}
ak? 和
b
k
b_{k}
bk? 根据窗口
ω
k
ω_{k}
ωk? 内
I
I
I 的均值(
μ
k
μ_{k}
μk?)和方差(
σ
2
k
σ^{2k}
σ2k)进行估计。
LGF 模块以分割网络的输出作为输入,并利用从另一个模块 F(I) 获取的引导图(I)应用引导滤波器操作。F(I) 实现上也不复杂,包括两个卷积层,分别具有 64 个和 19 个输出通道,以确保 I 和 p 具有相同数量的通道。LGF 模块与其他模块一起以端到端的方式进行训练,使其能够自适应地处理每个图像,以获得更好的分割性能并保持边缘。
上图展示了 LGF 模块的架构以及其如何整合到整体流程中。该模块经过训练,通过利用学习到的引导图 I 提供的指导信息,增强分割结果。
夜间语义分割
到目前为止,我们便详细地为大家介绍完了
有监督分割
如上所述,有监督夜间分割方法包括 IAPM 模块、分割网络和 LGF 模块。IAPM 模块包括 CNN-based 参数预测器(CNN-PP)和一组可微分的图像滤波器(DIF)。本文首先将输入图像调整为 256×256 大小,并将其输入 CNN-PP 以预测 DIF 的参数。然后,通过 DIF 滤波的图像被视为分割网络的输入。初步的分割图像通过 LGF 进行滤波,以获得最终的分割结果。整个流程以分割损失进行端到端训练,以便 CNN-PP 能够学习适当的 DIF,以提高图像的适应性,从而获得更好的语义分割结果。
分割网络
本文选择了三种常用的语义分割网络,包括
重新加权和分割损失
由于驾驶场景图像中不同物体类别的像素数量不均匀,在网络学习小尺寸物体的特征时很困难。这导致在预测小物体的像素时性能较差。因此,本文使用重新加权方案来提高网络对小尺寸物体的关注度。
无监督分割
框架
S
S
S 和两个目标域
T
d
T_{d}
Td? 和
T
n
T_{n}
Tn?,其中
S
S
S、
T
d
T_{d}
Td? 和
T
n
T_{n}
Tn? 分别代表 Cityscapes(白天)、Dark Zurich-D(白天)和 Dark Zurich-N(夜间)。如上图所示,本文的无监督框架包括三个训练回路,通过权重共享的 IAPM 模块、分割网络和 LGF 模块,从带标签的源域
S
S
S 到目标域
T
d
T_{d}
Td? 和
T
n
T_{n}
Tn? 进行域适应。值得一提的是,在训练过程中,只有 Cityscapes 中的图像具有语义标签。
判别器
作者设计了一个通用的判别器来通过对抗学习区分分割结果是否来自源域或目标域。具体而言,模型中有两个具有相同结构的判别器。每个判别器包括五个卷积块,输出通道为{64、128、256、256、1}。每个卷积块包括一个带有Leaky Relu的4×4卷积层。除了前两个卷积层的步幅为2,其余的步幅为1。它们被训练用于区分输出是来自
S
S
S 还是
T
d
T_{d}
Td?,以及来自
S
S
S 还是
T
n
T_{n}
Tn?。
目标函数
在训练提出的端到端无监督框架时,本文使用总损失作为生成器的损失,并使用相应的对抗性损失用于判别器。总损失包括分割损失、静态损失和对抗性损失。
- 分割损失
如上述公式所示,采用加权交叉熵损失作为分割损失。特别地,在我们的无监督框架中,只有带标签的源域图像用于优化此损失。我们在无监督训练过程中将标准差设置为0.05,均值设置为1.0。
- 静态损失
考虑到 Dark Zurich-D 中的白天图像与 Dark Zurich-N 中对应的夜晚图像之间的相似性,本文采用静态损失来处理目标域
T
n
T_{n}
Tn? 的夜晚图像。
- 对抗损失
生成对抗训练被广泛用于对齐两个域。在这种情况下,作者使用两个判别器来区分分割预测是来自源域还是目标域。需要注意的是,在对抗训练中,本文采用的是最小二乘损失函数。
实验
图8 显示了 MGCDA、DANNet 和本文方法的几个视觉对比示例。可以看出,通过使用提出的 DIAL-Filters,自适应模块能够从图像中区分出感兴趣的对象,特别是在黑暗中的小物体和混合类别的混乱区域。
图9则展示了CNN-PP模块如何预测DIF的参数,包括详细的参数值以及每个子滤波器处理的图像。可以观察到,提出的DIAL-Filters能够增加输入图像的亮度并揭示图像细节,这对于分割夜间图像至关重要。
与现有的夜间分割方法相比,DIAL-Filters 与 PSPNet 相结合实现了最佳性能。尽管模型更小,但在使用RefineNet、DeepLabV2和PSPNet作为基线模型时,其性能分别比DANNet提高了2.21%、1.96%和2.62%。此外,可以明显看到本文方法优于大多数域自适应方法。
最后在来看下最后这个表格。可以观察到,本文方法只在 RefineNet 模型上添加了 280K 个可训练参数,便可以在所有实验中取得了最佳性能,并具有不错的的运行效率。需要注意的是,虽然该方法的可训练参数比 DANNet 少,但其运行时间略长。这是因为 DIF 模块中的滤波过程引入了额外的计算量,不过整体还是可以接受的。
总结
该文介绍了一种基于
CVHub是一家专注于计算机视觉领域的高质量知识分享平台,全站技术文章原创率达99%,每日为您呈献全方位、多领域、有深度的前沿AI论文解决及配套的行业级应用解决方案,提供科研 | 技术 | 就业一站式服务,涵盖有监督/半监督/无监督/自监督的各类2D/3D的检测/分类/分割/跟踪/姿态/超分/重建等全栈领域以及最新的AIGC等生成式模型。关注微信公众号,欢迎参与实时的学术&技术互动交流,领取CV学习大礼包,及时订阅最新的国内外大厂校招&社招资讯!