bartorch.prox.tgv

Contents

bartorch.prox.tgv#

bartorch.prox.tgv(input, lamda, axes, *, alpha=None, tvscales=None)#

Second-order total generalized variation denoising along axes.

Approximates argmin_{x,z} 0.5 ||x - y||_2^2 + lamda * (alpha1 ||D x - z||_1 + alpha0 ||E z||_1), where D is the periodic gradient along axes, z a vector field and E z = (D z + (D z)^T) / 2 its symmetrized gradient; each ||.||_1 sums over voxels an l2 norm over derivative directions. BART runs 100 ADMM iterations with rho = 0.1. Only x is returned; the mean of input is preserved.

Parameters:
  • input (torch.Tensor) – At most 15 axes.

  • alpha ((float, float), optional) – (alpha1, alpha0) (--alpha); BART’s default is (1, sqrt(3)).

  • tvscales (tuple of float, optional) – Nonzero weight on the derivative along each axis in axes, in the same order, applied in both D and E (--tvscales).