国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

融合空洞卷積網(wǎng)絡(luò)的無監(jiān)督單目深度恢復(fù)

2023-10-18 10:18:38齊欣宇方志軍楊淑群
關(guān)鍵詞:分?jǐn)?/a>位姿視圖

齊欣宇,方志軍,楊淑群

(上海工程技術(shù)大學(xué) 電子電氣工程學(xué)院,上海 201620)

1 引 言

圖像中物體的深度恢復(fù)是計(jì)算機(jī)視覺任務(wù)的一個(gè)重要分支,其在無人駕駛[1]、虛擬現(xiàn)實(shí)[2]和交互式機(jī)器人[3]等方面有十分重要的應(yīng)用價(jià)值.通過場(chǎng)景中不同物體的深度信息可以對(duì)場(chǎng)景的三維結(jié)構(gòu)進(jìn)行了解,然后更加系統(tǒng)地了解整個(gè)世界,幫助其他與計(jì)算機(jī)視覺相關(guān)任務(wù)完成[4].在深度學(xué)習(xí)引入到深度恢復(fù)任務(wù)之前,計(jì)算空間中目標(biāo)的位置和幾何關(guān)系主要通過根據(jù)運(yùn)動(dòng)恢復(fù)結(jié)構(gòu)(Structure From Motion,SFM)方法,利用不同幀中二維特征點(diǎn)的對(duì)應(yīng)關(guān)系對(duì)目標(biāo)的三維結(jié)構(gòu)進(jìn)行恢復(fù),同時(shí)得到相機(jī)運(yùn)動(dòng)的內(nèi)外參[5].近年來,卷積神經(jīng)網(wǎng)絡(luò)被廣泛的應(yīng)用于深度恢復(fù)等許多其他計(jì)算機(jī)任務(wù)中.其中,有監(jiān)督的網(wǎng)絡(luò)需要獲取大量成本昂貴的真實(shí)深度值或相機(jī)位姿值進(jìn)行約束,這導(dǎo)致其無法進(jìn)行大規(guī)模的推廣[6].漸漸地,人們把關(guān)注點(diǎn)轉(zhuǎn)移到利用無監(jiān)督學(xué)習(xí)進(jìn)行深度恢復(fù)上來,通過計(jì)算視圖重構(gòu)幾何關(guān)系對(duì)網(wǎng)絡(luò)進(jìn)行自監(jiān)督約束,無需真實(shí)值[7].在無監(jiān)督的網(wǎng)絡(luò)結(jié)構(gòu)中,深度恢復(fù)任務(wù)與相機(jī)位姿估計(jì)任務(wù)是密不可分的,深度恢復(fù)得到的深度值幫助圖像中的點(diǎn)恢復(fù)到三維空間,相機(jī)位姿變換矩陣幫助3D點(diǎn)恢復(fù)到像素坐標(biāo)系下,通過視圖重建得到目標(biāo)圖像的重建圖像,以最小化兩者差異作為監(jiān)督項(xiàng)約束整體網(wǎng)絡(luò)訓(xùn)練[8].其中,單目相機(jī)因體積小巧輕便,成本低,適用場(chǎng)景靈活等優(yōu)點(diǎn)進(jìn)入研究視野.所以,基于單目相機(jī)下無監(jiān)督深度估計(jì)的任務(wù)被提出,本文選擇基于視圖重建的監(jiān)督項(xiàng)幫助恢復(fù)深度和估計(jì)相機(jī)位姿.

本文受GeoNet網(wǎng)絡(luò)結(jié)構(gòu)的啟發(fā),整體框架選擇DispNet[9]網(wǎng)絡(luò)進(jìn)行深度恢復(fù)任務(wù),PoseNet[10]網(wǎng)絡(luò)進(jìn)行位姿估計(jì)任務(wù),兩個(gè)任務(wù)通過視圖重建損失函數(shù)進(jìn)行聯(lián)合.原始GeoNet網(wǎng)絡(luò)在這兩個(gè)任務(wù)后面還級(jí)聯(lián)了一個(gè)光流預(yù)測(cè)網(wǎng)絡(luò),以此來對(duì)圖像中的動(dòng)態(tài)物體運(yùn)動(dòng)進(jìn)行彌補(bǔ)[7].本文將復(fù)雜耗時(shí)的光流預(yù)測(cè)網(wǎng)絡(luò)移除,受語義分割網(wǎng)絡(luò)結(jié)構(gòu)[11]的啟發(fā),通過引入空洞卷積[12]來幫助網(wǎng)絡(luò)解決卷積神經(jīng)網(wǎng)絡(luò)只能提取到圖像中邊緣、位置等低層特征.空洞卷積可以在不增加參數(shù)并且維持特征圖大小不變的情況下擴(kuò)大網(wǎng)絡(luò)感受野,使其考慮圖像在學(xué)習(xí)低層特征時(shí)也更加關(guān)注高層的全局特征信息,實(shí)現(xiàn)了全局和局部特征的共同優(yōu)化[4].其在編碼部分和解碼部分進(jìn)行跳躍連接(Skip connection)[13],使前面提取的特征信息也可以得到充分利用.最終,深度估計(jì)網(wǎng)絡(luò)通過對(duì)更大尺度的特征信息進(jìn)行保留,提高深度圖精度以及視覺質(zhì)量.同時(shí),通過移除無效像素點(diǎn),并將其加權(quán)到相對(duì)應(yīng)的視圖重建損失函數(shù)的計(jì)算中,進(jìn)一步擺脫無效點(diǎn)的干擾.同時(shí),通過提高相機(jī)位姿的精度來計(jì)算出更加精確地視圖重建損失函數(shù),間接提高深度恢復(fù)的準(zhǔn)確度.

綜上所述,創(chuàng)新點(diǎn)如下:

1)首先通過CLAHE對(duì)圖像進(jìn)行預(yù)處理工作,在一定程度上減少圖像中光照不均勻以及退化等問題,加強(qiáng)光度一致性假設(shè)條件.引入空洞卷積,通過考慮更大視野范圍的圖像特征幫助網(wǎng)絡(luò)更好的學(xué)習(xí)全局與局部特征信息,提高了深度值的恢復(fù)精度和深度圖質(zhì)量.

2)通過計(jì)算多方誤差進(jìn)行分?jǐn)偟姆椒?解決基于深度學(xué)習(xí)無法使用捆集優(yōu)化調(diào)整相機(jī)位姿誤差累積的問題.其次,通過移除差異較大的無效像素點(diǎn)來減輕場(chǎng)景中動(dòng)態(tài)物體的干擾,幫助網(wǎng)絡(luò)重建出更加精確的重建視圖,進(jìn)一步提高深度的預(yù)測(cè)精度.

2 相關(guān)工作

早期的深度恢復(fù)任務(wù)通常認(rèn)為某一個(gè)像素或區(qū)域的深度與相鄰像素或區(qū)域的深度存在關(guān)聯(lián).一般使用馬爾可夫隨機(jī)場(chǎng)(Markov Random Field,MRF)[14]對(duì)這種上下文相關(guān)的約束關(guān)系進(jìn)行建模,通過其提取到圖像中的全局和局部特征信息完成深度恢復(fù)任務(wù).

2016年,Garg 等[15]首次提出根據(jù)視差圖生成深度圖.其先通過左視圖生成視差圖,再利用視差圖與右視圖得到左視圖的預(yù)測(cè)圖像,整個(gè)網(wǎng)絡(luò)通過最小化預(yù)測(cè)圖像與真實(shí)圖像之間的差異作為監(jiān)督項(xiàng).2017年,Godard 等[16]在此基礎(chǔ)上提出左右一致性(Left-Right Consistency)的方法,通過提升視差圖的視差效果進(jìn)一步改善了深度恢復(fù)效果.

同年,Zhou等[17]人提出的SfM-Learner通過無監(jiān)督方法完成深度恢復(fù)和位姿估計(jì),這兩個(gè)任務(wù)分別由兩個(gè)網(wǎng)絡(luò)共同學(xué)習(xí)獲得,將視圖重構(gòu)損失函數(shù)作為網(wǎng)絡(luò)的自監(jiān)督項(xiàng),其首先通過恢復(fù)的深度值將目標(biāo)幀中的2D像素坐標(biāo)反投影到相機(jī)坐標(biāo)系下,再通過預(yù)測(cè)得到的相機(jī)位姿值將3D點(diǎn)轉(zhuǎn)換到相鄰源幀的相機(jī)坐標(biāo)系下,再通過相機(jī)內(nèi)參投影到像素坐標(biāo)下,最終通過雙線性插值得到在源幀中目標(biāo)幀對(duì)應(yīng)位置的像素值.將變換得到的像素值與原始目標(biāo)幀像素值進(jìn)行對(duì)比得到的光照誤差作為自監(jiān)督項(xiàng)引導(dǎo)網(wǎng)絡(luò)訓(xùn)練.該網(wǎng)絡(luò)還在位姿估計(jì)網(wǎng)絡(luò)后端多出了預(yù)測(cè)動(dòng)態(tài)物體Explainability mask的分支,通過掩碼判斷該像素點(diǎn)是否為動(dòng)態(tài)點(diǎn)以此減輕動(dòng)態(tài)點(diǎn)的影響,提高了深度恢復(fù)和位姿估計(jì)精度.

2018年,Yin等[7]人提出GeoNet,其將圖像分為由相機(jī)運(yùn)動(dòng)所導(dǎo)致剛性流和由動(dòng)態(tài)物體導(dǎo)致的非剛性流兩部分,非剛性流通過光流進(jìn)行補(bǔ)償計(jì)算,網(wǎng)絡(luò)基于場(chǎng)景幾何的本質(zhì),提供了強(qiáng)大的網(wǎng)絡(luò)約束條件,將深度估計(jì)、位姿估計(jì)和光流估計(jì)聯(lián)合起來進(jìn)行無監(jiān)督學(xué)習(xí),最終3個(gè)任務(wù)的精度都被提升.

2019年,Li等[18]人提出的UnDeepVO對(duì)所有像素點(diǎn)都進(jìn)行優(yōu)化,在時(shí)間和空間上分別進(jìn)行損失函數(shù)的計(jì)算,用空間上左右圖像序列進(jìn)行相機(jī)六自由度變換預(yù)測(cè)位置和方向,用時(shí)間上的圖像序列完成前后兩幀的光度一致性誤差計(jì)算和點(diǎn)云的配準(zhǔn).

本文主要受到GeoNet和空洞卷積網(wǎng)絡(luò)的影響,針對(duì)無監(jiān)督下單目的深度恢復(fù)情況提出了基于空洞卷積的深度恢復(fù)網(wǎng)絡(luò)模型,在提取深度時(shí)多方考慮全局和細(xì)節(jié)的信息,使用視圖重構(gòu)損失函數(shù)來實(shí)現(xiàn)無監(jiān)督訓(xùn)練任務(wù)得到圖像的深度.受ORB-SLAM[19]系統(tǒng)中捆集調(diào)整優(yōu)化思想的影響,提出通過誤差分?jǐn)倱p失來減輕相機(jī)的累積誤差問題,進(jìn)一步優(yōu)化深度恢復(fù)效果.

3 基于無監(jiān)督深度估計(jì)的相機(jī)位姿網(wǎng)絡(luò)

3.1 空洞卷積

空洞卷積[12]是指按照膨脹率(dilation rate)向普通卷積內(nèi)注入空洞,即用0對(duì)原始卷積核進(jìn)行填充.空洞卷積在保持住特征圖尺寸不變的情況下利用多尺度信息進(jìn)行學(xué)習(xí)[20].首先,獲取多尺度信息在視覺任務(wù)中是十分重要的,尤其對(duì)像素級(jí)分類的問題上,它可以大幅度提高預(yù)測(cè)的準(zhǔn)確性.在網(wǎng)絡(luò)中卷積核越大,感受野越大,表示其學(xué)習(xí)到的原始圖像中的范圍越大,這表示它可能包含更為全局的信息,同時(shí)包含圖像中層次更高的特征;相反,卷積核越小則表示越細(xì)節(jié)的內(nèi)容[21].

圖1 普通卷積與空洞卷積對(duì)比Fig.1 Comparison of ordinary convolution and atrous convolution

一般卷積核大小為3×3,當(dāng)每一層膨脹率不同時(shí),感受野相應(yīng)就會(huì)不同,通過不同的感受野獲取了圖像中的多個(gè)尺度的信息.對(duì)于3×3卷積核來說,當(dāng)膨脹率為2時(shí),網(wǎng)絡(luò)首先根據(jù)膨脹率在每個(gè)兩個(gè)值中間插入一個(gè)0,同等條件下,卷積視野從之前的3×3變?yōu)?×5,其在參數(shù)不增加的情況下擴(kuò)張了卷積核的感受野,如圖1(b).若以卷積核大小為n×n計(jì)算,當(dāng)膨脹率為1時(shí),其就是普通卷積,感受野為n×n;當(dāng)膨脹率為a時(shí),首先在卷積核每?jī)蓚€(gè)值之間插入a-1個(gè)0,再對(duì)其進(jìn)行卷積操作,最終得到的感受野大小為(2a+1)×(2a+1),其只對(duì)卷積核內(nèi)部加固定個(gè)數(shù)的0,卷積核并不進(jìn)行改變.其在不影響特征圖的尺寸下,又可以避免對(duì)圖像下采樣造成的信息損失,同時(shí)利用到多尺度信息,這對(duì)圖像特征提取是十分有效的.

3.2 網(wǎng)絡(luò)結(jié)構(gòu)

3.2.1 融入空洞卷積的深度恢復(fù)網(wǎng)絡(luò)

基于無監(jiān)督進(jìn)行深度恢復(fù)和位姿估計(jì)任務(wù)的典型方法是利用視圖重構(gòu)損失函數(shù)作為自監(jiān)督項(xiàng),最小化原始與重構(gòu)視圖之間的誤差來同時(shí)優(yōu)化深度圖和相機(jī)位姿值.其中深度恢復(fù)網(wǎng)絡(luò)結(jié)構(gòu)利用帶有跳躍連接的編解碼器網(wǎng)絡(luò)結(jié)構(gòu)獲得,再通過相鄰幀之間的相機(jī)位姿變換以及已知的相機(jī)內(nèi)參完成目標(biāo)視圖的重建工作.精確的深度圖可以優(yōu)化相機(jī)位姿的預(yù)測(cè)結(jié)果,相機(jī)位姿的預(yù)測(cè)結(jié)果也會(huì)反過來促進(jìn)深度圖的優(yōu)化.但實(shí)際上僅通過普通卷積提取到的圖像特征并不全面,因?yàn)榫矸e核視野有限,導(dǎo)致提取到的圖像特征不能很好地表達(dá)上下文信息.

因此,本文提出一種基于空洞卷積優(yōu)化深度恢復(fù)網(wǎng)絡(luò)結(jié)構(gòu)的方法,通過將空洞卷積加入到DispNet深度恢復(fù)網(wǎng)絡(luò)結(jié)構(gòu)中,幫助網(wǎng)絡(luò)學(xué)習(xí)到圖像特征間更大視野、更為全局的特征信息,幫助其恢復(fù)出質(zhì)量更高的深度圖.然后,通過預(yù)測(cè)到的優(yōu)化后的深度值可以幫助網(wǎng)絡(luò)更準(zhǔn)確的恢復(fù)出圖像中的3D點(diǎn)坐標(biāo),再通過位姿估計(jì)網(wǎng)絡(luò)得到的相機(jī)位姿值可以得到質(zhì)量更高的重建視圖.

在融合空洞卷積的深度恢復(fù)網(wǎng)絡(luò)設(shè)計(jì)過程中,首先,需要最大化網(wǎng)絡(luò)的感受野學(xué)習(xí)到更高層次的特征,同時(shí)不過多的消耗內(nèi)存,這就需要盡量少加入空洞卷積層;其次,需要不同尺度下完全覆蓋感受野,幫助網(wǎng)絡(luò)學(xué)習(xí)到不同層次的特征信息不遺失所有輸入節(jié)點(diǎn)信息[4].

圖2 整體網(wǎng)絡(luò)結(jié)構(gòu)示意圖Fig.2 Overall network structure diagram

如圖2所示,本文的深度恢復(fù)網(wǎng)絡(luò)在第2、4、6層卷積層后加入空洞卷積,在解碼部分相對(duì)應(yīng)設(shè)計(jì)反卷積層獲得圖像深度.通過多組對(duì)比實(shí)驗(yàn)發(fā)現(xiàn),當(dāng)選擇膨脹率為3、9、15時(shí)網(wǎng)絡(luò)深度恢復(fù)效果最好,既能以較少的計(jì)算量提取到更加全局的圖像特征,也能覆蓋全部感受野最大程度的利用所有圖像信息進(jìn)行深度恢復(fù).

3.2.2 位姿估計(jì)網(wǎng)絡(luò)

位姿估計(jì)網(wǎng)絡(luò)采用PoseNet,網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示,其只包含卷積部分對(duì)特征進(jìn)行提取,在淺層同樣使用較大的卷積核來提取圖像中更多信息,在后面使用多個(gè)較小的卷積核減少參數(shù)數(shù)量并且提取圖像中的更多細(xì)節(jié)特征.除輸出層外,在每層卷積網(wǎng)絡(luò)之后均采用ReLU[22]函數(shù)進(jìn)行激活,以此在一定程度上幫助網(wǎng)絡(luò)解決梯度消失問題和并進(jìn)行特征篩選.網(wǎng)絡(luò)的輸出以每組第一幀為該組的相機(jī)坐標(biāo)系參考,輸出其余幀相對(duì)于第1幀的位姿變換,包含時(shí)間戳(timestamp)以及該幀相對(duì)于第1幀的位移和旋轉(zhuǎn)四元數(shù).

3.2.3 總體網(wǎng)絡(luò)

將深度恢復(fù)網(wǎng)絡(luò)和位姿估計(jì)網(wǎng)絡(luò)通過視圖重構(gòu)損失函數(shù)聯(lián)合起來共同學(xué)習(xí),輸入連續(xù)的視頻幀獲得其深度值和幀間位姿轉(zhuǎn)換值.其中,淺色和深色模塊分別代表卷積層和反卷積層,點(diǎn)狀體代表空洞卷積層.

3.3 視圖重構(gòu)損失函數(shù)

計(jì)算視圖重構(gòu)損失函數(shù)時(shí),如果網(wǎng)絡(luò)的輸入是3幀連續(xù)圖像,分別為It-1,It,It+1中間幀作為目標(biāo)幀,前后兩幀作為非目標(biāo)幀進(jìn)行后續(xù)計(jì)算.在視圖重構(gòu)計(jì)算過程中用到的目標(biāo)幀深度值通過深度估計(jì)網(wǎng)絡(luò)獲得,目標(biāo)幀與左右兩源幀之間的相機(jī)位姿通過位姿估計(jì)網(wǎng)絡(luò)獲得.具體過程如下:

pz=KTt→zDt(pt)K-1pt

(1)

L=‖It(pt)-z(pz)‖

(2)

在選擇兩圖像光度誤差作為損失函數(shù)是基于光度一致性假設(shè)條件下的,然而,實(shí)際環(huán)境中的光線條件和相機(jī)曝光是經(jīng)常變化的.因此,再利用圖像結(jié)構(gòu)相似度和一個(gè)范數(shù)來對(duì)光度誤差進(jìn)一步處理.其中,結(jié)構(gòu)相似度(SSIM)[23]只計(jì)算整幅圖像的整體均值和方差的差值,它不會(huì)被處理到像素級(jí)別,其與一范數(shù)一起使用以保留圖像細(xì)節(jié).此處不僅計(jì)算目標(biāo)幀到非目標(biāo)幀的視圖重構(gòu)損失函數(shù),同樣計(jì)算非目標(biāo)幀到目標(biāo)幀的視圖重構(gòu)損失函數(shù).由此,公式(2)被改進(jìn)為:

(3)

式中,α為0.85.

3.4 CLAHE預(yù)處理

在真實(shí)的圖像采集場(chǎng)景中會(huì)存在天氣影響以及相機(jī)曝光等問題,這會(huì)導(dǎo)致相機(jī)采集到的圖像信息存在光線亮暗分布不均勻以及圖像退化等問題.但在使用光度誤差進(jìn)行損失的計(jì)算過程中需要很強(qiáng)的光度一致性假設(shè),這就需要在圖像輸入網(wǎng)絡(luò)前進(jìn)行圖像增強(qiáng)處理,盡量減少光度信息對(duì)網(wǎng)絡(luò)精度和穩(wěn)定度的影響.

圖3 CLAHE處理后的圖像Fig.3 Image after CLAHE processing

為了提高數(shù)據(jù)集的準(zhǔn)確性,本文使用了基于限制對(duì)比度的自適應(yīng)直方圖均衡化[24](Contrast Limited Adaptive Histgram Equalization,CLAHE)方法.其對(duì)每個(gè)圖像子塊進(jìn)行直方圖均衡,為有效地限制噪聲放大,該算法將大于某一閾值的部分平均分配到直方圖的其他地方,同時(shí)進(jìn)行對(duì)比度限幅處理[25].通過CLAHE的增強(qiáng)后,可以在一定程度上解決圖像中光照分布或明或暗等圖像退化情況,效果如圖3所示.

圖3中展示的是分別從00,01和02序列中選擇的一幀經(jīng)過CLAHE處理過后的圖像,由圖可以清晰的看出經(jīng)過處理后的圖像中各物體之間的輪廓更加清晰也圖像亮度也更均勻,有助于網(wǎng)絡(luò)對(duì)圖像特征的提取.

4 基于誤差分?jǐn)偟膿p失優(yōu)化

4.1 位姿優(yōu)化

4.1.1 傳統(tǒng)的位姿優(yōu)化

相機(jī)在移動(dòng)過程中產(chǎn)生的誤差會(huì)跟隨相機(jī)的不斷移動(dòng)而不斷累積,傳統(tǒng)的視覺里程計(jì)通過捆集調(diào)整(Bundle Adjustment,BA)[26]來對(duì)三維點(diǎn)坐標(biāo)和相機(jī)參數(shù)進(jìn)行非線性優(yōu)化,盡可能減少漂移誤差帶來的影響.其通過給定空間三維點(diǎn)的坐標(biāo)和相機(jī)的參數(shù),外加觀察到的點(diǎn),最小化所有特征點(diǎn)的重投影誤差來優(yōu)化相機(jī)的參數(shù)和三維點(diǎn)的坐標(biāo),減少由于相機(jī)移動(dòng)對(duì)誤差的累積影響.計(jì)算重投影誤差的公式如下:

(4)

(5)

對(duì)于傳統(tǒng)位姿優(yōu)化算法來說,BA通過高密度的分?jǐn)傊赝队罢`差來對(duì)位姿以及地圖點(diǎn)進(jìn)行優(yōu)化處理,分?jǐn)偟脑蕉嘧罱K的位姿結(jié)果就越精確,這就可以解決應(yīng)用特征法估計(jì)位姿時(shí)初始值不精確的問題.

4.1.2 基于視圖重構(gòu)的誤差分?jǐn)?/p>

由上一節(jié)可知,相機(jī)由于移動(dòng)不可避免的會(huì)產(chǎn)生誤差的累積現(xiàn)象.在傳統(tǒng)算法中會(huì)通過BA對(duì)所有特征點(diǎn)計(jì)算重投影誤差,但是在基于深度學(xué)習(xí)計(jì)算相機(jī)位姿過程中并沒有利用特征點(diǎn),而是計(jì)算的全體像素的視圖重構(gòu)誤差.由此,借鑒BA的基本思想提出了基于視圖重構(gòu)的誤差分?jǐn)偡椒▽?duì)誤差進(jìn)行分?jǐn)?提高位姿估計(jì)精度.

圖4 誤差分?jǐn)偸疽鈭DFig.4 Error allocation diagram

具體誤差分?jǐn)偟倪^程如圖4所示,選取連續(xù)的3幀圖像,假設(shè)3張圖像中的像素點(diǎn)分別是xt-1,xt和xt+1.正常情況下,計(jì)算A部分關(guān)于相鄰目標(biāo)幀重構(gòu)造成的的視圖重構(gòu)損失.由于相機(jī)移動(dòng)導(dǎo)致的累積誤差可以通過計(jì)算A、B和C的誤差進(jìn)行分?jǐn)倎磉_(dá)到類似于捆集調(diào)整一樣的優(yōu)化過程.分?jǐn)偟恼`差由3個(gè)部分組成,由xt投影到xt-1和xt+1的視圖重構(gòu)誤差(A),由xt-1和xt+1投影到xt的視圖重構(gòu)誤差(B),由xt-1和xt+1的相互投影導(dǎo)致的視圖重構(gòu)誤差(C)3部分組成.本節(jié)主要將視圖重構(gòu)誤差分?jǐn)偟?個(gè)連續(xù)幀,以此來為整體網(wǎng)絡(luò)結(jié)構(gòu)提供更強(qiáng)的網(wǎng)絡(luò)約束條件,幫助網(wǎng)絡(luò)優(yōu)化對(duì)于位姿的學(xué)習(xí),提高位姿和深度恢復(fù)的整體精度.

由此,在3.3節(jié)只計(jì)算目標(biāo)幀與非目標(biāo)幀視圖重構(gòu)損失函數(shù)的基礎(chǔ)上增加第t-1幀和第t+1幀的視圖重構(gòu)誤差.位姿估計(jì)網(wǎng)絡(luò)得到的是相鄰幀間的相機(jī)位姿矩陣,若要獲得不相鄰幀的位姿變換矩陣需要進(jìn)一步計(jì)算.

由第t幀~第t-1幀的位姿變換矩陣T0和由第t幀~第t+1幀的位姿變換矩陣T1是可通過位姿估計(jì)網(wǎng)絡(luò)直接獲得的,那么Tt-1→t+1可由下式獲得:

(6)

pt+1=KTt-1→t+1Dt-1(pt-1)K-1pt-1

(7)

同理,Tt+1→t-1可由下式獲得:

(8)

pt-1=KTt+1→t-1Dt+1(pt+1)K-1pt+1

(9)

最后,計(jì)算xt-1~xt+1和xt+1~xt-1的重建導(dǎo)致的視圖重構(gòu)誤差如下:

(10)

4.2 篩選像素點(diǎn)

4.2.1 移除無效像素

進(jìn)行相機(jī)位姿估計(jì)的實(shí)際應(yīng)用場(chǎng)景是復(fù)雜多樣,存在許多動(dòng)態(tài)物體以及空間中的弱紋理區(qū)域的影響,比如天花板等紋理均勻的區(qū)域.如果像素點(diǎn)落在弱紋理區(qū)域或者動(dòng)態(tài)物體上,那么網(wǎng)絡(luò)在后面進(jìn)行像素點(diǎn)匹配時(shí)會(huì)產(chǎn)生錯(cuò)誤[7].所以,需要對(duì)全部像素進(jìn)行檢查,查看其的位置變化是否異常,如果變化過大則被判斷為無效點(diǎn)進(jìn)行移除.

(11)

(12)

由于公式(3)視圖重構(gòu)損失函數(shù)是基于全部像素點(diǎn)的,其中包含了許多無效點(diǎn)對(duì)損失計(jì)算過程產(chǎn)生干擾,所以需要對(duì)其使用的所有像素點(diǎn)進(jìn)行篩選處理.

(13)

式中,f(·)指的是像素點(diǎn)的篩選過程,[·]是判斷括號(hào)內(nèi)是否滿足條件的艾弗森括號(hào),若滿足則為一,否則為零.

4.2.2 幾何一致性損失

為了進(jìn)一步解決圖像中存在遮擋和非博朗曲面的影響,與GeoNet網(wǎng)絡(luò)結(jié)構(gòu)相似,使用前后向光流一致性檢驗(yàn)來解決此問題[7].具體公式如下:

(14)

4.3 深度平滑損失函數(shù)

一張圖像絕大部分區(qū)域深度都是連續(xù)的,僅在物體邊緣,背景與物體的交界處的區(qū)域深度不是連續(xù)的.由此,利用圖像梯度對(duì)深度值進(jìn)行加權(quán),利用邊緣感知深度平滑損失函數(shù)對(duì)深度進(jìn)行約束,排除異常深度值的干擾[7].具體公式如下:

(15)

式中,▽D(pt)代表目標(biāo)幀深度圖的梯度,▽I(pt)代表圖像梯度.

4.4 總的損失函數(shù)

由視圖重構(gòu)損失函數(shù)、分?jǐn)偟囊晥D重構(gòu)損失函數(shù)、幾何一致性損失函數(shù)和深度平滑損失函數(shù)共同組成總的損失函數(shù)對(duì)網(wǎng)絡(luò)提供更強(qiáng)的約束條件.

L=L1+λ2L2+λ3L3+λ4L4

(16)

5 實(shí)驗(yàn)結(jié)果與分析

本文模型通過融合空洞卷積優(yōu)化深度圖的質(zhì)量,利用誤差分?jǐn)偛呗詫?duì)相機(jī)位姿進(jìn)行優(yōu)化.本節(jié)對(duì)具體實(shí)驗(yàn)情況進(jìn)行說明,在KITTI數(shù)據(jù)集上將最終得出的深度圖和相機(jī)軌跡與現(xiàn)有其他方法進(jìn)行可視化比較,并且對(duì)模型的精度以及其他測(cè)量標(biāo)準(zhǔn)進(jìn)行評(píng)估.

5.1 實(shí)驗(yàn)平臺(tái)與數(shù)據(jù)集

本文實(shí)驗(yàn)平臺(tái)為搭載NVIDIA GTX 1070和8GB顯卡的計(jì)算機(jī),在Ubuntu環(huán)境下進(jìn)行,利用GPU進(jìn)行加速,通過Pycharm軟件搭建以TensorFlow 為框架的神經(jīng)網(wǎng)絡(luò).本文使用KITTI為數(shù)據(jù)集,選擇有真實(shí)值的00-10序列,其中使用前9個(gè)序列訓(xùn)練網(wǎng)絡(luò),后兩個(gè)序列進(jìn)行測(cè)試.整體網(wǎng)絡(luò)結(jié)構(gòu)輸入的圖像尺寸全部調(diào)整到128×416,并且對(duì)其進(jìn)行部分裁剪、旋轉(zhuǎn)等處理減輕網(wǎng)絡(luò)的過擬合現(xiàn)象,利用Adam[27]優(yōu)化器對(duì)網(wǎng)絡(luò)參數(shù)進(jìn)行調(diào)整.

在實(shí)驗(yàn)過程中,將深度恢復(fù)網(wǎng)絡(luò)和位姿估計(jì)網(wǎng)絡(luò)共同訓(xùn)練,通過仿射渲染對(duì)目標(biāo)視圖進(jìn)行重建,通過最小化目標(biāo)視圖與重建視圖之間的視圖合成損失作為監(jiān)督.經(jīng)多次實(shí)驗(yàn)測(cè)試發(fā)現(xiàn),當(dāng)選擇超參數(shù)β1=0.9以及β2=0.999,初始學(xué)習(xí)率為0.0002時(shí)網(wǎng)絡(luò)的訓(xùn)練效果最出色,其中初始學(xué)習(xí)率會(huì)根據(jù)網(wǎng)絡(luò)訓(xùn)練情況做出自動(dòng)調(diào)整,在300k次左右迭代時(shí)網(wǎng)絡(luò)趨于收斂.參考文獻(xiàn)[7],幾何一致性損失權(quán)重和深度平滑損失權(quán)重設(shè)置為λ3=0.5和λ4=0.1,經(jīng)過多次超參數(shù)調(diào)整得出誤差分?jǐn)倱p失函數(shù)為λ2=0.1時(shí)網(wǎng)絡(luò)的訓(xùn)練效果最好.

5.2 模型評(píng)估

5.2.1 深度性能評(píng)估

網(wǎng)絡(luò)的深度性能通過廣泛應(yīng)用的TUM評(píng)估工具包進(jìn)行評(píng)估,使用Eigen[28]等的分割方法,先從原始KITTI數(shù)據(jù)集32個(gè)場(chǎng)景中選擇訓(xùn)練集,另外的29個(gè)場(chǎng)景中選擇測(cè)試集,剩下的圖像進(jìn)行評(píng)估工作.本文從以下幾個(gè)方面進(jìn)行比較:

1)平均相對(duì)誤差(Abs Rel):

(17)

2)平方根相對(duì)誤差(Sq Rel):

(18)

3)均方根誤差(RMSE):

(19)

4)對(duì)數(shù)均方根誤差(RMSElog):

(20)

5)準(zhǔn)確率

(21)

如表1所示,與Zhou等同樣使用VGG網(wǎng)絡(luò)結(jié)構(gòu)的相比,在Abs Rel、Sq Rel、RMSE、RMSElog誤差度量指標(biāo)上分別下降了0.042、0.569、1.201、0.047,在精度方面分別提升了8.6%、3.7%、1.4%.與有監(jiān)督的模型相比,本文的網(wǎng)絡(luò)達(dá)到的效果與其不相上下或者更加優(yōu)異.

表1 深度值評(píng)估Table 1 Depth value evaluation

本文與Zhou等和Yin等使用相同的以VGG作為深度恢復(fù)網(wǎng)絡(luò)的骨架,但本文的模型預(yù)測(cè)結(jié)果更優(yōu)異.

首先,Zhou等只是在相機(jī)位姿估計(jì)網(wǎng)絡(luò)的后面加入可解釋性網(wǎng)絡(luò)對(duì)運(yùn)動(dòng)的物體點(diǎn)進(jìn)行一定的彌補(bǔ)工作,其并沒有對(duì)深度恢復(fù)網(wǎng)絡(luò)做出很大的貢獻(xiàn),僅對(duì)整體網(wǎng)絡(luò)使用的像素點(diǎn)進(jìn)行了篩選和優(yōu)化.Yin等與其不同的是其使用光流預(yù)測(cè)網(wǎng)絡(luò)對(duì)非剛性結(jié)構(gòu)進(jìn)行補(bǔ)償,并沒有對(duì)深度恢復(fù)網(wǎng)絡(luò)性能做出實(shí)質(zhì)性的提高,仍然是對(duì)圖像中全部像素點(diǎn)的處理.在本文的網(wǎng)絡(luò)模型中使用篩選像素點(diǎn)的方法移除了無效像素點(diǎn)以更低的成本完成了與它們大概相同的功能.除此之外,文中還對(duì)網(wǎng)絡(luò)結(jié)構(gòu)進(jìn)行改進(jìn),加入空洞卷積層來提高網(wǎng)絡(luò)對(duì)圖像特征的提取能力,提高網(wǎng)絡(luò)模型的感受野幫助其更精確的恢復(fù)出網(wǎng)絡(luò)的深度值.

第2方面是網(wǎng)絡(luò)的約束條件,在Yin等提出的幾何一致性損失函數(shù)基礎(chǔ)上,本文加入誤差分?jǐn)倱p失函數(shù)這一更強(qiáng)的網(wǎng)絡(luò)約束來分?jǐn)傁鄼C(jī)誤差.這在一定程度上減少了相機(jī)的漂移誤差,幫助網(wǎng)絡(luò)重建出更高質(zhì)量的重建視圖,由此進(jìn)一步提高網(wǎng)絡(luò)對(duì)深度圖的優(yōu)化.

5.2.2 相機(jī)位姿評(píng)估

訓(xùn)練模型的位姿估計(jì)網(wǎng)絡(luò)時(shí),輸入的是連續(xù)5幀圖像,輸出的是這5幀圖像之間的相對(duì)位姿,其輸出的相對(duì)位姿并不是相機(jī)的運(yùn)動(dòng)軌跡,若要比較運(yùn)動(dòng)軌跡需要將所有的位姿變換矩陣轉(zhuǎn)移到以第1幀為世界坐標(biāo)系下.因此,本實(shí)驗(yàn)的相機(jī)位姿評(píng)估包含兩部分,一部分是以5幀為一組和ORB-SLAM算法計(jì)算絕對(duì)軌跡誤差(Absolutely Trajectory Error,ATE)進(jìn)行位姿的評(píng)估.

表2 09和10序列在ATE比較Table 2 09 and 10 sequences are compared in ATE

如表2所示,本文的方法不僅比相同5幀為一組優(yōu)化的ORB-SLAM和Zhou等的相機(jī)位姿估計(jì)精度更加精確,絕對(duì)軌跡誤差更小.由此可以得出,誤差分?jǐn)倱p失的引入對(duì)于相機(jī)位姿估計(jì)來說是有一定的幫助,其對(duì)整體網(wǎng)絡(luò)結(jié)構(gòu)提供了更強(qiáng)的約束條件,也同時(shí)提高了相機(jī)位姿估計(jì)的精度.

5.3 可視化比較

5.3.1 深度可視化

訓(xùn)練模型的深度估計(jì)網(wǎng)絡(luò)時(shí),輸入的是連續(xù)3幀圖像,當(dāng)模型訓(xùn)練好后,只需要輸入一張單目圖像就可以得到該圖像的深度值.本模型預(yù)測(cè)的深度圖與Zhou等預(yù)測(cè)的深度圖的可視化比較結(jié)果如圖5所示.

圖5 深度圖可視化比較Fig.5 Depth map visualization comparison

如圖5所示,Zhou等方法提取出的深度圖像模糊,圖像中所有物體都沒有輪廓感,朦朧一片,而本文的方法得到的深度圖像細(xì)節(jié)更加明朗,物體的輪廓感相對(duì)更加清晰,比如本文方法的深度圖可以更精細(xì)的還原出汽車和路邊的樹的輪廓細(xì)節(jié),這證實(shí)了通過空洞卷積進(jìn)行特征的精確提取是十分有必要的,它對(duì)于物體輪廓的精細(xì)還原起到了至關(guān)重要的作用.

5.3.2 位姿軌跡可視化

相機(jī)軌跡不是相機(jī)之間的相對(duì)位姿,其需要將幀間相對(duì)位姿全部轉(zhuǎn)換到與真實(shí)軌跡統(tǒng)一的坐標(biāo)系下,得到相機(jī)的全局位姿,最后進(jìn)行預(yù)測(cè)位姿與全局位姿的可視化比較,更加直觀的查看預(yù)測(cè)軌跡是否精確.

本模型以5幀連續(xù)圖像為一組,輸出每組中圖像幀與該組第1幀的位姿變換矩陣,此處將所有幀間變換矩陣轉(zhuǎn)換到以第1幀為世界坐標(biāo)系下的位姿變換矩陣,然后將得到的位姿變換信息進(jìn)行可視化展示,如圖是本模型預(yù)測(cè)的位姿軌跡與真實(shí)的位姿軌跡的可視化比較,由圖6可以看出本模型在加入誤差分?jǐn)偛呗源胬{(diào)整進(jìn)行優(yōu)化后的位姿預(yù)測(cè)結(jié)果得到的較好的結(jié)果.

圖6 09序列和10序列軌跡可視化Fig.6 09-sequence and 10-sequence trajectory visualization

其中09序列因?yàn)楸旧淼幕丨h(huán)復(fù)雜性在網(wǎng)絡(luò)預(yù)測(cè)中并沒有恢復(fù)到與原先相同的軌跡,但可以看出其運(yùn)動(dòng)軌跡還有十分相似,10序列的軌跡與真實(shí)軌跡更加吻合.

6 總 結(jié)

為了解決單目無監(jiān)督情況下恢復(fù)深度和位姿估計(jì)的任務(wù),本文提出了一種融合空洞卷積并且添加誤差分?jǐn)偛呗缘木W(wǎng)絡(luò)結(jié)構(gòu).網(wǎng)絡(luò)整體的無監(jiān)督項(xiàng)采用視圖重建的損失函數(shù)進(jìn)行計(jì)算,主要通過最小化目標(biāo)視圖與通過其重建的視圖之間的誤差來進(jìn)行.本文在此基礎(chǔ)上提出了誤差分?jǐn)偛呗詠斫鉀Q相機(jī)位姿誤差累積的情況,針對(duì)實(shí)際情況中存在的動(dòng)態(tài)點(diǎn)進(jìn)行尋找并且剔除無效點(diǎn)的處理,有效的提高了網(wǎng)絡(luò)對(duì)位姿預(yù)測(cè)的結(jié)果.在此之外,針對(duì)標(biāo)準(zhǔn)卷積視野有限性,從而導(dǎo)致網(wǎng)絡(luò)可能學(xué)習(xí)不到全局特征這個(gè)問題,將空洞卷積融合到深度估計(jì)網(wǎng)絡(luò),在不改變特征圖大小以及不額外引入?yún)?shù)的情況下提高的網(wǎng)絡(luò)的視野,幫助其學(xué)習(xí)到全局和細(xì)節(jié)特征,提高網(wǎng)絡(luò)的深度恢復(fù)質(zhì)量,深度的精確度直接影響到位姿估計(jì)的精確度,由此也進(jìn)一步提高了位姿估計(jì)的結(jié)果.本文提出的網(wǎng)絡(luò)不需要真實(shí)值作為監(jiān)督,在深度恢復(fù)和位姿估計(jì)方面的精度都有所提高,其得到的深度圖和位姿值可以直接應(yīng)用于無人駕駛以及機(jī)器人等領(lǐng)域.實(shí)驗(yàn)結(jié)果表明,本文所預(yù)測(cè)的深度圖不僅在質(zhì)量上有所提高,而且在精度上也獲得了提升.本文在無需真實(shí)值的情況下,不僅比大部分無監(jiān)督方法更精確,與部分有監(jiān)督的網(wǎng)絡(luò)相比也有所提高.

猜你喜歡
分?jǐn)?/a>位姿視圖
系統(tǒng)工程學(xué)報(bào)(2021年4期)2021-12-21 06:21:16
5.3 視圖與投影
視圖
Y—20重型運(yùn)輸機(jī)多視圖
SA2型76毫米車載高炮多視圖
基于共面直線迭代加權(quán)最小二乘的相機(jī)位姿估計(jì)
基于CAD模型的單目六自由度位姿測(cè)量
小型四旋翼飛行器位姿建模及其仿真
無形資產(chǎn)轉(zhuǎn)移定價(jià)視角下的獨(dú)立交易法與公式分?jǐn)偡ㄖ疇?zhēng):發(fā)展中國家何去何從?
電測(cè)與儀表(2014年3期)2014-04-04 09:08:14
湖口县| 竹溪县| 崇明县| 高雄市| 徐汇区| 苍南县| 林口县| 若羌县| 眉山市| 靖边县| 泸溪县| 孟村| 玉溪市| 靖江市| 高要市| 湟源县| SHOW| 尉氏县| 成都市| 曲阳县| 含山县| 昆山市| 绍兴市| 昌都县| 普格县| 自治县| 福建省| 平凉市| 兴安县| 屏东县| 闽侯县| 若羌县| 婺源县| 横山县| 扬中市| 敦煌市| 沙雅县| 四川省| 东乡县| 衡南县| 绥中县|