ITK
5.0.0
Insight Segmentation and Registration Toolkit
|
#include <itkVectorCentralDifferenceImageFunction.h>
Calculate the derivative by central differencing.
This class is templated over the input image type and the coordinate representation type (e.g. float or double).
Possible improvements:
This implementation was taken from the Insight Journal paper: https://hdl.handle.net/1926/510
Definition at line 48 of file itkVectorCentralDifferenceImageFunction.h.
Public Types | |
using | ConstPointer = SmartPointer< const Self > |
using | ContinuousIndexType = typename Superclass::ContinuousIndexType |
using | IndexType = typename Superclass::IndexType |
using | InputImageType = TInputImage |
using | InputPixelType = typename TInputImage::PixelType |
using | OutputType = typename Superclass::OutputType |
using | Pointer = SmartPointer< Self > |
using | PointType = typename Superclass::PointType |
using | Self = VectorCentralDifferenceImageFunction |
using | Superclass = ImageFunction< TInputImage, Matrix< double, Self::Dimension, Self::ImageDimension >, TCoordRep > |
Public Types inherited from itk::ImageFunction< TInputImage, Matrix< double, TInputImage::PixelType::Dimension, TInputImage::ImageDimension >, TCoordRep > | |
using | ConstPointer = SmartPointer< const Self > |
using | ContinuousIndexType = ContinuousIndex< TCoordRep, Self::ImageDimension > |
using | CoordRepType = TCoordRep |
using | IndexType = typename InputImageType::IndexType |
using | IndexValueType = typename InputImageType::IndexValueType |
using | InputImageConstPointer = typename InputImageType::ConstPointer |
using | InputImageType = TInputImage |
using | InputPixelType = typename InputImageType::PixelType |
using | OutputType = Matrix< double, TInputImage::PixelType::Dimension, TInputImage::ImageDimension > |
using | Pointer = SmartPointer< Self > |
using | PointType = Point< TCoordRep, Self::ImageDimension > |
using | Self = ImageFunction |
using | Superclass = FunctionBase< Point< TCoordRep, Self::ImageDimension >, Matrix< double, TInputImage::PixelType::Dimension, TInputImage::ImageDimension > > |
Public Types inherited from itk::FunctionBase< Point< TCoordRep, TInputImage::ImageDimension >, Matrix< double, TInputImage::PixelType::Dimension, TInputImage::ImageDimension > > | |
using | ConstPointer = SmartPointer< const Self > |
using | InputType = Point< TCoordRep, TInputImage::ImageDimension > |
using | OutputType = Matrix< double, TInputImage::PixelType::Dimension, TInputImage::ImageDimension > |
using | Pointer = SmartPointer< Self > |
using | Self = FunctionBase |
using | Superclass = Object |
Public Types inherited from itk::Object | |
using | ConstPointer = SmartPointer< const Self > |
using | Pointer = SmartPointer< Self > |
using | Self = Object |
using | Superclass = LightObject |
Public Types inherited from itk::LightObject | |
using | ConstPointer = SmartPointer< const Self > |
using | Pointer = SmartPointer< Self > |
using | Self = LightObject |
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 |
virtual const char * | GetNameOfClass () const |
virtual void | SetUseImageDirection (bool _arg) |
virtual bool | GetUseImageDirection () const |
virtual void | UseImageDirectionOn () |
virtual void | UseImageDirectionOff () |
Public Member Functions inherited from itk::ImageFunction< TInputImage, Matrix< double, TInputImage::PixelType::Dimension, TInputImage::ImageDimension >, TCoordRep > | |
void | ConvertContinuousIndexToNearestIndex (const ContinuousIndexType &cindex, IndexType &index) const |
void | ConvertPointToContinuousIndex (const PointType &point, ContinuousIndexType &cindex) const |
void | ConvertPointToNearestIndex (const PointType &point, IndexType &index) const |
Matrix< double, TInputImage::PixelType::Dimension, TInputImage::ImageDimension > | Evaluate (const PointType &point) const override=0 |
virtual Matrix< double, TInputImage::PixelType::Dimension, TInputImage::ImageDimension > | EvaluateAtContinuousIndex (const ContinuousIndexType &index) const =0 |
virtual Matrix< double, TInputImage::PixelType::Dimension, TInputImage::ImageDimension > | EvaluateAtIndex (const IndexType &index) const =0 |
virtual const ContinuousIndexType & | GetEndContinuousIndex () const |
virtual const IndexType & | GetEndIndex () const |
const InputImageType * | GetInputImage () const |
virtual const ContinuousIndexType & | GetStartContinuousIndex () const |
virtual const IndexType & | GetStartIndex () const |
virtual void | SetInputImage (const InputImageType *ptr) |
virtual bool | IsInsideBuffer (const IndexType &index) const |
virtual bool | IsInsideBuffer (const ContinuousIndexType &index) const |
virtual bool | IsInsideBuffer (const PointType &point) const |
Public Member Functions inherited from itk::Object | |
unsigned long | AddObserver (const EventObject &event, Command *) |
unsigned long | AddObserver (const EventObject &event, Command *) const |
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 |
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) |
void | SetDebug (bool debugFlag) const |
void | SetReferenceCount (int) override |
void | UnRegister () const noexceptoverride |
void | SetMetaDataDictionary (const MetaDataDictionary &rhs) |
void | SetMetaDataDictionary (MetaDataDictionary &&rrhs) |
virtual void | SetObjectName (std::string _arg) |
virtual const std::string & | GetObjectName () const |
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 |
Static Public Member Functions | |
static Pointer | New () |
Static Public Member Functions inherited from itk::Object | |
static bool | GetGlobalWarningDisplay () |
static void | GlobalWarningDisplayOff () |
static void | GlobalWarningDisplayOn () |
static Pointer | New () |
static void | SetGlobalWarningDisplay (bool flag) |
Static Public Member Functions inherited from itk::LightObject | |
static void | BreakOnError () |
static Pointer | New () |
Static Public Attributes | |
static constexpr unsigned int | Dimension = InputPixelType::Dimension |
static constexpr unsigned int | ImageDimension = TInputImage::ImageDimension |
Static Public Attributes inherited from itk::ImageFunction< TInputImage, Matrix< double, TInputImage::PixelType::Dimension, TInputImage::ImageDimension >, TCoordRep > | |
static constexpr unsigned int | ImageDimension |
Private Attributes | |
bool | m_UseImageDirection |
Additional Inherited Members | |
Protected Attributes inherited from itk::ImageFunction< TInputImage, Matrix< double, TInputImage::PixelType::Dimension, TInputImage::ImageDimension >, TCoordRep > | |
ContinuousIndexType | m_EndContinuousIndex |
IndexType | m_EndIndex |
InputImageConstPointer | m_Image |
ContinuousIndexType | m_StartContinuousIndex |
IndexType | m_StartIndex |
Protected Attributes inherited from itk::LightObject | |
std::atomic< int > | m_ReferenceCount |
using itk::VectorCentralDifferenceImageFunction< TInputImage, TCoordRep >::ConstPointer = SmartPointer< const Self > |
Definition at line 73 of file itkVectorCentralDifferenceImageFunction.h.
using itk::VectorCentralDifferenceImageFunction< TInputImage, TCoordRep >::ContinuousIndexType = typename Superclass::ContinuousIndexType |
ContinuousIndex type alias support
Definition at line 91 of file itkVectorCentralDifferenceImageFunction.h.
using itk::VectorCentralDifferenceImageFunction< TInputImage, TCoordRep >::IndexType = typename Superclass::IndexType |
Index type alias support
Definition at line 88 of file itkVectorCentralDifferenceImageFunction.h.
using itk::VectorCentralDifferenceImageFunction< TInputImage, TCoordRep >::InputImageType = TInputImage |
InputImageType type alias support
Definition at line 82 of file itkVectorCentralDifferenceImageFunction.h.
using itk::VectorCentralDifferenceImageFunction< TInputImage, TCoordRep >::InputPixelType = typename TInputImage::PixelType |
Definition at line 58 of file itkVectorCentralDifferenceImageFunction.h.
using itk::VectorCentralDifferenceImageFunction< TInputImage, TCoordRep >::OutputType = typename Superclass::OutputType |
OutputType typdef support.
Definition at line 85 of file itkVectorCentralDifferenceImageFunction.h.
using itk::VectorCentralDifferenceImageFunction< TInputImage, TCoordRep >::Pointer = SmartPointer< Self > |
Definition at line 72 of file itkVectorCentralDifferenceImageFunction.h.
using itk::VectorCentralDifferenceImageFunction< TInputImage, TCoordRep >::PointType = typename Superclass::PointType |
Point type alias support
Definition at line 94 of file itkVectorCentralDifferenceImageFunction.h.
using itk::VectorCentralDifferenceImageFunction< TInputImage, TCoordRep >::Self = VectorCentralDifferenceImageFunction |
Standard class type aliases.
Definition at line 67 of file itkVectorCentralDifferenceImageFunction.h.
using itk::VectorCentralDifferenceImageFunction< TInputImage, TCoordRep >::Superclass = ImageFunction< TInputImage, Matrix< double, Self::Dimension, Self::ImageDimension >, TCoordRep > |
Definition at line 71 of file itkVectorCentralDifferenceImageFunction.h.
|
protected |
|
inlineoverrideprotected |
Definition at line 147 of file itkVectorCentralDifferenceImageFunction.h.
|
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::Object.
|
inlineoverride |
Evalulate the image derivative by central differencing at non-integer positions.
No bounds checking is done. The point is assumed to lie within the image buffer.
ImageFunction::IsInsideBuffer() can be used to check bounds before calling the method.
Definition at line 113 of file itkVectorCentralDifferenceImageFunction.h.
|
inlineoverride |
Definition at line 121 of file itkVectorCentralDifferenceImageFunction.h.
|
override |
Evalulate the image derivative by central differencing at specified index.
No bounds checking is done. The point is assume to lie within the image buffer.
ImageFunction::IsInsideBuffer() can be used to check bounds before calling the method.
|
virtual |
Run-time type information (and related methods).
Reimplemented from itk::ImageFunction< TInputImage, Matrix< double, TInputImage::PixelType::Dimension, TInputImage::ImageDimension >, TCoordRep >.
|
virtual |
The UseImageDirection flag determines whether image derivatives are computed with respect to the image grid or with respect to the physical space. When this flag is ON the derivatives are computed with respect to the coordinate system of physical space. The difference is whether we take into account the image Direction or not. The flag ON will take into account the image direction and will result in an extra matrix multiplication compared to the amount of computation performed when the flag is OFF. The default value of this flag is On.
|
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::Object.
|
virtual |
The UseImageDirection flag determines whether image derivatives are computed with respect to the image grid or with respect to the physical space. When this flag is ON the derivatives are computed with respect to the coordinate system of physical space. The difference is whether we take into account the image Direction or not. The flag ON will take into account the image direction and will result in an extra matrix multiplication compared to the amount of computation performed when the flag is OFF. The default value of this flag is On.
|
virtual |
The UseImageDirection flag determines whether image derivatives are computed with respect to the image grid or with respect to the physical space. When this flag is ON the derivatives are computed with respect to the coordinate system of physical space. The difference is whether we take into account the image Direction or not. The flag ON will take into account the image direction and will result in an extra matrix multiplication compared to the amount of computation performed when the flag is OFF. The default value of this flag is On.
|
virtual |
The UseImageDirection flag determines whether image derivatives are computed with respect to the image grid or with respect to the physical space. When this flag is ON the derivatives are computed with respect to the coordinate system of physical space. The difference is whether we take into account the image Direction or not. The flag ON will take into account the image direction and will result in an extra matrix multiplication compared to the amount of computation performed when the flag is OFF. The default value of this flag is On.
|
static |
Extract the vector dimension from the pixel template parameter.
Definition at line 61 of file itkVectorCentralDifferenceImageFunction.h.
|
static |
Dimension underlying input image.
Definition at line 64 of file itkVectorCentralDifferenceImageFunction.h.
|
private |
Definition at line 153 of file itkVectorCentralDifferenceImageFunction.h.