2017-05-15 7 views
0

Ich habe Microsoft Paint verwendet, um ein 15248 x 6552 Volltonbild zu erstellen. Ich speicherte es als .png und .jpg und erwartete, dass das .jpg kleiner als .png war, aber es war nicht. Die Datei .jpg ist 1,49 MB, während die PNG 391 KB ist. Sollte JPEG, das eine verlustbehaftete Komprimierung ist, technisch kleiner sein?Meine .jpg Datei ist größer als .png?

Ich habe irgendwo gelesen, dass .png besser für Volltonfarben usw. ist, also habe ich ein Bild aus dem Internet heruntergeladen (keine Volltonfarbe) und Farbe verwendet, um es in beiden Formaten zu speichern. Diesmal war das JPEG kleiner als PNG. Liegt es einzig am Farbverlauf? Wenn ja, warum?

Auch wenn das Bild eine feste Farbe ist, sollte jpg Encodng in der Lage sein, es noch besser zu komprimieren?

+1

Der Fehler könnte in der Annahme sein, MS Paint ist sinnvoll, rational, optimal ... –

+0

Meinst du ein Bild, das nur eine Farbe ist? – user3344003

+0

ja ein Bild mit nur 1 Farbe. – user3616470

Antwort

0

Es ist normal zu erwarten, dass PNG hier besser ist als JPEG.

Wie in anderer Antwort ausgeführt, führt PNG eine Pixel-Vorhersage pro Zeile durch, gefolgt von einer ZLIB-Komprimierung. Wenn das Bild eine einzige Farbe hat, erzeugt die Vorhersage einen konstanten Nullwert für alle Pixel, mit Ausnahme des Anfangs jeder Reihe. Daher wird die Kompression sehr effektiv sein. Ich würde wetten, dass, wenn das Bild "Landschaft" wäre (6552 x 15248 statt 15248 x 6552), die Kompression sogar ein wenig besser wäre.

JPEG versucht, die Information über hohe Frequenzen in Blöcken von 8x8 Pixeln zu verwerfen. Dies funktioniert gut für "natürliche" (fotografische oder ähnliche) Fotos, aber nicht gut für ein Bild wie dieses.

Siehe some comparisons here.

1

Nicht unbedingt.

PNG ist ein auf Vorhersagen basierender Algorithmus, was bedeutet, dass versucht wird, den Wert eines Pixels basierend auf zuvor codierten Pixeln abzuziehen. Ich wette, die Vorhersage ist wirklich korrekt für ein solides Bild, daher die sehr guten Ergebnisse.

JPEG akzeptiert verschiedene "Qualitätsstufen", die die Größe Ihrer komprimierten Datei bestimmen. Die Größenunterschiede zwischen dem Test und der Webversion sind wahrscheinlich darauf zurückzuführen (es sei denn, du lädst natürlich ein anderes Bild herunter!).

Beachten Sie, dass JPEG möglicherweise Bildartefakte verursacht, da es sich um einen verlustreichen Algorithmus handelt, während PNG das genaue Eingabebild für Sie wiederherstellt.