自适应卡尔曼滤波(adaptive kalman filter)是指利用观测数据校验预测值完成更新的同时,判断系统本身特性是否发生动态变化,从而对模型参数和噪声特性进行估计和修正,以改进滤波设计、缩小滤波的实际误差。

KF


通过kalman理论认知,已知其预测更新的精度和准确性的保证都是基于协方差,通过设计的状态更新矩阵及伴随预测误差Q得到预测状态量和协方差x’,P’,从而基于观测值及伴随的观测误差R,对预测值进行矫正完成更新。

关于kalman滤波的解释说明,可以详见我的另一篇博客,这边主要说说AKF的区别。

想象一下这样一个场景,用radar和摄像头进行目标检测。由于场景变换,比如突然的光照变化,路面剧烈抖动,上下坡等原因,导致传感器的检测精度受到影响,由于kalman更新依赖测量精度R和预测精度Q,那么如果检测值出现偏差,而测量精度却没有任何变化,那么这个校验结果也必然不合理。

为了应对类似的问题,就引入了AKF,通过一些参量实现对Q,R调节,保证伴随协方差合理(P‘,Q,R,P都会因此受益,效果更准确)

AKF

关于自适应卡尔曼滤波,目前使用较多的一种方法是Sage-husa自适应滤波算法。下面针对该算法进行说明介绍。

AKF是一种思想,并不是明确的哪一种方法,实际可根据自身项目需求来进行更新计算的,并不一定要用状态量X中的数据。

现假设线性离散系统数学模型为:

X(k)系统状态向量,Φ(k,k-1)系统状态转移矩阵,Γ系统噪声矩阵,W(k)系统噪声向量
Z(k)系统观测向量,H(k)系统观测矩阵,V(k)量测噪声向量。

基于数学模型设计的sage-huse自适应滤波算法如下:

下面对上述部分进行说明:
(1)对应预测部分,对状态量X和伴随协方差P进行预测,得到X’和P’。
(2)为自适应卡尔曼滤波引入的一个超参数,调节更新参量dkb被称为遗忘因子,取值在0.95~0.99之间。
(3)对应更新部分的增益系数K求导部分,主要区别在于观测误差R基于dk调节,随着帧数k变化,R(k)->R(k-1),即观测误差R趋向稳定。
(4)对应更新部分的状态量更新部分。

下面针对AKF与KF区别进行细节说明:(个人理解,如有不同理解,感谢指教)
(1)部分,X作为一个后验估计,也就没有考虑偏差补偿u,但所设计系统预测误差作为P(k|k-1)等式右侧第二项累加到伴随误差P(k|k-1)中。>(2)部分,通过求导可发现dk 是一个随着迭代帧数k变化而单调递减的值,0<dk<1,也就是说sage-huse自适应是基于帧数自适应调节测量Q和观测R的。那么根据所设计系统不同,把b用相关参量表示,从而周期调节dk,当然,连带(3)部分中的R(k)更新方程也可以重新调整一下。这里的dk作为观测误差R的调节量,而预测误差Q一般不会被调动,代表的是所设计系统的迭代更新误差,除非在使用过程中,系统存在动态参量调节,不然预测误差是不应被调节的,避免导致系统震荡。
(3)部分,主要说明一下R(k),采取加权求和的形式,dk动态调节权重,
ps.通过博客可以知道增益系数K代表预测协方差P与总方差S比值,0.5<K<1,K越小预测越准确,越大表示预测误差越大,这里给K另一个称呼预测观测比,那么可以理解[I-H(k)K(k-1)]v(k)表示上帧观测预测模型与当帧差异误差,把这部分误差协方差+上帧伴随协方差P相加,作为R(k)更新第二项。
(4)部分,同kalman,就不说了。

以上。

自动驾驶-自适应卡尔曼滤波AKF相关推荐

  1. 自动驾驶——自适应控制理论

    笔者周末学习了柴天佑院士的自适应控制,听了大概两章的内容,讲的很好.从工程化的角度去讲.毕业2年后,带着有控制理论相关工程经验去听,感觉就不一样,学到很多. 1绪论 自适应控制含义? 2.自适应控制的 ...

  2. 研究人员发布用于自动驾驶的开源逼真模拟器-译-

    超现实的虚拟世界被誉为自动驾驶汽车 ( autonomous vehicles ,AV) 的最佳驾驶学校,因为它们已被证明是安全地尝试危险驾驶场景的卓有成效的测试平台.特斯拉.Waymo 和其他自动驾 ...

  3. 自适应巡航 自动泊车 车道偏离 碰撞预警 自动驾驶之辅助驾驶技术简介

    [转载]智车科技 7月21日 根据工业和信息化部.公安部.交通运输部等三部委共同发布的<智能网联汽车道路测试管理规范(试行)>,自动驾驶汽车是指搭载先进的车载传感器.控制器.执行器等装置, ...

  4. 【自动驾驶中的卡尔曼滤波算法——无迹卡尔曼滤波的实现】

    无迹卡尔曼滤波算法的实现   之前写了线性卡尔曼滤波以及拓展卡尔曼滤波算法的实现,今天补充一下无迹卡尔曼滤波算法的MATLAB算法实现.其实网上相关的博客很多,也讲的非常详细,所以本博客不再对原理部分 ...

  5. Apollo自动驾驶入门课程第⑤讲 — 感知(下)

    目录 1. 卷积神经网络 2. 检测与分类 3. 跟踪 4. 分割 5. Apollo感知 6. 传感器数据比较 7. 感知融合策略 本文转自微信公众号:Apollo开发者社区 原创: 阿波君 Apo ...

  6. 知荐 | 自动驾驶的“大脑”:决策规划篇

    决策规划技术概述 决策规划是自动驾驶的关键部分之一,它首先融合多传感信息,然后根据驾驶需求进行任务决策,接着在能避开可能存在的障碍物前提下,通过一些特定的约束条件,规划出两点间多条可选安全路径,并在这 ...

  7. 【回答问题】ChatGPT上线了!给我推荐20个比较流行的自动驾驶算法模型

    给我推荐20个比较流行的自动驾驶算法模型 当前比较流行的自动驾驶模型有: 卷积神经网络(CNN) 长短时记忆网络(LSTM) 自适应调和滤波器(ADF) 自适应估计滤波器(AEF) 线性预测滤波器(L ...

  8. 【自动驾驶】高精地图在无人驾驶中的应用

    高精地图是无人驾驶核心技术之一,精准的地图对无人车定位.导航与控制,以及安全至关重要.本文是"无人驾驶技术系列"第七篇,首先介绍高精地图与传统地图的区别,然后介绍其特点及制作过程. ...

  9. 百度Apollo自动驾驶学习笔记

    Apollo学习笔记 作者:邹镇洪(清华大学车辆学院,个人主页 转到Github项目主页查看持续更新 转到Github项目主页查看持续更新 转到Github项目主页查看持续更新 本文是对百度Apoll ...

最新文章

  1. 简单分析几个常见的排序算法(C语言)
  2. JavaScript|拖拽|仿Android手机九点连线开锁
  3. 我什么计算机作文600字,我家的电脑作文600字
  4. 随机森林算法 python_Python实现的随机森林算法与简单总结
  5. ajax div 赋值重新渲染_优化向:单页应用多路由预渲染指南
  6. “寒武纪大爆发”之后的云原生,2021年走向何处?
  7. 将学校版JAVA系统迁移到Mysql数据库的工作安排
  8. [轉]VS 2010 通过 Architecture创建UML类图设计
  9. 如何在思科交换机上配置Telnet远程登录
  10. 基于ZYNQ7000的交叉编译工具链Qt+OpenCV+ffmpeg等库支持总结【依赖库源码包】
  11. IntelliJ IDEA使用教程
  12. 从零开始做小程序(三)——引入组件库
  13. 单层感知器的学习规则
  14. summernote 工具栏相关
  15. iPhone6 微信视频通话没有声音
  16. BMS(Battery Management System)是什么?
  17. java 包的位置_通过Java在jar文件所在的位置创建目录
  18. 对辛辛那提原始数据集(ims)数据划分正常,内圈故障,滚动体故障,外圈故障(python代码),可作为自己故障诊断模型实验的另一个数据集(因为CWRU普遍而言,准确度和被使用频率已经极高)
  19. fopen函数的打开模式
  20. JDBC【数据库连接池、DbUtils框架、分页】

热门文章

  1. python批量识别二维码图片_python批量操作生成二维码
  2. BZOJ4416: [Shoi2013]阶乘字符串
  3. ArcGIS填补栅格中空值
  4. C 结构体 struct 详解
  5. python 编写获取阿里巴巴行业分类数据代码
  6. <汇编>七种寻址方式
  7. 游戏推广中买量和导量是什么意思?
  8. SSM项目图书馆管理系统,适合新人练手和毕设参考,功能首页展示 系统注册登录登出 用户管理 权限控制管理 书籍管理 图书借阅管理 个人借阅记录管理 书籍详细信息展示等
  9. 怎样设置网页中的文字样式
  10. 关于网络广告的的概念