spyrit.core.prep.RescaleEstim

class spyrit.core.prep.RescaleEstim(meas_op: Linear, **pinv_kwargs)[source]

Bases: Module

Rescale measurements as

\[m = \frac{y}{\alpha},\]

where \(y\) is the measurement and \(\alpha\) represents some gain/intensity that needs to be estimated from \(y\).

Args:

meas_op (spyrit.core.meas.Linear): Measurement operator used to get the measurements \(y\). It should not be a split measurement operator.

**pinv_kwargs: Additional keyword arguments to pass to the pseudo-inverse computation.

Attributes:

self.alpha (torch.tensor): Estimated gain/intensity.

self.meas_op (spyrit.core.meas.Linear): Measurement operator used to simulate the measurements.

self.estim_mode (str): Set to “pinv”.

self.pinv_kwargs (dict): Additional keyword arguments to pass to the pseudo-inverse initialization.

self.pinv (spyrit.core.inverse.PseudoInverse): Pseudo-inverse operator.

Methods

estim_alpha(y)

Estimate gain from pseudo-inverse.

forward(y)

Rescale measurements as

pinv_estim(y)

Estimate gain from pseudo-inverse.