这是一个创建于 3836 天前的主题,其中的信息可能已经有所发展或是发生改变。
用matlab计算 fft2( [ [1 2] [3 4] ] )所得结果为 [ [10 -2+2i] [-2 -2-2i] ]
但是我自己计算的结果如下:
先横向做一维FFT,有
fft( [1 2] ) = [3 -1]
fft( [3 4] ) = [7 -1]
得到矩阵 [ [3 -1] [7 -1] ]
再纵向做一维FFT,有
fft( [3 7] ) = [10 -4]
fft( [-1 -1] ) = [-2 0]
最后所得结果为 [ [10 -2] [-4 0] ]
问题出在哪里呢?
2 条回复 • 2014-08-14 12:43:09 +08:00
![madeye](https://cdn.v2ex.com/avatar/7733/0e13/7737_normal.png?m=1639440477) |
|
1
madeye 2014-08-14 12:27:59 +08:00 1
> c <- array(1:4, c(2,2)) > c [,1] [,2] [1,] 1 3 [2,] 2 4 > fft(c) [,1] [,2] [1,] 10+0i -4+0i [2,] -2+0i 0+0i
> d <- c(1,2,3,4) > d [1] 1 2 3 4 > fft(d) [1] 10+0i -2+2i -2+0i -2-2i
|
![sneezry](https://cdn.v2ex.com/avatar/02b2/9213/39707_normal.png?m=1676088787) |
|
2
sneezry 2014-08-14 12:43:09 +08:00
@ madeye 原来是matlab用错了,二维数组应该是 [1 2; 3 4],感谢已送出 :)
|