MonoIndoor: Towards Good Practice of Self-Supervised Monocular Depth Estimation for Indoor Environments
ICCV 2021
Paper: https://arxiv.org/pdf/2107.12429.pdf
提出室内深度估计的问题
1)序列帧之间深度变化范围大,导致DepthNet难以获得一致的深度线索。在室外场景中,最远处通常是天空;而在室内场景中,客厅和浴室的最远距离显然有很大差异
2)室内相机旋转镜头多(rotational),而室外,例如驾驶数据集KITTI,相机移动通常是平移。导致PoseNet对位姿估计难。
提出对应解决方法
1)深度因子化模块(Depth Factorization)解决深度变化范围大难以估计深度的问题;
2)残差姿态估计模块(Residual Pose Estimation)改善PoseNet对于旋转姿态的估计。
在三个室内数据集上做了实验:EuRoC, NYUv2 and 7-Scenes。
Baseline
Loss = 光度重构误差+ edge-ware smoothness loss + auto-mask static pixel [12] + depth consistency loss[1]
Depth Factorization
深度归一化模块通过预测一个输入图片场景的scale系数,约束预测深度图的深度最近和最远距离。
1)Self-attention module,加入attention模块去得到更informative的Encoder输出特征,属于常规加入注意力优化特征操作,蹭一波transformer的热度。
2)probabilistic classification-based strategy
为Depth Factorization 网络预测的scale value,通过对各个scale s进行加权求和后得到global scale S。这样可以得到平滑的global scale。
Residual Pose Estimation
通过估计中间状态视角,将一次姿态估计分解为多次姿态估计。
先输入通过I_t和I_t' 输入PoseNet,然后预测I*_t'->t,认为此时是输出了一个中间视角,然后再和Target View一起输入ResidualPoseNet预测一个相对位姿,再进行重投影,通过多次位姿估计和重投影,简化室内场景的相机位姿变化大的问题。
此外,注意PoseNet和ResidualPoseNet是共享backbone,而posehead是不共享的。
(The residual pose network shares parameters in the encoder with the pose network but learns independent parameters in its pose prediction head.)