KAHIBARO
Discord Login Register

47.11. Sorting Coincidences

Understanding Coincidence Sorting in PET

Coincidence sorting is the step where you transform a time-ordered list of singles into pairs of detections that are likely to originate from the same positron annihilation. In GATE, this sorting is handled by the coincidence digitizer, which examines singles, compares their detection times, and groups them into coincidence events according to specific timing rules and energy conditions.

Coincidence sorting sits after the singles creation and energy windowing in the digitizer chain. At this point, singles already have detector IDs, energies, and detection times that include energy and timing blurring. The coincidence module then uses only this information, it no longer sees the underlying particle tracks.

Coincidence Windows and Pairing Logic

The core idea of coincidence sorting is the coincidence time window. Two singles are considered a valid coincidence candidate if they occur within a specified time difference. In a typical non time of flight PET simulation, you set a symmetric window around zero, for example 4 ns. The coincidence logic then looks at two singles with times $t_1$ and $t_2$ and checks the absolute time difference.

Coincidence condition
Two singles form a coincidence if
$$|t_1 - t_2| \leq \Delta t_{\text{coin}}$$
where $\Delta t_{\text{coin}}$ is the coincidence time window.

In practice, the coincidence sorter inspects all singles that pass the energy window and searches for pairs that satisfy this condition. The algorithm is typically optimized so that it does not compare every single with every other one, but instead slides through time-ordered lists of singles. The important concept for you as a beginner is that the coincidence module only uses the singles it receives from the upstream digitizer, so if you apply strong energy or timing filters there, fewer singles enter the coincidence sorting step.

For each valid pair the sorter creates a coincidence event, with information about both detectors, both energies, and both times. This is the main data structure you will analyze later to build lines of response.

Configuring the Coincidence Digitizer in GATE

In OpenGATE, you configure coincidence sorting by adding a coincidence module to the digitizer chain. Although the exact API may evolve, the typical pattern is that you first define the singles digitizer output, then attach a coincidence module that reads those singles. Conceptually, you need to configure four main aspects: the input singles collection, the coincidence time window, the type of coincidence search, and optional additional constraints such as minimum and maximum multiplicity.

The coincidence window is usually specified in time units like $ns$, $ps$, or $ms$, and must be chosen consistently with your detector timing resolution. If your detector has a timing resolution of 400 ps full width at half maximum, setting a coincidence window of a few nanoseconds is reasonable for clinical PET. In a simulated system where you want to reduce randoms, you might test narrower windows.

You also specify whether coincidences are formed only between singles in different detectors or across all possible singles. For a typical ring PET, you usually want coincidences between detectors that lie on opposite sides of the patient, but GATE does not impose a geometry aware selection by default. Instead, it simply pairs singles according to their detection times and, optionally, their detector IDs as defined in your configuration.

Another important configuration concept is the gate or acquisition frame. Coincidences are normally searched within a time range corresponding to an acquisition frame. The simulation time and event timestamps must be consistent, otherwise singles from different frames could be incorrectly paired. For basic simulations, you usually work with a single continuous frame, so you do not need to handle complex frame-based logic yet.

Handling Multiplicity and Overlapping Events

Real PET data contain situations where more than two singles occur close in time. This is called multiplicity greater than two and it arises frequently at high count rates. The coincidence sorter must decide what to do when three or more singles fall inside the coincidence window.

There are different strategies, and GATE lets you choose them through configuration parameters. The two common approaches are simple pairing and strict two-fold coincidences.

In simple pairing, the sorter pairs singles in time order. Suppose three singles A, B, and C occur within the window. The algorithm may create coincidences (A, B) and (A, C), or (A, B) and (B, C), depending on the internal logic. This can increase the number of coincidences but may also include more random pairings. In strict two-fold mode, the sorter may reject events with multiplicity higher than two or apply additional rules to select only one pair. As a beginner, it is important to understand that the choice of multiplicity policy affects count rates and random fractions.

Multiplicity can be expressed both in terms of singles and detectors. For example, if two singles occur in the same detector module within a very short time, they may be treated differently than two singles in different modules. You can configure cuts on allowed detector IDs or module combinations, although this is more advanced and often left for detailed scanner modeling.

When count rates are low, such as in basic learning simulations, multiplicity is rare and coincidence sorting appears simple: almost every coincidence is a clean two-fold event. At higher activities, where random and scatter fractions grow, the precise handling of overlapping events becomes critical and is directly related to performance metrics like noise equivalent count rate.

Coincidence Sorting Output and Practical Use

After sorting, GATE generates a coincidence list that you can write to ROOT or other output formats. Each coincidence record usually contains the information of both singles: detector indices, energies, times, and possibly the event ID of the original particle history if you choose to keep it. In later chapters, you will learn how to classify these coincidences into true, scattered, and random events and how to construct lines of response for image reconstruction.

In the context of the practical PET example, once you have configured and run your coincidence digitizer, a typical workflow is to inspect a subset of the coincidence output to verify that energies lie within the expected PET energy window, time differences are mostly within the coincidence window with a distribution that reflects your detector timing resolution, and detector IDs look consistent with the scanner geometry.

Coincidence sorting is a computationally heavier step than singles processing, especially when you simulate large numbers of events. Choices like a very wide time window or insufficient filtering at the singles stage can significantly increase the number of candidate pairs that must be checked. When you design simulations, it is often efficient to begin with a reasonable coincidence window and relatively low activity in order to ensure that sorting behaves as expected before scaling up to more realistic scenarios.

Ultimately, coincidence sorting connects detector physics with quantitative PET performance. By adjusting the sorter configuration, you can explore how timing windows, detector resolution, and multiplicity handling influence the number and type of coincidences you obtain and, in turn, the quality of reconstructed PET images.

Views: 11

Comments

Please login to add a comment.

Don't have an account? Register now!