L1#

class deepinv.optim.L1[source]#

Bases: DataFidelity

\(\ell_1\) data fidelity term.

In this case, the data fidelity term is defined as

\[f(x) = \|Ax-y\|_1.\]
prox(x, y, physics, *args, gamma=1.0, stepsize=None, crit_conv=1e-05, max_iter=100, **kwargs)[source]#

Proximal operator of the \(\ell_1\) norm composed with A, i.e.

\[\operatorname{prox}_{\gamma \ell_1}(x) = \underset{u}{\text{argmin}} \,\, \gamma \|Au-y\|_1+\frac{1}{2}\|u-x\|_2^2.\]

Since no closed form is available for general measurement operators, we use a dual forward-backward algorithm.

Parameters:
  • x (torch.Tensor) – Variable \(x\) at which the proximity operator is computed.

  • y (torch.Tensor) – Data \(y\) of the same dimension as \(\forw{x}\).

  • physics (deepinv.physics.Physics) – physics model.

  • stepsize (float) – step-size of the dual-forward-backward algorithm.

  • crit_conv (float) – convergence criterion of the dual-forward-backward algorithm.

  • max_iter (int) – maximum number of iterations of the dual-forward-backward algorithm.

Returns:

(torch.Tensor) projection on the \(\ell_2\) ball of radius radius and centered in y.