PICCANTE  0.4
The hottest HDR imaging library!
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
pic::KMeans< T > Class Template Reference

#include <k_means.hpp>

Inheritance diagram for pic::KMeans< T >:
pic::KMeansRand< T >

Public Member Functions

 KMeans (uint k, uint maxIter)
 
void setup (uint k, uint maxIter=100)
 
T * Process (T *samples, int nSamples, int nDim, T *centers, std::vector< std::set< uint > *> &labels)
 

Static Public Member Functions

static T * execute (T *samples, int nSamples, int nDim, T *centers, int k, std::vector< std::set< uint > *> &labels, uint maxIter=100)
 
static T * select (T *samples, int nSamples, int nDim, std::vector< std::set< uint > *> &labels, uint &k, float threshold=1e-2f, uint maxIter=100)
 

Protected Member Functions

T * getMean (T *samples, T *out, int nDim, std::set< uint > *cluster)
 
uint assignLabel (T *sample_j, int nDim, T *centers)
 
virtual T * initCenters (T *samples, int nSamples, int nDim, T *centers)
 

Protected Attributes

uint k
 
uint maxIter
 

Constructor & Destructor Documentation

◆ KMeans()

template<class T>
pic::KMeans< T >::KMeans ( uint  k,
uint  maxIter 
)
inline

Member Function Documentation

◆ assignLabel()

template<class T>
uint pic::KMeans< T >::assignLabel ( T *  sample_j,
int  nDim,
T *  centers 
)
inlineprotected

◆ execute()

template<class T>
static T* pic::KMeans< T >::execute ( T *  samples,
int  nSamples,
int  nDim,
T *  centers,
int  k,
std::vector< std::set< uint > *> &  labels,
uint  maxIter = 100 
)
inlinestatic

◆ getMean()

template<class T>
T* pic::KMeans< T >::getMean ( T *  samples,
T *  out,
int  nDim,
std::set< uint > *  cluster 
)
inlineprotected

◆ initCenters()

template<class T>
virtual T* pic::KMeans< T >::initCenters ( T *  samples,
int  nSamples,
int  nDim,
T *  centers 
)
inlineprotectedvirtual

Reimplemented in pic::KMeansRand< T >.

◆ Process()

template<class T>
T* pic::KMeans< T >::Process ( T *  samples,
int  nSamples,
int  nDim,
T *  centers,
std::vector< std::set< uint > *> &  labels 
)
inline

◆ select()

template<class T>
static T* pic::KMeans< T >::select ( T *  samples,
int  nSamples,
int  nDim,
std::vector< std::set< uint > *> &  labels,
uint k,
float  threshold = 1e-2f,
uint  maxIter = 100 
)
inlinestatic

◆ setup()

template<class T>
void pic::KMeans< T >::setup ( uint  k,
uint  maxIter = 100 
)
inline

Member Data Documentation

◆ k

template<class T>
uint pic::KMeans< T >::k
protected

◆ maxIter

template<class T>
uint pic::KMeans< T >::maxIter
protected

The documentation for this class was generated from the following file: