![ad2204557f1f70342bdc5b02934dd587.png](https://i-blog.csdnimg.cn/blog_migrate/fb52c437fcb91df4234ee8828ce638c8.jpeg)
本文使用 Zhihu On VSCode 创作并发布
0 引言
在此前的文章
石鹏:从贝叶斯滤波到扩展卡尔曼滤波zhuanlan.zhihu.com![8c8b5194367466ab9b661d7206920fd1.png](https://i-blog.csdnimg.cn/blog_migrate/71fc9f65b13c6eb9ca82143c10200c1e.png)
中,我们讲述了扩展卡尔曼滤波通过一阶泰勒级数展开将非线性高斯系统的状态转移函数
- 一阶泰勒级数展开忽略了二阶及以上的高阶项,因此精度一般(通常称为一阶精度),对于高度非线性问题效果较差;
- 雅可比矩阵的计算较为繁琐,容易出错。
为解决强非线性条件下的状态估计问题,1995 年,S. J. Julier 和 J. K. Uhlmann 等人提出了无迹卡尔曼滤波(Unscented Kalman Filter,UKF)算法,并由 E. A. Wan 和 R. Vander Merwe 等人进一步完善。
无迹卡尔曼滤波基于无迹变换(Unscented Transform,UT),无迹变换研究的是如何通过确定的采样点捕获经非线性变换的高斯随机变量的后验分布的问题。通过无迹变换得到相应的统计特性后,再结合标准卡尔曼滤波框架,便得到无迹卡尔曼滤波。标准无迹卡尔曼滤波的计算量与扩展卡尔曼滤波相当,但滤波精度要优于扩展卡尔曼滤波。
1 无迹变换
1.1 什么是无迹变换
无迹变换的核心理念:
近似概率分布比近似任意的非线性函数或变换要相对容易。
无迹变换要解决的问题是:已知某随机变量(多维情形下是随机向量)的概率分布(均值和方差),求其经过某非线性函数
(1) 根据某种规则对随机变量的概率分布进行确定性采样,并为采样点分配权重(均值权重和方差权重),采样点我们通常称之为 sigma 点;
(2) 将每一个 sigma 点进行非线性变换,得到新的 sigma 点;
(3) 对非线性变换后的新的 sigma 点进行加权求和,分别计算加权均值和加权方差,用加权均值和加权方差近似表征随机变量经非线性变换后的概率分布。
如下图所示(《概率机器人》第 3.4 节 P49):
![8ecb9db9fd68d023dfacd23c0b347a30.png](https://i-blog.csdnimg.cn/blog_migrate/d1bc20bffd1f8e8a5d119cd6f18d3ecb.png)
无迹卡尔曼滤波中使用的确定性采样方法是 sigma 点采样方法的一种具体实现,中心差分卡尔曼滤波(Central Difference Kalman Filter,CDKF)使用了 sigma 点采样方法的另一种具体实现,这类滤波算法我们统称为 sigma 点卡尔曼滤波(Sigma-Point Kalman Filter,SPKF)算法。
按照历史发展脉络来讲,无迹变换主要包括两种形式:一般形式的无迹变换和比例无迹变换(Scaled Unscented Transform,SUT)。两种无迹变换的区别主要体现在采样规则和权重计算上,下面将分别进行阐述。
1.2 一般形式的无迹变换
假设存在
步骤一:参数选择与权重计算
一般形式的无迹变换只涉及一个外部引入参数
其中,
步骤二:确定性采样
通常情况下,siama 点位于均值处及对称分布于主轴的协方差处(每维两个)。按照如下方法采样得到
其中,
步骤三:sigma 点非线性变换
将每个 sigma 点(即
步骤四:加权计算近似均值与近似协方差
1.3 比例无迹变换
从 1.2 节的内容中我们可以发现,当参数
步骤一:参数选择与权重计算
比例无迹变换引入了四个外部参数:
其中,
参数
下图呈现了当
![5b34c440a1524bed72f889900bae0187.png](https://i-blog.csdnimg.cn/blog_migrate/1e0020fa5523be97fbedc11320a67bf5.png)
参数
步骤二:确定性采样
通常情况下,siama 点位于均值处及对称分布于主轴的协方差处(每维两个)。按照如下方法采样得到
其中,
步骤三:sigma 点非线性变换