本文主要是介绍蒙特卡洛光线追踪简介和基础知识 基础知识一,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
蒙特卡洛光线追踪技术系列 见 蒙特卡洛光线追踪技术
蒙特卡洛光线追踪的介绍:
真实感图像合成在娱乐(电影、特效和游戏)、设计、建筑等领域越来越重要。在所有这些领域中,一个共同的趋势是要求越来越复杂的模型具有更真实的图像。基于蒙特卡罗射线追踪的技术是唯一能够处理这种复杂性的方法。算法和计算能力的最新进展使得蒙特卡罗射线追踪成为大多数问题的自然选择。这与几年前(有限元)光能传递方法是大多数图形研究人员首选的算法相比是一个重大的变化。蒙特卡罗射线追踪法与有限元法相比有许多优点。来自的最近列表包括:
•几何结构可以是程序性的
•无需细分
•不必预先计算解决方案的表示
•可以使用实例复制几何体
•可以处理任何类型的BRDF
•镜面反射(在任何形状上)都很容易
•内存消耗低
•精度控制在像素/图像级别
•根据经验,复杂性为O(log N),其中N是场景元素的数量。将其与最快有限元方法的O(N logn)进行比较[12]。
此外,人们可能会补充说,蒙特卡罗光线追踪方法可以非常容易地实现。一种基本的路径跟踪算法具有上述所有优点,是对光线跟踪的一个相对简单的扩展。
蒙特卡罗光线跟踪的主要问题是在渲染图像中被视为噪声的方差。使用更多的样本可以消除这种噪声。不幸的是,Monte Carlo方法的收敛速度很慢,需要大量样本才能将方差降低到可接受的水平。减少方差的另一种方法是尽量变得更聪明;本课程的大部分内容都致力于使蒙特卡罗射线追踪更有效的技术和算法。
本课程的目的
本课程的目的是让参加者对蒙特卡罗射线追踪法的原理有一个透彻的了解,并对最近发展的方法有一个详细的概述。
先决条件
读者应具备良好的光线跟踪工作知识,并了解全局照明的基本知识。这包括辐射术语(如辐射和通量)和基本反射模型(如漫反射、镜面反射和光泽)的知识。
概率论基础回顾:
现在讨论蒙特卡罗积分,其中随机数用于近似积分。首先回顾了概率论中的一些基本概念,然后将它们应用于积分的数值估计。然后讨论了在具有任意光照和反射特性的点上估计直接光照的问题。下一部分将蒙特卡罗积分应用于光线追踪中的直射光问题。
在讨论蒙特卡罗技术之前,我们需要几个定义,其中最重要的是连续随机变量、概率密度函数(pdf)、期望值和方差。这一节是一个回顾,那些不熟悉这些术语的人应该参考一本基本概率理论书(特别是关于连续的,而不是离散的,随机变量的章节)。
一维连续概率密度函数,不严格地说,连续随机变量x是一个标量或向量量,它“随机”从实线 R = (-∞, +∞) 取一些值。x的行为完全由它所取的值的分布来描述。这种值的分布可以用与x相关的概率密度函数p来定量描述(关系表示为x∼p)。x在某个区间[a,b]上取a值的概率由积分给出:
粗略地说,概率密度函数p描述了随机变量取某一值的相对可能性;如果p(x1)=6.0和p(x2)=3.0,那么具有密度p的随机变量具有“接近”x1的值的可能性是其具有接近x2的值的两倍。密度p有两个特征:
一维期望值:一个一维随机变量的实数函数f与底层pdf p的平均值称为它的期望值E(f(x))(有时写为Ef(x)):
一维随机变量的期望值可以通过让f(x)=x来计算。期望值有一个令人惊讶和有用的性质:两个随机变量之和的期望值是这些变量的期望值之和:
对于随机变量x和y。因为随机变量的函数本身就是随机变量,所以这种期望的线性也适用于它们:
一个明显的问题是,如果被求和的随机变量是相关的(不相关的变量称为独立的),那么这个属性是否成立。这个线性性质实际上决定了变量是否独立!这种求和性质对于大多数蒙特卡罗应用程序都是至关重要的。
多维随机变量随机变量及其期望值的讨论自然扩展到多维空间。大多数图形问题都会出现在这样的高维空间中。例如,许多照明问题都是以半球表面为基础的。幸运的是,如果我们在随机变量所占的空间上定义一个度量μ,那么一切都与一维情况非常相似。假设空间S具有关联的度量μ,例如S是球体的表面和μ度量区域。我们可以定义一个pdf p:S →R,如果x是具有x∼p的随机变量,那么x在某个区域Si⊂S上取一个值的概率由积分给出:
这里概率(event)是事件为真的概率,所以积分是x在区域Si中取一个值的概率。在图形中,S通常是一个区域(dμ=d a=dxdy)或一组方向(单位球面上的点:dμ=dω=S Inθdθdφ)。例如,二维随机变量α是半径为R的圆盘上均匀分布的随机变量。这里均匀地表示面积均匀,例如,坏飞镖运动员的命中率在飞镖板上分布的方式。因为它是均匀的,我们知道p(α)是一个常数。从方程2.3,以及面积是适当的度量,我们可以推断出p(α)=1/(πR2)。这意味着α在磁盘的某个子集S1中的概率是:
这都很抽象。为了实际使用这些信息,我们需要一个可以计算的形式的积分。假设Si是圆盘靠近中心而不是周长的部分。如果我们转换成极坐标,那么α表示为(r,θ)对,S1表示r<r/2。注意,仅仅因为α是均匀的并不意味着θ或r必然是均匀的(事实上,θ是,r不是均匀的)。微分面积dA变为r dr dθ。这将导致:
实数函数的期望值公式适用于多维情况:
其中x∈S和f:S →R,p:s→R。例如,在单位平方S=[0,1]×[0,1]和p(x,y)=4xy上,x坐标fo(x,y)∼p的期望值为:
注意这里f(x,y)=x。
注意为什么这里可以让p(x,y)=4xy,因为我们可以自己进行一下积分,然后就能发现:
即符合总概率为1。
方差
一维随机变量的方差V(x)定义为x和E(x)之差的平方的期望值:
一些代数运算可以给出不明显的表达式:
如果变量是独立的,则随机变量之和的方差就是方差之和。方差的这种求和性质是概率模型分析中常用的原因之一。方差的平方根称为标准差σ,它给出了绝对期望值与期望值的偏差。
这篇关于蒙特卡洛光线追踪简介和基础知识 基础知识一的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!