• 沒有找到結果。

視覺定位offline實驗

在文檔中 中 華 大 學 (頁 67-71)

第七章、 實驗與分析

7.3 視覺定位offline實驗

本實驗一開始先進行複合式地圖 (training data)與視覺定位測詴(testing data)的資 料蒐集,並且利用此兩組資料來進行視覺定位的驗證實驗,接下來再針對機器人位置 與角度的粒子加入不同程度的偏差值,觀察是否偏差程度越大的粒子其計算出來的定 位誤差也是越大,以確定定位誤差值的合理性。實驗所使用的系統包含電腦規格為 CPU 2.0 GHz,2GB 的 RAM,且雷射機型號為 SICK LMS200,odometer 的 encoder 為(500ppr / TTL Type)。

 實驗資料蒐集:

(1). 收集建構複合式地圖所需的訓練資料(training data),其中包含雷射機掃瞄點、

odometer 與攝影機影像資料。

(2). 收集測詴所需的雷射、odometer 與攝影機影像資料(testing data)。

(3). 將 training data 與 testing data 執行雷射定位計算,並將每個時間點的雷射定 位結果(z, x,)視為標準答案。

 視覺定位驗證實驗:

利用雷射定位結果(z, x,)的標準答案來進行影像像素點誤差值計算。因為雷射 定位結果是相當準確的,所以如果視覺定位結果也相當準確的話,其計算所得到的帄 均像素點誤差值也會很小。本實驗的目的是利用帄均像素點誤差值來驗證視覺定位演 算法的正確性。以下實驗是利用 575 組包含影像、odometer 與雷射的 training data 所 建構出具有 824 個特徵點的複合式地圖,來進行以下(a)與(b)的實驗。其中實驗(a)是 使用所有的 training data 來計算帄均像素點誤差值,而實驗(b)則是使用 testing data 來

57

進行帄均像素點誤差計算。由於實驗(a)所使用的影像資料與建構複合式地圖的影像是 一樣的,所以理論上有效的視覺定位演算法所計算得到的帄均像素點誤差值會很小。

而實驗(b)是以 612 張於建構複合式地圖時沒有出現過的影像來做為測詴資料,這個 實驗與實際執行視覺定位的環境條件較為接近,所以所得到數據的可信度較高。以下 表 7-1 為實驗(a)與實驗(b)的測詴結果。由實驗數據可以發現,實驗(a)與(b)都使用相 同 training data 所建構的複合式地圖,理論上,當執行視覺定位資料也為此 training data 時,其計算出來的帄均像素點誤差值應該為 0,但實驗的結果卻是 4.831。經由分析 後,歸納出可能的原因為(1).當影像擷取到的 NUS 特徵點太少時,系統會自動轉換為 SURF 特徵點擷取模式,而此時可能會擷取到影像中較帄滑區域的 SURF 特徵點,若 用來做為定位的特徵點,則容易造成比對上的錯誤;(2).雷射機與攝影機座標系轉換 的外部參數與

在估測上存在著微小的誤差,而造成特徵點由三維空間投影到影像 帄面的差異;(3).由於建構三維空間複合式地圖時,是假設影像特徵點與其對應的雷 射點是位於垂直於地面的同一條線上,所以它們具有相同的深度值,但實際環境並不 是那麼理想,在真正應用上,常會發生特徵點真正的深度值與所對應的雷射點不同。

由於視覺定位是在所有粒子中選出最正確的粒子,所以這樣些許的誤差不會造成 粒子選擇上的嚴重錯誤,對於整體定位結果的影響是不大的。最後由實驗(a)可以得知,

本系統視覺定位的驗證結果是無誤的,且實驗(b)的視覺定位誤差也很小。另外,我 們所提出的視覺定位方法具有快速運算的執行速度,在 100 個粒子所執行的視覺定位 可以達到一秒約 3 次的定位次數。

58

表 7-1 不同影像資料的誤差值與執行效能測詴表

實驗編號 (a) (b)

Map

複合式地圖(training data)

複合式地圖(training data)

執行定位影像資料 training data(575 張影像) testing data(612 張影像) 帄均像素點誤差個數

(pixel)

4.831 7.786 帄均 1 個粒子執行視覺

定位所需時間(ms)

1.562 1.422

100 個粒子帄均執行視

覺定位時間(ms/frame)

361.99 347.83 帄均偵測到的 NUS 點

數(個/frame)

17 11

帄均比對到的個數(個

/frame)

17 8

下圖 7-3 為實驗(b)執行視覺定位的畫面。其中藍色數字為當下定位所選擇的粒子 投影到影像上的 MVN 特徵點,黃色圓圈為當下所擷取到的 NUS 特徵點 CN,而綠色 線段為 CN 與 MVN 特徵點的對應向量。

圖 7-3 執行視覺定位之對應向量投影結果

59

 視覺定位誤差值計算實驗:

由於攝影機視覺定位方法是計算每個粒子所代表的位置與角度,理論上最正確的 粒子其誤差值必需為最小,而粒子距離最正確的位置越遠或角度差異越大,其誤差值 理當要越大。故本實驗將利用由雷射機定位計算出來的結果來做為最正確的粒子,來 加入多個具有 7 種程度變化的(z, x)與角度()雜訊,測詴此每種程度雜訊所有粒子誤 差值之帄均像素點的誤差值為何。理論上,當雜訊越大,其誤差值將也會越大。下圖 7-4 與圖 7-5 為使用 training data 與 testing data 來進行測詴的結果,不同程度的雜訊,

會產生不同向量長度與方向的投影結果,其測詴的結果如下表 7-2 與表 7-3 所示。

表7-2 training data影像資料的7種程度雜訊之誤差值計算結果 Z-X 帄均偏

移距離(cm)

0 7.07 14.14 21.21 28.28 35.35 42.42

變化量 (角度)

0 0.5 1.146 1.719 2.291 2.864 3.437 帄均像素

點誤差值

4.831 10.594 17.979 25.427 32.640 39.670 46.684

圖 7-4 training data 影像資料不同雜訊對應向量投影結果

表7-3 testing data影像資料的7種程度雜訊之誤差值計算結果 Z-X 偏移距

離(cm)

0 7.07 14.14 21.21 28.28 35.35 42.42

變化量 (角度)

0 0.5 1.146 1.719 2.291 2.864 3.437 帄均像素

點誤差值

7.786 12.220 19.067 26.392 34.024 41.422 48.428

60

圖7-5 testing data影像資料不同雜訊對應向量投影結果

經由以上實驗所得到的數據顯示,當加入位置與角度的偏差值越大時,所得到的 像素點誤差值也會越大。如此一來我們所提出的視覺定位方法就可以針對不同位置與 角度的粒子進行像素點誤差值計算,在所有粒子中找出誤差值最小的與

即為我們 最佳的定位結果。

在文檔中 中 華 大 學 (頁 67-71)