Zonnepaneeldetectie op daken bij Gemeente Rotterdam
Transfer learning met CNN-architecturen (Xception, VGG16) op luchtfoto's voor energietransitie-monitoring — koppeling met BAG en zonpotentie-berekening.
- rol
- Engineer — één van de ontwikkelaars
- periode
- 2024/01 → 2025/07
- klant
- Gemeente Rotterdam (via brainstax)
- domein
- publieke-sector
"Hetzelfde transfer-learning recept uit mijn scriptie van 2020 werkt onverminderd goed — alleen op een ander dak."
De twee vragen die hierachter zitten
- Stand van zaken — hoeveel panelen liggen er en wat is het opgesteld vermogen in MWp? Belangrijk voor RES-doelstellingen, klimaatakkoord-targets, energietransitie-rapportages.
- Potentieel — hoeveel dakoppervlak is nog onbenut maar geschikt? Belangrijk voor beleid, communicatie naar bewoners en subsidieprogramma's.
Registratie van panelen is in Nederland niet verplicht — luchtfoto-detectie is daarom de schaalbare weg. Detectie en registratie zijn complementair: detectie vindt panelen die niet in PIR (Productie Installatie Register) staan, registratie vindt panelen die niet zichtbaar zijn van bovenaf.
Technische pipeline
-
Input
- Luchtfoto's per gemeente / stedelijk gebied
- BAG voor pandgeometrie (paneel ↔ adres koppelen)
- AHN voor dakhoogte en oriëntatie
-
Modelarchitectuur — vijf CNN-architecturen vergeleken:
- VGG16, InceptionV3, InceptionResNetV2, DenseNet, Xception
- Best presterend: Xception en VGG16, met >90% train/test accuracy
- Pre-trained gewichten uit ImageNet als startpunt — klassieke transfer learning aanpak
- Train/test/val split met handmatig gelabelde panelen als ground truth, vergeleken met CertiQ + PIR
-
Jaarlijkse herrun + mutaties
- Mens labelt alle zichtbare panelen handmatig op luchtfoto (contour, telling, ID)
- Object detection-algoritme leert op die labels
- Bij nieuwe jaarlijkse luchtfoto: model draait automatisch en geeft mutaties terug (nieuw geplaatst, verdwenen)
-
Combineren met zonpotentie
- Voor onbedekte dakvlakken: bereken zonpotentie uit dakoriëntatie (zuid > oost/west > noord), helling, schaduwval van buurpanden/bomen
- Per pand: hoeveel kWh zou een paneel hier jaarlijks opleveren?
-
Output
- Database per pand: paneel ja/nee, geschat aantal, vermogen, mutatiejaar
- Geaggregeerd per buurt/wijk/stad
- Bewoners-kaart: "hoe geschikt is uw dak?"
Wat het opleverde
TODO — adoptie binnen Rotterdam's energie- en duurzaamheidsteam, gebruik in RES-rapportage.
Wat ik specifiek deed
Eén van de ontwikkelaars in het team. Sluit aan op mijn eigen scriptie-werk uit 2020 waar vergelijkbare CNN-architecturen werden ingezet voor medische beeldclassificatie. Datzelfde transfer-learning-recept (ImageNet pre-train → fine-tune op kleine gelabelde dataset) werkt onverminderd goed acht jaar later op compleet andere domeinen.
Bekende beperkingen
- Gevelpanelen en in dakpannen geïntegreerde panelen zijn niet zichtbaar van bovenaf
- Schaduwval maakt detectie lastig
- Tijdverschil: luchtfoto's zijn jaarlijks, panelen worden continu geplaatst → er zit altijd lag in de data
Bronnen
- CBS-onderzoek deep learning zonnepanelen
- Kadaster / CBS samenwerking
- IMAGEM case study object detection
- Readar Solar365
- RVO dataviewer geschikte daken
Gerelateerd
- Masterscriptie — Vision AI voor medische beeldclassificatie — eerder werk met dezelfde CNN-recept
- Groene daken in kaart — verwante geospatial CV pipeline
- Skills: Computer vision, Transfer learning
Skills, topics & tech
Gerelateerd werk
Zwerfafvaldetectie met scanauto's (Rotterdam)
Vision-AI op straatbeelden uit gemeentevoertuigen — heatmap van schoonniveau om reinigingsroutes datagedreven te plannen.
Groene daken in kaart bij Gemeente Rotterdam
Vision-AI op luchtfoto's voor de Monitor Groene Daken — semantic segmentation met U-Net op dakvlakken, gekoppeld aan BAG en AHN.
Masterscriptie — Vision AI voor medische beeldclassificatie
Onderzoek waarin de Semantic Learning Machine (SLM) vergeleken werd met klassieke ML-algoritmes op binary en multi-class classificatie van pneumonia X-ray beelden.