3D LIDAR Low Poly modeling
3D low polygon estimation for all buildings in the Netherlands, based on LIDAR and Kadaster data. Used for estimation of roof and wall surface areas.
This project was based on the AHN2 dataset, a complete and publicly available LIDAR scan of The Netherlands, with a resolution of about 8 points per m2. All data was stored in a PostGIS database. Publicly available building contours from Kadaster were cleaned up and transformed into 2D polygons. These polygons were used to query enclosed LIDAR points. A python library was developed with 2D and 3D vertex, edge, polygon, and polyhedron classes and all necessary arithmetics, linear algebra, and functions such as plane intersections, splitting up concave shapes, etc. With this library we developed an algorithm to establish the most optimal 3D solid representation of the pointcloud within the contour. Optimal in the sense of a lowest fitting error in combination with certain (trial and error) criteria to produce visually appealing 3D models in which homeowners would be able to recognize their house.
My Contribution
- Architecture
- Design and implementation of the spatial library and algorithms to establish the 3D building representation
- API design
- CI/CD pipeline for deployement to AWS Lambda for real-time computation
Images and Screenshots
3D Low Poly Approximation of building:
External Links
Highlights
- Relatively high precision estimation of wall and roof surface areas
- Much more accurate and visually attractive than the standard shoe-box models often seen by competitors
- Realtime computation via scalable, serverless REST APIs
- export as OBJ
Users
- multiple international energy corporations
- several smaller clients
- municipalities
Technology Stack
Python
NumPy
SciPy
matplotlib
custom algorithms
scikit-learn
algorithms
AWS
AWS Lambda
AWS S3
AWS ApiGateway
DB