数字信号处理北邮第三章3
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第三章 主要内容
离散傅里叶级数(DFS) 离散傅里叶变换(DFT) 快速傅里叶变换(FFT)
1
© 2004, CCID Consulting(HK8235) All Rights Reserved
DFT 的应用
利用 DFT 求离散线性卷积
条件 条件:N≥N1+N2-1 方法:时域转换到频域,处理后再转换回时域
N 3 N 3 1 log g 2 N 2] ] N( (1 log g 2 ) N ( log g2 N ) 2 2 2 2 2
线性卷积:每一个输入值x(n)都必须和全部的h(n)值乘一次,因此, 总共需要 N1N2 次乘法运算, 次乘法运算 ML=N N1N2。 ML N1 N 2 C 设 m M C ( N 1 N 2 1) 1.5 log 2 ( N 1 N 2 1) 0.5 若 N1=N2 时,则
yL ( n)
L ( n) y
N 2 1N1 1
N1 N 2 1
N1
N2 2
yc (n)
N1 N1 N 2 1
yc (l ) yL (l ), ) l N2 1 1, N 2 , , N1 1
10
© 2004, CCID Consulting(HK8235) All Rights Reserved
DFT 的应用:线性卷积求解(13)
乘法次数
循环卷积:在上述 DFT 求解线性卷积过程中,需要 3 次DFT(FFT) 运算,后面我们会讲到 算 们 N 点 FFT 所需要的乘法次数为 乘 数 N log g N 2 ,因 2 此,用 DFT 求线性卷积所需要的总的乘法次数:
2
M C N 3[ [
DFT 的应用:线性卷积求解(8)
讨论
若序列x(n)的长度为N1,序列h(n)的长度为N2,且有N1大 于N2,那么,x(n)和h(n)的N 那么 ( )和h( )的N1点循环卷积结果为: 点循环卷积结果为
yc (n) x(m)h1 ((n m)) N1 n 0,1, ( N1 1)
Cm下降,循环卷积快速算法的优点不能发挥出来。 克服的办法:分段卷积 克服的办法 分段卷积
将长序列分段,每一段分别与短序列进行循环卷积(即用 FFT 运算) 分为重叠相加法,重叠保留法。
15
© 2004, CCID Consulting(HK8235) All Rights Reserved
DFT 的应用:线性卷积求解(11)
用 DFT 求解线性卷积
DFT DFT 设 x(n) X(k), h(n) H(k)
若 y(n) x(n) h(n) Y(k) X(k)H(k)
DFT
即时域循环卷积 即时 循环
频域相乘 相乘 频
DFT 映射
N 1
N点循环卷积:
y c ( n ) x ( n ) Nh ( n ) x ( m ) h (( n m )) N
m 0
线性卷积:
yc(n)长度为N
N 1 1 m 0
yl ( n ) x ( n ) * h ( n )
x(m )h(n m )
yl(n)长度为N1+N2-1
x(n) N h(n) x(n) )* h(n)
N N1 N2 1 0 n N1 N2 2
7
© 2004, CCID Consulting(HK8235) All Rights Reserved
DFT 的应用:线性卷积求解(7)
8
© 2004, CCID Consulting(HK8235) All Rights Reserved
则 y ( n ) IDFT Y ( k )
IDFT X ( k ) H ( k )
12
© 2004, CCID Consulting(HK8235) All Rights Reserved
DFT 的应用:线性卷积求解(12)
如果循环卷积的长度 N 满足 N≥N1+N N2-1 1,则此循环卷积 yc(n) 就等于 x(n) 和 h(n) 的线性卷积。用流程图表示法求 yl(n)=x(n) (n)=x(n)*h(n) h(n) 的过程如下:
x(n) 补N-N1个零 N点DFT N点IDFT h(n) 补N-N2个零 N点DFT
16
m
x ( m )h( n m )
y(n) = x(n)*h(n)
© 2004, CCID Consulting(HK8235) All Rights Reserved
DFT 的应用:分段卷积(1)
上面介绍的是两个有限长序列 x1(n)、x2(n) 的线性卷积。 的线性卷积
但有时其中某个序列会很长或无限长,若等长序列存储 或输入完后再做卷积运算,将产生问题 或输入完后再做卷积运算,将产生问题: 存储量过大,运算量也太大; 等待输入的时间很长,引起不能忍受的延迟; 采用 DFT/FFT 快速算法的效率降低
yc (n) x(n) h(n) yc (n)RN (n) yl (n rN) RN (n) r
0 n N 1
一般地讲,循环卷积是线性卷积的一种混叠形式。但当 N≥N1+N2-1,没有混迭产生,此时线性卷积 yl(n) 和循环卷积 yc(n) 相等。
m 0
[ x(m)h(n rN m)]RN (n)
r m 0
N 1
[ y l ( n rN )]RN (n)
r
? y (n) l
6
© 2004, CCID Consulting(HK8235) All Rights Reserved
DFT 的应用:线性卷积求解(5)
5
© 2004, CCID Consulting(HK8235) All Rights Reserved
DFT 的应用:线性卷积求解(4)
讨论循环卷积的长度
对h(n)、yl(n)周期延拓:
N 1
(n) h(n rN) h
r
l (n) yl (n rN) y
r
把长序列分段,每一分段分别与短序列进行卷积
解决此问题的思路:
——分段卷积。 具体方法:重叠相加法、重叠保留法
17
© 2004, CCID Consulting(HK8235) All Rights Reserved
DFT 的应用:分段卷积(2)
误差分析 在分析分段卷积之前,我们首先分析两个有限长度 序列的循环卷积的误差情况。 序列的循环卷积的误差情况 设 x(n) 为 N1 点序列,h(n) 为 N2 点序列,由前面分 析知道,线性卷积 yl(n) 和循环卷积 yC(n) 关系为:
m0
N1 1
其中 其中,
h(n ) h1 ( n ) 0
n 0,1, ( N 2 1) n N 2 ,( N 2 1), ( N1 1)
9
© 2004, CCID Consulting(HK8235) All Rights Reserved
DFT 的应用:线性卷积求解(9)
DFT 的应用:线性卷积求解(15)
线性卷积求解小结 时域直接求解 y( n) x ( n) * h( n)
z变换法 X ( z ) Z [ x ( n )] H ( z ) Z [ h( n )] y( n) Z 1[Y ( z )] Z 1 [ X ( z ) H ( z )] DFT法
循环卷积: yc (n) x(m)h(( n m)) N 循环卷积
N 1 ( n m) R ( n) ( m) h x N m0 N 1
r
m 0
[ x ( m ) h ( n rN m )] R N ( n )
3
© 2004, CCID Consulting(HK8235) All Rights Reserved
DFT 的应用:线性卷积求解(2)
循环卷积和线性卷积的关系
设: x ( n ) h(n) 0 n N1 1 0 n N2 1
令 N max[ N 1 , N 2 ]
x(n) 长度 N1 h(n) 长度N2 N 点 DFT X (k) X (k)H (k) N 点 DFT N 点 IDFT yc (n)=yl (n)
H(k)
N N1 N2 1
因为 DFT、IDFT 都有快速算法,因此,线性卷积可以实 现快速算法 现快速算法。
13
© 2004, CCID Consulting(HK8235) All Rights Reserved
结论 结论:N1=N2 越长,循环卷积的优越性越 越长,循环卷积的优越性越大。但当其中一个 但当其中 个 序列很长时,例如当x(n) 很长时,即:
N 1 N 2 , N1 N 2 1 N1
N1 N 2 这时 C m ( N 1 N 2 1)(1.5log )( g 2 ( N 1 N 2 1) ) 0.5) ) N1 N 2 N2 N 1 1.5 Biblioteka Baidulog g 2 N 1 1.5log g2 N1
当长度 N 增大时,线性卷积的运算量较大,需寻找实用的线性卷积 的快速计算方法!
循环卷积的时频映射
快速算法 FFT
IDFT x ( n) h( n) X (k ) H (k )
频域中进行两个 N 点 DFT 相乘时,在时域中映射为循环卷积(而 不是通常的线性卷 是通常的线性卷 积!!!)。 积!!!)
DFT 的应用:线性卷积求解(10)
) 0 n 7 )和 h(n) 例 现存在两个有限长序列 x(n 例:现存在两个有限长序列 (
0 n 19 ),其20点循环卷积结果为 yc (n),而其线性卷 (
积结果为 yL (n) ,问:
(1)7~19点 (2)27点
11
© 2004, CCID Consulting(HK8235) All Rights Reserved
4
© 2004, CCID Consulting(HK8235) All Rights Reserved
DFT 的应用:线性卷积求解(3)
讨论线性卷积 yl( (n)=x(n)*h(n) ) ( ) ( ) 的长度
从 x(m) 看, 非零值区为: 0≤m≤N1-1 从 h(n h(n-m) m) 看,非零值区为: 看 非零值区为: 0≤n 0≤n-m≤N m≤N2-1 1 将二不等式相加 得到 yl(n) 的非零区: 将二不等式相加,得到 0 ≤ n ≤ N1+N2-2 在此区间之外,不是 x(m)=0,就是 h(n-m)=0,即yl(n)=0,因此, yl(n) 的长度为: N1+N2-1
N 12 N1 Cm 2 N 1 (1.5log (1 5l 2 2 N 1 0.5) 0 5) 2(2.5 2(2 5 log l 2 N1 )
14
© 2004, CCID Consulting(HK8235) All Rights Reserved
DFT 的应用:线性卷积求解(14)
N点循环卷积yc (n)是线性卷积yl (n)以N为周期 的周期延拓序列的主值序列。 而yl (n)的长度为N1 N 2 1 只有当N N1 N 2 -1时,yl (n)以N 为周期进行
周期延拓才无混叠现象
即 当循环卷积长度N N1 N 2 1时, 时 N 点循环卷积能代表线性卷积
用 DFT 进行信号频谱分析
参数选择 频谱泄漏 栅栏效应
2
© 2004, CCID Consulting(HK8235) All Rights Reserved
DFT 的应用:线性卷积求解(1)
线性移不变离散系统
x(n) h(n)
n 0, h(n) 0
y(n)
y( n) x ( n) h( n)
离散傅里叶级数(DFS) 离散傅里叶变换(DFT) 快速傅里叶变换(FFT)
1
© 2004, CCID Consulting(HK8235) All Rights Reserved
DFT 的应用
利用 DFT 求离散线性卷积
条件 条件:N≥N1+N2-1 方法:时域转换到频域,处理后再转换回时域
N 3 N 3 1 log g 2 N 2] ] N( (1 log g 2 ) N ( log g2 N ) 2 2 2 2 2
线性卷积:每一个输入值x(n)都必须和全部的h(n)值乘一次,因此, 总共需要 N1N2 次乘法运算, 次乘法运算 ML=N N1N2。 ML N1 N 2 C 设 m M C ( N 1 N 2 1) 1.5 log 2 ( N 1 N 2 1) 0.5 若 N1=N2 时,则
yL ( n)
L ( n) y
N 2 1N1 1
N1 N 2 1
N1
N2 2
yc (n)
N1 N1 N 2 1
yc (l ) yL (l ), ) l N2 1 1, N 2 , , N1 1
10
© 2004, CCID Consulting(HK8235) All Rights Reserved
DFT 的应用:线性卷积求解(13)
乘法次数
循环卷积:在上述 DFT 求解线性卷积过程中,需要 3 次DFT(FFT) 运算,后面我们会讲到 算 们 N 点 FFT 所需要的乘法次数为 乘 数 N log g N 2 ,因 2 此,用 DFT 求线性卷积所需要的总的乘法次数:
2
M C N 3[ [
DFT 的应用:线性卷积求解(8)
讨论
若序列x(n)的长度为N1,序列h(n)的长度为N2,且有N1大 于N2,那么,x(n)和h(n)的N 那么 ( )和h( )的N1点循环卷积结果为: 点循环卷积结果为
yc (n) x(m)h1 ((n m)) N1 n 0,1, ( N1 1)
Cm下降,循环卷积快速算法的优点不能发挥出来。 克服的办法:分段卷积 克服的办法 分段卷积
将长序列分段,每一段分别与短序列进行循环卷积(即用 FFT 运算) 分为重叠相加法,重叠保留法。
15
© 2004, CCID Consulting(HK8235) All Rights Reserved
DFT 的应用:线性卷积求解(11)
用 DFT 求解线性卷积
DFT DFT 设 x(n) X(k), h(n) H(k)
若 y(n) x(n) h(n) Y(k) X(k)H(k)
DFT
即时域循环卷积 即时 循环
频域相乘 相乘 频
DFT 映射
N 1
N点循环卷积:
y c ( n ) x ( n ) Nh ( n ) x ( m ) h (( n m )) N
m 0
线性卷积:
yc(n)长度为N
N 1 1 m 0
yl ( n ) x ( n ) * h ( n )
x(m )h(n m )
yl(n)长度为N1+N2-1
x(n) N h(n) x(n) )* h(n)
N N1 N2 1 0 n N1 N2 2
7
© 2004, CCID Consulting(HK8235) All Rights Reserved
DFT 的应用:线性卷积求解(7)
8
© 2004, CCID Consulting(HK8235) All Rights Reserved
则 y ( n ) IDFT Y ( k )
IDFT X ( k ) H ( k )
12
© 2004, CCID Consulting(HK8235) All Rights Reserved
DFT 的应用:线性卷积求解(12)
如果循环卷积的长度 N 满足 N≥N1+N N2-1 1,则此循环卷积 yc(n) 就等于 x(n) 和 h(n) 的线性卷积。用流程图表示法求 yl(n)=x(n) (n)=x(n)*h(n) h(n) 的过程如下:
x(n) 补N-N1个零 N点DFT N点IDFT h(n) 补N-N2个零 N点DFT
16
m
x ( m )h( n m )
y(n) = x(n)*h(n)
© 2004, CCID Consulting(HK8235) All Rights Reserved
DFT 的应用:分段卷积(1)
上面介绍的是两个有限长序列 x1(n)、x2(n) 的线性卷积。 的线性卷积
但有时其中某个序列会很长或无限长,若等长序列存储 或输入完后再做卷积运算,将产生问题 或输入完后再做卷积运算,将产生问题: 存储量过大,运算量也太大; 等待输入的时间很长,引起不能忍受的延迟; 采用 DFT/FFT 快速算法的效率降低
yc (n) x(n) h(n) yc (n)RN (n) yl (n rN) RN (n) r
0 n N 1
一般地讲,循环卷积是线性卷积的一种混叠形式。但当 N≥N1+N2-1,没有混迭产生,此时线性卷积 yl(n) 和循环卷积 yc(n) 相等。
m 0
[ x(m)h(n rN m)]RN (n)
r m 0
N 1
[ y l ( n rN )]RN (n)
r
? y (n) l
6
© 2004, CCID Consulting(HK8235) All Rights Reserved
DFT 的应用:线性卷积求解(5)
5
© 2004, CCID Consulting(HK8235) All Rights Reserved
DFT 的应用:线性卷积求解(4)
讨论循环卷积的长度
对h(n)、yl(n)周期延拓:
N 1
(n) h(n rN) h
r
l (n) yl (n rN) y
r
把长序列分段,每一分段分别与短序列进行卷积
解决此问题的思路:
——分段卷积。 具体方法:重叠相加法、重叠保留法
17
© 2004, CCID Consulting(HK8235) All Rights Reserved
DFT 的应用:分段卷积(2)
误差分析 在分析分段卷积之前,我们首先分析两个有限长度 序列的循环卷积的误差情况。 序列的循环卷积的误差情况 设 x(n) 为 N1 点序列,h(n) 为 N2 点序列,由前面分 析知道,线性卷积 yl(n) 和循环卷积 yC(n) 关系为:
m0
N1 1
其中 其中,
h(n ) h1 ( n ) 0
n 0,1, ( N 2 1) n N 2 ,( N 2 1), ( N1 1)
9
© 2004, CCID Consulting(HK8235) All Rights Reserved
DFT 的应用:线性卷积求解(9)
DFT 的应用:线性卷积求解(15)
线性卷积求解小结 时域直接求解 y( n) x ( n) * h( n)
z变换法 X ( z ) Z [ x ( n )] H ( z ) Z [ h( n )] y( n) Z 1[Y ( z )] Z 1 [ X ( z ) H ( z )] DFT法
循环卷积: yc (n) x(m)h(( n m)) N 循环卷积
N 1 ( n m) R ( n) ( m) h x N m0 N 1
r
m 0
[ x ( m ) h ( n rN m )] R N ( n )
3
© 2004, CCID Consulting(HK8235) All Rights Reserved
DFT 的应用:线性卷积求解(2)
循环卷积和线性卷积的关系
设: x ( n ) h(n) 0 n N1 1 0 n N2 1
令 N max[ N 1 , N 2 ]
x(n) 长度 N1 h(n) 长度N2 N 点 DFT X (k) X (k)H (k) N 点 DFT N 点 IDFT yc (n)=yl (n)
H(k)
N N1 N2 1
因为 DFT、IDFT 都有快速算法,因此,线性卷积可以实 现快速算法 现快速算法。
13
© 2004, CCID Consulting(HK8235) All Rights Reserved
结论 结论:N1=N2 越长,循环卷积的优越性越 越长,循环卷积的优越性越大。但当其中一个 但当其中 个 序列很长时,例如当x(n) 很长时,即:
N 1 N 2 , N1 N 2 1 N1
N1 N 2 这时 C m ( N 1 N 2 1)(1.5log )( g 2 ( N 1 N 2 1) ) 0.5) ) N1 N 2 N2 N 1 1.5 Biblioteka Baidulog g 2 N 1 1.5log g2 N1
当长度 N 增大时,线性卷积的运算量较大,需寻找实用的线性卷积 的快速计算方法!
循环卷积的时频映射
快速算法 FFT
IDFT x ( n) h( n) X (k ) H (k )
频域中进行两个 N 点 DFT 相乘时,在时域中映射为循环卷积(而 不是通常的线性卷 是通常的线性卷 积!!!)。 积!!!)
DFT 的应用:线性卷积求解(10)
) 0 n 7 )和 h(n) 例 现存在两个有限长序列 x(n 例:现存在两个有限长序列 (
0 n 19 ),其20点循环卷积结果为 yc (n),而其线性卷 (
积结果为 yL (n) ,问:
(1)7~19点 (2)27点
11
© 2004, CCID Consulting(HK8235) All Rights Reserved
4
© 2004, CCID Consulting(HK8235) All Rights Reserved
DFT 的应用:线性卷积求解(3)
讨论线性卷积 yl( (n)=x(n)*h(n) ) ( ) ( ) 的长度
从 x(m) 看, 非零值区为: 0≤m≤N1-1 从 h(n h(n-m) m) 看,非零值区为: 看 非零值区为: 0≤n 0≤n-m≤N m≤N2-1 1 将二不等式相加 得到 yl(n) 的非零区: 将二不等式相加,得到 0 ≤ n ≤ N1+N2-2 在此区间之外,不是 x(m)=0,就是 h(n-m)=0,即yl(n)=0,因此, yl(n) 的长度为: N1+N2-1
N 12 N1 Cm 2 N 1 (1.5log (1 5l 2 2 N 1 0.5) 0 5) 2(2.5 2(2 5 log l 2 N1 )
14
© 2004, CCID Consulting(HK8235) All Rights Reserved
DFT 的应用:线性卷积求解(14)
N点循环卷积yc (n)是线性卷积yl (n)以N为周期 的周期延拓序列的主值序列。 而yl (n)的长度为N1 N 2 1 只有当N N1 N 2 -1时,yl (n)以N 为周期进行
周期延拓才无混叠现象
即 当循环卷积长度N N1 N 2 1时, 时 N 点循环卷积能代表线性卷积
用 DFT 进行信号频谱分析
参数选择 频谱泄漏 栅栏效应
2
© 2004, CCID Consulting(HK8235) All Rights Reserved
DFT 的应用:线性卷积求解(1)
线性移不变离散系统
x(n) h(n)
n 0, h(n) 0
y(n)
y( n) x ( n) h( n)