IHT TV¶
Iterative hard thresholding with variable encoding model, uses TV.
-
mr_utils.cs.thresholding.iht_tv.
IHT_TV
(y, forward_fun, inverse_fun, k, mu=1, tol=1e-08, do_reordering=False, x=None, ignore_residual=False, disp=False, maxiter=500)[source]¶ IHT for generic encoding model and TV constraint.
Parameters: - y (array_like) – Measured data, i.e., y = Ax.
- forward_fun (callable) – A, the forward transformation function.
- inverse_fun (callable) – A^H, the inverse transformation function.
- k (int) – Sparsity measure (number of nonzero coefficients expected).
- mu (float, optional) – Step size.
- tol (float, optional) – Stop when stopping criteria meets this threshold.
- do_reordering (bool, optional) – Reorder column-stacked true image.
- x (array_like, optional) – The true image we are trying to reconstruct.
- ignore_residual (bool, optional) – Whether or not to break out of loop if resid increases.
- disp (bool, optional) – Whether or not to display iteration info.
- maxiter (int, optional) – Maximum number of iterations.
Returns: x_hat – Estimate of x.
Return type: array_like
Notes
Solves the problem:
\[\min_x || y - Ax ||^2_2 \text{ s.t. } || \text{TV}(x) ||_0 \leq k\]If x=None, then MSE will not be calculated.