鄭昀(公眾號:老兵筆記) 20180424
2018年4月19日,Uber 公布了 GPS 優化算法,https://eng.uber.com/rethinking-gps/,針對GPS定位在城市環境中表現不佳做了修復,如可以通過衛星信號信噪比(縮寫為SNR)和3D地圖來判斷出你在馬路的左側還是右側。
如下圖3所示,GPS定位基本假設是,接收機對每個正在計算其偽距的衛星都有直接的LOS(為 line of sight 的縮寫,無線電信號的視線傳輸),在開闊地形中工作無礙,但在城市環境中則偏差較大。接收機經常需要處理建築物反射的強烈信號,這往往會導致城市峽谷中的位置誤差在50米以上。
如下圖4所示,如果某顆衛星的信號比預期弱,那么很可能被大樓擋住了,你處在大樓的陰影里面,因此可以據此修正你的位置。
怎么做呢?
第一,我們有 3D 地圖。對於城市內任何位置的接收器,我們可以校驗衛星的 LOS 是否會被遮擋。
第二,安卓手機上,LocationManager API 不僅提供了手機的位置估計,還提供每個GNSS衛星的信噪比(SNR)。
第三,使用一個在 LOS 和陰影條件下的信噪比概率分布模型,我們可以算出任何位置任何時間信號的信噪比似然估計。
第四,最終繪制出這么一張位置熱力圖,如下圖5所示:
第五,既然是一個概率模型,那根據手機上報的位置,Uber 估算出你的每一個運動點都有很多的可能性(像電子雲),並最終推演你的實際運行軌跡。如下面這張動圖所示。
-EOF-
贈圖1枚:
昨天我改了200多個BUG