参考文献:
(67 封私信 / 80 条消息) 自动驾驶Occupancy调研综述202605 - 知乎
(67 封私信 / 80 条消息) Occupancy Network:自动驾驶感知从"有限检测"到"无限理解"的范式革命 - 知乎
occupancy是什么?数学层面长什么样?
Occupancy用一个个带有语义和占用状态的 3D 体素(Voxel)来精细刻画物理空间,是目前解决“长尾异形障碍物(General Obstacles)”和打通端到端感知的终极方案。
nuScenes-Occ3D 标准设定:voxel 大小 0.4 m,范围 [-40,40]×[-40,40]×[-1,5.4] m,共 200×200×16 个体素,17 语义类 + free。
体素就是一个3d立方体
0.4:指的是长宽高都是0.4
范围 [-40,40]×[-40,40]×[-1,5.4] m: 覆盖的实际真实世界物理范围是,以自车为中心左右总共80米,前后总共80m,高度共5.5m
数量:共有200×200×16 个
属性:17 语义类(人,车,树,...) + free
每个体素预测两个量:
占据概率 pᵢ ∈ [0, 1] — 该体素是否被占据 语义类别 cᵢ ∈ {0,1,...,K} — 该体素包含什么(可选)为什么occupancy逐步取代bev?
OCC的核心思想是——不再问"这是什么",而是问"这个空间是否可通行"。
传统视觉感知由2D 检测 → 3D 检测 →BEV 感知演进,但仍存在三大顽疾:
(1)模型对于不在训练词表内的类别就不认识,比如翻车的卡车、躺在路上的轮胎、施工锥桶、掉落货物,就无法识别。
(2)3D检测框于异形车辆、变形物不适用。
独特的优势:
- Class-agnostic(与类别无关):只关心”这个 voxel 是否被占据”——天然解决长尾。
- Geometry-aware(几何精细):恢复物体真实形状,不再是简单的Box。
- Temporal-aware(动态):支持 occupancy flow (4D),可表征运动趋势。
OCC量产的瓶颈
数据标注难度高,成本高
算力开销大: 计算会给三维体素带来大量内存和计算开销,限制了模型部署
自动标注方案
方案A:SurroundOcc流水线(最成熟)
方案B:RenderOcc自监督(ICCV 2024)
方案C:主动学习闭环
推荐标注Pipeline推荐方案(工业级):
推荐方案(工业级): ① SurroundOcc自动生成基础标签 ② AI预标注(SalsaNext点云分割,85%准确率) ③ 人工精修(效率提升3-5倍) ④ SurroundOcc扩展Occupancy标签 ⑤ 主动学习挖掘难例 → 定向标注 总成本:标注效率提升80%,成本降低60%
历史
占据网络一开始是在机器人地图领域内使用的,后面在2022年特斯拉第一次将占据网络引用到自动驾驶,开始了大规模使用
标准的纯视觉3D Occupancy的典型 Pipeline
1. 二维特征提取阶段 (2D Backbone + FPN)
输入:T 个时间戳下的 6 路环视相机图像序列。张量维度通常为 [T, 6, 3, H_{img}, W_{img}]。
处理逻辑:
使用图像骨干网络(如 ResNet-50 或 V2-99)对每张图像进行独立卷积运算,提取二维空间特征。
接入 FPN(特征金字塔网络)融合不同感受野的特征。
输出:多尺度 2D 特征图。
2. 2D特征 → 3D 特征转换
目前主流的四种张量映射策略:
LSS (Forward Projection / 前向投影):先让网络预测图像每个像素点的深度。然后利用相机内参,将2D 像素投影到 3D 物理空间中。
BEVFormer (Backward Projection / 后向查询):预先在 3D 空间中定义体素查询向量。利用相机内外参矩阵,将 3D 坐标反投影至 2D 特征图平面,通过双线性插值采样 2D 特征,加权融合得到3D 查询向量。(因为3D坐标反投影点P可能是带小数的,但是特征图中的2D点是整数,所以P要找到邻近的几个坐标,但是这几个坐标的远近又是不一样的,所以权重也应该不同,这就是双线性插值采样)
FB-BEV :结合上述两者,先用前向投影得到粗糙 3D 种子特征,再进行精确的局部特征采样与细化。
输出:转换完成的 3D 特征体(3D Feature Volume)
3. 时序融合阶段 (Temporal Fusion)
输入:当前帧的 3D 特征体与历史缓存的 T-1 帧 3D 特征体。
处理逻辑:时空联合硬算
物理空间对齐:利用自车运动矩阵,对历史 3D 特征体进行空间仿射变换(平移和旋转),使其三维坐标系与当前帧强制对齐。得到 3 帧坐标已经完全对齐的数据 (X, Y, Z) ,指向同一块绝对物理空间 。
时间维度拼接:再通过时间维度拼接,将这 3 帧独立的 3D 特征张量(维度均为 [X, Y, Z, C]),沿着一个全新的“时间维度(T)”进行堆叠。得到一个完整的4D特征体。
物理空间结构与时间维度的联合特征提取:直接用4D卷积算子进行联合特征提取(因为体素是3d,同时要利用时序信息,所以使用4d算子)。
输出:融合了 T 帧历史信息的单帧 3D 特征体,维度保持为 [X, Y, Z, C_{3D}]
其他处理逻辑:
世界模型推演:将历史占用情况编码为高维Token 。模型利用强大的自回归机制,在特征空间中推演预测未来几帧世界状态
4. 预测占用体素类别
输入:融合完时空特征的 3D 特征体。
处理逻辑:
使用轻量级的3D 卷积(3D Conv)网络进行最后的特征平滑与非线性映射。
或者使用Mask Transformer对特定的语义实体进行分割处理。
输出结果 (Voxel logits):整个 Pipeline 的最终输出。张量维度为 [X, Y, Z, (C_{class} + 1)]。
X, Y, Z 代表 3D 物理空间被划分为的长宽高体素网格数量。class+1:类别+free
方法分类体系
参考 Frontiers of Computer Science 2026 综述,可分为三大主线:
Vision-based 3D Occupancy Prediction │ ├── A. Feature Enhancement(精度优先) │ ├── A1. BEV-based ─ FlashOcc, BEVDet-Occ, FB-OCC │ ├── A2. Tri-perspective ─ TPVFormer, S2TPVFormer │ ├── A3. 3D Voxel-based ─ SurroundOcc, OccFormer, CTF-Occ │ └── A4. Object-centric ─ GaussianFormer, GaussianFormer-2, │ QuadricFormer, SparseOcc │ ├── B. Deployment-friendly(高效化) │ ├── B1. 稀疏化 ─ SparseOcc, OctreeOcc, FastOcc │ ├── B2. 分解/降维 ─ FlashOcc (channel-to-height), │ LowRankOcc, Triplane │ ├── B3. 量化/蒸馏 ─ INT8 PTQ/QAT, KD-from-LiDAR │ └── B4. Mamba/SSM ─ OccMamba, FMOcc │ └── C. Label-efficient(少标注) ├── C1. Self-supervised ─ SelfOcc, RenderOcc, GaussianOcc, TT-GaussOcc ├── C2. Weakly-supervised ─ GaussianFlowOcc, OccFlowNet ├── C3. LiDAR-only GT ─ TPVFormer (sparse) └── C4. Foundation-aligned ─ GaussTR, VLScene, SceneDINO 并行新方向: └── D. World Model & E2E ├── OccWorld, GaussianWorld, OccLLaMA, OccSora ├── Drive-OccWorld, DOME, DriveWorld └── SparseOccVLA, Occ-LLM, OmniNWM代表性方法深度剖析
选择维度:经典 / 工业里程碑 / 高效部署 / 新范式
”思想-架构-亮点-劣势”四要素。
7.1 MonoScene (CVPR 2022) — 单目 SSC 鼻祖
- 思想:单目 RGB → dense voxel SSC(19 类,KITTI 360°前方)
- 架构:2D EfficientNet → FLoSP(frustum lift)→ 3D U-Net → CRP(context relation prior)
- 亮点:第一个 outdoor 单目 SSC,开源代码扎实
- 劣势:单目深度模糊;360° 泛化弱
7.2 TPVFormer (CVPR 2023) — Tri-Perspective 起点
- 思想:用 BEV + 前视 + 侧视 三平面共同表征 3D 场景,避免 dense voxel 显存爆炸
- 架构:BEVFormer-style cross attention 同时填三个平面 → 3D 点取三平面特征求和
- 亮点:稀疏 LiDAR 监督即可达到 LiDAR-only 性能;轻量
- 劣势:三平面投影丢细节;薄物体差
7.3 SurroundOcc (ICCV 2023) — Dense GT 范式开创
- 思想:6 相机 multi-scale 2D-3D attention → 渐进上采 voxel + dense GT 监督
- 核心贡献:Dense GT 生成 pipeline——多帧 LiDAR 静/动分离 + Poisson 重建 + 体素化
- 亮点:把”稀疏 LiDAR GT”提升到”dense voxel GT”,后续工作普遍使用其标注
- 劣势:3D conv 上采计算大;标注 pipeline 工程量大
7.4 OccFormer (ICCV 2023) — Dual-path Transformer
- 思想:Local window + Global path 双分支 transformer 处理 voxel feature
- 亮点:Mask classification 范式(Mask2Former 在 occ 的延伸)
- 后续:被 SparseOcc 继承并稀疏化
7.5 Occ3D + CTF-Occ (NeurIPS 2023) — Benchmark 标准化
- 数据贡献:Voxel densification + occlusion reasoning + image-guided refinement,建立 Occ3D-Waymo / nuScenes
- 方法贡献:CTF-Occ 粗到精级联,Occ3D-nuScenes 28.53 mIoU baseline
7.6 FB-OCC (CVPR 2023 Challenge 冠军)
- 思想:FB-BEV 思想用到 occ:先 forward LSS 获 voxel,再 backward 用 BEV query 精修
- 关键技巧:
- Joint depth-semantic pretraining(用 Object365 + 深度任务联合预训)
- InternImage-H 大 backbone(1B 参数)
- TTA + 模型集成
- 成绩:Occ3D-nuScenes mIoU54.19 %,工业冠军方案
- 劣势:超大模型;非实时
7.7 FlashOcc (2023) — 部署友好里程碑
- 核心:把 voxel feature 压缩到 BEV,最后沿 channel 维 reshape 出 Z 高度—— 全程用 2D conv
- 效果:mIoU 31~37(R50/Swin-B),TRT FP16 197 FPS(3090),INT8 PTQ 397 FPS
- 意义:第一个真正可工程部署的 occ 方案,当前国内主机厂量产基线
- 拓展:Panoptic-FlashOcc 加实例
7.8 SparseOcc (ECCV 2024) + RayIoU
- 思想:Coarse-to-fine 稀疏 voxel decoder + Mask Transformer,全程稀疏
- 效果:Occ3D-nuScenes RayIoU36.1,A100 上17.3 FPS,超过 FB-OCC 而模型小得多
- 工程价值:Latency-bound 场景首选,已成为新一代 baseline
- 副产物:RayIoU 指标已成为 CVPR24 challenge 标准
7.9 SelfOcc (CVPR 2024) — 自监督
- 思想:无 3D GT,把 BEV/voxel 视为 SDF,渲染前后帧图像对齐做监督
- 意义:解决 occ 标注昂贵的难题,是 RenderOcc/GaussianOcc 系列的前奏
7.10 GaussianFormer (ECCV 2024) / GaussianFormer-2 (CVPR 2025)
- 范式革命:用 N 个 3D 语义 Gaussian(位置、协方差、语义)替代 dense voxel
- 效率:内存降 75–82 %;GaussianFormer-2 仅需 GaussianFormer 8.9 % 的高斯数
- 实现:CUDA 自定义 Gaussian-to-voxel splatting kernel
- 趋势:催生 GaussianWorld / GaussianFlowOcc / QuadricFormer 整个家族
7.11 OccWorld (ECCV 2024) — Occupancy 世界模型
- 思想:先 VQVAE 把 occ 离散成 token,再 GPT-style spatial-temporal transformer 自回归 rollout 未来帧 + ego token
- 下游:直接做规划,无需 detection / map 监督
- 延伸:OccLLaMA(接 LLaMA)、OccSora(diffusion 世界模型)、Drive-OccWorld
7.12 GaussianWorld (CVPR 2025) — Streaming Occ
- 思想:把 occ 预测重新定义为”4D occupancy forecasting conditioned on current input”
- 拆解三因素:① 静态场景 ego motion 对齐;② 动态物体局部运动;③ 新观测区补全
- 优势:在不增加计算的前提下 mIoU + 2 % 提升
7.13 SparseWorld (AAAI 2026) / SparseOccVLA (2026)
- 趋势性论文:
- SparseWorld:sparse + dynamic queries,回归式而非分类式 forecasting
- SparseOccVLA:把 sparse occupancy query 注入 VLM,统一 4D 理解与规划
- 意义:标志 occ 从纯感知向VLA / 端到端基础模型演进
occ方案选择:
- 冲精度榜:FB-OCC 路线(大 backbone + 双向投影 + 多帧融合)。
- 冲速度/部署:FlashOcc / SparseOcc 路线。
- 冲显存与新范式:GaussianFormer 系。
- 冲下游/端到端:OccWorld / SparseWorld 系。
现状与开放问题
- 多模态 SOTA 已稳定领先纯视觉 5–10 mIoU,但延迟与算力成本翻倍,量产 ROI 仍需评估。
- SpConv 部署友好性:3D sparse conv 在端侧仍是挑战,BEV-reshape 风格的 LiDAR Occ 是实战折中。
- 数据集对齐:SemanticKITTI(前向 64 线)vs nuScenes-Occupancy(360°,32 线)评测口径迥异,跨数据集泛化欠佳,UniOcc 是首批尝试。
- Visibility-aware 监督:LiDAR 与 Camera 的 visibility mask 不一致,融合时如何处理仍是 open question。
- 与 Flow / Forecasting 联动:LiDAR doppler / multi-frame 时序天然适合 occ flow,但联合 benchmark 仍少(Cam4DOcc 主要 camera-only)。
工程落地与部署优化
工程落地痛点
| 痛点 | 来源 | 解法 |
|---|---|---|
| 3D 张量显存大 | 200×200×16×C | BEV→Z reshape / 稀疏 / Gaussian / Triplane |
| 3D conv 在 TRT 不友好 | TRT plugin 缺 | 全 2D conv + channel reshape |
| 多帧 BEV warp 内存 | T 帧 cache | StreamPETR 风格 query stream |
| GT 标注昂贵 | LiDAR + 手工 | self-sup / render / Gaussian |
| 量化精度损失 | 3D 头敏感 | QAT / Lovasz loss / per-channel scale |
| 域差距 | 不同摄像机外参 | UniOcc / 数据增强 / domain adaptation |
推理优化技术栈
(1) 算法侧
- 降维:FlashOcc channel-to-height、Triplane、低秩分解(LowRankOcc)
- 稀疏:SparseOcc(mask transformer)、OctreeOcc(八叉树)、GaussianFormer(object-centric)
- 轻量 backbone:R18 / R34 / RepVGG / EfficientFormer
- 分辨率分级:核心区 0.4 m,远距 0.8 m
- Temporal 稀疏化:仅缓存 query/feature token,不缓存 dense voxel
(2) 系统侧
- TensorRT 量化:
- PTQ:Entropy/MinMax 校准 → INT8
- QAT:插入 Q/DQ 节点 PyTorch fine-tune → ONNX → TRT engine
- 经验:Conv backbone INT8 安全;3D head 建议 FP16
- FlashOcc 实测:FP16 197 FPS → INT8(PTQ) 397 FPS(mIoU -2.4 %)
- Sparsity 加速:Ampere 2:4 结构化稀疏 + INT8(NVIDIA TRT 8.0+)
- Operator Fusion:Conv-BN-ReLU 合并;自定义 Gaussian splatting CUDA kernel
- Kernel autotuning:trtexec –best;设定 dynamic shape 匹配多分辨率
- 多任务并发:与 BEV detection 共享 backbone,节省一半算力
(3) 部署目标平台
| 平台 | 算力 | 可行模型 |
|---|---|---|
| NVIDIA Orin-X (254 TOPS INT8) | 高 | FlashOcc-Swin / SparseOcc-R50 实时 |
| Orin-N (84 TOPS) | 中 | FlashOcc-R50 INT8 ≈ 30 FPS |
| 地平线征程 6 (J6, 560 TOPS) | 高 | FlashOcc-Swin INT8 高帧率 |
| 黑芝麻 A2000 | 中高 | 可部署,需算子适配 |
| 高通 SA8650 | 中 | INT8/INT4 + 蒸馏 |
工程化 Tips
- 先用 FlashOcc 做 baseline,因为它最易跑通端到端 PyTorch → ONNX → TRT engine 流水线。
- Voxel 范围与分辨率要与下游对齐:规划/控制需要 0.2~0.4 m,上限 80 m;记得提前与下游确定接口。
- Camera mask 训练 vs 全空间评测:Tesla 实战会同时输出 camera-visible 与 unobserved 区域;后者不参评但要给 prior。
- Ego pose 抖动校正:多帧 fusion 一定要用更精的 pose(Gyro+轮速 EKF),否则边缘出现”鬼影”。
- 数据增强:BDA(BEV data aug)、SyncBN→GroupNorm(小 batch 友好)、Lovasz-Softmax 提精度,FlashOcc/SparseOcc 已验证。
- 类别不平衡:driveable surface / building 占 voxel 巨多,pedestrian/bicycle 极少 → class-balanced loss 是必备。
- 半空中的”漂浮 voxel”问题:dense GT 由 LiDAR 累积可能漂浮,训练上加 free-space gradient regularization 或 visibility mask。
OCC 输出能直接驱动的任务
| 下游任务 | 用法 |
|---|---|
| AEB / 紧急避障 | 任意被占据 voxel 视为 obstacle,触发风险评估 |
| 可行驶区域 | driveable surface 类别 voxel → 可走路面图 |
| 路径规划 (Planning) | OCC 灌入 cost map(含 inflation),A* / Hybrid A* / Lattice |
| 泊车 / HFPA | 高分辨率局部 occ,复杂车位、立柱、地锁 |
| 运动预测 | occupancy flow → 障碍物未来轨迹 |
| 建图 | 多帧 occ 累积 → 静态 prior map |
| Sim2Real / 数据闭环 | occ 作为 sim 中间表征,可生成新视角图像 |
| 端到端规划 | OccWorld 直接 rollout latent,连接 ego token |
总结
Occupancy 是自动驾驶感知从”目标级”走向”空间级”的关键一跃。它让车辆首次具备”无视类别的几何感知”能力,是迈向真正 L4 安全冗余不可绕过的一步。
- Occupancy 是自动驾驶感知的下一代基石:解决长尾、异形、背景三大问题,已被 Tesla / 国内主机厂量产验证。
- 三条主线:精度(FB-OCC 系)、效率(FlashOcc / SparseOcc 系)、新范式(Gaussian / World Model 系)。
- 量产首选:FlashOcc 风格的 BEV-channel-to-height + INT8 + 多帧 fusion,是兼顾精度速度成熟度的最佳起点。
- 学界前沿:4D forecasting、Gaussian 表征、自监督、与 VLM/VLA 融合,是 2025-2026 最热的四个分支。
- 评测演进:mIoU → RayIoU;single-frame mIoU → forecasting mIoU + flow EPE;trustworthy/uncertainty 也在崛起。
未来 12 个月的预判
- 量产渗透率:occupancy 将成为主机厂 NOA 标配,占据栅格分辨率向 0.2 m 推进。
- GaussianFormer 风格:会作为旗舰车型差异化方案出现(显存极省 + 几何细腻)。
- OccWorld 流派:与 VLA 融合,成为端到端规控的”世界模型”层。
- 数据/标注:Self-supervised + 大模型蒸馏 → 标注成本下降一个数量级。
- 平台:Orin → Thor / J6P;INT4/FP4 量化逐步成熟;动态稀疏推理普及
拓展:
行内黑话:
L2 辅助驾驶(如自适应巡航 ACC + 车道保持 LCC)
NOA:
高速 NOA (Highway NOA):导航辅助驾驶
场景:运行在封闭的高速公路或城市快速路上。
难度:相对较低。因为没有红绿灯、十字路口、行人或非机动车。目前国内主流的新势力和头部车企已经基本实现了全国普及。
城市 NOA (Urban NOA / City NOA):
场景:运行在极其复杂的城市开放道路上。
难度:极高。系统需要处理红绿灯识别、无保护左转、加塞车辆、乱穿马路的行人与外卖小哥。这是目前感知技术面临的最大挑战,也是前沿的BEV + Occupancy + 时序网络技术主要发力解决的核心痛点。
国内主机厂格局:
理想 AD Max(128 线 LiDAR)、蔚来 NIO Aquila(半固态 + 4D Radar)、小鹏 G9/G6(半固态)、Robotaxi(Waymo / 元戎 / 文远 / Pony.ai)均配置 LiDAR;它们的 Occupancy stack 通常使用 LiDAR-centric 或 Camera-LiDAR fusion。
国内主机厂量产方案(公开信息综合)
| 厂商 | 方案 | 关键词 |
|---|---|---|
| 小鹏 XNet 2.0 | OCC 头 + BEV head 双输出 | OrinX 部署,FlashOcc 风格 channel-to-height |
| 理想 AD Max | OCC 网络 | Orin-X 双芯,VLA 路线 |
| 华为 GOD | General Obstacle Detection | 对应”通用障碍物检测”= 占据栅格变体 |
| 蔚来 NIO Aquila | OCC + Lidar 融合 | 多模态占据网络 |
| 比亚迪 Pilot | OCC + 城市 NOA | 算法供应商主导 |
| 毫末智行 (Haomo) | Cam4DOcc(自研,CVPR24) | 4D occupancy 预测 |
| 轻舟 Driver / 商汤 | OCC + 端到端 |
共识:FlashOcc 风格的 BEV-channel-to-height + 多帧 fusion + INT8 部署是当前主流量产路径。SparseOcc / GaussianFormer 仍处于研发预研阶段。
端到端框架的演进趋势
| 阶段 | 代表方案 | OCC角色 |
|---|---|---|
| 感知-规划分离 | 传统方案 | 无直接接口 |
| 模块化端到端 | UniAD | OCC作为感知核心输出 |
| One Model端到端 | 特斯拉FSD v12+ | OCC隐式存在于大模型中 |