pcl::BicubicBSplineInterpolation< T > Class Template Reference

Bicubic B-Spline Interpolation Algorithm. More...

#include <BicubicInterpolation.h>

+ Inheritance diagram for pcl::BicubicBSplineInterpolation< T >:

Public Member Functions

 BicubicBSplineInterpolation ()=default
 BicubicBSplineInterpolation (const BicubicBSplineInterpolation &)=default
virtual ~BicubicBSplineInterpolation ()
double operator() (double x, double y) const override
- Public Member Functions inherited from pcl::BicubicInterpolationBase< T >
 BicubicInterpolationBase ()=default
 BicubicInterpolationBase (const BicubicInterpolationBase &)=default
- Public Member Functions inherited from pcl::BidimensionalInterpolation< T >
 BidimensionalInterpolation ()=default
 BidimensionalInterpolation (const BidimensionalInterpolation &)=default
virtual ~BidimensionalInterpolation ()
const T * BeingInterpolated () const
double BorderFillValue () const
virtual void Clear ()
void DisableBorderFilling (bool disable=true)
void EnableBorderFilling (bool enable=true)
int Height () const
virtual void Initialize (const T *data, int width, int height)
bool IsBorderFillingEnabled () const
void SetBorderFillValue (double v)
int Width () const

Detailed Description

template<typename T>
class pcl::BicubicBSplineInterpolation< T >

Like bicubic spline interpolation, the bicubic B-spline interpolation algorithm also interpolates from the nearest sixteen data items. However, this algorithm uses B-spline interpolating functions instead of cubic splines, which yields quite (too?) smooth results.

This implementation is based on Bicubic Interpolation for Image Scaling, by Paul Bourke. It performs a convolution with a nonseparable 2-D filter, so its performance is O(n^2).

See also
BicubicSplineInterpolation, BicubicInterpolation, BilinearInterpolation, NearestNeighborInterpolation

Definition at line 677 of file BicubicInterpolation.h.

Constructor & Destructor Documentation

◆ BicubicBSplineInterpolation() [1/2]

template<typename T>
pcl::BicubicBSplineInterpolation< T >::BicubicBSplineInterpolation ( )

Constructs a BicubicBSplineInterpolation instance.

◆ BicubicBSplineInterpolation() [2/2]

template<typename T>
pcl::BicubicBSplineInterpolation< T >::BicubicBSplineInterpolation ( const BicubicBSplineInterpolation< T > &  )

Copy constructor.

◆ ~BicubicBSplineInterpolation()

template<typename T>
virtual pcl::BicubicBSplineInterpolation< T >::~BicubicBSplineInterpolation ( )

Virtual destructor.

Definition at line 694 of file BicubicInterpolation.h.

Member Function Documentation

◆ operator()()

template<typename T>
double pcl::BicubicBSplineInterpolation< T >::operator() ( double  x,
double  y 
) const

Interpolated value at {x,y} location.

x,yCoordinates of the interpolation point (horizontal, vertical).

Implements pcl::BidimensionalInterpolation< T >.

Definition at line 704 of file BicubicInterpolation.h.

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