matlab信号采样

采样对象

40个离散点,在实空间的40个点内,有2个周期:
原信号:2(周期)

采样周期:1/2

每两个点抽样一个,所以抽样结果如下:
抽样结果
对抽样结果分别进行模拟DFT和FFT运算,得到抽样信号的频谱图:
在这里插入图片描述

对比两图发现:
1.DFT得到的频谱是40个频率刻度,而FFT得到的只有20个频率刻度。
2.DFT得到的频谱有4个频率分量,而FFT只有两个频率分量。
所以哪个方法得到的结果是对的呢?再回答这个问题前,先看看下面这个离散点只有20个的2(周期)信号图以及他的频谱图(注:此信号不是原信号):
在这里插入图片描述
在这里插入图片描述
是的,这两个频域图一模一样,连频域的刻度都一样。实空间的曲线也是一样的(因为都是两个周期,且离散点都是20个),只有横轴的范围不一样:一个是1—40,另一个是1—20。是的,FFT把抽样函数当做相同周期的另一个函数了。
造成这一结果的原因在于:抽样函数的离散点减少了,少于原来40个点了。之前说过,频谱会按照离散点的取值,划分频谱图里的频率刻度。40个点划40个频率,20个点划20个基频。
所以只需要把没有采样的点置0,保持40个采样点,就可以得到采样信号的频谱了:
在这里插入图片描述
在这里插入图片描述
可以看到,这样抽样后的频谱图和之间的DFT是一样的,所以我们以后抽样的时候,没有抽到的部分也要保留下来并置0。
代码:

close all;

%% 原信号
n = 0:1:39;                 %40个离散点
A = cos(2*pi*n*2/40);       %频率:2个周期
figure; stem(n,A); hold on; plot(n,A); title('原信号');

%% 抽样信号
n = 0:2:39;                 %20个离散点
A = cos(2*pi*2*n/40);
figure; stem(n,A); hold on; plot(n,A); title('抽样信号');

%% 抽样信号作FFT和DFT
A = cos(2*pi*2*n/40);

B = fft2(A);
figure; stem(B); title('抽样信号FFT');  

sum = zeros(1,20);
for freq = 0:2:39
    B = cos(2*pi*freq*n/40);
    C = A.*B;
    for num = 0:19
        sum(freq/2+1) = sum(freq/2+1) + C(num+1);
    end
end
figure; stem(n,sum); title('抽样信号DFT');

%% 原信号20个离散点
n = 0:1:19;                 %20个离散点
A = cos(2*pi*n*2/20);       %频率:2个周期
figure; stem(n,A); hold on; plot(n,A); title('20离散点信号');

B = fft2(A);
figure; stem(B); title('20离散点信号FFT');  

sum = zeros(1,20);
for freq = 0:1:19
    B = cos(2*pi*freq*n/20);
    C = A.*B;
    for num = 0:19
        sum(freq+1) = sum(freq+1) + C(num+1);
    end
end
figure; stem(n,sum); title('20离散点信号DFT');

%% 修改后的采样信号频谱
A = zeros(1,40);            %40个离散点
for num = 0:2:39            %抽样1/2
    A(num+1) = cos(2*pi*2*num/40);
end

n = 0:1:39;
figure; stem(n,A); title('40离散点抽样信号');
B = fft2(A);
figure; stem(B); title('40离散点抽样信号FFT');  

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值