目标跟踪之meanshift---meanshift2

  均值漂移,可以对非刚性物理进行跟踪,是分参数估计,过程是迭代的过程,对光和形态不敏感,缺点是检测目标是固定的,特征不较少,模板背景没有实时更新,没有目标的位置精度预测只是梯度浓聚,

  原理:

  用文字标书就是在圆弧r范围内也就是划定的目标区域内,进行灰度像素直方图的相加取均值,这个均值就是目标中心的浓聚,借用公式如下

  从每个像素开始,首先估计有相似颜色的邻近像素点的密度(局部密度)的梯度,而后利用迭代算法求出局部密度的峰值(即重心点),把能够聚类到同一个峰值点的所有像素点划分成一个区域。

以上为mean shift的数学原理。有关文字的叙述已经在上一篇中提到了。用mean shift来跟踪属于确定性算法,粒子滤波器属于统计学方法。meanshift跟踪算法相对于粒子滤波器来说可能实时性更好一些,但是跟踪的准确性在理论上还是略逊于粒子滤波器的。mean shift跟踪的的实质就是通过对应的模板来确定目标的下一个位置。

质心计算:

1 给定目标的初始位置和尺寸, 计算目标在图像中的直方图;
2 输入新图像, 迭代直到收敛: 
计算图像上对应区域的新直方图;
新直方图与目标直方图比较,计算权重;
根据权重,计算图像上对应区域的形心/质心;
根据形心,修正目标位置;

效果:

直方图分为两部分, 每部分大小4096,
RGB的256*256*256种组合, 缩减为16*16*16=4096种组合. 
如果目标区域的点是边缘点, 则计入直方图的后一部分, 
否则计入直方图的前一部分.

针对缺点的改进:

不足

缺乏必要的模型更新方法;整个跟踪过程中跟踪窗口的大小保持不变,当目标存在尺度变化的时候会导致尺度定位不准确。

连续自适应的Meanshift(CamShift)算法

Bradski根据Mean Shift算法的不足,提出了Camshift算法。CamShift算法,即Continuously Adaptive Mean-Shift算法,基本思想就是对视频图像的多帧进行MeanShift运算,将上一帧结果作为下一帧的初始值,迭代下去。
该算法采用不变矩对目标的尺寸进行估算,实现了连续自适应地调整跟踪窗口的大小和位置,并将其应用在对连续彩色图像序列中的运动目标的快速跟踪。
简单点说,Mean Shift是针对单张图片寻找最优迭代结果,而Camshift则是针对视频序列来处理,并对该序列中的每一帧图片都调用Mean Shift来寻找最优迭代结果。正是由于Camshift针对一个视频序列进行处理,从而保证其可以不断调整窗口的大小,如此一来,当目标的大小发生变化的时候,该算法就可以自适应地调整目标区域继续跟踪。

http://blog.csdn.net/dadaadao/article/details/6029583 meanshift 详解

http://blog.csdn.net/jinshengtao/article/details/30258833

http://www.xuebuyuan.com/1767617.html 公式推导

http://blog.csdn.net/jinshengtao/article/details/30970733 粒子滤波

http://www.kuqin.com/shuoit/20141007/342498.html

https://github.com/RonnyYoung/ImageFeatures/tree/master/source hog特征

http://wenku.baidu.com/link?url=qKZQnQqyR6qrx8ik3TXd2nzDl4mlDUf1WauB6OWq9f8-jo0VPWSBRDC_KPRXvms-yXC_8NzsMzGYC5ewQxuRpqO55_ZFEqrm2kJyw-Q3dyC 卡尔曼滤波预测

http://www.pudn.com/downloads56/sourcecode/multimedia/vfw/detail197185.html 卡尔曼滤波的实现

http://www.pudn.com/downloads154/sourcecode/graph/detail685202.html c实现

http://www.docin.com/p-1393012472.html 人流统计

http://xueshu.baidu.com/s?wd=paperuri:(d8adc654defc2e795fa1dab8a7014c7d)&filter=sc_long_sign&sc_ks_para=q%3D一种基于二部图匹配的智能多目标跟踪算法&tn=SE_baiduxueshu_c1gjeupa&ie=utf-8 学术

http://blog.csdn.net/jinshengtao/article/details/18599165 人脸识别

http://blog.csdn.net/jinshengtao/article/details/23122269 一流检测

时间: 2024-08-29 09:56:14

目标跟踪之meanshift---meanshift2的相关文章

目标跟踪算法meanshift优缺点

原博主:http://blog.csdn.net/carson2005/article/details/7341051 meanShift算法用于视频目标跟踪时,采用目标的颜色直方图作为搜索特征,通过不断迭代meanShift向量使得算法收敛于目标的真实位置,从而达到跟踪的目的. 传统的meanShift算法在跟踪中有几个优势: (1)算法计算量不大,在目标区域已知的情况下完全可以做到实时跟踪: (2)采用核函数直方图模型,对边缘遮挡.目标旋转.变形和背景运动不敏感. 同时,meanShift算

meanshift应用于目标跟踪

这个文章并不是详细的讲解,只是总结一下我用meanshift的一些体会 先简单说一下meanshift算法的原理: 如下图所示,先指定一个区域,通过把指定区域的几何中心与质心想比较,如果相差较大,将区域的几何中心移到质心处,然后继续做比较.直到这个区域的几何中心与质心重合.用这个方法,可以找到一个图片中点最密集的地方. 将meanshift应用于目标跟踪,其实就是构造一个运行图片的PDF,然后应用上述的梯度爬坡的思想,找到最密集的区域.基本思路如下: 1 在A帧中选择一个目标a 2 根据B帧与a

基于MeanShift的目标跟踪算法及实现

一.简介 首先扯扯无参密度估计理论,无参密度估计也叫做非参数估计,属于数理统计的一个分支,和参数密度估计共同构成了概率密度估计方法.参数密度估计方法要求特征空间服从一个已知的概率密度函数,在实际的应用中这个条件很难达到.而无参数密度估计方法对先验知识要求最少,完全依靠训练数据进行估计,并且可以用于任意形状的密度估计.所以依靠无参密度估计方法,即不事先规定概率密度函数的结构形式,在某一连续点处的密度函数值可由该点邻域中的若干样本点估计得出.常用的无参密度估计方法有:直方图法.最近邻域法和核密度估计

目标跟踪之camshift---opencv中meanshift和camshift例子的应用

在这一节中,主要讲目标跟踪的一个重要的算法Camshift,因为它是连续自使用的meanShift,所以这2个函数opencv中都有,且都很重要.为了让大家先达到一个感性认识.这节主要是看懂和运行opencv中给的sample并稍加修改. Camshift函数的原型为:RotatedRect CamShift(InputArray probImage, Rect& window, TermCriteria criteria). 其中probImage为输入图像直方图的反向投影图,window为要

目标跟踪学习笔记_1(opencv中meanshift和camshift例子的应用)

在这一节中,主要讲目标跟踪的一个重要的算法Camshift,因为它是连续自使用的meanShift,所以这2个函数opencv中都有,且都很重要.为了让大家先达到一个感性认识.这节主要是看懂和运行opencv中给的sample并稍加修改. Camshift函数的原型为:RotatedRect CamShift(InputArray probImage, Rect& window, TermCriteria criteria). 其中probImage为输入图像直方图的反向投影图,window为要

计算机视觉目标跟踪的算法分类

摘自百度百科............. (1)基于区域的跟踪算法 基于区域的跟踪算法基本思想是:将目标初始所在区域的图像块作为目标模板,将目标模板与候选图像中所有可能的位置进行相关匹配,匹配度最高的地方即为目标所在的位置.最常用的相关匹配准则是差的平方和准则,(Sum of Square Difference,SSD). 起初,基于区域的跟踪算法中所用到的目标模板是固定的,如 Lucas 等人提出 Lucas-Kanade 方法,该方法利用灰度图像的空间梯度信息寻找最佳匹配区域,确定目标位置.之

目标跟踪--CamShift

转载请注明出处! !! http://blog.csdn.net/zhonghuan1992 目标跟踪--CamShift CamShift全称是ContinuouslyAdaptive Mean Shift,即连续自适应的MeanShift算法.而MeanShift算法,首先得对MeanShift算法有个初步的了解,可以參考这里.而CamShift是在MeanShift的基础上,依据上一帧的结果.来调整下一帧的中心位置和窗体大小,所以.当跟踪的目标在视频中发生变化时,可以对这个变化有一定的调整

目标跟踪

目标跟踪过程分为2部分,即目标特征提取和目标跟踪算法. 其中目标特征提取又包括以下几种: 1. 各种色彩空间直方图,利用色彩空间的直方图分布作为目标跟踪的特征,可以减少物体远近距离的影响,因为其颜色分布大致相同. 2.轮廓特征,提取目标的轮廓特征,可以加快算法的速度,且可以在目标有小部分影响的情况下同样有效果. 3. 纹理特征,如果被跟踪目标是有纹理的,则根据其纹理特征来跟踪效果会有所改善. 目标跟踪算法目前大概分为以下4种: 1. 基于meanshift算法,即利用meanshift算法可以快

【转】 目标跟踪小结

一.引言:在需要监控的环境里,如何能够判断出进入特定区域的目标,并且能够跟踪目标的轨迹.分为两种情况:一是静态背景下的目标跟踪:二是动态背景下的目标跟踪. 二.静态背景下的目标跟踪方法 1.单目标:目标跟踪还可以分为单目标的跟踪和多目标的跟踪.单目标的静态背景下的目标跟踪指的是摄像头是固定在某一方位,其所观察的视野也是静止的.通常采用背景差分法,即先对背景进行建模,然后从视频流中读取图像(我们称之为前景图像),将前景图像与背景图像做差,就可以得到进入视野的目标物体.对于目标的描述,通常用目标连通

基于mean shift的目标跟踪算法

Mean shift 算法是一种半自动跟踪方法在起始跟踪帧通过手工确定搜索窗口来选择运动目标计算核函数加权下的搜索窗口的直方图分布用同样的方法计算当前帧对应窗口的直方图分布以两个分布的相似性最大为原则使搜索窗口沿密度增加最大的方向移动目标的真实位置. 加权直方图 传统直方图仅仅统计落入直方图区间的像素的个数,而加权直方图进一步考虑了像素与目标中心的距离,远离目标中心的像素对直方图的贡献较小. 带空间位置信息的加权直方图的思想就是:在计算直方图时,给每个点赋予一定的权值,权值的大小根据它离中心点的