我有两台安装了 scipy 0.12 和 PIL 的不同机器。在一台机器上,当我尝试读取 .png 文件时,它返回一个大小为 (wxhx 3) 的整数数组:
In[2]: from scipy.ndimage.io import imread
In[3]: out = imread(png_file)
In[4]: out.shape
Out[4]: (750, 1000, 4)
在另一台机器上,使用相同的图像文件,这将返回一个PIL.PngImagePlugin.PngImageFile
包装在数组中的对象
In[2]: from scipy.ndimage.io import imread
In[3]: out = imread(png_file)
In[4]: out.shape
Out[4]: ()
In[5]: out
Out[5]: array(<PIL.PngImagePlugin.PngImageFile image mode=RGBA size=1000x750 at 0x1D40050>, dtype=object)
我看不到任何访问后一个对象数据的方法。
我有一种模糊的感觉,即 PIL 使用 Png 库读取图像的方式有问题,但是是否有更具体的错误并导致这种行为?