单目3D自动标注

这里介绍两种

1. 基于SAM的点云标注

Seal:是一个多功能的自监督学习框架,能够通过利用视觉基础模型的现成知识和2D-3D的时空约束分割自动驾驶数据集点云

  • Scalability:可拓展性强,视觉基础模型蒸馏到点云中,避免2D和3D的标注
  • Consistency:时空关系的约束在camera-to-lidar和点到分割这两个阶段得到应用,加速了多模态的表征学习

点云通过坐标变换投影到图像上,只要我们分割图像像素的类别,就得到点云的类别(见下图)

单目3D自动标注_第1张图片
3D框生成步骤(见下图):

  • SAM分割图像中每个点的类别(点为prompt,prompt的形式由三种:点、框、)
  • 坐标系对齐:不同时间戳的对齐,组成(camera,lidar)pair
  • 点云投影到SAM分割后的图像得到点云分割的结果
  • 多帧时序结果对点云分割做进一步优化
  • 对每个类别的点云分割结果做最小外接矩形框得到3D框,结合每个类别的长宽高先验,再进一步优化
    • 比如小轿车:4.61.81.4;中型轿车&皮卡:4.91.91.8; 行人:0.60.71.7
      单目3D自动标注_第2张图片
  • 点云对齐到图像:
    在这里插入图片描述

2. 基于离线点云3D检测模型的自动标注

2.1. CTRL(图森)—— 检测+跟踪

图森提出一种基于轨迹的离线的激光雷达检测模型(一旦检测,永不丢失)—— CTRL(https://github.com/tusen-ai/SST)

  • 动机:经验丰富的标注人员会以轨迹为中心的视角来标注物体,首先标注轨迹中形状清晰的物体,然后利用时间上的连续性来推断模糊物体(遮挡或点云少)的标注
  • 方法概述:
    • 采用轨迹为中心的视角,而不是传统的物体为中心的视角
    • 采用双向跟踪模块和轨迹为中心的学习模块

算法流程:

  • 检测模型(FSDv2,FSD V2: Improving Fully Sparse 3D Object
    Detection with Virtual Voxels)得到初步检测结果
  • 双向跟踪模块:
    • 在跟踪过程中,采用简单的运动模块来填补模型检测的难例,并双向拓展轨迹,大大延长了轨迹的生命周期
  • Refine
    • 原因:简单运动模型无法检测物体准确位姿
    • 解决:提出track-centric learning模块来进一步refine
    • 具体步骤:把所有点云和proposal当作输入,送入refine模块
      单目3D自动标注_第3张图片
      检测-跟踪-refine详细步骤:
  • 检测:
    • 采用frame-skigping的多帧合并检测,隔一帧,添加一帧,来减少计算量
      • 添加一帧??什么意思
    • 为了防止过拟合,采用frame dropout 策略,有一半的frame会有20%的几率被dropout
    • 检测模块存在问题:误检和漏检,提高检测的过滤阈值,会导致漏检,需要引入跟踪模块
      • 思考:它通过把误检的先去掉,来单独解决漏检的问题
  • 双向跟踪:
    • Forward tracking:填充早期有检出,中间漏检的框
      • 当tracklet在一定时间步长,没有相匹配的观测,跟踪的前向运动模块会预测一个pseudo-3D box;所以tracklet不会消亡,直到序列结束或目标超出预设的范围。遮挡和截断等难例也能在长时间的跟踪中被检出
    • Back tracking:填充在首次检测之前的漏检框
      • 动机:物体的出现和消失是连续
      • 方法:采用反向的运动模型,从未来有检测帧去反推历史帧的漏检框
  • Refine模块-tracking-centric learning
    • 原因:跟踪模块存在问题:跟踪模块增加的框的位置和置信度相对不准,导致false positive增加,需要refine
    • Multiple-in-multiple-out:
      • 根据扩大后track proposal把整个序列的点云crop下来,downsample到1024个点(防止显存不足),并转到第一帧的全局坐标上,且把同一个track内的点云concat在一起,作为一个训练sample
      • Track feature extraction
        • 采用sparse unet为backbone提取track feature(point-wise feature)
      • Object feature extraction
        • 扩大后Proposal去crop track feature,确保crop物体的完整性
        • Point net去提取特征,对于不同timestamp的crop roi会添加一个编号,表示从哪个timestamp crop下来的

2.2. DetZero

你可能感兴趣的:(自动标注,自动驾驶,检测,跟踪)