Difference between revisions of "Projects/Slicer3/2007 Project Week Display Optimization"

From NAMIC Wiki
Jump to: navigation, search
 
(4 intermediate revisions by one other user not shown)
Line 1: Line 1:
 
{|
 
{|
 
|[[Image:ProjectWeek-2007.png|thumb|320px|Return to [[2007_Programming/Project_Week_MIT|Project Week Main Page]] ]]
 
|[[Image:ProjectWeek-2007.png|thumb|320px|Return to [[2007_Programming/Project_Week_MIT|Project Week Main Page]] ]]
 +
|[[Image:Programming_Week_RS_Slide4.JPG|thumb|240px|Previous rendering pipeline]]
 +
|[[Image:Programming_Week_RS_Slide6.JPG|thumb|240px|Now]]
 
|}
 
|}
  
Line 17: Line 19:
 
<div style="width: 27%; float: left; padding-right: 3%;">
 
<div style="width: 27%; float: left; padding-right: 3%;">
 
<h1>Approach, Plan</h1>
 
<h1>Approach, Plan</h1>
</div>
 
 
<div style="width: 40%; float: left;">
 
 
# doing the resample to a 'native' size for the input volume and then upsampling to screen size still sounds best.
 
# doing the resample to a 'native' size for the input volume and then upsampling to screen size still sounds best.
 
# using a vtkImageActor in the vtkSlicerSliceViewer (instead of the current vtkImageMapper and vtkActor2D) is likely to be faster, and can do the upsample needed in step (1),
 
# using a vtkImageActor in the vtkSlicerSliceViewer (instead of the current vtkImageMapper and vtkActor2D) is likely to be faster, and can do the upsample needed in step (1),
Line 25: Line 24:
 
# David thinks we should be able to use the existing functions of vtkImageReslice to get the background mask.  He didn't thing having a two-output filter was a good idea based on his experience with the way the vtk pipeline executes.
 
# David thinks we should be able to use the existing functions of vtkImageReslice to get the background mask.  He didn't thing having a two-output filter was a good idea based on his experience with the way the vtk pipeline executes.
  
 +
</div>
 +
 +
<div style="width: 40%; float: left;">
 
<h1>Progress</h1>
 
<h1>Progress</h1>
 +
# Implemented filter with aditional output, significantly faster rendering of slices
 +
# Integrated building of alpha mask into one filter in form of a derived class from vtkReslice -> avoids multiple iterations through dataset
 +
# TODO: integrate map to color and map to window level
 +
 
</div>
 
</div>
 
<br style="clear: both;" />
 
<br style="clear: both;" />

Latest revision as of 14:02, 29 June 2007

Home < Projects < Slicer3 < 2007 Project Week Display Optimization
Previous rendering pipeline
Now


Key Investigators

  • SPL: Raimundo Sierra, David Gobbi, Steve Pieper


Objective

Improving the performance of slicer display

Approach, Plan

  1. doing the resample to a 'native' size for the input volume and then upsampling to screen size still sounds best.
  2. using a vtkImageActor in the vtkSlicerSliceViewer (instead of the current vtkImageMapper and vtkActor2D) is likely to be faster, and can do the upsample needed in step (1),
  3. using a vtkImageActor for the slice model in the vtkSlicerViewer will bypass the power-of-2 resampling in vtkTexture that gives the artifacts I hate
  4. David thinks we should be able to use the existing functions of vtkImageReslice to get the background mask. He didn't thing having a two-output filter was a good idea based on his experience with the way the vtk pipeline executes.

Progress

  1. Implemented filter with aditional output, significantly faster rendering of slices
  2. Integrated building of alpha mask into one filter in form of a derived class from vtkReslice -> avoids multiple iterations through dataset
  3. TODO: integrate map to color and map to window level



References

Additional Information

Slides with diagrams about the slicer rendering pipeline