点击下方卡片,关注“自动驾驶之心”公众号
戳我-> 领取自动驾驶近15个方向学习路线
论文作者 | Weining Ren
编辑 | 自动驾驶之心
野外场景的NeRF,如何排除干扰物?
训练一个传统的NeRF模型需要一组带有相机姿态的RGB图像,并且需要手动调整相机设置,如焦距、曝光和白平衡,还面临以下难题:
假设在捕捉过程中场景必须保持完全静止,没有任何如移动物体、阴影或其他动态元素的干扰物。然而,现实世界本质上是动态的,使得这种无干扰物的要求往往难以满足。
从采集的数据中去除干扰物也不是一件容易的事。这一过程涉及每个图像的逐像素标注,这对于大场景的长时间捕捉来说是非常耗费人力的。这突显了NeRF在动态、真实世界环境中实际应用的一个关键限制。
一些方法使用预训练的语义分割模型来处理特定的移动物体,但这些模型在分割未定义的物体类别时会失效。NeRF-W[2]通过体积渲染从随机初始化的嵌入中优化像素级的不确定性。这种设计是次优的,因为它忽略了图像的先验信息,并将不确定性与辐射场重建混为一谈。结果,需要引入瞬态嵌入来处理干扰物。增加一个新的自由度使系统调优变得复杂,导致一个帕累托最优的场景。动态NeRF方法如D2NeRF能够从视频输入中分解静态和动态场景,但在稀疏图像输入时表现不佳。RobustNeRF[3]将干扰物建模为异常点,并在控制和简单场景中展示了令人印象深刻的结果。然而,在复杂的野外场景甚至在没有任何干扰物的场景中,其性能都显著下降。

NeRF On-the-go[1]是一个设计用于有效去除干扰物的多功能即插即用模块,允许从随意捕捉的图像中快速训练NeRF。主要基于3个关键方面:
利用DINOv2特征的鲁棒性和空间-时间一致性进行特征提取,从中一个小型多层感知机(MLP)预测每个样本像素的不确定性。
利用结构相似性损失来改进不确定性优化,增强前景干扰物和静态背景之间的区分。
将估计的不确定性融入NeRF的图像重建目标中,采用解耦训练策略,显著提高了干扰物消除效果,尤其是在高遮挡场景中。
该方法在从小物体的封闭室内场景到复杂的大规模街景等各种场景中都表现出鲁棒性,并且能够有效处理不同程度的干扰物。On-the-go模块还能够显著加速NeRF训练,比RobustNeRF快一个数量级。
(大拇指往上滑,点击最上方的卡片关注我,整个操作只会花你 1.328 秒,然后带走未来、所有、免费的干货,万一有内容对您有帮助呢~)
具体方法
整体流程如图2:

使用DINOv2特征进行不确定性预测
利用DINOv2特征,这些特征在跨视图保持空间-时间一致性方面表现出色,可以有效识别和消除在多个图像中出现的重复干扰物
首先提取每个输入RGB图像的DINOv2特征。接下来,这些特征作为输入送入一个小型多层感知机(MLP)以预测每个像素的不确定性值。为了进一步确保不确定性预测的一致性,加入了一个正则化项。
图像特征提取
对于分辨率为 的RGB图像,通过预训练的DINOv2特征提取器E得出每个像素的特征:

其中,表示所有训练图像,表示特征维度。此模块还通过最近邻采样将特征图上采到原始分辨率。
不确定性预测
一旦获得了二维DINOv2特征图,就开始确定每个采样光线 的不确定性。首先查询其对应的特征 ,然后将其输入到一个浅层的MLP中,以估计该光线的不确定性 ,其中 是用于不确定性预测的MLP
不确定性正则化
为了确保不确定性预测在空间和时间上的一致性,引入了一个基于小批量内特征向量余弦相似性的正则化项。具体来说,对于每个采样光线 ,定义了一个邻居集合 ,该集合包含同一批次中与光线 的特征 具有高度相似性的光线。这个邻居集合通过选择满足指定余弦相似性阈值 的光线来形成:

其中, 是光线 的关联特征。光线 的精细不确定性计算为邻居集合 的平均值:

为了增强一致性,引入了一个正则化项,用于惩罚 内不确定性的方差:

这个正则化项旨在平滑来自图像中类似特征的不确定性预测中的突变,从而增强不确定性估计过程的整体鲁棒性和一致性。
在NeRF中使用不确定性去除干扰物
假设与动态元素(干扰物)相关的像素应具有高不确定性,而静态区域应具有低不确定性。这个前提允许将预测的不确定性有效地整合到NeRF的训练目标中,旨在逐步过滤干扰物,以增强新视角合成的效果。
将分析将不确定性整合到NeRF损失函数中的传统方法的潜在问题。最后引入一种简单而有效的修改方法,将不确定性整合到损失函数中,以实现稳健的干扰物去除。
不确定性收敛分析
不确定性预测已广泛应用于不同领域,包括基于NeRF的新视角合成,损失函数写为:

其中, 和 分别表示输入和渲染的RGB值。不确定性 被视为一个加权函数。正则化项在平衡第一项和防止 的平凡解中起关键作用。
首先通过对 进行求导来理解不确定性随损失函数的变化:

将该导数设为零,得出不确定性的闭合形式解:

这揭示了不确定性预测与渲染和输入颜色之间的误差的一个重要关系。具体而言,最佳不确定性与该误差项成正比。
然而,当使用如上所述的 损失时,会出现一个挑战,尤其是在干扰物和背景颜色接近的情况下。在这种情况下,根据上述公式预测的这些区域的不确定性也会较低。这阻碍了基于不确定性去除干扰物的效果,导致渲染图像中出现云状伪影。
认识到 RGB损失固有的局限性,本文提出了一种新损失以更好地学习不确定性,从而使预测的不确定性能更有效地区分干扰物和静态背景。
基于SSIM的增强不确定性学习损失
结构相似性指数(SSIM)包括三个度量:亮度、对比度和结构相似性。这些组件捕捉到局部结构和对比度的差异,这对于区分场景元素至关重要。

如图3所示,通过结合这三个组件,SSIM在检测干扰物方面非常有效。SSIM损失可以表述为:

其中, 和 是从输入图像 和渲染图像 中采样的图像块。 分别表示亮度、对比度和结构相似性。进一步将公式修改为:

与原公式相比,重新表述更加强调动态和静态元素之间的差异。因此,这增强了不确定性的差异,有助于更有效地优化不确定性。
基于这个更新的SSIM公式,引入了一种新的损失,专为不确定性学习设计:

这个损失是公式(4)的简单修改,适用于更好的不确定性学习。 专门用于训练不确定性估计MLP 。这非常重要,因为它允许我们将NeRF模型的训练与不确定性预测解耦。这样的解耦确保了学习到的不确定性能够应对各种类型的干扰物。
请注意,最近的一项研究S3IM也使用SSIM进行NeRF训练,但他们的损失是针对静态场景设计的,而本文的是为了更好的不确定性学习。此外,S3IM使用随机采样来识别非局部结构相似性,而本文使用扩张采样专注于局部结构以去除干扰物。
优化
如前所述,分别优化不确定性预测模块和NeRF模型至关重要。对于不确定性预测MLP的优化,使用公式(9)中的 和公式(3)中的 。与此同时,使用以下损失函数训练NeRF模型:

这个损失函数实际上是公式(4),但不包括正则化项,因为 已经防止了不确定性 的平凡解。并行训练过程通过分离从 到NeRF表示和从 到不确定性MLP 的梯度流来促进。总体目标是将所有损失整合在一起,表示为:

每个项由相应的权重 加权。
光线采样策略
RobustNeRF已经证明了基于补丁的光线采样(图4(b))相比随机采样(图4(a))的有效性。然而,这种方法有其局限性,主要是由于采样补丁的尺寸较小(例如,16×16)。特别是当由于GPU内存限制批量大小较小时,这种小的上下文信息可能会限制网络去除干扰物的学习能力,影响优化的稳定性和收敛速度。

为了解决这个问题,本文采用了扩张补丁采样(dilated patch sampling),如图4(c)所示。这种策略涉及从扩张补丁中采样光线。通过增大补丁尺寸,可以显著增加每次训练迭代中可用的上下文信息量。
实验效果








总结一下
NeRF On-the-go 可以在包含各种干扰物的动态真实世界场景中能够有效且高效地去除干扰物,该方法朝着实现NeRF在实际野外应用中的全部潜力迈出了一步。
局限性:在预测具有强视角依赖效应的区域(例如高反射表面如窗户和金属)时仍存在困难。将额外的先验知识整合到优化过程中可能会有所帮助。
参考
[1] NeRF On-the-go: Exploiting Uncertainty for Distractor-free NeRFs in the Wild
[2] Nerf in the wild: Neural radiance fields for uncon- strained photo collections
[3] Robustnerf: Ignoring distractors with robust losses
投稿作者为『自动驾驶之心知识星球』特邀嘉宾,欢迎加入交流!
① 全网独家视频课程
BEV感知、BEV模型部署、BEV目标跟踪、毫米波雷达视觉融合、多传感器标定、多传感器融合、多模态3D目标检测、车道线检测、轨迹预测、在线高精地图、世界模型、点云3D目标检测、目标跟踪、Occupancy、cuda与TensorRT模型部署、大模型与自动驾驶、Nerf、语义分割、自动驾驶仿真、传感器部署、决策规划、轨迹预测等多个方向学习视频(扫码即可学习)

② 国内首个自动驾驶学习社区
国内最大最专业,近3000人的交流社区,已得到大多数自动驾驶公司的认可!涉及30+自动驾驶技术栈学习路线,从0到一带你入门自动驾驶感知(2D/3D检测、语义分割、车道线、BEV感知、Occupancy、多传感器融合、多传感器标定、目标跟踪)、自动驾驶定位建图(SLAM、高精地图、局部在线地图)、自动驾驶规划控制/轨迹预测等领域技术方案、大模型、端到端等,更有行业动态和岗位发布!欢迎扫描下方二维码,加入自动驾驶之心知识星球,这是一个真正有干货的地方,与领域大佬交流入门、学习、工作、跳槽上的各类难题,日常分享论文+代码+视频

③【自动驾驶之心】技术交流群
自动驾驶之心是首个自动驾驶开发者社区,聚焦感知、定位、融合、规控、标定、端到端、仿真、产品经理、自动驾驶开发、自动标注与数据闭环多个方向,目前近60+技术交流群,欢迎加入!扫码添加汽车人助理微信邀请入群,备注:学校/公司+方向+昵称(快速入群方式)
④【自动驾驶之心】全平台矩阵