Public Types | Public Member Functions | Protected Member Functions | Protected Attributes

cmtk::EntropyMinimizationIntensityCorrectionFunctionalDevice< NOrderAdd, NOrderMul > Class Template Reference
[cmtkGPU library]

Base class for GPU implementation entropy-minimzation MR bias correction functional using Device. More...

#include <cmtkEntropyMinimizationIntensityCorrectionFunctionalDevice.h>

Inheritance diagram for cmtk::EntropyMinimizationIntensityCorrectionFunctionalDevice< NOrderAdd, NOrderMul >:
Inheritance graph
[legend]
Collaboration diagram for cmtk::EntropyMinimizationIntensityCorrectionFunctionalDevice< NOrderAdd, NOrderMul >:
Collaboration graph
[legend]

List of all members.

Public Types

typedef
EntropyMinimizationIntensityCorrectionFunctionalDevice
< NOrderAdd, NOrderMul > 
Self
 This class type.
typedef SmartPointer< SelfSmartPtr
 Pointer to this class.
typedef
EntropyMinimizationIntensityCorrectionFunctional
< NOrderAdd, NOrderMul > 
Superclass
 Superclass type.
typedef Superclass::ReturnType ReturnType
 Return type of the functional evaluation.

Public Member Functions

virtual ~EntropyMinimizationIntensityCorrectionFunctionalDevice ()
 Virtual destructor.
virtual void SetInputImage (UniformVolume::SmartConstPtr &inputImage)
 Set input image.
virtual void SetForegroundMask (const UniformVolume &foregroundMask)
 Set foreground mask.
virtual Self::ReturnType EvaluateAt (CoordinateVector &v)
 GPU-based functional evaluation for given parameter vector.
virtual Self::ReturnType EvaluateWithGradient (CoordinateVector &v, CoordinateVector &g, const Types::Coordinate step)
 GPU-based implementation of gradient evaluation.

Protected Member Functions

void UpdateOutputImageDevice ()
 Update output image on device.
Self::ReturnType EvaluateDevice ()
 Evaluate corrected image entropy on device.

Protected Attributes

size_t m_NumberOfPixels
 Number of image pixels.
DeviceUniformVolume::SmartPtr m_InputImageDevice
 Input image in device memory.
DeviceMemory< int >::SmartPtr m_ForegroundMaskDevice
 Binary foreground mask in device memory.
DeviceMemory< float >::SmartPtr m_OutputDataDevice
 Output image data.
DeviceHistogram::SmartPtr m_HistogramDevice
 Image histogram on device.

Detailed Description

template<unsigned int NOrderAdd, unsigned int NOrderMul>
class cmtk::EntropyMinimizationIntensityCorrectionFunctionalDevice< NOrderAdd, NOrderMul >

Base class for GPU implementation entropy-minimzation MR bias correction functional using Device.

Inherit non-GPU base class.

Definition at line 52 of file cmtkEntropyMinimizationIntensityCorrectionFunctionalDevice.h.


Member Typedef Documentation

template<unsigned int NOrderAdd, unsigned int NOrderMul>
typedef Superclass::ReturnType cmtk::EntropyMinimizationIntensityCorrectionFunctionalDevice< NOrderAdd, NOrderMul >::ReturnType

Return type of the functional evaluation.

Reimplemented from cmtk::Functional.

Definition at line 67 of file cmtkEntropyMinimizationIntensityCorrectionFunctionalDevice.h.

template<unsigned int NOrderAdd, unsigned int NOrderMul>
typedef EntropyMinimizationIntensityCorrectionFunctionalDevice<NOrderAdd,NOrderMul> cmtk::EntropyMinimizationIntensityCorrectionFunctionalDevice< NOrderAdd, NOrderMul >::Self
template<unsigned int NOrderAdd, unsigned int NOrderMul>
typedef SmartPointer<Self> cmtk::EntropyMinimizationIntensityCorrectionFunctionalDevice< NOrderAdd, NOrderMul >::SmartPtr
template<unsigned int NOrderAdd, unsigned int NOrderMul>
typedef EntropyMinimizationIntensityCorrectionFunctional<NOrderAdd,NOrderMul> cmtk::EntropyMinimizationIntensityCorrectionFunctionalDevice< NOrderAdd, NOrderMul >::Superclass

Constructor & Destructor Documentation

template<unsigned int NOrderAdd, unsigned int NOrderMul>
virtual cmtk::EntropyMinimizationIntensityCorrectionFunctionalDevice< NOrderAdd, NOrderMul >::~EntropyMinimizationIntensityCorrectionFunctionalDevice (  ) [inline, virtual]

Virtual destructor.

Definition at line 70 of file cmtkEntropyMinimizationIntensityCorrectionFunctionalDevice.h.


Member Function Documentation

template<unsigned int NOrderAdd, unsigned int NOrderMul>
virtual Self::ReturnType cmtk::EntropyMinimizationIntensityCorrectionFunctionalDevice< NOrderAdd, NOrderMul >::EvaluateAt ( CoordinateVector v ) [inline, virtual]

GPU-based functional evaluation for given parameter vector.

Reimplemented from cmtk::EntropyMinimizationIntensityCorrectionFunctionalBase.

Definition at line 79 of file cmtkEntropyMinimizationIntensityCorrectionFunctionalDevice.h.

template<unsigned int NOrderAdd, unsigned int NOrderMul>
cmtk::EntropyMinimizationIntensityCorrectionFunctionalDevice< NOrderAdd, NOrderMul >::ReturnType cmtk::EntropyMinimizationIntensityCorrectionFunctionalDevice< NOrderAdd, NOrderMul >::EvaluateDevice (  ) [protected]

Evaluate corrected image entropy on device.

Definition at line 151 of file cmtkEntropyMinimizationIntensityCorrectionFunctionalDevice.txx.

References cmtk::Types::Range< T >::m_LowerBound, and cmtk::Types::Range< T >::m_UpperBound.

template<unsigned int NOrderAdd, unsigned int NOrderMul>
cmtk::EntropyMinimizationIntensityCorrectionFunctionalDevice< NOrderAdd, NOrderMul >::ReturnType cmtk::EntropyMinimizationIntensityCorrectionFunctionalDevice< NOrderAdd, NOrderMul >::EvaluateWithGradient ( CoordinateVector v,
CoordinateVector g,
const Types::Coordinate  step 
) [virtual]

GPU-based implementation of gradient evaluation.

This function uses UpdateOutputImageDevice to update the output image using the computation device.

Reimplemented from cmtk::EntropyMinimizationIntensityCorrectionFunctional< NOrderAdd, NOrderMul >.

Definition at line 72 of file cmtkEntropyMinimizationIntensityCorrectionFunctionalDevice.txx.

template<unsigned int NOrderAdd, unsigned int NOrderMul>
void cmtk::EntropyMinimizationIntensityCorrectionFunctionalDevice< NOrderAdd, NOrderMul >::SetForegroundMask ( const UniformVolume foregroundMask ) [virtual]
template<unsigned int NOrderAdd, unsigned int NOrderMul>
void cmtk::EntropyMinimizationIntensityCorrectionFunctionalDevice< NOrderAdd, NOrderMul >::SetInputImage ( UniformVolume::SmartConstPtr inputImage ) [virtual]
template<unsigned int NOrderAdd, unsigned int NOrderMul>
void cmtk::EntropyMinimizationIntensityCorrectionFunctionalDevice< NOrderAdd, NOrderMul >::UpdateOutputImageDevice (  ) [protected]

Member Data Documentation

template<unsigned int NOrderAdd, unsigned int NOrderMul>
DeviceMemory<int>::SmartPtr cmtk::EntropyMinimizationIntensityCorrectionFunctionalDevice< NOrderAdd, NOrderMul >::m_ForegroundMaskDevice [protected]

Binary foreground mask in device memory.

Definition at line 100 of file cmtkEntropyMinimizationIntensityCorrectionFunctionalDevice.h.

template<unsigned int NOrderAdd, unsigned int NOrderMul>
DeviceHistogram::SmartPtr cmtk::EntropyMinimizationIntensityCorrectionFunctionalDevice< NOrderAdd, NOrderMul >::m_HistogramDevice [protected]

Image histogram on device.

Definition at line 106 of file cmtkEntropyMinimizationIntensityCorrectionFunctionalDevice.h.

template<unsigned int NOrderAdd, unsigned int NOrderMul>
DeviceUniformVolume::SmartPtr cmtk::EntropyMinimizationIntensityCorrectionFunctionalDevice< NOrderAdd, NOrderMul >::m_InputImageDevice [protected]

Input image in device memory.

Definition at line 97 of file cmtkEntropyMinimizationIntensityCorrectionFunctionalDevice.h.

template<unsigned int NOrderAdd, unsigned int NOrderMul>
size_t cmtk::EntropyMinimizationIntensityCorrectionFunctionalDevice< NOrderAdd, NOrderMul >::m_NumberOfPixels [protected]
template<unsigned int NOrderAdd, unsigned int NOrderMul>
DeviceMemory<float>::SmartPtr cmtk::EntropyMinimizationIntensityCorrectionFunctionalDevice< NOrderAdd, NOrderMul >::m_OutputDataDevice [protected]

Output image data.

Definition at line 103 of file cmtkEntropyMinimizationIntensityCorrectionFunctionalDevice.h.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines