CN116524101A - 基于辅助缓冲区信息和直接光照的全局光照渲染方法及装置 - Google Patents

基于辅助缓冲区信息和直接光照的全局光照渲染方法及装置 Download PDF

Info

Publication number
CN116524101A
CN116524101A CN202310379766.4A CN202310379766A CN116524101A CN 116524101 A CN116524101 A CN 116524101A CN 202310379766 A CN202310379766 A CN 202310379766A CN 116524101 A CN116524101 A CN 116524101A
Authority
CN
China
Prior art keywords
rendering
illumination
map
layer
format
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.)
Pending
Application number
CN202310379766.4A
Other languages
English (en)
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.)
Nanjing University
Original Assignee
Nanjing 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 Nanjing University filed Critical Nanjing University
Priority to CN202310379766.4A priority Critical patent/CN116524101A/zh
Publication of CN116524101A publication Critical patent/CN116524101A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/50Lighting effects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02BCLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO BUILDINGS, e.g. HOUSING, HOUSE APPLIANCES OR RELATED END-USER APPLICATIONS
    • Y02B20/00Energy efficient lighting technologies, e.g. halogen lamps or gas discharge lamps
    • Y02B20/40Control techniques providing energy savings, e.g. smart controller or presence detection

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computer Graphics (AREA)
  • Health & Medical Sciences (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Image Generation (AREA)

Abstract

本发明公开了一种基于辅助缓冲区信息和直接光照进行全局光照渲染的方法及装置,本发明首先获取XML格式的场景文件,并将其转换为Blender格式;其次对Blender格式的场景文件进行多视角渲染,得到多图层渲染图像,并通过进行图层划分得到缓冲区信息、直接光照和真实渲染结果图;之后建立间接光照渲染网络模型,将缓冲区信息、直接光照作为输入,以最小化预测结果和真实渲染结果图的差为训练目标进行训练;最后将目标视角的辅助缓冲区信息和直接光照输入训练好的光照预测网络模型,得到间接光照贴图,再上采样后与高分辨率直接光照叠加,得到高分辨率全局光照渲染结果。本发明能够更高效地预测高质量的全局光照。

Description

基于辅助缓冲区信息和直接光照的全局光照渲染方法及装置
技术领域
本发明涉及计算机视觉技术,尤其涉及一种基于辅助缓冲区和直接光照进行全局光照渲染的方法及装置。
背景技术
基于物理的全局光照渲染(Physically-Based Rendering,PBR)已经在增强现实和娱乐等领域有着广泛的应用,这些领域均有着生成照片级逼真图像的需求,然而PBR的计算成本非常高,可能要付出非常高的时间代价渲染过程才会收敛,尤其是那些具有复杂光照和几何形状的室内场景,对于路径追踪等PBR算法来说计算非常困难,在合理权衡渲染时间和渲染质量的基础上,使用PBR在拥有数百台56核CPU机器的集群上生成大规模数据集也需要1个月的时间,同时其计算过程难以并行化。
发明内容
发明目的:本发明针对现有技术存在的问题,提供一种高效的基于辅助缓冲区信息和直接光照的全局光照渲染方法、装置及存储介质。
技术方案:本发明所述的基于辅助缓冲区信息和直接光照的全局光照渲染方法包括以下步骤:
(1)获取场景的XML文件,并将其转换为Blender格式;
(2)对Blender格式的场景文件进行多视角采样及渲染,得到多图层渲染结果,通过进行图层划分得到辅助缓冲区信息、直接光照贴图和真实渲染结果图,所述辅助缓冲区信息包括反照率贴图、深度贴图、着色法线贴图和高光反射贴图;
(3)建立间接光照渲染网络模型,所述间接光照渲染网络模型包括初步间接光照预测阶段和基于高光学习的间接光照完善阶段,所述初步间接光照预测阶段以反照率贴图、深度贴图、着色法线贴图和直接光照贴图为输入,学习得到初步间接光照贴图,所述基于高光学习的间接光照完善阶段以所述初步间接光照贴图和高光反射贴图作为输入,学习得到完整间接光照贴图;
(4)将辅助缓冲区信息、直接光照作为样本,真实渲染结果图作为样本标签,对所述间接光照渲染网络模型进行训练;
(5)获取待渲染的场景文件,按照步骤(1)(2)处理后输入训练好的间接光照渲染网络模型,得到低分辨率的间接光照贴图;
(6)将低分辨率的间接光照贴图上采样至高分辨率后,与渲染时生成的高分辨率直接光照贴图叠加,生成最终的高分辨率全局光照渲染结果。
进一步的,步骤(1)具体包括:
(1-1)解析XML文件中双向散射分布函数部分的属性并转换为Blender格式;
(1-2)解析XML文件中光源部分的参数并转换为Blender格式;
(1-3)解析XML文件中的图像格式以及像素属性并转换为Blender格式;
(1-4)解析XML文件中的传感器部分的属性并转换为Blender格式;
(1-5)解析XML文件中的形状部分的属性并转换为Blender格式;
(1-6)对XML文件中纹理部分的属性进行解析并转换为Blender格式。
进一步的,步骤(2)具体包括:
(2-1)对每一Blender格式的场景文件,通过设置不同的摄像机参数和采样参数,利用采样算法进行采样,然后进行路径追踪渲染,得到多图层渲染结果;
(2-2)将多图层渲染图像进行图层划分,得到辅助缓冲区信息、直接光照和真实渲染结果图。
进一步的,步骤(2-1)具体包括:
(2-1-1)设置对Blender格式的场景文件的采样的图像数量n、采样的图像之间的角度间隔α、摄像机和物体之间的距离T,获取摄像机的初始坐标值(x0,y0),遍历图像数量,初始化图像索引i=0;
(2-1-2)根据当前正在渲染的图像索引i,计算当前需要渲染图像的弧度A:
A=(i-n/2)·α/360·2·π
(2-1-3)根据弧度A和距离T计算摄像机的x、y坐标偏移量Δx、Δy:
Δx=T·sinA
Δy=T·cosA
(2-1-4)按照下式计算摄像机坐标(x,y),并用弧度A赋值给摄像机角度参数K:
x=x0+Δx
y=y0+Δy
K=A
(2-1-5)按照摄像机角度参数K和摄像机坐标(x,y)采用路径追踪算法进行渲染,得到多图层渲染图像,包括Luxcore渲染器渲染得到的多图层图像结果以及Eevee渲染器渲染得到的多图层图像结果。
进一步的,步骤(2-2)具体包括:
(2-2-1)将多图层渲染图像中每一个图层都按照通道划分多个单通道图像;
(2-2-2)从多图层渲染图像中读取其头文件,判断头文件中的view值是否为None,若否,则执行步骤(2-2-3);
(2-2-3)从头文件中获取图层名称列表,将图层名称列表以“.”为划分间隔提取得到每个图层的名称;
(2-2-4)根据提取的图层的名称,将属于同一图层的所有通道进行组合,并生成每个图层的头文件,分别得到反照率贴图、深度贴图、着色法线贴图、高光反射贴图、真实渲染结果图。
进一步的,步骤(3)中所述间接光照渲染网络模型中:
所述初步间接光照预测阶段具体为U型的编码器-解码器结构,结合跳跃连接,编码器使用连续的Transformer模块构成,解码器仍然采用纯卷积结构;
所述基于高光学习的间接光照完善阶段具体为U-Net网络结构。
进一步的,步骤(4)中对所述间接光照渲染网络模型训练时,采用的损失函数为:
L表示损失函数,N表示批处理数量,Yi表示第i个样本xi的样本标签,f(xi)表示对于第i个样本xi的网络输出,即完整间接光照贴图,优化过程使用Adam优化器。
进一步的,所述上采样采用双线性插值方法实现。
本发明所述的基于辅助缓冲区信息和直接光照的全局光照渲染装置包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现上述方法。
本发明所述的包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行上述方法。
有益效果:本发明与现有技术相比,其显著优点是:本发明基于深度学习预测全局光照渲染结果,采用神经网络来替代渲染管线中的部分工作近似基于物理的渲染结果,能够更高效地生成高质量的全局光照渲染结果。
附图说明
图1是本发明提供的基于辅助缓冲区信息和直接光照的全局光照渲染方法的流程示意图;
图2是数据集中各图像渲染结果示意图;
图3是初步间接光照预测阶段网络结构示意图;
图4是本发明的对比实验效果示意图;
图5是本发明提供的基于辅助缓冲区信息和直接光照的全局光照渲染装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
实施例一
本实施例提供了一种基于辅助缓冲区信息和直接光照的全局光照渲染方法,包括以下步骤:
(1)获取XML格式的场景文件,并将其转换为Blender格式。
该步骤中,分别提取XML格式的场景文件中的材质属性、光源属性、图像格式和像素属性、传感器属性、几何属性、纹理属性,分别进行解析后转换为Blender格式,针对每一部分设置一个模块来进行处理,具体为Material模块、Emitters模块、Renderer模块、Sensors模块、Shapes模块和Textures模块。
Material模块负责XML文件中BSDF(Bidirectional Scattering DistributionFunction)双向散射分布函数部分的解析及转换,BSDF该函数定义了表面散射模型,表面散射模型主要用于描述光线与场景中物体表面相互作用的方式,其总结了材料内部及表面在微观层面发生的光线散射过程,并使渲染出来的结果看起来属于对应材质真实场景下的外观,不同的BSDF可以分配给不同的场景物体进行材质设置。XML格式的场景文件中涉及转换的BSDF包括area emitter,定义了可设置照明范围的自发光物体的材质;principledBSDF,其进行了大量复杂的反射和透射计算,能够模拟从metal到rough dielectrics等大量材质类型,且其输入参数非常用户友好,将对应的物理参数整合成更易理解和设置的参数集合,其具体原理及实现主要基于两篇文章,分别是Physically Based Shading atDisney和Extending the Disney BRDF to a BSDF with Integrated SubsurfaceScattering,其实质就是一款综合型材质生成着色器,在Blender中可以直接将绘制或烘焙的图像纹理与着色器中相应的参数进行链接,每种材质修改对应的参数即可获得不同的渲染效果;smooth diffuse BSDF,也称为Lambertian(朗伯)材质,其定义了一个理想的漫反射材料,即任何入射的光照在该材质的表面上都是散射的,因此无论从任何方向来看,其表面都是一样的,但其仍属于单面材质,另外一面观察时呈黑色;为了改善只有一侧表面能够接收到光线,而可见的另外一侧呈现纯黑色的情况,该插件对Mitsuba中的Two-sided BRDF插件进行了转换,其定义了一个双面散射模型,可以分别为一个平面的正反面设置不同的BRDF;dielectric BSDF,该部分对Mitsuba中的smooth dielectric材质进行转换,该材质主要描述了两种折射率不匹配的介电材料之间的界面,且假设表面的微观结构十分光滑,可设置的参数包括内部和外部的IOR值,“外部”是指包含表面法线的一侧;thindielectricBSDF,该部分对Mitsuba中一个用于对薄电解质材料进行建模的插件实现Blender格式转换,该材质的内部被假设为非常薄,以至于其对透射光线的影响可以忽略不计,光从这种材料中射出时没有任何形式的角偏转,但其仍然存在镜面反射;roughdielectric BSDF,该部分解析的插件对应的是Mitsuba中一个渲染介电材料之间的粗糙界面的插件,比如空气到磨砂玻璃的过度,粗糙表面的定义是一系列微小的理想镜面的排列,不同位置的法线方向由对应的微小平面给出,通过考虑这些微小平面之间的阴影和遮蔽效应,呈现一种磨砂的粗糙效果,设置不同的α值(粗糙度参数)可以呈现不同的表面粗糙效果,此外其内部和外部的IOR值也可以进行数字指定;blend BSDF,该部分对应的Mitsuba功能是一个可以进行材质混合的插件,其可以对两个BSDF实例进行线性组合,对于任意表面散射模型,无论是光滑的、粗糙的、反射的还是透射的,都可以用该插件进行混合得到新的散射模型;conductorBSDF,该材质定义了一个完美的光滑的镜面材质,其不对任何光线进行折射传输,且其也是单面材料,一般用于描述光滑的金属等材质;roughconductor BSDF,转换的材质是roughconductor,由于其有一定粗糙度,因此其本质上也是一个微表面散射模型,用于渲染粗糙的金属表面等,同样其有一个粗糙度参数α,其用于描述材质表面的粗糙度,当α值设为0,即对应conductor材质,α值分布在0.001到0.01之间,其对应光滑的表面有轻微缺陷的材料,取0.1是相对粗糙,取0.3-0.7则非常粗糙,对应蚀刻或磨光等表面效果;mask BSDF,其在渲染中应用一个不透明的mask,根据不透明参数在完全透明和完全不透明之间进行插值;plastic BSDF,其针对的材质是一种具有内部散射的光滑类塑料材料,其实现使用菲涅尔反射和透射系数来提供与方向相关的镜面反射和漫反射分量,该模型模拟了光线与覆盖有薄介电层的漫反射表面之间的相互作用,其实现简单、逼真且快速,描述的是一种白色聚丙烯塑料材质;roughplastic BSDF,其用于描述现实中一种白色聚丙烯塑料材料,主要用于渲染具有内部散射的粗糙介电材料,由于具有粗糙度,所以其本质也是一个逼真的微表面散射模型,可以设置粗糙度参数和IOR值;bumpmap BSDF,其对应Mitsuba中的bump mapBSDF,凹凸贴图可以通过基于作为纹理提供的位移高度场扰动着色坐标系,从而用比较低的代价将表面细节添加到渲染中,从而使对象具有高度逼真和非常细节的外观,而无需对输入几何体进行任何更改,该模型主要描述起皱或具有划痕的一些具有缺陷的表面;normalmap BSDF,其对应normal map BSDF,与凹凸贴图的应用原理类似,其利用法线贴图扰动着色坐标系,从而在无需改变输入的几何体的情况下为其表面增加高度逼真的细节,从而描述起皱或者带有划痕的有瑕疵的表面;null BSDF,该材质在场景中完全不可见,光线不会以任何形式与该BSDF进行交互。
Emitters模块负责XML文件中光源部分参数的解析及设置,光源整体来看主要分为两大类:分别是位于场景内某处的光源,以及围绕场景模拟远处环境的发射器。可用于在场景内设置的光源类型包括点光源,方向光(比如太阳光),聚光灯(比如手电筒),区域光(几何物体表面发射的光照,例如电视屏幕、办公室霓虹灯、窗户等)等等,模拟远处环境的光源包括环境贴图等。文件中对光源的位置、发射方向及光源强度参数值进行获取及Blender格式设置,主要转化的光源类型包括点光源和方向光,点光源(point light)向不同的方向均匀地辐射照明,对应的转换函数对点光源的颜色、光强、产生的阴影范围以及光源位置等参数进行了解析及设置,方向光(directional light)对方向光的颜色、光强、光源位置以及光线发射方向进行解析及设置,其光照强度参数则根据其光源类型获取对应的irradiance或radiance来进行计算,最终将其在Blender中进行场景光源属性设置。
Renderer模块负责图像格式以及像素属性的格式转换,同时定义了如何将XML文件中的Integrator部分、Samplers部分、Film部分的属性解析并转化为Blender格式。支持转化的图像格式包括RGB和RGBA,支持转化的像素格式包括float16和float32。Integrator指的是不同的积分器,代表一种求解光传输方程的方法,该转换函数主要对path tracer(路径追踪器)进行了参数解析及设置,函数对应的设置了Blender中的max depth、rrdepth、hide emitters等路径追踪属性,以及max bounces、diffuse bounces、glossybounces、transparent max bounces、transmission bounces、volume bounces、min lightbounces等Cycles渲染器属性,路径追踪在具体使用时可以通过限制路径深度来减少计算量和决定渲染的图像质量。路径追踪渲染器中,光线只在场景中发生过一次弹射那么渲染结果称为“直接光照”结果,如果光线从光源发出,未产生任何弹射效果直接到相机结束,那么其对应可见光源;AOVs(Arbitrary Output Variables)积分器可以返回一个或多个可见表面的AOV,比如Albedo(材料的反照率),Depth(相机到最近相交对象的距离),Position(世界空间坐标位置),uv(坐标),geo_normal(几何法线),sh_normal(着色法线)等等。Samplers指的是不同的采样器,由于离线渲染涉及到场景的几何体、材质、灯光和传感器,这是一个高维集成问题,需要在大量不同的位置进行采样得到大量样本处的积分值来构成渲染结果。该文件对几种采样器进行了格式转化。Independent sampler(独立采样器)是最基本的样本生成器,其产生独立且均匀分布的伪随机数流,可视化采样结果后可以发现这种采样器容易出现取样不均匀的情况,在取样数比较少的情况下,可能会出现多个样本集中在一块区域的情况,这会导致渲染图像的方差较大;Stratified sampler(分层采样器)将抽样单位按照某种特征或某种规则划分为不同的层,从不同的层中独立、随机地抽取样本,从而保证了样本的结构与总体的结构比较相近,提高了估计的精度,由于生成的数字图像是一组离散的在矩形网格上对齐的像素值,所以从连续的函数中抽样计算离散的像素值的话,抽样的方式会很明显地影响了绘制的图像的质量,分层取样在采样方式上的提升使得其最终的渲染效果比独立取样效果有很大提升;Multi-Jittered sampler(多抖动采样),对前两种采样方法进行了抖动改进,带抖动的分层采样是在每个分层范围内进行一次随机数抖动,是一种简单有效的采样方式,该采样器具体做法是首先将样本放置在二维和一维分层的规范排列中,然后再打乱每列样本的x坐标和每行中的y坐标。Film部分定义了如何保存数据并将其转化为在渲染过程结束时写入磁盘的最终输出文件,文件中主要定义了一个转换hdrfilm格式的函数,主要解析了hdrfilm的一些参数,包括weight、height(图像分辨率),file_format默认为openEXR,还包括RGBE、pfm等,pixel_format指定输出所需的图像格式,选项包括rgb、rgba、xyz、xyza等,component_format指定所需的浮点分量格式,选项包括float16、float32或uint32,还有crop选项,指定根据参数输出最终的矩形大小,主要通过crop_offset_x和crop_offset_y来定位矩形的位置,通过crop_width和crop_height才决定矩形的大小。
Sensors模块主要处理的是传感器部分,sensor是场景当中的一个子元素,sampler和film都嵌套在sensor模块中,该文件中主要对perspective pinhole camera(透视针孔相机)进行了格式转换,该相机有一个无限小的光圈,因此会产生无限景深,不会发生光学模糊。
Shapes模块主要对XML文件中的shape部分进行格式转换,shape通常与BSDF一起声明,文件中主要对几种shape类型实现了解析说明。obj格式的文件一般都是包含三角形和四边形的网格,不论是Mitsuba还是Blender都需要对obj格式文件实现加载的操作,除了导入物体网格,还要导入顶点法线和纹理坐标,但是由于其一般需要大量的内存和处理能力,且容易被截断的内部存储数据会导致精度下降,因此利用obj文件倒入几何模型一般作为最后的选择;ply(Stanford Triangle Format)格式文件相比于obj格式更好一些,其实现了可选UV坐标、顶点法线或其他自定义顶点或面的三角形网格;此外还对球体、圆盘、矩形以及基于三角形网格的立方体图元,这些图形均可以通过修改其控制参数对图元进行线性变换。
Textures模块对texture(纹理)部分进行解析转换,纹理与BSDF类似,都是可以在场景的顶层定义并后续在不同的位置或时刻进行引用,这非常适合同一个纹理被多次引用的情况。文件中主要对bitmap纹理实现转换,Mitsuba中bitmap texture插件实现了对输入的JPEG,PNG,OpenEXR,BMP等文件进行插值查找,其首先会将数据转化为渲染器可用的颜色表示,比如在rgb模式下,sRGB纹理会将其转化到线性颜色空间;在光谱模式下,sRGB纹理被采样为平滑的光谱并按照一种中间表示存储;在单色模式下,sRGB纹理值被转化为灰度值。
(2)对Blender格式的场景文件进行多视角采样及渲染,得到多图层渲染结果,通过进行图层划分得到辅助缓冲区信息(Buffers)、直接光照(Direct)贴图和真实渲染结果图,所述辅助缓冲区信息包括反照率(Albedo)贴图、深度(Depth)贴图、着色法线(ShadingNormal)贴图和高光反射(GlossDir)贴图,如图2所示。
该步骤中,对Blender格式的场景文件,通过设置不同的摄像机参数和采样参数,通过采样算法进行多视角采样,然后结合路径追踪算法进行图像渲染,得到多图层渲染结果。渲染时,先使用Blender平台的Luxcore渲染器,基于GPU平台使用路径追踪(PathTracing)算法渲染图像,每个场景分别采样得到大概100对Buffers缓冲信息(Normal、Depth、Albedo、GlossDir)、Direct和Ground Truth,作为训练集,图像对均为256*256分辨率,由于后续需要对256×256分辨率大小的预测结果上采样得到更高分辨率的高质量图像,此过程需要更高分辨率的Direct图层做直接加法运算,因此还需要在数据获取过程中同时在相同视角下采样高分辨率的Direct图像,本研究示例中选择的高分辨率大小为1024*1024;然后使用Eevee渲染器,勾选Specular Light选项获取GlossDir贴图和真实渲染结果图像,GlossDir贴图用于后半部分网络作为着重训练glossy材质的输入,图像分辨率也为256×256。测试集可以根据数量和视角需求对同一场景重新采样,采样类型及图像分辨率大小与训练集保持一致。场景文件选择了一些包含多种材质的室内场景,包括漫反射材质多的卧室、客厅场景,镜面、金属材质多的浴室场景,磨砂镜面材质多的厨房场景等等,采样时将摄像机在场景中按照采样算法旋转视角并重新设置位置坐标,在不同的视角下渲染图像,采样具体过程包括:
(2-1-1)设置对Blender格式的场景文件的采样的图像数量n、采样的图像之间的角度间隔α、摄像机和物体之间的距离T,获取摄像机的初始坐标值(x0,y0),初始化图像索引i=1;
(2-1-2)根据当前正在渲染的图像索引i,计算当前需要渲染图像的弧度A:
A=(i-n/2)·α/360·2·π
(2-1-3)根据弧度A和距离T计算摄像机的x、y坐标偏移量Δx、Δy:
Δx=T·sinA
Δy=T·cosA
(2-1-4)按照下式计算摄像机坐标(x,y),并用弧度A赋值给摄像机角度参数K:
x=x0+Δx
y=y0+Δy
K=A
(2-1-5)按照摄像机角度参数K和摄像机坐标(x,y)采用路径追踪法进行渲染,得到两种多图层渲染结果以及一张单图层渲染结果,多图层渲染结果分别包括Luxcore渲染结果和Eevee渲染结果,Luxcore多图层渲染结果包括Albedo图层、Depth图层、Shadingnormal图层以及真实渲染结果图;Eevee渲染结果包括真实渲染结果图和GlossDir图层,但是我们只取GlossDir;一个单图层渲染结果是Direct。
(2-2)将多图层渲染图像进行图层划分,得到辅助缓冲区信息、直接光照和真实渲染结果图。
划分图层时,首先将多图层渲染图像按照通道划分多个单通道图像,包括RGBA、RGB、XYZ等多通道图像,如果只有单通道比如只包含Z通道的depth图像会保存为灰度图。多图层渲染图像文件类型为OpenEXR,由以下部分组成:header(头文件)和像素值,header是用于描述像素的一系列属性列表,为了增强OpenEXR文件的可读性,使得其他程序能够对其进行数据解析,因此某些必须的属性必须存在于所有的OpenEXR文件头中。首先对多图层渲染图像文件读取其header,从而方便后续对view、layer、channel属性进行解析设置,如果view不为None(文件中不存在多视图)的话,其包含了layer的视图,如果只有一个默认图层,那么layer属性为None,否则当中包含了多个图层的属性信息,channel的类型包括R、G、B、A、DATA。因此获取header后首先判断其是否为多视图文件,如果view不为None,则header中有不同图层的name list,name互相之间用“.”划分,获取到这个list即可以“.”为划分间隔提取得到每个图层的名称。根据提取的图层的名称,将属于同一图层的所有单通道图像进行组合,重新生成每个layer的header,将每一个多通道的layer分别按照名称保存。对于Luxcore渲染得到的多图层图像,分别将其划分成Ground Truth、Depth、Albedo、ShadingNormal四个单图层图像,对于Eevee渲染得到的多图层图像,按照Combined、GlossDir划分为两个单图层图像。
(3)建立间接光照渲染网络模型,所述间接光照渲染网络模型包括初步间接光照预测阶段和基于高光学习的间接光照完善阶段。
所述初步间接光照预测阶段为U型的编码器-解码器结构,以反照率贴图、深度贴图、着色法线贴图和直接光照贴图为输入,结合卷积和Transformer构建新的神经网络学习基础的初步间接光照信息,有效提取图像特征的同时增加模型的表达能力,所述基于高光学习的间接光照完善阶段对场景中的光泽感材质进行标注,对标注的物体着重学习,使用U-Net结构,以所述初步间接光照贴图和高光反射贴图作为输入,进一步完善间接光照预测结果,为了保证网络的轻量性,图像对分辨率均为256*256。
如图3所示,所述初步间接光照预测阶段具体包括:首先将缓冲区信息中的反照率贴图、深度贴图、着色法线贴图与直接光照图像拼接,得到第一拼接信息图;采用Encoder-Decoder结构基于第一拼接信息图通过卷积、降采样和上采样得到初步间接光照贴图,降采样模块采用Block数量减半后的Swin-Transformer替换。具体的,Albedo、Direct、ShadingNormal均为三通道图像,Depth为单通道,所以第一信息拼接模块拼接之后得到256*256*10的输入。阶段网络包括一个卷积模块、四个Swin-Transformer降采样模块(压缩路径)和四个上采样模块(扩展路径)。卷积模块对输入的拼接信息图进行简单特征提取,该卷积模块包含两个卷积层,特征结构变为256*256*64。然后进入压缩路径,压缩路径包括四个Swin-Transformer降采样模块,每个降采样模块都将对特征图的分辨率总共降低四分之一,同时特征通道数变为原来的二倍,这个过程中将不断对输入的图像进行特征提取;每个Swin-Transformer降采样模块均由若干层MSABlock和卷积层组成,MSA Block针对在全局范围进行注意力计算改进为将注意力计算限制在窗口中,从而节省了计算代价,主要用于对特征图的全局特征进行提取,然后先用一个卷积操作对特征图分辨率进行下采样处理,然后再用两层卷积操作对特征图的通道数进行成倍映射;Swin-Transformer工作采取层次化的设计,四个阶段的Swin-Transformer Block中的MSA Block的串联数量分别为2、2、6、2,考虑到网络的轻量化需求,将每个Swin-Transformer模块中MSA Block的数量分别缩减为原来的一半,即改为1、1、3、1;综上,在经过卷积处理后,256*256*64的特征图作为输入进入压缩路径的第一个Swin-Transformer降采样模块,经过处理后,输出为128*128*128,作为输入进入第二个Swin-Transformer降采样模块,输出为64*64*256,作为输入进入第三个Swin-Transformer降采样模块,经过降采样处理,输出为32*32*512,作为输入进入最后一个Swin-Transformer降采样模块,降采样后输出为16*16*1024。紧接着进入扩展路径,扩展路径沿用了U-Net网络的扩展路径,主要由四个上采样模块组成,每个上采样模块首先使用双线性插值操作对特征图的分辨率提升四倍,然后再用一个卷积层进行特征通道的映射,将特征通道降为原来的一半,此时刚好与同一层级的压缩路径的输出同分辨率,于是将两者在特征通道的维度进行叠加,特征变厚,为下个上采样模块提供更多的信息使用,然后再用两个卷积层对拼接之后的信息进行进一步整合以及特征通道的映射,综上,16*16*1024的特征图进入第一个上采样模块后,首先对其做插值和降通道数操作,处理后变为32*32*512,与同层的Swin-Transformer降采样输出32*32*512在通道数的维度上叠加,得到32*32*1024的特征,经过两层卷积的进一步处理,其通道数降为原来的一半,第一个上采样模块的输出特征为32*32*512,同理其作为输入进入第二个上采样模块后,与同层的Swin-Transformer降采样模块输出64*64*256特征相结合再进一步卷积处理后输出特征大小为64*64*256,作为输入进入第三个上采样模块,与128*128*128的特征相结合后,进一步卷积处理得到特征大小为128*128*128,作为输入进入最后一个上采样模块,与同层256*256*64大小的特征相结合后进一步卷积处理,将输出特征通道映射为3,输出256*256*3的初步间接光照贴图。
所述基于高光学习的间接光照完善阶段首先将将第一阶段预测结果初步间接光照贴图与辅助缓冲区信息中的高光反射贴图拼接,得到第二拼接信息图;再使用U-Net,从着重训练高光反射的角度对第二拼接信息图进一步完善,GlossDir中对场景中具有光泽感材质的物体进行了标注,从而使得网络对这些物体的间接光照重点学习,得到更具有真实感的渲染结果,该阶段得到了低分辨率完整间接光照贴图。
(4)将辅助缓冲区信息、直接光照作为样本,真实渲染结果图作为样本标签,对所述间接光照渲染网络模型进行训练,采用的损失函数为:
L表示损失函数,N表示批处理数量,Yi表示第i个样本xi的样本标签(GroundTruth),f(xi)表示对于第i个样本xi的网络输出,即完整间接光照贴图。优化过程使用Adam优化器。
(5)获取待渲染的场景文件,按照步骤(1)(2)处理后输入训练好的间接光照渲染网络模型,得到低分辨率的间接光照贴图。
(6)将低分辨率的间接光照贴图上采样至高分辨率后,与渲染时生成的高分辨率直接光照贴图叠加,生成最终的高分辨率全局光照渲染结果。
使用双线性插值方法对低分辨率间接光照贴图提升分辨率至1024*1024,其与分辨率为1024*1024的直接光照图像叠加后生成高分辨率全局光照预测结果。
对本发明进行仿真验证。本次验证基于Blender平台使用Luxcore和Eevee渲染引擎进行数据集生成,网络使用PyTorch框架实现和训练,优化过程使用Adam优化器。在训练参数方面,在训练参数方面,我们根据显卡内存大小设置batch size,Adam优化器的β1=0.9,β2=0.999。针对单一场景进行拟合和训练时,数据集各文件夹图像总数500左右,初始学习率为2e-4,训练1500个epoch;使用包含5个场景的数据集对网络进行训练时,数据集各文件夹图像总和2500左右,初始学习率为8e-5,训练2000个epoch。效果如图4所示。为了验证我们方法的有效性,本文将其和一些代表性的深度学习相关方法进行比较,对比实验中三个模型分别为我们的工作(Ours),Deep Illumination(DPI):一种基于GAN网络近似动态全局光照的方法,Deep Shading(DPS):一种基于卷积神经网络进行屏幕空间着色的方法。
实施例二
图5是本发明实施例提供的一种装置的结构示意图,图5示出了适于用来实现本发明实施方式的示例性装置12的框图。图5显示的装置12仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图5所示,装置12以通用计算设备的形式表现。装置12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器28,连接不同系统组件包括系统存储器28和处理单元16的总线18。
总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。
装置12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被装置12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
系统存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)30和/或高速缓存存储器32。装置12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图5未显示,通常称为“硬盘驱动器”)。尽管图5中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如存储器28中,这样的程序模块42包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本发明所描述的实施例中的功能和/或方法。
装置12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该装置12交互的设备通信,和/或与使得该装置12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口22进行。并且,装置12还可以通过网络适配器20与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图5所示,网络适配器20通过总线18与装置12的其它模块通信。应当明白,尽管图中未示出,可以结合装置12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
处理单元16通过运行存储在系统存储器28中的程序,从而执行各种功能应用以及数据处理,例如实现本发明实施例一所提供的方法。
实施例三
本发明实施例还提供了一种包含计算机可执行指令的存储介质,计算机可执行指令在由计算机处理器执行时用于执行实施例一的方法,
本发明实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,程序设计语言包括面向对象的程序设计语言,诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言,诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络包括局域网(LAN)或广域网(WAN),连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上的方法操作,还可以执行本发明任意实施例所提供的方法中的相关操作。

Claims (10)

1.一种基于辅助缓冲区信息和直接光照的全局光照渲染方法,其特征在于该方法包括以下步骤:
(1)获取场景的XML文件,并将其转换为Blender格式;
(2)对Blender格式的场景文件进行多视角采样及渲染,得到多图层渲染结果,通过进行图层划分得到辅助缓冲区信息、直接光照贴图和真实渲染结果图,所述辅助缓冲区信息包括反照率贴图、深度贴图、着色法线贴图和高光反射贴图;
(3)建立间接光照渲染网络模型,所述间接光照渲染网络模型包括初步间接光照预测阶段和基于高光学习的间接光照完善阶段,所述初步间接光照预测阶段以反照率贴图、深度贴图、着色法线贴图和直接光照贴图为输入,学习得到初步间接光照贴图,所述基于高光学习的间接光照完善阶段以所述初步间接光照贴图和高光反射贴图作为输入,学习得到完整间接光照贴图;
(4)将辅助缓冲区信息、直接光照作为样本,真实渲染结果图作为样本标签,对所述间接光照渲染网络模型进行训练;
(5)获取待渲染的场景文件,按照步骤(1)(2)处理后输入训练好的间接光照渲染网络模型,得到低分辨率的间接光照贴图;
(6)将低分辨率的间接光照贴图上采样至高分辨率后,与渲染时生成的高分辨率直接光照贴图叠加,生成最终的高分辨率全局光照渲染结果。
2.根据权利要求1所述的基于辅助缓冲区和直接光照的全局光照渲染方法,其特征在于:步骤(1)具体包括:
(1-1)解析XML文件中双向散射分布函数部分的属性并转换为Blender格式;
(1-2)解析XML文件中光源部分的参数并转换为Blender格式;
(1-3)解析XML文件中的图像格式以及像素属性并转换为Blender格式;
(1-4)解析XML文件中的传感器部分的属性并转换为Blender格式;
(1-5)解析XML文件中的形状部分的属性并转换为Blender格式;
(1-6)对XML文件中纹理部分的属性进行解析并转换为Blender格式。
3.根据权利要求1所述的基于辅助缓冲区信息和直接光照的全局光照渲染方法,其特征在于:步骤(2)具体包括:
(2-1)对每一Blender格式的场景文件,通过设置不同的摄像机参数和采样参数,利用采样算法进行采样,然后进行路径追踪渲染,得到多图层渲染结果;
(2-2)将多图层渲染图像进行图层划分,得到辅助缓冲区信息、直接光照和真实渲染结果图。
4.根据权利要求3所述的基于辅助缓冲区信息和直接光照的全局光照渲染方法,其特征在于:步骤(2-1)具体包括:
(2-1-1)设置对Blender格式的场景文件的采样的图像数量n、采样的图像之间的角度间隔α、摄像机和物体之间的距离T,获取摄像机的初始坐标值(x0,y0),遍历图像数量,初始化图像索引i=0;
(2-1-2)根据当前正在渲染的图像索引i,计算当前需要渲染图像的弧度A:
A=(i-n/2)·α/360·2·π
(2-1-3)根据弧度A和距离T计算摄像机的x、y坐标偏移量Δx、Δy:
Δx=T·sinA
Δy=T·cosA
(2-1-4)按照下式计算摄像机坐标(x,y),并用弧度A赋值给摄像机角度参数K:
x=x0+Δx
y=y0+Δy
K=A
(2-1-5)按照摄像机角度参数K和摄像机坐标(x,y)采用路径追踪算法进行渲染,得到多图层渲染图像,包括Luxcore渲染器渲染得到的多图层图像结果以及Eevee渲染器渲染得到的多图层图像结果。
5.根据权利要求3所述的基于辅助缓冲区信息和直接光照的全局光照渲染方法,其特征在于:步骤(2-2)具体包括:
(2-2-1)将多图层渲染图像中每一个图层都按照通道划分多个单通道图像;
(2-2-2)从多图层渲染图像中读取其头文件,判断头文件中的view值是否为None,若否,则执行步骤(2-2-3);
(2-2-3)从头文件中获取图层名称列表,将图层名称列表以“.”为划分间隔提取得到每个图层的名称;
(2-2-4)根据提取的图层的名称,将属于同一图层的所有通道进行组合,并生成每个图层的头文件,分别得到反照率贴图、深度贴图、着色法线贴图、高光反射贴图、真实渲染结果图。
6.根据权利要求1所述的基于辅助缓冲区信息和直接光照的全局光照渲染方法,其特征在于:步骤(3)中所述间接光照渲染网络模型中:
所述初步间接光照预测阶段具体为U型的编码器-解码器结构,结合跳跃连接,编码器主要使用连续的Transformer模块构成,解码器仍然采用纯卷积结构;
所述基于高光学习的间接光照完善阶段具体为U-Net网络结构。
7.根据权利要求1所述的基于辅助缓冲区信息和直接光照的全局光照渲染方法,其特征在于:步骤(4)中对所述间接光照渲染网络模型训练时,采用的损失函数为:
L表示损失函数,N表示批处理数量,Yi表示第i个样本xi的样本标签,f(xi)表示对于第i个样本xi的网络输出,即完整间接光照贴图,优化过程使用Adam优化器。
8.根据权利要求1所述的基于辅助缓冲区信息和直接光照的全局光照渲染方法,其特征在于:所述上采样采用双线性插值方法实现。
9.一种基于辅助缓冲区信息和直接光照的全局光照渲染装置,其特征在于包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-8中任一所述方法。
10.一种包含计算机可执行指令的存储介质,其特征在于,所述计算机可执行指令在由计算机处理器执行时用于执行如权利要求1-8中任一所述方法。
CN202310379766.4A 2023-04-11 2023-04-11 基于辅助缓冲区信息和直接光照的全局光照渲染方法及装置 Pending CN116524101A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310379766.4A CN116524101A (zh) 2023-04-11 2023-04-11 基于辅助缓冲区信息和直接光照的全局光照渲染方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310379766.4A CN116524101A (zh) 2023-04-11 2023-04-11 基于辅助缓冲区信息和直接光照的全局光照渲染方法及装置

Publications (1)

Publication Number Publication Date
CN116524101A true CN116524101A (zh) 2023-08-01

Family

ID=87400323

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310379766.4A Pending CN116524101A (zh) 2023-04-11 2023-04-11 基于辅助缓冲区信息和直接光照的全局光照渲染方法及装置

Country Status (1)

Country Link
CN (1) CN116524101A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117292068A (zh) * 2023-11-24 2023-12-26 北京渲光科技有限公司 一种多重散射分布生成网络训练方法、渲染方法及装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117292068A (zh) * 2023-11-24 2023-12-26 北京渲光科技有限公司 一种多重散射分布生成网络训练方法、渲染方法及装置
CN117292068B (zh) * 2023-11-24 2024-03-05 北京渲光科技有限公司 一种多重散射分布生成网络训练方法、渲染方法及装置

Similar Documents

Publication Publication Date Title
Müller et al. Acquisition, synthesis, and rendering of bidirectional texture functions
Hughes Computer graphics: principles and practice
US6888544B2 (en) Apparatus for and method of rendering 3D objects with parametric texture maps
US6515674B1 (en) Apparatus for and of rendering 3d objects with parametric texture maps
US11615602B2 (en) Appearance-driven automatic three-dimensional modeling
US11954830B2 (en) High dynamic range support for legacy applications
Yao et al. Multi‐image based photon tracing for interactive global illumination of dynamic scenes
US10497150B2 (en) Graphics processing fragment shading by plural processing passes
Sheng et al. A spatially augmented reality sketching interface for architectural daylighting design
CN116524101A (zh) 基于辅助缓冲区信息和直接光照的全局光照渲染方法及装置
CN110084873B (zh) 用于渲染三维模型的方法和装置
CN113034660B (zh) 一种基于pbr反射模型的激光雷达仿真方法
CN116091684B (zh) 基于WebGL的图像渲染方法、装置、设备及存储介质
JP2003168130A (ja) リアルタイムで合成シーンのフォトリアルなレンダリングをプレビューするための方法
US20230274493A1 (en) Direct volume rendering apparatus
Gierlinger et al. Rendering techniques for mixed reality
KR100951121B1 (ko) 간접 조명 효과를 위한 렌더링 방법
AU2017228700A1 (en) System and method of rendering a surface
JP4847910B2 (ja) 人間の肌のような半透明の材質のための、曲率ベースレンダリング方法及び装置
Granier et al. Interactive visualization of complex real-world light sources
Brabec Shadow Techniques for Interactive and Real Time Applications
Shreiner et al. An interactive introduction to opengl programming
CN115439595A (zh) 一种面向ar的室内场景动态光照在线估计方法与装置
JP2518712B2 (ja) コンピュ―タグラフィックにおける高品質レンダリング図作成方法および装置
Hagemann et al. Scene Conversion for Physically-Based Renderers

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