CN116109803B - 信息构建方法、装置、设备及存储介质 - Google Patents

信息构建方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN116109803B
CN116109803B CN202310393668.6A CN202310393668A CN116109803B CN 116109803 B CN116109803 B CN 116109803B CN 202310393668 A CN202310393668 A CN 202310393668A CN 116109803 B CN116109803 B CN 116109803B
Authority
CN
China
Prior art keywords
discrete
point
information map
depth
bin
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
Application number
CN202310393668.6A
Other languages
English (en)
Other versions
CN116109803A (zh
Inventor
宁效龙
徐礼铭
潘霄禹
李元亨
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202310393668.6A priority Critical patent/CN116109803B/zh
Publication of CN116109803A publication Critical patent/CN116109803A/zh
Application granted granted Critical
Publication of CN116109803B publication Critical patent/CN116109803B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/006Mixed reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/005General purpose rendering architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/61Scene description
    • 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
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Architecture (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本申请公开一种信息构建方法、装置、设备及存储介质,方法包括:在虚拟场景中生成多个离散面元,所述离散面元是具有方向和大小的平面图形;所述虚拟场景中包括摄像机和至少一个虚拟对象,每个虚拟对象的表面贴附有至少一个离散面元;获取生成的各个离散面元在所述虚拟场景中的深度值,任一离散面元在所述虚拟场景中的深度值由相应离散面元和所述摄像机之间的距离值确定;采用所述各个离散面元在所述虚拟场景中的深度值,构建所述虚拟场景的全视角深度信息。通过本申请,可提升全视角深度信息的构建效率以及全视角深度信息的质量。

Description

信息构建方法、装置、设备及存储介质
技术领域
本申请涉及计算机技术领域,具体涉及计算机图形学技术领域,尤其涉及一种信息构建方法、装置、设备及存储介质。
背景技术
随着计算机图形学技术的发展,虚拟场景的全视角深度信息得到了广泛应用;所谓的全视角是指任一对象(如用户或摄像机)观看虚拟场景的全部视角(即360°的视角),通过全视角可以观看到虚拟场景中的所有虚拟对象,而虚拟场景的全视角深度信息则是指可用于指示虚拟场景中的各个虚拟对象的深度值的信息,任一虚拟对象的深度值是指相应虚拟对象与摄像机之间的距离值。目前,如何构建虚拟场景的全视角深度信息,成为了研究热点。
发明内容
本申请实施例提供了一种信息构建方法、装置、设备及存储介质,可以提升全视角深度信息的构建效率以及全视角深度信息的质量。
一方面,本申请实施例提供了一种信息构建方法,所述方法包括:
在虚拟场景中生成多个离散面元,所述离散面元是具有方向和大小的平面图形;所述虚拟场景中包括摄像机和至少一个虚拟对象,每个虚拟对象的表面贴附有至少一个离散面元;
获取生成的各个离散面元在所述虚拟场景中的深度值,任一离散面元在所述虚拟场景中的深度值由相应离散面元和所述摄像机之间的距离值确定;
采用所述各个离散面元在所述虚拟场景中的深度值,构建所述虚拟场景的全视角深度信息。
另一方面,本申请实施例提供了一种信息构建装置,所述装置包括:
处理单元,用于在虚拟场景中生成多个离散面元,所述离散面元是具有方向和大小的平面图形;所述虚拟场景中包括摄像机和至少一个虚拟对象,每个虚拟对象的表面贴附有至少一个离散面元;
所述处理单元,还用于获取生成的各个离散面元在所述虚拟场景中的深度值,任一离散面元在所述虚拟场景中的深度值由相应离散面元和所述摄像机之间的距离值确定;
构建单元,用于采用所述各个离散面元在所述虚拟场景中的深度值,构建所述虚拟场景的全视角深度信息。
在一种实施方式中,构建单元在用于采用所述各个离散面元在所述虚拟场景中的深度值,构建所述虚拟场景的全视角深度信息时,可具体用于:
获取贴图模板,所述贴图模板中包括多个像素点,一个像素点用于存储一个深度值;
将所述各个离散面元从所述虚拟场景投影至所述贴图模板,得到相应离散面元在所述贴图模板中所对应的像素点;
将所述各个离散面元在所述虚拟场景中的深度值,存储至所述贴图模板中的相应像素点中,得到所述虚拟场景的全视角深度信息。
另一种实施方式中,构建单元在用于将所述各个离散面元从所述虚拟场景投影至所述贴图模板,得到相应离散面元在所述贴图模板中所对应的像素点时,可具体用于:
针对第i个离散面元,根据所述第i个离散面元的中心点和所述摄像机之间的方向向量,将相应中心点从所述虚拟场景投影至所述贴图模板,得到第一投影点;其中,i∈[1,I],I为离散面元的总数;
将所述贴图模板中位于所述第一投影点处的像素点,作为所述第i个离散面元对应的像素点。
另一种实施方式中,构建单元在用于将所述各个离散面元在所述虚拟场景中的深度值,存储至所述贴图模板中的相应像素点中,得到所述虚拟场景的全视角深度信息时,可具体用于:
将所述各个离散面元在所述虚拟场景中的深度值,分别存储至所述贴图模板中的相应像素点中,得到深度信息贴图,所述深度信息贴图中未存储任一离散面元的深度值的像素点为无效像素点;
根据信息重建策略对所述深度信息贴图中的无效像素点进行信息重建,得到重建后的深度信息贴图,并将所述重建后的深度信息贴图作为所述虚拟场景的全视角深度信息。
另一种实施方式中,构建单元在用于根据信息重建策略对所述深度信息贴图中的无效像素点进行信息重建,得到重建后的深度信息贴图时,可具体用于:
基于所述深度信息贴图逐级生成低精度的信息贴图,得到目标信息贴图;所述目标信息贴图仅包括一个像素点,且包括的像素点存储有深度值;其中,在逐级生成低精度的信息贴图时,第k+1级的信息贴图中的任一像素点存储的深度值,根据第k级的信息贴图中的多个像素点存储的深度值确定;
基于所述目标信息贴图逐级填充高精度的信息贴图中的无效像素点,直至所述深度信息贴图中的各个无效像素点均被填充,得到重建后的深度信息贴图;其中,在逐级填充高精度的信息贴图中的无效像素点时,第k级的信息贴图中的无效像素点存储的深度值,根据第k+1级的信息贴图中的至少一个像素点存储的深度值确定;
其中,任一信息贴图的精度与相应信息贴图包含的像素点的数量成正相关;k∈[1,K-1],K为所述目标信息贴图对应的精度等级,第0级的信息贴图为所述深度信息贴图;当k的取值为K-1时,第k+1级的信息贴图为所述目标信息贴图。
另一种实施方式中,构建单元在用于基于所述深度信息贴图逐级生成低精度的信息贴图时,可具体用于:
对第k级的信息贴图中的像素点进行分组,并根据分组结果确定用于生成第k+1级的信息贴图的图像模板;所述图像模板中的各像素点均未存储深度值,且所述图像模板中的一个像素点与所述分组结果中的一个像素组对应,不同像素点对应不同像素组;
遍历所述图像模板中的各个像素点,将当前遍历的像素点作为当前像素点;
从所述分组结果中获取与所述当前像素点对应的像素组,并在获取到的像素组中筛选有效像素点,所述有效像素点是指存储有深度值的像素点;
若筛选出至少一个有效像素点,则对筛选出的各个有效像素点存储的深度值进行均值运算,并将均值运算所得到的值作为深度值,存储至所述当前像素点中;若未筛选出有效像素点,则确定所述当前像素点为空;
继续遍历,直至所述图像模板中的各个像素点均被遍历,得到第k+1级的信息贴图。
另一种实施方式中,构建单元在用于基于所述目标信息贴图逐级填充高精度的信息贴图中的无效像素点时,可具体用于:
遍历第k级的信息贴图中的无效像素点;
将当前遍历的无效像素点映射至第k+1级的信息贴图中,得到映射点;并基于所述映射点从第k+1级的信息贴图中选取至少一个像素点,作为所述当前遍历的无效像素点的参考像素点;
根据各个参考像素点所存储的深度值,计算所述当前遍历的无效像素点的深度值,并将计算出的深度值填充至所述当前遍历的无效像素点中;
继续遍历,直至所述第k级的信息贴图中的各个无效像素点均被遍历为止。
另一种实施方式中,构建单元在用于根据各个参考像素点所存储的深度值,计算所述当前遍历的无效像素点的深度值时,可具体用于:
按照距离和权重成反比的原则,根据所述各个参考像素点和所述映射点之间的距离,为所述各个参考像素点分配权重;
分别对所述各个参考像素点进行有效性校验;其中,若任一参考像素点存储有深度值,则所述任一参考像素点通过有效性校验;
根据通过有效性校验的参考像素点的权重,对相应参考像素点存储的深度值进行加权平均,得到所述当前遍历的无效像素点的深度值。
另一种实施方式中,任一离散面元的形状为圆形;相应的,构建单元602在用于将所述各个离散面元从所述虚拟场景投影至所述贴图模板,得到相应离散面元在所述贴图模板中所对应的像素点时,可具体用于:
针对第i个离散面元,根据所述第i个离散面元的中心点和所述摄像机之间的方向向量,将相应中心点从所述虚拟场景投影至所述贴图模板,得到第一投影点;其中,i∈[1,I],I为离散面元的总数;
根据所述第i个离散面元的一个边缘点和所述摄像机之间的方向向量,将相应边缘点从所述虚拟场景投影至所述贴图模板,得到第二投影点;边缘点是指:基于离散面元的半径,从离散面元的边上选取出的点;
以所述第一投影点为圆心,且以所述第一投影点和所述第二投影点之间的距离为半径,在所述贴图模板上绘制一个圆,得到圆形区域;
将所述贴图模板中位于所述圆形区域内的各个像素点,均作为所述第i个离散面元对应的像素点。
另一种实施方式中,构建单元在用于将所述各个离散面元从所述虚拟场景投影至所述贴图模板,得到相应离散面元在所述贴图模板中所对应的像素点时,可具体用于:
针对第i个离散面元,在所述第i个离散面元的边上选取K个边缘点,K为大于2的整数;其中,i∈[1,I],I为离散面元的总数;
根据各个边缘点和所述摄像机之间的方向向量,将相应边缘点从所述虚拟场景投影至所述贴图模板,得到K个第二投影点;
在所述贴图模板上依次连接所述K个第二投影点,得到一个封闭区域;
将所述贴图模板中位于所述封闭区域内的各个像素点,均作为所述第i个离散面元对应的像素点。
再一方面,本申请实施例提供了一种计算机设备,所述计算机设备包括输入接口和输出接口,所述计算机设备还包括:
处理器以及计算机存储介质;
其中,所述处理器适于实现一条或多条指令,所述计算机存储介质存储有一条或多条指令,所述一条或多条指令适于由所述处理器加载并执行上述所提及的信息构建方法。
再一方面,本申请实施例提供了一种计算机存储介质,所述计算机存储介质存储有一条或多条指令,所述一条或多条指令适于由处理器加载并执行上述所提及的信息构建方法。
再一方面,本申请实施例提供了一种计算机程序产品,该计算机程序产品包括计算机程序;所述计算机程序被处理器执行时,实现上述所提及的信息构建方法。
本申请实施例可在虚拟场景中生成多个离散面元,并获取各个离散面元和摄像机之间的距离值,作为相应离散面元在虚拟场景中的深度值,从而采用各个离散面元在虚拟场景中的深度值,构建虚拟场景的全视角深度信息。可见,本申请实施例所提出的全视角深度信息的构建流程较为简单,这样可节省构建全视角深度信息所需的时间成本和处理资源(如带宽),提升全视角深度信息的构建效率。并且,由于各个离散面元是贴附在相应虚拟对象的表面的,因此各个离散面元在虚拟场景中的深度值可较为准确地表征相应虚拟对象的深度值,那么通过采用各个离散面元的深度值构建全视角深度信息,可使得构建出的全视角深度信息具有较高的准确性,提升全视角深度信息的质量。另外,当每个虚拟对象的表面贴附多个离散面元时,同一个虚拟对象的深度值可通过全视角深度信息中的多个离散面元的深度值进行共同表征,这样可进一步提升虚拟对象的深度值的准确性,从而进一步提升全视角深度信息的质量。
附图说明
为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1a是本申请实施例提供的一种由终端和服务器共同执行信息构建方法的示意图;
图1b是本申请实施例提供的另一种由终端和服务器共同执行信息构建方法的示意图;
图2是本申请实施例提供的一种信息构建方法的流程示意图;
图3a是本申请实施例提供的一种在虚拟对象的表面生成离散面元的示意图;
图3b是本申请实施例提供的一种在虚拟场景中生成离散面元的示意图;
图3c是本申请实施例提供的一种八面体映射的示意图;
图4是本申请另一实施例提供的一种信息构建方法的流程示意图;
图5a是本申请实施例提供的一种在贴图模板中确定离散面元对应的像素点的示意图;
图5b是本申请实施例提供的另一种在贴图模板中确定离散面元对应的像素点的示意图;
图5c是本申请实施例提供的再一种在贴图模板中确定离散面元对应的像素点的示意图;
图5d是本申请实施例提供的一种摄像机和离散面元之间的位置关系示意图;
图5e是本申请实施例提供的一种深度信息贴图的示意图;
图5f是本申请实施例提供的一种对深度信息贴图进行信息重建的示意图;
图5g是本申请实施例提供的另一种深度信息贴图的示意图;
图5h是本申请实施例提供的一种逐级生成低精度的信息贴图的示意图;
图5i是本申请实施例提供的一种逐级填充高精度的信息贴图的示意图;
图6是本申请实施例提供的一种信息构建装置的结构示意图;
图7是本申请实施例提供的一种计算机设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
本申请实施例基于AI(Artificial Intelligence,人工智能)技术中的计算机视觉技术(Computer Vision,CV)和计算机图形学技术,提出一种基于离散面元构建虚拟场景的全视角深度信息的方法。所谓的AI技术是指:利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统的技术。换句话说,AI是计算机科学的一个综合技术;其主要通过了解智能的实质,生产出一种新的能以人类智能相似的方式做出反应的智能机器,使得智能机器具有感知、推理与决策等多种功能。AI技术中的计算机视觉技术是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别、追踪和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像的技术。AI技术中的计算机图形学技术是一种使用数学算法将二维或三维图形转化为计算机显示器的栅格形式的科学;简单地说,计算机图形学的主要研究内容就是研究如何在计算机中表示图形、以及利用计算机进行图形的计算、处理和显示的相关原理与算法。
在本申请实施例中,离散面元是指具有方向和大小的平面图形,如圆形、椭圆形,正方形,六边形,等等。一个离散面元的基本构成要素(可称为面元信息)可包括但不限于以下几点:①世界空间坐标,如离散面元的中心点的世界空间坐标,所谓的世界空间坐标是指在世界空间坐标系中的三维坐标,而世界空间坐标系又可称为绝对坐标系,其不随视角或者其他因素而发生变化;②法向量,即垂直于离散面元的直线所表示的向量,其可指示离散面元的法线方向;③大小信息,即用于指示离散面元的大小的信息,如离散面元为圆形时,大小信息可以是圆半径(简称半径)。
虚拟场景可以理解成是可在设备屏幕中进行显示的场景。具体的,该虚拟场景可以是对真实世界中的场景进行数字仿真所得到的场景,例如对真实世界中的自动驾驶场景或景区游玩场景进行仿真所得到的场景;或者,该虚拟场景也可以是半仿真半虚构的场景,例如在真实世界对应的仿真世界中叠加了虚构人物的场景;又或者,该虚拟场景还可以是纯虚构的场景,例如游戏场景、影视剧或电影中的场景,等等。
虚拟场景中可包括至少一个虚拟对象,所谓的虚拟对象可以是虚拟场景中的静态物体元素,如虚拟草地、虚拟建筑物等;或者,虚拟对象可以是虚拟场景中的可活动对象,如游戏场景中的虚拟角色,游戏场景中的虚拟动物等。应理解的是,虚拟场景中的各个虚拟对象可以均是静态物体元素,也可以均是可活动对象,还可以同时包含静态物体元素和可活动对象,对此不作限定。进一步的,虚拟场景中还可包括摄像机,该摄像机是一种用于呈现虚拟场景在至少一个视角方向下的视图的组件;本申请实施例对摄像机在虚拟场景中的位置不作限定,例如其可以位于虚拟场景中的某一虚拟对象所处的位置,或者位于虚拟场景中除各虚拟对象所处位置以外的任一位置,等等。
基于上述定义,下面对本申请实施例所提出的基于离散面元构建虚拟场景的全视角深度信息的方法进行原理阐述;具体的,该方法的大致原理如下:首先,可在虚拟场景中的每个虚拟对象的表面,分别生成至少一个离散面元;接着,可获取各个离散面元在虚拟场景中的深度值,任一离散面元在虚拟场景中的深度值由相应离散面元和摄像机之间的距离值确定;然后,可采用各个离散面元在虚拟场景中的深度值,构建虚拟场景的全视角深度信息。可见,本申请实施例基于离散面元来构建虚拟场景的全视角深度信息,可使得全视角深度信息的构建流程较为简单,这样可节省构建全视角深度信息所需的时间成本和处理资源(如带宽),提升全视角深度信息的构建效率。并且,由于各个离散面元是贴附在相应虚拟对象的表面的,因此各个离散面元在虚拟场景中的深度值可较为准确地表征相应虚拟对象的深度值,那么通过采用各个离散面元的深度值构建全视角深度信息,可使得构建出的全视角深度信息具有较高的准确性,提升全视角深度信息的质量。另外,当每个虚拟对象的表面贴附多个离散面元时,同一个虚拟对象的深度值可通过全视角深度信息中的多个离散面元的深度值进行共同表征,这样可进一步提升虚拟对象的深度值的准确性,从而进一步提升全视角深度信息的质量。
在具体实现中,上述所提及的方法可由一个计算机设备执行,该计算机设备可以是终端或服务器。或者,上述所提及的方法可由终端和服务器共同执行。例如,可由终端负责在虚拟场景中的每个虚拟对象的表面,分别生成至少一个离散面元,然后将离散面元的基本构成要素(如世界空间坐标、法向量、大小信息等)发送给服务器,使得服务器根据基本构成要素执行获取各个离散面元在虚拟场景中的深度值的步骤,以及构建全视角深度信息的步骤,如图1a所示。又如,也可由服务器负责生成多个离散面元以及获取各个离散面元在虚拟场景中的深度值,然后将各个离散面元在虚拟场景中的深度值发送给终端,使得终端负责采用各个离散面元在虚拟场景中的深度值,构建虚拟场景的全视角深度信息,如图1b所示。再如,还可由服务器负责生成多个离散面元,并将离散面元的基本构成要素发送给终端,使得终端基于该基本构成要素获取各个离散面元在虚拟场景中的深度值,并将获取到的深度值返回给服务器,触发服务器采用接收到的各个深度值构建虚拟场景的全视角深度信息,等等。
其中,上述所提及的终端可以包括但不限于:智能手机、电脑(如平板电脑、笔记本电脑、台式计算机等)、智能穿戴设备(如智能手表、智能眼镜等)、智能语音交互设备、智能家电(如智能电视)、车载终端或飞行器等;服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(ContentDelivery Network,内容分发网络)、及大数据和人工智能平台等基础云计算服务的云服务器,等等。另外,终端和服务器可以位于区块链网络外,也可以位于区块链网络内,对此不作限定;所谓的区块链网络是一种由点对点网络(P2P网络)和区块链所构成的网络,而区块链则是指一种分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式,其本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块(或称为区块)。当终端和服务器中的任一设备位于区块链网络内,或者与区块链网络存在通信连接时,该任一设备可将内部数据上传至区块链网络的区块链中进行存储,以防止计算机设备的内部数据被篡改,从而提升内部数据的安全性。
基于上述描述,本申请实施例提出了一种信息构建方法。该信息构建方法可由上述所提及的计算机设备(终端或者服务器)执行,也可由终端和服务器共同执行;为便于阐述,后续均以计算机设备执行该信息构建方法为例进行说明。请参见图2,该信息构建方法可以包括如下步骤S201-S203:
S201,在虚拟场景中生成多个离散面元。
在具体实现中,计算机设备可遍历虚拟场景中的各个虚拟对象。针对当前遍历的虚拟对象,计算机设备可基于该当前遍历的虚拟对象在虚拟场景中所处的位置,在其网格体表面(简称表面)生成并贴附至少一个离散面元,不同离散面元对应不同的贴附位置;所谓的表面贴附离散面元,可理解成是离散面元紧贴在表面,以离散面元为圆形为例,在虚拟对象的表面生成并贴附离散面元的示意图可参见图3a所示。进一步的,在当前遍历的虚拟对象的表面生成并贴附至少一个离散面元后,计算机设备可继续遍历虚拟场景中的其他虚拟对象,直至虚拟场景中的各个虚拟对象均被遍历,结束离散面元的生成操作。
可见,通过步骤S201可使得虚拟场景中的每个虚拟对象的表面贴附有至少一个离散面元。应理解的是,不同虚拟对象的表面所贴附的离散面元的数量可相同或不同,对此不作限定;并且,不同离散面元的属性(如大小、方向)可相同或不同,对此也不作限定。示例性的,在虚拟场景中生成离散面元的示意图可参见图3b所示。由此可见,本申请实施例可通过让离散面元紧贴于虚拟场景中的各虚拟对象的网格体表面的方式,建立起基于离散面元的场景表示系统,进而用这些离散面元来近似表示虚拟场景的几何信息,使得虚拟场景的几何信息的表达更为简单。
由于各个离散面元是贴附在相应虚拟对象的表面的,因此任一虚拟对象在虚拟场景中的深度值,可通过其表面所贴附的各个离散面元在虚拟场景中的深度值进行表征。基于此,计算机设备通过步骤S201在虚拟场景中生成多个离散面元后,可通过执行步骤S202来获取相应离散面元在虚拟场景中的深度值,以便于后续可采用各个离散面元在虚拟场景中的深度值,构建出虚拟场景的全视角深度信息。
S202,获取生成的各个离散面元在虚拟场景中的深度值。
其中,任一离散面元在虚拟场景中的深度值由相应离散面元和摄像机之间的距离值确定。在步骤S202的具体实现中,计算机设备可分别获取各个离散面元和摄像机之间的距离值,然后将各个离散面元和摄像机之间的距离值,分别作为相应离散面元在虚拟场景中的深度值。
进一步的,任一离散面元和摄像机之间的距离值的获取方式可以是:首先,可获取该任一离散面元的世界空间坐标以及摄像机的世界空间坐标。其次,可根据该任一离散面元的世界空间坐标以及摄像机的世界空间坐标,计算相应离散面元和摄像机之间的欧式距离,得到相应离散面元和摄像机之间的距离值。由前述可知,世界空间坐标是指在世界空间坐标系中的坐标,而世界空间坐标系不随视角或者其他因素而发生变化;因此,通过根据世界空间坐标来计算距离值,可避免因视角变换或其他因素而导致距离值存在偏差的问题,即可保证距离值的准确性,进而保证各个离散面元在虚拟场景中的深度值的准确性。
应理解的是,上述只是示例性地阐述了如何获取离散面元和摄像机之间的距离值的一种实施方式,并非穷举。例如,在其他实施例中,计算机设备也可基于虚拟场景中的某个点建立场景坐标系,从而根据离散面元在该场景坐标系中的位置坐标和摄像机在该场景坐标系中的位置坐标,计算相应离散面元和摄像机之间的欧式距离,得到相应离散面元和摄像机之间的距离值,等等。
S203,采用各个离散面元在虚拟场景中的深度值,构建虚拟场景的全视角深度信息。
在一种具体实现中,计算机设备可通过一个二维图像来表示虚拟场景的全视角深度信息。在此具体实现中,步骤S203的实施方式可以是:
首先,可获取贴图模板,该贴图模板是一个二维的图像,且该贴图模板中可包括多个像素点,一个像素点用于存储一个深度值。其次,可将各个离散面元从虚拟场景投影至贴图模板,得到相应离散面元在贴图模板中所对应的像素点。其中,任一离散面元可以是以八面体映射的方式映射至贴图模板的;所谓的八面体映射是指一种球面参数化映射方式,其原理是将球面参数映射到八面体上,再进一步映射到二维图像上的参数映射方式,如图3c所示。在得到每个离散面元在贴图模板中所对应的像素点后,计算机设备可将各个离散面元在虚拟场景中的深度值,存储至贴图模板中的相应像素点中,得到虚拟场景的全视角深度信息。
需要说明的是,全视角深度信息可被广泛应用在光线追踪、图像渲染等多种后处理操作中。当全视角深度信息被应用在光线追踪这一后处理操作时,通过二维图像表示全视角深度信息的方式,可使得后续整个光线追踪流程在一张二维图像上即可完成,这样可极大提升光线追踪的效率。
另一种具体实现中,计算机设备也可通过一个表格来表示虚拟场景的全视角深度信息。在此具体实现中,步骤S203的实施方式可以是:
计算机设备可构建一个空白表格,并获取每个离散面元的面元标识,以及各个虚拟对象的对象标识;然后根据虚拟对象和离散面元之间的对应关系,将各个虚拟对象的对象标识,各个离散面元的面元标识,以及各个离散面元在虚拟场景中的深度值,关联存储至空白表格中,得到虚拟场景的全视角深度信息。
例如,设虚拟场景包括两个虚拟对象,其对象标识分别是对象a和对象b;且这两个虚拟对象中的每个虚拟对象的表面均贴附了2个离散面元,面元标识依次是面元1、面元2、面元3和面元4,且各离散面元在虚拟场景中的深度值依次为:0.2,0.5,0.3以及0.7,那么构建得到的全视角深度信息可参见下述表1所示:
表1
Figure SMS_1
本申请实施例可在虚拟场景中生成多个离散面元,并获取各个离散面元和摄像机之间的距离值,作为相应离散面元在虚拟场景中的深度值,从而采用各个离散面元在虚拟场景中的深度值,构建虚拟场景的全视角深度信息。可见,本申请实施例所提出的全视角深度信息的构建流程较为简单,这样可节省构建全视角深度信息所需的时间成本和处理资源(如带宽),提升全视角深度信息的构建效率。并且,由于各个离散面元是贴附在相应虚拟对象的表面的,因此各个离散面元在虚拟场景中的深度值可较为准确地表征相应虚拟对象的深度值,那么通过采用各个离散面元的深度值构建全视角深度信息,可使得构建出的全视角深度信息具有较高的准确性,提升全视角深度信息的质量。另外,当每个虚拟对象的表面贴附多个离散面元时,同一个虚拟对象的深度值可通过全视角深度信息中的多个离散面元的深度值进行共同表征,这样可进一步提升虚拟对象的深度值的准确性,从而进一步提升全视角深度信息的质量。
基于上述图2所示的方法实施例,本申请实施例进一步提出了一种更为具体的信息构建方法;在本申请实施例中,主要以计算机设备执行该信息构建方法为例进行说明。请参见图4所示,该信息构建方法可包括以下步骤S401-S404:
S401,在虚拟场景中生成多个离散面元,并获取生成的各个离散面元在虚拟场景中的深度值。
S402,获取贴图模板,该贴图模板中包括多个像素点,一个像素点用于存储一个深度值。
S403,将各个离散面元从虚拟场景投影至贴图模板,得到相应离散面元在贴图模板中所对应的像素点。
在第一种具体实现中,计算机设备可以仅考虑各个离散面元的中心点,来对各个离散面元执行投影操作,以得到相应离散面元在贴图模板中所对应的像素点。具体的,针对第i个离散面元(i∈[1,I],I为离散面元的总数),计算机设备可根据第i个离散面元的中心点和摄像机之间的方向向量(即摄像机指向中心点的向量),将相应中心点从虚拟场景投影至贴图模板,得到第一投影点;然后,计算机设备可将贴图模板中位于第一投影点处的像素点,作为第i个离散面元对应的像素点。示例性的,参见图5a所示:采用圆圈表示贴图模板中的像素点,且设第一投影点为五角星图形所表示的点,由于贴图模板中的像素点25位于第一投影点处,因此可将贴图模板中的像素点25作为第i个离散面元对应的像素点。
在第二种具体实现中,当离散面元的形状为圆形时,计算机设备也可考虑各个离散面元的半径,来对各个离散面元执行投影操作,以得到相应离散面元在贴图模板中所对应的像素点。具体的,针对第i个离散面元,计算机设备可根据第i个离散面元的中心点和摄像机之间的方向向量,将相应中心点从虚拟场景投影至贴图模板,得到第一投影点。以及,根据第i个离散面元的一个边缘点和摄像机之间的方向向量(即摄像机指向边缘点的向量),将相应边缘点从虚拟场景投影至贴图模板,得到第二投影点;所谓的边缘点是指:基于离散面元的半径,从离散面元的边上选取出的点。然后,以第一投影点为圆心,且以第一投影点和第二投影点之间的距离为半径,在贴图模板上绘制一个圆,得到圆形区域;并将贴图模板中位于圆形区域内的各个像素点,均作为第i个离散面元对应的像素点,此处所提及的位于圆形区域内的像素点,可以包括位于圆形区域的边缘上的像素点。示例性的,参见图5b所示:采用圆圈表示贴图模板中的像素点,且设第一投影点为五角星图形所表示的点,第二投影点为三角形图形所表示的点,基于第一投影点和第二投影点所绘制出的圆形区域为虚线圆圈区域,那么贴图模板中位于虚线圆圈区域内的像素点05、像素点14-像素点16、像素点23-像素点27、像素点34-36以及像素点45,均可作为第i个离散面元对应的像素点。
需要说明的是,此具体实现中所提及的边缘点可以是预先指定的,也可以是由计算机设备在执行步骤S403的过程中实时确定的;若边缘点是由计算机设备实时确定的,则计算机设备在通过八面体投影操作将相应边缘点从虚拟场景投影至贴图模板,得到第二投影点之前,还需先获取第i个离散面元的面元信息,该面元信息包括:离散面元的半径、中心点的世界空间坐标以及法向量。然后根据获取到的面元信息,在虚拟场景中确定第i个离散面元的边;并在确定出的边上随机选取一个点,作为第i个离散面元的边缘点。通过实时确定边缘点的方式,可无需消耗处理资源和内存空间来预先存储边缘点的相关信息,可有效节省处理资源和内存空间,提升计算机设备的运行性能。
在第三种具体实现中,计算机设备也可仅考虑各个离散面元的边缘点,来对各个离散面元执行投影操作,以得到相应离散面元在贴图模板中所对应的像素点。具体的,针对第i个离散面元,计算机设备可先在第i个离散面元的边上选取K个边缘点,K为大于2的整数;并根据各个边缘点和摄像机之间的方向向量,将相应边缘点从虚拟场景投影至贴图模板,得到K个第二投影点。然后,可在贴图模板上依次连接K个第二投影点,得到一个封闭区域;并将贴图模板中位于封闭区域内的各个像素点,均作为第i个离散面元对应的像素点,此处所提及的位于封闭区域内的像素点,可以包括位于封闭区域的边缘上的像素点。示例性的,参见图5c所示:采用圆圈表示贴图模板中的像素点,且设4个第二投影点均为三角形图形所表示的点,通过依次连接4个第二投影点所绘制出的封闭区域为虚线区域,那么贴图模板中位于虚线区域内的像素点14、像素点23-像素点25以及像素点34,均可作为第i个离散面元对应的像素点。
需要说明的是,任意两个相邻的第二投影点可以是通过直线连接的,也可以是通过曲线连接的,对此不作限定;因此,连接K个第二投影点所得到的封闭区域的形状与第i个离散面元的形状可能相同,也可能不同。另外,此具体实现中所提及的K个边缘点可以是预先指定的,也可以是由计算机设备在执行步骤S403的过程中实时确定的。进一步的,计算机设备实时确定K个边缘点的方式可包括以下任一种:①在第i个离散面元的边上随机选取K个点作为边缘点。②在第i个离散面元的边上,等间隔地选取K个点作为边缘点。③按照与第i个离散面元的形状所适配的边缘点选取策略,在第i个离散面元的边上选取K个边缘点;不同形状所对应的边缘点选取策略可预先设置,如圆形对应的边缘点选取策略用于指示在圆边上等间隔选取K个点作为边缘点,多边形(如正方形、六边形)对应的边缘点选取策略用于指示选取边上的顶点作为边缘点,通过考虑离散面元的形状选取K个边缘点,可使得最终得到的封闭区域的形状与第i个离散面元的形状类似,从而提升像素点的准确性。
对于上述所提及的步骤S403的三种具体实现,需要说明的是:
(1)在实际应用中,计算机设备可随意选取上述三种具体实现方式中的其中一种具体实现方式,将第i个离散面元投影至贴图模板。或者,计算机设备也可通过考虑第i个离散面元的法向量,来从上述三种具体实现方式中选取一种具体实现方式,将第i个离散面元投影至贴图模板。例如,当第i个离散面元的形状为圆形时,计算机设备可根据第i个离散面元的法向量确定第i个离散面元和摄像机的像面(即镜头所在的平面)之间的位置关系,从而根据第i个离散面元和摄像机的像面之间的位置关系来选取具体实现方式。其中,第i个离散面元和摄像机的像面之间的位置关系可包括垂直关系、平行关系或斜交关系。
具体的,计算机设备可通过判断第i个离散面元的法向量和摄像机的像面之间的位置关系,来确定第i个离散面元和摄像机的像面之间的位置关系。由于第i个离散面元的法向量是垂直于第i个离散面元的,因此如果第i个离散面元的法向量垂直于摄像机的像面,那么可确定第i个离散面元和摄像机的像面之间的位置关系为平行关系;如果第i个离散面元的法向量平行于摄像机的像面,那么可确定第i个离散面元和摄像机的像面之间的位置关系为垂直关系;如果第i个离散面元的法向量斜交于摄像机的像面,那么可确定第i个离散面元和摄像机的像面之间的位置关系为斜交关系。
若第i个离散面元和摄像机的像面相互垂直,则第i个离散面元在摄像机中的成像为一条线段(如图5d中的上侧图所示),线段的中点为第i个离散面元的中心点,此时的摄像机可以准确地看见第i个离散面元的中心点,那么此情况下,可以选择上述第一种具体实现方式以将第i个离散面元的中心点投影至贴图模板。也就是说,若根据第i个离散面元的法向量确定第i个离散面元和摄像机的像面相互垂直,则仅有第i个离散面元的中心点被投影至贴图模板。
若第i个离散面元和摄像机的像面相互平行,则第i个离散面元在摄像机中的成像为一个圆(如图5d中的下侧图所示),此时的摄像机可以看见第i个离散面元的全部内容,那么此情况下,第i个离散面元在贴图模板中的投影形状可能是一个圆,所以可以选择上述第二种具体实现以将第i个离散面元的中心点和一个边缘点投影至贴图模板,以便于可以通过两个投影点绘制圆的方式确定相应的像素点。也就是说,若根据第i个离散面元的法向量确定所述第i个离散面元和摄像机的像面相互平行,则第i个离散面元的中心点和一个边缘点被投影至贴图模板。应理解的是,当第i个离散面元和摄像机的像面相互平行时,可能因为投影所存在的误差,使得第i个离散面元在贴图模板中的投影形状不是一个圆,所以为了提升像素点的准确性,当第i个离散面元和摄像机的像面相互平行时,也可选取上述第三种具体实现来确定第i个离散面元对应的像素点。
若第i个离散面元和摄像机的像面相互斜交,则第i个离散面元在摄像机中的成像为一个椭圆(图5d未示出),此时的摄像机可以看见第i个离散面元的部分内容,那么此情况下,可以选择上述第三种具体实现以将第i个离散面元的K个边缘点投影至贴图模板,以便于可以通过K个第二投影点绘制封闭区域的方式确定相应的像素点。也就是说,若根据第i个离散面元的法向量确定第i个离散面元和摄像机的像面相互斜交,则仅有第i个离散面元的多个边缘点被投影至贴图模板。
(2)在上述三种具体实现中,计算机设备在根据任一点和摄像机之间的方向向量,将相应点投影至贴图模板以得到投影点时,具体可以是根据任一点和摄像机之间的方向向量,通过八面体映射操作将相应点投影至贴图模板以得到投影点。进一步的,计算机设备根据任一点和摄像机之间的方向向量,通过八面体映射操作将相应点投影至贴图模板以得到投影点的实施方式可以是:首先,可对任一点和摄像机之间的方向向量中的各向量元素进行归一化处理,以使得归一化后的方向向量的模为1,这样可使得归一化后的方向向量用于表示任一点在以摄像机为中心所构建的球面上的位置;然后,可采用目标伪代码将归一化后的方向向量转换成二维坐标,转换得到的二维坐标便为该任一点在贴图模板上的投影点的坐标。其中,目标伪代码具体如下:
//InVector3为三维的方向向量输入,该函数返回值为转换后的二维坐标OutOct2
float2 float3_to_oct(in float3 InVector3)
{
//OutOct2为最终二维坐标输出,abs函数代指求绝对值操作
float2 OutOct2=InVector3.xy
Figure SMS_2
(1.0 / (abs(InVector3.x) + abs(InVector3.y) + abs(InVector3.z)));
// factor为用于修正OutOct2正负值的系数
float2 factor;
if (InVector3.x>0&&InVector3.y>0)
{
factor = float2(1, 1);
}
else if (InVector3.x>0&&InVector3.y<= 0)
{
factor = float2(1, -1);
}
else if (InVector3.x<= 0&&InVector3.y>0)
{
factor = float2(-1, 1);
}
else
{
factor = float2(-1, -1);
}//InVector3的x分量是否大于0,若是,则x分量取值为1,否则取值为-1;InVector3的y分量是否大于0,若是,则y分量取值为1,否则取值为-1
if (InVector3.z<= 0)
{
OutOct2 = (1 – abs(OutOct2.yx))
Figure SMS_3
factor;/>
}//如果InVector3的z分量小于等于0,则进行正负修正
return OutOct2;
}
S404,将各个离散面元在虚拟场景中的深度值,存储至贴图模板中的相应像素点中,得到虚拟场景的全视角深度信息。
在步骤S404的具体实施过程中,计算机设备可先将各个离散面元在虚拟场景中的深度值,分别存储至贴图模板中的相应像素点中,得到深度信息贴图;其中,深度信息贴图中未存储任一离散面元的深度值的像素点为无效像素点,即无效像素点未存储任何深度值,其可理解成是一个空的像素点。然后,可根据深度信息贴图,确定虚拟场景的全视角深度信息;具体的:
在一种具体实现中,由于贴图模板中的像素点均为离散点,若各个离散面元在贴图模板中所对应的像素点是通过步骤S403中的第一种具体实现方式(即仅投影各个离散面元的中心点)确定的,则各个离散面元在贴图模板中所对应的像素点的数量均为1个,那么在将各个离散面元在虚拟场景中的深度值存储至贴图模板中的相应像素点后,所得到的深度信息贴图中,会存在较多空的像素点(即未存储任何深度值的像素点),这些空的像素点会形成一个或多个空洞,如图5e所示。此情况下,若直接将深度信息贴图作为虚拟场景的全视角深度信息,则会使得全视角深度信息的质量较差(如包含的深度值信息较少,视觉效果较差等);基于此,计算机设备为提升全视角深度信息的质量,可根据信息重建策略对深度信息贴图中的无效像素点进行信息重建,得到重建后的深度信息贴图,并将重建后的深度信息贴图作为虚拟场景的全视角深度信息。参见图5f所示,通过对深度信息贴图中的无效像素点进行信息重建,可有效减少最终得到的全视角深度信息中的空洞的数量,提升全视角深度信息的质量。
另一种具体实现中,若各个离散面元在贴图模板中所对应的像素点是通过步骤S403中的第二种具体实现方式(即投影各个离散面元的中心点和一个边缘点)确定的,或者,是通过步骤S403中的第三种具体实现方式(即投影各个离散面元的多个边缘点)确定的,则各个离散面元在贴图模板中所对应的像素点的数量可为多个,那么在将各个离散面元在虚拟场景中的深度值存储至贴图模板中的相应像素点后,所得到的深度信息贴图中,基本不会存在空洞或者存在较少的空洞,如图5g所示。此情况下,计算机设备可直接将深度信息贴图作为虚拟场景的全视角深度信息;当然应理解的是,此情况下,为了进一步提升全视角深度信息的质量,计算机设备也可根据信息重建策略对深度信息贴图中的无效像素点进行信息重建,并将重建后的深度信息贴图作为虚拟场景的全视角深度信息,对此不作限定。
其中,上述提及的信息重建策略可以是Pull-Push策略(Pull是指:由高精度Mip(信息贴图)依据一定规则逐层构建低精度Mip;Push是指:利用Pull流程中构建的低精度Mip依据一定规则逐层填充高精度Mip中的无效像素点(即未存储深度值的像素点))。基于此,计算机设备根据信息重建策略对深度信息贴图中的无效像素点进行信息重建,得到重建后的深度信息贴图的具体实施方式可以包括如下步骤s11-s12:
s11,基于深度信息贴图逐级生成低精度的信息贴图,得到目标信息贴图。
其中,在逐级生成低精度的信息贴图时,第k+1级的信息贴图中的任一像素点存储的深度值,根据第k级的信息贴图中的多个像素点存储的深度值确定;通过步骤s11所得到的目标信息贴图仅包括一个像素点,且包括的像素点存储有深度值。在本申请实施例中,k∈[1,K-1],K为目标信息贴图对应的精度等级,第0级的信息贴图为深度信息贴图;并且,任一信息贴图的精度与相应信息贴图包含的像素点的数量成正相关,也就是说,在执行步骤s11的过程中,第0级的信息贴图(即深度信息贴图)的精度是最高的。
应理解的是,基于深度信息贴图逐级生成低精度的信息贴图是指:按照信息贴图的精度从高到低的生成原则,先基于深度信息贴图(即第0级的信息贴图)生成一个低精度的信息贴图(即第1级的信息贴图),再基于第1级的信息贴图生成更低精度的信息贴图(即第2级的信息贴图),再基于第2级的信息贴图生成更低精度的信息贴图(即第3级的信息贴图),以此类推,直至生成目标信息贴图(即仅包括一个像素点,且该像素点存储有深度值的信息贴图)。也就是说,在步骤s11的具体实现中,k的取值是逐级增大的,即k先取值为1,再取值为2,以此类推,直至k取值为K-1。
在步骤s11的具体实施过程中,计算机设备可对第k级的信息贴图中的像素点进行分组,具体可根据预设数量(如4个)个像素点为一组的方式,对第k级的信息贴图中的像素点进行分组。在得到分组结果后,可根据分组结果确定用于生成第k+1级的信息贴图的图像模板;该图像模板中的各像素点均未存储深度值,且该图像模板中的一个像素点与分组结果中的一个像素组对应,不同像素点对应不同像素组。然后,计算机设备可遍历图像模板中的各个像素点,将当前遍历的像素点作为当前像素点;从分组结果中获取与当前像素点对应的像素组,并在获取到的像素组中筛选有效像素点,所谓的有效像素点是指存储有深度值的像素点。若筛选出至少一个有效像素点,则对筛选出的各个有效像素点存储的深度值进行均值运算(或加权平均),并将均值运算(或加权平均)所得到的值作为深度值,存储至当前像素点中;若未筛选出有效像素点,则确定当前像素点为空,即不对当前像素点执行填充深度值的操作。继续遍历,直至图像模板中的各个像素点均被遍历,得到第k+1级的信息贴图。或者,计算机设备在获取到与当前像素点对应的像素组后,也可不执行有效像素点的筛选操作,直接对获取到的像素组中的各个像素点存储的深度值进行均值运算(或加权平均),并将均值运算(或加权平均)所得到的值作为深度值,存储至当前像素点中。
示例性的,参见图5h中的左侧图所示:设深度信息贴图(即第0级的信息贴图)包括16个像素点,且计算机设备是以4个像素点为一组的方式进行分组的。那么计算机设备可先对深度信息贴图中的像素点进行分组,得到4个像素组,一个像素组中包括4个像素点。然后可确定用于生成第1级的信息贴图的图像模板,该图像模板包括4个像素点,一个像素点对应一个像素组。针对该图像模板中的第1个像素点,可按照图5h中的左侧图所示的像素点和像素组之间的对应关系,从高精度Mip的4个像素组中,选定与第1个像素点对应的像素组(即选定对应的4个像素点)。然后对选定的像素组中的4个像素点进行筛选,若像素点未存储深度值,则该像素点被判定为无效;由于选定的像素组中的4个像素点均是有效的,因此可直接对选定的4个像素点存储的深度值进行均值运算,此情况的各个像素点的权重均为1/4,然后将运算得到的均值指定为深度值存储至第1个像素点中。针对图像模板中的其他3个像素点,均执行与第1个像素点相同的操作,便可得到第1级的信息贴图。
进一步的,计算机设备可继续对第1级的信息贴图中的像素点进行分组,得到1个像素组,并确定用于生成第2级的信息贴图的图像模板,该图像模板包括1个像素点。针对这1个像素点,可对分组所得到的这1个像素组中的4个像素点进行筛选;由于这1个像素组中的4个像素点均是有效的,因此可直接对这1个像素组中的4个像素点存储的深度值进行均值运算,然后将运算得到的均值指定为深度值存储至图像模板的像素点中,得到第2级的信息贴图,如图5h中的右侧图所示。其中,图5h中的右侧图中的虚线圆点表示第1级的信息贴图中的像素点,实线圆点表示第2级的信息贴图中的像素点,数字1/4表示第1级的信息贴图中的各个像素点的权重。由于第2级的信息贴图中仅包括一个像素点,且该像素点存储有深度值,因此可结束低精度Mip的生成流程,将第2级的信息贴图作为目标信息贴图。
s12,基于目标信息贴图逐级填充高精度的信息贴图中的无效像素点,直至深度信息贴图中的各个无效像素点均被填充,得到重建后的深度信息贴图。
其中,在逐级填充高精度的信息贴图中的无效像素点时,第k级的信息贴图中的无效像素点存储的深度值,根据第k+1级中的至少一个像素点存储的深度值确定。应理解的是,当k取值为K-1时,第k+1级的信息贴图为目标信息贴图。应理解的是,基于目标信息贴图逐级填充高精度的信息贴图中的无效像素点是指:按照信息贴图的精度从低到高的填充原则,先基于目标信息贴图(即第K级的信息贴图)填充相邻的高精度的信息贴图(即第K-1级的信息贴图)中的无效像素点,再基于第K-1级的信息贴图填充相邻的高精度的信息贴图(即第K-2级的信息贴图)中的无效像素点,再基于第K-2级的信息贴图填充相邻的高精度的信息贴图(即第K-3级的信息贴图)中的无效像素点,以此类推,直至填充深度信息贴图(即第0级的信息贴图)中的无效像素点。也就是说,在步骤s12的具体实现中,k的取值是逐级减小的,即k先取值为K-1,再取值为K-2,以此类推,直至k取值为0。
在步骤s12的具体实施过程中,计算机设备可遍历第k级的信息贴图中的无效像素点;并将当前遍历的无效像素点映射至第k+1级的信息贴图中,得到映射点。在得到映射点后,计算机设备可基于映射点从第k+1级的信息贴图中选取至少一个像素点,作为当前遍历的无效像素点的参考像素点;本申请实施例对像素点的选取方式不作限定,例如可在映射点的左右两侧各选取至少一个像素点,也可以仅在映射点的左侧或右侧选取多个像素点等。然后,可根据各个参考像素点所存储的深度值,计算当前遍历的无效像素点的深度值,并将计算出的深度值填充至当前遍历的无效像素点中。接着可继续遍历,直至第k级的信息贴图中的各个无效像素点均被遍历为止。应理解的是,若第k级的信息贴图中不存在无效像素点,则可对k的取值进行减一操作以更新k,从而再次执行遍历第k级的信息贴图中的无效像素点的操作。例如,当k取值为3时,第3级的信息贴图中不存在无效像素点,则可通过减一操作将k的取值更新为2,从而遍历第2级的信息贴图中的无效像素点;进一步的,若第2级的信息贴图中仍不存在无效像素点,则可再次通过减一操作将k的取值更新为1,从而遍历第1级的信息贴图中的无效像素点,以此类推。
其中,将当前遍历的无效像素点映射至第k+1级的信息贴图,得到映射点的具体实施方式可以是:获取当前遍历的无效像素点在第k级的信息贴图中的横坐标和纵坐标,将横坐标和第k级的信息贴图的图像长度之间的比值,作为横坐标的缩放参数,将纵坐标和第k级的信息贴图的图像宽度之间的比值,作为纵坐标的缩放参数;采用横坐标的缩放参数乘以第k+1级的信息贴图的图像长度,便可得到映射点的横坐标,采用纵坐标的缩放参数乘以第k+1级的信息贴图的图像宽度,便可得到映射点的纵坐标。例如,设当前遍历的无效像素点在第k级的信息贴图中的横坐标为10,纵坐标为6,而第k级的信息贴图的图像长度为100,图像宽度为60,则可计算得到横坐标的缩放参数为10/100=0.1,纵坐标的缩放参数为6/60=0.1;那么若第k+1级的信息贴图的图像长度为60,图像宽度为40,则可计算出映射点的横坐标为0.1×60=6,映射点的纵坐标为0.1×40=4,从而可确定第k+1级的信息贴图中坐标为(6,4)的点为当前遍历的无效像素点在第k+1级的信息贴图中的映射点。
其中,根据各个参考像素点所存储的深度值,计算当前遍历的无效像素点的深度值的具体实施方式可以是:首先,可按照距离和权重成反比的原则,根据各个参考像素点和映射点之间的距离,为各个参考像素点分配权重,各个参考像素点的权重之和应等于1。以及,分别对各个参考像素点进行有效性校验;具体的,计算机设备可通过判断各个参考像素点是否存储有深度值,来判断各个参考像素点是否通过有效性校验,若任一参考像素点存储有深度值,则任一参考像素点通过有效性校验。然后,可根据通过有效性校验的参考像素点的权重,对相应参考像素点存储的深度值进行加权平均,得到当前遍历的无效像素点的深度值。或者,具体实施方式可以是:直接对各个参考像素点所存储的深度值进行均值运算,得到当前遍历的无效像素点的深度值。或者,先分别对各个参考像素点进行有效性校验;再按照距离和权重成反比的原则,根据通过有效性校验的各个参考像素点和映射点之间的距离,为通过有效性校验的各个参考像素点分配权重,从而对通过有效性校验的参考像素点的权重以及相应的深度值进行加权平均,得到当前遍历的无效像素点的深度值。
示例性的,参见图5i中的左侧图所示:目标信息贴图为前述图5h的左侧图所示的第2级的信息贴图。首先,可检测第1级的信息贴图中是否存在无效像素点,由于第1级的信息贴图中不存在无效像素点,因此计算机设备可继续检测第0级的信息贴图(即深度信息贴图)中是否存在无效像素点。由前述可知,第0级的信息贴图包含了大量的无效像素点,因此计算机设备可遍历各个无效像素点,并在第1级的信息贴图中选取4个像素点作为当前遍历的无效像素点的参考像素点,这4个参考像素点依距离当前遍历的无效像素点的远近,其权重比可为1:3:3:9,即这4个参考像素点的权重可依次为1/16,3/16,3/16和9/16。然后,可对这4个参考像素点进行筛选;由于这4个参考像素点均是有效的,因此可根据这4个参考像素点的权重,对这4个参考像素点存储的深度值进行加权平均,并将加权平均所得到的均值指定为深度值,存储至当前遍历的无效像素点,如图5i中的右侧图所示。其中,图5i中的右侧图中的虚线圆点表示第0级的信息贴图中的像素点,实线圆点表示第1级的信息贴图中的像素点。接着,可继续遍历第0级的信息贴图(即深度信息贴图)中其他无效像素点,直至各个无效像素点均被遍历,得到重建后的深度信息贴图。
需要说明的是,上述只是示例性的阐述了信息重建策略的一种实现方式,并非穷举。例如,在其他实施例中,离散面元的形状为圆形时,信息重建策略还可以是基于离散面元的半径进行信息重建的策略。基于此,计算机设备根据信息重建策略对深度信息贴图中的无效像素点进行信息重建,得到重建后的深度信息贴图的具体实施方式可以是:遍历各个离散面元,按照预设的半径缩放比例对当前遍历的离散面元的半径进行缩放处理,得到缩放后的半径;基于当前遍历的离散面元在深度信息贴图中的投影点,以缩放后的半径绘制一个圆形区域,将深度信息贴图中位于绘制出的圆形区域内的各个无效像素点的深度值填充为当前离散面元在虚拟场景中的深度值。继续遍历,直至各个离散面元均被遍历为止,得到重建后的深度信息贴图。
本申请实施例可在虚拟场景中生成多个离散面元,并获取各个离散面元和摄像机之间的距离值,作为相应离散面元在虚拟场景中的深度值,从而采用各个离散面元在虚拟场景中的深度值,构建虚拟场景的全视角深度信息。可见,本申请实施例所提出的全视角深度信息的构建流程较为简单,这样可节省构建全视角深度信息所需的时间成本和处理资源(如带宽),提升全视角深度信息的构建效率。并且,由于各个离散面元是贴附在相应虚拟对象的表面的,因此各个离散面元在虚拟场景中的深度值可较为准确地表征相应虚拟对象的深度值,那么通过采用各个离散面元的深度值构建全视角深度信息,可使得构建出的全视角深度信息具有较高的准确性,提升全视角深度信息的质量。另外,当每个虚拟对象的表面贴附多个离散面元时,同一个虚拟对象的深度值可通过全视角深度信息中的多个离散面元的深度值进行共同表征,这样可进一步提升虚拟对象的深度值的准确性,从而进一步提升全视角深度信息的质量。
在实际应用中,上述图2和图4所示的信息构建方法可被运用在各种虚拟场景中,如游戏场景,影视剧中的场景,数字仿真的场景(即对真实世界中的场景进行数字仿真所得到的场景)等。示例性的,以虚拟场景为游戏场景为例,该信息构建方法的应用过程可包括如下两部分:
第一部分,基于离散面元的场景几何信息表示。此部分主要是通过让离散面元紧贴于游戏场景中的各个虚拟对象(如虚拟角色、虚拟道具、虚拟景物)的网格体表面的方式,在游戏场景中生成多个离散面元,从而建立起基于离散面元的场景表示系统,进而用这些离散面元来近似表示游戏场景的几何信息。
第二部分,基于离散面元的场景深度信息构建。在此部分中,可先根据各个离散面元的中心点的世界空间坐标和摄像机的世界空间坐标,分别计算各个离散面元的中心点和摄像机之间的方向向量。其次,可根据计算出的各个方向向量,通过八面体映射操作将各个离散面元的中心点投影至二维的贴图模板中,得到多个第一投影点,一个第一投影点用于表示一个离散面元的中心点在贴图模板中的投影位置。然后,可将贴图模板中位于各个第一投影点处的像素点,作为相应离散面元在贴图模板中所对应的像素点,并分别将各个离散面元在游戏场景中的深度值存储至相应像素点中,得到深度信息贴图。进一步的,可利用前述提及的Pull-Push策略对深度信息贴图中的无效像素点进行信息重建,并将重建后的深度信息贴图作为游戏场景的全视角深度信息。可选的,在得到游戏场景的全视角深度信息贴图后,还可基于该全视角深度信息进行光线追踪,进而基于光线追踪结果来渲染相应的游戏画面。
本申请实施例通过先构建离散面元再Pull-Push还原得到游戏场景的全场景深度信息的方式,一方面可以提升全视角深度信息的质量;当该全视角深度信息被用于光线追踪时,该全视角深度信息的质量可以满足后续光线追踪流程的使用,这样可使得后续在基于光线追踪结果渲染游戏画面时,可使得游戏画面所呈现的光照效果更加真实。另一方面,相较于传统场景中每个虚拟对象需进行多次深度测试的绘制方式,可以大幅降低绘制提交所需的带宽以及时间,从而在一定程度上提升全视角深度信息的构建效率,并且使得游戏在运行效率和带宽消耗等质量指标上也可以有大幅度的提升。
类似的,当虚拟场景为对真实世界中的热门景点进行数字仿真所得到的场景(后续简称数字仿真场景)时,该信息构建方法的应用过程也可包括如下两部分:
第一部分,基于离散面元的场景几何信息表示。此部分主要是通过让离散面元紧贴于数字仿真场景中的各个虚拟对象(如对热门景点中的建筑物进行数字仿真所得到的虚拟建筑物、对热门景点中的植物进行数字仿真所得到的虚拟植物等)的网格体表面的方式,在数字仿真场景中生成多个离散面元,从而建立起基于离散面元的场景表示系统,进而用这些离散面元来近似表示数字仿真场景的几何信息。
第二部分,基于离散面元的场景深度信息构建。在此部分中,可先根据各个离散面元的中心点和摄像机之间的方向向量,通过八面体映射操作将各个离散面元的中心点投影至二维的贴图模板中,得到多个第一投影点,并将贴图模板中位于各个第一投影点处的像素点,作为相应离散面元在贴图模板中所对应的像素点,从而分别将各个离散面元在数字仿真场景中的深度值存储至相应像素点中,得到深度信息贴图。进一步的,可利用前述提及的Pull-Push策略对深度信息贴图中的无效像素点进行信息重建,并将重建后的深度信息贴图作为数字仿真场景的全视角深度信息。可选的,在得到数字仿真场景的全视角深度信息贴图后,还可基于该全视角深度信息进行光线追踪,进而基于光线追踪结果来渲染相应的数字仿真画面。
本申请实施例通过先构建离散面元再Pull-Push还原得到数字仿真场景的全场景深度信息的方式,一方面可以提升全视角深度信息的质量;当该全视角深度信息被用于光线追踪时,该全视角深度信息的质量可以满足后续光线追踪流程的使用,这样可使得后续在基于光线追踪结果渲染数字仿真画面时,渲染出的数字仿真画面能够呈现更加真实的光照效果。另一方面,相较于传统场景中每个虚拟对象需进行多次深度测试的绘制方式,可以大幅降低绘制提交所需的带宽以及时间,从而在一定程度上提升全视角深度信息的构建效率,进而避免在数字仿真画面的渲染显示过程中,出现卡顿的现象,提升数字仿真画面的显示流畅度。
基于上述信息构建方法实施例的描述,本申请实施例还公开了一种信息构建装置;所述信息构建装置可以是运行于计算机设备中的一个计算机程序(包括程序代码),且该信息构建装置可以执行图2或图4所示的方法流程中的各个步骤。请参见图6,所述信息构建装置可以运行如下单元:
处理单元601,用于在虚拟场景中生成多个离散面元,所述离散面元是具有方向和大小的平面图形;所述虚拟场景中包括摄像机和至少一个虚拟对象,每个虚拟对象的表面贴附有至少一个离散面元;
所述处理单元601,还用于获取生成的各个离散面元在所述虚拟场景中的深度值,任一离散面元在所述虚拟场景中的深度值由相应离散面元和所述摄像机之间的距离值确定;
构建单元602,用于采用所述各个离散面元在所述虚拟场景中的深度值,构建所述虚拟场景的全视角深度信息。
在一种实施方式中,构建单元602在用于采用所述各个离散面元在所述虚拟场景中的深度值,构建所述虚拟场景的全视角深度信息时,可具体用于:
获取贴图模板,所述贴图模板中包括多个像素点,一个像素点用于存储一个深度值;
将所述各个离散面元从所述虚拟场景投影至所述贴图模板,得到相应离散面元在所述贴图模板中所对应的像素点;
将所述各个离散面元在所述虚拟场景中的深度值,存储至所述贴图模板中的相应像素点中,得到所述虚拟场景的全视角深度信息。
另一种实施方式中,构建单元602在用于将所述各个离散面元从所述虚拟场景投影至所述贴图模板,得到相应离散面元在所述贴图模板中所对应的像素点时,可具体用于:
针对第i个离散面元,根据所述第i个离散面元的中心点和所述摄像机之间的方向向量,将相应中心点从所述虚拟场景投影至所述贴图模板,得到第一投影点;其中,i∈[1,I],I为离散面元的总数;
将所述贴图模板中位于所述第一投影点处的像素点,作为所述第i个离散面元对应的像素点。
另一种实施方式中,构建单元602在用于将所述各个离散面元在所述虚拟场景中的深度值,存储至所述贴图模板中的相应像素点中,得到所述虚拟场景的全视角深度信息时,可具体用于:
将所述各个离散面元在所述虚拟场景中的深度值,分别存储至所述贴图模板中的相应像素点中,得到深度信息贴图,所述深度信息贴图中未存储任一离散面元的深度值的像素点为无效像素点;
根据信息重建策略对所述深度信息贴图中的无效像素点进行信息重建,得到重建后的深度信息贴图,并将所述重建后的深度信息贴图作为所述虚拟场景的全视角深度信息。
另一种实施方式中,构建单元602在用于根据信息重建策略对所述深度信息贴图中的无效像素点进行信息重建,得到重建后的深度信息贴图时,可具体用于:
基于所述深度信息贴图逐级生成低精度的信息贴图,得到目标信息贴图;所述目标信息贴图仅包括一个像素点,且包括的像素点存储有深度值;其中,在逐级生成低精度的信息贴图时,第k+1级的信息贴图中的任一像素点存储的深度值,根据第k级的信息贴图中的多个像素点存储的深度值确定;
基于所述目标信息贴图逐级填充高精度的信息贴图中的无效像素点,直至所述深度信息贴图中的各个无效像素点均被填充,得到重建后的深度信息贴图;其中,在逐级填充高精度的信息贴图中的无效像素点时,第k级的信息贴图中的无效像素点存储的深度值,根据第k+1级的信息贴图中的至少一个像素点存储的深度值确定;
其中,任一信息贴图的精度与相应信息贴图包含的像素点的数量成正相关;k∈[1,K-1],K为所述目标信息贴图对应的精度等级,第0级的信息贴图为所述深度信息贴图;当k的取值为K-1时,第k+1级的信息贴图为所述目标信息贴图。
另一种实施方式中,构建单元602在用于基于所述深度信息贴图逐级生成低精度的信息贴图时,可具体用于:
对第k级的信息贴图中的像素点进行分组,并根据分组结果确定用于生成第k+1级的信息贴图的图像模板;所述图像模板中的各像素点均未存储深度值,且所述图像模板中的一个像素点与所述分组结果中的一个像素组对应,不同像素点对应不同像素组;
遍历所述图像模板中的各个像素点,将当前遍历的像素点作为当前像素点;
从所述分组结果中获取与所述当前像素点对应的像素组,并在获取到的像素组中筛选有效像素点,所述有效像素点是指存储有深度值的像素点;
若筛选出至少一个有效像素点,则对筛选出的各个有效像素点存储的深度值进行均值运算,并将均值运算所得到的值作为深度值,存储至所述当前像素点中;若未筛选出有效像素点,则确定所述当前像素点为空;
继续遍历,直至所述图像模板中的各个像素点均被遍历,得到第k+1级的信息贴图。
另一种实施方式中,构建单元602在用于基于所述目标信息贴图逐级填充高精度的信息贴图中的无效像素点时,可具体用于:
遍历第k级的信息贴图中的无效像素点;
将当前遍历的无效像素点映射至第k+1级的信息贴图中,得到映射点;并基于所述映射点从第k+1级的信息贴图中选取至少一个像素点,作为所述当前遍历的无效像素点的参考像素点;
根据各个参考像素点所存储的深度值,计算所述当前遍历的无效像素点的深度值,并将计算出的深度值填充至所述当前遍历的无效像素点中;
继续遍历,直至所述第k级的信息贴图中的各个无效像素点均被遍历为止。
另一种实施方式中,构建单元602在用于根据各个参考像素点所存储的深度值,计算所述当前遍历的无效像素点的深度值时,可具体用于:
按照距离和权重成反比的原则,根据所述各个参考像素点和所述映射点之间的距离,为所述各个参考像素点分配权重;
分别对所述各个参考像素点进行有效性校验;其中,若任一参考像素点存储有深度值,则所述任一参考像素点通过有效性校验;
根据通过有效性校验的参考像素点的权重,对相应参考像素点存储的深度值进行加权平均,得到所述当前遍历的无效像素点的深度值。
另一种实施方式中,任一离散面元的形状为圆形;相应的,构建单元602在用于将所述各个离散面元从所述虚拟场景投影至所述贴图模板,得到相应离散面元在所述贴图模板中所对应的像素点时,可具体用于:
针对第i个离散面元,根据所述第i个离散面元的中心点和所述摄像机之间的方向向量,将相应中心点从所述虚拟场景投影至所述贴图模板,得到第一投影点;其中,i∈[1,I],I为离散面元的总数;
根据所述第i个离散面元的一个边缘点和所述摄像机之间的方向向量,将相应边缘点从所述虚拟场景投影至所述贴图模板,得到第二投影点;边缘点是指:基于离散面元的半径,从离散面元的边上选取出的点;
以所述第一投影点为圆心,且以所述第一投影点和所述第二投影点之间的距离为半径,在所述贴图模板上绘制一个圆,得到圆形区域;
将所述贴图模板中位于所述圆形区域内的各个像素点,均作为所述第i个离散面元对应的像素点。
另一种实施方式中,构建单元602在用于根据所述第i个离散面元的一个边缘点和所述摄像机之间的方向向量,将相应边缘点从所述虚拟场景投影至所述贴图模板,得到第二投影点之前,还可用于:
获取所述第i个离散面元的面元信息,所述面元信息包括:离散面元的半径、中心点的世界空间坐标以及法向量;
根据获取到的面元信息,在所述虚拟场景中确定所述第i个离散面元的边;并在确定出的边上随机选取一个点,作为所述第i个离散面元的边缘点。
另一种实施方式中,构建单元602在用于将所述各个离散面元从所述虚拟场景投影至所述贴图模板,得到相应离散面元在所述贴图模板中所对应的像素点时,可具体用于:
针对第i个离散面元,在所述第i个离散面元的边上选取K个边缘点,K为大于2的整数;其中,i∈[1,I],I为离散面元的总数;
根据各个边缘点和所述摄像机之间的方向向量,将相应边缘点从所述虚拟场景投影至所述贴图模板,得到K个第二投影点;
在所述贴图模板上依次连接所述K个第二投影点,得到一个封闭区域;
将所述贴图模板中位于所述封闭区域内的各个像素点,均作为所述第i个离散面元对应的像素点。
另一种实施方式中,构建单元602在用于将所述各个离散面元在所述虚拟场景中的深度值,存储至所述贴图模板中的相应像素点中,得到所述虚拟场景的全视角深度信息时,可具体用于:
将所述各个离散面元在所述虚拟场景中的深度值,分别存储至所述贴图模板中的相应像素点中,得到深度信息贴图;
将所述深度信息贴图,作为所述虚拟场景的全视角深度信息。
另一种实施方式中,若根据第i个离散面元的法向量确定第i个离散面元和所述摄像机的像面相互垂直,则仅有所述第i个离散面元的中心点被投影至所述贴图模板;
若根据所述第i个离散面元的法向量确定所述第i个离散面元和所述摄像机的像面相互平行,则所述第i个离散面元的中心点和一个边缘点被投影至所述贴图模板;
若根据第i个离散面元的法向量确定所述第i个离散面元和所述摄像机的像面相互斜交,则仅有所述第i个离散面元的多个边缘点被投影至所述贴图模板;
其中,i∈[1,I],I为离散面元的总数。
根据本申请的另一个实施例,图6所示的信息构建装置中的各个单元可以分别或全部合并为一个或若干个另外的单元来构成,或者其中的某个(些)单元还可以再拆分为功能上更小的多个单元来构成,这可以实现同样的操作,而不影响本申请的实施例的技术效果的实现。上述单元是基于逻辑功能划分的,在实际应用中,一个单元的功能也可以由多个单元来实现,或者多个单元的功能由一个单元实现。在本申请的其它实施例中,基于信息构建装置也可以包括其它单元,在实际应用中,这些功能也可以由其它单元协助实现,并且可以由多个单元协作实现。
根据本申请的另一个实施例,可以通过在包括中央处理单元(CPU)、随机存取存储介质(RAM)、只读存储介质(ROM)等处理元件和存储元件的例如计算机的通用计算设备上运行能够执行如图2或图4中所示的相应方法所涉及的各步骤的计算机程序(包括程序代码),来构造如图6中所示的信息构建装置设备,以及来实现本申请实施例的信息构建方法。所述计算机程序可以记载于例如计算机可读记录介质上,并通过计算机可读记录介质装载于上述计算设备中,并在其中运行。
本申请实施例可在虚拟场景中生成多个离散面元,并获取各个离散面元和摄像机之间的距离值,作为相应离散面元在虚拟场景中的深度值,从而采用各个离散面元在虚拟场景中的深度值,构建虚拟场景的全视角深度信息。可见,本申请实施例所提出的全视角深度信息的构建流程较为简单,这样可节省构建全视角深度信息所需的时间成本和处理资源(如带宽),提升全视角深度信息的构建效率。并且,由于各个离散面元是贴附在相应虚拟对象的表面的,因此各个离散面元在虚拟场景中的深度值可较为准确地表征相应虚拟对象的深度值,那么通过采用各个离散面元的深度值构建全视角深度信息,可使得构建出的全视角深度信息具有较高的准确性,提升全视角深度信息的质量。另外,当每个虚拟对象的表面贴附多个离散面元时,同一个虚拟对象的深度值可通过全视角深度信息中的多个离散面元的深度值进行共同表征,这样可进一步提升虚拟对象的深度值的准确性,从而进一步提升全视角深度信息的质量。
基于上述方法实施例以及装置实施例的描述,本申请实施例还提供一种计算机设备。请参见图7,该计算机设备至少包括处理器701、输入接口702、输出接口703以及计算机存储介质704。其中,计算机设备内的处理器701、输入接口702、输出接口703以及计算机存储介质704可通过总线或其他方式连接。计算机存储介质704可以存储在计算机设备的存储器中,所述计算机存储介质704用于存储计算机程序,所述计算机程序包括程序指令,所述处理器701用于执行所述计算机存储介质704存储的程序指令。处理器701(或称CPU(Central Processing Unit,中央处理器))是计算机设备的计算核心以及控制核心,其适于实现一条或多条指令,具体适于加载并执行一条或多条指令从而实现相应方法流程或相应功能。
在一个实施例中,本申请实施例所述的处理器701可以用于对虚拟场景进行一系列的信息构建处理,具体包括:在虚拟场景中生成多个离散面元,所述离散面元是具有方向和大小的平面图形;所述虚拟场景中包括摄像机和至少一个虚拟对象,每个虚拟对象的表面贴附有至少一个离散面元;获取生成的各个离散面元在所述虚拟场景中的深度值,任一离散面元在所述虚拟场景中的深度值由相应离散面元和所述摄像机之间的距离值确定;采用所述各个离散面元在所述虚拟场景中的深度值,构建所述虚拟场景的全视角深度信息,等等。
本申请实施例还提供了一种计算机存储介质(Memory),所述计算机存储介质是计算机设备中的记忆设备,用于存放程序和数据。可以理解的是,此处的计算机存储介质既可以包括计算机设备中的内置存储介质,当然也可以包括计算机设备所支持的扩展存储介质。计算机存储介质提供存储空间,该存储空间存储了计算机设备的操作系统。并且,在该存储空间中还存放了适于被处理器701加载并执行的一条或多条的指令,这些指令可以是一个或一个以上的计算机程序(包括程序代码)。需要说明的是,此处的计算机存储介质可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器;可选的,还可以是至少一个位于远离前述处理器的计算机存储介质。
在一个实施例中,可由处理器加载并执行计算机存储介质中存放的一条或多条指令,以实现上述有关图2或图4所示的方法实施例中的相应步骤;具体实现中,计算机存储介质中的一条或多条指令可由处理器加载并执行如下步骤:
在虚拟场景中生成多个离散面元,所述离散面元是具有方向和大小的平面图形;所述虚拟场景中包括摄像机和至少一个虚拟对象,每个虚拟对象的表面贴附有至少一个离散面元;
获取生成的各个离散面元在所述虚拟场景中的深度值,任一离散面元在所述虚拟场景中的深度值由相应离散面元和所述摄像机之间的距离值确定;
采用所述各个离散面元在所述虚拟场景中的深度值,构建所述虚拟场景的全视角深度信息。
在一种实施方式中,在采用所述各个离散面元在所述虚拟场景中的深度值,构建所述虚拟场景的全视角深度信息时,所述一条或多条指令可由处理器加载并具体执行:
获取贴图模板,所述贴图模板中包括多个像素点,一个像素点用于存储一个深度值;
将所述各个离散面元从所述虚拟场景投影至所述贴图模板,得到相应离散面元在所述贴图模板中所对应的像素点;
将所述各个离散面元在所述虚拟场景中的深度值,存储至所述贴图模板中的相应像素点中,得到所述虚拟场景的全视角深度信息。
另一种实施方式中,在将所述各个离散面元从所述虚拟场景投影至所述贴图模板,得到相应离散面元在所述贴图模板中所对应的像素点时,所述一条或多条指令可由处理器加载并具体执行:
针对第i个离散面元,根据所述第i个离散面元的中心点和所述摄像机之间的方向向量,将相应中心点从所述虚拟场景投影至所述贴图模板,得到第一投影点;其中,i∈[1,I],I为离散面元的总数;
将所述贴图模板中位于所述第一投影点处的像素点,作为所述第i个离散面元对应的像素点。
另一种实施方式中,在将所述各个离散面元在所述虚拟场景中的深度值,存储至所述贴图模板中的相应像素点中,得到所述虚拟场景的全视角深度信息时,所述一条或多条指令可由处理器加载并具体执行:
将所述各个离散面元在所述虚拟场景中的深度值,分别存储至所述贴图模板中的相应像素点中,得到深度信息贴图,所述深度信息贴图中未存储任一离散面元的深度值的像素点为无效像素点;
根据信息重建策略对所述深度信息贴图中的无效像素点进行信息重建,得到重建后的深度信息贴图,并将所述重建后的深度信息贴图作为所述虚拟场景的全视角深度信息。
另一种实施方式中,在根据信息重建策略对所述深度信息贴图中的无效像素点进行信息重建,得到重建后的深度信息贴图时,所述一条或多条指令可由处理器加载并具体执行:
基于所述深度信息贴图逐级生成低精度的信息贴图,得到目标信息贴图;所述目标信息贴图仅包括一个像素点,且包括的像素点存储有深度值;其中,在逐级生成低精度的信息贴图时,第k+1级的信息贴图中的任一像素点存储的深度值,根据第k级的信息贴图中的多个像素点存储的深度值确定;
基于所述目标信息贴图逐级填充高精度的信息贴图中的无效像素点,直至所述深度信息贴图中的各个无效像素点均被填充,得到重建后的深度信息贴图;其中,在逐级填充高精度的信息贴图中的无效像素点时,第k级的信息贴图中的无效像素点存储的深度值,根据第k+1级的信息贴图中的至少一个像素点存储的深度值确定;
其中,任一信息贴图的精度与相应信息贴图包含的像素点的数量成正相关;k∈[1,K-1],K为所述目标信息贴图对应的精度等级,第0级的信息贴图为所述深度信息贴图;当k的取值为K-1时,第k+1级的信息贴图为所述目标信息贴图。
另一种实施方式中,在基于所述深度信息贴图逐级生成低精度的信息贴图时,所述一条或多条指令可由处理器加载并具体执行:
对第k级的信息贴图中的像素点进行分组,并根据分组结果确定用于生成第k+1级的信息贴图的图像模板;所述图像模板中的各像素点均未存储深度值,且所述图像模板中的一个像素点与所述分组结果中的一个像素组对应,不同像素点对应不同像素组;
遍历所述图像模板中的各个像素点,将当前遍历的像素点作为当前像素点;
从所述分组结果中获取与所述当前像素点对应的像素组,并在获取到的像素组中筛选有效像素点,所述有效像素点是指存储有深度值的像素点;
若筛选出至少一个有效像素点,则对筛选出的各个有效像素点存储的深度值进行均值运算,并将均值运算所得到的值作为深度值,存储至所述当前像素点中;若未筛选出有效像素点,则确定所述当前像素点为空;
继续遍历,直至所述图像模板中的各个像素点均被遍历,得到第k+1级的信息贴图。
另一种实施方式中,在基于所述目标信息贴图逐级填充高精度的信息贴图中的无效像素点时,所述一条或多条指令可由处理器加载并具体执行:
遍历第k级的信息贴图中的无效像素点;
将当前遍历的无效像素点映射至第k+1级的信息贴图中,得到映射点;并基于所述映射点从第k+1级的信息贴图中选取至少一个像素点,作为所述当前遍历的无效像素点的参考像素点;
根据各个参考像素点所存储的深度值,计算所述当前遍历的无效像素点的深度值,并将计算出的深度值填充至所述当前遍历的无效像素点中;
继续遍历,直至所述第k级的信息贴图中的各个无效像素点均被遍历为止。
另一种实施方式中,在根据各个参考像素点所存储的深度值,计算所述当前遍历的无效像素点的深度值时,所述一条或多条指令可由处理器加载并具体执行:
按照距离和权重成反比的原则,根据所述各个参考像素点和所述映射点之间的距离,为所述各个参考像素点分配权重;
分别对所述各个参考像素点进行有效性校验;其中,若任一参考像素点存储有深度值,则所述任一参考像素点通过有效性校验;
根据通过有效性校验的参考像素点的权重,对相应参考像素点存储的深度值进行加权平均,得到所述当前遍历的无效像素点的深度值。
另一种实施方式中,任一离散面元的形状为圆形;相应的,在将所述各个离散面元从所述虚拟场景投影至所述贴图模板,得到相应离散面元在所述贴图模板中所对应的像素点时,所述一条或多条指令可由处理器加载并具体执行:
针对第i个离散面元,根据所述第i个离散面元的中心点和所述摄像机之间的方向向量,将相应中心点从所述虚拟场景投影至所述贴图模板,得到第一投影点;其中,i∈[1,I],I为离散面元的总数;
根据所述第i个离散面元的一个边缘点和所述摄像机之间的方向向量,将相应边缘点从所述虚拟场景投影至所述贴图模板,得到第二投影点;边缘点是指:基于离散面元的半径,从离散面元的边上选取出的点;
以所述第一投影点为圆心,且以所述第一投影点和所述第二投影点之间的距离为半径,在所述贴图模板上绘制一个圆,得到圆形区域;
将所述贴图模板中位于所述圆形区域内的各个像素点,均作为所述第i个离散面元对应的像素点。
另一种实施方式中,在根据所述第i个离散面元的一个边缘点和所述摄像机之间的方向向量,将相应边缘点从所述虚拟场景投影至所述贴图模板,得到第二投影点之前,所述一条或多条指令可由处理器加载并具体执行:
获取所述第i个离散面元的面元信息,所述面元信息包括:离散面元的半径、中心点的世界空间坐标以及法向量;
根据获取到的面元信息,在所述虚拟场景中确定所述第i个离散面元的边;并在确定出的边上随机选取一个点,作为所述第i个离散面元的边缘点。
另一种实施方式中,在将所述各个离散面元从所述虚拟场景投影至所述贴图模板,得到相应离散面元在所述贴图模板中所对应的像素点时,所述一条或多条指令可由处理器加载并具体执行:
针对第i个离散面元,在所述第i个离散面元的边上选取K个边缘点,K为大于2的整数;其中,i∈[1,I],I为离散面元的总数;
根据各个边缘点和所述摄像机之间的方向向量,将相应边缘点从所述虚拟场景投影至所述贴图模板,得到K个第二投影点;
在所述贴图模板上依次连接所述K个第二投影点,得到一个封闭区域;
将所述贴图模板中位于所述封闭区域内的各个像素点,均作为所述第i个离散面元对应的像素点。
另一种实施方式中,在将所述各个离散面元在所述虚拟场景中的深度值,存储至所述贴图模板中的相应像素点中,得到所述虚拟场景的全视角深度信息时,所述一条或多条指令可由处理器加载并具体执行:
将所述各个离散面元在所述虚拟场景中的深度值,分别存储至所述贴图模板中的相应像素点中,得到深度信息贴图;
将所述深度信息贴图,作为所述虚拟场景的全视角深度信息。
另一种实施方式中,若根据第i个离散面元的法向量确定第i个离散面元和所述摄像机的像面相互垂直,则仅有所述第i个离散面元的中心点被投影至所述贴图模板;
若根据所述第i个离散面元的法向量确定所述第i个离散面元和所述摄像机的像面相互平行,则所述第i个离散面元的中心点和一个边缘点被投影至所述贴图模板;
若根据第i个离散面元的法向量确定所述第i个离散面元和所述摄像机的像面相互斜交,则仅有所述第i个离散面元的多个边缘点被投影至所述贴图模板;
其中,i∈[1,I],I为离散面元的总数。
本申请实施例可在虚拟场景中生成多个离散面元,并获取各个离散面元和摄像机之间的距离值,作为相应离散面元在虚拟场景中的深度值,从而采用各个离散面元在虚拟场景中的深度值,构建虚拟场景的全视角深度信息。可见,本申请实施例所提出的全视角深度信息的构建流程较为简单,这样可节省构建全视角深度信息所需的时间成本和处理资源(如带宽),提升全视角深度信息的构建效率。并且,由于各个离散面元是贴附在相应虚拟对象的表面的,因此各个离散面元在虚拟场景中的深度值可较为准确地表征相应虚拟对象的深度值,那么通过采用各个离散面元的深度值构建全视角深度信息,可使得构建出的全视角深度信息具有较高的准确性,提升全视角深度信息的质量。另外,当每个虚拟对象的表面贴附多个离散面元时,同一个虚拟对象的深度值可通过全视角深度信息中的多个离散面元的深度值进行共同表征,这样可进一步提升虚拟对象的深度值的准确性,从而进一步提升全视角深度信息的质量。
需要说明的是,根据本申请的一个方面,还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述图2或图4所示的方法实施例方面的各种可选方式中提供的方法。
应理解的是,以上所揭露的仅为本申请较佳实施例而已,当然不能以此来限定本申请之权利范围,因此依本申请权利要求所作的等同变化,仍属本申请所涵盖的范围。

Claims (13)

1.一种信息构建方法,其特征在于,包括:
在虚拟场景中生成多个离散面元,所述离散面元是具有方向和大小的平面图形;所述虚拟场景中包括摄像机和至少一个虚拟对象,每个虚拟对象的表面贴附有至少一个离散面元;
获取生成的各个离散面元在所述虚拟场景中的深度值,任一离散面元在所述虚拟场景中的深度值由相应离散面元和所述摄像机之间的距离值确定;每个离散面元对应贴图模板中的至少一个像素点;
将所述各个离散面元在所述虚拟场景中的深度值,分别存储至所述贴图模板中的相应像素点中,得到深度信息贴图,所述深度信息贴图中未存储任一离散面元的深度值的像素点为无效像素点;
基于所述深度信息贴图逐级生成低精度的信息贴图,得到目标信息贴图;所述目标信息贴图仅包括一个像素点,且包括的像素点存储有深度值;其中,在逐级生成低精度的信息贴图时,第k+1级的信息贴图中的任一像素点存储的深度值,根据第k级的信息贴图中的多个像素点存储的深度值确定;
基于所述目标信息贴图逐级填充高精度的信息贴图中的无效像素点,直至所述深度信息贴图中的各个无效像素点均被填充,得到所述虚拟场景的全视角深度信息;其中,在逐级填充高精度的信息贴图中的无效像素点时,第k级的信息贴图中的无效像素点存储的深度值,根据第k+1级的信息贴图中的至少一个像素点存储的深度值确定;
其中,任一信息贴图的精度与相应信息贴图包含的像素点的数量成正相关; k∈[1,K-1],K为所述目标信息贴图对应的精度等级,第0级的信息贴图为所述深度信息贴图。
2.如权利要求1所述的方法,其特征在于,所述将所述各个离散面元在所述虚拟场景中的深度值,分别存储至所述贴图模板中的相应像素点中,得到深度信息贴图之前,所述方法还包括:
获取贴图模板,所述贴图模板中包括多个像素点,一个像素点用于存储一个深度值;
将所述各个离散面元从所述虚拟场景投影至所述贴图模板,得到相应离散面元在所述贴图模板中所对应的像素点。
3.如权利要求2所述的方法,其特征在于,所述将所述各个离散面元从所述虚拟场景投影至所述贴图模板,得到相应离散面元在所述贴图模板中所对应的像素点,包括:
针对第i个离散面元,根据所述第i个离散面元的中心点和所述摄像机之间的方向向量,将相应中心点从所述虚拟场景投影至所述贴图模板,得到第一投影点;其中,i∈[1,I],I为离散面元的总数;
将所述贴图模板中位于所述第一投影点处的像素点,作为所述第i个离散面元对应的像素点。
4.如权利要求1所述的方法,其特征在于,所述基于所述深度信息贴图逐级生成低精度的信息贴图,包括:
对第k级的信息贴图中的像素点进行分组,并根据分组结果确定用于生成第k+1级的信息贴图的图像模板;所述图像模板中的各像素点均未存储深度值,且所述图像模板中的一个像素点与所述分组结果中的一个像素组对应,不同像素点对应不同像素组;
遍历所述图像模板中的各个像素点,将当前遍历的像素点作为当前像素点;
从所述分组结果中获取与所述当前像素点对应的像素组,并在获取到的像素组中筛选有效像素点,所述有效像素点是指存储有深度值的像素点;
若筛选出至少一个有效像素点,则对筛选出的各个有效像素点存储的深度值进行均值运算,并将均值运算所得到的值作为深度值,存储至所述当前像素点中;若未筛选出有效像素点,则确定所述当前像素点为空;
继续遍历,直至所述图像模板中的各个像素点均被遍历,得到第k+1级的信息贴图。
5.如权利要求4所述的方法,其特征在于,所述基于所述目标信息贴图逐级填充高精度的信息贴图中的无效像素点,包括:
遍历第k级的信息贴图中的无效像素点;
将当前遍历的无效像素点映射至第k+1级的信息贴图中,得到映射点;并基于所述映射点从第k+1级的信息贴图中选取至少一个像素点,作为所述当前遍历的无效像素点的参考像素点;
根据各个参考像素点所存储的深度值,计算所述当前遍历的无效像素点的深度值,并将计算出的深度值填充至所述当前遍历的无效像素点中;
继续遍历,直至所述第k级的信息贴图中的各个无效像素点均被遍历为止。
6.如权利要求5所述的方法,其特征在于,所述根据各个参考像素点所存储的深度值,计算所述当前遍历的无效像素点的深度值,包括:
按照距离和权重成反比的原则,根据所述各个参考像素点和所述映射点之间的距离,为所述各个参考像素点分配权重;
分别对所述各个参考像素点进行有效性校验;其中,若任一参考像素点存储有深度值,则所述任一参考像素点通过有效性校验;
根据通过有效性校验的参考像素点的权重,对相应参考像素点存储的深度值进行加权平均,得到所述当前遍历的无效像素点的深度值。
7.如权利要求2所述的方法,其特征在于,任一离散面元的形状为圆形;所述将所述各个离散面元从所述虚拟场景投影至所述贴图模板,得到相应离散面元在所述贴图模板中所对应的像素点,包括:
针对第i个离散面元,根据所述第i个离散面元的中心点和所述摄像机之间的方向向量,将相应中心点从所述虚拟场景投影至所述贴图模板,得到第一投影点;其中,i∈[1,I],I为离散面元的总数;
根据所述第i个离散面元的一个边缘点和所述摄像机之间的方向向量,将相应边缘点从所述虚拟场景投影至所述贴图模板,得到第二投影点;边缘点是指:基于离散面元的半径,从离散面元的边上选取出的点;
以所述第一投影点为圆心,且以所述第一投影点和所述第二投影点之间的距离为半径,在所述贴图模板上绘制一个圆,得到圆形区域;
将所述贴图模板中位于所述圆形区域内的各个像素点,均作为所述第i个离散面元对应的像素点。
8.如权利要求7所述的方法,其特征在于,所述根据所述第i个离散面元的一个边缘点和所述摄像机之间的方向向量,将相应边缘点从所述虚拟场景投影至所述贴图模板,得到第二投影点之前,所述方法还包括:
获取所述第i个离散面元的面元信息,所述面元信息包括:离散面元的半径、中心点的世界空间坐标以及法向量;
根据获取到的面元信息,在所述虚拟场景中确定所述第i个离散面元的边;并在确定出的边上随机选取一个点,作为所述第i个离散面元的边缘点。
9.如权利要求2所述的方法,其特征在于,所述将所述各个离散面元从所述虚拟场景投影至所述贴图模板,得到相应离散面元在所述贴图模板中所对应的像素点,包括:
针对第i个离散面元,在所述第i个离散面元的边上选取K个边缘点,K为大于2的整数;其中,i∈[1,I],I为离散面元的总数;
根据各个边缘点和所述摄像机之间的方向向量,将相应边缘点从所述虚拟场景投影至所述贴图模板,得到K个第二投影点;
在所述贴图模板上依次连接所述K个第二投影点,得到一个封闭区域;
将所述贴图模板中位于所述封闭区域内的各个像素点,均作为所述第i个离散面元对应的像素点。
10.如权利要求2所述的方法,其特征在于,若根据第i个离散面元的法向量确定第i个离散面元和所述摄像机的像面相互垂直,则仅有所述第i个离散面元的中心点被投影至所述贴图模板;
若根据所述第i个离散面元的法向量确定所述第i个离散面元和所述摄像机的像面相互平行,则所述第i个离散面元的中心点和一个边缘点被投影至所述贴图模板;
若根据第i个离散面元的法向量确定所述第i个离散面元和所述摄像机的像面相互斜交,则仅有所述第i个离散面元的多个边缘点被投影至所述贴图模板;
其中,i∈[1,I],I为离散面元的总数。
11.一种信息构建装置,其特征在于,包括:
处理单元,用于在虚拟场景中生成多个离散面元,所述离散面元是具有方向和大小的平面图形;所述虚拟场景中包括摄像机和至少一个虚拟对象,每个虚拟对象的表面贴附有至少一个离散面元;
所述处理单元,还用于获取生成的各个离散面元在所述虚拟场景中的深度值,任一离散面元在所述虚拟场景中的深度值由相应离散面元和所述摄像机之间的距离值确定;每个离散面元对应贴图模板中的至少一个像素点;
构建单元,用于将所述各个离散面元在所述虚拟场景中的深度值,分别存储至所述贴图模板中的相应像素点中,得到深度信息贴图,所述深度信息贴图中未存储任一离散面元的深度值的像素点为无效像素点;
所述构建单元,还用于基于所述深度信息贴图逐级生成低精度的信息贴图,得到目标信息贴图;所述目标信息贴图仅包括一个像素点,且包括的像素点存储有深度值;其中,在逐级生成低精度的信息贴图时,第k+1级的信息贴图中的任一像素点存储的深度值,根据第k级的信息贴图中的多个像素点存储的深度值确定;
所述构建单元,还用于基于所述目标信息贴图逐级填充高精度的信息贴图中的无效像素点,直至所述深度信息贴图中的各个无效像素点均被填充,得到所述虚拟场景的全视角深度信息;其中,在逐级填充高精度的信息贴图中的无效像素点时,第k级的信息贴图中的无效像素点存储的深度值,根据第k+1级的信息贴图中的至少一个像素点存储的深度值确定;
其中,任一信息贴图的精度与相应信息贴图包含的像素点的数量成正相关; k∈[1,K-1],K为所述目标信息贴图对应的精度等级,第0级的信息贴图为所述深度信息贴图。
12.一种计算机设备,包括输入接口和输出接口,其特征在于,还包括:处理器以及计算机存储介质;
其中,所述处理器适于实现一条或多条指令,所述计算机存储介质存储有一条或多条指令,所述一条或多条指令适于由所述处理器加载并执行如权利要求1-10任一项所述的信息构建方法。
13.一种计算机存储介质,其特征在于,所述计算机存储介质存储有一条或多条指令,所述一条或多条指令适于由处理器加载并执行如权利要求1-10任一项所述的信息构建方法。
CN202310393668.6A 2023-04-13 2023-04-13 信息构建方法、装置、设备及存储介质 Active CN116109803B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310393668.6A CN116109803B (zh) 2023-04-13 2023-04-13 信息构建方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310393668.6A CN116109803B (zh) 2023-04-13 2023-04-13 信息构建方法、装置、设备及存储介质

Publications (2)

Publication Number Publication Date
CN116109803A CN116109803A (zh) 2023-05-12
CN116109803B true CN116109803B (zh) 2023-07-07

Family

ID=86265894

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310393668.6A Active CN116109803B (zh) 2023-04-13 2023-04-13 信息构建方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN116109803B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116993894B (zh) * 2023-09-11 2023-12-22 腾讯科技(深圳)有限公司 虚拟画面的生成方法、装置、设备、存储介质及程序产品

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113256781A (zh) * 2021-06-17 2021-08-13 腾讯科技(深圳)有限公司 虚拟场景的渲染和装置、存储介质及电子设备

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2538751A (en) * 2015-05-27 2016-11-30 Imp College Of Science Tech And Medicine Modelling a three-dimensional space
EP3349176B1 (en) * 2017-01-17 2021-05-12 Facebook, Inc. Three-dimensional scene reconstruction from set of two-dimensional images for consumption in virtual reality
CN115861514A (zh) * 2022-11-17 2023-03-28 北京字跳网络技术有限公司 虚拟全景图的渲染方法、装置、设备及存储介质
CN115830208B (zh) * 2023-01-09 2023-05-09 腾讯科技(深圳)有限公司 全局光照渲染方法、装置、计算机设备和存储介质

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113256781A (zh) * 2021-06-17 2021-08-13 腾讯科技(深圳)有限公司 虚拟场景的渲染和装置、存储介质及电子设备

Also Published As

Publication number Publication date
CN116109803A (zh) 2023-05-12

Similar Documents

Publication Publication Date Title
US11538229B2 (en) Image processing method and apparatus, electronic device, and computer-readable storage medium
CN106780709B (zh) 一种确定全局光照信息的方法及装置
CN108509848A (zh) 三维物体的实时检测方法及系统
CN111161398B (zh) 一种图像生成方法、装置、设备及存储介质
CN116109803B (zh) 信息构建方法、装置、设备及存储介质
CN109979013B (zh) 三维人脸贴图方法及终端设备
CN116977522A (zh) 三维模型的渲染方法、装置、计算机设备和存储介质
da Silveira et al. Dense 3d scene reconstruction from multiple spherical images for 3-dof+ vr applications
CN113223137B (zh) 透视投影人脸点云图的生成方法、装置及电子设备
CN113962979A (zh) 一种基于深度图像的布料碰撞仿真增强呈现方法及装置
CN107464278B (zh) 全视向的球体光场渲染方法
CN111861873B (zh) 仿真图像的生成方法和装置
CN116385619B (zh) 对象模型渲染方法、装置、计算机设备和存储介质
CN116129082B (zh) 一种面向无人货柜的TIN-NeRF新视角图像标注方法
CN115830202A (zh) 一种三维模型渲染方法和装置
CN115984440A (zh) 对象渲染方法、装置、计算机设备和存储介质
CN115409949A (zh) 模型训练方法、视角图像生成方法、装置、设备及介质
CN115619986A (zh) 场景漫游方法、装置、设备和介质
CN112734628B (zh) 一种经三维转换后的跟踪点的投影位置计算方法及系统
CN115375836A (zh) 基于多元置信度滤波的点云融合三维重建方法和系统
CN115202483A (zh) 一种全球三维地图系统抖动消除方法
CN116109756B (zh) 光线追踪方法、装置、设备及存储介质
CN117392358B (zh) 碰撞检测方法、装置、计算机设备和存储介质
Hall et al. Networked and multimodal 3d modeling of cities for collaborative virtual environments
Liu et al. Fusing multiscale charts into 3D ENC systems based on underwater topography and remote sensing image

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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40086737

Country of ref document: HK