2 Punkte von GN⁺ 2024-03-02 | 2 Kommentare | Auf WhatsApp teilen

JPEG XL und die Pareto-Front

  • Veröffentlichung von libjxl Version 0.10: Eine neue Version von libjxl, der Referenzimplementierung von JPEG XL, wurde veröffentlicht. Die wichtigste Verbesserung dieser Version ist die vollständige Implementierung der API für „Streaming-Encoding“.
  • Streaming-Encoding-API: Ermöglicht es, große Bilder in „Teilen“ zu kodieren. Anstatt das gesamte Bild auf einmal zu verarbeiten, ist nun eine speicherschonende Verarbeitung möglich.

Verlustfrei: Große Verbesserungen bei Speichernutzung und Geschwindigkeit

  • Verbesserungen gegenüber libjxl Version 0.9: In der vorherigen Version war verlustfreies JPEG-XL-Encoding speicherintensiv und zeitaufwendig. Beim Kodieren großer Bilder konnte das zu erheblichen Problemen führen.
  • Beispiel eines NASA-Erdnachtbildes: Um ein Bild mit 13.500 × 6.750 Pixeln zu komprimieren, benötigte libjxl 0.9 etwa 8 GB RAM und mehr als 2 Minuten. Nach dem Upgrade auf libjxl 0.10 lässt sich dasselbe Bild mit 0,7 GB RAM in nur 30 Sekunden komprimieren.
  • Ergebnisse bei verschiedenen Effort-Einstellungen: Eine Tabelle vergleicht Speichernutzung, Zeit und Kompressionsgröße für verschiedene Effort-Einstellungen (e1~e9). Mit höheren Effort-Einstellungen verbessert sich die Kompression, jedoch nicht linear.

Pareto-Front

  • Vergleich von Kompressionstechniken: Nicht nur die Größe der komprimierten Datei ist wichtig, sondern auch die Encoding-Geschwindigkeit. Daher müssen zwei Dimensionen betrachtet werden: Kompressionsdichte und Encoding-Geschwindigkeit.
  • Pareto-optimal: Wenn sich mit keiner anderen Methode dieselbe Kompressionsdichte in kürzerer Zeit erreichen lässt. Eine pareto-optimale Methode liefert für ein gegebenes Zeitbudget die kleinste Datei.
  • Visualisierung der Pareto-Front: Visualisiert mit Diagrammen, die Encoding-Geschwindigkeit und Kompressionsdichte zeigen. Mithilfe verschiedener Bildersätze werden durchschnittliche Geschwindigkeit und Kompressionsdichte verglichen.

Nichtfotografische Bilder

  • Bedeutung der Auswahl von Testbildern: Wenn die meisten Bilder Fotos sind, ist die Kompression aufgrund natürlichen Rauschens schwieriger.
  • Bei Comic-Bildern: Nichtfotografische Bilder lassen sich deutlich besser komprimieren als Fotos. Comic-Bilder können auf etwa 4 bpp komprimiert werden.
  • Verbesserungen in libjxl: Die neue Version von libjxl ist deutlich schneller als die vorherige und erzielt zugleich bessere Kompressionsraten.

Zu verlustbehafteter Kompression

  • Benchmark für verlustbehaftete Kompression: Wichtig sind nur Kompressionsgröße und Geschwindigkeit. Bildqualität muss als dritte Dimension berücksichtigt werden.
  • Leistung verlustbehafteter Bild-Codecs und Encoder: Sie können sich an unterschiedlichen Qualitätspunkten unterschiedlich verhalten. Ein Encoder, der bei hoher Qualität gut funktioniert, muss nicht zwangsläufig auch bei niedriger Qualität gut funktionieren.

Verlustbehaftete Pareto-Front

  • Getestete Encoder: Aktuelle Versionen verschiedener Encoder wurden getestet, darunter libjpeg-turbo, sjpeg, mozjpeg, jpegli, libavif / libaom, libjxl, libwebp und libheif.
  • Mittlere Qualität: Ergebnisse bei Einstellungen, die einem SSIMULACRA2-Score von 60 entsprechen. Besonders relevant, wenn geringeres Seitengewicht wichtiger ist als Bildtreue.
  • Mittlere bis hohe Qualität und hohe Qualität: Ergebnisse bei Einstellungen, die SSIMULACRA2-Scores von 70 und 85 entsprechen. Bei hoher Qualität besetzt JPEG XL überwiegend die Pareto-Front.

Fazit

  • Verbesserungen in libjxl Version 0.10: Der Speicherverbrauch wurde deutlich reduziert, insbesondere die Geschwindigkeit des multithreaded verlustfreien Encodings wurde verbessert.
  • Etablierung der Position von JPEG XL: Es wurde bestätigt, dass JPEG XL über verschiedene Geschwindigkeitseinstellungen hinweg pareto-optimal ist – von hoher Qualität bis hin zu visuell verlustfreier Qualität.
  • Die anhaltende Attraktivität von JPEG: Der neue jpegli-Encoder bringt Verbesserungen bei Geschwindigkeit und Kompression. Wenn extrem schnelles Encoding erforderlich ist, könnte JPEG weiterhin die beste Wahl sein.
  • Beitrag von Cloudinary: Aktive Mitwirkung daran, durch den Einsatz modernster Technologien und Erkenntnisse im Bereich Bildkompression die bestmögliche Nutzererfahrung bereitzustellen.

Meinung von GN⁺

  • Die Veröffentlichung von libjxl 0.10 stellt einen wichtigen Fortschritt in der Bildkompressionstechnologie dar. Vor allem die drastischen Verbesserungen bei Speichernutzung und Encoding-Geschwindigkeit bei der Verarbeitung großer Bilder dürften den Nutzern erhebliche Vorteile bringen.
  • Die Betonung, dass JPEG XL bei verschiedenen Qualitäts- und Geschwindigkeitseinstellungen pareto-optimal ist, ist hilfreich, weil sie Nutzern dabei hilft, das optimale Gleichgewicht zwischen Bildqualität und Dateigröße zu finden.
  • Aus kritischer Sicht kann die Einführung neuer Technologien wie libjxl Kompatibilitätsprobleme mit bestehender Infrastruktur verursachen. Daher ist eine schrittweise Einführung unter Berücksichtigung der Integration in bestehende Systeme nötig.
  • Bei der Wahl einer Bildkompressionstechnologie sollten mehrere Faktoren berücksichtigt werden, darunter Encoding- und Decoding-Geschwindigkeit, Dateigröße sowie die unterstützten Plattformen und Geräte. JPEG XL ist eine attraktive Option für hochwertige Bildkompression, wird jedoch nicht von allen Nutzern und Systemen breit unterstützt.
  • Die Vorteile der Einführung dieser Technologie sind geringerer Speicherverbrauch, höhere Encoding-Geschwindigkeit und kleinere Dateigrößen; die Nachteile können Kompatibilitätsprobleme mit bestehenden Systemen und die Lernkurve einer neuen Technologie sein.

2 Kommentare

 
dofuuz 2024-03-08

Der jpegli-Encoder verlängert nach mozjpeg nun erneut das Leben von JPG ...
Er wurde zwar vom JXL-Lager entwickelt, könnte aber ironischerweise die Verbreitung von JXL behindern ...

 
GN⁺ 2024-03-02
Hacker-News-Kommentare
  • Die verlustfreie Kompression des WebP-Formats ist sehr leistungsfähig

    Die verlustfreie Kompression von WebP ist PNG oder OptiPNG in Bezug auf Leistung und Geschwindigkeit deutlich überlegen und wird derzeit online breit unterstützt. Außerdem ist sie deutlich besser als verlustfreies AVIF.

  • Einschätzung der Fähigkeit von JPEG, bei niedrigen Qualitätseinstellungen Details zu bewahren

    JPEG ist selbst bei niedrigen Qualitätseinstellungen hervorragend darin, die Gesamtqualität eines Bildes zu erhalten und Details in einen abstrakten Kunststil zu verwandeln. JXL und AVIF werden dagegen unscharf.

  • Schwierigkeiten von Nutzern, detaillierte Informationen zum JPEG-XL-Format zu finden

    Es ist schwer, Websites oder Dokumente zu finden, die jeden Schritt des JPEG-XL-Formats im Detail erklären. JPEG XL enthält viele innovative Techniken, aber es gibt nur wenige Materialien, mit denen man diese genauer verstehen kann.

  • Zweifel an einem Artikel mit Fokus auf Kodierungsgeschwindigkeit

    Auf modernen Computern ist die Dekodierungsgeschwindigkeit kein großes Problem, trotzdem ist es interessant, sich Daten zur Geschwindigkeit anzusehen.

  • Bewertung der Qualität und Kompressionsfähigkeit von JPEG XL

    JPEG XL ist hervorragend darin, schon mit einfachen Einstellungen hochwertige komprimierte Bilder zu erzeugen. Andere Codecs benötigen je nach Bildtyp unterschiedliche Qualitätseinstellungen, um ähnliche Ergebnisse zu erzielen.

  • Neue Parallelverarbeitungsbibliothek, die durch das JPEG-XL-Projekt entwickelt wurde

    Das JPEG-XL-Projekt entwickelte eine neue Parallelverarbeitungsbibliothek namens Highway. Diese Bibliothek wird nicht nur für JPEG XL verwendet, sondern auch für Googles aktuelles Gemma-AI-Modell.

  • Reaktion auf die Aufnahme des QOI-Formats

    Es ist interessant, dass das QOI-Format, das in Software für die breite Öffentlichkeit nicht standardmäßig unterstützt wird und lediglich auf ein ordentliches Niveau abzielt, in den Benchmark zur Kodierung nicht-fotografischer Bilder aufgenommen wurde.

  • Neue Version von libjxl reduziert den Speicherverbrauch erheblich

    Die neue Version von libjxl verringert den Speicherverbrauch sowohl bei verlustbehafteter als auch bei verlustfreier Kompression deutlich und verbessert besonders die Geschwindigkeit der verlustfreien Multithread-Kodierung. Der Artikel ist ebenfalls gut geschrieben.

  • Vorteile bei der Re-Kompression alter JPEG-Dateien mit JPEG XL

    Mit JPEG XL lassen sich alte JPEG-Dateien erneut komprimieren, wodurch 15 % bis 30 % Speicherplatz eingespart werden können, während die ursprünglichen JPG-Dateien bitgenau vollständig wiederhergestellt werden können.

  • Hinweis auf mögliches zusätzliches Einsparpotenzial bei verlustfreiem AVIF

    Es wird erwartet, dass bei verlustfreiem AVIF noch größere Einsparungen möglich sind.