@Alias(value="chi") @Priority(value=100) @Reference(authors="J. Puzicha, J. M. Buhmann, Y. Rubner, C. Tomasi",title="Empirical evaluation of dissimilarity measures for color and texture",booktitle="Proc. 7th IEEE International Conference on Computer Vision",url="https://doi.org/10.1109/ICCV.1999.790412",bibkey="DBLP:conf/iccv/PuzichaRTB99") @Reference(authors="D. M. Endres, J. E. Schindelin",title="A new metric for probability distributions",booktitle="IEEE Transactions on Information Theory, 49(7)",url="https://doi.org/10.1109/TIT.2003.813506",bibkey="DBLP:journals/tit/EndresS03") public class ChiDistanceFunction extends ChiSquaredDistanceFunction
ChiSquaredDistanceFunction
, and can
serve as a fast approximation to
SqrtJensenShannonDivergenceDistanceFunction
.
This implementation assumes \(\sum_i x_i=\sum_i y_i\), and is defined as: \[ \chi(\vec{x},\vec{y}):= \sqrt{2 \sum\nolimits_i \tfrac{(x_i-x_i)^2}{x_i+y_i}} \]
Reference:
J. Puzicha, J. M. Buhmann, Y. Rubner, C. Tomasi
Empirical evaluation of dissimilarity measures for color and texture
Proc. 7th IEEE International Conference on Computer Vision
D. M. Endres, J. E. Schindelin
A new metric for probability distributions
IEEE Transactions on Information Theory, 49(7)
Modifier and Type | Class and Description |
---|---|
static class |
ChiDistanceFunction.Parameterizer
Parameterization class, using the static instance.
|
Modifier and Type | Field and Description |
---|---|
static ChiDistanceFunction |
STATIC
Static instance.
|
Constructor and Description |
---|
ChiDistanceFunction()
Deprecated.
Use static instance!
|
Modifier and Type | Method and Description |
---|---|
double |
distance(NumberVector v1,
NumberVector v2)
Computes the distance between two given DatabaseObjects according to this
distance function.
|
boolean |
isMetric()
Is this distance function metric (satisfy the triangle inequality)
|
boolean |
isSquared()
Squared distances, that would become metric after square root.
|
double |
minDist(SpatialComparable mbr1,
SpatialComparable mbr2)
Computes the distance between the two given MBRs according to this distance
function.
|
java.lang.String |
toString() |
equals, getInputTypeRestriction, hashCode
dimensionality, dimensionality, dimensionality, dimensionality, dimensionality, dimensionality, dimensionality, dimensionality
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
instantiate
isSymmetric
public static final ChiDistanceFunction STATIC
@Deprecated public ChiDistanceFunction()
public double distance(NumberVector v1, NumberVector v2)
PrimitiveDistanceFunction
distance
in interface NumberVectorDistanceFunction<NumberVector>
distance
in interface PrimitiveDistanceFunction<NumberVector>
distance
in class ChiSquaredDistanceFunction
v1
- first DatabaseObjectv2
- second DatabaseObjectpublic double minDist(SpatialComparable mbr1, SpatialComparable mbr2)
SpatialPrimitiveDistanceFunction
minDist
in interface SpatialPrimitiveDistanceFunction<NumberVector>
minDist
in class ChiSquaredDistanceFunction
mbr1
- the first MBR objectmbr2
- the second MBR objectpublic boolean isMetric()
DistanceFunction
true
when metric.public boolean isSquared()
DistanceFunction
isSquared
in interface DistanceFunction<NumberVector>
isSquared
in class ChiSquaredDistanceFunction
true
when squared.public java.lang.String toString()
toString
in class ChiSquaredDistanceFunction
Copyright © 2019 ELKI Development Team. License information.