PatchFusion: An End-to-End Tile-Based Frameworkfor High-Resolution Monocular 深度估计(CVPR 24)

动机

目前的单目深度估计方法受主干网络分辨率的影响。训练数据的分辨率一本是几百×几百,而目前先进的相机上千万的像素分辨率。将当前方法直接扩展到高分辨率受到计算资源的限制。目前也有一些方法尝试解决这个gap:

(1)Guided Depth Super-Resolution (GDSR):使用高分辨率的RGB图像和低分辨率的深度图,深度超分辨。

(2)隐函数方法,如SMDNet,Nerf等,将场景或特征建模为一个隐函数,可以计算任意位置的0深度。

(3)BoostingDepth提出的基于切片的方法。整张图下采样和原分辨率的切片分别估计深度,然后统一处理合并切片。

作者主要提出BoostingDepth的一些缺点,尺度不一致、融合网络缺少有效全局引导。

提出了PatchFusion,端到端的基于切片的高分辨率深度估计方法。

方法

需要注意的是:这里深度估计的上下文(context),指的是估计出深度信息所必要的周围的信息,如纹理梯度等。

在低分辨率的数据集上训练预训练模型,然后用于切片的高分辨率深度估计。

融合模型

(1)Global Scale-Aware Estimation

将高分辨率图像降采样到模型原始分辨率,然后得到粗深度图Dc。

(2)Local Fine-Depth Estimation

将原始图像切片成模型输入相同或相近的分辨率,然后分片预测深度,得到Df,但是这样做忽略了全局信息,得到的分片深度图有伪影或者偏移。

(3)Fusion and Guided Fusion Network

如图2中b所示,

G2L模块:如下图所示,保留全局的上下文。基于swintansformer,经过一个localized windows for self-attention (W-SA), which is then followed by shifted window attention for inter-window interactions (SW-SA).

输入是原始图像和对应的粗深度图的裁剪。模块A是简单的卷积层和池化的堆叠,输入原始分辨率图像的切片的堆叠,Dc和Df,(图a中最下面那个Ng就是b Guided Fusion Network)。模块A的输出和粗糙特征Fc输入模块B,Fc经过G2L模块,得到的特征,由于粗糙特征分辨率小,因此参考了mask-rcnn中的roi操作,将低分辨率的特征和高分辨率的切块特征对齐。然后再经过两个卷积。模块c的输入为B的输出,直接对粗糙特征使用roi,Ff和低尺度上采样。

一致性感知训练和推断

训练

理论上,图四中重叠部分的特征和深度应该一致。因此计算重叠部分的损失如公式4所示。

推断

如图10所示,P=16已经可以覆盖全部区域,并且在表1中表示为FP=16,但是这样分块不能发挥模型的全部潜力,并且前面的公式4也就没用了。因此设计了一个P=49的划分。另外一个改进是额外随机划分128个块,这些块随后和深度Dc和Df一起输入融合网络。

损失

尺度不变对数损失+0.1Lc(公式4)

实验

自对比实验1,2,3是和其他后处理策略的比较。

CAT-P和CAT-F是计算Lc时分别用特征和深度损失。

CAI表示是使用额外随机的切块。

  • 7
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值