论文链接——https://arxiv.org/abs/2407.18232
项目代码地址在上一个博客里
摘要
Transformer在3D点云检测中的优势受到建模远程关系时的二次计算成本的限制。相比之下,线性RNN的计算复杂度较低,适合长程建模。我们提出了一个简单而有效的基于窗口的框架,构建在LInear grOup RNN以实现3D 检测,称为LION。关键属性是允许在比基于转换器的方法大得多的组中进行足够的特征交互。然而,由于线性群RNN在处理空间建模方面的局限性,有效地将线性群RNN应用于高度稀疏点云中的3D对象检测并非易事。为了解决这个问题,我们简单地引入3D空间特征描述符并将其集成到线性组RNN算子中以增强其空间特征,而不是盲目地增加体素特征的扫描阶数。为了进一步解决高度稀疏点云的挑战,我们提出了一种 3D 体素生成策略,利用线性组 RNN 作为自回归模型的自然属性来致密前景特征。大量实验验证了所提出组件的有效性以及我们的 LION 在不同线性组RNN算子(包括Mamba、RWKV和RetNet)上的泛化性。我们的LION-Mamba在Waymo、nuScenes、Argoverse V2 和数据集上达到了最先进的水平。 还支持小型但流行的 KITTI 数据集上的各种高级线性 RNN 算子(例如RetNet、RWKV、Mamba、xLSTM 和 TTT)。
引言
现在Transformer广泛应用于3D检测中,但由于计算限制,它们仅以较小的组大小对柱或体素特征交互进行自注意力,从而锁定了 Transformer 用于建模远程关系的潜力,但是一些线性RNN算子如Mamba线性计算复杂度已经实现了与 Transformer 竞争的性能,特别是对于长序列。 因此他们想在3D 目标检测中使用线性 RNN 以较低的计算成本在更大的群体中执行远程特征交互。
他们提出的LION(右)与现有方法DSVT(左)不同,它可以支持数千个体素特征在一个大组中相互交互以建立远程关系。他们说他们的贡献有
1) 提出了一种简单有效的基于窗口的 3D 主干网络,基于名为 LION 的线性群 RNN,以允许远程特征交互。
2) 引入了一个简单的 3D 空间特征描述符,并将其与线性组 RNN 集成,弥补了捕获 3D 局部空间信息的不足。
3) 提供了一种新的 3D 体素生成策略来致密前景特征,从而在高度稀疏的点云中产生更具辨别力的特征表示。
4) 用不同的线性组 RNN 机制(例如Mamba、RWKV、RetNet)验证了 LION 的泛化能力。
方法
LION 由 3D 主干、BEV 主干和检测头组成,与大多数基于体素的 3D 检测器保持一致的管道。如下图,backbone主要是由若干个LION Block组成(远程特征交互),经过lion块后,进行体素生成(增强稀疏点特征表示),然后体素合并操作(逐渐对高度特征进行下采样)。
1. 3D稀疏窗口分区
首先将点云转换为总数为L的体素。然后,我们将这些体素划分为形状为 (Tx,Ty,Tz) 的不重叠的 3D 窗口,其中Tx、Ty和Tz表示窗口沿X轴、Y轴和Z轴的长度、宽度和高度。 接下来,分别沿着X轴和Y轴对体素进行排序。 最后,为了节省计算成本,我们将排序的体素划分为具有相同大小K的组,而不是相同形状的窗口以进行特征交互。 就是每个窗口的体素数量相同,而且数量很多
2. LION Block
LION 块是核心组件,其中涉及用于远程特征交互的 LION 层、用于捕获局部 3D 空间信息的 3D 空间特征描述符、用于特征下采样的体素合并和用于特征上采样的体素扩展,如下所示。此外,由于不同3D物体的尺寸差距,LION块是一种分层结构,可以更好地提取多尺度特征。
2.1 LION 层
LION层由两个线性群RNN算子组成。 第一个用于基于X轴窗口分区进行远程特征交互,第二个可以基于Y轴窗口分区提取远程特征信息。 利用两个不同的窗口分区,LION层可以获得更充分的特征交互,产生更具辨别力的特征表示。
2.2 3D空间特征描述符
当输入体素特征被展平为一维序列特征时,空间信息可能会丢失。 例如,如下图所示,3D空间中有两个相邻的要素(即,索引为01和34),当它们被展平为一维序列特征后,它们在一维空间中的距离非常远。 为了解决这个问题,引入一个3D空间特征描述符来增强局部空间信息,它由3D子流形卷积、LayerNorm层和GELU激活函数组成。此外,他们将3D空间特征描述符放在体素合并之前,以减少体素合并过程中的空间信息损失。
2.3 体素合并和体素拓展
为了获得多尺度特征,采用了分层特征提取结构。采用体素合并进行特征下采样,采用体素扩展进行特征上采样。具体来说,对于体素合并,我们计算并保留体素的索引来合并体素进行下采样。在体素扩展中,通过之前保留的索引逆变换回去进行上采样。
3. 体素生成
考虑到高度稀疏点云中特征表示的挑战以及实现体素合并的潜在信息损失,他们提出了一种体素生成策略,借助线性RNN的自回归能力来解决这些问题。
3.1 无监督的情况下区分前景体素
首先确定需要生成体素特征的哪些区域。他们注意到3D主干中沿通道维度的特征响应的相应高值通常是前景。 首先计算第i个LION块的输出特征Fi的特征响应Fi∗(特征在所有通道的平均值),随后按降序对特征响应Fi∗进行排序,并从非空体素总数L中选择相应的前m个体素作为前景,其中 m=r∗L,r是前景的比率,获得前景特征,用于后来的体素生成。就是选特征最高的前m个体素作为前景
3.2 具有自回归特性的体素生成
先前的方法采用K近邻方式获取生成的体素特征,但是存在冗余特征和有限的感受野。我们利用线性RNN的自回归特性,通过与大组中的其他体素特征进行特征交互来有效地生成新的体素特征。如图所示,首先通过用四个不同的偏移量([-1,-1, 0]、[1,1,0]、[1,-1,0] 和 [-1,1,0])分别沿 X 轴、Y 轴扩散所选前景体素来获得扩散体素。 然后,将扩散体素的相应特征初始化为全零。 接下来,我们将第i个LION 块的输出特征 Fi 与初始化的体素特征连接起来,并将它们输入到后续的第i+1个LION 块中。 最后,由于LION块的自回归能力,可以基于大组中的其他体素特征有效地生成扩散体素特征。