我刚刚使用Python图像库(PIL)进行了一些图像处理,使用我之前找到的一篇文章来执行图像的傅里叶变换,但我无法让保存函数正常工作。整个代码都可以运行,但它只是无法保存生成的图像:
from PIL import Image
import numpy as np
i = Image.open("C:/Users/User/Desktop/mesh.bmp")
i = i.convert("L")
a = np.asarray(i)
b = np.abs(np.fft.rfft2(a))
j = Image.fromarray(b)
j.save("C:/Users/User/Desktop/mesh_trans",".bmp")
我收到的错误信息如下:
save_handler = SAVE[string.upper(format)] # unknown format
KeyError: '.BMP'
如何使用Python的PIL保存图像?
fft2
而不是rfft2
,因为对于离散数据,我认为使用后者没有意义。其余部分纯粹是外观上的差异,即如果不应用对数因子,则无法正确可视化傅里叶变换。然后,规范化是为了使转换到范围[0, 255]变得简单。 - mmgpvisual
没有方差(不太可能,但值得注意),则visual = (visual - visual.min()) / (visual.max() - visual.min())
将默认执行。 - user1415946