Difference between revisions of "2010 NAMIC Project week: Programmatic use of Volume Rendering module"
From NAMIC Wiki
(Created page with '__NOTOC__ <gallery> Image:PW-MIT2010.png|Projects List Image:genuFAp.jpg|Scatter plot of the original FA data through the genu of the corpus…') |
|||
(7 intermediate revisions by the same user not shown) | |||
Line 2: | Line 2: | ||
<gallery> | <gallery> | ||
Image:PW-MIT2010.png|[[2010_Summer_Project_Week#Projects|Projects List]] | Image:PW-MIT2010.png|[[2010_Summer_Project_Week#Projects|Projects List]] | ||
− | |||
− | |||
</gallery> | </gallery> | ||
==Key Investigators== | ==Key Investigators== | ||
− | * BWH: Andriy Fedorov | + | * BWH: Andriy Fedorov, Johannes Schick |
* NCI: Yanling Liu | * NCI: Yanling Liu | ||
* Isomics: Alex Yarmarkovich | * Isomics: Alex Yarmarkovich | ||
Line 15: | Line 13: | ||
<h3>Objective</h3> | <h3>Objective</h3> | ||
− | A number of modules in Slicer use volume rendering. However, none of them is using this functionality from Volume Rendering module in Slicer. | + | A number of modules in Slicer use volume rendering. However, none of them is using this functionality from [http://wiki.slicer.org/slicerWiki/index.php/Modules:VolumeRendering-Documentation-3.6 Volume Rendering module in Slicer]. |
− | The objective of this project is to | + | The objective of this project is to: |
+ | * provide example code (Tcl and/or C++) that allows to use volume rendering programmatically | ||
+ | * confirm that all the needed functionality available from volume rendering GUI is available from Tcl/C++ interfaces | ||
+ | * convert the existing modules that use VTK volume rendering to use the volume rendering module functionality | ||
+ | |||
+ | Questions to study: | ||
+ | * difference in performance and appearance between rendering label maps and greyscale images | ||
+ | * GPU/CPU switch while using pure VTK volume rendering | ||
</div> | </div> | ||
Line 25: | Line 30: | ||
<h3>Approach, Plan</h3> | <h3>Approach, Plan</h3> | ||
− | + | We will go through the basic functionality needed to add volume rendering to the code: | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | * create volume rendering scene | |
− | + | * visibility on/off | |
+ | * initialization of the opacity and color transfer maps | ||
+ | * switching between the volume rendering techniques and automatic identification of the techniques available on a given machine | ||
+ | Our hope is that by the end of the week this page will be self-contained for adding volume rendering to any GUI Slicer module. | ||
</div> | </div> | ||
Line 49: | Line 44: | ||
<h3>Progress</h3> | <h3>Progress</h3> | ||
− | + | Initial code for programmatic use of volume rendering is in the sandbox. Current limitation: opacity and color transfer functions cannot be adjusted programmatically. | |
− | |||
</div> | </div> | ||
Line 59: | Line 53: | ||
==Delivery Mechanism== | ==Delivery Mechanism== | ||
− | + | Tcl and Python examples are available: [http://viewvc.slicer.org/viewcvs.cgi/trunk/ProgrammaticVolumeRendering/?root=NAMICSandBox ProgrammaticVolumeRendering in SandBox] | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
==References== | ==References== | ||
</div> | </div> |
Latest revision as of 12:41, 25 June 2010
Home < 2010 NAMIC Project week: Programmatic use of Volume Rendering moduleKey Investigators
- BWH: Andriy Fedorov, Johannes Schick
- NCI: Yanling Liu
- Isomics: Alex Yarmarkovich
Objective
A number of modules in Slicer use volume rendering. However, none of them is using this functionality from Volume Rendering module in Slicer.
The objective of this project is to:
- provide example code (Tcl and/or C++) that allows to use volume rendering programmatically
- confirm that all the needed functionality available from volume rendering GUI is available from Tcl/C++ interfaces
- convert the existing modules that use VTK volume rendering to use the volume rendering module functionality
Questions to study:
- difference in performance and appearance between rendering label maps and greyscale images
- GPU/CPU switch while using pure VTK volume rendering
Approach, Plan
We will go through the basic functionality needed to add volume rendering to the code:
- create volume rendering scene
- visibility on/off
- initialization of the opacity and color transfer maps
- switching between the volume rendering techniques and automatic identification of the techniques available on a given machine
Our hope is that by the end of the week this page will be self-contained for adding volume rendering to any GUI Slicer module.
Progress
Initial code for programmatic use of volume rendering is in the sandbox. Current limitation: opacity and color transfer functions cannot be adjusted programmatically.
Delivery Mechanism
Tcl and Python examples are available: ProgrammaticVolumeRendering in SandBox