|
|
Line 1: |
Line 1: |
| '''Mean shift''' is a [[non-parametric]] [[feature space|feature-space]] analysis technique, a so-called [[mode seeking]] algorithm.<ref name="PAMI95">{{cite journal
| | Andrew Simcox is the title his parents gave him and he totally enjoys this name. Playing badminton is a thing that he is totally addicted to. Her family lives in Alaska but her spouse wants them to transfer. I am an invoicing officer and I'll be promoted quickly.<br><br>My web-site ... free psychic reading ([http://breenq.com/index.php?do=/profile-1144/info/ go to this web-site]) |
| | last = Cheng
| |
| | first = Yizong
| |
| | authorlink =
| |
| | title = Mean Shift, Mode Seeking, and Clustering
| |
| | journal = IEEE Transactions on Pattern Analysis and Machine Intelligence
| |
| | volume = 17
| |
| | issue = 8
| |
| | pages = 790–799
| |
| | publisher = IEEE
| |
| | location =
| |
| | date = August 1995
| |
| | url =
| |
| | doi = 10.1109/34.400568
| |
| | id =
| |
| | accessdate = }}</ref> Application domains include [[cluster analysis]] in [[computer vision]] and [[image processing]].<ref name="PAMI02">{{cite journal
| |
| | last = Comaniciu
| |
| | first = Dorin
| |
| | authorlink =
| |
| | coauthors = Peter Meer
| |
| | title = Mean Shift: A Robust Approach Toward Feature Space Analysis
| |
| | journal = IEEE Transactions on Pattern Analysis and Machine Intelligence
| |
| | volume = 24
| |
| | issue = 5
| |
| | pages = 603–619
| |
| | publisher = IEEE
| |
| | location =
| |
| | date = May 2002
| |
| | url =
| |
| | doi = 10.1109/34.1000236
| |
| | id =
| |
| | accessdate = 2008-02-29}}</ref>
| |
| | |
| == History ==
| |
| The mean shift procedure was originally presented in 1975 by Fukunaga and Hostetler.<ref name="Fukunaga">{{cite journal
| |
| | last = Fukunaga
| |
| | first = Keinosuke
| |
| | authorlink =
| |
| | coauthors = Larry D. Hostetler
| |
| | title = The Estimation of the Gradient of a Density Function, with Applications in Pattern Recognition
| |
| | journal = IEEE Transactions on Information Theory
| |
| | volume = 21
| |
| | issue = 1
| |
| | pages = 32–40
| |
| | publisher = IEEE
| |
| | location =
| |
| | date = January 1975
| |
| | url = http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=1055330
| |
| | doi =10.1109/TIT.1975.1055330
| |
| | id =
| |
| | accessdate = 2008-02-29}}</ref>
| |
| | |
| == Overview ==
| |
| Mean shift is a procedure for locating the maxima of a [[density function]] given discrete data sampled from that function.<ref name="PAMI95" /> It is useful for detecting the [[Mode (statistics)|mode]]s of this density.<ref name="PAMI95" /> This is an iterative method, and we start with an initial estimate <math> x </math>. Let a [[Kernel (statistics)|kernel function]] <math> K(x_i - x) </math> be given. This function determines the weight of nearby points for re-estimation of the mean. Typically Gaussian kernel on the distance to the current estimate is used, <math> K(x_i - x) = e^{-c||x_i - x||^2} </math>. The weighted mean of the density in the window determined by <math> K </math> is
| |
| | |
| <math> m(x) = \frac{ \sum_{x_i \in N(x)} K(x_i - x) x_i } {\sum_{x_i \in N(x)} K(x_i - x)} </math>
| |
| | |
| where <math> N(x) </math> is the neighborhood of <math> x </math>, a set of points for which <math> K(x) \neq 0 </math>.
| |
| | |
| The mean-shift algorithm now sets <math> x \leftarrow m(x) </math>, and repeats the estimation until <math> m(x) </math> converges.
| |
| | |
| == Mean shift for visual tracking ==
| |
| The mean shift algorithm can be used for visual tracking. The simplest such algorithm would create a confidence map in the new image based on the color histogram of the object in the previous image, and use mean shift to find the peak of a confidence map near the object's old position. The confidence map is a probability density function on the new image, assigning each pixel of the new image a probability, which is the probability of the pixel color occurring in the object in the previous image. A few algorithms, such as [[ensemble tracking]],<ref name="avidan2001">{{cite journal
| |
| | last = Avidan
| |
| | first = Shai
| |
| | authorlink =
| |
| | title = Ensemble Tracking
| |
| | journal = 2005 IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR'05)
| |
| | volume = 2
| |
| | issue =
| |
| | pages =
| |
| | publisher = IEEE
| |
| | location = San Diego, California
| |
| | year = 2005
| |
| | url =
| |
| | doi =
| |
| | id =
| |
| | isbn = 0-7695-2372-2
| |
| | accessdate = }}</ref> CAMshift, expand on this idea.
| |
| | |
| == See also ==
| |
| *[[Kernel density estimation]] (KDE)
| |
| *[[Kernel (statistics)]]
| |
| | |
| == References ==
| |
| {{reflist}}
| |
| | |
| ==Code implementations==
| |
| * [http://scikit-learn.org/ Scikit-learn library] Numpy/Python implementation uses ball tree for efficient neighboring points lookup
| |
| * [http://coewww.rutgers.edu/riul/research/code/EDISON/index.html EDISON library]. C++ implementation of mean-shift-based image segmentation. There is also a [http://www.wisdom.weizmann.ac.il/~bagon/matlab.html#edison Matlab] interface for EDISON.
| |
| * [http://sourceforge.net/projects/opencvlibrary/ OpenCV] contains mean-shift implementation via cvMeanShift Method
| |
| * [http://code.google.com/p/aiphial/ Aiphial]. Java-based mean-shift implementation for numeric data clustering and image segmentation
| |
| * [http://mahout.apache.org Apache Mahout]. An map-reduce based implementation of MeanShift clustering written on Apache Hadoop.
| |
| * [http://www.gergltd.com/cse486/project5/ CAMSHIFT project]. A MATLAB implementation of CAMSHIFT algorithm.
| |
| * [http://www.orfeo-toolbox.org/doxygen-current/classotb_1_1MeanShiftImageFilter.html OTB MeanShift]. A C++ implementation using the [http://www.orfeo-toolbox.org Orfeo Toolbox].
| |
| * [http://rsbweb.nih.gov/ij/plugins/mean-shift.html ImageJ Plug-in]. Image filtering using the mean shift filter.
| |
| * [http://code.google.com/p/mean-shift/ Mean-shift google code]. An simple implementation of mean-shift as image filtering tool.
| |
| | |
| ==Short lessons==
| |
| * [http://www.youtube.com/watch?v=M8B3RZVqgOo Here] a lesson is available from prof. M.Shah on this topic;
| |
| | |
| {{DEFAULTSORT:Mean-Shift}}
| |
| [[Category:Computer vision]]
| |
| [[Category:Data clustering algorithms]]
| |
Andrew Simcox is the title his parents gave him and he totally enjoys this name. Playing badminton is a thing that he is totally addicted to. Her family lives in Alaska but her spouse wants them to transfer. I am an invoicing officer and I'll be promoted quickly.
My web-site ... free psychic reading (go to this web-site)