Occ3D: A Large-Scale 3D Occupancy Prediction Benchmark for Autonomous Driving

Occ3D

https://tsinghua-mars-lab.github.io/Occ3D/

Occ3D: A Large-Scale 3D Occupancy Prediction Benchmark for Autonomous Driving

重点关注其数据集

提出了一个更为通用的Occ数据生成方式,可以用于生成不同场景下的高密度、所见即所得的Occ数据。主要包括三个步骤:1)体素稠密化,2)遮挡推理,3)图片引导refine

Method

分别基于nuscenes和waymo数据集生成Occ数据集,具体参数如图:

除了原有数据集中分割的类别,还增加了通用类别(general object,GO)的标注。

其中,nuscenes数据集的标注范围为[-40m, -40m, -1m, 40m, 40m, 5.4m]; waymo的标注范围为[-80m, -80m, -1m, 80m, 80m, 5.4m]
Dataset Construction Pipeline

完整的数据生成流程如图所示:

由于图像缺乏可靠的深度和尺度信息,因此仅利用图像进行Occ真值生成是不可能的。因此本文利用点云和其分割结果重建高质量的Occ真值,并解决了几个关键问题:1) 点云稀疏性问题,2) 遮挡问题,3) 点云与图像之间的对齐问题。

  • Voxel Densification
  1. 关键帧叠帧,并对动/静态物体分开处理
  2. 引入非关键帧,利用KNN分配对应标签
  3. 表面重建
    对于非地面目标,使用VDBFusion进行表面重建;但对于地面目标,VDBFusion 会因光线角度过小导致 TSDF值不正确而失败。因此,本文将地面划分为多个区域,利用区域内的点来拟合表面网格进行泊松重建。
    重建网格后,进行密集点采样,并再次利用KNN为采样点分配标签。
  • Occlusion Reasoning for Visibility Mask
    本文提出了遮挡推理,并分别应用于雷达和相机视角,从而生成可见性掩码。

由于点云的稀疏性,很容易将空洞误以为是"free",因此本文采用叠帧数据下的射线广播的方法,如图a所示,如果该点位置反射了来自雷达的射线,则定义为"occupied",若an该点被射线o穿透,则定义为"free",除此之外,则定义为"unobserved"。

我们将每个被占据的体素中心与摄像机原点连接起来,从而形成一条射线。沿着每条射线,我们将第一个被占据的体素设为 "observed",其余的设为"unobserved"。相机射线未扫描到的任何体素也会被设置为 "unobserved"。

  • Image-guided Voxel Refinement
    由于雷达噪声和位姿偏移的影响,点云数据对于物体的观测会比实际物理尺寸要大,因此本文引入了图像引导的体素细化方法对结果进行细化和去噪。

同样采用射线广播的方法,但这次我们使用的是相机射线,并使用相机图像作为参考。

Experiment




相关推荐
UMI赋能企业30 分钟前
企业视频库管理高效策略
大数据·人工智能
一念&2 小时前
今日科技热点 | AI加速变革,量子计算商用化,5G应用新机遇
人工智能·科技·量子计算
Ysn07192 小时前
pytorch_grad_cam 库学习笔记—— Ablation-CAM 算法的基类 AblationCAM 和 AblationLayer
pytorch·笔记·学习
严文文-Chris2 小时前
【GPT-5 与 GPT-4 的主要区别?】
人工智能·gpt
过往入尘土3 小时前
计算机视觉:从 “看见” 到 “理解”,解锁机器感知世界的密码
人工智能
飞哥数智坊4 小时前
别再组团队了,AI时代一个人就能创业
人工智能·创业
严文文-Chris4 小时前
GPT5的Test-time compute(测试时计算)是什么?
人工智能
Java中文社群5 小时前
白嫖ClaudeCode秘籍大公开!超详细
人工智能·后端
MicrosoftReactor5 小时前
技术速递|使用 AI 应用模板扩展创建一个 .NET AI 应用与自定义数据进行对话
人工智能·.net