这是我的代码
import numpy as np
from PIL import Image
from skimage.transform import pyramid_gaussian
image = Image.open('/home/sumith/Downloads/AFW/testimages/3854178896.jpg')
rows, cols, dim = np.asarray(image).shape
pyramid = tuple(pyramid_gaussian(image, downscale=2,))
count = 0
for pyr in pyramid[0:8]:
row, col, dim = (np.asarray(pyr).shape)
count += 1
#io.imsave('/home/sumith/imagepyramids/'+count.__str__()+".jpg", pyr)
print(type(pyr))
image = Image.fromarray(pyr.astype('uint8'), 'RGB')
image.save('/home/sumith/imagepyramids/'+count.__str__()+".jpg")
当我打印type(pyr)时,它显示为,但是当我尝试将其转换为PIL图像并将其保存时,金字塔中的所有图像均为黑色。但是如果我使用io.imsave保存它,它工作正常。我需要将图像金字塔的图像输入到神经网络中,因此如果我可以将其作为PIL.Image输入,那么它将非常有帮助。
提前致谢!!黑色图像看起来像这样black-image
最佳答案
检查pyr
中的值。也许它们的值在0到`之间,而RGB图像的值应该在0到255之间。
关于python - 我正在尝试将numpy数组转换为PIL.Image。但是它给出的是黑色图像。 numpy数组是由Skimage的pyramid_gaussian方法返回的,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42185260/