VTK

perform bspline interpolation on images More...
#include <vtkImageBSplineInterpolator.h>
perform bspline interpolation on images
vtkImageBSplineInterpolator can be used to perform bspline interpolation on images that have been filtered with vtkImageBSplineCoefficients. The bspline interpolants provide the maximum possible degree of continuity for a given kernel size, but require that the image data be prefiltered to generate bspline coefficients before the interpolation is performed. Interpolating data that has not been prefiltered will give incorrect results.
Definition at line 49 of file vtkImageBSplineInterpolator.h.
Reimplemented from vtkAbstractImageInterpolator.
Definition at line 54 of file vtkImageBSplineInterpolator.h.
vtkImageBSplineInterpolator::vtkImageBSplineInterpolator  (  )  [protected] 
vtkImageBSplineInterpolator::~vtkImageBSplineInterpolator  (  )  [protected] 
static vtkImageBSplineInterpolator* vtkImageBSplineInterpolator::New  (  )  [static] 
Create an object with Debug turned off, modified time initialized to zero, and reference counting on.
Reimplemented from vtkObject.
virtual const char* vtkImageBSplineInterpolator::GetClassName  (  )  [virtual] 
Reimplemented from vtkAbstractImageInterpolator.
static int vtkImageBSplineInterpolator::IsTypeOf  (  const char *  name  )  [static] 
Return 1 if this class type is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.
Reimplemented from vtkAbstractImageInterpolator.
virtual int vtkImageBSplineInterpolator::IsA  (  const char *  name  )  [virtual] 
Return 1 if this class is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.
Reimplemented from vtkAbstractImageInterpolator.
static vtkImageBSplineInterpolator* vtkImageBSplineInterpolator::SafeDownCast  (  vtkObject *  o  )  [static] 
Reimplemented from vtkAbstractImageInterpolator.
virtual void vtkImageBSplineInterpolator::PrintSelf  (  ostream &  os, 
vtkIndent  indent  
)  [virtual] 
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 vtkAbstractImageInterpolator.
void vtkImageBSplineInterpolator::SetSplineDegree  (  int  degree  ) 
Set the degree of the spline polynomial. The default value is 3, and the maximum is 9. The data must be prefiltered for the same degree of polynomial with vtkImageBSplineCoefficients.
int vtkImageBSplineInterpolator::GetSplineDegree  (  )  [inline] 
Set the degree of the spline polynomial. The default value is 3, and the maximum is 9. The data must be prefiltered for the same degree of polynomial with vtkImageBSplineCoefficients.
Definition at line 62 of file vtkImageBSplineInterpolator.h.
int vtkImageBSplineInterpolator::GetSplineDegreeMinValue  (  )  [inline] 
Set the degree of the spline polynomial. The default value is 3, and the maximum is 9. The data must be prefiltered for the same degree of polynomial with vtkImageBSplineCoefficients.
Definition at line 63 of file vtkImageBSplineInterpolator.h.
int vtkImageBSplineInterpolator::GetSplineDegreeMaxValue  (  )  [inline] 
Set the degree of the spline polynomial. The default value is 3, and the maximum is 9. The data must be prefiltered for the same degree of polynomial with vtkImageBSplineCoefficients.
Definition at line 64 of file vtkImageBSplineInterpolator.h.
virtual void vtkImageBSplineInterpolator::ComputeSupportSize  (  const double  matrix[16], 
int  support[3]  
)  [virtual] 
Get the support size for use in computing update extents. If the data will be sampled on a regular grid, then pass a matrix describing the structured coordinate transformation between the output and the input. Otherwise, pass NULL as the matrix to retrieve the full kernel size.
Implements vtkAbstractImageInterpolator.
virtual bool vtkImageBSplineInterpolator::IsSeparable  (  )  [virtual] 
Returns true if the interpolator supports weight precomputation. This will always return true for this interpolator.
Implements vtkAbstractImageInterpolator.
virtual void vtkImageBSplineInterpolator::PrecomputeWeightsForExtent  (  const double  matrix[16], 
const int  extent[6],  
int  newExtent[6],  
vtkInterpolationWeights *&  weights  
)  [virtual] 
If the data is going to be sampled on a regular grid, then the interpolation weights can be precomputed. A matrix must be supplied that provides a transformation between the provided extent and the structured coordinates of the input. This matrix must perform only permutations, scales, and translation, i.e. each of the three columns must have only one nonzero value. A new extent is provided for outofbounds checks. THIS METHOD IS THREAD SAFE.
Reimplemented from vtkAbstractImageInterpolator.
virtual void vtkImageBSplineInterpolator::PrecomputeWeightsForExtent  (  const float  matrix[16], 
const int  extent[6],  
int  newExtent[6],  
vtkInterpolationWeights *&  weights  
)  [virtual] 
If the data is going to be sampled on a regular grid, then the interpolation weights can be precomputed. A matrix must be supplied that provides a transformation between the provided extent and the structured coordinates of the input. This matrix must perform only permutations, scales, and translation, i.e. each of the three columns must have only one nonzero value. A new extent is provided for outofbounds checks. THIS METHOD IS THREAD SAFE.
Reimplemented from vtkAbstractImageInterpolator.
virtual void vtkImageBSplineInterpolator::FreePrecomputedWeights  (  vtkInterpolationWeights *&  weights  )  [virtual] 
Free the precomputed weights. THIS METHOD IS THREAD SAFE.
Reimplemented from vtkAbstractImageInterpolator.
virtual void vtkImageBSplineInterpolator::InternalUpdate  (  )  [protected, virtual] 
Update the interpolator.
Implements vtkAbstractImageInterpolator.
virtual void vtkImageBSplineInterpolator::InternalDeepCopy  (  vtkAbstractImageInterpolator *  obj  )  [protected, virtual] 
Copy the interpolator.
Implements vtkAbstractImageInterpolator.
virtual void vtkImageBSplineInterpolator::GetInterpolationFunc  (  void(**)(vtkInterpolationInfo *, const double[3], double *)  doublefunc  )  [protected, virtual] 
Get the interpolation functions.
Reimplemented from vtkAbstractImageInterpolator.
virtual void vtkImageBSplineInterpolator::GetInterpolationFunc  (  void(**)(vtkInterpolationInfo *, const float[3], float *)  floatfunc  )  [protected, virtual] 
Get the interpolation functions.
Reimplemented from vtkAbstractImageInterpolator.
virtual void vtkImageBSplineInterpolator::GetRowInterpolationFunc  (  void(**)(vtkInterpolationWeights *, int, int, int, double *, int)  doublefunc  )  [protected, virtual] 
Get the row interpolation functions.
Reimplemented from vtkAbstractImageInterpolator.
virtual void vtkImageBSplineInterpolator::GetRowInterpolationFunc  (  void(**)(vtkInterpolationWeights *, int, int, int, float *, int)  floatfunc  )  [protected, virtual] 
Get the row interpolation functions.
Reimplemented from vtkAbstractImageInterpolator.
virtual void vtkImageBSplineInterpolator::BuildKernelLookupTable  (  )  [protected, virtual] 
Build the lookup tables used for the interpolation.
virtual void vtkImageBSplineInterpolator::FreeKernelLookupTable  (  )  [protected, virtual] 
Free the kernel lookup tables.
int vtkImageBSplineInterpolator::SplineDegree [protected] 
Definition at line 133 of file vtkImageBSplineInterpolator.h.
float* vtkImageBSplineInterpolator::KernelLookupTable [protected] 
Definition at line 134 of file vtkImageBSplineInterpolator.h.