Dieser Artikel ist der Artikel zum 24. Tag des Yuyu-shiki-Adventskalenders 2019.
Letztes Jahr beim Adventskalender habe ich versucht, Schwarz-Weiß-Cartoons mit CycleGAN automatisch einzufärben. (Versuchen Sie, Cartoons mit CycleGAN-Beispiel des Yuyu-Stils zu färben-) CycleGAN eignet sich gut zur Stilkonvertierung, z. B. zum Ändern von Farben und Texturen, aber nicht zur Formkonvertierung.
Daher wird in diesem Jahr mit U-GAT-IT, einem GAN, das sowohl Stilkonvertierung als auch Formkonvertierung realisiert, eine Yuyu-Stilillustration aus einem Gesichtsfoto realisiert Lassen Sie uns generieren.
Das Bild sieht so aus ↓ (Zitiert aus mantan-web)
U-GAT-IT kann auch Formkonvertierungen durchführen, in denen CycleGAN nicht gut war.
Das Folgende sind die vom Autor in der Arbeit veröffentlichten Ergebnisse. Ganz links ist das Originalfoto, aber Sie können sehen, dass die Änderungen, die mit der Formumwandlung von Katzen zu Hunden einhergehen, auch gut gemacht werden.
Alle Zahlen stammen aus U-GAT-IT: Unüberwachte generative Aufmerksamkeitsnetzwerke mit adaptiver Schichtinstanznormalisierung für die Bild-zu-Bild-Übersetzung
Das Lernen wurde bei Google Colaboratory durchgeführt. Sie können dies lernen, indem Sie es in der Reihenfolge util-> ops-> UGATIT-> main aus diesem Repository in eine Notizbuchzelle einfügen.
Bei der Ausführung mit Notebook verursacht der Parser jedoch einen Fehler. Ändern Sie ihn daher wie folgt.
#Kommentieren Sie Folgendes aus
#parser = argparse.ArgumentParser(description=desc)
#Auf halbem Weg weggelassen
#parser.add_argument(...)
#Fügen Sie Folgendes hinzu
!pip install easydict
import easydict
args = easydict.EasyDict({
'phase': 'train',
'light': False,
'dataset': 'yuyu',
###Folgendes wird weggelassen
})
Platzieren Sie den Datensatz wie unten gezeigt direkt unter dem aktuellen Verzeichnis.
└─ dataset
└─ yuyu
├─ trainA #Foto einer Frau zum Lernen(Von selfie2anime abgelenkt)
├─ trainB #Charakterfotos im Yuyu-Stil zum Lernen
├─ testA #Zum Prüfen(ry
└─ testB #Zum Prüfen(ry
Wenn Sie bereit sind, beginnen Sie zu lernen!
Dieses Modell ist sehr groß, und selbst bei einem Datensatz von nur etwa 100 Blatt trat häufig der Fehler auf, dass es nicht in den Speicher passt. .. In einem solchen Fall lernt die Lichtversion, wenn Sie "Licht" in Argumenten auf "Wahr" setzen. (Es ist ein Kompromiss mit Genauigkeit, aber ...) Dieses Mal habe ich 1500 Epochen mit 100 Iterationen gelernt, was ein wenig übertrieben ist.
** ○ Ergebnis ** Originalfoto / Konvertierungsergebnisfoto.
Es ist ein Bild im Yuyu-Stil, aber es ist subtil ...
Dieses Mal habe ich nicht die erwarteten Ergebnisse erzielt. Es tut mir leid, dass ich die Leistung des Modells nicht gut zur Geltung bringen konnte.
Ich denke, der Hauptfaktor ist, dass der Trainingsdatensatz zu klein ist. Ich spüre die Grenzen der Ressourcen. ..
(Ich möchte, dass jemand einen Yuyu-Datensatz erstellt.)
Morgen ist der letzte Tag.
Habt alle ein schönes Weihnachtsfest!
Recommended Posts