Bei der Förderung von erneuerbaren Energien spielt der Ausbau von städtischen Photovoltaik-Anlagen eine bedeutsame Rolle. Denn PV-Anlagen auf Dächern gelten als eine hervorragende Quelle für nachhaltige Energie. In dieser Hinsicht ist die Abschätzung des PV-Potenzials einer Stadt von Vorteil. Die aktuellen Methoden hierfür arbeiten auf der Basis von Laserscandaten, die veraltet und nur an vereinzelten Standorten verfügbar sind.
Diese Arbeit zielt darauf ab, das photovoltaische Potenzial einer Stadt mit Hilfe Künstlicher Intelligenz automatisch zu ermitteln. Verschiedene datengetriebene Deep Learning- und Semantische Segmentierungsverfahren analysieren hierzu frei verfügbare Fernerkundungsbilder. Dazu werden verschiedene Deep Learning Ansätze für die Analyse von Dächern kombiniert und am Anwendungsfall der Stadt Echterdingen evaluiert. Die Prototypentwicklung stellt einen innovativen Ansatz dar, der mit Hilfe der Fernerkundungsbilder das PV-Potenzial und den Ist-Zustand eines Daches/einer Stadt bewertet. Die Vorhersagen werden in einem Vergleich mit Laserscan-Messungen validiert und bewertet. Die Auswertungen zeigen, dass der Prototyp aussagekräftige Ergebnisse für die Analyse des PV-Potenzials liefert und einen Mehrwert im Vergleich zu Laserscan-Messungen bietet. Die Masterarbeit zeigt auch, dass der Prototyp weitreichende Möglichkeiten für den Einsatz im Unternehmen bietet und zu einer nachhaltigen Lösung führen kann.
Inhaltsverzeichnis
Abkürzungsverzeichnis
Abbildungsverzeichnis
1. Einleitung
1.1 Motivation
1.2 Ziele und Umfang
1.3 Umriss dieser Arbeit
2. Verwandte Themen und wissenschaftlicher Hintergrund
2.1 Abgrenzung Künstliche Intelligenz
2.1.1 Künstliche Intelligenz
2.1.2 Maschine Learning
2.1.3 Deep Learning
2.2 Künstliche neuronale Netze
2.3 Convolutional Neural Networks (CNN)
2.3.1 Architektur
2.3.2 Training
2.3.3 Bewertungsmetriken
2.3.4 Optimierungslösungen
2.3.5 Spezielle CNN-Architekturen
2.4 Semantische Segmentierung
2.4.1 Hintergrund
2.4.2 Encoder-Decoder-Architektur: U-Net
2.5 Daten zur Analyse des PV-Potenzials
2.5.1 Fernerkundung
2.5.2 Datensätze
2.6 Vorhandene Lösungen
2.6.1 Ähnliche Aufgabenstellung
2.6.2 Auswahl von Komponenten
2.6.3 Optimierung der Implementierung
3. Konzeption des Prototyps
3.1 Konzeption des Anwendungsfalls
3.2 Anforderungen
3.3 Design des Prototyps
3.3.1 Dachflächen-Segmentierung
3.3.2 Solarmodul-Segmentation
3.3.3 Solarmodul-Klassifizierung
3.3.4 Dachform-Klassifizierung
3.3.5 Azimut-Berechnung
3.3.6 PV-Potenzial-Simulation
4. Implementierung des Prototyps
4.1 Vorgehensweise
4.2 Entwicklungsumgebung und Werkzeuge
4.3 Datengenerierung
4.4 Datenvorverarbeitung
4.4.1 Datensatz partitionieren
4.4.2 Trainingsbilder vorverarbeiten
4.4.3 Maßstab ermitteln
4.5 Training der Modelle
4.5.1 Modell: Semantische Segmentierung des Daches
4.5.2 Modell: Semantische Segmentierung der Solarmodule
4.5.3 Modell: Solarmodul-Klassifizierung
4.5.4 Modell: Klassifikation der Dachform
4.5.5 Modell: Klassifikation der Azimutklasse
4.5.6 Modell: Klassifizierung PV und Solarthermie
4.6 Deployment des Systems
4.6.1 Anbindung an lokale Testbilder
4.6.2 Anbindung an die Maps-API
5. Evaluation
5.1 Evaluation am Anwendungsfall Echterdingen
5.1.1 LUBW-Messungen
5.1.2 Vorhersagen des Prototyps
5.1.3 Vergleich
5.2 Stichprobenbasierte Evaluation
5.3 Fehleranalyse
5.3.1 Analyse der Fehler auf Evaluierungsbasis
5.3.2 Analyse der Fehler im Gesamtkontext
5.4 Betriebswirtschaftliche Analyse
5.4.1 Geschäftsideen
5.4.2 Prozessanalyse in der Stadtverwaltung
5.4.3 Ökonomisches Lösungskonzept in Echterdingen
5.5 Fazit und Ausblick
Anhang
Literaturverzeichnis
Abstract
The expansion of urban photovoltaic systems plays a significant role in the promotion of renewable energies. This is because rooftop PV systems are an excellent source of sustainable energy. In this respect, the estimation of a city's PV potential is beneficial. Current methods for this purpose work on the basis of laserscan data, which are outdated and available only at specific locations.
This work aims to automatically determine the photovoltaic potential of a city using Artificial Intelligence. Various data-driven Deep Learning and Semantic Segmentation methods analyze freely available remote sensing images. For this purpose, different Deep Learning approaches are combined for the analysis of roofs and evaluated on the use case of the city of Echterdingen. The prototype development represents an innovative approach that uses remote sensing imagery to evaluate the PV potential and the actual state of a roof/town. The predictions are validated and evaluated in a comparison with laserscan measurements. The evaluations show that the prototype provides meaningful results for the analysis of PV potential and offers added value compared to laserscan measurements. The master thesis also shows that the prototype offers far-reaching possibilities for use in the company and can lead to a sustainable solution.
Zusammenfassung
Bei der Förderung von erneuerbaren Energien spielt der Ausbau von städtischen Photovoltaik-Anlagen eine bedeutsame Rolle. Denn PV-Anlagen auf Dächern gelten als eine hervorragende Quelle für nachhaltige Energie. In dieser Hinsicht ist die Abschätzung des PV-Potenzials einer Stadt von Vorteil. Die aktuellen Methoden hierfür arbeiten auf der Basis von Laserscandaten, die veraltet und nur an vereinzelten Standorten verfügbar sind.
Diese Arbeit zielt darauf ab, das photovoltaische Potenzial einer Stadt mit Hilfe Künstlicher Intelligenz automatisch zu ermitteln. Verschiedene datengetriebene Deep Learning- und Semantische Segmentierungsverfahren analysieren hierzu frei verfügbare Fernerkundungsbilder. Dazu werden verschiedene Deep Learning Ansätze für die Analyse von Dächern kombiniert und am Anwendungsfall der Stadt Echterdingen evaluiert. Die Prototypentwicklung stellt einen innovativen Ansatz dar, der mit Hilfe der Fernerkundungsbilder das PV-Potenzial und den Ist-Zustand eines Daches/einer Stadt bewertet. Die Vorhersagen werden in einem Vergleich mit Laserscan-Messungen validiert und bewertet. Die Auswertungen zeigen, dass der Prototyp aussagekräftige Ergebnisse für die Analyse des PV-Potenzials liefert und einen Mehrwert im Vergleich zu Laserscan-Messungen bietet. Die Masterarbeit zeigt auch, dass der Prototyp weitreichende Möglichkeiten für den Einsatz im Unternehmen bietet und zu einer nachhaltigen Lösung führen kann.
Abkürzungsverzeichnis
API Application Programming Interface
AWS Amazon Web Services
BPMN Business Process Model and Notation
CNN Convolutional Neural Network
CSV Comma-separated Values
Dstl Defence Science & Technology Laboratory
EO Earth Observation
FCN Fully Convolutional Network
Http Hypertext Transfer Protocol
IoU Intersection over Union
kWh Kilowatt Stunden
kWp Kilowatt Peak
Lat Latitude
LE Leinfelden-Echterdingen
LIDAR Light Detection And Ranging
Lng Longtitude
LUBW Landesanstalt für Umwelt Baden-Württemberg
MaStR Marktstammdatenregister
ML Machine Learning
PIL Python Image Library
PV Photovoltaik
ReLU Rectified Linear Unit
RGB Rot, Grün, Blau
Tanh Tangens hyperbolicus
Abbildungsverzeichnis
Abbildung 1: Gesichtserkennung mit Deep Learning
Abbildung 2: Transformation des Bildvolumens über die CNN-Ebenen
Abbildung 3: Faltungsoperation zur Transformation eines zweidimensionalen Bildes
Abbildung 4: Aktivierungsfunktionen 1
Abbildung 5: Dropout - Vermeidung von Overfitting 1
Abbildung 6: Architektur des VGG16 1
Abbildung 7: Grundsätzliche FCN-Architektur zur Semantischen Segmentierung
Abbildung 8: U-Net Architektur
Abbildung 9: Überlappungs-Kachel-Strategie 1
Abbildung 10: Beispieldaten zur manuellen Datengenerierung
Abbildung 11: UML Use Case Diagramm
Abbildung 12: Gesamtkonzept des Prototyps
Abbildung 13: Prinzip der Dachflächen-Segmentierung
Abbildung 14: Modifizierte Architektur des U-Nets
Abbildung 15: Prinzip der Morphologischen Transformation
Abbildung 16: Prinzip der Solarmodul-Segmentierung
Abbildung 17: Solarmodul-Prüfung mit Transfer Learning
Abbildung 18: Solarmodul-Prüfung mit Xception-Klassifikation
Abbildung 19: Prinzip der Dachform-Klassifizierung
Abbildung 20: Bestimmung des Azimutwinkels
Abbildung 21: Bestimmung der Dachausrichtung über OpenCV-Operationen
Abbildung 22: Prinzip zur Klassifikation der Azimutklasse
Abbildung 23: Prinzip zur Simulation der verfügbaren Solarmodulfläche
Abbildung 24: Unterscheidung von PV und Solarthermie
Abbildung 25: PV-Anlage
Abbildung 26: Solarthermieanlage
Abbildung 27: Prinzip zur Klassifizierung von Solarthermie und PV
Abbildung 28: Darstellung der Ein -und Ausgabewerte des Prototyps
Abbildung 29: Hist. zur Verteilung des Eignungswerts über den Testdatensatz
Abbildung 30: Machine-Learning-Workflow
Abbildung 31: Gelabelte Trainingsbilder zur Semantischen Segmentierung
Abbildung 32: Prinzip zur Partitionierung der Datensätze 5
Abbildung 33: Data Augmentation über horizontale Reflexion
Abbildung 34: Data Augmentation über horizontale Verschiebung und Rotation
Abbildung 35: Trainingsverläufe zur Semantischen Segmentierung der Dächer
Abbildung 36: Trainingsverläufe zur Sem. Segmentierung der Solarmodule
Abbildung 37: Trainingsverläufe zur Solarmodul-Prüfung mit Transfer Learning
Abbildung 38: Trainingsverläufe zur Solarmodul-Prüfung mit From-Scratch-Ansatz
Abbildung 39: Trainingsverläufe zur Dachform-Klassifikation
Abbildung 40: Trainingsverläufe zur Azimut-Klassifizierung
Abbildung 41: Trainingsverläufe zur Klassifizierung von PV und Solarthermie
Abbildung 42: Prinzip zur Anbindung lokaler Testbilder
Abbildung 43: Prinzip zur Anbindung der Google Maps API
Abbildung 44: Screenshot des LUBW-Energieatlas zum PV-Potenzial der Stadt.
Abbildung 45: Hist. zur Verteilung der Eignungsklassen über die LUBW-Mess
Abbildung 46: Hist. zur Verteilung des PV-Potenzial über die LUBW-Messungen und der Eignungsklasse
Abbildung 47: Verteilung der Eignungsklasse
Abbildung 48: Verteilung der Dachform
Abbildung 49: Verteilung des Solaranlage
Abbildung 50: Verteilung der Dachausrichtung
Abbildung 51: Histogramm zur Verteilung der möglichen elektrischen Leistung in kWp über die Prototyp-Vorhersagen und die Eignungsklasse
Abbildung 52: Histogramm zur Verteilung der momentanen elektrischen Leistung in kWp über die Prototyp-Vorhersagen
Abbildung 53: Histogramm zur Verteilung des Eignungswerts und der Eignungsklasse über die Prototyp-Vorhersagen
Abbildung 54: Vorhersage des Testbilds ID-2
Abbildung 55: Vorhersage des Testbilds ID-10 (eigene Darstellung)
Abbildung 56: Vorhersage des Testbilds ID-16 (eigene Darstellung)
Abbildung 57: Vorhersage des Testbilds ID-31 (eigene Darstellung)
Abbildung 58: Vorhersage des Testbilds ID-32 (eigene Darstellung)
Abbildung 59: Vorhersage des Testbilds ID-34 (eigene Darstellung)
Abbildung 60: Vorhersage des Testbilds ID-69 (eigene Darstellung)
Abbildung 61: Vorhersage des Testbilds ID-77 (eigene Darstellung)
Abbildung 62: Vorhersage des Testbilds ID-104 (eigene Darstellung)
Abbildung 63: Vorhersage des Testbilds ID-144 (eigene Darstellung)
Abbildung 64: Vorhersage des Testbilds ID-319 (eigene Darstellung)
Abbildung 65: Vorhersage des Testbilds ID-849 (eigene Darstellung)
Abbildung 66: Vorhersage des Testbilds ID-11313
Abbildung 67: Vorhersage des Testbilds ID-18210 (eigene Darstellung)
Abbildung 68: Vorhersage des Testbilds ID-21014 (eigene Darstellung)
Abbildung 69: Übersicht des Stromverbrauchs nach Haushaltsgröße in LE
Abbildung 70: Vergrößerter Ist-Prozess
Abbildung 71: Vergrößerter Soll-Prozess
1. Einleitung
1.1 Motivation
Erneuerbare Energien gehören zunehmend zu den essenziellen Stromquellen in Deutschland und gelten als zentrale Säule der Energiewende. Nach den Zahlen des Energy Charts wächst der Anteil der erneuerbaren Energien am Stromverbrauch konstant. Während es im Jahre 2010 noch rund 19 Prozent waren, waren es zehn Jahre später das erste Mal über 50 Prozent.1 Bis zum Jahr 2050 sollen mindestens 80 Prozent des in Deutschland verbrauchten Stroms aus erneuerbaren Energien stammen, heißt es im Erneuerbare-Energien-Gesetz.2
Einen bedeutsamen Beitrag hierzu leisten Photovoltaik-Anlagen. Die Nettostromerzeugung durch PV erhöht sich jährlich und lag 2020 bei 51,42 Terawattstunden, was einen Anteil der gesamten Stromerzeugung von 10,5 Prozent ausmacht.3 Die Bundesregierung plant deshalb mit einem massiven Ausbau von PV- Anlagen in Deutschland. Um das Ziel der Energiewende zu erreichen und den gesamten Energiebedarf weitestgehend aus Erneuerbaren Energien zu decken, rückt dieser Plan noch stärker in den Fokus.4 Ein Beispiel ist eine Rechtsverordnung in Hamburg, die eine PV-Pflicht ab 2023 beinhaltet.5 Zudem sind innovative PV- Technologien ein weltweiter Treiber für PV. Eine nennenswerte Innovation ist das Diamantdrahtsägen, das zu Materialeinsparungen bei der Siliziumwaferproduktion führt.6
Um sicherzustellen, dass zukünftige urbane Entwicklungen mit den nachhaltigen Zielen übereinstimmen, ist es notwendig, die Stromnetzmodelle zu verbessern. Darüber hinaus ist die Abschätzung des PV-Potenzials eine bedeutsame Grundlage für die Planung von Energieversorgern und der Energiemarktpolitik städtischer Behörden. Diese Abschätzung ermöglicht es zum Beispiel zukunftsfähige Lösungen autarker Städte zu schaffen. Um derartige Analysen zur Beurteilung des PV-Potenzials von Städten auf Abruf und mit aktuellen Daten durchzuführen, bieten mehrere Verfahren des Deep Learning die Lösung. Die Datenbasis bilden frei verfügbare Fernerkundungsbilder. Insbesondere erweist sich die Semantische Segmentierung als essenzieller Baustein und genau hier setzt diese Arbeit an.
1.2 Ziele und Umfang
Diese Arbeit beinhaltet gestaltungsorientierte Forschung, um den Prototyp an einem neuen Anwendungsfall zu messen. Dementsprechend wirken sich Ansätze aus vorhandenen Arbeiten auf die Gestaltung des Prototyps aus. Die Kerntechnologien des Prototyps sind tiefe neuronale Netze zur Semantischen Segmentierung und Klassifizierung von künstlichen Strukturen in Fernerkundungsbildern. In diesem Zusammenhang werden neue Implementierungsarchitekturen behandelt, die auf die effektive Umsetzung des Prototyps abzielen. Daraus resultiert eine Modell-Pipeline mit mehreren Verarbeitungs- und Analyseschritten, die den möglichen Energieertrag (PV- Potenzial) und die Eignung für PV einzelner Dächer und ganzen Städten vorhersagt. Eine Analyse des Potenzials zukünftig möglicher und gegenwärtiger PV-Anlagen für jedes Gebäude deutscher Städte wäre damit unter der Voraussetzung ausreichender Rechenressourcen und Luftbilder umsetzbar.
Die Pilotierung des Prototyps testet den entwickelten Prototyp experimentell. Die Ergebnisse der Pilotierung verkörpern Vorhersagen des konkreten Anwendungsfalls der Stadt Echterdingen. Zur Evaluierung der Ergebnisse bietet sich ein Vergleich mit den Daten der Landesanstalt für Umwelt Baden-Württemberg (LUBW) an.7 Der LUBW- Energieatlas enthält Daten zur verfügbaren PV-Fläche einzelner Dächer, die auf Laserscandaten basieren. Das Ziel der Überlegungen und Analysen in dieser Arbeit stellen drei Forschungsfragen dar, die in Kapitel 5 beantwortet werden.
1. Wie lassen sich innovative Ansätze des Maschinellen Lernens gestalten und kombinieren, um möglichst effektiv das PV-Potenzial von Städten anhand von Fernerkundungsbildern zu analysieren?
2. Liefert der Einsatz von Maschinellem Lernen im Vergleich zu klassischen Laserscanmethoden ähnlich aussagekräftige Ergebnisse und einen Mehrwert für die Analyse des PV-Potenzials?
3. Welche ökonomischen Möglichkeiten bieten die erzielten Ergebnisse aus Unternehmenssicht bezogen auf den Anwendungsfalls Echterdingen?
1.3 Umriss dieser Arbeit
Das Projekt gliedert sich in drei aufeinanderfolgende Phasen auf:
- Verwandte Themen und Wissenschaftlicher Hintergrund
Kapitel 2 gibt einen Überblick über den Stand der Technik der Convolutional Neural Networks und der Semantischen Segmentierung von Fernerkundungsbildern. Zunächst wird das Feld des Deep Learning in die Künstliche Intelligenz (KI) eingeordnet und die in diesem Projekt umgesetzten Lösungen erklärt. Der zentrale Teil ist die Darstellung der vorhandenen Lösungen, die in dieser Arbeit zu einem gewissen Punkt berücksichtigt sind.
- Prototyp
Kapitel 3 und 4 taucht in die Umsetzung des Prototyps ein, und veranschaulicht dem Leser die Prinzipien und Ideen dahinter. Eingangs werden die Anforderungen an den Prototypen unter Berücksichtigung von Forschungsfragen definiert. Seitens dieser Anforderungen baut sich das Design des Prototyps auf. Hierbei wurde auf die einzelnen Komponenten, deren Architekturen und auf den Gesamtkontext des Systems eingegangen, um die definierten Ergebnisse zu erreichen. Im Anschluss orientiert sich die Implementierung des Prototyps an dem grundlegenden Machine Learning Prozess. Dazu gehört die Datengenerierung, die Datenaufbereitung, das Modelltraining und das Deployment des Systems.
- Evaluation
Kapitel 5 stellt die in dieser Masterarbeit gewonnenen Ergebnisse vor und beschreibt die Evaluierung der Pilotierung. Am Anwendungsfall Echterdingen sagt der Prototyp das PV-Potenzial vorher, was zu einem Vergleich der Ergebnisse mit den Laserscanmessungen der LUBW führt. Des Weiteren werden in mehreren Stichproben einzelne Dächer über den Prototyp analysiert. Anschließend dient der Vergleich der Prototyp-Vorhersage zum Zielwert der Laserscanmessung zur Bewertung der Ergebnisse in einer Fehleranalyse. Schließlich wird der Einsatz des Prototyps in einer betriebswirtschaftlichen Integration näher beleuchtet und die Forschungsfragen beantwortet.
2. Verwandte Themen und wissenschaftlicher Hintergrund
Dieses Kapitel erläutert die theoretischen Ansätze, die konkret zum Verständnis des Prototyps relevant sind, und die vorhandenen Lösungen zur Entwicklung des Prototyps.
2.1 Abgrenzung Künstliche Intelligenz
2.1.1 Künstliche Intelligenz
Eine einheitliche und präzise Definition des Begriffs Künstliche Intelligenz existiert in der Literatur nicht. Dies liegt an der Vielfalt verschiedener Technologien und Verfahren, mit denen sich der Begriff verbinden lässt. Allein der Begriff „Intelligenz“ ist in verschiedenen Wissenschaften unterschiedlich interpretiert.8 In dieser Arbeit beschreibt die Definition einer hochrangigen Expertengruppe der europäischen Kommission aus dem Jahr 2018 die KI als „Systeme mit einem , intelligenten1 Verhalten, die ihre Umgebung analysieren und mit einem gewissen Grad an Autonomie handeln, um bestimmte Ziele zu erreichen“9.
Zur genaueren Abgrenzung liegt heute eine Unterscheidung zwischen schwacher und starker KI vor. Während die schwache KI die Intelligenz simuliert, ist die starke KI intelligent. Der grundlegende Kontrast zwischen einer schwachen und starken KI besteht darin, dass die starke KI dem Menschen mindestens gleichkommt oder überlegen ist. Auch eine schwache KI kann dem Menschen in einer spezifischen Aufgabe überlegen sein, was sie allerdings noch nicht zu einer starken KI macht. Eine starke KI zeichnet sich deshalb durch zusätzliche Fähigkeiten aus, wie logisches Denken oder Treffen von Entscheidungen bei Unsicherheit.10 Als Teilgebiete der KI sind die Begriffe des Machine Learning11 und Deep Learning12 anzuführen.
2.1.2 Maschine Learning
Beim Maschinellen Lernen versuchen die Entwickler, dem Computer beizubringen, verschiedene Situationen selbständig zu lernen. In mehreren Trainingsläufen wird der Algorithmus mit Beispieldaten gefüttert, damit er später auch unbekannte Daten fehlerfrei klassifizieren kann.13
Die Anwendungen des Machine Learning gliedern sich in drei verschiedene Lernaufgaben: Supervised Learning, Unsupervised Learning und Reinforcement Learning. Beim Supervised Learning14 enthalten die Trainingsdaten bereits die gewünschte Lösung in Form eines Labels.15 Dieses Verfahren kommt in der vorliegenden Arbeit zum Einsatz.
2.1.3 Deep Learning
Deep Learning nutzt künstliche neuronale Netze,um einen effektiveren Lernfortschritt zu erreichen, als dies beim Machine Learning der Fall ist. Deep Learning basiert auf dem Ansatz des ML und ist eine weitere spezielle Lernmethode. Im Gegensatz zum Maschinellen Lernen unterteilt Deep Learning den Lernprozess in eine beliebige AnzahlvongeordnetenEbenen.16
2.2 Künstliche neuronale Netze
Künstliche neuronale Netze bestehen aus einer Eingabeschicht, versteckten Schichten und einer Ausgabeschicht. In einem neuronalen Netz ist eine einzelne versteckte Schicht mit einer endlichen Anzahl von Neuronen in der Lage jede kontinuierliche Funktion mit beliebiger Genauigkeit zu approximieren, was Cybenko (1989)mit dem Cybenkos-Theorem bewiesen hat.17
Abbildungen vom Redaktionsteam aus urheberrechtlichen Gründen entfernt.
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 1: Gesichtserkennung mit Deep Learning18
Der Aufbau eines neuronalen Netzes ähnelt einem hierarchischen Schichtenmodell, dessen Abstraktionsgrad für höhere Ebenen zunimmt. Auch die Komplexität nimmt pro Schicht zu. Höhere Schichten bauen auf den Grundkonzepten der unteren Schichten auf und machen die genaue Bedeutung der Dateneingaben in den komplexeren Schichten explizit. Dieses Prinzip ist inAbbildung 1dargestellt, wobei es sichum eine Abstraktion bei der Gesichtserkennung handelt.19
2.3 Convolutional Neural Networks (CNN)
Ein CNNist ein besondererTyp eines künstlichen neuronalen Netzes zur Verarbeitung von Daten. Aufgrund des Wachstums derRechenkapazität, der Menge an verfügbaren Trainingsdaten, und effizienterNetzwerksarchitekturen in den letzten Jahrenhabenes die CNNs geschafft, übermenschliche Leistungen bei komplexen visuellen Aufgaben zu erzielen.20
Im Unterschied zu gewöhnlichen neuronalen Netzen berücksichtigen CNNs die Nachbarschaft der Eingabedaten. Bei gewöhnlichen neuronalen Netzen folgt vor der Einspeisung in das Netzwerk, eine Konvertierung der Eingabedaten in ein eindimensionales Array. Bei Bilddaten funktioniert dieses Prinzip eingeschränkt, da Bilder in ihrer räumlichen Pixelanordnung Informationen enthalten.21 Bei regulären neuronalen Netzwerken zur Bildverarbeitung, kommt es deshalb zu einer Überanpassung22, weildie Anzahlder Neuronen zu groß ist.23
An dieser Stelle kommen CNNs ins Spiel, indem sie die große Eingabe der zweidimensionalen Gitterstruktur von Bildern ermöglichen. CNNs sind dem gewöhnlichen neuronalen Netzwerk insofern ähnlich, als dass sie ebenfalls Neuronen enthalten, die über Gewichtsverbindungen ein Netzwerk bilden. Die Neuronen innerhalb einer Schicht sind allerdings nicht miteinander verbunden. Sie sind nur mit den Neuronen in den benachbarten Schichten verbunden. Das Ziel des Netzes ist es, aus den rohen Bilddaten eine korrekte Klassifizierung in der Ausgabeschicht zu erlangen. CNNs gehen davon aus, dass Bilder an der Eingabeverarbeitung beteiligt sind. Dieser Mechanismus extrahiert diebildspezifischen Merkmale, was die Effizienz der CNNs bei der Verarbeitung von Bildern erhöht.24
2.3.1 Architektur
Das CNN wandelt die Bilder als Volumenmit den Dimensionen Höhe, Tiefe und Breite um.Die Tiefeistder Kanal(rot, blau und grün)eines Bildes.Die Neuronen eines CNNs berücksichtigen bei der Verarbeitung die Struktur der Bilder und ordnen sich daher volumetrisch an.25 26 Abbildung 2 zeigt, dass jede der CNN-Schichten das Eingabevolumen in ein Ausgabevolumen transformiert.
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 2: Transformation des Bildvolumens über die CNN-Ebenen26
LeCun et al. (1998) setzten einen Meilenstein in der Forschung der CNNs. Mit der Einführung der LeNet-5-Architektur, die zur Erkennung handgeschriebener Zahlen eingesetzt wird, erwähnten sie auch zwei essenzielle Bausteine von CNNs: Convolution-Schicht und Pooling-Schicht.27
Convolution-Schicht
CNNs beinhalten die lineare Rechenoperation der Convolution28 anstelle der bei neuronalen Netzen herkömmlichen Matrixmultiplikation in mindestens einer Schicht.29 In der Faltungsschicht sind die Neuronen nicht mit jedem Pixel des Eingabebildes verbunden, sondern nur mit Pixeln in ihrem rezeptiven Feld, das der Bereich im Eingaberaum zur Betrachtung eines bestimmten CNN-Merkmals ist. Umgekehrt ist jedes Neuron in der zweiten Faltungsschicht nur mit Neuronen verbunden, die sich innerhalb eines kleinen Würfels in der ersten Schicht befinden. Auf diese Weise konzentriert sich das Netzwerk auf Low-Level-Merkmale, und führt diese in den nächsten Schichten zu High-Level-Merkmalen zusammen.30
Bei der Eingabe von Bilddaten gibt es einen Kernel, der das Bild faltet. Kernel sind kleine Matrizen, die Filterfunktionen verkörpern. Meistens bestehen diese Funktionen aus zwei bis fünf Elementen pro Dimension und dem Wert null für die restlichen Elemente. Bei Bilddaten ist die Anzahl der Kanäle des Bildes gleich dem Kernel. Die Faltungsoperation schiebt den Kernel K elementweise über das Eingangsbild I und berechnet an jeder Position i,j das elementweise Produkt.31
Die Formel (1)32 33 gibt die mathematische Definition der Faltung bei der Eingabe eines zweidimensionalen Bildes I an.
Abbildung in dieser Leseprobe nicht enthalten
Die Faltungsoperation intensiviert zentrale Elemente, wie Linien und Kanten, und ignoriert andere Elemente, die z.B. unscharf sind. Daraus ergibt sich ein zum Eingabebild ähnliches Ausgabebild.34 35
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 3: Faltungsoperation zur Transformation eines zweidimensionalen Bildes35
Abbildung 3 veranschaulicht die Faltung eines zweidimensionalen Bildes. Das Mittelelement des Kernels positioniert sich über dem Eingangspixel. Eine gewichtete Summe aus dem Eingangspixel und seinen Nachbarpixeln ersetzt dann das Eingangspixel.36
Der Kernel spezifiziert zwei zusätzliche Elemente, Stride und Padding. Um die gleichen lateralen Größen der Ebenen zu gewährleisten, wird die Bildeingabe aufgefüllt und zusätzliche Werte um den Bildrand herum eingefügt. Das Auffüllen erfolgt meist mit dem konstanten Wert Null.37 Der Abstand zwischen aufeinanderfolgenden Rezeptivfeldern ist als Stride definiert. Dadurch besteht die Möglichkeit den Kernel mit einem bestimmten Abstand über den Eingang zu schieben und große Eingabeschichten mit kleineren Schichten zu verbinden. Ein Stride von zwei halbiert demnach die Ausgabegröße.38
Pooling-Schicht
Pooling-Schichten befinden sich zwischen den Faltungsschichten und reduzieren die Bildgröße über mehrere Schichten, was zu einer Struktur mit kleineren Abmessungen führt. Dieser Vorgang ist benannt als Sampling. Das Max-Pooling wählt für das Fenster den Maximalwert und das Pooling den Mittelwert.39 Das Pooling hilft einerseits, ein Overfitting durch Regularisierungsmechanismen zu verhindern40 und andererseits nur die markanten Teile bei Fortschritten im Netzwerk beizubehalten.41
Aktivierungsfunktionen
Aktivierungsfunktionen geben an, wie das Feuern bestimmter Neuronen modelliert ist. Ohne die Nichtlinearität könnte das Netzwerk nur lineare Regressionen ausführen. Die Ausgabe der Faltungsschichten ist die Eingabe für die Aktivierungsfunktion auf jeder Ebene. Neben einer Vielzahl anderer Aktivierungsfunktionen, wie Tanh oder Sigmoid haben sich nichtlineare ReLU-Einheiten für die Zwischenschichten als effektiv erwiesen. CNNs mit ReLUs trainieren daher um ein Vielfaches schneller als ihre Äquivalente mit Tanh-Funktion.42 Die gängigsten Aktivierungsfunktion sind im Folgenden beschrieben.
Die nicht sättigende Nichtlinearität der ReLU -Funktion (siehe Abbildung 4 und Formel (2)43 ) ordnet negativen Eingängen den Wert Null zu und leitet alle positiven Eingänge weiter.
Abbildung in dieser Leseprobe nicht enthalten
Die Sigmoid -Aktivierung (siehe Abbildung 4 und Formel (3)44 ) hingegen ist zwischen null und eins begrenzt, weshalb sie beliebige Werte auf dieses Intervall abbildet.45
Abbildung in dieser Leseprobe nicht enthalten
Die Softmax -Aktivierung verallgemeinert die Sigmoid-Funktion und schwächt die Werte des Eingangsvektors ab, indem sie die Ausgabesumme zu eins konvertiert. Die Softmax-Funktion (4)46 ist deshalb besonders für kategoriale Klassifizierungsaufgaben geeignet.47 48
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 4: Aktivierungsfunktionen48
Finale Architektur
Die allgemeine CNN-Architektur besteht aus einer Reihe von mehreren Faltungsschichten, gefolgt von einer Pooling-Schicht. Innerhalb der Entwicklung verkleinert sich das Eingabebild und das Netzwerk vertieft sich durch die Faltungen. Sobald vorangehende Schichten die Merkmale auf höheren Ebenen erkennen, folgt am Ende des Netzes ein reguläres vorwärtsgerichtetes neuronales Netz, das aus vollständig verbundenen Schichten besteht. Die letzte Ebene gibt dann die Vorhersage aus, wie zum Beispiel über eine Softmax-Funktion, die die Klassenwahrscheinlichkeit angibt.49
2.3.2 Training
Um die Kernel-Parameter und Trainingsgewichte des Netzwerks anzupassen, gibt es den Backpropagation-Algorithmus. Backpropagation ist eine effiziente Methode zur Berechnung von Gradienten und zur Fehlerminimierung. Dabei wird eine gradientenbasierte Optimierung der Netzgewichte durchgeführt.50 Die Lösung des Optimierungsproblems stellt die Minimierung der Verlustfunktion dar. In jeder Trainingsiteration bestimmt der Algorithmus eine Kombination von Gewichten, indem er die Gradienten der Verlustfunktion ermittelt. Die Anfangsgewichte eines untrainierten CNNs sind zufällig gewählt. Der Trainingsdatensatz aus Bildern und gewünschten Ausgaben (Labels) dient zur Anpassung der Gewichte. Dabei minimiert der Algorithmus die Differenz zwischen der gewünschten Ausgabe und der Netzwerkausgabe.51 Backpropagation ist folglich eine praktische Anwendung der Kettenregel für Ableitungen. Die Ableitung (der Gradient) der Zielfunktion in Bezug auf die Eingabe eines Moduls leitet sich her, indem der Algorithmus eine Rückwärtsrechnung vom Gradienten in Bezug auf die Ausgabe dieses Moduls durchführt.52
Die Berechnung der Gewichte unterteilt sich in einen Vorwärtsdurchlauf und Rückwärtsdurchlauf. Bei der Vorwärtspropagation werden die Eingangswerte in das Netz eingespeist und vorwärts durch das Netz propagiert. Dies erzeugt ein Fehler als Ausgabe. Die Gradienten werden in Bezug auf die Neuronen und die Gewichte bis zur ersten Faltungsschicht rückwärts propagiert. Basierend auf den Trainingsdaten aktualisiert der Algorithmus die Gewichte.53
2.3.3 Bewertungsmetriken
Es gibt Metriken und Verlustfunktionen, um die Leistung des Netzwerks und die Entwicklung eines trainierten Modells zu bewerten.
Verlustfunktionen
Das Ziel ist es, ein Modell zu trainieren, das eine hohe Wahrscheinlichkeit für die richtige Klasse ausgibt. Die Verlustfunktion ist eine Funktion, die den Abstand vom geschätzten Wert des Modells zum realen Erwartungswert misst. Wie bereits im Kapitel 2.3.2 gezeigt, besteht das Ziel der Modelle die differenzierbare Fehlerfunktion zu minimieren.54 Die unterschiedliche Anpassung der Koeffizienten bei der Durchführung der Backpropagation beeinflusst eine unterschiedliche Modellleistung. Diese Arbeit setzt binäre und kategorische Kreuzentropie, sowie Intersection over Union (IoU) ein.
Die Minimierung der Kreuzentropie verbessert das Modell, indem sie das Modell bestraft, wenn eine geringe Wahrscheinlichkeit für die Zielklasse auftritt. Bei der Bildklassifikation dient die Kreuzentropie dazu, um zu messen, wie gut die Klassenvorhersagen mit der Zielklasse übereinstimmen.55
Abbildung in dieser Leseprobe nicht enthalten
Die Formel (5)56 zeigt die Kreuzentropie bei der gleich eins ist, falls die Zielklasse für die i-Instanz k ist, sonst ist es gleich null. Existieren nur zwei Klassen, liegt eine binäre Kreuzentropie vor, die äquivalent zur Logistik-Regression-Kostenfunktion ist.57 Bei der binären Kreuzentropie gibt eine Sigmoid-Aktivierung die Wahrscheinlichkeit des Auftretens oder Nichtauftretens einer Klasse aus.58 Wenn mehr als zwei Klassen vorhanden sind, ergibt sich die kategorische Kreuzentropie. Im Umkehrschluss wird hierbei auf eine Softmax-Aktivierung zurückgegriffen, um eine Ausgabe der Wahrscheinlichkeit für jede mögliche Klasse basierend auf einer einzigen Eingabe zu erhalten.59 Ein Vorteil der Kreuzentropie ist, dass sie sich auf schlechte Vorhersagen konzentriert, diese stärker bestraft und größere Gradienten für eine schnellere Konvergenz erzeugt.60
Zum Training tiefer neuronaler Netze für binäre Segmentierungsaufgaben dient der IoU-Verlust (Jaccard-Verlust), der eine Optimierung der differenzierbaren Approximation von IoU ist. Im Vergleich zum binären Kreuzentropie-Verlust ist die Trainingsleistung bei IoU deutlich höher.61
Die Modifikation von IoU erfolgt in mehreren Transformationsschritten. Die ursprüngliche Gleichung von loU stellt die Formel (6)62 dar.
Abbildung in dieser Leseprobe nicht enthalten
Der loU -Wert ergibt sich aus dem Durchschnitt der Gesamtmenge aller Pixel und liegt zwischen null und eins. Die Mengensymbole sind allerdings nicht differenzierbar.63 Um die Mengen anzuwenden und eine Differenzierbarkeit zu erreichen, müssen die Zahlen in T und p absolute Einsen und Nullen sein. Für T ist dies gegeben. Jedoch enthält p aufgrund einer Sigmoid-Aktivierung Werte zwischen null und eins. Um dies zu lösen, wird eine Approximation von loU über Wahrscheinlichkeiten vorgenommen.64 Daraus resultiert IoU' in Formel (7)65.
Abbildung in dieser Leseprobe nicht enthalten
Eine Annäherung an die Schnittmenge im Zähler und eine Addition von T und p mit einer Subtraktion der Schnittmenge reduziert IoU auf arithmetische Operationen, und IoU' ist differenzierbar. Mit dem Ziel der Verlustfunktion,66 den Fehler gegen null laufen zu lassen, ist die Verlustfunktion in Bezug auf IoU' in Formel (8)67 definiert.
Abbildung in dieser Leseprobe nicht enthalten
Eine Minimierung der Verlustfunktion LIoU tritt ein, indem sie differenziert wird. Während des Trainings bildet der Backpropagation-Algorithmus demnach die Ableitung .68
Metriken
Metriken messen die Leistung des Klassifikators nach dem Training. Hierbei tritt ein Vergleich jeder Klasse mit jeder anderen Klasse ein, sodass die Anzahl falsch klassifizierter Proben ersichtlich ist. Daraus lassen sich verschiedene Kombinationen ableiten.69 Dazu gehören auch die Accuracy und das IoU-Maß. Die Accuracy berechnet entweder den Anteil oder die Anzahl der korrekten Vorhersagen für ein Modell.70 Im Fall der Semantischer Segmentierung berechnet es den Anteil der korrekt klassifizierten Pixel. Das IoU-Maß findet speziell bei Anwendungsfällen zur Semantischen Segmentierung Verwendung. Es gibt die Ähnlichkeit zwischen der vorhergesagten Region und der tatsächlichen Region für ein Objekt im Bild an und ist definiert als die Größe der Schnittmenge geteilt durch die Vereinigung der beiden Regionen (siehe Formel (6)). Dies wirkt dem Problem des Klassenungleichgewichts entgegen. Wenn beispielsweise der Algorithmus jedes Pixel eines Bildes als Hintergrund klassifiziert, kann die Accuracy bei 99% sein, obwohl es eine schlechte Vorhersage gibt. Das IoU-Maß bestraft die schlechte Vorhersage dahingehend, dass die Schnittmenge zwischen der vorhergesagten und der tatsächlichen Region einen IoU-Wert von null ergeben würde.71
2.3.4 Optimierungslösungen
Im Zuge der Entwicklung eines Deep Learning-Modells kristallisieren sich verschiedene Methoden zur Optimierung heraus. Fokussiert auf Computer-VisionProbleme erweisen sich die folgenden Lösungen als geeignet.
Hyperparameter
Ein wesentlicher Bestandteil der Entwicklung einer CNN-Architektur ist die Auswahl von Hyperparametern. Ein Hyperparameter ist eine Variable eines Lernalgorithmus, die vor dem Training festgelegt wurde und während des Trainings konstant bleibt.72 Die Auswahl dieser Werte lässt sich einerseits manuell und andererseits automatisch über Suchalgorithmen wie GridSearch73 oder Hyperparameteroptimierung mit Bayes'sche Optimierung74 umsetzen.
Transfer Learning
Das Problem, dass das Trainieren eines Modells mit anfänglich zufälligen Gewichten zeitaufwändig ist und eine Vielzahl von Daten erfordert, löst der Transfer Learning- Ansatz. Transfer-Lernen ist als Prozess des Lernens von einem vorher trainierten Modell, das auf einem größeren Datensatz trainiert wurde, definiert.75 Die Initialisierung der Gewichte vergibt das zuvor trainiertes Modell, was zu einer schnelleren Konvergenz und besseren Leistung des Ergebnisses führt. Um dies zu erreichen, gibt es die Option, die einzelnen Schichten des vortrainierten Modells ohne Änderung zu implementieren oder auf dieser Basis weiter zu trainieren. Ein Beispiel für ein derartiges Modell aus dieser Arbeit ist das VGG-Netz.76
Dropout
Beim Training neuronaler Netze kann das Problem der Überanpassung auftreten. Tiefe neuronale Netze sind komplexe Modelle mit einer Vielzahl von zu trainierenden Gewichten. Bei einer zu geringen Anzahl an Trainingsbeispielen sind diese Gewichte das Ergebnis von Stichprobenrauschen. Dies führt dazu, dass der Algorithmus zufällige Eigenschaften des Trainingsdatensatzes erlernt, die sich nicht in den Testdaten wiederfinden. Somit verallgemeinert das Modell nicht auf die Testdaten. Eine Lösung hierfür bietet neben der Regularisierung die Dropout-Methode.77 78
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 5: Dropout - Vermeidung von Overfitting78
Der Dropout-Algorithmus entfernt die Knoten mit ihren Verbindungen zufällig aus dem neuronalen Netz, wie auf Abbildung 5 zu erkennen. In der konkreten Umsetzung behält der Algorithmus jede Einheit beim Training mit einer konstanten Wahrscheinlichkeit, z.B. 50 %, bei. Da Dropout zur Testzeit nicht aktiviert ist, verringert sich der Leistungsunterschied zwischen Trainings- und Testdaten. Die Anpassung der Gewichte ist folglich nur während des Trainings begrenzt.79
2.3.5 Spezielle CNN-Architekturen
Neben der allgemeinen CNN-Architektur gibt es weitere Variationen, die auf spezielle Anwendungsfälle ausgerichtet sind. Diese Arbeit verwendet das VGG- und das Xception-Netzwerk, die hier kurz beschrieben sind.
VGG-Netz
Das VGG-Netz wurde 2014 im Rahmen der ImageNet Challenge entwickelt und ist ein tiefes Faltungsnetzwerk, das eine hohe Genauigkeit bei groß angelegten Bilderkennungen hat. Gegenüber herkömmlichen CNN-Konfigurationen ist die Tiefe des Netzwerks auf 16 bis 19 gewichtete Schichten erhöht. Dies funktioniert durch kleine 3*3-Faltungsfilter in allen Schichten. Simonyan & Zisserman (2014) zeigen anhand des VGGs, dass die Repräsentationstiefe einen positiven Effekt auf die Klassifikationsgenauigkeit hat.80 81 Abbildung 6 veranschaulicht die Architektur des VGG16 mit den namentlich beschriebenen 16 Gewichtsebenen.
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 6: Architektur des VGG1681
Xception-Netz
Das Alleinstellungsmerkmal des Xception ist ein Zwischenschritt zwischen der regulären Faltung und der tiefenweisen separierbaren Faltungsoperation. Es baut auf dem Inception-Modell auf, bei dem eine Faltung für einen Eingang aus drei verschiedenen Filtern und einem Max-Pooling besteht. Diese wird als Verkettung von Ausgaben an das nächste Inception-Modul gesendet. Beim Xception ersetzen tiefenweise separierbare Faltungen die Inception-Module. Auf diese Weise übertrifft das Xception von Chollet (2017) das frühere Inception-V3, als auch das VGG auf dem ImageNet-Datensatz. Der Grund dafür ist eine effizientere Nutzung der Modellparameter.82
2.4 Semantische Segmentierung
Dieses Unterkapitel beschreibt die Methode der Semantischen Segmentierung im Allgemeinen. Anschließend folgt die Erläuterung der Netzwerkarchitektur des U-Nets.
2.4.1 Hintergrund
Semantische Segmentierung ist definiert als der Prozess der Beschriftung von Bildern auf Pixelebene oder der Analyse aller Details eines Bildes auf Pixelebene.83 Die Segmentierung ist eine Erweiterung der Objekterkennung und findet als pixelweise Klassifikation vor allem bei der Analyse von Medizin- und Satelliten-Bildern ihre Anwendung. Im Vergleich dazu stellt die generelle Bildklassifikation die Aufgabe der Vorhersage von Labeln oder Kategorien dar. Darüber hinaus wird unter der Objekterkennung die Vorhersage einer Liste von mehreren Deep-Learning-basierten Algorithmen mit der dazugehörigen Bounding-Box verstanden.84
Abbildung 7 zeigt ein Bild mit der entsprechenden Semantischen Segmentierung. Anstatt dem gesamten Eingabebild ein Label zuzuweisen, erfolgt eine Zuweisung zu jedem Pixel. Dies zeigt, dass die Semantische Segmentierung sämtliche Pixel in einer Nachbarschaft, die als Bildregion um ein Pixel definiert ist, markiert.
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 7: Grundsätzliche FCN-Architektur zur Semantischen Segmentierung85
2.4.2 Encoder-Decoder-Architektur: U-Net
Die Architektur des herkömmlichen Fully-Convolutional-Netzwerks zur Semantischen Segmentierung verändert sich beim U-Net dahingehend, dass es mit einer geringen Anzahl an Trainingsbildern arbeitet und präzisere Segmentierungen liefert. Auf der Basis eines gewöhnlichen kontrahierenden Netzes ersetzen Upsampling-Operatoren die Pooling-Operatoren, wodurch eine Erhöhung der Auflösung der Ausgabe eintritt.86 87
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 8: U-Net Architektur87
Die Netzwerkarchitektur ist in Abbildung 8 dargestellt. Zu sehen ist sowohl ein kontrahierender Teil (Kodierung), als auch ein expansiver Teil (Dekodierung). Der kontrahierende Pfad stellt die grundlegende CNN-Architektur dar. Die Operationen bestehen aus der Abfolge von zwei 3x3-Faltungen, einer ReLU-Einheit und einer 2x2- Max-Pooling-Operation mit dem Stride-Wert von zwei. Bei jedem Schritt verdoppelt sich die Anzahl der Merkmalskanäle. Der Expansionsteils führt zunächst ein Upsampling der Feature-Map durch. Es folgt eine 2x2-Faltung zur Halbierung der Anzahl der Feature-Kanäle, eine Verkettung mit der Feature-Map aus dem Kontraktionspfad und zwei 3x3-Faltungen, jeweils mit einer ReLU-Operation.88
Zur korrekten Abbildung des Eingangsbildes besteht die letzte Schicht aus einer 1x1- Faltung. Auf diese Weise wird der Merkmalsvektor auf die gewünschte Anzahl von Klassen bezogen.89 Zusätzlich kennzeichnet das U-Net die weiterführenden Modifizierungen:
- Die Kombination von hochauflösenden Merkmalen aus dem kontrahierenden Pfad mit dem Upsampling-Ausgang führt zur Lokalisierung der Information.90
- Eine große Anzahl an Merkmalskanälen im Upsampling-Teil gibt die Kontextinformation an Schichten mit höherer Auflösung weiter. Dadurch ergibt sich die U-Form des Modells.91
- Die Schichten sind nicht vollständig verbunden und verarbeiten nur den gültigen Teil jeder Faltung, d.h. nur den vollständigen Kontext im Eingabebild.92
- Die Überlappungs-Kachel-Strategie ermöglicht eine nahtlose Segmentierung von beliebig großen Bildern. Ansonsten wäre die Auflösung durch den GPU- Speicher begrenzt.93 94
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 9: Überlappungs-Kachel-Strategie94
Abbildung 9 zeigt ein Beispiel der Überlappungs-Kachel-Strategie. Die Vorhersage einer Segmentierungsmaske (gelbe Box) benötigt die Bilddaten der blauen Box. Eine Spiegelung extrapoliert die fehlenden Daten.95
2.5 Daten zur Analyse des PV-Potenzials
Um eine automatische Bewertung von Dächern für PV-Anlagen in großen Stadtgebieten durchzuführen, existieren bereits mehrere Lösungen, die als Bezugspunkt für diese Arbeit dienen. Dieses Kapitel erläutert die Möglichkeiten der Fernerkundung als Datenlieferant und betrachtet die vorhandenen Datensätze. Darüber hinaus wird der Stand der Technik zur Analyse des PV-Potenzials von Dächern und Städten dargestellt.
2.5.1 Fernerkundung
Die Fernerkundung ist eine Methode zur Gewinnung von Informationen über ein Objekt auf der Erdoberfläche ohne direkten physischen Kontakt mit der Erde. Darüber hinaus ergibt sich durch die automatische Erkennung von Objekten eine Informationsquelle über die Lage verschiedener realer Objekte auf dem Terrain.96 Die Bilder in dieser Arbeit stammen aus zwei Quellen: Satellitendaten der Google Maps API und Flugzeugdaten, insbesondere Laserscandaten des LUBW (2020). Diese unterscheiden sich in unterschiedlichen Gesichtspunkten, wie zum Beispiel der Auflösung.
Satelliten-Fernerkundung
Die Verbreitung der Satellitentechnologie ist weltweit ungleichmäßig. Laut Kansakar & Hossain (2016) waren im Jahr 2015 nur 74 Länder am Satelliteneinsatz beteiligt. Auch Deutschland gehört zu den Ländern, die Satelliten zur Erderkundung einsetzen. Das Fernerkundungskamerasystem Landsat startete 1970 und gilt seit 2008 als frei zugängliches Satellitendatenarchiv zur weltweit größten Sammlung von Erdbildern.97 Um eine Aussage über die Qualität des gelieferten Bildes zu treffen, wird die räumliche Auflösung herangezogen, die in Metern pro Pixel angegeben ist.98
Flugzeug-Fernerkundung (LIDAR)
Die Methode der Fernerkundung per Flugzeug nutzt meist das Laserscanning mittels Laserdistanzmessung und Laserhöhenmessung. Die Laserscanner messen die Entfernung vom Laser zu einer Vielzahl von Zielpunkten in kurzer Zeit. Die Laserdistanzmessung wird auch als LIDAR (Light Detection And Ranging) bezeichnet. Die Hauptanwendung des Laserscannings ist die Erstellung von hochauflösenden digitalen Oberflächenmodellen und digitalen Geländereliefmodellen.99
In dieser Arbeit fungieren hauptsächlich die Flugzeugbilder des LUBW-Energieatlas100 zum Modelltraining, da sie eine höhere Auflösung als Satellitenbilder haben. Somit bieten die Daten einen hohen Detaillierungsgrad, was für den Anwendungsfall der PV- Analyse von Vorteil ist. Des Weiteren fungiert der Energieatlas als Quelle der Testbilder, die anhand der mitgelieferten Solarpotenziale als Vergleichswerte dienen (siehe Anhang 2). Ein Nachteil von LIDAR ist die Aktualisierung der Daten, die manchmal bis zu einem Jahrzehnt dauern kann. Vergleichsweise aktuell sind Satellitendaten, da Satelliten regelmäßig über einen Betrachtungspunkt fliegen. Da es sich bei dieser Arbeit um eine statische Analyse handelt und keine zeitliche Komponente enthalten ist, hat dieser Nachteil keine Auswirkungen auf den Untersuchungsgegenstand. Die Google-Maps-Schnittstelle nützt primär als Möglichkeit zur Ad-hoc-Analyse von Dächern über die Eingabe einer Adresse, was in Kapitel 4.6.2 beschrieben ist.
2.5.2 Datensätze
Im Folgenden werden zwei Ansätze zur Gewinnung von Datensätzen vorgestellt, die für die Implementierung des Prototyps getestet wurden. Kapitel 4.3 beinhaltet die Beschreibung der Daten im Detail.
Bestehende Datensätze
Eine naheliegende Variante ist der Bezug von bestehenden Datensätzen zur Semantischen Segmentierung von Dächern. Zum Teilziel, Dächer in Echterdingen zu segmentieren, testet diese Arbeit mehrere frei-verfügbare Datensätze.
Der SpaceNet -Datensatz besteht aus Satellitenbildern und den semantischen Beschriftungen als Gebäudegrundrisse. Verfügbar ist der Datensatz als öffentlicher AWS-Host.101 Im Zuge dieser Arbeit stellte sich heraus, dass die Spacenet-Daten ungeeignet sind. Die Gründe dafür sind einerseits die weite Zoomeinstellung, wodurch einzelne Dächer nur unscharf und mit Hilfe eines weiteren Bearbeitungsschrittes existieren. Andererseits umfasst der Datensatz Großstädte wie Paris und Las Vegas, deren Stadtbild nicht mit dem hier betrachteten Stadtbild von Echterdingen kompatibel ist.
Der Kaggle Wettbewerb Dstl Satellite Imagery Feature Detection zielt darauf ab, Objekte auf großen Satellitenbildern zu erkennen. Die Kaggle-Plattform stellt die Trainingsbilder zur Verfügung.102 Das Problem bei diesen Daten ist die ungleichmäßige Verteilung der Gebäudeobjekte, da einige Trainingsbilder keine Dächer enthalten. Außerdem liegt der Fokus hier auf der Objektvielfalt und nicht ausschließlich auf Gebäudedächern. Im Rahmen dieser Arbeit dienten diese Daten nicht dazu, ein leistungsfähiges Modell zu entwickeln.
Die Inria Aerial Image Labeling- Daten umfassen insgesamt 810 km2 an farbigen Luftbildern und binär segmentierte Gebäudemasken. Hierzu zählen verschiedene urbane Städte, wie z.B. San Francisco.103 In dieser Arbeit passen die Inria-Bilddaten nicht für den Anwendungsfall. Der Datensatz enthält zwar Bilder von Tirol, dessen Stadtbild, mit dem von Echterdingen vergleichbar ist, aber der Maßstab ist zu groß.
Manuelle Datengenerierung
Eine Möglichkeit, qualitative Trainingsdaten zu erzeugen, ist die manuelle Beschriftung von Bildern. Dies ist eine Alternative zu Open-Source-Datensätze, die qualitativ oder quantitativ für den Anwendungsfall unzureichend sind. Die übliche Vorgehensweise ist das Sammeln von Fernerkundungs-Rohbildern aus Quellen, wie der Google Maps API, OpenStreetMap oder Diensten, wie der LUBW-Kartendienst104 105. Anschließend unterstützt ein Beschriftungswerkzeug die Annotation der Bilder (siehe Abbildung 10). Im Vergleich zu Open-Source-Datensätzen ist der Aufwand höher und es sind im Durchschnitt weniger Trainingsdaten vorhanden.
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 10: Beispieldaten zur manuellen Datengenerierung105
2.6 Vorhandene Lösungen
Dieser Abschnitt gibt einen Überblick über die aktuelle Literatur, die sich mit der Analyse von Hausdächern und Photovoltaik auf Fernerkundungsdaten, sowie den bezüglichen Deep Learning-Lösungen befasst. Die Absätze gliedern sich in Überschriften, die den Nutzen der wissenschaftlichen Arbeiten für diese Arbeit in den Vordergrund stellen.
2.6.1 Ähnliche Aufgabenstellung
Bayrakci et al. (2015) stellen eine neue Methode zur Extraktion von Dachsegmenten und zur Lokalisierung geeigneter Flächen für PV-Anlagen anhand von LIDAR-Daten und Gebäudegrundrissen vor. Die Autoren gehen das Problem der korrekten Identifizierung von Dächern, die für Solarenergiesysteme geeignet sind, an. Es werden Dachsegmente auf der Basis von sieben Neigungs- und Aspektklassen, sowie sechs verschiedenen Gebäudetypen durch die automatische Generierung eines ArcGISModells im ModelBuilder erstellt. Ziel dieser Methode ist es, eine Analyse von Gebäudegrundrissen und geeigneten Dachsegmenten für PV-Anlagen am Anwendungsfall Philadelphia durchzuführen.106 Die Arbeit von Bayrakci et al. (2015) dient in der vorliegenden Masterarbeit insofern, als dass der Prototyp anhand einer städtischen Anwendung zu evaluieren ist.
Lee et al. (2019) beschreiben einen datengesteuerten Ansatz zur Bewertung des Solarpotenzials eines Daches namens DeepRoof. Unter Verwendung von Satellitenbildern aus der Google Maps API bestimmt DeepRoof die Geometrie des Daches und setzt öffentlich verfügbare Daten zur Sonneneinstrahlung ein, um eine pixelgenaue Schätzung des Solarpotenzials für jedes flächige Dachsegment zu liefern. Dementsprechend werden neben den reinen Gebäudeflächen auch Strukturen wie Bäume segmentiert, die einen Einfluss auf die solare Einstrahlung haben.107 Die Grundidee der Solarpotenzialanalyse in der vorliegenden Masterarbeit stammt aus der Forschung von Lee et al. (2019).
2.6.2 Auswahl von Komponenten
Saifi et al. (2020) untersuchten den Einsatz des Spacenet-Datensatzes und schlugen eine Implementierung eines automatischen Modells zur Extraktion semantischer Karten von Wasserwegen, Straßen und Gebäuden zur Verfolgung des
Städtewachstums vor. Um dies zu erreichen, führen die Autoren ein FCN zusammen mit einem U-Net zum Training der Satellitenbilder ein108 Für die vorliegende Masterarbeit ist die Betrachtung des Spacenet-Datensatzes relevant, der allerdings als untauglich für den Prototyp eingestuft wurde.
Sampath et al. (2019) zeigen, dass mit ihrem Deep-Learning-Ansatz eine sinnvolle Segmentierung auch auf niedrig-aufgelösten Satellitenbildern möglich ist. Zu diesem Zweck wurden drei verschiedene Modellarchitekturen (U-Net, SegNet, FCN) auf manuell gelabelten Daten trainiert und für die Aufgabe der semantischen Segmentierung von Satellitenbildern getestet. Die Autoren stellen dabei fest, dass das U-Net die besten Ergebnisse liefert.109 Als konzeptioneller Nachweis dient diese Arbeit zur Entscheidungsgrundlage für die Auswahl der Modellarchitektur in der Masterarbeit. Camilo et al. (2018) setzen das SegNet, ein tiefes Encoder-Decoder-Verfahren, zur semantischen Segmentierung von PV-Standorten in Luftbildern ein. Die Ergebnisse zeigen, dass eine Decoder-Encoder-Architektur, wie das SegNet-Modell, im Vergleich zu einem herkömmlichen CNN signifikante Leistungsverbesserungen in Bezug auf Form- und Größenschätzung liefert.110 Das Forschungsergebnis von Camilo et al. (2018) zum Einsatz einer Decoder-Encoder-Architektur grenzt den Entscheidungsrahmen für eine Modellarchitektur in der vorliegenden Masterarbeit ein. Somit setzt sich das U-Net-Verfahren in der vorliegenden Masterarbeit durch.
House et al. (2018) lösen das Problem von PV-Unternehmen, herauszufinden, welche Häuser bereits eine PV-Anlage installiert haben oder noch nicht über eine PV-Anlage verfügen. Hierzu trainieren die Autoren ein semantisches Segmentierungsnetzwerk (SegNet) auf Satellitenbilder. Nach der Identifizierung der Gebäude erfolgt eine Klassifizierung über ein CNN und den Transfer-Learning-Ansatz. Dabei geschieht eine Unterteilung der Dächer in zwei Kategorien, mit und ohne PV.111 In der vorliegenden Masterarbeit wurde der Transfer-Learning-Ansatz bei der Implementierung des Prototyps bewertet. Allerdings ist dadurch keine Leistungsverbesserung des Netzwerks im Vergleich zur Implementierung ohne vortrainierte Gewichte eingetreten.
[...]
1 Vgl. Energy-Charts (2021), URL siehe Literaturverzeichnis.
2 Vgl. EEG (2021), Teil 1 §1 (3).
3 Vgl. Energy-Charts (2020), URL siehe Literaturverzeichnis.
4 Vgl. Wirth (2020), S. 5.
5 Vgl. Enkhardt (2021), URL siehe Literaturverzeichnis.
6 Vgl. Bidiville et al. (2009), S. 1 ff.
7 Daten aus LUBW (2020), URL siehe Literaturverzeichnis.
8 Vgl. Wichert (o.J.), URL siehe Literaturverzeichnis.
9 Europäische-Kommission (2018), S.1.
10 Vgl. Universität-Oldenburg (2009), URL siehe Literaturverzeichnis.
11 ML, Dt. Maschinelles Lernen.
12 Dt. Tiefes Lernen.
13 Vgl. Ruhlig (2014), URL siehe Literaturverzeichnis.
14 Dt. Überwachtes Lernen.
15 Vgl. Géron (2017), S.8.
16 Vgl. Petereit (2013), URL siehe Literaturverzeichnis.
17 Vgl. Cybenko (1989), S.303 ff.
18 Abbildung aus Dettmers (2015), URL siehe Literaturverzeichnis.
19 Vgl. Ruhlig (2014), S.1.
20 Vgl. Géron (2017), S.355.
21 Vgl. Joshi (2017), S.400.
22 Siehe Kapitel 2.3.4: Dropout.
23 Vgl. Shanmugamani (2018), S.17.
24 Vgl. Joshi (2017), S.400.
25 Vgl. Shanmugamani (2018), S.17.
26 Abbildung in Anlehnung an Shanmugamani 2018, S.17.
27 Vgl. LeCun et al. (1998), S.1 ff.
28 Dt. Faltung.
29 Vgl. Goodfellow et al. (2016), S.326.
30 Vgl. Géron (2017), S.357.
31 Vgl. Bonnin (2017), S.162.
32 Formel aus Goodfellow et al. (2016), S.328.
33 I: Eingabebild, K: Faltungskernel, i,j: Indizes des Faltungs-Arrays, m,n: Räumliche Indizes.
34 Vgl. Bonnin (2017), S.162.
35 Abbildung in Anlehnung an Martin (2018), URL siehe Literaturverzeichnis.
36 Vgl. Martin (2018), URL siehe Literaturverzeichnis.
37 Vgl. Géron (2017), S.358.
38 Vgl. ebenda, S.359.
39 Vgl. Shanmugamani (2018), S.18.
40 Vgl. ebenda, S.18.
41 Vgl. Joshi (2017), S.401.
42 Vgl. Krizhevsky et al. (2012), S.3.
43 Funktion aus ebenda, S.3.
44 Funktion aus Géron (2017), S.135.
45 Vgl. ebenda, S.134 f.
46 Funktion aus ebenda, S.140.
47 Vgl. ebenda, S.139 f.
48 Abbildung ist eine eigene Darstellung.
49 Vgl. Géron (2017), S.367.
50 Vgl. Rumelhart et al. (1986), S.536.
51 Vgl. ebenda, S.533 f. und Kruse et al. (2015), S.21 f.
52 Vgl. LeCun et al. (2015), S.438.
53 Vgl. Shen et al. (2016), S.471 f.
54 Vgl. Bonnin (2017), S.50.
55 Vgl. Géron (2017), S.140.
56 Funktion aus ebenda, S.141.
57 Vgl. ebenda, S.141.
58 Vgl. Bonnin (2017), S.143.
59 Vgl. ebenda, S.143.
60 Vgl. Géron (2017), S.369.
61 Vgl. Van Beers et al. (2019), S.1.
62 Funktion aus Van Beers et al. (2019), S.5.
63 T = wahres Labelbild, P = Vorhersagebild.
64 Vgl. Van Beers et al. (2019), S.5 f.
65 Funktion aus ebenda, S.6.
66 T*P: elementweise Multiplikation von T und P.
67 Funktion aus Van Beers et al. (2019), S.6.
68 Vgl. ebenda, S.6.
69 Vgl. Joshi (2017), S.46.
70 Vgl. Bonnin (2017), S.54.
71 Vgl. Rahman & Wang (2016), S.1 f.
72 Vgl. Géron (2017), S.72.
73 Vgl. ebenda, S.72.
74 Vgl. Snoek et al. (2012), S.1 ff.
75 Vgl. Shanmugamani (2018), S.70.
76 Vgl. ebenda, S.70 f.
77 Vgl. Srivastava et al. (2014), S.1929.
78 Abbildung aus ebenda, S.1930.
79 Vgl. ebenda, S.1930 f.
80 Vgl. Simonyan & Zisserman (2014), S.1 ff.
81 Abbildung aus Ferguson et al. (2017), S.1735.
82 Vgl. Chollet (2017), S.1 f.
83 Vgl. Guo et al. (2018), S.1.
84 Vgl. Shanmugamani (2018), S.129.
85 Abbildung aus ebenda, S.134.
86 Vgl. Ronneberger et al. (2015), S.2.
87 Abbildung aus ebenda, S.2.
88 Vgl. ebenda, S.4.
89 Vgl. Ronneberger et al. (2015), S.4.
90 Vgl. ebenda, S.2.
91 Vgl. ebenda, S.3.
92 Vgl. ebenda, S.3.
93 Vgl. ebenda, S.3.
94 Abbildung aus ebenda, S.3.
95 Vgl. ebenda, S.3.
96 Vgl. Tiurin et al. (2020), S.2018.
97 Vgl. Kansakar & Hossain (2016), S.46.
98 Vgl. Gieske et al. (2019), S.95.
99 Vgl. Gieske et al. (2019), S.101.
100 Vgl. LUBW (2020), URL siehe Literaturverzeichnis.
101 Vgl. Amazon-Web-Services (2018), URL siehe Literaturverzeichnis.
102 Vgl. Kaggle (2016), URL siehe Literaturverzeichnis.
103 Vgl. Maggiori et al. (2017), S.2 f.
104 Vgl. LUBW (2020), URL siehe Literaturverzeichnis.
105 Abbildung ist eine eigene Darstellung.
106 Vgl. Bayrakci et al. (2015), S.401 ff.
107 Vgl. Lee et al. (2019), S.2105 ff.
108 Vgl. Saifi et al. (2020), S.369 ff.
109 Vgl. Sampath et al. (2019), S.38 ff.
110 Vgl. Camilo et al. (2018), S.1 ff.
111 Vgl. House et al. (2018), S.1 ff.
-
-
-
-
Laden Sie Ihre eigenen Arbeiten hoch! Geld verdienen und iPhone X gewinnen. -
-
Laden Sie Ihre eigenen Arbeiten hoch! Geld verdienen und iPhone X gewinnen. -
-
Laden Sie Ihre eigenen Arbeiten hoch! Geld verdienen und iPhone X gewinnen. -
-
Laden Sie Ihre eigenen Arbeiten hoch! Geld verdienen und iPhone X gewinnen. -
-
Laden Sie Ihre eigenen Arbeiten hoch! Geld verdienen und iPhone X gewinnen. -
-
Laden Sie Ihre eigenen Arbeiten hoch! Geld verdienen und iPhone X gewinnen. -
-
Laden Sie Ihre eigenen Arbeiten hoch! Geld verdienen und iPhone X gewinnen. -
-
Laden Sie Ihre eigenen Arbeiten hoch! Geld verdienen und iPhone X gewinnen. -
-
Laden Sie Ihre eigenen Arbeiten hoch! Geld verdienen und iPhone X gewinnen. -
-
Laden Sie Ihre eigenen Arbeiten hoch! Geld verdienen und iPhone X gewinnen. -
-
Laden Sie Ihre eigenen Arbeiten hoch! Geld verdienen und iPhone X gewinnen. -
-
Laden Sie Ihre eigenen Arbeiten hoch! Geld verdienen und iPhone X gewinnen. -
-
Laden Sie Ihre eigenen Arbeiten hoch! Geld verdienen und iPhone X gewinnen. -
-
Laden Sie Ihre eigenen Arbeiten hoch! Geld verdienen und iPhone X gewinnen. -
-
Laden Sie Ihre eigenen Arbeiten hoch! Geld verdienen und iPhone X gewinnen. -
-
Laden Sie Ihre eigenen Arbeiten hoch! Geld verdienen und iPhone X gewinnen. -
-
Laden Sie Ihre eigenen Arbeiten hoch! Geld verdienen und iPhone X gewinnen. -
-
Laden Sie Ihre eigenen Arbeiten hoch! Geld verdienen und iPhone X gewinnen. -
-
Laden Sie Ihre eigenen Arbeiten hoch! Geld verdienen und iPhone X gewinnen. -
-
Laden Sie Ihre eigenen Arbeiten hoch! Geld verdienen und iPhone X gewinnen. -
-
Laden Sie Ihre eigenen Arbeiten hoch! Geld verdienen und iPhone X gewinnen. -
-
Laden Sie Ihre eigenen Arbeiten hoch! Geld verdienen und iPhone X gewinnen. -
-
Laden Sie Ihre eigenen Arbeiten hoch! Geld verdienen und iPhone X gewinnen.