什么是視覺Visual SLAM
What Is Visual SLAM?
What are the origins of visual SLAM? and what are some other applications for this technology beyond floor cleaning?
視覺Visual SLAM的起源是什么?除了吸塵器,這項技術還有哪些其他應用?
今年CES的獲獎者之一是iRobot的眾多Roombas(特別是s9+真空和清潔底座自動污垢處理)。所有Roomba真空吸塵器的一個獨特的技術專長是它使用了vSLAM,即視覺同步定位和繪圖。
據iRobot稱,這項技術使用光學傳感器每秒捕獲230400個數據點。這使得流動真空能夠繪制出它周圍環境的地圖,包括它自己在那個環境中的位置,並繪制出“它在哪里,曾經在哪里,以及它需要清潔的地方”
The Roomba s9+ uses iRobot's patented vSLAM technology. Image used courtesy of iRobot
但是視覺沖擊的起源是什么呢?除了垃圾吸塵器機器人,這項技術還有哪些其他應用?
What Is Visual SLAM?
通常,SLAM是一種利用傳感器繪制設備周圍區域的地圖,同時將自身定位在該區域內的技術。聲納和激光成像是這項技術如何發揮作用的兩個例子。
但與激光雷達(LiDAR)等使用激光陣列繪制區域地圖的技術不同,visual slam使用一台攝像機來收集數據點並創建地圖。Makhubela等人對visual SLAM進行了一次回顧,他解釋說單視覺傳感器可以是單目、立體視覺、全向或紅綠藍深度(RGBD)相機。
沒有單一的算法來執行視覺SLAM;此外,據世界最大的機器視覺行業協會AIA稱,當傳感器的位置及其更廣闊的環境都未知時,這種技術使用3D視覺進行位置映射。
3D Face Reconstructions and Drone Vision
而Makhubela等人。相信這項技術還處於初級階段,visualslam仍然在一些有趣的用例中取得了進展。
卡內基梅隆機器人研究所(Carnegie Mellon's robotics institute)的一個令人興奮的進展是,該研究所發明了一種用智能手機視頻創建3D人臉重建的兩步方法。這個過程的第一步是使用視覺沖擊來三角化人臉表面上的點,同時也使用這些信息來識別相機的位置。然后,研究人員使用深度學習算法來填補個人輪廓和面部標志(眼睛、耳朵和鼻子)的空白。
Researchers say this method could build avatars for gaming or create customized surgical masks or respirators. Image (modified) used courtesy of Carnegie Mellon University
另一個視覺沖擊的應用是蜻蜓,一個由Accuware創建的軟件。Accuware擁有自己的專利視覺SLAM方法,用於機器人和無人機的3D定位,號稱定位地圖的精確度為5厘米。然而,該軟件的一個缺點是,該軟件至少需要16gb的計算機RAM,其中大部分用於處理引擎將來自相機的數據轉換為地圖。
Accuware表示,他們看到了在自動車輛、自動機器人和無人駕駛飛機上進行視覺猛擊的未來,這些機器人和無人駕駛飛機用於運載以及搜索和救援。
MonoSLAM and PTAM
關於兩個最流行的視覺SLAM迭代(MonoSLAM和PTAM:MonoSLAM,一個實時單攝像機SLAM)的快速歷史課是由Davison等人創建的vSLAM的第一個實現。2007年。
從那時起,研究人員Taketomi等人擴展了PTAM(並行跟蹤和映射)技術。雖然單斯拉姆和PTAM的基本前提相似,但它們在一些重要方面有所不同。
How Does MonoSLAM and PTAM Work?
首先,MonoSLAM和PTAM都必須初始化映射。在MonoSLAM中,這是通過使用已知對象作為第一個數據點來實現的。此點允許設備根據對象的已知參數校准和縮放其測量值。另一方面,PTAM通過使用所謂的“五點算法”(一種基於攝像機相對運動估計位置的過程)來實現地圖初始化。
接下來,兩種視覺SLAM技術都執行跟蹤和定位,這就是真正神奇的地方。在MonoSLAM中,該技術使用一種稱為擴展Kalman濾波器的數學過程來估計相機的運動,並找到“特征點”的三維坐標,這些特征點是記錄在地圖上的三維結構和物體。
Map created by Accuware's Dragonfly. Image used courtesy of Accuware
PTAM匹配特征點,以估計當前地圖點和來自相機的最新輸入圖像之間的相機位置。然后使用三角剖分創建三維位置,並使用捆綁算法優化這些數據點。AIA描述了捆綁算法如何利用montecarlo分析從多個數據點中找出一個平均位置。
如Taketomi等人。解釋一下,PTAM,以及visualslam的許多后期實現,使用重定位和全局地圖優化來優化攝像機位置和地圖環境。
Challenges of Visual SLAM: Motion and Light
雖然視覺沖擊顯示出機器人技術的前景,但研究表明,這項技術有幾個主要問題。
一個重要的原因是它在處理動態環境方面的局限性。視覺沖擊必須實時操作。但是,由於只有一個攝像頭,視覺SLAM無法提供360度的視野,Makhubela等人。解釋一下。這意味着系統必須以極高的速度工作,以捕捉環境變化並在短時間內覆蓋整個觀察區域。
Makhubela等人。斷言這些動態限制導致了協作SLAM(CoSLAM),它使用多個攝像機執行視覺SLAM。CoSLAM修復了限制觀看區域的問題,但增加了處理負擔。也就是說,需要一台更強大的計算機來保持系統的實時運行。
光變差是Makhubela等人的另一個問題。引用。也就是說,從室內到室外環境之間的反射面和光線變化會阻礙數據點。換言之,鏡像屋不是一個視覺猛擊可以輕松操控的地方。
What's Your Take on SLAM?
雖然視覺重擊在許多領域顯示出了希望,特別是在無人機和機器人設計中,但它仍然存在動態運動和光照的問題。但是我們想聽聽你對總體技術的經驗。