Difference between revisions of "Slicer3:Volume Rendering"
From NAMIC Wiki
(→Goals) |
|||
Line 33: | Line 33: | ||
*Have a closer look on the gradient opacity mapper, when using label maps | *Have a closer look on the gradient opacity mapper, when using label maps | ||
+ | |||
+ | ==Problems== | ||
+ | *Cannot load the following data | ||
+ | **spgr (greyscale): tutorial data set (freezes) | ||
+ | **greyscale (greyscale): brain atlas (freezes) | ||
+ | **seg (LabelMap): abdomen data set (not freezing, seems to render, but unvisible) | ||
== Goals == | == Goals == | ||
Revision as of 20:03, 31 August 2007
Home < Slicer3:Volume RenderingContents
Overview
Test the module
- Copy the following folder from the svn repository http://www.na-mic.org/svn/Slicer3/trunk/Base/GUI/Testing/VolumeRendering to the following path <YourSlicerBuildDir>\lib\Slicer3\Modules\Packages\VolumeRendering.
- Restart Slicer
- Load a MRML-Scene (e. g. tutorial.xml from the Tutorial Dataset)
- Go to the module dropdown and select VolumeRendering
- Select "all" (if you use the tutorial dataset) as the Source Volume and click LoadNode =>The volume rendered Volume should appear.
- Play with the transfer function etc.
- Note: After changing a setting please click on the volume one time to load the new settings
Latest results and limitations
Description
- Loading of MRML-Nodes is possible
- At the moment no removing of MRML-Nodes possible
- Change properties
- Calculate transfer functions automatically
- No performance tuning at all
- Shading
Screenshots
next Tasks
- Develop different algorithms for labelmap and grayscale volumes -----algorithm for grayscale is missing => new task: presets
- Find Presets, see also at goals
- Try to reduce artefacts in labelmaps by using several RGB points in the mapping function -----done, artefacts still there?
- Implement a possibility to change between different volumes during runtime -----done
- Have a closer look on the final calculation of the renderer
- Detect if video card can use 3d Texture Mapping or not, if not use MIP, -----done, there are two new Buttons to simulate having openGl support or not. standard preset is now MIP (performance issue)
- Add possiblity to change opacity (for labelmaps) -----done, slider
- Include code to make all models invisible(Good for testing) -----done, new button
- Have a closer look on the gradient opacity mapper, when using label maps
Problems
- Cannot load the following data
- spgr (greyscale): tutorial data set (freezes)
- greyscale (greyscale): brain atlas (freezes)
- seg (LabelMap): abdomen data set (not freezing, seems to render, but unvisible)
Goals
Volume rendering presets :
- MIP (Maximum Intensity Projection)
- CT Bone and vessel
- Use Hounsfield units
- Bone +400->+1000
- Soft tissue +40->+80
- Water 0
- Fat -60->-100
- Lung -400->-600
- Air -1000
- Use Hounsfield units
- T1 MR Air/skin interface
- Label map per-label object rendering
- Use the different MRMLNodes: vtkMRMLVolumeNode
Slicer3 module interface:
- Select from loaded volumes
- Specify preset transfer functions or use KWWidgets tools
Slicer3 internals:
- Correct coordinates including transforms
- Level of detail rendering
- Proper integration with surface rendering
Different Volume Rendering Algorithms
- RayCast
- 2D Texture Mapping
- 3D Texture Mapping
- ...
Wish List
- 2D Transfer functions - may require specialized opengl code integrated with VTK. Talk with Gordon about latest work from Utah.
- use glTexSubImage3D so that incremental changes to the volume can be quickly reflected