CN114708377B - 一种虚拟空间中的3d图像渲染方法 - Google Patents
一种虚拟空间中的3d图像渲染方法 Download PDFInfo
- Publication number
- CN114708377B CN114708377B CN202210621399.XA CN202210621399A CN114708377B CN 114708377 B CN114708377 B CN 114708377B CN 202210621399 A CN202210621399 A CN 202210621399A CN 114708377 B CN114708377 B CN 114708377B
- Authority
- CN
- China
- Prior art keywords
- user
- observation state
- client
- virtual space
- rendering
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/10—Geometric effects
- G06T15/20—Perspective computation
- G06T15/205—Image-based rendering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
Abstract
本说明书多个实施例提供了一种虚拟空间中的3D图像渲染方法。向用户展示的虚拟空间中的物体模型的3D图像,是对特定用户观察状态下的物体模型进行视觉呈现上的模拟仿真所渲染出的3D图像。客户端只有在确定用户针对虚拟空间的交互指令导致用户观察状态发生变化的情况下,才会对虚拟空间中的物体模型的3D图像进行叠加渲染。服务端据此推算出在之前的用户观察状态(第一用户观察状态)下的物体模型的3D图像的基础上,利用哪些叠加渲染数据进行叠加渲染就可以得到第二用户观察状态下的物体模型的3D图像。然后,服务端,将这些叠加渲染数据进行压缩编码,传输给客户端。客户端在解压缩解码之后,获得这些叠加渲染数据,进行叠加渲染。
Description
技术领域
本说明书多个实施例涉及信息技术领域,尤其涉及一种虚拟空间中的3D图像渲染方法。
背景技术
目前,基于虚拟空间的数字生活体验模式逐渐流行。一种很流行的数字生活体验模式是3D互动体验,而元宇宙(Metaverse)是3D互动体验的一种主要应用。元宇宙可以理解为是利用科技手段进行链接与创造的,与现实空间映射与交互的虚拟空间,是具备新型社会体系的数字生活空间。
用户可以游览体验虚拟空间。让用户游览体验虚拟空间,即是向用户展示虚拟空间中若干物体模型的3D图像。
在实际应用中,向用户提供虚拟空间游览体验的是客户端,而虚拟空间中的各种物体模型的渲染数据却存储在服务端。基于此,需要一种比较高效的3D图像渲染方法。
发明内容
根据本说明书多个实施例的第一方面,提出了一种虚拟空间中的3D图像渲染方法,包括:
客户端向用户展示虚拟空间;所述虚拟空间中包括第一用户观察状态下的若干物体模型的3D图像;
所述客户端响应于用户针对所述虚拟空间的当前交互指令,确定所述当前交互指令导致第一用户观察状态变化后的第二用户观察状态,并将第二用户观察状态上报给服务端;
所述服务端根据所述第二用户观察状态,确定第一叠加渲染数据;所述第一叠加渲染数据用于在第一用户观察状态下的若干物体模型的3D图像基础上进行叠加渲染,得到第二用户观察状态下的若干物体模型的3D图像;
所述服务端将所述第一叠加渲染数据进行压缩编码,得到第一传输数据,并将所述第一传输数据发送给所述客户端;
所述客户端对所述第一传输数据进行解压缩解码,得到所述第一叠加渲染数据,并基于所述第一叠加渲染数据,在第一用户观察状态下的若干物体模型的3D图像基础上进行叠加渲染,得到第二用户观察状态下的若干物体模型的3D图像。
根据本说明书多个实施例的第二方面,提出了一种虚拟空间中的3D图像渲染系统,包括:客户端与服务端;
所述客户端,用于向用户展示虚拟空间;所述虚拟空间中包括第一用户观察状态下的若干物体模型的3D图像;响应于用户针对所述虚拟空间的当前交互指令,确定所述当前交互指令导致第一用户观察状态变化后的第二用户观察状态,并将第二用户观察状态上报给服务端;
所述服务端,用于根据所述第二用户观察状态,确定第一叠加渲染数据;所述第一叠加渲染数据用于在第一用户观察状态下的若干物体模型的3D图像基础上进行叠加渲染,得到第二用户观察状态下的若干物体模型的3D图像;将所述第一叠加渲染数据进行压缩编码,得到第一传输数据,并将所述第一传输数据发送给所述客户端;
所述客户端,还用于对所述第一传输数据进行解压缩解码,得到所述第一叠加渲染数据,并基于所述第一叠加渲染数据,在第一用户观察状态下的若干物体模型的3D图像基础上进行叠加渲染,得到第二用户观察状态下的若干物体模型的3D图像。
根据本说明书多个实施例的第三方面,提出了一种计算设备,包括存储器、处理器;所述存储器用于存储可在处理器上运行的计算机指令,所述处理器用于在执行所述计算机指令时实现客户端或服务端的功能。
根据本说明书多个实施例的第四方面,提出了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现客户端或服务端的功能。
在上述技术方案中,向用户展示的虚拟空间中的物体模型的3D图像,是对特定用户观察状态下的物体模型进行视觉呈现上的模拟仿真所渲染出的3D图像。也就是说,用户对虚拟空间的观察状态,类似于用户对真实空间的观察状态,那么,用户当前所观察到的虚拟空间中的物体模型的3D图像,取决于用户当前的观察状态,这是对用户所观察到的虚拟空间中的物体的视觉呈现进行的模拟仿真。容易理解,如果在虚拟空间中呈现特定用户观察状态下的物体模型的3D图像,那么,相当于只需要向用户渲染“其视野范围内”能够观察到的物体模型的局部的3D图像,这可以理解为“局部渲染”策略。
客户端只有在确定用户针对虚拟空间的交互指令导致用户观察状态发生变化的情况下,才会对虚拟空间中的物体模型的3D图像进行叠加渲染。这可以理解为“按需渲染”策略。具体而言,客户端需要将变化后的用户观察状态(第二用户观察状态)上报给服务端,服务端据此推算出在之前的用户观察状态(第一用户观察状态)下的物体模型的3D图像的基础上,利用哪些叠加渲染数据进行叠加渲染就可以得到第二用户观察状态下的物体模型的3D图像。然后,服务端,将这些叠加渲染数据进行压缩编码,传输给客户端。客户端在解压缩解码之后,获得这些叠加渲染数据,进行叠加渲染。
通过上述技术方案,可以实现如下技术效果:
1、客户端采用了“局部渲染”、“按需渲染”策略,这意味着客户端向用户渲染虚拟空间中的物体模型的3D图像时所需要的渲染数据量是相对比较少的,这进而意味着服务端需要传输给客户端的渲染数据量是比较少的。而且,由于3D图像的数据量相对于得到该3D图像的渲染数据的数据量更大,因此,这样可以进一步降低服务端需要传输给客户端的数据量。
2、客户端采用了叠加渲染方式进行渲染,这意味着,服务端只需要向客户端传输用户观察状态变化所导致的物体模型3D图像变化部分的渲染数据即可,这样也可以进一步降低服务端需要传输给客户端的数据量。
3、服务端在向客户端传输渲染数据时,会对渲染数据进行压缩编码,这也可以进一步降低服务端需要传输给客户端的数据量。
基于以上3点,可以降低传输延时、节省了传输带宽,提升了传输效率,可以更好的实现客户端向用户渲染虚拟空间中物体模型的3D图像的实时性,提升用户体验。
附图说明
图1示例性提供一种生成虚拟试穿3D图像的方法的流程。
图2示例性提供一种应用于电商直播的视频播放方法的流程。
图3是本公开提供的一种计算机可读存储介质的示意图。
图4是本公开提供的一种计算设备的结构示意图。
在附图中,相同或对应的标号表示相同或对应的部分。附图中的任何元素数量均用于示例而非限制,以及任何命名都仅用于区分,而不具有任何限制含义。
具体实施方式
为了使本技术领域的人员更好地理解本说明书中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书保护的范围。
需要说明的是:在其他实施例中并不一定按照本说明书示出和描述的顺序来执行相应方法的步骤。在一些其他实施例中,其方法所包括的步骤可以比本说明书所描述的更多或更少。此外,本说明书中所描述的单个步骤,在其他实施例中可能被分解为多个步骤进行描述;而本说明书中所描述的多个步骤,在其他实施例中也可能被合并为单个步骤进行描述。
目前的虚拟空间的3D图像渲染方法,通常是服务端基于存储的物体模型的渲染数据,渲染出物体模型的3D图像之后,将这些3D图像传输给客户端进行直接展示。然而,由于3D图像的数据量相对于渲染数据的数据量是比较大的,因此,服务端将这些3D图像传输给客户端所需要的带宽更大、传输延时更长,这其实不利于实现客户端实时向用户展示虚拟空间中的3D图像,降低用户体验。
而本公开旨在提供一种比较高效的3D图像渲染方法,降低服务端需要向客户端传输的数据量,提升传输效率,从而更有利于实现客户端实时向用户展示虚拟空间中的3D图像,提升用户体验。以下对本技术方案的方案构思进行介绍:
向用户展示的虚拟空间中的物体模型的3D图像,是对特定用户观察状态下的物体模型进行视觉呈现上的模拟仿真所渲染出的3D图像。也就是说,用户对虚拟空间的观察状态,类似于用户对真实空间的观察状态,那么,用户当前所观察到的虚拟空间中的物体模型的3D图像,取决于用户当前的观察状态,这是对用户所观察到的虚拟空间中的物体的视觉呈现进行的模拟仿真。容易理解,如果在虚拟空间中呈现特定用户观察状态下的物体模型的3D图像,那么,相当于只需要向用户渲染“其视野范围内”能够观察到的物体模型的局部的3D图像,这可以理解为“局部渲染”策略。
客户端只有在确定用户针对虚拟空间的交互指令导致用户观察状态发生变化的情况下,才会对虚拟空间中的物体模型的3D图像进行叠加渲染。这可以理解为“按需渲染”策略。具体而言,客户端需要将变化后的用户观察状态(第二用户观察状态)上报给服务端,服务端据此推算出在之前的用户观察状态(第一用户观察状态)下的物体模型的3D图像的基础上,利用哪些叠加渲染数据进行叠加渲染就可以得到第二用户观察状态下的物体模型的3D图像。然后,服务端,将这些叠加渲染数据进行压缩编码,传输给客户端。客户端在解压缩解码之后,获得这些叠加渲染数据,进行叠加渲染。
通过上述技术方案,可以实现如下技术效果:
1、客户端采用了“局部渲染”、“按需渲染”策略,这意味着客户端向用户渲染虚拟空间中的物体模型的3D图像时所需要的渲染数据量是相对比较少的,这进而意味着服务端需要传输给客户端的渲染数据量是比较少的。而且,由于3D图像的数据量相对于得到该3D图像的渲染数据的数据量更大,因此,这样可以进一步降低服务端需要传输给客户端的数据量。
2、客户端采用了叠加渲染方式进行渲染,这意味着,服务端只需要向客户端传输用户观察状态变化所导致的物体模型3D图像变化部分的渲染数据即可,这样也可以进一步降低服务端需要传输给客户端的数据量。
3、服务端在向客户端传输渲染数据时,会对渲染数据进行压缩编码,这也可以进一步降低服务端需要传输给客户端的数据量。
基于以上3点,可以降低传输延时、节省了传输带宽,提升了传输效率,可以更好的实现客户端向用户渲染虚拟空间中物体模型的3D图像的实时性,提升用户体验。
以下结合附图,详细说明上述技术方案。
图1示例性提供一种虚拟空间中的3D图像渲染方法的流程,包括:
S100:客户端向用户展示虚拟空间。
本公开中所述的虚拟空间,是指对真实空间进行模拟仿真的数字化空间,用户可以游览体验该虚拟空间,获得相当于游览真实空间的仿真体验。用户游览体验虚拟空间的方式,可以利用VR设备、AR设备身临其境般的“进入”虚拟空间进行探索观察,与虚拟空间进行交互,发出交互指令;也可以在虚拟空间外部,通过控制器(如鼠标)与虚拟空间进行交互,探索观察虚拟空间。
虚拟空间中包括若干物体模型的3D图像(即便是虚拟空间中的背景,本质上也属于物体模型的范畴),用户探索观察虚拟空间的过程,实质上就是探索观察虚拟空间中的若干物体模型的3D图像的过程。一般而言,物体模型的3D图像,可以是3D图片,或,3D视频。
向用户展示的虚拟空间中的物体模型的3D图像,是对特定用户观察状态下的物体模型进行视觉呈现上的模拟仿真所渲染出的3D图像。也就是说,用户对虚拟空间的观察状态,类似于用户对真实空间的观察状态,那么,用户当前所观察到的虚拟空间中的物体模型的3D图像,取决于用户当前的观察状态,这是对用户所观察到的虚拟空间中的物体的视觉呈现进行的模拟仿真。容易理解,如果在虚拟空间中呈现特定用户观察状态下的物体模型的3D图像,那么,相当于只需要向用户渲染“其视野范围内”能够观察到的物体模型的局部的3D图像,这可以理解为“局部渲染”策略。
本文为了描述方便,用第一用户观察状态、第二用户观察状态、第三用户观察状态来区分同一用户相对于虚拟空间的不同的用户观察状态。
在一些实施例中,用户观察状态可以是用户相对于虚拟空间的观察位置和/或观察视角。
另外需要说明的是,本公开中所述的虚拟空间中的物体模型,可以是对真实物体进行3D建模后得到的数字化虚拟模型,其例如可以是真实物体的3D-Mesh模型。
S102:客户端响应于用户针对所述虚拟空间的当前交互指令,确定所述当前交互指令导致第一用户观察状态变化后的第二用户观察状态,并将第二用户观察状态上报给服务端。
S104:服务端根据所述第二用户观察状态,确定第一叠加渲染数据。
用户针对虚拟空间的交互指令,可以导致用户观察状态发生变化。例如,用户利用鼠标“旋转”虚拟空间中的3D物体模型,这会导致用户观察状态发生变化,也意味着需要向用户更新渲染3D物体模型的3D图像。
在本公开提供的各个实施例中,客户端只有在确定用户针对虚拟空间的交互指令导致用户观察状态发生变化的情况下,才会对虚拟空间中的物体模型的3D图像进行叠加渲染。这可以理解为“按需渲染”策略,即用户不交互就不更新渲染。
具体而言,客户端需要将变化后的用户观察状态(第二用户观察状态)上报给服务端,服务端据此推算出在之前的用户观察状态(第一用户观察状态)下的物体模型的3D图像的基础上,利用哪些叠加渲染数据进行叠加渲染就可以得到第二用户观察状态下的物体模型的3D图像。
需要说明的是,用于渲染物体模型的3D图像的渲染数据,通常是物体模型本身的网络、纹理等数据。
S106:服务端将所述第一叠加渲染数据进行压缩编码,得到第一传输数据,并将所述第一传输数据发送给所述客户端。
在一些实施例中,针对物体模型是3D-Mesh模型的情况,服务端可以调用Corto编码器,将所述叠加渲染数据进行压缩编码。相应的,客户端可以调用Corto解码器,对所述传输数据进行解压缩解码。
Corto 编解码器,是来自 CNR-ISTI Visual Computing Group(计算机视觉实验室)的MIT 许可的 Corto 编解码器,该编解码器具有快速压缩和特别快速的解压缩特性,Corto 支持具对3D-Mesh模型的每个顶点属性的点云和网格(法线、颜色、纹理坐标和自定义属性)数据进行编解码,编解码的“粒度”更细致,可以提升压缩效率,尽量降低数据量。
作为对比,一般意义上的编解码器只是将数据视为一个整体进行整体压缩,编解码的“粒度”不够细致,压缩效率不高。
另外,基于Corto编解码器的特性,服务端调用Corto编码器对叠加渲染数据进行压缩编码的过程中,通常会基于叠加渲染数据进行一定程度的渲染工作。客户端调用Corto解码器进行解压缩解码之后,可以在服务端已经完成的渲染工作的基础上,继续进行叠加渲染。这意味着,对虚拟空间中物体模型的3D图像的渲染工作可以由服务端与客户端进行分担,可以既利用服务端的算力,又利用客户端的算力,客户端、服务端的计算压力都不大,更有利于实现向用户渲染3D图像的实时性。
S108:客户端对所述第一传输数据进行解压缩解码,得到所述第一叠加渲染数据,并基于所述第一叠加渲染数据,在第一用户观察状态下的若干物体模型的3D图像基础上进行叠加渲染,得到第二用户观察状态下的若干物体模型的3D图像。
在一些实施例中,客户端可以基于部署的交互指令预测模型,根据所述当前交互指令,预测用户针对所述虚拟空间的未来交互指令。客户端可以确定所述未来交互指令导致第二用户观察状态变化后的第三用户观察状态,并将第三用户观察状态上报给服务端。相应的,服务端可以根据所述第三用户观察状态,确定第二叠加渲染数据。容易理解,所述第二叠加渲染数据用于在第二用户观察状态下的若干物体模型的3D图像基础上进行叠加渲染,得到第三用户观察状态下的若干物体模型的3D图像。
进一步的,服务端可以将所述第二叠加渲染数据进行压缩编码,得到第二传输数据,并将所述第二传输数据发送给所述客户端。客户端可以对所述第二传输数据进行解压缩解码,得到所述第二叠加渲染数据,并基于所述第二叠加渲染数据,在第二用户观察状态下的若干物体模型的3D图像基础上进行叠加渲染,得到第三用户观察状态下的若干物体模型的3D图像。
如此一来,可以在用户还没有做出未来交互指令的情况下,提前将所需要的叠加渲染数据由服务端传输给客户端。用户在未来一旦做出这样的交互指令,客户端可以很实时地将新的用户观察状态下的物体模型的3D图像渲染出来,提升用户体验。
此外,作为一种可选的方式,客户端也可以基于部署的交互指令预测模型,根据所述当前交互指令与用户针对所述虚拟空间的更多的历史交互指令,预测用户针对所述虚拟空间的未来交互指令。
图2示例性提供一种虚拟空间中的3D图像渲染系统。如图3所示,渲染系统包括客户端与服务端,客户端可以基于用户的交互指令动态驱动服务端传输叠加渲染数据,基于叠加渲染数据进行叠加渲染。
本公开还提供一种计算机可读存储介质,如图3所示,该介质140上存储有计算机程序,所述程序被处理器执行时实现客户端或服务端的功能。
本公开还提供一种计算设备,包括存储器、处理器;所述存储器用于存储可在处理器上运行的计算机指令,所述处理器用于在执行所述计算机指令时实现客户端或服务端的功能。
图4是本公开提供的一种计算设备的结构示意图,该计算设备15可以包括但不限于:处理器151、存储器152、连接不同系统组件(包括存储器152和处理器151)的总线153。
其中,存储器152存储有计算机指令,该计算机指令可以被处理器151执行,使得处理器151能够执行本公开任一实施例的方法。存储器152可以包括随机存取存储单元RAM1521、高速缓存存储单元1522和/或只读存储单元ROM1523。该存储器152还可以包括:具有一组程序模块1524的程序工具1525,该程序模块1524包括但不限于:操作系统、一个或多个应用程序、其他程序模块和程序数据,这些程序模块一种或多种组合可以包含网络环境的实现。
总线153例如可以包括数据总线、地址总线和控制总线等。该计算设备15还可以通过I/O接口154与外部设备155通信,该外部设备155例如可以是键盘、蓝牙设备等。该计算设备15还可以通过网络适配器156与一个或多个网络通信,例如,该网络可以是局域网、广域网、公共网络等。如图所示,该网络适配器156还可以通过总线153与计算设备15的其他模块进行通信。
此外,尽管在附图中以特定顺序描述了本公开方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
虽然已经参考若干具体实施方式描述了本公开的精神和原理,但是应该理解,本公开并不限于所公开的具体实施方式,对各方面的划分也不意味着这些方面中的特征不能组合以进行受益,这种划分仅是为了表述的方便。本公开旨在涵盖所附权利要求的精神和范围内所包括的各种修改和等同布置。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本说明书时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
本说明书可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。在一个典型的配置中,计算机包括一个或多个处理器 (CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器 (RAM) 和/或非易失性内存等形式,如只读存储器 (ROM) 或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存 (PRAM)、静态随机存取存储器 (SRAM)、动态随机存取存储器 (DRAM)、其他类型的随机存取存储器 (RAM)、只读存储器 (ROM)、电可擦除可编程只读存储器 (EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘 (DVD) 或其他光学存储、磁盒式磁带、磁盘存储、量子存储器、基于石墨烯的存储介质或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
上述对本说明书多个实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
在本说明书多个实施例使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书多个实施例。在本说明书多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本说明书多个实施例可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书多个实施例范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于方法实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的方法实施例仅仅是示意性的,其中所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,在实施本说明书实施例方案时可以把各模块的功能在同一个或多个软件和/或硬件中实现。也可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅为本说明书多个实施例的较佳实施例而已,并不用以限制本说明书多个实施例,凡在本说明书多个实施例的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本说明书多个实施例保护的范围之内。
Claims (10)
1.一种虚拟空间中的3D图像渲染方法,包括:
客户端向用户展示虚拟空间;所述虚拟空间中包括第一用户观察状态下的若干物体模型的3D图像;
所述客户端响应于用户针对所述虚拟空间的当前交互指令,确定所述当前交互指令导致第一用户观察状态变化后的第二用户观察状态,并将第二用户观察状态上报给服务端;
所述服务端根据所述第二用户观察状态,确定第一叠加渲染数据;所述第一叠加渲染数据用于在第一用户观察状态下的若干物体模型的3D图像基础上进行叠加渲染,得到第二用户观察状态下的若干物体模型的3D图像;
所述服务端将所述第一叠加渲染数据进行压缩编码,得到第一传输数据,并将所述第一传输数据发送给所述客户端;
所述客户端对所述第一传输数据进行解压缩解码,得到所述第一叠加渲染数据,并基于所述第一叠加渲染数据,在第一用户观察状态下的若干物体模型的3D图像基础上进行叠加渲染,得到第二用户观察状态下的若干物体模型的3D图像。
2.如权利要求1所述方法,其中,用户观察状态包括用户相对于虚拟空间的观察位置和/或观察视角。
3.如权利要求1所述方法,所述若干物体模型包括:若干物体的3D-Mesh模型。
4.如权利要求3所述方法,所述服务端将所述叠加渲染数据进行压缩编码,包括:
所述服务端调用Corto编码器,将所述叠加渲染数据进行压缩编码;
所述客户端对所述传输数据进行解压缩解码,包括:
所述客户端调用Corto解码器,对所述传输数据进行解压缩解码。
5.如权利要求1所述方法,还包括:
所述客户端基于部署的交互指令预测模型,根据所述当前交互指令,预测用户针对所述虚拟空间的未来交互指令;
所述客户端确定所述未来交互指令导致第二用户观察状态变化后的第三用户观察状态,并将第三用户观察状态上报给服务端;
所述服务端根据所述第三用户观察状态,确定第二叠加渲染数据;所述第二叠加渲染数据用于在第二用户观察状态下的若干物体模型的3D图像基础上进行叠加渲染,得到第三用户观察状态下的若干物体模型的3D图像;
所述服务端将所述第二叠加渲染数据进行压缩编码,得到第二传输数据,并将所述第二传输数据发送给所述客户端;
所述客户端对所述第二传输数据进行解压缩解码,得到所述第二叠加渲染数据,并基于所述第二叠加渲染数据,在第二用户观察状态下的若干物体模型的3D图像基础上进行叠加渲染,得到第三用户观察状态下的若干物体模型的3D图像。
6.如权利要求5所述方法,所述客户端基于部署的交互指令预测模型,根据所述当前交互指令,预测用户针对所述虚拟空间的未来交互指令,包括:
所述客户端基于部署的交互指令预测模型,根据所述当前交互指令与用户针对所述虚拟空间的历史交互指令,预测用户针对所述虚拟空间的未来交互指令。
7.如权利要求1所述方法,其中,所述若干物体模型的3D图像,包括:所述若干物体模型的3D图片,或,3D视频。
8.一种虚拟空间中的3D图像渲染系统,包括:客户端与服务端;
所述客户端,用于向用户展示虚拟空间;所述虚拟空间中包括第一用户观察状态下的若干物体模型的3D图像;响应于用户针对所述虚拟空间的当前交互指令,确定所述当前交互指令导致第一用户观察状态变化后的第二用户观察状态,并将第二用户观察状态上报给服务端;
所述服务端,用于根据所述第二用户观察状态,确定第一叠加渲染数据;所述第一叠加渲染数据用于在第一用户观察状态下的若干物体模型的3D图像基础上进行叠加渲染,得到第二用户观察状态下的若干物体模型的3D图像;将所述第一叠加渲染数据进行压缩编码,得到第一传输数据,并将所述第一传输数据发送给所述客户端;
所述客户端,还用于对所述第一传输数据进行解压缩解码,得到所述第一叠加渲染数据,并基于所述第一叠加渲染数据,在第一用户观察状态下的若干物体模型的3D图像基础上进行叠加渲染,得到第二用户观察状态下的若干物体模型的3D图像。
9.一种计算设备,包括存储器、处理器;所述存储器用于存储可在处理器上运行的计算机指令,所述处理器用于在执行所述计算机指令时实现权利要求1至7任一项所述方法中客户端或服务端的功能。
10.一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现权利要求1至7任一项所述方法中客户端或服务端的功能。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210621399.XA CN114708377B (zh) | 2022-06-02 | 2022-06-02 | 一种虚拟空间中的3d图像渲染方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210621399.XA CN114708377B (zh) | 2022-06-02 | 2022-06-02 | 一种虚拟空间中的3d图像渲染方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114708377A CN114708377A (zh) | 2022-07-05 |
CN114708377B true CN114708377B (zh) | 2022-09-30 |
Family
ID=82177733
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210621399.XA Active CN114708377B (zh) | 2022-06-02 | 2022-06-02 | 一种虚拟空间中的3d图像渲染方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114708377B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115346028A (zh) * | 2022-08-17 | 2022-11-15 | 支付宝(杭州)信息技术有限公司 | 虚拟环境主题处理方法及装置 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101968887A (zh) * | 2010-09-08 | 2011-02-09 | 东莞电子科技大学电子信息工程研究院 | 一种富媒体场景的局部渲染方法 |
CN103914582A (zh) * | 2012-12-31 | 2014-07-09 | 达索系统公司 | 从服务器向远程客户端流传输模拟的三维建模的对象 |
US9413807B1 (en) * | 2012-10-15 | 2016-08-09 | Tableau Software, Inc. | Browser rendering and computation |
WO2016196667A1 (en) * | 2015-06-03 | 2016-12-08 | Alibaba Group Holding Limited | System, method, and apparatus for data processing and display |
US9569812B1 (en) * | 2016-01-07 | 2017-02-14 | Microsoft Technology Licensing, Llc | View rendering from multiple server-side renderings |
CN107370714A (zh) * | 2016-05-13 | 2017-11-21 | 吉林纪元时空动漫游戏科技集团股份有限公司 | 面向云渲染的高效通讯方法 |
CN111475589A (zh) * | 2019-01-22 | 2020-07-31 | 阿里巴巴集团控股有限公司 | 图像数据的渲染方法及装置 |
CN112669428A (zh) * | 2021-01-06 | 2021-04-16 | 南京亚派软件技术有限公司 | 一种基于服务器和客户端协作的bim模型渲染方法 |
US11308687B1 (en) * | 2019-03-29 | 2022-04-19 | Amazon Technologies, Inc. | System and method of providing simulated three-dimensional objects |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8629878B2 (en) * | 2009-08-26 | 2014-01-14 | Red Hat, Inc. | Extension to a hypervisor that utilizes graphics hardware on a host |
US8429269B2 (en) * | 2009-12-09 | 2013-04-23 | Sony Computer Entertainment Inc. | Server-side rendering |
US20110279453A1 (en) * | 2010-05-16 | 2011-11-17 | Nokia Corporation | Method and apparatus for rendering a location-based user interface |
US9378582B2 (en) * | 2012-07-31 | 2016-06-28 | Siemens Product Lifecycle Management Software Inc. | Rendering of design data |
US9756375B2 (en) * | 2015-01-22 | 2017-09-05 | Microsoft Technology Licensing, Llc | Predictive server-side rendering of scenes |
CN107274469A (zh) * | 2017-06-06 | 2017-10-20 | 清华大学 | 面向虚拟现实的协同渲染方法 |
CN109901717A (zh) * | 2019-03-05 | 2019-06-18 | 深圳鼎盛乐园娱乐服务有限公司 | 一种虚拟现实多竞技交互系统 |
CN113206971B (zh) * | 2021-04-13 | 2023-10-24 | 聚好看科技股份有限公司 | 一种图像处理方法及显示设备 |
CN113409432A (zh) * | 2021-05-12 | 2021-09-17 | 支付宝(杭州)信息技术有限公司 | 一种基于虚拟现实的图像信息生成方法、装置和可读介质 |
-
2022
- 2022-06-02 CN CN202210621399.XA patent/CN114708377B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101968887A (zh) * | 2010-09-08 | 2011-02-09 | 东莞电子科技大学电子信息工程研究院 | 一种富媒体场景的局部渲染方法 |
US9413807B1 (en) * | 2012-10-15 | 2016-08-09 | Tableau Software, Inc. | Browser rendering and computation |
CN103914582A (zh) * | 2012-12-31 | 2014-07-09 | 达索系统公司 | 从服务器向远程客户端流传输模拟的三维建模的对象 |
WO2016196667A1 (en) * | 2015-06-03 | 2016-12-08 | Alibaba Group Holding Limited | System, method, and apparatus for data processing and display |
US9569812B1 (en) * | 2016-01-07 | 2017-02-14 | Microsoft Technology Licensing, Llc | View rendering from multiple server-side renderings |
CN107370714A (zh) * | 2016-05-13 | 2017-11-21 | 吉林纪元时空动漫游戏科技集团股份有限公司 | 面向云渲染的高效通讯方法 |
CN111475589A (zh) * | 2019-01-22 | 2020-07-31 | 阿里巴巴集团控股有限公司 | 图像数据的渲染方法及装置 |
US11308687B1 (en) * | 2019-03-29 | 2022-04-19 | Amazon Technologies, Inc. | System and method of providing simulated three-dimensional objects |
CN112669428A (zh) * | 2021-01-06 | 2021-04-16 | 南京亚派软件技术有限公司 | 一种基于服务器和客户端协作的bim模型渲染方法 |
Also Published As
Publication number | Publication date |
---|---|
CN114708377A (zh) | 2022-07-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113661471B (zh) | 混合渲染 | |
EP3337158A1 (en) | Method and device for determining points of interest in an immersive content | |
KR20200037442A (ko) | 포인트-클라우드 스트리밍을 위한 방법 및 장치(method and apparatus for point-cloud streaming) | |
US10699361B2 (en) | Method and apparatus for enhanced processing of three dimensional (3D) graphics data | |
Doellner et al. | Server-based rendering of large 3D scenes for mobile devices using G-buffer cube maps | |
JP2013099494A (ja) | 描画システム、描画サーバ、その制御方法、プログラム、及び記録媒体 | |
CN113244614B (zh) | 图像画面展示方法、装置、设备及存储介质 | |
KR101713041B1 (ko) | 일반화된 플레인 인코딩을 이용한 확률적 깊이 버퍼 압축 | |
CN114708377B (zh) | 一种虚拟空间中的3d图像渲染方法 | |
CN116704163B (zh) | 在终端显示虚拟现实场景的方法、装置、设备及介质 | |
CN114556147A (zh) | 点云几何上采样 | |
JP6804191B2 (ja) | ビデオストリームの後処理のための方法及び装置 | |
CN117280680A (zh) | 动态网格对齐的并行方式 | |
Lesniak et al. | Immersive distributed design through real-time capture, translation, and rendering of three-dimensional mesh data | |
CN113890675A (zh) | 一种三维模型的自适应显示方法及设备 | |
CN115428416A (zh) | 沉浸式媒体的设置和沉浸式媒体到异构客户端端点的分发 | |
EP4070553A1 (en) | Encoding and decoding views on volumetric image data | |
RU2810701C2 (ru) | Гибридный рендеринг | |
CN110213583A (zh) | 视频编码方法、系统及装置 | |
US20240112431A1 (en) | System and method of three-dimensional model interaction on low end devices with photorealistic visualization | |
CN115564803B (zh) | 一种动画处理方法、装置、设备、存储介质及产品 | |
WO2022124047A1 (ja) | 情報処理装置、情報処理システム及び情報処理方法 | |
Wang et al. | Scalable remote rendering using synthesized image quality assessment | |
CN112330782A (zh) | 动画处理方法以及装置 | |
CN116743722A (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 |