环境图的重要性抽样


14

在基于MIS的单向路径跟踪器和类似类型的渲染器中,对环境地图(EM)进行采样的最佳方法是目前已知的最佳方法,并且也是经过生产验证的理想方法?与那些以超复杂且难以理解的实现为代价提供完美采样的解决方案相比,我宁愿选择相对复杂且功能合理的解决方案。

到目前为止我所知道的

有一些简单的EM采样方法。可以以余弦加权的方式采样所需的半球,而忽略了BSDF和EM函数形状。结果,它不适用于动态EM:

在此处输入图片说明

为了将采样提高到可用水平,可以对整个球体上的EM亮度进行采样。它相对容易实现,并且效果很好。但是,采样策略仍然忽略了半球可见性信息和余弦因子(以及BSDF),从而导致表面上的高噪声,而这些噪声并未被EM的高强度区域直接照亮:

在此处输入图片说明

文件

我找到了一些有关该主题的论文,但尚未阅读。其中任何一个值得在前向单向路径跟踪器中阅读和实现,还是有更好的选择?

  • Agarwal等人(2003年)对环境图进行结构化重要性抽样

  • Kartic Subr和Jim Arvo撰写的Steerable Importance Sampling(2007)。他们声称提出了“ ...一种用于环境图的有效分层重要性抽样的算法,该算法在考虑到余弦加权的情况下,在由任意表面的局部方向定义的正半球中生成样本。“论文《重要采样球谐函数》对此发表了评论:“他们创建了环境图的三角表示,并在每个顶点处存储了照明度并乘以前九个球谐基函数中的每一个。这形成了一个可操纵的基础,在该基础上可以将夹紧的余弦有效地旋转到任何方向。”

  • Petrik Clarberg和TomasAkenine-Möller的直接照明实用产品重要性采样(2008)。一种对环境地图光照和表面反射率乘积进行采样的算法。使用基于小波的重要性抽样。

  • Jarosz,Carr和Jensenn撰写的《重要采样球形谐波》(2009年)。摘要说:“ ...我们提出了第一种实用的重要采样函数,表示为球谐(SH)...”

  • Feng et al。(2015)的基于色调映射的均值漂移环境地图采样。这是很新的东西,我既没有找到它的参考,也没有找到论文本身。


我有一个问题。是否仅通过对EM采样才能生成第二张图片?还是余弦采样和EM采样的MISed版本?我真的希望它是MISed版本,因为如果是这样,那么我可能会对阴影部分的高噪声有所补救。
汤姆

不,@ tom,它仅使用随机EM采样,同时忽略了(Lambert)BRDF和余弦因子。使用了64个样本,并且未应用图像空间滤波,仅对整个像素区域求平均。当应用MIS将EM采样与余弦采样结合起来时,阴影中的噪声会大大降低,但在阳光照射的部分会略微增加。
ivokabel '16

Answers:


6

这不是一个完整的答案,我只想分享我通过研究问题中提到的两篇论文获得的知识:用于直接照明的可操纵重要性抽样实用产品重要性抽样

可控重要性抽样

在本文中,他们提出了一种方法来采样被钳位的余弦分量和环境图照明的乘积:

LEM(ωi)(ωin)+

他们利用了以下事实:乘积函数的分段线性近似可以相对较好地表示,并且可以使用前九个球谐基数进行部分预先计算。他们将这种近似值建立在自适应三角剖分EM的基础上,并将其用作采样的重要函数。

它们预先计算并存储每个三角形顶点的近似系数,还为每个三角形存储用于计算三角形上近似积分的系数。这些系数称为顶点和三角形权重。然后,他们利用以下事实:仅通过对各个三角形权重求和而无需合并其他球谐基数,就可以轻松计算一组三角形上的积分系数。这使他们可以在三角形上建立平衡的二叉树,其中每个节点都包含用于计算节点子树三角形上的近似积分的系数。

采样过程包括选择一个三角形并对其面积进行采样:

  • 通过以与子积分近似成比例的概率从预构建的二叉树中向下选择一个三角形。这需要即时计算子积分,每个子积分都由钳位余弦球谐坐标的一个内积与预先计算的系数组成。 O(logN)
  • 然后,采用本文提出的一种新颖的分层采样策略,以时间以双线性方式对选定的三角形表面进行采样。O(1)

在我看来,这似乎是一种很有前途的技术,但论文的经典问题是它在现实生活中的表现。一方面,在某些病理情况下,很难用三角分段线性函数来近似估计EM,这可能导致大量三角形和/或不良样品质量。另一方面,它可以立即提供整个EM贡献的相对较好的近似值,这在对多个光源进行采样时很有用。

用于直接照明的实用产品重要性抽样

在本文中,他们提出了一种对环境地图照明和余弦加权表面反射率乘积进行采样的方法:

LEM(ωi)fr(ωi,ωo,n)(ωin)+

此方法中唯一的预处理是计算EM的层次表示形式(基于mipmap或基于小波)。其余的在采样过程中即时完成。

抽样程序:

  • 建立即时的BRDF近似值:他们首先绘制几个BRDF重要度样本,然后评估。他们根据这些值构建BRDF的基于四叉树的分段常数近似值,其中树的每一叶都恰好包含一个样本。fr(ωi,ωo,n)(ωin)+
  • 计算BRDF近似值与EM的乘积:在BRDF四叉树叶子上进行乘法,并将平均值传播到父级。
  • 产品采样:使用简单的样品翘曲将均匀的样品送入产品树。

该程序应以较重的预计算为代价生成相对较好的样本-它们表明,BRDF近似值大约需要100-200个BRDF样本才能获得最佳的采样性能。这可能使其适合于纯粹的直接照明计算,其中每个阴影点生成许多样本,但对于全局照明算法(例如,单向或双向路径跟踪器)而言,通常可能只生成少量样本,这可能过于昂贵每个阴影点。


4

免责声明:我不知道环境地图采样中的最新技术水平。实际上,我对此主题知之甚少。因此,这不是一个完整的答案,但我将通过数学公式来解决问题并进行分析。我主要是为我自己做这件事,因此我很清楚自己的意思,但我希望OP和其他人会发现它有用。


我们要计算一个点的直接照度,即我们想知道积分 的值 ,其中是BSDF函数(我明确声明依赖于法线,以后会),是环境图的辐射度,并且是余弦术语连同可见性(即什么),即如果

I=S2f(ωi,ωo,n)L(ωi)(ωin)+dωi
f(ωi,ωo,n)L(ωi)(ωin)++(ωin)+=0(ωin)<0

我们通过针对概率密度函数生成样本 来估计该积分,估计量为 Nωi1,,ωiNp(ωi)

I1Nk=1Nf(ωik,ωo,n)L(ωik)(ωikn)+p(ωik)

问题是:我们如何选择pdf,以便能够在可接受的时间内生成样本,并且上述估计量的方差很小。p


最好方法挑选正比于积 但大多数时候它是根据此pdf生成样本非常昂贵,因此在实践中没有用。p

p(ωi)f(ωi,ωo,n)L(ωi)(ωin)+

OP建议的方法:

方法一:选择正比于余弦项 方法二:选择正比于EM p

p(ωi)(ωin)+
p
p(ωi)L(ωi)

根据提到的论文的名称,我可以部分猜测它们的作用(不幸的是,我现在没有时间和精力来阅读它们)。但是在讨论他们最有可能做的事情之前,让我们先讨论一下幂级数:D


如果我们具有一个实数变量的函数,例如。然后,如果行为良好,则可以将其扩展为幂级数 其中是常数。这可以被用于近似通过在一些步骤截断总和 如果是足够高的,则误差是非常小的。f(x)

f(x)=k=0akxk
akfn
f(x)k=0nakxk
n

现在,如果我们在两个变量(例如具有函数,则只能在第一个参数进行扩展 其中 仅是中的函数。也可以在两个参数 中进行扩展, 其中是常量。因此,具有实参的函数可以扩展为该参幂的和。对于球体上定义的函数,可以执行类似的操作。f(x,y)

f(x,y)=k=0bk(y)xk
bk(y)y
f(x,y)=k,l=0cklxkyl
ckl

现在,让我们在球上定义一个函数,例如。这样的函数还可以类似于一个实参函数的方式扩展, 其中是常数,而是球形谐波。球谐函数通常由两个索引来索引,并在球坐标中作为函数编写,但这在这里并不重要。重要的是可以写成一些已知函数的和。f(ω)

f(ω)=k=0αkSk(ω)
αkSk(ω)f

现在,在球上需要两个点的函数,例如只能在其第一个参数中展开 或其两个参数 f(ω,ω)

f(ω,ω)=k=0βk(ω)Sk(ω)
f(ω,ω)=k,l=0γklSk(ω)Sl(ω)

那么,这一切有用吗?

我提出了 CMUNSM(疯狂的无用的无采样方法):假​​设我们对所有函数都有扩展,即 如果将其插入积分得到

f(ωi,ωo,n)=k,l,m=0αklmSk(ωi)Sl(ωo)Sm(n)L(ωi)=n=0βnSn(ω)(ωin)+=p,q=0γpqSp(ωi)Sq(n)
I=k,l,m,n,p,q=0αklmβnγpqSl(ωo)Sm(n)Sq(n)S2Sk(ωi)Sn(ω)Sp(ωi)dωi

实际上,我们不再需要蒙特卡洛,因为我们可以预先计算积分,然后求和(实际上近似于总和,我们只将前几项相加),便得到了理想的结果。S2Sk(ωi)Sn(ω)Sp(ωi)dωi

这一切都很好,但是我们可能不知道BSDF或环境图的扩展,或者这些扩展收敛得很慢,因此我们必须在总和中使用很多术语才能获得合理准确的答案。


因此,我们的想法不是扩大所有论点。一种可能值得研究的方法是忽略BSDF并仅扩展环境图,即 这将导致pdf: p ω ķ Σ Ñ = 0 β Ñ 小号Ñω ω &CenterDot;&Ñ +

L(ωi)n=0KβnSn(ωi)
p(ωi)n=0KβnSn(ωi)(ωn)+

我们已经知道如何针对此操作,这只是方法一。我的猜测是,它是针对较高的论文之一完成的。KK=0K


进一步扩展。您可以在不同的参数中扩展不同的函数,并执行与上述类似的操作。另一件事是,您可以在不同的基础上进行扩展,即,不使用球谐函数,而是使用不同的函数。

因此,这是我对主题的看法,希望您至少发现了一点点帮助,现在我可以上GoT睡觉了。


哈哈,当我发布答案时,SE询问我是人类还是机器人,该网站不确定:DI希望不是因为答案的篇幅,它有点失控。
汤姆(Tom)

你想让我的大脑融化,不是吗。;-)顺便说一句:我已经设法阅读了两篇论文/演讲,所以希望在本周末扩大问题或写一个肤浅的回答。现在,快来FTW!
ivokabel '16

0

尽管产品采样方法可以为射线提供更好的(完美的)分布,但我想说,使用MIS(多重重要性采样)是一种在生产中得到验证的方法。由于阴影信息是未知的,因此产品采样无论如何都不会变得完美,很难实施。拍摄更多的光线可能更有价值!当然要取决于您的情况和射线预算!

MIS的简短描述:本质上,您既可以跟踪BSDF射线(也可以照做间接照明),也可以跟踪向EM的显式射线。MIS为您提供权重,以便您可以将它们组合在一起,从而消除很多噪音。MIS特别擅长根据出现的情况选择“技术”(隐式或显式采样)。这自然发生,而用户不必根据粗糙度等做出艰难的选择。

http://graphics.stanford.edu/papers/veach_thesis/的第9章对此进行了详细介绍。另请参阅https://www.shadertoy.com/view/4sSXWt,了解带区域照明的MIS演示。


是的,MIS是一项重要的经过生产验证的技术,它对您有很大帮助,我在解决方案中采用了它(我想,我应该在问题中更清楚地说明这一点)。但是,基于MIS的估算器的总体性能取决于其部分采样策略的质量。我在这里试图做的是改进子策略之一,以提高估算器的整体性能。以我的经验,使用质量较低的样本通常比生成更容易生成的质量较低的样本要昂贵得多。
ivokabel '16
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.