CN101826214B - 一种基于光子映射的全局光照方法 - Google Patents

一种基于光子映射的全局光照方法 Download PDF

Info

Publication number
CN101826214B
CN101826214B CN2010101381017A CN201010138101A CN101826214B CN 101826214 B CN101826214 B CN 101826214B CN 2010101381017 A CN2010101381017 A CN 2010101381017A CN 201010138101 A CN201010138101 A CN 201010138101A CN 101826214 B CN101826214 B CN 101826214B
Authority
CN
China
Prior art keywords
photon
scene
body surface
light
information
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.)
Expired - Fee Related
Application number
CN2010101381017A
Other languages
English (en)
Other versions
CN101826214A (zh
Inventor
罗笑南
孟思明
杨彪
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sun Yat Sen University
Original Assignee
Sun Yat Sen University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Sun Yat Sen University filed Critical Sun Yat Sen University
Priority to CN2010101381017A priority Critical patent/CN101826214B/zh
Publication of CN101826214A publication Critical patent/CN101826214A/zh
Application granted granted Critical
Publication of CN101826214B publication Critical patent/CN101826214B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/50Lighting effects
    • G06T15/506Illumination models

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Generation (AREA)

Abstract

本发明公开了一种新的基于光子映射的全局光照方法,本发明属于图像处理技术领域。本发明方法的步骤主要包括:(1)光源向场景随机发射光子;(2)判断发射后的光子状态;(3)根据物体表面的信息递归跟踪光子;(4)保存光子信息;(5)进行渲染场景,包括将蒙特卡罗反向追踪方法与原光子映射方法相结合使用来进行渲染场景。使用本发明的技术方案,可以使得运行速度、渲染效果,以及使用的存储空间等方面得到一定的改进。

Description

一种基于光子映射的全局光照方法
技术领域
本发明属于图像处理技术领域,具体涉及一种基于光子映射的全局光照方法。
背景技术
全局光照方法正是图形学中的三大渲染技术之一。在提出基于光子映射的全局光照方法之前,主流的全局光照渲染方法是光线跟踪和辐射度方法,早期的光线跟踪方法只能处理镜面反射、折射以及直接光照,随着蒙特卡罗的方法对光线跟踪方法进行的扩展,使得光线跟踪方法可以处理焦散、间接光照等效果,这种方法对每条光线使用随机的光线分布,要得到满意的图像需要对光线进行大量的采样。光线跟踪虽然简单、强大、易实现,但真实世界的很多东西无法很好地处理。
比如:Color Bleeding一一辉映,物体间因为光线的漫反射而互相影响颜色,Casuties-焦散,即光通过透明物体的折射被汇聚在一起的现象。直到1993年,光子映射被提出之前,光线跟踪都无法有效解决这两个问题,而光子映射对这两个问题提供了良好的解决方案。用光子映射方法,这类漫反射面的间接光照造成的光照可以用预计算的光子图(Photonmap)来估计。将光线跟踪扩展为光子映射,可以产生一种能解决任何直接或间接光照的方法。而且光子映射也能处理中间介质(participatingmedia)情况。
基于光子映射的全局光照方法一般包括两步:
第一步,从光源向场景发射光子,并且在它们磁到镜面物体时发生反射,在碰到非镜面物体时按一定几率反射,将不发生反射的光子保存在一个光子图(photonmap)中,建立光子图。光子图表示了光源发出的能量在场景中的分布。
第二步,渲染,使用统计方法从光子图中提取出场景中所有点的入射通量以及反射辐射能。光子图与场景表述是完全分离开的,这一特性使得光子映射方法能处理很复杂的场景,包括千万个三角面片,实例化的几何体,复杂的过程式物体。
与有限元辐射度方法相比,光子映射的优势是不用进行网格处理。简单场景下辐射度的速度可以很快,但一旦场景复杂,辐射度速度就远远落后于光子映射了,而且光子跟踪还能处理非漫射表面及焦散,辐射度就办不到。和光线跟踪、双向光线跟踪这些能用很少的内存开销模拟所有全局光照效果的MonteCarfo光线跟踪方法相比,光子映射的最大优点就是高效,不过代价是需要额外的内存存放光子图。
发明内容
本发明的目的在于提供一种新的基于光子映射的全局光照方法,能使得运行速度、渲染效果,以及使用的存储空间等方面得到一定的改进。
本发明提供的技术方案如下:
本发明提供一种基于光子映射的全局光照方法,包括以下步骤:
(1)光源向场景随机发射光子;
(2)判断发射后的光子状态;
(3)根据物体表面的信息递归跟踪光子;
(4)保存光子信息;
(5)进行渲染场景,包括将蒙特卡罗反向追踪方法与原光子映射方法相结合使用来进行渲染场景。
优选的,根据物体表面的信息递归跟踪光子具体为:
在第一路运程里,跟踪光子运动时根据物体表面的全部光照特性来保存光子,并进行递归跟踪。
优选的,在光子映射方法的第一路运程中,采用根据物体表面所拥有的各种不同特性,分别反射不同类型的光子的方式。
优选的,将光子打中一个物体表面时,能量=原光子能量/交点到光源的距离。
优选的,所述进行渲染场景包括:
步骤1:从视角开始向场景中发射反向追踪光线;;
步骤2:当光线打中物体表面时,先根据物体表面的漫反射特性计算直接光照,然后根据物体表面的镜面反射特性和折射特性分别计算反射和折射光照,最后根据光子图计算间接光照;
步骤3:在根据光子图计算间接光照的过程中,根据光子的坐标信息在光子图中搜索离它最近的设定数量的光子,并将这部分光子的能量叠加到交点处的光子能量上;
步骤4:将直接光照,反射光照,折射光照和间接光照叠加到一起作为交点处的光照信息进行渲染;
步骤5:保存得到的光照信息,并计算下一个像素点的光照信息,跳转至步骤1。
上述技术方案可以看出,本发明的益处在于:
通在最初的光子映射方法的基础上进行探索,通过将原方法进行部分修改并将修改后的方法与原方法进行比较来试图到一个改进后的方法,并在运行速度,渲染效果,以及使用的存储空间等方面得到一定的改进。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1是本发明新的基于光子映射的全局光照方法的第一流程图;
图2是本发明新的基于光子映射的全局光照方法的第二流程图;
图3是本发明光子打中物体表面后所需要记录的信息图;
图4是本发明复合场景渲染图;
图5是本发明漫反射场景渲染图;
图6是本发明镜面反射场景渲染图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
下面结合附图对本发明方法作详细描述。
本发明提供一种新的基于光子映射的全局光照方法,能在运行速度,渲染效果,以及使用的存储空间等方面得到一定的改进。
本发明提供的基于光子映射的全局光照方法,具体来说利用PhotonMapping方法来模拟场景中的全局光照效果,而光线跟踪方法则用于最终对场景的采样以及对镜面反射和透射效果的计算。PhotonMapping是一种2路方法,在第1路中,光子从光源发出,当该光子与场景中的非镜面反射对象相交时将该光子存储到光子图(Photon map)中;第2路是渲染路,该路通过光线跟踪方法对场景进行采样,利用光子图中存储的相关信息来计算出采样点处的反射光强值,从而对整个场景的全局光照效果进行绘制。
本发明的改进方法主要包括以下几个部分:
1)采用物体表面的全部信息跟踪光子
在光子映射方法的第一路运程中,提出一种新的对于跟踪光子的处理方式。即在进行光子追踪的过程中,不再采用***的方式来决定对该光子做何处理如,反射,折射和保存等,而采用根据物体表面所拥有的各种不同特性,分别反射不同类型的光子的方式。这样可以,充分的体现出物体表面的各种属性而不只是依照一定概率反映一种属性,增强渲染效果。
2)采用一种新的光子能量计算方法
在传统的光子映射方法中:光源发射出的光子初始能量=光源能量/发射的光子个数。
在本发明方法中:
光源发射出的光子初始能量=光源能量
而每次光子打中一个物体表面时:
能量=原光子能量/交点到光源的距离。
3)将光子映射方法与蒙特卡罗反向追踪方法结合使用
将蒙特卡洛反向光线追踪方法与光子映射方法结合起来共同进行渲染。传统的光子映射方法在渲染复杂效果上较好,但是在运行速度和效率上较低,而蒙特卡洛反向光线追踪方法与之正好相反。
因此,在本发明中的光子映射方法第一运程里面依旧使用原有的光子图,而在第二路运程中采用蒙特卡洛反向追踪方法的颜色渲染方法,将光照效果分为各种不同的部分,分别计算,并且在计算时使用第一路中生成的光子图数据结构。
以下结合附图对本发明方法进行详细介绍。
如图1所示是基于光子映射的全局光照改进方法的流程图,主要包括以下步骤:
(1)光源向场景随机发射光子
在本发明中所指的光子路径主要是通过计算从光源进行路径跟踪而打到物体表面时候的坐标信息。通过在光源处的一个随机函数随机的生成光子发射的方向。
(2)判断发射后的光子状态
在本发明中,对步骤(1)中所确定的随机方向而发射的光线进行跟踪,并判断是或否与场景中的物体有交点。如果有,则记录下交点处物体的信息以及交点的坐标和发向量等信息。如果没有,则丢弃该光子。
在附图中3中可以看到光子打中物体表面后所需要记录的信息。如图3所示,信息包括:交点坐标、交点法向量、交点处物体的漫反射系数、交点处物体的镜面发射系数、交点处物体的折射系数。
(3)根据物体表面的信息递归跟踪光子
在本发明中,光子打中物体表面后将根据物体表面的信息进行反射或折射跟踪。而在针对光子打中的物体具有复杂信息的情况,没有采用传统的***的方法来根据概率决定采用何种跟踪,而是根据打中物体表面的全部信息分别进行递归跟踪。
(4)保存光子信息
在本发明中,当光子从光源发射出而打中物体表面时,需要将一些必要的信息保存进光子图,而其中一个重要的信息就是光子的能量。
初始发射时光子的初始能量=光源能量。
而每次光子打中一个物体表面时:
能量=原光子能量/交点到光源的距离。
这样将距离因素考虑进光子能量的计算,更真实的展现了场景中的光照信息。
(5)渲染场景
在本发明中的第二路运程中主要实现场景的渲染。
在渲染时主要采用将蒙特卡洛反向追踪方法与光子映射方法结合使用来渲染场景,同时也使用了在第一路运程所生成的光子信息,整个渲染过程分为以下几个步骤,如图2所示:
步骤1:从视角开始向场景中发射反向追踪光线。
步骤2:当光线打中物体表面时,先根据物体表面的漫反射特性计算直接光照,然后根据物体表面的镜面反射特性和折射特性分别计算反射和折射光照,最后根据光子图计算间接光照。
步骤3:在根据光子图计算间接光照的过程中,将会根据光子的坐标信息在光子图中搜索离它最近的一定数量的光子,并将这部分光子的能量叠加到交点处的光子能量上。
步骤4:将直接光照,反射光照,折射光照和间接光照叠加到一起作为交点处的光照信息进行渲染。
步骤5:保存得到的光照信息,并计算下一个像素点的光照信息,跳转至步骤1.
步骤6:结束。
这样,通过第一路运程中生成的光子图和第二路运程中的渲染过程就可以对一个虚拟场景进行真实的光照效果渲染。在附图4、5、6中分别显示了改进后的全局光照方法对于不同场景的渲染效果。图4是本发明复合场景渲染图;图5是本发明漫反射场景渲染图;图6是本发明镜面反射场景渲染图。
上述技术方案可以看出,本发明的益处在于:通在最初的光子映射方法的基础上进行探索,通过将原方法进行部分修改并将修改后的方法与原方法进行比较来试图到一个改进后的方法,并在运行速度,渲染效果,以及使用的存储空间等方面得到一定的改进。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁盘或光盘等。
以上对本发明实施例所提供的一种基于光子映射的全局光照方法,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (3)

1.一种基于光子映射的全局光照方法,其特征在于,包括以下步骤:
(1)光源向场景随机发射光子;
(2)判断发射后的光子状态;
(3)根据物体表面的信息递归跟踪光子;
(4)保存光子信息;
(5)进行渲染场景,包括将蒙特卡罗反向跟踪方法与原光子映射方法相结合使用来进行渲染场景,
步骤(3)所述根据物体表面的信息递归跟踪光子具体为:
在第一路运程里,跟踪光子运动时根据物体表面的全部光照特性来保存光子,并进行递归跟踪;
步骤(5)所述进行渲染场景包括:
步骤1:从视角开始向场景中发射反向跟踪光线;
步骤2:当光线打中物体表面时,先根据物体表面的漫反射特性计算直接光照,然后根据物体表面的镜面反射特性和折射特性分别计算反射和折射光照,最后根据光子图计算间接光照;
步骤3:在根据光子图计算间接光照的过程中,根据光子的坐标信息在光子图中搜索离它最近的设定数量的光子,并将这部分光子的能量叠加到交点处的光子能量上;
步骤4:将直接光照,反射光照,折射光照和间接光照叠加到一起作为交点处的光照信息进行渲染;
步骤5:保存得到的光照信息,并计算下一个像素点的光照信息,跳转至步骤1。
2.根据权利要求1所述的基于光子映射的全局光照方法,其特征在于:
在光子映射方法的第一路运程中,采用根据物体表面所拥有的各种不同特性,分别反射不同类型的光子的方式。
3.根据权利要求1所述的基于光子映射的全局光照方法,其特征在于:
将光子打中一个物体表面时,能量=原光子能量/交点到光源的距离。
CN2010101381017A 2010-03-29 2010-03-29 一种基于光子映射的全局光照方法 Expired - Fee Related CN101826214B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2010101381017A CN101826214B (zh) 2010-03-29 2010-03-29 一种基于光子映射的全局光照方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2010101381017A CN101826214B (zh) 2010-03-29 2010-03-29 一种基于光子映射的全局光照方法

Publications (2)

Publication Number Publication Date
CN101826214A CN101826214A (zh) 2010-09-08
CN101826214B true CN101826214B (zh) 2012-06-27

Family

ID=42690119

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2010101381017A Expired - Fee Related CN101826214B (zh) 2010-03-29 2010-03-29 一种基于光子映射的全局光照方法

Country Status (1)

Country Link
CN (1) CN101826214B (zh)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2461587A1 (en) * 2010-12-01 2012-06-06 Alcatel Lucent Method and devices for transmitting 3D video information from a server to a client
CN102074038B (zh) * 2010-12-28 2013-01-30 长春理工大学 一种由光滑表面折射产生的3d虚拟场景面焦散效果的绘制方法
CN102981840A (zh) * 2012-11-08 2013-03-20 苏州两江科技有限公司 基于光子映射图的整体光照计算机模拟处理方法
CN103995700A (zh) * 2014-05-14 2014-08-20 无锡梵天信息技术股份有限公司 一种3d游戏引擎全局照明的实现方法
CN104183009B (zh) * 2014-08-25 2017-01-18 北京航空航天大学 一种基于场景光照图的大场景非直接光照方法
CN104658029B (zh) * 2015-01-29 2017-06-20 浙江传媒学院 基于mcmc的镜面光线的渲染方法
CN104714784B (zh) * 2015-03-30 2017-06-16 山东大学 用于mic架构协处理器的光子映射并行方法
CN106469462B (zh) * 2015-08-17 2019-05-21 北京大学 一种三维场景辐射亮度的渐进式估算方法
CN105447905B (zh) * 2015-11-17 2018-03-06 长春理工大学 基于可见性平滑滤波的三维场景近似柔和阴影绘制方法
CN107452048B (zh) 2016-05-30 2019-03-12 网易(杭州)网络有限公司 全局光照的计算方法及装置
US10249075B2 (en) * 2016-06-03 2019-04-02 Siemens Healthcare Gmbh Presampled photon maps for Monte-Carlo volume renderings
CN106780708A (zh) * 2016-11-23 2017-05-31 北京三体高创科技有限公司 一种基于模拟折射和全局光照的3d模型渲染方法及***
EP3618006B1 (en) * 2017-05-19 2022-05-04 Huawei Technologies Co., Ltd. Image processing method and apparatus
CN109509246B (zh) * 2018-03-25 2022-08-02 哈尔滨工程大学 一种基于自适应视线划分的光子图聚类方法
CN108961372B (zh) * 2018-03-27 2022-10-14 北京大学 一种基于统计模型检验的渐进式光子映射方法
CN110225332A (zh) * 2019-05-31 2019-09-10 吉林大学 一种基于光子映射的立体元图像阵列生成方法
CN113096248B (zh) * 2021-03-30 2022-05-03 北京大学 基于共享显存优化的光子收集方法和光子映射渲染方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7221365B1 (en) * 2004-11-23 2007-05-22 Autodesk, Inc. System and method for distributing photons when rendering an image using photon mapping
CN101477705A (zh) * 2009-01-05 2009-07-08 浙江大学 基于光照球模型的计算机辅助人物动画艺术化绘制方法
CN101606181A (zh) * 2006-07-24 2009-12-16 迈克尔·邦内尔 用于实时渲染带有全局光照的可变形几何形状的***和方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7990380B2 (en) * 2004-09-30 2011-08-02 Intel Corporation Diffuse photon map decomposition for parallelization of global illumination algorithm
US8102391B2 (en) * 2008-04-11 2012-01-24 International Business Machines Corporation Hybrid rendering of image data utilizing streaming geometry frontend interconnected to physical rendering backend through dynamic accelerated data structure generator

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7221365B1 (en) * 2004-11-23 2007-05-22 Autodesk, Inc. System and method for distributing photons when rendering an image using photon mapping
CN101606181A (zh) * 2006-07-24 2009-12-16 迈克尔·邦内尔 用于实时渲染带有全局光照的可变形几何形状的***和方法
CN101477705A (zh) * 2009-01-05 2009-07-08 浙江大学 基于光照球模型的计算机辅助人物动画艺术化绘制方法

Also Published As

Publication number Publication date
CN101826214A (zh) 2010-09-08

Similar Documents

Publication Publication Date Title
CN101826214B (zh) 一种基于光子映射的全局光照方法
Jensen Realistic image synthesis using photon mapping
KR101545039B1 (ko) 광선 추적법을 이용하는 렌더링 시스템 및 방법
JP5650273B2 (ja) レイトレーシングシェーダapiのためのシステム及び方法
US7937245B2 (en) Rendering of subsurface scattering effects in translucent objects
US8234234B2 (en) Utilizing ray tracing for enhanced artificial intelligence path-finding
Christensen et al. Ray differentials and multiresolution geometry caching for distribution ray tracing in complex scenes
US8284195B2 (en) Cooperative utilization of spatial indices between application and rendering hardware
Jensen et al. High quality rendering using ray tracing and photon mapping
CN104700448A (zh) 一种基于梯度的自适应光子映射优化算法
CN104392480B (zh) 以内外存交换方式实现基于点的全局光照效果的渲染方法
Jensen et al. A practical guide to global illumination using photon mapping
CN102981840A (zh) 基于光子映射图的整体光照计算机模拟处理方法
Barta et al. Order independent transparency with per-pixel linked lists
Jarosz et al. Advanced global illumination using photon mapping
Wenzel Real-time atmospheric effects in games
CN109509246A (zh) 一种基于自适应视线划分的光子图聚类方法
Lohrmann Energy-efficient interactive ray tracing of static scenes on programmable mobile gpus
Sikachev et al. Next-Generation Rendering in Thief
Boudet et al. Low memory spectral photon mapping
Olsson et al. Improved ray hierarchy alias free shadows
Ou Globally Illuminated Anisotropic Lighting Models with an Enhanced Hemi-cube Sampling Technique on A GPU
Hansen et al. Rendering Decals and Many Lights with Ray Tracing Acceleration Structures
Halladay et al. Lighting in Depth
Steinhurst Practical photon mapping in hardware

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C53 Correction of patent for invention or patent application
CB03 Change of inventor or designer information

Inventor after: Luo Xiaonan

Inventor after: Meng Siming

Inventor after: Yang Biao

Inventor before: Luo Xiaonan

Inventor before: Yang Biao

COR Change of bibliographic data

Free format text: CORRECT: INVENTOR; FROM: LUO XIAONAN YANG BIAO TO: LUO XIAONAN MENG SIMING YANG BIAO

C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20120627

Termination date: 20150329

EXPY Termination of patent right or utility model