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.


So erstellen Sie einen Batteriezustandsbericht unter Windows 8 oder Windows 10

So erstellen Sie einen Batteriezustandsbericht unter Windows 8 oder Windows 10

Windows 8 und 10 enthalten beide eine ausgeblendete "Batteriebericht" -Funktion. Erstellen Sie einen Bericht, um Gesundheitsinformationen über Ihren Akku, seine Kapazität im Laufe der Zeit und andere interessante Statistiken zu sehen. RELATED: Verwenden Sie PowerCfg in Windows 7, um die Energieeffizienz auszuwerten Diese Batterieberichterstattung ist eingebaut In den Befehl powercfg müssen Sie also in die Eingabeaufforderung oder PowerShell wechseln, um den Befehl auszuführen.

(how-to)

So geben Sie Ihren Nest Thermostat mit anderen Benutzern frei

So geben Sie Ihren Nest Thermostat mit anderen Benutzern frei

Wenn Sie mehrere Personen in Ihrem Haus haben und alle von ihren Geräten aus Zugriff auf das Nest Thermostat haben sollen, können Sie den Zugriff teilen zum Gerät mit anderen Benutzern. Zugegebenermaßen möchten Sie vielleicht nicht, dass Ihre Kinder Zugang zu Ihrem Nest Thermostat haben, aber die gemeinsame Nutzung mit Ihrem Partner kann praktisch sein, wenn einer von Ihnen den Thermostat von Ihrem Telefon aus einstellen möchte.

(how-to)