首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >射影固体角度$dA^\perp$项在辐射定义中的目的是什么?

射影固体角度$dA^\perp$项在辐射定义中的目的是什么?
EN

Computer Graphics用户
提问于 2019-07-08 17:41:47
回答 3查看 562关注 0票数 5

在“亮度”的定义中,根据PBRT定义为

单位固体角d\omega /单位投影面积dA^\perp通量

L_i=\frac{d\Phi}{d\omega\ dA^\perp}

我最初的假设是,dA^\perp项被用来削弱由于入射角引起的辐照度贡献(我假设这只是Lambert的余弦定律)。然而,在呈现方程中,我们已经用\cos\theta术语显式地应用了兰伯特定律:

\int_\Omega L_i(\omega_{i}) \, f_r(\omega_{i}\rightarrow \omega_{o}) \, \cos\theta_{i} \, d\omega_{i}

我假设我们不会两次应用兰伯特定律,那么这个dA^\perp项到底是什么呢?

EN

回答 3

Computer Graphics用户

回答已采纳

发布于 2019-07-08 20:59:53

你的主要想法或多或少是正确的。投影面积测度dA^\perp = dA\cos(θ)中隐藏的余弦补偿了入射角(兰伯特余弦定律)对辐照度的减弱。这使得辐射与入射角无关。我的猜测是,主要的动机是让它更实用的工作。

呈现方程中的余弦来自BRDF的定义:

f_{r}\left(\omega_{i}\rightarrow\omega_{o}\right) =\frac{\mathrm{d}L_{o}\left(\omega_{o}\right)}{\mathrm{d}E\left(\omega_{i}\right)} =\frac{\mathrm{d}L_{o}\left(\omega_{o}\right)}{L_{i}\left(\omega_{i}\right)\mathrm{d}\sigma^{\bot}\left(\omega_{i}\right)} =\frac{\mathrm{d}L_{o}\left(\omega_{o}\right)}{L_{i}\left(\omega_{i}\right)\cos\theta_{i}\mathrm{d}\omega_{i}}

可以重写为

\mathrm{d}L_{o}\left(\omega_{o}\right) =f_{r}\left(\omega_{i}\rightarrow\omega_{o}\right) L_{i}\left(\omega_{i}\right) \cos\theta_{i} \mathrm{d}\omega_{i}

它可以在半球上进行积分,得到一个给定方向的\omega_o反射的亮度。

\int_\Omega f_{r}\left(\omega_{i}\rightarrow\omega_{o}\right) L_{i}\left(\omega_{i}\right) \cos\theta_{i} \mathrm{d}\omega_{i}

看,渲染方程!

结论:虽然这两种余弦来自相同的基本原理,但它们的用途不同。

票数 6
EN

Computer Graphics用户

发布于 2019-07-09 11:57:15

既然你似乎想要一个辐照度的解释,那么请同时考虑辐射度和辐照度的定义:

E = \frac{d\Phi}{dA}, \quad L = \frac{d^2\Phi}{d\omega dA^{\perp}}

我们可以把辐射度的定义重订为:

d^2\Phi = L \cos\theta d\omega dA

在实心角d\omega (在Lebesgue-Stieltjes的意义上)上,两边的积分产生:

d\Phi = dA \int_{\Omega}{L\cos\theta d\omega}

因此:

E = \frac{d\Phi}{dA} = \int_{\Omega}{L\cos\theta d\omega}

所以你可以把辐照度看作是相对于固体角度测量的亮度的积分,反之亦然,你可以认为辐射度是相对于固体角度测量的辐照度的导数。其他答案也提供了与呈现方程的链接。所以不,你没有余弦两次。虽然你要重写渲染方程的面积公式,你确实得到了另一个余弦项(这是由于一个微分面积贴片投影到半球)。这使用了以下关系:

d\omega = \frac{\cos\theta_y}{r^2}dA(y)

然后,可以将呈现方程重写为:

L_o(x_0 \rightarrow x_{-1}) = \int_{S}{f(x_1 \rightarrow x_0 \rightarrow x_{-1}) L(x_1 \rightarrow x_0) \cos\theta_{x_0} \frac{\cos\theta_{x_1}}{||x_1-x_0||^2} V(x_0,x_1) \,dA(x_1)}

在这里,可见性项V(x_0,x_1)出现,因为它最初是隐含在固体角度公式。这是因为你不能在点x_0x_1之间的直线上获得亮度,如果在中间有一个封堵器,这是在固体角度公式中自动处理的,使用L_i(x_0,\omega = x_0 \rightarrow x_1),它给我们从\omega方向到达x_0的亮度,请注意,这是考虑到第一个点,从这个辐射到达,而不是具体的x_1。形式上是L_i(x_0, \omega) = L(r(x_0,\omega), -\omega)),请注意光线投射操作符r,其中的可见性项是隐式隐藏的,因为如果中间有遮挡,则为r(x_0,x_0 \rightarrow x_1) \ne x_1

票数 2
EN

Computer Graphics用户

发布于 2019-07-09 07:31:11

这两个余弦项基本上指的是缩短效应,即:

落在贴片上的辐照度必须通过贴片与光源夹角的余弦来修正。

从辐照度的定义来看:

辐照度是单位面积的通量,因此:

重新排序:

它是辐射度的定义,具有与辐照度定义相同的余弦项(将半球上的辐照度积分并乘以BRDF给出绘制方程)。

因此,这两个余弦项都是指一个效应,但我认为你是对的,在呈现方程中有两个余弦项。方程中可见的第一项补偿了接收片上辐照度的减弱,而辐射定义中隐含的第二次余弦对应于源斑的辐射度,即受掩缩的表面积。在路径跟踪中,这种亮度(Li)要么来自一个已知辐射值的直接光,要么来自一个未知的间接光,并将被递归求解。但是如果你要计算源辐射,你也需要把这两个项相乘。

票数 0
EN
页面原文内容由Computer Graphics提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://computergraphics.stackexchange.com/questions/8983

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档