|
4 | 4 | import scipy |
5 | 5 |
|
6 | 6 |
|
7 | | -def deconv_admm(g, psf, mu, is_canceled=None): |
| 7 | +def deconv_admm(g, psf, mu, is_canceled=None, max_iter=50): |
8 | 8 | # Fast ADMM_TV/L2 algorithm based on "An Augmented Lagrangian Method for Total Variation Video Restoration", |
9 | 9 | # Stanley H. Chan, Student Member, IEEE, Ramsin Khoshabeh, Student Member, IEEE, Kristofor B. Gibson, Student Member, IEEE, Philip E. Gill, and Truong Q. Nguyen, Fellow, IEEE |
10 | 10 | # IEEE TRANSACTIONS ON IMAGE PROCESSING, VOL. 20, NO. 11, NOVEMBER 2011 |
@@ -32,7 +32,6 @@ def deconv_admm(g, psf, mu, is_canceled=None): |
32 | 32 | cov = 1 |
33 | 33 | tol = 1e-4 |
34 | 34 | itr = 0 |
35 | | - max_iter = 50 |
36 | 35 | HtG = np.conj(H) * G |
37 | 36 | vx, vy = der_im(f) |
38 | 37 | rnorm = np.sum(np.sqrt(vx.ravel() ** 2 + vy.ravel() ** 2)) |
@@ -656,7 +655,9 @@ def deconv( |
656 | 655 | if deconv_med == "ADMM_TV": |
657 | 656 | if scale[0] * scale[1] != 1: |
658 | 657 | print("ADMM_TV does not support upscaling; forcing scale = [1,1].") |
659 | | - out, original, loss, rdiff = deconv_admm(im, psf, mu, is_canceled=is_canceled) |
| 658 | + out, original, loss, rdiff = deconv_admm( |
| 659 | + im, psf, mu, is_canceled=is_canceled, max_iter=max_iter |
| 660 | + ) |
660 | 661 | elif deconv_med == "APG_TV": |
661 | 662 | out, original, loss, rdiff = deconv_apg_tv( |
662 | 663 | im, psf, scale, mu, conv_med=conv_med, max_iter=max_iter, |
|
0 commit comments