From Geometry to Function: A Multi-Task LiDAR Benchmark Dataset for Semantic and Functional Parsing of Urban Facades
Organizations: Graphics and Spatial Computing Lab, Saint Mary’s University, Halifax, Canada · Nanjing Forestry University, Nanjing, China
Abstract
Understanding building facades is central to urban digital twins, heritage modelling, and sustainable city analysis, yet existing LiDAR benchmarks stop at geometry and semantic segmentation and offer little support for reasoning about the functional role of each architectural element. We introduce HFX3D, a large-scale urban facade benchmark of approximately 492 million LiDAR points from 26 buildings in Halifax, Canada, captured across four seasons, day and night, and varied weather. Each facade is annotated at three tiers, semantic, instance, and per-instance functional attributes, making it, to our knowledge, the first facade dataset to pair geometry and semantics with functional labels. Annotations are produced by a semi-automatic pipeline that combines geometry-guided heuristics with expert validation. We benchmark representative point-based, graph-based, convolutional, and transformer architectures and find that semantic segmentation is already challenging under severe class imbalance, while instance separation of repetitive structures and functional reasoning from geometry are substantially harder. The benchmark establishes a new foundation for function-aware 3D urban understanding. Project page: https://jijup.github.io/hfx3d-benchmark/ ; code: https://github.com/jijup/hfx3d-benchmark
Figures & tables
| Dataset | Year | Location | Nbhd | Pts (M) | Avg (M) | Scenes | Cls | Sem. | Inst. | Func. | Sensor | RGB | Inten. | Facade | Seas | Wthr | D/N | Rev. |
| General outdoor / indoor benchmarks | ||||||||||||||||||
| S3DIS [ 1 ] | 2016 | Stanford, USA | 1 | 696 | — | 272 rooms | 13 | ✓ | ✓ | RGB-D | ✓ | — | — | — | — | |||
| ScanNet [ 10 ] | 2017 | Various (indoor) | — | — | — | 1,513 | 20 | ✓ | ✓ | RGB-D | ✓ | — | — | — | — | |||
| Semantic3D [ 18 ] | 2017 | Switzerland / Austria | — | 4,000 | — | 30 | 8 | ✓ | TLS | ✓ | ✓ | 1 | — | — | — | |||
| Paris-Lille-3D [ 36 ] | 2018 | Paris + Lille, France | 2 | 143 | — | 2 km | 50 | ✓ | MLS | ✓ | 1 | — | — | — | ||||
| SemanticKITTI [ 2 ] | 2019 | Karlsruhe, Germany | 1 | — | — | 22 seqs. | 28 | ✓ | MLS | ✓ | 1 | — | — | — | ||||
| Method | mIoU | OA | mP | mR | mF1 |
|---|---|---|---|---|---|
| PointNet [ 33 ] | 26.30 | 75.63 | 39.78 | 32.94 | 33.32 |
| PointNet++ [ 34 ] | 29.19 | 78.54 | 39.14 | 34.76 | 35.24 |
| DGCNN [ 41 ] | 15.37 | 71.94 | 25.70 | 18.93 | 18.93 |
| KPConv [ 38 ] | 47.26 | 86.64 | 67.06 | 53.54 | 57.15 |
| RandLA-Net [ 19 ] | 16.94 | 72.64 | 24.92 | 21.43 | 21.39 |
| Point Transformer v2 [ 43 ] | 20.65 | 77.94 | 33.00 | 27.53 | 24.95 |
| Method | Wall | Terrain | Vegetation | Window | Blinds | Other | Column | Balcony | Roof | Stairs | Door | Arch |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| PointNet [ 33 ] | 69.31 | 73.46 | 81.27 | 20.45 | 4.27 | 22.19 | 2.20 | 0.00 | 0.13 | 41.14 | 1.16 | 0.00 |
| PointNet++ [ 34 ] | 72.47 | 83.57 | 84.88 | 21.99 | 6.39 | 16.25 | 1.02 | 0.00 | 0.02 | 63.73 | 0.00 | 0.00 |
| DGCNN [ 41 ] | 63.53 | 83.10 | 33.25 | 4.21 | 0.00 | 0.34 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 |
| KPConv [ 38 ] | 80.37 | 91.59 | 93.94 | 42.05 | 42.05 | 53.73 | 35.80 | 24.71 | 0.00 | 83.43 | 19.47 | 0.01 |
| RandLA-Net [ 19 ] | 67.98 | 82.04 | 30.05 | 3.01 | 0.00 | 0.00 | 0.00 | 0.00 | 20.14 | 0.00 | 0.00 | 0.00 |
| Point Transformer v2 [ 43 ] | 77.74 | 80.16 | 58.81 | 29.14 | 0.00 | 1.88 | 0.00 | 0.05 | 0.00 | 0.00 | 0.00 | 0.00 |
| Method | mAP | AP50 | AP25 |
|---|---|---|---|
| PointGroup [ 22 ] | 0.0145 | 0.0427 | 0.0955 |
| ISBNet [ 31 ] | 0.0422 | 0.0883 | 0.2276 |
| SoftGroup [ 40 ] | 0.2032 | 0.2923 | 0.4044 |
| Method | mAP | AP50 | AP25 |
|---|---|---|---|
| DBSCAN [ 12 ] | 0.2063 | 0.2725 | 0.3574 |
| HDBSCAN [ 4 ] | 0.2533 | 0.3430 | 0.4521 |
| MeanShift [ 8 ] | 0.0310 | 0.0871 | 0.1059 |
| KMeans [ 27 ] | 0.0201 | 0.0615 | 0.1793 |
| All | Ambiguous | |||
|---|---|---|---|---|
| Evidence | mF1 | ESM | mF1 | ESM |
| only | 0.6367 | 0.6905 | 0.4808 | 0.5378 |
| only | 0.8071 | 0.5880 | 0.7039 | 0.5280 |
| only | 0.7449 | 0.5420 | 0.6746 | 0.4958 |
| 0.7458 | 0.6888 | 0.5928 | 0.5434 | |
| 0.7145 | 0.6676 | 0.6072 | 0.5224 | |
Appendix figures & tables19 assets
Supplementary material from the paper’s appendix.
Appendix
| Building | Instances | Building | Instances | |||||
|---|---|---|---|---|---|---|---|---|
| BLD001 | 1.00 | 0.15 | 273 264 | BLD014 | 1.00 | 0.27 | 207 170 | |
| BLD002 | 1.00 | 0.50 | 352 310 | BLD015 | 1.00 | 0.70 | 79 78 | |
| BLD003 | 0.81 | 0.33 | 57 53 | BLD016 | 1.00 | 0.34 | 116 60 | |
| BLD004 | 1.00 | 0.33 | 140 138 | BLD017 | 1.00 | 0.17 | 435 350 | |
| BLD005 | 1.00 | 0.30 | 445 375 | BLD018 | 1.00 | 0.30 | 167 180 | |
| BLD006 | 1.00 | 0.16 | 467 416 | BLD019 | 1.00 | 0.30 | 156 152 |
| Class | Train | Val | Test | Total |
|---|---|---|---|---|
| Window | 1,835 | 175 | 638 | 2,648 |
| Blinds | 1,195 | 120 | 182 | 1,497 |
| Vegetation | 249 | 25 | 63 | 337 |
| Balcony | 177 | 21 | 53 | 251 |
| Door | 119 | 15 | 64 | 198 |
| Arch | 118 | 28 | 22 | 168 |
| Class | Candidate attributes (prior) |
|---|---|
| Wall | LB .65, TE .90, VS .40 |
| Roof | LB .85, TE .90, DR .40, FP .75 |
| Column | LB .90, AE .50 |
| Arch | LB .35, AE .25, IL .35, SU .45 |
| Window | TE .90, OP .85, SS .70, VE .75, NL .90 |
| Door | AC .90, OP .90, TE .90 |
| Class attribute | (geometry) | (context) |
|---|---|---|
| Wall LB | ground continuity | support from above |
| Wall, Balcony VS | – | vegetation alongside or on top |
| Window OP | depth/normal variability or handle-like protrusion | – |
| Window SS | – | adjacent blinds |
| Window VE | operability score | – |
| Door TE | position on building outline | host wall |
| Learned | Clustering (GT semantics) | ||||||
|---|---|---|---|---|---|---|---|
| Class | PointGroup | ISBNet | SoftGroup | DBSCAN | HDBSCAN | KMeans | MeanShift |
| Window | 0.170 | 0.009 | 0.220 | 0.002 | 0.047 | 0.002 | 0.000 |
| Blinds | 0.003 | 0.005 | 0.162 | 0.100 | 0.159 | 0.045 | 0.003 |
| Vegetation | 0.034 | 0.152 | 0.245 | 0.118 | 0.105 | 0.008 | 0.009 |
| Balcony | 0.000 | 0.538 | 0.264 | 0.528 | 0.624 | 0.020 | 0.000 |
| Door | 0.102 | 0.003 | 0.113 | 0.190 | 0.234 | 0.027 | 0.023 |
| Model | H H | Z Z | H Z | Z H | H M | Z M | M H | M Z | M M |
|---|---|---|---|---|---|---|---|---|---|
| PointNet [ 33 ] | 25.73 | 12.83 | 10.69 | 15.73 | 18.18 | 13.95 | 21.02 | 11.92 | 16.82 |
| PointNet++ [ 34 ] | 25.37 | 12.93 | 9.38 | 14.80 | 14.51 | 13.85 | 23.79 | 13.58 | 19.35 |
| DGCNN [ 41 ] | 18.00 | 20.17 | 8.15 | 15.11 | 12.80 | 17.39 | 24.86 | 19.97 | 23.16 |
| KPConv [ 38 ] | 41.59 | 31.17 | 12.08 | 30.15 | 26.67 | 30.84 | 39.76 | 27.36 | 32.15 |
| RandLA-Net [ 19 ] | 3.90 | 2.92 | 1.57 | 0.43 | 2.87 | 3.40 | 0.65 | 1.72 | 1.29 |
| Point Transformer v2 [ 43 ] | 16.66 | 14.04 | 11.15 | 18.97 | 13.77 | 17.48 | 17.77 | 12.08 | 14.84 |
| Shared class | HFX3D (12 classes) | ZAHA (15 classes) |
|---|---|---|
| wall | wall | wall |
| window | window | window |
| door | door | door |
| balcony | balcony | balcony |
| stairs | stairs | stairs |
| roof | roof | roof |
3D Scene Understanding
3D scene understanding builds geometric and semantic representations of environments for spatial reasoning, perception, and interaction.
See all 304 papers