• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于視覺SLAM算法的研究現(xiàn)狀分析

      2021-07-30 00:38:06張玉河
      新一代信息技術(shù) 2021年9期
      關(guān)鍵詞:里程計閉環(huán)深度

      張玉河

      (河北地質(zhì)大學(xué) 信息工程學(xué)院,河北 石家莊 050031)

      0 引言

      SLAM(Simultaneous Localization and Mapping)即同時定位與地圖構(gòu)建,是指機器人搭載特定的傳感器在沒有環(huán)境先驗信息的情況下,在運動過程中根據(jù)位置估計進行自身定位并對周圍的環(huán)境進行建圖。當(dāng)搭載的傳感器為相機時,稱為“視覺SLAM”。視覺SLAM的工作流程如圖1所示。

      圖1 視覺SLAM工作流程圖Fig.1 The flow chart of Visual SLAM

      SLAM問題起源于1986年[1],文獻[1-2]全面回顧了SLAM近些年的發(fā)展并探討了SLAM的未來發(fā)展趨勢;文獻[3]將SLAM的發(fā)展劃分為三個時代:classical age(1986-2004)、algorithmicanalysis age(20014-2015)以及robust-perception age(2015-現(xiàn)在),1986-2004年引入了SLAM的概率公式,包括擴展卡爾曼濾波器和最大似然估計等;2004-2015年主要研究SLAM的基本性質(zhì),包括可觀測性、收斂性與一致性;目前這一時期對 SLAM 系統(tǒng)的魯棒性等性能提出了更高的要求。視覺SLAM主要分為兩大類,一是基于圖像特征點的間接法,2007年 Davison[4]提出MonoSLAM,這是第一個實時單目視覺SLAM系統(tǒng),被認為是許多工作的發(fā)源地[5];2015年Raul Mur-Artal和 Juan D.Tardos等人[6]提出 ORBSLAM,在這個系統(tǒng)中,作者首次使用三線程的方法完成 SLAM,而且作者還在對該系統(tǒng)進行完善,分別于2017年和2020年推出ORB- SLAM2[7]和 ORB-SLAM3[8];另一類是根據(jù)像素亮度信息直接估計相機運動的直接法,直接法避免了圖像特征的計算,在一定程度上提升了SLAM系統(tǒng)的效率。2014年 J.Engel[9]等人提出 LSD-SLAM(Large Scale Direct monocular SLAM),LSDSLAM的提出標(biāo)志著單目直接法在SLAM的應(yīng)用中取得成功,在該系統(tǒng)中實現(xiàn)了半稠密場景的重建且保證了跟蹤的實時性與穩(wěn)定性。隨著深度學(xué)習(xí)技術(shù)的快速發(fā)展,將深度學(xué)習(xí)技術(shù)與視覺SLAM 結(jié)合成為一個研究熱點,Gao[10]等人提出通過無監(jiān)督學(xué)習(xí)的方式,采用堆疊去噪自動編碼器(Stacked Denoising Auto-encoder,SDA)的方式描述整幅圖像來進行圖像的匹配實現(xiàn)回環(huán)檢測,取得了較好的效果[11]。

      視覺SLAM技術(shù)主要應(yīng)用于無人機、機器人以及虛擬現(xiàn)實等領(lǐng)域,在水下或惡劣環(huán)境中可以發(fā)揮巨大作用,方便人們對未知環(huán)境進行探索。本文首先對視覺SLAM原理進行介紹,將SLAM問題數(shù)學(xué)化,然后對具有代表性的特征法與直接法的視覺SLAM算法進行分析討論,再對深度學(xué)習(xí)與視覺SLAM結(jié)合的現(xiàn)狀進行討論,最后對視覺SLAM算法進行總結(jié)與展望。

      1 視覺SLAM原理

      視覺SLAM以多視圖幾何[12]為基本原理,如圖2所示。視覺SLAM主要目的是恢復(fù)每幀圖像對應(yīng)的相機運動參數(shù)C1…Cm,同時恢復(fù)場景的三維結(jié)構(gòu)X1…Xn。相機運動參數(shù) Ci由3× 3的旋轉(zhuǎn)矩陣 Ri和一個三維位置變量pi組成,通過Ri、pi可以將世界坐標(biāo)系下的三維點Xj變換至相機坐標(biāo)系[13],其表達式為:

      圖2 多視圖幾何原理Fig.2 The principle of multi-view geometry

      進而投影至圖像中,即變換至像素坐標(biāo)系:

      其中,fx、fy分別為沿圖像x、y軸的焦距,(cx,cy)為鏡頭光心在圖像中的位置。由式(1)(2)可知,將世界坐標(biāo)系下的三維點投影到像素坐標(biāo)系[13]中可表示為:

      其中,hij表示三維點投影在圖像中的位置,h表示由世界坐標(biāo)系變換至像素坐標(biāo)系的轉(zhuǎn)換函數(shù)。通過求解目標(biāo)函數(shù)得到最優(yōu)解:

      其中,xij表示觀測到的圖像點位置。通過求解的目標(biāo)函數(shù)得到一組最優(yōu)解C1…Cm、X1…Xn,使得所有Xj在 Ci圖像中的投影位置 hij與觀測到的圖像點位置xij盡可能靠近[13]。

      2 間接法

      間接法是指首先提取圖像特征,然后在視覺里程計中根據(jù)圖像特征信息估計相機運動。該方法利用圖像特征提供的豐富信息計算相機位姿,性能比較穩(wěn)定,在視覺 SLAM 中一直占據(jù)主導(dǎo)地位。

      2.1 MonoSLAM

      單目視覺SLAM系統(tǒng)由Davison等人在2003年首次提出[14],2007年提出實時MonoSLAM系統(tǒng)。MonoSLAM證明了用一個可自由移動的攝像機作為唯一數(shù)據(jù)源,可以實現(xiàn)實時定位和建圖。該系統(tǒng)的設(shè)計思路如下:首先給定從初始時刻到當(dāng)前時刻的控制輸入及觀測數(shù)據(jù);然后通過構(gòu)建聯(lián)合后驗概率密度函數(shù)來描述攝像機姿態(tài)和地圖特征的空間位置,再通過遞歸的貝葉斯濾波方法對此概率密度函數(shù)加以估計;最后實現(xiàn)對攝像機定位,同時構(gòu)建周圍環(huán)境地圖[15]。在單目視覺SLAM中常用擴展卡爾曼濾波器實現(xiàn)同時定位和地圖構(gòu)建。MonoSLAM系統(tǒng)由以下兩部分組成:(1)通過已知的對象完成地圖初始化;(2)使用EKF估計相機運動和特征點的3D位置。

      在該系統(tǒng)中計算復(fù)雜度隨環(huán)境規(guī)模增大而成比例的增大,因此,在較大環(huán)境中不能實時計算[16]。

      2.2 PT AM

      為了解決 MonoSLAM 中計算復(fù)雜度高的問題,Klein[17]等人在2007年提出PTAM (Parallel Tracking and Mapping)算法。在PTAM中,后端模塊采用非線性優(yōu)化方法,首次將跟蹤和建圖分到兩個線程中并行執(zhí)行,同時首次使用 BA[18](Bundle Adjustment)技術(shù)處理關(guān)鍵幀。PTAM算法主要分為四步:(1)通過五點法[19]初始化地圖;(2)根據(jù)地圖點和輸入圖像之間匹配的特征點估計相機位姿;通過三角化估計特征點的 3D位置,利用BA對3D位置優(yōu)化;通過隨機樹的搜索方法恢復(fù)跟蹤過程[20]。

      由于PTAM算法在相機快速移動時會產(chǎn)生運動模糊,破壞圖像的角點特征,導(dǎo)致跟蹤失敗,一些研究者對PTAM算法做了擴展,如Castle[21]等人開發(fā)出一個多地圖版本的 PTAM,以及Klein[22]等人開發(fā)出移動版的PTAM。

      PTAM 中首次引入基于關(guān)鍵幀建圖的方法并將跟蹤和建圖分離到不同的線程中并行處理,對視覺SLAM的發(fā)展具有重大意義?;赑TAM算法發(fā)展出許多開源視覺SLAM算法,最具代表性的為2015年提出的ORB-SLAM算法。

      2.3 ORB-SLAM

      Mur-Artal等人2015年提出的ORB-SLAM系統(tǒng)是當(dāng)前視覺SLAM系統(tǒng)中最完善且易于使用的系統(tǒng)之一。最初的ORB-SLAM只可以用單目相機作為傳感器,2017年作者對其進行改進得到ORB-SLAM2系統(tǒng),在ORB-SLAM2中可以利用單目、雙目及RGB-D相機作為傳感器。2020年提出ORB-SLAM3,在ORB-SLAM3中不僅支持單目、雙目和RGB-D相機,同時支持針孔相機、魚眼相機等,ORB-SLAM3是第一個同時具備純視覺數(shù)據(jù)處理、視覺與慣性傳感器數(shù)據(jù)處理和構(gòu)建多地圖功能的SLAM系統(tǒng)。ORB-SLAM系統(tǒng)由PTAM發(fā)展而來,將兩線程并行運行改為三線程,三線程分別為Tracking、Local Mapping以及Loop Closing,如圖3所示。

      圖3 ORB-SLAM 系統(tǒng)的三線程Fig.3 The three threads of the ORB-SLAM system

      在整個ORB-SLAM系統(tǒng)中,均圍繞ORB[23]特征進行計算。ORB特征是非常具有代表性的實時圖像特征,它使得 FAST[24]特征點具有方向性與旋轉(zhuǎn)不變性,并采用速度極快的BRIEF[25]描述子,相比于SIFT[26]和SURF[27]特征,ORB特征可以在CPU上實時計算,極大的提升了視覺SALM系統(tǒng)的性能。

      在ORB-SLAM系統(tǒng)中,加入閉環(huán)檢測模塊是一大亮點。閉環(huán)檢測模塊通過判斷當(dāng)前設(shè)備之前是否到過當(dāng)前位置來消除位姿累積誤差形成的軌跡漂移,且可以在跟蹤丟失后快速找回,從而構(gòu)建全局一致性地圖。ORB-SLAM的不足之處在于跟蹤、建圖等過程都要用到ORB特征,雖然提取圖像的ORB特征速度較快,但對每一幅圖像都提取ORB特征,當(dāng)場景非常大時將特別耗時,而且三線程同時執(zhí)行會加重CPU的負擔(dān),很難將其嵌入到移動設(shè)備中。

      3 直接法

      與上文所述的間接法相比,直接法在視覺SLAM系統(tǒng)中直接使用輸入的圖像,不使用圖像的任何抽象特征。G.Silveira[28]等人于 2008年提出將直將接法用于視覺SLAM系統(tǒng),因其忽略了圖像特征點的提取與描述子的計算過程而節(jié)省了時間,基于直接法的視覺SLAM系統(tǒng)得到快速發(fā)展,隨后出現(xiàn)了 DTAM[29]、LSD-SLAM[30]以及DSO[31]等使用直接法的開源項目,使得直接法逐漸成為主流算法。

      3.1 DT AM

      DTAM(Dense Tracking and Mapping)是Newcombe等人2011年提出的直接法視覺SLAM系統(tǒng)。它是一個實時跟蹤和重建的系統(tǒng),不使用提取的圖像特征,而是依賴于圖像中的每個像素。文獻[29]指出基于直接法的DTAM系統(tǒng)與基于特征法的SLAM系統(tǒng)相比,DTAM系統(tǒng)在設(shè)備快速移動的情況下具有更好的跟蹤性能。DTAM系統(tǒng)由三部分組成:(1)通過立體測量完成地圖初始化;(2)根據(jù)重建的地圖估計相機運動;(3)先對每個像素的深度信息進行估計,再通過空間連續(xù)性對其優(yōu)化。

      DTAM算法在實時幾何視覺方面取得了重大進展,在增強現(xiàn)實、機器人等領(lǐng)域具有潛在應(yīng)用價值,但DTAM算法在跟蹤和重建的過程中,需假設(shè)亮度恒定不發(fā)生變化,對周圍環(huán)境有較高的要求。

      3.2 LSD-SLAM

      LSD-SLAM (Large Scale Direct monocular SLAM)是J.Engel等人在2014年提出的直接法SLAM系統(tǒng)。在LSD-SLAM系統(tǒng)中,可以在較大規(guī)模的環(huán)境中構(gòu)建一致性地圖,并且利用基于圖像對齊的高精度位姿估計方法,將三維環(huán)境實時重建為基于關(guān)鍵幀的位姿圖。在該算法中,主要包含兩個創(chuàng)新點:一是創(chuàng)新的提出一種直接跟蹤算法,可以明確的檢測尺度漂移;另一個是通過概率的方法解決噪聲值對跟蹤的影響。

      LSD-SLAM算法包括三個模塊:跟蹤、深度圖估計及地圖優(yōu)化。跟蹤模塊持續(xù)跟蹤相機拍攝的圖像;深度圖估計使用跟蹤幀來完善或替換當(dāng)前關(guān)鍵幀,如果相機移動太快,則通過現(xiàn)有距離較近的關(guān)鍵幀中的投影點重新初始化一個新的關(guān)鍵幀;當(dāng)關(guān)鍵幀被跟蹤幀替換后,它的深度圖不被進一步完善,而是通過地圖優(yōu)化模塊將其添加到全局地圖中。完整的LSD-SLAM算法流程圖如圖4所示[30]。

      圖4 LSD-SLAM 算法流程圖Fig.4 The flowchart of LSD-SLAM algorithm

      與其它直接法相比,LSD-SLAM算法可以在全局地圖上維護和跟蹤,包括關(guān)鍵幀的位姿圖和相關(guān)的概率半稠密深度地圖。通過考慮移動設(shè)備的CPU架構(gòu)[32],對LSD-SLAM算法做進一步優(yōu)化,將LSD-SLAM算法遷移到移動設(shè)備上,獲得不錯的效果。在單目相機的基礎(chǔ)上,J.Engel等人在2015年將LSD-SLAM算法擴展到雙目[33]和全方位相機[34]。

      4 視覺SLAM與深度學(xué)習(xí)

      近幾年深度學(xué)習(xí)技術(shù)發(fā)展迅速,在圖像識別、圖像分類以及目標(biāo)檢測等領(lǐng)域表現(xiàn)突出。視覺SLAM同樣以圖像為處理對象,將深度學(xué)習(xí)技術(shù)用到視覺 SLAM 系統(tǒng)中可以極大的促進視覺SLAM的發(fā)展。

      目前主要是將深度學(xué)習(xí)技術(shù)用于視覺 SLAM系統(tǒng)中的視覺里程計模塊和閉環(huán)檢測模塊。

      4.1 深度學(xué)習(xí)與視覺里程計

      視覺里程計通過分析關(guān)聯(lián)圖像間的幾何關(guān)系確定機器人的位姿信息,將位姿信息傳遞到后端優(yōu)化模塊進行優(yōu)化,從而構(gòu)建全局一致性地圖?;谏疃葘W(xué)習(xí)的視覺里程計無需特征提取、特征匹配及復(fù)雜的幾何運算,使得整個過程更加直觀簡潔。

      基于深度學(xué)習(xí)的視覺里程計中運動估計的準(zhǔn)確性和魯棒性依賴于神經(jīng)網(wǎng)絡(luò)估計器的設(shè)計和訓(xùn)練的圖像是否涵蓋待測場景的全部變化[35]。2015年,Konda[36]等人通過提取視覺運動和深度信息實現(xiàn)基于深度學(xué)習(xí)的視覺里程計;Kendall[37]等人利用 CNN(卷積神經(jīng)網(wǎng)絡(luò))實現(xiàn)了輸入為 RGB圖像,輸出為相機位姿的端到端定位系統(tǒng),該系統(tǒng)提出了 23 層深度卷積網(wǎng)絡(luò)的 PoseNet網(wǎng)絡(luò)模型,利用遷移學(xué)習(xí)將分類問題的數(shù)據(jù)用于解決復(fù)雜的圖像回歸問題,其訓(xùn)練得到的圖像特征相較于傳統(tǒng)的手工特征,對光照、運動模糊以及相機內(nèi)參等具有更強的魯棒性。2017年,Wang[38]等人使用 RCNN(遞歸卷積神經(jīng)網(wǎng)絡(luò))提出一種新的端到端的單目視覺里程計框架,在該框架中可以利用CNN為視覺里程計問題提供特征表示,也可以利用RCNN模型對運動模型和數(shù)據(jù)關(guān)聯(lián)模型建模,實驗結(jié)果表明該算法具有非常好的性能[35]。Costante G[39]等人構(gòu)建了一個自編碼深度網(wǎng)絡(luò)模型,用來學(xué)習(xí)產(chǎn)生光流的非線性潛在空間描述,將此自編碼網(wǎng)絡(luò)與其它神經(jīng)網(wǎng)絡(luò)模型聯(lián)合訓(xùn)練,從而估計相機的運動。

      與傳統(tǒng)的視覺里程計相比,基于深度學(xué)習(xí)的視覺里程計更加直觀簡潔,無需構(gòu)建復(fù)雜的幾何模型,但當(dāng)訓(xùn)練場景發(fā)生變化時,視覺里程計會產(chǎn)生錯誤的結(jié)果。隨著深度學(xué)習(xí)技術(shù)的不斷發(fā)展,以及對視覺里程計更加深入的研究,將會進一步提升各種網(wǎng)絡(luò)模型的泛化能力。

      4.2 深度學(xué)習(xí)與閉環(huán)檢測

      閉環(huán)檢測即檢測機器人是否經(jīng)過同一位置,通過檢測機器人獲取的當(dāng)前幀圖像與歷史幀圖像的相似性來實現(xiàn)。閉環(huán)檢測主要用于消除視覺里程計中機器人位姿累積誤差所造成的軌跡漂移,從而得到全局一致的軌跡和地圖。傳統(tǒng)的閉環(huán)檢測方法大多是基于詞袋模型來實現(xiàn),使用人工設(shè)計的特征描述圖像,不能充分利用圖像的深層信息,而基于深度學(xué)習(xí)的閉環(huán)檢測則通過神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)圖像的深層特征,以獲得更高的準(zhǔn)確率。

      基于深度學(xué)習(xí)的閉環(huán)檢測主要利用預(yù)訓(xùn)練的神經(jīng)網(wǎng)絡(luò)模型對圖像進行特征提取,充分利用圖像深層次的特征信息。2015年國防科技大學(xué)[40]提出將深度學(xué)習(xí)用于閉環(huán)檢測模塊,將AlexNet[41]遷移到閉環(huán)檢測問題中,用中間層的輸出作為特征來描述整幅圖像,通過二范數(shù)進行特征匹配來確定是否存在回環(huán)。Gao[42-43]等使用無監(jiān)督學(xué)習(xí)的方式,采用自編碼網(wǎng)絡(luò)提取圖像特征,并使用相似度矩陣檢測閉環(huán),在公開的數(shù)據(jù)集上取得了很好的效果[44];2019年Liu[45]等人提出基于改進的混合深度學(xué)習(xí)結(jié)構(gòu)的閉環(huán)檢測方法,利用該網(wǎng)絡(luò)模型生成高層次的語義圖像特征,從而提高閉環(huán)檢測的準(zhǔn)確率和效率,利用該網(wǎng)絡(luò)模型進行檢測閉環(huán)的過程如圖5所示。

      圖5 利用改進的混合深度學(xué)習(xí)模型檢測閉環(huán)的過程Fig.5 An improved hybrid deep learning model is used to detect the closed-loop process

      對于第 k個關(guān)鍵幀,首先對其進行預(yù)處理,然后利用訓(xùn)練好的網(wǎng)絡(luò)模型提取特征,將提取的高層次語義特征作為圖像向量輸出,最后將提取的圖像向量與關(guān)鍵幀特征向量庫比較,計算相似矩陣檢測閉環(huán)。實驗結(jié)果表明,該方法具有較高的準(zhǔn)確率。

      基于深度學(xué)習(xí)的閉環(huán)檢測利用神經(jīng)網(wǎng)絡(luò)提取圖像特征,獲取的圖像信息更豐富。當(dāng)光照、季節(jié)等因素變化時,提取的特征信息仍然具有較好的魯棒性。

      5 總結(jié)與展望

      隨著機器人、虛擬現(xiàn)實等領(lǐng)域的快速發(fā)展,視覺SLAM技術(shù)發(fā)展迅速。最初由利用圖像特征的間接法占主導(dǎo),但隨著直接法的不斷發(fā)展完善,兩種方法相互促進,共同發(fā)展,提升了視覺SLAM系統(tǒng)的性能?;谏疃葘W(xué)習(xí)的視覺SLAM方法當(dāng)前正處于快速發(fā)展階段,將深度學(xué)習(xí)技術(shù)用于SLAM系統(tǒng)中,不僅能推動視覺SLAM技術(shù)的發(fā)展,也可以促進深度學(xué)習(xí)技術(shù)的發(fā)展。

      多傳感器融合是視覺SLAM未來發(fā)展的一個重要方向,將視覺與慣性傳感器結(jié)合可以得到更完善的視覺SLAM系統(tǒng),目前深度學(xué)習(xí)技術(shù)只是應(yīng)用在視覺SLAM系統(tǒng)的中局部模塊,隨著深度學(xué)習(xí)技術(shù)的不斷發(fā)展,研究人員對視覺SLAM技術(shù)的深入研究,將會進一步促進深度學(xué)習(xí)與視覺SLAM的融合。

      猜你喜歡
      里程計閉環(huán)深度
      室內(nèi)退化場景下UWB雙基站輔助LiDAR里程計的定位方法
      深度理解一元一次方程
      一種單目相機/三軸陀螺儀/里程計緊組合導(dǎo)航算法
      深度觀察
      深度觀察
      基于模板特征點提取的立體視覺里程計實現(xiàn)方法
      深度觀察
      單周期控制下雙輸入Buck變換器閉環(huán)系統(tǒng)設(shè)計
      黑龍江電力(2017年1期)2017-05-17 04:25:05
      雙閉環(huán)模糊控制在石化廢水處理中的研究
      大角度斜置激光慣組與里程計組合導(dǎo)航方法
      平乐县| 阳高县| 衡水市| 承德市| 嘉兴市| 鹰潭市| 喀喇| 资兴市| 东兴市| 贺兰县| 平江县| 西峡县| 伊宁县| 岳阳市| 澄迈县| 当涂县| 宁波市| 长葛市| 固镇县| 湾仔区| 云和县| 绩溪县| 高碑店市| 营口市| 卓尼县| 合作市| 朝阳区| 皮山县| 阿城市| 柯坪县| 疏附县| 聊城市| 花垣县| 江华| 平乡县| 墨竹工卡县| 井冈山市| 洪洞县| 卓尼县| 潞西市| 离岛区|