孔維罡 郭乃網(wǎng) 周向東
1(復(fù)旦大學(xué)計(jì)算機(jī)科學(xué)技術(shù)學(xué)院 上海 200433) 2(國(guó)網(wǎng)上海市電力公司電力科學(xué)研究院 上海 200437)
深度圖是物體的三維表示形式之一,一般通過(guò)專用設(shè)備來(lái)獲取。由于深度圖像包含了場(chǎng)景距離信息,計(jì)算機(jī)就能借此來(lái)進(jìn)行空間感知等工作。因此,深度圖在很多計(jì)算機(jī)視覺(jué)相關(guān)領(lǐng)域有著廣泛的應(yīng)用,是3D目標(biāo)檢測(cè)[1]、自動(dòng)駕駛[2]、機(jī)器人視覺(jué)[3]的重要組成部分?,F(xiàn)有深度預(yù)測(cè)方法大多都是雙目深度預(yù)測(cè),即需要立體視圖對(duì)來(lái)估計(jì)視差,但是絕大多數(shù)圖像都沒(méi)有伴隨的另一幅視圖,所以單目深度估計(jì)相比雙目具有更好應(yīng)用前景和研究?jī)r(jià)值。
一般來(lái)說(shuō)根據(jù)單幅圖像估計(jì)圖像像素的深度信息非常困難。為解決這一難點(diǎn),研究者們認(rèn)識(shí)到同一場(chǎng)景下的不同視角的圖片之間是有很大的關(guān)聯(lián)性的。因此參考雙目圖片預(yù)測(cè)像素深度的方法,單目圖像深度預(yù)測(cè)可以先根據(jù)給定的單目圖像對(duì)視差圖像進(jìn)行預(yù)測(cè)(即根據(jù)左視圖,預(yù)測(cè)生成右視圖),然后生成視差并進(jìn)行像素深度的計(jì)算。
傳統(tǒng)的單目深度估計(jì)方法效果較差,而隨著深度學(xué)習(xí)的發(fā)展,機(jī)器計(jì)算能力的加大以及數(shù)據(jù)規(guī)模的擴(kuò)大,單目深度估計(jì)有了新的發(fā)展方向和新的挑戰(zhàn)。Eigen等[4]提出了一種兩個(gè)尺度的網(wǎng)絡(luò)結(jié)構(gòu),先用第一部分網(wǎng)絡(luò)預(yù)測(cè)出低分辨率的深度圖,然后用第二部分網(wǎng)絡(luò)去提煉這個(gè)輸出,最后得到深度結(jié)果。Wang等[5]意識(shí)到深度信息和圖片語(yǔ)義有著較強(qiáng)的關(guān)聯(lián)性,并利用二者的相似性建立了語(yǔ)義分割和深度預(yù)測(cè)的統(tǒng)一框架,二者相輔相成得到較好的預(yù)測(cè)效果。除了語(yǔ)義分割之外,Zhang等[6]先用RGB圖像預(yù)測(cè)表面法線和遮擋邊界,然后將之與原始深度值結(jié)合,求解所有像素點(diǎn)的深度。而Cao等[7]把圖像根據(jù)視點(diǎn)的遠(yuǎn)近分層,對(duì)每個(gè)像素進(jìn)行分類來(lái)預(yù)測(cè)每個(gè)像素的深度標(biāo)簽。Kuznietsov等[8]把傳感器得到稀疏的深度數(shù)據(jù)和無(wú)監(jiān)督的方法結(jié)合起來(lái),建立了半監(jiān)督的深度預(yù)測(cè)模型。但無(wú)論是有監(jiān)督還是半監(jiān)督,這些方法都需要使用大量的真實(shí)深度數(shù)據(jù),而真實(shí)深度需要借助紅外傳感器或者激光雷達(dá),獲取難度較高,成本較大。Godrad等[9]設(shè)計(jì)了一種由兩個(gè)網(wǎng)絡(luò)組成的自監(jiān)督損失架構(gòu)來(lái)估計(jì)單幅圖像的深度值,該方法包括編碼器-解碼器架構(gòu)的深度估計(jì)網(wǎng)絡(luò)和基于殘差網(wǎng)絡(luò)的姿態(tài)網(wǎng)絡(luò),效果較好,但需要同一場(chǎng)景連續(xù)的圖像幀參與訓(xùn)練,這限制了應(yīng)用場(chǎng)景。
學(xué)術(shù)界也對(duì)視圖生成進(jìn)行了深入的研究。早期視圖生成方法基于已知的不同視角的三維幾何關(guān)系,使用基于圖片的繪制技術(shù)生成新的視角,比如全景圖、視圖插值、視圖變形、全光模型、光場(chǎng)等方法[10]。近年來(lái)視圖生成方法大多是基于神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)的,這些方法大致可以分為基于深度圖像的繪制和基于多視圖的視圖生成。文獻(xiàn)[11]利用具有真實(shí)深度的數(shù)據(jù)作為監(jiān)督,通過(guò)深度估計(jì)、圖像分割、深度細(xì)化三個(gè)網(wǎng)絡(luò)結(jié)構(gòu)得到點(diǎn)云和深度圖,進(jìn)而渲染得到連續(xù)的新視圖。文獻(xiàn)[12]采用無(wú)監(jiān)督的深度估計(jì)網(wǎng)絡(luò)估計(jì)致密深度,然后使用前向映射方法將輸入投影到對(duì)應(yīng)的新視圖。文獻(xiàn)[13]為了處理物體遮擋過(guò)多、圖像深度值變化多樣等復(fù)雜場(chǎng)景問(wèn)題。在可學(xué)習(xí)的梯度下降方法的基礎(chǔ)上提出了基于稀疏視點(diǎn)和不同深度圖像層的視角合成方法。上述方法中,基于深度的繪制需要獲取成本高的地面真實(shí)深度作為監(jiān)督。而基于多視圖的生成方法需要同一場(chǎng)景的一些不同角度的視圖。但是絕大多數(shù)圖像都是沒(méi)有伴隨多角度視圖的,這極大限制了方法的適用性。文獻(xiàn)[14]設(shè)計(jì)了一種基于變換自動(dòng)編碼器的結(jié)構(gòu),對(duì)給定單一原圖進(jìn)行編碼,然后將原圖和目標(biāo)的映射應(yīng)用于該編碼,通過(guò)神經(jīng)網(wǎng)路解碼得到深度圖,然后根據(jù)相機(jī)參數(shù)把深度圖投影到原圖上進(jìn)行致密匹配并編碼為光流圖,最后借助光流圖把原圖按像素變換得到目標(biāo)結(jié)果。無(wú)監(jiān)督的單圖像視圖生成由于缺少深度語(yǔ)義信息,生成結(jié)果一般不如前兩種視圖生成方法,但這類方法不需要真實(shí)深度信息或者三維信息作為監(jiān)督,應(yīng)用場(chǎng)景更廣泛,成本也更低。
Deep3D[15]使用卷積神經(jīng)網(wǎng)絡(luò)對(duì)單圖像提取特征,生成不同視差下的概率圖,合成對(duì)應(yīng)的新視圖,然后用原圖和新視圖計(jì)算深度圖,方法不需要真實(shí)深度數(shù)據(jù)作為監(jiān)督,有比較好的效果。單圖像視圖生成和深度預(yù)測(cè)任務(wù)輸入為單幅RGB圖像(以下簡(jiǎn)稱左圖),輸出為合成出的同一水平位置另一相機(jī)下的視圖(以下簡(jiǎn)稱右圖)以及輸入圖像對(duì)應(yīng)的深度圖。但該類方法生成的右圖中普遍存在圖像扭曲問(wèn)題,針對(duì)這個(gè)問(wèn)題,本文基于CenterNet[16]方法,使用深層聚合網(wǎng)絡(luò)[17](Deep Layer Aggregation,DLA)提取原始左圖的語(yǔ)義信息,生成物體中心的中心點(diǎn)熱圖。本文提出了物體中心點(diǎn)概率分布和視差概率分布加權(quán)結(jié)合的概率模型。補(bǔ)足的物體語(yǔ)義信息會(huì)使生成右圖的物體位置更加精確,從而產(chǎn)生更好的右圖和更準(zhǔn)確的深度圖。
本文創(chuàng)新性地引入目標(biāo)檢測(cè)模型,將像素的對(duì)象類別概率和視差概率結(jié)合起來(lái),改進(jìn)了現(xiàn)有視圖生成方法,并使用SGBM算法通過(guò)原圖和生成視圖計(jì)算得到深度圖。實(shí)驗(yàn)表明本方法與現(xiàn)有相關(guān)工作相比具有更好的視圖生成和深度估計(jì)性能。
我們?cè)O(shè)計(jì)并實(shí)現(xiàn)了一個(gè)基于像素語(yǔ)義信息的視圖生成和深度預(yù)測(cè)方法,其設(shè)計(jì)思路如圖1所示。
圖1 本文方法設(shè)計(jì)思路
為解決生成右圖位置或輪廓不精確的問(wèn)題。本文借用CenterNet生成包含物體中心點(diǎn)信息的熱圖,將其與視差概率圖相結(jié)合,即賦予物體中心點(diǎn)附近像素更高的權(quán)重,使其與背景像素距離變大,在訓(xùn)練過(guò)程中逐漸逼近真實(shí)視差或者物體真實(shí)輪廓。
本方法主要由以下三個(gè)部分組成:
(1) 得到中心點(diǎn)熱圖。對(duì)于輸入圖像,將其輸入CenterNet的前饋DLA網(wǎng)絡(luò)中提取特征生成中心點(diǎn)概率熱圖(Heatmap),每一幅熱圖中的每一像素點(diǎn)的值服從該位置物體類別的高斯分布,本文這里暫不考慮類別因素,僅突出像素點(diǎn)是否為物體中心,將其歸一化為單一類的中心點(diǎn)熱圖。
(2) 得到視差概率分布并生成右圖。將輸入圖像輸入由卷積層和反卷積層組成的神經(jīng)網(wǎng)絡(luò),得到不同視差下的概率分布圖。將概率圖和上一步的中心點(diǎn)熱圖以條件概率的形式結(jié)合起來(lái),得到加權(quán)后的視差概率圖,最后在選擇層把左圖和視差概率圖相結(jié)合,二者匹配計(jì)算得到右圖。
(3) 計(jì)算得到深度圖。將右圖和原圖作為雙目立體圖像對(duì)利用SGBM(Semi-global block matching)[18]算法就可以計(jì)算得到深度圖。
本文提出的方法主要基于目標(biāo)檢測(cè)模型CenterNet和視圖生成模型Deep3D這兩個(gè)在各自問(wèn)題上表現(xiàn)較好的模型。本模型通過(guò)引入像素的物體中心概率,對(duì)生成視圖的視差概率進(jìn)行加權(quán)篩選,使其能更準(zhǔn)確地生成物體和背景的位置。其總體框架如圖2所示。
圖2 總體架構(gòu)圖
CenterNet是一種anchor-free的目標(biāo)檢測(cè)算法,它通過(guò)將要檢測(cè)的目標(biāo)簡(jiǎn)化到一個(gè)中心點(diǎn),訓(xùn)練網(wǎng)絡(luò)提取熱圖,然后回歸得到目標(biāo)的大小、位置、方向等其他屬性,其架構(gòu)圖如圖3所示。
本文方法基于CenterNet框架,使用DLA網(wǎng)絡(luò)提取特征,生成中心點(diǎn)熱圖,用以輔助視圖生成。
如圖4所示,本文使用DLA-34網(wǎng)絡(luò)提取特征得到4倍下采樣的中心點(diǎn)概率熱圖。圖中數(shù)字代表圖片步長(zhǎng),實(shí)線框代表步驟,虛線框代表求和節(jié)點(diǎn)。實(shí)線箭頭是下采樣過(guò)程,虛線箭頭是可變卷積,點(diǎn)線箭頭是上采樣過(guò)程。DLA是一種迭代網(wǎng)絡(luò)結(jié)構(gòu),其淺層提取的幾何信息更精細(xì),深層得到的語(yǔ)義信息更豐富,網(wǎng)絡(luò)從最淺、最小的尺度開(kāi)始,往下迭代到更深、更大的尺度,以達(dá)到聚合傳播過(guò)程中細(xì)化特征的效果。另外,還在DLA-34結(jié)構(gòu)中所有上采樣層的前面添加了3×3的可變卷積層,并跳躍連接低層和輸出層,使圖像感受野更加精確,提高下采樣特征圖的分辨率。
圖4 添加跳連層和可變卷積的DLA-34結(jié)構(gòu)
DLA網(wǎng)絡(luò)通過(guò)高斯核擬合在圖片中計(jì)算出物體中心點(diǎn)最可能的位置,并將同一個(gè)類別的物體的中心點(diǎn)標(biāo)記在圖片上,按照高斯分布生成該類的中心點(diǎn)熱圖,如式(1)所示。
(1)
式中:(pi,pj)為預(yù)測(cè)的中心點(diǎn)坐標(biāo);c為類別;σp為和目標(biāo)大小相關(guān)的標(biāo)準(zhǔn)差;Yi,j,c表示該位置點(diǎn)為物體中心的概率,范圍為[0,1],等于1則代表該像素點(diǎn)為物體中心點(diǎn),為0則說(shuō)明該點(diǎn)為背景。如果兩個(gè)高斯分布重疊了,則選取重疊部分的最大值作為函數(shù)值。
目標(biāo)中心點(diǎn)損失函數(shù)如下:
(2)
另外,相比圖片中物體是什么,本文更關(guān)注圖片每個(gè)像素是屬于物體還是背景,以及其具體所在的位置范圍。因此按式(2)將上文生成的中心點(diǎn)熱圖對(duì)類別數(shù)C平均,得到最終的中心點(diǎn)熱圖。
(3)
我們使用卷積神經(jīng)網(wǎng)絡(luò)對(duì)原圖進(jìn)行特征提取,并且在每個(gè)池化層的分支后,使用反卷積層上采樣輸入的特征圖。這部分流程如圖5所示。這樣可以得到不同層級(jí)的特征圖,將每一級(jí)的特征結(jié)合在一起,得到和輸入圖像尺寸一致的特征表示。最后進(jìn)行一次卷積和softmax變換,得到概率分布形式的視差圖,即不同視差值d下的視差概率分布,如式(4)所示。
圖5 生成右圖流程圖
(4)
式中:i,j為坐標(biāo);N為視差通道數(shù);z為softmax變換前的卷積層的輸出。
為了使訓(xùn)練更容易,本文使用雙向線性插值初始化反卷積層。假設(shè)上采樣系數(shù)為k,則反卷積層的卷積核為2k×2k,步長(zhǎng)為k,padding為k/2。權(quán)重初始化為:
(5)
式中:c=(2k-1-(kmod 2))/2k。
選擇層是傳統(tǒng)DIBR(Depth Image-Based Rendering,基于深度圖像的繪制)[19]操作的模型化。對(duì)于給定左視點(diǎn)I與及對(duì)應(yīng)視差矩陣Di,j,根據(jù)式(6)可以得到右視點(diǎn)Oi,j。
Oi,j=Ii,j-Di,j
(6)
傳統(tǒng)方法中視差由深度和相機(jī)參數(shù)計(jì)算得到,通常不可微,這里使用式(4)計(jì)算得到的視差概率分布進(jìn)行替換。另外,假設(shè)像素點(diǎn)視差為d和為物體中心點(diǎn)二者相互獨(dú)立,我們將2.2節(jié)中的中心點(diǎn)熱圖以條件概率形式加權(quán)進(jìn)來(lái),可以得到右視點(diǎn)公式。
(7)
最后,我們以計(jì)算得到的右圖和右圖地面真實(shí)值的L1損失作為訓(xùn)練目標(biāo)。
Ld=|O-Y|
(8)
另外,由于原始數(shù)據(jù)經(jīng)過(guò)下采樣后分辨率較低,生成的右圖較為模糊,為改進(jìn)生成圖像的效果,這里按比例擴(kuò)大生成的視差差異圖,然后和原始左圖計(jì)算得到右圖。
根據(jù)輸入圖像進(jìn)行上述右圖計(jì)算和生成后,我們采用SGBM[15]算法進(jìn)行圖像深度估計(jì)。SGBM算法通過(guò)計(jì)算左右圖中對(duì)應(yīng)像素點(diǎn)的視差,獲得視差圖,最小化和該圖相關(guān)的函數(shù)來(lái)計(jì)算每個(gè)像素點(diǎn)的視差。然后根據(jù)視差和深度的轉(zhuǎn)換公式得到深度圖。視差與深度的關(guān)系如圖6所示。
圖6 深度計(jì)算示意圖
圖6中,L、R為雙目相機(jī),P為物體,xr、xl分別為P在左右相機(jī)中成像的坐標(biāo),b為兩相機(jī)距離,f為焦距,z為物體實(shí)際深度。由圖中的三角關(guān)系可得到深度計(jì)算公式:
(9)
xl-xr即為視差d。這里計(jì)算深度圖方法可以換成雙目深度預(yù)測(cè)網(wǎng)絡(luò),以減少對(duì)相機(jī)內(nèi)參的依賴,相關(guān)工作[20]表明能有較好的效果。
本文使用KITTI數(shù)據(jù)集,KITTI數(shù)據(jù)集由包含灰度相機(jī)、彩色相機(jī)、激光雷達(dá)、光學(xué)鏡頭、GPS導(dǎo)航的數(shù)據(jù)采集平臺(tái)在現(xiàn)實(shí)中采集的大量場(chǎng)景圖片組成,可用于立體匹配、光流預(yù)測(cè)、視覺(jué)測(cè)距、三維物體檢測(cè)等計(jì)算機(jī)視覺(jué)任務(wù)。本文使用KITTI Stereo 2012[21]、KITTI Stereo 2015[22]和KITTI raw[23]組成的5 000多幅立體圖片對(duì)。圖片包括城鎮(zhèn)街道、郊外鄉(xiāng)村、高速公路等場(chǎng)景,每幅圖片可能包含有大量行人和汽車,并且存在各種程度的場(chǎng)景遮擋。其中數(shù)據(jù)集的80%用于訓(xùn)練,剩下用于測(cè)試。圖片尺寸大小約為1 246×371,大小誤差為1像素。所有數(shù)據(jù)會(huì)插值為1 280×384,然后按比例縮小為320×96以縮短計(jì)算時(shí)間。
選擇層將特征表示理解成65個(gè)通道下的概率分布,65個(gè)通道代表概率為0(即不存在視差)或者視差為-31到32之間不同的值。
訓(xùn)練上,目標(biāo)檢測(cè)部分用CenterNet在MSCOCO[24]上的預(yù)訓(xùn)練模型初始化參數(shù),視圖生成部分使用VGG16[25]初始化參數(shù),模型訓(xùn)練批次為4,學(xué)習(xí)率0.000 4,共訓(xùn)練100輪。網(wǎng)絡(luò)模型都使用Pytorch實(shí)現(xiàn)。
本文使用真實(shí)右圖和生成右圖的像素級(jí)平均絕對(duì)誤差(MAE)作為定量評(píng)價(jià)標(biāo)準(zhǔn)。其計(jì)算公式見(jiàn)式(10)所示。生成結(jié)果與相關(guān)算法Deep3D、DeepView[26]以及Chen等[14]進(jìn)行了比較。
(10)
式中:H、W為圖像分辨率;f()為模型;y為真實(shí)右圖。MAE值越低越好。
比較算法中Deep3D為本文基準(zhǔn)算法。而DeepView,是Bae等[26]提出的基于單圖像的視圖生成網(wǎng)絡(luò),包括兩種全卷積網(wǎng)絡(luò)結(jié)構(gòu),一種是DeepViewgen的,由編碼、解碼、渲染三部分構(gòu)成,使用編碼器提取各層級(jí)特征,解碼后渲染生成概率視差圖,并計(jì)算得到右圖。另一種是DeepViewdec,將RGB圖轉(zhuǎn)碼為亮度色度圖,然后由亮度和色度信號(hào)的兩個(gè)編碼解碼網(wǎng)絡(luò)分別提取特征,最后解碼結(jié)果逆變?yōu)镽GB圖像。Chen等[14]的方法是由三維變換自動(dòng)編碼器、自監(jiān)督的深度信息預(yù)測(cè)、投影深度圖到原圖和視圖合成4個(gè)過(guò)程組成的網(wǎng)絡(luò)結(jié)構(gòu)。首先,模型對(duì)輸入的原始圖片以及原圖到目標(biāo)的映射進(jìn)行編碼,然后通過(guò)深度神經(jīng)網(wǎng)絡(luò)解碼得到預(yù)測(cè)的深度圖,接著根據(jù)相機(jī)參數(shù)把深度圖投影到原圖上,最后借助光流圖編碼對(duì)原圖進(jìn)行像素變換為最后的視圖生成結(jié)果。
表1列出了本文方法和上述對(duì)比方法在KITTI測(cè)試集上的結(jié)果。
表1 視圖生成評(píng)估結(jié)果
實(shí)驗(yàn)結(jié)果表明,本文使用的方法在評(píng)價(jià)標(biāo)準(zhǔn)上均超過(guò)了對(duì)比方法。相比基準(zhǔn)算法Deep3D有較大的提升說(shuō)明引入目標(biāo)檢測(cè)模型確實(shí)是有成效的。而DeepViewgen也是使用概率視差圖來(lái)生成右圖,同樣也說(shuō)明了概率結(jié)合中心點(diǎn)熱圖和概率視差圖的有效性。對(duì)于DeepViewdec,亮度色度顏色空間描述了影像的色彩和飽和度,常用于人臉檢測(cè)[27],對(duì)受亮度影響較大的場(chǎng)景效果較好,可能對(duì)于光照復(fù)雜的實(shí)拍場(chǎng)景不太適用。而相比最新的Chen等方法,本文方法在評(píng)估標(biāo)準(zhǔn)上表現(xiàn)也比較突出,可能原因是該方法模型是在合成數(shù)據(jù)集上進(jìn)行的訓(xùn)練,并且借助了相機(jī)參數(shù),合成數(shù)據(jù)和真實(shí)數(shù)據(jù)的差別,相機(jī)參數(shù)標(biāo)定的準(zhǔn)確程度,都影響的生成的結(jié)果。這也說(shuō)明了本方法引進(jìn)像素語(yǔ)義信息的改進(jìn)思路是十分有效的。
表2列出了本文方法和Deep3D在深度預(yù)測(cè)方向上的比較。二者都是用SGBM算法計(jì)算深度,由于數(shù)據(jù)集缺少真實(shí)深度數(shù)據(jù),這里使用地面真實(shí)的左圖和右圖通過(guò)SGBM得到的深度圖作為對(duì)照,比較了同等情況下本方法和Deep3D深度預(yù)測(cè)的情況。實(shí)驗(yàn)結(jié)果表明,本文方法相比原方法確實(shí)能提取出更準(zhǔn)確的深度信息。
表2 深度預(yù)測(cè)評(píng)估結(jié)果
為驗(yàn)證本方法各部分模塊的貢獻(xiàn),表3展示了移除或更改本方法的部分組件之后的模型性能。
表3 消融分析
表3中使用下采樣之后的左圖和得到的差異圖計(jì)算得到右圖,然后放大為原始分辨率??梢钥闯?生成右圖的效果大大降低了。因?yàn)檫M(jìn)行下采樣后圖片的分辨率較低,生成的右圖較模糊,后續(xù)操作按比例放大則會(huì)使之更加模糊。而使用原始左圖直接參與訓(xùn)練可以在訓(xùn)練過(guò)程中補(bǔ)足一部分精度。表3在訓(xùn)練目標(biāo)檢測(cè)網(wǎng)絡(luò)時(shí)使用CenterNet的3D目標(biāo)檢測(cè)模型作為預(yù)訓(xùn)練模型。結(jié)果顯示,雖然相對(duì)基準(zhǔn)方法有了提升,但是仍不如直接使用二維模型訓(xùn)練,原因可能是對(duì)于不帶三維信息的單二維圖像,直接使用3D模型會(huì)使初始訓(xùn)練誤差加大,反而達(dá)不到更好的效果。
圖7比較了本文方法和Deep3D生成的右圖,圖中分為A、B、C三組對(duì)比圖片。每組中(a)為左圖,(b)為右圖;(c)為Deep3D生成的右圖;(d)為本文方法生成的右圖。圖8展示了一些細(xì)節(jié)對(duì)比,分別對(duì)應(yīng)圖7中的A、B、C三組的細(xì)節(jié)對(duì)比:(a)為真實(shí)右圖;(b)為Deep3D生成右圖;(c)為本文方法生成右圖。從圖8中可以看出,A組中,Deep3D生成的結(jié)果車子整個(gè)歪了過(guò)來(lái),而本文的方法車子位置和輪廓相比來(lái)看更加準(zhǔn)確。B組中,原方法結(jié)果中的樹(shù)叢幾乎沒(méi)有紋理,而本文方法紋理相比之下保存得更多一點(diǎn)。C組車的紋理細(xì)節(jié)部分,本文方法的結(jié)果也比原方法的要更加的完善。實(shí)驗(yàn)結(jié)果表示,相比Deep3D,本文生成的右圖圖中物體整體位置更精確,邊界更穩(wěn)定。說(shuō)明引入物體目標(biāo)信息是很有效的。
圖7 兩種方法右圖生成結(jié)果對(duì)比
另一方面,生成的右圖分辨率較低,這是因?yàn)樵瓐D和經(jīng)過(guò)4倍下采樣然后放大得到的差異圖生成的右圖,放大細(xì)節(jié)后更顯得模糊虛化。此外,由于右圖是在單左圖上合成的,真實(shí)右圖中有部分物體不出現(xiàn)在左圖中,所以部分生成右圖邊界會(huì)發(fā)生畸變現(xiàn)象。本文方法相比基準(zhǔn)方法噪點(diǎn)較大,這是因?yàn)楸疚哪P褪褂昧艘暡罡怕屎椭行臒釄D加權(quán)相乘,生成的視差和左圖像素結(jié)合后不是整數(shù)像素點(diǎn)的可能性更大了,導(dǎo)致不可用的像素點(diǎn)相對(duì)變多,就需要更多地使用就近原則把生成的非整數(shù)像素點(diǎn)近似到相近的點(diǎn),所以顯得噪點(diǎn)較大,但是定量評(píng)估結(jié)果說(shuō)明這并不影響模型對(duì)場(chǎng)景的感知。
圖9展示了本文和Deep3D分別在物體和背景兩方面生成深度圖的表現(xiàn)。圖中分為A、B兩組,每組4幅圖片,依次為:(a) 左圖;(b) 左圖和真實(shí)右圖計(jì)算的深度;(c) Deep3D生成右圖計(jì)算的深度;(d) 本文生成的右圖計(jì)算的深度。可以看出,本方法對(duì)圖中汽車的深度預(yù)測(cè)表現(xiàn)比Deep3D要好。而在純背景場(chǎng)景的B組中,本方法對(duì)背景深度的計(jì)算也相對(duì)更準(zhǔn)確。說(shuō)明本方法生成的右圖更好地保留了深度信息。如果換用較好的雙目深度預(yù)測(cè)模型,將左圖和生成的右圖作為輸入,能達(dá)到較好的效果,這將可能是本文的擴(kuò)展工作。
圖9 SGBM計(jì)算得到的深度圖比較
本文提出并實(shí)現(xiàn)了基于目標(biāo)檢測(cè)模型的單圖像視圖生成方法。在KITTI數(shù)據(jù)集上進(jìn)行了實(shí)驗(yàn)和評(píng)估,結(jié)果顯示在該數(shù)據(jù)集上本方法達(dá)到了較好的效果。本文在Deep3D的基礎(chǔ)上引入了目標(biāo)檢測(cè)模型的思想,將物體中心點(diǎn)概率和視差概率結(jié)合起來(lái),使得生成的右圖物體更加精確,并且保留了Deep3D不需要真實(shí)深度數(shù)據(jù)監(jiān)督,端到端訓(xùn)練的優(yōu)點(diǎn)。并進(jìn)一步探討了使用生成的右圖進(jìn)行深度預(yù)測(cè)。實(shí)驗(yàn)顯示本文生成的右圖相比原方法在圖像深度預(yù)測(cè)方面顯示出更好的性能。