45
LiDAR Point Cloud Geospatial ML Engineer — Roof Segmentation & Damage Classification
UpworkUSNot specifiedexpert
PythonGISLidarpoint cloud processingGeospatial DataMachine LearningComputer VisionData ScienceArtificial Intelligence
We're building a drone LiDAR intelligence platform that continuously scans residential rooftops across Denver metro and scores them for hail damage and age using AI. We fly DJI Matrice 400 drones with Zenmuse L3 LiDAR sensors at 150m altitude. DJI Terra Pro processes the raw L3 data into classified .LAS point clouds. Your job starts there.
This is a focused 6–8 week contract with a defined deliverable. We have a CTO who will integrate your output into our production stack — you're building the model, not the surrounding infrastructure. We need someone who has worked with LiDAR point cloud data before. This is not a learning opportunity.
What you're building:
1. Roof segmentation pipeline
Takes classified .LAS output from DJI Terra (Zenmuse L3, 150m AGL, Denver residential) and isolates individual roof polygons per parcel. Must handle:
Complex rooflines, dormers, hip roofs, gable roofs
Attached and semi-detached structures
Tree occlusion and partial canopy interference
Dense urban and suburban residential environments
Output: per-property roof polygon with plane-level segmentation, tied to parcel boundary via geospatial join.
2. Hail damage and age classifier
Scores each roof plane on:
Hail damage severity (none / minor / moderate / severe)
Estimated remaining useful life
Material type where determinable from point density and return characteristics
Confidence score per assessment
Output: property-level damage score with plane-level breakdowns and confidence weighting.
3. Validation framework
Accuracy metrics and confidence thresholds validated against ground truth. We have access to:
Historical contractor inspection reports and insurance claim files from 25+ Denver roofing partners
HailTrace property-level hail history for Denver metro
Before/after point cloud diffs from storm response flights (available Month 3+)
Your model needs to be accurate enough to be defensible to insurance carriers by Year 2. We're not asking for carrier-grade actuarial precision on Day 1 — we're asking for a solid v1 that improves as our proprietary dataset grows.
4. Retraining pipeline
The model will be retrained continuously as our proprietary data accumulates — contractor inspection reports correlated with scan data, post-storm before/after diffs, carrier claims data. Build it to be retrained, not frozen.
5. Clean handoff to CTO
Documented code, retraining guide, 2-hour technical handoff session. Our CTO is a strong AI systems engineer — not a geospatial specialist. He needs to own this after you're done.
Training data you'll have access to:
Available immediately:
USGS 3DEP LiDAR coverage for Denver metro — free, download today
ISPRS benchmark datasets for building detection and roof segmentation
Published academic labeled roof datasets (IEEE/MDPI roof classification dataset — 4,500+ labeled roofs)
HailTrace property-level hail event history for Denver — storm date, size, location
Historical contractor inspection reports and Xactimate claim files from Denver roofing partners
Available Month 3–4:
Our actual Zenmuse L3 scan data from Denver baseline flights
Before/after point cloud diffs from first storm response flights
Contractor ground-truth validation of scored properties
Your first 4–6 weeks use public and partner data. Final tuning uses our proprietary L3 data. The model you deliver will be retrained on increasingly rich proprietary data after handoff — that's by design.
Required experience:
Point cloud processing — PDAL, Open3D, or equivalent
Building and roof segmentation from airborne LiDAR
ML model training and validation in Python
Geospatial data formats — .LAS, .LAZ, GeoJSON, GeoTIFF, WKT
At least one segmentation framework — PointNet++, RandLA-Net, or similar
Geospatial joins and parcel boundary matching
Nice to have:
Experience with drone-acquired LiDAR specifically vs terrestrial or manned aircraft
Familiarity with hail damage signatures in LiDAR return characteristics
Experience correlating point cloud data with ground-truth inspection reports
Insurance, proptech, or roofing industry background
PDAL pipeline automation experience
What we're NOT looking for:
RGB photogrammetry specialists without LiDAR experience
General ML engineers without geospatial background
Anyone who needs time to learn point cloud processing during the contract
Anyone proposing to use Nearmap or CAPE Analytics — we are building LiDAR-native, not RGB-based scoring
Deliverables:
Roof segmentation pipeline — Python, documented, production-ready
Damage and age classifier v1 — trained, validated, documented
Validation report — accuracy metrics, confidence thresholds, known limitations
Retraining pipeline and guide for CTO
2-hour technical handoff session with CTO
Milestone payment structure:
Milestone 1 (Week 2): Roof segmentation pipeline working on USGS 3DEP Denver data — 25%
Milestone 2 (Week 5): Damage classifier v1 trained and validated on available datasets — 50%
Milestone 3 (Week 7–8): Final tuning on L3 data, handoff complete — 25%
Engagement:
6–8 weeks
35–40 hrs/week
100% remote
Start: immediate
Milestone-based payments
To apply, include:
One specific LiDAR project you've worked on — input data, what you built, accuracy achieved
Your preferred tech stack for roof segmentation from airborne LiDAR
Your approach to training a damage classifier when labeled hail damage LiDAR data is limited
Your hourly rate
Applications without a specific LiDAR project example will not be reviewed.
Unlock AI intelligence, score breakdowns, and real-time alerts
Upgrade to Pro — $29.99/moClient
Spent: $4,049.66Rating: 5.0Verified