Multi-modal NeRF Self-Supervision for LiDAR Semantic Segmentation
作者: Xavier Timoneda, Markus Herb, Fabian Duerr, Daniel Goehring, Fisher Yu
分类: cs.CV, cs.RO
发布日期: 2024-11-05
备注: IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS) 2024
💡 一句话要点
提出多模态NeRF自监督框架,提升LiDAR语义分割在自动驾驶场景下的性能。
🎯 匹配领域: 支柱三:空间感知与语义 (Perception & Semantics) 支柱九:具身大模型 (Embodied Foundation Models)
关键词: LiDAR语义分割 多模态学习 NeRF 自监督学习 伪标签 自动驾驶 Segment-Anything
📋 核心要点
- 现有LiDAR语义分割模型依赖大量标注数据,成本高昂且泛化性受限,难以适应新领域。
- 利用相机图像的2D基础模型知识,通过NeRF渲染和SAM分割,为LiDAR点云生成伪标签进行自监督学习。
- 在nuScenes、SemanticKITTI和ScribbleKITTI等数据集上验证,表明该方法能有效提升LiDAR语义分割性能。
📝 摘要(中文)
LiDAR语义分割是自动驾驶感知中的一项基本任务,旨在将每个LiDAR点与语义标签相关联。完全监督模型已广泛应用于此任务,但它们需要每个扫描的标签,这限制了它们的领域或需要大量昂贵的注释。通常与LiDAR点云一起记录的相机图像可以由广泛可用的2D基础模型处理,这些模型是通用的且与数据集无关。然而,从2D数据中提取知识以改善LiDAR感知带来了领域适应挑战。例如,经典透视投影受到两个传感器在其各自捕获时间之间的位置偏移产生的视差效应的影响。我们提出了一种半监督学习设置,以利用未标记的LiDAR点云以及来自相机图像的提炼知识。为了在未标记的扫描上自监督我们的模型,我们添加了一个辅助NeRF头,并从相机视点在未标记的体素特征上投射光线。NeRF头预测每个采样光线位置的密度和语义logits,用于渲染像素语义。同时,我们使用相机图像查询Segment-Anything (SAM)基础模型以生成一组未标记的通用掩码。我们将掩码与来自LiDAR的渲染像素语义融合,以生成伪标签,从而监督像素预测。在推理过程中,我们删除NeRF头,仅使用LiDAR运行我们的模型。我们展示了我们的方法在三个公共LiDAR语义分割基准测试中的有效性:nuScenes、SemanticKITTI和ScribbleKITTI。
🔬 方法详解
问题定义:LiDAR语义分割旨在为每个LiDAR点分配语义标签,是自动驾驶的关键任务。现有方法主要依赖于全监督学习,需要大量人工标注的LiDAR数据,标注成本高昂,且模型泛化能力受限,难以适应新的场景和领域。
核心思路:论文的核心思路是利用相机图像中丰富的语义信息,通过NeRF渲染和Segment-Anything Model (SAM)分割,为未标注的LiDAR点云生成伪标签,从而实现自监督学习。这种方法可以有效利用未标注数据,降低对人工标注的依赖,并提升模型的泛化能力。
技术框架:整体框架包含以下几个主要模块:1) LiDAR特征提取模块:提取LiDAR点云的体素特征。2) NeRF渲染模块:从相机视角向体素特征投射光线,预测每个采样点的密度和语义logits。3) SAM分割模块:利用SAM模型对相机图像进行分割,生成通用掩码。4) 伪标签生成模块:融合NeRF渲染的像素语义和SAM分割的掩码,生成伪标签。5) 语义分割模块:利用LiDAR特征和伪标签进行语义分割训练。在推理阶段,移除NeRF渲染模块,仅使用LiDAR特征进行分割。
关键创新:该方法最重要的创新点在于利用多模态信息(LiDAR和相机图像)进行自监督学习。具体来说,通过NeRF将LiDAR特征投影到相机视角,并利用SAM模型生成语义掩码,从而为LiDAR点云生成高质量的伪标签。这种方法避免了直接将2D语义信息迁移到3D空间所带来的视差问题,提高了伪标签的准确性。
关键设计:关键设计包括:1) NeRF头的结构和训练方式,用于预测密度和语义logits。2) SAM模型的选择和使用方式,用于生成高质量的语义掩码。3) 伪标签融合策略,如何有效地将NeRF渲染的像素语义和SAM分割的掩码进行融合。4) 损失函数的设计,如何利用伪标签有效地监督LiDAR语义分割模型的训练。
🖼️ 关键图片
📊 实验亮点
该方法在nuScenes、SemanticKITTI和ScribbleKITTI三个LiDAR语义分割基准数据集上进行了评估,实验结果表明,该方法能够有效提升LiDAR语义分割的性能。具体性能提升数据在论文中给出,相较于纯LiDAR监督学习方法,该方法利用了无标注数据,在性能上取得了显著提升。
🎯 应用场景
该研究成果可广泛应用于自动驾驶、机器人导航、三维重建等领域。通过降低对人工标注数据的依赖,可以加速LiDAR语义分割模型的开发和部署,提升自动驾驶系统的环境感知能力和安全性。未来,该方法可以进一步扩展到其他多模态感知任务中,例如目标检测、场景理解等。
📄 摘要(原文)
LiDAR Semantic Segmentation is a fundamental task in autonomous driving perception consisting of associating each LiDAR point to a semantic label. Fully-supervised models have widely tackled this task, but they require labels for each scan, which either limits their domain or requires impractical amounts of expensive annotations. Camera images, which are generally recorded alongside LiDAR pointclouds, can be processed by the widely available 2D foundation models, which are generic and dataset-agnostic. However, distilling knowledge from 2D data to improve LiDAR perception raises domain adaptation challenges. For example, the classical perspective projection suffers from the parallax effect produced by the position shift between both sensors at their respective capture times. We propose a Semi-Supervised Learning setup to leverage unlabeled LiDAR pointclouds alongside distilled knowledge from the camera images. To self-supervise our model on the unlabeled scans, we add an auxiliary NeRF head and cast rays from the camera viewpoint over the unlabeled voxel features. The NeRF head predicts densities and semantic logits at each sampled ray location which are used for rendering pixel semantics. Concurrently, we query the Segment-Anything (SAM) foundation model with the camera image to generate a set of unlabeled generic masks. We fuse the masks with the rendered pixel semantics from LiDAR to produce pseudo-labels that supervise the pixel predictions. During inference, we drop the NeRF head and run our model with only LiDAR. We show the effectiveness of our approach in three public LiDAR Semantic Segmentation benchmarks: nuScenes, SemanticKITTI and ScribbleKITTI.