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

?

基于局部注意力和位姿迭代優(yōu)化的自監(jiān)督單目深度估計(jì)算法

2022-06-23 02:45趙霖趙滟靳捷
信號(hào)處理 2022年5期
關(guān)鍵詞:單目位姿像素

趙霖 趙滟 靳捷

(中國航天系統(tǒng)科學(xué)與工程研究院,北京 100048)

1 引言

估計(jì)場(chǎng)景的三維幾何結(jié)構(gòu)是計(jì)算機(jī)視覺的一項(xiàng)基本任務(wù)。經(jīng)過幾十年的發(fā)展,當(dāng)前已有包括雙目相機(jī)、結(jié)構(gòu)光相機(jī)、光飛行時(shí)間(TOF)相機(jī)以及激光雷達(dá)等多種三維重建方法。然而,在設(shè)備安裝環(huán)境受限和成本控制要求高的場(chǎng)合中,往往需要使用單個(gè)相機(jī)進(jìn)行場(chǎng)景結(jié)構(gòu)的三維重建,即進(jìn)行單目深度估計(jì)。單目深度估計(jì)在諸多領(lǐng)域有著廣泛的應(yīng)用前景,如智能制造、智能安防、機(jī)器人和自動(dòng)駕駛[1]。

與傳統(tǒng)多視角立體幾何不同,單目深度估計(jì)算法僅能利用單張圖像中的信息進(jìn)行深度推理,對(duì)深度信息進(jìn)行建模的難度較大。因此,手工設(shè)計(jì)的傳統(tǒng)算法模型難以獲得良好的深度估計(jì)結(jié)果[2]。隨著深度學(xué)習(xí)技術(shù)的快速發(fā)展,研究者們發(fā)現(xiàn)卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)能夠很好地建模圖像中的深度線索,從而實(shí)現(xiàn)高性能的單目深度估計(jì)[3]。EIGEN 等人[3]將單目深度估計(jì)建模為回歸問題,利用多尺度結(jié)構(gòu)的CNN 回歸像素深度,并設(shè)計(jì)出尺度不變的損失函數(shù)對(duì)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,為單目深度估計(jì)領(lǐng)域的后續(xù)工作奠定了基礎(chǔ)。隨后,LAINA 等人[4]、CHEN 等人[5]、FU 等人[6]分別從網(wǎng)絡(luò)結(jié)構(gòu)、損失函數(shù)設(shè)計(jì)和問題建模方式等方面進(jìn)行了研究,使得單目深度估計(jì)領(lǐng)域取得了快速發(fā)展。然而,這些方法都是基于全監(jiān)督學(xué)習(xí),需要大量帶有稠密深度真值的數(shù)據(jù)來進(jìn)行網(wǎng)絡(luò)訓(xùn)練。因此,這類方法的泛化性受到了極大地限制。

為突破訓(xùn)練數(shù)據(jù)的限制,研究者們?cè)诙嘁晭缀卧淼幕A(chǔ)上提出了單目深度估計(jì)網(wǎng)絡(luò)的自監(jiān)督訓(xùn)練方法。ZHOU 等人[7]發(fā)表了自監(jiān)督單目深度估計(jì)的開山之作SfMLearner,通過聯(lián)合優(yōu)化深度估計(jì)網(wǎng)絡(luò)和位姿估計(jì)網(wǎng)絡(luò),可以利用單目視頻序列實(shí)現(xiàn)自監(jiān)督訓(xùn)練,而不需要額外的深度標(biāo)簽。隨后,GODARD 等人[8]提出了MonoDepth2,在SfMLearner的基礎(chǔ)上引入了雙目圖像輔助訓(xùn)練,同時(shí)結(jié)合SSIM損失、多尺度監(jiān)督和自動(dòng)掩碼等技術(shù)大幅提升了自監(jiān)督單目深度估計(jì)網(wǎng)絡(luò)的性能。BIAN 等人[9]則針對(duì)自監(jiān)督訓(xùn)練中的遮擋和尺度不一致問題提出了SC-SfMLearner,通過增加尺度一致性約束有效提升深度估計(jì)網(wǎng)絡(luò)的性能。SONG 等人[10]利用多尺度特征提取和注意力機(jī)制增強(qiáng)了網(wǎng)絡(luò)對(duì)圖像細(xì)節(jié)的感知能力,緩解了深度估計(jì)網(wǎng)絡(luò)在細(xì)節(jié)部分估計(jì)模糊的問題。盡管自監(jiān)督單目深度估計(jì)取得了快速發(fā)展,現(xiàn)有的算法仍然存在諸多問題。首先,現(xiàn)有的深度估計(jì)網(wǎng)絡(luò)不能很好地捕捉圖像中的上下文信息,因此無法充分利用深度線索實(shí)現(xiàn)高質(zhì)量的深度推理。其次,現(xiàn)有的位姿估計(jì)網(wǎng)絡(luò)在面對(duì)復(fù)雜運(yùn)動(dòng)時(shí)很有可能會(huì)失效,從而影響深度估計(jì)網(wǎng)絡(luò)的性能。

為此,本文針對(duì)自監(jiān)督單目深度估計(jì)算法中深度估計(jì)精度有限的問題,提出了一種基于局部注意力機(jī)制和迭代優(yōu)化的自監(jiān)督單目深度估計(jì)框架。在KITTI 數(shù)據(jù)集上的實(shí)驗(yàn)表明,本文提出的改進(jìn)自監(jiān)督單目深度估計(jì)算法有效提升了深度估計(jì)的精度。同時(shí),定性實(shí)驗(yàn)結(jié)果也表明了本文方法進(jìn)一步泛化應(yīng)用于智能制造等場(chǎng)景的良好潛力。

2 本文方法

針對(duì)現(xiàn)有的自監(jiān)督單目深度估計(jì)算法存在的問題,本文在SC-SfMLearner[9]的基礎(chǔ)上,從深度估計(jì)網(wǎng)絡(luò)和位姿估計(jì)網(wǎng)絡(luò)兩方面進(jìn)行改進(jìn)。對(duì)于深度估計(jì)網(wǎng)絡(luò),本文引入局部注意力機(jī)制融合特征圖中的圖像上下文信息,從而提升深度估計(jì)網(wǎng)絡(luò)的性能。對(duì)于位姿估計(jì)網(wǎng)絡(luò),本文引入迭代優(yōu)化來增強(qiáng)位姿估計(jì)網(wǎng)絡(luò)對(duì)復(fù)雜運(yùn)動(dòng)的擬合能力,使自監(jiān)督訓(xùn)練更加魯棒,從而提升深度估計(jì)網(wǎng)絡(luò)的性能。

接下來,本節(jié)將分別介紹單目深度估計(jì)的自監(jiān)督訓(xùn)練原理,引入局部注意力機(jī)制的深度估計(jì)網(wǎng)絡(luò)和基于迭代優(yōu)化的位姿估計(jì)網(wǎng)絡(luò)。

2.1 自監(jiān)督單目深度估計(jì)框架

自監(jiān)督單目深度估計(jì)是在多視角立體幾何的基礎(chǔ)上,將深度估計(jì)問題轉(zhuǎn)化為新視角合成問題,通過對(duì)比合成圖像和真實(shí)圖像的一致性產(chǎn)生監(jiān)督信號(hào),進(jìn)而實(shí)現(xiàn)自監(jiān)督訓(xùn)練,其整體訓(xùn)練框架如圖1所示。

自監(jiān)督單目深度估計(jì)框架包含兩個(gè)主要網(wǎng)絡(luò)模型,即深度估計(jì)網(wǎng)絡(luò)和位姿估計(jì)網(wǎng)絡(luò)。遵循前人工作[8-10]的設(shè)定,本文采用三幀圖像作為一組訓(xùn)練數(shù)據(jù)。給定一組訓(xùn)練圖像{I0,I-1,I+1},其中I0表示目標(biāo)幀,I-1和I+1表示時(shí)序上與目標(biāo)幀相鄰的兩個(gè)參考幀。深度估計(jì)網(wǎng)絡(luò)用于推理輸入的目標(biāo)幀圖像I0的深度D0,是訓(xùn)練的主要目標(biāo)。位姿估計(jì)網(wǎng)絡(luò)以兩幀圖像{I0,I-1}或{I0,I+1}作為輸入,推理兩幀圖像間的相對(duì)位姿變換關(guān)系T0,-1或T0,1,用于生成自監(jiān)督信號(hào)。

自監(jiān)督訓(xùn)練的基礎(chǔ)是可微的投影函數(shù)h。以圖像對(duì){I0,I+1}為例,投影函數(shù)根據(jù)D0和T0,1將I0投影至參考幀視角下,得到合成圖像:

投影過程遵循多視角立體幾何的約束,即對(duì)于合成圖像中任意像素位置p,可以利用其深度D0(p)和圖像間的相對(duì)位姿變換關(guān)系得到其在參考幀中的對(duì)應(yīng)像素位置p′:

式中K表示相機(jī)內(nèi)參。對(duì)所有像素位置進(jìn)行遍歷后,即可得到合成圖像。由于雙線性插值以及圖像梯度的存在,損失函數(shù)到D0和T0,1之間的梯度是連續(xù)的,因此整個(gè)框架可以進(jìn)行端到端訓(xùn)練:

自監(jiān)督訓(xùn)練的關(guān)鍵是損失函數(shù)的設(shè)計(jì)?;A(chǔ)的自監(jiān)督損失函數(shù)由兩部分組成,分別是重投影光度損失Lphoto和平滑損失Lsmooth:

式中β為權(quán)重參數(shù),用于調(diào)整重投影光度損失和平滑損失對(duì)訓(xùn)練的影響。其中重投影光度誤差的定義為:

其中α為權(quán)重參數(shù),式中各項(xiàng)定義為:

SSIM(·,·)表示結(jié)構(gòu)相似性函數(shù)[11]。

然而,重投影光度損失在紋理缺失區(qū)域極易失效。因此,需要引入平滑損失Lsmooth保證深度估計(jì)網(wǎng)絡(luò)能在紋理缺失區(qū)域產(chǎn)生合理的深度預(yù)測(cè)值:

其中|I0|表示圖像中的像素?cái)?shù)量。?1和?2分別表示一階與二階梯度。表示以原始圖像為參考的權(quán)重,用于抑制平滑損失造成的圖像中邊緣處的深度估計(jì)結(jié)果的過渡平滑。

為進(jìn)一步保證深度預(yù)測(cè)的一致性,本文在基礎(chǔ)自監(jiān)督損失函數(shù)的基礎(chǔ)上引入了尺度一致?lián)p失[9]:

2.2 基于局部注意力機(jī)制的深度估計(jì)網(wǎng)絡(luò)

深度估計(jì)網(wǎng)絡(luò)是自監(jiān)督單目深度估計(jì)訓(xùn)練的主要目標(biāo)。由于單目深度估計(jì)需要高度依賴圖像中的深度線索進(jìn)行深度推理,因此網(wǎng)絡(luò)聚合局部上下文信息的能力顯得尤為重要。普通的卷積結(jié)構(gòu)能夠聚合圖像中的上下文信息,但聚合能力和聚合感受野有限。為提升網(wǎng)絡(luò)的信息聚合能力,本文提出一種基于局部注意力機(jī)制的信息聚合技術(shù),用于將高分辨率特征圖解碼為像素深度值,其設(shè)計(jì)如圖2所示。

由于圖像大多為水平拍攝,行像素之間的深度具有高度的相關(guān)性,因此本文首先對(duì)行信息進(jìn)行聚合,即對(duì)每個(gè)像素p=(i,j)T取pleft=(i,j-l)T與pright=(i,j+l)T之間的像素作為p的參考圖像塊進(jìn)行信息聚合,由此獲得每行中L=2l+1 的深度線索感知范圍。隨后再對(duì)聚合后的特征圖進(jìn)行3×3卷積,進(jìn)一步融合列信息。經(jīng)過信息聚合后的像素將會(huì)在高分辨率特征圖上具有3×(L+2)范圍的感受野,相比于普通的3×3 卷積具有更強(qiáng)的深度線索捕捉能力。

深度估計(jì)網(wǎng)絡(luò)結(jié)構(gòu)如圖3 所示。為保證深度估計(jì)網(wǎng)絡(luò)的特征映射能力,本文采用“編碼器-解碼器”結(jié)構(gòu)的骨干特征網(wǎng)絡(luò),并使用殘差鏈接提升網(wǎng)絡(luò)的細(xì)節(jié)保持能力。整個(gè)深度估計(jì)網(wǎng)絡(luò)以ResNet50[12]作為編碼器主體,編碼器逐步將原始圖像編碼為1/2 至1/32 分辨率的5 個(gè)尺度的特征圖,用作解碼器的輸入。解碼器由卷積與上采樣組成,共包含5 層上采樣解碼層和1 層深度解碼層,除1/32 分辨率的解碼層外,每一個(gè)解碼層都接受來自上一解碼層和編碼器的特征作為輸入,最后的深度解碼層采用本文提出的信息聚合技術(shù),將高分辨率特征圖解碼為原圖尺寸的深度圖?!熬幋a器-解碼器”結(jié)構(gòu)能夠在獲得高分辨率特征的同時(shí)提升特征的感受野,從而增強(qiáng)特征的深度線索感知能力。

2.3 基于迭代優(yōu)化的位姿估計(jì)網(wǎng)絡(luò)

位姿估計(jì)網(wǎng)絡(luò)的性能將極大的影響自監(jiān)督訓(xùn)練的效果。位姿估計(jì)網(wǎng)絡(luò)用于估計(jì)兩張圖像之間的相對(duì)位姿變換關(guān)系T,對(duì)于深度圖中的所有像素而言,T是一個(gè)全局變量,因此T的誤差將會(huì)從整體上影響自監(jiān)督訓(xùn)練的效果。

本文的基礎(chǔ)位姿估計(jì)模塊采用“編碼器-解碼器”結(jié)構(gòu),如圖4所示。模塊以ResNet18[12]作為編碼器主體,最終得到1/32分辨率的特征圖作為解碼器的輸入。解碼器通過卷積與池化操作,將特征解碼為一個(gè)6維向量v,表示圖像間的6-DOF位姿變換,其中前3維表示平移,后3維以歐拉角的形式表示旋轉(zhuǎn)。實(shí)際使用時(shí),需要將向量v轉(zhuǎn)換為位姿矩陣T:

其中,r0,r1和r2分別為旋轉(zhuǎn)向量r中的三個(gè)歐拉角,即r=[r0,r1,r2]T。

為了提升位姿估計(jì)網(wǎng)絡(luò)的穩(wěn)定性,本文采用殘差學(xué)習(xí)的方式對(duì)位姿進(jìn)行迭代優(yōu)化,如圖5 所示。因?yàn)槲蛔顺踔蹬c位姿殘差之間的數(shù)據(jù)分布差異較大,本文的位姿估計(jì)網(wǎng)絡(luò)由兩個(gè)結(jié)構(gòu)相同的基礎(chǔ)位姿估計(jì)模塊組成,分別用于初始位姿估計(jì)和位姿殘差估計(jì)。初始位姿估計(jì)模塊的輸入為原始的目標(biāo)幀與參考幀,得到初始位姿估計(jì)后,結(jié)合深度估計(jì)結(jié)果由投影函數(shù)得到合成目標(biāo)幀。迭代過程中,位姿殘差估計(jì)模塊的輸入為原始目標(biāo)幀以及上一輪迭代后更新的合成目標(biāo)幀,輸出為位姿殘差,該殘差會(huì)被用于更新當(dāng)前位姿并重新合成目標(biāo)幀用于下一輪迭代。最終的相機(jī)相對(duì)位姿由初始位姿和若干位姿殘差共同計(jì)算得到:

式中表示初始位姿,表示位姿殘差。為保證初始位姿網(wǎng)絡(luò)的收斂,自監(jiān)督損失將分別使用初始位姿和最終位姿T0,1計(jì)算損失并求平均用于網(wǎng)絡(luò)優(yōu)化。

3 實(shí)驗(yàn)驗(yàn)證

3.1 數(shù)據(jù)集、測(cè)試指標(biāo)與模型參數(shù)

本文在基準(zhǔn)數(shù)據(jù)集KITTI[13]上進(jìn)行網(wǎng)絡(luò)訓(xùn)練和測(cè)試。KITTI 是針對(duì)自動(dòng)駕駛場(chǎng)景的室外街景數(shù)據(jù)集,包含單目視頻序列以及對(duì)應(yīng)的稀疏激光雷達(dá)點(diǎn)云。訓(xùn)練時(shí),由單目視頻序列中抽取訓(xùn)練圖像對(duì),測(cè)試時(shí),則使用單張圖像作為輸入,對(duì)應(yīng)的稀疏激光雷達(dá)點(diǎn)云作為真值。為保證對(duì)比公平,本文按照EIGEN 等人[14]對(duì)數(shù)據(jù)集的劃分,選擇697張圖像作為測(cè)試集,其余圖像作為訓(xùn)練集和驗(yàn)證集。

測(cè)試模型使用Pytorch 框架[15]實(shí)現(xiàn),在單張NVIDIA RTX 3090 上進(jìn)行訓(xùn)練。訓(xùn)練使用Adam[16]優(yōu)化器,學(xué)習(xí)率設(shè)置為0.0001,批尺寸(batch size)設(shè)置為4,總計(jì)訓(xùn)練100000 個(gè)batch。訓(xùn)練過程中,信息聚合感受野L=7,位姿迭代次數(shù)設(shè)置為2,即,權(quán)重α=0.15,β=0.1,γ=0.5。

由于單目深度估計(jì)缺乏尺度信息,在測(cè)試前,需要將預(yù)測(cè)深度與深度真值進(jìn)行尺度對(duì)齊:

本文采用四項(xiàng)誤差指標(biāo)以及三項(xiàng)準(zhǔn)確率指標(biāo)作為評(píng)測(cè)指標(biāo),包括絕對(duì)值相對(duì)誤差(Absolute Relative Error,abs rel),平方相對(duì)誤差(Square Rela?tive Error,sq rel),均方誤差(Root Mean Squared Er?ror,rmse),對(duì)數(shù)均方誤差(Root Mean Squared Error in logarithmic space,rmse log)以及三項(xiàng)不同閾值的準(zhǔn)確率acct,其中t∈{1,2,3}。各指標(biāo)具體定義如下:

3.2 基準(zhǔn)數(shù)據(jù)集評(píng)測(cè)

本文與目前最先進(jìn)的自監(jiān)督單目深度估計(jì)算法進(jìn)行了比較,結(jié)果如表1 所示。結(jié)果表明,本文算法能取得比之前的單目深度估計(jì)模型等準(zhǔn)確的深度推理結(jié)果。本文算法在兩項(xiàng)相對(duì)誤差指標(biāo)(abs rel 和sq rel)上顯著降低,較之前最優(yōu)的算法分別降低了2%(0.110→0.108)和8%(0.824→0.756),在均方誤差(rmse)和準(zhǔn)確率指標(biāo)上取得了與之前算法相當(dāng)甚至更優(yōu)的性能。值得注意的是,MLDA-Net[10]采用了多尺度的注意力機(jī)制來提升深度估計(jì)網(wǎng)絡(luò)的性能,而本文僅使用單一尺度的注意力機(jī)制結(jié)合更好的位姿估計(jì)結(jié)果,即可獲得更好的深度估計(jì)結(jié)果,這證明了本文方法的有效性。

表1 在KITTI數(shù)據(jù)集上的測(cè)試結(jié)果Tab.1 Results on KITTI dataset

本文還展示了本文算法在KITTI 數(shù)據(jù)集上的定性結(jié)果,如圖6 所示。得益于更強(qiáng)的深度線索捕獲能力,本文算法相比于其他算法能夠得到更好地保持物體的完整性和深度的一致性。同時(shí)由于采用位姿優(yōu)化得到了更好相機(jī)位姿變換,使得訓(xùn)練出的深度估計(jì)網(wǎng)絡(luò)能夠更準(zhǔn)確地進(jìn)行深度估計(jì)。

3.3 消融實(shí)驗(yàn)

本文進(jìn)一步進(jìn)行消融實(shí)驗(yàn)驗(yàn)證各模塊的有效性。結(jié)果如表2 所示,基于局部注意力機(jī)制的信息聚合以及迭代優(yōu)化均能有效提升深度估計(jì)網(wǎng)絡(luò)的性能。比較模型1 和模型2 可以發(fā)現(xiàn),信息聚合使得模型在相對(duì)誤差指標(biāo)上有了顯著降低,說明基于局部注意力機(jī)制的信息聚合能夠有效提升網(wǎng)絡(luò)的深度線索捕捉能力,更好地利用高分辨率特征圖,從而降低深度估計(jì)的誤差。而比較模型2 和模型3、4 可以發(fā)現(xiàn),迭代優(yōu)化能夠提升位姿估計(jì)網(wǎng)絡(luò)的性能,但多次迭代提升幅度有限,這是由于自動(dòng)駕駛場(chǎng)景的位姿模式較為固定,因此較少次數(shù)的迭代即可獲得較為準(zhǔn)確的位姿估計(jì)結(jié)果。

表2 消融實(shí)驗(yàn)結(jié)果Tab.2 Results of ablation study

3.4 智能制造場(chǎng)景定性實(shí)驗(yàn)

本文進(jìn)一步在智能制造場(chǎng)景中進(jìn)行了實(shí)驗(yàn),驗(yàn)證本文算法的泛化能力,結(jié)果如圖7 所示。即使完全沒有在相關(guān)場(chǎng)景中進(jìn)行模型微調(diào),本文算法依然能夠完整地感知到物體的輪廓,并給出合理的深度估計(jì)值。同時(shí),由于本文為自監(jiān)督算法,能夠很容易地收集大量訓(xùn)練數(shù)據(jù)對(duì)模型進(jìn)行訓(xùn)練和微調(diào),從而達(dá)到更好的深度估計(jì)效果。由此,本文方法具備推廣應(yīng)用到智能制造場(chǎng)景的良好潛力。

4 結(jié)論

本文面向單目深度估計(jì)任務(wù),提出了一種改進(jìn)的自監(jiān)督訓(xùn)練框架。首先,根據(jù)單目深度估計(jì)高度依賴圖像中的深度線索這一特點(diǎn),設(shè)計(jì)了基于局部注意力機(jī)制的信息聚合技術(shù),用于提升深度估計(jì)網(wǎng)絡(luò)的深度線索感知能力,從而直接提升深度估計(jì)的準(zhǔn)確率。其次,針對(duì)位姿估計(jì)網(wǎng)絡(luò)性能有限的問題,設(shè)計(jì)了基于迭代優(yōu)化位姿估計(jì)網(wǎng)絡(luò),為自監(jiān)督訓(xùn)練提供更好的位姿估計(jì)值,從而間接提升深度估計(jì)網(wǎng)絡(luò)的性能。實(shí)驗(yàn)結(jié)果表明,本文算法在KITTI 數(shù)據(jù)集上取得了最優(yōu)的單目深度估計(jì)性能。

猜你喜歡
單目位姿像素
像素前線之“幻影”2000
基于單目視覺的分離圖像分析方法
基于單目視覺車距測(cè)量方法綜述
一種單目視覺里程計(jì)/UWB 組合室內(nèi)定位方法
基于PLC的六自由度焊接機(jī)器人手臂設(shè)計(jì)與應(yīng)用
基于位置依賴的密集融合的6D位姿估計(jì)方法
“像素”仙人掌
曲柄搖桿機(jī)構(gòu)的動(dòng)力學(xué)仿真
基于單目視覺的工件位姿六自由度測(cè)量方法研究
單目SLAM直線匹配增強(qiáng)平面發(fā)現(xiàn)方法