SfM-Learner

Zhou 2017 · Paper

One-line summary — Jointly trains a single-view depth network and a multi-view pose network from unlabeled monocular video using photometric view synthesis as the only supervision, founding the self-supervised depth + ego-motion field.

Problem

Supervised depth and pose estimation need expensive ground truth — LiDAR scans for depth, motion capture or high-grade GPS/INS for poses — which limits training data to a handful of instrumented datasets. Yet unstructured monocular video is essentially free and unlimited.

The insight: a view synthesis system “only performs consistently well when its intermediate predictions of the scene geometry and the camera poses correspond to the physical ground-truth”. So train networks on the ‘meta’-task of view synthesis, and depth and ego-motion must emerge as intermediate predictions.

Method & architecture

Lvs=spIt(p)I^s(p),\mathcal{L}_{vs}=\sum_{s}\sum_{p}\left|I_{t}(p)-\hat{I}_{s}(p)\right|,

where I^s\hat{I}_{s} is IsI_s warped into the target frame. Each target pixel ptp_t is projected into the source view via

psKT^tsD^t(pt)K1pt,p_{s}\sim K\hat{T}_{t\rightarrow s}\hat{D}_{t}(p_{t})K^{-1}p_{t},

(KK intrinsics, D^t\hat{D}_t predicted depth) and I^s(pt)\hat{I}_s(p_t) is filled by differentiable bilinear sampling of the 4-pixel neighbours (spatial transformer networks). Only correct depth and pose make the warp photo-consistent.

Lfinal=lLvsl+λsLsmoothl+λesLreg(E^sl).\mathcal{L}_{final}=\sum_{l}\mathcal{L}_{vs}^{l}+\lambda_{s}\mathcal{L}_{smooth}^{l}+\lambda_{e}\sum_{s}\mathcal{L}_{reg}(\hat{E}_{s}^{l}).

Results

Why it matters for SLAM

SfM-Learner showed that the classical SfM/SLAM objective — photometric consistency across views — can serve as a training signal instead of a runtime cost, letting networks learn depth and ego-motion from raw video. Its view-synthesis loss became the template for Monodepth2, D3VO, and dozens of self-supervised VO/depth systems that now feed learned depth priors back into SLAM pipelines. It marks the conceptual bridge between direct SLAM and end-to-end learned odometry.