Python PIL qualité jpeg
J'utilise python pour enregistrer des fichiers jpeg dans un plus petit de la qualité
im = Image.open(file)
im.save(cached_file, quality=80, optimize=True, progressive=True)
Sur certaines images, cependant, la taille de fichier de la nouvelle image est plus grande que l'original. Comment cela peut-il arriver?
Fournir un exemple où c'est le cas, ce serait utile.
Double Possible de la Détermination de JPG de qualité en Python (PIL)
Double Possible de la Détermination de JPG de qualité en Python (PIL)
OriginalL'auteur Thomas | 2012-04-25
Vous devez vous connecter pour publier un commentaire.
Est-il possible que l'image d'origine a été enregistré avec la qualité de l' < 80? Donc, vous êtes essentiellement en utilisant plus d'espace pour enregistrer des artefacts de la reconstruction?
J'ai juste regardé quelques PIL documentation - pythonware.com/library/pil/handbook/format-jpeg.htm Il semble que la qualité par défaut est de 75, ce qui suggère que si vous lisez une image qui avait été sauvée par PIL sans qualité caractéristiques, la situation, j'ai émis l'hypothèse pourrait se produire. Apparemment, lors de la lecture d'un fichier JPEG, la qualité n'est pas connue. Je crois que la seule façon de savoir à l'avance pour en savoir plus sur le codage JPEG. Peut-être vous serait OK avec comparant le nouveau fichier enregistré à l'original, puis à décider lequel garder?
En fait, j'ai pensé à ce que vous suggérez et, éventuellement, sera de suivre, mais j'ai pensé que je voudrais vous demander pour voir si il y a une manière plus optimale pour le manipuler. Merci
OriginalL'auteur user1245262