[ VIGRA Homepage | Function Index | Class Index | Namespaces | File List | Main Page ]
|   | CoscotFunction [Mathematical Functions] |  | 
#include <vigra/resizeimage.hxx>
| Public Types | |
| typedef T | argument_type | 
| typedef T | result_type | 
| typedef T | value_type | 
| Public Member Functions | |
| unsigned int | derivativeOrder () const | 
| result_type | operator() (argument_type x) const | 
| value_type | operator[] (value_type x) const | 
| ArrayVector< double > const & | prefilterCoefficients () const | 
| double | radius () const | 
Implements the Coscot interpolation function proposed by Maria Magnusson Seger (maria@isy.liu.se) in the context of tomographic reconstruction. It provides a fast transition between the pass- and stop-bands and minimal ripple outside the transition region. Both properties are important for this application and can be tuned by the parameters m and h (with defaults 3 and 0.5). The function is defined by
![\[ f_{m,h}(x) = \left\{ \begin{array}{ll} \frac{1}{2m}\sin(\pi x)\cot(\pi x / (2 m))(h + (1-h)\cos(\pi x/m)) & |x| \leq m \\ 0 & \mbox{otherwise} \end{array}\right. \]](form_65.png) 
It can be used as a functor, and as a kernel for resamplingConvolveImage() to create a differentiable interpolant of an image.
#include <vigra/resizeimage.hxx>
 Namespace: vigra 
| typedef T argument_type | 
the unary functor's argument type
| typedef T result_type | 
the splines polynomial order
| typedef T value_type | 
the kernel's value type
| unsigned int derivativeOrder | ( | ) | const | 
Derivative order of the function: always 0.
| result_type operator() | ( | argument_type | x | ) | const | 
function (functor) call
| value_type operator[] | ( | value_type | x | ) | const | 
index operator -- same as operator()
| ArrayVector<double> const& prefilterCoefficients | ( | ) | const | 
Prefilter coefficients for compatibility with vigra::BSpline. (array has zero length, since prefiltering is not necessary).
| double radius | ( | ) | const | 
Radius of the function's support. Needed for resamplingConvolveImage(), equals m.
| 
© Ullrich Köthe     (ullrich.koethe@iwr.uni-heidelberg.de)  | 
html generated using doxygen and Python
 |