CN115914651A - 点云编解码方法、装置、设备及存储介质 - Google Patents

点云编解码方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN115914651A
CN115914651A CN202110982493.3A CN202110982493A CN115914651A CN 115914651 A CN115914651 A CN 115914651A CN 202110982493 A CN202110982493 A CN 202110982493A CN 115914651 A CN115914651 A CN 115914651A
Authority
CN
China
Prior art keywords
attribute
attribute information
point
current point
neighbor
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
Application number
CN202110982493.3A
Other languages
English (en)
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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202110982493.3A priority Critical patent/CN115914651A/zh
Priority to EP22860188.6A priority patent/EP4395321A1/en
Priority to PCT/CN2022/109523 priority patent/WO2023024842A1/zh
Publication of CN115914651A publication Critical patent/CN115914651A/zh
Priority to US18/369,012 priority patent/US20240037799A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/001Model-based coding, e.g. wire frame
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本申请提供了一种点云编解码方法、装置、设备及存储介质,该方法包括:对当前点的N类属性信息进行分组,得到当前点的M个属性分组,M为小于N的正整数;对当前点的同一个属性分组内的各属性信息,共用属性编码或解码中的第一步骤进行统一编码或解码。即本申请通过将当前点的N类属性信息进行分组,对于同一属性分组内的各属性信息共用属性编码或解码中的第一步骤进行统一编码或解码,进而避免重复搜索的问题,降低了属性编解码时的时间复杂度,提高了属性编解码的效率。

Description

点云编解码方法、装置、设备及存储介质
技术领域
本申请实施例涉及视频编解码技术领域,尤其涉及一种点云编解码方法、 装置、设备及存储介质。
背景技术
通过采集设备对物体表面进行采集,形成点云数据,点云数据包括几十 万甚至更多的点。在视频制作过程中,将点云数据以点云媒体文件的形式在 视频制作设备和视频编码设备之间传输。但是,如此庞大的点给传输带来了 挑战,因此,视频制作设备需要对点云数据进行压缩后传输。
点云数据的压缩主要包括位置信息的压缩和属性信息的压缩。点云包括 多类属性信息,在对多类属性信息进行压缩时,分别进行压缩,实现点云的 属性信息编码。
但是,对点云的各属性信息分别进行编码和/或解码时,存在重复操作, 造成时间复杂度较高,编解码效率较低。
发明内容
本申请提供一种点云编解码方法、装置、设备及存储介质,以降低点云 的编解码的时间复杂度,提高编解码效率。
第一方面,本申请提供一种点云编码方法,包括:
获取点云中待编码的当前点,所述当前点包括N类属性信息,所述N为 大于1的正整数;
对所述当前点的N类属性信息进行分组,得到所述当前点的M个属性 分组,所述M为小于N的正整数;
对所述当前点的同一个属性分组内的各属性信息,共用属性编码中的第 一步骤进行统一编码,所述第一步骤包括邻居点确定步骤和属性预测值计算 步骤中的至少一个。
第二方面,本申请提供一种点云编码方法,包括:
对点云码流进行解码,得到待解码的当前点,所述当前点包括N类属性 信息,所述N为大于1的正整数;
确定所述当前点的N类属性信息的M个属性分组,所述M为小于N的 正整数;
对所述当前点的同一个属性分组内的各属性信息,共用属性解码中的第 一步骤进行统一解码,所述第一步骤包括邻居点确定步骤和属性预测值计算 步骤中的至少一个。
第三方面,提供了一种点云编码装置,用于执行上述第一方面或其各实 现方式中的方法。具体地,所述点云编码装置包括用于执行上述第一方面或 其各实现方式中的方法的功能模块。
第四方面,提供了一种点云解码装置,用于执行上述第二方面或其各实 现方式中的方法。具体地,所述点云解码装置包括用于执行上述第二方面或 其各实现方式中的方法的功能模块。
第五方面,提供了一种编码设备,包括处理器和存储器。所述存储器用 于存储计算机程序,所述处理器用于调用并运行所述存储器中存储的计算机 程序,以执行上述第一方面或其各实现方式中的方法。
第六方面,提供了一种解码设备,包括处理器和存储器。所述存储器用 于存储计算机程序,所述处理器用于调用并运行所述存储器中存储的计算机 程序,以执行上述第二方面或其各实现方式中的方法。
第七方面,提供了一种编解码系统,包括第五方面中的编码设备,以及 第六方面中的解码设备。
第八方面,提供了一种芯片,用于实现上述第一方面至第二方面中任一 方面或其各实现方式中的方法。具体地,所述芯片包括:处理器,用于从存储 器中调用并运行计算机程序,使得安装有所述芯片的设备执行如上述第一方 面至第二方面中任一方面或其各实现方式中的方法。
第九方面,提供了一种计算机可读存储介质,用于存储计算机程序,所 述计算机程序使得计算机执行上述第一方面至第二方面中任一方面或其各实 现方式中的方法。
第十方面,提供了一种计算机程序产品,包括计算机程序指令,所述计 算机程序指令使得计算机执行上述第一方面至第二方面中任一方面或其各实 现方式中的方法。
第十一方面,提供了一种计算机程序,当其在计算机上运行时,使得计 算机执行上述第一方面至第二方面中任一方面或其各实现方式中的方法。
综上,本申请通过对当前点的N类属性信息进行分组,得到当前点的M 个属性分组,M为小于N的正整数;对当前点的同一个属性分组内的各属性 信息,共用属性编码或解码中的第一步骤进行统一编码或解码。即本申请通 过将当前点的N类属性信息进行分组,对于同一属性分组内的各属性信息, 共用属性编码或解码中的第一步骤进行统一编码或解码,进而避免重复搜索 的问题,降低了属性编解码时的时间复杂度,提高了属性编解码的效率。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中 所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本 发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的 前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例涉及的一种点云视频编解码系统的示意性框图;
图2是本申请实施例提供的编码框架的示意性框图;
图3是本申请实施例提供的解码框架的示意性框图;
图4A为本申请实施例涉及的一种点云排序方式示意图;
图4B为本申请实施例涉及的另一种点云排序方式示意图;
图5为本申请一实施例提供的点云编码方法的流程图;
图6为本申请一实施例提供的点云解码方法的流程图;
图7是本申请一实施例的点云编码装置的示意性框图;
图8是本申请一实施例的点云解码装置的示意性框图;
图9是本申请实施例提供的电子设备的示意性框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行 描述。
应理解,在本发明实施例中,“与A对应的B”表示B与A相关联。在 一种实现方式中,可以根据A确定B。但还应理解,根据A确定B并不意味 着仅仅根据A确定B,还可以根据A和/或其它信息确定B。
在本申请的描述中,除非另有说明,“多个”是指两个或多于两个。
另外,为了便于清楚描述本申请实施例的技术方案,在本申请的实施例 中,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项 进行区分。本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执 行次序进行限定,并且“第一”、“第二”等字样也并不限定一定不同。为了便 于理解本申请的实施例,首先对本申请实施例涉及到的相关概念进行如下简 单介绍:
点云(Point Cloud)是指空间中一组无规则分布的、表达三维物体或三维 场景的空间结构及表面属性的离散点集。
点云数据(Point Cloud Data)是点云的具体记录形式,点云中的点可以 包括点的位置信息和点的属性信息。例如,点的位置信息可以是点的三维坐 标信息。点的位置信息也可称为点的几何信息。例如,点的属性信息可包括 颜色信息和/或反射率等等。例如,所述颜色信息可以是任意一种色彩空间上 的信息。例如,所述颜色信息可以是(RGB)。再如,所述颜色信息可以是于 亮度色度(YcbCr,YUV)信息。例如,Y表示明亮度(Luma),Cb(U)表示蓝 色色差,Cr(V)表示红色,U和V表示为色度(Chroma)用于描述色差信息。 例如,根据激光测量原理得到的点云,所述点云中的点可以包括点的三维坐 标信息和点的激光反射强度(reflectance)。再如,根据摄影测量原理得到的点 云,所述点云中的点可以可包括点的三维坐标信息和点的颜色信息。再如, 结合激光测量和摄影测量原理得到点云,所述点云中的点可以可包括点的三 维坐标信息、点的激光反射强度(reflectance)和点的颜色信息。
点云数据的获取途径可以包括但不限于以下至少一种:(1)计算机设备 生成。计算机设备可以根据虚拟三维物体及虚拟三维场景的生成点云数据。 (2)3D(3-Dimension,三维)激光扫描获取。通过3D激光扫描可以获取静 态现实世界三维物体或三维场景的点云数据,每秒可以获取百万级点云数据; (3)3D摄影测量获取。通过3D摄影设备(即一组摄像机或具有多个镜头 和传感器的摄像机设备)对现实世界的视觉场景进行采集以获取现实世界的 视觉场景的点云数据,通过3D摄影可以获得动态现实世界三维物体或三维 场景的点云数据。(4)通过医学设备获取生物组织器官的点云数据。在医学 领域可以通过磁共振成像(Magnetic Resonance Imaging,MRI)、电子计算机 断层扫描(Computed Tomography,CT)、电磁定位信息等医学设备获取生物 组织器官的点云数据。
点云可以按获取的途径分为:密集型点云和稀疏性点云。
点云按照数据的时序类型划分为:
第一静态点云:即物体是静止的,获取点云的设备也是静止的;
第二类动态点云:物体是运动的,但获取点云的设备是静止的;
第三类动态获取点云:获取点云的设备是运动的。
按点云的用途分为两大类:
类别一:机器感知点云,其可以用于自主导航系统、实时巡检系统、地理 信息系统、视觉分拣机器人、抢险救灾机器人等场景;
类别二:人眼感知点云,其可以用于数字文化遗产、自由视点广播、三维 沉浸通信、三维沉浸交互等点云应用场景。
图1为本申请实施例涉及的一种点云视频编解码系统的示意性框图。需 要说明的是,图1只是一种示例,本申请实施例的点云视频编解码系统包括 但不限于图1所示。如图1所示,该点云视频编解码系统100包含编码设备 110和解码设备120。其中编码设备用于对点云数据进行编码(可以理解成压 缩)产生码流,并将码流传输给解码设备。解码设备对编码设备编码产生的 码流进行解码,得到解码后的点云数据。
本申请实施例的编码设备110可以理解为具有视频编码功能的设备,解 码设备120可以理解为具有视频解码功能的设备,即本申请实施例对编码设 备110和解码设备120包括更广泛的装置,例如包含智能手机、台式计算机、 移动计算装置、笔记本(例如,膝上型)计算机、平板计算机、机顶盒、电视、 相机、显示装置、数字媒体播放器、视频游戏控制台、车载计算机等。
在一些实施例中,编码设备110可以经由信道130将编码后的点云数据 (如码流)传输给解码设备120。信道130可以包括能够将编码后的点云数据 从编码设备110传输到解码设备120的一个或多个媒体和/或装置。
在一个实例中,信道130包括使编码设备110能够实时地将编码后的点 云数据直接发射到解码设备120的一个或多个通信媒体。在此实例中,编码 设备110可根据通信标准来调制编码后的点云数据,且将调制后的点云数据 发射到解码设备120。其中通信媒体包含无线通信媒体,例如射频频谱,可选 的,通信媒体还可以包含有线通信媒体,例如一根或多根物理传输线。
在另一实例中,信道130包括存储介质,该存储介质可以存储编码设备 110编码后的点云数据。存储介质包含多种本地存取式数据存储介质,例如光 盘、DVD、快闪存储器等。在该实例中,解码设备120可从该存储介质中获 取编码后的点云数据。
在另一实例中,信道130可包含存储服务器,该存储服务器可以存储编 码设备110编码后的点云数据。在此实例中,解码设备120可以从该存储服 务器中下载存储的编码后的点云数据。可选的,该存储服务器可以存储编码 后的点云数据且可以将该编码后的点云数据发射到解码设备120,例如web 服务器(例如,用于网站)、文件传送协议(FTP)服务器等。
一些实施例中,编码设备110包含视频编码器112及输出接口113。其 中,输出接口113可以包含调制器/解调器(调制解调器)和/或发射器。
在一些实施例中,编码设备110除了包括视频编码器112和输入接口113 外,还可以包括视频源111。
视频源111可包含视频采集装置(例如,视频相机)、视频存档、视频输入 接口、计算机图形系统中的至少一个,其中,视频输入接口用于从视频内容 提供者处接收点云数据,计算机图形系统用于产生点云数据。
视频编码器112对来自视频源111的点云数据进行编码,产生码流。视 频编码器112经由输出接口113将编码后的点云数据直接/间接传输到解码设 备120。编码后的点云数据还可存储于存储介质或存储服务器上,以供解码设 备120后续读取。
在一些实施例中,解码设备120包含输入接口121和视频解码器122。
在一些实施例中,解码设备120除包括输入接口121和视频解码器122 外,还可以包括显示装置123。
其中,输入接口121包含接收器及/或调制解调器。输入接口121可通过 信道130接收编码后的点云数据。
视频解码器122用于对编码后的点云数据进行解码,得到解码后的点云 数据,并将解码后的点云数据传输至显示装置123。
显示装置123显示解码后的点云数据。显示装置123可与解码设备120 整合或在解码设备120外部。显示装置123可包括多种显示装置,例如液晶 显示器(LCD)、等离子体显示器、有机发光二极管(OLED)显示器或其它类型 的显示装置。
此外,图1仅为实例,本申请实施例的技术方案不限于图1,例如本申请 的技术还可以应用于单侧的视频编码或单侧的视频解码。
由于点云是海量点的集合,存储所述点云不仅会消耗大量的内存,而且 不利于传输,也没有这么大的带宽可以支持将点云不经过压缩直接在网络层 进行传输,因此对点云进行压缩是很有必要的。
截止目前,可通过点云编码框架对点云进行压缩。
点云编码框架可以是运动图像专家组(Moving Picture Experts Group, MPEG)提供的基于几何的点云压缩(Geometry Point Cloud Compression,G- PCC)编解码框架或基于视频的点云压缩(Video Point Cloud Compression,V- PCC)编解码框架,也可以是音视频编码标准(Audio Video Standard,AVS) 组织提供的AVS-PCC编解码框架。G-PCC及AVS-PCC均针对静态的稀疏型 点云,其编码框架大致相同。G-PCC编解码框架可用于针对第一静态点云和 第三类动态获取点云进行压缩,V-PCC编解码框架可用于针对第二类动态点云进行压缩。G-PCC编解码框架也称为点云编解码器TMC13,V-PCC编解码 框架也称为点云编解码器TMC2。
下面以G-PCC编解码框架对本申请实施例可适用的编解码框架进行说 明。
图2是本申请实施例提供的编码框架的示意性框图。
如图2所示,编码框架200可以从采集设备获取点云的位置信息(也称 为几何信息或几何位置)和属性信息。点云的编码包括位置编码和属性编码。
位置编码的过程包括:对原始点云进行坐标变换、量化去除重复点等预 处理;构建八叉树后进行编码形成几何码流。
属性编码过程包括:通过给定输入点云的位置信息的重建信息和属性信 息的真实值,选择三种预测模式的一种进行点云预测,对预测后的结果进行 量化,并进行算术编码形成属性码流。
如图2所示,位置编码可通过以下单元实现:
坐标平移坐标量化单元201、八叉树构建单元202、八叉树重建单元203、 熵编码单元204。
坐标平移坐标量化单元201可用于将点云中点的世界坐标变换为相对坐 标,并对坐标进行量化,可减少坐标的数目;量化后原先不同的点可能被赋 予相同的坐标。
八叉树构建单元202可利用八叉树(octree)编码方式编码量化的点的位 置信息。例如,将点云按照八叉树的形式进行划分,由此,点的位置可以和八 叉树的位置一一对应,通过统计八叉树中有点的位置,并将其标识(flag)记 为1,以进行几何编码。
八叉树重建单元203用于重建点云中各点的几何位置,得到点的重建几 何位置。
熵编码单元204可以采用熵编码方式对八叉树构建单元202输出的位置 信息进行算术编码,即将八叉树构建单元202输出的位置信息利用算术编码 方式生成几何码流;几何码流也可称为几何比特流(geometry bitstream)。
属性编码可通过以下单元实现:
空间变换单元210、属性插值单元211、属性预测单元212、残差量化单 元213以及熵编码单元214。
空间变换单元210可用于将点云中点的RGB色彩空间变换为YCbCr格 式或其他格式。
属性转化单元211可用于转换点云中点的属性信息,以最小化属性失真。 例如,属性转化单元211可用于得到点的属性信息的真实值。例如,所述属 性信息可以是点的颜色信息。
属性预测单元212可用于对点云中点的属性信息进行预测,以得到点的 属性信息的预测值,进而基于点的属性信息的预测值得到点的属性信息的残 差值。例如,点的属性信息的残差值可以是点的属性信息的真实值减去点的 属性信息的预测值。
残差量化单元213可用于量化点的属性信息的残差值。
熵编码单元214可使用零行程编码(Zero run length coding)对点的属性 信息的残差值进行熵编码,以得到属性码流。所述属性码流可以是比特流信 息。
结合图2,本申请对于几何结构编码,主要操作和处理如下:
(1)预处理(Pre-processing):包括坐标变换(Transform coordinates)和 体素化(Voxelize)。通过缩放和平移的操作,将3D空间中的点云数据转换成 整数形式,并将其最小几何位置移至坐标原点处。
(2)几何编码(Geometry encoding):几何编码中包含两种模式,可在不 同条件下使用。
(a)基于八叉树的几何编码(Octree):八叉树是一种树形数据结构,在 3D空间划分中,对预先设定的包围盒进行均匀划分,每个节点都具有八个子 节点。通过对八叉树各个子节点的占用与否采用‘1’和‘0’指示,获得占用 码信息(occupancy code)作为点云几何信息的码流。
(b)基于三角表示的几何编码(Trisoup):将点云划分为一定大小的块 (block),定位点云表面在块的边缘的交点并构建三角形。通过编码交点位置 实现几何信息的压缩。
(3)几何量化(Geometry quantization):量化的精细程度通常由量化参 数(QP)来决定,QP取值越大,表示更大取值范围的系数将被量化为同一个 输出,因此通常会带来更大的失真,及较低的码率;相反,QP取值较小,表 示较小取值范围的系数将被量化为同一个输出,因此通常会带来较小的失真, 同时对应较高的码率。在点云编码中,量化是直接对点的坐标信息进行的。
(4)几何熵编码(Geometry entropy encoding):针对八叉树的占用码信 息,进行统计压缩编码,最后输出二值化(0或者1)的压缩码流。统计编码 是一种无损编码方式,可以有效的降低表达同样的信号所需要的码率。常用 的统计编码方式是基于上下文的二值化算术编码(CABAC,Content Adaptive Binary Arithmetic Coding)。
对于属性信息编码,主要操作和处理如下:
(1)属性重上色(Recoloring):有损编码情况下,在几何信息编码后, 需编码端解码并重建几何信息,即恢复3D点云的各点坐标信息。在原始点云 中寻找对应一个或多个邻近点的属性信息,作为该重建点的属性信息。
(2)属性预测编码(Prediction):属性预测编码时,通过对几何信息或属 性信息的邻近关系,选择一个或多个点作为预测值,并求加权平均获得最终 属性预测值,对真实值与预测值之间的差值进行编码。
(3)属性变换编码(Transform):属性变换编码中包含三种模式,可在 不同条件下使用。
(a)预测变换编码(Predicting Transform):根据距离选择子点集,将点 云划分成多个不同的层级(Level of Detail,LoD),实现由粗糙到精细化的点 云表示。相邻层之间可以实现自下而上的预测,即由粗糙层中的邻近点预测 精细层中引入的点的属性信息,获得对应的残差信号。其中,最底层的点作 为参考信息进行编码。
(b)提升变换编码(Lifting Transform):在LoD相邻层预测的基础上, 引入邻域点的权重更新策略,最终获得各点的预测属性值,获得对应的残差 信号。
(c)分层区域自适应变换编码(Region Adaptive Hierarchical Transform,RAHT):属性信息经过RAHT变换,将信号转换到变换域中,称之为变换系 数。
(4)属性信息量化(Attribute quantization):量化的精细程度通常由量化 参数(QP)来决定。在预测变换编码及提升变换编码中,是对残差值进行量 化后进行熵编码;在RAHT中,是对变换系数进行量化后进行熵编码。
(5)属性熵编码(Attribute entropy coding):量化后的属性残差信号或 变换系数一般使用行程编码(run length coding)及算数编码(arithmetic coding) 实现最终的压缩。相应的编码模式,量化参数等信息也同样采用熵编码器进 行编码。
图3是本申请实施例提供的解码框架的示意性框图。
如图3所示,解码框架300可以从编码设备获取点云的码流,通过解析 码得到点云中的点的位置信息和属性信息。点云的解码包括位置解码和属性 解码。
位置解码的过程包括:对几何码流进行算术解码;构建八叉树后进行合 并,对点的位置信息进行重建,以得到点的位置信息的重建信息;对点的位 置信息的重建信息进行坐标变换,得到点的位置信息。点的位置信息也可称 为点的几何信息。
属性解码过程包括:通过解析属性码流,获取点云中点的属性信息的残 差值;通过对点的属性信息的残差值进行反量化,得到反量化后的点的属性 信息的残差值;基于位置解码过程中获取的点的位置信息的重建信息,选择 三种预测模式的一种进行点云预测,得到点的属性信息的重建值;对点的属 性信息的重建值进行颜色空间反转化,以得到解码点云。
如图3所示,位置解码可通过以下单元实现:
熵解码单元301、八叉树重建单元302、逆坐标量化单元303以及逆坐标 平移单元304。
属性编码可通过以下单元实现:
熵解码单元310、逆量化单元311、属性重建单元312以及逆空间变换单 元313。
解压缩是压缩的逆过程,类似的,解码框架300中的各个单元的功能可 参见编码框架200中相应的单元的功能。
在解码端,解码器获得压缩码流后,首先进行熵解码,获得各种模式信 息及量化后的几何信息以及属性信息。首先,几何信息经过逆量化,得到重 建的3D点位置信息。另一方面,属性信息经过逆量化得到残差信息,并根据 采用的变换模式确认参考信号,得到重建的属性信息,按顺序与几何信息一 一对应,产生输出的重建点云数据。
例如,解码框架300可根据点云中点与点之间的欧式距离将点云划分为 多个LoD;然后,依次对LoD中点的属性信息进行解码;例如,计算零行程 编码技术中零的数量(zero_cnt),以基于zero_cnt对残差进行解码;接着,解 码框架300可基于解码出的残差值进行逆量化,并基于逆量化后的残差值与 当前点的预测值相加得到该点云的重建值,直到解码完所有的点云。当前点 将会作为后续LoD中点的最近邻居,并利用当前点的重建值对后续点的属性 信息进行预测。
由上述图2可知,点云编码器200从功能上主要包括了两部分:位置编 码模块和属性编码模块,其中位置编码模块用于实现点云的位置信息的编码, 形成几何码流,属性编码模块用于实现点云的属性信息的编码,形成属性码 流,本申请主要涉及属性信息的编码。
需要说明的是,编码端属性信息编码时确定的预测、量化、编码、滤波等 模式信息或者参数信息等在必要时携带在属性码流中。解码端通过解析属性 码流及根据已有信息进行分析确定与编码端相同的预测、量化、编码、滤波 等模式信息或者参数信息,从而保证编码端获得的属性信息的重建值和解码 端获得的属性信息的重建值相同。
上述是基于G-PCC编解码框架下的点云编解码器的基本流程,随着技术 的发展,该框架或流程的一些模块或步骤可能会被优化,本申请适用于该基 于G-PCC编解码框架下的点云编解码器的基本流程,但不限于该框架及流程。
下面对本申请涉及的编码技术概述:
1、属性预测编码
(1)反射率的属性预测方法
i)莫顿序邻居点选取
该方法根据偏移莫顿码的方法找到当前点的k个已编码的点作为邻居。 具体方法如下:获取所有点云的坐标,并按照莫顿排序得到莫顿顺序1,如图 4A所示。
在一些实施例中,将所有点云的坐标(x,y,z)加上一个固定值(j1,j2,j3), 用新的坐标(x+j1,y+j2,z+j3)生成点云对应的莫顿码,按照莫顿排序得到莫 顿顺序2,如图4B所示。注意在图4A中的A,B,C,D移到图4B中的不同位 置,对应的莫顿码也发生了变化,但它们的相对位置保持不变。另外,在图 4B中,点D的莫顿码是23,它的邻居点B的莫顿码是21,所以从点D向前 最多搜索两个点就可以找到点B。但在图4A中,从点D(莫顿码16)最多 需要向前搜索14个点才能找到点B(莫顿码2)。
根据莫顿顺序解码,查找当前点的最近预测点,例如,在莫顿顺序1中 选取所述当前点的前N个点作为备选,N取值范围是大于等于1,在莫顿顺 序2中选取所述当前点的前M个点作为备选,M的取值范围是大于等于1。
在上述N个点和M个点中,计算每个点到当前点的距离d,当前点的坐 标为(x,y,x),候选点的坐标为(x1,y1,z1),距离d计算方法为d=|x-x1|+|y- y1|+|z-z1|,从这N+M个点中选取距离最小的k个已解码点作为当前点的预测 点。
可选的,j1=j2=j3=42,k=3,N=M=4。
ii)Hilbert序邻居点的选取
在Hilbert(希尔伯特)序下当前编码点的前maxNumOfNeighbours(邻居 点的最大数量)个点中查找距离当前点最近的k个点。
可选的,maxNumOfNeighbours默认取128,k默认取3,距离计算方法 为曼哈顿距离,即d=|x1-x2|+|y1-y2|+|z1-z2|,可选的,距离计算方法还可以是 其他的距离计算方法。
iii)预测值计算
用邻居与当前点之间的曼哈顿距离的倒数作为权重,最后计算k个邻居 的属性重构值的加权平均获得属性预测值。
在一种示例中,根据如下公式(1),确定邻居点的属性权重:
Figure BDA0003229646250000131
其中,wij为当前点i的第j个邻居点的属性权重,(xi,yi,zi)为当前点 的几何信息,(xij,yij,zij)为第j个邻居点的几何信息。
在另一种示例中,公式(1)中的权重计算在x、y、z方向的分量采用不 同权重,则每个邻居的权重计算变为如下公式(2)所示:
Figure BDA0003229646250000132
其中,a为当前点的第一分量的权重系数,b为当前点的第二分量的权重 系数,c为当前点的第三分量的权重系数。可选的,该a、b、c可以查表获得, 或者为预设的固定值。
根据上述公式确定出邻居点的属性权重后,根据如下公式(3),计算出 当前点的属性预测值:
Figure BDA0003229646250000133
其中,
Figure BDA0003229646250000134
为第j个邻居点的属性信息的重建值,j=0,1…k,
Figure BDA0003229646250000135
为当前点的 属性信息的预测值。
上述是以属性信息为反射率时,对反射率的预测值的确定过程进行了介 绍,对于其他属性信息的预测过程可以参照已有技术的介绍,在此不再赘述。
目前的点云属性预测过程中,对点云的多种属性采用分别预测的方法, 且各属性预测过程中相互独立,造成时间复杂度较高,且引入重复搜索,使 得编解码效率低。
为了解决上述技术问题,本申请通通过将当前点的N类属性信息进行分 组,对于同一属性分组内的各属性信息,共用属性编码或解码中的第一步骤 进行统一编码或解码,进而避免重复搜索的问题,降低了属性编解码时的时 间复杂度,提高了属性编解码的效率。
下面将对本申请技术方案进行详细阐述:
首先以编码端为例,对本申请实施例提供的点云编码方法进行描述。
图5为本申请一实施例提供的点云编码方法的流程图。该方法的执行主 体是具有编码点云属性信息功能的装置,例如点云编码装置,该点云编码装 置可以为上述所述的点云编码设备或者为点云编码设备中的一部分。为了便 于描述,下面实施例以执行主体为点云编码设备为例进行介绍。如图5所示, 本实施例的方法包括:
S501、获取点云中待编码的当前点。
其中,当前点包括N类属性信息,N为大于1的正整数。
本申请实施例的点云可以是指整体点云,也可以是部分点云,例如通过 八叉树或者其他方式获得的部分点云,比如整体点云的一个子集。
点云编码设备可以通过如下方式获取点云:
方式一,若点云编码设备具有点云采集功能,则该点云可以为点云编码 设备采集得到的。
方式二,上述点云为点云编码设备从其他存储设备处获取的,例如点云 采集设备将采集的点云存储在存储设备中,点云编码设备从该存储设备中读 取上述点云。
方式三,上述点云为点云编码设备从点云采集设备处获取的,例如点云 采集设备将采集的点云发送给点云编码设备。
若上述点云为整体点云,则点云编码设备将通过上述方式获得整体点云 作为本申请的研究对象进行后续的编码步骤。
若上述点云为部分点云,则上述点云编码设备将通过上述方式获得整体 点云进行划分,获得部分点云。例如点云编码设备采用八叉树或四叉树等方 法对整体点云进行划分,将一个节点对应的部分点云作为本申请的研究对象, 进行后续的编码步骤。
根据上述方法获得点云后,对点云中的点进行几何编码和属性编码,例 如先进行几何编码,在几何编码结束后再进行属性编码。本申请主要涉及点 云的属性编码。
点云属性编码是逐点进行编码,当前点可以理解为点云中正在编码的点。
在一些实施例中,当前点包括N类属性信息可以理解为点云中所有的点 均包括N类属性信息。点云中所有点的属性信息编码过程与当前点的属性信 息的编码过程一致,本申请实施例以当前点为例进行介绍。
当前点包括N类属性信息,例如当前点包括颜色属性、反射率属性、法 向量属性、材质属性等。
S502、对当前点的N类属性信息进行分组,得到当前点的M个属性分 组。
其中,M为小于N的正整数。
例如,当前点包括4类不同的属性信息,将其中4类属性信息分在一个 属性分组中4,此时M=1。
再例如,当前点包括4类不同的属性信息,将其中3类属性信息分在一 个属性分组中,另外剩余的一个属性信息分在一个属性分组中,此时M=2。
再例如,当前点包括4类不同的属性信息,将其中2类属性信息分在一 个属性分组中,将剩余的另外2类属性信息分在另一个属性分组中,此时, M=2。
再例如,当前点包括4类不同的属性信息,将其中2类属性信息分在一 个属性分组中,将剩余的另外2类属性信息分别分在两个属性分组中,此时, M=3。
由上述可知,本步骤对当前点的N类属性信息进行分组,得到的M个 属性分组中,每个属性分组中至少包括一类属性信息,且M个属性分组中至 少有一个属性分组包括至少两类属性信息。
本申请主要对属性分组中包括至少两类属性信息的属性分组的编码过程 进行介绍。
对于包括一个属性信息的属性分组,其属性编码方式可以参照已有的单 独编码方式进行编码,也可以参照具有至少两类属性信息的属性分组的编码 方式进行编码。
本步骤中,对当前点的N类属性信息进行分组的方式可以是默认方式, 例如事先设定的将N类属性信息中的那些属性信息划分在一个属性分组中。
点云中所有点的属性信息的分组方式可以相同,也可以不同,或者部分 相同,部分不同,本申请对此不做限制,具体根据实际情况确定。
根据上述方式将当前点的N类属性信息划分在M个属性分组中后,执 行如下S503。
S503、对当前点的同一个属性分组内的各属性信息,共用属性编码中的 第一步骤进行统一编码。
其中,第一步骤包括邻居点确定步骤和属性预测值计算步骤中的至少一 个。
本申请中,同一个属性分组内的各属性信息,共用属性编码中的第一步 骤进行统一编码。也可以理解为将同一个属性分组内的各属性信息作为一个 整体同时进行第一步骤编码。例如,第一步骤为邻居点确定步骤时,则该属 性分组中的属性信息将通过第一步骤确定出邻居点作为部分邻居点或全部邻 居点,共享这些邻居点,避免由于重复搜索带来的时间复杂度,进而提高点 云的属性编码效率。
需要说明的是,不同属性分组的属性编码过程相互独立,例如不同组的 属性信息编码采用不同的编码方式进行编码。
本申请实施例的第一步骤为邻居点确定步骤和属性预测值计算步骤中的 至少一个。
也就是说,同一个属性分组内各属性信息共用属性编码中的第一步骤进 行统一编码,可以是同一个属性分组内各属性信息共用邻居点确定步骤,即 同一个属性分组内的各属性信息,共用邻居点确定步骤,确定出K个邻居点, 将这K个邻居点作为该属性分组内各属性信息对应的部分邻居点或全部邻居 点。或者,同一个属性分组内各属性信息共用属性预测值计算步骤进行统一 的属性预测值计算,例如,该属性分组内的各属性信息的属性预测值的计算 方式相同。或者,同一个属性分组内各属性信息共用邻居点确定步骤,确定出邻居点后,在共用属性预测值计算确定,采用相同的属性预测值的计算方 式对该属性分组内的各属性信息的属性预测值进行计算。
在一些实施例中,若第一步骤包括邻居点确定步骤,则上述S503包括如 下S503-A1和S503-A2:
S503-A1、针对M个属性分组中的每一个属性分组,则从点云的已编码 点中,搜索K个第一邻居点作为属性分组内的各属性信息的共同邻居点;
S503-A2、根据K个第一邻居点的对应的属性信息,确定当前点在属性 分组内的各属性信息的预测值。
在一种示例中,将上述确定K个邻居点作为该属性分组中至少一个属性 信息的全部邻居点。
在一种示例中,将上述确定的K个邻居点作为该属性分组中至少一个属 性信息的部分邻居点。
举例说明,假设将当前点的颜色属性和反射率属性划分在一个属性分组 中,对于该属性分组,从点云的已编码点中,选择K个第一邻居点。将这K 个第一邻居点作为当前点的颜色属性和反射率属性的共同邻居点,根据这K 个第一邻居点各对应的属性信息,分别计算当前点的颜色的预测值和反射率 的预测值。例如,将这K个第一邻居点的反射率的加权平均值,确定为当前 点的反射率预测值,将这K个第一邻居点的颜色的加权平均值,确定为当前 点的颜色预测值。
上述S503-A1中,从点云的已编码点中选择K个第一邻居点的方式包括 但不限于如下几种方式:
方式一,根据点云中各点的编码顺序,从点云的已编码点中选择距离当 前点最近的K个第一邻居点。
方式二,根据点云中点的坐标信息,从点云的已编码点中选择与当前点 之间的距离最近的K个第一邻居点。
方式三,根据点云中点的坐标信息,从点云的已编码点中搜索所有距离 小于等于阈值d的已编码点,作为当前点的K个第一邻居点。
上述距离计算方式可以是欧式距离、曼哈顿距离、加权曼哈顿距离等。
根据上述S503-A1从点云的已编码点中,搜索K个第一邻居点作为属性 分组内的各属性信息的共同邻居点后,执行S503-A2根据K个第一邻居点各 对应的属性信息,确定当前点在属性分组内的各属性信息的预测值。
上述S503-A2根据K个第一邻居点对应的属性信息,确定当前点在属性 分组内的各属性信息的预测值的实现方式包括但不限于如下几种方式:
方式一,针对属性分组内的每个属性信息,采用相同的预测值计算方式, 根据K个第一邻居点各对应的属性信息,计算得到当前点在属性分组内的各 属性信息的预测值。
在一种示例中,将K个第一邻居点的第一属性信息的平均值,确定当前 点的第一属性信息的预测值,第一属性信息为属性分组内的任意一个属性信 息。
例如,该属性分组中包括当前点的颜色属性和反射率属性,将K个第一 邻居点的颜色属性的平均值,确定当前点的颜色属性的预测值。将K个第一 邻居点的反射率属性的平均值,确定当前点的反射率属性的预测值。
在另一种示例,将K个第一邻居点的第一属性信息的加权平均值,确定 当前点的第一属性信息的预测值,第一属性信息为属性分组内的任意一个属 性信息。
例如,该属性分组中包括当前点的颜色属性和反射率属性,将K个第一 邻居点的颜色属性的加权平均值,确定当前点的颜色属性的预测值。将K个 第一邻居点的反射率属性的加权平均值,确定当前点的反射率属性的预测值。
方式二,针对属性分组内的每个属性信息,采用不完全相同的预测值计 算方式,根据K个第一邻居点各对应的属性信息,计算得到当前点在属性分 组内的各属性信息的预测值。
在方式二的第一种示例中,属性分组内的每个属性信息,分别采用不同 的预测值计算方式,根据K个第一邻居点各对应的属性信息,计算得到当前 点在属性分组内的各属性信息的预测值。
例如,该属性分组中包括当前点的颜色属性和反射率属性,其中颜色属 性预测值的计算方式与反射率属性预测值的计算方式不同。例如将K个第一 邻居点的颜色属性的平均值,确定当前点的颜色属性的预测值,将K个第一 邻居点的反射率属性的加权平均值,确定当前点的反射率属性的预测值。或 者,将K个第一邻居点的颜色属性的加权平均值,确定当前点的颜色属性的 预测值,将K个第一邻居点的反射率属性的平均值,确定当前点的反射率属 性的预测值。
在方式二的第二种示例,对于属性分组内的第二属性信息,将K个第一 邻居点的第二属性信息的加权平均值,确定当前点的第二属性信息的预测值; 对于属性分组内的第三属性信息,从点云已编码的点中搜索L个第二邻居点, 根据K个第一邻居点和L个第二邻居点的第三属性信息,确定当前点的第三 属性信息的预测值;其中,第二邻居点与第一邻居点不同,第三属性信息为 属性分组中除第二属性信息之外的至少一个属性信息。
举例说明,假设属性分组中包括当前点的颜色属性和反射率属性,将反 射率属性记为第二属性信息,将颜色属性记为第三属性信息。对于当前点的 反射率属性,将K个第一邻居点的反射率属性的加权平均值,确定当前点的 反射率属性的预测值。
对于颜色属性,在K个邻居点的基础上,再搜索L个第二邻居点,具体 是从点云已编码的点中搜索L个第二邻居点,第二邻居点与第一邻居点不同。 此时,当前点的颜色属性的邻居点包括K个第一邻居点和L个第二邻居点, 进而根据K个第一邻居点和L个第二邻居点的颜色属性,确定当前点的颜色 属性的预测值,例如将K个第一邻居点和L个第二邻居点的颜色属性的加权 平均值,确定为当前点的颜色属性的预测值。
上述从点云的已编码点中搜索L个第二邻居点的方式至少包括如下方式:
方式1,从已编码的点中搜索距离当前点的距离为d2的点,且该点与第 一邻居点不同。
方式2,获取K个第一邻居点中的第K个第一邻居点与当前点之间的第 一距离d1;在点云的已编码点中,搜索与当前点的距离为第一距离d1的L个 第二邻居点。
上述距离的计算方式可以是欧式距离、曼哈顿距离、加权曼哈顿距离等。
上述第K个邻居点可以为K个第一邻居点中与当前点距离最大的第一 邻居点。
根据上述步骤,对当前点的同一个属性分组内的各属性信息,共用属性 编码中的第一步骤进行统一编码后,形成点云码流。
在一些实施例中,在点云码流中包括N类属性信息中每一类属性信息在 编码时共用的第一步骤的指示信息。这样解码端在对每一类属性信息进行解 码时,可以根据第一步骤的指示信息确定该类属性信息所编码时所共享的第 一步骤,确定出该属性信息所在的属性分组,进而对一个属性分组中的各属 性信息共用属性解码中的第一步骤进行统一解码,以提高解码效率。
可选的,上述每一类属性信息对应的第一步骤的指示信息用于指示该类 属性信息在确定邻居点时共用邻居点确定步骤,和/或该类属性信息在计算属 性预设值时共用属性预测值计算步骤。
本申请实施例提供的点云编码方法,通过获取点云中待编码的当前点, 当前点包括N类属性信息,N为大于1的正整数;对当前点的N类属性信息 进行分组,得到当前点的M个属性分组,M为小于N的正整数;对当前点的 同一个属性分组内的各属性信息,共用属性编码中的第一步骤进行统一编码, 其中第一步骤包括邻居点确定步骤和属性预测值计算步骤中的至少一个。即 本申请通过将当前点的N类属性信息进行分组,对于同一属性分组内的各属 性信息,共用属性编码或解码中的第一步骤进行统一编码或解码,进而避免 重复搜索的问题,降低了属性编码时的时间复杂度,提高了属性编码的效率。
上文以编码端为例对本申请实施例提供的点云编码方法进行描述,下面 结合图6,以解码端为例,对本申请的技术方案进行介绍。
图6为本申请一实施例提供的点云解码方法的流程图。该方法的执行主 体是具有解码点云属性信息功能的装置,例如点云解码装置,该点云解码装 置可以为上述所述的点云解码设备或者为点云解码设备中的一部分。为了便 于描述,下面实施例以执行主体为点云解码设备为例进行介绍。如图6所示, 包括:
S601、对点云码流进行解码,得到待解码的当前点。
当前点包括N类属性信息,N为大于1的正整数。
需要说明的是,本实施例涉及点云的属性信息的解码过程,点云的属性 信息解码是在点云的位置信息解码后执行的。其中点云的位置信息也称为点 云的几何信息。
本申请实施例中,已解码的点可以理解为几何信息已解码的点和属性信 息已解码的点。具体的,点云码流包括几何码流和属性码流,解码端首先对 点云的几何码流进行解码,得到点云中点的几何信息的重建值。接收,对点 云的属性码流进行解码,得到点云中点的属性信息的重建值,点云中点的几 何信息和属性信息结合,得到解码后的点云。本申请实施例涉及到点云属性 码流的解码过程。
在对点云的属性码流的解码过程中,对点云中每个点的解码过程相同, 以点云中待解码的当前点为例,在确定点云中当前点的属性信息时,需要获 得点云中已解码的点,并从这些已解码的点中选择当前点的至少一个邻居点。 根据当前点的至少一个邻居点的属性信息的重建值,得到当前点属性信息的 预测值,再根据当前点属性信息的预测值和点云的属性码流中解析出当前点 的属性信息的残差值,得到当前点的属性信息的重建值。
本申请待解码的当前点包括N类属性信息,例如当前点包括颜色属性、 反射率属性、法向量属性、材质属性等。
在一些实施例中,当前点包括N类属性信息可以理解为点云中所有的点 均包括N类属性信息。点云中所有点的属性信息解码过程与当前点的属性信 息的解码过程一致,本申请实施例以当前点为例进行介绍。
S602、确定当前点的N类属性信息的M个属性分组,M为小于N的正 整数。
上述S602的方式包括但不限于如下几种:
方式一,解码点云码流,得到N类属性信息中每一类属性信息在编码时 共用的第一步骤的指示信息,并根据每一类属性信息在编码时共用的第一步 骤的指示信息,将当前点的N类属性信息中共用第一步骤的属性信息划分在 同一个属性分组中,得到当前点的M个属性分组。
具体的,编码端在点云码流中携带N类属性信息中每一类属性信息在编 码时共用的第一步骤的指示信息,该指示信息用于指示该类属性信息在编码 时所共用的第一步骤。这样,解码端接收到点云码流后,可以根据点云码流 中的N类属性信息中每一类属性信息在编码时共用的第一步骤的指示信息, 确定出每一类属性信息在编码时共用的第一步骤式,进而将当前点的N个属 性信息中共用相同第一步骤的属性信息划分为一个属性分组中,实现对当前 点的N类属性信息的分组,得到当前点的M个属性分组。
可选的,每一类属性信息对应的第一步骤的指示信息用于指示该类属性 信息在确定邻居点时共用邻居点确定步骤,和/或该类属性信息在计算属性预 设值时共用属性预测值计算步骤。这样,解码端根据第一步骤的指示信息获 得当前点的属性信息在属性编码时共用邻居点确定步骤,进而在解码过程中, 也共用邻居点确定步骤,以在已解码点中确定当前点的邻居点。和/或,解码 端根据第一步骤的指示信息获得当前点的属性信息在编码时共享属性预测值 步骤,进而在解码过程中,使用相同的属性预测值的计算方式计算得到当前 点在该属性分组内的各属性信息的预测值。
方式二,对当前点的N类属性信息进行分组,得到当前点的M个属性 分组。
其中,M为小于N的正整数。
例如,当前点包括4类不同的属性信息,将其中4类属性信息分在一个 属性分组中4,此时M=1。
再例如,当前点包括4类不同的属性信息,将其中3类属性信息分在一 个属性分组中,另外剩余的一个属性信息分在一个属性分组中,此时M=2。
再例如,当前点包括4类不同的属性信息,将其中2类属性信息分在一 个属性分组中,将剩余的另外2类属性信息分在另一个属性分组中,此时, M=2。
再例如,当前点包括4类不同的属性信息,将其中2类属性信息分在一 个属性分组中,将剩余的另外2类属性信息分别分在两个属性分组中,此时, M=3。
由上述可知,本步骤对当前点的N类属性信息进行分组,得到的M个 属性分组中,每个属性分组中至少包括一类属性信息,且M个属性分组中至 少有一个属性分组包括至少两类属性信息。
本申请主要对属性分组中包括至少两类属性信息的属性分组的解码过程 进行介绍。
对于包括一个属性信息的属性分组,其属性解码方式可以参照已有的单 独解码方式进行解码,也可以参照具有至少两类属性信息的属性分组的解码 方式进行解码。
本步骤中,对当前点的N类属性信息进行分组的方式可以是默认方式, 即解码端和编码端采用相同的分组方式进行属性信息分组。例如事先设定的 将N类属性信息中的那些属性信息划分在一个属性分组中。
点云中所有点的属性信息的分组方式可以相同,也可以不同,或者部分 相同,部分不同,本申请对此不做限制,具体根据实际情况确定。
根据上述方式确定出当前点的N类属性信息的M个属性分组后,执行 如下S603。
S603、对当前点的同一个属性分组内的各属性信息,共用属性解码中的 第一步骤进行统一解码。
其中,第一步骤包括邻居点确定步骤和属性预测值计算步骤中的至少一 个。
本申请中,同一个属性分组内的各属性信息,共用属性解码中的第一步 骤进行统一解码。也可以理解为将同一个属性分组内的各属性信息作为一个 整体同时进行第一步骤解码。例如,第一步骤为邻居点确定步骤时,则该属 性分组中的属性信息将通过第一步骤确定出邻居点作为部分邻居点或全部邻 居点,共享这些邻居点,避免由于重复搜索带来的时间复杂度,进而提高点 云的属性解码效率。
需要说明的是,不同属性分组的属性解码过程相互独立,例如不同组的 属性信息解码采用不同的解码方式进行解码。
本申请实施例的第一步骤为邻居点确定步骤和属性预测值计算步骤中的 至少一个。
也就是说,同一个属性分组内各属性信息共用属性解码中的第一步骤进 行统一解码,可以是同一个属性分组内各属性信息共用邻居点确定步骤,即 同一个属性分组内的各属性信息,共用邻居点确定步骤,确定出K个邻居点, 将这K个邻居点作为该属性分组内各属性信息对应的部分邻居点或全部邻居 点。或者,同一个属性分组内各属性信息共用属性预测值计算步骤进行统一 的属性预测值计算,例如,该属性分组内的各属性信息的属性预测值的计算 方式相同。或者,同一个属性分组内各属性信息共用邻居点确定步骤,确定出邻居点后,在共用属性预测值计算确定,采用相同的属性预测值的计算方 式对该属性分组内的各属性信息的属性预测值进行计算。
在一些实施例中,若第一步骤包括邻居点确定步骤,则上述S603中对当 前点的同一个属性分组内的各属性信息,共用属性解码中的第一步骤进行统 一解码,包括如下S603-A1和S603-A2:
S603-A1、针对M个属性分组中的每一个属性分组,则从点云的已解码 点中,搜索K个第一邻居点作为属性分组内的各属性信息的共同邻居点;
S603-A2、根据K个第一邻居点的对应的属性信息,确定当前点在属性 分组内的各属性信息的预测值。
在一种示例中,将上述确定K个邻居点作为该属性分组中至少一个属性 信息的全部邻居点。
在一种示例中,将上述确定的K个邻居点作为该属性分组中至少一个属 性信息的部分邻居点。
举例说明,假设将当前点的颜色属性和反射率属性划分在一个属性分组 中,对于该属性分组,从点云的已解码点中,选择K个第一邻居点。将这K 个第一邻居点作为当前点的颜色属性和反射率属性的共同邻居点,根据这K 个第一邻居点各对应的属性信息,分别计算当前点的颜色属性的预测值和反 射率属性的预测值。例如,将这K个第一邻居点的反射率属性的加权平均值, 确定为当前点的反射率属性的预测值,将这K个第一邻居点的颜色属性的加 权平均值,确定为当前点的颜色属性的预测值。
上述S603-A1中从点云的已解码点中,搜索K个第一邻居点的实现方式 包括但不限于如下几种方式:
方式一,根据点云中各点的解码顺序,从点云的已解码点中选择距离当 前点最近的K个第一邻居点。
方式二,根据点云中点的坐标信息,从点云的已解码点中选择与当前点 之间的距离最近的K个第一邻居点。
方式三,根据点云中点的坐标信息,从点云的已解码点中搜索所有距离 小于等于阈值d的已解码点,作为当前点的K个第一邻居点。
上述距离计算方式可以是欧式距离、曼哈顿距离、加权曼哈顿距离等。
根据上述S603-A1从点云的已解码点中,搜索K个第一邻居点作为属性 分组内的各属性信息的共同邻居点后,执行S603-A2根据K个第一邻居点各 对应的属性信息,确定当前点在属性分组内的各属性信息的预测值。
上述S603-A2根据K个第一邻居点各对应的属性信息,确定当前点在属 性分组内的各属性信息的预测值的实现方式包括但不限于如下几种方式:
方式一,针对属性分组内的每个属性信息,采用相同的预测值计算方式, 根据K个第一邻居点各对应的属性信息,计算得到当前点在属性分组内的各 属性信息的预测值。
在一种示例中,将K个第一邻居点的第一属性信息的平均值,确定当前 点的第一属性信息的预测值,第一属性信息为属性分组内的任意一个属性信 息。
例如,该属性分组中包括当前点的颜色属性和反射率属性,将K个第一 邻居点的颜色属性的平均值,确定当前点的颜色属性的预测值。将K个第一 邻居点的反射率属性的平均值,确定当前点的反射率属性的预测值。
在另一种示例,将K个第一邻居点的第一属性信息的加权平均值,确定 当前点的第一属性信息的预测值,第一属性信息为属性分组内的任意一个属 性信息。
例如,该属性分组中包括当前点的颜色属性和反射率属性,将K个第一 邻居点的颜色属性的加权平均值,确定当前点的颜色属性的预测值。将K个 第一邻居点的反射率属性的加权平均值,确定当前点的反射率属性的预测值。
方式二,针对属性分组内的每个属性信息,采用不完全相同的预测值计 算方式,根据K个第一邻居点各对应的属性信息,计算得到当前点在属性分 组内的各属性信息的预测值。
在方式二的第一种示例中,属性分组内的每个属性信息,分别采用不同 的预测值计算方式,根据K个第一邻居点各对应的属性信息,计算得到当前 点在属性分组内的各属性信息的预测值。
例如,该属性分组中包括当前点的颜色属性和反射率属性,其中颜色属 性预测值的计算方式与反射率属性预测值的计算方式不同。例如将K个第一 邻居点的颜色属性的平均值,确定当前点的颜色属性的预测值,将K个第一 邻居点的反射率属性的加权平均值,确定当前点的反射率属性的预测值。或 者,将K个第一邻居点的颜色属性的加权平均值,确定当前点的颜色属性的 预测值,将K个第一邻居点的反射率属性的平均值,确定当前点的反射率属 性的预测值。
在方式二的第二种示例,对于属性分组内的第二属性信息,将K个第一 邻居点的第二属性信息的加权平均值,确定当前点的第二属性信息的预测值; 对于属性分组内的第三属性信息,从点云已解码的点中搜索L个第二邻居点, 根据K个第一邻居点和L个第二邻居点的第三属性信息,确定当前点的第三 属性信息的预测值;其中,第二邻居点与第一邻居点不同,第三属性信息为 属性分组中除第二属性信息之外的至少一个属性信息。
举例说明,假设属性分组中包括当前点的颜色属性和反射率属性,将反 射率属性记为第二属性信息,将颜色属性记为第三属性信息。对于当前点的 反射率属性,将K个第一邻居点的反射率属性的加权平均值,确定当前点的 反射率属性的预测值。
对于颜色属性,在K个邻居点的基础上,再搜索L个第二邻居点,具体 是从点云已解码的点中搜索L个第二邻居点,第二邻居点与第一邻居点不同。 此时,当前点的颜色属性的邻居点包括K个第一邻居点和L个第二邻居点, 进而根据K个第一邻居点和L个第二邻居点的颜色属性,确定当前点的颜色 属性的预测值,例如将K个第一邻居点和L个第二邻居点的颜色属性的加权 平均值,确定为当前点的颜色属性的预测值。
上述从点云的已解码点中搜索L个第二邻居点的方式至少包括如下方式:
方式1,从已解码的点中搜索距离当前点的距离为d2的点,且该点与第 一邻居点不同。
方式2,获取K个第一邻居点中的第K个第一邻居点与当前点之间的第 一距离d1;在点云的已解码点中,搜索与当前点的距离为第一距离d1的L个 第二邻居点。
上述距离的计算方式可以是欧式距离、曼哈顿距离、加权曼哈顿距离等。
上述第K个邻居点可以为K个第一邻居点中与当前点距离最大的第一 邻居点。
本申请实施例提供的点云解码方法,通过对点云码流进行解码,得到待 解码的当前点,当前点包括N类属性信息,N为大于1的正整数;确定当前 点的N类属性信息的M个属性分组,M为小于N的正整数,M为小于N的 正整数;对当前点的同一个属性分组内的各属性信息,共用属性解码中的第 一步骤进行统一解码,其中第一步骤包括邻居点确定步骤和属性预测值计算 步骤中的至少一个。即本申请通过确定当前点的N类属性信息的M个属性分组,对于同一属性分组内的各属性信息,共用属性解码中的第一步骤进行统 一解码,进而避免重复搜索的问题,降低了属性解码时的时间复杂度,提高 了属性解码的效率。
应理解,点云解码方法为上述点云编码方法的逆过程。点云解码方法中 的步骤可以参考点云编码方法中的相应步骤,为了避免重复,在此不再赘述。
以上结合附图详细描述了本申请的优选实施方式,但是,本申请并不限 于上述实施方式中的具体细节,在本申请的技术构思范围内,可以对本申请 的技术方案进行多种简单变型,这些简单变型均属于本申请的保护范围。例 如,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下, 可以通过任何合适的方式进行组合,为了避免不必要的重复,本申请对各种 可能的组合方式不再另行说明。又例如,本申请的各种不同的实施方式之间 也可以进行任意组合,只要其不违背本申请的思想,其同样应当视为本申请所公开的内容。
还应理解,在本申请的各种方法实施例中,上述各过程的序号的大小并 不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定, 而不应对本申请实施例的实施过程构成任何限定。
上文结合图1至图6,详细描述了本申请的方法实施例,下文结合图7 至图9,详细描述本申请的装置实施例。
图7是本申请一实施例的点云编码装置的示意性框图。
如图7所示,点云编码装置10可以包括:
获取单元11,用于获取点云中待编码的当前点,所述当前点包括N类属 性信息,所述N为大于1的正整数;
分组单元12,用于对所述当前点的N类属性信息进行分组,得到所述当 前点的M个属性分组,所述M为小于N的正整数;
编码单元13,用于对所述当前点的同一个属性分组内的各属性信息,共 用属性编码中的第一步骤进行统一编码,所述第一步骤包括邻居点确定步骤 和属性预测值计算步骤中的至少一个。
在一些实施例中,若所述第一步骤包括邻居点确定步骤,则编码单元13, 具体用于针对所述M个属性分组中的每一个属性分组,则从所述点云的已编 码点中,搜索K个第一邻居点作为所述属性分组内的各属性信息的共同邻居 点;根据所述K个第一邻居点各对应的属性信息,确定所述当前点在所述属 性分组内的各属性信息的预测值。
在一些实施例中,编码单元13,具体用于针对所述属性分组内的每个属 性信息,采用相同的预测值计算方式,根据所述K个第一邻居点各对应的属 性信息,计算得到所述当前点在所述属性分组内的各属性信息的预测值;或 者,
针对所述属性分组内的每个属性信息,采用不完全相同的预测值计算方 式,根据所述K个第一邻居点各对应的属性信息,计算得到所述当前点在所 述属性分组内的各属性信息的预测值。
在一些实施例中,编码单元13,具体用于将所述K个第一邻居点的第一 属性信息的加权平均值,确定所述当前点的第一属性信息的预测值,所述第 一属性信息为所述属性分组内的任意一个属性信息。
在一些实施例中,编码单元13,具体用于对于所述属性分组内的第二属 性信息,将所述K个第一邻居点的第二属性信息的加权平均值,确定所述当 前点的第二属性信息的预测值;对于所述属性分组内的第三属性信息,从所 述点云已编码的点中搜索L个第二邻居点,根据所述K个第一邻居点和所述 L个第二邻居点的第三属性信息,确定所述当前点的第三属性信息的预测值; 其中,所述第二邻居点与所述第一邻居点不同,所述第三属性信息为所述属 性分组中除所述第二属性信息之外的至少一个属性信息。
在一些实施例中,编码单元13,具体用于获取所述K个第一邻居点中的 第K个第一邻居点与所述当前点之间的第一距离;在所述点云的已编码点中, 搜索与所述当前点的距离为所述第一距离的L个第二邻居点。
可选的,所述第K个第一邻居点为所述K个第一邻居点中与当前点的距 离最大的一个第一邻居点。
在一些实施例中,点云码流中包括所述N类属性信息中每一类属性信息 在编码时共用的第一步骤的指示信息。
在一些实施例中,每一类属性信息对应的第一步骤的指示信息用于指示 该类属性信息在确定邻居点时共用邻居点确定步骤,和/或该类属性信息在计 算属性预设值时共用属性预测值计算步骤。
应理解的是,装置实施例与方法实施例可以相互对应,类似的描述可以 参照方法实施例。为避免重复,此处不再赘述。具体地,图7所示的装置10 可以执行上述点云编码方法的实施例,并且装置10中的各个模块的前述和其 它操作和/或功能分别为了实现编码设备对应的方法实施例,为了简洁,在此 不再赘述。
图8是本申请一实施例的点云解码装置的示意性框图。
如图8所示,点云解码装置20可以包括:
获取单元21,用于对点云码流进行解码,得到待解码的当前点,所述当 前点包括N类属性信息,所述N为大于1的正整数;
确定单元22,用于确定所述当前点的N类属性信息的M个属性分组, 所述M为小于N的正整数;
解码单元23,用于对所述当前点的同一个属性分组内的各属性信息,共 用属性解码中的第一步骤进行统一解码,所述第一步骤包括邻居点确定步骤 和属性预测值计算步骤中的至少一个。
在一些实施例中,确定单元22,具体用于得到所述N类属性信息中每一 类属性信息在编码时共用的第一步骤的指示信息,并根据每一类属性信息在 编码时共用的第一步骤的指示信息,将所述当前点的N类属性信息中共用第 一步骤的属性信息划分在同一个属性分组中,得到所述当前点的M个属性分 组;或者,
对所述当前点的N类属性信息进行分组,得到所述当前点的M个属性 分组。
在一些实施例中,每一类属性信息对应的第一步骤的指示信息用于指示 该类属性信息在确定邻居点时共用邻居点确定步骤,和/或该类属性信息在计 算属性预设值时共用属性预测值计算步骤。
在一些实施例中,若所述第一步骤包括邻居点确定步骤,则解码单元23, 具体用于针对所述M个属性分组中的每一个属性分组,则从所述点云的已解 码点中,搜索K个第一邻居点作为所述属性分组内的各属性信息的共同邻居 点;根据所述K个第一邻居点各对应的属性信息,确定所述当前点在所述属 性分组内的各属性信息的预测值。
在一些实施例中,解码单元23,具体用于针对所述属性分组内的每个属 性信息,采用相同的预测值计算方式,根据所述K个第一邻居点各对应的属 性信息,计算得到所述当前点在所述属性分组内的各属性信息的预测值;或 者,
针对所述属性分组内的每个属性信息,采用不完全相同的预测值计算方 式,根据所述K个第一邻居点各对应的属性信息,计算得到所述当前点在所 述属性分组内的各属性信息的预测值。
在一些实施例中,解码单元23,具体用于将所述K个第一邻居点的第一 属性信息的加权平均值,确定所述当前点的第一属性信息的预测值,所述第 一属性信息为所述属性分组内的任意一个属性信息。
在一些实施例中,解码单元23,具体用于对于所述属性分组内的第二属 性信息,将所述K个第一邻居点的第二属性信息的加权平均值,确定所述当 前点的第二属性信息的预测值;对于所述属性分组内的第三属性信息,从所 述点云已解码的点中搜索L个第二邻居点,根据所述K个第一邻居点和所述 L个第二邻居点的第三属性信息,确定所述当前点的第三属性信息的预测值; 其中,所述第二邻居点与所述第一邻居点不同,所述第三属性信息为所述属 性分组中除所述第二属性信息之外的至少一个属性信息。
在一些实施例中,解码单元23,具体用于获取所述K个第一邻居点中的 第K个第一邻居点与所述当前点之间的第一距离;在所述点云的已解码点中, 搜索与所述当前点的距离为所述第一距离的L个第二邻居点。
可选的,所述第K个第一邻居点为所述K个第一邻居点中与当前点的距 离最大的一个第一邻居点。
应理解的是,装置实施例与方法实施例可以相互对应,类似的描述可以 参照方法实施例。为避免重复,此处不再赘述。具体地,图8所示的装置20 可以执行点云解码方法实施例,并且装置20中的各个模块的前述和其它操作 和/或功能分别为了实现解码设备对应的方法实施例,为了简洁,在此不再赘 述。
上文中结合附图从功能模块的角度描述了本申请实施例的装置。应理解, 该功能模块可以通过硬件形式实现,也可以通过软件形式的指令实现,还可 以通过硬件和软件模块组合实现。具体地,本申请实施例中的方法实施例的 各步骤可以通过处理器中的硬件的集成逻辑电路和/或软件形式的指令完成, 结合本申请实施例公开的方法的步骤可以直接体现为硬件译码处理器执行完 成,或者用译码处理器中的硬件及软件模块组合执行完成。可选地,软件模 块可以位于随机存储器,闪存、只读存储器、可编程只读存储器、电可擦写可 编程存储器、寄存器等本领域的成熟的存储介质中。该存储介质位于存储器, 处理器读取存储器中的信息,结合其硬件完成上述方法实施例中的步骤。
图9是本申请实施例提供的电子设备的示意性框图,图9的电子设备可 以为上述的点云编码设备或者为点云解码设备,或者同时具有编码设备和解 码设备的功能。
如图9所示,该电子设备900可包括:
存储器910和处理器920,该存储器910用于存储计算机程序911,并将 该程序代码911传输给该处理器920。换言之,该处理器920可以从存储器 910中调用并运行计算机程序911,以实现本申请实施例中的方法。
例如,该处理器920可用于根据该计算机程序911中的指令执行上述方 法200中的步骤。
在本申请的一些实施例中,该处理器920可以包括但不限于:
通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集 成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列 (FieldProgrammable Gate Array,FPGA)或者其他可编程逻辑器件、分立门 或者晶体管逻辑器件、分立硬件组件等等。
在本申请的一些实施例中,该存储器910包括但不限于:
易失性存储器和/或非易失性存储器。其中,非易失性存储器可以是只读 存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM, PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可 编程只读存储器(Electrically EPROM,EEPROM)或闪存。易失性存储器可 以是随机存取存储器(Random Access Memory,RAM),其用作外部高速缓 存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器(Dynamic RAM,DRAM)、 同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同 步动态随机存取存储器(DoubleData Rate SDRAM,DDR SDRAM)、增强型 同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随 机存取存储器(synch link DRAM,SLDRAM)和直接内存总线随机存取存储 器(Direct Rambus RAM,DR RAM)。
在本申请的一些实施例中,该计算机程序911可以被分割成一个或多个 模块,该一个或者多个模块被存储在该存储器910中,并由该处理器920执 行,以完成本申请提供的录制页面的方法。该一个或多个模块可以是能够完 成特定功能的一系列计算机程序指令段,该指令段用于描述该计算机程序911 在该电子设备900中的执行过程。
如图9所示,该电子设备900还可包括:
收发器930,该收发器930可连接至该处理器920或存储器910。
其中,处理器920可以控制该收发器930与其他设备进行通信,具体地, 可以向其他设备发送信息或数据,或接收其他设备发送的信息或数据。收发 器930可以包括发射机和接收机。收发器930还可以进一步包括天线,天线 的数量可以为一个或多个。
应当理解,该电子设备900中的各个组件通过总线系统相连,其中,总 线系统除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。
根据本申请的一个方面,提供了一种计算机存储介质,其上存储有计算 机程序,该计算机程序被计算机执行时使得该计算机能够执行上述方法实施 例的方法。或者说,本申请实施例还提供一种包含指令的计算机程序产品, 该指令被计算机执行时使得计算机执行上述方法实施例的方法。
根据本申请的另一个方面,提供了一种计算机程序产品或计算机程序, 该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算 机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算 机指令,处理器执行该计算机指令,使得该计算机设备执行上述方法实施例 的方法。
换言之,当使用软件实现时,可以全部或部分地以计算机程序产品的形 式实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和 执行该计算机程序指令时,全部或部分地产生按照本申请实施例该的流程或 功能。该计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编 程装置。该计算机指令可以存储在计算机可读存储介质中,或者从一个计算 机可读存储介质向另一个计算机可读存储介质传输,例如,该计算机指令可 以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光 纤、数字用户线(digital subscriber line,DSL))或无线(例如红外、无线、微 波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。该计算 机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多 个可用介质集成的服务器、数据中心等数据存储设备。该可用介质可以是磁 性介质(例如,软盘、硬盘、磁带)、光介质(例如数字视频光盘(digital video disc,DVD))、或者半导体介质(例如固态硬盘(solid statedisk,SSD))等。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各 示例的模块及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结 合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特 定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方 法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和 方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示 意性的,例如,该模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有 另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统, 或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合 或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信 连接,可以是电性,机械或其它的形式。
作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模 块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者 也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全 部模块来实现本实施例方案的目的。例如,在本申请各个实施例中的各功能 模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以 两个或两个以上模块集成在一个模块中。
以上内容,仅为本申请的具体实施方式,但本申请的保护范围并不局限 于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易 想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护 范围应以该权利要求的保护范围为准。

Claims (24)

1.一种点云编码方法,其特征在于,包括:
获取点云中待编码的当前点,所述当前点包括N类属性信息,所述N为大于1的正整数;
对所述当前点的N类属性信息进行分组,得到所述当前点的M个属性分组,所述M为小于N的正整数;
对所述当前点的同一个属性分组内的各属性信息,共用属性编码中的第一步骤进行统一编码,所述第一步骤包括邻居点确定步骤和属性预测值计算步骤中的至少一个。
2.根据权利要求1所述的方法,其特征在于,若所述第一步骤包括邻居点确定步骤,则所述对所述当前点的同一个属性分组内的各属性信息,共用属性编码中的第一步骤进行统一编码,包括:
针对所述M个属性分组中的每一个属性分组,则从所述点云的已编码点中,搜索K个第一邻居点作为所述属性分组内的各属性信息的共同邻居点;
根据所述K个第一邻居点的各对应属性信息,确定所述当前点在所述属性分组内的各属性信息的预测值。
3.根据权利要求2所述的方法,其特征在于,所述根据所述K个第一邻居点的各对应属性信息,确定所述当前点在所述属性分组内的各属性信息的预测值,包括:
针对所述属性分组内的每个属性信息,采用相同的预测值计算方式,根据所述K个第一邻居点的各对应属性信息,计算得到所述当前点在所述属性分组内的各属性信息的预测值;或者,
针对所述属性分组内的每个属性信息,采用不完全相同的预测值计算方式,根据所述K个第一邻居点的各对应属性信息,计算得到所述当前点在所述属性分组内的各属性信息的预测值。
4.根据权利要求3所述的方法,其特征在于,所述针对所述属性分组内的每个属性信息,采用相同的预测值计算方式,根据所述K个第一邻居点的各对应属性信息,计算得到所述当前点在所述属性分组内的各属性信息的预测值,包括:
将所述K个第一邻居点的第一属性信息的加权平均值,确定所述当前点的第一属性信息的预测值,所述第一属性信息为所述属性分组内的任意一个属性信息。
5.根据权利要求3所述的方法,其特征在于,所述针对所述属性分组内的每个属性信息,采用不完全相同的预测值计算方式,根据所述K个第一邻居点的各对应属性信息,计算得到所述当前点在所述属性分组内的各属性信息的预测值,包括:
对于所述属性分组内的第二属性信息,将所述K个第一邻居点的第二属性信息的加权平均值,确定所述当前点的第二属性信息的预测值;
对于所述属性分组内的第三属性信息,从所述点云已编码的点中搜索L个第二邻居点,根据所述K个第一邻居点和所述L个第二邻居点的第三属性信息,确定所述当前点的第三属性信息的预测值;
其中,所述第二邻居点与所述第一邻居点不同,所述第三属性信息为所述属性分组中除所述第二属性信息之外的至少一个属性信息。
6.根据权利要求5所述的方法,其特征在于,所述从所述点云的已编码点中搜索L个第二邻居点,包括:
获取所述K个第一邻居点中的第K个第一邻居点与所述当前点之间的第一距离;
在所述点云的已编码点中,搜索与所述当前点的距离为所述第一距离的L个第二邻居点。
7.根据权利要求6所述的方法,其特征在于,所述第K个第一邻居点为所述K个第一邻居点中与所述当前点的距离最大的一个第一邻居点。
8.根据权利要求1-7任一项所述的方法,其特征在于,点云码流中包括所述N类属性信息中每一类属性信息在编码时共用的第一步骤的指示信息。
9.根据权利要求8所述的方法,其特征在于,每一类属性信息对应的第一步骤的指示信息用于指示该类属性信息在确定邻居点时共用邻居点确定步骤,和/或该类属性信息在计算属性预设值时共用属性预测值计算步骤。
10.一种点云解码方法,其特征在于,包括:
对点云码流进行解码,得到待解码的当前点,所述当前点包括N类属性信息,所述N为大于1的正整数;
确定所述当前点的N类属性信息的M个属性分组,所述M为小于N的正整数;
对所述当前点的同一个属性分组内的各属性信息,共用属性解码中的第一步骤进行统一解码,所述第一步骤包括邻居点确定步骤和属性预测值计算步骤中的至少一个。
11.根据权利要求10所述的方法,其特征在于,所述确定所述当前点的N类属性信息的M个属性分组,包括:
解码所述点云码流,得到所述N类属性信息中每一类属性信息在编码时共用的第一步骤的指示信息,并根据每一类属性信息在编码时共用的第一步骤的指示信息,将所述当前点的N类属性信息中共用第一步骤的属性信息划分在同一个属性分组中,得到所述当前点的M个属性分组;或者,
对所述当前点的N类属性信息进行分组,得到所述当前点的M个属性分组。
12.根据权利要求11所述的方法,其特征在于,每一类属性信息对应的第一步骤的指示信息用于指示该类属性信息在确定邻居点时共用邻居点确定步骤,和/或该类属性信息在计算属性预设值时共用属性预测值计算步骤。
13.根据权利要求10-12任一项所述的方法,其特征在于,若所述第一步骤包括邻居点确定步骤,则所述对所述当前点的同一个属性分组内的各属性信息,共用属性解码中的第一步骤进行统一解码,包括:
针对所述M个属性分组中的每一个属性分组,则从所述点云的已解码点中,搜索K个第一邻居点作为所述属性分组内的各属性信息的共同邻居点;
根据所述K个第一邻居点的各对应属性信息,确定所述当前点在所述属性分组内的各属性信息的预测值。
14.根据权利要求13所述的方法,其特征在于,所述根据所述K个第一邻居点的各对应属性信息,确定所述当前点在所述属性分组内的各属性信息的预测值,包括:
针对所述属性分组内的每个属性信息,采用相同的预测值计算方式,根据所述K个第一邻居点的各对应属性信息,计算得到所述当前点在所述属性分组内的各属性信息的预测值;或者,
针对所述属性分组内的每个属性信息,采用不完全相同的预测值计算方式,根据所述K个第一邻居点的各对应属性信息,计算得到所述当前点在所述属性分组内的各属性信息的预测值。
15.根据权利要求14所述的方法,其特征在于,所述针对所述属性分组内的每个属性信息,采用相同的预测值计算方式,根据所述K个第一邻居点的各对应属性信息,计算得到所述当前点在所述属性分组内的各属性信息的预测值,包括:
将所述K个第一邻居点的第一属性信息的加权平均值,确定所述当前点的第一属性信息的预测值,所述第一属性信息为所述属性分组内的任意一个属性信息。
16.根据权利要求14所述的方法,其特征在于,所述针对所述属性分组内的每个属性信息,采用不完全相同的预测值计算方式,根据所述K个第一邻居点的各对应属性信息,计算得到所述当前点在所述属性分组内的各属性信息的预测值,包括:
对于所述属性分组内的第二属性信息,将所述K个第一邻居点的第二属性信息的加权平均值,确定所述当前点的第二属性信息的预测值;
对于所述属性分组内的第三属性信息,从所述点云已解码的点中搜索L个第二邻居点,根据所述K个第一邻居点和所述L个第二邻居点的第三属性信息,确定所述当前点的第三属性信息的预测值;
其中,所述第二邻居点与所述第一邻居点不同,所述第三属性信息为所述属性分组中除所述第二属性信息之外的至少一个属性信息。
17.根据权利要求16所述的方法,其特征在于,所述从所述点云的已解码点中搜索L个第二邻居点,包括:
获取所述K个第一邻居点中的第K个第一邻居点与所述当前点之间的第一距离;
在所述点云的已解码点中,搜索与所述当前点的距离为所述第一距离的L个第二邻居点。
18.根据权利要求17所述的方法,其特征在于,所述第K个第一邻居点为所述K个第一邻居点中与所述当前点的距离最大的一个第一邻居点。
19.一种点云编码装置,其特征在于,包括:
获取单元,用于获取点云中待编码的当前点,所述当前点包括N类属性信息,所述N为大于1的正整数;
分组单元,用于对所述当前点的N类属性信息进行分组,得到所述当前点的M个属性分组,所述M为小于N的正整数;
编码单元,用于对所述当前点的同一个属性分组内的各属性信息,共用属性编码中的第一步骤进行统一编码,所述第一步骤包括邻居点确定步骤和属性预测值计算步骤中的至少一个。
20.一种点云解码装置,其特征在于,包括:
获取单元,用于对点云码流进行解码,得到待解码的当前点,所述当前点包括N类属性信息,所述N为大于1的正整数;
确定单元,用于确定所述当前点的N类属性信息的M个属性分组,所述M为小于N的正整数;
解码单元,用于对所述当前点的同一个属性分组内的各属性信息,共用属性解码中的第一步骤进行统一解码,所述第一步骤包括邻居点确定步骤和属性预测值计算步骤中的至少一个。
21.一种编码设备,其特征在于,包括:
处理器和存储器,所述存储器用于存储计算机程序,所述处理器用于调用并运行所述存储器中存储的计算机程序,以执行权利要求1至9任一项所述的方法。
22.一种解码设备,其特征在于,包括:
处理器和存储器,所述存储器用于存储计算机程序,所述处理器用于调用并运行所述存储器中存储的计算机程序,以执行权利要求10至18任一项所述的方法。
23.一种电子设备,其特征在于,包括:
处理器和存储器,所述存储器用于存储计算机程序,所述处理器用于调用并运行所述存储器中存储的计算机程序,以执行权利要求1至9或10至18中任一项所述的方法。
24.一种计算机可读存储介质,其特征在于,用于存储计算机程序,所述计算机程序使得计算机执行如权利要求1至9或10至18中任一项所述的方法。
CN202110982493.3A 2021-08-25 2021-08-25 点云编解码方法、装置、设备及存储介质 Pending CN115914651A (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN202110982493.3A CN115914651A (zh) 2021-08-25 2021-08-25 点云编解码方法、装置、设备及存储介质
EP22860188.6A EP4395321A1 (en) 2021-08-25 2022-08-01 Point cloud encoding/decoding method, apparatus and device, and storage medium
PCT/CN2022/109523 WO2023024842A1 (zh) 2021-08-25 2022-08-01 点云编解码方法、装置、设备及存储介质
US18/369,012 US20240037799A1 (en) 2021-08-25 2023-09-15 Point cloud coding/decoding method and apparatus, device and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110982493.3A CN115914651A (zh) 2021-08-25 2021-08-25 点云编解码方法、装置、设备及存储介质

Publications (1)

Publication Number Publication Date
CN115914651A true CN115914651A (zh) 2023-04-04

Family

ID=85322459

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110982493.3A Pending CN115914651A (zh) 2021-08-25 2021-08-25 点云编解码方法、装置、设备及存储介质

Country Status (4)

Country Link
US (1) US20240037799A1 (zh)
EP (1) EP4395321A1 (zh)
CN (1) CN115914651A (zh)
WO (1) WO2023024842A1 (zh)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10909727B2 (en) * 2018-04-10 2021-02-02 Apple Inc. Hierarchical point cloud compression with smoothing
CN111435991B (zh) * 2019-01-11 2021-09-28 上海交通大学 基于分组的点云码流封装方法和系统
CN111145090B (zh) * 2019-11-29 2023-04-25 鹏城实验室 一种点云属性编码方法、解码方法、编码设备及解码设备
CN111405281A (zh) * 2020-03-30 2020-07-10 北京大学深圳研究生院 一种点云属性信息的编码方法、解码方法、存储介质及终端设备
CN112565734B (zh) * 2020-12-03 2022-04-19 西安电子科技大学 基于混合编码的点云属性编解码方法及装置

Also Published As

Publication number Publication date
WO2023024842A1 (zh) 2023-03-02
US20240037799A1 (en) 2024-02-01
EP4395321A1 (en) 2024-07-03

Similar Documents

Publication Publication Date Title
US11601488B2 (en) Device and method for transmitting point cloud data, device and method for processing point cloud data
EP4258671A1 (en) Point cloud attribute predicting method, encoder, decoder, and storage medium
CN115086658B (zh) 点云数据的处理方法、装置、存储介质及编解码设备
JP2024505798A (ja) 点群符号化・復号化方法及びシステム、点群符号器並びに点群復号器
CN116325732A (zh) 点云的解码、编码方法、解码器、编码器和编解码系统
WO2023024842A1 (zh) 点云编解码方法、装置、设备及存储介质
CN115474041B (zh) 点云属性的预测方法、装置及相关设备
CN115086716B (zh) 点云中邻居点的选择方法、装置及编解码器
US20240087174A1 (en) Coding and decoding point cloud attribute information
WO2024065269A1 (zh) 点云编解码方法、装置、设备及存储介质
US20230412837A1 (en) Point cloud data transmission method, point cloud data transmission device, point cloud data reception method, and point cloud data reception device
WO2023024840A1 (zh) 点云编解码方法、编码器、解码器及存储介质
WO2024103513A1 (zh) 点云编解码方法、编码器、解码器、码流及存储介质
WO2024011381A1 (zh) 点云编解码方法、装置、设备及存储介质
CN115733990A (zh) 点云编解码方法、设备及存储介质
US20240020885A1 (en) Point cloud data transmission method, point cloud data transmission device, point cloud data reception method, and point cloud data reception device
WO2024145933A1 (zh) 点云编解码方法、装置、设备及存储介质
CN117354496A (zh) 点云编解码方法、装置、设备及存储介质
JP2024500701A (ja) 点群符号化方法、点群復号化方法、点群符号化と復号化システム、点群エンコーダ及び点群デコーダ
CN117321991A (zh) 点云属性的预测方法、装置及编解码器
CN117615136A (zh) 点云解码方法、点云编码方法、解码器、电子设备以及介质
CN117426093A (zh) 点云编解码方法、装置、点云编解码器及存储介质
CN118055254A (zh) 点云属性编解码方法、装置、设备
CN116866615A (zh) 点云编码方法及设备
CN115720273A (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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40084295

Country of ref document: HK