Roof Geometrical Component Extraction Using Bimodal Data and Graph Neural Network
Bibliographic record
Abstract
Abstract. Accurate extraction of roof geometrical elements is essential for creating 3D building models, which play a critical role in urban planning, city management, infrastructure development, and disaster management. Roof geometrical elements consist of lines, which represent the intersections of roof planes, and vertices, which define the intersections of roof lines. Due to the presence of shadowed areas or poor contrast in optical images, roof geometrical elements cannot be extracted efficiently in all areas. This study proposes a novel framework using optical imagery and Digital Surface Models (DSM) to extract these elements and construct 3D building models. The proposed approach uses convolutional neural networks (CNNs) to extract roof features from both RGB and DSM data. Next, a graph-based methodology is employed to create roof models, where roof lines and vertices are represented as nodes, and their spatial relationships are captured through an adjacency matrix. Finally, a Graph Neural Network (GNN) is used to analyze these relationships and refine roof component connectivity. In the first stage, the framework was evaluated on a dataset comprising 1,300 buildings in Fredericton, New Brunswick, achieving an Intersection over Union (IoU) of 0.73, an F1-score of 0.7645, and an F2-score of 0.7641. The mAP results of the second stage, 28.3, demonstrate the effectiveness of a graph-based approach in extracting and reconstructing roof components, contributing to more accurate and automated 3D city modeling.
Fetched live from OpenAlex and de-inverted. Abstracts are not stored in this database: the inverted indexes are 8.6 GB of the frame’s 9.3 GB of text, and the host has 13 GB free.
How this classification was reachedexpand
Full frame machine prediction
Teacher imitationNot calibrated prevalence, not ground truth. Human validation pending. The Gemma side is a direct model label for every work in the frame, read from the title-only record. The Codex side is a classifier learned from the 10,348 direct Codex labels and calibrated to design-weighted sample rates; fields without enough sample support carry no Codex call. Candidate is the union of the two sides; consensus is their intersection. These outputs are machine_predicted_unvalidated and are not human labels.
Distilled classifier scores by category (both heads)
| Category | Codex | Gemma |
|---|---|---|
| Metaresearch | 0.000 | 0.001 |
| Meta-epidemiology (narrow) | 0.002 | 0.000 |
| Meta-epidemiology (broad) | 0.001 | 0.001 |
| Bibliometrics | 0.006 | 0.003 |
| Science and technology studies | 0.000 | 0.001 |
| Scholarly communication | 0.001 | 0.001 |
| Open science | 0.001 | 0.001 |
| Research integrity | 0.001 | 0.001 |
| Insufficient payload (model declined to judge) | 0.002 | 0.002 |
Machine scores (provisional)
The two teacher heads of the student model, read on this work. A score orders the frame for review; it never asserts a category, and the validation status ships verbatim with every row.
Baseline scores from an immature model (maturity gate not passed, 7 training rounds). Scores rank; they never assert a category.
score_only:v0-immature-baseline · verbatim from the scoring run: score_only means the number may rank works, and no category label ships from itClassification
machine, unvalidatedMachine predicted; a candidate call from one source (direct Gemma or distilled Codex), not a consensus.
How this classification was reached, model by model and score by score, is at the end of the page under "How this classification was reached".