本篇會介紹常用的 Localization accuracy 定位精度分析指標,包含 Accuracy, Precison, Circular error probable (CEP), Root mean squre (RMS) 以及 Distance travlled (DT) 等等,但不涉及公式討論,可以另外查詢。
先前在介紹 IMU (Inertial Measurement Unit) 時提到的誤差指標,屬於感測器的系統誤差與隨機誤差,有經驗的人能夠直接從這些參數,預估基於這些感測器計算出的位姿精度 (Pose, position and orientation)或 Localization accuracy ,但畢竟還有演算法的效能差異,這種預估只能粗略的抓個上下限。
Accuracy and Precison
首先要了解兩個名詞:Accuracy 跟 Precison。一般人可能會混用,認為兩者是一樣的,翻譯都叫做「精度」。但嚴格來說, Accuracy 是「精確度 」,而 Precison 是「精密度 」,各種不同的翻譯也有,但我個人認為這一種較能體現兩者代表的意義。
Accuracy 是絕對精度,是量測值與真值的差異程度,越接近真值,代表精確度越高,「確」有絕對的意涵。 Precison 是相對精度,是所有量測值的一致程度,所有量測值越集中,代表精密度越高,「密」有集中的意涵。
以下圖為例,量測值越接近中心代表的真值,表示 Accuracy 高,絕對精度高;所有量測值越集中,代表 Precison 高,相對精度高。標準差 (Standard Deviation) 就是一種 Precison 指標。並由此延伸共四種狀況如下。
低精確度的狀況,表示存在明顯「系統誤差」;
低精密度的狀況,表示存在明顯「隨機誤差」。
RMS and CEP
事實上,在真實世界一般真值是未知的,我們實際討論的其實是 Precison (標準差) ,一組樣本自身的離散程度。當真值已知,或母體已知,此時計算的 RMS 代表 Accuracy 。而在樣本夠大的情況下,樣本等同於或無限接近於母體,此時求取的 RMS 等於標準差,也就是所謂的「無偏」。
如上表,GNSS 在提供規格時,會提供各種定位模式下的誤差統計數據,最常用的指標是 CEP。經由單點靜態測試,透過其他更精準的測量方法,例如長時間的 RTK (Real Time Kinematic) 測量,得到該點的真值,再把 GNSS 一段時間內的定位結果與之相比,計算 DRMS 或 CEP。
如果把每一個定位點的 East error 跟 north error 當成該點的坐標,圓心處表示誤差為0,可以畫出如下的點散布圖,顯示 DRMS 跟 CEP 的意涵。
- DRMS (Distance Root Mean Squared) 是用距離 RMS 表示一個點的 2D 水平位置精度。說白了就是 X、Y 或 E、N 方向誤差的平方和開更號。
- 如前所述,樣本數夠多時,標準差 = RMS = 1 σ ,統計上是 63 – 68%。換言之,DRMS = 6m 表示 63 – 68% 的誤差小於 6 公尺。
- 2DRMS = 2 σ (Twice the DRMS, 不是 2 dimensional),統計上是 95 – 98%, DRMS = 12m 表示 95 – 98% 的誤差小於 12 公尺。
- CEP 統計上表示 50% ,CEP 5m 表示 50% 的誤差小於 5 公尺。
- R95 是 95% CEP ,R95 14.4 m 表示 95% 的誤差小於 14.4 公尺。
上述指標的機率如下表:
導航定位大廠 Novatel 一份文件有提供理論值的換算表, RMS 等於 1.2 倍的 CEP ;R95 等於 2.1 倍的 CEP 等等。當你看到不同產品使用不同指標時,就可以透過下表進行換算。該文章還有 3D 誤差的指標,但目前業界普遍還是在意平面精度,加上受限 GNSS 衛星先天分布的條件,垂直方向精度本身就比較差,這邊就不多介紹,有興趣的人再自行了解。
Proprability of DRMS and 2DRMS
GPS World 一份文件說明為什麼 DRMS 跟 2DRMS 在統計上的機率會變化 (某些文件寫 DRMS = 68%,2DRMS = 95%),造成 2DRMS 大約是 R95 的1.2倍而不是 1:1。這涉及到平面誤差在兩個互相垂直的X、Y方向上,呈現的分布型態。如果 σx 跟 σy 很接近,誤差橢圓( error ellipse )接近圓形,此時會有 98% 的誤差點散布在 2DRMS 形成的圓內;反之則是 95% 的誤差點散布在 2DRMS 的「橢圓」內。 衛星幾何分布佳時,HDOP 小,誤差橢圓會接近圓形。
DOP
這延伸出另一個 GNSS 常見指標:DOP (Dilution of precision)。共有五種:
- PDOP (Position (3D) dilution of precision)
- HDOP (Horizontal dilution of precision)
- VDOP (Vertical dilution of precision)
- TDOP (Time dilution of precision)
- GDOP (Geometric dilution of precision)
當偽距有誤差,以及衛星分布位置不同時,交會定位解的誤差範圍也會不同。 因此 DOP 精度衰減因子被用來表示衛星分布的幾何條件,數值越低代表交會幾何條件越好,誤差的散布範圍理論上越小。
簡單說,當使用多顆衛星的測距訊息計算接收機位置時,會使用偽距觀測方程建立接收機位置與鐘差 (e, n, u, dt) 和偽距 (p) 的關係,紅圈處就是所謂的設計矩陣 H ,代表接收機位置與鐘差和偽距的關聯, DOP 則基於這個關聯產生。
從矩陣對應的元素項,D11 和 D22 是對應到平面 E 跟 N,故水平精度衰減因子
HDOP = sqrt( D11 + D22 )
以此類推:
VDOP = sqrt(D33)
TDOP = sqrt(D44)
PDOP = sqrt(D11 + D22 + D33)
GDOP = sqrt(PDOP2 + TDOP2)
對應到上一段, HDOP 就表示當下時刻偽距與接收機位置的幾何關係。故可以說明誤差橢圓的情況。
Localization accuracy Distance Travlled
DT 是慣性導航 Dead-reckoning (DR) 習用的指標,機器人視覺 SLAM 領域也常用。但在組合導航領域,專門表示遭遇 GNSS outage ,沒有 GNSS 訊號時,純慣性導航的誤差。2% DT 表示每行走 100 公尺,誤差是 2 公尺。
這個誤差可以是最大誤差、 DRMS 或 CEP。舉例來說,行經一條 2 公里的隧道,計算這條軌跡的誤差 CEP 是 20 公尺,除以行走距離 2000 公尺,得到 1% DT CEP,即每 100 公尺, CEP 誤差 1公尺。所以在判斷 DT 時需要留心其使用的誤差類型,DT 數值會隨之改變。
另外 DR 的誤差漂移/累積不是線性的,因此這類規格會限定這段 outage 的時間在 120 秒內,或是總行走距離不能超過 2 公里,或是變相要求最小時速等。因為隨著時間增加,誤差會呈曲線快速暴增,如下圖是三種不同規格系統,慣性導航誤差隨時間增長的狀況。
所以在看定位相關的規格時,一定要留意 * 字號的補充說明
補充說明
最後想說的是,上面的論述,在評價一條導航定位的軌跡誤差時,依據的真值通常是由另一套更高規格的參考系統提供,參考系統必須與待測系統同時測試並記錄軌跡。再比較兩條軌跡同一時刻的定位解,計算誤差。
直接展示在 Google Map 或 Google Earth 上,以偏離道路的方式量測最大誤差,其實不是很精確,因為這個前提是 Google 的底圖是無誤差的,對吧?但事實上,這些衛星或航空攝影的照片,在經過一連串拼接跟校正後,又有多少是在真正正確的位置呢?
參考資料:
https://www.gnss.ca/app_notes/APN-029_GPS_Position_Accuracy_Measures_Application_Note.html
https://zh.wikipedia.org/zh-tw/%E7%B2%BE%E5%BA%A6%E8%A1%B0%E5%87%8F%E5%9B%A0%E5%AD%90
國立成功大學測量及空間資訊學系 江凱偉教授 資料
在〈Localization accuracy 定位精度指標 -【知識筆記】〉中有 2 則留言
留言功能已關閉。