MATLAB函数——upsample(Signal Processing Toolbox)

upsample:将采样率提高整数倍


语法

y = upsample(x,n)
y = upsample(x,n,phase)


说明

y = upsample(x,n) 通过在样本之间插入 n - 1个零来增加 x 的采样率。如果 x 是矩阵,则该函数将每一列视为单独的序列。举例

y = upsample(x,n,phase) 指定未采样序列所偏移的样本数。


示例


提高采样率

将序列的采样率提高 3 倍。

x = [1 2 3 4];
y = upsample(x,3)
y = 1×12

     1     0     0     2     0     0     3     0     0     4     0     0

将序列的采样率增加 3 倍,并将相位偏移增加 2

x = [1 2 3 4];
y = upsample(x,3,2)
y = 1×12

     0     0     1     0     0     2     0     0     3     0     0     4

将矩阵的采样率提高3倍。

x = [1 2;
     3 4;
     5 6];
y = upsample(x,3)
y = 9×2

     1     2
     0     0
     0     0
     3     4
     0     0
     0     0
     5     6
     0     0
     0     0

输入参数


x - 输入数组

输入数组,指定为向量矩阵。如果 x 是矩阵,该函数会将所有的列视为独立通道。

举例cos(pi/4*(0:159)) + randn(1,160) 指定高斯白噪声中的正弦曲线。

举例cos(pi./[4;2]*(0:159))' + randn(160,2) 指定一个两通道的正弦波。


n - 上采样因子

上采样因子,指定为正整数

数据类型single | double


phase - 偏移量

偏移量,指定为从 0n - 1正整数。默认为 0

数据类型single | double


输出参数


y - 上采样数组

上采样数组,以向量矩阵的形式返回。yx × n 个样本。


扩展功能


C/C++ 代码生成

使用 MATLAB® Coder™ 生成 C 代码和 C++ 代码。


另请参阅

decimate | downsample | interp | interp1 | resample | spline | upfirdn


在 R2006a 之前推出


原文参考:https://ww2.mathworks.cn/help/signal/ref/upsample.html

猜你喜欢

转载自blog.csdn.net/weixin_43870101/article/details/106795645