我正在尝试上传一张已转换为灰度的图像,如下所示:
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")
CCD_ 1是完美的。出了什么问题?
转换灰度图像后,是否有原因不能直接上传?类似:
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上传时,如果我做了任何操作,我会写一个临时文件,然后重新导入。如果我根本不处理图像,我可以直接上传。