Zonnepanelen automatisch detecteren met luchtfoto’s

Zonnestroom is een belangrijke hernieuwbare energiebron. In dit artikel wordt het onderzoek toegelicht dat het CBS uitvoert om de aantallen en de locaties van zonnepanelen met behulp van deep learning methoden nauwkeuriger in kaart te brengen.

Ontwikkelingen

De CBS statistiek over zonnestroom is het afgelopen jaar op een aantal punten verbeterd. Het CBS heeft hierover gepubliceerd in een uitgebreid artikel. Tot voor kort was de CBS statistiek over zonnestroom gebaseerd op een enquête onder ongeveer 300 leveranciers en importeurs van zonnepanelen. Inmiddels is er overgestapt op een werkwijze waarbij het geïnstalleerd vermogen wordt afgeleid uit registers, waaronder het Productie Installatie Register (PIR) en data van CertiQ. Het resultaat van de nieuwe methode is dat cijfers op een lager detailniveau kunnen worden gerapporteerd.

Het aanmelden van zonnepanelen is in de praktijk niet verplicht in Nederland. Het PIR dat het CBS hanteert is dan ook niet volledig dekkend, zie bijvoorbeeld de recente publicatie hierover door Netbeheerder Stedin. Met een nieuwe studie wil het CBS in Europees verband onderzoeken of de aantallen en locaties van zonnepanelen nauwkeuriger kunnen worden vastgesteld door aanvullend gebruik te maken van analyse van luchtfoto’s.

Deep Solaris

In het onderzoeksproject “Deep Solaris” werkt het CBS samen met de Open Universiteit en de statistische bureaus van Vlaanderen en Duitsland om een zo compleet en gedetailleerd mogelijk beeld te krijgen van geïnstalleerde zonnepanelen. Onderdeel van dit project is het opleveren van een interactieve kaart met de locaties van zonnepanelen in Vlaanderen, Noordrijn-Westfalen en Limburg. Deze locaties worden automatisch bepaald op basis van luchtfoto’s. Van deze locaties kunnen regionale statistieken met aantallen zonnepanelen worden gemaakt.

In dit artikel wordt toegelicht welke experimenten er zijn uitgevoerd met het toepassen van verschillende modellen op luchtfoto’s van onder meer de staat Californië (VS), de deelstaat Noordrijn-Westfalen (Duitsland) en de provincie Limburg (Nederland). Het resultaat van deze experimenten is dat er twee modellen als beste naar voren zijn gekomen. Deze modellen zullen in het vervolg van het project gebruikt worden om de eerste interactieve kaart op te leveren, waarbij ook luchtfoto’s van Vlaanderen zullen worden gebruikt.

Project aanpak

In dit onderzoeksproject zijn diverse machine learning technieken onderzocht, zoals random forest (RF), support vector machine (SVM) en convolutional deep neural networks (CNN). Het doel van deze technieken is om geautomatiseerd afbeeldingen te kunnen classificeren, zie figuur 1.

deep-learning

In dit artikel worden de resultaten toegelicht van de toepassing van vijf CNN-modellen: VGG16, InceptionV3, InceptionResNetV2, DenseNet en Xception. Deze modellen zijn publiekelijk beschikbaar in de Keras bibliotheek. De modellen zijn getraind op luchtfoto’s van verschillende stedelijke landschappen, waarbij onder meer bestaande registers worden gebruikt om de ontwikkelde algoritmen te trainen en valideren.

Als startpunt voor de modellen zijn gewichten gebruikt van de ImageNet Large Scale Visual Recognition Competition (ILSVRC). In deze competitie worden verschillende algoritmen getest op hoe goed ze presteren in de detectie van objecten en het classificeren van verschillende afbeeldingen. Detectie van zonnepanelen is overigens geen onderdeel van deze competitie.

Project aanpak

Met eerder genoemde selectie van CNN-modellen zijn 3 experimenten uitgevoerd, waarbij de modellen op verschillende eigenschappen worden beoordeeld:

  • Accuracy: Hoeveel procent van de daken wordt op de juiste manier (positief of negatief) herkend;
  • Precision: Hoeveel procent van de herkende zonnepanelen is daadwerkelijk een zonnepaneel;
  • Recall: Hoeveel procent van de daadwerkelijke zonnepanelen als zodanig wordt herkend;
  • F1-score: Getal tussen 0 en 1, gebaseerd op de precision én recall. 1 betekent een perfecte precision en recall.  

Experiment 1 – Transfer learning

Onderzoeksdoel

Onderzoeken in hoeverre modellen die reeds getraind zijn voor andere toepassingen, ook gebruikt kunnen worden voor de detectie van zonnepanelen.

Gebruikte modellen

InceptionV3, InceptionResNetV2, DenseNet en Xception in verschillende varianten: zonder, met gedeeltelijke en met volledige ‘transfer learning’. De modellen zijn getraind en getest op een dataset van Noord-Rijn Westfalen.

Resultaten

Het Xception model met volledige ‘transfer learning’ leverde de beste resultaten (hoogste f1-score)op, zie figuur 3. De accuracy is weergegeven voor het verkregen resultaat bij toepassing op zowel de training-set als de test-set.

Experiment 1 - Xception NRW
Transfer learning approachTest accuracyTraining accuracyF1score
No transfer learning0,80,790,83
Full transfer learning0,820,810,84
Partial transfer learning0,810,810,82
 

Experiment 2 – Generalization

Onderzoeksdoel

Onderzoeken hoe goed reeds getrainde modellen presteren bij toepassing op luchtfoto’s van andere gebieden

Gebruikte modellen

Xception uit experiment 1 (full transfer learning), getraind en gebruikt op luchtfoto’s van Noord-Rijn Westfalen en Californië.

Resultaten

Het Xception model uit experiment 1 is getraind op foto’s van Noord-Rijn Westfalen. De resultaten bij toepassing op een dataset van Californië zijn – zonder aanvullende training – duidelijk slechter. Door het model volledig opnieuw te trainen worden de resultaten al iets beter, maar verrassend genoeg wordt het beste resultaat verkregen als het model slechts gedeeltelijk (enkele lagen) opnieuw wordt getraind. Hetzelfde geldt voor de toepassing bij NRW. Bij een gedeeltelijke en met name bij een volledige hertraining gaat het model slechter presteren, waarschijnlijk doordat er ‘overfitting’ optreeft. De accuracy is weergegeven voor het verkregen resultaat bij toepassing op zowel de training-set als de test-set.

Experiment 2 - Xception NRW
Training approachTest accuracyTraining accuracyF1score
No retraining0,820,810,84
Full retraining0,650,660,74
Partial retraining0,780,770,81

Experiment 2 - Xception California
 Test accuracyTraining accuracyF1score
No retraining0,720,730,73
Full retraining0,720,730,78
Partial retraining0,810,810,83

Experiment 3 – Generalization en cross-validation

Onderzoeksdoel

Onderzoeken of het eindresultaat beter wordt als er twee modellen worden toegepast en de resultaten van de modellen onderling worden vergeleken.

Gebruikte modellen

Xception uit experiment 1 (full transfer learning) evenals VGG16 (gedeeltelijk ‘transfer learning’). De modellen zijn getraind op Bradbury (Californië) en toegepast op Aachen (Noord-Rijn Westfalen), Fresno (Californië) en Limburg.

Resultaten

Het Xception model heeft een betere precision, recall en f-score dan het VGG16 model. Het VGG16 model generaliseert daarentegen beter dan Xception omdat het laatste model de data lijkt te ‘overfitten’. Bij het toepassen van Xception op de dataset van Aachen gaat de nauwkeurigheid en precisie hard achteruit.

Experiment 3 - Xception / VGG16
 BradburyFresnoAachen
Xception0,980,980,53
VGG160,930,940,82
 

Voorlopige conclusie

De resultaten van de experimenten tonen aan dat de gebruikte modellen succesvol kunnen worden toegepast om zonnepanelen uit luchtfoto’s te classificeren. De best presterende modellen, Xception en VGG16, behalen training- en test accuracy van meer dan 90%.

Vervolgstappen

De eerste interactieve map wordt in februari 2019 verwacht. Daarnaast wordt er gewerkt aan een wetenschappelijke peer-reviewed paper die eind Q1 2019 zal worden ingediend. Een van de vervolgstappen in het onderzoek is te onderzoeken in hoeverre satelliet data toepasbaar is voor de detectie van (grootschalige) zonne-installaties.

Privacy maatregelen

Het CBS publiceert gegevens altijd zodanig dat daaraan geen herkenbare gegevens over een afzonderlijk persoon, huishouden, onderneming of instelling kunnen worden ontleend. Hoewel in dit project openbare gegevens (luchtfoto’s, satellietbeelden) als basis voor de analyse worden gebruikt, zullen de interactieve kaarten enkel op geaggregeerd niveau aantallen zonnepanelen laten zien.

Erkenning

Dit onderzoek wordt uitgevoerd onder de ESS actie 'Merging Geostatistics and Geospatial Information in Member States' (grant agreement no.: 08143.2017.001-2017.408) en een CBS investering voor de ontwikkeling van een Deep Learning algoritme.

Voor meer informatie over de inspanningen die CBS verricht om haar zonnestroom statistiek te verbeteren, zie de publicatie ‘Slim zonnestroom in kaart brengen’.

Feedback gevraagd

Je browser wordt niet ondersteund. Upgrade je browser. Je hebt een inconsistente user-agent geleverd bij het oplossen van de uitdaging. Mogelijk heb je browserextensies of -instellingen ingeschakeld om de user-agent te vervalsen en moet je deze uitschakelen om door te gaan. Een deel van Turnstile is per ongeluk in de cache opgeslagen. Wis gelieve je cache. De tijd op de klok klopt niet. Zet je klok op de juiste tijd. Een ongespecificeerde fout heeft zich voorgedaan.