Hello All,
I have read about preparing normalization file in CASToR. In this forum, it is suggested to follow the steps in Normalization of Monte Carlo PET data using GATE by Pépin et al. 2011. Do I need to follow the steps in the paper and calculate the factors by first collecting the number of hits in each LOR and then use the formulas in the paper, or CASToR provides a utility that we can pass the projection data to it and then the utility provides us with the normalization file?
Best,
Seyyed
Hello Everyone,
I have another question along with the question in my initial post.
In addition to the normalization file, which contains the normalization factors for each LOR, we need to add these normalization factors to the input datafile. If the normalization factors are already in the normalization file, why doesn’t CASToR search the normalization file for the corresponding factor and use it for each LOR in the reconstruction phase? What is the philosophy behind this design choice? Is it related to time or space complexity?
Best,
Seyyed
Hi Seyyed,
The paper from Pépin et al. is often quoted as it describes methods to compute component-based normalization for (simulated) PET systems with usual geometry. The pertinence of each component will vary depending on your PET geometry.
Since the last version (v3.2, October 24), CASToR integrates a castor-norm tool developped by Aurelien Coussat. It is based on a direct normalization approach and requires high statistic for the normalization data.
For your second question, it was indeed related to a computing optimization. The normalization factor is required for several processing at the event level, providing them in the acquisition datafile allows for a swifter processing.
Best,
Thibaut
Thank you Dr. Merlin,
Yes, I have seen that tool in the toolkit folders. I can also see that there is another tool “castor-includeNormIntoDatafilePET” which can be used to add norm factors to the datafile from the normalization file.
Regarding castor-norm, I see that it gets the histogram datafile of a normalization scan and generate the normalization file. I have a couple of questions as follows?
1- Does it matter what normalization phantom I use? I mean does it make a difference whether I use a big cylinderical phantom or an annular phantom as long as it is symmetrical and their dimensions are at least as big as the FOV dimensions?
2- In addition, there is a parameter
-img path_to_img.hdr
In the tool. Does it mean that first I need to reconstruct the normalization phantom using the data collected from the normalization scan with CASToR, and pass the path to the reconstructed image to castor-norm?
Best,
Seyyed
Hi Seyyed,
To my understanding, castor-norm is based on a direct normalization, unlike the paper from Pepin et al. which is based on a component-based normalization.
The principle of a direct normalization is simple : the normalization factor is given by the ratio between the expected projection and the measured projection.
The expected projection is the forward projection of the normalization phantom. This is why you have to provide the true image of the normalization phantom to castor-norm, rather than the reconstructed (hence, approximative) image of the normalization phantom.
Experimentally, it is better to use an annular phantom to neglect attenuation and scattered coincidences. If not, you have first to correct the measured data for attenuation and scattered coincidences. You shall also remove the random coincidences.
The downside of direct normalization is that you need a large number of coincidences per line-of-response. Direct normalization is very sensitive to the noise in the measured data.
Best,
Thank you very much Dr. Comtat,
It was a great explanation.
Is it the case that the true image of the normalization phantom in .img format should be voxelized in way that it has the same size (the same number of voxels in each direction) as the images we are going to reconstruct (any image and not the normalization phantom)?
Best?