ITK
4.6.0
Insight Segmentation and Registration Toolkit
|
#include <itkGPUDenseFiniteDifferenceImageFilter.h>
This is the GPU version of DenseFiniteDifferenceImageFilter class. Currently only single-threaded, single GPU version is implemented. See documentation for FiniteDifferenceImageFilter for an overview of the iterative finite difference algorithm:
Use m_UpdateBuffer defined in CPU superclass (DenseFiniteDifferenceImageFilter).
Definition at line 54 of file itkGPUDenseFiniteDifferenceImageFilter.h.
Public Member Functions | |
virtual const char * | GetNameOfClass () const |
itkGetOpenCLSourceFromKernelMacro (GPUDenseFiniteDifferenceImageFilterKernel) | |
typedef (Concept::MultiplyOperator< PixelType, double >) OutputTimesDoubleCheck | |
typedef (Concept::AdditiveOperators< PixelType >) OutputAdditiveOperatorsCheck | |
typedef (Concept::Convertible< typename TInputImage::PixelType, PixelType >) InputConvertibleToOutputCheck | |
Public Member Functions inherited from itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter > | |
virtual void | SetDifferenceFunction (FiniteDifferenceFunctionType *_arg) |
void | SetStateToInitialized () |
void | SetStateToUninitialized () |
virtual const FiniteDifferenceFunctionType::Pointer & | GetDifferenceFunction () const |
virtual void | SetUseImageSpacing (bool _arg) |
virtual void | UseImageSpacingOn () |
virtual void | UseImageSpacingOff () |
virtual const bool & | GetUseImageSpacing () const |
virtual void | SetMaximumRMSError (double _arg) |
virtual const double & | GetMaximumRMSError () const |
virtual void | SetRMSChange (double _arg) |
virtual const double & | GetRMSChange () const |
virtual void | SetState (FilterStateType _arg) |
virtual const FilterStateType & | GetState () const |
virtual void | SetManualReinitialization (bool _arg) |
virtual const bool & | GetManualReinitialization () const |
virtual void | ManualReinitializationOn () |
virtual void | ManualReinitializationOff () |
virtual const TimeProbe & | GetInitTime () const |
virtual const TimeProbe & | GetComputeUpdateTime () const |
virtual const TimeProbe & | GetApplyUpdateTime () const |
virtual const TimeProbe & | GetSmoothFieldTime () const |
Public Member Functions inherited from itk::GPUImageToImageFilter< TInputImage, TOutputImage, TParentImageFilter > | |
virtual ::itk::LightObject::Pointer | CreateAnother (void) const |
void | GenerateData () |
virtual bool | GetGPUEnabled () const |
virtual void | GPUEnabledOff () |
virtual void | GPUEnabledOn () |
virtual void | GraftOutput (DataObject *output) |
virtual void | GraftOutput (const DataObjectIdentifierType &key, DataObject *output) |
virtual void | SetGPUEnabled (bool _arg) |
Static Public Attributes | |
static const unsigned int | ImageDimension = GPUSuperclass::ImageDimension |
Static Public Attributes inherited from itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter > | |
static const unsigned int | ImageDimension = OutputImageType::ImageDimension |
Static Public Attributes inherited from itk::GPUInPlaceImageFilter< TInputImage, TOutputImage, TParentImageFilter > | |
static const unsigned int | InputImageDimension = TInputImage::ImageDimension |
static const unsigned int | OutputImageDimension = TOutputImage::ImageDimension |
Static Public Attributes inherited from itk::GPUImageToImageFilter< TInputImage, TOutputImage, TParentImageFilter > | |
static const unsigned int | InputImageDimension = TInputImage::ImageDimension |
static const unsigned int | OutputImageDimension = TOutputImage::ImageDimension |
Protected Attributes | |
int | m_ApplyUpdateGPUKernelHandle |
Protected Attributes inherited from itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter > | |
TimeProbe | m_ApplyUpdateTime |
TimeProbe | m_ComputeUpdateTime |
TimeProbe | m_InitTime |
bool | m_ManualReinitialization |
double | m_MaximumRMSError |
double | m_RMSChange |
TimeProbe | m_SmoothFieldTime |
Protected Attributes inherited from itk::GPUImageToImageFilter< TInputImage, TOutputImage, TParentImageFilter > | |
GPUKernelManager::Pointer | m_GPUKernelManager |
Private Member Functions | |
GPUDenseFiniteDifferenceImageFilter (const Self &) | |
void | operator= (const Self &) |
Additional Inherited Members | |
Static Public Member Functions inherited from itk::GPUImageToImageFilter< TInputImage, TOutputImage, TParentImageFilter > | |
static Pointer | New () |
typedef SmartPointer< const Self > itk::GPUDenseFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::ConstPointer |
Definition at line 64 of file itkGPUDenseFiniteDifferenceImageFilter.h.
typedef TParentImageFilter itk::GPUDenseFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::CPUSuperclass |
Definition at line 62 of file itkGPUDenseFiniteDifferenceImageFilter.h.
typedef GPUSuperclass::FiniteDifferenceFunctionType itk::GPUDenseFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::FiniteDifferenceFunctionType |
Definition at line 72 of file itkGPUDenseFiniteDifferenceImageFilter.h.
typedef GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter > itk::GPUDenseFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::GPUSuperclass |
Definition at line 61 of file itkGPUDenseFiniteDifferenceImageFilter.h.
typedef GPUSuperclass::InputImageType itk::GPUDenseFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::InputImageType |
Convenient typedefs
Definition at line 67 of file itkGPUDenseFiniteDifferenceImageFilter.h.
typedef GPUSuperclass::OutputImageType itk::GPUDenseFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::OutputImageType |
Definition at line 71 of file itkGPUDenseFiniteDifferenceImageFilter.h.
typedef GPUSuperclass::PixelType itk::GPUDenseFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::PixelType |
The pixel type of the output image will be used in computations. Inherited from the superclass.
Definition at line 80 of file itkGPUDenseFiniteDifferenceImageFilter.h.
typedef SmartPointer< Self > itk::GPUDenseFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::Pointer |
Definition at line 63 of file itkGPUDenseFiniteDifferenceImageFilter.h.
typedef GPUDenseFiniteDifferenceImageFilter itk::GPUDenseFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::Self |
Standard class typedefs
Definition at line 60 of file itkGPUDenseFiniteDifferenceImageFilter.h.
typedef GPUSuperclass::TimeStepType itk::GPUDenseFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::TimeStepType |
The value type of a time step. Inherited from the superclass.
Definition at line 83 of file itkGPUDenseFiniteDifferenceImageFilter.h.
typedef OutputImageType itk::GPUDenseFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::UpdateBufferType |
The container type for the update buffer.
Definition at line 86 of file itkGPUDenseFiniteDifferenceImageFilter.h.
|
protected |
|
inlineprotected |
Definition at line 104 of file itkGPUDenseFiniteDifferenceImageFilter.h.
|
private |
|
protectedvirtual |
This method allocates storage in m_UpdateBuffer. It is called from Superclass::GenerateData().
Implements itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >.
|
protectedvirtual |
This method applies changes from the m_UpdateBuffer to the output using the GPU. "dt" is the time step to use for the update of each pixel.
Reimplemented in itk::GPUDemonsRegistrationFilter< TFixedImage, TMovingImage, TDisplacementField, TParentImageFilter >.
|
protectedvirtual |
A simple method to copy the data from the input to the output. ( Supports "read-only" image adaptors in the case where the input image type converts to a different output image type. )
Implements itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >.
Reimplemented in itk::GPUPDEDeformableRegistrationFilter< TFixedImage, TMovingImage, TDisplacementField, TParentImageFilter >.
|
virtual |
Run-time type information (and related methods)
Reimplemented from itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >.
Reimplemented in itk::GPUPDEDeformableRegistrationFilter< TFixedImage, TMovingImage, TDisplacementField, TParentImageFilter >, itk::GPUDemonsRegistrationFilter< TFixedImage, TMovingImage, TDisplacementField, TParentImageFilter >, itk::GPUGradientAnisotropicDiffusionImageFilter< TInputImage, TOutputImage, TParentImageFilter >, and itk::GPUAnisotropicDiffusionImageFilter< TInputImage, TOutputImage, TParentImageFilter >.
|
inlineprotectedvirtual |
Method to allow subclasses to get direct access to the update buffer
Definition at line 125 of file itkGPUDenseFiniteDifferenceImageFilter.h.
|
protectedvirtual |
|
protectedvirtual |
This method populates an update buffer with changes for each pixel in the output using the GPU. Returns value is a time step to be used for the update.
Implements itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >.
itk::GPUDenseFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::itkGetOpenCLSourceFromKernelMacro | ( | GPUDenseFiniteDifferenceImageFilterKernel | ) |
Get OpenCL Kernel source as a string, creates a GetOpenCLSource method
|
private |
|
protectedvirtual |
itk::GPUDenseFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::typedef | ( | Concept::MultiplyOperator< PixelType, double > | ) |
This class requires OutputTimesDoubleCheck in the form of ( Concept::MultiplyOperator< PixelType, double > )
itk::GPUDenseFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::typedef | ( | Concept::AdditiveOperators< PixelType > | ) |
This class requires OutputAdditiveOperatorsCheck in the form of ( Concept::AdditiveOperators< PixelType > )
itk::GPUDenseFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::typedef | ( | Concept::Convertible< typename TInputImage::PixelType, PixelType > | ) |
This class requires InputConvertibleToOutputCheck in the form of ( Concept::Convertible< typename TInputImage::PixelType, PixelType > )
|
static |
Dimensionality of input and output data is assumed to be the same. It is inherited from the superclass.
Definition at line 76 of file itkGPUDenseFiniteDifferenceImageFilter.h.
|
protected |
Definition at line 134 of file itkGPUDenseFiniteDifferenceImageFilter.h.