インドの大手レンタカー会社向けに、Android GPS ベースの距離計算機を構築しています。アイドル状態のときに、ドライバーが閉鎖されたスペース (ショッピング モールなど) で待機したりさまよったりしているため、常に GPS ジャンプが発生しています。これにより、1 時間で全体の距離に 1 ~ 2 Km の追加が発生します。これを減らす方法は?
これが私たちのロジックです
- FusedLocationProvider onLocationChange に登録します (LocationUpdateRequest - 更新間隔 - 7 秒、つまり 7 秒ごとに場所を想定)
OnLocation 次の条件で、ノイズの多い場所のフィルタを変更します。
ステップ 1 - 精度が 170 メートル未満の位置をフィルタリングします
ステップ 2 - 速度が 40 m/s (150 KMPH に相当) を超える場合、または加速度が 4 m/s^2 (5 秒で 0-75 KMPH に相当) を超える場合実際の車がこれらの速度を超えることはめったにありませんが、GPS ジャンプは頻繁に行うため、無視してください。
ステップ 3 - ロケーションが 5 分を超えてモバイル ネットワークから来ている場合 (すなわち、方位/方位 = 0)、それらを無視し始めます。最後に、その場所が上記の条件を満たしている場合は、それらを保存して距離を段階的に計算します。
このすべての後でも、ドライバーは待ち時間中に閉鎖されたスペース (ショッピング モールなど) で待機したりさまよったりする傾向があるため、GPS ジャンプに関する問題が常に発生しています。これらのジャンプにより、1 時間で全体の距離が 1 ~ 2 Km 増加します。ノイズをフィルタリングしてデータを平滑化するにはどうすればよいですか?
誰かが提案を提供できますか? 必要に応じて、GPS ジャンプ データを共有できます。