Gaia
gaia2::ResistorAverageDistance Class Reference

This class computes the symmetric resistor-average distance of a given Region. More...

#include <resistoraveragedistance.h>

Inheritance diagram for gaia2::ResistorAverageDistance:
gaia2::DistanceFunction

Public Member Functions

 ResistorAverageDistance (const PointLayout &layout, const ParameterMap &params)
 
Real operator() (const Point &p1, const Point &p2, int seg1, int seg2) const
 This function computes the distance between the two given points. More...
 
- Public Member Functions inherited from gaia2::DistanceFunction
 DistanceFunction (const PointLayout &layout, const ParameterMap &params)
 
const PointLayoutlayout () const
 
const RegioncheckFixedLength (const Region &region) const
 Checks that the given Region only contains fixed-length descriptors and throws an exception if not. More...
 

Protected Attributes

int _meanIdx
 
int _covIdx
 
int _icovIdx
 
int _covdetIdx
 
int _meanIdxEnd
 
int _covIdxEnd
 
int _icovIdxEnd
 
- Protected Attributes inherited from gaia2::DistanceFunction
PointLayout _layout
 
ParameterMap _params
 
Region _region
 

Additional Inherited Members

- Public Attributes inherited from gaia2::DistanceFunction
QString name
 Name for the metric, usually the key that was used to instantiate it from the factory.
 
QStringList validParams
 List of valid parameters this analyzer accepts. More...
 

Detailed Description

This class computes the symmetric resistor-average distance of a given Region.

This distance is based on the harmonic mean of the Kullback-Leibler divergence. More details can be found in the "Symmetrizing the Kullback-Leibler Distance" 2001 paper by Don H. Johnson and Sinan Sinanović.

NB: compared to the Kullback-Leibler distance, this one also needs the determinant of the covariance matrix to be precomputed.

Parameters
descriptorNamethe name of the descriptor for which you want to compute the KL-distance. This descriptor needs to have 4 sub-descriptors: mean, cov, icov and covdet. (representing, resp., the mean of the frames, the covariance matrix, the inverse of the covariance matrix and the determinant of the covariance matrix).

Member Function Documentation

Real ResistorAverageDistance::operator() ( const Point p1,
const Point p2,
int  seg1,
int  seg2 
) const
virtual

This function computes the distance between the two given points.

It needs to be implemented in each subclass. It takes as optional arguments the number of the segments on which to operate.

Implements gaia2::DistanceFunction.


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