目前在研究移動機器人基於二維激光雷達的地圖構建與定位,主要是根據兩幀的數據點進行匹配,然後求出單應性矩陣,將數據轉到前一幀坐標系中。目前的效果是兩幀數據配的很准,有20mm誤差,但是如果不斷拼接數據的話,會造成累積誤差,使得構建的地圖很不準確


只依賴於點雲配准來建圖的累計誤差是無法消除的,對於這種情況有幾種優化思路。

1、優化配准方式,減小配准誤差。點雲匹配的方式有很多,以點為研究對象的,有各種ICP演算法、NDT演算法之類的,也有先提取一些特徵再進行匹配的,比如loam、segmatch等項目。各種匹配方式有自己的優缺點,有的運算速度快但結果不穩定,有的收斂能力強但精度較低,有的對初始位姿要求很高但收斂結果精度高。可以依據需求搭配幾種方法來使用,比如收斂能力強的做粗匹配,精度高的做精匹配,通過這樣的方式來提高匹配精度。

2、分塊建圖,減小誤差累計。點雲匹配建圖的累計誤差就如同IMU一樣,隨著時間的增加誤差也不斷增大。那麼能降低累計誤差的方法,除了減小匹配誤差之外,就是降低匹配次數了。在分塊地圖的建法上,可以考慮瓦片式的建圖方法,相鄰地圖塊之前有重疊區域,這樣可以預載入下一塊地圖,防止跨越地圖時的位姿跳變。

3、引入其他觀測量,採用圖優化的方式建圖。如果有其他觀測量(比如GPS、IMU),可以在匹配建圖的同時記錄其他參考位姿。這樣在匹配建圖結束之後,可以以參考位姿為頂點,採用圖優化的方法修正匹配位姿,最終可以得到一個矯正後的地圖。

4、如果環境中閉環較多的話,可以採用閉環檢測的方法來優化建圖。


激光slam_loam微信交流群

共同學習,共同進步。

https://weixin.qq.com/g/AYo8vS573Le56yO7 (二維碼自動識別)


拼接的時候,考慮到之前已經建立的模型的邊緣的走勢,舉個例子,掃到一輛車,假設掃了一半的位置,拼接的時候,看之前那一半車的曲線,再看當前曲線,在一個範圍內平移,使得兩條曲線的函數和拼接後的函數,變化最小
請問你用的是哪個型號的激光雷達


推薦閱讀:
查看原文 >>
相关文章