论文标题:TransFusion: Robust LiDAR-Camera Fusion for 3D Object Detection with Transformers

CVPR2022
现存的Lidar-Camera融合的方法:主要分为三类:result-level,proposal-level以及point-level
result level是这么做的:首先用现成的2d检测器来生成3dproposals,然后用pointnet来进行物体定位。(FPointNet/RoarNet)
proposal level是这么做的:融合在proposal阶段,通过对于两个模态的信息进行roi pool操作进行融合。但是这种方法的效果不理想,主要是在image会引入很多的背景噪声点,这是我们不希望得到的。(MV3D、AVOD)
point level则是尝试在点层面进行融合,在lidar点云和pixel像素之间建立硬连接,然后进行concat拼接。
这么做有什么不好的地方呢?
首先这样做很大程度地收到image质量的影响。其次硬链接是一对一的连接,这样浪费了很多pixel的丰富的语义信息,同时还需要很精准的calibration。
本文要讲这么一个故事:怎么设计一个鲁棒的检测器来进行两种信息域信息的软连接?
老规矩 上图!

query initialization

整篇文章的架构很像DETR和3DETR,没有看过的朋友可以先看一下这两篇文章。收到efficient DETR的启发,给定query一个精准的定位,相比随机的参数初始化是很有意义的。通过这个操作,我们可以减少对于特征层的深度。
最原始的思想是query由你的imput输入,自然,就是你的lidar点云信息来提取query。首先我们将点云信息voxel化,投影到bev图中,类似centerpoint的做法来生成一个基于类别热度图S,每个点预测k个类别的可能。类似centernet,我们取峰值点,取前N个作为我们的query点。我们用这个点对应的BEV特征和位置来初始化query。
作者认为每个类别有着很大的差异的信息,例如尺寸等等,而让query意识到class信息有利于多个类别的检测,具体的做法就是在每一个我们选取的query加一个embedding。具体做法就是选出每个query的类别热度图值S,利用一个linear层投影到d维度,随后与query进行element wise的相加处理。

Lidar decoder

还是沿袭Detr的思想,对于我们得到的query,我们先计算一个他们之间的selfattention,这里得到的是不同object之间的交互信息。再与BEV进行一个corss attention 这就是为了query感受野的扩大和提取全局信息了。位置编码是直接将query的位置进行mlp处理到d维度,再与query进行元素级别的相加得到的。最后再把这N个query送进前置层,进行前项推理,即可以得到预测结果。每一个decoder后面都有一个FFN,用来辅助检测后限制后面融合模块的corss attention。

Lidar camera fusion

对于一些远处的物体 lidar点是很稀疏的,如果直接与pixel进行concat拼接实际上是浪费了丰富的pixel的语义信息。所以硬链接是一个suboptimal的方法。我们转而采用cross attention的方法,对于2d backbone提取的feature,我们建立起两个信息域直接的软连接:
首先利用标定矩阵和预测结果找到投影到image上的区域,注意 这些区域肯定是含有背景pixel的,这对于我们的检测来说是噪声,而且会带来计算负担,怎么办呢 作者采用了一个类似centernet的2d高斯掩码,加权以每个query为中心的投影周围的cross attention map (SMCA),随后让query与这个经过加权后的pixel做cross attention, 再对于这些query进行FFN输出最终的结果。

后面的loss计算的label assignment还是沿袭的DETR的set prediction,采用匈牙利算法进行一对一的匹配后计算loss。没啥好说的。

image guide query

这里是对于query初始化的优化,能够在选取query阶段就具有image的信息的指引?
答案是可以的。那就是对于BEV的feature做为query 与image的信息进行一个cross attention的计算。,生成一个集合了image信息的bev。注意为了节省计算量 这里对于image的高度维度进行了压缩。出于一遍在高度维度只存在一个object的考虑。(有点扯)

来看看结果:


waymo上打不过一阶段的centerpoint 不过既然是基于centerpoint tracking任务还是完成的很不错!
后面做了一些夜间场景、掉帧和标定不准情况下的结果,很nice!



ablation实验:


我的思考

首先第一个问题 同样为一阶段网络,为什么打不过centerpoint呢?我认为融合是没有问题的,transformer也带来了更多的更好的语义信息,主要原因可能还是在于不同的检测头,使用set prediction的方法对于网络来说是困难的,需要首先进行一对一的匹配,这是否对于目标检测来说是最优的 没有一个定论。我看过的一篇文章,与detr分析过检测结果,发现无论如何迭代 set prediction的方法总是与手动的布置gt的方法存在ap上的gap。认为这种assignment对于网络来说是难以学习的。

其次 我认为这个方法的鲁棒性主要源自于fusion 模块的cross attention采用pixel的一个区域,这样 解释标定再不准 image再模糊 还是能提取到目标上的一些有用信息 而不会像硬链接一样 随便偏移一点就 会出现很大的偏差。
效果并不是很好 不过有了trans这个噱头。

【论文阅读】【多传感器融合】TransFusion: Robust LiDAR-Camera Fusion for 3D Object Detection with Transformers相关推荐

  1. 论文阅读 End-to-End Multi-View Fusion for 3D Object Detection in Lidar Point Clouds

    [论文阅读] End-to-End Multi-View Fusion for 3D Object Detection in Lidar Point Clouds 原文链接:https://arxiv ...

  2. 【论文阅读】【3d目标检测】Group-Free 3D Object Detection via Transformers

    论文标题:Group-Free 3D Object Detection via Transformers iccv2021 本文主要是针对votenet等网络中采用手工group的问题提出的改进 我们 ...

  3. 点云 3D 天气数据增强 - Fog Simulation on Real LiDAR Point Clouds for 3D Object Detection in ... (ICCV 2021)

    Fog Simulation on Real LiDAR Point Clouds for 3D Object Detection in Adverse Weather - 恶劣天气下用于3D目标检测 ...

  4. ICRA2021论文阅读-多传感器融合语义slam

    本文主要介绍了近期自己阅读的一篇IROS2020和四篇ICRA2021顶会论文. 作为自己的笔记使用,如果存在错误,期望各位读者指出. <AVP-SLAM: Semantic Visual Ma ...

  5. 论文阅读笔记五十三:Libra R-CNN: Towards Balanced Learning for Object Detection(CVPR2019)

    论文原址:https://arxiv.org/pdf/1904.02701.pdf github:https://github.com/OceanPang/Libra_R-CNN 摘要 相比模型的结构 ...

  6. 论文阅读:A Progressive Architecture With Knowledge Review Network for Salient Object Detection

    论文地址:https://ojs.aaai.org/index.php/AAAI/article/view/16408 发表于:AAAI 2021 Abstract 显著目标的定位与分割是显著目标检测 ...

  7. 【目标检测论文阅读笔记】QueryDet: Cascaded Sparse Query for Accelerating High-Resolution Small Object Detection

    Abstract 虽然深度学习的通用目标检测在过去几年取得了巨大成功,但检测小目标的性能和效率却远不尽如人意.促进小目标检测的最常见和有效的方法是使用高分辨率图像或特征图.然而,这两种方法都会导致昂贵 ...

  8. 论文阅读:U2 Net: Going Deeper with Nested U-Structure for Salient Object Detection

    论文地址:https://arxiv.org/pdf/2005.09007.pdf 内容简介 这个网络是用来做显著目标检测的(SOD),能够取得出色的效果,同时模型文件较小,更适合于移动设备 不同于原 ...

  9. 【论文阅读】【三维目标检测】StarNet: Targeted Computation for Object Detection in Point Clouds

    文章目录 StarNet Center selection Featurizing local point clouds After Constructing final predictions fr ...

  10. 【论文翻译】FCOS3D: Fully Convolutional One-Stage Monocular 3D Object Detection

    文章目录 PaperInfo Abstract 1 Introduction 2 Related Work 2D Object Detection Monocular 3D Object Detect ...

最新文章

  1. socket与TcpListener/TcpClient/UdpClient 的区别及联系
  2. kerberos java实现,基于kerberos实现jaas登录
  3. java接口是类型吗_JAVA中,接口到底是不是类
  4. 爬虫基本库的使用---urllib库
  5. 2017年上半年全国高等学校安徽考区计算机水平考试,教务处关于2017年上半年全国高等学校(安徽考区)计算机水平考试报名的通知-教务处...
  6. linux共享软件_为什么 linux 要用 tar.gz,很少用 7z 或 zip?
  7. Mac安装prometheus node_exporter
  8. Haoop0.20.1+Ubuntu11.10+Eclipse3.5.2
  9. java加解密算法概述
  10. 想了解能源互联网?看这篇就够了
  11. 某互联网公司针对初级Java开发的几道Sql笔试题(看完保证不亏 )
  12. 推荐一个在线视频学习、在线试题练习、在线同步考试开源系统
  13. cs服务器网页管理端,sXe服务器端怎么管理
  14. 新时达主板服务器改协议软件,新时达电梯主板调试软件
  15. 【教3妹学算法-每日3题(2)】分割字符串的最大得分
  16. php图书馆注册模板,php微信公众号开发之校园图书馆
  17. sa6155p以太网卡驱动emac-dwc-eqos
  18. PPT中去除水印的方法
  19. Linux命令--chroot
  20. LINUX之静态库共享库

热门文章

  1. 2020年广东工业大学第十届文远知行杯新生程序设计竞赛(同步赛)-C 母牛的俄罗斯轮盘赌
  2. Vuex实现购物车功能
  3. C++案例——奖学金评定系统
  4. 数字后端A7core项目记录1.1SDC文件、MMMC文件和lef文件
  5. 深入了解Spring Boot:快速构建Java应用程序的利器
  6. gitlab runner使用教程
  7. webkey for android,远程登录手机Webkey
  8. unity shader 闪烁+流光
  9. 年薪10万的乞丐给我上了震撼的一课
  10. Windows 10 SDK 适用于 Windows 10 版本 2004 的 Windows 10 SDK (10.0.19041.0)