CN118575194A - 用于点云压缩的可缩放框架 - Google Patents
用于点云压缩的可缩放框架 Download PDFInfo
- Publication number
- CN118575194A CN118575194A CN202280089512.2A CN202280089512A CN118575194A CN 118575194 A CN118575194 A CN 118575194A CN 202280089512 A CN202280089512 A CN 202280089512A CN 118575194 A CN118575194 A CN 118575194A
- Authority
- CN
- China
- Prior art keywords
- point cloud
- point
- version
- feature
- feature set
- 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
- 238000007906 compression Methods 0.000 title abstract description 33
- 230000006835 compression Effects 0.000 title abstract description 33
- 230000002776 aggregation Effects 0.000 claims abstract description 27
- 238000004220 aggregation Methods 0.000 claims abstract description 27
- 238000013528 artificial neural network Methods 0.000 claims abstract description 13
- 238000000034 method Methods 0.000 claims description 77
- 239000013598 vector Substances 0.000 claims description 29
- 230000015654 memory Effects 0.000 claims description 27
- 238000013138 pruning Methods 0.000 claims description 8
- 238000013139 quantization Methods 0.000 claims description 8
- 238000012545 processing Methods 0.000 description 30
- 238000004891 communication Methods 0.000 description 20
- 230000006870 function Effects 0.000 description 12
- 230000008569 process Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 8
- 230000003068 static effect Effects 0.000 description 6
- 238000003909 pattern recognition Methods 0.000 description 4
- 239000000523 sample Substances 0.000 description 4
- 230000004913 activation Effects 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 238000013144 data compression Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 238000011176 pooling Methods 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 238000012876 topography Methods 0.000 description 2
- 230000003936 working memory Effects 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000002045 capillary electrochromatography Methods 0.000 description 1
- 208000015636 celiac disease-epilepsy-cerebral calcification syndrome Diseases 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000605 extraction 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
- 238000013507 mapping Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 229920001690 polydopamine Polymers 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000002310 reflectometry Methods 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 230000000153 supplemental effect Effects 0.000 description 1
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
在一个具体实施中,我们提出了一种有损点云压缩方案来利用深度神经网络对点云几何形状进行编码。编码器首先将输入点云的较粗略版本编码为比特流。然后,它将输入点云的残差(精细几何形状细节)表示为编码的较粗略点云的逐点特征,随后将特征编码为第二比特流。在解码器侧,首先从第一比特流解码较粗略的点云。然后对其逐点特征进行解码。最后,从逐点特征解码残差,并将残差添加回到较粗略的点云,从而得到高质量的解码点云。特征的编码和/或解码可利用特征聚合(诸如变换器框)进一步被增强。
Description
技术领域
本实施方案整体涉及用于点云压缩和处理的方法和装置。
背景技术
点云(PC)数据格式是跨若干商业领域的通用数据格式,例如从自主驾驶、机器人、增强现实/虚拟现实(AR/VR)、土木工程、计算机图形到动画/电影产业。3D LiDAR(激光雷达)传感器已部署在自动驾驶汽车中,并且Velodyne Velabit、Apple iPad Pro 2020和Intel RealSense LiDAR相机L515发布经济实惠的LiDAR传感器。随着感测技术的进步,3D点云数据变得比以往更加实用,并有望成为本文讨论的应用的最终推动者。
发明内容
根据实施方案,呈现了一种对点云数据进行解码的方法,该方法包括:对点云的第一版本进行解码;获得用于所述点云的所述第一版本的逐点特征集;从所述逐点特征集获得所述点云的所述第一版本的细化信息;以及基于所述细化信息和所述点云的所述第一版本来获得所述点云的第二版本。
根据另一实施方案,呈现了一种对点云数据进行编码的方法,该方法包括:对点云的第一版本进行编码;为所述点云重建所述点云的第二版本;基于所述点云的所述第二版本和所述点云来获得细化信息;从所述细化信息获得用于所述点云的所述第二版本的逐点特征集;以及对所述逐点特征集进行编码。
根据另一实施方案,呈现了一种用于对点云数据进行解码的装置,该装置包括一个或多个处理器和耦接到所述一个或多个处理器的至少一个存储器,其中所述一个或多个处理器被配置为对点云的第一版本进行解码;获得用于所述点云的所述第一版本的逐点特征集;从所述逐点特征集获得所述点云的所述第一版本的细化信息;以及基于所述细化信息和所述点云的所述第一版本来获得所述点云的第二版本。
根据另一实施方案,呈现了一种用于对点云数据进行编码的装置,该装置包括一个或多个处理器和耦接到所述一个或多个处理器的至少一个存储器,其中所述一个或多个处理器被配置为对点云的第一版本进行编码;为所述点云重建所述点云的第二版本;基于所述点云的所述第二版本和所述点云来获得细化信息;从所述细化信息获得用于所述点云的所述第二版本的逐点特征集;以及对所述逐点特征集进行编码。
一个或多个实施方案还提供了一种计算机程序,该计算机程序包括指令,这些指令在由一个或多个处理器执行时使该一个或多个处理器执行根据本文所述的任一实施方案所述的编码方法或解码方法。本发明实施方案中的一个或多个实施方案还提供了一种计算机可读存储介质,该计算机可读存储介质在其上存储有用于根据本文所述的方法对点云数据进行编码或解码的指令。
一个或多个实施方案还提供了一种计算机可读存储介质,该计算机可读存储介质在其上存储有根据上述方法生成的视频数据。一个或多个实施方案还提供了一种用于传输或接收根据本文所述的方法生成的视频数据的方法和装置。
附图说明
图1例示了其中可以实现本发明实施方案的各方面的系统的框图。
图2A、图2B、图2C和图2D分别例示了基于点、基于八叉树、基于体素和基于稀疏体素的点云表示。
图3例示了根据实施方案的编码器架构。
图4例示了根据实施方案的解码器架构。
图5例示了根据实施方案的具有无损基本编解码器的编码器架构。
图6是根据实施方案的减法模块的图。
图7是根据实施方案的残差到特征转换器的图。
图8是根据实施方案的用于稀疏点云的残差到特征转换器的图。
图9例示了根据实施方案的特征编码器架构。
图10例示了根据实施方案的特征解码器架构。
图11例示了根据实施方案的应用稀疏张量操作的示例。
图12是根据实施方案的特征到残差转换器的图。
图13是根据实施方案的求和模块的图。
图14是根据实施方案的跳过模式中的解码器架构。
图15是根据实施方案的跳过模式中的特征解码器架构。
图16例示了根据实施方案的另一特征编码器架构。
图17例示了根据实施方案的特征解码器架构。
图18例示了根据实施方案的若干特征聚合模块的级联。
图19例示了用于特征聚合的变换器框。
图20例示了用于特征聚合的Inception-ResNet框。
图21例示了用于特征聚合的ResNet框。
具体实施方式
图1例示了其中可实现各种方面和实施方案的系统的示例的框图。系统100可体现为一种设备,该设备包括下文所述的各种部件,并且被配置为执行本申请所述各方面中的一个或多个方面。此类设备的示例包括但不限于各种电子设备,诸如个人计算机、膝上型计算机、智能电话、平板电脑、数字多媒体机顶盒、数字电视接收器、个人视频录制系统、连接的家用电器和服务器。系统100的元件可单独地或组合地体现在单个集成电路、多个IC和/或分立部件中。例如,在至少一个实施方案中,系统100的处理和编码器/解码器元件跨多个IC和/或分立的部件分布。在各种实施方案中,系统100经由例如通信总线或通过专用输入和/或输出端口通信地耦接到其他系统或其他电子设备。在各种实施方案中,系统100被配置为实现本申请所述的方面的一个或多个方面。
系统100包括至少一个处理器110,该至少一个处理器被配置为执行加载到其中的指令,以用于实现例如本申请所述的各个方面。处理器110可包括嵌入式存储器、输入输出接口和如本领域已知的各种其他电路。系统100包括至少一个存储器120(例如,易失性存储器设备和/或非易失性存储器设备)。系统100包括存储设备140,该存储设备可以包括非易失性存储器和/或易失性存储器,包括但不限于EEPROM、ROM、PROM、RAM、DRAM、SRAM、闪存、磁盘驱动器和/或光盘驱动器。作为非限制性示例,存储设备140可以包括内部存储设备、附接存储设备和/或网络可访问的存储设备。
系统100包括编码器/解码器模块130,该编码器/解码器模块被配置为例如处理数据以提供编码视频或解码视频,并且编码器/解码器模块130可以包括其自身的处理器和存储器。编码器/解码器模块130表示可被包括在设备中以执行编码和/或解码功能的模块。众所周知,设备可以包括编码模块和解码模块中的一者或两者。另外,编码器/解码器模块130可被实现为系统100的单独元件,或者可被结合在处理器110内作为如本领域技术人员已知的硬件和软件的组合。
要加载到处理器110或编码器/解码器130上以执行本申请中所述的各个方面的程序代码可以存储在存储设备140中,并且随后加载到存储器120上以供处理器110执行。根据各种实施方案,处理器110、存储器120、存储设备140和编码器/解码器模块130中的一者或多者可以在执行本申请中描述的过程期间存储各个项目中的一者或多者。这样存储的项目可以包括但不限于输入视频、解码视频或解码视频的一部分、位流、矩阵、变量,以及处理等式、公式、运算和运算逻辑的中间或最终结果。
在若干实施方案中,处理器110和/或编码器/解码器模块130内部的存储器用于存储指令并且提供工作存储器以用于在编码或解码期间进行需要的处理。然而,在其他实施方案中,在处理设备外部的存储器(例如,处理设备可以是处理器110或编码器/解码器模块130)用于这些功能中的一个或多个功能。外部存储器可以是存储器120和/或存储设备140,例如,动态易失性存储器和/或非易失性闪存存储器。在若干实施方案中,外部非易失性闪存存储器用于存储电视机的操作系统。在至少一个实施方案中,诸如RAM的快速外部动态易失性存储器被用作用于视频译码和解码操作的工作存储器,诸如用于MPEG-2、JPEG Pleno、HEVC或VVC。
系统100的元件的输入可以通过如框105中指示的各种输入设备来提供。此类输入设备包括但不限于:(i)接收例如由广播器通过无线电传输的RF信号的RF部分;(ii)复合输入端子;(iii)USB输入端子和/或(iv)HDMI输入端子。
在各种实施方案中,框105的输入设备具有如本领域中已知的相关联的相应输入处理元件。例如,RF部分可与适于以下项的元件相关联:(i)选择期望的频率(也称为选择信号,或将信号频带限制到一个频带),(ii)下变频选择的信号,(iii)再次将频带限制到更窄频带以选择(例如)在某些实施方案中可称为信道的信号频带,(iv)解调经下变频和频带限制的信号,(v)执行纠错,以及(vi)解复用以选择期望的数据包流。各种实施方案的RF部分包括用于执行这些功能的一个或多个元件,例如频率选择器、信号选择器、频带限制器、信道选择器、滤波器、下变频器、解调器、纠错器和解复用器。RF部分可包含执行这些功能中的各种功能的调谐器,这些功能包含例如下变频接收的信号至更低频率(例如,中频或近基带频率)或至基带。在一个机顶盒实施方案中,RF部分及其相关联的输入处理元件接收通过有线(例如,电缆)介质传输的RF信号,并且通过滤波、下变频和再次滤波至期望的频带来执行频率选择。各个实施方案重新布置上面所描述的(和其他)元件的顺序,移除这些元件中的一些元件,和/或添加执行相似或不同功能的其他元件。添加元件可以包括在现有元件之间插入元件,例如,插入放大器和模拟-数字转换器。在各种实施方案中,RF部分包括天线。
另外,USB和/或HDMI端子可以包括用于跨USB和/或HDMI连接将系统100连接到其他电子设备的相应接口处理器。应当理解,输入处理(例如,Reed-Solomon纠错)的各个方面可以按照需要例如在单独的输入处理IC内或在处理器110内实现。相似地,USB或HDMI接口处理的各方面可以按照需要在单独的接口IC内或在处理器110内实现。经解调、纠错和解复用的流被提供给各种处理元件,包括例如处理器110和编码器/解码器130,它们与存储器和存储元件结合操作以按照需要处理数据流以供在输出设备上呈现。
系统100的各种元件可被提供在集成壳体内。在集成壳体内,各种元件可使用合适的连接布置115(例如,本领域已知的内部总线,包括I2C总线、布线和印刷电路板)互连并且在这些元件之间传输数据。
系统100包括通信接口150,该通信接口使得能够经由通信信道190与其他设备通信。通信接口150可包括但不限于被配置为通过通信信道190传输并接收数据的收发器。通信接口150可包括但不限于调制解调器或网卡,并且通信信道190可例如在有线和/或无线介质内实现。
在各种实施方案中,使用诸如IEEE 802.11的Wi-Fi网络将数据流式传输到系统100。这些实施方案的Wi-Fi信号通过适合于Wi-Fi通信的通信信道190和通信接口150接收。这些实施方案中的通信信道190通常连接到接入点或路由器,该接入点或路由器提供对包括互联网的外部网络的接入,以允许流式应用和其他OTT通信。其他实施方案使用机顶盒向系统100提供流式传输的数据,该机顶盒通过输入框105的HDMI连接来递送数据。还有其他实施方案使用输入框105的RF连接向系统100提供流式传输的数据。
系统100可将输出信号提供给各种输出设备,包括显示器165、扬声器175和其他外围设备185。在实施方案的各种示例中,其他外围设备185包括以下中的一者或多者:独立DVR、磁盘播放器、立体音响系统、照明系统和基于系统100的输出提供功能的其他设备。在各种实施方案中,使用信令诸如AV在系统100与显示器165、扬声器175或其他外围设备185之间传送控制信号。链路、CEC或能够在有或没有用户干涉的情况下实现设备到设备控制的其他通信协议。输出设备可通过相应的接口160、170和180经由专用连接通信地耦合到系统100。另选地,输出设备可以使用通信信道190经由通信接口150连接到系统100。显示器165和扬声器175可与电子设备(例如,电视机)中的系统100的其他部件集成在单个单元中。在各种实施方案中,显示器接口160包括显示器驱动器,例如,定时控制器(T Con)芯片。
另选地,例如,如果输入105的RF部分是单独机顶盒的一部分,则显示器165和扬声器175可以与其他部件中的一者或多者分隔开。在其中显示器165和扬声器175是外部部件的各种实施方案中,输出信号可以经由专用输出连接(包括例如,HDMI端口、USB端口或COMP输出)来提供。
可以设想,点云数据可能消耗大部分网络流量,例如通过5G网络连接的汽车之间,以及沉浸式通信(VR/AR)。高效的表示格式对于点云理解和通信是必要的。具体地,为了世界建模和感测的目的,原始点云数据需要被适当地组织和处理。当在相关情形中需要数据的存储和传输时,对原始点云进行压缩是必要的。
此外,点云可表示包含多个移动对象的相同场景的顺序扫描。与从静态场景或静态对象捕获的静态点云相比,它们被称为动态点云。动态点云通常被组织成帧,其中不同的帧在不同的时间被捕获。动态点云可能需要实时或具有低延迟的处理和压缩。
汽车工业和自动驾驶汽车是可使用点云的领域。自动驾驶汽车应该能够“探测”其环境,以基于其周围环境的实际情况作出良好的驾驶决策。典型的传感器如LiDAR生成供感知引擎使用的(动态)点云。这些点云并非旨在被人眼看到,并且它们通常是稀疏的,不一定是彩色的,并且是动态的,具有高的捕获频率。点云可具有其他属性,如由LiDAR提供的反射率,因为该属性指示被感测对象的材料,并且可有助于作出决策。
虚拟现实(VR)和沉浸式世界已经被许多人预见为2D平面视频的未来。对于VR和沉浸式世界,观察者沉浸在观察者周围的环境中,而不是在标准电视中观察者只能看到观察者面前的虚拟世界。根据观察者在环境中的自由度,沉浸感有若干层次。点云是分布VR世界的良好格式候选。用于VR的点云可以是静态的或动态的,并且通常具有平均大小,例如一次不超过数百万个点。
点云也可用于各种目的,诸如文化遗产/建筑物,其中雕像或建筑物等对象以3D形式扫描,以便在不发送或不访问对象的情况下共享对象的空间配置。此外,点云也可以用于确保在对象可能被破坏的情况下保留对象的知识,例如被地震摧毁的寺庙。此类点云通常是静态的、彩色的并且非常大。
另一种用例是在地形图和制图中,其中使用3D表示,地图不限于平面并且可包括地形凹凸。谷歌地图是3D地图的良好示例,但其使用网格而不是点云。然而,点云可以是用于3D地图的合适数据格式,并且此类点云通常是静态的、彩色的并且非常大。
经由点云的世界建模和感测可以是一种允许机器获得关于它们周围的3D世界的认知的有用的技术,用于本文讨论的应用。
3D点云数据是对象或场景的表面上的基本上离散的样本。实际上,要使用点样本完全表示现实世界,在实践中需要大量的点。例如,典型的VR沉浸式场景包含数以百万计的点,而点云通常包含数以亿计的点。因此,处理如此大规模的点云在计算上是昂贵的,特别是对于计算能力有限的消费设备,例如,智能手机、平板计算机和汽车导航系统。
为了对点云执行处理或推断,需要高效的存储方法。为了以可负担的计算成本存储和处理输入点云,一种解决方案是首先对点云进行降采样,其中被降采样的点云概括输入点云的几何形状,同时具有少得多的点。被降采样的点云然后被馈送到后续机器任务以供进一步利用。然而,可以通过经由用于无损压缩的熵编码技术将原始点云数据(原始的或降采样的)转换为比特流来实现存储空间的进一步减少。更好的熵模型产生更小的位流,因此产生更有效的压缩。另外,熵模型也可以与下游任务配对,这些下游任务允许熵编码器在压缩时维持任务特定信息。
除了无损编码之外,许多情形寻求有损编码以显著改善压缩率,同时在特定质量水平下保持诱导失真。
我们提出了基于学习的PCC框架,该PCC框架可以使用不同的点云表示来执行压缩。在下文中,我们首先回顾不同的点云表示及它们在基于学习的PCC中的使用。
基于点的表示
点云本质上是对对象或场景的表面进行采样的一组3D坐标。在该本地表示中,每个点由其在3D空间中的x、y和z坐标直接指定。然而,点云中的点通常是无组织的并且稀疏地分布在3D空间中,使得难以直接处理点坐标。图2A提供基于点的表示的示例。为了简单起见,图2A、图2B、图2C和图2D中的所有例示在2D空间中展示了对应的点云表示。
由于深度学习的发展,点云处理和压缩也已经利用基于本地点的表示进行了研究。该线程中最有代表性的工作之一是PointNet,该PointNet是基于多层感知器(MLP)和用于特征提取的全局最大池化算子的基于点的处理架构。诸如PointNet++、DGCNN、KP-Conv等的后续工作将PointNet扩展到对相邻信息进行计数的更复杂的基于点的操作。这些基于点的处理架构可以被用于PCC。在Yan,Wei等人的名称为“Deep autoencoder-based lossygeometry compression for point clouds(基于深度自动编码器的点云有损几何形状压缩)”,arXiv preprint arXiv:1905.03691,2019的文章中描述的工作中,编码器采用5层PointNet来提取特征向量以压缩输入点云。其解码器采用一系列MLP来对点云进行解码。在另一工作DECOPO(参见Wiesmann,Louis等人的名称为“Deep compression for densepoint cloud maps(密集点云地图的深度压缩)”,IEEE机器人与自动化快报6,2期,第2060-2067页,2021的文章)中,KP-Conv被采用用于处理输入点云并生成比特流。
基于八叉树的表示
除了本地点坐标之外,点云还可以经由八叉树分解树来表示,如图2B中的示例所示。首先,构建覆盖边界框中的完整3D空间的根节点。然后,该空间在每个方向(即,x方向、y方向和z方向)上均等地分割,从而得到八(8)个体素。对于每个体素,如果存在至少一个点,则将该体素标记为被占用,用值‘1’表示;否则,将其标记为空,用值‘0’表示。然后继续体素分割,直到满足预先指定的条件。图2B提供了简单的示例,该简单的示例示出了四叉树-八叉树的2D对应。通过对八叉树进行编码,其相关联的点云被无损编码。对八叉树进行编码的流行方法是通过用8位值对每个被占用体素进行编码,该值指示其单个八分圆的占用。以这种方式,我们首先通过8位值对根体素节点进行编码。然后,对于下一级中的每个被占用体素,我们对其8位占用符号进行编码,然后移到下一级。
深度熵模型是指一类基于学习的方法,其尝试使用神经网络模块来制定上下文模型以预测8位占用符号的概率分布。一种深度熵模型被称为OctSqueeze(参见Huang,Lila等人在IEEE/CVF计算机视觉和模式识别会议论文集,2020中的名称为“OctSqueeze:Octree-structured entropy model for LiDAR compression(OctSqueeze:用于LiDAR压缩的八叉树结构熵模型)”的文章)。它利用包括父节点、祖父节点等的祖先节点。使用三个基于MLP的模块来估计当前八叉树节点的占用符号的概率分布。另一深度熵模型被称为VoxelContextNet(参见Que,Zizheng等人在IEEE/CVF计算机视觉和模式识别会议论文集,第6042-6051页,2021中的名称为“VoxelContext-Net:An octree-based framework forpoint cloud compression(VoxelContent-Net:基于八叉树的点云压缩框架)”的文章)。与使用祖先节点的OctSqueeze不同,VoxelContextNet采用使用空间相邻体素的方法来首先分析局部表面形状,然后预测概率分布。
基于体素的表示
在基于体素的表示中,通过量化步长对3D点坐标进行均匀量化。每个点对应于被占用的体素,其大小等于量化步长(图2C)。由于大的空的空间,朴素的体素表示在存储器使用方面可能不高效。然后引入稀疏体素表示,其中被占用的体素以稀疏张量格式排列,以进行有效的存储和处理。稀疏体素表示的示例在图2C中进行描绘,其中空体素(具有虚线)不消耗任何存储器或存储。
考虑到2D卷积已经被成功地用于基于学习的图像压缩,其扩展,3D卷积也已经被研究用于点云压缩。为此,点云需要由体素表示。利用规则的3D卷积,在由步幅步长指定的每个位置上覆盖3D卷积核,而不管体素是被占用还是空的。为了避免空体素的计算和存储器消耗,如果点云体素由稀疏张量表示,则可以应用稀疏3D卷积。
在工作pcc_geo_cnn_v2(参见Quach,Maurice等人的名称为“Improved deeppoint cloud geometry compression(改善的深度点云几何形状压缩)”,2020IEEE第22届国际多媒体信号处理研讨会(MMSP)的文章)中,作者提出利用规则3D卷积来编码/解码点云。为了避免大的计算成本和存储器消耗,另一工作PCGCv2(参见Wang,Jianqiang等人的名称为“Multiscale point cloud geometry compression(多尺度点云几何形状压缩)”,2021数据压缩会议(DCC)的文章)利用稀疏3D卷积编码/解码点云。它还采用八叉树译码方案来对输入点云的低比特深度部分进行无损编码。
在本文档中,我们提出了用于利用深度神经网络的有损点云压缩的可缩放译码框架。在下文中,我们首先提供总体架构,然后描述细节。
所提出的可缩放译码框架的概述
在所提出的译码框架中,不是直接对点云进行编码/解码,而是我们将点云转换为具有逐点特征作为用于编码/解码的点属性的较粗略/简化的点云。特征表示细化信息,例如,来自输入点云的残差(或几何形状细节)。如图3和图4所例示,我们具体地使用用于较粗略点云的编码/解码的基本层和用于逐点特征的编码/解码的增强层。
给定要压缩的输入点云PC0,编码器首先将其转换为较粗略的点云。这个更容易压缩的较粗略的点云首先被编码为比特流。然后,对于较粗略点云中的每个点,编码器计算表示残差(或PC0的精细几何形状细节)的逐点特征。所获得的逐点特征被进一步编码为第二比特流。
在解码器侧,我们首先从第一比特流解码较粗略的点云。然后,基于较粗略的点云,我们继续从第二比特流解码一组逐点特征。接下来,我们从解码的特征重建残差分量(PC0的精细细节)。最后,通过将残差添加回到较粗略的点云来获得解码的点云。
编码
根据实施方案,在图3中提供了编码器的架构。对于要被压缩的输入点云PC0,其首先使用步长大小为s(s>1)的量化器(310)被量化。在一个实施方案中,对于每个点,比如说具有3D坐标(x,y,z)的PC0中的A,量化器将坐标除以s,然后将它们转换为整数,从而得到([x/s],[y/s],[z/s]),其中函数[·]可以是向下取整、向上取整或舍入函数。量化器然后移除具有相同3D坐标的重复点,即,如果存在具有相同坐标的若干点,则我们仅保留它们中的一个点并且移除其余点,然后我们得到PC1。
然后,利用基本点云编码器(320)(其输出比特流BS0)来压缩所获得的量化点云PC1。接下来,BS0利用基本点云解码器(330)被解码,并输出另一点云PC'1。PC'1然后以步长大小s被反量化(340),从而得到初始重建的点云PC2。在一个实施方案中,对于每个点,比如说,具有3D坐标(x,y,z)的PC0中的A,反量化器将坐标乘以s,从而得到(xs,ys,zs)。我们注意到PC2是原始点云PC0的较粗略/简化版本。此外,随着量化步长大小s变得更大,PC2变得甚至更粗略。在获得PC2之后,完成了基本层。
在增强层中,我们首先将PC0以及其较粗略版本PC2馈送到减法模块(350)。直观地,减法模块旨在从PC0中减去PC2并输出残差R。残差R包含将由增强层编码的PC0的精细几何形状细节。接下来,残差R被馈送到残差到特征转换器(360),该残差到特征转换器针对PC2中的每个点生成逐点特征向量。即,PC2中的点A将与特征向量fA相关联,该特征向量是输入PC0中靠近点A的局部精细细节的高级描述符。然后,基于PC2,逐点特征集(由F标志)将利用特征编码器(370)被编码为另一比特流BS1。
两个比特流BS0和BS1是编码器的输出。它们也可以被合并成一个统一的比特流。
解码
根据实施方案,在图4中提供了解码器的架构。在接收到比特流BS0和BS1之后,首先启动基本层,然后前进到增强层。在基本层中,我们首先利用基本解码器(410)从BS0解码PC'1,然后应用反量化器(420),步长大小为s,以获得较粗略的点云PC2。
在增强层中,特征解码器模块(430)首先被应用于利用已经解码的较粗略点云PC2对BS1进行解码,这输出逐点特征集F'。特征集F'包含PC2中每个点的逐点特征。例如,PC2中的点A具有其自己的特征向量f'A。我们注意到,解码特征向量f'A可以具有与fA--其在编码器侧上的对应特征向量不同的大小。然而,fA和f'A都旨在描述靠近点A的PC0的局部精细几何形状细节。解码的特征集F'然后被传递到特征到残差转换器(440),该特征到残差转换器生成残差分量R'。最后,将较粗略点云PC2和残差R'馈送到求和模块(450)。求和模块将残差R'添加回到PC2,从而得到最终的解码点云,PC'0。
模块
在下文中,我们描述所提出的框架中各个模块的细节。我们还呈现了模块的潜在变型。
基本PCC编解码器
基本编解码器(图3和图4中的基本编码器和基本解码器)可以是任何PCC编解码器。在一个实施方案中,基本编解码器被选择为有损PCC编解码器,诸如pcc_geo_cnn_v2和PCGCv2。在这种情况下,PC'1不同于PC1(参见图3)。在另一实施方案中,基本编解码器被选择为无损PCC编解码器,诸如MPEG G-PCC标准,或者具有八叉树表示的深度熵模型,诸如OctSqueeze和VoxelContext-Net。在这种情况下,PC'1基本上与PC1相同。然后,可以通过移除基本解码器来简化编码器架构,如图5所示。
减法模块
图3中的减法模块,即,旨在从原始输入点云PC0中减去较粗略的点云PC2,以便获得残差分量R。残差R包含PC0的几何形状精细细节。
在一个实施方案中,减法模块经由k最近邻(kNN)搜索提取PC0的几何形状细节,如图6所示。特别地,对于PC2中的每个3D点A,我们在PC0中搜索(610)其k个最近邻居。这些k点被标志为B0、B1、...、Bk-1。然后,我们分别从B0、B1、...、Bk-1中减去(620,630,640)点A,从而得到残差点B'0、B'1、...、B'k-1。注意,通过这里的术语“减法”,我们简单地意指逐点减法,例如从B0中减去A是分别从B0的(x,y,z)坐标中减去A的(x,y,z)坐标。我们将得到的3D点组B′0、B′1、...、B′k-1称为点A的残差组,标志为SA。然后,假设在PC2中存在n个点,A0、A1、...、An-1,它们各自的残差组,标志为S0、S1、...、Sn-1一起构成残差分量R-减法模块的输出。
我们注意到,可以基于输入点云PC0的密度水平来选择k的值。对于密集点云,其值可以更大(例如,k=10)。相反,对于稀疏PC0,诸如LiDAR扫描,k的值可以非常小,诸如k=1,这意味着PC2中的每个点仅与PC0中的一个点相关联。
在一个实施方案中,代替使用搜索PC0中最靠近点A的k个点的kNN搜索,我们搜索PC0中在与A的距离r内的所有点。该操作被称为球查询。可以通过量化器的量化步长大小s来确定球查询的值(或半径)r。例如,给定较大的s,即,我们具有较粗略的PC2,则r的值变得较大,以便从PC0覆盖更多的点。在另一实施方案中,我们仍然使用kNN搜索来寻找最靠近查询点,比如说A的k个点。然而,在此之后,我们仅保留在与A的距离r内的点。r的值以与使用球查询的情况相同的方式被确定。
我们还注意到,由kNN搜索或球查询使用的距离度量可以是任何距离度量,诸如L-1范数、L-2范数和L-无穷范数。
残差到特征转换器
利用残差分量R,残差到特征转换器计算PC2中的点的一组特征向量。具体地,通过采取残差组(与PC2中的点相关联)作为输入,其利用深度神经网络生成逐点特征向量。例如,对于PC2中的点A,其包含3D点B'0、B'1、...、B'k-1的残差组SA将由深度神经网络来处理,该深度神经网络输出描述残差组SA的几何形状的特征向量fA。对于PC2中所有n个点,A0、A1、...、An-1,它们对应的特征向量f0、f1、...、fn-1一起给出特征集F-残差到特征模块的输出。
在一个实施方案中,深度神经网络处理SA使用PointNet架构,如图7所示。它由一组共享的MLP(710)组成。在每个残差点B'0、B'1、...、B'k-1上独立且平行地应用感知器(括号中的数字指示层大小)。该组共享MLP的输出(715,k×32)由全局最大池化操作(720)聚合,该操作提取长度为32(725)的全局特征向量。该全局特征向量由另一组MLP层(730)进一步处理,从而得到长度为8的输出特征向量fA(735)。
在上文中,PointNet架构被用于提取特征。应当注意,可以使用不同的网络结构或配置。例如,可根据实际情形的复杂性来调整MLP维度,或可使用更多组MLP。一般,可以使用满足输入/输出要求的任何网络结构。
在一个实施方案中,我们将残差组SA中的点的数量附加到向量fA,从而得到具有一个附加维度的增强特征向量,该增强特征向量将指示组SA的密度。当在减法模块中使用球查询时,这是特别有用的,因为通过球查询检索的点的数量对于不同的残差组可以是不同的。
假设我们处理稀疏点云并且k=1,这意味着残差组SA本身仅包含一个3D点B'0。然后,在一个实施方案中,深度神经网络被简化为一个MLP层组,如图8所示。在另一实施方案中,深度神经网络甚至被移除,并且我们直接令特征向量fA是B'0的(x,y,z)坐标。
特征编解码器
特征编解码器(特征编码器和特征解码器)的目的是对特征集进行编码/解码。具体地,它在编码器侧(图3)将特征集F(该特征集包含n个特征向量f0、f1、...、fn-1)编码为比特流BS1,并且在解码器侧(图4)将比特流BS1解码为解码的特征集F'(该解码的特征集包含n个特征向量f'0、f'1、...、f'n-1)。特征编解码器可以基于深度神经网络来实现。
在一个实施方案中,特征编码器应用具有降采样算子的稀疏3D卷积来缩小特征集F,然后对其进行编码,而特征解码器应用具有上采样算子的稀疏3D卷积来放大所接收的特征集。这是为了利用相邻特征向量之间的空间冗余来改善压缩性能。为了应用稀疏3D卷积,必须首先构建表示输入点云的稀疏3D(或4D)张量。稀疏张量仅存储被占用的体素坐标以及其相关联的特征(例如,图2D)。稀疏3D卷积层仅对被占用的体素进行操作,以便减少计算成本。在点云仅包含几何形状(3D点坐标)的简单情况下,构建稀疏3D张量,并且将值‘1’放在那些被占用的体素上。当点云包含1D向量形式的特征/属性时,构建稀疏4D张量,其中特征向量被分配给对应的被占用体素。
特征编码器
根据实施方案,在图9中示出了基于稀疏3D卷积和降采样的特征编码器。直观地,我们顺序地对特征集F进行降采样以使其更小,然后将其降采样版本Fdown编码为比特流。在图9中,我们首先利用PC2和特征集F构建(910)稀疏4D张量。具体地,我们令张量的每个体素表示3D空间中大小为s×s×s的立方体,该立方体具有与图3中的量化器/反量化器的量化步长大小s相同的长度。此后,它被传递到两个降采样处理框(920,930),每个框包含两个稀疏3D卷积层(921,923,931,933)和一个降采样算子(925,935)。在图9中,“CONV N”(921,923,931,933)标志具有N个输出信道和步幅1的稀疏3D卷积层,而“ReLU”(922,924,932,934)是ReLU非线性激活函数。框“降采样2”(925,935)是比率为2的稀疏张量降采样算子。它沿着每个维度将稀疏张量的大小缩小两倍,类似于对常规2D图像的降采样算子,对于例示性示例参见图11(1110)。
图9中的第二处理框的输出张量,标志为PCdown被馈送到特征读取器模块(940)。它从PCdown的被占用体素中读出所有特征向量,这给出了降采样特征的组Fdown。然后它被传递到量化模块(950),随后传递到熵编码器(960),从而产生输出比特流BS1。我们看到,虽然特征编码器的目标是编码特征集F,但是它仍然需要PC2作为输入,因为PC2提供用于张量操作(例如,卷积和降采样)的体素几何形状来操作。
特征解码器
图10中示出了基于稀疏3D卷积、降采样和上采样的特征解码器。直观地,我们首先从比特流解码降采样的特征集F'down,随后使用PC2的几何形状进行顺序上采样,以便逐渐地放大和细化特征。在图10中,我们首先利用熵解码器(1010)对比特流BS1进行解码,随后是反量化器(1020),从而得到降采样的特征集F'down。
另一方面,我们还仅基于PC2的几何形状(坐标)来构建(1090)3D稀疏张量,然后顺序地对张量进行降采样(1070,1045),从而得到张量PC'down。我们注意到PC'down(在图10中)和特征编码器上的PCdown(图9)上的具有相同的几何形状,但是它们的特征不同。为了对F'down进行上采样,我们将其放到PC'down的几何形状上。这是由特征替换模块(1030)完成的,该特征替换模块将用F'down替换PC'down的原始特征,从而产生另一稀疏张量PC"down。
接下来,我们通过两个上采样处理框(1040,1060)对PC"down进行上采样,其中每个框包含一个上采样算子和两个稀疏3D卷积层。在图10中,“上采样2”是比率为2的稀疏张量上采样算子。它沿着每个维度将稀疏张量的大小放大两倍,类似于对常规2D图像的上采样算子,对于例示性示例参见图11(1120)。在每个上采样处理框之后,利用坐标修剪模块(1055,1080)来细化得到的张量。图11(1130)提供了坐标修剪的例示性示例,该坐标修剪基于从坐标读取器(1050,1075)获得的一组输入坐标来移除输入张量的一些被占用的体素并保留其余体素。使用该模块,在图10中,我们从PC"down的上采样版本中移除一些体素(以及相关联的特征),并且仅保留也出现在PC2的降采样版本中的那些体素。在第二坐标修剪模块(1080)之后,我们获得具有与PC2相同几何形状的张量,然后我们对其应用特征读取器(1085)以获得解码的特征集F'。
特征编解码器中的熵译码器可以是非学习型熵译码器,它也可以是基于深度神经网络,例如因式分解先验模型或超先验模型的熵译码器(参见Ballé,Johannes等人的名称为“Variational image compression with a scale hyperprior(具有尺度超先验的变分图像压缩)”,arXiv preprint,arXiv:1802.01436,2018的文章)。
图9和图10示出了针对特征编解码器应用两个降采样/上采样处理框的示例。然而,在相同的基本原理下可以使用更少或更多的处理框。在一个实施方案中,人们甚至在特征编解码器中不应用任何降采样/上采样。在该实施方案中,特征编码器简单地在稀疏张量构建和特征读取器之间应用若干卷积层,而特征解码器在特征替换模块和特征读取器之间应用另一组卷积层。代替ReLU激活函数,其他激活函数,诸如逻辑sigmoid和tanh函数也可以被使用。卷积层的数量、卷积核大小和卷积层的输出信道的数量以及组合它们的方式也可以变化。降采样/上采样处理框还可以以不同于2的比率(标志为α)来执行降采样/上采样,例如,α=4或α=8。在一个实施方案中,通过将卷积层的步幅改变为α,降采样算子(具有降采样比率α)可以被吸收到其先前的卷积层(具有步幅1)中。类似地,上采样算子(具有上采样比率α)可以被吸收到其后续的卷积层(具有步幅1)中,并且它们一起变成具有步幅α的去卷积层。
图11被用于例示降采样、上采样、坐标读取和坐标修剪过程。为了简单起见,图11中的操作在2D空间中被例示,而相同的基本原理适用于3D空间。在该示例中,输入点云A0占用位置(0,2)、(0,3)、(0,4)、(0,5)、(1,1)、...、(7,4)处的体素。因此,坐标读取器(1140)将被占用的坐标输出为(0,2)、(0,3)、(0,4)、(0,5)、(1,1)、...、(7,4)。通过以2的比率降采样(1110)A0,在降采样点云A1中的每个维度中体素的数量减少一半,并且如果对应的四个点中的任何一个点在A0中被占用,则体素被认为被占用。在上采样(1120)A1之后,体素的数量在A2中恢复,并且如果对应的体素在A1中被占用,则A2中的体素被认为被占用。注意,现在A2比输入点云A0更密集。为了从A2中移除/修剪在A0中未被占用的点(被占用的体素),由坐标修剪模块(1130)使用被占用的坐标信息。即,在得到的点云A3中,仅在原始点云A0中被占用的体素被认为被占用。
特征到残差转换器
解码器(图4)上的特征到残差转换器将解码的特征集F'转换回残差分量R'。具体地,它应用深度神经网络以将F'中的每个特征向量f'A(与PC2中的点A相关联)转换回其对应的残差点组S'A。
在一个实施方案中,我们利用一系列MLP层实现特征到残差转换器,如图12所示。在这种情况下,F'中的特征向量,比如说f'A,被馈送到一系列MLP层(1210)。MLP层直接输出一组m个3D点C0、C1、...、Cm-1,这给出了解码的残差组S'A。因此,对于具有n个点A0、A1、...、An-1的PC2,特征到残差转换器生成它们的解码残差组,标志为S'0、S'1、...、S'n-1。这些残差组一起构成解码的残差分量R'。
我们注意到,解码点的数量m可以是固定常数,诸如m=5,或者它可以被自适应地选择,诸如基于关于PC0的密度水平的先验知识。例如,如果我们知道PC0非常稀疏,则我们可以将m设置为小的数量,诸如m=2。
在一个实施方案中,我们还移除R'中离原点太远的那些3D点。具体地,对于R'中的点Ci,如果其到原点的距离大于阈值t,则将其视为离群值并从R'中移除。阈值t可以是预定义的常数。它也可以根据编码器(图3)上的量化器的量化步长大小s来选择。例如,较大的s意味着PC2较粗略,则我们也令阈值t较大,以便在R'中保留更多的点。
代替简单地使用MLP层,在另一实施方案中,特征到残差转换器可以使用更先进的架构,诸如FoldingNet解码器(参见Yang,Yaoqing等人的“FoldingNet:Point cloud auto-encoder via deep grid deformation(FoldingNet:经由深度网格变形的点云自动编码器)”,IEEE计算机视觉和模式识别会议论文集,2018的文章)。
求和模块
在解码了残差R'之后,求和模块(图4中的)旨在将其添加回到较粗略的点云PC2,以获得细化的解码点云PC'0。
在一个实施方案中,求和模块将R'中的点添加到它们在PC2中的相关联的点,并且生成新的3D点,如图13所示。对于R'中的每个解码的残差组S'A,其点C0、C1、...、Cm-1分别与3D点A相加(1310,1320,1330),从而产生另一组m个点C'0、C'1、...、C'm-1。注意,该步骤中的求和简单地意味着逐点求和,即,两个3D点的(x,y,z)坐标分别被相加。对于具有n个3D点的PC2,该过程以总共n×m个点结束,这些n×m个点一起给出解码的点云PC'0。在一个实施方案中,求和模块在末端具有额外的步骤,该步骤从所获得的n×m个点移除重复的3D点,以得到解码的点云PC'0。
跳过模式
在一个实施方案中,解码器在不采取比特流BS1作为输入的情况下直接细化较粗略的点云PC2。到跳过模式的切换可以通过在BS0中附加标志或者通过补充增强信息(SEI)消息来指示。我们将这种解码模式称为跳过模式,因为BS1被解码器跳过。当比特率预算紧张时,该模式特别有用,因为仅需要BS0。
图14示出了跳过模式中的解码器架构,其中特征解码器仅采取PC2作为输入。在该实施方案中,特征解码器仅基于PC2的几何形状生成一组特征向量F'。在跳过模式下,特征解码器的架构也被简化,如图15所示。注意,在图15中,Fconst标志一组预定义的恒定特征,例如,具有全1的特征集。与图10不同,在跳过模式下,特征解码器直接用Fconst中的预定义特征替换PC'down的特征以得到PC"down。
多尺度译码
先前的实施方案包含两个尺度的粒度:基本层处理较粗略点云PC2的译码,以及增强层处理精细几何形状细节的译码。这种两尺度译码方案在实践中可能具有局限性。
在一个实施方案中,我们将我们的提议扩展到三尺度译码方案。这是通过将我们的两尺度编码器(图3)和我们的两尺度解码器(图4)分别封装为基本编码器和基本解码器来实现的。在这种情况下,对应于输入点云的三个不同尺度的三个比特流将由编解码器生成。
利用相同的基本原理,在另一实施方案中,我们进一步将我们的提议扩展到具有多于三个尺度的译码方案。这是通过用我们的两层编码器(图3)和我们的两层解码器(图4)递归地替换基本编码器和基本解码器来实现的。
简化的特征编解码器
在一个实施方案中,特征编解码器被简化,其中特征集F被直接熵编码/解码。在这种情况下,特征编码器仅采取特征集F作为输入。在特征编码器内部,F被直接量化并熵编码为比特流BS1。另一方面,特征解码器仅采取BS1作为输入。在特征解码器内部,BS1被熵解码,随后进行反量化,从而得到解码的特征集F'。在其中BS1不可用的跳过模式下,解码器的增强层被跳过,并且最终解码器输出是粗略点云PC2。
利用特征聚合模块的改善
在特征编码器(图9)和特征解码器(图10)内生成的特征可以通过引入附加特征聚合模块来进一步聚合/细化。特征聚合模块采取具有有N个信道的特征的稀疏张量作为输入,然后修改其特征以更好地服务于压缩任务。注意,输出特征仍然具有N个信道,即,特征聚合模块不改变稀疏张量的形状。
集成特征聚合模块
在特征编码器和/或解码器中放置特征聚合模块的位置可以变化。此外,特征聚合模块可以仅被包括在编码器侧、仅被包括在解码器侧、或者被包括在编码器侧和解码器侧两者上。在一个实施方案中,利用插入在每个降采样处理框的降采样算子之后的特征聚合模块(926,936)来调整如图9所示的特征编码器,如图16所示。在一个实施方案中,利用插入在每个坐标修剪算子之后的特征聚合模块(1046,1066)来调整如图10所示的特征解码器,如图17所示。注意,将特征聚合模块放置在坐标修剪算子之后(而不是之前)可以降低计算成本。与图10相比,在图17中,坐标修剪和特征聚合模块被吸收到前面的上采样处理框中。
在另一实施方案中,代替在每个上采样/降采样处理框中只具有一个特征聚合模块,可以级联若干特征聚合模块以实现更好的压缩性能,如图18中所示。
特征聚合模块的设计
存在特征聚合模块的不同设计选择。在一个实施方案中,它采取类似于如在Mao,Jiageng等人的“Voxel transformer for 3D object detection(用于3D对象检测的体素变换器)”,IEEE/CVF国际计算机视觉会议论文集,2021的文章中所描述的体素变换器的变换器架构。图19中示出了变换器框的图,该变换器框由具有残差连接(1920)的自注意力框(1910)和具有残差连接(1940)的MLP框(由MLP层1930组成)组成。下面描述自注意力框的细节。
给定与体素位置A相关联的当前特征向量fA以及与体素位置Ai相关联的其相邻k个特征fAi,其中,Ai(0≤i≤k-1)是输入稀疏张量中A的k个最近邻居,注意力框尽力基于所有相邻特征fAi更新特征fA。首先,利用下式计算用于A的查询嵌入QA:
QA=MLPQ(fA)。
然后计算A的所有最近邻居的密钥嵌入KAi和值嵌入VAi:
其中MLPQ(·)、MLPK(·)和MLPV(·)是分别获得查询、密钥和值的MLP层,并且EAi是体素A和体素Ai之间的位置编码,通过下式计算:
其中MLPP(·)是获得位置编码的MLP层,PA和PAi是3-D坐标,它们分别是体素A和体素Ai的中心。通过自注意力框的位置A的输出特征是:
其中σ(·)是softmax归一化函数,d是特征向量fA的长度,并且c是预定义常数。
变换器框以相同的方式更新稀疏张量中所有被占用位置的特征,然后输出更新的稀疏张量。注意,在简化的实施方案中,MLPQ(·)、MLPK(·)、MLPV(·)和MLPP(·)可仅包含一个全连接层,该全连接层对应于线性投影。
在另一实施方案中,特征聚合模块采取Inception-ResNet(IRN)架构(参见Wang,Jianqiang等人的“Multiscale point cloud geometry compression(多尺度点云几何形状压缩)”,2021数据压缩会议(DCC),IEEE,2021的文章),如图20所示。在该示例中,它示出了聚合具有D个信道的特征的IRN框的架构。再次,“CONV N”标志具有N个输出信道的3D卷积层。
在另一实施方案中,特征聚合模块采取ResNet架构(参见He,Kaiming等人的“Deepresidual learning for image recognition(用于图像识别的深度残差学习)”,IEEE计算机视觉和模式识别会议论文集,2016的文章),如图21所示。在该示例中,它示出了聚合具有D个信道的特征的ResNet框的架构。
在本申请中使用各种数值。具体值是为了示例目的,并且所述方面不限于这些具体值。
本文描述了各种方法,并且每种方法包括用于实现方法的一个或多个步骤或动作。除非正确操作方法需要特定顺序的步骤或动作,否则可修改或组合特定步骤和/或动作的顺序和/或用途。另外地,术语诸如“第一”、“第二”等可用于各种实施方案以修改元件、部件、步骤、操作等,诸如“第一解码”和“第二解码”。除非具体要求,否则使用此类术语并不暗示对修改操作的排序。因此,在这个示例中,第一解码不需要在第二解码之前执行,并且可例如在第二解码之前、期间或在重叠的时间段中发生。
本文所述的具体实施和方面可在例如方法或过程、装置、软件程序、数据流或信号中实现。即使仅在单个形式的具体实施的上下文中讨论(例如,仅作为方法讨论),讨论的特征的具体实施也可以其他形式(例如,装置或程序)实现。装置可在例如适当的硬件、软件和固件中实现。方法可在例如一般是指处理设备的装置(例如,处理器)中实施,该处理器包括例如计算机、微处理器、集成电路或可编程逻辑设备。处理器还包括通信设备,例如计算机、手机、便携式/个人数字助理(“PDA”)以及便于最终用户之间信息通信的其他设备。
对“一个实施方案”或“实施方案”或“一个具体实施”或“具体实施”的引用以及它们的其他变型,意味着结合实施方案所描述的特定的特征、结构、特性等被包括在至少一个实施方案中。因此,短语“在一个实施方案中”或“在实施方案中”或“在一个具体实施中”或“在具体实施中”的出现以及出现在整篇本申请的各个地方的任何其他变型不一定都是指相同的实施方案。
另外地,本申请可以涉及“确定”各种信息片段。确定信息可包括例如估计信息、计算信息、预测信息或从存储器检索信息中的一者或多者。
此外,本申请可涉及“访问”各种信息片段。访问信息可包括例如接收信息、(例如,从存储器)检索信息、存储信息、移动信息、复制信息、计算信息、确定信息、预测信息或估计信息中的一者或多者。
另外地,本申请可涉及“接收”各种信息片段。与“访问”一样,接收旨在为广义的术语。接收信息可包括例如访问信息或检索信息(例如,从存储器)中的一者或多者。此外,在操作期间“接收”通常以一种方式或另一种方式涉及,例如存储信息、处理信息、传输信息、移动信息、复制信息、擦除信息、计算信息、确定信息、预测信息或估计信息。
应当理解,例如,在“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)。如对于本领域和相关领域的普通技术人员显而易见的是,这可扩展到所列出的尽可能多的项目。
对于本领域的普通技术人员将显而易见的是,具体实施可产生格式化为携带例如可存储或可发射的信息的多种信号。信息可包括例如用于执行方法的指令或由所述具体实施中的一个具体实施产生的数据。例如,可格式化信号以携带该实施方案的比特流。此类信号可格式化为例如电磁波(例如,使用频谱的射频部分)或基带信号。格式化可包括例如对数据流进行编码并且使用经编码的数据流调制载体。信号携带的信息可为例如模拟或数字信息。众所周知,信号可通过多种不同的有线或无线链路进行发射。信号可存储在处理器可读介质上。
Claims (35)
1.一种对点云数据进行解码的方法,所述方法包括:
对点云的第一版本进行解码;
获得用于所述点云的所述第一版本的逐点特征集;
从所述逐点特征集获得所述点云的所述第一版本的细化信息;以及
基于所述细化信息和所述点云的所述第一版本来获得所述点云的第二版本。
2.根据权利要求1所述的方法,其中,所述点云的所述第一版本是基于所述点云的第三版本和所述点云的所述第三版本的细化信息来获得的。
3.根据权利要求1或2所述的方法,其中,所述获得逐点特征集包括:
获得特征集;以及
对所述特征集进行上采样以形成上采样的特征集。
4.根据权利要求3所述的方法,所述方法进一步包括:
获得指示哪些点存在于所述点云的所述第一版本中的坐标信息;以及
响应于所述坐标信息修剪所述上采样的特征集,以形成细化的特征集。
5.根据权利要求4所述的方法,其中,所述获得坐标信息包括对所述点云的所述第一版本进行降采样。
6.根据权利要求3至5中任一项所述的方法,其中,所述特征集从比特流解码。
7.根据权利要求3至5中任一项所述的方法,其中,所述特征集是恒定的。
8.根据权利要求1至7中任一项所述的方法,其中,所述获得细化信息包括:
将所述逐点特征集中的每个特征转换为一个或多个3D点。
9.根据权利要求8所述的方法,所述方法进一步包括:
响应于点与原点的距离而从所述一个或多个3D点移除所述点。
10.根据权利要求9所述的方法,其中,所述距离适应于在反量化中使用的量化步长大小。
11.根据权利要求3至10中任一项所述的方法,其中,所述上采样包括张量上采样和卷积层。
12.根据权利要求3至10中任一项所述的方法,其中,所述上采样至少包括去卷积层。
13.根据权利要求3至10中任一项所述的方法,其中,所述上采样应用特征聚合。
14.根据权利要求13所述的方法,其中,所述特征聚合基于变换器模块、Inception-ResNet模块或ResNet模块。
15.根据权利要求13或14所述的方法,其中,所述特征聚合在所述修剪所述上采样的特征集之后被应用。
16.一种对点云数据进行编码的方法,所述方法包括:
对点云的第一版本进行编码;
重建所述点云的第二版本;
基于所述点云的所述第二版本和所述点云来获得细化信息;
从所述细化信息获得用于所述点云的所述第二版本的逐点特征集;以及
对所述逐点特征集进行编码。
17.根据权利要求16所述的方法,其中,所述细化信息对应于残差分量。
18.根据权利要求16或17所述的方法,其中,所述重建所述点云的第二版本包括:
反量化所述点云的解码的第一版本以形成所述点云的所述第二版本。
19.根据权利要求16至18中任一项所述的方法,其中,所述对所述点云的所述第一版本进行编码包括:
对所述点云的第三版本进行编码,所述第三版本是所述点云的所述第一版本的较粗略版本;
从所述点云的所述第三版本重建所述点云的第四版本;
基于所述点云的所述第一版本和点云的所述第四版本来获得另一细化信息;
从所述另一细化信息获得用于所述点云的所述第四版本的另一逐点特征集;以及
对所述另一逐点特征集进行编码。
20.根据权利要求16至19中任一项所述的方法,其中,对于所述点云的所述第二版本中的点,所述获得细化信息包括:
获得所述点云的所述第一版本中的一个或多个最近邻居;以及
获得所述点和所述一个或多个最近邻居的每个点的3D坐标之间的相应差。
21.根据权利要求16至20中任一项所述的方法,其中,基于点的神经网络架构被用于从所述细化信息获得用于所述点云的所述第二版本的所述逐点特征集。
22.根据权利要求21所述的方法,其中,所述基于点的神经网络架构包括PointNet。
23.根据权利要求16至22中任一项所述的方法,其中,所述对逐点特征集进行编码包括:
基于所述点云的所述第二版本,对所述逐点特征集进行降采样。
24.根据权利要求23所述的方法,所述方法进一步包括:
基于所述逐点特征集和所述点云的所述第二版本来形成稀疏张量,其中所述降采样在所述稀疏张量上被执行。
25.根据权利要求24所述的方法,所述方法进一步包括:
从所述降采样的稀疏张量获得特征向量;以及
对所述特征向量进行量化和编码。
26.根据权利要求23至25中任一项所述的方法,其中,存在多于一次的降采样迭代。
27.根据权利要求16至26中任一项所述的方法,其中,所述残差分量指示所述点云的所述第一版本的几何形状细节。
28.根据权利要求16至27中任一项所述的方法,所述方法进一步包括对指示所述逐点特征集被编码的信号进行编码。
29.根据权利要求23至27中任一项所述的方法,其中,所述降采样包括张量降采样层和卷积层。
30.根据权利要求23至27中任一项所述的方法,其中,所述降采样至少包括具有多于1的步幅的卷积层。
31.根据权利要求23至27中任一项所述的方法,其中,所述降采样应用特征聚合。
32.根据权利要求31所述的方法,其中,所述特征聚合基于变换器模块、Inception-ResNet模块或ResNet模块。
33.一种装置,所述装置包括一个或多个处理器和耦接到所述一个或多个处理器的至少一个存储器,其中所述一个或多个处理器被配置为执行根据权利要求1至32中任一项所述的方法。
34.一种包括点云数据的信号,所述包括点云数据的信号通过执行根据权利要求16至32中任一项所述的方法形成。
35.一种计算机可读存储介质,所述计算机可读存储介质在其上存储有用于根据权利要求1至32中任一项所述的方法对点云进行编码或解码的指令。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US63/297,869 | 2022-01-10 | ||
US202263388087P | 2022-07-11 | 2022-07-11 | |
US63/388,087 | 2022-07-11 | ||
PCT/US2022/052861 WO2023132919A1 (en) | 2022-01-10 | 2022-12-14 | Scalable framework for point cloud compression |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118575194A true CN118575194A (zh) | 2024-08-30 |
Family
ID=92477164
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202280089512.2A Pending CN118575194A (zh) | 2022-01-10 | 2022-12-14 | 用于点云压缩的可缩放框架 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN118575194A (zh) |
-
2022
- 2022-12-14 CN CN202280089512.2A patent/CN118575194A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20200107048A1 (en) | Method and apparatus for video coding | |
WO2019076503A1 (en) | APPARATUS, METHOD AND COMPUTER PROGRAM FOR ENCODING VOLUMETRIC VIDEO | |
WO2023132919A1 (en) | Scalable framework for point cloud compression | |
KR20230131878A (ko) | 포인트 클라우드 프로세싱을 위한 장치 및 방법 | |
US20220337872A1 (en) | Point cloud data transmission device, point cloud data transmission method, point cloud data reception device, and point cloud data reception method | |
CN115336243A (zh) | 基于哈尔的点云编码方法和装置 | |
CN111727461A (zh) | 信息处理装置和方法 | |
US20240242390A1 (en) | Point cloud data transmission method, point cloud data transmission device, point cloud data reception method, and point cloud data reception device | |
CN115086658A (zh) | 点云数据的处理方法、装置、存储介质及编解码设备 | |
CN116486009A (zh) | 单目三维人体重建方法、装置以及电子设备 | |
US20230328270A1 (en) | Point cloud data transmission device, point cloud data transmission method, point coud data reception device, and point cloud data reception method | |
CN118575194A (zh) | 用于点云压缩的可缩放框架 | |
US20240276013A1 (en) | Point cloud data transmission device, point cloud data transmission method, point cloud data reception device and point cloud data reception method | |
CN118402234A (zh) | 用于点云压缩的混合框架 | |
CN118303023A (zh) | 基于离群值分组的点云压缩 | |
CN117280386A (zh) | 经由tearing transform的基于学习的点云压缩 | |
CN117677978A (zh) | 通过展开3d点云进行基于学习的点云压缩 | |
CN118355408A (zh) | 二进制体素网格译码的状态汇总 | |
CN118176525A (zh) | 用于使用混合深度熵译码进行点云压缩的方法和装置 | |
EP4369716A1 (en) | Point cloud data transmission device, point cloud data transmission method, point cloud data reception device, and point cloud data reception method | |
CN118302959A (zh) | 通过自适应点生成进行基于学习的点云压缩 | |
WO2024081133A1 (en) | Sparse tensor-based bitwise deep octree coding | |
KR20240105394A (ko) | 바이너리 복셀 그리드 코딩에 대한 상태 요약 | |
CN115720273A (zh) | 点云编解码中的属性预测方法、装置、设备及存储介质 | |
CN115914651A (zh) | 点云编解码方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |