数学基础 -- 使用FFT对352x288的图像变换示例

变换

一维FFT的基本概念

FFT基于复数运算。对于任意一维信号(在这里是图像的一行或一列),假设有 (N) 个数据点,一维FFT的目标是将这些点从时间域(或空间域)转换到频域。一维FFT的结果也是一个长度为 (N) 的序列,表示不同频率成分的复数幅度。

一维离散傅里叶变换(DFT)的定义为:
X [ k ] = ∑ n = 0 N − 1 x [ n ] ⋅ e − i 2 π k n N X[k] = \sum_{n=0}^{N-1} x[n] \cdot e^{-i 2\pi \frac{kn}{N}} X[k]=n=0N1x[n]ei2πNkn
其中,

  • (X[k]) 是频域中的第 (k) 个成分,
  • (x[n]) 是时域中的第 (n) 个样本,
  • (N) 是样本总数,
  • (i) 是虚数单位。

对图像行的FFT

对于352x288的图像,首先对每行(共288行)进行FFT:

  1. 对于每一行,我们有352个数据点。应用上述DFT公式,为每个频率 (k) (从0到351),计算该频率的复数幅度:
    X [ k ] = ∑ n = 0 351 x [ n ] ⋅ e − i 2 π k n 352 X[k] = \sum_{n=0}^{351} x[n] \cdot e^{-i 2\pi \frac{kn}{352}} X[k]=n=0351x[n]ei2π352kn

  2. 这个计算为每一行生成一个新的352个元素的行,这些元素现在表示原始数据在频域中的复数表示。

对图像列的FFT

完成所有行的变换后,每列(现在是转换后的352个频域数据)也要进行FFT:

  1. 对于每一列,同样应用DFT公式,但这次是对每个列的288个数据点进行变换。这为每个频率 (k) (从0到287)计算复数幅度:
    Y [ k ] = ∑ m = 0 287 X [ m ] ⋅ e − i 2 π k m 288 Y[k] = \sum_{m=0}^{287} X[m] \cdot e^{-i 2\pi \frac{km}{288}} Y[k]=m=0287X[m]ei2π288km

  2. 这个计算为每一列生成一个新的288个元素的列,这些元素代表了该列的频域数据。

结果的解释

经过上述两次FFT(先行后列),我们得到一个新的352x288的复数矩阵,其中的每个元素 (Y[j][k]) 都代表了原图像在特定频率上的复数幅度。这个矩阵展示了图像的频域特性,其幅值和相位分别反映了频率成分的强度和相位信息。

应用

这个频域矩阵可以用来进行图像的频域分析和处理,比如滤波、压缩等。通过修改这个矩阵中的特定元素,然后应用逆FFT,我们可以实现对原始图像的各种修改和改进。

逆变换

逆离散傅里叶变换(IDFT)

逆离散傅里叶变换(IDFT)是离散傅里叶变换(DFT)的逆操作,用于将数据从频域转换回空间域。对于一个经过DFT得到的频域矩阵,其IDFT公式定义如下:

x [ n ] = 1 N ∑ k = 0 N − 1 X [ k ] ⋅ e i 2 π k n N x[n] = \frac{1}{N} \sum_{k=0}^{N-1} X[k] \cdot e^{i 2\pi \frac{kn}{N}} x[n]=N1k=0N1X[k]ei2πNkn

其中:

  • (x[n]) 是空间域中的第 (n) 个样本(或像素值),
  • (X[k]) 是频域中的第 (k) 个成分,
  • (N) 是样本总数(在图像中即为像素数),
  • (i) 是虚数单位。

逆FFT操作的步骤

对于一个352x288的图像,其频域矩阵同样为352x288。逆FFT操作首先对频域矩阵的每一列执行一维逆FFT,然后对每一行执行一维逆FFT。以下是详细步骤:

  1. 对每一列执行一维逆FFT

    • 对于矩阵中的每一列(共352列),应用上述IDFT公式。对于列 (m),第 (n) 个元素的计算为:
      x [ m ] [ n ] = 1 288 ∑ k = 0 287 X [ m ] [ k ] ⋅ e i 2 π k n 288 x[m][n] = \frac{1}{288} \sum_{k=0}^{287} X[m][k] \cdot e^{i 2\pi \frac{kn}{288}} x[m][n]=2881k=0287X[m][k]ei2π288kn
  2. 对每一行执行一维逆FFT

    • 对于经过列变换后得到的每一行(共288行),再次应用IDFT公式。对于行 (n),第 (m) 个元素的计算为:
      x [ n ] [ m ] = 1 352 ∑ j = 0 351 x [ n ] [ j ] ⋅ e i 2 π j m 352 x[n][m] = \frac{1}{352} \sum_{j=0}^{351} x[n][j] \cdot e^{i 2\pi \frac{jm}{352}} x[n][m]=3521j=0351x[n][j]ei2π352jm

结果与应用

通过以上步骤,我们得到了一个新的352x288的空间域图像矩阵,该矩阵反映了所有在频域进行的修改。这允许我们实现图像的修复、重建或其他形式的处理,从而得到改善或具有特定特征的图像。

  • 15
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值