Das neuronale Netzwerk von Pix2pix färbt Bleistiftskizzen und Schwarzweißfotos realistisch


Vier Beispiele des Programms, dessen Code gemeinfrei veröffentlicht wird. Die Quellbilder werden links und das Ergebnis der automatischen Verarbeitung rechts angezeigt.

Viele Aufgaben in den Bereichen Bildverarbeitung, Computergrafik und Computer Vision können auf die Aufgabe reduziert werden, ein Bild (am Eingang) in ein anderes (am Ausgang) zu „übersetzen“. So wie derselbe Text in Englisch oder Russisch dargestellt werden kann, kann das Bild auch in RGB-Farben, in Verläufen, als Karte der Grenzen von Objekten, als Karte mit semantischen Bezeichnungen usw. dargestellt werden. Basierend auf dem Modell automatischer Übersetzungssysteme haben Entwickler des Berkeley AI Research Laboratory (BAIR) der University of California in Berkeley eine Anwendung erstelltum Bilder automatisch von einer Ansicht in eine andere zu übertragen. Zum Beispiel von einer Schwarzweißskizze zu einem Vollfarbbild.

Für eine nicht informierte Person wird die Arbeit eines solchen Programms magisch erscheinen, aber sie basiert auf einem Programmmodell von bedingten generativen kontradiktorischen Netzwerken (cGAN) - Sorten des bekannten Typs generativer kontradiktorischer Netzwerke (GAN).

Die Autoren der wissenschaftlichen Arbeit schreiben, dass die meisten Probleme, die beim Übersetzen von Bildern auftreten, entweder mit der Übersetzung von „vielen zu eins“ (Computer Vision - Übersetzen von Fotos in semantische Karten, Segmente, Objektgrenzen usw.) oder mit „eins zu vielen“ zusammenhängen. "(Computergrafik - Übersetzung von Etiketten oder Eingabedaten des Benutzers in realistische Bilder). Traditionell wird jede dieser Aufgaben von einer separaten Spezialanwendung ausgeführt. In ihrer Arbeit versuchten die Autoren, einen einheitlichen universellen Rahmen für all diese Probleme zu schaffen. Und sie haben es geschafft.

Faltungs-Neuronale Netze, die darauf trainiert sind, die Verlustfunktion zu minimieren, eignen sich hervorragend zum Senden von Bildern.das heißt, ein Maß für die Diskrepanz zwischen dem wahren Wert des geschätzten Parameters und der Parameterschätzung. Obwohl das Training selbst automatisch stattfindet, sind erhebliche manuelle Arbeiten erforderlich, um die Verlustfunktion effektiv zu minimieren. Mit anderen Worten, wir müssen den neuronalen Netzen noch erklären und zeigen, was speziell minimiert werden muss. Und hier gibt es viele Fallstricke, die sich negativ auf das Ergebnis auswirken, wenn wir mit einer Verlustfunktion mit geringem Pegel arbeiten, z. B. „Minimieren Sie den euklidischen Abstand zwischen vorhergesagten und realen Pixeln“ - dies führt zur Erzeugung verschwommener Bilder.


Die Auswirkung verschiedener Verlustfunktionen auf das Ergebnis

Es wäre viel einfacher, neuronale Netze mit Aufgaben auf hoher Ebene wie „ein von der Realität nicht unterscheidbares Bild zu erzeugen“ einzustellen und dann das neuronale Netz automatisch zu trainieren, um die Verlustfunktion zu minimieren, die die Aufgabe am besten ausführt. So funktionieren generative Adversarial Networks (GANs) - einer der vielversprechendsten Bereiche bei der Entwicklung neuronaler Netze heute. Das GAN-Netzwerk trainiert die Verlustfunktion, deren Aufgabe es ist, das Bild als "echt" oder "falsch" zu klassifizieren, während das generative Modell trainiert wird, um diese Funktion zu minimieren. Hier können unscharfe Bilder in keiner Weise erzeugt werden, da sie die Klassifizierungsprüfung nicht als „echt“ bestehen.

Die Entwickler verwendeten für die Aufgabe bedingte generative kontradiktorische Netzwerke (cGAN), dh GAN mit einem bedingten Parameter. So wie das GAN das generative Datenmodell assimiliert, assimiliert cGAN das generative Modell unter bestimmten Bedingungen, wodurch es für die Übertragung von Bildern „eins zu eins“ geeignet ist.


Broadcast Cityscapes Layouts zu realistischen Fotos. Links ist das Markup, in der Mitte das Original und rechts das erzeugte Bild.

In den letzten zwei Jahren wurden viele Anwendungen von GAN beschrieben und die theoretischen Grundlagen ihrer Arbeit wurden gut untersucht. In all diesen Arbeiten wird GAN jedoch nur für spezielle Aufgaben verwendet (z. B. die Erzeugung erschreckender Bilder oder die Erzeugung von Pornobildern) Es war nicht ganz klar, wie das GAN für die effiziente Übersetzung von Einzelbildern geeignet ist. Das Hauptziel dieser Arbeit ist es zu demonstrieren, dass ein solches neuronales Netzwerk eine große Liste verschiedener Aufgaben ausführen kann und ein durchaus akzeptables Ergebnis zeigt.

Beispielsweise sieht die Färbung von Schwarz-Weiß-Bleistiftskizzen (linke Spalte) sehr gut aus, auf deren Grundlage das neuronale Netzwerk fotorealistische Bilder erzeugt (rechte Spalte). In einigen Fällen erscheint das Ergebnis des Betriebs des neuronalen Netzwerks noch realistischer als ein reales Foto (zum Vergleich die zentrale Spalte).


Gießen Sie Bleistiftskizzen auf realistische Fotos. Links ist eine Bleistiftzeichnung, in der Mitte das Original und rechts ein erzeugtes Bild.




Übersetzung von Bleistiftskizzen in realistische Fotos.

Wie in anderen generativen Netzen befinden sich in diesem GAN die neuronalen Netze untereinander im Krieg . Einer von ihnen (der Generator) versucht, ein falsches Bild zu erstellen, um den anderen (Diskriminator) auszutricksen. Mit der Zeit lernt der Generator, den Diskriminator besser auszutricksen, dh realistischere Bilder zu erzeugen. Im Gegensatz zu herkömmlichen GANs haben in Pix2Pix sowohl der Diskriminator als auch der Generator Zugriff auf das Originalbild.


Bildung CGAN prognostiziert die Luftaufnahmen von Karten der Gegend


Beispiele für Arbeit CGAN übertrugen Luftbilder zu Karten der Gegend und im Gegenteil

Artikel wissenschaftlichen veröffentlicht Pix2pix im offenen Zugang zum Quellcode - auf GitHub . Die Autoren bieten jedem an, das Programm zu erleben.

Source: https://habr.com/ru/post/de399469/


All Articles