匹配滤波器作业.pdf
一:匹配滤波器原理
h(n)
x(n)
系统
y(n)=h(n)*x(n)
实质:求线性卷积
L1
y(n)x(n)x(n)x(m)x((nm))R(n)
1212LL
m0
循环卷积条件??线性卷积
Y(k)=DFT[y(n)]=H(k)X(k)y(n)=h(n)*x(n)
DFT(h(n))DFT(x(n))
FFT
当N很大时频域计算比时域块很
循环卷积既可在时域直接计算,也可以在频域计算。由于DFT
有快速算法FFT,当N很大时,在频域计算的速度快得多,因而
常用DFT(FFT)计算循环卷积。根据DFT的循环卷积定理,在满足循
环卷积等于线性卷积的条件下,通过DFT将h(n)与x(n)的卷积变成
频域H(k)和X(k)相乘,再经过IDFT即得y(n)=h(n)*x(n)。假设h(n)
和x(n)都是有限长序列,长度分别是N和M,当L=M+N-1时,(N
为x(n)的长度,M为h(n)的长度,L为循环卷积长度,也是DFT变换
区间的长度),循环卷积等于线性卷积。
匹配滤波器结构图:
时域循环卷积定理:
如果:
L1
y(n)x(n)x(n)x(m)x((nm))R(n)
1212LL
m0
X(k)DFT[x(n)]
11
X(k)DFT[x(n)]0≤k≤L-1
22
则由时域循环卷积定理有
Ykynkkk
()=DFT[()]=X1()X2(),0≤≤L-1
编程思想:匹配滤波器形式:h(t)=k*s(t0-t),先在时域直接用卷积
求的结果,通过DFT将h(n)与x(n)的卷积变成频域H(k)和X(k)相乘,
再经过IDFT即得y(n)=h(n)*x(n),特别注意:L=M+N-1。比较两者
结果基本相同,但当N很大时,在频域的计算速度快的多。
辨识结果:
MATLAB程序:
%匹配滤波器形式:h(t)=k*s(t0-t);
N=128;
n=0:1:N-1;
s=randn(1,128);
a=0.25;%衰减系数
r=a*s+rand(1,128);
r1=fliplr(r);
figure(1)
subplot(3,1,1)
stem(n,s),gridon;
title(序列s)
y1=conv(r1,s);%y1为s与r的线性卷积
subplot(3,1,2)
stem(0:1:length(y1)-1,y1),gridon;
title(s与r的线性卷积)
s2=ff