这是我的代码

   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/

10-09 19:07
查看更多