matlab中fftshift与ifftshift的区别?

matlab中fftshift与ifftshift的区别?

两者实际上是不同的。
fftshift就是对换数据的左右两边:
x=[1 2 3 4] fftshift(x) ->[3 4 1 2]
ifftshift是为了当数据不是偶数长度时加出来的一个函数:
x=[1 2 3 4 5] ifftshift(x) ->[4 5 3 1 2]

(1)ifftshift和fftshift执行的都是圆周位移的操作。fftshift是将数组或矩阵按正方向(向右和向下)做圆周位移,而ifftshift是按负方向(向左和向上)做圆周位移。圆周位移的步长等于数组或矩阵长度的一半,对于偶数是N/2,对于奇数是(N-1)/2。这也就是为什么对于偶数长的数组,fftshift和ifftshift的结果相同,而对于奇数长的数组,两者结果却不一样的原因。
(2)两次fftshift不能使数列恢复原状,而要如下使用:
ifftshift(fftshift(A))=A

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值