Rethinking Asymmetry in
Self-Supervised 3D Geometry Learning

Gyeongjin Kang1Freeman Cheng2Botao Ye3Weijie Lyu2
Ming-Hsuan Yang2Eunbyung Park1

1Yonsei University   2UC Merced   3ETH Zurich

TL;DR Rather than masking images from the network, we mask them only from the 3D representation, so every image interacts with all others in one unified network to estimate geometry. Trained without any 3D labels, this improves camera pose and depth over prior self-supervised methods.

Ten unposed input images and predicted depth for DL3DV, NRGBD, ScanNet and RealEstate10K, with the reconstructed point cloud and predicted cameras for each, and three bar charts of pose accuracy.
Top: predicted depth and the point cloud lifted with predicted cameras, from 10 unposed images in one forward pass (DL3DV-trained; NRGBD, ScanNet and RealEstate10K are unseen). Bottom: RPA@5 gain over NAS3R and E-RayZer at 10 views, and pose AUC@30 of SL, SSL and SSL+SFT in our analysis setting.

Reconstructions

One forward pass over 10 unposed images (DL3DV-trained model). Points are the model's predicted depth, lifted with its predicted cameras (purple). No ground truth is used, and points inconsistent across views are removed.

Method

Where should the asymmetry live?

A self-supervised objective needs an asymmetry between what the model sees and what it must explain; otherwise trivial solutions satisfy it. Prior pose-free methods place this asymmetry in the input space. E-RayZer splits camera and geometry prediction into two backbones so that geometry sees only context views, and NAS3R masks attention so that context views attend only among themselves.

When a held-out view lies between context views, the context views already describe the same scene. Hiding the held-out view from the network hides no geometry; it only removes correspondence. We instead place the asymmetry in the 3D representation: a shared backbone lets every view inform depth and pose, while the rendered scene is built from context-view Gaussians only, so a held-out view is never rendered from its own prediction.

Where the asymmetry is placedThree designs: (a) separate camera and geometry estimators, (b) one estimator with masked attention, (c) one estimator with full interaction (ours); all build 3D geometry from context views.
Different view sets, same sceneAll views, the held-out subset and the context subset depict the same underlying 3D structure.
ArchitecturePipeline: a visual encoder tokenizes each view, a camera token is added, a unified estimator with alternating attention processes all views, a DPT head predicts Gaussian attributes and a relative pose head predicts cameras.

Left: all designs build the 3D scene from context (C) views. Separate backbones (a) and masked attention (b) restrict interaction with held-out (H) views, while ours (c) allows full cross-view attention and excludes held-out views only from the 3D representation. Top right: when held-out views lie between context views (the interpolation setting), the context views depict the same scene as the full view set. Bottom right: one estimator processes context and held-out views; a DPT head predicts depth and Gaussian attributes, a pose head predicts cameras, and context-view depths are unprojected and rendered at the held-out poses.

Beyond rendering: two alignment signals

Asymmetric feature alignment. A model sees a scene more completely from many views than from a few. We turn this gap into a training signal. An EMA teacher encodes all views, the student encodes a sparse subset, and the student's features are pulled toward the teacher's with a cosine loss. Matching features rather than depth maps keeps the teacher's depth and scale errors from being copied.

Semantic guidance. The rendering loss is local and pixel-wise. We additionally align the encoder features with those of a frozen vision foundation model, which supplies structure where photometric cues are weak, such as textureless or repetitive regions.

ℒ = ℒnvs + λalign ℒalign + λsem ℒsem

None of the three signals uses geometric annotation.

Results

All comparisons use 10 input views, released baseline checkpoints and the baselines' evaluation protocols. Pose is scored by relative pose accuracy (RPA, %) at 3° and 5°, and depth by AbsRel and δ<1.25 after per-view median alignment. Shaded cells mark the best per column.

Trained on RealEstate10K

Method3D priorParamsRE10K (trained)DL3DVScanNet v2NRGBD
RPA@3↑@5↑RPA@3↑@5↑RPA@3↑@5↑AbsRel↓δ<1.25↑RPA@3↑@5↑AbsRel↓δ<1.25↑
SPFSplatMASt3R629M64.278.110.519.32.05.70.2230.7573.214.10.1560.803
NAS3R–1.22B47.467.21.53.50.10.50.3810.6043.77.20.2140.630
Ours–183M65.780.214.226.42.77.10.2260.78516.530.10.1060.878

Camera pose and multi-view depth with 10 input views, all models trained on RE10K. SPFSplat initializes its backbone from MASt3R, which is trained with 3D supervision, and takes ground-truth intrinsics as input.

Trained on DL3DV

MethodParamsDL3DV (trained)RE10KScanNet v2NRGBD
RPA@3↑@5↑RPA@3↑@5↑RPA@3↑@5↑AbsRel↓δ<1.25↑RPA@3↑@5↑AbsRel↓δ<1.25↑
E-RayZer246M60.372.154.674.54.912.30.1680.81935.661.50.0950.908
Ours183M70.079.757.775.36.616.70.1250.87263.581.50.0820.917

Camera pose and multi-view depth with 10 input views, both models trained on DL3DV. E-RayZer decodes depth only for its context views, so for this comparison our depth head also decodes only the context views and both methods are scored on the same views.

Recovered camera trajectories (interactive)

Predicted cameras from 10 unposed views (color) against ground truth (white), after one Sim(3) alignment of the camera centers (Umeyama). APE is the RMSE of the aligned camera centers.

Loading the 3D viewer…

Cameras appear in temporal order, then the view orbits. Drag to rotate, scroll to zoom, right-drag or shift-drag to pan, double-click or “Reset view” to replay.

Analyses

Controlled experiments on DL3DV: all variants share the backbone, data and compute, and are evaluated on a fixed 48-frame span. Depth is compared against MoGe-2 pseudo ground truth, so these numbers are not directly comparable to the main tables.

Full interaction vs. input-space asymmetry

Line plots of AbsRel, delta below 1.25, RPA@3 and RPA@5 versus number of views for separated, masked-view and full-view variants.
All three variants share the representation and backbone (the separated variant has an additional 12-layer transformer for geometry). Placing the asymmetry in the 3D representation (full-view) gives the most accurate depth and pose at every view count in this setting.

Asymmetric feature alignment

Multi-view depth and pose versus number of views with and without alignment, and single-view depth bars.
Alignment improves multi-view depth and pose at every view count, with larger gains for fewer views, and the largest gain on single-view depth, where the rendering loss cannot directly supervise.
MethodCamera poseMulti-view depthSingle-view depth
RPA@3↑RPA@5↑AbsRel↓δ<1.25↑δ<1.25²↑AbsRel↓δ<1.25↑δ<1.25²↑
No alignment66.681.70.1950.7580.9010.2300.6380.850
Depth alignment63.481.70.2440.6920.8540.2480.6510.844
Feature alignment (ours)69.884.60.1910.7680.9050.1910.7290.901

Context alignment analysis on DL3DV. Aligning depth maps directly does not help in this setting, while aligning features does.

Single-view depth metrics and shape correlation over training steps for no alignment, depth alignment and feature alignment.
Single-view depth over training. The shaded region marks the ramp-up of the alignment loss. Under depth alignment, the shape correlation ρ(log ẑ, log z) against pseudo ground truth declines, so errors of the dense-context depth are passed on as wrong geometry.

Self-supervised pretraining for supervised fine-tuning

MethodDL3DV (trained)ScanNet v2NRGBD
RPA@3↑@5↑@10↑AUC@30↑RPA@3↑@5↑@10↑AUC@30↑RPA@3↑@5↑@10↑AUC@30↑
SSL (100K iters)66.681.791.788.01.25.217.629.816.537.874.372.3
SL (200K iters)50.874.692.587.20.73.213.525.216.341.282.777.2
SSL+SFT (100K + 50K iters)73.489.397.292.43.410.128.441.433.362.087.981.9

Same architecture and data throughout, analysis protocol. SSL alone, trained for half the iterations, is comparable to SL: it is more accurate at strict pose thresholds, while SL is better on some looser metrics. Fine-tuning the SSL model with the same supervision as SL surpasses both on every reported metric with fewer total iterations than SL.

Dynamic monocular videos

We also explore training on dynamic monocular videos from SpatialVID, keeping the architecture and objective unchanged, so the model still assumes a static scene. We compare a model trained on DL3DV alone with the same model trained on DL3DV and SpatialVID, evaluating camera pose on held-out SpatialVID videos grouped by the dataset's metadata (10 views over a 32-frame span).

Training dataDL3DVSpatialVID
benchmarkdyn_lowdyn_highcrowded
DL3DV80.7 / 87.136.9 / 70.025.4 / 55.724.1 / 55.1
DL3DV + SpatialVID79.1 / 85.874.7 / 86.073.9 / 84.087.4 / 89.2

RPA@5 / AUC@30 (%) with 10 input views. SpatialVID test sets have low or high ratios of dynamic content, or crowds, and use a 32-frame span. DL3DV uses a 48-frame span.

Without any architectural change, the model tends to assign low opacity to Gaussians on moving objects, so they are largely absent from renderings at held-out views while the static background is reconstructed.

Five input views and two target views with renderings for a crowded square and a mountain road with oncoming cars. Moving people and cars are largely absent from the renderings.
Held-out SpatialVID scenes rendered from five input views. Although the model assumes a static scene, moving people (top) and vehicles (bottom) are largely absent from the renderings at the target views, while the static background is reconstructed.

Camera trajectories on dynamic videos (interactive)

Predicted cameras (color) against ground truth (white) on held-out SpatialVID videos, after one Sim(3) alignment of the camera centers.

Loading the 3D viewer…

Drag to rotate, scroll to zoom, right-drag or shift-drag to pan, double-click or “Reset view” to replay.

BibTeX

@article{kang2026rethinking,
  title   = {Rethinking Asymmetry in Self-Supervised 3D Geometry Learning},
  author  = {Kang, Gyeongjin and Cheng, Freeman and Ye, Botao and Lyu, Weijie and
             Yang, Ming-Hsuan and Park, Eunbyung},
  journal = {arXiv preprint},
  year    = {2026}
}