1

我观察到 PIL 和 scikit 图像的这个奇怪问题。当我做

img=io.imread(imgLoc)
pilImg=Image.fromarray(img)

它运行完美。当我尝试使用 skimage 的 rescale 方法调整图像大小时,如下所示:

img=rescale(io.imread(imgLoc),0.5)
pilImg=Image.fromarray(img)

它说

File "/home/abc/activepython/lib/python2.7/site-packages/PIL/Image.py", line 2137, in fromarray
raise TypeError("Cannot handle this data type")
TypeError: Cannot handle this data type

skimage.io.imreadskimage.transform.rescalenumpy.ndarray的文档中,我也手动检查了这两个返回值。任何人都可以对此有所了解吗?

4

1 回答 1

1

rescale返回一个浮点图像。尝试做pilImg=Image.fromarray(skimage.util.img_as_ubyte(img))

于 2014-10-31T16:54:34.460 回答