【问题标题】:How to represent the magnitude of a Fourier transform of an image in 8-bit format?如何以 8 位格式表示图像的傅里叶变换幅度?
【发布时间】:2015-10-26 05:15:25
【问题描述】:

我已经计算了 256 色值灰度图像的傅里叶变换,但我不确定如何以可见格式表示输出。

这个矩阵代表原始图像:

0   127 127 195
0   255 255 195

虽然这个矩阵表示图像的傅里叶变换:

1154 + 0j   -382 + 8j   -390 + 0j   -382 - 8j
-256 + 0j    128 + 128j    0 + 0j    128 - 128j

据我所知,幅度可以计算为sqrt((r)^2+(i)^2),其中 r 是实部,i 是虚部。但是,这会产生超出可以用 8 位表示的范围的值。我该如何纠正这个问题?

【问题讨论】:

  • 无需进行“更正”,也没有理由认为 FFT 值应受输入数组的限制。如果您需要修改它以便绘制它,那么只需适当地缩放幅度,例如 f /= 256*f/max(abs(f)) 或类似的东西。

标签: image-processing fft


【解决方案1】:

通常,取每个复数 fft 结果值的对数幅度(忽略幅度为零的值),然后缩放结果以使最大预期结果为 255(缩放因子将取决于2D 图像)。

【讨论】:

    【解决方案2】:

    由于频谱的动态范围与原始空间信号的动态范围相差很大,因此很难使用原始的 8 位格式。您可以使用 log(1+x) 缩小范围,然后缩放到 8 位范围。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多