Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages |
#include <itkAdvancedLinearInterpolateImageFunction.h>
Linearly interpolate an image at specified positions.
AdvancedLinearInterpolateImageFunction linearly interpolates image intensity at a non-integer pixel position. This class is templated over the input image type and the coordinate representation type (e.g. float or double).
This function works for N-dimensional images.
This function works for images with scalar and vector pixel types, and for images of type VectorImage.
Unlike the LinearInterpolateImageFunction, which implements a constant boundary condition, this class implements a mirroring boundary condition, which mimics the BSplineInterpolateImageFunction.
Edge cases, i.e. points exactly on the right most edge of the image, need to be dealt with separately. In this implementation we subtract a small number from the continuous index and interpolate at that position. Alternatively, you would need to implement 7 different possibilities in 3D, e.g.: x[0] is at end index -> interpolate in x-y plane x[0] and x[1] are at end index -> interpolate along z line all are at end index -> nearest neighbor interpolation We opt to subtract a small number from x, which is computationally efficient, gives cleaner code, and almost exactly the same interpolated value.
\wiki \wikiexample{ImageProcessing/LinearInterpolateImageFunction,Linearly interpolate a position in an image} \endwiki
Definition at line 63 of file itkAdvancedLinearInterpolateImageFunction.h.
Data Structures | |
struct | Dispatch |
struct | DispatchBase |
Public Types | |
typedef SmartPointer< const Self > | ConstPointer |
typedef Superclass::ContinuousIndexType | ContinuousIndexType |
typedef ContinuousIndexType::ValueType | ContinuousIndexValueType |
typedef CovariantVector< OutputType, itkGetStaticConstMacro(ImageDimension) > | CovariantVectorType |
typedef Superclass::IndexType | IndexType |
typedef InputImageType::SpacingType | InputImageSpacingType |
typedef Superclass::InputImageType | InputImageType |
typedef Superclass::InputPixelType | InputPixelType |
typedef Superclass::OutputType | OutputType |
typedef SmartPointer< Self > | Pointer |
typedef Superclass::RealType | RealType |
typedef AdvancedLinearInterpolateImageFunction | Self |
typedef LinearInterpolateImageFunction< TInputImage, TCoordRep > | Superclass |
Public Member Functions | |
CovariantVectorType | EvaluateDerivativeAtContinuousIndex (const ContinuousIndexType &x) const |
void | EvaluateValueAndDerivativeAtContinuousIndex (const ContinuousIndexType &x, OutputType &value, CovariantVectorType &deriv) const |
virtual const char * | GetClassName () const |
itkStaticConstMacro (ImageDimension, unsigned int, Superclass::ImageDimension) | |
Static Public Member Functions | |
static Pointer | New () |
Protected Member Functions | |
AdvancedLinearInterpolateImageFunction () | |
~AdvancedLinearInterpolateImageFunction () override | |
Private Member Functions | |
AdvancedLinearInterpolateImageFunction (const Self &) | |
void | EvaluateValueAndDerivativeOptimized (const Dispatch< 2 > &, const ContinuousIndexType &x, OutputType &value, CovariantVectorType &deriv) const |
void | EvaluateValueAndDerivativeOptimized (const Dispatch< 3 > &, const ContinuousIndexType &x, OutputType &value, CovariantVectorType &deriv) const |
void | EvaluateValueAndDerivativeOptimized (const DispatchBase &, const ContinuousIndexType &x, OutputType &value, CovariantVectorType &deriv) const |
void | EvaluateValueAndDerivativeUnOptimized (const ContinuousIndexType &x, OutputType &value, CovariantVectorType &deriv) const |
void | operator= (const Self &) |
typedef SmartPointer< const Self > itk::AdvancedLinearInterpolateImageFunction< TInputImage, TCoordRep >::ConstPointer |
Definition at line 72 of file itkAdvancedLinearInterpolateImageFunction.h.
typedef Superclass::ContinuousIndexType itk::AdvancedLinearInterpolateImageFunction< TInputImage, TCoordRep >::ContinuousIndexType |
ContinuousIndex typedef support.
Definition at line 100 of file itkAdvancedLinearInterpolateImageFunction.h.
typedef ContinuousIndexType::ValueType itk::AdvancedLinearInterpolateImageFunction< TInputImage, TCoordRep >::ContinuousIndexValueType |
Definition at line 101 of file itkAdvancedLinearInterpolateImageFunction.h.
typedef CovariantVector< OutputType, itkGetStaticConstMacro( ImageDimension ) > itk::AdvancedLinearInterpolateImageFunction< TInputImage, TCoordRep >::CovariantVectorType |
Derivative typedef support
Definition at line 105 of file itkAdvancedLinearInterpolateImageFunction.h.
typedef Superclass::IndexType itk::AdvancedLinearInterpolateImageFunction< TInputImage, TCoordRep >::IndexType |
Index typedef support.
Definition at line 97 of file itkAdvancedLinearInterpolateImageFunction.h.
typedef InputImageType::SpacingType itk::AdvancedLinearInterpolateImageFunction< TInputImage, TCoordRep >::InputImageSpacingType |
Definition at line 85 of file itkAdvancedLinearInterpolateImageFunction.h.
typedef Superclass::InputImageType itk::AdvancedLinearInterpolateImageFunction< TInputImage, TCoordRep >::InputImageType |
InputImageType typedef support.
Definition at line 84 of file itkAdvancedLinearInterpolateImageFunction.h.
typedef Superclass::InputPixelType itk::AdvancedLinearInterpolateImageFunction< TInputImage, TCoordRep >::InputPixelType |
InputPixelType typedef support.
Definition at line 88 of file itkAdvancedLinearInterpolateImageFunction.h.
typedef Superclass::OutputType itk::AdvancedLinearInterpolateImageFunction< TInputImage, TCoordRep >::OutputType |
OutputType typedef support.
Definition at line 81 of file itkAdvancedLinearInterpolateImageFunction.h.
typedef SmartPointer< Self > itk::AdvancedLinearInterpolateImageFunction< TInputImage, TCoordRep >::Pointer |
Definition at line 71 of file itkAdvancedLinearInterpolateImageFunction.h.
typedef Superclass::RealType itk::AdvancedLinearInterpolateImageFunction< TInputImage, TCoordRep >::RealType |
RealType typedef support.
Definition at line 91 of file itkAdvancedLinearInterpolateImageFunction.h.
typedef AdvancedLinearInterpolateImageFunction itk::AdvancedLinearInterpolateImageFunction< TInputImage, TCoordRep >::Self |
Standard class typedefs.
Definition at line 69 of file itkAdvancedLinearInterpolateImageFunction.h.
typedef LinearInterpolateImageFunction< TInputImage, TCoordRep > itk::AdvancedLinearInterpolateImageFunction< TInputImage, TCoordRep >::Superclass |
Definition at line 70 of file itkAdvancedLinearInterpolateImageFunction.h.
|
protected |
|
inlineoverrideprotected |
Definition at line 125 of file itkAdvancedLinearInterpolateImageFunction.h.
|
private |
CovariantVectorType itk::AdvancedLinearInterpolateImageFunction< TInputImage, TCoordRep >::EvaluateDerivativeAtContinuousIndex | ( | const ContinuousIndexType & | x | ) | const |
Method to compute the derivative.
|
inline |
Method to compute both the value and the derivative.
Definition at line 112 of file itkAdvancedLinearInterpolateImageFunction.h.
|
inlineprivate |
Method to compute both the value and the derivative. 2D specialization.
|
inlineprivate |
Method to compute both the value and the derivative. 3D specialization.
|
inlineprivate |
Method to compute both the value and the derivative. Generic.
Definition at line 152 of file itkAdvancedLinearInterpolateImageFunction.h.
|
inlineprivate |
Method to compute both the value and the derivative. Generic.
Definition at line 163 of file itkAdvancedLinearInterpolateImageFunction.h.
|
virtual |
Run-time type information (and related methods).
Reimplemented in elastix::LinearInterpolator< TElastix >.
itk::AdvancedLinearInterpolateImageFunction< TInputImage, TCoordRep >::itkStaticConstMacro | ( | ImageDimension | , |
unsigned int | , | ||
Superclass::ImageDimension | |||
) |
Dimension underlying input image.
|
static |
Method for creation through the object factory.
|
private |
Generated on 1667476801 for elastix by 1.9.4 |