歩行速度に基づいて2つのGPS位置間を補間します

transporter_room_3

問題:


与えられた2つの場所:

L 1 =(緯度1、経度1、タイムスタンプ1L 2 =(緯度2、経度2、タイムスタンプ2

構成可能であるが一定の移動速度:

v = 1.39メートル/秒(たとえば)。

どのように我々は彼がから移動するユーザの位置を推定するために、これらの2つの場所の間を補間することができますL 1L 2


私はこの問題の解決策を探していましたが、これまでのところ、(極から離れた)短い距離では線形補間を使用できることがわかりました。だから、私はウィキペディアで線形補間を調べて、これを見つけました:

// Imprecise method which does not guarantee v = v1 when t = 1,
// due to floating-point arithmetic error.
float lerp(float v0, float v1, float t) {
    return v0 + t*(v1-v0);
}

私は間を補間緯度と経度このlerp関数を使用して考えていますので、L 1及びL 2それは簡単な部分でした。tを計算するにはどうすればよいですか?いくつかの時間デルタを計算する必要があると思いますが、移動速度をどのように考慮しますか?


編集:

GPSの位置を収集するためのさまざまな方法をテストしています。この目的のために、私は散歩中のウェイポイントの場所を記録しています。歩行に沿った位置を推定するには、移動速度を使用してこれらのウェイポイント間を補間する必要があります。次に、結果を見積もりと比較して、それらがどれだけうまく機能しているかを確認できます。

例:

地図

AlexWien

いくつかの時間デルタを計算する必要があると思いますが、移動速度をどのように考慮しますか?

線形補間では、ケースムで、開始時刻t1から終了時刻t2まで実行される反復変数tを使用して、事前定義されたステップで2つの時点間を反復します。ステップ= 1秒と仮定します。これは、アプリケーションに非常に役立ちます。

long t1 = location1.getTimeStamp(); // in milliseconds;
long t2 = location2.getTimeStamp();
double deltaLat = location2.latitude - location1.latitude;
doule deltaLon =  location2.longitude- location1.longtude;
// remove this line if you don't have measured speed:
double deltaSpeed =  location2.speed - location1.speed;

long step = 1 * 1000; // 1 second in millis 
for (long t = t1; t1 < t2; t+= step) {

   // t0_1 shall run from 0.0 to (nearly) 1.0 in that loop
  double t0_1 = (t - t1) / (t2 - t1);
  double latInter = lat1 + deltaLat  * t0_1;
  double lonInter = lon1 + deltaLon  * t0_1;
  // remove the line below if you dont have speed
  double speedInter = speed1 + deltaSpeed  * t0_1;
  Location interPolLocation = new Location(latInter, lonInter, speedInter);
  // add interPolLocation to list or plot.
}

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

歩行速度に基づいて2つのGPS位置間を補間します

分類Dev

パーセンテージ値に基づいて2つの色の間を補間します

分類Dev

パーセンテージに基づいて、ある速度から別の速度に線形補間します

分類Dev

列名に基づいて2つの列間の相関を計算します

分類Dev

カメラの位置に基づいて、2つの原点間の平行移動を見つけます

分類Dev

ボートの速度と最後の捕獲時間に基づいて、魚の位置が間違っているかどうかを判断します

分類Dev

時間の粒度に基づいて2つのデータフレーム間で値を転送します

分類Dev

HiveQL-条件に基づいて2つの行間の時間差を計算します

分類Dev

パンダは異なる列に基づいてNaNを補間します

分類Dev

icCube-最小値と最大値に基づいてRGBColorsを補間しますか?

分類Dev

mysqlは、2つの列に基づいて2つの日付の間の行を取得します

分類Dev

mysqlは、2つの列に基づいて2つの日付の間の行を取得します

分類Dev

DataFrame列を補間し、PySparkまたはPandasの別の列に基づいて並べ替えます

分類Dev

2つのパンダDataFrame間の条件に基づいて、新しい列に値を割り当てます

分類Dev

VBA は、2 つの基準に基づいて行間の行をカウントします

分類Dev

パンダの3番目の列に基づいて2つの列の間の値を保持します

分類Dev

属性条件に基づいて2つのノードの間にノードを挿入しますか?

分類Dev

他のソースからのデータの時間頻度に基づいて1時間ごとのデータを補間します

分類Dev

2つの列間の関係に基づいて一意のIDを作成します

分類Dev

パンダの2つの列間の一致に基づいて値を検索します

分類Dev

sql Alter table:2つの列の間のdatediffに基づいて列を作成します

分類Dev

パーセンテージに基づいて2つの座標間の点を計算します(球形)

分類Dev

パーセンテージに基づいて2つの座標間の点を計算します(球形)

分類Dev

2つのデータフレーム間の比較一致に基づいて列を作成します

分類Dev

Pyspark-時間と場所に基づいてグループ内の平均速度を計算します

分類Dev

多数のxyポイントのセットに基づいて2D配列から補間値を抽出します

分類Dev

rの複数の条件に基づいて補間する

分類Dev

2つの期間の結果の確率を示す2つの別々の行列に基づいて、確率を示す配列を作成します

分類Dev

TSQL - 2 番目のテーブルの 2 つの int 間の値に基づいて更新します。

Related 関連記事

  1. 1

    歩行速度に基づいて2つのGPS位置間を補間します

  2. 2

    パーセンテージ値に基づいて2つの色の間を補間します

  3. 3

    パーセンテージに基づいて、ある速度から別の速度に線形補間します

  4. 4

    列名に基づいて2つの列間の相関を計算します

  5. 5

    カメラの位置に基づいて、2つの原点間の平行移動を見つけます

  6. 6

    ボートの速度と最後の捕獲時間に基づいて、魚の位置が間違っているかどうかを判断します

  7. 7

    時間の粒度に基づいて2つのデータフレーム間で値を転送します

  8. 8

    HiveQL-条件に基づいて2つの行間の時間差を計算します

  9. 9

    パンダは異なる列に基づいてNaNを補間します

  10. 10

    icCube-最小値と最大値に基づいてRGBColorsを補間しますか?

  11. 11

    mysqlは、2つの列に基づいて2つの日付の間の行を取得します

  12. 12

    mysqlは、2つの列に基づいて2つの日付の間の行を取得します

  13. 13

    DataFrame列を補間し、PySparkまたはPandasの別の列に基づいて並べ替えます

  14. 14

    2つのパンダDataFrame間の条件に基づいて、新しい列に値を割り当てます

  15. 15

    VBA は、2 つの基準に基づいて行間の行をカウントします

  16. 16

    パンダの3番目の列に基づいて2つの列の間の値を保持します

  17. 17

    属性条件に基づいて2つのノードの間にノードを挿入しますか?

  18. 18

    他のソースからのデータの時間頻度に基づいて1時間ごとのデータを補間します

  19. 19

    2つの列間の関係に基づいて一意のIDを作成します

  20. 20

    パンダの2つの列間の一致に基づいて値を検索します

  21. 21

    sql Alter table:2つの列の間のdatediffに基づいて列を作成します

  22. 22

    パーセンテージに基づいて2つの座標間の点を計算します(球形)

  23. 23

    パーセンテージに基づいて2つの座標間の点を計算します(球形)

  24. 24

    2つのデータフレーム間の比較一致に基づいて列を作成します

  25. 25

    Pyspark-時間と場所に基づいてグループ内の平均速度を計算します

  26. 26

    多数のxyポイントのセットに基づいて2D配列から補間値を抽出します

  27. 27

    rの複数の条件に基づいて補間する

  28. 28

    2つの期間の結果の確率を示す2つの別々の行列に基づいて、確率を示す配列を作成します

  29. 29

    TSQL - 2 番目のテーブルの 2 つの int 間の値に基づいて更新します。

ホットタグ

アーカイブ