“简单来说,卡尔曼滤波器是一个“optimal recursive data processing algorithm(最优化自回归数据处理算法)”。对于解决很大部分的问题,他是最优,效率最高甚至是最有用的。他的广泛应用已经超过30年,包括机器人导航,控制,传感器数据融合甚至在军事方面的雷达系统以及导弹追踪等等。近年来更被应用于计算机图像处理,例如头脸识别,图像分割,图像边缘检测等等。” 上文是从网上引用的别人的评价,可以看出,在线性系统里面,用最通俗的讲法来说,该算法是最好的。OK,既然是最好的,那么,就值得尝试一下。 由于卡尔曼算法网上介绍的多是使用在MISO中(多输入多输出系统),复杂的矩阵变换对于单片机而言是复杂的,难以实现的,同时,也不是必须的。很多时候单片机处理的只是SISO系统(单输入单输出系统),就算是多MISO系统,也是可以转化成SISO系统来处理的,经过参考网上不少的**,对该算法有了一个大概的了解后,加入了自己对该算法的理解,将该算法成功的应用到了SISO系统中。 卡尔曼滤波算法涉及以下几个变量,这里先给出约定名称: 1、卡尔曼增益: KalmanGain 缩写KG 2、本次估计值: EstimateValueNow 缩写EVN 3、上次估计值: EstimateValuePre 缩写EVP 4、当前估计协方差:EstimateCovarianceNOW 缩写ECN 5、下次估计协方差:EstimateCovarianceNext 缩写ECX 6、测 量 值: MeasureValue 缩写MV 7、当前测量协方差:MeasureCovarianceNow 缩写MCN 8、下次测量协方差:MeasureCovarianceNext 缩写MCX 9、估计变化比: EstimateChangeRate 缩写ECR
首先,给出(公式1) ………………
完整**下载请到本人博客下载。 博客地址:
http://emailli.21ic.org
如有不当之处,请指出!
|