![]() |
IPSDK
4_1_0_2
IPSDK : Image Processing Software Development Kit
|
Public Types | |
| typedef KernelKMeansClusteringConfig | AlgorithmConfig |
| algorithm configuration | |
| typedef KernelKMeansClustering< KernelType > | ClusteringAlgorithm |
| clustering algorithm type | |
| typedef boost::shared_ptr< ClusteringAlgorithm > | ClusteringAlgorithmPtr |
| shared pointer to clustering algorithm | |
Public Member Functions | |
| const KernelType & | getKernel () const |
| retrieve kernel associated to object | |
| void | clear () |
| clear of processing results | |
Constructors and destructor | |
| SpectralClustering (const KernelType &kernel) | |
| ~SpectralClustering () | |
| const AlgorithmConfig & | getConfig () const |
| access to algorithm configuration | |
| void | setConfig (const AlgorithmConfig &config) |
| access to algorithm configuration | |
Algorithm computation | |
| bool | isClusteringDone () const |
| check whether a computation has been done | |
| bool | compute (const ipUInt32 nbClusters, const VectorColl &inputDataColl) |
| proceed to data clustering More... | |
Algorithm results | |
| ipUInt32 | getNbClusters () const |
| retrieve number of clusters associated to clustering process More... | |
| ipUInt32 | getDataSize () const |
| retrieve data size associated to input data collection More... | |
| ipUInt32 | getNbInputData () const |
| retrieve number of data in input data collection More... | |
| const VectorColl & | getInputDataColl () const |
| retrieve used input data collection More... | |
| ipUInt32 | getNbFailedAttempts () const |
| retrieve number of failed attempts More... | |
| ipReal64 | getSeparation () const |
| get separation associated to clustering result More... | |
| ipUInt32 | getNbIteration () const |
| retrieve number of iterations associated to selected clustering solution More... | |
| ipUInt32 | getClusterPopulation (const ipUInt32 clusterIdx) const |
| retrieve number of data associated to a given cluster More... | |
| const UInt32Vector & | getAssignments () const |
| retrieve cluster index associated to each input data More... | |
| const Vector & | getEigenValues () const |
| retrieve eigen values associated to spectral clustering More... | |
| const Matrix & | getEigenVectors () const |
| retrieve eigen vectors associated to spectral clustering More... | |
| ipUInt32 | computeAssignment (const Vector &data) const |
| function allowing to compute cluster assignment for a given data More... | |
| const ClusteringAlgorithm & | getClusteringAlgorithm () const |
| retrieve underlying used clustering algorithm | |
Protected Attributes | |
| ClusteringAlgorithmPtr | _pClusteringAlgorithm |
| underlying clustering algorithm | |
| VectorColl | _inputDataColl |
| input data collection | |
| UInt32Vector | _assignments |
| cluster index associated to each input data | |
| Vector | _eigenValues |
| eigen values associated to eigen problem resolution | |
| Matrix | _eigenVectors |
| eigen vectors associated to eigen problem resolution | |
| bool ipsdk::math::clustering::SpectralClustering< KernelType >::compute | ( | const ipUInt32 | nbClusters, |
| const VectorColl & | inputDataColl | ||
| ) |
proceed to data clustering
getNbAttempts() of K-Means++ algorithm will be used to initialize K-Means algorithm.
For a given attempt, if process reach maximum number of iterations (getConfig().getNbMaxIteration()) before that clusters centers stabilization is reached, current attempt is considered as failed
If none of the getNbAttempts() succeed, algorithm is considered on failure
On output clusters are sorted in decreasing population order
| nbClusters | number of searched clusters |
| inputDataColl | collection of observations |
| ipsdk::math::IPSDKMathException | if nbClusters == 0 |
| ipsdk::math::IPSDKMathException | if nbClusters > inputDataColl.size() |
| ipUInt32 ipsdk::math::clustering::SpectralClustering< KernelType >::getNbClusters | ( | ) | const |
retrieve number of clusters associated to clustering process
| ipsdk::math::IPSDKMathException | if isClusteringDone() == false |
| ipUInt32 ipsdk::math::clustering::SpectralClustering< KernelType >::getDataSize | ( | ) | const |
retrieve data size associated to input data collection
| ipsdk::math::IPSDKMathException | if isClusteringDone() == false |
| ipUInt32 ipsdk::math::clustering::SpectralClustering< KernelType >::getNbInputData | ( | ) | const |
retrieve number of data in input data collection
| ipsdk::math::IPSDKMathException | if isClusteringDone() == false |
| const VectorColl& ipsdk::math::clustering::SpectralClustering< KernelType >::getInputDataColl | ( | ) | const |
retrieve used input data collection
| ipsdk::math::IPSDKMathException | if isClusteringDone() == false |
| ipUInt32 ipsdk::math::clustering::SpectralClustering< KernelType >::getNbFailedAttempts | ( | ) | const |
retrieve number of failed attempts
| ipsdk::math::IPSDKMathException | if isClusteringDone() == false |
| ipReal64 ipsdk::math::clustering::SpectralClustering< KernelType >::getSeparation | ( | ) | const |
get separation associated to clustering result
separation is defined as the Dunn validity index
| ipsdk::math::IPSDKMathException | if isClusteringDone() == false |
| ipUInt32 ipsdk::math::clustering::SpectralClustering< KernelType >::getNbIteration | ( | ) | const |
retrieve number of iterations associated to selected clustering solution
| ipsdk::math::IPSDKMathException | if isClusteringDone() == false |
| ipUInt32 ipsdk::math::clustering::SpectralClustering< KernelType >::getClusterPopulation | ( | const ipUInt32 | clusterIdx | ) | const |
retrieve number of data associated to a given cluster
| ipsdk::math::IPSDKMathException | if clusterIdx >= getNbClusters() |
| const UInt32Vector& ipsdk::math::clustering::SpectralClustering< KernelType >::getAssignments | ( | ) | const |
retrieve cluster index associated to each input data
| ipsdk::math::IPSDKMathException | if isClusteringDone() == false |
| const Vector& ipsdk::math::clustering::SpectralClustering< KernelType >::getEigenValues | ( | ) | const |
retrieve eigen values associated to spectral clustering
| ipsdk::math::IPSDKMathException | if isClusteringDone() == false |
| const Matrix& ipsdk::math::clustering::SpectralClustering< KernelType >::getEigenVectors | ( | ) | const |
retrieve eigen vectors associated to spectral clustering
| ipsdk::math::IPSDKMathException | if isClusteringDone() == false |
| ipUInt32 ipsdk::math::clustering::SpectralClustering< KernelType >::computeAssignment | ( | const Vector & | data | ) | const |
function allowing to compute cluster assignment for a given data
| ipsdk::math::IPSDKMathException | if isClusteringDone() == false |
1.8.14