80 likes | 235 Views
Examples for Standardization of IO and Internal Representation of Shape Analysis. Martin Styner, UNC Chapel Hill http://na-mic.org. Study. Pop. Pop. Subj. Subj. Subj. Subj. Subj. Subj. Data. Data. Data. Data. Data. Data. General File Organization.
E N D
Examples for Standardization of IO and Internal Representation of Shape Analysis Martin Styner, UNC Chapel Hill http://na-mic.org
Study Pop Pop Subj Subj Subj Subj Subj Subj Data Data Data Data Data Data General File Organization Study description file with references to populations Population description file with references to objects Description file with references to data Data files, e.g. images
Ex 1. Hippo Shape Analysis Manual Landmark Gray-value Normalization MRI Reformat SPHARM- PDM Shape Spherical Parameterization Hippocampus Segmentation via Model Deformation QC Shape & Corresp. Feature Computation e.g. Parcellation or Difference to Model Alignment & Scale Prior Models Standard for this QC of Features & Statistical Results Statistical Analysis Of Features
Ex 1: Hippo Shape Analysis • Input: Hippo surface segmentations from 2 populations • Output: Local shape difference between population
Study File without Models <?xml version="1.0"?> <!DOCTYPE STUDY_XML> <STUDY_XML category="y"> <STUDY_XML_version attribute="y" type=“float">1.0</STUDY_XML_version> <StudyName attribute="y" type="string">Stanley Schizophrenia Study</StudyName> <StudyId attribute="y" type=“string">st_NIHBlablabla</StudyId> <NumberOfPops attribute="y" type=“short">2</NumberOfPops> <Population category="y"> <PopulationName attribute="y" type=“string">Controls</PopulationName> <PopulationId attribute="y" type=“string">st_cnt</PopulationId> <PopulationNumber attribute="y" type=“unsigned short">1</Population Number> <PopulationRef attribute="y" type=“string">”pathToPop1File”</PopulationRef> </Population> <Population category="y"> <PopulationName attribute="y" type=“string">Schizos</PopulationName> <PopulationId attribute="y" type=“string">st_sz</PopulationId> <PopulationNumber attribute="y" type=“unsigned short">2</PopulationNumber> <PopulationRef attribute="y" type=“string">”pathToPop2File”</PopulationRef> </Population> <NumberOfTests attribute="y" type=“short">1</NumberOfTests> <StatTest category="y"> <StatTestName attribute="y" type=“string">NonParaLocTest</StatTestName> <StatTestNumber attribute= ="y" type=“unsigned short">1</StatTestNumber> <numPerms attribute="y" type=“unsigned int">50000</numPerms> <SurfPvalRawMapRef attribute="y" type=“string">”pathtoPvalMapSurface”</SurfPvalRawMapRef> <SurfPvalCorrMapRef attribute="y" type=“string">”pathtoPvalMapSurface”</SurfPvalCorrMapRef> <SurfT2MapRef attribute="y" type=“string">”pathtoT2MapSurface”</SurfT2MapRef> <MeanDiffGlobalPvalRaw attribute="y" type=“double">0.0014<MeanDiffGlobalPvalRaw> (and many more) </StatTest1> </STUDY_XML>
Study File with Template Model <?xml version="1.0"?> <!DOCTYPE STUDY_XML> <STUDY_XML category="y"> <STUDY_XML_version attribute="y" type=“float">1.0</STUDY_XML_version> <StudyName attribute="y" type="string">Stanley Schizophrenia Study</StudyName> <StudyId attribute="y" type=“string">st_NIHBlablabla</StudyId> <NumberOfPops attribute="y" type=“short">2</NumberOfPops> <Population category="y"> … </Population> <Population category="y"> … </Population> <NumberOfTests attribute="y" type=“short">1</NumberOfTests> <StatTest category="y"> … </StatTest1> <NumberOfModels attribute="y" type=“short">1</NumberOfModels> <Model category="y"> <ModelName attribute="y" type=“string">Mean Model from Controls in TAPS study<ModelName> <ModelId attribute="y" type=“string">mean_cnt_TAPS</ModelId> <ModelNumber attribute="y" type=“unsigned short">1</ModelNumber> <ModelRef attribute="y" type=“string">”pathToTemplateObjectFile”</ModelRef> </Model> </STUDY_XML>
Control Population File <?xml version="1.0"?> <!DOCTYPE POP_XML> <POP_XML category="y"> <POP_XML_version attribute="y" type="bool">1.0</POP_XML_version> <PopulationName attribute="y" type=“string">Control Population</PopulationName> (does not need to match with study file) <PopulationId attribute="y" type=“string">st_cnt</PopulationId> (needs to match with study file) <NumberOfSubjects attribute="y" type=“short">56</NumberOfSubjects> <Subject category="y"> <SubjectName attribute="y" type=“string">Cnt_5011</SubjectName> <SubjectId attribute="y" type=“string">5011</SubjectId> <SubjectNumber attribute="y" type=“unsigned short">1</Subject Number> <SubjectRef attribute="y" type=“string">”pathToSub1File”</SubjectRef> </Subject> … <Subject category="y"> <SubjectName attribute="y" type=“string">Cnt_8754</SubjectName> <SubjectId attribute="y" type=“string">8754</SubjectId> <SubjectNumber attribute="y" type=“unsigned short">56</Subject Number> <SubjectRef attribute="y" type=“string">”pathToSub56File”</SubjectRef> </Subject> </POP_XML>
Example Subject File <?xml version="1.0"?> <!DOCTYPE SUBJECT_XML> <SUBJECT_XML category="y"> <SUBJECT_XML_version attribute="y" type="bool">1.0</SUBJECT_XML_version> <SubjectName attribute="y" type=“string">Control 1950</SubjectName> <SubjectId attribute="y" type=“string">1950</SubjectId> <SubjectGenderDesc attribute="y" type=“string">Male</SubjectGenderDesc> <SubjectGenderCode attribute="y" type=“unsigned short">1</SubjectGenderCode> <SubjectAgeDesc attribute="y" type=“string">53 years</SubjectAgeDesc> <SubjectAgeCode attribute="y" type=“double">53</SubjectAgeCode> <SubjectRaceDesc attribute="y" type=“string">Caucasian</SubjectRaceDesc> <SubjectRaceCode attribute="y" type=“unsigned short">1</SubjectRaceCode> <SubjectFamSchizoDesc attribute="y" type=“string">1st degree family member with schizophrenia</SubjectFamSchizoDesc> <SubjectFamSchizoCode attribute="y" type=“bool">1</SubjectFamSchizoCode> <SubjectBinImgSegRef attribute="y" type=“string">”pathToBinaryImageSegmentation”</SubjectBinImgSegRef> <SubjectBinSurfSegRef attribute="y" type=“string">”pathToSurfaceSegmentation”</SubjectBinSurfSegRef> <SubjectRawSPHARMSurfRef attribute="y" type=“string">”pathToRawSPHARM”</ SubjectRawSPHARMSurfRef> <SubjectAligSPHARMSurfRef attribute="y" type=“string">”pathToAlignedSPHARM”</ SubjectAlignSPHARMSurfRef> (No scaling norm) <SubjectAligScaleSPHARMSurfRef attribute="y" type=“string">”pathToAlignedAndScaledSPHARM”</ SubjectAlignScaleSPHARMSurfRef> <SubjectRawSurfRef attribute="y" type=“string">”pathToRawPointBasedSurface”</ SubjectRawSurfRef> <SubjectAligSurfRef attribute="y" type=“string">”pathToAlignedPointBasedSurface”</ SubjectAlignSurfRef> <SubjectAligScaleSurfRef attribute="y" type=“string">”pathToAlignedAndScaledSurface”</ SubjectAlignScaleSurfRef> <SubjectDistToModel category="y"> <SubjectMeanDistValue attribute="y" type=“double">1.23</SubjectMeanDistValue> <SubjectDistMagMapRef attribute="y" type=“string">”pathToDistanceMagnitudeSurfaceMap”</ </SubjectDistMagMapRef> <SubjectDistVecMapRef attribute="y" type=“string">”pathToDistanceVectorSurfaceMap”</ </SubjectDistVecMapRef> <ModelName attribute="y" type=“string">Mean Model from Controls in TAPS study<ModelName> <ModelId attribute="y" type=“string">mean_cnt_TAPS</ModelId> <ModelRef attribute="y" type=“string">”pathToTemplateObjectFile”</ModelRef> <\SubjectDistToModel> <SomeOtherFeatureDesc attribute="y" type=“double">1234.56</SomeOtherFeatureDesc> </SUBJECT_XML> When using multiple scaling & alignment methods, then use separate subject files