Heim > Artikel > Technologie-Peripheriegeräte > Zum ersten Mal verlassen Sie sich nicht auf ein generatives Modell und lassen die KI Bilder in nur einem Satz bearbeiten!
2022 ist das Jahr, in dem AI Generated Content (AIGC) explodiert. Eine der beliebtesten Richtungen ist die Bearbeitung von Bildern durch Textbeschreibungen (Textaufforderungen). Bestehende Methoden basieren in der Regel auf generativen Modellen, die auf großen Datensätzen trainiert werden, was nicht nur zu hohen Datenerfassungs- und Trainingskosten führt, sondern auch zu größeren Modellgrößen. Diese Faktoren haben zu einer hohen Hemmschwelle für die tatsächliche Entwicklung und Anwendung von Technologie geführt und die Entwicklung und Kreativität von AIGC eingeschränkt.
Als Reaktion auf die oben genannten Probleme arbeitete das NetEase Interactive Entertainment AI Lab mit der Shanghai Jiao Tong University zusammen, um Forschungsarbeiten durchzuführen und innovativ eine Lösung auf Basis differenzierbarer Vektorrenderer vorzuschlagen— — CLIPVG ermöglicht erstmals eine textgesteuerte Bildbearbeitung, ohne auf ein generatives Modell angewiesen zu sein. Diese Lösung nutzt geschickt die Eigenschaften von Vektorelementen, um den Optimierungsprozess einzuschränken. Dadurch können nicht nur massive Datenanforderungen und ein hoher Trainingsaufwand vermieden werden, sondern auch das optimale Niveau hinsichtlich der Generierungseffekte erreicht werden. Das entsprechende Paper „CLIPVG: Text-Guided Image Manipulation Using Differentiable Vector Graphics“ wurde in AAAI 2023 aufgenommen.
Einige der Effekte sind wie folgt (in der Reihenfolge Gesichtsbearbeitung, Änderung des Automodells, Gebäudegenerierung, Farbänderung, Musteränderung, Schriftartänderung).
Ideen und technischer Hintergrund
Aus Sicht des Gesamtprozesses schlug CLIPVG zunächst eine Multi-Runden-Vektorisierungsmethode vor, die Pixel robust konvertieren kann Bilder in Vektordomänen umwandeln und an spätere Bildbearbeitungsanforderungen anpassen. Anschließend wird ein ROI-CLIP-Verlust als Verlustfunktion definiert, um die Führung mit unterschiedlichem Text für jede Region of Interest (ROI) zu unterstützen. Der gesamte Optimierungsprozess verwendet einen differenzierbaren Vektorrenderer, um Gradientenberechnungen für Vektorparameter (wie Farbfelder, Kontrollpunkte usw.) durchzuführen.CLIPVG kombiniert Technologien aus zwei Bereichen, zum einen die textgeführte Bildbearbeitung im Pixelbereich und zum anderen die Generierung von Vektorbildern. Anschließend werden nacheinander die relevanten technischen Hintergründe vorgestellt.
Textgesteuerte Bildübersetzung
Überlassen Sie die Bearbeitung der KI in Bildern Beim „Verstehen“ von Textführung ist die typische Methode die Verwendung des CLIP-Modells (Contrastive Language-Image Pre-Training). Das CLIP-Modell kann Text und Bilder in vergleichbare latente Räume kodieren und modalübergreifende Ähnlichkeitsinformationen darüber liefern, „ob das Bild der Textbeschreibung entspricht“, wodurch eine semantische Verbindung zwischen Text und Bildern hergestellt wird. Tatsächlich ist es jedoch schwierig, die Bildbearbeitung nur mit dem CLIP-Modell effektiv zu steuern. Dies liegt daran, dass CLIP sich hauptsächlich auf die semantischen Informationen auf hoher Ebene des Bildes konzentriert und keine Einschränkungen für Details auf Pixelebene aufweist, was den Optimierungsprozess beeinträchtigt fallen leicht in ein lokales Optimum (lokales Minimum) oder kontradiktorische Lösungen.Eine gängige Methode besteht darin, CLIP mit einem Pixeldomänen-Generierungsmodell zu kombinieren, das auf GAN oder Diffusion basiert, wie z. B. StyleCLIP (Patashnik et al, 2021), StyleGAN-NADA (Gal et al, 2022). Disco Diffusion (Alembics 2022), DiffusionCLIP (Kim, Kwon und Ye 2022), DALL·E 2 (Ramesh et al, 2022) usw. Diese Schemata nutzen generative Modelle, um Bilddetails einzuschränken und gleichen so die Nachteile der alleinigen Verwendung von CLIP aus. Gleichzeitig sind diese generativen Modelle jedoch stark auf Trainingsdaten und Rechenressourcen angewiesen und begrenzen den effektiven Bereich der Bildbearbeitung durch die Bilder des Trainingssatzes. Durch die Fähigkeit zur Generierung von Modellen eingeschränkt, können Methoden wie StyleCLIP, StyleGAN-NADA und DiffusionCLIP ein einzelnes Modell nur auf ein bestimmtes Feld beschränken, z. B. Gesichtsbilder. Obwohl Methoden wie Disco Diffusion und DALL·E 2 jedes Bild bearbeiten können, erfordern sie enorme Daten- und Rechenressourcen, um ihre entsprechenden generativen Modelle zu trainieren. Es gibt derzeit nur sehr wenige Lösungen, die nicht auf generative Modelle setzen, wie zum Beispiel CLIPstyler (Kwon und Ye 2022). Während der Optimierung unterteilt CLIPstyler das zu bearbeitende Bild in zufällige Patches und verwendet die CLIP-Anleitung für jeden Patch, um die Einschränkungen für Bilddetails zu verstärken. Das Problem besteht darin, dass jeder Patch unabhängig die durch den Eingabetext definierte Semantik widerspiegelt. Daher kann diese Lösung nur eine Stilübertragung durchführen, aber keine umfassende semantische Bearbeitung des Bildes durchführen. Anders als die oben genannten Pixeldomänenmethoden nutzt die von NetEase Interactive Entertainment AI Lab vorgeschlagene CLIPVG-Lösung die Eigenschaften von Vektorgrafiken, um Bilddetails einzuschränken und das generative Modell zu ersetzen. CLIPVG kann jedes Eingabebild unterstützen und eine allgemeine Bildbearbeitung durchführen. Die Ausgabe ist eine Standard-Vektorgrafik im SVG-Format, die nicht durch die Auflösung begrenzt ist. Einige bestehende Arbeiten berücksichtigen die textgesteuerte Generierung von Vektorgrafiken, wie zum Beispiel CLIPdraw (Frans, Soros und Witkowski 2021) , StyleCLIPdraw (Schaldenbrand, Liu und Oh 2022) usw. Ein typischer Ansatz besteht darin, CLIP mit einem differenzierbaren Vektorrenderer zu kombinieren, von zufällig initialisierten Vektorgrafiken auszugehen und sich schrittweise der durch den Text dargestellten Semantik anzunähern. Der verwendete differenzierbare Vektorrenderer ist Diffvg (Li et al. 2020), der Vektorgrafiken durch differenzierbares Rendering in Pixelbilder rastern kann. CLIPVG verwendet Diffvg auch, um die Verbindung zwischen Vektorbildern und Pixelbildern herzustellen. Anders als bei bestehenden Methoden konzentriert sich CLIPVG auf die Bearbeitung vorhandener Bilder, anstatt sie direkt zu generieren. Da es sich bei den meisten vorhandenen Bildern um Pixelbilder handelt, müssen sie vektorisiert werden, bevor sie mit Vektorgrafikfunktionen bearbeitet werden können. Zu den bestehenden Vektorisierungsmethoden gehören Adobe Image Trace (AIT), LIVE (Ma et al. 2022) usw., diese Methoden berücksichtigen jedoch nicht den späteren Bearbeitungsbedarf. CLIPVG führt mehrere Runden von Methoden zur Vektorisierungsverbesserung ein, die auf vorhandenen Methoden basieren, um gezielt die Robustheit der Bildbearbeitung zu verbessern. Technische Umsetzung Der Gesamtprozess von CLIPVG ist unten dargestellt . Zunächst wird das Eingabepixelbild einer Mehrrunden-Vektorisierung (Mehrrunden-Vektorisierung) mit unterschiedlicher Genauigkeit unterzogen, wobei der in der i-ten Runde erhaltene Satz von Vektorelementen als Θi markiert wird. Die in jeder Runde erzielten Ergebnisse werden als Optimierungsobjekt überlagert und durch differenzierbares Vektorrendering (differenzierbare Rasterisierung) wieder in die Pixeldomäne umgewandelt. Der Ausgangszustand des Ausgabebildes ist die vektorisierte Rekonstruktion des Eingabebildes. Anschließend wird eine iterative Optimierung in der im Text beschriebenen Richtung durchgeführt. Der Optimierungsprozess berechnet den ROI-CLIP-Verlust () basierend auf dem Flächenbereich und dem zugehörigen Text jedes ROI und optimiert jedes Vektorelement entsprechend dem Farbverlauf, einschließlich Farbparametern und Form Parameter. Der gesamte iterative Optimierungsprozess ist im folgenden Beispiel zu sehen, in dem der Leittext „Jocker, Heath Ledger“ (Joker), Heath Ledger). Vektorisiert Eine Vektorgrafik kann als eine Sammlung von Vektorelementen definiert werden, wobei jedes Vektorelement durch eine Reihe von Parametern gesteuert wird. Die Parameter des Vektorelements hängen von seinem Typ ab. Am Beispiel der gefüllten Kurve sind seine Parameter , wobei der Kontrollpunktparameter und der Parameter für RGB-Farbe und Deckkraft ist . Bei der Optimierung von Vektorelementen gibt es einige natürliche Einschränkungen. Beispielsweise ist die Farbe innerhalb eines Elements immer konsistent und die topologische Beziehung zwischen seinen Kontrollpunkten ist ebenfalls festgelegt. Diese Funktionen gleichen den Mangel an detaillierten Einschränkungen bei CLIP aus und können die Robustheit des Optimierungsprozesses erheblich verbessern. Theoretisch kann CLIPVG mit jeder vorhandenen Methode vektorisiert werden. Untersuchungen haben jedoch ergeben, dass dies zu mehreren Problemen bei der anschließenden Bildbearbeitung führen kann. Erstens kann mit der üblichen Vektorisierungsmethode sichergestellt werden, dass die benachbarten Vektorelemente des Bildes im Ausgangszustand perfekt ausgerichtet sind. Allerdings bewegt sich jedes Element mit dem Optimierungsprozess, wodurch „Risse“ zwischen den Elementen entstehen. Zweitens ist das Eingabebild manchmal relativ einfach und erfordert nur eine kleine Anzahl von Vektorelementen zur Anpassung, während der Effekt der Textbeschreibung die Darstellung komplexerer Details erfordert, was dazu führt, dass bei der Bildbearbeitung die notwendigen Rohmaterialien (Vektorelemente) fehlen. Als Reaktion auf die oben genannten Probleme schlug CLIPVG eine Mehrrunden-Vektorisierungsstrategie vor. In jeder Runde werden vorhandene Methoden aufgerufen, um ein vektorisiertes Ergebnis zu erhalten, das der Reihe nach überlagert wird. Jede Runde verbessert die Genauigkeit im Vergleich zur vorherigen Runde, d. h. die Vektorisierung erfolgt mit kleineren Blöcken von Vektorelementen. Die folgende Abbildung spiegelt den Unterschied in den unterschiedlichen Genauigkeiten während der Vektorisierung wider. Der durch die i-te Vektorisierungsrunde erhaltene Satz von Vektorelementen kann als ausgedrückt werden, und der durch Überlagerung der Ergebnisse aller Runden erhaltene Satz von Vektorelementen wird als gekennzeichnet. Das ist das Gesamtoptimierungsobjekt von CLIPVG. Verlustfunktion Ähnlich wie StyleGAN-NADA und CLIPstyler verwendet CLIPVG einen gerichteten CLIP-Verlust, um die Übereinstimmung zwischen dem generierten Bild und dem Beschreibungstext zu messen, der wie folgt definiert ist: wobei die Eingabetextbeschreibung darstellt. ist ein fester Referenztext, der in CLIPVG auf „Foto“ eingestellt ist, und ist das generierte Bild (das zu optimierende Objekt). ist das Originalbild. und sind die Text- bzw. Bildcodecs von CLIP. ΔT und ΔI stellen die latenten Raumrichtungen von Text bzw. Bild dar. Der Zweck der Optimierung dieser Verlustfunktion besteht darin, die semantische Änderungsrichtung des Bildes nach der Bearbeitung an die Beschreibung des Textes anzupassen. Der feste t_ref wird in nachfolgenden Formeln ignoriert. In CLIPVG ist das generierte Bild das Ergebnis einer differenzierbaren Darstellung von Vektorgrafiken. Darüber hinaus unterstützt CLIPVG die Zuweisung unterschiedlicher Textbeschreibungen zu jedem ROI. Zu diesem Zeitpunkt wird der gerichtete CLIP-Verlust in den folgenden ROI-CLIP-Verlust umgewandelt: wobei Ai der i-te ROI-Bereich und seine zugehörige Textbeschreibung ist. R ist ein differenzierbarer Vektorrenderer und R(Θ) ist das gesamte gerenderte Bild. ist das gesamte Eingabebild. stellt einen Zuschneidevorgang dar, d. h. das Zuschneiden des Bereichs aus Bild I. CLIPVG unterstützt auch ein Patch-basiertes Verbesserungsschema ähnlich dem in CLIPstyler, d. h. mehrere Patches können aus jedem ROI weiter zufällig beschnitten werden, und der CLIP-Verlust wird für jeden Patch basierend auf der Textbeschreibung berechnet, die dem ROI entspricht. Der Gesamtverlust ist die Summe der ROI-CLIP-Verluste aller Regionen, also Eine Region kann hier ein ROI oder ein vom ROI abgeschnittener Patch sein. ist der Gewichtsverlust, der jedem Bereich entspricht. CLIPVG optimiert den Vektorparametersatz Θ basierend auf der obigen Verlustfunktion. Bei der Optimierung können Sie auch nur auf eine Teilmenge von Θ abzielen, z. B. auf Formparameter, Farbparameter oder einige Vektorelemente, die einem bestimmten Bereich entsprechen. Im experimentellen Teil verifizierte CLIPVG zunächst die Wirksamkeit mehrerer Runden von Vektorisierungsstrategien und Vektordomänenoptimierung durch Ablationsexperimente, verglich sie dann mit bestehenden Basislinien und demonstrierte schließlich einzigartige Anwendungsszenarien. Ablationsexperiment Die Studie verglich zunächst die Wirkung einer Vektorisierungsstrategie mit mehreren Runden (Multi-Round) und nur einer Vektorisierungsrunde (One-Shot). Die erste Zeile in der Abbildung unten ist das erste Ergebnis nach der Vektorisierung und die zweite Zeile ist das bearbeitete Ergebnis. wobei Nc die Genauigkeit der Vektorisierung darstellt. Es ist ersichtlich, dass mehrere Vektorisierungsrunden nicht nur die Rekonstruktionsgenauigkeit des Anfangszustands verbessern, sondern auch die Risse zwischen bearbeiteten Vektorelementen wirksam beseitigen und die Detailleistung verbessern. Um die Eigenschaften der Vektordomänenoptimierung weiter zu untersuchen, vergleicht das Papier die Auswirkungen von CLIPVG (Vektordomänenmethode) und CLIPstyler (Pixeldomänenmethode) unter Verwendung verschiedener Patchgrößen zur Verbesserung. Die erste Zeile in der Abbildung unten zeigt die Wirkung von CLIPVG bei Verwendung verschiedener Patchgrößen und die zweite Zeile zeigt die Wirkung von CLIPstyler. Die Textbeschreibung lautet „Doctor Strange“. Die Auflösung des gesamten Bildes beträgt 512x512. Es ist ersichtlich, dass bei einer kleinen Patchgröße (128 x 128 oder 224 x 224) sowohl CLIPVG als auch CLIPstyler in kleinen lokalen Bereichen die repräsentativen roten und blauen Farben von „Doctor Strange“ anzeigen, sich die Semantik des gesamten Gesichts jedoch nicht wesentlich ändert . . Dies liegt daran, dass die CLIP-Anleitung zu diesem Zeitpunkt nicht auf das gesamte Bild angewendet wird. Wenn CLIPVG die Patchgröße auf 410 x 410 erhöht, können Sie offensichtliche Änderungen in der Charakteridentität erkennen, einschließlich Frisuren und Gesichtszügen, die entsprechend den Textbeschreibungen effektiv bearbeitet werden. Wenn die Patch-Verbesserung entfernt wird, werden der semantische Bearbeitungseffekt und die Detailklarheit verringert, was darauf hindeutet, dass die Patch-Verbesserung immer noch einen positiven Effekt hat. Im Gegensatz zu CLIPVG kann CLIPstyler die Identität des Charakters immer noch nicht ändern, wenn der Patch größer ist oder der Patch entfernt wird, sondern nur die Gesamtfarbe und einige lokale Texturen. Der Grund dafür ist, dass die Methode zur Vergrößerung der Patchgröße im Pixelbereich die zugrunde liegenden Einschränkungen verliert und in ein lokales Optimum fällt. Diese Vergleichsreihe zeigt, dass CLIPVG die Detailbeschränkungen in der Vektordomäne effektiv nutzen und eine semantische Bearbeitung auf hoher Ebene in Kombination mit dem größeren CLIP-Bereich (Patchgröße) erreichen kann, was mit Pixeldomänenmethoden schwer zu erreichen ist. Vergleichsexperiment Im Vergleichsexperiment verglich die Studie zunächst CLIPVG mit zwei Pixel-Domain-Methoden, die jedes Bild bearbeiten können, einschließlich Disco Diffusion und CLIPstyler, wie Sie im Bild unten als Beispiel sehen können Bei „Selbstporträt von Vincent van Gogh“ kann CLIPVG sowohl die Charakteridentität als auch den Malstil bearbeiten, während die Pixeldomänenmethode nur einen davon erreichen kann. Für „Gypsophila“ kann CLIPVG die Anzahl und Form der Blütenblätter genauer bearbeiten als die Basismethode. In den Beispielen „Jocker, Heath Ledger“ und „A Ford Mustang“ kann CLIPVG auch die Gesamtsemantik stark verändern. Relativ gesehen ist Disco Diffusion anfällig für lokale Fehler, während CLIPstyler im Allgemeinen nur die Textur und Farbe anpasst. (Von oben nach unten: Van-Gogh-Gemälde, Schleierkraut, Heath Ledger Joker, Ford Mustang) Die Forscher verglichen dann die Bilder in bestimmten Bereichen (um das menschliche Gesicht als zu nehmen). Ein Beispiel) Zu den Pixeldomänenmethoden gehören StyleCLIP, DiffusionCLIP und StyleGAN-NADA. Aufgrund des eingeschränkten Einsatzbereichs ist die Generierungsqualität dieser Basismethoden im Allgemeinen stabiler. In dieser Reihe von Vergleichen zeigt CLIPVG immer noch, dass die Wirkung den bestehenden Methoden nicht nachsteht, insbesondere ist der Grad der Konsistenz mit dem Zieltext oft höher. (Von oben nach unten: Doctor Strange, White Walkers, Zombies) Mit den Eigenschaften von Vektorgrafiken und Verlustfunktionen auf ROI-Ebene kann CLIPVG eine Reihe innovativer Gameplays unterstützen, die mit vorhandenen Methoden nur schwer zu erreichen sind. Beispielsweise wird der Bearbeitungseffekt des am Anfang dieses Artikels gezeigten Mehrpersonenbilds durch die Definition verschiedener Textbeschreibungen auf ROI-Ebene für verschiedene Charaktere erreicht. Die linke Seite des Bildes unten ist die Eingabe, die Mitte ist das Bearbeitungsergebnis der Textbeschreibung auf ROI-Ebene und die rechte Seite ist das Ergebnis des gesamten Bildes mit nur einer Gesamttextbeschreibung. Die den Bereichen A1 bis A7 entsprechenden Beschreibungen lauten 1. „Justice League Six“, 2. „Aquaman“, 3. „Superman“, 4. „Wonder Woman“, 5. „Cyborg“ (Cyborg), 6. „Flash“. , DC Superhero“ (The Flash, DC) und 7. „Batman“ (Batman). Es ist ersichtlich, dass die Beschreibung auf ROI-Ebene für jedes Zeichen separat bearbeitet werden kann, die Gesamtbeschreibung jedoch keine wirksamen individuellen Identitätsmerkmale generieren kann. Da die ROIs einander überlappen, ist es für bestehende Methoden schwierig, die Gesamtkoordination von CLIPVG zu erreichen, selbst wenn jedes Zeichen einzeln bearbeitet wird. CLIPVG kann durch die Optimierung einiger Vektorparameter auch eine Vielzahl spezieller Bearbeitungseffekte erzielen. Die erste Zeile im Bild unten zeigt den Effekt, wenn nur ein Teilbereich bearbeitet wird. Die zweite Zeile zeigt den Schriftgenerierungseffekt, der durch das Sperren der Farbparameter und die Optimierung nur der Formparameter entsteht. Die dritte Zeile ist das Gegenteil der zweiten Zeile und erreicht den Zweck der Neufärbung, indem nur die Farbparameter optimiert werden. (von oben nach unten: Teilbereichsbearbeitung, Schriftstilisierung, Bildfarbänderung) Vektorbildgenerierung
Experimentelle Ergebnisse
Mehr Anwendungen
Das obige ist der detaillierte Inhalt vonZum ersten Mal verlassen Sie sich nicht auf ein generatives Modell und lassen die KI Bilder in nur einem Satz bearbeiten!. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!