从极坐标到笛卡尔坐标的方差矩阵

时间:2013-05-16 11:14:41

标签: r math sta

我正在处理极坐标中的时间序列,我正在应用卡尔曼滤波器进行预测。时间序列与卫星轨道有关。

然而,我对方差的预测和估计用极坐标[r,theta]表示。

我知道如何使用函数

转换笛卡尔坐标系中的预测
  f(r,theta) <- [r*cos(theta),r*sin(theta)].

但我不知道如何处理方差,因为它不是线性算子。

如果您可以帮我改造,我会按顺序提供您的数据:

     Radius                  Angle        
[1,] "39805.9613778309" "1.46134492279737"
[2,] "39805.9613778309" "1.48689546833425"
[3,] "39805.9613778309" "1.51244601387112"
[4,] "39805.9613778309" "1.537996559408"  
[5,] "39805.9613778309" "1.56354710494488"
[6,] "39805.9613778309" "1.58909765048176"

第一次预测的方差矩阵是:

        radius    theta
[1,] 5132782 0.000000000
[2,]       0 0.001646994

我想知道如何在笛卡尔坐标系中获得第一个预测的矩阵。谢谢!

3 个答案:

答案 0 :(得分:3)

这让我感到困惑。我想我找到了答案:上面提供的公式,

errorprop

遵循最常见的错误传播形式。如果您可以做出一些假设,那么公式是正确的,特别是您可以线性化转换。

https://en.wikipedia.org/wiki/Propagation_of_uncertainty#Non-linear_combinations。本节有一个小节,“警告和警告”,我认为值得以开放的心态接近(所以你最终没有偏见:P)。

答案 1 :(得分:1)

在开发雷达系统的跟踪滤波器时,我使用了以下技术:

1)确定笛卡尔旋转矩阵的极坐标为

  R = [cos(theta)  - sin(theta);
       sin(theta)    cos(theta)]

2)执行以下矩阵乘法以获得笛卡尔坐标中的协方差矩阵,Pcart:

  Pcart = R*Ppol*R'

  where Ppol is the covariance matrix in polar coordinates
        R' is the transpose of R

答案 2 :(得分:0)

实现此目的的最佳方法是找到函数Fhat = Jacobian [f(r,theta)]的雅可比行列式。如果球面中的方差矩阵是R(极坐标),那么P(Cart)= Fhat * R * Fhat'。使用旋转矩阵会给出错误的答案,因为它只是将笛卡尔协方差旋转到另一个“旋转”的笛卡尔系统中。请参阅我的“贝叶斯估计和跟踪:实用指南”一书中的附录18.B,以获得该公式的完整推导以及如何使用它。