【发布时间】:2011-10-08 22:32:39
【问题描述】:
我正在尝试在 numpy 中使用 fft 模块:
import Image, numpy
i = Image.open('img.png')
a = numpy.asarray(i, numpy.uint8)
b = abs(numpy.fft.rfft2(a))
b = numpy.uint8(b)
j = Image.fromarray(b)
j.save('img2.png')
但是,当我尝试将 numpy 数组转换回 PIL 图像时,出现错误:
TypeError: Cannot handle this data type
但是,a 和 b 数组似乎具有相同的数据类型 (uint8),并且 Image.fromarray(a) 运行良好。我确实注意到形状略有不同(a.shape = (1840, 3264, 3) vs b.shape = (1840, 3264, 2))。
我确实解决了这个问题并找出 PIL 接受哪些数据类型?
【问题讨论】:
标签: python numpy python-imaging-library