Можно ли уменьшить глубину изображения с помощью PIL? - PullRequest
5 голосов
/ 05 октября 2009

Можно ли уменьшить глубину изображения с помощью PIL? Скажем, как переход на 4bpp от обычного 8bpp.

Ответы [ 2 ]

6 голосов
/ 05 октября 2009

Вы можете легко конвертировать режимы изображения (просто вызовите im.convert(newmode) для объекта изображения im, это даст вам новое изображение нового требуемого режима), но для "4bpp" нет режима; поддерживаемые режимы перечислены здесь в Справочник по библиотеке изображений Python .

1 голос
/ 22 марта 2015

Это можно сделать с помощью функции changeColorDepth в модуле ufp.image . только эта функция может уменьшить глубину цвета (bpp)

import ufp.image
import PIL
im = PIL.Image.open('test.png')
ufp.image.changeColorDepth(im, 16) # change to 4bpp(this function change original PIL.Image object)
im.save('changed.png')

см. Пример: квантование изображения по улучшенной шкале серого. [Python]

...