Generating IFC Models from 3D Gaussian Splatting (3DGS)
Learn how to bridge the semantic gap between 3D Gaussian Splatting and structured IFC building models using Python-based automated workflows for scan-to-BIM.
Semantic Enrichment of 3D Gaussian Splatting for IFC Model Generation
Bachelor Thesis Defense
Richard Würstlin
TH Köln – University of Applied Sciences
January 2026
Prof. Dr.-Ing. Niels Bartels | Dr. Yang Zou (University of Auckland)
Presentation Overview
1. Motivation & Problem Statement
2. Research Objectives
3. Theoretical Background
4. Developed Workflow
5. Tool Implementation
6. Results & Evaluation
7. Discussion & Limitations
8. Conclusion & Future Work
Motivation & Problem Statement
BIM requires semantic information beyond pure geometry
3D Gaussian Splatting offers fast, photorealistic capture
3DGS produces purely geometric models lacking IFC-required data
SEMANTIC GAP
How can 3DGS-derived data be enriched to generate structured IFC models?
Research Objectives
Bridge the gap between photorealistic 3DGS reconstructions and semantically rich IFC building models
Investigate how alphanumeric attributes can be integrated into 3DGS-derived geometries
Generate structured, semantically classified IFC models
Focus on shell construction elements: walls, floors, windows, doors
Develop and evaluate a workflow with supporting Python tools
Validate on real construction site dataset
3D Gaussian Splatting (3DGS)
Novel view synthesis method combining explicit scene representation with real-time rendering
Initializes from sparse point clouds via Structure-from-Motion (SfM)
Optimizes anisotropic 3D Gaussian primitives through differentiable rendering
Real-time rendering at 100+ fps at 1080p resolution
Training time under 1 hour vs. hours/days for NeRF
Fast acquisition + Photorealistic quality + Low equipment cost
Industry Foundation Classes (IFC)
Open standard for BIM data exchange (ISO 16739)
Layer 4: Domain Layer – Architecture, Structural Engineering, Facility Management
Layer 3: Interoperability Layer – Shared Elements: Floors, Walls, Doors, Windows
Layer 2: Core Layer – Product, Process, Relationship, Actor
Layer 1: Resource Layer – Geometry, Material, Properties, Quantities
IFC requires: Geometric information + Semantic classification + Alphanumeric attributes + Spatial relationships
Developed Workflow Overview
1. Reality Capture (3DGS)
2. Alignment & Noise Cleaning
3. Manual Segmentation
4. Patching Occlusion Holes
5. Voxel-Grid Downsampling
6. 3D Mesh Construction
7. PLY Export
8. IFC Generation
Input: 2.6M Points
Output: 15 IFC Elements (230 vertices)
Developed Python Tools
CC_cloud_patch.py
Fills holes in point clouds using convex hull + grid interpolation
CC_3D_mesh.py
Converts planar point clouds to extruded polygon meshes using PCA + bounding box
CC_mesh_export.py
Batch exports all mesh elements to PLY format preserving naming conventions
mesh2ifc.py
Converts PLY meshes to IFC with auto-classification, hierarchy generation & opening relationships
Tech Stack: Python | NumPy | ifcOpenShell | CloudCompare PythonRuntime | Tkinter GUI
3D Mesh Generation Tool
1. Extract points from selected point clouds into NumPy array
2. Fit plane using PCA to determine orientation
3. Calculate thickness based on point distribution along normal
4. Compute 2D contour (bounding rectangle or convex hull)
5. Create prism mesh by extruding the contour
Key Innovation: Recognizes walls as flat rectangular surfaces and reduces them to minimal geometry instead of thousands of triangles
IFC Export & Classification Tool
Auto-classification from filename keywords (wall, floor, window, door)
Complete IFC spatial hierarchy generation
Opening relationships via IfcRelVoidsElement + IfcRelFillElement
Geometry via IfcTriangulatedFaceSet
IfcProject → IfcSite → IfcBuilding → IfcBuildingStorey → IfcElement
Supported: IfcWall | IfcSlab | IfcWindow | IfcDoor
Results: Data Reduction Pipeline
Final IFC Model: 15 elements | 230 vertices | 400 triangles
Reduction Ratio: ~12,000:1 in point count
Results: Generated IFC Model
4 Walls (IfcWall)
2 Floors (IfcSlab)
7 Windows (IfcWindow)
2 Doors (IfcDoor)
Validated in BIMcollab Zoom: Complete spatial hierarchy + Correct opening relationships + Element classification
Estimated LOD: 200 (approximate dimensions and shapes with correct classification)
Mesh Comparison: Processing Stages
After Downsampling
400 Meshes | 230 Vertices
After Patching
324 Meshes | 192 Vertices
After Segmentation
388 Meshes | 224 Vertices
Key Finding: Visual differences are minimal - geometric outcome is primarily governed by boundary definition rather than raw point density
Limitations & Challenges
Data Loss in Format Conversion
Spherical harmonics, spatial extent, opacity discarded (~90% information reduction)
Manual Processing Requirements
~1 hour for single room with 15 elements; segmentation = 80% of time
Geometric Simplification
Assumes planar elements with uniform thickness; no curved/complex geometry
Single Room Validation
Tested on one construction site room; generalization requires further validation
Semantic Properties
IFC models contain geometry + classification only; no material/thermal properties
Future Research Directions
Automated Preprocessing
Specialized filtering for 3DGS-derived point clouds (floaters, edge artifacts)
Deep Learning Segmentation
Transfer learning from PointNet++/Swin3D; construction-specific training datasets
Mesh-Based Processing
Direct mesh workflows for surface definition, edge manipulation, topology
Semantic Property Inference
AI-based material estimation; database integration for property sets
Validation Extension
Multi-story buildings, complex geometries, different construction stages
Conclusion
Feasibility Demonstrated: 3DGS data can be transformed into semantically structured IFC models
Workflow Validated: Manual approach achieves 100% semantic correctness for shell construction
Tools Developed: Four Python scripts for patching, mesh generation, export, and IFC conversion
Data Reduction: 2.6M points → 15 IFC elements (230 vertices) = 12,000:1 ratio
Contribution: Methodological foundation for extending Scan-to-BIM to 3DGS-derived data
Outlook: Manual approach prioritizes reliability; automation requires domain-specific deep learning
Thank You
Questions & Discussion
Richard Würstlin
richard.wuerstlin@smail.th-koeln.de
Semantic Enrichment of 3D Gaussian Splatting for IFC Model Generation
Python scripts and digital appendix available on Sciebo platform
- 3d gaussian splatting
- ifc-model
- bim
- scan-to-bim
- 3dgs
- python
- digital-twin
- construction-ai





