ArtifactRemoval

class deepinv.models.ArtifactRemoval(backbone_net, pinv=False, ckpt_path=None, device=None)[source]

Bases: Module

Artifact removal architecture \(\phi(A^{\top}y)\).

The architecture is inspired by the FBPConvNet approach of https://arxiv.org/pdf/1611.03679 where a deep network \(\phi\) is used to improve the linear reconstruction \(A^{\top}y\).

Parameters:
  • backbone_net (torch.nn.Module) – Base network \(\phi\), can be pretrained or not.

  • pinv (bool) – If True uses pseudo-inverse \(A^{\dagger}y\) instead of the default transpose.

  • device (torch.device) – cpu or gpu.

forward(y, physics, **kwargs)[source]

Reconstructs a signal estimate from measurements y

Parameters:

Examples using ArtifactRemoval:

Training a reconstruction network.

Training a reconstruction network.

Self-supervised learning with measurement splitting

Self-supervised learning with measurement splitting

Self-supervised denoising with the UNSURE loss.

Self-supervised denoising with the UNSURE loss.

Self-supervised denoising with the SURE loss.

Self-supervised denoising with the SURE loss.

Self-supervised denoising with the Neighbor2Neighbor loss.

Self-supervised denoising with the Neighbor2Neighbor loss.

Self-supervised learning from incomplete measurements of multiple operators.

Self-supervised learning from incomplete measurements of multiple operators.