Organisation of the package
SPyRiT’s typical pipeline.
SPyRiT allows to simulate measurements and perform image reconstruction using
a full network. A full network includes a measurement operator
\(A\), a noise operator \(\mathcal{N}\), a preprocessing
operator \(B\), a reconstruction operator \(\mathcal{R}\),
and a learnable neural network \(\mathcal{G}_{\theta}\). All operators
inherit from torch.nn.Module.
Submodules
SPyRiT has a modular structure with the core functionality organised in the 8 submodules of
spyrit.core.
spyrit.core.measprovides measurement operators that compute linear measurements corresponding to \(A\) in Eq. (1). It also provides the adjoint and the pseudoinverse of \(A\), which are the basis of any reconstruction algorithm.spyrit.core.noiseprovides noise operators corresponding to \(\mathcal{N}\) in Eq. (1).spyrit.core.prepprovides preprocessing operators for the operator \(B\) introduced in Eq. (2).spyrit.core.nnetprovides known neural networks corresponding to \(\mathcal{G}\) in Eq. (4) or Eq. (5).spyrit.core.reconreturns the reconstruction operator corresponding to \(\mathcal{R}\).spyrit.core.trainprovides the functionality to solve the minimisation problem of Eq. (3).spyrit.core.warpcontains the operators used for dynamic acquisitions.spyrit.core.torchcontains utility functions.
In addition, spyrit.misc contains various utility functions for Numpy / PyTorch that can be used independently of the core functions.
Finally, spyrit.external provides access to DR-UNet.