[Gate-users] what does each detector pixel record?

Howard lomahu at gmail.com
Thu Jul 7 16:03:37 CEST 2022


HI David,

Thank you very much for your swift response to my question. It is very
helpful. I will read the document carefully then and learn how to use the
information stored in root files. I am also grateful to your help with my
earlier question on the subscription issue.

Best,
Howard

On Thu, Jul 7, 2022 at 3:20 AM David Leibold <D.Leibold at tudelft.nl> wrote:

> Dear Howard,
>
> you are using the imageCT output, and according to the docs
> <https://opengate.readthedocs.io/en/latest/data_output_management.html?highlight=imageCT#image-ct-output>
> :
>
> "The *imageCT* output is a binary matrix of float numbers that stores the
> number of Singles per pixel and is produced for each time slice"
>
>
> Please note that this does reflect what a realistic detector would
> measure. A common CBCT detector outputs the deposited energy per pixel. To
> obtain this, you would need to access the root output and convert it to
> energy integrated projections yourself.
>
> Kind regards,
> David Leibold
>
>
>
> On 7 Jul2022, at 03:40, Howard <lomahu at gmail.com> wrote:
>
> Hi GATE users,
>
> I have been using GATE to simulate CBCT. One question I have been thinking
> to ask is: what does each detector pixel (set as the crystal sensitive
> detector) record, photon energy or photo number?
>
> Let's say the output of each run (one projection angle) is set as:
>
> # Specific CT Image output
> /gate/output/imageCT/enable
> /gate/output/imageCT/setFileName output_dir/proj
>
> What if I use ROOT output format?
>
> # Generic ROOT output
> #/gate/output/root/enable
> #/gate/output/root/setFileName output_dir/results
>
> My detector macro is set as follows for your reference.
>
> ####  General informations about the scanner
> # CT scanner for small animal imaging
> # 150 x 200 pixels in one module
> # Size of pixels : 0.4 x 0.3 x 3.0 mm3
> # Pixels are made up of silicon (no dead space between pixels)
> # This scanner is designed to be fixed (the phantom will rotate instead).
> # Let's position it perpendicular to the Z axis at a radial distance of 80
> mm.
>
>
> ## CTscanner system (this is the encompassing volume)
> # This first volume containing the scanner should have the same hard-coded
> name
> # as the one predefined in GATE (here CTscanner)
> # Create it as a box that can contain all pixels
> # Set it 80 mm away from the center of the world along the Z axis
> # Set material Air, and visualize it as a white wire frame
> /gate/world/daughters/name CTscanner
> /gate/world/daughters/insert box
> /gate/CTscanner/geometry/setXLength  60. mm
> /gate/CTscanner/geometry/setYLength  60. mm
> /gate/CTscanner/geometry/setZLength   3. mm
>
> /gate/CTscanner/placement/setTranslation 0. 0. 80. mm # original position
>
> #/gate/CTscanner/placement/setTranslation 0. -80. 0. mm # for parallel
> computing, 6/10/2022
> #/gate/CTscanner/placement/setRotationAxis 1 0 0 # for parallel computing,
> 6/10/2022
> #/gate/CTscanner/placement/setRotationAngle -90. deg # for parallel
> computing, 6/10/2022
>
>
> /gate/CTscanner/setMaterial Air
> /gate/CTscanner/vis/forceWireframe
> /gate/CTscanner/vis/setColor white
>
> ## The first component of the CTscanner is the module
> # CTSCANNER #   ---->   #  MODULE  #
> # Here we will use only one module, so just create it identical to the
> encompassing volume
> /gate/CTscanner/daughters/name module
> /gate/CTscanner/daughters/insert box
> /gate/module/geometry/setXLength  60. mm
> /gate/module/geometry/setYLength  60. mm
> /gate/module/geometry/setZLength   3. mm
> /gate/module/setMaterial Air
> /gate/module/vis/forceWireframe
> /gate/module/vis/setColor white
>
> ## The second component of the CTscanner is the cluster (located inside
> the module)
> # There are 3 possible clusters: cluster_0, cluster_1 and cluster_2
> #  MODULE  #   ---->   # CLUSTER_0 #
> # Here we will use only one type of clusters, so again just create it
> identical to the mother volume
> /gate/module/daughters/name cluster
> /gate/module/daughters/insert box
> /gate/cluster/geometry/setXLength  60. mm
> /gate/cluster/geometry/setYLength  60. mm
> /gate/cluster/geometry/setZLength   3. mm
> /gate/cluster/setMaterial Air
> /gate/cluster/vis/forceWireframe
> /gate/cluster/vis/setColor white
>
> ## The third component of the CTscanner is the pixel (located inside the
> cluster)
> # There are 3 possible pixels, one by cluster: pixel_0 (in cluster_0),
> pixel_1 (in cluster_1) and pixel_2 (in cluster_2)
> #  MODULE  #   ---->     # CLUSTER_0 #   ---->   # PIXEL_0 #
> # Here we will use only one type of pixels
> # The pixel size is 0.4 x 0.3 x 3 mm3
> # Visualize it as a solid object, color of your choice
> /gate/cluster/daughters/name pixel
> /gate/cluster/daughters/insert box
> /gate/pixel/geometry/setXLength 0.4  mm
> /gate/pixel/geometry/setYLength 0.3 mm
> /gate/pixel/geometry/setZLength 3. mm
> /gate/pixel/setMaterial Silicon
> /gate/pixel/vis/forceSolid
> /gate/pixel/vis/setColor red
>
> # Now we can repeat the pixel inside the cluster
> # We want 150 x 200 pixels
> # Note: the repeated objects will be automatically centered on the
> original position of the single volume
> # Set the correct number of repeated volumes and the repeat vector
> /gate/pixel/repeaters/insert cubicArray
> /gate/pixel/cubicArray/setRepeatNumberX 150
> /gate/pixel/cubicArray/setRepeatNumberY 200
> /gate/pixel/cubicArray/setRepeatNumberZ   1
> /gate/pixel/cubicArray/setRepeatVector 0.4 0.3 0. mm
> ## Attach to hard-coded CTscanner system (here only cluster_0 and pixel_0
> are used)
> # These commands allow GATE to make a link between the arbitrary volumes
> you defined and the predefined components of
> # the system in use (here the CTscanner). It is used to make a link with
> the output modules associated to the system
>
> /gate/systems/CTscanner/module/attach module
> /gate/systems/CTscanner/cluster_0/attach cluster
> /gate/systems/CTscanner/pixel_0/attach pixel
>
> ## Attach the pixel as the crystal sensitive detector
> # This command is used to specify which arbitrary volume is used as the
> sensitive volume.
> # All interactions occuring in this volume can be recorded and analyzed.
> /gate/pixel/attachCrystalSD
>
> Any feedback is greatly appreciated!
> Howard
> _______________________________________________
> Gate-users mailing list
> Gate-users at lists.opengatecollaboration.org
>
> https://urldefense.com/v3/__http://lists.opengatecollaboration.org/mailman/listinfo/gate-users__;!!PAKc-5URQlI!67bPBpIIzr875HeAUMeSrs7828w1G-bZ8m6naO_kMl-WbQbJhr7FgdgGTV-IPNGqrVtm2Q42MVT9EHaLrg$
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.opengatecollaboration.org/pipermail/gate-users/attachments/20220707/260c0454/attachment.html>


More information about the Gate-users mailing list