System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请实施例涉及编解码领域,尤其涉及一种编解码方法及电子设备。
技术介绍
1、体积视频(volumetric video,vv)与以二维的平面视频加上运镜来模拟三维视频的空间感以及全景视频不同,其是采用多个视角合成的三维视频,能够更好的还原三维世界,给用户带来更强的沉浸感,被广泛应用于教育、医疗、娱乐等场景。
2、动态三维网格(three dimentional mesh,3d mesh)是体积视频的一种主要表现形式,在无压缩的情况下传输3d mesh的数据的所需要的码率较大(超过3gbps);因此可以将3d mesh的数据压缩后再传输,以降低传输压力。通常,现有技术先针对同一帧3d mesh采用相同的放缩倍数进行放缩;然后对放缩后的3d mesh的数据进行压缩,但压缩性能较差。
技术实现思路
1、为了解决上述技术问题,本申请提供一种编解码方法及电子设备。该方法中,能够提高针对3d mesh的数据压缩的压缩性能。
2、第一方面,本申请实施例提供一种编码方法,该方法包括:首先,获取三维网格3dmesh的数据,3d mesh由多个三角面片构成,每个三角面片包括三个顶点,3d mesh的数据包括多个顶点的顶点坐标;接着,获取当前顶点对应的放缩参数;随后,基于当前顶点对应的放缩参数,对当前顶点的顶点坐标进行放缩,以得到当前顶点经放缩的顶点坐标;之后,基于当前顶点经放缩的顶点坐标进行预测和补偿,以得到当前顶点对应的残差信息;以及对当前顶点对应的残差信息进行编码,以得到
3、示例性的,顶点在3d mesh上的重要程度,与3d mesh上顶点所在区域的重要程度相关;可以根据顶点所在区域的重要程度,来确定顶点在3d mesh上的重要程度。其中,顶点在3d mesh上的重要程度,与3d mesh上顶点所在区域的重要程度正相关:即3dmesh上顶点所在区域的重要程度越高,该顶点在3d mesh的重要程度越高;反之,3d mesh上顶点所在区域的重要程度越低,顶点在3d mesh的重要程度越低。其中,3d mesh中不同区域的重要程度可以不同,例如,3d mesh为人物的3d mesh,则面部区域的重要程度高于身体区域的重要程度;对应的,位于面部区域的顶点的放缩参数,大于位于身体区域的顶点的放缩参数。
4、示例性的,放缩参数也可以称为放缩因子。
5、示例性的,可以将当前顶点的顶点坐标乘以放缩参数,来实现对当前顶点的顶点坐标进行放缩,以得到当前顶点经放缩的顶点坐标。
6、需要说明的是,第一方面的各个步骤,都是编码过程中的步骤。其中,第一方面中的“编码”可以包括变换、量化以及熵编码等多个步骤,本申请对此不作限制。
7、示例性的,3d mesh可以为动态3d mesh,动态3d mesh及动态3d mesh的数据的生成过程可以如下:可以将多路视频数据(其中,多路视频数据的拍摄视角不同)进行视角合成(例如,采用不同路视频数据中时间戳相同的图像进行视角合成),可以得到合成视频数据;其中,合成视频数据包括多帧图像。接着,针对合成视频数据的每帧图像进行点云化处理,得到合成视频数据的每帧图像对应的3d点云。随后,对合成视频数据的每帧图像对应的3d点云进行mesh化处理,可以得到多帧3d mesh(一帧3d mesh对应合成视频数据中的一帧图像)和每帧3d mesh的数据。
8、示例性的,3d mesh可以为静态3d mesh,静态3d mesh及静态3d mesh的数据的生成过程可以如下:将多张图像(每张图像对应拍摄的角度不同)进行视角合成、点云化和网格化等处理,得到一帧3d mesh和该帧3d mesh的数据。其中,这一帧3d mesh可以称为静态3d mesh。
9、示例性的,3d mesh的数据还可以包括:纹理坐标、纹理贴图和顶点连接关系。
10、示例性的,每帧3d mesh可以包括至少一个3d mesh(一个3d mesh与合成视频数据中一帧图像的一个目标对象对应),每个3d mesh由多个三角面片构成;每个三角面片包括三个顶点,每个顶点的坐标可以称为顶点坐标,顶点坐标是三维坐标(如可以采用(x,y,z)表示)。
11、示例性的,每个3d mesh中的每个三角面片存在对应的纹理贴图;其中,每个3dmesh中的每个三角面片对应的纹理贴图可以相同,也可以不同,本申请对此不作限制。
12、示例性的,每个3d mesh中每个三角面片的每个顶点,可以映射到对应纹理贴图中的一个像素点,该像素点的坐标也就是纹理坐标;其中,纹理坐标是二维坐标(如可以采用(u,v)表示)。
13、示例性的,顶点连接关系是指每个三角面片包含的三个顶点之间的连接关系;其中,每个3d mesh的顶点连接关系可以包括多组,每组顶点连接关系可以包括属于同一个三角面片的三个顶点的索引值。
14、示例性的,除了针对3d mesh的数据中顶点坐标进行编码外,还可以针对3d mesh的数据中纹理坐标、顶点连接关系和纹理贴图进行编码。
15、示例性的,可以按照上述针对顶点坐标的编码方法,对3d mesh的数据中纹理坐标进行编码。
16、示例性的,可以采用edgebreaker算法、tfan等算法针对3d mesh的数据中顶点连接关系进行编码。示例性的,当连续多帧3d mesh包含同一三角面片时,这连续多帧3dmesh的数据包括同一组顶点连接关系;后续编码这连续多帧3d mesh的顶点连接关系的过程中,编码一次该三角面片对应的顶点连接关系即可;这样,能够提高针对顶点连接关系的编码效率。
17、示例性的,可以采用视频/图像编码算法,对纹理贴图进行编解码。
18、应该理解的是,本申请对3d mesh的数据中纹理坐标、顶点连接关系和纹理贴图的编解码方法不作限制。
19、根据第一方面,获取当前顶点对应的放缩参数,包括:获取当前顶点在3d mesh上的重要程度信息;基于当前顶点在3d mesh上的重要程度信息和预设选取条件,确定当前顶点对应的放缩参数。其中,预设选取条件可以预先设置,预设选取条件可以包括预设重要程度信息与预设放缩参数之间的映射关系;这样,可以快速获取到当前顶点的放缩参数。
本文档来自技高网...【技术保护点】
1.一种编码方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述获取当前顶点对应的放缩参数,包括:
3.根据权利要求2所述的方法,其特征在于,所述获取所述当前顶点所在区域的顶点密集程度信息,包括:
4.根据权利要求2所述的方法,其特征在于,所述获取所述当前顶点所在区域的顶点密集程度信息,包括:
5.根据权利要求3所述的方法,其特征在于,所述基于所述一个或多个第二邻近三角面片的面积,确定所述顶点密集程度信息,包括:
6.根据权利要求3所述的方法,其特征在于,所述基于所述一个或多个第二邻近三角面片的面积,确定所述顶点密集程度信息,包括:
7.根据权利要求4所述的方法,其特征在于,所述基于所述一个或多个第一邻近三角面片的面积,确定所述顶点密集程度信息,包括:
8.根据权利要求1至7任一项所述的方法,其特征在于,所述基于所述当前顶点经放缩的顶点坐标进行预测和补偿,以得到所述当前顶点对应的残差信息,包括:
9.根据权利要求8所述的方法,其特征在于,所述基于所述放缩参数
10.根据权利要求9所述的方法,其特征在于,所述基于所述当前顶点对应的放缩参数或所述参考顶点对应的放缩参数,确定归一化放缩参数,包括:
11.根据权利要求9所述的方法,其特征在于,所述基于所述当前顶点对应的放缩参数和所述参考顶点对应的放缩参数,确定归一化放缩参数,包括:
12.根据权利要求1至11任一项所述的方法,其特征在于,所述方法还包括:
13.根据权利要求5或7所述的方法,其特征在于,所述方法还包括:
14.一种解码方法,其特征在于,所述方法包括:
15.根据权利要求14所述的方法,其特征在于,所述获取所述当前顶点对应的放缩参数,包括:
16.根据权利要求15所述的方法,其特征在于,所述获取所述当前顶点所在区域的顶点密集程度信息,包括:
17.根据权利要求16所述的方法,其特征在于,所述基于所述一个或多个第二邻近三角面片的面积,确定所述顶点密集程度信息,包括:
18.根据权利要求16所述的方法,其特征在于,所述基于所述一个或多个第二邻近三角面片的面积,确定所述顶点密集程度信息,包括:
19.根据权利要求14所述的方法,其特征在于,所述获取所述当前顶点对应的放缩参数,包括:
20.根据权利要求14至19任一项所述的方法,其特征在于,所述基于所述当前顶点对应的残差信息进行预测和补偿,以得到所述当前顶点的第一重建坐标,包括:
21.根据权利要求20所述的方法,其特征在于,所述基于所述当前顶点对应的放缩参数和所述当前顶点对应的残差信息,进行预测和补偿,以得到所述当前顶点的第一重建坐标,包括:
22.根据权利要求21所述的方法,其特征在于,所述基于所述当前顶点对应的放缩参数或所述参考顶点对应的放缩参数,确定归一化放缩参数,包括:
23.根据权利要求21所述的方法,其特征在于,所述基于所述当前顶点对应的放缩参数和所述参考顶点对应的放缩参数,确定归一化放缩参数,包括:
24.一种编码装置,其特征在于,所述装置包括:
25.根据权利要求24所述的装置,其特征在于,所述装置还用于执行上述权利要求2至权利要求13中任一项所述的编码方法。
26.一种解码装置,其特征在于,所述装置包括:
27.根据权利要求26所述的装置,其特征在于,所述装置还用于执行上述权利要求15至权利要求23中任一项所述的解码方法。
28.一种码流生成方法,其特征在于,根据如权利要求1至权利要求13任一项所述的编码方法生成码流。
29.一种电子设备,其特征在于,包括:
30.一种芯片,其特征在于,包括一个或多个接口电路和一个或多个处理器;所述接口电路用于从电子设备的存储器接收信号,并向所述处理器发送所述信号,所述信号包括存储器中存储的计算机指令;当所述处理器执行所述计算机指令时,使得所述电子设备执行如权利要求1至权利要求23中任一项所述的方法。
31.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,当所述计算机程序运行在计算机或处理器上时,使得所述计算机或所述处理器执行如权利要求1至权利要求23中任一项所述的方法。
32.一种计算机程序产品,其特征在于,所述计算机程序产品包含计算指令,当所述计算指令被计算...
【技术特征摘要】
1.一种编码方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述获取当前顶点对应的放缩参数,包括:
3.根据权利要求2所述的方法,其特征在于,所述获取所述当前顶点所在区域的顶点密集程度信息,包括:
4.根据权利要求2所述的方法,其特征在于,所述获取所述当前顶点所在区域的顶点密集程度信息,包括:
5.根据权利要求3所述的方法,其特征在于,所述基于所述一个或多个第二邻近三角面片的面积,确定所述顶点密集程度信息,包括:
6.根据权利要求3所述的方法,其特征在于,所述基于所述一个或多个第二邻近三角面片的面积,确定所述顶点密集程度信息,包括:
7.根据权利要求4所述的方法,其特征在于,所述基于所述一个或多个第一邻近三角面片的面积,确定所述顶点密集程度信息,包括:
8.根据权利要求1至7任一项所述的方法,其特征在于,所述基于所述当前顶点经放缩的顶点坐标进行预测和补偿,以得到所述当前顶点对应的残差信息,包括:
9.根据权利要求8所述的方法,其特征在于,所述基于所述放缩参数和所述当前顶点经放缩的顶点坐标,进行预测和补偿,以得到所述当前顶点对应的残差信息,包括:
10.根据权利要求9所述的方法,其特征在于,所述基于所述当前顶点对应的放缩参数或所述参考顶点对应的放缩参数,确定归一化放缩参数,包括:
11.根据权利要求9所述的方法,其特征在于,所述基于所述当前顶点对应的放缩参数和所述参考顶点对应的放缩参数,确定归一化放缩参数,包括:
12.根据权利要求1至11任一项所述的方法,其特征在于,所述方法还包括:
13.根据权利要求5或7所述的方法,其特征在于,所述方法还包括:
14.一种解码方法,其特征在于,所述方法包括:
15.根据权利要求14所述的方法,其特征在于,所述获取所述当前顶点对应的放缩参数,包括:
16.根据权利要求15所述的方法,其特征在于,所述获取所述当前顶点所在区域的顶点密集程度信息,包括:
17.根据权利要求16所述的方法,其特征在于,所述基于所述一个或多个第二邻近三角面片的面积,确定所述顶点密集程度信息,包括:
18.根据权利要求16所述的方法,其特征在于,所述基于所述一个或多个...
【专利技术属性】
技术研发人员:牛犇犇,王培,曹潇然,蔡康颖,
申请(专利权)人:华为技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。