苗 騰,許童羽※,鄧寒冰,周云成,徐 靜,于 越
(1. 沈陽農業大學信息與電氣工程學院,沈陽 110866;2. 遼寧省農業信息化工程技術研究中心,沈陽 110866)
近幾年,隨著都市型現代農業的飛速發展,以計算機圖形圖像、三維動畫以及游戲為主要技術展示形式,以生命、生態、生產為主體文化內涵的農林題材三維可視化虛擬媒體內容在農業科學研究、技術推廣宣傳、科普文化教育、園區休閑服務等領域得到廣泛應用。植物是農林題材三維可視化媒體中最重要的載體,而對植物表觀的設計和重現則是重中之重。
植物器官多屬半透明材質,近十多年,圍繞半透明材質可視化的研究取得了長足進步,尤其是在表觀模擬[1-5]、測量[6-8]、復雜光環境下的實時編輯[9-11]等方面研究成果頗豐。在數字植物及計算機領域,部分學者專門圍繞植物表觀材質建模與可視化模擬開展了具有針對性的研究工作,從表觀模型參數的類型角度區分,可將當前方法簡單地分為基于生理模型和基于物理模型兩類?;谏砟P偷姆椒╗12-16]多構建植物表觀材質與內在生理指標或外部環境間的數學模型,驅動葉片顏色的可視化模擬,該類方法在表觀可視化效果、模型效率等方面表現較差,因此很難應用于實際三維數字媒體內容的制作中?;谖锢砟P偷姆椒ㄍㄟ^抽象葉片結構,簡化葉片與光的作用方式,并構建物理模型來進行表觀顏色的模擬[17-24],這類方法可以從視覺上獲得較真實的模擬結果,也是工業生產中主流的植物表觀設計和模擬技術。該類技術需要高質量植物器官表觀紋理資源作為數據支撐(如漫反射紋理、透射紋理、法向量貼圖等),用以描述植物的光學材質屬性。
目前,對于植物表觀紋理資源的制作仍多采用人工編輯。計算機美術設計人員利用PhotoShop 等軟件以單張植物器官圖像為依據,手工繪制出空間變化的漫反射、透射、高光、粗糙度等表觀模型參數,并結合法向量貼圖來增加植物表面的細節,整個過程耗費專業人員大量的時間和精力,降低了農業題材三維數字資源的制作效率。
針對上述問題,本文研發單圖像的植物器官表觀紋理生成系統,利用單張植物器官圖像生成空間變化的漫反射強度、透射強度、高光強度、粗糙度、法向量貼圖、環境遮蔽6 種表觀紋理,以期提高植物器官表觀紋理的制作效率,為農林題材的三維可視化虛擬媒體研發提供資源制作工具。
作物器官表觀反映其與光的作用方式,如圖1 所示,入射光L 射到表面p 點之后,部分光線會直接在p 點處反射形成高光反射(未進入葉片內部,在葉片表面即被反射出的光線);剩余部分則折射進入器官內部,在組織之間形成多次散射和吸收,一部分在p 點周圍區域以漫反射形式離開器官表面(漫反射在各方向具有均勻強度)。如果器官為半透明介質(如葉片),則會由部分光線在器官另一側以透射形式射出,對于植物器官,透射在各個方向也呈現均勻特征。

圖1 光與作物器官的作用方式示意圖 Fig.1 Interaction between light and plant organ
上述光學特性可通過數學模型進行描述,其中模型參數稱為表觀參數。描述物體表面光學特性的數學模型很多,但基本都涵蓋如下幾個表觀參數:描述漫反射特性的漫反射強度參數,描述高光反射的高光強度參數和粗糙度參數,描述透射特性的透射強度參數。表觀紋理是記錄物體表面各點表觀參數的圖像,對應上述表觀參數可分為漫反射強度紋理、高光強度紋理、粗糙度紋理以及透射強度紋理。同時,本文將描述物體表面凹凸細節的法向量貼圖和環境遮蔽貼圖也歸為表觀紋理。
假設植物器官紋理圖像的高光特征可忽略不計,圖像中的光照為白色,則植物器官的RGB 紋理圖像I 能夠分解為光照圖S 與漫反射強度圖D 的乘積。對于每個像素x 的任意顏色通道c,本征圖像分解可以用下式表示

式中x 表示二維紋理圖像中任意像素點;符號c(c∈(R,G,B))表示RGB 紋理圖像的單個顏色通道。
本文假設器官紋理具有簡單性和光滑性特征,即植物器官表面不會出現五彩斑斕的多種顏色,且圖像的局部區域內,物體表面的光學特性相似?;谏鲜黾僭O,可將任一像素點xi的漫反射率表示為其鄰域點的漫反射率加權和

其中 N(xi)表示 xi的鄰域像素集合;ωij為權重系數(0.0<ωij<1.0),ωij=1/N,其中N 為鄰域N(xi)的像素個數,即每個鄰域像素的權重相同,稱為均值權重。
上述ωij計算簡單,速度快,但對于表面顏色較多的器官紋理,會造成不同顏色邊界處的漫反射過模糊,因此可采用文獻[25]的方法計算ωij

式(3)中的ωij可描述點xi的漫反射率Dc(xi)與xj點的漫反射率Dc(xj)之間的差異,差異越大,則ωij越小。? 為圖像I 的歸一化圖像,因此?(xi) 是I(xi)的歸一化向量;“·”為向量點積運算符,因此公式(2)中的 arcos(? (xi)·? (xj))為單位向量? (xi)與? (xj)間的角度,用該角度值表示圖像I 中像素xi和像素xj的顏色角度;δT(xi)表示像素xi與其鄰域內所有像素顏色角度的方差;將圖像I 從RGB顏色空間轉化至YUV 顏色空間,公式2 中Y 表示I 在YUV 空間中的Y 通道(亮度通道);δY(xi)表示表示像素xi與其鄰域內所有像素亮度強度的方差;從ωij的構成中可以看出,xi與xj兩者的顏色角度和亮度差異決定了ωij的大小,當2 個像素間的顏色和亮度比較大時,ωij值會較小。因此,式(2)表示的具體物理意義為,像素xi的漫反射率可由其鄰域內所有像素的漫反射率加權和表示,但是如果一個鄰域與xi的像素顏色和亮度差異大,說明兩者漫反射率的差異也大,那么求加權和時,該像素應該采用更小的加權系數,反之亦然。
基于上述分析,可以定義約束函數(4)來約束漫反射強度圖像

約束函數E(Dc,S)的第一項是對公式(2)的約束,其物理意義為:求出的漫反射圖Dc,它的每個像素都可通過鄰域像素加權和表示,即滿足公式(2);約束函數的第二項是對公式(1)的約束,它的物理意義為:求出的漫反射圖Dc和光照圖S 需要滿足公式(1),即兩者乘積要與原圖像Ic相等。求整個約束函數的最小值,希望求得的Dc和S 能盡可能地滿足上面兩個約束。采用傳統的梯度下降法對公式(4)進行求解,即可得到漫反射強度紋理D 以及光照圖S。梯度下降法為一個迭代的求解過程,因此學習率參數和迭代次數會對結果產生影響,本文將學習率設為0.9;迭代次數設為50。
權重系數ωij計算方法的選擇,以及鄰域N(xi)的大小會影響漫反射紋理和光照圖的分解結果。鄰域范圍越大,漫反射約束的局部區域越大,得到的漫反射紋理越平滑(對比圖2b、2c,圖2d、2e)。ωij采用式(3)計算時,得到的漫反射結果邊緣特征更加明顯,光照圖則更平滑(對比圖2b、2d,圖2c、2e),但是計算ωij時需要耗費一定時間。隨著圖像尺寸、鄰域N(xi)的增大,計算時間會呈幾何倍增加。ωij使用均值權重時,權重系數與圖像尺寸、鄰域大小無關,ωij對于每個像素都是固定值,但是相比采用(3)式,得到的漫反射紋理相對模糊,但光照圖邊緣特征更明顯(對比圖2b、2d,圖2c、2e)。對于表面反射率差異較小的物體,圖像像素的明暗差異主要由光照造成,因此使用均值權重時,可以在較小鄰域參數下得到與(3)式時較大鄰域參數下相似的結果,因此在對這類器官紋理處理時,使用均值權重更好。本系統默認情況下使用均值權重。

圖2 植物器官本征圖像分解結果 Fig.2 Intrinsic image decomposing result of plant organ images
植物葉片屬于半透明材質,當光線照射葉片一側表面時,會在另一側發生透射現象,因此對植物葉片的表觀模擬需要透射紋理。本文基于PROSPECT 模型推導出一個簡單的經驗公式,可根據植物葉片的漫反射紋理自動生成透射紋理。PROSPECT 模型[26]是一種常用的葉片尺度輻射傳輸模型,可以根據葉綠素、胡蘿卜素等生理參數生成反射率和透射率光譜。由于本文主要關注可見光區域的光譜,因此在模型推導時未考慮模型中對可見光波段影響較小的干物質含量和水分含量參數。將葉綠素參數在0 至60 區間內均勻采樣50 個數值,胡蘿卜參數從0 至20 均勻采樣50 個數值,結構參數從1.4 至2.5均勻采樣50 個數值,并分別計算在3 個不同參數值下的反射率和透射率光譜,共計12 500 個漫反射率和12 500個透射率光譜數據。由于表觀紋理為RGB 顏色空間的數字圖像,因此需將光譜數據轉為RGB 空間的顏色數據,本文采用的轉換過程如下:
首先在D65 照明光源和2o視場條件下將反射率和透射率光譜轉為CIE1931-XYZ 系統的顏色三刺激值X、Y、Z,計算公式如下

式中,λ表示具體的光譜波段數,nm。λ在400nm至700nm波段間,按5nm間隔進行采樣,即λ的取值范圍設定在400到730之間可被5 整除的所有整數;Δλ為λ的采樣間隔,因此在本文中取5;S(λ)表示 CIE D65 標準照明光源在λ波段上的相對光譜功率分布;為λ波段的CIE1931 標準色度觀察者光譜三刺激值;S(λ)、在不同波段λ下的數值由國際照明委員會(CIE)測量和制定,可在CIE15-2004標準[27]中查得;χ(λ)為需要進行轉化的光譜數據,在本文中為PROSPECT 模型計算得到的反射率光譜和透射率光譜。之后將X、Y、Z 進行歸一化,再轉化為RGB顏色空間的?顏色,過程如下

根據公式(5)和公式(6)可以將PROSPECT 模型計算得到的漫反射率和透射率光譜數據轉換為RGB 空間的顏色向量。之后利用加權最小二乘回歸擬合RGB 空間的漫反射顏色與透射率顏色的數學關系。T 表示透射紋理,構建統計學模型計算T 在像素x 處的各顏色通道強度為


其中TR、TG、TB分別表示透射紋理T 的R、G、B 分量,DR、Dg為漫反射紋理D 的R、G 分量。
圖3 為利用公式(7)生成的透射紋理和三維可視化結果,從圖3a、3b 的對比中可以看出,漫反射的不同會使透射紋理產生差異,透射三維可視化結果也會不同(如圖3c、3d),但從視覺上都能較真實地模擬葉片的透射(如圖3e)。雖然紋理中背景區域被轉化為偏黃色,但是在紋理映射時,可避免將黃色背景映射到三維模型上,因此不會影響三維可視化結果。
高光參數紋理主要包括高光強度紋理和粗糙度紋理,兩者描述了葉片反射的方向特征,理論上不能通過單張圖像自動計算出高光參數,因此本文側重于研發一種加快制作高光和粗糙度紋理的技術手段。

圖3 葉片透射紋理 Fig.3 Leaf transmission texture
在實際的動畫制作中發現,美術工作者習慣于根據器官圖像中結構的相似性刻畫高光細節,因此本文假設同種材質的器官表面結構高光特征相似,而同類材質的漫反射系數差異較小,基于上述假設,開發了一個簡易的交互接口,用戶可以在紋理圖像中選擇若干樣本像素點,并為每個樣本點賦予高光強度參數ρs和粗糙度參數α,系統根據非樣本點與樣本點之間的漫反射距離,自動計算兩個高光參數。采用文獻[28]的方法進行計算,假設用戶選擇了M 個材質樣本點,其中第i 個樣本點的漫反射率、高光強度和粗糙度參數分別用符號表示,任意非樣本點像素x 的漫反射率、高光強度參數和粗糙度參數分別用符號ρd(x)、ρs(x)和α(x)表示,則x 的高光參數ρs(x)和α(x)可利用下式進行計算


式中Bi(x)表示非樣本點像素x 屬于第i 類材質樣本的概率。
高光強度紋理和粗糙度紋理主要受樣本點的選擇影響。輸入的樣本點高光強度和粗糙度參數不同,則兩個紋理的結果會完全不同。用戶選擇樣本點的個數會影響2張紋理的空間差異程度,樣本點越多,紋理空間差異性越大,得到的結果會更精細。
圖4 為通過交互生成的葉片高光強度紋理和粗糙度紋理,其中4a 和4b 由25 個樣本點插值得到,4c 和4d由7 個樣本點插值得到。
法向量貼圖可以通過光照計算模擬出物體表面的凸凹幾何細節,是一種增強表面真實感模擬效果的高效手段,也是植物真實感可視化中常用的表觀紋理。本文利用本征分解時得到的光照圖S 生成植物器官的法向量貼圖。首先采用陰影恢復形狀技術(shape from shading),從光照圖中計算得到植物器官表面的高度圖H(H 為單通道灰度圖),之后通過高度圖H 生成法向量貼圖Q。陰影恢復形狀方法種類繁多,本文選擇線性近似法[29]進行高度圖恢復,其優勢在于計 算速度快,符合本文加速紋理制作工序效率的目標。

圖4 葉片高光表觀紋理 Fig.4 Leaf specular reflectance appearance texture
本文將物體表面的法向量分布看作低頻總體表面幾何結構和局部高頻細節幾何結構的融合,因此最終的法向量貼圖L 是低頻法向量貼圖Q1與高頻法向量貼圖Q2的加權和。其中Q2可直接通過高度圖H 計算得到,H 在像素x(u,v)處的灰度值表示為h(u,v),Q、Q1、Q2在像素x(u,v)處的像素為三維法向量,分別用符號(u,v)、表示。坐標(u,v)處的高頻法向量可直接基于高度圖H 利用式(9)計算得到


最終法向量貼圖Q 在坐標(u,v)處的值為

式中μ 為用戶輸入參數。上式中0.5 倍的縮放以及(0.5, 0.5, 0.5)大小的偏移,是為了將法向量每個維度均歸一化至0.0 到1.0 之間,方便存儲成RGB 圖像。
從式(11)可以看出,最終的法向量貼圖由一張高頻貼圖和低頻貼圖通過線性插值合成,其中系數μ 由用戶輸入。該值越大,低頻法向量貼圖占的比例越大,因此描述的表面細節越平滑;該值越小,高頻法向量貼圖占的比例越大,描述的表面局部細節凹凸程度越大。圖5 給出了以圖 2d 中光照圖為輸入,不同μ 參數下的法向量貼圖結果。

圖5 不同輸入參數μ 下的葉片法向量貼圖 Fig.5 Leaf normal maps with different input parameter μ
在三維可視化渲染中,美工經常用環境遮蔽圖(Ambient Occlusion Map, AOM)模擬環境光造成的物體邊角局部陰影,以增加繪制物體的層次感。觀察到,在光照圖中,物體凹凸較明顯的區域會形成陰影,這些區域可以作為環境遮蔽陰影。因此,本系統直接通過倍增操作將光照圖S 轉換為環境遮蔽圖A

其中m(m>1.0)為倍增系數,為用戶輸入參數。經過線性變換之后,再對A 進行高斯模糊得到環境遮蔽圖,當前,設定高斯模板大小為5×5,高斯半徑設為1.1。
本文生成的環境遮蔽圖比較簡單,只是對光照圖進行倍增,倍增系數m 越大,AO 圖的整體亮度越高,出現的過飽和像素越多。圖6 給出了以圖2d 中光照圖為輸入,不同m 值下的環境遮蔽效果圖。
為了便于用戶評價表觀紋理的制作質量,系統提供了表觀紋理實時可視化模擬模塊,為用戶提供所見即所得的三維可視化結果,用戶對上述任意表觀紋理的更新,均會實時地在三維可視化結果中得到體現。系統中使用各向同性的ward 模型作為光學模型進行可視化計算,該模型公式如下


圖6 不同倍增系數m 值下的葉片環境遮蔽圖 Fig.6 Ambient occlusion maps of leaf with different scale coefficient m

其中Li(θi)為θi方向光的輻射亮度(RGB 三通道),τ為p 點處法向量n 與光源方向之間的夾角,A(p)為p點處的遮蔽陰影系數,該值從環境遮蔽圖中索引得到。max 函數表示返回輸入參數的最大值。圖7 為不同光源方向下(不同τ 值)的黃瓜葉片可視化效果,使用的漫反射紋理為圖2d,透射紋理為圖3b,高光強度紋理為4a,粗糙度紋理為4b,法向量貼圖為圖5c,環境遮蔽圖為6b。

圖7 不同光源方向(τ 值)下的葉片表觀可視化效果 Fig.7 Appearance visualization effects of leaf under different light source directions (with different τ values)
算法在配置為3.0GHZ CPU、DDR8G 內存的PC 機上進行了測試。本文系統在處理一張512×512 分辨率的植物器官圖像時,利用式(3)權重進行漫反射紋理和光照圖分解時運行時間小于5 s,使用均值權重時運行時間小于1.5 s,透射紋理生成過程小于0.4 s,法向量貼圖重建時間小于0.8s,通過高光參數樣本點生成高光強度紋理和粗糙度紋理時間小于0.9s,AO 圖生成時間小于0.3 s,整個系統在各階段的快速計算可以為用戶提供及時的處理反饋。圖8 為植物花瓣的表觀紋理生成結果。圖9為香蕉果實的表觀紋理生成結果,由于香蕉果實不透光,因此不需要生成透射紋理。從可視化結果中可以看出,本文系統生成的表觀紋理可以較好地對植物器官的表面凹凸細節、具有空間差異性的反射和透射特征進行刻畫。
目前,在實際動畫產品制作工作中,美工也會使用商業軟件制作表觀紋理,其中較典型的軟件為CrazyBump,該軟件也可通過單張圖像生成多種類型紋理,本研究從3 個方面將本文系統與該軟件進行對比:
1)表觀紋理類型
本系統能夠生成6 種表觀紋理,CrazyBump 軟件可生成5 種,其中漫反射紋理、法向量貼圖、高光紋理和環境遮蔽紋理,兩個系統均可制作。除此之外,本文系統還可以生成粗糙度紋理和透射紋理,后者更是植物三維可視化中非常常用的表觀素材。但本文系統不具備CrazyBump 的位移貼圖生成功能。
2)交互操作模式
2 個系統均通過單張圖像生成多個表觀紋理,并在軟件中為用戶提供了可調節的參數。CrazyBump 為用戶提供的調節參數有30 多個,提高了紋理編輯的靈活性,但也增加了操作的難度;而本系統則更側重用戶操作的自動化和簡潔化,因此將用戶調節的參數壓縮到3 個,但是也可以得到樣式豐富的表觀紋理。
3)計算效率
2 個系統的紋理生成速度均非常快,方便用戶調節紋理樣式。CrazyBump 能夠對用戶參數的調節進行實時響應;本系統只有在進行漫反射紋理和光照圖分解時的響應時間稍長,但在其他紋理制作時,也可以對參數調節進行實時響應。生成6 類512×512 分辨率的表觀紋理時,系統對單個表觀紋理的平均計算時間在0.8 s 到1.5 s 之間,生成6 種表觀紋理的總時間小于8 s。

圖8 本文系統生成的作物花瓣表觀紋理和可視化效果 Fig.8 Appearance textures and 3D visualization results of the plant flower generated by the proposed method

圖9 本文系統生成的香蕉果實表觀紋理和可視化效果 Fig.9 Appearance textures and 3D visualization results of banana fruit generated by the proposed method
本文研發了一種基于單圖像的作物器官表觀生成系統,該系統僅需調節3 個參數即可生成6 種不同樣式的表觀紋理,包括漫反射強度紋理、高光反射強度紋理、粗糙度紋理、法向量貼圖、透射強度紋理和環境遮蔽紋理,這些紋理可直接應用于三維可視化算法中。系統在處理512×512 分辨率的器官圖像時,生成6 種表觀紋理的總時間小于8 s。相比當前常用的商用紋理制作軟件,本文系統能夠生成的表觀紋理樣式更加全面和符合數字植物的制作需求,同時操作更加自動化、便捷化,可以實現對作物器官表觀紋理資源的快速、準確設計與制作,為農業題材的三維數字資源開發提供技術工具。