applies the function f to the range-r neighborhood of each pixel in each channel of image.

Details and Options

  • ImageFilter[f,image,r] replaces the value of each pixel by the result of applying the function f to the (2 r+1)×(2 r+1) array of values around that pixel.
  • ImageFilter operates separately on each channel in an image.
  • ImageFilter[f,image,{rrow,rcol}] uses range rrow in height, and rcol in width.
  • ImageFilter[f,image,{{rtop,rbottom},{rleft,rright}}] picks out neighborhoods that extend rtop rows up, rbottom rows down, rleft columns to the left, and rright columns to the right.
  • The channel values supplied to f are normally in the range 0 to 1, regardless of the underlying type used in the Image object. The function f is assumed to return channel values that are normally in the range 0 to 1.
  • ImageFilter[f,image, r] returns an image of the same type as image.
  • The following options can be given:
  • Padding"Fixed"what values to assume beyond the image
    InterleavingFalsewhether to supply f lists of channel values
    MaskingAllregion of interest
  • With the default setting Interleaving->False, the elements in the arrays to which f is applied are individual channel values for the pixels.
  • With Interleaving->True, the elements are instead the list of all channel values for a particular pixel.
  • ImageFilter[f,image,] by default gives an image of the same dimensions as image.
  • With a setting Padding->None, ImageFilter[f,image,] normally gives an image smaller than image.
  • ImageFilter works with Image3D object.


open all close all

Basic Examples  (3)

Apply a local minimum filter:

Click for copyable input

Blur an image by replacing each pixel with the local mean:

Click for copyable input

Apply a local maximum filter to a 3D image:

Click for copyable input

Options  (2)

Applications  (2)

Neat Examples  (1)

Introduced in 2008
Updated in 2012