【论文阅读】Exploring Object-Centric Temporal Modeling for Efficient Multi-View 3D Object Detection
这篇论文提出了一种名为StreamPETR的长序列建模框架,旨在解决多视角3D对象检测问题。该框架通过以下关键组件和方法实现高效的时间建模和实时性能:
对象中心的时间建模:引入了稀疏对象查询作为中间表示,能够对移动物体进行建模并传播长期时间信息。
传播变换器(Propagation Transformer):通过当前对象查询与历史查询之间的交互,实现时间和空间的交互。
混合注意力层:将内存队列中所有存储的对象查询与当前查询相连接,形成混合查询,计算效率显著提升。
运动感知层归一化(Motion-Aware Layer Normalization):通过隐式编码自车和周围对象的运动信息,提升检测准确性。
在线性能:以在线方式执行,逐帧处理视频流并生成3D预测,适用于实时应用如自动驾驶。
StreamPETR通过低计算成本和高效率,显著提升了多视角3D检测的性能,适用于需要低部署成本和高检测准确性的场景。

该论文的链接:https://arxiv.org/pdf/2303.11926
Q: 这篇论文试图解决什么问题?
A: 该研究提出StreamPETR框架,专注于长序列建模,旨在解决多视角3D对象检测问题。该框架主要聚焦以下几个方面:
高效率的时间建模
该框架采用在线处理机制,支持实时处理视频流,并实现逐帧3D预测。其在线性能对自动驾驶等实时应用具有重要意义。
运动建模方法:为了更有效地处理视频中的运动对象,该方法通过引入运动感知层归一化(motion-aware layer normalization)技术,用于显式编码 own vehicles 和周围物体的运动。
低计算开销
多角度三维检测技术
从整体来看,StreamPETR的目标是通过基于对象中心的时间建模框架,以提升多视角三维对象检测的准确性和效率。同时,该方法的计算开销较低,适用于实时应用,如自动驾驶。
时间建模:
\tilde{F}_{out}=\varphi(F_{2d},F_{bev},F_{obj})

Dense BEV-Based Method
Perspective Method:
\tilde{F}_{obj}^t=\varphi(F_{2d}^{t-k},F_{obj}^t)\cdots+\varphi(F_{2d}^t,F_{obj}^t)
PETRv2采用了全局交叉注意力机制,而DETR4D和Sparse4D则通过稀疏注意力机制模拟多帧间的交互,从而实现了多帧间的交互计算。
Object- Centric method:
\tilde{F}_{obj}^{t-1}=\mu(F_{obj}^{t-1},M)=\varphi(\tilde{F}_{obj}^{t-1},F_{obj}^t)
论文采用稀疏对象查询作为中间变量,能够对移动物体进行建模,并且能够有效地传播长期时间信息。
Q: 论文如何解决这个问题?
该系统详细阐述了其架构设计,基于以下关键组件和方法,系统性地解决了多视角3D对象检测问题:
对象中心的时间建模(Object-Centric Temporal Modeling):
- 引入了一个记忆队列(Memory Queue)来存储历史对象查询。

好的,我来概况一下你提供的信息:
在这个场景中:
- N 被定义为存储的帧数,并设定其值为4。
- K 被设定为每帧存储的对象数量,具体数值为256。这种设置旨在确保在复杂场景中能够保持较高的召回率。
在预设的时间间隔 τ 之后,存储的信息包括:
相对时间间隔 Δt,用于表示所选对象之间的查询时间差;上下文嵌入表示为 Q_c,其中 Q_c 表示从全局视角捕捉的语义信息;对象中心位置 Q_p 被定义为从全局视角到局部视角的映射关系;速度 v 被定义为物体运动速率的度量指标;自我位姿矩阵 E 用于描述物体在局部坐标系中的位置与姿态。
一批数据将被存储在内存中的队列中。
object选择规则的确定,按照每帧基于top-K分类置信度的分类结果来引入先进先出(FIFO)规则。
开发了一个传播机制(Propagation Transformer),通过当前对象与历史对象之间的交互,实现时间维度与空间维度的交互。

该层通过将内存队列中的所有存储对象与当前查询进行混合连接,从而形成混合查询。
- 混合Query中,这些查询被视为多头注意力机制中的键和值。
- 在计算效率方面,由于混合查询的数量极少(约2千个,相较于交叉注意力中的图像标记数量显著减少),因此混合注意力层的计算成本可以忽略不计。
该方法在性能上显著优于asio,主要得益于其简单的设计和简洁的代码。
(Initial Query+Propagated Query)随机初始化的查询项和传播查询数 :以确保公平比较,随机初始化的查询数设置为644项,传播查询数设置为256项。
(Initial Query+Propagated Query)随机初始化的查询数和传播查询数 :为了确保公平比较,随机初始化的查询数设置为644项,传播查询数设置为256项。
(Initial Query+Propagated Query)随机初始化的查询数和传播查询数 :以保证公平比较,随机初始化的查询数设置为644项,传播查询数设置为256项。
(Initial Query+Propagated Query)随机初始化的查询数和传播查询数 :为了保证公平比较,随机初始化的查询数设置为644项,传播查询数设置为256项。
(Initial Query+Propagated Query)随机初始化的查询数和传播查询数 :以确保公平比较,随机初始化的查询数设置为644项,传播查询数设置为256项。
(Initial Query+Propagated Query)随机初始化的查询数和传播查询数 :为了确保公平比较,随机初始化的查询数设置为644项,传播查询数设置为256项。
(Initial Query+Propagated Query)随机初始化的查询数和传播查询数 :以保证公平比较,随机初始化的查询数设置为644项,传播查询数设置为256项。
(Initial Query+Propagated Query)随机初始化的查询数和传播查询数 :为了保证公平比较,随机初始化的查询数设置为644项,传播查询数设置为256项。
(Initial Query+Propagated Query)随机初始化的查询数和传播查询数 :以确保公平比较,随机初始化的查询数设置为644项,传播查询数设置为256项。
Query定义:查询可以定义为随机初始化的3D锚点。
上下文利用机制:通过内存队列中的对象传播,获取当前帧信息,充分结合了视频流中的空间上下文和上下文先验。
基于对象查询的方法,以时间传播机制中的隐含状态为依据,能够同时保证高效性并实现对移动对象的建模。
运动感知层归一化(Motion-Aware Layer Normalization):
为了解决视频中物体运动的处理问题,该论文提出了一种运动感知层归一化模块,该模块能够隐式地编码车辆自身及其周围物体的运动信息。

假设目标为静态,内存队列中的3D中心点Q^{t−1}_p可在显式方式下与当前帧对齐,其对应公式为:
\tilde{Q}_p^t=E_{t-1}^t\cdot Q_p^{t-1}
采用两层MLP结构来学习两个向量γ和β以实现位置对齐:
γ=ξ₁(E_{t−1}^t,v,△t),
β=ξ₂(E_{t−1}^t,v,△t)
然后通过仿射变换来前一帧和后一帧的关系
\begin{aligned}
\hat{Q}{e_type}^{t} &= \gamma \cdot \ln(\psi(\hat{Q}p^t)) + \beta, \
\hat{Q}{certain}^{t} &= \gamma \cdot \ln(Q{certain}^t) + \beta
\end{aligned}
基于对时间戳、速度等动态属性的分析,该方法能够在视频流中实现对目标的精确对准和持续跟踪。
在线性能:
StreamPETR以在线方式执行,逐帧处理流视频并生成3D预测。
该框架主要处理少量的对象查询而非密集的特征图,从而显著降低了计算负担。

