国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

視覺SLAM:模型介紹、算法框架及應(yīng)用場(chǎng)景

這篇具有很好參考價(jià)值的文章主要介紹了視覺SLAM:模型介紹、算法框架及應(yīng)用場(chǎng)景。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

作者:張長(zhǎng)鴻 湖南大學(xué)

校稿:董亞微

編輯:鄭欣欣@一點(diǎn)人工一點(diǎn)智能

原文地址:視覺SLAM:模型介紹、算法框架及應(yīng)用場(chǎng)景

目錄

01?什么是SLAM

?1.1?相機(jī)模型

1.2?相機(jī)運(yùn)動(dòng)

1.3 建圖

02 SLAM算法框架

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

3.1 自動(dòng)駕駛的高精度定位

3.2 自主移動(dòng)機(jī)器人

知識(shí)擴(kuò)展:

組合導(dǎo)航(GNSS/INS)

二維碼導(dǎo)航/磁導(dǎo)航

3.3 室內(nèi)場(chǎng)景的三維重建:AR(增強(qiáng)現(xiàn)實(shí)技術(shù))等

04? 結(jié)語(yǔ)

參考文獻(xiàn):


本文主要想使用盡量少的專業(yè)詞匯來解釋清楚視覺SLAM是如何進(jìn)行定位的(在某些表述上可能并不嚴(yán)謹(jǐn)),希望對(duì)視覺SLAM有興趣的伙伴能在剛接觸SLAM時(shí)有個(gè)基本的了解,本文同時(shí)介紹了視覺SLAM的經(jīng)典框架和應(yīng)用場(chǎng)景。想要深入學(xué)習(xí)的伙伴,還請(qǐng)參考更專業(yè)更系統(tǒng)的書籍和文獻(xiàn)。

01?什么是SLAM

SLAM(Simultaneous Localization and Mapping),也就是同時(shí)定位與地圖構(gòu)建,它是指搭載特定傳感器的車輛、無人機(jī)等移動(dòng)機(jī)器人,在沒有環(huán)境先驗(yàn)信息(什么是先驗(yàn)信息?可以自己查一下)的情況下,在運(yùn)動(dòng)過程中,估計(jì)自己的運(yùn)動(dòng)狀態(tài),同時(shí)建立環(huán)境模型的一系列任務(wù)。

目前大家接觸比較多的,已經(jīng)將SLAM技術(shù)應(yīng)用于實(shí)際生活中的,就是掃地機(jī)器人了。我們來想一下:掃地機(jī)器人來到一個(gè)陌生的環(huán)境后,是怎樣去清掃一個(gè)垃圾呢?一個(gè)直觀的想法就是機(jī)器人先確定自己的位置,然后確定垃圾相對(duì)于自身的位置,這樣就有了一個(gè)起點(diǎn)和終點(diǎn),機(jī)器人只需要從起點(diǎn)移動(dòng)到終點(diǎn)就能清掃這個(gè)垃圾了。但是這是很直觀的想法,而這個(gè)想法的前提是:我們清楚房間的地圖構(gòu)造,這樣我們才能更好地完成垃圾清掃的任務(wù)。所以掃地機(jī)器人需要完成的流程應(yīng)該是:了解自己周圍的環(huán)境,構(gòu)建房間地圖,確認(rèn)自己與垃圾的位置,然后規(guī)劃路線,移動(dòng)過去,完成清掃。而這整個(gè)流程中,構(gòu)建地圖、進(jìn)行自身的定位,就是咱們SLAM的主要任務(wù)了。

通過這樣一個(gè)小例子,就可以體現(xiàn)出SLAM的作用,通俗地講,SLAM要解決的主要是兩個(gè)問題:

1. 我在什么地方?----定位

2. 周圍環(huán)境是什么樣??----建圖

而根據(jù)傳感器類型的不同,SLAM可以分為不同的類型,如表1所示

視覺slam,SLAM,數(shù)碼相機(jī),人工智能
表1 SLAM類型

本文主要介紹的就是以相機(jī)為傳感器的視覺SLAM。視覺SLAM是根據(jù)一張張連續(xù)輸入的圖像,從中推斷相機(jī)的運(yùn)動(dòng),以及周圍環(huán)境的情況。接下來將介紹相機(jī)模型和相機(jī)運(yùn)動(dòng),我們將看到相機(jī)模型是如何利用已知的圖像信息構(gòu)造觀測(cè)方程,并從觀測(cè)方程解出相機(jī)運(yùn)動(dòng),而獲取相機(jī)運(yùn)動(dòng)后,到此也就完成了定位。我們先從相機(jī)模型開始,一步步推導(dǎo)到最后完成定位。

?1.1?相機(jī)模型

相機(jī)的成像模型表示的是一個(gè)真實(shí)世界中的三維點(diǎn)到圖像二維像素點(diǎn)的對(duì)應(yīng)關(guān)系,即相機(jī)視野中的三維點(diǎn)可以在圖像上找到對(duì)應(yīng)的像素點(diǎn),在不考慮畸變的情況下,單目相機(jī)成像的理想模型為針孔模型,如圖1所示,光心O即鏡頭的中心,光軸即經(jīng)過光心與物理成像平面垂直的直線,f代表焦距,即針孔到物理成像平面的距離,代表在相機(jī)坐標(biāo)系下任意的三維空間點(diǎn),經(jīng)過光心,投影到二維物理成像平面中點(diǎn),每個(gè)三維空間點(diǎn)對(duì)應(yīng)物理成像平面上的一個(gè)像素。

針孔模型通過成像過程中的幾何關(guān)系建立三維世界到二維像素平面的映射關(guān)系,在數(shù)學(xué)上的描述就是一個(gè)函數(shù)關(guān)系式,即

視覺slam,SLAM,數(shù)碼相機(jī),人工智能

,也稱之為觀測(cè)方程。其中,二維像素坐標(biāo),三維空間點(diǎn)坐標(biāo)P,K為相機(jī)內(nèi)參矩陣,由相機(jī)自身的特性決定。

視覺slam,SLAM,數(shù)碼相機(jī),人工智能
圖1 相機(jī)成像模型
視覺slam,SLAM,數(shù)碼相機(jī),人工智能
圖2 三維空間的坐標(biāo)變換

1.2?相機(jī)運(yùn)動(dòng)

了解相機(jī)運(yùn)動(dòng)之前,需要先了解幾個(gè)基本概念:

世界坐標(biāo)系:在視覺SLAM中,通常把拍攝第一張圖像時(shí)的相機(jī)坐標(biāo)系指定為世界坐標(biāo)系,在被指定后不變且唯一,可以將世界坐標(biāo)系理解為笛卡爾坐標(biāo)系中的原點(diǎn)。

相機(jī)坐標(biāo)系:以相機(jī)的光心(小孔)作為原點(diǎn)的坐標(biāo)系,其隨相機(jī)的移動(dòng)而發(fā)生變化。

相機(jī)的運(yùn)動(dòng)是剛體運(yùn)動(dòng),剛體運(yùn)動(dòng)的坐標(biāo)變換可由一個(gè)旋轉(zhuǎn)矩陣(R)和一個(gè)平移向量(t)表示,考慮一個(gè)三維空間點(diǎn)P,P點(diǎn)在世界坐標(biāo)系下的觀測(cè)值為,在相機(jī)坐標(biāo)系下的觀測(cè)值為,點(diǎn)P在不同坐標(biāo)系下的觀測(cè)值轉(zhuǎn)換關(guān)系如下所示:

視覺slam,SLAM,數(shù)碼相機(jī),人工智能

通過以上內(nèi)容的介紹,我們就可以按照以下幾個(gè)步驟了解定位是如何完成的:

(1)視覺SLAM系統(tǒng)輸入的信息是不同時(shí)刻的相機(jī)圖像,我們所要利用的就是圖像的像素信息,假設(shè)在第一幀坐標(biāo)系下,已知某一個(gè)空間點(diǎn),在第一幀圖像和第二幀圖像上的成像點(diǎn)分別是。

(2)通過相機(jī)模型,可以得到如下兩個(gè)觀測(cè)方程,和代表著第一幀坐標(biāo)系到第二幀坐標(biāo)系的旋轉(zhuǎn)和平移視覺slam,SLAM,數(shù)碼相機(jī),人工智能 。

(3)可以根據(jù)8個(gè)這樣的匹配點(diǎn)對(duì),求解上述方程,得到。

(4)即代表著兩個(gè)坐標(biāo)系的轉(zhuǎn)換關(guān)系,通常情況下,第一幀坐標(biāo)系將被定為世界坐標(biāo)系,由于世界坐標(biāo)系是固定不變的,因此就可以得到第二幀相機(jī)坐標(biāo)系的位置和姿態(tài),也即完成了定位,定位也就是獲得任意時(shí)刻的相機(jī)坐標(biāo)系相對(duì)于世界坐標(biāo)系的位置和姿態(tài)。

以上的幾個(gè)步驟是對(duì)問題做了很多簡(jiǎn)化才得到的,實(shí)際情況下考慮的因素要多得多,如相機(jī)類型的差異,相機(jī)運(yùn)動(dòng)表示方法的不同,對(duì)應(yīng)的具體的求解過程都是不同的,需要更深入的研究和學(xué)習(xí)。

1.3 建圖

建圖是指構(gòu)建地圖的過程。地圖是對(duì)環(huán)境的描述,這種描述有很多種形式,要根據(jù)需求的不同構(gòu)建相應(yīng)的地圖,地圖的表現(xiàn)形式,主要被分為度量地圖和拓?fù)涞貓D兩類。在SLAM領(lǐng)域,研究者更關(guān)注度量地圖。

度量地圖強(qiáng)調(diào)精確地表示地圖中物體的位置關(guān)系。度量地圖又分為稠密地圖和稀疏地圖兩類,其中,稀疏地圖僅表示環(huán)境中有代表性的空間點(diǎn),如桌子的邊緣等較容易從圖像中識(shí)別的點(diǎn),而其它不具有代表意義的點(diǎn)則被忽略,稀疏地圖主要用于SLAM的定位。相對(duì)于稀疏地圖,稠密地圖則重建環(huán)境中所有的空間點(diǎn),如桌子的整個(gè)平面,二維的稠密地圖由正方形的網(wǎng)格組成,三維的稠密地圖由立方體的網(wǎng)格組成。通常,一個(gè)小塊含有占據(jù)、空閑、未知三個(gè)狀態(tài),以表達(dá)該網(wǎng)格內(nèi)是否有物體,稠密地圖主要用于機(jī)器人或智能汽車的導(dǎo)航和避障。

02 SLAM算法框架

經(jīng)典的視覺SLAM算法框架如圖3所示,主要包括:傳感器信息讀取,前端(里程計(jì)),后端,回環(huán)檢測(cè)和建圖。需要說明的是,不同類型的SLAM技術(shù)僅在前端的處理有所不同,后端所采用的優(yōu)化算法都是通用的。本節(jié)中出現(xiàn)的專業(yè)名詞會(huì)略多,如果不清楚的話,需要耐心的多讀幾遍,涉及到前沿的研究方向如果感興趣的話,可以找到原文了解一下。

視覺slam,SLAM,數(shù)碼相機(jī),人工智能
圖3 視覺SLAM算法框架

輸入:采集相機(jī)圖像,并進(jìn)行預(yù)處理。

前端(視覺里程計(jì)):根據(jù)短時(shí)間內(nèi)采集到的相機(jī)圖像,計(jì)算相機(jī)的在移動(dòng)機(jī)器人坐標(biāo)系中的位置和姿態(tài),也就是位姿,并建立局部地圖。

前端的主流方法有特征點(diǎn)法(間接法)和直接法兩種。特征點(diǎn)由關(guān)鍵點(diǎn)和描述子兩部分組成,關(guān)鍵點(diǎn)是指該特征點(diǎn)在圖像中的位置,它可以在多幀圖像中被檢測(cè)到,并通過比較描述子來建立配對(duì)關(guān)系,通過最小化重投影誤差來優(yōu)化相機(jī)位姿,最經(jīng)典的間接法是orb-SLAM2。直接法沒有特征提取的步驟,直接利用像素的灰度信息,通過最小化像素的光度誤差來優(yōu)化位姿,最經(jīng)典的直接法是DSO。

間接法和直接法的理論基礎(chǔ)已經(jīng)較為完善,目前的改進(jìn)方向就是在已有的理論框架中增加先驗(yàn)約束如:尺度約束,平面特征約束,平行線特征約束等,2022年美團(tuán)在ICRA學(xué)術(shù)會(huì)議上發(fā)表的工作《EDPLVO:Efficient Direct Point-Line Visual Odometry》即對(duì)前端做了改進(jìn),將線特征擴(kuò)展到直接法中,獲得了最佳導(dǎo)航論文獎(jiǎng)。

后端:根據(jù)不同時(shí)刻視覺里程計(jì)計(jì)算的相機(jī)位姿,3維地圖點(diǎn)和回環(huán)檢測(cè)信息,對(duì)位姿和3維地圖點(diǎn)進(jìn)行全局的優(yōu)化,后端處理的是SLAM過程中的噪聲問題,在數(shù)學(xué)上被建模為最大后驗(yàn)概率估計(jì)問題來解決,主流的方法有以擴(kuò)展卡爾曼濾波為代表的濾波器方法和非線性優(yōu)化方法。濾波器方法形式更簡(jiǎn)潔,適用于計(jì)算資源受限的場(chǎng)景。非線性優(yōu)化方法能更精確的優(yōu)化相機(jī)位姿和地圖點(diǎn)位置,但計(jì)算時(shí)間更長(zhǎng),所需計(jì)算資源更多。

回環(huán)檢測(cè):判斷機(jī)器人是否到達(dá)過先前的位置,如果檢測(cè)到回環(huán),可以提供時(shí)隔更加久遠(yuǎn)的約束,可以消除累積誤差,主要是通過圖像之間的相似性來判斷,最經(jīng)典的方法是詞袋模型。隨著深度學(xué)習(xí)的快速發(fā)展,基于CNN(卷積神經(jīng)網(wǎng)絡(luò))和RNN(循環(huán)神經(jīng)網(wǎng)絡(luò))的方法可以有效提高回環(huán)檢測(cè)的效率。

建圖:根據(jù)估計(jì)的軌跡,建立與任務(wù)要求對(duì)應(yīng)的地圖。對(duì)于SLAM來說,地圖是用來輔助定位的,但對(duì)于導(dǎo)航、避障和三維重建等任務(wù)來說,地圖在其中扮演著更重要的角色,為了完成不同的任務(wù),地圖的形式也是不同的,常見的地圖類型包括占據(jù)網(wǎng)格地圖、八叉樹地圖、語(yǔ)義地圖等

以上是視覺SLAM發(fā)展近20年所形成的經(jīng)典框架,是研究者們多年工作的結(jié)晶,也是我們開展自己研究的基礎(chǔ),對(duì)于視覺SLAM這個(gè)領(lǐng)域來說,目前越來越多的工作是結(jié)合深度學(xué)習(xí)開展的,包括語(yǔ)義分割網(wǎng)絡(luò)、深度估計(jì)網(wǎng)絡(luò)、注意力機(jī)制等,這些網(wǎng)絡(luò)可以與視覺SLAM的許多環(huán)節(jié)相結(jié)合,如特征提取和匹配、深度估計(jì)、姿態(tài)估計(jì)和重定位等,來提高視覺SLAM的整體性能,當(dāng)然結(jié)合深度學(xué)習(xí)的視覺SLAM技術(shù)現(xiàn)在還不夠成熟,確定做視覺SLAM的伙伴,不妨一試哦~

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

這部分將主要介紹SLAM的三大應(yīng)用場(chǎng)景:自動(dòng)駕駛的高精度定位、自主移動(dòng)機(jī)器人和室內(nèi)場(chǎng)景的三維重建。在不同場(chǎng)景下,對(duì)算法的精度,計(jì)算資源和計(jì)算速度的需求是不一樣的。針對(duì)不同的場(chǎng)景,要選擇合適的算法。

3.1 自動(dòng)駕駛的高精度定位

定位是高階自動(dòng)駕駛的關(guān)鍵一環(huán),目前高速場(chǎng)景下的自動(dòng)駕駛定位主要依賴于組合導(dǎo)航技術(shù),高速場(chǎng)景下路況簡(jiǎn)單,車輛交互少,也無需頻繁換道,在該場(chǎng)景下達(dá)到車道級(jí)/分米級(jí)的定位精度即可,組合導(dǎo)航(GNSS/INS)技術(shù)就可以滿足該場(chǎng)景下的精度要求。

在低速城區(qū)場(chǎng)景中,車道較窄,車流量大,尤其在十字路口這樣復(fù)雜的場(chǎng)景下,還會(huì)出現(xiàn)車道變化,為了避免車輛變道壓線或車輛碰撞,這時(shí)就需要車輛達(dá)到厘米級(jí)的定位精度,在該場(chǎng)景下,通常需要組合導(dǎo)航、視覺SLAM、激光SLAM等多種技術(shù)進(jìn)行融合定位,來達(dá)到厘米級(jí)的定位精度。

在沒有GNSS信號(hào)的地下車庫(kù),隧道等場(chǎng)景,此時(shí)組合導(dǎo)航(GNSS/INS)算法失效,就必須依賴于視覺SLAM或激光SLAM進(jìn)行定位。

視覺slam,SLAM,數(shù)碼相機(jī),人工智能
圖4 高精度定位

3.2 自主移動(dòng)機(jī)器人

隨著移動(dòng)機(jī)器人的智能化程度逐漸提升,自動(dòng)移動(dòng)機(jī)器人已經(jīng)開始出現(xiàn)在家庭服務(wù)、物流倉(cāng)儲(chǔ)與搬運(yùn)、故障檢測(cè)等領(lǐng)域當(dāng)中,曾經(jīng)只存在于工業(yè)特種場(chǎng)景下的移動(dòng)機(jī)器人,正逐漸走進(jìn)我們的日常生活中。

不同場(chǎng)景下的機(jī)器人需要執(zhí)行不同的復(fù)雜任務(wù),但良好的自主導(dǎo)航是完成絕大多數(shù)復(fù)雜任務(wù)的前提要求,導(dǎo)航是指機(jī)器人能夠從當(dāng)前位置行駛至指定目標(biāo)點(diǎn),而準(zhǔn)確的實(shí)現(xiàn)定位是自主導(dǎo)航的關(guān)鍵,如果錯(cuò)誤的估計(jì)了自身的位置,最后導(dǎo)航的結(jié)果可能就會(huì)差十萬八千里,機(jī)器人自然就不可能完成指定的任務(wù)。

SLAM技術(shù)就可以滿足機(jī)器人定位的需求,可以使機(jī)器人在未知環(huán)境下,在行進(jìn)過程中同時(shí)完成自身的定位與建圖,當(dāng)確定了機(jī)器人在地圖中的位置以及周圍環(huán)境后,便可以設(shè)計(jì)路徑規(guī)劃算法,計(jì)算出機(jī)器人到達(dá)指定位置的軌跡,然后控制機(jī)器人沿著指定的軌跡運(yùn)動(dòng),即完成了導(dǎo)航任務(wù)。目前視覺SLAM和激光SLAM技術(shù)在移動(dòng)機(jī)器人上都有應(yīng)用,由于激光傳感器受環(huán)境影響較小,并且激光SLAM發(fā)展技術(shù)較早,目前已經(jīng)可以大規(guī)模商用落地。相較于激光SLAM算法,由于相機(jī)易受光照和環(huán)境結(jié)構(gòu)的影響,視覺SLAM算法的魯棒性還無法和激光SLAM達(dá)到同一水準(zhǔn),因此需要借助和IMU的結(jié)合,實(shí)現(xiàn)更好的魯棒性和更高的精度。

對(duì)于SLAM技術(shù)來說,要完成導(dǎo)航任務(wù),構(gòu)建地圖是必要的,地圖可以實(shí)現(xiàn)路標(biāo)以及環(huán)境的可視化,此外,地圖可以輔助機(jī)器人進(jìn)行更優(yōu)的定位以及丟失位置后的重新定位,移動(dòng)機(jī)器人需要的是3D稠密地圖,而地圖的規(guī)模是隨著場(chǎng)景的增大而增大的,地圖越大就意味著我們需要更多的內(nèi)存資源去存儲(chǔ)地圖,因此如何判斷是否更新地圖,如何高效存儲(chǔ)、表征和更新地圖是值得我們研究的。

視覺slam,SLAM,數(shù)碼相機(jī),人工智能
圖5 移動(dòng)機(jī)器人定位建圖

知識(shí)擴(kuò)展:

除了SLAM,目前主流的移動(dòng)機(jī)器人定位技術(shù)還有組合導(dǎo)航(GPS/INS)、二維碼導(dǎo)航/磁導(dǎo)航。

組合導(dǎo)航(GNSS/INS)

GNSS技術(shù)是指通過觀測(cè)GNSS衛(wèi)星獲得坐標(biāo)系內(nèi)絕對(duì)定位坐標(biāo)的測(cè)量技術(shù),中國(guó)的北斗導(dǎo)航系統(tǒng)和美國(guó)的GPS都屬于GNSS技術(shù),在空曠處單一的GNSS的定位誤差小于5米,在城市環(huán)境下GNSS信號(hào)易被遮擋,此時(shí)GNSS的定位誤差可能會(huì)達(dá)到幾十米。因此現(xiàn)在大多采用組合導(dǎo)航(GNSS/INS)的方式,能極大的提高組合導(dǎo)航的魯棒性,當(dāng)然其應(yīng)用場(chǎng)景主要還是在空曠的室外。

二維碼導(dǎo)航/磁導(dǎo)航

AGV最初是用來運(yùn)輸港口的集裝箱,AGV最初是采用磁導(dǎo)航的,這種方式需要按照一定的間隔,在機(jī)器人行駛道路上提前埋上磁釘,AGV小車通過自身安裝的磁導(dǎo)航傳感器接收磁釘信息,從而完成自身的定位,其運(yùn)動(dòng)路徑也就是由磁釘?shù)牟贾脹Q定,降低了路徑規(guī)劃技術(shù)的要求,該技術(shù)適用于港口,工廠自動(dòng)搬運(yùn)這類封閉且有固定行駛路徑的機(jī)器人。而這種技術(shù)的缺點(diǎn)在于:磁釘會(huì)出現(xiàn)老化的問題,更換磁釘?shù)拇鷥r(jià)很大,不能輕易變更機(jī)器人運(yùn)營(yíng)路線,這個(gè)缺點(diǎn)很大程度上制約了AGV技術(shù)更大范圍的運(yùn)用。當(dāng)然AGV發(fā)展到現(xiàn)在,也出現(xiàn)了采用二維碼導(dǎo)航的方式,通過AGV小車掃描天花板或者地板上二維碼的方式獲取當(dāng)前位置信息,在倉(cāng)儲(chǔ)物流行業(yè)和服務(wù)送餐機(jī)器人都有運(yùn)用。

視覺slam,SLAM,數(shù)碼相機(jī),人工智能
圖6 GNSS定位(左)無人碼頭AGV(右)

3.3 室內(nèi)場(chǎng)景的三維重建:AR(增強(qiáng)現(xiàn)實(shí)技術(shù))等

AR可以被理解為這樣一項(xiàng)技術(shù):通過圖像和其他傳感器信息計(jì)算相機(jī)的位置和三維環(huán)境結(jié)構(gòu),并結(jié)合3D渲染提供更自然的人機(jī)交互能力。舉一個(gè)簡(jiǎn)單的場(chǎng)景,你可以在VR設(shè)備中擁有一只虛擬的小貓,在一個(gè)周末的午后,它會(huì)懶洋洋的躺在你的腳邊,并不時(shí)打著哈欠。要實(shí)現(xiàn)這樣的一個(gè)場(chǎng)景,AR設(shè)備需要具備以下三個(gè)功能:

·?自我定位:指定位出AR設(shè)備在空間中的位置,這樣AR設(shè)備才能將虛擬物體渲染在合適的位置上,將“小貓”渲染在腳邊就需要知道自身在空間的位置。

·?環(huán)境感知:指感知到周圍環(huán)境的三維幾何信息,這樣才能讓虛擬物體和真實(shí)世界發(fā)生交互,如果想讓“小貓”跳到桌子上,就必須知道桌子的空間位置和形狀。

·?人機(jī)交互:要理解來自周圍環(huán)境的輸入,如人類的語(yǔ)言、手勢(shì),并給出反饋。

而想要實(shí)現(xiàn)自我定位和環(huán)境感知的功能就需要SLAM技術(shù),具體而言,需要的是視覺慣導(dǎo)SLAM技術(shù),視覺慣導(dǎo)SLAM也是當(dāng)前實(shí)現(xiàn)AR的主流方案,相比于單純依靠相機(jī)的純視覺SLAM方案,視覺慣導(dǎo)SLAM通過從相機(jī)輸入的圖像信息和IMU的速度、加速度信息完成更準(zhǔn)確的定位,同時(shí)圖像信息能提供更豐富的環(huán)境信息,更有利于后續(xù)算法理解環(huán)境,以完成人機(jī)交互。再加上由于制造工藝的成熟,MIU和相機(jī)設(shè)備體積更小重量更輕,價(jià)格也相對(duì)便宜,綜合以上因素考慮,視覺慣導(dǎo)SLAM技術(shù)要更為契合AR設(shè)備的需求。那么,最為經(jīng)典的視覺慣導(dǎo)SLAM算法是vins-mono算法。

視覺slam,SLAM,數(shù)碼相機(jī),人工智能
圖7 AR示意圖

當(dāng)然,目前的視覺慣導(dǎo)SLAM算法只能說基本滿足了AR設(shè)備的需求,但為了讓消費(fèi)者獲得更好的體驗(yàn),AR設(shè)備必然會(huì)往更小,更輕的方向上發(fā)展,實(shí)際上,硬件的小型化和輕量化確實(shí)也是更為迫切的需求。當(dāng)然,并不是說算法就不重要了,相比于自動(dòng)駕駛汽車和移動(dòng)機(jī)器人,AR設(shè)備對(duì)SLAM算法的要求要更高。

首先,SLAM算法的計(jì)算效率要更高,小的設(shè)備往往意味著更少的計(jì)算資源,如何使用更少的計(jì)算量完成同樣的效果是一個(gè)可以長(zhǎng)期研究的方向;

其次,相比于自動(dòng)駕駛汽車和機(jī)器人,AR設(shè)備要更容易出現(xiàn)一些極端情況,比如你的身體突然轉(zhuǎn)動(dòng)了180°,這對(duì)于佩戴AR設(shè)備的你來說是正常的,但AR設(shè)備可能因?yàn)檫@樣強(qiáng)烈的旋轉(zhuǎn)出現(xiàn)定位失敗的情況,這就對(duì)SLAM算法的魯棒性提出了更高的要求;

最后,如何使用更短的時(shí)間和更少的動(dòng)作來快速完成初始化也是很重要的,就如同你希望你的筆記本電腦的開機(jī)速度越快越好一樣,你也不想在穿戴好AR設(shè)備后,要等待30s并且完成某些動(dòng)作后才能開始使用你的設(shè)備。

04? 結(jié)語(yǔ)

整體而言,SLAM涉及的知識(shí)面很多,前端包括相機(jī)圖像處理、激光雷達(dá)點(diǎn)云處理、IMU數(shù)據(jù)處理,后端的優(yōu)化算法包括卡爾曼濾波、非線性優(yōu)化,回環(huán)檢測(cè)更多的屬于機(jī)器學(xué)習(xí)的范疇以及各類的建圖算法,更進(jìn)一步的還需要深度學(xué)習(xí)的知識(shí)。如果想要了解或者入行SLAM的話,首先推薦高翔博士的視覺SLAM十四講,在第一遍學(xué)習(xí)的過程中,可以快一些,快速掌握SLAM由哪些部分組成,每一部分的目的是什么,第一遍學(xué)完后,可以將綜述性的論文、經(jīng)典論文、十四講的代碼和理論知識(shí)結(jié)合起來學(xué)習(xí)。在基礎(chǔ)打好后,就可以看一下前沿的學(xué)術(shù)論文,選定其中一個(gè)方向進(jìn)行研究,這里要注意的是,研究方向是偏向就業(yè)還是偏向做學(xué)術(shù),需要視個(gè)人情況而定。同時(shí)不要放過每一次和同行交流的機(jī)會(huì),可以是師兄、論壇、交流群等等,SLAM涉及的技術(shù)太多,要開闊自己的視野,不斷地刷新自己的學(xué)習(xí)路線。

參考文獻(xiàn):

[1] 視覺SLAM14講:從理論到實(shí)踐 第2版

[2] An Overview on Visual SLAM: From Tradition to Semantic

[3]?https://mp.weixin.qq.com/s/3YRQMAk6eaqBCQSLkxWjKQ

[4] A Comprehensive Survey of Visual SLAM Algorithms文章來源地址http://www.zghlxwxcb.cn/news/detail-795047.html

到了這里,關(guān)于視覺SLAM:模型介紹、算法框架及應(yīng)用場(chǎng)景的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 開源3D激光(視覺)SLAM算法匯總(持續(xù)更新)

    開源3D激光(視覺)SLAM算法匯總(持續(xù)更新)

    目錄 一、Cartographer 二、hdl_graph_slam 三、LOAM 四、LeGO-LOAM 五、LIO-SAM 六、S-LOAM 七、M-LOAM 八、livox-loam 九、Livox-Mapping 十、LIO-Livox 十一、FAST-LIO2 十二、LVI-SAM 十三、FAST-Livo 十四、R3LIVE 十五、ImMesh 十六、Point-LIO 十七、PV-LIOVoxelMap Cartographer是由谷歌于2016年開源的一個(gè)支持ROS的室內(nèi)

    2024年02月03日
    瀏覽(38)
  • 【視覺SLAM十四講學(xué)習(xí)筆記】第五講——相機(jī)模型

    【視覺SLAM十四講學(xué)習(xí)筆記】第五講——相機(jī)模型

    專欄系列文章如下: 【視覺SLAM十四講學(xué)習(xí)筆記】第一講——SLAM介紹 【視覺SLAM十四講學(xué)習(xí)筆記】第二講——初識(shí)SLAM 【視覺SLAM十四講學(xué)習(xí)筆記】第三講——旋轉(zhuǎn)矩陣 【視覺SLAM十四講學(xué)習(xí)筆記】第三講——旋轉(zhuǎn)向量和歐拉角 【視覺SLAM十四講學(xué)習(xí)筆記】第三講——四元數(shù) 【視

    2024年01月17日
    瀏覽(27)
  • 視覺SLAM【第二講-初識(shí)SLAM】

    視覺SLAM【第二講-初識(shí)SLAM】

    視覺SLAM,主要指的是利用相機(jī)完成建圖和定位問題。如果傳感器是激光,那么就稱為激光SLAM。 定位(明白自身狀態(tài)(即位置))+建圖(了解外在環(huán)境)。 視覺SLAM中使用的相機(jī)與常見的單反攝像頭并不是一個(gè)東西,它更簡(jiǎn)單,不攜帶昂貴的鏡頭,以一定速率拍攝周圍環(huán)境,

    2024年02月13日
    瀏覽(21)
  • 5.【自動(dòng)駕駛與機(jī)器人中的SLAM技術(shù)】2D點(diǎn)云的scan matching算法 和 檢測(cè)退化場(chǎng)景的思路

    5.【自動(dòng)駕駛與機(jī)器人中的SLAM技術(shù)】2D點(diǎn)云的scan matching算法 和 檢測(cè)退化場(chǎng)景的思路

    這里實(shí)現(xiàn)了基于g2o優(yōu)化器的優(yōu)化方法。 圖優(yōu)化中涉及兩個(gè)概念-頂點(diǎn)和邊。我們的優(yōu)化變量認(rèn)為是頂點(diǎn),誤差項(xiàng)就是邊。我們通過g2o聲明一個(gè)圖模型,然后往圖模型中添加頂點(diǎn)和與頂點(diǎn)相關(guān)聯(lián)的邊,再選定優(yōu)化算法(比如LM)就可以進(jìn)行優(yōu)化了。想熟悉g2o的小伙伴們感興趣的話

    2024年02月03日
    瀏覽(21)
  • 【SLAM14講】02 視覺SLAM基本架構(gòu)

    【SLAM14講】02 視覺SLAM基本架構(gòu)

    根據(jù)安裝位置分為兩類: 攜帶于機(jī)器人本體 上的傳感器,比如激光傳感器、相機(jī)、輪式編碼器、慣性測(cè)量單元(Inertial Measurement Unit, IMU)等等,它們測(cè)到的通常都是一些間接的物理量而不是直接的位置數(shù)據(jù)。例如, 輪式編碼器會(huì)測(cè)到輪子轉(zhuǎn)動(dòng)的角度、IMU 測(cè)量運(yùn)動(dòng)的角速度和

    2024年02月12日
    瀏覽(16)
  • 計(jì)算機(jī)視覺的應(yīng)用26-關(guān)于Fast-R-CNN模型的應(yīng)用場(chǎng)景,F(xiàn)ast-R-CNN模型結(jié)構(gòu)介紹

    計(jì)算機(jī)視覺的應(yīng)用26-關(guān)于Fast-R-CNN模型的應(yīng)用場(chǎng)景,F(xiàn)ast-R-CNN模型結(jié)構(gòu)介紹

    大家好,我是微學(xué)AI,今天給大家介紹一下計(jì)算機(jī)視覺的應(yīng)用26-關(guān)于Fast-R-CNN模型的應(yīng)用場(chǎng)景,F(xiàn)ast-R-CNN模型結(jié)構(gòu)介紹。Fast R-CNN是一種深度學(xué)習(xí)模型,主要用于目標(biāo)檢測(cè)任務(wù),尤其適用于圖像中物體的識(shí)別與定位。該模型在基于區(qū)域的卷積神經(jīng)網(wǎng)絡(luò)(R-CNN)系列中具有重要地位,

    2024年04月16日
    瀏覽(21)
  • Gazebo-Ros搭建小車和場(chǎng)景并運(yùn)行slam算法進(jìn)行建圖4--為機(jī)器人添加運(yùn)動(dòng)控制器控制其移動(dòng)

    Gazebo-Ros搭建小車和場(chǎng)景并運(yùn)行slam算法進(jìn)行建圖4--為機(jī)器人添加運(yùn)動(dòng)控制器控制其移動(dòng)

    1.要想機(jī)器人小車在gazebo中運(yùn)動(dòng)還需要為其添加運(yùn)動(dòng)插件 在文章3中的my_robot2.urdf 最下邊(前邊)添加如下部分: ? 這里使用的二輪差速控制,選擇對(duì)應(yīng)的插件libgazebo_ros_diff_drive.so 添加上述部分,文章3中的my_robot2.urdf 更新為 --完整代碼如下: 2.使用turtlebot3中的控制機(jī)器人的

    2023年04月11日
    瀏覽(35)
  • 基于全景相機(jī)的視覺SLAM

    基于全景相機(jī)的視覺SLAM

    相機(jī)坐標(biāo)系中空間點(diǎn)投影到二維圖像的過程可以簡(jiǎn)化為將空間點(diǎn)投影到單位球面上,然后將此球面展開成全景圖像。 式中:ri一空間點(diǎn)在相機(jī)坐標(biāo)系中與原點(diǎn)的距離;t0一投影函數(shù)??梢钥闯觯跋鄼C(jī)的投影過程是非線性的。 能看出全景圖像的畸變系數(shù)為cosp,圖2-4為全景機(jī)

    2024年02月10日
    瀏覽(28)
  • FPGA上的視覺 SLAM

    FPGA上的視覺 SLAM

    SLAM(同步定位和地圖繪制)在自動(dòng)駕駛、AGV 和無人機(jī)等各種應(yīng)用中引起了人們的廣泛關(guān)注。盡管目前有很多優(yōu)秀的 SLAM 項(xiàng)目可以參考,但是他們的復(fù)雜性(高性能)及依賴性(依賴于許多外部庫(kù)),使得它們無法移植到簡(jiǎn)單的平臺(tái)(例如嵌入式系統(tǒng))。 該項(xiàng)目更加重視簡(jiǎn)潔

    2024年02月05日
    瀏覽(18)
  • 《視覺SLAM十四講》筆記(4-6)

    《視覺SLAM十四講》筆記(4-6)

    為了解決什么樣的相機(jī)位姿最符合當(dāng)前觀測(cè)數(shù)據(jù)的問題,可以構(gòu)建出一個(gè)優(yōu)化問題來求解最優(yōu)的R和t。以達(dá)到誤差最小。但是旋轉(zhuǎn)矩陣自身是帶有約束的(正交且行列式為1),這會(huì)引入額外的約束,導(dǎo)致優(yōu)化變得困難。通過李群——李代數(shù)這種關(guān)系,希望把位姿估計(jì)的問題變

    2024年02月15日
    瀏覽(54)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包