CN116152419B - 数据处理方法、装置、设备及存储介质 - Google Patents
数据处理方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN116152419B CN116152419B CN202310400506.0A CN202310400506A CN116152419B CN 116152419 B CN116152419 B CN 116152419B CN 202310400506 A CN202310400506 A CN 202310400506A CN 116152419 B CN116152419 B CN 116152419B
- Authority
- CN
- China
- Prior art keywords
- sphere
- grids
- spherical
- spherical harmonic
- 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.)
- Active
Links
- 238000003860 storage Methods 0.000 title claims abstract description 26
- 238000003672 processing method Methods 0.000 title abstract description 19
- 238000005286 illumination Methods 0.000 claims abstract description 169
- 239000013598 vector Substances 0.000 claims abstract description 104
- 238000000034 method Methods 0.000 claims abstract description 65
- 238000009877 rendering Methods 0.000 claims abstract description 59
- 238000006243 chemical reaction Methods 0.000 claims description 235
- 230000006870 function Effects 0.000 claims description 62
- 230000005855 radiation Effects 0.000 claims description 36
- 238000012360 testing method Methods 0.000 claims description 29
- 238000012545 processing Methods 0.000 claims description 24
- 238000004590 computer program Methods 0.000 claims description 23
- 238000012549 training Methods 0.000 claims description 22
- 239000012634 fragment Substances 0.000 claims description 21
- 238000012546 transfer Methods 0.000 claims description 16
- 230000007613 environmental effect Effects 0.000 claims description 14
- 238000004891 communication Methods 0.000 claims description 13
- 230000009466 transformation Effects 0.000 claims description 13
- 238000013473 artificial intelligence Methods 0.000 abstract description 14
- 230000000694 effects Effects 0.000 abstract description 12
- 238000002372 labelling Methods 0.000 description 21
- 238000013507 mapping Methods 0.000 description 18
- 238000005516 engineering process Methods 0.000 description 16
- 239000011159 matrix material Substances 0.000 description 16
- 238000010586 diagram Methods 0.000 description 12
- 230000008569 process Effects 0.000 description 9
- 239000003086 colorant Substances 0.000 description 7
- 238000010801 machine learning Methods 0.000 description 5
- 238000005070 sampling Methods 0.000 description 5
- 230000004913 activation Effects 0.000 description 4
- 230000004927 fusion Effects 0.000 description 4
- 230000003993 interaction Effects 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 101100495270 Caenorhabditis elegans cdc-26 gene Proteins 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000004883 computer application Methods 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 238000007477 logistic regression Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000012706 support-vector machine Methods 0.000 description 2
- HPTJABJPZMULFH-UHFFFAOYSA-N 12-[(Cyclohexylcarbamoyl)amino]dodecanoic acid Chemical compound OC(=O)CCCCCCCCCCCNC(=O)NC1CCCCC1 HPTJABJPZMULFH-UHFFFAOYSA-N 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000033228 biological regulation Effects 0.000 description 1
- 238000004040 coloring Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000005315 distribution function Methods 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 230000006698 induction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000013526 transfer learning Methods 0.000 description 1
- 238000009827 uniform distribution Methods 0.000 description 1
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/06—Ray-tracing
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/50—Controlling the output signals based on the game progress
- A63F13/52—Controlling the output signals based on the game progress involving aspects of the displayed game scene
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Computer Graphics (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Generation (AREA)
Abstract
本申请实施例公开了一种数据处理方法、装置、设备及存储介质,应用于人工智能技术领域,该方法包括:获取待渲染的虚拟对象的对象信息,以及所述虚拟对象上的M个球体网格分别对应的位置信息和法向量;根据所述M个球体网格分别对应的位置信息和法向量,确定所述M个球体网格分别对应的球谐系数;球谐系数用于反映对应球体网格的网格特征;根据所述M个球体网格分别对应的球谐系数,以及所述虚拟对象对应的环境光照信息和视图方向信息,生成所述虚拟对象的光照强度信息;根据所述虚拟对象的光照强度信息,对所述虚拟对象进行渲染。通过本申请能够降低渲染耗时,避免掉帧,提高渲染效果。
Description
技术领域
本申请涉及人工智能技术等领域,尤其涉及一种数据处理方法、装置、设备及存储介质。
背景技术
通常的3D游戏渲染过程中,主要使用人工代码进行渲染优化,由于3D游戏中的模型在游戏中最后都是通过纹理网格(mesh)进行堆叠而成,而纹理网格需要的顶点计算量非常大,渲染耗时比较大,很容易掉帧,导致渲染效果比较差。
发明内容
本申请实施例提供一种数据处理方法、装置、设备及存储介质,降低渲染耗时,避免掉帧,提高渲染效果。
本申请实施例一方面提供一种数据处理方法,包括:
获取待渲染的虚拟对象的对象信息,以及所述虚拟对象上的M个球体网格分别对应的位置信息和法向量;所述对象信息包括所述虚拟对象对应的环境光照信息和视图方向信息,M为大于1的整数;
根据所述M个球体网格分别对应的位置信息和法向量,确定所述M个球体网格分别对应的球谐系数;球谐系数用于反映对应球体网格的网格特征;
根据所述M个球体网格分别对应的球谐系数,以及所述虚拟对象对应的环境光照信息和视图方向信息,生成所述虚拟对象的光照强度信息;
根据所述虚拟对象的光照强度信息,对所述虚拟对象进行渲染。
本申请实施例一方面提供一种数据处理装置,包括:
获取模块,用于获取待渲染的虚拟对象的对象信息,以及所述虚拟对象上的M个球体网格分别对应的位置信息和法向量;所述对象信息包括所述虚拟对象对应的环境光照信息和视图方向信息,M为大于1的整数;
确定模块,用于根据所述M个球体网格分别对应的位置信息和法向量,确定所述M个球体网格分别对应的球谐系数;球谐系数用于反映对应球体网格的网格特征;
生成模块,用于根据所述M个球体网格分别对应的球谐系数,以及所述虚拟对象对应的环境光照信息和视图方向信息,生成所述虚拟对象的光照强度信息;
渲染模块,用于根据所述虚拟对象的光照强度信息,对所述虚拟对象进行渲染。
确定模块包括融合单元、输入单元以及识别单元;
融合单元,用于对所述M个球体网格分别对应的位置信息和法向量进行融合,得到所述M个球体网格的信息张量;
输入单元,用于将所述M个球体网格的信息张量输入至球谐转换模型中;
识别单元,用于通过所述球谐转换模型对所述M个球体网格的信息张量进行识别,得到所述M个球体网格分别对应的球谐系数。
可选的,所述识别单元通过所述球谐转换模型对所述M个球体网格的信息张量进行识别,得到所述M个球体网格分别对应的球谐系数,包括:
通过所述球谐转换模型的距离识别层,根据信息张量,识别球体网格g分别与剩余球体网格之间的距离;g为小于或等于M的正整数,剩余球体网格为所述M个球体网格中除所述球体网格g以外的球体网格;
通过所述球谐转换模型的角度识别层,根据信息张量,识别所述球体网格g的法向量分别与所述剩余球体网格的法向量之间的角度差;
通过所述球谐转换模型的系数确定层,根据所述距离和所述角度差,确定所述球体网格g对应的球谐系数;
直到获取到所述M个球体网格分别对应的球谐系数。
该装置还包括添加模块;添加模块,用于将所述M个球体网格的信息张量添加至在图形处理器中;
所述识别单元将所述M个球体网格的信息张量输入至球谐转换模型中,包括:
将所述图形处理器中的所述M个球体网格的信息张量,输入至所述图形处理器中的球谐转换模型中。
可选的,所述识别单元将所述图形处理器中的所述M个球体网格的信息张量,输入至所述图形处理器中的球谐转换模型中,包括:
通过第一通道从所述图形处理器中提取所述M个球体网格的信息张量;
通过第二通道从所述图形处理器中加载所述图形处理器中的球谐转换模型;
通过所述第一通道,调用所述第二通道对应的通信接口,将所述M个球体网格的信息张量输入至所述球谐转换模型中。
添加模块,用于将所述M个球体网格的信息张量添加至片段着色器中;
所述识别单元将所述M个球体网格的信息张量输入至球谐转换模型中,包括:
将所述片段着色器中的所述M个球体网格的信息张量,输入至所述片段着色器中的球谐转换模型中。
可选的,获取模块还用于获取训练对象的R个球体网格分别对应的标注球谐系数,以及所述R个球体网格的位置信息和法向量;R为大于1的正整数;
所述装置还包括:输入模块、预测模块以及调整模块;
输入模块,用于将所述R个球体网格的位置信息和法向量输入至初始球谐转换模型中;
预测模块,用于通过所述初始球谐转换模型对所述R个球体网格的位置信息和法向量进行预测,得到所述R个球体网格分别对应的预测球谐系数;
调整模块,用于根据述R个球体网格分别对应的标注球谐系数和预测球谐系数,对所述初始球谐转换模型进行调整,得到所述球谐转换模型。
可选的,获取模块获取所述R个球体网格分别对应的标注球谐系数,包括:
获取所述R个球体网格分别对应的球函数和基函数;
对球体网格g对应的球函数和基函数进行积分运算,得到球体网格g对应的标注球谐系数;g为小于或等于M的正整数;
直到获取到所述M个球体网格分别对应的标注球谐系数。
可选的,调整模块可以包括调整单元、获取单元以及测试单元;
调整单元,用于根据述R个球体网格分别对应的标注球谐系数和预测球谐系数,对所述初始球谐转换模型的模型参数进行调整,得到调整后的初始球谐转换模型;
获取单元,用于获取测试对象的N个球体网格的位置信息和法向量,以及所述N个球体网格分别对应的标注球谐系数;N为大于1的正整数;
测试单元,用于将所述N个球体网格的位置信息和法向量输入至所述调整后的初始球谐转换模型中;通过所述调整后的初始球谐转换模型对所述N个球体网格的位置信息和法向量进行预测,得到所述N个球体网格分别对应的预测球谐系数;根据所述N个球体网格分别对应的标注球谐系数和预测球谐系数,对所述调整后的初始球谐转换模型进行测试处理,得到所述球谐转换模型。
可选的,测试单元根据述N个球体网格分别对应的标注球谐系数和预测球谐系数,对所述调整后的初始球谐转换模型进行测试处理,得到所述球谐转换模型,包括:
根据所述N个球体网格分别对应的标注球谐系数和预测球谐系数,确定所述调整后的初始球谐转换模型的系数预测误差;
根据所述系数预测误差确定所述调整后的初始球谐转换模型的收敛状态;
若所述调整后的初始球谐转换模型的收敛状态为已收敛状态,则将所述调整后的初始球谐转换模型,确定为所述球谐转换模型;
若所述调整后的初始球谐转换模型的收敛状态为未收敛状态,则根据所述R个球体网格的位置信息和法向量,以及所述R个球体网格分别对应的标注球谐系数,对所述调整后的初始球谐转换模型进行调整,得到所述球谐转换模型。
生成模块可以包括乘积单元和确定单元;
乘积单元,用于对球体网格g对应的球谐系数,以及所述虚拟对象对应的环境光照信息和视图方向信息进行乘积运算,得到所述球体网格g的光照转移辐射;g为小于或等于M的正整数;对所述球体网格g对应的球谐系数,以及所述虚拟对象对应的环境光照信息进行乘积运算,得到所述球体网格g的光照反射辐射;
确定单元用于根据所述球体网格g的光照反射辐射和所述光照转移辐射,确定所述球体网格g的光照强度;直到获取到所述M个球体网格分别对应的光照强度,将所述M个球体网格分别对应的光照强度,作为所述虚拟对象的光照强度信息。
本申请实施例一方面提供了一种计算机设备,包括存储器和处理器,上述存储器存储有计算机程序,上述处理器执行上述计算机程序时实现上述的方法的步骤。
本申请实施例一方面提供了一种计算机可读存储介质,其上存储有计算机程序,上述计算机程序被处理器执行时实现上述的方法的步骤。
本申请实施例一方面提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述的方法的步骤。
本申请中,基于虚拟对象上的M个球体网格的位置信息和法向量,确定该M个球体网格的球谐系数,球谐系数用于反映对应球体网格的网格特征,即M个球体网格为对虚拟对象的表面进行划分得到,实现直接从虚拟对象的表面上学习到表征虚拟对象的球谐系数,这样M个球体网格的球谐系数能够更加逼真的描述虚拟对象的形状以及大小等特征。进一步,通过M个球体网格分别对应的球谐系数,以及该虚拟对象对应的环境光照信息和视图方向信息,生成该虚拟对象的光照强度信息,实现直接从虚拟对象的表面上学习到光照强度信息,根据该虚拟对象的光照强度信息,直接对该虚拟对象进行渲染,降低渲染耗时,避免掉帧,实现实时逼真渲染,提高渲染效果。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请提供的一种数据处理系统示意图;
图2是本申请提供的一种数据处理方法的交互场景示意图;
图3是本申请提供的一种数据处理方法的流程示意图;
图4是本申请提供的另一种数据处理方法的流程示意图;
图5是本申请提供的一种通过球谐转换模型获取球体网格的球谐系数的场景示意图;
图6是本申请提供的一种球谐转换模型的结构示意图;
图7是本申请实施例提供的一种训练初始球谐转换模型的场景示意图;
图8是本申请实施例提供的另一种训练初始球谐转换模型的场景示意图;
图9是本申请实施例提供的一种数据处理装置的结构示意图;
图10是本申请实施例提供的一种计算机设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请涉及图像渲染技术,具体涉及游戏场景或动画场景中针对虚拟对象渲染技术,目前,通常是采用顶点空间方法或纹理空间方法对虚拟对象进行渲染,顶点空间方法是以表格方式在顶点空间中存储预先计算的传输值(如对象特征、光照信息),纹理空间是表格方式在纹理空间中存储预先计算的传输值,这些传输值均是通过在虚拟对象的每个着色点进行插值获取到的。但是,顶点空间方法需要从虚拟对象上采集密集的网格顶点以获得高质量图像,导致渲染耗时比较大,容易掉帧。纹理空间方法需要虚拟对象的非重叠纹理区域保留 UV 映射可用,此处的UV 映射是指采用带有多边形和细分曲面网格的顶点组件信息的二维纹理坐标描述虚拟对象。UV映射主要用于二维平面纹理映射,在虚拟对象具有曲面时,导致UV映射不可用,即纹理空间方法在UV映射不可用的情况下,不能采用纹理空间方法,限制了应用场景。
基于此,本申请中提出一种数据处理方法,该数据处理方法是基于球谐空间的渲染方法,该方法中,基于虚拟对象上的M个球体网格的位置信息和法向量,确定该M个球体网格的球谐系数,球谐系数用于反映对应球体网格的网格特征,即M个球体网格为对虚拟对象的表面进行划分得到,实现直接从虚拟对象的表面上学习到表征虚拟对象的球谐系数,这样M个球体网格的球谐系数能够更加逼真的描述虚拟对象的形状以及大小等特征。进一步,通过M个球体网格分别对应的球谐系数,以及该虚拟对象对应的环境光照信息和视图方向信息,生成该虚拟对象的光照强度信息,实现直接从虚拟对象的表面上学习到光照强度信息,根据该虚拟对象的光照强度信息,直接对该虚拟对象进行渲染,不需要对大量网格顶点进行计算,降低渲染耗时,避免掉帧,实现实时逼真渲染,提高渲染效果。特别地,由于球谐网络与虚拟对象的曲面相似度比较高,因此,球体网格的球谐系数能够更加准确地描述虚拟对象的曲面,即本申请,能够解决UV映射不可用的问题,即本申请可适用于曲面等UV映射不可用的场景中,扩大本申请的适用范围。
本申请还涉及到人工智能技术,例如,通过人工智能技术从直接预测虚拟对象上的球体网格的球谐系数等等,有利于能够更加逼真的描述虚拟对象的形状以及大小等特征。所谓人工智能(Artificial Intelligence,AI),是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它目的在于了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
所谓机器学习(Machine Learning, ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。
为了便于更清楚理解本申请,首先介绍实现本申请的数据处理系统,如图1所示,该数据处理系统中包括服务器10和终端集群,终端集群可以包括一个或者多个终端,这里将不对终端的数量进行限制。如图1所示,终端集群具体可以包括终端1、终端2、… 、终端n;可以理解的是,终端1、终端2、终端3、… 、终端n均可以与服务器10进行网络连接,以便于每个终端均可以通过网络连接与服务器10之间进行数据交互。
终端中安装有一个或多个目标应用程序,此处的目标应用程序可以是指具有图像渲染功能或图像展示功能的应用程序,如目标应用程序可以包括独立的应用程序、网页应用、宿主应用中的小程序等,具体的,独立的应用程序可以是指游戏应用程序、视频播放应用程序等。服务器10是指为终端中的目标应用程序提供后端服务的设备,在一个实施例中,服务器可以获取虚拟对象的球谐系数,根据球谐系数等参数,对虚拟对象进行渲染,得到图像帧,将图像帧返回给终端,以便终端能够播放图像帧。
可理解的是,服务器可以是独立的一个物理服务器,也可以是至少两个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、中容分发网络(ContentDelivery NetworK,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。终端具体可以是指车载终端、智能手机、平板电脑、笔记本电脑、桌上型电脑、智能音箱、有屏音箱、智能手表等等,但并不局限于此。各个终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,同时,终端以及服务器的数量可以为一个或至少两个,本申请在此不做限制。
可理解的是,本申请中可以应用于图像渲染场景中,图像渲染场景具体可以是指动画渲染场景以及游戏渲染场景等等,虚拟对象可以是指虚拟人物、虚拟动物、虚拟道具等。如图2所示,图2中以游戏渲染场景为例进行说明,如图2中虚拟对象21a可以是指待渲染的云,图2中的服务器20a可以是指图1中的服务器10,图2中的终端23a可以是指图1中的终端集群中的任一终端。对虚拟对象21a的渲染过程可以包括如下步骤S1~S4:
S1、获取虚拟对象21a在游戏场景中的参数信息。该参数信息可以包括在游戏场景中的几何数据以及环境光照信息,几何数据可以包括虚拟对象21a的视图方向向量、虚拟对象21a上的M个球体网格分别对应的位置信息和法向量。环境光照信息反映虚拟对象所在的游戏场景中的环境光照的强度、以及环境光照的方向等,视图方向向量用于反映虚拟对象21a的朝向。M个球体网格是对虚拟对象21a进行划分得到,球体网格对应的位置信息可以反映球体网格内的任一表面采样点的位置,球体网格对应的法向量可以是指球体网格内的表面采样点的法向量。如图2中,虚拟对象21a包括7个球体网格,分别为球体网格1、球体网格2、球体网格3、球体网格4、……、球体网格7。
S2、确定M个球体网格分别对应的球谐系数,球谐系数是指反映球体网格对应网格特征,网格特征包括网格形状、尺寸等信息。服务器20a可以生成M个球体网格分别对应的信息张量,具体的,服务器20a可以生成反映球体网格1的位置信息的位置矩阵1,将球体网格1的法向量添加至位置矩阵1中,得到球体网络1的信息张量。同理,生成反映球体网格2的位置信息的位置矩阵2,将球体网格2的法向量添加至位置矩阵2中,得到球体网络2的信息张量。以此类推,直到服务器20a获取到7个球体网格的信息张量。进一步,7个球体网格的信息张量输入至球谐转换模型中,球谐转换模型可以是指生成球体网格的球谐系数的模型,通过该球谐转换模型,根据7个球体网格的信息张量,生成7个球体网格的球谐系数。
S3、获取虚拟对象21a的颜色估计。服务器20a可以根据M个球体网格的球谐系数,以及虚拟对象21a的环境光照信息以及视图方向向量,确定虚拟对象21a的光照强度信息,虚拟对象21a的光照强度信息反映虚拟对象21a的M个球体网格上的光照强度。服务器20a可以获取M个球体网格分别对应的原始颜色,原始颜色为球体网格本身所具有的颜色,根据球体网格1对应的原始颜色和光照强度,确定球体网格1在环境光照的作用下的最终颜色,作为球体网格1的目标颜色。同理,根据球体网格2对应的原始颜色和光照强度,确定球体网格2在环境光照的作用下的最终颜色,作为球体网格2的目标颜色;以此类推,直到获取到7个球体网格分别对应的目标颜色,将7个球体网格分别对应的目标颜色,确定为虚拟对象21a的颜色估计。
S4、服务器20a可以根据虚拟对象21a的颜色估计,对虚拟对象21a进行渲染,得到包括虚拟对象21a的图像帧22a,将图像帧22a发送至终端23a,终端23a可以显示图像帧23a,图像帧23a为包括虚拟对象21a的游戏场景的图像帧。
综上,通过直接从虚拟对象的表面上学习到表征虚拟对象的球谐系数,这样M个球体网格的球谐系数能够更加逼真的描述虚拟对象的形状以及尺寸等特征。进一步,通过M个球体网格分别对应的球谐系数,以及该虚拟对象对应的环境光照信息和视图方向信息,生成该虚拟对象的光照强度信息,实现直接从虚拟对象的表面上学习到光照强度信息,根据该虚拟对象的光照强度信息,直接对该虚拟对象进行渲染,不需要对大量网格顶点进行计算,降低渲染耗时,避免掉帧,实现实时逼真渲染,提高渲染效果。特别地,由于球谐网络与虚拟对象的曲面相似度比较高,因此,球体网格的球谐系数能够更加准确地描述虚拟对象的曲面,即本申请,能够解决UV映射不可用的问题,即本申请可适用于曲面等UV映射不可用的场景中,扩大本申请的适用范围。
进一步地,请参见图3,是本申请实施例提供的一种数据处理方法的流程示意图。如图3所示,该方法可由图1中的终端集群中的任一终端来执行,也可以由图1中的服务器来执行,还可以由图1中的服务器和终端集群中的任一终端来协同执行,本申请中用于执行该数据处理方法的设备可以统称为计算机设备。其中,该方法可以包括如下步骤:
S101、获取待渲染的虚拟对象的对象信息,以及上述虚拟对象上的M个球体网格分别对应的位置信息和法向量;上述对象信息包括上述虚拟对象对应的环境光照信息和视图方向信息,M为大1的整数。
本申请中,计算机设备可以获取待渲染的虚拟对象的对象信息,对象信息包括虚拟对象对应的环境光照信息以及视图方向向量,虚拟对象对应的环境光照信息反映虚拟对象所在环境的环境光照的强度,以及环境光照的位置等,视图方向向量用于反映虚拟对象的朝向,即视图方向向量用于反映虚拟对象在球谐空间中的朝向,球谐空间可以是指球坐标空间。环境光照强度和虚拟对象在球谐空间中的朝向可以是指预先设置的。进一步,计算机设备可以获取虚拟对象上的M个球体网格,球体网格,M个球体网格是对虚拟对象的表面进行划分得到的,球体网格可以是曲面形状的网格,球体网格可以是由一条或多条曲线构成。进一步,计算机设备可以获取该虚拟对象上的M个球体网格分别的位置信息和法向量,球体网格对应的位置信息和法向量可以是指该球体网格中的一个或多个表面采样点的位置信息和法向量,法向量可以是指垂直于表面采样点处的平面的直线所表示的向量。
需要说明的是,计算机设备可以按照等面积的方式,对虚拟对象进行划分,得到M个球体网格,即M个球体网格之间的面积均相同,或者,计算机设备可以按照虚拟对象的部位的相似度,对虚拟对象进行划分,得到M个球体网格,如该虚拟对象可以是指虚拟人,可以虚拟人的将头部作为一个球体网格,可以将虚拟人中除头部以外的上半身可以作为一个球体网格,可以将虚拟人的下半身作为一个球体网格。
S102、根据该M个球体网格分别对应的位置信息和法向量,确定该M个球体网格分别对应的球谐系数;球谐系数用于反映对应球体网格的表格特征。
本申请中,计算机设备可以根据该M个球体网格分别对应的位置信息和法向量,确定该M个球体网格分别对应的球谐系数,球谐系数用于反映对应球体网格的表格特征,表格特征包括球体网格的尺寸以及形状等特征。
S103、根据该M个球体网格分别对应的球谐系数,以及该虚拟对象对应的环境光照信息和视图方向信息,生成该虚拟对象的光照强度信息。
本申请中,计算机设备可以根据该M个球体网格分别对应的球谐系数,以及该虚拟对象对应的环境光照信息和视图方向信息,生成该虚拟对象的光照强度信息,该虚拟对象的光照强度信息可以是指驻留在虚拟对象上的光照强度。可理解的是,由于不同形状的球体网格上的光照强度不一致,或者,不同球体网格是否被遮挡会导致不同球体网格之间的光照强度不一致,因此,此处该虚拟对象的光照强度信息可以包括M个球体网格的光照强度。
可选的,上述根据上述M个球体网格分别对应的球谐系数,以及上述虚拟对象对应的环境光照信息和视图方向信息,生成上述虚拟对象的光照强度信息,包括:计算机设备可以对球体网格g对应的球谐系数,以及上述虚拟对象对应的环境光照信息和视图方向信息进行乘积运算,得到上述球体网格g的光照转移辐射;g为小于或等于M的正整数,光照转移辐射可以是指从环境光照直接照射到球体网格上的光照强度。进一步,计算机设备可以对上述球体网格g对应的球谐系数,以及上述虚拟对象对应的环境光照信息进行乘积运算,得到上述球体网格g的光照反射辐射;光照反射辐射可以是指环境光照由于反射作用照射到球体网格上的光照强度,计算机设备可以对上述球体网格g的光照反射辐射和上述光照转移辐射进行求和处理,得到上述球体网格g的光照强度。同理,对球体网格g+1对应的球谐系数,以及上述虚拟对象对应的环境光照信息和视图方向信息进行乘积运算,得到上述球体网格g+1的光照转移辐射,对上述球体网格g+1对应的球谐系数,以及上述虚拟对象对应的环境光照信息进行乘积运算,得到上述球体网格g+1的光照反射辐射,对上述球体网格g+1的光照反射辐射和上述光照转移辐射进行求和处理,得到上述球体网格g+1的光照强度。以此类推,直到获取到上述M个球体网格分别对应的光照强度,将上述M个球体网格分别对应的光照强度,作为上述虚拟对象的光照强度信息。通过各个球体网格的光照强度,确定虚拟对象的光照强度信息,有利于提高获取虚拟对象的光照强度信息的准确度,使虚拟对象的光照强度信息更加逼近真实场景下的光照强度信息,进而使后续渲染得到的虚拟对象更加逼真。
例如,计算机设备可以采用如下公式(1)计算上述球体网格g的光照转移辐射:
其中,公式(1)中的表示球体网格g的光照转移辐射,p球体网格g的位置信息,即球体网格在屏幕中的位置,/>是指球坐标空间,/>为虚拟对象对应的环境光照的强度,是指虚拟对象的视图方向向量,/>球体网格g的第i个球谐系数,i=c2+1+m。w为变换域坐标,c是指球谐系数/>对应的基带(基础带宽)的索引,m范围为-l≤m≤l,是基带内的索引。/>表示三重乘积张量(及三重系数矩阵),即/>为反映球体网格g的球谐系数的矩阵、反映虚拟对象对应的环境光照的强度的矩阵以及反映虚拟对象的视图方向向量的矩阵三者之间的乘积,k为/>的维度,j反映信息张量的维度。
可选的,计算机设备可以使用如下公式(2)的三重乘积公式,来表示上述球体网格g的光照反射辐射:
其中,公式(2)中是朝向屏幕视点p的方向,/>是虚拟对象所在在求坐标空间的单位半球/>的入射方向,n是球体网格的法向量,/>是/>方向上的光照反射辐射,/>是指/>方向上传入的环境光照的强度。/>表示在/>方向上均匀分布在球体网格g上的环境光照的函数,为均匀分布函数,/>表示在/>方向反射函数,即双向反射分布函数,/>为逻辑运算符。其中,球体网格g在/>方向上的球谐系数为/>(/>)=/>(/>)(/>⊙n)。基于公式(2),球体网格g的光照反射辐射可以采用如下公式(3)表示:
S104、根据上述虚拟对象的光照强度信息,对上述虚拟对象进行渲染。
本申请中,计算机设备可以获取该虚拟对象的原始颜色信息,根据该虚拟对象的光照强度信息和原始颜色,确定该虚拟对象的目标颜色;原始颜色可以是指虚拟对象本身具有的颜色,目标颜色可以是指虚拟对象的原始颜色在虚拟对象的光照强度信息对应的光照强度下所呈现出的颜色。进一步,根据虚拟对象的目标颜色对该虚拟对象进行渲染,得到包括虚拟对象的图像帧。
本申请中,基于虚拟对象上的M个球体网格的位置信息和法向量,确定该M个球体网格的球谐系数,球谐系数用于反映对应球体网格的网格特征,即M个球体网格为对虚拟对象的表面进行划分得到,实现直接从虚拟对象的表面上学习到表征虚拟对象的球谐系数,这样M个球体网格的球谐系数能够更加逼真的描述虚拟对象的形状以及大小等特征。进一步,通过M个球体网格分别对应的球谐系数,以及该虚拟对象对应的环境光照信息和视图方向信息,生成该虚拟对象的光照强度信息,实现直接从虚拟对象的表面上学习到光照强度信息,根据该虚拟对象的光照强度信息,直接对该虚拟对象进行渲染,不需要对大量网格顶点进行计算,降低渲染耗时,避免掉帧,实现实时逼真渲染,提高渲染效果。特别地,由于球谐网络与虚拟对象的曲面相似度比较高,因此,球体网格的球谐系数能够更加准确地描述虚拟对象的曲面,即本申请,能够解决UV映射不可用的问题,即本申请可适用于曲面等UV映射不可用的场景中,扩大本申请的适用范围。
进一步地,请参见图4,是本申请实施例提供的一种数据处理方法的流程示意图。如图4所示,该方法可由图1中的终端集群中的任一终端来执行,也可以由图1中的服务器来执行,本申请中用于执行该数据处理方法的设备可以统称为计算机设备。其中,该方法可以包括如下步骤:
S201、获取待渲染的虚拟对象的对象信息,以及上述虚拟对象上的M个球体网格分别对应的位置信息和法向量;上述对象信息包括上述虚拟对象对应的环境光照信息和视图方向信息,M为大1的整数。
S202、对上述M个球体网格分别对应的位置信息和法向量进行融合,得到上述M个球体网格的信息张量。
本申请中,计算机设备可以生成反映M个球体网格分别对应的位置信息的位置矩阵,即位置矩阵中的元素反映M个球体网格分别对应的位置信息,将该法向量中的元素添加至该位置矩阵中,得到M个球体网格的信息张量,该M个球体网格的信息张量为反映M个球体网格分别对应的位置信息和法向量的矩阵。或者,计算机设备可以生成球体网格g的位置信息的位置矩阵,将球体网格g的法向量中的元素添加至球体网格g对应的位置矩阵中,得到球体网格g的信息张量,以此类推,得到M个球体网格分别对应的信息张量,将M个球体网格分别对应的信息张量,确定为上述M个球体网格的信息张量。
S203、将上述M个球体网格的信息张量输入至球谐转换模型中。
本申请中,该球谐转换模型可以是指生成虚拟对象的球谐系数的模型,该球谐转换模型可以是指多层感知机模型、支持向量机(Support Vector Machine,SVM)模型、卷积神经网络(Convolutonal Neural NetworR,CNN)模型、全连接神经网络(FullyConvolutional Networks,FCN)模型等。计算机设备可以将该M个球体网格的信息张量输入至球谐转换模型中,有利于通过球谐转换模型生成虚拟对象的球谐系数。
可选的,计算机设备获取到该M个球体网格的信息张量之后,可以将该M个球体网格的信息张量添加至在图形处理器(Graphic Processing Unit,GPU)中。上述将该M个球体网格的信息张量输入至球谐转换模型中,包括:将该图形处理器中的该M个球体网格的信息张量,输入至该图形处理器中的球谐转换模型中。也就是说,M个球体网格的信息张量和球谐转换模型均被存储在图形处理器中,即M个球体网格的信息张量和球谐转换模型共享图形处理器中的内存,有利于获取虚拟对象的球谐系数的过程在图形处理器中实现,不需要涉及主机之间的切换,避免主机延迟,提高获取虚拟对象的球谐系数的效率。
可选的,M个球体网格的信息张量和球谐转换模型可以存储在图形处理器中的G缓存(Geometry Buffer,G-Buffer)中,G缓存可以是指图形处理器中用于储中间结果以及球谐转换模型(即球谐转换模型的模型参数)的存储空间,中间结果可以包括该M个球体网格的信息张量、颜色等信息。
例如,如图5所示,计算机设备可以获取各个球体网格的信息张量,如球体网格g的法向量为,球体网格g的位置信息为/>,球体网格g的信息张量为(/>),以此类推,将各个球体网格的信息张量存储在图形处理器的G缓存中。该球谐转换模型也存储在图形处理器的G缓存,即球谐转换模型的模型参数存储在图形处理器的G缓存中,球谐转换模型的模型参数也可以称为训练权重参数。计算机设备可以从图形处理器的G缓存中加载球谐转换模型,将图形处理器的G缓存中的信息张量输入至球谐转换模型中,通过球谐转换模型对信息张量进行识别,得到M个球体网格分别对应的球谐系数。获取球谐系数的过程均在图形处理器中实现,不需要涉及主机之间的交互,避免主机交互延迟,提高获取球谐系数的效率。
可选的,上述将上述图形处理器中的该M个球体网格的信息张量,输入至该图形处理器中的球谐转换模型中,包括:计算机设备可以包括两个相互独立的第一通道和第二通道,第一通道可以是指用于从图形处理器中提取该M个球体网格的信息张量的通道,如第一通道可以是指开放图形库(Open Graphics Library,OpenGL)通道;第二通道可以是指用于加载图形处理器中的球谐转换模型,基于球谐转换模型生成虚拟对象的球谐系数的通道,如第二通道可以是指一种运算(Compute Unified Device Architecture,CUDA)通道。具体的,计算机设备可以通过第一通道和第二通过,以并行方式或串行方式,将上述图形处理器中的该M个球体网格的信息张量,输入至该图形处理器中的球谐转换模型中。以并行方式为例,计算机设备可以通过第一通道从该图形处理器中提取该M个球体网格的信息张量,同时,通过第二通道从该图形处理器中加载该图形处理器中的球谐转换模型。进一步,通过该第一通道,调用该第二通道对应的通信接口,将该M个球体网格的信息张量输入至该球谐转换模型,这样有利于提高将该M个球体网格的信息张量输入至该球谐转换模型中的效率。
可选的,计算机设备获取到该M个球体网格的信息张量之后,可以将该M个球体网格的信息张量添加至片段着色器中。上述将该M个球体网格的信息张量输入至球谐转换模型中,包括:将该片段着色器中的上述M个球体网格的信息张量,输入至该片段着色器中的球谐转换模型中。也就是说,M个球体网格的信息张量和球谐转换模型均被存储在片段着色器中,即M个球体网格的信息张量和球谐转换模型共享片段着色器中的内存,有利于获取虚拟对象的球谐系数的过程在片段着色器中实现,不需要涉及主机之间的切换,避免主机延迟,提高获取虚拟对象的球谐系数的效率。
例如,计算机设备可以将球谐转换模型的模型参数(即网络权重等参数)硬编码在4个×4个片段着色器中的矩阵(mat4类型)中,即将球谐转换模型的每一层的模型参数存储至多个矩阵中,mat4类型的矩阵是指4x4矩阵。当需要获取球体网格的球谐系数时,计算机设备可以从片段着色器中读取M个球体网格的信息张量,并从片段着色器中加载模型参数,基于模型参数构建球谐转换模型,将球体网格的信息张量输入至球谐网络中,有利于后续通过球谐转换模型获取球体网格的球谐系数。
S204、通过上述球谐转换模型对上述M个球体网格的信息张量进行识别,得到上述M个球体网格分别对应的球谐系数。
本申请中,计算机设备可以通过上述球谐转换模型对上述M个球体网格的信息张量进行识别,得到上述M个球体网格分别对应的球谐系数,实现直接从虚拟对象的表面上学习到表征虚拟对象的球谐系数,提高获取虚拟对象的球谐系数的准确度。
可选的,该球谐转换模型可以包括距离识别层、角度识别 层以及系数确定层,距离识别层用于识别M个球体网格之间的距离,角度识别层用于识别M个球体网格对应的法向量之间角度差,系数确定层用于识别M个球体网格分别对应的球谐系数。上述通过上述球谐转换模型对上述M个球体网格的信息张量进行识别,得到该M个球体网格分别对应的球谐系数,包括:计算机设备可以通过该球谐转换模型的距离识别层,根据信息张量,识别球体网格g分别与剩余球体网格之间的距离;g为小于或等于M的正整数,剩余球体网格为该M个球体网格中除该球体网格g以外的球体网格。进一步,通过上述球谐转换模型的角度识别层,根据信息张量,识别上述球体网格g的法向量分别与上述剩余球体网格的法向量之间的角度差;通过上述球谐转换模型的系数确定层,根据上述距离和上述角度差,确定上述球体网格g对应的球谐系数;直到获取到上述M个球体网格分别对应的球谐系数。通过球谐转换模型,对M个球体网格的信息张量进行识别,得到该M个球体网格分别对应的球谐系数,实现直接从虚拟对象的表面上学习到表征虚拟对象的球谐系数,这样M个球体网格的球谐系数能够更加逼真的描述虚拟对象的形状以及大小等特征。
例如,假设虚拟对象包括5个球体网格,针对球体网格1,计算机设备可以通过距离识别层,根据5个球体网格对应的信息张量,确定球体网格1分别与球体网格2、球体网格3、球体网格4、球体网格5之间的距离。进一步,通过角度识别层根据5个球体网格对应的信息张量,确定球体网格1的法向量分别与球体网格2、球体网格3、球体网格4、球体网格5的法向量之间的角度差,通过系数确定层,根据球体网格1对应的距离以及角度差,确定球体网格1的球谐系数。以此类推,直到获取到5个球谐网格分别对应的球谐系数。
例如,如图6所示,该球谐转换模型可以包括4层,分别为第一层、第二层、第三层以及第四层,第一层可以是指距离识别层,第二层可以是角度识别层,第三层可以上系数确定层,第四层可以是指输出层。第一层、第二层、第三层以及第四层均可以是指由多个神经元构成,其中,第一层与第二层之间、第二层与第三层之间、第三层与第四层之间均具有黑色实线箭头,该黑色实线箭头表示ReLU激活函数,ReLU激活函数用于对上一层的输出进行修正处理,如所有的负值都变为0,而正值不变。第四层具有黑色虚线箭头,该黑色虚线箭头表示tanh激活函数,该tanh激活函数,tanh为双曲正切函数,饱和激活函数,作用在于将输出值限定在(-1,1)内。
需要说明的是,如果分别计算虚拟对象的所有表面采样点的球谐系数,会增加计算量,导致难以实现。因此,可以将连续函数σ作为球谐转换模型,通过连续函数σ来学习虚拟对象上的球体网格的球谐系数,可以表示为如下公式(4):
其中,公式(4)中,球谐转换模型可以为多层感知器(MLP)网络,并记作σ函数,连续函数σ作为球谐转换模型,用于表示虚拟对象上的球体网格的球谐系数。并可以通过大量训练对象上的球体网格的标注球谐系数来训练该连续函数σ(即球谐转换模型)。
可选的,计算机设备可以通过对初始球谐转换模型进行优化训练,得到球谐转换模型,以提高球谐转换模型的球谐系数的获取准确度。具体的,如图7所示,计算机设备可以获取训练对象的R个球体网格分别对应的标注球谐系数,以及R该个球体网格的位置信息和法向量;R个球体网格包括球体网格1a、球体网格2a、……、球体网格Ra,球体网格1a、球体网格2a、……、球体网格Ra分别对的标注球谐系数为标注球谐系数1a、标注球谐系数2a、……、标注球谐系数Ra,R为大于1的正整数。训练对象可以是指用于训练初始球谐转换模型的虚拟对象,训练对象可以是指游戏场景中的游戏角色、游戏道具等,或者,训练对象可以是指视频数据中的虚拟角色。标注球谐系数可以是指人工对球体网格进行标注得到的,或者,标注球谐系数可以是指通过计算得到的。进一步,计算机设备可以对该R个球体网格的位置信息和法向量进行融合,得到R个球体网格的信息张量,R个球体网格的信息张量用于反映R个球体网格的位置信息和法向量,然后,将R个球体网格的信息张量输入至初始球谐转换模型中。通过该初始球谐转换模型对R个球体网格的信息张量进行预测,得到R个球体网格分别对应的预测球谐系数,球体网格1a、球体网格2a、……、球体网格Ra分别对的预测球谐系数为预测球谐系数1a、预测球谐系数2a、……、预测球谐系数Ra。进一步,计算机设备可以根据R个球体网格分别对应的标注球谐系数和预测球谐系数,对上述初始球谐转换模型进行调整,得到该球谐转换模型,如基于标注球谐系数1a、标注球谐系数2a、……、标注球谐系数Ra,以及预测球谐系数1a、预测球谐系数2a、……、预测球谐系数Ra,确定初始球谐转换模型的初始系数预测误差。该初始系数预测误差反映初始球谐转换模型针对R个球体网格的球谐系数的获取准确度,该初始系数预测误差越大,初始球谐转换模型针对R个球体网格的球谐系数的获取准确度越低;相反,该初始系数预测误差越小,初始球谐转换模型针对R个球体网格的球谐系数的获取准确度越高。因此,根据初始系数预测误差,对初始球谐转换模型进行调整,得到球谐转换模型。通过训练对象的R个球体网格分别对应的标注球谐系数,以及R该个球体网格的位置信息和法向量,对初始球谐转换模型进行调整,得到球谐转换模型,提高球谐转换模型的球谐系数的获取准确度。
可选的,该获取该R个球体网格分别对应的标注球谐系数,包括:计算机设备可以获取该R个球体网格分别对应的球函数和基函数;对球体网格g对应的球函数和基函数进行积分运算,得到球体网格g对应的标注球谐系数;g为小于或等于M的正整数;直到获取到上述M个球体网格分别对应的标注球谐系数。
例如,球体网格的球谐系数可以称为球谐SH表达,即利用球谐函数表示任何几何的特征,如形状、大小,球谐函数可以是拉普拉斯方程的球坐标系形式解的角度部分,包括球函数和一个或多个基函数构成。如给定一个球函数f(ω),球体网格的标注球谐系数可以采用如下公式(5)表示:
可选的,当获取到球谐网格的标注球谐系数后,可以通过标注球谐系数和基函数,基于如下公式(6)重建球函数:
可选的,上述根据述R个球体网格分别对应的标注球谐系数和预测球谐系数,对上述初始球谐转换模型进行调整,得到上述球谐转换模型,包括:计算机设备可以根据该R个球体网格分别对应的标注球谐系数和预测球谐系数,确定该初始球谐转换模型的初始系数预测误差,例如,计算机设备可以获取标注球谐系数1a与预测球谐系数1a之间的差值,得到预测误差值1,获取标注球谐系数2a与预测球谐系数2a之间的差值,得到预测误差值2;……;获取标注球谐系数Ra与预测球谐系数Ra之间的差值,得到预测误差值R;对预测误差值1、预测误差值2、……、预测误差值R进行累计处理,得到该初始球谐转换模型的初始系数预测误差;或者,计算机设备可以采用逻辑回归函数、指数函数等损失函数,以及R个球体网格分别对应的标注球谐系数和预测球谐系数,来计算该初始球谐转换模型的初始系数预测误差。计算机设备可以根据该初始系数预测误差对该初始球谐转换模型的模型参数进行调整,得到调整后的初始球谐转换模型,具体的,计算机设备可以该初始系数预测误差,确定调整步长,根据该调整步长对该初始球谐转换模型的模型参数进行调整,得到调整后的初始球谐转换模型。此处的调整步长反映一次对初始球谐识别模型的模型参数的调整大小,该调整步长与初始系数预测误差之间具有正相关关系,即初始系数预测误差越大,调整步长越大;反正,初始系数预测误差越小,调整步长越小。
进一步,如图8所示,计算机设备获取测试对象的N个球体网格的位置信息和法向量,以及该N个球体网格分别对应的标注球谐系数;N个球体网格包括球体网格1b、球体网格2b、……、球体网格Nb,球体网格1b、球体网格2b、……、球体网格Nb分别对的标注球谐系数为标注球谐系数1b、标注球谐系数2b、……、标注球谐系数Nb,N为大于1的正整数;测试对象可以是指验证调整后的初始球谐转换模型获取球谐系数的准确度达到要求的虚拟对象。进一步,计算机设备可以将该N个球体网格的位置信息和法向量输入至上述调整后的初始球谐转换模型中,即对该N个球体网格的位置信息和法向量进行融合,得到该N个球体网格的信息张量,该N个球体网格的信息张量用于反应N个球体网格分别对应的位置信息和法向量;将N个球体网格的信息张量输入至上述调整后的初始球谐转换模型中。最后,通过该调整后的初始球谐转换模型对N个球体网格的信息张量进行预测,得到上述N个球体网格分别对应的预测球谐系数;球体网格1b、球体网格2b、……、球体网格Nb分别对的预测球谐系数为预测球谐系数1b、预测球谐系数2b、……、预测球谐系数Nb;根据述N个球体网格分别对应的标注球谐系数和预测球谐系数,对该调整后的初始球谐转换模型进行测试处理,得到上述球谐转换模型。
需要说明的是,训练对象与测试对象可以是指不同对象,或者训练对象与测试对象属于同一对象,这时,用于训练初始球谐转换模型的R个球体网格(即训练集)和用于测试初始球谐转换模型的N个球体网格(测试集)之间具有不相同球体网格,这样可以是训练集与测试集不相同,这样有利于使训练得到的球谐转换模型实现均匀拟合,而避免过度拟合,提高球谐转换模型的球谐系数的获取准确度。均匀拟合是指球谐转换模型对多种虚拟对象上的球体网格的球谐系数的获取准确度之间相差不大,如均为0.8。过度拟合是指球谐转换模型获取某一个虚拟对象的球体网格的球谐系数的准确度极高,如0.9,获取其他虚拟对象的球体网格的球谐系数的准确度极低,如0.1。
可选的,上述根据述N个球体网格分别对应的标注球谐系数和预测球谐系数,对上述调整后的初始球谐转换模型进行测试处理,得到上述球谐转换模型,包括:计算机设备可以根据该N个球体网格分别对应的标注球谐系数和预测球谐系数,确定该调整后的初始球谐转换模型的系数预测误差;系数预测误差反映该调整后的初始球谐转换模型的球谐系数的获取准确度,系数预测误差越大,该调整后的初始球谐转换模型的球谐系数的获取准确度低,相反,系数预测误差越小,该调整后的初始球谐转换模型的球谐系数的获取准确度高。例如,计算机设备可以获取标注球谐系数1b与预测球谐系数1b之间的差值,得到第一预测误差值,获取标注球谐系数2b与预测球谐系数2b之间的差值,得到第二预测误差值;……;获取标注球谐系数Na与预测球谐系数Na之间的差值,得到第N预测误差值;对第一预测误差值、第二预测误差值、……、第N预测误差值进行累计处理,得到该调整后的初始球谐转换模型的系数预测误差;或者,计算机设备可以采用逻辑回归函数、指数函数等损失函数,以及N个球体网格分别对应的标注球谐系数和预测球谐系数,来计算该调整后的初始球谐转换模型的系数预测误差。然后,计算机设备可以根据该系数预测误差确定上述调整后的初始球谐转换模型的收敛状态;调整后的初始球谐转换模型的收敛状态包括收敛状态或未收敛状态,收敛状态可以是指调整后的初始球谐转换模型的系数预测误差小于预测误差阈值,未收敛状态可以是指调整后的初始球谐转换模型的系数预测误差大于或等于预测误差阈值,预测误差阈值可以是指调整后的初始球谐转换模型的最低误差,或者,预测误差阈值可以是预设的。若上述调整后的初始球谐转换模型的收敛状态为已收敛状态,则将上述调整后的初始球谐转换模型,确定为上述球谐转换模型;若上述调整后的初始球谐转换模型的收敛状态为未收敛状态,则根据上述R个球体网格的位置信息和法向量,以及上述R个球体网格分别对应的标注球谐系数,对上述调整后的初始球谐转换模型进行调整,得到上述球谐转换模型。通过训练对象的球体网格对初始球谐转换模型的模型参数进行调整,通过测试对象的球体网格对调整后的初始球谐转换模型进行测试,提高球谐转换模型的球谐系数的获取准确度,并提高球谐转换模型的泛化能力,避免球谐转换模型过度拟合。
S205、根据该M个球体网格分别对应的球谐系数,以及该虚拟对象对应的环境光照信息和视图方向信息,生成该虚拟对象的光照强度信息。
本申请中对步骤S205的解释说明,可以参考上述步骤S103,重复之处,不再赘述。
S206、根据上述虚拟对象的光照强度信息,对上述虚拟对象进行渲染。
本申请中,基于虚拟对象上的M个球体网格的位置信息和法向量,确定该M个球体网格的球谐系数,球谐系数用于反映对应球体网格的网格特征,即M个球体网格为对虚拟对象的表面进行划分得到,实现直接从虚拟对象的表面上学习到表征虚拟对象的球谐系数,这样M个球体网格的球谐系数能够更加逼真的描述虚拟对象的形状以及大小等特征。进一步,通过M个球体网格分别对应的球谐系数,以及该虚拟对象对应的环境光照信息和视图方向信息,生成该虚拟对象的光照强度信息,实现直接从虚拟对象的表面上学习到光照强度信息,根据该虚拟对象的光照强度信息,直接对该虚拟对象进行渲染,不需要对大量网格顶点进行计算,降低渲染耗时,避免掉帧,实现实时逼真渲染,提高渲染效果。特别地,由于球谐网络与虚拟对象的曲面相似度比较高,因此,球体网格的球谐系数能够更加准确地描述虚拟对象的曲面,即本申请,能够解决UV映射不可用的问题,即本申请可适用于曲面等UV映射不可用的场景中,扩大本申请的适用范围。
请参见图9,是本申请实施例提供的一种数据处理装置的结构示意图。如图9所示,该数据处理装置可以包括:
获取模块711,用于获取待渲染的虚拟对象的对象信息,以及所述虚拟对象上的M个球体网格分别对应的位置信息和法向量;所述对象信息包括所述虚拟对象对应的环境光照信息和视图方向信息,M为大于1的整数;
确定模块712,用于根据所述M个球体网格分别对应的位置信息和法向量,确定所述M个球体网格分别对应的球谐系数;球谐系数用于反映对应球体网格的网格特征;
生成模块713,用于根据所述M个球体网格分别对应的球谐系数,以及所述虚拟对象对应的环境光照信息和视图方向信息,生成所述虚拟对象的光照强度信息;
渲染模块714,用于根据所述虚拟对象的光照强度信息,对所述虚拟对象进行渲染。
确定模块712包括融合单元71a、输入单元72a以及识别单元73a;
融合单元71a,用于对所述M个球体网格分别对应的位置信息和法向量进行融合,得到所述M个球体网格的信息张量;
输入单元72a,用于将所述M个球体网格的信息张量输入至球谐转换模型中;
识别单元73a,用于通过所述球谐转换模型对所述M个球体网格的信息张量进行识别,得到所述M个球体网格分别对应的球谐系数。
可选的,所述识别单元73a通过所述球谐转换模型对所述M个球体网格的信息张量进行识别,得到所述M个球体网格分别对应的球谐系数,包括:
通过所述球谐转换模型的距离识别层,根据信息张量,识别球体网格g分别与剩余球体网格之间的距离;g为小于或等于M的正整数,剩余球体网格为所述M个球体网格中除所述球体网格g以外的球体网格;
通过所述球谐转换模型的角度识别层,根据信息张量,识别所述球体网格g的法向量分别与所述剩余球体网格的法向量之间的角度差;
通过所述球谐转换模型的系数确定层,根据所述距离和所述角度差,确定所述球体网格g对应的球谐系数;
直到获取到所述M个球体网格分别对应的球谐系数。
该装置还包括添加模块715;添加模块715,用于将所述M个球体网格的信息张量添加至在图形处理器中;
所述识别单元73a将所述M个球体网格的信息张量输入至球谐转换模型中,包括:
将所述图形处理器中的所述M个球体网格的信息张量,输入至所述图形处理器中的球谐转换模型中。
可选的,所述识别单元73a将所述图形处理器中的所述M个球体网格的信息张量,输入至所述图形处理器中的球谐转换模型中,包括:
通过第一通道从所述图形处理器中提取所述M个球体网格的信息张量;
通过第二通道从所述图形处理器中加载所述图形处理器中的球谐转换模型;
通过所述第一通道,调用所述第二通道对应的通信接口,将所述M个球体网格的信息张量输入至所述球谐转换模型中。
添加模块715,用于将所述M个球体网格的信息张量添加至片段着色器中;
所述识别单元73a将所述M个球体网格的信息张量输入至球谐转换模型中,包括:
将所述片段着色器中的所述M个球体网格的信息张量,输入至所述片段着色器中的球谐转换模型中。
可选的,获取模块711还用于获取训练对象的R个球体网格分别对应的标注球谐系数,以及所述R个球体网格的位置信息和法向量;R为大于1的正整数;
所述装置还包括:输入模块716、预测模块717以及调整模块718;
输入模块716,用于将所述R个球体网格的位置信息和法向量输入至初始球谐转换模型中;
预测模块717,用于通过所述初始球谐转换模型对所述R个球体网格的位置信息和法向量进行预测,得到所述R个球体网格分别对应的预测球谐系数;
调整模块718,用于根据述R个球体网格分别对应的标注球谐系数和预测球谐系数,对所述初始球谐转换模型进行调整,得到所述球谐转换模型。
可选的,获取模块711获取所述R个球体网格分别对应的标注球谐系数,包括:
获取所述R个球体网格分别对应的球函数和基函数;
对球体网格g对应的球函数和基函数进行积分运算,得到球体网格g对应的标注球谐系数;g为小于或等于M的正整数;
直到获取到所述M个球体网格分别对应的标注球谐系数。
可选的,调整模块718可以包括调整单元74b、获取单元75b以及测试单元76b;
调整单元74b,用于根据述R个球体网格分别对应的标注球谐系数和预测球谐系数,对所述初始球谐转换模型的模型参数进行调整,得到调整后的初始球谐转换模型;
获取单元75b,用于获取测试对象的N个球体网格的位置信息和法向量,以及所述N个球体网格分别对应的标注球谐系数;N为大于1的正整数;
测试单元76b,用于将所述N个球体网格的位置信息和法向量输入至所述调整后的初始球谐转换模型中;通过所述调整后的初始球谐转换模型对所述N个球体网格的位置信息和法向量进行预测,得到所述N个球体网格分别对应的预测球谐系数;根据所述N个球体网格分别对应的标注球谐系数和预测球谐系数,对所述调整后的初始球谐转换模型进行测试处理,得到所述球谐转换模型。
可选的,测试单元76b根据述N个球体网格分别对应的标注球谐系数和预测球谐系数,对所述调整后的初始球谐转换模型进行测试处理,得到所述球谐转换模型,包括:
根据所述N个球体网格分别对应的标注球谐系数和预测球谐系数,确定所述调整后的初始球谐转换模型的系数预测误差;
根据所述系数预测误差确定所述调整后的初始球谐转换模型的收敛状态;
若所述调整后的初始球谐转换模型的收敛状态为已收敛状态,则将所述调整后的初始球谐转换模型,确定为所述球谐转换模型;
若所述调整后的初始球谐转换模型的收敛状态为未收敛状态,则根据所述R个球体网格的位置信息和法向量,以及所述R个球体网格分别对应的标注球谐系数,对所述调整后的初始球谐转换模型进行调整,得到所述球谐转换模型。
生成模块713可以包括乘积单元77c和确定单元78c;
乘积单元77c,用于对球体网格g对应的球谐系数,以及所述虚拟对象对应的环境光照信息和视图方向信息进行乘积运算,得到所述球体网格g的光照转移辐射;g为小于或等于M的正整数;对所述球体网格g对应的球谐系数,以及所述虚拟对象对应的环境光照信息进行乘积运算,得到所述球体网格g的光照反射辐射;
确定单元78c用于根据所述球体网格g的光照反射辐射和所述光照转移辐射,确定所述球体网格g的光照强度;直到获取到所述M个球体网格分别对应的光照强度,将所述M个球体网格分别对应的光照强度,作为所述虚拟对象的光照强度信息。
根据本申请的一个实施例,前文所示的数据处理方法所涉及的步骤可由图9所示的数据处理装置中的各个模块来执行。例如,图3中所示的步骤S101可由图9中的获取模块711来执行,图3中所示的步骤S102可由图9中的确定模块712来执行;图3中所示的步骤S103可由图9中的生成模块713来执行;图3中所示的步骤S104可由图9中的渲染模块714来执行。
根据本申请的一个实施例,图9所示的数据处理装置中的各个模块可以分别或全部合并为一个或若干个单元来构成,或者其中的某个(些)单元还可以再拆分为功能上更小的至少两个子单元,可以实现同样的操作,而不影响本申请的实施例的技术效果的实现。上述模块是基于逻辑功能划分的,在实际应用中,一个模块的功能也可以由至少两个单元来实现,或者至少两个模块的功能由一个单元实现。在本申请的其它实施例中,数据处理装置也可以包括其它单元,在实际应用中,这些功能也可以由其它单元协助实现,并且可以由至少两个单元协作实现。
根据本申请的一个实施例,可以通过在包括中央处理单元(CPU)、随机存取存储介质(RAM)、只读存储介质(ROM)等处理组件和存储组件的例如计算机的通用计算机设备上运行能够执行如前文所示的相应方法所涉及的各步骤的计算机程序(包括程序代码),来构造如图9中所示的数据处理装置,以及来实现本申请实施例的数据处理方法。上述计算机程序可以记载于例如计算机可读记录介质上,并通过计算机可读记录介质装载于上述计算设备中,并在其中运行。
本申请中,基于虚拟对象上的M个球体网格的位置信息和法向量,确定该M个球体网格的球谐系数,球谐系数用于反映对应球体网格的网格特征,即M个球体网格为对虚拟对象的表面进行划分得到,实现直接从虚拟对象的表面上学习到表征虚拟对象的球谐系数,这样M个球体网格的球谐系数能够更加逼真的描述虚拟对象的形状以及大小等特征。进一步,通过M个球体网格分别对应的球谐系数,以及该虚拟对象对应的环境光照信息和视图方向信息,生成该虚拟对象的光照强度信息,实现直接从虚拟对象的表面上学习到光照强度信息,根据该虚拟对象的光照强度信息,直接对该虚拟对象进行渲染,不需要对大量网格顶点进行计算,降低渲染耗时,避免掉帧,实现实时逼真渲染,提高渲染效果。特别地,由于球谐网络与虚拟对象的曲面相似度比较高,因此,球体网格的球谐系数能够更加准确地描述虚拟对象的曲面,即本申请,能够解决UV映射不可用的问题,即本申请可适用于曲面等UV映射不可用的场景中,扩大本申请的适用范围。
请参见图10,是本申请实施例提供的一种计算机设备的结构示意图。如图10所示,上述计算机设备1000可以为上述方法中的第一设备,具体可以是指终端或服务器,包括:处理器1001,网络接口1004和存储器1005,此外,上述计算机设备1000还可以包括:用户接口1003,和至少一条通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。其中,在一些实施例中,用户接口1003可以包括显示屏(Display)、键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是非易失性的存储器(non-volatile MeMory),例如至少一个磁盘存储器。存储器1005可选的还可以是至少一个在远离前述处理器1001的存储装置。如图10所示,作为一种计算机可读存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及计算机应用程序。
在图10所示的计算机设备1000中,网络接口1004可提供网络通讯功能;而用户接口1003主要用于提供输入的接口;而处理器1001可以用于调用存储器1005中存储的计算机应用程序,以实现:
获取待渲染的虚拟对象的对象信息,以及所述虚拟对象上的M个球体网格分别对应的位置信息和法向量;所述对象信息包括所述虚拟对象对应的环境光照信息和视图方向信息,M为大1的整数;
根据所述M个球体网格分别对应的位置信息和法向量,确定所述M个球体网格分别对应的球谐系数;球谐系数用于反映对应球体网格的网格特征;
根据所述M个球体网格分别对应的球谐系数,以及所述虚拟对象对应的环境光照信息和视图方向信息,生成所述虚拟对象的光照强度信息;
根据所述虚拟对象的光照强度信息,对所述虚拟对象进行渲染。
可选的,处理器1001可以用于调用存储器1005中存储的计算机应用程序,以实现:
根据所述M个球体网格分别对应的位置信息和法向量,确定所述M个球体网格分别对应的球谐系数,包括:
对所述M个球体网格分别对应的位置信息和法向量进行融合,得到所述M个球体网格的信息张量;
将所述M个球体网格的信息张量输入至球谐转换模型中;
通过所述球谐转换模型对所述M个球体网格的信息张量进行识别,得到所述M个球体网格分别对应的球谐系数。
可选的,处理器1001可以用于调用存储器1005中存储的计算机应用程序,以实现:
通过所述球谐转换模型对所述M个球体网格的信息张量进行识别,得到所述M个球体网格分别对应的球谐系数,包括:
通过所述球谐转换模型的距离识别层,根据信息张量,识别球体网格g分别与剩余球体网格之间的距离;g为小于或等于M的正整数,剩余球体网格为所述M个球体网格中除所述球体网格g以外的球体网格;
通过所述球谐转换模型的角度识别层,根据信息张量,识别所述球体网格g的法向量分别与所述剩余球体网格的法向量之间的角度差;
通过所述球谐转换模型的系数确定层,根据所述距离和所述角度差,确定所述球体网格g对应的球谐系数;
直到获取到所述M个球体网格分别对应的球谐系数。
可选的,处理器1001可以用于调用存储器1005中存储的计算机应用程序,以实现:
将所述M个球体网格的信息张量添加至在图形处理器中;
所述将所述M个球体网格的信息张量输入至球谐转换模型中,包括:
将所述图形处理器中的所述M个球体网格的信息张量,输入至所述图形处理器中的球谐转换模型中。
可选的,处理器1001可以用于调用存储器1005中存储的计算机应用程序,以实现:
将所述图形处理器中的所述M个球体网格的信息张量,输入至所述图形处理器中的球谐转换模型中,包括:
通过第一通道从所述图形处理器中提取所述M个球体网格的信息张量;
通过第二通道从所述图形处理器中加载所述图形处理器中的球谐转换模型;
通过所述第一通道,调用所述第二通道对应的通信接口,将所述M个球体网格的信息张量输入至所述球谐转换模型中。
可选的,处理器1001可以用于调用存储器1005中存储的计算机应用程序,以实现:
将所述M个球体网格的信息张量添加至片段着色器中;
所述将所述M个球体网格的信息张量输入至球谐转换模型中,包括:
将所述片段着色器中的所述M个球体网格的信息张量,输入至所述片段着色器中的球谐转换模型中。
可选的,处理器1001可以用于调用存储器1005中存储的计算机应用程序,以实现:
获取训练对象的R个球体网格分别对应的标注球谐系数,以及所述R个球体网格的位置信息和法向量;R为大于1的正整数;
将所述R个球体网格的位置信息和法向量输入至初始球谐转换模型中;
通过所述初始球谐转换模型对所述R个球体网格的位置信息和法向量进行预测,得到所述R个球体网格分别对应的预测球谐系数;
根据述R个球体网格分别对应的标注球谐系数和预测球谐系数,对所述初始球谐转换模型进行调整,得到所述球谐转换模型。
可选的,处理器1001可以用于调用存储器1005中存储的计算机应用程序,以实现:
获取所述R个球体网格分别对应的标注球谐系数,包括:
获取所述R个球体网格分别对应的球函数和基函数;
对球体网格g对应的球函数和基函数进行积分运算,得到球体网格g对应的标注球谐系数;g为小于或等于M的正整数;
直到获取到所述M个球体网格分别对应的标注球谐系数。
可选的,处理器1001可以用于调用存储器1005中存储的计算机应用程序,以实现:
根据述R个球体网格分别对应的标注球谐系数和预测球谐系数,对所述初始球谐转换模型进行调整,得到所述球谐转换模型,包括:
根据述R个球体网格分别对应的标注球谐系数和预测球谐系数,对所述初始球谐转换模型的模型参数进行调整,得到调整后的初始球谐转换模型;
获取测试对象的N个球体网格的位置信息和法向量,以及所述N个球体网格分别对应的标注球谐系数;N为大于1的正整数;
将所述N个球体网格的位置信息和法向量输入至所述调整后的初始球谐转换模型中;
通过所述调整后的初始球谐转换模型对所述N个球体网格的位置信息和法向量进行预测,得到所述N个球体网格分别对应的预测球谐系数;
根据所述N个球体网格分别对应的标注球谐系数和预测球谐系数,对所述调整后的初始球谐转换模型进行测试处理,得到所述球谐转换模型。
可选的,处理器1001可以用于调用存储器1005中存储的计算机应用程序,以实现:
根据述N个球体网格分别对应的标注球谐系数和预测球谐系数,对所述调整后的初始球谐转换模型进行测试处理,得到所述球谐转换模型,包括:
根据所述N个球体网格分别对应的标注球谐系数和预测球谐系数,确定所述调整后的初始球谐转换模型的系数预测误差;
根据所述系数预测误差确定所述调整后的初始球谐转换模型的收敛状态;
若所述调整后的初始球谐转换模型的收敛状态为已收敛状态,则将所述调整后的初始球谐转换模型,确定为所述球谐转换模型;
若所述调整后的初始球谐转换模型的收敛状态为未收敛状态,则根据所述R个球体网格的位置信息和法向量,以及所述R个球体网格分别对应的标注球谐系数,对所述调整后的初始球谐转换模型进行调整,得到所述球谐转换模型。
可选的,处理器1001可以用于调用存储器1005中存储的计算机应用程序,以实现:
根据所述M个球体网格分别对应的球谐系数,以及所述虚拟对象对应的环境光照信息和视图方向信息,生成所述虚拟对象的光照强度信息,包括:
对球体网格g对应的球谐系数,以及所述虚拟对象对应的环境光照信息和视图方向信息进行乘积运算,得到所述球体网格g的光照转移辐射;g为小于或等于M的正整数;
对所述球体网格g对应的球谐系数,以及所述虚拟对象对应的环境光照信息进行乘积运算,得到所述球体网格g的光照反射辐射;
根据所述球体网格g的光照反射辐射和所述光照转移辐射,确定所述球体网格g的光照强度;
直到获取到所述M个球体网格分别对应的光照强度,将所述M个球体网格分别对应的光照强度,作为所述虚拟对象的光照强度信息。
本申请中,基于虚拟对象上的M个球体网格的位置信息和法向量,确定该M个球体网格的球谐系数,球谐系数用于反映对应球体网格的网格特征,即M个球体网格为对虚拟对象的表面进行划分得到,实现直接从虚拟对象的表面上学习到表征虚拟对象的球谐系数,这样M个球体网格的球谐系数能够更加逼真的描述虚拟对象的形状以及大小等特征。进一步,通过M个球体网格分别对应的球谐系数,以及该虚拟对象对应的环境光照信息和视图方向信息,生成该虚拟对象的光照强度信息,实现直接从虚拟对象的表面上学习到光照强度信息,根据该虚拟对象的光照强度信息,直接对该虚拟对象进行渲染,不需要对大量网格顶点进行计算,降低渲染耗时,避免掉帧,实现实时逼真渲染,提高渲染效果。特别地,由于球谐网络与虚拟对象的曲面相似度比较高,因此,球体网格的球谐系数能够更加准确地描述虚拟对象的曲面,即本申请,能够解决UV映射不可用的问题,即本申请可适用于曲面等UV映射不可用的场景中,扩大本申请的适用范围。
应当理解,本申请实施例中所描述的计算机设备可执行前文所对应实施例中对上述数据处理方法的描述,也可执行前文所对应实施例中对上述数据处理装置的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
此外,这里需要指出的是:本申请实施例还提供了一种计算机可读存储介质,且上述计算机可读存储介质中存储有前文提及的数据处理装置所执行的计算机程序,且上述计算机程序包括程序指令,当上述处理器执行上述程序指令时,能够执行前文对应实施例中对上述数据处理方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的计算机可读存储介质实施例中未披露的技术细节,请参照本申请方法实施例的描述。
作为示例,上述程序指令可被部署在一个计算机设备上执行,或者被部署在一个地点的至少两个计算机设备上执行,又或者,在分布在至少两个地点且通过通信网络互连的至少两个计算机设备上执行,分布在至少两个地点且通过通信网络互连的至少两个计算机设备可以组成区块链网络。
上述计算机可读存储介质可以是前述任一实施例提供的数据处理装置或者上述计算机设备的中部存储单元,例如计算机设备的硬盘或中存。该计算机可读存储介质也可以是该计算机设备的外部存储设备,例如该计算机设备上配备的插接式硬盘,智能存储卡(SMart Media card,SMC),安全数字(Secure digital,SD)卡,闪存卡(flaSh card)等。进一步地,该计算机可读存储介质还可以既包括该计算机设备的中部存储单元也包括外部存储设备。该计算机可读存储介质用于存储该计算机程序以及该计算机设备所需的其他程序和数据。该计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。
本申请实施例的说明书和权利要求书及附图中的术语“第一”、“第二”等是用于区别不同媒体中容,而非用于描述特定顺序。此外,术语“包括”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、装置、产品或设备没有限定于已列出的步骤或模块,而是可选地还包括没有列出的步骤或模块,或可选地还包括对于这些过程、方法、装置、产品或设备固有的其他步骤单元。
可理解的是,本申请以上实施例如果需要用到用户信息等,需要获得用户许可或者同意,需要遵守相关国家和地区的相关法律法规。
本申请实施例还提供了一种计算机程序产品,包括计算机程序/指令,上述计算机程序/指令被处理器执行时实现前文对应实施例中对上述数据处理方法、解码方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的计算机程序产品的实施例中未披露的技术细节,请参照本申请方法实施例的描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例提供的方法及相关装置是参照本申请实施例提供的方法流程图和/或结构示意图来描述的,具体可由计算机程序指令实现方法流程图和/或结构示意图的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。这些计算机程序指令可提供到通用计算机、专用计算机、嵌入式处理机或其他可编程网络连接设备的处理器以产生一个机器,使得通过计算机或其他可编程网络连接设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或结构示意图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程网络连接设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或结构示意图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程网络连接设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或结构示意一个方框或多个方框中指定的功能的步骤。
以上所揭露的仅为本申请较佳实施例而已,当然不能以此来限定本申请之权利范围,因此依本申请权利要求所作的等同变化,仍属本申请所涵盖的范围。
Claims (13)
1.一种数据处理方法,其特征在于,包括:
获取待渲染的虚拟对象的对象信息,以及所述虚拟对象上的M个球体网格分别对应的位置信息和法向量;所述对象信息包括所述虚拟对象对应的环境光照信息和视图方向信息,M为大1的整数;
根据所述M个球体网格分别对应的位置信息和法向量,确定所述M个球体网格分别对应的球谐系数;球谐系数用于反映对应球体网格的网格特征;
对球体网格g对应的球谐系数,以及所述虚拟对象对应的环境光照信息和视图方向信息进行乘积运算,得到所述球体网格g的光照转移辐射;g为小于或等于M的正整数;
对所述球体网格g对应的球谐系数,以及所述虚拟对象对应的环境光照信息进行乘积运算,得到所述球体网格g的光照反射辐射;
根据所述球体网格g的光照反射辐射和所述光照转移辐射,确定所述球体网格g的光照强度;
直到获取到所述M个球体网格分别对应的光照强度,将所述M个球体网格分别对应的光照强度,作为所述虚拟对象的光照强度信息;
根据所述虚拟对象的光照强度信息,对所述虚拟对象进行渲染。
2.如权利要求1所述的方法,其特征在于,所述根据所述M个球体网格分别对应的位置信息和法向量,确定所述M个球体网格分别对应的球谐系数,包括:
对所述M个球体网格分别对应的位置信息和法向量进行融合,得到所述M个球体网格的信息张量;
将所述M个球体网格的信息张量输入至球谐转换模型中;
通过所述球谐转换模型对所述M个球体网格的信息张量进行识别,得到所述M个球体网格分别对应的球谐系数。
3.如权利要求2所述的方法,其特征在于,所述通过所述球谐转换模型对所述M个球体网格的信息张量进行识别,得到所述M个球体网格分别对应的球谐系数,包括:
通过所述球谐转换模型的距离识别层,根据信息张量,识别球体网格g分别与剩余球体网格之间的距离;g为小于或等于M的正整数,剩余球体网格为所述M个球体网格中除所述球体网格g以外的球体网格;
通过所述球谐转换模型的角度识别层,根据信息张量,识别所述球体网格g的法向量分别与所述剩余球体网格的法向量之间的角度差;
通过所述球谐转换模型的系数确定层,根据所述距离和所述角度差,确定所述球体网格g对应的球谐系数;
直到获取到所述M个球体网格分别对应的球谐系数。
4.如权利要求2所述的方法,其特征在于,所述方法还包括:
将所述M个球体网格的信息张量添加至在图形处理器中;
所述将所述M个球体网格的信息张量输入至球谐转换模型中,包括:
将所述图形处理器中的所述M个球体网格的信息张量,输入至所述图形处理器中的球谐转换模型中。
5.如权利要求4所述的方法,其特征在于,所述将所述图形处理器中的所述M个球体网格的信息张量,输入至所述图形处理器中的球谐转换模型中,包括:
通过第一通道从所述图形处理器中提取所述M个球体网格的信息张量;
通过第二通道从所述图形处理器中加载所述图形处理器中的球谐转换模型;
通过所述第一通道,调用所述第二通道对应的通信接口,将所述M个球体网格的信息张量输入至所述球谐转换模型中。
6.如权利要求2所述的方法,其特征在于,所述方法还包括:
将所述M个球体网格的信息张量添加至片段着色器中;
所述将所述M个球体网格的信息张量输入至球谐转换模型中,包括:
将所述片段着色器中的所述M个球体网格的信息张量,输入至所述片段着色器中的球谐转换模型中。
7.如权利要求2所述的方法,其特征在于,所述方法还包括:
获取训练对象的R个球体网格分别对应的标注球谐系数,以及所述R个球体网格的位置信息和法向量;R为大于1的正整数;
将所述R个球体网格的位置信息和法向量输入至初始球谐转换模型中;
通过所述初始球谐转换模型对所述R个球体网格的位置信息和法向量进行预测,得到所述R个球体网格分别对应的预测球谐系数;
根据述R个球体网格分别对应的标注球谐系数和预测球谐系数,对所述初始球谐转换模型进行调整,得到所述球谐转换模型。
8.如权利要求7所述的方法,其特征在于,所述获取所述R个球体网格分别对应的标注球谐系数,包括:
获取所述R个球体网格分别对应的球函数和基函数;
对球体网格g对应的球函数和基函数进行积分运算,得到球体网格g对应的标注球谐系数;g为小于或等于M的正整数;
直到获取到所述M个球体网格分别对应的标注球谐系数。
9.如权利要求7所述的方法,其特征在于,所述根据述R个球体网格分别对应的标注球谐系数和预测球谐系数,对所述初始球谐转换模型进行调整,得到所述球谐转换模型,包括:
根据述R个球体网格分别对应的标注球谐系数和预测球谐系数,对所述初始球谐转换模型的模型参数进行调整,得到调整后的初始球谐转换模型;
获取测试对象的N个球体网格的位置信息和法向量,以及所述N个球体网格分别对应的标注球谐系数;N为大于1的正整数;
将所述N个球体网格的位置信息和法向量输入至所述调整后的初始球谐转换模型中;
通过所述调整后的初始球谐转换模型对所述N个球体网格的位置信息和法向量进行预测,得到所述N个球体网格分别对应的预测球谐系数;
根据所述N个球体网格分别对应的标注球谐系数和预测球谐系数,对所述调整后的初始球谐转换模型进行测试处理,得到所述球谐转换模型。
10.如权利要求9所述的方法,其特征在于,所述根据述N个球体网格分别对应的标注球谐系数和预测球谐系数,对所述调整后的初始球谐转换模型进行测试处理,得到所述球谐转换模型,包括:
根据所述N个球体网格分别对应的标注球谐系数和预测球谐系数,确定所述调整后的初始球谐转换模型的系数预测误差;
根据所述系数预测误差确定所述调整后的初始球谐转换模型的收敛状态;
若所述调整后的初始球谐转换模型的收敛状态为已收敛状态,则将所述调整后的初始球谐转换模型,确定为所述球谐转换模型;
若所述调整后的初始球谐转换模型的收敛状态为未收敛状态,则根据所述R个球体网格的位置信息和法向量,以及所述R个球体网格分别对应的标注球谐系数,对所述调整后的初始球谐转换模型进行调整,得到所述球谐转换模型。
11.一种数据处理装置,其特征在于,包括:
获取模块,用于获取待渲染的虚拟对象的对象信息,以及所述虚拟对象上的M个球体网格分别对应的位置信息和法向量;所述对象信息包括所述虚拟对象对应的环境光照信息和视图方向信息,M为大于1的整数;
确定模块,用于根据所述M个球体网格分别对应的位置信息和法向量,确定所述M个球体网格分别对应的球谐系数;球谐系数用于反映对应球体网格的网格特征;
生成模块包括乘积单元和确定单元;
所述乘积单元,用于对球体网格g对应的球谐系数,以及所述虚拟对象对应的环境光照信息和视图方向信息进行乘积运算,得到所述球体网格g的光照转移辐射;g为小于或等于M的正整数;对所述球体网格g对应的球谐系数,以及所述虚拟对象对应的环境光照信息进行乘积运算,得到所述球体网格g的光照反射辐射;
所述确定单元,用于根据所述球体网格g的光照反射辐射和所述光照转移辐射,确定所述球体网格g的光照强度;直到获取到所述M个球体网格分别对应的光照强度,将所述M个球体网格分别对应的光照强度,作为所述虚拟对象的光照强度信息;
渲染模块,用于根据所述虚拟对象的光照强度信息,对所述虚拟对象进行渲染。
12.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至10中任一项所述的方法的步骤。
13.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至10中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310400506.0A CN116152419B (zh) | 2023-04-14 | 2023-04-14 | 数据处理方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310400506.0A CN116152419B (zh) | 2023-04-14 | 2023-04-14 | 数据处理方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116152419A CN116152419A (zh) | 2023-05-23 |
CN116152419B true CN116152419B (zh) | 2023-07-11 |
Family
ID=86354611
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310400506.0A Active CN116152419B (zh) | 2023-04-14 | 2023-04-14 | 数据处理方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116152419B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116385619B (zh) * | 2023-05-26 | 2024-04-30 | 腾讯科技(深圳)有限公司 | 对象模型渲染方法、装置、计算机设备和存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111420404A (zh) * | 2020-03-20 | 2020-07-17 | 网易(杭州)网络有限公司 | 游戏中对象渲染的方法及装置、电子设备、存储介质 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8674986B2 (en) * | 2007-07-25 | 2014-03-18 | Digital Domain Products, Inc. | Method and system for scattered spherical harmonic approximation |
CN110910486B (zh) * | 2019-11-28 | 2021-11-19 | 浙江大学 | 室内场景光照估计模型、方法、装置、存储介质以及渲染方法 |
CN112927341A (zh) * | 2021-04-02 | 2021-06-08 | 腾讯科技(深圳)有限公司 | 光照渲染方法、装置、计算机设备和存储介质 |
CN113096228B (zh) * | 2021-06-09 | 2021-08-31 | 上海影创信息科技有限公司 | 基于神经网络的实时光照估计与渲染方法及系统 |
CN115908151A (zh) * | 2021-09-30 | 2023-04-04 | 腾讯科技(深圳)有限公司 | 一种数据处理方法、装置、计算机设备以及存储介质 |
CN115272556A (zh) * | 2022-07-25 | 2022-11-01 | 网易(杭州)网络有限公司 | 反射光照确定、全局光照确定方法、装置、介质和设备 |
-
2023
- 2023-04-14 CN CN202310400506.0A patent/CN116152419B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111420404A (zh) * | 2020-03-20 | 2020-07-17 | 网易(杭州)网络有限公司 | 游戏中对象渲染的方法及装置、电子设备、存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN116152419A (zh) | 2023-05-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109377544B (zh) | 一种人脸三维图像生成方法、装置和可读介质 | |
CN112418292B (zh) | 一种图像质量评价的方法、装置、计算机设备及存储介质 | |
CN112989085B (zh) | 图像处理方法、装置、计算机设备及存储介质 | |
CN116109798B (zh) | 图像数据处理方法、装置、设备及介质 | |
CN111325664B (zh) | 风格迁移方法、装置、存储介质及电子设备 | |
JP2023500222A (ja) | 系列マイニングモデルの訓練方法、系列データの処理方法、系列マイニングモデルの訓練装置、系列データの処理装置、コンピュータ機器、及びコンピュータプログラム | |
WO2023160162A1 (zh) | 预测碰撞仿真结果的方法、装置、设备及存储介质 | |
CN110175641A (zh) | 图像识别方法、装置、设备和存储介质 | |
CN116152419B (zh) | 数据处理方法、装置、设备及存储介质 | |
CN116977522A (zh) | 三维模型的渲染方法、装置、计算机设备和存储介质 | |
CN117218300B (zh) | 三维模型的构建方法、三维构建模型的训练方法及装置 | |
CN113298931B (zh) | 一种物体模型的重建方法、装置、终端设备和存储介质 | |
CN117456128A (zh) | 三维重建方法、装置、设备及存储介质 | |
CN117351133B (zh) | 一种数据渲染方法、装置、设备及计算机可读存储介质 | |
CN115965736B (zh) | 图像处理方法、装置、设备及存储介质 | |
CN117746015A (zh) | 小目标检测模型训练方法、小目标检测方法及相关设备 | |
CN115953524B (zh) | 一种数据处理方法、装置、计算机设备及存储介质 | |
US20230229916A1 (en) | Scalable tensor network contraction using reinforcement learning | |
WO2022127603A1 (zh) | 一种模型处理方法及相关装置 | |
CN111915701A (zh) | 一种基于人工智能的按钮图像生成方法和装置 | |
CN117252787B (zh) | 图像重新照明方法、模型训练方法、装置、设备及介质 | |
CN116091675B (zh) | 一种图像处理方法、装置、设备及存储介质 | |
CN117611727B (zh) | 渲染处理方法、装置、设备以及介质 | |
CN116798052B (zh) | 文本识别模型的训练方法和装置、存储介质及电子设备 | |
CN117993443B (zh) | 模型处理方法、装置、计算机设备、存储介质和程序产品 |
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 |