Open Source Robotics

精選高品質的開源機器人專案、工具與軟體,推動機器人社群向前發展。

Visual Odometry

  • 又稱: VO, Camera Odometry
  • 類別: State estimation & navigation › Localisation
  • 標籤: perception, navigation, cameras, localization

透過在連續影像中追蹤視覺特徵來估計機器人或攝影機的運動,不需車輪編碼器或 GPS 就能提供位置更新。

定義

視覺里程計(VO)透過分析連續影像之間的變化來估計機器人或相機的運動。不同於量測車輪轉動的輪式里程計,VO 從跨畫面追蹤的視覺特徵中擷取運動資訊。流程包括特徵偵測、特徵匹配或追蹤、運動估計,以及選用的局部最佳化。VO 在車輪打滑或車輪編碼器不可靠的環境中特別有用。與 IMU 資料結合後即成為視覺慣性里程計(VIO),提供更穩健的追蹤。

為何重要

視覺里程計透過觀察世界如何從攝影機前滑過,估計機器人往哪個方向移動了多遠。在常用的方法都派不上用場的地方,它最為重要:室內與地下沒有 GPS,而在足式或履帶式機器上,輪式里程計毫無意義。攝影機也比光達(LIDAR)便宜、輕巧得多,這就是為什麼大多數無人機與手持追蹤都以視覺里程計為基礎。它的弱點是與生俱來的:它估計的是變化,所以誤差會累積,而且它需要視覺紋理才能追蹤。

主要應用

  • 在無法使用 GPS 或 GPS 不可靠的地方,進行無人機定點懸停與導航
  • 足式機器人的里程計,因為那裡不存在以車輪為基礎的量測
  • AR 與 VR 頭戴裝置的追蹤,是消費性硬體中的同一個問題
  • 地下、室內與水下巡檢機器人
  • 行星探測車,視覺里程計可修正鬆軟地面上的車輪打滑
  • 為視覺 SLAM 打底,它建立在同樣的特徵追蹤之上

實際應用

實用的系統幾乎都是視覺慣性的:攝影機提供不易漂移的結構,IMU 則在動態模糊、快速旋轉與特徵消失的時刻撐住估計。這就是在室內定點懸停的無人機,以及追蹤房間的 VR 頭戴裝置內部所執行的東西。它典型的失效很有啟發性:把它對準一面空白的白牆,或在黑暗的走廊中執行,估計就會崩潰,因為沒有東西可以追蹤。磁磚地板之類的重複紋理會造成較不明顯的失效:特徵被信心十足地匹配到錯誤的磁磚上。

常見誤解

  • 視覺里程計提供絕對位置:它積分的是相對運動,沒有外部參考或迴路閉合就會漂移
  • 任何攝影機都可以:影格率、快門類型與鏡頭畸變影響極大,光是捲簾快門的假影就可能毀掉一次估計
  • 它在任何環境都能運作:空白牆面、黑暗、霧氣與重複圖案,都會讓它賴以運作的特徵消失
  • 單目視覺里程計能恢復真實尺度:單一攝影機做不到,除非有 IMU、第二台攝影機或已知大小的物體

誰需要了解

  • 任何打造必須在沒有 GPS 的情況下導航之飛行或足式機器人的人
  • 在輪式、視覺與慣性里程計來源之間做選擇的開發者
  • 在無特徵空間中除錯位置估計漂移或跳動問題的工程師
  • 學習視覺里程計與完整 SLAM 之間關係的學生
  • 任何為追蹤應用挑選攝影機的人,在這類應用中快門類型具有決定性

相關技術

  • 視覺 SLAM(ORB-SLAM、LSD-SLAM)
  • 視覺慣性里程計(VIO)
  • 光流
  • 特徵偵測與匹配(ORB、SIFT)
  • 雙目視覺與深度估計
  • 光束法平差
  • 以深度學習為基礎的里程計(TartanVO、DROID-SLAM)
  • 與 IMU 和 GPS 的感測器融合

相關專案

  • Open3D: Modern library for 3D point cloud processing, mesh operations, and 3D machine learning
  • PCL: Industry-standard C++ library for point cloud processing in robotics perception
  • Cartographer: Google's real-time 2D and 3D SLAM system for multi-platform robotics
  • Nav2: ROS 2 navigation stack with path planning and obstacle avoidance for mobile robots
  • DimOS: Python robotics runtime with agents, SLAM and teleop, no ROS required
  • ROS Motion Planning: One repo implementing 40+ classic and learning-based robot path planners as ROS plugins

影片

  • Visual Odometry Series - Part 1 (Concept and Math): Hummingbird

本網站需要 JavaScript 才能正常運作。請啟用 JavaScript 以瀏覽我們的開源機器人專案。