0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

一文詳解SLAM關(guān)鍵技術(shù)

新機(jī)器視覺 ? 來(lái)源: 我想我思 ? 2023-09-20 10:59 ? 次閱讀

來(lái)源:我想我思

SLAM(Simultaneous Localization and Mapping)同步定位與地圖構(gòu)建,一種同時(shí)實(shí)現(xiàn)設(shè)備自身定位和環(huán)境地圖構(gòu)建的技術(shù)。

原理是使用相機(jī)、激光雷達(dá)、慣性測(cè)量單元等傳感器,來(lái)收集環(huán)境信息,然后用算法將這些信息融合起來(lái),以確定設(shè)備在未知環(huán)境中的位置,并構(gòu)建一張環(huán)境地圖。

通俗解釋為:

用眼睛觀察周圍地標(biāo)如建筑、大樹、花壇等,并記住他們的特征(特征提取)

在自己的腦海中,根據(jù)雙目獲得的信息,把特征地標(biāo)在三維地圖中重建出來(lái)(三維重建)

當(dāng)自己在行走時(shí),不斷獲取新的特征地標(biāo),并且校正自己頭腦中的地圖模型(bundle adjustment or EKF)

根據(jù)自己前一段時(shí)間行走獲得的特征地標(biāo),確定自己的位置(trajectory)

當(dāng)無(wú)意中走了很長(zhǎng)一段路的時(shí)候,和腦海中的以往地標(biāo)進(jìn)行匹配,看一看是否走回了原路(loop-closure detection)。

SLAM包括以下幾個(gè)方面

傳感器:激光雷達(dá)、攝像頭、慣性測(cè)量單元(IMU)、里程計(jì)等。這些傳感器可以提供設(shè)備在運(yùn)動(dòng)過(guò)程中所需要的信息,如距離、角度、速度、方向等。

設(shè)備運(yùn)動(dòng)模型:運(yùn)動(dòng)模型用于估計(jì)設(shè)備的位姿,例如里程計(jì)模型、速度模型、加速度模型等。

視覺算法:視覺算法主要用于設(shè)備在環(huán)境中的感知和定位,如特征提取、特征匹配、圖像配準(zhǔn)等。

濾波算法:濾波算法用于估計(jì)設(shè)備的位姿和地圖中不同位置的概率分布,如卡爾曼濾波器、粒子濾波器等。

優(yōu)化算法:優(yōu)化算法用于優(yōu)化設(shè)備的位姿和地圖,如擴(kuò)展信息濾波器、位姿圖優(yōu)化等。

地圖表示:地圖表示方式可以有多種,如柵格地圖、拓?fù)涞貓D、點(diǎn)云地圖等。

常用的SLAM傳感器

激光雷達(dá):激光雷達(dá)是一種通過(guò)發(fā)射激光束來(lái)探測(cè)目標(biāo)并測(cè)量距離的傳感器。它可以提供高精度、高分辨率的距離和角度信息,被廣泛應(yīng)用于SLAM中。

攝像頭:攝像頭可以通過(guò)拍攝環(huán)境中的圖像來(lái)獲取場(chǎng)景的信息,如特征點(diǎn)、輪廓等。在SLAM中,攝像頭可以用于實(shí)現(xiàn)視覺SLAM或者輔助其他傳感器進(jìn)行定位。攝像頭種類有單目、雙目、單目結(jié)構(gòu)光、雙目結(jié)構(gòu)光、ToF。

慣性測(cè)量單元(IMU):IMU可以測(cè)量機(jī)器人的加速度和角速度等信息,通過(guò)積分可以得到機(jī)器人的位姿信息。IMU通常與其他傳感器結(jié)合使用,用于實(shí)現(xiàn)多傳感器融合。

里程計(jì):里程計(jì)是一種通過(guò)測(cè)量輪子旋轉(zhuǎn)的信息來(lái)推算機(jī)器人位移的傳感器。雖然里程計(jì)的精度較低,但在SLAM中仍然是一個(gè)非常重要的傳感器。

此外,還有其他一些傳感器,如GPS、磁力計(jì)等,可以用于SLAM中。不同的傳感器有不同的特點(diǎn)和適用場(chǎng)景,根據(jù)具體的應(yīng)用需求選擇合適的傳感器非常重要。

常用的兩種地圖類型

覆蓋柵格地圖(Occupany Grid Map)

一種常見的地圖表示方式,主要用于描述環(huán)境中每個(gè)位置的占據(jù)狀態(tài)。在覆蓋柵格地圖中,環(huán)境被分成一個(gè)個(gè)網(wǎng)格單元,每個(gè)網(wǎng)格單元表示一個(gè)位置,并記錄該位置的占據(jù)狀態(tài),一般用二進(jìn)制值表示,例如0表示空閑,1表示占據(jù)。

覆蓋柵格地圖可以通過(guò)激光雷達(dá)等傳感器獲得環(huán)境中障礙物的位置信息,將障礙物所在的網(wǎng)格單元標(biāo)記為占據(jù)狀態(tài)。同時(shí),通過(guò)機(jī)器人的位姿信息,可以將機(jī)器人所在的網(wǎng)格單元標(biāo)記為占據(jù)狀態(tài),并在地圖中繪制出機(jī)器人的軌跡。

覆蓋柵格地圖的優(yōu)點(diǎn)在于簡(jiǎn)單、易于實(shí)現(xiàn)和可視化,可以用于快速構(gòu)建地圖和進(jìn)行導(dǎo)航。但是,由于覆蓋柵格地圖要求環(huán)境被劃分為網(wǎng)格單元,因此地圖的精度和分辨率可能會(huì)受到限制。同時(shí),覆蓋柵格地圖還需要消耗大量的存儲(chǔ)空間和計(jì)算資源,因?yàn)樾枰S護(hù)大量的網(wǎng)格單元。

需要注意的是,覆蓋柵格地圖只記錄了占據(jù)狀態(tài),并沒有記錄障礙物的形狀和大小等信息。如果需要更精確的地圖表示方式,可以使用其他地圖表示方法,如點(diǎn)云地圖、邊緣地圖等。

點(diǎn)云地圖(Point Cloud Map)

主要用于描述環(huán)境中物體的三維形狀和位置信息。在點(diǎn)云地圖中,環(huán)境被表示為一組三維點(diǎn)云,每個(gè)點(diǎn)表示一個(gè)位置,并記錄該位置的屬性信息,如顏色、方向量、反射率等。

點(diǎn)云地圖可以通過(guò)激光雷達(dá)、攝像頭等傳感器獲得環(huán)境中物體的位置和形狀信息,通過(guò)點(diǎn)云配準(zhǔn)和濾波等算法,可以將多個(gè)點(diǎn)云融合成一個(gè)完整的地圖,用于機(jī)器人的定位、導(dǎo)航和避障等任務(wù)。

相對(duì)于覆蓋柵格地圖等二維地圖表示方式,點(diǎn)云地圖的優(yōu)點(diǎn)在于可以提供更加真實(shí)的環(huán)境信息,可以描述物體的三維形狀和位置信息,同時(shí)也可以用于識(shí)別和分類物體。但是,點(diǎn)云地圖的缺點(diǎn)在于數(shù)據(jù)量較大,需要消耗大量的存儲(chǔ)空間和計(jì)算資源,同時(shí)對(duì)點(diǎn)云數(shù)據(jù)的處理和配準(zhǔn)等算法也比較復(fù)雜。

需要注意的是,點(diǎn)云地圖的精度和分辨率取決于傳感器的精度和采樣率等因素,而點(diǎn)云地圖的質(zhì)量對(duì)機(jī)器人的定位和導(dǎo)航等任務(wù)影響很大,因此需要對(duì)點(diǎn)云地圖進(jìn)行精細(xì)的處理和優(yōu)化。

SLAM工作原理

不同的SLAM算法,實(shí)現(xiàn)的具體細(xì)節(jié)會(huì)有所不同,但一般都包含前端和后端。

前端:

從傳感器中獲取原始數(shù)據(jù),并將這些數(shù)據(jù)與已有地圖進(jìn)行關(guān)聯(lián),從而確定機(jī)器人軌跡的過(guò)程。

數(shù)據(jù)采集:通過(guò)傳感器獲取機(jī)器人周圍環(huán)境的數(shù)據(jù),如激光點(diǎn)云數(shù)據(jù)、圖像數(shù)據(jù)等。

數(shù)據(jù)時(shí)空同步:將從不同傳感器或不同時(shí)間戳接收到的數(shù)據(jù)進(jìn)行同步,以便后續(xù)配準(zhǔn)。

特征提?。簭牟杉臄?shù)據(jù)中提取用于建圖的特征點(diǎn),如關(guān)鍵點(diǎn)、特征描述等。

數(shù)據(jù)融合:將不同傳感器獲取的數(shù)據(jù)融合起來(lái),提高建圖的準(zhǔn)確性和穩(wěn)定性。

數(shù)據(jù)關(guān)聯(lián):將當(dāng)前幀的特征與之前的地圖,或者其他幀之間的特征進(jìn)行匹配,以確定機(jī)器人的運(yùn)動(dòng)軌跡。

運(yùn)動(dòng)估計(jì):通過(guò)數(shù)據(jù)關(guān)聯(lián)得到機(jī)器人的運(yùn)動(dòng)軌跡,可以是平移、旋轉(zhuǎn)等運(yùn)動(dòng)。

后端:

根據(jù)前端獲取的運(yùn)動(dòng)軌跡和地圖信息,對(duì)機(jī)器人的狀態(tài)、地圖和傳感器誤差等進(jìn)行估計(jì)和優(yōu)化的過(guò)程。

非線性優(yōu)化:通過(guò)非線性最小二乘法等,對(duì)機(jī)器人姿態(tài)和地圖進(jìn)行優(yōu)化,使得機(jī)器人的位置和地圖更加準(zhǔn)確。

回環(huán)檢測(cè):識(shí)別機(jī)器人經(jīng)過(guò)的相似位置,避免累積誤差的產(chǎn)生。可以有效降低機(jī)器人的定位誤差,提高SLAM算法的精度和魯棒性。

根據(jù)傳感器的不同,SLAM算法可以分為二維激光SLAM、三維激光SLAM,以及視覺SLAM。

二維激光SLAM常用的有Cartographer、Karto,三維激光SLAM較流行的是LIO-SAM和LOAM系列,視覺SLAM主流的方案為ORB-SLAM3、VINS-Fusion

激光SLAM

激光SLAM發(fā)展已相對(duì)較為成熟,它的研究?jī)?nèi)容主要包括:傳感器數(shù)據(jù)處理、前端配準(zhǔn)方法、回環(huán)檢測(cè)、后端優(yōu)化、圖優(yōu)化、已知定位的建圖、3D激光與視覺融合、多傳感器融合。

光探測(cè)與測(cè)距(激光雷達(dá))方法主要使用激光傳感器(或距離傳感器)。對(duì)比相機(jī)、ToF 和其他傳感器,激光可以使精確度大大提高,常用于自動(dòng)駕駛汽車和無(wú)人機(jī)等高速移動(dòng)運(yùn)載設(shè)備的相關(guān)應(yīng)用。激光傳感器的輸出值一般是二維 (x, y) 或三維 (x, y, z) 點(diǎn)云數(shù)據(jù)。激光傳感器點(diǎn)云提供了高精確度距離測(cè)度數(shù)據(jù),特別適用于 SLAM 建圖。一般來(lái)說(shuō),首先通過(guò)點(diǎn)云匹配來(lái)連續(xù)估計(jì)移動(dòng)。然后,使用計(jì)算得出的移動(dòng)數(shù)據(jù)(移動(dòng)距離)進(jìn)行車輛定位。對(duì)于激光點(diǎn)云匹配,會(huì)使用迭代最近點(diǎn) (ICP) 和正態(tài)分布變換 (NDT) 等配準(zhǔn)算法。二維或三維點(diǎn)云地圖可以用柵格地圖或體素地圖表示。但就密度而言,點(diǎn)云不及圖像精細(xì),因此并不總能提供充足的特征來(lái)進(jìn)行匹配。例如,在障礙物較少的地方,將難以進(jìn)行點(diǎn)云匹配,因此可能導(dǎo)致跟丟車輛。此外,點(diǎn)云匹配通常需要高處理能力,因此必須優(yōu)化流程來(lái)提高速度。鑒于存在這些挑戰(zhàn),自動(dòng)駕駛汽車定位可能需要融合輪式測(cè)距、全球?qū)Ш叫l(wèi)星系統(tǒng) (GNSS) 和 IMU 數(shù)據(jù)等其他測(cè)量結(jié)果。倉(cāng)儲(chǔ)機(jī)器人等應(yīng)用場(chǎng)景通常采用二維激光雷達(dá) SLAM,而三維激光雷達(dá)點(diǎn)云 SLAM 則可用于無(wú)人機(jī)和自動(dòng)駕駛。

視覺SLAM

使用從相機(jī)和其他圖像傳感器采集的圖像。視覺 SLAM 可以使用普通相機(jī)(廣角、魚眼和球形相機(jī))、復(fù)眼相機(jī)(立體相機(jī)和多相機(jī))和 RGB-D 相機(jī)(深度相機(jī)和 ToF 相機(jī))。視覺 SLAM 所需的相機(jī)價(jià)格相對(duì)低廉,因此實(shí)現(xiàn)成本較低。此外,相機(jī)可以提供大量信息,因此還可以用來(lái)檢測(cè)路標(biāo)(即之前測(cè)量過(guò)的位置)。路標(biāo)檢測(cè)還可以與基于圖的優(yōu)化結(jié)合使用,這有助于靈活實(shí)現(xiàn) SLAM。使用單個(gè)相機(jī)作為唯一傳感器的 vSLAM 稱為單目 SLAM,此時(shí)難以定義深度。這個(gè)問(wèn)題可以通過(guò)以下方式解決:檢測(cè)待定位圖像中的 AR 標(biāo)記、棋盤格或其他已知目標(biāo),或者將相機(jī)信息與其他傳感器信息融合,例如測(cè)量速度和方向等物理量的慣性測(cè)量單元 (IMU) 信息。vSLAM 相關(guān)的技術(shù)包括運(yùn)動(dòng)重建 (SfM)、視覺測(cè)距和捆綁調(diào)整。視覺 SLAM 算法可以大致分為兩類。稀疏方法:匹配圖像的特征點(diǎn)并使用 PTAM 和 ORB-SLAM 等算法。稠密方法:使用圖像的總體亮度以及 DTAM、LSD-SLAM、DSO 和 SVO 等算法。

18e673b8-568e-11ee-939d-92fbcf53809c.png

視覺SLAM整體流程大致可以概括為五步:

(1)傳感器信息讀取

在視覺SLAM中主要為相機(jī)圖像信息的讀取和預(yù)處理。如果是在機(jī)器人中,還可能有碼盤、慣性傳感器等信息的讀取和同步。

(2)視覺里程計(jì) (Visual Odometry,VO)

視覺里程計(jì)的任務(wù)是估算相鄰圖像間相機(jī)的運(yùn)動(dòng),以及局部地圖的樣子。VO又稱為前端(FrontEnd)。

(3)后端優(yōu)化(Optimization)

后端接受不同時(shí)刻視覺里程計(jì)測(cè)量的相機(jī)位姿,以及回環(huán)檢測(cè)的信息,對(duì)它們進(jìn)行優(yōu)化,得到全局一致的軌跡和地圖。由于接在VO之后,又稱為后端(Back End)。

(4)回環(huán)檢測(cè)(Loop Closing)

回環(huán)檢測(cè)判斷機(jī)器人是否到達(dá)過(guò)先前的位置。如果檢測(cè)到回環(huán),它會(huì)把信息提供給后端進(jìn)行處理。

(5)建圖(Mapping)

它根據(jù)估計(jì)的軌跡,建立與任務(wù)要求對(duì)應(yīng)的地圖。

其整體流程圖大致如下

18f69c02-568e-11ee-939d-92fbcf53809c.png

SLAM算法實(shí)現(xiàn)4要素

地圖表示,比如dense和sparse都是它的不同表達(dá)方式,這個(gè)需要根據(jù)實(shí)際場(chǎng)景需求去抉擇

信息感知,需要考慮如何全面的感知這個(gè)環(huán)境,RGBD攝像頭FOV通常比較小,但激光雷達(dá)比較大

數(shù)據(jù)關(guān)聯(lián),不同的sensor的數(shù)據(jù)類型、時(shí)間戳、坐標(biāo)系表達(dá)方式各有不同,需要統(tǒng)一處理

定位與構(gòu)圖,就是指怎么實(shí)現(xiàn)位姿估計(jì)和建模,這里面涉及到很多數(shù)學(xué)問(wèn)題,物理模型建立,狀態(tài)估計(jì)和優(yōu)化

其他的還有回環(huán)檢測(cè)問(wèn)題,探索問(wèn)題(exploration),以及綁架問(wèn)題(kidnapping)。

6大主流SLAM算法

Cartographer

由谷歌開發(fā)的一款基于激光雷達(dá)和RGB-D相機(jī)數(shù)據(jù)的SLAM算法??梢钥缙脚_(tái)使用,支持Lidar、IMU、Odemetry、GPS、Landmark等多種傳感器配置,被廣泛用于機(jī)器人導(dǎo)航、自動(dòng)駕駛等領(lǐng)域。

1905da32-568e-11ee-939d-92fbcf53809c.png

Cartographer系統(tǒng)架構(gòu)圖

Cartographer算法在前端完成占據(jù)柵格地圖的構(gòu)建,得出激光雷達(dá)掃描幀的最佳位姿后,將掃描幀插入到子地圖Submap中,得到局部?jī)?yōu)化的子地圖并記錄位姿。

后端根據(jù)掃描幀間的位姿關(guān)系進(jìn)行全局的地圖優(yōu)化,并使用分支定界法加速求解,進(jìn)而得出閉環(huán)掃描幀在全局地圖中的最佳位姿。

Karto

一種基于位姿圖優(yōu)化的SLAM方法,使用了高度優(yōu)化和非迭代的cholesky矩陣對(duì)系統(tǒng)進(jìn)行解耦并求解。適用于各種室內(nèi)環(huán)境,可以處理靜態(tài)和動(dòng)態(tài)障礙物。

19143758-568e-11ee-939d-92fbcf53809c.png

Karto系統(tǒng)架構(gòu)圖

Karto使用圖論的標(biāo)準(zhǔn)形式表示地圖,其中每個(gè)節(jié)點(diǎn)代表了移動(dòng)機(jī)器人運(yùn)行軌跡上的一個(gè)位姿點(diǎn),以及當(dāng)前位姿下傳感器返回的感知信息。

節(jié)點(diǎn)之間的邊,代表了相鄰機(jī)器人位姿之間的位移矢量。對(duì)每一個(gè)新的位姿點(diǎn)定位,需要節(jié)點(diǎn)間匹配關(guān)系和邊帶來(lái)的約束,保持定位估計(jì)誤差的前后一致。

LIO-SAM

一種新型的激光慣性導(dǎo)航系統(tǒng),結(jié)合了激光雷達(dá)和慣性測(cè)量單元數(shù)據(jù),可以實(shí)現(xiàn)機(jī)器人的高精度定位和運(yùn)動(dòng)軌跡的建圖。

192390f4-568e-11ee-939d-92fbcf53809c.png

LIO-SAM系統(tǒng)架構(gòu)圖

前端在傳統(tǒng)的LIDAR-SLAM基礎(chǔ)上,利用卡爾曼濾波和因子圖優(yōu)化算法,將激光雷達(dá)和IMU數(shù)據(jù)融合,進(jìn)一步提高機(jī)器人的定位精度和建圖效果。后端加入優(yōu)化算法,使得機(jī)器人的定位精度和建圖精度都得到極大提升。

LOAM系列

一種成熟的基于激光雷達(dá)的SLAM算法,包括LOAM、LOAM-Velodyne、LOAM-LiDAR等。

其中LOAM使用3D激光雷達(dá)的數(shù)據(jù)來(lái)進(jìn)行建圖和定位,利用點(diǎn)云數(shù)據(jù)的特征,如空間聚類、連續(xù)性約束等來(lái)估計(jì)位姿。

1935ae06-568e-11ee-939d-92fbcf53809c.png

LOAM系統(tǒng)架構(gòu)圖

LOAM-Velodyne則使用Velodyne激光雷達(dá)的3D點(diǎn)云數(shù)據(jù),以實(shí)現(xiàn)更高精度的地圖重建和定位;LOAM-LiDAR采用LiDAR傳感器來(lái)進(jìn)行建圖和定位,可以高效獲取目標(biāo)物體的三維坐標(biāo)信息,在一些機(jī)器人應(yīng)用場(chǎng)景具有很大的優(yōu)勢(shì)。

基于LOAM系統(tǒng)的地圖構(gòu)建局部

ORB-SLAM3

當(dāng)前最優(yōu)秀的基于特征點(diǎn)的視覺SLAM系統(tǒng)之一,支持單目、雙目、RGB-D等多種相機(jī)模式,在特征提取、關(guān)鍵幀選取、地圖維護(hù)、位姿優(yōu)化等方面進(jìn)行了優(yōu)化,并能建立短期、中期和長(zhǎng)期的數(shù)據(jù)關(guān)聯(lián),使得該系統(tǒng)兼具精度和魯棒性。

196c235a-568e-11ee-939d-92fbcf53809c.png

ORB-SLAM3系統(tǒng)架構(gòu)圖

前端視覺里程計(jì)基于ORB特征,建立圖像幀之間特征點(diǎn)的數(shù)據(jù)關(guān)聯(lián),以及圖像特征點(diǎn)和地圖點(diǎn)之間3D到2D的數(shù)據(jù)關(guān)聯(lián),具有較好的魯棒性和提取效率,回環(huán)檢測(cè)和重定位也基于ORB特征實(shí)現(xiàn)。

VINS-Fusion

一種基于視覺慣性傳感器的視覺SLAM算法。它將視覺和慣性信息進(jìn)行融合,來(lái)提高機(jī)器人在未知環(huán)境下的定位和導(dǎo)航能力。

19829a90-568e-11ee-939d-92fbcf53809c.png

VINS-Fusion系統(tǒng)架構(gòu)圖

前端和后端之間通過(guò)一個(gè)狀態(tài)傳遞機(jī)制來(lái)交換數(shù)據(jù)。前端將IMU和圖像數(shù)據(jù)合并,生成一組狀態(tài)量,然后將其傳遞給后端進(jìn)行融合和優(yōu)化;后端將優(yōu)化后的狀態(tài)量傳遞回前端,以便更新機(jī)器人的運(yùn)動(dòng)估計(jì)。

SLAM方案選擇

1. 二維SLAM就適合在二維平面上運(yùn)動(dòng)的機(jī)器人,如掃地機(jī)、配送機(jī)器人、迎賓機(jī)器人等。

具體來(lái)看,Cartographer的總體表現(xiàn)最為優(yōu)秀,定位精度和建圖質(zhì)量都很高,同時(shí)魯棒性也很強(qiáng),能承受一定的噪聲和漂移干擾,可以應(yīng)用于大范圍建圖;Karto適合建圖面積不是太大的低成本應(yīng)用場(chǎng)景,可以在一定程度上滿足建圖需求,同時(shí)工程實(shí)現(xiàn)難度也不太高。

2. 三維SLAM則適用于機(jī)器人需要在三維空間中進(jìn)行建模和定位的場(chǎng)景,比如無(wú)人機(jī)在室外飛行、機(jī)器人在戶外環(huán)境中進(jìn)行探測(cè)等。

其中,LIO-SAM的魯棒性和實(shí)時(shí)性表現(xiàn)相對(duì)優(yōu)秀,適用于建圖面積和硬件資源有限的小型機(jī)器人應(yīng)用場(chǎng)景;在建圖面積和魯棒性方面比較弱的LOAM方案,適用于小而快速的機(jī)器人及小型場(chǎng)景的定位、建圖任務(wù)。

3.視覺SLAM通過(guò)攝像頭等可視傳感器來(lái)獲取機(jī)器人與環(huán)境之間的相對(duì)位置關(guān)系,不需要其他傳感器,更為輕量化。但對(duì)于光照變化、運(yùn)動(dòng)模糊等情況的處理仍存在挑戰(zhàn)。

定位精度和實(shí)時(shí)性都比較高的ORB-SLAM3,面對(duì)場(chǎng)景變化能夠快速適應(yīng),適用于多種場(chǎng)景的建圖。與之相比,VINS-Fusion適用于對(duì)定位精度要求較高,且建圖面積相對(duì)較小的機(jī)器人應(yīng)用場(chǎng)景。

199b3eec-568e-11ee-939d-92fbcf53809c.png

總的來(lái)說(shuō),這些算法各有優(yōu)劣,如何選擇最合適的算法,需要根據(jù)具體的應(yīng)用場(chǎng)景和實(shí)際需求來(lái)綜合考慮。

SLAM應(yīng)用場(chǎng)景

隨著計(jì)算機(jī)處理速度顯著提升,且相機(jī)和激光測(cè)距儀等低成本傳感器大為普及,SLAM技術(shù)廣泛應(yīng)用于機(jī)器人、AR、VR、無(wú)人機(jī)、自動(dòng)駕駛等領(lǐng)域。

使用SLAM的掃地機(jī)器人可以使用滾輪轉(zhuǎn)數(shù)以及來(lái)自相機(jī)和其他成像傳感器的數(shù)據(jù)來(lái)確定移動(dòng)位置。機(jī)器人還可以同步使用相機(jī)和其他傳感器創(chuàng)建其周圍障礙物的地圖,避免同一區(qū)域清潔兩次。即實(shí)現(xiàn)了定位和構(gòu)圖,從而保證了機(jī)器人可以按軌跡運(yùn)動(dòng),同時(shí)也降低了設(shè)備功耗。

SLAM 還用于許多其他應(yīng)用場(chǎng)景:

利用一個(gè)小攝像頭實(shí)現(xiàn)VR頭顯空間定位;

讓一隊(duì)移動(dòng)機(jī)器人在倉(cāng)庫(kù)中移動(dòng)并整理貨架;

讓自動(dòng)駕駛汽車停泊到空車位;

讓無(wú)人機(jī)在未知環(huán)境中完成送貨、無(wú)人機(jī)空中陣列表演等等。

SLAM面臨的挑戰(zhàn)

雖然 SLAM 已在某些場(chǎng)景下投入實(shí)際應(yīng)用,但是仍面臨諸多技術(shù)挑戰(zhàn)

(1)定位誤差累積,導(dǎo)致與實(shí)際值產(chǎn)生偏差

SLAM會(huì)估計(jì)連續(xù)移動(dòng),并容許一定的誤差。但是誤差會(huì)隨著時(shí)間累積,導(dǎo)致與實(shí)際值產(chǎn)生明顯偏差。誤差還會(huì)導(dǎo)致地圖數(shù)據(jù)瓦解或失真,讓后續(xù)搜索變得困難。我們來(lái)看一個(gè)繞正方形通道行駛的例子。隨著誤差累積,機(jī)器人的起點(diǎn)和終點(diǎn)對(duì)不上了。這稱為閉環(huán)問(wèn)題。這類位姿估計(jì)誤差不可避免。我們必須設(shè)法檢測(cè)到閉環(huán),并確定如何修正或抵消累積的誤差。對(duì)策之一是記住之前到過(guò)的某處的某些特征,將其作為路標(biāo),從而最小化定位誤差。構(gòu)建位姿圖有助于修正誤差。將誤差最小化問(wèn)題視為優(yōu)化問(wèn)題進(jìn)行求解,以生成更準(zhǔn)確的地圖數(shù)據(jù)。這種優(yōu)化在視覺 SLAM 中稱為捆綁調(diào)整。

(2)定位失敗,地圖上的位置丟失

圖像和點(diǎn)云建圖不考慮機(jī)器人的移動(dòng)特征。在某些情況下,這種方法會(huì)生成不連續(xù)的位置估計(jì)。例如,可能會(huì)有計(jì)算結(jié)果顯示,以 1 米/秒速度移動(dòng)的機(jī)器人突然向前“瞬移”了 10 米。避免這種定位失敗的辦法有兩種:一是使用恢復(fù)算法;二是將運(yùn)動(dòng)模型與多個(gè)傳感器融合,以基于傳感器數(shù)據(jù)計(jì)算。有多種方法可以實(shí)現(xiàn)運(yùn)動(dòng)模型的傳感器融合。一種常見方法是使用卡爾曼濾波進(jìn)行定位。由于大部分差速驅(qū)動(dòng)機(jī)器人和四輪車輛一般都使用非線性運(yùn)動(dòng)模型,因此通常會(huì)使用擴(kuò)展卡爾曼濾波器和粒子濾波器(蒙特卡羅定位)。某些情況下,也可以使用無(wú)跡卡爾曼濾波器等更加靈活的貝葉斯濾波器。一些常用傳感器是慣性測(cè)量裝置,例如慣性測(cè)量單元 (IMU)、航姿參考系統(tǒng) (AHRS)、慣性導(dǎo)航系統(tǒng) (INS)、加速度計(jì)傳感器、陀螺儀傳感器和磁力傳感器。安裝到車輛的輪式編碼器通常用于測(cè)距。定位失敗時(shí),一種恢復(fù)對(duì)策是記住之前經(jīng)過(guò)的某個(gè)位置的關(guān)鍵幀,將其作為路標(biāo)。搜索路標(biāo)時(shí),會(huì)以特定方法進(jìn)行特征提取以便高速掃描。有些方法基于圖像特征,例如特征袋 (BoF) 和視覺詞袋 (BoVW)。近年來(lái),人們也使用深度學(xué)習(xí)來(lái)比較特征距離。

(3)圖像處理、點(diǎn)云處理和優(yōu)化帶來(lái)高計(jì)算成本

在車輛硬件上實(shí)現(xiàn) SLAM 時(shí),計(jì)算成本是個(gè)問(wèn)題。計(jì)算通常在處理能力有限的緊湊型低功耗嵌入式微處理器上執(zhí)行。為了實(shí)現(xiàn)準(zhǔn)確定位,必須高頻率執(zhí)行圖像處理和點(diǎn)云匹配。此外,閉環(huán)等優(yōu)化計(jì)算都是高成本計(jì)算流程。此處的挑戰(zhàn)在于如何在嵌入式微處理器上執(zhí)行這種高成本處理。對(duì)策之一是并行運(yùn)行多個(gè)不同流程。例如,用于匹配流程前處理的特征提取就相對(duì)適合并行運(yùn)行。使用多核 CPU 進(jìn)行處理時(shí),單指令多數(shù)據(jù) (SIMD) 計(jì)算和嵌入式 GPU 在某些情況下可以進(jìn)一步提升速度。而且,由于位姿圖優(yōu)化可以在相對(duì)長(zhǎng)的周期里執(zhí)行,降低其優(yōu)先級(jí)并以規(guī)律間隔執(zhí)行也能提高性能。

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 傳感器
    +關(guān)注

    關(guān)注

    2542

    文章

    50241

    瀏覽量

    750092
  • 攝像頭
    +關(guān)注

    關(guān)注

    59

    文章

    4772

    瀏覽量

    95095
  • SLAM
    +關(guān)注

    關(guān)注

    23

    文章

    411

    瀏覽量

    31738
  • 激光雷達(dá)
    +關(guān)注

    關(guān)注

    967

    文章

    3886

    瀏覽量

    189193

原文標(biāo)題:一文讀懂SLAM關(guān)鍵技術(shù)

文章出處:【微信號(hào):vision263com,微信公眾號(hào):新機(jī)器視覺】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    單片機(jī)關(guān)鍵技術(shù)基礎(chǔ)詳解

    單片機(jī)被廣泛應(yīng)用于工業(yè)控制,家電,消費(fèi)電子,醫(yī)療電子,儀表測(cè)量等領(lǐng)域,為應(yīng)廣大初級(jí)電子工程師/單片機(jī)愛好者之需,電子發(fā)燒友隆重策劃整合推出《單片機(jī)關(guān)鍵技術(shù)基礎(chǔ)詳解
    發(fā)表于 02-14 15:35 ?1.1w次閱讀
    單片機(jī)<b class='flag-5'>關(guān)鍵技術(shù)</b>基礎(chǔ)<b class='flag-5'>詳解</b>(<b class='flag-5'>一</b>)

    讀懂RRU關(guān)鍵技術(shù)

    RRU都有哪些關(guān)鍵技術(shù)?影響RRU性能的關(guān)鍵指標(biāo)有哪些?本文對(duì)此進(jìn)行簡(jiǎn)單的分析。
    的頭像 發(fā)表于 10-09 10:04 ?3.3w次閱讀
    <b class='flag-5'>一</b><b class='flag-5'>文</b>讀懂RRU<b class='flag-5'>關(guān)鍵技術(shù)</b>

    汽車總線及其關(guān)鍵技術(shù)的研究

    汽車總線及其關(guān)鍵技術(shù)的研究
    發(fā)表于 07-10 11:33

    CDMA原理與關(guān)鍵技術(shù)

    CDMA原理與關(guān)鍵技術(shù)
    發(fā)表于 08-16 20:25

    詳解5G的六大關(guān)鍵技術(shù)

    過(guò)程中會(huì)遇到哪些問(wèn)題?在5G研發(fā)剛起步的情況下,如何建立套全面的5G關(guān)鍵技術(shù)評(píng)估指標(biāo)體系和評(píng)估方法,實(shí)現(xiàn)客觀有效的第三方評(píng)估,服務(wù)技術(shù)與資源管理的發(fā)展需要,同樣是當(dāng)前5G技術(shù)發(fā)展所面
    發(fā)表于 12-07 18:40

    SLAM技術(shù)的應(yīng)用及發(fā)展現(xiàn)狀

    近年來(lái),由于掃地機(jī)的出現(xiàn)使得SLAM技術(shù)名聲大噪,如今,已在機(jī)器人、無(wú)人機(jī)、AVG等領(lǐng)域相繼出現(xiàn)它的身影,今天就來(lái)跟大家聊聊國(guó)內(nèi)SLAM的發(fā)展現(xiàn)狀。
    發(fā)表于 12-06 10:25

    物聯(lián)網(wǎng)的關(guān)鍵技術(shù)有哪些

    物聯(lián)網(wǎng)關(guān)鍵技術(shù)————傳感器技術(shù)
    發(fā)表于 06-16 17:25

    McWiLL系統(tǒng)的關(guān)鍵技術(shù)/優(yōu)勢(shì)及應(yīng)用

    McWiLL系統(tǒng)概述McWiLL系統(tǒng)的關(guān)鍵技術(shù)McWiLL系統(tǒng)的優(yōu)勢(shì)McWiLL系統(tǒng)的應(yīng)用
    發(fā)表于 11-24 06:57

    請(qǐng)問(wèn)下LTE有哪些關(guān)鍵技術(shù)?

    LTE有哪些關(guān)鍵技術(shù)
    發(fā)表于 05-21 06:14

    智能通信終端有哪些關(guān)鍵技術(shù)?

    智能通信終端有哪些關(guān)鍵技術(shù)
    發(fā)表于 05-26 07:04

    MIMO-OFDM中有哪些關(guān)鍵技術(shù)?

    本文介紹了MIMO-OFDM技術(shù)中的關(guān)鍵技術(shù),如信道估計(jì)、同步、分集技術(shù)和空時(shí)編碼等。
    發(fā)表于 05-27 06:05

    POE的關(guān)鍵技術(shù)有哪些?

    使用以太網(wǎng)線供電的優(yōu)勢(shì)是什么?PoE設(shè)備是怎么供電的?POE的關(guān)鍵技術(shù)有哪些?
    發(fā)表于 06-10 09:26

    明白VPP關(guān)鍵技術(shù)有哪些

    隨著人工智能技術(shù)的不斷發(fā)展,越來(lái)越多的行業(yè)開始使用人工智能技術(shù),這也使得智能虛擬代理技術(shù)得到了廣泛的應(yīng)用。為了能夠深入了解智能虛擬代理技術(shù),需要明白VPP
    發(fā)表于 08-31 07:28

    視覺導(dǎo)航關(guān)鍵技術(shù)及應(yīng)用

    由于視覺導(dǎo)航技術(shù)的應(yīng)用越來(lái)越普及 ,因此 ,有必要對(duì)視覺導(dǎo)航中的關(guān)鍵技術(shù)及應(yīng)用進(jìn)行研究。文章對(duì)其中的圖像處理技術(shù)和定位與跟蹤技術(shù)進(jìn)行了詳細(xì)研究 ,并與此相對(duì)應(yīng) ,介紹的相關(guān)的應(yīng)用。
    發(fā)表于 09-25 08:09

    SCSI硬盤的關(guān)鍵技術(shù)點(diǎn)詳解

    SCSI硬盤的關(guān)鍵技術(shù)點(diǎn)詳解   中高端服務(wù)器普遍采用的就是SCSI硬盤了,SCSI硬盤最直觀的優(yōu)點(diǎn)就是快速、穩(wěn)定,與PATA和SATA相比擁有無(wú)可比擬的優(yōu)
    發(fā)表于 01-27 16:56 ?721次閱讀