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 reduction 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 is simpler and without the many parameters specific to other techniques.
Introduction
Iterative reconstruction algorithms [1, 2] 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 [3–5], the recent researches based on Total Variation (TV) regularization propose some of the most promising algorithms for sparse view X-ray CT [6–14]. However, all these papers report long computation times associated with TV regularization techniques. For example: In [6], computation times are reported for reconstructions of size 256 by 256 pixels and 90 views; they are between 19 and 28 seconds. In [12], 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. In [13] 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 [15], 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. [16–18] that propose some methods for accelerating the iterative reconstructions with focus on statistical iterative reconstruction; the works of Bouman et al. [19, 20] 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 [21].
In [22] the performance of the recently proposed sinogram-based iterative reconstruction algorithm [23] 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. The important feature of the proposed algorithm is its simplicity in comparison with other techniques, in particular being much simpler and without the many parameters specific to the TV regularization techniques.
Sinogram-based iterative reconstruction
Review
First, we review the sinogram-based iterative reconstruction (SbIR) algorithm [22]. Let μ1 be the density matrix (of size n x lines by n y columns) to be reconstructed from sinogram y, n d the number of detectors and n v the number of views. If M is n d * n v and N is n x * n y , then the system matrix A is of size M lines by N columns and the sinogram y is a vector of size M. If we write μ1 in vector format then μ1 is a vector of size N; the reconstruction problem is to find μ1 such that
There are two steps in the reconstruction process of the SbIR algorithm:
μ1 ← A′ * (y./ α) μ1 ← μ1./ β
μ2 ← diag(μ1) * A′ * (y./ μ1 ← μ2./ β
where: A′ is the transpose of A, ./ is the element-by-element division,
α = ∑
j
A [i, j] is of size M, β = ∑
i
A [i, j] is of size N; each element of μ1 corresponds to a square of size 1.0 by 1.0 in the experiment; we also consider that y 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 μ1 which is μ1 [1]): in step 1.1, each of the M elements of y./ α 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 y./ α can be viewed as an approximation of each of the elements of μ1 that are traversed by the X-ray beam at the respective Detector, View pair; so, in step 1.1 the first element of A′ * (y./ α) is the sum of all approximations of μ1 [1] (from all Detector, View pairs in which μ1 [1] is traversed); in step 1.2 μ1 [1] is divided by β [1], where β [1] is the sum of all non-zero elements in the first line of A′; this is natural, because each of the approximations of μ1 [1] that come from step 1.1 are for unit of area 1.0, but for some Detector, View pairs in which μ1 [1] 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:
μ1 ← B * (y./ α)
μ1 ← diag(μ1) * B * (y./
where: B is a matrix of size N lines by M columns, whose i-th line is obtained from the i-th line of A′ by dividing each element of the i-th line of A′ to β [i].
Given this re-writing of the algorithm, the workings can be explained as follows (again look only at μ1 [1]): in step 1.1, μ1 [1] is obtained (as a weighted sum) by multiplying the first line of B with the vector of approximations y./ α; precisely, consider that there are k (k ≤ M) non-zero elements in the first line of B, let these be B [1, j1], B [1, j2],…, B [1, j
k
] where 1 ≤ j1 ≤ j2 ≤ … ≤ j
k
≤ M; each of B [1, j1], B [1, j2],…, B [1, j
k
] corresponds to one of those Detector, View pairs that traverse μ1 [1], and represents the fraction (weight) from the total sum traversed β [1]; so we have
thus if in step 1.1 above Y
α
is the vector of approximations y./ α, then we have
which means that μ1 [1] 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, to see how μ1 [1] is computed in 2.2, observe that it is computed by multiplying the first line of the matrix diag(μ1) * B with the vector of corrections y./
A simple example
Let n
x
= n
y
= n
d
= n
v
= 2 (so N = M = 4) and
We consider that the sinogram y 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 μ1 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 μ1) 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, μ1 [1] and μ1 [2] are each traversed by a full area of 1.0, whereas μ1 [3] and μ1 [4] are each traversed by an area of 0.75; in view V2, μ1 [2] and μ1 [4] are each traversed by a full area of 1.0, whereas μ1 [1] and μ1 [3] are each traversed by an area of 0.75.

At the left is the geometry of view V1, and at the right the geometry of view V2; in yellow is the area of μ1 that is traversed by that portion of the beam corresponding to detector D1 and in green is the area of μ1 that is traversed by that portion of the beam corresponding to detector D2.
Thus
The SbIR algorithm works as follows (look only at μ1 [1]): in 1.1, μ1 [1] is initialized by multiplying the first line of B with the vector y./ α, so
in 2.1, in the first iteration, the situation is
in 2.2, in the first iteration, μ1 [1] is obtained by multiplying the first line of diag(μ1) * B with the vector as we can observe, μ1 [1] converges to its real value 1.0;
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: the number of detectors is n
d
= 1024, the size of each detector being 1.41, so the detectors line has length 1448.15; 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; 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; the number of views is n
v
= 120 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): the Barzilai-Borwein accelerated gradient projection first-order method (GPBB); implementation of an optimal first-order method for strongly convex functions, due to Nesterov, tailored to large-scale total variation regularization (UPN); 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 [25] and described in [26]. The TVReg package solves the problem
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.
Example 1
In the first example we consider the NCAT phantom studied also in other works [7] and shown in Fig. 2(a) (this phantom simulates a thoracic cross-section); in this example we add noise to the sinogram by considering rnl = 0.005 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 α = 5.0 (this means the middle row (b), (e) and (h) in Fig. 3

(a) The original NCAT phantom, (b) the initialization of the SbIR algorithm and (c) the reconstruction with the SbIR algorithm after 512 iterations; both (b) and (c) are obtained after adding noise (with rnl = 0.005) to the sinogram.

(a), (b) and (c) are the results after 512 iterations for the GPBB method for α = 0.5, α = 5.0 and α = 50.0 respectively; (d), (e) and (f) are the results after 512 iterations for the UPN method for α = 0.5, α = 5.0 and α = 50.0 respectively; (g), (h) and (i) are the results after 512 iterations for the UPN0 method for α = 0.5, α = 5.0 and α = 50.0 respectively.
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).
calculations showing the difference between each of the reconstructions with GPBB, UPN, UPN0 and the original, for example 1
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 α = 5.0 seems to be a good choice.
We applied the same experimental setup but this time with rnl = 0.001 (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 [24]; the reconstruction with UPN for this phantom was also best for α = 5.0 as in the case of example 1, whereas GPBB and UPN0 were best for α = 0.5 in this case. The conclusion would be that α = 5.0 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.

Abdominal phantom proposed by the Institute of Medical Physics, Friedrich-Alexander-University Erlangen-Nurnberg, Erlangen.
In this second example we show that setting α = 5.0 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 rnl = 0.001 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 α = 0.5 (this means the first row (a), (d) and (g) in Fig. 6).

(a) The original pipe welding process image, (b) the initialization of the SbIR algorithm and (c) the reconstruction with the SbIR algorithm after 512 iterations; both (b) and (c) are obtained after adding noise (with rnl = 0.001) to the sinogram.

(a), (b) and (c) are the results after 512 iterations for the GPBB method for α = 0.5, α = 5.0 and α = 50.0 respectively; (d), (e) and (f) are the results after 512 iterations for the UPN method for α = 0.5, α = 5.0 and α = 50.0 respectively; (g), (h) and (i) are the results after 512 iterations for the UPN0 method for α = 0.5, α = 5.0 and α = 50.0 respectively.
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 α = 0.5 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.
calculations showing the difference between each of the reconstructions with GPBB, UPN, UPN0 and the original, for example 2

Convergence of the SbIR algorithm, example 2 (the pipe welding process image).
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.
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. 2 the red graph shows the sum
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.
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 is much simpler and without any parameter. 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).
