现代信号处理基础_02—维纳滤波和卡尔曼滤波20101102
- 格式:ppt
- 大小:1.26 MB
- 文档页数:63
维纳滤波和卡尔曼滤波
哇塞!同学们,你们听说过维纳滤波和卡尔曼滤波吗?反正一开始我是完全不知道这俩是啥玩意儿。
就好像在一个神秘的科学王国里,突然冒出来两个奇怪的名字。
维纳滤波,这名字听起来是不是有点像某个超级英雄的技能?可它不是用来拯救世界的,而是在信号处理的世界里大展身手呢!
有一次上科学课,老师讲起维纳滤波,我那叫一个懵啊!老师说它就像是一个超级聪明的小助手,能把那些乱糟糟的信号变得整整齐齐。
我就想,这难道是有魔法吗?比如说,我们听到的广播里有时候会有沙沙的杂音,维纳滤波就能把这些杂音去掉,让声音变得清晰又好听。
这难道不神奇吗?
再说卡尔曼滤波,它就像是一个预测大师。
比如说,我们预测明天会不会下雨,可能不太准。
但卡尔曼滤波就能根据一堆的数据和信息,更准确地预测出一些变化。
我问同桌:“你能明白这俩滤波是咋回事不?”同桌摇摇头说:“我也迷糊着呢!”
后来老师又举了个例子,说维纳滤波好比是个精心整理房间的小管家,把房间里乱七八糟的东西归置得井井有条;卡尔曼滤波呢,就像是个能提前知道你需要什么东西的小精灵,早早地就给你准备好。
哎呀,虽然听了老师这么多例子,我还是觉得这俩滤波有点难理解。
不过我想,只要我努力学习,总有一天能搞清楚它们的!
同学们,你们是不是也和我一样,对维纳滤波和卡尔曼滤波充满了好奇和探索的欲望呢?反正我是下定决心要把它们弄明白啦!。
现代数字信号处理课程作业维纳、卡尔曼、RLS、LMS算法matlab实现维纳滤波从噪声中提取信号波形的各种估计方法中,维纳(Wiener)滤波是一种最基本的方法,适用于需要从噪声中分离出的有用信号是整个信号(波形),而不只是它的几个参量。
设维纳滤波器的输入为含噪声的随机信号。
期望输出与实际输出之间的差值为误差,对该误差求均方,即为均方误差。
因此均方误差越小,噪声滤除效果就越好。
为使均方误差最小,关键在于求冲激响应。
如果能够满足维纳-霍夫方程,就可使维纳滤波器达到最佳。
维纳滤波器的优点是适应面较广,无论平稳随机过程是连续的还是离散的,是标量的还是向量的,都可应用。
维纳滤波器的缺点是,要求得到半无限时间区间内的全部观察数据的条件很难满足,同时它也不能用于噪声为非平稳的随机过程的情况,对于向量情况应用也不方便。
因此,维纳滤波在实际问题中应用不多。
下面是根据维纳滤波器给出的图像处理matlab实例,在下面实例中维纳滤波和均值滤波相比较,并且做了维纳复原、边缘提取、图像增强的实验:%****************维纳滤波和均值滤波的比较*********************I=imread('lena.bmp');J=imnoise(I,'gaussian',0,0.01);Mywiener2 = wiener2(J,[3 3]);Mean_temp = ones(3,3)/9;Mymean = imfilter(J,Mean_temp);figure(1);subplot(121),imshow(Mywiener2),title('维纳滤波器输出');subplot(122),imshow(uint8(Mymean),[]),title('均值滤波器的输出');%***********************维纳复原程序********************figure(2);subplot(231),imshow(I),title('原始图像');LEN = 20;THETA =10;PSF = fspecial('motion',LEN,THETA);Blurred = imfilter(I,PSF,'circular');subplot(232),imshow(Blurred),title('生成的运动的模糊的图像');noise = 0.1*randn(size(I));subplot(233),imshow(im2uint8(noise)),title('随机噪声');BlurredNoisy=imadd(Blurred,im2uint8(noise));subplot(234),imshow(BlurredNoisy),title('添加了噪声的模糊图像');Move=deconvwnr(Blurred,PSF);subplot(235),imshow(Move),title('还原运动模糊的图像');nsr = sum(noise(:).^2)/sum(im2double(I(:)).^2);wnr2 = deconvwnr(BlurredNoisy,PSF,nsr);subplot(236),imshow(wnr2),title('还原添加了噪声的图像');%****************维纳滤波应用于边缘提取*********************N = wiener2(I,[3,3]);%选用不同的维纳窗在此修改M = I - N;My_Wedge = im2bw (M,5/256);%化二值图像BW1 = edge(I,'prewitt');BW2 = edge(I,'canny');BW3 = edge(I,'zerocross');BW4 = edge(I,'roberts');figure(3)subplot(2,4,[3 4 7 8]),imshow(My_Wedge),title('应用维纳滤波进行边沿提取'); subplot(241),imshow(BW1),title('prewitt');subplot(242),imshow(BW2),title('canny');subplot(245),imshow(BW3),title('zerocross');subplot(246),imshow(BW4),title('roberts');%*************************维纳滤波应用于图像增强***************************for i = [1 2 3 4 5] K = wiener2(I,[5,5]);end K = K + I; figure(4);subplot(121),imshow(I),title('原始图像'); subplot(122),imshow(K),title('增强后的图像');维纳滤波器输出均值滤波器的输出原始图像生成的运动的模糊的图像随机噪声添加了噪声的模糊图像还原运动模糊的图像还原添加了噪声的图像卡尔曼滤波卡尔曼滤波的一个典型实例是从一组有限的,对物体位置的,包含噪声的观察序列预测出物体的坐标位置及速度。
第二章 维纳滤波和卡尔曼滤波2.1 引言只考虑加性噪声影响,即观测数据()xn 是信号()s n 和噪声()v n 之和,即()()()x n s n v n =+不含噪声的信号()s n 称为期望信号,乃滤波之目的,亦可用()dy n 表示。
系统实际输出()()ˆy n s n =是对期望信号的估计。
维纳滤波从信号估计的角度讲: 估计过去的信号值()s n N -叫做平滑; 估计当前的信号值()s n 叫做滤波; 估计将来的信号值()sn N +叫做预测。
这些估计都采用相同的准则:误差均方值最小,2n E e ⎡⎤⎢⎥⎣⎦。
2.2 维纳滤波器的时域解(费时费力,更多考虑用Z 域解)设计维纳滤波器实际就是选择系统函数h (n ),使得输出信号x (n )与期望信号d (n )的误差均方值最小。
考虑线性时不变系统,设单位脉冲响应()()()012,,,h n a n jb n n =+=2.2.1 时域求解根据系统输出()()()*y n x n h n =和均方误差函数()()()22E e n E d n y n ⎡⎤⎡⎤=-⎢⎥⎢⎥⎣⎦⎣⎦令()2Ee n ⎡⎤⎢⎥⎣⎦关于()h j 的导数为0,即()20012,,,,jE e n j h ⎡⎤∂⎢⎥⎣⎦==∂ 可以推得()()0*E x n j e n ⎡⎤-=⎣⎦结论:正交性原理.....——均方误差值达到最小的充要条件是误差信号...................e .(.n .).与任意输入的待估计信号...........x .(.n .).正交..。
2.2.2 维纳-霍夫方程由上一式子展开可以得到维纳..——..霍夫方程....的形式: ()()()()()012*,,,xd xxxx m r k h m r k m h k r k k +∞==-==∑维纳——霍夫方程表明,输入信号x (n )(待处理信号)与期望信号d (n )的互相关函数等于系统函数(维纳滤波器的时域解)与输入信号的互相关函数r xx (n )卷积。
第二章 维纳滤波与卡尔曼滤波§2.1 引言信号处理的实际问题,常常是要解决在噪声中提取信号的问题,因此,我们需要寻找一种所谓有最佳线性过滤特性的滤波器。
这种滤波器当信号与噪声同时输入时,在输出端能将信号尽可能精确地重现出来,而噪声却受到最大抑制。
维纳(Wiener)滤波与卡尔曼(Kalman)滤波就是用来解决这样一类从噪声中提取信号问题的一种过滤(或滤波)方法。
实际上这种线性滤波问题,可以看成是一种估计问题或一种线性估计问题。
一个线性系统,如果它的单位样本响应为h (n ),当输入一个随机信号x (n ),且)()()(n n s n x υ+=(2.1)其中s (n )表示信号,)(n υ表示噪声,则输出y (n )为∑-=mm n x m h n y )()()((2.2)我们希望x (n )通过线性系统h (n )后得到的y (n )尽量接近于s (n ),因此称y (n )为s (n )的估计值,用)(ˆn s表示,即)(ˆ)(n sn y = (2.3)图2.1 维纳滤波器的输入—输出关系如图2.1所示。
这个线性系统)(⋅h 称为对于s (n )的一种估计器。
实际上,式(2.2)的卷积形式可以理解为从当前和过去的观察值x (n ),x (n -1),x (n -2)…x (n -m ),…来估计信号的当前值)(ˆn s。
因此,用)(⋅h 进行过滤的问题可以看成是一个估计问题。
由于我们现在涉及的信号是随机信号,所以这样一种过滤问题实际上是一种统计估计问题。
一般,从当前的和过去的观察值x (n ),x (n -1),x (n -2),…估计当前的信号值)(ˆ)(n s n y =称为过滤或滤波;从过去的观察值,估计当前的或将来的信号值)0)((ˆ)(≥+=N N n sn y 称为预测或外推;从过去的观察值,估计过去的信号值)1)((ˆ)(>-=N N n sn y 称为平滑或插。
卡尔曼滤波与维纳滤波在信号处理中的应用研究
卡尔曼滤波是一种线性的、递归的滤波算法,它能够对信号的状态进行估计和预测。
卡尔曼滤波是基于贝叶斯估计理论的一种优化方法,它不仅可以有效地消除噪声和偏差,还可以根据已有的历史数据对信号进行预测。
卡尔曼滤波广泛应用于航空航天、控制理论、信号处理等领域,是一种非常有效的信号处理算法。
维纳滤波是一种信号处理中最常用的滤波算法之一,它能够根据现有数据对信号进行优化处理,消除噪声和干扰,实现信号的恢复和重建。
维纳滤波利用了信号和噪声的统计特性,根据信号的功率谱和噪声的功率谱来进行滤波处理。
维纳滤波不仅可以用于图像处理、语音处理等多种信号处理领域,还可以应用于雷达信号处理、无线通信等工程实践中。
在实际应用中,卡尔曼滤波和维纳滤波通常结合使用,以获得更为准确和可靠的信号处理效果。
如在雷达信号处理中,利用卡尔曼滤波进行预测和估计,再经过维纳滤波进行优化处理,可以有效地消除噪声和干扰,获得高质量的信号信息。
在图像处理中,卡尔曼滤波和维纳滤波也可以结合使用,以实现图像的优化重建和增强。
总的来说,卡尔曼滤波和维纳滤波在信号处理中的应用非常广泛,可以有效地消除噪声和干扰,提高信号和数据的质量和可靠性,对于工程实践和科学研究都具有重要意义。