Shortcuts

Total Variation (TV)¶

Module Interface¶

class torchmetrics.TotalVariation(reduction='sum', **kwargs)[source]

Computes Total Variation loss (TV).

As input to forward and update the metric accepts the following input

• img (Tensor): A tensor of shape (N, C, H, W) consisting of images

As output of forward and compute the metric returns the following output

• sdi (Tensor): if reduction!='none' returns float scalar tensor with average TV value over sample else returns tensor of shape (N,) with TV values per sample

Parameters
• reduction (Literal[‘mean’, ‘sum’, ‘none’, None]) –

a method to reduce metric score over samples

• 'mean': takes the mean over samples

• 'sum': takes the sum over samples

• None or 'none': return the score per sample

Raises

ValueError – If reduction is not one of 'sum', 'mean', 'none' or None

Example

>>> import torch
>>> from torchmetrics import TotalVariation
>>> _ = torch.manual_seed(42)
>>> tv = TotalVariation()
>>> img = torch.rand(5, 3, 28, 28)
>>> tv(img)
tensor(7546.8018)

Initializes internal Module state, shared by both nn.Module and ScriptModule.

Functional Interface¶

torchmetrics.functional.total_variation(img, reduction='sum')[source]

Computes total variation loss.

Parameters
• img (Tensor) – A Tensor of shape (N, C, H, W) consisting of images

• reduction (Literal[‘mean’, ‘sum’, ‘none’, None]) –

a method to reduce metric score over samples.

• 'mean': takes the mean over samples

• 'sum': takes the sum over samples

• None or 'none': return the score per sample

Return type

Tensor

Returns

A loss scalar value containing the total variation

Raises
• ValueError – If reduction is not one of 'sum', 'mean', 'none' or None

• RuntimeError – If img is not 4D tensor

Example

>>> import torch
>>> from torchmetrics.functional import total_variation
>>> _ = torch.manual_seed(42)
>>> img = torch.rand(5, 3, 28, 28)
>>> total_variation(img)
tensor(7546.8018)

Built with Sphinx using a theme provided by Read the Docs.
Versions
latest
stable
v0.11.2
v0.11.1
v0.11.0
v0.10.3
v0.10.2
v0.10.1
v0.10.0
v0.9.3
v0.9.2
v0.9.1
v0.9.0
v0.8.2
v0.8.1
v0.8.0
v0.7.3
v0.7.2
v0.7.1
v0.7.0
v0.6.2
v0.6.1
v0.6.0
v0.5.1
v0.5.0
v0.4.1
v0.4.0
v0.3.2
v0.3.1
v0.3.0
v0.2.0
v0.1.0