前两日在路边走,突然想试用一下手机上新装的某款导航系统。其他细节就不表了,这里讲下当时对其定位能力的感受:
打开系统后,在直线道路上行走时,其定位的精度越来越高,即那个表示自己位置的圆圈越来越小,而且旁边配有数字,最小能达到2m,从地图标识和实际的场景来看,这个数据基本可信。这不仅让我感叹其定位能之强,也让我怀疑自己对GPS定位的认识。 但是好景也不长,当我在小区内穿行,拐弯抹角时,定位效果开始变差,圆圈不断放大,当我走到楼道旁边,甚至出现了定位跳动的现象,定位的位置距我真实位置甩出几条街来。(PS: 我的手机是在关闭WLAN或移动网络辅助定位的功能下进行的)
在此过程中,我有两个问题:
1. 导航中,那个圆圈的大小是如何确定的?或者说有些导航上,圆圈边上配的表示精度的数据是如何计算到的?
根据常识,圆圈的半径即为定位的精度大小。而一般GPS接收器计算出的原始数据,约有10米开外的误差,这个误差的因素包含无线电波传播,天气状况,接收卫星个数,地面障碍物。其中单频无线电波的传输误差就达到10米,加上其他的因素的影响,一般这个定位精度是无法测量的,那么一般导航或地图上的那个可变的圆圈是如何获取的那?
一般的定位系统都不会直接输出GPS原始数据,而是经过一个模型,校正以后,再输出,这个模型就是kalmanfilter卡曼滤波器。既然真实值无法获取,那就根据上一时刻的最优估计值,加上本时刻的测量值,来计算出一个本时刻的最优估计值。这