專案詳細資料
說明
本計畫提出一個基於線性模型之視覺同時定位與建圖(Visual Simultaneous Localization and Mapping, V-SLAM)系統,以應用於自主導航下的機器人運作,讓機器人在未知的環境下,能即時建立出三維地圖,並且同時估測出自己在地圖中的狀態。同時,藉由FPGA硬體加速電路的輔助設計,完成低成本、低功耗以及高運算效率的目標。 在V-SLAM系統裡,影像比對主要是透過雙眼視覺(Binocular vision)的尺度不便特徵點轉換(Scale-Invariant Feature Transform, SIFT)演算規則進行,攝入的影像首先會進行高斯模糊化(Gaussian Blur),這個步驟主要是在忽略圖像的層次與細節,減少影像中的雜訊。接著,將兩張不同權重的高斯模糊影像相減來獲得差分影像(difference image),並進行運算,來找到影像中的極值點(extreme point)。為了從這些極值點分辨出真正的特徵點(feature point)。我們接著對差分影像進行微分,找出影像中高對比度的點,同時再搭配哈理斯邊角偵測(Harris Corner Detector)找出影像中的平滑點,而滿足以上三個條件的點就是影像中的特徵點。 為了要匹配出不同影像中的相同特徵點,我們接著利用雜訊與細節層次較少的高斯模糊影像,統計出每個像素點在周圍八個方向上像素值的變異大小,來賦予特徵點更多的描述參數。由於本計畫使用雙眼視覺影像,排除物體成像在焦距內以及單顆鏡頭被遮蔽的情況,兩個鏡頭所拍攝的影像應該會極為相似。也就是,兩張影像中的特徵點座標距離勢必不會過遠。而且,本系統在匹配之前的硬體是串列輸入串列輸出(serial input/serial output, SISO),因此我們利用以上的特性提出了一個簡單的特徵點匹配方式。首先,經由串列存取的方式,將左鏡頭攝取的影像中,前幾個特徵點的座標及描述子儲存到隨機存取記憶體(RAM)的少量空間。接著,當延遲過的右鏡頭影像輸入第一個特徵點時,觸發記憶體,將記憶體中特徵點的座標與描述子資訊並列讀出,進行比對,找出差異最小的特徵點當作匹配的點。 為了使系統更具有競爭力,我們加入了測量距離的功能,利用匹配到的特徵點與雙眼攝影機本身物理結構的關係,計算出物體與攝影機的實際距離。如此一來,當雙眼視覺機器人使用本系統建圖時即可測量出距離,毋須增設其它感測元件進行測量,有效的降低機器人的硬體與成本。未來,還可將此功能擴充至V-SLAM系統,不僅達到低成本、低功耗、以及低階的平台實現的目標,也同時完成特徵點即時匹配與測距的功能。
狀態 | 已完成 |
---|---|
有效的開始/結束日期 | 2017/08/01 → 2019/10/31 |
Keywords
- V-SLAM系統
- 雙眼視覺
- SIFT演算法
- FPGA
- 特徵點辨識
- 特徵點描述
- 特徵點匹配
- 距離測量
指紋
探索此專案觸及的研究主題。這些標籤是根據基礎獎勵/補助款而產生。共同形成了獨特的指紋。