本技术涉及虚拟现实(virtual reality,vr),尤其涉及一种三维模型的显示方法及设备。
背景技术:
1、三维重建是指根据单视图或者多视图的图像重建三维信息的过程。对于一些静态场景、物体,通过静态三维重建算法重建场景和物体的三维模型,然后渲染在三维场景中进行显示。对于一些动态的物体(比如:人),由于是动态变化的,往往需要建立一系列的三维模型,将这些三维模型按顺序进行渲染显示以描述物体的运动状态。
2、三维重建的显示作为实时远程三维重建社交系统中的关键技术,直接影响了用户的沉浸式体验。由于三维重建数据是动态生成的,每一帧三维重建数据都不同,这样,终端同时接收当前帧对应的多路三维重建数据时,数据量是巨大的,往往需要几百兆的网络带宽,一般的家用网络甚至专线网络难以满足实时性的传输要求,从而导致终端渲染的三维模型的帧率不足时,视觉上引起三维模型动作的卡顿。
3、目前,大多通过降低三维模型的精度以降低传输的数据量,但若降低重建模型的精度,模型的细节程度就会下降,影响显示效果。
技术实现思路
1、本技术实施例提供了一种三维模型的显示方法及设备,用以保证三维模型精度的同时,提高三维模型的渲染显示效率,进而提高三维重建的实时性。
2、第一方面,本技术实施例提供一种三维模型的显示方法,包括:
3、根据目标对象的深度图像和彩色图像,重建所述目标对象的三维模型,并获取所述三维模型的骨架;
4、对所述三维模型的初始重建数据进行下采样,得到目标重建数据;
5、根据预设的骨架节点的优先级,分别确定所述初始重建数据对应的模型中各个第一子模型的优先级;
6、将所述各个第一子模型的优先级数据,以及所述目标重建数据对应的模型中各个第二子模型的数据发送给渲染终端,所述第一子模型和所述第二子模型一一对应;
7、接收所述渲染终端发送的数据获取请求,所述数据获取请求携带优先级从高到低排列的各个目标子模型的标识,所述目标子模型的标识是根据所述各个第二子模型的包围盒与所述渲染终端的视景体的空间关系确定的;
8、按照所述数据获取请求中排序后的各个目标子模型的标识,将所述各个目标子模型对应的初始重建数据依序发送给所述渲染终端。
9、第二方面,本技术实施例提供一种三维模型的显示方法,包括:
10、接收采集终端发送的各个第一子模型的优先级数据,以及目标重建数据对应的模型中各个第二子模型的数据;其中,所述优先级数据是根据预设的骨架节点的优先级确定的,所述第一子模型为目标对象的初始重建数据对应的模型中的子模型,所述目标重建数据是对所述初始重建数据下采样得到的,所述第一子模型和所述第二子模型一一对应;
11、生成所述各个第二子模型的包围盒,并根据各个包围盒与视景体的空间关系,确定所述视景体内包含的各个目标子模型的标识;
12、按照各个目标子模型的优先级从高到低顺序,对所述各个目标子模型的标识进行排序;
13、向所述采集终端发送数据获取请求,所述数据获取请求携带排序后的各个目标子模型的标识;
14、接收所述采集终端按照所述各个目标子模型的标识,依序发送的相应目标子模型的初始重建数据;
15、根据所述各个目标子模型的初始重建数据,以及与所述各个目标子模型不同标识的第二子模型的目标重建数据,渲染所述目标对象的三维模型并显示。
16、第三方面,本技术实施例提供一种采集终端,包括rgbd相机、主机,所述主机至少包含处理器、存储器和通信接口,所述存储器和所述通信接口通过总线与所述处理器连接;
17、所述rgbd相机用于采集目标对象的深度图像和彩色图像;所述存储器存储有计算机程序,所述处理器根据所述计算机程序,执行以下操作:
18、根据目标对象的深度图像和彩色图像,重建所述目标对象的三维模型,并获取所述三维模型的骨架;
19、对所述三维模型的初始重建数据进行下采样,得到目标重建数据;
20、根据预设的骨架节点的优先级,分别确定所述初始重建数据对应的模型中各个第一子模型的优先级;
21、通过所述通信接口,将所述各个第一子模型的优先级数据,以及所述目标重建数据对应的模型中各个第二子模型的数据发送给渲染终端,所述第一子模型和所述第二子模型一一对应;
22、通过所述通信接口,接收所述渲染终端发送的数据获取请求,所述数据获取请求携带优先级从高到低排列的各个目标子模型的标识,所述目标子模型的标识是根据所述各个第二子模型的包围盒与所述渲染终端的视景体的空间关系确定的;
23、按照所述数据获取请求中排序后的各个目标子模型的标识,通过所述通信接口,将所述各个目标子模型对应的初始重建数据依序发送给所述渲染终端。
24、第四方面,本技术实施例提供一种渲染终端,包括处理器、存储器、显示器、通信接口,所述存储器、所述显示器和所述通信接口通过总线与所述处理器连接;
25、所述存储器存储有计算机程序,所述处理器根据所述计算机程序,执行以下操作:
26、通过所述通信接口,接收采集终端发送的各个第一子模型的优先级数据,以及目标重建数据对应的模型中各个第二子模型的数据;其中,所述优先级数据是根据预设的骨架节点的优先级确定的,所述第一子模型为目标对象的初始重建数据对应的模型中的子模型,所述目标重建数据是对所述初始重建数据下采样得到的,所述第一子模型和所述第二子模型一一对应;
27、生成所述各个第二子模型的包围盒,并根据各个包围盒与视景体的空间关系,确定所述视景体内包含的各个目标子模型的标识;
28、按照各个目标子模型的优先级从高到低顺序,对所述各个目标子模型的标识进行排序;
29、通过所述通信接口,向所述采集终端发送数据获取请求,所述数据获取请求携带排序后的各个目标子模型的标识;
30、通过所述通信接口,接收所述采集终端按照所述各个目标子模型的标识,依序发送的相应目标子模型的初始重建数据;
31、根据所述各个目标子模型的初始重建数据,以及与所述各个目标子模型不同标识的第二子模型的目标重建数据,渲染所述目标对象的三维模型,并由所述显示器进行显示。
32、第五方面,本技术提供一种计算机可读存储介质,计算机可读存储介质存储有计算机可执行指令,计算机可执行指令用于使计算机执行本技术实施例提供的三维模型的显示方法。
33、本技术的上述实施例中,采集终端根据目标对象的深度图像和彩色图像,重建目标对象的三维模型,根据预设的骨架节点的优先级,分别确定初始重建数据对应的模型中的各个第一子模型的优先级,每个第一子模型一一对应一个目标重建数据对应的模型中的第二子模型,并将各个第一子模型的优先级数据以及各个第二子模型的目标重建数据发送给渲染终端,以保证三维模型的完整性和动作连贯性,且由于目标重建数据是对初始重建数据下采样得到的,降低了对网络带宽的压力。渲染终端根据各个第二子模型的包围盒与视景体的空间关系,可以确定视野内的各个目标子模型的标识,由于第一子模型和第二子模型一一对应,因此,第一子模型的优先级可以作为目标子模型的优先级,从而按照优先级从高到低的顺序排序对各个目标子模型的标识进行排序,并将排序后的标识携带在数据获取请求中发送。采集终端接收到数据获取请求后,按照排序后的各个目标子模型的标识,将目标子模型的初始重建数据依序发送给渲染终端,而不可见区域内高精度的第一子模型数据不会被传输,降低了传输数据量,提高了渲染显示效率。渲染终端接收到各个目标子模型的初始重建数据后,结合与各个目标子模型的标识不同的第二子模型的目标重建数据,进行三维模型的实时渲染显示,由于目标子模型是视野范围内的,且数据的精度较高,从而提高了三维模型的显示质量。