25-26-离散傅里叶变换-运用举例解析
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
- 离散傅里叶级数
- 离散傅里叶变换的推导与定义 - 离散傅里叶变换的基本性质
- 频率域采样 - 离散傅里叶变换的应用举例
DFT 的 快 速 算 法 ----FFT 的 出 现, 使DFT在数字通信、 信号处 理、 数值分析等各个领域都得到广 泛应用。
1 用DFT计算线性卷积
如果
y(n) 0≤k≤L-1
h ( n ) xk ( n ) 该式说明,计算h(n) k 0 与x(n)的线性卷积时, 可先进行分段线性 h ( n ) xk ( n ) k 0 卷积yk(n) ,然后把 分段卷积结果叠加 yk ( n ) 起来即可。
k 0
其中:
h (n ) 0 n
L点 IDFT x(n ) 补 L- M 个 零 点 L 点 DFT
用DFT计算线性卷积框图
实际上,如果两个序列的长度相差很大,例如 M>>N。如选取L=M+N-1,以L为运算区间进行快速 卷积,则要求对短序列补充很多零点,序列必须全部 输入后才能进行快速计算。因此要求存贮容量大,运 算时间长,并使处理延时很大,很难实时处理。 而且,在某些应用场合,序列长度不定或者认为是 无限长(如语音信号和地震信号等),在要求实时处 理时,不能直接套用上述方法。 解决问题的方法:是将长序列分段计算,这种分段 处理法有重叠相加法和重叠保留法两种。 这里介绍重叠相加法。
ˆ (k )] ,n = ˆi (n) yk (n kM )RL (n) IDFT[Y y i L
0,1,2,…,L-1;
(5) 计算:
ˆi 1 ( M n) y ˆ i ( n) ,0 n N 2 (重叠区相加) y y(iM n) ˆ i ( n) y , N 1 n M 1 (非重叠区不加)
此时取其主值序列显然满足yc(n)= yl(n) 。 由此:循环卷积等于线性卷积的条件是-----L N+M-1
线性卷积与循环卷积
如果取L=N+M-1,则可用DFT(FFT)计算线性卷积,计算 框图如下图。其中DFT和IDFT通常用快速算法(FFT)来实现, 故常称其为快速卷积。
h (n ) 补 L- N 个 零 点 L 点 DFT y(n )
其中:L≥max[N, M]
yc ( n ) h( m ) x ( n m qL) RL (n )
m 0 q
N 1
x((n)) L
源自文库q
x(n qL),
q
m 0
N 1
h( m ) x ( n m qL) RL (n )
用DFT计算循环卷积
X 1 (k ) DFT [ x1 (n)] X 2 (k ) DFT [ x2 (n)]
则由时域循环卷积定理有:
Y(k)=DFT[y(n)]=X1(k)X2(k),
0≤k≤L-1
由此可见,循环卷积既可在时域直接计算,也可以 按照上图所示的计算框图在频域计算。 由于DFT具有快速算法(FFT),当N很大时,在频 域计算的速度快得多,因而常用DFT(FFT)计算循环卷积。
N x0 (n ) M y0 (n ) N + M- 1
N- 1
每一分段卷积yk(n)的长度 为N+M-1,因此yk(n)与yk+1(n) 有 N-1个点重叠,必须把重叠的部 分相加,才能得到完整的卷积序 列y(n)。 由图可以看出,当第二个分段卷 积y1(n)计算完后,叠加重叠点便 可得输出序列y(n)的前2M个值, 同样,分段卷积yi(n) 计算完后, 就可得到y(n)第 i 段的M个序列值。
0
x1 (n ) M
x2 (n ) M
n
n
y1 (n ) N + M- 1 y2 (n ) N + M- 1 y(n )= y0 (n )+y1 (n )+y2 (n )+ … 2M 3M+ N- 1 M
n
n
n
重叠相加法卷积示意图
用DFT计算分段卷积yk(n)的方法如下:
(1) i=0;L=N+M-1;计算并保存H(k)=DFT[h(n)]L;
yc(n)等于yl(n)以L 为周期的周期延 拓的主值序列。
对照式(1)可以看出, 上式中:
m 0
N 1
h(m) x(n qL M ) yl (n qL) yc ( n )
q
yl (n qL) RL (n )
yl(n)的长度为N+M-1,因此只有当循环卷积长度L N+M-1时, yl(n) 以L为周期进行周期延拓时才无混叠现象。
(6) i =i+1,返回(2)。
应当说明,一般x(n)是因果序列,假设初始 条件y-1(n)=0。
2 用DFT对信号进行谱分析
信号的谱分析就是计算信号的傅里叶变换。 DFT 是一种时域和频域均离散化的变换,适 合数值运算,是分析离散信号和系统的有力工具。
1. 用DFT对连续信号进行谱分析
连续信号xa(t),其频谱函数Xa(jΩ)也是连续函数。
(2) 读入xk(n)=x(n)RM(n-kM),构造变换区间[0,L-1]
ˆk (n) xk (n kM )RM (n) ,实际中就是将x (n)的 上的序列 x i
ˆ (k ) DFT[ x ˆi (n)]L ; M个值存放在长度为M的数组中, 并计算 X i
(3) (4)
ˆ (k ) H (k ) X ˆ (k ) Y i i
设序列h(n)长度为N, x(n)为无限长序列。 将x(n)均 匀分段, 每段长度取M, 则:
x(n ) xk (n )
i 0
xk (n ) x(n ) RM (n kM )
于是, h(n)与x(n)的线性卷积可表示为: yk ( n ) h ( n ) x ( n )
在实际应用中,需要计算两个序列的线性卷积,为了 提高运算速度,希望用DFT(FFT)计算线性卷积。 而DFT只能直接用来计算循环卷积,为此须知线性卷 积和循环卷积之间的关系以及循环卷积与线性卷积相等的 条件。 设 h(n) 和 x(n) 都是有限长序列,长度分别是 N 和 M 。 它们的线性卷积和循环卷积分别表示如下:
- 离散傅里叶变换的推导与定义 - 离散傅里叶变换的基本性质
- 频率域采样 - 离散傅里叶变换的应用举例
DFT 的 快 速 算 法 ----FFT 的 出 现, 使DFT在数字通信、 信号处 理、 数值分析等各个领域都得到广 泛应用。
1 用DFT计算线性卷积
如果
y(n) 0≤k≤L-1
h ( n ) xk ( n ) 该式说明,计算h(n) k 0 与x(n)的线性卷积时, 可先进行分段线性 h ( n ) xk ( n ) k 0 卷积yk(n) ,然后把 分段卷积结果叠加 yk ( n ) 起来即可。
k 0
其中:
h (n ) 0 n
L点 IDFT x(n ) 补 L- M 个 零 点 L 点 DFT
用DFT计算线性卷积框图
实际上,如果两个序列的长度相差很大,例如 M>>N。如选取L=M+N-1,以L为运算区间进行快速 卷积,则要求对短序列补充很多零点,序列必须全部 输入后才能进行快速计算。因此要求存贮容量大,运 算时间长,并使处理延时很大,很难实时处理。 而且,在某些应用场合,序列长度不定或者认为是 无限长(如语音信号和地震信号等),在要求实时处 理时,不能直接套用上述方法。 解决问题的方法:是将长序列分段计算,这种分段 处理法有重叠相加法和重叠保留法两种。 这里介绍重叠相加法。
ˆ (k )] ,n = ˆi (n) yk (n kM )RL (n) IDFT[Y y i L
0,1,2,…,L-1;
(5) 计算:
ˆi 1 ( M n) y ˆ i ( n) ,0 n N 2 (重叠区相加) y y(iM n) ˆ i ( n) y , N 1 n M 1 (非重叠区不加)
此时取其主值序列显然满足yc(n)= yl(n) 。 由此:循环卷积等于线性卷积的条件是-----L N+M-1
线性卷积与循环卷积
如果取L=N+M-1,则可用DFT(FFT)计算线性卷积,计算 框图如下图。其中DFT和IDFT通常用快速算法(FFT)来实现, 故常称其为快速卷积。
h (n ) 补 L- N 个 零 点 L 点 DFT y(n )
其中:L≥max[N, M]
yc ( n ) h( m ) x ( n m qL) RL (n )
m 0 q
N 1
x((n)) L
源自文库q
x(n qL),
q
m 0
N 1
h( m ) x ( n m qL) RL (n )
用DFT计算循环卷积
X 1 (k ) DFT [ x1 (n)] X 2 (k ) DFT [ x2 (n)]
则由时域循环卷积定理有:
Y(k)=DFT[y(n)]=X1(k)X2(k),
0≤k≤L-1
由此可见,循环卷积既可在时域直接计算,也可以 按照上图所示的计算框图在频域计算。 由于DFT具有快速算法(FFT),当N很大时,在频 域计算的速度快得多,因而常用DFT(FFT)计算循环卷积。
N x0 (n ) M y0 (n ) N + M- 1
N- 1
每一分段卷积yk(n)的长度 为N+M-1,因此yk(n)与yk+1(n) 有 N-1个点重叠,必须把重叠的部 分相加,才能得到完整的卷积序 列y(n)。 由图可以看出,当第二个分段卷 积y1(n)计算完后,叠加重叠点便 可得输出序列y(n)的前2M个值, 同样,分段卷积yi(n) 计算完后, 就可得到y(n)第 i 段的M个序列值。
0
x1 (n ) M
x2 (n ) M
n
n
y1 (n ) N + M- 1 y2 (n ) N + M- 1 y(n )= y0 (n )+y1 (n )+y2 (n )+ … 2M 3M+ N- 1 M
n
n
n
重叠相加法卷积示意图
用DFT计算分段卷积yk(n)的方法如下:
(1) i=0;L=N+M-1;计算并保存H(k)=DFT[h(n)]L;
yc(n)等于yl(n)以L 为周期的周期延 拓的主值序列。
对照式(1)可以看出, 上式中:
m 0
N 1
h(m) x(n qL M ) yl (n qL) yc ( n )
q
yl (n qL) RL (n )
yl(n)的长度为N+M-1,因此只有当循环卷积长度L N+M-1时, yl(n) 以L为周期进行周期延拓时才无混叠现象。
(6) i =i+1,返回(2)。
应当说明,一般x(n)是因果序列,假设初始 条件y-1(n)=0。
2 用DFT对信号进行谱分析
信号的谱分析就是计算信号的傅里叶变换。 DFT 是一种时域和频域均离散化的变换,适 合数值运算,是分析离散信号和系统的有力工具。
1. 用DFT对连续信号进行谱分析
连续信号xa(t),其频谱函数Xa(jΩ)也是连续函数。
(2) 读入xk(n)=x(n)RM(n-kM),构造变换区间[0,L-1]
ˆk (n) xk (n kM )RM (n) ,实际中就是将x (n)的 上的序列 x i
ˆ (k ) DFT[ x ˆi (n)]L ; M个值存放在长度为M的数组中, 并计算 X i
(3) (4)
ˆ (k ) H (k ) X ˆ (k ) Y i i
设序列h(n)长度为N, x(n)为无限长序列。 将x(n)均 匀分段, 每段长度取M, 则:
x(n ) xk (n )
i 0
xk (n ) x(n ) RM (n kM )
于是, h(n)与x(n)的线性卷积可表示为: yk ( n ) h ( n ) x ( n )
在实际应用中,需要计算两个序列的线性卷积,为了 提高运算速度,希望用DFT(FFT)计算线性卷积。 而DFT只能直接用来计算循环卷积,为此须知线性卷 积和循环卷积之间的关系以及循环卷积与线性卷积相等的 条件。 设 h(n) 和 x(n) 都是有限长序列,长度分别是 N 和 M 。 它们的线性卷积和循环卷积分别表示如下: