数字信号处理实践与应用-MATLAB话数字信号处理(第2版) 课件 案例十三 - 化整为零之重叠保留法_第1页
数字信号处理实践与应用-MATLAB话数字信号处理(第2版) 课件 案例十三 - 化整为零之重叠保留法_第2页
数字信号处理实践与应用-MATLAB话数字信号处理(第2版) 课件 案例十三 - 化整为零之重叠保留法_第3页
数字信号处理实践与应用-MATLAB话数字信号处理(第2版) 课件 案例十三 - 化整为零之重叠保留法_第4页
数字信号处理实践与应用-MATLAB话数字信号处理(第2版) 课件 案例十三 - 化整为零之重叠保留法_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

案例十三——化整为零之重叠保留法内容概要案例设置目的相关基础理论情境任务及步骤原理初探实际信号滤波测试思考题总结报告要求案例设置目的通过实验理解大量数据处理给平台带来的影响

;理解重叠保留法实现大数据线性卷积的原理与方法;对重叠保留法的特点进行更深刻的认识;进一步认识线性卷积在工程实践中的实现思路。相关基础理论对大数据进行滤波,常用的有重叠相加法(overlap-add)和重叠保留法(overlap-save)两种处理方法。下面将讨论重叠保留法的原理与实现,还是通过一个例子讨论该方法的原理。设输入信号x(n)是一个Ls=10点长的序列,M阶FIR系统单位脉冲响应h(n)是一M+1=3点长序列。将x(n)分成2段,分别记为x0(n)和x1(n),与重叠相加法不同,这里分段时要求后一段x1(n)和与前一段x0(n)重叠M=2点,即x0(n)={x(0),x(1),x(2),x(3),x(4)},x1(n)={x(3),x(4),x(5),x(6),x(7),x(8),x(9)}x0(n)这一段也可以看成是与x

1(n)

重叠了M=2点(x

1(n)为全零序列)的结果,即x0(n)={0,0,x(0),x(1),x(2),x(3),x(4)},这样表示后x0(n)成了自变量n取值区间在

2~4的7点长序列。这时综合x0(n)和x1(n)来看,每段短序列每次都从原序列x(n)中取L=5个新的样点。若分别直接计算x0(n)、x1(n)与h(n)的

线性卷积,考虑到线性卷积的结果本身会x0(n)或x1(n)长M点,再加上x(n)分段过程中重叠的M点,因此

相邻两段的输出结果必然出现2M点的重叠;若计算x0(n)、x1(n)与h(n)

的N=L+M=7点长圆周卷积,结果会怎样呢?

(13.1)相关基础理论为了理解方便,下面直接给出两个短序列x0(n)、x1(n)以7为周期进行周期延拓并翻转后的一个周期内的样点值排列,分段圆周卷积和直接线性卷积计算的结果如表13.1所示。截取的一个周期的起点分别对应序列x0(n)的n=

2和x1(n)的n=3。

表13.1卷积计算对照表相关基础理论从表13.1可以明确看出,1每个N=L+M点长的短序列xi(n)

与M阶FIR滤波器单位脉冲响应h(n)进行N点圆周卷积的结果仍为N点长序列;2每段圆周卷积的结果从第M+1个样点到第N个样点都准确地对应原始输入序列x(n)

与h(n)

线性卷积的L个样点值;3将每段圆周卷积的结果后L个样点值保留并串接起来便得到x(n)

与h(n)

线性卷积的结果。由

该例可以推广到一般形式。首先将Ls长的输入信号x(n)

切分成长为N的短序列xi(n),且xi(n)

与xi

1(n)

重叠M个样点(滤波器的阶数),即(13.2)即每个长为N的短序列xi(n)

与xi

1(n)

相比只有L=N-M个新样点加入。当Ls不是L的整倍数时,要在x(n)

的后边补零。然后,截取后的每个短序列xi(n)

与M阶FIR滤波器的单位脉冲响应h(n)

计算N点的圆周卷积,结果记为yci(n),(13.3)最后,保留每段圆周卷积结果yci(n)的后L个点,并将它们串接起来便得到x(n)与h(n)线性卷积的结果,第i段的输出结果记为youti(n),即(13.4)相关基础理论x(n)与h(n)的卷积结果y(n)与各分段卷积结果yci(n)的关系可以写成(13.5)以上便是重叠保留法计算Ls长的输入信号x(n)与M+1点h(n)线性卷积的整个过程。重叠保留法的思想可以用图表示,原理如图13.1所示。情境任务及步骤一、原理初探设x(n)是输入信号,FIR系统单位脉冲响应h(n)

是3点长序列。其中x(n)

=

{1,2,4,

2,2,0,

6,2,

4,2,2,

10,6,2,2,0,2},h(n)

=

{1,1/2,1/4}。1.直接计算x(n)与h(n)的线性卷积y(n)二者的线性卷积可以手动计算,也可以调用函数conv实现。创建图形窗口Figure1,用stem函数画出y(n)~n的波形,n=0,1,…,19。在图中加注网格线,纵坐标显示范围为

10~10。2.用重叠保留法计算x(n)与h(n)的线性卷积y(n)(1)将x(n)分成长为N=8的段,所得短序列分别记为x0(n)、x1(n)、x2(n)

和x3(n),且x0(n)={0,0,x(0),x(1),x(2),x(3),x(4),x(5)},必要时在x(n)

尾部进行必要补零。各短序列与h(n)的圆周卷积分别记为yc0(n)、yc1(n)、yc2(n)

和yc3(n)。(2)创建图形窗口Figure2,并从上至下分成4个子窗口,分别画出yci(n)~n,i=0,1,2,3,横轴显示范围为n=

2,

1,0,1,…,1

9。在图中加注网格线和图题,纵坐标显示范围为

10~10。情境任务及步骤(3)对照图形窗口Figure1和Figure2,找出样值幅度相同的点的位置。(4)合成y(n)。按照式(13.5)将yci(n)

相加得到序列y(n),i=0,1,2,3。创建图形窗口Figure3,并从上至下分成5个子窗口,上边的4个子窗口分别画出yci(n)~n,i=0,1,2,3,最下面的子窗口画出y(n)~n,n=

2,

1,0,1,…,19。在图中加注网格线和图题,纵坐标显示范围为

10~10。仔细对照图形窗口Figure3,记录第5个子窗口与前4个子窗口中样值幅度相同的点,并将Figure3中的第5个子窗口与Figure1对比,并判断异同。情境任务及步骤二、实际信号滤波测试设有一个由四个单音组成的复合信号xt,四个单频的频率分别是f1=100Hz,f2=200Hz,f3=300Hz,f4=400Hz,且幅度均为单位1。假定采样频率Fs=8000Hz,试用窗函数法设计FIR滤波器,以滤除频率为f1和f4的单频,并评估所设计滤波器的性能。1.生成复合信号xtxt是四个单位幅度单频正弦信号的叠加,信号持续时间tend为2s。2.用窗函数法设计数字带通滤波器1)滤波器指标设定(1)边界频率设定。通带截止频率这样设定,通带低端截止频率fp1=190Hz,通带高端截止频率fp2=310Hz,阻带低端截止频率fs1=110Hz,阻带高端截止频率fs2=390Hz。

(2)衰减指标设定。在阻带截止频率处的衰减不低于60dB。情境任务及步骤2)调用函数设计满足滤波器指标的FIR滤波器调用函数fir1确定FIR滤波器系数或滤波器的单位脉冲响应,并记为b。

b=fir1(M,[Wn1Wn2],'bandpass',winB);其中滤波器阶数M设定为600,带通滤波器两个归一化边界频率分别按照下述方式进行设置:Wn1=2*pi*(fp1+fs1)/2/Fs/pi;Wn2=2*pi*(fp2+fs2)/2/Fs/pi;WinB表示所用的窗函数,每个样点值由下述语句确定:winB=blackman(M+1);函数fir1更为详细的调用语法可以通过MATLAB中的Help文件学习。

情境任务及步骤3.滤波(1)对信号xt进行直接进行线性卷积滤波,结果记为filteredxt1,即filteredxt1=conv(b,xt);(2)对信号xt通过重叠保留法进行滤波,结果记为filteredxt2。每段长度N设定为1024。这里需要根据分段长度N、xt的长度lxt、滤波器阶数M等参数确定序列xt的前后需要补零的个数。调用MATLAB函数cconv实现圆周卷积。相关函数的调用语法可以通过MATLAB中的Help文件学习。考虑到要进行耗时统计,循环体内要避免任何不必要的重复运算。而且要提前开辟存储空间以便存储结果filteredxt2。情境任务及步骤4.卷积计算算法性能评估1)主观评价调用函数sound,试听xt、filteredxt1、filteredxt2的声效,重点对比后两者的效果。为提高对比效果,建议执行完主程序后在命令窗口中调用sound进行试听。2)时域对比创建新的图形窗口,画出两次滤波结果的差值波形,即filteredxt1-filteredxt2,并添加网格线(grid)。分析两种实现方法结果的差异在什么样的数量级,并将结果记入情境任务总结报告。3)频域对比调用函数fft,计算xt、filteredxt1、filteredxt2的DFT,并将结果分别记为X0、X1、X2。创建新的图形窗口,并将窗口从上至下分为两个子窗口,分别显示滤波前后的频谱图。两个子窗口中显示的频谱都要进行归一化,即最大幅度对应0dB。分析两种实现方法的结果在什么情况下有明显差异,并将结果记入情境任务总结报告。情境任务及步骤4)时效对比在程序中,conv和filter两个函数调用语句之前均首先调用tic,语句之后随即都再调用toc。(1)测试信号长度影响。将tend分别设置为2s、20s、200s和1200s重新执行程序,比较分段处理与非分段处理执行时间的差异,并将比较结果记入情境任务总结报告。(2)测试分段长度影响。在tend取1200s条件下,将lb分别设置为1

1024、2

1024、4

1024、8

1024和16

1024重新执行程序,比较分段处理与非分段处理执行时间的差异,并将比较结果记入情境任务总结报告。思考题(1)重叠保留法的提出是为了解决什么样的问题?(2)重叠保留法进行分段卷积时,输入序列尾部补零的个数与序列本身长度、分段长度、滤波器阶数之间有何具体关系?总结报告要求(1)按照附录中格式书写情境任务总结报告,原理部分要简要描述重叠保留法分段计算线性卷积的原理,书写情境任务时可适当进行归纳和总结,但至少要列出【情境任务及步骤】相关内容的各级标题。(2)情境任务的程序清单除在报告中出现外,还必须以独立的m文件形式单独提交。程序清单要求至少按程序块进行注释。(3)效果图和得出

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论