卷积、频域乘积和矩阵向量乘积三种形式之间的等价关系与转换

线性移不变系统

线性移不变系统(Linear Time-Invariant System, LTI系统)同时满足线性和时不变性两个条件。

  1. 线性 :如果输入信号的加权和通过系统后,输出是这些输入信号单独通过系统后的输出的相同加权和,那么该系统就是线性的。数学上,对于任意输入信号 x 1 ( t ) x_1(t) x1(t)和 x 2 ( t ) x_2(t) x2(t),以及任意常数 a a a和 b b b,如果系统满足:
    y ( t ) = a ⋅ h ( x 1 ( t ) ) + b ⋅ h ( x 2 ( t ) ) y(t) = a \cdot h(x_1(t)) + b \cdot h(x_2(t)) y(t)=a⋅h(x1(t))+b⋅h(x2(t))

    其中 h ( ⋅ ) h(\cdot) h(⋅)表示系统对输入的响应,则该系统是线性的。

  2. 时不变性 :如果一个系统的输入信号延迟一段时间后,其输出仅仅是原输出信号同样延迟的时间,而没有其他变化,那么该系统就是时不变的。即,对于任意输入信号 x ( t ) x(t) x(t)及其延迟版本 x ( t − τ ) x(t - \tau) x(t−τ),系统的输出也仅仅是 y ( t ) y(t) y(t)延迟了 τ \tau τ时间单位的版本 y ( t − τ ) y(t - \tau) y(t−τ)。

LTI系统的一个重要性质是,它们可以通过卷积 来描述。具体来说,如果 h ( t ) h(t) h(t)是系统的冲激响应(即当输入为单位脉冲时系统的输出), x ( t ) x(t) x(t)是系统的输入信号,那么系统的输出 y ( t ) y(t) y(t)可以通过输入信号与冲激响应的卷积来计算:
y ( t ) = ( x ∗ h ) ( t ) = ∫ − ∞ ∞ x ( τ ) h ( t − τ ) d τ y(t) = (x * h)(t) = \int_{-\infty}^{\infty} x(\tau) h(t - \tau) d\tau y(t)=(x∗h)(t)=∫−∞∞x(τ)h(t−τ)dτ

这个卷积公式表示,LTI系统的输出是输入信号与系统冲激响应之间的一种加权平均。这一性质使得LTI系统在理论分析和实际应用中都变得极其重要,尤其是在滤波器设计、通信系统、图像处理等领域。通过理解系统的冲激响应,可以预测系统对任何输入信号的响应。

卷积还可以写成频域乘积和矩阵向量乘积两种形式。

三者之间的等价关系与转换

时域卷积到频域乘积

①→②和②→①根据卷积定理,时域中的卷积对应于频域中的乘积。时域卷积通常用于理论分析,而频域乘积则更常用于实际计算,尤其是当信号长度较长时,通过快速傅里叶变换(FFT)实现的频域乘积可以显著提高计算效率。

  1. 傅里叶变换 :首先对输入信号 x ( t ) x(t) x(t)和冲激响应 h ( t ) h(t) h(t)进行傅里叶变换,得到它们的频域表示 X ( f ) X(f) X(f)和 H ( f ) H(f) H(f)。
    X ( f ) = F { x ( t ) } X(f) = \mathcal{F}\{x(t)\} X(f)=F{x(t)}
    H ( f ) = F { h ( t ) } H(f) = \mathcal{F}\{h(t)\} H(f)=F{h(t)}
    这里是psf2otf,解释见这里。
  2. 频域乘积 :在频域中,将 X ( f ) X(f) X(f)和 H ( f ) H(f) H(f)相乘,得到输出信号的频域表示 Y ( f ) Y(f) Y(f)。
    Y ( f ) = X ( f ) H ( f ) Y(f) = X(f) H(f) Y(f)=X(f)H(f)
  3. 逆傅里叶变换 :对 Y ( f ) Y(f) Y(f)进行逆傅里叶变换,得到输出信号 y ( t ) y(t) y(t)。
    y ( t ) = F − 1 { Y ( f ) } y(t) = \mathcal{F}^{-1}\{Y(f)\} y(t)=F−1{Y(f)}


时域卷积到矩阵向量乘积

①→③对于有限长的离散信号,卷积可以完全等价地用矩阵向量乘积来表示。这种方法在实现离散信号处理算法时非常有用,它可以利用线性代数来进行表示和计算。

  1. 构建卷积矩阵 :根据冲激响应 h n hn hn,构建卷积矩阵 H \mathbf{H} H。假设 x n xn xn的长度为 N N N, h n hn hn的长度为 M M M,则 H \mathbf{H} H是一个 ( N + M − 1 ) × N (N+M-1) \times N (N+M−1)×N的矩阵。
    H = h \[ 0 0 ⋯ 0 h 1 h 0 ⋯ 0 ⋮ ⋮ ⋱ ⋮ h M − 1 h M − 2 ⋯ h 0 0 h M − 1 ⋯ h 1 ⋮ ⋮ ⋱ ⋮ 0 0 ⋯ h M − 1 ] \mathbf{H} = \begin{bmatrix} h0 & 0 & \cdots & 0 \\ h1 & h0 & \cdots & 0 \\ \vdots & \vdots & \ddots & \vdots \\ hM-1 & hM-2 & \cdots & h0 \\ 0 & hM-1 & \cdots & h1 \\ \vdots & \vdots & \ddots & \vdots \\ 0 & 0 & \cdots & hM-1 \end{bmatrix} H= h0h1⋮hM−10⋮00h0⋮hM−2hM−1⋮0⋯⋯⋱⋯⋯⋱⋯00⋮h0h1⋮hM−1
  2. 矩阵向量乘积 :将输入信号 x n xn xn表示为列向量 x \mathbf{x} x,计算输出向量 y \mathbf{y} y。
    y = H x \mathbf{y} = \mathbf{H} \mathbf{x} y=Hx



矩阵向量乘积到时域卷积

③→①对于一个 n × n n \times n n×n的循环矩阵 C C C和一个 n n n维向量 x x x,计算 C x Cx Cx的过程实际上是一个卷积操作。设 c c c为 C C C的第一列,那么 C x Cx Cx等价于将 c c c和 x x x进行循环卷积。

  1. 提取冲激响应 :从卷积矩阵 H \mathbf{H} H中提取冲激响应 h n hn hn。通常, H \mathbf{H} H的第一行或第一列就是 h n hn hn。
  2. 计算卷积 :使用提取的 h n hn hn和输入信号 x n xn xn计算卷积。
    y n = ( x ∗ h ) n = ∑ k = 0 M − 1 x n − k h k yn = (x * h)n = \sum_{k=0}^{M-1} xn-k hk yn=(x∗h)n=k=0∑M−1xn−khk

矩阵向量乘积到频域乘积

③→②循环矩阵和BCCB矩阵的[对角化,即特征值分解](https://blog.csdn.net/u013600306/article/details/143765471?spm=1001.2014.3001.5501),特征值是傅里叶系数,特征向量是傅里叶变换基。(https://blog.csdn.net/u013600306/article/details/143728757?spm=1001.2014.3001.5501)

总结

  • 时域卷积 和 频域乘积 通过傅里叶变换和逆傅里叶变换相互转换。
  • 时域卷积 和 矩阵向量乘积 通过构建卷积矩阵实现相互转换。
  • 矩阵向量乘积 到 时域卷积 通过提取卷积矩阵中的冲激响应实现。
相关推荐
镜子AI2 小时前
镜子AI工程实践:用 Python 自动生成 GEO 问答语料与意图覆盖矩阵(零依赖)
人工智能·python·矩阵
Solange__19 小时前
航天科普怎么用AI生成3D场景?从科学约束、尺度分层到网页展示的完整方案
图像处理·人工智能·游戏·3d·ai·自然语言处理·关卡设计
t_niu_niu20 小时前
bilateral_filter_paper
图像处理·verilog·双边滤波器
学习论之费曼学习法20 小时前
无人值守AI内容矩阵实战(8):标题 A/B 实验的 6 个工程实现细节,隔日对比与自动判胜
人工智能·python·算法·矩阵·自动化·a/b测试·内容矩阵
晒太羊的猫1 天前
hot100矩阵问题
线性代数·矩阵
≮傷£≯√1 天前
opencv 图像处理(一)
图像处理·人工智能·opencv
sali-tec1 天前
C# 基于OpenCv的视觉工作流-章114-视觉与http通讯
图像处理·人工智能·opencv·计算机视觉·c#
轻口味1 天前
启元无真机二开实战1:54 个接口能做什么、不能做什么——启元 Q1/T1 SDK 能力全景与版本矩阵
线性代数·矩阵·ros2·具身智能·启元机器人
楚山之石2 天前
【Medical Image Analysis】深度学习医学图像合成综述:伪CT、合成MRI与合成PET的架构、性能与临床边界
图像处理·人工智能·学习·mr·mri
深圳安锐科技有限公司2 天前
从成像尺度到亚像素解算:变焦视觉位移监测如何让远近断面都稳
图像处理·人工智能·深度学习·算法·计算机视觉·系统架构·结构健康监测