NA-MICNational Alliance for Medical Image Computing http://na-mic.org
XNATeXtenible aNatomy Archiving ToolkitSteve Pieper, PhD
Isomics, Inc.
Slides Courtesy
Dan Marcus, Washington U., St Louis
Randy Buckner, Harvard U.
National Alliance for Medical Image Computing http://na-mic.org
Topics
National Alliance for Medical Image Computing http://na-mic.org
NIH Data Sharing Policy• http://grants.nih.gov/grants/policy/data%5Fsharing/
National Alliance for Medical Image Computing http://na-mic.org
Additional Goals for Data Sharing Tools
• Tools should be painless and even helpful– Ideally you should want to use the tools independent of the Data
Sharing requirements• Tools should be compatible with existing methodologies
– DICOM transfers– easy upload/download of data for processing– database schema adaptable to application use cases
• Tools should not require excessive system or database administrator time committment
• Tools must be robust and efficient
NA-MICNational Alliance for Medical Image Computing http://na-mic.org
Building informatics tools for brain imaging research
Randy Buckner
Dan MarcusMay 10, 2006
National Alliance for Medical Image Computing http://na-mic.org
Data CaptureDATA INPUTS
NEUROIMAGING
GENETICS
OTHER SOURCES
National Alliance for Medical Image Computing http://na-mic.org
Data CaptureDATA INPUTS
NEUROIMAGING
GENETICS
OTHER SOURCES
BAD DATA
Integrity: Do I have the data?Quality Control: Are the data any good?
National Alliance for Medical Image Computing http://na-mic.org
Local UseDATA INPUTS
NEUROIMAGING
GENETICS
OTHER SOURCES
BAD DATA
Application: Can I do things with the data?Automation: Can I do these things automatically?
National Alliance for Medical Image Computing http://na-mic.org
CollaborationDATA INPUTS
NEUROIMAGING
GENETICS
OTHER SOURCES
BAD DATA
Access: Are colleagues getting the data they need?Security: Are colleagues getting data they shouldn’t?
National Alliance for Medical Image Computing http://na-mic.org
Public accessDATA INPUTS
NEUROIMAGING
GENETICS
OTHER SOURCES
BAD DATA
Privacy: Am I respecting the rights of the study participants?
Convenience: How usable are the data?
National Alliance for Medical Image Computing http://na-mic.org
QUARANTINE LOCAL USE COLLABORATION PUBLIC ACCESSCAPTURE
NEUROIMAGING
GENETICS
OTHER SOURCES
The XNAT workflow
• Quality control• Data archiving• Data access• Security
• Visualization• Automation• Integration• Data sharing
National Alliance for Medical Image Computing http://na-mic.org
What is XNAT?The Extensible Neuroimaging (anatomy) Archive Toolkit (XNAT) is…• A workflow• A data archive• Web-based productivity tools
New: XNAT is now part of the NA-MIC Kit– WashU is funded by NA-MIC to improve ease-of-installation and
interoperability with other tools
National Alliance for Medical Image Computing http://na-mic.org
More about XNAT
• Open Source– BSD-style license based on Slicer License
• DICOM Server– Push images directly to XNAT
• Can Attach Arbitrary Files to a Subject or Project• Web Interface, Java API, and Command Line Access Utilities• Leverages standard web database tools
– Java, Apache, Tomcat, Postgres• Active Developer and User Community
– Core developer group under Dan Marcus at Washington University Saint Louis
– Further development and application under Randy Buckner at Harvard
– Supported by BIRN, NA-MIC, and other projects
National Alliance for Medical Image Computing http://na-mic.org
The XNAT Architecture
Clientapplications
XNAT engine
Data storeRelationaldatabase
XFT
Data files
XMLSchemas
XMLSchemas
Jakarta Turbine
Actions Screens Display
XNAT API
Formhandler
Searchengine
Listgenerator
Databasegenerator
Reportgenerator
National Alliance for Medical Image Computing http://na-mic.org
Data DocumentsWelcome to XNAT
XNATGenerator
<?xml version="1.0" encoding="UTF-8"?><xs:schema xmlns:xnat="xnat.xsd"
xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"
attributeFormDefault="unqualified"><xs:element name="Database">
<xs:annotation><xs:appinfo>
<xnat:dbinfo database.name="CNDA" database="MYSQL"/>
</xs:appinfo></xs:annotation>
</xs:element><xs:element name="wm_mod_scheltens">
<xs:complexType><xs:sequence>
<xs:element ref="experiment"/><xs:element name="session_id"
type="xs:string"/><xs:element name="assessment">
…
<?xml version="1.0" encoding="UTF-8"?><xs:schema xmlns:xnat="xnat.xsd"
xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"
attributeFormDefault="unqualified"><xs:element name="Database">
<xs:annotation><xs:appinfo>
<xnat:dbinfo database.name="CNDA" database="MYSQL"/>
</xs:appinfo></xs:annotation>
</xs:element><xs:element name="wm_mod_scheltens">
<xs:complexType><xs:sequence>
<xs:element ref="experiment"/><xs:element name="session_id"
type="xs:string"/><xs:element name="assessment">
…
XML SchemaCRATE TABLE table (
name, VARCHAR(50), idMethod, VARCHAR(50),
DEFAULT 'null‘, type, VARCHAR(50),
ID INT UNSIGNED, NOT NULL AUTO_INCREMENT, PRIMARY KEY (ID)
); …
CREATE TABLE table_column ( name VARCHAR(50) javaName VARCHAR(50) primaryKey VARCHAR(50)
CRATE TABLE table (
name, VARCHAR(50), idMethod, VARCHAR(50),
DEFAULT 'null‘, type, VARCHAR(50),
ID INT UNSIGNED, NOT NULL AUTO_INCREMENT, PRIMARY KEY (ID)
); …
CREATE TABLE table_column ( name VARCHAR(50) javaName VARCHAR(50) primaryKey VARCHAR(50)
public class Experiment extends
org.cnl.cnda.om.BaseExperiment implements Persistent
{ public static final long
MILLIS_IN_DAY = 86400000;
public static long getDays(Calendar c1, Calendar c2)
{ long time1 =
c1.getTime().getTime();
public class Experiment extends
org.cnl.cnda.om.BaseExperiment implements Persistent
{ public static final long
MILLIS_IN_DAY = 86400000;
public static long getDays(Calendar c1, Calendar c2)
{ long time1 =
c1.getTime().getTime();
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
$page.setTitle("CNDA -- Integrating the Neurouniverse")
$page.setLinkColor($ui.alink)$page.setVlinkColor($ui.vlink)
<html><body>
<table border="0"><tr>
<td bgcolor="#336600"> …
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
$page.setTitle("CNDA -- Integrating the Neurouniverse")
$page.setLinkColor($ui.alink)$page.setVlinkColor($ui.vlink)
<html><body>
<table border="0"><tr>
<td bgcolor="#336600"> …
Database Schema
<?xml version="1.0" encoding="UTF-8"?><session id="050202_vc1000"> <subject map_num="0001"
lab_id="0001"> <age>78</age>
<gender>male</gender> <handedness>right</handedness>
<cohort>ADRC</cohort> </subject>
<session_info> <acq_date>5/1/2002</acq_date>
<pi>Randy Buckner</pi> <operator>Dan
<?xml version="1.0" encoding="UTF-8"?><session id="050202_vc1000"> <subject map_num="0001"
lab_id="0001"> <age>78</age>
<gender>male</gender> <handedness>right</handedness>
<cohort>ADRC</cohort> </subject>
<session_info> <acq_date>5/1/2002</acq_date>
<pi>Randy Buckner</pi> <operator>Dan
Java ClassesHTML Pages
National Alliance for Medical Image Computing http://na-mic.org
XNAT integrates storage, web, and exchange formats
Database
XML Webpages
National Alliance for Medical Image Computing http://na-mic.org
The XNAT workflow in practice
QUARANTINE LOCAL USE COLLABORATION PUBLIC ACCESSCAPTURE
NEUROIMAGING
GENETICS
OTHER SOURCES
National Alliance for Medical Image Computing http://na-mic.org
mBDR, Central, MyXNAT
• Morphometry BIRN Data Repository– Currated, User Support to Coordinate
Submissions• XNAT Central
– Anyone Can Create a Project and Upload• Your Local Database
– Run your own instance inside your firewall
National Alliance for Medical Image Computing http://na-mic.org
XNAT in practice: local use
StudyRelationship between white matter lesions and cognition in
nondemented aging and in early-stage Alzheimer’s Disease
InvestigatorsJeff Burns and colleagues at Washington University’s ADRC
XNAT’s roleData integration, automated image processing, image
visualization, data entry, quality control, data access
National Alliance for Medical Image Computing http://na-mic.org
XNAT in practice: local use
1. Data capture (& quality control
National Alliance for Medical Image Computing http://na-mic.org
XNAT in practice: local use
1. Data capture (& quality control)
2. Auto. Image processing (& more QC)
National Alliance for Medical Image Computing http://na-mic.org
XNAT in practice: local use
1. Data capture (& quality control)
2. Auto. Image processing (& more QC)
3. Online data analysis & entry (& more QC)
National Alliance for Medical Image Computing http://na-mic.org
XNAT in practice: local use
1. Data capture (& quality control)
2. Auto. Image processing (& more QC)
3. Online data analysis & entry (& more QC)
4. Exploration, download
National Alliance for Medical Image Computing http://na-mic.org
XNAT in practice: local use
1. Data capture (& quality control)
2. Auto. Image processing (& more QC)
3. Online data analysis & entry (& more QC)
4. Exploration, download
5. Offline analysis & publication
National Alliance for Medical Image Computing http://na-mic.org
XNAT in practice: collaboration
StudySASHA (Semi-automated shape analysis): quantitative
analysis of shape and size of cortical and subcortical brain regions in non-AD and AD adults.
InvestigatorsBIRN investigators at Washington University (Randy
Buckner), MGH (Bruce Fischl), BWH (Steve Pieper), and Johns Hopkins (Mike Miller)
XNAT’s roleData integration, distribution, image visualization
National Alliance for Medical Image Computing http://na-mic.org
XNAT in practice: collaboration
• Freesurfer
• 3D Slicer
• LDDMM
• Teragrid
• SRB
• XNAT
Image acquisition
Segment & visualization
Grid proc. & storage
Shape analysis
National Alliance for Medical Image Computing http://na-mic.org
XNAT in practice: public access
StudyOASIS: A Cross-sectional sample of MR images and related
data from 400 individuals across the lifespan, including 200 younger, 100 older non-demented, and 100 early stage AD
InvestigatorsDan Marcus, Randy Buckner, Tracy Wang, Jamie Parker,
Washington University’s ADRC
XNAT’s roleData integration, automated image processing, user interface,
image visualization, distribution
National Alliance for Medical Image Computing http://na-mic.org
Open Access Structural Imaging Series
• 400 subjects– 100 < 65 years old– 100 > 65 years old– 100 DAT
• 3 or 4 T1-weighted MPRAGE images for each subject
• 20 reliability scans
National Alliance for Medical Image Computing http://na-mic.org
XNAT-based OASIS website
National Alliance for Medical Image Computing http://na-mic.org
A review of where we’re atQUARANTINE LOCAL USE COLLABORATION PUBLIC ACCESSCAPTURE
NEUROIMAGING
GENETICS
OTHER SOURCES
National Alliance for Medical Image Computing http://na-mic.org
mBIRN: Data Sharing Applied toMorphometry and Disease
Alzheimer’s IndividualSubcortical SegmentationElderly Control
National Alliance for Medical Image Computing http://na-mic.org
mBIRN Goals
• Support Multi-Site Multi-
Vendor Structural
Neuroimaging Research
• Provide End-to-End Suite of
Tools and Techniques
– Sensitive Detection
– Large N for Statistical Power
• Support Scientific
Interpretation1 Year Volumetric Change
red/yellow 5-20% increase
blue 5-10% decrease
BIRN-ADNI Collaboration
National Alliance for Medical Image Computing http://na-mic.org
mBIRN Integration
BIRNBIRN
acquisitionprotocols
distortioncorrection
tools
local databases
workflows
analysis tools
populationstatistics
.
.
.
.
.
.
PubMedPubMed
IBVDIBVD
BrainInfoBrainInfo
Visualization&
Interpretation
Visualization&
Interpretation
(.xcat)(.xcat)
(.xar)(.xar)
National Alliance for Medical Image Computing http://na-mic.org
mBIRN Informatics
• BIRN Data Repository (BDR)• eXtensible Neuroimaging
Archive Tool (XNAT) http://www.xnat.org
• XML-Based Clinical Experiment Data Exchange Schema (XCEDE) http://www.xcede.org
• Stores Images, Demographics, Clinical Data, Analysis Results
• 3D Slicer Interoperability (currently read-only, read/write prototype exists)
National Alliance for Medical Image Computing http://na-mic.org
Query Atlas Module
• BIRN Scientific Interpretation Tool
– Compatible with fMRI and Morphometry Datasets in BIRN-
Standard Formats
• Provides a Link Between Images and Text Databases
– Uses Anatomic Labeling + Ontologies
– Links to Definitions, Publications, Quantifications
– E.g. Wikipedia, PubMed, IBVD, BrainInfo
National Alliance for Medical Image Computing http://na-mic.org
Query Atlas Features
• Input:.xcat or .qdec from .xar
• Hardware Accelerated
Interactive 3D Annotation
• Ontology Engine
– FreeSurfer, UMLS, BIRNLex,
NeuroNames, IBVD
– Interactive Browser
• Direct Browser Launch to
Search Sites using Selected
Terms
National Alliance for Medical Image Computing http://na-mic.org
QDEC
• Query, Design, Estimate, Contrast of Population Statistics– XNAT to Select
Subjects– FreeSurfer QDEC
Runs on Server– .QDEC file in .XAR
Web Download– Slicer3 Interactive
Visualization – Integrated with Query
Atlas