CN114930860B - 点云数据发送装置、点云数据发送方法、点云数据接收装置和点云数据接收方法 - Google Patents

点云数据发送装置、点云数据发送方法、点云数据接收装置和点云数据接收方法 Download PDF

Info

Publication number
CN114930860B
CN114930860B CN202080091844.5A CN202080091844A CN114930860B CN 114930860 B CN114930860 B CN 114930860B CN 202080091844 A CN202080091844 A CN 202080091844A CN 114930860 B CN114930860 B CN 114930860B
Authority
CN
China
Prior art keywords
point cloud
geometric
scalability
spatial
attribute
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
Application number
CN202080091844.5A
Other languages
English (en)
Other versions
CN114930860A (zh
Inventor
许惠桢
吴世珍
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
LG Electronics Inc
Original Assignee
LG Electronics Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by LG Electronics Inc filed Critical LG Electronics Inc
Publication of CN114930860A publication Critical patent/CN114930860A/zh
Application granted granted Critical
Publication of CN114930860B publication Critical patent/CN114930860B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/001Model-based coding, e.g. wire frame
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/40Tree coding, e.g. quadtree, octree
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/184Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being bits, e.g. of the compressed video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/96Tree coding, e.g. quad-tree coding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Image Generation (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

根据实施方式的点云数据发送方法可以包括以下步骤:对点云数据进行编码;并且发送包含点云数据的比特流。根据实施方式的点云数据接收方法可以包括以下步骤:接收包含点云数据的比特流;并且对点云数据进行解码。

Description

点云数据发送装置、点云数据发送方法、点云数据接收装置和 点云数据接收方法
技术领域
实施方式涉及用于处理点云内容的方法和装置。
背景技术
点云内容是由点云表示的内容,点云是属于表示三维空间的坐标系的一组点。点云内容可以表示三维配置的媒体,并且用于提供各种服务,例如虚拟现实(VR)、增强现实(AR)、混合现实(MR)和自驾驶服务。然而,需要数万到数十万的点数据来表示点云内容。因此,需要高效地处理大量点数据的方法。
发明内容
技术问题
实施方式提供了一种用于高效处理点云数据的装置和方法。实施方式提供了用于解决延迟和编码/解码复杂度的点云数据处理方法和装置。
实施方式的技术范围不限于上述技术目的,并且可以扩展到本领域技术人员基于本文公开的全部内容可以推断出的其他技术目的。
技术方案
为了实现这些目的和其他优点,并且根据本公开的目的,如本文所体现和广泛描述的,一种用于发送点云数据的方法可以包括:对点云数据进行编码;以及发送包含点云数据的比特流。在本公开的另一方面,一种用于接收点云数据的方法可以包括:接收包含点云数据的比特流;以及对点云数据进行解码。
有利效果
根据实施方式的装置和方法可以高效率地处理点云数据。
根据实施方式的装置和方法可以提供高质量的点云服务。
根据实施方式的装置和方法可以提供用于提供诸如VR服务和自驾驶服务的通用服务的点云内容。
附图说明
附图被包括以提供本公开的进一步理解,并且被并入本申请中并构成本申请的一部分,附图示出本公开的实施方式并与描述一起用于说明本公开的原理。为了较好地理解下面描述的各种实施方式,应该结合附图参考以下实施方式的描述。贯穿附图将使用相同的标号来表示相同或相似的部分。附图中:
图1示出根据实施方式的示例性点云内容提供系统。
图2是示出根据实施方式的点云内容提供操作的框图。
图3示出根据实施方式的捕获点云视频的示例性处理。
图4示出根据实施方式的示例性点云编码器。
图5示出根据实施方式的体素的示例。
图6示出根据实施方式的八叉树和占用代码的示例。
图7示出根据实施方式的邻居节点图案的示例。
图8示出根据实施方式的各个LOD中的点配置的示例。
图9示出根据实施方式的各个LOD中的点配置的示例。
图10示出根据实施方式的点云解码器。
图11示出根据实施方式的点云解码器。
图12示出根据实施方式的发送装置。
图13示出根据实施方式的接收装置。
图14示出根据实施方式的可与点云数据发送/接收方法/装置结合操作的示例性结构。
图15示出了根据实施方式的几何八叉树和基于该八叉树生成的属性细节级别(LOD);
图16例示了根据实施方式的用于基于LOD来处理比特流的方法;
图17示出了根据实施方式的几何和属性的空间可缩放性结构;
图18例示了根据实施方式的几何编码的操作;
图19例示了根据实施方式的下取整量化和舍入量化;
图20例示了根据实施方式的重构八叉树的中间节点上的几何(位置)的操作;
图21例示了根据实施方式的部分几何解码的操作;
图22示出根据实施方式的点云数据编码器的结构;
图23示出根据实施方式的点云数据解码器的结构;
图24示出根据实施方式的与点云数据相关的比特流的结构;
图25示出了根据实施方式的序列参数集(SPS);
图26示出了根据实施方式的几何参数集(GPS);
图27示出了根据实施方式的拼块参数集(TPS);
图28示出了根据实施方式的几何切片头(GSH);
图29示出了根据实施方式的几何节点;
图30示出了根据实施方式的SPS;
图31示出了根据实施方式的GPS;
图32示出了根据实施方式的TPS;
图33示出根据实施方式的GSH;
图34例示了根据实施方式的用于发送点云数据的方法;以及
图35例示了根据实施方式的用于接收点云数据的方法。
具体实施方式
现在将详细参考本公开的优选实施方式,其示例示出于附图中。下面将参照附图给出的详细描述旨在说明本公开的示例性实施方式,而非示出可根据本公开实现的仅有实施方式。以下详细描述包括具体细节以便提供本公开的彻底理解。然而,对于本领域技术人员而言将显而易见的是,本公开可在没有这些具体细节的情况下实践。
尽管本公开中使用的大多数术语选自本领域中广泛使用的通用术语,但是一些术语由申请人任意选择并且在以下描述中根据需要详细说明其含义。因此,本公开应该基于术语的预期含义而非其简单名称或含义来理解。
图1示出根据实施方式的示例性点云内容提供系统。
图1所示的点云内容提供系统可以包括发送装置10000和接收装置10004。发送装置10000和接收装置10004能够有线或无线通信以发送和接收点云数据。
根据实施方式的点云数据发送装置10000可取得和处理点云视频(或点云内容)并将其发送。根据实施方式,发送装置10000可以包括固定站、基站收发器系统(BTS)、网络、人工智能(AI)装置和/或系统、机器人、AR/VR/XR装置和/或服务器。根据实施方式,发送装置10000可以包括被配置成使用无线电接入技术(例如,5G新RAT(NR)、长期演进(LTE))与基站和/或其它无线装置执行通信的装置、机器人、车辆、AR/VR/XR装置、便携式装置、家用电器、物联网(IoT)装置和AI装置/服务器。
根据实施方式的发送装置10000包括点云视频获取器10001、点云视频编码器10002和/或发送器(或通信模块)10003。
根据实施方式的点云视频获取器10001通过诸如捕获、合成或生成的处理过程来获取点云视频。点云视频是由点云表示的点云内容,点云是位于3D空间中的点集合,并且可被称为点云视频数据。根据实施方式的点云视频可以包括一个或更多个帧。一个帧表示静止图像/画面。因此,点云视频可以包括点云图像/帧/画面,并且可被称为点云图像、帧或画面。
根据实施方式的点云视频编码器10002对所获取的点云视频数据进行编码。点云视频编码器10002可以基于点云压缩编码对点云视频数据进行编码。根据实施方式的点云压缩编码可以包括基于几何的点云压缩(G-PCC)编码和/或基于视频的点云压缩(V-PCC)编码或下一代编码。根据实施方式的点云压缩编码不限于上述实施方式。点云视频编码器10002可输出包含编码的点云视频数据的比特流。比特流可不仅包含编码的点云视频数据,而且包括与点云视频数据的编码有关的信令信息。
根据实施方式的发送器10003发送包含编码的点云视频数据的比特流。根据实施方式的比特流被封装在文件或片段(例如,流片段)中,并且经由诸如广播网络和/或宽带网络的各种网络发送。尽管图中未示出,发送装置10000可以包括被配置成执行封装操作的封装器(或封装模块)。根据实施方式,封装器可以包括在发送器10003中。根据实施方式,文件或片段可经由网络发送到接收装置10004,或者存储在数字存储介质(例如,USB、SD、CD、DVD、蓝光、HDD、SSD等)中。根据实施方式的发送器10003能够经由4G、5G、6G等网络与接收装置10004(或接收器10005)有线/无线通信。另外,发送器可根据网络系统(例如,4G、5G或6G通信网络系统)执行必要的数据处理操作。发送装置10000可按照按需方式发送封装的数据。
根据实施方式的接收装置10004包括接收器10005、点云视频解码器10006和/或渲染器10007。根据实施方式,接收装置10004可以包括被配置成使用无线电接入技术(例如,5G新RAT(NR)、长期演进(LTE))与基站和/或其它无线装置执行通信的装置、机器人、车辆、AR/VR/XR装置、便携式装置、家用电器、物联网(IoT)装置和AI装置/服务器。
根据实施方式的接收器10005从网络或存储介质接收包含点云视频数据的比特流或者封装有比特流的文件/片段。接收器10005可根据网络系统(例如,4G、5G、6G等的通信网络系统)执行必要的数据处理。根据实施方式的接收器10005可以将所接收的文件/片段解封装并输出比特流。根据实施方式,接收器10005可以包括被配置成执行解封装操作的解封装器(或解封装模块)。解封装器可被实现为与接收器10005分离的元件(或组件)。
点云视频解码器10006将包含点云视频数据的比特流解码。点云视频解码器10006可根据点云视频数据被编码的方法(例如,按点云视频编码器10002的操作的逆处理)来将点云视频数据解码。因此,点云视频解码器10006可以通过执行点云解压缩编码(点云压缩的逆处理)来将点云视频数据解码。点云解压缩编码包括G-PCC编码。
渲染器10007渲染解码的点云视频数据。渲染器10007可以通过不仅渲染点云视频数据,而且渲染音频数据来输出点云内容。根据实施方式,渲染器10007可以包括被配置成显示点云内容的显示器。根据实施方式,显示器可被实现为单独的装置或组件而非包括在渲染器10007中。
图中由虚线指示的箭头表示接收装置10004所获取的反馈信息的传输路径。反馈信息是反映与消费点云内容的用户的交互性的信息,并且包括关于用户的信息(例如,头部取向信息、视口信息等)。具体地,当点云内容是用于需要与用户交互的服务(例如,自驾驶服务等)的内容时,反馈信息可被提供给内容发送方(例如,发送装置10000)和/或服务提供商。根据实施方式,反馈信息可在接收装置10004以及发送装置10000中使用,或者可不提供。
根据实施方式的头部取向信息是关于用户的头部位置、取向、角度、运动等的信息。根据实施方式的接收装置10004可以基于头部取向信息来计算视口信息。视口信息可以是关于用户正在观看的点云视频的区域的信息。视点是用户通过其观看点云视频的点,并且可指视口区域的中心点。即,视口是以视点为中心的区域,并且区域的尺寸和形状可由视场(FOV)确定。因此,除了头部取向信息之外,接收装置10004还可以基于装置所支持的垂直或水平FOV来提取视口信息。另外,接收装置10004执行注视分析等以检查用户消费点云的方式、点云视频中用户注视的区域、注视时间等。根据实施方式,接收装置10004可以将包括注视分析结果的反馈信息发送到发送装置10000。根据实施方式的反馈信息可在渲染和/或显示过程中获取。根据实施方式的反馈信息可由包括在接收装置10004中的一个或更多个传感器取得。根据实施方式,反馈信息可由渲染器10007或单独的外部元件(或装置、组件等)取得。图1中的虚线表示发送渲染器10007所取得的反馈信息的过程。点云内容提供系统可以基于反馈信息来处理(编码/解码)点云数据。因此,点云视频数据解码器10006可以基于反馈信息来执行解码操作。接收装置10004可以将反馈信息发送到发送装置10000。发送装置10000(或点云视频数据编码器10002)可以基于反馈信息来执行编码操作。因此,点云内容提供系统可以基于反馈信息有效地处理必要数据(例如,与用户的头部位置对应的点云数据)而非处理(编码/解码)整个点云数据,并将点云内容提供给用户。
根据实施方式,发送装置10000可被称为编码器、发送装置、发送器等,接收装置10004可被称为解码器、接收装置、接收器等。
根据实施方式的图1的点云内容提供系统中(通过获取/编码/传输/解码/渲染的一系列过程)处理的点云数据可被称为点云内容数据或点云视频数据。根据实施方式,点云内容数据可用作涵盖与点云数据有关的元数据或信令信息的概念。
图1所示的点云内容提供系统的元件可由硬件、软件、处理器和/或其组合实现。
图2是示出根据实施方式的点云内容提供操作的框图。
图2的框图示出图1中描述的点云内容提供系统的操作。如上所述,点云内容提供系统可以基于点云压缩编码(例如,G-PCC)来处理点云数据。
根据实施方式的点云内容提供系统(例如,点云发送装置10000或点云视频获取器10001)可获取点云视频(20000)。点云视频由属于用于表达3D空间的坐标系的点云表示。根据实施方式的点云视频可以包括Ply(Polygon文件格式或Stanford Triangle格式)文件。当点云视频具有一个或更多个帧时,所获取的点云视频可以包括一个或更多个Ply文件。Ply文件包含诸如点几何和/或属性的点云数据。几何包括点的位置。各个点的位置可由表示三维坐标系(例如,由X、Y和Z轴组成的坐标系)的参数(例如,X、Y和Z轴的值)表示。属性包括点的属性(例如,关于各个点的纹理、颜色(YCbCr或RGB)、反射率r、透明度等的信息)。点具有一个或更多个属性。例如,点可具有颜色属性或者颜色和反射率两个属性。根据实施方式,几何可被称为位置、几何信息、几何数据等,并且属性可被称为属性、属性信息、属性数据等。点云内容提供系统(例如,点云发送装置10000或点云视频获取器10001)可从与点云视频获取过程有关的信息(例如,深度信息、颜色信息等)取得点云数据。
根据实施方式的点云内容提供系统(例如,发送装置10000或点云视频编码器10002)可对点云数据进行编码(20001)。点云内容提供系统可以基于点云压缩编码对点云数据进行编码。如上所述,点云数据可以包括点的几何和属性。因此,点云内容提供系统可执行对几何进行编码的几何编码并输出几何比特流。点云内容提供系统可执行对属性进行编码的属性编码并输出属性比特流。根据实施方式,点云内容提供系统可以基于几何编码来执行属性编码。根据实施方式的几何比特流和属性比特流可被复用并作为一个比特流输出。根据实施方式的比特流还可包含与几何编码和属性编码有关的信令信息。
根据实施方式的点云内容提供系统(例如,发送装置10000或发送器10003)可发送编码的点云数据(20002)。如图1所示,编码的点云数据可由几何比特流和属性比特流表示。另外,编码的点云数据可与点云数据的编码相关的信令信息(例如,与几何编码和属性编码有关的信令信息)一起以比特流的形式发送。点云内容提供系统可以将承载编码的点云数据的比特流封装并以文件或片段的形式将其发送。
根据实施方式的点云内容提供系统(例如,接收装置10004或接收器10005)可接收包含编码的点云数据的比特流。另外,点云内容提供系统(例如,接收装置10004或接收器10005)可以将比特流解复用。
点云内容提供系统(例如,接收装置10004或点云视频解码器10005)可以将比特流中发送的编码的点云数据(例如,几何比特流、属性比特流)解码。点云内容提供系统(例如,接收装置10004或点云视频解码器10005)可以基于比特流中包含的与点云视频数据的编码有关的信令信息将点云视频数据解码。点云内容提供系统(例如,接收装置10004或点云视频解码器10005)可以将几何比特流解码以重构点的位置(几何)。点云内容提供系统可以通过基于重构的几何对属性比特流进行解码来重构点的属性。点云内容提供系统(例如,接收装置10004或点云视频解码器10005)可根据重构的几何和解码的属性基于位置来重构点云视频。
根据实施方式的点云内容提供系统(例如,接收装置10004或渲染器10007)可渲染解码的点云数据(20004)。点云内容提供系统(例如,接收装置10004或渲染器10007)可使用各种渲染方法来渲染通过解码过程解码的几何和属性。点云内容中的点可被渲染为具有特定厚度的顶点、以对应顶点位置为中心的具有特定最小尺寸的立方体或者以对应顶点位置为中心的圆。渲染的点云内容的全部或部分通过显示器(例如,VR/AR显示器、一般显示器等)提供给用户。
根据实施方式的点云内容提供系统(例如,接收装置10004)可取得反馈信息(20005)。点云内容提供系统可以基于反馈信息对点云数据进行编码和/或解码。根据实施方式的点云内容提供系统的反馈信息和操作与参照图1描述的反馈信息和操作相同,因此省略其详细描述。
图3示出根据实施方式的捕获点云视频的示例性过程。
图3示出参照图1至图2描述的点云内容提供系统的示例性点云视频捕获过程。
点云内容包括表示位于各种3D空间(例如,表示真实环境的3D空间、表示虚拟环境的3D空间等)中的对象和/或环境的点云视频(图像和/或视频)。因此,根据实施方式的点云内容提供系统可使用一个或更多个相机(例如,能够取得深度信息的红外相机、能够提取与深度信息对应的颜色信息的RGB相机等)、投影仪(例如,取得深度信息的红外图案投影仪)、LiDAR等来捕获点云视频。根据实施方式的点云内容提供系统可从深度信息提取由3D空间中的点组成的几何形状并且从颜色信息提取各个点的属性以取得点云数据。根据实施方式的图像和/或视频可以基于面向内技术和面向外技术中的至少一个来捕获。
图3的左侧部分示出面向内技术。面向内技术是指利用定位在中心对象周围的一个或更多个相机(或相机传感器)来捕获中心对象的图像的技术。面向内技术可用于生成向用户提供关键对象的360度图像的点云内容(例如,向用户提供对象(例如,诸如角色、玩家、对象或演员的关键对象)的360度图像的VR/AR内容)。
图3的右侧部分示出面向外技术。面向外技术是指利用定位在中心对象周围的一个或更多个相机(或相机传感器)来捕获中心对象的环境而非中心对象的图像的技术。面向外技术可用于生成提供从用户的视角出现的周围环境的点云内容(例如,可提供给自驾驶车辆的用户的表示外部环境的内容)。
如图所示,可以基于一个或更多个相机的捕获操作来生成点云内容。在这种情况下,在相机之间坐标系可不同,因此点云内容提供系统可在捕获操作之前校准一个或更多个相机以设定全局坐标系。另外,点云内容提供系统可以通过将任意图像和/或视频与通过上述捕获技术捕获的图像和/或视频合成来生成点云内容。点云内容提供系统在生成表示虚拟空间的点云内容时可不执行图3中描述的捕获操作。根据实施方式的点云内容提供系统可对捕获的图像和/或视频执行后处理。换言之,点云内容提供系统可去除不想要的区域(例如,背景),识别捕获的图像和/或视频连接至的空间,并且当存在空间空洞时,执行填充空间空洞的操作。
点云内容提供系统可以通过对从各个相机取得的点云视频的点执行坐标变换来生成一条点云内容。点云内容提供系统可以基于各个相机的位置坐标对点执行坐标变换。因此,点云内容提供系统可生成表示一个宽范围的内容,或者可生成具有高密度点的点云内容。
图4示出根据实施方式的示例性点云编码器。
图4示出图1的点云视频编码器10002的示例。点云编码器重构并编码点云数据(例如,点的位置和/或属性)以根据网络条件或应用调节点云内容的质量(例如无损、有损或接近无损)。当点云内容的总大小较大(例如,对于30fps给出60Gbps的点云内容)时,点云内容提供系统可能无法实时流传输内容。因此,点云内容提供系统可以基于最大目标比特率来重构点云内容以根据网络环境等提供点云内容。
如参照图1至图2描述的,点云编码器可执行几何编码和属性编码。几何编码在属性编码之前执行。
根据实施方式的点云编码器包括坐标变换器(变换坐标)40000、量化器(量化和去除点(体素化))40001、八叉树分析器(分析八叉树)40002和表面近似分析器(分析表面近似)40003、算术编码器(算术编码)40004、几何重构器(重构几何)40005、颜色变换器(变换颜色)40006、属性变换器(变换属性)40007、RAHT变换器(RAHT)40008、LOD生成器(生成LOD)40009、提升变换器(提升)40010、系数量化器(量化系数)40011和/或算术编码器(算术编码)40012。
坐标变换器40000、量化器40001、八叉树分析器40002、表面近似分析器40003、算术编码器40004和几何重构器40005可执行几何编码。根据实施方式的几何编码可以包括八叉树几何编码、直接编码、三联体几何编码和熵编码。直接编码和三联体几何编码选择性地或组合应用。几何编码不限于上述示例。
如图所示,根据实施方式的坐标变换器40000接收位置并将其变换为坐标。例如,位置可被变换为三维空间(例如,由XYZ坐标系表示的三维空间)中的位置信息。根据实施方式的三维空间中的位置信息可被称为几何信息。
根据实施方式的量化器40001将几何量化。例如,量化器40001可以基于所有点的最小位置值(例如,X、Y和Z轴中的各个个上的最小值)来将点量化。量化器40001执行量化操作:将最小位置值与各个点的位置值之间的差乘以预设量化标度值,然后通过对通过乘法获得的值进行舍入来寻找最近整数值。因此,一个或更多个点可具有相同的量化位置(或位置值)。根据实施方式的量化器40001基于量化位置执行体素化以重构量化点。如像素(包含2D图像/视频信息的最小单元)的情况中一样,根据实施方式的点云内容(或3D点云视频)的点可以包括在一个或更多个体素中。作为体积和像素的复合体,术语体素是指当基于表示3D空间的轴(例如,X轴、Y轴和Z轴)将3D空间分割成单元(单位=1.0)时生成的3D立方空间。量化器40001可使3D空间中的点组与体素匹配。根据实施方式,一个体素可仅包括一个点。根据实施方式,一个体素可以包括一个或更多个点。为了将一个体素表示为一个点,体素的中心的位置可以基于包括在体素中的一个或更多个点的位置来设定。在这种情况下,包括在一个体素中的所有位置的属性可被组合并指派给体素。
根据实施方式的八叉树分析器40002执行八叉树几何编码(或八叉树编码)以按八叉树结构呈现体素。八叉树结构表示基于八进制树结构与体素匹配的点。
根据实施方式的表面近似分析器40003可分析并近似八叉树。根据实施方式的八叉树分析和近似是分析包含多个点的区域以有效地提供八叉树和体素化的过程。
根据实施方式的算术编码器40004对八叉树和/或近似八叉树执行熵编码。例如,编码方案包括算术编码。作为编码结果,生成几何比特流。
颜色变换器40006、属性变换器40007、RAHT变换器40008、LOD生成器40009、提升变换器40010、系数量化器40011和/或算术编码器40012执行属性编码。如上所述,一个点可具有一个或更多个属性。根据实施方式的属性编码同样应用于一个点所具有的属性。然而,当属性(例如,颜色)包括一个或更多个元素时,对各个元素独立地应用属性编码。根据实施方式的属性编码包括颜色变换编码、属性变换编码、区域自适应分层变换(RAHT)编码、基于插值的分层最近邻居预测(预测变换)编码以及具有更新/提升步骤的基于插值的分层最近邻居预测(提升变换)编码。根据点云内容,可选择性地使用上述RAHT编码、预测变换编码和提升变换编码,或者可使用一个或更多个编码方案的组合。根据实施方式的属性编码不限于上述示例。
根据实施方式的颜色变换器40006执行变换包括在属性中的颜色值(或纹理)的颜色变换编码。例如,颜色变换器40006可变换颜色信息的格式(例如,从RGB到YCbCr)。可选地,可根据包括在属性中的颜色值来应用根据实施方式的颜色变换器40006的操作。
根据实施方式的几何重构器40005重构(解压缩)八叉树和/或近似八叉树。几何重构器40005基于分析点分布的结果来重构八叉树/体素。重构的八叉树/体素可被称为重构的几何(恢复的几何)。
根据实施方式的属性变换器40007执行属性变换以基于重构的几何和/或不执行几何编码的位置来变换属性。如上所述,由于属性依赖于几何,所以属性变换器40007可以基于重构的几何信息来变换属性。例如,基于包括在体素中的点的位置值,属性变换器40007可变换该位置处的点的属性。如上所述,当基于包括在体素中的一个或更多个点的位置来设定体素的中心位置时,属性变换器40007变换一个或更多个点的属性。当执行三联体几何编码时,属性变换器40007可以基于三联体几何编码来变换属性。
属性变换器40007可以通过计算距各个体素的中心位置(或位置值)特定位置/半径内的相邻点的属性或属性值(例如,各个点的颜色或反射率)的平均来执行属性变换。属性变换器40007可在计算平均时根据从中心到各个点的距离来应用权重。因此,各个体素具有位置和计算的属性(或属性值)。
属性变换器40007可以基于K-D树或莫顿码(Morton code)搜索存在于距各个体素的中心位置特定位置/半径内的相邻点。K-D树是二叉搜索树,并且支持能够基于位置来管理点的数据结构,使得可快速地执行最近邻搜索(NNS)。通过将表示所有点的3D位置的坐标(例如,(x,y,z))呈现为比特值并将比特混合来生成莫顿码。例如,当表示点位置的坐标为(5,9,1)时,坐标的比特值为(0101,1001,0001)。根据比特索引按z、y和x的顺序混合比特值产生010001000111。该值被表示为十进制数1095。即,具有坐标(5,9,1)的点的莫顿码值为1095。属性变换器40007可以基于莫顿码值对点进行排序并通过深度优先遍历过程执行NNS。在属性变换操作之后,当在用于属性编码的另一变换过程中需要NNS时使用K-D树或莫顿码。
如图所示,变换的属性被输入到RAHT变换器40008和/或LOD生成器40009。
根据实施方式的RAHT变换器40008基于重构的几何信息来执行用于预测属性信息的RAHT编码。例如,RAHT变换器40008可以基于与八叉树中较低级别的节点关联的属性信息来预测八叉树中较高级别的节点的属性信息。
根据实施方式的LOD生成器40009生成细节级别(LOD)来执行预测变换编码。根据实施方式的LOD是点云内容的细节程度。随着LOD值减小,指示点云内容的细节劣化。随着LOD值增大,指示点云内容的细节增强。点可按LOD分类。
根据实施方式的提升变换器40010执行基于权重来变换点云属性的提升变换编码。如上所述,可以可选地应用提升变换编码。
根据实施方式的系数量化器40011基于系数来量化属性编码的属性。
根据实施方式的算术编码器40012基于算术编码对量化的属性进行编码。
尽管图中未示出,图4的点云编码器的元件可由包括被配置成与包括在点云提供装置中的一个或更多个存储器通信的一个或更多个处理器或集成电路的硬件、软件、固件或其组合实现。一个或更多个处理器可执行上述图4的点云编码器的元件的操作和/或功能中的至少一个。另外,一个或更多个处理器可操作或执行用于执行图4的点云编码器的元件的操作和/或功能的软件程序和/或指令集合。根据实施方式的一个或更多个存储器可以包括高速随机存取存储器,或者包括非易失性存储器(例如,一个或更多个磁盘存储装置、闪存装置或其它非易失性固态存储器装置)。
图5示出根据实施方式的体素的示例。
图5示出位于由三个轴(X轴、Y轴和Z轴)所组成的坐标系表示的3D空间中的体素。如参照图4所述,点云编码器(例如,量化器40001)可执行体素化。体素是指当基于表示3D空间的轴(例如,X轴、Y轴和Z轴)将3D空间分割成单元(单位=1.0)时生成的3D立方空间。图5示出通过八叉树结构生成的体素的示例,其中由两个极点(0,0,0)和(2d,2d,2d)限定的立方轴对齐边界框被递归地再分。一个体素包括至少一个点。可从与体素组的位置关系来估计体素的空间坐标。如上所述,体素具有类似2D图像/视频的像素的属性(例如,颜色或反射率)。体素的细节与参照图4描述的那些相同,因此省略其描述。
图6示出根据实施方式的八叉树和占用代码的示例。
如参照图1至图4所描述的,点云内容提供系统(点云视频编码器10002)或点云编码器(例如,八叉树分析器40002)基于八叉树结构来执行八叉树几何编码(或八叉树编码)以有效地管理体素的区域和/或位置。
图6的上部示出八叉树结构。根据实施方式的点云内容的3D空间由坐标系的轴(例如,X轴、Y轴和Z轴)表示。通过由两个极点(0,0,0)和(2d,2d,2d)限定的立方轴对齐边界框的递归再分来创建八叉树结构。这里,2d可被设定为构成围绕点云内容(或点云视频)的所有点的最小边界框的值。这里,d表示八叉树的深度。d的值在下式中确定。在下式中,(xint n,yint n,zint n)表示量化的点的位置(或位置值)。
d=Ceil(Log2(Max(x_n^inty_n^int,z_n^int,n=1,...,N)+1))
如图6的上部的中间所示,整个3D空间可根据分割被划分成八个空间。各个划分的空间由具有六个面的立方体表示。如图6的右上部所示,八个空间中的各个个基于坐标系的轴(例如,X轴、Y轴和Z轴)再次划分。因此,各个空间被划分成八个更小的空间。所划分的更小的空间也由具有六个面的立方体表示。应用该分割方案,直至八叉树的叶节点变为体素。
图6的下部示出八叉树占用代码。生成八叉树的占用代码以指示通过划分一个空间而生成的八个划分的空间中的各个个是否包含至少一个点。因此,单个占用代码由八个子节点表示。各个子节点表示划分的空间的占用,并且子节点具有1比特的值。因此,占用代码被表示为8比特代码。即,当与子节点对应的空间中包含至少一个点时,节点被指派值1。当与子节点对应的空间中不包含点(空间为空)时,节点被指派值0。由于图6所示的占用代码为00100001,所以指示与八个子节点当中的第三子节点和第八子节点对应的空间各自包含至少一个点。如图所示,第三子节点和第八子节点中的各个个具有八个子节点,并且子节点由8比特占用代码表示。附图示出第三子节点的占用代码为10000111,并且第八子节点的占用代码为01001111。根据实施方式的点云编码器(例如,算术编码器40004)可对占用代码执行熵编码。为了增加压缩效率,点云编码器可对占用代码执行帧内/帧间编码。根据实施方式的接收装置(例如,接收装置10004或点云视频解码器10006)基于占用代码来重构八叉树。
根据实施方式的点云编码器(例如,图4的点云编码器或八叉树分析器40002)可执行体素化和八叉树编码以存储点位置。然而,点并不总是在3D空间中均匀分布,因此可能有存在较少点的特定区域。因此,对整个3D空间执行体素化是低效的。例如,当特定区域包含很少点时,在该特定区域中不需要执行体素化。
因此,对于上述特定区域(或八叉树的叶节点以外的节点),根据实施方式的点云编码器可跳过体素化并执行直接编码以直接对包括在特定区域中的点位置进行编码。根据实施方式的直接编码点的坐标被称为直接编码模式(DCM)。根据实施方式的点云编码器还可以基于表面模型执行三联体几何编码,其要基于体素来重构特定区域(或节点)中的点位置。三联体几何编码是将对象表示为一系列三角形网格的几何编码。因此,点云解码器可从网格表面生成点云。根据实施方式的直接编码和三联体几何编码可选择性地执行。另外,根据实施方式的直接编码和三联体几何编码可与八叉树几何编码(或八叉树编码)组合执行。
为了执行直接编码,应该启用使用直接模式以应用直接编码的选项。要应用直接编码的节点不是叶节点,在特定节点内应该存在小于阈值的点。另外,要应用直接编码的点的总数不应超过预设阈值。当满足上述条件时,根据实施方式的点云编码器(或算术编码器40004)可对点位置(或位置值)执行熵编码。
根据实施方式的点云编码器(例如,表面近似分析器40003)可确定八叉树的特定级别(小于八叉树的深度d的级别),并且可从该级别开始使用表面模型以执行三联体几何编码,以基于体素来重构节点区域中的点位置(三联体模式)。根据实施方式的点云编码器可指定要应用三联体几何编码的级别。例如,当特定级别等于八叉树的深度时,点云编码器不在三联体模式下操作。换言之,仅当指定的级别小于八叉树的深度值时,根据实施方式的点云编码器才可在三联体模式下操作。根据实施方式的指定级别的节点的3D立方区域被称为块。一个块可以包括一个或更多个体素。块或体素可以对应于方块。几何被表示为各个块内的表面。根据实施方式的表面可与块的各条边相交至多一次。
一个块具有12条边,因此一个块中存在至少12个交点。各个交点被称为顶点。当共享边的所有块当中存在与边相邻的至少一个占用体素时,检测沿着边存在的顶点。根据实施方式的占用体素是指包含点的体素。沿着边检测到的顶点位置是沿着共享边的所有块当中与边相邻的所有体素的边的平均位置。
一旦检测到顶点,根据实施方式的点云编码器就可对边的起点(x,y,z)、边的方向向量(Δx,Δy,Δz)和顶点位置值(边内的相对位置值)执行熵编码。当应用三联体几何编码时,根据实施方式的点云编码器(例如,几何重构器40005)可以通过执行三角形重构、上采样和体素化过程来生成恢复的几何(重构的几何)。
位于块的边处的顶点确定穿过块的表面。根据实施方式的表面是非平面多边形。在三角形重构过程中,基于边的起点、边的方向向量和顶点的位置值来重构由三角形表示的表面。三角形重构过程这样执行:i)计算各个顶点的质心值,ii)从各个顶点值减去中心值,并且iii)估计通过减法获得的值的平方和。
估计和的最小值,并且根据具有最小值的轴执行投影过程。例如,当元素x最小时,各个顶点相对于块的中心投影在x轴上,并且投影在(y,z)平面上。当通过(y,z)平面上的投影获得的值为(ai,bi)时,通过atan2(bi,ai)估计θ的值,并且基于θ的值对顶点进行排序。下表示出根据顶点数量创建三角形的顶点组合。顶点从1至n排序。下表示出对于4个顶点,可根据顶点组合构造两个三角形。第一个三角形可由排序的顶点当中的顶点1、2和3组成,第二个三角形可由排序的顶点当中的顶点3、4和1组成。
表2-1.从按1,…,n排序的顶点形成的三角形
n 三角形
3 (1,2,3)
4 (1,2,3),(3,4,1)
5 (1,2,3),(3,4,5),(5,1,3)
6 (1,2,3),(3,4,5),(5,6,1),(1,3,5)
7 (1,2,3),(3,4,5),(5,6,7),(7,1,3),(3,5,7)
8 (1,2,3),(3,4,5),(5,6,7),(7,8,1),(1,3,5),(5,7,1)
9 (1,2,3),(3,4,5),(5,6,7),(7,8,9),(9,1,3),(3,5,7),(7,9,3)
10 (1,2,3),(3,4,5),(5,6,7),(7,8,9),(9,10,1),(1,3,5),(5,7,9),(9,1,5)
11 (1,2,3),(3,4,5),(5,6,7),(7,8,9),(9,10,11),(11,1,3),(3,5,7),(7,9,11),(11,3,7)
12 (1,2,3),(3,4,5),(5,6,7),(7,8,9),(9,10,11),(11,12,1),(1,3,5),(5,7,9),(9,11,1),(1,5,9)
执行上采样过程以沿着三角形的边在中间添加点,并且执行体素化。所添加的点基于上采样因子和块的宽度来生成。添加的点被称为细化顶点。根据实施方式的点云编码器可以将细化顶点体素化。另外,点云编码器可以基于体素化的位置(或位置值)来执行属性编码。
图7示出根据实施方式的邻居节点图案的示例。
为了增加点云视频的压缩效率,根据实施方式的点云编码器可以基于上下文自适应算术编码来执行熵编码。
如参照图1至图6所描述的,点云内容提供系统或点云编码器(例如,点云视频编码器10002、图4的点云编码器或算术编码器40004)可立即对占用代码执行熵编码。另外,点云内容提供系统或点云编码器可以基于当前节点的占用代码和邻近节点的占用来执行熵编码(帧内编码),或者基于先前帧的占用代码执行熵编码(帧间编码)。根据实施方式的帧表示同时生成的点云视频的集合。根据实施方式的帧内编码/帧间编码的压缩效率可依赖于所参考的邻近节点的数量。当比特增加时,运算变得复杂,但是编码可偏向一侧,这可增加压缩效率。例如,当给出3比特上下文时,需要使用23=8种方法来执行编码。为编码划分的部分影响实现复杂度。因此,有必要满足适当级别的压缩效率和复杂度。
图7示出基于邻居节点的占用来获得占用图案的过程。根据实施方式的点云编码器确定八叉树的各个节点的邻居节点的占用并且获得邻居图案的值。邻居节点图案用于推断节点的占用图案。图7的左部示出与节点对应的立方体(位于中间的立方体)以及与该立方体共享至少一个面的六个立方体(邻居节点)。图中所示的节点是相同深度的节点。图中所示的数字分别表示与六个节点关联的权重(1、2、4、8、16和32)。根据邻近节点的位置依次指派权重。
图7的右部示出邻居节点图案值。邻居节点图案值是乘以占用邻居节点(具有点的邻居节点)的权重的值之和。因此,邻居节点图案值为0至63。当邻居节点图案值为0时,指示节点的邻居节点当中不存在具有点的节点(无占用节点)。当邻居节点图案值为63时,指示所有邻居节点均是占用节点。如图所示,由于指派有权重1、2、4和8的邻居节点是占用节点,所以邻居节点图案值为15(1、2、4和8之和)。点云编码器可根据邻居节点图案值执行编码(例如,当邻居节点图案值为63时,可执行64种类型的编码)。根据实施方式,点云编码器可以通过改变邻居节点图案值(例如,基于将64改变为10或6的表)来降低编码复杂度。
图8示出根据实施方式的各个LOD中的点配置的示例。
如参照图1至图7描述的,在执行属性编码之前将编码的几何重构(解压缩)。当应用直接编码时,几何重构操作可以包括改变直接编码的点的放置(例如,将直接编码的点放置在点云数据前面)。当应用三联体几何编码时,通过三角形重构、上采样和体素化来执行几何重构过程。由于属性依赖于几何,所以基于重构的几何来执行属性编码。
点云编码器(例如,LOD生成器40009)可按LOD对点进行分类(重新组织)。图中示出与LOD对应的点云内容。图中最左侧画面表示原始点云内容。图中左起第二个画面表示最低LOD中的点分布,图中最右侧画面表示最高LOD中的点分布。即,最低LOD中的点稀疏分布,最高LOD中的点密集分布。即,随着LOD在图底部所指示的箭头所指的方向上升高,点之间的空间(或距离)变窄。
图9示出根据实施方式的用于各个LOD的点配置的示例。
如参照图1至图8所描述的,点云内容提供系统或点云编码器(例如,点云视频编码器10002、图4的点云编码器或LOD生成器40009)可生成LOD。通过根据设定的LOD距离值(或欧几里得距离集合)将点重新组织为细化级别的集合来生成LOD。LOD生成过程不仅由点云编码器执行,而且由点云解码器执行。
图9的上部示出分布在3D空间中的点云内容的点的示例(P0至P9)。在图9中,原始顺序表示在LOD生成之前点P0至P9的顺序。在图9中,基于LOD的顺序表示根据LOD生成的点的顺序。点按LOD重新组织。另外,高LOD包含属于较低LOD的点。如图9所示,LOD 0包含P0、P5、P4和P2。LOD1包含LOD 0的点、P1、P6和P3。LOD2包含LOD 0的点、LOD1的点、P9、P8和P7。
如参照图4所描述的,根据实施方式的点云编码器可选择性地或组合地执行预测变换编码、提升变换编码和RAHT变换编码。
根据实施方式的点云编码器可为点生成预测器以执行用于设定各个点的预测属性(或预测属性值)的预测变换编码。即,可为N个点生成N个预测器。根据实施方式的预测器可以基于各个点的LOD值、关于存在于各个LOD的设定距离内的相邻点的索引信息以及到相邻点的距离来计算权重(=1/距离)。
根据实施方式的预测属性(或属性值)被设定为通过将各个点的预测器中设定的相邻点的属性(或属性值)(例如,颜色、反射率等)乘以基于到各个相邻点的距离计算的权重(或权重值)而获得的值的平均。根据实施方式的点云编码器(例如,系数量化器40011)可量化和逆量化通过从各个点的属性(属性值)减去预测属性(属性值)而获得的残差(可称为残差属性、残差属性值或属性预测残差)。量化过程如下表所示配置。
表.属性预测残差量化伪代码
int PCCQuantization(int value,int quantStep){
if(value>=0){
relurn floor(value/quantStep+1.0/3.0);
}else{
return-floor(-value/quantStep+1.0/3.0);
}
}
表.属性预测残差逆量化伪代码
int PCCInverseQuantization(int value,int quantStep){
if(quantStep==0){
return value;
}else{
return value*quantStep;
}
}
当各个点的预测器具有相邻点时,根据实施方式的点云编码器(例如,算术编码器40012)可如上所述对量化和逆量化的残差值执行熵编码。当各个点的预测器没有相邻点时,根据实施方式的点云编码器(例如,算术编码器40012)可对对应点的属性执行熵编码,而不执行上述操作。
根据实施方式的点云编码器(例如,提升变换器40010)可生成各个点的预测器,设定计算的LOD并在预测器中注册相邻点,并且根据到相邻点的距离来设定权重以执行提升变换编码。根据实施方式的提升变换编码类似于上述预测变换编码,但不同之处在于,对属性值累积地应用权重。根据实施方式对属性值累积地应用权重的过程配置如下。
1)创建用于存储各个点的权重值的阵列量化权重(QW)。QW的所有元素的初始值均为1.0。将预测器中注册的邻居节点的预测器索引的QW值乘以当前点的预测器的权重,并将通过乘法获得的值相加。
2)提升预测过程:从现有属性值减去通过将点的属性值乘以权重而获得的值,以计算预测属性值。
3)创建称为updateweight和update的临时阵列,并且将临时阵列初始化为零。
4)将通过将针对所有预测器计算的权重乘以存储在与预测器索引对应的QW中的权重而计算的权重与updateweight阵列累加,作为邻居节点的索引。将通过将邻居节点索引的属性值乘以所计算的权重而获得的值与update阵列累加。
5)提升更新过程:将所有预测器的update阵列的属性值除以预测器索引的updateweight阵列的权重值,并将现有属性值与通过除法获得的值相加。
6)针对所有预测器通过将通过提升更新过程更新的属性值乘以通过提升预测过程更新的权重(存储在QW中)来计算预测属性。根据实施方式的点云编码器(例如,系数量化器40011)量化预测属性值。另外,点云编码器(例如,算术编码器40012)对量化属性值执行熵编码。
根据实施方式的点云编码器(例如,RAHT变换器40008)可执行RAHT变换编码,其中使用与八叉树中较低级别的节点关联的属性来预测较高级别的节点的属性。RAHT变换编码是通过八叉树向后扫描进行属性帧内编码的示例。根据实施方式的点云编码器从体素开始扫描整个区域并且在各个步重复将体素合并为更大的块的合并过程,直至到达根节点。仅对占用节点执行根据实施方式的合并过程。不对空节点执行合并过程。对空节点正上方的上节点执行合并过程。
下式表示RAHT变换矩阵。在该式中,表示级别l的体素的平均属性值。可以基于来计算。的权重为
这里,是低通值并且在次高级别的合并过程中使用。表示高通系数。各个步的高通系数被量化并经受熵编码(例如,由算术编码器400012编码)。权重被计算为通过创建根节点如下。
gDC的值如高通系数那样也被量化并且经受熵编码。
图10示出根据实施方式的点云解码器。
图10所示的点云解码器是图1中描述的点云视频解码器10006的示例,并且可执行与图1所示的点云视频解码器10006的操作相同或相似的操作。如图所示,点云解码器可接收包含在一个或更多个比特流中的几何比特流和属性比特流。点云解码器包括几何解码器和属性解码器。几何解码器对几何比特流执行几何解码并输出解码的几何。属性解码器基于解码的几何和属性比特流执行属性解码,并且输出解码的属性。解码的几何和解码的属性用于重构点云内容(解码的点云)。
图11示出根据实施方式的点云解码器。
图11所示的点云解码器是图10所示的点云解码器的示例,并且可执行解码操作,其是图1至图9所示的点云编码器的编码操作的逆处理。
如参照图1和图10所描述的,点云解码器可执行几何解码和属性解码。几何解码在属性解码之前执行。
根据实施方式的点云解码器包括算术解码器(算术解码)11000、八叉树合成器(合成八叉树)11001、表面近似合成器(合成表面近似)11002和几何重构器(重构几何)11003、坐标逆变换器(逆变换坐标)11004、算术解码器(算术解码)11005、逆量化器(逆量化)11006、RAHT变换器11007、LOD生成器(生成LOD)11008、逆提升器(逆提升)11009和/或颜色逆变换器(逆变换颜色)11010。
算术解码器11000、八叉树合成器11001、表面近似合成器11002、几何重构器11003和坐标逆变换器11004可执行几何解码。根据实施方式的几何解码可以包括直接编码和三联体几何解码。直接编码和三联体几何解码选择性地应用。几何解码不限于上述示例,并且作为参照图1至图9描述的几何编码的逆处理执行。
根据实施方式的算术解码器11000基于算术编码将所接收的几何比特流解码。算术解码器11000的操作对应于算术编码器40004的逆处理。
根据实施方式的八叉树合成器11001可以通过从解码的几何比特流获取占用代码(或关于作为解码结果取得的几何的信息)来生成八叉树。占用代码如参照图1至图9详细描述那样配置。
当应用三联体几何编码时,根据实施方式的表面近似合成器11002可以基于解码的几何和/或生成的八叉树来合成表面。
根据实施方式的几何重构器11003可以基于表面和/或解码的几何重新生成几何。如参照图1至图9所描述的,选择性地应用直接编码和三联体几何编码。因此,几何重构器11003直接导入关于应用了直接编码的点的位置信息并将其相加。当应用三联体几何编码时,几何重构器11003可以通过执行几何重构器40005的重构操作(例如,三角形重构、上采样和体素化)来重构几何。细节与参照图6描述的那些相同,因此省略其描述。重构的几何可以包括不包含属性的点云画面或帧。
根据实施方式的坐标逆变换器11004可以通过基于重构的几何变换坐标来获取点位置。
算术解码器11005、逆量化器11006、RAHT变换器11007、LOD生成器11008、逆提升器11009和/或颜色逆变换器11010可执行参照图10描述的属性解码。根据实施方式的属性解码包括区域自适应分层变换(RAHT)解码、基于插值的分层最近邻居预测(预测变换)解码以及具有更新/提升步骤的基于插值的分层最近邻居预测(提升变换)解码。上述三个解码方案可选择性地使用,或者可使用一个或更多个解码方案的组合。根据实施方式的属性解码不限于上述示例。
根据实施方式的算术解码器11005通过算术编码对属性比特流进行解码。
根据实施方式的逆量化器11006逆量化关于解码的属性比特流或作为解码结果取得的属性的信息,并且输出逆量化的属性(或属性值)。可以基于点云编码器的属性编码选择性地应用逆量化。
根据实施方式,RAHT变换器11007、LOD生成器11008和/或逆提升器11009可处理重构的几何和逆量化的属性。如上所述,RAHT变换器11007、LOD生成器11008和/或逆提升器11009可选择性地执行与点云编码器的编码对应的解码操作。
根据实施方式的颜色逆变换器11010执行逆变换编码以逆变换包括在解码的属性中的颜色值(或纹理)。可以基于点云编码器的颜色变换器40006的操作选择性地执行颜色逆变换器11010的操作。
尽管图中未示出,图11的点云解码器的元件可由包括被配置成与包括在点云提供装置中的一个或更多个存储器通信的一个或更多个处理器或集成电路的硬件、软件、固件或其组合实现。一个或更多个处理器可执行上述图11的点云解码器的元件的操作和/或功能中的至少一个或更多个。另外,一个或更多个处理器可操作或执行用于执行图11的点云解码器的元件的操作和/或功能的软件程序和/或指令集合。
图12示出根据实施方式的发送装置。
图12所示的发送装置是图1的发送装置10000(或图4的点云编码器)的示例。图12所示的发送装置可执行与参照图1至图9描述的点云编码器的那些相同或相似的一个或更多个操作和方法。根据实施方式的发送装置可以包括数据输入单元12000、量化处理器12001、体素化处理器12002、八叉树占用代码生成器12003、表面模型处理器12004、帧内/帧间编码处理器12005、算术编码器12006、元数据处理器12007、颜色变换处理器12008、属性变换处理器12009、预测/提升/RAHT变换处理器12010、算术编码器12011和/或传输处理器12012。
根据实施方式的数据输入单元12000接收或获取点云数据。数据输入单元12000可执行与点云视频获取器10001的操作和/或获取方法(或参照图2描述的获取过程20000)相同或相似的操作和/或获取方法。
数据输入单元12000、量化处理器12001、体素化处理器12002、八叉树占用代码生成器12003、表面模型处理器12004、帧内/帧间编码处理器12005和算术编码器12006执行几何编码。根据实施方式的几何编码与参照图1至图9描述的几何编码相同或相似,因此省略其详细描述。
根据实施方式的量化处理器12001对几何(例如,点的位置值)进行量化。量化处理器12001的操作和/或量化与参照图4描述的量化器40001的操作和/或量化相同或相似。细节与参照图1至图9描述的那些相同。
根据实施方式的体素化处理器12002将点的量化的位置值体素化。体素化处理器120002可执行与参照图4描述的量化器40001的操作和/或体素化过程相同或相似的操作和/或过程。细节与参照图1至图9描述的那些相同。
根据实施方式的八叉树占用代码生成器12003基于八叉树结构对点的体素化的位置执行八叉树编码。八叉树占用代码生成器12003可生成占用代码。八叉树占用代码生成器12003可执行与参照图4和图6描述的点云编码器(或八叉树分析器40002)的操作和/或方法相同或相似的操作和/或方法。细节与参照图1至图9描述的那些相同。
根据实施方式的表面模型处理器12004可以基于表面模型执行三联体几何编码以基于体素重构特定区域(或节点)中的点位置。表面模型处理器12004可执行与参照图4描述的点云编码器(例如,表面近似分析器40003)的操作和/或方法相同或相似的操作和/或方法。细节与参照图1至图9描述的那些相同。
根据实施方式的帧内/帧间编码处理器12005可对点云数据执行帧内/帧间编码。帧内/帧间编码处理器12005可执行与参照图7描述的帧内/帧间编码相同或相似的编码。细节与参照图7描述的那些相同。根据实施方式,帧内/帧间编码处理器12005可以包括在算术编码器12006中。
根据实施方式的算术编码器12006对点云数据的八叉树和/或近似八叉树执行熵编码。例如,编码方案包括算术编码。算术编码器12006执行与算术编码器40004的操作和/或方法相同或相似的操作和/或方法。
根据实施方式的元数据处理器12007处理关于点云数据的元数据(例如,设定值),并将其提供给诸如几何编码和/或属性编码的必要处理过程。另外,根据实施方式的元数据处理器12007可生成和/或处理与几何编码和/或属性编码有关的信令信息。根据实施方式的信令信息可与几何编码和/或属性编码分开编码。根据实施方式的信令信息可被交织。
颜色变换处理器12008、属性变换处理器12009、预测/提升/RAHT变换处理器12010和算术编码器12011执行属性编码。根据实施方式的属性编码与参照图1至图9描述的属性编码相同或相似,因此省略其详细描述。
根据实施方式的颜色变换处理器12008执行颜色变换编码以变换包括在属性中的颜色值。颜色变换处理器12008可以基于重构的几何来执行颜色变换编码。重构的几何与参照图1至图9描述的相同。另外,其执行与参照图4描述的颜色变换器40006的操作和/或方法相同或相似的操作和/或方法。省略其详细描述。
根据实施方式的属性变换处理器12009执行属性变换以基于重构的几何和/或不执行几何编码的位置来变换属性。属性变换处理器12009执行与参照图4描述的属性变换器40007的操作和/或方法相同或相似的操作和/或方法。省略其详细描述。根据实施方式的预测/提升/RAHT变换处理器12010可以通过RAHT编码、预测变换编码和提升变换编码中的任一种或组合对变换的属性进行编码。预测/提升/RAHT变换处理器12010执行与参照图4描述的RAHT变换器40008、LOD生成器40009和提升变换器40010的操作相同或相似的至少一个操作。另外,预测变换编码、提升变换编码和RAHT变换编码与参照图1至图9描述的那些相同,因此省略其详细描述。
根据实施方式的算术编码器12011可以基于算术编码对编码的属性进行编码。算术编码器12011执行与算术编码器400012的操作和/或方法相同或相似的操作和/或方法。
根据实施方式的传输处理器12012可发送包含编码的几何和/或编码的属性和元数据信息的各个比特流,或者发送配置有编码的几何和/或编码的属性和元数据信息的一个比特流。当根据实施方式的编码的几何和/或编码的属性和元数据信息被配置成一个比特流时,比特流可以包括一个或更多个子比特流。根据实施方式的比特流可包含信令信息和切片数据,信令信息包括用于序列级别信令的序列参数集(SPS)、用于几何信息编码信令的几何参数集(GPS)、用于属性信息编码信令的属性参数集(APS)和用于拼块级别信令的拼块参数集(TPS)。切片数据可以包括关于一个或更多个切片的信息。根据实施方式的一个切片可以包括一个几何比特流Geom00以及一个或更多个属性比特流Attr00和Attr10。
切片是指表示全部或部分编码点云帧的一系列句法元素。
根据实施方式的TPS可以包括关于一个或更多个拼块中的各个拼块的信息(例如,关于边界框的坐标信息和高度/大小信息)。几何比特流可包含头和有效载荷。根据实施方式的几何比特流的头可包含GPS中所包括的参数集标识符(geom_parameter_set_id)、拼块标识符(geom_tile_id)和切片标识符(geom_slice_id)以及关于包含在有效载荷中的数据的信息。如上所述,根据实施方式的元数据处理器12007可生成和/或处理信令信息并将其发送到传输处理器12012。根据实施方式,执行几何编码的元件和执行属性编码的元件可如虚线所指示彼此共享数据/信息。根据实施方式的传输处理器12012可执行与发送器10003的操作和/或发送方法相同或相似的操作和/或发送方法。细节与参照图1和图2描述的那些相同,因此省略其描述。
图13示出根据实施方式的接收装置。
图13所示的接收装置是图1的接收装置10004(或图10和图11的点云解码器)的示例。图13所示的接收装置可执行与参照图1至图11描述的点云解码器的那些相同或相似的一个或更多个操作和方法。
根据实施方式的接收装置包括接收器13000、接收处理器13001、算术解码器13002、基于占用代码的八叉树重构处理器13003、表面模型处理器(三角形重构、上采样、体素化)13004、逆量化处理器13005、元数据解析器13006、算术解码器13007、逆量化处理器13008、预测/提升/RAHT逆变换处理器13009、颜色逆变换处理器13010和/或渲染器13011。根据实施方式的各个解码元件可执行根据实施方式的对应编码元件的操作的逆处理。
根据实施方式的接收器13000接收点云数据。接收器13000可执行与图1的接收器10005的操作和/或接收方法相同或相似的操作和/或接收方法。省略其详细描述。
根据实施方式的接收处理器13001可从所接收的数据获取几何比特流和/或属性比特流。接收处理器13001可以包括在接收器13000中。
算术解码器13002、基于占用代码的八叉树重构处理器13003、表面模型处理器13004和逆量化处理器13005可执行几何解码。根据实施方式的几何解码与参照图1至图10描述的几何解码相同或相似,因此省略其详细描述。
根据实施方式的算术解码器13002可以基于算术编码对几何比特流进行解码。算术解码器13002执行与算术解码器11000的操作和/或编码相同或相似的操作和/或编码。
根据实施方式的基于占用代码的八叉树重构处理器13003可以通过从解码的几何比特流(或关于作为解码结果取得的几何的信息)获取占用代码来重构八叉树。基于占用代码的八叉树重构处理器13003执行与八叉树的合成器11001的操作和/或八叉树生成方法相同或相似的操作和/或方法。当应用三联体几何编码时,根据实施方式的表面模型处理器13004可以基于表面模型方法来执行三联体几何解码和相关几何重构(例如,三角形重构、上采样、体素化)。表面模型处理器13004执行与表面近似合成器11002和/或几何重构器11003的操作相同或相似的操作。
根据实施方式的逆量化处理器13005可逆量化解码的几何。
根据实施方式的元数据解析器13006可解析包含在所接收的点云数据中的元数据(例如,设定值)。元数据解析器13006可以将元数据传递给几何解码和/或属性解码。元数据与参照图12描述的元数据相同,因此省略其详细描述。
算术解码器13007、逆量化处理器13008、预测/提升/RAHT逆变换处理器13009和颜色逆变换处理器13010执行属性解码。属性解码与参照图1至图10描述的属性解码相同或相似,因此省略其详细描述。
根据实施方式的算术解码器13007可以通过算术编码对属性比特流进行解码。算术解码器13007可以基于重构的几何对属性比特流进行解码。算术解码器13007执行与算术解码器11005的操作和/或编码相同或相似的操作和/或编码。
根据实施方式的逆量化处理器13008可逆量化解码的属性比特流。逆量化处理器13008执行与逆量化器11006的操作和/或逆量化方法相同或相似的操作和/或方法。
根据实施方式的预测/提升/RAHT逆变换器13009可处理重构的几何和逆量化的属性。预测/提升/RAHT逆变换处理器13009执行与RAHT变换器11007、LOD生成器11008和/或逆提升器11009的操作和/或解码相同或相似的一个或更多个操作和/或解码。根据实施方式的颜色逆变换处理器13010执行逆变换编码以逆变换包括在解码的属性中的颜色值(或纹理)。颜色逆变换处理器13010执行与颜色逆变换器11010的操作和/或逆变换编码相同或相似的操作和/或逆变换编码。根据实施方式的渲染器13011可渲染点云数据。
图14示出根据实施方式的可与点云数据发送/接收方法/装置结合操作的示例性结构。
图14的结构表示服务器1460、机器人1410、自驾驶车辆1420、XR装置1430、智能电话1440、家用电器1450和/或头戴式显示器(HMD)1470中的至少一个连接到云网络1400的配置。机器人1410、自驾驶车辆1420、XR装置1430、智能电话1440或家用电器1450被称为装置。此外,XR装置1430可以对应于根据实施方式的点云数据(PCC)装置或者可操作上连接到PCC装置。
云网络1400可表示构成云计算基础设施的一部分或存在于云计算基础设施中的网络。这里,云网络1400可使用3G网络、4G或长期演进(LTE)网络或5G网络来配置。
服务器1460可经由云网络1400连接到机器人1410、自驾驶车辆1420、XR装置1430、智能电话1440、家用电器1450和/或HMD 1470中的至少一个,并且可辅助连接的装置1410至1470的至少一部分处理。
HMD 1470表示根据实施方式的XR装置和/或PCC装置的实现类型之一。根据实施方式的HMD型装置包括通信单元、控制单元、存储器、I/O单元、传感器单元和电源单元。
以下,将描述应用了上述技术的装置1410至1450的各种实施方式。图14所示的装置1410至1450可操作上连接/联接到根据上述实施方式的点云数据发送和接收装置。
<PCC+XR>
XR/PCC装置1430可采用PCC技术和/或XR(AR+VR)技术,并且可被实现为HMD、设置在车辆中的平视显示器(HUD)、电视、移动电话、智能电话、计算机、可穿戴装置、家用电器、数字标牌、车辆、固定机器人或移动机器人。
XR/PCC装置1430可分析通过各种传感器或从外部装置获取的3D点云数据或图像数据并生成关于3D点的位置数据和属性数据。由此,XR/PCC装置1430可获取关于周围空间或真实对象的信息,并且渲染和输出XR对象。例如,XR/PCC装置1430可使包括关于所识别的对象的辅助信息的XR对象与所识别的对象匹配并输出匹配的XR对象。
<PCC+XR+移动电话>
XR/PCC装置1430可以通过应用PCC技术实现为移动电话1440。
移动电话1440可以基于PCC技术解码和显示点云内容。
<PCC+自驾驶+XR>
自驾驶车辆1420可以通过应用PCC技术和XR技术被实现为移动机器人、车辆、无人驾驶飞行器等。
应用了XR/PCC技术的自驾驶车辆1420可表示设置有用于提供XR图像的手段的自驾驶车辆,或者作为XR图像中的控制/交互目标的自驾驶车辆。具体地,作为XR图像中的控制/交互目标,自驾驶车辆1420可与XR装置1430相区分并且可操作上与之连接。
具有用于提供XR/PCC图像的手段的自驾驶车辆1420可从包括相机的传感器获取传感器信息,并且基于所获取的传感器信息来输出所生成的XR/PCC图像。例如,自驾驶车辆1420可具有HUD并向其输出XR/PCC图像,从而向乘客提供与真实对象或呈现在画面上的对象对应的XR/PCC对象。
当XR/PCC对象被输出到HUD时,可输出XR/PCC对象的至少一部分以与乘客的眼睛所指向的真实对象交叠。另一方面,当XR/PCC对象输出在设置在自驾驶车辆内的显示器上时,可输出XR/PCC对象的至少一部分以与画面上的对象交叠。例如,自驾驶车辆1220可输出与诸如道路、另一车辆、交通灯、交通标志、两轮车、行人和建筑物的对象对应的XR/PCC对象。
根据实施方式的虚拟现实(VR)技术、增强现实(AR)技术、混合现实(MR)技术和/或点云压缩(PCC)技术适用于各种装置。
换言之,VR技术是仅提供真实世界对象、背景等的CG图像的显示技术。另一方面,AR技术是指在真实对象的图像上显示虚拟创建的CG图像的技术。MR技术与上述AR技术的相似之处在于,要显示的虚拟对象与真实世界混合和组合。然而,MR技术与AR技术的不同之处在于,AR技术在真实对象和作为CG图像创建的虚拟对象之间明确区分并且使用虚拟对象作为真实对象的补充对象,而MR技术将虚拟对象当作具有与真实对象等同的特性的对象。更具体地,MR技术应用的示例是全息服务。
最近,VR、AR和MR技术通常被称为扩展显示(XR)技术,而非彼此明确区分。因此,本公开的实施方式适用于VR、AR、MR和XR技术中的任一种。基于PCC、V-PCC和G-PCC技术的编码/解码适用于这种技术。
根据实施方式的PCC方法/装置可被应用于提供自驾驶服务的车辆。
提供自驾驶服务的车辆连接到PCC装置以进行有线/无线通信。
当根据实施方式的点云数据(PCC)发送/接收装置连接到车辆以进行有线/无线通信时,装置可接收/处理与AR/VR/PCC服务(可与自驾驶服务一起提供)有关的内容数据,并将其发送到车辆。在PCC发送/接收装置安装在车辆上的情况下,PCC发送/接收装置可根据通过用户接口装置输入的用户输入信号接收/处理与AR/VR/PCC服务有关的内容数据并将其提供给用户。根据实施方式的车辆或用户接口装置可接收用户输入信号。根据实施方式的用户输入信号可以包括指示自驾驶服务的信号。
在本公开中,根据实施方式的用于发送和接收点云数据的方法/装置可以简称为根据实施方式的方法/装置。
在本公开中,几何可以被称为几何数据、几何信息、点的位置值等。
在本公开中,属性可以被称为属性数据、属性信息、点的属性值(颜色、反射率等)等。
图15例示了根据实施方式的几何八叉树和基于该八叉树生成的属性细节级别(LOD)。
图15例示了在由图1的点云视频编码器10002、图2的编码20001、图4的编码器和图12的发送装置对点进行编码的过程中生成的几何八叉树15000和属性LOD15010。
图15例示了在由图1的点云视频解码器10006、图2的解码20003、图4的解码器、图11的解码器和图13的接收装置对包含点云数据的比特流进行解码的过程中生成的几何八叉树15000和属性LOD 15010。
实施方式涉及一种通过基于八叉树重构点的位置提供基于几何的用于压缩3D点云数据的点云压缩(G-PCC)的空间可缩放功能来提高几何压缩效率的方法。
几何八叉树15000是由根据实施方式的编码器的八叉树分析器40002(见图5和图6)生成的点的位置值的八叉树。
属性LOD 15010是由根据实施方式的编码器的LOD生成器40009(见图8和图9)生成的用于基于八叉树的属性的一组LOD。
几何八叉树15000和属性LOD 15010可以包括特定级别15030。在这些级别中,低LOD索引可以表示全分辨率点云原始,而高LOD索引可以表示全分辨率点云比特流(见图8)。
根据实施方式的方法/装置可以基于特定级别15030来执行可缩放编码和/或解码。
即,实施方式可以生成通过在八叉树的特定深度15030处的可缩放几何编码/解码生成的点的八叉树15000。此外,属性LOD 15010可以通过可缩放属性编码/解码(提升方案)来生成。
这里,由于点的八叉树15000上的位置15040处的叶节点最大程度地匹配八叉树上的位置15050处的属性LOD 15010的位置(如15060所指示),所以可以提高点云数据压缩效率。
在这点上,实施方式提出了处理点云数据使得几何八叉树15040上的点的位置类似于属性八叉树上的点的位置15050的编码器/解码器的操作,以及用于其的信令信息的句法。
根据实施方式的方法/装置可以执行用于空间可缩放性的几何位置重构,并且可以生成和发送/接收信令信息以支持该方法。
图16示出了根据实施方式的用于基于LOD来处理比特流的方法。
编码器1602可以对应于图1的发送装置10000、图1的点云视频编码器10002、图2的编码器20001、图4的编码器、图12的发送装置和图14的XR装置1430。
解码器1630可以对应于图1的接收装置10004、图1的点云视频解码器10006、图2的解码器20003、图10和图11的解码器、图13的接收装置、图14的XR装置1430、以及图17的解码器17000和17010。
实施方式可以执行几何位置编码/解码以支持用于压缩3D点云数据的基于几何的点云压缩(G-PCC)的空间可缩放性。
当点云数据密集并且带宽低时,根据实施方式的方法/装置可以提供发送和处理具有低分辨率点云的功能。根据实施方式的方法/装置可以根据接收装置的功能来处理点云以允许接收装置呈现点云数据。
此外,当点云数据密集并且解码器的性能低时,根据实施方式的方法/装置可提供通过部分地解码数据来提供低分辨率点云以减少解码器侧的计算量的功能。
如在操作16000中,编码器16020可以接收全分辨率点云原始数据。编码器16020可以将点云数据的几何构造为八叉树。编码器16020可以基于LOD仅编码直到特定级别的级别的几何16040。根据LOD级别,编码器16020可以生成低分辨率点云第i个LOD或高分辨率点云比特流。解码器16030可以接收从编码器发送的低分辨率点云第i个LOD或高分辨率点云比特流。解码器16030可以对与特定级别16050相对应的点云数据进行解码、重构和渲染。解码器16030可以生成低分辨率的经解码的点云或高分辨率的经解码的点云。
如在操作16010中,编码器16020可以接收全分辨率点云原始数据。编码器1602可以编码所有级别的几何八叉树,而不是特定级别。编码器16020可以生成全分辨率点云比特流。解码器16030可以接收全分辨率点云比特流。解码器16030可以解码并重构点云数据直到特定级别16060。解码器16030可以生成低分辨率点云数据。
如图16所示的数据处理提供了与点云数据的空间可缩放性相关的效果。
根据实施方式的发送装置或编码器可以如在操作16000中部分地编码和发送点云数据。根据实施方式的发送装置或编码器可以如在操作16010中完全编码和发送点云数据。根据实施方式的接收装置或解码器可以通过基于八叉树的特定级别以可缩放的方式部分地解码点云数据来重构所接收的点云数据。
利用根据实施方式的空间可缩放功能,可以根据发送环境、接收装置的特性或性能等有效地处理点云数据。
图17示出了根据实施方式的几何和属性的空间可缩放性结构。
解码器17000和17010可以对应于图1的接收装置10004的点云视频解码器10006、被配置为执行解码操作的图2的解码器20003和被配置为解码几何比特流和属性比特流的图11的解码器20003、图13的接收装置、图14的XR装置1430或图16的解码器16030,或与其组合。
根据实施方式的解码器17000可以重构具有属性的低分辨率点云数据。解码器17000可以从由细节级别(LOD)表示的几何比特流和属性比特流接收对应于八叉树的特定级别17020的部分几何数据和部分属性数据,并且重构具有属性的低分辨率点云数据。
根据实施方式的解码器17010可以重构全分辨率点云数据。解码器17010可以从由细节级别(LOD)级别表示的几何比特流和属性比特流接收包括直到八叉树末尾的级别的几何数据和属性数据,并且重构全分辨率点云数据。
根据实施方式的几何编码和几何解码可以通过仅对通过调整八叉树的深度级别而选择的深度级别(例如,15030、16040、16050、16060)的占用比特进行编码或解码的处理来提供空间可缩放功能。
为了提供根据实施方式的空间可缩放功能,编码器和/或解码器可能需要重新排列几何位置值。
根据实施方式的发送/接收装置的编码器和/或解码器可以针对空间可缩放性函数通过基于八叉树重构点的位置(例如,几何)来增加几何压缩效率。
此外,根据实施方式的空间可缩放功能可以与其它实施方式组合。即,本说明书中使用的术语可以基于相关领域中广泛采用的范围内的术语的预期含义来理解。
根据实施方式的方法/装置可以将相同的八叉树结构应用于几何,以在编码和/或解码中提供空间可缩放功能(参见图17)。提出了一种方案,其中,根据实施方式的方法/装置从整个几何比特流构造直到八叉树的所选深度级别17020的部分几何。重构针对各LOD的几何的方法可以由根据实施方式的PCC解码器/编码器来执行。
图18示出了根据实施方式的几何编码的操作。
图18示出当几何由图1的发送装置10000、点云视频编码器10002、图2的编码器20001、图4的编码器、图12的发送装置、图14的XR装置1430等编码时用于支持如图15和图16所示的空间可缩放性的操作。
S18000:用于有损几何编码的量化
根据实施方式的编码器可以执行有损几何编码。对于有损几何编码,根据实施方式的编码器可以对几何进行量化。将参照图19描述根据实施方式的量化的详细操作。
S18010:部分几何编码
根据实施方式的编码器可以对几何进行部分编码。将参照图20描述根据实施方式的部分几何编码。
图19示出了根据实施方式的下取整量化和舍入量化。
图19示出了图18中的S18000的详细操作;
图19的操作表示根据实施方式的编码器对几何进行量化的操作。例如,图4的量化器或体素化器40001或图12的体素化处理器12002可以执行图19所示的量化。
根据实施方式的编码器可以通过将几何位置值乘以用于有损几何编码的缩放值来执行量化。当几何被量化时,由几何数据表示的位置值被改变。
根据实施方式的量化可以包括上取整、下取整和舍入操作。
根据实施方式的编码器可以基于用于空间可缩放性的各种量化类型来对几何进行量化。编码器可以在点云比特流中发送应用于几何的量化类型信息。根据实施方式的解码器可以基于比特流中包含的量化类型信息来重构几何的位置。
根据实施方式的下取整量化19000可以通过下取整操作来改变几何的点位置值。体素19030中的点19020可以在坐标系中具有位置值(1.2,1.1,1.4)。当编码器通过下取整操作来对点19020进行量化时,可以去除各位置值的小数部分。例如,位置值(1.2,1.1,1.4)被量化为位置值(1,1,1)。体素19060中的点19050可以在坐标系中具有位置值(0.6,0.5,0.6)。当编码器通过下取整操作来对点19050进行量化时,位置值(0.6,0.5,0.6)被量化为(0,0,0)。
根据实施方式的舍入量化19010可以将几何的点位置值变换为近似整数。体素19090中的点190804可以具有位置值(1.2,1.1,1.4)。1.2,1.1和1.4在1和2之间。在舍入量化中,各坐标值可以被设置为1和2之间的最近值。即,(1.2,1.1,1.4)被量化为(1,1,1)。体素19110中的点19100可以具有位置值(0.6,0.5,0.6)。位置值(0.6,0.5,0.6)可以被量化为位置值(1,1,1)。根据实施方式,可以通过舍入将0.5量化为1。根据实施方式的设置,在两个整数之间的中心处的点(例如0.5)可以被量化为0或1。
根据实施方式的方法/装置可以基于量化技术(例如,上取整、下取整、舍入等)来设置八叉树的节点的代表位置。
如图19所示,根据实施方式的编码器可以通过对几何的位置值进行量化来执行有损编码。
根据实施方式,编码器可以根据编码顺序沿方向19140、19150来对点进行量化。
根据实施方式的量化可用于有损几何编码。当应用无损编码而不是有损编码时,量化操作可以是可选的。
图20示出根据实施方式的重构八叉树的中间节点上的几何(位置)的操作。
图20示出了图18中的S18010的详细操作。
根据实施方式的编码器可以通过仅对八叉树进行编码直到用于空间可缩放性的八叉树的特定深度级别,而不是对整个八叉树进行编码(直到八叉树的叶节点),来生成和发送部分几何比特流。
如图15和图16所示,可以生成直到八叉树的特定深度级别的占用比特,并且根据实施方式的编码器可以基于编码的几何信息重构几何位置信息,以对属性进行编码。
如图18至图20所示,在重新配置几何位置时,根据实施方式的编码器可以设置八叉树中间节点(图20中的LOD N)而不是八叉树的叶节点的代表位置,并将该位置作为点进行重构。
代表位置可以被设置为节点区域(或边界框、体素等)20020、20070、20090、20100(20000)的左、下、前点,或被设置为中间/中心位置。可以根据分布(20010)将其设置为质心。代表位置可以被设置为各种其他角落位置。
根据实施方式的中间位置可以指LOD N中各节点区域的中间位置(边界框的中间值,与在节点内的点位置无关)。
根据实施方式的质心是包括在LOD N中的各节点区域中的点的实际中心值。在检查质心是包括该点的次节点的左/下/前点还是次节点的中心之后,通过信令信息将其位置的类型和次节点的索引(0到7)用信号发送到解码器。
根据实施方式的方法/装置在重构几何位置时将几何值重构为代表位置。这种重构可以确保几何位置与来自属性编码的结果之间的较好匹配。这是因为在属性编码中,权重(距离)是利用移位到代表中间位置的位置来计算的。此外,在部分解码中,当在中间级的位置被重构为下/左/前时,该值可能不是实际值。即,它是虚值。这是因为区域中实际点的位置只有在数据被解码到叶级之后才是已知的。因此,将中心点作为代表位置可以提高编码/解码效率。
在根据实施方式的部分解码中,由于特定原因,例如因为解码器不希望、不可能或不需要解码整个级别,所以可以仅重构直到级别L的数据,该级别L是多个级别中的特定级别。因此,不是从级别0到级别N的节点的所有代表位置都被重构,而是根据解码器所期望的级别L处的各八叉树节点的占用比特来重构代表位置。当八叉树节点的占用比特为0时,不重构相应的代表位置。
根据实施方式的编码器可以表示点云数据,例如八叉树结构中的几何。八叉树由节点区域20020和根据八叉树级别包括在节点区域20020中的点组成。
八叉树级别可以由LOD 20030表示。LOD是从LOD 0到LOD N,并且节点区域的大小随着LOD索引增加到N而减小。在对应于叶节点的级别中,节点区域可以对应于体素。
如在操作20000中,根据实施方式的编码器可以基于诸如LOD的点距离来表示位于八叉树结构中的空间中的几何点。
例如,在级别LOD N-1中,节点区域20020可以包括一个或更多个点。根据实施方式的编码器可以将节点区域20020的点的代表位置设置为左、下、前位置20040。节点区域20020的点可以被认为是代表位置20040的点。在八叉树结构中,级别LOD N-1的节点可以包括多达8个节点作为次节点(或子节点)。包括在级别LOD N中的一个或更多个节点还可以将各节点区域的代表位置设置到各节点区域的左、下、前位置20050。
在操作20010中,与操作20000相比,根据实施方式的编码器可以将各节点区域的代表位置设置为节点区域的中间位置20060。
例如,在级别LOD N-1,节点区域20070的代表位置可以是中心。在八叉树结构中,节点区域20070可以包括多达八个次节点(或子节点)。在级别LOD N,一个或更多个节点可以将各节点的中间位置作为包括在该节点中的一个或更多个点的代表位置20080。
可以用信号通知根据实施方式的八叉树节点的代表位置类型。根据实施方式的编码器可以通过点云比特流发送指示根据实施方式的八叉树节点的代表位置类型(表示操作20000、20010等)的信息作为元数据、信令信息或参数。根据实施方式的接收装置可以基于包含在比特流中的代表位置类型相关信息来重构包括在点云比特流中的几何的位置。
当根据实施方式的编码器基于LOD对属性进行编码时,编码器可以在将中心视为属性的代表位置的情况下搜索相邻点。
例如,当在属性编码中使用权重计算方法时,可以基于到中心的偏移来计算基准距离。
图20示出了与属性编码相比的空间可缩放几何编码方法。
当根据实施方式的编码器根据点在空间中的分布来设置点的质心时,编码器可计算子级别位置处的质心在当前八叉树深度级别(0到N)处所属的位置。质心可以被设置为子级别的左、下、前位置、中间位置或各角落。
根据实施方式的编码器或元数据处理器可以将较低级别的位置索引和较低级别的代表位置类型作为信令信息或参数添加到点云比特流。基于信令信息,根据实施方式的解码器可以重构部分几何位置。
可根据在有损几何的量化中应用的量化类型来设置在部分几何编码中应用的代表性位类型的代表性值。
例如,当量化类型是舍入时,可以将代表位置类型设置为中心。当量化类型是上取整时,代表位置类型可以被设置为右-上-后位置。根据实施方式的量化类型和/或代表位置类型可以作为参数或信令信息在比特流中传送。解码器可以基于参数或信令信息重构部分几何点位置。
根据所述实施方式的方法可以以相同的方式应用于编码器和/或解码器。在属性编码和/或属性解码中,可以基于相同点来进行属性编码/解码。
当部分几何图形被编码时,不仅全八叉树的深度而且用于编码的八叉树的深度级别都可以作为信令信息被传送在比特流中。
将参照图24详细描述根据实施方式的信令信息以及点云比特流的结构。
图20的几何位置重构可以通过以下句法来操作。
for(child=0;child<GeometryNodeChildrenCnt;child++){
childIdx=GeometryNodeChildren[child];
x=2×xN+(childIdx&4)==1;
y=2×yN+(childIdx&2)==1;
z=2×zN+(childIdx&1)==1;
for(i=0;i<GeometryNodeDupPoints[child]+1;i++,PointCount++){
PointPos[PointCount][0]=geomScale(x,0);
PointPos[PointCount][1]=geomScale(y,1);
PointPos[PointCount][2]=geomScale(z,2);
}
if(direct_mode_flag){
if(!duplicatedPointFlag){
for(i=0;i<=num_direct_points_minus1;i++,PointCount++){
PointPos[PointCount][0]=geomScale((x<<EffectiveChildNodeSizeLog2)+PointOffsetX[i],0);
PointPos[PointCount][1]=geomScale((y<<EffectiveChildNodeSizeLog2)+PointOffsetY[i],1);
PointPos[PointCount][2]=geomScale((z<<EffectiveChildNodeSizeLog2)+PointOffsetZ[i],2);
}
}
else{
for(i=0;i<=num_direct_points_minus1;i++,PointCount++){
PointPos[PointCount][0]=geomScale((x<<EffectiveChildNodeSizeLog2)+PointOffsetX[0],0);
PointPos[PointCount][1]=geomScale((y<<EffectiveChildNodeSizeLog2)+PointOffsetY[0],1);
PointPos[PointCount][2]=geomScale((z<<EffectiveChildNodeSizeLog2)+PointOffsetZ[0],2);
}
}
}
}
if(minGeomNodeSizeLog2>1){
mask=(-1)<<minGeomNodeSizeLog2;
for(i=0;i<PointCount;i++){
PointPos[i][0]=(PointPos[i][0]&mask)+(1<<(minGeomNodeSizeLog2-1))
PointPos[i][1]=(PointPos[i][1]&mask)+(1<<(minGeomNodeSizeLog2-1))
PointPos[i][2]=(PointPos[i][2]&mask)+(1<<(minGeomNodeSizeLog2-1))
}
}
根据实施方式的方法/装置可以通过比特操作将特定八叉树级别(例如,LOD 0到N)处的各节点的位置设置为中心值(例如,20060、20080)。即,&和<<操作留下或删除0/1比特以将该位置移动到中心。
八叉树的级别可以被设置为minGeomNodeSizeLog2。
为了应用特定的八叉树级别,Mask=(-1)<<minGeomNodeSizeLog2操作可以基于0和&操作生成比特以来删除最右边的数字。
PointPos[i][0]&mask操作可从位置值中删除右数字。然后,可以生成该级别的八叉树的左、下、前的位置值。
+(1<<(minGeomNodeSizeLog2-1))操作可以获得一个次八叉树节点的大小值。通过添加相应的值,可以得出八叉树级别的中间位置。
图20的几何位置重构的操作可以由几何编码器或点云编码器来执行。此外,与属性编码和/或属性解码相关联地执行几何位置重构。即,当重构几何位置时,也可以重构点云数据。
在重构点云数据时,当不是所有级别都被重构或者数据仅被重构直到中间级别(部分解码,16030)时,可以默认地将重构值设置为左/下/前的值(即,虚值)。不知道在中间节点处哪个次八叉树节点被占用。左/下/前也是虚值。在对属性进行编码和/或解码时,需要计算各点的最近邻居(NN)的权重。因此,在将节点的值移到中间位置值之后计算权重(距离)。
因此,当在中间级别而不是在整个级别(17020)重构几何时,根据用于属性的权重计算方法将几何的位置重构为中心值可以增强重构点与重构颜色之间的匹配,从而获得非常高的PSNR。
将几何重构为左/下/前点可以减小当基于属性位于中心的假设来计算NN的权重时由失配引起的误差。在部分解码中,由于几何/属性两者都被重构到中心(20060、20080)以匹配,因此可以改善PSNR。
可以重构代表位置,以仅解码直到特定级别的数据。即,部分解码是可能的。根据实施方式,可以在完整级别(16010)执行编码。除了在属性编码中将属性编码NN权重移位到中心外,几何位置重构可以提供上述效果。
在通过属性编码中计算与NN的距离来估计权重时,可以将目标点和NN的点两者的位置改变为中心,并且可以计算其距离。即,可缩放性编码是可能的。在部分解码或全级别解码中,可以应用相同的权重。
图21示出了根据实施方式的部分几何解码的操作。
解码器17000和17010对应于部分几何解码的操作,其由图1的接收装置10004的点云视频解码器10006、被配置为执行解码的图2的解码器20003和被配置为解码几何比特流和属性比特流的图13的解码器、图14的XR装置1430、图16的解码器16030执行。
操作21000表示根据实施方式的部分几何解码操作。
为了提供空间可缩放功能,不是所有的八叉树(直到八叉树的叶节点)都可以被编码,而是八叉树的直到特定深度级别的仅一部分可以被编码以生成部分几何比特流并将生成的比特流发送到解码器。例如,可以使用部分几何编码来支持缩略图。
此外,虽然对全八叉树比特流进行了编码,但是由于解码器的容量或资源的缺乏或根据场景,可能存在解码器优先且快速地需要缩略图的情况。在这种情况下,解码器可以不解码所有所接收的基于八叉树的比特流,而是可以仅解码直到八叉树的特定深度水平的比特流的部分。
几何解码可以包括以下三种情况。根据实施方式的接收装置和/或解码器可以分别执行根据实施方式的以下三种情况。
情况1(S21000):接收全几何比特流(全几何编码),并基于全八叉树重构几何位置信息(全几何解码)。
根据实施方式的接收装置或解码器从发送装置或编码器接收包含全分辨率的整个几何的比特流。接收装置可以基于八叉树从整个几何重构关于该几何的整个位置信息。
情况2(S21010):接收全几何比特流(全几何编码),并基于部分八叉树重构几何位置信息(部分几何解码)。
接收装置从发送装置接收包含全分辨率的整个几何的比特流。接收装置可以从基于八叉树的几何(空间可缩放性)重构几何的部分位置信息直到部分特定级别。
情况3(S21020):接收部分几何比特流(部分几何编码),并重构整个所接收的八叉树(部分几何解码)。
接收装置从发送装置接收部分几何比特流。接收装置可以重构对应于部分几何的全部八叉树。
情况2(S21010)和/或情况3(S21020)可以对应于部分几何解码。情况2(S21010)可以对应于图16的操作16010,而情况3(S21020)可以对应于图16的操作16000。
对于部分几何解码,根据实施方式的接收装置可以使用以下描述的信息来执行以下操作S21030和S21040。
S21030:基于量化类型信息,对几何进行解码并重构几何的位置。
基于包含在从编码器接收的比特流中的量化类型信息,解码器可以对几何进行解码并重构几何的位置值。
S21040:基于代表位置信息,对几何进行解码并重构几何的位置。
基于包含在从编码器接收的比特流中的代表位置信息,解码器可以对几何进行解码并重构几何的位置值。
接收装置可以根据以下操作S21050和S21060中的实施方式对部分几何的位置进行解码。
S21050:解析占用比特直到特定级别的八叉树并构造该八叉树(部分解码)。
解码器可以解析包括在接收的几何中的占用比特。然后,解析对应于直到特定级别的八叉树的占用比特以供部分解码。八叉树可以基于所解析的占用比特来构造。
换句话说,可以从几何比特流中解析直到特定级别的八叉树的占用比特以供部分解码,并且可以构造八叉树。可以根据特定级别上的占用比特来构造节点。
S21060:重构节点的位置。
解码器可以重构所构造的节点的位置值。在构造位置值的过程中,可以将节点内的位置计算为与通过量化类型获得的位置相同的位置。例如,如图19所示,可以重构和计算被量化为点19120的点19080的位置。
图22示出了根据实施方式的点云数据编码器的结构。
图22示出了根据对应于图1的发送装置10000、图1的点云视频编码器10002、图2的编码器20001、图4的编码器、图12的发送装置、图14的XR装置1430和图16的编码器16020的实施方式的编码器的详细框图。各个元件对应于硬件、软件、处理器和/或其组合。
图22的各个元件可以总是包括在根据实施方式的编码器中,或者可以选择性地包括在编码器中。可在比特流中传输关于编码器的编码元件的操作的信令信息。
根据实施方式的发送装置或包括在发送装置中的编码器对点云数据进行编码并生成几何信息比特流和/或属性信息比特流。
数据输入单元22000可以接收几何数据、属性数据和/或与其相关的参数。
坐标变换器22010可以变换与几何数据的位置(坐标)信息相关的坐标。坐标变换器17010可以对应于图4中的坐标变换器40000。
几何信息变换量化处理器22020可以被称为几何信息变换量化器。几何信息变换量化处理器22020可以对应于图4中的量化器40001。几何信息变换量化处理器22020可以接收一个完成标度值(量化值)并根据内容的分布调整标度。
空间分割器22030可根据实施方式将点云数据分割为空间分割单元。空间分割器22030可根据点云数据的数据特性使用拼块、方块、基于密度的方法、基于轴的方法、基于属性的方法、基于几何的方法等空间自适应地分割数据空间。空间分割器22030可以执行数据分割。帧可以被划分为拼块(tile)和切片(slice)。源点云数据可被分割成多个切片并在比特流内编码。切片是可以独立编码或解码的一组点。切片可以包括一个几何数据单元和零个或一个或更多个属性数据单元。属性数据单元可以依赖于相同切片中的相应几何数据。在切片中,几何数据单元可以出现在相关属性单元之前。切片中的数据单元是连续的。一组切片可由共同拼块识别符识别。描述各个拼块的边界框的拼块信息可存在于比特流中。拼块可与边界框中的其它拼块交叠。各切片可以包括用于识别所属拼块的索引。
几何信息编码器22040可以对点云数据的几何数据进行编码。几何编码的详细过程可以由以下元件执行。几何信息编码器22040可以允许八叉树生成器基于经量化的点云来生成八叉树,并且允许颜色再调节器使用所生成的八叉树。
为了提供空间可缩放性,几何信息编码器22040(例如,八叉树生成器22060)可以设置八叉树的深度级别,以从所设置的八叉树深度级别设置要编码的点。
应用于部分几何的八叉树深度级别可以作为参数被包括在比特流中并被用信号通知给解码器。八叉树深度级别设置环境可以根据解码器的使用目的或计算性能而改变。
体素化处理器22050可以将几何数据体素化。体素化处理器22050可以对应于图4中的体素化器40001。
体素化类型可以根据实施方式(见图18和图19)根据量化类型设置来对几何进行量化。
由根据实施方式的编码器应用于几何的量化类型可作为参数(信令信息)被包括在比特流中,并被发送到根据实施方式的接收装置。
如上所述,体素化处理器22050可以将有损几何编码中使用的量化类型用信号通知给解码器,使得量化类型可以用在编码器和/或解码器的几何位置重构器22090和23030中。量化类型可以包括上取整、下取整、或舍入。
八叉树生成器22060可以对应于图4中的八叉树分析器40002。八叉树生成器22060可以生成八叉树结构中的几何数据。
当使用几何八叉树时,可以如下执行几何编码:1)可以定义由两个点定义的边界框。通过递归细分边界框来构建八叉树结构。各个立方体被分成8个次立方体。8比特码可以被称为占用代码。当点被占用时,各次立方体一个比特可以被表示为1,或者当点为空时,被表示为0。边大于1的次立方体被进一步分割。尺寸为1的次立方体可以是体素。多个点可以交叠并映射到同一次立方体(体素)。各次立方体的点可以被算术编码。
可以通过从比特流中读取边界框的尺寸来开始解码过程。可以通过根据占用代码划分边界框来生成相同的八叉树结构。当达到尺寸1的次立方体时,次立方体的点可以被算术解码。
八叉树生成器22060可以生成几何的八叉树。其可以生成整个几何的八叉树或几何的一部分的八叉树。
依赖于根据实施方式的深度级别的索引,八叉树生成器22060可以生成包括所有级的叶节点的八叉树(16000),或者可以生成包括直至特定级别的节点的部分八叉树(16010)。发送装置可以将八叉树的深度级别作为参数(信令信息)包括在比特流中,并将其发送到接收装置。
几何信息预测器22070可以对几何数据执行预测。几何信息预测器22070可以生成针对八叉树结构中的父节点和子节点之间的几何数据的预测值。可以通过预测值产生残差比特值以对残差执行熵编码以构造几何比特流。可以通过仅对预测值的残差进行编码来实现有效的比特流传输。几何信息预测器22070可从几何八叉树重构(重新配置)几何数据以供属性编码。这是因为基于经重构的几何数据执行属性编码。
几何信息预测器22070可以不总是被执行。存在操作选项。根据选项值执行几何信息预测。例如,是否执行该操作可以由AdjacentChildNeibhgour标志来通知。
通过几何信息预测器22070生成的值可以指示当前八叉树节点是否被占用。该值被发送并输入到几何位置重构器22090。
几何位置重构器22090的输入值是否是由几何信息预测器22070预测的占用比特对于几何位置重构器22090并不重要。即,只有节点是否被占用对于几何位置重构器22090是重要的。
几何信息熵编码器22080可对几何数据执行熵编码以生成几何比特流。
几何位置重构器22090可以重构几何。即,可以重构经几何编码器22040编码的几何。几何位置值被重构。经重构的几何位置值被提供给属性编码器22100。
几何位置重构器22090可接收各八叉树节点的代表位置类型,并根据代表位置类型来重构几何位置值(见图20)。编码器中使用的代表位置类型可被包括在比特流中的参数中并被提供给解码器。代表位置类型可以包括诸如量化类型(见图19)的类型的使用,诸如左、下、前/右、下、前角(见图20中的20000)的任何角位置的选择、中间位置的选择(见图20的20010)、以及中间位置的选择。
中间位置是指作为节点区域的边界框的中心。
在选择质心的位置时,几何位置重构器22090可分析点的分布,并将所计算的质心值所属的八叉树深度级别的较低级别处的节点的索引作为比特流中的信令信息(参数)发送到解码器。例如,可以发送较低级别节点的索引0到7。
在选择质心的位置时,几何位置重构器22090可基于质心所在的较低级别的节点索引根据要重构的位置的代表位置类型来重构几何位置值。代表位置类型可以作为参数信息被包括在比特流中并被发送到解码器。代表位置类型可以包括诸如量化类型的类型的使用、诸如左、下、前/右、下、前角的任何角位置的选择、中间位置的选择、以及中间位置的选择。
根据实施方式,编码器可以完整地发送数据,解码器可以部分解码数据。根据实施方式的编码器可以部分地编码和发送数据。当编码器部分地编码和发送数据时,通过选择质心位置执行的重构操作可能另外需要较低级别节点的索引,因为在子节点上没有附加信息。因此,较低级别节点的索引可以被发送到解码器。由于存在最多8个次节点,所以编码器可以将次节点当中与质心位置值对应的次节点的索引值发送到解码器。
在解码中接收的节点索引变成形心。当编码器以全分辨率完全编码和发送数据时,解码器不需要接收较低级别的节点索引。这是因为解码器可以找到较低级别并获得质心。然而,当编码器执行部分编码而不是全分辨率编码时,解码器可以接收质心点索引并且可以将其设置为与代表位置值相同。
属性信息编码器22100可以对属性数据进行编码。
属性信息编码器22100可以根据代表位置类型基于经重构的几何对属性进行编码。
在部分编码的情况下,可以基于八叉树的节点的代表位置对属性进行编码,所述八叉树基于包括直至特定级别的八叉树。
属性信息编码器22100可以包括以下元件。
颜色变换处理器21100可以根据数据特征变换属性数据的颜色。
当交叠点被合并到经重构的几何八叉树结构中时,颜色再调节器(未示出)可执行再着色,或执行RAHT属性编码,或根据预测/提升变换属性编码来配置LOD。
LOD配置器(未示出)可以根据点云数据来配置LOD。LOD配置器可以根据基于经重构的几何信息(几何数据)重新着色的属性数据来生成LOD。当在属性编码期间应用预测/提升变换而非RAHT时,可以生成LOD。
相邻点集配置器(未示出)基于LOD为属于该LOD的点在该LOD和更高LOD中配置相邻点集。
在生成LOD1集之后,可以基于LOD1集,在相同或较低LOD的组(节点之间的距离长的组)中找到X(>0)个最近邻居,并且将其登记在预测器中作为相邻点集。
各点可以具有单个预测器。从登记在预测器中的相邻点预测属性。
预测器可用于预测属性。通过将登记的相邻点的属性乘以权重而获得的值的平均值可以用作预测结果,或者特定点可以用作预测结果。关于使用哪种方法,可以预先计算压缩结果值,然后可以选择能够生成最小流的方法。
点的属性值与点的预测器所预测的属性值之间的残差可以与预测器所选择的方法一起被编码,并被发送到接收方。
解码器可以解码所发送的预测方法并根据该方法预测属性值。可以通过对发送的残差进行解码并向其添加预测值来重构属性值。
属性信息预测器(未示出)根据相邻点集预测一个点的属性值。例如,在对点Px进行编码时,当配置了Px的相邻点集时,可以基于该集合中的相邻点的属性值来预测Px的属性值,可以估计所预测的属性值与Px的属性值之间的残差,并且可以对残差值进行编码并将其发送到解码器。解码器通过LOD生成和所接收的附加信息来配置Px的相邻点集,基于相邻集中的相邻点的属性值来预测Px的属性值,并通过将所接收的残差与预测值相加来重构Px的属性值。
残差属性信息量化处理器(未示出)可以生成属性数据的预测值,产生预测值和属性值之间的残差,并量化残差的值。
属性信息熵编码器22120可对属性数据执行熵编码并生成属性比特流。例如,可以对残差进行编码,并且可以生成属性比特流。
根据实施方式的发送装置可以生成指示与几何编码和/或属性编码相关的操作的信令信息(元数据)或参数。根据实施方式的发送装置可生成并发送包含经编码的几何数据、经编码的属性数据、相关元数据等的比特流(见图24至图31)。
根据实施方式的点云数据发送方法可以包括对点云数据进行编码,并发送包含点云数据的比特流。
根据实施方式的点云数据的编码可以包括对点云数据的几何数据进行编码,以及对点云数据的属性数据进行编码。
根据实施方式的属性数据的编码可以包括:基于点云数据生成细节级别(LOD),根据LOD搜索当前点的最近相邻点,基于最近相邻点生成当前点的属性值的预测值,以及对当前点的属性值与预测值之间的残差进行编码。
根据实施方式的对几何进行的编码可以包括基于八叉树来对几何进行体素化或表示几何。
根据实施方式的编码还可以包括重构几何的位置。几何的位置的重构可以基于几何的八叉树重构几何的位置直至八叉树的特定级别。
根据实施方式的对几何的位置的重构可以基于特定级别的各八叉树节点的中心位置来重构几何的位置。
图23示出了根据实施方式的点云数据解码器的结构。
图23的解码器可以对应于图1的接收装置10004的点云视频解码器10006、图2的解码20003、图10和图11的解码器、被配置为解码几何比特流和属性比特流的图13的接收装置、以及被配置为处理点云数据的图14的XR装置1430,或与其组合。各个元件可以对应于硬件、软件、处理器和/或其组合。
图23的各个元件可以总是包括在根据实施方式的编码器中,或者可以选择性地包括在编码器中。可以基于关于编码器的编码元件的操作的信令信息来执行解码器的各个元件的操作。
根据实施方式的接收装置或包括在接收装置中的解码器可以接收比特流。比特流包含经编码的几何数据、经编码的属性数据和相关元数据。根据实施方式的接收装置基于比特流和/或比特流中包含的与几何编码相关的元数据(参数)以及与属性编码相关的元数据(参数)来解码和重构点云数据。
几何信息解码器23000可以接收几何信息比特流并对几何信息进行解码。几何信息解码器23000可以是与发送侧的几何信息编码器22040相对应的接收侧的解码器。几何信息解码器23000可以执行与几何信息编码器22040的操作相反的处理。
几何信息熵解码器23010可接收几何信息比特流并基于熵方案对解码几何信息。几何信息熵解码器23010可以执行与几何信息熵编码器22080的操作相反的处理。
八叉树重构器23020可以根据几何信息重构八叉树。八叉树重构器23020可以执行八叉树生成器22060的操作的逆处理。
八叉树重构器23020可以从经重构的八叉树深度级别构造和解码要进行属性解码的点以用于部分几何解码。
八叉树重构器23020可以基于与包含在所接收的比特流中的部分八叉树级别相关的信息来生成完整或部分八叉树。
几何位置重构器23030可重构根据通过经恢复的量化类型或经恢复的代表位置类型部分解码的八叉树中的占用比特重构的节点的位置值。
几何位置重构器23030可以基于与包括在所接收的比特流中的量化类型和代表位置类型相关的信息来重构几何位置。
几何信息预测器23040可以生成几何信息的预测值。例如,可以在八叉树结构中生成节点间预测值,并且可以使用预测值的残差来有效地解码几何信息。几何信息预测器23040可以执行与几何信息预测器22070的操作相反的处理。
几何信息变换逆量化处理器23050可以对几何数据进行逆量化。例如,几何信息变换逆量化处理器23050可以从包含在比特流中的信令信息(参数)获得缩放值(量化值),并且可以基于缩放值将逆量化应用于经重构的几何信息。
坐标逆变换器23060可以对关于几何信息的坐标信息进行逆变换。坐标逆变换器23060可以执行坐标变换器22010的操作的逆处理。
属性信息解码器23070可接收属性信息比特流并对属性信息进行解码。属性信息解码器23070可以执行与属性信息编码器22100的操作相反的处理。
属性残差信息熵解码器23080可以基于熵方案对包含在属性信息比特流中的属性残差信息(例如,属性信息的残差)进行解码。属性残差信息熵解码器23080可执行与属性信息熵编码器22120的操作相反的处理。
属性信息解码器23070还可以包括以下元件。
LOD配置器(未示出)可以根据点云数据来配置LOD。LOD配置器22080可以基于经重构的几何信息(几何数据)从重新调整颜色的属性数据生成LOD。当在属性编码期间应用预测/提升变换而非RAHT时,可以生成LOD。LOD配置器可以对应于图22的属性信息编码器中包括的LOD配置器。
相邻点集配置器(未示出)可以基于从属性信息比特流生成的LOD来搜索包括在LOD中的点的相邻点,并将其登记为相邻点集。相邻点集配置器可以对应于图22的属性信息编码器中包括的相邻点集配置器。
属性信息预测器(未示出)可以生成属性信息的预测值。例如,属性信息预测器可从LOD和相邻点集生成点的预测值,并生成预测值的残差。属性信息预测器可执行与包括在图22的属性信息编码器中的属性信息预测器的操作相反的处理。
残差属性信息逆量化处理器23090可以对残差属性信息进行逆量化,例如对属性信息的残差进行逆量化。残差属性信息逆量化处理器23090可执行包括在图22的属性信息编码器中的残差属性信息量化处理器的操作的逆处理。
颜色逆变换处理器23100可以对作为属性信息的颜色信息进行逆变换。颜色逆变换处理器23100可以执行颜色变换处理器22100的操作的逆处理。
根据实施方式的点云数据接收装置可以包括:接收器,其被配置为接收包含点云数据的比特流;以及解码器,其被配置为对比特流进行解码。
根据实施方式,被配置为对点云数据进行解码的解码器包括:几何解码器,其被配置为对点云数据的几何数据进行解码;以及属性解码器,其被配置为对点云数据的属性数据进行解码。
根据实施方式,被配置为对属性数据进行解码的属性解码器基于点云数据生成细节级别(LOD),从LOD搜索当前点的最近相邻点,基于最近相邻点生成当前点的属性值的预测值,并基于预测值和点云数据的残差来重构点云数据,其中,预测值是基于预测模式生成的。
根据实施方式的被配置为对几何进行解码的几何解码器可以基于八叉树表示几何。
根据实施方式的解码器可以基于几何的八叉树重构几何的位置直到八叉树的特定级别。
根据实施方式的解码器可以基于在特定级别上各八叉树节点的中间位置来重构几何的位置。
图24示出根据实施方式的与点云数据相关的比特流的结构。
图24示出了由图1的发送装置10000的点云视频编码器10002、图2的编码20001、图4的编码器、图12的发送装置、图14的XR装置、图22的编码器等生成的比特流的结构。
图24的比特流可由图1的接收装置10004的点云视频解码器10006、图2的解码20003、图10和图11的解码器、图13的接收装置、图14的XR装置、图23的解码器等接收和解码。
根据实施方式的方法/装置可以对点云数据进行编码,生成相关信息,并在比特流中发送/接收相关信息。例如,被配置为执行几何编码和/或属性编码的点云数据编码器可以生成如下所述的经编码的点云(或包含点云的比特流)。此外,如下所述,关于点云数据的信令信息可以由点云数据发送装置的元数据处理器生成并处理,并被包括在点云中。
根据实施方式的信令信息可以由根据实施方式的发送/接收装置(例如,发送装置的元数据处理器12007(其可以被称为元数据产生器等))产生和发送,并且可以由接收装置的元数据解析器13006接收和获取。可以基于信令信息来执行根据实施方式的接收装置的各操作。
在本公开中使用以下缩写:SPS(序列参数集)、GPS(几何参数集)、APS(属性参数集)、TPS(拼块参数集)、Geom(几何比特流(几何比特流=几何切片头+几何切片数据))、Attr(属性比特流(=属性块(切片)头+属性块(切片)数据))。这里,块可以被称为方块、切片等。
根据实施方式的点云数据可以采用如图24所示的比特流的形式。根据实施方式,点云数据可包含含有信令信息的序列参数集(SPS)、几何参数集(GPS)、属性参数集(APS)和拼块参数集(TPS)。点云数据可以包含一个或更多个几何和/或属性。点云数据中的几何和/或属性可以被分成一个或更多个切片(或块/方块)。该几何图形可以具有几何图形片段头和几何图形片段数据的结构。例如,包含信令信息的TPS可以包括Tile(0)_tile_bounding_box_xyz0和Tile(0)_tile_bounding_box_whd。几何可以包括geom_geom_parameter_set_id、geom_tile_id、geom_slice_id、geomBoxOrigin、geom_box_log2_scale、geom_max_node_size_log2和geom_num_points。
根据实施方式的信令信息可被添加到SPS、GPS、APS、TPS等并被发信号通知。
根据实施方式,可以将信令信息添加到TPS、针对各个切片的几何(Geom)、或针对各个切片的属性(Attr),并且用信号通知。
根据实施方式的点云数据的结构可以有效地提供包括关于编码/解码/数据的信令信息的参数集,几何和属性。
与根据实施方式的点云数据发送/接收装置相关的点云数据可包含序列参数、几何参数、属性参数、拼块参数、几何比特流或属性比特流中的至少一个。
在下文中,将参考附图描述特定信令信息的句法。作为参考,可以在信令信息的预定含义/功能的范围内改变/扩展根据实施方式的信令信息的名称。信令信息的字段可以被可区分地称为第一信令信息、第二信令信息等。
如上所述,点云数据发送装置可以以比特流的形式传输编码的点云数据。根据实施方式,比特流可以包括一个或更多个子比特流。
考虑到传输信道的错误,点云数据发送装置将点云数据的图像划分为一个或更多个分组,并通过网络传输。根据实施方式的比特流可以包含一个或更多个分组(例如,网络抽象层(NAL)单元)。因此,即使当一些分组在不良网络环境中丢失时,点云数据接收装置也可使用剩余分组来重构图像。点云数据可被分成一个或更多个切片或一个或更多个拼块并被处理。根据实施方式的拼块和切片是用于分割点云数据的画面并通过点云压缩编码对其进行处理的区域。点云数据发送装置可以通过根据点云数据各个个划分区域的重要性处理与各个区域对应的数据来提供高质量的点云内容。即,根据实施方式的点云数据发送装置可以通过点云压缩编码以较好的压缩效率和适当的延迟来处理对应于对用户重要的区域的数据。
根据实施方式的点云内容的图像(或画面)被分割到用于点云压缩编码的基本处理单位。根据实施方式的用于点云压缩编码的基本处理单位可以包括编码树单元(CTU)和块,但不限于此示例。
根据实施方式的切片是包括用于一个或更多个点云压缩编码的基本处理单位的区域,并且不具有矩形形状。根据实施方式的切片包含通过分组发送的数据。根据实施方式的拼块是在图像中以矩形形状分割的区域,并且包括用于一个或更多个点云压缩编码的基本处理单位。根据实施方式的一个切片可以包括在一个或更多个片中。此外,根据实施方式的一个拼块可以包括在一个或更多个切片中。
根据实施方式的比特流可包含信令信息,该信令信息包括用于信令序列级别的序列参数集(SPS)、用于用信号通知几何信息编码的几何参数集(GPS)、用于用信号通知属性信息编码的属性参数集(APS)、以及用于用信号通知拼块级的拼块参数集(TPS)、以及一个或更多个切片。
根据实施方式的SPS可以对诸如简档和级别的整个序列的信息进行编码,并且可以包括关于整个文件的综合信息,诸如画面分辨率和视频格式。
根据实施方式的一个切片(例如,切片0)包含切片头和切片数据。切片数据可以包括一个几何比特流Geom00和一个或更多个属性比特流Attr00和Attr10。几何比特流可含有头(例如,几何切片头)和负载(例如,几何切片数据)。根据实施方式的几何比特流的头可含有关于包含在GPS中的参数集的识别信息(geom_geom_parameter_set_id)、拼块识别符(geom_tileid)、切片识别符(geom_slice_id)、关于几何框的起点信息(geomBoxOrigin)、几何框标度(geom_box_log2_scale)、最大几何节点大小(geom_max_node_size_log2)、几何点的数目(geom_num_poins)和关于包含在负载中的数据的信息。属性比特流可含有头(例如,属性切片头或属性块头)和负载(例如,属性切片数据或属性块数据)。
可以用信号通知相关信息以实现实施方式。根据实施方式的信令信息可以在发送侧或接收侧使用。
几何数据(Geom):几何比特流=几何切片头+几何切片数据
属性数据(Attr):属性比特流=属性块头+属性块数据。根据实施方式,块可以被称为切片(块=切片)。
根据实施方式的方法/装置可以将与根据实施方式的预测器选择相关的选项信息添加到SPS或APS并发送该信息。
根据实施方式的方法/装置可以将与预测器选择相关的选项信息添加到针对各个切片的TPS或属性头,并发送该选项信息。
根据实施方式的方法/装置可以将数据划分为拼块或切片,使得点云可以被区域划分和处理,并且可以为各个拼块/切片生成和发送信令信息。
在将点云划分为多个区域时,可以设置为各个区域生成不同的相邻点集的选项,从而虽然结果的可靠性稍低但获得低复杂度,或者虽然复杂度高但获得高可靠性。其可以根据接收方的处理能力来不同地设置。
根据实施方式的方法/装置可以在SPS和/或GPS中发信号通知针对在编码和/或解码几何的过程中使用的空间可缩放性函数的几何点重构相关信息。
根据实施方式的方法/装置可以在针对各个切片的TPS和/或Geom_slice_header中用信号通知针对在编码和/或解码几何的过程中使用的空间可缩放性函数的几何点重构相关信息。
由于可以根据3D空间中的特定区域执行不同的几何编码,所以当根据实施方式的方法/装置将点云数据划分为区域时,可以使用不同的几何位置重构方法。
因此,当根据实施方式的方法/装置将点云划分为拼块时,可以对各个拼块应用不同的几何位置重构方法。
当根据实施方式的方法/装置将点云划分为切片时,可以对针对各个切片应用不同的几何位置重构方法。
根据实施方式的方法/装置可以将通过对几何(Geom)的部分编码的节点的分布分析获得的质心位置信息添加到几何节点,并且用信号通知。
在下文中,将描述包括在比特流中的特定信息(元素)的句法或定义。
图25示出了根据实施方式的序列参数集(SPS)。
图25所示的SPS被包括在图23中。
根据实施方式的SPS可以包括用于重构几何点以对几何的空间可缩放性进行编码和/或解码的信息。
profile_idc指示根据实施方式的比特流所符合的简档。比特流可以不包含除了实施方式中指定的值之外的profile_idc的值。profile_idc的值可由ISO/IEC保留以供将来使用。
等于1的profile_compatibility_flag指示比特流符合由等于j的profile_idc指示的简档。
sps_num_attribute_sets指示比特流中编码属性的数量。sps_num_attribute_sets的值可以在0到63的范围内。
根据sps_num_attribute_set sets将属性的以下元素包括在SPS中。
attribute_dimension[i]指定第i属性的分量的数目。
attribute_instance_id[i]指定用于第i属性的instanceID。
spatial_scalability_LOD可以指示用于支持空间可缩放性的编码八叉树深度级别。
spatial_scalability_geom_quantization_type可以指示几何量化类型。
例如,spatial_scalability_geom_quantization_type等于0可以指示舍入方法。spatial_scalability_geom_quantization_type等于1可以指示上取整方法。spatial_scalability_geom_quantization_type等于2可以指示下取整方法。根据实施方式,可以以各种方式改变指示信息的整数值。
spatial_scalability_geom_position_type可以指示重构属于节点的几何位置的方法。
例如,当spatial_scalability_geom_position_type等于0时,几何位置重构方法与量化类型相同。在舍入的情况下,几何可以被重构为中心。在上取整方法的情况下,几何可以被重构为右-上-后位置。当spatial_scalability_geom_position_type等于1时,几何位置可被重构为左-下-前位置。当spatial_scalability_geom_position_type等于2时,几何位置可被重构为左-下-后位置。当spatial_scalability_geom_position_type等于3时,几何位置可被重构为左-上-前位置。当spatial_scalability_geom_position_type等于4时,几何位置可被重构为左-上-后位置。当spatial_scalability_geom_position_type等于5时,几何位置可被重构为右-下-前位置。当spatial_scalability_geom_position_type等于6时,几何位置可被重构为右-下-后位置。当spatial_scalability_geom_position_type等于7时,几何位置可被重构为右-上-前位置。当spatial_scalability_geom_position_type等于8时,几何位置可被重构为右-上-后位置。当spatial_scalability_geom_position_type等于9时,几何位置可被重构为中间/中心位置。当spatial_scalability_geom_position_type等于10时,几何位置可被重构为具有通过分布计算的质心的子节点位置。
当spatial_scalability_geom_position_type等于10时,spatial_scalability_geom_centroid_position_type被包括在SPS中。
当几何位置被重构为通过分布计算的质心时,spatial_scalability_geom_centroid_position_type可以指示重构质心所属的节点的位置的方法。
例如,spatial_scalability_geom_centroid_position_type等于0,可以以与量化类型相同的方法来重构质心所属的节点的位置。当量化类型是舍入时,可以通过构造中心来重构节点的位置。当量化类型是上取整方法时,可以通过构造右-上-后位置来重构节点的位置。当spatial_scalability_geom_centroid_position_type等于1时,质心所属的节点的位置可以被构造为左-下-前位置。当spatial_scalability_geom_centroid_position_type等于2时,质心所属的节点的位置可以被构造为左-下-后位置。当spatial_scalability_geom_centroid_position_type等于3时,质心所属的节点的位置可以被构造为左-上-前位置。当spatial_scalability_geom_centroid_position_type等于4时,质心所属的节点的位置可以被构造为左-上-后位置。当spatial_scalability_geom_centroid_position_type等于5时,质心所属的节点的位置可以被构造为右-下-前位置。当spatial_scalability_geom_centroid_position_type等于6时,质心所属的节点的位置可以被构造为右-下-后位置。当spatial_scalability_geom_centroid_position_type等于7时,质心所属的节点的位置可以被构造为右-上-前位置。当spatial_scalability_geom_centroid_position_type等于8时,质心所属的节点的位置可以被构造为右-上-后位置。当spatial_scalability_geom_centroid_position_type等于9时,质心所属的节点的位置可以被构造为中间/中心位置。
图26示出了根据实施方式的几何参数集(GPS)。
图26的GPS对应于图24的GPS。
根据实施方式的GPS可以包括用于重构几何点以编码和/或解码几何的空间可缩放性的信息。
spatial_scalability_LOD可以指示用于支持空间可缩放性的编码八叉树深度级别。
spatial_scalability_geom_quantization_type可以指示几何量化类型。
例如,spatial_scalability_geom_quantization_type等于0可以指示舍入方法。spatial_scalability_geom_quantization_type等于1可以指示上取整方法。spatial_scalability_geom_quantization_type等于2可以指示下取整方法。根据实施方式,可以以各种方式改变指示信息的整数值。
spatial_scalability_geom_position_type可以指示重构属于节点的几何位置的方法。
例如,当spatial_scalability_geom_position_type等于0时,几何位置重构方法与量化类型相同。在舍入的情况下,几何可以被重构为中心。在上取整方法的情况下,几何可以被重构为右-上-后位置。当spatial_scalability_geom_position_type等于1时,几何位置可被重构为左-下-前位置。当spatial_scalability_geom_position_type等于2时,几何位置可被重构为左-下-后位置。当spatial_scalability_geom_position_type等于3时,几何位置可被重构为左-上-前位置。当spatial_scalability_geom_position_type等于4时,几何位置可被重构为左-上-后位置。当spatial_scalability_geom_position_type等于5时,几何位置可被重构为右-下-前位置。当spatial_scalability_geom_position_type等于6时,几何位置可被重构为右-下-后位置。当spatial_scalability_geom_position_type等于7时,几何位置可被重构为右-上-前位置。当spatial_scalability_geom_position_type等于8时,几何位置可被重构为右-上-后位置。当spatial_scalability_geom_position_type等于9时,几何位置可被重构为中间/中心位置。当spatial_scalability_geom_position_type等于10时,几何位置可被重构为具有通过分布计算的质心的子节点位置。
当spatial_scalability_geom_position_type等于10时,spatial_scalability_geom_centroid_position_type被包括在GPS中。
当几何位置被重构为通过分布计算的质心时,spatial_scalability_geom_centroid_position_type可以指示重构质心所属的节点的位置的方法。
例如,spatial_scalability_geom_centroid_position_type等于0,可以以与量化类型相同的方法来重构质心所属的节点的位置。当量化类型是舍入时,可以通过构造中心来重构节点的位置。当量化类型是上取整方法时,可以通过构造右-上-后位置来重构节点的位置。当spatial_scalability_geom_centroid_position_type等于1时,质心所属的节点的位置可以被构造为左-前-下位置。当spatial_scalability_geom_centroid_position_type等于2时,质心所属的节点的位置可以被构造为左-下-后位置。当spatial_scalability_geom_centroid_position_type等于3时,质心所属的节点的位置可以被构造为左-上-前位置。当spatial_scalability_geom_centroid_position_type等于4时,质心所属的节点的位置可以被构造为左-上-后位置。当spatial_scalability_geom_centroid_position_type等于5时,质心所属的节点的位置可以被构造为右-下-前位置。当spatial_scalability_geom_centroid_position_type等于6时,质心所属的节点的位置可以被构造为右-下-后位置。当spatial_scalability_geom_centroid_position_type等于7时,质心所属的节点的位置可以被构造为右-上-前位置。当spatial_scalability_geom_centroid_position_type等于8时,质心所属的节点的位置可以被构造为右-上-后位置。当spatial_scalability_geom_centroid_position_type等于9时,质心所属的节点的位置可以被构造为中间/中心位置。
spatial_scalability_tile_based_geom_reconstruction_flag是指示是否逐个几何拼块应用不同的几何重构方案的标志。
gps_geom_parameter_set_id为提供针对GPS的标识符,以供其它句法元素参考。gps_seq_parameter_set_id的值可以在0到15的范围内,包括端点。
gps_seq_parameter_set_id指定活动SPS的sps_seq_parameter_set_id的值。gps_seq_parameter_set_id的值可以在0到15的范围内,包括端点。
图27示出了根据实施方式的拼块参数集(TPS)。
图27对应于图24的TPS。
根据实施方式的TPS可以包括用于重构几何点以对几何的空间可缩放性进行编码和/或解码的信息。
当spatial_scalability_tile_based_geom_reconstruction_flag等于‘true’时,TPS中包括以下元素。
spatial_scalability_LOD可以指示应用于拼块以支持空间可缩放性的编码八叉树深度级别。
spatial_scalability_geom_quantization_type可以指示应用于拼块的几何量化类型。
例如,spatial_scalability_geom_quantization_type等于0可以指示舍入方法。spatial_scalability_geom_quantization_type等于1可以指示上取整方法。spatial_scalability_geom_quantization_type等于2可以指示下取整方法。根据实施方式,可以以各种方式改变指示信息的整数值。
spatial_scalability_geom_position_type可以指示重构属于应用于拼块的节点的几何位置的方法。
例如,当spatial_scalability_geom_position_type等于0时,几何位置重构方法与量化类型相同。在舍入的情况下,几何可以被重构为中心。在上取整方法的情况下,几何可以被重构为右-上-后位置。当spatial_scalability_geom_position_type等于1时,几何位置可被重构为左-下-前位置。当spatial_scalability_geom_position_type等于2时,几何位置可被重构为左-下-后位置。当spatial_scalability_geom_position_type等于3时,几何位置可被重构为左-上-前位置。当spatial_scalability_geom_position_type等于4时,几何位置可被重构为左-上-后位置。当spatial_scalability_geom_position_type等于5时,几何位置可被重构为右-下-前位置。当spatial_scalability_geom_position_type等于6时,几何位置可被重构为右-下-后位置。当spatial_scalability_geom_position_type等于7时,几何位置可被重构为右-上-前位置。当spatial_scalability_geom_position_type等于8时,几何位置可被重构为右-上-后位置。当spatial_scalability_geom_position_type等于9时,几何位置可被重构为中间/中心位置。当spatial_scalability_geom_position_type等于10时,几何位置可被重构为具有通过分布计算的质心的子节点位置。
当spatial_scalability_geom_position_type等于10时,spatial_scalability_geom_centroid_position_type被包括在TPS中。
当几何位置被重构为通过分布计算的质心时,spatial_scalability_geom_centroid_position_type可以指示重构质心所属的节点的位置的方法。
例如,spatial_scalability_geom_centroid_position_type等于0,可以以与量化类型相同的方法来重构质心所属的节点的位置。当量化类型是舍入时,可以通过构造中心来重构节点的位置。当量化类型是上取整方法时,可以通过构造右-上-后位置来重构节点的位置。当spatial_scalability_geom_centroid_position_type等于1时,质心所属的节点的位置可以被构造为左-下-前位置。当spatial_scalability_geom_centroid_position_type等于2时,质心所属的节点的位置可以被构造为左-下-后位置。当spatial_scalability_geom_centroid_position_type等于3时,质心所属的节点的位置可以被构造为左-上-前位置。当spatial_scalability_geom_centroid_position_type等于4时,质心所属的节点的位置可以被构造为左-上-后位置。当spatial_scalability_geom_centroid_position_type等于5时,质心所属的节点的位置可以被构造为右-下-前位置。当spatial_scalability_geom_centroid_position_type等于6时,质心所属的节点的位置可以被构造为右-下-后位置。当spatial_scalability_geom_centroid_position_type等于7时,质心所属的节点的位置可以被构造为右-上-前位置。当spatial_scalability_geom_centroid_position_type等于8时,质心所属的节点的位置可以被构造为右-上-后位置。当spatial_scalability_geom_centroid_position_type等于9时,质心所属的节点的位置可以被构造为中间/中心位置。
spatial_scalability_slice_based_geom_reconstitution_flag是指示是否在逐切片应用不同的几何重构方案的标志。
num_tiles指定针对比特流用信号通知的拼块的数目。当不存在时,num_tiles可被推定为0。
可根据num_tiles在TPS中传送下文描述的拼块边界框偏移元素。
tile_bounding_box_offset_x[i]可表示笛卡尔坐标中第i个拼块的x偏移。当不存在时,tile_bounding_box_offset_x[0]的值可以被推定为sps_bounding_box_offset_x。
tile_bounding_box_offset_y[i]表示在笛卡尔坐标中表示第i个拼块的y偏移。当不存在时,tile_bounding_box_offset_y[0]的值可以被推定为sps_bounding_box_offset_y。
tile_bounding_box_offset_z[i]表示在笛卡尔坐标中表示第i个拼块的z偏移。当不存在时,tile_bounding_box_offset_z[0]的值可以被推定为sps_bounding_box_offset_z。
图28示出了根据实施方式的几何切片头(GSH)。
图28对应于图24的GSH。
根据实施方式的GSH可以包括用于重构几何点以编码和/或解码几何的空间可缩放性的信息。
当spatial_scalability_slice_based_geom_reconstruction_flag等于‘true’时,GSH中可以包括以下元素。
spatial_scalability_LOD可以指示应用于支持空间可缩放性的切片的编码八叉树深度级别。
spatial_scalability_geom_quantization_type可以指示应用于切片的几何量化类型。
例如,spatial_scalability_geom_quantization_type等于0可以指示舍入方法。spatial_scalability_geom_quantization_type等于1可以指示上取整方法。spatial_scalability_geom_quantization_type等于2可以指示下取整方法。根据实施方式,可以以各种方式改变指示信息的整数值。
spatial_scalability_geom_position_type可以指示重构属于应用于切片的节点的几何位置的方法。
例如,当spatial_scalability_geom_position_type等于0时,几何位置重构方法与量化类型相同。在舍入的情况下,几何可以被重构为中心。在上取整方法的情况下,几何可以被重构为右-上-后位置。当spatial_scalability_geom_position_type等于1时,几何位置可被重构为左-下-前位置。当spatial_scalability_geom_position_type等于2时,几何位置可被重构为左-下-后位置。当spatial_scalability_geom_position_type等于3时,几何位置可被重构为左-上-前位置。当spatial_scalability_geom_position_type等于4时,几何位置可被重构为左-上-后位置。当spatial_scalability_geom_position_type等于5时,几何位置可被重构为右-前-下位置。当spatial_scalability_geom_position_type等于6时,几何位置可被重构为右-下-后位置。当spatial_scalability_geom_position_type等于7时,几何位置可被重构为右-上-前位置。当spatial_scalability_geom_position_type等于8时,几何位置可被重构为右-上-后位置。当spatial_scalability_geom_position_type等于9时,几何位置可被重构为中间/中心位置。当spatial_scalability_geom_position_type等于10时,几何位置可被重构为具有通过分布计算的质心的子节点位置。
当spatial_scalability_geom_position_type等于10时,spatial_scalability_geom_centroid_position_type被包括在GSH中。
当几何位置被重构为通过分布计算的质心时,spatial_scalability_geom_centroid_position_type可以指示重构质心所属的节点的位置的方法。
例如,spatial_scalability_geom_centroid_position_type等于0,可以以与量化类型相同的方法来重构质心所属的节点的位置。当量化类型是舍入时,可以通过构造中心来重构节点的位置。当量化类型是上取整方法时,可以通过构造右-上-后位置来重构节点的位置。当spatial_scalability_geom_centroid_position_type等于1时,质心所属的节点的位置可以被构造为左-下-前位置。当spatial_scalability_geom_centroid_position_type等于2时,质心所属的节点的位置可以被构造为左-下-后位置。当spatial_scalability_geom_centroid_position_type等于3时,质心所属的节点的位置可以被构造为左-上-前位置。当spatial_scalability_geom_centroid_position_type等于4时,质心所属的节点的位置可以被构造为左-上-后位置。当spatial_scalability_geom_centroid_position_type等于5时,质心所属的节点的位置可以被构造为右-下-前位置。当spatial_scalability_geom_centroid_position_type等于6时,质心所属的节点的位置可以被构造为右-下-后位置。当spatial_scalability_geom_centroid_position_type等于7时,质心所属的节点的位置可以被构造为右-上-前位置。当spatial_scalability_geom_centroid_position_type等于8时,质心所属的节点的位置可以被构造为右-上-后位置。当spatial_scalability_geom_centroid_position_type等于9时,质心所属的节点的位置可以被构造为中间/中心位置。
gsh_geometry_parameter_set_id指定活动GPS的gps_geom_parameter_set_id的值。
gsh_tile_id指定可由GSH引用的tile_id的值。gsh_tile_id的值应在0到XX的范围内,包含端点。
gsh_slice_id标识由其他句法元素引用的切片头。gsh_slice_id的值可以在0到XX的范围内,包含端点。
图29示出了根据实施方式的几何节点。
图29示出了关于包含在图24的比特流中的几何的节点信息。
在几何编码和/或解码期间为空间可缩放性重构几何点的过程中,当代表位置类型是质心时,根据实施方式的方法/装置可以将质心相关信息添加到几何节点。
child_occupancy_idx:在基于通过分布计算的质心重构几何位置时,child_occupancy_idx指示质心所属的节点的位置。节点位置可以对应于子节点的索引。例如,其可以具有0到7的值。
single_occupancy_flag:当等于1时,single_occupancy_flag指示当前节点包括单个子节点。当等于0时,single_occupancy_flag指示所述当前节点包括多个子节点。
当spatial_scalability_geom_position_type等于10(质心)时,几何节点可以包括子占用指数。
根据实施方式的方法/装置可以提供诸如基于根据实施方式的操作和信令信息的空间可缩放性的效果。
空间可缩放性是当点云数据密集并且带宽低时能够发送和处理低分辨率点云的功能。其也是当点云数据密集并且接收到整个八叉树流但是解码器缺少解码器的容量或资源,或者根据场景优先且快速地需要缩略图时,能够通过仅解码直到八叉树的特定深度级别的比特流而不是解码整个所接收的基于八叉树的比特流来提供低分辨率点云的功能。
为了在实施方式的G-PCC几何编码/解码过程中提供空间可缩放性效果,提供了构造部分八叉树并根据所构造的最后级别八叉树节点重构位置的操作。
所提出的重构八叉树节点的点的方法可以增加用于空间可缩放性的部分编码/解码的几何的压缩效率,这依赖于几何被重构到的位置。
因此,在本公开中,可以提供一种用于提供用于压缩3D点云数据的基于几何的点云压缩(G-PCC)编码器/解码器的空间可缩放功能的几何压缩方法,并且可以提高几何压缩效率。
根据实施方式的方法/装置(发送方法/装置和/或接收方法/装置)可以提供用于空间可缩放性的各种几何位置重构方法,从而有效地编码/解码各种类型的点云数据。
参照图20,在重构几何时,根据实施方式的方法/装置可以针对各个LOD级别不同地设置质心。即,在图20的情况下,基于一种质心设置方法,基于从LOD 0到特定级别(LODN)的节点的代表位置来重构几何。在其它实施方式中,不同类型的质心设置方法可以以各种方式应用于相应的LOD级别。即,可以针对各个LOD级别不同地执行操作S21040。根据实施方式的发送装置和/或编码器可以分析针对各个LOD的质心,并将指示针对各个LOD的质心分析方法的信息发送到根据实施方式的接收装置和/或解码器。
根据实施方式的用于代表位置类型的所有方案可以应用于各个LOD,并且可以用信号通知给解码器。
可以对八叉树的各个LOD执行根据实施方式的操作21020(几何位置重构)。
图30示出了根据实施方式的SPS。
图30可以对应于图25的SPS。
对于图30中包括的元素的定义,可以参照图25的对应元素的描述。
根据实施方式的SPS可以包括用于重构几何点以对几何的空间可缩放性进行编码和/或解码的信息。
profile_idc指示根据实施方式的比特流所符合的简档。比特流可以不包含除了实施方式中指定的值之外的profile_idc的值。profile_idc的值可由ISO/IEC保留以供将来使用。
profile_compatibility_flag等于1指示比特流符合由等于j的profile_idc指示的简档。
sps_num_attribute_sets指示比特流中编码属性的数量。sps_num_attribute_sets的值可以在0到63的范围内。
根据sps_num_attribute_set sets,可以将属性的以下元素包括在SPS中。
attribute_dimension[i]指定第i属性的分量的数目。
attribute_instance_id[i]指定用于第i属性的instanceID。
spatial_scalability_LOD可以指示用于支持空间可缩放性的编码八叉树深度级别。
spatial_scalability_geom_quantization_type可以指示几何量化类型。
例如,spatial_scalability_geom_quantization_type等于0可以指示舍入方法。spatial_scalability_geom_quantization_type等于1可以指示上取整方法。spatial_scalability_geom_quantization_type等于2的可以指示下取整方法。根据实施方式,可以以各种方式改变指示信息的整数值。
spatial_scalability_geom_position_type可以指示重构属于节点的几何位置的方法。
例如,当spatial_scalability_geom_position_type等于0时,几何位置重构方法与量化类型相同。在舍入的情况下,几何可以被重构为中心。在上取整方法的情况下,几何可以被重构为右-上-后位置。当spatial_scalability_geom_position_type等于1时,几何位置可被重构为左-下-前位置。当spatial_scalability_geom_position_type等于2时,几何位置可被重构为左-下-后位置。当spatial_scalability_geom_position_type等于3时,几何位置可被重构为左-上-前位置。当spatial_scalability_geom_position_type等于4时,几何位置可被重构为左-上-后位置。当spatial_scalability_geom_position_type等于5时,几何位置可被重构为右-前-下位置。当spatial_scalability_geom_position_type等于6时,几何位置可被重构为右-下-后位置。当spatial_scalability_geom_position_type等于7时,几何位置可被重构为右-上-前位置。当spatial_scalability_geom_position_type等于8时,几何位置可被重构为右-上-后位置。当spatial_scalability_geom_position_type等于9时,几何位置可被重构为中间/中心位置。当spatial_scalability_geom_position_type等于10时,几何位置可被重构为具有通过分布计算的质心的子节点位置。
当spatial_scalability_geom_position_type等于10时,spatial_scalability_geom_centroid_position_type被包括在SPS中。
当几何位置被重构为通过分布计算的质心时,spatial_scalability_geom_centroid_position_type可以指示重构质心所属的节点的位置的方法。
例如,spatial_scalability_geom_centroid_position_type等于0,可以以与量化类型相同的方法来重构质心所属的节点的位置。当量化类型是舍入时,可以通过构造中心来重构节点的位置。当量化类型是上取整方法时,可以通过构造右-上-后位置来重构节点的位置。当spatial_scalability_geom_centroid_position_type等于1时,质心所属的节点的位置可以被构造为左-下-前位置。当spatial_scalability_geom_centroid_position_type等于2时,质心所属的节点的位置可以被构造为左-下-后位置。当spatial_scalability_geom_centroid_position_type等于3时,质心所属的节点的位置可以被构造为左-上-前位置。当spatial_scalability_geom_centroid_position_type等于4时,质心所属的节点的位置可以被构造为左-上-后位置。当spatial_scalability_geom_centroid_position_type等于5时,质心所属的节点的位置可以被构造为右-下-前位置。当spatial_scalability_geom_centroid_position_type等于6时,质心所属的节点的位置可以被构造为右-下-后位置。当spatial_scalability_geom_centroid_position_type等于7时,质心所属的节点的位置可以被构造为右-上-前位置。当spatial_scalability_geom_centroid_position_type等于8时,质心所属的节点的位置可以被构造为右-上-后位置。当spatial_scalability_geom_centroid_position_type等于9时,质心所属的节点的位置可以被构造为中间/中心位置。
octree_height_depth指示octree高度。
analyzed_distribution_at_depth指示通过分析各八叉树深度处的点的分布而获得的质心位置的结果值。具体地,analyzed_distribution_at_depth可以指示基于八叉树子节点的索引。
例如,当analyzed_distribution_at_depth等于1时,质心位置是左-下-前位置。当analyzed_distribution_at_depth等于2时,质心位置是左-下-后位置。当analyzed_distribution_at_depth等于3时,质心位置是左上-前位置。当analyzed_distribution_at_depth等于4时,质心位置是左-上-后位置。当analyzed_distribution_at_depth等于5时,质心位置是右-下-前位置。当analyzed_distribution_at_depth等于6时,质心位置是右-下-后位置。当analyzed_distribution_at_depth等于7时,质心位置是右-上-前位置。当analyzed_distribution_at_depth等于8时,质心位置是右-上-后位置。
图31示出了根据实施方式的GPS。
图31可以对应于图26的GPS。
对于图31中包括的元素的定义,可以参照图26的对应元素的描述。
根据实施方式的GPS可以包括用于重构几何点以编码和/或解码几何的空间可缩放性的信息。
spatial_scalability_LOD可以指示用于支持空间可缩放性的编码八叉树深度级别。
spatial_scalability_geom_quantization_type可以指示几何量化类型。
例如,spatial_scalability_geom_quantization_type等于0可以指示舍入方法。spatial_scalability_geom_quantization_type等于1可以指示上取整方法。spatial_scalability_geom_quantization_type等于2可以指示下取整方法。根据实施方式,可以以各种方式改变指示信息的整数值。
spatial_scalability_geom_position_type可以指示重构属于节点的几何位置的方法。
例如,当spatial_scalability_geom_position_type等于0时,几何位置重构方法与量化类型相同。在舍入的情况下,几何可以被重构为中心。在上取整方法的情况下,几何可以被重构为右-上-后位置。当spatial_scalability_geom_position_type等于1时,几何位置可被重构为左-下-前位置。当spatial_scalability_geom_position_type等于2时,几何位置可被重构为左-下-后位置。当spatial_scalability_geom_position_type等于3时,几何位置可被重构为左-上-前位置。当spatial_scalability_geom_position_type等于4时,几何位置可被重构为左-上-后位置。当spatial_scalability_geom_position_type等于5时,几何位置可被重构为右-下-前位置。当spatial_scalability_geom_position_type等于6时,几何位置可被重构为右-下-后位置。当spatial_scalability_geom_position_type等于7时,几何位置可被重构为右-上-前位置。当spatial_scalability_geom_position_type等于8时,几何位置可被重构为右-上-后位置。当spatial_scalability_geom_position_type等于9时,几何位置可被重构为中间/中心位置。当spatial_scalability_geom_position_type等于10时,几何位置可被重构为具有通过分布计算的质心的子节点位置。
当spatial_scalability_geom_position_type等于10时,spatial_scalability_geom_centroid_position_type被包括在GPS中。
当几何位置被重构为通过分布计算的质心时,spatial_scalability_geom_centroid_position_type可以指示重构质心所属的节点的位置的方法。
例如,spatial_scalability_geom_centroid_position_type等于0,可以以与量化类型相同的方法来重构质心所属的节点的位置。当量化类型是舍入时,可以通过构造中心来重构节点的位置。当量化类型是上取整方法时,可以通过构造右-上-后位置来重构节点的位置。当spatial_scalability_geom_centroid_position_type等于1时,质心所属的节点的位置可以被构造为左-下-前位置。当spatial_scalability_geom_centroid_position_type等于2时,质心所属的节点的位置可以被构造为左-下-后位置。当spatial_scalability_geom_centroid_position_type等于3时,质心所属的节点的位置可以被构造为左-上-前位置。当spatial_scalability_geom_centroid_position_type等于4时,质心所属的节点的位置可以被构造为左-上-后位置。当spatial_scalability_geom_centroid_position_type等于5时,质心所属的节点的位置可以被构造为右-下-前位置。当spatial_scalability_geom_centroid_position_type等于6时,质心所属的节点的位置可以被构造为右-下-后位置。当spatial_scalability_geom_centroid_position_type等于7时,质心所属的节点的位置可以被构造为右-上-前位置。当spatial_scalability_geom_centroid_position_type等于8时,质心所属的节点的位置可以被构造为右-上-后位置。当spatial_scalability_geom_centroid_position_type等于9时,质心所属的节点的位置可以被构造为中间/中心位置。
spatial_scalability_tile_based_geom_reconstruction_flag是指示是否逐个几何拼块应用不同的几何重构方案的标志。
spatial_scalability_per_LOD_flag是指示是否针对各八叉树深度应用不同的几何重构方案的标志。
octree_height_depth指示octree高度。
gps_geom_parameter_set_id为GPS提供标识符,以供其它句法元素参考。gps_seq_parameter_set_id的值可以在0到15的范围内,包括端点。
gps_seq_parameter_set_id指定活动SPS的sps_seq_parameter_set_id的值。gps_seq_parameter_set_id的值可以在0到15的范围内,包括端点。
图32示出了根据实施方式的TPS。
图32对应于图27的TPS。
对于图32中包括的元素的定义,可以参照图27的对应元素的描述。
根据实施方式的TPS可以包括用于重构几何点以对几何的空间可缩放性进行编码和/或解码的信息。
当spatial_scalability_tile_based_geom_reconstruction_flag等于‘true’时,TPS中包括以下元素。
spatial_scalability_LOD可以指示应用于拼块以支持空间可缩放性的编码八叉树深度级别。
spatial_scalability_geom_quantization_type可以指示应用于拼块的几何量化类型。
例如,spatial_scalability_geom_quantization_type等于0可以指示舍入方法。spatial_scalability_geom_quantization_type等于1可以指示上取整方法。等于2的spatial_scalability_geom_quantization_type等于2可以指示下取整方法。根据实施方式,可以以各种方式改变指示信息的整数值。
spatial_scalability_geom_position_type可以指示重构属于应用于拼块的节点的几何位置的方法。
例如,当spatial_scalability_geom_position_type等于0时,几何位置重构方法与量化类型相同。在舍入的情况下,几何可以被重构为中心。在上取整方法的情况下,几何可以被重构为右-上-后位置。当spatial_scalability_geom_position_type等于1时,几何位置可被重构为左-下-前位置。当spatial_scalability_geom_position_type等于2时,几何位置可被重构为左-下-后位置。当spatial_scalability_geom_position_type等于3时,几何位置可被重构为左-上-前位置。当spatial_scalability_geom_position_type等于4时,几何位置可被重构为左-上-后位置。当spatial_scalability_geom_position_type等于5时,几何位置可被重构为右-下-前位置。当spatial_scalability_geom_position_type等于6时,几何位置可被重构为右-下-后位置。当spatial_scalability_geom_position_type等于7时,几何位置可被重构为右-上-前位置。当spatial_scalability_geom_position_type等于8时,几何位置可被重构为右-上-后位置。当spatial_scalability_geom_position_type等于9时,几何位置可被重构为中间/中心位置。当spatial_scalability_geom_position_type等于10时,几何位置可被重构为具有通过分布计算的质心的子节点位置。
当spatial_scalability_geom_position_type等于10时,spatial_scalability_geom_centroid_position_type被包括在TPS中。
当几何位置被重构为通过分布计算的质心时,spatial_scalability_geom_centroid_position_type可以指示重构质心所属的节点的位置的方法。
例如,spatial_scalability_geom_centroid_position_type等于0,可以以与量化类型相同的方法来重构质心所属的节点的位置。当量化类型是舍入时,可以通过构造中心来重构节点的位置。当量化类型是上取整方法时,可以通过构造右-上-后位置来重构节点的位置。当spatial_scalability_geom_centroid_position_type等于1时,质心所属的节点的位置可以被构造为左-下-前位置。当spatial_scalability_geom_centroid_position_type等于2时,质心所属的节点的位置可以被构造为左-下-后位置。当spatial_scalability_geom_centroid_position_type等于3时,质心所属的节点的位置可以被构造为左-上-前位置。当spatial_scalability_geom_centroid_position_type等于4时,质心所属的节点的位置可以被构造为左-上-后位置。当spatial_scalability_geom_centroid_position_type等于5时,质心所属的节点的位置可以被构造为右-下-前位置。当spatial_scalability_geom_centroid_position_type等于6时,质心所属的节点的位置可以被构造为右-下-后位置。当spatial_scalability_geom_centroid_position_type等于7时,质心所属的节点的位置可以被构造为右-上-前位置。当spatial_scalability_geom_centroid_position_type等于8时,质心所属的节点的位置可以被构造为右-上-后位置。当spatial_scalability_geom_centroid_position_type等于9时,质心所属的节点的位置可以被构造为中间/中心位置。
spatial_scalability_slice_based_geom_reconstitution_flag是指示是否逐个切片应用不同的几何重构方案的标志。
spatial_scalability_per_LOD_flag是指示是否针对各八叉树深度应用不同的几何重构方案的标志。
octree_height_depth指示octree高度。
num_tiles指定针对比特流用信号通知的拼块的数目。当不存在时,num_tiles可被推定为0。
可根据num_tiles在TPS中传送下文描述的拼块边界框偏移元素。
tile_bounding_box_offset_x[i]可以表示笛卡尔坐标中第i个拼块的x偏移。当不存在时,tile_bounding_box_offset_x[0]的值可以被推定为sps_bounding_box_offset_x。
tile_bounding_box_offset_y[i]表示在笛卡尔坐标中表示第i个拼块的y偏移。当不存在时,tile_bounding_box_offset_y[0]的值可以被推定为sps_bounding_box_offset_y。
tile_bounding_box_offset_z[i]表示在笛卡尔坐标中表示第i个拼块的z偏移。当不存在时,tile_bounding_box_offset_z[0]的值可以被推定为sps_bounding_box_offset_z。
图33示出了根据实施方式的GSH。
图33对应于图28的GSH。
对于图32中包括的元素的定义,可以参照图28的对应元素的描述。
根据实施方式的GSH可以包括用于重构几何点以编码和/或解码几何的空间可缩放性的信息。
当spatial_scalability_slice_based_geom_reconstruction_flag等于‘true’时,GSH中可以包括以下元素。
spatial_scalability_LOD可以指示应用于支持空间可缩放性的切片的编码八叉树深度级别。
spatial_scalability_geom_quantization_type可以指示应用于切片的几何量化类型。
例如,spatial_scalability_geom_quantization_type等于0可以指示舍入方法。spatial_scalability_geom_quantization_type等于1可以指示上取整方法。spatial_scalability_geom_quantization_type等于2可以指示下取整方法。根据实施方式,可以以各种方式改变指示信息的整数值。
spatial_scalability_geom_position_type可以指示重构属于应用于切片的节点的几何位置的方法。
例如,当spatial_scalability_geom_position_type等于0时,几何位置重构方法与量化类型相同。在舍入的情况下,几何可以被重构为中心。在上取整方法的情况下,几何可以被重构为右-上-后位置。当spatial_scalability_geom_position_type等于1时,几何位置可被重构为左-下-前位置。当spatial_scalability_geom_position_type等于2时,几何位置可被重构为左-下-后位置。当spatial_scalability_geom_position_type等于3时,几何位置可被重构为左-上-前位置。当spatial_scalability_geom_position_type等于4时,几何位置可被重构为左-上-后位置。当spatial_scalability_geom_position_type等于5时,几何位置可被重构为右-下-前位置。当spatial_scalability_geom_position_type等于6时,几何位置可被重构为右-下-后位置。当spatial_scalability_geom_position_type等于7时,几何位置可被重构为右-上-前位置。当spatial_scalability_geom_position_type等于8时,几何位置可被重构为右-上-后位置。当spatial_scalability_geom_position_type等于9时,几何位置可被重构为中间/中心位置。当spatial_scalability_geom_position_type等于10时,几何位置可被重构为具有通过分布计算的质心的子节点位置。
当spatial_scalability_geom_position_type等于10时,spatial_scalability_geom_centroid_position_type被包括在GSH中。
当几何位置被重构为通过分布计算的质心时,spatial_scalability_geom_centroid_position_type可以指示重构质心所属的节点的位置的方法。
例如,spatial_scalability_geom_centroid_position_type等于0,可以以与量化类型相同的方法来重构质心所属的节点的位置。当量化类型是舍入时,可以通过构造中心来重构节点的位置。当量化类型是上取整方法时,可以通过构造右-上-后位置来重构节点的位置。当spatial_scalability_geom_centroid_position_type等于1时,质心所属的节点的位置可以被构造为左-下-前位置。当spatial_scalability_geom_centroid_position_type等于2时,质心所属的节点的位置可以被构造为左-下-后位置。当spatial_scalability_geom_centroid_position_type等于3时,质心所属的节点的位置可以被构造为左-上-前位置。当spatial_scalability_geom_centroid_position_type等于4时,质心所属的节点的位置可以被构造为-左-上-后位置。当spatial_scalability_geom_centroid_position_type等于5时,质心所属的节点的位置可以被构造为右-下-前位置。当spatial_scalability_geom_centroid_position_type等于6时,质心所属的节点的位置可以被构造为右-下-后位置。当spatial_scalability_geom_centroid_position_type等于7时,质心所属的节点的位置可以被构造为右-上-前位置。当spatial_scalability_geom_centroid_position_type等于8时,质心所属的节点的位置可以被构造为右-上-后位置。当spatial_scalability_geom_centroid_position_type等于9时,质心所属的节点的位置可以被构造为中间/中心位置。
spatial_scalability_per_LOD_flag是指示是否针对各八叉树深度应用不同的几何重构方案的标志。
octree_height_depth指示octree高度。
gsh_geometry_parameter_set_id指定活动GPS的gps_geom_parameter_set_id的值。
GSH_tile_id指定可由GSH参考的tile_id的值。gsh_tile_id的值应在0到XX的范围内,包含端点。
gsh_slice_id标识由其他句法元素引用的切片头。gsh_slice_id的值可以在0到XX的范围内,包含端点。
图34示出了根据实施方式的用于发送点云数据的方法。
S34000:根据实施方式的点云数据发送方法可以包括对点云数据进行编码。根据实施方式的编码操作可以包括图1的发送装置10000、图1的点云视频编码器10002、图2的编码20001、图4的编码器、图12的发送装置的点云数据处理、图14的XR装置1430、图15和图16的点云数据编码、图18至图20的几何编码、图22的编码器、以及图24和33的比特流生成和编码。
S34010:根据实施方式的点云数据发送方法还可以包括发送包含点云数据的比特流。根据实施方式的传输操作可以包括图1的发送器10003的操作和图2的发送20002。
图35示出了根据实施方式的用于接收点云数据的方法。
S35000:根据实施方式的点云数据接收方法包括接收包含点云数据的比特流。根据实施方式的接收操作可以包括图1的接收装置10004、图1的接收方10005、根据传输的图2的接收20002以及图24到33的比特流接收的操作。
35010:根据实施方式的接收点云数据的方法还可以包括解码点云数据。根据实施方式的解码操作可以包括图1的点云视频解码器10006、图2的解码20003、图2的渲染20004、图10和图11的解码器、图13的接收装置的点云数据处理、图14的XR装置1430、图16和17的点云数据解码、图21的几何解码、图23的解码器的操作、以及图24至33的比特流解码。
空间可缩放性是当点云数据密集并且带宽低时能够发送和处理低分辨率点云的功能。其也是当点云数据密集并且接收到整个八叉树流但是解码器缺少解码器的容量或资源,或者根据场景优先且快速地需要缩略图时,能够通过仅解码直到八叉树的特定深度级别的比特流而不是解码整个所接收的基于八叉树的比特流来提供低分辨率点云的功能。
上面已经描述了用于构造部分八叉树并根据所构造的最后级别八叉树节点重构位置以在实施方式的G-PCC几何编码/解码过程中提供空间可缩放功能的方法。
根据实施方式的用于重构八叉树节点的点的方法可以根据几何的重构位置来增加用于空间可缩放性的部分编码/解码的几何的压缩效率。
因此,根据本公开,可以提供一种用于提供用于压缩3D点云数据的基于几何的点云压缩(G-PCC)编码器/解码器的空间可缩放功能的几何压缩方法,并且可以提高几何压缩效率。
根据实施方式的方法/装置(发送方法/装置和/或接收方法/装置)可以提供用于空间可缩放性的各种几何位置重构方法,从而有效地编码/解码各种类型的点云数据。
由于根据上述实施方式提供了用于空间可缩放性的几何位置重构方法和信令方法,所以根据实施方式的点云数据发送/接收方法/装置可以基于八叉树重构点的位置以提供空间可缩放功能,从而提高几何压缩效率。
已经从方法和/或设备的角度描述了实施方式,并且可以应用方法和装置的描述以彼此互补。
虽然为了简单起见已经分别描述了附图,但是可以通过合并各个附图中示出的实施方式来设计新的实施方式。设计一种计算机可读的记录介质,其上记录有用于执行上述实施方式的程序,如本领域技术人员所需要的,也落入所附权利要求及其等同物的范围内。根据实施方式的装置和方法可以不受上述实施方式的配置和方法的限制。通过选择性地组合所有或一些实施方式,可以对实施方式进行各种修改。尽管已经参考附图描述了优选实施方式,但是本领域技术人员将理解,在不脱离所附权利要求中描述的本公开的精神或范围的情况下,可以在实施方式中做出各种修改和变化。从实施方式的技术思想或观点来看,这些修改不应单独理解。
实施方式的设备的各种元件可以由硬件、软件、固件或其组合来实现。实施方式中的各种元件可以由单个芯片实现,例如单个硬件电路。根据实施方式,可以将根据实施方式的组件分别实现为分离的芯片。根据实施方式,根据实施方式的设备的组件中的至少一个或更多个可以包括能够执行一个或更多个程序的一个或更多个处理器。一个或更多个程序可以执行根据实施方式的操作/方法中的任何一个或更多个,或者包括用于执行该操作/方法的指令。用于执行根据实施方式的设备的方法/操作的可执行指令可以存储在配置成由一个或更多个处理器执行的非暂时CRM或其它计算机程序产品中,或者可以存储在配置成由一个或更多个处理器执行的暂时CRM或其它计算机程序产品中。此外,根据实施方式的存储器可用作不仅覆盖易失性存储器(例如RAM)而且覆盖非易失性存储器、闪存和PROM的概念。此外,它还可以以载波的形式实现,例如通过因特网的传输。此外,处理器可读记录介质可被分布到通过网络连接的计算机系统,使得处理器可读代码可以和执行处理器可读代码。
在本说明书中,术语“/”和“,”应解释为表示“和/或”。例如,表述“A/B”可以指“A和/或B”。此外,“A,B”可以指“A和/或B”。此外,“A/B/C”可以指“A,B和/或C中的至少一个”。此外,“A/B/C”可以指“A,B和/或C中的至少一个”。此外,在本说明书中,术语“或”应解释为表示“和/或”。例如,表述“A或B”可以意指1)仅A,2)仅B,或3)A和B两者。换句话说,在本文中使用的术语“或”应解释为表示“附加地或替代地”。
诸如第一和第二的措辞可用于描述实施方式的各种元件。然而,根据实施方式的各种组件不应受上述术语限制。这些术语仅用于区分一个元件与另一个元件。例如,第一用户输入信号可以被称为第二用户输入信号。类似地,第二用户输入信号可以被称为第一用户输入信号。这些术语的使用应被解释为不脱离各种实施方式的范围。第一用户输入信号和第二用户输入信号都是用户输入信号,但并不意味着相同的用户输入信号,除非上下文另有明确规定。
用于描述实施方式的术语用于描述特定实施方式的目的,并且不旨在限制实施方式。如在实施方式的描述和权利要求中所使用的,单数形式“一”、”和“该”包括复数指示物,除非上下文另外清楚地指明。表述“和/或”用于包括所有可能的术语组合。诸如“包括”或“具有”的术语旨在表示存在附图、数字、步骤、元件和/或组件,并且应当理解为不排除存在附图、数字、步骤、元件和/或组件的附加存在的可能性。如这里所使用的,诸如“如果”和“当…时”的条件表达式不限于可选情况,并且旨在当满足特定条件时被解释为执行相关操作或根据特定条件解释相关定义。
根据本说明书中描述的实施方式的操作可以由包括根据实施方式的存储器和/或处理器的发送/接收装置来执行。存储器可以存储用于处理/控制根据实施方式的操作的程序,并且处理器可以控制本说明书中描述的各种操作。处理器可以被称为控制器等。在实施方式中,操作可以由固件,软件和/或其组合来执行。固件、软件和/或其组合可以存储在处理器或存储器中。
根据上述实施方式的操作可以由根据实施方式的发送装置和/或接收装置来执行。发送/接收装置包括:发送器/接收器,其被配置为发送和接收媒体数据;存储器,其被配置为存储用于根据实施方式的处理的指令(程序代码、算法、流程图和/或数据);以及处理器,其被配置为控制发送/接收装置的操作。
处理器可以被称为控制器等,并且可以对应于例如硬件、软件和/或其组合。根据上述实施方式的操作可以由处理器执行。此外,处理器可以实现为用于上述实施方式的操作的编码器/解码器。
发明模式
如上所述,已经以实现实施方式的最佳方式描述了相关内容。
产业实用性
如上所述,实施方式可以全部或部分地应用于点云数据发送/接收装置和系统。
对于本领域技术人员显而易见的是,可以在实施方式的范围内对实施方式进行各种改变或修改。
因此,这些实施方式旨在覆盖本公开的修改和变化,只要它们在所附权利要求及其等同物的范围内。

Claims (6)

1.一种发送点云数据的方法,所述方法包括:
对点云数据的几何数据进行编码,
其中,所述几何数据基于与占用信息相关的树来表示,并且
其中,基于所述树的特定级别的节点的中心位置来重构所述节点的几何位置以实现空间可缩放性,其中,所述特定级别不是所述树的叶节点,其中,所述树被部分编码直至所述特定级别;
基于重构后的几何位置对所述点云数据的属性数据进行编码;以及
发送包括所述点云数据的几何数据和属性数据的比特流。
2.根据权利要求1所述的方法,
其中,对所述几何数据进行编码包括:
对所述几何数据进行体素化。
3.一种发送点云数据的装置,该装置包括:
编码器,所述编码器被配置为对点云数据的几何数据进行编码,
其中,所述几何数据基于与占用信息相关的树来表示,
其中,基于所述树的特定级别的节点的中心位置来重构所述节点的几何位置以实现空间可缩放性,其中,所述特定级别不是所述树的叶节点,其中,所述树被部分编码直至所述特定级别;并且
基于重构后的几何位置对所述点云数据的属性数据进行编码;以及
发送器,所述发送器被配置为发送包括所述点云数据的几何数据和属性数据的比特流。
4.根据权利要求3所述的装置,
其中,所述编码器执行:
对所述几何数据进行体素化。
5.一种接收点云数据的方法,所述方法包括:
接收包括点云数据的比特流;
对所述点云数据的几何数据进行部分解码,
其中,所述几何数据基于与占用信息相关的树来表示,
其中,基于所述树的特定级别的节点的中心位置来重构所述节点的几何位置以实现空间可缩放性,其中,所述特定级别不是所述树的叶节点,其中,所述树被部分解码直至所述特定级别;以及
基于重构后的几何位置对所述点云数据的属性数据进行解码。
6.一种接收点云数据的装置,所述装置包括:
接收器,所述接收器被配置为接收包括点云数据的比特流;以及
解码器,所述解码器被配置为对所述点云数据的几何数据进行部分解码,
其中,所述几何数据基于与占用信息相关的树来表示,
其中,基于所述树的特定级别的节点的中心位置来重构所述树的所述节点的几何位置以实现空间可缩放性,其中,所述特定级别不是所述树的叶节点,其中,所述树被部分解码直至所述特定级别,并且
基于重构后的几何位置对所述点云数据的属性数据进行解码。
CN202080091844.5A 2020-01-07 2020-11-02 点云数据发送装置、点云数据发送方法、点云数据接收装置和点云数据接收方法 Active CN114930860B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US202062958259P 2020-01-07 2020-01-07
US62/958,259 2020-01-07
US202062961659P 2020-01-15 2020-01-15
US62/961,659 2020-01-15
PCT/KR2020/015138 WO2021141221A1 (ko) 2020-01-07 2020-11-02 포인트 클라우드 데이터 송신 장치, 포인트 클라우드 데이터 송신 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법

Publications (2)

Publication Number Publication Date
CN114930860A CN114930860A (zh) 2022-08-19
CN114930860B true CN114930860B (zh) 2024-08-02

Family

ID=76654723

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080091844.5A Active CN114930860B (zh) 2020-01-07 2020-11-02 点云数据发送装置、点云数据发送方法、点云数据接收装置和点云数据接收方法

Country Status (6)

Country Link
US (2) US11395004B2 (zh)
EP (1) EP4068789A4 (zh)
JP (1) JP7425207B2 (zh)
KR (1) KR102294613B1 (zh)
CN (1) CN114930860B (zh)
WO (1) WO2021141221A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11551334B2 (en) * 2020-01-09 2023-01-10 Tencent America LLC Techniques and apparatus for coarse granularity scalable lifting for point-cloud attribute coding
US12039660B1 (en) * 2021-03-31 2024-07-16 Apple Inc. Rendering three-dimensional content based on a viewport

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3405928A1 (en) * 2016-01-22 2018-11-28 Mitsubishi Electric Corporation Method for compressing point cloud

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100450823B1 (ko) * 2001-11-27 2004-10-01 삼성전자주식회사 깊이 이미지 기반 3차원 물체의 표현을 위한 노드 구조
US7940279B2 (en) * 2007-03-27 2011-05-10 Utah State University System and method for rendering of texel imagery
US8731313B2 (en) * 2009-03-23 2014-05-20 Level Set Systems, Inc. Method and apparatus for accurate compression and decompression of three-dimensional point cloud data
FR2961930B1 (fr) * 2010-06-29 2013-01-04 Fittingbox Procede de compression / decompression de maillage tridimensionnel
US11297346B2 (en) * 2016-05-28 2022-04-05 Microsoft Technology Licensing, Llc Motion-compensated compression of dynamic voxelized point clouds
EP3293702B1 (en) * 2016-09-13 2020-04-29 Dassault Systèmes Compressing a signal that represents a physical attribute
EP3429211A1 (en) * 2017-07-13 2019-01-16 Thomson Licensing A method and apparatus for encoding/decoding the colors of a colored point cloud whose geometry is represented by an octree-based structure
EP3429206A1 (en) * 2017-07-13 2019-01-16 Thomson Licensing Method and device for encoding a point cloud
CN107403456B (zh) * 2017-07-28 2019-06-18 北京大学深圳研究生院 一种基于kd树和优化图变换的点云属性压缩方法
US10861196B2 (en) * 2017-09-14 2020-12-08 Apple Inc. Point cloud compression
JPWO2019065297A1 (ja) * 2017-09-29 2020-11-05 ソニー株式会社 情報処理装置および方法
EP3467777A1 (en) * 2017-10-06 2019-04-10 Thomson Licensing A method and apparatus for encoding/decoding the colors of a point cloud representing a 3d object
US10692249B2 (en) * 2017-10-12 2020-06-23 Sony Corporation Octree traversal for anchor point cloud compression
US10424083B2 (en) * 2017-10-21 2019-09-24 Samsung Electronics Co., Ltd. Point cloud compression using hybrid transforms
CN108335335B (zh) * 2018-02-11 2019-06-21 北京大学深圳研究生院 一种基于增强图变换的点云属性压缩方法
US10909727B2 (en) * 2018-04-10 2021-02-02 Apple Inc. Hierarchical point cloud compression with smoothing
US10867414B2 (en) * 2018-04-10 2020-12-15 Apple Inc. Point cloud attribute transfer algorithm
EP3554082A1 (en) * 2018-04-11 2019-10-16 InterDigital VC Holdings, Inc. A method and device for coding the geometry of a point cloud
JP7434148B2 (ja) * 2018-04-19 2024-02-20 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置
WO2019216434A1 (ja) * 2018-05-11 2019-11-14 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置
BR112020026646A2 (pt) * 2018-06-26 2021-03-23 Huawei Technologies Co., Ltd. Projetos de sintaxe de alto nível para codificação de nuvem de pontos
BR112021000044A2 (pt) * 2018-07-11 2021-03-30 Sony Corporation Aparelho e método de processamento de imagem
US11076152B2 (en) * 2019-03-18 2021-07-27 Sony Group Corporation Quantization step parameter for point cloud compression
CN112634181B (zh) * 2019-09-24 2024-06-14 阿波罗智能技术(北京)有限公司 用于检测地面点云点的方法和装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3405928A1 (en) * 2016-01-22 2018-11-28 Mitsubishi Electric Corporation Method for compressing point cloud

Also Published As

Publication number Publication date
JP2023509730A (ja) 2023-03-09
US20220321914A1 (en) 2022-10-06
US20210211722A1 (en) 2021-07-08
KR20210089071A (ko) 2021-07-15
JP7425207B2 (ja) 2024-01-30
EP4068789A4 (en) 2023-01-04
CN114930860A (zh) 2022-08-19
WO2021141221A1 (ko) 2021-07-15
US11395004B2 (en) 2022-07-19
US12003769B2 (en) 2024-06-04
KR102294613B1 (ko) 2021-08-27
EP4068789A1 (en) 2022-10-05

Similar Documents

Publication Publication Date Title
CN114503571B (zh) 点云数据发送装置和方法、点云数据接收装置和方法
CN113597771B (zh) 用于处理点云数据的设备和方法
CN114175100A (zh) 用于处理点云数据的方法和装置
CN115428467B (zh) 点云数据发送设备和方法、点云数据接收设备和方法
US20240298029A1 (en) Device and method for processing point cloud data
CN115210765A (zh) 点云数据发送装置、发送方法、处理装置和处理方法
CN114073086A (zh) 点云数据处理设备和方法
US20220230360A1 (en) Point cloud data transmission device, point cloud data transmission method, point cloud data reception device, and point cloud data reception method
US20230059625A1 (en) Transform-based image coding method and apparatus therefor
US12003769B2 (en) Point cloud data transmission device, point cloud data transmission method, point cloud data reception device, and point cloud data reception method
CN115668919A (zh) 点云数据发送装置、点云数据发送方法、点云数据接收装置和点云数据接收方法
CN114051730A (zh) 处理点云数据的设备和方法
EP4228267A1 (en) Point cloud data transmission device, point cloud data transmission method, point cloud data reception device, and point cloud data reception method
CN117178555A (zh) 点云数据发送设备、点云数据发送方法、点云数据接收设备和点云数据接收方法
CN116508318A (zh) 点云数据发送装置、点云数据发送方法、点云数据接收装置及点云数据接收方法
CN114402624B (zh) 点云数据处理设备和方法
US20230281878A1 (en) Point cloud data transmission device, point cloud data transmission method, point cloud data reception device and point cloud data reception method
US20240064332A1 (en) Point cloud data transmission device, point cloud data transmission method, point cloud data reception device, and point cloud data reception method
CN116438799A (zh) 点云数据发送装置、点云数据发送方法、点云数据接收装置和点云数据接收方法
CN114503586B (zh) 点云数据发送装置、点云数据发送方法、点云数据接收装置和点云数据接收方法
EP4432658A1 (en) Point cloud data transmission method, point cloud data transmission device, point cloud data reception method, and point cloud data reception device
CN118202657A (zh) 点云数据发送装置和方法以及点云数据接收装置和方法
CN118160310A (zh) 点云数据发送方法、点云数据发送装置、点云数据接收方法及点云数据接收装置
CN118592026A (zh) 点云数据发送装置、点云数据发送方法、点云数据接收装置以及点云数据接收方法
CN118056404A (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