我观察到了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.imread和skimage.transform.rescale的文档中,我还手动检查了numpy.ndarray
。任何人都可以对此有所了解吗?
答案 0 :(得分:1)
rescale
返回浮点图像。尝试pilImg=Image.fromarray(skimage.util.img_as_ubyte(img))
。