信号处理基础-- DTFT、DFT和STFT基本概念

DTFT、DFT和STFT基本概念

离散信号 x ( n ) x(n) x(n) 可以表示为连续模拟信号的采样,即

x ( n ) = x a ( t ) ∣ t = n T s x(n) = x_{a}(t)|_{t=nT_s} x(n)=xa(t)t=nTs

其中 x a ( t ) x_a(t) xa(t) 是模拟信号, t t t 代表时间, T s T_s Ts 代表采样周期。

DISCRETE-TIME FOURIER TRANSFORM

序列 x ( n ) x(n) x(n) 的DTDT 可以表示为
X ( w ) = ∑ n = − ∞ + ∞ x ( n ) e − j w n X(w)=\sum_{n=-\infty}^{+\infty}{x(n)e^{-jwn}} X(w)=n=+x(n)ejwn

x ( n ) = 1 2 π ∫ − π π X ( w ) e j w n d w x(n)=\frac{1}{2\pi}\int_{-\pi}^{\pi}X(w)e^{jwn}dw x(n)=2π1ππX(w)ejwndw

其中逆变换仍为积分表达式。

DTFT特性

根据DTFT的定义,通过数学推导(积分变换)可以得到DTFT的特性

特性 时域 频域
线性 a 1 x 1 ( n ) + a 2 x 2 ( n ) a_1x_1(n) + a_2x_2(n) a1x1(n)+a2x2(n) a 1 X 1 ( w ) + a 2 X 2 ( w ) a_1X_1(w) + a_2X_2(w) a1X1(w)+a2X2(w)
时移 x ( n − n 0 ) x(n-n_0) x(nn0) e − j w n 0 X ( w ) e^{-jwn_0}X(w) ejwn0X(w)
频移 e − j w 0 n x ( n ) e^{-jw_0n}x(n) ejw0nx(n) X ( w − w 0 ) X(w-w_0) X(ww0)
相乘 x 1 ( n ) x 2 ( n ) x_1(n)x_2(n) x1(n)x2(n) X 1 ( w ) ∗ X 2 ( w ) X_1(w)*X_2(w) X1(w)X2(w)
卷积 x 1 ( n ) ∗ x 2 ( n ) x_1(n)*x_2(n) x1(n)x2(n) X 1 ( w ) X 2 ( w ) X_1(w)X_2(w) X1(w)X2(w)

最重要的一条特性就是时域的卷积等于频域的DTFT相乘,证明如下。
卷积(线性)定义:

x 1 ( n ) ∗ x 2 ( n ) = ∑ m = − ∞ ∞ x 1 ( m ) x 2 ( n − m ) x_1(n)* x_2(n)=\sum_{m=-\infty}^{\infty}x_1(m)x_2(n-m) x1(n)x2(n)=m=x1(m)x2(nm)

证明:
D F T F ( x 1 ( n ) ∗ x 2 ( n ) ) = ∑ n = − ∞ ∞ x 1 ( n ) ∗ x 2 ( n ) e − j w n = ∑ n = − ∞ ∞ ∑ m = − ∞ ∞ x 1 ( m ) x 2 ( n − m ) e − j w n = ∑ m = − ∞ ∞ x 1 ( m ) e − j w m ∑ n = − ∞ ∞ x 2 ( n − m ) e − j w ( n − m ) = X 1 ( w ) X 2 ( w ) DFTF(x_1(n) * x_2(n))=\sum_{n=-\infty}^{\infty}x_1(n)* x_2(n)e^{-jwn}\\=\sum_{n=-\infty}^{\infty}\sum_{m=-\infty}^{\infty}x_1(m)x_2(n-m)e^{-jwn}\\=\sum_{m=-\infty}^{\infty}x_1(m)e^{-jwm}\sum_{n=-\infty}^{\infty}x_2(n-m)e^{-jw(n-m)}\\=X_1(w)X_2(w) DFTF(x1(n)x2(n))=n=x1(n)x2(n)ejwn=n=m=x1(m)x2(nm)ejwn=m=x1(m)ejwmn=x2(nm)ejw(nm)=X1(w)X2(w)

DISCRETE FOURIER TRANSFORM(DFT)

因为DFT的时域和频域变换都是离散的表达式(无积分),故DFT少了中间的一个用来强调只有时间离散的T(time)。

DTFT的时域信号表达式是离散频率的连续函数(积分),不利于我们的应用计算,且实际使用时一般只用N个(有限)点的采样进行计算,因此我们可以使用N个点在频域进行采样,得到DFT表达式。

X ( k ) = ∑ n = 0 n = N − 1 x ( n ) e − j w n N k , 0 < = k < = N − 1 X(k)=\sum_{n=0}^{n=N-1}x(n)e^{-\frac{jwn}{N}k},0<=k<=N-1 X(k)=n=0n=N1x(n)eNjwnk,0<=k<=N1

x ( n ) = 1 N ∑ k = 0 k = N − 1 X ( k ) e − j w n N k , 0 < = n < = N − 1 x(n)=\frac{1}{N}\sum_{k=0}^{k=N-1}X(k)e^{-\frac{jwn}{N}k},0<=n<=N-1 x(n)=N1k=0k=N1X(k)eNjwnk,0<=n<=N1

其中 e − j w n N e^{-\frac{jwn}{N}} eNjwn 是序列中的基频, e − j w n N k e^{-\frac{jwn}{N}k} eNjwnk k k k 次谐波分量,全部谐波分量中只有 N N N 个独立的分量,因为

e − j w n N ( k + N ) = e − j w n N k e^{-\frac{jwn}{N}(k+N)} = e^{-\frac{jwn}{N}k} eNjwn(k+N)=eNjwnk

FAST FOURIER TRANSFORM(FFT)

FFT和DFT计算结果是一样的,只是利用了DFT计算的重叠部分进行了优化,使得计算效率提高了 N l o g 2 N \frac{N}{log_2{N}} log2NN 倍,当N越大时,效率提高的越多,以语音中常用的 N = 512 N=512 N=512 为例,提高了56.9倍。

DFT(FFT)特性

DFT特性大部分和DTFT相同,但卷积定理方面不一样,DFT的时域圆周卷积等于频域乘积,而不是卷积。但大部分应用中我们用到比较多的是卷积,而不是圆周卷积,但在一定条件下圆周卷积和卷积相等。

SHORT-TIME FOURIER TRANSFORM(STFT)

前面介绍的DFT和DTFT都适用于统计平稳的信号,不适用于像语音这样的非平稳信号,为此引入STFT,将语音信号分成几十毫秒(一般为32ms)一帧的信号,每一帧近似是平稳的信号,然后每一帧进行DFT变换。

X ( n , w ) = ∑ n = − ∞ n = ∞ x ( m ) w ( n − m ) e − j w m X(n,w)=\sum_{n=-\infty}^{n=\infty}x(m)w(n-m)e^{-jwm} X(n,w)=n=n=x(m)w(nm)ejwm

其中 x ( m ) x(m) x(m) 是输入信号, w ( m ) w(m) w(m) 是分析窗,分析窗具有重要的作用,特别是在STFT的分析合成中。

STFT变换具有两种解释,每一种解释代表了一种分析综合的方法,第一种解释是,固定帧数n,就代表着加窗信号的傅里叶变换,第二种解释是,固定频率w,这就是一个滤波操作。

你可能感兴趣的:(信号处理基础,音频信号处理)