CN118075464A - 点云属性的预测方法、装置及编解码器 - Google Patents
点云属性的预测方法、装置及编解码器 Download PDFInfo
- Publication number
- CN118075464A CN118075464A CN202410165643.5A CN202410165643A CN118075464A CN 118075464 A CN118075464 A CN 118075464A CN 202410165643 A CN202410165643 A CN 202410165643A CN 118075464 A CN118075464 A CN 118075464A
- Authority
- CN
- China
- Prior art keywords
- point
- points
- decoded
- encoded
- attribute
- 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 136
- 238000004590 computer program Methods 0.000 claims description 24
- 238000003860 storage Methods 0.000 claims description 19
- 108091026890 Coding region Proteins 0.000 claims description 9
- 230000008569 process Effects 0.000 description 27
- 238000010586 diagram Methods 0.000 description 21
- 238000013139 quantization Methods 0.000 description 21
- 230000006835 compression Effects 0.000 description 16
- 238000007906 compression Methods 0.000 description 16
- 101150019148 Slc7a3 gene Proteins 0.000 description 10
- 230000006870 function Effects 0.000 description 10
- 238000004891 communication Methods 0.000 description 9
- 238000012545 processing Methods 0.000 description 8
- 238000013519 translation Methods 0.000 description 7
- 238000010276 construction Methods 0.000 description 6
- 230000003068 static effect Effects 0.000 description 6
- 230000001502 supplementing effect Effects 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 5
- 238000012360 testing method Methods 0.000 description 5
- 230000009466 transformation Effects 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 4
- 238000004040 coloring Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000007667 floating Methods 0.000 description 4
- 238000007493 shaping process Methods 0.000 description 4
- 230000001360 synchronised effect Effects 0.000 description 4
- 230000000007 visual effect Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000007654 immersion Methods 0.000 description 3
- 238000002595 magnetic resonance imaging Methods 0.000 description 3
- 210000000056 organ Anatomy 0.000 description 3
- 238000007781 pre-processing Methods 0.000 description 3
- 238000005070 sampling Methods 0.000 description 3
- 239000003086 colorant Substances 0.000 description 2
- 238000002591 computed tomography Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000012804 iterative process Methods 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000008447 perception Effects 0.000 description 2
- 238000012163 sequencing technique Methods 0.000 description 2
- 101000638069 Homo sapiens Transmembrane channel-like protein 2 Proteins 0.000 description 1
- 241000023320 Luma <angiosperm> Species 0.000 description 1
- 102100032054 Transmembrane channel-like protein 2 Human genes 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000011960 computer-aided design Methods 0.000 description 1
- 238000013523 data management Methods 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 210000000887 face Anatomy 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
- 238000002310 reflectometry Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/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/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/13—Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Image Processing (AREA)
Abstract
本申请提供一种点云属性的预测方法、装置及编解码器,该方法包括:获得点云的已解码点的属性信息的重建值;对于点云中的待解码点,在待解码点的索引大于N时,从点云的已解码点中,确定待解码点的参考点查找范围;在参考点查找范围内,查找距离待解码点最近的至少一个参考点;根据至少一个参考点的属性信息的重建值,确定待解码点的属性信息的预测值。即本申请在确定参考点时,通过全局搜索的方法,以参考点与待解码点之间的距离为考量,进而使得确定的参考点为距离待解码点空间距离最近的已解码点,基于空间距离待解码点最近的至少一个参考点的属性信息进行属性预测时,可以提高属性预测的准确性。
Description
本申请是申请日为2021年6月11日的PCT国际专利申请PCT/CN2021/099872进入中国国家阶段的中国专利申请号202180098263.9、发明名称为“点云属性的预测方法、装置及编解码器”的分案申请。
技术领域
本申请涉及点云技术领域,尤其涉及一种点云属性的预测方法、装置及编解码器。
背景技术
通过采集设备对物体表面进行采集,形成点云数据,点云数据包括几十万甚至更多的点。在视频制作过程中,将点云数据以点云媒体文件的形式在点云编码设备和点云解码设备之间传输。但是,如此庞大的点给传输带来了挑战,因此,点云编码设备需要对点云数据进行压缩后传输。
目前通过预测来减少或消除点云数据中的冗余信息,以实现点云数据的压缩。但是目前的点云预测准确性差。
发明内容
本申请实施例提供了一种点云属性的预测方法、装置及编解码器,以提高点云的预测准确性。
第一方面,本申请实施例提供一种点云属性的预测方法,包括:
解码点云码流,得到点云的已解码点的属性信息的重建值;
对于所述点云中的待解码点,在所述待解码点的索引大于N时,从所述点云的已解码点中,确定所述待解码点的参考点查找范围,其中,所述待解码点的索引为所述待解码点在属性解码顺序中的排序,N为正整数;
在所述参考点查找范围内,查找距离所述待解码点最近的至少一个参考点;
根据所述至少一个参考点的属性信息的重建值,确定所述待解码点的属性信息的预测值。
第二方面,本申请提供了一种点云属性的预测方法,包括:
获取点云的已编码点的属性信息的重建值;
对于所述点云中的待编码点,在所述待编码点的索引大于N时,从所述点云的已编码点中,确定所述待编码点的参考点查找范围,其中,所述待编码点的索引为所述待编码点在属性编码顺序中的排序,N为正整数;
在所述参考点查找范围内,查找距离所述待编码点最近的至少一个参考点;
根据所述至少一个参考点的属性信息的重建值,确定所述待编码点的属性信息的预测值。
第三方面,提供了一种点云属性的预测装置,用于执行上述第一方面或其各实现方式中的方法。具体地,该装置包括用于执行上述第一方面或其各实现方式中的方法的功能单元。
第四方面,提供了一种点云属性的预测装置,用于执行上述第二方面或其各实现方式中的方法。具体地,该装置包括用于执行上述第二方面或其各实现方式中的方法的功能单元。
第五方面,提供了一种点云解码器,包括处理器和存储器。该存储器用于存储计算机程序,该处理器用于调用并运行该存储器中存储的计算机程序,以执行上述第一方面或其各实现方式中的方法。
第六方面,提供了一种点云解码器,包括处理器和存储器。该存储器用于存储计算机程序,该处理器用于调用并运行该存储器中存储的计算机程序,以执行上述第二方面或其各实现方式中的方法。
第七方面,提供了一种芯片,用于实现上述第一方面至第二方面中的任一方面或其各实现方式中的方法。具体地,该芯片包括:处理器,用于从存储器中调用并运行计算机程序,使得安装有该芯片的设备执行如上述第一方面至第二方面中的任一方面或其各实现方式中的方法。
第八方面,提供了一种计算机可读存储介质,用于存储计算机程序,该计算机程序使得计算机执行上述第一方面至第二方面中的任一方面或其各实现方式中的方法。
第九方面,提供了一种计算机程序产品,包括计算机程序指令,该计算机程序指令使得计算机执行上述第一方面至第二方面中的任一方面或其各实现方式中的方法。
第十方面,提供了一种计算机程序,当其在计算机上运行时,使得计算机执行上述第一方面至第二方面中的任一方面或其各实现方式中的方法。
基于以上技术方案,通过获取点云的已解码点的属性信息的重建值;对于点云中的待解码点,在待解码点的索引大于N时,从点云的已解码点中,确定待解码点的参考点查找范围;在参考点查找范围内,查找距离待解码点最近的至少一个参考点;根据至少一个参考点的属性信息的重建值,确定待解码点的属性信息的预测值。即本申请在确定参考点时,通过全局搜索的方法,以参考点与待解码点之间的距离为考量,进而使得确定的至少一个参考点为距离待解码点空间距离最近的已解码点。由于点云中空间距离较近的各点的属性信息相关性强,这样基于空间距离待解码点最近的参考点的属性信息进行属性预测时,可以提高属性预测的准确性。
附图说明
图1A为三维点云图像的示意图;
图1B为三维点云图像的局部放大示意图;
图2为本申请实施例涉及的一种点云编解码***的示意性框图;
图3是本申请实施例提供的点云编码器的示意性框图;
图4是本申请实施例提供的点云解码器的示意性框图;
图5A是点云的一种包围盒的示意图;
图5B是点云的另一种包围盒的示意图;
图6A为一种莫顿顺序示意图;
图6B为一种莫顿顺序示意图;
图6C为一种莫顿顺序示意图;
图6D为一种莫顿顺序示意图;
图7为本申请一实施例提供的点云属性的预测方法的流程示意图;
图8为本申请一实施例提供的点云解码方法的流程示意图;
图9为本申请一实施例提供的点云属性的预测方法的流程示意图;
图10为本申请一实施例提供的点云编码方法的流程示意图;
图11是本申请一实施例提供的点云属性的预测装置的示意性框图;
图12是本申请一实施例提供的点云属性的预测装置的示意性框图;
图13是本申请实施例提供的电子设备的示意性框图。
具体实施方式
本申请可应用于点云上采样技术领域,例如可以应用于点云压缩技术领域。
为了便于理解本申请的实施例,首先对本申请实施例涉及到的相关概念进行如下简单介绍:
点云(Point Cloud)是指空间中一组无规则分布的、表达三维物体或三维场景的空间结构及表面属性的离散点集,例如图1A所示的三维点云图像,以及图1B所示的图1A中局部放大的点云图像,可以看到点云表面是由分布稠密的点所组成的。
点云数据(Point Cloud Data)是点云的具体记录形式,点云中的点可以包括点的位置信息和点的属性信息。例如,点的位置信息可以是点的三维坐标信息。点的位置信息也可称为点的几何信息。例如,点的属性信息可包括颜色信息和/或反射率等等。例如,所述颜色信息可以是任意一种色彩空间上的信息。例如,所述颜色信息可以是(RGB)。再如,所述颜色信息可以是于亮度色度(YcbCr,YUV)信息。例如,Y表示明亮度(Luma),Cb(U)表示蓝色色差,Cr(V)表示红色,U和V表示为色度(Chroma)用于描述色差信息。例如,根据激光测量原理得到的点云,所述点云中的点可以包括点的三维坐标信息和点的激光反射强度(reflectance)。再如,根据摄影测量原理得到的点云,所述点云中的点可以可包括点的三维坐标信息和点的颜色信息。再如,结合激光测量和摄影测量原理得到点云,所述点云中的点可以可包括点的三维坐标信息、点的激光反射强度(reflectance)和点的颜色信息。
点云可以按获取的途径分为:密集型点云和稀疏性点云。
点云按照数据的时序类型划分为:
第一类静态点云:即物体是静止的,获取点云的设备也是静止的;
第二类动态点云:物体是运动的,但获取点云的设备是静止的;
第三类动态获取点云:获取点云的设备是运动的。
按点云的用途分为两大类:
类别一:机器感知点云,其可以用于自主导航***、实时巡检***、地理信息***、视觉分拣机器人、抢险救灾机器人等场景;
类别二:人眼感知点云,其可以用于数字文化遗产、自由视点广播、三维沉浸通信、三维沉浸交互等点云应用场景。
点云可以灵活方便地表达三维物体或场景的空间结构及表面属性,并且由于点云通过直接对真实物体采样获得,在保证精度的前提下能提供极强的真实感,因而应用广泛,其范围包括虚拟现实游戏、计算机辅助设计、地理信息***、自动导航***、数字文化遗产、自由视点广播、三维沉浸远程呈现、生物组织器官三维重建等。
点云数据的获取途径可以包括但不限于以下至少一种:(1)计算机设备生成。计算机设备可以根据虚拟三维物体及虚拟三维场景的生成点云数据。(2)3D(3-Dimension,三维)激光扫描获取。通过3D激光扫描可以获取静态现实世界三维物体或三维场景的点云数据,每秒可以获取百万级点云数据;(3)3D摄影测量获取。通过3D摄影设备(即一组摄像机或具有多个镜头和传感器的摄像机设备)对现实世界的视觉场景进行采集以获取现实世界的视觉场景的点云数据,通过3D摄影可以获得动态现实世界三维物体或三维场景的点云数据。(4)通过医学设备获取生物组织器官的点云数据。在医学领域可以通过磁共振成像(Magnetic Resonance Imaging,MRI)、电子计算机断层扫描(Computed Tomography,CT)、电磁定位信息等医学设备获取生物组织器官的点云数据。
这些技术降低了点云数据获取成本和时间周期,提高了数据的精度。点云数据获取方式的变革,使大量点云数据的获取成为可能,伴随着应用需求的增长,海量3D点云数据的处理遭遇存储空间和传输带宽限制的瓶颈。
以帧率为30fps(帧每秒)的点云视频为例,每帧点云的点数为70万,每个点具有坐标信息xyz(float)和颜色信息RGB(uchar),则10s点云视频的数据量大约为0.7million·(4Byte·3+1Byte·3)·30fps·10s=3.15GB,而YUV采样格式为4:2:0,帧率为24fps的1280·720二维视频,其10s的数据量约为1280·720·12bit·24frames·10s≈0.33GB,10s的两视角3D视频的数据量约为0.33·2=0.66GB。由此可见,点云视频的数据量远超过相同时长的二维视频和三维视频的数据量。因此,为更好地实现数据管理,节省服务器存储空间,降低服务器与客户端之间的传输流量及传输时间,点云压缩成为促进点云产业发展的关键问题。
点云压缩一般包括点云几何信息和属性信息的压缩,下面对点云压缩的相关知识进行介绍。
图2为本申请实施例涉及的一种点云编解码***的示意性框图。需要说明的是,图2只是一种示例,本申请实施例的点云编解码***包括但不限于图2所示。如图2所示,该点云编解码***100包含编码设备110和解码设备120。其中编码设备用于对点云数据进行编码(可以理解成压缩)产生码流,并将码流传输给解码设备。解码设备对编码设备编码产生的码流进行解码,得到解码后的点云数据。
本申请实施例的编码设备110可以理解为具有点云编码功能的设备,解码设备120可以理解为具有点云解码功能的设备,即本申请实施例对编码设备110和解码设备120包括更广泛的装置,例如包含智能手机、台式计算机、移动计算装置、笔记本(例如,膝上型)计算机、平板计算机、机顶盒、电视、相机、显示装置、数字媒体播放器、点云游戏控制台、车载计算机等。
在一些实施例中,编码设备110可以经由信道130将编码后的点云数据(如码流)传输给解码设备120。信道130可以包括能够将编码后的点云数据从编码设备110传输到解码设备120的一个或多个媒体和/或装置。
在一个实例中,信道130包括使编码设备110能够实时地将编码后的点云数据直接发射到解码设备120的一个或多个通信媒体。在此实例中,编码设备110可根据通信标准来调制编码后的点云数据,且将调制后的点云数据发射到解码设备120。其中通信媒体包含无线通信媒体,例如射频频谱,可选的,通信媒体还可以包含有线通信媒体,例如一根或多根物理传输线。
在另一实例中,信道130包括存储介质,该存储介质可以存储编码设备110编码后的点云数据。存储介质包含多种本地存取式数据存储介质,例如光盘、DVD、快闪存储器等。在该实例中,解码设备120可从该存储介质中获取编码后的点云数据。
在另一实例中,信道130可包含存储服务器,该存储服务器可以存储编码设备110编码后的点云数据。在此实例中,解码设备120可以从该存储服务器中下载存储的编码后的点云数据。可选的,该存储服务器可以存储编码后的点云数据且可以将该编码后的点云数据发射到解码设备120,例如web服务器(例如,用于网站)、文件传送协议(FTP)服务器等。
一些实施例中,编码设备110包含点云编码器112及输出接口113。其中,输出接口113可以包含调制器/解调器(调制解调器)和/或发射器。
在一些实施例中,编码设备110除了包括点云编码器112和输入接口113外,还可以包括点云源111。
点云源111可包含点云采集装置(例如,扫描仪)、点云存档、点云输入接口、计算机图形***中的至少一个,其中,点云输入接口用于从点云内容提供者处接收点云数据,计算机图形***用于产生点云数据。
点云编码器112对来自点云源111的点云数据进行编码,产生码流。点云编码器112经由输出接口113将编码后的点云数据直接传输到解码设备120。编码后的点云数据还可存储于存储介质或存储服务器上,以供解码设备120后续读取。
在一些实施例中,解码设备120包含输入接口121和点云解码器122。
在一些实施例中,解码设备120除包括输入接口121和点云解码器122外,还可以包括显示装置123。
其中,输入接口121包含接收器及/或调制解调器。输入接口121可通过信道130接收编码后的点云数据。
点云解码器122用于对编码后的点云数据进行解码,得到解码后的点云数据,并将解码后的点云数据传输至显示装置123。
显示装置123显示解码后的点云数据。显示装置123可与解码设备120整合或在解码设备120外部。显示装置123可包括多种显示装置,例如液晶显示器(LCD)、等离子体显示器、有机发光二极管(OLED)显示器或其它类型的显示装置。
此外,图2仅为实例,本申请实施例的技术方案不限于图2,例如本申请的技术还可以应用于单侧的点云编码或单侧的点云解码。
目前的点云编码器或点云解码器可以采用运动图像专家组(Moving PictureExperts Group,MPEG)提供的基于几何的点云压缩(Geometry Point Cloud Compression,G-PCC)编解码框架或基于视频的点云压缩(Video Point Cloud Compression,V-PCC)编解码框架,也可以采用音视频编码标准(Audio Video Standard,AVS)提供的AVS-PCC编解码框架。G-PCC及AVS-PCC均针对静态的稀疏型点云,其编码框架大致相同。G-PCC编解码框架可用于针对第一静态点云和第三类动态获取点云进行压缩,V-PCC编解码框架可用于针对第二类动态点云进行压缩。G-PCC编解码框架也称为点云编解码器TMC13,V-PCC编解码框架也称为点云编解码器TMC2。点云压缩框还包括点云压缩参考平台(Point Cloud ReferenceModel,PCRM)。
下面以PCRM编解码框架为例,对本申请实施例可适用的点云编码器和点云解码器进行说明。
图3是本申请实施例提供的点云编码器的示意性框图。
由上述可知点云中的点可以包括点的位置信息和点的属性信息,因此,点云中的点的编码主要包括位置编码和属性编码。在一些示例中点云中点的位置信息又称为几何信息,对应的点云中点的位置编码也可以称为几何编码。
在编码端,首先在几何编码部分编码点云几何信息,然后将重建几何信息作为附加信息输入到属性编码部分中,辅助点云属性的压缩。整个编码器由预处理、几何编码、属性编码几部分组成。
位置编码的过程包括:首先对原始几何信息进行预处理,例如通过坐标平移将几何原点归一化到点云空间中的最小值位置,通过坐标量化将几何信息从浮点数转化为整形,便于后续的规则化处理。接着,对规则化的几何信息进行几何编码,例如采用八叉树结构对点云空间进行递归划分,每次将当前节点划分成八个相同大小的子块,并判断每个子块的占***字情况,当子块内不包含点时记为空,否则记为非空,在递归划分的最后一层记录所有块的占***字信息,并进行编码。其中,通过八叉树结构表达的几何信息一方面输入到几何熵编码器中形成几何码流,一方面在编码器内进行几何重建处理,重建后的几何信息作为附加信息输入到属性编码部分中。
属性编码过程包括:首先对原始属性信息进行预处理,由于几何信息在几何编码之后有所异动,因此需要为几何编码后的每一个点重新分配属性值,这个过程叫做属性重上色,此外,如果处理的属性信息为颜色信息,还需要将原始颜色进行颜色空间变换,将其转变成更符合人眼视觉特性的YUV色彩空间。接着,对预处理后属性信息进行属性编码,属性编码首先需要将点云进行重排序,重排序的方式例如是莫顿码,因此属性编码的遍历顺序为莫顿顺序,PCRM中的属性预测方法为基于莫顿顺序的单点预测,即按照莫顿顺序从当前待编码点向前回溯一个点,找到的点为当前待编码点的预测参考点。然后,根据预测参考点的属性重建值确定当前待编码点的属性预测值,属性残差为当前待编码点的属性值与属性预测值之间的差值;最后对残差进行量化,将量化残差输入到属性熵编码器中形成属性码流。
下面对图3所示的点云编码器中的各单元进行介绍。
如图3所示,位置编码可通过以下单元实现:
坐标平移单元201、坐标量化单元202、八叉树构建单元203、几何重建单元204以及几何熵编码单元205。
坐标平移单元201可用于将点云中点的世界坐标变换为相对坐标。例如,点的几何坐标分别减去xyz坐标轴的最小值,相当于去直流操作,以实现将点云中的点的坐标从世界坐标转换为相对坐标。
坐标量化单元202可通过量化减少坐标的数目;量化后原先不同的点可能被赋予相同的坐标,基于此,可通过去重操作将重复的点删除;例如,具有相同量化位置和不同属性信息的多个云可通过属性转换合并到一个云中。坐标量化可以将几何信息从浮点数转化为整形,便于后续的规则化处理。在本申请的一些实施例中,坐标量化单元202为可选的单元模块。
八叉树构建单元203可利用八叉树(octree)编码方式编码量化的点的位置信息。例如,将点云按照八叉树的形式进行划分,由此,点的位置可以和八叉树的位置一一对应,通过统计八叉树中有点的位置,并将其标识(flag)记为1,以进行几何编码。
几何重建单元204可以基于八叉树构建单元203输出的位置信息进行位置重建,得到点云数据中各点的位置信息的重建值。
几何熵编码单元205可以采用熵编码方式对八叉树构建单元203输出的位置信息进行算术编码,即将八叉树构建单元203输出的位置信息利用算术编码方式生成几何码流;几何码流也可称为几何比特流(geometry bitstream)。
属性编码可通过以下单元实现:
颜色空间转换(Transform colors)单元210、属性重上色单元211、属性预测单元212、量化单元213以及属性熵编码单元214。
需要说明的是,点云编码器200可包含比图3更多、更少或不同的功能组件。
颜色空间转换单元210可用于将点云中点的RGB色彩空间变换为YCbCr格式或其他格式。
属性重上色单元211由于几何信息在几何编码之后有所异动,因此需要为几何编码后的每一个点重新分配属性值,这个过程叫做属性重上色。
属性预测单元212可包括:区域自适应分层变换(Region Adaptive HierarchicalTransform,RAHT)、预测变化(predicting transform)以及提升变化(lifting transform)等。换言之,RAHT、预测变化以及提升变化214中的任一项可用于对点云中点的属性信息进行预测,以得到点的属性信息的预测值,进而基于点的属性信息的预测值得到点的属性信息的残差值。例如,点的属性信息的残差值可以是点的属性信息的原始值减去点的属性信息的预测值。
在本申请的一实施例中,属性预测单元212还可用于生成细节层(level ofdetail,LOD)。LOD的生成过程包括:根据点云中点的位置信息,获取点与点之间的欧式距离;根据欧式距离,将点分为不同的细节表达层。在一个实施例中,可以将欧式距离进行排序后,将不同范围的欧式距离划分为不同的细节表达层。例如,可以随机挑选一个点,作为第一细节表达层。然后计算剩余点与该点的欧式距离,并将欧式距离符合第一阈值要求的点,归为第二细节表达层。获取第二细节表达层中点的质心,计算除第一、第二细节表达层以外的点与该质心的欧式距离,并将欧式距离符合第二阈值的点,归为第三细节表达层。以此类推,将所有的点都归到细节表达层中。通过调整欧式距离的阈值,可以使得每层LOD层的点的数量是递增的。应理解,LOD划分的方式还可以采用其它方式,本申请对此不进行限制。
需要说明的是,可以直接将点云划分为一个或多个细节表达层,也可以先将点云划分为多个点云切块(slice),再将每一个点云切块划分为一个或多个LOD层。
例如,可将点云划分为多个点云切块,每个点云切块的点的个数可以在55万-110万之间。每个点云切块可看成单独的点云。每个点云切块又可以划分为多个细节表达层,每个细节表达层包括多个点。在一个实施例中,可根据点与点之间的欧式距离,进行细节表达层的划分。
量化单元213可用于量化点的属性信息的残差值。例如,若所述量化单元213和所述属性预测单元212相连,则所述量化单元213可用于量化所述属性预测单元212输出的点的属性信息的残差值。例如,对属性预测单元212输出的点的属性信息的残差值使用量化步长进行量化,以实现提升***性能。
属性熵编码单元214可使用零行程编码(Zero run length coding)对点的属性信息的残差值进行熵编码,以得到属性码流。所述属性码流可以是比特流信息。
图4是本申请实施例提供的点云解码器的示意性框图。
如图4所示,解码器300可以从编码设备获取点云码流,通过解析码得到点云中的点的位置信息和属性信息。点云的解码包括位置解码和属性解码。
位置解码的过程包括:首先对几何码流进行熵解码,得到每个节点的几何信息,然后按照和几何编码相同的方式构建八叉树结构,结合解码几何重建出坐标变换后的、通过八叉树结构表达的几何信息,一方面将该信息进行坐标反量化和反平移,得到解码几何信息,一方面作为附加信息输入到属性解码器中。
属性解码过程包括:按照与编码端相同的方式构建莫顿顺序,先对属性码流进行熵解码,得到量化后的残差信息;然后进行反量化,得到点云残差。按照与属性编码相同的方式,获得当前待解码点的属性预测值,然后将属性预测值与残差值相加,可以恢复出当前待解码点的YUV属性值。最后,经过颜色空间反变换得到解码属性信息。
如图4所示,位置解码可通过以下单元实现:
几何熵解码单元301、八叉树构建单元302、坐标反量化单元303以及坐标反平移单元304。
属性编码可通过以下单元实现:
属性熵解码单元310、反量化(inverse quantize)单元311、预测单元312以及颜色空间反转换(inverse trasform colors)单元313。
需要说明的是,解压缩是压缩的逆过程,类似的,解码器300中的各个单元的功能可参见编码器200中相应的单元的功能。另外,点云解码器300可包含比图4更多、更少或不同的功能组件。
例如,解码器300可根据点云中点与点之间的欧式距离将点云划分为多个LOD;然后,依次对LOD中点的属性信息进行解码;例如,计算零行程编码技术中零的数量(zero_cnt),以基于zero_cnt对残差进行解码;接着,解码框架200可基于解码出的残差值进行反量化,并基于反量化后的残差值与当前点的预测值相加得到该点云的重建值,直到解码完所有的点云。当前点将会作为后续LOD中点的最邻近点,并利用当前点的重建值对后续点的属性信息进行预测。
上述是基于PCRM编解码框架下的点云编解码器的基本流程,随着技术的发展,该框架或流程的一些模块或步骤可能会被优化,本申请适用于该基于PCRM编解码框架下的点云编解码器的基本流程,但不限于该框架及流程。
下面对点云的规则化处理过程进行介绍。
由于点云在空间中无规则分布的特性,给编码过程带来挑战,因此采用递归八叉树的结构,将点云中的点规则化地表达成立方体的中心。如图5A,首先将整幅点云放置在一个正方体包围盒内,点云中点的坐标表示为(xk,yk,zk),k=0,…,K-1,其中K是点云的总点数,点云在x、y、z方向上的边界值分别为:
xmin=min(x0,x1,…,xK-1)
ymin=min(y0,y1,…,yK-1)
zmin=min(z0,z1,…,zK-1)
xmax=max(x0,x1,…,xK-1)
ymax=max(y0,y1,…,yK-1)
zmax=max(z0,z1,…,zK-1)
则包围盒的原点(xorigin,yorigin,zorigin)可以计算如下:
xorigin=int(floor(xmin))
yorigin=int(floor(ymin))
zorigin=int(floor(zmin))
包围盒在x、y、z方向上的尺寸可以计算如下:
BoudingBoxSizex=int(xmax-xorigin)+1
BoudingBoxSizey=int(ymax-yorigin)+1
BoudingBoxSizez=int(zmax-zorigin)+1
接着,如图5B所示,首先对包围盒进行八叉树划分,每次得到八个子块,然后对子块中的非空块(包含点的块)进行再一次的八叉树划分,如此递归划分直到某个深度,将最终大小的非空子块称作voxel,每个voxel中包含一个或多个点,将这些点的几何位置归一化为voxel的中心点,该中心点的属性值取voxel中所有点的属性值的平均值。
将点云规则化为空间中的块,有利于点云中点与点的关系描述,进而能够表达特定的编码顺序,按照一定的顺序编码每一个voxel,即编码voxel所代表的点(或称“节点”),一种常用的编码顺序为交叉分离式的莫顿顺序。图6A至图6C展示了莫顿码在二维空间中的编码顺序,以8*8大小的块为例,其中箭头的顺序表示莫顿顺序下点的编码顺序。图6A为块中2*2个像素的“z”字形莫顿顺序示意图,图6B为4个2*2块之间的“z”字形莫顿顺序示意图,图6C为4个4*4块之间的“z”字形莫顿顺序示意图,组成为整个8*8块的莫顿顺序。扩展到三维空间中的莫顿顺序如图6D所示,图6D中展示了16个节点,每个“z”字内部以及每个“z”与“z”之间的莫顿顺序均是先沿x轴方向编码,再沿y轴,最后沿z轴。
本申请实施例涉及点云压缩中的属性预测部分。属性预测过程中,首先需要确定当前点的预测参考点,根据当前点的预测参考点的属性信息,确定当前点的属性信息的预测值。
在一些实施例中,根据点云中点与点之间的几何关系,例如,从与当前点几何共面、共线、共点的已编码点中选取当前点的预测参考点。也就是说,当前点的预测参考点必须满足如下两个条件:
条件1,与当前节点满足共面、共线、共点关系;
条件2,在当前点之前编码完成。
举例说明,假设当前点O的序号为7,共有6个面,12条边,8个点,假设与当前点O共面节点有3、5、6、14、21、35,假设与当前点O共线节点有1、2、4、10、12、17、20、28、33、34、42、49,假设与当前点O共点节点有0、8、16、24、32、40、48、56。
在上述与当前点共面共线共点的已编码点中,选取当前点的预测参考点,假设上述与当前点共面且已编码的点为:3、5、6,与当前点共线且已编码的点为:1、2、4、10、12、17、20、33、34,与当前点共点且已编码的点为:0、8、16、24、32、40、48,因此当前点的预测参考点从上述:共面的点3、5、6,共线的点1、2、4、10、12、17、20、33、34,共点的点0、8、16、24、32、40、48当中产生。
由上述实施例可知,该实施例确定当前点的预测参考点的过程复杂,由于点云中相邻点之间通常具有相似的属性信息,但该实施例选取的预测参考点不一定是距离当前点距离最近的点,进而导致当前点的属性预测不准确。
为了解决上述技术问题,本申请实施例提供了一种点云属性的预测方法,通过从当前点的已编码点中查询距离当前点最近的至少一个点作为当前点的预测参考点,进而保证了预测参考点为距离当前点最近的点,这样根据距离当前点最近的预测参考点的属性信息,可以准确确定出当前点的属性信息的预测值,进而提高了点云属性预测的准确性,且整个预测过程简单,易于实现。
下面结合具体的实施例,对本申请实施例涉及的点云属性的预测方法进行介绍。
首先以解码端为例。
图7为本申请一实施例提供的点云属性的预测方法的流程示意图,本申请实施例的执行主体可以为上述图4所示的解码器,也可以是解码器中的部分元件。如图7所示,点云属性的预测方法包括:
S701、解码点云码流,得到点云的已解码点的属性信息的重建值。
点云码流包括属性码流和几何码流,解码几何码流可以得到点云的几何信息,解码属性码流可以得到点云的属性信息。
具体是,如图4所示,对几何码流进行几何熵解码,得到点云中每个点的几何信息,对解码出点云的几何信息构建八叉树重建,例如采用八叉树结构对点云空间进行递归划分,每次将当前块划分成八个相同大小的子块,得到点云的八叉树结构表达的几何信息。对八叉树结构表达的几何信息进行反量化以及反变换后,得到点云的几何信息的重建值并输出。另一方面,点云的几何信息的重建值输入点云的属性解码部分,参与点云的属性解码,得到点云中已解码点的属性信息的重建值。
S702、对于点云中的待解码点,在待解码点的索引大于N时,从点云的已解码点中,确定待解码点的参考点查找范围。
其中,待解码点的索引为待解码点在属性解码顺序中的排序,N为正整数。
在点云的属性解码中,按照点云的属性解码顺序对点云中的点的属性信息进行解码。
本申请实施例对点云的属性解码顺序的具体形式不做限制,可以根据实际需要进行确定。
在一种示例中,上述点云的属性解码顺序可以为莫顿顺序。莫顿码可以将多维数据转化为一维数据编码,根据一维编码位数可确定多维数据保留精度,是一种比较常用的压缩编码方法,其编解码顺序按照空间z序。
在一种示例中,上述点云的属性解码顺序可以为希尔伯特(Hilbert)顺序。Hilbert顺序也称为Hilbert曲线,是将多维空间转换为一维空间且很好地保留了空间邻近性。
在一种示例中,点云的属性解码顺序还可以是先沿着y方向解码,再沿着x方向解码,最后沿着z方向解码;也可以是先沿着y方向解码,再沿着z方向解码,最后沿着x方向解码;也可以是先沿着x方向解码,再沿着z方向解码,最后沿着y方向解码;也可以是先沿着z方向解码,再沿着x方向解码,最后沿着y方向解码;也可以是先沿着z方向解码,再沿着y方向解码,最后沿着x方向解码。
需要说明的是,上述只是本申请实施例涉及的两种属性解码顺序的具体示例,本申请实施例的属性解码顺序包括但不限于如上两种。
需要说明的是,上述待解码点也可以称为当前点,或者当前待解码点,或当前待处理点等。
在一种可能的实现方式中,属性解码顺序中各点的索引从0开始,例如,点云中包括100个点,则该点云中点在属性解码顺序下的索引为0至99。也就是说,在属性解码顺序下点云中的第一个点的索引为0,第二个点的索引为1。
可选的,上述N大于或等于2,也就是说,待解码点为属性解码顺序下点云中第3个点以后的任意一个属性信息未解码的点。
对于点云中当前待解码点,在确定该待解码点的属性信息的重建值之前,需要确定该待解码点的属性信息的预测值,而确定该待解码点的属性信息的预测值时,首先需要确定该待解码点的参考点。
具体是,在该待解码点的索引大于N,例如待解码点为点云中第3个点以后的未解码点时,从属性解码顺序下点云的已解码点中,确定该待解码点的参考点查找范围,进而保证参考点查找范围内的各候选点均为已解码点,进而保证了参考点查找的有效性。
本申请实施例中,根据待解码点的索引不同,也就是待解码点之前的已解码点的数量不同,确定待解码点的参考点查找范围的方式也不相同。
在一些实施例中,上述S702中确定待解码点的参考点查找范围的方式包括但不限于如下几种:
方式一,在待解码点的索引大于M时,将属性解码顺序下点云中位于待解码点之前的M个已解码点,确定为待解码点的参考点查找范围,其中M大于N。
需要说明的是,本申请实施例对上述N、M的具体取值不做限制,只有N、M均为正整数,且M大于N即可。
在一种示例中,上述M=2s,其中s为大于1的正整数,例如M为4、32、64、256等。
在一种示例中,上述M=128。也就是说,在待解码点的索引大于128时,说明待解码点之前已有至少128个已解码点,这样,为了降低索引数据量,则将属性解码顺序下点云中位于待解码点之前的M个已解码点,确定为待解码点的参考点查找范围。
例如,待解码点的索引为300,则确定待解码点的参考点查找范围为属性解码顺序下点云中索引为299至172的已解码点。
方式二,在待解码点的索引大于N且小于或等于M时,例如待解码点为点云中第4个点至第127个点中的任意一个未解码的点时,为了提高确定的参考点的准确性,则将属性解码顺序下点云中位于待解码点之前的所有已解码点,确定为待解码点的参考点查找范围。
例如,待解码点的索引为60,则确定待解码点的参考点查找范围为属性解码顺序下点云中索引为0至59的所有已解码点。
根据上述方式,从属性解码顺序下点云的已解码点中,确定出待解码点的参考点查找范围后,执行如下S703。
S703、在参考点查找范围内,查找距离待解码点最近的至少一个参考点。
在一些实施例中,参考点也称为预测参考点,或预测点等。
在一种可能的实现方式中,上述S703包括:在参考点查找范围内,查找距离待解码点最近的R个点作为待解码点的参考点。
具体是,针对参考点查找范围内每个候选点,根据每个候选点的几何信息和待解码点的几何信息,计算每个候选点与待解码点之间的距离,将距离最小的前R个候选点,确定为待解码点的参考点。
本实施例对上述R的具体取值不做限制,具体根据实际需要设定。
可选的,上述R=3。
在一些实施例中,本步骤在参考点查找范围内,查找距离待解码点最近的至少一个参考点时,根据属性解码顺序中与所述待解码点从近到远的顺序进行查找。例如,先计算属性解码顺序中位于待解码点前的第一个候选点与待解码点之间的距离,再计算代解码点前的第二个候选点与待解码点之间的距离,以此类推。
在一种实施例中,本申请实施例还对待解码点的至少一个参考点的数量进行了限定,例如,限定待解码点的至少一个残差点的数量大于或等于P,且小于或等于Q,其中P、Q均为正整数,且P大于Q。
本申请实施例对P、Q的具体取值不做限制。
在一种示例中,P=3。
在一种示例中,Q=6。
在该实施例中,在参考点查找范围内查找待解码点的参考点的数量,最少查找出P个参考点,例如3个参考点,最多查找出Q个参考点,例如6个参考点。
针对参考点查找范围内的每一个候选点,确定候选点是否为待解码点的参考点的具体过程相同,且整个过程为迭代过程。
在一种可能的实现方式中,S703中在参考点查找范围内,查找距离待解码点最近的至少一个参考点的方式包括如下步骤:
S703-A1,针对参考点查找范围内的每个候选点,首先,确定待解码点的已确定参考点的数量。在待解码点的已确定参考点的数量小于P时,执行如下S703-A2;在待解码点的已确定参考点的数量大于或等于P且小于Q,执行如下S703-A3;在待解码点的已确定参考点的数量等于Q,执行如下S703-A4。
S703-A2、在待解码点的已确定参考点的数量小于P时,将候选点确定为待解码点的一个参考点。
在该情况下,待解码点已确定参考点的数量小于待解码点的参考点数量的最小值,此时,直接将该候选点确定为待解码点的一个参考点,存储在待解码点的参考点缓存中。
S703-A3、在待解码点的已确定参考点的数量大于或等于P且小于Q,且候选点的第一权重大于已确定参考点的第一权重中的最小值时,将候选点确定为待解码点的一个参考点,其中目标点的第一权重是目标点与待解码点之间距离的倒数,目标点为候选点或已确定参考点。
在该情况下,待解码点已确定参考点的数量大于或等于待解码点的参考点数量的最小值,但没有达到最大值。此时,为了保证将距离待解码点较远的点确定为参考点,则需要对该候选点的第一权重与当前已确定参考点的第一权重进行比较,若该候选点的第一权重大于或等于已确定参考点的第一权重中的最小值,则说明该候选点距离待解码点较近,则将该候选点确定为待解码点的一个参考点,并存储在待解码点的参考点缓存中。
在一种示例中,若该候选点的第一权重小于已确定参考点的第一权重中的最小值,则说明该候选点距离待解码点较远,则跳过该候选点。
可选的,目标点的第一权重是目标点与待解码点之间距离的倒数,目标点可以为候选点或已确定参考点。也就是说,将候选点与待解码点之间的距离的倒数确定为候选点的第一权重,候选点的第一权重越大,表示候选点距离待解码点越近,候选点的第一权重越小,则表示候选点距离待解码越远。将已确定参考点与待解码点之间的距离的倒数确定为已确定参考点的第一权重,已确定参考点的第一权重越大,表示已确定参考点距离待解码点越近,已确定参考点的第一权重越小,则表示已确定参考点距离待解码越远。即本申请实施例通过第一权重来比较点云中两点之间的距离。
可选的,上述第一权重可以为欧式距离或曼哈顿距离的倒数。
S703-A4,在待解码点的已确定参考点的数量等于Q,且候选点的第一权重大于已确定参考点的第一权重中的最小值时,使用候选点替换最小第一权重值对应的已确定参考点。或者,在待解码点的已确定参考点的数量等于Q,且候选点的第一权重等于已确定参考点的第一权重中的最小值,且候选点的索引小于最小第一权重值对应的已确定参考点的索引时,使用候选点替换最小第一权重值对应的已确定参考点。
在该情况下,待解码点已确定参考点的数量已达到待解码点的参考点数量的最大值,此时对参考点缓存中已确定参考点进行替换。具体是,当该候选点的第一权重大于已确定参考点的第一权重中的最小值时,说明该候选点距离待解码点的距离小于最小第一权重对应的已确定参考点与待解码点的距离,因此,使用该候选点替换掉最小第一权重对应的已确定参考点。或者,当该候选点的第一权重等于已确定参考点的第一权重中的最小值,且候选点的索引小于最小第一权重值对应的已确定参考点的索引时,说明该候选点在属性解码顺序中距离待解码点近,该候选点与待解码点的属性信息更相关,因此,使用候选点替换最小第一权重值对应的已确定参考点。
在一种示例中,在该情况下,若该候选点的第一权重小于已确定参考点的第一权重中的最小值,或者,该候选点的第一权重等于已确定参考点的第一权重中的最小值,且候选点的索引大于最小第一权重值对应的已确定参考点的索引时,跳过该候选点。
针对参考点查找范围内的每个候选点执行上述步骤,直到参考点查找范围内的最后一个候选点判断结束为止,将最终得到的参考点确定为待解码点的至少一个参考点。
由上述步骤可知,在确定参考点时,是以参考点与待解码点之间的距离为考量,进而使得最后确定的至少一个参考点为距离待解码点最近的已解码点。由于点云中距离较近的各点的属性信息相关性强,这样基于距离待解码点最近的至少一个参考点的属性信息对待解码点的属性进行预测时,可以提高属性预测的准确性。
在一些实施例中,本申请实施例还包括:根据第一权重的大小,对待解码点的已确定参考点进行排序。即针对每一个候选点,在判断候选点是否为待解码点的参考点时,通常是将候选点的第一权重与已确定参考点的最小第一权重进行比较,基于此,为了便于差值最小第一权重对应的已确定参考点,根据第一权重的大小,对已确定参考点进行排序,例如按照第一权重大小从大到小或从小到大的顺序进行排序。这样在判断下一个候选点是否为参考点时,直接从排序后的已确定参考点的首位或末尾获取第一权重进行比较即可,以提高候选点的判断效率。
在一种可能的实现方式中,上述的S703包括S703-B1和S703-B2:
S703-B1、从参考点查找范围内,选取待编码点的至少一个初始参考点。
本申请实施例对从参考点查找范围内,选取待编码点的至少一个初始参考点的选取方式不做限制。
在一种示例中,从参考点查找范围内,选取属性解码顺序下距离待解码点最近的至少一个候选点作为待解码点的初始参考点。
在一种示例中,从参考点查找范围内,选取属性解码顺序下距离待解码点最远的至少一个候选点作为待解码点的初始参考点。
在一种示例中,从参考点查找范围内,选取属性解码顺序下任意位置处的至少一个候选点作为待解码点的初始参考点。
S703-B2、遍历参考点查找范围内除初始参考点之外的每个候选点,使用候选点对至少一个初始参考点进行补充和/或替换,得到距离待解码点最近的至少一个参考点。
可选的,在遍历参考点查找范围内除初始参考点之外的每个候选点时,可以根据属性解码顺序下与待解码点从近到远的顺序进行遍历。
在一种实施例中,S703-B2中使用候选点对至少一个初始参考点进行补充和/或替换,得到距离待解码点最近的至少一个参考点的实现方式包括但不限于如下几种:
方式一,在至少一个初始参考点的数量小于P时,将候选点补充至初始参考点中,得到新的至少一个初始参考点。
方式二,在至少一个初始参考点的数量大于等于P且小于Q时,若候选点与待解码点之间的第一距离小于或等于最大的第二距离,则将候选点补充至至少一个初始参考点中,得到新的至少一个初始参考点,第二距离为初始参考点与待解码点之间的空间距离。
方式三,在至少一个初始参考点的数量等于Q时,若第一距离小于最大的第二距离,则使用候选点替换最大的第二距离对应的初始参考点,或者,若第一距离等于最大的第二距离、且候选点的索引小于最大的第二距离对应的初始参考点的索引时,则使用候选点替换最大的第二距离对应的初始参考点,得到新的至少一个初始参考点。
举例说明,假设P=3,Q=6,首次从参考点查找范围内,选取属性解码属性下与待编码点相邻的前两个候选点作为待解码点初始参考点。接着,遍历参考点查找范围内除初始参考点之外的每个候选点,例如,遍历参考点查找范围内待解码点的第前3个候选点,此时,待解码点的初始参考点的数量小于3,则直接将待解码点的第前3个候选点补充至待解码点的初始参考点中,得到待解码点的新的初始参考点,其中新的初始参考点的数量为3。接着,遍历参考点查找范围内待解码点的第前4个候选点,计算该第前4个候选点与待解码点之间的第一距离,并在确定该第一距离小于或等于上次确定的3个初始参考点中的最大的第二距离时,则将该第前4个候选点补充至待解码点的初始参考点中,此时得到待解码点的4个初始参考点。若第前4个候选点的第一距离小于上次确定的3个初始参考点中的最大的第二距离时,则跳过该第前4个候选点。接着,遍历参考点查找范围内待解码点的第前5个候选点,依次类推。当确定的初始参考点的数量达到6个时,则执行上述方式三,即本次候选点的第一距离小于上次已确定的初始参考点中的最大的第二距离时,则使用本次候选点替换最大的第二距离对应的初始参考点,或者,若本次候选点的第一距离等于上次已确定的初始参考点中的最大的第二距离、且本次候选点的索引小于最大的第二距离对应的初始参考点的索引时,则使用本次候选点替换最大的第二距离对应的初始参考点,得到本次新的初始参考点。将参考点查找范围内最后一个被遍历的点时所确定的初始参考点,确定为待解码点的最终用于属性预测的参考点。
在该实施方式中,通过距离对预先选取的初始参考点进行补充或替换,保证最终获得的参考点为距离待解码点空间距离最近的点,这样基于距离待解码点最近的至少一个参考点的属性信息对待解码点的属性进行预测时,可以提高属性预测的准确性。
根据上述步骤从参考点查找范围内,查找距离待解码点最近的至少一个参考点后执行如下S704进行属性预测。
S704、根据至少一个参考点的属性信息的重建值,确定待解码点的属性信息的预测值。
在一种可能的实现方式中,将上述确定的至少一个参考点的属性信息的重建值的算数平均值,确定为待解码点的属性信息的预测值。
在一种可能实现方式中,将上述确定的至少一个参考点的属性信息的重建值的加权平均值,确定为待解码点的属性信息的预测值。
在该实现方式中,上述S704包括:S704-A1和S704-A2:
S704-A1、确定至少一个参考点中每个参考点的第二权重。
S704-A2、根据至少一个参考点中每个参考点的第二权重,将至少一个参考点的属性信息的重建值的加权平均值,确定为待编码点的属性信息的预测值。
在一些实施例中,S704-A1中确定至少一个参考点中每个参考点的第二权重的方式包括但不限于如下几种:
方式一,针对至少一个参考点中每个参考点,将参考点与待编码点的距离的倒数,确定为参考点的第二权重。
可选的,上述距离可以为欧式距离或曼哈顿距离,即将参考点与待编码点之间的欧式距离或曼哈顿距离的倒数,确定为参考点的第二权重。
举例说明,假设参考点的坐标为(x1,y1,z1),待解码点的坐标为(x0,y0,z0),根据如下公式(1),确定参考点与待编码点之间的欧式距离d1:
根据如下公式(2),确定参考点与待编码点之间的曼哈顿距离d2:
d2=∣x0-x1∣+∣y0-y1∣+∣z0-z1∣ (2)
其中,“∣.∣”表示绝对值运算。
方式二,上述各参考点的第二权重为预设权重值。在该方式中各参考点的第二权重可以相同,也可以不同。
根据上述方式确定至少一个参考点中每个参考点的第二权重后,根据至少一个参考点中每个参考点的第二权重,将至少一个参考点的属性信息的重建值的加权平均值,确定为待编码点的属性信息的预测值。
例如,根据如下公式(3),确定待编码点的属性信息的预测值:
其中,为上述至少一个参考点中第i个参考点的属性信息的重建值,wi为第i个参考点的二权重,/>中的P表示预测值,O表示待解码点,/>表示待编码点的属性信息的预测值。
在本申请实施例的一具体实施例中,本申请实施例的点云属性的预测方法包括如下步骤:
步骤1、解码点云码流,得到点云的已解码点。
步骤2,判断待解码点的索引是否大于2,若待解码点的索引大于2,则执行如下步骤3至5,若待解码点的索引小于或等于2,则执行如下步骤6。
步骤3,在待解码点的索引大于2时,从点云的已解码点中,确定待解码点的参考点查找范围。
步骤4,在待解码点的参考点查找范围内,查找距离该待解码点最近的至少一个参考点。
步骤5,根据查找到的至少一个参考点的属性信息的重建值,确定待解码点的属性信息的预测值。
步骤6,若待编码点为点云在属性解码顺序下的第一个点时,则确定待编码点的属性信息的预测值为预设值;或者,
若待编码点为点云在属性解码顺序下的第二个点时,则将点云在属性解码顺序下的第一个点的属性信息的重建值,确定为待编码点的属性信息的预测值;或者,
若待编码点为点云在属性解码顺序下的第三个点时,则根据点云在属性解码顺序下的第一个点的属性信息的重建值和第二个点的属性信息的重建值,确定待编码点的属性信息的预测值,例如,将第一个点的属性信息的重建值和第二个点的属性信息的重建值的加权平均值,确定为待编码点的属性信息的预测值。
下面通过实验对本申请实施例的技术效果进行说明:
将本申请实施例的点云属性的预测方法在AVS最新的点云压缩平台PCRM3.0上进行测试,其测试结果如表1.1至1.4所示:
表1.1
/>
其中,Cat1B和Cat3点云序列中的点包括颜色属性信息。BD-AttrRate是评价视频编码算法性能的主要参数之一,表示新算法(即本申请技术方案)编码的视频相对于原来的算法在码率和PSNR(Peak Signal to Noise Ratio,峰值信噪比)上的变化情况,即新算法与原有算法在相同信噪比情况下码率的变化情况。“-”表示性能提升,例如码率和PSNR性能提升。
表1.1是在几何有限有损,属性无损(limit-lossy geometry,lossy attributes)情况下,对Cat1B和Cat3点云序列使用本申请的技术方案进行预测时,产生的测试结果。如表1.1所示,对Cat1B点云序列,采用本申请的技术方案,其中亮度分量上性能提升了0.6%,色度分量Cb上性能提升了2.3%,色度分量Cr上性能提升了3.3%。对Cat3点云序列,采用本申请的技术方案,其性能稍有下降。
表1.2
表1.2是在几何无损,属性有损(lossless geometry,lossy attributes)情况下,对Cat1B和Cat3点云序列使用本申请的技术方案进行预测时,产生的测试结果。如表1.2所示,对Cat1B点云序列,采用本申请的技术方案,其亮度分量上性能提升了7.3%,色度分量Cb上性能提升了8%,色度分量Cr上性能提升了8.4%。对Cat3点云序列,采用本申请的技术方案,其亮度分量上性能提升了2.5%,色度分量Cb上性能提升了2.4%,色度分量Cr上性能提升了3.2%。
表1.3
表1.3是在几何无损,属性有限无损(lossless geometry,limit-lossyattributes)情况下,对Cat1B和Cat3点云序列使用本申请的技术方案进行预测时,产生的测试结果。如表1.3所示,对Cat1B点云序列,采用本申请的技术方案,其亮度分量上性能提升了6.6%,色度分量Cb上性能提升了6.6%,色度分量Cr上性能提升了6.6%。对Cat3点云序列,采用本申请的技术方案,其亮度分量上性能提升了4.1%,色度分量Cb上性能提升了4.1%,色度分量Cr上性能提升了4.1%。
表1.4
表1.4是在几何无损,属性无损(lossless geometry,lossless attributes)情况下,对Cat1B和Cat3点云序列使用本申请的技术方案进行预测时,产生的测试结果。如表1.4所示,对Cat1B点云序列,采用本申请的技术方案,其颜色性能提升了1.5%。对Cat3点云序列,采用本申请的技术方案,其颜色性能稍有下降。
由上述表1.1至表1.4所示,本申请实施例提供的点云属性的预测方法可以显著提升点云的解码性能。
本申请实施例的点云属性的预测方法,通过解码点云码流,得到点云的已解码点的属性信息的重建值;对于点云中的待解码点,在待解码点的索引大于N时,从属性解码顺序下点云的已解码点中,确定待解码点的参考点查找范围;在参考点查找范围内,查找距离待解码点最近的至少一个参考点;根据至少一个参考点的属性信息的重建值,确定待解码点的属性信息的预测值。即本申请在确定参考点时,通过全局搜索的方法,以参考点与待解码点之间的距离为考量,进而使得确定的至少一个参考点为距离待解码点空间距离最近的已解码点。由于点云中空间距离较近的各点的属性信息相关性强,这样基于空间距离待解码点最近的至少一个参考点的属性信息对待解码点的属性进行预测时,可以提高属性预测的准确性。
图8为本申请一实施例提供的点云解码方法的流程示意图,如图8所示,点云解码过程包括:
S801、解码点云的几何码流,得到点云的几何信息的重建值。
点云码流包括属性码流和几何码流,解码几何码流可以得到点云的几何信息,解码属性码流可以得到点云的属性信息。
S802、解码点云的属性码流,得到点云中待解码点的属性信息的残差值。
具体是,解码点云的属性码流,得到待解码点的反量化后的属性信息的残差值,对待解码点的量化后的属性残差值进行反量化,得到待解码点的属性信息的残差值。
S803、解码点云的属性码流,得到点云的已解码点的属性信息的重建值。
S804、在待解码点的索引大于N时,从点云的已解码点中,确定待解码点的参考点查找范围。其中,待解码点的索引为待解码点在属性解码顺序中的排序,N为正整数。
例如,在待解码点的索引大于M时,将属性解码顺序下点云中位于待解码点之前的N个已解码点,确定为待解码点的参考点查找范围,其中M大于N。
例如,在待解码点的索引大于N且小于或等于M时,将属性解码顺序下点云中位于待解码点之前的所有已解码点,确定为待解码点的参考点查找范围。
上述S804的具体实现方式与上述S702的实现过程一致,参照上述上述S702的描述,在此不再赘述。
S805、在参考点查找范围内,查找距离待解码点最近的至少一个参考点。
在一些实施例中,在参考点查找范围内,查找距离待解码点最近的R个点作为待解码点的参考点,其中R为预设值。
在一种实施例中,针对参考点查找范围内的每个候选点,在待解码点的已确定参考点的数量小于P时,将候选点确定为待解码点的一个参考点。或者,在待解码点的已确定参考点的数量大于或等于P且小于Q,且候选点的第一权重大于已确定参考点的第一权重中的最小值时,将候选点确定为待解码点的一个参考点,其中目标点的第一权重是目标点与待解码点之间距离的倒数,目标点为候选点或已确定参考点。或者,在待解码点的已确定参考点的数量等于Q,且候选点的第一权重大于已确定参考点的第一权重中的最小值时,或者,在待解码点的已确定参考点的数量等于Q,且候选点的第一权重等于已确定参考点的第一权重中的最小值,且候选点的索引小于最小第一权重值对应的已确定参考点的索引时,使用候选点替换最小第一权重值对应的已确定参考点。
上述S805的具体实现方式与上述S703的实现过程一致,参照上述上述S703的描述,在此不再赘述。
S806、根据至少一个参考点的属性信息的重建值,确定待解码点的属性信息的预测值。
例如,确定至少一个参考点中每个参考点的第二权重;根据至少一个参考点中每个参考点的第二权重,将至少一个参考点的属性信息的重建值的加权平均值,确定为待编码点的属性信息的预测值。
其中,确定至少一个参考点中每个参考点的第二权重的方式包括但不限于如下几种:
方式一,针对至少一个参考点中每个参考点,将参考点与待编码点的距离的倒数,确定为参考点的第二权重。例如,将参考点与待编码点之间的欧式距离或曼哈顿距离的倒数,确定为参考点的第二权重。
方式二,将预设权重值确定为参考点的第二权重。
上述S806的具体实现方式与上述S704的实现过程一致,参照上述上述S704的描述,在此不再赘述。
在一些实施例中,本申请还包括:
若待编码点为点云在属性解码顺序下的第一个点时,则确定待编码点的属性信息的预测值为预设值;或者,
若待编码点为点云在属性解码顺序下的第二个点时,则将点云在属性解码顺序下的第一个点的属性信息的重建值,确定为待编码点的属性信息的预测值;或者,
若待编码点为点云在属性解码顺序下的第三个点时,则根据点云在属性解码顺序下的第一个点的属性信息的重建值和第二个点的属性信息的重建值,确定待编码点的属性信息的预测值。
S807、根据待解码点的属性信息的预测值和残差值,得到待解码点的属性信息的重建值。例如,将待解码点的属性信息的预测值和残差值的和,作为待解码点的属性信息的重建值。
本申请实施例,在确定参考点时,通过全局搜索的方法,以参考点与待解码点之间的距离为考量,进而使得确定的至少一个参考点为距离待解码点空间距离最近的已解码点。这样基于空间距离待解码点最近的至少一个参考点的属性信息对待解码点的属性进行预测时,可以提高属性预测的准确性,进而提高了点云的属性解码效率。
上文结合图7和图8对解码端的点云属性预测过程进行介绍,下面结合图9和图10对编码端的点云属性预测过程进行介绍。
图9为本申请一实施例提供的点云属性的预测方法的流程示意图,本申请实施例的执行主体可以为上述图3所示的编码器,也可以是编码器中的部分元件。如图9所示,点云属性的预测方法包括:
S901、获取点云的已编码点的属性信息的重建值。
具体是,对点云的原始几何信息进行预处理,通过坐标平移将几何原点归一化到点云空间中的最小值位置,通过坐标量化将几何信息从浮点数转化为整形,便于后续的规则化处理。然后对规则化的几何信息进行几何编码,采用八叉树结构对点云空间进行递归划分,每次将当前节点划分成八个相同大小的子块,并判断每个子块的占***字情况,当子块内不包含点时记为空,否则记为非空,在递归划分的最后一层记录所有块的占***字信息,并进行编码。通过八叉树结构表达的几何信息一方面输入到几何熵编码器中形成几何码流,一方面在编码器内进行几何重建处理,参与点云的属性编码,得到点云中已解码点的属性信息的重建值。
S902、对于点云中的待编码点,在待编码点的索引大于N时,从点云的已编码点中,确定待编码点的参考点查找范围。
其中,待编码点的索引为待编码点在属性编码顺序中的排序,N为正整数。
本申请实施例对点云的属性编码顺序的具体排序方式不做限制,可以根据实际需要进行确定。
在一种示例中,上述点云的属性编码顺序可以为莫顿顺序。
在一种示例中,上述点云的属性编码顺序可以为希尔伯特(Hilbert)顺序。
在一种示例中,点云的属性编码顺序还可以是先沿着y方向编码,再沿着x方向编码,最后沿着z方向编码;也可以是先沿着y方向编码,再沿着z方向编码,最后沿着x方向编码;也可以是先沿着x方向编码,再沿着z方向编码,最后沿着y方向编码;也可以是先沿着z方向编码,再沿着x方向编码,最后沿着y方向编码;也可以是先沿着z方向编码,再沿着y方向编码,最后沿着x方向编码。
需要说明的是,上述只是本申请实施例涉及的两种属性编码顺序的具体示例,本申请实施例的属性编码顺序包括但不限于如上两种。
可选的,上述N大于或等于2。
需要说明的是,上述待编码点也可以称为当前点,或者当前待编码点,或当前待处理点等。
本申请实施例中,根据待编码点的索引不同,也就是待编码点之前的已编码点的数量不同,确定待编码点的参考点查找范围的方式也不相同。
在一些实施例中,上述S902中确定待编码点的参考点查找范围的方式包括但不限于如下几种:
方式一,在待编码点的索引大于M时,将属性编码顺序下点云中位于待编码点之前的M个已编码点,确定为待编码点的参考点查找范围,其中M大于N。
需要说明的是,本申请实施例对上述N、M的具体取值不做限制,只有N、M均为正整数,且M大于N即可。
在一种示例中,上述M=2s,其中s为大于1的正整数,例如M为4、32、64、256等。
可选的,M=128。
方式二,在待编码点的索引大于N且小于或等于M时,为了提高确定的参考点的准确性,则将属性编码顺序下点云中位于待编码点之前的所有已编码点,确定为待编码点的参考点查找范围。
根据上述方式,从属性编码顺序下点云的已编码点中,确定出待编码点的参考点查找范围后,执行如下S903。
S903、在参考点查找范围内,查找距离待编码点最近的至少一个参考点。
在一种可能的实现方式中,上述S903包括:在参考点查找范围内,查找距离待编码点最近的R个点作为待编码点的参考点。
在一些实施例中,本步骤在参考点查找范围内,查找距离待编码点最近的至少一个参考点时,根据属性编码顺序中与所述待编码点从近到远的顺序进行查找。例如,先计算属性编码顺序中位于待编码点前的第一个候选点与待编码点之间的距离,再计算代编码点前的第二个候选点与待编码点之间的距离,以此类推。
在一种实施例中,本申请实施例还对待编码点的至少一个参考点的数量进行了限定,例如,限定待编码点的至少一个残差点的数量大于或等于P,且小于或等于Q,其中P、Q均为正整数,且P大于Q。
本申请实施例对P、Q的具体取值不做限制。
在一种示例中,P=3。
在一种示例中,Q=6。
在该实施例中,在参考点查找范围内查找待编码点的参考点的数量,最少查找出P个参考点,例如3个参考点,最多查找出Q个参考点,例如6个参考点。
针对参考点查找范围内的每一个候选点,确定候选点是否为待编码点的参考点的具体过程相同,且整个过程为迭代过程。
在一种可能的实现方式中,S903中在参考点查找范围内,查找距离待编码点最近的至少一个参考点的方式包括如下步骤:
S903-A1,针对参考点查找范围内的每个候选点,首先,确定待编码点的已确定参考点的数量。在待编码点的已确定参考点的数量小于P时,执行如下S903-A2;在待编码点的已确定参考点的数量大于或等于P且小于Q,执行如下S903-A3;在待编码点的已确定参考点的数量等于Q,执行如下S903-A4。
S903-A2、在待编码点的已确定参考点的数量小于P时,将候选点确定为待编码点的一个参考点。
在该情况下,待编码点已确定参考点的数量小于待编码点的参考点数量的最小值,此时,直接将该候选点确定为待编码点的一个参考点,存储在待编码点的参考点缓存中。
S903-A3、在待编码点的已确定参考点的数量大于或等于P且小于Q,且候选点的第一权重大于已确定参考点的第一权重中的最小值时,将候选点确定为待编码点的一个参考点,其中目标点的第一权重是目标点与待编码点之间距离的倒数,目标点为候选点或已确定参考点。
在该情况下,待编码点已确定参考点的数量大于或等于待编码点的参考点数量的最小值,但没有达到最大值。此时,为了保证将距离待编码点较远的点确定为参考点,则需要对该候选点的第一权重与当前已确定参考点的第一权重进行比较,若该候选点的第一权重大于或等于已确定参考点的第一权重中的最小值,则说明该候选点距离待编码点较近,则将该候选点确定为待编码点的一个参考点,并存储在待编码点的参考点缓存中。
在一种示例中,若该候选点的第一权重小于已确定参考点的第一权重中的最小值,则说明该候选点距离待编码点较远,则跳过该候选点。
可选的,目标点的第一权重是目标点与待编码点之间距离的倒数,目标点可以为候选点或已确定参考点。也就是说,将候选点与待编码点之间的距离的倒数确定为候选点的第一权重,候选点的第一权重越大,表示候选点距离待编码点越近,候选点的第一权重越小,则表示候选点距离待编码越远。将已确定参考点与待编码点之间的距离的倒数确定为已确定参考点的第一权重,已确定参考点的第一权重越大,表示已确定参考点距离待编码点越近,已确定参考点的第一权重越小,则表示已确定参考点距离待编码越远。即本申请实施例通过第一权重来比较点云中两点之间的距离。
可选的,上述第一权重可以为欧式距离或曼哈顿距离的倒数。
S903-A4,在待编码点的已确定参考点的数量等于Q,且候选点的第一权重大于已确定参考点的第一权重中的最小值时,使用候选点替换最小第一权重值对应的已确定参考点。或者,在待编码点的已确定参考点的数量等于Q,且候选点的第一权重等于已确定参考点的第一权重中的最小值,且候选点的索引小于最小第一权重值对应的已确定参考点的索引时,使用候选点替换最小第一权重值对应的已确定参考点。
在一种示例中,在该情况下,若该候选点的第一权重小于已确定参考点的第一权重中的最小值,或者,该候选点的第一权重等于已确定参考点的第一权重中的最小值,且候选点的索引大于最小第一权重值对应的已确定参考点的索引时,跳过该候选点。
针对参考点查找范围内的每个候选点执行上述步骤,直到参考点查找范围内的最后一个候选点判断结束为止,将最终得到的参考点确定为待编码点的至少一个参考点。
由上述步骤可知,在确定参考点时,是以参考点与待编码点之间的距离为考量,进而使得最后确定的至少一个参考点为距离待编码点最近的已编码点。由于点云中距离较近的各点的属性信息相关性强,这样基于距离待编码点最近的至少一个参考点的属性信息对待编码点的属性进行预测时,可以提高属性预测的准确性。
在一些实施例中,本申请实施例还包括:根据第一权重的大小,对待编码点的已确定参考点进行排序。即针对每一个候选点,在判断候选点是否为待编码点的参考点时,通常是将候选点的第一权重与已确定参考点的最小第一权重进行比较,基于此,为了便于差值最小第一权重对应的已确定参考点,根据第一权重的大小,对已确定参考点进行排序,例如按照第一权重大小从大到小或从小到大的顺序进行排序。这样在判断下一个候选点是否为参考点时,直接从排序后的已确定参考点的首位或末尾获取第一权重进行比较即可,以提高候选点的判断效率。
在一种可能的实现方式中,上述的S903包括S903-B1和S903-B2:
S903-B1、从参考点查找范围内,选取待编码点的至少一个初始参考点。
本申请实施例对从参考点查找范围内,选取待编码点的至少一个初始参考点的选取方式不做限制。
在一种示例中,从参考点查找范围内,选取属性编码顺序下距离待编码点最近的至少一个候选点作为待编码点的初始参考点。
在一种示例中,从参考点查找范围内,选取属性编码顺序下距离待编码点最远的至少一个候选点作为待编码点的初始参考点。
在一种示例中,从参考点查找范围内,选取属性编码顺序下任意位置处的至少一个候选点作为待编码点的初始参考点。
S903-B2、遍历参考点查找范围内除初始参考点之外的每个候选点,使用候选点对至少一个初始参考点进行补充和/或替换,得到距离待编码点最近的至少一个参考点。
在一种实施例中,S903-B2中使用候选点对至少一个初始参考点进行补充和/或替换,得到距离待编码点最近的至少一个参考点的实现方式包括但不限于如下几种:
方式一,在至少一个初始参考点的数量小于P时,将候选点补充至初始参考点中,得到新的至少一个初始参考点。
方式二,在至少一个初始参考点的数量大于等于P且小于Q时,若候选点与待编码点之间的第一距离小于或等于最大的第二距离,则将候选点补充至至少一个初始参考点中,得到新的至少一个初始参考点,第二距离为初始参考点与待编码点之间的空间距离。
方式三,在至少一个初始参考点的数量等于Q时,若第一距离小于最大的第二距离,则使用候选点替换最大的第二距离对应的初始参考点,或者,若第一距离等于最大的第二距离、且候选点的索引小于最大的第二距离对应的初始参考点的索引时,则使用候选点替换最大的第二距离对应的初始参考点,得到新的至少一个初始参考点。
在该实施方式中,通过距离对预先选取的初始参考点进行补充或替换,保证最终获得的参考点为距离待编码点空间距离最近的点,这样基于距离待编码点最近的至少一个参考点的属性信息对待编码点的属性进行预测时,可以提高属性预测的准确性。
根据上述步骤从参考点查找范围内,查找距离待编码点最近的至少一个参考点后执行如下S904进行属性预测。
S904、根据至少一个参考点的属性信息的重建值,确定待编码点的属性信息的预测值。
在一种可能的实现方式中,将上述确定的至少一个参考点的属性信息的重建值的算数平均值,确定为待编码点的属性信息的预测值。
在一种可能实现方式中,将上述确定的至少一个参考点的属性信息的重建值的加权平均值,确定为待编码点的属性信息的预测值。
在该实现方式中,上述S904包括:S904-A1和S904-A2:
S904-A1、确定至少一个参考点中每个参考点的第二权重。
S904-A2、根据至少一个参考点中每个参考点的第二权重,将至少一个参考点的属性信息的重建值的加权平均值,确定为待编码点的属性信息的预测值。
在一些实施例中,S904-A1中确定至少一个参考点中每个参考点的第二权重的方式包括但不限于如下几种:
方式一,针对至少一个参考点中每个参考点,将参考点与待编码点的距离的倒数,确定为参考点的第二权重。
可选的,上述距离可以为欧式距离或曼哈顿距离,即将参考点与待编码点之间的欧式距离或曼哈顿距离的倒数,确定为参考点的第二权重。
方式二,上述各参考点的第二权重为预设权重值。在该方式中各参考点的第二权重可以相同,也可以不同。
根据上述方式确定至少一个参考点中每个参考点的第二权重后,根据至少一个参考点中每个参考点的第二权重,将至少一个参考点的属性信息的重建值的加权平均值,确定为待编码点的属性信息的预测值。
例如,根据如下公式(4),确定待编码点的属性信息的预测值:
其中,为上述至少一个参考点中第i个参考点的属性信息的重建值,w1i为第i个参考点的二权重,/>中的P表示预测值,O表示当前的待编码点,/>为待编码点的属性信息的预测值。
上述实施例对待编码点的索引大于N(例如2)时,从待编码点的参考点查找范围,查找距离所述待编码点最近的至少一个参考点,并根据查找到的至少一个参考点的属性信息的重建值,确定待编码点的属性信息的预测值的过程进行了介绍。
在一些实施例中,本申请还包括:
若待编码点为点云在属性编码顺序下的第一个点时,则确定待编码点的属性信息的预测值为预设值;或者,
若待编码点为点云在属性编码顺序下的第二个点时,则将点云在属性编码顺序下的第一个点的属性信息的重建值,确定为待编码点的属性信息的预测值;或者,
若待编码点为点云在属性编码顺序下的第三个点时,则根据点云在属性编码顺序下的第一个点的属性信息的重建值和第二个点的属性信息的重建值,确定待编码点的属性信息的预测值,例如,将第一个点的属性信息的重建值和第二个点的属性信息的重建值的加权平均值,确定为待编码点的属性信息的预测值。
本申请实施例的点云属性的预测方法,通过获取点云的已编码点的属性信息的重建值;对于点云中的待编码点,在待编码点的索引大于N时,从点云的已编码点中,确定待编码点的参考点查找范围;在参考点查找范围内,查找距离待编码点最近的至少一个参考点;根据至少一个参考点的属性信息的重建值,确定待编码点的属性信息的预测值。即本申请在确定参考点时,通过全局搜索的方法,以参考点与待编码点之间的距离为考量,进而使得确定的至少一个参考点为距离待编码点空间距离最近的已编码点。由于点云中空间距离较近的各点的属性信息相关性强,这样基于空间距离待编码点最近的至少一个参考点的属性信息对待编码点的属性进行预测时,可以提高属性预测的准确性。
图10为本申请一实施例提供的点云编码方法的流程示意图,如图10所示,本申请实施例的点云编码方法包括:
S101、获取点云的几何信息,对点云的几何信息进行编码,得到点云的几何码流。
例如,对点云的原始几何信息进行预处理,通过坐标平移将几何原点归一化到点云空间中的最小值位置,通过坐标量化将几何信息从浮点数转化为整形,便于后续的规则化处理。然后对规则化的几何信息进行几何编码,采用八叉树结构对点云空间进行递归划分,每次将当前节点划分成八个相同大小的子块,并判断每个子块的占***字情况,当子块内不包含点时记为空,否则记为非空,在递归划分的最后一层记录所有块的占***字信息,并进行编码,得到点云的几何码流。
S102、获取点云的已编码点的属性信息的重建值。
S103、对于点云中的待编码点,在待编码点的索引大于N时,从属性编码顺序下点云的已编码点中,确定待编码点的参考点查找范围。
例如,在待编码点的索引大于M时,将属性编码顺序下点云中位于待编码点之前的M个已编码点,确定为待编码点的参考点查找范围,其中M大于N。
例如,在待编码点的索引大于N且小于或等于M时,为了提高确定的参考点的准确性,则将属性编码顺序下点云中位于待编码点之前的所有已编码点,确定为待编码点的参考点查找范围。
S104、在参考点查找范围内,查找距离待编码点最近的至少一个参考点。
例如,在参考点查找范围内,查找距离待编码点最近的R个点作为待编码点的参考点。
例如,针对参考点查找范围内的每个候选点,首先,确定待编码点的已确定参考点的数量。在待编码点的已确定参考点的数量小于P时,将候选点确定为待编码点的一个参考点。在待编码点的已确定参考点的数量大于或等于P且小于Q,且候选点的第一权重大于已确定参考点的第一权重中的最小值时,将候选点确定为待编码点的一个参考点,其中目标点的第一权重是目标点与待编码点之间距离的倒数,目标点为候选点或已确定参考点。在待编码点的已确定参考点的数量等于Q,且候选点的第一权重大于已确定参考点的第一权重中的最小值时,使用候选点替换最小第一权重值对应的已确定参考点。或者,在待编码点的已确定参考点的数量等于Q,且候选点的第一权重等于已确定参考点的第一权重中的最小值,且候选点的索引小于最小第一权重值对应的已确定参考点的索引时,使用候选点替换最小第一权重值对应的已确定参考点。
S105、根据至少一个参考点的属性信息的重建值,确定待编码点的属性信息的预测值。
例如,将上述确定的至少一个参考点的属性信息的重建值的加权平均值,确定为待编码点的属性信息的预测值。
在一些实施例中,本申请还包括:
若待编码点为点云在属性编码顺序下的第一个点时,则确定待编码点的属性信息的预测值为预设值;或者,
若待编码点为点云在属性编码顺序下的第二个点时,则将点云在属性编码顺序下的第一个点的属性信息的重建值,确定为待编码点的属性信息的预测值;或者,
若待编码点为点云在属性编码顺序下的第三个点时,则根据点云在属性编码顺序下的第一个点的属性信息的重建值和第二个点的属性信息的重建值,确定待编码点的属性信息的预测值,例如,将第一个点的属性信息的重建值和第二个点的属性信息的重建值的加权平均值,确定为待编码点的属性信息的预测值。
上述S102至S105的具体实现过程参照上述S901至S904的描述,在此不再赘述。
S106、根据待编码点的属性信息和待编码点的属性信息的预测值,得到待编码点的属性信息的残差值,例如,将待编码点的属性信息和待编码点的属性信息的预测值的差值,确定为待编码点的属性信息的残差值。
S106、对待编码点的属性信息的残差值进行量化以及编码,得到点云的属性码流。
本申请实施例,在确定参考点时,通过全局搜索的方法,以参考点与待编码点之间的距离为考量,进而使得确定的至少一个参考点为距离待编码点空间距离最近的已编码点。这样基于空间距离待编码点最近的至少一个参考点的属性信息对待编码点的属性进行预测时,可以提高属性预测的准确性,进而提高了点云的属性编码效率。
应理解,图7至图10仅为本申请的示例,不应理解为对本申请的限制。
以上结合附图详细描述了本申请的优选实施方式,但是,本申请并不限于上述实施方式中的具体细节,在本申请的技术构思范围内,可以对本申请的技术方案进行多种简单变型,这些简单变型均属于本申请的保护范围。例如,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合,为了避免不必要的重复,本申请对各种可能的组合方式不再另行说明。又例如,本申请的各种不同的实施方式之间也可以进行任意组合,只要其不违背本申请的思想,其同样应当视为本申请所公开的内容。
还应理解,在本申请的各种方法实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。另外,本申请实施例中,术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系。具体地,A和/或B可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
上文结合图7至图10,详细描述了本申请的方法实施例,下文结合图11至图13,详细描述本申请的装置实施例。
图11是本申请一实施例提供的点云属性的预测装置的示意性框图。
如图11所示,该点云属性的预测装置20可包括:
解码单元21,用于解码点云码流,得到点云的已解码点的属性信息的重建值;
范围确定单元22,用于对于所述点云中的待解码点,在所述待解码点的索引大于N时,从点云的已解码点中,确定所述待解码点的参考点查找范围,其中,所述待解码点的索引为所述待解码点在所述属性解码顺序中的排序,N为正整数;
查找单元23,用于在所述参考点查找范围内,查找距离所述待解码点最近的至少一个参考点;
预测单元24,用于根据所述至少一个参考点的属性信息的重建值,确定所述待解码点的属性信息的预测值。
在一些实施例中,上述范围确定单元22,具体用于在所述待解码点的索引大于M时,将所述属性解码顺序下点云中位于所述待解码点之前的M个已解码点,确定为所述待解码点的参考点查找范围,其中M大于N;或者,
在所述待解码点的索引大于N且小于或等于M时,将所述属性解码顺序下点云中位于所述待解码点之前的所有已解码点,确定为所述待解码点的参考点查找范围。
在一些实施例中,上述查找单元23,具体用于根据所述属性解码顺序中与所述待解码点从近到远的顺序,在所述参考点查找范围内,查找距离所述待解码点最近的至少一个参考点。
在一些实施例中,所述至少一个参考点的数量大于或等于P,且小于或等于Q,其中P、Q均为正整数,且P大于Q。
在一些实施例中,上述查找单元23,具体用于针对所述参考点查找范围内的每个候选点,在所述待解码点的已确定参考点的数量小于所述P时,将所述候选点确定为所述待解码点的一个参考点;或者,
在所述待解码点的已确定参考点的数量大于或等于所述P且小于所述Q,且所述候选点的第一权重大于或等于所述已确定参考点的第一权重中的最小值时,将所述候选点确定为所述待解码点的一个参考点,其中目标点的第一权重是所述目标点与所述待解码点之间距离的倒数,所述目标点为所述候选点或所述已确定参考点;或者,
在所述待解码点的已确定参考点的数量等于所述Q,且所述候选点的第一权重大于所述已确定参考点的第一权重中的最小值时,或者,在所述待解码点的已确定参考点的数量等于所述Q,且所述候选点的第一权重等于所述已确定参考点的第一权重中的最小值,且所述候选点的索引小于最小第一权重值对应的已确定参考点的索引时,使用所述候选点替换所述最小第一权重值对应的已确定参考点。
在一些实施例中,上述查找单元23,还用于根据第一权重的大小,对所述待解码点的已确定参考点进行排序。
可选的,所述目标点的第一权重为所述目标点与所述待解码点之间的欧式距离或曼哈顿距离的倒数。
在一些实施例中,上述预测单元24,还用于若所述待解码点为所述点云在属性解码顺序下的第一个点时,则确定所述待解码点的属性信息的预测值为预设值;或者,
若所述待解码点为所述点云在属性解码顺序下的第二个点时,则将所述点云在属性解码顺序下的第一个点的属性信息的重建值,确定为所述待解码点的属性信息的预测值;或者,
若所述待解码点为所述点云在属性解码顺序下的第三个点时,则根据所述点云在属性解码顺序下的第一个点的属性信息的重建值和第二个点的属性信息的重建值,确定所述待解码点的属性信息的预测值。
在一些实施例中,预测单元24,具体用于确定所述至少一个参考点中每个参考点的第二权重;根据所述至少一个参考点中每个参考点的第二权重,将所述至少一个参考点的属性信息的重建值的加权平均值,确定为所述待解码点的属性信息的预测值。
在一些实施例中,预测单元24,具体用于针对所述至少一个参考点中每个参考点,将所述参考点与所述待解码点的距离的倒数,确定为所述参考点的第二权重;或者,确定所述参考点的第二权重为预设权重值。
在一些实施例中,预测单元24,具体用于将所述参考点与所述待解码点之间的欧式距离或曼哈顿距离的倒数,确定为所述参考点的第二权重。
可选的,所述点云的属性解码顺序包括莫顿顺序和希尔伯特顺序中的任意一种。
可选的,所述N为大于或等于2的正整数。
可选的,所述M为128。
可选的,所述P为3。
可选的,所述Q为6。
应理解,装置实施例与方法实施例可以相互对应,类似的描述可以参照方法实施例。为避免重复,此处不再赘述。具体地,图11所示的装置20可以对应于执行本申请实施例的点云解码方法中的相应主体,并且装置20中的各个单元的前述和其它操作和/或功能分别为了实现点云解码方法中的相应流程,为了简洁,在此不再赘述。
图12是本申请一实施例提供的点云属性的预测装置的示意性框图。
如图12所示,该点云属性的预测装置10可包括:
获取单元11,用于获取点云的已编码点的属性信息的重建值;
范围确定单元13,用于对于所述点云中的待编码点,在所述待编码点的索引大于N时,从所述点云的已编码点中,确定所述待编码点的参考点查找范围,其中,所述待编码点的索引为所述待编码点在所述属性编码顺序中的排序,N为正整数;
查找单元14,用于在所述参考点查找范围内,查找距离所述待编码点最近的至少一个参考点;
预测单元15,用于根据所述至少一个参考点的属性信息的重建值,确定所述待编码点的属性信息的预测值。
在一些实施例中,范围确定单元13,具体用于在所述待编码点的索引大于M时,将所述属性编码顺序下点云中位于所述待编码点之前的M个已编码点,确定为所述待编码点的参考点查找范围,其中M大于N;或者,
在所述待编码点的索引大于N且小于或等于M时,将所述属性编码顺序下点云中位于所述待编码点之前的所有已编码点,确定为所述待编码点的参考点查找范围。
在一些实施例中,查找单元14,具体用于根据所述属性编码顺序中与所述待编码点从近到远的顺序,在所述参考点查找范围内,查找距离所述待编码点最近的至少一个参考点。
在一些实施例中,所述至少一个参考点的数量大于或等于P,且小于或等于Q,其中P、Q均为正整数,且P大于Q。
在一些实施例中,查找单元14,具体用于针对所述参考点查找范围内的每个候选点,在所述待编码点的已确定参考点的数量小于所述P时,将所述候选点确定为所述待编码点的一个参考点;或者,
在所述待编码点的已确定参考点的数量大于或等于所述P且小于所述Q,且所述候选点的第一权重大于或等于所述已确定参考点的第一权重中的最小值时,将所述候选点确定为所述待编码点的一个参考点,其中目标点的第一权重是所述目标点与所述待编码点之间距离的倒数,所述目标点为所述候选点或所述已确定参考点;
在所述待编码点的已确定参考点的数量等于所述Q,且所述候选点的第一权重大于所述已确定参考点的第一权重中的最小值时,或者,在所述待编码点的已确定参考点的数量等于所述Q,且所述候选点的第一权重等于所述已确定参考点的第一权重中的最小值,且所述候选点的索引小于最小第一权重值对应的已确定参考点的索引时,使用所述候选点替换所述最小第一权重值对应的已确定参考点。
在一些实施例中,查找单元14,还用于根据第一权重的大小,对所述待编码点的已确定参考点进行排序。
可选的,所述目标点的第一权重为所述目标点与所述待编码点之间的欧式距离或曼哈顿距离的倒数。
在一些实施例中,预测单元15,还用于若所述待编码点为所述点云在属性编码顺序下的第一个点时,则确定所述待编码点的属性信息的预测值为预设值;或者,
若所述待编码点为所述点云在属性编码顺序下的第二个点时,则将所述点云在属性编码顺序下的第一个点的属性信息的重建值,确定为所述待编码点的属性信息的预测值;或者,
若所述待编码点为所述点云在属性编码顺序下的第三个点时,则根据所述点云在属性编码顺序下的第一个点的属性信息的重建值和第二个点的属性信息的重建值,确定所述待编码点的属性信息的预测值。
在一些实施例中,预测单元15,具体用于确定所述至少一个参考点中每个参考点的第二权重;根据所述至少一个参考点中每个参考点的第二权重,将所述至少一个参考点的属性信息的重建值的加权平均值,确定为所述待编码点的属性信息的预测值。
在一些实施例中,预测单元15,具体用于针对所述至少一个参考点中每个参考点,将所述参考点与所述待编码点的距离的倒数,确定为所述参考点的第二权重;或者,确定所述参考点的第二权重为预设权重值。
在一些实施例中,预测单元15,具体用于将所述参考点与所述待编码点之间的欧式距离或曼哈顿距离的倒数,确定为所述参考点的第二权重。
可选的,所述点云的属性编码顺序包括莫顿顺序和希尔伯特顺序中的任意一种。
可选的,所述N为大于或等于2的正整数。
可选的,所述M为128。
可选的,所述P为3。
可选的,所述Q为6。
应理解,装置实施例与方法实施例可以相互对应,类似的描述可以参照方法实施例。为避免重复,此处不再赘述。具体地,图12所示的装置10可以对应于执行本申请实施例的点云编码方法中的相应主体,并且装置10中的各个单元的前述和其它操作和/或功能分别为了实现点云编码方法中的相应流程,为了简洁,在此不再赘述。
上文中结合附图从功能单元的角度描述了本申请实施例的装置和***。应理解,该功能单元可以通过硬件形式实现,也可以通过软件形式的指令实现,还可以通过硬件和软件单元组合实现。具体地,本申请实施例中的方法实施例的各步骤可以通过处理器中的硬件的集成逻辑电路和/或软件形式的指令完成,结合本申请实施例公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件单元组合执行完成。可选地,软件单元可以位于随机存储器,闪存、只读存储器、可编程只读存储器、电可擦写可编程存储器、寄存器等本领域的成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法实施例中的步骤。
图13是本申请实施例提供的电子设备的示意性框图。
如图13所示,该电子设备30可以为本申请实施例所述点云解码器,或者点云编码器,该电子设备30可包括:
存储器31和处理器32,该存储器31用于存储计算机程序34,并将该程序代码34传输给该处理器32。换言之,该处理器32可以从存储器31中调用并运行计算机程序34,以实现本申请实施例中的方法。
例如,该处理器32可用于根据该计算机程序34中的指令执行上述方法200中的步骤。
在本申请的一些实施例中,该处理器32可以包括但不限于:
通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(FieldProgrammable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等等。
在本申请的一些实施例中,该存储器31包括但不限于:
易失性存储器和/或非易失性存储器。其中,非易失性存储器可以是只读存储器(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 DataRate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synch link DRAM,SLDRAM)和直接内存总线随机存取存储器(Direct Rambus RAM,DR RAM)。
在本申请的一些实施例中,该计算机程序34可以被分割成一个或多个单元,该一个或者多个单元被存储在该存储器31中,并由该处理器32执行,以完成本申请提供的方法。该一个或多个单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述该计算机程序34在该电子设备30中的执行过程。
如图13所示,该电子设备30还可包括:
收发器33,该收发器33可连接至该处理器32或存储器31。
其中,处理器32可以控制该收发器33与其他设备进行通信,具体地,可以向其他设备发送信息或数据,或接收其他设备发送的信息或数据。收发器33可以包括发射机和接收机。收发器33还可以进一步包括天线,天线的数量可以为一个或多个。
应当理解,该电子设备30中的各个组件通过总线***相连,其中,总线***除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。
本申请还提供了一种计算机存储介质,其上存储有计算机程序,该计算机程序被计算机执行时使得该计算机能够执行上述方法实施例的方法。或者说,本申请实施例还提供一种包含指令的计算机程序产品,该指令被计算机执行时使得计算机执行上述方法实施例的方法。
当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行该计算机程序指令时,全部或部分地产生按照本申请实施例该的流程或功能。该计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。该计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,该计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。该计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。该可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如数字点云光盘(digital video disc,DVD))、或者半导体介质(例如固态硬盘(solid state disk,SSD))等。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的几个实施例中,应该理解到,所揭露的***、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,该单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。例如,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
以上内容,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以该权利要求的保护范围为准。
Claims (37)
1.一种点云属性的预测方法,其特征在于,包括:
解码点云码流,得到点云的已解码点的属性信息的重建值;
对于所述点云中的待解码点,在所述待解码点的索引大于N时,从所述点云的已解码点中,确定所述待解码点的参考点查找范围,其中,所述待解码点的索引为所述待解码点在属性解码顺序中的排序,N为正整数;
在所述参考点查找范围内,查找距离所述待解码点最近的至少一个参考点;
根据所述至少一个参考点的属性信息的重建值,确定所述待解码点的属性信息的预测值。
2.根据权利要求1所述的方法,其特征在于,所述在所述待解码点的索引大于N时,从所述点云的已解码点中,确定所述待解码点的参考点查找范围,包括:
在所述待解码点的索引大于M时,将所述属性解码顺序下点云中位于所述待解码点之前的M个已解码点,确定为所述待解码点的参考点查找范围,其中M大于N;或者,
在所述待解码点的索引大于N且小于或等于M时,将所述属性解码顺序下点云中位于所述待解码点之前的所有已解码点,确定为所述待解码点的参考点查找范围。
3.根据权利要求1所述的方法,其特征在于,所述在所述参考点查找范围内,查找距离所述待解码点最近的至少一个参考点,包括:
根据所述属性解码顺序中与所述待解码点从近到远的顺序,在所述参考点查找范围内,查找距离所述待解码点最近的至少一个参考点。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述至少一个参考点的数量大于或等于P,且小于或等于Q,其中P、Q均为正整数,且P大于Q。
5.根据权利要求4所述的方法,其特征在于,所述在所述参考点查找范围内,查找距离所述待解码点最近的至少一个参考点,包括:
针对所述参考点查找范围内的每个候选点,在所述待解码点的已确定参考点的数量小于所述P时,将所述候选点确定为所述待解码点的一个参考点;或者,
在所述待解码点的已确定参考点的数量大于或等于所述P且小于所述Q,且所述候选点的第一权重大于或等于所述已确定参考点的第一权重中的最小值时,将所述候选点确定为所述待解码点的一个参考点,其中目标点的第一权重是所述目标点与所述待解码点之间距离的倒数,所述目标点为所述候选点或所述已确定参考点;或者,
在所述待解码点的已确定参考点的数量等于所述Q,且所述候选点的第一权重大于所述已确定参考点的第一权重中的最小值时,或者,在所述待解码点的已确定参考点的数量等于所述Q,且所述候选点的第一权重等于所述已确定参考点的第一权重中的最小值,且所述候选点的索引小于最小第一权重值对应的已确定参考点的索引时,使用所述候选点替换所述最小第一权重值对应的已确定参考点。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
根据第一权重的大小,对所述待解码点的已确定参考点进行排序。
7.根据权利要求5所述的方法,其特征在于,所述目标点的第一权重为所述目标点与所述待解码点之间的欧式距离或曼哈顿距离的倒数。
8.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若所述待解码点为所述点云在属性解码顺序下的第一个点时,则确定所述待解码点的属性信息的预测值为预设值;或者,
若所述待解码点为所述点云在属性解码顺序下的第二个点时,则将所述点云在属性解码顺序下的第一个点的属性信息的重建值,确定为所述待解码点的属性信息的预测值;或者,
若所述待解码点为所述点云在属性解码顺序下的第三个点时,则根据所述点云在属性解码顺序下的第一个点的属性信息的重建值和第二个点的属性信息的重建值,确定所述待解码点的属性信息的预测值。
9.根据权利要求1所述的方法,其特征在于,所述根据所述至少一个参考点的属性信息的重建值,确定所述待解码点的属性信息的预测值,包括:
确定所述至少一个参考点中每个参考点的第二权重;
根据所述至少一个参考点中每个参考点的第二权重,将所述至少一个参考点的属性信息的重建值的加权平均值,确定为所述待解码点的属性信息的预测值。
10.根据权利要求9所述的方法,其特征在于,所述确定所述至少一个参考点中每个参考点的第二权重,包括:
针对所述至少一个参考点中每个参考点,将所述参考点与所述待解码点的距离的倒数,确定为所述参考点的第二权重;或者,
确定所述参考点的第二权重为预设权重值。
11.根据权利要求10所述的方法,其特征在于,所述将所述参考点与所述待解码点的距离的倒数,确定为所述参考点的第二权重,包括:
将所述参考点与所述待解码点之间的欧式距离或曼哈顿距离的倒数,确定为所述参考点的第二权重。
12.根据权利要求1所述的方法,其特征在于,所述点云的属性解码顺序包括莫顿顺序和希尔伯特顺序中的任意一种。
13.根据权利要求1所述的方法,其特征在于,所述N为大于或等于2的正整数。
14.根据权利要求2所述的方法,其特征在于,所述M为128。
15.根据权利要求4所述的方法,其特征在于,所述P为3。
16.根据权利要求4所述的方法,其特征在于,所述Q为6。
17.一种点云属性的预测方法,其特征在于,包括:
获取点云的已编码点的属性信息的重建值;
对于所述点云中的待编码点,在所述待编码点的索引大于N时,从所述点云的已编码点中,确定所述待编码点的参考点查找范围,其中,所述待编码点的索引为所述待编码点在属性编码顺序中的排序,N为正整数;
在所述参考点查找范围内,查找距离所述待编码点最近的至少一个参考点;
根据所述至少一个参考点的属性信息的重建值,确定所述待编码点的属性信息的预测值。
18.根据权利要求17所述的方法,其特征在于,所述在所述待编码点的索引大于N时,从所述点云的已编码点中,确定所述待编码点的参考点查找范围,包括:
在所述待编码点的索引大于M时,将所述属性编码顺序下点云中位于所述待编码点之前的M个已编码点,确定为所述待编码点的参考点查找范围,其中M大于N;或者,
在所述待编码点的索引大于N且小于或等于M时,将所述属性编码顺序下点云中位于所述待编码点之前的所有已编码点,确定为所述待编码点的参考点查找范围。
19.根据权利要求17所述的方法,其特征在于,所述在所述参考点查找范围内,查找距离所述待编码点最近的至少一个参考点,包括:
根据所述属性编码顺序中与所述待编码点从近到远的顺序,在所述参考点查找范围内,查找距离所述待编码点最近的至少一个参考点。
20.根据权利要求17-19任一项所述的方法,其特征在于,所述至少一个参考点的数量大于或等于P,且小于或等于Q,其中P、Q均为正整数,且P大于Q。
21.根据权利要求20所述的方法,其特征在于,所述在所述参考点查找范围内,查找距离所述待编码点最近的至少一个参考点,包括:
针对所述参考点查找范围内的每个候选点,在所述待编码点的已确定参考点的数量小于所述P时,将所述候选点确定为所述待编码点的一个参考点;或者,
在所述待编码点的已确定参考点的数量大于或等于所述P且小于所述Q,且所述候选点的第一权重大于或等于所述已确定参考点的第一权重中的最小值时,将所述候选点确定为所述待编码点的一个参考点,其中目标点的第一权重是所述目标点与所述待编码点之间距离的倒数,所述目标点为所述候选点或所述已确定参考点;
在所述待编码点的已确定参考点的数量等于所述Q,且所述候选点的第一权重大于所述已确定参考点的第一权重中的最小值时,或者,在所述待编码点的已确定参考点的数量等于所述Q,且所述候选点的第一权重等于所述已确定参考点的第一权重中的最小值,且所述候选点的索引小于最小第一权重值对应的已确定参考点的索引时,使用所述候选点替换所述最小第一权重值对应的已确定参考点。
22.根据权利要求21所述的方法,其特征在于,所述方法还包括:
根据第一权重的大小,对所述待编码点的已确定参考点进行排序。
23.根据权利要求21所述的方法,其特征在于,所述目标点的第一权重为所述目标点与所述待编码点之间的欧式距离或曼哈顿距离的倒数。
24.根据权利要求17所述的方法,其特征在于,所述方法还包括:
若所述待编码点为所述点云在属性编码顺序下的第一个点时,则确定所述待编码点的属性信息的预测值为预设值;或者,
若所述待编码点为所述点云在属性编码顺序下的第二个点时,则将所述点云在属性编码顺序下的第一个点的属性信息的重建值,确定为所述待编码点的属性信息的预测值;或者,
若所述待编码点为所述点云在属性编码顺序下的第三个点时,则根据所述点云在属性编码顺序下的第一个点的属性信息的重建值和第二个点的属性信息的重建值,确定所述待编码点的属性信息的预测值。
25.根据权利要求17所述的方法,其特征在于,所述根据所述至少一个参考点的属性信息的重建值,确定所述待编码点的属性信息的预测值,包括:
确定所述至少一个参考点中每个参考点的第二权重;
根据所述至少一个参考点中每个参考点的第二权重,将所述至少一个参考点的属性信息的重建值的加权平均值,确定为所述待编码点的属性信息的预测值。
26.根据权利要求25所述的方法,其特征在于,所述确定所述至少一个参考点中每个参考点的第二权重,包括:
针对所述至少一个参考点中每个参考点,将所述参考点与所述待编码点的距离的倒数,确定为所述参考点的第二权重;或者,
确定所述参考点的第二权重为预设权重值。
27.根据权利要求26所述的方法,其特征在于,所述将所述参考点与所述待编码点的距离的倒数,确定为所述参考点的第二权重,包括:
将所述参考点与所述待编码点之间的欧式距离或曼哈顿距离的倒数,确定为所述参考点的第二权重。
28.根据权利要求17所述的方法,其特征在于,所述点云的属性编码顺序包括莫顿顺序和希尔伯特顺序中的任意一种。
29.根据权利要求17所述的方法,其特征在于,所述N为大于或等于2的正整数。
30.根据权利要求18所述的方法,其特征在于,所述M为128。
31.根据权利要求20所述的方法,其特征在于,所述P为3。
32.根据权利要求20所述的方法,其特征在于,所述Q为6。
33.一种点云属性的预测装置,其特征在于,包括:
解码单元,用于解码点云码流,得到点云的已解码点的属性信息的重建值;
范围确定单元,用于对于所述点云中的待解码点,在所述待解码点的索引大于N时,从所述点云的已解码点中,确定所述待解码点的参考点查找范围,其中,所述待解码点的索引为所述待解码点在属性解码顺序中的排序,N为正整数;
查找单元,用于在所述参考点查找范围内,查找距离所述待解码点最近的至少一个参考点;
预测单元,用于根据所述至少一个参考点的属性信息的重建值,确定所述待解码点的属性信息的预测值。
34.一种点云属性的预测装置,其特征在于,包括:
获取单元,用于获取点云的已编码点的属性信息的重建值;
范围确定单元,用于对于所述点云中的待编码点,在所述待编码点的索引大于N时,从所述点云的已编码点中,确定所述待编码点的参考点查找范围,其中,所述待编码点的索引为所述待编码点在属性编码顺序中的排序,N为正整数;
查找单元,用于在所述参考点查找范围内,查找距离所述待编码点最近的至少一个参考点;
预测单元,用于根据所述至少一个参考点的属性信息的重建值,确定所述待编码点的属性信息的预测值。
35.一种点云解码器,其特征在于,包括:处理器和存储器;
所述存储器用于存储计算机程序;
所述处理器用于调用并运行所述存储器中存储的计算机程序,以执行如权利要求1-16任一项所述的方法。
36.一种点云编码器,其特征在于,包括:处理器和存储器;
所述存储器用于存储计算机程序;
所述处理器用于调用并运行所述存储器中存储的计算机程序,以执行如权利要求17-32任一项所述的方法。
37.一种计算机可读存储介质,其特征在于,用于存储计算机程序,所述计算机程序使得计算机执行如权利要求1至16或17至32任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410165643.5A CN118075464A (zh) | 2021-06-11 | 2021-06-11 | 点云属性的预测方法、装置及编解码器 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202180098263.9A CN117321991A (zh) | 2021-06-11 | 2021-06-11 | 点云属性的预测方法、装置及编解码器 |
CN202410165643.5A CN118075464A (zh) | 2021-06-11 | 2021-06-11 | 点云属性的预测方法、装置及编解码器 |
PCT/CN2021/099872 WO2022257145A1 (zh) | 2021-06-11 | 2021-06-11 | 点云属性的预测方法、装置及编解码器 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202180098263.9A Division CN117321991A (zh) | 2021-06-11 | 2021-06-11 | 点云属性的预测方法、装置及编解码器 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118075464A true CN118075464A (zh) | 2024-05-24 |
Family
ID=84425588
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410165643.5A Pending CN118075464A (zh) | 2021-06-11 | 2021-06-11 | 点云属性的预测方法、装置及编解码器 |
CN202180098263.9A Pending CN117321991A (zh) | 2021-06-11 | 2021-06-11 | 点云属性的预测方法、装置及编解码器 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202180098263.9A Pending CN117321991A (zh) | 2021-06-11 | 2021-06-11 | 点云属性的预测方法、装置及编解码器 |
Country Status (3)
Country | Link |
---|---|
CN (2) | CN118075464A (zh) |
TW (1) | TW202249488A (zh) |
WO (1) | WO2022257145A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024145935A1 (zh) * | 2023-01-06 | 2024-07-11 | Oppo广东移动通信有限公司 | 点云编解码方法、装置、设备及存储介质 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10897269B2 (en) * | 2017-09-14 | 2021-01-19 | Apple Inc. | Hierarchical point cloud compression |
US10499054B2 (en) * | 2017-10-12 | 2019-12-03 | Mitsubishi Electric Research Laboratories, Inc. | System and method for inter-frame predictive compression for point clouds |
CN113826385A (zh) * | 2019-07-03 | 2021-12-21 | Oppo广东移动通信有限公司 | 点云编解码方法、编码器、解码器及计算机存储介质 |
WO2021003726A1 (zh) * | 2019-07-10 | 2021-01-14 | 深圳市大疆创新科技有限公司 | 一种数据编码、数据解码方法、设备及存储介质 |
CN110418135B (zh) * | 2019-08-05 | 2022-05-27 | 北京大学深圳研究生院 | 一种基于邻居的权重优化的点云帧内预测方法及设备 |
CN110572655B (zh) * | 2019-09-30 | 2023-01-10 | 北京大学深圳研究生院 | 一种基于邻居权重的参数选取和传递的点云属性编码和解码的方法及设备 |
CN112437312B (zh) * | 2019-08-26 | 2022-05-27 | 腾讯科技(深圳)有限公司 | 视频解码方法、编码方法、装置、设备及存储介质 |
WO2021049758A1 (ko) * | 2019-09-11 | 2021-03-18 | 엘지전자 주식회사 | 포인트 클라우드 데이터 송신 장치, 포인트 클라우드 데이터 송신 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법 |
CN111145090B (zh) * | 2019-11-29 | 2023-04-25 | 鹏城实验室 | 一种点云属性编码方法、解码方法、编码设备及解码设备 |
CN112218079B (zh) * | 2020-08-24 | 2022-10-25 | 北京大学深圳研究生院 | 一种基于空间顺序的点云分层方法、点云预测方法及设备 |
-
2021
- 2021-06-11 WO PCT/CN2021/099872 patent/WO2022257145A1/zh active Application Filing
- 2021-06-11 CN CN202410165643.5A patent/CN118075464A/zh active Pending
- 2021-06-11 CN CN202180098263.9A patent/CN117321991A/zh active Pending
-
2022
- 2022-06-10 TW TW111121611A patent/TW202249488A/zh unknown
Also Published As
Publication number | Publication date |
---|---|
WO2022257145A1 (zh) | 2022-12-15 |
CN117321991A (zh) | 2023-12-29 |
TW202249488A (zh) | 2022-12-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11910017B2 (en) | Method for predicting point cloud attribute, encoder, decoder, and storage medium | |
WO2022133753A1 (zh) | 点云编解码方法与***、及点云编码器与点云解码器 | |
US20230051431A1 (en) | Method and apparatus for selecting neighbor point in point cloud, encoder, and decoder | |
CN116250008A (zh) | 点云的编码、解码方法、编码器、解码器以及编解码*** | |
CN118075464A (zh) | 点云属性的预测方法、装置及编解码器 | |
CN116325732A (zh) | 点云的解码、编码方法、解码器、编码器和编解码*** | |
CN115474041B (zh) | 点云属性的预测方法、装置及相关设备 | |
WO2024065269A1 (zh) | 点云编解码方法、装置、设备及存储介质 | |
US20240037799A1 (en) | Point cloud coding/decoding method and apparatus, device and storage medium | |
WO2023103565A1 (zh) | 点云属性信息的编解码方法、装置、设备及存储介质 | |
WO2024065270A1 (zh) | 点云编解码方法、装置、设备及存储介质 | |
WO2022257150A1 (zh) | 点云编解码方法、装置、点云编解码器及存储介质 | |
US20230412837A1 (en) | Point cloud data transmission method, point cloud data transmission device, point cloud data reception method, and point cloud data reception device | |
WO2024065271A1 (zh) | 点云编解码方法、装置、设备及存储介质 | |
WO2024145913A1 (zh) | 点云编解码方法、装置、设备及存储介质 | |
WO2022140937A1 (zh) | 点云编解码方法与***、及点云编码器与点云解码器 | |
WO2024145935A1 (zh) | 点云编解码方法、装置、设备及存储介质 | |
TW202425653A (zh) | 點雲編解碼方法、裝置、設備及儲存媒介 | |
CN116866615A (zh) | 点云编码方法及设备 | |
CN117354496A (zh) | 点云编解码方法、装置、设备及存储介质 | |
TW202425629A (zh) | 點雲編解碼方法、裝置、設備及儲存媒介 | |
CN118055254A (zh) | 点云属性编解码方法、装置、设备 | |
CN115733990A (zh) | 点云编解码方法、设备及存储介质 | |
TW202425635A (zh) | 點雲編解碼方法、裝置、設備及儲存媒介 | |
CN117615136A (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 |