如何以 8 位格式表示图像的傅里叶变换幅度?
How to represent the magnitude of a Fourier transform of an image in 8-bit format?
我计算了 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 位表示的范围的值。我该如何纠正?
由于频谱的动态范围与原始空间信号的动态范围有很大差异,因此使用原始8位格式非常困难。您可以使用 log(1+x) 缩小范围,然后缩放到 8 位范围。
通常,取每个复数 fft 结果值的对数幅度(忽略幅度为零的值),然后缩放结果,使最大预期结果为 255(比例因子将取决于维度和输入二维图像的增益)。
我计算了 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 位表示的范围的值。我该如何纠正?
由于频谱的动态范围与原始空间信号的动态范围有很大差异,因此使用原始8位格式非常困难。您可以使用 log(1+x) 缩小范围,然后缩放到 8 位范围。
通常,取每个复数 fft 结果值的对数幅度(忽略幅度为零的值),然后缩放结果,使最大预期结果为 255(比例因子将取决于维度和输入二维图像的增益)。