用MATLAB实现降采样
时间: 2023-05-30 22:03:26 浏览: 115
时域采样定理MATLAB实现.pdf
5星 · 资源好评率100%
降采样是指将原始信号的采样率降低,即减少采样点的数量来减小数据量。MATLAB中可以使用resample函数实现降采样。
语法:
y = resample(x,p,q)
其中,x为原始信号,p为降采样的倍数,q为上采样的倍数。降采样的倍数p必须是q的因数,否则会出现信号失真。
示例:
假设原始信号为sin(2*pi*1000*t),采样率为8kHz,现将采样率降低为2kHz。
t = 0:1/8000:1;
x = sin(2*pi*1000*t);
y = resample(x,1,4);
t_new = 0:1/2000:1;
subplot(2,1,1);
plot(t,x);
title('原始信号');
xlabel('时间(s)');
ylabel('幅值');
subplot(2,1,2);
plot(t_new,y);
title('降采样后信号');
xlabel('时间(s)');
ylabel('幅值');
运行结果如下图所示:
![image.png](attachment:image.png)
从图中可以看出,降采样后的信号幅值变化不大,但频率变低了。
阅读全文