网站大量收购闲置独家精品文档,联系QQ:2885784924

第14章蒙特卡罗积分I..docx

  1. 1、本文档共13页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第14章蒙特卡罗积分I.

第14章 蒙特卡罗积分I:基本概念在介绍计算沿光线到达相机的辐射亮度的SurfaceIntergrator类和VolumeIntegrator类之前,我们先做一些关于求解散射积分 方程的基本工作。这些积分方程通常没有解析解,所以我们必须求助于数值方法。虽然诸如梯形积分法和高斯积分法这类标准的数值积分技术在求低维光滑积分时很 有效,但它们对于在渲染过程中所遇到的高维不连续积分而言,其收敛速度还是太慢了。蒙特卡罗积分技术为这个问题提供了一个解决方案。这类方法使用了随机性做积分求值,且收敛速度跟被积函数的维的个数无关。在本章中,我们将回顾一些概率论 中的重要概念,并为使用蒙特卡罗解决渲染过程中的积分问题打下一个基础。下一章将描述提高收敛速度的计算,并描述pbrt所用到的技术。对随机性的明智运用使算法设计领域发生了革命性的变化。随机性算法大致分两大类:拉斯维加斯算法和蒙特卡罗算法。拉斯维加斯算法使用了随机性但最终会产生 相同的结果(如在快速排序算法中随机地选择一个数组项作为主元素)。而蒙特卡罗算法依赖于在算法过程中所使用的不同的随机数列而得到不同的结果,但结果大 致上(在平均意义上)是正确的。所以,对蒙特卡罗算法的多次运行结果做平均,就有可能找到跟正确答案很接近的统计意义上的结果。蒙特卡罗积分是一项用随机采样来估算积分值的技术。蒙特卡罗积分的一个非常有用的特性是:为了估算积分值,我们只需保证能够在定义域中的任意点对被积函数求值。这个特性不仅使得蒙特卡罗技术易于实现,而且可以应用于非常广泛的被积函数类型,包括那些不连续函数。在渲染过程中所遇到的积分是很难或不可能直接求积分的。例如,为了计算表面上某一个点上的反射光的量,我们要用方程(5.6)来对入射辐射亮度和BSDF 的乘积做单位球面上的积分。因为物体的可见性使得在复杂场景中的入射辐射亮度函数会有难以预测的变化,对于这个乘积中的所有项就很难找到封闭形式的表达 式,即使表达式存在,对之进行解析方式的积分也是通常不可能的。因为有了蒙特卡罗积分,计算反射辐射亮度就成为可能,因为我们只需选择球面上的一组方向, 计算相应的入射辐射亮度,分别乘以相应方向上的BSDF值,再用上一个权值项。这样一来就可以处理任意的BSDF、光源和几何体;所要做的只是在任意点上 对这些函数求值。蒙特卡罗积分的主要缺点是,如果用了n个采样点来估算积分,算法收敛到正确解的速度是O(n-1/2)。换句话来说,如果将误差减 半,就要使用4倍的采样点。在渲染过程中,为了计算被积函数的值,每个采样点需要追踪一条或多条光线,当用蒙特卡罗积分做图像合成时,这真是很痛苦的代 价。在图像中,蒙特卡罗采样所产生的人为缺陷会以噪声的形式出现,即像素随机性地出现太黑或太亮的情况。当前许多关于蒙特卡罗积分的研究着重于如何尽可能 地减少误差又要减少采样点的数量。14.4 背景和概率论知识的回顾我们先定义一些基本的术语并回顾一下概率论的基本知识。我们先假定读者已经熟悉了概率论的基本概念;需要对这一领域做近一步的全面了解的读者可以参考相应 的教科书,例如Sheldon Ross的Introduction to Probability Models(2002)。一个随机变量X是在某个随机过程中所选定的一个值。我们通用用大写字母来代表随机变量,特殊情况下我们使用希腊字母代码一些特殊的随机变量。随机变量总是 在某些定义域中抽取出来的,它既可以是离散的(例如一个固定的概率集合),也可以是连续的(如实数集R)。对随机变量X使用函数f就得到另一个新的随机变 量Y = f(X)。例如,随机掷一个骰子的结果就是一个离散的随机变量,它被采样于一个事件集合Xi = { 1, 2, 3, 4, 5, 6 }。每个事件有一个概率pi = 1/6, 这样概率总和Σpi一定是1。我们可以取一个连续的均匀分布的随机变量ξ∈[0,1],并将之映射为一个随机变量, 如果下式满足,则取值Xi:?Σj=1,i-1 Pj? ξ≤ Σj=1,i Pj注意所有的Pi之和为1。一个随机变量的累积分布函数(CDF)P(x)是变量分布中的一个值小于或等于某个值x的概率。?P(x) = Pr { X ≤ x}以掷骰子为例,P(2) = 1/3, 因为小于或等于2的情况占总数6个中的2个。14.1.1 连续随机变量在渲染过程中,跟离散随机变量相比,会更多地用到连续随机变量,这些变量在一个连续的定义域内取值(如实数域,或单位球上的方向)。其中一个非常重要的随机变量是典型均匀随机变量,记为ξ。该变量之所以重要有两个原因。首先,在软件中生成这个分布的变量很容易,因为大多数运行库中的伪 随机数发生器就可以做到这一点。第二,我们可以先生成典型均匀随机变量再施加上某种变换来得到任意的随机分布。前面所提到的将ξ映射到骰子

文档评论(0)

jiulama + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档