Slicer4:MultiVolumeContainer

From Slicer Wiki
Jump to: navigation, search
Home < Slicer4:MultiVolumeContainer
Back to Slicer4 Projects

Introduction

This page describes the concept for an API for time series management. What is needed is an image informatics frame work to organize, manage, and analyze multi volume data inside Slicer. If successful, this will allow more user-friendlyness.

Examples

  • R: RECIST analysis
  • M: Time Series Analysis of MRI's from an MS Patient
  • P: Time Series Analysis of SUV values in MR/CT PET
    • this has wider applicability for calculation of the changes in statistics of a certain parameter over an ROI (example: pharmacokinetic parameter, T2 value or ADC for monitoring treatment in prostate cancer)
  • D: Dynamic Contrast Enhancement (DCE)
  • T: NA-MIC TBI: multichannel multi time

Common Features and Needs

  • These are all time series of scalar volumes and need to be organized in a number of dimensions: space, time, signal intensities, feature space (such as channels in multichannel data, gradient strength in dMRI data, etc.)
  • Typically the volumes need to be registered to each other in order to organize them in space: Fusion between the channels, fusion across the time points
  • bias correction is often needed: MR, PET, CT(?)
  • Window/Level:
    • Allow manual setting of w/l for the reference time point.
    • CT: one w/l for all time points, PET, MR: the SUV concept could be expanded to MRI: use one or two user selected/drawn ROI to adjust window level across time points.

Viewing and Analysis

  • view across time: movie (loop, bounce)
  • graphing: resample across time
  • need to do analysis across time: ROI's (label map) for voxel statistics across time. Create spreadsheet / graph as result.
  • need to store the organizational frame work. When the patient comes for the next scan we need ability to add a time point, fix data (registration, w/l, update spreadsheet/graph)
  • need to calculate statistics over time for several volumes at each time point (motivating application: multiparametric MRI for treatment monitoring, PI F.Fennessy)

Workflows

Initial Setup of a MultiVolumeContainer

  • Assume that all data have been loaded into Slicer already
  • Create a new MultiVolumeContainer.
    • MVC's are always multi-channel. Single channel is just a special case.
    • User specifies the number of channels.
    • one of the volumes is assigned as the reference volume (default is the first loaded, user can change manually by clicking a checkbox)

Things you can do with MVC's

  • editing the MVC by adding or removing time points or changing their order
  • change the reference volume
  • assign registration types between the channels and between the time points
  • execute the registration cascade
  • adjust W/L across time for each channel using histogram equalization with manual override
  • across time analysis: time versus voxel-statistics or dimensions, static, interactive adjustments
    • special case for SUV across time
  • RECIST: determination at each time point, use previous one as initialization
  • Modeling: In addition to time versus voxel-statistics type of curves sometimes there is a need for modeling and parameter extraction.
    • DCE requires computation of the Tofts model: a curve is fitted to each voxel time course and different parameters are extracted per voxel.
    • NukMed uses other, similar formulas,
    • DWI to DTI uses the Stejskal formula (or similar). The resulting tensor fields are then used for further post-processing.

Implementation in Slicer 4

Steve Pieper: It seems that the generalized hiearchies in Slicer4 will be the right underlying layer

Summer 2011 Project Week Breakout Session

Attendees:

Agenda:

Meeting Notes

References:

  • 4D Image module in Slicer4
    • too many volume nodes in the node selectors
    • copy of the image data into a "front" reference volume for volume rendering

Proposed implementations:

  • one volume with multiple vtkImageData
  • volume hierarchies