信号与系统基础教程(一)

前导
线性时不变系统(LTI)
卷积、系统的时域模型
傅里叶级数和傅里叶变换

绪论

基本概念

  信号 $x(t)$,顾名思义以时间 $t$ 为自变量来刻画系统的特征,本课程研究的系统主要为线性时不变系统。关于信号和系统常见的专有名词和术语如下所示,其基本含义不再赘述。

  • 连续/离散时间信号
  • 信号的能量和功率,能量(有限)信号,功率(有限)信号(能量无限)
  • 记忆/无记忆系统、可逆/不可逆系统、稳定/不稳定系统、时变/时不变系统、线性/非线性系统、增量线性系统、因果性

  可以对信号进行时移、尺度、反转三种变换,其对应图像的变化遵从一般函数图像仿射变换的规律。一般按照先时移再尺度变换的顺序绘制变换后的图像。

\[x(t)\longrightarrow x(at+b)\]

  对离散时间信号来说,尺度变换等价于抽取操作,不可逆。

简单信号

  单位阶跃: \(u(t)=\begin{cases}1& t>0 \\ 0& t<0\end{cases}\)

  单位冲激:$\delta(t)=0, t\ne0$,$u(t)=\int_{-\infty}^{t}\delta(\lambda){\rm d}\lambda, t\ne0$,$\int_{-\varepsilon}^{+\varepsilon}\delta(\lambda){\rm d}\lambda=1, \varepsilon>0$

  离散型单位阶跃: \(u[n]=\begin{cases}1& n=0,1,2\dots \\ 0& n=-1,-2\dots\end{cases}\)

  离散型单位脉冲: \(\delta[n]=\begin{cases}1& n=0 \\ 0& n\ne0\end{cases}=u[n]-u[n-1]\)

  大多数离散型信号 $x[n]$ 均可认为采样于连续性的 $x(t)$,但要注意如离散型单位冲激信号 $\delta[n]$ 就并非采样得来。对连续时间信号采样不一定能得到数字信号(数字信号的值是有限个不相同的值)

  冲激信号 $\delta$ 具有筛选/采样性:

\[x(t)\delta(t-t_0)=x(t_0)\delta(t-t_0) ,\quad x[n]\delta[n-n_0]=x[n_0]\delta[n-n_0]\] \[\int_{t-\varepsilon}^{t+\varepsilon}f(\lambda)\delta(\lambda-t)d\lambda=f(t)\quad\varepsilon>0\]

周期信号的叠加

  我们研究的信号中比较有代表性的是满足 $x(t)=x(t+T)$ 的周期信号,周期信号的最小周期称为基波周期。周期信号的叠加依旧是周期信号;如两个周期分别为 $T_1$ 和 $T_2$ 的信号叠加,其满足 $T_1/T_2=m/n$,$\gcd(m,n)=1$,则叠加后信号的基波周期为 $nT_1$。

  对于离散型信号来说不能简单的通过其采样的连续性信号计算其周期。例如对于 $x[n]=cos(wn+\theta)$,假设其具有周期性,则可得到:

\[x[n]=cos(w(n+m)+\theta)=cos(wn+\theta+2k\pi)\]

  整理得到 $wm=2k\pi$,因此对于这一类型的离散型信号,其具有周期性的充要条件为 $w$ 是 $\pi$ 的有理数倍,基波周期为使等式成立的最小正整数 $m$,即 $T=\text{argmin}_m(\frac{w}{2\pi}\times m\in\mathbb{N}^+)$

  笔者注:后期做频谱分析($e^{i\omega t}$)的时候我们习惯性研究对象是角频率 $\omega$ 而不是频率 $f$,因此大多数情况下基波频率指的是角频率。

系统的时域模型

时域模型与卷积

  一个线性时不变系统可用输入/输出关系式表示为:

\[y[n]=\sum_{k=0}^\infty w_kx[n-k]\]

  我们将单位脉冲响应 $h[n]$ 定义为系统接收单位脉冲做出的响应,即 $h[n]=\sum_0^{+\infty} w_k\delta[n-k]$。由采样性质可得 $h[n]$ 即权值 $w$,所以我们可以将 $h[n]$ 理解为描述系统的一组基,而单位冲激函数起到类似于投影的采样作用:

\[x[n]=\sum_{k=-\infty}^\infty x[k]\delta[n-k]=x[n]*\delta[n]\]

  某种意义上可将 $\delta[n]$ 理解为表述系统的很特殊的单位基。

  很容易注意到,上述系统表达式的基相对于信号 $x(t)$ 总存在大小为 $k$ 的时移,这是由于我们一般通过黑箱测试,即向系统输入信号来研究输出信号的变化特征,从而探究系统的特征。显然,最初输入的信号影响系统的时长一定长于最后输入的信号,即最初输入的信号它积累的效应是不同于最后输入的信号的积累效应。

一个不恰当的例子:连扇你四巴掌,我该如何衡量每巴掌对你造成的影响?

  卷积,线性累积效应的点反馈,延迟响应的线性叠加。卷积的提出本质上是为了简化带有时延的线性时不变系统的响应计算;由于系统对冲激的响应存在时延,因此若计算系统经历多个冲激后的响应情况,必须要考虑到时延引起的积累效应,如:

\[y[3]=h[0]x[3]+h[1]x[2]+h[2]x[1]+h[3]x[0]\]

  最先发出的冲激信号 $x[0]$ 已经累积了三个时延,因此在计算过程中就会出现这种交错相乘的情况。这也是为什么卷积中最重要的一步是先“反卷”,说道理还是为了简化公式的表达:

\[y[n]=\sum_{k=-\infty}^\infty x[k]h[n-k]=x[n]*h[n]\]

  因此读者需注意,真正的卷积(convolution)和深度学习中提到的所谓“卷积”是不同的。深度学习中不需要考虑时延问题,那里提到的“卷积”实质上是计算方式类似的互相关(cross-correlation)操作(不需要反卷)

  将离散域上的内积公式扩充至连续的实数域上我们就可以得到在实数域上的卷积公式:

\[x(t)=\int_{-\infty}^\infty x(\lambda)\delta(t-\lambda)d\lambda, \quad y(t)=\int_{-\infty}^\infty x(\lambda)h(t-\lambda)d\lambda\]

  了解了卷积反卷的本质后我们不难理解和证明卷积运算满足交换、分配和结合律。关于卷积的其他有趣的性质暂且按下不表。

常见系统元件的卷积表示

元件 表达式
恒等器 $x(t)=x(t)*\delta(t)$
延时器 $x(t)*\delta(t-t_0)=x(t-t_0)$
积分器 $x(t)*u(t)=\int_{-\infty}^tx(\lambda)d\lambda$
可逆系统 $h(t)*h_1(t)=\delta(t)$
累加器 $y[n]=x[n]*u[n]$
差分器 $y[n]=x[n]-x[n-1]=x[n]*(\delta[n]-\delta[n-1])$

  显然累加器和差分器互为可逆系统,$u[n]*(\delta[n]-\delta[n-1])=u[n]-u[n-1]=\delta[n]$

其他知识点补充

  系统稳定性:$\int_{-\infty}^{+\infty}|h(t)|dt<\infty$

  FIR(有限长脉冲响应), IIR(无限长脉冲响应)。顾名思义,因果的 LTI 对应 FIR,而递归型的系统为 IIR

  具有零附加条件的线性常系数微分方程所描述的系统是线性的(没有特解干扰);零初始条件描述的系统是因果的线性时不变系统

系统的频域分析

傅里叶级数与傅里叶变换

  由于 $\cos$ 和 $\sin$ 的天然正交性,我们知道对任意一个满足 Dirichlet 条件的周期函数(信号)$x(t)=x(t+T)$,我们均可将其表示为三角傅立叶级数的展开式:

\[x(t)=a_0+\sum_{k=1}^\infty[a_k\cos k\omega_0 t + b_k\sin k\omega_0 t]\] \[a_k=\frac{2}{T}\int_0^Tx(t)\cos(k\omega_0 t){\rm d}t\qquad b_k=\frac{2}{T}\int_0^Tx(t)\sin(k\omega_0 t){\rm d}t\] \[a_0=\frac{1}{T}\int_0^Tx(t){\rm d}t\qquad\int_0^{2\pi}\sin^2\theta{\rm d}\theta=\pi\]

  为简化表述方式,我们可以结合欧拉公式将三角傅立叶级数改写为更加清晰的复指数级数

\[x(t)=\sum_{k=-\infty}^{+\infty}c_ke^{jk\omega_0t}=\sum_{k=-\infty}^{+\infty}c_k[\cos(k\omega_0t)+j\sin(k\omega_0t)]\] \[c_0=a_0 \qquad c_k=\frac{1}{2}(a_k-jb_k)=\frac{1}{T}\int_0^Tx(t)e^{-jk\omega_0t}{\rm d}t \qquad c_{-k}=\overline{c_k}\]

  显然,根据复指数级数系数的共轭性质,若 $x(t)$ 为偶函数,则 $c_k$ 为纯实数;若 $x(t)$ 为奇函数,则 $c_k$ 为纯虚数。任何情况下均有 $a_k=2\Re(c_k), b_k=-2\Im(c_k)$

例:$x(t)=1+\sin(\omega t)+3\cos(\omega t)+\cos(2\omega t+\frac{\pi}{2})$
  $c_0=1\qquad c_1=\frac{1}{2}(3-j)\qquad c_2=\frac{1}{2}j\qquad c_{-2}=-\frac{1}{2}j$

  物理意义上可理解为一个信号可由一个偏移导向的直流信号 $a_0$ 和一组变化导向的谐波合成而来:

cos_sin_merge.png

  在拟合过程中我们仅截取了有限低频谐波,舍弃了大量高频谐波,因此在变化幅度较大的地方会出现 Gibbs 现象(过冲),这在方波中尤为明显。上图右侧为该信号的频谱图 $x(\omega)$,一般来说如果知道时间信号的每组谐波对应的幅度、相位就可以还原信号。所谓频域分析就是分析谐波幅度和相位与角频率间的函数关系。频谱图相较于时域图要明显更简单,在处理信号叠加等问题上要更方便。

frequency.png

  从线谱上看,傅里叶级数的系数 $c_k$ 的模对应着信号的幅度谱,幅角对应着信号的相位谱。这也是为什么我们仅需知道信号的傅里叶级数表示的系数集合 $c_k$,就可以完全还原整个信号。

  上述分析仅针对周期信号而言,事实上如果将普通非周期信号延拓为周期为 $\infty$ 的信号,就可得到针对一般信号的频域分析方式,即傅里叶变换

\[X(\omega)=\int_{-\infty}^{+\infty}x(t)e^{-j\omega t}{\rm d}t\qquad -\infty<\omega<\infty\]

fourier.png

  一言蔽之,傅里叶级数是某个傅里叶变换的采样形式。傅里叶变换以频域的新视角展现了信号的所有特征。

傅里叶系数的时移尺度变换特性

\[x(t)\Rightarrow c_k=\frac{1}{T}\int_Tx(t)e^{-jk(2\pi/T)t}{\rm d}t\]
变换 傅里叶系数
$x(t+t_0)$ $e^{jk(2\pi/T)t_0}c_k$
$x(at)$ $c_k$
$x(at+t_0)$ $e^{jak(2\pi/T)t_0}c_k$

  笔者注:傅里叶系数不受尺度变换影响,这可以理解为在同一个傅里叶变换下不同密度的采样形式;时移的影响可以结合时间图和频谱图来看,时间图位于直角坐标系而频谱图位于极坐标系,对直角坐标系做平移变换必然会导致极坐标系里原来的点发生旋转(左移对应逆时针旋转),这就是时移后的傅里叶系数会多出一个 $e^{i\theta}$ 因子的原因。

傅里叶反变换的常数项证明

\[FT: \mathcal{F}(k)=\int_{-\infty}^{\infty}f(x)e^{-ikx}{\rm d}x\quad \lim_{a\rightarrow0}\frac{\sin (\frac{\pi x}{a})}{\pi x}=\delta(x)\] \[\begin{aligned} f(x) &=A\int_{-\infty}^{\infty}\mathcal{F}(k)e^{ikx}{\rm d}k \\ &= A\lim_{a\rightarrow\infty}\int_{-a}^a\mathcal{F}(k)e^{ikx}{\rm d}k \\ &= A\lim_{a\rightarrow\infty}\int_{-\infty}^{+\infty} f(\lambda){\rm d}\lambda\int_{-a}^ae^{ik(x-\lambda)}{\rm d}k \\ &=2A\lim_{a\rightarrow\infty}\int_{-\infty}^{+\infty} f(\lambda){\rm d}\lambda\frac{\sin a(x-\lambda)}{x-\lambda} \\ &=2Af(x)\lim_{a\rightarrow\infty}\int_{-\infty}^{+\infty}\frac{\sin a(x-\lambda)}{x-\lambda}{\rm d}\lambda \\ &=2Af(x)\int_{-\infty}^{+\infty}\frac{\sin y}{y}{\rm d}y \\ &= 2A\pi f(x) \end{aligned}\] \[\Rightarrow A=\frac{1}{2\pi}\Rightarrow IFT: f(x)=\frac{1}{2\pi}\int_{-\infty}^{\infty}\mathcal{F}(k)e^{ikx}{\rm d}k\]

  如此,就能更好的理解傅里叶变换作为基底的含义。$2\pi$ 是傅里叶变换函数的特征值,$\mathcal{F}(\mathcal{F}(f(x)))=2\pi f(-x)$。

傅里叶变换的性质

特性 变换对/特性
线性 $ax(t)+bv(t)\leftrightarrow aX(\omega)+bV(\omega)$
时移性 $x(t-c)\leftrightarrow X(\omega)e^{-j\omega t}$
时间尺度变换 $x(at)\leftrightarrow\frac{1}{a}X(\frac{\omega}{a})\quad a>0$
时域反折 $x(-t)\leftrightarrow X(-\omega)=\overline{X(\omega)}$
频域微分 $t^nx(t)\leftrightarrow j^n\frac{d^n}{d\omega^n}X(\omega)\quad n=1,2\dots$
频移性 $x(t)e^{j\omega_0t}\leftrightarrow X(\omega-\omega_0)$
$sin(\omega_0t)$ 频移性 $x(t)\sin(\omega_0t)\leftrightarrow\frac{j}{2}[X(\omega+\omega_0)-X(\omega-\omega_0)]$
$cos(\omega_0t)$ 频移性 $x(t)\cos(\omega_0t)\leftrightarrow\frac{1}{2}[X(\omega+\omega_0)+X(\omega-\omega_0)]$
时域微分 $\frac{d^n}{dt}x(t)\leftrightarrow (j\omega)^nX(\omega)$
时域积分 $\int_{-\infty}^tx(\lambda){\rm d}\lambda\leftrightarrow\frac{1}{j\omega}X(\omega)+\pi X(0)\delta(\omega)$
时域卷积 $x(t)*v(t)\leftrightarrow X(t)V(t)$
时域乘积 $x(t)v(t)\leftrightarrow\frac{1}{2\pi}X(\omega)*V(\omega)$
Parseval 定理 $\int_{-\infty}^\infty x(t)v(t){\rm d}t=\frac{1}{2\pi}\int_{-\infty}^\infty\overline{X(\omega)}V(\omega){\rm d}\omega$
Parseval 定理的特例 $\int_{-\infty}^\infty x^2(t){\rm d}t=\frac{1}{2\pi}\int_{-\infty}^\infty |X(\omega)|^2{\rm d}\omega$
对称性 $X(t)\leftrightarrow2\pi x(-\omega)$
  • 时移对应直角坐标系。频移对应极坐标系
  • $\sin, \cos$ 用于调幅(高频信号易传输)
  • 时域微分通过分部积分法证明
  • 时域积分涉及广义傅里叶变换
  • 信号的能量与其傅里叶变换模平方的积分有关
  • 对称性利用傅里叶反变换证明

例:已知 $h(t)=1+\cos(0.5\pi t), X(\omega)=2S_a(\omega)e^{-j\omega}, y(t)=x(t)*h(t)$ ,求 $y(t)$

\[H(\omega)=2\pi\delta(\omega)+\pi[\delta(\omega+0.5\pi)+\delta(\omega-0.5\pi)]\] \[\begin{aligned} y(t) &=x(t)*h(t) \\ &=\frac{1}{2\pi}\int_{-\infty}^{\infty}H(\omega)X(\omega)e^{j\omega t}{\rm d}\omega \\ &=X(0)+\frac{1}{2}X(-0.5\pi)e^{-j0.5\pi t}+\frac{1}{2}X(0.5\pi)e^{j0.5\pi t} \\ &= 2 + \frac{4}{\pi}\sin\frac{\pi}{2}t \end{aligned}\]
常用傅里叶变换对
$\delta(t)\leftrightarrow1$
$1\leftrightarrow2\pi\delta(\omega)$
$e^{jk\omega_0t}\leftrightarrow2\pi\delta(\omega-k\omega_0)$
$u(t)\leftrightarrow\frac{1}{j\omega}+\pi\delta(\omega)$
$\delta(t-c)\leftrightarrow e^{-j\omega c}$
$e^{-bt}u(t)\leftrightarrow\frac{1}{j\omega+b}$
$p_\tau(t)\leftrightarrow\tau S_c(\frac{\tau\omega}{2})$
$\cos(\omega_0t+\theta)\leftrightarrow\pi[e^{-j\theta}\delta(\omega+\omega_0)+e^{j\theta}\delta(\omega-\omega_0)]$
$\sin(\omega_0t+\theta)\leftrightarrow j\pi[e^{-j\theta}\delta(\omega+\omega_0)-e^{j\theta}\delta(\omega-\omega_0)]$
  • 周期信号的傅里叶变换: \(x(t)=\sum_{k=-\infty}^{+\infty}c_ke^{jk\omega_0t}=\sum_{k=-\infty}^{+\infty}2\pi c_k\delta(\omega-k\omega_0)\)

  实偶信号的傅里叶变换为实偶函数,实奇信号的傅里叶变换为虚奇函数。