ITK
5.0.0
Insight Segmentation and Registration Toolkit
|
#include <itkMRIBiasFieldCorrectionFilter.h>
Represents a cost function for MRI bias field correction optimization.
This is a wrapping class which provides interfaces between images, the bias field, the internal energy function (CompositeValleyFunction), and the Optimizer.
This class is templated over the type of the input image (TImage), the image mask (which tells which pixels in the input image should be included for energy value calculation), and the bias field (TBiasField).
Definition at line 47 of file itkMRIBiasFieldCorrectionFilter.h.
Public Types | |
using | BiasFieldType = TBiasField |
using | ConstPointer = SmartPointer< const Self > |
using | DerivativeType = Superclass::DerivativeType |
using | ImageElementType = typename ImageType::PixelType |
using | ImageIndexType = typename ImageType::IndexType |
using | ImagePointer = typename ImageType::Pointer |
using | ImageRegionType = typename ImageType::RegionType |
using | ImageType = TImage |
using | InternalEnergyFunction = CompositeValleyFunction |
using | MaskElementType = typename MaskType::PixelType |
using | MaskPointer = typename MaskType::Pointer |
using | MaskType = TImageMask |
using | MeasureType = Superclass::MeasureType |
using | ParametersType = typename Superclass::ParametersType |
using | Pointer = SmartPointer< Self > |
typedef unsigned int | SamplingFactorType [SpaceDimension] |
using | Self = MRIBiasEnergyFunction |
using | Superclass = SingleValuedCostFunction |
Public Types inherited from itk::SingleValuedCostFunction | |
using | ConstPointer = SmartPointer< const Self > |
using | DerivativeType = Array< ParametersValueType > |
using | MeasureType = double |
using | ParametersType = Superclass::ParametersType |
using | ParametersValueType = Superclass::ParametersValueType |
using | Pointer = SmartPointer< Self > |
using | Self = SingleValuedCostFunction |
using | Superclass = CostFunction |
Public Types inherited from itk::CostFunctionTemplate< TInternalComputationValueType > | |
using | ConstPointer = SmartPointer< const Self > |
using | ParametersType = OptimizerParameters< TInternalComputationValueType > |
using | ParametersValueType = TInternalComputationValueType |
using | Pointer = SmartPointer< Self > |
using | Self = CostFunctionTemplate |
using | Superclass = Object |
Public Types inherited from itk::Object | |
using | ConstPointer = SmartPointer< const Self > |
using | Pointer = SmartPointer< Self > |
using | Self = Object |
using | Superclass = LightObject |
Public Types inherited from itk::LightObject | |
using | ConstPointer = SmartPointer< const Self > |
using | Pointer = SmartPointer< Self > |
using | Self = LightObject |
Public Member Functions | |
virtual ::itk::LightObject::Pointer | CreateAnother () const |
void | GetDerivative (const ParametersType &, DerivativeType &) const override |
double | GetEnergy0 (double diff) |
virtual const char * | GetNameOfClass () const |
unsigned int | GetNumberOfParameters () const override |
MeasureType | GetValue (const ParametersType ¶meters) const override |
void | InitializeDistributions (Array< double > classMeans, Array< double > classSigmas) |
void | SetBiasField (BiasFieldType *bias) |
virtual void | SetImage (ImageType *_arg) |
virtual void | SetMask (MaskType *_arg) |
virtual void | SetRegion (ImageRegionType _arg) |
void | SetSamplingFactors (SamplingFactorType factor) |
Public Member Functions inherited from itk::SingleValuedCostFunction | |
virtual void | GetValueAndDerivative (const ParametersType ¶meters, MeasureType &value, DerivativeType &derivative) const |
Public Member Functions inherited from itk::Object | |
unsigned long | AddObserver (const EventObject &event, Command *) |
unsigned long | AddObserver (const EventObject &event, Command *) const |
virtual void | DebugOff () const |
virtual void | DebugOn () const |
Command * | GetCommand (unsigned long tag) |
bool | GetDebug () const |
MetaDataDictionary & | GetMetaDataDictionary () |
const MetaDataDictionary & | GetMetaDataDictionary () const |
virtual ModifiedTimeType | GetMTime () const |
virtual const TimeStamp & | GetTimeStamp () const |
bool | HasObserver (const EventObject &event) const |
void | InvokeEvent (const EventObject &) |
void | InvokeEvent (const EventObject &) const |
virtual void | Modified () const |
void | Register () const override |
void | RemoveAllObservers () |
void | RemoveObserver (unsigned long tag) |
void | SetDebug (bool debugFlag) const |
void | SetReferenceCount (int) override |
void | UnRegister () const noexceptoverride |
void | SetMetaDataDictionary (const MetaDataDictionary &rhs) |
void | SetMetaDataDictionary (MetaDataDictionary &&rrhs) |
virtual void | SetObjectName (std::string _arg) |
virtual const std::string & | GetObjectName () const |
Public Member Functions inherited from itk::LightObject | |
virtual void | Delete () |
virtual int | GetReferenceCount () const |
itkCloneMacro (Self) | |
void | Print (std::ostream &os, Indent indent=0) const |
Static Public Member Functions | |
static Pointer | New () |
Static Public Member Functions inherited from itk::Object | |
static bool | GetGlobalWarningDisplay () |
static void | GlobalWarningDisplayOff () |
static void | GlobalWarningDisplayOn () |
static Pointer | New () |
static void | SetGlobalWarningDisplay (bool flag) |
Static Public Member Functions inherited from itk::LightObject | |
static void | BreakOnError () |
static Pointer | New () |
Static Public Attributes | |
static constexpr unsigned int | SpaceDimension = 3 |
Protected Member Functions | |
MRIBiasEnergyFunction () | |
~MRIBiasEnergyFunction () override | |
Protected Member Functions inherited from itk::SingleValuedCostFunction | |
SingleValuedCostFunction ()=default | |
~SingleValuedCostFunction () override | |
Protected Member Functions inherited from itk::CostFunctionTemplate< TInternalComputationValueType > | |
CostFunctionTemplate ()=default | |
void | PrintSelf (std::ostream &os, Indent indent) const override |
~CostFunctionTemplate () override=default | |
Protected Member Functions inherited from itk::Object | |
Object () | |
bool | PrintObservers (std::ostream &os, Indent indent) const |
virtual void | SetTimeStamp (const TimeStamp &time) |
~Object () override | |
Protected Member Functions inherited from itk::LightObject | |
virtual LightObject::Pointer | InternalClone () const |
LightObject () | |
virtual void | PrintHeader (std::ostream &os, Indent indent) const |
virtual void | PrintTrailer (std::ostream &os, Indent indent) const |
virtual | ~LightObject () |
Private Attributes | |
BiasFieldType * | m_BiasField |
ImagePointer | m_Image |
InternalEnergyFunction * | m_InternalEnergyFunction |
MaskPointer | m_Mask |
ImageRegionType | m_Region |
SamplingFactorType | m_SamplingFactor |
Additional Inherited Members | |
Protected Attributes inherited from itk::LightObject | |
std::atomic< int > | m_ReferenceCount |
using itk::MRIBiasEnergyFunction< TImage, TImageMask, TBiasField >::BiasFieldType = TBiasField |
Bias field type definition.
Definition at line 75 of file itkMRIBiasFieldCorrectionFilter.h.
using itk::MRIBiasEnergyFunction< TImage, TImageMask, TBiasField >::ConstPointer = SmartPointer< const Self > |
Definition at line 56 of file itkMRIBiasFieldCorrectionFilter.h.
using itk::MRIBiasEnergyFunction< TImage, TImageMask, TBiasField >::DerivativeType = Superclass::DerivativeType |
Not used, but expected by SingleValuedNonLinearOptimizer class.
Definition at line 82 of file itkMRIBiasFieldCorrectionFilter.h.
using itk::MRIBiasEnergyFunction< TImage, TImageMask, TBiasField >::ImageElementType = typename ImageType::PixelType |
Definition at line 67 of file itkMRIBiasFieldCorrectionFilter.h.
using itk::MRIBiasEnergyFunction< TImage, TImageMask, TBiasField >::ImageIndexType = typename ImageType::IndexType |
Definition at line 68 of file itkMRIBiasFieldCorrectionFilter.h.
using itk::MRIBiasEnergyFunction< TImage, TImageMask, TBiasField >::ImagePointer = typename ImageType::Pointer |
Definition at line 66 of file itkMRIBiasFieldCorrectionFilter.h.
using itk::MRIBiasEnergyFunction< TImage, TImageMask, TBiasField >::ImageRegionType = typename ImageType::RegionType |
Definition at line 69 of file itkMRIBiasFieldCorrectionFilter.h.
using itk::MRIBiasEnergyFunction< TImage, TImageMask, TBiasField >::ImageType = TImage |
Image related type definitions.
Definition at line 65 of file itkMRIBiasFieldCorrectionFilter.h.
using itk::MRIBiasEnergyFunction< TImage, TImageMask, TBiasField >::InternalEnergyFunction = CompositeValleyFunction |
The type of the internal energy function.
Definition at line 90 of file itkMRIBiasFieldCorrectionFilter.h.
using itk::MRIBiasEnergyFunction< TImage, TImageMask, TBiasField >::MaskElementType = typename MaskType::PixelType |
Definition at line 72 of file itkMRIBiasFieldCorrectionFilter.h.
using itk::MRIBiasEnergyFunction< TImage, TImageMask, TBiasField >::MaskPointer = typename MaskType::Pointer |
Definition at line 71 of file itkMRIBiasFieldCorrectionFilter.h.
using itk::MRIBiasEnergyFunction< TImage, TImageMask, TBiasField >::MaskType = TImageMask |
Definition at line 70 of file itkMRIBiasFieldCorrectionFilter.h.
using itk::MRIBiasEnergyFunction< TImage, TImageMask, TBiasField >::MeasureType = Superclass::MeasureType |
The cost value type.
Definition at line 85 of file itkMRIBiasFieldCorrectionFilter.h.
using itk::MRIBiasEnergyFunction< TImage, TImageMask, TBiasField >::ParametersType = typename Superclass::ParametersType |
Parameters type for optimizier (coefficients type for bias field estimate).
Definition at line 79 of file itkMRIBiasFieldCorrectionFilter.h.
using itk::MRIBiasEnergyFunction< TImage, TImageMask, TBiasField >::Pointer = SmartPointer< Self > |
Definition at line 55 of file itkMRIBiasFieldCorrectionFilter.h.
typedef unsigned int itk::MRIBiasEnergyFunction< TImage, TImageMask, TBiasField >::SamplingFactorType[SpaceDimension] |
The type of the sampling factors.
Definition at line 93 of file itkMRIBiasFieldCorrectionFilter.h.
using itk::MRIBiasEnergyFunction< TImage, TImageMask, TBiasField >::Self = MRIBiasEnergyFunction |
Standard class type aliases.
Definition at line 53 of file itkMRIBiasFieldCorrectionFilter.h.
using itk::MRIBiasEnergyFunction< TImage, TImageMask, TBiasField >::Superclass = SingleValuedCostFunction |
Definition at line 54 of file itkMRIBiasFieldCorrectionFilter.h.
|
protected |
Constructor.
|
overrideprotected |
Destructor.
|
virtual |
Create an object from an instance, potentially deferring to a factory. This method allows you to create an instance of an object that is exactly the same type as the referring object. This is useful in cases where an object has been cast back to a base class.
Reimplemented from itk::Object.
|
inlineoverridevirtual |
Dummy implementation to confirm to the SingleValuedCostFunction interfaces. It is pure virtual in the superclass.
Implements itk::SingleValuedCostFunction.
Definition at line 132 of file itkMRIBiasFieldCorrectionFilter.h.
|
inline |
Get an energy value for the intensity difference between a pixel and its corresponding bias.
Definition at line 121 of file itkMRIBiasFieldCorrectionFilter.h.
|
virtual |
Run-time type information (and related methods).
Reimplemented from itk::SingleValuedCostFunction.
|
overridevirtual |
Return the number of parameters required to compute this cost function. This method MUST be overloaded by derived classes.
Implements itk::CostFunctionTemplate< TInternalComputationValueType >.
|
overridevirtual |
Gets the total energy value of an image or a slice using the given parameters.
Implements itk::SingleValuedCostFunction.
void itk::MRIBiasEnergyFunction< TImage, TImageMask, TBiasField >::InitializeDistributions | ( | Array< double > | classMeans, |
Array< double > | classSigmas | ||
) |
Set Mean and Sigma for the normal distributions
|
static |
Method for creation through the object factory.
|
inline |
Sets the BiasField object.
Definition at line 105 of file itkMRIBiasFieldCorrectionFilter.h.
|
virtual |
Specify the input image.
|
virtual |
Specify the input mask image.
|
virtual |
Set the image region which will be included for energy calculation.
|
inline |
Sets the sampling factors of the energy function in each direction. Default is 1 in each dimension
Definition at line 110 of file itkMRIBiasFieldCorrectionFilter.h.
|
private |
Bias field object pointer.
Definition at line 154 of file itkMRIBiasFieldCorrectionFilter.h.
|
private |
Input image smart pointer.
Definition at line 157 of file itkMRIBiasFieldCorrectionFilter.h.
|
private |
Internal energy function object pointer.
Definition at line 166 of file itkMRIBiasFieldCorrectionFilter.h.
|
private |
Input mask image smart pointer.
Definition at line 160 of file itkMRIBiasFieldCorrectionFilter.h.
|
private |
Region of interest.
Definition at line 163 of file itkMRIBiasFieldCorrectionFilter.h.
|
private |
Sampling factors
Definition at line 169 of file itkMRIBiasFieldCorrectionFilter.h.
|
static |
Definition at line 87 of file itkMRIBiasFieldCorrectionFilter.h.