學習筆記:pbrt中的光子映射I

光子映射是粒子追蹤算法的一種,基本思想是用光子來表征從光源傳遞到渲染的點的能量,在這一過程中腺占,傳遞的能量不通過光線的輻照度來體現(xiàn)琉朽,而是通過光子的數(shù)目和光子的作用范圍來體現(xiàn)毒租,可以說這種方法是從光的粒子性來考慮的。在介紹光子映射及其改進前箱叁,首先介紹粒子追蹤算法墅垮。

粒子追蹤算法是分析光線傳播問題的一種直觀方法,不過要利用該算法解決一些具體問題耕漱,就還需要對算法進行更深入的建模和分析算色。書中給出的建模方法是將場景中光照分布的采樣用各處光子的歷史累積數(shù)量和權重來表征。當每個光子從光源發(fā)出后孤个,一旦與某表面相交后剃允,就將由交點位置、入射方向和采樣數(shù)據(jù)構成的光子信息存儲到歷史數(shù)據(jù)中齐鲤。其中的采樣數(shù)據(jù)將包含路徑吞吐量函數(shù)和采樣時的概率密度信息斥废。實際上采樣數(shù)據(jù)就對應光線傳輸方程中的入射輻照度乘以一個余弦值再除以概率密度部分。此外给郊,各個光子還額外包含一個權重信息牡肉。權重信息是入射點和光線方向的函數(shù)。如果權重信息都取1淆九,那么所有光子的采樣均值就等于該處的光通量统锤。產(chǎn)生這些光子的方式可以使用不同的策略,不過總體而言都是從光源出發(fā)經(jīng)過若干次反射后到達某點炭庙。每次光子所經(jīng)歷的路徑長度可以不同饲窿。使用這些光子的一個優(yōu)勢在于,每次它們的采樣值不變焕蹄,只是根據(jù)需要修改權重信息逾雄,這樣就可以降低運算量。

下面介紹光子映射。首先考慮最簡單的計算表面一點的出射輻照度的方程鸦泳。方程中的入射輻照度是關于反射點和入射方向的函數(shù)银锻,把它等效為在反射點周圍一個表面上的若干delta分布的輻照度以各自的輻照度對反射點作用的和。此時做鹰,按粒子追蹤的思路击纬,權重可以取為delta函數(shù)和BSDF函數(shù)的乘積。由于權重中含有delta函數(shù)钾麸,因而采樣得到的光子能對應到非零權重的概率為0更振。解決這一問題的方式也正是光子映射引入偏差的原因。解決該問題時喂走,將delta函數(shù)轉變?yōu)橐粋€濾波函數(shù)殃饿,這個濾波函數(shù)效果是,某處的光子越多芋肠,它的權重越大乎芳,所產(chǎn)生的輻照度就越大。除了提高效率的優(yōu)點外帖池,還可以使用到某點附近的光子奈惑。當使用增量式的路徑跟蹤方法時,有些路徑很難被采樣到睡汹,但是通過利用某點附近的光子肴甸,就可以引入這些難被采樣到的路徑的作用。實現(xiàn)上述的濾波函數(shù)時囚巴,首先要選擇一個核函數(shù)原在,該核函數(shù)在負無窮到正無窮范圍內(nèi)積分值為1,且在0處取值最大彤叉,在0兩側對稱分布庶柿。當然該核函數(shù)可以僅在有限區(qū)間中取非0值,例如書中所采用的Epanechnikov核函數(shù)秽浇。使用核函數(shù)時浮庐,跟每個光子所在的位置進行平移,并按某寬度進行縮放柬焕。然后對所有光子處理后的核函數(shù)進行歸一化處理审残。縮放所使用的寬度斑举,通過采樣該點處第N近的距離得到搅轿,并且為幾維變量,距離就取幾次方富玷。

光子映射算法的使用包括兩個階段璧坟,第一個階段是計算并存儲從光源發(fā)射到表面得到的光子采樣數(shù)據(jù)没宾,一般采用kd樹的形式來提高存儲和讀取的速度。第二個階段是基于由相機發(fā)出光線到達的表面交點處附近的光子數(shù)據(jù)沸柔,計算要輸出的輻照度值。對于這種算法铲敛,需要提前計算并存儲場景中的全部光子褐澎,因而所能使用的光子數(shù)量將受限于存儲空間。因而渲染圖像的經(jīng)度就受到限制伐蒋,無法通過多花時間來提高渲染精度工三。

?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市先鱼,隨后出現(xiàn)的幾起案子俭正,更是在濱河造成了極大的恐慌,老刑警劉巖焙畔,帶你破解...
    沈念sama閱讀 222,252評論 6 516
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件掸读,死亡現(xiàn)場離奇詭異,居然都是意外死亡宏多,警方通過查閱死者的電腦和手機儿惫,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,886評論 3 399
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來伸但,“玉大人肾请,你說我怎么就攤上這事「郑” “怎么了铛铁?”我有些...
    開封第一講書人閱讀 168,814評論 0 361
  • 文/不壞的土叔 我叫張陵,是天一觀的道長却妨。 經(jīng)常有香客問我饵逐,道長,這世上最難降的妖魔是什么管呵? 我笑而不...
    開封第一講書人閱讀 59,869評論 1 299
  • 正文 為了忘掉前任梳毙,我火速辦了婚禮,結果婚禮上捐下,老公的妹妹穿的比我還像新娘账锹。我一直安慰自己,他們只是感情好坷襟,可當我...
    茶點故事閱讀 68,888評論 6 398
  • 文/花漫 我一把揭開白布奸柬。 她就那樣靜靜地躺著,像睡著了一般婴程。 火紅的嫁衣襯著肌膚如雪廓奕。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,475評論 1 312
  • 那天,我揣著相機與錄音桌粉,去河邊找鬼蒸绩。 笑死,一個胖子當著我的面吹牛铃肯,可吹牛的內(nèi)容都是我干的患亿。 我是一名探鬼主播,決...
    沈念sama閱讀 41,010評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼押逼,長吁一口氣:“原來是場噩夢啊……” “哼步藕!你這毒婦竟也來了?” 一聲冷哼從身側響起挑格,我...
    開封第一講書人閱讀 39,924評論 0 277
  • 序言:老撾萬榮一對情侶失蹤咙冗,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后漂彤,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體雾消,經(jīng)...
    沈念sama閱讀 46,469評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,552評論 3 342
  • 正文 我和宋清朗相戀三年显歧,在試婚紗的時候發(fā)現(xiàn)自己被綠了仪或。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,680評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡士骤,死狀恐怖范删,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情拷肌,我是刑警寧澤到旦,帶...
    沈念sama閱讀 36,362評論 5 351
  • 正文 年R本政府宣布,位于F島的核電站巨缘,受9級特大地震影響添忘,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜若锁,卻給世界環(huán)境...
    茶點故事閱讀 42,037評論 3 335
  • 文/蒙蒙 一搁骑、第九天 我趴在偏房一處隱蔽的房頂上張望巫糙。 院中可真熱鬧抄伍,春花似錦割去、人聲如沸故慈。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,519評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽桅锄。三九已至乐疆,卻和暖如春洋只,著一層夾襖步出監(jiān)牢的瞬間辆沦,已是汗流浹背昼捍。 一陣腳步聲響...
    開封第一講書人閱讀 33,621評論 1 274
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留肢扯,地道東北人妒茬。 一個月前我還...
    沈念sama閱讀 49,099評論 3 378
  • 正文 我出身青樓,卻偏偏與公主長得像蔚晨,于是被迫代替她去往敵國和親郊闯。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 45,691評論 2 361

推薦閱讀更多精彩內(nèi)容