| | |
| | |
| | |
| | |
| | |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| |
|
| | #ifndef VL_GMM_H |
| | #define VL_GMM_H |
| |
|
| | #include "kmeans.h" |
| |
|
| | |
| | typedef enum _VlGMMInitialization |
| | { |
| | VlGMMKMeans, |
| | VlGMMRand, |
| | VlGMMCustom |
| | } VlGMMInitialization ; |
| |
|
| |
|
| | #ifndef __DOXYGEN__ |
| | struct _VlGMM ; |
| | typedef struct _VlGMM VlGMM ; |
| | #else |
| | |
| | typedef OPAQUE VlGMM ; |
| | #endif |
| |
|
| | |
| | |
| | |
| | VL_EXPORT VlGMM * vl_gmm_new (vl_type dataType, vl_size dimension, vl_size numComponents) ; |
| | VL_EXPORT VlGMM * vl_gmm_new_copy (VlGMM const * gmm) ; |
| | VL_EXPORT void vl_gmm_delete (VlGMM * self) ; |
| | VL_EXPORT void vl_gmm_reset (VlGMM * self); |
| | |
| |
|
| | |
| | |
| | |
| | VL_EXPORT double |
| | vl_gmm_cluster |
| | (VlGMM * self, |
| | void const * data, |
| | vl_size numData); |
| | |
| |
|
| | |
| | |
| |
|
| | VL_EXPORT void |
| | vl_gmm_init_with_rand_data |
| | (VlGMM * self, |
| | void const * data, |
| | vl_size numData) ; |
| |
|
| | VL_EXPORT void |
| | vl_gmm_init_with_kmeans |
| | (VlGMM * self, |
| | void const * data, |
| | vl_size numData, |
| | VlKMeans * kmeansInit); |
| |
|
| | VL_EXPORT double |
| | vl_gmm_em |
| | (VlGMM * self, |
| | void const * data, |
| | vl_size numData); |
| | |
| |
|
| | VL_EXPORT void |
| | vl_gmm_set_means |
| | (VlGMM * self, |
| | void const * means); |
| |
|
| | VL_EXPORT void |
| | vl_gmm_set_covariances |
| | (VlGMM * self, |
| | void const * covariances); |
| |
|
| | VL_EXPORT void |
| | vl_gmm_set_priors |
| | (VlGMM * self, |
| | void const * priors); |
| |
|
| | VL_EXPORT double |
| | vl_get_gmm_data_posteriors_f(float * posteriors, |
| | vl_size numClusters, |
| | vl_size numData, |
| | float const * priors, |
| | float const * means, |
| | vl_size dimension, |
| | float const * covariances, |
| | float const * data) ; |
| |
|
| | VL_EXPORT double |
| | vl_get_gmm_data_posteriors_d(double * posteriors, |
| | vl_size numClusters, |
| | vl_size numData, |
| | double const * priors, |
| | double const * means, |
| | vl_size dimension, |
| | double const * covariances, |
| | double const * data) ; |
| | |
| |
|
| | |
| | |
| | |
| | VL_EXPORT void vl_gmm_set_num_repetitions (VlGMM * self, vl_size numRepetitions) ; |
| | VL_EXPORT void vl_gmm_set_max_num_iterations (VlGMM * self, vl_size maxNumIterations) ; |
| | VL_EXPORT void vl_gmm_set_verbosity (VlGMM * self, int verbosity) ; |
| | VL_EXPORT void vl_gmm_set_initialization (VlGMM * self, VlGMMInitialization init); |
| | VL_EXPORT void vl_gmm_set_kmeans_init_object (VlGMM * self, VlKMeans * kmeans); |
| | VL_EXPORT void vl_gmm_set_covariance_lower_bounds (VlGMM * self, double const * bounds); |
| | VL_EXPORT void vl_gmm_set_covariance_lower_bound (VlGMM * self, double bound) ; |
| | |
| |
|
| | |
| | |
| | |
| | VL_EXPORT void const * vl_gmm_get_means (VlGMM const * self); |
| | VL_EXPORT void const * vl_gmm_get_covariances (VlGMM const * self); |
| | VL_EXPORT void const * vl_gmm_get_priors (VlGMM const * self); |
| | VL_EXPORT void const * vl_gmm_get_posteriors (VlGMM const * self); |
| | VL_EXPORT vl_type vl_gmm_get_data_type (VlGMM const * self); |
| | VL_EXPORT vl_size vl_gmm_get_dimension (VlGMM const * self); |
| | VL_EXPORT vl_size vl_gmm_get_num_repetitions (VlGMM const * self); |
| | VL_EXPORT vl_size vl_gmm_get_num_data (VlGMM const * self); |
| | VL_EXPORT vl_size vl_gmm_get_num_clusters (VlGMM const * self); |
| | VL_EXPORT double vl_gmm_get_loglikelihood (VlGMM const * self); |
| | VL_EXPORT int vl_gmm_get_verbosity (VlGMM const * self); |
| | VL_EXPORT vl_size vl_gmm_get_max_num_iterations (VlGMM const * self); |
| | VL_EXPORT vl_size vl_gmm_get_num_repetitions (VlGMM const * self); |
| | VL_EXPORT VlGMMInitialization vl_gmm_get_initialization (VlGMM const * self); |
| | VL_EXPORT VlKMeans * vl_gmm_get_kmeans_init_object (VlGMM const * self); |
| | VL_EXPORT double const * vl_gmm_get_covariance_lower_bounds (VlGMM const * self); |
| | |
| |
|
| | |
| | #endif |
| |
|