filters image using the guide image guide over range-r neighborhoods with pixel-value regularizer ϵ.


filters image so as to reduce noise, using image as the guide.

Details and Options

  • GuidedFilter is a nonlinear local filter used for edge-preserving smoothing and structure transfer.
  • GuidedFilter works with arbitrary 2D and 3D images, as well as numeric data arrays of any rank.
  • GuidedFilter[image,r,ϵ] is equivalent to GuidedFilter[image,image,r,ϵ].
  • The images image and guide need to have the same dimensions, but may have a different number of channels.
  • The radius r controls the scale over which the filter operates. Features smaller than r will typically be averaged out, and features larger than r will remain.
  • Larger values of ϵ result in more smoothing and less guidance, while smaller values of ϵ result in less smoothing and more guidance.
  • At the edges of the image, smaller neighborhoods are used.
  • If image is a multichannel image, the guidance is always applied to each channel separately.
  • If guide is a multichannel image, operations involving guide are performed using vector processing.
  • GuidedFilter can take an option MaxIterations to specify the maximum number of iterations. By default, one iteration is performed.


open allclose all

Basic Examples  (2)

Filtering of an image:

Filtering of an image using a guide image:

Scope  (3)

Data  (3)

Guided filtering of a noisy 2D array:

Reduce noise and visualize:

Guided filtering of a color image:

Guided filtering of a 3D image:

Options  (1)

MaxIterations  (1)

By default, one iteration of guided filtering is performed:

Run more iterations:

Applications  (8)

Smooth an image:

Denoise an image:

Decompose an image into base and details:

Unsharp masking:

Refine a blocky estimate of the transmission map of light through haze:

Joint upsampling of an operation performed at low resolution:

Tone map a low-resolution image:

Guide the upsampled low-resolution result with the high-resolution image:

Simple single-image upsampling is blurry:

Guided feathering for matting:

Use the refined mask with transferred structure as an α matte:

Enhance a no-flash image using an aligned-flash image:

Properties & Relations  (3)

Smoothing is typically stronger with a bigger regularization parameter ϵ:

If image and guide are identical, a regularization parameter ϵ set to zero yields an identical output:

GuidedFilter and BilateralFilter produce similar results:

GuidedFilter does not produce gradient reversal artifacts:

Wolfram Research (2015), GuidedFilter, Wolfram Language function,


Wolfram Research (2015), GuidedFilter, Wolfram Language function,


@misc{reference.wolfram_2020_guidedfilter, author="Wolfram Research", title="{GuidedFilter}", year="2015", howpublished="\url{}", note=[Accessed: 18-January-2021 ]}


@online{reference.wolfram_2020_guidedfilter, organization={Wolfram Research}, title={GuidedFilter}, year={2015}, url={}, note=[Accessed: 18-January-2021 ]}


Wolfram Language. 2015. "GuidedFilter." Wolfram Language & System Documentation Center. Wolfram Research.


Wolfram Language. (2015). GuidedFilter. Wolfram Language & System Documentation Center. Retrieved from