一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

用于点云属性编解码的信道间预测和变换的技术和装置的制作方法

2021-12-14 23:17:00 来源:中国专利 TAG:

用于点云属性编解码的信道间预测和变换的技术和装置
1.交叉引用
2.本技术要求于2019年10月10日提交的美国临时专利申请第62/913,495号和于2020年9月28日提交的美国专利申请第17/034,896号的优先权,将这两个申请的全部内容结合在本技术中。
技术领域
3.与实施例一致的方法和设备涉及使用基于图形的点云压缩(g

pcc,graph

based point cloud compression)的视频编码和解码、执行相同操作的视频编码器和解码器,尤其涉及点云样本的属性信息的编解码,该编解码包括使用信道间预测和变换。


背景技术:

4.世界的高级三维(3d,three dimensional)表示使更加沉浸式的互动和交流成为可能,并且还允许机器理解、解释和导航我们的世界。3d点云已经成为表现此类信息的一种实现方法。已经确定了许多与点云数据相关联的用例,并且已经制定了点云表示和压缩的相应要求。
5.点云是3d空间中的一组点,每个点具有相关联的属性,例如颜色、材料属性等。点云可用于将对象或场景重建为这些点的组合。它们可以在各种设置中使用多个相机和深度传感器进行采集,并且可以由数千到数十亿的点组成,以便真实地表示重建的场景。
6.需要压缩技术来减少表示点云的数据量。因此,需要对点云进行有损压缩的技术,以用于实时通信和六自由度(6dof,six degrees of freedom)虚拟现实。另外,在自动驾驶和文化遗产应用等的动态映射的背景下,寻求用于无损点云压缩的技术。运动图片专家组(mpeg,moving picture experts group)已经开始致力于解决诸如颜色和反射率的几何形状和属性的压缩、可缩放/渐进编解码、对随时间捕获的点云序列进行编码,以及对点云子集的随机存取的标准。


技术实现要素:

7.根据实施例,由至少一个处理器执行一种对点云属性编解码的方法,所述方法包括:获取对应于点云的已编码码流;确定是否使用信道间去相关的信道间工具对所述已编码码流进行编码;基于确定使用所述信道间工具对所述已编码码流进行编码,使用所述信道间工具对所述已编码码流进行解码,以重建对应于所述点云的属性信号;以及使用重建属性信号来重建所述点云。
8.根据实施例,一种对点云属性编解码的装置包括至少一个存储器,该存储器用于存储计算机程序代码;至少一个处理器用于访问至少一个存储器并根据所述计算机程序代码操作,所述计算机程序代码包括第一获取代码,用于使所述至少一个处理器获取对应于点云的已编码码流;确定代码,用于使所述至少一个处理器确定是否使用信道间去相关的信道间工具对所述已编码码流进行编码;解码代码,用于使所述至少一个处理器基于确定
使用所述信道间工具对所述已编码码流进行编码,使用所述信道间工具对所述已编码码流进行解码以重建对应于所述点云的属性信号;以及重建代码,用于使所述至少一个处理器使用重建属性信号来重建所述点云。
9.根据实施例,一种存储指令的非易失性计算机可读存储介质,所述指令包括一个或多个指令,所述一个或多个指令用于被配置为由用于点云属性编解码的设备的一个或多个处理器执行时,使所述一个或多个处理器执行如下操作:获取对应于点云的已编码码流;确定是否使用信道间去相关的信道间工具对所述已编码码流进行编码;基于确定使用所述信道间工具对所述已编码码流进行编码,使用所述信道间工具对所述已编码码流进行解码,以重建对应于所述点云的属性信号;以及使用重建属性信号来重建所述点云。
附图说明
10.图1是根据实施例的通信系统100的框图。
11.图2是根据实施例g

pcc压缩器和g

pcc解压缩器在环境中的布置示意图。
12.图3是根据实施例的g

pcc压缩器的功能框图。
13.图4是根据实施例的g

pcc解压缩器的功能框图。
14.图5是图示了在g

pcc中生成细节层次(lod,levels of detail)的方法的示意图。
15.图6是g

pcc中p/u提升的架构图。
16.图7是图示了根据实施例的点云属性编解码的方法700的流程图。
17.图8是根据实施例的用于点云属性编解码的装置800的框图。
18.图9是适合于实施本技术实施例的计算机系统的示意图。
具体实施方式
19.各实施例涉及当前g

pcc提升设计,以及扩展或改进提升设计以对提升系数进行无损编解码的方法。此外,各实施例涉及在当前g

pcc提升设计下对属性进行的可伸缩编解码(scalable coding)。这些实施例可应用于为点云设计的类似编解码器。
20.图1是根据实施例的通信系统100的框图。通信系统100可包括至少两个终端110和120,它们通过网络150相互连接。为了单向传输数据,第一终端110可对本地位置的点云数据进行编码,以通过网络150传输至第二终端120。第二终端120可从网络150接收第一终端110的已编码的点云数据,对已编码的点云数据进行解码,并显示已解码的点云数据。单向数据传输在媒体服务应用等中是常见的。
21.图1还图示了第二对终端130和140,提供第二对终端130和140以支持例如在视频会议期间可能发生的已编码点云数据的双向传输。为了双向传输数据,每个终端130或140可对本地位置采集的点云数据进行编码,以通过网络150传输至另一终端。每个终端130或140还可接收由另一终端传输的已编码的点云数据,可对已编码的点云数据进行解码,并且可在本地显示设备上显示已解码的点云数据。
22.在图1中,终端110

240可图示为服务器、个人计算机和智能电话,但是各实施例的原理不限于此。这些实施例应用于膝上型计算机、平板计算机、媒体播放器和/或专用视频会议设备。网络150表示在终端110

140之间传送已编码点云数据的任意数量网络,例如包括有线和/或无线通信网络。通信网络150可在电路交换和/或分组交换信道中交换数据。代
表性网络包括电信网络、局域网、广域网和/或因特网。为了本讨论的目的,网络150的体系结构和拓扑结构对于各实施例的操作可以不重要,除非下文有说明。
23.图2是根据实施例g

pcc压缩器203和g

pcc解压缩器210在环境中的布置示意图。所公开的主题同样可应用于其他支持点云的应用,例如包括视频会议、数字电视、在包括cd、dvd、记忆卡等数字介质上存储压缩点云数据,等等。
24.流媒体系统200可包括采集子系统213,采集子系统213可包括点云源201(例如数码相机),例如其可以创建未压缩的点云数据202。具有更大的数据量的点云数据202,可由耦合至点云源201的g

pcc压缩器203处理。g

pcc压缩器203可包括硬件、软件或其组合,以实现或执行下文将更详细描述的所公开主题的各方面。具有更小的数据量的已编码的点云数据204,可存储在流媒体服务器205上以供将来使用。一个或多个流媒体客户端206和208可访问流媒体服务器205,以检索已编码点云数据204的副本207和209。客户端206可包括g

pcc解压缩器210,g

pcc解压缩器210对已编码的点云数据的输入副本207进行解码,并且创建可在显示器212或其他呈现设备(未示出)上呈现的输出点云数据211。在一些流媒体系统中,可根据视频编解码/压缩标准对已编码的点云数据204、207和209进行编码。这些标准的示例包括由mpeg为g

pcc开发的标准。
25.图3是根据实施例的g

pcc压缩器203的功能框图。
26.如图3所示,g

pcc压缩器203包括量化器305、点去除模块310、八叉树编码器315、属性传送模块320、lod生成器325、预测模块330、量化器335和算术编码器340。
27.量化器305接收输入点云中各点的位置。位置可以是(x,y,z)坐标。量化器305例如还使用缩放算法和/或移位算法来量化接收到的位置。
28.点去除模块310从量化器305接收已量化位置,从接收到的已量化位置中去除或滤除重复位置。
29.八叉树编码器315从点去除模块310接收过滤后的位置,使用八叉树编码算法将接收到的过滤后的位置编码成表示输入点云的八叉树的占用符号。对应于八叉树的输入点云的边界框可以是任何3d形状,例如立方体。
30.八叉树编码器315还基于对过滤后的位置进行的编码,对接收到的过滤后的位置进行重新排序。
31.属性传送模块320接收输入点云中各点的属性。属性例如可包括每个点的颜色或rgb值、和/或反射率。属性传送模块320还从八叉树编码器315接收重新排序后的位置。
32.属性传送模块320还根据接收到的重新排序后的位置,对接收到的属性进行更新。例如,属性传送模块320可对接收到的属性执行预处理算法中的一个或多个算法;预处理算法例如包括,对接收到的属性进行加权平均计算以及根据接收到的属性插入附加属性。属性传送模块320还将更新后的属性传送至预测模块330。
33.lod生成器325从八叉树编码器315接收重新排序后的位置,并获取所接收到的重新排序后的位置对应的每个点的lod。每个lod可视为一组点,可基于每个点的距离获取。
34.预测模块330从属性传送模块320接收被传送的属性,从lod生成器325接收所获取的各点的lod。预测模块330基于所接收的各点的lod,按照顺序对接收到的属性执行预测算法,从而分别获取接收到的属性的预测残差(值)。预测算法可包括各种预测算法(例如插值、加权平均计算、最近邻算法和rdo)中的任何一种算法。
35.量化器335从预测模块330接收所获取的预测残差,并使用例如缩放算法和/或移位算法来量化所接收的预测残差。
36.算术编码器340从八叉树编码器315接收占用符号,并且从量化器335接收已量化的预测残差。算术编码器340对接收到的占用符号(occupancy symbol)和已量化的预测残差执行算术编码,以获取压缩码流。算术编码可包括各种熵编码算法(例如,上下文自适应二进制算术编码)中的任何一种算法。
37.图4是根据实施例的g

pcc解压缩器210的功能框图。
38.如图4所示,g

pcc解压缩器210包括算术解码器405、八叉树解码器410、逆量化器415、lod生成器420、逆量化器425和逆预测模块430。
39.算术解码器405从g

pcc压缩器203接收压缩码流,对接收到的压缩码流执行算术解码以获取占用符号和已量化的预测残差。算术解码可包括各种熵解码算法(例如,上下文自适应二进制算术解码)中的任何一种算法。
40.八叉树解码器410从算术解码器405接收所获取的占用符号,并且使用八叉树解码算法将所接收的占用符号解码成量化位置。
41.逆量化器415从八叉树解码器410接收量化位置,并且使用例如缩放算法和/或移位算法对接收到的量化位置进行逆量化,以获取输入点云中各点的重建位置。
42.lod生成器420从八叉树解码器410接收量化位置,并且获取与所接收的量化位置对应的各点的lod。
43.逆量化器425接收所获取的量化预测残差,并且使用例如缩放算法和/或移位算法对所接收的量化预测残差进行逆量化,以获取重建预测残差。
44.逆预测模块430从逆量化器425接收所获取的重建预测残差,并且从lod生成器420接收所获取的各点的lod。逆预测模块430基于所接收的各点的lod,按照顺序将预测算法运用于所接收的重建预测残差,从而分别获取所接收的重建预测残差的重建属性。预测算法可包括各种预测算法(例如,插值、加权平均计算、最近邻算法和rdo)中的任何一种算法。重建属性属于输入点云中的点。
45.现在将详细描述用于点云属性编解码的信道间预测和变换的方法和装置。这种方法和装置可在上述g

pcc压缩器203,即预测模块430中实施。该方法和装置也可在g

pcc解压缩器210,即逆预测模块430中实施。
46.图5是图示了在g

pcc中生成细节层次(lod,levels of detail)的方法的示意图。
47.参照图5,在当前g

pcc属性编解码中,基于每个3d点(如p0

p9)的距离生成由各3d点的lod(即,组);并且然后按照基于lod的顺序510而不是各3d点的原始顺序505进行预测,从而对每个lod中的各3d点的属性值进行编码。例如,通过计算3d点p0、p5和p4的基于距离的加权平均值来预测3d点p2的属性值,其中,3d点p0、p5和p4的编码或解码先于3d点p2。
48.g

pcc中的当前锚(anchor)方法以如下方式进行。
49.首先,计算3d点的邻域的可变性以检查相邻值的差异程度,并且如果可变性低于阈值,则基于距离的加权平均预测通过基于到当前点i的最近邻的距离,通过使用线性插值来预测属性值(a
i
)
i∈0...k
‑1。设为当前点i的k个最近邻的集合,设为它们的已解
码/重建的属性值和为其到当前点的距离。预测的属性值然后由下式给出:
[0050][0051]
注意,当对属性进行编码时,所有点云的几何位置已经可用。另外,相邻点及其重建属性值在编码器和解码器处均可用,因为使用kd树(k

dimensional tree)结构以便于以相同的方式对每个点进行最近邻搜索。
[0052]
然后,如果可变性高于阈值,则执行率失真优化(rdo,rate

distortion optimized)预测器选择。多个候选预测器或候选预测值是基于生成lod过程中相邻点搜索的结果而创建的。例如,当使用预测对3d点p2的属性值进行编码时,将3d点p2分别到3d点p0、p5和p4的距离的加权平均值设置为等于0的预测器索引。然后,将3d点p2至最近相邻点p4的距离设置为等于1的预测器索引。此外,将从3d点p2分别到下一个最近相邻点p5和p0的距离设置为分别等于2和3的预测器索引,如下表1所示。
[0053]
表1:用于属性编解码的候选预测器样本
[0054][0055][0056]
创建候选预测器之后,通过应用率失真优化过程来选择最佳预测器,并且然后,将所选择的预测器索引映射到截断一元(tu,truncated unary)码,将对该截断的一元码的二进制数进行算术编码。请注意,较短的tu码将分配给在表1中较小的预测器索引。
[0057]
定义预测器候选的最大数目(maxnumcand,maximum number of predictor candidate),并将其编码到属性头中。在当前实现中,maxnumcand被设置为等于numberofnearestneighborsinprediction 1,并将其用于对预测器索引进行编码和解码,所述预测器索引具有截断一元二值化。
[0058]
图6是g

pcc中p/u(prediction/update)提升的架构图。为了便于提升中的预测和更新步骤,必须在分解的每个阶段将信号分割成两组高相关性。在g

pcc中的提升方案中,通过利用lod结构来执行分割,其中期望级别(level)之间具有这种高相关性,并且通过最近邻搜索来构建每个级别以将非均匀点云组织成结构化数据。在级别n的预测/更新(p/u)分解步骤产生细节信号d(n-1)和近似信号a(n-1),其被进一步分解为d(n-2)和a(n-2)。重复执行该步骤,直到获得基本层(base layer)近似信号a(1)。
[0059]
因此,不是对由lod(n),

,lod(1)组成的输入属性信号本身进行编码,而是在提升方案中对d(n-1),d(n-2),

,d(1),a(1)进行编码。注意,高效p/u步骤的应用通常导致
d(n-1),

,d(1)中的稀疏子带“系数”,从而提供变换编码增益优势。
[0060]
当前,上述用于预测变换的基于距离的加权平均预测作为g

pcc中的锚方法(anchor method)用于提升方案中的预测步骤。
[0061]
对于诸如颜色的点云属性,在信道之间存在明显的冗余。
[0062]
为了提高编解码效率,通常将颜色空间转换作为预处理/后处理步骤来执行。作为预处理/后处理步骤的颜色空间转换的一个问题是它们通常缺乏正交性,并且在转换的颜色空间中优化编解码器性能并不一定转化为原始空间中的良好质量。另外,无损颜色变换往往具有扩展的位深度,尤其是在试图以良好的精度近似非整数颜色变换时。这可能是一个依赖于许多实际系统中的实现约束的问题。
[0063]
实施例中有效地执行信道间去相关以提高压缩效率。
[0064]
本文讨论的实施例可以单独使用或以任何顺序组合使用。此外,方法(或实施例)、编码器和解码器中的每一者可以由处理电路(例如,一个或多个处理器或一个或多个集成电路)实施。在一个示例中,一个或多个处理器执行存储在非易失性计算机可读介质中的程序。
[0065]
实施例可以直接涉及以上描述的当前g

pcc预测器设计。这些方法可以应用于为点云设计的类似编解码器。
[0066]
在实施例中,两个方法可以用于避免使用颜色空间变换作为编解码效率的转换工具的上述问题。
[0067]
一种方法使用ycocg

r作为用于g

pcc的dpcm中的预测残差的无损内环路变换(又称预测变换),以在保持接近无损和无损重建的同时进行去相关(decorrelate)信道间依赖性。另一种方法使用另一预测步骤来预测g

pcc的dpcm中的其它信道的残差值。
[0068]
如下示出了根据实施例的ycocg变换,如下面的等式1和等式2所示:
[0069][0070][0071]
作为从ycocg导出的无损变换,正向ycocg

r的示例如下面的等式3到等式6所示:
[0072]
co=r

b
ꢀꢀꢀꢀ
(等式3)
[0073]
t=b (co>>1)
ꢀꢀꢀ
(等式4)
[0074]
cg=g

t
ꢀꢀꢀꢀꢀ
(等式5)
[0075]
y=t (cg>>1)(等式6)
[0076]
反转上述过程的反向ycocg

r的示例如下面的等式7到等式10所示:
[0077]
t=y

(cg>>1)
ꢀꢀꢀ
(等式7)
[0078]
g=cg t;
ꢀꢀꢀꢀꢀ
(等式8)
[0079]
b=t

(co>>1)
ꢀꢀꢀ
(等式9)
[0080]
r=b co
ꢀꢀꢀꢀꢀ
(等式10)
[0081]
当如实施例中所提出的,当将此作为残差变换来应用时,信号r、g和b是由g

pcc中的每个信道预测产生的每个信道的预测残差。
[0082]
在实施例中,去相关多信道信号的另一种方法是使用预测器。例如,使用预测器来预测信道的残差信号,使得对二阶残差进行量化和熵编码,而不是原始残差。
[0083]
对于g

pcc预测设计,根据实施例,一个实例如下示出,其中,粗体部分指示根据实施例的当前tmc3规范的改变。可以引入任何一般形式的线性或非线性预测器函数,以便可能改进这种预测。
[0084]
在下面的示例中,“x”指示信道x信号,“x_pred”指示预测的信道x信号(从g

pcc中的重建相邻样本获得),“x_delta_index”指示信道x的预测残差的量化索引,“x_delta_recon”指示信道x的重建残差,“x_recon”指示重建的信道x信号,并且“x_delta_residual_index”指示来自残差预测的残差的量化索引。
[0085]
包括信道间残差预测的编码过程的示例如下进行:
[0086]
g

信道
[0087]
g_delta_index<

quantize(g

g_pred)
[0088]
g_delta_recon<

inversequantize(g_delta_index)
[0089]
g_recon<

g_pred g_delta_recon
[0090]
entopyencode(g_delta_index)
[0091]
c

信道(

c’可以是r或者b)
[0092]
c_delta_index<

quantize(c

c_pred)
[0093]
c_delta_recon<

inversequantize(c_delta_index)
[0094]
c_delta_residual_index<

quantize(c_delta_recon

g_delta_recon)
[0095]
c_delta_recon<

inversequantize(c_delta_residual_index) g_delta_recon
[0096]
c_recon<

c_pred c_delta_recon
[0097]
entopyencode(c_delta_residual_index)
[0098]
包括信道间残差预测的解码过程的示例如下进行:
[0099]
g

信道
[0100]
g_delta_index<

entropydecode()
[0101]
g_delta_recon<

inversequantize(g_delta_index)
[0102]
g_recon<

g_pred g_delta_recon
[0103]
c

信道(

c’可以是r或者b)
[0104]
c_delta_residual_index<

entropydecode()
[0105]
c_delta_recon<

inversequantize(c_delta_residual_index) g_delta_recon
[0106]
c_recon<

c_pred c_delta_recon
[0107]
与用于g

pcc和类似点云编解码器的信道间残差预测器一致的实施例具有以下优点:例如,解码过程中的变化很小。此外,它不需要任何精心制作的多信道信号模型。进一步,与用于信道间去相关的其它基于无损颜色变换的方法(包括如上所述的环路内残差变换)不同,实施例可以根据豪斯道夫度量(hausdorff metric)控制原始域中信号的保真度。这是因为可以在原始(rgb颜色)空间中执行量化。
[0108]
在实施例中,信道间残差预测器可以与g

pcc工作草案规范一起使用。
[0109]
在属性参数集语法中,可以添加标志以自适应地启用/禁用所提出的信道间残差预测器。下面的表2和表3中示出了属性参数集语法的示例。
[0110]
表2:
[0111][0112]
表2:
[0113][0114]
在一些实施例中,根据属性参数集语义,等于1的“lifting_residual_prediction_enabled_flag”指示属性解码过程执行残差预测。
[0115]
下面根据实施例示出了预测提升解码过程的示例:
[0116]
[0117]
[0118]
[0119][0120]
在上述示例中,j==0可以对应g

信道。
[0121]
下面的实施例可以同样应用于g

pcc中的dpcm预测(又称预测变换)的上下文下的内环路颜色残差变换和颜色残差预测两者。在一些实施例中,这两种技术将被称为信道间工具。
[0122]
在一些实施例中,几种条件检查方法可以用于决定是否将信道间工具应用于当前点。
[0123]
在一些实施例中,为每个最近邻计算三个信道的重建残差值的最大差值。更具体地,解码器可以通过设置的阈值来跟踪在应用信道间工具之后有多少邻域经历了减少的残差量值/方差。特别是当三个重建的残差值相对均匀时,去相关很可能不成功。标志的簿记(bookkeeping)可以用于指示解码时每个点的此类测试的结果。也可以在做出决定时进行多数投票(majority

voting)。
[0124]
在另一实施例中,比较来自相邻点的三个信道的最大绝对差值。当颜色信道之间的值的可变性存在显著差异时,可能难以彼此预测。
[0125]
可以结合任何测量来确定信道间工具的使用,所述测量可以识别来自相邻样本的信道间相关性。
[0126]
在一些实施例中,可以发信号通知图块/条带级(例如,在图块/条带头中)或视频/图片级(例如,在sps/pps中)的标志以启用/禁用所提出的残差变换或预测。该信令可以应用于构成编码单元的点云像素的任何分组。
[0127]
上面讨论的实施例页可以应用于g

pcc的提升方案。由于细节子带系数(detail subband coefficient)可以是来自提升的预测步骤的输出,因此这些可以是预测残差信号,并且在给定相同预测策略的情况下,它们在不同颜色信道之间可能是相似的。
[0128]
对于g

pcc提升设计,根据实施例的一个实例如下所示,其中粗体部分指示根据实施例的当前tmc3规范的改变。可以引入任何一般形式的线性或非线性预测器函数,以便可能改进这种预测。
[0129]
在下面的实例中,“x”指示信道x信号,“x_coeff_index”指示信道x的提升系数的量化索引,“x_coeff_recon”指示信道x的重建提升系数,“x_recon”指示重建的信道x信号,“x_coeff_residual_index”指示来自残差预测的残差的量化索引,“quantweight”指示在g

pcc中使用的加权因子,其在编码器处量化之前以及在解码器处去量化之后应用于提升系数。
[0130]
包括对提升方案的这种扩展的编码过程的示例可以如下进行:
[0131]
g

信道
[0132]
g_coeff_index<

quantize(g)
[0133]
g_coeff_recon<

inversequantize(g_coeff_index)
[0134]
g_recon<

g_coeff_recon/quantweight
[0135]
entopyencode(g_coeff_index)
[0136]
c

信道(

c’可以是r或者b)
[0137]
c_coeff_index<

quantize(c)
[0138]
c_coeff_recon<

inversequantize(c_coeff_index)
[0139]
c_coeff_residual_index<

quantize(c_coeff_recon

g_coeff_recon)
[0140]
c_ceoff_recon<

inversequantize(c_coeff_residual_index) g_coeff_recon
[0141]
c_recon<

c_coeff_recon/quantweight
[0142]
entopyencode(c_coeff_residual_index)
[0143]
包括对提升方案的这种扩展的解码过程的示例可以如下进行:
[0144]
g

信道
[0145]
g_coeff_index<

entropydecode()
[0146]
g_coeff_recon<

inversequantize(g_coeff_index)
[0147]
g_recon<

g_coeff_recon/quantweight
[0148]
c

信道(

c’可以是r或者b)
[0149]
c_coeff_residual_index<

entropydecode()
[0150]
c_coeff_recon<

inversequantize(c_coeff_residual_index) g_coeff_recon
[0151]
c_recon<

c_coeff_recon/quantweight
[0152]
文中讨论的实施例可在适于点云压缩/解压缩的视频编码器或解码器中实施。在实施例中,编码器/解码器可以以硬件、软件或其任意组合来实施,并且软件(如果有的话)可存储在一个或多个非易失性计算机可读介质上。例如,方法(或实施例)、编码器和解码器中的每一个可由处理电路(例如,一个或多个处理器或一个或多个集成电路)来实施。在一个示例中,一个或多个处理器执行存储在非易失性计算机可读介质中的程序。
[0153]
图7是图示了根据实施例的点云属性编解码的方法700的流程图。在一些实施方案中,图7中的一个或多个过程方框可由g

pcc解压缩器210执行。在一些实施方案中,图7中的一个或多个过程方框可由独立于g

pcc解压缩器210或包括g

pcc解压缩器210的另一设备或一组设备(如g

pcc压缩器203)执行。
[0154]
参照图7,在第一方框710中,方法700包括,获取对应于点云的已编码码流。
[0155]
在第二方框720中,方法700包括,确定是否使用信道间去相关的信道间工具对已编码码流进行编码。
[0156]
基于确定使用信道间工具对已编码码流进行编码(方框720处为“是”),方法700在第三方框730中继续进行。在第三方框730中,方法700包括使用信道间工具对已编码码流进行解码以重建对应于点云的属性信号,并且然后继续执行至方框750。
[0157]
基于确定不使用信道间工具对已编码码流进行编码(方框720处为“否”),方法700在第四方框740中继续进行。在第四方框740中,方法700包括在不使用信道间工具的情况下对已编码码流进行解码以重建对应于点云的属性信号,并且然后继续执行至方框750。
[0158]
在第五方框750中,方法700包括使用重建属性信号重建点云。
[0159]
在实施例中,信道间工具可包括环路内颜色残差变换。
[0160]
在实施例中,环路内颜色残差变换可包括ycocg

r变换。
[0161]
在实施例中,信道间工具可包括信道间颜色残差预测器。
[0162]
在实施例中,使用信道间工具对已编码码流进行解码可以包括获取第一颜色信道的重建残差;以及基于第一颜色信道的重建残差获取第二颜色信道的重建残差。
[0163]
在实施例中,基于在已编码码流中发信号通知的标志,确定要使用信道间工具对已编码码流进行编码。
[0164]
在实施例中,基于相邻点的颜色信道的值之间的差值或相邻点的颜色信道的重建残差值之间的差值中的至少一个在已编码码流中设置该标志。
[0165]
在实施例中,方法700还可包括:获取第一颜色信道的重建提升系数;以及基于第一颜色信道的重建提升系数获取第二颜色信道的重建提升系数。
[0166]
尽管图7示出了方法700的示例方框,但是在一些实施方案中,方法700可包括相比图7中描绘的那些方框附加的方框、更少的方框、不同的方框或不同布置的方框。
[0167]
此外,所提出的方法可通过处理电路(例如,一个或多个处理器或一个或多个集成电路)来实施。在示例中,一个或多个处理器执行存储在非易失性计算机可读介质中的程序,以执行所提出的方法中的一个或多个。
[0168]
图8是根据实施例的用于点云属性编解码的装置800的框图。
[0169]
参照图8,装置800包括第一获取代码810、确定代码820、解码代码830和重建代码840。
[0170]
第一获取代码810,用于使至少一个处理器获取对应于点云的已编码码流。
[0171]
确定代码820,用于使至少一个处理器确定是否使用信道间去相关的信道间工具对已编码码流进行编码。
[0172]
解码代码830,用于使至少一个处理器基于确定使用信道间工具对已编码码流进行编码,使用信道间工具对已编码码流进行解码,以重建对应于点云的属性信号。
[0173]
重建代码840,用于使至少一个处理器使用重建属性信号来重建点云。
[0174]
在实施例中,信道间工具可以包括环路内颜色残差变换。
[0175]
在实施例中,环路内颜色残差变换可以包括ycocg

r变换。
[0176]
在实施例中,信道间工具可包括信道间颜色残差预测器。
[0177]
在实施例中,解码代码可包括第二获取代码和第三获取代码,第二获取代码用于使至少一个处理器获取第一颜色信道的重建残差;第三获取代码用于使至少一个处理器基于第一颜色信道的重建残差获取第二颜色信道的重建残差。
[0178]
在实施例中,基于在已编码码流中发信号通知的标志,确定要使用信道间工具对已编码码流进行编码。
[0179]
在实施例中,基于相邻点的颜色信道的值之间的差值或相邻点的颜色信道的重建残差值之间的差值中的至少一个在已编码码流中设置该标志。
[0180]
在实施例中,装置800还可包括第四获取代码和第五获取代码,第四获取代码用于使至少一个处理器获取第一颜色信道的重建提升系数,第五获取代码用于使至少一个处理器基于第一颜色信道的重建提升系数获取第二颜色信道的重建提升系数。
[0181]
上述技术可以通过计算机可读指令实现为计算机软件,并且物理地存储在一个或多个计算机可读介质中。例如,图9示出了计算机系统(900),其适于实现所公开主题的某些实施例。
[0182]
图9为适合于实施本技术实施例的计算机系统的示意图。
[0183]
软件可通过任何合适的机器代码或计算机语言进行编码,通过汇编、编译、链接等机制创建包括指令的代码,所述指令可由计算机中央处理单元(cpu),图形处理单元(gpu)等直接执行或通过译码、微代码等方式执行。
[0184]
所述指令可以在各种类型的计算机或其组件上执行,包括例如个人计算机、平板电脑、服务器、智能手机、游戏设备、物联网设备等。
[0185]
图9所示的用于计算机系统(900)的组件本质上是示例性的,并不用于对实现实施例的计算机软件的使用范围或功能进行任何限制。也不应将组件的配置解释为与计算机系统(900)的示例性实施例中所示的任一组件或其组合具有任何依赖性或要求。
[0186]
计算机系统(900)可以包括某些人机界面输入设备。这种人机界面输入设备可以通过触觉输入(如:键盘输入、滑动、数据手套移动)、音频输入(如:声音、掌声)、视觉输入(如:手势)、嗅觉输入(未示出),对一个或多个人类用户的输入做出响应。所述人机界面设备还可用于捕获某些媒体,气与人类有意识的输入不必直接相关,如音频(例如:语音、音乐、环境声音)、图像(例如:扫描图像、从静止影像相机获得的摄影图像)、视频(例如二维视频、包括立体视频的三维视频)。
[0187]
人机界面输入设备可包括以下中的一个或多个(仅绘出其中一个):键盘(901)、鼠标(902)、触控板(903)、触摸屏(910)、操纵杆(905)、麦克风(906)、扫描仪(907)、照相机(908)。
[0188]
计算机系统(900)还可以包括某些人机界面输出设备。这种人机界面输出设备可以通过例如触觉输出、声音、光和嗅觉/味觉来刺激一个或多个人类用户的感觉。这样的人机界面输出设备可包括触觉输出设备(例如通过触摸屏(910)、操纵杆(905)的触觉反馈,但也可以有不用作输入设备的触觉反馈设备)、音频输出设备(例如,扬声器(909)、耳机(未示出))、视觉输出设备(例如,包括阴极射线管(crt,cathode ray tube)屏幕、液晶(lcd,liquid

crystal display)屏幕、等离子屏幕、有机发光二极管屏(oled,organic light

emitting diode)的屏幕(910),其中每一个都具有或没有触摸屏输入功能、每一个都具有或没有触觉反馈功能——其中一些可通过诸如立体画面输出的手段输出二维视觉输出或三维以上的输出;虚拟现实眼镜(未示出)、全息显示器和放烟箱(未示出))以及打印机(未示出)。图形适配器950生成图像并将图像输出到触摸屏910。
[0189]
计算机系统(900)还可以包括人可访问的存储设备及其相关介质,如包括具有cd/dvd的高密度只读/可重写式光盘(cd/dvd rom/rw)(920)或类似介质(921)的光学介质、拇指驱动器(922)、可移动硬盘驱动器或固体状态驱动器(923),诸如磁带和软盘(未示出)的传统磁介质,诸如安全软件保护器(未示出)等的基于rom/asic/pld的专用设备,等等。
[0190]
本领域技术人员还应当理解,结合所公开的主题使用的术语“计算机可读介质”不包括传输介质、载波或其它瞬时信号。
[0191]
计算机系统(900)还可以包括通往一个或多个通信网络955的接口。例如,通信网络955可以是无线的、有线的、光学的。通信网络955还可为局域网、广域网、城域网、车载网络和工业网络、实时网络、延迟容忍网络等等。网络955还包括以太网、无线局域网、蜂窝网络(gsm、3g、4g、5g、lte等)等局域网、电视有线或无线广域数字网络(包括有线电视、卫星电视、和地面广播电视)、车载和工业网络(包括canbus)等等。网络955通常需要外部网络接口
适配器,用于连接到某些通用数据端口或外围总线(949)(例如,计算机系统(900)的usb端口);其它系统通常通过连接到如下所述的系统总线集成到计算机系统(900)的核心(例如,以太网接口集成到pc计算机系统或蜂窝网络接口集成到智能电话计算机系统)。通过使用这些网络中的任何一个,计算机系统(900)可以与其它实体进行通信。所述通信可以是单向的,仅用于接收(例如,无线电视),单向的仅用于发送(例如can总线到某些can总线设备),或双向的,例如通过局域或广域数字网络到其它计算机系统。上述的每个网络955和网络接口954可使用某些协议和协议栈。
[0192]
上述的人机界面设备、人可访问的存储设备以及网络接口可以连接到计算机系统(900)的核心(940)。
[0193]
核心(940)可包括一个或多个中央处理单元(cpu)(941)、图形处理单元(gpu)(942)、以现场可编程门阵列(fpga)(943)形式的专用可编程处理单元、用于特定任务的硬件加速器(944)等。这些设备以及只读存储器(rom)(945)、随机存取存储器(946)、内部大容量存储器(例如内部非用户可存取硬盘驱动器、固态硬盘等)(947)等可通过系统总线(948)进行连接。在某些计算机系统中,可以以一个或多个物理插头的形式访问系统总线(948),以便可通过额外的中央处理单元、图形处理单元等进行扩展。外围装置可直接附接到核心的系统总线(948),或通过外围总线(949)进行连接。外围总线的体系结构包括外部控制器接口pci、通用串行总线usb等。
[0194]
cpu(941)、gpu(942)、fpga(943)和加速器(944)可以执行某些指令,这些指令组合起来可以构成上述计算机代码。该计算机代码可以存储在rom(945)或ram(946)中。过渡数据也可以存储在ram(946)中,而永久数据可以存储在例如内部大容量存储器(947)中。通过使用高速缓冲存储器可实现对任何存储器设备的快速存储和检索,高速缓冲存储器可与cpu(941)、gpu(942)、大容量存储器(947)、rom(945)、ram(946)等紧密关联。
[0195]
所述计算机可读介质上可具有计算机代码,用于执行各种计算机实现的操作。介质和计算机代码可以是为实施例的目的而特别设计和构造的,也可以是计算机软件领域的技术人员所熟知和可用的介质和代码。
[0196]
作为实施例而非限制,具有体系结构(900)的计算机系统,特别是核心(940),可以作为处理器(包括cpu、gpu、fpga、加速器等)提供执行包含在一个或多个有形的计算机可读介质中的软件的功能。这种计算机可读介质可以是与上述的用户可访问的大容量存储器相关联的介质,以及具有非易失性的核心(940)的特定存储器,例如核心内部大容量存储器(947)或rom(945)。实现本技术的各种实施例的软件可以存储在这种设备中并且由核心(940)执行。根据特定需要,计算机可读介质可包括一个或一个以上存储设备或芯片软件可以使得核心(940)特别是其中的处理器(包括cpu、gpu。该、fpga等)执行本文所述的特定过程或特定过程的特定部分,包括定义存储在ram(946)中的数据结构以及根据软件定义的过程来修改这种数据结构。另外或作为替代,计算机系统可以提供逻辑硬连线或以其它方式包含在电路(例如,加速器(944))中的功能,该电路可以代替软件或与软件一起运行以执行本文所述的特定过程或特定过程的特定部分。在适当的情况下,对软件的引用可以包括逻辑,反之亦然。在适当的情况下,对计算机可读介质的引用可包括存储执行软件的电路(如集成电路(ic)),包含执行逻辑的电路,或两者兼备。实施例包括任何合适的硬件和软件组合。
[0197]
虽然本技术已对多个示例性实施例进行了描述,但实施例的各种变更、排列和各种等同替换均属于本技术的范围内。因此应理解,本领域技术人员能够设计多种系统和方法,所述系统和方法虽然未在本文中明确示出或描述,但其体现了本技术的原则,因此属于本技术的精神和范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献