Comparison of Sinogram-based Iterative Reconstruction with Compressed Sensing Techniques in X-ray CT
Abstract
Performing X-ray computed tomography (CT) examinations with less radiation has recently received increasing interest: in medical imaging this means less (potentially harmful) radiation for the patient; in non-destructive testing of materials/objects such as testing jet engines, the redution of the number of projection angles (which for large objects is in general high) leads to a substantial decreasing of the experiment time. In the experiment, less radiation is usually achieved by either (1) reducing the radiation dose used at each projection angle or (2) using sparse view X-ray CT, which means significantly less projection angles are used during the examination. In this work, we study the performance of the recently proposed sinogram-based iterative reconstruction algorithm in sparse view X-ray CT and show that it provides, in some cases, reconstruction accuracy better than that obtained by some of the Total Variation regularization techniques. The provided accuracy is obtained with computation times comparable to other techniques. An important feature of the sinogram-based iterative reconstruction algorithm is that it has no parameters to be set.
1 Introduction
Iterative reconstruction algorithms [1] have been extensively applied recently for the special case of sparse view X-ray computed tomography (CT) [1]. Iterative algorithms have been used for a long time in tomography, but only during the last few years several manufacturers have made available and suggested the use of iterative techniques for medical CT imaging that simultaneously provide for good image quality with detectability of low-contrast lesions and significant dose reduction. In the special case of sparse view X-ray CT (that is, dose reduction by using significantly less projection angles, or views, during the examination) the iterative reconstruction algorithms are applied for obtaining a reconstruction of accuracy comparable with the case that uses an usual number of views.
Besides the optimization of the Algebraic Reconstruction Technique (ART), Simultaneous Algebraic Reconstruction Technique (SART), and Simultaneous Iterative Reconstruction Technique (SIRT) methods [2, 3, 4], the recent researches based on Total Variation (TV) regularization propose some of the most promising algorithms for sparse view X-ray CT [5, 6, 7, 8, 9, 10, 11, 12, 13]. However, all these papers report long computation times associated with TV regularization techniques. For example:
-
1.
In [5], computation times are reported for reconstructions of size 256 by 256 pixels and 90 views; they are between 19 and 28 seconds.
-
2.
In [11], it is stated regarding the computation time, that ”Similar to most SIR methods in CT image reconstruction (Ma et al, 2012a, Lauzier Thériault and Chen, 2013), the computational cost of the present PWLS-TGV method is very large because of the projection and back-projection operations using a huge system matrix. However, with the development of fast computers and dedicated hardware (Xu and Mueller, 2005, Knaup et al, 2006), iterative reconstruction algorithms, including the present PWLS-TGV method, may be used in clinical CT reconstruction in the near future.” The authors did not report any computation time.
-
3.
In [12] the authors have proposed TV regularization techniques that are run with 100 iterations, and each iteration takes 44.33 seconds, for a reconstruction of size 512 by 512.
Besides this, most papers developing TV regularization techniques report problems with low contrast structures that tend to be smoothed out by the TV regularization, posing a great challenge for these techniques.
In [14], which is representative of another set of works based on POCS (projection onto convex sets) for sparse view X-ray CT, the authors report a number of comparisons but do not report any computation time; instead it is said: ”computation time for any reconstruction algorithm and, in particular, for iterative algorithms can be of concern. Accelerated computation can be achieved by streamlining/parallelizing the algorithms and/or by exploiting the available, or rapidly available, high-performance commodity computational hardware such as multi-core CPU and graphic processing units”.
Other important works include: the works of Fessler et. al [15, 16, 17] that propose some methods for accelerating the iterative reconstructions with focus on statistical iterative reconstruction; the works of Bouman et. al. [18, 19] that propose fast methods for model-driven X-ray CT; and the works of Unser et. al that propose second-order extensions of TV regularization [20].
In [21] the performance of the recently proposed sinogram-based iterative reconstruction algorithm was briefly studied on a Shepp-Logan phantom. In this work, we study in more detail the performance of proposed sinogram-based iterative reconstruction algorithm, with focus on the case of sparse view X-ray CT.
It is shown that the sinogram-based iterative reconstruction algorithm provides good reconstruction accuracy (in some cases obtaining accuracy slightly better than that obtained by some variants of the TV regularization technique), with computation times comparable with those reported for the TV regularization techniques. The examples studied are: the NCAT thoracic cross-section studied also in other recent works, and then an image showing a pipe welding process cross-section.
2 Sinogram-based iterative reconstruction
2.1 Review
First, we review the sinogram-based iterative reconstruction (SbIR) algorithm [21]. Let be the density matrix (of size lines by columns) to be reconstructed from sinogram , the number of detectors and the number of views. If is and is , then the system matrix is of size lines by columns and the sinogram is a vector of size . If we write in vector format then is a vector of size ; the reconstruction problem is to find such that
There are two steps in the reconstruction process of the SbIR algorithm:
- initialization:
-
first we initialize the reconstruction with an approximation derived from the sinogram as follows:
-
1.1
( )
-
1.2
-
1.1
- iterations:
-
at each iteration, we update the reconstruction based on the difference between the sinogram and the current situation in :
-
2.1
-
2.2
diag() ( )
-
2.3
-
2.1
where:
-
•
is the transpose of ,
-
•
is the element-by-element division,
-
•
is the situation in the reconstruction at the current iteration, and is a vector of size as the sinogram ,
-
•
is of size ,
-
•
is of size ;
-
•
each element of corresponds to a square of size 1.0 by 1.0 in the experiment;
-
•
we also consider that has been obtained as area integrals, at a Detector,View pair meaning that each of the elements that are traversed is traversed for an area 1.0; we could consider line integrals as well, but using area integrals seem to help in the understanding of the algorithm.
The algorithm is very natural and its workings can be explained as follows; first let’s explain the initialization (when looking at the steps 1.1, 1.2 above, look only at the first element of which is ):
-
•
in step 1.1, each of the elements of is the average sinogram measurement per unit of area traversed by the X-ray beam at the respective Detector,View pair; thus each element of can be viewed as an approximation of each of the elements of that are traversed by the X-ray beam at the respective Detector,View pair;
-
•
so, in step 1.1 the first element of ( ) is the sum of all approximations of (from all Detector,View pairs in which is traversed);
-
•
in step 1.2 is divided by , where is the sum of all non-zero elements in the first line of ; this is natural, because each of the approximations of that come from step 1.1 are for unit of area 1.0, but for some Detector,View pairs in which is traversed it might be traversed only for some portion of its total area 1.0.
Given this explanation of the initialization step, a better writing of the algorithm would be:
- initialization:
-
first we initialize the reconstruction with an approximation derived from the sinogram as follows:
-
1.1
( )
-
1.1
- iterations:
-
at each iteration, we update the reconstruction based on the difference between the sinogram and the current situation in :
-
2.1
-
2.2
diag() ( )
-
2.1
where:
-
•
is a matrix of size lines by columns, whose -th line is obtained from the -th line of by dividing each element of the -th line of to .
Given this re-writing of the algorithm, the workings can be explained as follows (again look only at ):
-
•
in step 1.1, is obtained (as a weighted sum) by multiplying the first line of with the vector of approximations ; precisely, consider that there are () non-zero elements in the first line of , let these be , ,…, where ; each of , ,…, corresponds to one of those Detector,View pairs that traverse , and represents the fraction (weight) from the total sum traversed ; so we have
-
•
thus if in step 1.1 above is the vector of approximations , then we have
which means that is obtained as a weighted sum of approximations;
-
•
the same explanation goes for the steps 2.1 and 2.2 from each iteration: in 2.1, is the situation of the current iteration, and thus the vector is the vector of correction coefficients;
-
•
to see how is computed in 2.2, observe that it is computed by multiplying the first line of the matrix diag() with the vector of corrections ; thus if is the vector of corrections , then
which means that at each iteration is obtained as a weighted sum of approximations (the weights being again , ,…, ).
2.2 A simple example
Let (so ) and
the matrix to be reconstructed, written in vector format as
We consider that the sinogram is obtained without any noise using the views V1 and V2, the view V1 at 0 degrees and the view V2 at a rotation around the object of 90 degrees, as in Figure 1; if each of the 4 squares of is of size 1.0 by 1.0, and the distance from X-ray source S to center of rotation (i.e. the center of reconstruction ) is 2.0, and the distance from center of rotation to the detectors’ line is also 2.0, and the detectors’ line is of length 4.0, this means that:
-
•
in view V1, and are each traversed by a full area of 1.0, whereas and are each traversed by an area of 0.75;
-
•
in view V2, and are each traversed by a full area of 1.0, whereas and are each traversed by an area of 0.75.
Thus
the first line of corresponds to D1,V1, the second line to D2,V1, the third line to D1,V2, and the fourth line to D2,V2; also note that the fact that all values in are equal is particular of this example (in other geometries they could be all different).
The SbIR algorithm works as follows (look only at ):
-
•
in 1.1, is initialized by multiplying the first line of with the vector , so
note that is the average sinogram measurement per unit of area in the D1,V1 pair and is the average sinogram measurement per unit of area in the D1,V2 pair; also note that is traversed in all Detector,View pairs for a total area of 1.75 (this is ), with an area of 1.0 traversed in the D1,V1 pair and an area of 0.75 in the D1,V2 pair;
-
•
in 2.1, in the first iteration, the situation is
-
•
in 2.2, in the first iteration, is obtained by multiplying the first line of diag() with the vector :
before this first iteration the situation in corresponding to the D1,V1 pair is 3.769, this means the elements that are traversed in D1,V1 need to be corrected by multiplication with , so this is where the first approximation of comes from; before this first iteration the situation in corresponding to the D1,V2 pair is 3.514, this means the elements that are traversed in D1,V2 need to be corrected by multiplication with , so this is where the second approximation of comes from;
-
•
as we can observe, converges to its real value 1.0;

3 Performance of the SbIR algorithm, with focus on sparse view X-ray CT
We examine the performance of the SbIR algorithm by two examples, using the following scanning geometry for a fan-beam X-ray source, with detectors aligned in line:
-
1.
the number of detectors is , the size of each detector being 1.41, so the detectors line has length 1448.15;
-
2.
the distance from the X-ray source to the center of rotation is 1024.0, and the distance from the center of rotation to the detectors’ line is also 1024.0;
-
3.
the reconstruction is of size 512 by 512 pixels, with each pixel corresponding to a physical square area of size 1.0 by 1.0;
-
4.
the number of views is covering the full circle, so the angle (in radians) between two consecutive views is .
The SbIR algorithm is compared against the TV regularization techniques GPBB, UPN and UPN0 implemented in the TVReg software package developed recently at the Technical University of Denmark (DTU):
-
1.
the Barzilai-Borwein accelerated gradient projection first-order method (GPBB);
-
2.
implementation of an optimal first-order method for strongly convex functions, due to Nesterov, tailored to large-scale total variation regularization (UPN);
-
3.
a first-order method by Nesterov, Beck, and Teboulle (UPN0) for the case of a zero strong convexity parameter.
The TVReg software package is written in C language, and is available at the Github software repository [24] and described in [25]. The TVReg package solves the problem
where represents the reconstructed image, the sinogram data, and the forward operator (the system matrix). is the Total Variation of the image, and is a regularization parameter set by the user. Other parameter (besides ) that can be set by the user is the noise parameter that is used to add Gaussian noise to the synthetically constructed sinogram in the case of simulated experiments.
Regarding the SbIR algorithm, the synthetically simulated sinograms in the two examples that we show are calculated using line integrals, as in most works in sparse view X-ray CT.
3.1 Example 1
In the first example we consider the NCAT phantom studied also in other works [6] and shown in Fig. 2 (a) (this phantom simulates a thoracic cross-section); in this example we add noise to the sinogram by considering for both SbIR and the GPBB, UPN, UPN0 algorithms. Also the number of iterations is 512 for all algorithms (SbIR, GPBB, UPN, UPN0).
The reconstruction with the SbIR algorithm is shown in Fig. 2 (c), where in Fig. 2 (b) is shown the reconstruction obtained after the initialization step is applied. The reconstructions with the GPBB, UPN, UPN0 algorithms are shown in Fig. 3 when the regularization parameter is 0.5, 5.0, or 50.0. In this example, the best reconstructions obtained with the GPBB, UPN, UPN0 algorithms are obtained when (this means the middle row (b), (e) and (h) in Fig. 3).
We calculated the SSIM (Structural Similarity Index), PSNR (Peak Signal-to-Noise Ratio), MSE (Mean Square Error) for all the reconstructions: high values of SSIM and PSNR means higher accuracy while high values of MSE means lower accuracy; for the SbIR reconstruction they are SSIM:0.9018, PSNR: 25.6149, MSE: 0.0027; for GPBB, UPN, UPN0 they are listed in Table 1; as we can see the only case when the reconstruction with the SbIR algorithm is better is the one shown in Fig. 3 (c).


GPBB | UPN | UPN0 | |
---|---|---|---|
SSIM: 0.9427, PSNR: 37.1377, MSE: 1.9330e-04 | SSIM: 0.9444, PSNR: 38.4690, MSE: 1.4226e-04 | SSIM: 0.9447, PSNR: 38.4914, MSE: 1.4154e-04 | |
SSIM: 0.9791, PSNR: 35.1269, MSE: 3.0712e-04 | SSIM: 0.9920, PSNR: 41.8835, MSE: 6.4812e-05 | SSIM: 0.9919, PSNR: 41.9283, MSE: 6.4146e-05 | |
SSIM: 0.8869, PSNR: 27.3581, MSE: 0.0018 | SSIM: 0.9690, PSNR: 32.1766, MSE: 6.0582e-04 | SSIM: 0.9725, PSNR: 32.6921, MSE: 5.3801e-04 |
3.2 Example 2
A problem with the GPBB, UPN, UPN0 algorithms is that for a low value of the reconstruction is of low quality, whereas for a high value of the reconstruction tends to become ”foggy” and with visible patches; in example 1, the value seems to be a good choice.
We applied the same experimental setup but this time with (so with lower level of noise) to the abdominal phantom shown in Fig. 4, proposed by the Institute of Medical Physics, Friedrich-Alexander-University Erlangen-Nurnberg, Erlangen [23]; the reconstruction with UPN for this phantom was also best for as in the case of example 1, whereas GPBB and UPN0 were best for in this case. The conclusion would be that works best in general for the UPN algorithm, for reconstructions of size 512 by 512 pixels; for GPBB and UPN0, the choice of is more unclear.

In this second example we show that setting could lead to reconstruction obtained by the UPN algorithm of lower quality than the one obtained with the SbIR algorithm. Consider the image shown in Fig. 5 (a), which corresponds to a cross-section from a pipe welding process, image acquired during 2015 at the Institute of Non-destructive Testing, Tomsk Polytechnic University, Tomsk (this is an image from a non-destructive material testing experiment instead of medical imaging, but it is equally important since reducing the number of views yields an overall reduction of the experiment time); in this example, we add noise to the sinogram by considering for both SbIR and the GPBB, UPN, UPN0 algorithms. Also the number of iterations is 512 for all algorithms (SbIR, GPBB, UPN, UPN0).
The reconstruction with the SbIR algorithm is shown in Fig. 5 (c), where in Fig. 5 (b) is shown the reconstruction obtained after the initialization step is applied. The reconstructions with the GPBB, UPN, UPN0 algorithms are shown in Fig. 6 when the regularization parameter is 0.5, 5.0, or 50.0. The best reconstructions obtained with the GPBB, UPN, UPN0 algorithms are obtained when (this means the first row (a), (d) and (g) in Fig. 6).
We calculated the SSIM, PSNR, MSE for all the reconstructions; for the SbIR reconstruction they are SSIM: 0.8820, PSNR: 35.5374, MSE: 2.7942e-04; for GPBB, UPN, UPN0 they are listed in Table 2; as we can see the reconstruction with the SbIR algorithm is better than all 6 reconstructions from Fig. 6 (b), (c), (e), (f), (h), (i), but worse than the reconstructions corresponding to shown in Fig. 6 (a), (d), (g). Thus, this second example shows that even if in general the TV regularization techniques converge faster than the SbIR algorithm, there are cases as the one shown here where the SbIR algorithm provides a better reconstruction. Also, the SbIR algorithm has no parameters to be set as in the case of the TV regularization techniques.


GPBB | UPN | UPN0 | |
---|---|---|---|
SSIM: 0.9077, PSNR: 37.4524, MSE: 1.7979e-04 | SSIM: 0.9075, PSNR: 37.5485, MSE: 1.7585e-04 | SSIM: 0.9066, PSNR: 37.5471, MSE: 1.7591e-04 | |
SSIM: 0.8760, PSNR: 34.5804, MSE: 3.4831e-04 | SSIM: 0.8790, PSNR: 35.1570, MSE: 3.0500e-04 | SSIM: 0.8790, PSNR: 35.1281, MSE: 3.0703e-04 | |
SSIM: 0.7947, PSNR: 28.4132, MSE: 0.0014 | SSIM: 0.8372, PSNR: 31.7535, MSE: 6.6780e-04 | SSIM: 0.8382, PSNR: 31.8891, MSE: 6.4728e-04 |
3.3 Computation times achieved by the SbIR, GPBB, UPN, UPN0 algorithms
The reconstructions have been obtained on a conventional PC with an i7-6500u @ 2.5 GHz 4-cores processor, and 8 GB of memory; only one core out of the four available has been used for each of the algorithms SbIR, GPBB, UPN, UPN0. The SbIR algorithm was implemented in C language in Visual C++ 2015; the GPBB, UPN, UPN0 algorithms of the TVReg package are implemented in C language. For the reconstructions shown in the two examples (all with 512 iterations) the computation time was around 150 seconds for the SbIR algorithm and between around 100 and 250 seconds for the GPBB, UPN, UPN0 algorithms. In [22], the complete code of our implementation in Visual C++ 2015 (using Win32 application, without any MFC or ATL code) of the SbIR algorithm can be found. In the code:
-
1.
ID_X_ITERATIVEMETHOD1 is the id of the ’Iterative Method 1’ menu option that runs the SbIR algorithm, with the geometry defined by the global variables.
3.4 Convergence of the SbIR algorithm
The convergence of the SbIR algorithm, after a number of studies we have done, seems to behave as follows: first the SbIR algorithm spends a number (that depends on the specific input and noise in the sinogram) of iterations to stabilize within a certain interval, after which the rest of the iterations are spent to converge to the optimal solution. For the second example (the pipe welding process image) that is run with 512 iterations, the convergence behavior is shown in Fig. 7: the red graph shows the sum
of all sinogram values, which for the second example it is ; and in blue graph it is plotted the sum
of all situation values, at each of the 512 iterations. We observe that in this plot the SbIR algorithm spends around 100 iterations to stabilize within a certain interval, and after that starts to converge to an approximate solution.
We have tried other initial solutions for the SbIR algorithm (like the solution given by the Filtered Back-Projection algorithm) to see if with other initializations it converges faster, but it seems that its initialization as shown in this work works best.

4 Conclusions
From the results reported, the SbIR algorithm clearly proves to be a good option for obtaining good reconstruction accuracy in the special case of sparse view X-ray CT, in some cases with accuracy slightly better than some variants of the TV regularization technique. Comparing to the TV regularization techniques the SbIR algorithm has no parameters. One important work that needs to be done is proving the convergence of the SbIR algorithm mathematically. Other important further works include: (1) trying to find better initial solutions in order to speed up its convergence; and (2) development of optimal parallelizations using either multi-core processors, or Graphical Processing Units (GPUs), or both (hybrid CPU-GPU parallelizations) .
References
- [1] Beister M., Kolditz D. and Kalender W.A., Iterative reconstruction methods in X-ray CT, Physica Medica: European Journal of Medical Physics, vol. 28, p. 94-108 (2012)
- [2] Gordon R., Bender R. and Herman G.T., Algebraic reconstruction techniques (ART) for three-dimensional electron microscopy and x-ray photography, Journal of Theoretical Biology, vol. 29, p. 471-482 (1970)
- [3] Andersen A.H. and Kak A.K., Simultaneous algebraic reconstruction technique (SART): a superior implementation of the ART algorithm, Ultrasonic Imaging, vol. 6, p. 81-94 (1984)
- [4] Gilbert P., Iterative methods for the three-dimensional reconstruction of an object from projections, Journal of Theoretical Biology, vol. 36, p. 105-117 (1972)
- [5] Zhang H., Wang L., Yan B., Li L., Cai A. and Hu G., Constrained total generalized p-variation minimization for few-view X-ray computed tomography image reconstruction, PLoS One, vol. 11, paper e0149899, 28 pages (2016)
- [6] Tian Z., Jia X., Yuan K.H., Pan T. and Jiang S.B., Low-dose CT reconstruction via edge-preserving total variation regularization, Physics in Medicine and Biology, vol. 56, p. 5949–5967 (2011)
- [7] Liu Y., Ma J.H., Fan Y. and Liang Z.R., Adaptive-weighted total variation minimization for sparse data toward low-dose X-ray computed tomography image reconstruction, Physics in Medicine and Biology, vol. 57, p. 7923-7956 (2012)
- [8] Cai A., Wang L., Zhang H., Yan B., Li L., Xi X. and Li J., Edge guided image reconstruction in linear scan CT by weighted alternating direction TV minimization, Journal of X-Ray Science and Technology, vol. 22, p. 335-349 (2014)
- [9] Chang M., Li L., Chen Z., Xiao Y., Zhang L. and Wang G., A few-view reweighted sparsity hunting (FRESH) method for CT image reconstruction, Journal of X-Ray Science and Technology, vol. 21, p. 161-176 (2013)
- [10] Yang J.S., Yu H.Y., Jiang M. and Wang G., High-order total variation minimization for interior tomography, Inverse Problems, vol. 26, paper 035013 (2010)
- [11] Niu S., Gao Y., Bian Z., Huang J., Chen W., Yu G., Liang Z. and Ma J., Sparse-view X-ray CT reconstruction via total generalized variation regularization, Physics in Medicine and Biology, vol. 59, p. 2997-3017 (2014)
- [12] Qi H., Chen Z., Guo J. and Zhou L., Sparse-view computed tomography image reconstruction via a combination of L1 and SL0 regularization, Bio-Medical Materials and Engineering, vol. 26, p. S1389-S1398 (2015)
- [13] Li M., Zhang C., Peng C., Guan Y., Xu P., Sun M. and Zheng J., Smoothed l0 norm regularization for sparse-view X-ray CT reconstruction, Biomedical Research International, vol. 2016, paper 2180457, 12 pages (2016)
- [14] Han X., Bian J., Eaker D.R., Kline T.L., Sidky E.Y, Ritman E.L. and Pan X.: Algorithm-enabled low-dose micro-CT imaging, IEEE Transactions on Medical Imaging, vol. 30, p. 606-620 (2011)
- [15] Ramani S. and Fessler J.A., A splitting-based iterative algorithm for accelerated statistical X-ray CT reconstruction, IEEE Transactions on Medical Imaging, vol. 31, p. 677-688 (2012)
- [16] Kim J.K., Fessler J.A. and Zhang Z., Forward-projection architecture for fast iterative image reconstruction in X-ray CT, IEEE Transactions on Signal Processing, vol. 60, p. 5508-5518 (2012)
- [17] Kim D., Pal D. and Thibault J.-B., Accelerating ordered subsets image reconstruction for X-ray CT using spatially nonuniform optimization transfer, IEEE Transactions on Medical Imaging, vol. 32, p. 1965-1978 (2013)
- [18] Yu Z., Thibault J.-B., Bouman C.A., Sauer K.D. and Hsieh J., Fast model-based X-ray CT reconstruction using spatially Non-homogeneous ICD optimization, IEEE Transactions on Image Processing, vol. 20, p. 161-175 (2011)
- [19] Sabne A., Wang X., Kisner S., Bouman C., Raghunathan A. and Midkiff S., Model-based iterative CT image reconstruction on GPUs, 21st ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming (PPoPP ’17) (2017)
- [20] Dogan Z., Lefkimmiatis S., Bourquard A. and Unser M., A second-order extension of TV regularization for image deblurring, Proceedings of the IEEE International Conference on Image Processing, Brussels, p. 713-716 (2011)
- [21] Trinca D., Zhong Y., Wang Y.-Z., Mamyrbayev T. and Libin E., Sinogram-based adaptive iterative reconstruction for sparse view X-ray computed tomography, Proceedings of SPIE/COS Photonics Asia, vol. 10020, paper 100201G, 6 pages (2016)
- [22] Trinca D., Implementation in Visual C++ 2015 of the sinogram-based iterative reconstruction, available at the Github software repository https://github.com/dntrinca
- [23] Phantom database, Institute of Medical Physics, Friedrich-Alexander-University Erlangen-Nurnberg, Erlangen, Germany; http://www.imp.uni-erlangen.de/phantoms/index.htm
- [24] TVReg: software package for 3D Total Variation regularization, available at the Github software repository https://github.com/jakobsj/TVReg
- [25] Jensen T.L., Jørgensen J.H., Hansen P.C. and Jensen S.H., Implementation of an optimal first-order method for strongly convex total variation regularization, BIT Numerical Mathematics, 52 (2012), p. 329-356, doi:10.1007/s10543-011-0359-8