OmniPoint

Universal Monocular Metric Pointcloud from Any Camera

ECCV 2026
1Google DeepMind      2ETH Zurich
Work done during an internship at Google DeepMind.
OmniPoint results on pinhole, fisheye and 360 degree images: input images, predicted depth maps and reconstructed metric point clouds.
One set of weights reconstructs metric 3D point clouds from a single image — pinhole, fisheye or 360° panorama — with camera intrinsics and sparse depth accepted as optional conditions.
6.66
fisheye point Rel↓
UniK3D 11.5
5.79
360° depth Rel↓
DA2 6.65
83.5
metric δ1 mean
best image-only
98.0
metric δ1 mean
with sparse depth

Abstract

Recovering metric 3D geometry from monocular images is a fundamental computer vision task, yet current methods remain heavily fragmented by fixed camera model assumptions and inflexible input schemes. We present OmniPoint, a unified framework designed to generalize metric reconstruction across diverse imaging sensors, including pinhole, fisheye, and equirectangular projections, while accommodating varying geometric priors. To overcome projection rigidity, OmniPoint abandons conventional planar depth regression. It instead adopts a decoupled ray and distance representation alongside a decoupled training objective, explicitly separating the camera projection model from the scene structure. To address the severe scarcity of training data for alternative cameras, we introduce a bidirectional augmentation strategy that explicitly bridges labeled perspective data and unlabeled omnidirectional domains in 3D space. Furthermore, to seamlessly integrate optional inputs like camera intrinsics or sparse depth without destabilizing the network through feature distribution shifts, we propose a robust information injection mechanism. This mechanism utilizes learnable input state embeddings to resolve architectural ambiguity and applies vectorized Gaussian smoothing to densify irregular measurements. Extensive experiments demonstrate that OmniPoint achieves state-of-the-art zero-shot performance across multiple benchmarks, establishing a robust new standard for unified monocular 3D reconstruction.

Camera-agnostic ray + distance

Both usual prediction targets are tied to the camera. Planar depth z assumes a linear pixel→ray map, diverges as the field of view approaches 180°, and is undefined behind the camera; raw (x, y, z) forces one network to memorise a different projection for every camera type. We predict a unit ray r and a radial distance d instead: the ray absorbs all camera geometry, the distance carries pure scene structure.

(u, v) P z image plane r d origin
$$\mathbf{P} = z \cdot \mathbf{K}^{-1}[u,\, v,\, 1]^{\top}$$
$$\mathbf{P} = d \cdot \mathbf{r}$$

Decoupled training objective

Supervising the two predictions jointly lets a wrong ray penalise a correct distance. We supervise them separately, projecting the predicted distance along the ground-truth ray so that structural error is isolated.

$$\mathcal{L}_{\text{ray}} = \sum_i \big\| \hat{\mathbf{r}}_i - \mathbf{r}_i \big\|_1$$
$$\mathcal{L}_{\text{point}} = \sum_i \big\| s^{*}\hat{d}_i \cdot \mathbf{r}_i - d_i \cdot \mathbf{r}_i \big\|_1$$
Representation, Rel↓S.FoVL.FoV360°
Ray + D (ours)4.046.375.79
XYZ point map4.286.746.28
Point lossPoint Rel↓
P + GT ray (ours)5.55
naive P5.65
disjoint D + Ray7.88

Both design choices are validated by ablation: the decoupled representation wins on every camera type, and the decoupled loss gives the most accurate point clouds.

Method overview

OmniPoint pipeline: image tokens plus optional intrinsic and sparse-depth tokens and learnable state embeddings enter a DINOv2 ViT-L; DPT heads predict ray and distance, a sky mask, and the global metric scale.
Image tokens + optional intrinsic / sparse-depth tokens → one DINOv2 ViT-L → DPT heads for ray + distance, sky mask and metric scale.

Optional priors, without destabilising the backbone.

Input-state embeddings. Learnable tokens signal which priors are active, resolving the architectural ambiguity that otherwise shifts ViT feature distributions when a prior is toggled on or off.
Vectorised Gaussian smoothing. Each sparse measurement becomes a Gaussian with \(\sigma \propto\) depth, scatter-added into a dense, spatially consistent guide plus a binary validity mask — raw irregular points give noisy gradients. $$w(\Delta u, \Delta v) = \exp\!\left(-\frac{\Delta u^{2} + \Delta v^{2}}{2\sigma^{2}}\right)$$
Conditioning design (sparse depth)Rel↓δ1
Ours (full)3.2198.2
w/o Gaussian smoothing3.8097.5
w/o input-state embedding3.3897.7

Trained with DINOv2 ViT-L and DPT heads on 29 labelled and 2 unlabelled datasets, on 72 A100s.

Bidirectional data augmentation

Ground-truth 3D for non-pinhole cameras is scarce. Rather than augmenting in 2D, we bridge labelled perspective data and unlabelled omnidirectional data in 3D, in both directions.

Bidirectional data augmentation: Perspective-to-Any synthesises fisheye and panoramic views from pinhole datasets; Any-to-Perspective pseudo-labels virtual pinhole crops of unlabelled wide field-of-view images.
Perspective-to-Any. Unproject labelled pinhole data to 3D and re-project it through virtual fisheye and equirectangular cameras; a validity mask removes occlusion holes, giving exact synthetic supervision where none exists.
Any-to-Perspective. Sample one virtual pinhole patch from unlabelled in-the-wild wide-FoV images, pseudo-label it with our pinhole-strong model, and stitch it back to enforce cross-camera consistency.
P2AA2P360° Rel↓360° δ1
8.4589.8
6.2194.5
8.2190.9
5.7995.1

The two directions are complementary: together they cut 360° error from 8.45 to 5.79 Rel.

Qualitative comparisons

Qualitative comparison on panoramic, fisheye and pinhole images against UniK3D, MoGe V2 and UniDepth V2.
Panorama (top), fisheye (middle) and pinhole (bottom). Vertical walls stay vertical and the fisheye road stays straight, where UniK3D's spherical-harmonic ray field bends them.
Panorama comparison against the panorama-specialist DA squared, showing sharper thin structures and undistorted vertical lines.
Against the panorama specialist DA2: thin structures survive and vertical lines stay undistorted.

Quantitative comparisons

One model covering every output, camera and prior

CapabilityDA v2MoGe V2Depth Pro UniK3DDA2PromptDAOmniPoint
Affine-inv. depth
Affine-inv. points
Metric points
Pinhole
Fisheye
360° panorama
Intrinsics prior
Sparse-depth prior

A subset of Tab. 1 in the paper.

Zero-shot relative geometry — Rel↓ (%)

MethodS.FoVL.FoV360° Images
DepthPointDepthPointDepthPoint
UniDepth V24.236.067.8118.419.3102.8
Depth Pro5.287.4926.636.2
MoGe V14.055.259.4828.122.3102.6
MoGe V23.985.5912.023.425.1102.8
DA34.786.3312.829.925.5101.5
UniK3D4.145.618.7711.510.411.4
DA26.657.30
OmniPoint (ours)4.045.556.376.665.795.90

Small-FoV: 8 pinhole benchmarks · Large-FoV: KITTI360 fisheye · 360°: Stanford2D3D-S + PanoSUNCG. A subset of Tab. 2 in the paper.

Zero-shot metric depth — δ1↑ (%)

MethodNYUv2KITTIETH3DiBims-1 DIODEHAMMERMean
UniDepth V292.895.469.593.251.846.874.4
Depth Pro91.938.332.881.537.763.057.5
MoGe V296.162.990.883.066.465.677.5
UniK3D94.493.683.792.873.058.382.6
OmniPoint (ours)86.288.091.887.773.373.883.5
  + intrinsics88.390.793.088.375.274.585.0
  + sparse depth98.598.494.199.098.499.398.0

Bold marks the best of the image-only block; the rows below the rule add optional priors. Providing sparse depth turns the same model into a densification system. Tab. 3 in the paper.

BibTeX

@inproceedings{ye2026omnipoint,
  title     = {OmniPoint: Universal Monocular Metric Pointcloud from Any Camera},
  author    = {Ye, Botao and Pollefeys, Marc and Yang, Ming-Hsuan and Kundu, Abhijit},
  booktitle = {European Conference on Computer Vision (ECCV)},
  year      = {2026}
}