CN106469462A - 一种三维场景辐射亮度的渐进式估算方法 - Google Patents
一种三维场景辐射亮度的渐进式估算方法 Download PDFInfo
- Publication number
- CN106469462A CN106469462A CN201510504795.4A CN201510504795A CN106469462A CN 106469462 A CN106469462 A CN 106469462A CN 201510504795 A CN201510504795 A CN 201510504795A CN 106469462 A CN106469462 A CN 106469462A
- Authority
- CN
- China
- Prior art keywords
- photon
- intersection point
- estimation
- radius
- light
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Image Generation (AREA)
Abstract
本发明公开了一种三维场景辐射亮度的渐进式估算方法。本方法为:1)对输入的三维场景进行光线跟踪绘制遍,得到光线与场景的交点x;2)针对每一交点x,确定其初始光子收集的估算内核半径R;然后开始渐进式多遍光子追踪,直至交点x的内核半径R小于设定阈值或者光子追踪遍数大于设定阈值;光子追踪过程为:从设定光源发射光子生成该三维场景的光子图;根据交点x光子集合计算交点x当前半径R内的累积辐射通量;去除该光子集合内辐射通量密度差异最大的光子;根据优化后的光子集合计算交点x的估算新的收缩后的内核半径R;3)根据2)最终得到的所有交点x的光子集合,计算该三维场景最终累积辐射亮度。本发明绘制效果更逼真、绘制效率高。
Description
技术领域
本发明涉及一种三维场景辐射亮度的渐进式估算方法。
背景技术
渐进式光子映射方法及相关工作
2008年,Toshiya等人提出了渐进式光子映射方法(PPM)(Toshiya T.,Ogaki S.,Jensen H.W.:Progressive photon mapping.ACM Trans.Graph.27,5(Dec.2008),130:1–130:8),这是第一个基于光子映射的渐进式全局光照明算法。相比标准的光子映射,渐进式光子映射不需要把用于辐射亮度估算的光子同时全部存储下来,利用渐进式的算法流程获得比光子映射更加准确的收敛结果。2009年,Toshiya提出随机性的渐进式光子映射(SPPM)(Toshiya T.,Jensen H.W.:Stochastic progressive photon mapping.ACM Trans.Graph.28,5(Dec.2009),141:1–141:8),该算法可以计算相交点附近区域的辐射亮度值用其作为相交点的辐射亮度,加入随机性的渐进式光子映射算法可以获得更好的稳定性和扩展性,SPPM算法的改进在于在每一个光子追踪过程遍(photon tracing pass)执行时,重新进行一遍光线追踪过程(ray tracing pass),即在照相机参数不变的情况下得到一组新的相交点信息,然后利用当前遍的光子图为新的相交点计算辐射亮度,然后计算累积辐射通量并得到最终绘制的图像。重新进行光线追踪过程使得渐进式光子映射算法(SPPM)可以方便的实现抗锯齿处理以及类似景深、运动模糊等效果,从而可以完善地应用于更多真实感绘制的场景。Weiss和Grosch拓展SPPM算法到动态场景中实现对动态的物体和材质的高效模拟(Weiss M.,Grosch T.:Stochastic progressive photonmapping for dynamic scenes.In Computer Graphics Forum,vol.31.2012,pp.719–726)。Günther和Grosch提出了一种SPPM的分布式的核外算法,对算法的具体实际应用做了进一步研究(Günther T.,Grosch T.:Distributed out-of-core stochastic progressive photon mapping.InComputer Graphics Forum(2014),vol.33,Wiley Online Library,pp.154–166.)。文中场景几何体和发射的光子同时被划分为多个部分,所有的光线被设定在一个门户系统。Toshiya等人描述了一个针对偏差和噪声的错误估算框架同时提出了绘制终止条件,这是第一个针对内核产生的偏差和噪声的量化工作(Toshiya T.,Jarosz W.,Jensen H.W.:A progressive error estimationframework for photon density estimation.ACM Trans.Graph.29,6(Dec.2010),144:1–144:12)。为了消除噪声,Spencer和Jones引入了光子扩散方法(Spencer B.,Jones M.W.:Into the blue:Better caustics through photon relaxation.In Computer Graphics Forum(2009),vol.28,WileyOnline Library,pp.319–328),在该算法中作者没有尝试发射更多的光子而是通过将原始的光子图重布为具备蓝色噪声光谱的光子图,然后再利用新的光子图进行辐射亮度估算的工作。作者也提出了一个启发式方法来检测和保留重要的光子分布特征和光子连接性。2013年作者又将渐进式光子映射的策略引入到光子重布中提出了渐进式光子重布来消除噪声和剩余的偏差(Spencer B.,Jones M.W.:Progressive photon relaxation.ACM Trans.Graph.32,1(Feb.2013),7:1–7:11.)。但是光子重布算法将光子图从非均匀到均匀化转化的过程非常耗时。
主要符号对照表
渐进式光子映射辐射亮度估算
与标准的光子映射算法的KNN(k-Nearest Neighbor)收集策略不同的是,PPM使用预先设置的半径r(称为估算内核半径)来收集光子,即在相交点x附近假想半径为r的球,所有包含在球内的光子被收集起来用于辐射亮度估算,这种方法本质上与KNN的光子可视化方法是一致的,只是将限制条件由光子个数变为估算半径。PPM使用与光子映射相同的估算方程来计算辐射亮度,估算面积是产生偏差的根源,光子的追踪本身是无偏差的,但是光子分布的结果用于辐射亮度估算就产生丢失细节的模糊现象。随着光子密度提高,辐射亮度估算会最终收敛到正确的解决方案,这一点保证PPM是一个具有一致性的算法。
为了保证PPM算法最终收敛并得到正确的结果需要光子图包含无穷多的光子,同时估算半径收敛趋近于0。为了达到这个目标,PPM方法中假设一个光子追踪过程生成的光子图包含N个光子,但是这些光子中只有Nβ个光子参与到当前遍的密度估算。随着发射无穷多遍光子追踪过程,N和Nβ都会趋近于无穷大,但是由于Nβ无限小于N,可以保证估算半径r能够收敛到0,辐射亮度估算可以写成如下形式:
公式(1)
利用该方法可以在理论上得到任意精度的辐射亮度估算结果。PPM算法在每遍光子追踪过程中使用固定数目的光子,之后利用半径收敛策略逐渐接近实现公式中对于无限大光子图的需求。
半径收敛
经典的光子图辐射亮度估算依赖于局部光子密度的估算,相交点x局部的光子密度计算公式如下:
公式(2)
其中对于相交点x,n个最近光子处在以x点为圆心以r为半径的球空间内,并且假设在半径为r的圆盘局部是平坦的。PPM方法假想用另外一张光子图,并使用它计算x点处的光子密度,那么对于同样大小r的圆盘可能会获得n'个光子,那么新的光子密度为
公式(3)
通过求出d(x)和d'(x)的平均值,可以获得更加精确的光子密度,这种方法也可以获得更加平衡的辐射亮度结果,但是并没有生成比每张光子图更多的细节,这种平均结果最终会一致收敛得到x点的正确计算结果。只要半径r固定,就无法产生更详细的局部细节,并且辐射亮度的精确性依赖于每张光子图中光子的总数。为了获得更加精确的辐射亮度估算,产生更加详细的局部细节,必须增大使用光子的数目并减小估算半径。使用累积光子的概念可以很好地达到有限存储空间获得无穷大光子的目的,PPM算法指出保持估算范围内的光子密度是利用有限存储空间获取无穷大光子图的关键。
初始条件下,x点处的估算半径R(x)被设置为一个非0的正值,使用第一遍生成的光子图,光子密度为d(x)。假设经过几遍光子追踪过程之后,x点处收集的累积光子数目为N(x)个,并假设对于当前生成的新的光子图,使用估算半径R(x)收集到M(x)个光子,将M(x)个光子添加到光子密度计算中得到:
公式(4)
之后将估算半径缩小dR(x)得到新的估算半径PPM方法假设x点处的光子密度是恒定不变的,即在估算半径收缩过程中保持光子密度不变。缩小半径之后,半径内所包含的光子数目为:
公式(5)
半径收缩之后,总光子数目使用参数α控制每张光子图保留的光子数目。即
公式(6)
该公式表明了在每一遍光子收集过程中将会添加αM(x)个新的光子用于累积到x点处的光子密度。利用公式可以计算得出,新的辐射亮度估算半径(即收缩之后的半径)为:
公式(7)
辐射通量累积
PPM算法中,将为每一个相交点x在多遍绘制过程中存储没有归一化的总辐射通量与BRDF的乘积,将该形式量定义为对于N(x)光子计算公式如下:
公式(8)
其中是相交点x处光线的方向,是入射光子的方向,是没有归一化的光子p所携带的辐射通量。如果光子的估算半径是固定的,那么就可以直接将添加到上,但是对于估算半径缩小的情况,假设光子密度在圆盘的估算范围内是不变的,可以得到如下结果:
公式(9)
其中,是半径收缩到对应光子之后的累积值。有了累积的计算公式可以得到在渐进式光子映射中用于辐射亮度估算的公式:
公式(10)
如果半径为R(x)的圆盘中没有被光子点亮,即没有从光子图中收集到有效的光子,R(x)在下一遍光子追踪过程中就不会缩小。尽管这种情况破坏了半径缩小的条件但是辐射亮度估算最终收敛到这正确的结果,即PPM算法得到辐射亮度估算结果在多遍光子追踪的辐射亮度估算过程中逐渐收敛到正确的结果,利用上述公式推导的辐射亮度估算能够保证半径逐渐收缩到0,同时估算范围内的光子密度可以得到保持,生成的图像会产生更加详细的局部细节,最终得到的结果也更加准确。
但是,经典的PPM算法在两遍相邻的光子追踪过程之间,估算半径的缩小和收敛依赖于一个预先设定的固定不变的收缩因子α。这个收缩因子α是一个与局部表面几何特征无关、与当前光子的分布无关的量。由于相交点的辐射亮度依赖于x点附近收集到的光子的辐射度,因此与相交点x的平均辐射度具有较大差异值的光子可能会对最终的结果产生估算错误。例如,对于处在焦散区域边缘的相交点,如果使用不适合估算内核收集光子可能会导致光子辐射量的过少估算,相反,对于处在靠近焦散区域的相交点则可能会导致光子辐射量的过多估算,那么最终的估算结果会产生模糊的焦散区域。尽可能的去除这些差异值较大的光子(判定为噪声光子)对最终辐射量的贡献可以有效地减少错误。
发明内容
针对现有技术中存在的技术问题,本发明的目的在于提供一种三维场景辐射亮度的渐进式估算方法。本发明使用基于局部表面光照特征分析的策略来优化获得更为精确的辐射亮度估算和渐进式的累积辐射亮度估算。渐进过程中的下一遍估算内核的半径需要收缩小到刚好将这些噪声光子排除在外。为了保证辐射度在渐进式估算中得到一致收敛的结果,本发明优先去除每遍光子追踪过程中那些妨碍辐射度收敛的光子及其所占据的辐射面积。
本发明的技术方案为:
一种三维场景辐射亮度的渐进式估算方法,其步骤为:
1)采用光线跟踪技术对输入的三维场景进行绘制遍,得到光线与场景的交点x;
2)针对每一交点x,确定其初始光子收集的估算内核半径R;然后开始渐进式多遍光子追踪,直至交点x的当前估算内核半径R小于设定阈值Rmin或者光子追踪的遍数大于设定阈值Npass_max;其中,光子追踪过程为:
21)从设定光源发射光子生成该三维场景的光子图;
22)收集该交点x当前估算内核半径R内的光子,得到一个光子集合;
23)根据该交点x的光子集合,计算该交点x当前估算内核半径R内的累积辐射通量;
24)计算该光子集合内每一光子的辐射通量密度差异,然后将辐射通量密度差异最大的光子作为噪声光子,从该光子集合中去除;
25)根据步骤24)优化后的光子集合计算该交点x的估算内核半径R;
3)根据步骤2)最终得到的所有交点x的光子集合,计算该三维场景的最终累积辐射亮度。
进一步的,所述累积辐射通量的计算方法为:首先计算第i遍光子追踪后交点x的估算内核半径Ri-1内的累积辐射通量密度为:为第i-1遍之后的累积辐射通量密度,Ri-1为第i-1遍之后的估算内核半径,Ei为交点x第i遍估算内核半径Ri-1内所获得的所有光子的平均辐射通量密度;然后计算光子集合Si中每一个光子ep所占据区域的平均辐射通量密度E(i,p);然后计算每一光子ep的平均辐射通量密度E(i,p)与交点x的累积辐射通量密度之间的差异值ζ(i,p);其中,Si是由以交点x为圆心以Ri-1为半径的半球收集到的光子集合。
进一步的,根据公式计算所述差异值。
进一步的,所述根据光子集合计算交点x的估算内核半径R的方法为:设Pζ为噪声光子eζ的空间位置,首先将当前光子集合中超越位置Pζ的光子去除,然后根据得到的光子集合计算交点x当前估算内核半径R内的累积辐射通量;然后根据该累积辐射通量计算所述估算内核半径R。
进一步的,所述估算内核半径R的计算方法为:首先利用公式计算所述累积辐射通量;然后得出第i遍光子追踪的估算内核半径其中,li(x)=|x-Pζ|是以交点x为圆心的圆盘;Ri-1(x)为第i-1遍光子追踪的估算内核半径。
进一步的,使用经过过滤后光子集合S′i计算得到x点附近收集光子的精确辐射通量理想的估算半径设为r,然后以为理想估算内核面积为πr2的辐射通量,则理想估算内核面积πr2产生的理想辐射通量为:
ΔAp是集合S′i中光子p的辐射亮度估计面积,由每个光子所占的物体表面的面积决定。
进一步的,采用公式计算所述最终辐射亮度其中,Nemitted是从设定光源累积发出的光子个数,S′i为交点x的光子集合,n是集合S′i中的光子总数,是交点x处光线的方向,R(x)是渐进过程最终得到的理想收敛半径,r为理想估算半径;是交点x当前遍的光子所产生的理想辐射通量与BRDF的乘积量,为交点x之前所有遍累积的光子所产生的理想辐射通量与BRDF的乘积量,是两者结合之后所累积产生的辐射通量与BRDF的乘积量。
进一步的,确定交点x的初始光子收集的估算内核半径R的方法为:将交点x所在的多边形的内切圆的半径长度或者外接圆的半径长度作为初始光子收集的估算内核半径。
与现有技术相比,本发明的积极效果为:
本发明由于能够去除渐进式策略中收集到的某些差异性较大的噪声光子,同时不同于传统固定收缩的模式而采用了更快和更准确的渐进式光子映射估算内核半径的收缩方法;以此能够提供更加逼真的真实感光照绘制效果以及更加快速的真实感绘制效率。
同时,本发明可以根据相交点所在几何表面的表示精细度进行动态调整,因此具有比固定半径更好的实适应性。
附图说明
图1为本发明的流程图;
图2为半径收缩示意图;
(a)第i-1遍累积的光子分布,光子收集半径为Ri-1;
(b)第i遍新加入的光子与原有累积的光子;
(c)按照本发明的规则,收集光子的半径进行收缩,新的半径为Ri。
图3本发明所采用方法得到的效果图与其它方法的比较图;
(a)采用本发明方法进行绘制所获得的结果;
(b)采用SPPM方法进行绘制所获得的结果。
具体实施方式
下面结合附图对本发明进行进一步详细描述。本发明的方法流程如图1所示。
发明步骤如下:
1)输入待绘制三维场景;
2)在光线跟踪绘制遍(ray tracing pass),采用光线跟踪过程计算光线与场景的交点x;
3)针对每个相交点确定初始光子收集的估算内核半径R,每个相交点的初始估算内核半径依据其表面网格中多边形形态采用不同的初始数值;
4)开始渐进式多遍光子追踪过程(photon tracing pass);
4.1从光源发射光子,生成该三维场景的光子图;
4.2利用各种可能的方法收集x处位于估算半径R之内的光子;
4.3计算x点附近估算半径R内光子的累积辐射通量;
4.4比较收集到光子的辐射通量密度差异;
4.5去除掉其中最大的噪声光子;
4.6如果某个相交点x的内核估算半径R大于某个设定的阈值Rmin时,则重新计算收缩之后的新的内核估算半径R;否则该点的内核估算半径保持不变;
4.7当所有相交点x收缩半径均小于某个设定的阈值Rmin时,或者光子跟踪的遍数大于某个阈值Npass_max时,转到步骤5;否则转到步骤4.1。
5)多遍光子追踪过程结束,计算最终的累积辐射亮度。
下面对本发明的一些步骤进行进一步详细描述。
累积辐射通量密度及比较辐射通量密度差异
与标准PPM算法不同,本发明使用辐射通量密度(或者辐照度)而不是光子密度作为渐进式密度估算中需要保持的量。假设在i-1遍之后累积的辐射通量密度为并且经过i-1遍之后的估算内核半径为Ri-1,当前遍(第i遍)估算内核半径为Ri-1内所获得的所有光子的平均辐射通量密度为Ei。
则第i遍光子追踪之后精确的累积辐射通量密度为:
公式(11)
假设Si是由以x为圆心以Ri-1为半径的半球收集到的光子集合。对于Si中每一个光子ep,我们计算在每一个光子所占据区域的平均辐射通量密度E(i,p)(光子所占据区域,既可以用voronoi区域划分,也可以采用其它形式划分),接着计算该光子的辐射度与相交点x的累积辐射通量密度之间的差异值ζ(i,p)
公式(12)
包含与较大差异的光子集合定义如下:
公式(13)
其中具有最大差异值的光子是:
公式(14)
去除噪声光子
通过上面步骤得到的辐射通量密度值,我们方便地采用截尾均值策略来为最终辐射计算减少随机噪声的产生。针对当前遍中辐射度差异较大的光子,我们将其所携带的辐射通量和辐射面积同时从内核估算中剔除,剩余光子所携带的辐射通量对辐射亮度计算仍然有效,该方法可以获得控制噪声的效果。实现如下:使用一个临时的光子集合作为辐射亮度估算的辐射量来源,对噪声光子过滤后形成集合如下:
S′i=S′i/eζ
使用新的集合S′i中的光子代入到辐射亮度估算公式中可以有效减少光子辐射亮度估算的噪声。
重新计算收缩之后的新的内核估算半径R
在计算新的内核估算半径过程中,辐射通量密度将作为指导半径收缩的主要依据。
设Pζ为噪声光子eζ的空间位置,那些超越位置Pζ的光子需要从累积辐射通量计算中去除,我们使用以点x为圆心的圆盘为随后的光子追踪过程保留辐射通量。这个圆盘的计算为
li(x)=|x-Pζ| 公式(15)
处在半径Ri(x)内的新的辐射通量包含两个部分:从前i-1遍过程累积的辐射通量和当前第i遍落入半径为li(x)圆盘中的辐射通量,
公式(16)
所以用于下一遍辐射亮度估算的估算半径Ri(x)为:
公式(17)
如果集合Ti是空集,表明当前估算半径内的光子分布均匀不含噪声光子,则辐射亮度估算半径在下一遍过程中保持不变。如果估算内核包含过多或者过少的辐射量,我们采用减小估算半径来去除差异性较大光子,图2展示了半径收缩过程。图2中Ri-1(x)用于估算第i遍的光子收集,图(a)中灰色圆点是经过i-1遍之后累积的光子,图(b)中新一遍过程中收集的光子用较粗一些的圆点表示并叠加到原有的i-1遍累积的光子图中,图(c)中我们从中找到具有最大累积辐射度差异值的光子eζ,用灰度最深且具有底纹的圆点表示,利用该圆点计算出新的收缩半径为Ri。
公式中的半径收缩策略确保了辐射亮度估算趋向于没有偏差错误,通过去除包含辐射亮度差异较大的光子的辐射通量,累积辐射度可以一致地收敛到稳定结果。与PPM依赖于光子密度的渐进估算策略不同,本发明使用辐射量密度这一与辐射亮度联系更密切的量作为收敛条件。一旦辐射量密度差异减少,半径收缩速度会逐渐减慢。
累积辐射通量
本发明算法为渐进式光子映射引入更加精确的辐射度计算。为渐进式密度估算引入中间量的概念,我们计算出更加精确的计算的含义与公式8的含义相同)。同时是相交点x所在局部表面(逼近无穷小)辐射度的精确表达,在渐进式光子映射中保持精确的可以实现精确的辐射亮度估算。首先使用经过过滤后光子集合S′i计算得到精确的辐射通量假设理想的估算半径为r,然后以为理想估算内核面积为πr2的辐射通量,则理想估算内核面积πr2产生的理想辐射通量为:
公式(18)
其中ΔAp为光子p的辐射亮度估算面积,由每个光子所占的物体表面的面积决定,计算每个光子所覆盖的面积可以采用多种表面剖分形式实现(例如Voronoi剖分等)。随后,计算得到收缩后统一半径之内的理想累积量:
公式(19)
其中,Ri(x)表示每一遍收缩之后的半径,Ri-1(x)表示收缩之前的半径。
最终的辐射亮度估算公式为:
公式(20)
这里Nemitted是从光源累积发出的光子个数,R(x)是渐进过程最终得到的理想收敛半径,πR(x)2作为估算内核的面积,但是已经通过精确的内核估算算法将非精确内核估算产生的偏差从理想的累积辐射量中剔除,同时也消除了在渐进式估算中辐射度差异较大的噪声光子的影响。图3是采用本发明方法进行绘制与SPPM方法进行绘制所生成的结果图的对比,图中用方框框出的即为对比明显的区域,图中可以看出本方法所获得的结果具有更加准确的细节和更加逼真的效果。
本发明除了利用辐射度来删除噪声过大的光子之外,也为初始估算半径的设定提供依据。在标准的PPM算法中,每个相交点x的初始半径对于辐射亮度估算产生重要影响,通常如果半径设的过小,那么PPM算法在开始一遍过程中得到绘制效果会包含较大的噪声,另一方面,如果一开始设的半径过大,由于引入了太多距离“较远”的光子加入辐射亮度估算,使得开始一遍中得到画面模糊而丢失细节,那么就需要更多遍过程来消除偏差增添细节,这一现象在绘制焦散现象时尤其突出,PPM算法的局限性也在于它没有为不同的相交点x设置不同的初始化内核估算半径。从上面的描述可以看出,偏差和噪声实质上是两个相互矛盾的错误类型,在光子有限的条件下为了降低噪声就可能引入更多的偏差;相反,如果想淡化可见偏差,就必须要以生成噪声为代价。那么如何选取初始半径来取得两者的平衡点称为噪声控制的重要问题。我们的算法由于为场景建立了携带表面区域信息的几何结构,从中可以得到相交点所在当前表面网格的形状特征,同时也可以获得在其上分布的光子信息,在这种条件下,以尽可能小的半径包括更多的光子便是半径选取的一个局部最优解rm,为了算法具有更高的实用性,本发明将PPM算法中统一的初始半径设置为初始半径的阈值上限,然后计算出基于初始光子图的最优解rm作为初始的内核估算半径(rm为第m个相交点的最优初始半径)。这样的做法可以摆脱固定初始内核估算半径导致的辐射亮度估算不均匀同时,快速找到产生噪声较少的初始辐射亮度估算半径。局部最优解rm难以给出精确的计算表达,在实际的实现中,我们可以选取相交点x所在的多边形的内切圆的半径长度或者外接圆的半径长度为一个合适的初始估算内核半径,该方法可以根据相交点所在几何表面的表示精细度进行动态调整,因此具有比固定半径更好的实适应性。
Claims (7)
1.一种三维场景辐射亮度的渐进式估算方法,其步骤为:
1)采用光线跟踪技术对输入的三维场景进行绘制遍,得到光线与场景的交点x;
2)针对每一交点x,确定其初始光子收集的估算内核半径R;然后开始渐进式多遍光子追踪,直至交点x的当前估算内核半径R小于设定阈值Rmin或者光子追踪的遍数大于设定阈值Npass_max;其中,光子追踪过程为:
21)从设定光源发射光子生成该三维场景的光子图;
22)收集该交点x当前估算内核半径R内的光子,得到一光子集合;
23)根据该交点x的光子集合,计算该交点x当前估算内核半径R内的累积辐射通量;
24)计算该光子集合内每一光子的辐射通量密度差异,然后将辐射通量密度差异最大的光子作为噪声光子,从该光子集合中去除;
25)根据步骤24)优化后的光子集合计算该交点x的估算内核半径R;
3)根据步骤2)最终得到的所有交点x的光子集合,计算该三维场景的最终累积辐射亮度。
2.如权利要求1所述的方法,其特征在于,所述累积辐射通量的计算方法为:首先计算第i遍光子追踪后交点x的估算内核半径Ri-1内的累积辐射通量密度为: 为第i-1遍之后的累积辐射通量密度,Ri-1为第i-1遍之后的估算内核半径,Ei为交点x第i遍估算内核半径Ri-1内所获得的所有光子的平均辐射通量密度;然后计算光子集合Si中每一个光子ep所占据区域的平均辐射通量密度E(i,p);然后计算每一光子ep的平均辐射通量密度E(i,p)与交点x的累积辐射通量密度之间的差异值ζ(i,p);其中,Si是由以交点x为圆心以Ri-1为半径的半球收集到的光子集合。
3.如权利要求2所述的方法,其特征在于,根据公式计算所述差异值。
4.如权利要求2所述的方法,其特征在于,所述根据光子集合计算交点x的估算内核半径R的方法为:设Pζ为噪声光子eζ的空间位置,首先将当前光子集合中超越位置Pζ的光子去除,然后根据得到的光子集合计算交点x当前估算内核半径R内的累积辐射通量;然后根据该累积辐射通量计算所述估算内核半径R。
5.如权利要求4所述的方法,其特征在于,所述估算内核半径R的计算方法为:首先利用公式计算所述累积辐射通量;然后得出第i遍光子追踪的估算内核半径其中,li(x)=|x-Pζ|是以交点x为圆心的圆盘;Ri-1(x)为第i-1遍光子追踪的估算内核半径。
6.如权利要求2所述的方法,其特征在于,采用公式计算所述最终累积辐射亮度其中, Nemitted是从设定光源累积发出的光子个数,S′i为交点x的光子集合,n是集合S′i中的光子总数,ΔAp是集合S′i中光子p的辐射亮度估计面积,是交点x处光线的方向,R(x)是渐进过程最终得到的理想收敛半径,r为理想估算半径,是交点x当前遍的光子所产生的理想辐射通量与双向反射分布函数BRDF的乘积量,为交点x之前所有遍累积的光子所产生的理想辐射通量与双向反射分布函数BRDF的乘积量。
7.如权利要求1或5所述的方法,其特征在于,确定交点x的初始光子收集的估算内核半径R的方法为:将交点x所在的多边形的内切圆的半径长度或者外接圆的半径长度作为初始光子收集的估算内核半径。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510504795.4A CN106469462B (zh) | 2015-08-17 | 2015-08-17 | 一种三维场景辐射亮度的渐进式估算方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510504795.4A CN106469462B (zh) | 2015-08-17 | 2015-08-17 | 一种三维场景辐射亮度的渐进式估算方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106469462A true CN106469462A (zh) | 2017-03-01 |
CN106469462B CN106469462B (zh) | 2019-05-21 |
Family
ID=58214412
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510504795.4A Active CN106469462B (zh) | 2015-08-17 | 2015-08-17 | 一种三维场景辐射亮度的渐进式估算方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106469462B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108961372A (zh) * | 2018-03-27 | 2018-12-07 | 北京大学 | 一种基于统计模型检验的渐进式光子映射方法 |
CN110414058A (zh) * | 2019-06-28 | 2019-11-05 | 浙江大学 | 一种塔式太阳能热电站中卷积核函数的拟合方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060066616A1 (en) * | 2004-09-30 | 2006-03-30 | Intel Corporation | Diffuse photon map decomposition for parallelization of global illumination algorithm |
CN101826214A (zh) * | 2010-03-29 | 2010-09-08 | 中山大学 | 一种基于光子映射的全局光照方法 |
CN104200509A (zh) * | 2014-08-19 | 2014-12-10 | 山东大学 | 一种基于点缓存的光子映射加速方法 |
CN104700448A (zh) * | 2015-03-23 | 2015-06-10 | 山东大学 | 一种基于梯度的自适应光子映射优化算法 |
-
2015
- 2015-08-17 CN CN201510504795.4A patent/CN106469462B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060066616A1 (en) * | 2004-09-30 | 2006-03-30 | Intel Corporation | Diffuse photon map decomposition for parallelization of global illumination algorithm |
CN101826214A (zh) * | 2010-03-29 | 2010-09-08 | 中山大学 | 一种基于光子映射的全局光照方法 |
CN104200509A (zh) * | 2014-08-19 | 2014-12-10 | 山东大学 | 一种基于点缓存的光子映射加速方法 |
CN104700448A (zh) * | 2015-03-23 | 2015-06-10 | 山东大学 | 一种基于梯度的自适应光子映射优化算法 |
Non-Patent Citations (1)
Title |
---|
蔡鹏: "基于去噪光子图的光子映射", 《系统仿真学报》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108961372A (zh) * | 2018-03-27 | 2018-12-07 | 北京大学 | 一种基于统计模型检验的渐进式光子映射方法 |
WO2019183949A1 (zh) * | 2018-03-27 | 2019-10-03 | 北京大学 | 一种基于统计模型检验的渐进式光子映射方法 |
CN108961372B (zh) * | 2018-03-27 | 2022-10-14 | 北京大学 | 一种基于统计模型检验的渐进式光子映射方法 |
CN110414058A (zh) * | 2019-06-28 | 2019-11-05 | 浙江大学 | 一种塔式太阳能热电站中卷积核函数的拟合方法 |
Also Published As
Publication number | Publication date |
---|---|
CN106469462B (zh) | 2019-05-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Asif et al. | Shape from focus using multilayer feedforward neural networks | |
CN106250931A (zh) | 一种基于随机卷积神经网络的高分辨率图像场景分类方法 | |
Lee et al. | Understanding pure clip guidance for voxel grid nerf models | |
CN109542106A (zh) | 一种移动机器人多约束条件下的路径规划方法 | |
CN106686472A (zh) | 一种基于深度学习的高帧率视频生成方法及系统 | |
CN103049891B (zh) | 基于自适应窗口选择的视频图像去模糊方法 | |
CN105354873A (zh) | 用于多孔介质三维重构的模式密度函数模拟算法 | |
CN103400368B (zh) | 基于图论和超像素的并行快速sar图像分割方法 | |
CN102902847A (zh) | 基于组合图元的输电网单线图自动设计方法 | |
CN106251393A (zh) | 一种基于样本消除的渐进式光子映射优化方法 | |
CN106469462A (zh) | 一种三维场景辐射亮度的渐进式估算方法 | |
CN110188880A (zh) | 一种深度神经网络的量化方法及装置 | |
Liapis et al. | Sentient World: Human-Based Procedural Cartography: An Experiment in Interactive Sketching and Iterative Refining | |
CN109983479A (zh) | 用于计算神经网络的输出的方法 | |
KR102151727B1 (ko) | 차등진화 기법을 결합시킨 적응형 뉴로-퍼지 추론 기법에 기초한 지하수 오염 취약성 평가 장치 및 방법 | |
CN107992944A (zh) | 一种基于原始生成对抗网络模型的多尺度卷积方法 | |
CN109658508A (zh) | 一种多尺度细节融合的地形合成方法 | |
Remacle et al. | Fast and robust mesh generation on the sphere—Application to coastal domains | |
CN109598771A (zh) | 一种多地貌特征约束的地形合成方法 | |
CN103593860B (zh) | 一种针对任意不规则毛坯的剪裁方法 | |
CN108961372B (zh) | 一种基于统计模型检验的渐进式光子映射方法 | |
CN117007066A (zh) | 多规划算法集成的无人驾驶轨迹规划方法及相关装置 | |
CN111260706A (zh) | 一种基于单目相机的稠密深度图计算方法 | |
Luo et al. | Quad-tree atlas ray casting: a gpu based framework for terrain visualization and its applications | |
Li | Deep reinforcement learning on wind power optimization |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |