当前位置:网站首页>PolarFormer: Multi-camera 3D Object Detection with Polar Transformers 论文笔记
PolarFormer: Multi-camera 3D Object Detection with Polar Transformers 论文笔记
2022-08-03 12:15:00 【byzy】
原文链接:https://arxiv.org/pdf/2206.15398.pdf
1 引言
基于多视图的图像3D目标检测很困难。为了得到3D表达,通常会使用密集深度估计,但该方法计算昂贵且容易出错。有方法使用基于查询的2D检测来绕过深度估计,在垂直轴的笛卡尔坐标系中学习一组虚拟嵌入,用于多视图图像3D目标检测。
本文认为在极坐标下表达物体更合适和自然。提出Polar Transformer(PolarFormer),在极坐标系下检测物体。首先使用序列到序列的交叉注意力学习相应于图像区域的极射线表达。然后使用在360°范围内均匀分布的极射线将极坐标BEV网格化。为处理不规则的极网格,提出基于交叉注意力的解码器,而不限制输入形状。为处理极距变化带来的物体尺度变化,提出多尺度极BEV表达学习方法。
3 方法
PolarFormer的目标是从多视图图像学习有效的极BEV表达,以在极坐标内促进预测物体参数。
如下图所示,PolarFormer由跨平面编码器、极对齐模块、极BEV编码器和极检测头组成。
跨平面编码器使用跨平面注意力机制为每个图像生成多尺度特征表达,其中极查询从输入图像中生成BEV的3D特征。
极对齐模块从多个相机视图聚合极射线,生成结构化的极坐标图。
极BEV编码器使用多尺度特征交互加强极特征。
极检测头解码极坐标图,在极坐标系下预测物体。
此外,为处理物体尺度变化,提出多尺度极BEV表达结构(如上图所示)。多尺度图像特征首先使用各自的跨平面编码器,然后使用公共的极BEV编码器进行交互。最后这些多尺度极BEV特征图被极BEV解码器查询。
3.1 跨平面编码器
目标是将图像和极射线关联。
图像坐标和摄像机坐标(3D空间坐标)之间的关系为:
其中属于相机内参,是缩放因子,分别为水平坐标、垂直坐标和深度坐标。故图像坐标和极坐标之间的关系为
上面第一式说明水平角与图像竖直位置无关,故可建立极射线与图像列的一一对应。
但由于距离与深度相关,不易计算。本文使用注意力机制隐式地建模图像某列像素与沿极射线位置之间的关系。
设为第个相机、第个尺度特征图的第列(第一张图中(a)虚线框下部矩形的有色区域),为相应的极射线查询,其中为特征图的高度,为极坐标图的范围。则跨平面注意力为:
其中,,且;是特征维度,是注意力头的数量。
将极射线特征(第一张图中(a)虚线框上部扇环形的有色区域)沿水平角维度堆叠,得到极特征图(极BEV表达/图中扇环形):
这种基于序列到序列的交叉注意力编码器可以编码几何成像先验,隐式地学习深度。
3.2 跨相机极对齐
该模块将极射线坐标从各个相机转化到公共坐标(简单来说就是将图中的各个扇环拼接称为圆环)。
首先在柱坐标系下生成均匀的3D点,然后将它们投影到第个图像平面检索极射线:
其中为内参矩阵,为外参矩阵。然后第个尺度的极BEV图(第一张图中(c)虚线框上部环形区域)可按下式生成:
其中为二值权重系数,表明点在第个图像中的可视性。表示在的处进行双线性采样。和分别表示归一化的极射线索引和半径索引。
该模块通过生成沿平行轴分布的点来整合不同高度的特征。
3.3 极BEV多尺度编码
若是每个查询元素的参考点归一化坐标,则多尺度可变形注意力模块如下:
其中为查询的特征,和分别为查询在第个采样点、第个特征级别、第个注意力头的采样偏移量和注意力权重,且被归一化为
函数生成采样偏移量并放缩到第个特征尺度。和是可学习参数。
多尺度特征图的每个像素均利用了邻域像素和其余尺度像素的信息,从而学习到更丰富的语义。
3.4 多尺度极BEV解码器
该模块解码多尺度极特征,并在极坐标下作预测。使用可变形注意力来建立解码器,将3.3节公式中的查询作为可学习参数。
解码层中的分类分支输出置信度分数向量,其中为类别数。回归分支的预测目标为极坐标表示。解码器迭代地细化柱坐标系下的参考点,回归偏移量。朝向角和速度与物体水平角相关,被分解为正交分量:
其中为偏航角,和为速度绝对值(速度大小)和速度角。
物体的尺寸回归目标为对数值。
分类和回归的损失函数分别为focal损失和L1损失。
4 实验
实施细节:为充分利用序列数据,在BEV空间进行了当前帧和过去某帧的时间融合,即拼接BEV多尺度特征图后输入到极BEV编码器。训练时,历史帧从一定时间范围内随机取,测试时取该时间范围中值对应的那帧。将该方法称为PolarFormer-T。
4.1 与SotA的比较
PolarFormer能够超过目前SotA的性能,表明了极坐标特征学习的优越性;PolarFormer-T能进一步大幅提升性能。
4.2 消融研究
极坐标vs笛卡尔坐标:实验了笛卡尔特征表达和预测、极坐标特征和笛卡尔预测,以及极坐标特征和预测,前两方案性能相当,而本文方法性能最佳,且无需后处理操作。
位置编码:比较了2D可学习位置编码、固定正弦位置编码和3D位置编码(在每个极射线位置基于一组3D点生成)。
多尺度特征:与单尺度特征比较,多尺度特征在任何坐标系下都有更好的性能;此外,在笛卡尔坐标下,从多尺度特征中获得的性能增益很小,这表明尺度随距离的变化性仅在极坐标下才存在。此外若将多级特征转化为相同分辨率的BEV特征,性能有所下降。
物体预测和损失优化时的坐标选择:由于对多视角图像采取了更一致的观测,极坐标下的物体预测能够学习到参考点更好的分布。但在优化损失函数时,使用极坐标会收敛缓慢,因此采用直角坐标优化。可能的原因是角度在0和2π的不连续性。
4.3 BEV分割
实验表明将PolarFormer用于BEV分割任务以及分割检测联合任务,也能达到目前最好的效果。
边栏推荐
- R语言使用zoo包中的rollapply函数以滚动的方式、窗口移动的方式将指定函数应用于时间序列、计算时间序列的滚动标准差(设置每个窗口不重叠)
- 信创建设看广州|海泰方圆亮相2022 信创生态融合发展论坛
- bash while loop and until loop
- R language ggplot2 visualization: use the patchwork bag plot_layout function will be more visual image together, ncol parameter specifies the number of rows, specify byrow parameters configuration dia
- Vs 快捷键---探索不一样的编程
- 技术总监需要会些什么?也太难了!
- 第4章 搭建网络库&Room缓存框架
- Apache APISIX 2.15 版本发布,为插件增加更多灵活性
- 什么是Weex
- 漫谈缺陷管理的自动化实践方案
猜你喜欢
随机推荐
bash if conditional judgment
Feature dimensionality reduction study notes (pca and lda) (1)
Mysql重启后innodb和myisam插入的主键id变化总结
Knowledge Graph Question Answering System Based on League of Legends
5个超好用手机开源自动化工具,哪个适合你?
【Verilog】HDLBits题解——Verification: Reading Simulations
一次内存泄露排查小结
pandas连接oracle数据库并拉取表中数据到dataframe中、筛选当前时间(sysdate)到一天之前的所有数据(筛选一天范围数据)
[论文阅读] (23)恶意代码作者溯源(去匿名化)经典论文阅读:二进制和源代码对比
TiKV & TiFlash 加速复杂业务查询丨TiFlash 应用实践
bash for loop
LeetCode刷题笔记:622.设计循环队列
项目概述、推送和存储平台准备
Chapter 15 Source Code File REST API Introduction
C language advanced article: memory function
[Verilog] HDLBits Problem Solution - Circuits/Sequential Logic/Latches and Flip-Flops
R语言ggplot2可视化:使用ggpubr包的ggsummarystats函数可视化箱图(通过ggfunc参数设置)、在可视化图像的下方添加描述性统计结果表格
微信为什么使用 SQLite 保存聊天记录?
c语言进阶篇:内存函数
After completing the interview and clearance collection of Alibaba, I successfully won the 15th Offer this year