ITK
4.3.0
Insight Segmentation and Registration Toolkit
|
#include <itkGPUGradientNDAnisotropicDiffusionFunction.h>
This class implements an N-dimensional version of the classic Perona-Malik anisotropic diffusion equation for scalar-valued images on the GPU. See itkAnisotropicDiffusionFunction for an overview of the anisotropic diffusion framework and equation.
.
Definition at line 59 of file itkGPUGradientNDAnisotropicDiffusionFunction.h.
Public Member Functions | |
virtual ::itk::LightObject::Pointer | CreateAnother (void) const |
virtual const char * | GetNameOfClass () const |
virtual void | GPUComputeUpdate (const typename TImage::Pointer output, typename TImage::Pointer buffer, void *globalData) |
virtual void | InitializeIteration () |
itkGetOpenCLSourceFromKernelMacro (GPUGradientNDAnisotropicDiffusionFunctionKernel) | |
Public Member Functions inherited from itk::GPUScalarAnisotropicDiffusionFunction< TImage > | |
virtual void | GPUCalculateAverageGradientMagnitudeSquared (TImage *) |
itkGetOpenCLSourceFromKernelMacro (GPUScalarAnisotropicDiffusionFunctionKernel) | |
Public Member Functions inherited from itk::GPUAnisotropicDiffusionFunction< TImage > | |
virtual TimeStepType | ComputeGlobalTimeStep (void *) const |
const double & | GetAverageGradientMagnitudeSquared () const |
const double & | GetConductanceParameter () const |
virtual void * | GetGlobalDataPointer () const |
const TimeStepType & | GetTimeStep () const |
virtual void | GPUCalculateAverageGradientMagnitudeSquared (ImageType *)=0 |
virtual void | ReleaseGlobalDataPointer (void *) const |
void | SetAverageGradientMagnitudeSquared (const double &c) |
void | SetConductanceParameter (const double &c) |
void | SetTimeStep (const TimeStepType &t) |
Public Member Functions inherited from itk::GPUFiniteDifferenceFunction< TImage > | |
virtual void | GPUAllocateMetricData (unsigned int) |
virtual void | GPUReleaseMetricData () |
virtual PixelType | ComputeUpdate (const NeighborhoodType &, void *, const FloatOffsetType &) |
Public Member Functions inherited from itk::FiniteDifferenceFunction< TImage > | |
const NeighborhoodScalesType | ComputeNeighborhoodScales () const |
const RadiusType & | GetRadius () const |
void | GetScaleCoefficients (PixelRealType vals[ImageDimension]) const |
void | SetRadius (const RadiusType &r) |
void | SetScaleCoefficients (PixelRealType vals[ImageDimension]) |
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 |
virtual void | Register () const |
virtual void | SetReferenceCount (int) |
virtual void | UnRegister () const |
Static Public Member Functions | |
static Pointer | New () |
Static Public Attributes | |
static const unsigned int | ImageDimension = Superclass::ImageDimension |
Static Public Attributes inherited from itk::GPUScalarAnisotropicDiffusionFunction< TImage > | |
static const unsigned int | ImageDimension = Superclass::ImageDimension |
Static Public Attributes inherited from itk::GPUAnisotropicDiffusionFunction< TImage > | |
static const unsigned int | ImageDimension = Superclass::ImageDimension |
Static Public Attributes inherited from itk::GPUFiniteDifferenceFunction< TImage > | |
static const unsigned int | ImageDimension |
Static Public Attributes inherited from itk::FiniteDifferenceFunction< TImage > | |
static const unsigned int | ImageDimension |
Protected Attributes | |
DerivativeOperator< PixelType, itkGetStaticConstMacro(ImageDimension) > | dx_op |
NeighborhoodSizeValueType | m_Center |
NeighborhoodInnerProduct < ImageType > | m_InnerProduct |
PixelType | m_K |
NeighborhoodSizeValueType | m_Stride [ImageDimension] |
std::slice | x_slice [ImageDimension] |
std::slice | xa_slice [ImageDimension][ImageDimension] |
std::slice | xd_slice [ImageDimension][ImageDimension] |
Static Protected Attributes | |
static double | m_MIN_NORM |
Private Member Functions | |
GPUGradientNDAnisotropicDiffusionFunction (const Self &) | |
void | operator= (const Self &) |
Additional Inherited Members | |
Protected Types inherited from itk::LightObject | |
typedef int | InternalReferenceCountType |
typedef SmartPointer< const Self > itk::GPUGradientNDAnisotropicDiffusionFunction< TImage >::ConstPointer |
Definition at line 67 of file itkGPUGradientNDAnisotropicDiffusionFunction.h.
typedef Superclass::FloatOffsetType itk::GPUGradientNDAnisotropicDiffusionFunction< TImage >::FloatOffsetType |
Definition at line 83 of file itkGPUGradientNDAnisotropicDiffusionFunction.h.
typedef Superclass::ImageType itk::GPUGradientNDAnisotropicDiffusionFunction< TImage >::ImageType |
Inherit some parameters from the superclass type.
Definition at line 74 of file itkGPUGradientNDAnisotropicDiffusionFunction.h.
typedef SizeValueType itk::GPUGradientNDAnisotropicDiffusionFunction< TImage >::NeighborhoodSizeValueType |
Definition at line 85 of file itkGPUGradientNDAnisotropicDiffusionFunction.h.
typedef Superclass::NeighborhoodType itk::GPUGradientNDAnisotropicDiffusionFunction< TImage >::NeighborhoodType |
Definition at line 82 of file itkGPUGradientNDAnisotropicDiffusionFunction.h.
typedef Superclass::PixelRealType itk::GPUGradientNDAnisotropicDiffusionFunction< TImage >::PixelRealType |
Definition at line 79 of file itkGPUGradientNDAnisotropicDiffusionFunction.h.
typedef Superclass::PixelType itk::GPUGradientNDAnisotropicDiffusionFunction< TImage >::PixelType |
Definition at line 78 of file itkGPUGradientNDAnisotropicDiffusionFunction.h.
typedef SmartPointer< Self > itk::GPUGradientNDAnisotropicDiffusionFunction< TImage >::Pointer |
Definition at line 66 of file itkGPUGradientNDAnisotropicDiffusionFunction.h.
typedef Superclass::RadiusType itk::GPUGradientNDAnisotropicDiffusionFunction< TImage >::RadiusType |
Definition at line 81 of file itkGPUGradientNDAnisotropicDiffusionFunction.h.
typedef GPUGradientNDAnisotropicDiffusionFunction itk::GPUGradientNDAnisotropicDiffusionFunction< TImage >::Self |
Standard class typedefs.
Definition at line 64 of file itkGPUGradientNDAnisotropicDiffusionFunction.h.
typedef GPUScalarAnisotropicDiffusionFunction< TImage > itk::GPUGradientNDAnisotropicDiffusionFunction< TImage >::Superclass |
Definition at line 65 of file itkGPUGradientNDAnisotropicDiffusionFunction.h.
typedef Superclass::TimeStepType itk::GPUGradientNDAnisotropicDiffusionFunction< TImage >::TimeStepType |
Definition at line 80 of file itkGPUGradientNDAnisotropicDiffusionFunction.h.
|
protected |
|
inlineprotected |
Definition at line 106 of file itkGPUGradientNDAnisotropicDiffusionFunction.h.
|
private |
|
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::LightObject.
|
virtual |
Run-time type information (and related methods)
Reimplemented from itk::GPUScalarAnisotropicDiffusionFunction< TImage >.
|
virtual |
Compute the equation value.
Implements itk::GPUFiniteDifferenceFunction< TImage >.
|
inlinevirtual |
This method is called prior to each iteration of the solver.
Reimplemented from itk::GPUFiniteDifferenceFunction< TImage >.
Definition at line 98 of file itkGPUGradientNDAnisotropicDiffusionFunction.h.
itk::GPUGradientNDAnisotropicDiffusionFunction< TImage >::itkGetOpenCLSourceFromKernelMacro | ( | GPUGradientNDAnisotropicDiffusionFunctionKernel | ) |
Get OpenCL Kernel source as a string, creates a GetOpenCLSource method
|
static |
Method for creation through the object factory.
|
private |
|
protected |
Derivative operator.
Definition at line 118 of file itkGPUGradientNDAnisotropicDiffusionFunction.h.
|
static |
Inherit some parameters from the superclass type.
Definition at line 88 of file itkGPUGradientNDAnisotropicDiffusionFunction.h.
|
protected |
Definition at line 123 of file itkGPUGradientNDAnisotropicDiffusionFunction.h.
|
protected |
Inner product function.
Definition at line 110 of file itkGPUGradientNDAnisotropicDiffusionFunction.h.
|
protected |
Modified global average gradient magnitude term.
Definition at line 121 of file itkGPUGradientNDAnisotropicDiffusionFunction.h.
|
staticprotected |
Definition at line 126 of file itkGPUGradientNDAnisotropicDiffusionFunction.h.
|
protected |
Definition at line 124 of file itkGPUGradientNDAnisotropicDiffusionFunction.h.
|
protected |
Slices for the ND neighborhood.
Definition at line 113 of file itkGPUGradientNDAnisotropicDiffusionFunction.h.
|
protected |
Definition at line 114 of file itkGPUGradientNDAnisotropicDiffusionFunction.h.
|
protected |
Definition at line 115 of file itkGPUGradientNDAnisotropicDiffusionFunction.h.