0

GPS に基づいて距離を計算するモバイル アプリケーションを開発しています。次の hasersine 関数を使用して距離を計算しています。

var R = 6371; // Radius of the earth in km
      var dLat = deg2rad(lat2-lat1);  // deg2rad below
      var dLon = deg2rad(lon2-lon1); 
      var a = 
        Math.sin(dLat/2) * Math.sin(dLat/2) +
        Math.cos(deg2rad(lat1)) * Math.cos(deg2rad(lat2)) * 
        Math.sin(dLon/2) * Math.sin(dLon/2); 
      var c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1-a)); 
      var d = R * c; // Distance in km

私の懸念は、さまざまな位置精度値を処理する方法に関するものです。

つまり、最初に 30m の精度で位置を取得し、次に 150m の精度で位置を取得します。

より良い距離計算を行うには、距離計算でどの場所を考慮する/避ける必要がありますか? または、上記の式を使用して計算でこれらの精度の違いをどのように調整できますか?

専門家からのアドバイスを期待しています。

4

2 に答える 2

2

あなたのような既知の数式、またはスマートフォン API に組み込まれているものは、GPS 位置から次の位置までの距離計算などの短い距離に対して十分に正確です。

しかし、主なものは距離の公式ではありません。
GPS 位置をフィルタリングする必要があります。ある場所から次の場所までの距離を単純に計算するべきではありません。

そうしないと、特に低速の移動で、不正確な GPS 軌跡のジグザグ線を合計することになります。

于 2013-08-13T09:44:59.140 に答える