Gaia
|
The RCA Analyzer computes the Relevant Components Analysis of the given DataSet using the specified descriptors. More...
#include <rca.h>
Public Member Functions | |
RCA (const ParameterMap ¶ms) | |
Transformation | analyze (const DataSet *dataset, const Region ®ion) const |
![]() | |
Analyzer (const ParameterMap ¶ms) | |
virtual Transformation | analyze (const DataSet *dataset) const |
void | checkDataSet (const DataSet *dataset) const |
Checks that the given dataset is valid. More... | |
void | checkMinPoints (const DataSet *dataset, int n) const |
Checks that the given dataset as at least the specified number of points. More... | |
const Region & | checkFixedLength (const Region ®ion, const PointLayout &layout) const |
Checks that the given Region only contains fixed-length descriptors and throws an exception if not. More... | |
Static Public Member Functions | |
static QList< const PointArray * > | cleanChunklets (QList< PointArray * > &chunklets) |
static QList< const PointArray * > | getChunkletsFromMap (const QMap< QString, QString > &filename, const DataSet *inputDataSet) |
static QList< const PointArray * > | getChunkletsFromFile (const QString &filename, const DataSet *inputDataSet) |
static QList< const PointArray * > | getChunkletsFromLabel (const QString &label, const DataSet *inputDataSet) |
Protected Member Functions | |
Eigen::MatrixXd | computeCovarianceMatrix (const QList< const PointArray * > &chunklets, const Region ®ion) const |
Computes the within chunklet covariance matrix. More... | |
Eigen::MatrixXd | whitenMatrix (const Eigen::MatrixXd &cov) const |
Protected Attributes | |
QString | _resultName |
int | _targetDimension |
QString | _classFile |
QString | _className |
QMap< QString, QString > | _classMap |
![]() | |
ParameterMap | _params |
QStringList | _descriptorNames |
QStringList | _exclude |
Additional Inherited Members | |
![]() | |
QString | name |
Name for the algorithm, usually the key that was used to instantiate it from the factory. | |
QStringList | validParams |
List of valid parameters this analyzer accepts. More... | |
The RCA Analyzer computes the Relevant Components Analysis of the given DataSet using the specified descriptors.
Note: the use of classFile
, classMap
and className
is exclusive, ie: you need to specify one and only one of them.
descriptorNames | the names of the descriptors to be included in the RCA analysis. Only accepts real descriptors, can use wildcards. (default: "*"). |
except | the names of the descriptors to be removed from the selected list specified before. Can use wildcards. (default: ""). |
resultName | the name of the resulting descriptor. (default: some name constructed from 'rca', the number of dimensions, and the original descriptor names) |
dimension | the target (final) dimension. |
classFile | the name of the file containing the list of classes (chunklets in RCA language). |
classMap | the groundtruth map, from point IDs to their class value. |
className | the name of the descriptor in the PointLayout that will be used as class label. |
|
virtual |
Works exactly like the matlab algo, so it should be ok. However there's something that smells fishy to me so better check it out sometime...
Reimplemented from gaia2::Analyzer.
References gaia2::Analyzer::checkDataSet(), gaia2::Analyzer::checkFixedLength(), gaia2::Analyzer::checkMinPoints(), gaia2::covarianceMatrix(), gaia2::PointLayout::descriptorNames(), gaia2::dimensionBoost(), gaia2::formatDimensionParticipation(), gaia2::DataSet::layout(), gaia2::Region::select(), and gaia2::sortEigenVectors().
|
protected |
Computes the within chunklet covariance matrix.
The implementation follows rigorously the description from the paper, however some doubts subsist (most probably due to my ignorance):
References gaia2::covarianceMatrix(), gaia2::Region::dimension(), gaia2::Point::name(), and gaia2::DataSet::point().