中圖分類號TP391.41;TP242文獻(xiàn)標(biāo)志碼A
0 引言
近年來,視覺即時定位與地圖構(gòu)建「1(SimultaneousLocalizationAndMapping,SLAM)作為一種高效的三維重建技術(shù)得到廣泛關(guān)注與快速發(fā)展.Davison等[2在2007年提出的MonoSLAM被認(rèn)為是第一個實(shí)時單目視覺SLAM系統(tǒng).文獻(xiàn)[3]提出的PTAM(ParallelTrackingAndMapping),采用非線性優(yōu)化作為后端,并行跟蹤和地圖構(gòu)建過程,但PTAM只適用于小場景并且在跟蹤過程中容易丟失.2015年,文獻(xiàn)[4]提出基于PTAM的ORB-SLAM,該方法圍繞ORB特征進(jìn)行姿態(tài)估計(jì),通過詞袋模型克服了累積誤差問題,但在旋轉(zhuǎn)過程中仍存在幀丟失問題.2017年,ORB-SLAM2[5]被提出.而在2021年提出的ORB-SLAM3[可在大型和小型場景、室內(nèi)和室外環(huán)境中實(shí)時穩(wěn)定運(yùn)行,還可支持視覺、視覺-慣性組合導(dǎo)航,并能在使用針孔或魚眼模型的單目、雙目和RGB-D[相機(jī)上運(yùn)行.傳統(tǒng)SLAM算法在靜態(tài)和剛性場景中效果良好,但在動態(tài)環(huán)境中,視覺SLAM系統(tǒng)容易受到運(yùn)動物體的影響,產(chǎn)生不正確的數(shù)據(jù)匹配,從而降低攝像機(jī)姿態(tài)估計(jì)的準(zhǔn)確性和穩(wěn)定性,導(dǎo)致跟蹤失敗,這極大地限制了視覺SLAM算法的應(yīng)用.
降低移動物體的干擾,以及提高動態(tài)場景下的定位精度和魯棒性,是視覺SLAM領(lǐng)域面臨的挑戰(zhàn),也是目前的研究熱點(diǎn).隨著深度學(xué)習(xí)領(lǐng)域的高速發(fā)展,有學(xué)者將深度學(xué)習(xí)和動態(tài)環(huán)境下的SLAM問題結(jié)合[8],依靠語義信息處理動態(tài)物體.文獻(xiàn)[9]提出一種名為Dyna-SLAM的動態(tài)SLAM系統(tǒng),該系統(tǒng)在ORB-SLAM2中加人MaskR-CNN實(shí)例分割算法和多視角幾何模塊,在不預(yù)先了解場景的情況下可以消除動態(tài)物體,但算法耗時嚴(yán)重,實(shí)時性差.在Detect-SLAM中,文獻(xiàn)[10]采用SSD目標(biāo)檢測模型來識別圖像幀,通過特征匹配傳播運(yùn)動概率,以增加影響區(qū)域,消除動態(tài)環(huán)境中干擾因素的影響,但Detect-SLAM使用的語義分割網(wǎng)絡(luò)無法有效區(qū)分同類動態(tài)物體.文獻(xiàn)[11」基于ORB-SLAM2設(shè)計(jì)了DS-SLAM,采用SegNet神經(jīng)網(wǎng)絡(luò)進(jìn)行語義分割,通過跟蹤不同幀間圖像的光流來檢測運(yùn)動一致性,并建立語義八叉樹地圖.文獻(xiàn)[12]采用有監(jiān)督的卷積神經(jīng)網(wǎng)絡(luò)對輸入圖像中的動態(tài)物體進(jìn)行分割,得到語義圖像,再從原始圖像中提取特征點(diǎn),根據(jù)語義圖像剔除動態(tài)特征點(diǎn),保留靜態(tài)物體特征點(diǎn).文獻(xiàn)13」利用升級的輕量級目標(biāo)檢測網(wǎng)絡(luò)生成系統(tǒng)語義信息,并提出一種新的幾何方法來過濾檢測區(qū)域內(nèi)的動態(tài)特征點(diǎn),有效地提高了系統(tǒng)的實(shí)時性.
YOLO目標(biāo)檢測網(wǎng)絡(luò)的出現(xiàn)極大地推動了動態(tài)視覺SLAM算法的應(yīng)用.文獻(xiàn)[14]提出一種基于YOLOv5目標(biāo)檢測網(wǎng)絡(luò)的實(shí)時動態(tài)視覺SLAM算法,以解決室內(nèi)動態(tài)場景中由動態(tài)物體引起的魯棒性和相機(jī)定位精度問題.文獻(xiàn)15]針對室內(nèi)移動物體造成的干擾,添加改進(jìn)的輕量級物體檢測網(wǎng)絡(luò)YOLOv4-tiny來檢測動態(tài)區(qū)域,在算法跟蹤階段消除動態(tài)區(qū)域中的動態(tài)特征.文獻(xiàn)[16]提出一種新的動態(tài)場景視覺SLAM算法——YG-SLAM,該算法創(chuàng)建了獨(dú)立的動態(tài)目標(biāo)檢測線程,并在動態(tài)目標(biāo)檢測線程中引入YOLOv5算法用于目標(biāo)識別,部署在GPU上以加快圖像幀識別速度.
在上述研究中,學(xué)者們大多只采用深度學(xué)習(xí)的方法來減少動態(tài)物體對定位精度的影響,并沒有利用到室內(nèi)動態(tài)環(huán)境中豐富的線段.與點(diǎn)特征相比,線特征具有更好的連續(xù)性和穩(wěn)定性,可以更好地應(yīng)對環(huán)境中的運(yùn)動模糊和遮擋等問題.為了有效提升室內(nèi)動態(tài)環(huán)境下視覺SLAM算法的定位精度和系統(tǒng)的魯棒性,本文提出PLYO-SLAM算法,它在ORB-SLAM3算法的基礎(chǔ)上進(jìn)行改進(jìn),將SLAM算法與YOLOv8實(shí)例分割網(wǎng)絡(luò)相結(jié)合,通過語義分割生成的動態(tài)掩模,剔除動態(tài)區(qū)域中的點(diǎn)特征,并利用ED-Lines算法提取線特征,在剔除動態(tài)區(qū)域中的線特征后,與點(diǎn)特征聯(lián)合優(yōu)化定位.
1 系統(tǒng)框架
本文在ORB-SLAM3算法基礎(chǔ)上增加一條獨(dú)立的動態(tài)物體檢測線程,提出了PLYO-SLAM算法,其系統(tǒng)框架如圖1所示.首先,將RGB-D相機(jī)獲取的RGB圖像和深度圖像分別傳送到前端[17]跟蹤線程和動態(tài)物體檢測線程中,跟蹤線程提取ORB點(diǎn)特征和線特征,動態(tài)物體檢測線程采用YOLOv8n-seg完成對動態(tài)物體的實(shí)例分割;其次,生成動態(tài)掩模,將落在動態(tài)掩模內(nèi)的ORB點(diǎn)特征和線特征判定為動態(tài)特征后予以剔除;然后,采用多視圖幾何約束進(jìn)一步過濾分割掩碼外缺失的動態(tài)特征點(diǎn);最后,去除動態(tài)點(diǎn)線特征,輸出關(guān)鍵幀,傳遞給建圖線程,進(jìn)行定位和建圖.
2基于EDLines算法的線特征提取方法
點(diǎn)特征在圖像中易于定位和區(qū)分,使得數(shù)據(jù)關(guān)聯(lián)較為容易,所以,基于點(diǎn)特征檢測和描述的視覺SLAM系統(tǒng)研究比較成熟.但面對復(fù)雜的動態(tài)環(huán)境尤其視角變化顯著時,點(diǎn)特征往往不能保持穩(wěn)定,而在視覺SLAM系統(tǒng)中加人線特征則能有效改善這個缺陷.文獻(xiàn)[18]將 LSD[19] (Line Segment Detector)算法和 EDLines[20](Edge Drawing based Line SegmentDetector)算法進(jìn)行對比,結(jié)果表明,EDLines算法有較好的直線提取結(jié)果,并具有高效性.因此,本文采用EDLines算法來提取線特征.
2.1 線特征表示法
本文采用普呂克坐標(biāo)法和標(biāo)準(zhǔn)正交表示法來表示線特征.普呂克坐標(biāo)法是一種對一條直線進(jìn)行唯一確定的坐標(biāo)表示方法,也是一種可以表示所有直線的完備表示方法,如圖2所示.
圖1PLYO-SLAM系統(tǒng)框架
Fig.1PLYO-SLAM system framework

圖2普呂克坐標(biāo)法
Fig.2Plucker coordinates representation

如圖2所示的三維空間線 L 可表示為

式中: ν∈R3 ,表示直線方向向量; n∈R3 ,表示由 L 和攝像機(jī)坐標(biāo)系原點(diǎn)確定的平面 π 的法向量
標(biāo)準(zhǔn)正交表示法由4個參數(shù)組成,用于優(yōu)化,三維空間線 L 可表示為
L=(U,W)
式中: U∈SO(3) : W∈SO(2).SO(n) 是包含旋轉(zhuǎn)矩陣 R 的一種特殊正交群,其定義如下:

式(2)中:


因此,由普呂克坐標(biāo)法到標(biāo)準(zhǔn)正交表示法的方程可表示為

式中: LP 為普呂克坐標(biāo)法表示的線特征; Lorth 為標(biāo)準(zhǔn)正交表示法表示的線特征.
2.2基于EDLines算法的線段提取
2.2.1計(jì)算像素的梯度
像素 Φ(x,y) 處的梯度大小和水平線角度計(jì)算公式如下:






式中: I(x,y) 是像素值; g(x,y) 是梯度值; θ(x,y) 是水平線角度.像素的梯度值為非負(fù)數(shù), θ 范圍為0°~360°
2.2.2Edge Drawing檢測
利用ED線條檢測算法可以提取出干凈、連續(xù)的線條.ED檢測分4個步驟進(jìn)行邊緣檢測:
1)使用高斯濾波器輸入灰度圖像,以抑制噪聲并獲得平滑圖像.
2)根據(jù)Sobel算子計(jì)算梯度的大小和方向.如果梯度大于梯度閾值,則為邊緣像素.
3)邊緣像素概率非常高的像素,稱為錨點(diǎn),錨點(diǎn)對應(yīng)于梯度計(jì)算產(chǎn)生最大值的像素,即梯度圖的峰值.
4)從錨點(diǎn)開始,連接下一個錨點(diǎn),得到邊緣線段.
2.2.3 線段檢驗(yàn)
線段檢驗(yàn)是在原圖的基礎(chǔ)上進(jìn)行的,即將ED檢測出來的線疊加在原圖上,其主要方法是計(jì)算出每條線段的NFA(NumberofFalseAlarms)值.NFA表示從長度為 n 的線段上篩選 i 個像素點(diǎn),這些像素點(diǎn)的梯度同方向的概率,計(jì)算公式如式(11)所示.如果 NFA(n,k)?1 ,則認(rèn)為線段有效,否則認(rèn)為是無效線段,將其剔除.

式中: N4 表示潛在線段的數(shù)量; n 表示線段的長度; k 表示某線段上的像素梯度方向與該線段方向一致的像素點(diǎn)數(shù)量; p 表示像素梯度方向與線段方向一致的概率.
EDLines有3個主要參數(shù) αβ 和 γ ,分別表示梯度閾值、錨點(diǎn)閾值和掃描間隔的值.本文設(shè)置 α 為32以提取出更明顯的邊緣線段;設(shè)置 β 為16,使檢測出的線段更加平滑,減少小的波動和噪聲的影響;設(shè)置y為4以消除短線段.將線間距設(shè)置為15像素,使線段均勻分布,以確保線段分布不會過于密集.
3基于YOLOv8的動態(tài)點(diǎn)線特征剔除模塊
3.1 YOLOv8n-seg實(shí)例分割網(wǎng)絡(luò)
YOLOv8由YOLOv5的研發(fā)團(tuán)隊(duì)在2023年1月提出,它通過引入去耦機(jī)頭結(jié)構(gòu)和C2f結(jié)構(gòu)等大大提高了檢測精度,是YOLO[21]系列的延續(xù).與YOLOv8目標(biāo)檢測模型相比,YOLOv8-seg實(shí)例分割模型在頭部結(jié)構(gòu)中具有原型掩碼分支和掩碼系數(shù),用于生成實(shí)例掩碼[22].YOLOv8-seg 分為YOLOv8n-seg、YOLOv8s-seg、YOLOv8m-seg、YOLOv8l-seg和YOLOv8x-seg五種型號,本文選擇參數(shù)量最小且檢測速度最快的YOLOv8n-seg作為基線模型.
YOLOv8n-seg將目標(biāo)檢測和語義分割結(jié)合在一起,以實(shí)現(xiàn)對圖像中目標(biāo)的定位和像素級別的分類.如圖3所示,其網(wǎng)絡(luò)結(jié)構(gòu)主要由Input、Backbone和Head三個模塊組成.Input模塊負(fù)責(zé)接收和預(yù)處理輸人圖像數(shù)據(jù),為后續(xù)的網(wǎng)絡(luò)操作提供正確格式的輸入.Backbone模塊用于提取輸入圖像的特征,由卷積層、池化層和殘差連接組成,能夠從圖像中提取出高層次的特征.YOLOv8用C2f模塊取代了YOLOv5的C3模塊,并引入Head模塊的解耦結(jié)構(gòu),負(fù)責(zé)將分類頭和檢測頭分開,從Anchor-Based轉(zhuǎn)向Anchor-Free.
本文選用MSCOCO 數(shù)據(jù)集(https://cocodata-set.org/對YOLOv8n-seg模型進(jìn)行訓(xùn)練,MSCOCO由微軟研究院于2014年發(fā)布,是計(jì)算機(jī)視覺領(lǐng)域的重要基準(zhǔn)數(shù)據(jù)集之一.MSCOCO數(shù)據(jù)集擁有超過33萬張圖像,涵蓋80個常見的對象類別,如人、動物、桌子、椅子、電腦等,也包含室內(nèi)環(huán)境下的常見動態(tài)物體.
3.2 動態(tài)點(diǎn)線特征剔除
ORB-SLAM3中的 RANSAC(RANdom SAmpleConsensus)算法只能消除小對象中的某些動態(tài)點(diǎn),無法處理有大量運(yùn)動目標(biāo)的高動態(tài)場景.為了能夠處理動態(tài)對象,在PLYO-SLAM算法中配置了基于YOLOv8n-seg的實(shí)例分割剔除模塊.本文算法能夠在系統(tǒng)提取ORB點(diǎn)特征和線特征時,盡可能快地完成實(shí)例分割,保證了系統(tǒng)的實(shí)時性.
3.2.1 動態(tài)物體分割
在RGB-D圖像輸人到動態(tài)物體檢測線程后,采用YOLOv8n-seg完成對動態(tài)物體的實(shí)例分割,并覆蓋不同顏色的掩模(Mask).在點(diǎn)線特征剔除階段,將落在動態(tài)掩模內(nèi)的ORB點(diǎn)特征和線特征判定為動態(tài)特征后予以剔除.圖4a為未剔除動態(tài)區(qū)域點(diǎn)線特征的特征分布,圖4b為剔除動態(tài)區(qū)域點(diǎn)線特征后的特征分布,可以看到動態(tài)區(qū)域的特征點(diǎn)線都已經(jīng)被剔除.
圖3YOLOv8n-seg網(wǎng)絡(luò)結(jié)構(gòu) Fig.3YOLOv8n-seg network structure

Fig.4Removal of dynamic point and line features

3.2.2 幾何約束
本文利用多視圖幾何約束進(jìn)一步過濾分割掩碼外缺失的動態(tài)特征點(diǎn),其檢測動態(tài)特征點(diǎn)的原理是用多幀圖像的位姿約束,剔除誤差較大的特征點(diǎn).如圖5所示: In 和 In+1 為相鄰幀; x 和 x′ 表示在動態(tài)物體上觀察到相同的三維點(diǎn); o 和
表示光心; e,e′ 和l,l′ 分別表示極外點(diǎn)和極外線;
表示靜態(tài)特征點(diǎn) P′ 的期望觀測值;深度信息( depth,d) 由RGB-D相機(jī)拍攝獲取.
圖4動態(tài)點(diǎn)線特征剔除
圖5RGB-D的多視圖幾何約束示意 Fig.5Multi-view geometric constraints for RGB-D

在RGB-D情況下,多視角幾何圖形可以表示為
(12)
式中: d1 和 d2 分別為兩幀中 P 點(diǎn)的深度; x 和
表示P 在兩幀中的歸一化坐標(biāo).當(dāng) |d2-d| 或
超過閾值時,將
視為動態(tài)點(diǎn).
在本文實(shí)驗(yàn)中,當(dāng)像素的歐氏距離(EuclideanMetric)超過4或深度差超過 0.1m 時,特征點(diǎn)將被去除,其中4和0.1為經(jīng)驗(yàn)參數(shù).閾值較大時,動態(tài)特征點(diǎn)難以去除;閾值較小時,靜態(tài)特征點(diǎn)被過濾掉.
4 實(shí)驗(yàn)對比與分析
4.1 實(shí)驗(yàn)環(huán)境
本文實(shí)驗(yàn)的軟件環(huán)境為Ubuntu18.04,硬件配置為Intel(R)Core(TM)i5-12490FCPU @ 3.00GHz ,運(yùn)行內(nèi)存16GB、NVIDIAGe-ForceRTX3060TiGPU,顯存8GB.SLAM系統(tǒng)使用 C++ 編寫、cmake工程編譯.實(shí)例分割網(wǎng)絡(luò)使用Python編寫,使用 C++ 調(diào)用Python接口實(shí)現(xiàn)其功能.
實(shí)驗(yàn)選取TUMRGB-D數(shù)據(jù)集(https://cvg.cit.tum.de/data/datasets/rgbd-dataset/download)中的sitting_halfsphere、sitting_xyz、walking_halfsphere、walking_rpy、walking_static和walking_xyz6組動態(tài)數(shù)據(jù)集進(jìn)行測試.其中,前綴為sitting的數(shù)據(jù)集是低動態(tài)場景,場景中人物處于坐著或緩慢移動的狀態(tài),相機(jī)的運(yùn)動以及周圍環(huán)境的變化較為緩慢.而前綴為walking的數(shù)據(jù)集是高動態(tài)場景,場景中人物處于行走狀態(tài),相機(jī)隨著人物的行走產(chǎn)生更多的移動,周圍環(huán)境的變化也會更加復(fù)雜.
4.2與ORB-SLAM3的對比實(shí)驗(yàn)與分析
在評估視覺SLAM系統(tǒng)時,通常采用絕對軌跡誤差(AbsoluteTrajectoryError,ATE)作為性能指標(biāo),并將絕對軌跡的均方根誤差(RMSE)、平均誤差(Mean)、中位數(shù)誤差(Median)作為評價(jià)精度的標(biāo)準(zhǔn).本文的PLYO-SLAM算法是基于ORB-SLAM3算法改進(jìn)的,因此對2種算法進(jìn)行性能對比分析.在實(shí)驗(yàn)過程中,2種算法在選取的6組數(shù)據(jù)集中分別運(yùn)行不少于3次,并記錄實(shí)驗(yàn)結(jié)果的平均值.
表1為PLYO-SLAM算法與ORB-SLAM3算法的絕對軌跡誤差結(jié)果對比.誤差降低率計(jì)算式為

式中: eorb 為ORB-SLAM3 算法運(yùn)行結(jié)果; eplyo 為 PLYO-SLAM算法運(yùn)行結(jié)果.
如表1所示,PLYO-SLAM在6組動態(tài)數(shù)據(jù)集中的各項(xiàng)精度指標(biāo)均優(yōu)于ORB-SLAM3,RMSE平均降低 75.98% ,最高降低 96.75% .其中,4組高動態(tài)場景的RMSE平均降低了 94.61%,2 組低動態(tài)場景的RMSE平均降低 38.72% :由此可見,在去除動態(tài)物體對SLAM系統(tǒng)的影響后,動態(tài)場景下的定位精度有所提高,且在高動態(tài)場景中的提升更為顯著.
視覺SLAM的最終目的是建圖,在建圖中,計(jì)算軌跡和真實(shí)軌跡的誤差大小能夠反映出SLAM算法性能的好壞.在軌跡誤差的對比時,本文利用EVO(https://github.com/MichaelGrupp/evo)軌跡精度評估工具將不同算法生成的軌跡文件和數(shù)據(jù)集中提供的真實(shí)軌跡文件進(jìn)行評估,并進(jìn)行可視化表達(dá).ORB-SLAM3和PLYO-SLAM的計(jì)算軌跡與真實(shí)軌跡的誤差的對比結(jié)果如圖6所示.圖中的灰色虛線表示相機(jī)的真實(shí)軌跡,藍(lán)色線條表示ORB-SLAM3的計(jì)算軌跡,紅色線條表示PLYO-SLAM的計(jì)算軌跡.由圖6可以發(fā)現(xiàn),紅色線條更接近真實(shí)軌跡,即PLYO-SLAM的計(jì)算軌跡與相機(jī)的真實(shí)軌跡更加接近.
walking_halfsphere數(shù)據(jù)集的XYZ軸誤差、RPY軸旋轉(zhuǎn)角對比分別如圖7、8所示.XYZ軸軌跡表示相機(jī)在三維空間中的移動路徑, X,Y,Z 分別對應(yīng)三維空間中的水平、垂直和深度方向的位置信息.RPY軸旋轉(zhuǎn)角表示相機(jī)繞固定坐標(biāo)系中的3個軸(Roll、Pitch、Yaw)旋轉(zhuǎn)的角度.Roll表示繞 X 軸旋轉(zhuǎn)的角度,Pitch表示繞 Y 軸旋轉(zhuǎn)的角度,Yaw表示繞 Z 軸旋轉(zhuǎn)的角度.
圖6ORB-SLAM3和PLYO-SLAM的軌跡誤差對比 Fig.6Comparison of trajectory errors between ORB-SLAM3andPLYO-SLAM

從圖7和圖8的紅色方框中可以看出,ORBSLAM3出現(xiàn)了特征點(diǎn)跟蹤失敗情況,計(jì)算軌跡嚴(yán)重偏離,而PLYO-SLAM的計(jì)算軌跡在坐標(biāo)軸中始終與真實(shí)軌跡保持一致.
為了進(jìn)一步分析實(shí)驗(yàn)結(jié)果,將ORB-SLAM3和PLYO-SLAM的計(jì)算軌跡的絕對估計(jì)誤差可視化,分別如圖9和圖10所示.可以看出,ORB-SLAM3的離散系數(shù)超過PLYO-SLAM,ORB-SLAM3的最大誤差也更大.由此可見,PLYO-SLAM在動態(tài)場景中顯著提高了定位精度.
4.3與其他動態(tài)SLAM算法的對比實(shí)驗(yàn)與分析
將PLYO-SLAM與動態(tài)環(huán)境下另外兩種優(yōu)秀的視覺SLAM算法DS-SLAM和DynaSLAM進(jìn)行對比實(shí)驗(yàn),結(jié)果如表2所示.從表2中數(shù)據(jù)中可以發(fā)現(xiàn)PLYO-SLAM算法僅在walking_rpy數(shù)據(jù)集中RMSE略高于DynaSLAM,在其他3組數(shù)據(jù)集中PLYO-SLAM算法的表現(xiàn)均優(yōu)于DS-SLAM和DynaSLAM算法.
表1絕對軌跡誤差結(jié)果對比
Table1Comparison of absolute trajectory error results

圖7XYZ 軸軌跡對比

Fig.7Trajectorycomparison along the X,Y ,and Z axes
圖8RPY軸旋轉(zhuǎn)角對比

Fig.8Comparison of RPY rotation angles
圖9 ORB-SLAM3算法絕對估計(jì)誤差分布 Fig.9 Absoluteestimation error distribution of ORB-SLAM3algorithm

圖10 PLYO-SLAM算法絕對估計(jì)誤差分布 Fig.10 Absolute estimation error distribution of PLYO-SLAM algorithm

表2不同方法的絕對軌跡均方根誤差
Table2Absolute trajectoryRMSE with different algorithms m

4.4 消融實(shí)驗(yàn)
為了定量分析PLYO-SLAM算法中引入的線特征的性能影響,本文進(jìn)行消融實(shí)驗(yàn).將未引人線特征,僅采用YOLOv8n-seg實(shí)例分割網(wǎng)絡(luò)剔除動態(tài)區(qū)域的點(diǎn)特征的算法定義為YOLO-SLAM.將YOLO-SLAM算法與PLYO-SLAM算法進(jìn)行對比試驗(yàn),仍選取在上節(jié)中的6組數(shù)據(jù)集進(jìn)行實(shí)驗(yàn),結(jié)果如表3所示.PLYO-SLAM算法有5組圖像序列的RMSE值低于YOLO-SLAM算法,最大降低 74.26% ,平均降低達(dá)到 24.70% .由此可見,線特征的引入提高了SLAM系統(tǒng)在室內(nèi)動態(tài)環(huán)境下的定位精度.
5 結(jié)論
本文提出一種基于深度相機(jī)的視覺SLAM算法——PLYO-SLAM算法,能夠有效提高視覺SLAM系統(tǒng)在室內(nèi)動態(tài)環(huán)境下的定位精度.該算法在跟蹤過程中加入了基于EDLines算法的線特征提取方法,在傳統(tǒng)ORB-SLAM3算法的基礎(chǔ)上,增加了獨(dú)立的物體檢測模塊和動態(tài)點(diǎn)線特征消除步驟.使用TUMRGB-D數(shù)據(jù)集驗(yàn)證本文算法,實(shí)驗(yàn)結(jié)果表明,與ORB-SLAM3算法相比,PLYO-SLAM算法的絕對軌跡均方根誤差在6組數(shù)據(jù)集下平均降低 75.98% ,最高降低 96.75% .本文僅選用MSCOCO數(shù)據(jù)集對YOLOv8n-seg網(wǎng)絡(luò)進(jìn)行訓(xùn)練,所以在包含相機(jī)旋轉(zhuǎn)的動態(tài)場景中檢測效果較差.后續(xù),將使用更豐富的圖像數(shù)據(jù)對YOLOv8n-seg網(wǎng)絡(luò)進(jìn)行訓(xùn)練,提高系統(tǒng)在更復(fù)雜室內(nèi)動態(tài)場景的定位精度.
表3絕對軌跡均方根誤差 Table3Absolute trajectoryRMSE

參考文獻(xiàn)References
[1] 尚光濤,陳煒峰,吉愛紅,等.基于神經(jīng)網(wǎng)絡(luò)的VSLAM 綜述[J].南京信息工程大學(xué)學(xué)報(bào),2024,16(3): 352-363 SHANGGuangtao,CHEN Weifeng,JI Aihong,et al.A review of visual SLAM based on neural networks[J]. Journal ofNanjingUniversity of Information Scienceamp; Technology,2024,16(3) :352-363
[2]Davison AJ,Reid ID,MoltonND,et al.MonoSLAM:real-time single camera SLAM[J].IEEE Transactionson PatternAnalysisandMachineIntelligence,2OO7,29(6): 1052-1067
[3]KleinG,Murray D.Parallel tracking and mappingfor small AR workspaces[C]//20O76th IEEEand ACM International SymposiumonMixed and AugmentedReality. November13-16,2007,Nara,Japan.IEEE,2007: 225-234
[4]Mur-ArtalR,MontielJMM,TardósJD.ORB-SLAM:a versatileandaccuratemonocularSLAMsystem[J].IEEE TransactionsonRobotics,2015,31(5):1147-1163
[5] Mur-Artal R,Tardos JD. ORB-SLAM2:an open-source SLAMsystem formonocular,stereo,andRGB-D cameras [J].IEEE Transactions on Robotics,2017,33(5):1255- 1262
[6]Campos C,Elvira R,Rodriguez JJG,et al.ORBSLAM3:an accurate open-source library for visual,visual-inertial,and multimap SLAM[J].IEEE Transactions on Robotics,2021,37(6) :1874-1890
[7]歐洲,應(yīng)舸,張大偉,等.RGB-D目標(biāo)跟蹤綜述[J].計(jì) 算機(jī)輔助設(shè)計(jì)與圖形學(xué)學(xué)報(bào),2024,36(11): 1673-1690 OU Zhou,YING Ge,ZHANG Dawei,et al. A survey of RGB-Depth object tracking[J]. Journal of Computer-AidedDesignamp; Computer Graphics,2024,36(11): 1673-1690
[8]Saputra MR U,Markham A,Trigoni N.Visual SLAM and structure from motion in dynamic environments[J].ACM Computing Surveys,2019,51(2) :1-36
[9]Bescos B,F(xiàn)acil JM,Civera J,et al.DynaSLAM: tracking,mapping,and inpainting in dynamic scenes [J]. IEEERoboticsand Automation Letters,2018,3(4): 4076-4083
[10] Zhong F W,Wang S,Zhang Z Q,et al. Detect-SLAM: making object detection and SLAM mutually beneficial [C]//2018 IEEE Winter Conference on Applications of Computer Vision(WACV).March12-15,2018,Lake Tahoe,NV,USA.IEEE,2018:1001-1010
[11] YuC,Liu ZX,LiuXJ,et al.DS-SLAM:a semantic visual SLAM towards dynamic environments[C]//2018 IEEE/RSJ International Conference on Intelligent Robots and Systems(IROS).October1-5,2018,Madrid, Spain. IEEE,2018:1168-1174
[12] 盛超,潘樹國,趙濤,等.基于圖像語義分割的動態(tài)場 景下的單目SLAM算法[J].測繪通報(bào),2020(1): 40-44 SHENG Chao,PAN Shuguo,ZHAO Tao,et al. Monocular SLAM system in dynamic scenes based on image semantic segmentation[J].Buletin of Surveying and Mapping, 2020(1) :40-44
[13] WuWX,Guo L,Gao HL,et al.YOLO-SLAM:a semantic SLAM system towards dynamic environment with geometric constraint[J]. Neural Computing and Applications,2022,34(8) :6011-6026
[14]Gao RZ,Li ZH,LiJF,et al.Real-time SLAMbased on dynamic feature point elimination in dynamic environment[J]. IEEE Access,2023,11:113952-113964
[15] Chang ZY,Wu HL,LiCJ.YOLOv4-tiny-based robust RGB-D SLAM approach with point and surface feature fusion in complex indoor environments[J].Journal of FieldRobotics,2023,40(3):521-534
[16]Yu YT,Zhu K,Yu W S.YG-SLAM:GPU-accelerated RGBD-SLAM using YOLOv5 in a dynamic environment [J].Electronics,2023,12(20):4377
[17] 胡凱,吳佳勝,鄭翡,等.視覺里程計(jì)研究綜述[J].南 京信息工程大學(xué)學(xué)報(bào)(自然科學(xué)版),2021,13(3): 269-280 HUKai,WUJiasheng,ZHENG Fei,et al.A surveyof visual odometry[J]. Journal of Nanjing University of Information Science amp; Technology(Natural Science Edition),2021,13(3):269-280
[18] 張寧,王競雪.EDLines和LSD 直線提取算法性能探 究[J].測繪科學(xué),2020,45(12):116-125 ZHANG Ning,WANG Jingxue. Research on the performance of EDLinesand LSD line extraction algorithms[J]. Science ofSurveying and Mapping,2020,45(12): 116-125
[19]Engel J,Sch?ps T,Cremers D.LSD-SLAM:large-scale directmonocular SLAM[M]//Lecture Notesin Computer Science.Cham:Springer International Publishing,2014: 834-849
[20]Redmon J,Divvala S,Girshick R,et al.You only look once:unified,real-timeobject detection[C]//2O16IEEE Conference on Computer Vision and Pattern Recognition (CVPR).June 27-30,2016,LasVegas,NV,USA. IEEE,2016:779-788
[21] AkinlarC,Topal C.EDLines:a real-time linesegment detector with a 1 detection control[J].Pattern RecognitionLetters,2011,32(13):1633-1642
[22] BolyaD,ZhouC,XiaoFY,etal.YOLACT:real-timeinstance segmentation[C]//2019IEEE/CVFInternational Conference on Computer Vision(ICCV).October 27- November2,2019,Seoul,Korea(South).IEEE,2019: 9156-9165
Visual SLAM for indoor dynamic scenes based on YOLOv8
HUANG Yuzhou1KE Fuyang2 1SchoolofeoteSensingamp;GeomaticsEngering,ajingUnversityofInforationSienceamp;Techology,aning4ina 2School of Software,Nanjing Universityof Information Scienceamp; Technology,Nanjing 210044,China
AbstractTo address the issue of traditional visual SLAM algorithms being affcted by a large amount of meaningless information in indoordynamic environments,which leads to decreased localization accuracyand poorrobustness,a visual SLAM algorithm named PLYO-SLAM,for indoor dynamic scenes based on YOLOv8 is proposed in this paper.The algorithm introduces line segment detection algorithm of EDLines into the tracking thread of ORBSLAM3 algorithm,and integrates anew dynamic region detection thread consisting of a YOLOv8n-seg instance segmentation network.The instance segmentation provides semantic information to the dynamic scenes and generates dynamic masks,while simultaneously eliminating point and line features within the dynamic regions.Additionaly,it further filters out missng dynamic point features outside the segmentation masks by utilizing geometric constraints. Experimental validation was conducted using thepubliclyavailable dataset TUM,and theresults demonstrate that compared to the ORB-SLAM3 algorithm,the proposed PLYO-SLAM algorithm reduces the RMSE of absolute trajectory in dynamic environments by an average of 75.98% ,with a maximum reduction of 96.75% :
Key wordsvisual SLAM;dynamic scenes ; YOLOv8n;EDLines algorithm