[Gate-users] Digitizer modules for Gamma-Cameras/SPECT

Dimitrios Thanasas dthanas at uoa.gr
Fri Sep 16 12:27:27 CEST 2022


Dear Korbinian,

At the SPECT example of vGATE 8 the DIGITIZER is
# D I G I T I Z E R
#####

/gate/digitizer/Singles/insert adder
/gate/digitizer/Singles/insert blurring
/gate/digitizer/Singles/blurring/setResolution 0.10
/gate/digitizer/Singles/blurring/setEnergyOfReference 140. keV
/gate/digitizer/Singles/insert spblurring
/gate/digitizer/Singles/spblurring/setSpresolution 2.0 mm
/gate/digitizer/Singles/spblurring/verbose 0
/gate/digitizer/Singles/insert thresholder
/gate/digitizer/Singles/thresholder/setThreshold 20. keV
/gate/digitizer/Singles/insert upholder
/gate/digitizer/Singles/upholder/setUphold 190. keV

I slightly changed this DIGITIZER for my case (Siemens gamma camera, Tc-99m)
/gate/digitizer/Singles/insert adder
/gate/digitizer/Singles/insert blurring
/gate/digitizer/Singles/blurring/setResolution 0.09
/gate/digitizer/Singles/blurring/setEnergyOfReference 140. keV
/gate/digitizer/Singles/insert spblurring
/gate/digitizer/Singles/spblurring/setSpresolution 0.5 mm
/gate/digitizer/Singles/spblurring/verbose 0
/gate/digitizer/Singles/insert thresholder
/gate/digitizer/Singles/thresholder/setThreshold 119.4 keV
/gate/digitizer/Singles/insert upholder
/gate/digitizer/Singles/upholder/setUphold 161.6 keV

The simulated sensitivity was only 5-10% greater (I used different
collimators) than the nominal sensitivity given by the manufacturer
(without taking into account deadtime and crystalIQE).

As Matthew said: "I would recommend starting with a simple working case
and then build on one module at a time from there."

If you want to use
> /gate/digitizer/Singles/crystalblurring/setCrystalResolutionMin 0.099
> /gate/digitizer/Singles/crystalblurring/setCrystalResolutionMax 0.099

I would suggest to start running the simulation using greater window (e.g.
100-180 keV) without collimator, in order to collect the particles you
want quickly, make the histogram of their energy and see if the FWHM of
the photopeak is 10% or 20%.

I hope this will help you,

Best regards,
Dimitris


> Dear Dimitris,
>
> Thanks for the explanation.
>
> With my initial example, my count rates are too high, because I think
> quantum efficiency of the Photodetector and the crystal is not taken into
> account yet.
>
> When I use the old energy blurring and insert crystal blurring on top but
> with just setCrystalQE set to 1.0 (no resolutionmin/max), I get circa 10%
> of the counts as without the module inserted.
>
> Would for example
>
> /gate/digitizer/Singles/insert crystalblurring
> /gate/digitizer/Singles/crystalblurring/setCrystalResolutionMin 0.099
> /gate/digitizer/Singles/crystalblurring/setCrystalResolutionMax 0.099
> /gate/digitizer/Singles/crystalblurring/setCrystalQE 0.5
> /gate/digitizer/Singles/crystalblurring/setCrystalEnergyOfReference 140.5
> keV
>
> be valid to implement a 9.9% energy blurring with a 50% QE? Or which
> modules would you suggest if I want to include the 9.9% energy blurring
> and QE of 50%?
>
> Maybe my count rates were too low, because I was applying energy blurring
> twice (once with blurring and once with crystal blurring), and broadening
> the photo peak, so less hits are inside the energy window (?)
>
> I’m using a mono energetic 140.5keV source since I was doing experiments
> on the real gamma camera with tc99m pertechnetate. The real gamma camera
> also used the 126 - 154 keV energy window. I compare the gate simulations
> with the measurements.
>
> Cheers,
> Korbinian
>
>
>
>
> Am 15.09.2022 um 13:05 schrieb Dimitrios Thanasas
> <dthanas at uoa.gr<mailto:dthanas at uoa.gr>>:
>
> Dear Korbinian,
>
> Crystalblurring module is similar to (energy) blurring module.
> It does not affect the count rate. It affects the energy spectrum as it
> is
> the "error" of the energy of each photon detected by the system.
> This means that a photon of 140.5 keV will be detected with
> 140.5+/-(0.15-0.35)*140.5 keV (randomly).
> CrystalQE 0.9 means that the 90% of the detected photons are recorded by
> the system so it downgrades your count rate.
>
> I think it is easier to use blurring as you have at your initial example:
> /gate/digitizer/Singles/insert blurring
> /gate/digitizer/Singles/blurring/setLaw inverseSquare
> /gate/digitizer/Singles/blurring/inverseSquare/setResolution 0.099
> /gate/digitizer/Singles/blurring/inverseSquare/setEnergyOfReference 140.5
> keV
> (a photon of 140.5 keV will be detected with 140.5+/-(0.099)*140.5 keV).
>
> The "thresholder" module is one of the modules that affects your count
> rate
> /gate/digitizer/Singles/insert thresholder
> /gate/digitizer/Singles/thresholder/setThreshold 126.45 keV
> /gate/digitizer/Singles/insert upholder
> /gate/digitizer/Singles/upholder/setUphold 154.55 keV
>
> The above energies are more or less the photopeak of 99mTc.
>
> What energies do you use in your simulation?
>
> Best regards,
> Dimitris
>
>
>
> Hi,
>
> Thank you very much for your reply!
> I’ve read your preprint and implemented the modules dead time and pileup.
>
> However, I’m having trouble implementing the „Efficiency" module.
> The closest module I could find in the docs was the crystal blurring
> module which has a setCrystalQE parameter.
>
> But I don’t really understand the module. I don’t understand what the
> setCrystalResolution and setCrystalEnergyOfReference parameters are for.
> I tried all kind of combinations by commenting out parts of the crystal
> blurring to compare the result. But all the time, the count rates were
> very low.
> Even when I put setCrystalQE to 1.0 (so 100%) and did not use the
> CrystalResolution parameters, the count rate was still maybe 10% what the
> count rate is without the crystal blurring module inserted.
>
> Can anybody help with this module or is there another Efficiency module
> in
> the digitizer?
>
> Cheers,
> Korbinian
>
> Code of the module:
> /gate/digitizer/Singles/insert crystalblurring
> /gate/digitizer/Singles/crystalblurring/setCrystalResolutionMin 0.15 #I
> don’t understand those parameters
> /gate/digitizer/Singles/crystalblurring/setCrystalResolutionMax 0.35 #I
> don’t understand those parameters
> /gate/digitizer/Singles/crystalblurring/setCrystalQE 0.9
> /gate/digitizer/Singles/crystalblurring/setCrystalEnergyOfReference 140.5
> keV #I don’t understand those parameters
>
>
> Am 07.09.2022 um 15:32 schrieb Matthew Strugari
> <matthew.strugari at dal.ca<mailto:matthew.strugari at dal.ca><mailto:matthew.strugari at dal.ca>>:
>
> Hi Korbinian,
>
> You might be interested in talking a look at my preprint
> (https://assets.researchsquare.com/files/rs-1946160/v1_covered.pdf?c=1660749461)
> in which I validated a GATE model of a preclinical SPECT system. The
> examples you refer to are somewhat outdated and are not intended to be a
> thorough demonstration of a complete system. My preprint introduces the
> digitizer modules and methods I used for tuning the parameters to the
> best
> of my ability. For my study, count rates were matched with the
> efficiency,
> dead time, and pileup modules, and blurring parameters were set to yield
> simulation observables that matched measurement, i.e., simply setting the
> measured value for a blurring module may not produce an identical result
> in simulation, but that depends on the accuracy you desire.
>
> You will need to explicitly define each digitizer module that you would
> like to use to obtain their effects. I would recommend starting with a
> simple working case and then build on one module at a time from there.
>
> Best,
> Matthew
>
> On Sep 7, 2022, at 9:19 AM, Träuble, Korbinian Linus
> <korbinian.traeuble at tum.de<mailto:korbinian.traeuble at tum.de><mailto:korbinian.traeuble at tum.de>>
> wrote:
>
> 
> CAUTION: The Sender of this email is not from within Dalhousie.
>
>
>
> Dear all,
>
> I’m having trouble understanding the digitizer modules for SPECT/gamma
> cameras. According to the SPECT examples I’ve found only the adder,
> readout, blurring, spblurring and thresholds modules are used.
> But modules such as lightyield, transfer efficiency, quantum efficiency,
> crystal blurring are not yet taken into account in all of those examples.
> Are the former already covered by the definition of the crystal material
> (in my case, NaI(Tl) crystal) and blurring (in my case 10% @ 140keV)?
> Or do I need to define them additionally to the ones in my code to get
> realistic images?
> Also I don’t really understand based on the documentation how to apply
> the
> digitizer modules which are not part of my code yet, because it always
> throws a segmentation violations error.
>
> Based on my code the pictures look good qualitatively, but the count
> rates
> don’t match with real measurements.
>
> Would be glad to get some feedback.
>
> Cheers,
> Korbinian
>
>
> Code:
>
> ###CAMERA model
> /gate/world/daughters/name SPECThead
> /gate/world/daughters/insert box
> /gate/SPECThead/geometry/setXLength             300 mm     #
> /gate/SPECThead/geometry/setYLength             76.5 mm
> /gate/SPECThead/geometry/setZLength             300 mm     #
> /gate/SPECThead/placement/setTranslation        0 -20 0 mm
> /gate/SPECThead/setMaterial                     Air
>
> /gate/SPECThead/daughters/name crystal
> /gate/SPECThead/daughters/insert box
> /gate/crystal/geometry/setXLength             230 mm
> /gate/crystal/geometry/setYLength             6.5   mm
> /gate/crystal/geometry/setZLength             210 mm
> /gate/crystal/placement/setTranslation        0. -6. 0. mm
> /gate/crystal/setMaterial                     NaITl
>
> /control/execute
> mac/Collimator/collimator_for_{isotope}/hexagon_clinicV2.mac
>
>
>
> ###DIGITIZER
> /gate/digitizer/Singles/insert adder
>
> /gate/digitizer/Singles/insert readout
> #/gate/digitizer/Singles/readout/setPolicy TakeEnergyCentroid #this does
> not work somehow, but I thought might be better bcs my camera uses PMTs
> /gate/digitizer/Singles/readout/setDepth 1
>
> /gate/digitizer/Singles/insert blurring
> /gate/digitizer/Singles/blurring/setLaw inverseSquare
> /gate/digitizer/Singles/blurring/inverseSquare/setResolution 0.099
> /gate/digitizer/Singles/blurring/inverseSquare/setEnergyOfReference 140.5
> keV
>
> #spatialblurring
> /gate/digitizer/Singles/insert spblurring
> /gate/digitizer/Singles/spblurring/setSpresolution 3.2 mm
> /gate/digitizer/Singles/spblurring/verbose 0
>
> /gate/digitizer/Singles/insert thresholder
> /gate/digitizer/Singles/thresholder/setThreshold 126.45 keV
> /gate/digitizer/Singles/insert upholder
> /gate/digitizer/Singles/upholder/setUphold 154.55 keV
> _______________________________________________
> Gate-users mailing list
> Gate-users at lists.opengatecollaboration.org<mailto:Gate-users at lists.opengatecollaboration.org><mailto:Gate-users at lists.opengatecollaboration.org>
> http://lists.opengatecollaboration.org/mailman/listinfo/gate-users
>
> _______________________________________________
> Gate-users mailing list
> Gate-users at lists.opengatecollaboration.org<mailto:Gate-users at lists.opengatecollaboration.org>
> http://lists.opengatecollaboration.org/mailman/listinfo/gate-users
>
>




More information about the Gate-users mailing list