Difference between revisions of "Modules:VolumeRendering-Documentation-3.5"

From Slicer Wiki
Jump to: navigation, search
 
(22 intermediate revisions by 4 users not shown)
Line 22: Line 22:
 
===Authors, Collaborators & Contact===
 
===Authors, Collaborators & Contact===
 
* Yanling Liu, SAIC/NCI-Frederick, Alex Yarmarkovich, Isomics, SPL
 
* Yanling Liu, SAIC/NCI-Frederick, Alex Yarmarkovich, Isomics, SPL
* Andreas Freudling, Student Intern at SPL (freudling@bwh.harvard.edu)  
+
* Andreas Freudling, Student Intern at SPL (freudling at bwh.harvard.edu)  
* Contact: Alex Yarmarkovich, alexy@bwh.harvard.edu, Yanling Liu, liuy5@mail.nih.gov
+
* Contact: Alex Yarmarkovich, alexy@bwh.harvard.edu, Yanling Liu, liuy5 at mail.nih.gov
  
 
===Module Description===
 
===Module Description===
Line 31: Line 31:
  
 
===Examples, Use Cases & Tutorials===
 
===Examples, Use Cases & Tutorials===
 +
 +
* Pausing VolumeRendering module in scene loading
 +
The VolumeRendering module can be paused in scene loading by un-checking the "Monitor Scene Loading Event" check button. Re-checking the check button will flush the paused pipeline and initialize the module using the loaded scene.
  
 
* Software Ray Casting
 
* Software Ray Casting
 
* GPU (GLSL) Ray Casting
 
* GPU (GLSL) Ray Casting
 
* GPU (GLSL) Ray Casting II (Multi-Volume Rendering)
 
* GPU (GLSL) Ray Casting II (Multi-Volume Rendering)
[[Image:multi-vol-bg-composite.png|thumb|320px|Bg volume only]]
+
Volume rendering both background and foreground volumes. Background volume is rendered using compositing. Foreground volume is rendered using MIP. Background and foreground volumes are rendered together using alpha blending.
 +
 
 +
{|
 +
|[[Image:multi-vol-bg-composite.png|thumb|320px|Bg volume only (Composite)]]
 +
|[[Image:multi-vol-bg-composite-fg-mip-alpha_blending.png|thumb|320px|Bg and Fg volume (Alpha Blending)]]
 +
|[[Image:multi-vol-fg-mip.png|thumb|320px|Fg volume only (MIP)]]
 +
|}
 +
 
 
* OpenGL Texture Mapping
 
* OpenGL Texture Mapping
 +
* Dual 3D View mode
 +
 +
{|
 +
|[[Image:GPUraycastDual3Dview.png|thumb|320px|Gradient Magnitude Opacity Modulation in Dual 3D View mode]]
 +
|}
 +
 +
* Volume-Following Mode
 +
In Volume-Following mode, color and opacity transfer functions in the VolumeRendering module will follow window/level and threshold settings in the Volumes module for a uniform appearance on both slice view and 3D volume rendering view. To use, check VolumeRendering module -> Rendering panel -> Volume Property tab -> Follow Volumes Module check button.
 +
 +
In Volume-Following mode, window/level plus lookup table in Volumes module will be used to set colors in volume rendering. Threshold in Volumes module will be used to set opacity in volume rendering. Color and opacity transfer function editor also are disabled in Volume-Following mode because we are following volumes module now.
 +
 +
{|
 +
|[[Image:Volumes_following.png|thumb|320px|Volume Rendering in Volume-Following Mode]]
 +
|}
  
 
===Quick Tour of Features and Use===
 
===Quick Tour of Features and Use===
Line 43: Line 67:
 
* '''Inputs panel:'''
 
* '''Inputs panel:'''
 
* '''Rendering panel:'''
 
* '''Rendering panel:'''
 +
 +
* ''' Saving, loading, and sharing of Volume Properties and Transfer functions:'''
 +
#Volume Property includes:
 +
##appearance property (interpolation, material property, etc.)
 +
##transfer function for scalar opacity mapping
 +
##transfer function for scalar color mapping
 +
##transfer function for gradient opacity mapping
 +
#Volume Property is represented as MRML node and a corresponding storage node; it and can be stored in an external file with extension .vp
 +
#Volume Property can be selected in the Inputs-> Property selector; a new property node can be created there as well.
 +
#When a scene is saved the user can optionally save all volume property nodes into corresponding .vp files.
 +
#When scene is loaded all Volume Properties in the scene are loaded from their .vp files and are available in the  Inputs-> Property selector
 +
#Additional .vp files (for example created in different scenes) can be loaded using Rendering->Load Volume Property file dialog. The loaded Volume Property nodes will be available in the Inputs-> Property selector.
 +
#In addition, a number of preset Volume Properties is available through Inputs->Preset selector. When a preset is selected the properties are copied from it in to a current Volume Property node. The reason for this is that presets cannot be edited while node available in the Property selector are editable.
  
 
== Development ==
 
== Development ==
 +
===Tasks===
 +
#Organize VolumeRendering to reduce gradient volume calculation time
 +
##Same gradient volume shared among mappers
 +
##Gradient volume to be saved to avoid recalculation at loading time
 +
#Organize VolumeRendering module for a better GUI
  
 
===Dependencies===
 
===Dependencies===
Line 63: Line 105:
 
Customize following [http://viewvc.slicer.org/viewcvs.cgi/ links] for your module.
 
Customize following [http://viewvc.slicer.org/viewcvs.cgi/ links] for your module.
  
[http://www.na-mic.org/Slicer/Documentation/Slicer3/html/ Links] to documentation generated by doxygen.
+
[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/ Links] to documentation generated by doxygen.
 
 
  
 
== More Information ==  
 
== More Information ==  

Latest revision as of 19:53, 26 May 2010

Home < Modules:VolumeRendering-Documentation-3.5

Return to Slicer 3.5 Documentation

Gallery of New Features


Module Name

Volume Rendering

Composite
Gradient Magnitude Opacity Modulation
Illustrative Context Preserving Exploration

General Information

Module Type & Category

Type: Interactive

Category: Base

Authors, Collaborators & Contact

  • Yanling Liu, SAIC/NCI-Frederick, Alex Yarmarkovich, Isomics, SPL
  • Andreas Freudling, Student Intern at SPL (freudling at bwh.harvard.edu)
  • Contact: Alex Yarmarkovich, alexy@bwh.harvard.edu, Yanling Liu, liuy5 at mail.nih.gov

Module Description

Provides interactive visualization of 3D image data.

Usage

Examples, Use Cases & Tutorials

  • Pausing VolumeRendering module in scene loading

The VolumeRendering module can be paused in scene loading by un-checking the "Monitor Scene Loading Event" check button. Re-checking the check button will flush the paused pipeline and initialize the module using the loaded scene.

  • Software Ray Casting
  • GPU (GLSL) Ray Casting
  • GPU (GLSL) Ray Casting II (Multi-Volume Rendering)

Volume rendering both background and foreground volumes. Background volume is rendered using compositing. Foreground volume is rendered using MIP. Background and foreground volumes are rendered together using alpha blending.

Bg volume only (Composite)
Bg and Fg volume (Alpha Blending)
Fg volume only (MIP)
  • OpenGL Texture Mapping
  • Dual 3D View mode
Gradient Magnitude Opacity Modulation in Dual 3D View mode
  • Volume-Following Mode

In Volume-Following mode, color and opacity transfer functions in the VolumeRendering module will follow window/level and threshold settings in the Volumes module for a uniform appearance on both slice view and 3D volume rendering view. To use, check VolumeRendering module -> Rendering panel -> Volume Property tab -> Follow Volumes Module check button.

In Volume-Following mode, window/level plus lookup table in Volumes module will be used to set colors in volume rendering. Threshold in Volumes module will be used to set opacity in volume rendering. Color and opacity transfer function editor also are disabled in Volume-Following mode because we are following volumes module now.

Volume Rendering in Volume-Following Mode

Quick Tour of Features and Use

List all the panels in your interface, their features, what they mean, and how to use them. For instance:

  • Inputs panel:
  • Rendering panel:
  • Saving, loading, and sharing of Volume Properties and Transfer functions:
  1. Volume Property includes:
    1. appearance property (interpolation, material property, etc.)
    2. transfer function for scalar opacity mapping
    3. transfer function for scalar color mapping
    4. transfer function for gradient opacity mapping
  2. Volume Property is represented as MRML node and a corresponding storage node; it and can be stored in an external file with extension .vp
  3. Volume Property can be selected in the Inputs-> Property selector; a new property node can be created there as well.
  4. When a scene is saved the user can optionally save all volume property nodes into corresponding .vp files.
  5. When scene is loaded all Volume Properties in the scene are loaded from their .vp files and are available in the Inputs-> Property selector
  6. Additional .vp files (for example created in different scenes) can be loaded using Rendering->Load Volume Property file dialog. The loaded Volume Property nodes will be available in the Inputs-> Property selector.
  7. In addition, a number of preset Volume Properties is available through Inputs->Preset selector. When a preset is selected the properties are copied from it in to a current Volume Property node. The reason for this is that presets cannot be edited while node available in the Property selector are editable.

Development

Tasks

  1. Organize VolumeRendering to reduce gradient volume calculation time
    1. Same gradient volume shared among mappers
    2. Gradient volume to be saved to avoid recalculation at loading time
  2. Organize VolumeRendering module for a better GUI

Dependencies

Other modules or packages that are required for this module's use.

Known bugs

Follow this link to the Slicer3 bug tracker.


Usability issues

Follow this link to the Slicer3 bug tracker. Please select the usability issue category when browsing or contributing.

Source code & documentation

Customize following links for your module.

Links to documentation generated by doxygen.

More Information

Acknowledgment

Include funding and other support here.

References

Publications related to this module go here. Links to pdfs would be useful.