【数学建模】由张量模-n展开到高维傅里叶变换(附代码)
【摘要】
由傅里叶变换到二维傅里叶变换
MATLAB自带一个快速傅里叶变换函数: fft ,对于列向量a,对其进行快速傅里叶变换的本质就是左乘一个DFT矩阵(设为F),不太规范的来写就是:
fft(a)=F*a;
MATLAB也自带一个二维傅里叶变换函数: fft2 ,同时官网也给出了其本质,就是...
由傅里叶变换到二维傅里叶变换
MATLAB自带一个快速傅里叶变换函数: fft ,对于列向量a,对其进行快速傅里叶变换的本质就是左乘一个DFT矩阵(设为F),不太规范的来写就是:
fft(a)=F*a;
MATLAB也自带一个二维傅里叶变换函数: fft2 ,同时官网也给出了其本质,就是每个方向都做一次傅里叶变换,对于矩阵A,对其进行二维傅里叶变换即可表示为:
fft2(A)=fft(fft(A).').';
(值得一提的是MATLAB中'表示共轭转置,.'表示不共轭但转置)
当然,如果我们能获得F矩阵的话,我们可以直接将fft2(A)表示为F*A*F,这其实非常简单,我们只需要往fft中带入单位矩阵即可,因为fft(E)=F*E=F,因此二维傅里叶变换还可以这样表示:
fft2(A)=fft(A)*fft(eye(n))
MATLAB实现三种二维傅里叶变换
A=[1 2 3;4 5 6;7 8 9] fft2A1=fft2(A) fft2A2=fft(fft(A).').' fft2A3=fft(A)*fft(eye(3))
A =
1 2 3
4 5 6
7 8 9
fft2A1 =
45.0000 &#
文章来源: wenyusuran.blog.csdn.net,作者:文宇肃然,版权归原作者所有,如需转载,请联系作者。
原文链接:wenyusuran.blog.csdn.net/article/details/123553826
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)