欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

采样率转换理论基础

程序员文章站 2022-05-22 13:14:33
...

离散信号重采样(采样率转换)通常有两种实现办法

1】一种是通过DA转换成模拟信号然后再通过AD重新对模拟信号进行采样

2】一种是通过插值的办法在对输入信号进行插值或者抽取的方式,完成纯数字域的采样率转换

本文主要记录第二种方法

首先看以下重构函数以及插值公式

采样率转换理论基础

采样率转换理论基础

取时间序列为步进为Ty,就可以得到一个重构函数序列的计算公式

采样率转换理论基础

将采样周期为Tx的输入x(nTx)序列与这个插值序列卷积,就得到了一个经过插值的序列y(mTy),插值后采样周期变为Ty,插值后输出序列的第m个元素记为以下形式:

采样率转换理论基础                                                  公式1

针对公式1,进行代码验证,代码如下

clc
clear all
close all

% 建立一个离散序列
Tx = 0.05;
T = (1:fix(1/Tx))*Tx;
x = sin(2*pi*T);
figure(1)
stem(x)
title('x')

% 验证插值函数
t = 0.002;                                   % 插值结果的分辨率,应该小于Tx,否则会出现混叠
gt = sin(pi*(t-T)./Tx)./(pi*(t-T)./Tx);     % 插值函数产生的序列

figure
plot(gt)
title('gt')

% 查看整个插值后的序列
for tloop = 1:fix(1/t)
    
    tg = tloop * t;
    gt = sin(pi*(tg-T)./Tx)./(pi*(tg-T)./Tx);
    yt(tloop) = sum(x.*gt);
    
end
figure(3)
stem(yt)
title('yt')

验证结果

采样率转换理论基础

采样率转换理论基础

采样率转换理论基础

假设Tx=Ty=T,我们就可以将以上公式1简化,得到一个输入信号与线性时不变系统的卷积公式

采样率转换理论基础

采样率转换理论基础                                                                    公式2

如果Tx≠Ty,将公式1整理得到如下形式

采样率转换理论基础                                                                                    公式3

我们可以将mTy/Tx的结果分成整数km与小数△m两部分,即:

采样率转换理论基础                                                                                                                            公式4

将公式4带入到公式3中,得到以下形式:

采样率转换理论基础                                                                              公式5

如果我们定义采样率转换理论基础,公式5可以整理为以下形式

采样率转换理论基础

同时,mTy=(km+△m)Tx,因此:

采样率转换理论基础

也即:

采样率转换理论基础                 公式6

观察公式6,当Tx与Ty确定后,对于一个给定的m值,采样率转换理论基础采样率转换理论基础就是确定的。

 

 

相关标签: 插值 重采样