这个问题有点宽泛。
这是我所做的:
我有一种应用 fft 的方法。我不打算发布它,因为它是否正确并不是这里的重点。
我通过该方法运行一个图像,然后尝试显示两个相同大小的图像,一个用于实部,一个用于虚部。
这似乎工作正常,除了我的方法产生的灰度值通常远大于 255,因此我不确定我看到的是什么。
然后我获取原始结果(不是我显示的任何像素值,因为我假设它们以某种方式被修改以适应 0 到 255 之间)并通过与以前相同的方法运行它,但通过符号更改来实现 ifft。
然后我也尝试显示它。同样,原始值在大多数情况下都远大于 255。
我的问题归结为:a.) 我是否必须对 fft 进行一些缩放以使其适合 0 到 255 之间?b.) 当我做 ifft 时,我是否必须反转这个缩放比例?c.) 在我申请 ifft 之前,我必须在 fft 上做任何翻译吗?
c部分源于我已经阅读了一些关于将fft的角落居中的内容,但我不确定这意味着什么。
一个较小的问题,d 部分,如果我通过首先将 1d fft 应用到所有行然后再应用到所有列来在原始图像上应用 2d fft,我是否需要以相同的顺序应用 ifft 或我需要颠倒顺序吗?
我想这就是现在的全部。我一直在寻找答案,但似乎找不到太多,因此不胜感激。
编辑:我添加了一些图片,也许它们会有所帮助。第一个是原始图像,第二个是我的 fft 方法(幅度和虚部)的结果,第三个是中间图像上的 ifft 的结果。
EDIT2:将图像更新为来自较新方法的图像。