MapQR: Leveraging Enhanced Queries of Point Sets for Vectorized Map Construction. 论文感想

概要

上交与港科新公布的在线高精地图领域论文 MapQR,该方案较MapTRv2方案有一定提升。方案同样为MapTR系列的基于DETR类方案,主要贡献点在decoder部分使用了实例query,同时增加了位置编码。

整体架构流程

整体架构如下图所示。输入为周视图像,通过主干网络、视角变换网络、解码器后,得到预测结果。其中主干网络、视觉变换网络均可任意替代,解码器网络较MapTR、MapTRv2进行较大修改。
在这里插入图片描述

解码器网络

解码器网络如下图所示,其中左侧为MapTR的解码器网络,右侧为MapQR的解码器网络。假设当前视野范围内共有N个地图元素实例(N为固定值,经验最大值),每个地图元素有n个点(固定值),
MapTR网络会初始化Nn个点查询,这Nn个点查询进行自注意力机制计算并于BEV空间特征进行交叉注意力机制计算,MapTRv2网络中参考H-DETR使用了 one2many机制,成倍的增加查询的数量,显著增加了显存,故MapTRv2网络中使用了解偶的自注意力机制计算,使查询更佳明确的注意实例内信息与实例间信息,同时降低了显存使用。而MapTR系列网络均未涉及实例查询,多数通过点查询注意力机制计算、实例监督等实现。
而MapQR中引入了实例查询,每层解码器的输入、输出均为实例查询(即N个实例查询)。

Scatter-and-Gather Query

使用“分散-聚合”的思想。
首先对实例查询进行自注意力机制计算,由于实例数量少,较MapTR(v2)节省较多显存。
然后将每个实例查询“分散”,先将实例查询复制n份(n为每个实例的点数),再对每份数据根据reference points生成位置编码(reference points为上一层query回归得到的线元素点),即根据实例查询得到点查询,N个实例查询共生成N*n个点查询。
在这里插入图片描述

得到N*n个点查询后与BEV空间特征进行交叉注意力机制计算。
然后将点查询进行“聚合”,每个实例所包含的n个点实例通过MLP网络生成一个实例查询,共计生成N个实例查询。
在这里插入图片描述

将每个实例查询进行回归,得到每个地图元素实例。

在这里插入图片描述

Positional Embedding

参考 DAB-DETR,在Decoder中基于Reference Points(上一层query输出通过回归得到)进行位置编码,如下公式所示,其中PE为position embedding,LP为线性层。
在这里插入图片描述
在这里插入图片描述

最终的Decoder表达式如下

在这里插入图片描述

实验

实验结果如下所示,所提思路应用与MapTR、MapTRv2中均有提升,耗时及显存占用也有优化。
在这里插入图片描述

小结与感想

MapQR引入了实例查询,不仅通过点查询的注意力机制及loss约束实例信息,实验结果较MapTRv2有一定提升。
文章核心在于两点,实例查询的分散与聚合、基于Reference Points的位置编码。
感想一:文中的实例查询的分散与聚合、基于Reference Points的位置编码确实值得借鉴,例查询的分散与聚合也许可以解决MapTRv2中部分实例混乱(在不同实例间乱跳,低概率事件)的情况。
感想二:如果不使用“分散与聚合”的思路,直接使用实例query进行SA与CA,最后在回归时一个实例回归n个点,是否也可行,此时可极大减少显存占用及计算资源。
感想三:自注意力计算时使用实例查询,减少了显存占用,但在点query聚合时的MLP也会占用一定显存,也许此处仅需一个线性层即可,后续等代码开源后详细了解。
感想四:本文中的整体流程框架,在每个decoder层结束前使用MLP进行聚合得到一个实例查询,再回归得到n个点,此处既然已经涉及到点查询,聚合后再回归是否会存在信息损失,增加网络回归难度?如果此时对点查询进行回归得到点坐标,另一分枝对点查询进行聚合,结束当前decoder层,再对实例query进行回归得到属性,从计算资源角度与文中方案类似,但可能回归时更易收敛?

  • 13
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值