
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.
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?
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 wählen Sie aus, welche Mailbox auf Ihrer Apple Watch angezeigt wird
Die Mail-App auf Ihrer Apple Watch ermöglicht es Ihnen, E-Mails anzuzeigen und sogar auf einige zu antworten. Wenn Sie jedoch mehrere E-Mail-Konten haben und viele E-Mails erhalten, sollten Sie die Anzahl der E-Mails auf einmal beschränken. Ihre Apple Watch zeigt Ihnen E-Mails aus allen Posteingängen oder Postfächern an.
Was Sie über Vulkan wissen müssen, das verspricht schnellere Spiele auf jeder Plattform
Microsofts DirectX 12 und Apples Metal sind Grafik-Plattformen der nächsten Generation. Sie bieten einen niedrigeren Zugriff auf Grafikhardware, sodass Spiele-Programmierer mehr Leistung aus der Hardware herausholen können. Vulkan ist die plattformübergreifende Antwort auf die Technologien von Microsoft und Apple.