Skip to content

ENH: Improve PET run combination timing and decay metadata handling #325

Description

@mnoergaard

What would you like to see added in this software?

PETPrep currently supports --combine-runs for concatenating multiple PET runs, but the combined metadata should better preserve BIDS PET timing semantics when later runs use their own TimeZero.

In datasets where a subject leaves and returns under the same tracer injection, a later run may have FrameTimesStart beginning at 0, while InjectionStart is negative relative to that run’s TimeZero. For example, run 1 may start at injection/scanner time zero, while run 2 starts 7701 seconds later with InjectionStart: -7701. In this case, combined FrameTimesStart should place run 2 frames on the same time scale as run 1, rather than simply appending them after the previous run’s duration.

Requested behavior:

  1. Use TimeZero, ScanStart, and/or InjectionStart to reconcile all runs onto a shared timing reference.
  2. Merge FrameTimesStart, FrameDuration, and FrameReferenceTime accordingly.
  3. Preserve or update frame-wise metadata such as decay correction factors where possible.
  4. Consider whether decay-corrected runs need rescaling if each run was reconstructed relative to a different ImageDecayCorrectionTime.
  5. Add validation or warnings when the metadata are insufficient to combine runs quantitatively.

Do you have any interest in helping implement the feature?

Yes

Additional information / screenshots

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions