Androidでは位置精度はどのように測定されますか?


95

getAccuracy()によって返される精度測定値の適切な解釈を知っている人はいますか?たとえば、次のように計算されますか?

  • 循環エラーの確率(つまり、私が正しく理解していれば、50%の信頼円の半径)?

  • 95%信頼円の半径?

  • 他に何か?

さらに、実際に使用されている計算はどのくらいで、どれだけそれらに依存できますか?ロケーション推定のソース(GPSとネットワーク)に依存しますか?

あなたが私に与えることができるどんなアドバイスにも感謝します。


4
問題は、場所を取得する方法ではなく、場所クラスでのgetAccuracyの戻り値の実際の定義に関するものでした。
Janusz

回答:


67

質問の一部に答えるために、この数はthe radius of 68% confidence,、実際の位置がメートル単位の測定点の半径内にある確率が68%であることを意味しています。エラーが正規に分布していると仮定すると(ドキュメントが言うように、必ずしもそうではない)、これは1つの標準偏差であることを意味します。たとえば、Location.getAccuracy10が返された場合、デバイスの実際の位置が報告された座標から10メートル以内にある確率は68%です。

http://developer.android.com/reference/android/location/Location.html#getAccuracy()


ありがとう、カール。私は彼らがドキュメントを更新したことを知っています、それは非常に役に立ちます。これはまさに私が探していたものですが、dscheffyのポイントも重要だと思います。
John RB Palmer

@paracycleはまた、正確さはプロバイダーによって報告され、最終的には彼らが望む方法でそれを処理することを決定することができるという点も重要です。たとえば、正確な座標を入力しているため、DDMSを使用すると、精度を0.0に設定できます。
karl

11
@AidenStrydom、いいえ。精度が1000を返す場合、実際の場所が提供された場所の1000メートル以内にある可能性が68%あることを意味します。
karl 2013

精度は天候の影響を受けますか?
Juri Tichomirow、2016

@karlは、32%が10メートルを超えているという意味ですか?(例えば、11または12以上のメーター)。
david

44

バッテリー寿命が限られている場合や、建物や大きな建物が多い地域などにGPS信号がない場合は、場所を特定するのが難しい作業です。しかし、Androidを使用すると、はるかに簡単になります。場所をリクエストするときは、必要な精度を指定するだけです。

accuracy例としてを指定すると*100 meters*、Androidは位置を取得しようとし、70メートルの精度で位置を取得できる場合はそれを返しますが、Androidが100を超える精度で位置を取得できる場合メートルの場合、アプリケーションは待機し、そのような正確な場所が見つかるまで何も受信しません。

通常、Androidは最初にセルIDを取得してから、そのIDをGoogleサーバーに送信します。これにより、そのようなセルIDがマップされ、サーバーは、たとえば1000メートルと低い精度で緯度と経度を返します。このときまでに、Androidはエリア内のすべてのWiFiネットワークも確認しようとし、それらについての情報もGoogleサーバーに送信し、可能であればGoogleサーバーは、たとえば800メートルのより高い精度で新しい場所を返します。

この時点で、GPSはオンになります。GPSデバイスは、修正を取得するためにコールドスタートから少なくとも30秒を必要とするため、修正を取得できる場合は緯度と経度を返しますが、精度は100メートルの例では最高になります。GPSが長ければ長いほど、精度が高くなります。

重要なお知らせ:最初の2つの方法にはインターネット接続が必要です。データ接続がない場合は、GPSを待つ必要がありますが、デバイスが建物内にある場合は、場所を取得できない可能性があります。


14
これは、「100mの精度」が何を意味するのかという疑問を実際に解決するものではありません。
トーマス

2
@vendorでは、この情報を入手した参照を記載してください。あなたの答えはそれがどのように機能するかを理解するのに役立ちました、ありがとう。
フェアプレーヤー、

@公正なプレーヤー一部の情報はdeveloper.android.comにあり、Androidの位置情報サービスでいくつかのテストを行いました。
ベンダー、

9
100メートルの精度を指定できるAPIはどれですか。ACCURACY_COARSE、ACCURACY_FINE、ACCURACY_HIGH、ACCURACY_LOW、ACCURACY_MEDIUMの基準が表示されますが、100メートルではありません。
クリス2013

この答えは何に基づいていますか?
AlikElzin-kilaka 2016

18

getAccuracyのドキュメントには、精度をメートル単位で返すと記載されています。これは、戻り値が60の場合、指定された位置を中心とする半径60メートルの円のどこかにいることを意味すると思います。


1
私のグーグルマップと私の現在の位置を見れば、ほとんどの場合... また、私の電話が私の位置を実際の位置から約2〜3 km離れたところに表示したことも起こりました...私もこの問題に興味があります
poeschlorn

1
ありがとう。getAccuracyによって返される値はメートル単位であり、円の半径(または位置推定で高度も指定されている場合は球形)でなければならないことに同意します。しかし、それに関連する確率もあるはずです。そして、ドキュメントがその確率が何であるか、またはそれがどのように到達されるかを述べていないのは奇妙です。CEPの可能性があると誰かが提案したオンライン投稿を見たことがありますが、それは推測にすぎないと思われるので、それが95%信頼度サークルか何かであるかどうかを確認する方法を見つけたいと思います。
John RB Palmer

1
ここで質問を理解するのに有用である(しかし、それはそれを解決しない)いくつかのリンクは次のとおりです。 users.erols.com/dlwilson/gpsacc.htm groups.google.com/group/android-developers/browse_thread/thread/...
John RB Palmer

12

Androidのソースコードを一目で見る限り、これはデバイスのハードウェアと、デバイスが返すことを選択した値によって異なります。

このGpsLocationProvider.javaファイルには、ネイティブコードによって呼び出され、精度を値として渡すreportLocationメソッドがあります。したがって、少なくともフレームワークでは計算が行われていないようです。

qcom(これはQualcommだと思います)のGPS git repo hor_unc_circular、少なくとも実装がCERを使用していることを意味するように見える精度のためにパラメーターを渡しています。


4

ドキュメントで引用されているように、それが精度である場合、ユーザーの実際の位置はQUOTED_LOCATION +/- ACCURACY内のどこかにあります。したがって、精度は、ユーザーが期待できる半径を定義します。ドキュメントが言っていないことは、ユーザーが半径内にいることがどれほど確実であるかということです-標準は95%なので、私はそれを推測します。


1
質問が示すように私は自信にもっと興味があります。多くの測定値の1つである可能性がありますgpsinformation.net/main/errors.htm
Samuel

1

確率に関して明確な答えを求めていると思いますが、ここでは2つの点を検討する必要があると思います。

まず、この値に何を入れるかを決めるのはプロバイダー次第です。そのため、プロバイダーによっては、間違った推測になるかもしれません。

第2に、これを潜在的な丸めの問題と考えるとよいでしょう。私がいくつかの入力に基づいて位置を計算しようとしていて、それらの入力の一部が特定の有効桁数でしか利用できない場合、指定された有効桁数でのみ位置を計算することが可能です。

このように考えてください。「約」1プラス「約」100は何ですか。おそらく100程度です。100の精度は1のマグニチュードよりも低い可能性が高いからです。突然答えが101であると言うと、そこにはなかった精度のレベルを暗示する可能性があります。ただし、実際に精度を指定すると、100プラスまたはマイナス10プラス1プラスまたはマイナス.1は101プラスまたはマイナス10であると言えます。これは、一般に95%の信頼レベル(標準エラー)ですが、繰り返しになりますが、プロバイダーは統計情報を理解しており、単に推測しているだけではありません。


ありがとう-これはとても役に立ちます。最初の問題では、位置追跡の私のアプローチは精度推定を収集することでしたが、連続するポイント間の距離と時間を計算し、非現実的な速度を必要とするものを破棄することで「現実のチェック」を実行しました正確な精度があると報告されている場合)。他にご提案がございましたら、ぜひお聞かせください。
John RB Palmer
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.