枕头数据处理

Pillow data handling

我想使用 pillow 来保存和加载图像。

我知道我可以做到 Image.save(imagename.xxx).

但是我想保存为图片内容

我想重复使用它。

from PIL import Image
import numpy as np

filename = 'any_image.png'
import pickle
im = Image.open(filename)
data = list(im.getdata())
f = open("test_file.dat","wb")
dumps = pickle.dump(data,f)

f = open("test_file.dat","rb")
tumps = pickle.load(f)
print(np.asarray(tumps))
#here
re_im = Image.Image.putdata(tumps)
re_im.show()

我要显示re_im个图片对象,和我之前保存的内容是一样的。 我可以通过 pickle 保存和加载相同的内容。

但是我不知道我把内容发到哪里去了。 我想通过 re_im.show()

显示与原始图像相同的图像

请帮助我。

我能做到。

先省略'data = list(im.getdata())' 其次,插入 'np.array(im)'

from PIL import Image
import numpy as np
filename = 'any_data.png'
import pickle
im = Image.open(filename)
data = np.array(im)
f = open("test_file.dat","wb")
print(type(data))
dumps = pickle.dump(data,f)
f = open("test_file.dat","rb")
tumps = pickle.load(f)
array = Image.fromarray(tumps)
array.show()