掌桥专利:专业的专利平台
掌桥专利
首页

一种视频渲染的处理方法及系统

文献发布时间:2024-07-23 01:35:21


一种视频渲染的处理方法及系统

技术领域

本申请涉及虚拟现实技术领域,更具体地说,涉及一种视频渲染的处理方法及系统。

背景技术

全息视频是指通过光学干涉、电子全息等方式,制作出3D立体影像,相比于传统的平面视频,全息视频可以实现更加真实的3D效果,使观众仿佛置身其中。

目前,在虚拟空间中以全息视频的形式展示真实录制的视频的方式需要将每一帧的三维模型逐个导入渲染引擎,同时需要在每一帧将旧的模型删除再添加新的模型。这一过程对计算机的内存以及运算性能有极高的要求,现有技术中只能根据需求逐帧渲染出2D视频供用户观看或者将模型精度极大的降低以低模状态展示,无法达到在虚拟空间中高质量全息视频的实时渲染的效果。

因此,如何在虚拟空间中提高全息视频的实时渲染的质量和效率,是本申请亟需解决的问题。

发明内容

有鉴于此,本申请公开了一种视频渲染的处理方法及系统,旨在实现在低成本,高效率的虚拟空间中全息视频的生产,从而在虚拟空间中提高全息视频的实时渲染的质量和渲染效率。

为了实现上述目的,其公开的技术方案如下:

本申请第一方面公开了一种视频渲染的处理方法,所述方法包括:

针对预先构建的时间序列上每一帧的三维模型,对所述三维模型进行数据压缩,以将三维模型中的预设类型数据存储至多个二维图像;其中,所述预设类型数据由空间坐标向量、旋转坐标向量、尺度信息和标量确定;

针对多个二维图像中的各个像素,在虚拟空间中按照预设实时渲染方式对所述像素进行实时渲染,得到目标颜色,更新多个二维图像的当前像素,并返回在虚拟空间中按照预设实时渲染方式对所述像素进行实时渲染这一过程,直至完成多个二维图像中所有像素的渲染,从而完成全息视频的实时渲染;其中,所述预设实时渲染方式由在三维空间的视锥中三维模型的各个椭球的顺序、各个椭球的颜色和各个椭球的透明度确定。

优选的,所述多个二维图像包括第一图像、第二图像、第三图像和第四图像,所述针对预先构建的时间序列上每一帧的三维模型,对所述三维模型进行数据压缩,以将三维模型中的预设类型数据存储至多个二维图像,包括:

针对预先创建的时间序列上每一帧的预设格式的三维模型,获取所述三维模型的三维空间坐标向量、四维旋转向量、三维尺度向量、颜色标量和透明度标量;

将三维空间坐标向量中的X坐标向量存储至第一图像中的红色通道;

将三维空间坐标向量中的Y坐标向量存储至第一图像中的绿色通道;

将三维空间坐标向量中的Z坐标向量存储至第一图像中的蓝色通道;

将四维旋转向量中的X轴旋转向量存储至第二图像中的红色通道;

将四维旋转向量中的Y轴旋转向量存储至第二图像中的绿色通道;

将四维旋转向量中的Z轴旋转向量存储至第二图像中的蓝色通道;

将四维旋转向量中的旋转四元数的实部向量存储至第二图像中的黑白通道;

将三维尺度向量中椭球在空间的长度存储至第三图像中的红色通道;

将三维尺度向量中椭球在空间的宽度存储至第三图像中的绿色通道;

将三维尺度向量中椭球在空间的高度存储至第三图像中的蓝色通道;

将颜色标量存储至第四图像中的红色通道;

将透明度标量存储至第四图像中的绿色通道。

优选的,所述针对多个二维图像中的各个像素,在虚拟空间中按照预设实时渲染方式对所述像素进行实时渲染,得到目标颜色,包括:

针对多个二维图像,在虚拟空间中将所述二维图像划分为多个图像分块,并根据所述多个图像分块和当前相机的位置信息,确定三维空间中的视锥;

在虚拟空间中获取位于所述视锥中的三维模型的各个椭球;

在虚拟空间中按照预设排序方式将各个椭球进行排序,并将排序后的椭球投影至二维平面,得到投影后的颜色和透明度;

针对二维图像上的各个像素,在虚拟空间中按照投影后的颜色和透明度进行颜色叠加,得到所述像素的目标颜色。

优选的,三维模型的构建过程,包括:

将待建模的空间分解为多个点;其中,每个点对应空间中的一个椭球;每个点的体积不为0;每一个椭球中设置有三维空间坐标向量、四维旋转向量、三维尺度向量、颜色标量和透明度标量;

通过所述三维空间坐标向量、所述四维旋转向量、所述三维尺度向量、所述颜色标量、所述透明度标量和当前相机的位置信息,确定渲染图像;

获取实际采集图像,并将所述渲染图像与所述实际采集图像的差进行缩小,直至渲染图像与实际采集图像的差小于预设阈值,以完成三维模型的构建。

优选的,还包括:

当获取到产品修改需求时,根据所述产品修改需求对三维模型的椭球的属性进行编辑操作;所述编辑操作至少包括去除、移动、旋转、缩放、变色、更改透明度的一种或多种操作。

本申请第二方面公开了一种视频渲染的处理系统,所述系统包括:

数据压缩单元,用于针对预先构建的时间序列上每一帧的三维模型,对所述三维模型进行数据压缩,以将三维模型中的预设类型数据存储至多个二维图像;其中,所述预设类型数据由空间坐标向量、旋转坐标向量、尺度信息和标量确定;

实时渲染单元,用于针对多个二维图像中的各个像素,在虚拟空间中按照预设实时渲染方式对所述像素进行实时渲染,得到目标颜色,更新多个二维图像的当前像素,并返回在虚拟空间中按照预设实时渲染方式对所述像素进行实时渲染这一过程,直至完成多个二维图像中所有像素的渲染,从而完成全息视频的实时渲染;其中,所述预设实时渲染方式由在三维空间的视锥中三维模型的各个椭球的顺序、各个椭球的颜色和各个椭球的透明度确定。

优选的,所述数据压缩单元,包括:

第一获取模块,用于针对预先创建的时间序列上每一帧的预设格式的三维模型,获取所述三维模型的三维空间坐标向量、四维旋转向量、三维尺度向量、颜色标量和透明度标量;

第一存储模块,用于将三维空间坐标向量中的X坐标向量存储至第一图像中的红色通道;

第二存储模块,用于将三维空间坐标向量中的Y坐标向量存储至第一图像中的绿色通道;

第三存储模块,用于将三维空间坐标向量中的Z坐标向量存储至第一图像中的蓝色通道;

第四存储模块,用于将四维旋转向量中的X轴旋转向量存储至第二图像中的红色通道;

第五存储模块,用于将四维旋转向量中的Y轴旋转向量存储至第二图像中的绿色通道;

第六存储模块,用于将四维旋转向量中的Z轴旋转向量存储至第二图像中的蓝色通道;

第七存储模块,用于将四维旋转向量中的旋转四元数的实部向量存储至第二图像中的黑白通道;

第八存储模块,用于将三维尺度向量中椭球在空间的长度存储至第三图像中的红色通道;

第九存储模块,用于将三维尺度向量中椭球在空间的宽度存储至第三图像中的绿色通道;

第十存储模块,用于将三维尺度向量中椭球在空间的高度存储至第三图像中的蓝色通道;

第十一存储模块,用于将颜色标量存储至第四图像中的红色通道;

第十二存储模块,用于将透明度标量存储至第四图像中的绿色通道。

优选的,包括:

划分模块,用于针对多个二维图像,在虚拟空间中将所述二维图像划分为多个图像分块,并根据所述多个图像分块和当前相机的位置信息,确定三维空间中的视锥;

第二获取模块,用于在虚拟空间中获取位于所述视锥中的三维模型的各个椭球;

排序投影模块,用于在虚拟空间中按照预设排序方式将各个椭球进行排序,并将排序后的椭球投影至二维平面,得到投影后的颜色和透明度;

叠加模块,用于针对二维图像上的各个像素,在虚拟空间中按照投影后的颜色和透明度进行颜色叠加,得到所述像素的目标颜色。

优选的,三维模型的构建过程的数据压缩单元,包括:

分解模块,用于将待建模的空间分解为多个点;其中,每个点对应空间中的一个椭球;每个点的体积不为0;每一个椭球中设置有三维空间坐标向量、四维旋转向量、三维尺度向量、颜色标量和透明度标量;

确定模块,用于通过所述三维空间坐标向量、所述四维旋转向量、所述三维尺度向量、所述颜色标量、所述透明度标量和当前相机的位置信息,确定渲染图像;

第三获取模块,用于获取实际采集图像,并将所述渲染图像与所述实际采集图像的差进行缩小,直至渲染图像与实际采集图像的差小于预设阈值,以完成三维模型的构建。

优选的,还包括:

操作单元,用于当获取到产品修改需求时,根据所述产品修改需求对三维模型的椭球的属性进行编辑操作;所述编辑操作至少包括去除、移动、旋转、缩放、变色、更改透明度的一种或多种操作。

经由上述技术方案可知,本申请公开了一种视频渲染的处理方法及系统,针对预先构建的时间序列上每一帧的三维模型,对三维模型进行数据压缩,以将三维模型中的预设类型数据存储至多个二维图像,其中,预设类型数据由空间坐标向量、旋转坐标向量、尺度信息和标量确定,针对多个二维图像中的各个像素,在虚拟空间中按照预设实时渲染方式对像素进行实时渲染,得到目标颜色,更新多个二维图像的当前像素,并返回在虚拟空间中按照预设实时渲染方式对像素进行实时渲染这一过程,直至完成多个二维图像中所有像素的渲染,从而完成全息视频的实时渲染,其中,预设实时渲染方式由在三维空间的视锥中三维模型的各个椭球的顺序、各个椭球的颜色和各个椭球的透明度确定。通过上述方案,无需根据需求逐帧渲染出2D视频供用户观看或者将模型精度极大的降低以低模状态展示,只需对时间序列上每一帧的三维模型进行数据压缩,三维模型以点云模型为基础,每个点对应空间中的一个椭球,对于每个椭球,需要存储的信息包括空间坐标向量、旋转坐标向量、尺度信息和标量,将三维模型进行压缩,即将空间坐标向量、旋转坐标向量、尺度信息和标量存储至二维图像中,由于二维图像占用的空间小,因此可在不降低三维模型质量的前提下,使得长时间全息视频对内存的占用缩小,并通过在视锥中同时对三维模型的二维图像中的各个像素进行渲染,由于是针对时间序列上每一帧的三维模型,因此能完成全息视频的实时渲染,由于三维模型中的每一个椭球被渲染引擎认为是一个独立的空间中的粒子,这一粒子有大小、位置、颜色等属性,渲染引擎将每一个粒子分别渲染并将结果叠加得到目标颜色,即使用粒子的方式在渲染引擎中完成每一帧模型的渲染,实现在低成本,高效率的虚拟空间中全息视频的生产,从而在虚拟空间中提高全息视频的实时渲染的质量和渲染效率。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为本申请实施例公开的视频渲染的处理方法的流程示意图;

图2为本申请实施例公开的三维模型的构建过程的流程示意图;

图3为本申请实施例公开的得到目标颜色的流程示意图;

图4为本申请实施例公开的一种视频渲染的处理系统的结构示意图;

图5为本申请实施例公开的电子设备的结构示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

在本申请中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

由背景技术可知,在虚拟空间中以全息视频的形式展示真实录制的视频的方式需要将每一帧的三维模型逐个导入渲染引擎,同时需要在每一帧将旧的模型删除再添加新的模型。这一过程对计算机的内存以及运算性能有极高的要求,现有技术中只能根据需求逐帧渲染出2D视频供用户观看或者将模型精度极大的降低以低模状态展示,无法达到在虚拟空间中高质量全息视频的实时渲染的效果。因此,如何在虚拟空间中提高全息视频的实时渲染的质量和效率,是本申请亟需解决的问题。

为了解决上述问题,本申请公开了一种视频渲染的处理方法及系统,无需根据需求逐帧渲染出2D视频供用户观看或者将模型精度极大的降低以低模状态展示,只需对时间序列上每一帧的三维模型进行数据压缩,三维模型以点云模型为基础,每个点对应空间中的一个椭球,对于每个椭球,需要存储的信息包括空间坐标向量、旋转坐标向量、尺度信息和标量,将三维模型进行压缩,即将空间坐标向量、旋转坐标向量、尺度信息和标量存储至二维图像中,由于二维图像占用的空间小,因此可在不降低三维模型质量的前提下,使得长时间全息视频对内存的占用缩小,并通过在视锥中同时对三维模型的二维图像中的各个像素进行渲染,由于是针对时间序列上每一帧的三维模型,因此能完成全息视频的实时渲染,由于三维模型中的每一个椭球被渲染引擎认为是一个独立的空间中的粒子,这一粒子有大小、位置、颜色等属性,渲染引擎将每一个粒子分别渲染并将结果叠加得到目标颜色,即使用粒子的方式在渲染引擎中完成每一帧模型的渲染,实现在低成本,高效率的虚拟空间中全息视频的生产,从而在虚拟空间中提高全息视频的实时渲染的质量和渲染效率。具体实现方式通过下述实施例具体进行说明。

参考图1所示,为本申请实施例公开的一种视频渲染的处理方法,该方法主要包括如下步骤:

S101:针对预先构建的时间序列上每一帧的三维模型,对三维模型进行数据压缩,以将三维模型中的预设类型数据存储至多个二维图像;其中,预设类型数据由空间坐标向量P(X,Y,Z)、旋转坐标向量Q(q

在S101中,针对预先构建的时间序列上每一帧的三维模型,通过数据压缩模块对三维模型进行数据压缩,以将三维模型中的预设类型数据存储至多个二维图像。

其中,X为空间坐标的X轴;Y为空间坐标的Y轴;Z为空间坐标的Z轴。

旋转坐标向量即旋转信息,用于表征椭球在空间中的选择,使用选择四元数表示。q

尺度信息S(S

标量至少包括颜色标量和透明度标量。

本方案的三维模型以点云模型为基础,将待建模的空间分解为大量空间中的点,每个点对应空间中的一个椭球,每个点的体积不为0。其中,点云模型是当前一种主流的三维模型表示方法。

需要说明的是,多个二维图像的所有像素点的数量大于等于三维模型的椭球数量。

多个二维图像至少包括第一图像、第二图像、第三图像和第四图像。

第一图像包括红色通道(R通道)、绿色通道(G通道)和蓝色通道(B通道),第一图像用于存储三维空间坐标向量。

第二图像包括红色通道、绿色通道、蓝色通道和黑白通道(A通道),第二图像用于存储四维旋转向量。

第三图像包括红色通道、绿色通道和蓝色通道,第三图像用于存储三维尺度向量。

第四图像包括红色通道和绿色通道,第四图像用于存储颜色标量和透明度标量。

在空间中首先通过现有的快速但不够精确的三维重建算法重建出空间的点云模型,这一点云模型的每一个点即初始的空间椭球,初始时仅有位置信息,旋转,尺度,颜色,透明度等均为默认值,对于默认值以及采集数据时所使用的相机的位置,可以得到渲染图像,重建的过程为优化的过程,将渲染图像与实际采集图像的差不断缩小至一定程度后,如达到收敛,重建三维模型完成。

具体三维模型的构建过程如图2所示,图2示出了三维模型的构建过程的流程示意图,三维模型的构建过程主要包括如下步骤:

S201:将待建模的空间分解为多个点;其中,每个点对应空间中的一个椭球;每个点的体积不为0;每一个椭球中设置有三维空间坐标向量、四维旋转向量、三维尺度向量、颜色标量(c)和透明度标量(α)。

其中,对于每一个椭球,除了空间坐标P(X,Y,Z)外,还存储有旋转信息Q(q

S202:通过三维空间坐标向量、四维旋转向量、三维尺度向量、颜色标量、透明度标量和当前相机的位置信息,确定渲染图像。

S203:获取实际采集图像,并将渲染图像与实际采集图像的差进行缩小,直至渲染图像与实际采集图像的差小于预设阈值,以完成三维模型的构建。

其中,实际采集图像可由相机等设备采集到的图像,图像的类型包括但不限于RGB色彩模式图像。

预设阈值由实际情况进行设置,本申请不做具体限定。

可选的,将渲染图像与实际采集图像的差进行缩小的次数大于预设次数,以完成三维模型的构建。

预设次数由实际情况进行设置,本申请不做具体限定。

通过上述三维模型构建的方法可以显示、优化三维空间模型中的每一个点,建模效果更好。

与点云模型相同,三维模型中的每个椭球均包含三维空间坐标向量、四维旋转向量、三维尺度向量、颜色、透明度等属性。使用这一模型格式来表征三维模型的序列的好处如下:

(1)对于整个时间序列,椭球的数量可以保持不变,更新时只需逐个更新空间坐标向量中的坐标、旋转向量、三维尺度向量、颜色、透明度等属性即可。具体的,对于时间序列上的每一帧,均有一个独立的三维模型,从一帧过渡到下一帧时,由于总椭球数不变,只需更改每个椭球的属性即可,所有数据从第一帧到最后一帧无需增删,从而提高更新效率。

(2)传统的点云模型是有很多有位置和颜色信息但是没有大小的点组成的,在这样的模型中每个点是没有物理意义的,在动态的场景下,不同帧之间的模型数据中的点无法一一对应,因此难以统一的编辑,同时不同帧的点的数量也不同,无法统一将信息进行压缩存储。而本方案在动态的场景下,不同帧之间的模型数据中的点一一对应,因此可统一编辑,每个椭球均有确定的物理区域进行表征,有助于后期的模型编辑,将统一将信息进行压缩存储,即将空间坐标向量、旋转坐标向量、尺度信息和标量存储至二维图像中,由于二维图像占用的空间小,因此可在不降低三维模型质量的前提下,使得长时间全息视频对内存的占用缩小。

具体针对预先构建的时间序列上每一帧的三维模型,对三维模型进行数据压缩,以将三维模型中的预设类型数据存储至多个二维图像的过程,如A1-A13所示。

A1:针对预先创建的时间序列上每一帧的预设格式的三维模型,获取三维模型的三维空间坐标向量、四维旋转向量、三维尺度向量、颜色标量和透明度标量。

A2:将三维空间坐标向量中的X坐标向量存储至第一图像中的红色通道。

A3:将三维空间坐标向量中的Y坐标向量存储至第一图像中的绿色通道。

A4:将三维空间坐标向量中的Z坐标向量存储至第一图像中的蓝色通道。

A5:将四维旋转向量中的X轴旋转向量存储至第二图像中的红色通道。

A6:将四维旋转向量中的Y轴旋转向量存储至第二图像中的绿色通道。

A7:将四维旋转向量中的Z轴旋转向量存储至第二图像中的蓝色通道。

A8:将四维旋转向量中的旋转四元数的实部向量(即q

A9:将三维尺度向量中椭球在空间的长度存储至第三图像中的红色通道。

A10:将三维尺度向量中椭球在空间的宽度存储至第三图像中的绿色通道。

A11:将三维尺度向量中椭球在空间的高度存储至第三图像中的蓝色通道。

A12:将颜色标量存储至第四图像中的红色通道。

A13:将透明度标量存储至第四图像中的绿色通道。

通过上述A1-A13完成逐帧三维模型的数据采集和数据格式的储存。

对于上述的三维模型,由于一个典型的高精度模型大小约为10兆位(Megabit,MB)-100MB,对于一个一分钟,30帧每秒的视频来说,总数据量在~100吉字节(Gigabyte,G)的量级。根据实时渲染的要求,这些三维模型需要同时加载到内存,这对当前个人电脑的计算存储资源而言是不可达到的,因此需要对三维模型进行数据压缩。

现有技术当前模型压缩的主要方法为使用细节层次(Level ofDetail,LOD)进行减面,但这一方式带来的模型质量的下降与压缩程度成正比,难以完成高质量的展示。

因此本方案对三维模型进行数据压缩,以将三维模型中的预设类型数据压缩存储至多个二维图像,对于三维模型的数据格式,即三维模型中每个椭球,需要存储的信息包括三维空间坐标向量、四维旋转向量、三维尺度向量、颜色标量和透明度标量,这些信息可存储至第一图像、第二图像、第三图像和第四图像中。这四张图像的像素点数量大于等于整个三维模型的椭球数量。对于每张图像,其RGBA四个图像分别对应于需要存储的信息:如第一图像的R通道、G通道、B通道分别对应P的三个维度(即X坐标向量、Y坐标向量和Z坐标向量),第二图像的R通道、G通道、B通道和A通道分别对应于R的四个维度(即X轴旋转向量、Y轴旋转向量、Z轴旋转向量和旋转四元数的实部向量),第三图像的R通道、G通道、B通道分别对应于S的三个维度,第四图像的R通道、G通道分别对应于C和α。这四张图像所需的内存近为~1M,对于同样一个一分钟,30帧每秒的视频来说,总数据量在~2G的量级,因此本方案对三维模型进行数据压缩,可以在不降低模型质量的前提下完成个人电脑中加载的需求,从而在不降低模型质量的前提下提高加载效率。此外,还能确保后续实现在低成本,高效率的虚拟空间中全息视频的生产,从而在虚拟空间中提高全息视频的实时渲染的质量和渲染效率。

S102:针对多个二维图像中的各个像素,在虚拟空间中按照预设实时渲染方式对像素进行实时渲染,得到目标颜色,更新多个二维图像的当前像素,并返回在虚拟空间中按照预设实时渲染方式对像素进行实时渲染这一过程,直至完成多个二维图像中所有像素的渲染,从而完成全息视频的实时渲染;其中,预设实时渲染方式由在三维空间的视锥中三维模型的各个椭球的顺序、各个椭球的颜色和各个椭球的透明度确定。

在S102中,针对多个二维图像中的各个像素,通过实时渲染模块在虚拟空间中按照预设实时渲染方式对像素进行渲染,得到目标颜色。

对于三维模型格式,本方案不存在三角面片的概念,因此需要对每个椭球进行渲染。具体的,对每个椭球进行渲染,即针对多个二维图像中每个椭球的各个像素,在虚拟空间中按照预设实时渲染方式对像素进行渲染,得到目标颜色的过程,如图3所示,图3示出了得到目标颜色的流程示意图,具体得到目标颜色主要包括如下步骤:

S301:针对多个二维图像,在虚拟空间中将二维图像划分为多个图像分块,并根据多个图像分块和当前相机的位置信息,确定三维空间中的视锥。

其中,当前相机的位置信息包括相机光心和相机成像平面。

以相机光心为原点,以相机成像平面(本方案中将二维图像划分的每个图像分块)为近平面向无限远处延伸确定三维空间中的视锥。

S302:在虚拟空间中获取位于视锥中的三维模型的各个椭球。

其中,三维模型的椭球数量小于二维图像的所有像素点数量。

在S302中,确定视锥后,依次遍历每个椭球,判断椭球是否在视锥内。

S303:在虚拟空间中按照预设排序方式将各个椭球进行排序,并将排序后的椭球投影至二维平面,得到投影后的颜色和透明度。

需要说明的是,预设排序方式为将获取到的三维椭球按照深度进行排序,即三维空间中椭球距离相机的距离进行排序的方式。

S304:针对二维图像上的各个像素,在虚拟空间中按照投影后的颜色和透明度进行颜色叠加,得到像素(即像素点p)的目标颜色。

具体的,对于像素,其目标颜色的计算过程如公式(1)所示。

其中,C为目标颜色;i为在虚拟空间中按照预设排序方式将各个椭球进行排序的顺序;c为每一个椭球的颜色;α为每一个椭球的透明度;N为所有椭球的数量;i为从1到N的所有椭球的顺序;j为从1到i的椭球。

上述S301-S304对于图像上的不同小块可以进行并行操作,从而提高渲染速度实现实时渲染。

可选的,当获取到产品修改需求时,根据所述产品修改需求对三维模型的椭球的属性进行编辑操作;所述编辑操作至少包括去除、移动、旋转、缩放、变色、更改透明度的一种或多种操作。

对于每一帧,每个椭球均可以独立编辑改变其属性从而完成单帧编辑,包括去除,移动,旋转,缩放,变色,更改透明度等。对于整体视频,同样可按照常规视频剪辑的方式进行剪辑,调色等编辑操作。常规视频剪辑的功能主要是指所有的操作(包括但不限于裁剪、调色等)都可以同时在若干帧中同时进行,不需要逐帧操作,从而提高效率且可保证操作的一致性。

本方案所带来的有益效果如下:

实现低成本、高效率的虚拟空间中全息视频的生产;提升虚拟空间应用的沉浸感和体验;拓展虚拟空间应用的用户群体。

本方案的使用可以提升用户体验,有助于吸引更多的用户使用元宇宙相关的产品,从而创造经济效益。

在虚拟空间中以全息视频的形式播放现实中真实录制的视频,使用户可以在虚拟空间中漫游时360度的观看高质量、高保真的现实视频,可以极大的增加用户在虚拟空间中的趣味性。本方案旨在提高生产效率降低生产成本,增加虚拟空间等项目制作上的多样性和灵活性。高效且高保真的在虚拟空间中实现真实视频的360度实时渲染,可以极大的提升虚拟空间用户的沉浸感和体验感。

目前在虚拟空间中以全息视频的形式展示真实录制的视频的方式需要将每一帧的三维模型逐个导入渲染引擎,同时需要在每一帧将旧的模型删除再添加新的模型。这一过程对计算机的内存以及运算性能有极高的要求,目前只能根据需求逐帧渲染出2D视频供用户观看或者将模型精度极大的降低以低模状态展示,从而无法达到在虚拟空间中高质量实时渲染的效果。本方案针对上述问题作出如下改进:1、将时间序列上每一帧的三维模型压缩成多个二维图片,从而使得长时间全息视频对内存的占用缩小一个数量级以上;2、使用粒子的方式在渲染引擎中完成每一帧模型的渲染,实现高质量全息视频的实时渲染。

本申请实施例中,无需根据需求逐帧渲染出2D视频供用户观看或者将模型精度极大的降低以低模状态展示,只需对时间序列上每一帧的三维模型进行数据压缩,三维模型以点云模型为基础,每个点对应空间中的一个椭球,对于每个椭球,需要存储的信息包括空间坐标向量、旋转坐标向量、尺度信息和标量,将三维模型进行压缩,即将空间坐标向量、旋转坐标向量、尺度信息和标量存储至二维图像中,由于二维图像占用的空间小,因此可在不降低三维模型质量的前提下,使得长时间全息视频对内存的占用缩小,并通过在视锥中同时对三维模型的二维图像中的各个像素进行渲染,由于是针对时间序列上每一帧的三维模型,因此能完成全息视频的实时渲染,由于三维模型中的每一个椭球被渲染引擎认为是一个独立的空间中的粒子,这一粒子有大小、位置、颜色等属性,渲染引擎将每一个粒子分别渲染并将结果叠加得到目标颜色,即使用粒子的方式在渲染引擎中完成每一帧模型的渲染,实现在低成本,高效率的虚拟空间中全息视频的生产,从而在虚拟空间中提高全息视频的实时渲染的质量和渲染效率。

基于上述实施例图1公开的一种视频渲染的处理方法,本申请实施例还对应公开了一种视频渲染的处理系统,如图4所示,该视频渲染的处理系统包括:

数据压缩单元401,用于针对预先构建的时间序列上每一帧的三维模型,对三维模型进行数据压缩,以将三维模型中的预设类型数据存储至多个二维图像;其中,预设类型数据由空间坐标向量、旋转坐标向量、尺度信息和标量确定;

实时渲染单元402,用于针对多个二维图像中的各个像素,在虚拟空间中按照预设实时渲染方式对像素进行实时渲染,得到目标颜色,更新多个二维图像的当前像素,并返回在虚拟空间中按照预设实时渲染方式对像素进行实时渲染这一过程,直至完成多个二维图像中所有像素的渲染,从而完成全息视频的实时渲染;其中,预设实时渲染方式由在三维空间的视锥中三维模型的各个椭球的顺序、各个椭球的颜色和各个椭球的透明度确定。

进一步的,多个二维图像包括第一图像、第二图像、第三图像和第四图像,数据压缩单元401,包括:

第一获取模块,用于针对预先创建的时间序列上每一帧的预设格式的三维模型,获取所述三维模型的三维空间坐标向量、四维旋转向量、三维尺度向量、颜色标量和透明度标量;

第一存储模块,用于将三维空间坐标向量中的X坐标向量存储至第一图像中的红色通道;

第二存储模块,用于将三维空间坐标向量中的Y坐标向量存储至第一图像中的绿色通道;

第三存储模块,用于将三维空间坐标向量中的Z坐标向量存储至第一图像中的蓝色通道;

第四存储模块,用于将四维旋转向量中的X轴旋转向量存储至第二图像中的红色通道;

第五存储模块,用于将四维旋转向量中的Y轴旋转向量存储至第二图像中的绿色通道;

第六存储模块,用于将四维旋转向量中的Z轴旋转向量存储至第二图像中的蓝色通道;

第七存储模块,用于将四维旋转向量中的旋转四元数的实部向量存储至第二图像中的黑白通道;

第八存储模块,用于将三维尺度向量中椭球在空间的长度存储至第三图像中的红色通道;

第九存储模块,用于将三维尺度向量中椭球在空间的宽度存储至第三图像中的绿色通道;

第十存储模块,用于将三维尺度向量中椭球在空间的高度存储至第三图像中的蓝色通道;

第十一存储模块,用于将颜色标量存储至第四图像中的红色通道;

第十二存储模块,用于将透明度标量存储至第四图像中的绿色通道。

进一步的,实时渲染单元402,包括:

划分模块,用于针对多个二维图像,在虚拟空间中将二维图像划分为多个图像分块,并根据多个图像分块和当前相机的位置信息,确定三维空间中的视锥;

第二获取模块,用于在虚拟空间中获取位于视锥中的三维模型的各个椭球;其中,三维模型的椭球数量小于二维图像的所有像素点数量;

排序投影模块,用于在虚拟空间中按照预设排序方式将各个椭球进行排序,并将排序后的椭球投影至二维平面,得到投影后的颜色和透明度;

叠加模块,用于针对二维图像上的各个像素,在虚拟空间中按照投影后的颜色和透明度进行颜色叠加,得到像素的目标颜色。

进一步的,三维模型的构建过程的数据压缩单元401,包括:

分解模块,用于将待建模的空间分解为多个点;其中,每个点对应空间中的一个椭球;每个点的体积不为0;每一个椭球中设置有三维空间坐标向量、四维旋转向量、三维尺度向量、颜色标量和透明度标量;

确定模块,用于通过三维空间坐标向量、四维旋转向量、三维尺度向量、颜色标量、透明度标量和当前相机的位置信息,确定渲染图像;

第三获取模块,用于获取实际采集图像,并将渲染图像与实际采集图像的差进行缩小,直至渲染图像与实际采集图像的差小于预设阈值,以完成三维模型的构建。

进一步的,视频渲染的处理系统还包括:

操作单元,用于当获取到产品修改需求时,根据产品修改需求对三维模型的椭球的属性进行编辑操作;编辑操作至少包括去除、移动、旋转、缩放、变色、更改透明度的一种或多种操作。

本申请实施例中,无需根据需求逐帧渲染出2D视频供用户观看或者将模型精度极大的降低以低模状态展示,只需对时间序列上每一帧的三维模型进行数据压缩,三维模型以点云模型为基础,每个点对应空间中的一个椭球,对于每个椭球,需要存储的信息包括空间坐标向量、旋转坐标向量、尺度信息和标量,将三维模型进行压缩,即将空间坐标向量、旋转坐标向量、尺度信息和标量存储至二维图像中,由于二维图像占用的空间小,因此可在不降低三维模型质量的前提下,使得长时间全息视频对内存的占用缩小,并通过在视锥中同时对三维模型的二维图像中的各个像素进行渲染,由于是针对时间序列上每一帧的三维模型,因此能完成全息视频的实时渲染,由于三维模型中的每一个椭球被渲染引擎认为是一个独立的空间中的粒子,这一粒子有大小、位置、颜色等属性,渲染引擎将每一个粒子分别渲染并将结果叠加得到目标颜色,即使用粒子的方式在渲染引擎中完成每一帧模型的渲染,实现在低成本,高效率的虚拟空间中全息视频的生产,从而在虚拟空间中提高全息视频的实时渲染的质量和渲染效率。

本申请实施例还提供了一种存储介质,所述存储介质包括存储的指令,其中,在所述指令运行时控制所述存储介质所在的设备执行如上述视频渲染的处理方法。

本申请实施例还提供了一种电子设备,其结构示意图如图5所示,具体包括存储器501,以及一个或者一个以上的指令502,其中一个或者一个以上指令502存储于存储器501中,且经配置以由一个或者一个以上处理器503执行所述一个或者一个以上指令502执行上述视频渲染的处理方法。

对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。

需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于系统类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

本申请各实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。

最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。

对所公开的实施例的上述说明,使本领域技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

以上所述仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。

相关技术
  • 一种视频文件处理方法、终端、服务器以及系统
  • 一种视频图像处理方法、装置及系统
  • 一种视频会议的处理方法和系统
  • 一种视频录像处理方法、系统、芯片及存储装置
  • 用于氛围灯渲染的实时可变刷新率的视频处理方法和系统
  • 视频图像的图层渲染处理方法及其系统
技术分类

06120116679642