#include <itkDerivativeOperator.h>
A NeighborhoodOperator for taking an n-th order derivative at a pixel.
DerivativeOperator's coefficients are a tightest-fitting convolution kernel for calculating the n-th order directional derivative at a pixel. DerivativeOperator is a directional NeighborhoodOperator that should be applied to a Neighborhood or NeighborhoodPointer using the inner product method.
An example operator to compute X derivatives of a 2D image can be created with:
and creates a kernel that looks like:
Definition at line 68 of file itkDerivativeOperator.h.
Public Types | |
using | PixelRealType |
using | Self = DerivativeOperator |
using | Superclass = NeighborhoodOperator<TPixel, VDimension, TAllocator> |
![]() | |
using | PixelRealType = typename NumericTraits<TPixel>::RealType |
using | PixelType = TPixel |
using | Self = NeighborhoodOperator |
using | SliceIteratorType = SliceIterator<TPixel, Self> |
using | Superclass = Neighborhood<TPixel, VDimension, TAllocator> |
![]() | |
using | AllocatorType = TAllocator |
using | ConstIterator = typename AllocatorType::const_iterator |
using | DimensionValueType = unsigned int |
using | Iterator = typename AllocatorType::iterator |
using | NeighborIndexType = SizeValueType |
using | OffsetType = Offset<VDimension> |
using | PixelType = TPixel |
using | RadiusType = itk::Size<VDimension> |
using | Self = Neighborhood |
using | SizeType = itk::Size<VDimension> |
using | SizeValueType = typename SizeType::SizeValueType |
using | SliceIteratorType = SliceIterator<TPixel, Self> |
Protected Types | |
using | CoefficientVector |
![]() | |
using | CoefficientVector = typename std::vector<PixelRealType> |
Protected Member Functions | |
void | Fill (const CoefficientVector &coeff) override |
CoefficientVector | GenerateCoefficients () override |
![]() | |
virtual void | FillCenteredDirectional (const CoefficientVector &) |
void | InitializeToZero () |
![]() | |
virtual void | Allocate (NeighborIndexType i) |
virtual void | ComputeNeighborhoodOffsetTable () |
virtual void | ComputeNeighborhoodStrideTable () |
void | SetSize () |
Private Attributes | |
unsigned int | m_Order { 1 } |
Additional Inherited Members | |
![]() | |
static constexpr unsigned int | NeighborhoodDimension = VDimension |
|
protected |
Type alias support for coefficient vector type. Necessary to fix bug in the microsoft VC++ compiler.
Definition at line 152 of file itkNeighborhoodOperator.h.
using itk::NeighborhoodOperator< TPixel, VDimension, TAllocator >::PixelRealType |
Definition at line 90 of file itkNeighborhoodOperator.h.
using itk::DerivativeOperator< TPixel, VDimension, TAllocator >::Self = DerivativeOperator |
Standard class type aliases.
Definition at line 72 of file itkDerivativeOperator.h.
using itk::DerivativeOperator< TPixel, VDimension, TAllocator >::Superclass = NeighborhoodOperator<TPixel, VDimension, TAllocator> |
Definition at line 73 of file itkDerivativeOperator.h.
|
inlineoverrideprotectedvirtual |
Arranges coefficients spatially in the memory buffer.
Implements itk::NeighborhoodOperator< TPixel, VDimension, TAllocator >.
Definition at line 113 of file itkDerivativeOperator.h.
|
overrideprotectedvirtual |
Calculates operator coefficients.
Implements itk::NeighborhoodOperator< TPixel, VDimension, TAllocator >.
|
overridevirtual |
Reimplemented from itk::Neighborhood< TPixel, VDimension, TAllocator >.
|
inline |
Returns the order of the derivative.
Definition at line 90 of file itkDerivativeOperator.h.
|
inlineoverridevirtual |
Standard itk object method.
Reimplemented from itk::Neighborhood< TPixel, VDimension, TAllocator >.
Definition at line 96 of file itkDerivativeOperator.h.
|
inline |
Sets the order of the derivative.
Definition at line 83 of file itkDerivativeOperator.h.
|
private |
Order of the derivative.
Definition at line 120 of file itkDerivativeOperator.h.