Warum ist die Qualität von JPEG-Bildern produziert von PIL so schlecht?
JPEG-Bilder, erstellt mit PIL (1.1.7) haben sehr schlechte Qualität. Hier ist ein Beispiel:
Eingang: https://s23.postimg.cc/8bks3x5p7/cover_1.jpg
Ausgabe: https://s23.postimg.cc/68ey9zva3/cover_2.jpg
Das Bild wurde mit dem folgenden code erstellt:
from PIL import Image
im = Image.open('/path/to/cover_1.jpg')
im.save('/path/to/cover_2.jpg', format='JPEG', quality=100)
Den roten text sieht wirklich schrecklich. Speichern Sie das Bild mit GIMP oder Photoshop nicht einmal nahe kommen, um die schlechte Qualität, erstellt von PIL.
Weiß jemand, warum dies passiert und wie es gelöst werden kann?
- Sie speichern ein JPEG ein JPEG. Sie verlieren Informationen zweimal. Sind Sie sicher, dass GIMP und Photoshop sind eigentlich die Verarbeitung der JPEG wieder und nicht nur sparen, wie es ist (weil die Programme erkennen es als JPEG und deshalb nix dran machen)?
- Vielen Dank für Ihre schnelle Antwort. Ich bin der Tatsache bewusst, dass ich Informationen zu verlieren zweimal. Es ist nur ein sehr einfaches Beispiel. In der Produktion bin ich der Größenänderung das Bild als gut :). Auch wenn ich die Größe des Bildes in GIMP oder Photoshop das fertige Bild sieht viel schärfer. Die zwei Personen sehen fast gleich in den beiden Bildern, aber die rote Schrift sieht das ganz anders aus.
- Ich bin nicht zweifeln, dass Sie schärfer von GIMP / Photoshop. Aber ist es da anders aus dem Eingabe-Bild? Nachdem Sie speichern Sie es als JPEG aus GIMP / Photoshop, ist was geändert? Wenn die Antwort Nein ist, dann PIL nur Aussehen könnte "schlecht", weil es eigentlich die Anwendung der JPEG-Kompression, während der andere nicht. Sehen, was ich hinauswill?
- Deine Bearbeitung auf meine Antwort sah wirklich vertraut, also ich habe eine Suche - das ist nicht das erste mal, ich habe diese Frage beantwortet, und es gibt einen Kommentar mit den gleichen Informationen. stackoverflow.com/questions/15481062/...
- Das ist, wo ich die loesung aus 🙂
Du musst angemeldet sein, um einen Kommentar abzugeben.
Es gibt zwei Teile, um die JPEG-Qualität. Die erste ist die
quality
Einstellung, die Sie bereits eingerichtet haben, um die höchsten möglichen Wert.JPEG-Format verwendet chroma-subsampling, vorausgesetzt, dass der Farbton änderungen sind weniger wichtig als die Helligkeit ändert und einige Informationen sicher sein kann, weggeworfen. Leider in anspruchsvollen Anwendungen ist dies nicht immer wahr ist, und Sie können leicht feststellen, diese auf den roten Kanten. PIL nicht setzen eine dokumentierte Einstellung zur Kontrolle dieser Aspekt.
Edit von Pascal Beyeler:
Fand ich eine option, die deaktiviert subsampling. Sie können
subsampling=0
beim speichern eines Bildes und das Bild sieht viel schärfer! Vielen Dank für deine Hilfe, Mark!