| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 数据结构与算法 -> 学习卡尔曼滤波(二) -> 正文阅读 |
|
[数据结构与算法]学习卡尔曼滤波(二) |
文章目录参考资料
在上一篇整理总结了基本的卡尔曼滤波后,这一章来学习扩展卡尔曼滤波(EKF),由于许多符号在上一篇中已经说明,所以本篇讲解中不再赘述。 1. 基本概念如下式,当状态转移矩阵(过程模型)和观测矩阵(观测模型)为非线性时,基础的卡尔曼滤波就无法发挥用处了,由此引入了扩展卡尔曼滤波。 x k = g ( u k , x k ? 1 ) + ω k x_k=g(u_k, x_{k-1})+\omega_k xk?=g(uk?,xk?1?)+ωk? z k = h ( x k ) + v k z_k=h(x_k)+v_k zk?=h(xk?)+vk? 对以上非线性函数进行泰勒展开,可化为线性形式。所以,扩展卡尔曼滤波算法只比原始卡尔曼滤波算法多了一步线性化的工作。具体流程如下图:
1.1 线性化过程——雅可比矩阵在向量微积分中,雅可比矩阵是一阶偏导数以一定方式排列成的矩阵,其行列式称为雅可比行列式。 雅可比矩阵的重要性在于它体现了一个可微方程与给出点的最优线性逼近。因此,雅可比矩阵类似于多元函数的导数。
1.2 预测故原本状态方程和观测方程中的 A , H A,H A,H矩阵(或者用 F , H F,H F,H符号表示,本文主要使用 F , H F,H F,H表示,如果图片中出现了 A , H A,H A,H,意思是一样的),在非线性系统中用雅可比矩阵代替 所以预测阶段的公式变为: 1.3 更新更新方程相对于KF而言,主要变动如下: y ^ k = z k ? h ( x ^ k ∣ k ? 1 , 0 ) S k = J H P k ∣ k ? 1 J H T + R k K k = P k ∣ k ? 1 J H T S k ? 1 x ^ k ∣ k = x ^ k ∣ k ? 1 + K k y ^ k P k ∣ k = ( I ? K k J H ) P k ∣ k ? 1 \begin{aligned} &\hat{y}_{k}=z_{k}-h\left(\hat{x}_{k \mid k-1}, 0\right) \\ &S_{k}=J_{H} P_{k \mid k-1} J_{H}^{T}+R_{k} \\ &K_{k}=P_{k \mid k-1} J_{H}^{T} S_{k}^{-1} \\ &\hat{x}_{k \mid k}=\hat{x}_{k \mid k-1}+K_{k} \hat{y}_k \\ &P_{k \mid k}=\left(I-K_{k} J_{H}\right) P_{k \mid k-1} \end{aligned} ?y^?k?=zk??h(x^k∣k?1?,0)Sk?=JH?Pk∣k?1?JHT?+Rk?Kk?=Pk∣k?1?JHT?Sk?1?x^k∣k?=x^k∣k?1?+Kk?y^?k?Pk∣k?=(I?Kk?JH?)Pk∣k?1?? 2. 移动机器人应用
2.1 移动机器人运动学模型(过程模型)
2.2 雅可比矩阵由于控制向量的系数矩阵
B
B
B 中包含状态量
?
t
\phi_{t}
?t? ,所以上面的状态转移函数为非线性。利用式 (2),我们可以得到状态函数的Jacobian矩 阵
J
F
J_{F}
JF? : 2.3 观测模型假定移动机器人装载有GNSS(卫星导航定位)传感器,可以实时获得自身的位置作为自身的观测向量 z t \mathbf{z}_t zt? ? z t = [ x t , y t ] T \mathbf{z}_t=[x_t, y_t]^T zt?=[xt?,yt?]T 使用矩阵表示即 2.4 PYTHON代码实现该部分见于github仓库。 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 3:52:41- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |