信号与系统基础:线性卷积与圆周卷积的深度对比

线性卷积

卷积是两个时间序列之间一种激励和响应得出结果的关系,是可交换、可结合和可分配的。假定一个线性时不变系统的冲激响应为,输入信号通过该系统的输出信号为

有限长序列的线性卷积和圆周卷积的图1

对于离散信号,长度分别为N,M的两个有限长序列x[n](0~N-1),h[n](0~M-1)的线性卷积定义如下:

有限长序列的线性卷积和圆周卷积的图2

两个有限长序列的线性卷积结果也是有限长序列,长度为N+N-1(0~N+M-2)。信号的卷积在Matlab中有实现函数conv(u,v),可自行查看,具体实现如下:

有限长序列的线性卷积和圆周卷积的图3

线性卷积的实现过程:将其中一个序列进行反褶后平移,与另一个序列相乘,相乘结果进行累加,用动图表示如下:

有限长序列的线性卷积和圆周卷积的图4




循环卷积


长度都为N的两个有限长序列x[n](0~N-1),h[n](0~N-1)的循环卷积定义如下:

有限长序列的线性卷积和圆周卷积的图5

循环卷积结果的长度仍为N,若两序列长度不等,采用补零法。

循环卷积主要过程:

1)对两个序列进行指定长度的周期延拓(长度不够,进行补零);

2)其中一个周期序列固定,另外一个周期序列翻转;

3)翻转后的周期序列不断时移,然后对两个周期序列重叠的点进行相乘;

4)对上一步相乘的结果在一个周期内进行累加,所得结果也是一个周期序列;

5)对得到的周期序列取主值区间,得到循环卷积结果。

快速傅里叶变换(FFT)的出现,使得利用循环卷积计算线性卷积成为了常规思维。循环卷积和线性卷积等价的条件为:循环卷积长度应该大于或等于两个序列非零值长度之和减1。

用一个特别简单的例子给大家介绍一下线性卷积和循环卷积的输出结果:



N=5;

x=[1 2 3];

h=[1 1 1];

conv(x,h) % 线性卷积结果

x=[x,zeros(1,N-length(x))];

h=[h,zeros(1,N-length(h))];

m=0:N-1;

xcir=zeros(N,N);

for n=0:N-1

xcir(:,n+1)=x(mod((n-m),N)+1)';

end

yn=h*xcir  % 循环卷积结果


两个长度都为3的序列:[1 2 3]和[1 1 1],当N=5时,线性卷积和循环卷积结果都为:[1 3 6 5 3]。当N=4时,循环卷积结果为:[4 3 6 5],当N=3时,循环卷积结果为:[6 6 6]。

在很多实际应用当中,输入序列可能是一个很长的序列,如果用循环卷积代替线性卷积,系统响应h[n]需要补很多零,用FFT计算循环卷积的运算量相对直接计算线性卷积的运算量没有优势,甚至会超过直接计算的运算量。

因此,在利用循环卷积计算线性卷积之前,要对输入序列(长序列)进行分段,得到和h[n]长度相当的子序列。

免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删

QR Code
微信扫一扫,欢迎咨询~

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 155-2731-8020
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

手机不正确

公司不为空