2022-04-16 一维离散傅里叶变换DFT - 手算过程

503 阅读1分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

题记

用笔计算了下DFT,并用Matlab进行了验算。 为防止以后再做一次公式,特意记录一下。感叹:绕不过的傅里叶和卷积...

公式

离散傅里叶变换的公式 - Fourier Transform:

Xk=j=0n1xjWjkE1W=e2πniE2Xk=j=0n1xjejk2πniE3\begin{aligned} X_k &= \sum_{j = 0}^{n-1} x_{j} \cdot W^{jk} &\qquad E_1\\ W &= e^{-\frac{2\pi}{n}i} &\qquad E_2\\ X_k &= \sum_{j = 0}^{n-1} x_{j} \cdot e^{-jk\frac{2\pi}{n}i} &\qquad E_3\\ \end{aligned}

符号说明:

符号说明
XkX_kkk 次傅里叶变换的结果, 即序列中频率为ww的幅值
xjx_j序列中第 jj 个数值
WW关于频率 (w=2πftw={2\pi f t}) 的函数, ==注:f=1nf=\frac{1}{n}E1W中,tE1W的指数jE_1的W中,t是E_1中W的指数j==
ii复数中,虚部符号
nn序列长度

例子

序列x=[1,2,3]n=3k=0:X0=j=0n1xjejk2πni=j=02xjej02π3ik=1:X1=j=0n1xjejk2πni=j=02xjej12π3ik=2:X2=j=0n1xjejk2πni=j=02xjej22π3i序列x = [1, 2, 3],\qquad 则 n = 3\\ \begin{aligned} k &= 0:X_0=\sum_{j = 0}^{n-1} x_{j} \cdot e^{-jk\frac{2\pi}{n}i}= \sum_{j = 0}^{2} x_{j} \cdot e^{-j0\frac{2\pi}{3}i}\\ k &= 1:X_1=\sum_{j = 0}^{n-1} x_{j} \cdot e^{-jk\frac{2\pi}{n}i}= \sum_{j = 0}^{2} x_{j} \cdot e^{-j1\frac{2\pi}{3}i}\\ k &= 2:X_2=\sum_{j = 0}^{n-1} x_{j} \cdot e^{-jk\frac{2\pi}{n}i}= \sum_{j = 0}^{2} x_{j} \cdot e^{-j2\frac{2\pi}{3}i}\\ \end{aligned}

再代入欧拉公式 :ex+iy=cos(x)+isin(y)e^{x+iy}=cos(x)+i \cdot sin(y)

X0=j=02xjej02π3i=x0+x1+x2=6+0iX1=j=02xjej12π3i=x0+x1(1232i)+x2(12+32i)=32+32i;X2=j=02xjej22π3i=x0+x1(12+32i)+x2(1232i)=3232i;\begin{aligned} X_0&= \sum_{j = 0}^{2} x_{j} \cdot e^{-j0\frac{2\pi}{3}i} =x_0+x_1+x_2=6 + 0i\\ X_1&= \sum_{j = 0}^{2} x_{j} \cdot e^{-j1\frac{2\pi}{3}i} =x_0+x_1\cdot (-\frac{1}{2}-\frac{\sqrt{3}}{2}i)+x_2\cdot (-\frac{1}{2}+\frac{\sqrt{3}}{2}i)=-\frac{3}{2} +\frac{\sqrt{3}}{2}i;\\ X_2&= \sum_{j = 0}^{2} x_{j} \cdot e^{-j2\frac{2\pi}{3}i} =x_0+x_1\cdot (-\frac{1}{2}+\frac{\sqrt{3}}{2}i)+x_2\cdot (-\frac{1}{2}-\frac{\sqrt{3}}{2}i)=-\frac{3}{2} -\frac{\sqrt{3}}{2}i;\\ \end{aligned}

Matlab检验

x = [1 2 3];
n = length(x);
result = zeros(1,n);

for k = 0:n-1
    for j = 0:n-1
        result(k+1) = result(k+1) + x(j+1) * (cos(j*k*2*pi/n) - sin(j*k*2*pi/n)*i);
    end
end

result
fft(x)

在这里插入图片描述

参考资料

en.wikipedia.org/wiki/Discre…

baijiahao.baidu.com/s?id=172580…

zhuanlan.zhihu.com/p/407885496