SimpleITK
1.0.1
|
Normalize the grayscale values between two images by histogram matching. More...
#include <sitkHistogramMatchingImageFilter.h>
Public Types | |
typedef BasicPixelIDTypeList | PixelIDTypeList |
typedef HistogramMatchingImageFilter | Self |
Public Types inherited from itk::simple::ImageFilter< 2 > | |
typedef ImageFilter | Self |
Public Types inherited from itk::simple::ProcessObject | |
typedef ProcessObject | Self |
Public Member Functions | |
Image | Execute (const Image &image1, const Image &image2) |
Image | Execute (const Image &image1, const Image &image2, uint32_t numberOfHistogramLevels, uint32_t numberOfMatchPoints, bool thresholdAtMeanIntensity) |
std::string | GetName () const |
uint32_t | GetNumberOfHistogramLevels () const |
uint32_t | GetNumberOfMatchPoints () const |
bool | GetThresholdAtMeanIntensity () const |
HistogramMatchingImageFilter () | |
Self & | SetNumberOfHistogramLevels (uint32_t NumberOfHistogramLevels) |
Self & | SetNumberOfMatchPoints (uint32_t NumberOfMatchPoints) |
Self & | SetThresholdAtMeanIntensity (bool ThresholdAtMeanIntensity) |
Self & | ThresholdAtMeanIntensityOff () |
Self & | ThresholdAtMeanIntensityOn () |
std::string | ToString () const |
~HistogramMatchingImageFilter () | |
Public Member Functions inherited from itk::simple::ImageFilter< 2 > | |
ImageFilter () | |
virtual | ~ImageFilter ()=0 |
Public Member Functions inherited from itk::simple::ProcessObject | |
virtual void | Abort () |
virtual int | AddCommand (itk::simple::EventEnum event, itk::simple::Command &cmd) |
Add a Command Object to observer the event. More... | |
virtual float | GetProgress () const |
An Active Measurement of the progress of execution. More... | |
virtual bool | HasCommand (itk::simple::EventEnum event) const |
Query of this object has any registered commands for event. More... | |
ProcessObject () | |
virtual void | RemoveAllCommands () |
Remove all registered commands. More... | |
virtual | ~ProcessObject () |
virtual void | DebugOn () |
virtual void | DebugOff () |
virtual bool | GetDebug () const |
virtual void | SetDebug (bool debugFlag) |
virtual void | SetNumberOfThreads (unsigned int n) |
virtual unsigned int | GetNumberOfThreads () const |
Private Types | |
typedef Image(Self::* | MemberFunctionType) (const Image &image1, const Image &image2) |
Private Member Functions | |
template<class TImageType > | |
Image | ExecuteInternal (const Image &image1, const Image &image2) |
Private Attributes | |
nsstd::auto_ptr< detail::MemberFunctionFactory< MemberFunctionType > > | m_MemberFactory |
uint32_t | m_NumberOfHistogramLevels |
uint32_t | m_NumberOfMatchPoints |
bool | m_ThresholdAtMeanIntensity |
Friends | |
struct | detail::MemberFunctionAddressor< MemberFunctionType > |
Additional Inherited Members | |
Static Public Member Functions inherited from itk::simple::ProcessObject | |
static bool | GetGlobalDefaultDebug () |
static void | GlobalDefaultDebugOff () |
static void | GlobalDefaultDebugOn () |
static void | SetGlobalDefaultDebug (bool debugFlag) |
static void | GlobalWarningDisplayOn () |
static void | GlobalWarningDisplayOff () |
static void | SetGlobalWarningDisplay (bool flag) |
static bool | GetGlobalWarningDisplay () |
static void | SetGlobalDefaultNumberOfThreads (unsigned int n) |
static unsigned int | GetGlobalDefaultNumberOfThreads () |
static double | GetGlobalDefaultCoordinateTolerance () |
Access the global tolerance to determine congruent spaces. More... | |
static void | SetGlobalDefaultCoordinateTolerance (double) |
Access the global tolerance to determine congruent spaces. More... | |
static double | GetGlobalDefaultDirectionTolerance () |
Access the global tolerance to determine congruent spaces. More... | |
static void | SetGlobalDefaultDirectionTolerance (double) |
Access the global tolerance to determine congruent spaces. More... | |
Protected Member Functions inherited from itk::simple::ProcessObject | |
virtual unsigned long | AddITKObserver (const itk::EventObject &, itk::Command *) |
virtual itk::ProcessObject * | GetActiveProcess () |
virtual void | OnActiveProcessDelete () |
virtual void | onCommandDelete (const itk::simple::Command *cmd) throw () |
virtual void | PreUpdate (itk::ProcessObject *p) |
virtual void | RemoveITKObserver (EventCommand &e) |
Protected Member Functions inherited from itk::simple::NonCopyable | |
NonCopyable () | |
Static Protected Member Functions inherited from itk::simple::ImageFilter< 2 > | |
static void | FixNonZeroIndex (TImageType *img) |
Static Protected Member Functions inherited from itk::simple::ProcessObject | |
template<class TImageType > | |
static TImageType::ConstPointer | CastImageToITK (const Image &img) |
template<class TImageType > | |
static Image | CastITKToImage (TImageType *img) |
template<class TPixelType , unsigned int VImageDimension, unsigned int VLength, template< typename, unsigned int > class TVector> | |
static Image | CastITKToImage (itk::Image< TVector< TPixelType, VLength >, VImageDimension > *img) |
static const itk::EventObject & | GetITKEventObject (EventEnum e) |
template<typename T > | |
static std::ostream & | ToStringHelper (std::ostream &os, const T &v) |
static std::ostream & | ToStringHelper (std::ostream &os, const char &v) |
static std::ostream & | ToStringHelper (std::ostream &os, const signed char &v) |
static std::ostream & | ToStringHelper (std::ostream &os, const unsigned char &v) |
Normalize the grayscale values between two images by histogram matching.
HistogramMatchingImageFilter 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.
This filter was originally 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. ThresholdAtMeanIntensityOn() switches on this simple background exclusion method.
The source image can be set via either SetInput() or SetSourceImage() . The reference image can be set via SetReferenceImage() .
SetNumberOfHistogramLevels() sets the number of bins used when creating histograms of the source and reference images. SetNumberOfMatchPoints() governs the number of quantile values to be matched.
This 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.
Definition at line 54 of file sitkHistogramMatchingImageFilter.h.
|
private |
Setup for member function dispatching
Definition at line 122 of file sitkHistogramMatchingImageFilter.h.
Define the pixels types supported by this filter
Definition at line 66 of file sitkHistogramMatchingImageFilter.h.
Definition at line 56 of file sitkHistogramMatchingImageFilter.h.
itk::simple::HistogramMatchingImageFilter::HistogramMatchingImageFilter | ( | ) |
Default Constructor that takes no arguments and initializes default parameters
itk::simple::HistogramMatchingImageFilter::~HistogramMatchingImageFilter | ( | ) |
Destructor
Image itk::simple::HistogramMatchingImageFilter::Execute | ( | const Image & | image1, |
const Image & | image2 | ||
) |
Execute the filter on the input images
Image itk::simple::HistogramMatchingImageFilter::Execute | ( | const Image & | image1, |
const Image & | image2, | ||
uint32_t | numberOfHistogramLevels, | ||
uint32_t | numberOfMatchPoints, | ||
bool | thresholdAtMeanIntensity | ||
) |
Execute the filter on the input images with the given parameters
|
private |
|
inlinevirtual |
Name of this class
Implements itk::simple::ProcessObject.
Definition at line 104 of file sitkHistogramMatchingImageFilter.h.
|
inline |
Set/Get the number of histogram levels used.
Definition at line 78 of file sitkHistogramMatchingImageFilter.h.
|
inline |
Set/Get the number of match points used.
Definition at line 88 of file sitkHistogramMatchingImageFilter.h.
|
inline |
Set/Get the threshold at mean intensity flag. If true, only source (reference) pixels which are greater than the mean source (reference) intensity is used in the histogram matching. If false, all pixels are used.
Definition at line 102 of file sitkHistogramMatchingImageFilter.h.
|
inline |
Set/Get the number of histogram levels used.
Definition at line 73 of file sitkHistogramMatchingImageFilter.h.
|
inline |
Set/Get the number of match points used.
Definition at line 83 of file sitkHistogramMatchingImageFilter.h.
|
inline |
Set/Get the threshold at mean intensity flag. If true, only source (reference) pixels which are greater than the mean source (reference) intensity is used in the histogram matching. If false, all pixels are used.
Definition at line 93 of file sitkHistogramMatchingImageFilter.h.
|
inline |
Definition at line 97 of file sitkHistogramMatchingImageFilter.h.
|
inline |
Set the value of ThresholdAtMeanIntensity to true or false respectfully.
Definition at line 96 of file sitkHistogramMatchingImageFilter.h.
|
virtual |
Print ourselves out
Reimplemented from itk::simple::ProcessObject.
|
friend |
Definition at line 127 of file sitkHistogramMatchingImageFilter.h.
|
private |
Definition at line 129 of file sitkHistogramMatchingImageFilter.h.
|
private |
Definition at line 132 of file sitkHistogramMatchingImageFilter.h.
|
private |
Definition at line 133 of file sitkHistogramMatchingImageFilter.h.
|
private |
Definition at line 134 of file sitkHistogramMatchingImageFilter.h.