go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
Data Structures | Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Member Functions
itk::BSplineKernelFunction2< VSplineOrder > Class Template Reference

#include <itkBSplineKernelFunction2.h>

Detailed Description

template<unsigned int VSplineOrder = 3>
class itk::BSplineKernelFunction2< VSplineOrder >

B-spline kernel used for density estimation and nonparameteric regression.

This class encapsulates B-spline kernel for density estimation or nonparametric regression. See documentation for KernelFunction for more details.

This class is templated over the spline order.

Warning
Evaluate is only implemented for spline order 0 to 3
See also
KernelFunction

Definition at line 59 of file itkBSplineKernelFunction2.h.

+ Inheritance diagram for itk::BSplineKernelFunction2< VSplineOrder >:

Data Structures

struct  Dispatch
 
struct  DispatchBase
 

Public Types

typedef SmartPointer< SelfPointer
 
typedef BSplineKernelFunction2 Self
 
typedef KernelFunctionBase2< doubleSuperclass
 
typedef FixedArray< double, itkGetStaticConstMacro(SplineOrder)+1 > WeightArrayType
 
- Public Types inherited from itk::KernelFunctionBase2< double >
typedef SmartPointer< const SelfConstPointer
 
typedef SmartPointer< SelfPointer
 
typedef double RealType
 
typedef KernelFunctionBase2 Self
 
typedef KernelFunctionBase< doubleSuperclass
 

Public Member Functions

double Evaluate (const double &u) const override
 
void Evaluate (const double &u, double *weights) const override
 
virtual const char * GetClassName () const
 
 itkStaticConstMacro (SplineOrder, unsigned int, VSplineOrder)
 
double Evaluate (const double &u) const override=0
 
virtual void Evaluate (const double &u, double *weights) const=0
 
virtual const char * GetClassName () const
 

Static Public Member Functions

static Pointer New ()
 

Protected Member Functions

 BSplineKernelFunction2 ()
 
void PrintSelf (std::ostream &os, Indent indent) const override
 
 ~BSplineKernelFunction2 () override
 
- Protected Member Functions inherited from itk::KernelFunctionBase2< double >
 KernelFunctionBase2 ()
 
 ~KernelFunctionBase2 () override
 

Private Member Functions

 BSplineKernelFunction2 (const Self &)
 
double Evaluate (const Dispatch< 0 > &, const double &u) const
 
void Evaluate (const Dispatch< 0 > &, const double &u, double *weights) const
 
double Evaluate (const Dispatch< 1 > &, const double &u) const
 
void Evaluate (const Dispatch< 1 > &, const double &u, double *weights) const
 
double Evaluate (const Dispatch< 2 > &, const double &u) const
 
void Evaluate (const Dispatch< 2 > &, const double &u, double *weights) const
 
double Evaluate (const Dispatch< 3 > &, const double &u) const
 
void Evaluate (const Dispatch< 3 > &, const double &u, double *weights) const
 
double Evaluate (const DispatchBase &, const double &) const
 
double Evaluate (const DispatchBase &, const double &, double *) const
 
void operator= (const Self &)
 

Member Typedef Documentation

◆ Pointer

template<unsigned int VSplineOrder = 3>
typedef SmartPointer< Self > itk::BSplineKernelFunction2< VSplineOrder >::Pointer

Definition at line 66 of file itkBSplineKernelFunction2.h.

◆ Self

template<unsigned int VSplineOrder = 3>
typedef BSplineKernelFunction2 itk::BSplineKernelFunction2< VSplineOrder >::Self

Standard class typedefs.

Definition at line 64 of file itkBSplineKernelFunction2.h.

◆ Superclass

template<unsigned int VSplineOrder = 3>
typedef KernelFunctionBase2< double > itk::BSplineKernelFunction2< VSplineOrder >::Superclass

Definition at line 65 of file itkBSplineKernelFunction2.h.

◆ WeightArrayType

template<unsigned int VSplineOrder = 3>
typedef FixedArray< double, itkGetStaticConstMacro( SplineOrder ) + 1 > itk::BSplineKernelFunction2< VSplineOrder >::WeightArrayType

Store weights for the entire support.

Definition at line 79 of file itkBSplineKernelFunction2.h.

Constructor & Destructor Documentation

◆ BSplineKernelFunction2() [1/2]

template<unsigned int VSplineOrder = 3>
itk::BSplineKernelFunction2< VSplineOrder >::BSplineKernelFunction2 ( )
inlineprotected

Definition at line 99 of file itkBSplineKernelFunction2.h.

◆ ~BSplineKernelFunction2()

template<unsigned int VSplineOrder = 3>
itk::BSplineKernelFunction2< VSplineOrder >::~BSplineKernelFunction2 ( )
inlineoverrideprotected

Definition at line 100 of file itkBSplineKernelFunction2.h.

◆ BSplineKernelFunction2() [2/2]

template<unsigned int VSplineOrder = 3>
itk::BSplineKernelFunction2< VSplineOrder >::BSplineKernelFunction2 ( const Self )
private

Member Function Documentation

◆ Evaluate() [1/12]

template<unsigned int VSplineOrder = 3>
double itk::BSplineKernelFunction2< VSplineOrder >::Evaluate ( const Dispatch< 0 > &  ,
const double u 
) const
inlineprivate

B-spline functions for one point. Zeroth order spline.

Definition at line 124 of file itkBSplineKernelFunction2.h.

◆ Evaluate() [2/12]

template<unsigned int VSplineOrder = 3>
void itk::BSplineKernelFunction2< VSplineOrder >::Evaluate ( const Dispatch< 0 > &  ,
const double u,
double weights 
) const
inlineprivate

B-spline functions for all points in the support. Zeroth order spline.

Definition at line 192 of file itkBSplineKernelFunction2.h.

◆ Evaluate() [3/12]

template<unsigned int VSplineOrder = 3>
double itk::BSplineKernelFunction2< VSplineOrder >::Evaluate ( const Dispatch< 1 > &  ,
const double u 
) const
inlineprivate

First order spline

Definition at line 135 of file itkBSplineKernelFunction2.h.

◆ Evaluate() [4/12]

template<unsigned int VSplineOrder = 3>
void itk::BSplineKernelFunction2< VSplineOrder >::Evaluate ( const Dispatch< 1 > &  ,
const double u,
double weights 
) const
inlineprivate

First order spline

Definition at line 204 of file itkBSplineKernelFunction2.h.

◆ Evaluate() [5/12]

template<unsigned int VSplineOrder = 3>
double itk::BSplineKernelFunction2< VSplineOrder >::Evaluate ( const Dispatch< 2 > &  ,
const double u 
) const
inlineprivate

Second order spline.

Definition at line 145 of file itkBSplineKernelFunction2.h.

◆ Evaluate() [6/12]

template<unsigned int VSplineOrder = 3>
void itk::BSplineKernelFunction2< VSplineOrder >::Evaluate ( const Dispatch< 2 > &  ,
const double u,
double weights 
) const
inlineprivate

Second order spline.

Definition at line 215 of file itkBSplineKernelFunction2.h.

◆ Evaluate() [7/12]

template<unsigned int VSplineOrder = 3>
double itk::BSplineKernelFunction2< VSplineOrder >::Evaluate ( const Dispatch< 3 > &  ,
const double u 
) const
inlineprivate

Third order spline.

Definition at line 162 of file itkBSplineKernelFunction2.h.

◆ Evaluate() [8/12]

template<unsigned int VSplineOrder = 3>
void itk::BSplineKernelFunction2< VSplineOrder >::Evaluate ( const Dispatch< 3 > &  ,
const double u,
double weights 
) const
inlineprivate

Third order spline.

Definition at line 228 of file itkBSplineKernelFunction2.h.

◆ Evaluate() [9/12]

template<unsigned int VSplineOrder = 3>
double itk::BSplineKernelFunction2< VSplineOrder >::Evaluate ( const DispatchBase &  ,
const double  
) const
inlineprivate

Unimplemented spline order.

Definition at line 180 of file itkBSplineKernelFunction2.h.

◆ Evaluate() [10/12]

template<unsigned int VSplineOrder = 3>
double itk::BSplineKernelFunction2< VSplineOrder >::Evaluate ( const DispatchBase &  ,
const double ,
double  
) const
inlineprivate

Unimplemented spline order.

Definition at line 246 of file itkBSplineKernelFunction2.h.

◆ Evaluate() [11/12]

template<unsigned int VSplineOrder = 3>
double itk::BSplineKernelFunction2< VSplineOrder >::Evaluate ( const double u) const
inlineoverridevirtual

Evaluate the function at one point.

Implements itk::KernelFunctionBase2< double >.

Definition at line 82 of file itkBSplineKernelFunction2.h.

◆ Evaluate() [12/12]

template<unsigned int VSplineOrder = 3>
void itk::BSplineKernelFunction2< VSplineOrder >::Evaluate ( const double u,
double weights 
) const
inlineoverridevirtual

Evaluate the function at the entire support. This is slightly faster, since no if's are needed.

Implements itk::KernelFunctionBase2< double >.

Definition at line 91 of file itkBSplineKernelFunction2.h.

◆ GetClassName()

template<unsigned int VSplineOrder = 3>
virtual const char * itk::BSplineKernelFunction2< VSplineOrder >::GetClassName ( ) const
virtual

Run-time type information (and related methods).

Reimplemented from itk::KernelFunctionBase2< double >.

◆ itkStaticConstMacro()

template<unsigned int VSplineOrder = 3>
itk::BSplineKernelFunction2< VSplineOrder >::itkStaticConstMacro ( SplineOrder  ,
unsigned int  ,
VSplineOrder   
)

Enum of for spline order.

◆ New()

template<unsigned int VSplineOrder = 3>
static Pointer itk::BSplineKernelFunction2< VSplineOrder >::New ( )
static

Method for creation through the object factory.

◆ operator=()

template<unsigned int VSplineOrder = 3>
void itk::BSplineKernelFunction2< VSplineOrder >::operator= ( const Self )
private

◆ PrintSelf()

template<unsigned int VSplineOrder = 3>
void itk::BSplineKernelFunction2< VSplineOrder >::PrintSelf ( std::ostream &  os,
Indent  indent 
) const
inlineoverrideprotected

Definition at line 102 of file itkBSplineKernelFunction2.h.



Generated on 1667476801 for elastix by doxygen 1.9.4 elastix logo