视频跟踪之均值漂移算法的实现

本文介绍了均值漂移算法的原理,通过二维空间示例解释算法迭代过程,并讨论了核密度估计的重要性,特别是高斯核函数在平滑数据中的作用。文章还展示了如何结合OpenCV库实现该算法。
摘要由CSDN通过智能技术生成

meanshift(均值漂移算法)实际上是一种基于梯度的搜索算法,先看看meanshift简单的推导:给定d维空间Rd中的几个样本点,任选一点x0,,(n维)

meanshift向量的基本形式定义为:

                                                                                    

其中Sk是以点x0为球心,半径为h的一个高维球,若是二维,那自然就是一个圆了。k为落入高维球区域内样本的个数.而且这个区域的所有点y满足以下关系:

                                                                                       

                                                                                       

如下图,假设样本点处在一个二维空间内

                                                                                               

如图蓝色点是我们选定的迭代的初始点即x0,将蓝色圆(圆的半径为h)内所有向量相加,相加的结果为如图为黑色向量,其终点指向的是如图所示的红色点,然后以红色点为圆心,h为半径再画一个圆,再求这个圆内以圆心为起点所有向量的和。如此迭代下去,圆的中心点为收敛于一个固定的点,也就是概率密度最大的地方。

以上只是meanshift大概的解释,还没有涉及到核函数.

我们知道密度估计理论分为两种:一种是参数密度估计,如高斯建模,即对模型的参数进行估计,其估计方法有两个:最大似然估计和贝叶斯估计。另一种是无参密度估计:如直方图,最近邻域法,核密度估计等。

核密度估计有一点类似于直方图,它也把数据值域分成若干相等的区间,每个区间称为一个bin,将样本数据按照这些区间划分到不同的bin,每个bin中样本的个数与总样本数量的比值就是每个bin的值,如:假设有1,2,3,4,5,6,7,8,9这9个样本,1到3之间的数分到一个bin(称为bin1),4到6的分到一个bin(bin2),7到9的分到一个bin(bin3),则bin1的值为1/3,bin2=1/3,bin3=1/3;

相对于直方图法,核密度估计多了一个平滑数据的核函数,如高斯核函数。之所以要用到核函数,主要是对样本点进行加权,我们知道对于高维球内所有的样本点,他们对求解的贡献是不一样的,那么怎样去衡量这个贡献呢,为此便引入了核函数,说白了&

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

mayo_ai

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值