Ale*_*ran 17 python jpeg image
问题是从内存加载jpeg编码的图像.
我从套接字收到一个字符串:
jpgdata = self.rfile.read(sz)
Run Code Online (Sandbox Code Playgroud)
我知道这是jpeg编码的图像.
我需要解码它.最愚蠢的解决方案是:
o = open("Output/1.jpg","wb")
o.write(jpgdata)
o.close()
dt = Image.open("Output/1.jpg")
Run Code Online (Sandbox Code Playgroud)
问题是如何在内存中做同样的事情?
jsb*_*eno 27
PIL的Image.open对象接受任何类似文件的对象.这意味着您可以将Image数据包装在StringIO对象上,并将其传递给Image.Open
from io import BytesIO
file_jpgdata = BytesIO(jpgdata)
dt = Image.open(file_jpgdata)
Run Code Online (Sandbox Code Playgroud)
或者,尝试将self.rfile参数作为参数传递给Image.open - 它也可以正常工作.(这适用于Python 2 - 用于Python 3 from cStringIO import StringIO as BytesIO)
| 归档时间: |
|
| 查看次数: |
14266 次 |
| 最近记录: |