iteratively reduces noise while preserving rapid transitions in data.


assumes a regularization parameter value param.

Details and Options

  • TotalVariationFilter, also known as total variation regularization, is an iterative filter commonly used to reduce different types of additive or multiplicative noise while preserving sharp transitions.
  • In TotalVariationFilter[data,param], the value of regularization parameter param is typically in the range 0 to 1.
  • The data can be any of the following:
  • listarbitrary-rank numerical array
    tseriestemporal data such as TimeSeries, TemporalData,
    imagearbitrary Image or Image3D object
    audioan Audio object
  • The following options can be specified:
  • MaxIterations 30maximum number of iterations to be performed
    Method "Gaussian"type of noise to be removed
  • Possible Method settings include: »
  • "Gaussian"additive Gaussian, uniform and other types of noise
    "Laplacian"salt-and-pepper or impulse noise
    "Poisson"multiplicative noise, as in low-light conditions


open allclose all

Basic Examples  (3)

Denoise a grayscale image:

Filter a 3D image:

Total variation filtering on noisy data:

Scope  (8)

Data  (5)

Filter a 2D array:

Filter a TimeSeries:

Filter an audio signal:

Denoise an image:

TotalVariationFilter works with numerical sparse arrays:

Parameters  (3)

The default regularization parameter value, assuming additive Gaussian noise, is 0.1:

Use a custom regularization value:

The default regularization value for Laplacian noise is 0.8:

Use a large custom value:

Use different regularization parameters:

Options  (4)

Method  (2)

Salt-and-pepper noise is best removed using the Laplacian method:

Use the Poisson method to remove noise from an image captured with low light:

MaxIterations  (2)

Filtering of a 1D array using different values of MaxIterations:

Denoise a grayscale image:

Use a larger number of iterations:

Applications  (5)

Denoise a color image:

Use the Poisson method to remove noise from an image captured with low light:

Remove Gaussian color noise from an image:

Use a TotalVariationFilter to remove smaller stars from an astronomical image:

Unsharp masking using TotalVariationFilter:

Wolfram Research (2010), TotalVariationFilter, Wolfram Language function, (updated 2018).


Wolfram Research (2010), TotalVariationFilter, Wolfram Language function, (updated 2018).


Wolfram Language. 2010. "TotalVariationFilter." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2018.


Wolfram Language. (2010). TotalVariationFilter. Wolfram Language & System Documentation Center. Retrieved from


@misc{reference.wolfram_2024_totalvariationfilter, author="Wolfram Research", title="{TotalVariationFilter}", year="2018", howpublished="\url{}", note=[Accessed: 22-July-2024 ]}


@online{reference.wolfram_2024_totalvariationfilter, organization={Wolfram Research}, title={TotalVariationFilter}, year={2018}, url={}, note=[Accessed: 22-July-2024 ]}