Mean Shift算法,一般是指一个迭代的步骤,即先算出当前点的偏移均值,移动该点到其偏移均值,然后以此为新的起始点,继续移动,直到满足一定的条件结束.
具体步骤:1.在d维空间中,任选一个点,然后以这个点为圆心,h为半径做一个高维球,因为有d维,d可能大于2,所以是高维球。落在这个球内的所有点和圆心都会产生一个向量,向量是以圆心为起点落在球内的点位终点。然后把这些向量都相加。相加的结果就是Meanshift向量。
如图所以。其中黄色箭头就是Mh(meanshift向量)。
2.再以meanshift向量的终点为圆心,再做一个高维的球。如下图所示,重复以上步骤,就可得到一个meanshift向量。如此重复下去,meanshift算法可以收敛到概率密度最大得地方。也就是最稠密的地方。
转载自https://www.cnblogs.com/liqizhou/archive/2012/05/12/2497220.html
核函数:采样点(即上述落在球内的点)对估计点(即圆心)的影响可能会不同(即,权重不同)。可以用核函数来决定不同采样点的权重。例如,可以通过计算采样点与估计点的高斯距离(即使用高斯核函数)来决定权重。这种方法就叫做核函数估计,是无参估计的一种。转载自https://blog.youkuaiyun.com/u014510375/article/details/42558203