4.6 随机追踪
正如我們在上面看到的,自適應超采樣最終仍然會在一個規則網格上發出射線,盡管這個網格在某些地方比在其他地方更加細分。因此,我們仍然可以得到不規則的邊緣,鋸齒,以及其他的混疊問題,盡管它們通常會有所減少。讓我們擺脫固定網格,繼續說。每個像素最初將被固定數量的9條射線采樣。不同之處在于我們將這些射線均勻地分布在像素上。圖20(a)顯示了一個像素,它的9條光線或多或少是隨機向下的,只是它們覆蓋的像素相當均勻。
如果每個像素都被不同模式的9條射線所覆蓋,那么我們就成功地消除了任何規則網格。圖20(b)顯示了一小塊像素,每個像素由9條射線采樣,每條射線都由一個點表示。現在我們已經擺脫了常規的采樣網格,我們也擺脫了網格給我們的常規的別名。因為我們隨機地(或隨機地)將射線分布到我們想要采樣的空間中,這種技術被稱為隨機射線追蹤。我們使用的特定分布很重要,所以有時這種技術被稱為分布式射線追蹤。
讓我們考慮前面章節中描述的射線追蹤算法的另一個問題。考慮一種入射射線,它可以將光線從凹凸不平的表面帶走。我們將在后面的考慮漫反射的課程中看到,有許多入射的光線會把它們的能量從表面沿著入射射線的方向傳送出去。沒有“正確的”光線,他們都有貢獻。有人可能會問,應該遵循哪一種入射射線?隨機射線追蹤提供的答案是,沒有單一的最佳入射光方向。相反,選擇一個隨機的射線方向。下次你擊中一個表面并需要產生新的射線時,選擇一個新的隨機方向。關鍵在于,你可以將隨機數的選擇,以一種你可以發送大量光線的方式,在可能有大量的光線到達的方向,以及相對較少的光線在射入光線稀疏的方向。
我們可以用數學方法把這個問題描述為一個積分問題,我們想要找到到達給定點的總光。但是因為我們不能直接解積分方程,所以我們隨機抽樣寄希望于在足夠的隨機抽樣后得到我們想要的答案。事實上,我們的隨機選擇可以被仔細地引導以幫助我們用少量的樣本獲得一個好的答案。
隨機射線跟蹤技術導致了各種新的效果,而上面描述的確定性射線跟蹤算法不能很好地處理這些效果。例如,隨機射線追蹤幫助我們獲得運動模糊、景深和陰影上的軟邊(稱為半陰影區域)。
但是,盡管隨機射線追蹤解決了常規射線追蹤的許多問題,但我們發現了一些新的東西:噪音。由于我們用這種技術得到了更好的平均值,每個像素都差不多是正確的,但通常不是很正確。這個錯誤與我們討論過的許多其他混疊問題的規則網格無關,而是像壞電視信號中的靜態圖一樣在圖像上擴散開來。結果表明,人類的視覺系統對這種隨機噪聲的理解要比一般的混疊問題要大得多,因此隨機射線追蹤是解決問題的一個很好的解決方案。
但是我們仍然在每一個像素上使用這些射線,即使我們不需要它們。有時我們確實需要它們:考慮一個像素點,它在拼布床單(一種格子床單)上,類比一個像素點只能看到一個紅方塊。那么僅僅一兩束射線就能給出這個像素的正確顏色。另一方面,考慮一個像素點,可以看到它有16個不同顏色的方塊。我們至少需要16條射線,才能得到每種顏色中的一種。從上面的討論中我們不清楚我們什么時候需要更多的樣本,也不知道如何去獲取它們。
轉載于:https://www.cnblogs.com/TooYoungTsukasa/p/9187011.html
總結
- 上一篇: windows7下GithubDeskt
- 下一篇: 第一启动u盘启动不了怎么回事啊 U盘启动