Difference between revisions of "2013 Project Week:ColorHierarchies"

From NAMIC Wiki
Jump to: navigation, search
Line 19: Line 19:
 
<div style="width: 27%; float: left; padding-right: 3%;">
 
<div style="width: 27%; float: left; padding-right: 3%;">
 
<h3>Approach, Plan</h3>
 
<h3>Approach, Plan</h3>
From Marianna:
+
Approach
 +
 
 +
*From Marianna:
 
** start from the Head and Neck Atlas model hierarchy: http://www.na-mic.org/publications/item/view/2256
 
** start from the Head and Neck Atlas model hierarchy: http://www.na-mic.org/publications/item/view/2256
 
** she will provide a text file with the necessary description of the model hierarchy
 
** she will provide a text file with the necessary description of the model hierarchy
 +
 
Plan:
 
Plan:
 +
 
* create a data structure to save the new color table hierarchy (storable)
 
* create a data structure to save the new color table hierarchy (storable)
 
** extend the color table?
 
** extend the color table?
Line 29: Line 33:
 
** make sure leave the "sample" hierachy available as a base for multiple runs of the model maker
 
** make sure leave the "sample" hierachy available as a base for multiple runs of the model maker
 
* future plans: create color table hierarchies for all anatomic based color tables
 
* future plans: create color table hierarchies for all anatomic based color tables
 
+
*alternately, craft a sample .mrml file with the desired model hiearchy, using the Model modules GUI, then pass the file to the model maker
 
</div>
 
</div>
 
<div style="width: 27%; float: left; padding-right: 3%;">
 
<div style="width: 27%; float: left; padding-right: 3%;">
Line 57: Line 61:
 
* expand the mrml file that's passed to the model maker to include the full hierarchy and then fill it in
 
* expand the mrml file that's passed to the model maker to include the full hierarchy and then fill it in
 
** associate the hierarhcy with a color node so it's saved/restored?
 
** associate the hierarhcy with a color node so it's saved/restored?
 +
* During Project Week:
 +
** expanding ModelMaker.xml to accept a .mrml file as a parameter
 +
** in ModelMaker.cxx import the .mrml file with the extra model hierarchy nodes
 +
*** BUG: the parent node references aren't updated when importing this on top of the mini scene that Slicer passes to the model maker, which has a model hierarchy node with id number 1 while the color hierarchy mrml file has the same id
 +
** search for model hierarchy nodes with names that match the color names of the models and set the associated node id on them
 
</div>
 
</div>
 
</div>
 
</div>

Revision as of 18:19, 8 January 2013

Home < 2013 Project Week:ColorHierarchies

Key Investigators

  • Nicole Aucoin, BWH

Project Description

Objective

  • create a color table including color values for both models and model hierarchy groups.
  • update the model maker module to output a scene file that has a tree-like model hierarchy (instead of a flat one), with correct colors on the model and the hierarchy display nodes.

Approach, Plan

Approach

Plan:

  • create a data structure to save the new color table hierarchy (storable)
    • extend the color table?
  • create a new module that will let users build a model hierarchy from a color table
  • in the model maker, instead of having to create a new model heirarchy, select for example HeadAndNeckColorTableHierarchy
    • make sure leave the "sample" hierachy available as a base for multiple runs of the model maker
  • future plans: create color table hierarchies for all anatomic based color tables
  • alternately, craft a sample .mrml file with the desired model hiearchy, using the Model modules GUI, then pass the file to the model maker

Progress

  • Head and Neck Atlas 2012 Color Hierarchy text file
  • plain color file
  • mrml scene
  • Discussed this project during the NA-MIC Eng tcon Dec 27th:
    • could think about a realtionship defining node to be the most general
    • could load a scene that defines a hierarchy, then use it for the model maker
      • extend the scene that's passed into the model maker and returned populated with models
    • each label could have a key value, so parent=labelX (could also change the color name to be a key value pair)
    • in the file, enforce leading spaces to show hierarchy?
      • or use JSON?
{
label:100,name:skull,r:128,g:128,b:128,a:255,parent:201
}
  • or lump colors together in one:
color:{128,123,200,255}
  • extension .json? c++ library? vtk doesn't do it, python might, boost? there's JSON Spirit. or manual parsing (whitespace assumptions)?
    • need a reader and writer
  • create the structure through GUI, or write a text file and make a script that converts it to a MRML structure? for end users who want to use a GUI versus edit a text file
  • expand the mrml file that's passed to the model maker to include the full hierarchy and then fill it in
    • associate the hierarhcy with a color node so it's saved/restored?
  • During Project Week:
    • expanding ModelMaker.xml to accept a .mrml file as a parameter
    • in ModelMaker.cxx import the .mrml file with the extra model hierarchy nodes
      • BUG: the parent node references aren't updated when importing this on top of the mini scene that Slicer passes to the model maker, which has a model hierarchy node with id number 1 while the color hierarchy mrml file has the same id
    • search for model hierarchy nodes with names that match the color names of the models and set the associated node id on them