GPS与加速度计计算距离的区别

10

我正在尝试开发一款健身应用程序,可以在Android中跟踪跑步速度和跑步距离。

看起来我可以使用GPS或加速度计来计算这些信息。

由于跑步者可能将手机放在手上、肩上或口袋里,我的第一个直觉是使用GPS获取位置并计算跑步速度和跑步距离。但最近有人告诉我也可以使用加速度计来实现。

我的问题是:在Android中,哪种方法更适合计算跑步速度和跑步距离,GPS还是加速度计?

4个回答

7
我认为计步器基于加速度计,因为使用加速度计比使用全球定位系统(GPS)更便宜。实际上,我认为很多计步器甚至不会尝试测量距离,只测量与步伐相等的加速度冲击。然后,如果他们给出一个距离测量值,那么就是通过将检测到的步长乘以猜测或平均步长来得出的。
GPS(如果您在其工作区域内!)可以非常好地测量距离,即使使用非常便宜的GPS接收器。一切基本正常的话,您应该期望起点和终点的位置精确到10米以内,在1公里的旅程中,您有20米的不确定性,这是总距离的2%的不确定性。这种不确定性随着行驶距离的线性减小(例如,2公里的奔跑将具有1%的不确定性,4公里的奔跑将具有0.5%的不确定性等),这里的问题将出现在您的实时显示方面(GPS位置从卫星切换导致大量速度值,或立即失去信号导致所有可立即显示的数据丢失)。
我认为,用优质的加速度计,从停止开始,您可以不断积分信号以获得速度,并连续集成该结果以获得距离......我只是不确定在任何给定的电话中您会得到什么样的加速度计质量?您可能需要过滤噪声或甚至垃圾数据。您还需要考虑它的准确性。传感器的20%精度将导致非常糟糕的距离追踪。因此,您可能需要使用步数计数和步幅估算。
也许两者的结合可以起作用?
我倾向于在短时间范围内使用加速度计数据(根据始终有效的集成或步数计数)来跟踪速度和距离,然后在更长的时间范围内,可以使用广义GPS数据来纠正或缩放加速度计数据。特别是如果根据任何给定时间的不确定度测量来过滤/阻止GPS数据。

我想补充一点,GPS有时会得到奇怪的结果,例如在跑步时报告最大速度为40公里/小时,因此加速度计可能更适合测量速度。 - Gabi Purcaru
由于人们通常不是线性移动,使用GPS数据计算的距离的不确定性会更大。 - Foreever

4

补充一下Julian所说的...通常情况下GPS在室内无法使用,因此对于室内健身房来说也是如此。理论上来说,GPS信号不受云层的影响,但是我曾经在开发GPS应用程序时遇到过在极恶劣天气下GPS信号不可用的情况(这可能并不适用于您,因为没有人会在雷暴天气中慢跑:D)。 同意Julian的观点,您应该同时使用GPS和加速计来构建可靠的应用程序以适应各种条件。


是的,恶劣天气会影响GPS接收。即使是树叶也会由于多径反射而对精确RTK系统造成巨大误差。 - Julian Higginson
2
GPS的射频信号实际上在无线电频谱的噪声底部,所以GPS能够工作是非常惊人的,这是许多核心物理学家和数学家努力工作的结果。 :-) - Julian Higginson

3

2

我所知道的所有计步器都是基于加速度计的。我猜,GPS对于这个东西来说不够精确。它可能会显示“无运动”,而你却走了一些步数,它还依赖于你尝试使用它的区域。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接