任 磊,孫曉明
(浙江理工大學(xué)信息學(xué)院,浙江 杭州 310018)
近年來(lái)隨著計(jì)算機(jī)視覺(jué)技術(shù)的發(fā)展,許多基于圖像的計(jì)算機(jī)應(yīng)用技術(shù)應(yīng)運(yùn)而生,如:車牌識(shí)別、人臉識(shí)別、三維圖像重建等,計(jì)算機(jī)處理數(shù)據(jù)圖像的結(jié)果將直接影響到這些應(yīng)用的精準(zhǔn)度。非朗伯體三維信息的獲取對(duì)于從圖像恢復(fù)物體空間形狀具有重要意義,一般采用兩種方法進(jìn)行相關(guān)信息的獲?。憾嘁暯侨S重建與光度立體視覺(jué)。前者利用攝影設(shè)備采集多張場(chǎng)景圖像來(lái)恢復(fù)三維幾何結(jié)構(gòu),該方法幾何結(jié)構(gòu)的重建精度高,但局部細(xì)節(jié)存在偏差;后者利用場(chǎng)景內(nèi)的光度信息(光照方向/強(qiáng)度等)恢復(fù)場(chǎng)景表面的法向圖,并通過(guò)法向圖恢復(fù)三維幾何結(jié)構(gòu)。相比于多視角方法,光度立體視覺(jué)方法雖然重建精度略低,但可獲得更詳盡的局部細(xì)節(jié)。
非朗伯體的光度立體視覺(jué)技術(shù)大致可分為4 類,即基于離群值抑制、基于復(fù)雜反射率模型、基于參照物以及基于深度學(xué)習(xí)的光度立體視覺(jué)技術(shù)?;陔x群值抑制的方法[1-2]假設(shè)非朗伯觀測(cè)值是局部且稀疏的,可被視為離群值。異常值的剔除往往需要大量輸入數(shù)據(jù),并且在處理密集的非朗伯體對(duì)象時(shí)比較困難(如存在高光)。許多復(fù)雜的反射率模型被用于近似代替非朗伯體模型,包括Torrance-Sparrow 模型[3]、Ward 模型[4]等。這些方法不但需要解決復(fù)雜的優(yōu)化問(wèn)題,而且處理材料種類有限。基于參照物的光度立體法[5]通常需要額外的參考對(duì)象,該類方法雖然可在光線方向未知的情況下處理存在空間變化的BDRF對(duì)象,但由于對(duì)參照物形狀和材料的要求,限制了其應(yīng)用前景。近年來(lái),隨著深度學(xué)習(xí)在各個(gè)計(jì)算機(jī)視覺(jué)任務(wù)中取得了巨大成功,基于深度學(xué)習(xí)的方法也被引入到標(biāo)定的光度立體視覺(jué)中[6-9]。其不是通過(guò)構(gòu)造復(fù)雜的反射率模型,而是直接學(xué)習(xí)從給定方向的反射率觀測(cè)結(jié)果到法向信息的映射。
傳統(tǒng)的光度立體視覺(jué)方法大多假設(shè)一個(gè)簡(jiǎn)化的反射率模型(理想的朗伯模型或簡(jiǎn)易反射率模型),然而現(xiàn)實(shí)物體大多數(shù)都是非朗伯體,且一種特定的簡(jiǎn)易模型也只對(duì)一小部分材料有效。同時(shí),光源信息的標(biāo)定也是一個(gè)復(fù)雜且繁瑣的過(guò)程。研究人員希望可僅通過(guò)固定視點(diǎn)下的多幅圖像直接計(jì)算圖像法向信息,這就是未標(biāo)定的光度立體視覺(jué)技術(shù)[10-13]。Chen 等[6]引入U(xiǎn)PS-FCN 網(wǎng)絡(luò),這是一個(gè)單級(jí)模型,可從已進(jìn)行歸一化處理且已知光照強(qiáng)度的圖像中回歸出物體表面法向信息,但全卷積網(wǎng)絡(luò)在提取特征時(shí)感受野太小,無(wú)法獲取全局信息,且計(jì)算效率低下,算法魯棒性不強(qiáng),其性能遠(yuǎn)落后于標(biāo)定的PS-FCN 方法[6]。
近年來(lái),生成對(duì)抗網(wǎng)絡(luò)(GAN)在計(jì)算機(jī)視覺(jué)、圖像處理等多個(gè)領(lǐng)域展現(xiàn)出良好性能[14-16]。本文旨在進(jìn)一步提高未標(biāo)定光度立體視覺(jué)技術(shù)法向估計(jì)的精確度,因此提出多尺度聚合的生成對(duì)抗網(wǎng)絡(luò),能夠有效解決圖像尺寸變化及輸入數(shù)量變化的問(wèn)題。多尺度聚合使每張圖像局部特征與全局特征經(jīng)過(guò)最大池化能更好地聚合在一起,生成的法向信息圖比基于全卷積算法生成的圖像更加準(zhǔn)確。為進(jìn)一步提高生成法向信息的精確性,本文采用微調(diào)模塊使法向信息圖在生成細(xì)節(jié)上更為精確,同時(shí)在處理局部細(xì)節(jié)較光滑的非朗伯體上展現(xiàn)出更好的訓(xùn)練效果。通過(guò)多項(xiàng)消融實(shí)驗(yàn),證明了該設(shè)計(jì)結(jié)構(gòu)的有效性與通用性。在公共數(shù)據(jù)集上的平均角度誤差為14.1°,相比UPS-FCN的結(jié)果下降了1.92°,MSE 誤差為9.15%,相比UPS-FCN 下降了1.43%,模型具有更強(qiáng)的魯棒性,同時(shí)在處理局部細(xì)節(jié)比較光滑的非朗伯體上展現(xiàn)了最優(yōu)的訓(xùn)練效果。
光度立體視覺(jué)是一種在同一視點(diǎn)、不同光源方向下,通過(guò)拍攝同一物體的多幅圖像恢復(fù)出物體表面法向信息的技術(shù)。在理想的朗伯體條件下,常用的求解過(guò)程為:①建立光照模型;②標(biāo)定光源信息;③求解表面法向信息;④求解深度信息。然而,現(xiàn)實(shí)世界中絕大多數(shù)物體都是由漫反射與鏡面反射材質(zhì)組合而成的。
1980 年,Woodham[17]在假設(shè)場(chǎng)景反射為理想朗伯模型的情況下提出經(jīng)典的光度立體視覺(jué)技術(shù),該問(wèn)題建立在平行光源的條件下,即光照方向?yàn)橐阎臉?biāo)量,光源在各方向上輻射均勻。亮度公式可簡(jiǎn)化為:
其中,Ijk代表圖像j上第k點(diǎn)的亮度值,ρk為對(duì)應(yīng)k點(diǎn)的漫反射系數(shù),nk為該點(diǎn)法向量方向,而對(duì)應(yīng)的光照方向lj已知,因此k點(diǎn)亮度值只取決于ρk和nk。在一個(gè)擁有M 個(gè)光源的系統(tǒng)中,光照方向矩陣可記為L(zhǎng)=(l1,l2,…,lM)∈R3×M,某點(diǎn)的亮度向量記為I=(i1,i2,…,iM)∈RM,可得到式(1)的矩陣形式:
對(duì)于已進(jìn)行歸一化處理的法向信息N=(nx,ny,nz),其自由度為2,漫反射系數(shù)ρ未知。所以為求出最終法向,至少要求方向矩陣L的秩為3,即取3 處不共線的光照方向,才可以通過(guò)最小二乘得到未經(jīng)過(guò)歸一化處理的法向n^,如式(4)所示。
未標(biāo)定光度立體的網(wǎng)絡(luò)結(jié)構(gòu)如圖1 所示。為獲得更精確的法向信息,生成器由兩個(gè)分支組成:多尺度聚合網(wǎng)絡(luò)(MUPS)與微調(diào)模塊。多尺度聚合網(wǎng)絡(luò)是從任意數(shù)量的輸入圖像中學(xué)習(xí)法向信息之間的映射,利用多尺度聚合使局部特征與全局特征更好地融合,通過(guò)最大池化結(jié)構(gòu)對(duì)多個(gè)輸入特征進(jìn)行聚合,最后經(jīng)過(guò)歸一化層得到法向信息。
采用跳躍連接以達(dá)到多尺度特征聚合的目的在于,求解一個(gè)物體的表面法向信息是由多個(gè)因素決定的,單一觀測(cè)的特征圖中顯然不能提供足夠多的信息解決噪聲模糊性等問(wèn)題。對(duì)于每一個(gè)圖像觀測(cè)到的特征圖,采用多尺度特征聚合以實(shí)現(xiàn)局部與全局特征更好地融合,從而在每張圖中觀測(cè)到更全面的信息。對(duì)于光度立體多輸入的特性而言,最后利用最大池化方法對(duì)多個(gè)特征進(jìn)行聚合,以解決傳統(tǒng)卷積網(wǎng)絡(luò)固定輸入的問(wèn)題。最大池化可以很自然地從不同光線方向捕捉到圖像中的強(qiáng)特征(如對(duì)于一個(gè)表面存在高光的點(diǎn),其法線靠近視點(diǎn)平分線與光照方向),此外最大池化在訓(xùn)練過(guò)程中可輕松忽略掉非激活的特性,使網(wǎng)絡(luò)具有更強(qiáng)的魯棒性。將池化后的特征進(jìn)行L2 歸一化處理,得到粗粒度的法向信息圖。微調(diào)模塊的作用是將粗精準(zhǔn)度的法向圖微調(diào)生成更高精度的結(jié)果圖,其由4 個(gè)殘差塊組成。由于為提高網(wǎng)絡(luò)性能而加深網(wǎng)絡(luò)結(jié)構(gòu)會(huì)導(dǎo)致網(wǎng)絡(luò)優(yōu)化困難與訓(xùn)練困難,因此本文采用殘差結(jié)構(gòu)。
(1)多尺度聚合網(wǎng)絡(luò)基于U-Net 網(wǎng)絡(luò),并利用了卷積神經(jīng)網(wǎng)絡(luò)的屬性(如平移不變性和參數(shù)共享)。網(wǎng)絡(luò)由多個(gè)卷積模塊與反卷積模塊組成,最開(kāi)始經(jīng)過(guò)4 個(gè)卷積核大小為3×3、步長(zhǎng)為1的卷積層,每一次卷積過(guò)后經(jīng)過(guò)Leaky Re-LU 激活層并進(jìn)行正則化處理,再通過(guò)步長(zhǎng)為2的平均池化層,達(dá)到下采樣目的。另一部分由3 個(gè)反卷積層與卷積層組成,通過(guò)卷積核大小為4×4、步長(zhǎng)為2的反卷積層,再通過(guò)與對(duì)應(yīng)下采樣部分的特征圖進(jìn)行特征融合后,送入卷積層中。最后將得到的結(jié)果進(jìn)行最大池化與歸一化處理得到最終結(jié)果。
(2)微調(diào)模塊網(wǎng)絡(luò)由4 個(gè)殘差塊和1 個(gè)卷積層以及歸一化層組成。理論上,網(wǎng)絡(luò)模型越復(fù)雜,網(wǎng)絡(luò)層數(shù)越深,意味著網(wǎng)絡(luò)擬合能力越強(qiáng),但在實(shí)際訓(xùn)練過(guò)程中常常會(huì)出現(xiàn)增加網(wǎng)絡(luò)層后模型訓(xùn)練效果反而變差的情況。這是因?yàn)殡S著網(wǎng)絡(luò)層級(jí)的增加,容易出現(xiàn)梯度消失現(xiàn)象。為此,He等[18]提出一種殘差結(jié)構(gòu),通過(guò)跳躍連接的方式使該問(wèn)題得到很好地解決。經(jīng)過(guò)殘差塊后,特征圖的寬度/高度恒定不變,最后經(jīng)過(guò)卷積層與歸一化層輸出生成的法向信息圖。
(3)針對(duì)判別器模型,本文借鑒PatchGAN[16],判別器D的輸入為生成器G 生成的法向信息圖與真實(shí)的法向信息圖。經(jīng)過(guò)多個(gè)卷積層提取輸入特征后,最終輸出16 組數(shù)值范圍在[0,1]之間的評(píng)測(cè)值,求均值后得到該圖為真實(shí)法向信息圖的概率。
Fig.1 Network structure圖1 網(wǎng)絡(luò)結(jié)構(gòu)
生成器模型的損失函數(shù)LG由兩部分組成,分別是對(duì)抗損失Lgen與法向量的余弦相似度損失Lnormal,如式(5)所示。其中λ1=1,λ2=0.01。
其中,Ni,j表示點(diǎn)(i,j)處的真實(shí)法向信息,如果真實(shí)的法向信息與預(yù)測(cè)的法向信息相差很小,則Ni,j與點(diǎn)乘值接近于1,Lnormal值會(huì)很小,反之亦然。本文對(duì)于生成器對(duì)抗損失定義如下:
其中,x~pg表示輸入數(shù)據(jù)x符合pg分布,N~pr表示真實(shí)法向信息N符合pr分布。
實(shí)驗(yàn)中,UPS-MRGAN 是在Pytroch的框架中實(shí)現(xiàn)的。在網(wǎng)絡(luò)訓(xùn)練過(guò)程中,所有批處理歸一化與Leaky ReLU 操作都使用共享的超參數(shù),設(shè)置批歸一化衰減率為0.9,以及Leaky ReLU 中的α為0.02。本文采用兩個(gè)階段進(jìn)行訓(xùn)練,在第一階段單獨(dú)訓(xùn)練MUPS,使用Adam 優(yōu)化器進(jìn)行優(yōu)化(β1=0.9,β2=0.99),設(shè)置初始學(xué)習(xí)率為10-5。MUPS 訓(xùn)練10 個(gè)批次后,被訓(xùn)練成可通過(guò)任意數(shù)量的輸入圖像得到粗粒度的法向信息圖。在第二階段,將MUPS 網(wǎng)絡(luò)與微調(diào)模塊作為生成器,同時(shí)訓(xùn)練生成器與判別器。生成器參數(shù)與第一階段中的參數(shù)相同,共進(jìn)行20 次迭代,在每一次迭代中對(duì)生成器與判別器網(wǎng)絡(luò)交替進(jìn)行優(yōu)化。
UPS-MRGAN 模型具體訓(xùn)練方法如下:
網(wǎng)絡(luò)的數(shù)據(jù)集由Chen 等[6]提供,其中訓(xùn)練集和驗(yàn)證集包括合成數(shù)據(jù)集Blobby 與Sculptrue,而測(cè)試集采用DiLigent 數(shù)據(jù)集[19],其常被作為公共標(biāo)準(zhǔn)數(shù)據(jù)集使用。Blobby、Sculpture 共包含112 212 個(gè)樣本數(shù)據(jù),其中每個(gè)樣本又包含64 張大小為128×128的光度圖像及對(duì)應(yīng)法向信息。DiLigent 數(shù)據(jù)集中包括多種非朗伯體,每個(gè)物體包括96 張光度圖像與真實(shí)的法向信息。
將合成的兩個(gè)數(shù)據(jù)集按照9∶1的比例分成訓(xùn)練集與驗(yàn)證集,為進(jìn)一步提高網(wǎng)絡(luò)擬合性能,在訓(xùn)練過(guò)程中進(jìn)行實(shí)時(shí)的數(shù)據(jù)增強(qiáng):隨機(jī)將圖像寬/高比縮放到[32,128]范圍內(nèi),之后隨機(jī)裁剪成大小為32 × 32的圖像塊進(jìn)行訓(xùn)練。最后,本文以32 張圖像作為一個(gè)批次進(jìn)行訓(xùn)練與測(cè)試。
本文對(duì)于光度立體視覺(jué)技術(shù)生成的法向信息圖采用的評(píng)價(jià)標(biāo)準(zhǔn)是平均角度誤差(Mean Angular Error,MAE)與均方誤差MSE。為驗(yàn)證本文算法的有效性及公平性,在DiLigent 數(shù)據(jù)集上與傳統(tǒng)的未標(biāo)定算法WT13[20]、LC18[13]、PF14[21]以及基于深度學(xué)習(xí)的UPS-FCN[6]進(jìn)行比較,結(jié)果如圖2 所示,其中本文方法為紅線部分。
由圖2 可知,本文算法的綜合MAE 達(dá)到最低,比UPSFCN 降低了1.92%。本文算法處理的pot2、buddah、reading、cow 以及harvest 數(shù)據(jù)相比其他算法獲得了更好的效果,而ball、cat、pot1、bear 以 及goblet數(shù)據(jù)得到的MAE結(jié)果都比UPS-FCN低1%~2%。同時(shí),本文算法在處理局部細(xì)節(jié)比較光滑的非朗伯體pot2 時(shí)結(jié)果比之前的最優(yōu)算法還低2%。本文算法優(yōu)于UPS-FCN的原因在于:①多尺度聚合能更好地使多張圖像的局部特征與全局特征融合;②微調(diào)模塊通過(guò)殘差網(wǎng)絡(luò)可在生成的法向信息圖基礎(chǔ)上進(jìn)一步改善生成細(xì)節(jié);③生成對(duì)抗網(wǎng)絡(luò)相較于卷積神經(jīng)網(wǎng)絡(luò),在生成類任務(wù)上,其對(duì)抗損失有助于在訓(xùn)練網(wǎng)絡(luò)時(shí)跳出局部最優(yōu)解,從而實(shí)現(xiàn)新的最優(yōu)解。
Fig.2 Comparison of MAE values of each method圖2 各算法平均角度誤差值比較
同時(shí)為進(jìn)一步評(píng)估真實(shí)法向信息與估計(jì)法向信息之間的差異,同樣在DiLigent 數(shù)據(jù)集上測(cè)算各種方法的MSE誤差,如表1 所示。通過(guò)比較發(fā)現(xiàn),本文算法在多個(gè)非朗伯體上的MSE 最小。相較于UPS-FCN 算法,MSE 下降了1.43%,其中pot2、buddah、goblet、reading、cow 以及harvest 都比最優(yōu)算法下降了多個(gè)百分點(diǎn),雖然在ball、cat、pot1、bear數(shù)據(jù)上沒(méi)有達(dá)到最佳效果,但重建的法向信息誤差也優(yōu)于其他算法。通過(guò)兩個(gè)定量實(shí)驗(yàn)數(shù)據(jù)對(duì)比可以發(fā)現(xiàn),本文算法在非朗伯體材料的未標(biāo)定光度立體視覺(jué)研究中取得了不錯(cuò)的效果。
最后,將本文算法與UPS-FCN 進(jìn)行定性分析,結(jié)果如圖3 所示。其中,GT Normal 列代表真實(shí)的法向信息,2、3 列分別為UPS-FCN 生成法向圖與真實(shí)法向圖之間的誤差圖,4、5 列為本文算法得到的法向圖及其誤差圖。其中,低誤差表現(xiàn)為藍(lán)色,高誤差表現(xiàn)為紅色。定性與定量分析結(jié)果表明,本文算法使得未標(biāo)定的光度立體求法向圖的效果得到進(jìn)一步改善。
Table 1 MSE error comparison of various methods on DiLigent dataset表1 在DiLigent 數(shù)據(jù)集上各種方法的MSE 誤差比較
Fig.3 Comparison of error visualization of the proposed algorithm and UPS-FCN algorithm圖3 本文算法與UPS-FCN 算法誤差可視化比較
為驗(yàn)證損失函數(shù)與網(wǎng)格結(jié)構(gòu)的有效性,本文將UPSMRGAN 與其消融版本進(jìn)行比較:
(1)w/o Res:代表移除微調(diào)模塊。殘差結(jié)構(gòu)的移除將網(wǎng)絡(luò)重新蛻變成單階段的網(wǎng)絡(luò),相應(yīng)損失函數(shù)Lnormal的結(jié)構(gòu)也發(fā)生了變化。
(2)w/o MS:代表移除多尺度聚合。將結(jié)構(gòu)中的跳躍連接移除,退化成簡(jiǎn)單的卷積神經(jīng)網(wǎng)絡(luò)。
(3)w/oLD:代表移除判別器,不采用生成對(duì)抗模式進(jìn)行訓(xùn)練。
(4)w/oLnormal:代表移除余弦相似度損失函數(shù)。移除后,兩階段訓(xùn)練也變成了單階段訓(xùn)練,生成器的損失函數(shù)僅為對(duì)抗損失。
本章對(duì)上述模型進(jìn)行訓(xùn)練,最后針對(duì)DiLigent 數(shù)據(jù)集進(jìn)行定量與定性分析。消融實(shí)驗(yàn)的定量實(shí)驗(yàn)結(jié)果如表2 所示。
Table 2 MAE value of ablation test results表2 消融實(shí)驗(yàn)結(jié)果的MAE 值
選取兩個(gè)單獨(dú)對(duì)象與整個(gè)數(shù)據(jù)集綜合的MAE 值,定性結(jié)果選取其中一個(gè)對(duì)象,消融實(shí)驗(yàn)對(duì)比結(jié)果如圖4 所示,其中上部分為生成的法向圖,下部分為與真值(Groundtruth)進(jìn)行比較的誤差圖。實(shí)驗(yàn)結(jié)果表明,完整的網(wǎng)絡(luò)模型可獲得最佳性能。如圖4(a)所示,當(dāng)移除了微調(diào)模塊,法向信息圖的狹縫區(qū)域會(huì)產(chǎn)生偽影,表明微調(diào)模塊通過(guò)殘差塊從細(xì)節(jié)中微調(diào)了法向信息,使得結(jié)果更為精確。
Fig.4 Comparison results of ablation experiments圖4 消融實(shí)驗(yàn)對(duì)比結(jié)果
為進(jìn)一步驗(yàn)證其作用,本文重新訓(xùn)練了一個(gè)網(wǎng)絡(luò)UPSFCN+Res,將本文訓(xùn)練的微調(diào)模塊添加到UPS-FCN 網(wǎng)絡(luò)中,如表3 所示。通過(guò)對(duì)比發(fā)現(xiàn),微調(diào)模塊同樣可提高UPS-FCN 網(wǎng)絡(luò)估計(jì)法向信息的精度值。當(dāng)缺少對(duì)抗訓(xùn)練時(shí),生成器由于尚未完全收斂,通常會(huì)產(chǎn)生一些較大的細(xì)節(jié)錯(cuò)誤,這是因?yàn)閷?duì)抗訓(xùn)練可加快生成器的收斂速度,使得模型性能更優(yōu)。當(dāng)缺少了多尺度融合時(shí),相較于完整模型,MAE 值上升了1%,而且在處理具有明顯凹陷區(qū)域的harvest 時(shí)效果最差,這是由于局部特征無(wú)法更全面地學(xué)習(xí)到法向信息。
Table 3 Impact of Res module on the network表3 Res 模塊對(duì)網(wǎng)絡(luò)的影響
同時(shí),本文的全損失函數(shù)也達(dá)到了最佳性能。如圖4(d)與表2 所示,Lnormal可保持像素級(jí)別差異的最小化,缺省后物體的法向信息會(huì)產(chǎn)生較為模糊的效果。
光度立體技術(shù)對(duì)于恢復(fù)非朗伯空間形狀具有重要意義。本文基于生成對(duì)抗網(wǎng)絡(luò)進(jìn)行模型搭建,通過(guò)MUPS 網(wǎng)絡(luò)、微調(diào)模塊及生成對(duì)抗模塊進(jìn)行訓(xùn)練。實(shí)驗(yàn)結(jié)果證明,該方法可實(shí)現(xiàn)更高精度的法向信息圖,在處理局部細(xì)節(jié)比較光滑的非朗伯體上也展現(xiàn)出良好的訓(xùn)練效果。但是,本文是從圖像中直接提取特征學(xué)習(xí)法向信息圖的映射,而忽略了光源信息的重要性。因此,下一階段的工作是通過(guò)圖像學(xué)習(xí)到光源信息的映射后,再學(xué)習(xí)其與法向信息圖之間的映射。此外,未來(lái)還將充分考慮處理多種混合材質(zhì)的問(wèn)題,以進(jìn)一步提升光度立體算法的泛化性能。