本站小編為你精心準(zhǔn)備了視點(diǎn)重要度驅(qū)動(dòng)的光子追蹤參考范文,愿這些范文能點(diǎn)燃您思維的火花,激發(fā)您的寫作靈感。歡迎深入閱讀并收藏。
《計(jì)算機(jī)輔助設(shè)計(jì)與圖形學(xué)學(xué)報(bào)》2015年第十二期
影視制作、游戲設(shè)計(jì)等領(lǐng)域常常采用全局光照效果來增強(qiáng)畫面的真實(shí)感,目前常用的全局光照方法有蒙特卡洛光線追蹤法、光子映射法等.其中,蒙特卡洛光線追蹤法對(duì)焦散效果繪制存在瓶頸,光子映射法能夠繪制包括焦散效果在內(nèi)的多種全局光照效果,但其繪制誤差的下降速度依賴于光子追蹤階段發(fā)射光子的分布.Smits等將視點(diǎn)重要度的概念引入了計(jì)算機(jī)圖形學(xué),視點(diǎn)重要度表征了場(chǎng)景某位置對(duì)成像貢獻(xiàn)的大小,向視點(diǎn)重要度高的區(qū)域發(fā)射更多光子有助于更快地降低繪制誤差.原始的光子映射方法需要存儲(chǔ)全部光子,最終繪制質(zhì)量受到物理內(nèi)存的限制.漸進(jìn)光子映射不要求存儲(chǔ)光子,并能通過多輪光子追蹤漸進(jìn)地減小偏差.但是,對(duì)于由隔壁光源照明的暗室或光源經(jīng)門縫提供光照的房間等困難光照?qǐng)鼍?以上方法的繪制效率普遍較低,其主要原因在于這些方法采用了隨機(jī)光子追蹤,難以找到能抵達(dá)視點(diǎn)重要區(qū)域的光子路徑,這些區(qū)域接收的光子偏少,導(dǎo)致繪制誤差下降慢.為了解決該問題,Chen等提出了基于初始光子密度的重要性函數(shù),但初始光子分布情況較差,無法反映場(chǎng)景的視點(diǎn)重要度;Hachisuka等提出了基于光子路徑可見性的重要性函數(shù),但亦未考慮場(chǎng)景的視點(diǎn)重要度.
針對(duì)上述問題,本文提出一種基于視點(diǎn)重要度的自適應(yīng)光子追蹤方法,首先構(gòu)造一種新的重要性函數(shù),該函數(shù)結(jié)合了視點(diǎn)重要度和光子路徑可見性;其次通過自適應(yīng)馬爾科夫鏈蒙特卡洛方法和分布交換技術(shù)來采樣該函數(shù),從而自適應(yīng)地生成能抵達(dá)高重要性可見區(qū)域的光子路徑;最后設(shè)計(jì)了一種新的采樣分布選擇策略,若目標(biāo)分布當(dāng)前路徑的重要度較高,則根據(jù)該路徑來生成新路徑,反之則通過均勻分布生成新路徑.實(shí)驗(yàn)結(jié)果表明,該方法能有效地提高困難光照?qǐng)鼍暗睦L制效率、加快繪制誤差的下降速度,同時(shí)也能健壯地繪制簡(jiǎn)單光照?qǐng)鼍?
1相關(guān)工作
真實(shí)感繪制方法通常可以歸結(jié)為求解繪制方程的問題,Kajiya提出了路徑追蹤方法,該方法被認(rèn)為是第一個(gè)蒙特卡洛光線追蹤方法.Veach等提出了雙向路徑追蹤方法,該方法同時(shí)追蹤光源子路徑和相機(jī)子路徑,有利于提高路徑空間的采樣效率.Veach等于1997年提出了Metropolis光傳輸算法,通過Metropolis采樣技術(shù)來對(duì)路徑空間進(jìn)行采樣.以上方法均屬于基于路徑空間采樣的蒙特卡洛光線追蹤方法,雖在理論上能繪制出無偏的結(jié)果,但這類方法難以采樣含鏡面反射或鏡面透射的路徑,因此無法健壯地繪制焦散效果.
Jensen提出的光子映射方法能夠健壯地繪制焦散,但其繪制質(zhì)量受限于內(nèi)存的容量大小,繪制的結(jié)果存在偏差.Hachisuka等針對(duì)該問題提出了漸進(jìn)光子映射,僅使用有限的內(nèi)存即可漸進(jìn)地繪制出正確結(jié)果;隨后,Hachisuka等又將其擴(kuò)展為隨機(jī)漸進(jìn)光子映射,用于繪制景深、運(yùn)動(dòng)模糊等效果.但是,上述3種方法在光子追蹤階段均采用隨機(jī)光子追蹤,當(dāng)光照條件較困難時(shí)光子難以抵達(dá)視點(diǎn)重要區(qū)域,故繪制效率將大幅下降,因此這類方法常常需要較多的光子以及較長的繪制時(shí)間才能將繪制誤差降至可接受的水平.針對(duì)困難光照?qǐng)鼍?Fan等設(shè)計(jì)了基于Metropolis采樣的光子追蹤方法,但該方法仍從路徑空間采樣光路來引導(dǎo)光子放置,難以繪制焦散效果.Chen等亦使用了Metropolis光子采樣,并根據(jù)初始光子密度來構(gòu)造重要性函數(shù).然而,在困難光照?qǐng)鼍爸写蟛糠謪^(qū)域的初始光子密度較低,該函數(shù)無法反映場(chǎng)景的視點(diǎn)重要度大小;此外,該方法含有多個(gè)與場(chǎng)景關(guān)聯(lián)的參數(shù),需作大量測(cè)試來尋找最佳參數(shù).Hachisuka等提出基于光子路徑可見性的重要性函數(shù),但其方法未考慮視點(diǎn)重要度,而且新路徑均由均勻分布產(chǎn)生,未能充分利用Metropolis采樣的局部探索能力.王元龍等提出使用虛擬小光線束分解來加快介質(zhì)單散射繪制的光子生成,但未考慮視點(diǎn)重要度.與以上工作不同,本文考慮了場(chǎng)景的視點(diǎn)重要度,并根據(jù)視點(diǎn)重要度和光子路徑可見性來構(gòu)造新的重要性函數(shù),然后使用自適應(yīng)馬爾科夫鏈蒙特卡洛方法和分布交換技術(shù)來采樣該函數(shù).
Peter等將光子映射擴(kuò)展為三階段方法,增加了重要度粒子追蹤階段,然后根據(jù)視點(diǎn)重要度來選擇光子發(fā)射方向.本文在隨機(jī)漸進(jìn)光子映射的兩階段框架中計(jì)算視點(diǎn)重要度,并將重要度粒子追蹤融合到視點(diǎn)光線追蹤過程中,從而避免引入額外的重要度粒子追蹤階段.視點(diǎn)重要度還有一些其他應(yīng)用,例如,Suykens等根據(jù)視點(diǎn)重要度來估算場(chǎng)景各位置所需的光子密度;文獻(xiàn)[16]利用了視點(diǎn)重要度來提高基于圖像的光照的光路采樣效率.Kitaoka等提出了基于分布交換的光傳輸方法,根據(jù)光線的類別來構(gòu)造對(duì)應(yīng)的采樣分布,然后通過在多個(gè)分布之間交換狀態(tài)來對(duì)路徑空間采樣.與之不同,本文僅執(zhí)行從均勻分布到目標(biāo)分布的單向交換,降低了分布交換的復(fù)雜性.此外,本文設(shè)計(jì)了一種新的采樣分布選擇策略,一方面充分利用已找到的路徑來生成新路徑,增強(qiáng)局部探索能力;另一方面,以一定的概率從均勻分布生成新路徑,避免陷入局部極值區(qū)域.
2本文方法概述
隨機(jī)漸進(jìn)光子映射方法分為2個(gè)階段:視點(diǎn)光線追蹤階段和光子追蹤階段.在視點(diǎn)光線追蹤階段,從視點(diǎn)發(fā)射光線并記錄交點(diǎn);在光子追蹤階段,從光源均勻隨機(jī)地發(fā)射光子,然后在視點(diǎn)光線交點(diǎn)處累積光子能量.本文擴(kuò)展了隨機(jī)漸進(jìn)光子映射方法,如圖1所示,在光子追蹤階段采用本文的自適應(yīng)光子追蹤方法.本文考慮了場(chǎng)景不同區(qū)域視點(diǎn)重要度的差異,并根據(jù)光子路徑可見性和視點(diǎn)重要度來構(gòu)造重要性函數(shù).在視點(diǎn)光線追蹤階段,首先計(jì)算場(chǎng)景的視點(diǎn)重要度,然后構(gòu)造視點(diǎn)重要度圖;在光子追蹤階段,結(jié)合自適應(yīng)馬爾科夫鏈蒙特卡洛方法和分布交換技術(shù)來采樣重要性函數(shù).自適應(yīng)馬爾科夫鏈蒙特卡洛方法能自動(dòng)尋找最優(yōu)變換參數(shù).分布交換技術(shù)確保了采樣狀態(tài)的遍歷性.本文使用均勻分布和目標(biāo)分布這2種采樣分布,并通過采樣分布選擇策略來決定生成新路徑的方式.自適應(yīng)光子追蹤方法的步驟。
3視點(diǎn)重要度圖的構(gòu)造
場(chǎng)景中視點(diǎn)重要度高的區(qū)域?qū)Τ上竦呢暙I(xiàn)較大,向這些區(qū)域發(fā)射更多光子有利于降低繪制誤差.Peter等[14]提出根據(jù)視點(diǎn)重要度來選取光子發(fā)射方向,該方法包含3個(gè)階段,即在光子映射的兩階段前增加重要度粒子追蹤階段,重要度粒子被稱為“重要子”.與該方法不同,本文沒有引入重要子追蹤階段,也不需構(gòu)造重要子,將視點(diǎn)重要度計(jì)算融合到視點(diǎn)光線追蹤階段,在追蹤視點(diǎn)光線的過程中完成視點(diǎn)重要度計(jì)算,并在光線交點(diǎn)中存儲(chǔ)視點(diǎn)重要度,避免了引入重要子追蹤階段的計(jì)算開銷和重要子的存儲(chǔ)開銷.本文采用與路徑追蹤類似的方法來計(jì)算式(1)的視點(diǎn)重要度.1)對(duì)傳感器上的每個(gè)像素生成視點(diǎn)光線并執(zhí)行追蹤,當(dāng)光線與場(chǎng)景表面相交時(shí)判斷交點(diǎn)的材質(zhì)類型.若為漫反射材質(zhì),則存儲(chǔ)光線交點(diǎn);若為其他材質(zhì),則以“俄羅斯輪盤”方式[18]決定是否存儲(chǔ)光線交點(diǎn).若未存儲(chǔ)交點(diǎn),則采樣一個(gè)新的方向,再沿該方向繼續(xù)追蹤光線并更新視點(diǎn)重要度值.當(dāng)視點(diǎn)重要度已減為0或光線的路徑長度已超過預(yù)設(shè)的最大值時(shí),結(jié)束對(duì)該光線的追蹤.本文構(gòu)造了KD樹結(jié)構(gòu)來存儲(chǔ)光線交點(diǎn)以加速交點(diǎn)查詢.2)遍歷光線交點(diǎn)并計(jì)算各交點(diǎn)所在位置的視點(diǎn)重要度,先搜索半徑為r范圍內(nèi)的光線交點(diǎn)。其中,N為光線交點(diǎn)數(shù)量,mi表示光線交點(diǎn)i存儲(chǔ)的視點(diǎn)重要度.3)根據(jù)場(chǎng)景各位置的視點(diǎn)重要度構(gòu)造視點(diǎn)重要度圖.為了壓縮局部極值,本文將各像素值的原取值范圍作了壓縮(本文取5%~85%),壓縮的上下限不宜偏離原范圍過多,否則會(huì)導(dǎo)致取值發(fā)生大幅改變;為了消除局部高頻噪聲,本文對(duì)視點(diǎn)重要度圖進(jìn)行了低通濾波.支撐大的濾波核影響的像素較多,會(huì)導(dǎo)致像素信息丟失,本文選用3×3的低通濾波核.根據(jù)以上方法生成第5.1節(jié)暗室場(chǎng)景的視點(diǎn)重要度圖如圖2所示.
4自適應(yīng)光子追蹤
構(gòu)造視點(diǎn)重要度圖之后,在追蹤光子時(shí)可快速獲取放置光子處的視點(diǎn)重要度.本文的重要性函數(shù)結(jié)合了視點(diǎn)重要度與光子路徑可見性.為了高效采樣該函數(shù),本文使用均勻分布來輔助目標(biāo)分布采樣,采樣生成的每個(gè)狀態(tài)對(duì)應(yīng)一條光子路徑.在目標(biāo)分布中,利用自適應(yīng)馬爾科夫鏈采樣方法通過對(duì)當(dāng)前路徑作變換來生成新路徑;在兩分布之間,根據(jù)采樣分布選擇策略決定是否從均勻分布生成新路徑.
4.1標(biāo)量貢獻(xiàn)函數(shù)本文設(shè)計(jì)了重要性函數(shù)I(u)=V(u)•M(u).V(u)表示光子路徑u是否可見,若u對(duì)任一視點(diǎn)光線交點(diǎn)有貢獻(xiàn),則認(rèn)為它是可見的,令V(u)=1;反之,V(u)=0.M(u)表示光子路徑u的視點(diǎn)重要度。
4.2采樣分布的選擇策略傳統(tǒng)的Metropolis采樣技術(shù),對(duì)多峰的概率密度函數(shù)的采樣效率低,生成的樣本往往聚集于局部峰值附近,需要進(jìn)行大量的變換操作才能生成服從目標(biāo)函數(shù)的樣本分布.重要性函數(shù)I(u)屬于多峰的概率密度函數(shù),因此Metropolis采樣難以高效地采樣該函數(shù).混合分布πH產(chǎn)生新狀態(tài)的方式有2種:方式1.通過均勻分布生成新狀態(tài),然后執(zhí)行分布交換,將該狀態(tài)作為目標(biāo)分布的新狀態(tài),考慮到均勻分布易于生成新狀態(tài),因此不必將均勻分布的新狀態(tài)替換為目標(biāo)分布的舊狀態(tài);方式2.在目標(biāo)分布中生成新狀態(tài).圖3的虛線箭頭表示方式1,空心箭頭表示將均勻分布的新狀態(tài)作為目標(biāo)分布的新狀態(tài),實(shí)線箭頭表示方式2.在每次生成新路徑前,首先計(jì)算執(zhí)行分布交換的概率p,并根據(jù)隨機(jī)數(shù)ζ來決定選用何種方式生成新路徑.若ζ<p,則選擇方式1;反之,選擇方式2.設(shè)當(dāng)前路徑u與其前一路徑的重要性函數(shù)值之比為r,概率p的計(jì)算分為4種情形。
4.3目標(biāo)分布新路徑的生成本文在目標(biāo)分布內(nèi)通過自適應(yīng)馬爾科夫鏈蒙特卡洛方法來采樣重要性函數(shù)I(u),該方法使得生成的光子路徑分布與I(u)成比例,從而引導(dǎo)更多光子到達(dá)對(duì)成像貢獻(xiàn)大的可見區(qū)域,加快這些區(qū)域的繪制誤差下降速度.若當(dāng)前光子路徑可見且能抵達(dá)視點(diǎn)重要度高的區(qū)域,則與其相似的光子路徑也可能抵達(dá)這些區(qū)域.根據(jù)當(dāng)前路徑生成相似路徑可通過Metropolis采樣對(duì)當(dāng)前路徑作變換來實(shí)現(xiàn),變換操作使用的變換參數(shù)對(duì)采樣效率具有顯著影響,若該參數(shù)選取不當(dāng),采樣效率將大幅降低.由于不存在對(duì)任意場(chǎng)景適用的最佳變換參數(shù),往往需要在一個(gè)區(qū)間進(jìn)行大量測(cè)試以找到最佳參數(shù).Chen等[4]采用了一種大幅度變換和小幅度變換相結(jié)合的方法,但選擇的變換參數(shù)只適用于部分場(chǎng)景.
5實(shí)驗(yàn)結(jié)果與分析
我們?cè)赑BRT渲染器①中實(shí)現(xiàn)了本文方法,并通過該渲染器來執(zhí)行實(shí)驗(yàn)中的對(duì)比方法.本文所有實(shí)驗(yàn)均在配置為Intel®Core™i5-24003.10GHzCPU,8GB內(nèi)存的環(huán)境下運(yùn)行.實(shí)驗(yàn)所用參數(shù)設(shè)置如下:繪制線程數(shù)為4,變換參數(shù)的初始值m0=2.0,β=0.7,隨機(jī)漸進(jìn)光子映射的參數(shù)α=0.7.視點(diǎn)重要度圖與繪制圖像的分辨率相同,歸一化因子D在前5輪光子追蹤過程中計(jì)算.
5.1暗室場(chǎng)景比較圖5所示為暗室場(chǎng)景,光源位于門外隔壁房間,光線經(jīng)門進(jìn)入暗室,該場(chǎng)景的視點(diǎn)重要度圖如圖2所示.繪制圖像的分辨率為460×320,每輪光子追蹤使用50000個(gè)光子.圖5a~5c所示為隨機(jī)光子追蹤、Hachisuka方法和本文方法經(jīng)過50輪光子追蹤后的繪制結(jié)果,圖5d~5f所示為800輪光子追蹤后的結(jié)果,可以看出,在視點(diǎn)重要度高的區(qū)域(紅色和藍(lán)色截窗),隨機(jī)光子追蹤繪制圖像的噪聲最嚴(yán)重,而本文方法繪制圖像的噪聲水平最低,細(xì)節(jié)更為清晰,說明本文方法的繪制誤差下降更快.圖6所示為上述3種方法經(jīng)過800輪光子追蹤后的光子密度分布的歸一化結(jié)果.可以看出,與其他兩種方法相比,本文方法提高了暗室內(nèi)的整體光子密度,在視點(diǎn)重要度高的區(qū)域(如墻和地板內(nèi)側(cè)),圖6c的光子密度更高.隨機(jī)光子追蹤方法的整體光子密度偏低;Hachisuka方法的整體光子密度較圖6a有所增加,但墻和地板內(nèi)側(cè)的光子密度仍較低.
5.2性能分析針對(duì)圖5的暗室場(chǎng)景,圖7對(duì)比了前述3種方法在相同光子追蹤輪數(shù)條件下繪制圖像的均方誤差(meansquareerror,MSE).可以看出,本文方法能快速降低MSE,其曲線下降最快,Hachisuka方法次之,而隨機(jī)光子追蹤方法下降最慢.對(duì)于同一光子追蹤輪數(shù),本文方法繪制圖像的MSE更小,即繪制圖像的噪聲更少.同時(shí)也表明,為將繪制誤差降至某一水平,本文方法所需的光子數(shù)更少.圖7暗室場(chǎng)景的MSE曲線
5.3其他場(chǎng)景的對(duì)比圖8所示為含有困難光照條件的Cornell場(chǎng)景,室內(nèi)照明由門縫外的光源提供.繪制圖像的分辨率為512×512,光子追蹤輪數(shù)為1500輪,每輪使用105個(gè)光子,MCRT(MonteCarloraytracing)的繪制時(shí)間采用其他3種方法消耗時(shí)間的最大值,參考圖片由原漸進(jìn)光子映射方法繪制24h產(chǎn)生.可以看出,在后墻以及離光源較遠(yuǎn)的區(qū)域(藍(lán)色和紅色截窗),與其他方法相比,由本文方法繪制圖像的噪聲水平最低,更接近參考圖片;在后墻區(qū)域,MCRT方法未能繪制出焦散弧線,這是因?yàn)樵摲椒o法采樣生成該焦散弧線的光路.圖9所示為光照條件簡(jiǎn)單的國際象棋場(chǎng)景,光源位于斜上方.繪制圖像的分辨率為512×512,每種方法的繪制時(shí)間均為20min,每輪光子追蹤使用8000個(gè)光子,參考圖片由漸進(jìn)光子映射方法繪制24h產(chǎn)生.可以看出,經(jīng)過相同時(shí)間后,圖9b~9d的結(jié)果相近,說明本文方法保持了原隨機(jī)漸進(jìn)光子映射繪制簡(jiǎn)單光照?qǐng)鼍暗慕研院透咝?此外,雖然本文方法執(zhí)行的光子追蹤輪數(shù)比隨機(jī)光子追蹤和Hachisuka方法少,但圖9d的MSE更小,這也表明本文方法能更快地降低噪聲;MCRT方法繪制的圖9a質(zhì)量最差,中央玻璃棋子的陰影和焦散區(qū)域存在顯著的噪聲.表1所示為針對(duì)暗室場(chǎng)景、Cornell場(chǎng)景、國際象棋場(chǎng)景,采用本文方法繪制60min后的變換參數(shù)和狀態(tài)接受率情況,變換參數(shù)初始值均為2.0.可以看出,狀態(tài)接受率均接近最優(yōu)接受率0.234.對(duì)于光照條件困難的暗室場(chǎng)景和Cornell場(chǎng)景,該方法能自適應(yīng)地減小變換參數(shù)以增強(qiáng)路徑采樣的局部性;而對(duì)于光照條件簡(jiǎn)單的國際象棋場(chǎng)景,該方法也能自適應(yīng)地增大變換參數(shù)以使路徑的變換幅度增大,避免采樣陷入局部極值區(qū)域.
6總結(jié)
本文提出一種基于視點(diǎn)重要度的自適應(yīng)光子追蹤方法,構(gòu)造了新的重要性函數(shù),并結(jié)合自適應(yīng)馬爾科夫鏈采樣方法和分布交換技術(shù)來生成光子路徑.該方法能引導(dǎo)更多光子到達(dá)對(duì)成像貢獻(xiàn)大的可見區(qū)域,能夠快速降低繪制誤差;設(shè)計(jì)了新的采樣分布選擇策略,在保持采樣遍歷性的前提下充分利用已找到的路徑來生成新路徑,具有較高的路徑采樣效率.本文方法是對(duì)隨機(jī)漸進(jìn)光子映射的擴(kuò)展,但亦可用于擴(kuò)展?jié)u進(jìn)光子映射和原始光子映射方法.本文實(shí)驗(yàn)采用CPU多線程并行執(zhí)行,后續(xù)將考慮進(jìn)一步提高計(jì)算效率.本文在視點(diǎn)光線追蹤階段僅執(zhí)行一次視點(diǎn)重要度圖構(gòu)造,下一步將考慮在每個(gè)視點(diǎn)光線追蹤階段均更新視點(diǎn)重要度圖..另外,我們還將考慮擴(kuò)展本文方法用于處理場(chǎng)景含有參與介質(zhì)的情況。
作者:鄭權(quán) 鄭昌文 單位:中國科學(xué)院軟件研究所天基綜合信息系統(tǒng)重點(diǎn)實(shí)驗(yàn)室 中國科學(xué)院大學(xué)