CN118339840A - 编码/解码感测的点云几何数据的方法和装置 - Google Patents
编码/解码感测的点云几何数据的方法和装置 Download PDFInfo
- Publication number
- CN118339840A CN118339840A CN202280079993.9A CN202280079993A CN118339840A CN 118339840 A CN118339840 A CN 118339840A CN 202280079993 A CN202280079993 A CN 202280079993A CN 118339840 A CN118339840 A CN 118339840A
- Authority
- CN
- China
- Prior art keywords
- data
- sensing
- point cloud
- point
- sequential
- 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 93
- 238000004590 computer program Methods 0.000 claims description 6
- 230000005540 biological transmission Effects 0.000 description 37
- 230000008569 process Effects 0.000 description 32
- 230000015654 memory Effects 0.000 description 29
- 238000004891 communication Methods 0.000 description 26
- 238000012545 processing Methods 0.000 description 20
- 239000000523 sample Substances 0.000 description 20
- 230000006835 compression Effects 0.000 description 17
- 238000007906 compression Methods 0.000 description 17
- 238000010586 diagram Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 9
- 230000011664 signaling Effects 0.000 description 8
- 230000008901 benefit Effects 0.000 description 7
- 238000001514 detection method Methods 0.000 description 7
- 230000000670 limiting effect Effects 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 5
- 238000012937 correction Methods 0.000 description 3
- 239000011521 glass Substances 0.000 description 3
- 230000036961 partial effect Effects 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- VBRBNWWNRIMAII-WYMLVPIESA-N 3-[(e)-5-(4-ethylphenoxy)-3-methylpent-3-enyl]-2,2-dimethyloxirane Chemical compound C1=CC(CC)=CC=C1OC\C=C(/C)CCC1C(C)(C)O1 VBRBNWWNRIMAII-WYMLVPIESA-N 0.000 description 2
- 238000005516 engineering process 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
- 238000013139 quantization Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000003936 working memory Effects 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 238000005265 energy consumption Methods 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
- 230000004807 localization Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000002829 reductive effect Effects 0.000 description 1
- 238000002310 reflectometry Methods 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 230000000153 supplemental effect Effects 0.000 description 1
- 238000012876 topography Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Classifications
-
- 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
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Arrangements For Transmission Of Measured Signals (AREA)
Abstract
提供了编码/解码点云几何数据的方法和装置,点云几何数据由与传感器索引相关联的至少一个传感器感测,点云几何数据由占用二维空间的一组离散位置的某些离散位置的有序粗略点表示,每个粗略点通过顺序索引而被定位于二维空间内,从与能够感测由所述粗略点表示的点云的点的传感器相关联的传感器索引以及与点云的点被感测到的感测时刻相关联的样本索引限定该顺序索引。编码方法包括:获得(110)代表与感测数据相关联的顺序索引的至少一个范围的感测覆盖数据(SCD);并将(120)所述感测覆盖数据(SCD)编码到比特流中。
Description
相关申请的交叉引用
本申请要求欧洲专利申请No.21306845.5的优先权和利益,该申请于2021年12月20日提交,其全部内容通过引用并入本文。
技术领域
本申请一般涉及点云压缩,并且特别地涉及对由至少一个传感器感测的点云几何数据进行编码/解码方法和装置。
背景技术
本节旨在向读者介绍领域的各个方面,这些方面可以与下面描述和/或要求的本公开的至少一个实施例的各个方面有关。此讨论被认为有助于为读者提供背景信息,以促进更好地理解本公开的各个方面。
作为表示3D数据的格式,点云最近受到了关注,因为它们在表示所有类型的物理对象或场景方面具有广泛的能力。点云可用于各种目的,诸如文化遗产/建筑物,其中以3D方式扫描诸如雕像或建筑物的对象,以便在不发送或不访问对象的情况下共享对象的空间配置。此外,它也是一种确保保存对象的知识的方法,以防它可能被破坏;例如,被地震破坏的寺庙。这种点云通常是静态的、彩色的和巨大的。
另一个用例是在地形学和制图学中,其中使用3D表示允许地图不限于平面,并且可以包括浮雕。谷歌地图现在是3D地图的一个很好的示例,但使用网格而不是点云。然而,点云可以是一种适合3D地图的数据格式,并且这种点云通常是静态的、彩色的和巨大的。
虚拟现实(VR)、增强现实(AR)和沉浸式世界最近成为热门话题,被许多人预见为2D平面视频的未来。它的基本理念是让观众沉浸在周围的环境中,而标准电视只允许观众看到他/她面前的虚拟世界。根据观众在环境中的自由度,沉浸感有几个层次。点云是分布VR/AR世界的良好格式候选。
汽车行业,特别是可预见的自主驾驶汽车,也是点云可被密集使用的领域。自主驾驶汽车应该能够“探测”其环境,基于检测到的它们紧邻对象的存在和性质以及道路配置做出良好的驾驶决策。
取决于用例,点云可以具有数千到数十亿个点,用于制图应用。点云的原始表示要求每个点的比特数非常多,每个笛卡尔坐标x、y或z至少有12个比特,并且可选地为更多的比特用于(一个或多个)属性,例如3乘以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)
重要的用例是传输由安装在移动车辆上的至少一个传感器感测到的稀疏几何数据。这通常需要简单且低延迟的装载编码器。要求简单性,因为编码器很可能部署在并行执行其他处理(诸如(半)自主驾驶)的计算单元上,从而限制了点云编码器可用的处理能力。还要求低延迟以允许从汽车到云端的快速传输,以便基于多辆车辆采集实时查看本地交通,并基于交通信息采取足够快的决策。虽然使用5G可以使传输延迟足够低,但编码器本身不应因为编码而引入太多延迟。此外,压缩性能非常重要,因为从数百万辆汽车到云端的数据流预计将非常庞大。
G-PCC中已经利用了与旋转激光雷达感测的稀疏几何数据相关的特定先验,并已经导致了非常显著的压缩增益。
首先,G-PCC利用来自旋转激光雷达头10的感测的仰角(相对于水平地面),如图1和图2所示。激光雷达头10包括一组传感器11(例如激光器),这里示出有5个传感器。旋转激光雷达头10可以围绕竖直轴z旋转,以感测物理对象的几何数据。激光雷达感测到的几何数据用球坐标(r3D,φ,θ)表示,其中r3D是点P到激光雷达头的中心的距离,φ是激光雷达头相对于参考物旋转的方位角,以及θ是旋转激光雷达头10的传感器k相对于水平参考平面的仰角。
已经在激光雷达感测的数据上观察到沿方位角的规律性分布,如图3所示。此规律用于G-PCC中以获得点云的准1D表示,其中,直到噪音,只有半径r3D属于连续的值范围,而角度φ和θ只取离散数量的值,至I-1,其中I是用于点的感测的方位角度的数量,以及至J-1,其中J是旋转激光雷达头10的传感器的数量。基本上,G-PCC表示二维(离散)角坐标空间(φ,θ)上的激光雷达感测的稀疏几何数据,如图3所示,以及每个点的半径值r3D。
通过在球坐标空间中,使用角度的离散性质基于先前编码的点来预测当前点的位置,在G-PCC中利用了这种准1D性质。
更准确地说,通过使用上下文自适应熵编码器对节点内的点的直接位置进行熵编码。然后,从点位置到角坐标(φ,θ)的局部转换以及这些角坐标相对于从先前编码的点获得的离散角坐标(φi,θj)的位置获得上下文。使用此角坐标空间的准1D性质(r2D,φi,θj),预测树直接编码角坐标(r2D,φ,θ)中的点位置的第一版本,其中r2D是水平xy平面上的投影半径,如图4所示。然后,球坐标(r2D,φ,θ)转换为3D笛卡尔坐标(x,y,z),并编码xyz残差来解决坐标转换的误差,仰角和方位角的近似以及潜在的噪声。
通过使用旋转传感器头感测点云的稀疏几何数据具有一些缺陷,并且可以使用其他类型的传感器头。
旋转传感器头的产生旋转(转动)的机械部件容易破损,而且成本很高。同样,通过构造,视角必然是2π。这不允许以高频率感测特定的感兴趣区域,例如,在车辆前面感测可能比在车辆后面感测更有趣。实际上,在大多数情况下,当传感器附接到车辆时,车辆本身会遮挡大部分2π视角,并且不需要感测被遮挡的视角。
最近出现了新型传感器,即参数传感器,允许更灵活地选择待感测的区域。在大多数的最近设计中,传感器可以更自由地并且以电子方式(从而避免脆弱的机械部件)移动,以在3D场景中获得各种感测路径,如图5所示。图5中示出了一组4个传感器。它们的相对感测方向,即方位角和仰角,相对于彼此是固定的,但是它们总体上跟随二维角坐标(φ,θ)空间上的虚线描绘的可编程感测路径来感测场景。然后可以沿着感测路径规律地感测点云的点。当检测到感兴趣区域R时,一些传感器头也可以通过增加其感测频率来调整其感测频率,如图6所示。这种感兴趣区域R可能与例如在前一帧中先前分段的或在感测期间动态分段的接近对象、移动对象、或任何对象(行人,其他车辆等)相关联。图7示意性地示出了感测路径的另一个示例(典型的之字形感测路径),该感测路径由包括两个传感器的传感器头使用,当检测到感兴趣区域(灰色阴影点和灰色散列点)时,这两个传感器能够增加其感测频率。使用之字形感测路径可有利地用于感测3D场景的有限(方位角)角扇区。因为传感器可以附接到车辆,所以它们的感兴趣的视口必然受到阻挡场景的车辆本身的存在的限制,除非传感器位于汽车的顶部。因此,探测角度有限的传感器受到高度关注,并且更容易集成到车辆中。
如图8所示,包括单个传感器的传感器头也可以用于感测多个位置(图8上的两个竖直位置),例如使用随旋转(此处为竖直旋转)振荡的镜上的反射。在这种情况下,不使用一组传感器,而是使用沿感测路径(这里是之字形感测路径)处于不同角度位置(即在图8中具有不同的仰角)的单个传感器来模拟使用一组多个传感器的感测。
为简单起见,在以下描述和权利要求中,“传感器头”可以指一组物理传感器或模拟一组传感器的一组感测仰角索引。此外,本领域技术人员将理解“传感器”也可以指在每个感测仰角索引位置的传感器。
在关于MPEG 3D图形编码的工作组ISO/IEC JTC 1/SC 29/WG 7中,相对于G-PCC编解码器,命名为L3C2(低延迟低复杂度编解码器)的编解码器正在被考虑以提高激光雷达感测的点云的编码效率。编解码器L3C2提供了点云的点的二维表示(即粗略表示)的示例。代码的描述可以在N00167中在工作组的输出文件(ISO/IEC JTC 1/SC 29/WG 7,MPEG 3D图形编码,“G-PCC中考虑的技术”,2021年8月31日)中找到。
基本上,对于点云的每个感测点Pn,通过转换表示感测点Pn的3D位置的3D笛卡尔坐标(xn,yn,zn),获得与感测点Pn的传感器相关联的传感器索引λn和表示所述传感器的感测角的方位角φn。然后,基于方位角φn和传感器索引λn对点云的点进行排序,例如,首先基于方位角,以及然后基于传感器索引,根据字典顺序。点Pn的顺序索引o(Pn)可以通过以下方式获得:
o(Pn)=φn*K+λn
其中K是传感器的数量。
图9示意性地示出了根据至少一个实施例的粗略表示的有序粗略点。
已感测到点云中的5个点。在粗略表示中,这5个点中的每一个都用粗略点(黑色点)粗略地表示:两个粗略点Pn和Pn+1分别表示在时间t1以角度φc感测的点云中的两个点,以及三个粗略点表示在时间t2以角度φc+Δφ感测的点云的三个点,其中Δφ是方位角基本位移。表示点云的感测点的粗略点称为占用粗略点,以及不表示点云的感测点的粗略点称为未占用粗略点。由于在粗略表示中点云的点是由占用粗略点表示的,因此与点云的点相关联的顺序索引也是与占用粗略点相关联的顺序索引。
点云几何数据的粗略表示然后可以在二维坐标(φ,λ)空间中定义。
也可以为包括旋转传感器或参数传感器的任何类型的传感器头定义粗略表示。粗略表示的定义基于在二维角坐标(φ,θ)空间中的由传感器特征定义的感测路径,二维角坐标空间包括:表示方位角的方位角坐标φ,方位角表示传感器相对于参考物的感测角度;以及表示传感器相对于水平参考平面的仰角的仰角坐标θ。感测路径根据表示点云的感测点的潜在位置的有序粗略点对点云进行感测。每个粗略点由沿感测路径的与感测时刻相关联的一个样本索引s和与传感器相关联的一个传感器索引λ定义。
在图10中,使用了包括两个传感器的传感器头。两个传感器跟随的感测路径用虚线表示。对于每个样本索引s(每个感测时刻),定义两个粗略点。与第一传感器相关联的粗略点用图10上的黑色阴影点表示,以及与第二传感器相关联的粗略点用黑色散列点表示。这两种粗略点中的每个属于由感测路径SP定义的传感器感测路径(虚线)。图11示意地示出了二维坐标(s,λ)空间中的有序粗略点的表示。图10和图11中的箭头说明两个相继的有序粗略点之间的联系。
根据每个粗略点在有序粗略点中的排名,顺序索引o(P)与每个有序粗略点相关联:
o(P)=λ+s*K
其中,K是对于同一样本索引的一组传感器的传感器数量或单个传感器的不同位置的数量,λ是在感测时刻s感测点云的点P的传感器的传感器索引。
图12示出了根据至少一个实施例的粗略表示的有序粗略点。
5个占用粗略点被示出(黑色圆圈):两个粗略点Pn和Pn+1被在感测时刻t1感测的点云的两个点占用(对应于样本索引s1),并且三个粗略点被在感测时刻t2感测的点云的三个点占用(对应于样本索引s2)。
点云几何数据的粗略表示然后可以定义在二维坐标(s,λ)空间中。
给定由点云的第一感测点占用的第一粗略点的顺序索引o(P1)和顺序差Δo,可以递归地重构由点云的感测点P占用的任意占用粗略点的顺序索引o(P):
o(P)=o(P-1)+Δo
对点云几何数据的粗略表示进行编码包括对顺序差Δo进行编码。
在下文中,通过考虑定义在二维坐标(s,λ)空间中的粗略表示来描述本发明。但同样也可以针对定义在二维坐标(φ,λ)空间中的粗略表示进行描述,因为旋转传感器头,诸如激光雷达头,提供了定义在二维坐标(s,λ)空间中的特定粗略表示,其中在每个感测时刻,传感器头的传感器探测对象,并且感测点对应于表示的占用粗略点。
如前所述,点云几何数据由占用二维坐标(s,λ)空间的一组离散位置的一些离散位置的有序粗略点表示。然后,每个占用粗略点,通过与感测与所述占用粗略点相关联的点云的点的传感器相关联的传感器索引以及与点云的点已被感测到的感测时刻相关联的样本索引,定位在二维坐标(s,λ)空间内。
图13示意性地示出了根据相关技术的在汽车领域的点云压缩的系统1。
系统1可包括传感器设备12、编码器13、解码器14和可选的分析设备15和16。
传感器设备12、编码器13、解码器14以及可选的分析设备15和16通过无线或有线通信信道或更一般地通过通信网络连接。
传感器设备12可以包括旋转传感器头或参数传感器头,传感器头根据不同感测方向,即沿着二维坐标(s,λ)空间中的感测路径的不同感测方向或针对二维坐标(s,λ)空间中的不同坐标的不同感测方向,沿时间感测(捕获)(对象的)点。为了执行点感测,传感器设备12的传感器在每个感测方向上发送电磁/光信号,并且如果在给定的感测方向上遇到的第一对象足够近,则通过反射该信号的一部分将其返回给传感器。然后传感器可以从信号的发送和接收之间的时间差估计到对象的距离(对应于r3D),它可以通过提供包括点几何数据(通常坐标(r3D,s,λ)或(r2D,φ,θ),或直接坐标(x,y,z))和其他属性,如颜色,反射率,采集时间戳等的感测数据,对于给定的感测方向(坐标(s,λ))生成点。然后,传感器可以(定期或不定期)通过通信信道(例如传输总线信道)或通过网络向编码器13和/或分析设备15发送呈点数据包形式的感测数据。编码器13可以提供组织成多个块(例如切片)的比特流B,并且每个块可以通过第二通信信道被发送给解码器14,只要它可用/准备好(用于低延迟流)。然后,解码器14可以解码比特流B的接收块,并提供每个块的解码点例如(实时)到外部分析设备16。
在编码器13的输入处还是在解码器14的输出处,点云中的具有缺失点可能有不同的原因。例如,在感测设备12和编码器13(或分析设备15)之间传输点数据包的期间,或者在编码器13和解码器14之间传输感测数据的块的期间,可能会发生传输故障。在最好的情况下,传输失败的点数据包或感测数据的块可以在稍后重传。在最坏的情况下,它会完全丢失,在此点数据包或此数据块中的感测数据会丢失。最坏的情况可能发生在低延迟传输场景中,其中不可靠的传输协议用于提高延迟,并允许丢弃太晚的信息(信息太晚主要是因为传输/重传问题和重传延迟)。
在汽车应用中,在没有点的情况下,可以假设没有对象。此假设可能是错误的,并且基于此假设做出的自动决策可能会产生戏剧性的后果。例如,一辆自主驾驶汽车假设给定区域内没有任何对象,因为没有接收到该区域的感测数据,如果由于感测故障或传输问题而没有点,这将会变得危险。
传感器或点云编解码器无法提供解决方案,以指示对于给定感测方向没有感测数据的可靠性:在G-PCC中,假设旋转传感器的完全“旋转”(或等效于参数化传感器沿感测路径的完整的感测周期)可以提供点云帧(实例):没有任何东西可以指示传感器是否真的感测到由完全旋转或感测路径定义的所有感测方向。
此外,对于实际的实时应用,考虑旋转传感器的完整“旋转”或完整感测周期并不被认为是良好实践:如果等待完整的帧来处理,在旋转或路径开始时感测的数据可能会变得过时/太晚,因为采集需要时间。那么,更好的实践是将数据分块处理,这样可以更快地可用。类似地,目前没有任何东西指示在块/切片中完全旋转或感测路径的哪个“部分”(主要是角度部分)真正被传感器覆盖。
本公开的至少一个实施例是考虑到上述情况而设计的。
发明内容
为了提供对本公开的某些方面的基本理解,下一节给出至少一个实施例的简化摘要。此摘要不是实施例的广泛概述。它不意在识别实施例的关键或关键元素。下面的摘要仅以简化形式呈现至少一个实施例的某些方面,作为本文其他地方提供的更详细描述的前言。
根据本公开的第一方面,提供了将与传感器索引相关联的至少一个传感器感测到的点云几何数据编码为比特流的方法,点云几何数据由占用二维空间的一组离散位置的某些离散位置的有序粗略点表示,每个粗略点通过顺序索引而被定位于二维空间内,从与可感测由所述粗略点表示的点云的点的传感器相关联的传感器索引以及与点云的点可被感测到的感测时刻相关联的样本索引限定该顺序索引。方法包括:
-获得代表与感测数据相关联的顺序索引的至少一个范围的感测覆盖数据;以及
-将所述感测覆盖数据编码到比特流中。
在一个实施例中,方法进一步包括将点云几何数据编码到比特流中。
在一个实施例中,基于感测覆盖数据将点云几何数据编码到比特流中。
根据本公开的第二方面,提供了一种从比特流中解码由与传感器索引相关联的至少一个传感器感测的点云几何数据的方法,点云几何数据由占用二维空间的一组离散位置的某些离散位置的有序粗略点表示,每个粗略点通过顺序索引而被定位于二维空间内,从与可感测由所述粗略点表示的点云的点的传感器相关联的传感器索引以及与点云的点可被感测到的感测时刻相关联的样本索引限定该顺序索引。该方法包括从比特流中解码感测覆盖数据。
在一个实施例中,方法进一步包括从比特流中解码点云几何数据。
在一个实施例中,从比特流中解码点云几何数据是基于感测覆盖数据。
在一个实施例中,感测覆盖数据的顺序索引的每个范围可以由顺序索引的下界和顺序索引的上界来界定。
在一个实施例中,可以将下界和上界编码到比特流中/从该比特流中解码作为起始顺序索引和顺序索引的数量。
在一个实施例中,将标志编码到比特流中/从比特流中解码以指示是否可以在感测覆盖数据中存在顺序索引的多于一个范围。
根据本公开的第三方面,提供了由根据本公开的第一方面的方法之一生成的编码的点云数据的比特流。
根据本公开的第四方面,提供了一种将点云编码为编码的点云数据的比特流的装置。装置包括用于执行根据本公开的第一方面的方法的器件。
根据本公开的第五方面,提供了一种从编码的点云数据的比特流中解码点云的装置。装置包括用于执行根据本公开的第二方面的方法的器件。
根据本公开的第六方面,提供了一种包括指令的计算机程序产品,当程序由一个或多个处理器执行时,该指令使一个或多个处理器执行根据本公开的第一方面的方法。
根据本公开的第七方面,提供了一种携带用于执行根据本公开的第一方面的方法的程序代码的指令的非暂时性存储介质。
根据本公开的第八方面,提供了一种包括指令的计算机程序产品,当程序被一个或多个处理器执行时,该指令使该一个或多个处理器执行根据本公开的第二方面的方法。
根据本公开的第九方面,提供了一种携带用于执行根据本公开的第二方面的方法的程序代码的指令的非暂时性存储介质。
至少一个实施例的具体性质以及该至少一个实施例的其他目的、优点、特征和用途将从以下结合附图对示例的描述中变得显而意见。
附图说明
现在将以示例的方式参考附图,附图示出了本公开的示例性实施例,其中:
图1示意性地示出了根据相关技术的传感器头的侧视图及其一些参数;
图2示意性地示出了根据相关技术的传感器头的俯视图及其一些参数;
图3示意性地示出了根据相关技术的由旋转传感器头感测到的数据的规律分布;
图4示意性地示出了根据相关技术的3D空间中点云的点的表示;
图5示意性地示出了根据相关技术的能够沿着可编程感测路径感测真实场景的传感器头的示例;
图6示意性地示出了根据相关技术的传感器头的示例,该传感器头能够根据不同感测频率沿着可编程感测路径感测真实场景;
图7示意性地示出了根据相关技术的传感器头的示例,该传感器头能够根据不同感测频率沿着可编程之字形感测路径感测真实场景;
图8示意性地示出了能够根据不同感测频率沿着可编程之字形感测路径感测真实场景的单个传感器头;
图9示意性地示出了根据至少一个示例性实施例的粗略表示的有序粗略点;
图10示意性地示出了根据一个示例性实施例的粗略点的排序的示例;
图11示意地示出了二维坐标(s,λ)空间中的有序粗略点的表示;
图12示意性地示出了根据至少一个示例性实施例的粗略表示的有序粗略点;
图13示意性地示出了根据相关技术在汽车领域中的点云压缩的系统;
图14示意性地示出了根据至少一个实施例将点云几何数据编码为编码的点云数据的比特流的方法100的步骤的框图;
图15示出根据至少一个实施例从比特流中解码点云几何数据的方法200的步骤的框图;
图16示出了根据至少一个实施例的与感测数据相关联的顺序索引的单个范围所表示的感测覆盖数据SCD的示例;
图17示出了根据至少一个实施例的在不可靠传输后的图16的感测覆盖数据SCD的示例;
图18示出了根据至少一个实施例的与感测数据相关联的顺序索引的多个范围所表示的感测覆盖数据SCD的示例;
图19示出了根据至少一个实施例的在感测设备和编码器之间的不可靠传输后的图18的感测覆盖数据SCD的示例;
图20示出了根据至少一个实施例的感测设备发送的数据包的示例,该数据包在不可靠传输后被编码器接收;以及
图21示出了在其中实现各种方面和实施例的系统的示例的框图。
相似的附图标记可以用在不同的图中来表示相似的组件。
具体实施方式
以下参照附图更完整地描述实施例中的至少一个,其中图示实施例中的至少一个的示例。然而,实施例可以以许多替代形式体现,并且不应被解释为限于本文所述的示例。因此,应该理解的是,没有意图将实施例限制到所公开的特定形式。相反,本公开旨在涵盖落入本公开的精神和范围内的所有修改、等同物和替代方案。
至少一个方面通常涉及点云编码和解码,另一个方面通常涉及传输所提供或编码的比特流,并且另一个方面涉及接收/访问解码的比特流。
此外,本方面并不限于MPEG标准,诸如与点云压缩相关的MPEG-I第5部分或第9部分,并且可被应用于例如其他标准和推荐,无论是预先存在的还是未来开发的,以及和任何此类标准和推荐(包括MPEG-I第5部分和第9部分)的扩展。除非另有说明,或技术上排除,本公开中描述的方面可以单独或组合使用。
本发明涉及编码/解码由与传感器索引相关联的至少一个传感器基于上述讨论的点云的粗略表示感测的点云几何数据:点云几何数据由占用二维空间的一组离散位置的某些离散位置的有序粗略点表示,每个粗略点通过顺序索引而被定位于二维空间内,从与可感测由所述粗略点表示的点云的点的传感器相关联的传感器索引以及与点云的点可被感测到的感测时刻相关联的样本索引限定该顺序索引。编码方法包括获得代表与感测数据相关联的顺序索引的至少一个范围的感测覆盖数据以及将所述感测覆盖数据编码为比特流,以及解码方法包括从比特流中解码感测覆盖数据。
感测覆盖数据代表针对其传感器设备已获得感测数据的粗略表示的顺序索引的一个或多个范围。顺序索引的范围可以对应于提供感测数据的传感器的不同感测方向。
如果感测设备与编码器之间发生传输错误,或者编码器被配置为从点云中选择性地移除某些感测方向,编码器可以通过感测覆盖数据指示感测覆盖的缺失或移除部分。此外,即使编码器和解码器之间发生传输错误,解码方法也能够确定接收到的比特流(的块)的感测覆盖。然后,解码器可以将此信息提供给另一个应用。解码器还可以为粗略表示的粗略点解码点云几何数据(以及可选的其他关联感测数据),粗略点的顺序索引属于由解码的感测覆盖数据所指示的顺序索引的范围,并且针对该粗略点已接收到感测数据。
将感测覆盖数据编码到比特流中/从比特流中解码也是有利的,因为如果解码的点云中没有提供感测数据(例如,在传输期间已丢失了感测数据),解码的感测覆盖数据则可用于向与解码器连接的分析设备(或使用点云数据或感测覆盖数据的其他设备或应用)进行指示。感测覆盖数据指示对于给定感测方向没有感测数据的可靠性,因此可以指示传感器是否感测了由旋转传感器头的完全旋转或通过遵循完整的感测路径所限定的所有感测方向。感测覆盖数据可用于改进所述本地分析设备所采取的决策。例如,解码的感测覆盖数据可以改进汽车领域中的自动决策。
将感测覆盖数据编码到比特流中/从比特流中解码也是有利的,因为它可以通过允许对比特流的块进行空间定位,并因此只允许解码对特定应用有用的点云的部分,来减少解码应用中的能量消耗。在一个示例中,应用可以利用感测覆盖数据来指导解码过程,通过要求解码器仅解码接收块的子集。在另一个示例中,应用可能接收到来自多辆汽车的多个比特流,并使用感测覆盖数据快速地在空间上定位块,最终选择感兴趣的块对它们进行解码,并融合来自不同比特流的解码的点云信息(的部分),以将其提供给另一个应用。
在变体中,为了提高压缩效率,编码器/解码器可以由感测覆盖数据指导以对点云进行编码/解码。例如,将点云几何数据和/或属性数据编码到比特流中/从比特流中解码是基于感测覆盖数据的,因此将感测覆盖数据编码到比特流中/从比特流中解码也具有优势,因为它可以改进从部分探测感测路径获得的点云的压缩。
图14示出根据至少一个实施例的将点云几何数据编码到编码的点云数据的比特流B中的方法100的步骤的框图。
在步骤110中,得到感测覆盖数据SCD。感测覆盖数据SCD代表与感测数据相关联的顺序索引的少一个范围。
在步骤120中,将感测覆盖数据SCD编码到比特流B中。
在一个实施例中,在步骤130中,点云几何数据被编码到比特流B中。
在变体中,基于感测覆盖数据SCD将点云几何数据编码(130)到比特流中。
图15示出了根据至少一个实施例的从比特流中解码点云几何数据的方法200的步骤的框图。
解码方法200由编码方法100直接推导出来。
在步骤210中,从比特流B中解码感测覆盖数据SCD。
在一个实施例中,在步骤220中,从比特流B中解码点云几何数据。
在变体中,从比特流中解码(220)点云几何数据是基于感测覆盖数据SCD。
在步骤110的一个实施例中,传感器设备12向编码器13发送点数据包,每个点数据包包含数据包感测覆盖数据,该数据包感测覆盖数据允许确定在该点数据包所包含的点的感测周期期间传感器已经覆盖的所有感测位置,甚至针对其没有检测到点的位置。感测覆盖数据SCD随后可以由编码器13从在它已接收并由传感器设备12发送的点数据包中包含的数据包感测覆盖数据中得出。感测覆盖数据SCD与传感器的感测覆盖精确匹配。
在变体中,感测覆盖数据SCD可以由传感器设备12直接提供,并且编码器13接收感测覆盖数据SCD。
在步骤110的一个实施例中,传感器设备12向编码器13发送点数据包,以由编码器13可以确定每个点数据包的准确数据包感测覆盖数据的方式。感测覆盖数据SCD可以由编码器13从感测设备12发送且已接收的点数据包中得出。
在一个示例中,传感器设备12是旋转激光雷达传感器,它向与预定感测参数相对应的编码器13发送点数据包,例如,每个数据包感测数据针对预定感测持续时间(例如1ms),或针对传感器的预定方位角旋转(例如1°),或针对预定数量的感测方位角步长(例如10);这准许编码器13能够确定每个接收到的点数据包的准确感测覆盖。如果感测设备12和编码器13之间点数据包丢失,编码器能够确定数据包已经丢失,然后可以确定丢失的数据包的准确感测覆盖(或等效地,所有接收到的数据包的准确感测覆盖)。
例如,每个数据包都包含序号(例如,在数据包传输头中,由协议限定),编码器可以根据接收到的数据包中缺失的序号来确定丢失的数据包。
本实施例及其变体具有优势,因为即使感测设备12和编码器13之间发生传输错误,由编码器13获得并由自身编码的感测覆盖数据SCD完美匹配在编码器13编码的(部分)点云的感测周期期间的传感器的有效感测覆盖。因此,与使用编码器估计的感测覆盖数据SCD相比,使用它让分析设备15或16采取决策更优,如下所述。
在步骤110的一个实施例中,感测覆盖数据SCD可以由编码器13仅基于从感测设备12接收到的感测数据来估计并提供。
本实施例具有优势,因为它允许使用没有能力创建感测覆盖数据SCD的传感器设备12,或没有能力提供足够的信息以产生与感测覆盖精确匹配的感测覆盖数据SCD的传感器设备12,或针对其没有预定感测参数可用的传感器设备12。分析者基于这些估计的感测覆盖数据SCD所采取的决策可能是次优的,但仍然比没有提供感测覆盖数据SCD给分析设备要好。
感测覆盖SCD可以由相对于与点云的单个点相关联或与点数据包相关联的感测数据(如果没有检测到对象,则可能不包含点)的感测的诸如时间戳和/或时间范围(即时间持续)等数据提供。
在实施例中,感测覆盖数据SCD可以代表与感测数据相关联的顺序索引的单一范围。顺序索引的单个范围通常与表示整个点云帧(即点云的时间实例)的粗略点相关联。
本实施例具有优势,因为它支持点云帧的整个感测数据表示不完整的感测周期的情况,例如,小于完整转弯的方位角旋转或沿着感测路径的部分感测。
图16示出了根据至少一个实施例的由与感测数据相关联的顺序索引的单个范围所表示的感测覆盖数据SCD的示例。
在本示例中,感测设备12提供了由白色方块表示的N个感测数据的数据包,每个数据包包含与点云中的点相关联的感测数据。如果没有点被感测到,则感测数据的数据包可能不包含点。这些感测数据可以对应于具有不同感测方向的感测设备12的不同传感器。例如,当感测设备12通过感测路径(参数化传感器头)或通过方位角和方向角(旋转传感器头)指导时,可以获得这N个感测数据的数据包。例如,感测数据确定与点或点数据包相关联的点几何数据。每个感测数据的数据包'i'在确定的时间戳ti处发送,并且包含在从时间戳t(i-1)开始直到时间戳ti的时间间隔[t(i-1),ti)期间感测的点的所有感测数据。在本示例中,发送N个感测数据的数据包用于传输在时间间隔[t0,tN)期间感测的点的感测数据,每个数据包在从t1到tN的时间戳ti处发送。与这些数据包内容相关联的数据包的长度和点云的点数可能相等或不相等。在示例中,第一数据包在时间戳t0处开始,并且在时间戳t1处结束,第二数据包在时间戳t1处开始,并且在时间戳t2处结束,以此类推。在本示例中,感测设备的所有传感器获得了完整感测过程(旋转传感器的完全旋转或完整的感测路径)的感测数据。感测覆盖数据SCD代表了与在时间戳t0到tN之间的感测数据相关联的顺序索引的单个范围。
图17示出了根据至少一个实施例的在不可靠传输后的图16的感测覆盖数据SCD的使用的示例。
在本示例中,假设在感测设备12和编码器13之间传输图16(黑色方块)的感测数据期间丢失了一些感测数据的数据包,编码器可以识别出发生的一些传输错误,并提供感测覆盖数据SCD,解码器可以使用SCD来识别哪些是比特流中针对其没有提供感测数据的顺序索引,例如,编码器可以在比特流范围中提供与未接收到的感测数据的数据包相关联的时间戳或顺序索引,或者可替代地,它可以在比特流范围中提供与接收到的感测数据的数据包相关联的时间戳或顺序索引。在变体中,编码器/解码器对比特流中针对其未提供感测数据的时间戳或顺序索引的范围所对应的粗略位置的点信息进行编码/解码。这允许减少粗略表示的比特流大小。
在一个实施例中,感测覆盖数据SCD可以代表与感测数据相关联的顺序索引的多个范围。顺序索引的每个范围通常与表示点云帧的块(例如切片)的粗略点相关联。
在编码器侧,顺序索引的多个范围的并集对应于点云帧的感测覆盖数据SCD。
在解码器侧,接收用于解码的块。通过对顺序索引的解码范围进行分组,可以得到感测覆盖数据SCD。因此,解码器可以很容易地支持块的丢失。当块丢失时,接收到的块的并集变为部分接收到的点云,解码器仍然能够确定部分接收到的点云帧的针对其感测数据丢失的所有顺序索引:部分接收到的点云帧的感测覆盖数据仅对应于每个接收到的块的感测覆盖数据的并集。
本实施例有利于支持编码器13和解码器14之间的不可靠传输。本实施例也非常适合于不可靠传输的低延迟流。
本实施例还可用于传感器12和编码器13之间丢失感测数据的数据包的情况。为了通知解码器14感测数据缺失,编码器可以在数据包丢失之前的最后一个接收到的感测数据的数据包中在由传感器覆盖的最后一个顺序索引上结束块/切片,并可以在丢失的数据包之后的第一个接收到的感测数据的数据包中在由传感器覆盖的第一顺序索引上开始新的块/切片。编码器13还在感测覆盖数据SCD中指示与编码的块/切片对应的感测数据相关联的顺序索引的多个范围。例如,在图17的示例中,编码器可以编码包含在时间戳t0和t2之间感测的点的第一块/切片,包含在t4和t(N-6)之间感测的点的第二块/切片和包含在t(N-3)和tN之间感测的点的第三块/切片。感测覆盖数据SCD包括与时间戳t0和t2之间的感测数据相关联的顺序索引的第一范围,与时间戳t4和t(N-6)之间的感测数据相关联的顺序索引的第二范围,以及与时间戳t(N-3)和tN之间的感测数据相关联的顺序索引的第三范围。
图18示出了根据至少一个实施例的与感测数据相关联的顺序索引的多个范围所表示的感测覆盖数据SCD的示例。
在图18的示例中,感测覆盖数据SCD包括与时间戳t0和t1之间已进行感测的所有顺序索引相关联的顺序索引的第一范围,因此包括在这两个时间戳之间感测的关联感测数据的顺序索引。感测覆盖数据SCD还包括与在时间戳t1和t2之间感测的感测数据相关联的顺序索引的第二范围。
图19示出了根据至少一个实施例的在感测设备12和编码器13之间进行不可靠传输后的图18的感测覆盖数据SCD的示例。
在本示例中,编码器被配置为提供并发送包含时间间隔[t0,t1)中获取的感测数据的第一块/切片(对应于图18中的感测覆盖数据SCD的顺序索引的第一范围)和用于时间间隔[t1,t2)的第二块/切片(对应于图18中的感测覆盖数据SCD的顺序索引的第二范围)。假设图18(黑色方块)的感测数据的传输期间有部分感测数据丢失,编码器13可以从感测覆盖数据SCD的顺序索引的第一范围识别发生的一些传输错误,以及从感测覆盖数据SCD的顺序索引的第二范围识别发生的一些传输错误,从而可以识别哪些是针对其感测数据丢失(或由于传感器没有尝试感测它们而缺失)的缺失顺序索引的范围。然后,编码器13可以在感测覆盖数据SCD中包括缺失顺序索引的范围。编码器/解码器不会对这些缺失顺序索引进行编码/解码。此外,感测覆盖数据SCD中每个未接收的顺序索引的范围可以根据带宽和/或延迟限制在下一个块/切片(如果稍后被编码器接收)中跳过或重传。
如果感测覆盖数据SCD通过先进的压缩技术(如上下文自适应算术编码,例如和/或使用对其他压缩点云数据的依赖性)压缩到比特流中,对于某些高级应用来说,获取SCD可能太复杂,例如,高级应用只需要分析多个传感器头(例如嵌入在不同汽车中的传感器头)对某个区域的感测覆盖。因此,感测覆盖数据SCD通常必须在比特流B中易于解析的部分中呈现。此外,为了更好地支持低延迟流,感测覆盖数据SCD可以在块的头中提供(例如在G-PCC比特流的切片头中)。在这些比特流部分中,通常只允许简单的解析操作。在这种情况下,每个块/切片头可能包含与块/切片本身相关的感测覆盖数据SCD。
在块或点云帧内,与感测数据无关联的顺序索引大多属于连续顺序索引的一个或多个范围,特别是在尚未执行感测(例如传感器故障)或尚未获得感测数据时(例如,由于传感器设备12和编码器13之间的点数据包丢失,感测数据不可用)。
在一个实施例中,感测覆盖数据SCD可以代表与感测数据无关联的顺序索引的至少一个范围,即针对其未执行感测或针对其未获得感测数据的顺序索引的范围(即缺失顺序索引的范围)。
本实施例具有优势,因为代表与感测数据无关联的顺序索引的至少一个范围的感测覆盖数据SCD通常可以比代表与感测数据相关联的顺序索引的至少一个范围的感测覆盖数据SCD更紧凑地表示:范围可以由起始点(例如起始顺序索引)和长度(例如顺序索引的数量)表示。表示缺失顺序索引的范围的起始点的成本通常与表示与感测数据相关联的顺序索引的范围的起始点的成本相似。但是,预期缺失顺序索引的范围将比与感测数据相关联的顺序索引的范围短,因此,对于缺失顺序索引的范围,例如使用可变长度码表示范围长度的成本将更小。
在变体中,可以使用标志来让编码器13在两种表示(与感测数据无关联的顺序索引的范围或与感测数据相关联的顺序索引的范围)之间选择其中表示其感测覆盖数据SCD的成本较低那种表示的可能性。
可以注意到,如果感测覆盖数据SCD代表与感测数据相关联的顺序索引的至少一个范围,可以从完整的感测过程(事先已知)中与感测数据相关联的顺序索引的所有范围的并集可以轻松地得出与感测数据无关联的顺序索引的至少一个范围,因为所述与感测数据相关联的顺序索引的范围的并集是完整感测周期中与感测数据无关联的范围的并集的补充:已知完整感测周期的第一顺序索引和最后顺序索引,如果对一种表示的范围进行并集,则完整感测周期的第一顺序索引和最后顺序索引之间的所有间隙都对应于另一种表示的并集。
在一个实施例中,感测覆盖数据SCD的顺序索引的每个范围可以由下界LB和上界UB界定。
在一个变体中,下界LB可以是感测周期的开始时间,上界UB可以是感测周期的结束时间。例如,当感测周期使用感测路径时,可以使用此方法。开始和结束时间可以从感测路径的特定样本索引中限定。
在一个实施例中,LB下界和UB上界可以是使用旋转传感器头的感测周期的起始和结束方位角。
在一个实施例中,感测覆盖数据SCD的顺序索引的每个范围可以由顺序索引的下界LB和上界UB来界定。
在下文中,将只讨论包括顺序索引的至少一个范围的感测覆盖数据SCD,但如果感测覆盖数据SCD包括时间的范围或方位角的范围而不是顺序索引的范围,则下面详细的所有实施例和变体也适用。
在变体中,LB下界和UB上界可被编码到比特流B中/从比特流B中解码作为起始顺序索引S和结束顺序索引E。
在变体中,LB下界和UB上界可被编码到比特流B中/从比特流B中解码作为起始顺序索引S和顺序索引的数量M。
通过将起始顺序索引S与顺序索引的数量M相加可以得出结束顺序索引E,或者反之则可以得到顺序索引的数量M作为结束顺序索引E与起始顺序索引S之差。
在变体中,起始顺序索引S,结束顺序索引E或顺序索引的数量M可被编码到切片头或比特流B的几何参数集中/从切片头或比特流B的几何参数集中解码。
在变体中,可以通过以下来获得参考几何参数集的第N个点云帧或块的第一顺序索引S:将存在于序列参数集或几何参数集(例如)中的起始顺序索引S(例如帧序列起始顺序索引或块序列起始顺序索引)与帧索引或块索引(例如N-1)乘以点云帧或块(例如,如序列参数集或几何参数集中指示)覆盖的顺序索引的数量M的结果相加:S+(N-1)*M。点云帧或块的最后顺序索引E也可以用同样的方法得到,通过将点云帧索引或块索引加1,再将乘法结果减去1:S+N*M-1。
此变体的优点是减少了编码/解码每个点云帧或块的边界LB和UB所需的语法,但它的缺点是每个帧或每个块强制使用常数数量的M个顺序索引。
在变体中,可以将二进制数据(标志),例如标记为geom_constant_sensing_coverage_flag,编码到比特流B中/从比特流B中解码,例如在几何参数集中,以便在常数数量M个顺序索引或为每个点云帧或切片编码/解码的M个顺序索引之间进行选择。
在一个实施例中,感测覆盖数据SCD可进一步包括与顺序索引的每个范围的每个顺序索引相关联的探测状态。探测状态指示感测数据是否与顺序索引的范围的顺序索引相关联。
本实施例具有优势,因为它更好地支持感测设备12和编码器13之间的点云帧或块的孤立点的丢失,并且如果传感器能够报告孤立的感测故障或不确定性,或者如果编码应用希望或需要移除一些孤立点,也可以使用此实施例。
在变体中,探测状态可以编码到比特流B中/从比特流B中解码,例如在切片头中,以增加对感测设备和编码器之间许多孤立点的传输错误或许多孤立的感测故障或不确定性的支持。
在变体中,感测覆盖数据SCD和探测状态可被编码到比特流B中/从比特流B中解码,例如在切片头中,以每个切片为基础(即,切片头中的感测覆盖数据SCD和探测状态代表切片本身的感测覆盖数据SCD)。它对于低延迟流更有效,也非常适于编码器和解码器之间的传输错误。
在一个实施例中,探测状态可以是探测标志,该探测标志指示感测数据是否与感测覆盖数据SCD的顺序索引的范围的顺序索引相关联。
在变体中,探测标志可能是熵编码的。
在一个实施例中,熵编码器为CABAC。
CABAC具有减小比特流大小的优点,但有时仍然需要编码过多的探测标志,并且使每个标志的编解码变得复杂。
在变体中,探测标志可以使用游程编码进行编码/解码。
在变体中,探测标志可被分组为二进制数据的字,这些字可以使用可变长度码(如指数哥伦布码或霍夫曼码)进行编码/解码。
在变体中,与感测数据无关联的顺序索引的范围可能表示针对其未检测到点或探测结果未知的顺序索引的范围。然后,仅针对属于与感测数据无关联的顺序索引的范围的顺序索引,探测标志可被编码到比特流B中/从比特流B中解码。然后,探测标志指示给定顺序索引是对应于无点检测或未知探测结果。
此变体的一个优点是它减少了要编码/解码的探测状态标志的数量。但是编码/解码的探测状态标志的数量可能仍然太大。此外,需要对比特流进行解码得到与感测数据相关联的感测顺序索引,然后从关于与感测数据无关联的顺序索引的探测状态标志中得出关于与感测数据相关联的顺序索引的探测状态标志。
在变体中,与感测数据相关联的顺序索引的至少一个范围的的上下边界可被编码到比特流B中/从比特流B中解码,并且与感测数据无关联的顺序索引的范围的上下界从与感测数据相关联的顺序索引的至少一个范围的上下边界得出,以及也从完整感测过程(预先知道)的开始顺序索引和结束顺序索引得出。
此变体实现起来更简单,因为它意味着只对与感测数据相关联的顺序索引的范围进行并集,而不是对与感测数据无关联的顺序索引的范围进行并集,然后将此并集从完整感测过程(预先知道)的与感测数据相关联的所有潜在顺序索引的并集中移除。
在变体中,从与感测数据相关联的顺序索引的至少一个范围的并集的下界和上界得出起始顺序索引和结束顺序索引。
在一个实施例中,可以在比特流B中,优选在切片头中编码/解码与块内与感测数据相关联的顺序索引的范围的数量、与感测数据相关联的顺序索引的第一范围的起始顺序索引以及该范围的长度(作为顺序索引的数量减1)。
然后,对于块内与感测数据相关联的顺序索引的每个其它范围,与前一个范围末尾的偏移量(-1)和范围的长度被编码到比特流B中/从比特流B中解码,优选在切片头中。
例如,范围的数量、起始顺序索引、范围的长度或偏移量可以使用简单方法来解析指数哥伦布表示,或另一个简单方法来解析可变长度码进行编码/解码。
编码器可能无法从接收到的感测数据中准确地确定与感测数据相关联的顺序索引的范围的边界。例如,当感测设备发送的点数据包不对应于相同数量的顺序索引时,以及感测设备没有在每个数据包中发送所述顺序索引的范围时,就会出现这种情况。
在步骤110的一个实施例中,可能会低估与感测覆盖数据SCD的感测数据相关联的顺序索引的至少一个范围的大小,而高估与感测覆盖数据SCD的感测数据无关联的顺序索引的至少一个范围的大小。
当感测覆盖数据SCD由图13的编码器13估计并提供时,本实施例是有利的。
如图20所示,感测设备12发送了5个不同大小(即点的数量)的点P1、P2、P3、P4、P5和P6的数据包,每个数据包覆盖的顺序索引的数量不同且未知。此外,对于没有检测到点的顺序索引,传感器不发送任何信息,它只发送检测到的点。第二数据包P2和第五数据包P5在传输到编码器13期间丢失。编码器确定在通过通信信道传输过期间丢失了第二和第四点数据包(黑色矩形)。编码器13无法确定并提供准确的感测覆盖数据SCD,因为它不知道每个未接收到的数据包的大小和覆盖(即编码器13不知道传感器对每个数据包感测的顺序索引的数量)。然后,编码器低估了与数据包P1、P3和P4以及P6的感测数据相关联的顺序索引的3个范围的大小,暗示着高估了与感测数据无关联的顺序索引的范围的大小(对应于缺失数据包P2和P5)。
例如,如图所示,编码器接收到了第一、第三、第四和第六点数据包。编码器还确定丢失了第二和第五点数据包(黑色矩形)(例如,在传输协议数据中缺失了数据包编号)。编码器确定感测覆盖数据SCD,该SCD包括与感测数据相关联的顺序索引的三个范围1、2和3。第一范围1以完整感测周期的起始顺序索引开始,或者可替代地以与第一点数据包P1的第一点的感测数据相关联的顺序索引开始,以与点数据包P1的最后一个点(即第一缺失的点数据包P2之前的与感测数据相关联的最后一个点)的感测数据相关联的顺序索引结束。第二范围2以与第三点数据包P3的第一点(即缺失的点数据包P2之后的与感测数据相关联的第一点)的感测数据相关联的顺序索引开始,以与第四点数据包P4的最后一个点(即第二缺失的点数据包P5之前的与感测数据相关联的最后一个点)的感测数据相关联的顺序索引结束。第三范围3以第六点数据包P6的第一点(即缺失的点数据包P5之后的与感测数据相关联的第一点)的感测数据关联的顺序索引开始,以整个感测过程的结束顺序索引结束,或者可替代地以第六点数据包P6的最后一个点的感测数据相关联的顺序索引结束。
传感器可能以比数据包中的第一点的顺序索引更早的顺序索引开始了数据包的感测,和/或以比数据包中的最后一个点的顺序索引更晚的顺序索引完成了数据包的感测,但由于没有检测到任何对象,因此没有为这些顺序索引提供任何点或信息。因此,编码器无法获得此信息,因此与估计的感测覆盖数据SCD的感测数据相关联的顺序索引的3个范围1、2和3与感测(捕获)的现实相比被低估。
步骤110的此实施例确保考虑到感测覆盖数据SCD的外部分析所采取的决策,例如,将永远不会将缺失点(由于信息丢失)视为对象的缺失(针对其未检测到点的顺序索引),因为编码器不能确切地知道感测范围的开始和结束(传感器不为未检测到点的顺序索引发送任何信息)。事实上,通常更可取的是考虑在给定传感器顺序索引处,探测结果是未知的,即使捕获/传感器没有检测和提供任何点;而并非考虑对于给定传感器顺序索引,没有检测到点,但对于其点状态是未知的。在第一种情况下分析部所采取的决策可能更加谨慎,因为状态是未知的(例如所采取的决策是减速一点或预测潜在的变化方向,直到在此方向上点的存在与否是已知的),而在第二种情况下分析部所采取的决策可能更危险(例如没有点,所以所采取的决策是汽车在此方向上继续或者甚至加速)。
在一个实施例中,例如,可以将标记为geom_may_contain_missing_points_flag的标志编码到比特流B中/从比特流B中解码,例如在几何参数集中,以指示在与感测数据相关联的顺序索引的范围的边界之间,与给定顺序索引相关联的感测数据的缺失(即点的缺失)并不总是可靠的,因此可以更仔细地处理点的缺失。
在变体中,可以在比特流B中(例如几何参数集或序列参数集中)编码/从比特流B中解码标志,例如标记为geom_single_sensing_range_flag,以指示感测覆盖数据SCD中是否可以存在顺序索引的多于一个范围。
当感测设备和编码器之间的点数据包传输是可靠的,或者编码器无法检测到感测设备的点数据包丢失时,可以将此标志设置为1。在任何情况下,该标志允许降低编码感测覆盖数据SCD的成本。
在一个变体中,标记为geom_sensing_coverage_present_flag的标志例如,可被编码到比特流B中/从比特流B中解码,例如几何参数集,或序列参数集,以指示是否将感测覆盖数据SCD编码到比特流B中/从比特流B中解码。如果标志指示不提供感测覆盖数据,关于感测覆盖数据SCD的处理是禁用的,并且除了标志没有额外的编码成本。如果该标志指示提供感测覆盖数据SCD,则关于感测覆盖数据SCD的处理是活跃的。
在步骤130的一个实施例中,对点云几何数据的编码/解码可以包括对顺序索引差Δo编码/解码,如上文所讨论的那样。顺序索引差值Δo对应于两个连续顺序索引o(P-1)和o(P)的差值,其中o(P-1)和o(P)可以属于与感测覆盖数据SCD的感测数据相关联的顺序索引的同一个范围,也可以属于感测覆盖数据SCD的两个连续范围。如果P-1和P属于两个连续范围,则Δo被编码为o(P)-o(P-1)-N,其中N是不属于两个连续范围之间的与感测数据相关联的顺序索引的任何范围的顺序索引的数量。
在步骤120的一个实施例中,感测覆盖数据SCD可以被编码到比特流B中/从比特流B中解码作为至少一个补充增强信息(SEI)消息。
此变体的优点在于它不强制要求感测覆盖数据,并且感测覆盖数据可以与已经部署的编码器/编码器一起使用。但是一个缺点是SEI消息可以在传输期间被丢弃(例如在传输级别)。
图21示出了示出实现了各种方面和实施例的系统示例的框图。
系统300可以作为一个或多个设备嵌入,包括下面描述的各种组件。在各种实施例中,可以配置系统300以实现本公开中描述的一个或多个方面。
可以构成系统300的全部或部分的设备的示例包括个人电脑、笔记本电脑、智能手机、平板电脑、数字多媒体机顶盒、数字电视接收器、个人视频录制系统、联网家用电器、联网车辆及其相关联的处理系统、头戴式显示设备(HMD、透视眼镜)、投影仪(投影机)、“洞穴”(包括多个显示器的系统)、服务器、视频编码器、视频解码器、处理来自视频解码器的输出的后处理器,为视频编码器提供输入的预处理器,网页服务器,机顶盒,以及用于处理点云、视频或图像的任何其他设备,或其他通信设备。系统300的元件可以单独地或组合地实施在单个集成电路(IC),多个IC,和/或分立组件中。例如,在至少一个实施例中,系统300的处理和编码器/解码器元件可以跨多个IC和/或分立组件分布。在各种实施例中,系统300可以经由例如通信总线或通过专用输入和/或输出端口通信耦合到其他类似的系统或其他电子设备。
系统300可以包括至少一个处理器310,该至少一个处理器310被配置为执行装载在其中的指令,以实现例如本公开中所述的各个方面。处理器310可以包括嵌入式存储器,输入输出接口,以及各种本领域已知的其他电路。系统300可以包括至少一个存储器320(例如,易失性存储器设备和/或非易失性存储器设备)。系统300可以包括存储设备340,它可以包括非易失性存储器和/或易失性存储器,包括但不限于电可擦除可编程只读存储器(EEPROM)、只读存储器(ROM)、可编程只读存储器(PROM)、随机存取存储器(RAM)、动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM)、闪存、磁盘驱动器和/或光驱。作为非限制性示例,存储设备340可以包括内部存储设备,附接存储设备,和/或网络可访问的存储设备。
系统300可以包括编码器/解码器模块330,其被配置为例如处理数据以提供编码/解码的点云几何数据,并且编码器/解码器模块330可以包括其自己的处理器和存储器。编码器/解码器模块330可以表示可以包括在设备中以执行编码和/或解码功能的(一个或多个)模块。众所周知,设备可以包括编码和解码模块中的一者或两者。此外,编码器/解码器模块330可以被实现为系统300的分开的元件,或者可以作为硬件和软件的组合集成到处理器310中,如本领域技术人员已知的。
要被加载到处理器310或编码器/解码器330上以执行本公开中所描述的各种方面的程序代码可被存储在存储设备340中,并随后被加载到存储器320上以供处理器310执行。根据各种实施例,在执行本公开中描述的过程期间,处理器310、存储器320、存储设备340和编码器/解码器模块330中的一个或多个可以在存储各种项目中的一个或多个。此类存储的项目可以包括但不限于,点云帧、已编码/解码的几何形状/属性视频/图像或已编码/解码的几何形状/属性视频/图像的部分、比特流、矩阵、变量,以及等式、公式、运算和运算逻辑处理的中间或最终结果。
在多个实施例中,可使用处理器310和/或编码器/解码器模块330内部的存储器来存储指令并为可以在编码或解码期间执行的处理提供工作存储器。
然而,在其他实施例中,处理设备外部的存储器(例如,处理设备可以是处理器310或编码器/解码器模块330)可被用于这些功能中的一个或多个。外部存储器可以是存储器320和/或存储设备340,例如,动态易失性存储器和/或非易失性闪存。在几个实施例中,可使用外部非易失性闪存来存储电视的操作系统。在至少一个实施例中,可将诸如RAM之类的快速外部动态易失性存储器用作用于视频编码和解码操作的工作存储器,例如对于MPEG-2第2部分(也称为ITU-T建议H.262和ISO/IEC 13818-2,也称为MPEG-2视频)、HEVC(高效视频编码)、VVC(通用视频编码)或MPEG-I第5部分或第9部分。
系统300的元件的输入可以通过块390所示的各种输入设备提供。此类输入设备包括但不限于:(i)可接收例如由广播器通过空中传输的RF信号的RF部分,(ii)复合输入终端,(iii)USB输入终端,(iv)HDMI输入终端,(v)总线,当本发明实施于汽车领域时,诸如控制区域网络(CAN)、控制区域网络灵活数据速率(CAN FD)、FlexRay(ISO 17458)或以太网(ISO/IEC 802-3)总线的总线。
在各种实施例中,块390的输入设备具有相关联的相应输入处理元件,如本领域中已知的。例如,RF部分可与对于以下各项必要的元件相关联:(i)选择期望的频率(也称为选择信号,或将信号频带限制到频带内),(ii)将所选择的信号下变频,(iii)再次将频带限制到较窄的频带,以选择(例如)在某些实施例中可被称为信道的信号频带,(iv)解调下变频和频带受限的信号,(v)进行纠错,(vi)解复用以选择期望的数据包流。各种实施例的RF部分可以包括一个或多个元件来执行这些功能,例如,频率选择器、信号选择器、频带限制器、信道选择器、滤波器、下变频器、解调器、纠错器和解复用器。RF部分可以包括执行这些功能中的各种功能的调谐器,这些功能包括例如,将接收到的信号下变频为较低的频率(例如,中间频率或近基带频率)或基带。
在一个机顶盒实施例中,RF部分及其相关联的输入处理元件可以接收通过有线(例如电缆)介质传输的RF信号。然后,RF部分可以通过滤波、下变频和再次滤波到期望的频带来执行频率选择。
各种实施例重新布置上述(和其他)元件的顺序,移除其中一些元件,和/或添加执行类似或不同功能的其他元件。
添加元件可以包括在现有元件之间插入元件,诸如例如,插入放大器和模数转换器。在各种实施例中,RF部分可包括天线。
此外,USB和/或HDMI终端可以包括相应的接口处理器,用于通过USB和/或HDMI连接将系统300连接到其他电子设备。要理解的是,在必要时输入处理的各个方面(例如,Reed-Solomon纠错)可以例如在分开的输入处理IC内或在处理器310内实现。类似地,在必要时可以在分开的接口IC内或处理器310内实现USB或HDMI接口处理的各个方面。经解调、纠错和解复用的流可以被提供给各种处理元件,包括例如处理器310以及编码器/解码器330,它们与存储器和存储元件结合操作,以在必要时处理数据流以在输出设备上呈现。
系统300的各种元件可以提供在集成外壳内。在集成外壳内,各种元件可以使用适当的连接布置390,例如,本领域已知的内部总线(包括I2C总线)、布线和印刷电路板,来互连并在它们之间传输数据。
系统300可以包括通信接口350,该接口能够经由通信信道700与其他设备通信。通信接口350可以包括但不限于,被配置为通过通信信道700发送和接收数据的收发器。通信接口350可以包括但不限于调制解调器或网卡,并且通信信道700可以被实现,例如,在有线和/或无线介质中。
在各种实施例中,可以使用诸如IEEE 802.11的Wi-Fi网络将数据流式传输到系统300。可以在适用于Wi-Fi通信的通信信道700和通信接口350上接收这些实施例的Wi-Fi信号。这些实施例的通信信道700通常可以连接到接入点或路由器,该接入点或路由器提供对包括互联网在内的外部网络的访问,以允许流式传输应用和其他云上(Over-the-top)通信。
其他实施例可以使用通过输入块390的HDMI连接传递数据的机顶盒将流式传输数据提供给系统300。
还有其他实施例可以使用输入块390的RF连接将流式传输数据提供给系统300。
流式传输数据可被用作系统300使用的信令信息的一种方式。信令信息可以包括比特流B和/或诸如点云的点的数量、坐标和/或传感器设置参数的信息。
需要注意的是,信令可以以各种方式完成。例如,在各种实施例中,一个或多个语法元素、标志等可被用于向相应的解码器发信号通知信息。
系统300可以提供输出信号到各种输出设备,包括显示器400,扬声器500,和其他外围设备600。在实施例的各种示例中,其他外围设备600可以包括独立DVR、磁盘播放机、立体声系统、照明系统,以及基于系统300的输出提供功能的其他设备中的一个或多个。
在各种实施例中,可以使用诸如AV.Link(音频/视频链路)、CEC(消费电子控制)或在有或没有用户干预的情况下启用设备到设备控制的其他通信协议等信令在系统300和显示器400、扬声器500或其他外围设备600之间通信控制信号。
输出设备可以通过相应的接口360、370和380经由专用连接通信地耦合到系统300。
可替代地,输出设备可以经由通信接口350使用通信信道700连接到系统300。显示器400和扬声器500可以与电子设备(诸如例如电视)中的系统300的其他组件集成在单个单元中。
在各种实施例中,显示接口360可包括显示驱动器,诸如例如,定时控制器(TCon)芯片。
显示器400和扬声器500可以可选地与其他组件中的一个或多个分开,例如,如果输入端390的RF部分是分开的机顶盒的一部分。在各种实施例中,其中显示器400和扬声器500可以是外部组件,可以经由专用的输出连接(包括例如,HDMI端口、USB端口或COMP输出端)提供输出信号。
在图1-21中,本文描述了各种方法,并且每种方法都包括实现所述方法的一个或多个步骤或动作。除非方法的正确操作需要特定的步骤或动作顺序,否则特定步骤和/或动作的顺序和/或使用可以被修改或组合。
关于框图和/或操作流程图描述了一些示例。每个块表示电路元件、模块或代码的部分,其中包括用于实现(一个或多个)指定逻辑功能的一个或多个可执行指令。还应该注意的是,在其他实施方式中,块中标注的(一个或多个)功能可以不按指示的次序发生。例如,相继示出的两个方框实际上可以基本上并发地执行,或者有时可以以相反的次序执行这些方框。
本文描述的实施方式和方面可以在例如方法或过程、装置、计算机程序、数据流、比特流或信号中实现。即使只在单一形式的实施方式的上下文中讨论(例如,只作为方法讨论),所讨论特性的实施方式也可以以其他形式(例如,装置或计算机程序)实现。
方法可在处理器中实现,例如,处理器一般是指处理设备,例如包括计算机、微处理器、集成电路或可编程逻辑器件。处理器还包括通信设备。
此外,方法可以通过由处理器执行的指令来实现,并且此类指令(和/或由实施方式产生的数据值)可以存储在计算机可读存储介质上。计算机可读存储介质可以采用实施在一个或多个计算机可读介质中并且具有实施在其上的可由计算机执行的计算机可读程序代码的计算机可读程序产品的形式。考虑到在其中存储信息的固有能力以及从其提供信息的检索的固有能力,如本文使用的计算机可读存储介质可以被认为是非暂态存储介质。计算机可读存储介质可以是,例如,但不限于,电子、磁、光学、电磁、红外或半导体系统、装置或设备,或前述的任何合适组合。应该认识到的是,以下虽然提供了可以对其应用本实施例的计算机可读存储介质的更具体示例,但是如本领域普通技术人员容易认识到的那样,仅仅是说明性的而非详尽列表:便携式计算机软盘;硬盘;只读存储器(ROM);可擦除可编程只读存储器(EPROM或闪存);便携式光盘只读存储器(CD-ROM);光学存储设备;磁存储设备;或前述的任何合适组合。
指令可以形成有形地实施在处理器可读介质上的应用程序。
例如,指令可以在硬件、固件、软件或组合中。例如,可以在操作系统、单独的应用或两者的组合中找到指令。因此,处理器可以被表征为例如被配置为执行过程的设备和包括具有用于执行过程的指令的处理器可读介质(诸如存储设备)的设备。另外,除了指令之外或代替指令,处理器可读介质可以存储由实施方式产生的数据值。
装置可以在例如适当的硬件、软件和固件中实现。这种装置的示例包括个人计算机、膝上型计算机、智能电话、平板计算机、数字多媒体机顶盒、数字电视接收器、个人视频录制系统、连接的家用电器、头戴式显示设备(HMD、透视眼镜)、投影仪(投影机)、“洞穴”(包括多个显示器的系统)、服务器、视频编码器、视频解码器、处理来自视频解码器的输出的后处理器、向视频编码器提供输入的预处理器、web服务器、机顶盒,以及用于处理点云、视频或图像的任何其他设备,或其他通信设备。应当清楚的是,装备可以是移动的并且甚至安装在移动车辆中。
计算机软件可以由处理器310或由硬件、或由硬件和软件的组合实现。作为非限制性示例,还可以通过一个或多个集成电路来实现实施例。存储器320可以是适合于技术环境的任何类型并且可以使用任何适当的数据存储技术(诸如光学存储器设备、磁存储器设备、基于半导体的存储器设备、固定存储器和可移动存储器,作为非限制性示例)来实现。处理器310可以是适合于技术环境的任何类型,并且可以涵盖微处理器、通用计算机、专用计算机和基于多核体系架构的处理器中的一种或多种,作为非限制性示例。
如对于本领域普通技术人员来说显而易见的,实施方式可以产生各种被格式化为携带例如可以被存储或传输的信息的信号。信息可以包括例如用于执行方法的指令或由所描述的实施方式之一产生的数据。例如,信号可以被格式化为携带所描述的实施例的比特流。这种信号可以被格式化为例如电磁波(例如,使用频谱的射频部分)或基带信号。格式化可以包括例如对数据流进行编码并用编码的数据流对载波进行调制。信号携带的信息可以是例如模拟或数字信息。如已知的,信号可以通过各种不同的有线或无线链路被传输。信号可以存储在处理器可读介质上。
本文使用的术语仅用于描述特定实施例的目的并且不旨在进行限制。如本文所使用的,单数形式“一个”、“一种”和“该”也可以旨在包括复数形式,除非上下文另有明确指示。将进一步理解的是,当在本说明书中使用时,术语“包括/包含(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)的选择。如本领域和相关领域的普通技术人员清楚的那样,这可以扩展到与列出的一样多的项目。
在本公开中可以使用各种数值。特定值可以用于示例目的并且所描述的各方面不限于这些特定值。
将理解的是,虽然术语第一、第二等在本文中可以被用于描述各种元素,但这些元素不受这些术语的限制。这些术语仅用于将一个元素与另一个元素区分开来。例如,在不脱离本公开的教导的情况下,第一元素可以被称为第二元素,并且类似地,第二元素可以被称为第一元素。第一元素和第二元素之间不暗示排序。
对“一个实施例”或“实施例”或“一个实施方式”或“实施方式”及其其他变化的引用频繁地被用于传达特定特征、结构、特点等(结合实施例/实施方式描述的)包括在至少一个实施例/实施方式中。因此,出现在本公开中各处的短语“在一个实施例中”或“在实施例中”或“在一个实施方式中”或“在实施方式中”以及任何其他变化的出现不一定都指同一实施例。
类似地,本文对“根据实施例/示例/实施方式”或“在实施例/示例/实施方式中”及其其他变化的引用频繁地被用于传达特定特征、结构或特点(结合实施例/示例/实施方式描述的)可以包括在至少一个实施例/示例/实施方式中。因此,出现在说明书中各处的表述“根据实施例/示例/实施方式”或“在实施例/示例/实施方式中”不一定都指同一实施例/示例/实施方式,也不是单独或替代的实施例/示例/实施方式必须与其他实施例/示例/实施方式相互排斥。
权利要求中出现的附图标记仅用于说明并且对权利要求的范围没有限制作用。虽然没有明确描述,但是可以以任何组合或子组合来采用本实施例/示例和变型例。
当图作为流程图呈现时,应当理解的是,它也提供对应装置的框图。类似地,当图作为框图呈现时,应当理解的是,它也提供对应方法/过程的流程图。
虽然一些图包括通信路径上的箭头以示出通信的主要方向,但应该理解的是,通信可以发生在与所描绘的箭头相反的方向上。
各种实施方式涉及解码。如本公开中使用的,“解码”可以涵盖例如对接收到的点云帧(可能包括对一个或多个点云帧进行编码的接收到的比特流)执行以便产生适合显示或在重构的点云域中进一步处理的最终输出的过程的全部或部分。在各种实施例中,此类过程包括通常由解码器执行的过程中的一个或多个。在各种实施例中,例如,此类过程还或者可选地包括由本公开中描述的各种实施方式的解码器执行的过程。
作为进一步的示例,在一个实施例中“解码”可以仅指去量化,在一个实施例中“解码”可以指熵解码,在另一个实施例中,“解码”可以仅指差分解码,而在另一个实施例中,“解码”可以指去量化、熵解码和差分解码的组合。基于具体描述的上下文,短语“解码过程”可能旨在具体地指运算的子集,还是一般地指更广泛的解码过程将是清楚的,并且相信是本领域技术人员能够很好理解的。
各种实施方式都涉及编码。以与以上关于“解码”的讨论类似的方式,本公开中使用的“编码”可以涵盖例如对输入点云帧执行以便产生编码的比特流的过程的全部或部分。在各种实施例中,此类过程包括通常由编码器执行的过程中的一个或多个。在各种实施例中,此类过程还包括或者可选地包括由本公开中描述的各种实施方式的编码器执行的过程。
作为进一步的示例,在一个实施例中“编码”可以仅指量化,在一个实施例中“编码”可以仅指熵编码,在另一个实施例中,“编码”可以仅指差分编码,而在另一个实施例中,“编码”可以指量化、差分编码和熵编码的组合。基于特定描述的上下文,短语“编码过程”可能旨在具体地指运算的子集,还是一般地指更广泛的编码过程将是清楚的,并且相信是本领域技术人员能够很好理解的。
此外,本公开可以提到“获得”各种信息。获得信息可以包括例如以下各项中的一项或多项:估计信息、计算信息、预测信息或从存储器中检索信息。
另外,本公开可以提到“访问”各种信息。访问信息可以包括例如以下各项中的一项或多项:接收信息、(例如,从存储器)检索信息、存储信息、移动信息、复制信息、计算信息、确定信息、预测信息或估计信息。
此外,本公开可以提到“接收”各种信息。与“访问”一样,接收旨在是广义的术语。接收信息可以包括以下各项中的一项或多项:例如,访问信息或(例如,从存储器)检索信息。另外,以一种或另一种方式,在诸如例如以下操作期间:存储信息、处理信息、传输信息、移动信息、复制信息、擦除信息、计算信息、确定信息、预测信息或估计信息,通常涉及“接收”。
而且,如本文所使用的,词语“信号”尤其是指向对应的解码器指示某事等。例如,在某些实施例中,编码器发信号通知特定信息,诸如点云的点的数量或坐标或传感器设置参数。以这种方式,在实施例中,可以在编码器侧和解码器侧使用同一参数。因此,例如,编码器可以向解码器传输(显式信令)特定参数,使得解码器可以使用同一特定参数。相反,如果解码器已经具有特定参数以及其他参数,那么可以使用信令而无需传输(隐式信令)以简单地允许解码器知道并选择特定参数。通过避免传输任何实际功能,在各种实施例中实现了比特节省。应该认识到的是,可以以多种方式来完成信令。例如,在各种实施例中,一个或多个语法元素、标志等被用于将信息发信号通知给对应的解码器。虽然前面涉及词语“信号(signal)”的动词形式,但词语“信号”在本文中也可以用作名词。
已经描述了多个实施方式。不过,应该理解的是,可以进行各种修改。例如,可以组合、补充、修改或移除不同实施方式的元素以产生其他实施方式。此外,普通技术人员将理解的是,其他结构和过程可以替代所公开的结构和过程,并且由此产生的实施方式将以至少基本上相同的(一种或多种)方式执行至少基本上相同的(一个或多个)功能,以实现至少与所公开的实施方式基本相同的(一个或多个)结果。因而,本公开设想了这些和其他实施方式。
Claims (15)
1.一种将与传感器索引相关联的至少一个传感器感测的点云几何数据编码到比特流中的方法,点云几何数据由占用二维空间的一组离散位置的多个离散位置的有序粗略点表示,每个粗略点通过顺序索引而被定位于二维空间内,从与能够感测由所述粗略点表示的点云的点的传感器相关联的传感器索引以及与点云的点被感测到的感测时刻相关联的样本索引限定所述顺序索引,其中所述方法包括:
-获得(110)代表与感测数据相关联的顺序索引的至少一个范围的感测覆盖数据(SCD);以及
-将(120)所述感测覆盖数据(SCD)编码到比特流中。
2.如权利要求1所述的方法,其中所述方法进一步包括将点云几何数据编码(130)到比特流中。
3.如权利要求2所述的方法,其中基于感测覆盖数据(SCD)将点云几何数据编码(130)到比特流中。
4.一种从比特流中解码由与传感器索引相关联的至少一个传感器感测的点云几何数据的方法,点云几何数据由占用二维空间的一组离散位置的多个离散位置的有序粗略点表示,每个粗略点通过顺序索引而被定位于二维空间内,从与能够感测由所述粗略点表示的点云的点的传感器相关联的传感器索引以及与点云的点被感测到的感测时刻相关联的样本索引限定所述顺序索引,其中所述方法包括从比特流中解码(210)感测覆盖数据(SCD)。
5.如权利要求4所述的方法,其中所述方法进一步包括从比特流中解码(220)点云几何数据。
6.如权利要求5所述的方法,其中从比特流中解码(220)点云几何数据是基于感测覆盖数据(SCD)。
7.如权利要求1至6中任何一个所述的方法,其中感测覆盖数据(SCD)的顺序索引的每个范围由顺序索引的下界(LB)和顺序索引的上界(UB)界定。
8.如权利要求7所述的方法,其中下界(LB)和上界(UB)被编码到比特流中/从比特流中解码作为起始顺序索引(S)和顺序索引的数量(M)。
9.如权利要求1至8中任何一个所述的方法,其中标志被编码到比特流中/从比特流中解码,以指示顺序索引的多于一个范围是否能存在于感测覆盖数据(SCD)中。
10.一种由如权利要求1至3或7至9中任何一个所述的方法生成的编码的点云数据的比特流。
11.一种将点云编码到编码的点云数据的比特流中的装置,所述装置包括用于执行如权利要求1至3或7至9中任何一个所述的方法的器件。
12.一种用于从编码的点云数据的比特流中解码点云的装置,所述装置包括用于执行如权利要求4至9中任何一个所述的方法的器件。
13.一种计算机程序产品,包括指令,当程序由一个或多个处理器执行时,所述指令使一个或多个处理器执行如权利要求1至3或7至9中任何一个所述的方法。
14.一种计算机程序产品,包括指令,当程序由一个或多个处理器执行时,所述指令使一个或多个处理器执行如权利要求4至9中任何一个所述的方法。
15.一种携带程序代码的指令的非暂时性存储介质,所述程序代码用于执行如权利要求1至9中任何一个所述的方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP21306845.5 | 2021-12-20 | ||
EP21306845.5A EP4199362A1 (en) | 2021-12-20 | 2021-12-20 | Method and apparatus of encoding/decoding sensed point cloud geometry data |
PCT/CN2022/127724 WO2023116188A1 (en) | 2021-12-20 | 2022-10-26 | Method and apparatus of encoding/decoding point cloud geometry data sensed |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118339840A true CN118339840A (zh) | 2024-07-12 |
Family
ID=80035039
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202280079993.9A Pending CN118339840A (zh) | 2021-12-20 | 2022-10-26 | 编码/解码感测的点云几何数据的方法和装置 |
Country Status (3)
Country | Link |
---|---|
EP (1) | EP4199362A1 (zh) |
CN (1) | CN118339840A (zh) |
WO (1) | WO2023116188A1 (zh) |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10005564B1 (en) * | 2017-05-05 | 2018-06-26 | Goodrich Corporation | Autonomous cargo handling system and method |
US11049266B2 (en) * | 2018-07-31 | 2021-06-29 | Intel Corporation | Point cloud viewpoint and scalable compression/decompression |
US20220159298A1 (en) * | 2019-05-14 | 2022-05-19 | Intel Corporation | IMMERSIVE VIDEO CODING TECHNIQUES FOR THREE DEGREE OF FREEDOM PLUS/METADATA FOR IMMERSIVE VIDEO (3DoF+/MIV) AND VIDEO-POINT CLOUD CODING (V-PCC) |
WO2020248187A1 (zh) * | 2019-06-13 | 2020-12-17 | 深圳市大疆创新科技有限公司 | 一种点云编码方法、点云解码方法及相关设备 |
US11821990B2 (en) * | 2019-11-07 | 2023-11-21 | Nio Technology (Anhui) Co., Ltd. | Scene perception using coherent doppler LiDAR |
US11580672B2 (en) * | 2020-04-08 | 2023-02-14 | Qualcomm Incorporated | Angular mode simplification for geometry-based point cloud compression |
BR112022026363A2 (pt) * | 2020-06-24 | 2023-01-17 | Beijing Xiaomi Mobile Software Co Ltd | Método de codificação e decodificação de uma nuvem de pontos |
-
2021
- 2021-12-20 EP EP21306845.5A patent/EP4199362A1/en active Pending
-
2022
- 2022-10-26 CN CN202280079993.9A patent/CN118339840A/zh active Pending
- 2022-10-26 WO PCT/CN2022/127724 patent/WO2023116188A1/en active Application Filing
Also Published As
Publication number | Publication date |
---|---|
EP4199362A1 (en) | 2023-06-21 |
WO2023116188A1 (en) | 2023-06-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7550317B2 (ja) | 自己回転センサヘッドによってキャプチャされた点群ジオメトリデータをエントロピー符号化/復号化する方法及び装置 | |
WO2023040392A1 (en) | Method and apparatus of encoding/decoding point cloud geometry data sensed by at least one sensor | |
US20240185466A1 (en) | Method and apparatus of encoding/decoding point cloud geometry data captured by a spinning sensors head | |
US20240185472A1 (en) | Method and apparatus of encoding/decoding point cloud geometry data captured by a spinning sensors head | |
CN116982083A (zh) | 编码/解码点云几何数据的方法和装置 | |
CN118339840A (zh) | 编码/解码感测的点云几何数据的方法和装置 | |
EP4220561A1 (en) | Method and apparatus of encoding/decoding a slice of point cloud data | |
RU2824331C1 (ru) | Способ и устройство для кодирования/декодирования данных геометрии облака точек, захваченных вращающейся головкой датчиков | |
EP4199522A1 (en) | Method and apparatus of encapsulating/parsing point cloud data in/from encapsulating containers | |
JP7535665B2 (ja) | 自己回転センサヘッドでキャプチャされた点群ジオメトリデータを符号化/復号化する方法及び装置 | |
RU2818834C2 (ru) | Способ и устройство кодирования/декодирования геометрических данных облака точек с использованием режима азимутального кодирования | |
US20240333972A1 (en) | Method and apparatus of encoding/decoding point cloud captured by a spinning sensors head | |
US20240305821A1 (en) | Method and apparatus of encoding/decoding point cloud geometry data sensed by at least one sensor | |
EP4160534A1 (en) | Method and apparatus of encoding/decoding point cloud geometry data sensed by at least one sensor | |
US20240377510A1 (en) | Method and apparatus of encoding/decoding point cloud geometry data sensed by at least one sensor | |
US20240371047A1 (en) | Method and apparatus of encoding/decoding point cloud geometry data sensed by at least one sensor | |
EP4160925A1 (en) | Method and apparatus of encoding/decoding point cloud geometry data sensed by at least one sensor | |
EP4160535A1 (en) | Method and apparatus of encoding/decoding point cloud geometry data sensed by at least one sensor | |
CN118020307A (zh) | 编码/解码由至少一个传感器感测的点云几何数据的方法和装置 | |
KR20240065282A (ko) | 적어도 하나의 센서에 의해 감지된 포인트 클라우드 지오메트리 데이터에 대해 인코딩/디코딩하는 방법 및 장치 | |
CN117957570A (zh) | 对由至少一个传感器感测到的点云几何数据进行编码/解码的方法和装置 | |
CN117693769A (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 |