C API

ikmeans_elkan.tc File Reference


Detailed Description

For internal use only.

Author:
Andrea Vedaldi

Definition in file ikmeans_elkan.tc.

Go to the source code of this file.


Functions

static unsigned int isqrt (unsigned long val)
static void vl_ikm_elkan_update_inter_dist (VlIKMFilt *f)
static void vl_ikm_init_elkan (VlIKMFilt *f)
 Helper function to initialize filter for Triangle algorithm.
static int vl_ikm_train_elkan (VlIKMFilt *f, vl_uint8 const *data, int N)
 Elkan algorithm.
static void vl_ikm_push_elkan (VlIKMFilt *f, vl_uint *asgn, vl_uint8 const *data, int N)
 Elkan algorithm.

Function Documentation

static unsigned int isqrt ( unsigned long  val  )  [static]

For internal use only.

Square root of an integer value

Author:
Jim Ulery

Definition at line 21 of file ikmeans_elkan.tc.

Referenced by vl_ikm_train_elkan().

static void vl_ikm_elkan_update_inter_dist ( VlIKMFilt f  )  [static]

For internal use only.

Update inter cluster distance table.

Definition at line 39 of file ikmeans_elkan.tc.

References _VlIKMFilt::centers, and _VlIKMFilt::inter_dist.

Referenced by vl_ikm_init_elkan(), and vl_ikm_train_elkan().

static void vl_ikm_init_elkan ( VlIKMFilt f  )  [static]

For internal use only.

Parameters:
f filter.

Definition at line 68 of file ikmeans_elkan.tc.

References _VlIKMFilt::K, vl_free(), vl_ikm_elkan_update_inter_dist(), vl_ikm_init_elkan(), and vl_malloc().

Referenced by vl_ikm_init_elkan().

static void vl_ikm_push_elkan ( VlIKMFilt f,
vl_uint asgn,
vl_uint8 const *  data,
int  N 
) [static]

For internal use only.

Parameters:
f IKM quantizer.
asgn Assignment of data to centers (out).
data Data to quantize.
N Number of data elements.

Definition at line 345 of file ikmeans_elkan.tc.

References _VlIKMFilt::centers, VL_BIG_INT, and vl_ikm_push_elkan().

Referenced by vl_ikm_push_elkan().

static int vl_ikm_train_elkan ( VlIKMFilt f,
vl_uint8 const *  data,
int  N 
) [static]

For internal use only.

Parameters:
f IKM quantizer.
data Data to quantize.
N Number of data elements.

Definition at line 86 of file ikmeans_elkan.tc.

References _VlIKMFilt::centers, isqrt(), _VlIKMFilt::max_niters, VL_BIG_INT, vl_free(), vl_ikm_elkan_update_inter_dist(), vl_ikm_train_elkan(), vl_malloc(), and VL_PRINTF.

Referenced by vl_ikm_train_elkan().