Verlustfreie Komprimierung verständlich erklärt

 

Verlustfreie Komprimierung ist das Verfahren, auf das Sie sich verlassen, wenn ein Bild nach dem Speichern bis auf den letzten Farbwert so aussehen muss wie vorher. Das Wappen Ihres Vereins, ein Lageplan zur Anfahrt oder der Screenshot einer Anleitung vertragen keine Ungenauigkeit: Schon ein grauer Schleier um eine Linie oder ein Buchstabe fällt auf. Ein solches Bild kann trotzdem deutlich kleiner werden, weil das Format die Daten geschickter aufschreibt, ohne eine einzige Zahl wegzulassen. Wie das geht und wo die Grenzen liegen, zeigt diese Seite am Beispiel einer eigenen Bildergalerie.

Schema zur verlustfreien Komprimierung: Bild wird kleiner und bleibt Pixel für Pixel identisch zum Original

Was die verlustfreie Komprimierung mit den Daten macht

Nehmen Sie eine einzelne Zeile aus einem Screenshot, 1280 Pixel breit. Links stehen vielleicht 900 weiße Punkte am Stück, dann ein paar Dutzend schwarze für einen Schriftzug, dann wieder Weiß. Unverpackt steht in der Datei 900 Mal hintereinander derselbe Farbwert. Ein Packverfahren muss diese Wiederholung nicht 900 Mal aufschreiben, ihm genügt eine kurze Notiz, aus der beim Öffnen wieder exakt dieselbe Folge von 900 weißen Pixeln entsteht. Es fehlt nichts, es wurde nur kürzer notiert. Wie diese Notiz aussieht, unterscheidet sich je nach Format.

PNG geht dabei in zwei Schritten vor. Zuerst sagt es jedes Pixel aus seinen Nachbarn voraus, etwa aus dem Punkt links oder darüber, und speichert nur die Abweichung von dieser Vorhersage. In einem gleichmäßigen Farbverlauf ist die Abweichung fast überall null oder sehr klein. Danach sucht ein allgemeiner Packalgorithmus nach Bytefolgen, die schon einmal vorkamen, und ersetzt sie durch einen kurzen Verweis wie „die 40 Bytes von weiter vorn noch einmal“. GIF arbeitet ähnlich mit einem Wörterbuch wiederkehrender Folgen, rechnet aber immer mit einer Palette von höchstens 256 Farben.

Das Diagramm zeigt beide Schritte von PNG vereinfacht an einer Zeile aus zehn Pixeln. Aus den Helligkeitswerten werden zuerst Differenzen zum linken Nachbarn, dann ersetzt ein Verweis die Folge, die sich wiederholt. Darunter stehen gemessene Dateigrößen für einen Screenshot und ein Handyfoto, gespeichert mit denselben Stufen, die auch die Galerie verwendet.

Animiertes Diagramm: Eine Zeile aus zehn Pixeln wird über Differenzen und einen Verweis auf eine frühere Folge verlustfrei gepackt und identisch entpackt, darunter gemessene Größen von PNG und JPEG für Screenshot und Foto
Vereinfachtes Prinzip von PNG: Differenzen und Verweise machen die Datei kleiner, entpackt kommt jeder Wert unverändert zurück.

Wo verlustfreie Komprimierung viel bringt und wo wenig

Ob sich die verlustfreie Komprimierung lohnt, können Sie meist schon am Motiv ablesen. Für die Tabelle haben wir drei typische Bilder einer Vereinsgalerie mit der Bildbibliothek GD gespeichert, die auch das Bildergalerie-Script verwendet. „Unverpackt“ meint 3 Byte je Pixel.

MotivUnverpacktPNG, Stufe 1 und 9JPEG, Qualität 85Bessere Wahl
Screenshot der Galerie-Einstellungen, 830 × 7781.892 KB41 KB und 23 KB114 KBPNG
Testwappen mit fünf Flächenfarben und Schriftzug, 600 × 6001.055 KB15 KB und 8 KB25 KBPNG oder GIF
Handyfoto, 3072 × 230420.736 KB13.788 KB und 13.679 KB1.987 KBJPEG

Beim Screenshot und beim Wappen schrumpft PNG die Daten auf rund ein bis zwei Prozent und schlägt dabei sogar JPEG. Beim Foto bleiben zwei Drittel übrig, fast siebenmal so viel wie beim JPEG. Der Grund: Rauschen der Kamera, Laub, Haut und Stoff sorgen dafür, dass fast kein Pixel genau seinem Nachbarn gleicht. Es gibt kaum Wiederholungen, die sich kürzer schreiben ließen. Auffällig ist auch der Unterschied zwischen den Stufen: Beim Screenshot und beim Wappen halbiert Stufe 9 die Datei fast noch einmal, beim Foto bringt sie fast nichts.

Eine Lehre aus der Messung betrifft die Originaldatei des Screenshots. Sie war 1.896 KB groß, also praktisch unverpackt, weil das Aufnahmeprogramm ohne Kompression gespeichert hatte. Solche Dateien kommen vor, und es lohnt sich, sie vor dem Hochladen in einem Bildprogramm neu als PNG zu speichern. Am Bild ändert das nichts.

Oft genannt wird außerdem WebP. Das Format kennt einen eigenen verlustfreien Modus, dessen Dateien laut Google im Schnitt rund ein Viertel kleiner sind als vergleichbare PNG. Für eine Galerie mit dem Bildergalerie-Script hilft das nicht weiter, weil sie WebP nicht annimmt.

Drei Irrtümer rund um die verlustfreie Komprimierung

Im Alltag mit Bildprogrammen und Galerien begegnen einem immer wieder dieselben Missverständnisse. Sie führen entweder zu unnötig großen Dateien oder zu Qualitätsverlusten, die man nicht erwartet hätte.

  • „JPEG in PNG umwandeln rettet die Qualität“: PNG bewahrt genau das, was es bekommt, also auch die Klötzchen und Säume aus dem JPEG. Die Datei wird größer, das Bild nicht besser. Hilfreich ist PNG nur, wenn Sie von einem unbeschädigten Original ausgehen.
  • „Höhere PNG-Stufe heißt bessere Qualität“: Die Stufen 0 bis 9, die viele Programme beim PNG-Export anbieten, regeln nur, wie gründlich gepackt wird. Stufe 9 braucht mehr Rechenzeit und ergibt eine etwas kleinere Datei, das Bild ist bei jeder Stufe identisch.
  • „PNG ist immer verlustfrei“: Das Format ja, der Arbeitsschritt davor nicht unbedingt. Werkzeuge, die PNG-Dateien „optimieren“, verringern oft die Zahl der Farben auf 256. Das spart viel, ist aber ein echter Verlust, der bei Verläufen als Streifen sichtbar wird.

Für Ihre Arbeitsweise heißt das: Bewahren Sie das Ausgangsmaterial in der Form auf, in der es entstanden ist, also das JPEG direkt aus der Kamera oder den Screenshot als PNG. Jede weitere Umwandlung sollte einen Zweck haben, etwa eine kleinere Datei für die Galerie.

Eine einfache Entscheidungsregel

Wenn ein Bild Schrift, Linien, Pläne oder wenige klar getrennte Farben zeigt, nehmen Sie PNG. Wenn es transparente Bereiche braucht, etwa ein Logo, das auf verschiedenen Hintergründen stehen soll, ebenfalls PNG. Wenn es ein Foto ist, nehmen Sie JPEG und heben die Kameradatei auf. GIF bleibt für kleine Grafiken mit wenigen Farben interessant, hat bei Fotos aber wegen der 256 Farben keinen Platz. Unsicher? Speichern Sie dasselbe Bild einmal als PNG und einmal als JPEG mit Qualität 85 und vergleichen Sie Dateigröße und Kanten in der 100-Prozent-Ansicht. Meist ist die Sache dann nach einer Minute entschieden.

Verlustfreie Komprimierung im Bildergalerie-Script

Im Bildergalerie-Script entscheidet das Format Ihres Originals, ob auch die Kopien verlustfrei bleiben. Die Galerie nimmt JPEG, PNG und GIF an und erkennt das Format am Inhalt der Datei, nicht an der Endung. Für jedes Bild legt sie im Ordner bilder/tn/ ein Vorschaubild an, ab Werk höchstens 200 mal 200 Pixel groß. Eine zweite Kopie für die große Ansicht entsteht nur, wenn das Bild breiter oder höher ist als die eingestellte Grenze, ab Werk 1024 Pixel, wenn „Kleine Bilder vergrößern“ auf „Ja“ steht oder wenn ein JPEG laut EXIF gedreht werden muss. Sonst zeigt die große Ansicht das Original. Jede Kopie behält das Format des Originals.

OriginalVorschaubild und große AnsichtWas Sie davon haben
PNGPNG, verlustfrei, Kompressionsstufe 1 von 9scharfe Kanten und Transparenz bleiben erhalten, die Dateien werden aber größer
GIFGIF mit Farbpaletteeine transparente Farbe bleibt transparent
JPEGJPEG mit Qualitätsstufe 85kleine Dateien, leichter Verlust beim Verkleinern

Die Stufe 1 bei PNG wirkt niedrig, an der Bildqualität ändert sie aber nichts. Wie oben bei den Irrtümern beschrieben, steuert die Stufe nur die Gründlichkeit des Packens. Die Galerie rechnet ihre feste JPEG-Qualität von 85 auf die PNG-Skala von 0 bis 9 um und packt die Daten deshalb nur leicht. Das geht schnell, spart aber weniger Platz als eine hohe Stufe, beim gemessenen Screenshot 41 statt 23 KB. Ein Feld, um das zu ändern, gibt es unter „Einstellungen“ nicht.

Praxisfall: Screenshot oder Urlaubsfoto

Ein Screenshot einer Anleitung mit 1280 mal 800 Pixeln ist als PNG richtig aufgehoben, denn bei Schrift und Linien zahlt sich verlustfreie Komprimierung aus. Die Galerie verkleinert ihn für die große Ansicht auf 1024 mal 640 Pixel und speichert diese Kopie wieder verlustfrei, ohne Artefakte an den Buchstaben. Ein Urlaubsfoto als PNG hochzuladen, bringt dagegen nur Nachteile: Das Original ist ein Vielfaches größer als ein JPEG, und auch die Kopie mit 1024 mal 768 Pixeln bleibt ein PNG. In unserer Messung waren das 1.729 KB statt 267 KB als JPEG, und diese Datei lädt jeder Besucher beim Klick.

Umbenennen hilft dabei nicht. Speichern Sie ein PNG einfach als foto.jpg, erkennt die Galerie das echte Format und meldet, dass „foto.jpg“ ein PNG-Bild ist und deshalb als foto.png gespeichert wurde. Für eine echte Umwandlung brauchen Sie ein Bildprogramm. WebP-Dateien lehnt die Galerie mit dem Hinweis ab, dass nur JPEG, PNG oder GIF erlaubt sind, ebenso HEIC-Fotos vom iPhone, die Sie vorher als JPEG speichern müssen.

Ihr Original speichert die Galerie unverändert. Löschen Sie ein Bild in der Verwaltung, sind Original, Vorschaubild und Kopie aber endgültig weg. Heben Sie verlustfreie Originale deshalb zusätzlich in einer Sicherung des Ordners bilder/ auf. Wer das ausprobieren möchte, kann das Bildergalerie-Script kostenlos herunterladen und einen Screenshot und ein Foto im Vergleich hochladen.

Häufige Fragen

Weil verlustfrei und verlustbehaftet bei der Galeriepflege oft verwechselt werden, hier die Punkte, die in der Praxis wirklich den Unterschied machen.

Wird ein verlustfrei komprimiertes Bild wirklich Pixel für Pixel wie das Original?

Ja. Ein Bildprogramm kann das sogar nachweisen: Legt man Original und entpackte Datei als Ebenen übereinander und lässt die Differenz berechnen, bleibt eine vollständig schwarze Fläche übrig. Jeder Rot-, Grün- und Blauwert stimmt exakt. Bei einem JPEG zeigt derselbe Test feine helle Muster an Kanten und in Flächen.

Welche Bildformate speichern verlustfrei und welche verlustbehaftet?

PNG und GIF packen verlustfrei, wobei GIF jedes Bild vorher auf höchstens 256 Farben bringt. Das übliche JPEG, wie es Kameras und Bildprogramme speichern, ist immer verlustbehaftet. WebP und einige neuere Formate kennen beide Betriebsarten. Welche gilt, legen Sie beim Speichern fest. Für eine Galerie mit dem Bildergalerie-Script zählen nur JPEG, PNG und GIF, weil andere Formate nicht angenommen werden.

Soll ich Fotos für meine Galerie verlustfrei oder verlustbehaftet speichern?

Fotos laden Sie als JPEG hoch, am besten mit einer Qualität um 85. Das gemessene Handyfoto war so 1.987 KB groß, als PNG fast 14 MB. Verlustfrei als PNG lohnt sich für Grafiken, Pläne, Screenshots und Logos mit Transparenz. Ein verlustfreies Archiv Ihrer Fotos brauchen Sie nicht zusätzlich anzulegen: Die unbearbeitete Datei aus der Kamera ist bereits das beste Original, das Sie haben.

Bleibt ein PNG im Bildergalerie-Script verlustfrei?

Ja. Vorschaubild und Kopie für die große Ansicht eines PNG speichert die Galerie wieder als PNG, also verlustfrei und mit Transparenz. Verkleinert wird das Bild trotzdem, feine Details aus dem Original fallen also durch die geringere Pixelzahl weg, nicht durch die Komprimierung.

Verwandte Themen

Wer entscheidet, wie Bilder gespeichert werden, profitiert von diesen eng verwandten Grundlagen zu Komprimierung und Formaten.