ITK
4.2.0
Insight Segmentation and Registration Toolkit
|
#include <itkGPUAnisotropicDiffusionFunction.h>
Public Types | |
typedef SmartPointer< const Self > | ConstPointer |
typedef Superclass::FloatOffsetType | FloatOffsetType |
typedef Superclass::ImageType | ImageType |
typedef Superclass::NeighborhoodType | NeighborhoodType |
typedef Superclass::PixelRealType | PixelrealType |
typedef Superclass::PixelType | PixelType |
typedef SmartPointer< Self > | Pointer |
typedef Superclass::RadiusType | RadiusType |
typedef GPUAnisotropicDiffusionFunction | Self |
typedef GPUFiniteDifferenceFunction < TImage > | Superclass |
typedef Superclass::TimeStepType | TimeStepType |
Public Types inherited from itk::GPUFiniteDifferenceFunction< TImage > | |
typedef Superclass::DefaultBoundaryConditionType | DefaultBoundaryConditionType |
typedef Superclass | DifferenceFunctionType |
typedef Superclass::PixelRealType | PixelRealType |
Public Types inherited from itk::FiniteDifferenceFunction< TImage > | |
typedef Vector< PixelRealType, itkGetStaticConstMacro(ImageDimension) > | NeighborhoodScalesType |
Public Types inherited from itk::LightObject |
Public Member Functions | |
virtual TimeStepType | ComputeGlobalTimeStep (void *) const |
const double & | GetAverageGradientMagnitudeSquared () const |
const double & | GetConductanceParameter () const |
virtual void * | GetGlobalDataPointer () const |
virtual const char * | GetNameOfClass () 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 | GPUComputeUpdate (const typename TImage::Pointer output, typename TImage::Pointer update, void *gd)=0 |
virtual void | GPUReleaseMetricData () |
virtual void | InitializeIteration () |
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 | SetRadius (const RadiusType &r) |
void | SetScaleCoefficients (PixelRealType vals[ImageDimension]) |
Public Member Functions inherited from itk::LightObject | |
virtual Pointer | CreateAnother () const |
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 Attributes | |
static const unsigned int | ImageDimension = Superclass::ImageDimension |
Static Public Attributes inherited from itk::GPUFiniteDifferenceFunction< TImage > | |
Static Public Attributes inherited from itk::FiniteDifferenceFunction< TImage > |
Protected Member Functions | |
GPUAnisotropicDiffusionFunction () | |
void | PrintSelf (std::ostream &os, Indent indent) const |
~GPUAnisotropicDiffusionFunction () | |
Protected Member Functions inherited from itk::GPUFiniteDifferenceFunction< TImage > | |
GPUFiniteDifferenceFunction () | |
~GPUFiniteDifferenceFunction () | |
Protected Member Functions inherited from itk::FiniteDifferenceFunction< TImage > | |
FiniteDifferenceFunction () | |
~FiniteDifferenceFunction () | |
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 () |
Protected Attributes | |
GPUDataManager::Pointer | m_AnisotropicDiffusionFunctionGPUBuffer |
GPUKernelManager::Pointer | m_AnisotropicDiffusionFunctionGPUKernelManager |
int | m_AverageGradientMagnitudeSquaredGPUKernelHandle |
Protected Attributes inherited from itk::GPUFiniteDifferenceFunction< TImage > | |
int | m_ComputeUpdateGPUKernelHandle |
GPUKernelManager::Pointer | m_GPUKernelManager |
Protected Attributes inherited from itk::FiniteDifferenceFunction< TImage > | |
RadiusType | m_Radius |
PixelRealType | m_ScaleCoefficients [ImageDimension] |
Protected Attributes inherited from itk::LightObject | |
InternalReferenceCountType | m_ReferenceCount |
SimpleFastMutexLock | m_ReferenceCountLock |
Private Member Functions | |
GPUAnisotropicDiffusionFunction (const Self &) | |
void | operator= (const Self &) |
Private Attributes | |
double | m_AverageGradientMagnitudeSquared |
double | m_ConductanceParameter |
TimeStepType | m_TimeStep |
This is the GPU version of AnisotropicDiffusionFunction class.
Definition at line 38 of file itkGPUAnisotropicDiffusionFunction.h.
typedef SmartPointer< const Self > itk::GPUAnisotropicDiffusionFunction< TImage >::ConstPointer |
Reimplemented from itk::GPUFiniteDifferenceFunction< TImage >.
Reimplemented in itk::GPUGradientNDAnisotropicDiffusionFunction< TImage >, and itk::GPUScalarAnisotropicDiffusionFunction< TImage >.
Definition at line 47 of file itkGPUAnisotropicDiffusionFunction.h.
typedef Superclass::FloatOffsetType itk::GPUAnisotropicDiffusionFunction< TImage >::FloatOffsetType |
A floating point offset from an image grid location. Used for interpolation among grid values in a neighborhood.
Reimplemented from itk::GPUFiniteDifferenceFunction< TImage >.
Reimplemented in itk::GPUGradientNDAnisotropicDiffusionFunction< TImage >.
Definition at line 59 of file itkGPUAnisotropicDiffusionFunction.h.
typedef Superclass::ImageType itk::GPUAnisotropicDiffusionFunction< TImage >::ImageType |
Inherit some parameters from the superclass type
Reimplemented from itk::GPUFiniteDifferenceFunction< TImage >.
Reimplemented in itk::GPUGradientNDAnisotropicDiffusionFunction< TImage >, and itk::GPUScalarAnisotropicDiffusionFunction< TImage >.
Definition at line 50 of file itkGPUAnisotropicDiffusionFunction.h.
typedef Superclass::NeighborhoodType itk::GPUAnisotropicDiffusionFunction< TImage >::NeighborhoodType |
Neighborhood type
Reimplemented from itk::GPUFiniteDifferenceFunction< TImage >.
Reimplemented in itk::GPUGradientNDAnisotropicDiffusionFunction< TImage >, and itk::GPUScalarAnisotropicDiffusionFunction< TImage >.
Definition at line 57 of file itkGPUAnisotropicDiffusionFunction.h.
typedef Superclass::PixelRealType itk::GPUAnisotropicDiffusionFunction< TImage >::PixelrealType |
Definition at line 55 of file itkGPUAnisotropicDiffusionFunction.h.
typedef Superclass::PixelType itk::GPUAnisotropicDiffusionFunction< TImage >::PixelType |
Reimplemented from itk::GPUFiniteDifferenceFunction< TImage >.
Reimplemented in itk::GPUGradientNDAnisotropicDiffusionFunction< TImage >, and itk::GPUScalarAnisotropicDiffusionFunction< TImage >.
Definition at line 54 of file itkGPUAnisotropicDiffusionFunction.h.
typedef SmartPointer< Self > itk::GPUAnisotropicDiffusionFunction< TImage >::Pointer |
Reimplemented from itk::GPUFiniteDifferenceFunction< TImage >.
Reimplemented in itk::GPUGradientNDAnisotropicDiffusionFunction< TImage >, and itk::GPUScalarAnisotropicDiffusionFunction< TImage >.
Definition at line 46 of file itkGPUAnisotropicDiffusionFunction.h.
typedef Superclass::RadiusType itk::GPUAnisotropicDiffusionFunction< TImage >::RadiusType |
Neighborhood radius type
Reimplemented from itk::GPUFiniteDifferenceFunction< TImage >.
Reimplemented in itk::GPUGradientNDAnisotropicDiffusionFunction< TImage >, and itk::GPUScalarAnisotropicDiffusionFunction< TImage >.
Definition at line 56 of file itkGPUAnisotropicDiffusionFunction.h.
typedef GPUAnisotropicDiffusionFunction itk::GPUAnisotropicDiffusionFunction< TImage >::Self |
Standard class typedefs.
Reimplemented from itk::GPUFiniteDifferenceFunction< TImage >.
Reimplemented in itk::GPUGradientNDAnisotropicDiffusionFunction< TImage >, and itk::GPUScalarAnisotropicDiffusionFunction< TImage >.
Definition at line 44 of file itkGPUAnisotropicDiffusionFunction.h.
typedef GPUFiniteDifferenceFunction< TImage > itk::GPUAnisotropicDiffusionFunction< TImage >::Superclass |
Reimplemented from itk::GPUFiniteDifferenceFunction< TImage >.
Reimplemented in itk::GPUGradientNDAnisotropicDiffusionFunction< TImage >, and itk::GPUScalarAnisotropicDiffusionFunction< TImage >.
Definition at line 45 of file itkGPUAnisotropicDiffusionFunction.h.
typedef Superclass::TimeStepType itk::GPUAnisotropicDiffusionFunction< TImage >::TimeStepType |
Define the TimeStepType to always be double.
Reimplemented from itk::GPUFiniteDifferenceFunction< TImage >.
Reimplemented in itk::GPUGradientNDAnisotropicDiffusionFunction< TImage >, and itk::GPUScalarAnisotropicDiffusionFunction< TImage >.
Definition at line 58 of file itkGPUAnisotropicDiffusionFunction.h.
|
inlineprotected |
Definition at line 127 of file itkGPUAnisotropicDiffusionFunction.h.
|
inlineprotected |
Definition at line 134 of file itkGPUAnisotropicDiffusionFunction.h.
|
private |
|
inlinevirtual |
Returns the time step supplied by the user. We don't need to use the global data supplied since we are returning a fixed value.
Implements itk::FiniteDifferenceFunction< TImage >.
Definition at line 108 of file itkGPUAnisotropicDiffusionFunction.h.
|
inline |
Set/Get the average gradient magnitude squared.
Definition at line 96 of file itkGPUAnisotropicDiffusionFunction.h.
|
inline |
Definition at line 90 of file itkGPUAnisotropicDiffusionFunction.h.
|
inlinevirtual |
The anisotropic diffusion classes don't use this particular parameter so it's safe to return a null value.
Implements itk::FiniteDifferenceFunction< TImage >.
Definition at line 115 of file itkGPUAnisotropicDiffusionFunction.h.
|
virtual |
Run-time type information (and related methods)
Reimplemented from itk::GPUFiniteDifferenceFunction< TImage >.
Reimplemented in itk::GPUGradientNDAnisotropicDiffusionFunction< TImage >, and itk::GPUScalarAnisotropicDiffusionFunction< TImage >.
|
inline |
Definition at line 79 of file itkGPUAnisotropicDiffusionFunction.h.
|
pure virtual |
This method is called before each iteration. It calculates a scalar value that is the average of the gradient magnitude squared at each pixel in the output image (intermediate solution). The average gradient magnitude value is typically used in the anisotropic diffusion equations to calibrate the conductance term.
|
private |
Mutex lock to protect modification to the reference count
Reimplemented from itk::GPUFiniteDifferenceFunction< TImage >.
Reimplemented in itk::GPUGradientNDAnisotropicDiffusionFunction< TImage >, and itk::GPUScalarAnisotropicDiffusionFunction< TImage >.
|
inlineprotectedvirtual |
Methods invoked by Print() to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.
Reimplemented from itk::GPUFiniteDifferenceFunction< TImage >.
Definition at line 137 of file itkGPUAnisotropicDiffusionFunction.h.
|
inlinevirtual |
Does nothing. No global data is used in this class of equations.
Implements itk::FiniteDifferenceFunction< TImage >.
Definition at line 121 of file itkGPUAnisotropicDiffusionFunction.h.
|
inline |
Definition at line 101 of file itkGPUAnisotropicDiffusionFunction.h.
|
inline |
Set/Get the conductance parameter. The conductance parameter.
Definition at line 85 of file itkGPUAnisotropicDiffusionFunction.h.
|
inline |
Set/Get the time step. For this class of anisotropic diffusion filters, the time-step is supplied by the user and remains fixed for all updates.
Definition at line 74 of file itkGPUAnisotropicDiffusionFunction.h.
|
static |
Inherit some parameters from the superclass type
Reimplemented from itk::GPUFiniteDifferenceFunction< TImage >.
Reimplemented in itk::GPUGradientNDAnisotropicDiffusionFunction< TImage >, and itk::GPUScalarAnisotropicDiffusionFunction< TImage >.
Definition at line 62 of file itkGPUAnisotropicDiffusionFunction.h.
|
protected |
Definition at line 146 of file itkGPUAnisotropicDiffusionFunction.h.
|
protected |
Definition at line 147 of file itkGPUAnisotropicDiffusionFunction.h.
|
private |
Definition at line 155 of file itkGPUAnisotropicDiffusionFunction.h.
|
protected |
Definition at line 150 of file itkGPUAnisotropicDiffusionFunction.h.
|
private |
Definition at line 156 of file itkGPUAnisotropicDiffusionFunction.h.
|
private |
Definition at line 157 of file itkGPUAnisotropicDiffusionFunction.h.