• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于RBF神經(jīng)網(wǎng)絡(luò)的全局光照實(shí)時(shí)繪制

      2021-11-17 12:38:06劉曉蕓姚承宗曾曉勤
      計(jì)算機(jī)仿真 2021年9期
      關(guān)鍵詞:權(quán)值全局光線

      劉曉蕓,姚承宗,曾曉勤

      (河海大學(xué)計(jì)算機(jī)與信息學(xué)院,江蘇 南京 211100)

      1 引言

      在真實(shí)感圖形繪制中,全局光照能夠?yàn)閳鼍疤峁└鼮樨S富的光影效果,通過計(jì)算光線的多次反射、折射能夠產(chǎn)生更為逼真的光影細(xì)節(jié)。早期實(shí)現(xiàn)全局光照繪制的算法主要有光線跟蹤[1]、輻射度[2]、光子映射[2]等。這些基于間接光照的算法,需計(jì)算光線在物體之間的多次反射、折射,與光源特性、場景中物體的物體特性以及物體的相對空間位置等有關(guān),因而計(jì)算量巨大。

      隨著可編程GPU出現(xiàn),涌現(xiàn)出一些使用GPU對全局光照進(jìn)行加速的算法。如周昆[1]等提出了在CUDA上構(gòu)建KD樹的新算法,核心是對KD樹中的大結(jié)點(diǎn)和小結(jié)點(diǎn)分別處理,該方法能夠充分利用GPU的并行計(jì)算能力,明顯提高渲染速度。但大結(jié)點(diǎn)分割質(zhì)量比較低,而且排序過程的計(jì)算量比較大。Wang等人[5]提出一種基于GPU的分割數(shù)據(jù)采樣和插值的全局光照方法,該方法通過自適應(yīng)的K值聚類,將場景分割成條理分明的簇,對每一個(gè)簇使用基于GPU的光子圖法來計(jì)算其輻照度,最終將每一個(gè)光子圖切片整合。由于分割只進(jìn)行了極有限次數(shù)的采樣,該方法會(huì)丟失一些幾何特征,并且在實(shí)現(xiàn)上受限于現(xiàn)存的時(shí)序算法。

      為了提高渲染速度,有一些通過犧牲渲染精度為代價(jià)的方法被提出,如Keller[6]提出將來自一個(gè)反射面的反射光線擬合成一組虛擬點(diǎn)光源來簡化計(jì)算,但這一方法忽視了折射和反射的細(xì)節(jié)。Dachsbacher[7]通過機(jī)器學(xué)習(xí)的方法,根據(jù)不同的能見度對場景進(jìn)行分層,對能見度較高的層,用精度較高全局光照模型進(jìn)行計(jì)算,對于能見度較低的層,則使用精度較低的模型進(jìn)行計(jì)算。采用該方法渲染的場景部分區(qū)域較為精細(xì),而其它部分較為粗糙。Kaplanyan[8]通過三維場景中的光能傳播來擬合間接光照值,然而其只能擬合漫反射表面的間接光照。

      還有一些方法通過預(yù)計(jì)算的方法來實(shí)現(xiàn)全局光照的實(shí)時(shí)繪制。如Sloan[9]提出的預(yù)計(jì)算輻射亮度傳輸(precomputed radiance transfer PRT),在靜態(tài)場景中將物體表面的低頻光照包括全局光照產(chǎn)生的陰影以及物體相互之間的反射關(guān)系等轉(zhuǎn)化成輻射度傳輸,從而計(jì)算靜態(tài)環(huán)境對于各個(gè)方向光源的反射數(shù)據(jù)等,在進(jìn)行渲染時(shí)調(diào)用這些計(jì)算結(jié)果,可以實(shí)現(xiàn)動(dòng)態(tài)低頻光照的全局光照效果。由于動(dòng)態(tài)的光源和高頻發(fā)光之間的相互反射,繪制動(dòng)態(tài)場景的效果不理想。Ren等人[10]則構(gòu)建了一個(gè)多層前饋神經(jīng)網(wǎng)絡(luò)作為光照回歸函數(shù)(radiance regression function RRF)來擬合間接光照值,通過預(yù)先渲染好的場景作為導(dǎo)師數(shù)據(jù)對網(wǎng)絡(luò)進(jìn)行訓(xùn)練,使用訓(xùn)練好的網(wǎng)絡(luò)擬合間接光照值,能實(shí)現(xiàn)場景的實(shí)時(shí)渲染,然而其網(wǎng)絡(luò)過于復(fù)雜,冗余數(shù)據(jù)較多,收斂較慢,并且無法實(shí)現(xiàn)動(dòng)態(tài)場景的擬合。

      徑向基函數(shù)(Radial Basis Function, RBF)神經(jīng)網(wǎng)絡(luò)[11]能夠逼近任意的非線性函數(shù),可以處理難以解析表示的映射,具有良好的泛化能力和較快的學(xué)習(xí)收斂速度,已成功應(yīng)用于非線性函數(shù)逼近、時(shí)間序列分析、數(shù)據(jù)分類、模式識別、信息處理、圖像處理、系統(tǒng)建模、控制和故障診斷等方面。RBF網(wǎng)絡(luò)是一個(gè)局部逼近網(wǎng)絡(luò),也就是對輸入空間的某個(gè)局部區(qū)域只有少數(shù)幾個(gè)連接權(quán)值影響輸出,因此它較每一個(gè)權(quán)值都要調(diào)整的全局逼近網(wǎng)絡(luò)具有更快的收斂速度。

      本文將回歸分析方法引入全局光照的渲染過程之中,使用RBF神經(jīng)網(wǎng)絡(luò)構(gòu)建學(xué)習(xí)模型,對通過蒙特卡洛光線跟蹤方法得到的光照樣本數(shù)據(jù)集進(jìn)行學(xué)習(xí),確定每個(gè)基函數(shù)單元的寬度、中心及隱含層與輸出層單元之間的權(quán)值矩陣,從而發(fā)掘出每個(gè)場景對象表面可見點(diǎn)的特征屬性之間的非線性關(guān)聯(lián)。實(shí)驗(yàn)表明,基于RBF神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)模型的全局光照技術(shù)可以很好地?cái)M合蒙特卡洛離線渲染的結(jié)果,用其構(gòu)建神經(jīng)網(wǎng)絡(luò)模型來擬合光照計(jì)算,可以避免傳統(tǒng)光線跟蹤過程中繁雜的光線求交計(jì)算,在確保渲染精度的同時(shí),提高了場景渲染的速度。

      2 光照方程

      針對點(diǎn)光源的靜態(tài)場景,由Peter[12]提出的光照方程,可以得到在視點(diǎn)Θ處觀察到場景中點(diǎn)x處的反射光照強(qiáng)度為

      (1)

      Lr(x→Θ)=Ldirect+Lindirect

      (2)

      其中Ψ為光源位置,Ωx為x點(diǎn)附近的球面,fr表示點(diǎn)x位置處的雙向反射分布函數(shù)(Bidirectional Reflectance Distribution Function, BRDF),Nx表示點(diǎn)x位置處的表面法向量,Li表示點(diǎn)x位置處來自方向i的入射光亮度。G(x,y)表示x與y的光線傳輸幾何關(guān)系,V(x,y)表示兩者的能見度關(guān)系。

      根據(jù)BRDF的定義,有

      (3)

      由于場景中物體表面都是固定的,可以看出,BRDF是一個(gè)與點(diǎn)x的位置、入射光線和視點(diǎn)位置有關(guān)的函數(shù),因而可以將其簡化為如下三元組

      fr(x,Ψ→Θ)=fr(f(x),Ψ,Θ)

      (4)

      式(2)中Ldirect表示直接光照值,Lindirect表示間接光照值。

      對于Ldirect部分,本文采用自適應(yīng)采樣的蒙特卡洛方法來進(jìn)行加速,Lindirect部分則通過RBF網(wǎng)絡(luò)進(jìn)行模擬。

      為了敘述方便,對公式進(jìn)行歸一化,用n表示x處的單位法向量,s表示光源方向單位向量,v表示視點(diǎn)方向單位向量,可以將Lindirect部分簡化為

      (5)

      3 RBF神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)模型

      3.1 構(gòu)建RBF神經(jīng)網(wǎng)絡(luò)

      本文對間接光照的解決方法是將其視為一個(gè)神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)問題來解決。

      根據(jù)式(5)可以定義一個(gè)與x,s,v,n,f有關(guān)的函數(shù)Lin用來擬合Lindirect

      Lindirect≈Lin(x,s,v,n,f)

      (6)

      對于確定的場景,Lin是一個(gè)固定的函數(shù),可以通過計(jì)算光線傳輸來得到任意視點(diǎn)、光源以及位置x處的Lin函數(shù)。如果采用傳統(tǒng)的光線跟蹤算法進(jìn)行計(jì)算,因涉及到光線多次求交的問題,算法復(fù)雜性很高。

      本文采用RBF神經(jīng)網(wǎng)絡(luò)方法,根據(jù)不同場景的特征值,擬合出一個(gè)該場景下計(jì)算間接光照值的函數(shù),避免了光線求交計(jì)算,實(shí)現(xiàn)靜態(tài)場景的實(shí)時(shí)渲染。

      根據(jù)式(6)可以構(gòu)建如圖1所示的RBF神經(jīng)網(wǎng)絡(luò),這是一個(gè)R12+nf到R3[r,g,b]的映射。

      圖1 RBF神經(jīng)網(wǎng)絡(luò)

      其中x=(a1,a2,a3),s=(a4,a5,a6),v=(a7,a8,a9),n=(a10,a11,a12),f=(a13,…,a12+nf),將訓(xùn)練網(wǎng)絡(luò)得到的擬合函數(shù)記為Lnet。通過擬合函數(shù)計(jì)算每個(gè)像素的間接光照值

      B=[r,g,b]=Lnet(x,s,v,n,f)

      (7)

      3.2 網(wǎng)絡(luò)參數(shù)初始化及訓(xùn)練

      采用監(jiān)督學(xué)習(xí)算法對網(wǎng)絡(luò)所有的參數(shù)(RBF的寬度、中心及隱含層到輸出層的權(quán)值矩陣)進(jìn)行訓(xùn)練。主要工作是對代價(jià)函數(shù)進(jìn)行梯度下降,然后修正每個(gè)參數(shù)。

      通過減聚類算法[13],將得到的聚類中心作為RBF的中心Φi(i=1…P)。采用減聚類算法原因在于在該算法中,數(shù)據(jù)集本身作為聚類中心的候選集。算法所涉及的計(jì)算量與數(shù)據(jù)點(diǎn)的數(shù)目之間呈現(xiàn)為簡單的線性關(guān)聯(lián),與維數(shù)無關(guān),可以有效減小網(wǎng)絡(luò)規(guī)模。具體過程如下

      針對ΩZ中的元素,根據(jù)減聚類的定義推導(dǎo)出其密度指標(biāo)計(jì)算式(8)

      (8)

      4) 對式(8)密度指標(biāo)迭代公式進(jìn)行修正,得到新的密度指標(biāo)迭代式(9),選取密度指標(biāo)最高的數(shù)據(jù)點(diǎn)作為新的聚類中心。

      (9)

      選取好聚類中心Φi(i=1…P)后,采用隨機(jī)分布,初始化隱含層到輸出層的權(quán)值wi。采用梯度下降法對網(wǎng)絡(luò)中的三種參數(shù)都進(jìn)行監(jiān)督訓(xùn)練優(yōu)化,代價(jià)函數(shù)的表現(xiàn)形式見式(10),表示網(wǎng)絡(luò)輸出和理想輸出的方差與輸入規(guī)模的比值。

      (10)

      4 渲染

      4.1 直接光照

      在合成一副圖像的時(shí)候,不同區(qū)域的灰度值變化不同,細(xì)節(jié)的豐富程度也不一樣。對于細(xì)節(jié)比較豐富的圖像區(qū)域,需要進(jìn)行較多次數(shù)的采樣,才能詳細(xì)的描述出該區(qū)域的細(xì)節(jié)特征。而針對細(xì)節(jié)比較少的圖像區(qū)域,進(jìn)行較少次數(shù)的采樣就能描述出該區(qū)域的細(xì)節(jié)特征。自適應(yīng)采樣算法[14]就是根據(jù)圖像當(dāng)前區(qū)域細(xì)節(jié)的豐富程度決定其采樣次數(shù)。

      具體實(shí)現(xiàn)時(shí),首先采用均勻分布的方式分布初始采樣點(diǎn)。

      然后,采用非局部均值方法去噪,在合成圖像的時(shí)候,生成兩個(gè)采樣點(diǎn)相同的緩沖區(qū)域A和B。

      假設(shè)在緩沖區(qū)A中有兩個(gè)相鄰像素點(diǎn)p和q,在對像素點(diǎn)p進(jìn)行去噪處理時(shí),首先計(jì)算在緩沖區(qū)A中以p為中心的區(qū)域和以q為中心的區(qū)域之間的加權(quán)歐氏距離,計(jì)算公式見式(11),其中,f為區(qū)域大小。

      (11)

      通過式(12)求出權(quán)值。

      (12)

      將求取的權(quán)值代入式(13)去計(jì)算B緩沖區(qū)的圖像。

      (13)

      同理,使用B緩沖區(qū)中得到的權(quán)值去計(jì)算A緩沖區(qū)中的圖像,這樣可以消除濾波系數(shù)和噪聲之間的相關(guān)性。最后利用兩幅圖像之間的差值來表示錯(cuò)誤率,其計(jì)算見式(14),其中N(p,f)表示這一區(qū)域的均值。

      (14)

      錯(cuò)誤率越高,表示這一區(qū)域的細(xì)節(jié)越豐富,根據(jù)錯(cuò)誤率來重新分配采樣點(diǎn)。

      如此反復(fù)迭代,完成采樣,之后用經(jīng)典的光線跟蹤算法完成直接光照部分的渲染。

      4.2 間接光照

      完成對RBF網(wǎng)絡(luò)的訓(xùn)練之后,便得到了擬合函數(shù)Lnet,可以用其對間接光照值進(jìn)行擬合,得到該場景中不同光源位置和視點(diǎn)位置情況下各點(diǎn)的顏色值。

      對于一組視點(diǎn)V和光源S,可以得到在該視點(diǎn)下需要渲染的場景點(diǎn)x,計(jì)算得到x處的法向量n和紋理映射f,從而對于任意需要渲染的像素點(diǎn),都有一組歸一化的輸入向量[x,s,v,n,f],通過擬合函數(shù)即可得到該像素點(diǎn)的R、G、B顏色分量,即間接光照值。

      將每個(gè)場景點(diǎn)的直接光照和間接光照進(jìn)行疊加,得到最終的渲染圖像。

      5 實(shí)驗(yàn)結(jié)果和分析

      通過使用Mitsuba進(jìn)行離線渲染,獲取訓(xùn)練數(shù)據(jù)。使用Matlab對神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練。再用訓(xùn)練好的網(wǎng)絡(luò)對輸入數(shù)據(jù)進(jìn)行擬合,得到輸出的圖像。實(shí)驗(yàn)平臺為: i5處理器、3.3GHz主頻、8G內(nèi)存、2G顯存。

      本文采用了隨機(jī)采樣和基于高斯分布的采樣兩種方式選取樣本點(diǎn),兩種采樣方式在神經(jīng)網(wǎng)絡(luò)的訓(xùn)練時(shí)間、收斂速度和渲染精度方面均無明顯差別。

      針對同一場景,由于同一面的單位法向量相同等原因,所以在最終獲取到的訓(xùn)練數(shù)據(jù)中,存在大量冗余數(shù)據(jù)。在訓(xùn)練前,先將這一部分冗余數(shù)據(jù)剔除。

      分別用BP網(wǎng)絡(luò)和RBF網(wǎng)絡(luò)進(jìn)行了求解,對于Smallpt場景,擬合的間接光照效果如圖2所示。

      圖2 間接光照擬合效果

      RBF網(wǎng)絡(luò)擬合的間接光照與直接光照疊加,得到最終渲染圖像,效果如圖3所示。

      圖3 離線渲染效果和本文方法效果

      在不同的視點(diǎn)位置下渲染結(jié)果如圖4所示。

      圖4 不同視點(diǎn)位置下的渲染效果

      圖5是 Sponza場景在不同規(guī)模訓(xùn)練數(shù)據(jù)下的渲染效果。

      圖5 Sponza場景不同規(guī)模訓(xùn)練數(shù)據(jù)下的渲染效果

      實(shí)驗(yàn)發(fā)現(xiàn),但當(dāng)訓(xùn)練數(shù)據(jù)達(dá)到一定規(guī)模時(shí),單次訓(xùn)練時(shí)間不斷增加,網(wǎng)絡(luò)收斂速度越來越慢,錯(cuò)誤率下降越來越慢。實(shí)驗(yàn)還發(fā)現(xiàn),最終的訓(xùn)練時(shí)間與場景大小和離線渲染的訓(xùn)練數(shù)據(jù)大小無關(guān),而與有效的向量數(shù)量有關(guān),以兩個(gè)不同大小的場景Smallpt和Sponza為例,兩者場景大小相差很大,離線渲染得到的訓(xùn)練數(shù)據(jù)量相差也很大,但是有效向量數(shù)量接近,因而其最終的訓(xùn)練消耗時(shí)間也類似。由于都是較小規(guī)模場景,在相同擬合誤差要求下,RBF相對BP網(wǎng)絡(luò)能更快收斂,其效果好于BP。具體比較見表1。

      6 結(jié)束語

      采用RBF神經(jīng)網(wǎng)絡(luò)擬合的方法來實(shí)現(xiàn)間接光照,可以避免在傳統(tǒng)的光照模型中光線多次求交的問題,實(shí)現(xiàn)全局光照的實(shí)時(shí)繪制。雖然由于RBF網(wǎng)絡(luò)本身的局限性,在對較為復(fù)雜的場景渲染時(shí),輸入空間增大,泛化能力下降,訓(xùn)練時(shí)間增加。但較之前使用BP網(wǎng)絡(luò)的擬合方法,不易陷入局部極值,有更快的收斂速度和更好的擬合效果。

      在后續(xù)工作中,考慮使用多個(gè)網(wǎng)絡(luò)并行對場景中不同的特征值進(jìn)行處理,以應(yīng)對更加復(fù)雜的場景和動(dòng)態(tài)場景。

      表1 不同場景比較

      猜你喜歡
      權(quán)值全局光線
      春日暖陽
      Cahn-Hilliard-Brinkman系統(tǒng)的全局吸引子
      一種融合時(shí)間權(quán)值和用戶行為序列的電影推薦模型
      量子Navier-Stokes方程弱解的全局存在性
      CONTENTS
      “你看不見我”
      中外文摘(2019年8期)2019-04-30 06:47:36
      落子山東,意在全局
      金橋(2018年4期)2018-09-26 02:24:54
      基于權(quán)值動(dòng)量的RBM加速學(xué)習(xí)算法研究
      淘氣的光線
      流動(dòng)的光線
      嫩江县| 襄樊市| 信丰县| 车险| 澳门| 卢湾区| 葫芦岛市| 普格县| 武邑县| 三明市| 昌邑市| 岚皋县| 韶关市| 桂平市| 饶平县| 北海市| 连州市| 遂溪县| 溆浦县| 临高县| 东光县| 馆陶县| 临海市| 湖南省| 双辽市| 泗水县| 安新县| 逊克县| 衡东县| 扎鲁特旗| 和林格尔县| 晴隆县| 榆林市| 比如县| 荔波县| 周至县| 南充市| 醴陵市| 鲜城| 青海省| 北碚区|