horizo​​ntalAccuracy究竟意味着什么?

时间:2012-05-17 11:20:04

标签: objective-c ios cllocationmanager cllocation

我正在使用位置服务开发iOS应用程序。拥有实验物理学的背景知识,我想知道horizontalAccuracylocationlocationManager:didUpdateToLocation:fromLocation:的确切horizontalAccuracy代表什么。文档有点稀疏......

我假设精度给出了基于高斯(或泊松?)分布的置信区间。因此,在一定概率下,实际位置在半径为horizontalAccuracy的圆内,但也可能在该区域之外。那么问题是:这个概率有多大?如果horizontalAccuracy对应1σ,我有68%的概率在2*horizontalAccuracy的那个圆圈内,但相反,在近三分之一的情况下,实际位置将在那个区域之外。因此,在某些情况下,我宁愿使用2σ(3*horizontalAccuracy)甚至3σ(horizontalAccuracy)来计算。

简而言之:某处是否有任何迹象,哪个置信区间为{{1}}?

对所有回应“Apple称它在其中”的人发表评论: 嗯 - 测量结果不准确。它必须具有一定程度的不确定性。如果您经常重复测量,您将获得结果分布 - 可能是高斯分布。该高斯具有一定的宽度,其对应于测量的不确定性水平。更频繁地测量位置将减少不确定性,从而提高准确度,但永远不会给你一个明确的间隔,保证实际位置。你只会得到一个概率。但如果准确度是3sigma,我们有99.7% - 这是接近确定的。 简而言之 - 我怀疑Apple的文档。

5 个答案:

答案 0 :(得分:12)

我一直在寻找相同的信息,但找不到任何答案。我唯一的指针是,在Android上,他们使用的是1σ:

http://developer.android.com/reference/android/location/Location.html#getAccuracy%28%29

对于所有非信徒,这个链接也解释了准确性如何起作用。

我的猜测是,在iOS上也是如此,但没有办法确定 - 除了询问编写代码的人;)

修改

经过一些游戏并检查位置更新与物理位置之后,似乎在iOS上更有可能是3σ。有两个观察结果让我相信这是真的:

  • 在来自WiFi三角测量的Android位置通常被报告为具有20到50米之间的准确度。在iOS上,它介于65到165米之间。
  • 当测量报告位置与设备物理位置之间的距离时,到目前为止,它一直在报告的准确度范围内。

答案 1 :(得分:2)

iOS文档没有指定遏制的可能性,但是android会报告一个西格玛水平精度,他们定义这些精度来表示真实位置在圆圈内的概率为68%。

他们的解释是位置误差遵循正态分布,因此+/- one-sigma代表68%的概率。然而,68%是一维正态分布的概率。在二维中,一个西格玛误差表示一个圆内遏制的概率为39%(距离误差遵循瑞利分布,a.k.a。具有两个自由度的气体分布)。

有两种可能的解释。

  1. 圈子真正代表68%的遏制概率,在这种情况下,Android开发人员将一维sigma缩放了大约1.5倍,因此圈子恰好代表68%。在这种情况下,他们选择的68%完全是任意的。
  2. 圆圈实际上代表了39%的遏制概率。在这种情况下,如果用一维二维高斯替换一维高斯及其相关概率,它们的描述就是正确的。
  3. 我认为第二种解释更有可能。

    iOS:https://developer.apple.com/library/ios/documentation/CoreLocation/Reference/CLLocation_Class/index.html#//apple_ref/occ/instp/CLLocation/horizontalAccuracy

    Android:http://developer.android.com/reference/android/location/Location.html#getAccuracy%28%29

答案 2 :(得分:1)

表示位置的准确度。示例:如果horizo​​ntalAccuracy为0表示高精度,500表示horizo​​ntalAccuracy表示精度低。 位置服务提供商基于蜂窝,WiFi(在WiFi连接的情况下)和GPS的合并最佳值来更新位置。因此,位置值将基于覆盖范围振荡。您可以使用此horizo​​ntalAccuracy过滤它。

答案 3 :(得分:-2)

X的水平精度表示您的水平位置可以是X米关闭。记住位置可以使用GPS,手机信号塔三角测量或wifi位置数据找到。 CLLocationManager通过这3种方法为您提供最准确的位置..并且说它有可能在最远X米处关闭。

答案 4 :(得分:-3)

documentation稀疏的方式是什么?

  

位置的不确定半径,以米为单位。 (只读)

     

位置的纬度和经度标识圆的中心,此值表示该圆的半径。负值表示该位置的纬度和经度无效。

所以你的位置在圈内。它不在圆圈之外,或者半径会更大。您对置信区间的假设不正确。