PET scanning, motion tracking, LOR rebinning, and reconstruction
In this study, we used the Siemens Inveon microPET (Siemens Medical Solutions, Inc., Knokville, USA) scanner. The scanner consists of 80 rings (16 cm diameter) of 320 lutetium oxyorthosilicate (LSO) scintillation crystals with a size of 1.5 × 1.5 × 1.0-mm3 with a reconstructed image resolution of 1.5 mm [3, 25]. The scanner’s bore diameter is 12 cm.
For motion tracking during the PET imaging, a commercially available stereo optical tracking device (MicronTracker Sx60, Claron Technology Inc., Toronto, Canada) was used. The MicronTracker measures the pose of specially designed checkerboard markers in a reference frame relative to the camera position. Four markers of 2.4 × 2.4 mm2 and four of 1.2 × 1.2 mm2 were pasted on the scanner bore to be used as reference ([12]; Fig. 1). The motion of the subject marker was measured relative to these reference markers. The maximum tracking frame rate is 48 Hz, and the reported tracking accuracy by the manufacturer is 0.25 mm root mean square.
The spatial calibration between the MicronTracker and the PET scanner coordinate system is established by measuring the spatial location of a radioactive point source, attached to the center of a checkerboard marker in PET space, and the corresponding pose of the checkerboard marker in camera space for 20 different positions [13]. The transformation matrix between both coordinate systems is then determined using least squares regression. The same transformation matrix was used for all the experiments.
The time synchronization between the MicronTracker and the PET scanner is established using an Arduino Uno (Arduino SA) microcontroller to generate a regular square wave signal that triggers the MicronTracker, which in turn sends a signal to the microPET gating input. A few seconds before the end of the scan, the frequency of the gating signal changes with a predetermined pattern. This pattern is then used to relate each gate tag with its corresponding pose. The frequency of the square wave signal can be adjusted by the user to change the tracking frame rate. The tracking frame rate was set to 31.2 Hz in all experiments. Although a maximum tracking frame rate of 48 Hz is possible, 31.2 Hz was chosen due to the fact that at increased frame rate the camera exposure time reduces, increasing the noise in the images and therefore reducing the tracking accuracy [8].
For the motion corrected reconstructions, we have implemented the subsetized list-mode expectation maximization (OSEM) algorithm [18] with calculation of the sensitivity image by interpolation in the image space. The bore size of the Siemens Inveon microPET is substantially smaller than in previous implementations of awake small animal brain PET (12 cm compared to 22 cm for the microPET Focus 220 [12]). This poses challenges on the motion tracking; however, it does not impact the motion correction method as such. Briefly, in this method, each measured pose Xk (k = 1, …, K poses) is assigned to the group of LORs that are within the sampling interval centered around the time tk, the time that the pose was measured (Fig. 2a). These LORs, i.e., the lines connecting two coincidence events, are then moved to a reference pose Xref by applying the transformation \( M={X}_{\mathrm{ref}}{X}_k^{-1} \). The LORs in the reference pose are finally reconstructed using the OSEM algorithm without attenuation, scatters, or random correction. Resolution modeling was implemented in the image space [20] with a 1.2-mm Gaussian point spread function. These motion corrected images will then be deconvolved using our proposed residual motion kernel (see Section 2.2).
We compared our proposed deconvolution procedure to motion correction using pose interpolation of the motion tracking data [27]. The interpolated poses are calculated from the measured poses to assign a single position to each LOR (within the scanner time resolution of 0.2 ms), thus reducing the finite sampling interval. The interpolation of the pose position was obtained from cubic interpolation, while the pose orientation was calculated from cubic interpolation of the Euler angles [23].
Residual motion kernel estimation and deconvolution
To calculate the residual motion kernel, the range of the residual motion that exists within each of the sampling intervals is estimated in image space. Each reference voxel location is transformed to the current measured position. The position uncertainty is then estimated by considering a position uncertainty distribution spanning from the voxel position that lie halfway between the measured voxel position in the current frame and previous frame and between the current and next frames respectively. To discretize the uncertainty distribution, a number of points are distributed over the uncertainty positions span. Finally, these points are transformed back to the reference orientation. Once this has been done for all frames, a kernel is fitted to the resulting point cloud. The detailed procedure is presented in the next paragraph.
For each measured pose Xk (k = 2, …, K − 1), the intermediate pose \( {X}_k^{-} \) halfway between Xk and Xk − 1, and the intermediate pose \( {X}_k^{+} \) between Xk and Xk + 1, are calculated (Fig. 2b). The location (x, y, z) of the intermediate pose is calculated using linear interpolation while for the orientation the mean rotation matrix is obtained through the singular value decomposition of the sum of the rotation matrices corresponding to the neighboring poses [7].
Then, to estimate the corresponding blurring in image space that the range of residual motion within the sampling interval causes, the intermediate poses \( {X}_k^{-} \) and \( {X}_k^{+} \) from the previous step are used to move the centers of the image voxels as follows:
-
1)
All image voxels vj (j = 1, …, J) are moved from their reference pose Xref, i.e., the pose of the motion corrected reconstruction (defined as the average from all measured poses), to the intermediate pose \( {X}_k^{-} \). Then, all the image voxels are moved back towards the reference position according to the pose Xk. In this way, the new voxel center coordinates \( {a}_j^k \) are obtained, with slightly different position from the original coordinates due to the difference between the poses Xk and \( {X}_k^{-} \), according to \( {a}_j^k={\left({X}_k\right)}^{-1}{X}_k^{-}{\left({X}_{\mathrm{ref}}\right)}^{-1}{v}_j \).
-
2)
Step 1 is repeated for all voxels using \( {X}_k^{+} \) instead of \( {X}_k^{-} \) obtaining voxel center coordinates \( {b}_j^k \), i.e., \( {b}_j^k={\left({X}_k\right)}^{-1}{X}_k^{+}{\left({X}_{\mathrm{ref}}\right)}^{-1}{v}_j \).
-
3)
The line connecting the points vj and \( {a}_j^k \) is then calculated. At intervals with length dm (average of the voxel length in the x, y and z direction) from the point vj, a point is calculated obtaining the points \( {v}_{j,a1}^k \), \( {v}_{j,a2}^k \), …, with the number of point dependent on the length of the line. Likewise for the line connecting points vj and \( {b}_j^k \), at intervals with length dm from the point vj a point is calculated obtaining the points \( {v}_{j,b1}^k \) and \( {v}_{j,b2}^k \).
-
4)
Depending on the predefined size N of the deconvolution kernel that is calculated, the central voxel \( {v}_j^k \) is repeated ⌈N/2⌉ times, voxels \( {v}_{j,a1}^k \) and \( {v}_{j,b1}^k \) ⌈N/2⌉ − 1 times and so on. This procedure is made in order to assign more weight to the points closer to the voxel center.
-
5)
Steps 1 to 4 are repeated for all the poses k = 2, …, K − 1, and for each voxel vj, we obtain an associated point cloud with the coordinates \( {v}_j^k \), \( {v}_{j,a}^k \), and \( {v}_{j,b}^k \), with each point repeated the corresponding number of times (step 4).
-
6)
The deconvolution kernel KN, j for each voxel vj of size N is calculated from the point cloud \( {v}_j^k \), \( {v}_{j,a}^k \) and \( {v}_{j,b}^k \) (k = 2, …, K − 1) by computing the 3D histogram of the points with bins equal to the neighbor voxels of \( {v}_j^k \).
-
7)
The 3D residual motion kernel KN, j is finally normalized so that ∑x, y, zKN, j(x, y, z) = 1.
The use of points to represent the motion path of the voxel due to the residual motion was preferred over a ray intersection with the image voxels to reduce calculation time.
The deconvolution kernel KN, j of size N is truncated and normalized if the residual motion is wider. Therefore, to evaluate the impact of the kernel size, three types of kernels, with kernel size N = 3, 5, and 7, were calculated. These kernels will be referred to as K3, K5, and K7, respectively.
The kernel can be calculated in a single voxel of interest for a fast assessment of the resolution loss in a particular position. If the kernels are however calculated for each voxel in the region of interest, they can be used in a 3D Richardson-Lucy (RL) deconvolution algorithm [14] to deconvolve the motion corrected reconstructions:
$$ {W}_{j,r+1}={W}_{j,r}\sum \limits_l\frac{K_{j,l}{U}_l}{\sum_m{K}_{m,l}{W}_{m,r}} $$
where Wj, r is the image value of the jth voxel in the deconvolved image at the rth iteration, Kj, l is the contribution of the kernel in the jth position to the lth voxel, and Ul is the lth voxel value of the motion corrected reconstruction before deconvolution. In the RL deconvolution, a Poisson noise model is assumed. We will refer to the deconvolution with the residual motion kernel as residual motion deconvolution (RMD).
In our experiments, the kernel calculation and deconvolution were performed only on the region of interest that contained the object. The kernel calculation and the deconvolution were implemented in MATLAB Release 2012b (The Mathworks, Inc., Natick, USA).
Spatially variant resolution and residual motion kernel shape validation
To illustrate the spatially variant resolution loss after motion correction and the corresponding spatially variant residual kernel, a 48.9-mm long rod (1 voxel wide) with uniform activity was simulated. The rod was placed along the y axis with one of its end points in the center of the coordinate system (i.e., center of the scanner field of view, CFOV). The rod was then rotated about the x axis considering a sinusoidal signal with frequency of 0.5 Hz and amplitude of 25.5°. Back-to-back photons escaping from the moving phantom were simulated. For this simulation, the motion was sampled with a timing resolution of 1 ms. The simulated data was then motion corrected with a motion sampling interval of 32 ms. The FWHM of the static and the motion corrected reconstructions was measured along the z axis, and its difference was calculated in function of the distance along the y axis. In addition, the kernel K5 was calculated at several voxel positions along the rod and the kernel FWHM along the z axis was measured from a Gaussian fit to the kernel profile.
Numerical mouse brain phantom simulation
In order to asses to which degree the residual motion blurring affects the regional brain quantification in two animal conditions with different levels of locomotion, a numerical mouse brain phantom experiment was performed. Motion data from a head motion tracking experiment in naïve and memantine treated mice placed inside the PET scanner was used to calculate the residual motion kernels. Memantine administration has been shown to significantly increase mouse locomotion in comparison with a naïve condition [5]. Then, to estimate the effect of the residual motion in the two conditions on brain quantification, the kernels were used to blur a mouse brain numerical phantom. The numerical mouse brain phantom was based on a template in Waxholm space [11]. Increased striatal uptake was simulated with a 1.65 to 1 ratio (striatum versus rest of the brain). To quantify the effect, average regional striatal uptake after blurring with the residual motion kernel was calculated in the reference image as well as in both animal conditions blurred images.
Simulation experiment
A simulated dataset was generated by combining list mode data of a static (i.e., motion-free) PET scan of a microDerenzo phantom and previously measured motion data of a manually moved microDerenzo phantom. The LORs in the list mode data were then moved according to this motion to generate simulated PET data that was affected by subject motion. The microDerenzo phantom (diameter 30 mm, height 13 mm) had six rod sections with an inner diameter of 1.25, 1.5, 2, 2.5, and 3 mm respectively. The scan time was 10 min, and the activity was 12.9 MBq of [18F]-FDG. The motion data was previously measured using the MicronTracker in a phantom experiment where the phantom was moved manually. The motion was sampled every 32 ms, and the average measured motion speed was 74 mm/s. The list mode data has a temporal resolution of 0.2 ms, and to simulate continuous motion, the original motion was interpolated (using cubic interpolation) to obtain 1 ms sampling intervals. The list mode data of the motion-free scan was moved according to the interpolated motion, i.e., with 1 ms sampling intervals. Then, these displaced LORs were corrected for motion according to the original measured motion, i.e., with bin intervals of 32 ms. Thus, all the LORs in the 32 ms interval that have been moved with different poses (every 1 ms) are being corrected using a single pose corresponding to the central pose of the interval. A second simulated dataset was generated by considering sampling intervals of 64 ms for the motion correction. This would equally correspond to the situation where the motion speed doubles.
The errors present in this motion corrected simulation is caused uniquely by the difference between the actual pose of the LOR and the central pose of the corresponding interval that is used for the motion correction. All the other factors that can affect the spatial resolution in the motion correction technique (e.g., calibration error, tracking accuracy, synchronization delay) are not simulated.
To assess the different kernel sizes, the kernels KN (N = 3, 5, 7) were calculated for the 32 ms sampling interval data. The different kernels were then used in the residual motion deconvolution of the motion corrected reconstruction. The average FWHM, taken in tangential direction, and the average peak-to-valley ratio (PVR) of all the rods of 2, 2.5, and 3 mm were measured in the deconvolved images for eight iterations of the residual motion deconvolution. The FWHM was calculated from a Gaussian fit to the profiles through the individual rods of the same size and was then averaged to obtain the average FWHM. The FWHM and PVR values were then compared to the average FWHM and PVR of the rods in the reference reconstruction of the motion-free scan. The data for the 64 ms sampling interval simulation was analyzed similarly as aforementioned.
MicroDerenzo phantom experiment
To further evaluate the performance of the deconvolution on real measured data, two microDerenzo phantom experiments whereby the phantom was moved manually at two different speeds were considered. The same phantom as described in Section 2.3 was used. The phantom was filled with 12.9 MBq of [18F]-FDG, and scan duration was 10 min. During the first scan, the phantom was moved more slowly while during the second scan, the phantom was moved with a faster speed. The motion was measured with the MicronTracker device at a frame rate of 31.2 Hz (32 ms bins) with a checkerboard marker of 36 × 30 mm2. At the end of the two motion experiments, a third reference static scan, i.e., without any motion, was made for evaluation purposes.
The reconstructions after motion correction were deconvolved for residual motion using kernel K5 with eight RMD iterations. The average FWHM and PVR values for the 2, 2.5, and 3 mm rods were determined and compared to the values of the motion-free scan.
In addition, a motion correction of the slow and fast motion scan was performed using interpolated poses as detailed in Section 2.1.
The region of interest where the deconvolution was performed contained 45 × 43 × 24 voxels, resulting in 46,440 kernels.
Resolution loss quantification
We quantify the loss of spatial resolution due to the residual motion blurring through the FWHM and PVR of the microDerenzo phantom rods, with the values of the motion-free case as the reference values.
In addition, to quantify the loss of spatial resolution of the motion corrected reconstructions in comparison with the motion-free reconstructions, a scale parameter [2] was calculated as follows. A mask covering the region where the loss of spatial resolution is to be assessed is defined by using an activity threshold in both motion corrected and motion-free images. Then, the motion-free image is filtered with a spatially invariant Gaussian filter with a scale parameter (σ2) ranging from 0 to 2.88 mm2. The image correlation between the filtered motion-free and motion corrected images is calculated. Finally, the scale parameter value of the filtered motion-free image with maximum correlation with the motion corrected image is selected as the corresponding scale parameter for that motion corrected image. Although the loss of spatial resolution can vary over the image, the scale parameter serves as a metric of the average loss of spatial resolution.
To investigate the shape of the estimated deconvolution kernel K5, the principal axes of the average kernel were calculated for all experiments as follows. The deconvolution kernels for all voxels in the region of interest of each experiment were summed. Then, the central image moments [10] of the summed kernels \( {\overline{K}}_5 \) were calculated to create the image covariance matrix:
$$ \mathit{\operatorname{cov}}\left[{\overline{K}}_5\right]=\left[\begin{array}{ccc}{\mu}_{2,0,0}^{\hbox{'}}& {\mu}_{1,1,0}^{\hbox{'}}& {\mu}_{1,0,1}^{\hbox{'}}\\ {}{\mu}_{1,1,0}^{\hbox{'}}& {\mu}_{0,2,0}^{\hbox{'}}& {\mu}_{0,1,1}^{\hbox{'}}\\ {}{\mu}_{1,0,1}^{\hbox{'}}& {\mu}_{0,1,1}^{\hbox{'}}& {\mu}_{0,0,2}^{\hbox{'}}\end{array}\right] $$
where μ′ is the image central moment where the subindex indicates the order of the moment in the x, y, and z direction respectively. Finally, from the covariance matrix, the eigenvalues and eigenvectors were calculated to obtain the magnitude (standard deviation) and direction of the kernel principal axes.