本帖最后由 jackk 于 2014-3-5 13:00 编辑
前段时间在论坛里简单地发了一些关于kalman的理解。
有很多网友顶贴的,趁着今天休息,整理一下前段时间的工作。
有些理解和说法可能不正确,以此抛砖引玉吧。
1,
在google上搜索卡尔曼滤波,很容易找到以下这个帖子:
http://blog.csdn.net/lanbing510/article/details/8828109
这里面很简单形象的解释了kalman的作用。
但是帖子后半段,将kalman回归到了一大堆数学推理、推导上,对非数学专业,或者数学基础尤其是概率和随机过程基础不好的同学来讲实在太过头痛。
帖子最后用matlab实现了kalman,其中很简单地用i,j,k来命名,可能不是太妥当,新手理解的时候,脑袋里面要运行着一个很深的堆栈。
当然,原作者毫无疑问对kalman有着极其深刻的理解,才能实现得如此游刃有余。
在此,只是对第一次接触kalman的同学简单介绍一下自己的理解。帮得到诸君为好,帮不到请勿喷。
2,
首先,kalman是一个数字滤波器。
我们可以用硬件搭建一个模拟滤波器,将叠加了噪声的模拟信号输入到滤波器中,滤波器给出一个响应。
我们把这个响应作为输入信号踢掉噪声之后的真值。
当然,可以通过调整滤波器参数,使得响应尽可能接近客观真值,亦即尽可能多地衰减噪声。
进一步讲,我们用AD将模拟信号数字化之后,因为模拟信号本身包