CN117121483A - 对由自旋传感器头捕获的点云几何数据进行编码/解码的方法和装置 - Google Patents
对由自旋传感器头捕获的点云几何数据进行编码/解码的方法和装置 Download PDFInfo
- Publication number
- CN117121483A CN117121483A CN202180096609.1A CN202180096609A CN117121483A CN 117121483 A CN117121483 A CN 117121483A CN 202180096609 A CN202180096609 A CN 202180096609A CN 117121483 A CN117121483 A CN 117121483A
- Authority
- CN
- China
- Prior art keywords
- res
- radius
- point
- point cloud
- sign
- 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 118
- 238000003860 storage Methods 0.000 claims description 26
- 238000004590 computer program Methods 0.000 claims description 4
- 230000015654 memory Effects 0.000 description 32
- 230000008569 process Effects 0.000 description 26
- 238000004891 communication Methods 0.000 description 24
- 230000006835 compression Effects 0.000 description 22
- 238000007906 compression Methods 0.000 description 22
- 238000012545 processing Methods 0.000 description 19
- 230000006870 function Effects 0.000 description 15
- 238000010586 diagram Methods 0.000 description 13
- 238000013139 quantization Methods 0.000 description 11
- 230000011664 signaling Effects 0.000 description 10
- 230000003044 adaptive effect Effects 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 5
- 238000009826 distribution Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000009466 transformation Effects 0.000 description 4
- 238000013459 approach Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 230000007423 decrease Effects 0.000 description 3
- 230000003247 decreasing effect Effects 0.000 description 3
- 239000011521 glass Substances 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 208000013057 hereditary mucoepithelial dysplasia Diseases 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000003936 working memory Effects 0.000 description 2
- 206010012812 Diffuse cutaneous mastocytosis Diseases 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000003466 anti-cipated effect Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001627 detrimental effect Effects 0.000 description 1
- 238000001541 differential confocal microscopy Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000001747 exhibiting effect Effects 0.000 description 1
- 238000007654 immersion Methods 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000011897 real-time detection Methods 0.000 description 1
- 238000007670 refining Methods 0.000 description 1
- 238000002310 reflectometry Methods 0.000 description 1
- 239000000523 sample Substances 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 239000013598 vector Substances 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
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
-
- 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/004—Predictors, e.g. intraframe, interframe coding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/005—Statistical coding, e.g. Huffman, run length coding
-
- 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
- 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
-
- 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/91—Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
提供了一种对表示物理对象的点云进行编码/解码的方法和装置,所述点云的每个点与响应于所述点距参照物的距离的半径和预测半径之间的残差半径相关联。所述方法基于与先前点相关联的先前熵编码/熵解码的非零残差半径的正负符号对与点云的当前点相关联的残差半径的正负符号进行熵编码/熵解码。
Description
相关申请的交叉引用
本申请要求于2021年4月9日提交的欧洲专利申请第EP21305460.4号的优先权,该申请的内容通过引用整体并入本公开。
技术领域
本申请一般涉及点云压缩,并且特别涉及对由自旋传感器头捕获的点云几何数据进行编码/解码的方法和装置。
背景技术
本部分旨在向读者介绍本领域的各个方面,这些方面可以与下面描述和/或要求保护的本申请的至少一个示例性实施例的各个方面有关。本讨论被认为有助于向读者提供背景信息,以便于更好地理解本申请的各个方面。
作为一种表示3D数据的格式,点云最近获得了关注,因为它们在表示所有类型的物理对象或场景方面具有通用性的能力。点云可以用于各种目的,如文化遗产/建筑,其中如雕像或建筑等对象被三维扫描,以便在不发送或访问对象的情况下共享对象的空间配置。此外,这是一种确保在对象可能被破坏的情况下保存对象知识的方法;例如,被地震破坏的寺庙。这样的点云通常是静态的、彩色的和巨大的。
另一种使用情况是在地形和制图中,其中使用3D表示允许地图不限于平面并且可以包括地形。谷歌地图现在是3D地图的一个很好的例子,但使用网格而不是点云。然而,点云可能是3D地图的合适数据格式,并且这种点云通常是静态的、彩色的和巨大的。
虚拟现实(VR)、增强现实(AR)和沉浸式世界最近成为热门话题,并被许多人预见为2D平面视频的未来。其基本思想是让观众沉浸在周围的环境中,而与之相反,标准电视只允许观众观看他/她面前的虚拟世界。取决于观众在环境中的自由度,沉浸感有几个等级。点云是分发VR/AR世界的良好格式候选者。
汽车行业,尤其是可预见的自动驾驶汽车,也是点云可能被密集使用的领域。自动驾驶汽车应该能够“探测”其环境,以根据检测到的它们紧邻附近对象的存在和本质以及道路配置做出良好的驾驶决策。
点云是位于三维(3D)空间中的一组点,可选地具有附着到每个点的附加值。这些附加值通常称为属性。属性例如可以是与点关联的表面的三分量颜色、材料性质(如反射率)和/或双分量法向向量。
因此,点云是几何体(点在三维空间中的位置通常由三维笛卡尔坐标x、y和z表示)和属性的组合。
点云可以由各种类型的设备捕获,如相机阵列、深度传感器、激光器(光检测和测距,也称为激光雷达,Lidar)、雷达,或者可以由计算机生成(例如在电影后期制作中)。取决于使用情况,点云可具有数千到数十亿个点以用于制图应用。点云的原始表示要求每个点的比特数非常高,每个笛卡尔坐标x、y或z至少有十几个比特,并且可选地,对于属性需要更多比特,例如,对于颜色需要10比特的三倍。
在许多应用中,重要的是能够通过仅消耗合理量的比特率或存储空间将点云分发给最终用户或将其存储在服务器中,同时保持可接受的(或优选为非常好的)体验质量。这些点云的有效压缩是使许多沉浸式世界的分发链实用的关键。
压缩对于最终用户(例如在AR/VR眼镜或任何其他具有3D能力的设备上)的分发和可视化可能是有损的(类似于视频压缩)。其他用例确实需要无损压缩,如医疗应用或自动驾驶,以避免改变从经压缩和传输的点云的后续分析中获得的决策结果。
直到最近,点云压缩(又名PCC)还没有被大众市场所解决,也没有标准化的点云编解码器可用。2017年,标准化工作组ISO/JCT1/SC29/WG11,也称为运动图像专家组或MPEG,已经启动了关于点云压缩的工作项目。这已经导致了两个标准,即
·MPEG-I第5部分(ISO/IEC 23090-5)或基于视频的点云压缩(V-PCC)
·MPEG-I第9部分(ISO/IEC 23090-9)或基于几何的点云压缩(G-PCC)
V-PCC编码方法通过对3D对象执行多次投影来压缩点云,以获得被打包到图像(或当处理动态点云时的视频)中的2D块。然后,使用现有的图像/视频编解码器对获得的图像或视频进行压缩,以允许利用已部署的图像和视频解决方案。就其本质而言,V-PCC仅在密集和连续的点云上是有效的,因为图像/视频编解码器无法压缩非平滑块,这种非平滑块会从例如激光雷达捕获的稀疏几何数据的投影中获得。
G-PCC编码方法具有两种用于压缩所捕获的几何数据的方案。
第一种方案基于表示点云几何体的占用树,占用树局部是八叉树、四叉树或二叉树中的任何类型的树。占用的节点被拆分,直到达到一定的大小,并且占用的叶节点提供点的3D位置,通常位于这些节点的中心。占用信息由占用标志携带,用信号通知节点的每个子节点的占用状态。通过使用基于邻居的预测技术,可以为密集点云获得占用标志的高级别压缩。稀疏点云也可以通过当节点中仅存在孤立点时停止树构造,通过直接对具有非最小尺寸的节点内的点的位置进行编码来解决;这种技术被称为直接编码模式(DCM)。
第二种方案基于预测树,其中每个节点表示一个点的3D位置,并且节点之间的父/子关系表示从父到子的空间预测。该方法只能处理稀疏点云,并且具有比占用树更低的延迟和更简单的解码的优点。然而,与第一种基于占用的方法相比,压缩性能仅略好,并且编码也很复杂,因为该编码器必须在构建预测树时(在一长串潜在预测器中)密集地寻找最佳预测器。
在这两种方案中,属性(解)编码都是在完成几何(解)编码之后执行的,这实际上导致了两遍编码。因此,通过使用将3D空间分解为被独立编码的子体积的切片而无需在子体积之间进行预测,来获得联合几何/属性低延迟。当使用许多切片时,这可能会严重影响压缩性能。
将关于编码器和解码器的简单性、关于低延迟和关于压缩性能的要求组合在一起仍然是没有被现有点云编解码器令人满意地解决的问题。
一个重要的用例是由安装在移动车辆上的自旋传感器头(例如自旋激光雷达头)捕获的稀疏几何数据的传输。这通常需要简单且低延迟的嵌入式编码器。需要简单性,因为编码器可能部署在并行执行其他处理的计算单元上,如(半)自动驾驶,从而限制了可用于点云编码器的处理能力。还需要低延迟以允许从汽车到云的快速传输,以便基于多车辆采集来实时查看本地交通,并基于交通信息做出足够快速的决策。虽然通过使用5G可以使传输延迟足够低,但编码器本身不应因编码而引入太多延迟。此外,压缩性能非常重要,因为从数百万辆汽车到云的数据流预计将非常繁重。
与由自旋传感器头捕获的稀疏几何数据相关的特定先验已经被用来获得非常有效的编码/解码方法。
例如,G-PCC利用由自旋传感器头捕获的仰角(相对于水平地面),如图1和图2所示。自旋传感器头10包括一组传感器11(例如激光器),这里表示五个传感器。自旋传感器头10可以围绕垂直轴z自旋以捕获物理对象的几何数据,即点云的点的3D位置。由自旋传感器头捕获的几何数据用球面坐标(r3D,φ,θ)表示,其中r3D是点P距自旋传感器头的中心的距离,φ是传感器头的自旋相对于参照物的方位角,并且θ是与自旋传感器头的传感器相对于水平基准面(这里是y轴)的仰角索引k的仰角。仰角索引k可以是例如传感器k的仰角,或者在单个传感器在连续探测连续仰角中每一个的情况下的第k传感器位置的仰角。
在由自旋传感器头捕获的几何数据上观察到沿方位角的规则分布,如图3所示。该规则性在G-PCC中被用于获得点云的准1D表示,其中,直到噪声,只有半径r3D属于连续的值范围,而角度φ和θ仅取离散数量的值,至I-1,其中I是用于捕获点的方位角的数量,以及/>至K-1,其中k是自旋传感器头10的传感器的数量。基本上,G-PCC表示由自旋传感器头在2D离散角平面(φ,θ)上捕获的稀疏几何数据,如图3所示,以及每个点的半径值r3D。
这种准1D性质已经在G-PCC中,在占用树和通过使用角度的离散性质基于已经编码的点在球面坐标空间中预测当前点的位置的预测树两者中得到了利用。
更准确地说,占用树密集地使用DCM,并通过使用上下文自适应熵编码器对节点内的点的直接位置进行熵编码。然后,从点位置到坐标(φ,θ)的局部转换以及从这些坐标相对于从已经编码的点获得的离散坐标(φi,θk)的位置获得上下文。
使用该坐标空间的准1D性质(r,φi,θk),预测树直接对当前点P在球面坐标(r,φ,θ)中的位置的第一版本进行编码,其中r可以是半径r3D或水平xy平面上的投影半径r2D,如在图4中由r2D所示。然后,将球面坐标(r,φ,θ)转换为三维笛卡尔坐标(x,y,z),并对xyz残差进行编码,以解决坐标转换的误差、仰角和方位角的近似以及潜在噪声。
如上所解释的捕获由自旋传感器头10捕获的点云几何数据有利地在(r,φ,θ)坐标空间中表示。由于角度的准(直到噪声)离散性质,可以有效地压缩角坐标(φ,θ)。然而,取决于被探测对象相对于自旋传感器头10的距离,半径r可以取任何值。有利的是,可以通过如图5所示的方法100从相邻的已经编码的点的半径来预测点云的点的半径r,以获得和编码残差半径。
图5示出根据现有技术对比特流中的残差半径进行编码的方法100。
在步骤110中,选择预测半径rpred作为当前点的半径r的预测。
预测半径rpred的示例由稍后描述的等式(7)给出。
预测半径rpred也可以是从候选预测模式列表中选择的预测模式得出的预测球面坐标的坐标(rpred,φpred,θpred)。预测模式的选择可以通过最小化基于速率或速率失真的成本函数来完成。
所选择的预测模式可以在预测模式列表中通过预测模式索引Isel来标识,该预测模式索引在比特流B中用信号通知(步骤120)。预测模式索引Isel在比特流B中针对点云的每个点(或者等效地针对G-PCC预测树的每个叶节点)用信号通知。
例如,候选预测模式可以等于(rmin,φ0,θ0),其中rmin是最小半径值(在几何参数集中提供),并且φ0和θ0在当前节点(当前点P)没有父节点的情况下等于0,或者等于与父节点相关联的点的方位角和仰角。
另一候选预测模式可以等于(r0,φ0,θ0),其中r0,φ0和θ0分别是与当前节点的父节点相关联的点的半径、方位角和仰角。
另一候选预测模式可以等于与当前节点的父节点相关联的点的半径、方位角和仰角(r0,φ0,θ0)以及与祖父节点相关联的点的半径、方位角、仰角(r1,φ1,θ1)的线性预测。例如,该候选预测模式由2*(r0,φ0,θ0)-(r1,φ1,θ1)给出。
另一候选预测模式可以等于与当前节点的父节点相关联的点的半径、方位角和仰角(r0,φ0,θ0)、与祖父节点相关联的点的半径、方位角和仰角(r1,φ1,θ1)以及与曾祖父节点相关联的点的半径、方位角和仰角(r2,φ2,θ2)的线性预测。
例如,该候选预测模式由(r0,φ0,θ0)+(r1,φ1,θ1)-(r2,φ2,θ2)给出。
在步骤130中,计算残差半径rres=r-rpred。
在步骤140中,在比特流B中用信号通知第一标志f0,以指示残差半径rres是否为空。
如果残差半径rres为空,则残差半径的编码完成,并且该方法迭代以对点云的下一点的残差半径进行编码。
否则,在步骤150中,幅值|rres|-1被编码在比特流B中,其中|·|指示“绝对值”。通常,使用一系列标志(每个标志指示该幅值是否等于特定值)和/或使用指数哥伦布(exp-Golomb)编码器对幅值进行编码。在步骤160中,正负符号sres被编码在比特流中,通常针对每个正负符号使用一个比特。然后,该方法迭代以对点云的下一点的残差半径进行编码。
图6示出了根据现有技术的从比特流中解码半径的方法200。
在步骤210中,从比特流B中访问第一标志f0。
如果第一标志f0指示当前点的残差半径为空,则对残差半径的解码完成。
否则,在步骤220中,从比特流B中解码幅值|rres|-1。在步骤230中,从比特流B中解码残差半径的正负符号sres。在步骤240中,从解码的正负符号sres和解码的幅值获得带正负符号的残差半径rres。
在步骤250中,如关于图5所解释的,从预测模式获得预测半径rpred。然后通过将解码的残差半径rres和预测半径rpred相加来获得解码半径rdec。最后,该方法迭代以解码残差半径并获得点云的下一点的解码半径rdec。
图7示出类似于使用图5的残差半径编码方法100的基于G-PCC预测树的编码器的点云编码器。
首先,点云的点的笛卡尔坐标(x,y,z)通过(r,φ,θ)=C2A(x,y,z)变换为球面坐标(r,φ,θ),其中r是水平xy平面上的投影半径r2D,如图4所示,φ是方位角,以及θ是仰角。
变换函数C2A(.)部分由下式给出:
r=round(sqrt(x*x+y*y)/Δr)
φ=round(atan2(y,x)/Δφ)
其中round()是到最近整数值的舍入运算,sqrt()是平方根函数,atan2(y,x)是应用于y/x的反正切。量Δr和Δφ是量化步长。
角度θ在下文中被用作仰角值,该值例如可以使用下式获得
其中atan(.)是反正切函数。实际上,例如,在G-PCC中,θ的表示是表示θk的仰角索引k(即第k个仰角的索引)的整数值,因此下文中提供的对θ执行的操作(预测、残差(解)编码等)将改为应用于仰角索引。
球面坐标(r,φ,θ)和预测球面坐标(rpred,φpred,θpred)之间的残差球面坐标(rres,φres,θres)由下式给出:
(rres,φres,θres)=(r,φ,θ)-(rpred,φpred,θpred) (1)
其中,(rpred,φpred,θpred)是从关于图5所解释的预测模式得出的球面坐标。
通过运算符Q(.)将残差球面坐标(rres,φres,θres)量化为编码在比特流B中的量化的残差球面坐标Q(rres,φres,θres)。量化残差半径rres可以使用图5的编码方法100编码在比特流B中。
可以通过使用所选择的预测模式来获得预测的方位角φpred。
在变型中,通过在比特流B中额外用信号通知表示要添加到所选择的预测模式的基本步长Δφ的数量的(正的或负的)整数μ,可以将预测的方位角φpred精炼为φ′pred。
φ′□red=φpred+μ*Δφ
其中,为点云的每个点(即预测树的每个节点)在比特流B中用信号通知数量μ。
预测的笛卡尔坐标(xpred,ypred,zpred)是通过以下方式对解码的球面坐标(rdec,φdec,θdec)进行逆变换而获得的:
(xpred,ypred,zpred)=A2C(rdec,φdec,θdec) (2)
其中,由解码器解码的球面坐标(rdec,φdec,θdec)可以由下式给出:
(rdec,φdec,θdec)=(rres,dec,φres,dec,θres,dec)+(rpred,φpred,θpred) (3)
解码的残差球面坐标(rres,dec,φres,dec,θres,dec)可以是量化的残差球面坐标Q(rres,φres,θres)的逆量化(IQ)的结果。
对解码的球面坐标(rdec,φdec,θdec)进行逆变换可以由下式给出:
r=Rdec*Δr
Xpred=round(r*cos(φdec *Δφ))
ypred=round(r*sin(φdec *Δφ)
zpred=round(tan(θdec)*r)
其中sin()、cos()和tan()是正弦、余弦和正切函数,其可以通过定点精度运算来近似。
残差笛卡尔坐标(xres,yres,zres)可以被量化(Q),并且量化的残差笛卡尔坐标Q(xres,yres,zres)可以被编码到比特流B中。
当x、y、z量化步长等于原点精度(通常为1)时,可以对残差笛卡尔坐标进行无损编码,或者当量化步长大于原点精度时(通常量化步长大于1),可以对残差笛卡尔坐标进行有损编码。
由解码器获得的解码的笛卡尔坐标(xdec,ydec,zdec)由下式给出:
(xdec,ydec,zdec)=(xpred,.ypred,zpred)+IQ(Q(xres,yres,zres)) (4)
图8示出了类似于使用图6的残差半径解码方法200的基于G-PCC预测树的解码器的点云解码器。
从比特流B中解码量化的残差球面坐标Q(rres,φres,θres)。对量化的残差球面坐标Q(rres,φres,θres)进行逆量化,以获得解码的残差球面坐标(rres,dec,φres,dec,θres,dec)。可以通过图6的解码方法200从比特流B中解码量化的残差半径Q(rres,dec)。
通过等式(3)获得解码的球面坐标(rdec,φdec,θdec),
其中(rpred,φpred,θpred)是从如关于图5解释的预测模式并且使用与该编码方法相同的方法得出的球面坐标。然后,从等式(2)获得预测的笛卡尔坐标(xpred,ypred,zpred)。
在变型中,通过使用从比特流B访问的预测模式索引标识的预测模式而获得的预测的方位角φpred可以被精炼为φ′pred,由下式给出
φ′pred=φpred+μ*Δφ
针对点云的每个点(即预测树的每个节点)从比特流B中访问数量μ。
从比特流中解码量化的残差笛卡尔坐标Q(xres,yres,zres),并且对其进行逆量化(IQ)以获得逆量化的笛卡尔坐标IQ(Q(xres,yres,zres))。解码的笛卡尔坐标(Xdec,ydec,zdec)由等式(4)给出。
欧洲专利申请第EP20306672号公开了一种单链编码/解码方法,作为图7和图8的编码/解码方法的替代方案。
在单链编码中,点云的点的3D笛卡尔坐标与半径值r(r2D或r3D)一起表示在2D坐标(Cφ,λ)系中。对于粗略方位角的坐标Cφ是传感器头的自旋的方位角索引,其离散值表示为对应于角度为φi的传感器头有效旋转。坐标λ是传感器索引,其离散值表示为/>半径r属于连续的值范围。
对于点云的每个点,获得与捕获所述点的传感器相关联的传感器索引λ(λ是传感器索引之一)、表示所述传感器的捕获角度的方位角索引Cφ(Cφ是离散角度索引/>之一)、以及点的球面坐标的半径值r。
通过转换表示捕获点的3D位置的3D笛卡尔坐标(x,y,z)来获得传感器索引λ和方位角索引Cφ。这些3D笛卡尔坐标(x,y,z)可以是自旋传感器头10的输出。
例如,假设角度φstep是给定传感器索引λ的传感器头的两次连续探测之间的基本方位角步长,并且假设由函数atan2(y,x)返回的y/x的反正切值取[0;2*π]区间中的值,则Cφ可以通过以下方式获得:
Cφ=round(φ/φstep),
其中,φ=atan2(y,x)。然后,旋转角度φi将通过以下公式获得:
φi=Cφi*φstep。
在这种情况下,离散角度的集合φi(0≤i<I)实质上由φi=i*φstep定义。
此外,λ可以被确定为传感器的索引λk,其具有的仰角θk最接近点云的点的仰角θ。
接下来,在单链编码中,基于方位角索引Cφ和传感器索引λ对点云的点进行排序。
在变型中,根据字典顺序,首先基于方位角,然后基于传感器索引,对点进行排序。点P的次序索引o(P)通过以下方式获得:
o(P)=Cφ*K+λ
在另一变型中,根据字典顺序,首先基于传感器索引,然后基于方位角,对点进行排序。点P的次序索引o(P)通过以下方式获得:
o(P)=λ*I+Cφ
将排序点编码到比特流B中可以包括对次序索引差Δon进行编码,该次序索引差分别表示两个连续点Pn-1和Pn(对于n=2至N)的次序索引之间的差:
Δon=o(Pn)-o(Pn-1)
第一点P1的次序索引o(P1)可以直接编码到比特流B中。这相当于任意将虚拟第零点的次序索引设置为零,即o(P0)=0,并且编码Δo1=o(P1)-o(P0)=o(P1)。
如果给定第一点的次序索引o(P1)和次序差Δon,则可以通过以下方式递归地重构任何点Pn的次序索引o(Pn):
o(Pn)=o(Pn-1)+Δon
然后,通过以下方式获得与点Pn相关联的传感器索引λn和方位角索引Cφn:
λn=o(Pn)modulo K (5)
φn=o(Pn)/K (6)
其中除法/K是整数除法(又称欧几里得除法)。因此,o(P1)和Δon是λn和Cφn的替代表示。
在编码侧,残差方位角φres由下式给出:
φres=φ-φpred=φ-Cφn*φstep (7)
其中,φpred是预测的方位角。
然后,将排序点编码到比特流B中还可以包括编码与排序点相关联的残差(Qrres,Qφres,res),由下式给出:
(Qrres,Qφres,res)=(r,Qφres)-(rpred,Qφres,pred) (8)
其中,Qrres是量化的残差半径,Qφres是量化的残差方位角,Qφres,res是量化的残差方位角的残差,并且Qφres,pred是量化的预测残差方位角。点云的每个点Pn的仰角索引θn不被预测编码。
量化的残差半径Qrres是通过将量化器应用于残差半径rres=r-rpred而获得的,其中rpred等于从关于图5所解释的预测模式得出的球面坐标。
使用图5的编码方法100将量化的残差半径Qrres编码在比特流B中,使得其可以通过图6的解码方法200被解码,并被逆量化以获得逆量化的残差半径IQrres,其等于解码的残差半径rres,dec。
残差方位角φres由下式给出:
φres=φ-φpred
其中,φpred是由等式(7)给出的预测的方位角。
量化的残差方位角Qφres通过将量化器Q应用于残差方位角φres来获得,并且被编码在比特流B中。
解码的残差方位角φres,dec等于通过应用逆量化器IQ获得的逆量化的残差方位角IQφres。然后,通过将解码的残差方位角φres,dec与由等式(7)给出的预测的方位角φpred相加来获得解码的方位角φdec,
(rdec,φdec)=(IQrres,IQφres)+(rpred,φpred) (9)
将排序点编码到比特流B中还包括通过以下方式获得排序点的三维笛卡尔坐标的残差笛卡尔坐标(xres,yres,zres):
(xres,yres,zres)=(x,y,z)-(xpred,ypred,zpred)
其中(x,y,z)是排序点的三维笛卡尔坐标,并且(xpred,ypred,zpred)是通过以下方式获得的预测的笛卡尔坐标:
残差笛卡尔坐标(Xres,yres,zres)被量化为被编码到比特流B中的量化的残差笛卡尔坐标Q(Xres,yres,zres)。
当x、y、z量化步长等于原点精度(通常为1)时,可以对残差笛卡尔坐标进行无损编码,或者当量化步长大于原点精度时(通常量化步长大于1),可以对残差笛卡尔坐标进行有损编码。
在解码侧,从比特流B中解码次序索引差Δon(n=2至N)。针对当前点Pn解码每个次序索引差Δon。
对于当前点Pn,通过以下方式获得次序索引o(Pn):
0(Pn)=o(Pn-1)+Δon
与捕获当前点的传感器相关联的传感器索引λn和表示所述传感器的捕获角度的方位角φn从次序索引o(Pn)得出(等式(5)和(6))。
可以通过图6的解码方法200从比特流B中对解码的量化残差半径Qrres,dec进行解码,并且通过将逆量化器应用于Qrres,dec来获得解码的残差半径rres,dec。
然后,解码的半径rdec由下式给出:
rdec=rres,dec+rpred
其中rpred是从关于图5所解释的预测模式得出的球面坐标。
从比特流B中解码量化的残差方位角Qφres。通过逆量化获得解码的残差方位角φres,dec:
φres,dec=IQ(Qφres)
然后,解码的球面坐标由下式给出:
(rdec,φdec)=(rres,dec,φres,dec)+(rpred,φpred) (10)
解码的笛卡尔坐标(xdec,ydec,zdec)由下式给出:
(xdec,ydec,zdec)=(xpred,ypred,zprcd)+IQ(Q(Xres,yres,zres))
其中IQ(Q(Xres,yres,zres))表示从比特流B中解码的逆量化的量化的残差笛卡尔坐标。
在现有技术中,可以很好地压缩(Cφ,λ)形式的角度数据。然而,半径压缩的效率要低得多,这不仅是由于半径的连续性,还因为残差半径rres的熵编码的弱点。
因此,大部分比特流是由表示半径的数据组成的。在我们的测试中,已经观察到半径数据占总比特流的70%到90%。因此,必须解决压缩半径数据(例如残差半径rres)的问题,以获得GPCC预测树编码/解码方案或单链编码/解码方案的总体更好的压缩效率。
发明内容
以下部分呈现了至少一个示例性实施例的简化概述,以便提供对本申请的一些方面的基本理解。该概述不是示例性实施例的广泛概述。其并非旨在识别实施例的关键或关键元素。以下概述仅以简化形式呈现了示例性实施例中的至少一个的一些方面,作为在文档中其他地方提供的更详细描述的前奏。
根据本申请的第一方面,提供了一种将点云编码为表示物理对象的编码点云数据的比特流的方法,该点云的每个点与响应于点距参照物的距离的半径和预测半径之间的残差半径相关联。该方法包括基于与点云的先前点相关联的先前熵编码的非零残差半径的正负符号来对与点云的当前点相关联的残差半径的正负符号进行熵编码。
在一个示例性实施例中,点云的每个点与包括表示自旋传感器头的传感器的捕获角度的方位角和与捕获所述点的传感器相关联的传感器索引的坐标相关联,其中具有相同坐标的所述点云的点基于用传感器索引但以不同方位角坐标捕获的点云的点进行自适应地排序。
根据本申请的第二方面,提供了一种从表示物理对象的编码点云数据的比特流中解码点云的方法,该点云的每个点与响应于点距参照物的距离的半径和预测半径之间的残差半径相关联。该方法包括基于与点云的先前点相关联的先前熵解码的非零残差半径的正负符号来对与点云的当前点相关联的残差半径的正负符号进行熵解码。
在一个实施例中,对当前点的残差半径的正负符号的熵编码或解码是基于先前熵编码或解码的非零残差半径的正负符号使用上下文的基于上下文的熵编码或者解码。
在一个实施例中,当前点和先前点由自旋传感器头的不同传感器捕获。
在一个实施例中,当前点和先前点由自旋传感器头的相同传感器捕获。
在一个实施例中,根据特定次序对点云的点进行排序,并且先前点是与熵编码或解码的非零残差半径相关联的最后先前排序点。
在一个实施例中,点云的每个点与包括表示自旋传感器头的传感器的捕获角度的方位角和与捕获所述点的传感器相关联的传感器索引的坐标相关联,其中还从指示所述排序点中的当前点和先前点是否以相同的方位角捕获的第一二进制数据来获得上下文。
在一个实施例中,还从指示当前点是否是排序点中的至少第三点的第二二进制数据来获得上下文。
在一个实施例中,点云的点与树的节点相关联,其中,如果用于获得与当前点相关联的残差半径的预测半径取决于或不取决于当前点的父节点,则还从第三二进制数据获得上下文。
在一个实施例中,从具有以下信息中的至少一个作为条目的上下文表获得上下文:第一二进制数据;第二二进制数据;第三二进制数据;先前熵编码的非零残差半径的正负符号。
根据本申请的第三方面,提供了一种将点云编码为表示物理对象的编码点云数据的比特流的装置。该装置包括一个或多个处理器,该处理器被配置为执行根据本申请的第一方面的方法。
根据本申请的第四方面,提供了一种从比特流中解码表示物理对象的点云的点的装置。该装置包括一个或多个处理器,该处理器被配置为执行根据本申请的第二方面的方法。
根据本申请的第五方面,提供了一种包括指令的计算机程序产品,当该程序由一个或多个处理器执行时,该指令使得该一个或多个处理器执行根据本申请第二方面的方法。
根据本申请的第六方面,提供了一种非暂时性存储介质,其携带用于执行根据本申请第二方面的方法的程序代码的指令。
通过结合附图对示例的以下描述,示例性实施例中的至少一个的具体性质以及所述示例性实施例中的至少之一的其他目的、优点、特征和用途将变得显而易见。
附图说明
现在将通过示例的方式参照附图,附图示出了本申请的示例性实施例,并且其中:
图1示出了根据现有技术的传感器头及其一些参数的侧视图;
图2示出了根据现有技术的传感器头及其一些参数的俯视图;
图3示出了根据现有技术的自旋传感器头捕获的数据的规则分布;
图4示出了根据现有技术的3D空间中的点的表示;
图5示出了根据现有技术将残差半径编码在比特流中的方法100;
图6示出了根据现有技术的从比特流中解码半径的方法200;
图7示出了类似于根据现有技术的基于G-PCC预测树的编码器的点云编码器;
图8示出了类似于根据现有技术的基于G-PCC预测树的解码器的点云解码器;
图9示出了由自旋传感器头捕获的点云的点的半径的自然单调性;
图10示出了根据本发明的至少一个示例性实施例的将残差半径编码在比特流中的方法300的步骤的框图;
图11示出了根据本发明的至少一个示例性实施例的从比特流中解码残差半径的方法400的步骤的框图;
图12示出了根据现有技术的由自旋传感器头捕获的点云的点的半径的演变的示例;
图13示出了根据本发明的至少一个示例性实施例的具有相同坐标(Cφ,λ)的捕获点的自适应半径排序方法500的方法500的步骤的框图;
图14示出了图13中的方法500;
图15示出了图13中的方法500;
图16示出了根据本发明示例性实施例的由自旋传感器头捕获的点云的点的半径的演变的示例;和
图17示出了其中实现各个方面和示例性实施例的系统的示例的示意框图。
在不同的附图中可以使用类似的附图标记来表示类似的部件。
具体实施方式
以下参照附图更全面地描述示例性实施例中的至少一个,其中示出了示例性实施例中的至少之一的示例。然而,示例性实施例可以以许多替代形式具体实现,并且不应被解释为局限于本文所阐述的示例。因此,应当理解,不意图将示例性实施例限制为所公开的特定形式。相反,本公开旨在涵盖落入本申请的精神和范围内的所有修改、等价物和替代方案。
当图被呈现为流程图时,应当理解,它还提供了相应装置的框图。类似地,当图以框图的形式呈现时,应该理解它也提供了相应方法/过程的流程图。
至少一个方面通常涉及点云编码和解码,并且至少一个其他方面通常涉及传输生成或编码的比特流。
此外,本方面不限于与点云压缩相关的诸如MPEG-I第5部分或第9部分的MPEG标准,并且可以应用于例如其他标准和建议,无论是预先存在的还是将来开发的,以及任何这样的标准和建议的扩展(包括MPEG-I第5部分和第9部分)。除非另有说明,或在技术上排除,本申请中描述的方面可以单独使用或组合使用。
本发明涉及编码和解码码技术领域,旨在提供一种点云数据的编码/解码技术方案。由于点云是一组海量数据,存储点云可能会消耗大量内存,也不可能在不压缩点云的情况下直接在网络层中传输点云,因此需要压缩点云。因此,随着点云在自主导航、实时检测、地理信息服务、文化遗产/建筑保护、3D沉浸式通信和交互等方面的应用越来越广泛,本发明可以应用于许多应用场景。
本发明特别涉及对残差半径的正负符号进行编码/解码,这可以降低正负符号的编码成本。然后提高了由自旋传感器头捕获的点云几何数据的总体编码效率。
本发明涉及一种对表示物理对象的点云进行编码/解码的方法,该点云的每个点与响应于该点距参照物的距离的半径和预测半径之间的残差半径相关联。
本发明基于先前熵编码/解码的非零残差半径的正负符号来对与点云的点相关联的残差半径的正负符号进行熵编码/解码。
通常,任何类型的残差的正负符号都是不可预测的,在残差不为零的情况下,导致1个不可压缩比特的成本以对该正负符号进行编码。然而,当几何数据由自旋传感器头10捕获时,捕获点的半径遵循自然单调性,如图9所示。在左侧,传感器光束显示为从传感器向对象发射,此处用灰色阴影矩形示意性地表示。捕获七个点,每个点针对特定的方位角φ。右侧的图表示七个捕获点的半径相对于方位角的演变。该图清楚地显示了捕获点的半径的单调性,即负(当方位角增加时半径减小)和正(当方位角增加时半径增大)。因此,如果通过由同一传感器捕获的先前点的半径rprec预测当前点的半径r,则残差半径rres=r-rprev表现出局部恒定的正负符号,要么是一系列的负残差半径,要么是一系列的正残差半径。当然,这并不总是正确的,但在统计上足够显著,足以使用该特性来改善残差半径rres的正负符号sres的压缩。
因此,基于先前编码的残差半径rres,prev的正负符号sres,prev对rres的正负符号sres进行编码/解码降低了正负符号sres的编码成本(低于每个正负符号1比特)。然后,由自旋传感器头10捕获的点云几何数据的总体编码效率得以提高。
图10示出了根据至少一个示例性实施例的将残差半径rres编码在比特流B中的方法300的步骤的框图。
该方法被描述为对点云的当前点的残差半径rres进行编码,但扩展到对所获得的量化的残差半径Qrres的编码,例如,如上面关于图7或在单链编码中所解释的。
在方法300的一个示例性实施例中,熵编码使用上下文,即熵编码是基于上下文的编码。
在步骤310中,获得与点云的先前点相关联的先前熵编码的非零残差半径rres,prev的正负符号sres,prev。
在步骤320中,基于正负符号sres,prev,获得用于对当前点的残差半径rres的正负符号sres进行编码的基于上下文的熵编码所使用的上下文Ctxsign。
例如,如果正负符号sres,prev为正,则获得第一上下文Ctxsign,1,如果正负符号sres,prev为负,则获得第二上下文Ctxsign2。
在步骤330中,使用基于上下文的熵编码,使用上下文Ctxsign,将残差半径rres的正负符号sres编码在比特流B中。
在图10中,残差半径rres的幅值在残差半径rres的正负符号sres之前进行编码。替代地,可以在残差半径rres的幅值之前对残差半径rres的正负符号sres进行编码。
在变型中,使用上下文自适应二进制算术编码器(CABAC)。
图11示出了根据至少一个示例性实施例的从比特流B中解码残差半径rres的方法400的步骤的框图。
该方法被描述用于解码点云的当前点的残差半径rres,但扩展到对所获得的量化的残差半径Qrres的解码,例如,如上面关于图8或在单链解码中所解释的。
在方法400的一个示例性实施例中,熵解码使用上下文,即熵解码是基于上下文的解码。
在步骤410中,获得与先前点相关联的先前熵解码的非零残差半径rres,prev的正负符号Sres,prev。
在步骤320中,基于正负符号sres,prev获得用于解码当前点的残差半径rres的正负符号sres的基于上下文的熵解码所使用的上下文Ctxsign。
在步骤420中,使用基于上下文的熵编码,使用上下文Ctxsign,从比特流B中解码残差半径rres的解码正负符号sres。
在步骤320的一个示例性实施例中,当前点和先前点由自旋传感器头10的相同传感器捕获。
如果构建预测树(例如在G-PCC中所定义的),使得在大多数时间,由同一传感器获取的点被连续编码;或者如果编码器构建预测树,使得连续编码的半径残差具有相同的正负符号,则该示例性实施例提供压缩增益。
在步骤320的一个示例性实施例中,当前点和先前点由自旋传感器头10的不同传感器捕获。
该示例性实施例还提供独立于所构建的预测树的压缩增益。
在步骤320的一个示例性实施例中,根据特定次序对由同一传感器捕获的点云的点进行排序,并且先前点是与熵编码的非零残差半径rres,prev相关联的最后先前排序点。
可以针对每个传感器索引将先前编码/解码的残差半径的正负符号保持在存储器中。在已经对新点的残差半径正负符号和传感器索引进行编码/解码之后,也更新该正负符号。然后,该机制可以用于检索与熵编码的非零残差半径rres,prev相关联的最后先前点。
在变型中,根据由G-PCC中定义的预测树编码所施加的编码次序,对由同一传感器捕获的点进行排序。
在变型中,可以构建预测树,以便考虑对于由同一传感器捕获的点的编码次序的半径的单调性。
在变型中,在单链编码/解码方法中,具有相同坐标(Cφ,λ)的点云的点可以按增加(或减少)的半径次序进行排序。
如图12所示,可以观察到,当半径r在对象感测过程中自然增加时,半径r的演变是平滑的。然而,当半径r在感测过程中趋于减小时,观察到锯齿形曲线。这可以通过对于相同坐标(Cφ,λ)的局部增加(多个捕获点)结合由于在所捕获对象上的感测进展而导致的全局减少来容易地解释。
在变型中,在单链编码/解码方法中,基于以相同传感器索引λ(相同传感器)但以不同粗略坐标捕获的点云的点,自适应地对具有相同坐标(Cφ,λ)的点云的点进行排序。
图13示出了具有相同坐标(Cφ,λ)的捕获点的自适应半径排序方法500的方法500的步骤的框图。方法500仅适用于编码侧。
在步骤510中,如图14所示,在具有相同坐标(Cφ,λ)的点的最高半径和与坐标(φ-1,λ)相关联的先前排序点的最后点的半径之间计算第一半径跳跃J1,其中坐标φ-1=Cφ-φstep。
在步骤520中,如图15所示,在具有相同坐标(Cφ,λ)的点的最低半径和与坐标(φ-1,λ)相关联的先前排序点的最后点的半径之间计算第二半径跳跃J2。
在步骤530中,如果第二半径跳跃J2高于第一半径跳跃J1,则具有相同坐标(Cφ,λ)的点按半径递减次序进行排序,如图14所示,否则按半径递增次序进行排序(步骤540),如图15所示。通过这样做,在保持半径的局部单调性的同时,使具有相同坐标(Cφ,λ)的点中的第一点和与坐标(φ-1,λ)相关联的先前排序点的最后点之间的跳跃最小化,以便从半径残差的正负符号的上下文编码中获利。
此外,将自适应半径排序方法500应用于图13的具有相同坐标(Cφ,λ)的捕获点,可提供更平滑、更单调的半径的演化,如图16所示。
当将方法500应用于具有相同坐标(Cφ,λ)的点云的点时,我们来考虑具有该相同坐标的排序点的列表{...,P-2;P-1;P;...}中的当前点P,并且使得P至少是所述排序点的列表中的第三点。然后,假设先前点的半径被选择为半径预测器,则与当前点P相关联的残差半径的正负符号sres等于与先前点P-1相关联的残差半径的正负符号sres,prec。这是方法500的直接结果,其强制最后三个点具有减小或增大的半径,使得r(P)-r(P-1)和r(P-1)-r(P-2)的正负符号相等,即sres=sres,prec。
在步骤320的一个示例性实施例中,还从二进制数据Dlast获得上下文Ctxsign,二进制数据Dlast指示排序点的列表中的当前点和先前点是否以相同的粗略方位角Cφ捕获。
该示例性实施例提高了点云几何数据的总体编码效率,因为它指示与由传感器捕获的当前点相关联的残差半径的正负符号sres何时可能是从与由同一传感器捕获的先前点相关联的先前熵编码的非零残差半径rres,prev的正负符号sres,prev可预测的。
在可以与步骤320的先前示例性实施例组合的步骤320的一个示例性实施例中,还从指示当前点是否是排序点的列表中的至少第三点Ppenult的二进制数据Dpenult获得上下文Ctxsign。
在适用于G-PCC编码/解码方案的步骤320的一个示例性实施例中,在比特流B中用信号通知的或从比特流B中访问的用于点云的先前编码点(图7)的整数数量μprev可被存储在存储器中,然后从所存储的与先前点相关联的整数数量μprev来估计二进制数据Dpenult,和/或从在比特流中用信号通知的整数μ来估计二进制信息Dlast。
在G-PCC中,多个点可以由具有相同或不同方位角的同一传感器捕获。当针对相同方位角连续捕获两个点时,对于连续捕获的两个点的编码,整数数量μ等于0。当以不同方位角连续捕获当前点和先前点时,用于编码当前点的整数数量μ等于0,用于编码先前点的整数数量等于1。因此,在比特流B中用信号通知的整数的值指示与二进制数据Dpenult和Dlast类似的信息。
例如,如果μprev=0,则Dpenult=0,否则Dpenult=1;以及如果μ=0,则Dlast=0,否则Dlast=1。
在步骤320的一个示例性实施例中,针对点云的先前编码的点(图7),在比特流B中用信号通知的或从比特流B中访问的预测模式索引Isel(图5)可被存储在存储器中,然后还从预测器模式索引Isel,prec或由预测模式索引Isel在候选预测模式列表中标识的预测模式获得上下文Ctxsign。
例如,如上文所解释的,候选预测模式指示预测半径是否取决于父节点。然后,可以从预测器模式索引Isel,prec确定二进制数据Dprevious,以指示预测半径是否取决于当前点的父节点。
在步骤320的一个示例性实施例中,上下文Ctxsign可以从具有以下信息中的至少一个作为条目的上下文表ctxTab获得:第一二进制数据Dlast;第二二进制数据Dpenult;第三二进制数据Dprevious;先前熵编码的非零残差半径rres,prev的正负符号sres,prev。
例如
Ctxsign=ctxTab[Dpenult][Dlast][sres,prec]
或
Ctxsign=ctxTab[Dprevious][Dpenult][Dlast][sres,prec]
本编码/解码方法可用于对点云进行编码/解码,其可用于各种目的,特别是用于对残差半径的正负符号进行编码/解码,这可降低正负符号的编码成本,并因此提高由自旋传感器头捕获的点云几何数据的整体编码效率。
图17示出了其中实现各个方面和示例性实施例的系统的示例一个示意框图。
系统600可以被嵌入为一个或多个设备,包括下面描述的各种组件。在各种实施例中,系统600可以被配置为实现本申请中描述的一个或多个方面。
可以形成系统600的全部或部分的设备的示例包括个人计算机、笔记本电脑、智能手机、平板电脑、数字多媒体机顶盒、数字电视接收器、个人视频记录系统、连接的家用电器、连接的车辆及其相关联的处理系统、头戴式显示设备(HMD、透视眼镜)、投影仪(投影机),“洞穴”(包括多个显示器的系统)、服务器、视频编码器、视频解码器、处理视频解码器的输出的后处理器、向视频编码器提供输入的前处理器、网络服务器、机顶盒以及用于处理点云、视频或图像的任何其他设备或其他通信设备。系统600的元件,单独地或组合地,可以在单个集成电路(IC)、多个IC和/或分立部件中具体实现。例如,在至少一个实施例中,系统600的处理和编码器/解码器元件可以分布在多个IC和/或分立组件上。在各种实施例中,系统600可以经由例如通信总线或通过专用输入和/或输出端口通信地耦合到其他类似系统或其他电子设备。
系统600可以包括至少一个处理器610,其被配置为执行加载在其中的指令,以实现例如本申请中描述的各个方面。处理器610可以包括嵌入式存储器、输入输出接口和本领域已知的各种其他电路。系统600可以包括至少一个存储器620(例如易失性存储器设备和/或非易失性存储设备)。系统600可以包括存储设备640,该存储设备640可以包括非易失性存储器和/或易失性存储,包括但不限于电可擦除可编程只读存储器(EEPROM)、只读存储器(ROM)、可编程只读存储器(PROM)、随机存取存储器(RAM)、动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM)、闪存、磁盘驱动器、和/或光盘驱动器。作为非限制性示例,存储设备640可以包括内部存储设备、附接存储设备和/或网络可访问存储设备。
系统600可以包括编码器/解码器模块630,其被配置为例如处理数据以提供编码/解码的点云几何数据,并且编码器/解码器模块630可以包括其自己的处理器和存储器。编码器/解码器模块630可以表示可以被包括在设备中以执行编码和/或解码功能的(一个或多个)模块。众所周知,设备可以包括编码和解码模块中的一个或两个。此外,编码器/解码器模块630可以被实现为系统600的单独元件,或者可以被结合在处理器610内作为本领域技术人员已知的硬件和软件的组合。
要加载到处理器610或编码器/解码器630上以执行本申请中描述的各个方面的程序代码可被存储在存储设备640中,并且随后被加载到存储器620上以由处理器610执行。根据各种实施例,处理器610、存储器620、存储设备640和编码器/解码器模块630中的一个或多个可以在执行本申请中描述的过程期间存储各种项目中的一种或多种。这样存储的项目可以包括但不限于点云帧、编码/解码的几何体/属性视频/图像或编码/解码的几何体/属性视频/图像的部分、比特流、矩阵、变量以及来自等式、公式、运算和运算逻辑的处理的中间或最终结果。
在若干实施例中,处理器610和/或编码器/解码器模块630内部的存储器可被用于存储指令并为可在编码或解码期间执行的处理提供工作存储器。
然而,在其他实施例中,处理设备外部的存储器(例如,处理设备可以是处理器610或编码器/解码器模块630)可被用于这些功能中的一个或多个。外部存储器可以是存储器620和/或存储设备640,例如,动态易失性存储器和/或非易失性闪存。在几个实施例中,外部非易失性闪存可被用于存储电视的操作系统。在至少一个实施例中,诸如RAM的快速外部动态易失性存储器可被用作视频编码和解码操作的工作存储器,例如用于MPEG-2第2部分(也称为ITU-T建议H.262和ISO/IEC 13818-2,也称为MPEG-2视频)、HEVC(高效视频编码)、VVC(通用视频编码)或MPEG-I第5部分或第9部分。
对系统600的元件的输入可以通过各种输入设备来提供,如框690所示。这样的输入设备包括但不限于(i)可以接收例如由广播公司通过空中发送的RF信号的RF部分,(ii)复合输入端子,(iii)USB输入端子,和/或(iv)HDMI输入端子。
在各种实施例中,方框690的输入设备可以具有相关联的各个输入处理元件,如本领域中已知的。例如,RF部分可以与以下所需的元件相关联:(i)选择期望频率(也称为选择信号,或将信号频带限制到频带),(ii)下变频所选信号,(iii)再次将频带限制到较窄的频带,以选择(例如)在某些实施例中可以被称为信道的信号频带,(iv)解调下变频和频带受限的信号,(v)执行纠错,以及(vi)解复用以选择期望的数据包流。各种实施例的RF部分可以包括用于执行这些功能的一个或多个元件,例如,频率选择器、信号选择器、频带限制器、信道选择器、滤波器、下变频器、解调器、纠错器和解复用器。RF部分可以包括执行这些功能中的各种功能的调谐器,包括例如将接收信号下变频到较低频率(例如,中频或近基带频率)或基带。
在一个机顶盒实施例中,RF部分及其相关联的输入处理元件可以接收通过有线(例如,电缆)介质发送的RF信号。然后,RF部分可以通过滤波、下变频和再次滤波到期望频带来执行频率选择。
各种实施例重新排列上述(和其他)元件的顺序,移除这些元件中的一些,和/或添加执行类似或不同功能的其他元件。
添加元件可以包括在现有元件之间插入元件,例如插入放大器和模数转换器。在各种实施例中,RF部分可以包括天线。
此外,USB和/或HDMI端子可以包括各自的接口处理器,用于通过USB和/或HDMI连接将系统600连接到其他电子设备。应当理解,输入处理的各个方面,例如里德-所罗门纠错,可以根据需要在例如单独的输入处理IC内或在处理器610内实现。类似地,USB或HDMI接口处理的各方面可以根据需要在单独的接口IC内或在处理器610内实现。解调的、纠错的和解复用的流可以被提供给各种处理元件,包括例如处理器610和编码器/解码器630,它们与存储器和存储元件组合操作以根据需要处理数据流以在输出设备上呈现。
系统600的各种元件可以设置在集成外壳内。在集成外壳内,各种元件可以使用合适的连接布置690(例如,本领域已知的内部总线,包括I2C总线、布线和印刷电路板)互连并在它们之间传输数据。
系统600可以包括通信接口650,通信接口650使得能够经由通信信道1000与其他设备进行通信。通信接口650可以包括但不限于收发器,该收发器被配置为通过通信信道1000发送和接收数据。通信接口650可以包括但不限于调制解调器或网卡,并且通信信道1000可以例如在有线和/或无线介质内实现。
在各种实施例中,可以使用诸如IEEE 802.11之类的Wi-Fi网络将数据流式传输到系统600。可以通过适于Wi-Fi通信的通信信道1000和通信接口650来接收这些实施例的Wi-Fi信号。这些实施例的通信信道1000通常可以连接到接入点或路由器,该接入点或路由提供对包括因特网在内的外部网络的接入,以允许流式应用和其他顶级(Over-the-top)通信。
其他实施例可以使用机顶盒向系统600提供流式数据,机顶盒通过输入块690的HDMI连接递送数据。
还有其他实施例可以使用输入块690的RF连接向系统600提供流式数据。
流式数据可以用作系统600使用的信令信息的方式。信令信息可以包括比特流B,比特流B至少包括标志f0、表示使用上下文Ctxsign使用基于上下文的熵编码编码的残差半径rres的正负符号sres和残差半径的幅值的信息、点云的点的数量、2D坐标(Cφ,λ)系中的第一点的坐标或次序o(P1)和/或传感器设置参数,例如与自旋传感器头10的传感器相关联的参数μ或仰角θk。
应当理解,可以通过多种方式来实现信令。例如,在各种实施例中,一个或多个语法元素、标志等可以用于向对应的解码器发信号通知。
系统600可以向各种输出设备提供输出信号,包括显示器700、扬声器800和其他外围设备900。在实施例的各种示例中,其他外围设备900可以包括独立DVR、盘播放器、立体声系统、照明系统以及提供基于系统600的输出的功能的其他设备中的一个或多个。
在各种实施例中,可以使用诸如AV.Link(音频/视频链路)、CEC(消费电子控制)之类的信令或其它通信协议在系统600与显示器700、扬声器800或其它外围设备900之间传送控制信号,所述其它通信协议使得能够在有或无用户干预的情况下启用设备到设备的控制。
输出设备可以通过相应的接口660、670和680经由专用连接通信地耦合到系统600。
替代地,输出设备可以通过通信接口650使用通信信道1000连接到系统600。显示器700和扬声器800可以与诸如电视机之类的电子设备中的系统600的其他组件集成在单个单元中。
在各种实施例中,显示接口660可以包括显示驱动器,例如时序控制器(T Con)芯片。
例如,如果输入690的RF部分是单独的机顶盒的一部分,则显示器700和扬声器800可替代地与一个或多个其他组件分离。在显示器600和扬声器700可以是外部组件的各种实施例中,可以经由专用输出连接来提供输出信号,该专用输出连接包括例如HDMI端口、USB端口或COMP输出。
在图1-17中,本文描述了各种方法,并且每个方法都包括用于实现所述方法的一个或多个步骤或动作。除非该方法的正确操作需要特定的步骤或动作顺序,否则可以修改或组合特定步骤和/或动作的顺序和/或使用。
关于方框图和/或操作流程图描述了一些示例。每个块表示电路元件、模块或代码的一部分,其包括用于实现(一个或多个)指定逻辑功能的一个或多个可执行指令。还应该注意的是,在其他实现中,在块中注明的(一个或多个)功能可以不按指示的顺序发生。例如,事实上,连续显示的两个块可以基本上同时执行,或者这些块有时可以按相反的顺序执行,这取决于所涉及的功能。
这里描述的实现和方面可以在例如方法或过程、装置、计算机程序、数据流、比特流或信号中实现。即使仅在单个实现形式的上下文中讨论(例如,仅作为方法讨论),所讨论的特征的实现也可以以其他形式(例如,装置或计算机程序)来实现。
这些方法可以在例如处理器中实现,处理器通常指的是处理设备,包括例如计算机、微处理器、集成电路或可编程逻辑器件。处理器还包括通信设备。
此外,这些方法可以通过由处理器执行的指令来实现,并且这样的指令(和/或由实现产生的数据值)可以存储在计算机可读存储介质上。计算机可读存储介质可以采取在一个或多个计算机可读介质中具体实现并且具有在其上具体实现的可由计算机执行的计算机可读的程序代码的计算机可读程序产品的形式。考虑到在其中存储信息的固有能力以及从中提供信息检索的固有能力,本文中使用的计算机可读存储介质可以被认为是非暂时性存储介质。计算机可读存储介质可以是,例如,但不限于,电子的、磁性的、光学的、电磁的、红外的或半导体的系统、装置或设备,或前述的任何合适的组合。应当理解,虽然提供了本实施例可以应用的计算机可读存储介质的更具体示例,如本领域普通技术人员容易理解的,以下内容仅仅是说明性列表,而不是详尽的列表:便携式计算机软盘;硬盘;只读存储器(ROM);可擦除可编程只读存储器(EPROM或闪存);便携式光盘只读存储器(CD-ROM);光学存储设备;磁性存储装置;或前述的任何合适的组合。
所述指令可以形成有形地在处理器可读介质上具体实现的应用程序。
例如,指令可以是硬件、固件、软件或其组合。指令可以在操作系统、单独的应用程序或两者的组合中找到。因此,处理器可以被表征为,例如,被配置为执行过程的设备和包括具有用于执行过程的指令的处理器可读介质(例如存储设备)的设备。此外,除了指令之外或代替指令,处理器可读介质可以存储由实现产生的数据值。
装置可以用例如适当的硬件、软件和固件来实现。这种装置的例子包括个人计算机、笔记本电脑、智能手机、平板电脑、数字多媒体机顶盒、数字电视接收器、个人视频记录系统、连接的家用电器、头戴式显示设备(HMD、透视眼镜)、投影仪(投影器)、“洞穴”(包括多个显示器的系统)、服务器、视频编码器、视频解码器、处理来自视频解码器的输出的后处理器、向视频编码器提供输入的前处理器、网络服务器、机顶盒以及用于处理点云、视频或图像的任何其他设备或其他通信设备。应该清楚的是,该设备可以是移动的,甚至可以安装在移动车辆中。
计算机软件可以由处理器610或者由硬件或者由硬件和软件的组合来实现。作为非限制性示例,实施例还可以通过一个或多个集成电路来实现。存储器620可以是适合于技术环境的任何类型,并且可以使用任何适当的数据存储技术来实现,例如光学存储设备、磁存储设备、基于半导体的存储设备、固定存储器和可移动存储器,作为非限制性示例。处理器610可以是适合于技术环境的任何类型,并且可以包括微处理器、通用计算机、专用计算机和基于多核架构的处理器中的一个或多个,作为非限制性示例。
如本领域普通技术人员将显而易见的,实施方式可以产生各种信号,这些信号被格式化以携带例如可以被存储或传输的信息。该信息可以包括,例如,用于执行方法的指令,或者由所描述的实施方式之一产生的数据。例如,信号可以被格式化以携带所描述的实施例的比特流。例如,这种信号可以被格式化为电磁波(例如,使用频谱的射频部分)或基带信号。格式化可以包括,例如,对数据流进行编码并用编码的数据流调制载波。信号携带的信息可以是例如模拟或数字信息。信号可以在各种不同的有线或无线链路上传输,这是已知的。该信号可以存储在处理器可读介质上。
此处使用的术语仅用于描述特定实施例的目的,而不旨在限制。如本文所用,单数形式“一”、“一者”和“所述”也可包括复数形式,除非上下文另有明确指示。将进一步理解的是,当在本说明书中使用术语“包括/包含(include/comprise)”和/或“包括/包含(including/comprising)”时,可以指定所述特征、整数、步骤、操作、元件和/或组件的存在,但不排除存在或添加一个或多个其他特征、整数,步骤、操作、元件、组件和/或组。此外,当一个元素被称为“响应”或“连接”到另一元素时,它可以直接响应或连接到另一元素,或者可以存在中介元素。相反,当一个元素被称为“直接响应”或“直接连接”到其他元素时,不存在中介元素。
应当理解,例如在“A/B”、“A和/或B”和“A和B中的至少一个”的情况下,使用符号/术语“/”、“和/或”和“中的至少一个”中的任何一个可以意在包括仅选择第一个列出的选项(A),或仅选择第二个列出的选项(B),或选择两个选项(A和B)。作为进一步的例子,在“A、B和/或C”和“A、B和C中的至少一个”的情况下,这种措辞旨在包括仅选择第一个列出的选项(A),或仅选择第二个列出的选项(B),或只选择第三个列出的选项(C),或者仅选择第一个和第二个列出的选项(A和B),或者仅选择第一个和第三个列出的选项(A和C),或者仅选择第二个和第三个列出的选项(B和C)、或者选择所有三个选项(A、B和C)。如本领域和相关领域的普通技术人员所清楚的,这可以扩展到与列出的一样多的项目。
在本申请中可以使用各种数值。特定值可以是用于示例目的,并且所描述的方面不限于这些特定值。
应当理解,尽管术语第一、第二等可以在本文中用于描述各种元素,但是这些元素不受这些术语的限制。这些术语仅用于将一个元素与另一个元素区分开来。例如,在不偏离本申请的教导的情况下,第一元素可以被称为第二元素,并且类似地,第二元素可以被称作第一元素。在第一元素和第二元素之间不隐含排序。
对“一个示例性实施例”或“示例性实施例”或“一个实施方式”、“实施方式”及其其他变型的引用经常用于传达特定特征、结构、特性等(结合实施例/实施方式描述)包括在至少一个实施例/实施方式中。因此,在整个本申请的各个地方出现的短语“在一个示例性实施例中”或“在示例性实施例中”、“在一个实施方式中”或“在实施方式中”以及任何其他变型并不一定都指同一实施例。
类似地,本文中对“根据示例性实施例/示例/实施方式”或“在示例性实施例/示例/实施方式中”及其其他变型的引用经常用于传达特定特征、结构、或者特性(结合示例性实施例/示例/实现方式描述)可以包括在至少一个示例性实施例/示例/实施方式中。因此,在说明书中的各个地方出现的表达式“根据示例性实施例/示例/实施方式”或“在示例性实施例/示例/实施方式中”不一定都指相同的示例性实施例/示例/实施方式,单独的或替代的示例性实施例/示例/实施方式也不一定与其他示例性实施例/示例/实施方式相互排斥。
权利要求中出现的附图标记仅用于说明,并且对权利要求的范围不具有限制作用。尽管没有明确描述,但是本实施例/示例和变型可以以任何组合或子组合使用。
当图被表示为流程图时,应当理解,它还提供了相应装置的框图。类似地,当一个图以框图的形式呈现时,应该理解它也提供了相应方法/过程的流程图。
尽管一些图包括通信路径上的箭头以示出通信的主要方向,但是应当理解,通信可以在与所描绘的箭头相反的方向上发生。
各种实施方式涉及解码。本申请中使用的“解码”可以包括例如对接收到的点云帧(可能包括对一个或多个点云帧进行编码的接收到的比特流)执行的全部或部分过程,以便产生适合在重建的点云域中显示或进一步处理的最终输出。在各种实施例中,这样的过程包括通常由解码器执行的过程中的一个或多个。在各种实施例中,这样的过程也或者替代地包括由本申请中描述的各种实现的解码器执行的过程,例如。
作为进一步的示例,在一个实施例中,“解码”可能指熵解码,在另一实施例中,“解码”可能仅指差分解码,并且在另一个实施例中,“解码”可能指熵解码和差分解码的组合。短语“解码过程”是专门指操作的子集,还是一般指更广泛的解码过程,将基于具体描述的上下文而清楚,并且相信本领域技术人员会很好地理解。
各种实施方式都涉及编码。以与上述关于“解码”的讨论类似的方式,本申请中使用的“编码”可以包括例如对输入点云帧执行的所有或部分过程,以便产生编码的比特流。在各种实施例中,这样的过程包括通常由编码器执行的过程中的一个或多个。在各种实施例中,这样的过程也或者替代地包括由本申请中描述的各种实施方式的编码器执行的过程。
作为进一步的示例,在一个实施例中,“编码”可能仅指熵编码,在另一实施例中,“编码”可能仅指差分编码,并且在另一实施例中,“编码”可能指差分编码和熵编码的组合。短语“编码过程”是专门指操作的子集还是一般指更广泛的编码过程将基于具体描述的上下文而清楚,并且相信本领域技术人员将很好地理解。
此外,本申请可能涉及“确定”各种信息。确定信息可以包括例如估计信息、计算信息、预测信息或从存储器检索信息中的一个或多个。
此外,本申请可以提及“访问”各种信息。访问信息可以包括例如接收信息、检索信息(例如,从存储器或比特流)、存储信息、移动信息、复制信息、计算信息、确定信息、预测信息或估计信息中的一个或多个。
此外,本申请可以提及“接收”各种信息。与“访问”一样,接收是一个广义的术语。接收信息可以包括例如访问信息或检索信息(例如,从存储器或比特流)中的一个或多个。此外,在诸如存储信息、处理信息、发送信息、移动信息、复制信息、擦除信息、计算信息、确定信息、预测信息或估计信息的操作期间,通常以这样或那样的方式涉及“接收”。
此外,如本文所使用的,单词“信号”指的是向相应解码器指示某些东西。例如,在某些实施例中,编码器用信号通知标志f0、表示使用上下文Ctxsign使用基于上下文的熵编码编码的残差半径rres的正负符号sres的信息、残差半径的幅值、点云的点的数量或2D坐标(Cφ,λ)系中第一点的坐标或次序o(P1)或传感器设置参数,如与传感器k相关联的参数μ或仰角θk。这样,在一个实施例中,相同的参数可以在编码器侧和解码器侧使用。因此,例如,编码器可以向解码器发送(显式信令)特定参数,使得解码器可以使用相同的特定参数。相反,如果解码器已经具有特定参数以及其他参数,则可以在不进行传输的情况下使用信令(隐式信令)来简单地允许解码器知道并选择特定参数。通过避免传输任何实际功能,在各种实施例中实现了比特节省。应当理解,可以通过多种方式来实现信令。例如,在各种实施例中,一个或多个语法元素、标志等用于将信息发信号通知给对应的解码器。虽然前面的内容与“信号”一词的动词形式有关,但“信号”也可以在本文中用作名词。
已经描述了许多实施方式。然而,应当理解,可以进行各种修改。例如,不同实施方式的元素可以被组合、补充、修改或移除以产生其他实施方式。此外,本领域技术人员将理解,其他结构和过程可以替代所公开的那些结构和过程,并且所得到的实施方式将以至少基本相同的(一种或多种)方式执行至少基本上相同的(一个或多个)功能,以实现与所公开的实现至少基本上相同的(一个或多个)结果。因此,这些和其他实施方式被本申请所设想。
Claims (15)
1.一种将点云编码为表示物理对象的编码点云数据的比特流的方法,所述点云的每个点与响应于所述点距参照物的距离的半径和预测半径之间的残差半径相关联,所述方法包括基于与所述点云的先前点相关联的先前熵编码的非零残差半径(rres,prev)的正负符号(sres,prev),对与所述点云的当前点相关联的残差半径(rres)的正负符号(sres)进行熵编码。
2.根据权利要求1所述的方法,其中,所述点云的每个点与包括表示自旋传感器头的传感器的捕获角度的方位角(Cφ)和与捕获所述点的传感器相关联的传感器索引(λ)的坐标相关联,其中基于以相同传感器索引(λ)但以不同方位角坐标(Cφ)捕获的点云的点,自适应地对具有相同坐标(Cφ,λ)的点云的点进行排序。
3.一种从表示物理对象的编码点云数据的比特流中解码点云的方法,所述点云的每个点与响应于所述点距参照物的距离的半径和预测半径之间的残差半径相关联,所述方法包括基于与所述点云的先前点相关联的先前熵解码的非零残差半径(rres,prev)的正负符号(sres,prev),对与所述点云的当前点相关联的残差半径(rres)的正负符号(sres)进行熵解码。
4.根据权利要求1或3中的一项所述的方法,其中,对所述当前点的残差半径(rres)的正负符号(sres)的熵编码或熵解码是使用上下文(Ctxsign)基于先前熵编码或解码的非零残差半径(rres,prev)的正负符号(sres,prev)的基于上下文的熵编码或熵解码。
5.根据权利要求1至4中的一项所述的方法,其中,所述当前点和先前点由自旋传感器头的不同传感器捕获。
6.根据权利要求1至4中的一项所述的方法,其中,所述当前点和先前点由自旋传感器头的相同传感器捕获。
7.根据权利要求4所述的方法,其中,根据特定次序对所述点云的点进行排序,并且所述先前点是与熵编码或熵解码的非零残差半径(rres,prev)相关联的最后先前排序点。
8.根据权利要求7所述的方法,其中,所述点云的每个点与包括表示自旋传感器头的传感器的捕获角度的方位角(Cφ)和与捕获所述点的传感器相关联的传感器索引(λ)的坐标相关联,其中所述上下文(Ctxsign)还从指示所述排序点中的当前点和先前点是否以相同方位角捕获的第一二进制数据(Dlast)获得。
9.根据权利要求7或8所述的方法,其中,所述上下文(Ctxsign)还从指示所述当前点是否是所述排序点中的至少第三点的第二二进制数据(Dpenult)获得。
10.根据权利要求7至9中的一项所述的方法,其中,所述点云的点与树的节点相关联,其中所述上下文(Ctxsign)还从指示用于获得与当前点相关联的残差半径的预测半径是否取决于所述当前点的父节点的第三二进制数据(Dprevious)获得。
11.根据权利要求7至10所述的方法,其中,所述上下文(Ctxsign)是从具有以下信息中的至少一个作为条目的上下文表(ctxTab)获得的:
第一二进制数据(Dlast);
第二二进制数据(Dpenult);
第三二进制数据(Dprevious);
先前熵编码的非零残差半径(rres,prev)的正负符号(sres,prev)。
12.一种将点云编码为表示物理对象的编码点云数据的比特流的装置,所述点云的每个点与响应于所述点距参照物的距离的半径和预测半径之间的残差半径相关联,所述装置包括一个或多个处理器,所述处理器被配置为基于与所述点云的先前点相关联的先前熵编码的非零残差半径(rres,prev)的正负符号(sres,prev),对与所述点云的当前点相关联的残差半径(rres)的正负符号(sres)进行熵编码。
13.一种从表示物理对象的编码点云数据的比特流中解码点云的装置,所述点云的每个点与响应于所述点距参照物的距离的半径和预测半径之间的残差半径相关联,所述装置包括一个或多个处理器,所述处理器被配置为基于与所述点云的先前点相关联的先前熵解码的非零残差半径(rres,prev)的正负符号(sres,prev),对与所述点云的当前点相关联的残差半径(rres)的正负符号(sres)进行熵解码。
14.一种包括指令的计算机程序产品,当所述程序由一个或多个处理器执行时,所述指令使得所述一个或多个处理器执行从表示物理对象的编码点云数据的比特流中解码点云的方法,所述点云的每个点与响应于所述点距参照物的距离的半径和预测半径之间的残差半径相关联,所述方法包括基于与所述点云的先前点相关联的先前熵解码的非零残差半径(rres,prev)的正负符号(sres,prev),对与所述点云的当前点相关联的残差半径(rres)的正负符号(sres)进行熵解码。
15.一种携带程序代码的指令的非临时存储介质,所述程序代码用于执行从表示物理对象的编码点云数据的比特流中解码点云的方法,所述点云的每个点与响应于所述点距参照物的距离的半径和预测半径之间的残差半径相关联,所述方法包括基于与所述点云的先前点相关联的先前熵解码的非零残差半径(rres,prev)的正负符号(sres,prev),对与所述点云的当前点相关联的残差半径(rres)的正负符号(sres)进行熵解码。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP21305460.4 | 2021-04-09 | ||
EP21305460.4A EP4072145A1 (en) | 2021-04-09 | 2021-04-09 | Method and apparatus of encoding/decoding point cloud geometry data captured by a spinning sensors head |
PCT/CN2021/123661 WO2022213568A1 (en) | 2021-04-09 | 2021-10-13 | Method and apparatus of encoding/decoding point cloud geometry data captured by a spinning sensors head |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117121483A true CN117121483A (zh) | 2023-11-24 |
Family
ID=77050943
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202180096609.1A Pending CN117121483A (zh) | 2021-04-09 | 2021-10-13 | 对由自旋传感器头捕获的点云几何数据进行编码/解码的方法和装置 |
Country Status (7)
Country | Link |
---|---|
US (1) | US20240185472A1 (zh) |
EP (1) | EP4072145A1 (zh) |
JP (1) | JP2024516538A (zh) |
KR (1) | KR20230169271A (zh) |
CN (1) | CN117121483A (zh) |
BR (1) | BR112023020636A2 (zh) |
WO (1) | WO2022213568A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11875541B2 (en) | 2020-10-07 | 2024-01-16 | Qualcomm Incorporated | Predictive geometry coding in G-PCC |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180053324A1 (en) * | 2016-08-19 | 2018-02-22 | Mitsubishi Electric Research Laboratories, Inc. | Method for Predictive Coding of Point Cloud Geometries |
US20190116372A1 (en) * | 2017-10-16 | 2019-04-18 | Mitsubishi Electric Research Laboratories, Inc. | Systems and Methods for Compressing, Representing and Processing Point Clouds |
US10762667B2 (en) * | 2018-11-30 | 2020-09-01 | Point Cloud Compression, B.V. | Method and apparatus for compression of point cloud data |
WO2020147021A1 (zh) * | 2019-01-15 | 2020-07-23 | 深圳市大疆创新科技有限公司 | 三维数据点的编解码方法和装置 |
US11475604B2 (en) * | 2019-03-26 | 2022-10-18 | Tencent America LLC | Method and apparatus for adaptive point cloud attribute coding |
WO2020248187A1 (zh) * | 2019-06-13 | 2020-12-17 | 深圳市大疆创新科技有限公司 | 一种点云编码方法、点云解码方法及相关设备 |
-
2021
- 2021-04-09 EP EP21305460.4A patent/EP4072145A1/en active Pending
- 2021-10-13 WO PCT/CN2021/123661 patent/WO2022213568A1/en active Application Filing
- 2021-10-13 US US18/553,816 patent/US20240185472A1/en active Pending
- 2021-10-13 CN CN202180096609.1A patent/CN117121483A/zh active Pending
- 2021-10-13 BR BR112023020636A patent/BR112023020636A2/pt unknown
- 2021-10-13 KR KR1020237038713A patent/KR20230169271A/ko unknown
- 2021-10-13 JP JP2023561168A patent/JP2024516538A/ja active Pending
Also Published As
Publication number | Publication date |
---|---|
EP4072145A1 (en) | 2022-10-12 |
KR20230169271A (ko) | 2023-12-15 |
US20240185472A1 (en) | 2024-06-06 |
JP2024516538A (ja) | 2024-04-16 |
WO2022213568A1 (en) | 2022-10-13 |
BR112023020636A2 (pt) | 2023-12-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN116724212A (zh) | 熵编码/解码自旋传感器头捕获的点云几何数据的方法和装置 | |
CN117121483A (zh) | 对由自旋传感器头捕获的点云几何数据进行编码/解码的方法和装置 | |
WO2022213570A1 (en) | Method and apparatus of encoding/decoding point cloud geometry data captured by a spinning sensors head | |
KR20230121865A (ko) | 포인트 클라우드 지오메트리 데이터를 부호화/복호화하는구면 좌표의 양자화 방법 및 장치 | |
WO2022213569A1 (en) | Method and apparatus of encoding/decoding point cloud geometry data captured by a spinning sensors head | |
US20240333972A1 (en) | Method and apparatus of encoding/decoding point cloud captured by a spinning sensors head | |
WO2022213572A1 (en) | Method and apparatus of encoding/decoding point cloud geometry data captured by a spinning sensors head | |
WO2023123261A1 (en) | Method and apparatus of encoding/decoding point cloud geometry data | |
WO2022134753A1 (en) | Method and apparatus of encoding/decoding point cloud geometry data captured by a spinning sensors head | |
RU2824307C2 (ru) | Способ и устройство для кодирования/декодирования геометрических данных облака точек, захваченных при помощи вращающейся измерительной головки | |
RU2818299C1 (ru) | Способ и устройство квантования сферических координат, используемых для кодирования/декодирования данных геометрии облака точек | |
US20240305821A1 (en) | Method and apparatus of encoding/decoding point cloud geometry data sensed by at least one sensor | |
WO2023050951A1 (en) | Method and apparatus of encoding/decoding point cloud geometry data sensed by at least one sensor | |
WO2023050953A1 (en) | Method and apparatus of encoding/decoding point cloud geometry data sensed by at least one sensor | |
CN117957571A (zh) | 对由至少一个传感器感测到的点云几何数据进行编码/解码的方法和装置 | |
CN117957570A (zh) | 对由至少一个传感器感测到的点云几何数据进行编码/解码的方法和装置 | |
CN117693769A (zh) | 编码/解码由旋转传感器头捕获的点云的方法和装置 | |
CN118613870A (zh) | 编码/解码点云数据的切片的方法和装置 | |
CN118077205A (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 |