2016-01-06 5 views
1

Я новичок в библиотеке PIL и имею некоторые проблемы.Python PIL сохранение изображения

base = Image.open('sam.bmp') 
base.save(open('base.bmp', 'w'), 'BMP') 

Когда я выполняю этот блок кода, сохраненное изображение искажается каким-то странным образом.

исходное изображение: original image

открыл и сохраненное изображение: enter image description here

Как вы можете видеть, я не делаю каких-либо преобразований с изображением - только загрузка и сохранение. У вас есть какая-то подсказка, почему она работает именно так?

+0

Какая версия? PIL или подушку? – kindall

+1

Веселый! Я думал, что 'base.save ('base.bmp')' будет просто работать? – Reti43

+0

@kindall Pillow 3.1.0 – mnowak

ответ

1

Как Reti43 сказал, Вам просто нужно использовать base.save('base.bmp')

+0

2 дня мышления .. это сработало, спасибо! – mnowak

+1

[Ссылка на документацию] (http://pillow.readthedocs.org/en/3.0.x/reference/Image.html#PIL.Image.Image.save). Или используйте имя файла, например 'base.bmp', или откройте файл в двоичном режиме, например' open (base.bmp, 'wb') '. – Reti43

+1

Не забывайте кавычки на 'open ('base.bmp', 'wb')' – PsyKzz

0

Это работает:

base = Image.open('sam.bmp') 
base.save('base.bmp') 
+1

Пожалуйста, объясните, почему это работает? – AbdealiJK

+0

@AJK с 'base.save (open ('base.bmp', 'w'), 'BMP')' Я открыл файл в тексте вместо бинарного режима – mnowak

Смежные вопросы