[ VIGRA Homepage | Function Index | Class Index | Namespaces | File List | Main Page ]

details CatmullRomSpline< T > Class Template Reference VIGRA

#include <vigra/splines.hxx>

Public Types

typedef T argument_type
 
typedef T result_type
 
enum  StaticOrder
 
typedef T value_type
 

Public Member Functions

unsigned int derivativeOrder () const
 
result_type operator() (argument_type x) const
 
operator[] (T x) const
 
ArrayVector< double > const & prefilterCoefficients () const
 
int radius () const
 

Detailed Description

template<class T = double>
class vigra::CatmullRomSpline< T >

Interpolating 3-rd order splines.

Implements the Catmull/Rom cardinal function

\[ f(x) = \left\{ \begin{array}{ll} \frac{3}{2}x^3 - \frac{5}{2}x^2 + 1 & |x| \leq 1 \\ -\frac{1}{2}x^3 + \frac{5}{2}x^2 -4x + 2 & |x| \leq 2 \\ 0 & \mbox{otherwise} \end{array}\right. \]

It can be used as a functor, and as a kernel for resamplingConvolveImage() to create a differentiable interpolant of an image. However, it should be noted that a twice differentiable interpolant can be created with only slightly more effort by recursive prefiltering followed by convolution with a 3rd order B-spline.

#include <vigra/splines.hxx>
Namespace: vigra

Member Typedef Documentation

typedef T value_type

the kernel's value type

typedef T argument_type

the unary functor's argument type

typedef T result_type

the unary functor's result type

Member Enumeration Documentation

the splines polynomial order

Member Function Documentation

T operator[] ( x) const

index operator – same as operator()

int radius ( ) const

Radius of the function's support. Needed for resamplingConvolveImage(), always 2.

unsigned int derivativeOrder ( ) const

Derivative order of the function: always 0.

ArrayVector<double> const& prefilterCoefficients ( ) const

Prefilter coefficients for compatibility with vigra::BSpline. (array has zero length, since prefiltering is not necessary).


The documentation for this class was generated from the following file:

© Ullrich Köthe (ullrich.koethe@iwr.uni-heidelberg.de)
Heidelberg Collaboratory for Image Processing, University of Heidelberg, Germany

html generated using doxygen and Python
vigra 1.11.1 (Fri May 19 2017)