Difference between revisions of "Modules:HistogramMatching-Documentation-3.4"

From Slicer Wiki
Jump to: navigation, search
 
(3 intermediate revisions by one other user not shown)
Line 1: Line 1:
 
[[Documentation-3.4|Return to Slicer 3.4 Documentation]]
 
[[Documentation-3.4|Return to Slicer 3.4 Documentation]]
 +
 +
[[Announcements:Slicer3.4#Highlights|Gallery of New Features]]
 
__NOTOC__
 
__NOTOC__
 
===Module Name===
 
===Module Name===
Line 5: Line 7:
  
 
{|
 
{|
|[[Image:screenshotBlank.png|thumb|280px|Caption 1]]
+
|[[Image:HistogramMatching1.png|thumb|280px|Reference image: MR Acquisition 1]]
|[[Image:screenshotBlank.png|thumb|280px|Caption 2]]
+
|[[Image:HistogramMatching2.png|thumb|280px|Source image: MR Acquisition 2 ]]
|[[Image:screenshotBlank.png|thumb|280px|Caption 3]]
+
|[[Image:HistogramMatching3.png|thumb|280px|Output image: MR Acquisition 2 matched to MR Acquisition 1]]
 
|}
 
|}
  
Line 15: Line 17:
 
Type: CLI
 
Type: CLI
  
Category: Base or (Filtering, Registration, ''etc.'')
+
Category: Filtering
  
 
===Authors, Collaborators & Contact===
 
===Authors, Collaborators & Contact===

Latest revision as of 20:11, 26 May 2009

Home < Modules:HistogramMatching-Documentation-3.4

Return to Slicer 3.4 Documentation

Gallery of New Features

Module Name

Histogram Matching

Reference image: MR Acquisition 1
Source image: MR Acquisition 2
Output image: MR Acquisition 2 matched to MR Acquisition 1

General Information

Module Type & Category

Type: CLI

Category: Filtering

Authors, Collaborators & Contact

  • Author: Bill Lorensen
  • Contact: bill.lorensen at gmail.com

Module Description

Normalizes the grayscale values of a source image based on the grayscale values of a reference image. This filter uses a histogram matching technique where the histograms of the two images are matched only at a specified number of quantile values. The filter was orginally designed to normalize MR images of the same MR protocol and same body part. The algorithm works best if background pixels are excluded from both the source and reference histograms. A simple background exclusion method is to exclude all pixels whose grayscale values are smaller than the mean grayscale value. ThresholdAtMeanIntensity switches on this simple background exclusion method. Number of match points governs the number of quantile values to be matched. The filter assumes that both the source and reference are of the same type and that the input and output image type have the same number of dimension and have scalar pixel types.

Usage

Examples, Use Cases & Tutorials

  • Note use cases for which this module is especially appropriate, and/or link to examples.
  • Link to examples of the module's use
  • Link to any existing tutorials

Quick Tour of Features and Use

List all the panels in your interface, their features, what they mean, and how to use them. For instance:

  • Input panel:
  • Parameters panel:
  • Output panel:
  • Viewing panel:

Development

Dependencies

Other modules or packages that are required for this module's use.

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: HistogramMatching.cxx

XML Description: HistogramMatching.xml

Usage:

./HistogramMatching  [--processinformationaddress <std::string>] [--xml]
                     [--echo] [--threshold] [--numberOfMatchPoints
                     <int>] [--numberOfHistogramLevels <int>] [--]
                     [--version] [-h] <std::string> <std::string>
                     <std::string>


Where: 

--processinformationaddress <std::string>
  Address of a structure to store process information (progress, abort,
  etc.). (default: 0)

--xml
  Produce xml description of command line arguments (default: 0)

--echo
  Echo the command line arguments (default: 0)

--threshold
  If on, only pixels above the mean in each volume are thresholded.
  (default: 0)

--numberOfMatchPoints <int>
  The number of match points to use (default: 10)

--numberOfHistogramLevels <int>
  The number of hisogram levels to use (default: 128)

--,  --ignore_rest
  Ignores the rest of the labeled arguments following this flag.

--version
  Displays version information and exits.

-h,  --help
  Displays usage information and exits.

<std::string>
  (required)  Input volume to be filtered

<std::string>
  (required)  Input volume whose histogram will be matched

<std::string>
  (required)  Output volume. This is the input volume with intensities
  matched to the reference volume.


Description: Normalizes the grayscale values of a source image based on
the grayscale values of a reference image.  This filter uses a histogram
matching technique where the histograms of the two images are matched
only at a specified number of quantile values.  The filter was orginally
designed to normalize MR images of the same MR protocol and same body
part. The algorithm works best if background pixels are excluded from
both the source and reference histograms.  A simple background exclusion
method is to exclude all pixels whose grayscale values are smaller than
the mean grayscale value. ThresholdAtMeanIntensity switches on this
simple background exclusion method.  Number of match points governs the
number of quantile values to be matched.  The filter assumes that both
the source and reference are of the same type and that the input and
output image type have the same number of dimension and have scalar
pixel types.

Author(s): Bill Lorensen

Acknowledgements: This work is part of the National Alliance for Medical
Image Computing (NAMIC), funded by the National Institutes of Health
through the NIH Roadmap for Medical Research, Grant U54 EB005149.

More Information

Acknowledgment

This work is part of the National Alliance for Medical Image Computing (NAMIC), funded by the National Institutes of Health through the NIH Roadmap for Medical Research, Grant U54 EB005149. Information on the National Centers for Biomedical Computing can be obtained from National Centers for Biomedical Computing.

References