SPD 流形即为由 SPD 矩阵所张成的空间,那么对于任意两个SPD矩阵 X, Y ,它们之间的距离通常可以由如下四种方式来计算:
1.仿射不变黎曼度量 (Affine Invariant Riemannian Metric):
d A 2 ( X , Y ) = ∣ ∣ log ( X − 1 2 Y X − 1 2 ) ∣ ∣ F 2 d_A^2(X,Y)=|| \log(X^{-\frac{1}{2}}Y X^{-\frac{1}{2}}) ||_F^2 dA2(X,Y)=∣∣log(X−21YX−21)∣∣F2
2. Stein散度 (Stein divergence):
d S 2 ( X , Y ) = log det ( X + Y 2 ) − 1 2 log det ( X Y ) d_S^2(X,Y)= \log \det(\frac{X+Y}{2})-\frac{1}{2}\log \det(XY) dS2(X,Y)=logdet(2X+Y)−21logdet(XY)
3. Jeffrey散度 (Jeffrey divergence):
d J 2 ( X , Y ) = 1 2 T r ( X − 1 Y ) + 1 2 T r ( Y − 1 X ) − n {d{_J^2}}(X,Y) = \frac{1}{2}Tr(X^{-1}Y) + \frac{1}{2}Tr(Y^{-1}X) - n dJ2(X,Y)=21Tr(X−1Y)+21Tr(Y−1X)−n
4.对数欧氏度量 (Log-Euclidean Metric):
d L 2 ( X , Y ) = ∥ log ( X ) − log ( Y ) ∥ F 2 {{d}{_{L}^2}}(X,Y) = {\parallel{\log\left(X\right)-\log\left(Y\right)}\parallel}{_F^2} dL2(X,Y)=∥log(X)−log(Y)∥F2
示例代码:
Github : https://github.com/Kai-Xuan/SPD-OPERATIONS/tree/master/SPD-Metrics/
百度云: https://pan.baidu.com/s/1hPvMsfafGTOnLVOVUXSIYQ 提取码:xv9k
相关推荐
1. SPD流形上均值计算: https://blog.csdn.net/u013515929/article/details/106632595/
2. SPD流形上协方差计算: https://blog.csdn.net/u013515929/article/details/106646995/
3. SPD流形上差分向量计算: https://blog.csdn.net/u013515929/article/details/106644056/
如果这个内容对于您的研究工作有帮助,我们将非常感激您可以引用我们的文章:[1,2].
[1]. Chen K X, Ren J Y, Wu X J, et al. Covariance Descriptors on a Gaussian Manifold and their Application to Image Set Classification[J]. Pattern Recognition, 2020, 107: 107463. [link]
[2]. Chen K X, Wu X J, Wang R, et al. Riemannian kernel based Nyström method for approximate infinite-dimensional covariance descriptors with application to image set classification[C]//International conference on pattern recognition (ICPR). 2018, 651-656. [link]