北邮Matlab实验报告概要.doc

北邮Matlab实验报告概要

《数字信号处理》Matlab实验 实现重叠相加和重叠保留算法,完成线性卷积的分段计算(可任意指定及); 对算法的概括性说明; 1)重叠相加法 重叠相加法是将待过滤的信号分割成长为N的若干段,每一段都可以和有限时宽单位取样响应作卷积,再将过滤后的各段重叠相加。 具体算法实现:建立缓存序列,每次输入N点序列,通过计算x(n)和h(n) 的循环卷积实现线性卷积运算,将缓存的M-1点序列和卷积结果相加,并输出前N点作为计算结果,同时缓存后M-1点,如此循环,直至所有分段计算完毕,则输出序列y(n)为最终计算结果。 2)重叠保留法 重叠保留法相当于将xl(??)和h(??)作循环卷积,然后找出循环卷积中相当于线性卷积的部分。在这种情况下,将序列y(n)分为长为N的若干段,每个输入段和前一段有M-1个重叠点 。此时只需要将发生重叠的前M-1个点舍去,保留重叠的部分并输出,则可获得序列y(n)。 源代码及流程图; 2.1 源代码: function[y] = overlap_add(x,h,N) M = length(h); if NM N = M+1; end L = M+N-1; Lx = length(x); T = ceil(Lx/N); t = zeros(1,M-1); x = [x,zeros(1,(T+1)*N-Lx)]; y = zeros(1,(T+1

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档