论文阅读:Image-to-Lidar Self-Supervised Distillation for Autonomous Driving Data

目录

摘要

Motivation

整体架构流程

技术细节

雷达和图像数据的同步

小结


论文地址: [2203.16258] Image-to-Lidar Self-Supervised Distillation for Autonomous Driving Data (arxiv.org)

论文代码:GitHub - valeoai/SLidR: Official PyTorch implementation of "Image-to-Lidar Self-Supervised Distillation for Autonomous Driving Data"

摘要

    自动驾驶汽车的图像到雷达自我监督蒸馏。

    在自动驾驶中两项重要任务:分割或检测稀疏激光雷达点云目标(使车辆在3D环境中安全运行)。在3D语义分割或目标检测中,性能最好的方法依赖于大量带标注数据(注释3D激光雷达数据既复杂又昂贵)。 论文提出一种自监督预训练方法,适用于自动驾驶数据的3D感知模型。即,利用自动驾驶设备中同步和校准的图像和激光雷达传感器的可用性,将自监督的预训练图像表征蒸馏到3D模型中(不需要任何点云或图像标注)。

    方法关键是使用超像素(superpixel),用于在视觉相似区域中池化3D点特征和2D像素特征,然后训练一个3D网络进行自监督任务,再匹配池化点特征与相应的池化图像像素特征。通过超像素获得的对比区域优势在于:

  1. 将视觉上相干区域的像素和点组合在一起,可以产生更具意义的对比任务,从而产生非常适合3D语义分割和3D目标检测的特征;
  2. 所有不同区域在对比损失中权重相同,与这些区域中采样的3D点数量无关;
  3.  减轻由于不同传感器之间遮挡而导致的点和像素不正确匹配所产生的噪声。在自动驾驶数据集上的大量实验表明,我们的图像到激光雷达蒸馏策略能够产生良好的语义分割和目标检测任务的3D表征。

Motivation

  1. 对三维激光雷达点云进行标注是一项耗时耗力的任务;
  2. 目前的SSL方法多适用于室内密集点云,如PointContrast;
  3. 自动驾驶汽车装置中同步和校准的多模态数据的可用性。

整体架构流程

    利用自动驾驶汽车的同步和校准的摄像头和激光雷达传感器将自我监督的预训练图像表示提取到3D网络中。这个3D网络就是实际需要得到的表征,可以很好地转移到2D中各种复杂的下游任务中,通常超过监督预训练(实现无需标注和少量标注)。即,自我监督的2D到3D表征蒸馏,SLidR。SLidR 将预训练和固定 2D 网络的知识提炼成一个 3D 网络。它使用超像素将视觉上相似区域的特征汇集在一起,无论是在图像上,还是在通过超像素反投影的点云上。超像素驱动的对比损失对齐池化点和图像特征。如图所示:

  对雷达数据和相机的图像数据进行超像素分割得到超像素,经过点云到图像的一个反投影可以得到点与像素的映射关系,且得到superpoint与superpixel对应关系,然后图像数据经过预训练的2D网络再经过一个project head与雷达数据经过3D网络,再经过一个projection head,这样得到的就是相同维度的特征,再经过一个平均池化,就可以进行对比损失优化。(来自于:[论文阅读] Image-to-Lidar Self-Supervised Distillation for Autonomous Driving Data - 知乎 (zhihu.com))

    流程如下图所示,图像经过超像素分割得到超像素,且反投影到点云上,然后图像经过2D网络(先经过预训练网络再经过一个projection head),然后进行池化;点云数据经过3D网络(先预训练然后经过一个projection head),然后进行池化。这个时候就得到superpixel特征和superpoint特征,然后计算损失loss,匹配superpoint与其对应的superpixel,从而联合训练3D网络和两个head的参数。3D网络的backbone用于迁移到下游任务。

技术细节

雷达和图像数据的同步

对于某一个场景的t0时刻获取得到的点云数据:

P=(pi) 

与之对应的 一个相机获取得到图像数据:

通过一个mapping公式进行同步:

小结

      提出基于超像素(superpixel)到超点(superpoint)的对比损失和精心设计的图像特征上采样架构(即将strided convolution替换为dilated convolution)的自监督2D-3D表示蒸馏,该方法允许在不改变网络结构以及不影响结果的情况下提取高分辨率图像特征。这种方法称为SLidR,Superpixel-driven Lidar Representations。这是一种自我监督的图像到图像到 Lidar 蒸馏方法,用于处理同步激光雷达和相机数据,通常在应用于自动驾驶。SLidR 产生了强大的点云表示,这些表示可以很好地转移到多个任务和数据集上,超过了相关的最先进方法。

    首次面向自动驾驶数据的自监督图像到激光雷达的表示蒸馏问题的研究。在论文选取评估设置中,image-to-Lidar pre-training strategy超过了SOTA的3D self-supervised pre-training方法和2D-to-3D distillation方法(设计用于捕捉室内场景中的密集点云)。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/139935.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

什么是CSGO大行动,2023年CSGO大行动时间预测

什么是CSGO大行动,2023年CSGO大行动时间预测 什么是CSGO大行动,2023年CSGO大行动时间预测 那天群里在提大行动,不明所以的新同学在问,什么是大行动,是不是官方红锁大行动要来了?当然不是,别自己…

AI系统ChatGPT源码+详细搭建部署教程+支持GPT4.0+支持ai绘画(Midjourney)/支持OpenAI GPT全模型+国内AI全模型

一、AI创作系统 SparkAi创作系统是基于OpenAI很火的ChatGPT进行开发的Ai智能问答系统AI绘画系统,支持OpenAI GPT全模型国内AI全模型。本期针对源码系统整体测试下来非常完美,可以说SparkAi是目前国内一款的ChatGPT对接OpenAI软件系统。那么如何搭建部署…

[python] pytest

在写一个项目前, 可以先编写测试模块 测试模块中包含了一个个最小的功能 当每一个功能都完善正确时 再将这些功能转换成项目运行的功能 多个项目运行的功能就组成了一个模块 多个模块就组成了一个项目服务 pytest 是一个 Python 测试框架,它提供了简单易用的语…

Python中的循环语句Cycle学习

二、循环语句 1、什么是循环语句 一般编程语言都有循环语句,为什么呢? 那就问一下自己,我们弄程序是为了干什么? 那肯定是为了方便我们工作,优化我们的工作效率啊。 而计算机和人类不同,计算机不怕苦也不怕累,也不需要休息,可以一直做。 你要知道,计算机最擅长就…

github 终端克隆操作,以及对 https/ssh 的理解

前言 最近瞎搞 github 的一些配置,结果搞得有一段时间克隆不了仓库。不过经历了这次风波后,我对 github 的一些原理有了更清楚的了解。所以想稍微写一小篇文章总结输出一下,也欢迎有疑问的读者与博主进一步交流,我的理解还是有限…

Android Studio SDK manager加载packages不全

打开Android Studio里的SDK manager,发现除了已安装的,其他的都不显示。 解决方法: 设置代理: 方便复制> http://mirrors.neusoft.edu.cn/ 重启Android Studio

Uniapp 电子签名 包含 返回 撤回 颜色 线条等功能

请观看 使用教程 第一步 引入图标 在项目中的App.vue内添加下面代码 <style>/*引入图标路径 */import uni_modules/TC-qianming/libs/css/iconfont.css; </style> 第二步 引入组件即可 <template><view><TC-qianming></TC-qianming>&l…

云安全—分布式基础

0x00 前言 云必然是依赖于分布式技术来进行实现的&#xff0c;所以有必要学习和来了解分布式相关的内容 0x01 分布式计算 1.基本概述 分布式计算的定义&#xff1a;通过网络互联的计算机都具有一定的计算能力&#xff0c;他们之间互相传递数据&#xff0c;实现信息共享&…

DH48WK 温控器参数设置

北京东昊力伟科技有限责任公司 温控仪、温度控制器 产品特点&#xff1a; 可外接温度传感器Pt100、Cu50、K、E、J、N、T、R、S、B兼容输入&#xff1b;PID控制输出、位式控制输出、继电器报警输出&#xff1b;控温能满足设定温度值的0.2℃&#xff1b;既可用于加热控制、也可…

如何使用pytorch定义一个多层感知神经网络模型——拓展到所有模型知识

# 导入必要的库 import torch import torch.nn as nn import torch.optim as optim from torch.utils.data import DataLoader, random_split import torchvision.transforms as transforms import torchvision.datasets as datasets# 定义MLP模型 class MLP(nn.Module):def __…

{大厂漏洞 } OA产品存在SQL注入

0x01 漏洞介绍 江苏叁拾叁-OA是由江苏叁拾叁信息技术有限公司开发的一款OA办公平台&#xff0c;主要有知识管理&#xff0c;工作流程&#xff0c;沟通交流&#xff0c;辅助办公&#xff0c;集成解决方案&#xff0c;应用支撑平台&#xff0c;基础支撑等功能。 该系统也与江苏叁…

10-k8s-身份认证与鉴权

文章目录 一、ServiceAccount介绍二、ServiceAccount相关的资源对象三、dashboard空间示例 一、ServiceAccount介绍 ServiceAccount&#xff08;服务账户&#xff09;概念介绍 1&#xff09;ServiceAccount是Kubernetes集群中的一种资源对象&#xff0c;用于为Pod或其他资源提供…