#include <GaussianInterpolateImageFunction3D.h>
Public Member Functions | |
GenericGaussianInterpolateImageFunction3D (double sigma=1.0) | |
Default constructor. | |
VoxelType | Get (double, double, double, double=0) const |
template<class TOtherImage > | |
TOtherImage::VoxelType | Get (const TOtherImage *, double, double, double, double=0) const |
virtual VoxelType | GetInside (double, double, double, double=0) const |
virtual VoxelType | GetOutside (double, double, double, double=0) const |
Evaluate generic image at an arbitrary location (in pixels) | |
VoxelType | GetWithPadding (double, double, double, double=0) const |
template<class TOtherImage > | |
TOtherImage::VoxelType | GetWithPadding (const TOtherImage *, double, double, double, double=0) const |
virtual VoxelType | GetWithPaddingInside (double, double, double, double=0) const |
virtual VoxelType | GetWithPaddingOutside (double, double, double, double=0) const |
Public Member Functions inherited from mirtk::GenericGaussianInterpolateImageFunction< TImage > | |
virtual void | BoundingBox (double, double, int &, int &, int &, int &) const |
Returns discrete boundaries of local 2D image region needed for interpolation. | |
virtual void | BoundingBox (double, double, double, int &, int &, int &, int &, int &, int &) const |
Returns discrete boundaries of local 3D image region needed for interpolation. | |
virtual void | BoundingBox (double, double, double, double, int &, int &, int &, int &, int &, int &, int &, int &) const |
Returns discrete boundaries of local 4D image region needed for interpolation. | |
virtual void | BoundingInterval (double, int &, int &) const |
GenericGaussianInterpolateImageFunction (double=1.0) | |
Default constructor. | |
VoxelType | Get (double, double, double=0, double=0) const |
template<class TOtherImage > | |
TOtherImage::VoxelType | Get (const TOtherImage *, double, double, double=0, double=0) const |
VoxelType | Get2D (double, double, double=0, double=0) const |
template<class TOtherImage > | |
TOtherImage::VoxelType | Get2D (const TOtherImage *, double, double, double=0, double=0) const |
VoxelType | Get3D (double, double, double=0, double=0) const |
template<class TOtherImage > | |
TOtherImage::VoxelType | Get3D (const TOtherImage *, double, double, double=0, double=0) const |
VoxelType | Get4D (double, double, double=0, double=0) const |
template<class TOtherImage > | |
TOtherImage::VoxelType | Get4D (const TOtherImage *, double, double, double=0, double=0) const |
template<class TOtherImage > | |
TOtherImage::VoxelType | GetWithPadding (const TOtherImage *, double, double, double=0, double=0) const |
VoxelType | GetWithPadding2D (double, double, double=0, double=0) const |
template<class TOtherImage > | |
TOtherImage::VoxelType | GetWithPadding2D (const TOtherImage *, double, double, double=0, double=0) const |
VoxelType | GetWithPadding3D (double, double, double=0, double=0) const |
template<class TOtherImage > | |
TOtherImage::VoxelType | GetWithPadding3D (const TOtherImage *, double, double, double=0, double=0) const |
VoxelType | GetWithPadding4D (double, double, double=0, double=0) const |
template<class TOtherImage > | |
TOtherImage::VoxelType | GetWithPadding4D (const TOtherImage *, double, double, double=0, double=0) const |
virtual void | Initialize (bool=false) |
Initialize interpolation function. | |
Public Member Functions inherited from mirtk::GenericInterpolateImageFunction< TImage > | |
virtual double | EvaluateInside (double, double, double=0, double=0) const |
virtual void | EvaluateInside (double *, double, double, double=0, int=1) const |
virtual void | EvaluateInside (Vector &, double, double, double=0, double=0) const |
virtual double | EvaluateOutside (double, double, double=0, double=0) const |
Evaluate scalar image at an arbitrary location (in pixels) | |
virtual void | EvaluateOutside (double *, double, double, double=0, int=1) const |
Evaluate multi-channel image at an arbitrary location (in pixels) | |
virtual void | EvaluateOutside (Vector &, double, double, double=0, double=0) const |
Evaluate vector image at an arbitrary location (in pixels) | |
virtual double | EvaluateWithPaddingInside (double, double, double=0, double=0) const |
virtual void | EvaluateWithPaddingInside (double *, double, double, double=0, int=1) const |
virtual void | EvaluateWithPaddingInside (Vector &, double, double, double=0, double=0) const |
virtual double | EvaluateWithPaddingOutside (double, double, double=0, double=0) const |
virtual void | EvaluateWithPaddingOutside (double *, double, double, double=0, int=1) const |
virtual void | EvaluateWithPaddingOutside (Vector &, double, double, double=0, double=0) const |
virtual void | Extrapolator (ExtrapolateImageFunction *, bool=false) |
Set extrapolate image function for evaluation outside of image domain. | |
ExtrapolatorType * | Extrapolator () |
const ExtrapolatorType * | Extrapolator () const |
VoxelType | Get (double, double, double=0, double=0) const |
VoxelType | GetWithPadding (double, double, double=0, double=0) const |
virtual void | Input (const BaseImage *) |
Set input image. | |
const ImageType * | Input () const |
Get input image. | |
virtual ExtrapolateImageFunction * | New (enum ExtrapolationMode, const BaseImage *=NULL) |
Construct extrapolator which is compatible with this interpolator. | |
VoxelType | operator() (double, double, double=0, double=0) const |
Evaluate generic image at an arbitrary location (in pixels) | |
virtual | ~GenericInterpolateImageFunction () |
Destructor. | |
Public Member Functions inherited from mirtk::InterpolateImageFunction | |
const ImageAttributes & | Attributes () const |
Lattice attributes. | |
double | Evaluate (double, double, double=0, double=0) const |
double | Evaluate (const Point &, double=0) const |
double | Evaluate (double, double, double=0, double=0) |
void | Evaluate (double *, double, double, double=0, int=1) const |
void | Evaluate (double *, const Point &, int=1) const |
void | Evaluate (Vector &, double, double, double=0, double=0) const |
template<class TVoxel > | |
void | Evaluate (GenericImage< TVoxel > &) const |
Evaluate image function at all locations of the output image. | |
void | EvaluateJacobian (Matrix &, double, double, double=0, double=NaN) const |
virtual void | EvaluateJacobianInside (Matrix &, double, double, double=0, double=NaN) const |
virtual void | EvaluateJacobianOutside (Matrix &, double, double, double=0, double=NaN) const |
void | EvaluateJacobianWithPadding (Matrix &, double, double, double=0, double=NaN) const |
virtual void | EvaluateJacobianWithPaddingInside (Matrix &, double, double, double=0, double=NaN) const |
virtual void | EvaluateJacobianWithPaddingOutside (Matrix &, double, double, double=0, double=NaN) const |
double | EvaluateWithPadding (double, double, double=0, double=0) const |
void | EvaluateWithPadding (double *, double, double, double=0, int=1) const |
void | EvaluateWithPadding (Vector &, double, double, double=0, double=0) const |
enum ExtrapolationMode | ExtrapolationMode () const |
Get extrapolation mode used by this interpolator. | |
ExtrapolateImageFunction * | Extrapolator () |
const ExtrapolateImageFunction * | Extrapolator () const |
void | ImageToWorld (double &, double &) const |
Convert image location (in pixels) to world coordinates (in mm) | |
void | ImageToWorld (double &, double &, double &) const |
Convert image location (in pixels) to world coordinates (in mm) | |
void | ImageToWorld (Point &) const |
Convert image location (in pixels) to world coordinates (in mm) | |
void | ImageToWorld (Vector3 &) const |
Convert image vector (in pixels) to world coordinates (in mm) | |
virtual void | Initialize () |
void | Input (const BaseImage *) |
Set input image. | |
const BaseImage * | Input () const |
Get input image. | |
void | Inside (double &, double &, double &, double &) const |
void | Inside (double &, double &, double &, double &, double &, double &) const |
void | Inside (double &, double &, double &, double &, double &, double &, double &, double &) const |
virtual enum InterpolationMode | InterpolationMode () const =0 |
Get interpolation mode corresponding to this interpolator. | |
bool | IsForeground (double, double) const |
bool | IsForeground (double, double, double) const |
bool | IsForeground (double, double, double, double) const |
bool | IsForeground (const Point &) const |
bool | IsForeground (const Point &, double) const |
bool | IsInside (double, double) const |
bool | IsInside (double, double, double) const |
bool | IsInside (double, double, double, double) const |
bool | IsInside (const Point &) const |
bool | IsInside (const Point &, double) const |
bool | IsOutside (double, double) const |
bool | IsOutside (double, double, double) const |
bool | IsOutside (double, double, double, double) const |
bool | IsOutside (const Point &) const |
bool | IsOutside (const Point &, double) const |
int | T () const |
Image size along t axis. | |
double | TSize () const |
Image spacing along t axis. | |
virtual void | Update () |
void | WorldToImage (double &, double &) const |
Convert world coordinates (in mm) to image location (in pixels) | |
void | WorldToImage (double &, double &, double &) const |
Convert world coordinates (in mm) to image location (in pixels) | |
void | WorldToImage (Point &) const |
Convert world coordinates (in mm) to image location (in pixels) | |
void | WorldToImage (Vector3 &) const |
Convert world coordinates vector (in mm) to image vector (in pixels) | |
int | X () const |
Image size along x axis. | |
double | XSize () const |
Image spacing along x axis. | |
int | Y () const |
Image size along y axis. | |
double | YSize () const |
Image spacing along y axis. | |
int | Z () const |
Image size along z axis. | |
double | ZSize () const |
Image spacing along z axis. | |
virtual | ~InterpolateImageFunction () |
Destructor. | |
Public Member Functions inherited from mirtk::ImageFunction | |
virtual | ~ImageFunction () |
Destructor. | |
Public Member Functions inherited from mirtk::Object | |
virtual const char * | NameOfClass () const =0 |
Get name of class, which this object is an instance of. | |
virtual ParameterList | Parameter () const |
Get parameter name/value pairs. | |
bool | Parameter (const ParameterList &) |
Set parameters from name/value pairs. | |
virtual bool | Set (const char *name, const char *value) |
virtual | ~Object () |
Destructor. | |
Additional Inherited Members | |
Static Public Member Functions inherited from mirtk::GenericInterpolateImageFunction< TImage > | |
static GenericInterpolateImageFunction * | New (enum InterpolationMode=Interpolation_Default, const TImage *=NULL) |
Construct interpolator with default infinite extension of input image. | |
static GenericInterpolateImageFunction * | New (enum InterpolationMode, enum ExtrapolationMode, const TImage *=NULL) |
Static Public Member Functions inherited from mirtk::InterpolateImageFunction | |
static InterpolateImageFunction * | New (enum InterpolationMode=Interpolation_Default, const BaseImage *=NULL) |
Construct interpolator with default infinite extension of input image. | |
static InterpolateImageFunction * | New (enum InterpolationMode, enum ExtrapolationMode, const BaseImage *=NULL) |
Static Public Member Functions inherited from mirtk::Object | |
static const char * | NameOfType () |
Get name of this class type. | |
Protected Member Functions inherited from mirtk::GenericInterpolateImageFunction< TImage > | |
GenericInterpolateImageFunction () | |
Default constructor. | |
Protected Member Functions inherited from mirtk::InterpolateImageFunction | |
InterpolateImageFunction () | |
Default constructor. | |
Protected Member Functions inherited from mirtk::ImageFunction | |
ImageFunction () | |
Default constructor. | |
ImageFunction (const ImageFunction &) | |
Copy constructor. | |
Protected Member Functions inherited from mirtk::Object | |
template<typename... Args> | |
void | Throw (ErrorType err, const char *func, Args... args) const |
Static Protected Member Functions inherited from mirtk::Object | |
template<typename... Args> | |
static void | ThrowStatic (ErrorType err, const char *cls, const char *func, Args... args) |
Protected Attributes inherited from mirtk::GenericGaussianInterpolateImageFunction< TImage > | |
double | _dx |
Voxel size of input image. | |
double | _RadiusT |
Filter radius in t dimension. | |
double | _RadiusX |
Filter radius in x dimension. | |
double | _RadiusY |
Filter radius in y dimension. | |
double | _RadiusZ |
Filter radius in z dimension. | |
Protected Attributes inherited from mirtk::InterpolateImageFunction | |
ExtrapolateImageFunction * | _InfiniteInput |
bool | _InfiniteInputOwner |
Whether infinite discrete image was instantiated by this image function. | |
double | _x1 |
Gaussian interpolation of generic 3D image
Definition at line 34 of file GaussianInterpolateImageFunction3D.h.
|
inline |
Get value of given image at arbitrary location (in pixels)
This function is used to interpolate the image value at arbitrary locations when no extrapolator was set.
Definition at line 45 of file GaussianInterpolateImageFunction3D.hxx.
|
inline |
Get value of given image at arbitrary location (in pixels)
If the location is inside the finite domain of the image, an actual image instance can be passed as first argument directly such as an instance of GenericImage. Otherwise, an image function which extends the finite image domain to an infinite lattice is needed, i.e., an instance of a subclass of ExtrapolateImageFunction.
Definition at line 63 of file GaussianInterpolateImageFunction3D.hxx.
|
inlinevirtual |
Evaluate generic image without handling boundary conditions
This version is faster than EvaluateOutside, but is only defined inside the domain for which all image values required for interpolation are defined and thus require no extrapolation of the finite image.
Reimplemented from mirtk::GenericGaussianInterpolateImageFunction< TImage >.
Definition at line 81 of file GaussianInterpolateImageFunction3D.hxx.
|
inlinevirtual |
Get value of given image at arbitrary location (in pixels)
This function is used to only interpolate foreground image values. If fully outside the foreground region, the _DefaultValue is returned.
Reimplemented from mirtk::GenericGaussianInterpolateImageFunction< TImage >.
Definition at line 54 of file GaussianInterpolateImageFunction3D.hxx.
|
inline |
Get value of given image at arbitrary location (in pixels)
This function is used to only interpolate foreground image values. If fully outside the foreground region, the _DefaultValue is returned.
If the location is inside the finite domain of the image, an actual image instance can be passed as first argument directly such as an instance of GenericImage. Otherwise, an image function which extends the finite image domain to an infinite lattice is needed, i.e., an instance of a subclass of ExtrapolateImageFunction.
Definition at line 72 of file GaussianInterpolateImageFunction3D.hxx.
|
inlinevirtual |
Evaluate generic image without handling boundary conditions
If the location is partially inside the foreground region of the image, only the foreground values are interpolated. Otherwise, the _DefaultValue is returned.
This version is faster than GetWithPaddingOutside, but is only defined inside the domain for which all image values required for interpolation are defined and thus require no extrapolation of the finite image.
Reimplemented from mirtk::GenericGaussianInterpolateImageFunction< TImage >.
Definition at line 103 of file GaussianInterpolateImageFunction3D.hxx.
|
inlinevirtual |
Evaluate generic image at an arbitrary location (in pixels)
If the location is partially inside the foreground region of the image, only the foreground values are interpolated. Otherwise, the _DefaultValue is returned.
Reimplemented from mirtk::GenericGaussianInterpolateImageFunction< TImage >.
Definition at line 112 of file GaussianInterpolateImageFunction3D.hxx.