关于fftshift引发的问题与思考

现象阐述

在看余弦函数做傅里叶变换的时候,发现假如不加fftshift,正轴上就会有两个频率:

close all; clear; clc;
fs = 300;            %采样率大于200
t = 0:1/fs:1;        %定义采样点
s = cos(2*pi*50*t);  %采样后的信号序列

subplot(211);
%%figure
plot(t,s);
xlabel('t');
ylabel('幅度');
title('余弦函数');

%%figure
F1 = fft(s);                %fft
f1 = linspace(0,fs,length(t));   %频谱横轴
subplot(212);
plot(f1,abs(F1));
xlabel('f');
ylabel('幅度');
title('余弦函数频谱');

结果如下

在这里插入图片描述

虽然实信号是双边带的,但是这里的频率都是正数。可能因为这样所以才会需要fftshift将另一半搬移到负频谱。

原因分析

之前看到一篇关于fftshift的文章 ,它里面的图用的很好,一下子启发到了我,在这里写一下我的理解

在这里插入图片描述

首先看(a)图的时域信号图,现实中根本不会有负时间,要想得到负时间上的频谱,可以通过时域采样,频域延拓的方式来得到。如(b)图的频谱图,负频率 -Fs/2 到 0 的频谱部分就正好被延拓到了正频率 Fs/2 到 Fs 的那部分了。

最后通过N点DFT,截取到的图,就是©中的频谱图。也就解释了一个正弦函数为什么在正轴上有2个正频率的原因。

一点自己的看法

针对上面的现象以及要用fftshift的原因,我看网上大都用混叠两字形容,我觉得这可能会难以理解,因为频率虽超过奈奎斯特采样频率,但是混频的现象却没发生。

参照论文 signal Processing for TDM MIMO FMCW Millimeter-Wave Radar Sensors中的一段原话:

在这里插入图片描述

我的理解是:中频信号fIF 在[ Fs /2 ,Fs ] 上的频谱 ,由于FIF高于奈奎斯特采样频率,所以要以别名(alias)的形式对应负频率fIF -FS 的频谱(或者是以别名的形式出现在负频率)

拓展:关于复信号

复信号是单边带的。复信号也会有负频率。

close all; clear; clc;
fs = 200;            %采样率200
t = 0:1/fs:1;        %定义采样点
s1 = exp(-1j*2*pi*50*t);  %采样后的信号序列,信号频率为50
s2 = exp(1j*2*pi*50*t);

%%figure
subplot(221);
plot(t,s1);
xlabel('t');
ylabel('幅度');
title('exp(-1j*2*pi*50*t)');

%%figure
F1 = fft(s1);                %fft
f1 = linspace(0,fs,length(t));   %频谱横轴
subplot(222);
plot(f1,abs(F1));
xlabel('f');
ylabel('幅度');
title('频谱');

%%figure
subplot(223);
plot(t,s2);
xlabel('t');
ylabel('幅度');
title('exp(1j*2*pi*50*t)');

%%figure
F2 = fft(s2);                %fft
f2 = linspace(0,fs,length(t));   %频谱横轴
subplot(224);
plot(f2,abs(F2));
xlabel('f');
ylabel('幅度');
title('频谱');

在这里插入图片描述

当采样频率为200Hz,复指数信号频率为-50Hz时,其频谱却显示它频率为150Hz,原因可见上面原因分析部分。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值