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

CatmullRomSpline< T > Class Template Reference
[Mathematical Functions]

#include <vigra/splines.hxx>

List of all members.

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.8.0 (20 Sep 2011)