Documentation>C API
homkermap.c File Reference

Homogeneous kernel map - Definition. More...

#include "homkermap.h"
#include "mathop.h"
#include <math.h>
#include "homkermap.c"
#include "float.th"

Functions

double vl_homogeneouskernelmap_get_spectrum (VlHomogeneousKernelMap const *self, double omega)
 Sample the kernel specturm. More...
 
double vl_homogeneouskernelmap_get_smooth_spectrum (VlHomogeneousKernelMap const *self, double omega)
 Sample the smoothed kernel spectrum. More...
 
VlHomogeneousKernelMapvl_homogeneouskernelmap_new (VlHomogeneousKernelType kernelType, double gamma, vl_size order, double period, VlHomogeneousKernelMapWindowType windowType)
 Create a new homgeneous kernel map. More...
 
void vl_homogeneouskernelmap_delete (VlHomogeneousKernelMap *self)
 Delete an object instance. More...
 
vl_size vl_homogeneouskernelmap_get_order (VlHomogeneousKernelMap const *self)
 Get the map order. More...
 
vl_size vl_homogeneouskernelmap_get_dimension (VlHomogeneousKernelMap const *self)
 Get the map dimension. More...
 
VlHomogeneousKernelType vl_homogeneouskernelmap_get_kernel_type (VlHomogeneousKernelMap const *self)
 Get the kernel type. More...
 
VlHomogeneousKernelMapWindowType vl_homogeneouskernelmap_get_window_type (VlHomogeneousKernelMap const *self)
 Get the window type. More...
 

Detailed Description

Author
Andrea Vedaldi

Function Documentation

◆ vl_homogeneouskernelmap_delete()

void vl_homogeneouskernelmap_delete ( VlHomogeneousKernelMap self)
Parameters
selfobject. The function deletes the specified map object.

◆ vl_homogeneouskernelmap_get_dimension()

vl_size vl_homogeneouskernelmap_get_dimension ( VlHomogeneousKernelMap const *  self)
Parameters
selfobject.
Returns
the map dimension (2 order +1).

◆ vl_homogeneouskernelmap_get_kernel_type()

VlHomogeneousKernelType vl_homogeneouskernelmap_get_kernel_type ( VlHomogeneousKernelMap const *  self)
Parameters
selfobject.
Returns
kernel type.

◆ vl_homogeneouskernelmap_get_order()

vl_size vl_homogeneouskernelmap_get_order ( VlHomogeneousKernelMap const *  self)
Parameters
selfobject.
Returns
the map order.

◆ vl_homogeneouskernelmap_get_smooth_spectrum()

double vl_homogeneouskernelmap_get_smooth_spectrum ( VlHomogeneousKernelMap const *  self,
double  omega 
)
inline
Parameters
selfhomogeneous kernel map.
omegasampling frequency.
Returns
the spectrum sampled at omega after smoothing.

◆ vl_homogeneouskernelmap_get_spectrum()

double vl_homogeneouskernelmap_get_spectrum ( VlHomogeneousKernelMap const *  self,
double  omega 
)
inline
Parameters
selfhomogeneous kernel map.
omegasampling frequency.
Returns
the spectrum sampled at omega.

◆ vl_homogeneouskernelmap_get_window_type()

VlHomogeneousKernelMapWindowType vl_homogeneouskernelmap_get_window_type ( VlHomogeneousKernelMap const *  self)
Parameters
selfobject.
Returns
window type.

◆ vl_homogeneouskernelmap_new()

VlHomogeneousKernelMap* vl_homogeneouskernelmap_new ( VlHomogeneousKernelType  kernelType,
double  gamma,
vl_size  order,
double  period,
VlHomogeneousKernelMapWindowType  windowType 
)
Parameters
kernelTypetype of homogeneous kernel.
gammakernel homogeneity degree.
orderapproximation order.
periodkernel period.
windowTypetype of window used to truncate the kernel.
Returns
the new homogeneous kernel map.

The function intializes a new homogeneous kernel map for the specified kernel type, homogeneity degree, approximation order, period, and truncation window. See Fundamentals for details.

The homogeneity degree gamma must be positive (the standard kernels are obtained by setting gamma to 1). When unsure, set windowType to VlHomogeneousKernelMapWindowRectangular. The period should be non-negative; specifying a negative or null value causes the function to switch to a default value.

The function returns NULL if there is not enough free memory.