Читать книгу Deep Learning illustriert - Jon Krohn - Страница 43
3.6Bildverarbeitung mittels Deep Learning
ОглавлениеSeit dem Aufkommen der Digitalkameratechnik ist die Bildverarbeitung (sowohl direkt im Gerät als auch in Form einer Nachbearbeitung) zur Normalität in den Arbeitsabläufen der meisten (wenn nicht gar aller) Fotografen geworden. Dies reicht von einer einfachen Bearbeitung im Gerät, wie etwa einer Erhöhung der Sättigung und der Schärfe direkt nach der Aufnahme, bis hin zur komplexen Bearbeitung der rohen Bilddaten in Programmen wie Adobe Photoshop und Lightroom.
Bei der Verarbeitung im Gerät kommt Machine Learning bereits umfassend zum Einsatz, da die Kamerahersteller wünschen, dass dem Kunden das Bild schon so lebhaft und angenehm wie möglich präsentiert wird, ohne dass dieser viel Aufwand hineinstecken muss. Einige Beispiele dafür sind:
Frühe Gesichtserkennungsalgorithmen in einfachen Point-and-Shoot-Kameras, die Belichtung und Fokus für Gesichter optimieren oder sogar gezielt den Auslöser betätigen, wenn sie erkennen, dass die angepeilte Person lächelt (wie in Abbildung 1–13).
Algorithmen zur Szenenerkennung, die die Belichtungseinstellungen an das Weiß von Schnee anpassen oder für Nachtaufnahmen den Blitz aktivieren.
Auf dem Gebiet des Postprocessing gibt es eine Vielzahl von automatischen Werkzeugen, obwohl Fotografen, die sich die Zeit nehmen, ihre Bilder nachzubearbeiten, eine beträchtliche Menge Zeit und Spezialwissen in die Farb- und Belichtungskorrektur, die Rauschminderung, das Schärfen, die Farbtonanpassung und das Retuschieren (um nur einige der möglichen Korrekturen zu nennen) investieren.
In der Vergangenheit war es schwierig, diese Korrekturen programmtechnisch auszuführen, da zum Beispiel die Rauschminderung selektiv auf unterschiedliche Bilder und sogar auf unterschiedliche Bildbereiche angewandt werden musste. Dies ist genau die Art von intelligentem Einsatz, bei dem das Deep Learning brillieren kann.
In einem Artikel von Chen Chen und seinen Mitarbeitern bei den Intel Labs aus dem Jahre 201819 wurde Deep Learning auf die Verbesserung von Bildern angewandt, die in nahezu völliger Dunkelheit aufgenommen wurden. Die Ergebnisse waren erstaunlich (Abbildung 3–8). Ihr Deep-Learning-Modell umfasst Konvolutionsschichten, die in einer innovativen U-Net20-Architektur angeordnet sind (wir werden diese in Kapitel 10 näher betrachten). Die Autoren generierten einen eigenen Datensatz zum Trainieren dieses Modells: Der See in the Dark-Datensatz besteht aus 5.094 Rohbildern von sehr dunklen Szenen, die mit sehr kurzer Belichtungszeit aufgenommen wurden,21 und den entsprechenden, mit langer Belichtungszeit (und aus Gründen der Stabilität mit einem Stativ) aufgenommenen Bildern derselben Szene. Die Belichtungszeit bei den lange belichteten Bildern war 100- bis 300-mal so lang wie bei den Trainingsbildern mit der kurzen Belichtungszeit und lag zwischen 10 und 30 Sekunden. Wie in Abbildung 3–8 demonstriert wird, ist die Deep-Learning-basierte Bildverarbeitung von U-Net (rechtes Feld) um Längen besser als der herkömmliche Ablauf (mittleres Feld). Das Ganze hat aber bisher noch Grenzen:
Das Modell ist nicht schnell genug, um diese Korrektur in Echtzeit (und ganz sicher nicht im Gerät) durchzuführen; allerdings könnte hier eine Laufzeitoptimierung helfen.
Ein dediziertes Netzwerk muss für unterschiedliche Kameramodelle und Sensoren trainiert werden, während ein allgemeinerer und nicht vom Kameramodell abhängiger Ansatz wünschenswert wäre.
Obwohl die Ergebnisse deutlich besser sind als das, was traditionelle Abläufe ausgeben, sind in den verbesserten Fotos immer noch Artefakte vorhanden, die bearbeitet werden könnten.
Der Datensatz ist auf ausgewählte statische Szenen beschränkt und muss auf andere Motive (vor allem Menschen) erweitert werden.
Abb. 3–8Ein Beispielbild (links) wird mit dem traditionellen Arbeitsablauf (Mitte) bzw. mit dem Deep-Learning-Modell von Chen et al. (rechts) verarbeitet.
Ungeachtet dieser Einschränkungen bietet diese Arbeit jedoch einen faszinierenden Einblick, wie Deep Learning adaptiv Fotos in Postprocessing-Abläufen korrigieren kann, und das mit einem Maß an Raffinesse, das bei Maschinen bisher noch nicht beobachtet werden konnte.