SNAP: Self-Supervised Neural Maps for Visual Positioning and Semantic Understanding

Paul-Edouard Sarlin, Eduard Trulls, M. Pollefeys, J. Hosang, Simon Lynen
2/12/2026

No official code found. Best implementation: google-research/snap (196 stars, Apache-2.0, last commit 2023-12-14).

Abstract

Semantic 2D maps are commonly used by humans and machines for navigation purposes, whether it's walking or driving. However, these maps have limitations: they lack detail, often contain inaccuracies, and are difficult to create and maintain, especially in an automated fashion. Can we use raw imagery to automatically create better maps that can be easily interpreted by both humans and machines? We introduce SNAP, a deep network that learns rich neural 2D maps from ground-level and overhead images. We train our model to align neural maps estimated from different inputs, supervised only with camera poses over tens of millions of StreetView images. SNAP can resolve the location of challenging image queries beyond the reach of traditional methods, outperforming the state of the art in localization by a large margin. Moreover, our neural maps encode not only geometry and appearance but also high-level semantics, discovered without explicit supervision. This enables effective pre-training for data-efficient semantic scene understanding, with the potential to unlock cost-efficient creation of more detailed maps.

View on arXivView PDF

Code Implementations(1)

Apache-2.0

SNAP: Self-supervised Neural Maps for Visual Positioning and Semantic Understanding (NeurIPS 2023)

19620PythonOct 5, 20232 years agoApache-2.0
3d-mappingdeep-learningpose-estimationself-supervised-learning

Similar Papers

Cite this paper

@article{sarlin2026snap,
  title  = {SNAP: Self-Supervised Neural Maps for Visual Positioning and Semantic Understanding},
  author = {Paul-Edouard Sarlin and Eduard Trulls and M. Pollefeys and J. Hosang and Simon Lynen},
  year   = {2026},
  eprint = {2306.05407},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/pdf/2306.05407},
  journal = {NEURIPS 2023 2023}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2306.05407.svg)](https://codeofpaper.com/paper/2306.05407)

Discussion