paint-brush
Erstellen Sie meisterhafte Tierporträts mit ComfyUIvon@hacker5029997
284 Lesungen

Erstellen Sie meisterhafte Tierporträts mit ComfyUI

von 5m2024/08/19
Read on Terminal Reader

Zu lang; Lesen

KI-basierte Bildbearbeitungstools haben in den letzten Jahren große Fortschritte gemacht. Heutzutage ist es ganz einfach, schöne, stilvolle Porträts von Menschen und Tieren zu erstellen. KI-Modelle sind jedoch höchst unvorhersehbar, sodass die meisten Tools darauf angewiesen sind, dass der Benutzer (oder ein Mensch) schlechte Generationen aussortiert und die beste findet. Mit einigen cleveren Tricks und sorgfältiger Feinabstimmung können Sie eine Pipeline erstellen, die für die überwiegende Mehrheit der Haustiere zuverlässig funktioniert. Sie ist äußerst widerstandsfähig gegenüber Variationen in Pose, Beleuchtung usw.
featured image - Erstellen Sie meisterhafte Tierporträts mit ComfyUI
undefined HackerNoon profile picture
0-item

KI-basierte Bildbearbeitungstools haben in den letzten Jahren große Fortschritte gemacht. Heutzutage ist es recht einfach, schöne, stilvolle Porträts von Menschen und Tieren zu erstellen. KI-Modelle sind jedoch höchst unvorhersehbar. Daher verlassen sich die meisten Tools darauf, dass der Benutzer (oder ein Mensch) schlechte Generationen aussortiert und die beste findet.


Dies ist das klassische „Human in the Loop“-Problem, das KI-Tools oft plagt. Es stellt sich heraus, dass man mit ein paar cleveren Tricks und sorgfältiger Feinabstimmung eine Pipeline erstellen kann, die bei der überwiegenden Mehrheit der Haustiere zuverlässig funktioniert. Sie ist äußerst widerstandsfähig gegenüber Variationen in Haltung, Beleuchtung usw.


In diesem Beitrag werde ich näher darauf eingehen, wie es funktioniert und welche kleinen Tricks das ermöglichen. Hier sind einige Beispiele für Porträts, die Sie mit dieser Pipeline erstellen können.

Lasst uns anfangen!

Die wichtigsten Zutaten

IPAdapter

Der Kern der Technik ist der IPAdapter. Er ist im Wesentlichen eine Möglichkeit, ein Modell mit einem Bild statt mit Text aufzufordern (wörtlich steht er für Image Prompt Adapter). Anstatt also Texteinbettungen zu verwenden, wird ein Bild verwendet, um die Einbettungen zu erhalten. Dies ist sehr leistungsstark, da es den Stil und die Struktur eines Bildes direkt erfassen kann, anstatt dass jemand das, was er von einem Bild will, in Text übersetzen muss. In unserem ComfyUI IPAdapter-Knoten haben wir zwei Eingänge, einen für den Stil und einen für die Komposition. Wir verwenden ein Bild mit einem Aquarellgemälde für den Stil und geben das Originalbild für die Komposition ein (da wir dieselbe Komposition beibehalten, aber den Stil ändern wollen).


Das obige Bild dient als Bildaufforderung für den IPAdapter

Kontrollnetze

Da wir nun eine Möglichkeit haben, den Stil konsistent zu halten, können wir uns darauf konzentrieren, das Haustier originalgetreu darzustellen. IPAdapter legen großen Wert auf die Bildqualität, und die Bildähnlichkeit leidet darunter. Wir müssen also etwas tun, damit die Ausgabe wie das gleiche Objekt aussieht wie die Eingabe.


Die Antwort darauf ist ControlNet. ControlNets sind eine weitere coole Technik, um zusätzliche Einschränkungen für den Bilderzeugungsprozess bereitzustellen. Mit einem ControlNet können Sie Einschränkungen in Form von Kanten, Tiefe, menschlicher Haltung usw. angeben. Ein großartiges Merkmal von ControlNets ist, dass sie gestapelt werden können. Sie können also ein Kanten-ControlNet haben, das die Ausgabe dazu zwingt, ähnliche Kanten wie die Eingabe zu haben, und auch ein Tiefen-ControlNet, das die Ausgabe dazu zwingt, ein ähnliches Tiefenprofil zu haben. Und genau das mache ich hier.


Ausgabe eines Canny Edge ControlNet (links) und Depth ControlNet (rechts). Diese sorgen dafür, dass die Ausgabe der Eingabe ähnelt.


Es stellt sich heraus, dass Controlnets nicht nur mit anderen Controlnets stapelbar sind, sondern auch im Tandem mit dem oben erwähnten IPAdapter arbeiten können. Und das sind die Tools, die wir hierfür verwenden werden: IPAdapter mit einem Quellbild, um den Stil zu erhalten, ControlNet mit einem cleveren Kantendetektor, um auf Kanten basierende Einschränkungen vorzunehmen, und Controlnet mit Tiefe, um auf Tiefenprofil basierende Einschränkungen vorzunehmen.


Das ist eigentlich alles, was Sie an Techniken brauchen, aber was ich beim Experimentieren mit maschinellem Lernen für die Produktion gelernt habe, ist, dass ein Großteil des Werts dieser Dinge darin liegt, sich die Zeit zu nehmen, alle Ihre Parameter perfekt abzustimmen. Also möchte ich ein wenig darüber sprechen.

Feinabstimmung

Haben Sie schon einmal ein Modell mit erstaunlichen Beispielausgaben gefunden, es an Ihren eigenen Bildern ausprobiert und festgestellt, dass sie schrecklich aussehen? Oft liegt der einzige Grund dafür darin, dass das Modell nicht für Ihre Bilder optimiert wurde. Manchmal kann sich das wie ein komplettes Hindernis anfühlen, denn wo fangen wir überhaupt mit der Feinabstimmung eines vorab trainierten Modells an?! Hier ist, was ich zu diesem Thema gelernt habe. Dies geht auch über diese spezielle Pipeline hinaus, daher ist es allgemein gut, über dieses Wissen zu verfügen.

Kontrollnetze

ControlNets sind sehr leistungsstark, daher müssen Sie darauf achten, ihre Auswirkungen auf die Ausgabe zu kontrollieren. Glücklicherweise können wir mit den benutzerdefinierten Knoten in ComfyUI die Auswirkungen von ControlNets reduzieren und ihre Auswirkungen jederzeit stoppen. Wir stellen also den Kantendetektor auf 75 % Stärke ein und sorgen dafür, dass er die Generierung bei 75 % nicht mehr beeinflusst, und der Tiefendetektor stoppt bei 30 %. Der Grund, warum wir sie am Ende stoppen, anstatt nur ihre Stärke zu reduzieren, besteht darin, dass das Netzwerk so alle von ihnen verursachten Artefakte in den letzten Schritten „bereinigen“ kann, ohne extern eingeschränkt zu sein. Es macht das Bild einfach schöner. Es verwendet also nur seine Trainingsdaten, um die Dinge so schön wie möglich aussehen zu lassen, wobei die Kanten und die Tiefe ignoriert werden.



Die andere große Sache, die abgestimmt werden muss, ist der KSampler. Hier gibt es eine Menge kleiner Dinge zu tun, aber ich werde nur kurz auf einige davon eingehen:

KSampler - Schritte

Zuerst haben wir die Schritte. Das ist buchstäblich die Anzahl, wie oft das Modell wiederholt ausgeführt wird. Je öfter es ausgeführt wird, desto stilisierter wird Ihre Ausgabe und desto weiter entfernt sie sich vom Originalbild. Die Auswirkungen davon sind oft nicht so offensichtlich, es lohnt sich also, damit herumzuspielen.


KSampler - CFG

Dann gibt es CFG. Ich verstehe das ehrlich gesagt nicht ganz, aber aufgrund des Namens – Classifier Free Guidance – gehe ich davon aus, dass es steuert, wie weit das Modell das Bild ohne Einschränkungen durch die Eingabeaufforderungen ändern darf, um es besser aussehen zu lassen. Dies wirkt sich auch erheblich auf das Ausgabebild aus, es lohnt sich also, damit herumzuspielen.


Rauschunterdrückung

Ein weiterer kleiner Trick, den ich hier anwende, besteht darin, den Bildgenerierungsprozess mit dem Eingabebild statt mit einem leeren Bild zu starten und die Rauschunterdrückung gering zu halten. Dadurch wird sichergestellt, dass die Ausgabe in Bezug auf Farben und Texturen ähnlich aussieht.


Texteingabeaufforderung

Eine Sache, die ich bisher nie erwähnt habe, ist die Textaufforderung, die Sie bemerken werden! Überraschend, da dies normalerweise die einzige Konditionierung ist, die Sie Diffusionsmodellen bereitstellen. Aber in diesem Fall haben wir so viele andere Möglichkeiten der Konditionierung, dass die Textaufforderungen normalerweise nur im Weg sind. In diesem Fall ist die Aufforderung also buchstäblich nur „ein Hund“. Ich verwende die Textaufforderung in einigen der stilisierteren Porträts etwas häufiger, wie zum Beispiel bei dem Kochhund oder dem im Badezimmer.

Zubehör hinzufügen

Im Wesentlichen ist dies mehr oder weniger nur ein „KI-Filter“, der Bilder in Aquarellporträts umwandelt. Aber es ist erstaunlich, wie flexibel dies sein kann. Um beispielsweise das Porträt des duschenden Hundes zu erstellen, habe ich buchstäblich einfach Bilder in einem Bildbearbeitungstool zusammengefügt und diese als Eingabe verwendet! Das Modell kümmert sich darum, alles zu vereinheitlichen und das Bild zu bereinigen.


Abschluss

Entfernen Sie nun den Hintergrund, fügen Sie etwas Text hinzu und Boom! Sie haben ein wunderschönes Porträt, das alle kleinen Details Ihres Haustieres einfängt und es immer im besten Licht darstellt!


Vielen Dank an @cubiq für seine Arbeit an ComfyUI-Knoten und seine tolle Erklärserie auf YouTube! Der Großteil dieser Pipeline wurde von ihm erstellt und in seinen Videos erklärt.


Wenn Sie ein Haustierporträt ohne all diese Mühe haben möchten, können Sie hier eines kaufen: pawprints.pinenlime.com!