Page 291 - 《软件学报》2025年第4期
P. 291

樊铭瑞 等: 基于深度学习的多视图立体视觉综述                                                         1697


                 度图多视图立体视觉的先河, 后续方法大多是以               MVSNet 为基础的变体.
                    MVSNet 由  5  个模块组成, 包括特征提取、代价体构建、深度图计算、深度图优化和后处理模块. 虽然后续
                 的网络在精度以及效率上超过了             MVSNet, 但由于深受其网络结构的影响, 大都遵循此范例进行设计. 因此,
                 MVSNet 被认为是多视图立体视觉的里程碑之一. MVSNet 的结构表示如图                  5  所示  [15] . 其基本流程如下.

                                                                                     Conv+BN+ReLU, Stride=l
                                                                                     Conv+BN+ReLU, Stride=2
                                                                                     Conv, Stride=1
                   Source images  ...  Shared weights                                Addition
                                                                                     Concatenation


                                                                                        Loss 0
                                                                                                      GT
                                 Shared weights                               Initial depth map  Loss 1
                   Reference image                 Variance               argmin

                                  V  表示所有特征体的均值,
                                                                           soft-
                                                   metric
                                Feature    Differentiable     Cost volume       Depth map  Refined depth map
                               extraction  homography        regularization      refinement
                                                  图 5 MVSNet 网络结构    [15]

                    (1) 特征提取. 选取数据集中图像依次作为参考图, 其他图像作为邻域帧. 每个图像通过                         8  层  2D  卷积神经网
                 络得到   32  通道特征图, 长宽均为原图像的        1/4. 为了提高学习效率, 特征提取的操作过程中共享参数. 其中第                 3  层
                 和第  6  层的卷积步长设置为      2, 用于提取更高维的图像特征. 虽然特征图尺寸减小, 但由于最后输出的是                      32  通道
                 的特征图, 因此缩小后的特征图中的像素仍包含其周围像素的信息.
                    (2) 代价体构建. 构建    3D  代价体分为构建单应性矩阵、代价累积和代价体正则化这                    3  个过程. 首先, 结合相
                 机的几何关系, 通过可微单应性矩阵实现             2D  特征图到  3D  特征体的转换. 基于参考相机视锥体中若干不同深度的
                 平行平面, 将特征图投影到参考图像下:

                                                         (         T  )
                                                            (t 1 − t i )n
                                                                      T
                                                H i (d) = K i R i I −  1  K R −1                      (1)
                                                                      1
                                                                        1
                                                               d
                                       t
                 其中,    K  表示相机内参,    R 和   分别表示相机外参的旋转矩阵和平移矩阵.           n 为参考相机的主轴,      d  为深度.  H(d) 为
                 获得的单应性矩阵, 表示源视图和参考视图之间的坐标映射关系.
                    代价累积是将所有特征体合并成一个代价体的过程. 代价体是由代价图在深度方向上构建而成的. 采用基于
                 方差的方法, 逐个像素进行计算:

                                                                N ∑
                                                                        2
                                                                  (V i −V i )
                                                                i=1
                                                C = M(V 1 ,...,V 2 ) =                                (2)
                                                                   N
                 其中,   V  表示特征体,                       N  表示特征体的数量. 计算获得方差后, 得到锥形体, 并对锥形体
                 进行可微双线性插值, 以得到长宽一致的方形代价体. 代价体衡量了视图之间的相似性. 由于代价体中可能存在噪
                 声, 因此对代价体采用       3D  四级  UNet 结构进行正则化, 最终出路形成通道数为           1  的概率体. 概率体表示每个像素
                 深度值的可能性. 为了减少计算成本, 在正则化过程中, 将               32  通道减少到   8  通道, 并将卷积层改为两层.
                    (3) 深度图计算. 在传统方法中, 选择最大概率深度图              (即赢者通吃原则) 作为结果, 但是在非理想情况下效果
                 一般, 而且无法产生亚像素级别的结果. 因此, MVSNet 网络通过计算数学期望生成初始深度图:

                                                          d max
                                                          ∑
                                                      D =    d × P(d)                                 (3)
                                                         d=d min
   286   287   288   289   290   291   292   293   294   295   296