CLLocation飞行中高度属性的有效性

时间:2018-08-24 11:37:00

标签: ios iphone gps cllocationmanager altitude

我了解海平面以下为负,+以上为正的概念,可以通过垂直精度检查此值的合理性。

我对一次飞行中的GPS数据感兴趣。 altitude的最大值或近似最大值是多少,以便我可以将“飞行”与公路旅行区分开来。

我知道我可以查询速度,但是速度本身并不能解决目的。

1 个答案:

答案 0 :(得分:1)

从GPS高度确定飞行的正确方法是在数据库中查找当前位置的地面海拔(纬度/经度)。如果GPS高度更大,则用户在飞行中(或在较高的建筑物中)。

这需要一个非常大的数据库,但是数据可用。对于大多数应用而言,这可能不切实际。查找DEM数据(数字高程模型)数据库,例如SRTM,ASTER(请参见here

另一种方法是检测起飞。如果您只对喷气式飞机感兴趣,则需要检测从<10节到> 100节的直线加速度,然后,如果GPS高度爬升> 1000 fpm,则很可能是在飞机起飞中(尽管大多数螺旋桨飞机也可以> 1000fpm爬升)。

检测各种飞行(飞艇,热气球,轻型飞机)变得更加困难。尽管可以通过各种启发式方法来区分飞机和汽车在山上,但很难区分。区分热气球与高层建筑,低水平运动以及两种情况的海拔都高于地面也很困难。

相关问题