上传灰度图像Python

时间:2016-08-01 17:04:40

标签: python image upload mask pillow

我正在尝试上传已转换为灰度的图像,如下所示:

blob_path = os.path.join(os.path.split(__file__)[0], 'static/img/blob-masks/1.png')
blob = Image.open(blob_path).convert('L')
buffer = StringIO()
blob.save(buffer)
upload_image(buffer.getvalue(),"foo.png")

但它似乎只是上传了一个黑色方块。

如果我到命令行python并运行:

col = Image.open("/static/img/blob-masks/5.png")
col.convert('L')
col.save("result_bw.png")

result_bw.png很完美。出了什么问题?

1 个答案:

答案 0 :(得分:0)

您有什么理由不能在转换后上传灰度图像吗?像:

image = Image.open('static/img/blob-masks/1.png')
image.convert('L')
image.save("temp/bw.png")
upload_image("temp/bw.png")
# maybe delete the temporary file when you're done
import os
os.remove("temp/bw.png")

我不确定你的upload_image()函数是如何工作的,但是当我使用django上传时,如果我进行任何操作,我会写一个临时文件,然后重新导入。如果我根本不操纵图像,我可以直接上传。