平滑从CoreLocation接收的数据

时间:2011-03-21 01:10:33

标签: objective-c core-location noise smoothing

我正在尝试开发一款可让您四处走动的应用,并且您可以在地图上绘制行走的地方。我把这一切都搞好了,但是我发现即使GPS位置相当准确,点数仍然会有所增加。在地图上绘制时,这会产生波浪线或曲折线。

我正在寻找有关如何平滑数据的建议/策略,以便在地图上绘制的线条更加平滑,最适合,而不是精确的点对点绘图。

1 个答案:

答案 0 :(得分:2)

您可以将许多种不同类型的平滑算法应用于数据(有几个起点,请参阅this维基百科文章)。确定哪种/适合您的应用程序的唯一方法是实现和测试它们。

简单或加权移动平均线相当普遍(采用最后的 n 样本并对它们求平均值),但存在滞后数据的问题。用于滤除信号噪声的常见滤波器是高通滤波器,其在通过较大的运动时衰减小(嘈杂)运动。 Apple在AccelerometerGraph示例中提供了一些代码。

我建议首先尝试这些,因为它们很容易实现,然后再考虑移动复杂的那些。