一种基于统计模型检验的渐进式光子映射方法与流程

文档序号:16214478发布日期:2018-12-08 08:10阅读:286来源:国知局
一种基于统计模型检验的渐进式光子映射方法与流程

本发明涉及一种渐进式光子映射方法,尤其涉及一种基于统计模型检验的渐进式光子映射方法,属于计算机软件技术、计算机图形学、高逼真度图形渲染领域。

背景技术

全局光照明是真实感渲染的核心,也是计算机图形学中的经典问题之一,近年来有大量的算法被用来解决该问题。通过求解渲染方程来模拟全局光照明是理论基础,基于蒙特卡罗采样的光线追踪是其中最流行的方法之一(philipdutre,philippebekaert,andkavitabala.2016.advancedglobalillumination.akpetersltd.)。光线追踪是通过构造从相机开始的光线路径来解决渲染方程的无偏方法,由于从相机开始的光路必须概率地到达光源以便产生焦散,所以在具有小光源和镜面材料的场景中的光线跟踪是不稳定的。

双向光线跟踪通过从摄像机和光源同时建立光路来避免这个问题。如果来自光源的路径到达漫反射表面,则双向光线跟踪将相交点与相机直接连接,以便计算对图像的贡献,从而有效地处理来自小光源的原因。然而,双向光线跟踪仍然不能呈现焦散的镜面反射和折射。光线跟踪的另一大问题是需要大量的光线样本来产生融合或甚至视觉上令人满意的图像,bochang于2014年提出了一种基于局部回归理论的新型图像平面自适应采样和重建方法,这是一种新颖的局部空间估计过程,通过鲁棒地处理噪声高维特征,采用局部回归的方法绘制出视觉上令人满意的图像(moon,bochang,nathancarr,andsung-euiyoon."adaptiverenderingbasedonweightedlocalregression."acmtransactionsongraphics(tog)33.5(2014):170.)。

当渲染巨大和复杂的场景时,往往会出现光经过复杂路径到达观察者的情况。在这种情况下,传统的随机算法,如光线跟踪算法,将难以计算无噪声图像。venceslas于2015年提出使用基于场景骨架采样的光线追踪算法(laurent,andvenceslasbiri."skeletonbasedvertexconnectionresamplingforbidirectionalpathtracing."computergraphicsforum.vol.34.no.7.2015.),增加了很少的计算时间,同时产生更准确的图像。光子映射(pm)利用通过模拟光子的运动解决全局光照明问题(henrikwannjensen.1996.globalilluminationusingphotonmaps.inrenderingtechniques’96.springer,21–30.)。光子映射通过估计光子的密度来解决渲染方程,与双向光线追踪类似,光子映射分为两步:从光源发射光子,收集停留在非镜面表面的光子形成光子图;从摄像机跟踪光线,根据收集到的光子图来估计光线命中点处的辐射度。有效的解决了存在焦散的镜面反射和折射的问题。然而,光子映射是一种有偏算法,其偏差来源于光子的数量受到计算机存储的限制而无法趋于无穷。由于光子映射通过发射大量的光子来模拟全局光照明,于是当光子发射数量不足时,会导致偏差的产生。通常当试图增大光子数量来解决这个问题时,会带来大量的时间和空间资源的消耗,然而偏差也无法令人满意。

渐进式光子映射(ppm)从理论上解决了偏差的问题(toshiyahachisuka,shinjiogaki,andhenrikwannjensen.2008.progressivephoton1503mapping.acmtransactionsongraphics(tog)27,5(2008),130.)。ppm采用发射多轮光子并渐进式的对辐射亮度进行评估的方法。在其第一次的光子映射的光线追踪raytracingpass中,算法会为每一个光线追踪所见的相交点x,设置一个初始的评估半径,该方法还证明了评估半径随着pass数目的增长和光子收集半径的缩小,最终会收敛到一个正确的结果。

渐进式光子映射是第一个基于光子映射的渐进式全局光照明算法,该算法从理论上解决了光子映射的偏差问题,不需要同时存储用于辐射估计的所有光子,并且可以获得比pm更好的收敛结果。渐进式光子映射(ppm)是对光子映射(pm)的改进,利用光子积累和半径收缩,使得辐射度逐渐趋于真实的辐射值,且无需无限的内存。渐进式光子映射先执行一次eyepass,跟踪从相机出发的射线(ray),记录所有的命中点。后跟若干次photonpass,发射光子并收集光子、更新命中点的辐射度。在ppm的基础上,toshiya提出了随机渐进式光子映射sppm(toshiyahachisukaandhenrikwannjensen.2009.stochasticprogressivephotonmapping.acmtransactionsongraphics(tog)28,5(2009),141.)。sppm改善了ppm在区域内的辐射度估计,ppm被推广到处理分布式光线跟踪。maayan将sppm扩展到动态场景(maayanweissandthorstengrosch.2012.stochasticprogressivephotonmappingfordynamicscenes.computergraphicsforum31,2pt3(2012),719–726.),以有效地模拟动画对象和材料。tobias提出了一致的外核sppm算法(outofcoresppm),在系统中同时细分几何和跟踪光子,并分布在集群中的多台机器上(tobiasandthorstengrosch.2014.distributedout-of-corestochasticprogressivephotonmapping.computergraphicsforum33,6(2014),154–166.)。

由于偏差和噪声是pm方法的不可避免的问题,因此误差的量化变得极其重要。anton引入了局部自适应渐进式光子映射技术(antonskaplanyanandcarstendachsbacher.2013.adaptiveprogressivephotonmapping.acmtransactionsongraphics(tog)32,2(2013),16.),平衡了渲染图像中的噪声和偏置以最小化总误差。然而,它们的方法不能解决可见问题。针对split-sphere模型,jorge等人提出了一个针对辐照缓存的错误度量,它显著优于经典的启发式算法(schwarzhaupt,j.,jensen,h.w.,&jarosz,w.(2012).practicalhessian-basederrorcontrolforirradiancecaching.acmtransactionsongraphics(tog),31(6),193.)。

光子映射类型的方法虽然通常在处理复杂的光传输路径方面表现出色,但是仍然有大量的计算工作浪费在没有图像贡献的处理路径上,因此2017年adrien等人为了改善这一问题,重点改进光子密度估计时的光子路径采样,提出了一个metropolis光子采样器的目标函数,并给出了目标函数的理论推导,确保其在共享一组共同的样本(即路径)的多个估计器之间有一个大致相等的相对误差分布,从而提升路径的采样效率,减少图像绘制的噪声(adriengruson,ribardière,martinvorba,rémicozot,kadibouatouch,revealtheunderlyingrelationbetweenthedistributionandkernelandjaroslav2016.aspatialtargetfunctionformetropolisphotontracing.acmtransactionsongraphics(tog)36,1(2016),4.)。

pearsonchi-squaretest基本原理

皮尔森卡方测试(pearsonchi-squaretest,又简称卡方测试或者卡方检验),是一个统计学中针对离散多项分布的测试。设完备事件组a1,a2,...,ak,原假设为h0:p(ai)=pi,i=1,2,...,k。进行n次独立重复试验,事件出现的频数分别为o1,o2,...,ok,那么当n→∞时,卡方测试值趋向于χ2(k-1)分布。皮尔森卡方测试的拒绝域为即自由度为k-1的卡方分布的1-α分位。



技术实现要素:

渐进式光子映射方法(ppm)常常会形成一个渐进的绘制现象:即明暗变化的光照现象的边缘逐渐从模糊变得清晰,这个过程的变化速度以及最终渲染图像的质量,相当大的程度上依赖于光子收集区域的初始半径和半径收缩控制参数αc(0<αc<1);如果初始半径和参数αc过大,那么半径收缩会比较慢,明暗变化的边缘从模糊变清晰的过程会十分缓慢;另一方面,如果初始半径或参数αc过小,半径收缩过快,图像的瑕疵会变得十分明显。针对此问题,本发明提出一种新的渐进式半径收敛以及光子累积方法,通过对命中点收集半径内的光子的分布情况进行评估,采取相应的半径收缩策略和光照计算收敛的方法,从而减小过大的初始半径造成的偏差,并更为智能地控制半径收敛的速度。

本发明提出了一种新型的渐进式光子映射方法,光子收集时的采样半径采用一种新型的方式,即半径不会在每一个迭代步骤中都收缩,而是往往保持半径不变,只有在某些检测条件满足的条件下才进行半径收缩,但是本方法依然具有收敛性,且本发明的光照明计算的收敛速度更高;同时本方法可以节约不必要的分布式光线追踪步(distributedraytracingpass),从而减少时间消耗同时加快运行速度。

本发明提出了一种使用chi-squaretest(卡方检验)进行光子分布质量评估的方法,即采用统计的方法来进行光子分布质量的评估,可以评估光子分布与假设的理论分布模型之间的接近程度,本发明采用随机均匀分布作为假设的理论分布模型。基于卡方检测结果,指导渐进式光子映射中的半径收敛和光照计算。

本发明的技术方案为:

一种基于统计模型检验的渐进式光子映射方法,其步骤包括:

1)设定一用于确定光子收集的初始半径的光子数knn,设定每一光子步向场景中发射的光子的数量;

2)从视点出发向成像平面上每一个待计算的像素点发射射线并与待绘制三维场景求交,若在跟踪路径上找到具有漫反射属性的交点则将该交点记为命中点

3)执行光子步:31)执行光子追踪步骤,即模拟光源向场景中发射光子,追踪当前轮光子步发射的每一光子在场景中传播的过程,并记录下最终停留在物体表面的光子的各项属性信息,并基于所记录的光子形成一张或者多张光子图;32)对每一个命中点执行光子收集处理,即从所述光子图中收集得到在该命中点所在表面的周围邻域之内的光子;33)如果当前轮光子步不需要卡方检测,则进行光通量累积,并保持光子的收集半径不变;如果需要进行卡方检测,则通过对命中点邻域之内收集的光子分布执行卡方检测获得其质量评估的结果;然后根据评估出的光子分布的属性,计算得到迭代的下一轮光子步中光子收集半径,并执行当前轮光子步的光通量累积;34)判断光子收集半径是否发生改变,如果光子收集半径缩小,则生成新的命中点后进行分布式光线跟踪,然后转至步骤31),开始新一轮的光子步迭代;否则直接转至步骤31),开始新一轮的光子步迭代;其中,每一轮光子步迭代,根据当前累积的光通量进行光照计算得到当前轮的渲染结果。

进一步的,所述光子的各项属性信息包括光子所携带的能量,光子停留的空间位置,光子入射到最终停留的表面时的入射角及该表面的brdf。

进一步的,所述分布式光线跟踪方法为:从视点出发向成像平面上每一个待计算的像素点发射具有随机属性的采样射线并与待绘制三维场景求交,若找到具有漫反射属性的交点,则作为新生成的命中点。

进一步的,所述光子分布评估的方法为:

41)设命中点的当前光子收集半径为ri;将命中点的当前圆盘形光子收集区域划分成等面积的圆环,其中中心圆环的内圆内径为0;将每一圆环又划分成若干扇形;共得到n个扇形,标记为{s1,...,sn};

42)统计落在每一个扇形区域内的光子数目,记为{photons(s1),…,photons(sn)};

43)从内向外逐次对命中点的当前圆形光子收集区域内的每个子圆盘的落入光子数目进行卡方测试;设一个子圆盘c内共包含ns(c)个扇形,记为{s1,...,sns(c)},对应扇形面积标记为{a1,...,ans(c)},对应扇形内的落入光子数目记为{photons(s1),…,photons(sns(c))},nc为在该子圆盘c之内在当前光子步所收集的总光子数目,则该子圆盘c的卡方测试计算为其中,v(c)值代表了光子分布的属性,pi为光子落入所述ns(c)个扇形区域中的第i个扇形区域的概率,pi=ai/πr2,r为当前子圆盘c的半径,photons(si)为光子落入所述ns(c)个扇形区域中的第i个扇形区域内的光子数;根据v(c)值判断该子圆盘c内的光子分布被是否通过了卡方测试。

进一步的,所述步骤41)中,将每一圆环划分成若干个等面积的扇形。

进一步的,计算得到迭代的下一轮光子步中光子收集半径的方法为:对从内到外的任意一子圆盘c,定义该圆盘卡方检测的分位数quantile(c)=λ,其中λ满足则具有最小的λ值的子圆盘被认为其子圆盘之内的光子分布最符合随机均匀分布,将其对应的半径选为下一轮光子步中的光子收集半径,quantile(c)也代表了子圆盘c内光子分布与假设理论分布模型的匹配度。

进一步的,利用公式计算第i+1轮光子步的所述光通量累积;其中,为第i+1轮光子收集的半径,为第i轮光子收集半径,为第i轮光子步收集到的光子的光通量,为第i轮光子步之前累积的光通量。

与现有技术相比,本发明的有益效果是:

本发明在原有的渐进式光子映射方法的基础上提出了一种新型的更为智能的基于统计概率模型检测的收敛计算方法。渐进式光子映射是一种健壮的全局光照明算法,该算法可以计算相交点处的正确辐射亮度值,能够处理包括光线的sds(speculardiffusespecualr)传播路径的复杂光照现象。然而,以往渐进式光子映射(ppm)在半径评估时需要事先人为的设定一个经验初始半径和固定的半径收敛αc值,对一般场景的普适性不高,光照明收敛的速度也较慢,导致需要一个较长的迭代次数才能收敛出一个清晰的渲染结果。而本发明的方法可以智能地调控半径,在几乎不增加额外运行时间和空间的情况下,极大地提高收敛的速度,有效地减小过大的初始半径造成的偏差,快速地收敛得到一个清晰的渲染结果,同时本发明的方法也能防止半径一次收敛过多导致偏差的产生。在相同的mse(meansquareerror)误差控制条件下,本发明的方法往往比起sppm方法在收敛速度上提高了10倍,也就是说得到相同的绘制效果的情况下本发明方法的绘制速度比sppm方法快了10倍。同时本发明也可以根据绘制质量来智能的调节和定制不同的收敛速度,以根据视觉效果来优化绘制一帧图像的时间。

附图说明

图1为本发明方法流程图;

图2为光子收集区域半径收缩过程示意图。

具体实施方式

现结合附图对本发明进行进一步详细描述。

图1.本发明方法的流程图,其中虚线标注部分为本方法与其它方法完全不同之处。

本发明整个方法的流程如图1所示,其步骤包括:

1.设定本发明方法的一些初始值,其中包括设定一个knn值,该值能够确定出光子收集的初始半径,即通过knn(k-nearestneighbour,即k最近邻)方法进行搜索收集到knn个光子时的半径作为其初始收集半径;另外设定每一轮光子步(photonpass)向场景中发射的光子的数量;每一轮发生的光子数相同,ne(i)是i轮发射的总光子数。

2.首先执行光线跟踪步(eyepass),遵循光线跟踪的基本原理,从视点出发向成像平面上每一个待计算的像素点发射射线并与待绘制三维场景求交,若在跟踪路径上找到具有漫反射属性的交点则记为命中点

3.执行光子处理步骤(简称光子步photonpass),包含如下的子步骤:

1)首先执行光子追踪步骤(photontracing),即模拟光源向场景中发射一定数量的光子(该数量由步骤1所设定的光子数量决定),追踪所有光子在场景中传播的过程,并记录下最终停留在物体表面的这些光子,每个光子的各项属性信息包括光子所携带的能量(即光通量),光子停留的空间位置,光子入射到最终停留的表面时的入射角,该表面的brdf等,并把记录的光子形成一张或者多张记录这些光子在空间分布信息的光子图(photonmap)。

2)对每一个命中点执行光子收集(photoncollection),即收集在命中点所在表面的周围邻域之内的光子,该步骤通过对光子图的查找实现;

3)卡方检验并不是每一轮次都执行,而是间隔一定的轮次才执行,具体的间隔数值可由用户指定或者通过算法设定。如果当前轮次光子步不需要进行卡方检测,则直接跳转至子步骤6)光通量累积(fluxaccumulation)阶段,执行当前光子所携带的光通量与之前的光通量的累积,此过程中光子的收集半径并不收缩而是保持不变;否则进入下一个卡方检测进行光子分布评估的阶段;

4)在光子分布质量评估阶段,对以圆盘形式的命中点邻域之内收集的光子集合进行质量评估(对应distributionevaluationbychi-squaretest),具体的评估方式和步骤见后续的论述;

5)根据评估出的光子分布的属性,计算得到迭代的下一轮光子步(photonpass)中光子收集半径(对应bandwidthselectionandreduction);

6)根据该光子收集半径,执行光通量累积(fluxaccumulation),即将当前位于光子收集半径之内的光子所携带的光通量与之前轮次的光通量的进行累积;

7)根据光子收集半径是否发生改变来选择执行路径。如果光子收集半径缩小,则转至分布式光线跟踪步骤,从视点出发向成像平面上每一个待计算的像素点发射具有随机属性的采样射线并与待绘制三维场景求交,若找到具有漫反射属性的交点则作为新产生的命中点,然后转至光子追踪(photontracing)步骤,开始新一轮的迭代的光子步(photonpass),直至达到设定条件终止执行光子步;否则直接转至光子追踪photontracing步骤,开始新一轮的迭代光子处理步骤(photonpass),即重复执行上述从步骤1)开始的流程,直至达到设定条件终止执行光子步;当某个命中点的光子收集半径没有发生变化的时候,则不改变其命中点的位置,而是取上一轮的同一个命中点,并以此相同的半径来收集由新一轮的光子追踪所得到的新的光子,所以不需要执行分布式光线跟踪计算命中点。只有当半径发生改变(即缩小时),才利用分布式光线跟踪重新计算新的命中点。

8)累积的光通量通过光照明计算步骤得到对应位置的图像的各个像素的光照明值及其颜色,输出每个像素位置的颜色即可得到一幅最终渲染的图像。每一轮的迭代过程中,都可以通过光照计算输出当前轮的渲染结果。当迭代用户所设定的足够多的轮次之后,输出渲染结果,整个方法结束。

上述步骤是整个方法的完整流程,下面对其中的一些步骤进行更加详细的描述。

4.在分布式光线跟踪步骤中,本方法遵循与以往sppm相同的原理,产生对像素具有随机性质的采样点,从而从视点发射射线与场景相交;对于一个区域内的若干个采样点,

用共同的半径收集光子,并估计辐射度值和最终的光照明值。已经证明了,只要对于一个命中点的辐射度估计是正确的,那么对于多个命中点的辐射度估计也是正确的。

5.对上述步骤3.4)阶段的光子分布评估详细过程如下:

1)对于一个圆盘形状的光子收集区域(如图2左侧所示,命中点为具有光子收集半径为ri),将光子收集区域划分成等面积的圆环(最中心的圆环的内圆的内径为0),再将每一个圆环划进一步分成若干个扇形(每一层圆环划分成扇形的起始位置是随机的,相邻两层圆环之间的扇形分割线位置往往不相同),如图2中间展示了收集区域的划分成圆环和扇形的示意图。为了判断收集区域内的光子分布是否与均匀分布相似,光子收集区域可以随机任意划分,只要保证每个子区域具有随机性即可。但是将收集区域划分成圆环和扇形更方便,因为这样不需要重新记录所有光子的位置。经过划分之后,从圆内到外,形成了多个嵌套的子圆盘,最小的子圆盘是最内部的圆面,而最大的子圆盘就是整个圆盘(半径为ri)。需要特殊说明的是:如果上一轮中,命中点的半径收缩了,如图2右侧,这就意味着收集区域改变了,因此需要按照上述规则重新划分收集区域。对于一个命中点将其收集区域划分成多个圆环annulus(最中心的区域是一个圆),并将每个圆环再划分成多个扇形,将每个扇形内收集到的光子数量photons(s)重置为0;如果上一轮次pass中,命中点的半径没有发生收缩,则在当前轮次pass中圆环和扇形都不需要重新划分,只需要使用上一轮中的区域划分即可。

2)统计落在每一个扇形区域内的光子数目,具体来说,记一个圆盘内共有n个扇形,扇形分别标记为{s1,...,sn},统计落在每一个扇形内的光子数目记为{photons(s1),…,photons(sn)}。

3)从内向外逐个对每个子圆盘的光子数进行卡方测试,假设一个子圆盘c内的共有ns(c)个扇形,扇形分别标记为{s1,...,sns(c)},其扇形面积标记为{a1,...,ans(c)}(在本方法实例中,为了便于计算,设置成面积都相等,其实面积可以是任意的),统计落在每一个扇形内的光子数目记为{photons(s1),…,photons(sns(c))},nc为在该子圆盘c之内在当前轮次pass所收集的总光子数目,则该子圆盘c的卡方测试计算为:

其中pi为光子落入该ns(c)个扇形区域中的第i个扇形区域的概率,每个扇形区域的pi=ai/πr2(本发明假设的光子分布为随机均匀分布),而r为当前子圆盘c的半径,photons(si)为光子落入所述ns(c)个扇形区域中的第i个扇形区域内的光子数。v(c)值代表了光子分布的属性。如果其中α是一个设定的极小的常数,1-α表示χ2(ns(c)-1)函数的分位数,则该子圆盘c内的光子分布被认为通过了卡方测试,其光子分布是高质量的;否则被视为没有通过卡方测试,其光子分布质量较低。

针对3.5)中的半径选择与收缩步骤详细如下:

1)如果整个圆盘(即最外部的最大的子圆盘)中的光子通过了卡方测试,则意味着该圆盘之内的光子分布符合随机均匀分布的假设,其光子分布是满足生成高质量渲染图像条件的,则在下一轮光子步(photonpass)中,光子收集半径保持不变;

2)否则下一个photonpass的光子收集半径将发生改变,半径的选择依据为:对从内到外的每一个子圆盘c,定义该子圆盘卡方检测的分位数quantile(c)=λ(其中quantile(c)是子圆盘c内光子分布与假设理论分布模型的匹配度),其中λ满足则具有最小的λ值的子圆盘被认为其子圆盘之内的光子分布最符合随机均匀分布(即假设理论分布模型),因此该子圆盘的半径被选为下一轮中执行光子处理步骤(photonpass)时的光子收集半径。

步骤5光照明计算(radianceevaluation)详细步骤如下:

1)假设当前为第i轮光子追踪pass,则一个命中点在当前轮收集到的光子所获得的未归一化的光通量计算如下:

其中为在当前轮新收集到的光子数,为视线方向,为光子停留在物体表面时的入射方向,fr为表面的brdf(双向反射分布函数)的系数,φp为光子p所携带的光通量;

2)当前轮收集的光通量与之前轮累积的光通量的新累积光通量τ计算如下:

其中为ri和ri+1分别表示用于第i轮光子收集的半径和第i+1轮光子收集半径。

3)最终该采样点的辐射亮度l的计算公式如下:

其中,ne(i)表示经过i轮发射光子之后,所发射的光子的总数。上述辐射亮度的值即为光亮度值,由此可以计算出该采样点所对应的像素颜色。每个像素颜色确定之后即得到最终整个图像的颜色。

效果分析

本发明方法的效果是可以针对光子的分布采取更好地处理方式:

1)如果在一个命中点的收集区域内,光子的分布接近均匀的分布,那么让收集半径缩小得慢一些,收集到的光子会更多,有利于减少个别轮次的光子步(pass)收集的光子数偏离真实值带来的偏差,这样会使得场景的辐射度变化比较平滑,而人眼通常难以辨识其中心点的辐射度和收集区域内的平均辐射度。

2)如果在一个命中点的收集区域内,光子的分布有一个明显的突变,当半径在这个突变的界限之外时,收集的光子会带来偏差,收集得越多、偏差越大,因此应该尽快将半径缩小到界限之内。一个典型的情况是焦散现象的边缘。边缘附近的命中点的收集半径应尽快缩小,直到与焦散的边缘没有交,否则收集的光子会过多或过少,产生偏差。另一个典型的情况是几何体的边缘。ppm和sppm在这种情况下,由于刚开始半径超出了几何体的边缘,因此面积的估算是不正确的,使得边缘的辐射度偏小。同时,在一个焦散场景中,人眼对边界和明暗变化会较为敏感。使用chi-square检测对此进行区分,可以使得半径在前一种情况下收缩较慢,在后一种情况下收缩较快。这样一来,场景中焦散光斑的边缘的半径和几何体的边缘减小得会较快,在较短时间内变得清晰可见。

由于本发明通过判断命中点周围收集到的光子是否为均匀分布来决定是否收敛半径,因此本发明的算法可以很快地收敛到一个使得命中点周围光子满足均匀分布的情况,也就是说本发明的算法可以快速的收敛到一个趋近于最终收敛值的半径,这样就大大加速了半径收敛的进程本发明算法的另一个优势是半径收敛的快慢不受初始半径过大的影响,因为往往初始半径的设置会远远大于真实的收敛值,半径越大,离真实值越远,越难以被认为是均匀分布所以无论初始半径人为设置的是多大,本发明都可以快速地收敛到真实的光照明值。

本发明的工作通过一种求解均匀分布的方式,来加速渐进式光子映射方法的收敛,这种方法不依赖于初始半径的设置,能够更好的控制半径的收敛速度,使得本发明能快速的得到一个精确的渲染场景。同时,本发明的算法的具有收敛性质,同样也适用于sppm框架,在与ppm/sppm算法的比较中,本发明算法在绘制相同结果的效率上远远高于这些主流的方法,尤其是在焦散场景下能够得到更加精确的边缘信息,使得人眼所关注的边界与明暗绘制的更加清晰,符合人眼的视觉观察需求。

本发明的方法(标记为cppm)与sppm的绘制效果对比,采用相同的发射光子数(5billion)时,即采用相同的迭代的轮数passes,本发明的方法效果明显优于sppm;本方法采用5billion光子的绘制效果与sppm采用50billion光子的绘制效果类似,并接近最终的groundtruth绘制结果。

本发明的好处,可以通过与其它的方法比较而得出:

1)在表1中,ppm(toshiyahachisuka,shinjiogaki,andhenrikwannjensen.2008.progressivephoton1503mapping.acmtransactionsongraphics(tog)27,5(2008),130.),sppm(toshiyahachisukaandhenrikwannjensen.2009.stochasticprogressivephotonmapping.acmtransactionsongraphics(tog)28,5(2009),141.),msppm(adriengruson,ribardière,martinvorba,rémicozot,kadibouatouch,andjaroslav2016.aspatialtargetfunctionformetropolisphotontracing.acmtransactionsongraphics(tog)36,1(2016),4.),appm(antonskaplanyanandcarstendachsbacher.2013.adaptiveprogressivephotonmapping.acmtransactionsongraphics(tog)32,2(2013),16.)皆是本领域的经典有代表性的方法,而cppm为本发明的方法。

表1为本发明方法与其它经典方法在8个基准实验测试中的比较的结果

其中benchmark为基准实验,box,torus,diamond,cornellbox,sponza,clock,sibenik,conference为这8个基准实验的名称;iterations表示测试统计出的迭代的轮次数;times为测试统计出的耗费时间;mse表示生成图像与目标图像之间的均方误差。本表说明了在指定的均方误差值的条件下本发明所述方法往往需要较少的迭代次数,同时所花费的时间要远远少于其它的方法,也就是说我们花费很少的时间代价就能够达到与其它方法相同的绘制的图像质量。

虽然以上描述了本发明的具体实施方式,但是本领域的技术人员应当理解,这些仅是举例说明,本发明的保护范围是由所附权利要求书限定的。本领域的技术人员在不背离本发明的原理和实质的前提下,可以对这些实施方式做出多种变更或修改,但这些变更和修改均落入本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1