崔岩的笔记——粒子滤波原理及应用(1)概率论与数理统计基础_今天也是睡觉的一天的博客-CSDN博客

崔岩的笔记——粒子滤波原理及应用(2)蒙特卡洛法与贝叶斯滤波_今天也是睡觉的一天的博客-CSDN博客

粒子滤波原理

粒子滤波是基于蒙特卡洛仿真的近似贝叶斯滤波算法。

我们可以从贝叶斯滤波的过程来相应的给出粒子滤波的过程。

贝叶斯滤波公式推导分为两步,详细推导过程请见:崔岩的笔记——粒子滤波原理及应用(2)蒙特卡洛法与贝叶斯网络。

第一步为状态预测,即通过上一时刻的状态量和当前时刻的控制量预测当前时刻的状态量:

第二步为量测更新,即通过当前时刻的观测量来修正当前时刻状态量的预测量:

式中代表归一化常数。

对照贝叶斯滤波给出粒子滤波算法:

①生成初代粒子

通过先验概率生成初代粒子N个,各粒子之间相互独立,各个粒子的初始状态量分布服从先验概率分布。

②对于每个粒子进行状态量更新

对比贝叶斯滤波中的状态预测步骤,我们对每一个粒子上一时刻状态量按照控制方程进行更新,得到

③对于每个粒子进行权重计算

对比贝叶斯滤波中的量测更新步骤,我们根据观测量,结合观测方程计算每个粒子的权重,与贝叶斯滤波中的量测更新不同的是,我们在这一步不对粒子的状态量进行更新,而是引入一个新的参数——粒子权重,通过权重大小来表明各个粒子中,哪一个粒子的状态量估计值同真值更接近,其接近的程度又是多少。

④优胜劣汰

根据每个粒子的权重通过重采样步骤进行粒子的删除与复制,淘汰权重低的粒子,留下权重高的粒子。具体可以参考轮盘赌算法。

粒子重采样后需要对粒子权重进行重置,再依次循环状态更新、权重计算、优胜劣汰三步。最终会得到一个粒子集,我们通常把这个粒子集的状态量均值作为粒子滤波的结果。

在上述的整个过程中,我们使用粒子分布对概率进行表示、包括采样过程的理论依据就是蒙特卡洛法

粒子滤波算法流程

①初始化,t = 0

For i = 1:N,从先验分布中抽取初始化状态

②For i = 1:T

(a)重要性采样阶段

For i = 1:N,采样

For i = 1:N,为每个粒子计算权重

For i = 1:N,归一化权重

(b)选择阶段(重采样)

根据归一化权值的大小对粒子进行复制和淘汰

For i = 1:N,重新设置权重

(c)输出

粒子滤波的输出为一组样本点,以样本点近似表示后验分布

计算均值

end

崔岩的笔记——粒子滤波原理及应用(3)粒子滤波原理及算法流程相关推荐

  1. 崔岩的笔记——动态时间规整算法(Dynamic Time Warping,DTW)

    什么是动态时间规整算法,他是用来干什么的 用于两个时间不同的特征序列的相似度比较. 举个例子:该算法最早的应用对象是语音识别,通过进行数据库语音特征和说话语音特征的相似度比较进行语音识别,但每个人说话 ...

  2. 崔岩的笔记——使用QT在手机端读取传感器蓝牙数据——以BWT901CL传感器为例

    因为实验需要,我要在手机端读取BWT901CL传感器的蓝牙数据,QT中有封装好的用于蓝牙连接以及数据读取的类,因为代码不是我自己写的,因此我就不放完整的代码在上面,但我会尽可能的写的详细一些. QT在 ...

  3. 激光slam课程学习笔记--第7课:基于滤波的SLAM方法(Grid-based)

    前言:这系列笔记是学习曾书格老师的激光slam课程所得,这里分享只是个人理解,有误之处,望大佬们赐教.这节课主要介绍基于滤波的slam方法,重点学习其中的滤波数学理论,而非应用在slam. [当前的实 ...

  4. 【多源融合】滤波融合之卡尔曼滤波与粒子滤波

    多源融合之滤波对比 最近在看CSDN滤波方面的知识,但是很多都是激光雷达.视觉.信号处理等方面的大佬们总结的,我也做过卡尔曼滤波和粒子滤波.博主大地测量学与测量工程专业,主要做定位方面的内容,现在从我 ...

  5. Deep Learning论文笔记之(二)Sparse Filtering稀疏滤波

    Deep Learning论文笔记之(二)Sparse Filtering稀疏滤波 zouxy09@qq.com http://blog.csdn.net/zouxy09          自己平时看 ...

  6. 快速导向滤波 matlab,导向滤波小结:从导向滤波(guided filter)到快速导向滤波(fast guide filter)的原理,应用及opencv实现代码...

    http://blog.csdn.net/kuweicai/article/details/78385871 1. 导向滤波简介 导向滤波是何凯明在学生时代提出的一个保边滤波(edge-preserv ...

  7. 笔记:新一代高效视频编码H.265/HEVC原理、标准与实现

    第一章绪论 3个色彩基本分量,或亮度和色度分量. 每秒播放的帧的数目叫做帧率,单位fps.为了使人眼能够有平滑连续的感受,视频的帧率需要达到25~30 fps以上. H.265/HEVC几乎在每个模块 ...

  8. 徐无忌并发编程笔记:无锁机制CAS及其底层实现原理?

    徐无忌并发编程笔记:无锁机制CAS及其底层实现原理? 完成:第一遍 1.什么是CAS算法? compare and swap:比较与交换,是一种有名的无锁算法 CAS带来了一种无锁解决线程同步,冲突问 ...

  9. 渡一大师课笔记(重点:事件循环、浏览器渲染原理)

    渡一大师课笔记(重点:事件循环.浏览器渲染原理) 响应式原理(渡一) 什么是数据响应式? 函数与数据的关联(重要) 数据变化后,会自动重新运行依赖该数据的函数(重要) 被监控的函数 render.co ...

最新文章

  1. ts转换mp4 linux_佳佳MPEG4格式转换器官方版下载-佳佳MPEG4格式转换器v6.5.5.0下载
  2. Linux下的LVM创建以及Linux快照卷
  3. 科大星云诗社动态20201208
  4. java hasfocus_Java KeyEvent.hasNoModifiers方法代碼示例
  5. 2016-2017 ACM-ICPC CHINA-Final(7 / 12)
  6. MySQL InnoDB Memcached Plugin在Oray公司的实践
  7. vscode用作markdown入门2--代码上下标目录字体
  8. appboot-7227
  9. CREO:CREO软件的简介、安装(七大步骤)、学习路线大全(CREO软件各模块界面解释—菜单栏快速栏工作区、草绘/零件/工程图/装配设计讲解)、案例应用(几十个案例)之详细攻略
  10. 2022-2028年中国飞机电子飞行包(EFB)行业市场竞争状况及发展趋向分析报告
  11. 偏最小二乘法PLS和PLS回归的介绍及其实现方法
  12. 开启nexus出现If you insist running as root, then set the environment variable RUN_AS_USER=root
  13. Windows 10 系统更新后 vagrant up 报错:Error opening VBoxDrvStub: STATUS_OBJECT_NAME_NOT_FOUND
  14. KingbaseES V8R6 集群运维系列 -- 命令行部署repmgr管理集群+switchover测试
  15. 华为到底玩的哪些汽车技术?
  16. 数据库系统的工作流程
  17. 磁盘分区:系统C盘空间不足怎么办?
  18. 【Linux-MYSQL】数据库的使用
  19. Mysql如何添加环境变量(详细教程)
  20. 89.77%准确率!谷歌大脑提出CoAtNet:结合卷积和注意力

热门文章

  1. “城市·设计·管控”分论坛主题发言综述
  2. 熬秃了头整理的网工学习笔记和心得,赠与有缘人
  3. 安装包UI美化之路-nsNiuniuSkin安装包制作配置说明
  4. 设计PCB线宽、过孔与电压、电流关系
  5. java游戏房间匹配_游戏匹配实现
  6. 微软云计算操作系统Windows Azure 平台——云+端全面攻略
  7. 亚商投资顾问 早餐FM/0330 6G发展持开放态度
  8. #%#//scriptlet(‘set-constant‘, ‘Document.prototype.browsingTopics‘, ‘undefined‘) trace startVM8278:
  9. 三星a9s参数_三星A9s参数配置怎么样
  10. LA 3487 Duopoly 最小割