![数字信号处理及MATLAB实现](https://wfqqreader-1252317822.image.myqcloud.com/cover/677/41398677/b_41398677.jpg)
第四节 圆周卷积
如果x1(n)和x2(n)是两个有限长序列,长度分别为N1和N2,对它们分别作N点离散傅里叶变换,其中N=max[N1,N2],即
X 1(k)=DFT[x1(n)]
X 2(k)=DFT[x2(n)]
如果X(k)=X1(k)·X2(k),那么
![](https://epubservercos.yuewen.com/688291/21570843601309506/epubprivate/OEBPS/Images/69_01.jpg?sign=1739336623-sb1y8bc8yTEURsOZ8l1IxdDWbuWbFQ4t-0-26afee3a51462bc7769032c03d6c5879)
式(3-66)表示x1(n)和x2(n)的圆周卷积。
例3-12 有两个序列x1(n)和x2(n),其中x1(n)={1,2,3|n=0,1,2},x2(n)={1,2,3,4|n=0,1,2,3},对它们作4点的圆周卷积,即x(n)=x1(n)⊗x2(n)。
解:方法一:时域求解法
由于作4点的圆周卷积,而序列x1(n)的长度小于4,因此,首先对x1(n)序列补零,使其长度为4,即x1(n)={1,2,3,0|n=0,1,2,3}。下面用式(3-66)对两个序列做循环卷积计算。
当n=0时
![](https://epubservercos.yuewen.com/688291/21570843601309506/epubprivate/OEBPS/Images/69_02.jpg?sign=1739336623-lGPN0STnadkv3CfBy7TGHGFcaIYxGGCO-0-f855230db1923e15d2751669a677b93d)
当n=1时
![](https://epubservercos.yuewen.com/688291/21570843601309506/epubprivate/OEBPS/Images/69_03.jpg?sign=1739336623-K5g1MUFNkIRMVcki39LtTl3s4qhAiFRl-0-97ee22d30fe749be588f4889b608fdcc)
当n=2时
![](https://epubservercos.yuewen.com/688291/21570843601309506/epubprivate/OEBPS/Images/69_04.jpg?sign=1739336623-gW0s1uIwxG6DipyGYn58VeHp3S1eZA5a-0-aa94d0b378e989d9d1be043ff2fdef49)
当n=3时
![](https://epubservercos.yuewen.com/688291/21570843601309506/epubprivate/OEBPS/Images/69_05.jpg?sign=1739336623-A5u8LUWult4QTs7o2i1Ph3IZeTCPqaYu-0-1b2fe97be693f6724ef11f7afb5b237e)
因此,x(n)=x1(n)⊗x2(n)={x(0),x(1),x(2),x(3)}={18,16,10,16|n=0,1,2,3}
方法二:矩阵求解法
根据圆周卷积的计算公式,可以画图解释它的计算过程。长度为N的序列x1(m)可以看成是一个圆上的N个等间隔点的样本,而长度为N的圆周时间反转且平移序列x2(n-m)也可以看做是均匀分布在同心圆上的N个等间隔点的样本。通过相邻样本的乘积求和运算,可以得到序列x(n)。图3-7是例3-12的计算过程示意图。
在图3-7中,内圆上按逆时针顺序排列x1(m)的四个样本,并且位置始终不变。外圆上按逆时针排列着x2(n—m)的四个样本。当n=0时,顺序依次为:x2(0—0),x2(0—1),x2(0—2),x2(0—3),根据循环移位性质,这四个样本分别与x2(0),x2(3),x2(2),x2(1)相等。当n=1,2,3时,这四个样本开始在前一次排序的基础上逆时针旋转。n每取一个值,内外圆上相邻样本的数值相乘,并把所有乘积相加,得到x(n)在当前n下的值。以此类推,可以得到x(n)的所有样本值,即x1(n)和x2(n)的圆周卷积。图3-7的计算原理可用矩阵的形式表示,其中x1(m)的样本值位置始终不变,可用向量表示为
![](https://epubservercos.yuewen.com/688291/21570843601309506/epubprivate/OEBPS/Images/70_01.jpg?sign=1739336623-cMiWL26KdFESDpNry50aSz1mpxRZ16ct-0-a1638263d8343a08b9e84bab7343efce)
图3-7 例3-12计算过程示意图
![](https://epubservercos.yuewen.com/688291/21570843601309506/epubprivate/OEBPS/Images/70_02.jpg?sign=1739336623-GTKUa8C0YnWEn5peUCQzDGZS5sAcrmDD-0-3e310f03cd86ab4a76d1bca60d4f5369)
x 2(m)可表示成方阵
![](https://epubservercos.yuewen.com/688291/21570843601309506/epubprivate/OEBPS/Images/70_03.jpg?sign=1739336623-JZio3KBG8juWoiLGifjQFYTZxwjlDGFz-0-9486e81d15db5f379cdb161c04f1ee9b)
x 1(n)和x2(n)的圆周卷积可以表示成上面两个矩阵的乘积,即
![](https://epubservercos.yuewen.com/688291/21570843601309506/epubprivate/OEBPS/Images/70_04.jpg?sign=1739336623-a7djb2si4LBSEgWmItST2BcgYNI3cuNV-0-c897415e905e5f3609794fb27b1e47d6)
因此,本题可表示成
![](https://epubservercos.yuewen.com/688291/21570843601309506/epubprivate/OEBPS/Images/70_05.jpg?sign=1739336623-YjISAQq13HnZhdRXYcCxGoyyoMZLXG6f-0-20086c16e665d1390719d7ace17b3a93)
方法三:频域求解法
首先,计算x1(n)和x2(n)的4点离散傅里叶变换,分别用X1(k)和X2(k)表示,即
X 1(k)={6,-2-2j,2,-2+2j|k=0,1,2,3}
X 2(k)={10,-2+2j,-2,-2-2j|k=0,1,2,3}
然后,利用公式X(k)=X1(k)·X2(k),求出X(k)={60,8,-4,8|k=0,1,2,3},最后对X(k)求IDFT,得到序列x1(n)和x2(n)的圆周卷积x(n)={18,16,10,16|n=0,1,2,3}。
方法四:用MATLAB编程求解
计算圆周卷积的参考函数如下:
![](https://epubservercos.yuewen.com/688291/21570843601309506/epubprivate/OEBPS/Images/71_01.jpg?sign=1739336623-jxbkwTgLvbEByXrLhqQWaD3cnrnFZEeo-0-91c6feb75f1e7c605d37dccd364fcf32)
在命令窗口输入下列命令:
![](https://epubservercos.yuewen.com/688291/21570843601309506/epubprivate/OEBPS/Images/71_02.jpg?sign=1739336623-KPamGl1TC5KJLgvBnZFTF2ETiqaU9cxo-0-8b83f630c16efc5f035b3468ca4b5e63)
运行结果为
![](https://epubservercos.yuewen.com/688291/21570843601309506/epubprivate/OEBPS/Images/71_03.jpg?sign=1739336623-MgnK8KZopiZ6YtgXpf6pqjje3J8oHrIC-0-452b35a1b36361a869725e7f9336b050)