当前位置:   article > 正文

《STTR:Revisiting Stereo Depth Estimation From a Sequence-to-Sequence Perspective with Transformers》

revisiting stereo depth estimation from a sequence-to-sequence perspectivewi

参考代码:stereo-transformer

1. 概述

导读:这篇文章通过transformer机制实现了一种立体匹配算法(STTR),在该方法中将立体匹配问题转换为序列上的响应问题,使用未知信息编码与注意力机制替换了传统匹配方法中的cost volume策略。由于替换了cost volume解除了预定max-disparity假设的限制,增强了网络的泛化表达能力。在估计视差图的同时显示地估计遮挡区域的概率结果。此外,为了寻找右视图到左视图的最佳匹配,文中对其中的匹配矩阵添加熵约束,从而实现对匹配过程的添加唯一性约束。

将文章的方法(STTR)与correlation-based和3D convolution-based方法进行比较,可以归纳为:

  • 1)STTR与correlation-based方法比较:STTR在进行左右视图匹配的时候通过self-attention和cross-attention建立相关性,并且对像素点匹配的结果进行唯一性约束;
  • 2)STTR与3D convolution-based方法比较:STTR通过attention建立像素之间的关联,而不是通过设定max-disparity的形式建立cost volume;

文章的方法在下面几个数据集下的结果:
在这里插入图片描述

2. 方法设计

2.1 pipline

文章提出的方法pipeline见下图所示:
在这里插入图片描述
在上图中可以看到左右两视图经过一个共享backbone和tokenizer进行特征抽取,这部分的实现可以参考:

# backbone 部分
# module/feat_extractor_backbone.py#L15
class SppBackbone(nn.Module):# tokenizer部分
# module/feat_extractor_tokenizer.py#L62
class Tokenizer(nn.Module):
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

经过上面两个过程对特征进行抽取得到的是channel为 C e C_e Ce,空间分辨率与原输入尺度 ( I h , I w ) (I_h,I_w) (Ih,Iw)一致的特征图。之后这些特征图便与位置编码组合经过 N N N层的attention操作预测得到粗预测结果,之后再改结果的基础上进行refine得到最后的结果。

2.2 Transformer操作

文章提出的transformer结构可见下图:
在这里插入图片描述
在上图中可以看到其中首先会经过几个attention层(带position encoding),之后
特征经过带mask的cross-attention得到最后优化的特征。

2.2.1 attention操作

这里采用的attention操作是multi-head attention,可以参考pytorch的实现nn.MultiheadAttention。这里会将特征图在channel维度进行分组操作,对不同的分组进行运算从而增强特征的表达的能力,对于组的划分可以描述为: C h = C e N h C_h=\frac{C_e}{N_h} Ch=NhCe,其中分母是划分的组的数量。在每个分组中会产生回应的query、key和value向量,其分别表示为:
Q h = W Q h e I + b Q h Q_h=W_{Q_h}e_I+b_{Q_h} Qh=WQheI+bQh
K h = W K h e I + b K h K_h=W_{K_h}e_I+b_{K_h} Kh=WKheI+bKh
V h = W V h e I + b V h V_h=W_{V_h}e_I+b_{V_h} Vh=WVh

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/菜鸟追梦旅行/article/detail/364696
推荐阅读
相关标签
  

闽ICP备14008679号