2009 Summer Project Week Slicer3 XNAT usecases

From NAMIC Wiki
Jump to: navigation, search
Home < 2009 Summer Project Week Slicer3 XNAT usecases

XNAT interface Worksheet

Goals:

  • Determine User Interface Requirements for representative use cases
  • Determine Webservices API Requirements for representative use cases
  • Determine sufficiency of XNAT Data Model for representative use cases



NOTES

Group looks at XNAT Enterprise and XNAT Desktop user interfaces

General comments/questions

XNAT Enterprise 9-10AM

  • Can you have templates for creating directory structures on XNE? Dan recommends using script using webservices API to implement that template.
  • Can we upload other formats besides DICOM> Dan demonstrates how to create a new folder with custom name (NRRD) into which we can subsequently upload. This may also be done using a script, using webservices API or using XNDesktop.
  • Can share data with another project-- new project contains *links* to data from parent project. How do permissions work in this case? Bound by permissions of parent project.
  • Sharing: multi-site projects -- each site have their own project; each site shares its data with collaborating sites. (this can be done now using REST API).
  • Scientists in multi-site study download data from a single site's shared project. Work on that data.
    • Want to upload new/derived data to that single site's shared project and then
    • Want to share them back with other sites. Possible? This requires some clarification.
  • Confusion about difference between assessors and reconstructions (reconstruction doesn't have concept of additional values yielded by processing -- assessors (like a FreeSurfer analysis) have their own XML specifications to contain specialized values ).
  • XNAT Desktop: are their paradigms for setting tags? XND has its own set of default tags, and lets you set your own. But not clear what tags you need to set. Misha is working on this for now. For instance, there is a modality tag, but easy to forget to provide it.
  • XNE GUI lets you store a search -- convenient to use as a template to grab data of interest.
  • Are stored searches associated to project, to user? Now associated to a user; a user can share these with other users.
  • How are web forms integrated (need to author screen class/template/action, maybe other java classes too for something more complicated, for each web form and install in your instance of XNATE)
  • Options menu (within search) can be extended for processing (batchmake, loni pipeline)

XNAT Desktop (10-10:30AM)

  • Desktop interface with file system & tag view.
  • Manage files, apply metadata (apply automated rule or apply individual tags).
  • DICOM rule is customizable, and may need to be adapted for individual use cases.
  • Uses XNAT Data model,plus extra tags.
  • Exchanges data with XNATE (download / upload)
  • In order to upload from XNDesktop to XNE, the project needs to exist on XNE but no other tags are enforced.
  • A project with incomplete metadata may upload to XNE in an less useful manner.
  • Do we need to use the Web GUI & the Desktop GUI? WebGUI to create project, and XND to tag/upload? (Rather than a rich client interface like a PAX system) Can develop your own rich client interface to Webservices? Right now have not connected to PAX, but that is in the plan.
  • Users will want to query for studies on patient, preview individual slices (maybe), look at how many studies there were for a patient, what modalities are present, (through a PAX-like interface) and download studies of interest.
  • Can connect to another instance of XND, or an instance of XNE -- open remote connection, browse projects, right-click gives you option to download. Can select destination, apply data filters for download
  • XND supports hierarchical data model -- but can customize your own hierarchy.
  • Has data import wizard... extracts and also applies new metadata on import. Can capture metadata from folder structure (if structure is defined in a 'descriptor document' -- what is this?) Can apply additional tags as well.
  • Wizard cannot save a template, but retains its settings between uses.

Comments

  • Nomenclature: terminology for same concepts differs across fields and specialties

Use Case 1: Image Guided Therapy Planning and in OR

XNAT IGTUseCase.png

Workflow

Step1. Subject is scanned and data is pushed to a networked disk (and referenced by a PACS system) automatically.

Step2. Researcher1 uses an XND client (on a laptop or a desktop system) to

  • apply metadata (DICOM rule sufficient?)
  • upload data to XNAT repository

Step3. Researcher2 opens slicer and querieswebservices for a list of subjects.

  • Query for all subjects on system
  • Choose a subject, query for available data...
  • Browse results
  • download data of interest

Step4. Completed neurosurgical planning analysis

  • create mrml scene with segmentations, fiber tracking, etc.
  • apply metadata (need custom metadata) --must be quick/easy to do
  • Push an entire directory (includes NRRD, XML, DICOM, JPEG, MRML, related to a single subject.)
  • Can we create MRML scene, save as a 'structural report or DICOM object' back to PAX -- why have XNAT at all? Tough to get data into PAX. Especially research data (like Slicer analyses). but maybe think of XNAT as a PAX substitute with richer interface.
  • and upload results -- must be quick/easy to do (drag/drop, with confirmation0).

Step5. In IGT, search for and download scene for patient (subject) Clinician cuts network link to remote repository (all files are locally cached so OR system is self sufficient).

Notes:

  • download scene through slicer (from XNAT or local) is sufficient. May like a richer PAX-like interface for browsing available scenes. (might be several scenes worked up for a single patient...)
  • Data doesn't need to go to Enterprise -- just needs to be managed so OR and clinician scientists have access.
  • Existing data model may not be optimal (project?) Should be able to refer to subject alone, populated from original DICOM information. Hidden project? No need for extra tags -- so cumbersome to walk thru metadata wizard... simpler?




Use Case 2: Radiation Treatment Planning

XNAT RTPlanningUseCase.png

Workflow

Step1. Patient is scanned, annotated on GeSim, and data is pushed to XNAT (and referenced by a PACS system) automatically.

  • possibly DICOM DCMRT metadata automatically applied
  • other assessors (respiratory data...) may be collected and described manually, uploaded to XNAT using client GUI.

Step2. Scientist/Clinician queries for patient data & browses results using GUI, downloads to RT planning software

Step3. Scientist/Clinician uploads plan in progress (drag & drop?). DICOM DCMRT metadata automatically applied at upload.

Step4. Researcher queries for case data & browses results using GUI, downloads to local disk for study.

NOTES:

  • GESim is a 'staging area' data is annotated and then pushed out to PAX-like system currently.
  • Goal: to push image studies and treatment plan with DICOM markup to XNE
  • patients return for multiple visits for treatment so
    • longitudinal imaging and
    • longitudinal treatment plans will also be collected
  • fix the workflow: patient, diagnosis, treatment plans (DICOMRT + proprietary (beam angles etc.)) treatment & followup.
  • how is treatment plan fit? associated with a CT data set, but searching will always be based on patient.
  • diagram should include MR CT/PET
  • Interface to commercial systems?
  • Appropriateness of XND for tagging & upload of non-imaging assessors?
  • Specific user requirements for metadata authoring and upload client software?
  • Would you want to Query on info in the treatment plan? Could generate custom rule for extracting proprietary info, but could be hairy. Plans have names (probably show up on the filename or directory name) but useful as a tag. Custom markup could be notes that could be for research purposes. Treated with a special procedure,
  • Introduce data anonymization in the diagram somewhere.... Where does this fit in the workflow? Need the ID of data for treatment, but want anony for research...
    • (Is there a built-in DICOM anonymizer in XNAT? -- Dan says yes.)
    • Encrypt patient name?
    • Or encoded mapping between patient name and anonymized ID




Use Case 3: Quality Control Processing of Large Studies

XNAT QCUseCase.png

Workflow

Step 1. Multiple study sites acquire imaging data and other assessors

Step 2. Combination of automatic (DICOM) and manual (custom?) markup of data and upload to central repository

Step 3. QC batch client 1 automatically queries for (site/subject/scanID), retrieves, processes data, generates report and notifies any site of errors in (or missing) datasets. Additional processing may be performed (de-identification of data)...

Step4. Additional metadata may be automatically applied (provenance?) and data is uploaded.

Step5. QC batch client 2 (automatically?) queries for (site/subject/scanID), retrieves, allows visual inspection of data and report generation.

Step6. Report is automatically uploaded and associated with image data.

Notes:

  • Large number of sites, number of modalities
  • want simple interface: push this DICOM data to XNAT, or central repository at IOWA
  • also want the upload to automatically look at dicom tags and validate that protocol was followed.
  • if not (slice spacing is off...) that a message gets sent automatically (email?) saying "protocol was off on this scan!" immediately. So the site can immediately reacquire the image and resubmit.
  • need the validation to be done at the scanner serial number level... so this information needs to also be set as metadata...
  • Need to validate on several parameters. flip angle, TE, slice thickness, ..., by scanner type, serial number, series type (formatted string).
  • Need to validate on upload: patientID is patientName ONLY 4 digits -- has to be specified (if DICOM file does not have four digit patientName, stop.) Auto-insert these from DICOM
  • Need to automatically strip out SSN and other identity info from DICOM (anonymization) on upload too.
  • DICOM browser will not be part of XNAT but useful tool and some of its features could be important into XND.
  • Looking at new DICOM uploader applet:
    • cannot yet create a new subject (but feature may be added)
    • pops up file browser for choosing files to upload
    • grabs files and uploads (does the anonymization and DICOM field editing in a specified way, on a per-project manner). XNE does DICOM metadata mapping on upload, (on server side?)
  • Could to do Validation on server side -- since some scanners can directly do DICOM push to DICOM uploader. Uploader would ask server how to anonymize, and does it.
  • When you did validation -- get a pop-up box with report with info.
  • Want to validate prior to upload; if validation fails, site gets to REDO prior to upload (unless they choose to upload failing dataset.)
  • Needs this process/workflow to be easy to teach and easy for people to remember.
  • What QC is performed? Visual inspection of raw data; Hans will send QC procedure to Dan -- formal QC plan designed by consortium. Dan would like to implement a universal QC form on XNE; could use this as example of best practices.
  • XNE currently allows projects to 'quarrantine' data -- quarantined data shows up in searches in different color to indicate its questionable quality.
  • Use case needs customizable validation rule for getting out of quarrantine: Session contains multiple T1s, multiple T2s, etc. If ALL T2 scans are bad, then entire session is bad. However, if some T2 scans are ok, then Session may be ok. Some studies may require a single T1 and single T2...
  • Might want to apply a label to data saying "This one is the best scan to use" -- right now infer this from computing a 'score'. Dan/Tim would like to see the rules for computing this score.
  • Best way to get data in?:
    • DICOM push from scanner
    • DICOM uploader applet -- may be appropriate for this use case. Easy instructions, anonymization built in.
    • XNDesktop interface (too heavy)
    • DICOM browser (too powerful for this use case (errors))



Use Case 4: Longitudinal Studies

XNAT LongitudinalUseCase.png

Workflow

Step1. Imaging data and other assessors (induced pathology, etc.) are acquired and saved to a network disk.

Step2. Research assistant uses GUI to apply metadata at capture, or subsequently & uploads to XNAT.

  • Need to specify whether subject is control or experimental
  • Imagedata is typically in non-standard DICOM format.
  • Need to associate new data to existing (or new) subject in longitudinal study -- need entities for:
    • modality
    • subject
    • timepoint
    • ...?

Step3. Researcher queries for data using GUI, browses results and downloads to vendor tools for analysis.

Step4. Researcher generates derived data,

  • applies metadata (provenance? and maybe notable parameters of interest).
  • associates to subject or study (population)
  • and uploads via GUI

NOTES:



Use Case 5: Population Studies

XNAT PopulationuseCase.png

Step 1. Multiple sites acquire multi-modal imagedata, across multiple visits for multiple subjects.

Step 2. All acquired data has metadata applied (combination manual and automatic) Metadata enables association of all collected data with individual subject. Among other important descriptions, subjects must be distinguished as either controls or experimental

Step 3. Data is uploaded to XNAT, either automatically or manually via a GUI.

Step 4. Pre-processing (& QA?) client automatically queries for datastes, downloads, pre-processes data.

Step 5. Client software adds custom metadata that includes provenance, descriptions of any 'limitations' of data that may affect its shared use & automatcially uploads data/metadata back to XNAT.

Step 6. Processing/Analysis client automatically queries for datasets, downloads, processes and generates derived data.

Step 7. Client software adds custom metadata that includes provenance, descriptions that associate metadata with subject or study & automatically uploads to XNAT.

Step 8. Scientist using Analysis/Visualization client searches for data of interest, browses results & downloads using client GUI. May derive new data, apply metadata & upload using client GUI.

GUI Requirements

Webservices API Requirements

Metadata Requirements or Data Model modifications