deepmr.optim.pgd_solve#
- deepmr.optim.pgd_solve = <function pgd_solve>#
Solve inverse problem using Proximal Gradient Method.
- Parameters:
input (np.ndarray | torch.Tensor) – Signal to be reconstructed. Assume it is the adjoint AH of measurement operator A applied to the measured data y (i.e., input = AHy).
step (float) – Gradient step size; should be <= 1 / max(eig(AHA)).
AHA (Callable | torch.Tensor | np.ndarray) – Normal operator AHA = AH * A.
D (Callable) – Signal denoiser for plug-n-play restoration.
niter (int, optional) – Number of iterations. The default is
10
.accelerate (bool, optional) – Toggle Nesterov acceleration (
True
, i.e., FISTA) or not (False
, ISTA). The default isTrue
.device (str, optional) – Computational device. The default is
None
(infer from input).tol (float, optional) – Stopping condition. The default is
None
(run until niter).
- Returns:
output – Reconstructed signal.
- Return type:
np.ndarray | torch.Tensor