Difference between revisions of "Modules:VolumeRendering-Documentation-3.6"
Line 81: | Line 81: | ||
** '''ROI''' The single ROI node for the current scenario. The ROI can be defined using volume rendering and then used to crop a volume in the crop volume module. | ** '''ROI''' The single ROI node for the current scenario. The ROI can be defined using volume rendering and then used to crop a volume in the crop volume module. | ||
** '''Background Volume''' This specifies the default volume for volume rendering. Volume input, volume property, and presets for background. | ** '''Background Volume''' This specifies the default volume for volume rendering. Volume input, volume property, and presets for background. | ||
+ | *** Source: Background volume source. | ||
+ | *** Property: Volume Rendering Property Node: -- '''(Alex -- can you describe?)''' | ||
+ | *** Presets: Predefined transfer functions for convenience. Some are provided by Jim Miller, and the majority of them are transferred from VolView (Thank you very much). '''(VolView people credits?)''' | ||
** '''Foreground Volume''' This is used only in experimental NCI GPU Ray Casting (which is one of the Rendering Methods in the Rendering Techniques Tab). Otherwise this volume is ignored. Volume input. volume property, and presets for foreground. Works only with the experimental NCI GPU Raycasting Multi-volume (experimental) | ** '''Foreground Volume''' This is used only in experimental NCI GPU Ray Casting (which is one of the Rendering Methods in the Rendering Techniques Tab). Otherwise this volume is ignored. Volume input. volume property, and presets for foreground. Works only with the experimental NCI GPU Raycasting Multi-volume (experimental) | ||
** '''Label Map''' This volume is experimental. ('''Alex -- can you refine?''') Volume input, volume property, and presets for label map. | ** '''Label Map''' This volume is experimental. ('''Alex -- can you refine?''') Volume input, volume property, and presets for label map. | ||
Line 86: | Line 89: | ||
** '''Techniques''' Under the techniques tab, there are currently five rendering methods available. Each of these are described below. | ** '''Techniques''' Under the techniques tab, there are currently five rendering methods available. Each of these are described below. | ||
*** Rendering Method | *** Rendering Method | ||
− | **** VTK CPU Ray Casting: Uses the CPU for volume rendering, is parallelized and can take advantage of multi-core capabilities. Uses level-of-detail approach where low resolution is rendered while moving, and high resolution is rendered once motion ceases. Allows zbuffer compositing with texture map cross sections and triangulated surface model. '''Do not use semi-transparent surface models (Yanling, is this true?).''' | + | **** '''VTK CPU Ray Casting:''' Uses the CPU for volume rendering, is parallelized and can take advantage of multi-core capabilities. Uses level-of-detail approach where low resolution is rendered while moving, and high resolution is rendered once motion ceases. Allows zbuffer compositing with texture map cross sections and triangulated surface model. '''Do not use semi-transparent surface models (Yanling, is this true?).''' |
***** Method Configuration Panel: | ***** Method Configuration Panel: | ||
− | **** VTK GPU Ray Casting: Uses GPU accelerated ray caster. Allows z-buffer compositing... etc. '''Do not use semi-transparent surface models (Yanling, is this true?).''' This is currently working on Linux and Win32, but not on Mac due to a bug in the OpenGL drivers. | + | **** '''VTK GPU Ray Casting:''' Uses GPU accelerated ray caster. Allows z-buffer compositing... etc. '''Do not use semi-transparent surface models (Yanling, is this true?).''' This is currently working on Linux and Win32, but not on Mac due to a bug in the OpenGL drivers. |
***** Method Configuration Panel: | ***** Method Configuration Panel: | ||
− | **** VTK OpenGL 3D Texture Mapping: Uses texture mapping approach to volume rendering compared to the two render methods above, it has slicghtly lower performance and slightly coarser appearance. | + | **** '''VTK OpenGL 3D Texture Mapping:''' Uses texture mapping approach to volume rendering compared to the two render methods above, it has slicghtly lower performance and slightly coarser appearance. |
***** Method Configuration Panel: | ***** Method Configuration Panel: | ||
− | **** NCI GPU Ray Casting: This is a GLSL-based ray caster with several experimental mapping techniques. No z-buffer compositing. Good performance and quality. No hardware restrictions on this method. | + | **** '''NCI GPU Ray Casting:''' This is a GLSL-based ray caster with several experimental mapping techniques. No z-buffer compositing. Good performance and quality. No hardware restrictions on this method. |
− | **** Multi-volume GPU Ray Caster: This allows two volumes to be volume rendered and performs an alpha blend between the two volumes. This method requires enough graphics memory to hold all data, or a crash or frozen machine may occur. | + | **** '''Multi-volume GPU Ray Caster:''' This allows two volumes to be volume rendered and performs an alpha blend between the two volumes. This method requires enough graphics memory to hold all data, or a crash or frozen machine may occur. |
***** Method Configuration Panel: | ***** Method Configuration Panel: | ||
*** GPU Memory Size: A user must hand-select the amount of graphics memory in your machine. The setting will be remembered for your next session. Find this information, (Alex, can fill in for each platform, or for some?) | *** GPU Memory Size: A user must hand-select the amount of graphics memory in your machine. The setting will be remembered for your next session. Find this information, (Alex, can fill in for each platform, or for some?) |
Revision as of 20:36, 29 April 2010
Home < Modules:VolumeRendering-Documentation-3.6Return to Slicer 3.6 Documentation
Module Name
Volume Rendering
General Information
Module Type & Category
Type: Interactive
Category: Base
Authors, Collaborators & Contact
- Yanling Liu, SAIC-Frederick/NCI-Frederick, Alex Yarmarkovich, Isomics, SPL
- Andreas Freudling, Student Intern at SPL (freudling@bwh.harvard.edu)
- Contact: Yanling Liu, liuy5@mail.nih.gov, Alex Yarmarkovich, alexy@bwh.harvard.edu
- Some of the transfer functions were contributed by Kitware, Inc. (VolView)
Module Description
Provides interactive visualization of 3D image data.
Usage
Use Cases, Examples
- 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.
- Multi-Volume GPU Ray Casting
VolumeRendering module has the capability to blend two (bg and fg) volumes in one rendering pipeline. User may select different rendering technique for bg or fg volumes. Different blending options are also available.
Currently under development. Available rendering techniques: Composite (bg) + Composite (fg) + OR blending, Composite (bg) + Composite (fg) + AND blending, Composite (bg) + MIP (fg), MIP (bg) + MIP (fg).
- Dual 3D View mode
VTK GPU Ray Casting doesn't support the 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.
Tutorials
Links to tutorials explaining how to use this module:
- Tutorial 1
- Data Set 1
Quick Tour of Features and Use
A list panels in the interface, their features, what they mean, and how to use them. For instance:
|
Development
Notes from the Developer(s)
Algorithms used, library classes depended upon, use cases, etc.
Dependencies
Other modules or packages that are required for this module's use.
Tests
On the Dashboard, these tests verify that the module is working on various platforms:
- MyModuleTest1 MyModuleTest1.cxx
- MyModuleTest2 MyModuleTest2.cxx
Known bugs
Links to known bugs in 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
Links to the module's source code:
Source code:
Doxygen documentation:
More Information
Acknowledgment
Include funding and other support here.
References
Publications related to this module go here. Links to pdfs would be useful.