NeRF-RPN:NeRFs中3D目标检测的通用框架

简介: 本文介绍了首个基于NeRF的通用目标检测框架NeRF-RPN。给定预先训练的NeRF模型,NeRF-RPN旨在检测场景中目标的所有边界框。通过利用结合多尺度3D神经体积特征的新颖体素表示,论文证明了可以直接回归NeRF中目标的3D边界框,而无需在任何视点渲染NeRF。NeRF-RPN是一个通用框架,可用于检测没有类标签的目标。论文使用各种主干架构、RPN头设计和损失函数对NeRF-RPN进行了实验。所有这些都可以以端到端的方式进行训练,以估计高质量的3D边界框。为了促进NeRF目标检测的未来研究,论文构建了一个新的基准数据集,该数据集由合成数据和真实数据组成,并进行了仔细的标记和清理。

640.png


摘要



本文介绍了首个基于NeRF的通用目标检测框架NeRF-RPN。给定预先训练的NeRF模型,NeRF-RPN旨在检测场景中目标的所有边界框。通过利用结合多尺度3D神经体积特征的新颖体素表示,论文证明了可以直接回归NeRF中目标的3D边界框,而无需在任何视点渲染NeRF。NeRF-RPN是一个通用框架,可用于检测没有类标签的目标。论文使用各种主干架构、RPN头设计和损失函数对NeRF-RPN进行了实验。所有这些都可以以端到端的方式进行训练,以估计高质量的3D边界框。为了促进NeRF目标检测的未来研究,论文构建了一个新的基准数据集,该数据集由合成数据和真实数据组成,并进行了仔细的标记和清理。


总结来说,本文的主要贡献如下:


  • 首次将RPN引入NeRF用于3D目标检测和相关任务;
  • 基于现有合成室内数据集Hypersim[46]和3D-FRONT[11]以及真实室内数据集ScanNet[5]和SceneNN[19],为NeRF训练精心策划的用于3D目标检测的大型公共室内NeRF数据集;
  • NeRF-RPN在各种主干网络、检测头和损失函数上的实现和比较。论文的模型可以在4小时内使用2个NVIDIA RTX3090 GPU进行训练。在运行时,它可以在115ms内处理给定的NeRF场景(不包括后处理),同时在3D-FRONT NeRF数据集上实现99%的召回率;
  • 演示基于NeRF-RPN的NeRF和相关应用的3D目标检测。

方法640.png



与最初的RPN类似,论文的方法有两个主要组件,见图2。第一个由特征提取器组成,该提取器将从NeRF模型采样的原始辐射亮度和密度体素网格作为输入,并生成特征金字塔作为输出。第二个是RPN本身,它在特征金字塔上运行并生成目标proposal。随后可以提取特征金字塔上对应于proposal的体积,并针对任何下游任务进行进一步处理。论文的方法在NeRF输入特征的形式以及特征提取器和RPN模块的网络架构方面是灵活的,可以适用于多个下游任务。


NeRF的输入采样


论文的方法假设提供了具有合理质量模型的完全训练的NeRF模型。第一步是对其辐射亮度和密度信息进行均匀采样,以构建特征体积。尽管自原始NeRF以来存在大量变体,这些变体采用不同的辐射场表示或结构,但它们具有相同的特性,即可以通过视图方向和空间位置查询重建的辐射和密度。由于在类似的体积渲染过程中基本上使用了辐射亮度和密度,论文的方法使用从NeRF查询的辐射亮度场和密度作为输入,因此NeRF-RPN与现有的NeRF表示变体无关。


论文在覆盖NeRF模型的全部可追踪体积的网格上均匀地采样辐射亮度和密度。可追踪范围是通过略微放大包围场景中所有摄影机和目标的边界框来确定的。每个维度中栅格的分辨率与该维度中可追踪体积的长度成比例,从而保持目标的纵横比。对于使用普通RGB表示辐射度的NeRF模型,论文从相机姿态中使用的相同观察方向进行采样,以训练NeRF并对结果进行平均。如果这样的相机姿势未知,论文将从球体均匀采样方向。通常,每个体素处的样本呈 的形式,其中 是平均辐射亮度,并根据密度 进行转换:

640.png


特征提取


给定原始数据网格,特征提取器将生成特征金字塔。论文在实验中采用了三个主干网:VGG[54]、ResNet[18]和Swin Transformer[30],但其他主干网也可能适用。考虑到室内NeRF场景的目标大小的巨大变化以及不同NeRF场景之间的尺度差异,论文结合了FPN[24]结构来生成多尺度特征,并增强高分辨率特征量中的高级语义信息。对于VGG、ResNet和FPN层,将所有2D卷积、池和归一化层替换为其3D对应层。对于Swin Transformer,论文相应地采用了3D位置嵌入和移动窗口。


3D RPN


论文的3DRPN将特征提取器的特征金字塔作为输入,并输出一组定向边界框(OBB)及其相应的目标分数。与大多数3D目标检测工作一样,论文仅将边界框的旋转约束到世界空间z轴,该轴与世界空间重力向量对齐并垂直于地面。论文为RPN试验了两种类型的region proposal方法:基于锚的方法和无锚的方法,见图3。


640.png

整体损失函数如下:


640.png


其他损失函数


Objectness Classification:


640.png

2D Projection Loss:


640.png

用于3D目标检测的NeRF数据集

尚未为3D目标检测构建具有代表性的NeRF数据集。因此,论文利用Hypersim[46]和3D-FRONT[11]数据集构建了第一个用于3D目标检测的NeRF数据集。除了这些合成数据集,论文还结合了SceneNN[19]和ScanNet[5]的真实世界数据集的子集,以证明本文的方法对真实世界数据具有鲁棒性。图5显示了一些选定示例。表1总结了数据集。


640.png

640.png


实验



640.png640.png

可视化结果:


640.png

结论

论文为NeRF提出了第一个重要的3D目标检测框架,即NeRF-RPN,它对从NeRF提取的体素表示进行操作。通过对不同的主干网络(即VGG、ResNet、Swin Transformer以及基于锚的、无锚的RPN头和多个损失函数)进行综合实验,论文验证了NeRF-RPN可以直接从NeRF回归高质量的框,而无需在任何视图中渲染NeRF的图像。为了促进NeRF中3D目标检测的未来工作,论文构建了一个新的基准数据集,该数据集由合成数据和真实数据组成,具有高NeRF重建质量和仔细的边界框标记和清理。我们希望NeRF-RPN将成为一个很好的基线,可以启发和支持未来在NeRF中进行3D物体检测的工作。


参考



[1] NeRF-RPN: A general framework for object detection in NeRFs



原文首发微信公众号【自动驾驶之心】:一个专注自动驾驶与AI的社区(https://mp.weixin.qq.com/s/NK-0tfm_5KxmOfFHpK5mBA

相关文章
|
机器学习/深度学习 算法 数据挖掘
即插即用 | 通过自适应聚类Transformer来提升DERT目标检测器的速度(文末附论文下载)(一)
即插即用 | 通过自适应聚类Transformer来提升DERT目标检测器的速度(文末附论文下载)(一)
790 0
|
5月前
|
机器学习/深度学习 数据可视化 计算机视觉
【YOLOv8改进】MCA:用于图像识别的深度卷积神经网络中的多维协作注意力 (论文笔记+引入代码)
YOLO目标检测专栏介绍了YOLO的创新改进和实战案例,包括多维协作注意力(MCA)机制,它通过三分支架构同时处理通道、高度和宽度注意力,提高CNN性能。MCA设计了自适应组合和门控机制,增强特征表示,且保持轻量化。该模块适用于各种CNN,实验证明其在图像识别任务上的优越性。此外,文章还展示了如何在YOLOv8中引入MCA层的代码实现和相关任务配置。
|
11月前
|
机器学习/深度学习 算法 计算机视觉
旋转目标检测【1】如何设计深度学习模型
平常的目标检测是平行的矩形框,“方方正正”的;但对于一些特殊场景(遥感),需要倾斜的框,才能更好贴近物体,旋转目标检测来啦~
482 0
|
人工智能 算法 计算机视觉
目标检测基础(一)
目标检测基础(一)
115 0
目标检测基础(一)
|
机器学习/深度学习 人工智能 并行计算
【图像分类】基于LabVIEW实现四大经典轻量级网络之一MobileNet的图像分类
【图像分类】基于LabVIEW实现四大经典轻量级网络之一MobileNet的图像分类
265 0
【图像分类】基于LabVIEW实现四大经典轻量级网络之一MobileNet的图像分类
|
传感器 监控 算法
目标检测基础(二)
目标检测基础(二)
122 0
|
机器学习/深度学习 存储 人工智能
图像分类基础(二)
图像分类基础(二)
115 0
|
机器学习/深度学习 存储 数据采集
图像分类基础(一)
图像分类基础(一)
179 0
|
算法 PyTorch 调度
ResNet 高精度预训练模型在 MMDetection 中的最佳实践
作为最常见的骨干网络,ResNet 在目标检测算法中起到了至关重要的作用。许多目标检测经典算法,如 RetinaNet 、Faster R-CNN 和 Mask R-CNN 等都是以 ResNet 为骨干网络,并在此基础上进行调优。同时,大部分后续改进算法都会以 RetinaNet 、Faster R-CNN 和 Mask R-CNN 为 baseline 进行公平对比。
880 0
ResNet 高精度预训练模型在 MMDetection 中的最佳实践
|
计算机视觉
目标检测提升技巧 | 结构化蒸馏一行代码让目标检测轻松无痛涨点(二)
目标检测提升技巧 | 结构化蒸馏一行代码让目标检测轻松无痛涨点(二)
148 0