MATLAB中的fft后为何要用fftshift?

 我来答
一骑当后
推荐于2017-10-07 · 知道合伙人数码行家
一骑当后
知道合伙人数码行家
采纳数:40299 获赞数:306411
网络、设备维护、电路、弱电检测。

向TA提问 私信TA
展开全部

  fft是一维傅里叶变换,即将时域信号转换为频域信号;

  fftshift是针对频域的,将FFT的DC分量移到频谱中心;

  即对频域的图像,(假设用一条水平线和一条垂直线将频谱图分成四块)对这四块进行对角线的交换与反对角线的交换。

  fftshift就是对换数据的左右两边比如

  x=[1 2 3 4]

  fftshift(x) ->[3 4 1 2]


  IFFTSHIFT Inverse FFT shift.(就是fftshift的逆)

  x=[1     2     3     4     5];

  y=fftshift(x)

  y =

  4     5     1     2     3

  ifftshift(y)

  ans =

  1     2     3     4     5

  直接用fft得出的数据与频率不是对应的,fftshift可以纠正过来。

  示例如下:

    

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式