MATLAB之采样函数resamlpe、decimate、downsample

resample函数

resample函数主要通过有理因子改变采样率,可以实现抽取和内插。
比如:y = resample(x,p,q)
x是样本信号,p,q都是正整数,p为新的采样频率,q为原来的采样频率;
例如:y=resample(x,100,200)
这代表x信号原先的采样频率为200Hz,使用resample函数后采样率变为100Hz,则x信号的数据长度会变为原来的一半。反之,就是使x的采样频率升高了。

格式:

y = resample(x, p, q)
%采用多相滤波器对时间序列进行重采样,得到的序列y的长度为原来的序列x的长度的p/q倍,p和q都为正整数。此时,默认地采用使用FIR方法设计的抗混叠的低通滤波器。

y = resample(x, p, q, n)
%采用chebyshevIIR型低通滤波器对时间序列进行重采样,滤波器的长度与n成比例,n缺省值为10.

y = resample(x, p, q, n, beta)
%beta为设置低通滤波器时使用Kaiser窗的参数,缺省值为5.

y = resample(x, p, q, b)
%b为重采样过程中滤波器的系数向量。

[y, b] = resample(x, p, q)
%输出参数b为所使用的滤波器的系数向量。

参数:
x–时间序列
p、q–正整数,指定重采样的长度的倍数。
n–指定所采用的chebyshevIIR型低通滤波器的阶数,滤波器的长度与n成比列。
beta–设计低通滤波器时使用Kaiser窗的参数,缺省值为5.

decimate函数

decimate函数只能降低采样率,或者说只能实现信号的抽取。
比如:y = decimate(x,r)
x是样本信号,这里将输入信号x的采样率降低r倍,即在x的数据点中每r个点中,只保留一个点。

格式:

y = decimate(x, r)
%将时间序列x的采样频率降低为原来的1/r,即length(y)=length(x)/r。在抽取之前,默认地采用了8阶chebyshevI型低通滤波器压缩频带。

y = decimate(x, r, n)
%采用n阶chebyshevI型低通滤波器。

y = decimate(x, r, ‘fir’)
%采用30阶的FIR型低通滤波器来压缩频带,对时间序列进行整数倍抽取。

y = decimate(x, r, n, ‘fir’)
%指定当对时间序列进行整数倍抽取的时候,采用n点FIR型低通滤波器来压缩频带,对时间序列进行整数倍抽取。

参数:
x–时间序列
r–采样要降低的倍数
n–指定所采用的chebyshevI型低通滤波器的阶数
‘fir’–FIR滤波器

downsample函数

对时间序列重采样,在原时间序列中等间隔地取出一些项,得到新序列。

格式:

y = downsample(x, n)
%从第一项开始,等间隔n对x采样,得到的序列为y。

y = downsample(x, n, phase)
%从第phase+1项开始,等间隔n对x采样,得到的序列为y,而0<=phase<n.
  • 6
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值