优·02_实验二 卷积与傅立叶变换.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验二 卷积与傅立叶变换 本次试验内容提要: 卷积和解卷积函数 卷积和解卷积是信号处理中常用的数学工具。 conv ( a , b ) 卷积函数 deconv ( a , b ) 解卷积函数 其中,a , b为两个向量。 傅立叶分析 傅立叶变换是信号处理的最重要、最基本的工具之一。 fft(a) 离散傅立叶正变换 ifft(a) 离散傅立叶反变换 abs(a) 求复数的模(幅值) angle(a) 求复数的相角 real(a) 求复数的实部 imag(a) 求复数的虚部 注:在使用函数fft时,可加入另一个参数n来指定变换的点数,如:y= fft (x , n ),当数据x的点数少于n时,则补零使总点数为n;当点数多于n点时则截断输入数据,当不输入参数时,MATLAB使用x的点数计算。 信号的卷积 离散信号的卷积 由《信号与系统》可知,两个离散信号的卷积公式为: 计算机只能处理离散的有限的数字信号, 因而我们首先考虑两个有限长序列的卷积。假设序列的非零区间为(,),的非零区间为(,),则的序列长度为,的序列长度为。由卷积运算的性质可以得出,的序列长度为,且非零区间为(,) matlab的conv()函数可以用来快速计算两个离散序列的卷积和。例如,已知序列f1(k)和f2(K)如下所示: 则调用conv()函数求取上述两个序列卷积和的命令如下: f1=ones(1,3); f2=0:3; f=conv(f1,f2) 运行结果为: f = 0 1 3 6 5 3 前面我们提过,完整的表示一个离散信号需要两个离散序列,一个用来表示各个点上的函数值,一个用来表示非零信号的时间区间。而matlab的conv()函数计算卷积时,只对函数值进行卷积,而无法给出卷积后的信号非零区间的范围。因此,要正确地标识出函数conv()的计算结果,我们还需要确定非零区间所对应的序号向量。下面我们利用conv()函数做出一些改进写出函数dconv(),函数语句如下: function [f,k]=dconv(f1,f2,k1,k2) f=conv(f1,f2); k0=k1(1)+k2(1); k3=length(f1)+length(f2)-2; k=k0 : k0+k3; subplot(3,1,1), stem(k1,f1,filled) title(f1(k)), xlabel(k), ylabel(f1(k)) subplot(3,1,2), stem(k2,f2,filled) title(f2(k)), xlabel(k), ylabel(f2(k)) subplot(3,1,3), stem(k,f,filled) title(f(k)), xlabel(k), ylabel(f(k)) 例如,我们想利用上面的dconv()函数做出下列序列的卷积 调用dconv()的语句如下: f1=[1,2,1]; k1=[-1,0,1]; f2=ones(1,5); k2=-2:2; [f,k]=dconv(f1,f2,k1,k2) 运行结果如下: 连续信号的卷积 两个连续信号的卷积公式为: 但我们应该知道,计算机只能处理离散的数字信号,所以连续信号的卷积实际上都是用离散信号的卷积来近似的。我们回想一下在《信号与系统》中如何得到连续信号的卷积积分公式的,积分实际上是一个极限过程,是将图像看成许多个小矩形近似构成的。因此有如下公式: 上面y(t)是一个连续函数,我们作它的图像时实际上只需求出有限个间断点上的函数值,再用直线连接这些点的数值就可以了。在作图时,我们一般等间隔的取这些点,比如间隔取为,则作图时我们需要求处的值(n = )。实际上n的值也不可能是负无穷到正无穷,作图时我们往往只关心某个区间的函数图像并不一定需要绘出全部范围。因此上面的公式还可以改写为: 式中A,B根据需要的作图区间来定,即为间隔的大小。我们注意这时公式中求和号后面的部分,实际上可以用离散序列的卷积来代替。这样我们更改的值就可以得到y(t)的各种不同精度的估计值。例如,我们需要求取下列两个连续信号的卷积积分: 我们可以象离散情况时那样,先写出一个计算连续卷积的函数sconv(),再用它来作图。函数体的命令如下: function [f,k]=sconv(f1,f2,k1,k2,p) f=conv(f1,f2); f=f*p; k0=k1(1)+k2(1); k3=length(f1)+length(f2)-2; k=k0 :p : k0+ k3*p; subplot(3,1,1), plot(k1,f1) ylabel(f

文档评论(0)

xiaofei2001129 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档