数字信号处理(DSP)个人学习总结(一)——离散时间系统基本理论
离散时间系统基本理论
离散时间序列
序列的表示
序列的分类
常用时间序列
- 离散实序列
- 单位阶跃
- 单位脉冲
单位脉冲和单位阶跃响应的关系如下:中间的表述方式可以理解为离散序列的“积分”。
- 矩形序列
- 离散实指数序列
- 离散复序列
\(\frac{2\pi}{\omega}=\frac{N}{m}\),其中左侧化简后的分子和分母分别与右侧N和m对应,m为周期内含有的包络数,N为周期。
- 频率大小的影响:
\(e^{jwn}\),当ω越大,\(\frac{2\pi}{ω}\)越小,如果是连续时间序列,则必然是周期变小,但是对于离散时间序列,当\(ω=ω+2k\pi\)时,离散序列对应的频谱图相同。
- 频率正负的影响:
正频率是逆时针;负频率是顺时针;
- 相位影响:
相变=时移,与Φ和ω均有关。
序列的分解
- 离散时间信号的分解:
任意序列均可分解为不同延迟单位脉冲序列的线性组合。
离散时间系统
系统的表示
- 函数表示:
- 框图表示:
系统的分类
- 无记忆系统,系统的输出只与当前时刻输入相关;(不需要存储器)
- 线性系统,系统的输出和输入具有相同的线性组合(齐次性(比例性)[乘系数]和叠加性(可加性)[组合])
例如:
-
时不变系统,系统的性能不随时间的改变而改变。
-
因果系统,当前时刻输出仅取决于当前及以前时刻输入,与以后的输入无关。
-
稳定系统,有界输入(序列中的每个值均有界)产生有界输出。
LTI(线性时不变)系统的卷积和表示
LTI系统的性质
- LTI系统的因果性判据:单位脉冲响应为因果序列h[n]=0,n<0。
- LTI系统的稳定性判据:单位脉冲响应绝对可和。
- LTI系统的卷积具有交换律,结合率,分配率
由卷积的结合率得到级联系统;
由卷积的分配率得到并联系统;
线性常系数差分方程
- 使用递推迭代法解题:
-
线性系统,输入为0,输出一定为0。
-
线性常系数差分方程表示的系统如果满足初始松弛条件(初始值为0),则该系统是因果的LTI系统。
实验1 卷积差分实现LTI系统
LTI滤波器的分类
其中IIR滤波器通过差分方程实现;FIR滤波器通过卷积和实现。
- FIR滤波器的实现:
其中第二步为95阶的FIR滤波器。h中输入的为\(z^0\)至\(z^{-95}\)的系数
[x, fs] = audioread('D:\Carmen_overture_noisy_8k_9.5k.wav');
%x是音频数据,fs是采样频率
h=[-0.002876661682599,0.0001746575876459, 0.001360371198876,-0.002796136591917,...
0.002880772243978,-0.001242291159412,-0.001096962526785, 0.002332983510346,...
-0.001307649173739,-0.001368748034394, 0.003551168105363,-0.003178880019962,...
9.893335945349e-05, 0.003475646276925,-0.004524249512869, 0.001744981182385,...
0.003045028934091,-0.005977896766947, 0.004207636166295, 0.001465437032989,...
-0.00672145288472, 0.006941679082687, -0.00116986290666,-0.006501434008723,...
0.009711662701064,-0.004996261645046,-0.004776969477893, 0.01192171509396,...
-0.009829941024313, -0.00115476496081, 0.01293443155674, -0.01539978947815,...
0.004810016748951, 0.0119042644155, -0.02125902167617, 0.01363881290096,...
0.007699907341382, -0.02688621990559, 0.02641118466116,-0.001738442488601,...
-0.03172614931786, 0.04644986397443, -0.02220940882214, -0.03527701713573,...
0.08975330687438, -0.08680834632482, -0.03715598047208, 0.5689856620233,...
0.5689856620233, -0.03715598047208, -0.08680834632482, 0.08975330687438,...
-0.03527701713573, -0.02220940882214, 0.04644986397443, -0.03172614931786,...
-0.001738442488601, 0.02641118466116, -0.02688621990559, 0.007699907341382,...
0.01363881290096, -0.02125902167617, 0.0119042644155, 0.004810016748951,...
-0.01539978947815, 0.01293443155674, -0.00115476496081,-0.009829941024313,...
0.01192171509396,-0.004776969477893,-0.004996261645046, 0.009711662701064,...
-0.006501434008723, -0.00116986290666, 0.006941679082687, -0.00672145288472,...
0.001465437032989, 0.004207636166295,-0.005977896766947, 0.003045028934091,...
0.001744981182385,-0.004524249512869, 0.003475646276925,9.893335945349e-05,...
-0.003178880019962, 0.003551168105363,-0.001368748034394,-0.001307649173739,...
0.002332983510346,-0.001096962526785,-0.001242291159412, 0.002880772243978,...
-0.002796136591917, 0.001360371198876,0.0001746575876459,-0.002876661682599];
y = conv(x,h);
player = audioplayer(x,fs); play(player);
figure(1);
subplot(211);
stem(x);
title('输入信号波形')
subplot(212);
stem(y);
title('输出信号波形');
audiowrite('D:\snow_p_8-9.5-40db.wav',sig_fil,fs)
实现了高频噪声的滤除。
- IIR滤波器的实现:
clc
clear all
b=[6.579117719418e-06,0.0002434273556185, 0.004381692401132, 0.05111974467987, 0.4345178297789, 2.867817676541, 15.29502760822, 67.73512226497, 254.0067084936, 818.4660607017, 2291.704969965, 5625.094017186, 12187.7037039, 23437.89173828, 40179.2429799, 61608.17256918, 84711.23728263, 104643.2931138, 116270.325682, 116270.325682, 104643.2931138, 84711.23728263, 61608.17256918, 40179.2429799, 23437.89173828, 12187.7037039, 5625.094017186, 2291.704969965, 818.4660607017, 254.0067084936, 67.73512226497, 15.29502760822, 2.867817676541, 0.4345178297789, 0.05111974467987, 0.004381692401132, 0.0002434273556185,6.579117719418e-06];
a=[ 1, 14.37828690288, 104.1648243034, 504.3023653466, 1827.892164546, 5272.314238219, 12567.18329297, 25391.78098446, 44280.3431479, 67543.21293644, 91031.31413503, 109248.4585498, 117456.9286029, 113663.3624288, 99360.42815769, 78676.34547238, 56541.90742152, 36928.41699943, 21934.12069346, 11849.69282271, 5820.210601159, 2596.511270863, 1050.471970027, 384.5676182832, 127.0294630969, 37.7210460062, 10.02321645795, 2.369609300119, 0.4948536588095, 0.09046795256738, 0.01431382878011, 0.001931131342549, 0.0002178076530115,1.998237004796e-05,1.432599897946e-06,7.529722850038e-08, 2.580713328819e-09,4.328478996595e-11];
[x,Fs]=audioread('D:\Program\新建文件夹 (10)\音频\Carmen_overture_noisy_8k_9.5k.wav');
figure;
plot(x);
y=filter(b,a,x);
figure;
plot(y);
audiowrite('Afterfilter0dB_direct.wav',y,Fs)
本章习题
- \(j^{2n}\)的周期为2,因为\(j=e^{\frac{j\pi}{2}}\),带入得\(j^{2n}=e^{jn\pi}\),所以\(\omega=\pi\),\(T=2\)。
- 判断系统的特性:
(1)为稳定,因果,线性,时变,无记忆系统。(2)为非稳定(找一个反例即可),因果,线性,时不变,有记忆系统。(3)为稳定(逐项稳定,项数有界),非因果,线性,时不变,有记忆系统。(4)为稳定,非因果(抽取器),线性,时变,有记忆系统。
(5)\(T[x[n]]=x[n]+3u[n+1]\)为因果稳定系统,不要看到\(u[n+1]\)就以为是非因果。看是否为非因果关键是看输入是否超前于输出。(看\(x[n]\)内的宗量)
(6)本题中的C选项错在因果。
对于这种有两个y[n]的,y[n]没有n次方则为线性的;y[n]的系数不带n的就是时不变的。
这种系统未必是非因果:之后学Z变换时是看收敛域。
求系统响应:
已知\(u(n)\)的响应为\(s(n)\),则\(δ(n)=u(n)-u(n-1)\)的响应为\(s(n)-s(n-1)\)。
求卷积:
利用图解法求解:将\(u(n)\)关于\(y\)轴翻转,然后整体加上\(n\)(向右移动\(n\)),对位相乘即为卷积的结果,当\(n<0\)时,左移,无交叉,对位皆为\(0\),因此为\(0\),当\(n>0\)且在不同段的时候,结果见上。