tho*_*mas 7 math projection coordinate-systems kalman-filter
我目前正在研究用于GPS导航的简单小型卡尔曼滤波器.我从GPS传感器获取当前位置,航向角和速度.因此,卡尔曼滤波器应融合当前测量值和从前一位置开始的线性运动,假设速度和航向角恒定.
我的问题是选择一个有用的空间,卡尔曼滤波器能够以良好的方式执行.
局部坐标系方法:
如果我选择一个本地坐标系(北[米],东[米]),并且先前的位置在原点,我将能够轻松预测新位置,但如何将新测量(纬度/经度)转换为我的本地坐标系统使用wgs-84椭圆体?以及如何使用wgs-84椭圆体将我在本地坐标系中的新预测转换为纬度/经度?
所以我需要两个功能:
f:=(lat_ref,lng_ref,lat,lng) - >(x,y)
g:=(lat_ref,lng_ref,x,y) - >(lat,lng)(这也可以使用Vincenty完成)
全球坐标系方法:
我找到了Vincenty算法,它根据任何椭圆体上的参考位置,距离和路线角度计算新位置.这个算法工作正常但我没有看到如何在kalman滤波器中使用这个算法,该滤波器在全局坐标系中工作.
有什么想法或建议如何解决我的一个问题?
I've worked through many scientific papers and found the answer on wikipedia
The main trick is to convert latitude/longitude/height (llh) to earth-centered-earth-fixed (ecef) and then to my local coordinate system earth/north/up (enu) and vice versa.
I found some other interesting links to this topic.