DeepTAM
Zhou 2018 · Paper
One-line summary — DeepTAM (ECCV 2018) is a learned re-imagining of DTAM: a coarse-to-fine tracking network estimates pose increments against a synthetic keyframe view, and a mapping network extracts keyframe depth from a plane-sweep cost volume refined in a narrow band around the current estimate.
Problem
Classical dense tracking-and-mapping (DTAM, LSD-SLAM) relies on direct photometric minimization and handcrafted regularizers, which are brittle under low texture and need good initialization. Naive learned alternatives (DeepVO, SfM-Learner, UnDeepVO) regress motion between two frames and inherit the motion statistics of their training sets — KITTI-style planar 3-DoF motion — so they generalize poorly to full 6-DoF tracking. DeepTAM asks whether keyframe-based dense camera tracking and depth-map estimation can be entirely learned while keeping the proven tracking/mapping architecture.
Method & architecture
Tracking. Given the current image and a keyframe (image + inverse depth), the goal is the transform with , all in . Instead of regressing this directly, DeepTAM renders a virtual keyframe at the current pose guess and learns only the small increment
which “significantly simplifies the learning problem and alleviates the dataset bias for camera motions.” Three encoder-decoder networks run coarse-to-fine at , , and ; each predicts an increment against a freshly rendered virtual keyframe, and the final pose is the product of all increments. An auxiliary optical-flow branch (active only during training) forces the encoder to learn motion features. Rather than one pose, weight-sharing fully connected branches emit hypotheses (angle-axis rotation + translation), averaged as
The loss combines flow endpoint error, a weighted pose error , and the negative log-likelihood of a multivariate Laplace distribution over the hypothesis spread (covariance estimated from the samples), which pushes the network to predict distinct hypotheses. Virtual keyframes double as data augmentation: sampling around ground truth simulates all 6-DoF motions despite biased training data (SUN3D, SUNCG).
Mapping. Depth per keyframe comes from a plane-sweep cost volume. For pixel and depth label , photoconsistency is accumulated over frames:
where is the SAD of patches between keyframe and warped image, and is a matching-confidence weight close to 1 when the cost curve has a clear unique minimum . A fixed-band module (32 labels evenly spaced over the depth range, inputs + cost volume) regresses an interpolation factor giving — a scale-free output that aids generalization. A narrow-band module then iterates: it rebuilds the cost volume on per-pixel labels centered at the previous estimate (band width ); one encoder-decoder turns it into a learned cost volume read out by a differentiable soft argmin, and a second encoder-decoder regularizes the result — the pair acting like alternating data and smoothness terms of a variational method.
Results
- Tracking (TUM RGB-D benchmark, translational RMSE in m/s): average 0.040 vs 0.060 for the frame-to-keyframe odometry of Kerl et al.’s RGB-D SLAM — despite using dataset depth only for keyframes. Ablations: 0.050 without the flow task, 0.043 without multiple hypotheses. No training or fine-tuning on the benchmark.
- Tracking + mapping: average 0.086 vs 0.253 for CNN-SLAM (run without pose-graph optimization) across the fr1 sequences.
- Mapping (10-frame sequences, test splits of MVS/SUNCG/SUN3D): best on all metrics and datasets — e.g. L1-inv 0.036 vs DTAM 0.086 and DeMoN 0.059 on MVS; sc-inv 0.128 vs SGM 0.248, DTAM 0.343, DeMoN 0.383 on SUNCG. More frames help (MVS L1-inv 0.117 with 2 frames vs 0.083 with 10) and narrow-band iterations converge after about 3 (0.076 at 1 iter vs 0.065 at 3).
- Robustness: under increasing pose noise (std up to ), SGM and DTAM degrade quickly while DeepTAM preserves scene structure; qualitative generalization to KITTI without fine-tuning.
Why it matters for SLAM
DeepTAM showed that the classical dense tracking-and-mapping architecture survives the transition to deep learning: keep the structure (keyframes, cost volumes, incremental alignment) and learn the components that classical methods do poorly (robust alignment, depth regularization). Its incremental-alignment idea foreshadows the iterative update operators of RAFT and DROID-SLAM, making it an important conceptual link between DTAM-era dense SLAM and today’s learned systems.