PIL уменьшает размер изображения, просто открывая и сохраняя - PullRequest
0 голосов
/ 27 марта 2019

У меня есть эти строки кода, которые открывают изображение nature.jpg с помощью PIL и снова сохраняют его под именем new_nature.jpg

from PIL import Image
im              = Image.open("nature.jpg")
im.save("new_nature.jpg")

Когда я проверял размеры файлов, они были такими:
nature.jpg -> 1,3 МБ (13,28,902 байта)
new_nature.jpg -> 636,4 кБ (6,36,354 байта)
Их тип изображения и разрешение были одинаковыми.
Это ссылка на изображение: http://www.youandthemat.com/wp-content/uploads/nature-2-26-17.jpg
Может кто-нибудь сказать мне, почему это происходит?

1 Ответ

1 голос
/ 28 марта 2019

JPEG изображения могут быть сжаты и сохранены в различных качествах. Качество может быть любым числом от 1 (худшее) до 95 (наилучшее). качество сохранения по умолчанию равно 75, и для получения более качественного изображения вы должны попробовать что-то вроде этого:

from PIL import Image
im = Image.open("nature.jpg")
im.save("new_nature.jpg", quality=95)

Прочитайте документацию здесь.

...