Difference between revisions of "2009 Winter Project Week GWE Catalogs"
(3 intermediate revisions by the same user not shown) | |||
Line 9: | Line 9: | ||
===Key Investigators=== | ===Key Investigators=== | ||
* UCSD: Marco Ruiz | * UCSD: Marco Ruiz | ||
+ | * WUSTL: Dan Marcus | ||
+ | * WUSTL: Kevin Archie | ||
+ | Addendum Project (GWE Introduction/Setup): | ||
+ | |||
+ | * MIND: H Jeremy Bockholt, Mark Scully | ||
+ | * IOWA: Hans Johnson | ||
+ | * BWH: Madeleine Seeland | ||
+ | * Mario Negri: Luca Antiga | ||
+ | * Ohio State: Shantanu Singh | ||
<div style="margin: 20px;"> | <div style="margin: 20px;"> | ||
Line 57: | Line 66: | ||
http://groups.google.com/group/xnat_discussion/browse_thread/thread/93d6e2643a46a0b6# | http://groups.google.com/group/xnat_discussion/browse_thread/thread/93d6e2643a46a0b6# | ||
+ | ---- | ||
+ | |||
+ | |||
+ | Meet with Dan Marcus and Kevin Archie to gather details on XNAT and its REST API functionality. Used information to create P2EL macros to query XNAT using the REST API (including transparent support for its required HTTP basic authentication). The following P2EL macros were tested successfully against the "http://central.xnat.org/" XNAT system to: | ||
+ | |||
+ | 1. Query all sessions and their respective scans for a specific subject: | ||
+ | |||
+ | <pre> | ||
+ | $xnat-sessions-scans($${XNAT_SYS},$${SUBJECT}) { | ||
+ | $${EXPERIMENTS}=$${XNAT_SYS}projects/CENTRAL_OASIS_CS/subjects/$${SUBJECT}/experiments?format=xml | ||
+ | $${TEXT}=/text() | ||
+ | $${SESSIONS}=$xpath(${EXPERIMENTS},//row/cell[1]${TEXT}) | ||
+ | $${SCANS}=$xpath($${EXPERIMENTS}/$${SESSIONS}/scans?format=xml,//row/cell[2]${TEXT}) | ||
+ | } | ||
+ | </pre> | ||
+ | |||
+ | 2. Stage (download) all the images of all the scans performed in all the sessions of all the experiments run over a particular subject (it is dependent on previous macro): | ||
+ | |||
+ | <pre> | ||
+ | $xnat-images($${XNAT_SYS},$${SUBJECT}) { | ||
+ | $${SS}=$xnat-sessions-scans($${XNAT_SYS},$${SUBJECT}) | ||
+ | ${IMAGE}=$xpath($${SS_EXPERIMENTS}/${SS_SESSIONS}/scans/${SS_SCANS}/files?format=xml,//row) | ||
+ | $${LOC}=$xpath($${IMAGE},/row/cell[4]${TEXT}) | ||
+ | $${FILE}=$in($${XNAT_SYS}/$${LOC}) | ||
+ | } | ||
+ | </pre> | ||
+ | |||
+ | Also, meet with Jeremy Bockholt and Mark Scully to come up with a simple custom catalog composed of a list of parameters for each of the study cases in a parameter exploration experiment. A generic XML schema will be created for this purpose with its respective P2EL parsing macro in the next release of GWE. | ||
+ | |||
+ | |||
+ | ---- | ||
+ | |||
+ | As an addendum project GWE was setup and introduced to the following researchers: | ||
+ | |||
+ | * Jeremy Bockholt and Mark Scully (MIND). Introduced and setup GWE. Successfully run a pipeline consisting of intensity standardization followed by predict lesions on data of 18 subjects. | ||
+ | * Hans Johnson (IOWA). Fully setup and discovered environmental constraints and needed future enhancements for GWE. | ||
+ | * Madeleine Seeland (BWH) and Luca Antiga (Mario Negri). Introduced and setup GWE and run test demos with it. Work with Madeleine towards getting her slicer module working with GWE. Work with Luca on specifications towards getting python modules to run as command lines executables (non-dependent on slicer) so they can be launched by GWE. | ||
+ | * Shantanu Singh (Ohio State). Introduced and setup GWE and run test demos with it. Resolved GWE's windows and cygwin related issues. | ||
</div> | </div> | ||
Line 63: | Line 110: | ||
</div> | </div> | ||
+ | |||
+ | ===References=== | ||
+ | |||
+ | *GWE Project Site: http://www.gridwizardenterprise.org | ||
+ | *XPath Parser Function: http://www.gridwizardenterprise.org/guides/p2el-semantics.html#xpath | ||
+ | *P2EL Macros: http://www.gridwizardenterprise.org/guides/p2el-macros.html | ||
+ | *XNAT: http://www.xnat.org/ | ||
+ | *XNAT REST API: http://nrg.wikispaces.com/XNAT+REST+API+Usage |
Latest revision as of 17:20, 9 January 2009
Home < 2009 Winter Project Week GWE Catalogs![]() Return to Project Week Main Page |
Key Investigators
- UCSD: Marco Ruiz
- WUSTL: Dan Marcus
- WUSTL: Kevin Archie
Addendum Project (GWE Introduction/Setup):
- MIND: H Jeremy Bockholt, Mark Scully
- IOWA: Hans Johnson
- BWH: Madeleine Seeland
- Mario Negri: Luca Antiga
- Ohio State: Shantanu Singh
Objective
To integrate GWE (Grid Wizard Enterprise) with XML based catalogs containing description of "experiments". An "experiment" is a set of inter independent process runs of a particular algorithm over a collection of parameters which can include algorithmic parameter exploration set and/or image set.
Approach, Plan
GWE is being enhanced with a XPath parser which allows it to introspect any XML file. This will allow GWE to read structured data from standard catalogs by creating the appropriate XPath expressions to query for this data. In that sense, for this project, we will need to:
- Identify standard (industry/community) XML types of catalogs that can describe an "experiment".
- Gather their XML schema and the knowledge on how to interpret its data to map to an "experiment".
- Generate the XPath expressions necessary to query the desired data from XML files conforming to those schemas.
- Create GWE function(s)/macro(s) to translate these catalogs into "experiment" descriptors (P2EL) for GWE to run.
Progress
Right now we are testing a rudimentary study case to run Slicer's bspline deformable registration of a hardcoded fixed image against images from the OASIS database which identifiers are read from this file:
http://www.gridwizardenterprise.org/test/oasis-id.xcat
With a P2EL command that looks like this:
${ITER}=$const(5,10,20) ${HIST}=$range(20,100,010) ${SAM}=$range(500,5000,200) ${FIX}=$oasis(0101,1) ${MOV}=$oasis_xcat(http://www.gridwizardenterprise.org/test/oasis-id.xcat) ${BSPLINE}=$bspline(${SLICER_HOME},${ITER},${HIST},${SAM}) ${OUT}=$uploadHDR(${SYSTEM.USER_HOME}/res-${FIX_ID}/${BSPLINE_EXPLORATION_ID}/out-${MOV_OASIS_ID}) ${BSPLINE_CMD} ${OUT_HDR} ${FIX_HDR} ${MOV_OASIS_HDR}
A new topic has been created with the XNAT discussion group to gather any standards they may have to offer:
http://groups.google.com/group/xnat_discussion/browse_thread/thread/93d6e2643a46a0b6#
Meet with Dan Marcus and Kevin Archie to gather details on XNAT and its REST API functionality. Used information to create P2EL macros to query XNAT using the REST API (including transparent support for its required HTTP basic authentication). The following P2EL macros were tested successfully against the "http://central.xnat.org/" XNAT system to:
1. Query all sessions and their respective scans for a specific subject:
$xnat-sessions-scans($${XNAT_SYS},$${SUBJECT}) { $${EXPERIMENTS}=$${XNAT_SYS}projects/CENTRAL_OASIS_CS/subjects/$${SUBJECT}/experiments?format=xml $${TEXT}=/text() $${SESSIONS}=$xpath(${EXPERIMENTS},//row/cell[1]${TEXT}) $${SCANS}=$xpath($${EXPERIMENTS}/$${SESSIONS}/scans?format=xml,//row/cell[2]${TEXT}) }
2. Stage (download) all the images of all the scans performed in all the sessions of all the experiments run over a particular subject (it is dependent on previous macro):
$xnat-images($${XNAT_SYS},$${SUBJECT}) { $${SS}=$xnat-sessions-scans($${XNAT_SYS},$${SUBJECT}) ${IMAGE}=$xpath($${SS_EXPERIMENTS}/${SS_SESSIONS}/scans/${SS_SCANS}/files?format=xml,//row) $${LOC}=$xpath($${IMAGE},/row/cell[4]${TEXT}) $${FILE}=$in($${XNAT_SYS}/$${LOC}) }
Also, meet with Jeremy Bockholt and Mark Scully to come up with a simple custom catalog composed of a list of parameters for each of the study cases in a parameter exploration experiment. A generic XML schema will be created for this purpose with its respective P2EL parsing macro in the next release of GWE.
As an addendum project GWE was setup and introduced to the following researchers:
- Jeremy Bockholt and Mark Scully (MIND). Introduced and setup GWE. Successfully run a pipeline consisting of intensity standardization followed by predict lesions on data of 18 subjects.
- Hans Johnson (IOWA). Fully setup and discovered environmental constraints and needed future enhancements for GWE.
- Madeleine Seeland (BWH) and Luca Antiga (Mario Negri). Introduced and setup GWE and run test demos with it. Work with Madeleine towards getting her slicer module working with GWE. Work with Luca on specifications towards getting python modules to run as command lines executables (non-dependent on slicer) so they can be launched by GWE.
- Shantanu Singh (Ohio State). Introduced and setup GWE and run test demos with it. Resolved GWE's windows and cygwin related issues.
References
- GWE Project Site: http://www.gridwizardenterprise.org
- XPath Parser Function: http://www.gridwizardenterprise.org/guides/p2el-semantics.html#xpath
- P2EL Macros: http://www.gridwizardenterprise.org/guides/p2el-macros.html
- XNAT: http://www.xnat.org/
- XNAT REST API: http://nrg.wikispaces.com/XNAT+REST+API+Usage