收藏 分享(赏)

数字信号处理实验4——线性卷积与圆周卷积的计算.pdf

上传人:精品资料 文档编号:10514940 上传时间:2019-11-24 格式:PDF 页数:7 大小:638.65KB
下载 相关 举报
数字信号处理实验4——线性卷积与圆周卷积的计算.pdf_第1页
第1页 / 共7页
数字信号处理实验4——线性卷积与圆周卷积的计算.pdf_第2页
第2页 / 共7页
数字信号处理实验4——线性卷积与圆周卷积的计算.pdf_第3页
第3页 / 共7页
数字信号处理实验4——线性卷积与圆周卷积的计算.pdf_第4页
第4页 / 共7页
数字信号处理实验4——线性卷积与圆周卷积的计算.pdf_第5页
第5页 / 共7页
点击查看更多>>
资源描述

1、数字信号处理实验 线性卷积与圆周卷积的计算通信中英2班潘奕铭(16086214)实验目的通过编程、上机调试程序,进一步增强使用计算机解决问题的能力。掌握线性卷积与圆周卷积软件的实现方法,并验证两者之间的关系。基本原理线性卷积:圆周卷积:设两个有限长序列 和 ,均为 点长,则它们的 的圆周卷积等价于如下程序:1. for i in range(0,n-1):2. for j in range(0,n-1):3. h(i+j)%n)+=xi*yj;两个有限长序列的线性卷积:序列 为 点长,序列 为 点长,则它们的线性卷积 的最大长度为 ,也就是说当 和 时。圆周卷积和线性卷积的关系:序列 为 点长

2、,序列 为 点长,若序列 和进行 点的圆周卷积,其结果是否等于该两序列的线性卷积,完全取决于圆周卷积的长度。 当 时,圆周(循环)卷积等于线性卷积。否则,圆周卷积等于两个序列的线性卷积加上相当于下式的时间混叠,即:实验内容已知两个有限长序列:实验前,预先笔算好这两个序列的线性卷积及下列几种情况的圆周卷积:线性卷积:点圆周卷积:点圆周卷积:点圆周卷积:点圆周卷积:编写程序计算两个序列的线性卷积和各点的圆周卷积并打印出来。思路:线性卷积 自带了我们直接调用即可。对于圆周卷积,我们要先回顾一般计算圆周卷积的主要流程,即翻转 序列,每次计算完一个点的值以后对 序列循环移位然后再 序列对应相乘相加计算新

3、的位置的点值,所以这里我们的思路就是对于翻转后的 序列我们构造一个 矩阵后将其转置再左乘 序列后求得的序列即是我们要的圆周卷积序列。正确性不言而喻,就是把上面的过程用矩阵乘法的形式表现出来。波形图: 线性卷积和 点圆周卷积: 线性卷积和 点圆周卷积: 线性卷积和 点圆周卷积: 线性卷积和 点圆周卷积: 程序清单:1. % 用直接法实现圆周卷积2. % y=circonv(x1,x2,N)3. % y:输出序列4. % x1,x2:输入序列5. % N:圆周卷积的长度6. function yc=circonv(x1,x2,N)7. if length(x1)N8. error(N必须大于等于x

4、1的长度)9. end10. if length(x2)N11. error(N必须大于等于x2的长度)12. end13. x1=x1,zeros(1,N-length(x1)14. x2=x2,zeros(1,N-length(x2)15. n=0:1:N-1;16. x2=x2(mod(-n,N)+1);%对下标取模后重新排列,生成序列x2(-n)N17. H=zeros(N,N);18. for n=1:1:N19. H(n,:)=cirshiftd(x2,n-1,N);%该矩阵第k行为x2(k-1-n)N20. end21. yc=x1*H;%矩阵转置后进行圆周卷积22. 23. %

5、 直接实现序列x的圆周移位24. % y=cirshifed(x,m,N)25. % x:输入序列,且它的长度小于N26. % m:移位位数27. % N:圆周卷积的长度28. % y:输出的移位序列29. function y=cirshiftd(x,m,N)30. if length(x)N31. error(x的长度必须小于N);32. end33. x=x,zeros(1,N-length(x);34. n=0:1:N-1;35. y=x(mod(n-m,N)+1);36. 37. % 主程序,axis的坐标范围根据各自的圆周卷积后的长度进行调整38. xn=1,2,3,4,5;39.

6、 hn=1,2,1,2;40. yln=conv(xn,hn);41. ycn=circonv(xn,hn,5);42. ny1=0:1:length(yln)-1;43. ny2=0:1:length(ycn)-1;44. subplot(2,1,1);45. stem(ny1,yln);46. subplot(2,1,2);47. stem(ny2,ycn);48. axis(0,5,0,25);将实验结果和预先笔算的结果进行比较,验证其正确性。对比可知程序完全正确,输出结果完全一致。思考题:有一些问题的答案已经渗透在上面的报告中,故这里不再赘述,只做一些补充线性卷积的运算步骤一般可以分为哪几个部分? 翻转,平移,相乘,相加。另一种思路:1. for i in range(0,n-1):2. for j in range(0,m-1):3. hi+j+=xi*yj;采用圆周卷积运算代替线性卷积运算的原因? 时域上的圆周卷积对应于频域上相当于两个序列的 相乘,而这一步我们可以用从 优化到 ,即对两个序列 求得 序列后相乘再用回去,运行速度大大提升,可以运用到需要更大计算量的卷积中去。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报