你好,我想用matlab编程实现二维离散傅里叶变化,希望您可以帮帮我,不胜感激。

编程实现这个公式
2025-01-07 01:14:18
推荐回答(1个)
回答1:

大致写了一个 你看看行不行 我机器上测试通过
%注意
%设A是个5*5的矩阵,N=6,u,v取值1到10,(Matlab数组\矩阵等都从1开始)

A=[1 2 3 4 5;6 7 8 9 10;3 4 3 2 5;3 2 4 5 6;5 6 4 3 2];
X=zeros(10,10);
for u=1:10
for v=1:10
sum=0;
for j=1:5
for k=1:5
sum=sum+1/6*A(j,k)*exp(1/6*-2*pi*sqrt(-1)*(u*j+v*k));
end
end
X(u,v)=sum;
end
end
disp(X);