我跟蹤騎手的位置(自行車騎手)並計算他每次走過的總距離。我只使用融合的位置api(沒有GPS)。有些時候我在跳躍的位置,並由於這些跳躍額外的距離被添加,從而導致整體錯誤的距離。請幫助我找到這些錯誤的緯度和經度。有什麼好的過濾器可以很容易地在Android中實現,或者有什麼好的方法可以實現嗎?在使用融合位置api的位置跳轉
回答
位置不確切。即使使用GPS,它也不是。熔融的位置可能會偏離數百米。如果你每隔幾分鐘就會站立一次,你會得到一個真正關閉的閱讀。有時我從廚房走到浴室,它認爲我走了四分之一英里。如果你看看它返回的準確性,記住你在這個距離內有2/3的機會。在這個半徑範圍內你仍然有33%的可能性。
你將不得不接受不準確。有幾個想法,你可以做,雖然
1)忽略所有更新,除非他們旅行至少一些最小距離。加入所有這些小數量會快速增加很多不準確性。 2)在接受新位置之前,需要在新位置附近至少進行2次更新。
但是,如果您使用網絡位置進行短時移動,您將遇到困難時期。
我在每30秒後請求位置更新,並在總行程中得到大約1-1.5公里的誤差。 –
我對此並不感到驚訝。 FusedProvider稱之爲「塊精度」是有原因的 - 他們期望它能在大約一個城市街區範圍內。另一方面,如果你站在一個地方,它會給你一堆或多或少的隨機點。 –
閱讀有關使用卡爾曼濾波器相同,但我不知道如何在我的Android代碼中實現這一點。如果有人幫助我用當前的緯度,經度,精度,時間來實現卡爾曼濾波器,並且在locationChanged上改變緯度和經度,那將會很棒。 –
進入設置 - >位置 - >模式。 並確保模式僅設置爲「設備」。 這將停止跳轉
對原始GPS數據的距離測量始終是嘈雜的,因爲底層數據通常不準確。這些跳躍是由於不準確的位置測量。要實現精確的距離測量,您可能需要過濾數據中的噪音。
,你可以探索一些有用的過濾技術主要有:
利用卡爾曼濾波器平滑位置數據 - 見tutorial
捕捉到的道路與谷歌地圖snap-to-roads API,或OSRM match service。
如果您正在尋找能夠提供準確位置數據和距離測量的端到端解決方案,您還可以嘗試Android或iOS的HyperTrack SDK。您可以閱讀他們如何過濾位置以提高their blog的準確性。 (聲明:我工作在HyperTrack。)
- 1. 無法停止使用融合位置API的位置更新
- 2. 無法使用Google的融合位置API獲取位置
- 3. 添加addGpsStatusListener的融合位置API
- 4. 融合的位置崩潰
- 5. 即使使用融合位置API關閉gps,如何獲取位置更新?
- 6. Android - Xamarin - 融合位置
- 7. 使用位置管理器和融合位置提供程序Api獲取位置有什麼不同?
- 8. 融合位置API - 在後臺平衡,但有時會獲得GPS位置
- 9. 我想獲得谷歌融合的位置API的準確位置?
- 10. 關於Android中的融合位置提供者獲取位置
- 11. 融合的位置返回NULL
- 12. 使用adapterview跳轉到位置
- 13. 當第一次請求位置時,Android融合位置API問題
- 14. 位置爲null融合位置提供者android
- 15. 使用android融合位置api不會在MyLocation上顯示藍點使用
- 16. Phonegap地理位置跳轉
- 17. webaudio,audiocontext跳轉到位置
- 18. 位置傳感器融合代碼
- 19. 谷歌地圖片段不移動到當前位置使用融合的位置api
- 20. CSS3跳位置
- 21. 獲取當前位置0在棉花糖中低於23 API API給出精確的當前位置使用融合位置
- 22. 獲取使用融合位置的衛星數量
- 23. 融合位置API運行時權限錯誤
- 24. 如何從融合位置api獲取衛星數量?
- 25. 融合位置提供商和「Wi-Fi和移動網絡位置」設置
- 26. 如何在onActivityResult中重新連接位置客戶端(融合位置)
- 27. 融合位置API在關閉谷歌地圖後給出高度不準確的位置
- 28. 的ImageView跳轉到開始位置
- 29. 跳轉到XSL中的內部位置
- 30. 使用位置API或電話API獲取設備位置
你做了什麼?請至少添加一段代碼。 –