機器人 SLAM 類型:光達、視覺與視覺慣性 SLAM

同時定位和製圖在構建或更新環境表示的同時,估算機器人的軌跡。這兩種估計相互依賴:運動用於在地圖中放置觀測值,需要地圖來糾正累積的運動誤差。因此, SLAM 是一個估計問題,而不僅僅是繪製佔用影像的方法。

LiDAR、視覺和視覺慣性 SLAM 在觀測內容和失效方式上有所不同。距離掃描強調幾何結構,相機利用影像外觀和投影,視覺-慣性系統結合影像約束與高速慣性傳播。輪里程計、深度、 GNSS 或其他先驗可以補充其中任何一種。

使用本指南與 機器人感測器融合指南機器人感測器概覽一起使用。從校正軌跡和下游任務證據中選擇系統,而非僅憑一張漂亮的地圖截圖。

SLAM 同時估計位姿並構建地圖

機器人從不確定的姿態開始,接收來自未知或部分已知的地標、表面或影像特徵的觀測。相對運動連線連續狀態,而重複觀測則將軌跡回溯到早期位置。最佳化或過濾則找到一組最符合這些約束的狀態和對映變數。

必須定義規範自由度和參考系。區域性地圖可以在沒有全球測量原點的情況下內部一致。尺度可在公制距離系統中觀測,但不一定能從單一相機中單獨觀測,除非有額外資訊。輸出為度量、重力一致且全域參照的狀態。

TurtleBot3 Burger 移動機器人,配備光達輪編碼器和車載計算機
移動 SLAM 平台結合了距離感測、車輪里程計和車載計算,每個平台都有自己的影格、時間戳和故障模式。來源:Kuscu0,維基共享資源。許可:CC BY-SA 4.0

前端將感測器資料轉換為約束

SLAM 前端檢測影像特徵、對齊掃描、估計視覺里程或將新觀測與早期狀態關聯。它提供相對姿態或標誌約束和不確定性。不良關聯會產生後端可能無法修復的可靠錯誤邊緣。

時間戳和外部校正影響所有約束。滾動快門、運動失真、車輪打滑和 IMU 偏置需要合適的模型或預處理。監控匹配得分、內點數量和殘差分佈,而非假設每個接受匹配都同樣可靠。

SLAM 層主要工作證據失敗
感測器準備時間和校正輸入時間戳和校正殘差運動失真
前端建立區域性約束鄰近與匹配殘差錯誤的關聯
里程計傳播局部運動增量與協方差累積漂移
迴環閉合認識到重訪幾何驗證錯誤或漏掉環
後端最佳化圖表或狀態目標與剩餘不一致解

後端負責分配累積誤差

姿態圖將機器人姿態表示為節點,相對約束為邊。當有效的迴環檢測包將目前姿態與先前存取過的位置連線起來時,圖最佳化可以將漂移重新分佈到多個姿態,而不是應用一個突兀的區域性補丁。

目前 slam_toolbox 檔案描述 了姿態圖對映和定位工作流程。當重複性重要時,儲存序列化的圖和設定;僅渲染影像會失去後續診斷所需的約束和不確定性資訊。

LiDAR SLAM 觀察幾何範圍結構

二維 LiDAR SLAM 能夠對齊平面掃描,並且在牆體和物體在掃描平面附近形成獨特幾何形態時表現良好。三維繫統增加了垂直結構並支援更豐富的運動,但增加了資料、計算和校正負擔。

Google 的 Cartographer 存檔庫 展示了區域性軌跡構建和全球姿態圖的理念。距離感測也並非免疫於失敗:漫長無特徵的走廊、對稱性、玻璃、鏡面、灰塵、雨水和流動的人群都可能導致遺漏或誤導性的返回。

視覺 SLAM 使用外觀和攝影機幾何

單目視覺 SLAM 追蹤影像特徵或直接強度關係,並根據系統不同可以建立稀疏或密集的地圖。立體或 RGB-D 相機在其可靠範圍內增加度量深度。相機提供豐富的視覺效果,但依賴於曝光、對焦、紋理和可見度。

運動模糊、重複圖案、黑暗、眩光和大光照變化會降低關聯質量。動態人物或螢幕可能會移動系統假定為靜態的特徵。相機校正、快門模型和曝光策略是估計器的一部分,而非單獨的外觀設定。

以五個步驟整理機器人 SLAM 類型:光達、視覺與視覺慣性 SLAM的判讀重點
依正文與一手資料整理的繁體中文實務卡。來源:Physical AI Lab。

視覺慣性 SLAM 增加了高速運動證據

ORB-SLAM3 是一個開放參考文獻,涵蓋視覺、視覺慣性和多地圖研究流程。其 倉庫檔案 還顯示,相機-IMU 校正和初始化是明確要求,而非可選改進。

IMU 有助於連線快速運動和低紋理間隔,並在適當的激勵下使重力和公制尺度可觀測。然而,偏置、時序和軸誤差的積分速度較快。初始化弱或運動無激發性會導致即使軌跡看起來平滑,比例、偏置或方向也難以被觀察到。

家庭觀察力強典型弱點驗證場景
2D LiDAR平面幾何玻璃與重複走廊混合牆幾何
3D LiDAR度規 3D 結構成本與運動失真多層路線
單眼視覺外觀與方位比例與燈光紋理與曝光掃視
立體聲或 RGB-D公制視覺深度射程與光學故障近遠天體
視覺-慣性快速運動與重力時序、偏置與初始化激動的六軸運動

迴環檢測需要幾何驗證

地點辨識提出兩個觀察來自同一地點。在新增環路前,應透過單獨的幾何檢查驗證相對變換。重複的書架、門或走廊可以產生感知上相似但物理上不同的位置。

同時測試假陽性和漏迴環行為。一個假的高置信閉包可能會扭曲本應有用的對映,而沒有閉包則允許漂移存在。記錄提案、驗證殘差、接受邊以及每個環路引起的軌跡變化。

軌跡度量揭示了地圖影像所隱藏的內容

絕對軌跡誤差衡量路徑上與參考的對齊情況,而相對姿態誤差則檢查選定區間內的區域性漂移。還測量環路一致性、重新定位時間、追蹤丟失率、地圖重複性以及長時間會話中的 CPU 或記憶體行為。

報告對齊方法和參考不確定性。擬合變換可以隱藏縮放或全域偏移,因此保留原始和對齊的指標。導航方面,新增定位跳躍、路徑淨空誤差和重複路線成功。幾何清晰的壁面地圖可以與偏向機器人姿勢共存。

失敗測試應當還原真實環境

建造帶有直線走廊、旋轉、電梯或坡道、玻璃、變換燈光、動態物體以及臨時遮擋的路線。調整速度、加速度和感測器溫度。測試多個地圖點啟動,而非總是從一個已知起點啟動。

移除車輪里程計、遮擋攝影機、阻擋部分掃描或引入時間戳延遲。驗證不確定性、跟蹤丟失檢測和恢復。一個穩健的系統必須知道何時信心薄弱;繼續保持看起來精準錯誤的姿勢可能比停止更糟糕。

SLAM,定位和導航有不同的作用

SLAM 估算軌跡和地圖,定位估計在現有表示中定位,導航選擇並控制朝目標移動。一個軟體包可以暴露多種模式,但這些要求保持獨立。地圖維護和僅定位操作在資料保留和變更策略上也有所不同。

在全域校正過程中為控制器定義影格連續性。在適當情況下透過單獨的變換應用地圖級修正時,保持區域性里程平滑。用規劃器覆蓋、障礙物層和重複路線驗證地圖,確保估計輸出在下游有效。

評估“機器人 SLAM 類型:LiDAR、視覺與視覺慣性 SLAM”時,還應儲存模型版本、機器人設定、校正檔案、測試日期和全部試驗記錄。

只有把這些持續投入與單位成功任務的價值比較,才能判斷方案是否適合擴大。

上線後仍要持續檢查分佈變化、感測器漂移、機械磨損和人工接管原因。

  • 校正時序、本徵和感測器外因。
  • 測量區域性漂移和全域環路一致性。
  • 幾何驗證迴環檢測。
  • 測試光照、幾何、運動和動態物體失效。
  • 驗證已儲存地圖上的定位和導航。

常見問題

SLAM 和導航是同一種技術嗎?

不。 SLAM 估計姿勢和地圖;導航使用世界表示和狀態估計來規劃和控制運動。

LiDAR SLAM 總是比視覺 SLAM 更準確嗎?

不會。準確性取決於環境、運動、校正、演算法和參考。幾何形狀差或反射的場景會破壞 LiDAR 就像光線會破壞視覺一樣。

迴環檢測是強制性的嗎?

並非每個短任務都如此,但如果沒有全域引用或重訪,區域性漂移通常會在較長的路線上積累。

SLAM 能沒有輪式編碼器工作嗎?

是的。 LiDAR、視覺慣性或其他方法可以估算運動,但編碼器輸入在正確建模時可以補充有用的證據。

乾淨的地圖能證明定位準確嗎?

不需要。評估軌跡誤差、迴圈一致性、重複定位和下游導航,而不僅僅是渲染後的地圖。

SLAM 證據邊界註釋

SLAM 輸出取決於校正、環境、運動、關聯和估計設定。部署前,使用獨立參考和下游導航棧驗證軌跡和故障恢復。

相關主題:倉儲揀選機器人如何運作?架構、指標與導入判斷