我正在尝试优化代码。
首先,我得到一张图像,其类型为字节
然后我必须将该映像写入文件系统。
with open('test2.jpg', 'wb') as f:
f.write(content)
最后我用
读取了这张图片from scipy import misc
misc.imread('test2.jpg')
将图像转换为np.array。
我想跳过将图像写入文件系统的部分,并获取np.array。
PS :我尝试使用np.frombuffer()。它对我不起作用,因为两个np.arrays不同。 Convert str to numpy.ndarray
要进行测试,您可以尝试一下自己:
file = open('test1.jpg', 'rb')
content = file.read()
答案 0 :(得分:1)
我在说唱中的第一个答案...
将那只小狗包裹在BytesIO中
然后离开
因此,要生成一些类似于您从API获得的合成数据:
file = open('image.jpg','rb')
content = file.read()
看起来像这样,具有JPEG的所有特征:
content = b'\xff\xd8\xff\xe0\x00\x10JFIF...
现在是解决方案:
from io import BytesIO
from scipy import misc
numpyArray = misc.imread(BytesIO(content))