摘 要 :通過研究激光雷達和視覺傳感器融合 SLAM,實現(xiàn)雙目視覺傳感器對單線激光雷達點云的補充,以提高建圖精度。實現(xiàn)方案以 2D 激光雷達點云數(shù)據(jù)為主,雙目視覺傳感器作為激光雷達點云盲區(qū)的補充,搭建 SLAM實驗平臺,完成機器人實時地圖構(gòu)建并獲取當前位置信息,同時降低攜帶傳感器的成本。
0 引 言
隨著機器人技術(shù)的發(fā)展,越來越多的機器人已經(jīng)實現(xiàn)自主運動,但可靠性和制作成本依然制約著機器人的普及。通過使用相較3D激光雷達傳感器成本更低的2D激光雷達和視覺傳感器進行點云數(shù)據(jù)融合,實現(xiàn)平臺搭建,優(yōu)化機器人的SLAM技術(shù),解決當前2D激光雷達存在的感知單一平面點云數(shù)據(jù)不足、視覺傳感器數(shù)據(jù)計算量大等問題[1-2],提升地圖精度,減少SLAM應用過程中的不確定性。
1 實驗平臺搭建
研究基于ROS構(gòu)建由2D激光雷達和深度相機點云融合的SLAM[3]平臺,通過NVIDIA Jetson TX2運算平臺和STM32微控制器通信傳送數(shù)據(jù),實現(xiàn)機器人自主運動。實驗平臺包括點云數(shù)據(jù)識別部分和運動部分,整體結(jié)構(gòu)如圖1所示。
云數(shù)據(jù)識別部分包括激光雷達獲取平面點云數(shù)據(jù)和雙目相機深度點云計算。運行時激光雷達獲取2D平面內(nèi)障礙物點云信息,雙目相機獲取機器人正面范圍的影像[4],通過Stereo Matching 計算可視范圍內(nèi)的深度點云數(shù)據(jù),并對其進行范圍剔除和距離篩選 ;最后將雙目相機獲得的點云與激光雷達點云序列進行比較更新,融合點云數(shù)據(jù)后根據(jù)占據(jù)柵格地圖算法構(gòu)建地圖[5]。點云數(shù)據(jù)融合過程如圖1所示。
運動部分通過單片機STM32F4從NUC獲取運動速度向量或從遙控中獲取控制信息,經(jīng)PID解算將電流或電壓值發(fā)送給底盤電機,電機連接聯(lián)軸器帶動麥克納姆輪轉(zhuǎn)動,從而實現(xiàn)全方向移動[6]。機器人整體設計如圖1所示。
2 研究與測試
圍繞ROS節(jié)點話題進行研究和測試。雙目相機點云生成節(jié)點(cameraNode),將相機點云(/camera_cloud)傳送給點云數(shù)據(jù)處理節(jié)點(/transNode)處理,得到深度數(shù)據(jù)(/depth);激光雷達點云生成節(jié)點,得到點云數(shù)據(jù)(/laser),二者由點云合成節(jié)點(/mergeNode)融合得到點云數(shù)據(jù)(/scan),再將其輸出到 HectorMapping 的節(jié)點。點云融合建圖部分 ROS 節(jié)點與話題如圖2 所示 [7]。
2.1 雙目校正與像素匹配
使用金乾象工業(yè)相機中的兩個自制雙目深度相機,需要保證左右畫面的同步和亮度,否則會導致深度圖的計算結(jié)果不佳。因此,在相機點云生成(/camera_cloud)之前,需要對左右相機讀取的原圖像進行雙目校正和像素匹配。
雙目校正根據(jù)攝像頭標定后獲得的單目內(nèi)參(焦距、成像原點、畸變系數(shù))和雙目相對位置關(guān)系(旋轉(zhuǎn)矩陣和平移向量),分別對左右視圖進行消除畸變和行對準,使得左右視圖的成像原點坐標一致、攝像頭光軸與對極線行對齊。原圖像與校正后圖像對比情況如圖3所示。
像素匹配通過匹配代價計算、代價聚合、視差計算和視差優(yōu)化等步驟 [8],對左右視圖上對應的像素點進行匹配得到視差圖。依靠視差圖,結(jié)合雙目相機的內(nèi)參,計算得到正交空間下的點云數(shù)據(jù)。
2.2 點云數(shù)據(jù)處理
由于雙目相機參數(shù)的差異,幀速率不能完全同步,獲取的點云數(shù)據(jù)存在一定誤差,需要先通過點云數(shù)據(jù)處理節(jié)點(/transNode)變換和剔除數(shù)據(jù),再通過點云合成節(jié)點(/mergeNode)融合同種格式的數(shù)據(jù)。
正交空間下的點云通過透視除法的逆變換得到相機空間下的點云數(shù)據(jù),獲得相對于相機實際位置的坐標。坐標變換與效果如圖4所示。
數(shù)據(jù)轉(zhuǎn)換部分將點云投影到二維平面,并轉(zhuǎn)換為激光雷達點云格式的數(shù)據(jù),即角度和對應方向的深度值[9]。轉(zhuǎn)換時,通過反正切函數(shù),根據(jù)點云位置的水平偏移與深度值計算出角度和距離值,篩選取得各個角度上距離最近的點云,效果如圖5所示。在融合點云之前,應當剔除視錐內(nèi)不需要的部分,效果如圖5中截取點云后的投影圖所示 ;否則地面和天花板將對投影后的點云造成影響,效果如圖5中的原點云投影圖所示??紤]到雙目左右圖像的邊緣缺少完整的匹配信息,點云可能出現(xiàn)極不穩(wěn)定的深度值,效果如圖5中未進行邊緣剔除的投影圖所示。因此,在能夠反映完整深度值的情況下,剔除部分邊緣深度值,效果如圖5中邊緣剔除后的投影圖所示。
2.3 點云融合建圖
點云合成節(jié)點將深度數(shù)據(jù)和激光雷達點云數(shù)據(jù)融合,并篩選出各個角度距離最近的點云輸出到 HectorMapping 的節(jié)點。
經(jīng)過測試,增加雙目相機后的建圖能夠獲取單線雷達掃描平面外的細節(jié),自身位姿估計和建圖結(jié)果更加精確,測試對比結(jié)果如圖6所示。但與工業(yè)級產(chǎn)品相比穩(wěn)定性差,建圖過程中會有微小偏差。
3 結(jié) 語
本文通過激光雷達提供大范圍點云信息,視覺傳感器提供機器人正面區(qū)域補充激光雷達缺失的點云,較單線雷達大范圍稀疏點云提高了計算準確度,使用Hector SLAM算法融合點云數(shù)據(jù),更好地實現(xiàn)機器人點云獲取和建圖[10]。
審核編輯 :李倩
-
機器人
+關(guān)注
關(guān)注
211文章
28467瀏覽量
207334 -
雷達
+關(guān)注
關(guān)注
50文章
2940瀏覽量
117609 -
視覺傳感器
+關(guān)注
關(guān)注
3文章
250瀏覽量
22897 -
激光雷達
+關(guān)注
關(guān)注
968文章
3981瀏覽量
190024
原文標題:論文速覽 | 基于激光雷達和視覺融合的機器人 SLAM 應用研究
文章出處:【微信號:iotmag,微信公眾號:iotmag】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論