Difference between revisions of "EMSegmenter-CreateTask"

From Slicer Wiki
Jump to: navigation, search
Line 6: Line 6:
 
  <DIR> = for Slicer 3 as Slicer3/Modules/EMSegment/Tasks/ (source directory) and  
 
  <DIR> = for Slicer 3 as Slicer3/Modules/EMSegment/Tasks/ (source directory) and  
 
         for Slicer 4 as Slicer-build/share/Slicer-4.*/qt-loadable-modules/EMSegment/Tasks (build directory)
 
         for Slicer 4 as Slicer-build/share/Slicer-4.*/qt-loadable-modules/EMSegment/Tasks (build directory)
 
  
 
After following the instructions below the new task will consist of following files:
 
After following the instructions below the new task will consist of following files:
Line 15: Line 14:
 
  <DIR>/Hello-World/<atlas_file_N>
 
  <DIR>/Hello-World/<atlas_file_N>
  
 
+
== Step 1: Create Template without Preprocessing ==
 
* Create a new directory <DIR>/Hello-World
 
* Create a new directory <DIR>/Hello-World
  
Line 27: Line 26:
 
**  Name:          Hello World
 
**  Name:          Hello World
 
**  Pre-processing: None
 
**  Pre-processing: None
* Basically follow our EMSegmenter advanced tutorial, but create a simple tree
+
* Now follow up to Step 9 our [EMSegmenter advanced tutorial EMSegmenterTutorialAdvancedMode-Slicer-3.6.3-1.pdf ] with the following modifcations:
 
** load <DIR>/../Testing/TestData/MiscVolumeData/MRIHumanBrain_T1_aligned.nrrd
 
** load <DIR>/../Testing/TestData/MiscVolumeData/MRIHumanBrain_T1_aligned.nrrd
 
** Add a channel, call it T1, assign MRIHumanBrain_T1_aligned
 
** Add a channel, call it T1, assign MRIHumanBrain_T1_aligned
**  Create a simple anatomical tree (air and GM)
+
**  Create a simple anatomical tree (air, GM, ... )
**  Load atlas files only from <DIR>/Hello-World/
+
**  Load atlas files only from <DIR>/Hello-World/  
**  generate mean and covariance values
+
**  for Slicer 3 only: generate mean and covariance values  
**  specify node weights
+
* At step 9/9. click on 'Create Template File' and save the file under <DIR>/Hello-World.mrml. Hello-World.mrml now only consists of nodes needed to parameterize the EMSegmenter.  
* At step 9/9. click on 'Create Template File'
 
**  Save the file under <DIR>/Hello-World.mrml
 
**  The target node and some other unneeded nodes will be removed from the mrml scene and written to disk.
 
 
* Close Slicer
 
* Close Slicer
 +
 +
== Step 2: Include Preprocessing (Optional) ==
 +
For templates that do not include atlas files the following instructions are optional
 
* Copy our standard tcl file <DIR>/Template.tcl to <DIR>/Hello-World.tcl
 
* Copy our standard tcl file <DIR>/Template.tcl to <DIR>/Hello-World.tcl
* Adjust this tcl file to include your pre-processing pipeline.
+
* Edit <DIR>/Hello-World.tcl to customize/modify the pre-processing pipeline
* edit <DIR>/Hello-World.tcl to specify your own pre-processing
+
* Edit <DIR>/Hello-World.mrml to use your own pre-processing by replacing  <EMSGlobalParameters ... TclTaskFilename="GenericTask.tcl" ... > with  <EMSGlobalParameters ... TclTaskFilename="Hello-World.tcl" ...>
* edit <DIR>/Hello-World.mrml to use your own pre-processing
 
** - <EMS TclTaskFilename="GenericTask.tcl" ></EMS>
 
** + <EMS TclTaskFilename="Hello-World.tcl" ></EMS>
 
* For Slicer 3 only :
 
touch ../Slicer3/Modules/EMSegment/CMakeLists.txt and do a 'make' to copy the new files into the binary directory
 
  
 +
== Step 3: Update Slicer Build (only for Slicer 3) ==
 +
touch <DIR>/../CMakeLists.txt and do a 'make' to copy the new files into the binary directory
  
The result of the process above can also be downloaded here:
+
When you start Slicer again 'Hello World' should appear in the task list of the EMSegmenter.
After Installing both files this 'Hello World' task will appear in the task list under the name 'Hello World'.
 
  
 
=EMSegmenter-Task Template=
 
=EMSegmenter-Task Template=
 
Please use this [[EMSegmenter-Tasks:Template| wiki page]] as a template for you task specific Wiki page.
 
Please use this [[EMSegmenter-Tasks:Template| wiki page]] as a template for you task specific Wiki page.

Revision as of 21:44, 2 August 2012

Home < EMSegmenter-CreateTask

Return to EMSegmenter Task Overview Page


Task creation process - for developer

The goal is to create a task with the name 'Hello World' in Slicer 3 and Slicer 4. Before doing so, we define

<DIR> = for Slicer 3 as Slicer3/Modules/EMSegment/Tasks/ (source directory) and 
        for Slicer 4 as Slicer-build/share/Slicer-4.*/qt-loadable-modules/EMSegment/Tasks (build directory)

After following the instructions below the new task will consist of following files:

<DIR>/Hello-World.mrml
<DIR>/Hello-World.tcl
<DIR>/Hello-World/<atlas_file_1>
[...]
<DIR>/Hello-World/<atlas_file_N>

Step 1: Create Template without Preprocessing

  • Create a new directory <DIR>/Hello-World
  • Copy the atlas files for air, CSF, greymatter, whitematter, and T1 from <DIR>/MRI-Human-Brain into this directory.
  • Start Slicer
  • Set Scene of Slicer to <DIR> by saving scene in <DIR>. Afterwards remove resulting mrml file from <DIR> as it is not needed anymore
  • Switch to the EMSegmenter module
  • Create new task
    • Name: Hello World
    • Pre-processing: None
  • Now follow up to Step 9 our [EMSegmenter advanced tutorial EMSegmenterTutorialAdvancedMode-Slicer-3.6.3-1.pdf ] with the following modifcations:
    • load <DIR>/../Testing/TestData/MiscVolumeData/MRIHumanBrain_T1_aligned.nrrd
    • Add a channel, call it T1, assign MRIHumanBrain_T1_aligned
    • Create a simple anatomical tree (air, GM, ... )
    • Load atlas files only from <DIR>/Hello-World/
    • for Slicer 3 only: generate mean and covariance values
  • At step 9/9. click on 'Create Template File' and save the file under <DIR>/Hello-World.mrml. Hello-World.mrml now only consists of nodes needed to parameterize the EMSegmenter.
  • Close Slicer

Step 2: Include Preprocessing (Optional)

For templates that do not include atlas files the following instructions are optional

  • Copy our standard tcl file <DIR>/Template.tcl to <DIR>/Hello-World.tcl
  • Edit <DIR>/Hello-World.tcl to customize/modify the pre-processing pipeline
  • Edit <DIR>/Hello-World.mrml to use your own pre-processing by replacing <EMSGlobalParameters ... TclTaskFilename="GenericTask.tcl" ... > with <EMSGlobalParameters ... TclTaskFilename="Hello-World.tcl" ...>

Step 3: Update Slicer Build (only for Slicer 3)

touch <DIR>/../CMakeLists.txt and do a 'make' to copy the new files into the binary directory

When you start Slicer again 'Hello World' should appear in the task list of the EMSegmenter.

EMSegmenter-Task Template

Please use this wiki page as a template for you task specific Wiki page.