web-dev-qa-db-ja.com

GPS座標から平均速度を計算するためのベストプラクティス

私はここにGPS座標を与えることができるデバイスを持っています。定義できる時間間隔。運転中や車での移動中の平均速度を計算するために使用したいと思います。実際、私は正統式を使用して2点間の距離を計算し、それを指定された時間間隔で除算しました。実装によって私は この用語 に従いました。残念ながら、私はドイツ語のリンクしか見つけることができませんでしたが、式はどの言語でも理解できるはずだと思います;)

残念ながら、この式と1秒の時間間隔を使用すると、非常に不正確な結果が得られます。歩行中の速度は1km/hから20km/hの間です。

それで、2つのGPS座標(SOで似たようなものを見つけました)間の距離計算を実装する方法に関する一般的なリファレンスがありますか?特に、GPS座標を更新するのに最適な時間間隔はどれですか?

20

GPSの位置を1秒に1回測定しながら、一定の速度(5 km/hまでが通常の歩行速度だと思います)で歩くことによってこれをテストしていると思います。

瞬間速度(各測定ポイント間の距離を1秒で割った値)に見られる変動は、測定されたGPS位置のランダムな変動によるものか、測定を行っていないためです正確に1秒間隔(またはこれらの両方である可能性があります)。

私はあなたの測定値が正確に1秒間隔で行われていると仮定します。ハンドヘルドGPSデバイスは、宣伝されているよりもはるかに精度が低くなります。デバイスは実際の位置から10フィート以内の精度であるとよく言われますが、そうではありません。

GPSデバイスの精度を測定して報告する最良の方法は、衛星を見ることができ、雨が降らない場所にGPSデバイスを置き、数日分のデータを記録することです。次に、Googleマップを使用してポイントをプロットできます。これは、家の周りとオフィスの周りで行いました。これは、スケール感を与える良い方法です。

明らかに、デバイスが完全に正確であれば、すべての測定ポイントが1か所に表示されます。または、10フィートの精度が当てはまる場合は、直径20フィートの円の内側に小さなクラスター内のすべてのポイントが表示されます。

代わりに(私がこれまでにテストしたすべてのGPS対応デバイスで)表示されるのは、数秒のスケールで発生する比較的小さな位置散乱(数十フィートのオーダー)と、より長期間の組み合わせです。 1日か2日の間に200フィートまたは300フィート移動する可能性のある平均位置の「ランダムウォーク」。たとえば、自分の家の上にプロットすると、PDAが隣の家に行き、次に通りを横切って、通りを2つの家を通り、あなたに向かって戻ってきたように見えます。あちこちで5フィートか10フィートくらい揺れている間、コーヒーを飲みすぎたようです。

GPSはこれよりも正確です。測量士は、はるかに強力な受信機セットを備えたデバイスを使用し(したがって、衛星信号をより正確に読み取ることができます)、連続する測定値を平均化するために、一度に数日間そのままにしておきます。ハンドヘルドデバイスは安価な受信機チップと安価なアンテナを備えており、とにかくあらゆる種類の信号干渉に対処する必要があります。

最善の策は、移動平均を実行して瞬間速度を計算することです。現在のポイントと前のポイントの間の距離を1秒で割る代わりに、ポイント間の最後の5つの距離を取り、5秒(または使用する秒数)で割ります。現在のポイントと5秒前のポイントの差をとって、この距離を5で割らないようにすることが重要です。これにより、非線形の動きが失われます。

更新:コメントでAndroidデバイスを使用していることに気づきました。GPS受信機が内蔵されているかどうか知っていますか?多く(ほとんど?) Androidデバイスはそうではありません。つまり、それらのGPSはGPSの三角測量バージョンではなく、信号に基づいた推測です。 -from-the-cell-towersバージョン。これははるかに位置的に正確ではありません。私の説明の卑劣さからわかると思います。 :)

23
MusiGenesis

GPSシステムは、位置を補間することなく、瞬間速度を直接生成できます。速度の読み取りは実際には位置の読み取りよりも正確であるとどこかで読みました。どのデバイス/システム/ OSを使用していますか?

Androidでは、LocationListener実装でAndroid.location.Location.getSpeed()メソッドを(hasSpeed()とともに)試してください。

11
Marcelo Cantos

グーグルでGPSSPEED ACCURACYを検索すると、位置対時間から計算された速度は、GPS受信機から直接出力される速度パラメーターを使用する場合よりも10倍悪いというレポートが見つかります。速度パラメータは位置精度に依存しませんが、衛星信号からのドップラー(速度/周波数差)から計算されます。

幸運を

6
Urban Holmdahl