#include <itkGaussianDerivativeImageFunction.h>
Compute the Gaussian derivatives of an the image at a specific location in space, i.e. point, index or continuous index.
This class is templated over the input image type.
Definition at line 50 of file itkGaussianDerivativeImageFunction.h.
Public Member Functions | |
virtual::itk::LightObject::Pointer | CreateAnother () const |
OutputType | Evaluate (const PointType &point) const override |
OutputType | EvaluateAtContinuousIndex (const ContinuousIndexType &cindex) const override |
OutputType | EvaluateAtIndex (const IndexType &index) const override |
const double * | GetExtent () const |
const char * | GetNameOfClass () const override |
const double * | GetSigma () const |
void | SetExtent (const double *extent) |
void | SetExtent (const double extent) |
void | SetInputImage (const InputImageType *ptr) override |
void | SetSigma (const double *sigma) |
void | SetSigma (const double sigma) |
void | SetUseImageSpacing (const bool val) |
virtual void | UseImageSpacingOn () |
virtual void | UseImageSpacingOff () |
virtual bool | GetUseImageSpacing () |
![]() | |
void | ConvertContinuousIndexToNearestIndex (const ContinuousIndexType &cindex, IndexType &index) const |
void | ConvertPointToContinuousIndex (const PointType &point, ContinuousIndexType &cindex) const |
OutputType | Evaluate (const PointType &point) const override=0 |
virtual Vector< double, TInputImage::ImageDimension > | EvaluateAtContinuousIndex (const ContinuousIndexType &index) const=0 |
virtual const ContinuousIndexType & | GetEndContinuousIndex () const |
virtual const IndexType & | GetEndIndex () const |
const InputImageType * | GetInputImage () const |
const char * | GetNameOfClass () const override |
virtual const ContinuousIndexType & | GetStartContinuousIndex () const |
virtual const IndexType & | GetStartIndex () const |
virtual bool | IsInsideBuffer (const IndexType &index) const |
virtual bool | IsInsideBuffer (const ContinuousIndexType &index) const |
virtual bool | IsInsideBuffer (const PointType &point) const |
void | ConvertPointToNearestIndex (const PointType &point, IndexType &index) const |
![]() | |
unsigned long | AddObserver (const EventObject &event, Command *cmd) const |
unsigned long | AddObserver (const EventObject &event, std::function< void(const EventObject &)> function) const |
LightObject::Pointer | CreateAnother () const override |
virtual void | DebugOff () const |
virtual void | DebugOn () const |
Command * | GetCommand (unsigned long tag) |
bool | GetDebug () const |
MetaDataDictionary & | GetMetaDataDictionary () |
const MetaDataDictionary & | GetMetaDataDictionary () const |
virtual ModifiedTimeType | GetMTime () const |
const char * | GetNameOfClass () const override |
virtual const TimeStamp & | GetTimeStamp () const |
bool | HasObserver (const EventObject &event) const |
void | InvokeEvent (const EventObject &) |
void | InvokeEvent (const EventObject &) const |
virtual void | Modified () const |
void | Register () const override |
void | RemoveAllObservers () |
void | RemoveObserver (unsigned long tag) const |
void | SetDebug (bool debugFlag) const |
void | SetReferenceCount (int) override |
void | UnRegister () const noexcept override |
void | SetMetaDataDictionary (const MetaDataDictionary &rhs) |
void | SetMetaDataDictionary (MetaDataDictionary &&rrhs) |
virtual void | SetObjectName (std::string _arg) |
virtual const std::string & | GetObjectName () const |
![]() | |
Pointer | Clone () const |
virtual void | Delete () |
virtual int | GetReferenceCount () const |
void | Print (std::ostream &os, Indent indent=0) const |
Static Public Member Functions | |
static Pointer | New () |
![]() | |
static bool | GetGlobalWarningDisplay () |
static void | GlobalWarningDisplayOff () |
static void | GlobalWarningDisplayOn () |
static Pointer | New () |
static void | SetGlobalWarningDisplay (bool val) |
![]() | |
static void | BreakOnError () |
static Pointer | New () |
Static Public Attributes | |
static constexpr unsigned int | ImageDimension = InputImageType::ImageDimension |
![]() | |
static constexpr unsigned int | ImageDimension |
Protected Member Functions | |
GaussianDerivativeImageFunction () | |
void | PrintSelf (std::ostream &os, Indent indent) const override |
void | RecomputeGaussianKernel () |
~GaussianDerivativeImageFunction () override=default | |
![]() | |
ImageFunction () | |
void | PrintSelf (std::ostream &os, Indent indent) const override |
~ImageFunction () override=default | |
![]() | |
FunctionBase ()=default | |
~FunctionBase () override=default | |
![]() | |
Object () | |
bool | PrintObservers (std::ostream &os, Indent indent) const |
void | PrintSelf (std::ostream &os, Indent indent) const override |
virtual void | SetTimeStamp (const TimeStamp &timeStamp) |
~Object () override | |
![]() | |
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 () |
Private Attributes | |
double | m_Extent [ImageDimension] {} |
const GaussianDerivativeSpatialFunctionPointer | m_GaussianDerivativeSpatialFunction |
std::vector< Offset< ImageDimension > > | m_ImageNeighborhoodOffsets [ImageDimension] {} |
OperatorArrayType | m_OperatorArray {} |
double | m_Sigma [ImageDimension] {} |
bool | m_UseImageSpacing { true } |
Additional Inherited Members | |
![]() | |
ContinuousIndexType | m_EndContinuousIndex |
IndexType | m_EndIndex |
InputImageConstPointer | m_Image |
ContinuousIndexType | m_StartContinuousIndex |
IndexType | m_StartIndex |
![]() | |
std::atomic< int > | m_ReferenceCount {} |
using itk::GaussianDerivativeImageFunction< TInputImage, TOutput >::ConstPointer = SmartPointer<const Self> |
Definition at line 60 of file itkGaussianDerivativeImageFunction.h.
using itk::GaussianDerivativeImageFunction< TInputImage, TOutput >::ContinuousIndexType = typename Superclass::ContinuousIndexType |
Definition at line 80 of file itkGaussianDerivativeImageFunction.h.
using itk::GaussianDerivativeImageFunction< TInputImage, TOutput >::GaussianDerivativeSpatialFunctionPointer = typename GaussianDerivativeSpatialFunctionType::Pointer |
Definition at line 90 of file itkGaussianDerivativeImageFunction.h.
using itk::GaussianDerivativeImageFunction< TInputImage, TOutput >::GaussianDerivativeSpatialFunctionType = GaussianDerivativeSpatialFunction<TOutput, 1> |
Definition at line 89 of file itkGaussianDerivativeImageFunction.h.
using itk::GaussianDerivativeImageFunction< TInputImage, TOutput >::IndexType = typename InputImageType::IndexType |
Definition at line 71 of file itkGaussianDerivativeImageFunction.h.
using itk::GaussianDerivativeImageFunction< TInputImage, TOutput >::InputImageType = TInputImage |
InputImageType type alias support
Definition at line 69 of file itkGaussianDerivativeImageFunction.h.
using itk::GaussianDerivativeImageFunction< TInputImage, TOutput >::InputPixelType = typename InputImageType::PixelType |
Definition at line 70 of file itkGaussianDerivativeImageFunction.h.
using itk::GaussianDerivativeImageFunction< TInputImage, TOutput >::NeighborhoodType = Neighborhood<InputPixelType, Self::ImageDimension> |
Definition at line 82 of file itkGaussianDerivativeImageFunction.h.
using itk::GaussianDerivativeImageFunction< TInputImage, TOutput >::OperatorArrayType = FixedArray<OperatorNeighborhoodType, Self::ImageDimension> |
Definition at line 87 of file itkGaussianDerivativeImageFunction.h.
using itk::GaussianDerivativeImageFunction< TInputImage, TOutput >::OperatorNeighborhoodType = Neighborhood<TOutput, Self::ImageDimension> |
Definition at line 83 of file itkGaussianDerivativeImageFunction.h.
using itk::ImageFunction< TInputImage, TOutput, TOutput >::OutputType |
OutputType type alias support
Definition at line 84 of file itkImageFunction.h.
using itk::GaussianDerivativeImageFunction< TInputImage, TOutput >::Pointer = SmartPointer<Self> |
Definition at line 59 of file itkGaussianDerivativeImageFunction.h.
using itk::GaussianDerivativeImageFunction< TInputImage, TOutput >::PointType = typename Superclass::PointType |
Point type alias support
Definition at line 99 of file itkGaussianDerivativeImageFunction.h.
using itk::GaussianDerivativeImageFunction< TInputImage, TOutput >::Self = GaussianDerivativeImageFunction |
Standard class type aliases.
Definition at line 57 of file itkGaussianDerivativeImageFunction.h.
using itk::GaussianDerivativeImageFunction< TInputImage, TOutput >::Superclass = ImageFunction<TInputImage, Vector<TOutput, TInputImage::ImageDimension>, TOutput> |
Definition at line 58 of file itkGaussianDerivativeImageFunction.h.
using itk::GaussianDerivativeImageFunction< TInputImage, TOutput >::VectorType = Vector<TOutput, Self::ImageDimension> |
Definition at line 85 of file itkGaussianDerivativeImageFunction.h.
|
protected |
Referenced by GetNameOfClass().
|
overrideprotecteddefault |
|
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.
|
overridevirtual |
Evaluate the function at the specified point.
References itk::point().
|
override |
Evaluate the function at specified ContinuousIndex position.
|
overridevirtual |
Evaluate the function at specified Index position.
Implements itk::ImageFunction< TInputImage, Vector< double, TInputImage::ImageDimension >, double >.
|
inline |
Definition at line 156 of file itkGaussianDerivativeImageFunction.h.
References m_Extent.
|
overridevirtual |
|
inline |
Definition at line 143 of file itkGaussianDerivativeImageFunction.h.
References m_Sigma.
|
virtual |
UseImageSpacing controls the extent of the computations. Set UseImageSpacing to true to set the units to physical units of the image. Set UseImageSpacing to false to set the units of pixels.
|
static |
Method for creation through the object factory.
|
overrideprotectedvirtual |
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::LightObject.
|
protected |
Recompute the Gaussian kernel used to evaluate indexes. This should use a fastest Derivative Gaussian operator.
Referenced by SetUseImageSpacing().
void itk::GaussianDerivativeImageFunction< TInputImage, TOutput >::SetExtent | ( | const double * | extent | ) |
Set the extent of the discrete Gaussian kernel.
void itk::GaussianDerivativeImageFunction< TInputImage, TOutput >::SetExtent | ( | const double | extent | ) |
|
overridevirtual |
Set the input image.
Reimplemented from itk::ImageFunction< TInputImage, Vector< double, TInputImage::ImageDimension >, double >.
void itk::GaussianDerivativeImageFunction< TInputImage, TOutput >::SetSigma | ( | const double * | sigma | ) |
The variance for the discrete Gaussian kernel. Sets the variance independently for each dimension, but see also SetVariance(const double v). The default is 0.0 in each dimension. The extent of the kernel is controlled by UseImageSpacing.
void itk::GaussianDerivativeImageFunction< TInputImage, TOutput >::SetSigma | ( | const double | sigma | ) |
|
inline |
UseImageSpacing controls the extent of the computations. Set UseImageSpacing to true to set the units to physical units of the image. Set UseImageSpacing to false to set the units of pixels.
Definition at line 118 of file itkGaussianDerivativeImageFunction.h.
References m_UseImageSpacing, itk::Object::Modified(), and RecomputeGaussianKernel().
|
virtual |
UseImageSpacing controls the extent of the computations. Set UseImageSpacing to true to set the units to physical units of the image. Set UseImageSpacing to false to set the units of pixels.
|
virtual |
UseImageSpacing controls the extent of the computations. Set UseImageSpacing to true to set the units to physical units of the image. Set UseImageSpacing to false to set the units of pixels.
|
staticconstexpr |
Dimension of the underlying image.
Definition at line 74 of file itkGaussianDerivativeImageFunction.h.
|
private |
Definition at line 190 of file itkGaussianDerivativeImageFunction.h.
Referenced by GetExtent().
|
private |
Definition at line 196 of file itkGaussianDerivativeImageFunction.h.
|
private |
Definition at line 188 of file itkGaussianDerivativeImageFunction.h.
|
private |
Array of 1D operators. Contains a derivative kernel for each dimension. Note: A future version of ITK could extend this array to include a Gaussian blurring kernel for each dimension.
Definition at line 186 of file itkGaussianDerivativeImageFunction.h.
|
private |
Definition at line 181 of file itkGaussianDerivativeImageFunction.h.
Referenced by GetSigma().
|
private |
Flag to indicate whether to use image spacing.
Definition at line 193 of file itkGaussianDerivativeImageFunction.h.
Referenced by SetUseImageSpacing().