【计算机视觉】粒子滤波跟踪

粒子滤波步骤

1.初始化随机选取N个点,权重统一赋值1/N

2.选取目标特征,颜色直方图等等,用于获取先验概率密度,对比相似度

3.确定状态转移矩阵,用于预测下一帧目标位置

循环开始

4.根据状态转移矩阵,对每个粒子,预测目标新位置

5.获得系统观测值,计算观测位置处特征

6.计算每个预测位置处特征,与观测处位置特征对比,相似度高的赋予较大的权重,反之,赋予较小的权重

7.对粒子加权获取当前的目标最佳位置

8.粒子重采样

循环结束

上面是我自己的理解,有些问题仍然不明白:

1.都有观测值了还修正,修正后的结果真得会更好一些吗?

2.粒子滤波理论中的重要性采样完全没体现出来,重要性采样究竟在哪里使用了?

3.粒子滤波理论中,为什么要模拟后验概率,其实际意义是什么?跟踪过程中哪里体现了?

时间: 2024-08-09 14:44:46

【计算机视觉】粒子滤波跟踪的相关文章

基于粒子滤波的物体跟踪

先上图: Rob Hess(http://web.engr.oregonstate.edu/~hess/)实现的这个粒子滤波. 从代码入手,一下子就明白了粒子滤波的原理. 根据维基百科上对粒子滤波的介绍(http://en.wikipedia.org/wiki/Particle_filter),粒子滤波其实有很多变种,Rob Hess实现的这种应该是最基本的一种,Sampling Importance Resampling (SIR),根据重要性重采样. 算法原理的粗浅理解: 1)初始化阶段-提

目标跟踪之粒子滤波---Opencv实现粒子滤波算法

目标跟踪学习笔记_2(particle filter初探1) 目标跟踪学习笔记_3(particle filter初探2) 前面2篇博客已经提到当粒子数增加时会内存报错,后面又仔细查了下程序,是代码方面的问题.所以本次的代码与前几次改变比较小.当然这些code基本也是参考网上的.代码写得很不规范,时间不够,等以后有机会将其优化并整理成类的形式.)              Opencv实现粒子滤波算法            摘要 本文通过opencv实现了一种目标跟踪算法——粒子滤波算法,算法的

多尺度压缩跟踪_基于粒子滤波的应用

Tracking-by-detection的思想用discriminative外观模型来在线训练和更新分类器,对于采样的样本在分类器上获得的最大值标定为新目标.压缩跟踪(CT)是压缩域中的一种特征提取方法,然而其缺点是:1 使用固定的跟踪框来检测样本 2 采样半径固定,当运动机动性较大,采样不准确 3 学习因子固定 多尺度压缩跟踪讲CT与粒子滤波(PF:自举粒子滤波--bootstrap filter)结合.粒子滤波在非高斯.非线性贝叶斯模型的应用上较为突出,基于PF的跟踪通常使用轮廓(cont

基于粒子滤波的目标追踪

基于粒子滤波的目标追踪 particle filter object tracking 读"K. Nummiaro, E. Koller-Meier, L. Van Gool. An adaptive color-based particle filter[J], Image and Vision Computing, 2002"笔记 粒子滤波中最重要的一个过程就是重要性重采样, Sampling Importance Resampling (SIR). 这篇博客基于粒子滤波的物体跟踪

粒子滤波终结版

现实案例:美式橄榄球比赛画面的一段,在屏幕上指点一个区域比如计算颜色特征或空间轮廓特征等等,然后跟踪框跟踪目标 粒子滤波算法思想源于蒙特卡洛思想,以事件出现的频率代替该事件的概率,在粒子滤波算法中,凡是用到概率的地方都用离散化采样,通过大量的采样分布来近似表示,此法优点是可以处理任意形式的概率.我们的目的就是让预测粒子接近真实状态. 1)初始化阶段-提取跟踪目标特征 该阶段要人工指定跟踪目标,程序计算跟踪目标的特征,比如可以采用目标的颜色特征.具体到Rob Hess的代码,开始时需要人工用鼠标拖

从贝叶斯到粒子滤波——Round 2

粒子滤波确实是一个挺复杂的东西,从接触粒子滤波到现在半个多月,博主哦勒哇看了N多篇文章,查略了嗨多资料,很多内容都是看了又看,细细斟酌.今日,便在这里验证一下自己的修炼成果,请各位英雄好汉多多指教. 讲粒子滤波之前,还得先讲一个叫”贝叶斯滤波”的东西,因为粒子滤波是建立在贝叶斯滤波的基础上的哩.说太多抽象的东西也很难懂,以目标跟踪为例,直接来看这东西是怎么回事吧: 1. 首先咋们建立一个动态系统,用来描述跟踪目标在连续时间序列上的变换情况.简单一点,我们就使用目标的位置(x,y)作为这个动态系统

学习OpenCV——粒子滤波(网上两篇文章总结)

粒子滤波的理论实在是太美妙了,用一组不同权重的随机状态来逼近复杂的概率密度函数.其再非线性.非高斯系统中具有优良的特性.opencv给出了一个实现,但是没有给出范例,学习过程中发现网络上也找不到.learning opencv一书中有介绍,但距离直接使用还是有些距离.在经过一番坎坷后,终于可以用了,希望对你有帮助. 本文中给出的例子跟 我的另一篇博文是同一个应用例子,都是对二维坐标进行平滑.预测 使用方法: 1.创建并初始化 const int stateNum=4;//状态数 const in

一维粒子滤波纯代码

%一维粒子滤波代码 %状态方程:x(k)=x(k-1)/2+25*x(k-1)/(1+x(k-1)^2)+8cos(1.2(k-1))+vk;vk为噪声 %测量方程:y(k)=x(k)^2/20+nk;nk为噪声 %初始化时的状态 x0=0.1; %过程噪声的协方差,且其均值为0 Q=1; %测量噪声的协方差,且其均值为0 R=1; %仿真步数 simu_steps=70; %粒子滤波中的粒子数 N=100; %初始化分布的方差 V=2; %初始化粒子滤波的估计值与初始状态一致 x_estima

粒子滤波概述

粒子滤波器是贝叶斯滤波器的一种非参数执行情况,且经常用于估计一个动态系统的状态.粒子滤波器的关键思想是采用一套假设(即粒子)来表示后验概率,其中每一个假设代表了这个系统可能存在的一种潜在状态.状态假设表示为一个有 \( N \) 个加权随机样本的集合 \(S \) : \( S=\left \{ < s^{[i]},w^{[i]} > |i=1,2,...,N \right \} \) 式中: \( s^{[i]}\)是第\( i \)个样本的状态向量:\( w^{[i]}\)是第\( i \