CN113812164A - 用于处理点云的方法和装置 - Google Patents
用于处理点云的方法和装置 Download PDFInfo
- Publication number
- CN113812164A CN113812164A CN202080001561.7A CN202080001561A CN113812164A CN 113812164 A CN113812164 A CN 113812164A CN 202080001561 A CN202080001561 A CN 202080001561A CN 113812164 A CN113812164 A CN 113812164A
- Authority
- CN
- China
- Prior art keywords
- node
- plane
- point cloud
- current
- parent node
- 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
- 238000000034 method Methods 0.000 title claims abstract description 72
- 238000012545 processing Methods 0.000 title description 3
- 230000005055 memory storage Effects 0.000 claims description 14
- 238000003860 storage Methods 0.000 claims description 2
- 230000001419 dependent effect Effects 0.000 claims 1
- 230000008569 process Effects 0.000 description 12
- 238000007906 compression Methods 0.000 description 11
- 230000006835 compression Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 9
- 238000011156 evaluation Methods 0.000 description 6
- 238000004883 computer application Methods 0.000 description 4
- 238000004590 computer program Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000013507 mapping Methods 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000013144 data compression Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000004321 preservation Methods 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000002592 echocardiography Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000002310 reflectometry Methods 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/001—Model-based coding, e.g. wire frame
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/40—Tree coding, e.g. quadtree, octree
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/40—Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
- H03M7/4031—Fixed length to variable length coding
- H03M7/4037—Prefix coding
- H03M7/4043—Adaptive prefix coding
-
- 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/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
- H04N19/96—Tree coding, e.g. quad-tree coding
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/70—Type of the data to be coded, other than image and sound
-
- 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/13—Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本申请公开了用于对点云进行编码和解码的方法以及编码器和解码器。用于对点云进行编码以生成压缩点云数据的比特流的方法,其中,所述点云的几何结构是通过具有多个节点的基于八叉树的结构表示的,所述多个节点通过递归地将包含所述点云的体积空间拆分成子体积而具有父子关系,每个所述子体积与基于八叉树的结构的节点相关联,包括:基于子节点的占用确定所述子节点的父节点的占用模式;确定至少一个所述子节点的平面上下文信息,其中,当前子节点的平面上下文信息是根据当前父节点的占用模式和紧邻所述当前父节点的至少一个相邻父节点的占用模式确定的;以及基于所确定的平面上下文信息对所述父节点的占用模式进行熵编码/解码,以产生所述比特流的编码/解码数据。
Description
技术领域
本申请总体涉及点云压缩。优选地,本申请涉及用于改进点云的熵编码的编码和解码方法以及编码器和解码器。
背景技术
作为3D网格的替代,3D点云最近已成为3D媒体信息的普遍表示形式。与点云数据相关联的用例非常多样化,并且包括:
·电影制作中的3D资产(asset),
·用于实时3D沉浸式临场感或虚拟现实(VR)应用的3D资产,
·3D自由视点视频(例如,用于观看体育运动),
·地理信息系统(制图),
·文化遗产(以数字形式存储易损资产),
·自动驾驶(大型3D环境映射)...
点云是3D空间中的点集,每个点都具有关联的属性,例如颜色、材质特性等。点云可用于以这些点的组合重建对象或场景。它们可以使用各种设置下的多个摄像机和深度传感器来捕获,并且可以由数千个甚至多达数十亿个点组成,以便真实地表示重建的场景。
对于点云的每个点,需要存储其位置(通常将X、Y、Z信息编码为具有32位或64位的浮点)和其属性(通常至少24位编码的RGB颜色)。有时点云中具有数十亿个点,人们可以容易地理解点云的原始数据可以是数千兆字节的数据:因此,迫切需要压缩技术以减少表示点云所需的数据量。
针对点云压缩,开发了两种不同的方法:
第一,在基于视频的点云压缩(VPCC)方法中,通过在3个不同的轴X、Y、Z和不同深度上执行点云的多次投影,使得所有的点都出现在一个投影图像中,来压缩点云。然后,将投影图像处理成片(以消除冗余),并重新排列成最终的图片,其中附加元数据被用来将像素位置转换为空间中的点位置。然后,使用传统的图像/视频MPEG编码器执行压缩。这种方法的优势在于,其重使用现有的编码器并且自然地支持动态点云(使用视频编码器),但是这种方法几乎不适用于稀疏点云,并且预期使用点云专用方法可以提高压缩增益。
第二,在基于几何结构的点云压缩(GPCC)方法中,点位置(通常称为几何结构)和点属性(颜色、透明度...)被分别编码。为了对几何结构进行编码,使用了八叉树结构。整个点云被装入一个立方体,该立方体被不断地分为八个子立方体,直到每个子立方体只包含单个点。因此,点的位置被每个节点处的占用信息树所取代。由于每个立方体只有8个子立方体,所以3位就足以对占用进行编码,因此对于深度D的树,需要3D位来编码一个点的位置。虽然仅仅这种变换不足以提供显著的压缩增益,但应注意的是,由于是树结构,因此很多点共享相同的节点值,而且由于使用了熵编码器,因可以显著减少信息量。
因此,本发明的目的是提供一种编码和解码方法以及一种编码器和解码器,以支持点云的快速且准确的数据压缩。
发明内容
在本发明的一方面,提供一种用于对点云进行编码的方法以生成压缩点云数据的比特流,其中所述点云的几何结构是通过具有多个节点的基于八叉树的结构表示的,所述多个节点通过递归地将包含所述点云的体空间(volumetric space)拆分成子体积而具有父子关系,每个所述子体积与基于八叉树的结构的节点相关联,所述方法包括以下步骤:
基于子节点的占用来确定所述子节点的父节点的占用模式;
确定至少一个所述子节点的平面上下文信息,其中,当前子节点的平面上下文信息是根据当前父节点的占用模式和紧邻所述当前父节点的至少一个相邻父节点的占用模式确定的;以及
基于所确定的平面上下文信息对所述父节点的占用模式进行熵编码,以产生用于所述比特流的编码数据。
其中,当前父节点和相邻父节点处于树的相同深度D。当前父节点和相邻父节点由于其位置而共用一个公共表面。对于当前子节点,作为当前父节点在树的深度D+1处的直接子节点,平面上下文信息是取决于当前父节点和至少一个相邻父节点的占用模式来确定的。其中,平面上下文信息包括与由穿过当前子节点的点云表示的可能平面或表面相关的信息。因此,与当前父节点的至少一个紧邻节点的占用相关的信息被视为用于熵编码的上下文信息。结果,可以做出与当前子节点的占用相关的更可靠预测,这可以被熵编码器用于更多地减少数据。以这种方式,整个树被遍历以确定每个节点的占用模式,并为熵编码器提供足够的上下文信息。
优选地,相邻父节点是紧邻当前子节点的节点,其与当前子节点共用一个表面。
优选地,相邻父节点是沿着几何轴之一布置的。如果沿几何轴之一(X、Y、Z)评估平面上下文信息,则相邻父节点沿着该特定轴位于当前父节点紧前面或紧后面。
优选地,平面上下文信息是沿着所有三个几何轴确定的。因此,由点云的点表示的平面或表面是沿着每个轴评估的。
优选地,当前父节点按解码的顺序相对于相邻父节点布置。在解码期间,相继评估基于八叉树的结构的节点。因此,与按解码的顺序在当前父节点之前的占用模式相关的信息已经可以访问,并因此可以用于确定用于解码的平面上下文信息。特别地,解码的顺序与编码的顺序完全相反。但是,在编码期间,点云中每个点的确切位置是已知的。
优选地,当前子节点的占用模式包括平面信息,其中,优选地,平面信息包括isPlanar信息。其中,isPlanar信息可以包括isPlanar标志,isPlanar标志指示当前子节点可能属于由点云的点定义的表面或平面。其中,isPlanar标志是二进制的,并且表示存在穿过当前子节点的平面或表面。此外,平面信息包括planePosition信息。其中,planePosition信息可以包括planePosition标志,planePosition标志指示平面在当前子节点内的位置,特别地,具有“高”和“低”的值,因此也是二进制的。此外,用于对平面信息进行熵编码/解码的平面上下文信息包括指示当前子节点属于由点云的点定义的表面的可能性以及该平面在当前子节点内的可能位置的上下文信息。
优选地,平面上下文信息是根据紧邻当前父节点的相邻父节点的第一组四个子节点的经占用状态和当前父节点的与该第一组正相对的第二组四个子节点的经占用状态确定的,其中,如果第一组或第二组的子节点中的至少一个各自不为空,则占用状态被填充。换句话说,相邻父节点的第一组四个子节点紧邻当前父节点和相邻父节点的公共表面,并且第二组在当前父节点内紧邻当前父节点的相对侧布置。每个组优选地由四个子节点限定一个平面,其中,每个平面垂直于所考虑的几何轴并且紧邻待评估的当前子节点。因此,可以获取足够的信息以提供与待编码的isPlanar和planePosition相关的可靠预测。
优选地,如果第一组被占用并且第二组未被占用,则利用包括当前子节点中的“低”平面的概率的平面上下文信息对平面信息进行熵编码。当前子节点确实可能定义了由点云表示的表面。
优选地,如果第一组未被占用并且第二组被占用,则利用包括当前子节点中的“高”平面的概率的平面上下文信息对平面信息进行熵编码。当前子节点确实可能定义了由点云表示的表面。
优选地,如果第一组被占用并且第二组被占用,则利用包括当前子节点中没有平面的概率的平面上下文信息对平面信息进行熵编码。当前子节点确实不太可能定义了由点云表示的表面。
优选地,如果第一组未被占用并且第二组未被占用,则利用包括当前子节点中没有平面的概率的平面上下文信息对平面信息进行熵编码。当前子节点确实不太可能定义了由点云表示的表面。
在本发明的一个方面,提供了一种用于对压缩点云数据的比特流进行解码以生成重构点云的方法,其中所述点云的几何结构是通过具有多个节点的基于八叉树的结构表示的,所述多个节点通过递归地将包含所述点云的体积空间拆分成子体积而具有父子关系,每个所述子体积与基于八叉树的结构的节点相关联,所述方法包括以下步骤:
基于当前子节点的平面上下文信息对所述比特流进行熵解码,其中,所述当前子节点的平面上下文信息是根据当前父节点的占用模式和紧邻所述当前父节点的至少一个相邻父节点的占用模式确定的。
其中,当前父节点和相邻父节点处于树的相同深度D。当前父节点和相邻父节点由于其位置而共用一个公共表面。对于当前子节点,作为当前父节点在树的深度D+1处的直接子节点,平面上下文信息是取决于当前父节点和至少一个相邻父节点的占用模式来确定的。其中,平面上下文信息包括与由穿过当前子节点的点云表示的可能平面或表面相关的信息。因此,与当前父节点的至少一个紧邻节点的占用相关的信息被视为用于熵解码的上下文信息。结果,可以做出关于当前子节点的占用的更可靠预测,这可以被熵解码器使用。以这种方式,整个树被遍历以确定每个节点的占用模式,并确定完整的树结构以确定点云中的点的位置。
优选地,根据上述关于编码方法的特征进一步构建解码方法。这些特征可以与解码方法自由组合。
在本发明的一方面,提供了一种编码器,用于对点云进行编码以生成压缩点云数据的比特流,其中,所述点云的几何结构是通过具有多个节点的基于八叉树的结构表示的,所述多个节点通过递归地将包含所述点云的体积空间拆分成子体积而具有父子关系,每个所述子体积与基于八叉树的结构的节点相关联,所述编码器包括:
处理器,以及
存储器存储设备,其中,所述存储器存储设备中存储有能够由所述处理器执行的指令,当所述指令被执行时,促使所述处理器执行根据上述用于编码和解码的方法。
在本发明的一方面,提供了一种解码器,用于对压缩点云数据的比特流进行解码以生成重构点云,其中,所述点云的几何结构是通过具有多个节点的基于八叉树的结构表示的,所述多个节点通过递归地将包含所述点云的体积空间拆分成子体积而具有父子关系,每个所述子体积与基于八叉树的结构的节点相关联,所述编码器包括:
处理器,以及
存储器存储设备,所述存储器存储设备中存储有能够由所述处理器执行的指令,当所述指令被执行时,促使所述处理器执行上述解码的方法。
在本发明的一方面,提供了一种非暂时性计算机可读存储介质,该介质存储有处理器执行的指令,当所述指令由处理器执行时,促使所述处理器执行上述编码和/或解码的方法。
附图说明
现在将以举例的方式参考附图,其中附图示出了本申请的示例性实施例,在附图中:
图1是示出点云编码器的整体视图的框图,
图2是示出点云解码器的整体视图的框图,
图3是八叉树数据结构的示意图,
图4是每个节点中的八个子节点的编号,
图5是具有已知占用信息的节点的相邻节点,
图6是用于三个平面方向的相邻节点,
图7是示出本发明的第一和第二实施例的步骤的流程图,
图8是当前编码方法与本发明的比较,
图9是编码器设备的示意图,以及
图10是解码器设备的示意图。
具体实施方式
本申请描述了用于对点云进行编码和解码的方法以及用于对点云进行编码和解码的编码器和解码器。与子体积相关联的当前父节点被拆分为另外的子体积,每个另外的子体积对应于当前父节点的子节点,并且在编码器处,基于子节点的占用状态确定当前父节点的占用模式。根据当前父节点的占用模式和紧邻当前父节点的相邻父节点的占用模式来确定平面上下文信息(planar context information)。熵编码器基于所确定的平面上下文信息来对占用模式进行编码,以产生用于比特流的编码数据。解码器确定相同的平面上下文信息,并对比特流进行熵解码,以重建占用模式。
通过结合附图研读以下对示例的描述,本领域的普通技术人员将理解本申请的其他方面和特征。
有时在下面的描述中,术语“节点”和“子体积”可以互换使用。应理解的是,节点与子体积相关联。节点是树上的特定点,该特定点可以是内部节点或叶节点。子体积是节点表示的有界物理空间。术语“体积”可用来指用于包含点云而定义的最大有界空间。为了建立互连节点的树形结构以对点云数据进行编码,将体积递归地划分为子体积。
点云是三维坐标系中的点的集合。这些点通常旨在表示一个或多个对象的外表面。每个点在三维坐标系中都有一个地点(位置)。该位置可以由三个坐标(X,Y,Z)表示,它们可以是笛卡尔坐标系或任何其他坐标系。这些点可以具有例如颜色的其他关联属性,其在某些情况下也可以是三分量值,例如R、G、B或Y、Cb、Cr。取决于所期望的点云数据的应用,其他关联属性可以包括透明度、反射率、法线矢量等。
点云可以是静态的,也可以是动态的。例如,对物体或地形的详细扫描或映射可以是静态点云数据。用于机器视觉用途的基于LiDAR的环境扫描可以是动态的,因为点云(至少潜在地)随时间(例如,随着每次连续扫描体积)而变化。因此,动态点云是点云的按时间排序的序列。
点云数据可以用于许多应用中,例如,包括保藏(对历史文物的扫描)、地图绘制、机器视觉(例如,自动驾驶或半自动驾驶汽车)和虚拟现实系统等。用于如机器视觉等应用的动态点云数据可以与用于如保藏用途的静态点云数据完全不同。例如,汽车视觉通常涉及相对较低的分辨率、无色彩且高动态性的点云,所述点云是通过具有高捕获频率的LiDAR(或类似)传感器获得的。这种点云的目的不是供人类使用或查看,而是用于决策过程中的机器对象检测/分类。例如,典型LiDAR框架包含数万个点,而高质量的虚拟现实应用则需要数百万个点。可以预期,随着计算速度提高和新应用出现,随着时间的推移,将会需要更高分辨率的数据。
尽管点云数据很有用,但缺乏有效和高效的压缩——即编码和解码处理——可能会妨碍采用和部署。
用于对点云数据进行编码的较为常见机制之一是使用基于树的结构。在基于树的结构中,将点云的有界三维体积递归划分为子体积。树的节点对应于子体积。可以基于树的分辨率和/或子体积中是否包含任何点来确定是否进一步划分子体积。叶节点可以具有占用标志,该占用标志指示其关联子体积是否包含点。拆分标志可以表示节点是否具有子节点(即,当前体积是否已被进一步拆分为子体积)。在一些情况下,可以对这些标志进行熵编码,并且在一些情况下,可以使用预测编码。
常用的树结构是八叉树。在这种结构中,体积/子体积都是立方体,并且每个子体积的拆分都会产生八个另外的子体积/子立方体。这种树结构的例子在图3中示出,其具有可以表示包含完整点云的体积的节点30。该体积被拆分成八个子体积32,每个与图3的八叉树中的一个节点相关联。节点中的点指示包含点云的至少一个点35的被占用的节点34,而空节点36表示不包含点云的点的子体积。如图3所示,被占用的节点可以进一步被拆分成与特定父节点40的子节点38相关联的八个子体积,以确定父节点40的占用模式。如图3所示,示例性父节点40的占用模式可以以二进制形式表示为“00100000”,其指示被占用的第三子节点38。在一些实施方式中,这种占用模式由二进制熵编码器进行编码以生成点云数据的比特流。
现在参考图1,其示出了根据本申请的方面的点云编码器10的简化框图。点云编码器10接收点云数据,并且可以包括用于产生八叉树的树构建模块,八叉树表示包含点云的体积空间的几何结构,并指示来自该几何结构中的点云的点的地点或位置。
用于创建八叉树以对点云进行编码的基本处理可以包括:
1.在坐标系中从包含点云的有界体积(立方体)开始;
2.将体积拆分成8个子体积(八个子立方体);
3.对于每个子体积,如果该子体积为空,则用0标记该子体积;或者,如果该子体积中有至少一个点,则用1标记该子体积;
4.对于所有标记为1的子体积,重复(2)以拆分这些子体积,直到达到最大拆分深度;以及
5.对于所有最大深度的叶子体积(子立方体),如果叶立方体不是空的,则将其标记为1,否则标记为0。
可以以预定顺序(在每个划分出的子体积内,在宽度上优先或在深度上优先,并且根据扫描模式/顺序)遍历树,以产生表示每个节点的占用模式的比特序列。
然后,可以使用熵编码器16对该比特序列进行编码以产生经压缩的比特流14。熵编码器16可以使用上下文模型18对比特序列进行编码,该上下文模型18基于熵编码器16的上下文确定来指定用于对比特进行编码的概率。在对每个比特或定义的比特集进行编码之后,可以自适应地更新上下文模型18。
像视频或图像编码一样,点云编码可以包括预测性操作,在这些操作中,会努力预测子体积的模式,并对预测的残差进行编码,而不是对模式本身进行编码。预测可以是空间的(取决于相同点云中先前编码的子体积)或时间的(取决于按时间排序的点云序列中的先前编码的点云)。
在图2中示出了与编码器10相对应的示例性点云解码器20的框图。点云解码器20包括熵解码器22,熵解码器22使用与编码器10所使用的相同的上下文模型24。熵解码器22接收经压缩的数据的输入比特流26,并且对该数据进行熵解码以产生经解压缩的比特的输出序列。然后,该序列由树重构器转换为经重构的点云数据。树重构器根据经解压缩的数据和将树数据二进制化的扫描顺序的知识来重构树结构28。因此,树重构器能够从点云重构点的位置。
其中,占用模式可以包括与特定节点被占用的概率有关的平面信息,因为该节点中的点属于表面。通常,现实世界由封闭的表面主导。对于室内房间尤其如此,对于城市户外场景也是如此。这个事实被熵编码器和解码器所使用。如果可以检测到由点云表示的表面,则可以对点在此表面上的分布进行预测,从而可以确定属于该表面的特定节点的占用概率。这可以通过定义isPlanar标志来完成,该isPlanar标志将被编码在比特流中。isPlanar标志通常是二进制值,其中特定节点的一组isPlanar标志(isPlanar=1)被解释为该节点属于特定表面的普遍可能性。除了节点中存在表面的事实外,还可以考虑其他平面信息,例如planePosition标志指示平面在当前子节点内的位置。planePosition标志也可以是二进制值,其具有指示对应位置的值“高”和“低”。该平面信息由熵编码器/解码器通过使用平面上下文信息来编码到比特流中,从而减少比特流的数据。
参照图4,示出了将父节点112拆分为其八个子节点110,子节点110是2×2×2的立方体,每个立方体具有相同的大小并且其边长是与父节点112相关联的立方体的边长的一半。此外,图4指示父节点112内的子节点110使用的编号。在进一步的说明中将使用图4所示的编号系统。其中,图4还指示了所示出的父节点112在由几何轴X、Y、Z表示的三维空间中的空间取向。
现在参考图5,其示出了具有两个子节点102的当前父节点100,两个子节点102被示例为被占用的节点,即,两个子节点的子体积各自包含点云的至少一个点。此外,在图5中指示的是相邻父节点104、106、108。其中,在预测处于特定八叉树级别的子节点102的平面上下文信息之前,在与当前父节点100相同的级别D处的三个邻近的相邻父节点104、106、108的占用信息在解码器侧是已知的。由于给定解码顺序,因此在评估当前父节点100的子节点102时,关于相邻父节点104、108、106的信息在解码器侧是已知的,并且能够用于确定平面上下文信息。由于这三个相邻父节点104、106、108邻近当前子节点102,因此在这些相邻父节点104、106、108和当前子节点102的占用之间存在相关性。该信息容易获得,但目前尚未在现有的编码和解码方法中使用。例如,如果沿X轴评估当前子节点102的平面上下文信息,则可以考虑沿X轴紧邻的相邻父节点104。此外,如上所述,考虑紧邻的父节点,该父节点按解码的顺序处于当前父节点之前。因此,在解码期间,先前节点的占用是解码器已知的,并且可用于确定平面上下文信息。如果沿Y轴评估平面上下文信息,则按解码的顺序考虑沿Y轴与当前父节点100相邻的相邻父节点106。该信息对于解码器也是已知的,并且可以容易地用于获取当前子节点102的可靠平面上下文信息。
现在参考图6,图6示出了如何确定平面上下文信息的配置,该平面上下文信息然后可以在熵编码中使用以压缩点云数据。就这一点而言,本发明的目的是考虑到当前子节点120的相邻父节点的占用,并且在对平面信息——即isPlanar标志或planePosition标志——进行编码时,将此类信息并入平面上下文信息中。
图6(a)示出了沿X轴的平面上下文信息的确定。应评估当前子节点120的平面上下文信息。因此,评估了当前父节点122以及与当前父节点122紧邻的相邻父节点123的占用。其中,相邻父节点124沿着待评估的X轴布置。此外,相邻父节点124按解码的顺序布置在当前父节点122之前。因此,在对当前父节点122进行解码时,关于相邻父节点124的所有信息已经可用。另外,由于点云的位置和占用模式对于编码器而言是完全已知的,因此在对当前子节点120的信息进行编码期间,与相邻父节点124相关的所有信息也是已知的。
特别地,为了确定当前子节点120的平面上下文信息,考虑作为相邻父节点124的子节点的第一组126的子节点和作为当前父节点122的子节点的第二组128。其中,相邻父节点124的第一组126的四个子节点紧邻当前父节点并与其相邻。因此,第一组126的子节点各自与当前父节点122共用公共表面。当前父节点122的第二组128的四个子节点与第一组正相对。因此,通过第二组128的四个子节点,形成当前父节点122的侧面,该侧面与作为相邻父节点124和当前父节点122之间的公共面的侧面正相对。换句话说,由第一组126和第二组128定义的平面位于当前子节点120的两侧,并且垂直于所考虑的轴。因此,通过这两个平面,可以提供对平面上下文信息的可靠确定。穿过当前子节点120的点云中的表面也极有可能穿过由第一组126或第二组128定义的平面中的一个,因此当前子节点120的平面上下文信息很大程度取决于第一组126的被占用状态和/或第二组128的被占用状态。其中,如果第一组和/或第二组中的至少一个子节点不为空并且包含点云的点,则将第一组126和第二组128视为“被占用”。
一般而言,如果第一组被占用并且第二组未被占用,则isPlanar标志和planePosition标志被熵编码为平面信息,其中,在当前子节点中“低”平面的可能性作为平面上下文信息。如果第一组未被占用并且第二组被占用,则isPlanar标志和planePosition标志被熵编码为平面信息,其中,在当前子节点中“高”平面的可能性作为平面上下文信息。如果第一组被占用并且第二组被占用,则isPlanar标志和planePosition标志被熵编码为平面信息,其中,在当前子节点中没有平面的可能性作为平面上下文信息。在这种情况下,可以假设一个表面穿过第一组126,第二表面穿过第二组128,从而使得在这两个表面之间不太可能存在其他额外的表面。其中,应注意,这种评估仅沿一个轴进行。例如,在沿着X-Z平面的X轴行进的平面或表面在X轴的评估期间将不被考虑,而在例如沿Y轴评估期间被加以考虑。如果第一组未被占用并且第二组未被占用,则isPlanar标志和planePosition标志被熵编码为平面信息,其中,在当前子节点中没有平面的可能性作为平面上下文信息,这是因为隔离的表面仅在当前子节点120内的可能性很小。
更具体地说,对于沿着X轴的评估以及图4所示的编号系统:
·如果相邻父节点124的第一组126的子节点4至7被占用,而当前父节点122的子节点4至7未被占用,则当前子节点120中很可能存在平面并且平面位置低。因此,对于isPlanar和planePosition信息的编码,在执行熵编码时,将当前子节点中垂直于X轴的“低”平面的概率视为平面上下文信息。
·如果相邻父节点124的第一组126的子节点4至7未被占用(即为空),而当前父节点122的子节点4至7被占用,则当前子节点120中很可能存在平面,并且平面位置高。因此,对于isPlanar和planePosition信息的编码,在执行熵编码时,将当前子节点中垂直于X轴的“高”平面的概率视为平面上下文信息。
·如果相邻父节点124的第一组126的子节点4至7被占用,并且当前父节点122的子节点4至7被占用,则当前节点很可能不适用平面模式。因此,对于isPlanar和planePosition信息的编码,在执行熵编码时,将当前子节点中不存在垂直于X轴的平面的概率视为平面上下文信息。
·如果相邻父节点124的第一组126的子节点4至7未被占用,而当前父节点122的子节点4至7也未被占用,则当前节点很可能不适用平面模式。因此,对于isPlanar和planePosition信息的编码,在执行熵编码时,将当前子节点中不存在垂直于X轴的平面的概率视为平面上下文信息。
为了根据图6(b)沿着Y轴评估,以确定当前子节点120的平面上下文信息,设置如下:
·如果相邻父节点124的第一组126的子节点2、3、6、7被占用,而当前父节点122的子节点2、3、6、7未被占用,则当前子节点120中很可能存在一个平面并且该平面位置低。因此,对于isPlanar和planePosition信息的编码,在执行熵编码时,将当前子节点中垂直于Y轴的“低”平面的概率视为平面上下文信息。
·如果相邻父节点124的第一组126的子节点2、3、6、7未被占用(即为空),而当前父节点122的子节点2、3、6、7被占用,则当前子节点120中很可能存在平面并且平面位置高。因此,对于isPlanar和planePosition信息的编码,在执行熵编码时,将当前子节点中垂直于Y轴的“高”平面的概率视为平面上下文信息。
·如果相邻父节点124的第一组126的子节点2、3、6、7被占用,而当前父节点122的子节点2、3、6、7被占用,则当前节点很可能不适用平面模式。因此,对于isPlanar和planePosition信息的编码,在执行熵编码时,将当前子节点中不存在垂直于Y轴的平面的概率视为平面上下文信息。
·如果相邻父节点124的第一组126的子节点2、3、6、7未被占用,而当前父节点122的子节点2、3、6、7也未被占用,则当前节点很可能不适用平面模式。因此,对于isPlanar和planePosition信息的编码,在执行熵编码时,将当前子节点中不存在垂直于Y轴的平面的概率视为平面上下文信息。
为了根据图6(c)沿着Y轴评估,以确定当前子节点120的平面上下文信息,设置如下:
·如果相邻父节点124的第一组126的子节点1、3、5、7被占用,而当前父节点122的子节点1、3、5、7未被占用,则当前子节点120中很可能存在平面并且平面位置低。因此,对于isPlanar和planePosition信息的编码,在执行熵编码时,将当前子节点中垂直于Y轴的“低”平面的概率视为平面上下文信息。
·如果相邻父节点124的第一组126的子节点1、3、5、7未被占用(即为空),而当前父节点122的子节点1、3、5、7被占用,则当前子节点120中很可能存在平面并且平面位置高。因此,对于isPlanar和planePosition信息的编码,在执行熵编码时,将当前子节点中垂直于Z轴的“高”平面的概率视为平面上下文信息。
·如果相邻父节点124的第一组126的子节点1、3、5、7被占用,而当前父节点122的子节点1、3、5、7被占用,则当前节点很可能不适用平面模式。因此,对于isPlanar和planePosition信息的编码,在执行熵编码时,将当前子节点中不存在垂直于Y轴的平面的概率视为平面上下文信息。
·如果相邻父节点124的第一组126的子节点1、3、5、7未被占用,而当前父节点122的子节点1、3、5、7也未被占用,则当前节点很可能不适用平面模式。因此,对于isPlanar和planePosition信息的编码,在执行熵编码时,将当前子节点中不存在垂直于Y轴的平面的概率视为平面上下文信息。
总而言之,在所有情况下,都建立了可用于熵编码的可靠平面上下文信息模型,以考虑各个节点中表面或平面的出现,并使用此知识来有效地预测节点的占用,用以由熵编码器/解码器进行数据压缩。
除了上述针对图6的考虑之外,可根据其他要求对isPlanar标志进行编码。这些其他要求可以包括例如:当前子节点120的当前父节点122被视为isPlanar;当前父节点的在垂直于所考虑的轴的方向上与当前节点相邻的相邻节点、即在X轴上与当前父节点122相邻的垂直相邻父节点的占用模式不为空;以及在树结构的相同深度D处,在当前被评估的轴的同一坐标上距离最近的已编码节点的距离d被视为isPlanar。为了增加由熵编码器和解码器使用的平面上下文信息的可靠性,还可以添加其他要求。
现在参考图7(a),图7(a)示出了一种用于对点云进行编码的方法,该方法包括以下步骤:基于子节点的占用来确定该子节点的父节点的占用模式(步骤110);确定至少一个子节点的平面上下文信息,其中,当前子节点的平面上下文信息是根据当前父节点的占用模式和紧邻当前父节点的至少一个相邻父节点的占用模式确定的(步骤120);以及基于所确定的平面上下文信息对占用模式进行熵编码,以为生成其树的编码数据(步骤130)。
现在参考图7(b),图7(b)示出了用于对点云进行解码的方法,该方法包括以下步骤:基于当前子节点的平面上下文信息对比特流进行熵解码,其中,当前子节点的平面上下文信息是根据当前父节点的占用模式和紧邻当前父节点的至少一个相邻父节点的占用模式确定的(步骤210)。
因此,根据本发明,使用和评估关于相邻父节点的信息,以获得更可靠地预测当前子节点内表面的出现的平面上下文信息模型。此信息可用来减少经压缩的点云数据的数据量,其中,相同的平面上下文信息模型也用于解码器,以能够高效且准确地对提供的比特流进行可靠的解码。因此,相对于先前的编码方法,可以实现至少1%的显著数据减少。但是,这个值取决于点的密度,其中,特别是对于室内点云,例如LiDAR点云,假定可以将它们视为密集点云。图8示出了模型序列的不同示例,其中,将根据本发明编码的模型序列与MPEG-3DG组的TMC13 v.9编码器(也称为G-PCC)进行比较。如图所示,通过本发明可以实现大约1%的数据减少。在使用和不使用所提出的技术的情况下,重构点云的质量完全相同。
在编码或解码方法的实施例中,相邻父节点是紧邻当前子节点的节点,与当前子节点共用一个表面。
在编码或解码方法的实施例中,相邻父节点沿着几何轴之一布置。
在编码或解码方法的实施例中,沿着所有三个几何轴确定平面上下文信息。
在编码或解码方法的实施例中,当前父节点按解码的顺序相对于相邻父节点布置。
在编码或解码方法的实施例中,当前子节点的占用模式包括平面信息,其中,优选地,平面信息包括isPlanar信息和planePosition信息,并且用于对平面信息进行熵编码/解码的平面上下文信息包括指示当前子节点属于由点云的点定义的表面的可能性以及该平面在当前子节点内的可能位置的上下文信息。
在编码或解码方法的实施例中,平面上下文信息是根据紧邻当前父节点的相邻父节点的第一组四个子节点的占用状态和当前父节点的与该第一组正相对的第二组四个子节点的占用状态确定的,其中,如果第一组或第二组的子节点中的至少一个各自不为空,则占用状态被填充。
在编码或解码方法的实施例中,如果第一组被占用,而第二组未被占用,则利用包括“低”平面的可能性的平面上下文信息对平面信息进行熵编码/解码。
在编码或解码方法的实施例中,如果第一组未被占用,而第二组被占用,则利用包括“高”平面的可能性的平面上下文信息对平面信息进行熵编码/解码。
在编码或解码方法的实施例中,如果第一组被占用并且第二组被占用,则利用包括没有平面的可能性的平面上下文信息来对平面信息进行熵编码/解码。
在编码或解码方法的实施例中,如果第一组未被占用并且第二组未被占用,则利用包括没有平面的可能性的平面上下文信息对平面信息进行熵编码/解码。
在优选实施例中,用于对点云进行编码/解码以生成压缩点云数据的比特流的方法在LIDAR(光检测和测距)设备中实现。LIDAR设备包括光传输模块和传感器模块。其中,光传输模块被配置为用激光扫描环境,并且利用传感器模块的传感器来测量由环境中的物体反射的激光的回波(echo)。此外,LIDAR设备包括评估模块,该评估模块被配置为优选地通过激光返回时间和/或反射的激光的波长的差异来确定点云中的环境的3D表示。因此,回波可以包括对象或环境的多达数百万个位置信息点,从而导致大型点云,这增加了对计算设备进一步处理或评估该点云的需求。在例如自动驾驶的特定应用中,由于安全要求,LIDAR点云的处理必须几乎是实时的。因此,对点云数据进行有效且准确的压缩是必需的。因此,LIDAR设备可以包括编码器,该编码器包括处理器和存储器存储设备。存储器存储设备可以存储包含指令的计算机程序或应用,该指令在被执行时使处理器执行诸如本文所述的操作。例如,指令可以编码和输出根据本文描述的方法编码的比特流。附加地或替代地,LIDAR设备可以包括解码器,该解码器包括处理器和存储器存储设备。存储器存储设备可以包括包含指令的计算机程序或应用,该指令在被执行时促使处理器执行诸如本文所述的操作。因此,通过编码器/解码器,能够对点云数据进行有效且准确的压缩,从而提供了更有效且优选实时地处理所获取的点云数据的可能性。优选地,编码器的处理器和解码器的处理器相同。优选地,编码器的存储器存储设备和解码器的存储器存储设备相同。优选地,编码器和/或解码器的处理器还被配置为进一步处理或评估点云,甚至更优选地实时地处理或评估点云。特别地,对于自动驾驶的示例,点云的评估可以包括确定在驾驶方向上的障碍物。
现在参考图8,其示出了编码器1100的示例实施例的简化框图。编码器1100包括处理器1102和存储器存储设备1104。存储器存储设备1104可以存储包含指令的计算机程序或应用,该指令在被执行时促使处理器1102执行诸如本文所述的操作。例如,指令可以编码和输出根据本文描述的方法编码的比特流。应理解的是,指令可以存储在非暂时性计算机可读介质上,例如压缩盘、闪存设备、随机存取存储器、硬盘驱动器等。当指令被执行时,处理器1102执行指令中指定的操作和功能,以便用作实现上述处理的专用处理器。在一些示例中,这样的处理器可以被称为“处理器电路”或“处理器回路”。
现在还参考图9,其示出了解码器1200的示例实施例的简化框图。解码器1200包括处理器1202和存储器存储设备1204。存储器存储设备1204可以包括包含指令的计算机程序或应用,该指令在被执行时促使处理器1202执行诸如本文所述的操作。应理解的是,指令可以存储在计算机可读介质上,例如压缩盘、闪存设备、随机存取存储器、硬盘驱动器等。当指令被执行时,处理器1202执行指令中指定的操作和功能,以便用作实现上述处理和方法的专用处理器。在一些示例中,这样的处理器可以被称为“处理器电路”或“处理器回路”。
应理解,根据本申请的解码器和/或编码器可以在多个计算设备中实现,包括但不限于服务器、适当编程的通用计算机、机器视觉系统和移动设备。可以通过包含用于配置一个或多个处理器以执行本文所述功能的指令的软件来实现解码器或编码器。可以将软件指令存储在任何合适的非暂时性计算机可读存储器上,包括CD、RAM、ROM、闪存等。
应理解,本文中描述的解码器和/或编码器以及实现所描述的用于配置编码器或解码器的方法/处理的模块、例程、处理、线程或其他软件组件可以使用标准的计算机编程技术和语言来实现。本申请不限于特定的处理器、计算机语言、计算机编程协议、数据结构,其他这样的实现细节。本领域技术人员将认识到,所描述的处理可以被实现为存储在易失性或非易失性存储器中的计算机可执行代码的一部分、作为专用集成芯片(ASIC)的一部分等。
本申请还提供了对通过根据本申请的编码处理的应用而产生的数据进行编码的计算机可读信号。
可以对所描述的实施例进行某些调整和修改。因此,以上讨论的实施例被认为是说明性的而非限制性的。特别地,实施例可以彼此自由地组合。
Claims (12)
1.一种用于对点云进行编码以生成经压缩的点云数据的比特流的方法,其中,所述点云的几何结构是通过具有多个节点的基于八叉树的结构表示的,所述多个节点通过递归地将包含所述点云的体积空间拆分成子体积而具有父子关系,每个所述子体积与所述基于八叉树的结构的节点相关联,所述方法包括以下步骤:
基于父节点的子节点的占用来确定所述父节点的占用模式;
确定至少一个所述子节点的平面上下文信息,其中,当前子节点的平面上下文信息是根据当前父节点的占用模式和紧邻所述当前父节点的至少一个相邻父节点的占用模式确定的;以及
基于所确定的平面上下文信息对所述父节点的占用模式进行熵编码,以产生用于所述比特流的经编码的数据。
2.一种用于对压缩点云数据的比特流进行解码以生成重构点云的方法,其中,所述点云的几何结构是通过具有多个节点的基于八叉树的结构表示的,所述多个节点通过递归地将包含所述点云的体积空间拆分成子体积而具有父子关系,每个所述子体积与所述基于八叉树的结构的节点相关联,所述方法包括以下步骤:
基于当前子节点的平面上下文信息对所述比特流进行熵解码,其中,所述当前子节点的平面上下文信息是根据当前父节点的占用模式和紧邻所述当前父节点的至少一个相邻父节点的占用模式确定的。
3.如权利要求1或2所述的方法,其特征在于,所述相邻父节点是紧邻所述当前子节点的节点,所述相邻父节点与所述当前子节点共用一个表面。
4.如权利要求1至3中任一项所述的方法,其特征在于,所述相邻父节点是沿几何轴之一布置的。
5.如权利要求1至4中任一项所述的方法,其特征在于,所述平面上下文信息是沿着所有三个几何轴确定的。
6.如权利要求1至5中任一项所述的方法,其特征在于,所述当前父节点按解码的顺序相对于所述相邻父节点布置。
7.如权利要求1至6中任一项所述的方法,其特征在于,所述当前子节点的占用模式包括平面信息,其中,优选地,所述平面信息包括isPlanar信息和planePosition信息,并且用于对所述平面信息进行熵编码/解码的平面上下文信息包括指示所述当前子节点属于由所述点云的点定义的表面的可能性以及所述平面在所述当前子节点内的可能位置的上下文信息。
8.如权利要求7所述的方法,其特征在于,所述平面上下文信息是根据所述相邻父节点的紧邻所述当前父节点的第一组四个子节点的占用状态和所述当前父节点的与所述第一组正相对的第二组四个子节点的占用状态确定的,其中,如果所述第一组或所述第二组各自的所述子节点中的至少一个不为空,则占用状态被填充。
9.如权利要求8述的方法,其特征在于,
如果所述第一组被占用并且所述第二组未被占用,则所述平面信息利用包括“低”平面的可能性的平面上下文信息被熵编码/解码;或
如果所述第一组未被占用并且所述第二组被占用,则所述平面信息利用包括“高”平面的可能性的平面上下文信息被熵编码/解码;或
如果所述第一组被占用并且所述第二组被占用,则所述平面信息利用包括没有平面的可能性的平面上下文信息被熵编码/解码;或
如果所述第一组未被占用并且所述第二组未被占用,则所述平面信息利用包括没有平面的可能性的平面上下文信息被熵编码/解码。
10.一种用于对点云进行编码以生成压缩点云数据的比特流的编码器,其中,所述点云的几何结构是通过具有多个节点的基于八叉树的结构表示的,所述多个节点通过递归地将包含所述点云的体积空间拆分成子体积而具有父子关系,每个所述子体积与所述基于八叉树的结构的节点相关联,所述编码器包括:
处理器,以及
存储器存储设备,其中,所述存储器存储设备中存储有能够由所述处理器执行的指令,当所述指令被执行时,促使所述处理器执行权利要求1以及从属于权利要求1的权利要求3至9中任一项所述的方法。
11.一种用于对压缩点云数据的比特流进行解码以生成重构点云的解码器,其中,所述点云的几何结构是通过具有多个节点的基于八叉树的结构表示的,所述多个节点通过递归地将包含所述点云的体积空间拆分成子体积而具有父子关系,每个所述子体积与基于所述八叉树的结构的节点相关联,所述解码器包括:
处理器,以及
存储器存储设备,其中,所述存储器存储设备中存储有能够由所述处理器执行的指令,当所述指令被执行时,促使所述处理器执行权利要求2至9中任一项所述的方法。
12.一种非暂时性计算机可读存储介质,存储有处理器执行的指令,当所述指令由处理器执行时,促使所述处理器执行权利要求1至9中任一项所述的方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2020/084804 WO2021207947A1 (en) | 2020-04-14 | 2020-04-14 | Method and apparatus for processing a point cloud |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113812164A true CN113812164A (zh) | 2021-12-17 |
Family
ID=72560449
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202080001561.7A Pending CN113812164A (zh) | 2020-04-14 | 2020-04-14 | 用于处理点云的方法和装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20230162402A1 (zh) |
EP (1) | EP3896657A1 (zh) |
CN (1) | CN113812164A (zh) |
WO (1) | WO2021207947A1 (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023131126A1 (en) * | 2022-01-04 | 2023-07-13 | Beijing Bytedance Network Technology Co., Ltd. | Method, apparatus, and medium for point cloud coding |
WO2023147742A1 (en) * | 2022-02-01 | 2023-08-10 | Beijing Xiaomi Mobile Software Co., Ltd. | Method and apparatus of encoding/decoding a slice of point cloud data |
WO2023193533A1 (en) * | 2022-04-07 | 2023-10-12 | Beijing Xiaomi Mobile Software Co., Ltd. | Apparatus for coding vertex position for point cloud, and data stream including vertex position |
WO2023193534A1 (en) * | 2022-04-07 | 2023-10-12 | Beijing Xiaomi Mobile Software Co., Ltd. | Methods and apparatus for coding presence flag for point cloud, and data stream including presence flag |
WO2023197337A1 (zh) * | 2022-04-16 | 2023-10-19 | Oppo广东移动通信有限公司 | 索引确定方法、装置、解码器以及编码器 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP4042573A4 (en) * | 2019-10-11 | 2023-06-21 | BlackBerry Limited | METHODS AND DEVICES FOR TREE SWITCHING IN POINT CLOUD COMPRESSION |
US20210407143A1 (en) * | 2020-06-22 | 2021-12-30 | Qualcomm Incorporated | Planar and azimuthal mode in geometric point cloud compression |
EP4195158A1 (en) * | 2021-12-10 | 2023-06-14 | Beijing Xiaomi Mobile Software Co., Ltd. | Method and apparatus of encoding/encoding a series of data |
WO2023133710A1 (zh) * | 2022-01-11 | 2023-07-20 | Oppo广东移动通信有限公司 | 编码方法、解码方法、编码器、解码器和编解码系统 |
EP4242969A1 (en) * | 2022-03-10 | 2023-09-13 | Beijing Xiaomi Mobile Software Co., Ltd. | Encoding/decoding occupancy information of a current node of a tree representing point cloud geometry data |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3514966A1 (en) * | 2018-01-18 | 2019-07-24 | BlackBerry Limited | Methods and devices for binary entropy coding of points clouds |
WO2019140508A1 (en) * | 2018-01-18 | 2019-07-25 | Blackberry Limited | Methods and devices using direct coding in point cloud compression |
CN110097581A (zh) * | 2019-04-28 | 2019-08-06 | 西安交通大学 | 基于点云配准icp算法构建k-d树的方法 |
EP3595180A1 (en) * | 2018-07-10 | 2020-01-15 | BlackBerry Limited | Methods and devices for neighbourhood-based occupancy prediction in point cloud compression |
CN110892726A (zh) * | 2017-07-13 | 2020-03-17 | 交互数字Vc控股公司 | 用于编码/解码表示3d对象的点云的几何形状的方法和装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107798721B (zh) * | 2016-08-31 | 2021-03-16 | 北京四维图新科技股份有限公司 | 一种点云数据的处理方法及装置和点云渲染方法及装置 |
EP3553745B1 (en) * | 2018-04-09 | 2021-09-01 | BlackBerry Limited | Methods and devices for binary entropy coding of point clouds |
EP3803798B1 (en) * | 2018-06-25 | 2024-01-24 | Huawei Technologies Co., Ltd. | Hybrid geometric coding of point clouds |
-
2020
- 2020-04-14 US US17/919,136 patent/US20230162402A1/en active Pending
- 2020-04-14 CN CN202080001561.7A patent/CN113812164A/zh active Pending
- 2020-04-14 WO PCT/CN2020/084804 patent/WO2021207947A1/en active Application Filing
- 2020-09-17 EP EP20196651.2A patent/EP3896657A1/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110892726A (zh) * | 2017-07-13 | 2020-03-17 | 交互数字Vc控股公司 | 用于编码/解码表示3d对象的点云的几何形状的方法和装置 |
EP3514966A1 (en) * | 2018-01-18 | 2019-07-24 | BlackBerry Limited | Methods and devices for binary entropy coding of points clouds |
WO2019140508A1 (en) * | 2018-01-18 | 2019-07-25 | Blackberry Limited | Methods and devices using direct coding in point cloud compression |
EP3595180A1 (en) * | 2018-07-10 | 2020-01-15 | BlackBerry Limited | Methods and devices for neighbourhood-based occupancy prediction in point cloud compression |
CN110097581A (zh) * | 2019-04-28 | 2019-08-06 | 西安交通大学 | 基于点云配准icp算法构建k-d树的方法 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023131126A1 (en) * | 2022-01-04 | 2023-07-13 | Beijing Bytedance Network Technology Co., Ltd. | Method, apparatus, and medium for point cloud coding |
WO2023147742A1 (en) * | 2022-02-01 | 2023-08-10 | Beijing Xiaomi Mobile Software Co., Ltd. | Method and apparatus of encoding/decoding a slice of point cloud data |
WO2023193533A1 (en) * | 2022-04-07 | 2023-10-12 | Beijing Xiaomi Mobile Software Co., Ltd. | Apparatus for coding vertex position for point cloud, and data stream including vertex position |
WO2023193534A1 (en) * | 2022-04-07 | 2023-10-12 | Beijing Xiaomi Mobile Software Co., Ltd. | Methods and apparatus for coding presence flag for point cloud, and data stream including presence flag |
WO2023197337A1 (zh) * | 2022-04-16 | 2023-10-19 | Oppo广东移动通信有限公司 | 索引确定方法、装置、解码器以及编码器 |
Also Published As
Publication number | Publication date |
---|---|
EP3896657A1 (en) | 2021-10-20 |
WO2021207947A1 (en) | 2021-10-21 |
US20230162402A1 (en) | 2023-05-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112438049B (zh) | 编码和解码方法、编码器、解码器以及存储介质 | |
EP3896657A1 (en) | Method and apparatus for processing a point cloud | |
EP3991437B1 (en) | Context determination for planar mode in octree-based point cloud coding | |
EP3991438B1 (en) | Planar mode in octree-based point cloud coding | |
KR20200108875A (ko) | 포인트 클라우드 압축에서 직접 코딩을 사용하는 방법 및 디바이스 | |
CN112385236B (zh) | 点云的编码和解码方法、编码器和解码器、以及存储介质 | |
US20230048381A1 (en) | Context determination for planar mode in octree-based point cloud coding | |
WO2022073156A1 (en) | Method of encoding and decoding, encoder, decoder and software | |
CN117581537A (zh) | 用于对点云进行编码和解码的方法 | |
WO2023056677A1 (en) | Method of encoding and decoding, encoder, decoder and software for encoding and decoding a point cloud | |
RU2812090C1 (ru) | Способ кодирования и декодирования, кодер и декодер | |
CN118119975A (zh) | 编码和解码方法、编码器、解码器及软件,以对点云编码和解码 | |
RU2800579C1 (ru) | Способ кодирования и декодирования облака точек |
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 |