专栏名称: 3D视觉工坊
1、OpenCV的技术传播; 2、3D点云与重建技术; 3、Vslam技术; 4、深度学习; 5、技术干货分享。
目录
相关文章推荐
传媒招聘那些事儿  ·  网易:新媒体社区运营 ·  2 天前  
51HR派  ·  分手想复合,下情蛊有用吗? ·  昨天  
沉默王二  ·  太刺激了,腾讯今年新招7000人! ·  2 天前  
传媒招聘那些事儿  ·  【全职岗位表格】在线文档持续更新:新闻媒体/ ... ·  3 天前  
51好读  ›  专栏  ›  3D视觉工坊

CenterPoint:3D目标检测与跟踪

3D视觉工坊  · 公众号  ·  · 2021-10-14 07:00

正文

点击上方“ 3D视觉工坊 ”,选择“星标”

干货第一时间送达

作者丨元气满满的打工人
来源丨CV研习社

文章导读

导读:随着自动驾驶行业热度的不断升温,也带动了其他技术的不断发展。其中计算机视觉作为其核心技术也在快速的迭代。3D目标检测技术小编之前已经分享过几篇文章,小编今天要分享的论文是CenterPoint:Center-based 3D Object Detection and Tracking。该方法同时包含检测和追踪二种技术,让我们一起学习一下吧。

Part 01

目标检测和目标跟踪的联系和区别

联系:

(1)目标跟踪需要依靠检测,目标跟踪必须先通过检测实现目标的定位,才能实现后续的跟踪。

(2)如果将动态的检测过程按照一定的时间间隔进行拆分(如一帧图像),再进行静态的检测,则目标检测可以实现类似目标跟踪的效果。


区别:

(1)目标跟踪比目标检测略复杂一些,目标检测一般为静态的检测,而目标跟踪通常为动态定位。

(2)目标检测一般利用模型中的特征信息或先验知识在单帧图像中找到感兴趣的区域,而目标跟踪是根据已有的目标的位置信息,在后续的跟踪过程中匹配最佳位置,重点在于目标的匹配过程。


Part 02

Center-based表示的几点优势

(1)不同于bounding-box的方式,点没有内在的方向。因此可以减少目标检测器的搜索空间,同时允许backbone学习对象的旋转不变性和它们相对旋转的旋转方差。

(2)有利于简化下游的任务(跟踪),如果对象是点,则轨迹就是空间和时间下的路径,则网络就可轻松的预测连续帧之间的相对偏移,并连起来即可。

(3) 基于点的特征提取可以方便研究者设计一个速度更快且更有效的二阶段细化模块。


Part 03

CenterPoint网络的提出

文章提出了一个基于Center-based的二阶段的检测结合跟踪的模型CenterPoint。在第一阶段,使用关键点检测器检测对象的中心,并对检测框的3D尺寸、3D方向和速度进行回归。第二阶段,设计了记忆细化模块,对第一阶段产生的检测框,使用额外的点特征来进行细化。CenterPoint的网络结构图如下:

网络结构图


CenterPoint的性能表现: 在Waymo和nuScenes二大公开数据集下进行了实验,center-based的方法相比box的方法有3-4mAP的精度增长,在检测任务中取得了较高的精度。在跟踪任务中,甚至比之前的方法高出了50%的精度。文章提到该方法能够实时推理,具有很好的学习价值。


Part 04

CenterPoint 具体的实现方式

如下图所示(此图为论文v1版本的网络框架图,对应上面v2版本论文中框架图的a、b和c三部分),网络共有4个输出,基于类的Heatmap、3D目标的大小、旋转角和速度。

论文v1版本的网络结构图


下面将对这4个模块进行逐一介绍。

Center heatmap head: 在这里,作者参照了CenterNet中的热力图回归方式,并进行了一些改进。首先介绍一下CenterNet的热力图的回归方式。在CenterNet网络中对于一张3通道的大小为W×H的图像,最终会输出一张K通道,大小为(W/R)×(H/R)的热力图,其中R代表输出的步长,K为待检测目标的类别数。热力图如下图所示,热力图中的数值有2个,0和1。若数值为1,则代表图像中的该点即为检测框的中心点。若数值为0,则代表此区域为背景。

热力图


由于3D点云稀疏的特性,3D目标的特征不会像2D中那样显著,如直接使用CenterNet在点云中生成热力图,则热力图中必定大部分都是背景。因此文章的改进在于增加了目标热力图的正向监督,即扩大每个地面实况对象中心渲染的高斯峰值。具体的做法是设置高斯半径为σ = max(f(wl), τ ),其中τ = 2为最小高斯半径值,f为CenterNet中定义的半径函数。


通过这种方式,CenterPoint 保持了基于中心的目标分配的简单性,同时该模型从附近的像素获得了更密集的监督。


Regression heads: 将一些对象属性存储在对象的中心特征上,包括sub-voxel位置细化、离地高度、3D大小和偏航旋转角。Sub-voxel位置细化减少了backbone网络的体素化和跨步的量化误差。离地高度hg有助于在3D中定位对象,并添加由map-views投影删除的缺失高程信息。方向预测使用偏航角的正弦和余弦作为连续回归目标。并结合框大小,这些回归头提供了3D边界框的完整状态信息。


Velocity head and tracking: 为了通过时间跟踪对象,网络学习预测每个检测到的对象的二维速度估计 v ∈ R2 作为额外的回归输出。速度估计是特殊的,因为它需要两个输入map-views的当前和前一个time-step。它预测当前帧和过去帧之间对象位置的差异。与其他回归目标一样,速度估计对当前time-step下目标位置的真值使用L1 损失进行监督。


二阶段的CenterPoint: 网络第二阶段的处理,将根据第一阶段的将根据第一阶段的检测框信息和特征图信息,从预测边框的每个面的三维中心提取一个点特征。对于每个点,使用双线性插值从主干map-views输出M中提取一个特征,并将点特征输入全连接网络MLP对结果进行细化。

第二阶段在一阶段CenterPoint 的预测结果之上预测与类别无关的置信度分数和进行目标框细化。置信度score的表示预测结果与真值之间的3D IoU,计算公式如下:

网络训练时使用二进制交叉熵损失函数作为监督,公式如下所示,其中It为预测的置信度score:


Part 05

实验

作者就检测和追踪二个任务分别在公开数据集上进行了实验。


对于检测任务: 在Waymo数据集上,模型在level2上在对车辆和行人的检测中分别取得了71.8和66.4的mAPH精度值,比先前的方法有一定的提升。在nuScenes数据集上,模型在多尺度输入和多模型集成方面比去年的冠军模型CBGS高出了5.2%的map和2.2%的NDS。结果如下表所示:


对于跟踪任务: 在Waymo数据集中,本文的模型与该领域的baseline模型AB3D进行了比较,结果有明显的提升。在nuScenes中,同样和AB3D模型和先前最好的模型进行了比较,结果同样有明显的提升。具体结果如下表所示:


Part 06

总结

文章提出了一种Center-based的雷达点云的3D目标检测和跟踪的框架。方法的结构较为简单,取得了检测和跟踪二个任务上的效果提升。在推理速度上,文章中多次提到能够达到实时,但其使用的是桌面级显卡Titan RTX,而通常模型会在移动端使用。因此,其实时性有待验证,但不可否认文章的方法具有一定的创新性,有较强的学习价值。

本文仅做学术分享,如有侵权,请联系删文。

3D视觉精品课程推荐:

1.面向自动驾驶领域的多传感器数据融合技术
2.面向自动驾驶领域的3D点云目标检测全栈学习路线!(单模态+多模态/数据+代码)
3.彻底搞透视觉三维重建:原理剖析、代码讲解、及优化改进






请到「今天看啥」查看全文