文章目录

  • 循环卷积
    • 循环矩阵(Circulant Matrices)
    • 循环矩阵与循环卷积的关系
  • 线性卷积

循环卷积

循环矩阵(Circulant Matrices)

C=[c0c1⋯cN−1cN−1c0⋱⋮⋮⋱⋱c1c1⋯cN−1c0]∈RN×N(1)\boldsymbol{C}=\left[ \begin{matrix} c_0& c_1& \cdots& c_{N-1}\\ c_{N-1}& c_0& \ddots& \vdots\\ \vdots& \ddots& \ddots& c_1\\ c_1& \cdots& c_{N-1}& c_0\\ \end{matrix} \right] \in \mathbb R^{N \times N} \tag{1} C=⎣⎢⎢⎢⎢⎡​c0​cN−1​⋮c1​​c1​c0​⋱⋯​⋯⋱⋱cN−1​​cN−1​⋮c1​c0​​⎦⎥⎥⎥⎥⎤​∈RN×N(1)

任意循环矩阵C1,C2\boldsymbol C_1, \boldsymbol C_2C1​,C2​,C1C2=C2C1\boldsymbol C_1 \boldsymbol C_2 = \boldsymbol C_2 \boldsymbol C_1C1​C2​=C2​C1​也是循环阵(因此循环矩阵必然也是normal矩阵,因为CCT=CTC\boldsymbol C \boldsymbol C^T= \boldsymbol C^T \boldsymbol CCCT=CTC)。循环阵可以表示为多项式形式:
C=c0I+c1P+⋯+cN−1PN−1(2)\boldsymbol C = c_0 \boldsymbol I + c_1 \boldsymbol P + \cdots + c_{N-1} \boldsymbol P^{N-1} \tag{2} C=c0​I+c1​P+⋯+cN−1​PN−1(2)

其中P\boldsymbol PP为循环移位矩阵(Circlic Shift Matrix) ,这里我们考虑up cyclic shit matrix (down cyclic shift matrix 类似),以N=4N=4N=4为例
P=[0100001000011000](3)\boldsymbol{P}=\left[ \begin{matrix} 0& 1& 0& 0\\ 0& 0& 1& 0\\ 0& 0& 0& 1\\ 1& 0& 0& 0\\ \end{matrix} \right] \tag{3} P=⎣⎢⎢⎡​0001​1000​0100​0010​⎦⎥⎥⎤​(3)

其循环移位过程可以从下式看出
P[x1x2x3x4]=[0100001000011000][x1x2x3x4]=[x2x3x4x1](4)\boldsymbol P \left[ \begin{array}{c} x_1\\ x_2\\ x_3\\ x_4\\ \end{array} \right] = \left[ \begin{matrix} 0& 1& 0& 0\\ 0& 0& 1& 0\\ 0& 0& 0& 1\\ 1& 0& 0& 0\\ \end{matrix} \right] \left[ \begin{array}{c} x_1\\ x_2\\ x_3\\ x_4\\ \end{array} \right] = \left[ \begin{array}{c} x_2\\ x_3\\ x_4\\ x_1\\ \end{array} \right] \tag{4} P⎣⎢⎢⎡​x1​x2​x3​x4​​⎦⎥⎥⎤​=⎣⎢⎢⎡​0001​1000​0100​0010​⎦⎥⎥⎤​⎣⎢⎢⎡​x1​x2​x3​x4​​⎦⎥⎥⎤​=⎣⎢⎢⎡​x2​x3​x4​x1​​⎦⎥⎥⎤​(4)

因为P\boldsymbol PP是循环移位矩阵,所以
PN=I(5)\boldsymbol P^N = \boldsymbol I \tag{5} PN=I(5)

这里N=4N=4N=4。

根据式(2),不难得出,C\boldsymbol CC的特征向量与P\boldsymbol PP的特征向量等价,因此我们主要分析P\boldsymbol PP的谱特性。
det(P−λI)=det([−λ1000−λ1000−λ1100−λ])=λ4−1=0⇒λ=1,−1,i,−i(5)\begin{aligned} \text{det} \left ( \boldsymbol P - \lambda \boldsymbol I \right ) &= \text{det} \left ( \left[ \begin{matrix} -\lambda& 1& 0& 0\\ 0& -\lambda& 1& 0\\ 0& 0& -\lambda& 1\\ 1& 0& 0& -\lambda\\ \end{matrix} \right] \right ) \\ & = \lambda^4 - 1 \\ & = 0 \\ \Rightarrow \lambda &= 1, -1, i, -i \end{aligned} \tag{5} det(P−λI)⇒λ​=det⎝⎜⎜⎛​⎣⎢⎢⎡​−λ001​1−λ00​01−λ0​001−λ​⎦⎥⎥⎤​⎠⎟⎟⎞​=λ4−1=0=1,−1,i,−i​(5)

其特征值如下图所示

所对应的特征向量为
λ=1,[1111];λ=−1,[1−11−1];λ=i,[1ii2i3];λ=−i,[1−i(−i)2(−i)3](6)\lambda =1,\left[ \begin{array}{c} 1\\ 1\\ 1\\ 1\\ \end{array} \right] ; \lambda =-1,\left[ \begin{array}{c} 1\\ -1\\ 1\\ -1\\ \end{array} \right] ; \lambda =i,\left[ \begin{array}{c} 1\\ i\\ i^2\\ i^3\\ \end{array} \right] ; \lambda =-i,\left[ \begin{array}{c} 1\\ -i\\ \left( -i \right) ^2\\ \left( -i \right) ^3\\ \end{array} \right] \,\, \tag{6} λ=1,⎣⎢⎢⎡​1111​⎦⎥⎥⎤​;λ=−1,⎣⎢⎢⎡​1−11−1​⎦⎥⎥⎤​;λ=i,⎣⎢⎢⎡​1ii2i3​⎦⎥⎥⎤​;λ=−i,⎣⎢⎢⎡​1−i(−i)2(−i)3​⎦⎥⎥⎤​(6)


F=12[11111−11−11ii2i31−i(−i)2(−i)3](7)\boldsymbol{F}=\frac{1}{2} \left[ \begin{matrix} \begin{array}{c} 1\\ 1\\ 1\\ 1\\ \end{array}& \begin{array}{c} 1\\ -1\\ 1\\ -1\\ \end{array}& \begin{array}{c} 1\\ i\\ i^2\\ i^3\\ \end{array}& \begin{array}{c} 1\\ -i\\ \left( -i \right) ^2\\ \left( -i \right) ^3\\ \end{array}\\ \end{matrix} \right] \tag{7} F=21​⎣⎢⎢⎡​1111​​1−11−1​​1ii2i3​​1−i(−i)2(−i)3​​⎦⎥⎥⎤​(7)

对应的特征分解为
P=F[10000−10000i0000−i]FH=FΛFH(8)\begin{aligned} \boldsymbol P &= \boldsymbol F \left[ \begin{matrix} 1& 0& 0& 0\\ 0& -1& 0& 0\\ 0& 0& i& 0\\ 0& 0& 0& -i\\ \end{matrix} \right] \boldsymbol F^H \\ & = \boldsymbol F \boldsymbol \Lambda \boldsymbol F^H \end{aligned} \tag{8} P​=F⎣⎢⎢⎡​1000​0−100​00i0​000−i​⎦⎥⎥⎤​FH=FΛFH​(8)

因此循环矩阵C\boldsymbol CC的特征分解可以写为,
C=F(c0I+c1Λ+cN−1ΛN−1)FH(9 )\boldsymbol C = \boldsymbol F \left ( c_0 \boldsymbol I + c_1 \boldsymbol \Lambda + c_{N-1} \boldsymbol \Lambda^{N-1} \right ) \boldsymbol F^H \tag{9 } C=F(c0​I+c1​Λ+cN−1​ΛN−1)FH(9 )

为了更好地理解,当N=8N=8N=8时,其特征值可以用下图表示

其中
ω=e2πiN,N=8(10)\omega = e^{\frac{2 \pi i}{N}} , \ \ N = 8 \tag{10}ω=eN2πi​,  N=8(10)

特征矩阵
F8=18[111⋯11ω1ω2⋯ω71ω2ω4⋯ω1411111ω3ω4ω5ω6ω7ω6ω8ω10ω12ω14⋯ω21⋯ω28⋯ω35⋯ω42⋯ω49](11)\boldsymbol F_8 = \frac{1}{\sqrt 8} \left[ \begin{matrix} 1& 1& 1& \begin{matrix} \cdots& 1\\ \end{matrix}\\ 1& \omega ^1& \omega ^2& \begin{matrix} \cdots& \omega ^7\\ \end{matrix}\\ 1& \omega ^2& \omega ^4& \begin{matrix} \cdots& \omega ^{14}\\ \end{matrix}\\ \begin{array}{c} 1\\ 1\\ 1\\ \begin{array}{c} 1\\ 1\\ \end{array}\\ \end{array}& \begin{array}{c} \omega ^3\\ \omega ^4\\ \omega ^5\\ \begin{array}{c} \omega ^6\\ \omega ^7\\ \end{array}\\ \end{array}& \begin{array}{c} \omega ^6\\ \omega ^8\\ \omega ^{10}\\ \begin{array}{c} \omega ^{12}\\ \omega ^{14}\\ \end{array}\\ \end{array}& \begin{array}{c} \begin{matrix} \cdots& \omega ^{21}\\ \end{matrix}\\ \begin{matrix} \cdots& \omega ^{28}\\ \end{matrix}\\ \begin{matrix} \cdots& \omega ^{35}\\ \end{matrix}\\ \begin{array}{c} \begin{matrix} \cdots& \omega ^{42}\\ \end{matrix}\\ \begin{matrix} \cdots& \omega ^{49}\\ \end{matrix}\\ \end{array}\\ \end{array}\\ \end{matrix} \right] \tag{11} F8​=8​1​⎣⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎡​11111111​​​1ω1ω2ω3ω4ω5ω6ω7​​​1ω2ω4ω6ω8ω10ω12ω14​​​⋯​1​⋯​ω7​⋯​ω14​⋯​ω21​⋯​ω28​⋯​ω35​⋯​ω42​⋯​ω49​​​​⎦⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎤​(11)

一般地,FN\boldsymbol F_NFN​中的第(k,n)(k,n)(k,n)个元素为:
FN(k,n)=1Nexp⁡(i2πknN),0≤k,n≤N−1(12)\boldsymbol F_N (k,n) = \frac{1}{N}\exp (\frac{i 2 \pi k n}{N}) , \ \ 0 \leq k, n \leq N-1 \tag{12} FN​(k,n)=N1​exp(Ni2πkn​),  0≤k,n≤N−1(12)

小结:循环矩阵C\boldsymbol CC与循环移位矩阵P\boldsymbol PP有密切的关系,尤其是谱空间意义上。一般地,循环矩阵C\boldsymbol CC都可以被谱分解为
C=FDFH(13)\boldsymbol C = \boldsymbol F \boldsymbol D \boldsymbol F^H \tag{13} C=FDFH(13)

其中F\boldsymbol FF为DFT矩阵,D\boldsymbol DD为对角阵,且多数情况下都是复数。

循环矩阵与循环卷积的关系


cT=[c0,c1,⋯,cN−1]∈R1×NvT=[v0,v1,⋯,vN−1]∈R1×N\boldsymbol c^T = [c_0, c_1, \cdots, c_{N-1}] \in \mathbb R^{1 \times N} \\ \boldsymbol v^T = [v_0, v_1, \cdots, v_{N-1}] \in \mathbb R^{1 \times N} cT=[c0​,c1​,⋯,cN−1​]∈R1×NvT=[v0​,v1​,⋯,vN−1​]∈R1×N

那么 cT\boldsymbol c^TcT 和 vT\boldsymbol v^TvT 的循环卷积为
cT⊗vT=vT[c0c1⋯cN−1cN−1c0⋱⋮⋮⋱⋱c1c1⋯cN−1c0]=cT[v0v1⋯vN−1vN−1v0⋱⋮⋮⋱⋱v1v1⋯vN−1v0](14)\begin{aligned} & \boldsymbol c^T \otimes \boldsymbol v^T \\ & = \boldsymbol v^T \left[ \begin{matrix} c_0& c_1& \cdots& c_{N-1}\\ c_{N-1}& c_0& \ddots& \vdots\\ \vdots& \ddots& \ddots& c_1\\ c_1& \cdots& c_{N-1}& c_0\\ \end{matrix} \right] \\ & = \boldsymbol c^T \left[ \begin{matrix} v_0& v_1& \cdots& v_{N-1}\\ v_{N-1}& v_0& \ddots& \vdots\\ \vdots& \ddots& \ddots& v_1\\ v_1& \cdots& v_{N-1}& v_0\\ \end{matrix} \right] \end{aligned} \tag{14} ​cT⊗vT=vT⎣⎢⎢⎢⎢⎡​c0​cN−1​⋮c1​​c1​c0​⋱⋯​⋯⋱⋱cN−1​​cN−1​⋮c1​c0​​⎦⎥⎥⎥⎥⎤​=cT⎣⎢⎢⎢⎢⎡​v0​vN−1​⋮v1​​v1​v0​⋱⋯​⋯⋱⋱vN−1​​vN−1​⋮v1​v0​​⎦⎥⎥⎥⎥⎤​​(14)

举例:令cT=[3,1,2]\boldsymbol c^T=[3,1,2]cT=[3,1,2],vT=[4,6,1]\boldsymbol v^T=[4,6,1]vT=[4,6,1],那么
cT⊗vT=[3,1,2]⊗[4,6,1]=[4,6,1][312231123]=[3,1,2][461146614]=[25,14,17]\begin{aligned} \boldsymbol c^T \otimes \boldsymbol v^T &= [3,1,2] \otimes [4,6,1] \\ & = [4,6,1] \left[ \begin{matrix} 3& 1& 2\\ 2& 3& 1\\ 1& 2& 3\\ \end{matrix} \right] \\ & = [3,1,2] \left[ \begin{matrix} 4& 6& 1\\ 1& 4& 6\\ 6& 1& 4\\ \end{matrix} \right] \\ &= [25, 14, 17] \end{aligned} cT⊗vT​=[3,1,2]⊗[4,6,1]=[4,6,1]⎣⎡​321​132​213​⎦⎤​=[3,1,2]⎣⎡​416​641​164​⎦⎤​=[25,14,17]​

除此之外,我们还可以使用多项式来求解
(3I+P+2P2)(4I+6P+P2)=12I+22P+17P2+13P3+2P4=25+24P+17P2\begin{aligned} &(3\boldsymbol I+\boldsymbol P + 2 \boldsymbol P^2)(4 \boldsymbol I+6\boldsymbol P+\boldsymbol P^2)\\ &= 12 \boldsymbol I + 22 \boldsymbol P + 17 \boldsymbol P^2 + 13 \boldsymbol P^3 + 2 \boldsymbol P^4 \\ & = 25 + 24 \boldsymbol P + 17 \boldsymbol P^2 \end{aligned} ​(3I+P+2P2)(4I+6P+P2)=12I+22P+17P2+13P3+2P4=25+24P+17P2​

因为PN=P\boldsymbol P^N = \boldsymbol PPN=P。

线性卷积

我们以一个线性时不变系统来说明:
r[m]=∑l=1Lhlx[m−l]r[m] = \sum_{l=1}^L h_l x[m - l] r[m]=l=1∑L​hl​x[m−l]

因为线性卷积较为常见,我们不做过多分析,直接给出矩阵意义下的线性卷积,令hT=[4,6,1]\boldsymbol h^T = [4,6,1]hT=[4,6,1],xT=[3,1,2]\boldsymbol x^T = [3,1,2]xT=[3,1,2],那么
rT=hT∗xT=[4,6,1][312000312000312]=[12,22,17,13,2]\begin{aligned} \boldsymbol r^T &= \boldsymbol h^T * \boldsymbol x^T \\ &= [4,6,1] \left[ \begin{matrix} 3& 1& \begin{matrix} 2& 0& 0\\ \end{matrix}\\ 0& 3& \begin{matrix} 1& 2& 0\\ \end{matrix}\\ 0& 0& \begin{matrix} 3& 1& 2\\ \end{matrix}\\ \end{matrix} \right] \\ & = [12,22,17,13,2] \end{aligned} rT​=hT∗xT=[4,6,1]⎣⎡​300​130​2​0​0​1​2​0​3​1​2​​⎦⎤​=[12,22,17,13,2]​

循环卷积和线性卷积(矩阵视角)相关推荐

  1. 循环卷积与线性卷积的实现matlab,线性卷积与循环卷积的计算

    如果 则 N 上式称为循环卷积或圆周卷积 注: 为 序列的周期化序列: 为 的主值序列. 上机编程计算时, 可表示如下: (3) 两个有限长序列的线性卷积 序列 为 点长,序列 为 点长, 为这两个序 ...

  2. matlab实现线性卷积和循环卷积,仿真实验四 循环卷积和线性卷积的实现

    实验四 循环卷积和线性卷积的实现 一.实验目的 1.进一步了解并掌握循环卷积与线性卷积的概念 2.掌握线性卷积与循环卷积软件实现的方法,理解掌握二者的关系 二.实例分析与计算 实验原理: 两个序列的N ...

  3. 数字信号处理 --- 用离散傅里叶变换(循环卷积)实现线性卷积(个人学习笔记)

    时域的循环卷积等于频域的离散傅里叶变换,离散傅里叶变换DFT是离散傅里叶级数DFS的一个周期,离散傅里叶级数DFS是对连续时间傅里叶变换CTFT的采样 离散傅里叶级数DFS 周期为10的方波信号的傅里 ...

  4. 循环卷积和线性卷积以及快速卷积计算

    做block AEC 的时候看不懂对w补零,x加入上一帧,fft和ifft计算后舍弃前一半数据的操作.深入调查了一下循环卷积和overlap save. https://www.zhihu.com/q ...

  5. 线性卷积、循环卷积、周期卷积的定义、计算方法及三者之间的关系

    文章目录 前言 一.卷积的物理意义及性质 1. 物理意义 2. 卷积性质 二.线性卷积定义及计算方法 1. 定义公式 2. 适用范围 3. 计算方法 三.循环卷积定义及计算方法 1. 定义公式 2. ...

  6. 信号处理--线性卷积与循环卷积

    文章目录 一.线性卷积 1. 应用背景 2. 定义式 3. 计算方法 3.1 定义式 3.2 作图法 3.3 列表法 二.循环卷积 1. 序列的循环移位 2. 循环卷积的定义 3. 用矩阵计算循环卷积 ...

  7. MATLAB GUI设计(线性卷积和循环卷积的比较--笔记)

    原创循环卷积代码,转载需注明出处 线性卷积与循环卷积的比较 实验目的和要求 掌握循环卷积和线性卷积的原理,与理论分析结果比较,加深理解循环卷积与线性卷积之间的关系. 实验内容和步骤 1) 已知两序列X ...

  8. 线性卷积、周期卷积和循环卷积

    线性卷积.周期卷积和循环卷积 例题:已知序列x1(n)=[0,2,2,1] (n=0,1,2,3); x2(n)=[1,2,-1,1] (n=0,1,2,3).求解 (1)计算线性卷积y1(n)=x1 ...

  9. 基于matlab实现信号的线性卷积与循环卷积

    系列文章目录 数字信号处理(DSP:Digital Signal Process)是电子通信领域非常重要的研究方向,博主汇总了数字信号处理(DSP)中常用的经典案例分析,主要基于算法分析.MATLAB ...

最新文章

  1. 阿里终面:为什么SSD不能当做内存用?
  2. 程序员过关斩将--面试官再问你Http请求过程,怼回去!
  3. java utf-8文件处理bom头
  4. Ubuntu环境下安装Bochs
  5. 明晚直播 | 做持有专利的程序员很难吗?专家教你如何申请!
  6. Spring Security——自定义认证错误提示信息及自适应返回格式解决方案
  7. ftruncate函数的功能及使用
  8. Centos7 安装mongodb记录
  9. 读取Android系统的多媒体库
  10. java jcsh执行linux命令,java jcsh执行linux命令
  11. 在 可编辑的 Div 的 光标位置 插入 文字 或 HTML
  12. python条件语句练习题_[python](1)---条件语句练习题
  13. Python面向对象-0
  14. EVE上传Dynamips、IOL和QEMU镜像
  15. JAVA如何通过身份证号码计算年龄、生日、性别
  16. Pytorch forward方法调用原理
  17. 企业如何做软文营销推广?
  18. iOS开发脚踏实地学习day15-画板
  19. 便签文档储存位置在哪?便签保存在哪个文件夹,怎么在文件管理找到
  20. 自媒体创作爆款标题的7个方法,短视频、文章都好用

热门文章

  1. [版本构造]DCC32 命令行续,DCC32的参数详解
  2. 思科金牌、银牌代理商名录
  3. IDEA查询包含关键字的文本文件
  4. C++ ——实现链表反转逆序
  5. linux文件的删除
  6. LeetCode122-买卖股票的最佳时机II-模拟-数组
  7. 实现摄像头在内网、外网、GB28181实现“视频监控/直播”的常用几种方式
  8. 倾角传感器的工业应用领域
  9. 《从0开始学产品策划》第一期:认清项目本质
  10. 如何清理卸下应用的残余文件_Windows电脑清理、卸载一个应用程序,并清除残留文件...