OpenScene

Peng (ETH) 2023 · Paper

One-line summary — Predicts dense per-point CLIP-space features for 3D point clouds by back-projecting 2D vision-language features and distilling them into a 3D network, enabling zero-shot, task-agnostic open-vocabulary 3D scene understanding without any labelled 3D data.

Problem

Traditional 3D scene understanding relies on labelled 3D datasets to train one model per task with supervision: every task needs its own expensive 3D annotations, and every model is locked to a predefined category list. Meanwhile, 2D vision-language models trained on internet-scale data already embed images and text in a shared space. OpenScene asks: can 3D points be embedded in that same CLIP feature space, so a single unsupervised representation serves any query — objects, materials, affordances, activities, room types — at query time?

Method & architecture

Given a point cloud PRM×3\mathbf{P} \in \mathbb{R}^{M \times 3} and posed RGB images, three stages produce per-point CLIP-space features:

  1. Image feature fusion (2D → 3D). A frozen 2D vision-language segmentation model E2D\mathcal{E}^{\text{2D}} (OpenSeg or LSeg) yields per-pixel embeddings IiRH×W×C\mathbf{I}_i \in \mathbb{R}^{H \times W \times C}. Each surface point p\mathbf{p} projects into frame ii via the pinhole model u~=IiEip~\tilde{\mathbf{u}} = I_i \cdot E_i \cdot \tilde{\mathbf{p}} (with depth-based occlusion tests), and its KK visible views are average-pooled into one fused feature f2D=ϕ(f1,,fK)\mathbf{f}^{\text{2D}} = \phi(\mathbf{f}_1, \cdots, \mathbf{f}_K), giving a feature cloud F2DRM×C\mathbf{F}^{\text{2D}} \in \mathbb{R}^{M \times C}.
  2. 3D distillation. A sparse-conv MinkowskiNet18A E3D\mathcal{E}^{\text{3D}} learns to predict those features from geometry alone,

F3D=E3D(P),E3D:RM×3RM×C,\mathbf{F}^{\text{3D}} = \mathcal{E}^{\text{3D}}(\mathbf{P}), \qquad \mathcal{E}^{\text{3D}} : \mathbb{R}^{M \times 3} \mapsto \mathbb{R}^{M \times C},

trained with a cosine distillation loss

L=1cos(F2D,F3D),\mathcal{L} = 1 - \cos\big(\mathbf{F}^{\text{2D}}, \mathbf{F}^{\text{3D}}\big),

so novel point clouds can be embedded with no images at all. 3. 2D–3D ensemble. Fused 2D features excel on small or geometrically ambiguous objects (a mug, a painting); distilled 3D features win on distinctive shapes (walls, floors). Per point, both are scored against the CLIP text embeddings tn\mathbf{t}_n of the query set, sn2D=cos(f2D,tn)\mathbf{s}^{\text{2D}}_n = \cos(\mathbf{f}^{\text{2D}}, \mathbf{t}_n) and sn3D=cos(f3D,tn)\mathbf{s}^{\text{3D}}_n = \cos(\mathbf{f}^{\text{3D}}, \mathbf{t}_n), and the feature with the higher maxn\max_n score becomes f2D3D\mathbf{f}^{\text{2D3D}}.

Inference is pure cosine similarity: zero-shot segmentation labels each point by argmaxncos(f2D3D,tn)\arg\max_n \cos(\mathbf{f}^{\text{2D3D}}, \mathbf{t}_n); arbitrary open-vocabulary text produces relevancy heat maps the same way. No 2D or 3D ground-truth labels are used anywhere in training.

Results

Why it matters for SLAM

OpenScene demonstrated that internet-scale 2D vision-language knowledge can be transferred to 3D maps — a core building block of language-grounded spatial AI. For SLAM, this points to maps queried with free-form language rather than fixed label sets: the fuse-then-distill recipe (project pixel features onto geometry, then train a 3D network to predict them) was picked up by ConceptFusion, ConceptGraphs, and LERF, and is increasingly expected of robot mapping stacks.