数学建模由张量模-n展开到高维傅里叶变换(附代码)
Posted 文宇肃然
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数学建模由张量模-n展开到高维傅里叶变换(附代码)相关的知识,希望对你有一定的参考价值。
由傅里叶变换到二维傅里叶变换
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 &#
以上是关于数学建模由张量模-n展开到高维傅里叶变换(附代码)的主要内容,如果未能解决你的问题,请参考以下文章