圆周摺积也作圆周卷积,是不同于线性卷积的一种卷积运算,周期卷积的一种。两个函数的圆周卷积是由他们的周期延伸所来定义的。周期延伸意思是把原本的函数平移某个周期 T 的整数倍后再全部加起来,所产生的新函数。
定义圆周摺积,也叫循环卷积,两个长度为N的有限场序列x(n)和h(n)的循环卷积定义为:
即循环卷积相当于周期延拓后的序列x˜(n)做周期卷积后再取主值区间,若x(n)和h(n)的离散傅里叶变换为X(K)和H(K),则有DFT[y(n)]=X(K)H(K)。即时域中的循环卷积对应于其离散傅里叶变换的乘积,循环卷积的结果y(n)长度为N1。
性质由于离散傅里叶变换(DFT)的实质是周期序列变换到频域的描述。可以证明:两个有限长序列在时域的循环卷积,其DFT等于在频域两个序列相应的DFT的乘积。
它表明DFT具有循环卷积性质(CCP),也是区别于其他变换的重要特性。正是这种性质,用计算机通过计算DFT达到计算循环卷积和线性卷积的目的,提髙了运算效率。按长度为N的两个序列,其线性卷积的长度应为2N-1,而循环卷积的长度仍然为N。为此,可以通过补零把序列长度增加到L≥2N-1。这样,一方面使循环卷积的长度等于线性卷积,另一方面避免进行循环卷积过程出现混叠造成失真,使计算结果与线性卷积相等,从而实现利用DFT计算线性卷积的目的。循环卷积有快速算法,广泛应用于对通信系统的分析和综合以及对信号的数字处理2。
算法离散信号的圆周卷积可以经由圆周卷积定理使用快速傅立叶变换(FFT)而有效率的计算。因此,若原本的(线性)卷积能转换成圆周卷积来计算,会远比直接计算更快速。考虑到长度L 和长度 M 的有限长度离散信号,做卷积之后会成为长度L+M-1的信号,因此只要把两离散信号补上适当数目的零(zero-padding)成为N点信号,其中N≥L+M-1,则它们的圆周卷积就与卷积相等。即可接着用N点 FFT 作计算。
用以上方法计算卷积时,若两个信号长度相差很多,则较短者须补上相当多的零,太不经济。而且在某些情况下,例如较短的h[n] 是一个 FIR 滤波器而较长的x[n] 是未知长度的输入(像语音)时,直接用以上方法要等所有的输入都收到后才能开始算输出信号,太不方便。这时可以把x[n] 分割成许多适当长度的区块(称为 block convolution),然后一段一段的处理。经过滤波后的段落再仔细的连接起来,借由输入或输出的重叠来处理区块连接的部份。这两种做法分别称为重叠-储存之卷积法和重叠-相加之卷积法3。
线性卷积对于线性非时变离散时间系统来说,若序列x(n)是系统的输入,h(n)是系统在单位脉冲作用下的单位脉冲响应,则由于输入序列x(n)可表示为一系列脉冲的线性组合,所以,根据线性系统的叠加性质,系统的输出在系统初始不储能的条件下(零状态响应)可求得。
线性卷积是数字信号处理中最常见的一种基本运算,不仅用于系统分析还用于系统设计。如果代表滤波器的脉冲响应则卷积运算就是一种线性滤波,y(n)是信号x(n)通过滤波器后的响应2。
本词条内容贡献者为:
曹慧慧 - 副教授 - 中国矿业大学