如何计算移动设备上的地理定位平均速度?

时间:2016-01-30 17:51:57

标签: android ios math mobile geolocation

地理定位非常近似,特别是在建筑物中。 例如,在厚厚的混凝土墙后面,我在手机上的传感器向我显示,当设备在桌面上一动不动时,我移动到3米。

这使得在不在开放街道的区域无法进行准确的计算。

我的想法 - 我可以在20秒内制作20个地理点阵并获得平均速度,但我应该使用哪些数据?

如果我从这个数组中取出19个距离并将它们除以(lastTime-firstTime) - 我将无法获得平均速度,因为它可以"跳跃" 3米没有真正移动,所以在模糊区域的结果将完全错误。

所以,我可以在第一个和最后一个地理位置之间取一个距离并将其除以(lastTime-firstTime),但是......只有当一个人完全笔直移动时,结果才会正确。如果他连续10秒并且在那之后右转 - 距离将不是他走的真正距离 - 两个cathetuses的总和,它将是这个三角形的斜边。所以,这不是计算实际速度的方法。

我需要(我想)是一个近似拉直路线的复杂算法,它将被收集到correctedDistances的某个数组中,我们可以使用它们找到或多或少的真实速度?

如图所示 - 红色是我们从传感器获得的数据,黑色线条是一个人的近似真实路线,通过它我们可以计算或多或少忠实的速度。

enter image description here

但可能已经有为这些任务制作的现成的algorythm或公式?我不是指谷歌地图或任何其他,只是一个简单的公式或algorythm(可能有比我想象的更简单的逻辑)

0 个答案:

没有答案