Meanshift推导

给定d维空间Rd的n个样本点 ,i=1,…,n,在空间中任选一点x,那么Mean Shift向量的基本形式定义为:

Sk是一个半径为h的高维球区域,满足以下关系的y点的集合,

k表示在这n个样本点xi中,有k个点落入Sk区域中.

以上是官方的说法,即书上的定义,我的理解就是,在d维空间中,任选一个点,然后以这个点为圆心,h为半径做一个高维球,因为有d维,d可能大于2,所以是高维球。落在这个球内的所有点和圆心都会产生一个向量,向量是以圆心为起点落在球内的点位终点。然后把这些向量都相加。相加的结果就是Meanshift向量。

如图所以。其中黄色箭头就是Mh(meanshift向量)。

再以meanshift向量的终点为圆心,再做一个高维的球。如下图所以,重复以上步骤,就可得到一个meanshift向量。如此重复下去,meanshift算法可以收敛到概率密度最大得地方。也就是最稠密的地方。

最终的结果如下:

Meanshift推导:

把基本的meanshift向量加入核函数,核函数的性质在这篇博客介绍:http://www.cnblogs.com/liqizhou/archive/2012/05/11/2495788.html

那么,meanshift算法变形为

(1)

解释一下K()核函数,h为半径,Ck,d/nhd  为单位密度,要使得上式f得到最大,最容易想到的就是对上式进行求导,的确meanshift就是对上式进行求导.

(2)

令:

K(x)叫做g(x)的影子核,名字听上去听深奥的,也就是求导的负方向,那么上式可以表示

对于上式,如果才用高斯核,那么,第一项就等于fh,k

第二项就相当于一个meanshift向量的式子:

那么(2)就可以表示为

下图分析的构成,如图所以,可以很清晰的表达其构成。

要使得=0,当且仅当=0,可以得出新的圆心坐标:

(3)

时间: 2024-10-01 02:48:08

Meanshift推导的相关文章

基于meanshift的手势跟踪与电脑鼠标控制(手势交互系统)

转自网络:http://blog.csdn.net/zouxy09/article/details/17913745 基于meanshift的手势跟踪与电脑鼠标控制(手势交互系统) [email protected] http://blog.csdn.net/zouxy09 一年多前开始接触计算机视觉这个领域的时候,年幼无知,倍感吃力.当年惶恐,从而盲从.挣扎了不少时日,感觉自己好像还是处于领域的门外汉一样,在理论与实践的鸿沟中无法挣脱,心里空落落的.在这种挥之不去的烦忧中,某个时候豁然开朗,觉

机器学习笔记_PRML_Adaboost 算法的原理与推导

转自:http://blog.csdn.net/v_july_v/article/details/40718799 Adaboost 算法的原理与推导 1 Adaboost的原理 1.1 Adaboost是什么 AdaBoost,是英文"Adaptive Boosting"(自适应增强)的缩写,由Yoav Freund和Robert Schapire在1995年提出.它的自适应在于:前一个基本分类器分错的样本会得到加强,加权后的全体样本再次被用来训练下一个基本分类器.同时,在每一轮中加

机器学习算法推导过程中的数据基础知识

1.向量.矩阵求导 当然了,这里补充一下求解过程中的关于向量.矩阵求导的几个公式: 这里其实只需要明白第一个,后边的三个都可以由第一个简单的推导而来. 注意这里对列向量AX的每一项的求导写为行,不然就会得到一个超越矩阵,我们不采用这种方式.

Atitit.变量的定义 获取 储存 物理结构 基本类型简化 隐式转换 类型推导 与底层原理 attilaxDSL

Atitit.变量的定义 获取 储存 物理结构 基本类型简化 隐式转换 类型推导 与底层原理 attilaxDSL 1.1. $ 美元字符, php 黑头1 1.2. 默认变量的范围和声明:1 1.3. 变量的存储,储存在变量池里Map(varName,varVal)1 1.3.1. 复合变量1 1.4. 变量类型简化: 字符串 数字,  bool1 1.5. 变量自动隐式转换2 1.6. 类型推导2 2. 参考 复合变量2 1.1. $ 美元字符, php 黑头 1.2. 默认变量的范围和声明

最小二乘法的推导证明

1.附加题:推导线性最小二乘法过程 上述式子求解b 时最后一步用到求和性质,事实上 同理可证分子部分,具体请参考<计量经济学导论(第四版)Introductory Econometrics A Modern Approach Fourth Edition · 杰弗里·M·伍德里奇(Jeffrey M. Wooldridge)著>中的附录A 基本数学工具 . 2.赛马问题 问:36匹马,6条跑道,无计时器,最少几次比赛可以选出前3名? 答案是8次,思路如下: (1)把36匹马分成6组,分别进行6

从指数分布族去推导出广义线性模型

指数分布族的定义: 若一类概率分布可以写成如下形式,那么它就属于指数分布族: η - 自然参数,通常是一个实数 T(y) – 充分统计量,通常,T(y)=y,实际上是一个概率分布的充分统计量(统计学知识) 对于给定的a,b,T三个函数,上式定义了一个以η为参数的概率分布集合,即改变η可以得到不同的概率分布.极限定理得) 记录一下几个指数分布族以及它们的特征: 正态分布(高斯分布)--总体噪音(由中心极限定理得) 伯努利分布--逻辑回归(对01问题建模) 多项式分布--K种结果的事情进行建模 泊松

Y combinator 的推导过程

最近在看<暗时间>,书中有Y组合子的推导过程,初看时很难理解,这里记录一下加深记忆,我们使用Scheme语言的语法. 我们知道Scheme中可以这样定义递归函数 (define (func n) (if (= n 0) 1 (* n (func (- n 1))))) 但是我们知道define这个函数只起到了一个语法糖的效果,再对应lambda表达式还未知的时候是不能使用这个函数. 接下来我们只通过使用lambda表达式来推导出递归函数. 我们先做一下尝试 (lambda (n) (if (=

【推导】【数学期望】Gym - 101237D - Short Enough Task

按照回文子串的奇偶分类讨论,分别计算其对答案的贡献,然后奇偶分别进行求和. 推导出来,化简一下--发现奇数也好,偶数也好,都可以拆成一个等比数列求和,以及一个可以错位相减的数列求和. 然后用高中数学知识搞一下就行了. #include<cstdio> #include<iostream> using namespace std; typedef long long ll; int N; double K; double Quick_Pow(double x,int p){ if(!

hdu 5312 Sequence(数学推导——三角形数)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5312 Sequence Time Limit: 2000/2000 MS (Java/Others)    Memory Limit: 262144/262144 K (Java/Others) Total Submission(s): 1336    Accepted Submission(s): 410 Problem Description Today, Soda has learned a