单目3D自动标注

这里介绍两种

1. 基于SAM的点云标注

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

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

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

3D框生成步骤(见下图):

  • SAM分割图像中每个点的类别(点为prompt,prompt的形式由三种:点、框、)
  • 坐标系对齐:不同时间戳的对齐,组成(camera,lidar)pair
  • 点云投影到SAM分割后的图像得到点云分割的结果
  • 多帧时序结果对点云分割做进一步优化
  • 对每个类别的点云分割结果做最小外接矩形框得到3D框,结合每个类别的长宽高先验,再进一步优化
    • 比如小轿车:4.61.8 1.4;中型轿车&皮卡:4.91.9 1.8; 行人:0.60.7 1.7
  • 点云对齐到图像:

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模块

      检测-跟踪-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

相关推荐
byzy2 天前
【论文笔记】BEVCar: Camera-Radar Fusion for BEV Map and Object Segmentation
论文阅读·深度学习·目标检测·计算机视觉·自动驾驶
代码讲故事2 天前
RAG 工业落地方案框架(Qanything、RAGFlow、FastGPT、智谱RAG)细节比对!CVPR自动驾驶最in挑战赛赛道,全球冠军被算力选手夺走了
人工智能·机器学习·自动驾驶·cvpr·fastgpt·rag·qanything
路有瑶台2 天前
【自动驾驶仿真在做什么——初学者总结(陆续补充)】
自动驾驶·自动驾驶仿真
Ezekiel Mok3 天前
基于路径长度的样条插补算法(自动驾驶和路径跟踪控制适用)
算法·matlab·自动驾驶·路径跟踪·插补
奔袭的算法工程师3 天前
毫米波雷达深度学习技术-1.7训练一个神经网络
人工智能·深度学习·神经网络·目标检测·自动驾驶
Neituijunsir3 天前
2024.06.28 校招 实习 内推 面经
c++·python·算法·面试·自动驾驶·汽车·求职招聘
高登先生3 天前
南京,协同开展“人工智能+”行动
大数据·人工智能·科技·百度·机器人·自动驾驶
Neituijunsir3 天前
2024.06.27 校招 实习 内推 面经
c++·算法·面试·车载系统·自动驾驶·汽车·求职招聘
豆皮卷香菜4 天前
横穿自动驾驶
人工智能·机器学习·自动驾驶·最优化
渡众机器人5 天前
自动驾驶水泥搅拌车在梁场的应用(下)
人工智能·科技·物联网·机器学习·机器人·自动驾驶·搅拌车