MeanShiftFilter

MeanShiftFilter[image,r,d]
replaces each pixel with the mean of the pixels in a range-r neighborhood and whose value is within a distance d.

MeanShiftFilter[array,r,d]
applies mean-shift filtering to a data array.

Details and OptionsDetails and Options

  • MeanShiftFilter[image,r,d] finds the mean of the pixels in × blocks centered on each pixel, taking into account only those pixels whose value is within a Euclidean distance d from the center pixel.
  • At the edges of an image, MeanShiftFilter uses smaller neighborhoods.
  • MeanShiftFilter works with 3D as well as 2D images, and also with data arrays of any rank.
  • MeanShiftFilter[image,{rrow,rcol},d] uses range in height, and in width.
  • MeanShiftFilter[image,{rslice,rrow,rcol},d] uses range in height, in depth, and in width.
  • MeanShiftFilter works with binary, grayscale, RGB, and arbitrary multichannel images.
  • With a setting MaxIterations->n, at most n iterations will be performed.
  • MeanShiftFilter accepts a DistanceFunction option, which can be used to specify how the distance between pixel values is computed. The default setting is DistanceFunction->EuclideanDistance.
  • For a complete list of possible settings for DistanceFunction, see the reference page for MeanShift.
  • The possible range for the distance parameter d depends on the distance function used as well as the dimension of the color space.

ExamplesExamplesopen allclose all

Basic Examples  (3)Basic Examples  (3)

Mean-shift filtering of a color image:

In[1]:=
Click for copyable input
Out[1]=

Mean-shift filtering of a grayscale image:

In[1]:=
Click for copyable input
Out[1]=

Mean-shift filtering of a 3D image:

In[1]:=
Click for copyable input
Out[1]=
Introduced in 2010
(8.0)
| Updated in 2012
(9.0)