Generation of High-Level Concepts in 3D Scene Graphs via Autoregressive Diffusion
Authors: Jose Andres Millan-Romera, Samuel Cognolato, Holger Voos, Jose Luis Sanchez-Lopez, Luciano Serafini
Organizations: Automation and Robotics Research Group, SnT University of Luxembourg, Luxembourg · University of Padova, Padova, Italy · Fondazione Bruno Kessler, Trento, Italy · Automation and Robotics Research Group, SnT, and Faculty of Science, Technology and Medicine, University of Luxembourg, Luxembourg
Indoor 3D Scene Graphs (3DSGs) represent environments as multi-layer hierarchies that connect observed geometric primitives (e.g., planes) to higher-level metric-semantic concepts (e.g., rooms, floors, buildings), enabling incremental spatial reasoning for robotic perception and SLAM. However, classical high-level concept generation approaches rely on hand-crafted rules for specific concept classes, while learning-based methods require separate models for graph structure and spatial node features (e.g., centroids), which limits scalability to novel classes and more complex hierarchies. We propose a unified autoregressive diffusion-based graph generative model that jointly learns structure and features, constructing complete 3DSGs bottom-up from observed vertical planes across arbitrary hierarchy depths. Our method consistently surpasses all learning-based and random baselines across 3DSG datasets spanning synthetic scenes, real architectural floor plans, and robotic sensor data, with varying layout complexity and hierarchy depth, and surpasses a one-shot model with oracle access to the target graph size on the largest hierarchy and on real single-floor data. Finally, we propose an adaptation of the Fused Gromov--Wasserstein distance for principled graph-level evaluation of generated 3DSGs against ground truth.
Figures & tables
Figure 1: Hierarchical 3D Scene Graph Generation. Starting from wall planes observed by the robot (blue lines), levels are generated bottom-up, with nodes colored by class and placed at their centroids. Grey edges denote part-of relations.
Figure 2: Plane nodes from robot mapping are preprocessed into a proximity graph GP (left), from which the 3DSG is grown iteratively (right). At generation step t , Insert selects the size mt of the next block added to Gt−1 ; Fill jointly denoises its classes, edges, and 3D positions from Zts=S to Zts=0 ; and Halt predicts Ht , ending generation at Gt=T .
Source
Synthetic
MSD
Real
Highest level
Floor
Floor
City
Floor
Building
City
Floor
Building
City
Dataset
S-F- □ ( □ rooms)
S-F
S-C
M-F
M-B
M-C
R-F
R-B
R-C
# graphs
2,400
2,999
2,999
3,466
2,416
1,084
4
1
1
∣V∣
23
30
110
95
159
223
45
135
172
∣E∣
26.2
34.8
130.5
112.3
186.8
258.6
46.0
145.0
185.0
Degree
2.28
2.34
2.38
2.36
2.35
2.32
2.04
2.13
2.11
Table 1: Datasets. Each level includes all the levels below it: floor-level graphs contain walls, rooms and floors, building-level graphs add buildings, and city-level graphs add cities. Per-graph averages.
Source: Synthetic
Method
S-F- □
S-F
S-C
FGW ↓
GW ↓
W ↓
Deg. ↓
Spec. ↓
Clust. ↓
GIN ↓
FGW ↓
GW ↓
W ↓
Deg. ↓
Spec. ↓
Clust. ↓
GIN ↓
FGW ↓
GW ↓
W ↓
Deg. ↓
Spec. ↓
Clust. ↓
GIN ↓
EC- □
12.0 ± 1.0
17.0 ± 1.0
8.0 ± 0.0
18.0 ± 1.0
12.0 ± 1.0
0.0 ± 0.0
40.0 ± 10.0
13.0 ± 1.0
17.0 ± 1.0
8.0 ± 1.0
19.0 ± 2.0
12.0 ± 1.0
0.0 ± 0.0
36.0 ± 9.0
-
-
-
-
-
-
-
EC-L
8.0 ± 0.0
7.0 ± 0.0
9.0 ± 0.0
25.0 ± 2.0
8.0 ± 1.0
0.0 ± 0.0
16.0 ± 1.0
8.0 ± 0.0
7.0 ± 0.0
9.0 ± 0.0
26.0 ± 2.0
8.0 ± 1.0
0.0 ± 0.0
20.0 ± 2.0
-
-
-
-
-
-
-
MiDi+Or
3.4 ± 0.1
0.1 ± 0.2
6.7 ± 0.1
0.2 ± 0.1
0.5 ± 0.1
0.0 ± 0.0
0.2 ± 0.0
3.3 ± 0.0
0.0 ± 0.0
6.5 ± 0.0
0.4 ± 0.1
0.5 ± 0.1
0.0 ± 0.0
0.4 ± 0.0
6.0 ± 0.3
7.3 ± 1.3
4.8 ± 0.8
33.3 ± 25.8
6.8 ± 1.8
1.4 ± 1.0
12.7 ± 10.5
Ours
0.8 ± 0.1
0.7 ± 0.1
1.0 ± 0.1
0.3 ± 0.1
1.0 ± 0.1
0.0 ± 0.0
0.3 ± 0.0
1.1 ± 0.1
1.0 ± 0.1
1.3 ± 0.1
0.4 ± 0.0
0.6 ± 0.0
0.0 ± 0.0
0.4 ± 0.0
3.0 ± 0.5
3.2 ± 0.8
2.8 ± 0.3
2.8 ± 0.8
1.6 ± 0.1
0.1 ± 0.2
2.0 ± 1.1
Table 2: Evaluation results for synthetic and MSD datasets. Values are multiplied by 102 and reported as mean ± standard deviation over three seeds. Missing values (-) occur when the dataset contains hierarchy levels out of the scope of the baseline. Best results are highlighted in light gray and bold; second-best results in lighter gray.
Method
S-C [ ×10−2 ]
FGW ↓
GW ↓
W ↓
Deg. ↓
Spec. ↓
Clust. ↓
GIN ↓
w/o noisy blocks
6.89
7.68
6.09
25.52
5.71
0.00
4.35
w/o noise aug.
12.28
11.28
13.28
44.33
16.11
1.24
3.75
Ours-FD4 filler
5.78
5.76
5.80
27.84
7.18
0.41
11.64
Ours
6.10
6.86
5.34
18.73
4.89
0.05
3.11
Table 3: Results in real environments.
Figure 3: Qualitative results. Selection of the most complex datasets at the three hierarchy levels explored, comparing our model with the best-performing baselines. Full comparison in the Appendix F .
Appendix figures & tables7 assets
Supplementary material from the paper’s appendix.
Appendix
Hyperparameter
Value
Ours — Insertion and Halting models
Architecture
GINE, 5 layers, 128 hidden
Ours — node removal process
Node ordering σ
scene-graph proximity permutation
Node schedule
categorical removals, class order (0,4,5,3,2,1)
Block sizes D
{1,4}
Appendix
Table 5: Hyperparameters of Ours (FLAGG with a MiDi-based Fill module) and of the MiDi+Or baseline, identical for all datasets. Presets: preset/final/midi2/base.yaml (Ours) and preset/final/midi/base.yaml (MiDi+Or), relative to config/ .
Figure 4: FD4 variant in the Fill module
Generation
Architecture
Method
R
W
F,B,C
Centroids
Graph size
EC
Clustering
1-shot
Autoreg.
Diff.
EC- □
✓ □
✓
✗
✗
✓
✓
✓
✓
✗
✗
EC-L
✓
✓
✗
✓
✓
✓
✓
✓
✗
✗
MiDi+Or
✓
✓
✓
✓
✗
✗
✗
✓
✗
✓
Ours
✓
✓
✓
✓
✓
✗
✗
✗
✓
✓
Appendix
Table 6: Method comparison. The EC baselines are limited to wall/room generation, whereas MiDi+Or , and Ours generate the full hierarchy (floor, building, city).
Source: Synthetic
Method
S-F- □
S-F
S-C
FGW ↓
GW ↓
W ↓
Deg. ↓
Spec. ↓
Clust. ↓
GIN ↓
FGW ↓
GW ↓
W ↓
Deg. ↓
Spec. ↓
Clust. ↓
GIN ↓
FGW ↓
GW ↓
W ↓
Deg. ↓
Spec. ↓
Clust. ↓
GIN ↓
Rand
65.0 ± 0.0
50.0 ± 0.0
80.0 ± 0.0
84.0 ± 3.0
55.0 ± 2.0
141.0 ± 4.0
69.0 ± 3.0
69.0 ± 2.0
54.0 ± 2.0
83.0 ± 3.0
104.0 ± 1.0
73.0 ± 1.0
149.0 ± 3.0
74.0 ± 4.0
65.0 ± 1.0
55.0 ± 1.0
75.0 ± 1.0
143.0 ± 0.0
123.0 ± 2.0
160.0 ± 1.0
95.0 ± 2.0
Source: MSD
Method
M-F
M-B
M-C
FGW ↓
GW ↓
W ↓
Deg. ↓
Spec. ↓
Clust. ↓
GIN ↓
FGW ↓
GW ↓
W ↓
Deg. ↓
Spec. ↓
Clust. ↓
GIN ↓
FGW ↓
GW ↓
W ↓
Deg. ↓
Spec. ↓
Clust. ↓
GIN ↓
Appendix
Table 7: Evaluation results for Rand algorithm in synthetic and MSD datasets. Values are reported ×102 as mean ± standard deviation over three seeds.
Figure 5: Qualitative results across all training datasets and methods.
Figure 6: Qualitative results across all real datasets.
M-F
M-B
M-C
Method
Time/graph (s) ↓
Mem. (GiB) ↓
Time/graph (s) ↓
Mem. (GiB) ↓
Time/graph (s) ↓
Mem. (GiB) ↓
MiDi+Or
20.7 ± 0.8
1.43 ± 0.00
38.7 ± 0.5
4.10 ± 0.00
61.4 ± 0.5
3.49 ± 0.00
Ours
27.8 ± 1.1
2.63 ± 0.02
66.8 ± 0.9
6.92 ± 0.04
118.8 ± 0.4
5.97 ± 0.03
Appendix
Table 9: Sampling cost on the M- datasets. Wall-clock time per generated graph and peak GPU memory while generating from the test split (128 / 200 / 128 graphs), on one NVIDIA V100-32GB, mean ± std over 3 seeds. Each method uses its own sampling batch size: Ours generates the whole split in one batch, MiDi+Or in adaptive batches of a few graphs, so peak memory is per configuration, not per graph.
Automation and Robotics Research Group, Interdisciplinary Centre for Security, Reliability and Trust (SnT), University of Luxembourg · University of Amsterdam