This file is indexed.

/usr/include/vl/gmm.h is in libvlfeat-dev 0.9.20+dfsg0-1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
/** @file gmm.h
 ** @brief GMM (@ref gmm)
 ** @author David Novotny
 ** @author Andrea Vedaldi
 **/

/*
Copyright (C) 2013 David Novotny and Andrea Vedaldi.
All rights reserved.

This file is part of the VLFeat library and is made available under
the terms of the BSD license (see the COPYING file).
*/

#ifndef VL_GMM_H
#define VL_GMM_H

#include "kmeans.h"

/** @brief GMM initialization algorithms */
typedef enum _VlGMMInitialization
{
  VlGMMKMeans, /**< Initialize GMM from KMeans clustering. */
  VlGMMRand,   /**< Initialize GMM parameters by selecting points at random. */
  VlGMMCustom  /**< User specifies the initial GMM parameters. */
} VlGMMInitialization ;


#ifndef __DOXYGEN__
struct _VlGMM ;
typedef struct _VlGMM VlGMM ;
#else
/** @brief GMM quantizer */
typedef OPAQUE VlGMM ;
#endif

/** @name Create and destroy
 ** @{
 **/
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);
/** @} */

/** @name Basic data processing
 ** @{
 **/
VL_EXPORT double
vl_gmm_cluster
(VlGMM * self,
 void const * data,
 vl_size numData);
/** @} */

/** @name Fine grained data processing
 ** @{ */

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) ;
/** @} */

/** @name Set parameters
 ** @{
 **/
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) ;
/** @} */

/** @name Get parameters
 ** @{
 **/
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);
/** @} */

/* VL_GMM_H */
#endif