CN109509246B - 一种基于自适应视线划分的光子图聚类方法 - Google Patents
一种基于自适应视线划分的光子图聚类方法 Download PDFInfo
- Publication number
- CN109509246B CN109509246B CN201910041758.2A CN201910041758A CN109509246B CN 109509246 B CN109509246 B CN 109509246B CN 201910041758 A CN201910041758 A CN 201910041758A CN 109509246 B CN109509246 B CN 109509246B
- Authority
- CN
- China
- Prior art keywords
- photon
- photons
- clustering
- value
- density
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/005—General purpose rendering architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
- G06F18/232—Non-hierarchical techniques
- G06F18/2321—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
- G06F18/23211—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with adaptive number of clusters
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/50—Lighting effects
- G06T15/506—Illumination models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/50—Lighting effects
- G06T15/55—Radiosity
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Graphics (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Artificial Intelligence (AREA)
- Probability & Statistics with Applications (AREA)
- Image Generation (AREA)
Abstract
本发明一种基于自适应视线划分的光子图聚类方法提出预缓存和聚集替换的光子映射光线计算方法和自适应视线划分的光子图聚类方法相结合来达到优化光子映射算法的目的,具体采用如下步骤:(1)光线追踪阶段,获取场景,得到光线追踪阶段的光子图;(2)自适应视线划分阶段,由光子密集区自适应视线划分三个等级对光子进行聚类;(3)预缓存阶段,对聚类后的光子进行采样,得到其辐射度估计值进行预缓存到文件中;(4)聚焦渲染阶段,对交点值、焦散光子值和直接光照值进聚集渲染,优化光子映射,提升图像渲染效率和真实感。
Description
技术领域
本发明属于计算机图形学真实感渲染领域,具体涉及一种面向水下光影效果的自适应视线划分的光子图聚类方法。
背景技术
随着计算机硬件和软件能力的不断提升,虚拟现实和增强现实得到了快速的发展。其中虚拟环境中的自然景物的高度仿真化研究是其研究的重点和热点,例如对于实体的高仿真建模,对于物理运动的特性仿真以及场景中的光影效果的实现。同时计算机图形学随之得到了极大的发展,对于高品质和高速度的真实感图形图像成为了计算机图形学研究人员的一个主要科研方向。
对于这些应用在自然场景中的虚拟技术的良好发展与应用,高真实感的图形渲染发挥着不可或缺的作用。目前在计算机图形学中,主要有三大渲染技术:光线跟踪技术、缓冲技术和辐射度技术。目前这三种渲染技术有了极大发展和延伸,故而在不用的处理方向上有着大量的具体实现的方法。总的来说三大渲染技术应用于不同的实现领域,光线跟踪技术和辐射度技术主要使用于自然界静态场景的真实感渲染领域,而缓冲技术主要使用于自然界中动态场景中的实时绘制领域。
在光线跟踪的图形渲染技术中,光线跟踪方法虽然简单、强大、易实现,但真实世界的很多东西无法很好地处理,例如,自然景物之间光线漫反射导致的颜色相互影响问题—辉映问题和自然光线通过水或者玻璃等透明物体的折射聚集在一起的影响问题—焦散问题。光子映射算法作为光线跟踪技术中一种延伸扩展的实现算法,可以有效地渲染焦散、颜色渗透和中间介质,在解决漫反射的间接光照造成的颜色渗透问题时,可以用预计算的光子图来估计。光子映射要结合最终聚集算法来优化渲染的质量,而最终聚集算法在运行时要一遍遍不停地对光子图进行查找操作,提出了利用预计算辖射度的方式对光子映射算法进行加速,这种算法将预计算的辐射照度值保存到光子图中,从而使得最终聚集阶段可以直接读取光子图中的辐射照度,而不必再对光子图进行搜索查找,从而使光子映射算法整体的速度提高了,达到其自然物体的真实感渲染的效果。
光子映射算法常用于有效地计算全局光照,其算法中的光子图中保存的是独立于自然场景的照明点集的光子,因此在光子映射算法中光子图聚类是其重要部分,其光子的分布密度关乎于映射成像渲染的真实感。在全局光照的计算中,很多算法都用到了密度估计来计算间接光照,密度估计都是基于对场景中随机生成的点或粒子进行采样,而代表光线传播的粒子都是随机地从光源发出并在场景中反射,这会使得光子分布不能理想的均匀分布,因此采样过程中难免会引入噪声,反过来又会对密度估计的结果产生影响。因而对于光子密度控制的方法,根据场景中的局部性的特殊要求,选择性地存储光子图,可以对场景中不重要的或者光子密度过大的区域减少光子的数量,达到减少光子图的存储大小并优化光子分布的效果,是目前对于光子映射中光子聚类研究的重点和热点。
总结现有研究成果发现,针对水下光影效果的光子图聚类的研究面临如下关键问题亟需解决:
(1)水下光束生成模型的真实感有待进一步提高,针对光子映射的水下光线计算的效率的方法,常见的计算方法是预计算针对光子渲染中级介质的方法计算其传播速度,但是其方法计算速度快其稳定性以及内存占用率较大,多利用了复杂的层次结构和索引算法。
(2)对光子映射算法优化的方法有很多,但大多都是对密度估计阶段进行的优化,密度估计都是基于对场景中随机生成的点或粒子进行采样,这样并不能使光子达到理想的均匀分布,且在其光子计算采样的过程中难免会混入噪声点,对其光子图进行干扰,影响其密度估计的效果。
(3)在光子映射算法中传统光子图聚类方法中光子聚类密度通常都是固定的,存在不能根据视线反射折射次数而划分光子图的问题,因而在反射折射镜面增加的情况下传统的光子图聚类计算速度下降较为明显,在水下光影成像效果会有一定的影响。
发明内容
本发明提出一种基于自适应视线划分的光子图聚类方法,目的在于针对水下光影效果的光子图聚类的的密度估计和聚类密度固定的局限性,可以有效地实现了对密度估计的计算以及对聚类密度适应视线的划分,从而得到光子处理效率较高的光子图,为后续中最终聚集渲染提供颜色值,从而提高了真实感以及后续渲染的效率。
本发明的目的是这样实现的:
一种基于自适应视线划分的光子图聚类方法,采用预缓存和聚集替换的光子映射光线计算方法和自适应视线划分的光子图聚类方法相结合,预缓存的过程涉及k个光子预计算的辐射照度值以及着色点颜色值的保存问题,在生成光子图聚类过程中是涉及自适应视线跟踪的划分和聚类中心密度的确定以及中心光子个数的层次划分,在渲染阶段还需要对之前预缓存幅度值和着色器颜色值与表面材质器的替换计算问题,具体采用如下步骤:
(1)光线追踪阶段,获取场景,得到光线追踪阶段的光子图;
(2)自适应视线划分阶段,由光子密集区自适应视线划分三个等级对光子进行聚类;
(3)预缓存阶段,对聚类后的光子进行采样,得到其辐射度估计值进行预缓存到文件中;
(4)聚焦渲染阶段,对交点值、焦散光子值和直接光照值进聚集渲染,优化光子映射,提升图像渲染效率和真实感。
所述步骤(1)具体包括如下步骤:
(1.1)获取光源类型和水面场景;
(1.2)从光源处采用线程并发的方式随机发射一定量的光子,让光子进入水面场景中,进行光线追踪;
(1.3)光子在水面场景表面发生反射、吸收或者穿越物体内部,在其漫反射面上保存光子信息到光子图;
(1.4)根据光线传播的规律跟踪光子的运动轨迹,对场景表面光子发生的变化进行判断光子是否发生焦散,若发生焦散则生成焦散光子图,否则保存光子信息到全局光子图;
(1.5)通过对水面光线跟踪,得到其水下光线的光线跟踪的光强叠加,公式如下:
I=Il+KSIS+KtIt
公式中Il是光源光照强度;IS是反射光照强度;It是折射光照强度;KS和Kt代表反射系数和折射系数。
所述步骤(2)具体包括如下步骤:
(2.1)以步骤(1)中求得的光子图为基础,需要找出光子的密集区域用来确定光子区域的中心;
(2.2)通过使用减法聚类算法得到光子集中的中心点作为光子聚类中心代替该区域的光子;
(2.3)针对(2.2)所述的光子聚类方法不能根据视线跟踪路线的反射折射次数,对不同区域的聚类密度进行自适应视线划分为三个等级;
(2.4)对光子图聚类的过程就是对n个3维向量(x1,x2,…,xn)进行聚类处理;其中聚类中心数目N计算公式如下:
公式中n为区域内光子总数,li为视线连接到每个光子的反射次数,d为单位区域与视点相关系数;其中x1的密度用计算方法如下:
公式中ra为密度的探索半径,xi,xj为聚类中心的概率,ra为半径Di为光子对密度;
(2.5)处理完所有光子的密度之后,选取密度值最大的光子为一个光子的聚类中心;这里假定选择了xa为第一个聚类中心,Da是其密度,通过公式修改每个点的密度值:
公式中:Di为光子对密度,Dii为修改后的密度值,rb为正数,xi和xa为聚类中心;
(2.6)将所有的光子的密度都修改过后,可以选择剩下的所有光子中密度最大作为下一个聚类中心;反复重复这个步骤,直到聚类中心的数目达到预先设定好的数目。
所述步骤(3)具体包括如下步骤:
(3.1)根据步骤(2)中得到的自适应视线划分的光子图聚类中心以及相应光子密集程度值,选取一定半径内的光子进行总体估计;
(3.2)由于水面场景下的光束效果是体中辐射度估计,面上的辐射度估计是搜寻半径r范围的圆内的临近的n个光子,而空间中的辐射照度估计是搜寻半径为r的球形空间内的临近的n个光子;
(3.3)全局光子图中的光子是以k-d树的方式组织的,并用KNN算法来查找最近邻的n个光子,预计算得到的辐射照度值作为表面材质着色器中的一部分,继续计算表面材质着色器,包括纹理计算;
(3.4)得到该采样点预计算的颜色值后,再将该采样点的位置、表面法向和其颜色值保存到预缓存文件中。
所述步骤(4)具体包括如下步骤:
(4.1)从着色点处随机向着色点所在空间的半球内发射条采样射线,并计算每条射线与场景的交点;
(4.2)用交点的坐标信息搜索其在预缓存文件中的最近邻点,获取最近邻点保存的颜色值;
(4.3)获取到预缓存的颜色值之后,再计算采样射线从着色点到交点的长度,利用下面的公式得到一个间接光照值;计算公式如下:
Li=Cs×a(1-r/m)×β(i·n)
公式中Li是间接光照值,Cs是缓存的颜色值,a和β是常系数,r是渲染点到交点的长度,m是最大采样距离,i是方向向量n是表面法向;
(4.4)根据上述步骤(4.3)中最终聚集采样射线获取的间接光照值,进行平均化之后作为间接光照值,再加上焦散和直接光照值等便可以得到最终渲染点的颜色值;
(4.5)再通过ray marching算法对水下光束的光子图进行渲染,得到最终图像。
本发明的有益效果在于:
本发明主要提出了一种预缓存和聚集替换的光子映射光线计算方法,根据辐射照度进行着色器计算之后得到的颜色值以预缓存的形式保存起来,在最终的聚集阶段替换采样表面材质着色器的颜色值,省去了表面材质着色器的重复计算,提高了其计算渲染效率。提出了一种自适应视线划分的光子图聚类方法,根据光线在水下反射折射的次数,通过自适应视线的划分,将其不同的光子聚类中心对应的光子图密集程度将其划分到高、中、低影响点三个等级,区分了其聚类区域的相关程度,减少了对视线影响较小的部分的辐射估计量,从而将资源集中在更有用的地方,到达系统资源的高效利用的目的。
附图说明
图1为本发明的整体优化算法流程图;
图2为本发明的光线跟踪示意图;
图3为本发明的自适应划分视线跟踪示意图;
图4为本发明的预缓存生成阶段流程图;
图5为本发明的最终聚集替换渲染流程图。
具体实施方式
下面结合附图对本发明做进一步描述。
本发明提出预缓存和聚集替换的光子映射光线计算方法和自适应视线划分的光子图聚类方法相结合来达到优化光子映射算法的目的。其中预缓存的过程涉及k个光子预计算的辐射照度值以及其着色点颜色值的保存问题,在生成光子图聚类过程中则是涉及自适应视线跟踪的划分和聚类中心密度的确定以及中心光子个数的层次划分,同时在渲染阶段还需要对之前预缓存幅度值和着色器颜色值与表面材质器的替换计算问题。
基于上述问题的描述,为了实现本发明的目的,本发明采用如下步骤:
(1)获取场景的模型。根据光源处发射的一定数量的光子进入水面场景中,遇到水面时,会被反射、吸收或者直接穿过水面进入水下场景。对发射的光子进行光子追踪,在其漫反射面上保存其光子信息到全局光子图,判断其是否发生焦散现象,则另生成焦散光子图。该过程为光线追踪阶段,即创建光子图。
(2)针对步骤(1)所述的创建的光子图,为达到合理优化系统资源的目的,提出了自适应视线划分的光子图聚类方法,为经过路径跟踪后产生的光子图进行减法聚类处理,合并相似的光子,减少后期辐照度估计的计算量,采用三个不同等级的光子聚类密度。
(3)提出预缓存的光子映射光线计算方法,通过对像素生成的顺序选取采样点,然后在采样点处查找其在全局光子图中最近邻的个光子,并利用这个光子对该釆样点进行辐射照度的计算,将其全局光子图或者焦散光子图中的信息保存到预缓存的的文件中,为后续渲染阶段的使用。
(4)通过上述步骤得到的光子图信息和辐射度估计,从最终聚集采样射线与场景的交点处获取预缓存文件中保存的颜色值,根据最终聚集采样射线获取的颜色值计算出间接光照,再计算出直接光照和焦散,再通过ray marching算法对水下进行渲染,得到最终图像。
本发明中的对于光子映射算法的优化在于提出一种基于自适应视线划分的光子图聚类方法,针对传统的光子映射算法主要分为两大部分:光子追踪和辐射度估计,本发明在光子追踪部分中对光子图进行优化,进行自适应视线的划分了其光子图聚类,优化了聚类中心光子的计算,减少了视线弱化部分的光子计算。再辐射度估计中通过预缓存将辐射照度计算之后,继续进行着色器的计算,得到的颜色值保存起来,最终聚集采样射线采用之前预缓存的颜色值将其作为间接光照,省去了表面材质着色器的重复计算,最后再计算焦散和直接光照得到最终图像。整体优化算法的流程图结合图1。
所述的步骤(1)具体包括如下步骤:
(1.1)获取光源类型和水面场景;
(1.2)从光源处采用线程并发的方式随机发射一定量的光子,让光子进入水面场景中,进行光线追踪。其光线跟踪的示意图结合图2所示;
(1.3)光子在水面场景表面发生反射、吸收或者穿越物体内部,在其漫反射面上保存光子信息到光子图;
(1.4)根据光线传播的规律跟踪光子的运动轨迹,对场景表面光子发生的变化进行判断光子是否发生焦散,若发生焦散则生成焦散光子图,否则保存光子信息到全局光子图;
(1.5)通过对水面光线跟踪,得到其水下光线的光线跟踪的光强叠加,公式如下:
I=Il+KSIS+KtIt
公式中:Il是光源光照强度;IS是反射光照强度;It是折射光照强度;KS和Kt代表反射系数和折射系数。
本发明针对传统光线跟踪方法具有的独特的采样性并且局部光照方法还不够完善的缺点,使得光线跟踪方法难于模拟复杂场景中的多重漫反射效果和色彩的渗透效果,提出了对光线跟踪方法计算量优化的自适应视线划分的光子聚类方法,让系统根据视线反射折射次数划分光子图为三个等级,三个等级采用不同的光子聚类密度,合并相似的光子,减少后期辐照度估计的计算量。
结合图3所示,本发明的自适应划分视线跟踪示意图;所述的步骤(2)具体包括以下步骤:
(2.1)以步骤(1)中求得的光子图为基础,需要找出光子的密集区域用来确定光子区域的中心。
(2.2)通过使用减法聚类算法得到光子集中的中心点作为光子聚类中心代替该区域的光子。
(2.3)针对上述光子聚类方法不能根据视线跟踪路线的反射折射次数,对不同区域的聚类密度进行自适应视线划分为三个等级,其自适应划分视线跟踪示意图结合图3。
(2.4)假定所有的光子都等概率成为聚类中心,通过每个光子周围光子的密集程度,计算出该光子是该范围内聚类中心的概率值。对光子图聚类的过程就是对n个3维向量(x1,x2,…,xn)进行聚类处理;其中聚类中心数目N计算公式如下:
公式中n为区域内光子总数,li为视线连接到每个光子的反射次数,d为单位区域与视点相关系数;其中x1的密度用计算方法如下:
公式中:ra为密度的探索半径,xi,xj为聚类中心的概率,ra为半径Di为光子对密度。
(2.5)处理完所有光子的密度之后,选取密度值最大的光子为一个光子的聚类中心。这里假定选择了xa为第一个聚类中心,Da是其密度,通过公式修改每个点的密度值:
公式中:Di为光子对密度,Dii为修改后的密度值,rb为正数,xi和xa为聚类中心。
(2.6)将所有的光子的密度都修改过后,可以选择剩下的所有光子中密度最大作为下一个聚类中心。反复重复这个步骤,直到聚类中心的数目达到预先设定好的数目。这样也减少了对视线影响小的部分的辐射估计计算量。
本发明中步骤(3)提出了预缓存的光子映射光线计算方法,通过对像素生成的顺序选取采样点,处理光子的辐照度计算,是一个快速预渲染的过程。这样为后续中的最终聚集渲染处理提供了辐估计值和颜色的替换能够提升其处理渲染的效率。
结合图4,本发明的预缓存生成阶段流程图。所述步骤(3)具体包括如下步骤:
(3.1)根据步骤(2)中得到的自适应视线划分的光子图聚类中心以及相应光子密集程度值,选取一定半径内的光子进行总体估计。
(3.2)由于水面场景下的光束效果是体中辐射度估计,面上的辐射度估计是搜寻半径r范围的圆内的临近的n个光子,而空间中的辐射度估计是搜寻半径为r的球形空间内的临近的n个光子。
(3.3)全局光子图中的光子是以k-d树的方式组织的,并用KNN算法来查找最近邻的n个光子,预计算得到的辐射照度值作为表面材质着色器中的一部分,继续计算表面材质着色器,包括纹理计算等。
(3.4)得到该采样点预计算的颜色值后,再将该采样点的位置、表面法向和其颜色值保存到预缓存文件中。
本发明中步骤(4),提出了最终聚集替换的渲染方法,通过对步骤(3)中的预缓存光子图信息中的辐射照度估计值和颜色值,通过光子射线与场景的交点,利用交点的坐标信息搜索其在点缓存文件中的最近邻点,获取最近邻点保存的颜色值,进行平均化之后作为间接光照值,再加上焦散和直接光照值等便可以得到最终渲染点的颜色值。
结合图5所示,本发明的最终聚集替换渲染流程图。所述步骤(4)具体包含如下步骤:
(4.1)从着色点处随机向着色点所在空间的半球内发射条采样射线,并计算每条射线与场景的交点。
(4.2)用交点的坐标信息搜索其在预缓存文件中的最近邻点,获取最近邻点保存的颜色值。
(4.3)获取到预缓存的颜色值之后,再计算采样射线从着色点到交点的长度,利用下面的公式得到一个间接光照值。计算公式如下:
Li=Cs×a(1-r/m)×β(i·n)
公式中:Li是间接光照值,Cs是缓存的颜色值,a和β是常系数,r是渲染点到交点的长度,m是最大采样距离,i是方向向量n是表面法向。
(4.4)根据上述步骤(4.3)中最终聚集采样射线获取的间接光照值,进行平均化之后作为间接光照值,再加上焦散和直接光照值等便可以得到最终渲染点的颜色值。
(4.5)再通过ray marching算法对水下光束的光子图进行渲染,得到最终图像。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (1)
1.一种基于自适应视线划分的光子图聚类方法,其特征在于,采用预缓存和聚集替换的光子映射光线计算方法和自适应视线划分的光子图聚类方法相结合,预缓存的过程涉及k个光子预计算的辐射照度值以及着色点颜色值的保存问题,在生成光子图聚类过程中是涉及自适应视线跟踪的划分和聚类中心密度的确定以及中心光子个数的层次划分,在渲染阶段还需要对之前预缓存幅度值和着色器颜色值与表面材质器的替换计算问题,具体采用如下步骤:
(1)光线追踪阶段,获取场景,得到光线追踪阶段的光子图;
(2)自适应视线划分阶段,由光子密集区自适应视线划分三个等级对光子进行聚类;
(3)预缓存阶段,对聚类后的光子进行采样,得到其辐射度估计值进行预缓存到文件中;
(4)聚焦渲染阶段,对交点值、焦散光子值和直接光照值进聚集渲染,优化光子映射,提升图像渲染效率和真实感;
所述步骤(1)具体包括如下步骤:
(1.1)获取光源类型和水面场景;
(1.2)从光源处采用线程并发的方式随机发射一定量的光子,让光子进入水面场景中,进行光线追踪;
(1.3)光子在水面场景表面发生反射、吸收或者穿越物体内部,在其漫反射面上保存光子信息到光子图;
(1.4)根据光线传播的规律跟踪光子的运动轨迹,对场景表面光子发生的变化进行判断光子是否发生焦散,若发生焦散则生成焦散光子图,否则保存光子信息到全局光子图;
(1.5)通过对水面光线跟踪,得到其水下光线的光线跟踪的光强叠加,公式如下:
I=Il+KSIS+KtIt
公式中Il是光源光照强度;IS是反射光照强度;It是折射光照强度;KS和Kt代表反射系数和折射系数;
所述步骤(2)具体包括如下步骤:
(2.1)以步骤(1)中求得的光子图为基础,需要找出光子的密集区域用来确定光子区域的中心;
(2.2)通过使用减法聚类算法得到光子集中的中心点作为光子聚类中心代替该区域的光子;
(2.3)针对(2.2)所述的光子聚类方法不能根据视线跟踪路线的反射折射次数,对不同区域的聚类密度进行自适应视线划分为三个等级;
(2.4)对光子图聚类的过程就是对n个3维向量(x1,x2,···,xn)进行聚类处理;其中聚类中心数目N计算公式如下:
公式中n为区域内光子总数,li为视线连接到每个光子的反射次数,d为单位区域与视点相关系数;其中x1的密度用计算方法如下:
公式中ra为密度的探索半径,xi,xj为聚类中心的概率,ra为半径Di为光子对密度;
(2.5)处理完所有光子的密度之后,选取密度值最大的光子为一个光子的聚类中心;这里假定选择了xa为第一个聚类中心,Da是其密度,通过公式修改每个点的密度值:
公式中:Di为光子对密度,Dii为修改后的密度值,rb为正数,xi和xa为聚类中心;
(2.6)将所有的光子的密度都修改过后,可以选择剩下的所有光子中密度最大作为下一个聚类中心;反复重复这个步骤,直到聚类中心的数目达到预先设定好的数目;
所述步骤(3)具体包括如下步骤:
(3.1)根据步骤(2)中得到的自适应视线划分的光子图聚类中心以及相应光子密集程度值,选取一定半径内的光子进行总体估计;
(3.2)由于水面场景下的光束效果是体中辐射度估计,面上的辐射度估计是搜寻半径r范围的圆内的临近的n个光子,而空间中的辐射度估计是搜寻半径为r的球形空间内的临近的n个光子;
(3.3)全局光子图中的光子是以k-d树的方式组织的,并用KNN算法来查找最近邻的n个光子,预计算得到的辐射照度值作为表面材质着色器中的一部分,继续计算表面材质着色器,包括纹理计算;
(3.4)得到该采样点预计算的颜色值后,再将该采样点的位置、表面法向和其颜色值保存到预缓存文件中;
所述步骤(4)具体包括如下步骤:
(4.1)从着色点处随机向着色点所在空间的半球内发射条采样射线,并计算每条射线与场景的交点;
(4.2)用交点的坐标信息搜索其在预缓存文件中的最近邻点,获取最近邻点保存的颜色值;
(4.3)获取到预缓存的颜色值之后,再计算采样射线从着色点到交点的长度,利用下面的公式得到一个间接光照值;计算公式如下:
Li=Cs×a(1-r/m)×β(i·n)
公式中Li是间接光照值,Cs是缓存的颜色值,a和β是常系数,r是渲染点到交点的长度,m是最大采样距离,i是方向向量n是表面法向;
(4.4)根据上述步骤(4.3)中最终聚集采样射线获取的间接光照值,进行平均化之后作为间接光照值,再加上焦散和直接光照值便可以得到最终渲染点的颜色值;
(4.5)再通过ray marching算法对水下光束的光子图进行渲染,得到最终图像。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810255465 | 2018-03-25 | ||
CN201810255465X | 2018-03-25 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109509246A CN109509246A (zh) | 2019-03-22 |
CN109509246B true CN109509246B (zh) | 2022-08-02 |
Family
ID=65758009
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910041758.2A Active CN109509246B (zh) | 2018-03-25 | 2019-01-16 | 一种基于自适应视线划分的光子图聚类方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109509246B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111445422B (zh) * | 2020-04-17 | 2022-06-07 | 山东大学 | 基于神经网络的随机渐近式光子映射图像降噪方法及系统 |
CN115482325B (zh) * | 2022-09-29 | 2023-10-31 | 北京百度网讯科技有限公司 | 画面渲染方法、装置、系统、设备及介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104933707A (zh) * | 2015-07-13 | 2015-09-23 | 福建师范大学 | 一种基于多光子共焦显微细胞图像的超像素重构分割与重建方法 |
CN107798290A (zh) * | 2017-09-14 | 2018-03-13 | 中国科学院西安光学精密机械研究所 | 基于光子计数的三维图像信噪分离和混合正则化重构方法 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101666621B (zh) * | 2009-09-24 | 2011-01-05 | 浙江大学 | 一种与光照无关的标记点提取方法 |
CN101756696B (zh) * | 2009-12-31 | 2012-08-08 | 中国人民解放军空军总医院 | 多光子皮肤镜图像自动分析系统及其应用于恶性黑素瘤的诊断方法 |
CN101826214B (zh) * | 2010-03-29 | 2012-06-27 | 中山大学 | 一种基于光子映射的全局光照方法 |
CN102096941B (zh) * | 2011-01-30 | 2013-03-20 | 北京航空航天大学 | 虚实融合环境下的光照一致性方法 |
CN102981840A (zh) * | 2012-11-08 | 2013-03-20 | 苏州两江科技有限公司 | 基于光子映射图的整体光照计算机模拟处理方法 |
US8995797B2 (en) * | 2013-07-31 | 2015-03-31 | The United States Of America As Represented By The Secretary Of The Air Force | Periodic probabilistic two-dimensional cluster state generator with arbitrary interconnections |
CN104700448B (zh) * | 2015-03-23 | 2017-06-20 | 山东大学 | 一种基于梯度的自适应光子映射优化算法 |
CN104714784B (zh) * | 2015-03-30 | 2017-06-16 | 山东大学 | 用于mic架构协处理器的光子映射并行方法 |
CN105825545B (zh) * | 2016-03-29 | 2018-06-19 | 浙江大学 | 基于虚拟光源和自适应稀疏矩阵还原的全局光照绘制方法 |
CN106251393B (zh) * | 2016-07-14 | 2018-11-09 | 山东大学 | 一种基于样本消除的渐进式光子映射优化方法 |
-
2019
- 2019-01-16 CN CN201910041758.2A patent/CN109509246B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104933707A (zh) * | 2015-07-13 | 2015-09-23 | 福建师范大学 | 一种基于多光子共焦显微细胞图像的超像素重构分割与重建方法 |
CN107798290A (zh) * | 2017-09-14 | 2018-03-13 | 中国科学院西安光学精密机械研究所 | 基于光子计数的三维图像信噪分离和混合正则化重构方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109509246A (zh) | 2019-03-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2017206325A1 (zh) | 全局光照的计算方法及装置 | |
US20180374257A1 (en) | Path Tracing Method Employing Distributed Accelerating Structures | |
US11508114B2 (en) | Distributed acceleration structures for ray tracing | |
CN105787865A (zh) | 基于游戏引擎和gpu并行处理的分形图生成与渲染方法 | |
JPH10510074A (ja) | 像構成 | |
KR20230156105A (ko) | 고해상도 신경 렌더링 | |
US11669986B2 (en) | Generating enhanced three-dimensional object reconstruction models from sparse set of object images | |
CN109509246B (zh) | 一种基于自适应视线划分的光子图聚类方法 | |
Wadhwani et al. | Squeezenerf: Further factorized fastnerf for memory-efficient inference | |
Liu et al. | Real-time neural rasterization for large scenes | |
Kivi et al. | Real-time rendering of point clouds with photorealistic effects: a survey | |
Rabby et al. | BeyondPixels: A comprehensive review of the evolution of neural radiance fields | |
Guo et al. | 3D semantic segmentation based on spatial-aware convolution and shape completion for augmented reality applications | |
US20230410408A1 (en) | Ray tracing device and method with improved performance | |
US20230298243A1 (en) | 3d digital avatar generation from a single or few portrait images | |
CN114596401A (zh) | 渲染方法、设备以及系统 | |
US20240046549A1 (en) | Ray tracing method and apparatus based on attention for dynamic scenes | |
US11925860B2 (en) | Projective hash maps | |
CN106469462B (zh) | 一种三维场景辐射亮度的渐进式估算方法 | |
Chang et al. | Fast sun-aligned outdoor scene relighting based on tensorf | |
Tawara et al. | Exploiting temporal coherence in global illumination | |
US20240112308A1 (en) | Joint neural denoising of surfaces and volumes | |
US20240046548A1 (en) | Visual attention-based ray tracing method and device for foveated rendering | |
Ulbrich et al. | Progressive Visibility Caching for Fast Indirect Illumination. | |
US11783532B1 (en) | View synthesis using attribute correspondences and geometric relationship constraints |
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 |