UltimateDO: An Efficient Framework to Marry Occupancy Prediction with 3D Object Detection via Channel2height
Abstract
Occupancy and 3D object detection are characterized as two standard tasks in modern autonomous driving system. In order to deploy them on a series of edge chips with better precision and time-consuming trade-off, contemporary approaches either deploy standalone models for individual tasks, or design a multi-task paradigm with separate heads. However, they might suffer from deployment difficulties (i.e., 3D convolution, transformer and so on) or deficiencies in task coordination. Instead, we argue that a favorable framework should be devised in pursuit of ease deployment on diverse chips and high precision with little time-consuming. Oriented at this, we revisit the paradigm for interaction between 3D object detection and occupancy prediction, reformulate the model with 2D convolution and prioritize the tasks such that each contributes to other. Thus, we propose a method to achieve fast 3D object detection and occupancy prediction (UltimateDO), wherein the light occupancy prediction head in FlashOcc is married to 3D object detection network, with negligible additional timeconsuming of only 1.1ms while facilitating each other. We instantiate UltimateDO on the challenging nuScenes-series benchmarks.
Comments
FlashOcc 结合 object detection 一起做
初版论文,很多地方有待完善
Q&A
1. 检测任务和占据任务是如何一起做的?互相有什么影响?
1.1 联合方法比较
occ 和检测一起做有上图所示的几种思路
- 使用两个独立的模型分别实现 occ 和检测
- 共享 3D 体素特征,使用两个 head 实现 occ 和检测
- 将一个轻量的 occ 模块嫁接在检测上
1.2 具体做法
在得到BEV 特征图后,将全尺寸的特征图输入 center-head
做 3D 检测,在全尺寸的特征图中 crop 出一块输入 occ-head
做 occupancy 的预测。
由于加入了 occ 联合训练,对于 BEV 特征图的数据增强,只使用了翻转,没有旋转和缩放。
可以考虑两阶段训练,旋转缩放对于检测模型还是很有帮助的
第一阶段只训练检测头
第二阶段联合训练
需要做实验测试
不过论文中不加这些数据增强,指标还算可以,加上之后,指标都下降了
论文中也给出了一个训练策略的对比结果表格:
结论:
使用检测模型的预训练模型来做 occ 任务,比从头训练一个 occ 任务效果要好
occ 和 det 联合训练比用预训练的 occ 以及单独的 det 结果要好。
所以直接联合训练就可以了。
1.3 Occ 模块嫁接位置
Occ分支在网络中的嫁接位置至关重要,会影响到:
- 总计算时间
- 检测和占用分支之间错综复杂的相互依赖和纠缠
由浅到深有三种不同的结合方式:
不同方式的实验对比:
初步结论是:
算力充足的条件下,在 backbone 的位置嫁接,会获得最佳性能
否则在 neck 的位置嫁接,计算时间最短
1.4 联合训练的好处
结果表明,细粒度的占用知识有助于在模型内构建 3D 语义理解。同时,实例级 3D 边界框有助于调节对象所在的前景空间。
occ-loss 的权重设计对最终的结果影响也比较大:
保持检测的损失权重 1.0
不变,调整 occ-loss 的权重,从上表可以看出,随着 \(\lambda_{occ}\) 的增加,occ 的指标不断提升,相对的检测指标不断下降,为了保持多任务之间的平衡,最后取 \(\lambda_{occ}=5.0\)
或许和训练epochs有关,增加epoch,occ和detection就可以到达最佳性能
2. crop 操作影响梯度传播吗?会影响部署吗?
目前来看不会影响梯度
是否好部署需要测试