馮 偉 計忠平 付曉峰 魏明強 張玉偉
1(杭州電子科技大學圖形圖像研究所 浙江 杭州 310018) 2(南京航空航天大學 江蘇 南京 210016) 3(齊魯工業大學機械與汽車工程學院 山東 濟南 250353)
浮雕是一種在平面上進行雕刻的藝術品,它是一種介于2D和3D之間,雕刻與繪畫相結合的藝術作品,它結合透視與光線來表現三維空間,因其獨特的藝術表現形式,深受藝術家們的喜愛。此外,浮雕因其壓縮空間的特性,占用空間少,特別適合裝飾。廣泛應用在建筑、用具器物、錢幣、獎牌等物品上。
從空間的壓縮程度來看,浮雕又分為淺浮雕和高浮雕,淺浮雕相較于高浮雕來說,深度值壓縮較大,更接近于平面的繪畫形式,在日常生活中淺浮雕應用更為廣泛,傳統的淺浮雕作品需要藝術家們手工雕刻完成,制作流程復雜且耗費時間。如何在計算機中利用3D物體進行淺浮雕建模,受到了人們的廣泛關注。目前,很多3D物體由于自身頂點數限制,無法生成精致的淺浮雕模型,而如何提升低質量3D模型的細節,進而提升淺浮雕建模質量,越來越受到人們關注。
本文提出一種利用深度學習增強3D模型淺浮雕建模質量的方法,利用3D模型渲染出的高低分辨率法向圖作為訓練集,搭建一個基于法向圖的超分辨率卷積神經網絡,該網絡的輸入是低分辨率法向圖,輸出是高分辨率法向圖,實驗表明利用該方法能夠豐富低分辨率3D模型的細節特征,進而提升淺浮雕建模質量。
利用3D模型進行淺浮雕建模,一直是較受關注的話題,Cignoni等[1]利用3D模型的高度場,對高度場做非線性壓縮,開創了淺浮雕建模的先河。但是這種方法無法處理復雜模型中深度值不連續的問題。Weyrich等[2]直接處理高度場的梯度值,通過非線性改變梯度值來解決深度不連續的問題。Song等[3]利用縮放后的微分坐標,泊松重建淺浮雕。Kerber等[4-5]同樣針對3D模型的高度場做非線性縮放,利用雙邊濾波分離高頻與低頻信息,來保留細節信息。Sun等[6]利用不同鄰域大小的自適應直方圖均衡得到最終高度場,保留了淺浮雕中不同尺度的信息。Bian等[7]提出非線性壓縮梯度域,利用拉普拉斯銳化增強淺浮雕的幾何特征。最近,基于法向圖的淺浮雕建模方法,在保留細節和去除不連續性方面的表現,引起了很多關注。Ji等[8]首次使用3D物體渲染出的法向圖,由法向圖得到梯度域,泊松重建出淺浮雕高度場,這樣可以避免直接處理一些深度值不連續的高度圖。Wei等[9]在此基礎上,將輸入的法向圖分解為基礎層和細節層,以此來增強淺浮雕的幾何特征。Schüller等[10]在保證深度約束的前提下,通過逼近3D模型的法線生成全局最優曲面。
當3D模型本身頂點數較少時,這些方法因為頂點數目的限制,生成的淺浮雕模型,質量普遍不高。因此,為了提高低頂點數3D模型的細節特征,針對3D模型渲染出的法向圖,做超分辨率放大,提升細節,使淺浮雕模型更精致。目前在圖像的超分辨率重建方面,深度學習已經成為越來越重要的研究方法,它相較于傳統方法,速度更快,效果更好。SRCNN[11]作為超分辨率在深度學習方面的開山之作,低分辨率圖像經過雙三次插值達到高分辨率圖像尺寸后輸入網絡,經過簡單的三個卷積層,就取得了不錯的結果;FSRCNN[12]利用反卷積代替插值操作,將低分辨率圖像輸入網絡,通過上采樣擴大了圖像的尺寸;ESPCN[13]首次引入亞像素卷積層,僅對低分辨率圖像做卷積操作,對得到的多通道特征圖做周期篩選處理得到高分辨率圖像,大幅提高了計算效率。VDSR[14]首次將ResNet[15]即殘差網絡引入超分辨率網絡,不僅加深了網絡的層數,還解決了低分辨率與高分辨率圖片大量低頻信息相近影響訓練結果的問題。2017ntire超分辨率挑戰賽冠軍解決方案EDSR[16]創造性地去除了網絡中的BN層[17],節省了大量內存與計算資源,并加深加寬了網絡模型,得到了更好的結果。2018ntire超分辨率挑戰賽冠軍解決方案WDSR[18],認為超分辨率網絡中激活函數會阻止信息流的傳遞,因此WDSR[18]將激活函數之前的特征圖數目進行了擴展,降低基礎特征圖數目減少參數量,利用更少的參數得到更優的預測結果。這些都是針對普通圖像進行超分辨率放大的網絡模型,而針對法向圖這種含有3D模型空間信息的特殊圖片,還需要結合法向圖的特點對網絡進行修改,構建一個適用于法向圖超分辨率放大的網絡模型。
針對超分辨率重建法向圖的任務,本文收集并篩選了20種3D模型,以提高本文算法的通用性,其中:16種3D模型用于生成訓練集,4種3D模型用于生成測試集。同一模型的高度場,在不同視角下也大不相同。因此,針對每個模型,都選取相同的66個角度,每個模型每個角度都生成一對低分辨率與高分辨率法向圖。至此超分辨率模型的數據集構建完成。在超分辨率網絡的設計中,本文參考了WDSR[18]網絡,結合對法向圖做超分辨率放大的任務,對網絡做了加寬加深的處理,同時設計了一種針對法向圖的loss函數,利用GPU進行訓練,得到了較好的效果。進行實驗的配置為CPU:AMD R5 2600,GPU:GTX 1080,RAM:16 GB。
本文篩選了20種3D模型,如圖1所示,同一種模型在不同角度下生成的法向圖所含的三維信息也有很大不同,因此借助3D模型渲染法向圖的相關算法,針對每個模型的66個角度渲染出對應的低分辨率和高分辨率法向圖。生成了大約2 000幅法向圖,如圖2所示,其中:1 000幅為3D模型直接渲染出的1 024×1 024的高分辨率法向圖,而另外1 000幅是低頂點數的相同3D模型渲染出的256×256的低分辨率圖片。其中,80%用作訓練集,15%用作驗證集,5%用作測試集。借助超分辨率網絡對低分辨率法向圖做4倍放大,同時為了提高本文算法的通用性,訓練集和測試集中的法向圖來自于不同的3D模型。圖3展示了高低分辨率法向圖的細節對比。

圖1 超分辨率法向圖數據集生成過程

圖2 法向圖超分辨率重建數據集(只列出部分高分辨率法向圖)

(a) 高分辨率法向圖

(b) 低分辨率法向圖圖3 不同分辨率法向圖的細節對比
與傳統的圖像分類與分割任務相比,超分辨率重建任務是更加基礎的計算機視覺問題。網絡結構和參數的復雜程度對于超分辨率重建任務來說影響較大。為了能得到高質量的超分辨率重建圖像,本文在卷積神經網絡設計方面主要參考了EDSR[16]和WDSR[18]。EDSR[16]通過引入殘差網絡ResNet[15],大大增加了網絡的深度,避免了深層網絡出現梯度消失的問題。殘差網絡對于圖像分類或分割任務來說,效果提升較大,但不能直接套用在超分辨率重建這種低層次計算機視覺問題之上,因此EDSR[16]對殘差網絡做了修改,移除了網絡中的批規范層。批規范層主要應用在基于卷積神經網絡的圖像分類分割任務中,它可以加速網絡的收斂,還有一定正則化的效果,可以防止模型過擬合。但是在圖像超分辨率重建方面,表現并不是很好,它破壞了圖像原本的對比度信息,影響了網絡輸出圖片的質量。另外,批規范層的計算量與一個卷積層幾乎持平,通過去除批規范層,可以加寬網絡或堆疊更多的卷積層,增加網絡的參數量,從而在有限的計算資源下得到更好的性能表現。由于EDSR[16]網絡引入大量殘差塊,會導致訓練過程不穩定,所以采用了殘差縮放的方法,即在殘差塊相加之前,經過卷積處理的一路要先乘以一個小數,這樣可以避免由于殘差塊太多帶來的訓練不穩定的問題。
在EDSR[16]網絡結構基礎上,WDSR[18]認為ReLU激活函數會阻止信息流的傳遞,因此,WDSR[18]擴展了激活函數之前的特征圖數目,同時減少了基礎特征圖的數目來降低整體的網絡參數,顯著提高了網絡的性能。
與普通圖片的超分辨率重建任務有所不同,本文的法向圖是一種特殊的含有三維信息的二維圖像,法向圖的每一個像素點代表著3D模型中每個頂點的法向量。但是法向圖的像素取值范圍在0到1之間,而實際的法向量在-1到1間取值,因此在將法向圖輸入網絡之前還需要一步轉換操作:
N=2P-1
(1)
式中:P代表法向圖中的像素值;N代表實際的法向量。
對超分辨率重建網絡的輸出還要加入約束,即網絡預測出的法向圖,每個像素點位置處所代表的法向量要滿足長度為1這個基本條件。另外,本文引入了超分辨率任務中常用的指標峰值信噪比psnr對本文的實驗結果進行評價,psnr值一般在20 dB到40 dB之間,值越高說明超分辨率重建的圖像越接近原始圖像。
網絡的輸入是RGB三通道的256×256分辨率的低分辨率法向圖,ground truth即是對應的1 024×1 024分辨率的高分辨率法向圖。本文構建的超分辨率網絡可以做到對原始法向圖做4倍放大,即輸入一幅256分辨率的法向圖,網絡預測得到一幅1 024分辨率的法向圖。其中網絡具體的結構設計參考了WDSR[18]超分辨率網絡,如圖4所示,輸入網絡的圖像首先經過一個普通的卷積層,然后送入多個殘差塊組成的Redidual Block,其中,每個殘差塊內部由兩個卷積層和一個ReLU激活函數組成。殘差網絡輸出的特征圖與原始輸入的特征圖分別做卷積和上采樣處理,最后兩個分支融合得到網絡的輸出,即最終預測出的高分辨率法向圖。其中上采樣操作采用的是ESPCN[13]中的亞像素卷積層,其具體步驟為:將H×W×1的低分辨率特征圖通過普通卷積層生成H×W×r2的特征圖(H、W代表特征圖尺寸;r代表特征圖通道數,也表示超分辨率放大倍數),再通過周期篩選的方法得到rH×rW×1的高分辨率特征圖。圖像尺寸的放大函數被隱含在了普通卷積層中,在反向傳播時會自動學習到,這樣避免了對高分辨率特征圖做卷積的復雜性,提高了計算效率。

圖4 法向圖超分辨率網絡結構
為了防止網絡過擬合,本文還采用了數據增強的方法,對訓練集中的圖片進行隨機翻轉90度。在訓練中本文采用adam優化器,同時將weight decay設為0.000 1,它可以進一步減少網絡過擬合問題。初始學習率設為0.000 1,batchsize設為1。本文使用一個GTX 1080顯卡對網絡進行訓練,訓練迭代次數為300。
法向圖超分辨率網絡的損失函數為:
Loss=|Np-Ng|
(2)
式中:Np代表超分辨率網絡預測得到的并經過單位化處理后的法向圖;Ng代表3D模型渲染出來的并經過單位化處理后的法向圖。函數整體表示為Np與Ng所代表的所有法向量之間的L1損失。
我們對測試集中的低分辨率法向圖,分別利用EDSR[16]、WDSR[18]和雙三次上采樣方法(Bicubic)進行放大,實驗結果如圖5所示,其展示了四幅預測集圖片利用不同方法放大之后的細節對比,發現基于深度學習的超分辨率放大結果要顯著優于雙三次上采樣這類傳統算法。利用psnr值作為法向圖重建質量的評估標準,對三種算法處理后的圖像與ground truth之間求峰值信噪比psnr,并進行比較,結果如表1所示,利用超分辨率網絡預測出的圖片質量較高,達到了我們的預期結果,其中WDSR[18]模型要優于EDSR[16]模型。

表1 高分辨率法向圖與ground truth之間的峰值信噪比 單位:dB
利用3D模型生成淺浮雕,當3D模型本身頂點數較少時,無法生成高質量的淺浮雕模型。本文提出一種提高3D模型淺浮雕建模質量的方法,通過對3D模型的法向圖做超分辨率放大,間接提升3D模型的細節特征,利用超分辨率網絡放大之后的法向圖生成淺浮雕模型,提高淺浮雕建模質量。為了驗證本文算法的有效性,我們設計了兩個實驗流程,流程一是由低頂點數的3D模型直接渲染生成1 024×1 024分辨率的法向圖,流程二是由相同的低頂點數的3D模型首先渲染出256×256分辨率的法向圖,利用WDSR[18]超分辨率網絡對其進行超分辨率放大,得到1 024×1 024分辨率的法向圖。實驗結果如圖6所示,圖6(a)為流程一最終生成的法向圖,圖6(b)為流程二最終生成的法向圖。對其細節進行放大比較,發現右側圖片的細節明顯優于左側圖片。由此得出結論,本文算法在3D模型本身頂點數較少的情況下,可以生成細節更豐富的法向圖。

(a) (b)圖6 不同算法流程生成的法向圖細節對比
同時我們利用法向圖借助Ji等[8]的算法進行淺浮雕建模,結果如圖7所示,分別對圖6中兩個流程最終生成的法向圖進行淺浮雕建模,圖7(a)為沒有經過本文算法增強的法向圖生成的淺浮雕模型,圖7(b)為經過本文算法增強的法向圖生成的淺浮雕模型。可以看出圖7(b)的淺浮雕模型細節更豐富,說明本文算法可以有效提升低分辨率3D模型的淺浮雕建模質量。
本文提出一種增強3D模型淺浮雕建模質量的方法,當3D模型本身頂點數較低,無法生成高質量淺浮雕時,本文利用3D模型渲染出的法向圖,對法向圖進行超分辨率放大,間接提升3D模型的細節,進而提升淺浮雕建模質量。實驗結果表明,本文算法顯著提升了低分辨率3D模型的細節特征,進而提高了淺浮雕建模質量。
本文僅針對低頂點數的3D模型提升3D模型的淺浮雕建模質量,有一定的局限性,需要設計一個更為通用的算法;本文算法數據集需要進一步擴大,挑選更多類別的3D模型,構建相應的3D場景及淺浮雕模型,提高算法的適用性。