无偏估计协方差和运行协方差
运行协方差 (Running Covariance):
运行协方差是一种在实时数据流中估计协方差矩阵的方法。它允许在不断到达新数据点时持续更新协方差。下面是运行协方差的计算方法:
-
初始化协方差矩阵 (Cov) 和均值向量 (Mean)。
- 初始时,Cov 是一个零矩阵,Mean 是零向量。
-
当新数据点 (X) 到达时,使用以下公式更新协方差和均值:
-
更新均值 (Mean):
Mean = (Mean * N + X) / (N + 1)其中,N 是已经处理的数据点数量。
-
更新协方差 (Cov):
Cov = (Cov * N + (X - Mean) * (X - Mean)^T) / (N + 1)这里,
^T表示转置操作。
-
-
重复步骤 2,每次到达新数据点时都会更新均值和协方差。
无偏估计协方差 (Unbiased Sample Covariance):
无偏估计协方差是一种用于计算样本协方差矩阵的方法,以便获得无偏估计。它通常用于统计学和数据分析中,以估计总体协方差矩阵。下面是无偏估计协方差的计算方法:
-
初始化协方差矩阵 (Cov) 和均值向量 (Mean)。
- 初始时,Cov 是一个零矩阵,Mean 是零向量。
-
当新数据点 (X) 到达时,使用以下公式更新均值和协方差:
-
更新均值 (Mean) 同样使用以下公式:
Mean = (Mean * N + X) / (N + 1) -
更新协方差 (Cov) 以获得无偏估计:
Cov = (N / (N + 1)) * Cov + (1 / (N + 1)) * (X - Mean) * (X - Mean)^T这里,
N是已经处理的数据点数量。
-
-
重复步骤 2,每次到达新数据点时都会更新均值和协方差。无偏估计协方差的关键在于使用
(N / (N + 1))和(1 / (N + 1))权重来保证估计的无偏性。
总之,运行协方差通常用于实时数据流中,而无偏估计协方差通常用于统计学和数据分析中,以获得无偏估计。无偏估计协方差在计算中使用加权平均以确保估计的无偏性。
在我们计算里程计的协方差时,由于只需要关心短时间里程的数据,所以通常取N个数据计算它们的协方差就行,不需要取之前所有的数据,所以此时用无偏估计和运行协方差都可以。
注意在计算里程计的yaw角时,由于周期性影响,通过atan2(sin(Δθ), cos(Δθ)) 去消除。