CN118614061A - 编解码方法、编码器、解码器以及存储介质 - Google Patents
编解码方法、编码器、解码器以及存储介质 Download PDFInfo
- Publication number
- CN118614061A CN118614061A CN202280087595.1A CN202280087595A CN118614061A CN 118614061 A CN118614061 A CN 118614061A CN 202280087595 A CN202280087595 A CN 202280087595A CN 118614061 A CN118614061 A CN 118614061A
- Authority
- CN
- China
- Prior art keywords
- point cloud
- layer
- module
- information
- reconstruction
- 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 113
- 238000013528 artificial neural network Methods 0.000 claims abstract description 126
- 238000012549 training Methods 0.000 claims abstract description 39
- 238000013138 pruning Methods 0.000 claims description 98
- 230000004913 activation Effects 0.000 claims description 86
- 238000005070 sampling Methods 0.000 claims description 51
- 238000000605 extraction Methods 0.000 claims description 44
- 230000006837 decompression Effects 0.000 claims description 37
- 230000006835 compression Effects 0.000 claims description 33
- 238000007906 compression Methods 0.000 claims description 33
- 238000004590 computer program Methods 0.000 claims description 16
- 244000141353 Prunus domestica Species 0.000 claims description 8
- 238000010586 diagram Methods 0.000 description 26
- 239000013598 vector Substances 0.000 description 24
- 238000004422 calculation algorithm Methods 0.000 description 23
- 230000008569 process Effects 0.000 description 15
- 230000006870 function Effects 0.000 description 11
- 238000013139 quantization Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 7
- 238000012545 processing Methods 0.000 description 6
- 230000009466 transformation Effects 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 5
- 238000011176 pooling Methods 0.000 description 4
- 230000003068 static effect Effects 0.000 description 4
- 230000001360 synchronised effect Effects 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 3
- 235000019800 disodium phosphate Nutrition 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000015572 biosynthetic process Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 238000007654 immersion Methods 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 230000008447 perception Effects 0.000 description 2
- 238000003786 synthesis reaction Methods 0.000 description 2
- KLDZYURQCUYZBL-UHFFFAOYSA-N 2-[3-[(2-hydroxyphenyl)methylideneamino]propyliminomethyl]phenol Chemical compound OC1=CC=CC=C1C=NCCCN=CC1=CC=CC=C1O KLDZYURQCUYZBL-UHFFFAOYSA-N 0.000 description 1
- 238000010146 3D printing Methods 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 201000001098 delayed sleep phase syndrome Diseases 0.000 description 1
- 208000033921 delayed sleep phase type circadian rhythm sleep disease Diseases 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000009365 direct transmission Effects 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000004549 pulsed laser deposition Methods 0.000 description 1
- 238000002310 reflectometry Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000011426 transformation method Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/124—Quantisation
-
- 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/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/513—Processing of motion vectors
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Molecular Biology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本申请实施例公开了一种编解码方法、编码器、解码器以及存储介质,该方法包括:确定当前帧点云和参考帧重建点云;利用预设第一神经网络基于参考帧重建点云对当前帧点云进行编码,将得到的编码比特写入码流;其中,第一神经网络为端到端神经网络配置成:基于参考帧重建点云和当前帧点云进行帧间预测,得到当前帧点云的运动信息和残差信息;进行编码,将得到的编码比特写入码流。这样,利用端到端的神经网络进行点云编码,该网络在训练时无需额外标注样本的运动信息的训练样本集,降低了训练难度,以降低码率保证点云重建质量为训练目标,使用该网络进行编解码不仅能够提升点云的质量,还能够节省码率,进而提高编解码效率。
Description
本申请实施例涉及视频编解码技术领域,尤其涉及一种编解码方法、编码器、解码器以及存储介质。
点云被定义为三维空间中点的集合,其中每个点被表示为三维坐标和具体的属性信息。随着三维重建和三维成像技术的发展,点云被广泛应用于虚拟现实、沉浸式远程呈现、三维打印等领域。点云的一种典型应用是在虚拟现实和远程呈现中表示动态人体的三维影像,这种影像被称为动态点云(Dynamic Point Cloud,DPC),点云的数据量庞大,对动态点云的压缩是这些应用中的关键技术。
现有的动态点云压缩技术单独针对运动估计和补偿部分构建神经网络,在训练过程中需要为数据集标注运动向量,增加训练难度,由此构建的编解码框架的编解码效率有待提高。
发明内容
本申请实施例提供一种编解码方法、编码器、解码器以及存储介质,采用一种端到端神经网络进行编解码,不仅能够提升点云的质量,还能够节省码率,进而提高编解码效率。
本申请实施例的技术方案可以如下实现:
第一方面,本申请实施例提供了一种编码方法,应用于编码器,该方法包括:
确定当前帧点云,以及所述当前帧点云对应的参考帧重建点云;
利用预设第一神经网络基于所述参考帧重建点云对所述当前帧点云进行编码,将得到的编码比特写入码流;
其中,所述第一神经网络为端到端神经网络,所述第一神经网络配置成:
基于所述参考帧重建点云和所述当前帧点云进行帧间预测,得到所述当前帧点云的运动信息和残差信息;
对所述运动信息和所述残差信息进行编码,将得到的编码比特写入码流。
第二方面,本申请实施例提供了一种解码方法,应用于解码器,该方法包括:
获取码流;
利用预设第二神经网络解码码流得到当前帧重建点云;
其中,所述第二神经网络为端到端神经网络,所述第二神经网络配置成:
解码码流,确定当前帧点云的运动信息和残差信息;
基于所述运动信息和参考帧重建点云进行运动补偿,得到所述当前帧点云的预测信息;
基于所述残差信息和所述当前帧点云的预测信息,得到所述当前帧重建点云。
第三方面,本申请实施例提供了一种编码器,该编码器包括确定单元和编码单元;其中,
所述确定单元,用于确定当前帧点云,以及所述当前帧点云对应的参考帧重建点云;
所述编码单元,用于利用预设第一神经网络基于所述参考帧重建点云对所述当前帧点云进行编码,将得到的编码比特写入码流;
其中,所述第一神经网络为端到端神经网络,所述第一神经网络配置成:
基于所述参考帧重建点云和所述当前帧点云进行帧间预测,得到所述当前帧点云的运动信息和残差信息;
对所述运动信息和所述残差信息进行编码,将得到的编码比特写入码流。
第四方面,本申请实施例提供了一种编码器,该编码器包括第一存储器和第一处理器;其中,
第一存储器,用于存储能够在第一处理器上运行的计算机程序;
第一处理器,用于在运行计算机程序时,执行如第一方面的方法。
第五方面,本申请实施例提供了一种解码器,该解码器包括获取单元和解码单元,其中,
所述获取单元,用于获取码流;
所述解码单元,用于利用预设第二神经网络解码码流得到当前帧重建点云;
其中,所述第二神经网络为端到端神经网络,所述第二神经网络配置成:
解码码流,确定当前帧点云的运动信息和残差信息;
基于所述运动信息和参考帧重建点云进行运动补偿,得到所述当前帧点云的预测信息;
基于所述残差信息和所述当前帧点云的预测信息,得到所述当前帧重建点云。
第六方面,本申请实施例提供了一种解码器,该解码器包括第二存储器和第二处理器;其中,
第二存储器,用于存储能够在第二处理器上运行的计算机程序;
第二处理器,用于在运行计算机程序时,执行如第三方面所述的方法。
第七方面,本申请实施例提供了一种计算机存储介质,该计算机存储介质存储有计算机程序,所述计算机程序被第 一处理器执行时实现如第一方面所述的方法、或者被第二处理器执行时实现如第二方面所述的方法。
本申请实施例提供了一种编解码方法、编码器、解码器以及存储介质,在编码器中,确定当前帧点云,以及所述当前帧点云对应的参考帧重建点云;利用预设第一神经网络基于所述参考帧重建点云对所述当前帧点云进行编码,将得到的编码比特写入码流;其中,所述第一神经网络为端到端神经网络,所述第一神经网络配置成:基于所述参考帧重建点云和所述当前帧点云进行帧间预测,得到所述当前帧点云的运动信息和残差信息;对所述运动信息和所述残差信息进行编码,将得到的编码比特写入码流。在解码器中,获取码流;利用预设第二神经网络解码码流得到当前帧重建点云;其中,所述第二神经网络为端到端神经网络,所述第二神经网络配置成:解码码流,确定当前帧点云的运动信息和残差信息;基于所述运动信息和参考帧重建点云进行运动补偿,得到所述当前帧点云的预测信息;基于所述残差信息和所述当前帧点云的预测信息,得到所述当前帧重建点云。这样,编码器利用一种端到端的神经网络进行点云编码,该网络在训练时无需额外标注样本的运动信息的训练样本集,降低了训练难度,该网络以降低码率保证点云重建质量为训练目标,使用该网络进行编码不仅能够提升点云的质量,还能够节省码率,进而提高编码效率。相应地,解码器利用第二神经网络进行点云重建,第二神经网络可以理解为第一神经网络中具备解码功能的部分网络结构,编码端和解码端的神经网络作为一个整体进行端到端自监督学习,减少人为干预,使用该网络进行解码,能够降低的失真保证重建点云质量。
图1为一种G-PCC编码器的组成框架示意图;
图2为一种G-PCC解码器的组成框架示意图;
图3为本申请实施例提供的编码方法的流程示意图;
图4为本申请实施例中帧间预测模块的组成结构示意图;
图5为本申请实施例中第一神经网络的组成结构示意图;
图6为本申请实施例中下采样模块的组成结构示意图;
图7为本申请实施例中第一上采样模块的组成结构示意图;
图8为本申请实施例中第二上采样模块的组成结构示意图;
图9为本申请实施例中解码方法的流程示意图;
图10为本申请实施例中第二神经网络的组成结构示意图;
图11为本申请实施例提供的一种编码器的组成结构示意图;
图12为本申请实施例提供的一种编码器的具体硬件结构示意图;
图13为本申请实施例提供的一种解码器的组成结构示意图;
图14为本申请实施例提供的一种解码器的具体硬件结构示意图;
图15为本申请实施例提供的一种编解码系统的组成结构示意图。
为了能够更加详尽地了解本申请实施例的特点与技术内容,下面结合附图对本申请实施例的实现进行详细阐述,所附附图仅供参考说明之用,并非用来限定本申请实施例。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。还需要指出,本申请实施例所涉及的术语“第一\第二\第三”仅是用于区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本申请实施例能够以除了在这里图示或描述的以外的顺序实施。
对本申请实施例进行进一步详细说明之前,先对本申请实施例中涉及的名词和术语进行说明,本申请实施例中涉及的名词和术语适用于如下的解释:
基于几何的点云压缩(Geometry-based Point Cloud Compression,G-PCC或GPCC),基于视频的点云压缩(Video-based Point Cloud Compression,V-PCC或VPCC),变分自编码器(Variational AutoEncoder,VAE),自编码器(AutoEncoder,AE),变分自解码器(Variational AutoDecoder,VAD),自解码器(AutoDecoder,AD),多层感知机(Multi-layer Perceptron),三层初始残差网络(Inception Residual Network,IRN),二元交叉熵(binary cross entropy),八叉树(Octree),包围盒(bounding box),K近邻(K Nearest Neighbor,KNN)
点云是物体表面的三维表现形式,通过光电雷达、激光雷达、激光扫描仪、多视角相机等采集设备,可以采集得到物体表面的点云(数据)。
点云(Point Cloud)是指海量三维点的集合,点云中的点可以包括点的位置信息和点的属性信息。例如,点的位置信息可以是点的三维坐标信息。点的位置信息也可称为点的几何信息。例如,点的属性信息可包括颜色信息和/或反射率等等。例如,颜色信息可以是任意一种色彩空间上的信息。例如,颜色信息可以是RGB信息。其中,R表示红色(Red,R),G表示绿色(Green,G),B表示蓝色(Blue,B)。再如,颜色信息可以是亮度色度(YCbCr,YUV)信息。其中,Y表示明亮度,Cb(U)表示蓝色色度,Cr(V)表示红色色度。
根据激光测量原理得到的点云,点云中的点可以包括点的三维坐标信息和点的激光反射强度(reflectance)。再如, 根据摄影测量原理得到的点云,点云中的点可以可包括点的三维坐标信息和点的颜色信息。再如,结合激光测量和摄影测量原理得到点云,点云中的点可以可包括点的三维坐标信息、点的激光反射强度(reflectance)和点的颜色信息。
点云可以按获取的途径分为:
第一类静态点云:即物体是静止的,获取点云的设备也是静止的;第二类动态点云:物体是运动的,但获取点云的设备是静止的;第三类动态获取点云:获取点云的设备是运动的。
例如,按点云的用途分为两大类:
类别一:机器感知点云,其可以用于自主导航系统、实时巡检系统、地理信息系统、视觉分拣机器人、抢险救灾机器人等场景;类别二:人眼感知点云,其可以用于数字文化遗产、自由视点广播、三维沉浸通信、三维沉浸交互等点云应用场景。
由于点云是海量点的集合,存储点云不仅会消耗大量的内存,而且不利于传输,也没有这么大的带宽可以支持将点云不经过压缩直接在网络层进行传输,因此,需要对点云进行压缩。
截止目前,可对点云进行压缩的点云编码框架可以是运动图像专家组(Moving Picture Experts Group,MPEG)提供的G-PCC编解码框架或V-PCC编解码框架,也可以是音视频编码标准(Audio Video Standard,AVS)提供的AVS-PCC编解码框架。其中,G-PCC编解码框架可用于针对第一类静态点云和第三类动态获取点云进行压缩,V-PCC编解码框架可用于针对第二类动态点云进行压缩。在本申请实施例中,这里主要是针对G-PCC编解码框架进行描述。
可以理解,在点云G-PCC编解码框架中,将输入三维图像模型的点云进行条带(slice)划分后,对每一个slice进行独立编码。
图1为一种G-PCC编码器的组成框架示意图。如图1所示,该G-PCC编码器应用于点云编码器。在该G-PCC编码框架中,针对待编码的点云数据,首先通过slice划分,将点云数据划分为多个slice。在每一个slice中,点云的几何信息和每个点云所对应的属性信息是分开进行编码的。在几何编码过程中,对几何信息进行坐标转换,使点云全都包含在一个bounding box中,然后再进行量化,这一步量化主要起到缩放的作用,由于量化取整,使得一部分点云的几何信息相同,于是再基于参数来决定是否移除重复点,量化和移除重复点这一过程又被称为体素化过程。接着对bounding box进行八叉树划分。在基于八叉树的几何信息编码流程中,将包围盒八等分为8个子立方体,对非空的(包含点云中的点)的子立方体继续进行八等分,直到划分得到的叶子结点为1×1×1的单位立方体时停止划分,对叶子结点中的点进行算术编码,生成二进制的几何比特流,即几何码流。在基于三角面片集(triangle soup,trisoup)的几何信息编码过程中,同样也要先进行八叉树划分,但区别于基于八叉树的几何信息编码,该trisoup不需要将点云逐级划分到边长为1×1×1的单位立方体,而是划分到子块(block)边长为W时停止划分,基于每个block种点云的分布所形成的表面,得到该表面与block的十二条边所产生的至多十二个交点(vertex),对vertex进行算术编码(基于交点进行表面拟合),生成二进制的几何比特流,即几何码流。Vertex还用于在几何重建的过程的实现,而重建的集合信息在对点云的属性编码时使用。
在属性编码过程中,几何编码完成,对几何信息进行重建后,进行颜色转换,将颜色信息(即属性信息)从RGB颜色空间转换到YUV颜色空间。然后,利用重建的几何信息对点云重新着色,使得未编码的属性信息与重建的几何信息对应起来。属性编码主要针对颜色信息进行,在颜色信息编码过程中,主要有两种变换方法,一是依赖于LOD划分的基于距离的提升变换,二是直接进行RAHT变换,这两种方法都会将颜色信息从空间域转换到频域,通过变换得到高频系数和低频系数,最后对系数进行量化(即量化系数),最后,将经过八叉树划分及表面拟合的几何编码数据与量化系数处理属性编码数据进行slice合成后,依次编码每个block的vertex坐标(即算术编码),生成二进制的属性比特流,即属性码流。
图2为一种G-PCC解码器的组成框架示意图。如图2所示,该G-PCC解码器应用于点云编码器。在该G-PCC解码框架中,针对所获取的二进制码流,首先对二进制码流中的几何比特流和属性比特流分别进行独立解码。在对几何比特流的解码时,通过算术解码-八叉树合成-表面拟合-重建几何-逆坐标转换,得到点云的几何信息;在对属性比特流的解码时,通过算术解码-反量化-基于LOD的提升逆变换或者基于RAHT的逆变换-逆颜色转换,得到点云的属性信息,基于几何信息和属性信息还原待编码的点云数据的三维图像模型。
然而,已有的G-PCC编解码框架在进行运动估计和运动补偿时,会使用单独的网络来实现,在训练过程中需要计算预测的运动向量与真实的运动向量之间的损失值,往往需要为数据集标注运动向量,该网络的应用可能会使得重建点云和原始点云相差比较大,失真较为严重,从而会影响到整个点云的质量。
基于此,本申请实施例提出一种编解码方法,该方法可以影响G-PCC编码框架中的运动估计和运动补偿的部分,也可以影响G-PCC解码框架中的运动补偿的部分。
下面将结合附图对本申请各实施例进行清楚、完整的描述。
本申请实施例提供了一种点云编码方法,应用于编码器,图3为本申请实施例提供的编码方法的流程示意图,如图3所示,该方法可以包括:
步骤301:确定当前帧点云,以及所述当前帧点云对应的参考帧重建点云;
需要说明的是,本申请实施例所述的编码方法具体是指点云编码方法,可以应用于点云编码器(本申请实施例中,可简称为“编码器”)。
当前帧点云可以理解为待编码的点云,对于当前帧点云中的一个点,在对该点进行编码时,其可以作为当前帧点云中的待编码点,而该点的周围存在有多个已编码点。参考帧重建点云可以理解为已编码点云,参考帧重建点云可以为上一帧重建点云,或者当前帧点云中部分已编码点的重建点集合。也就是说,待编码点的参考点可以为上一帧或当前帧的重建点。
进一步地,在本申请实施例中,对于当前帧点云中的一个点,其对应一个几何信息和一个属性信息;其中,几何信 息表征该点的空间位置,几何信息具体为三维几何坐标。属性信息可以包括颜色分量,具体为任意颜色空间的颜色信息。示例性地,属性信息可以为RGB空间的颜色信息,也可以为YUV空间的颜色信息,还可以为YCbCr空间的颜色信息等等,本申请实施例不作具体限定。
步骤302:利用预设第一神经网络基于所述参考帧重建点云对所述当前帧点云进行编码,将得到的编码比特写入码流;
其中,所述第一神经网络为端到端神经网络,所述第一神经网络配置成:
基于所述参考帧重建点云和所述当前帧点云进行帧间预测,得到所述当前帧点云的运动信息和残差信息;
对所述运动信息和所述残差信息进行编码,将得到的编码比特写入码流。
示例性的,在一些实施例中,所述第一神经网络包括帧间预测模块,所述帧间预测模块配置成:
基于所述参考帧重建点云和所述当前帧点云进行多尺度运动估计,得到所述运动信息;
基于解码后的运动信息和所述参考帧重建点云进行运动补偿,得到所述当前帧点云的预测信息;
基于所述当前帧点云和所述当前帧点云的预测信息,得到所述残差信息。
这里,当前帧点云可以理解为当前帧点云的真实信息,真实信息与预测信息相减得到残差信息,真实信息具体包括各点的属性真实值,预测信息包括各点的属性预测值。
这里,帧间预测包括运动估计和运动补偿。对于运动估计,本申请实施例提供了一种多尺度运动估计方法,用来解决现有运动估计网络时间与空间复杂度过高的问题。对于运动补偿,本申请实施例提供了一种有界三近邻插值算法,解决了在稀疏的点云空间中插值效果不佳的问题。
示例性的,在一些实施例中,所述帧间预测模块包括多尺度运动估计模块,所述多尺度运动估计模块配置成:
将所述参考帧重建点云和所述当前帧点云进行连接,得到连接数据;
从连接数据中提取原始运动信息;
对所述原始运动信息进行低尺度运动估计,得到第一运动信息;
基于所述第一运动信息对所述原始运动信息进行高尺度运动估计,得到第二运动信息;
基于所述第一运动信息和所述第二运动信息,得到最终的所述运动信息。
这里,低尺度运动估计可以理解为一种低精度的运动估计,得到的低尺度运动信息(即第一运动信息)用于表示当前帧点云中的物体的大致运动方向。示例性的,低尺度运动信息表示包含人的点云块从参考帧到当前帧的运动信息。
高尺度运动估计可以理解为一种高精度的运动估计,得到的高尺度运动信息(即第二运动信息)用于表示当前帧点云中的物体的具体运动方向。示例性的,高尺度运动信息表示包含人的点云块中人体不同部位从参考帧到当前帧的运动信息。
示例性的,运动信息具体指运动向量,运动向量可以分解为xyz三分方向上的运动分量,参与到运动补偿中。
也就是说,在编码端,首先进行低尺度的运动估计,得到低尺度的运动信息,低尺度的运动信息包含了粗略的运动向量。使用低尺度的运动信息指引高尺度的运动估计,得到高尺度的运动信息,包含了精细的运动向量。将低尺度的运动信息与高尺度的运动信息相加,得到综合运动信息。综合运动信息能够跟准确的表示待编码点的运动特征,提高运动估计精度,进而提高后续运动补偿精度,提高点云重建质量。
示例性的,在一些实施例中,所述帧间预测模块包括第一压缩模块以及与所述第一压缩模块对应的第一解压缩模块;
所述第一压缩模块配置成:对所述运动信息进行下采样;对下采样后的运动信息进行量化和熵编码,得到所述运动信息的编码比特;
所述第一解压缩模块配置成:对所述运动信息的编码比特进行熵解码和上采样,得到解码后的运动信息。
需要说明的是,若第一压缩模块的量化步长大于1,则第一解压缩模块在熵解码之后还包括反量化。
示例性的,第一压缩模块包括:卷积层、量化器和自编码器(AE),第一解压缩模块包括:自解码器(AD)和反卷积层。运动信息进行下采样、量化之后经熵模型得到概率分布,使用AE进行算术编码得到01比特流,传至解码端。在解码端进行对应的熵解码与上采样,得到解码后的运行信息参与到点云重建。在编码端也需进行对应的熵解码与上采样,得到解码后的运行信息参与到点云重建,得到当前帧重建点云参与到下一帧点云的编码中。
进一步地,在编码端帧间预测模块还包括运动补偿模块,运动补偿模块采用预设的插值算法进行运动补偿。示例性的,插值算法可以为有界三近邻插值算法,或者三线性插值算法。
示例性的,在一些实施例中,当运动补偿模块基于有界三近邻插值算法进行运动补偿时,所述运动补偿模块配置成:
从解码后的运动信息中获取所述当前帧点云中目标点的运动信息;
基于所述目标点在所述当前帧点云中的第一几何坐标和所述目标点的运动信息,确定所述目标点在所述参考帧重建点云中对应的第二几何坐标;
基于所述第二几何坐标在所述参考帧重建点云中确定K个近邻点;
基于所述K个近邻点在所述参考帧重建点云中的属性重建值,以及预设的惩罚系数,确定所述目标点在所述当前帧点云中的属性预测值;
其中,所述惩罚系数用于限制孤立点的K个近邻点的权重。
这里,惩罚系数可以理解为限制近邻点的选取边界,对于孤立点来说,近邻点距离较远,惩罚系数限制孤立点的近邻点的权重,避免孤立点在插值后仍能获得较大的属性预测值。
需要说明的是,K个近邻点是指参考帧中与第二几何坐标距离最近的K个点,第二几何坐标可以整数或小数。当K=3时,利用参考帧中3个近邻点的属性重建值进行预测。
示例性的,在一些实施例中,所述惩罚系数用于限制孤立点的K个近邻点的权重之和,
所述基于所述K个近邻点在所述参考帧重建点云中的属性重建值,以及预设的惩罚系数,确定所述目标点在所述当 前帧点云中的属性预测值,包括:
基于所述第二几何坐标和所述K个近邻点的几何坐标确定所述K个近邻点的权重;
所述K个近邻点的权重之和大于所述惩罚系数时,基于所述惩罚系数、所述K个近邻点的权重和所述K个近邻点的属性重建值,确定所述目标点的属性预测值;
所述K个近邻点的权重之和小于或者等于所述惩罚系数时,基于所述K个近邻点的权重之和、所述K个近邻点的权重和所述K个近邻点的属性重建值,确定所述目标点的属性预测值。
示例性的,基于第二几何坐标和K个近邻点的几何坐标确定近邻点与第二几何坐标之间的距离,基于所述距离确定权重。
距离越远权重越小,距离越近权重越大,惩罚系数可以通过限制每个近邻点的权重,或者通过限制K个近邻点的权重之和,来实现限制孤立点的K个近邻点的权重,来避免孤立点在插值后仍能获得较大的属性预测值。
示例性的,以K=3为例对有界三近邻插值算法进行进一步地举例说明。
对于当前帧的特征的几何坐标集合C={(x
i,y
i,z
i)∣i∈{1,2,…,N}}与参考帧的特征P′={(x
i′,y
i′,z
i′,f′
i)∣i∈{0,1,…,N′}},f′
i为参考帧点(x
i′,y
i′,z
i′)的属性重建值,对应几何坐标(x
i,y
i,z
i)的属性预测值
的计算方法如下:
其中
为(x
i+Δx
i,y
i+Δy
i,z
i+Δz
i)在参考帧的几何坐标集合C′中的第j个近邻,Δx
i,Δy
i,Δz
i分别是运动向量在x,y,z方向上的分量。α为惩罚系数,
为第j个近邻的权重,当d
ij较大时,
所对应的
权重值会减小,以此惩罚相较于
的偏移,但相较于双线性插值,该惩罚系数不会使
仅当d
ij→∞时,
在实验中,α通常设置为3。相较于双线性插值,有界三近邻插值的搜索范围更大,有效避免了插值得到的属性预测值为零的问题。同时,为了避免孤立点在插值后仍能获得较大的属性预测值,使用惩罚系数α限制孤立点的3近邻权重之和。
需要说明的是,上述方案假设点云特征空间各个通道都使用同一个运动向量,但实际上各个特征通道的运动向量可能有一定区别。为提升运动补偿的效率,本方案在一些实施例中使用通道运动向量代替原有的运动向量。具体地,所述目标点的运动信息为所述目标点在目标通道上的运动信息时,确定所述目标点在所述目标通道上的属性预测值;其中,所述目标通道为所述当前帧点云中所有通道中的一个通道。
对于当前帧点云特征空间的每一个通道,分别预测一个运动向量。因此对插值公式进行更新,对应几何坐标(x
i,y
i,z
i)在通道c的属性预测值
的计算方法如下:为:
其中
为(x
i+Δx
ci,y
i+Δy
ci,z
i+Δz
ci)在C′中的3近邻,Δx
i,Δy
i,Δz
i分别是通道c对应的运动向量在x,y,z上的分量。
运动估计时采用有界三近邻插值算法的搜索范围更大,有效避免了插值得到的属性预测值为零的问题。同时,使用惩罚系数避免孤立点在插值后仍能获得较大的属性预测值,提高属性值预测的准确性。
在一些实施例中,还可以采用三线性插值算法。实际应用中,双线性插值是一种应用于图像的常见插值方式。三线性插值即为考虑到z轴的双线性插值。
定义偏移集N
3={(x,y,z)∣x,y,z∈{0,1}}
则对于稀疏张量p={(x
i,y
i,z
i,f
i)∣i∈{0,1,…,N})}和待插值坐标集合C′={(x′
i,y′
i,z′
i)∣i∈{0,1,…,M}},插值后的特征集F′为:
F′={f′
i∣i∈{0,1,…,M}}
其中floor为向下取整操作。
下面对本申请实施例中第一神经网络中的帧间预测模块进行进一步地举例说明。
示例性的,图4为本申请实施例中帧间预测模块的组成结构示意图,如图4所示,帧间预测模块包括多尺度运动估计模块、运动信息压缩和解压缩模块和运动补偿模块。
其中,多尺度运动估计模块包括连接模块,连接模块用于将所述参考帧重建点云和所述当前帧点云进行连接,得到连接数据。
示例性的,当前帧点云和参考帧重建点云为稀疏张量形式,当前帧点云p
2的稀疏张量形式为:
p
2={(x
i,y
i,z
i,f
i)∣(x
i,y
i,z
i)∈C
2}
参考帧重建点云p
1的稀疏张量形式为:
p
1={(x′
i,y′
i,z′
i,f
i)∣(x′
i,y′
i,z′
i)∈C
1}
将两帧点云特征空间的稀疏张量连接后,使用基于稀疏卷积的运动估计器提取运动向量。对于稀疏张量p
1与p
2,定义连接后的稀疏张量p
c为:
p
c={(x
i,y
i,z
i,f
i)∣(x
i,y
i,z
i)∈p
1.c∪p
2.c}
其中p.c定义为稀疏张量p的几何坐标集合。f
i定义如下:
其中,f
i定义为稀疏张量p
c对应几何坐标(x
i,y
i,z
i)的特征,
为向量的拼接操作,p[x
i,y
i,z
i]定义为稀疏张量p对应几何坐标(x
i,y
i,z
i)的特征。∩代表交集符号,-代表补集符号,p
1.c-p
2.c代表坐标属于p
1.c但不属于p
2.c,p
2.c-p
1.c代表坐标属于p
2.c但不属于p
1.c。
多尺度运动估计模块包括提取模块,所述提取模块包括:两个卷积层以及每个卷积层后跟的激活层;
所述提取模块配置成:将所述连接数据依次输入每个卷积层,以及其后的激活层,得到所述原始运动信息。
示例性的,如图4所示,提取模块的第一个卷积层参数为Conv(64,3,1),第二卷积层参数为Conv(64,3,1)。
示例性的,在一些实施例中,所述多尺度运动估计模块包括第一运动估计模块,所述第一运动估计模块包括:卷积层、激活层和三层初始残差网络;
所述第一运动估计模块配置成:将所述原始运动信息依次输入到所述卷积层、所述激活层和所述三层初始残差网络进行低尺度的运动估计,得到所述第一运动信息。
这里,第一运动估计模块可以理解为低尺度运动估计模块,用于对当前帧点云进行粗略的运动估计。示例性的,如图4所示,第一运动估计模块的卷积层参数为Conv(64,2,2),用于对原始运动信息进行下采样。
示例性的,在一些实施例中,所述多尺度运动估计模块包括第二运动估计模块,所述第二运动估计模块包括:反卷积层、第一剪枝层、减法器和卷积层;
所述第二运动估计模块配置成:
利用所述反卷积层对所述第一运动信息进行上采样,得到上采样后的第一运动信息;
利用所述第一剪枝层对所述上采样后的第一运动信息进行剪枝,使得剪枝后的第一运动信息与所述原始运动信息的几何坐标集合相同;
利用所述减法器将所述原始运动信息与所述剪枝后的第一运动信息相减,再利用所述卷积层进行下采样,得到所述第二运动信息。
这里,第二运动估计模块可以理解为高尺度运动估计模块,用于在第尺度运动估计模块的指导下对当前帧点云进行精确的运动估计。示例性的,如图4所示,第二运动估计模块的反卷积层参数为Deconv(64,2,2),卷积层参数为Conv(64,2,2)。
如图4所示,多尺度运动估计模块还包括:第二剪枝层、第三剪枝层和加法器;
所述多尺度运动估计模块配置成:
利用所述第二剪枝层对所述第一运动信息进行剪枝,使得剪枝后的第一运动信息与所述残差信息的几何坐标集合C
R相同;
利用所述第三剪枝层对所述第二运动信息进行剪枝,使得剪枝后的第二运动特征信息与所述残差信息的几何坐标集合C
R相同;
利用所述加法器将剪枝后的第一运动信息和所述第二运动信息相加,得到最终的所述运动信息。
本申请实施例中,运动信息包括运动特征和几何坐标。也就是说,对运动信息进行编解码包括对运动特征和几何坐标进行编解码。
如图4所示,运动信息压缩和解压缩模块具体对运动特征进行压缩和解压缩,无损编码器对当前帧点云P
2对应的几何坐标集合C
P2进行无损编码将编码比特写入码流。运动特征经过卷积层Conv(48,2,2),量化器Q和自编码器AE,得到编码比特写入码流。
运动信息解压缩偿模块对运动特征进行解压缩,码流经过自解码器和反卷积层Deconv(64,2,2)进行解码。
运动补偿模块还包括提取模块,用于从解码后的运动信息获取目标点的运动信息。
提取模块包括:第一剪枝层、第一卷积层、池化层、反卷积层、第二剪枝层、第二卷积层和加法器。
解码后的运动特征经过第一剪枝层进行剪枝,使得剪枝后的运动信息与所述残差信息的几何坐标集合相同;
利用第一卷积层Conv(64x3,3,1)和池化层Depooling(2,2)提取每个通道的低尺度运动信息;
利用反卷积层Deconv(64x3,3,1)、第二剪枝层和卷积层Conv(64x3,3,1)提取每个通道的高尺度运动信息;
利用加法器将低尺度运动信息和高尺度运动信息相加,得到每个通道的运动信息。
这里,第二剪枝层基于当前帧点云解码后的几何坐标集合C
P2对反卷积层的输出进行剪枝,使得相加之前的低尺度运动信息和高尺度运动信息的几何坐标集合相同。
进一步地,基于有界三近邻插值算法利用参考帧点云P
1和加法器输出的运动信息进行插值运算,得到预测信息P’
2。
示例性的,在一些实施例中,所述第一神经网络还包括位于所述帧间预测模块之前的第一特征提取模块和第二特征提取模块;
所述第一特征提取模块配置成:对所述参考帧重建点云进行特征提取,将所述参考帧重建点云转换成稀疏张量形式;
所述第二特征提取模块配置成:对所述当前帧点云进行特征提取,将所述当前帧点云转换成稀疏张量形式。
也就是说,通过特征提取模块将点云转换为稀疏张量形式,再进行后续的运动估计、运动估计、编解码操作。
示例性的,在一些实施例中,每个特征提取模块包括第一下采样模块和第二下采样模块;所述第一下采样模块包括:两个卷积层、每个卷积层后跟的激活层和三层初始残差网络:所述第二下采样模块包括:两个卷积层、每个卷积层后跟的激活层和三层初始残差网络;所述第一下采样模块和所述第二下采样模块的卷积层参数不同。
图5为本申请实施例中第一神经网络的组成结构示意图,如图5所示,第一神经网络包括特征提取模块,帧间预测 模块,残差压缩和解压缩模块,以及点云重建模块。
其中,第一特征提取模块用于对上一帧重建点云进行特征提取,得到上一帧重建点云的稀疏张量形式P
1,第二特征提取模块用于对当前帧点云进行特征提取,得到当前帧点云的稀疏张量形式P
2。
图6为本申请实施例中下采样模块的组成结构示意图,如图6所示,
使用基于稀疏卷积网络的特征提取器实现下采样模块,将点云几何空间映射至点云特征空间,即点云的稀疏张量形式。下采样模块由一层卷积核大小为3,步长为1的卷积层,与一层卷积核大小为2,步长为2的卷积层组成,每层卷积层后跟ReLU激活层。同时,使用初始残差网络(Inception Residual Network,IRN)提升特征提取效率。下采样模块中卷积层的参数H代表隐藏维度,O代表输出维度,H与O的具体值见图5,即第一下采样模块的第一卷积层H为16,第二卷积层O为32,第二下采样模块的第一卷积层H为32,第二卷积层O为64。Conv(c,k,s)标识通道数(维度)为c,卷积核大小为k,步长为s的卷积层。
所述第一神经网络包括第二压缩模块以及与所述第二压缩模块对应的第二解压缩模块;即图5中残差压缩和解压缩模块。
示例性的,在一些实施例中,所述第二压缩模块配置成:对所述残差信息进行下采样;对下采样后的残差信息进行量化和熵编码,得到所述残差信息的编码比特;
所述第二解压缩模块配置成:对所述残差信息的编码比特进行熵解码,得到解码后的残差信息。
需要说明的是,若第二压缩模块的量化步长大于1,则第二解压缩模块在熵解码之后还包括反量化。
如图5所示,第二压缩模块包括:卷积层Conv(32,8)、量化器Q和自编码器(AE),第二解压缩模块包括:自解码器(AD)。运动信息进行下采样、量化之后经熵模型得到概率分布,使用AE进行算术编码得到01比特流,传至解码端。在解码端需进行对应的熵解码与上采样,得到解码后的运行信息参与到点云重建。在编码端也需进行对应的熵解码与上采样,得到解码后的运行信息参与到点云重建。
实际应用中,残差信息包括残差和几何坐标。也就是说,对残差信息进行编解码包括对残差和几何坐标C
R进行编解码。
示例性的,在一些实施例中,所述第一神经网络还包括位于所述帧间预测模块之后的点云重建模块;所述点云重建模块配置成:
对解码后的残差信息进行上采样,得到上采样后的残差信息;
基于上采样后的残差信息和所述当前帧点云的预测信息,得到第一重建点云;
对第一重建点云进行上采样,得到所述当前帧重建点云。
如图5所示,所述点云重建模块包括第一上采样模块、第二上采样模块和第三上采样模块。
图7为本申请实施例中第一上采样模块的组成结构示意图,如图7所示,所述第一上采样模块包括:反卷积层、第一激活层、第一卷积层、第二激活层、三层初始残差网络IRN、加法器、第二卷积层、分类层(Classify)、剪枝层;
所述第一上采样模块配置成:
将解码后的残差信息依次经过所述反卷积层、第一激活层、第一卷积层、第二激活层和三层初始残差网络,得到上采样后的残差信息;
利用所述加法器将上采样后的残差信息和所述当前帧点云的预测信息相加;
将所述相加结果依次经过所述第二卷积层和分类层,确定满足占用条件的第一几何坐标集合;
所述剪枝层基于所述第一几何坐标集合对所述相加结果进行剪枝,得到所述第一重建点云。
上采样模块中参数H代表隐藏维度,O代表输出维度,H与O的具体值见图5,即第一上采样模块的反卷积层H为32,第一卷积层O为32。Conv(c,k,s)标识通道数(维度)为c,卷积核大小为k,步长为s的卷积层。
使用稀疏卷积网络实现点云的上采样。上采样模块由一层卷积核大小为2,步长为2的反卷积层,与一层卷积核大小为3,步长为1的卷积层构成。卷积层之间用ReLU激活函数连接。同时,使用初始残差网络(Inception Residual Network)协助上采样。上采样后通过一个分类层,判断出占用情况的概率分布,并进行剪枝,对于点数为N的原点云,定义系数ρ,则剪枝后仅保留稀疏张量中占用概率前ρN的点。这里,占用条件为选取占用概率前ρN的点。
示例性的,在一些实施例中,所述点云重建模块包括第二上采样模块和第三上采样模块,用于对第一上采样模块输出的第一重建点云进行两次上采样得到当前帧重建点云。
图8为本申请实施例中第二上采样模块的组成结构示意图,如图8所示,所述第二上采样模块包括:反卷积层、第一激活层、第一卷积层、第二激活层、三层初始残差网络IRN、第二卷积层、分类层、剪枝层;
所述第二上采样模块配置成:将所述第一重建点云依次经过所述第一反卷积层、第一激活层、第一卷积层、第二激活层和三层初始残差网络,得到上采样后的第一重建点云;
将所述上采样后的第一重建点云依次经过所述第二卷积层、第一分类层,确定满足占用条件的第二几何坐标集合;
所述第一剪枝层基于所述第二几何坐标集合对所述上采样后的第一重建点云进行剪枝,得到第二重建点云。
第二上采样模块中反卷积层和卷积层参数如图8所示,其中第二上采样模块的反卷积层H为64,第一卷积层O为64。
所述第三上采样模块包括:第二反卷积层、第三激活层、第三卷积层、第四激活层、三层初始残差网络、第四卷积层、第二分类层、第二剪枝层;
所述第三上采样模块配置成:将所述第二重建点云依次经过所述第二反卷积层、第三激活层、第三卷积层、第四激活层和三层初始残差网络,得到上采样后的第二重建点云;
将所述上采样后的第二重建点云依次经过所述第四卷积层和第二分类层,确定满足占用条件的第三几何坐标集合;
所述第二剪枝层基于所述第三几何坐标集合对所述上采样后的第二重建点云进行剪枝,得到所述当前帧重建点云;其中,所述第二上采样模块的第一反卷积层和所述第三上采样模块的第二反卷积层的参数不同,所述第二上采样模块的第一卷积层和所述第三上采样模块的第三卷积层参数不同。
也就是说,第三上采样模块的组成结构和第二上采样模块相同,卷积层和反卷积层参数有所差别,其中第三上采样模块的反卷积层H为16,第三卷积层O为16。
本申请实施例提供了一个端到端的神经网络,其中采用了多尺度运动估计网络,有界三近邻插值算法,以及基于深度学习的因式变分自编码熵模型,极大地提升了编码效率。另外,计算过程全部由矩阵运算构成,有良好的并行性,在图形处理器(GPU)上运行时能获得巨大的加速效果。
进一步地,本申请实施例提供的编码方法还包括:训练第一神经网络。
具体地,获取训练样本集;其中,所述训练样本集中包括一个或多个样本点云;
利用所述第一神经网络对所述训练样本集中的第一样本点云进行编码和重建,得到所述第一样本点云的码率和重建点云;
基于所述第一样本点云和所述重建点云,确定所述第一样本点云的失真;
基于所述第一样本点云的失真和码率计算损失值;
所述损失值不满足收敛条件时,调节所述第一神经网络的网络参数;
所述损失值满足收敛条件时,确定所述第一神经网络训练完成。
如图5所示,第一样本点云为训练样本集中任意一个样本点云,第一样本点云作为当前帧点云输入到第一神经网络中,输出第一样本点云对应的运动信息码流和残差信息码流,及其重建点云,基于第一样本点云和重建点云,确定第一样本点云的失真损失值,基于运动信息码流和残差信息码流计算第一样本点云的码率损失值,以降低码率保证点云重建质量为训练目标构建损失函数,计算总损失值,当第一神经网络的损失值大于预设阈值(即不满足损失条件),调整网络参数进行下一次训练,当损失值小于或者等于预设阈值(即满足损失条件),得到训练好的第一神经网络,用于动态点云编码中。
示例性的,第一神经网络的损失函数由两部分构成:点云的失真,记为D;码率,记为R。
使用系数λ平衡失真与码率的关系,调整λ可以得到网络不同的码率点。
L=λD+R
在一些实施例中,使用稀疏卷积对运动信息/残差信息进行下采样,得到下采样后的特征y,由于量化过程不可导,因此在训练阶段使用均匀噪声U(-0.5,0.5)代替量化。记量化特征为
使用算术编码器对
进行熵编解码,则
可见,对这种端到端的神经网络只需利用包含样本点云的样本集进行训练,无需额外标注样本点云的运动信息,降低了训练集的获取难度,该网络以降低码率保证点云重建质量为训练目标,使用该网络进行编码不仅能够提升点云的质量,还能够节省码率,进而提高编码效率。
另外,由于解码端所使用的第二神经网络与编码端的第一神经网络中解码功能的部分网络结构完全相同,因此,解码端和编码端可以作为一个整体进行端到端自监督学习,减少人为干预,使用该网络进行编解码,使用该网络进行编码不仅能够提升点云的质量,还能够节省码率,进而提高编码和解码效率。
在本申请的又一实施例中还提供了一种解码方法,图9为本申请实施例中解码方法的流程示意图,如图9所示,该方法可以包括:
步骤901:获取码流;
这里,码流中包含点云的运动信息和残差信息,本申请实施例中利用第二神经网络解码码流并进行点云重建。
步骤902:预设第二神经网络解码码流得到当前帧重建点云;
其中,所述第二神经网络为端到端神经网络,所述第二神经网络配置成:
解码码流,确定当前帧点云的运动信息和残差信息;
基于所述运动信息和参考帧重建点云进行运动补偿,得到所述当前帧点云的预测信息;
基于所述残差信息和所述当前帧点云的预测信息,得到所述当前帧重建点云。
需要说明的是,本申请实施例所述的解码方法具体是指点云解码方法,可以应用于点云解码器(本申请实施例中,可简称为“解码器”)。
当前帧点云可以理解为待解码的点云,对于当前帧点云中的一个点,在对该点进行解码时,其可以作为当前帧点云中的待解码点,而该点的周围存在有多个已解码点。参考帧重建点云可以理解为已解码点云,参考帧重建点云可以为上一帧重建点云,或者当前帧点云中部分已解码点的重建点集合。也就是说,待解码点的参考点可以为上一帧或当前帧的重建点。
在一些实施例中,所述第二神经网络包括第一解压缩模块;
所述第一解压缩模块配置成:对所述码流中所述运动信息的编码比特进行熵解码和上采样,得到所述运动信息。
第一解压缩模块包括:自解码器(AD)和反卷积层。第一解压缩模块对码流进行熵解码与上采样,得到解码后的运行信息参与到点云重建。
在一些实施例中,所述第二神经网络包括运动补偿模块,运动补偿模块采用预设的插值算法进行运动补偿。示例性的,插值算法可以为有界三近邻插值算法,或者三线性插值算法。
示例性的,当运动补偿模块基于有界三近邻插值算法进行运动补偿时,所述运动补偿模块配置成:
从解码后的运动信息中获取所述当前帧点云中目标点的运动信息;
基于所述目标点在所述当前帧点云中的第一几何坐标和所述目标点的运动信息,确定所述目标点在所述参考帧重建点云中对应的第二几何坐标;
基于所述第二几何坐标在所述参考帧重建点云中确定K个近邻点;
基于所述K个近邻点在所述参考帧重建点云中的属性重建值,以及预设的惩罚系数,确定所述目标点在所述当前帧点云中的属性预测值;
其中,所述惩罚系数用于限制孤立点的K个近邻点的权重。
这里,惩罚系数可以理解为限制近邻点的选取边界,对于孤立点来说,近邻点距离较远,惩罚系数限制孤立点的近邻点的权重,避免孤立点在插值后仍能获得较大的属性预测值。
需要说明的是,K个近邻点是指参考帧中与第二几何坐标距离最近的K个点,第二几何坐标为目标点在参考帧中的位置,第二几何坐标可以整数或小数。当K=3时,利用参考帧中3个近邻点的属性重建值进行预测。
示例性的,在一些实施例中,所述惩罚系数用于限制孤立点的K个近邻点的权重之和,
所述基于所述K个近邻点在所述参考帧重建点云中的属性重建值,以及预设的惩罚系数,确定所述目标点在所述当前帧点云中的属性预测值,包括:
基于所述第二几何坐标和所述K个近邻点的几何坐标确定所述K个近邻点的权重;
所述K个近邻点的权重之和大于所述惩罚系数时,基于所述惩罚系数、所述K个近邻点的权重和所述K个近邻点的属性重建值,确定所述目标点的属性预测值;
所述K个近邻点的权重之和小于或者等于所述惩罚系数时,基于所述K个近邻点的权重之和、所述K个近邻点的权重和所述K个近邻点的属性重建值,确定所述目标点的属性预测值。
也就是说,实际应用中,惩罚系数可以通过限制每个近邻点的权重,或者通过限制K个近邻点的权重之和,来实现限制孤立点的K个近邻点的权重。
示例性的,以K=3为例对有界三近邻插值算法进行进一步地举例说明。
对于当前帧的特征的几何坐标集合C={(x
i,y
i,z
i)∣i∈{1,2,…,N}}与参考帧的特征P′={(x
i′,y
i′,z
i′,f′
i)∣i∈{0,1,…,N′}},f′
i为参考帧点(x
i′,y
i′,z
i′)的属性重建值,对应几何坐标(x
i,y
i,z
i)的属性预测值
的计算方法如下:
其中
为(x
i+Δx
i,y
i+Δy
i,z
i+Δz
i)在参考帧的几何坐标集合C′中的第j个近邻,Δx
i,Δy
i,Δz
i分别是运动向量在x,y,z方向上的分量。α为惩罚系数,
为第j个近邻的权重,当d
ij较大时,
所对应的
权重值会减小,以此惩罚相较于
的偏移,但相较于双线性插值,该惩罚系数不会使
仅当d
ij→∞时,
在实验中,α通常设置为3。相较于双线性插值,有界三近邻插值的搜索范围更大,有效避免了插值得到的属性预测值为零的问题。同时,为了避免孤立点在插值后仍能获得较大的属性预测值,使用惩罚系数α限制孤立点的3近邻权重之和。
需要说明的是,上述方案假设点云特征空间各个通道都使用同一个运动向量,但实际上各个特征通道的运动向量可能有一定区别。为提升运动补偿的效率,本方案在一些实施例中使用通道运动向量代替原有的运动向量。具体地,所述目标点的运动信息为所述目标点在目标通道上的运动信息时,确定所述目标点在所述目标通道上的属性预测值;其中,所述目标通道为所述当前帧点云中所有通道中的一个通道。
对于当前帧点云特征空间的每一个通道,分别预测一个运动向量。因此对插值公式进行更新,对应几何坐标(x
i,y
i,z
i)在通道c的属性预测值
的计算方法如下:为:
其中
为(x
i+Δx
ci,y
i+Δy
ci,z
i+Δz
ci)在C′中的3近邻,Δx
i,Δy
i,Δz
i分别是通道c对应的运动向量在x,y,z上的分量。
运动估计时采用有界三近邻插值算法的搜索范围更大,有效避免了插值得到的属性预测值为零的问题。同时,使用惩罚系数避免孤立点在插值后仍能获得较大的属性预测值,提高属性值预测的准确性。
在一些实施例中,插值算法还可以采用三线性插值算法。实际应用中,双线性插值是一种应用于图像的常见插值方式。三线性插值即为考虑到z轴的双线性插值。
定义偏移集N
3={(x,y,z)∣x,y,z∈{0,1}}
则对于稀疏张量p={(x
i,y
i,z
i,f
i)∣i∈{0,1,…,N})}和待插值坐标集合C′={(x′
i,y′
i,z′
i)∣i∈{0,1,…,M}},插值后的特征集F′为:
F′={f′
i∣i∈{0,1,…,M}}
其中floor为向下取整操作。
运动补偿模块的具体结构可以参见图4,运动补偿模块还包括提取模块,用于从解码后的运动信息获取目标点的运动信息。
提取模块包括:第一剪枝层、第一卷积层、池化层、反卷积层、第二剪枝层、第二卷积层和加法器。
解码后的运动特征经过第一剪枝层进行剪枝,使得剪枝后的运动信息与所述残差信息的几何坐标集合相同;
利用第一卷积层Conv(64x3,3,1)和池化层Depooling(2,2)提取每个通道的低尺度运动信息;
利用反卷积层Deconv(64x3,3,1)、第二剪枝层和卷积层Conv(64x3,3,1)提取每个通道的高尺度运动信息;
利用加法器将低尺度运动信息和高尺度运动信息相加,得到每个通道的运动信息。
这里,第二剪枝层基于当前帧点云解码后的几何坐标集合C
P2对反卷积层的输出进行剪枝,使得相加之前的低尺度运动信息和高尺度运动信息的几何坐标集合相同。
进一步地,基于有界三近邻插值算法利用参考帧点云P
1和加法器输出的运动信息进行插值运算,得到预测信息P’
2。
示例性的,在一些实施例中,所述第二神经网络还包括位于所述运动补偿模块之前的第一特征提取模块;
所述第一特征提取模块配置成:对所述参考帧重建点云进行特征提取,将所述参考帧重建点云转换成稀疏张量形式。
也就是说,通过特征提取模块将点云转换为稀疏张量形式,再进行后续的运动估计和解码操作。
示例性的,在一些实施例中,所述第一特征提取模块包括第一下采样模块和第二下采样模块;
所述第一下采样模块包括:两个卷积层、每个卷积层后跟的激活层和三层初始残差网络:
所述第二下采样模块包括:两个卷积层、每个卷积层后跟的激活层和三层初始残差网络;
所述第一下采样模块和所述第二下采样模块的卷积层参数不同。
图10为本申请实施例中第二神经网络的组成结构示意图,如图10所示,第二神经网络包括第一特征提取模块,第一解压缩模块(即运动信息解压缩模块),运动补偿模块,第二解压缩模块(即残差解压缩模块),以及点云重建模块。
其中,第一特征提取模块用于对上一帧重建点云进行特征提取,得到上一帧重建点云的稀疏张量形式P
1。第一特征提取模块中下采样模块的组成结构示意图如图6所示。
第一解压缩模块配置成:对所述运动信息的编码比特进行熵解码和上采样,得到解码后的运动信息。
第二解压缩模块配置成:对所述残差信息的编码比特进行熵解码,得到解码后的残差信息。
实际应用中,残差信息包括残差和几何坐标。也就是说,对残差信息进行编解码包括对残差和几何坐标C
R进行编解码。
在一些实施例中,所述第二神经网络还包括位于所述运动补偿模块之后的点云重建模块;
所述点云重建模块配置成:
对所述残差信息进行上采样,得到上采样后的残差信息;
基于上采样后的残差信息和所述当前帧点云的预测信息,得到第一重建点云;
对第一重建点云进行上采样,得到所述当前帧重建点云。
如图10所示,所述点云重建模块包括第一上采样模块、第二上采样模块和第三上采样模块。
所述第一上采样模块包括:反卷积层、第一激活层、第一卷积层、第二激活层、三层初始残差网络、加法器、第二卷积层、分类层、剪枝层;
所述第一上采样模块配置成:
将残差信息依次经过所述反卷积层、第一激活层、第一卷积层、第二激活层和三层初始残差网络,得到上采样后的残差信息;
利用所述加法器将上采样后的残差信息和所述当前帧点云的预测信息相加;
将所述相加结果依次经过所述第二卷积层和分类层,确定满足占用条件的第一几何坐标集合;
所述剪枝层基于所述第一几何坐标集合对所述相加结果进行剪枝,得到所述第一重建点云。
所述第二上采样模块包括:第一反卷积层、第一激活层、第一卷积层、第二激活层、三层初始残差网络、第二卷积层、第一分类层、第一剪枝层;
所述第二上采样模块配置成:将所述第一重建点云依次经过所述第一反卷积层、第一激活层、第一卷积层、第二激活层和三层初始残差网络,得到上采样后的第一重建点云;
将所述上采样后的第一重建点云依次经过所述第二卷积层、第一分类层,确定满足占用条件的第二几何坐标集合;
所述第一剪枝层基于所述第二几何坐标集合对所述上采样后的第一重建点云进行剪枝,得到第二重建点云;
所述第三上采样模块包括:第二反卷积层、第三激活层、第三卷积层、第四激活层、三层初始残差网络、第四卷积层、第二分类层、第二剪枝层;
所述第三上采样模块配置成:将所述第二重建点云依次经过所述第二反卷积层、第三激活层、第三卷积层、第四激活层和三层初始残差网络,得到上采样后的第二重建点云;
将所述上采样后的第二重建点云依次经过所述第四卷积层和第二分类层,确定满足占用条件的第三几何坐标集合;
所述第二剪枝层基于所述第三几何坐标集合对所述上采样后的第二重建点云进行剪枝,得到所述当前帧重建点云;其中,所述第二上采样模块的第一反卷积层和所述第三上采样模块的第二反卷积层的参数不同,所述第二上采样模块的第一卷积层和所述第三上采样模块的第三卷积层参数不同。
进一步地,本申请实施例提供的解码方法还包括:训练第二神经网络。
训练第二神经网络时,由于解码端所使用的第二神经网络与编码端的第一神经网络中解码功能的部分网络结构完全相同,因此,解码端和编码端网络可以作为一个整体进行端到端自监督学习,训练完成后,编码端保留整个网络(即第一神经网络),解码端保留图10所示的部分网络(即第二神经网络)。
采样上述方案,解码端和编码端网络可以作为一个整体进行端到端自监督学习,减少人为干预,使用该网络进行解码,能够降低的失真保证重建点云质量。
在本申请的再一实施例中,基于前述实施例相同的发明构思,参见图11,其示出了本申请实施例提供的一种编码器110的组成结构示意图。如图11所示,该编码器110可以包括:确定单元1101和编码单元1102,
所述确定单元,用于确定当前帧点云,以及所述当前帧点云对应的参考帧重建点云;
所述编码单元,用于利用预设第一神经网络基于所述参考帧重建点云对所述当前帧点云进行编码,将得到的编码比特写入码流;
其中,所述第一神经网络为端到端神经网络,所述第一神经网络配置成:
基于所述参考帧重建点云和所述当前帧点云进行帧间预测,得到所述当前帧点云的运动信息和残差信息;
对所述运动信息和所述残差信息进行编码,将得到的编码比特写入码流。
在一些实施例中,所述第一神经网络包括帧间预测模块,所述帧间预测模块配置成:
基于所述参考帧重建点云和所述当前帧点云进行多尺度运动估计,得到所述运动信息;
基于解码后的运动信息和所述参考帧重建点云进行运动补偿,得到所述当前帧点云的预测信息;
基于所述当前帧点云和所述当前帧点云的预测信息,得到所述残差信息。
在一些实施例中,所述帧间预测模块包括多尺度运动估计模块,所述多尺度运动估计模块配置成:
将所述参考帧重建点云和所述当前帧点云进行连接,得到连接数据;
从连接数据中提取原始运动信息;
对所述原始运动信息进行低尺度运动估计,得到第一运动信息;
基于所述第一运动信息对所述原始运动信息进行高尺度运动估计,得到第二运动信息;
基于所述第一运动信息和所述第二运动信息,得到最终的所述运动信息。
在一些实施例中,所述多尺度运动估计模块包括提取模块,所述提取模块包括:两个卷积层以及每个卷积层后跟的激活层;
所述提取模块配置成:将所述连接数据依次输入每个卷积层,以及其后的激活层,得到所述原始运动信息。
在一些实施例中,所述多尺度运动估计模块包括第一运动估计模块,所述第一运动估计模块包括:卷积层、激活层和三层初始残差网络;
所述第一运动估计模块配置成:将所述原始运动信息依次输入到所述卷积层、所述激活层和所述三层初始残差网络进行低尺度的运动估计,得到所述第一运动信息。
在一些实施例中,所述多尺度运动估计模块包括第二运动估计模块,所述第二运动估计模块包括:反卷积层、第一剪枝层、减法器和卷积层;
所述第二运动估计模块配置成:
利用所述反卷积层对所述第一运动信息进行上采样,得到上采样后的第一运动信息;
利用所述第一剪枝层对所述上采样后的第一运动信息进行剪枝,使得剪枝后的第一运动信息与所述原始运动信息的几何坐标集合相同;
利用所述减法器将所述原始运动信息与所述剪枝后的第一运动信息相减,再利用所述卷积层进行下采样,得到所述第二运动信息。
在一些实施例中,所述多尺度运动估计模块还包括:第二剪枝层、第三剪枝层和加法器;
所述多尺度运动估计模块配置成:
利用所述第二剪枝层对所述第一运动信息进行剪枝,使得剪枝后的第一运动信息与所述残差信息的几何坐标集合相同;
利用所述第三剪枝层对所述第二运动信息进行剪枝,使得剪枝后的第二运动特征信息与所述残差信息的几何坐标集合相同;
利用所述加法器将剪枝后的第一运动信息和所述第二运动信息相加,得到最终的所述运动信息。
在一些实施例中,所述帧间预测模块包括第一压缩模块以及与所述第一压缩模块对应的第一解压缩模块;
所述第一压缩模块配置成:
对所述运动信息进行下采样;
对下采样后的运动信息进行量化和熵编码,得到所述运动信息的编码比特;
所述第一解压缩模块配置成:
对所述运动信息的编码比特进行熵解码和上采样,得到解码后的运动信息。
在一些实施例中,所述帧间预测模块包括运动补偿模块,所述运动补偿模块配置成:
从解码后的运动信息中获取所述当前帧点云中目标点的运动信息;
基于所述目标点在所述当前帧点云中的第一几何坐标和所述目标点的运动信息,确定所述目标点在所述参考帧重建点云中对应的第二几何坐标;
基于所述第二几何坐标在所述参考帧重建点云中确定K个近邻点;
基于所述K个近邻点在所述参考帧重建点云中的属性重建值,以及预设的惩罚系数,确定所述目标点在所述当前帧点云中的属性预测值;
其中,所述惩罚系数用于限制孤立点的K个近邻点的权重。
在一些实施例中,所述惩罚系数用于限制孤立点的K个近邻点的权重之和,
所述基于所述K个近邻点在所述参考帧重建点云中的属性重建值,以及预设的惩罚系数,确定所述目标点在所述当前帧点云中的属性预测值,包括:
基于所述第二几何坐标和所述K个近邻点的几何坐标确定所述K个近邻点的权重;
所述K个近邻点的权重之和大于所述惩罚系数时,基于所述惩罚系数、所述K个近邻点的权重和所述K个近邻点的属性重建值,确定所述目标点的属性预测值;
所述K个近邻点的权重之和小于或者等于所述惩罚系数时,基于所述K个近邻点的权重之和、所述K个近邻点的权重和所述K个近邻点的属性重建值,确定所述目标点的属性预测值。
在一些实施例中,所述目标点的运动信息为所述目标点在目标通道上的运动信息时,确定所述目标点在所述目标通道上的属性预测值;
其中,所述目标通道为所述当前帧点云中所有通道中的一个通道。
在一些实施例中,所述第一神经网络还包括位于所述帧间预测模块之前的第一特征提取模块和第二特征提取模块;
所述第一特征提取模块配置成:对所述参考帧重建点云进行特征提取,将所述参考帧重建点云转换成稀疏张量形式;
所述第二特征提取模块配置成:对所述当前帧点云进行特征提取,将所述当前帧点云转换成稀疏张量形式。
在一些实施例中,每个特征提取模块包括第一下采样模块和第二下采样模块;
所述第一下采样模块包括:两个卷积层、每个卷积层后跟的激活层和三层初始残差网络:
所述第二下采样模块包括:两个卷积层、每个卷积层后跟的激活层和三层初始残差网络;
所述第一下采样模块和所述第二下采样模块的卷积层参数不同。
在一些实施例中,所述第一神经网络还包括位于所述帧间预测模块之后的点云重建模块;
所述点云重建模块配置成:
对解码后的残差信息进行上采样,得到上采样后的残差信息;
基于上采样后的残差信息和所述当前帧点云的预测信息,得到第一重建点云;
对第一重建点云进行上采样,得到所述当前帧重建点云。
在一些实施例中,所述点云重建模块包括第一上采样模块,
所述第一上采样模块包括:反卷积层、第一激活层、第一卷积层、第二激活层、三层初始残差网络、加法器、第二卷积层、分类层、剪枝层;
所述第一上采样模块配置成:
将解码后的残差信息依次经过所述反卷积层、第一激活层、第一卷积层、第二激活层和三层初始残差网络,得到上采样后的残差信息;
利用所述加法器将上采样后的残差信息和所述当前帧点云的预测信息相加;
将所述相加结果依次经过所述第二卷积层和分类层,确定满足占用条件的第一几何坐标集合;
所述剪枝层基于所述第一几何坐标集合对所述相加结果进行剪枝,得到所述第一重建点云。
在一些实施例中,所述点云重建模块包括第二上采样模块和第三上采样模块,
所述第二上采样模块包括:第一反卷积层、第一激活层、第一卷积层、第二激活层、三层初始残差网络、第二卷积层、第一分类层、第一剪枝层;
所述第二上采样模块配置成:将所述第一重建点云依次经过所述第一反卷积层、第一激活层、第一卷积层、第二激活层和三层初始残差网络,得到上采样后的第一重建点云;
将所述上采样后的第一重建点云依次经过所述第二卷积层、第一分类层,确定满足占用条件的第二几何坐标集合;
所述第一剪枝层基于所述第二几何坐标集合对所述上采样后的第一重建点云进行剪枝,得到第二重建点云;
所述第三上采样模块包括:第二反卷积层、第三激活层、第三卷积层、第四激活层、三层初始残差网络、第四卷积层、第二分类层、第二剪枝层;
所述第三上采样模块配置成:将所述第二重建点云依次经过所述第二反卷积层、第三激活层、第三卷积层、第四激活层和三层初始残差网络,得到上采样后的第二重建点云;
将所述上采样后的第二重建点云依次经过所述第四卷积层和第二分类层,确定满足占用条件的第三几何坐标集合;
所述第二剪枝层基于所述第三几何坐标集合对所述上采样后的第二重建点云进行剪枝,得到所述当前帧重建点云;其中,所述第二上采样模块的第一反卷积层和所述第三上采样模块的第二反卷积层的参数不同,所述第二上采样模块的第一卷积层和所述第三上采样模块的第三卷积层参数不同。
在一些实施例中,所述第一神经网络包括第二压缩模块以及与所述第二压缩模块对应的第二解压缩模块;
所述第二压缩模块配置成:
对所述残差信息进行下采样;
对下采样后的残差信息进行量化和熵编码,得到所述残差信息的编码比特;
所述第二解压缩模块配置成:
对所述残差信息的编码比特进行熵解码,得到解码后的残差信息。
在一些实施例中,训练单元,用于获取训练样本集;其中,所述训练样本集中包括一个或多个样本点云;利用所述第一神经网络对所述训练样本集中的第一样本点云进行编码和重建,得到所述第一样本点云的码率和重建点云;基于所述第一样本点云和所述重建点云,确定所述第一样本点云的失真;基于所述第一样本点云的失真和码率计算损失值;所述损失值不满足收敛条件时,调节所述第一神经网络的网络参数;所述损失值满足收敛条件时,确定所述第一神经网络训练完成。
可以理解地,在本申请实施例中,“单元”可以是部分电路、部分处理器、部分程序或软件等等,当然也可以是模块,还可以是非模块化的。而且在本实施例中的各组成部分可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
所述集成的单元如果以软件功能模块的形式实现并非作为独立的产品进行销售或使用时,可以存储在一个计算机可读取存储介质中,基于这样的理解,本实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或processor(处理器)执行本实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
因此,本申请实施例提供了一种计算机存储介质,应用于编码器110,该计算机存储介质存储有计算机程序,所述计算机程序被第一处理器执行时实现前述实施例中任一项所述的方法。
基于上述编码器110的组成以及计算机存储介质,参见图12,其示出了本申请实施例提供的编码器110的具体硬件结构示意图。如图12所示,编码器110可以包括:第一通信接口1201、第一存储器1202和第一处理器1203;各个组件通过第一总线系统1204耦合在一起。可理解,第一总线系统1204用于实现这些组件之间的连接通信。第一总线系统1204除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图19中将各种总线都标为第一总线系统1204。其中,
第一通信接口1201,用于在与其他外部网元之间进行收发信息过程中,信号的接收和发送;
第一存储器1202,用于存储能够在第一处理器1203上运行的计算机程序;
第一处理器1203,用于在运行所述计算机程序时,执行本申请编码方法的步骤。
可以理解,本申请实施例中的第一存储器1202可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(Random Access Memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器(Dynamic RAM,DRAM)、同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(Double Data Rate SDRAM,DDRSDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(Synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(Direct Rambus RAM,DRRAM)。本申请描述的系统和方法的第一存储器1202旨在包括但不限于这些和任意其它适合类型的存储器。
而第一处理器1203可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过第一处理器1203中的硬件的集成逻辑电路或者软件形式的指令完成。上述的第一处理器1203可以是通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于第一存储器1202,第一处理器1203读取第一存储器1202中的信息,结合其硬件完成上述方法的步骤。
可以理解的是,本申请描述的这些实施例可以用硬件、软件、固件、中间件、微码或其组合来实现。对于硬件实现,处理单元可以实现在一个或多个专用集成电路(Application Specific Integrated Circuits,ASIC)、数字信号处理器(Digital Signal Processing,DSP)、数字信号处理设备(DSP Device,DSPD)、可编程逻辑设备(Programmable Logic Device,PLD)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、通用处理器、控制器、微控制器、微处理器、用于执行本申请所述功能的其它电子单元或其组合中。对于软件实现,可通过执行本申请所述功能的模块(例如过程、函数等)来实现本申请所述的技术。软件代码可存储在存储器中并通过处理器执行。存储器可以在处理器中或在处理器外部实现。
可选地,作为另一个实施例,第一处理器1203还配置为在运行所述计算机程序时,执行前述实施例中任一项所述的方法。
在本申请的再一实施例中,基于前述实施例相同的发明构思,参见图13,其示出了本申请实施例提供的一种解码器130的组成结构示意图。如图13所示,该解码器130可以包括:包括获取单元1301和解码单元1302,其中,
所述获取单元1301,用于获取码流;
所述解码单元1302,用于利用预设第二神经网络解码码流得到当前帧重建点云;
其中,所述第二神经网络为端到端神经网络,所述第二神经网络配置成:
解码码流,确定当前帧点云的运动信息和残差信息;
基于所述运动信息和参考帧重建点云进行运动补偿,得到所述当前帧点云的预测信息;
基于所述残差信息和所述当前帧点云的预测信息,得到所述当前帧重建点云。
在一些实施例中,所述第二神经网络包括运动补偿模块,所述运动补偿模块配置成:
从所述运动信息中获取所述当前帧点云中目标点的运动信息;
基于所述目标点在所述当前帧点云中的第一几何坐标和所述目标点的运动信息,确定所述目标点在所述参考帧重建 点云中对应的第二几何坐标;
基于所述第二几何坐标在所述参考帧重建点云中确定K个近邻点;
基于所述K个近邻点在所述参考帧重建点云中的属性重建值,以及预设的惩罚系数,确定所述目标点在所述当前帧点云中的属性预测值;
其中,所述惩罚系数用于限制孤立点的K个近邻点的权重。
在一些实施例中,所述惩罚系数用于限制孤立点的K个近邻点的权重之和,
所述基于所述K个近邻点在所述参考帧重建点云中的属性重建值,以及预设的惩罚系数,确定所述目标点在所述当前帧点云中的属性预测值,包括:
基于所述第二几何坐标和所述K个近邻点的几何坐标确定所述K个近邻点的权重;
所述K个近邻点的权重之和大于所述惩罚系数时,基于所述惩罚系数、所述K个近邻点的权重和所述K个近邻点的属性重建值,确定所述目标点的属性预测值;
所述K个近邻点的权重之和小于或者等于所述惩罚系数时,基于所述K个近邻点的权重之和、所述K个近邻点的权重和所述K个近邻点的属性重建值,确定所述目标点的属性预测值。
在一些实施例中,所述目标点的运动信息为所述目标点在目标通道上的运动信息时,确定所述目标点在所述目标通道上的属性预测值;
其中,所述目标通道为所述当前帧点云中所有通道中的一个通道。
在一些实施例中,所述第二神经网络还包括位于所述运动补偿模块之前的第一特征提取模块;
所述第一特征提取模块配置成:对所述参考帧重建点云进行特征提取,将所述参考帧重建点云转换成稀疏张量形式。
在一些实施例中,所述第一特征提取模块包括第一下采样模块和第二下采样模块;
所述第一下采样模块包括:两个卷积层、每个卷积层后跟的激活层和三层初始残差网络:
所述第二下采样模块包括:两个卷积层、每个卷积层后跟的激活层和三层初始残差网络;
所述第一下采样模块和所述第二下采样模块的卷积层参数不同。
在一些实施例中,所述第二神经网络还包括位于所述运动补偿模块之后的点云重建模块;
所述点云重建模块配置成:
对所述残差信息进行上采样,得到上采样后的残差信息;
基于上采样后的残差信息和所述当前帧点云的预测信息,得到第一重建点云;
对第一重建点云进行上采样,得到所述当前帧重建点云。
在一些实施例中,所述点云重建模块包括第一上采样模块,
所述第一上采样模块包括:反卷积层、第一激活层、第一卷积层、第二激活层、三层初始残差网络、加法器、第二卷积层、分类层、剪枝层;
所述第一上采样模块配置成:
将残差信息依次经过所述反卷积层、第一激活层、第一卷积层、第二激活层和三层初始残差网络,得到上采样后的残差信息;
利用所述加法器将上采样后的残差信息和所述当前帧点云的预测信息相加;
将所述相加结果依次经过所述第二卷积层和分类层,确定满足占用条件的第一几何坐标集合;
所述剪枝层基于所述第一几何坐标集合对所述相加结果进行剪枝,得到所述第一重建点云。
在一些实施例中,所述点云重建模块包括第二上采样模块和第三上采样模块,
所述第二上采样模块包括:第一反卷积层、第一激活层、第一卷积层、第二激活层、三层初始残差网络、第二卷积层、第一分类层、第一剪枝层;
所述第二上采样模块配置成:将所述第一重建点云依次经过所述第一反卷积层、第一激活层、第一卷积层、第二激活层和三层初始残差网络,得到上采样后的第一重建点云;
将所述上采样后的第一重建点云依次经过所述第二卷积层、第一分类层,确定满足占用条件的第二几何坐标集合;
所述第一剪枝层基于所述第二几何坐标集合对所述上采样后的第一重建点云进行剪枝,得到第二重建点云;
所述第三上采样模块包括:第二反卷积层、第三激活层、第三卷积层、第四激活层、三层初始残差网络、第四卷积层、第二分类层、第二剪枝层;
所述第三上采样模块配置成:将所述第二重建点云依次经过所述第二反卷积层、第三激活层、第三卷积层、第四激活层和三层初始残差网络,得到上采样后的第二重建点云;
将所述上采样后的第二重建点云依次经过所述第四卷积层和第二分类层,确定满足占用条件的第三几何坐标集合;
所述第二剪枝层基于所述第三几何坐标集合对所述上采样后的第二重建点云进行剪枝,得到所述当前帧重建点云;其中,所述第二上采样模块的第一反卷积层和所述第三上采样模块的第二反卷积层的参数不同,所述第二上采样模块的第一卷积层和所述第三上采样模块的第三卷积层参数不同。
在一些实施例中,所述第二神经网络包括第二解压缩模块;
所述第二解压缩模块配置成:对所述码流中所述残差信息的编码比特进行熵解码,得到解码后的残差信息。
基于上述解码器130的组成以及计算机存储介质,参见图14,其示出了本申请实施例提供的解码器130的具体硬件结构示意图。如图14所示,解码器130可以包括:第二通信接口1401、第二存储器1402和第二处理器1403;各个组件通过第二总线系统1404耦合在一起。可理解,第二总线系统1404用于实现这些组件之间的连接通信。第二总线系统1404除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图14中将各种总线都标 为第二总线系统1404。其中,
第二通信接口1401,用于在与其他外部网元之间进行收发信息过程中,信号的接收和发送;
第二存储器1402,用于存储能够在第二处理器1403上运行的计算机程序;
第二处理器1403,用于在运行所述计算机程序时,执行本申请解码方法的步骤。
在本申请的再一实施例中,参见图15,其示出了本申请实施例提供的一种编解码系统的组成结构示意图。如图15所示,编解码系统150可以包括编码器1501和解码器1502。其中,编码器1501可以为前述实施例中任一项所述的编码器,解码器1502可以为前述实施例中任一项所述的解码器。
在本申请实施例中,该编解码系统150中,编码器利用一种端到端的神经网络进行点云编码,该网络在训练时无需额外标注样本的运动信息的训练样本集,降低了训练难度,该网络以降低码率保证点云重建质量为训练目标,使用该网络进行编码不仅能够提升点云的质量,还能够节省码率,进而提高编码效率。相应地,解码器利用第二神经网络进行点云重建,第二神经网络可以理解为第一神经网络中具备解码功能的部分网络结构,编码端和解码端的神经网络作为一个整体进行端到端自监督学习,减少人为干预,使用该网络进行解码,能够降低的失真保证重建点云质量。
需要说明的是,在本申请中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
本申请所提供的几个方法实施例中所揭露的方法,在不冲突的情况下可以任意组合,得到新的方法实施例。本申请所提供的几个产品实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的产品实施例。本申请所提供的几个方法或设备实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的方法实施例或设备实施例。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
本申请实施例中,在编码器中,确定当前帧点云,以及所述当前帧点云对应的参考帧重建点云;利用预设第一神经网络基于所述参考帧重建点云对所述当前帧点云进行编码,将得到的编码比特写入码流;其中,所述第一神经网络为端到端神经网络,所述第一神经网络配置成:基于所述参考帧重建点云和所述当前帧点云进行帧间预测,得到所述当前帧点云的运动信息和残差信息;对所述运动信息和所述残差信息进行编码,将得到的编码比特写入码流。在解码器中,获取码流;利用预设第二神经网络解码码流得到当前帧重建点云;其中,所述第二神经网络为端到端神经网络,所述第二神经网络配置成:解码码流,确定当前帧点云的运动信息和残差信息;基于所述运动信息和参考帧重建点云进行运动补偿,得到所述当前帧点云的预测信息;基于所述残差信息和所述当前帧点云的预测信息,得到所述当前帧重建点云。这样,编码器利用一种端到端的神经网络进行点云编码,该网络在训练时无需额外标注样本的运动信息的训练样本集,降低了训练难度,该网络以降低码率保证点云重建质量为训练目标,使用该网络进行编码不仅能够提升点云的质量,还能够节省码率,进而提高编码效率。相应地,解码器利用第二神经网络进行点云重建,第二神经网络可以理解为第一神经网络中具备解码功能的部分网络结构,编码端和解码端的神经网络作为一个整体进行端到端自监督学习,减少人为干预,使用该网络进行解码,能够降低的失真保证重建点云质量。
Claims (34)
- 一种编码方法,应用于编码器,所述方法包括:确定当前帧点云,以及所述当前帧点云对应的参考帧重建点云;利用预设第一神经网络基于所述参考帧重建点云对所述当前帧点云进行编码,将得到的编码比特写入码流;其中,所述第一神经网络为端到端神经网络,所述第一神经网络配置成:基于所述参考帧重建点云和所述当前帧点云进行帧间预测,得到所述当前帧点云的运动信息和残差信息;对所述运动信息和所述残差信息进行编码,将得到的编码比特写入码流。
- 根据权利要求1所述的方法,其中,所述第一神经网络包括帧间预测模块,所述帧间预测模块配置成:基于所述参考帧重建点云和所述当前帧点云进行多尺度运动估计,得到所述运动信息;基于解码后的运动信息和所述参考帧重建点云进行运动补偿,得到所述当前帧点云的预测信息;基于所述当前帧点云和所述当前帧点云的预测信息,得到所述残差信息。
- 根据权利要求2所述的方法,其中,所述帧间预测模块包括多尺度运动估计模块,所述多尺度运动估计模块配置成:将所述参考帧重建点云和所述当前帧点云进行连接,得到连接数据;从连接数据中提取原始运动信息;对所述原始运动信息进行低尺度运动估计,得到第一运动信息;基于所述第一运动信息对所述原始运动信息进行高尺度运动估计,得到第二运动信息;基于所述第一运动信息和所述第二运动信息,得到最终的所述运动信息。
- 根据权利要求3所述的方法,其中,所述多尺度运动估计模块包括提取模块,所述提取模块包括:两个卷积层以及每个卷积层后跟的激活层;所述提取模块配置成:将所述连接数据依次输入每个卷积层,以及其后的激活层,得到所述原始运动信息。
- 根据权利要求3所述的方法,其中,所述多尺度运动估计模块包括第一运动估计模块,所述第一运动估计模块包括:卷积层、激活层和三层初始残差网络;所述第一运动估计模块配置成:将所述原始运动信息依次输入到所述卷积层、所述激活层和所述三层初始残差网络进行低尺度的运动估计,得到所述第一运动信息。
- 根据权利要求3所述的方法,其中,所述多尺度运动估计模块包括第二运动估计模块,所述第二运动估计模块包括:反卷积层、第一剪枝层、减法器和卷积层;所述第二运动估计模块配置成:利用所述反卷积层对所述第一运动信息进行上采样,得到上采样后的第一运动信息;利用所述第一剪枝层对所述上采样后的第一运动信息进行剪枝,使得剪枝后的第一运动信息与所述原始运动信息的几何坐标集合相同;利用所述减法器将所述原始运动信息与所述剪枝后的第一运动信息相减,再利用所述卷积层进行下采样,得到所述第二运动信息。
- 根据权利要求3所述的方法,其中,所述多尺度运动估计模块还包括:第二剪枝层、第三剪枝层和加法器;所述多尺度运动估计模块配置成:利用所述第二剪枝层对所述第一运动信息进行剪枝,使得剪枝后的第一运动信息与所述残差信息的几何坐标集合相同;利用所述第三剪枝层对所述第二运动信息进行剪枝,使得剪枝后的第二运动特征信息与所述残差信息的几何坐标集合相同;利用所述加法器将剪枝后的第一运动信息和所述第二运动信息相加,得到最终的所述运动信息。
- 根据权利要求2所述的方法,其中,所述帧间预测模块包括第一压缩模块以及与所述第一压缩模块对应的第一解压缩模块;所述第一压缩模块配置成:对所述运动信息进行下采样;对下采样后的运动信息进行量化和熵编码,得到所述运动信息的编码比特;所述第一解压缩模块配置成:对所述运动信息的编码比特进行熵解码和上采样,得到所述解码后的运动信息。
- 根据权利要求2所述的方法,其中,所述帧间预测模块包括运动补偿模块,所述运动补偿模块配置成:从所述解码后的运动信息中获取所述当前帧点云中目标点的运动信息;基于所述目标点在所述当前帧点云中的第一几何坐标和所述目标点的运动信息,确定所述目标点在所述参考帧重建点云中对应的第二几何坐标;基于所述第二几何坐标在所述参考帧重建点云中确定K个近邻点;基于所述K个近邻点在所述参考帧重建点云中的属性重建值,以及预设的惩罚系数,确定所述目标点在所述当前帧点云中的属性预测值;其中,所述惩罚系数用于限制孤立点的K个近邻点的权重。
- 根据权利要求9所述的方法,其中,所述惩罚系数用于限制孤立点的K个近邻点的权重之和,所述基于所述K个近邻点在所述参考帧重建点云中的属性重建值,以及预设的惩罚系数,确定所述目标点在所述当前帧点云中的属性预测值,包括:基于所述第二几何坐标和所述K个近邻点的几何坐标确定所述K个近邻点的权重;所述K个近邻点的权重之和大于所述惩罚系数时,基于所述惩罚系数、所述K个近邻点的权重和所述K个近邻点的属性重建值,确定所述目标点的属性预测值;所述K个近邻点的权重之和小于或者等于所述惩罚系数时,基于所述K个近邻点的权重之和、所述K个近邻点的权重和所述K个近邻点的属性重建值,确定所述目标点的属性预测值。
- 根据权利要求9所述的方法,其中,所述目标点的运动信息为所述目标点在目标通道上的运动信息时,确定所述目标点在所述目标通道上的属性预测值;其中,所述目标通道为所述当前帧点云中所有通道中的一个通道。
- 根据权利要求2所述的方法,其中,所述第一神经网络还包括位于所述帧间预测模块之前的第一特征提取模块和第二特征提取模块;所述第一特征提取模块配置成:对所述参考帧重建点云进行特征提取,将所述参考帧重建点云转换成稀疏张量形式;所述第二特征提取模块配置成:对所述当前帧点云进行特征提取,将所述当前帧点云转换成稀疏张量形式。
- 根据权利要求12所述的方法,其中,每个特征提取模块包括第一下采样模块和第二下采样模块;所述第一下采样模块包括:两个卷积层、每个卷积层后跟的激活层和三层初始残差网络:所述第二下采样模块包括:两个卷积层、每个卷积层后跟的激活层和三层初始残差网络;所述第一下采样模块和所述第二下采样模块的卷积层参数不同。
- 根据权利要求2所述的方法,其中,所述第一神经网络还包括位于所述帧间预测模块之后的点云重建模块;所述点云重建模块配置成:对解码后的残差信息进行上采样,得到上采样后的残差信息;基于上采样后的残差信息和所述当前帧点云的预测信息,得到第一重建点云;对第一重建点云进行上采样,得到所述当前帧重建点云。
- 根据权利要求14所述的方法,其中,所述点云重建模块包括第一上采样模块,所述第一上采样模块包括:反卷积层、第一激活层、第一卷积层、第二激活层、三层初始残差网络、加法器、第二卷积层、分类层、剪枝层;所述第一上采样模块配置成:将所述解码后的残差信息依次经过所述反卷积层、第一激活层、第一卷积层、第二激活层和三层初始残差网络,得到上采样后的残差信息;利用所述加法器将上采样后的残差信息和所述当前帧点云的预测信息相加;将所述相加结果依次经过所述第二卷积层和分类层,确定满足占用条件的第一几何坐标集合;所述剪枝层基于所述第一几何坐标集合对所述相加结果进行剪枝,得到所述第一重建点云。
- 根据权利要求14所述的方法,其中,所述点云重建模块包括第二上采样模块和第三上采样模块,所述第二上采样模块包括:第一反卷积层、第一激活层、第一卷积层、第二激活层、三层初始残差网络、第二卷积层、第一分类层、第一剪枝层;所述第二上采样模块配置成:将所述第一重建点云依次经过所述第一反卷积层、第一激活层、第一卷积层、第二激活层和三层初始残差网络,得到上采样后的第一重建点云;将所述上采样后的第一重建点云依次经过所述第二卷积层、第一分类层,确定满足占用条件的第二几何坐标集合;所述第一剪枝层基于所述第二几何坐标集合对所述上采样后的第一重建点云进行剪枝,得到第二重建点云;所述第三上采样模块包括:第二反卷积层、第三激活层、第三卷积层、第四激活层、三层初始残差网络、第四卷积层、第二分类层、第二剪枝层;所述第三上采样模块配置成:将所述第二重建点云依次经过所述第二反卷积层、第三激活层、第三卷积层、第四激活层和三层初始残差网络,得到上采样后的第二重建点云;将所述上采样后的第二重建点云依次经过所述第四卷积层和第二分类层,确定满足占用条件的第三几何坐标集合;所述第二剪枝层基于所述第三几何坐标集合对所述上采样后的第二重建点云进行剪枝,得到所述当前帧重建点云;其中,所述第二上采样模块的第一反卷积层和所述第三上采样模块的第二反卷积层的参数不同,所述第二上采样模块的第一卷积层和所述第三上采样模块的第三卷积层参数不同。
- 根据权利要求1所述的方法,其中,所述第一神经网络包括第二压缩模块以及与所述第二压缩模块对应的第二解压缩模块;所述第二压缩模块配置成:对所述残差信息进行下采样;对下采样后的残差信息进行量化和熵编码,得到所述残差信息的编码比特;所述第二解压缩模块配置成:对所述残差信息的编码比特进行熵解码,得到解码后的残差信息。
- 根据权利要求1-17任一项所述的方法,其中,所述方法还包括:获取训练样本集;其中,所述训练样本集中包括一个或多个样本点云;利用所述第一神经网络对所述训练样本集中的第一样本点云进行编码和重建,得到所述第一样本点云的码率和重建点云;基于所述第一样本点云和所述重建点云,确定所述第一样本点云的失真;基于所述第一样本点云的失真和码率计算损失值;所述损失值不满足收敛条件时,调节所述第一神经网络的网络参数;所述损失值满足收敛条件时,确定所述第一神经网络训练完成。
- 一种解码方法,应用于解码器,所述方法包括:获取码流;利用预设第二神经网络解码码流得到当前帧重建点云;其中,所述第二神经网络为端到端神经网络,所述第二神经网络配置成:解码码流,确定当前帧点云的运动信息和残差信息;基于所述运动信息和参考帧重建点云进行运动补偿,得到所述当前帧点云的预测信息;基于所述残差信息和所述当前帧点云的预测信息,得到所述当前帧重建点云。
- 根据权利要求19所述的方法,其中,所述第二神经网络包括第一解压缩模块;所述第一解压缩模块配置成:对所述码流中所述运动信息的编码比特进行熵解码和上采样,得到所述运动信息。
- 根据权利要求19所述的方法,其中,所述第二神经网络包括运动补偿模块,所述运动补偿模块配置成:从所述运动信息中获取所述当前帧点云中目标点的运动信息;基于所述目标点在所述当前帧点云中的第一几何坐标和所述目标点的运动信息,确定所述目标点在所述参考帧重建点云中对应的第二几何坐标;基于所述第二几何坐标在所述参考帧重建点云中确定K个近邻点;基于所述K个近邻点在所述参考帧重建点云中的属性重建值,以及预设的惩罚系数,确定所述目标点在所述当前帧点云中的属性预测值;其中,所述惩罚系数用于限制孤立点的K个近邻点的权重。
- 根据权利要求21所述的方法,其中,所述惩罚系数用于限制孤立点的K个近邻点的权重之和,所述基于所述K个近邻点在所述参考帧重建点云中的属性重建值,以及预设的惩罚系数,确定所述目标点在所述当前帧点云中的属性预测值,包括:基于所述第二几何坐标和所述K个近邻点的几何坐标确定所述K个近邻点的权重;所述K个近邻点的权重之和大于所述惩罚系数时,基于所述惩罚系数、所述K个近邻点的权重和所述K个近邻点的属性重建值,确定所述目标点的属性预测值;所述K个近邻点的权重之和小于或者等于所述惩罚系数时,基于所述K个近邻点的权重之和、所述K个近邻点的权重和所述K个近邻点的属性重建值,确定所述目标点的属性预测值。
- 根据权利要求21所述的方法,其中,所述目标点的运动信息为所述目标点在目标通道上的运动信息时,确定所述目标点在所述目标通道上的属性预测值;其中,所述目标通道为所述当前帧点云中所有通道中的一个通道。
- 根据权利要求21所述的方法,其中,所述第二神经网络还包括位于所述运动补偿模块之前的第一特征提取模块;所述第一特征提取模块配置成:对所述参考帧重建点云进行特征提取,将所述参考帧重建点云转换成稀疏张量形式。
- 根据权利要求24所述的方法,其中,所述第一特征提取模块包括第一下采样模块和第二下采样模块;所述第一下采样模块包括:两个卷积层、每个卷积层后跟的激活层和三层初始残差网络:所述第二下采样模块包括:两个卷积层、每个卷积层后跟的激活层和三层初始残差网络;所述第一下采样模块和所述第二下采样模块的卷积层参数不同。
- 根据权利要求21所述的方法,其中,所述第二神经网络还包括位于所述运动补偿模块之后的点云重建模块;所述点云重建模块配置成:对所述残差信息进行上采样,得到上采样后的残差信息;基于上采样后的残差信息和所述当前帧点云的预测信息,得到第一重建点云;对第一重建点云进行上采样,得到所述当前帧重建点云。
- 根据权利要求26所述的方法,其中,所述点云重建模块包括第一上采样模块,所述第一上采样模块包括:反卷积层、第一激活层、第一卷积层、第二激活层、三层初始残差网络、加法器、第二卷积层、分类层、剪枝层;所述第一上采样模块配置成:将所述残差信息依次经过所述反卷积层、第一激活层、第一卷积层、第二激活层和三层初始残差网络,得到上采样后的残差信息;利用所述加法器将上采样后的残差信息和所述当前帧点云的预测信息相加;将所述相加结果依次经过所述第二卷积层和分类层,确定满足占用条件的第一几何坐标集合;所述剪枝层基于所述第一几何坐标集合对所述相加结果进行剪枝,得到所述第一重建点云。
- 根据权利要求26所述的方法,其中,所述点云重建模块包括第二上采样模块和第三上采样模块,所述第二上采样模块包括:第一反卷积层、第一激活层、第一卷积层、第二激活层、三层初始残差网络、第二卷积层、第一分类层、第一剪枝层;所述第二上采样模块配置成:将所述第一重建点云依次经过所述第一反卷积层、第一激活层、第一卷积层、第二激活层和三层初始残差网络,得到上采样后的第一重建点云;将所述上采样后的第一重建点云依次经过所述第二卷积层、第一分类层,确定满足占用条件的第二几何坐标集合;所述第一剪枝层基于所述第二几何坐标集合对所述上采样后的第一重建点云进行剪枝,得到第二重建点云;所述第三上采样模块包括:第二反卷积层、第三激活层、第三卷积层、第四激活层、三层初始残差网络、第四卷积层、第二分类层、第二剪枝层;所述第三上采样模块配置成:将所述第二重建点云依次经过所述第二反卷积层、第三激活层、第三卷积层、第四激活层和三层初始残差网络,得到上采样后的第二重建点云;将所述上采样后的第二重建点云依次经过所述第四卷积层和第二分类层,确定满足占用条件的第三几何坐标集合;所述第二剪枝层基于所述第三几何坐标集合对所述上采样后的第二重建点云进行剪枝,得到所述当前帧重建点云;其中,所述第二上采样模块的第一反卷积层和所述第三上采样模块的第二反卷积层的参数不同,所述第二上采样模块的第一卷积层和所述第三上采样模块的第三卷积层参数不同。
- 根据权利要求19所述的方法,其中,所述第二神经网络包括第二解压缩模块;所述第二解压缩模块配置成:对所述码流中所述残差信息的编码比特进行熵解码,得到所述残差信息。
- 一种编码器,所述编码器包括确定单元和编码单元;其中,所述确定单元,用于确定当前帧点云,以及所述当前帧点云对应的参考帧重建点云;所述编码单元,用于利用预设第一神经网络基于所述参考帧重建点云对所述当前帧点云进行编码,将得到的编码比特写入码流;其中,所述第一神经网络为端到端神经网络,所述第一神经网络配置成:基于所述参考帧重建点云和所述当前帧点云进行帧间预测,得到所述当前帧点云的运动信息和残差信息;对所述运动信息和所述残差信息进行编码,将得到的编码比特写入码流。
- 一种编码器,所述编码器包括第一存储器和第一处理器;其中,所述第一存储器,用于存储能够在所述第一处理器上运行的计算机程序;所述第一处理器,用于在运行所述计算机程序时,执行如权利要求1至18任一项所述的方法。
- 一种解码器,所述解码器包括获取单元和解码单元,其中,所述获取单元,用于获取码流;所述解码单元,用于利用预设第二神经网络解码码流得到当前帧重建点云;其中,所述第二神经网络为端到端神经网络,所述第二神经网络配置成:解码码流,确定当前帧点云的运动信息和残差信息;基于所述运动信息和参考帧重建点云进行运动补偿,得到所述当前帧点云的预测信息;基于所述残差信息和所述当前帧点云的预测信息,得到所述当前帧重建点云。
- 一种解码器,所述解码器包括第二存储器和第二处理器;其中,所述第二存储器,用于存储能够在所述第二处理器上运行的计算机程序;所述第二处理器,用于在运行所述计算机程序时,执行如权利要求19至29任一项所述的方法。
- 一种计算机存储介质,其中,所述计算机存储介质存储有计算机程序,所述计算机程序被第一处理器执行时实现如权利要求1-18任一项所述的方法、或者被第二处理器执行时实现如权利要求19-29任一项所述的方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2022/070598 WO2023130333A1 (zh) | 2022-01-06 | 2022-01-06 | 编解码方法、编码器、解码器以及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118614061A true CN118614061A (zh) | 2024-09-06 |
Family
ID=87072944
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202280087595.1A Pending CN118614061A (zh) | 2022-01-06 | 2022-01-06 | 编解码方法、编码器、解码器以及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN118614061A (zh) |
WO (1) | WO2023130333A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116863419A (zh) * | 2023-09-04 | 2023-10-10 | 湖北省长投智慧停车有限公司 | 一种目标检测模型轻量化的方法、装置、电子设备及介质 |
CN117014633B (zh) * | 2023-10-07 | 2024-04-05 | 深圳大学 | 一种跨模态数据压缩方法、装置、设备及介质 |
CN117615148B (zh) * | 2024-01-24 | 2024-04-05 | 华中科技大学 | 一种基于多尺度框架的端到端特征图分层压缩方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11297346B2 (en) * | 2016-05-28 | 2022-04-05 | Microsoft Technology Licensing, Llc | Motion-compensated compression of dynamic voxelized point clouds |
EP3474231A1 (en) * | 2017-10-19 | 2019-04-24 | Thomson Licensing | Method and device for predictive encoding/decoding of a point cloud |
CN111464815B (zh) * | 2020-04-17 | 2021-04-23 | 中国科学技术大学 | 一种基于神经网络的视频编码方法及系统 |
CN113766228B (zh) * | 2020-06-05 | 2023-01-13 | Oppo广东移动通信有限公司 | 点云压缩方法、编码器、解码器及存储介质 |
CN113284248B (zh) * | 2021-06-10 | 2022-11-15 | 上海交通大学 | 一种点云有损压缩的编解码方法、装置和系统 |
-
2022
- 2022-01-06 WO PCT/CN2022/070598 patent/WO2023130333A1/zh unknown
- 2022-01-06 CN CN202280087595.1A patent/CN118614061A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
WO2023130333A1 (zh) | 2023-07-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113766228B (zh) | 点云压缩方法、编码器、解码器及存储介质 | |
CN118614061A (zh) | 编解码方法、编码器、解码器以及存储介质 | |
US20230377208A1 (en) | Geometry coordinate scaling for ai-based dynamic point cloud coding | |
CN115086660B (zh) | 基于点云属性预测的解码、编码方法、解码器及编码器 | |
CN115086658B (zh) | 点云数据的处理方法、装置、存储介质及编解码设备 | |
CN117242493A (zh) | 点云解码、上采样及模型训练方法与装置 | |
CN114598883A (zh) | 点云属性的预测方法、编码器、解码器及存储介质 | |
US20230237704A1 (en) | Point cloud decoding and encoding method, and decoder, encoder and encoding and decoding system | |
CN116250008A (zh) | 点云的编码、解码方法、编码器、解码器以及编解码系统 | |
WO2023225091A1 (en) | Geometry coordinate scaling for ai-based dynamic point cloud coding | |
CN117321991A (zh) | 点云属性的预测方法、装置及编解码器 | |
CN118042192A (zh) | 点云编码、解码的方法、装置及设备 | |
CN116648915A (zh) | 点云编解码方法、编码器、解码器以及计算机存储介质 | |
WO2024012381A1 (en) | Method, apparatus, and medium for point cloud coding | |
US20240314359A1 (en) | Method, apparatus, and medium for point cloud coding | |
WO2023202538A1 (en) | Method, apparatus, and medium for point cloud coding | |
WO2023131136A1 (en) | Method, apparatus, and medium for point cloud coding | |
CN115474041B (zh) | 点云属性的预测方法、装置及相关设备 | |
WO2024074121A1 (en) | Method, apparatus, and medium for point cloud coding | |
WO2024007144A1 (zh) | 编解码方法、码流、编码器、解码器以及存储介质 | |
WO2024146644A1 (en) | Method, apparatus, and medium for point cloud coding | |
WO2024008019A1 (en) | Method, apparatus, and medium for point cloud coding | |
WO2024149203A1 (en) | Method, apparatus, and medium for point cloud coding | |
WO2024074122A1 (en) | Method, apparatus, and medium for point cloud coding | |
US20240267527A1 (en) | Method, apparatus, and medium for point cloud coding |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination |