一种无偏的光子映射绘制方法

文档序号:9397545阅读:682来源:国知局
一种无偏的光子映射绘制方法
【技术领域】
[0001] 本发明涉及图形绘制技术领域,尤其涉及一种光子映射的绘制方法。
【背景技术】
[0002] 本发明相关的研究背景简述如下:
[0003] 一、光子映射
[0004] 光子映射的核心思想是利用光子的密度来估计局部的光能,具体可参 考 JENSEN, H.ff.2001.Realistic Image Synthesis Using Photon Mapping. A. K. Peters,Ltd.,Natick,MA,USA。光子收集的局部性使得该方法对于具有挑战性的 焦散以及多次反射的间接光照特别有效。此外,光子映射可以重用光子所对应的光 路,从而减小了采样的代价。密度估计可以有效地降低噪声,但是同时也会给最终的 结果引入偏差,因此之前所有的光子映射方法都是有偏的。虽然最新的一系列渐进光 子映射算法可以在光子数量无限的时候一致收敛到正确的结果,具体方法可以参考 HACHISUKA, T. , OGAKI, S. , AND JENSEN, H. ff. 2008. Progressive photon mapping. ACM Trans. Graph. 27, 5 (Dec.), 130:1 - 130:8 ;KNAUS, C. ,AND ZffICKER1M. 2011. Progressive photon mapping:A probabilistic approach. ACM Trans. Graph. 30, 3 (May), 25:1 - 25:13 ; HACHISUKA, T. , AND JENSEN, H. ff. 2009. Stochastic progressive photon mapping. ACM Trans. Graph. 28, 5 (Dec. ), 141:1 - 141:8 ;KAPLANYAN, A. S. , AND DACHSBACHER, C. 2013. Adaptive progressive photon mapping. ACM Trans. Graph. 32, 2 (Apr.),16:1 - 16:13。 但是无一例外的这些方法在任意有限时间内的结果都是有偏的,而我们的方法自始至终 都能得到无偏的绘制结果。也有工作通过多重重要性采样将有偏的光子映射与双向光 线跟踪相结合,参考 V0RBA,J. 2011. Bidirectional photon mapping. In Proc. of the Central European Seminar on Computer Graphics(CESCG 11) ;T0KUY0SHI, Y. 2009. Photon density estimation using multiple importance sampling. In ACM SIGGRAPH ASIA2009Posters, ACM, New York, NY, USA, SIGGRAPH ASIA' 09, 37:1 - 37:1。而我们的工作 改进了之前的多重重要性采样,首次使之将无偏的光子映射与其他的采样技术相结合。
[0005] 二、双向光线跟踪以及多重重要性采样
[0006] Kajiya在1986年提出的渲染方程是对于光能传播的物理规律的数学描述,该 方程是一个多重积分,可以通过蒙特卡洛的方法求解,该渲染方程可以参见KAJIYA,J. T. 1986. The rendering equation. SIGGRAPH Comput. Graph. 20, 4(Aug. ),143 - 150。双向 光线跟踪则是通过分别采样视线以及光线,并将两条光路相连的方法来对完整的光路进 行采样。该方法对于室内场景以及有限大小的光源和相机特别有效,具体方法可以参见 LAFORTUNE, E. P. , AND WILLEMS, Y. D. 1993. Bi-directional path tracing. In Proceedings of CompuGraphics, vol. 93, 145 - 153 ;VEACH, E. , AND GUIBAS, L J. 1994. Bidirectional estimators for light transport. In Proceedings of the Fifth Eurographics Workshop on Rendering, Eurographics, 147 - 162。
[0007] 之后多重重要性采样也被Veach等人提出,当时主要用于在双向光线跟踪之中结 合各种光路不同的连接方式,参见VEACH,E. 1998. Robust Monte Carlo Methods for Light Transport Simulation. PhD thesis, Stanford, CA, USA. AAI9837162。光子映射和双向光线 跟踪都是通过连接视线和光线形成完成的光路采样。相比于双向光线跟踪而言,光子映射 由于视线终点和光子非常接近,因此在采样比较复杂的焦散和多次反射的间接光照比较有 优势;然而在直接光照等情况下,双向光线跟踪则更加有效。因此这两种方法在不同的类 型的光路采样中是互补的,具体可以参见HASAN ' M.,KRIV~ANEf,J.,WALTER, B.,AND BALA, K. 2009. Virtual spherical lights for many-light rendering of glossy scenes. ACM Trans.Graph.28, 5(Dec. ), 143:1 - 143:6 ;V0RBA, J. 2011. Bidirectional photon mapping. In Proc. of the Central European Seminar on Computer Graphics(CESCG 11)〇
[0008] 三、统一采样
[0009] 顶点合并(Vertex Merging)将光子映射重新定义为一个光路以一定概率进行 双向连接的过程,其中连接的概率由被连接的两点之间的距离所决定,GE0RGIEV,I. ,KRIV ANEKr ,J.,DAVIDOVIC, T. , AND S LUSALLEK, P. 2012. Light transport simulation with vertex connection and merging. ACM Trans. Graph. 31, 6(Nov.), 192:1 - 192:10。统一光 路采样(Unified Path Sampling)则是同一个问题的另一种角度,该工作将双向光线跟踪 认为是一种光子和视线终点完全重合的光子映射

【发明内容】

[0010] 本发明的目的在于针对现有技术的不足,提供一种无偏的光子映射绘制方法,在 充分发挥光子映射绘制方法高效率的同时,消除了困扰该方法已久的误差问题。不但在理 论上突破了原有光子映射方法的局限,并且具有很高的实用价值。
[0011] 本发明的目的是通过以下技术方案来实现的:一种无偏的光子映射绘制方法,包 括以下步骤:
[0012] (1)输入三维场景文件,并对三维场景文件进行解析;所述三维场景文件包括物 体的几何信息、材质以及贴图、灯光信息和相机设置;
[0013] (2)绘制初始化,对三维场景建立空间加速结构;
[0014] (3)开始绘制图像,根据用户指定的采样数量或者绘制时间开始执行采样循环; 每个采样循环内对所有像素分别进行一个采样的绘制;每个采样循环内的计算过程包括以 下子步骤:
[0015] (3. 1)进行光子的采样:光线从光源发射出来之后,在场景中进行一系列的反射 折射;光线每一次的反射折射发生时,在该位置创建一个光子,并将光线当时携带的能量, 以及当前光线反射次数的信息记录在该光子中;当所有的光线在场景中遍历完毕,得到一 批光子,然后对这些光子建立空间加速结构;
[0016] (3. 2)进行视线的采样:视线的采样数量与光线一致,等于像素的个数;视线发射 后同样在场景中进行遍历,每次在物体表面进行反射折射时,在反射折射点周围半径为d 的球体范围内收集光子;之后对于每个光子建立一条光路,并对其光通量进行无偏估计,无 偏估计的过程如下:
[0017] (3.
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1