Base class for GPU implementation entropy-minimzation MR bias correction functional using Device. More...
#include <cmtkEntropyMinimizationIntensityCorrectionFunctionalDevice.h>
Public Types | |
typedef EntropyMinimizationIntensityCorrectionFunctionalDevice < NOrderAdd, NOrderMul > | Self |
This class type. | |
typedef SmartPointer< Self > | SmartPtr |
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. |
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.
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.
typedef EntropyMinimizationIntensityCorrectionFunctionalDevice<NOrderAdd,NOrderMul> cmtk::EntropyMinimizationIntensityCorrectionFunctionalDevice< NOrderAdd, NOrderMul >::Self |
This class type.
Reimplemented from cmtk::EntropyMinimizationIntensityCorrectionFunctional< NOrderAdd, NOrderMul >.
Definition at line 58 of file cmtkEntropyMinimizationIntensityCorrectionFunctionalDevice.h.
typedef SmartPointer<Self> cmtk::EntropyMinimizationIntensityCorrectionFunctionalDevice< NOrderAdd, NOrderMul >::SmartPtr |
Pointer to this class.
Reimplemented from cmtk::EntropyMinimizationIntensityCorrectionFunctional< NOrderAdd, NOrderMul >.
Definition at line 61 of file cmtkEntropyMinimizationIntensityCorrectionFunctionalDevice.h.
typedef EntropyMinimizationIntensityCorrectionFunctional<NOrderAdd,NOrderMul> cmtk::EntropyMinimizationIntensityCorrectionFunctionalDevice< NOrderAdd, NOrderMul >::Superclass |
Superclass type.
Reimplemented from cmtk::EntropyMinimizationIntensityCorrectionFunctional< NOrderAdd, NOrderMul >.
Definition at line 64 of file cmtkEntropyMinimizationIntensityCorrectionFunctionalDevice.h.
virtual cmtk::EntropyMinimizationIntensityCorrectionFunctionalDevice< NOrderAdd, NOrderMul >::~EntropyMinimizationIntensityCorrectionFunctionalDevice | ( | ) | [inline, virtual] |
Virtual destructor.
Definition at line 70 of file cmtkEntropyMinimizationIntensityCorrectionFunctionalDevice.h.
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.
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.
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.
void cmtk::EntropyMinimizationIntensityCorrectionFunctionalDevice< NOrderAdd, NOrderMul >::SetForegroundMask | ( | const UniformVolume & | foregroundMask ) | [virtual] |
Set foreground mask.
Reimplemented from cmtk::EntropyMinimizationIntensityCorrectionFunctionalBase.
Definition at line 51 of file cmtkEntropyMinimizationIntensityCorrectionFunctionalDevice.txx.
void cmtk::EntropyMinimizationIntensityCorrectionFunctionalDevice< NOrderAdd, NOrderMul >::SetInputImage | ( | UniformVolume::SmartConstPtr & | inputImage ) | [virtual] |
Set input image.
Reimplemented from cmtk::EntropyMinimizationIntensityCorrectionFunctionalBase.
Definition at line 39 of file cmtkEntropyMinimizationIntensityCorrectionFunctionalDevice.txx.
void cmtk::EntropyMinimizationIntensityCorrectionFunctionalDevice< NOrderAdd, NOrderMul >::UpdateOutputImageDevice | ( | ) | [protected] |
Update output image on device.
Definition at line 112 of file cmtkEntropyMinimizationIntensityCorrectionFunctionalDevice.txx.
References cmtk::EntropyMinimizationIntensityCorrectionFunctionalDeviceUpdateOutputImage().
DeviceMemory<int>::SmartPtr cmtk::EntropyMinimizationIntensityCorrectionFunctionalDevice< NOrderAdd, NOrderMul >::m_ForegroundMaskDevice [protected] |
Binary foreground mask in device memory.
Definition at line 100 of file cmtkEntropyMinimizationIntensityCorrectionFunctionalDevice.h.
DeviceHistogram::SmartPtr cmtk::EntropyMinimizationIntensityCorrectionFunctionalDevice< NOrderAdd, NOrderMul >::m_HistogramDevice [protected] |
Image histogram on device.
Definition at line 106 of file cmtkEntropyMinimizationIntensityCorrectionFunctionalDevice.h.
DeviceUniformVolume::SmartPtr cmtk::EntropyMinimizationIntensityCorrectionFunctionalDevice< NOrderAdd, NOrderMul >::m_InputImageDevice [protected] |
Input image in device memory.
Definition at line 97 of file cmtkEntropyMinimizationIntensityCorrectionFunctionalDevice.h.
size_t cmtk::EntropyMinimizationIntensityCorrectionFunctionalDevice< NOrderAdd, NOrderMul >::m_NumberOfPixels [protected] |
Number of image pixels.
Reimplemented from cmtk::EntropyMinimizationIntensityCorrectionFunctionalBase.
Definition at line 94 of file cmtkEntropyMinimizationIntensityCorrectionFunctionalDevice.h.
DeviceMemory<float>::SmartPtr cmtk::EntropyMinimizationIntensityCorrectionFunctionalDevice< NOrderAdd, NOrderMul >::m_OutputDataDevice [protected] |
Output image data.
Definition at line 103 of file cmtkEntropyMinimizationIntensityCorrectionFunctionalDevice.h.