【论文精读】ET-MVSNet: When Epipolar Constraint Meets Non-Local Operators in Multi-View Stereo

今天阅读的是一篇发表在ICCV 2023上的文章,作者来自于华中科技大学。
项目地址:GitHub
文章地址:点击前往

文章目录

  • Abstract
  • 1 Introduction
  • 2 Related Work
  • 3 Preliminaries
  • 4 ET-MVSNet
    • 4.1 Epipolar Pair Search
    • 4.2 Intra-and-Cross-Epipolar Augmentation
      • Intra-Epipolar Augmentation (IEA)
      • Cross-Epipolar Augmentation (CEA)
      • Local Augmentation (LA)
    • 4.3 Implementation Details
  • 5 Experiment
  • 6 Conclusion

Abstract

基于学习的多视图立体方法严重依赖于特征匹配,这需要独特的描述性表示。 一个有效的解决方案是应用非局部特征聚合,例如 Transformer。 尽管这些技术很有用,但会给MVS带来大量的计算开销。 每个像素都密集地关注整个图像。 相反,我们建议将非局部特征增强限制在一对线内:每个点仅关注相应的一对极线。 我们的想法受到经典对极几何的启发,它表明具有不同深度假设的一个点将投影到另一个视图上的极线。 该约束将2D搜索空间减少为立体匹配中的极线。 类似地,这表明MVS的匹配是为了区分位于同一条线上的一系列点。 受点对线搜索的启发,我们设计了一种线对点非局部增强策略。 我们首先设计了一种优化搜索算法,将2D特征图分割成极线对。 然后,ET在极线对之间执行非局部特征增强。 我们将ET纳入基于学习的MVS基线,命名为ET-MVSNet。 ET-MVSNet在DTU和Tanks and Temples上均实现了最先进的高效率重建性能。

1 Introduction

略。

2 Related Work

介绍了learning-based MVS的历史工作,和MVS里面的特征表达(比如一系列使用了Transformer的MVSNet)。

3 Preliminaries

介绍了极线约束。我觉得这一部分其实可以和Related work合并。

4 ET-MVSNet

ET-MVSNet的整体架构如图 4 所示。所提出的ET模块被集成到FPN中。 为了对极线执行非局部特征聚合,我们首先搜索ref image和src image之间的极线对。 利用搜索到的线对,通过采样将原始特征图分解为不同的极线对。 然后,极内增强(IEA)和跨极增强(CEA)模块在这些极线对之间传输非局部上下文。
【论文精读】ET-MVSNet: When Epipolar Constraint Meets Non-Local Operators in Multi-View Stereo_第1张图片

4.1 Epipolar Pair Search

【论文精读】ET-MVSNet: When Epipolar Constraint Meets Non-Local Operators in Multi-View Stereo_第2张图片
MVS 的关键部分是通过特征匹配将像素与一组预定义假设中最合适的深度假设进行匹配。 如果假设接近GT,则像素对的特征应该是相似的,这表明假设的区分很大程度上依赖于特征表示。 由于用于匹配的特征体自然位于极线上,因此使用极线作为非局部特征的来源可以有效地实现高质量的表示,有利于区分不同的假设。 应该注意的是,极线同时存在于参考视图和源视图中,并且由于几何限制成对出现。 这表明同一极线上的像素共享相同的非局部特征源,并且这些像素的特征聚合过程是相同的。 并行聚合将提高效率。 为了实现并行过程,需要预先搜索位于同一对极线对上的像素,为此我们提出了一种对极线对搜索算法。

如算法1所示,极线对的搜索包括两个步骤:点对线搜索和极线匹配。 第一步,我们计算ref image中每个像素的极线参数。 然后,我们将参考视图中的像素聚合到不同的簇中; 同一簇中的像素共享相同的极线。 因此,在极线对搜索之后,参考图像和源图像中的像素被划分为极线对。

由于一对多视图匹配可以分解为多个一对一视图匹配,为了便于理解,这里我们以一个src image来说明极线对搜索。 给定ref image中的像素 p r p_{r} pr ,src image中对应的像素 p s p_{s} ps为:
p s ( d ) = K s [ R ( K r − 1 p r d ) + t ] p_{s}(d)=K_{s}[R(K_{r}^{-1}p_{r}d)+t] ps(d)=Ks[R(Kr1prd)+t]

其中 d d d 表示深度, R R R t t t 表示参考视图和源视图之间的旋转和平移。 K r K_{r} Kr K s K_{s} Ks分别表示参考视图和源视图的内参。 因此, p s ( d ) p_{s}(d) ps(d) 的坐标可以通过以下方式计算:
x s ( d ) = a 1 d + b 1 a 3 d + b 3 , y s ( d ) = a 2 d + b 2 a 3 d + b 3 x_{s}(d)=\frac{a_{1}d+b_{1}}{a_{3}d+b_{3}}, y_{s}(d)=\frac{a_{2}d+b_{2}}{a_{3}d+b_{3}} xs(d)=a3d+b3a1d+b1,ys(d)=a3d+b3a2d+b2

{ a i } i = 1 3 , { b i } i = 1 3 \{a_{i}\}_{i=1}^{3}, \{b_{i}\}_{i=1}^{3} {ai}i=13,{bi}i=13是与相机参数和 p r p_{r} pr 坐标相关的常量。 然后,消去深度 d d d,即可得到极线标准方程 y s ( d ) = k x s ( d ) + b y_{s}(d) = kx_{s}(d)+b ys(d)=kxs(d)+b,其公式为:
【论文精读】ET-MVSNet: When Epipolar Constraint Meets Non-Local Operators in Multi-View Stereo_第3张图片
为了减轻过度分裂,我们通过四舍五入来量化 k s ks ks b s bs bs。 因此,具有近似参数的像素将被分组到同一极线中。 然后,我们在源视图中搜索相应的极线。 k s ks ks b s bs bs表示源视图上对应的极线,因为极线周围像素的坐标将满足式(3)。 对于源图像,通过计算 k k k b b b表示的极线上的像素点的距离来确定该像素点是否位于 k k k b b b表示的极线上。

通过将像素划分为其相应的极线对,参考特征图和源特征图都被分解为特征序列集。 具体来说,假设获得 m m m对极线,我们将参考和源特征集定义为 E R E_{R} ER E S E_{S} ES,其公式为:
E R = { E R 1 , E R 2 , . . . , E R m } , E S = { E S 1 , E S 2 , . . . , E S m } E_{R}=\{E_{R}^{1},E_{R}^{2},...,E_{R}^{m}\},E_{S}=\{E_{S}^{1},E_{S}^{2},...,E_{S}^{m}\} ER={ER1,ER2,...,ERm},ES={ES1,ES2,...,ESm}

E R i , E S i E_{R}^{i}, E_{S}^{i} ERi,ESi它们是形状为 n × c n \times c n×c的特征序列,其中 n n n表示对应极线中的像素数, c c c表示特征维度。

4.2 Intra-and-Cross-Epipolar Augmentation

使用极线对,然后我们执行非局部特征增强。 由于具有不同深度假设的点落在极线上,因此匹配过程是区分位于同一条线上的一系列点。 受立体匹配中点对线搜索策略的启发,我们提出了一种point-to-line非局部增强:参考图像中的每个像素仅关注其对应的极线对。 如图4所示,为了描述源图像中具有非局部信息的像素,基于自注意力设计了极内增强(IEA)模块。 然后,交叉极线增强 (CEA) 模块将参考极线 E R E_{R} ER的信息通过交叉注意力传播到源极线 E S E_{S} ES中。

Intra-Epipolar Augmentation (IEA)

IEA 利用极线内的自注意力来聚合非局部结构信息,这可以为困难区域(例如弱纹理区域)生成描述性特征表示。 对于 E S E_{S} ES 中的每条极线 E S i E_{S}^{i} ESi ,增强过程定义为:
E S i = M H S A ( E S i ) + E S i E_{S}^{i}=MHSA(E_{S}^{i})+E_{S}^{i} ESi=MHSA(ESi)+ESi
其中 M H S A ( x ) MHSA(x) MHSA(x)是多头自注意力模块,把一个序列 x x x作为输入。

Cross-Epipolar Augmentation (CEA)

由于视点不同,潜在的透视变换对具有不同几何形状的相同语义像素提出了挑战。 我们通过跨极线传输信息来缓解这一问题。 具体来说,我们使用交叉注意力模块将信息从参考线 E R E_{R} ER 传播到 E S E_{S} ES 中,用CEA表示。 在CEA中, E S i E_{S}^{i} ESi首先由交叉注意力层处理:
E S i = M H C A ( E S i , E R i , E R i ) + E S i E_{S}^{i}=MHCA(E_{S}^{i},E_{R}^{i},E_{R}^{i})+E_{S}^{i} ESi=MHCA(ESi,ERi,ERi)+ESi

其中 M H C A ( q , k , v ) MHCA(q,k,v) MHCA(q,k,v)是多头交叉注意力,具体来说,我们在交叉注意层之后添加了一个前馈网络,如标准Transformer块中一样。 IEA 和 CEA 块可以堆叠以增强功能。

Local Augmentation (LA)

尽管极线内的非局部特征增强是有效的,并且在实验中被证明有效,我们发现增强的特征图包含一些空洞,其中像素位于两幅图像的公共视图之外,或者由于像素的离散性质引起的量化误差而未被算法检测到,这可能导致特征表示的不连续性并且对匹配不友好。 为了解决这个问题,我们在IEA和CEA块之后使用额外的卷积层来重新聚合局部上下文,以填充特征孔并平滑增强特征。

4.3 Implementation Details

loss使用多阶段cross-entropy之和。
【论文精读】ET-MVSNet: When Epipolar Constraint Meets Non-Local Operators in Multi-View Stereo_第4张图片

5 Experiment

介绍了在DTU和Tanks and Temples数据集上的实验结果。
【论文精读】ET-MVSNet: When Epipolar Constraint Meets Non-Local Operators in Multi-View Stereo_第5张图片
【论文精读】ET-MVSNet: When Epipolar Constraint Meets Non-Local Operators in Multi-View Stereo_第6张图片

6 Conclusion

引入了一种基于极线约束的非局部特征聚合策略。 具体来说,我们首先提出了一种在两个校准图像中搜索极线对的算法。 然后,我们设计了一个极内增强(IEA)模块和一个跨极增强(CEA)模块来挖掘极线内部和跨极线的非局部背景。 我们将这些模块打包到一个名为Epipolar Transformer的Transformer模型中,并将ET集成到基线网络中以构建ET-MVSNet。 评估和消融验证了所提出模块的有效性。 此外,我们还表明ET还可以作为集成到其他MVS方法中的即插即用模块。

你可能感兴趣的:(三维重建,计算机视觉,人工智能)