Mean shift is a non-parametric feature-space analysis technique, a so-called mode seeking algorithm.[1] Application domains include clustering in computer vision and image processing.[2]
Contents |
The mean shift procedure was originally presented in 1975 by Fukunaga and Hostetler.[3]
Mean shift is a procedure for locating the maxima of a density function given discrete data sampled from that function.[1] It is useful for detecting the modes of this density.[1] This is an iterative method, and we start with an initial estimate . Let a kernel function be given. This function determines the weight of nearby points for re-estimation of the mean. Typically we use the Gaussian kernel on the distance to the current estimate, . The weighted mean of the density in the window determined by is
where is the neighborhood of , a set of points for which .
The mean-shift algorithm now sets , and repeats the estimation until converges.
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. A few algorithms, such as Ensemble Tracking,[4] expand on this idea.