In letzter Zeit hat sich die stabile Diffusion zu einer aufstrebenden Forschungsrichtung entwickelt. Ein Blogger namens Matthias Bühlmann versuchte, die Leistungsfähigkeit dieses Modells experimentell zu untersuchen und stellte fest, dass Stable Diffusion ein sehr leistungsfähiger verlustbehafteter Bildkomprimierungscodec ist. Er hat einen Blog geschrieben, der diesen experimentellen Analyseprozess beschreibt. Das Folgende ist der ursprüngliche Blogtext.
Zuerst gibt Matthias Bühlmann die Komprimierungsergebnisse der Stable Diffusion-Methode und von JPG und WebP unter Bedingungen mit hohem Komprimierungsfaktor an:
San Francisco Scenery Figure, aus Von links nach rechts: JPG (6,16 kB), WebP (6,80 kB), Stabile Diffusion: (4,96 kB).
Candy Shop, von links nach rechts: JPG (5,68 kB), WebP (5,71 kB), Stable Diffusion (4,98 kB).
Tierfotos, von links nach rechts: JPG (5,66 kB), WebP (6,74 kB), Stable Diffusion (4,97 kB).
Diese Beispiele zeigen deutlich, dass durch die Komprimierung von Bildern mit Stable Diffusion im Vergleich zu JPG und WebP eine bessere Bildqualität bei kleineren Dateigrößen erhalten bleibt.
Matthias Bühlmann analysierte das Funktionsprinzip von drei seriell trainierten künstlichen neuronalen Netzen:
VAE kodiert und dekodiert Bilder im Bildraum in eine zugrunde liegende räumliche Darstellung. Die latente räumliche Darstellung des Quellbildes (512 x 512, 3 x 8 oder 4 x 8 Bit) hat eine geringere Auflösung (64 x 64) und eine höhere Genauigkeit (4 x 32 Bit).
VAE lernt während des Trainingsprozesses von selbst. Während das Modell schrittweise trainiert wird, sieht die latente Raumdarstellung verschiedener Versionen des Modells möglicherweise wie folgt aus (umgebildet auf 4-Kanal-Farbbild):
Wenn die latenten Merkmale erneut erweitert und als Farbwerte interpretiert werden (unter Verwendung des Alphakanals), sind die Hauptmerkmale des Bildes weiterhin sichtbar und die VAE kodiert auch höher aufgelöste Merkmale in Pixelwerten.
Zum Beispiel liefert ein VAE-Codierungs-/Decodierungs-Roundtrip das folgende Ergebnis:
Es ist erwähnenswert, dass dieser Roundtrip nicht verlustfrei ist. Beispielsweise sind die weißen Wörter auf dem blauen Band im Bild nach der Dekodierung etwas schlechter lesbar. Die VAE des Stable Diffusion v1.4-Modells ist im Allgemeinen nicht sehr gut bei der Darstellung kleiner Texte und Gesichter.
Wir wissen, dass der Hauptzweck der stabilen Diffusion darin besteht, Bilder basierend auf Textbeschreibungen zu generieren, was erfordert, dass das Modell mit der latenten Raumdarstellung des Bildes arbeitet. Das Modell verwendet ein trainiertes U-Net, um das latente Raumbild iterativ zu entrauschen und auszugeben, was es im Rauschen „sieht“ (vorhersagt), ähnlich wie wir Wolken manchmal als Formen oder Gesichter sehen. Im iterativen Entrauschungsschritt weist ein drittes ML-Modell (Text-Encoder) U-Net an, zu versuchen, unterschiedliche Informationen anzuzeigen.
Matthias Bühlmann hat analysiert, wie die durch VAE erzeugte latente Repräsentation effektiv komprimiert werden kann. Er fand heraus, dass das Abtasten der latenten Darstellung in VAE oder die Anwendung vorhandener verlustbehafteter Bildkomprimierungsmethoden auf die latente Darstellung die Qualität des rekonstruierten Bildes erheblich beeinträchtigt, während der VAE-Dekodierungsprozess relativ robust für die Qualität der latenten Darstellung zu sein scheint.
Matthias Bühlmann quantifizierte die latente Darstellung vom Gleitkomma bis zu vorzeichenlosen 8-Bit-Ganzzahlen und fand nur sehr kleine Rekonstruktionsfehler. Wie in der Abbildung unten gezeigt, links: 32-Bit-Gleitkomma-Potenzialdarstellung; Mitte: Grundwahrheit, rechts: 8-Bit-Ganzzahl-Potenzialdarstellung.
Er stellte außerdem fest, dass durch weitere Quantisierung durch Paletten- und Dithering-Algorithmen unerwartet gute Ergebnisse erzielt werden. Bei der direkten Dekodierung mit VAE führt die palettierte Darstellung jedoch zu einigen sichtbaren Artefakten:
Links: 32-Bit-Latentdarstellung; Mitte: 8-Bit-quantisierte Latentdarstellung; Rechts: Bandpalettierung Latente 8-Bit-Darstellung mit Floyd-Steinberg-Jitter
Die palettierte Darstellung mit Floyd-Steinberg-Jitter führt zu Rauschen, das die Dekodierungsergebnisse verzerrt. Deshalb nutzte Matthias Bühlmann U-Net, um das durch Jitter verursachte Rauschen zu beseitigen. Nach 4 Iterationen kommt das Rekonstruktionsergebnis optisch der unquantisierten Version sehr nahe:
Rekonstruktionsergebnis (links: palettierte Darstellung mit Floyd-Steinberg-Jitter; Mitte: nach vier Iterationen Rauschen; rechts: Ground Truth) .
Das Ergebnis ist zwar sehr gut, führt jedoch zu einigen Artefakten, wie zum Beispiel dem glänzenden Schatten auf dem mittleren Symbol oben.
Obwohl die Ergebnisse von Stable Diffusion-komprimierten Bildern subjektiv viel besser sind als JPG- und WebP-Bilder, hat Stable Diffusion aus Sicht von PSNR, SSIM und anderen Indikatoren keine offensichtlichen Vorteile.
Wie in der Abbildung unten gezeigt, ist Stable Diffusion als Codec zwar viel besser als andere Methoden bei der Beibehaltung der Bildgranularität, Merkmale wie die Form von Objekten im Bild können sich jedoch aufgrund von Komprimierungsartefakten ändern.
Links: JPG-Komprimierung; Mitte: Ground Truth; Rechts: Stabile Diffusionskomprimierung.
Es ist erwähnenswert, dass das aktuelle Stable Diffusion v1.4-Modell Textinformationen und Gesichtsmerkmale mit sehr kleinen Schriftarten während des Komprimierungsprozesses nicht gut bewahren kann, aber das Stable Diffusion v1.5-Modell leistet im Gesicht gute Arbeit Generation Es gab Verbesserungen.
Links: Ground Truth; Mitte: nach VAE-Roundtrip (latente 32-Bit-Merkmale); Rechts: Dekodierte Ergebnisse aus palettierten, entrauschten 8-Bit-Latentmerkmalen.
Nach der Veröffentlichung des Blogs sorgte Matthias Bühlmanns experimentelle Analyse für große Diskussionen.
Matthias Bühlmann selbst glaubt, dass der Bildkomprimierungseffekt von Stable Diffusion besser ist als erwartet, und U-Net scheint in der Lage zu sein, das durch Dithering verursachte Rauschen effektiv zu beseitigen. Zukünftige Versionen des Stable Diffusion-Modells verfügen jedoch möglicherweise nicht mehr über diese Bildkomprimierungsfunktion.
Einige Internetnutzer stellten jedoch die Frage: „VAE selbst wird für die Bildkomprimierung verwendet.“ Beispielsweise verwendet die Transformer-basierte Bildkomprimierungsmethode TIC die VAE-Architektur, daher scheint Matthias Bühlmanns Experiment übertrieben zu sein.
Was haltet ihr davon?
Das obige ist der detaillierte Inhalt vonKleinere Dateien, höhere Qualität. Kann die beliebte Stable Diffusion Bilder komprimieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!