Difference between revisions of "Modules:CropVolume-Documentation-3.6"

From Slicer Wiki
Jump to: navigation, search
 
(10 intermediate revisions by the same user not shown)
Line 2: Line 2:
 
__NOTOC__
 
__NOTOC__
 
===Subvolume extraction with ROI widget===
 
===Subvolume extraction with ROI widget===
ExtractSubvolumeROI
+
CropVolume
  
 
{|
 
{|
Line 25: Line 25:
  
 
===Module Description===
 
===Module Description===
This module allows to extract rectangular subvolume from an image, with the subvolume defined by Slicer ROI widget.
+
This module allows to extract rectangular subvolume from a ''scalar'' image, with the subvolume defined by Slicer ROI widget.
 +
 
 +
You cannot use this module to crop a DTI or DWI volume.
  
 
== Usage ==
 
== Usage ==
Line 36: Line 38:
  
 
===Tutorials===
 
===Tutorials===
CropVolume (at the time, ExtractSubvolumeROI) is used in the following tutorial: [http://wiki.na-mic.org/Wiki/index.php/AHM_2010_Tutorial_Contest_-_CoronaryArteriesCenterlinesVMTK Centerline Extraction of Coronary Arteries in 3D Slicer using VMTK based Tools] (winner of the SLC AHM 2010 tutorial contest). Follow the link for the tutorial slides and test data.
+
CropVolume (at the time, ExtractSubvolumeROI) is used in the following tutorials:  
 +
 
 +
* [http://wiki.na-mic.org/Wiki/index.php/AHM_2010_Tutorial_Contest_-_CoronaryArteriesCenterlinesVMTK Centerline Extraction of Coronary Arteries in 3D Slicer using VMTK based Tools] (winner of the SLC AHM 2010 tutorial contest). Follow the link for the tutorial slides and test data.
 +
* [http://na-mic.org/Wiki/images/3/38/NCIGT2010_RegistrBreakout_Slides_v3_1.ppt Registration Breakout]
 +
* [http://na-mic.org/Wiki/images/4/45/RegLib_C08_Tutorial_PET-CTserial.ppt PET-CT Registration]
 +
* [http://na-mic.org/Wiki/images/5/58/RegLib_C06_BreastCancer_Tutorial.ppt Breast MRI Registration for Cancer Follow-up]
  
 
===Quick Tour of Features and Use===
 
===Quick Tour of Features and Use===
 
{|
 
{|
 
|
 
|
 +
 +
* '''Tips for efficient use:''' while in the CropVolume module, once ROI has been selected:
 +
** adjust ROI size by clicking Right mouse button in slice view
 +
** re-center ROI by clicking Left mouse button in slice view
 +
  
 
* '''Input/initialization parameters panel:'''
 
* '''Input/initialization parameters panel:'''
Line 54: Line 66:
 
* '''Viewing panel:''' Size and location of the ROI can be modified using one of the two methods. First, this can be done in 3D View by moving the colored handles of the ROI widget. Second, the ROI can be adjusted in the slice views. ''Right mouse button click'' adjusts the bounds of the ROI. ''Left mouse button click'' moves the center of ROI to be the point where the click was made.
 
* '''Viewing panel:''' Size and location of the ROI can be modified using one of the two methods. First, this can be done in 3D View by moving the colored handles of the ROI widget. Second, the ROI can be adjusted in the slice views. ''Right mouse button click'' adjusts the bounds of the ROI. ''Left mouse button click'' moves the center of ROI to be the point where the click was made.
  
* The input volume and input ROI are both allowed to be under linear transform. This allows to extract a parallelepiped shaped ROI, which is arbitrarily oriented within the input volume using these steps:
 
 
# Create a new Transform in the MRML Tree ([[Modules:Data-Documentation-3.6|Data module]]), or in the [[Modules:Transforms-Documentation-3.6|Transforms module]]
 
# Drag the input ROI node under the created transform in the MRML tree ([[Modules:Data-Documentation-3.6|Data module]])
 
# Adjust the rotation of the ROI from the [[Modules:Transforms-Documentation-3.6|Transforms module]]
 
# Return to CropVolume, use the ROI from above to extract the subvolume
 
 
Upon completion of the resampling operation, the input volume is set as the Background image volume, and the extracted resampled ROI is set as the Foreground image.
 
  
 
|
 
|
Line 77: Line 81:
 
|}
 
|}
  
 +
|}
 +
 +
 +
{|
 +
|
 +
* '''How can I extract an ROI that is arbitrarily rotated?'''
 +
 +
The input volume and input ROI are both allowed to be under linear transform. This allows to extract a parallelepiped shaped ROI, which is arbitrarily oriented within the input volume using these steps:
 +
 +
# Create a new Transform in the MRML Tree ([[Modules:Data-Documentation-3.6|Data module]]), or in the [[Modules:Transforms-Documentation-3.6|Transforms module]]
 +
# Check the ROI selector in the CropVolume module, note the name, and ''drag the ROI node'' under the created transform in the MRML tree ([[Modules:Data-Documentation-3.6|Data module]])
 +
# Adjust the rotation of the ROI from the [[Modules:Transforms-Documentation-3.6|Transforms module]]
 +
# Return to CropVolume, use the ROI from above to extract the subvolume
 +
|
 +
[[Image:ExtractSubvolumeROI_ROI_name.jpg|thumb|200px|ROI node in CropVolume]]
 +
 +
|[[Image:ExtractSubvolumeROI_ROI_transformed.jpg|thumb|200px|Same ROI node is under a transform]]
 
|}
 
|}
  
Line 82: Line 103:
  
 
===Notes from the Developer===
 
===Notes from the Developer===
 +
 +
This module wraps the functionality of VTK class [http://www.vtk.org/doc/nightly/html/classvtkImageReslice.html vtkImageReslice]
  
 
===Dependencies===
 
===Dependencies===

Latest revision as of 20:30, 6 February 2011

Home < Modules:CropVolume-Documentation-3.6

Return to Slicer 3.6 Documentation

Subvolume extraction with ROI widget

CropVolume

Input and initialization of SubvolumeExtractROI
Visualization of the extracted subvolume
Input ROI is under transform, rotated
Visualization of the extracted subvolume

General Information

Module Type & Category

Type: Interactive

Category: Converters

Authors, Collaborators & Contact

  • Andriy Fedorov, BWH
  • Ron Kikinis, BWH
  • Contact: Andriy Fedorov, fedorov at bwh

Module Description

This module allows to extract rectangular subvolume from a scalar image, with the subvolume defined by Slicer ROI widget.

You cannot use this module to crop a DTI or DWI volume.

Usage

Use Cases, Examples

  • CropVolume allows to extract a parallelepiped-shaped subvolume, located arbitrarily within a larger 3D volume. The module allows to control the spacing of the resulting volume, and gives control over the interpolation mode.
  • The module is particularly useful in cases when the amount of computation or its complexity can be reduced by limiting the processing to the region of interest.
  • The subvolume produced by the module is located precisely in the space of the original image.

Tutorials

CropVolume (at the time, ExtractSubvolumeROI) is used in the following tutorials:

Quick Tour of Features and Use

  • Tips for efficient use: while in the CropVolume module, once ROI has been selected:
    • adjust ROI size by clicking Right mouse button in slice view
    • re-center ROI by clicking Left mouse button in slice view


  • Input/initialization parameters panel:
    • Input volume defines the input image from which you need to crop a subvolume
    • ROI is a Region of Interest (see the ROI module documentation), which can be defined outside CropVolume, or by creating new MRMLROINode from the selector menu. The ROI can be adjusted using the widget handles in 3D view panel.
    • ROI visibility allows to turn the visibility of the 3D widget on or off in the 3D view panel.
    • Output volume is the volume node where the result of ROI extraction will be stored. Note, that the output volume cannot be identical to the input volume. The module will give you an error if this is the case.
    • Input spacing scaling constant is the coefficient used to determine the spacing of the output volume. The output spacing is defined by multiplying the input spacing in each dimension by the user-specified coefficient. For example, if the input spacing is 1x1x1.4, and the scaling coefficient is 0.5, the output volume will have spacing 0.5x0.5x0.7, effectively doubling the resolution of the output image.
    • Isotropic voxel size if this checkbox is selected, the output image will have isotropic spacing, with the voxel size of the output image in each dimension equal to the smallest voxel dimension of the input image multiplied by the scaling constant.
    • Interpolation type allows to select between Nearest Neighbor, Linear or Cubic interpolators. For subvolumes being extracted from a label volume, you should use Nearest Neighbor interpolator. Otherwise Cubic is the preferred choice. Linear interpolator requires less computation, which may be important for very large ROIs.
    • Do ROI resample initiates the subvolume extraction based on the inputs and parameters.
  • Viewing panel: Size and location of the ROI can be modified using one of the two methods. First, this can be done in 3D View by moving the colored handles of the ROI widget. Second, the ROI can be adjusted in the slice views. Right mouse button click adjusts the bounds of the ROI. Left mouse button click moves the center of ROI to be the point where the click was made.


Input image
Cropped subvolume with scaling constant 0.5 -- note the difference in the image spacing
CropVolume control panel
Intersection of the ROI with the slice is shown in semi-transparent blue


  • How can I extract an ROI that is arbitrarily rotated?

The input volume and input ROI are both allowed to be under linear transform. This allows to extract a parallelepiped shaped ROI, which is arbitrarily oriented within the input volume using these steps:

  1. Create a new Transform in the MRML Tree (Data module), or in the Transforms module
  2. Check the ROI selector in the CropVolume module, note the name, and drag the ROI node under the created transform in the MRML tree (Data module)
  3. Adjust the rotation of the ROI from the Transforms module
  4. Return to CropVolume, use the ROI from above to extract the subvolume
ROI node in CropVolume
Same ROI node is under a transform

Development

Notes from the Developer

This module wraps the functionality of VTK class vtkImageReslice

Dependencies

ROI Module and Volumes Module.

Tests

Not available at this time.

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

Source code can accessed here

Links to documentation generated by doxygen.

More Information

Acknowledgment

Supported by Brain Science Foundation.

References