循环卷积_DFT求线性卷积

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
卷积的结果相同。考虑两个有限长序列的线性卷 积:设x(n)的非零区间为0≤n≤N1-1, h(n)的非零
区间为0≤n≤N2-1,则线性卷积y(n)=x(n)*h(n)
的长度为N=N1+N2-1,非零区间是0≤n≤N-1。

现在来设法构造这两个序列x(n) 与h(n) 的循环卷积,使其
结果与线性卷积相同。
m 0 N 1
0 n N 1

例 设两个有限长度序列:x(n), 0≤n≤7;y(n), 0≤n≤19。令 X(k)和Y(k)分别表示它们的20点DFT,而序列 r(n)=IDFT[X(k)Y(k)]。试指出r(n)中的哪些点相当于线性卷 积g(n)=x(n)*y(n)中的点。

解:设R(k)=X(k)Y(k),于是 r (n)

之长为N = N1+N2-1。为了便于用矩阵表示,我们在序列 x(n) 的后面添N2-1个0,使x(n) 的长度变为N,这样,线性 卷积为:
y (n) x(n) h(n) x(m)h(n m),
m 0 N 1
0 n N 1

用矩阵表示为:
y (0) h(0) y (1) h(1) h(0) h( N 1) h( N 2) 2 y ( N 2 1) 2 y( N2 ) 0 h( N 2 1) y ( N 1) 0 2 0 y ( N 2) 0 0 y ( N 1) 0 0
时必然发生线性卷积的混叠,即
~ ( n) r
的每一个周期的
前27-20=7个值都是g(n)的前一个周期的后7个值与后一个
周期的前7个值的混叠,也就是说,循环卷积r(n) 的20个 值中,后13个值才与g(n)中间部分的13个值相同。因此, 对于循环卷积r(n),(0≤n≤19),只有7≤n≤19这13个 点相当于线性卷积g(n)中的点。

我 们 已 经 知 道 , 可 以 用 DFT 来 求 循环卷积, 即 x(n) h(n) IDFT [ X (k ) H (k )] ,因此只要找到循 环卷积与线性卷积之间的关系,就可以解决用DFT求线性
卷积的问题。

设x(n) 长度为N1,h(n) 长度为N2,则线性卷积
y(n) x(n) h(n)
有限长序列的循环卷积(又称圆周卷积)
(1) 定义

设x1(n) 和x2(n) 是两个长度为 L、M的有限长序列,它们的 N点循环卷积x3(n) 定义为: N 1 ~ ~ ( n m) R ( n ) x3 (n) x1 (n) x2 (n) x1 (m) x2 N m 0
0 6 7 8 9
9 0 6 7 8
8 9 0 6 7
7 1 100 2 95 8 9 3 85 0 4 70 6 5 100
用DFT求线性卷积

DFT不仅可以用来对信号进行频谱分析,而且还可以用来 计算序列的线性卷积。 循环卷积与线性卷积的关系
h( N 2) h( N 1) h(0)
h( N 4) h( N 3)
h(1) x(0) h(2) x(1) h(3) x(2) h( N 1) x( N 2) h(0) x( N 1)
x(n) y(n) ,
并且r(n)之长度为20。又设g(n)=x(n)*y(n),则线性卷积 g(n)之长度为8+20-1=27。循环卷积r(n)是周期卷积 ~ ( n) r 的主值序列,而 ~ ( n)又是线性卷积g(n)的周期延拓,延拓 r 的周期就是周期卷积的周期20。

由于20<27,即延拓的周期小于线性卷积的长度,故延拓
专题: 循环卷积、用DFT求线性卷积
首先,我们要理解周期卷积仅仅针对离散傅里叶级数,循环 卷积(又称圆周卷积)仅仅针对离散傅里叶变换。这里的 “循环”是针对周期序列而言,我们要始终记住,离散傅里 ~ ( n) x 叶变换的序列x(n)是周期序列 的主值序列。 而线性卷积是针对有限长序列,要用DFT求线性卷积,必然 要求周期序列在一个周期内求卷积能和有限长序列求线性卷 积等值。因此我们求N点长度的循环卷积必然要和线性卷积 长度一致。起码N要不少于线性卷积的长度。
注意:其中N>=Max{L,M}

注意:如果其中一个序列(或者两个序列)的长度没有所
求N点循环卷积的长度长,那在该序列后面补零,直到长 度达到N

(c) 用解析式计算
N 1 y N (n) x(n) h(n) x(m)h(( n m) N ) R N (n) m 0

在x(n) 后面补充N2-1个0,使x(n)长度变为 N,x(n):x(0)、
x(1)、…、x(N1-1)、0、0、…、0。

在h(n) 后面补充N1-1个0,使h(n)长度变为 N,h(n):h(0)、 h(1)、…、h(N2-1)、0、0、…、0。

~ 再将h(n) 进行周期延拓,周期为N:h ( n )

此式可用矩阵表示为:
h( N 1) y N (0) h(0) y (1) h(1) h(0) N y N (2) h(2) h(1) y N ( N 2) h( N 2) h( N 3) y N ( N 1) h( N 1) h( N 2)
x (m) h(n m rN )
m 0 r
N 1

r m 0
[ x(m)h(n rN m)]

N 1

r
y(n rN )

此式说明,周期卷积 ~N (n ) 是x(n)与h(n)的线性卷积y(n) y
~ ~( n ) 与 h ( n ) 的周期都为N,因此它们 的周期延拓。由于 x
用DFT求线性卷积

如果循环卷积的长度N满足N≥N1 + N2 -1(N1、N2分别 是x1(n) 与x2(n) 的长度),则此循环卷积就等于x1(n)与x2(n) 的线性卷积,于是,我们用DFT求得的循环卷积就是线性 卷积。
N≥N1+N2--1

用 DFT 求线性卷积
x3 (n) x1 (n) x2 (。) n

解: x2(n) 为 4 点序列,在其尾部填零使其成为 5 点序列, 再进行循环卷积运算。
x3 (0) 6 x (1) 7 3 x3 (2) 8 x3 (3) 9 x (4) 0 3

与循环卷积的矩阵表示相比较,可以看出,即使进行线性 卷积的两个序列长度也都是N,其结果也与循环卷积不同:
两个表示式中h矩阵不但元素的排列不同,而且矩阵的大
小也不同。事实上,如果x(n)和h(n)的长度都为N,则它们
的循环卷积yN(n)之长度为N,而它们的线性卷积y(n)之长
度为2N-1。

但是,在一定的条件下,可以使循环卷积与线性

x(0) x(1) h(0) x( N1 1) 0 h(1) h(0) h(2) h(1) h(0) 0 h( N 2 1) h( N 2 2) h(0) 0 0 h( N 2 1) h( N 2 2) h(1) h(0) 0
注意矩阵的对角线为 h(0) 然后每列往下依次是1、2、3...循环移位

h矩阵这Leabharlann BaiduN阶方阵中的元素都是n由0到N-1区间的h(n),
这是通过求模(n-m)N 而得到的。在实际运用时只需要按照
h矩阵中元素排列的规律直接写出这个矩阵。

例 设 x1(n) = {1,2,3,4,5},x2(n)={6,7,8,9},计算 5 点循环 卷积
r
h(n rN )


为了计算x(n)与h(n)的循环卷积yN(n),我们先计

~ ~( n )与 h ( n ) 的周期卷积 ~N (n) : y x
N 1 ~ ~ ~ ( n) ~ ( m) h ( n m) yN x x ( m) h ( n m) m 0 m 0 N 1
的周期卷积 ~N ( n ) 的周期也为N,正好等于y(n)的长度, y 即上式中以N为周期的周期延拓没有发生混叠,线性卷积 y(n)正好是周期卷积 ~N (n ) 的一个周期。 y

而循环卷积又是周期卷积的主值序列,因此,此时循环卷 积yN(n)与线性卷积y(n)完全相同,即:
y N (n) x(n) h(n) ~N (n) R N (n) y (n) x(m)h(n m) y
相关文档
最新文档