當今,由于數字圖像處理和計算機視覺技術的迅速發展,越來越多的研究者采用攝像機作為全自主用移動機器人的感知傳感器。這主要是因為原來的超聲或紅外傳感器感知信息量有限,魯棒性差,而視覺系統則可以彌補這些缺點。而現實世界是三維的,而投射于攝像鏡頭(CCD/CMOS)上的圖像則是二維的,視覺處理的最終目的就是要從感知到的二維圖像中提取有關的三維世界信息。
簡單說來就是對機器人周邊的環境進行光學處理,先用攝像頭進行圖像信息采集,將采集的信息進行壓縮,然后將它反饋到一個由神經網絡和統計學方法構成的學習子系統,再由學習子系統將采集到的圖像信息和機器人的實際位置聯系起來,完成機器人的自主導航定位功能。
(1)攝像頭標定算法:
2D-3D映射求參。
傳統攝像機標定主要有 Faugeras 標定法、Tscai 兩步法、直接線性變換方法、張正友平面標定法和 Weng迭代法。自標定包括基于 Kruppa 方程自標定法、分層逐步自標定法、基于絕對二次曲面的自標定法和 Pollefeys 的模約束法。視覺標定有馬頌德的三正交平移法、李華的平面正交標定法和 Hartley 旋轉求內參數標定法。
(2)機器視覺與圖像處理:
a. 預處理:灰化、降噪、濾波、二值化、邊緣檢測。。。
b. 特征提取:特征空間到參數空間映射。算法有HOUGH、SIFT、SURF。
c. 圖像分割:RGB-HIS。
d. 圖像描述識別
(3)定位算法:
基于濾波器的定位算法主要有KF、SEIF、PF、EKF、UKF等。
也可以使用單目視覺和里程計融合的方法。以里程計讀數作為輔助信息,利用三角法計算特征點在當前機器人坐標系中的坐標位置,這里的三維坐標計算需要在延遲一個時間步的基礎上進行。根據特征點在當前攝像頭坐標系中的三維坐標以及它在地圖中的世界坐標,來估計攝像頭在世界坐標系中的位姿。這種降低了傳感器成本,消除了里程計的累積誤差,使得定位的結果更加精確。此外,相對于立體視覺中攝像機間的標定,這種方法只需對攝像機內參數進行標定,提高了系統的效率。
(4).定位算法基本過程:
簡單的算法過程,可基于OpenCV進行簡單實現。
輸入
通過攝像頭獲取的視頻流(主要為灰度圖像,stereo VO中圖像既可以是彩色的,也可以是灰度的 ),記錄攝像頭在t和t+1時刻獲得的圖像為It和It+1,相機的內參,通過相機標定獲得,可以通過matlab或者opencv計算為固定量。
輸出
計算每一幀相機的位置+姿態
基本過程
1. 獲得圖像It,It+1
2. 對獲得圖像進行畸變處理
3. 通過FAST算法對圖像It進行特征檢測,通過KLT算法跟蹤這些特征到圖像It+1中,如果跟蹤特征有所丟失,特征數小于某個閾值,則重新進行特征檢測
4. 通過帶RANSAC的5點算法來估計兩幅圖像的本質矩陣
5. 通過計算的本質矩陣進行估計R,t
6. 對尺度信息進行估計,最終確定旋轉矩陣和平移向量
編輯:jq
-
CCD
+關注
關注
32文章
879瀏覽量
142144 -
濾波器
+關注
關注
160文章
7731瀏覽量
177694 -
GPS定位
+關注
關注
4文章
79瀏覽量
22398
發布評論請先 登錄
相關推薦
評論