qiba: Calculating SUVs for PET Using QIBA Pseudocode

activityConcentrationR Documentation

Calculating SUVs for PET Using QIBA Pseudocode

Description

The standard uptake value (SUV) is calculated based on an 18F-FDG-PET acquistion using ancillary information contained in the DICOM data.

Usage

activityConcentration(pixelData, ...)

## S4 method for signature 'array'
activityConcentration(
  pixelData,
  CSV = NULL,
  seriesNumber = NULL,
  method = "qiba"
)

.activityConcentration(
  pixelData,
  CSV = NULL,
  seriesNumber = NULL,
  method = "qiba"
)

standardUptakeValue(pixelData, ...)

## S4 method for signature 'array'
standardUptakeValue(
  pixelData,
  mask = NULL,
  CSV = NULL,
  seriesNumber = NULL,
  method = c("qiba", "user"),
  prior = NULL,
  decayedDose = NULL
)

.standardUptakeValue(
  pixelData,
  mask = NULL,
  CSV = NULL,
  seriesNumber = NULL,
  method = c("qiba", "user"),
  prior = NULL,
  decayedDose = NULL
)

Arguments

pixelData

is a multidimensional array of signal intensities of class nifti.

...

additional arguments

CSV

is a data.frame that is the output from dicomTable and contains all necessary DICOM header fields.

seriesNumber

is the SeriesNumber that corresponds to the PET acquisition.

method

takes on two possible values (qiba and user), where QIBA pseudocode is used to calculate the SUVs or user-defined parameters are used.

mask

is a multidimensional array of logical values (only used when method = "user").

prior

is a list of DICOM header field names that are necessary for the SUV calculation under method = "user" or may be used to replace values from the DICOM header information when method = "qiba".

decayedDose

is the amount of the RadionuclideTotalDose after being corrected for residual dose in the syringe. This value is NOT usually corrected in the DICOM data.

Value

A list containing the following items

  • SUVbwis a multidimensional array, the same dimension as pixelData, that contains the standard uptake values.

  • hdris a list of DICOM header fields used in the SUV calculation.

  • decayTimeis the decay time calculated from the DICOM header information.

  • decayedDoseis the RadionuclideTotalDose, if taken from the DICOM header information, or the user-specified value.

  • SUVbwScaleFactoris \mbox{PatientsWeight}\cdot1000/\mbox{decayedDose}.

Note

Note, for GE scanners it is common for the RescaleSlope DICOM field to vary on a slice-by-slice basis. This is taken into account if a GE scanner is detected from the Modality DICOM field. However, the InstanceNumber is used to reorder the slices so they match the incoming NIfTI file of PixelData. If this is not correct it may be necessary to manually re-order the RescaleSlope field in the CSV data frame so that the activity concentration is calculated correctly.

Author(s)

Brandon Whitcher bwhitcher@gmail.com

References

https://qibawiki.rsna.org/index.php?title=Standardized_Uptake_Value_(SUV)

See Also

dicomTable, nifti


oro.pet documentation built on Aug. 20, 2022, 9:06 a.m.