de.phhsnews.com


de.phhsnews.com / Ist das PNG-Format verlustfrei, da es einen Komprimierungsparameter hat?

Ist das PNG-Format verlustfrei, da es einen Komprimierungsparameter hat?


Das PNG-Format soll ein verlustfreies Format sein, aber wenn Sie ein Bild als PNG-Datei speichern, werden Sie aufgefordert Wählen Sie eine Komprimierungsstufe. Bedeutet das, dass das PNG-Format überhaupt nicht verlustfrei ist? Der heutige SuperUser F & A Beitrag hilft, die Verwirrung für einen neugierigen Leser zu klären.

Die heutige Question & Answer Session kommt dank SuperUser - einer Unterteilung von Stack Exchange, einer Community-gesteuerten Gruppierung von Q & A-Websites - zustande.

Die Frage

SuperUser reader pkout möchte wissen, ob die Qualität eines PNG-Bildes durch die gewählte Komprimierungsstufe beeinflusst wird:

Wie ich es verstehe, verwenden PNG-Dateien verlustfreie Komprimierung. Wenn ich jedoch einen Bildbearbeitungsprogramm wie Gimp verwende und versuche, ein Bild als PNG-Datei zu speichern, wird nach einer Komprimierungsstufe zwischen 0 und 9 gefragt.

Wenn es einen Komprimierungsparameter hat, der die visuelle Genauigkeit beeinflusst das komprimierte Bild, wie ist PNG dann verlustfrei? Kann mir bitte jemand das erklären? Bekomme ich verlustfreies Verhalten nur, wenn ich den Komprimierungsgrad auf 9 festlege?

Gibt es einen Unterschied in der Qualität des Bildes, abhängig von der gewählten Komprimierungsstufe?

Die Antwort

SuperUser-Mitwirkende LordNeckbeard und jjlin haben die Antwort für uns. Zuerst, LordNeckbeard:

PNG ist komprimiert, aber verlustfrei

Der Komprimierungsgrad ist ein Kompromiss zwischen Dateigröße und Codier- / Decodiergeschwindigkeit. Zur übermäßigen Verallgemeinerung haben auch Nicht-Bildformate wie FLAC ähnliche Konzepte.

Unterschiedliche Komprimierungsstufen, gleiche dekodierte Ausgabe

Obwohl die Dateigrößen aufgrund der unterschiedlichen Komprimierungsstufen unterschiedlich sind, ist die tatsächliche dekodierte Ausgabe identisch. Sie können die MD5-Hashes der dekodierten Ausgaben mit ffmpeg mit dem MD5-Muxer vergleichen. Dies wird am besten anhand einiger Beispiele gezeigt.

PNG-Dateien erstellen

  • Standardmäßig verwendet ffmpeg -compression_level 100 für die PNG-Ausgabe.
  • Ein kurzer, schlampiger Test zeigte, dass 100 (die höchste Komprimierungsstufe) ungefähr drei benötigte mal länger zu kodieren und fünf mal länger zu dekodieren als 0 (die niedrigste Komprimierungsstufe) in diesem Beispiel

Dateigröße vergleichen

PNG-Dateien entschlüsseln und MD5-Hashes anzeigen

Da beide Hashes gleich sind, du kann sichergestellt werden, dass die dekodierten Ausgaben (die unkomprimierten Raw-Dateien) genau gleich sind.

Gefolgt von der Antwort von jjlin:

PNG ist verlustfrei. GIMP verwendet in diesem Fall höchstwahrscheinlich nicht die beste Wortwahl.

Stellen Sie es sich als Komprimierungsqualität oder Komprimierungsstufe vor. Mit geringerer Komprimierung erhalten Sie eine größere Datei, aber es dauert weniger Zeit zu produzieren, während mit höherer Komprimierung, erhalten Sie eine kleinere Datei, die länger dauert.

Normalerweise erhalten Sie abnehmende Renditen, dh nicht so viel Größe verglichen mit der Zunahme der Zeit, die es braucht, wenn man die höchsten Komprimierungsstufen erreicht, aber es liegt an Ihnen.


Haben Sie etwas zur Erklärung hinzuzufügen? Ton in den Kommentaren ab. Möchten Sie mehr Antworten von anderen technisch versierten Stack Exchange Benutzern lesen? Sehen Sie sich den vollständigen Diskussionsfaden hier an.


Tab-Overload: 10 Tipps zum Arbeiten mit vielen Browser-Tabs

Tab-Overload: 10 Tipps zum Arbeiten mit vielen Browser-Tabs

Zu ​​viele Browser-Tabs! Es ist ein Problem, das jeder irgendwann hat. Für alle in unseren Desktops eingebauten Fensterverwaltungstricks verwenden wir oft nur ein einziges Browserfenster, das mit Tabs gefüllt ist. Die meisten dieser Tricks funktionieren in allen Browsern, aber nicht jeder Trick hat es in jedem Browser geschafft.

(how-to)

So verwenden Sie die DirectX-Diagnose in Windows

So verwenden Sie die DirectX-Diagnose in Windows

DirectX ist eine Sammlung von APIs, die in Windows für Multimedia- und Videoprogramme verwendet werden, und ist besonders wichtig für Spieler. Das DirectX-Diagnoseprogramm zeigt eine Fülle von Informationen zu DirectX an und ermöglicht außerdem grundlegende Diagnosetests auf dem DirectX-System. Wenn Sie überprüfen möchten, welche Version von DirectX Sie ausführen, oder sogar eine Datei voller Diagnoseinformationen zur Fehlerbehebung ausgeben, gehen Sie folgendermaßen vor: VERWANDT: Was ist Direct X 12 und warum ist es wichtig?

(how-to)