2 回答
TA贡献1946条经验 获得超4个赞
您创建 numpy 数组的方式是错误的。您应该将其创建为:
arry = np.array([[25,25,25],[0,0,0],[0,0,0]])
然后它会起作用。因为,您正在覆盖用普通数组创建的空 numpy 数组。
import numpy as np
from PIL import Image
# Create a NumPy array
arry = np.array([[25,25,25],[0,0,0],[0,0,0]])
# Create a PIL image from the NumPy array
image = Image.fromarray(arry.astype('uint8'))
# Save the image
image.save('image.jpg')
这将起作用。
TA贡献1757条经验 获得超8个赞
问题是您没有创建一个 numpy 数组:
# Create a NumPy array
arry = np.array([3,3])
arry= [[25,25,25],[0,0,0],[0,0,0]]
当您这样做时,它arry会变成一个列表列表,因此会出现错误:
AttributeError: 'list' 对象没有属性 'array_interface'
你应该这样做:
import numpy as np
from PIL import Image
# Create a NumPy array
arry = np.array([[25, 25, 25], [0, 0, 0], [0, 0, 0]], dtype=np.uint8)
# Create a PIL image from the NumPy array
image = Image.fromarray(arry)
# Save the image
image.save('image.jpg')
需要注意的是上述指定的D型的arry是np.uint8。
添加回答
举报