PET Image Reconstruction via Voxel Subsetting for GPU Memory Efficiency
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current image reconstruction methods in PET systems face inefficiencies due to high memory requirements for processing large image matrices, particularly with higher spatial resolutions and increased dimensions, leading to insufficient memory space in shared or texture memory for GPU processing.
Innovation Solution
A method and system that group voxels passed by radiation rays into subsets based on parameters like radial distance, tilting angle, or position of annihilation on a Line Of Response (LOR), assigning these subsets to different processing threads for parallel calculations, utilizing a GPU with scalar processors to perform forward and back projections iteratively.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If the spatial resolution of the PET system is increased, then the image quality and diagnostic accuracy are improved, but the memory space required for processing the image matrix becomes insufficient
Solution Approach 1:
The image matrix is divided into multiple smaller blocks that can be processed independently. Each block is processed separately by the GPU, reducing the peak memory requirement at any given time. The processing results are then combined to form the complete reconstructed image, thus enabling high spatial resolution processing within limited memory constraints.
Solution Approach 2:
The patent processes the image matrix by introducing a temporal dimension through iterative processing. Instead of loading the entire high-resolution matrix at once, the system processes blocks sequentially across multiple iterations, effectively using time as an additional dimension to manage memory resources while maintaining high spatial resolution.
2Measurement precision
If iterative reconstruction methods are used to improve image quality, then the reconstruction accuracy is improved, but the computational time and processing duration are significantly increased
Solution Approach 1:
The iterative reconstruction process is segmented into multiple iterations, with each iteration processing only a subset of projection data or a block of the image matrix. This segmentation allows the GPU to perform multiple passes through the data with reduced computational load per pass, achieving accurate reconstruction while managing total processing time through efficient parallel execution of segmented operations.
Solution Approach 2:
The system performs partial processing in each iteration by focusing on specific blocks or subsets of data rather than processing the entire matrix in each pass. This partial action approach allows the reconstruction to converge to high accuracy over multiple iterations while keeping the computational work per iteration manageable and suitable for parallel GPU execution.
3Productivity
If parallel processing on GPU is implemented to reduce computational time, then the processing speed is improved, but the memory space requirements for storing the image matrix become insufficient
Solution Approach 1:
The image matrix is segmented into multiple blocks that can be processed in parallel by different GPU threads or thread blocks. Each block is loaded into the GPU's shared memory independently, allowing parallel processing while keeping the memory footprint of each parallel task manageable. The results from all parallel block processing operations are then combined to produce the final reconstructed image.
Data Source
AI summary
The disclosure relates to a system and method for image reconstruction. The method may include the steps of: obtaining raw data corresponding to radiation rays within a volume, determining a radiation ray passing a plurality of voxels, grouping the voxels into a plurality of subsets such that at least some subset of voxels are sequentially loaded into a memory, and performing a calculation relating to the sequentially loaded voxels. The radiation ray may be determined based on the raw data. The calculation may be performed by a plurality of processing threads in a parallel hardware architecture. A processing thread may correspond to a subset of voxels.


