#include <ExtrapolateImageFunction.h>
Public Types | |
typedef TImage | ImageType |
Input image type. | |
typedef ImageType::RealType | RealType |
Compatible floating-point type. | |
typedef ImageType::VoxelType | VoxelType |
Input voxel type. | |
Public Types inherited from mirtk::GenericExtrapolateImageFunction< TImage > | |
typedef TImage | ImageType |
Input image type. | |
typedef ImageType::RealType | RealType |
Compatible floating-point type. | |
typedef ImageType::VoxelType | VoxelType |
Input voxel type. | |
Public Member Functions | |
virtual VoxelType | Get (int, int, int=0, int=0) const |
Get image value at an arbitrary discrete image location. | |
virtual void | Initialize () |
Initialize image function. | |
virtual bool | IsForeground (int, int, int=0, int=0) const |
Whether voxel whose value is used is inside the foreground. | |
void | Transform (int &, int &) const |
Transform 2D voxel index. | |
void | Transform (int &, int &, int &) const |
Transform 3D voxel index. | |
void | Transform (int &, int &, int &, int &) const |
Transform 4D voxel index. | |
virtual void | TransformIndex (int &idx, int max) const =0 |
virtual void | TransformT (int &l) const |
Transform voxel index in t dimension. | |
virtual void | TransformT (int &l, int c) const |
Transform voxel index in t dimension. | |
void | TransformX (int &) const |
Transform voxel index in x dimension. | |
void | TransformX (int &, int) const |
Transform voxel index in x dimension. | |
void | TransformY (int &) const |
Transform voxel index in y dimension. | |
void | TransformY (int &, int) const |
Transform voxel index in y dimension. | |
void | TransformZ (int &) const |
Transform voxel index in z dimension. | |
void | TransformZ (int &, int) const |
Transform voxel index in z dimension. | |
virtual | ~IndexExtrapolateImageFunction () |
Destructor. | |
Public Member Functions inherited from mirtk::GenericExtrapolateImageFunction< TImage > | |
VoxelType | Get (int) const |
Get image value at an arbitrary discrete image location. | |
double | GetAsDouble (int, int, int=0, int=0) const |
Get scalar image value at an arbitrary discrete image location. | |
void | GetAsVector (Vector &, int, int, int=0, int=0) const |
Get vector image value at an arbitrary discrete image location. | |
virtual void | Input (const BaseImage *) |
Set input image. | |
const ImageType * | Input () const |
Get input image. | |
VoxelType | operator() (int) const |
Get image value at an arbitrary discrete image location. | |
VoxelType | operator() (int, int, int=0, int=0) const |
Get image value at an arbitrary discrete image location. | |
virtual | ~GenericExtrapolateImageFunction () |
Destructor. | |
Public Member Functions inherited from mirtk::ExtrapolateImageFunction | |
const ImageAttributes & | Attributes () const |
Attributes of input image. | |
double | Evaluate (double, double, double=0, double=0) const |
Get scalar image value at the nearest discrete image location. | |
virtual double | Evaluate (double, double, double=0, double=0) |
Get scalar image value at the nearest discrete image location. | |
virtual enum ExtrapolationMode | ExtrapolationMode () const =0 |
Get extrapolation mode corresponding to this extrapolator. | |
double | GetAsDouble (int) const |
Get scalar image value at an arbitrary discrete image location. | |
Vector | GetAsVector (int) const |
Get vector image value at an arbitrary discrete image location. | |
Vector | GetAsVector (int, int, int=0, int=0) const |
Get vector image value at an arbitrary discrete image location. | |
void | GetAsVector (Vector &, int) const |
Get vector image value at an arbitrary discrete image location. | |
int | N () const |
Number of vector components per image voxel. | |
int | T () const |
Size of input image in t dimension. | |
double | TSize () const |
Voxel size of input image in t dimension. | |
int | X () const |
Size of input image in x dimension. | |
double | XSize () const |
Voxel size of input image in x dimension. | |
int | Y () const |
Size of input image in y dimension. | |
double | YSize () const |
Voxel size of input image in y dimension. | |
int | Z () const |
Size of input image in z dimension. | |
double | ZSize () const |
Voxel size of input image in z dimension. | |
virtual | ~ExtrapolateImageFunction () |
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. | |
Protected Member Functions | |
IndexExtrapolateImageFunction () | |
Default constructor. | |
Protected Member Functions inherited from mirtk::GenericExtrapolateImageFunction< TImage > | |
GenericExtrapolateImageFunction () | |
Default constructor. | |
Protected Member Functions inherited from mirtk::ExtrapolateImageFunction | |
ExtrapolateImageFunction () | |
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 |
Protected Attributes | |
int | _tmax |
Maximum index in t dimension. | |
int | _xmax |
Maximum index in x dimension. | |
int | _ymax |
Maximum index in y dimension. | |
int | _zmax |
Maximum index in z dimension. | |
Additional Inherited Members | |
Static Public Member Functions inherited from mirtk::GenericExtrapolateImageFunction< TImage > | |
static GenericExtrapolateImageFunction * | New (enum ExtrapolationMode, const TImage *=NULL) |
Construct extrapolator or return NULL if mode is Extrapolation_None . | |
Static Public Member Functions inherited from mirtk::ExtrapolateImageFunction | |
static ExtrapolateImageFunction * | New (ExtrapolationMode mode, const BaseImage *=NULL) |
Construct extrapolator or return NULL if mode is Extrapolation_None . | |
Static Public Member Functions inherited from mirtk::Object | |
static const char * | NameOfType () |
Get name of this class type. | |
Static Protected Member Functions inherited from mirtk::Object | |
template<typename... Args> | |
static void | ThrowStatic (ErrorType err, const char *cls, const char *func, Args... args) |
Base class for generic voxel index extrapolation functions
This abstract class is the base for extrapolate image functions which map any given discrete voxel coordinate to one, which is inside the finite image domain. The extrapolation function assigns the image value at the resulting voxel coordinate to the initially mapped discrete voxel.
This base class is templated over the type of the input image to be extrapolated and thus subclasses can make use of image voxel type specific (non-virtual) getters to access the image data. No conversion of the voxel type to a uniform voxel type such as double scalar or vector type is required when the type of the image to be extrapolated is known. Otherwise, if the image type is unknown, use the abstract ExtrapolateImageFunction interface instead.
Definition at line 241 of file ExtrapolateImageFunction.h.
|
pure virtual |
Transform voxel index such that it is inside the range [0, max]
[in,out] | idx | Voxel index. |
[in] | max | Maximum voxel index. |
Implemented in mirtk::GenericRepeatExtrapolateImageFunction< TImage >, mirtk::GenericRepeatExtrapolateImageFunction< BaseImage >, mirtk::GenericMirrorExtrapolateImageFunction< TImage >, mirtk::GenericMirrorExtrapolateImageFunction< BaseImage >, mirtk::GenericNearestNeighborExtrapolateImageFunction< TImage >, and mirtk::GenericNearestNeighborExtrapolateImageFunction< BaseImage >.