PatchMVSNet

基本信息

项目 内容
论文标题 PatchMVSNet
作者 Haonan Dong, Jian Yao
作者单位 武汉大学遥感信息工程学院
时间 2022
**发表会议/期刊

方法概览

特点 文章性质
输入 多视角
输出 参考视角深度图
所属领域 自监督MVS

1. 摘要精简

PatchMVSNet是一种无监督多视图立体匹配方法,旨在解决弱纹理表面重建中的匹配模糊问题。传统无监督方法依赖像素级光度一致性,易受光照和弱纹理影响。本文提出两种鲁棒损失函数:

  1. 块级光度一致性损失:扩大特征感受野,降低光照变化和弱纹理带来的匹配模糊;
  2. 鲁棒两视图几何一致性损失:引入最小遮挡的跨视图深度一致性检查。

该方法在DTU、Tanks and Temples和ETH3D等基准测试中达到先进水平,尤其在弱纹理场景下重建完整性显著提升。

PatchMVSNet 作为无监督(自监督)MVS 方法,核心逻辑是不依赖深度真值,而是通过多视图图像的几何约束、光度一致性、特征一致性构建监督信号,实现深度估计与 3D 重建。


2. 研究动机与出发点

现有无监督 MVS 方法存在两大核心缺陷,推动作者开展研究:

  1. 匹配歧义严重:依赖像素级光度一致性,感受野小,在弱纹理表面(像素强度变化微弱)和光照变化场景下,难以区分正确匹配,导致重建不完整;

  2. 几何约束不完善:现有几何一致性损失未充分考虑遮挡问题,跨视图深度校验时易引入错误匹配,进一步加剧歧义;

  3. 缺乏全局上下文:像素级匹配未利用全局信息,对光照变化和表面反射敏感。

    作者旨在通过扩展感受野(patch-wise 策略)、优化几何约束(考虑遮挡)、引入高级特征(抗光照干扰),解决上述问题,实现弱纹理场景的高质量无监督重建。


3. 创新点

3.1 Patch-wise 光度一致性损失

  • 摒弃像素级匹配,采用中心像素的 3×3 补丁(Ω§)计算光度一致性,扩大感受野,融入局部上下文信息,降低弱纹理区域的匹配歧义;
  • 多尺度补丁合并策略:各阶段保持补丁尺寸一致,相邻阶段补丁通过双线性插值合并,低分辨率阶段获取更多上下文,高分辨率阶段保留细节,同时满足 “补丁内深度一致” 假设。

3.2 考虑遮挡的鲁棒几何一致性损失

  • 最佳源图像选择:基于 SfM 稀疏点云重叠度评分,选择与参考图遮挡最少的源图像,构建最小遮挡图像对;

  • 跨视图双向校验:参考图深度→源图渲染→回投影回参考图,通过对比回投影图像与原始参考图的相似度,实现几何一致性校验,公式为:

    Lgeometric=

Iref−I^ref⇄src(i)

  • ⊙Mref

    有效过滤遮挡区域的错误匹配。

3.3 高级特征对齐一致性损失

  • 利用预训练 VGG-16 提取高级特征(8 层 128 通道、15 层 256 通道),该特征包含全局上下文,对光照变化和表面反射更鲁棒;

  • 通过像素级 warping 将源图高级特征投影到参考图,计算特征相似度损失,公式为:

    Lfeature=N1∑i=1N

Fref−F^src(i)⊙Mref

进一步降低光照和纹理变化带来的匹配干扰。


4. 网络架构

image-20251127135820267

PatchMVSNet 基于多尺度架构(CascadeMVSNet)构建,核心分为四大模块,流程为 “特征提取→代价体处理→深度回归→损失约束”:

  1. 特征提取模块:CNN 提取多尺度图像特征,预训练 VGG-16 提取高级特征;

  2. 最佳源图像选择模块:筛选遮挡最少的源图像,构建几何一致性校验对;

  3. 代价体处理模块:平面扫描构建代价体,3D U-Net 正则化,多尺度补丁合并;

  4. 深度回归与损失约束模块:深度期望计算,结合 patch-wise 光度、几何、高级特征等损失优化。

    输入为 1 张参考图 + N 张源图(含内参 / 外参),输出参考图的全分辨率深度图,经融合生成 3D 点云。


5. 特征提取

  1. 基础多尺度特征:参考图与源图经 CNN 提取 3 个尺度特征(对应网络三阶段),分辨率逐步提升,为代价体构建提供多尺度基础;在多尺度架构中,使用特征金字塔网络(FPN)提取多尺度特征;
  2. 高级特征提取:采用预训练 VGG-16,分别从第 8 层和第 15 层提取 128 通道和 256 通道的高级特征,该特征具有全局上下文信息,抗光照和纹理变化能力强;
  3. 特征适配:基础特征用于代价体构建,高级特征用于对齐一致性损失计算,两者通过 warping 投影到同一坐标系统一处理。

6. 代价体构建

  • 使用方差度量构建代价体;将多视图特征在深度假设下对齐后计算方差;
  • 在多尺度架构中,使用级联代价体以减少内存消耗。
  • 多尺度补丁合并:相邻阶段的补丁通过双线性插值合并,融合多尺度上下文信息,增强代价体的判别性。

7. 代价体正则化

使用3D U-Net对代价体进行正则化;输出每个像素在深度假设上的概率分布。


8. 深度图生成

  • 单阶段深度回归:基于正则化后的概率分布,沿深度方向计算期望,得到该阶段深度图:

d(p) = \sum_{d=D_{\text{min}}}^{D_{\text{max}}} d \cdot P(p, d)$$其中 $P(p, d)$ 是像素 $p$ 在深度 $d$ 处的概率。 多尺度逐步细化:从第一阶段(低分辨率,48 个深度假设)到第三阶段(高分辨率,8 个深度假设),每个阶段的深度采样范围基于前一阶段结果缩小),逐步提升深度精度; --- ## 9. 损失函数 总损失包括以下几个部分: ### 块级光度一致性损失 patch-wise 光度一致性损失(L1 损失) $$L_{\text{patch}} = \frac{1}{N} \sum_{i=1}^{N} |\mathcal{I}_{\text{ref}} - \hat{\mathcal{I}}_{\text{src}}^{(i)}| \odot \mathcal{M}_{\text{ref}}

几何一致性损失

鲁棒几何一致性损失(L1 损失)

Lgeometric=1Ni=1NIrefI^ref=src(i)MrefL_{\text{geometric}} = \frac{1}{N} \sum_{i=1}^{N} |\mathbf{I}_{\text{ref}} - \hat{\mathbf{I}}_{\text{ref}=\text{src}}^{(i)}| \odot \mathbf{M}_{\text{ref}}

深度平滑约束

深度平滑约束:通过一阶和二阶导数约束深度图,边缘区域允许深度变化,平滑表面保持深度连续,公式为:

Lsmooth=eIrefDref+e2Iref2DrefL_{\text{smooth}} = e^{|\nabla \mathbf{I}_{\text{ref}}|} \cdot \nabla \mathbf{D}_{\text{ref}} + e^{|\nabla^2 \mathbf{I}_{\text{ref}}|} \cdot \nabla^2 \mathbf{D}_{\text{ref}}

高层特征对齐损失

高级特征对齐损失(L1 损失)

Lfeature=1Ni=1NFrefF^src(i)MrefL_{\text{feature}} = \frac{1}{N} \sum_{i=1}^{N} |\mathbf{F}_{\text{ref}} - \hat{\mathbf{F}}_{\text{src}}^{(i)}| \odot \mathbf{M}_{\text{ref}}

总损失

  • 单尺度:

LSS=λ1Lpatch+λ2LSSIM+λ3Lgeometric+λ4Lsmooth+λ5LfeatureL_{\text{SS}} = \lambda_1 L_{\text{patch}} + \lambda_2 L_{\text{SSIM}} + \lambda_3 L_{\text{geometric}} + \lambda_4 L_{\text{smooth}} + \lambda_5 L_{\text{feature}}

  • 多尺度:

LMS=k=1KμkLSS(k)L_{\text{MS}} = \sum_{k=1}^{K} \mu_k \cdot L_{\text{SS}}^{(k)}


10. 测试数据集

  • DTU MVS:室内物体,多种光照条件;
  • Tanks and Temples:室内外场景,分为中级和高级;
  • ETH3D:包含大量弱纹理场景,如建筑立面、室内墙面。

11. 消融实验

  • 基线:像素级光度一致性 + 高层特征对齐;
  • 添加几何一致性 + 平滑损失:完整性提升,精度略有下降;
  • 替换为块级光度一致性:精度和完整性均显著提升;
  • 视图数量影响:测试不同视图数对性能的影响,最终选择 N1=4,N2=4N_1=4, N_2=4

总结

PatchMVSNet通过引入块级光度一致性鲁棒几何一致性,显著提升了无监督MVS在弱纹理场景下的重建能力,尤其在完整性和泛化性方面表现优异。