{{short description|Estimate object properties from a finite number of projections}} thumb|Tomographic reconstruction: Projection, Back projection and Filtered back projection|370x370px '''Tomographic reconstruction''' is a type of multidimensional inverse problem where the challenge is to yield an estimate of a specific system from a finite number of projections. The mathematical basis for tomographic imaging was laid down by Johann Radon. A notable example of applications is the reconstruction of computed tomography (CT) where cross-sectional images of patients are obtained in non-invasive manner. Recent developments have seen the Radon transform and its inverse used for tasks related to realistic object insertion required for testing and evaluating computed tomography use in airport security.<ref name="megherbi13radon">{{cite book |title=Proc. SPIE Optics and Photonics for Counterterrorism, Crime Fighting and Defence |date=October 2013 |publisher=SPIE |volume=8901 |pages=1–7 |chapter=Radon Transform based Metal Artefacts Generation in 3D Threat Image Projection |author1=Najla Megherbi |author2=Toby P. Breckon |author3=Greg T. Flitton |author4=Andre Mouton |number=B |doi=10.1117/12.2028506 |s2cid=14001672 |url=https://durham-repository.worktribe.com/output/1154280 |chapter-url=http://breckon.eu/toby/publications/papers/megherbi13radon.pdf |access-date=5 November 2013}}</ref>
This article applies in general to reconstruction methods for all kinds of tomography, but some of the terms and physical descriptions refer directly to the reconstruction of X-ray computed tomography.
==Introducing formula== thumb|Figure 1: Parallel beam geometry utilized in tomography and tomographic reconstruction. Each projection, resulting from tomography under a specific angle, is made up of the set of line integrals through the object. [[File:Ct skull.jpg|thumb|Resulting tomographic image from a plastic skull phantom. Projected X-rays are clearly visible on this slice taken with a CT-scan as image artifacts, due to limited amount of projection slices over angles.]] The projection of an object, resulting from the tomographic measurement process at a given angle <math>\theta</math>, is made up of a set of line integrals (see Fig. 1). A set of many such projections under different angles organized in 2D is called a sinogram (see Fig. 3). In X-ray CT, the line integral represents the total attenuation of the beam of X-rays as it travels in a straight line through the object. As mentioned above, the resulting image is a 2D (or 3D) model of the attenuation coefficient. That is, we wish to find the image <math>\mu(x,y)</math>. The simplest and easiest way to visualise the method of scanning is the system of parallel projection, as used in the first scanners. For this discussion we consider the data to be collected as a series of parallel rays, at position <math>r</math>, across a projection at angle <math>\theta</math>. This is repeated for various angles. Attenuation occurs exponentially in tissue: :<math>I = I_0\exp\left({-\int\mu(x,y)\,ds}\right)</math>
where <math>\mu(x,y)</math> is the attenuation coefficient as a function of position. Therefore, generally the total attenuation <math>p</math> of a ray at position <math>r</math>, on the projection at angle <math>\theta</math>, is given by the line integral: :<math>p_{\theta}(r) = \ln \left(\frac{I}{I_0}\right) = -\int\mu(x,y)\,ds</math>
Using the coordinate system of Figure 1, the value of <math>r</math> onto which the point <math>(x,y)</math> will be projected at angle <math>\theta</math> is given by: :<math>x\cos\theta + y\sin\theta = r\ </math>
So the equation above can be rewritten as :<math>p_{\theta}(r)=\int^\infty_{-\infty}\int^\infty_{-\infty}f(x,y)\delta(x\cos\theta+y\sin\theta-r)\,dx\,dy</math>
where <math>f(x,y)</math> represents <math>\mu(x,y)</math> and <math>\delta()</math> is the Dirac delta function. This function is known as the Radon transform (or ''sinogram'') of the 2D object.
The Fourier Transform of the projection can be written as
:<math>P_\theta(\omega)=\int^\infty_{-\infty}\int^\infty_{-\infty}f(x,y)\exp[-j\omega(x\cos\theta+y\sin\theta)]\,dx\,dy = F(\Omega_1,\Omega_2)</math> where <math>\Omega_1 =\omega\cos\theta, \Omega_2 =\omega\sin\theta </math><ref name=":0">{{cite book |title=Multidimensional digital signal processing |last=Dudgeon and Mersereau |publisher=Prentice-Hall |year=1984}}</ref>
:<math>P_\theta(\omega)</math> represents a slice of the 2D Fourier transform of <math>f(x,y)</math> at angle <math>\theta</math>. Using the inverse Fourier transform, the inverse Radon transform formula can be easily derived. :<math>f(x,y) = \frac{1}{2\pi} \int\limits_{0}^{\pi} g_\theta(x\cos\theta+y\sin\theta)d\theta</math>
where <math>g_\theta(x\cos\theta+y\sin\theta) </math> is the derivative of the Hilbert transform of <math>p_{\theta}(r)</math>
In theory, the inverse Radon transformation would yield the original image. The projection-slice theorem tells us that if we had an infinite number of one-dimensional projections of an object taken at an infinite number of angles, we could perfectly reconstruct the original object, <math>f(x,y)</math>. However, there will only be a finite number of projections available in practice.
Assuming <math>f(x,y)</math> has effective diameter <math>d</math> and desired resolution is <math>R_s</math>, a rule of thumb for the number of projections needed for reconstruction is <math>N > \pi d / R_s</math><ref name=":0" />
==Reconstruction algorithms== Practical reconstruction algorithms have been developed to implement the process of reconstruction of a three-dimensional object from its projections.<ref name="ref1">Herman, G. T., Fundamentals of computerized tomography: Image reconstruction from projection, 2nd edition, Springer, 2009</ref><ref name=":0" /> These algorithms are designed largely based on the mathematics of the X-ray transform, statistical knowledge of the data acquisition process and geometry of the data imaging system.
===Fourier-domain reconstruction algorithm=== Reconstruction can be made using interpolation. Assume <math>N</math> projections of <math>f(x,y)</math> are generated at equally spaced angles, each sampled at the same rate. The discrete Fourier transform (DFT) on each projection yields sampling in the frequency domain. Combining all the frequency-sampled projections generates a polar raster in the frequency domain. The polar raster is sparse, so interpolation is used to fill the unknown DFT points, and reconstruction can be done through the inverse discrete Fourier transform.<ref name=":1">{{cite journal |last=R. Mersereau, A. Oppenheim |year=1974 |title=Digital reconstruction of multidimensional signals from their projections |journal=Proceedings of the IEEE |volume=62 |issue=10 |pages=1319–1338 |doi=10.1109/proc.1974.9625 |hdl=1721.1/13788 |hdl-access=free}}</ref> Reconstruction performance may improve by designing methods to change the sparsity of the polar raster, facilitating the effectiveness of interpolation.
For instance, a concentric square raster in the frequency domain can be obtained by changing the angle between each projection as follows: :<math>\theta' = \frac{R_0}{ \max\{|\cos\theta|, |\sin\theta|\}}</math>
where <math>R_0</math> is highest frequency to be evaluated.
The concentric square raster improves computational efficiency by allowing all the interpolation positions to be on rectangular DFT lattice. Furthermore, it reduces the interpolation error.<ref name=":1" /> Yet, the Fourier-Transform algorithm has a disadvantage of producing inherently noisy output.
===Back projection algorithm=== In practice of tomographic image reconstruction, often a stabilized and discretized version of the inverse Radon transform is used, known as the filtered back projection algorithm.<ref name=":0" />
With a sampled discrete system, the inverse Radon transform is :<math>f(x,y) = \frac{1}{2\pi} \sum_{i=0}^{N-1}\Delta\theta_i g_{\theta_i}(x\cos\theta_i+y\sin\theta_i)</math> :<math>g_\theta(t) = p_\theta(t) \cdot k(t) </math>
where <math>\Delta\theta</math> is the angular spacing between the projections and <math>k(t)</math> is a Radon kernel with frequency response <math>|\omega|</math>.
The name ''back-projection'' comes from the fact that a one-dimensional projection needs to be filtered by a one-dimensional Radon kernel (back-projected) in order to obtain a two-dimensional signal. The filter used does not contain DC gain, so adding DC bias may be desirable. Reconstruction using back-projection allows better resolution than interpolation method described above. However, it induces greater noise because the filter is prone to amplify high-frequency content.
===Iterative reconstruction algorithm=== {{Main|Iterative reconstruction}} The iterative algorithm is computationally intensive but it allows the inclusion of ''a priori'' information about the system <math>f(x,y)</math>.<ref name=":0" />
Let <math>N</math> be the number of projections and <math>D_i</math> be the distortion operator for the <math>i</math>th projection taken at an angle <math>\theta_i</math>. <math>\{\lambda_i\}</math> are a set of parameters to optimize the conversion of iterations. :<math>f_0(x,y) = \sum_{i=1}^N \lambda_i p_{\theta_i}(r) </math> thumb|A fan-beam reconstruction of Shepp-Logan Phantom with different sensor spacing. Smaller spacing between the sensors allow finer reconstruction. The figure was generated by using MATLAB. :<math>f_k(x,y) = f_{k-1} (x,y) + \sum_{i=1}^N \lambda_i [p_{\theta_i}(r)-D_if_{k-1}(x,y)]</math>
An alternative family of recursive tomographic reconstruction algorithms are the algebraic reconstruction techniques and iterative sparse asymptotic minimum variance.
===Fan-beam reconstruction=== Use of a noncollimated fan beam is common since a collimated beam of radiation is difficult to obtain. Fan beams will generate series of line integrals, not parallel to each other, as projections. The fan-beam system requires a 360-degree range of angles, which imposes mechanical constraints, but it allows faster signal acquisition time, which may be advantageous in certain settings such as in the field of medicine. Back projection follows a similar two-step procedure that yields reconstruction by computing weighted sum back-projections obtained from filtered projections.
===Deep learning reconstruction=== thumb|The influence of Poisson noise in deep learning reconstruction where Poisson noise causes the U-Net to fail to reconstruct an existing high contrast lesion-like object. Deep learning methods are widely applied to image reconstruction nowadays and have achieved impressive results in various image reconstruction tasks, including low-dose denoising, sparse-view reconstruction, limited angle tomography and metal artifact reduction. An excellent overview can be found in the special issue <ref name="IEEERecon">{{cite journal |author1=Wang, Ge |author2=Ye, Jong Chu |author3=Mueller, Klaus |author4=Fessler, Jeffrey A |journal=IEEE Transactions on Medical Imaging |title=Image reconstruction is a new frontier of machine learning |date=2018 |volume=37 |issue=6 |pages=1289–1296 |pmid=29870359 |doi=10.1109/TMI.2018.2833635 |s2cid=46931303}}</ref> of IEEE Transaction on Medical Imaging. One group of deep learning reconstruction algorithms apply post-processing neural networks to achieve image-to-image reconstruction, where input images are reconstructed by conventional reconstruction methods. Artifact reduction using the U-Net in limited angle tomography is such an example application.<ref name="U-NetLimitedAngle">{{cite conference |author1=Gu, Jawook |author2=Ye, Jong Chul |conference=Fully3D |title=Multi-scale wavelet domain residual learning for limited-angle CT reconstruction |date=2017 |pages=443–447}}</ref> However, incorrect structures may occur in an image reconstructed by such a completely data-driven method,<ref name="PoissonMICCAI">{{cite conference |author1=Yixing Huang |author2=Tobias Würfl |author3=Katharina Breininger |author4=Ling Liu |author5=Günter Lauritsch |author6=Andreas Maier |conference=MICCAI |title=Some Investigations on Robustness of Deep Learning in Limited Angle Tomography |date=2018 |doi=10.1007/978-3-030-00928-1_17}}</ref> as displayed in the figure. Therefore, integration of known operators into the architecture design of neural networks appears beneficial, as described in the concept of precision learning.<ref name="PrecisionLearning">{{cite journal |author1=Maier, Andreas K |author2=Syben, Christopher |author3=Stimpel, Bernhard |author4=Wuerfl, Tobias |author5=Hoffmann, Mathis |author6=Schebesch, Frank |author7=Fu, Weilin |author8=Mill, Leonid |author9=Kling, Lasse |author10=Christiansen, Silke |journal=Nature Machine Intelligence |title=Learning with known operators reduces maximum error bounds |date=2019 |volume=1 |issue=8 |pages=373–380 |arxiv=1907.01992 |pmid=31406960 |doi=10.1038/s42256-019-0077-5 |pmc=6690833}}</ref> For example, direct image reconstruction from projection data can be learnt from the framework of filtered back-projection.<ref name="CompensationLearning">{{cite journal |author1=Tobias Wuerfl |author2=Mathis Hoffmann |author3=Vincent Christlein |author4=Katharina Breininger |author5=Yixing Huang |author6=Mathias Unberath |author7=Andreas Maier |journal=IEEE Transactions on Medical Imaging |title=Deep Learning Computed Tomography: Learning Projection-Domain Weights from Image Domain in Limited Angle Problems |date=2018 |volume=37 |issue=6 |pages=1454–1463 |pmid=29870373 |doi=10.1109/TMI.2018.2833499 |s2cid=46935914}}</ref> Another example is to build neural networks by unrolling iterative reconstruction algorithms.<ref name="PrimalDual">{{cite journal |author1=J. Adler |author2=O. Öktem |journal=IEEE Transactions on Medical Imaging |title=Learned Primal-Dual Reconstruction |date=2018 |volume=37 |issue=6 |pages=1322–1332 |arxiv=1707.06474 |pmid=29870362 |doi=10.1109/TMI.2018.2799231 |s2cid=26897002}}</ref> Except for precision learning, using conventional reconstruction methods with deep learning reconstruction prior <ref name="DeepLearningPrior">{{cite conference |author1=Yixing Huang |author2=Alexander Preuhs |author3=Guenter Lauritsch |author4=Michael Manhart |author5=Xiaolin Huang |author6=Andreas Maier |conference=Machine Learning for Medical Image Reconstruction |title=Data Consistent Artifact Reduction for Limited Angle Tomography with Deep Learning Prior |date=2019 |arxiv=1908.06792 |doi=10.1007/978-3-030-33843-5_10}}</ref> is also an alternative approach to improve the image quality of deep learning reconstruction.
==Tomographic reconstruction software==
Tomographic systems have significant variability in their applications and geometries (locations of sources and detectors). This variability creates the need for very specific, tailored implementations of the processing and reconstruction algorithms. Thus, most CT manufacturers provide their own custom proprietary software. This is done not only to protect intellectual property, but may also be enforced by a government regulatory agency. Regardless, there are a number of general purpose tomographic reconstruction software packages that have been developed over the last couple decades, both commercial and open-source.
Most of the commercial software packages that are available for purchase focus on processing data for benchtop cone-beam CT systems. A few of these software packages include [https://www.volumegraphics.com/en/products/vgsm/ct-reconstruction-data-quality-analysis.html Volume Graphics], [http://instarecon.com/ InstaRecon], [https://www.itomography.com/ iTomography], [https://www.sciencedirect.com/science/article/abs/pii/S0963869521001948 Livermore Tomography Tools (LTT)], [https://www.vareximaging.com/wp-content/uploads/2022/01/CBCT-Software-Tools_145554_Industrial.pdf Cone Beam Software Tools (CST)], and [https://www.bronnikov-algorithms.com/soft/CBCT_Software.pdf Bronnikov Algorithms Library].
Some noteworthy examples of open-source reconstruction software include: Reconstruction Toolkit (RTK),<ref>[https://www.openrtk.org/ Reconstruction Toolkit (RTK)]</ref> CONRAD,<ref name="CONRAD">{{cite journal |author1=Maier, Andreas |author2=Hofmann, Hannes G. |author3=Berger, Martin |author4=Fischer, Peter |author5=Schwemmer, Chris |author6=Wu, Haibo |author7=Müller, Kerstin |author8=Hornegger, Joachim |author9=Choi, Jang-Hwan |author10=Riess, Christian |author11=Keil, Andreas |author12=Fahrig, Rebecca |journal=Medical Physics |title=CONRAD - A software framework for cone-beam imaging in radiology |date=2013 |volume=40 |number=11 |page=111914 |bibcode=2013MedPh..40k1914M |pmid=24320447 |doi=10.1118/1.4824926 |pmc=3820625}}</ref> TomoPy,<ref name="TOMOPY">{{cite journal |author1=Gürsoy, Doǧa |author2=De Carlo, Francesco |author3=Xiao, Xianghui |author4=Jacobsen, Chris |journal=Journal of Synchrotron Radiation |title=TomoPy: A framework for the analysis of synchrotron tomographic data |date=2014 |volume=22 |issue=5 |pages=1188–1193 |bibcode=2014SPIE.9212E..0NG |pmid=25178011 |doi=10.1107/S1600577514013939 |doi-access=free|pmc=4181643}}</ref> the ASTRA toolbox,<ref name="ASTRAEM">{{cite journal |author1=van Aarle, Wim |author2=Palenstijn, Willem Jan |author3=De Beenhouwer, Jan |author4=Altantzis, Thomas |author5=Bals, Sara |author-link5=Sara Bals |author6=Batenburg, K. Joost |author7=Sijbers, Jan |journal=Ultramicroscopy |title=The ASTRA Toolbox: a platform for advanced algorithm development in electron tomography |date=October 2015 |volume=157 |pages=35–47 |pmid=26057688 |doi=10.1016/j.ultramic.2015.05.002 |hdl=10067/1278340151162165141 |hdl-access=free |url=https://ir.cwi.nl/pub/23858}}</ref><ref name="ASTRACT">{{cite journal |author1=van Aarle, Wim |author2=Palenstijn, Willem Jan |author3=Cant, Jeroen |author4=Janssens, Eline |author5=Bleichrodt, Folkert |author6=Dabravolski, Andrei |author7=De Beenhouwer, Jan |author8=Joost Batenburg, K. |author9=Sijbers, Jan |journal=Optics Express |title=Fast and flexible X-ray tomography using the ASTRA toolbox |date=2016 |volume=24 |number=22 |pages=35–47 |bibcode=2016OExpr..2425129V |pmid=27828452 |doi=10.1364/OE.24.025129 |doi-access=free |hdl=10067/1392160151162165141 |hdl-access=free |url=https://ir.cwi.nl/pub/24770}}</ref> PYRO-NN,<ref name="PYRONN">{{cite journal |author1=Syben, Christopher |author2=Michen, Markus |author3=Stimpel, Bernhard |author4=Seitz, Stephan |author5=Ploner, Stefan |author6=Maier, Andreas |journal=Medical Physics |title=PYRO-NN: Python Reconstruction Operators in Neural Networks |date=2019 |volume=46 |issue=11 |pages=5110–5115 |bibcode=2019MedPh..46.5110S |arxiv=1904.13342 |pmid=31389023 |doi=10.1002/mp.13753 |pmc=6899669}}</ref> ODL,<ref>{{cite web |title=Odlgroup/Odl |website=GitHub |url=https://github.com/odlgroup/odl}}</ref> TIGRE,<ref>[https://github.com/CERN/TIGRE Released by the University of Bath and CERN.]<br/>{{cite journal |last1=Biguri |first1=Ander |last2=Dosanjh |first2=Manjit |last3=Hancock |first3=Steven |last4=Soleimani |first4=Manuchehr |date=2016-09-08 |title=TIGRE: a MATLAB-GPU toolbox for CBCT image reconstruction |journal=Biomedical Physics & Engineering Express |volume=2 |issue=5 |article-number=055010 |issn=2057-1976 |doi=10.1088/2057-1976/2/5/055010 |doi-access=free}}</ref> and LEAP.<ref>[https://github.com/LLNL/LEAP]{{cite journal |last1=Kim |first1=Hyojin |last2=Champley |first2=Kyle |date=2023 |title=Differentiable Forward Projector for X-ray Computed Tomography |journal=ICML |arxiv=2307.05801}}</ref>
==Gallery== Shown in the gallery is the complete process for a simple object tomography and the following tomographic reconstruction based on ART. <gallery mode="packed" heights="200px" style="text-align:left"> File:Sinogram Source - Two Squares Phantom.svg|Fig. 2: Phantom object, two kitty-corner squares. File:Sinogram Result - Two Squares Phantom.png|Fig. 3: Sinogram of the phantom object (Fig.2) resulting from tomography. 50 projection slices were taken over 180 degree angle, equidistantly sampled (only by coincidence the x-axis marks displacement at -50/50 units). File:Algebraic Reconstruction Technique - animated.gif|Fig.4: ART based tomographic reconstruction of the sinogram of Fig.3, presented as animation over the iterative reconstruction process. The original object could be approximatively reconstructed, as the resulting image has some visual artifacts. </gallery>
==See also== * Operation of computed tomography#Tomographic reconstruction * Cone beam reconstruction * Industrial computed tomography * Industrial Tomography Systems plc
==References== {{Reflist}}
==Further reading== *Avinash Kak & Malcolm Slaney (1988), Principles of Computerized Tomographic Imaging, IEEE Press, {{ISBN|0-87942-198-3}}. * Bruyant, P.P. [https://jnm.snmjournals.org/content/43/10/1343.long "Analytic and iterative reconstruction algorithms in SPECT"] Journal of Nuclear Medicine 43(10):1343-1358, 2002
==External links== *{{cite web |title=Principles of Computerized Tomographic Imaging |first=A. C. Kak and Malcolm |last=Slaney |website=Slaney.org |url=https://www.slaney.org/pct/ |access-date=7 September 2018}} *[https://itk.org/ Insight ToolKit; open-source tomographic support software] *{{cite web |title=TomoPy — TomoPy 1.1.3 documentation |website=Tomopy.readthedocs.org |url=https://tomopy.readthedocs.io/ |access-date=7 September 2018}} *[https://visielab.uantwerpen.be/research/tomography ASTRA (All Scales Tomographic Reconstruction Antwerp) toolbox; very flexible, fast open-source software for computed tomographic reconstruction] *[http://niftyrec.scienceontheweb.net/ NiftyRec; comprehensive open-source tomographic reconstruction software; Matlab and Python scriptable] *[https://tomviz.org/ Open-source tomographic reconstruction and visualization tool] *{{cite web |title=ITS plc - Electrical Process Tomography For Industrial Visualization |website=Itoms.com |url=https://www.itoms.com/ |access-date=7 September 2018}}
{{Medical imaging}}
Category:Inverse problems Category:Medical imaging Category:Multidimensional signal processing Category:Radiology Category:Signal processing Category:Tomography