陳 揚(yáng),李大威
(東華大學(xué)信息科學(xué)與技術(shù)學(xué)院,上海 201620)
隨著信息技術(shù)的發(fā)展,視頻場(chǎng)景深度(距離)信息的重要性日益顯現(xiàn)。深度圖像(也稱距離圖像)是一種常用的場(chǎng)景深度描述方式,其中每個(gè)像素值代表場(chǎng)景中某一點(diǎn)與傳感器或掃描儀的距離。目前,深度圖像已廣泛應(yīng)用于無人駕駛[1-2]、智能機(jī)器人[3]以及人臉識(shí)別[4]等領(lǐng)域。例如在無人駕駛領(lǐng)域,車輛在行駛中需實(shí)時(shí)獲取包含周圍行人與車輛距離信息的深度圖像。目前,Kinect、立體匹配以及激光雷達(dá)等現(xiàn)有深度圖像獲取方法所需設(shè)備昂貴且采集成本較高,捕獲的深度圖像存在分辨率低與大面積深度缺失等問題?;趩文坎噬珗D像的深度理解技術(shù)是使用模式識(shí)別或機(jī)器學(xué)習(xí)算法從一幅RGB圖像中理解出場(chǎng)景中每個(gè)像素與傳感器的距離,由于其具有成本低廉、性能穩(wěn)定等優(yōu)勢(shì),因此成為研究人員關(guān)注的熱點(diǎn)。而在單目彩色圖像深度理解技術(shù)中,相機(jī)在成像時(shí)會(huì)不可逆地?fù)p失景物三維結(jié)構(gòu)信息,造成一張彩色2D圖像可與無數(shù)真實(shí)場(chǎng)景對(duì)應(yīng),且單幅圖像也缺乏用于恢復(fù)場(chǎng)景深度的有效輔助線索[5]。因此,單目彩色圖像深度理解成為當(dāng)前計(jì)算機(jī)視覺領(lǐng)域極具挑戰(zhàn)性的研究課題之一。
早期關(guān)于單目彩色圖像深度理解的研究主要基于圖像中物體的幾何結(jié)構(gòu)特點(diǎn)以及物體與物體的相互關(guān)系進(jìn)行計(jì)算,例如從陰影中恢復(fù)形狀[6]、從對(duì)焦[7]或離焦信息[8]獲取深度等。上述方法僅適用于有限種類的場(chǎng)景,并需要額外的輔助信息,嚴(yán)重限制了模型的泛化能力。近年來,深度卷積神經(jīng)網(wǎng)絡(luò)(Deep Convolutional Neural Network,DCNN)在計(jì)算機(jī)視覺領(lǐng)域取得眾多突破性進(jìn)展,研究人員將深度學(xué)習(xí)[9-11]引入單目彩色圖像深度理解方法,雖然其形成的深度圖像質(zhì)量遠(yuǎn)高于傳統(tǒng)圖像處理方法,但是也存在局限性。例如:深度卷積網(wǎng)絡(luò)從圖像中提取大量特征,然而物體顏色、場(chǎng)景光照、墻壁紋理與圖案等多種圖像特征對(duì)深度理解任務(wù)無用處,并造成計(jì)算量過大,同時(shí)增加網(wǎng)絡(luò)的不確定性和學(xué)習(xí)難度;大部分深度學(xué)習(xí)方法將深度理解視為回歸問題,雖然這種思路能有效用于圖像分類,但深度理解是一種比分類更復(fù)雜的連續(xù)距離預(yù)測(cè)問題[12-13],其用回歸方法求解效果并不理想;現(xiàn)有深度神經(jīng)元網(wǎng)絡(luò)隨著層數(shù)增加其錯(cuò)誤信息會(huì)不斷累積[14],導(dǎo)致深度理解結(jié)果質(zhì)量較差。
針對(duì)上述問題,本文提出一種場(chǎng)景模態(tài)深度理解網(wǎng)絡(luò)(Scene Modality Depth Understanding Network,SMDUN)以解決單目彩色圖像深度理解問題。SMDUN以堆疊沙漏網(wǎng)絡(luò)為主框架[15]反復(fù)進(jìn)行自下而上和自上而下的特征提取過程以融合低層次紋理與高級(jí)語義特征,在每一層級(jí)上使用獨(dú)立損失函數(shù)去除無意義特征,采用不同分辨率的場(chǎng)景模態(tài)離散標(biāo)簽指導(dǎo)網(wǎng)絡(luò)提取有效特征,引入有序回歸碼和極大似然譯碼[16]減少誤差積累,并優(yōu)化離散標(biāo)簽的學(xué)習(xí)過程。
從單幅彩色圖像中理解深度是一項(xiàng)具有挑戰(zhàn)性的任務(wù)。早期研究主要基于圖像中物體的幾何結(jié)構(gòu)特點(diǎn)展開,其研究場(chǎng)景種類與模型泛化能力較有限。目前,隨著深度卷積網(wǎng)絡(luò)在計(jì)算機(jī)視覺領(lǐng)域的深入發(fā)展,基于深度學(xué)習(xí)的方法已成為研究單目彩色圖像深度理解的主流方法。與使用人工定義特征進(jìn)行深度理解的研究相比,基于深度卷積網(wǎng)絡(luò)的方法能從彩色圖像中提取更多有利于深度理解的線索,得到的深度預(yù)測(cè)圖像質(zhì)量更佳。文獻(xiàn)[9]使用深度學(xué)習(xí)方法對(duì)圖像深度理解進(jìn)行研究,提出一種雙棧卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN),先得到粗略的全局預(yù)測(cè)結(jié)果,再使用局部特征對(duì)其進(jìn)行優(yōu)化。文獻(xiàn)[17]采用雙流CNN從單幅圖像中恢復(fù)深度,在雙流網(wǎng)絡(luò)中,一條流產(chǎn)生深度特征,另外一條流產(chǎn)生深度梯度特征,將兩種特征融合后得到精細(xì)的深度圖像。文獻(xiàn)[18]利用深度學(xué)習(xí)網(wǎng)絡(luò)中間層的輸出提供互補(bǔ)信息,采用連續(xù)CRF模型對(duì)網(wǎng)絡(luò)中間層輸出信息進(jìn)行整合,以實(shí)現(xiàn)對(duì)單幅圖像的有效深度估計(jì)。文獻(xiàn)[19]提出一種無監(jiān)督的單目彩色圖像深度理解框架,使用立體圖基于光度重建損失函數(shù)進(jìn)行視差估計(jì)得到深度圖像。文獻(xiàn)[20]在文獻(xiàn)[19]的基礎(chǔ)上提出左右一致性檢驗(yàn)方法,結(jié)合L1損失和結(jié)構(gòu)相似性(Structural Similarity,SSIM)得到平滑的深度圖像預(yù)測(cè)信息。文獻(xiàn)[21]提出一種基于幾何感知的對(duì)稱域自適應(yīng)框架,通過訓(xùn)練圖像樣式轉(zhuǎn)換器和深度估計(jì)器,實(shí)現(xiàn)彩色圖像與深度圖像的樣式轉(zhuǎn)換。上述基于深度學(xué)習(xí)的方法大部分將深度理解問題視為回歸問題來處理,此類方法能有效解決圖像分類和語義分割問題,然而深度理解任務(wù)中表示深度的每個(gè)像素都是連續(xù)值,對(duì)其進(jìn)行預(yù)測(cè)遠(yuǎn)比離散的分類問題復(fù)雜。對(duì)此,文獻(xiàn)[13]基于有序回歸思想,將連續(xù)的深度理解任務(wù)轉(zhuǎn)換為具有前后關(guān)聯(lián)性的離散深度標(biāo)簽分類問題,降低了深度理解的難度,但其在將深度圖像離散化處理成訓(xùn)練標(biāo)簽的同時(shí)丟失大量深度信息,造成所得預(yù)測(cè)圖像特征丟失。文獻(xiàn)[22]基于圖像級(jí)全局特征和像素級(jí)局部特征,通過有序回歸概率信息將離散的有序回歸結(jié)果轉(zhuǎn)換為連續(xù)值處理,但其僅通過分類概率推測(cè)出一個(gè)連續(xù)的深度值,不能解決標(biāo)簽在離散化階段信息丟失的問題。
此外,上述方法均基于圖像的紋理信息進(jìn)行深度理解,容易使網(wǎng)絡(luò)學(xué)習(xí)到墻壁的紋理特征等大量無關(guān)特征,在增大計(jì)算量的同時(shí)提升了學(xué)習(xí)難度和網(wǎng)絡(luò)不確定性。因此,文獻(xiàn)[15]將不同層級(jí)的特征進(jìn)行反復(fù)處理和融合以提取有效特征。文獻(xiàn)[23]通過在每一層級(jí)單獨(dú)計(jì)算損失函數(shù)來丟棄無用特征。但上述方法隨著網(wǎng)絡(luò)深度的增加易產(chǎn)生誤差積累,造成在預(yù)測(cè)深度圖中不合理的幾何分布。文獻(xiàn)[14]提出一種基于網(wǎng)絡(luò)先前層級(jí)特征對(duì)當(dāng)前層級(jí)特征進(jìn)行補(bǔ)充和修正的策略,然而在該特征優(yōu)化機(jī)制下,由于先前低層級(jí)特征遠(yuǎn)不如當(dāng)前層級(jí)特征豐富,因此其對(duì)特征的優(yōu)化能力有限。
本文提出的場(chǎng)景模態(tài)深度理解網(wǎng)結(jié)構(gòu)如圖1所示。該網(wǎng)絡(luò)的特點(diǎn)為:1)網(wǎng)絡(luò)采用多層次堆疊沙漏結(jié)構(gòu),并使用連續(xù)與離散兩種標(biāo)簽進(jìn)行訓(xùn)練;2)在SMDUN中逐次使用場(chǎng)景模態(tài)特征提取模塊(Scene Modality Feature Extraction Module,SMFEM),并基于綜合損失函數(shù)指導(dǎo)網(wǎng)絡(luò)從低層級(jí)到高層級(jí)理解深度信息;3)通過誤差修正模塊(Error Correction Module,ECM)和極大似然譯碼優(yōu)化模塊(Maximum Likelihood Decoding Optimization Module,MLDOM)修正中間層的錯(cuò)誤特征,以減少累計(jì)誤差。
圖1 場(chǎng)景模態(tài)深度理解網(wǎng)絡(luò)結(jié)構(gòu)Fig.1 Structure of scene modality depth understanding network
文獻(xiàn)[15]使用堆疊沙漏結(jié)構(gòu)網(wǎng)絡(luò)成功解決圖像中人體關(guān)節(jié)點(diǎn)檢測(cè)問題,文獻(xiàn)[24]證明了堆疊沙漏網(wǎng)絡(luò)可用于雙目立體視覺系統(tǒng)的深度估計(jì),因此,本文提出的SMDUN采用堆疊沙漏結(jié)構(gòu)提取和理解圖像深度特征。SMDUN通過中間指導(dǎo)和反復(fù)自下而上與自上而下的過程,有效融合了低層次紋理與高級(jí)語義特征。RGB圖像通過沙漏網(wǎng)絡(luò)的第一個(gè)編碼器提取圖像底層特征,特征圖的分辨率從W×H降至特征圖在解碼器中通過跳鏈補(bǔ)充圖像底層特征,并逐層級(jí)提高特征的分辨率至第二個(gè)編碼器降低特征的分辨率至并將每一層級(jí)輸出特征與第一個(gè)解碼器相應(yīng)層級(jí)的特征相加。特征圖在第二個(gè)解碼中通過跳鏈從第一個(gè)編碼器和彩色圖像中補(bǔ)充圖像底層特征,并輸出分辨率為W×H的圖像深度理解結(jié)果。
SMDUN采用逐層級(jí)優(yōu)化的方式以降低網(wǎng)絡(luò)不確定性與無效特征的影響,同時(shí)提高網(wǎng)絡(luò)的收斂能力與預(yù)測(cè)精度。大多數(shù)深度理解網(wǎng)絡(luò)[9,14]使用連續(xù)的深度值標(biāo)簽指導(dǎo)網(wǎng)絡(luò)中間層級(jí)特征,這容易造成網(wǎng)絡(luò)的不確定性,導(dǎo)致其難以學(xué)習(xí)到有效特征。文獻(xiàn)[13]將有序回歸的思想引入深度理解與估計(jì)任務(wù),使連續(xù)的深度估計(jì)任務(wù)轉(zhuǎn)換為具有前后關(guān)聯(lián)性的離散深度標(biāo)簽分類問題,有效降低了深度理解難度。有序回歸使得深度特征理解與編碼譯碼方法相結(jié)合,為深度估計(jì)問題提供編譯碼理論支撐。
離散圖像標(biāo)簽雖然可以降低計(jì)算量,但與連續(xù)的深度真實(shí)圖相比,會(huì)造成較多的信息丟失,且在有序回歸碼的特征提取與計(jì)算中容易產(chǎn)生錯(cuò)誤。為解決上述問題,本文提出場(chǎng)景模態(tài)特征提取模塊SMFEM。在圖1中,在沙漏網(wǎng)絡(luò)解碼器各階段輸出后增加SMFEM以實(shí)現(xiàn)逐層級(jí)優(yōu)化。在SMFEM中,輸入特征圖被分為兩部分,將作為前饋殘差的低層次特征,使用場(chǎng)景模態(tài)離散標(biāo)簽訓(xùn)練并經(jīng)MLDOM模塊優(yōu)化后得到特征再將兩部分特征進(jìn)行拼接確保所獲得特征的完整性,最后通過3×3卷積得到SMFEM的輸出特征。
逐層級(jí)特征優(yōu)化廣泛應(yīng)用于圖像語義分割、深度估計(jì)和邊緣檢測(cè)[25-27]等結(jié)構(gòu)化的訓(xùn)練任務(wù)中。文獻(xiàn)[23]采用多分辨率訓(xùn)練標(biāo)簽指導(dǎo)特征,并在每一層級(jí)后計(jì)算獨(dú)立的損失函數(shù),減少了對(duì)無用特征的學(xué)習(xí)。因此,通常將多次使用不同采樣率進(jìn)行降采樣后所得真實(shí)深度圖像作為多分辨率訓(xùn)練標(biāo)簽進(jìn)行訓(xùn)練[9,14]。然而,真實(shí)深度圖像中每個(gè)位置的值是連續(xù)的浮點(diǎn)值,這增加了訓(xùn)練難度與網(wǎng)絡(luò)不確定性。實(shí)際上,深度圖像中最重要的信息是遠(yuǎn)和近的相對(duì)概念,可利用離散的數(shù)字類別標(biāo)簽(離散的標(biāo)簽類似于語義分割中物體類的概念,可參照成熟語義分割網(wǎng)絡(luò)的標(biāo)簽訓(xùn)練方式進(jìn)行訓(xùn)練)對(duì)相對(duì)距離進(jìn)行編碼,再使用編碼后的深度圖像進(jìn)行訓(xùn)練?;谙鄬?duì)距離關(guān)系進(jìn)行離散化后所得真實(shí)深度圖像稱為場(chǎng)景模態(tài)。為了對(duì)場(chǎng)景模態(tài)標(biāo)簽進(jìn)行訓(xùn)練,設(shè)計(jì)場(chǎng)景模態(tài)特征提取模塊SMFEM。
針對(duì)上述問題,本文提出多分辨率的場(chǎng)景模態(tài)標(biāo)簽構(gòu)建方式,從深度圖像中提取M種場(chǎng)景模態(tài)標(biāo)簽,如圖2所示(彩色效果參見《計(jì)算機(jī)工程》官網(wǎng)HTML版)。多分辨率的場(chǎng)景模態(tài)標(biāo)簽Modality={Ms,s=1,2,…,M},其中Ms為SMDUN中第s種標(biāo)簽,Ms(x,y)表示標(biāo)簽Ms中位置(x,y)的值,Ws和Hs分別為標(biāo)簽的寬度和高度,Ms(x,y)標(biāo)簽取值區(qū)間為{0,1,…,ls-1},ls為本級(jí)場(chǎng)景模態(tài)的相對(duì)距離級(jí)數(shù),本文中該值取2的冪次。
圖2 深度圖像與場(chǎng)景模態(tài)標(biāo)簽Fig.2 Depth image and scene modality labels
場(chǎng)景模態(tài)標(biāo)簽由相對(duì)距離計(jì)算生成,通過遠(yuǎn)、近、較遠(yuǎn)與較近等模糊概念描述圖像的空間分布。相對(duì)距離場(chǎng)景模態(tài)標(biāo)簽的計(jì)算步驟如下:
1)采用式(1)中線性歸一化算法計(jì)算得到每個(gè)位置的相對(duì)距離深度標(biāo)簽Dr:
其中,Depth為當(dāng)前深度圖,Dmin為當(dāng)前深度圖的最小深度值,Dmax為當(dāng)前深度圖的最大深度值。
其中,α和β分別為本層場(chǎng)景模態(tài)中Dr標(biāo)簽的最小值和最大值,ls為離散化區(qū)間數(shù)。為避免實(shí)際距離為0造成對(duì)數(shù)無法計(jì)算,對(duì)α和β添加偏移量1成為α*和β*,因此實(shí)際非均勻離散化取值區(qū)間為[α*,β*]。
3)在Dd中均勻劃分Ws×Hs個(gè)區(qū)域(Ws與Hs的取值與這一級(jí)場(chǎng)景模態(tài)標(biāo)簽的長(zhǎng)度和寬度相關(guān)),計(jì)算每個(gè)區(qū)域的平均值,得到粗略的場(chǎng)景模態(tài)標(biāo)簽。
4)針對(duì)粗略的場(chǎng)景模態(tài)標(biāo)簽,分別采用式(1)和式(2)計(jì)算其相對(duì)距離Depthr和離散化過程,得到最終的場(chǎng)景模態(tài)標(biāo)簽Ms。
場(chǎng)景模態(tài)標(biāo)簽Ms由0~ls-1構(gòu)成,Ms與閾值tis的關(guān)系如下:
為提升網(wǎng)絡(luò)容錯(cuò)能力并增加訓(xùn)練過程的穩(wěn)定性,本文對(duì)場(chǎng)景模態(tài)離散標(biāo)簽未使用常見的one-hot型編碼。例如,某個(gè)位置的真實(shí)相對(duì)深度為4,網(wǎng)絡(luò)預(yù)測(cè)為5,對(duì)于one-hot型編碼而言,其錯(cuò)誤產(chǎn)生的損失與預(yù)測(cè)為8所產(chǎn)生的損失接近,然而實(shí)際上相對(duì)深度具有一定關(guān)聯(lián)性(5與4的差值比8與4的差值更小),給予更小的損失更合理。因此,本文設(shè)計(jì)一種有序回歸碼。
有序回歸方法是將一個(gè)復(fù)雜的多分類任務(wù)轉(zhuǎn)換為ls-1個(gè)簡(jiǎn)單的二分類任務(wù),在網(wǎng)絡(luò)的訓(xùn)練和推理過程中,將標(biāo)簽Ms轉(zhuǎn)換為有序回歸碼Os,Os的分辨率為Ws×Hs×Ls,其中Ls=ls-1。Ms與Os在(x,y)位置存在以下關(guān)系式:
有序回歸碼Os在(x,y,i) 的每一個(gè)維度值實(shí)際上是一個(gè)二分類任務(wù),其值為0與1的訓(xùn)練過程,在訓(xùn)練中得到一個(gè)二分類標(biāo)簽的概率張量Ys,其分辨率為Ws×Hs×(2×Ls)。Ys由兩層大小為Ws×Hs×Ls的特征層構(gòu)成(在圖1中以“0”與“1”表示),其中“0”特征層表示經(jīng)過網(wǎng)絡(luò)得到的有序回歸碼中二分類結(jié)果為標(biāo)簽0的概率,“1”特征層是將有序回歸碼每位為1的概率按由大到小排序后得到的特征層。
其中,η(·)為指示函數(shù),滿足η(true)=1且η(false)=1。Ps("0")為位置(x,y)處有序回歸碼第i位為0的概率,而Ps("1")為有序回歸碼第i位為1的概率,Ps("0")和Ps("1")中同一位置的值之和為1,滿足以下關(guān)系式:
由場(chǎng)景模態(tài)可得到相對(duì)深度值,計(jì)算公式如下:
深度卷積神經(jīng)網(wǎng)絡(luò)通常存在欠擬合和過擬合現(xiàn)象,多層級(jí)的深度卷積神經(jīng)網(wǎng)絡(luò)在訓(xùn)練和推理階段將當(dāng)前層級(jí)的結(jié)果直接送入下一層模塊的同時(shí),也會(huì)將當(dāng)前層級(jí)的誤差與噪聲傳遞到后續(xù)網(wǎng)絡(luò),造成誤差不斷積累并最終呈現(xiàn)在預(yù)測(cè)深度圖像中,因此需及時(shí)對(duì)網(wǎng)絡(luò)中的錯(cuò)誤進(jìn)行校正。在所估計(jì)的場(chǎng)景模態(tài)有序回歸碼中,包含有序回歸碼的內(nèi)在邏輯錯(cuò)誤(以下稱為邏輯錯(cuò)誤)和有序回歸碼的二分類精度錯(cuò)誤(以下稱為精度錯(cuò)誤),這兩種有序回歸碼錯(cuò)誤示例與誤差修正模塊中對(duì)應(yīng)的卷積修正方式如圖3所示。圖3(a)為有序回歸碼的邏輯錯(cuò)誤和使用1×1卷積修正的方式。在場(chǎng)景模態(tài)的某一個(gè)位置上出現(xiàn)邏輯錯(cuò)誤,具體表現(xiàn)為:在值為4的場(chǎng)景模態(tài)上,本應(yīng)是“1,1,1,1”的有序回歸碼在第2位(從第0位開始)發(fā)生錯(cuò)誤變?yōu)椤?,1,0,1”。從邏輯上來看這是錯(cuò)誤的,因?yàn)楸疚亩x的有序回歸碼不能出現(xiàn)0,1交替的情況。然而在實(shí)際網(wǎng)絡(luò)訓(xùn)練過程中,難以避免此類錯(cuò)誤,且無法在訓(xùn)練中直接對(duì)有序回歸碼的具體值進(jìn)行賦值操作(例如將錯(cuò)誤的0替換為1),只能以卷積和反向傳播的形式進(jìn)行糾錯(cuò)。圖3(b)為有序回歸碼的精度錯(cuò)誤和使用3×3卷積與空洞卷積對(duì)其修正的方式。在場(chǎng)景模態(tài)的某一位置上出現(xiàn)精度錯(cuò)誤,具體表現(xiàn)為:在值為4的場(chǎng)景模態(tài)上,本應(yīng)是“1,1,1,1”的有序回歸碼發(fā)生錯(cuò)誤變?yōu)椤?,1,1,1,1”,導(dǎo)致該位置場(chǎng)景模態(tài)實(shí)際上變?yōu)?,由于場(chǎng)景模態(tài)反映相對(duì)距離,因此會(huì)影響后續(xù)深度理解的精確性。
圖3 有序回歸碼的兩種錯(cuò)誤示例與卷積修正方式Fig.3 Two error examples and convolution correction methods of ordinal regression codes
為避免這兩種訓(xùn)練中常見的有序回歸碼錯(cuò)誤,本文設(shè)計(jì)一種包含多種基本卷積的誤差修正模塊,其結(jié)構(gòu)如圖4所示。中出現(xiàn)的兩種有序回歸錯(cuò)誤源于在一系列二分類任務(wù)上產(chǎn)生的分類錯(cuò)誤。對(duì)于內(nèi)在邏輯錯(cuò)誤,可通過1×1卷積學(xué)習(xí)有序回歸碼的規(guī)則。如圖3(a)所示,經(jīng)過1×1卷積后,同一串有序回歸碼前后的正確碼字經(jīng)過卷積能對(duì)邏輯錯(cuò)誤位產(chǎn)生影響,并在一定程度上消除錯(cuò)誤;對(duì)于精度錯(cuò)誤,只憑當(dāng)前場(chǎng)景模態(tài)位置信息不足以修正,本文通過3×3卷積和多層空洞卷積,以類似于多層空洞池化模塊的卷積連接方式[28](見圖3(b))充分提取場(chǎng)景模態(tài)中相鄰位置的特征來克服當(dāng)前的分類精度錯(cuò)誤。將ECM每一階段產(chǎn)生的多尺度特征進(jìn)行拼接,最終得到修正后的場(chǎng)景模態(tài)特征Es。
圖4 誤差修正模塊結(jié)構(gòu)Fig.4 Structure of error correction module
本節(jié)設(shè)計(jì)一種極大似然譯碼優(yōu)化模塊,該模塊將預(yù)測(cè)的有序回歸碼作為包含錯(cuò)誤和噪聲的接收碼,將場(chǎng)景模態(tài)真實(shí)值的有序回歸碼Os作為發(fā)送碼,并使接收碼最大限度地逼近發(fā)送碼。MLDOM從預(yù)測(cè)結(jié)果中得到場(chǎng)景模態(tài)的優(yōu)化特征,將其與MFs相加得到優(yōu)化的場(chǎng)景模態(tài)特征再將與拼接得到整個(gè)SMFEM的輸出特征。
在實(shí)際物理系統(tǒng)中,由于只存在信息從發(fā)送到接收的因果前向轉(zhuǎn)移概率(先驗(yàn)概率)p(r|c),信道中不存在后驗(yàn)概率p(c|r),只能通過先驗(yàn)概率近似計(jì)算后驗(yàn)概率。根據(jù)貝葉斯公式得到先驗(yàn)概率和后驗(yàn)概率的關(guān)系式如下:
在式(13)計(jì)算過程中,不僅計(jì)算量過大,而且似然函數(shù)也難以確定,因此本文以卷積實(shí)現(xiàn)局部的極大似然譯碼,通過較少的計(jì)算量得到一個(gè)次優(yōu)解。采用局部計(jì)算近似得到極大似然譯碼的原因如下:1)場(chǎng)景模態(tài)采用類似于深度圖像的相對(duì)距離,由于目標(biāo)表面為深度連續(xù)的[24],因此其中每個(gè)坐標(biāo)的相對(duì)深度與鄰域關(guān)聯(lián)緊密;2)目標(biāo)級(jí)信息描述了圖像場(chǎng)景的整體結(jié)構(gòu)和具體物體的粗略位置關(guān)系(全局特征);3)像素級(jí)信息使物體表面在場(chǎng)景中的深度值(局部特征)更精確,可通過網(wǎng)絡(luò)在訓(xùn)練階段以卷積和池化的方式學(xué)習(xí)到。雖然在不同圖像中場(chǎng)景會(huì)發(fā)生改變,但場(chǎng)景中同種物體特征不會(huì)發(fā)生變化。例如,在客廳學(xué)習(xí)到的桌子特征同樣適用于廚房中的桌子。因此,局部特征不會(huì)隨著場(chǎng)景的改變而失效,具有較高的魯棒性。
基于上述分析,將輸入MLDOM的特征轉(zhuǎn)化成大小為Ws×Hs×Ns的特征層,其中Ns為當(dāng)前極大似然譯碼相關(guān)的碼長(zhǎng),再將極大似然譯碼轉(zhuǎn)換為局部最優(yōu)似然譯碼,該過程主要包括兩步:1)將特征層均分為16層的子特征層,其中每層通道數(shù)為再分別進(jìn)行極大似然譯碼計(jì)算;2)在每個(gè)子特征層中,以對(duì)數(shù)似然的方式將概率連乘計(jì)算變?yōu)檫B加計(jì)算,再采用5×5的平均池化操作將連加限制在局部范圍內(nèi)進(jìn)行,最后利用argmax函數(shù)獲取局部最優(yōu)的特征編碼完成式(13)的近似計(jì)算。圖5為極大似然譯碼優(yōu)化模塊的結(jié)構(gòu),其中對(duì)譯碼過程的先驗(yàn)概率逼近過程進(jìn)行展示,由場(chǎng)景模態(tài)標(biāo)簽帶來的損失沿虛線傳遞給每個(gè)單獨(dú)的譯碼過程,以保證最優(yōu)譯碼方向的正確性。
圖5 極大似然譯碼優(yōu)化模塊結(jié)構(gòu)Fig.5 Structure of maximum likelihood decoding optimization module
本文對(duì)SMDUN的總損失函數(shù)losstotal定義如下:
總損失函數(shù)主要由預(yù)測(cè)得到的深度圖像和真實(shí)深度圖像標(biāo)簽之間的損失lossim(g深度圖像預(yù)測(cè)誤差)以及場(chǎng)景模態(tài)標(biāo)簽的損失lossmod兩部分構(gòu)成,lossimg在整個(gè)堆疊沙漏網(wǎng)絡(luò)的最后進(jìn)行計(jì)算,lossmod在每一層SMFEM內(nèi)進(jìn)行計(jì)算。
2.4.1 深度預(yù)測(cè)圖和標(biāo)簽深度圖之間的損失
深度圖像預(yù)測(cè)誤差lossimg主要由Inverse-Huber損失[29]和SSIM指標(biāo)值[10]兩部分組成,其表達(dá)式如下:
其中,c為閾值。
2.4.2 場(chǎng)景模態(tài)損失
本文將場(chǎng)景模態(tài)標(biāo)簽損失lossmod定義為全部SMFEM的有序回歸損失之和,計(jì)算公式如下:
本文通過實(shí)驗(yàn)驗(yàn)證SMDUN的深度理解有效性。通過設(shè)計(jì)不同的剝離實(shí)驗(yàn)分析網(wǎng)絡(luò)各部分的有效性,并將本文網(wǎng)絡(luò)與當(dāng)前流行的其他網(wǎng)絡(luò)進(jìn)行對(duì)比分析。
當(dāng)前深度理解網(wǎng)絡(luò)通常采用NYUv2數(shù)據(jù)集[29]和KITTI數(shù)據(jù)集[30]進(jìn)行實(shí)驗(yàn)。
NYUv2數(shù)據(jù)集提供了由Kinect相機(jī)拍攝采集的464個(gè)室內(nèi)場(chǎng)景RGB-D數(shù)據(jù),包括12萬對(duì)彩色圖像與深度圖像,圖像分辨率為640像素×480像素。采用文獻(xiàn)[9]定義的訓(xùn)練集與測(cè)試集劃分方法,在NYUv2數(shù)據(jù)集的464個(gè)場(chǎng)景中選取249個(gè)場(chǎng)景用于訓(xùn)練,其余215個(gè)場(chǎng)景用于測(cè)試。從訓(xùn)練場(chǎng)景中抽取5萬對(duì)彩色圖像和深度圖像作為訓(xùn)練集,在測(cè)試場(chǎng)景中抽取654對(duì)彩色圖像和深度圖像作為測(cè)試集,并對(duì)深度圖像空缺的區(qū)域進(jìn)行填補(bǔ),深度值上限設(shè)定為10 m。在訓(xùn)練階段,使用雙線性降采樣方法將NYUv2數(shù)據(jù)集中圖像分辨率改為256像素×352像素,并將其作為SMDUN的輸入和標(biāo)簽數(shù)據(jù)的默認(rèn)分辨率。在測(cè)試階段,將網(wǎng)絡(luò)的預(yù)測(cè)深度圖像恢復(fù)到原始圖像大小,同時(shí)在文獻(xiàn)[9]定義的指定區(qū)域計(jì)算預(yù)測(cè)結(jié)果的定量指標(biāo)。
KITTI是一個(gè)包含雙目立體圖像和3D點(diǎn)云數(shù)據(jù)的室外場(chǎng)景數(shù)據(jù)集,涵蓋市區(qū)、鄉(xiāng)村、高速公路以及校園等56個(gè)不同場(chǎng)景,圖像分辨率為1 241像素×376像素。采用文獻(xiàn)[9]定義的訓(xùn)練集與測(cè)試集劃分方法,從56個(gè)場(chǎng)景中選取28個(gè)場(chǎng)景用于訓(xùn)練,其余28個(gè)場(chǎng)景用于測(cè)試。從訓(xùn)練場(chǎng)景中抽取2.8萬對(duì)彩色圖像和深度圖像作為訓(xùn)練集,對(duì)測(cè)試場(chǎng)景中抽取697對(duì)彩色圖像和深度圖像作為測(cè)試集,對(duì)稀疏的深度圖像進(jìn)行填補(bǔ)[9],深度值上限設(shè)定為80 m。在訓(xùn)練階段,去掉深度圖像上層區(qū)域中激光雷達(dá)掃描不到的部分,使用雙線性降采樣方法將KITTI數(shù)據(jù)集中圖像分辨率改為256像素×512像素,并將其作為SMDUN的輸入和標(biāo)簽數(shù)據(jù)的默認(rèn)分辨率。在測(cè)試階段,將網(wǎng)絡(luò)的預(yù)測(cè)深度圖像恢復(fù)到原始圖像大小,同時(shí)在文獻(xiàn)[9]定義的指定區(qū)域計(jì)算預(yù)測(cè)結(jié)果的定量指標(biāo)。
場(chǎng)景模態(tài)深度理解網(wǎng)絡(luò)采用TensorFlow深度學(xué)習(xí)框架,使用NVIDIA RTX 2080Ti進(jìn)行訓(xùn)練與測(cè)試。SMDUN的第一個(gè)編碼器網(wǎng)絡(luò)為ResNet-50,并使用ILSVRC[31]中的預(yù)訓(xùn)練模型進(jìn)行初始化。
場(chǎng)景模態(tài)深度理解網(wǎng)絡(luò)的訓(xùn)練過程分為兩步:第一步訓(xùn)練側(cè)重于SMDUN的場(chǎng)景模態(tài)損失,計(jì)算時(shí)式(14)中參數(shù)αim和αmod分別設(shè)置為1.0×10-4和1,網(wǎng)絡(luò)參數(shù)更新使用Adam優(yōu)化算法,設(shè)置Adam算法的學(xué)習(xí)率為1.0×10-4,參數(shù)β1=0.9,β2=0.999;第二步訓(xùn)練側(cè)重于連續(xù)標(biāo)簽損失,計(jì)算時(shí)式(14)中參數(shù)αim和αmod分別設(shè)置為1和1.0×10-2。Adam優(yōu)化算法的學(xué)習(xí)率在迭代中采用多項(xiàng)式衰減策略,初始學(xué)習(xí)率設(shè)置為1.0×10-4,終止學(xué)習(xí)率設(shè)置為1.0×10-5,多項(xiàng)式衰減參數(shù)Power=0.9。在NYUv2數(shù)據(jù)集中,第一步訓(xùn)練和第二步訓(xùn)練的epoch分別為6、35,網(wǎng)絡(luò)的batch設(shè)置為6;在KITTI數(shù)據(jù)集中,第一步訓(xùn)練和第二步訓(xùn)練的epoch分別為3、35,網(wǎng)絡(luò)的batch設(shè)置為4。
將本文提出的場(chǎng)景模態(tài)深度理解網(wǎng)絡(luò)與DORN[13]網(wǎng)絡(luò)、GASDA[21]網(wǎng)絡(luò)、ACAN[22]網(wǎng)絡(luò)以及文獻(xiàn)[9]、文獻(xiàn)[11-12]、文獻(xiàn)[14]、文獻(xiàn)[17]、文獻(xiàn)[20]以及文獻(xiàn)[32-37]中其他流行的深度網(wǎng)絡(luò)實(shí)驗(yàn)結(jié)果從定性和定量上進(jìn)行比較。
本文將SMDUN的實(shí)驗(yàn)結(jié)果與上述其他網(wǎng)絡(luò)在以下6種定量指標(biāo)上進(jìn)行比較:
1)絕對(duì)相關(guān)誤差(Absolute Relative Error,AbsRel),其計(jì)算公式為:
2)均方相關(guān)誤差(Mean Squared Relative Error,MSqRel),其計(jì)算公式為:
3)均方根誤差(Root Mean Squared Error,RMSE),其計(jì)算公式為:
4)對(duì)數(shù)均方根誤差(Root Mean Squared Error in log space,RMSElog),其計(jì)算公式為:
5)對(duì)數(shù)平均誤差(Mean log10 Error,MLog10E),其計(jì)算公式為:
6)閾值準(zhǔn)確度δ1、δ2和δ3,其中:
在式(20)~式(25)中,yi是標(biāo)簽圖像中的深度值為網(wǎng)絡(luò)預(yù)測(cè)的深度圖中的值,n為圖像的像素個(gè)數(shù)。
3.4.1 網(wǎng)絡(luò)模塊剝離實(shí)驗(yàn)
為驗(yàn)證本文提出的多個(gè)模塊具備提升網(wǎng)絡(luò)深度理解性能的能力,分別對(duì)各模塊進(jìn)行剝離得到3種不同的網(wǎng)絡(luò)結(jié)構(gòu),在NYUv2數(shù)據(jù)集上分別進(jìn)行定量實(shí)驗(yàn)并與SMDUN進(jìn)行對(duì)比,結(jié)果如表1所示。其中:Type-1為剝離所有SMFEM子模塊后僅保留堆疊沙漏結(jié)構(gòu)得到的網(wǎng)絡(luò);Type-2為在堆疊沙漏結(jié)構(gòu)網(wǎng)絡(luò)上僅保留圖1中SMFEM-3模塊得到的網(wǎng)絡(luò);Type-3為在堆疊沙漏網(wǎng)絡(luò)結(jié)構(gòu)上保留相同SMFEM模塊,并在SMFEM中去除ECM模塊和局部極大似然譯碼模塊得到的網(wǎng)絡(luò)??梢钥闯觯簭腡ype-1到SMDUN,隨著并入場(chǎng)景模態(tài)層數(shù)與網(wǎng)絡(luò)子模塊的逐漸增加,網(wǎng)絡(luò)深度理解性能逐步提升;SMDUN全部指標(biāo)值均為最優(yōu),其具有最佳深度估計(jì)性能,驗(yàn)證了本文所提出SMFEM模塊、ECM子模塊以及MLDOM子模塊的有效性。
表1 網(wǎng)絡(luò)模塊剝離實(shí)驗(yàn)的定量結(jié)果Table 1 Quantitative results of network module stripping experiment
3.4.2 理解性能的對(duì)比
1)NYUv2數(shù)據(jù)集實(shí)驗(yàn)
表2為本文SMDUN和其他深度網(wǎng)絡(luò)在NYUv2數(shù)據(jù)集上的定量實(shí)驗(yàn)結(jié)果??梢钥闯?,SMDUN屬于性能最好的第一梯隊(duì)網(wǎng)絡(luò),在最重要的Mlog10E和AbsRel這兩項(xiàng)指標(biāo)中均達(dá)到最優(yōu)值,驗(yàn)證了其有效性(表2中“-”表示該值不存在)。
表2 不同網(wǎng)絡(luò)在NYUv2數(shù)據(jù)集上定量結(jié)果的對(duì)比Table 2 Comparison of quantitative results of different networks on NYUv2 dataset
圖6為不同網(wǎng)絡(luò)在NYUv2數(shù)據(jù)集上的深度預(yù)測(cè)定性實(shí)驗(yàn)結(jié)果(彩色效果參見《計(jì)算機(jī)工程》官網(wǎng)HTML版)??梢钥闯觯何墨I(xiàn)[9]網(wǎng)絡(luò)能獲得粗略的三維空間結(jié)構(gòu)但誤差較大,物體邊緣較模糊;文獻(xiàn)[29]網(wǎng)絡(luò)所得深度圖像總體誤差相對(duì)較低,但其深度信息過于平滑,場(chǎng)景中較小物體難以分辨且物體輪廓存在不合理的形變;文獻(xiàn)[13]網(wǎng)絡(luò)所得深度圖像整體上較模糊,丟失大量細(xì)節(jié)信息且存在明顯的網(wǎng)格效應(yīng);SMDUN與真實(shí)圖像更接近,所得深度圖像包含更多細(xì)節(jié)信息且場(chǎng)景中物體輪廓更清晰。
圖6 不同網(wǎng)絡(luò)在NYUv2數(shù)據(jù)集上定性結(jié)果的對(duì)比Fig.6 Comparison of qualitative results of different networks on NYUv2 dataset
2)KITTI數(shù)據(jù)集實(shí)驗(yàn)
表3為本文SMDUN和其他網(wǎng)絡(luò)在KITTI數(shù)據(jù)集上的定量實(shí)驗(yàn)結(jié)果??梢钥闯?,SMDUN有5個(gè)定量指標(biāo)取得最優(yōu)值,RMSE值為次優(yōu),表明SMDUN可有效解決單目RGB圖像的深度理解問題。
表3 不同網(wǎng)絡(luò)在KITTI數(shù)據(jù)集上定量結(jié)果的對(duì)比Table 3 Comparison of quantitative results of different networks on KITTI dataset
圖7為不同網(wǎng)絡(luò)在KITTI數(shù)據(jù)集上的深度預(yù)測(cè)定性實(shí)驗(yàn)結(jié)果(彩色效果參見《計(jì)算機(jī)工程》官網(wǎng)HTML版)??梢钥闯觯何墨I(xiàn)[20]網(wǎng)絡(luò)所得深度圖像中物體輪廓較清晰,但其與真實(shí)深度圖像標(biāo)簽存在較大誤差;文獻(xiàn)[13]網(wǎng)絡(luò)的定性結(jié)果整體模糊并存在明顯的網(wǎng)格效應(yīng);SMDUN與真實(shí)深度圖像在定性結(jié)果上更接近,所得深度圖像包含更多細(xì)節(jié)信息且場(chǎng)景中物體輪廓更清晰。
圖7 不同網(wǎng)絡(luò)在KITTI數(shù)據(jù)集上定性結(jié)果的對(duì)比Fig.7 Comparison of qualitative results of different networks on KITTI dataset
本文提出一種用于單目圖像深度理解的場(chǎng)景模態(tài)深度理解網(wǎng)絡(luò)。以堆疊沙漏網(wǎng)絡(luò)為主框架,使用不同分辨率的場(chǎng)景模態(tài)離散標(biāo)簽指導(dǎo)網(wǎng)絡(luò)每一層級(jí)特征的有效提取,在堆疊沙漏網(wǎng)絡(luò)中逐次利用場(chǎng)景模態(tài)獲取特征,采用綜合損失函數(shù)指導(dǎo)網(wǎng)絡(luò)從低層級(jí)到高層級(jí)理解深度信息,并設(shè)計(jì)誤差修正子模塊和極大似然譯碼優(yōu)化子模塊修正網(wǎng)絡(luò)中間層級(jí)的錯(cuò)誤特征以減少誤差累計(jì),同時(shí)對(duì)離散深度標(biāo)簽進(jìn)行有序回歸編碼,增加網(wǎng)絡(luò)容錯(cuò)能力并提升訓(xùn)練的精確度和穩(wěn)定性。實(shí)驗(yàn)結(jié)果表明,相較NYUv2、GASDA和DORN等深度網(wǎng)絡(luò),該網(wǎng)絡(luò)在NYUv2數(shù)據(jù)集上絕對(duì)相關(guān)誤差與對(duì)數(shù)平均誤差均最小,在KITTI數(shù)據(jù)集上均方相關(guān)誤差最小,其預(yù)測(cè)出的深度圖像包含較多細(xì)節(jié)信息且目標(biāo)輪廓更清晰。后續(xù)考慮將極大似然譯碼優(yōu)化模塊應(yīng)用于其他深度學(xué)習(xí)任務(wù),以協(xié)助解決語義分割與人體關(guān)節(jié)點(diǎn)檢測(cè)等問題。