Deep Learning illustriert. Jon Krohn. Читать онлайн. Newlib. NEWLIB.NET

Автор: Jon Krohn
Издательство: Bookwire
Серия:
Жанр произведения: Математика
Год издания: 0
isbn: 9783960887522
Скачать книгу
ihres CycleGAN in Bilder, die dem jeweiligen Stil des impressionistischen Malers Claude Monet, des Niederländers Vincent van Gogh, des japanischen Genres Ukiyo-E und anderer nachempfunden sind.

      Unter bit.ly/cycleGAN können Sie Beispiele für den umgekehrten Fall entdecken (Monet-Gemälde, die in fotorealistische Bilder umgewandelt wurden) sowie:

       Sommerszenen, die in Winterszenen verwandelt wurden, und umgekehrt

       Körbe mit Äpfeln, aus denen Körbe mit Orangen wurden, und umgekehrt

       Flache Fotos niedriger Qualität, die auf einmal aussehen, als wären sie mit High-End-(Spiegelreflex-)Kameras aufgenommen worden

       ein Video eines Pferdes, das sich in ein Zebra verwandelt

       ein Video einer am Tage aufgenommenen Fahrt, die in eine Nachtfahrt konvertiert wird

       Abb. 3–5 Fotos, die mittels CycleGANs in den Stil berühmter Maler umgewandelt wurden

       3.4Machen Sie Ihre eigenen Skizzen fotorealistisch

      Eine andere GAN-Anwendung aus Alexei Efros BAIR-Labor – und zwar eine, mit der Sie sofort herumspielen können – ist pix2pix17. Wenn Sie sich zu bit.ly/pix2pixDemo begeben, können Sie interaktiv Bilder von einem Typ in einen anderen überführen. So haben wir zum Beispiel mit dem Programm edges2cats die dreiäugige Katze aus dem linken Feld in Abbildung 3–6 gezeichnet, um dann das (mehr oder weniger) fotorealistische Mutantenkätzchen aus dem rechten Feld zu generieren. Sie können dort auch selbst direkt im Browser Ihre eigenen kreativen Visionen von Pelztierchen, Schuhen, Handtaschen und Gebäudefassaden in ihre fotorealistischen Gegenstücke überführen. Die Autoren des pix2pix-Artikels bezeichnen ihren Ansatz als conditional GAN (kurz cGAN), weil das Generative Adversarial Network eine Ausgabe produziert, die durch den speziell vorgegebenen Input bedingt wird.

      Abb. 3–6Eine dreiäugige Mutantenkatze (rechtes Feld) wird über die pix2pix-Webanwendung erzeugt. Die Skizze im linken Feld, anhand derer die GAN-Ausgabe konditioniert wurde, stammt ganz eindeutig nicht von der Hand der Illustratorin unseres Buches, Aglaé, sondern von einem der anderen Autoren (der besser ungenannt bleiben soll).

       3.5Fotorealistische Bilder aus Text erzeugen

      Um dieses Kapitel abzurunden, möchten wir, dass Sie einen Blick auf die wirklich fotorealistischen, hochaufgelösten Bilder in Abbildung 3–7 werfen. Diese Bilder wurden mittels StackGAN18 erzeugt, einem Ansatz, bei dem zwei GANs aufeinander gestapelt (englisch: »stack«) werden. Das erste GAN in der Architektur wird so konfiguriert, dass es ein grobes, niedrig aufgelöstes Bild mit der allgemeinen Form und den Farben der relevanten, vorhandenen Objekte erzeugt. Dies wird dann als Eingabe an das zweite GAN übergeben, wo das nachgeahmte »Foto« verfeinert wird, indem seine Unvollkommenheiten behoben und ausreichend viele Details hinzugefügt werden. Das StackGAN ist ein cGAN wie das pix2pix-Netz aus dem vorherigen Abschnitt, allerdings wird die Bildausgabe auf Texteingaben statt auf ein Bild konditioniert.

       Abb. 3–7 Fotorealistische, hochaufgelöste Bildausgabe eines StackGAN, bei dem zwei GANs aufeinandergestapelt werden

       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