朱丙麗 高曉琴 阮玲英
1(重慶三峽學院計算機科學與工程學院 重慶 404100)
2(四川工商職業(yè)技術學院信息工程系 四川 都江堰 611830)
圖像深度估計是計算機視覺中的一個基本問題,在該領域中有著廣泛的應用。深度信息是理解場景中幾何關系的重要線索,具有顏色和深度通道的RGBD圖像可以應用于多種任務,如三維模型重構[1-2]、場景識別[3-4]和人體姿態(tài)估計[5]等。
深度估計通常是使用多幅或單幅圖像預測場景深度圖的過程。當使用多幅圖像預測深度圖時,通常采用運動序列圖像進行預測[6-7],其得到的深度圖可以用于理解相對豐富的三維結構信息。相比之下,從單幅圖像估計深度更具挑戰(zhàn)性。這是因為在使用單幅圖時,無法將立體圖像和時間幀進行相互匹配。
越來越多的方法嘗試對單幅圖像進行深度估計,大致可以分為兩大類:基于學習的方法和交互式方法。一些傳統(tǒng)的基于學習的方法將深度估計表述為一個馬爾可夫隨機場學習問題。Saxena等[8]使用線性回歸和馬爾可夫隨機場從一組圖像特征預測深度。Liu等[9]提出了一種考慮相鄰超像素之間關系的離散連續(xù)條件隨機場模型,實現(xiàn)了深度估計與語義分割的強相關性,利用預測的語義標簽,通過對類和幾何先驗深度的強化引導三維信息重建。
目前基于學習的方法大多依賴于深度學習的應用,其中深度卷積神經網絡(Convolutional Neural Network,CNN)的使用最為普遍。Eigen等[10]設計了一個全局粗尺度深度CNN,直接從輸入圖像返回一個粗略的深度圖,然后訓練一個局部精細網絡進行局部優(yōu)化。Liu等[11]通過探究CNN和離散連續(xù)條件隨機場提出了一種深度估計的深度卷積神經場模型。在統(tǒng)一的深度CNN框架下,共同學習離散連續(xù)條件隨機場的一元勢和成對勢。Wang等[12],與傳統(tǒng)的基于學習的方法一樣,使用CNN聯(lián)合預測由像素深度值和語義標簽組成的全局布局,通過深度和語義信息的交互提高性能。
為了通過單幅圖像進行深度估計,本文提出了一種基于多通道卷積神經網絡的單圖像深度估計算法。首先,為了提取信息更多的CNN中間層特征,對ResNet[13]的框架進行了改進;然后對輸入圖像進行各種比例的裁剪來生成多個深度圖候選對象,并將這些深度圖候選對象映射合并為一個深度映射候選對象;最后,通過傅里葉反變換生成最終估計深度圖。
ResNet-152是一個非常深的網絡,包括151個卷積層和1個全連接層。如圖1所示,原始的ResNet-152包含50個BC。為了提取信息更多的中間層特征,對BC進行了改進。BC,C′表示修改后的塊,其中:C是輸出特征圖中的通道數(shù),C′為特征映射中通過附加路徑提取的通道數(shù)。在這里,中間特征映射從BC的最后一個ReLU層提取得到。
圖1 原始塊和修改塊的結構圖
在訓練階段,為了提升訓練速度和提高深度估計的性能,本文采用雙階段訓練方法。在第一階段,使用ResNet-152的原始結構對網絡進行訓練。然后從ResNet-152參數(shù)開始,對圖像分類任務進行預訓練,并使用訓練圖像及其實際深度圖對其進行微調。在第二階段,使用第一階段的參數(shù)開始訓練,用高斯隨機值初始化附加特征提取部分的參數(shù)。
在回歸問題中,經常使用歐幾里得損失:
(1)
(2)
為了克服這個問題,本文提出一種新的損失,稱為深度平衡歐幾里得(DBE)損失:
(3)
式中:g是平衡的二次函數(shù)。
(4)
然后可得:
(5)
基于上文提出的深度估計網絡結構,使用DBE損失進行訓練,可以將輸入圖像生成多個深度圖候選對象。圖2說明了生成深度映射候選對象的過程。首先,將輸入圖像分別裁剪到四個角,裁剪比r定義為裁剪后的圖像與整個圖像的大小比。其次,通過CNN對每個裁剪后的圖像進行處理,得到相應的深度圖。最后,將這四個部分估計的深度映射合并為一個深度映射候選對象。
圖2 多通道卷積神經網絡中深度圖候選對象的生成過程
在合并過程中,所有深度值都應該按1/r的倍數(shù)進行縮放,以補償裁剪后的圖像中物體看起來更近的縮放效果??s放后,將部分深度圖轉換到它們的位置,然后疊加,對重疊區(qū)域的疊加進行平均。
由于CNN參數(shù)不對稱,翻轉后的圖像不會產生翻轉后的深度圖。因此,本文水平翻轉輸入圖像,獲得裁剪比r的深度映射候選對象,并翻轉深度映射候選對象。
(6)
式中:u和v是水平和垂直頻率。
(7)
(8)
(9)
這可以使用Tk的偽逆運算來解決:
wk=TK+tk
(10)
本文對所有k重復這個過程以確定所有的權值和偏置參數(shù)。
本文使用NYUv2深度數(shù)據(jù)集[1],其中包含大約280 000幅訓練圖像。為了訓練所提出的CNN,本文使用比例、旋轉、顏色和水平翻轉變換來執(zhí)行數(shù)據(jù)增強。NYUv2數(shù)據(jù)集還提供654幅單獨的測試圖像。如上文所述,這里采用雙階段訓練法。在第一階段,使用預先訓練的ResNet-152網絡初始化參數(shù),再進行50萬次迭代訓練,區(qū)域塊大小為4,學習率為0.000 16。在第二階段中,將現(xiàn)有部分的學習率降低10-3倍,對于附加的特征提取部分,將學習速率設置為0.000 16,塊大小也設為4。
對于每幅圖像,本文生成9個具有裁剪率r∈{0.60,0.65,…,1.00}的深度圖候選對象,并且為每個裁剪率使用翻轉候選對象。因此,最終可得到18個候選對象。
這里使用了三個性能指標[14]來進行結果對比,分別為RMSE、Rel和δ δ 本文基于ResNet-152提出了改進的深度估算網絡(DEN),然后提出了改進的深度平衡歐幾里得(DBE)損失函數(shù),最后提出了基于傅里葉聯(lián)合算法(FDC)。 為了較好地對比本文的算法效果,分別使用ResNet-152、DEN、DEN+DBE和本文算法對輸入圖像進行深度估計。深度估計結果如圖3所示。 (a) 輸入圖像 (b) ResNet-152 (c) DEN (d) DEN+DBE (e) 本文算法 (f) 實際深度圖 為量化對比分析圖3的深度估計結果,分別使用RMSE、Rel、δ<1.25指標對圖3(b)~(e)進行計算,結果如表1所示。觀察表中數(shù)據(jù)可發(fā)現(xiàn),對網絡結構的改進優(yōu)化了深度估計結果,例如RMSE從0.588(ResNet-152的值)提高到0.577(DEN的值)。同理,DBE和FDC均優(yōu)化了深度估計結果。因此本文完整算法的最終指標為最佳值,如表1中粗體字所示。 表1 本文算法的指標結果 將本文算法與最近提出的先進算法進行比較,結果如圖4所示。與其他算法相比,本文算法能夠準確、可靠地估計深度信息,減少模糊偽像。通過對比表2中的指標結果,同樣可發(fā)現(xiàn),本文算法的質量指標最佳、效果最好。 (a) 輸入圖像 (b) 實際深度圖 (c) 文獻[15] (d) 文獻[14] (e) 文獻[16] (f) 本文算法 表2 與其他算法比較的指標結果 本文提出了一種基于多通道卷積神經網絡的單圖像深度估計算法,該算法生成多個深度映射候選對象,并將這些候選對象組合到傅里葉頻域。具體來說,本文開發(fā)了基于ResNet-152的CNN結構,并引入了DBE損失對網絡進行深度訓練。此外,本文通過裁剪具有不同裁剪比例的輸入圖像來生成多個深度圖候選對象。為了利用不同深度映射候選函數(shù)的互補性質,在傅里葉域中對它們進行了組合。實驗結果表明,該算法取得了較好的效果。2.3 實驗結果
3 結 語