CN116977522A - 三维模型的渲染方法、装置、计算机设备和存储介质 - Google Patents
三维模型的渲染方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN116977522A CN116977522A CN202310648755.1A CN202310648755A CN116977522A CN 116977522 A CN116977522 A CN 116977522A CN 202310648755 A CN202310648755 A CN 202310648755A CN 116977522 A CN116977522 A CN 116977522A
- Authority
- CN
- China
- Prior art keywords
- rendering
- dimensional model
- parameters
- map
- model
- 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
Links
- 238000009877 rendering Methods 0.000 title claims abstract description 321
- 238000000034 method Methods 0.000 title claims abstract description 91
- 238000005070 sampling Methods 0.000 claims abstract description 129
- 238000012545 processing Methods 0.000 claims abstract description 62
- 238000010586 diagram Methods 0.000 claims abstract description 57
- 230000000007 visual effect Effects 0.000 claims abstract description 31
- 230000006872 improvement Effects 0.000 claims abstract description 8
- 230000006870 function Effects 0.000 claims description 65
- 238000013507 mapping Methods 0.000 claims description 26
- 238000004590 computer program Methods 0.000 claims description 25
- 238000012549 training Methods 0.000 claims description 18
- 230000008447 perception Effects 0.000 claims description 12
- 230000005484 gravity Effects 0.000 claims description 6
- 238000004088 simulation Methods 0.000 claims 1
- 230000008569 process Effects 0.000 description 29
- 238000013528 artificial neural network Methods 0.000 description 15
- 230000036544 posture Effects 0.000 description 10
- 230000000694 effects Effects 0.000 description 8
- 230000008859 change Effects 0.000 description 6
- 238000004891 communication Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 238000013473 artificial intelligence Methods 0.000 description 5
- 238000000605 extraction Methods 0.000 description 4
- 230000003190 augmentative effect Effects 0.000 description 3
- 230000014509 gene expression Effects 0.000 description 3
- 239000000463 material Substances 0.000 description 3
- 241001465754 Metazoa Species 0.000 description 2
- 230000004913 activation Effects 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 210000003128 head Anatomy 0.000 description 2
- 230000036316 preload Effects 0.000 description 2
- 230000005855 radiation Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 206010011469 Crying Diseases 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 210000000988 bone and bone Anatomy 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 229910021389 graphene Inorganic materials 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 238000011176 pooling Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
- 238000007665 sagging Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000002834 transmittance Methods 0.000 description 1
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
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/04—Texture mapping
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4053—Scaling of whole images or parts thereof, e.g. expanding or contracting based on super-resolution, i.e. the output image resolution being higher than the sensor resolution
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- Image Generation (AREA)
Abstract
本申请涉及一种三维模型的渲染方法、装置、计算机设备和存储介质。所述方法包括:从待渲染的三维模型中确定采样点,并确定采样点的纹理坐标;获取与采样点对应的三维模型参数,并在预设视角下对纹理坐标和三维模型参数进行编码处理,得到模型渲染参数;获取预设视角下的模拟光线,根据模型渲染参数和模拟光线,确定预设视角下三维模型的初始渲染图;对初始渲染图进行分辨率提升处理,得到预设视角下三维模型的目标渲染图。采用本方法能够提高渲染效率。
Description
技术领域
本申请涉及模型处理技术领域,特别是涉及一种三维模型的渲染方法、装置、计算机设备和存储介质。
背景技术
三维模型通常通过表面上的网格面片(Mesh)堆叠而成。同时,为了使得三维模型具有丰富的外观呈现,三维模型在呈现时还需要渲染预先绘制好的纹理贴图(TextureMapping)来展示材质纹理等效果。
为了使得三维模型在渲染后呈现更加精致的效果,往往需要人为增加三维模型中网格面片的数量以使模型更加精细,但这就导致渲染速度大大降低,渲染效率低下。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高渲染效率的三维模型的渲染方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
一方面,本申请提供了一种三维模型的渲染方法。所述方法包括:
从待渲染的三维模型中确定采样点,并确定所述采样点的纹理坐标;
获取与所述采样点对应的三维模型参数,并在预设视角下对所述纹理坐标和三维模型参数进行编码处理,得到模型渲染参数;
获取所述预设视角下的模拟光线,根据所述模型渲染参数和所述模拟光线进行渲染,得到所述预设视角下所述三维模型的初始渲染图;
对所述初始渲染图进行分辨率提升处理,得到所述预设视角下所述三维模型的目标渲染图。
另一方面,本申请还提供了一种三维模型的渲染装置。所述装置包括:
确定模块,用于从待渲染的三维模型中确定采样点,并确定所述采样点的纹理坐标;
获取模块,用于获取与所述采样点对应的三维模型参数,并在预设视角下对所述纹理坐标和三维模型参数进行编码处理,得到模型渲染参数;
所述获取模块,还用于获取所述预设视角下的模拟光线,根据所述模型渲染参数和所述模拟光线进行渲染,得到所述预设视角下所述三维模型的初始渲染图;
提升模块,用于对所述初始渲染图进行分辨率提升处理,得到所述预设视角下所述三维模型的目标渲染图。
另一方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述三维模型的渲染方法的步骤。
另一方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述三维模型的渲染方法的步骤。
另一方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述三维模型的渲染方法的步骤。
上述三维模型的渲染方法、装置、计算机设备、存储介质和计算机程序产品,通过从待渲染的三维模型中确定采样点及其纹理坐标,以采样的方式降低渲染的数据量;获取与采样点对应的三维模型参数,从而在预设视角下对纹理坐标和三维模型参数进行编码处理,得到模型渲染参数;在基于预设视角下的模拟光线,根据模型渲染参数和模拟光线,确定预设视角下三维模型的低初始渲染图,最后通过对初始渲染图进行分辨率提升处理,得到预设视角下三维模型的目标渲染图,进一步提高了渲染图的质量,能够实现对三维模型高效率的渲染。
附图说明
图1为一些实施例中三维模型的渲染方法的应用环境图;
图2为一些实施例中由网格面片构成的三维模型的模型示意图;
图3为一些实施例中三维模型的渲染方法的流程示意图;
图4为一些实施例中人物头部三维模型的模型示意图;
图5为一些实施例中预设视角下模拟光线的示意图;
图6为一些实施例中加载纹理贴图的软件界面示意图;
图7为一些实施例中通过编码处理得到模型渲染参数的原理示意图;
图8为一些实施例中模拟光线上光点分布的原理示意图;
图9为一些实施例中多层感知机的结构示意图;
图10为一些实施例中超像素网络的训练步骤的流程示意图;
图11为一些实施例中构建损失函数的原理示意图;
图12为一些实施例中训练过程的原理示意图;
图13为另一些实施例中三维模型的渲染方法的流程示意图;
图14为一些实施例中三维模型的渲染装置的结构框图;
图15为一些实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供的三维模型的渲染方法,可以应用于如图1所示的应用环境中。其中,终端102与服务器104连接以进行通信。终端102和服务器104可以通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。数据存储系统可以存储服务器104需要处理的数据。数据存储系统可以集成在服务器104上,也可以放在云上或其他服务器上。
终端102或服务器104从待渲染的三维模型中确定采样点,并确定采样点的纹理坐标,并获取与采样点对应的三维模型参数,并在预设视角下对纹理坐标和三维模型参数进行编码处理,得到模型渲染参数。终端102或服务器104获取预设视角下的模拟光线,根据模型渲染参数和模拟光线进行渲染,得到预设视角下三维模型的初始渲染图,并对初始渲染图进行分辨率提升处理,得到预设视角下三维模型的目标渲染图。
在一些实施例中,终端102或服务器104可以将上述方法应用于三维虚拟场景的渲染中。三维虚拟场景包括三维虚拟物品或三维虚拟角色等中的一种或多种。所指的三维虚拟场景的渲染,包括对三维虚拟物品(例如桌子、苹果、树木等)的渲染、或者对三维虚拟角色(例如动画角色、游戏角色等)的渲染等中的一种或多种。
在一些实施例中,终端102上可装载有APP(Application)应用程序,例如游戏应用程序等。终端102可以通过运行游戏应用程序向用户呈现三维模型的渲染效果等。举例而言,终端102可以提供三维虚拟角色在全角度下的渲染效果,用户可以通过点击、拖拽等方式控制三维虚拟角色转动,以观看三维虚拟角色在不同角度下的呈现外观。
示例性地,如图2所示,图2中图(a)显示了由网格面片构成的三维模型。通过本申请实施例提供的三维模型的渲染方法对该三维模型进行渲染,得到如图2中图(b)所示的高质量的渲染图。
其中,终端可以但不限于是各种台式计算机、笔记本电脑、智能手机、平板电脑、物联网设备、便携式可穿戴设备、或者沉浸式图像显示设备等中的一种或多种。物联网设备可为智能音箱、智能电视、智能空调、或者智能车载设备等中的一种或多种。便携式可穿戴设备可为智能手表、智能手环、或者头戴设备等中的一种或多种。沉浸式图像显示设备包括但不限于增强现实(Augmented Reality,AR)设备、虚拟现实(Virtual Reality,VR)设备等。
其中,服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、以及大数据和人工智能平台等基础云计算服务的云服务器。
其中,人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。人工智能软件技术主要包括计算机视觉技术、以及机器学习/深度学习等方向。以计算机视觉技术而言,计算机视觉技术通常包括图像处理、图像识别、3D技术、虚拟现实、以及增强现实等技术。
随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用,例如图像领域、视频领域、以及游戏领域等。随着技术的发展,人工智能技术将在更多的领域得到应用,并发挥越来越重要的价值。
在一些实施例中,如图3所示,提供了一种三维模型的渲染方法,该方法可以应用于终端或服务器,也可以由终端和服务器协同执行。下面以该方法应用于计算机设备为例进行说明,该计算机设备可以是终端或服务器。该方法包括以下步骤:
步骤S302,从待渲染的三维模型中确定采样点,并确定采样点的纹理坐标。
其中,三维模型指的是通过计算机程序建立的用于表示物体、人物或动物的虚拟几何模型。三维模型通常由网格面片构成表面。网格面片为计算机设备利用着色器程序(Shader)执行渲染时的基本单元。通常网格面片为三角形或四边形。由于三维模型中具有大量网格面片,因此每个网格面片对应有索引信息。示例性地,图4示出了人物局部区域(头部)的三维模型,其中F为四边形的网格面片,V为网格面片的其中一个顶点。
其中,采样点指的是在三维模型的表面上通过采样得到的点。在一些实施例中,采样点可以是纹理贴图中的像素点投影至三维模型所位于的模型空间后在三维模型的表面上的投影点。
纹理坐标指的是采样点映射在3D曲面空间中的坐标。由于三维模型建模时依据其所位于的模型空间的三维坐标系(通常用x,y,z表示),而在对三维模型进行静态渲染时需要将其映射至3D曲面空间中。在基于NeRF(Neural Radiance Fields,神经辐射场)的渲染方式中,该3D曲面空间又称为辐射场或光场。
在一些实施例中,计算机设备从待渲染的三维模型中确定采样点,包括:从待渲染的三维模型中以抽样的方式,抽取多个采样点。在一些实施例中,计算机设备从待渲染的三维模型中确定采样点,还包括:从待渲染的三维模型对应的纹理贴图(Texture Mapping)中获取像素点,并将该像素点投影至三维模型所位于的模型空间,以获取该像素点在三维模型的表面上的投影点,并将该投影点作为从待渲染的三维模型中确定的采样点。其中,纹理贴图指的是用于绘制三维模型表面细节、材质、图案、或纹理等呈现效果的二维图形。当纹理贴图按照特定的方式映射到物体表面上的时候能使三维模型看上去更加真实。
在一些实施例中,计算机设备确定采样点的纹理坐标,包括:获取采样点在模型空间中的点坐标;对该点坐标进行转换,以将该采样点转换至3D曲面空间,得到采样点在3D曲面空间中的纹理坐标。具体而言,计算机设备根据模型空间中坐标系与3D曲面空间中坐标系之间的数值映射关系,将采样点在模型空间中的点坐标按照该数值映射关系进行转换,从而将点坐标转换至3D曲面空间的坐标系下,得到采样点在3D曲面空间中的纹理坐标。
步骤S304,获取与采样点对应的三维模型参数,并在预设视角下对纹理坐标和三维模型参数进行编码处理,得到模型渲染参数。
相较于物体建模得到的三维模型而言,当三维模型为人物或动物时,三维模型通常具有不同的形体姿态、或者不同的表情等。因此,为了避免形体姿态或表情等因素的影响,本申请实施例中引入三维模型参数以实现更加精细的渲染效果。
其中,三维模型参数指的是用于表示三维模型的模型属性的参数,包括但不限于衔接参数、形状参数、位置参数、或者旋转参数等中的一种或多种。其中,衔接参数指的是三维模型所对应的不同的纹理贴图进行组合表达的参数。形状参数用于表征三维模型的外观形状。位置参数用于表征采样点在三维模型中所处的位置。旋转参数用于表征三维模型内部骨骼对应的旋转角度等。示例性地,上述参数可以通过如下公式表示:
其中,表示从三维模型中确定的多个采样点,ψ表示三维模型参数,其中ψ:{θ,β,t,R},θ为衔接参数,β为形状参数,t为位置参数,R为旋转参数。W为权重。在一些实施例中,三维模型参数还包括姿态参数,姿态参数由衔接参数和旋转参数表示,即ξ:{θ,R}。
预设视角指的是模拟人眼观察三维模型的视线方向。由于模型是三维的,当预设视角发生变化时,所观察到的二维视图也随之发生变化,进而渲染得到的渲染图也会随之发生变化。
本申请实施例中通过将采样点映射至3D曲面空间中以进行后续的渲染,其中,计算机设备将采样点映射至3D曲面空间中后,模拟光线的密度和颜色的变化以进行体积渲染(Volume Rendering)。为此,计算机设备获取与采样点对应的三维模型参数,并在预设视角下对纹理坐标和三维模型参数进行编码处理,得到模型渲染参数。其中,模型渲染参数用于表征在3D曲面空间中光线在各个位置上的属性变化,包括但不限于颜色参数、或者密度参数等中的一种或多种。其中,颜色参数表征3D曲面空间中每个体素具有的颜色值,包括R(Red,红色)、G(Green,绿色)、B(Blue,蓝色)值等。密度参数表征一条射线(射线用于模拟真实环境中的光线)在经过3D曲面空间中某一位置处终止于无穷小粒子的微分概率。
在一些实施例中,计算机设备获取与采样点对应的三维模型参数,包括:获取采样点在三维模型中所属的网格面片;将该网格面片对应的三维模型参数,作为与采样点对应的三维模型参数。示例性地,网格面片的属性信息中还包括模型部位信息,不同的模型部位对应有不同的三维模型参数。比如,网格面片属于面部部位,面部部位可以预先设定对应有微笑、哭泣、愤怒等多种不同的姿态,每种姿态对应于一种三维模型参数。因此,计算机设备根据网格面片所对应的三维模型参数,即可确定与采样点对应的三维模型参数。
在一些实施例中,计算机设备在预设视角下对纹理坐标和三维模型参数进行编码处理,包括:将预设视角、纹理坐标和三维模型参数作为输入,通过映射函数将输入转换为模型渲染参数以作为输出。示例性地,计算机设备可以通过NeRF映射函数,其输出是预设视角、纹理坐标和三维模型参数,输出是颜色参数和密度参数。
在基于NeRF的表示方法下,三维空间被表示为一组可学习且连续的辐射场。示例性地,计算机设备可以通过如下公式表示编码处理的过程:
Hα:(x,d,ξ)→(c,σ)
其中,Hα表示映射函数,x为采样点的纹理坐标,d为预设视角,ξ表示三维模型参数,c表示颜色参数,σ表示密度参数。其中,纹理坐标x、预设视角d和三维模型参数ξ作为输入,通过映射函数Hα进行编码处理,从而输出得到密度参数σ和颜色参数c。
在一些实施例中,计算机设备通过第一神经网络拟合映射函数,以实现在预设视角下对纹理坐标和三维模型参数进行编码处理,得到模型渲染参数。其中,第一神经网络可以是多层感知机(Multilayer Perceptron,MLP)等。
步骤S306,获取预设视角下的模拟光线,根据模型渲染参数和模拟光线进行渲染,得到预设视角下三维模型的初始渲染图。
其中,模拟光线指的是在3D曲面空间中用于模拟真实物理环境中光线的有源射线。模拟光线基于预设视角出发并朝向3D曲面空间中的任意方向。
其中,渲染图指的是对三维模型进行渲染后生成的二维图像。其中,渲染图的质量通过图像分辨率表示。图像分辨率(Pixels Per Inch,PPI)指的是每英寸图像内像素点的数量,通常用于衡量图像中存储的信息量。一般情况下,图像分辨率越高,从视觉效果上直观感受到的清晰度越高;图像分辨率越低,视觉效果越模糊。本申请实施例中,将根据模型渲染参数和模拟光线渲染得到的三维模型的渲染图称为初始渲染图。
在一些实施例中,计算机设备获取预设视角下的模拟光线,包括:确定在预设视角下待渲染的视角图;以预设视角为起点途径视角图中的任一像素,得到一条模拟光线。示例性地,如图5所示,在以模拟人眼观察角度的预设视角下,从虚拟相机的轴心出发的两条射线,分别途径视角图P中的两个像素,由此分别得到模拟光线o1和模拟光线o2。
在一些实施例中,计算机设备根据模型渲染参数和模拟光线,确定预设视角下三维模型的初始渲染图,包括:根据颜色参数和密度参数渲染以预设视角发出并穿过3D曲面空间的模拟光线的颜色,以实现体积渲染,从而得到预设视角下三维模型的初始渲染图。
步骤S308,对初始渲染图进行分辨率提升处理,得到预设视角下三维模型的目标渲染图。
分辨率提升处理指的是对渲染图的图像分辨率进行调整的处理过程。例如,计算机设备可以通过图像处理软件调整渲染图的图像分辨率,从而将初始渲染图转换为高分辨率的目标渲染图。分辨率提升处理包括但不限于上采样处理、插值处理等中的一种或多种。
高分辨率的渲染图指的是图像分辨率超过预设分辨率的渲染图像。容易理解的是,此处所指的高分辨率是相对于预设分辨率而言,当预设分辨率发生变化时,高分辨率的渲染图的确定标准也随之发生变化。
在一些实施例中,计算机设备对初始渲染图进行分辨率提升处理,得到预设视角下三维模型的高分辨率渲染图,包括:计算机设备通过第二神经网络对初始渲染图进行上采样处理,以提升初始渲染图的分辨率,得到预设视角下三维模型的高分辨率渲染图。示例性地,第二神经网络可以是CNN(Convolutional Neural Network,卷积神经网络)等。
需要说明的是,上述术语第一和第二等在本申请中用来描述不同处理过程中所使用的神经网络,但是这些神经网络不应当被这些术语限制。这些术语仅用来将一个神经网络与另一个神经网络进行区分。例如,第一神经网络可以被称作第二神经网络,并且类似地,第二神经网络可以被称作第一神经网络,而不脱离各种所描述的实施例的范围,但是除非上下文以其他方式明确指出,否则它们不是同一个神经网络。相似的情况还包括第一损失函数和第二损失函数等。
在另一些实施例中,计算机设备可以通过对初始渲染图调整大小或者进行插值处理,以提升初始渲染图的分辨率,这样能够避免使用池化或上采样操作,降低计算复杂度。
上述三维模型的渲染方法中,通过从待渲染的三维模型中确定采样点及其纹理坐标,以抽样的方式降低渲染的数据量;获取与采样点对应的三维模型参数,从而在预设视角下对纹理坐标和三维模型参数进行编码处理,得到模型渲染参数;在基于预设视角下的模拟光线,根据模型渲染参数和模拟光线,确定预设视角下三维模型的初始渲染图,最后通过对初始渲染图进行分辨率提升处理,得到预设视角下三维模型的目标渲染图,能够实现对三维模型高效率、高质量的渲染。
承前所述,计算机设备可以直接从待渲染的三维模型中以采样的方式得到多个采样点。在一些实施例中,计算机设备从待渲染的三维模型中确定采样点,包括:获取待渲染的三维模型对应的目标纹理贴图;将目标纹理贴图中的像素点投影至三维模型所位于的模型空间中,并将模型空间中的投影点作为采样点。具体地,一个三维模型可能对应有大量的纹理贴图。计算机设备可以从中确定目标纹理贴图,并将目标纹理贴图中的像素点投影至三维模型所位于的模型空间中,得到目标纹理贴图中各个像素点的投影点。进而,计算机设备将各个像素的投影点作为相应像素点对应的采样点。
上述实施例中,通过获取纹理贴图并将纹理贴图中的像素点投影至模型空间中得到采样点,使得三维模型的网格表面与纹理材质建立映射关系,使得后续渲染更加精细。
在一些实施例中,计算机设备获取待渲染的三维模型对应的目标纹理贴图,包括:获取待渲染的三维模型的贴图资源;贴图资源包括多张纹理贴图;利用调试工具加载贴图资源中的各张纹理贴图,并记录加载各张纹理贴图所消耗的加载时长;将加载时长超过预设时长阈值的纹理贴图作为目标纹理贴图。
具体地,计算机设备利用调试工具将初始贴图预加载至图像处理器,记录图像处理器对该初始贴图进行渲染所需消耗的加载时长。在加载时长超过预设时长阈值的情况下,计算机设备则对该初始贴图进行优化,即,计算机设备将该纹理贴图作为目标纹理贴图。
示例性地,计算机设备利用调试工具将初始贴图预加载至图像处理器。如图6所示,当纹理贴图进行预加载时,很可能出现一部分纹理贴图已经加载完毕,而另一部分纹理贴图仍在加载(图中纹理贴图A和纹理贴图B)的情况。这一部分加载较慢的纹理贴图会很大程度上影响应用程序的使用体验,并影响GPU的资源分配(例如长时间占用GPU的资源)。因此,计算机设备测试初始贴图所需消耗的GPU资源并进行性能记录,并对需要优化将其作为目标纹理贴图。
上述实施例中,通过对各个初始贴图进行预加载以记录所消耗的加载时长,通过资源消耗的比较确定待优化的目标纹理贴图,能够在使得图像整体视觉效果提升的同时,避免牺牲硬件性能,有效地减少了对硬件资源的消耗。
在一些实施例中,计算机设备确定采样点的纹理坐标,包括:获取采样点在三维模型所位于的模型空间中的点坐标,并获取三维模型中多个网格面片的顶点坐标;基于点坐标和多个网格面片的顶点坐标,确定采样点的纹理坐标。
具体地,计算机设备获取采样点在三维模型所位于的模型空间中的点坐标,并获取三维模型中多个网格面片的顶点坐标。在一些实施例中,计算机设备获取三维模型中全部网格面片的顶点坐标。在另一些实施例中,计算机设备获取采样点所在的网格面片所属的部位,并获取属于该部位的各个网格面片的顶点坐标。
其中,对于每个网格面片,计算机设备获取其相应的至少三个顶点坐标。当网格面片为网格三角形时,则计算机设备获取三个顶点坐标。当网格面片为四边形时,则计算机设备获取四个顶点坐标。由此,计算机设备基于点坐标和多个网格面片的顶点坐标进行计算,找到与该点坐标最相近的坐标值,以得到采样点的纹理坐标。
上述实施例中,通过将采样点映射至3D曲面空间,并通过确定采样点的纹理坐标使得世界坐标系与模型空间坐标系保持一致,由此能够避免由于三维模型的姿势不同导致采样点被映射至完全不同的坐标中,提高了渲染的准确性。
在一些实施例中,计算机设备基于点坐标和多个网格面片的顶点坐标,确定采样点的纹理坐标,包括:针对多个网格面片中的每个网格面片,基于所针对的网格面片的顶点坐标进行重心插值处理,得到与所针对的网格面片对应的曲面坐标;分别确定点坐标和与各个网格面片对应的曲面坐标之间的差异,并基于最小差异确定采样点的纹理坐标。
其中,计算机设备针对多个网格面片中的每个网格面片,通过重心插值函数对所针对的网格面片的至少三个顶点坐标进行重心插值处理,从而得到与所针对的网格面片对应的曲面坐标。由此,计算机设备再分别确定采样点对应的点坐标和与各个网格面片对应的曲面坐标之间的差异,并基于最小差异确定采样点的纹理坐标。
示例性地,计算机设备可以通过如下公式计算得到纹理坐标:
(u,v,l)=argminu,v,l||x-Bu,v(V[F(L,M)])||2
其中,(u,v)表示采样点映射至曲面空间中的坐标,即采样点的纹理坐标。l∈{1...NT}是网格面片的索引,NT表示网格面片的数量。Bu,v()表示重心插值函数。V[F(L,M)]表示网格面片的顶点坐标。x表示采样点的点坐标。
为了使得坐标表示更加准确,在一些实施例中,计算机设备还引入采样点到投影点之间的有符号距离h来消除位置上的偏差。则示例性地,计算机设备进行编码处理的过程可以更新为如下公式:
Hα:(u,v,h,d,ξ)→(c,σ)
上述实施例中,通过在三维模型表面的各个网格面片中找到与采样点最接近的点,从而确定采样点的纹理坐标,能够使得采样点映射至3D曲面空间后避免误差带来的影响,提高了渲染的准确性。
承前所述,不同的模型部位对应有不同的三维模型参数。相应地,在一些实施例中,计算机设备获取与采样点对应的三维模型参数,包括:获取采样点在三维模型中所属的模型部位;根据模型部位的姿态参数,确定与采样点对应的三维模型参数。
其中,模型部位指的是三维模型中的不同区域,包括但不限于面部、头部部位、手臂部位、手掌部位、腿部部位、或者脚部部位等中的一种或多种。
具体地,计算机设备获取采样点在三维模型中所属的网格面片,并获取该网格面片所对应的模型部位。每一个模型部位预先设置有不同的姿态。比如,面部部位可以预先设定对应有微笑、哭泣、或者愤怒等多种姿态。又如,手臂部位可以预先设定对应有举手、张开双臂、抱紧双臂、或者自然下垂等多种姿态。
由此,计算机设备根据模型部位的姿态参数,确定网格面片对应的姿态参数,进而将网格面片对应的姿态参数,作为属于该网格面片的采样点所对应的姿态参数。
上述实施例中,通过引入姿态参数来对采样点进行约束,避免采样点在不同的坐标系下存在过大的位置偏差,使得模型姿态也能应用于后续的模型渲染中,进而能够使得后续渲染过程更加精确。
其中,预设视角用于模拟人眼从何种角度观察三维模型。而在具体的计算机处理过程中预设视角可以通过视角参数来表征。不同的视角参数表示通过不同的视角对三维模型进行观察。
相应地,在一些实施例中,计算机设备在预设视角下对纹理坐标和三维模型参数进行编码处理,得到模型渲染参数,包括:对纹理坐标进行位置编码,并对位置编码后的纹理坐标进行全连接处理,得到中间特征;基于中间特征进行特征处理,得到采样点对应的密度参数;对视角参数进行位置编码,并基于位置编码后的视角参数与中间特征进行特征处理,得到预设视角对应的颜色参数。
具体地,计算机设备对纹理坐标进行位置编码(Position Encoding),并对位置编码后的纹理坐标通过一或多层全连接层(Fully Connected Layer,FC Layer)进行全连接处理,得到中间特征。
一方面,计算机设备基于中间特征进行特征处理,例如通过激活函数对中间特征进行激活处理,得到采样点对应的密度参数。另一方面,计算机设备对视角参数进行位置编码,并基于位置编码后的视角参数与中间特征进行特征处理,得到预设视角对应的颜色参数。
由此,计算机设备即可在预设视角下对纹理坐标和三维模型参数进行编码处理,得到模型渲染参数。
示例性地,如图7所示,计算机设备对纹理坐标(u,v,h)进行位置编码,并通过多层全连接层进行全连接处理,得到中间特征。计算机设备基于该中间特征进行特征处理得到密度参数σ。并且,计算机设备对视角参数d进行位置编码,并将该中间特征与位置编码后的视角参数d进行拼接,并基于拼接后的特征通过全连接层进行全连接处理,得到颜色参数c,其中c:(r,g,b)。
上述实施例中,通过对纹理坐标和视角参数分别进行位置编码,并结合中间特征进行特征处理以得到预设视角对应的模型渲染参数,实现了以较少的视图输入对连续、隐含的场景进行优化,并且通过神经网络的方式进行不断训练能够提高准确度。
在一些实施例中,计算机设备根据模型渲染参数和模拟光线,确定预设视角下三维模型的初始渲染图,包括:沿着模拟光线的光线方向上采样得到多个光点;在预设视角下,确定在光线方向上每个光点对应的模型渲染参数;以预设光线边界为积分边界,对光线方向上每个光点对应的模型渲染参数进行积分处理,得到预设视角下三维模型的初始渲染图。
具体地,计算机设备沿着模拟光线的光线方向进行均匀采样,得到每条模拟光线上的多个光点。如图8所示,计算机设备可以以均匀采样的方式,在预设视角下沿着模拟光线的前进方向进行采样,从而得到多个光点。
示例性地,每条模拟光线r(t)可以通过如下公式表示:
r(t)=o+td
其中,o表示3D曲面空间中的中心。td表示预设视角出发的有源射线。
计算机设备再进一步确定每条模拟光线上的每个光点对应的模型渲染参数,即每个光点位置处对应的颜色参数和密度参数。由此,根据每个光点位置处对应的颜色参数和密度参数,计算机设备即可进行体积渲染,从而得到预设视角下三维模型的初始渲染图。
其中,计算机设备基于在光线方向上每个光点对应的模型渲染参数进行体积渲染的过程,本质上是对每条光线上各个光点对应的颜色参数和密度参数进行积分的过程。
在一些实施例中,计算机设备以预设光线边界为积分边界,对光线方向上每个光点对应的模型渲染参数进行积分处理,得到预设视角下三维模型的初始渲染图。其中,预设光线边界包括近边界和远边界。
示例性地,计算机设备以积分的方式进行体积渲染的公式可如下所示:
其中,函数T(t)表示沿着模拟光线r(s)从近边界tn到远边界tf所累积的透明度(Accumulated Transmittance)。σ(r(t))表示模拟光线的密度。c(r(t))表示模拟光线的当前颜色。最后积分的结果C(r)即为模拟光线的最终呈现颜色。
上述实施例中,通过以预设光线边界约束光线的起始点和终止点,并通过积分的方式进行体积渲染,能够降低渲染所消耗的数据量,提高渲染速度。
在一些实施例中,计算机设备对初始渲染图进行分辨率提升处理,得到预设视角下三维模型的目标渲染图,包括:对初始渲染图进行特征提取,得到渲染特征图;基于渲染特征图进行上采样处理,得到预设视角下三维模型的目标渲染图。
具体地,计算机设备对初始渲染图进行特征提取,得到渲染特征图。示例性地,计算机设备可以通过卷积层对初始渲染图进行特征提取,得到渲染特征图。进而,计算机设备基于渲染特征图进行上采样处理,得到预设视角下三维模型的目标渲染图。
上述实施例中,通过对对初始渲染图进行分辨率提升处理,以简单的神经网络结构实现了快速的分辨率增强,渲染效率高。
在一些实施例中,模型渲染参数还包括场景参数。其中场景参数与预设视角和姿势参数有关。相应地,在引入场景参数后,计算机设备通过编码处理得到模型渲染参数的公式可以更新为:
Hα:(u,v,h,d,ξ)→(c,f,σ)
其中,f表示场景参数。
进而,在一些实施例中,计算机设备还根据颜色参数、密度参数和场景参数,基于模拟光线进行积分以确定预设视角下三维模型的初始渲染图。
由此,计算机设备可以通过如下公式表示超像素网络的处理过程:
Sφ:(L,F)→I
其中,Sφ表示超像素网络,L表示初始渲染图,F表示不同预设视角和姿态参数对应的特征。I表示模拟高分辨率渲染图。
在一些实施例中,在预设视角下对纹理坐标和三维模型参数进行编码处理,得到模型渲染参数的步骤通过训练好的多层感知机实现;其中,多层感知机包括多层全连接层,每个全连接层包括多个感知节点,每个感知节点分别预设有模型渲染参数的权重;模型渲染参数通过末层全连接层的各感知节点的输出加权求和得到。
具体地,计算机设备通过训练好的多层感知机在预设视角下对纹理坐标和三维模型参数进行编码处理,从而得到模型渲染参数。其中,多层感知机包括多层全连接层,每一层全连接层中均包括多个感知节点,如图9所示。
其中,每个感知节点分别预设有模型渲染参数的权重。示例性地,每个感知节点分别预设有对应于颜色参数的权重,和对应于密度参数的权重。
针对其中任意一层全连接层,计算机设备可以通过如下公式表示感知节点学习密度参数和颜色参数的过程:
其中,nb表示任一全连接层中的感知节点的数量,wk表示第k个感知节点对应的权重。σk表示第k个感知节点学习的密度参数,ck表示第k个感知节点学习的颜色参数。由此,在通过多层全连接层进行处理后,模型渲染参数通过末层全连接层的各感知节点的输出加权求和得到。
上述实施例中,通过多层感知机使得参数转换成可经训练的神经网络参数,能够通过训练过程的学习使得编码过程更加准确,并能够提高渲染效率。
在一些实施例中,计算机设备对初始渲染图进行分辨率提升处理,得到预设视角下三维模型的目标渲染图的步骤通过训练好的超像素网络实现。如图10所示,超像素网络的训练步骤包括:
步骤S1002,获取预设视角的样本低分辨率渲染图、以及与样本低分辨率渲染图相匹配的真实高分辨率渲染图。
步骤S1004,对样本低分辨率渲染图进行分辨率提升处理,得到预设视角下三维模型的模拟高分辨率渲染图。
步骤S1006,基于样本低分辨率渲染图、真实高分辨率渲染图和模拟高分辨率渲染图,构建总损失函数,并基于损失函数进行训练,得到训练好的超像素网络。
具体地,计算机设备获取预设视角的样本低分辨率渲染图,并获取预先渲染得到的与样本低分辨率渲染图相匹配的真实高分辨率渲染图。比如,计算机设备分别设置一个较低的分辨率和一个较高的分辨率,并将满足该较低的分辨率的渲染图作为样本低分辨率渲染图,将满足该较高的分辨率的渲染图作为真实高分辨率渲染图。
其中,样本低分辨率渲染图指的是图像分辨率低于预设分辨率的样本渲染图。容易理解的是,此处所指的低分辨率是相对于预设分辨率而言,当预设分辨率发生变化时,低分辨率渲染图的确定标准也随之发生变化。
进而,计算机设备对样本低分辨率渲染图进行分辨率提升处理,得到预设视角下三维模型的模拟高分辨率渲染图。例如,计算机设备通过上采样层对样本低分辨率渲染图进行上采样处理,从而得到预设视角下三维模型的模拟高分辨率渲染图。
由此,计算机设备即可基于样本低分辨率渲染图、真实高分辨率渲染图和模拟高分辨率渲染图,构建总损失函数,并基于损失函数进行训练,得到训练好的超像素网络。其中,计算机设备基于损失函数对超像素网络进行训练,并在达到训练终止条件时终止训练,得到训练好的超像素网络。其中,训练终止条件包括但不限于训练次数达到预设次数、训练时长达到预设时长、或者达到最小化损失等中的一种或多种。
上述实施例中,通过基于样本低分辨率渲染图、真实高分辨率渲染图和模拟高分辨率渲染图,构建总损失函数,并将与总损失函数对超像素网络进行训练,在将训练好的超像素网络应用在图像分辨率提升的处理过程中,能够实现快速、精细的渲染图分辨率提升,从而呈现高质量的渲染效果。
在一些实施例中,计算机设备基于样本低分辨率渲染图、真实高分辨率渲染图和模拟高分辨率渲染图,构建总损失函数,包括:基于样本低分辨率渲染图与真实高分辨率渲染图之间的差异,构建第一损失函数;基于模拟高分辨率渲染图与真实高分辨率渲染图之间的差异,构建第二损失函数;基于第一损失函数和第二损失函数得到总损失函数。
具体地,计算机设备首先基于样本低分辨率渲染图与真实高分辨率渲染图之间的差异,构建第一损失函数。并且,计算机设备基于模拟高分辨率渲染图与真实高分辨率渲染图之间的差异,构建第二损失函数。
进而,计算机设备基于第一损失函数和第二损失函数得到总损失函数。示例性地,计算机设备基于第一损失函数和第二损失函数之和得到总损失函数。
示例性地,如图11所示,计算机设备基于样本低分辨率渲染图I与真实高分辨率渲染图G之间的差异,构建第一损失函数L1,并基于模拟高分辨率渲染图f(I)与真实高分辨率渲染图G之间的差异,构建第二损失函数L2。
进而,计算机设备可以通过如下公式表示总损失函数L:
L=L1+L2
其中,第一损失函数L1可以通过如下公式表示:
L1=||G-I||2
其中,第二损失函数L2可以通过如下公式表示:
L2=||f(G)-f(I)||2
上述实施例中,通过基于样本低分辨率渲染图、真实高分辨率渲染图和模拟高分辨率渲染图,构建总损失函数,并将与总损失函数对超像素网络进行训练,在将训练好的超像素网络应用在图像分辨率提升的处理过程中,能够实现快速、精细的渲染图分辨率提升,从而呈现高质量的渲染效果。
在一些实施例中,上述实施例中的多层感知机和超像素网络可以联合进行训练。如图12所示,计算机设备从待渲染的三维模型中获取采样点及其点坐标(x,y,z),并结合采样点所在的网格面片将采样点映射至3D曲面空间,得到采样点的纹理坐标(u,v,h)。进而,计算机设备结合纹理坐标和姿态参数等三维模型参数,输入至多层感知机中,并在预设视角d下进行编码处理,输出诸如密度参数σ、颜色参数c和场景参数f的模型渲染参数。进而,计算机设备基于模型渲染参数进行体积渲染,得到低分辨率渲染图(对应于初始渲染图)。计算机设备再通过超像素网络对低分辨率渲染图进行处理,以得到模拟高分辨率渲染图(对应于目标渲染图)。进而,计算机设备根据模拟高分辨率渲染图与真实高分辨率渲染图之间的差异、低分辨率渲染图与真实高分辨率渲染图之间的差异构建超像素网络的总损失函数。并且,计算机设备还构建多层感知机的损失函数。
进而,计算机设备联合多层感知机和超像素网络进行联合学习,并联合超像素网络的总损失函数和多层感知机的损失函数进行训练,知道最小化整体损失函数时终止训练。其中,整体损失函数例如为超像素网络的总损失函数和多层感知机的损失函数之和。
本申请还提供一种应用场景,该应用场景应用上述的三维模型的渲染方法。具体地,如图13所示,该三维模型的渲染方法在该应用场景的应用例如如下:计算机设备从待渲染的三维游戏模型中确定采样点,并确定采样点的纹理坐标;获取与采样点对应的三维模型参数,并在预设视角下对纹理坐标和三维模型参数进行编码处理,得到模型渲染参数;获取预设视角下的模拟光线,根据模型渲染参数和模拟光线,确定预设视角下三维游戏模型的初始游戏渲染图;对初始游戏渲染图进行分辨率提升处理,得到预设视角下三维游戏模型的目标游戏渲染图。
当然并不局限于此,本申请提供的三维模型的渲染方法还可以应用在其他应用场景中,例如医疗三维模型的影像渲染等。
在一个具体的示例中,本申请实施例提供的三维模型的渲染方法包括如下步骤:计算机设备获取待渲染的三维模型的贴图资源,并利用调试工具加载贴图资源中的各张纹理贴图,记录加载各张纹理贴图所消耗的加载时长,并将加载时长超过预设时长阈值的纹理贴图作为目标纹理贴图。进而,计算机设备将目标纹理贴图中的像素点投影至三维模型所位于的模型空间中,并将模型空间中的投影点作为采样点。
之后,计算机设备获取采样点在三维模型所位于的模型空间中的点坐标,并获取三维模型中多个网格面片的顶点坐标。针对多个网格面片中的每个网格面片,计算机设备基于所针对的网格面片的顶点坐标进行重心插值处理,得到与所针对的网格面片对应的曲面坐标。计算机设备再分别确定点坐标和与各个网格面片对应的曲面坐标之间的差异,并基于最小差异确定采样点的纹理坐标。
此外,计算机设备还获取采样点在三维模型中所属的模型部位,并根据模型部位的姿态参数,确定与采样点对应的三维模型参数。
由此,计算机设备基于纹理坐标和三维模型参数进行编码处理。一方面,计算机设备对纹理坐标进行位置编码,并对位置编码后的纹理坐标进行全连接处理,得到中间特征,再基于中间特征进行特征处理,得到采样点对应的密度参数。另一方面,计算机设备对视角参数进行位置编码,并基于位置编码后的视角参数与中间特征进行特征处理,得到预设视角对应的颜色参数。
进而,计算机设备沿着模拟光线的光线方向上采样得到多个光点,并在预设视角下,确定在光线方向上每个光点对应的模型渲染参数。由此,计算机设备以预设光线边界为积分边界,对光线方向上每个光点对应的模型渲染参数进行积分处理,得到预设视角下三维模型的初始渲染图。
之后,计算机设备再对初始渲染图进行特征提取,得到渲染特征图,并基于渲染特征图进行上采样处理,得到最终的高分辨率的目标渲染图。
应该理解的是,虽然如上的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的三维模型的渲染方法的三维模型的渲染装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个三维模型的渲染装置实施例中的具体限定可以参见上文中对于三维模型的渲染方法的限定,在此不再赘述。
在一些实施例中,如图14所示,提供了一种三维模型的渲染装置1400,包括:确定模块1401、获取模块1402和提升模块1403,其中:
确定模块1401,用于从待渲染的三维模型中确定采样点,并确定采样点的纹理坐标。
获取模块1402,用于获取与采样点对应的三维模型参数,并在预设视角下对纹理坐标和三维模型参数进行编码处理,得到模型渲染参数。
获取模块1402,还用于获取预设视角下的模拟光线,根据模型渲染参数和模拟光线进行渲染,得到预设视角下三维模型的初始渲染图。
提升模块1403,用于对初始渲染图进行分辨率提升处理,得到预设视角下三维模型的目标渲染图。
在一些实施例中,确定模块还用于获取待渲染的三维模型对应的目标纹理贴图;将目标纹理贴图中的像素点投影至三维模型所位于的模型空间中,并将模型空间中的投影点作为采样点。
在一些实施例中,确定模块还用于获取待渲染的三维模型的贴图资源;贴图资源包括多张纹理贴图;利用调试工具加载贴图资源中的各张纹理贴图,并记录加载各张纹理贴图所消耗的加载时长;将加载时长超过预设时长阈值的纹理贴图作为目标纹理贴图。
在一些实施例中,确定模块还用于获取采样点在三维模型所位于的模型空间中的点坐标,并获取三维模型中多个网格面片的顶点坐标;基于点坐标和多个网格面片的顶点坐标,确定采样点的纹理坐标。
在一些实施例中,确定模块还用于针对多个网格面片中的每个网格面片,基于所针对的网格面片的顶点坐标进行重心插值处理,得到与所针对的网格面片对应的曲面坐标;分别确定点坐标和与各个网格面片对应的曲面坐标之间的差异,并基于最小差异确定采样点的纹理坐标。
在一些实施例中,三维模型参数包括姿态参数;获取模块还用于获取采样点在三维模型中所属的模型部位;根据模型部位的姿态参数,确定与采样点对应的三维模型参数。
在一些实施例中,模型渲染参数包括颜色参数和密度参数;预设视角通过视角参数表征;获取模块还用于对纹理坐标进行位置编码,并对位置编码后的纹理坐标进行全连接处理,得到中间特征;基于中间特征进行特征处理,得到采样点对应的密度参数;对视角参数进行位置编码,并基于位置编码后的视角参数与中间特征进行特征处理,得到预设视角对应的颜色参数。
在一些实施例中,获取模块还用于沿着模拟光线的光线方向上采样得到多个光点;在预设视角下,确定在光线方向上每个光点对应的模型渲染参数;以预设光线边界为积分边界,对光线方向上每个光点对应的模型渲染参数进行积分处理,得到预设视角下三维模型的初始渲染图。
在一些实施例中,提升模块还用于对初始渲染图进行特征提取,得到渲染特征图;基于渲染特征图进行上采样处理,得到预设视角下三维模型的目标渲染图。
在一些实施例中,在预设视角下对纹理坐标和三维模型参数进行编码处理,得到模型渲染参数的步骤通过训练好的多层感知机实现;其中,多层感知机包括多层全连接层,每个全连接层包括多个感知节点,每个感知节点分别预设有模型渲染参数的权重;模型渲染参数通过末层全连接层的各感知节点的输出加权求和得到。
在一些实施例中,上述步骤还包括训练模块,用于获取预设视角的样本低分辨率渲染图、以及与样本低分辨率渲染图相匹配的真实高分辨率渲染图;对样本低分辨率渲染图进行分辨率提升处理,得到预设视角下三维模型的模拟高分辨率渲染图;基于样本低分辨率渲染图、真实高分辨率渲染图和模拟高分辨率渲染图,构建总损失函数,并基于损失函数进行训练,得到训练好的超像素网络。
在一些实施例中,训练模块还用于基于样本低分辨率渲染图与真实高分辨率渲染图之间的差异,构建第一损失函数;基于模拟高分辨率渲染图与真实高分辨率渲染图之间的差异,构建第二损失函数;基于第一损失函数和第二损失函数得到总损失函数。
上述三维模型的渲染装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一些实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图15所示。该计算机设备包括处理器、存储器、输入/输出接口(Input/Output,简称I/O)和通信接口。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储模型数据。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种三维模型的渲染方法。
本领域技术人员可以理解,图15中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一些实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一些实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一些实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (16)
1.一种三维模型的渲染方法,其特征在于,所述方法包括:
从待渲染的三维模型中确定采样点,并确定所述采样点的纹理坐标;
获取与所述采样点对应的三维模型参数,并在预设视角下对所述纹理坐标和三维模型参数进行编码处理,得到模型渲染参数;
获取所述预设视角下的模拟光线,根据所述模型渲染参数和所述模拟光线进行渲染,得到所述预设视角下所述三维模型的初始渲染图;
对所述初始渲染图进行分辨率提升处理,得到所述预设视角下所述三维模型的目标渲染图。
2.根据权利要求1所述的方法,其特征在于,所述从待渲染的三维模型中确定采样点,包括:
获取待渲染的三维模型对应的目标纹理贴图;
将所述目标纹理贴图中的像素点投影至三维模型所位于的模型空间中,并将所述模型空间中的投影点作为采样点。
3.根据权利要求2所述的方法,其特征在于,所述获取待渲染的三维模型对应的目标纹理贴图,包括:
获取所述待渲染的三维模型的贴图资源;所述贴图资源包括多张纹理贴图;
利用调试工具加载所述贴图资源中的各张纹理贴图,并记录加载各张纹理贴图所消耗的加载时长;
将所述加载时长超过预设时长阈值的纹理贴图作为目标纹理贴图。
4.根据权利要求1所述的方法,其特征在于,所述确定所述采样点的纹理坐标,包括:
获取所述采样点在所述三维模型所位于的模型空间中的点坐标,并获取所述三维模型中多个网格面片的顶点坐标;
基于所述点坐标和所述多个网格面片的顶点坐标,确定所述采样点的纹理坐标。
5.根据权利要求4所述的方法,其特征在于,所述基于所述点坐标和所述多个网格面片的顶点坐标,确定所述采样点的纹理坐标,包括:
针对所述多个网格面片中的每个网格面片,基于所针对的网格面片的顶点坐标进行重心插值处理,得到与所针对的网格面片对应的曲面坐标;
分别确定所述点坐标和与各个网格面片对应的曲面坐标之间的差异,并基于最小差异确定所述采样点的纹理坐标。
6.根据权利要求1所述的方法,其特征在于,所述三维模型参数包括姿态参数;所述获取与所述采样点对应的三维模型参数,包括:
获取所述采样点在所述三维模型中所属的模型部位;
根据所述模型部位的姿态参数,确定与所述采样点对应的三维模型参数。
7.根据权利要求1所述的方法,其特征在于,所述模型渲染参数包括颜色参数和密度参数;所述预设视角通过视角参数表征;所述在预设视角下对所述纹理坐标和三维模型参数进行编码处理,得到模型渲染参数,包括:
对所述纹理坐标进行位置编码,并对位置编码后的纹理坐标进行全连接处理,得到中间特征;
基于所述中间特征进行特征处理,得到所述采样点对应的密度参数;
对所述视角参数进行位置编码,并基于位置编码后的视角参数与所述中间特征进行特征处理,得到所述预设视角对应的颜色参数。
8.根据权利要求1所述的方法,其特征在于,所述根据所述模型渲染参数和所述模拟光线进行渲染,得到所述预设视角下所述三维模型的初始渲染图,包括:
沿着所述模拟光线的光线方向上采样得到多个光点;
在预设视角下,确定在所述光线方向上每个光点对应的模型渲染参数;
以预设光线边界为积分边界,对所述光线方向上每个光点对应的模型渲染参数进行积分处理,得到所述预设视角下所述三维模型的初始渲染图。
9.根据权利要求1所述的方法,其特征在于,所述对所述初始渲染图进行分辨率提升处理,得到所述预设视角下所述三维模型的目标渲染图,包括:
对所述初始图进行特征提取,得到渲染特征图;
基于所述渲染特征图进行上采样处理,得到所述预设视角下所述三维模型的目标渲染图。
10.根据权利要求1所述的方法,其特征在于,所述在预设视角下对所述纹理坐标和三维模型参数进行编码处理,得到模型渲染参数的步骤通过训练好的多层感知机实现;其中,所述多层感知机包括多层全连接层,每个全连接层包括多个感知节点,每个感知节点分别预设有模型渲染参数的权重;所述模型渲染参数通过末层全连接层的各感知节点的输出加权求和得到。
11.根据权利要求1所述的方法,其特征在于,所述对所述初始渲染图进行分辨率提升处理,得到所述预设视角下所述三维模型的目标渲染图的步骤通过训练好的超像素网络实现,所述超像素网络的训练步骤包括:
获取预设视角的样本低分辨率渲染图、以及与所述样本低分辨率渲染图相匹配的真实高分辨率渲染图;
对所述样本低分辨率渲染图进行分辨率提升处理,得到所述预设视角下所述三维模型的模拟高分辨率渲染图;
基于所述样本低分辨率渲染图、真实高分辨率渲染图和所述模拟高分辨率渲染图,构建总损失函数,并基于所述损失函数进行训练,得到训练好的超像素网络。
12.根据权利要求11所述的方法,其特征在于,所述基于所述样本低分辨率渲染图、真实高分辨率渲染图和所述模拟高分辨率渲染图,构建总损失函数,包括:
基于所述样本低分辨率渲染图与所述真实高分辨率渲染图之间的差异,构建第一损失函数;
基于所述模拟高分辨率渲染图与所述真实高分辨率渲染图之间的差异,构建第二损失函数;
基于所述第一损失函数和第二损失函数得到总损失函数。
13.一种三维模型的渲染装置,其特征在于,所述装置包括:
确定模块,用于从待渲染的三维模型中确定采样点,并确定所述采样点的纹理坐标;
获取模块,用于获取与所述采样点对应的三维模型参数,并在预设视角下对所述纹理坐标和三维模型参数进行编码处理,得到模型渲染参数;
所述获取模块,还用于获取所述预设视角下的模拟光线,根据所述模型渲染参数和所述模拟光线进行渲染,得到所述预设视角下所述三维模型的初始渲染图;
提升模块,用于对所述初始渲染图进行分辨率提升处理,得到所述预设视角下所述三维模型的目标渲染图。
14.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至12中任一项所述的方法的步骤。
15.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至12中任一项所述的方法的步骤。
16.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至12中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310648755.1A CN116977522A (zh) | 2023-06-02 | 2023-06-02 | 三维模型的渲染方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310648755.1A CN116977522A (zh) | 2023-06-02 | 2023-06-02 | 三维模型的渲染方法、装置、计算机设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116977522A true CN116977522A (zh) | 2023-10-31 |
Family
ID=88482219
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310648755.1A Pending CN116977522A (zh) | 2023-06-02 | 2023-06-02 | 三维模型的渲染方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116977522A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117237507A (zh) * | 2023-11-16 | 2023-12-15 | 北京渲光科技有限公司 | 参与介质的渲染方法、装置、存储介质及计算机设备 |
CN117274473A (zh) * | 2023-11-21 | 2023-12-22 | 北京渲光科技有限公司 | 一种多重散射实时渲染的方法、装置及电子设备 |
CN117274344A (zh) * | 2023-11-22 | 2023-12-22 | 北京渲光科技有限公司 | 真实材质纹理的模型训练方法、纹理合成及映射方法 |
CN117422809A (zh) * | 2023-12-19 | 2024-01-19 | 浙江优众新材料科技有限公司 | 一种光场图像渲染的数据处理方法 |
CN117541703A (zh) * | 2024-01-09 | 2024-02-09 | 腾讯科技(深圳)有限公司 | 一种数据渲染方法、装置、设备及计算机可读存储介质 |
CN117893692A (zh) * | 2024-03-12 | 2024-04-16 | 之江实验室 | 一种基于对称视图的三维重建方法、装置及存储介质 |
-
2023
- 2023-06-02 CN CN202310648755.1A patent/CN116977522A/zh active Pending
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117237507A (zh) * | 2023-11-16 | 2023-12-15 | 北京渲光科技有限公司 | 参与介质的渲染方法、装置、存储介质及计算机设备 |
CN117237507B (zh) * | 2023-11-16 | 2024-01-30 | 北京渲光科技有限公司 | 参与介质的渲染方法、装置、存储介质及计算机设备 |
CN117274473A (zh) * | 2023-11-21 | 2023-12-22 | 北京渲光科技有限公司 | 一种多重散射实时渲染的方法、装置及电子设备 |
CN117274473B (zh) * | 2023-11-21 | 2024-02-02 | 北京渲光科技有限公司 | 一种多重散射实时渲染的方法、装置及电子设备 |
CN117274344A (zh) * | 2023-11-22 | 2023-12-22 | 北京渲光科技有限公司 | 真实材质纹理的模型训练方法、纹理合成及映射方法 |
CN117274344B (zh) * | 2023-11-22 | 2024-02-06 | 北京渲光科技有限公司 | 真实材质纹理的模型训练方法、纹理合成及映射方法 |
CN117422809A (zh) * | 2023-12-19 | 2024-01-19 | 浙江优众新材料科技有限公司 | 一种光场图像渲染的数据处理方法 |
CN117422809B (zh) * | 2023-12-19 | 2024-03-19 | 浙江优众新材料科技有限公司 | 一种光场图像渲染的数据处理方法 |
CN117541703A (zh) * | 2024-01-09 | 2024-02-09 | 腾讯科技(深圳)有限公司 | 一种数据渲染方法、装置、设备及计算机可读存储介质 |
CN117541703B (zh) * | 2024-01-09 | 2024-04-30 | 腾讯科技(深圳)有限公司 | 一种数据渲染方法、装置、设备及计算机可读存储介质 |
CN117893692A (zh) * | 2024-03-12 | 2024-04-16 | 之江实验室 | 一种基于对称视图的三维重建方法、装置及存储介质 |
CN117893692B (zh) * | 2024-03-12 | 2024-05-28 | 之江实验室 | 一种基于对称视图的三维重建方法、装置及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11748934B2 (en) | Three-dimensional expression base generation method and apparatus, speech interaction method and apparatus, and medium | |
CN112614213B (zh) | 人脸表情确定方法、表情参数确定模型、介质及设备 | |
CN111354079B (zh) | 三维人脸重建网络训练及虚拟人脸形象生成方法和装置 | |
CN111369681B (zh) | 三维模型的重构方法、装置、设备及存储介质 | |
CN116977522A (zh) | 三维模型的渲染方法、装置、计算机设备和存储介质 | |
CN111243093B (zh) | 三维人脸网格的生成方法、装置、设备及存储介质 | |
US11348314B2 (en) | Fast and deep facial deformations | |
WO2022205760A1 (zh) | 三维人体重建方法、装置、设备及存储介质 | |
JP2022503647A (ja) | クロスドメイン画像変換 | |
CA3137297C (en) | Adaptive convolutions in neural networks | |
CN116385667B (zh) | 三维模型的重建方法、纹理重构模型的训练方法以及装置 | |
CN115457188A (zh) | 一种基于注视点的3d渲染显示方法及系统 | |
CN117218300B (zh) | 三维模型的构建方法、三维构建模型的训练方法及装置 | |
CN115601511A (zh) | 三维重建方法、装置、计算机设备及计算机可读存储介质 | |
Marques et al. | Deep spherical harmonics light probe estimator for mixed reality games | |
CN116363308A (zh) | 人体三维重建模型训练方法、人体三维重建方法和设备 | |
CN116342782A (zh) | 生成虚拟形象渲染模型的方法和装置 | |
CN111862278A (zh) | 一种动画获得方法、装置、电子设备及存储介质 | |
CN110008873B (zh) | 面部表情捕捉方法、系统及设备 | |
CN114049678B (zh) | 一种基于深度学习的面部动作捕捉方法及系统 | |
CA3169005A1 (en) | Face mesh deformation with detailed wrinkles | |
Yao et al. | Neural Radiance Field-based Visual Rendering: A Comprehensive Review | |
CN117876430B (zh) | 一种全景图像及视频中的扫视路径预测方法、设备及介质 | |
WO2023169023A1 (zh) | 表情模型的生成方法、装置、设备及介质 | |
US20230196702A1 (en) | Object Deformation with Bindings and Deformers Interpolated from Key Poses |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |