CATI Pitié-Salpêtrière CATI: A national platform for advanced Neuroimaging In Alzheimer’s...
-
Upload
esmond-chandler -
Category
Documents
-
view
218 -
download
0
description
Transcript of CATI Pitié-Salpêtrière CATI: A national platform for advanced Neuroimaging In Alzheimer’s...
CATI Pitié-Salpêtrière
CATI: A national platform for advanced Neuroimaging
In Alzheimer’s Disease
Standardized MRI and PET acquisitionsAcross a wide network of hospitals
Quality control
A portfolio of advanced image analysis pipelinesand machine learning techniques
for biomarker research
40 engineers and
clinical research assistants
CATI Pitié-Salpêtrière
ProvidersBuffer
MRI
QC
T1 MRI
QC
Rs fMRI
QC
Diff MRI
PETQC
FDG
PET
QC
AV45
PET
QC
SPECT
CentralizedDatabase
The factoryBrainVISA
Distributed R&D
Raw
data Processed dataOne color
= IP
Data
flow
CATI Pitié-Salpêtrière
MEG 3T 7T 11.7T 17T
PETSPECT
PET / CT
1.5Tmicro PET
7T animal PET
microtome
BrainVISA
BrainVISA is the backbone of I2BM
Mutualisation
CATI Pitié-Salpêtrière
What is BrainVISA ?
A pool of development environments Mainly in Python and C++
A multi-OS compilation, documentation packaging and distribution platform
A pipeline definition framework A fully customizable data organization system A powerfull and scriptable visualization tool A portfolio of application toolboxes A conductor software for playing with data and
toolboxes
CATI Pitié-Salpêtrière
What is BrainVISA ?
A pool of development environments Mainly in Python and C++
A multi-OS compilation, documentation packaging and distribution platform
A pipeline definition framework A fully customizable data organization system A powerfull and scriptable visualization tool A portfolio of application toolboxes A conductor software for playing with data and
toolboxes
CATI Pitié-Salpêtrière
Pipeline definition
eNode = ParallelExecutionNode( 'SulciRecognition', parameterized = self, optional=1)
eNodeL = ProcessExecutionNode( 'recognitionInterface‘, optional=1, selected=1)
eNode.addChild("LeftSulciRecognition", eNodeL)
eNodeR = ProcessExecutionNode( 'recognitionGeneral‘, optional=1, selected=1)
eNodeR._process.name = 'Sulci Recognition (right side)'
eNode.addChild("RightSulciRecognition", eNodeR)
Sulci recognition
Left sulci recognition
Recognition interface
Left sulci recognition
Recognition interface
CATI Pitié-Salpêtrière
Parallel processing with soma-workflow
Run jobs in parallel on any distributed computing resource
CATI Pitié-Salpêtrière
Soma-workflow main features
Unified interface to many resourcesSubmission of jobs or workflows to various computing resources possibly managed by various systems (such as Grid Engine, Condor, Torque/PBS, LSF..)
Python API and Graphical User InterfaceThe GUI provides an easy and quick way of monitoring workflows on various resources.
Workflow enginehandles the execution of workflows (a set of jobs with dependencies) on computing resource according to the jobs dependencies.
Remote access to computing resourcesThe communication with the remote computing resource is done with ssh and is transparent for the user.
DisconnectionsThe client/server architecture enables the user to close and restart the client application at any time without stopping jobs execution or loosing execution status information.
File transfersIf the user’s machine and the computing resource do not have a shared file system, soma-workflow can manage file transfers between the client and the computing resource.
http://brainvisa.info/soma-workflow
CATI Pitié-Salpêtrière
Processing is not enough
Computing a lot producing a lot of data
Need to organize data and processes Definition of a Schema
Need to extract information from data and processes Definition of a request language
Need database engine implementations
CATI Pitié-Salpêtrière
Use case examples
Everyday work Apply sulci segmentation process on all T1 MRI of subjects
older than 20 from CATI database I want the result on my laptop to do manual corrections offline
and put these correction in the database later
Data or pipeline sharing Could you try your wonderful new analysis pipeline on all
subjects in my database ?
Automation of quality control Check that length of each thalamus of adult healthy subjects
segmented today are > 4 cm and < 8 cm
CATI Pitié-Salpêtrière
BrainVISA customizable data schema
Hierarchy of types Raw T1 MRI
protocolsubjectacquisitionnormalization
T1 MRI Bias Corrected:protocolsubjectacquisitionanalysis
T1 MRI:protocolsubjectacquisitionnormalizationanalysis
Attributes
CATI Pitié-Salpêtrière
Link between database and file system
bijection
Raw T1 MRI: {protocol}/{subject}/t1mri/{acquisition}/<subject> {protocol}/{subject}/t1mri/{acquisition}/normalized_{normalization}_<subject>T1 MRI Bias Corrected: {protocol}/{subject}/t1mri/{acquisition}/{analysis}/nobias_<subject>
CATI Pitié-Salpêtrière
Future CATI architecture
BrainVISA
Database API Pipeline API
Database engines Computing resources