我正在学习BRDF,并想知道为什么将BRDF定义为给定方向的输出辐射与另一个方向的入射辐射之比。为什么不将BRDF定义为辐射比?

评论

如果有时间,我会写一个答案,但要简洁:因为定义。大致来说,辐射是在特定方向上测量出射光(或更佳:每立体角的辐射通量)。辐照度是指从某个方向入射的光(或者每单位面积接收的辐射通量更好。BRDF描述了出射光与入射光的比率

简短的答案是:“因为那样就不会是双向的”。已经有一段时间了,但我相信我对渲染方程式的替代公式是使用1:1反射函数。

#1 楼

有两种方法可以回答这个问题:代数方法和几何方法。经典的渲染公式为:

$$ L_ \ text {outgoing}(\ omega)= L_ \ text {emitted}(\ omega)+ \ int_ \ Omega L_ \ text {incoming}(\ omega')\,f_ \ text {BRDF}(\ omega,\ omega')\,(n \ cdot \ omega')\,d \ omega'$$

输出值left是一个辐射度,因此积分的结果也必须是一个辐射度。被积分体包含一个辐射度乘以一个立体角$ d \ omega'$,因此被积分体中的其他东西必须抵消该立体角因子。 $ n \ cdot \ omega'$因子是无量纲的,唯一的其他东西就是BRDF,因此,要使整个过程变得可行,BRDF必须具有反立体角单位。等效地,BRDF可以看作是辐射度与辐照度的比率,因为它们在辐射度分母中相差一个立体角。

另一种看待方式是BRDF发挥了作用类似于概率密度。如果您查看概率密度的工作原理,则它们的单位与其域的体积成反比。例如,一维概率密度的单位是反长度(单位长度的概率,但是概率本身是无量纲的),二维维密度的单位是反面积的单位,依此类推。 BRDF的作用与半球上定义的概率密度非常相似,从而使从给定方向入射的光子有可能被反射到其他方向。因此,就像球面域上的任何其他概率密度一样,它具有反立体角的单位。

从几何学上讲,我们可以深入了解黄铜大头钉,并分解渲染方程式积分中发生的事情。回想一下,积分是指将域细分为小块,并对所有块求和(在极限情况下,当块变得无限小时)。让我们看一个这样的作品。由于我们要累加许多部分以得出有限的输出辐射,因此被积函数应产生无限量的辐射$ dL $。因此,积分的一个无穷小部分看起来像:

$$ dL = L_ \ text {incoming} \,f_ \ text {BRDF} \,(n \ cdot \ omega')\,d \ omega'$$

如果稍微重新组合因素,则$ L_ \ text {incoming} \,(n \ cdot \ omega')\,d \ omega'$的组合将计算辐照度由于来自无限微小立体角$ d \ omega'$的光在表面上的反射。由于它是从无穷大的立体角到达的,因此会产生无穷小的辐照度$ dE $。

$$ dL = f_ \ text {BRDF} \,dE $$



$$ f_ \ text {BRDF} = \ frac {dL} {dE} $$

因此,BRDF在无限小辐照度到从表面以无限的立体角入射,并由此产生无限的向外辐射。它不可能是辐射的比率,因为我们有一个有限的入射辐射,并且如果我们想对积分的许多部分求和并得到有限的结果,则需要一个无限小的向外辐射。为此,BRDF必须是无穷小值,在标准数学中这不是问题。 :)

我希望其中的一些帮助。有许多等效的方法可以解决此问题,就像在数学和物理学中一样。

评论


$ \ begingroup $
我非常喜欢你的解释。我得到的论点是,BRDF中必须有反立体角因子,但是余弦因子呢?如果我们可以从BRDF中删除余弦项,那么可以从渲染方程中的积分中删除,不是吗?我能看到的唯一原因是在正确/当前的公式中分母可以看作是辐照度...
$ \ endgroup $
–ciechowoj
17年3月11日在11:50