😸IA-SSD主要贡献:
- 指明了现有
point-based检测器存在的采样问题,并通过引入两种基于学习(learning-based)的实例感知(instance-aware)下采样策略,提出了一种高效的point-based三维检测器- 论文提出的方法
IA-SSD(CVPR 2022, Oral)是高效的,且能够使用一个模型在激光雷达点云上检测多类对象。此外,论文还提供了详细的内存占用与推理速度对比分析,以进一步验证所提方法的优越性- 在多个大型数据集上的大量实验表明,该方法具有较高的检测效率和精度
✍️尽管并非所有的点对目标检测任务都同等重要,但为了减少内存占用和计算开销,现有的基于点(point-based)的 pipelines 通常采用任务不可知(task-agnostic)的随机采样或最远点采样来逐步向下采样输入点云。此外,对于目标检测器来说,前景点(foreground points)往往比背景点(background points)更重要。因此,论文提出了一种高效、单阶段(single-stage)且基于点的三维检测器 IA-SSD。该方法的关键是利用两种可学习的、面向任务的(task-oriented)、实例感知的下采样策略,分层级地选择(hierarchically select)属于感兴趣对象(objects of interest)的前景点。此外,论文还引入了上下文质心感知(contextual centroid perception)模块来进一步估计精确的实例中心。最后,为了提高效率,论文按照只允许编码器(encoder-only)的架构来构建 IA-SSD。由于低内存占用和高并行度,它在 KITTI 数据集上使用单个 RTX2080Ti GPU 实现了每秒 80 帧以上的卓越速度,且在几个大规模检测 benchmarks 上进行的大量实验证明了 IA-SSD 具有较强的竞争力。下图是在 KITTI 的 benchmark 上比较不同算法的性能:

网络结构

- 将点云数据输入到网络中提取逐点特征,再通过实例感知下采样来逐步降低计算成本,并保留前景点信息
-
实例感知下采样包含类别感知(
Class-aware)采样和质心感知(Centroid-aware)采样这两部分 -
类别感知采样:这种采样策略旨在学习每个点的语义,从而达到选择性的下采样。为了实现这一点,论文引入了额外的分支来获取潜在特性中的丰富语义。即在编码层(
encoding layers)上增加了两个 MLP 层,以进一步估计每个点的语义类别。该采样的损失函数如下Lcls−aware=−∑c=1C(silog(s^i)+(1−si)log(1−s^i)) L_{cls-aware} = - \sum_{c=1}^C(s_i log(\hat{s}_i) + (1-s_i)log(1-\hat{s}_i)) Lcls−aware=−c=1∑C(silog(s^i)+(1−si)log(1−s^i))
✍️其中,CCC 对应检测的类别个数,sis_isi 对应
one-hot编码下的真实标签,s^i\hat{s}_is^i 对应预测值 -
质心感知采样:考虑到实例中心估计是最终目标检测的关键之一,论文提出质心感知下采样策略,使更接近实例质心的点具有更高的权重。具体来说,先定义实例的软点掩码(
soft point mask),再根据该掩码来得到损失函数Maski=min(f∗,b∗)max(f∗,b∗)×min(l∗,r∗)max(l∗,r∗)×min(u∗,d∗)max(u∗,d∗)3Lctr−aware=−∑c=1C(Maski⋅silog(s^i)+(1−si)log(1−s^i)) Mask_i = \sqrt[3]{\frac{min(f^*, b^*)}{max(f^*, b^*)} \times \frac{min(l^*, r^*)}{max(l^*, r^*)} \times \frac{min(u^*, d^*)}{max(u^*, d^*)}} \\ L_{ctr-aware} = -\sum_{c=1}^C(Mask_i \cdot s_i log(\hat{s}_i) + (1-s_i)log(1-\hat{s}_i)) Maski=3max(f∗,b∗)min(f∗,b∗)×max(l∗,r∗)min(l∗,r∗)×max(u∗,d∗)min(u∗,d∗)Lctr−aware=−c=1∑C(Maski⋅silog(s^i)+(1−si)log(1−s^i))
✍️其中,f∗f^*f∗、b∗b^*b∗、l∗l^*l∗、r∗r^*r∗、u∗u^*u∗、d∗d^*d∗ 分别对应点到三维边界框的前、后、左、右、上、下这六个面的距离。由此可知,点越接近边界框的质心,
mask的值越大(最大为1),当点在边界框的某一面上时,mask的值为最小值0。损失函数与类别感知采样类似,只不过将软点掩模与前景点的损失项相乘,使靠近中心的点具有更高的概率
- 学习到的潜在特征(前面保留的前景点信息)进一步输入到上下文质心感知模块,以预测实例的中心
- 上下文质心预测:论文试图利用在边界框周围的上下文线索(
contextual cues)来进行质心预测,其损失函数如下
Lcent=1∣F+∣1∣S+∣∑i∑j(∣Δcij^−Δcij∣+∣cij^−ci‾∣)⋅IS(pij)whereci‾=1∣S+∣∑jcij^,IS:P→{0,1} \begin{aligned} &L_{cent} = \frac{1}{|F_{+}|}\frac{1}{|S_{+}|}\sum_i \sum_j (|\Delta_{\hat{c_{ij}}} - \Delta_{c_{ij}}| + |\hat{c_{ij}} - \overline{c_i}|) \cdot I_S(p_{ij}) \\ &where \qquad \overline{c_i} = \frac{1}{|S_{+}|}\sum_{j}\hat{c_{ij}}, \quad I_S : P \rightarrow \{0, 1\} \end{aligned} Lcent=∣F+∣1∣S+∣1i∑j∑(∣Δcij^−Δcij∣+∣cij^−ci∣)⋅IS(pij)whereci=∣S+∣1j∑cij^,IS:P→{0,1}
✍️其中,∣S+∣|S_{+}|∣S+∣ 是用来预测实例中心的点的数量,Δcij^\Delta_{\hat{c_{ij}}}Δcij^ 是点 pijp_{ij}pij 到实例中心偏移量的预测值,Δcij\Delta_{c_{ij}}Δcij 是点 pijp_{ij}pij 到实例中心偏移量的真实值,ISI_SIS 是一个用来判断是否用这个点 pijp_{ij}pij 来估计实例中心的指示器函数
- 基于质心的实例聚合:对于位移的代表(质心)点,论文进一步利用
pointnet++模块来学习每个实例的潜在表示。具体地说,论文将相邻点转换为局部标准坐标系(local canonical coordinate),然后通过共享的 MLP 和对称函数聚合点特征
- 通过建议生成头回归
3D边界框和相应的类别标签
- 将聚合的质心点特征输入到建议生成头(
proposal generation head)中,用来预测三维边界框和相应的类标签。论文将生成的建议编码为具有位置、大小(scale)和方向的多维表示 - 通过一个使用特定
IoU阈值的3D-NMS后处理来对生成的所有建议进行过滤
损失函数
🙀IA-SSD 可进行端到端(end-to-end)的训练,在该框架中,多任务损失被用于联合优化。总损失由四部分组成,分别是下采样策略中的损失 LsampleL_{sample}Lsample,质心预测损失 LcentL_{cent}Lcent,分类损失 LclsL_{cls}Lcls 和边界框损失 LboxL_{box}Lbox。此外,边界框损失又包含位置、大小、angle-bin、angle-res 和 corner 这几部分。即,总的损失函数表达如下:
Ltotal=Lsample+Lcent+Lcls+LboxLbox=Lloc+Lsize+Langle−bin+Langle−res+Lcorner
\begin{aligned}
&L_{total} = L_{sample} + L_{cent} + L_{cls} + L_{box} \\
&L_{box} = L_{loc} + L_{size} + L_{angle-bin} + L_{angle-res} + L_{corner}
\end{aligned}
Ltotal=Lsample+Lcent+Lcls+LboxLbox=Lloc+Lsize+Langle−bin+Langle−res+Lcorner
😻论文:https://arxiv.org/pdf/2203.11139.pdf
😻代码:https://github.com/yifanzhang713/IA-SSD
本文介绍了IA-SSD三维检测器,它指明现有检测器采样问题,提出两种基于学习的实例感知下采样策略,能在激光雷达点云上检测多类对象。文中阐述了其网络结构,包括实例感知下采样、上下文质心感知模块等,还说明了损失函数由四部分组成,实验证明该方法高效且精度高。
243

被折叠的 条评论
为什么被折叠?



