azula.guidance.diffpir

Diffusion Plug-and-Play Image Restoration (DiffPIR) internals.

References

Denoising Diffusion Models for Plug-and-Play Image Restoration (Zhu et al., 2023)

Classes

DiffPIRDenoiser

Creates a DiffPIR denoiser module.

Descriptions

class azula.guidance.diffpir.DiffPIRDenoiser(denoiser, y, A, var_y, lmbda=10.0, solver='gmres', iterations=1)

Creates a DiffPIR denoiser module.

Parameters:
  • denoiser (GaussianDenoiser) – A Gaussian denoiser.

  • y (Tensor) – An observation \(y \sim \mathcal{N}(A x, \Sigma_y)\), with shape \((*, D)\).

  • A (Callable[[Tensor], Tensor]) – The forward operator \(x \mapsto A x\).

  • var_y (Tensor) – The noise variance \(\Sigma_y\).

  • lmbda (float) – The regularization strength \(\lambda \in \mathbb{R}_+\).

  • solver (str) – The linear solver name ("cg" or "gmres").

  • iterations (int) – The number of solver iterations.