# On-the-Fly Machine Learning for Improving Image Resolution in Tomography
## 2 Background and Notation  
### Tomography  
In circular cone-beam CT, an X-ray point source and flat-panel detector are fixed opposite to each other at some distance, which we refer to as the _source-detector distance_ (\(SDD\)). In between, at a distance \(SOD\) (_source-object distance_) to the source, the object under study is mounted on a rotation stage. Equivalently, the object can be fixed while the source and detector rotate around it. In either case, X-ray images are acquired at discrete angles during rotation. The resulting stack of pictures is called the _projection dataset_. The setup is displayed in Figure 1.  
Cone beam tomography can be modeled as follows. Let the _object function_\(f:\Omega\rightarrow\mathbb{R}\) represent the density of an unknown 3D volume supported on \(\Omega\subset\mathbb{R}^{3}\). From the frame of reference of the object, the formation of the projection on the detector is given by  
\[P_{\theta}(u,v)=\int_{0}^{1}f(l(t))\,\mathrm{d}t, \tag{1}\]  
where \(l(t):[0,1]\rightarrow\mathbb{R}^{3}\) is the parameterization of the line segment connecting the position of the source at angle \(\theta\) with position \((u,v)\) on the detector. In practice, only a finite number \(N_{\theta}\) of projections are acquired on a discrete grid of \(N_{u}\times N_{v}\) detector pixels of size \(r\times r\). Hence, the projection data can be described by a vector \(\mathbf{p}\in\mathbb{R}^{m},m=N_{\theta}\times N_{u}\times N_{v}\). Likewise, the object \(f\) is represented by a three-dimensional voxel grid \(\mathbf{x}\in\mathbb{R}^{N_{\mathbf{x}}\times N_{\mathbf{x}}\times N_{\mathbf{ x}}}\) describing a physical volume \(\Omega_{\mathbf{x}}\supseteq\Omega\). In this paper, solely for ease of exposition, we choose all grids to be cubes. The physical dimensions of a single voxel, the _voxel size_, is naturally determined by the number of voxels in \(\mathbf{x}\) and choice of \(\Omega_{\mathbf{x}}\), and can in principle be made arbitrarily small. The discrete formulation gives rise to the linear inverse problem  
\[\mathbf{A}\mathbf{x}=\mathbf{p}, \tag{2}\]  
with \(\mathbf{A}=(a_{ij})\) an \(m\times n\) matrix where \(a_{ij}\) represents the contribution of volume voxel \(j\) to detector pixel \(i\). The goal of tomographic reconstruction is to estimate \(\mathbf{x}\) such that it matches the \(N_{\mathbf{x}}\times N_{\mathbf{x}}\times N_{\mathbf{x}}\) voxel discretization of \(f\). For the circular cone beam trajectory, several methods exist to compute \(\mathbf{x}\) from projections \(\mathbf{p}\). One of these methods is the widely used Feldkamp-Davis-Kress (FDK) algorithm [20], \(\mathbf{FDK}:\mathbb{R}^{N_{\theta}\times N_{u}\times N_{v}}\rightarrow \mathbb{R}^{N_{\mathbf{x}}\times N_{\mathbf{x}}\times N_{\mathbf{x}}}\), which computes  
\[\widetilde{\mathbf{x}}=\mathbf{FDK}\left(\mathbf{p}\right)=\mathbf{A}^{T}( \mathbf{h}*\widetilde{\mathbf{p}})_{1D}, \tag{3}\]  
where \(\mathbf{A}^{T}\in\mathbb{R}^{n\times m}\), the transpose of \(\mathbf{A}\), is the discrete backprojection of \(\mathbf{p}\) onto \(\mathbf{x}\), \(\mathbf{h}\in\mathbb{R}^{N_{u}}\) is the convolution kernel associated with the FDK algorithm, and \((\mathbf{h}*\widetilde{\mathbf{p}})_{1D}\) is the horizontal one-dimensional convolution of \(\mathbf{h}\) with \(\widetilde{\mathbf{p}}\), a weighted version of \(\mathbf{p}\) with diminished intensity at higher distance from the detector center. The FDK algorithm is computationally efficient and results in accurate reconstructions when the projection data have a low noise profile and have been acquired from a sufficient number of angles. The resolution of the reconstruction cannot be arbitrarily improved by choosing a finer reconstruction grid. Even in the absence of noise and other effects, the minimal voxel size is limited by the detector pixel size [21]  
\[v=r\cdot\frac{\text{SOD}}{\text{SDD}}. \tag{4}\]  
The angular resolution of the CT scan also influences the voxel size.