林中文,曾 碧,劉建圻,溫俊斌,江 明
(廣東工業(yè)大學(xué) 計(jì)算機(jī)學(xué)院,廣州 510006)
國(guó)內(nèi)外諸多學(xué)者對(duì)視覺(jué)同步定位、建圖(SLAM)[1]、視覺(jué)里程設(shè)計(jì) (VO)[2]進(jìn)行了大量研究,已經(jīng)產(chǎn)生了許多優(yōu)秀的方法[3-6],其中較好的RGB-D SLAM算法有ORB-SLAM2[7]、InfiniTAM v3[8]、BAD-SLAM[9]等。ORB-SLAM2和BAD-SLAM采用基于二進(jìn)制特征的詞袋模型[10]完成回環(huán)檢測(cè)和重定位工作,InfiniTAM v3則采用隨機(jī)蕨類算法(FERNS)[11]。這些基于局部場(chǎng)景外觀的特征對(duì)于視點(diǎn)變化的不變性比較有限。在發(fā)生相機(jī)劇烈運(yùn)動(dòng)或長(zhǎng)期遮擋的時(shí)候,往往歷史觀察到的場(chǎng)景表面此時(shí)不再可見(jiàn),這些低級(jí)特征很難與丟失幀之間構(gòu)建聯(lián)系。而在AR或無(wú)人機(jī)等應(yīng)用場(chǎng)景中,經(jīng)常發(fā)生劇烈運(yùn)動(dòng)和長(zhǎng)期遮擋的情況。
為了解決上述問(wèn)題,學(xué)者們開(kāi)始引入可觀性更強(qiáng)、在場(chǎng)景中較為固定的物體對(duì)象作為新的特征。Qian等[12]在回環(huán)檢測(cè)中引入目標(biāo)檢測(cè)獲得的物體語(yǔ)義,但僅用3D 語(yǔ)義共視子圖來(lái)檢查以避免誤報(bào),閉環(huán)候選幀仍是用基于場(chǎng)景外觀的方法獲取的。Weinzaepfel等[13]提出了一種使用查詢圖像中存在的對(duì)象與參考圖像中的對(duì)象之間的密集 2D-3D 對(duì)應(yīng)關(guān)系計(jì)算相機(jī)姿態(tài)的方法,但這種方法僅限于平面物體。Qin 等[14]將檢測(cè)到的物體的語(yǔ)義信息與幾何信息相結(jié)合,為每一幀建立子圖,尋找最佳語(yǔ)義子圖匹配來(lái)完成回環(huán)檢測(cè)。然而,這種方法使用的是二維圖像上的拓?fù)潢P(guān)系,易受視點(diǎn)影響,在大視差環(huán)境下表現(xiàn)不佳。
在過(guò)去幾年中,物體檢測(cè)領(lǐng)域取得了令人矚目的進(jìn)展[15-18],物體的位置、旋轉(zhuǎn)、尺寸成了可估算的信息,這為視覺(jué)重定位任務(wù)帶來(lái)了更多的約束信息。Gaudilliere 等[19-20]根據(jù)目標(biāo)檢測(cè)的結(jié)果以及場(chǎng)景中物體信息,利用從光心出發(fā)的射線與橢球相切,在投影平面上形成橢圓,在給定橢圓的長(zhǎng)短軸向量、中心位置和橢球的方向、長(zhǎng)短軸的情況下,計(jì)算橢球和相機(jī)位置。但這種方法僅使用了少數(shù)橢球進(jìn)行運(yùn)算,并假設(shè)一個(gè)預(yù)先構(gòu)建的橢球地圖,此外,前者僅能計(jì)算相機(jī)位置,并且假定方向是已知的。Zins等[21]在傳統(tǒng)統(tǒng)目標(biāo)檢測(cè)的基礎(chǔ)上,通過(guò)重建場(chǎng)景額外訓(xùn)練網(wǎng)絡(luò),在方框檢測(cè)框的基礎(chǔ)上生成橢圓檢測(cè)框,進(jìn)而估計(jì)橢球,通過(guò)橢圓中心點(diǎn)的P3P算法恢復(fù)相機(jī)位姿。Li等[22]則使用立方體對(duì)物體進(jìn)行建模,通過(guò)對(duì)立方體在圖像上投影與檢測(cè)框一致性約束求解相機(jī)位姿。Ming等[23]借助神經(jīng)網(wǎng)絡(luò)直接對(duì)3d對(duì)象進(jìn)行立方體估計(jì),使用NOCS提取對(duì)象的6-Dof位姿等信息,基于絕對(duì)定向估計(jì)的方法求解相機(jī)位姿,但NOCS需要耗費(fèi)較大的計(jì)算資源。
針對(duì)上述問(wèn)題,本文提出了一種運(yùn)用于RGB-D相機(jī)的大視差變化環(huán)境下,基于橢球語(yǔ)義對(duì)象的相機(jī)重定位方法。主要貢獻(xiàn)如下:
1)提出了一種基于對(duì)象共視圖和語(yǔ)義特征相似度的語(yǔ)義觀測(cè)與橢球語(yǔ)義對(duì)象之間的數(shù)據(jù)關(guān)聯(lián)方法。
2)提出了一種基于橢球語(yǔ)義對(duì)象的重定位方法。結(jié)合了橢球語(yǔ)義對(duì)象和深度點(diǎn)云信息,能從大視角變化的相機(jī)丟失幀中準(zhǔn)確估計(jì)相機(jī)位姿。
3)設(shè)計(jì)了詳細(xì)實(shí)驗(yàn)方案,結(jié)果表明,該方法在公開(kāi)數(shù)據(jù)集上的表現(xiàn)優(yōu)于傳統(tǒng)的基于場(chǎng)景外觀的重定位方法:在視角變化較大的環(huán)境下仍有較高的重定位成功率;在真實(shí)室內(nèi)環(huán)境中更具魯棒性;算力需求相比基于深度學(xué)習(xí)的方法更低,足以滿足低算力設(shè)備運(yùn)行的實(shí)時(shí)性需求。
本文提出的基于橢球語(yǔ)義對(duì)象的相機(jī)重定位方法,旨在運(yùn)用RGB-D相機(jī)完成桌面環(huán)境下,大視差跟蹤丟失時(shí)的相機(jī)重定位。本方法的核心SLAM框架是基于一個(gè)帶有稠密建圖能力的ORB-SLAM2。假設(shè)相機(jī)已完成內(nèi)參標(biāo)定,且對(duì)每一個(gè)RGB圖像幀,通過(guò)YOLOv3目標(biāo)檢測(cè)算法,獲取到了一組語(yǔ)義檢測(cè){bi}。圖1展示了本方法的計(jì)算流程。
圖1 系統(tǒng)計(jì)算流程框圖
算法實(shí)現(xiàn)步驟如下所示:
步驟1對(duì)RGB圖像進(jìn)行特征提取并跟蹤,如跟蹤失敗則跳轉(zhuǎn)至步驟5進(jìn)行相機(jī)重定位,成功則進(jìn)入下一步。
步驟2對(duì)語(yǔ)義檢測(cè){bi}和完成橢球估計(jì)的對(duì)象{qj}進(jìn)行數(shù)據(jù)關(guān)聯(lián),對(duì)無(wú)法數(shù)據(jù)關(guān)聯(lián)的語(yǔ)義檢測(cè)進(jìn)行對(duì)象的初始化,即單幀橢球估計(jì)。
步驟4使用前面檢測(cè)到的語(yǔ)義信息、SLAM跟蹤獲得的視覺(jué)里程計(jì)和地圖對(duì)象,對(duì)相機(jī)位姿和對(duì)象地圖進(jìn)行優(yōu)化。
步驟5通過(guò)橢球語(yǔ)義對(duì)象位置信息進(jìn)行相機(jī)的重定位,獲得一個(gè)相機(jī)的初始位姿,接著結(jié)合稠密地圖和地圖對(duì)象通過(guò)迭代最近點(diǎn)(iterative closest point,ICP)算法對(duì)相機(jī)位姿進(jìn)行優(yōu)化。
由于本文的側(cè)重點(diǎn)在于視覺(jué)重定位,所以,相機(jī)跟蹤、稠密建圖、回環(huán)檢測(cè)等部分均使用ORB-SLAM2的內(nèi)容。下面將對(duì)對(duì)象建圖和基于物體的重定位部分詳細(xì)闡述。
一般而言,在室內(nèi)環(huán)境中的物體都垂直放置在一個(gè)平面上,這個(gè)平面一般是一個(gè)與重力垂直的平面(如地面、桌面等)。
首先,使用基于RANSAC的方法[24],在深度圖像中進(jìn)行平面提取,通過(guò)2個(gè)閾值過(guò)濾掉無(wú)效的平面:① 平面法向量和重力之間的夾角必須小于閾值T1,重力方向可由慣性測(cè)量單元(inertial measurement unit,IMU)獲得;② 構(gòu)成平面的點(diǎn)的個(gè)數(shù)必須大于T2。將所有滿足條件的平面保存在一個(gè)集合S中。
(1)
(2)
城市地鐵修筑時(shí),不可避免的存在新建地鐵工程與其他結(jié)構(gòu)(既有線、橋樁、建筑基礎(chǔ)以及地下管線等)相互影響[1],近距離甚至“極小間距”穿越工程問(wèn)題凸顯,一般作為工程重點(diǎn)風(fēng)險(xiǎn)源特殊對(duì)待,其設(shè)計(jì)和施工難度極大。
閾值T1、T2、T3、T4需根據(jù)相機(jī)參數(shù)進(jìn)行調(diào)整。
這2個(gè)對(duì)稱平面滿足如下條件:
1) 由于假定所有物體垂直放置在支持平面上,所以,物體的2個(gè)對(duì)稱平面應(yīng)當(dāng)分別與支持平面平行和垂直;
定義Qi為橢球的點(diǎn)參數(shù)形式,對(duì)于一個(gè)待估計(jì)的橢球Qi,應(yīng)該盡可能包含點(diǎn)云Ci中的所有點(diǎn),則橢球體的估計(jì)問(wèn)題可以建模為以下式(3)的最小二乘問(wèn)題。
(3)
對(duì)于連續(xù)多幀的觀測(cè),通過(guò)檢驗(yàn)上一幀檢測(cè)框中心是否落在新一幀的檢測(cè)框內(nèi)和檢測(cè)標(biāo)簽的一致性來(lái)跟蹤對(duì)象。在相機(jī)運(yùn)動(dòng)相對(duì)緩慢且對(duì)象短期內(nèi)能持續(xù)被觀測(cè)到時(shí),這種關(guān)聯(lián)方式是可行的。但在相機(jī)運(yùn)動(dòng)幅度較大或離開(kāi)相機(jī)視野的對(duì)象被重新觀測(cè)到時(shí),將無(wú)法確定對(duì)象與檢測(cè)框之間關(guān)聯(lián)的數(shù)據(jù)。
本文算法類似于ORB-SLAM,對(duì)檢測(cè)框中的圖像進(jìn)行ORB特征點(diǎn)的提取,然后將每個(gè)檢測(cè)框中提取到的ORB特征點(diǎn)轉(zhuǎn)換為BoW向量。特別地,為了保證每個(gè)詞匯都是唯一適合區(qū)分特定對(duì)象類別的圖像內(nèi)容,本方法為每一個(gè)可能出現(xiàn)的對(duì)象類別單獨(dú)創(chuàng)建一個(gè)詞匯表。
在獲得了當(dāng)前幀語(yǔ)義觀測(cè)bi的BoW向量與候選對(duì)象qj后,開(kāi)始計(jì)算語(yǔ)義檢測(cè)和每個(gè)候選對(duì)象之間的數(shù)據(jù)關(guān)聯(lián)分?jǐn)?shù)。首先,計(jì)算當(dāng)前幀語(yǔ)義觀測(cè)bi的BoW向量與候選對(duì)象qj中保存的歷史BoW向量的相似度。其中相似度的計(jì)算如式(4)所示。
(4)
式中:v1、v2表示2個(gè)BOW向量。
對(duì)于每一個(gè)候選對(duì)象qj,本方法遍歷所有具有觀測(cè)的關(guān)鍵幀,計(jì)算當(dāng)前幀語(yǔ)義觀測(cè)bi的BoW向量和候選對(duì)象qj所有歷史觀測(cè)的BoW向量的相似度,將其中的最大分?jǐn)?shù)定義為語(yǔ)義觀測(cè)bi和候選對(duì)象qj之間的數(shù)據(jù)關(guān)聯(lián)分?jǐn)?shù)cij。對(duì)于每一對(duì)語(yǔ)義觀測(cè)bi和候選對(duì)象qj,定義變量xij,用于描述兩者之間是否存在數(shù)據(jù)關(guān)聯(lián):
(5)
于是數(shù)據(jù)關(guān)聯(lián)問(wèn)題可以建模為一個(gè)整數(shù)優(yōu)化問(wèn)題,如式(6)所示。
(6)
由于每個(gè)語(yǔ)義觀測(cè)bi最多與一個(gè)對(duì)象相互關(guān)聯(lián),且每個(gè)候選對(duì)象qj也最多只能與一個(gè)語(yǔ)義觀測(cè)相互關(guān)聯(lián),所以式(6)還應(yīng)同時(shí)滿足以下約束:
(7)
類似于ORB-SLAM2,本方法結(jié)合RGB-D圖像中的物體對(duì)象提供的語(yǔ)義觀測(cè),將SLAM問(wèn)題建模為以下的非線性優(yōu)化問(wèn)題:
(8)
式中:Ζ={ζi}是一組語(yǔ)義關(guān)鍵幀的位姿集合;Q={Qi}是地圖對(duì)象的集合;H為Huber核函數(shù);fv為視覺(jué)里程計(jì)約束,如同ORB-SLAM2一樣,將其定義為:
(9)
fo是相機(jī)-對(duì)象的觀測(cè)約束,類似于CubeSLAM[18],觀測(cè)約束由2個(gè)部分組成:三維測(cè)量約束和二維測(cè)量約束,如式(10)所示。
H(fo)=H(fo1)+H(fo2)
(10)
(11)
式中:v(Q)=[x,y,z,xroll,xpitch,xyaw,a,b,c]T為橢球體平移、旋轉(zhuǎn)、尺寸的矢量表達(dá)。
(12)
圖3 二維測(cè)量約束示意圖
給定一個(gè)丟失幀,將單幀橢球體估計(jì)的對(duì)象與對(duì)象地圖中的對(duì)象對(duì)齊,估計(jì)相機(jī)在世界坐標(biāo)系中的位姿。首先,通過(guò)1.3節(jié)所述的數(shù)據(jù)關(guān)聯(lián)算法獲得語(yǔ)義檢測(cè)和地圖對(duì)象之間的數(shù)據(jù)關(guān)聯(lián)。特別地,基于對(duì)象的重定位算法,至少需要3個(gè)匹配對(duì)象才能正常工作,在匹配對(duì)象小于3個(gè)時(shí),重定位失敗。此時(shí),先通過(guò)1.2節(jié)所述的單幀橢球體估計(jì)算法計(jì)算丟幀語(yǔ)義觀測(cè)對(duì)應(yīng)物體的橢球體表示;接著,通過(guò)對(duì)齊這2個(gè)對(duì)象集合,以估計(jì)相機(jī)位姿,具體地,重定位算法包括2個(gè)步驟:① 通過(guò)對(duì)齊丟失幀和對(duì)象地圖中的橢球體中心,確定相機(jī)的初始位姿;② 通過(guò)ICP算法將對(duì)象中心、深度點(diǎn)與地圖中的相應(yīng)值對(duì)齊,優(yōu)化相機(jī)位姿。
(13)
(14)
本文所有實(shí)驗(yàn)都在處理器型號(hào)為i5-1035G1 1.19 GHz,操作系統(tǒng)為Ubuntu 18.04的電腦上運(yùn)行,算法在ORB-SLAM2的基礎(chǔ)上運(yùn)用C++實(shí)現(xiàn),使用機(jī)器人操作系統(tǒng)(robot operating system,ROS)進(jìn)行實(shí)驗(yàn)驗(yàn)證。使用的數(shù)據(jù)集是由文獻(xiàn)[23]中提供的一個(gè)桌面環(huán)境的RGB-D數(shù)據(jù)集OR10,其中包含10個(gè)場(chǎng)景復(fù)雜程度不一的桌面場(chǎng)景。事前通過(guò)YOLOv3算法對(duì)數(shù)據(jù)集中所有的RGB圖像幀進(jìn)行語(yǔ)義檢測(cè),從而獲取物體檢測(cè)框。
本文在全部的10個(gè)場(chǎng)景上進(jìn)行算法運(yùn)行耗時(shí)實(shí)驗(yàn)(圖4),場(chǎng)景中物體種類最多不超過(guò)10種,物體數(shù)目不超過(guò)15個(gè),最大尺寸物品為筆記本電腦,部分場(chǎng)景如圖4所示,包括10個(gè)以上對(duì)象,且包含4組相同類別的對(duì)象組合。關(guān)鍵模塊的平均耗時(shí)如表1所示,可以滿足實(shí)時(shí)運(yùn)行需求。
圖4 OR10數(shù)據(jù)集實(shí)驗(yàn)場(chǎng)景圖
表1 關(guān)鍵模塊平均耗時(shí) ms
如圖5所示,數(shù)據(jù)關(guān)聯(lián)的核心在于找到RGB圖像中語(yǔ)義觀測(cè)對(duì)應(yīng)的地圖對(duì)象。本文從數(shù)據(jù)集中抽選出部分關(guān)鍵幀,作為語(yǔ)義關(guān)鍵準(zhǔn)確性的實(shí)驗(yàn)數(shù)據(jù)集。實(shí)驗(yàn)結(jié)果顯示,數(shù)據(jù)關(guān)聯(lián)算法的準(zhǔn)確率為93.07%。其中錯(cuò)誤關(guān)聯(lián)主要分為2類:① 存在45個(gè)錯(cuò)誤分配,是因?yàn)閅OLOv3將不同的對(duì)象類別分配給了同一個(gè)對(duì)象,造成了對(duì)象的重復(fù)初始化;② 出現(xiàn)8個(gè)錯(cuò)誤分配,是由地場(chǎng)景中存在如圖5中杯子1和5一樣的情況,相機(jī)同時(shí)觀測(cè)到了多個(gè)完全一樣的對(duì)象,兩者的數(shù)據(jù)關(guān)聯(lián)分?jǐn)?shù)相同,算法對(duì)相同對(duì)象的表現(xiàn)不佳,造成了錯(cuò)誤匹配。實(shí)驗(yàn)場(chǎng)景中復(fù)數(shù)出現(xiàn)的相同對(duì)象并不罕見(jiàn),對(duì)于相同對(duì)象的錯(cuò)誤匹配僅占小部分。在出現(xiàn)相同的數(shù)據(jù)關(guān)聯(lián)分?jǐn)?shù)時(shí),如果圖像觀測(cè)中存在其他類別的物體,則可以根據(jù)候選匹配對(duì)象和其他類別對(duì)象之間的距離作為新的約束,距離誤差較小的為最佳匹配對(duì)象;如果場(chǎng)景中不存在其他物體,但圖像觀測(cè)的物體數(shù)量在3個(gè)以上,則以物體之間的距離作為搜索條件,在對(duì)象地圖中進(jìn)行圖形匹配,尋找最優(yōu)子圖匹配完成對(duì)象語(yǔ)義關(guān)聯(lián);在觀測(cè)物體數(shù)小于3的情況下,觀測(cè)不足以支撐區(qū)分相同的數(shù)據(jù)關(guān)聯(lián)分?jǐn)?shù),這時(shí)應(yīng)放棄對(duì)該對(duì)象的數(shù)據(jù)關(guān)聯(lián)。
圖5 數(shù)據(jù)關(guān)聯(lián)示意圖
圖6展示了算法在桌面環(huán)境中的效果。可以看到,本文的算法生成的對(duì)象模型在地圖中的全局定位良好,橢球完整地包絡(luò)住了觀測(cè)物體。算法對(duì)2個(gè)塑料瓶的建模效果不佳,這是因?yàn)槲矬w材質(zhì)導(dǎo)致RGB-D相機(jī)深度獲取不準(zhǔn)確,對(duì)于陶瓷類透光性不好的材質(zhì),能準(zhǔn)確建模。值得注意的是,該場(chǎng)景中包含了大量相同類別的物體,其中部分物體完全一致。這對(duì)于數(shù)據(jù)關(guān)聯(lián)算法而言是一個(gè)挑戰(zhàn),但算法仍然很好地完成了這項(xiàng)任務(wù)。表明本文算法在相機(jī)低速運(yùn)動(dòng)時(shí),環(huán)境中的相同物體并不會(huì)跟蹤丟失對(duì)象。
圖6 對(duì)象地圖
本文使用的重定位數(shù)據(jù)分為2個(gè)部分:地圖構(gòu)建段和重定位段。具體來(lái)說(shuō),對(duì)于每一個(gè)場(chǎng)景,首先按照?qǐng)鼍皵?shù)據(jù)錄制順序截出一部分?jǐn)?shù)據(jù),一般是100幀,用于初始的地圖構(gòu)建,接著在相機(jī)運(yùn)動(dòng)視差較大的時(shí)刻,按順序截取100幀作為重定位段,用于模擬遮擋后的相機(jī)跟蹤。一個(gè)完整的重定位數(shù)據(jù)集有2~3個(gè)重定位段,即地圖構(gòu)建段-重定位段-重定位段。本文方法與2種基于場(chǎng)景外觀的方法進(jìn)行了比較。這2種方法分別是ORB-SLAM2所使用的基于詞袋的方法和InfiniTAM v3的隨機(jī)蕨類算法。算法性能由重定位段中重定位成功的幀數(shù)決定。將估計(jì)結(jié)果與ground truth對(duì)比,若平移誤差小于5 cm,旋轉(zhuǎn)誤差小于5°,則判定重定位成功。這個(gè)重定位判別標(biāo)準(zhǔn)是參考其他論文工作標(biāo)準(zhǔn)給定的,如文獻(xiàn)[11,23]采用的標(biāo)準(zhǔn)。
圖7展示了本文方法與其他2種方法的性能比較,其中(a)和(b)為本文方法比基于詞袋和隨機(jī)蕨方法在每個(gè)場(chǎng)景下取得的重定位成功率提高程度。在場(chǎng)景復(fù)雜程度中等且重定位段與建圖段視差較大的01、04、05、07場(chǎng)景中,基于場(chǎng)景外觀的方法所使用的外觀特征基本不完整甚至不可見(jiàn),相較之下,物體在場(chǎng)景中仍然是可見(jiàn)且觀測(cè)完整的,這為重定位提供了一個(gè)穩(wěn)定可靠的路標(biāo),使本文方法在基于外觀的方法重定位失敗的情況下,仍然有著較高的重定位成功率。
圖7 重定位實(shí)驗(yàn)結(jié)果示意圖
圖8展示了2個(gè)本文算法在重定位視差較大的場(chǎng)景定位成功的例子,其中(a)為Scene04中的場(chǎng)景,3個(gè)重定位段和地圖構(gòu)建段的視差分別為30°、90°、180°,左側(cè)1、2、3分別為對(duì)應(yīng)本文算法在重定位段的跟蹤軌跡;(b)為Scene07中的場(chǎng)景,3個(gè)重定位段和地圖構(gòu)建段的視差分別為30°、60°、60°,左側(cè)1、2、3分別對(duì)應(yīng)本文算法在重定位段的跟蹤軌跡。
在場(chǎng)景較為簡(jiǎn)單,重定位視差較小的02、03、08場(chǎng)景中,本文方法雖然在02和03場(chǎng)景中,還有較高重定位成功率,但要略低于隨機(jī)蕨方法。本文方法在02場(chǎng)景下的性能下降的主要原因?yàn)椋?2場(chǎng)景如圖6所示,相同物體較多且分布密集,錯(cuò)誤的數(shù)據(jù)關(guān)聯(lián)過(guò)多導(dǎo)致重定位成功率下降。而在03場(chǎng)景中,由于地圖構(gòu)建段是在一個(gè)較高的俯視角度拍攝的,場(chǎng)景的RGB-D紋理被完整地觀測(cè)到,這對(duì)于隨機(jī)蕨方法相當(dāng)有利,而本文方法受限于橢球體建模精度,相對(duì)重定位成功率較低。而在08場(chǎng)景中,本文算法表現(xiàn)出了異常的性能下滑,通過(guò)分析,可能是顯示屏幕反射對(duì)RGB-D相機(jī)產(chǎn)生了干擾,導(dǎo)致深度點(diǎn)云獲取不準(zhǔn)確,影響了橢球體估計(jì)結(jié)果,使重定位失敗。
在場(chǎng)景復(fù)雜程度較高且視差較大的05、06、07、09場(chǎng)景中,本文方法仍然有遠(yuǎn)高于其他算法的重定位成功率。但在09場(chǎng)景中,本方法性能下滑較為嚴(yán)重,其主要原因在于場(chǎng)景復(fù)雜程度較高,物體擺放得較為密集,如圖9(b)所示。部分物體40%以上部分不可見(jiàn),橢球體構(gòu)建存在較大誤差,因而重定位效果不佳。06場(chǎng)景也有類似的問(wèn)題,但相對(duì)09場(chǎng)景物體擺放要更松散,因此,本文在06場(chǎng)景中還有較高的重定位成功率??傮w來(lái)說(shuō),本文方法對(duì)于物體分布比較松散且物體受遮擋程度較低的場(chǎng)景,有著較好的重定位效果。
圖8 重定位效果圖
圖9 性能較差場(chǎng)景圖
本文提出了一種基于對(duì)象的RGB-D重定位方法,能夠在構(gòu)建地圖的數(shù)據(jù)存在較大視差的場(chǎng)合實(shí)現(xiàn)單幀重定位。消除了傳統(tǒng)基于場(chǎng)景外觀的方法在大幅運(yùn)動(dòng)使相機(jī)跟蹤丟失后,難以重定位的缺點(diǎn)。與基于深度學(xué)習(xí)的方法相比,本文算法所需算力更低,能夠在AR設(shè)備上使用。下一步可以結(jié)合單幀估計(jì)的結(jié)果,進(jìn)一步提高數(shù)據(jù)關(guān)聯(lián)的成功率,改善算法在相似對(duì)象較多的環(huán)境中的魯棒性。