導航:首頁 > 源碼編譯 > 視覺導航演算法

視覺導航演算法

發布時間:2023-06-19 05:27:30

㈠ SLAM演算法解析

【嵌牛導讀】: SLAM(Simultaneous Localization and Mapping) 是業界公認視覺領域空間定位技術的前沿方向,中文譯名為「同步定位與地圖構建」,它主要用於解決機器人在未知環境運動時的定位和地圖構建問題。

【 嵌牛鼻子】: 有人就曾打比方,若是手機離開了 WIFI 和數據網路,就像無人車和機器人,離開了 SLAM 一樣。

【嵌牛正文】: 目前科技發展速度飛快,想讓用戶在 AR/VR、機器人、無人機、無人駕駛領域體驗加強,還是需要更多前沿技術做支持,SLAM 就是其中之一。實際上,有人就曾打比方,若是手機離開了 WIFI 和數據網路,就像無人車和機器人,離開了 SLAM 一樣。

        在 VR/AR 方面,根據 SLAM 得到地圖和當前視角對疊加虛擬物體做相應渲染,這樣做可以使得疊加的虛擬物體看起來比較真實,沒有違和感。在無人機領域,可以使用 SLAM 構建局部地圖,輔助無人機進行自主避障、規劃路徑。在無人駕駛方面,可以使用 SLAM 技術提供視覺里程計功能,然後跟其他的定位方式融合。機器人定位導航方面,SLAM 可以用於生成環境的地圖。基於這個地圖,機器人執行路徑規劃、自主探索、導航等任務。

        SLAM 技術的發展距今已有 30 余年的歷史,涉及的技術領域眾多。由於本身包含許多步驟,每一個步驟均可以使用不同演算法實現,SLAM 技術也是機器人和計算機視覺領域的熱門研究方向。

        SLAM 的英文全程是 Simultaneous Localization and Mapping,中文稱作「同時定位與地圖創建」。SLAM 試圖解決這樣的問題:一個機器人在未知的環境中運動,如何通過對環境的觀測確定自身的運動軌跡,同時構建出環境的地圖。SLAM 技術正是為了實現這個目標涉及到的諸多技術的總和。

        SLAM 技術涵蓋的范圍非常廣,按照不同的感測器、應用場景、核心演算法,SLAM 有很多種分類方法。按照感測器的不同,可以分為基於激光雷達的 2D/3D SLAM、基於深度相機的 RGBD SLAM、基於視覺感測器的 visual SLAM(以下簡稱 vSLAM)、基於視覺感測器和慣性單元的 visual inertial odometry(以下簡稱 VIO)。

        基於激光雷達的 2D SLAM 相對成熟,早在 2005 年,Sebastian Thrun 等人的經典著作《概率機器人學》將 2D SLAM 研究和總結得非常透徹,基本確定了激光雷達 SLAM 的框架。目前常用的 Grid Mapping 方法也已經有 10 余年的歷史。2016 年,Google 開源了激光雷達 SLAM 程序 Cartographer,可以融合 IMU 信息,統一處理 2D 與 3D SLAM 。目前 2D SLAM 已經成功地應用於掃地機器人中。

        基於深度相機的 RGBD SLAM 過去幾年也發展迅速。自微軟的 Kinect 推出以來,掀起了一波 RGBD SLAM 的研究熱潮,短短幾年時間內相繼出現了幾種重要演算法,例如 KinectFusion、Kintinuous、Voxel Hashing、DynamicFusion 等。微軟的 Hololens 應該集成了 RGBD SLAM,在深度感測器可以工作的場合,它可以達到非常好的效果。

        視覺感測器包括單目相機、雙目相機、魚眼相機等。由於視覺感測器價格便宜,在室內室外均可以使用,因此 vSLAM 是研究的一大熱點。早期的 vSLAM 如 monoSLAM 更多的是延續機器人領域的濾波方法。現在使用更多的是計算機視覺領域的優化方法,具體來說,是運動恢復結構(structure-from-motion)中的光束法平差(bundle adjustment)。在 vSLAM 中,按照視覺特徵的提取方式,又可以分為特徵法、直接法。當前 vSLAM 的代表演算法有 ORB-SLAM、SVO、DSO 等。

        視覺感測器對於無紋理的區域是沒有辦法工作的。慣性測量單元(IMU)通過內置的陀螺儀和加速度計可以測量角速度和加速度,進而推算相機的姿態,不過推算的姿態存在累計誤差。視覺感測器和 IMU 存在很大的互補性,因此將二者測量信息進行融合的 VIO 也是一個研究熱點。按照信息融合方式的不同,VIO 又可以分為基於濾波的方法、基於優化的方法。VIO 的代表演算法有 EKF、MSCKF、preintegration、OKVIS 等。Google 的 Tango 平板就實現了效果不錯 VIO。

        總的來說,相比於基於激光雷達和基於深度相機的 SLAM,基於視覺感測器的 vSLAM 和 VIO 還不夠成熟,操作比較難,通常需要融合其他感測器或者在一些受控的環境中使用。

【轉51cto】

㈡ slam演算法是什麼

SLAM是Simultaneous localization and mapping縮寫,意為「同步定位與建圖」,主要用於解決機器人在未知環境運動時的定位與地圖構建問題。

Simultaneous Localization and Mapping (SLAM)原本是Robotics領域用來做機器人定位的,最早的SLAM演算法其實是沒有用視覺camera的(Robotics領域一般用Laser Range Finder來做SLAM)。

SLAM對實時性要求比較高,而要做到比較精確、穩定、可靠、適合多種場景的方案一般計算量相對較大,目前移動式設備的計算能力還不足夠支撐這么大的計算量,為了達到實時性能,往往需要在精確度和穩定性上做些犧牲。

因此在具體的應用中,往往需要根據移動設備所具有的感測器組合、計算能力、用戶場景等,選擇和深度定製合適的SLAM演算法。比如,無人駕駛汽車和手機端AR類應用的SLAM演算法就非常不同。

SLAM的典型應用領域

機器人定位導航領域:地圖建模。SLAM可以輔助機器人執行路徑規劃、自主探索、導航等任務。國內的科沃斯、塔米以及最新面世的嵐豹掃地機器人都可以通過用SLAM演算法結合激光雷達或者攝像頭的方法,讓掃地機高效繪制室內地圖,智能分析和規劃掃地環境,從而成功讓自己步入了智能導航的陣列。

VR/AR方面:輔助增強視覺效果。SLAM技術能夠構建視覺效果更為真實的地圖,從而針對當前視角渲染虛擬物體的疊加效果,使之更真實沒有違和感。VR/AR代表性產品中微軟Hololens、谷歌ProjectTango以及MagicLeap都應用了SLAM作為視覺增強手段。

無人機領域:地圖建模。SLAM可以快速構建局部3D地圖,並與地理信息系統(GIS)、視覺對象識別技術相結合,可以輔助無人機識別路障並自動避障規劃路徑,曾經刷爆美國朋友圈的Hovercamera無人機,就應用到了SLAM技術。

無人駕駛領域:視覺里程計。SLAM技術可以提供視覺里程計功能,並與GPS等其他定位方式相融合,從而滿足無人駕駛精準定位的需求。例如,應用了基於激光雷達技術Google無人駕駛車以及牛津大學MobileRoboticsGroup11年改裝的無人駕駛汽車野貓(Wildcat)均已成功路測。

以上內容參考:slam路徑規劃演算法 - CSDN

閱讀全文

與視覺導航演算法相關的資料

熱點內容
dvd光碟存儲漢子演算法 瀏覽:757
蘋果郵件無法連接伺服器地址 瀏覽:963
phpffmpeg轉碼 瀏覽:672
長沙好玩的解壓項目 瀏覽:145
專屬學情分析報告是什麼app 瀏覽:564
php工程部署 瀏覽:833
android全屏透明 瀏覽:737
阿里雲伺服器已開通怎麼辦 瀏覽:803
光遇為什麼登錄時伺服器已滿 瀏覽:302
PDF分析 瀏覽:486
h3c光纖全工半全工設置命令 瀏覽:143
公司法pdf下載 瀏覽:382
linuxmarkdown 瀏覽:350
華為手機怎麼多選文件夾 瀏覽:683
如何取消命令方塊指令 瀏覽:350
風翼app為什麼進不去了 瀏覽:779
im4java壓縮圖片 瀏覽:362
數據查詢網站源碼 瀏覽:151
伊克塞爾文檔怎麼進行加密 瀏覽:892
app轉賬是什麼 瀏覽:163