Difference between revisions of "Modules:CropVolume-Documentation-3.6"
(15 intermediate revisions by the same user not shown) | |||
Line 2: | Line 2: | ||
__NOTOC__ | __NOTOC__ | ||
===Subvolume extraction with ROI widget=== | ===Subvolume extraction with ROI widget=== | ||
− | + | CropVolume | |
{| | {| | ||
Line 25: | Line 25: | ||
===Module Description=== | ===Module Description=== | ||
− | This module allows to extract rectangular subvolume from | + | 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 == | ||
− | === | + | ===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. | * 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 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. | * 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: | ||
+ | |||
+ | * [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:''' | ||
− | ** '''Input volume''' defines the input image from which you need to | + | ** '''Input volume''' defines the input image from which you need to crop a subvolume |
** '''ROI''' is a Region of Interest (see [[Modules:ROIModule-Documentation-3.6|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''' is a Region of Interest (see [[Modules:ROIModule-Documentation-3.6|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. | ** '''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. | ** '''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. | ** '''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 equal to the '' | + | ** '''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. | ** '''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. | ** '''Do ROI resample''' initiates the subvolume extraction based on the inputs and parameters. | ||
− | * '''Viewing panel:''' | + | * '''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. |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
| | | | ||
Line 65: | Line 72: | ||
[[Image:ExtractSubvolumeROI_input_spacing.jpg|thumb|200px|Input image]] | [[Image:ExtractSubvolumeROI_input_spacing.jpg|thumb|200px|Input image]] | ||
− | |[[Image:ExtractSubvolumeROI_output_spacing.jpg|thumb|200px| | + | |[[Image:ExtractSubvolumeROI_output_spacing.jpg|thumb|200px|Cropped subvolume with scaling constant 0.5 -- note the difference in the image spacing]] |
|} | |} | ||
Line 71: | Line 78: | ||
|[[Image:ExtractSubvolumeROI_controls.jpg|thumb|250px|CropVolume control panel]] | |[[Image:ExtractSubvolumeROI_controls.jpg|thumb|250px|CropVolume control panel]] | ||
− | |[[Image:ExtractSubvolumeROI_resize.jpg|thumb|200px|Intersection of ROI with the slice is shown in semi-transparent blue]] | + | |[[Image:ExtractSubvolumeROI_resize.jpg|thumb|200px|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: | ||
+ | |||
+ | # 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]] | ||
|} | |} | ||
== Development == | == Development == | ||
− | + | ===Notes from the Developer=== | |
− | + | ||
− | + | This module wraps the functionality of VTK class [http://www.vtk.org/doc/nightly/html/classvtkImageReslice.html vtkImageReslice] | |
− | |||
===Dependencies=== | ===Dependencies=== | ||
[[Modules:ROIModule-Documentation-3.6|ROI Module]] and [[Modules:Volumes-Documentation-3.6|Volumes Module]]. | [[Modules:ROIModule-Documentation-3.6|ROI Module]] and [[Modules:Volumes-Documentation-3.6|Volumes Module]]. | ||
+ | |||
+ | ===Tests=== | ||
+ | |||
+ | Not available at this time. | ||
===Known bugs=== | ===Known bugs=== | ||
Follow this [http://na-mic.org/Mantis/main_page.php link] to the Slicer3 bug tracker. | Follow this [http://na-mic.org/Mantis/main_page.php link] to the Slicer3 bug tracker. | ||
− | |||
− | |||
===Usability issues=== | ===Usability issues=== | ||
Line 106: | Line 131: | ||
===Acknowledgment=== | ===Acknowledgment=== | ||
+ | |||
Supported by Brain Science Foundation. | Supported by Brain Science Foundation. | ||
===References=== | ===References=== |
Latest revision as of 20:30, 6 February 2011
Home < Modules:CropVolume-Documentation-3.6Return to Slicer 3.6 Documentation
Subvolume extraction with ROI widget
CropVolume
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:
- 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.
- Registration Breakout
- PET-CT Registration
- Breast MRI Registration for Cancer Follow-up
Quick Tour of Features and Use
|
|
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:
|
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.