介绍
英文题目:BEVSegFormer: Bird’s Eye View Semantic Segmentation From Arbitrary Camera Rigs
中文题目:BEVSegFormer: 基于任意相机的鸟瞰图语义分割
论文地址:https://arxiv.org/abs/2203.04050
领域:机器视觉,自动驾驶
发表时间:2022年3月
作者:来自上海的自动驾驶创业公司Nullmax
阅读时间:2022.05.28
其它相关网文:https://blog.csdn.net/Yong_Qi2015/article/details/124311369
介绍
之前从摄像机视图转成BEV的方法多以IPM为主,该方法需要知道摄像机的内外参数以及位置信息。在有遮挡及距离比较远的情况下,都无法达到很好的效果。近年来更多应用了深度学习方法。
优点
- 不需要摄像机的参数
- 有效聚合多摄像头数据
- 优化了图像分割效果
核心算法
(论文正文第3页)
三个步骤:
(1) 从一个共享Backbone处理各摄像机,输出Feature map。
(2) 基于Transformer的编码器加强Feature map。
(3) 解码器通过交叉注意力机制处理BEV查询。
最终利用输出的查询结果进行语义分割。
文章的核心基本就在以下图和公式:

其中m是头数,c是摄像头,k是采样点个数。∆P是k个采样点的偏移,A是注意力权重。p^是参考点,φ用于标准化坐标和特征图位置的转换,q表示BEV中每一个小块。
第三步Decoder如下图所示:

对于BEV中的每一块,箭头过程描述了块是如何更新的。输入是摄像头影像(黄色和橙色表示不同的摄像头,对应公式中的x),以及之前BEV的查询query q其该块的位置query pos q(所有块zq,及每块的参考点pq)。
对于每一个小块q,使用可学习的投影层将其位置嵌入到二维的参考点,其中2是指使用两个可学习的线性映射层,然后生成参考点周围的采样点(见右侧中间的虚线框),采样后线成一个序列(右侧四个黄块和橙块),再通过Attention为这些小块加权,最终产生了新的序列(右下角)。
与DETR不同的时,文中方法通过多摄像头的Feature map学习独立的参考点,因此网络可以根据不同的镜像机特征,自动选择不同位置的参考点。
前置知识
DETR
DETR的全称是DEtection TRansformer,是Facebook提出的基于Transformer的端到端目标检测网络。
之前目标检测方法主要是基于Anchor,简单地说就是对图片中不同位置和大小的小方框进分类,然后再做回归精调框的大小。
DETR同样也使用了backbone的Feature map,不同的是它还加入了位置嵌入,然后送入encoder;另外,还使用object queries(可学习的动态anchor)作为解码器的输入,最终将解码器的输出送入最终分类器。

Deformable DETR
Deformable DETR 是注意力模块只关注参考点周围的少量关键采样点,而不是所有点,以节省算力,并提升模型效果。
网友评论