Python 用pykalman去除跳跃GPS数据

Python 用pykalman去除跳跃GPS数据,python,matplotlib,gps,pykalman,Python,Matplotlib,Gps,Pykalman,我有从智能手机应用程序获取的gps数据。 只要智能手机静止不动,gps点就会跳动。 据我所知,信号不准确,因为在城市建筑物之间接收信号,并且在室内信号丢失 从这一点上,我想尝试一下卡尔曼滤波器。 由于这一点,我能够在纬度和经度上试用Ramer-Douglas-Peucker算法,并在高程数据上试用。 我也尝试过使用过滤器 根据这些读数,我假设输入参数错误: measurements = numpy.column_stack([longitude_list, latitude_list]) # F

我有从智能手机应用程序获取的gps数据。 只要智能手机静止不动,gps点就会跳动。 据我所知,信号不准确,因为在城市建筑物之间接收信号,并且在室内信号丢失

从这一点上,我想尝试一下卡尔曼滤波器。 由于这一点,我能够在纬度和经度上试用Ramer-Douglas-Peucker算法,并在高程数据上试用。 我也尝试过使用过滤器

根据这些读数,我假设输入参数错误:

measurements = numpy.column_stack([longitude_list, latitude_list])
# F_k : state transition matrix
F = numpy.array([ [1, 0],
                  [0, 1] ])

# H_k : the observation matrix
H = numpy.array([ [1, 0],
                  [0, 1] ])

# R : covariance R of delta_k observation noise N(0, R)
R = numpy.diag([1e-4, 1e-4])

kf = kf.em(measurements, n_iter=100)
(filtered_state_means, filtered_state_covariances) = kf.filter(measurements)
(smoothed_state_means, smoothed_state_covariances) = kf.smooth(measurements)
下图来自matplotlib。左上角是迭代km.em(n_iter=2),右上角是迭代10,左下角是迭代50,右下角是迭代100。每当我尝试更高,我都有一个超时。我的过滤器似乎对这个案子没什么作用。实际上,输出的是相同的形状(由于缩放轴的原因,一开始看起来可能会有所不同)

我错过什么了吗? 如何改进我的静止gps跳跃数据


谢谢

这里有一个GIS交换。那里有很多python用户。哦,谢谢你,我不知道。我可能有我的答案。你找到这个问题的解决方案了吗?