CN118923117A - 点云数据发送装置、点云数据发送方法、点云数据接收装置及点云数据接收方法 - Google Patents
点云数据发送装置、点云数据发送方法、点云数据接收装置及点云数据接收方法 Download PDFInfo
- Publication number
- CN118923117A CN118923117A CN202380029113.1A CN202380029113A CN118923117A CN 118923117 A CN118923117 A CN 118923117A CN 202380029113 A CN202380029113 A CN 202380029113A CN 118923117 A CN118923117 A CN 118923117A
- Authority
- CN
- China
- Prior art keywords
- point cloud
- frame
- road
- cloud data
- encoding
- 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.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/597—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/119—Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S17/00—Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
- G01S17/88—Lidar systems specially adapted for specific applications
- G01S17/89—Lidar systems specially adapted for specific applications for mapping or imaging
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S17/00—Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
- G01S17/88—Lidar systems specially adapted for specific applications
- G01S17/89—Lidar systems specially adapted for specific applications for mapping or imaging
- G01S17/894—3D imaging with simultaneous measurement of time-of-flight at a 2D array of receiver pixels, e.g. time-of-flight cameras or flash lidar
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S17/00—Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
- G01S17/88—Lidar systems specially adapted for specific applications
- G01S17/93—Lidar systems specially adapted for specific applications for anti-collision purposes
- G01S17/931—Lidar systems specially adapted for specific applications for anti-collision purposes of land vehicles
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
- H04N19/105—Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods 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
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Electromagnetism (AREA)
- General Physics & Mathematics (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
根据实施方式的点云数据发送方法可以包括以下步骤:对点云数据进行编码;以及发送包括点云数据的比特流。根据实施方式的点云数据接收方法可以包括以下步骤:接收包括点云数据的比特流;以及对点云数据进行解码。
Description
技术领域
实施方式涉及一种用于处理点云内容的方法和装置。
背景技术
点云内容是由点云表示的内容,点云是属于表示三维空间的坐标系的点集合。点云内容可表达在三个维度配置的媒体,并且用于提供诸如虚拟现实(VR)、增强现实(AR)、混合现实(MR)和自驾驶服务的各种服务。然而,需要数万至数十万的点数据来表示点云内容。因此,需要一种高效地处理大量点数据的方法。
发明内容
技术问题
实施方式提供了一种用于高效地处理点云数据的装置和方法。实施方式提供了一种用于解决等待时间和编码/解码复杂度的点云数据处理方法和装置。
实施方式的技术范围不限于上述技术目的,可扩展至本领域技术人员基于本文所公开的整个内容可推断出的其它技术目的。
技术方案
在本公开的一个方面,一种发送点云数据的方法可以包括:对点云数据进行编码;以及发送包含点云数据的比特流。在本公开的另一方面,一种接收点云数据的方法可包括:接收包含点云数据的比特流;以及对点云数据进行解码。
有益效果
根据实施方式的装置和方法可高效地处理点云数据。
根据实施方式的装置和方法可提供高质量的点云服务。
根据实施方式的装置和方法可提供点云内容以用于提供诸如VR服务和自驾驶服务的通用服务。
附图说明
附图被包括进来以提供对本公开的进一步理解,并且被并入并构成本申请的一部分,例示了本公开的实施方式,并与本描述一起用于说明本公开的原理。为了更好地理解下面描述的各种实施方式,应该结合附图参考以下实施方式的描述。贯穿附图将使用相同的标号来指相同或相似的部分。
图1示出了根据实施方式的示例性点云内容提供系统;
图2是示出根据实施方式的点云内容提供操作的框图;
图3例示了根据实施方式的示例性点云编码器;
图4示出了根据实施方式的八叉树和占用代码的示例;
图5例示了根据实施方式的每个LOD中的点配置的示例;
图6例示了根据实施方式的每个LOD中的点配置的示例;
图7例示了根据实施方式的点云解码器;
图8例示了根据实施方式的发送装置;
图9例示了根据实施方式的接收装置;
图10例示了根据实施方式的可与点云数据发送/接收方法/装置结合操作的示例性结构;
图11例示了根据实施方式的由移动车辆上的LiDAR设备捕获的道路点云的示例;
图12例示了根据实施方式的经分离的道路点云的示例;
图13例示了根据实施方式的由LiDAR捕获的道路点的示例;
图14例示了当配备有根据实施方式的LiDAR设备的车辆不移动但车辆周围的对象移动时形状部分地改变的示例;
图15例示了当设置有根据实施方式的LiDAR设备的车辆右转时获取的点云的示例;
图16例示了根据实施方式的由LiDAR设备捕获的点云的示例;
图17例示了根据实施方式的道路点正根据移动对象改变的示例;
图18例示了根据实施方式的当仅存在平移运动时道路点正被改变的示例;
图19例示了根据实施方式的当存在平移运动和旋转运动时道路点正被改变的示例;
图20例示了根据实施方式的点云数据发送装置;
图21例示了根据实施方式的点云数据接收装置;
图22例示了根据实施方式的包含点云数据和参数的比特流;
图23例示了根据实施方式的序列参数集(SPS);
图24例示了根据实施方式的几何参数集(GPS);
图25例示了根据实施方式的拼块参数集(TPS)的句法;
图26例示了根据实施方式的几何拼块报头(几何数据报头)的句法;
图27示出了根据实施方式的几何PU报头的句法;
图28示出了根据实施方式的点云数据发送方法;以及
图29示出了根据实施方式的点云数据接收方法。
具体实施方式
现在将详细参考本公开的优选实施方式,其示例在附图中进行了例示。下面将参照附图给出的详细描述旨在说明本公开的示例性实施方式,而非示出可根据本公开实现的仅有实施方式。以下详细描述包括具体细节以便提供本公开的彻底理解。然而,对于本领域技术人员而言将显而易见的是,本公开可在没有这些具体细节的情况下实践。
尽管本公开中使用的大多数术语选自本领域中广泛使用的通用术语,但是一些术语由申请人任意选择并且在以下描述中根据需要详细说明其含义。因此,本公开应该基于术语的预期含义而非其简单名称或含义来理解。
图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的点云视频编码器10002的示例。点云编码器重构并对点云数据进行编码(例如,点的位置和/或属性)以根据网络条件或应用调节点云内容的质量(例如无损、有损或接近无损)。当点云内容的总大小较大(例如,对于30fps给出60Gbps的点云内容)时,点云内容提供系统可能无法实时流传输内容。因此,点云内容提供系统可基于最大目标比特率来重构点云内容以根据网络环境等提供点云内容。
如参照图1和图2所描述的,点云编码器可执行几何编码和属性编码。几何编码在属性编码之前执行。
根据实施方式的点云编码器包括坐标变换器(变换坐标)30000、量化器(量化和去除点(体素化))30001、八叉树分析器(分析八叉树)30002和表面近似分析器(分析表面近似)30003、算术编码器(算术编码)30004、几何重构器(重构几何)30005、颜色变换器(变换颜色)30006、属性变换器(变换属性)30007、RAHT变换器(RAHT)30008、LOD生成器(生成LOD)30009、提升变换器(提升)30010、系数量化器(量化系数)30011和/或算术编码器(算术编码)30012。
坐标变换器30000、量化器30001、八叉树分析器30002、表面近似分析器30003、算术编码器30004和几何重构器30005可执行几何编码。根据实施方式的几何编码可包括八叉树几何编码、预测树几何编码、直接编码、三联体几何编码和熵编码。直接编码和三联体几何编码选择性地或组合应用。几何编码不限于上述示例。
如图所示,根据实施方式的坐标变换器30000接收位置并将其变换为坐标。例如,位置可被变换为三维空间(例如,由XYZ坐标系表示的三维空间)中的位置信息。根据实施方式的三维空间中的位置信息可被称为几何信息。
根据实施方式的量化器30001将几何量化。例如,量化器30001可基于所有点的最小位置值(例如,X、Y和Z轴中的每一个上的最小值)来将点量化。量化器30001执行量化操作:将最小位置值与各个点的位置值之间的差乘以预设量化缩放值,然后通过对通过乘法获得的值进行舍入来寻找最近整数值。因此,一个或更多个点可具有相同的量化位置(或位置值)。根据实施方式的量化器30001基于量化位置执行体素化以重构量化点。如像素(包含2D图像/视频信息的最小单元)的情况中一样,根据实施方式的点云内容(或3D点云视频)的点可包括在一个或更多个体素中。作为体积和像素的复合体,术语体素是指当基于表示3D空间的轴(例如,X轴、Y轴和Z轴)将3D空间划分成单元(单位=1.0)时生成的3D立方空间。量化器30001可使3D空间中的点组与体素匹配。根据实施方式,一个体素可仅包括一个点。根据实施方式,一个体素可包括一个或更多个点。为了将一个体素表示为一个点,体素的中心的位置可基于包括在体素中的一个或更多个点的位置来设定。在这种情况下,包括在一个体素中的所有位置的属性可被组合并指派给体素。
根据实施方式的八叉树分析器30002执行八叉树几何编码(或八叉树编码)以按八叉树结构呈现体素。八叉树结构表示基于八进制树结构与体素匹配的点。
根据实施方式的表面近似分析器30003可分析并近似八叉树。根据实施方式的八叉树分析和近似是分析包含多个点的区域以高效地提供八叉树和体素化的过程。
根据实施方式的算术编码器30004对八叉树和/或近似八叉树执行熵编码。例如,编码方案包括算术编码。作为编码结果,生成几何比特流。
颜色变换器30006、属性变换器30007、RAHT变换器30008、LOD生成器30009、提升变换器30010、系数量化器30011和/或算术编码器30012执行属性编码。如上所述,一个点可具有一个或更多个属性。根据实施方式的属性编码同样应用于一个点所具有的属性。然而,当属性(例如,颜色)包括一个或更多个元素时,对各个元素独立地应用属性编码。根据实施方式的属性编码包括颜色变换编码、属性变换编码、区域自适应分层变换(RAHT)编码、基于插值的分层最近邻居预测(预测变换)编码以及具有更新/提升步骤的基于插值的分层最近邻居预测(提升变换)编码。根据点云内容,可选择性地使用上述RAHT编码、预测变换编码和提升变换编码,或者可使用一个或更多个编码方案的组合。根据实施方式的属性编码不限于上述示例。
根据实施方式的颜色变换器30006执行变换包括在属性中的颜色值(或纹理)的颜色变换编码。例如,颜色变换器30006可变换颜色信息的格式(例如,从RGB到YCbCr)。可选地,可根据包括在属性中的颜色值来应用根据实施方式的颜色变换器30006的操作。
根据实施方式的几何重构器30005重构(解压缩)八叉树和/或近似八叉树。几何重构器30005基于分析点分布的结果来重构八叉树/体素。重构的八叉树/体素可被称为重构的几何(恢复的几何)。
根据实施方式的属性变换器30007执行属性变换以基于重构的几何和/或不执行几何编码的位置来变换属性。如上所述,由于属性依赖于几何,因此,属性变换器30007可基于重构的几何信息来变换属性。例如,基于包括在体素中的点的位置值,属性变换器30007可变换该位置处的点的属性。如上所述,当基于包括在体素中的一个或更多个点的位置来设定体素的中心位置时,属性变换器30007变换一个或更多个点的属性。当执行三联体几何编码时,属性变换器30007可基于三联体几何编码来变换属性。
属性变换器30007可通过计算距各个体素的中心位置(或位置值)特定位置/半径内的邻近点的属性或属性值(例如,各个点的颜色或反射率)的平均来执行属性变换。属性变换器30007可在计算平均时根据从中心到各个点的距离来应用权重。因此,各个体素具有位置和计算的属性(或属性值)。
属性变换器30007可基于K-D树或莫顿码(莫顿code)搜索存在于距各个体素的中心位置特定位置/半径内的邻近点。K-D树是二叉搜索树,并且支持能够基于位置来管理点的数据结构,使得可快速地执行最近邻搜索(NNS)。通过将表示所有点的3D位置的坐标(例如,(x,y,z))呈现为比特值并将比特混合来生成莫顿码。例如,当表示点位置的坐标为(5,9,1)时,坐标的比特值为(0101,1001,0001)。根据比特索引按z、y和x的顺序混合比特值产生010001000111。该值被表示为十进制数1095。即,具有坐标(5,9,1)的点的莫顿码值为1095。属性变换器30007可基于莫顿码值对点进行排序并通过深度优先遍历过程执行NNS。在属性变换操作之后,当在用于属性编码的另一变换过程中需要NNS时使用K-D树或莫顿码。
如图所示,变换的属性被输入到RAHT变换器30008和/或LOD生成器30009。
根据实施方式的RAHT变换器30008基于重构的几何信息来执行用于预测属性信息的RAHT编码。例如,RAHT变换器30008可基于与八叉树中较低级别的节点关联的属性信息来预测八叉树中较高级别的节点的属性信息。
根据实施方式的LOD生成器30009生成细节级别(LOD)来执行预测变换编码。根据实施方式的LOD是点云内容的细节程度。随着LOD值减小,指示点云内容的细节劣化。随着LOD值增大,指示点云内容的细节增强。点可按LOD分类。
根据实施方式的提升变换器30010执行基于权重来变换点云属性的提升变换编码。如上所述,可以可选地应用提升变换编码。
根据实施方式的系数量化器30011基于系数来量化属性编码的属性。
根据实施方式的算术编码器30012基于算术编码对量化的属性进行编码。
尽管图中未示出,图3的点云编码器的元件可由包括被配置成与包括在点云提供装置中的一个或更多个存储器通信的一个或更多个处理器或集成电路的硬件、软件、固件或其组合实现。一个或更多个处理器可执行上述图3的点云编码器的元件的操作和/或功能中的至少一个。另外,一个或更多个处理器可操作或执行用于执行图3的点云编码器的元件的操作和/或功能的软件程序和/或指令集合。根据实施方式的一个或更多个存储器可包括高速随机存取存储器,或者包括非易失性存储器(例如,一个或更多个磁盘存储装置、闪存装置或其它非易失性固态存储器装置)。
图4示出了根据实施方式的八叉树和占用代码的示例。
如参照图1至图3所描述的,点云内容提供系统(点云视频编码器10002)或点云编码器(例如,八叉树分析器30002)基于八叉树结构来执行八叉树几何编码(或八叉树编码)以高效地管理体素的区域和/或位置。
图4的上部示出八叉树结构。根据实施方式的点云内容的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^int,y_n^int,z_n^in,n=1,…,N)+1))
如图4的上部的中间所示,整个3D空间可根据分区被划分成八个空间。各个划分的空间由具有六个面的立方体表示。如图4的右上部所示,八个空间中的每一个基于坐标系的轴(例如,X轴、Y轴和Z轴)再次划分。因此,各个空间被划分成八个更小的空间。所划分的更小的空间也由具有六个面的立方体表示。应用该划分方案,直至八叉树的叶节点变为体素。
图4的下部示出八叉树占用代码。生成八叉树的占用代码以指示通过划分一个空间而生成的八个划分的空间中的每一个是否包含至少一个点。因此,单个占用代码由八个子节点表示。各个子节点表示划分的空间的占用,并且子节点具有1比特的值。因此,占用代码被表示为8比特代码。即,当与子节点对应的空间中包含至少一个点时,节点被指派值1。当与子节点对应的空间中不包含点(空间为空)时,节点被指派值0。由于图4所示的占用代码为00100001,因此,指示与八个子节点当中的第三子节点和第八子节点对应的空间各自包含至少一个点。如图所示,第三子节点和第八子节点中的每一个具有八个子节点,并且子节点由8比特占用代码表示。附图示出第三子节点的占用代码为10000111,并且第八子节点的占用代码为01001111。根据实施方式的点云编码器(例如,算术编码器30004)可对占用代码执行熵编码。为了增加压缩效率,点云编码器可对占用代码执行帧内/帧间编码。根据实施方式的接收装置(例如,接收装置10004或点云视频解码器10006)基于占用代码来重构八叉树。
根据实施方式的点云编码器(例如,图4的点云编码器或八叉树分析器30002)可执行体素化和八叉树编码以存储点位置。然而,点并不总是在3D空间中均匀分布,因此可能有存在较少点的特定区域。因此,对整个3D空间执行体素化是低效的。例如,当特定区域包含很少点时,在该特定区域中不需要执行体素化。
因此,对于上述特定区域(或八叉树的叶节点以外的节点),根据实施方式的点云编码器可跳过体素化并执行直接编码以直接对包括在特定区域中的点位置进行编码。根据实施方式的直接编码点的坐标被称为直接编码模式(DCM)。根据实施方式的点云编码器还可基于表面模型执行三联体几何编码,其要基于体素来重构特定区域(或节点)中的点位置。三联体几何编码是将对象表示为一系列三角形网格的几何编码。因此,点云解码器可从网格表面生成点云。根据实施方式的直接编码和三联体几何编码可选择性地执行。另外,根据实施方式的直接编码和三联体几何编码可与八叉树几何编码(或八叉树编码)组合执行。
为了执行直接编码,应该启用使用直接模式以应用直接编码的选项。要应用直接编码的节点不是叶节点,在特定节点内应该存在小于阈值的点。另外,要应用直接编码的点的总数不应超过预设阈值。当满足上述条件时,根据实施方式的点云编码器(或算术编码器30004)可对点位置(或位置值)执行熵编码。
根据实施方式的点云编码器(例如,表面近似分析器30003)可确定八叉树的特定级别(小于八叉树的深度d的级别),并且可从该级别开始使用表面模型以执行三联体几何编码,以基于体素来重构节点区域中的点位置(三联体模式)。根据实施方式的点云编码器可指定要应用三联体几何编码的级别。例如,当特定级别等于八叉树的深度时,点云编码器不在三联体模式下操作。换句话说,仅当指定的级别小于八叉树的深度值时,根据实施方式的点云编码器才可在三联体模式下操作。根据实施方式的指定级别的节点的3D立方区域被称为块。一个块可包括一个或更多个体素。块或体素可对应于方块。几何被表示为各个块内的表面。根据实施方式的表面可与块的各条边相交至多一次。
一个块具有12条边,因此一个块中存在至少12个交点。各个交点被称为顶点。当共享边的所有块当中存在与边相邻的至少一个占用体素时,检测沿着边存在的顶点。根据实施方式的占用体素是指包含点的体素。沿着边检测到的顶点位置是沿着共享边的所有块当中与边相邻的所有体素的边的平均位置。
一旦检测到顶点,根据实施方式的点云编码器就可对边的起点(x,y,z)、边的方向向量(Δx,Δy,Δz)和顶点位置值(边内的相对位置值)执行熵编码。当应用三联体几何编码时,根据实施方式的点云编码器(例如,几何重构器30005)可通过执行三角形重构、上采样和体素化过程来生成恢复的几何(重构的几何)。
位于块的边处的顶点确定穿过块的表面。根据实施方式的表面是非平面多边形。在三角形重构过程中,基于边的起点、边的方向向量和顶点的位置值来重构由三角形表示的表面。三角形重构过程这样执行:i)计算各个顶点的质心值,ii)从各个顶点值减去中心值,并且iii)估计通过减法获得的值的平方和。
估计和的最小值,并且根据具有最小值的轴执行投影过程。例如,当元素x最小时,各个顶点相对于块的中心投影在x轴上,并且投影在(y,z)平面上。当通过(y,z)平面上的投影获得的值为(ai,bi)时,通过atan2(bi,ai)估计θ的值,并且基于θ的值对顶点进行排序。下表示出了根据顶点数量创建三角形的顶点组合。顶点从1至n排序。下表示出对于四个顶点,可根据顶点组合构造两个三角形。第一个三角形可由排序的顶点当中的顶点1、2和3组成,第二个三角形可由排序的顶点当中的顶点3、4和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)
执行上采样过程以沿着三角形的边在中间添加点,并且执行体素化。所添加的点基于上采样因子和块的宽度来生成。添加的点被称为细化顶点。根据实施方式的点云编码器可将细化顶点体素化。另外,点云编码器可基于体素化的位置(或位置值)来执行属性编码。
图5示出了根据实施方式的各个LOD中的点配置的示例。
如参照图1至图4所描述的,在执行属性编码之前将编码的几何重构(解压缩)。当应用直接编码时,几何重构操作可包括改变直接编码的点的放置(例如,将直接编码的点放置在点云数据前面)。当应用三联体几何编码时,通过三角形重构、上采样和体素化来执行几何重构过程。由于属性依赖于几何,因此,基于重构的几何来执行属性编码。
点云编码器(例如,LOD生成器30009)可按LOD对点进行分类(或者重新组织)。图中示出与LOD对应的点云内容。图中最左侧画面表示原始点云内容。图中左起第二个画面表示最低LOD中的点分布,图中最右侧画面表示最高LOD中的点分布。即,最低LOD中的点稀疏分布,最高LOD中的点密集分布。即,随着LOD在图底部所指示的箭头所指的方向上升高,点之间的空间(或距离)变窄。
图6示出了根据实施方式的用于各个LOD的点配置的示例。
如参照图1至图5所描述的,点云内容提供系统或点云编码器(例如,点云视频编码器10002、图3的点云编码器或LOD生成器30009)可生成LOD。通过根据设定的LOD距离值(或欧几里得距离集合)将点重新组织为细化级别的集合来生成LOD。LOD生成过程不仅由点云编码器执行,而且由点云解码器执行。
图6的上部示出分布在3D空间中的点云内容的点的示例(P0至P9)。在图6中,原始顺序表示在LOD生成之前点P0至P9的顺序。在图6中,基于LOD的顺序表示根据LOD生成的点的顺序。点按LOD重新组织。另外,高LOD包含属于较低LOD的点。如图6所示,LOD0包含P0、P5、P4和P2。LOD1包含LOD0的点、P1、P6和P3。LOD2包含LOD0的点、LOD1的点、P9、P8和P7。
如参照图3所描述的,根据实施方式的点云编码器可选择性地或组合地执行预测变换编码、提升变换编码和RAHT变换编码。
根据实施方式的点云编码器可为点生成预测器以执行用于设定各个点的预测属性(或预测属性值)的预测变换编码。即,可为N个点生成N个预测器。根据实施方式的预测器可基于各个点的LOD值、关于存在于各个LOD的设定距离内的邻近点的索引信息以及到邻近点的距离来计算权重(=1/距离)。
根据实施方式的预测属性(或属性值)被设定为通过将各个点的预测器中设定的邻居点的属性(或属性值)(例如,颜色、反射率等)乘以基于到各个邻居点的距离计算的权重(或权重值)而获得的值的平均。根据实施方式的点云编码器(例如,系数量化器30011)可量化和逆量化通过从各个点的属性(属性值)减去预测属性(属性值)而获得的残差(可称为残差属性、残差属性值或属性预测残差、属性残差)。量化过程如下表所示配置。
表.属性预测残差量化伪代码
int PCCQuantization(int value,int quantStep){
if(value>=0){
return 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;
}
}
当各个点的预测器具有邻居点时,根据实施方式的点云编码器(例如,算术编码器30012)可如上所述对量化和逆量化的残差值执行熵编码。当各个点的预测器没有邻居点时,根据实施方式的点云编码器(例如,算术编码器30012)可对对应点的属性执行熵编码,而不执行上述操作。
根据实施方式的点云编码器(例如,提升变换器30010)可生成各个点的预测器,设定计算的LOD并在预测器中注册邻居点,并且根据到邻居点的距离来设定权重以执行提升变换编码。根据实施方式的提升变换编码类似于上述预测变换编码,但不同之处在于,对属性值累积地应用权重。根据实施方式对属性值累积地应用权重的过程配置如下。
1)创建用于存储各个点的权重值的阵列量化权重(QW)。QW的所有元素的初始值为1.0。将预测器中注册的邻居节点的预测器索引的QW值乘以当前点的预测器的权重,并将通过乘法获得的值相加。
2)提升预测过程:从现有属性值减去通过将点的属性值乘以权重而获得的值,以计算预测属性值。
3)创建称为updateweight和update的临时阵列,并且将临时阵列初始化为零。
4)将通过将针对所有预测器计算的权重乘以存储在与预测器索引对应的QW中的权重而计算的权重与updateweight阵列累加,作为邻居节点的索引。将通过将邻居节点索引的属性值乘以所计算的权重而获得的值与update阵列累加。
5)提升更新过程:将所有预测器的update阵列的属性值除以预测器索引的updateweight阵列的权重值,并将现有属性值与通过除法获得的值相加。
6)针对所有预测器通过将通过提升更新过程更新的属性值乘以通过提升预测过程更新的权重(存储在QW中)来计算预测属性。根据实施方式的点云编码器(例如,系数量化器30011)量化预测属性值。另外,点云编码器(例如,算术编码器30012)对量化属性值执行熵编码。
根据实施方式的点云编码器(例如,RAHT变换器30008)可执行RAHT变换编码,其中使用与八叉树中较低级别的节点关联的属性来预测较高级别的节点的属性。RAHT变换编码是通过八叉树向后扫描进行属性帧内编码的示例。根据实施方式的点云编码器从体素开始扫描整个区域并且在每一步重复将体素合并为更大的块的合并过程,直至到达根节点。仅对占用节点执行根据实施方式的合并过程。不对空节点执行合并过程。对空节点正上方的上节点执行合并过程。
下式表示RAHT变换矩阵。在该式中,表示级别l的体素的平均属性值。可基于和来计算。和的权重为和
这里,是低通值并且在次高级别的合并过程中使用。表示高通系数。每一步的高通系数被量化并经受熵编码(例如,由算术编码器300012编码)。权重被计算为 通过和创建根节点如下。
gDC的值也像高通系数一样被量化并经受熵解码。
图7示出了根据实施方式的点云解码器。
图7所示的点云解码器是点云解码器的示例,并且可执行解码操作,其是图1至图6所示的点云编码器的编码操作的逆过程。
如参照图1和图6所描述的,点云解码器可执行几何解码和属性解码。几何解码在属性解码之前执行。
根据实施方式的点云解码器包括算术解码器(算术解码)7000、八叉树合成器(合成八叉树)7001、表面近似合成器(合成表面近似)7002和几何重构器(重构几何)7003、坐标逆变换器(逆变换坐标)7004、算术解码器(算术解码)7005、逆量化器(逆量化)7006、RAHT变换器7007、LOD生成器(生成LOD)7008、逆提升器(逆提升)7009和/或颜色逆变换器(逆变换颜色)7010。
算术解码器7000、八叉树合成器7001、表面近似合成器7002、几何重构器7003和坐标逆变换器7004可执行几何解码。根据实施方式的几何解码可包括直接解码和三联体几何解码。直接编码和三联体几何解码选择性地应用。几何解码不限于上述示例,并且作为参照图1至图6描述的几何编码的逆过程执行。
根据实施方式的算术解码器7000基于算术编码将所接收的几何比特流解码。算术解码器7000的操作对应于算术编码器30004的逆过程。
根据实施方式的八叉树合成器7001可通过从解码的几何比特流获取占用代码(或关于作为解码结果取得的几何的信息)来生成八叉树。占用代码如参照图1至图6详细描述那样配置。
当应用三联体几何编码时,根据实施方式的表面近似合成器7002可基于解码的几何和/或生成的八叉树来合成表面。
根据实施方式的几何重构器7003可基于表面和/或解码的几何重新生成几何。如参照图1至图9所描述的,选择性地应用直接编码和三联体几何编码。因此,几何重构器7003直接导入关于应用了直接编码的点的位置信息并将其相加。当应用三联体几何编码时,几何重构器7003可通过执行几何重构器30005的重构操作(例如,三角形重构、上采样和体素化)来重构几何。细节与参照图6描述的那些相同,因此省略其描述。重构的几何可包括不包含属性的点云画面或帧。
根据实施方式的坐标逆变换器7004可通过基于重构的几何变换坐标来获取点位置。
算术解码器7005、逆量化器7006、RAHT变换器7007、LOD生成器7008、逆提升器7009和/或颜色逆变换器7010可执行参照图6描述的属性解码。根据实施方式的属性解码包括区域自适应分层变换(RAHT)解码、基于插值的分层最近邻居预测(预测变换)解码以及具有更新/提升步骤的基于插值的分层最近邻居预测(提升变换)解码。上述三个解码方案可选择性地使用,或者可使用一个或更多个解码方案的组合。根据实施方式的属性解码不限于上述示例。
根据实施方式的算术解码器7005通过算术编码对属性比特流进行解码。
根据实施方式的逆量化器7006逆量化关于解码的属性比特流或作为解码结果取得的属性的信息,并且输出逆量化的属性(或属性值)。可基于点云编码器的属性编码选择性地应用逆量化。
根据实施方式,RAHT变换器7007、LOD生成器7008和/或逆提升器7009可处理重构的几何和逆量化的属性。如上所述,RAHT变换器7007、LOD生成器7008和/或逆提升器7009可选择性地执行与点云编码器的编码对应的解码操作。
根据实施方式的颜色逆变换器7010执行逆变换编码以逆变换包括在解码的属性中的颜色值(或纹理)。可基于点云编码器的颜色变换器30006的操作选择性地执行颜色逆变换器7010的操作。
尽管图中未示出,图7的点云解码器的元件可由包括被配置成与包括在点云提供装置中的一个或更多个存储器通信的一个或更多个处理器或集成电路的硬件、软件、固件或其组合实现。一个或更多个处理器可执行上述图7的点云解码器的元件的操作和/或功能中的至少一个或更多个。另外,一个或更多个处理器可操作或执行用于执行图7的点云解码器的元件的操作和/或功能的软件程序和/或指令集合。
图8示出了根据实施方式的发送装置。
图8所示的发送装置是图1的发送装置10000(或图3的点云编码器)的示例。图8所示的发送装置可执行与参照图1至图6描述的点云编码器的那些相同或相似的一个或更多个操作和方法。根据实施方式的发送装置可包括数据输入单元8000、量化处理器8001、体素化处理器8002、八叉树占用代码生成器8003、表面模型处理器8004、帧内/帧间编码处理器8005、算术编码器8006、元数据处理器8007、颜色变换处理器8008、属性变换处理器8009、预测/提升/RAHT变换处理器8010、算术编码器8011和/或传输处理器8012。
根据实施方式的数据输入单元8000接收或获取点云数据。数据输入单元8000可执行与点云视频获取器10001的操作和/或获取方法(或参照图2描述的获取过程20000)相同或相似的操作和/或获取方法。
数据输入单元8000、量化处理器8001、体素化处理器8002、八叉树占用代码生成器8003、表面模型处理器8004、帧内/帧间编码处理器8005和算术编码器8006执行几何编码。根据实施方式的几何编码与参照图1至图9描述的几何编码相同或相似,因此省略其详细描述。
根据实施方式的量化处理器8001量化几何(例如,点的位置值)。量化处理器8001的操作和/或量化与参照图3描述的量化器30001的操作和/或量化相同或相似。细节与参照图1至图9描述的那些相同。
根据实施方式的体素化处理器8002将点的量化的位置值体素化。体素化处理器8002可执行与参照图3描述的量化器30001的操作和/或体素化过程相同或相似的操作和/或过程。细节与参照图1至图6描述的那些相同。
根据实施方式的八叉树占用代码生成器8003基于八叉树结构对点的体素化的位置执行八叉树编码。八叉树占用代码生成器8003可生成占用代码。八叉树占用代码生成器8003可执行与参照图3和图4描述的点云编码器(或八叉树分析器30002)的操作和/或方法相同或相似的操作和/或方法。细节与参照图1至图6描述的那些相同。
根据实施方式的表面模型处理器8004可基于表面模型执行三联体几何编码以基于体素重构特定区域(或节点)中的点位置。表面模型处理器8004可执行与参照图3描述的点云编码器(例如,表面近似分析器30003)的操作和/或方法相同或相似的操作和/或方法。细节与参照图1至图6描述的那些相同。
根据实施方式的帧内/帧间编码处理器8005可对点云数据执行帧内/帧间编码。帧内/帧间编码处理器8005可执行与参照图7描述的帧内/帧间编码相同或相似的编码。细节与参照图7描述的那些相同。根据实施方式,帧内/帧间编码处理器8005可包括在算术编码器8006中。
根据实施方式的算术编码器8006对点云数据的八叉树和/或近似八叉树执行熵编码。例如,编码方案包括算术编码。算术编码器8006执行与算术编码器30004的操作和/或方法相同或相似的操作和/或方法。
根据实施方式的元数据处理器8007处理关于点云数据的元数据(例如,设定值),并将其提供给诸如几何编码和/或属性编码的必要处理过程。另外,根据实施方式的元数据处理器8007可生成和/或处理与几何编码和/或属性编码有关的信令信息。根据实施方式的信令信息可与几何编码和/或属性编码分开编码。根据实施方式的信令信息可被交织。
颜色变换处理器8008、属性变换处理器8009、预测/提升/RAHT变换处理器8010和算术编码器8011执行属性编码。根据实施方式的属性编码与参照图1至图6描述的属性编码相同或相似,因此省略其详细描述。
根据实施方式的颜色变换处理器8008执行颜色变换编码以变换包括在属性中的颜色值。颜色变换处理器8008可基于重构的几何来执行颜色变换编码。重构的几何与参照图1至图9描述的相同。另外,其执行与参照图3描述的颜色变换器30006的操作和/或方法相同或相似的操作和/或方法。省略其详细描述。
根据实施方式的属性变换处理器8009执行属性变换以基于重构的几何和/或不执行几何编码的位置来变换属性。属性变换处理器8009执行与参照图3描述的属性变换器30007的操作和/或方法相同或相似的操作和/或方法。省略其详细描述。根据实施方式的预测/提升/RAHT变换处理器8010可通过RAHT编码、预测变换编码和提升变换编码中的任一种或组合对变换的属性进行编码。预测/提升/RAHT变换处理器8010执行与参照图3描述的RAHT变换器30008、LOD生成器30009和提升变换器30010的操作相同或相似的至少一个操作。另外,预测变换编码、提升变换编码和RAHT变换编码与参照图1至图9描述的那些相同,因此省略其详细描述。
根据实施方式的算术编码器8011可基于算术编码对编码的属性进行编码。算术编码器8011执行与算术编码器300012的操作和/或方法相同或相似的操作和/或方法。
根据实施方式的传输处理器8012可发送包含编码的几何和/或编码的属性和元数据信息的各个比特流,或者发送配置有编码的几何和/或编码的属性和元数据信息的一个比特流。当根据实施方式的编码的几何和/或编码的属性和元数据信息被配置成一个比特流时,比特流可包括一个或更多个子比特流。根据实施方式的比特流可包含信令信息和切片数据,信令信息包括用于序列级别信令的序列参数集(SPS)、用于几何信息编码信令的几何参数集(GPS)、用于属性信息编码信令的属性参数集(APS)和用于拼块级别信令的拼块参数集(TPS)。切片数据可包括关于一个或更多个切片的信息。根据实施方式的一个切片可包括一个几何比特流Geom00以及一个或更多个属性比特流Attr00和Attr10。
切片是指表示全体或部分编码点云帧的一系列句法元素。
根据实施方式的TPS可包括关于一个或更多个拼块中的各个拼块的信息(例如,关于边界框的坐标信息和高度/大小信息)。几何比特流可包含头和有效载荷。根据实施方式的几何比特流的头可包含GPS中所包括的参数集标识符(geom_parameter_set_id)、拼块标识符(geom_tile_id)和切片标识符(geom_slice_id)以及关于包含在有效载荷中的数据的信息。如上所述,根据实施方式的元数据处理器8007可生成和/或处理信令信息并将其发送到传输处理器8012。根据实施方式,执行几何编码的元件和执行属性编码的元件可如虚线所指示彼此共享数据/信息。根据实施方式的传输处理器8012可执行与发送器10003的操作和/或发送方法相同或相似的操作和/或发送方法。细节与参照图1和图2描述的那些相同,因此省略其描述。
图9示出了根据实施方式的接收装置。
图9所示的接收装置是图1的接收装置10004(或图10和图11的点云解码器)的示例。图9所示的接收装置可执行与参照图1至图11描述的点云解码器的那些相同或相似的一个或更多个操作和方法。
根据实施方式的接收装置可以包括接收器9000、接收处理器9001、算术解码器9002、基于占用代码的八叉树重构处理器9003、表面模型处理器(三角形重构、上采样、体素化)9004、逆量化处理器9005、元数据解析器9006、算术解码器9007、逆量化处理器9008、预测/提升/RAHT逆变换处理器9009、颜色逆变换处理器9010和/或渲染器9011。根据实施方式的各个解码元件可执行根据实施方式的对应编码元件的操作的逆过程。
根据实施方式的接收器9000接收点云数据。接收器9000可执行与图1的接收器10005的操作和/或接收方法相同或相似的操作和/或接收方法。省略其详细描述。
根据实施方式的接收处理器9001可从所接收的数据获取几何比特流和/或属性比特流。接收处理器9001可包括在接收器9000中。
算术解码器9002、基于占用代码的八叉树重构处理器9003、表面模型处理器9004和逆量化处理器9005可执行几何解码。根据实施方式的几何解码与参照图1至图10描述的几何解码相同或相似,因此省略其详细描述。
根据实施方式的算术解码器9002可基于算术编码对几何比特流进行解码。算术解码器9002执行与算术解码器7000的操作和/或编码相同或相似的操作和/或编码。
根据实施方式的基于占用代码的八叉树重构处理器9003可通过从解码的几何比特流(或关于作为解码结果取得的几何的信息)获取占用代码来重构八叉树。基于占用代码的八叉树重构处理器9003执行与八叉树的合成器7001的操作和/或八叉树生成方法相同或相似的操作和/或方法。当应用三联体几何编码时,根据实施方式的表面模型处理器9004可基于表面模型方法来执行三联体几何解码和相关几何重构(例如,三角形重构、上采样、体素化)。表面模型处理器9004执行与表面近似合成器7002和/或几何重构器7003的操作相同或相似的操作。
根据实施方式的逆量化处理器9005可逆量化解码的几何。
根据实施方式的元数据解析器9006可解析包含在所接收的点云数据中的元数据(例如,设定值)。元数据解析器9006可将元数据传递给几何解码和/或属性解码。元数据与参照图8描述的元数据相同,因此省略其详细描述。
算术解码器9007、逆量化处理器9008、预测/提升/RAHT逆变换处理器9009和颜色逆变换处理器9010执行属性解码。属性解码与参照图1至图10描述的属性解码相同或相似,因此省略其详细描述。
根据实施方式的算术解码器9007可通过算术编码对属性比特流进行解码。算术解码器9007可基于重构的几何对属性比特流进行解码。算术解码器9007执行与算术解码器7005的操作和/或编码相同或相似的操作和/或编码。
根据实施方式的逆量化处理器9008可逆量化解码的属性比特流。逆量化处理器9008执行与逆量化器7006的操作和/或逆量化方法相同或相似的操作和/或方法。
根据实施方式的预测/提升/RAHT逆变换处理器9009可处理重构的几何和逆量化的属性。预测/提升/RAHT逆变换处理器9009执行与RAHT变换器7007、LOD生成器7008和/或逆提升器7009的操作和/或解码相同或相似的一个或更多个操作和/或解码。根据实施方式的颜色逆变换处理器9010执行逆变换编码以逆变换包括在解码的属性中的颜色值(或纹理)。颜色逆变换处理器9010执行与颜色逆变换器7010的操作和/或逆变换编码相同或相似的操作和/或逆变换编码。根据实施方式的渲染器9011可渲染点云数据。
图10示出了根据实施方式的可与点云数据发送/接收方法/装置结合操作的示例性结构。
图10的结构表示服务器1060、机器人1010、自驾驶车辆1020、XR装置1030、智能电话1040、家用电器1050和/或头戴式显示器(HMD)1070中的至少一个连接到云网络1000的配置。机器人1010、自驾驶车辆1020、XR装置1030、智能电话1040或家用电器1050被称为装置。此外,XR装置1030可对应于根据实施方式的点云数据(PCC)装置或者可操作上连接到PCC装置。
云网络1000可表示构成云计算基础设施的一部分或存在于云计算基础设施中的网络。这里,云网络1000可使用3G网络、4G或长期演进(LTE)网络或5G网络来配置。
服务器1060可经由云网络1000连接到机器人1010、自驾驶车辆1020、XR装置1030、智能电话1040、家用电器1050和/或HMD 1070中的至少一个,并且可辅助连接的装置1010至1070的至少一部分处理。
HMD 1070表示根据实施方式的XR装置和/或PCC装置的实现类型之一。根据实施方式的HMD型装置包括通信单元、控制单元、存储器、I/O单元、传感器单元和电源单元。
以下,将描述应用了上述技术的装置1010至1050的各种实施方式。图10所示的装置1010至1050可操作上连接/联接到根据上述实施方式的点云数据发送装置和接收装置。
<PCC+XR>
XR/PCC装置1030可采用PCC技术和/或XR(AR+VR)技术,并且可被实现为HMD、设置在车辆中的平视显示器(HUD)、电视、移动电话、智能电话、计算机、可穿戴装置、家用电器、数字标牌、车辆、固定机器人或移动机器人。
XR/PCC装置1030可分析通过各种传感器或从外部装置获取的3D点云数据或图像数据并生成关于3D点的位置数据和属性数据。由此,XR/PCC装置1030可获取关于周围空间或真实对象的信息,并且渲染和输出XR对象。例如,XR/PCC装置1030可使包括关于所识别的对象的辅助信息的XR对象与所识别的对象匹配并输出匹配的XR对象。
<PCC+XR+移动电话>
XR/PCC装置1030可通过应用PCC技术被实现为移动电话1040。
移动电话1040可基于PCC技术解码和显示点云内容。
<PCC+自驾驶+XR>
自驾驶车辆1020可通过应用PCC技术和XR技术被实现为移动机器人、车辆、无人驾驶飞行器等。
应用了XR/PCC技术的自驾驶车辆1020可表示设置有用于提供XR图像的手段的自驾驶车辆,或者作为XR图像中的控制/交互目标的自驾驶车辆。具体地,作为XR图像中的控制/交互目标,自驾驶车辆1020可与XR装置1030相区分并且可操作上与之连接。
具有用于提供XR/PCC图像的手段的自驾驶车辆1020可从包括相机的传感器获取传感器信息,并且基于所获取的传感器信息来输出所生成的XR/PCC图像。例如,自驾驶车辆1020可具有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服务有关的内容数据并将其提供给用户。根据实施方式的车辆或用户接口装置可接收用户输入信号。根据实施方式的用户输入信号可包括指示自驾驶服务的信号。
根据实施方式的点云数据发送方法/装置可被解释为参照图1的发送装置10000、图1的点云视频编码器10002、图1的发送器10003、图2的获取20000/编码20001/发送20002、图3的编码器、图8的发送装置、图10的装置、图20的编码器、图28的发送方法等的术语。
根据实施方式的点云数据接收方法/装置可被解释为参照图1的接收装置10004、图1的接收器10005、图1的点云视频解码器10006、图2的发送20002/解码20003/渲染20004、图7的解码器、图9的接收装置、图10的装置、图21的解码器、图29的接收方法等的术语。
根据实施方式的用于发送或接收点云数据的方法/装置可被简称为方法/装置。
根据实施方式,构成点云数据的几何数据、几何信息、位置信息以及几何将被解释为具有相同的含义。构成点云数据的属性数据、属性信息等将被解释为具有相同的含义。
根据实施方式的方法/装置可包括并执行从通过LiDAR捕获的多个点云帧生成参考道路帧的方法。
实施方式包括一种用于生成参考道路帧以高效地支持通过移动车辆上的LiDAR设备捕获的点云内容的帧间预测从而用于基于几何的点云压缩(G-PCC)中的高效几何压缩的方法。参考道路帧可用于几何压缩和属性压缩两者。实施方式例如可包括参考道路帧生成方法和/或信令方法。
实施方式涉及一种提高用于压缩3D点云数据的基于几何的点云压缩(G-PCC)的压缩效率的方法。在下文中,将编码器或编码装置称为编码器,将解码器或解码装置称为解码器。
点云由点集合组成,并且点中的每一个可以具有几何信息和属性信息。几何信息是三维位置(XYZ)信息,并且属性信息是颜色(RGB、YUV等)和/或反射率的值。
在G-PCC编码操作中,可基于区域将点云分割成拼块,并且可将每个拼块分割成用于并行处理的切片。操作可包括在每切片的基础上压缩几何,以及基于配置有通过压缩而改变的位置信息的重构的几何(解码的几何)来压缩属性信息。
G-PCC解码操作可包括基于所接收的编码的切片级别的几何比特流和属性比特流来对几何进行解码,以及基于通过解码而获得的重构的几何来对属性信息(参见图1等)进行解码。
可使用基于八叉树、基于预测树或基于三联体的压缩技术来压缩几何信息(参见图1等)。
实施方式包括一种生成参考道路帧以提高通过移动车辆上的LiDAR设备捕获的内容的基于帧间预测的压缩的效率的方法。
图11例示了根据实施方式的通过移动车辆上的LiDAR设备捕获的道路点云的示例。
根据实施方式的点云数据发送方法/装置(图1的发送装置10000、图1的点云视频编码器10002、图1的发送器10003、图2的获取20000/编码20001/发送20002、图3的编码器、图8的发送装置、图10的装置、图20的编码器和图28的发送方法)以及根据实施方式的点云数据接收方法/装置(图1的接收装置10004、图1的接收器10005、图1的点云视频解码器10006、图2的发送20002/解码20003/渲染20004、图7的解码器、图9的接收装置、图10的装置、图21的解码器和图29的接收方法可处理图11的道路点云。图1的点云获取器10001可获取诸如图11的点云的点云。
根据实施方式的通过移动车辆上的LiDAR设备捕获的内容可包括道路和对象两者。点1100可对应于对象,点1101可对应于道路。对象例如可以是道路上的建筑物。
图12例示了根据实施方式的经分离的道路点云的示例。
图11中描述的所捕获的道路点云可如图12中所示来组织。
所捕获的道路和对象的点云中的所捕获的点可在连续帧之间具有不同的特性。此外,可通过仅从包括道路和对象的点云中分离道路来执行帧间预测。换句话说,图12示出了与图11的点云分离的仅具有道路的点云。
图13例示了根据实施方式的通过LiDAR捕获的道路点的示例。
针对通过LiDAR设备捕获的道路,如在图11和图12中,距捕获设备的相对高度可以是恒定的。在这种情况下,如图13所示,可在围绕作为传感器的位置的中心点的圆中生成点。
图14例示了当配备有根据实施方式的LiDAR设备的车辆不移动但车辆周围的对象移动时形状部分地改变的示例。
针对点云,如图11、图12、图13等所示,道路上存在建筑物、汽车、人以及其它对象,并且即使仅将道路与通过LiDAR设备捕获的点分离,这些对象也可能导致一些点存在而其它点不存在。例如,在图14的圆形区域1400中,可观察到存在于该区域中的点1401消失,并且不存在的点1402出现。换句话说,圆形区域1400具有存在点的区域和不存在点的区域。其它区域几乎相同。点云的这种分布意味着以下内容。具有LiDAR设备的车辆没有移动,并且该区域存在移动对象,这导致道路的一部分被隐藏。点1401是先前帧中的点,点1402是当前帧中的点。换句话说,包含LiDAR设备的车辆是静止的并且生成包含针对道路和对象的点的帧,并且包含在当前捕获的帧中以及在当前帧之前捕获和生成的帧中的点可如图14中所示出现。随着车辆周围的对象移动,生成缺失区域1400。
图15例示了在设置有根据实施方式的LiDAR设备的车辆右转时获取的点云的示例。
如图11、图12、图13、图14等中的通过LiDAR捕获的点云可包括诸如图15的示例。如图14所示,先前帧的点1401和/或当前帧的点1402可如图15所示组织。
例如,如图15所示,可能存在捕获道路但该道路由于建筑物而不完全可见的情况。建筑物可能存在于十字路口的特定部分,并且所捕获的道路点可能由于该建筑物而不存在。然而,当存在移动时,道路点云可能受到建筑物对象的影响,并且其总体形状可能受到影响。这样,道路可能受到对象的影响。换句话说,对象可能导致道路的缺失点。在这种状况下,当来自先前帧的道路点被用作参考帧时,可能没有足够的信息允许对当前帧执行准确的预测。因此,有必要通过从先前帧找到可补充关于道路的信息的信息来生成参考道路帧。
为了对通过LiDAR设备捕获的内容执行帧间预测,可应用预测间编码来细化参考帧中的预测点并发送来自预测点的残差。因此,根据实施方式的方法/装置可有效地减小参考帧与当前帧之间的差异。特别地,由于利用基于最新信息的道路信息来填充静止的道路区域以维持所有最优信息,因此,可通过找到与当前帧中的点匹配的最佳点来减小残差值。如果参考帧中不存在与当前帧中的点(例如,具有相同的激光ID、方位角和半径)在相同位置处匹配的点,则残差将增加,因为被确定为最合适点(例如,具有相同的激光ID和最近的方位角)的邻居点将被设定为预测的点。所增加的残差可导致更大的比特流。因此,可能需要一种最优地维持关于静止道路的信息的方法。此外,因为简单的点累积需要大量的存储器,所以可能需要考虑高效存储器使用的方法。
实施方式包括参考道路帧生成方法以通过对由移动车辆上的LiDAR设备捕获的内容的高效帧间预测来高效地支持压缩。可修改和组合实施方式。如本文所使用的,术语要基于其预期含义而理解到本领域中广泛使用的程度。
道路的运动检测可由PCC编码器的几何编码器执行,并且通过PCC解码器的几何解码操作而被应用于道路以用于重构。参考道路帧也可用于属性重构。
实施方式可包括:1)处理未捕获的道路点云数据的方法,2)在不存在全局运动的情况下生成参考道路帧的方法,3)在仅存在平移运动的情况下生成参考道路帧的方法,4)在存在平移运动和旋转运动的情况下生成参考道路帧的方法,5)在仅存在旋转运动的情况下生成参考道路帧的方法,以及6)初始化参考道路帧的方法。在下文中,参照相应的图来描述每个操作。
图16示出了根据实施方式的由LiDAR设备捕获的点云的示例。
图11、图12、图13、图14和/或图15的点云可由LiDAR捕获,如图16所示。图1的发送装置可捕获包括道路/对象的点,生成包含这些点的帧。包含在帧中的点可被压缩、发送、接收和重构。
根据实施方式的LiDAR可包括多个传感器。每个传感器具有激光ID(laserId)。每个传感器具有关于相对于传感器中心的高度、角度和旋转速度的信息。随着传感器角度的增大,所捕获的道路的半径可增大。当传感器具有最小角度时,其可被设置在LiDAR设备的顶部,并且可捕获具有最小半径的道路的点(参见图16)。当点云被分离成道路和对象时,所分离的点云可能没有针对任何传感器的点。如图16所示,针对等于2和3的laserID,由于对象的存在,激光不会到达地面。相反,它可首先到达对象并从对象反射离开,并且可被分离成对象点云。在这种情况下,当道路和对象被分离时,道路点云中可能没有laserID等于2和3的点。也就是说,针对道路帧中的对应区域,可能存在由对象导致的缺失区域。
图17例示了根据实施方式的道路点正根据移动对象改变的示例。
当利用LiDAR设备捕获点云的车辆和/或移动设备静止并且另一车辆对象1700经过时,由经过的车辆导致的缺失的道路点可在道路点云中改变。
例如,当圆形分布的点的集群是执行LiDAR捕获的车辆或移动设备并且位于附近的对象1700移动时,LiDAR与对象1700之间的距离和/或位置的变化可能导致在LiDAR捕获期间道路帧中的缺失区域,如图17所示。
这样,在不存在全局运动的情况下,可如下执行生成由于移动对象而改变了的参考道路帧的方法。根据实施方式的参考道路帧生成方法可由根据实施方式的点云数据发送方法/装置(图1的发送装置10000、图1的点云视频编码器10002、图1的发送器10003、图2的获取20000/编码20001/发送20002、图3的编码器、图8的发送装置、图10的装置、图20的编码器和图28的发送方法)以及根据实施方式的点云数据接收方法/装置(图1的接收装置10004、图1的接收器10005、图1的点云视频解码器10006、图2的发送20002/解码20003/渲染20004、图7的解码器、图9的接收装置、图10的装置、图21的解码器和图29的接收方法)两者来执行。
根据实施方式的参考道路帧生成方法可包括以下操作:1)将先前道路帧设定为参考道路帧,和/或2)基于参考帧对当前帧进行编码或解码。在编码或解码中,2-1)可检索当前道路帧中的点缺失区域的状况,2-2)可基于该状况在参考帧中搜索点,以及2-3)当点存在于参考帧中时,可基于该点对当前道路帧的缺失区域进行更新。然后,基于参考(道路)帧更新的当前(道路)帧成为下一帧的参考帧,并且可基于更新的参考帧对成为当前帧的下一帧进行预测性编码和预测性解码。
例如,1)当不存在参考道路帧时,可将先前道路帧设定为参考道路帧。2)在IPPP模式下,在当前帧为第N帧时,可参考该参考道路帧进行编码/解码。通常,可参考第N-1道路。在对第N+1帧进行编码之前,可执行以下操作。当在第N帧与第N-1帧之间没有全局运动时,即,配备LiDAR的车辆静止不动时,可搜索在第N道路帧中没有点的laserID和角度值,并且可搜索参考道路帧以检查其中是否存在点。当存在点时,可利用该点对第N道路帧进行更新,并且可将更新的第N道路帧更新为参考道路帧,该参考道路帧可在对第N+1帧时被参考进行编码/解码。另选地,参考道路帧可搜索不具有点的激光ID和角度值,第N道路帧可搜索其中这些点的存在。当存在点时,可利用该点对参考道路帧进行更新,并且在编码/解码第N+1帧时参考该参考道路帧。
由此,可去除参考道路帧中已经出现的对象/运动等的影响,并且可解决可能由该影响而造成的诸如存储器负担和预测准确度降低的问题,从而实现道路帧的准确且快速的预测编码/解码。
图18例示了根据实施方式的当仅存在平移运动时道路点正被改变的示例。
如图11、图12、图13、图14、图15、图16、图17等所示的点云可具有如图18所示的示例。
例如,当利用LiDAR设备捕获点云的车辆和/或移动设备仅具有平移运动时,静止对象1801可沿与行进方向相反的方向移动。针对移动对象1800,与行进方向相反的方向及其行进方向可共存。
当仅存在平移运动时,可如下执行生成由于静止和移动对象而改变的参考道路帧的方法。类似地,参考道路帧生成方法可由发送装置和接收装置两者来执行。
根据实施方式的用于生成参考道路帧的方法可包括:1)将先前道路帧设定为参考道路帧,2-1)改变参考道路帧中的原点,将坐标系变换为球坐标系,并计算每激光ID的捕获点,2-2)基于特定状况搜索先前道路帧中具有缺失点的区域,并基于参考道路帧中的点对先前道路帧进行更新,以及2-3)参考更新的先前道路帧对当前道路帧进行编码或解码。
例如,1)当不存在参考道路帧时,可将先前道路帧设定为参考道路帧。2)在IPPP模式下,在当前帧为第N帧时,可参考该参考道路帧进行编码/解码。通常,可参考第N-1道路。在对第N+1帧进行编码之前,可执行以下操作。当在第N帧与第N-1帧之间仅存在全局平移运动时,可在参考道路帧中改变原点值,并且可重新计算球坐标以计算每laserID的捕获点。可搜索在第N道路帧中没有点的laserID和角度值,并且可搜索参考道路帧以检查其中是否存在点。当存在点时,可利用该点对第N道路帧进行更新,并且更新的第N道路帧可被更新为参考道路帧。更新的第N道路帧可被更新为参考道路帧,并且在对第N+1帧进行编码/解码时被参考。
由此,可去除参考道路帧中已经出现的对象/运动等的影响,并且可解决可能由于该影响而导致的诸如存储器负担和预测准确度降低的问题,从而实现道路帧的准确且快速的预测编码/解码。
图19例示了根据实施方式的当存在平移运动和旋转运动时道路点正被改变的示例。
如图11、图12、图13、图14、图15、图16、图17、图18等所示的点云可具有如图19所示的示例。
也就是说,图19例示了利用LiDAR设备捕获点云的车辆和/或移动设备具有平移运动和旋转运动的情况。
在存在平移运动和旋转运动的情况下,可如下所述执行生成由于静止和移动对象而改变的参考道路帧的方法。类似地,参考道路帧生成方法可由发送装置和接收装置两者来执行。
根据实施方式的用于生成参考道路帧的方法可包括:1)将先前道路帧设定为参考道路帧,2-1)改变参考道路帧中的原点,旋转点,将坐标系变换为球坐标系,并计算每激光ID的捕获点,2-2)搜索先前道路帧中没有点的区域的激光ID和/或角度,搜索参考道路帧中的点,并且基于所找到的点对参考道路帧进行更新,以及2-3)基于更新的参考道路帧对下一道路帧进行编码/解码。
例如,1)当不存在参考道路帧时,可将先前道路帧设定为参考道路帧。2)在IPPP模式下,在当前帧为第N帧时,可参考该参考道路帧进行编码/解码。通常,可参考第N-1道路。在对第N+1帧进行编码之前,可执行以下操作。当在第N帧与第N-1帧之间存在全局平移和旋转运动时,可改变参考道路帧中的原点值,可与参考道路帧中的旋转一样多地旋转点,并且可重新计算球坐标以计算每laserID的捕获点。可搜索在第N道路帧中没有点的laserID和角度值,并且可搜索参考道路帧以检查其中是否存在点。当存在点时,可利用该点对第N道路帧进行更新,并且更新的第N道路帧可被更新为参考道路帧。更新的第N道路帧可被更新为参考道路帧,并且在对第N+1个帧进行编码/解码时被参考。
由此,可去除参考道路帧中已经出现的对象/运动等的影响,并且可解决可能由于该影响而导致的诸如存储器负担和预测准确度降低的问题,从而实现道路帧的准确且快速的预测编码/解码。
在仅存在旋转运动的情况下,可如下生成参考道路帧。
当利用LiDAR设备捕获点云的车辆和/或移动设备仅具有旋转运动时,可如下执行生成由于静止和移动对象而改变的参考道路帧的方法。类似地,参考道路帧生成方法可由发送装置和接收装置两者来执行。
根据实施方式的用于生成参考道路帧的方法包括:1)将先前道路帧设定为参考道路帧,2-1)旋转参考道路帧中的点,将坐标系变换为球坐标系,计算每激光ID的捕获的点,并且搜索没有点的区域的激光ID和/或角度,2-2)基于参考道路帧中的所找到的点来对下一道路帧进行更新,更新的下一道路帧成为参考道路帧,并且基于更新的参考道路帧对参考道路帧的下一道路帧进行编码和解码。
例如,1)当不存在参考道路帧时,可将先前道路帧设定为参考道路帧。2)在IPPP模式下,在当前帧为第N帧时,可参考该参考道路帧进行编码/解码。通常,可参考第N-1道路。在对第N+1帧进行编码之前,可执行以下操作。当在第N帧与第N-1帧之间仅存在全局旋转运动时,可与参考道路帧中的点的旋转一样多地旋转帧,然后,可重新计算球坐标以计算每laserID的捕获的点。可搜索在第N道路帧中没有点的laserID和角度值,并且可搜索参考道路帧以检查其中是否存在点。当存在点时,可利用该点对第N道路帧进行更新,并且更新的第N道路帧可被更新为参考道路帧。更新的第N道路帧可被更新为参考道路帧,并且在对第N+1帧进行编码/解码时被参考。另选地,当前帧可在与旋转相反的方向上旋转,然后,可从参考帧填充缺失点的laserID和角度值。
由此,可去除参考道路帧中已经出现的对象/运动等的影响,并且可解决可能由于该影响而导致的诸如存储器负担和预测准确度降低的问题,从而实现道路帧的准确且快速的预测编码/解码。
此外,根据实施方式的用于发送/接收点云数据的方法/装置可包括用于生成参考道路帧的方法和/或用于初始化参考道路帧的方法。
当参考道路帧和当前帧显著不同时,编码器可以例如计算相似性得分,生成可指示在这两个帧之间没有相关性的情况下给出新场景的标志,并且将标志作为信令信息传递到解码器。在这种情况下,编码器和解码器都可跳过参考帧更新。换句话说,当场景改变时,参考道路帧不被用于预测当前道路帧。因此,当场景改变时,可解决存储器负担的问题。
例如,参照图17至图19,可根据参考以各种方式描述针对多个帧的诸如下一个、当前和先前的术语。例如,当N是当前帧并且N-1是先前帧时,它们可被如下描述。因为实施方式包括生成参考道路帧,所以它们包括对参考道路帧进行更新以用于从当前帧对下一个N+1进行编码/解码的方法。该操作允许在对下一帧(N+1)进行编码/解码之前更新当前帧(N)以便减少存储器消耗。也就是说,可对当前帧进行编码/解码,并且可通过先前帧N-1为下一帧更新其数据。由于当前帧N已经具有先前帧(=参考帧N-1),因此,可通过参考N-1对当前帧中的道路进行更新来删除帧N-1。
换句话说,如果当前帧已经被编码,然后当前帧N具有下一帧N+1的缺失点,则可采取先前参考道路帧N-1来更新N。然后可在N+1中使用更新的信息。
图20例示了根据实施方式的点云数据发送装置。
图20例示了根据实施方式的用于执行点云数据发送方法的装置(图1的发送装置10000、图1的点云视频编码器10002、图1的发送器10003、图2的获取20000/编码20001/发送20002、图3的编码器、图8的发送装置、图10的装置、图20的编码器和图28的发送方法)的配置。每个组件可以对应于硬件、软件、处理器和/或其组合。每个组件的操作的描述可符合上述实施方式的描述。
PCC数据可被输入到编码器(其可被称为编码装置、发送装置等)并且被编码以输出几何信息比特流和属性信息比特流。
根据实施方式的几何信息编码部件(或几何信息编码器、几何编码器等)可如图20所示进行配置。
根据实施方式的几何信息编码器可对应于图1的点云视频编码器、编码、点云编码器或者用于对点云视频进行编码的组件。
几何信息编码部件可通过道路/对象分割器(splitter)来分割道路和对象。当帧的类型是P帧时,可通过LPU分割器处理该帧,并且可通过运动预测器预测全局运动。然后,可通过PU分割器分割需要分割的区域,并且可通过运动预测器预测局部运动。该过程可继续直到不再需要分割或达到指定级别。可生成与是否执行LPU/PU分割和针对每个LPU/PU的预测的运动相关的信令信息,并且可将该信令信息包括在比特流中并且发信号通知给解码器。
运动预测器可将PU运动发信号通知解码器。换句话说,它可生成PU运动相关参数并在比特流中将其发送到解码器。
运动补偿应用部件可接收与是否生成参考道路帧相关的输入,并且可生成与是否针对道路PU生成参考道路帧相关的参数,并且将其包括在要发信号通知给解码器的比特流中。可比较连续帧的相似性。当相似性小于阈值时,两个帧可被定义为不同的场景,并且新场景标志(new_scene_flag)可被设定为真并被发送到解码器。
运动补偿应用部分可通过RDO确定是否将所预测的运动应用于所生成的LPU/PU,并且可根据该确定将运动应用于参考帧。可生成与是否应用运动相关的参数并且将其包括在要发信号通知给解码器的比特流中。
利用所补偿的点,可通过几何信息帧间预测器压缩几何信息,并且可发信号通知相关数据。
运动预测器可执行以下操作。
可接收与是否生成用于搜索道路PU的运动的参考道路帧相关的输入。当生成参考道路帧时,可将参考道路帧生成标志发信号通知给解码器,因为编码器和解码器二者应该利用相同的参考道路帧来进行更新。
运动补偿应用部件可执行以下操作。
根据道路PU的运动、是否使用参考道路帧以及场景是否是新的,可基于所生成的参考帧将运动应用于道路PU。
当道路运动中不存在全局运动时,可通过找到未在laserID处捕获的点来对参考道路帧进行更新,如图17所示。当仅存在平移运动时,可通过改变传感器的原点位置来重新计算坐标,并且可通过找到未在laserID处捕获的点来对参考道路帧进行更新,如图18所示。当存在平移/旋转运动时,可通过改变传感器的原点位置来重新计算坐标,可应用旋转,然后可通过找到未在laserID处捕获的点来对参考道路帧进行更新,如图19所示。当仅存在旋转运动时,可应用旋转,然后可通过找到未在laserID处捕获的点来对参考道路帧进行更新,如图20所示。该操作可由编码器和解码器二者来执行,并且可基于相同的参考道路帧来执行预测。
可输入形成确定参考道路帧与当前道路帧之间的相似性的基础的阈值。当两个帧之间的相似性作为帧之间的比较的结果小于阈值时,确定场景是不同的,并且新场景标志(new_scene_flag)可被设定为真并发信号通知给解码器。在这种情况下,可在编码器/解码器二者中初始化参考道路帧。
参照图16、图17、图18、图19等描述的根据实施方式的参考道路帧生成方法可由图20的编码器、几何编码器、LPU分割器、运动预测器、PU分割器、运动补偿应用部分、几何信息帧间预测器等来执行。
编码器可包括存储编码指令的存储器以及连接到存储器的处理器,其中,编码指令可被配置位使处理器执行编码操作。
虽然参考道路帧生成和基于参考道路帧的帧间预测已经在几何方面进行了描述,但是这同样可应用于属性编码过程。
数据输入可接收几何、属性和相关参数。它可接收包含通过LiDAR等捕获的点的帧。
坐标变换器可将点的坐标系变换为用于编码的合适坐标系。
几何信息变换量化处理器可基于适于编码的量化参数来对点进行量化。
空间分割器可将点分割成适合于编码的空间。分割的属性可被传递到属性编码器。
几何编码器可包括以下元件。
体素化处理器可对具有几何的点云进行体素化。
根据帧的类型,当帧是P帧时,几何编码器可执行分割和运动预测/补偿/帧间预测,或者当帧是I帧时,几何编码器可执行帧内预测。
针对P帧,几何编码器可通过LPU分割器将道路和对象分割成最大预测单元(LPU)。针对道路帧和对象帧,运动预测器可预测道路点的运动和对象点的运动。运动预测器可接收指示是否生成用于搜索道路PU的运动的参考道路帧的信令信息,并且根据该信息生成参考道路帧。对于生成参考道路帧的操作,参考上面给出的描述。
PU分割器可将LPU分割成PU。可分别生成道路PU和对象PU。可根据运动预测/补偿设定以各种方式来配置LPU和PU。
运动补偿应用部件可基于参考帧将运动应用于对应的道路PU和对象PU中的每一者。如上所述,可对参考帧进行更新以解析缺失部分,并且可基于更新的参考帧来补偿帧的运动以执行帧间预测。由于解决了由缺失部分而造成的问题,因此,可执行准确且快速的帧间预测。
帧间预测器可基于运动补偿后的参考帧来预测当前帧,生成预测点的几何与当前点的几何之间的残差,并且发送通过仅对残差进行压缩和熵编码而减小的大小的比特流。
由于点的几何对于属性编码是必需的,因此,可重构经编码的几何并将其传递到属性编码器。
几何编码器可执行帧内预测。在没有参考帧的情况下,它可从邻居候选当中找到当前帧中的相似点,生成残差,并对残差进行熵编码。
属性编码器可通过颜色变换处理器来将属性变换为适当的颜色系统。
当几何编码方案是基于有损的编码时,属性编码器可通过重新着色器调节颜色以重构针对缺失几何的属性(颜色)。当几何编码方法是无损的时,属性编码器可跳过重新着色操作。
在属性帧内预测模式中,属性编码器可对属性信息执行帧内预测编码。当模式不是帧内预测模式时,可对属性信息执行帧间预测编码。与几何的情况一样,在属性帧间模式中,可通过参考参考帧来预测当前帧中的属性,并且可使用属性帧间方法来进行编码。通过以帧间预测和/或帧内预测方式来预测属性,可生成残差并对残差进行熵编码以生成包含属性信息的属性信息比特流。此外,编码的属性可被重构并且被传递到参考帧缓冲器。参考帧缓冲器可存储重构的几何信息和/或重构的属性信息,并且可在以帧间预测方式编码下一帧时提供关于参考帧的点(几何/属性)信息。
发送装置可对点云进行编码,基于操作生成参数,并且生成和发送比特流,如图22至图27所示。
图21例示了根据实施方式的点云数据接收装置。
图21例示了根据实施方式的用于执行点云数据接收方法的装置(图1的接收装置10004、图1的接收器10005、图1的点云视频解码器10006、图2的发送20002/解码20003/渲染20004、图7的解码器、图9的接收装置、图10的装置、图21的解码器和图29的接收方法)的配置。
每个组件可以对应于硬件、软件、处理器和/或其组合。每个组件的操作的描述可符合上述实施方式的描述。
图21的接收装置的每个操作对应于图20的发送装置的每个操作,并且接收操作可遵循发送操作的逆过程。
编码的几何信息比特流和属性信息比特流可输入到解码器,并且解码和重构的PCC数据可从解码器输出。
根据实施方式的几何信息解码器可对应于图1的点云视频解码器、解码、点云解码器以及用于对点云视频进行解码的组件。
解码器可包括存储解码指令的存储器以及连接到存储器的处理器,其中,解码指令可被配置为使处理器执行解码操作。
运动补偿应用部件可基于以所发送的道路PU的运动为基础而生成的参考帧、是否使用参考道路帧以及场景是否是新的来向道路PU应用运动。
几何信息解码器可接收几何信息比特流(图20至图27)。
几何信息熵解码器可基于熵方法来对几何信息进行解码。
几何信息解码器可基于几何编码方法是帧内编码还是帧间编码来执行解码操作。当几何编码方法不是几何帧内编码时,LPU/PU分割器可将包含点云的比特流的序列、帧等分割成道路和/或对象。
运动补偿应用部件可从比特流解析新场景标志、参考道路帧生成标志、PU运动等,并将运动补偿应用于道路/对象被分割成的单元。
几何信息帧间预测重构器可基于参考帧来预测当前帧中的道路/对象,并且通过将所接收的残差与预测值相加来重构几何。
当几何编码方法是几何帧内编码时,可在没有参考帧的情况下,从与当前帧中的当前几何最相似的邻居候选点重构预测值。
几何信息变换逆量化处理器可基于量化参数对通过帧内和/或帧间方法重构的几何进行逆量化。然后可提供重构的几何用于属性解码。
几何信息解码器可对几何信息进行解码。
属性信息解码器可基于熵方法通过属性残差信息熵解码器对所接收的残差进行解码。
根据属性编码方法是帧内编码还是帧间编码,属性信息解码器可执行对应的操作。
当属性编码方法不是帧内编码时,属性信息帧间预测重构器可通过使用帧间预测方法参考参考帧来生成针对当前帧的预测。与几何的情况一样,可生成参考帧。
当属性编码方法是帧内编码时,属性信息帧内预测重构器可在没有参考帧的情况下,从具有与当前帧中的当前点最相似的属性的邻居候选生成预测。
属性信息解码器可生成重构的属性信息。参考帧缓冲器可将重构的几何和重构的属性存储为针对参考帧的几何和属性,并且在预测参考帧之后的下一帧时提供参考信息。
颜色逆变换处理器可以对颜色系统进行逆变换。
属性信息解码器可生成属性信息。
图22例示了根据实施方式的包含点云数据和参数的比特流。
根据实施方式的用于执行点云数据发送方法的装置(图1的发送装置10000、图1的点云视频编码器10002、图1的发送器10003、图2的获取20000/编码20001/发送20002、图3的编码器、图8的发送装置、图10的装置、图20的编码器和图28的发送方法)可生成图22的比特流,并且根据实施方式的用于执行点云数据接收方法的装置(图1的接收装置10004、图1的接收器10005、图1的点云视频解码器10006、图2的发送20002/解码20003/渲染20004、图7的解码器、图9的接收装置、图10的装置、图21的解码器和图29的接收方法)可基于图20的比特流中的参数来对图20的比特流中的几何和/或属性进行解码。
同样地,根据实施方式的方法/装置可发信号通知相关信息以添加/执行实施方式。根据实施方式的信令信息可在发送侧或接收侧使用。
编码的点云可如下配置。被配置成执行几何编码和/或属性编码的点云数据编码器可如下生成编码的点云(或包含点云的比特流)。另外,与点云数据相关的信令信息可由点云数据发送装置的元数据处理器生成和处理,并且如下被包括在点云中。
每个缩写具有以下含义。每个缩写可在等效含义范围内由另一术语引用:SPS:序列参数集;GPS:几何参数集;APS:属性参数集;TPS:拼块参数集;Geom:几何比特流=几何切片报头+[几何PU报头+几何PU数据]|几何切片数据;Attr:属性比特流=属性数据单元报头+[属性PU报头+属性PU数据]|属性数据单元数据。切片可被称为数据单元,切片报头可被称为数据单元报头;并且切片数据可被称为单元数据。
根据实施方式的方法/装置可生成根据实施方式的参考道路帧生成信息,并将其添加到SPS、GPS或TPS以发信号通知其。参考道路帧生成信息可被添加到针对每个切片的TPS或几何数据报头中并在其中发信号通知。提供拼块或切片以允许将点云划分成用于处理的区域。当点云数据被划分成区域时,用于针对相应区域生成不同的邻居点集合的选项可被配置为提供表现出低复杂度和低结果可靠性的选择方法或者表现出高复杂度和高可靠性的选择方法。该选项可根据接收器的容量而不同地配置。因此,当将点云划分为拼块时,可对每个拼块应用不同的选项。当将点云划分为切片时,可对每个切片应用不同的选项。可以添加几何PU,并且可以添加几何PU报头和几何PU数据。
在下文中,参照相应的图来描述包含在图20的比特流中的参数集的句法。
图23例示了根据实施方式的序列参数集(SPS)。
图23中的SPS表示包含在图22的比特流中的SPS。与参考道路帧的生成相关的选项信息可被添加到SPS并在SPS中发信号通知。因此,可执行高效的信令以支持几何/属性的帧间预测。如本文所使用的,信令信息的名称可在信令信息的含义和功能的范围内加以理解。
profile_idc:指示比特流符合的配置文件。比特流不应包含除指定值之外的profile_idc值。profile_idc的其它值保留供ISO/IEC将来使用。
profile_compatibility_flags:等于1的profile_compatibility_flags指示比特流符合profile_idc等于j指示的配置文件。
sps_num_attribute_sets:sps_num_attribute_sets指示比特流中的编码属性的数量。sps_num_attribute_sets的值可在0至63的范围内。
attribute_dimension[i]:指示第i属性的分量的数量。
attribute_instance_id[i]:指示第i属性的实例ID。
reference_road_generation_flag:指示是否在序列中生成参考道路。
图24例示了根据实施方式的几何参数集(GPS)。
图24中的GPS表示包含在图22的比特流中的GPS。与参考道路帧的生成相关的选项信息可被添加到GPS并在GPS中发信号通知。因此,可执行高效的信令以支持几何/属性的帧间预测。如本文所使用的,信令信息的名称可在信令信息的含义和功能的范围内加以理解。
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的范围内。
geom_tree_type:等于0的geom_tree_type指示使用八叉树对位置信息进行编码。等于1的geom_tree_type指示使用预测树对位置信息进行编码。
new_scene_flag:指示与先前帧相比,该帧是否为新场景。
reference_road_generation_flag:指示是否在帧中生成参考道路。
图25例示了根据实施方式的拼块参数集(TPS)的句法。
图25中的TPS表示包含在图22的比特流中的TPS。与参考道路帧的生成相关的选项信息可被添加到TPS并在TPS中发信号通知。因此,可执行高效的信令以支持几何/属性的帧间预测。如本文所使用的,信令信息的名称可在信令信息的含义和功能的范围内加以理解。
num_tiles:指示针对比特流发信号通知的拼块的数量。当不存在时,num_tiles被推断为0。
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。
new_scene_flag:指示与先前帧相比,拼块中的帧是否为新场景。
reference_road_generation_flag:指示是否在拼块中生成参考道路。
图26例示了根据实施方式的几何拼块报头(几何数据报头)的句法。
图26中的GSH(其可被称为几何切片报头、几何数据报头等)表示包含在图22的比特流中的几何切片报头。与参考道路帧的生成相关的选项信息可被添加到GSH并在GSH中发信号通知。因此,可执行高效的信令以支持几何/属性的帧间预测。如本文所使用的,信令信息的名称可在信令信息的含义和功能的范围内加以理解。在几何信息编码/解码过程期间,点参考道路帧生成信息可被添加到几何数据报头并在几何数据报头中发信号通知。从该信息生成的参考道路帧也可用于属性。
gsh_geometry_parameter_set_id:指示活动GPS的gps_geom_parameter_set_id的值。
gsh_tile_id:指示由GSH参考的拼块ID的值。gsh_tile_id的值可在0至XX的范围内。
gsh_slice_id:指示用于由其它句法元素引用的切片报头。gsh_slice_id的值可在0至XX的范围内。
new_scene_flag:指示与先前帧相比,切片中的帧是否为新场景。
reference_road_generation_flag:指示是否在切片中生成参考道路。
图27示出了根据实施方式的几何PU报头的语法。
图26的几何PU报头包含在图22的比特流中。与参考道路帧的生成相关的选项信息可被添加到几何PU报头并在几何PU报头中发信号通知。因此,可执行高效的信令以支持几何/属性的帧间预测。可通过创建几何PU报头来发信号通知帧间预测相关参考道路帧生成信息
pu_tile_id:指示PU所属的拼块ID。
pu_slice_id:指示PU所属的切片ID。
pu_cnt:指示切片中包含的pu的数量。
pu_id:指示PU ID。
pu_split_flag:指示稍后是否进一步分割PU块。
pu_has_motion_vector_flag:指示PU块是否具有运动向量。
pu_motion_mat[][][][]:指示应用于PU块的运动矩阵。
pu_motion_rot_vector[][]:指示应用于PU块的运动旋转向量。
pu_motion_trans[][]:指示应用于PU块的运动平移向量。
pu_motion_rot_type[]:指示应用于PU块的运动旋转值的类型。例如,0=弧度,1=度。
pu_motion_rot[]:指示应用于PU块的运动旋转。旋转轴可绕道路法线向量旋转。
is_road_flag:指示包含在LPU块中的点是否是道路/对象。
object_id:指示包含在PU块中的点的对象id。
new_scene_flag[]:指示与先前帧相比,PU块中的帧中的帧是否为新场景。
reference_road_generation_flag[]:指示是否在PU块中生成参考道路。
图28例示了根据实施方式的点云数据发送方法。
根据图28中的实施方式的点云数据发送方法可由图1的发送装置10000、点云视频编码器10002、发送器10003、图3的编码器、图8的发送装置、图10的装置、图20的编码器等来执行。
S2800:根据实施方式的点云数据发送方法可包括对点云数据进行编码。在根据实施方式的编码操作中,可如图1至图10所示对点云数据进行编码。编码操作可包括几何编码和/或属性编码。编码的点云可被包括在比特流中,并且与编码相关的参数可被生成并被包括在比特流中(图22至图27)。可生成包括几何比特流和/或属性比特流的比特流。另外,当使用帧间方法对包含点云的帧进行编码时,编码可包括分割对象和/或道路并且执行预测编码。可生成和更新用于帧间预测的参考帧,如图11至图19所示。
S2810:根据实施方式的点云数据发送方法还可包括发送包含点云数据的比特流。在根据实施方式的发送操作中,可发送如图22至图27所示的比特流。
图29例示了根据实施方式的点云数据接收方法。
图29所示的点云数据接收方法可由图1的接收装置10004、接收器10005、点云视频解码器10006、图7的解码器、图9的接收装置、图10的装置、图21的解码器等来执行。
S2900:根据实施方式的点云数据接收方法可包括接收包含点云数据的比特流。在根据实施方式的接收操作中,可接收如图22至图27所示的比特流。
S2910:根据实施方式的点云数据接收方法还可包括对点云数据进行解码。在根据实施方式的解码操作中,可如图11至图10中所示对点云数据进行解码。解码可包括几何解码和/或属性解码。基于与编码和/或解码相关的参数,可对包含在比特流中的点云进行解码。此外,如图11至图19所示,当使用帧间方法对包含点云的帧进行解码时,解码可包括分割对象和/或道路并且执行预测解码。可生成和更新用于帧间预测的参考帧,如图11至图19所示。
上述实施方式的PCC编码方法、PCC解码方法和信令方法可提供以下效果。
参照图1,根据实施方式的发送方法可包括:对点云数据进行编码;以及发送包含点云数据的比特流。
参照图11至图15,关于道路/对象点的配置,根据实施方式的点云数据可包括与道路相关的点以及与对象相关的点。在包含与道路相关的点的帧中,与道路相关的点可能被与道路相关的对象改变,或者可能缺失。
参照图16,关于针对每个LiDAR ID的捕获点,点云数据可由LiDAR获取,并且点云数据可包括基于LiDAR的激光ID的点。
参照图17,关于生成参考道路帧的方法(例如,在没有全局运动的情况下),对点云数据的编码可包括对包含点云数据的当前帧的道路帧进行编码。对道路帧的编码可包括:基于针对当前帧的道路帧的参考道路帧来预测当前帧的道路帧;基于激光ID或角度中的至少一者在参考道路帧的先前帧中搜索参考道路帧中的缺失点;以及对参考道路帧中的缺失点进行更新。
类似地,对道路帧的编码可包括:基于当前帧的道路帧的参考道路帧来预测当前帧的道路帧;基于激光ID或角度中的至少一者在参考道路帧中搜索道路帧中的缺失点;以及对道路帧中的缺失点进行更新。换句话说,当存在多个道路帧并且存在缺失点时,可使用针对下一编码和/或解码的先前道路帧来对缺失点进行更新以生成针对下一道路帧编码/解码的增强参考道路帧。通过在对下一帧进行编码/解码之前对当前帧进行更新,可有效地减少存储器使用。由于当前帧已经具有先前帧(即,参考帧),因此,参考先前道路信息对当前帧中的道路进行更新可删除先前帧。
参照图18,关于生成参考道路帧的方法(例如,当仅存在平移时),对点云数据的编码可包括对包含点云数据的当前帧的道路帧进行编码。对道路帧的编码可包括:基于针对当前帧的道路帧的参考道路帧来预测当前帧的道路帧;在关于参考道路帧的原点坐标信息正改变的情况下,基于球坐标系来计算针对每个激光ID的点;基于激光ID或角度中的至少一者在参考道路帧的先前帧中搜索参考道路帧中的缺失点;以及对参考道路帧中的缺失点进行更新。
类似地,对道路帧的编码可包括:基于针对当前帧的道路帧的参考道路帧来预测当前帧的道路帧;在关于参考道路帧的原点坐标信息正改变的情况下,基于球坐标系来计算针对每个激光ID的点;基于激光ID或角度中的至少一者在参考道路帧中搜索道路帧中的缺失点;以及对道路帧中的缺失点进行更新。由此,该方法可提供上述效果。
参照图19,关于生成参考道路帧(例如,在存在平移/旋转的情况下),对点云数据的编码可包括对包含点云数据的当前帧的道路帧进行编码。对道路帧的编码可包括:基于针对当前帧的道路帧的参考道路帧来预测当前帧的道路帧;在关于参考道路帧的原点坐标信息正改变的情况下旋转参考道路帧,并且基于球坐标系来计算针对每个激光ID的点;基于激光ID或角度中的至少一者在参考道路帧的先前帧中搜索参考道路帧中的缺失点;以及对参考道路帧中的缺失点进行更新。
类似地,对道路帧的编码可包括:基于针对当前帧的道路帧的参考道路帧来预测当前帧的道路帧;在关于参考道路帧的原点坐标信息正改变的情况下旋转参考道路帧,并且基于球坐标系来计算针对每个激光ID的点;基于激光ID或角度中的至少一者在参考道路帧中搜索道路帧中的缺失点;以及对道路帧中的缺失点进行更新。由此,该方法可提供上述效果。
参照图19,关于生成参考道路帧(例如,当仅存在旋转时),对点云数据的编码可包括对包含点云数据的当前帧的道路帧进行编码。对道路帧的编码可包括:基于针对当前帧的道路帧的参考道路帧来预测当前帧的道路帧;旋转参考道路帧,并且基于球坐标系来计算针对每个激光ID的点;基于激光ID或角度中的至少一者在参考道路帧的先前帧中搜索参考道路帧中的缺失点;以及对参考道路帧中的缺失点进行更新。
类似地,对道路帧的编码可包括:基于当前帧的道路帧的参考道路帧来预测当前帧的道路帧;旋转参考道路帧,并且基于球坐标系来计算各个激光ID的点;基于激光ID或角度中的至少一者,从参考道路帧中搜索道路帧中的缺失点;以及对道路帧中的缺失点进行更新。
参照图19,关于初始化参考道路帧,对点云数据的编码还可包括初始化参考道路帧。
参照图22,关于信令,比特流可包含指示是否生成参考道路帧的信息或指示当前帧是否是新场景的信息中的至少一者。例如,比特流可包含指示是否生成参考道路帧的信息或指示当前帧是否是新场景的信息,或者包含指示是否生成参考道路帧的信息和指示当前帧是否是新场景的信息。
点云数据发送方法可由发送装置执行。发送装置可包括:编码器,其被配置为对点云数据进行编码;以及发送器,其被配置为发送包含点云数据的比特流。
与点云数据发送方法相对应的接收方法可执行发送的逆过程,并且例如可包括:接收包含点云数据的比特流,以及对点云数据进行解码。
类似地,点云数据接收方法可包括对点云数据进行解码,该解码包括对包含点云数据的当前帧的道路帧进行解码。对道路帧的解码可包括:基于针对当前帧的道路帧的参考道路帧来预测当前帧的道路帧;基于激光ID或角度中的至少一者在参考道路帧的先前帧中搜索参考道路帧中的缺失点;以及对参考道路帧中的缺失点进行更新。
对道路帧的解码可包括:基于针对当前帧的道路帧的参考道路帧来预测当前帧的道路帧;基于激光ID或角度中的至少一者在参考道路帧中搜索道路帧中的缺失点;以及对道路帧中的缺失点进行更新。
点云数据接收方法可由接收装置执行。接收装置可包括:接收器,其被配置为接收包含点云数据的比特流;以及解码器,其被配置为对点云数据进行解码。
由此,可补充包含不充分信息的道路数据以实现准确且快速的压缩/重构。换句话说,可通过坐标原点匹配和从先前帧的旋转来添加和更新缺失的道路点。根据LiDAR设备、对象等的移动,参考道路帧可不同地更新。换句话说,可补偿LiDAR移动和对象移动二者。道路帧可被压缩到较小的比特流大小并被重构。这可解决由对象的影响而造成的压缩性能降低的问题。
在使用移动车辆上的LiDAR设备逐个捕获和存储帧的场景中,帧之间可存在连续性,并因此,可使用帧间预测技术高效地执行压缩。由于所捕获的道路和对象点云的运动是不同的,因此,为了高效地应用帧间预测技术而分割道路和对象并且针对道路和对象中的每一者进行快速且准确的运动预测可影响压缩时间,并且通过准确的预测来提高帧间预测技术的效率可以减小比特流大小。不准确的运动预测可能显著增大比特流大小,这可降低压缩效率。因此,实施方式可利用通过移动车辆上的LiDAR设备捕获的特性来快速且准确地预测运动。
实施方式提供了用于道路/对象分割以支持通过移动车辆上的LiDAR设备捕获的内容的高效几何压缩的方法,以及用于生成在帧间预测中使用的参考道路帧以提高道路的帧间预测的效率的方法。可生成参考道路帧以累积地更新由于对象在同一道路上移动而影响该道路的改变的部分,补偿由于对象或捕获环境而缺失的道路点,并且考虑到存储器使用的增加,仅针对需要参考道路帧的部分生成参考道路帧。
由此,实施方式可增加用于压缩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 (15)
1.一种发送点云数据的方法,所述方法包括以下步骤:
对点云数据进行编码;以及
发送包含所述点云数据的比特流。
2.根据权利要求1所述的方法,其中,所述点云数据包括与道路相关的点以及与对象相关的点,
其中,在包含与所述道路相关的所述点的帧中,与所述道路相关的所述点根据与所述道路相关的所述对象而改变,或者缺失。
3.根据权利要求1所述的方法,其中,所述点云数据是通过LiDAR获取的,
其中,所述点云数据包括基于所述LiDAR的激光ID的点。
4.根据权利要求1所述的方法,其中,对所述点云数据进行编码的步骤包括:
对包含所述点云数据的当前帧的道路帧进行编码,
其中,对所述道路帧进行编码的步骤包括:
基于所述当前帧的所述道路帧的参考道路帧来预测所述当前帧的所述道路帧;
基于激光ID或角度中的至少一者在所述参考道路帧中搜索所述道路帧中的缺失点;以及
对所述道路帧中的所述缺失点进行更新。
5.根据权利要求1所述的方法,其中,对所述点云数据进行编码的步骤包括:
对包含所述点云数据的当前帧的道路帧进行编码,
其中,对所述道路帧进行编码的步骤包括:
基于针对所述当前帧的所述道路帧的参考道路帧来预测所述当前帧的所述道路帧;
在关于所述参考道路帧的原点坐标信息正改变的情况下,基于球坐标系来计算针对每个激光ID的点;
基于所述激光ID或角度中的至少一者在所述参考道路帧中搜索所述道路帧中的缺失点;以及
对所述道路帧中的所述缺失点进行更新。
6.根据权利要求1所述的方法,其中,对所述点云数据进行编码的步骤包括:
对包含所述点云数据的当前帧的道路帧进行编码,
其中,对所述道路帧进行编码的步骤包括:
基于针对所述当前帧的所述道路帧的参考道路帧来预测所述当前帧的所述道路帧;
在关于所述参考道路帧的原点坐标信息正改变的情况下旋转所述参考道路帧,并且基于球坐标系来计算针对每个激光ID的点;
基于所述激光ID或角度中的至少一者在所述参考道路帧中搜索所述道路帧中的缺失点;以及
对所述道路帧中的所述缺失点进行更新。
7.根据权利要求1所述的方法,其中,对所述点云数据进行编码的步骤包括:
对包含所述点云数据的当前帧的道路帧进行编码,
其中,对所述道路帧进行编码的步骤包括:
基于针对所述当前帧的所述道路帧的参考道路帧来预测所述当前帧的所述道路帧;
旋转所述参考道路帧,并且基于球坐标系来计算针对每个激光ID的点;
基于所述激光ID或角度中的至少一者在所述参考道路帧中搜索所述道路帧中的缺失点;以及
对所述道路帧中的所述缺失点进行更新。
8.根据权利要求4所述的方法,其中,对所述点云数据进行编码的步骤还包括:
对所述参考道路帧进行初始化。
9.根据权利要求1所述的方法,其中,所述比特流包含以下项中的至少一个:
指示是否生成参考道路帧的信息;或者
指示当前帧是否是新场景的信息。
10.一种用于发送点云数据的装置,所述装置包括:
编码器,所述编码器被配置为对点云数据进行编码;以及
发送器,所述发送器被配置为发送包含所述点云数据的比特流。
11.一种接收点云数据的方法,所述方法包括以下步骤:
接收包含点云数据的比特流;以及
对所述点云数据进行解码。
12.根据权利要求11所述的方法,其中,所述点云数据包括与道路相关的点以及与对象相关的点,
其中,在包含与所述道路相关的所述点的帧中,与所述道路相关的所述点根据与所述道路相关的所述对象而改变,或者缺失。
13.根据权利要求11所述的方法,其中,所述点云数据是通过LiDAR获取的,
其中,所述点云数据包括基于所述LiDAR的激光ID的点。
14.根据权利要求11所述的方法,其中,对所述点云数据进行解码的步骤包括:
对包含所述点云数据的当前帧的道路帧进行解码,
其中,对所述道路帧进行解码的步骤包括:
基于针对所述当前帧的所述道路帧的参考道路帧来预测所述当前帧的所述道路帧;
基于激光ID或角度中的至少一者在所述参考道路帧中搜索所述道路帧中的缺失点;以及
对所述道路帧中的所述缺失点进行更新。
15.一种用于接收点云数据的装置,所述装置包括:
接收器,所述接收器被配置为接收包含点云数据的比特流;以及
解码器,所述解码器被配置为对所述点云数据进行解码。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20220034808 | 2022-03-21 | ||
KR10-2022-0034808 | 2022-03-21 | ||
PCT/KR2023/003708 WO2023182762A1 (ko) | 2022-03-21 | 2023-03-21 | 포인트 클라우드 데이터 송신 장치, 포인트 클라우드 데이터 송신 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118923117A true CN118923117A (zh) | 2024-11-08 |
Family
ID=88101762
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202380029113.1A Pending CN118923117A (zh) | 2022-03-21 | 2023-03-21 | 点云数据发送装置、点云数据发送方法、点云数据接收装置及点云数据接收方法 |
Country Status (4)
Country | Link |
---|---|
EP (1) | EP4498679A1 (zh) |
KR (1) | KR20240164507A (zh) |
CN (1) | CN118923117A (zh) |
WO (1) | WO2023182762A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117433440B (zh) * | 2023-10-24 | 2024-08-09 | 中南大学 | 一种基于激光点云的巷道形变实时检测方法、装置及存储介质 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2022513830A (ja) * | 2018-12-13 | 2022-02-09 | コンチネンタル オートモーティヴ ゲゼルシャフト ミット ベシュレンクテル ハフツング | 道路の表面上の対象体を検出してモデル化する方法 |
US11468690B2 (en) * | 2019-01-30 | 2022-10-11 | Baidu Usa Llc | Map partition system for autonomous vehicles |
KR102276044B1 (ko) * | 2019-11-25 | 2021-07-12 | 숭실대학교산학협력단 | 3d 포인트 클라우드의 클러스터링 방법 및 이를 수행하는 장치 |
WO2021187839A1 (ko) * | 2020-03-16 | 2021-09-23 | 엘지전자 주식회사 | 포인트 클라우드 데이터 전송 장치, 전송 방법, 처리 장치 및 처리 방법 |
US20210373173A1 (en) * | 2020-06-02 | 2021-12-02 | Motional Ad Llc | Identifying background features using lidar |
-
2023
- 2023-03-21 EP EP23775258.9A patent/EP4498679A1/en active Pending
- 2023-03-21 CN CN202380029113.1A patent/CN118923117A/zh active Pending
- 2023-03-21 WO PCT/KR2023/003708 patent/WO2023182762A1/ko active Application Filing
- 2023-03-21 KR KR1020247029865A patent/KR20240164507A/ko active Pending
Also Published As
Publication number | Publication date |
---|---|
EP4498679A1 (en) | 2025-01-29 |
KR20240164507A (ko) | 2024-11-19 |
WO2023182762A1 (ko) | 2023-09-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114503586B (zh) | 点云数据发送装置、点云数据发送方法、点云数据接收装置和点云数据接收方法 | |
CN114503571B (zh) | 点云数据发送装置和方法、点云数据接收装置和方法 | |
CN113615204B (zh) | 点云数据发送装置、点云数据发送方法、点云数据接收装置和点云数据接收方法 | |
CN115462083B (zh) | 发送点云数据的设备、发送点云数据的方法、接收点云数据的设备和接收点云数据的方法 | |
CN114073085B (zh) | 点云数据处理方法和设备 | |
US20220337872A1 (en) | Point cloud data transmission device, point cloud data transmission method, point cloud data reception device, and point cloud data reception method | |
EP4171039A1 (en) | Point cloud data transmission device, point cloud data transmission method, point cloud data reception device and point cloud data reception method | |
CN114175100A (zh) | 用于处理点云数据的方法和装置 | |
CN114073086B (zh) | 点云数据处理设备和方法 | |
CN114930860B (zh) | 点云数据发送装置、点云数据发送方法、点云数据接收装置和点云数据接收方法 | |
CN114051730A (zh) | 处理点云数据的设备和方法 | |
CN116965019A (zh) | 点云数据发送设备、点云数据发送方法、点云数据接收设备和点云数据接收方法 | |
CN117581541A (zh) | 点云数据发送设备、点云数据发送方法、点云数据接收设备和点云数据接收方法 | |
CN116438799A (zh) | 点云数据发送装置、点云数据发送方法、点云数据接收装置和点云数据接收方法 | |
CN115702568A (zh) | 点云数据发送装置、点云数据发送方法、点云数据接收装置和点云数据接收方法 | |
EP4498679A1 (en) | Point cloud data transmission device, point cloud data transmission method, point cloud data reception device, and point cloud data reception method | |
US20240422355A1 (en) | Point cloud data transmission device and method, and point cloud data reception device and method | |
CN118202657A (zh) | 点云数据发送装置和方法以及点云数据接收装置和方法 | |
CN118202655A (zh) | 发送点云数据的装置、发送点云数据的方法、接收点云数据的装置和接收点云数据的方法 | |
EP4395320A1 (en) | Point cloud data transmission method, point cloud data transmission device, point cloud data reception method, and point cloud data reception device | |
US20240420377A1 (en) | Point cloud data transmission method, point cloud data transmission device, point cloud data reception method, and point cloud data reception device | |
EP4496315A1 (en) | Point cloud data transmission device, point cloud data transmission method, point cloud data reception device, and point cloud data reception method | |
EP4432657A1 (en) | Point cloud data transmission method, point cloud data transmission device, point cloud data reception method, and point cloud data reception device | |
EP4518320A1 (en) | Point cloud data transmission device, point cloud data transmission method, point cloud data reception device, and point cloud data reception method | |
CN118160310A (zh) | 点云数据发送方法、点云数据发送装置、点云数据接收方法及点云数据接收装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination |