DSP

数字信号处理中:各种频率、带通采样、抽取和插值

2019-07-13 20:51发布

一、模拟频率和数字频率间关系
以MATLAB参考代码为例: % test with Matlab 2007 close all; clear; fig_fname = 'sine_1_tone.jpg'; fs = 8E3; % 采样率 N = 32; % 向量长度 % 信号频率、幅度、初相位 f1 = 1000; Amp1 = 1; phy1 = 0; f2 = 7000; Amp2 = 1; phy2 = 0; % 原信号 x1 = Amp1*sin(2*pi*f1*t + phy1); x2 = Amp2*sin(2*pi*f2*t + phy2); % 信号向量的下标索引 n_idx = [0:N-1]; % 生成信号采样序列向量 x1 = Amp1*sin(2*pi*f1/fs*n_idx + phy1); x2 = Amp2*sin(2*pi*f2/fs*n_idx + phy2); 可以看到 f1、f2 为信号原模拟频率。
f 的物理含义:在周期T内上下振动的次数,
模拟频率中还有一个概念是模拟角频率,数学符号常用Ω来表示,其单位为弧度/秒(rad/s)。 Ω=2pi*f(rad/s) T=2pi / Ω,,, f=1 / T 数字频率w:单位是rad。学习数字信号处理的要明白,数字频率实际上是和采样周期Ts联系在一起的,离开采样周期Ts或者采样频率Fs = 1/Ts单独谈数字频率w是没有实际价值的,因为此时它没有任何物理意义,
数字频率w是从单位圆上的N点等间隔采样而来的,这个N不是别的就是数字周期,先给出数字频率w和数字周期N之间的关系:N=(2*pi/w)*k当信号是 以N为周期的时候,要求(2*pi/w)是个有理数,w=2*pi*k/N,可见w的物理含义是相邻的两个采样点之间的弧度,w = ΩT = Ω/Fs 是用Fs归一化后的频率。
数字周期N,N有两种含义:
①f(n) = f(n+N)
② 周期信号 f(n)的一个周期内有0~N-1共N个采样点。 cos(2pi*f*t) = cos(Ω *t) = cos(Ω*n*Ts) = cos(Ω*Ts*n) = cos(w*n)
数字信号大多是从模拟信号采样而得,采样频率通常用fs表示。fs必须≥信号最高频率的2倍才不会发生信号混叠,因此fs能采样到的信号最高频率为fs/2。数字频率更准确的叫法应该是归一化数字角频率,其单位为弧度(rad),数学符号常用ω表示。即: ω=2pi*f/fs(rad) 其物理意义是相邻两个采样点之间所变化的弧度数, 归一化频率是将物理频率按fs归一化之后的结果,最高的信号频率为fs/2对应归一化频率0.5,这也就是为什么在matlab的fdtool工具中归一化频率为什么最大只到0.5的原因。 f = w*Fs/(2*pi); % 信号的真实频率f 频率(f) 对应关系 归一化频率: -1 ———- -1/2 ———- 0 ———- 1/2 ———– 1 频率f: -Fs ——— -Fs/2 ——– 0 ———- Fs/2 ———Fs 模拟角频率Ω: -Ωs ——— -Ωs/2 —— 0 ———– Ωs/2 ——– Ωs 数值频率w: -2*pi ——— -pi ——— 0 ———- pi ————- 2*pi
二、带通采样
这里写图片描述 这里写图片描述 这里写图片描述
三、抽取和插值
书上是这么说的:
减少抽样率以去掉过多的数据的过程,称为信号的抽取(decimatim);
增加抽样率以增加数据的过程,称为信号的插值(interpolation);
抽取、插值的使用可以实现信号抽样率的转换。 抽取,可以在传输的过程中减少传输的数据量,接收端进行恢复时进行插值,将信号恢复成原始抽样率的信号。在数字信号处理中只需要改变数字采样率,一般是先进行插值再进行抽取,以免造成频率混叠,同时在抽取的前先进行预滤波,在插值后进行以去镜像滤波。 抽取:时域上
这里写图片描述 周期为 T 的 X(N) ,令 N=Mn , 每M个点抽取一个。周期延拓为MT
这里写图片描述 抽取:频域上 这里写图片描述 这里写图片描述 抽取后对信号的影响:
这里写图片描述