CN115086660A - 基于点云属性预测的解码、编码方法、解码器及编码器 - Google Patents

基于点云属性预测的解码、编码方法、解码器及编码器 Download PDF

Info

Publication number
CN115086660A
CN115086660A CN202110278568.XA CN202110278568A CN115086660A CN 115086660 A CN115086660 A CN 115086660A CN 202110278568 A CN202110278568 A CN 202110278568A CN 115086660 A CN115086660 A CN 115086660A
Authority
CN
China
Prior art keywords
points
point
target point
neighbor
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.)
Granted
Application number
CN202110278568.XA
Other languages
English (en)
Other versions
CN115086660B (zh
Inventor
朱文婕
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202110278568.XA priority Critical patent/CN115086660B/zh
Priority to CN202311139933.4A priority patent/CN117097898A/zh
Priority to PCT/CN2022/075560 priority patent/WO2022188583A1/zh
Priority to EP22766110.5A priority patent/EP4307663A4/en
Priority to TW111108454A priority patent/TWI815339B/zh
Publication of CN115086660A publication Critical patent/CN115086660A/zh
Priority to US18/051,713 priority patent/US20230086264A1/en
Application granted granted Critical
Publication of CN115086660B publication Critical patent/CN115086660B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods 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/124Quantisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/001Model-based coding, e.g. wire frame
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/40Tree coding, e.g. quadtree, octree
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/004Predictors, e.g. intraframe, interframe coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods 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/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/186Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/96Tree coding, e.g. quad-tree coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

本申请提供了提供一种基于点云属性预测的解码、编码方法、解码器及编码器,涉及计算机视觉(图像)中的点云编解码技术领域,该方法包括:对点云的码流进行解析,得到该点云中的目标点的位置信息的重建信息;从该点云中的M个已解码点中选择N个已解码点作为该目标点的N个备选点;基于该目标点的位置信息的重建信息,从该N个备选点中选择k个邻居点;利用该k个邻居点的属性值,确定该目标点的属性信息的预测值,进而基于该目标点的属性信息的预测值得到解码点云。本申请通过设计邻居点的选取方法,尽量选择与目标点属性相似的邻居点对目标点的属性信息进行预测,能够在保证预测效果的基础上降低预测复杂度。

Description

基于点云属性预测的解码、编码方法、解码器及编码器
技术领域
本申请实施例涉及人工智能的计算机视觉(图像)技术领域,尤其涉及点云编解码技术领域,并且更具体地,涉及基于点云属性预测的解码、编码方法、解码器及编码器。
背景技术
点云已经开始普及到各个领域,例如,虚拟/增强现实、机器人、地理信息系统、医学领域等。随着扫描设备的基准度和速率的不断提升,可以准确地获取物体表面的大量点云,往往一个场景下就可以对应几十万个点。数量如此庞大的点也给计算机的存储和传输带来了挑战。因此,对点的压缩也就成为一个热点问题。
对于点云的压缩来说,主要需要压缩其位置信息和属性信息。具体而言,先通过对点云的位置信息进行八叉树编码;同时,根据八叉树编码后的当前点的位置信息在已编码的点中选择出用于预测当前点属性信息的预测值的点后,基于选择出的点对其属性信息进行预测,再通过与属性信息的原始值进行做差的方式来编码颜色信息,以实现对点云的编码。
截止目前,在对属性信息进行预测的过程中,如何在保证预测效果的基础上降低预测复杂度是本领域急需解决的技术问题。
发明内容
本申请提供了提供一种基于点云属性预测的解码、编码方法、解码器及编码器,能够在保证预测效果的基础上降低预测复杂度。
一方面,本申请提供了一种基于点云属性预测的解码方法,包括:
对点云的码流进行解析,得到该点云中的目标点的位置信息的重建信息;
从该点云中的M个已解码点中选择N个已解码点作为该目标点的N个备选点,M≥N≥1;
基于该目标点的位置信息的重建信息,从该N个备选点中选择k个邻居点,N≥k≥1;
利用该k个邻居点的属性值,确定该目标点的属性信息的预测值;该k个邻居点的属性值为该k个邻居点的属性信息的重建值;
对该码流进行解析,得到该目标点的属性信息的残差值;
用于根据该目标点的属性信息的预测值和该目标点的属性信息的残差值,得到该目标点的属性信息的重建值;
根据该目标点的属性信息的最终重建值,得到解码点云。
另一方面,本申请提供了一种基于点云属性预测的编码方法,包括:
获取点云中的目标点的位置信息的重建信息;
从该点云中的M个已编码点中选择N个已编码点作为该目标点的N个备选点,M≥N≥1;
基于该目标点的位置信息的重建信息,从该N个备选点中选择k个邻居点,N≥k≥1;
利用该k个邻居点的属性值,确定该目标点的属性信息的预测值;该k个邻居点的属性值为该k个邻居点的属性信息的重建值或该k个邻居点的原始值;
根据该目标点的属性信息的预测值和该目标点的属性信息的原始值,得到该目标点的属性信息的残差值;
对该目标点的属性信息的残差值进行编码,得到该点云的码流。
另一方面,本申请提供了一种基于点云属性预测的解码器,用于执行上述第二方面或其各实现方式中的基于点云属性预测的解码方法。具体地,该解码器包括用于执行上述第二方面或其各实现方式中的基于点云属性预测的解码方法的功能模块。
在一种实现方式中,该编码器包括:
解析单元,用于对点云的码流进行解析,得到该点云中的目标点的位置信息的重建信息;
预测单元,用于:
从该点云中的M个已解码点中选择N个已解码点作为该目标点的N个备选点,M≥N≥1;
基于该目标点的位置信息的重建信息,从该N个备选点中选择k个邻居点,N≥k≥1;
利用该k个邻居点的属性值,确定该目标点的属性信息的预测值;该k个邻居点的属性值为该k个邻居点的属性信息的重建值;
该解析单元还用于对该码流进行解析,得到该目标点的属性信息的残差值;
残差单元,用于根据该目标点的属性信息的预测值和该目标点的属性信息的残差值,得到该目标点的属性信息的重建值;
解码单元,用于根据该目标点的属性信息的最终重建值,得到解码点云。
另一方面,本申请提供了一种基于点云属性预测的编码器,用于执行上述第一方面或其各实现方式中的基于点云属性预测的编码方法。具体地,该编码器包括用于执行上述第一方面或其各实现方式中的基于点云属性预测的编码方法的功能模块。
在一种实现方式中,该编码器包括:
获取单元,用于获取点云中的目标点的位置信息的重建信息;
预测单元,用于:
从该点云中的M个已编码点中选择N个已编码点作为该目标点的N个备选点,M≥N≥1;
基于该目标点的位置信息的重建信息,从该N个备选点中选择k个邻居点,N≥k≥1;
利用该k个邻居点的属性值,确定该目标点的属性信息的预测值;该k个邻居点的属性值为该k个邻居点的属性信息的重建值或该k个邻居点的原始值;
残差单元,用于根据该目标点的属性信息的预测值和该目标点的属性信息的原始值,得到该目标点的属性信息的残差值;
编码单元,用于对该目标点的属性信息的残差值进行编码,得到该点云的码流。
另一方面,本申请提供了一种编解码设备,包括:
处理器,适于实现计算机指令;以及,
计算机可读存储介质,计算机可读存储介质存储有计算机指令,计算机指令适于由处理器加载并执行上述第一方面至第二方面中的任一方面或其各实现方式中的编解码方法。
在一种实现方式中,该处理器为一个或多个,该存储器为一个或多个。
在一种实现方式中,该计算机可读存储介质可以与该处理器集成在一起,或者该计算机可读存储介质与处理器分离设置。
另一方面,本申请实施例提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机指令,该计算机指令被计算机设备的处理器读取并执行时,使得计算机设备执行上述第一方面至第二方面中的任一方面或其各实现方式中的编解码方法。
本申请实施例中,从该点云中的M个已解码点中选择N个已解码点作为该目标点的N个备选点后,基于该目标点的位置信息的重建信息,从该N个备选点中选择k个邻居点,针对密集点云,能够避免用于选择该k个邻居点的备选点的数量过大,降低预测复杂度。另一方面,在利用该k个邻居点的属性值,确定该目标点的属性信息的预测值,能够保证针对目标点的属性信息的预测准确度。因此,本申请提供的方案,能够在保证预测效果的基础上降低预测复杂度。
附图说明
图1是本申请实施例提供的编码框架的示意性框图。
图2是本申请实施例提供的解码框架的示意性框图。
图3是本申请实施例提供的原始莫顿顺序下的点云的示意图。
图4是本申请实施例提供的偏移莫顿顺序下的点云的示意图。
图5是本申请实施例提供的邻居点的空间关系的示意性结构图。
图6是本申请实施例提供的邻域范围内与待编码当前点共面的邻居点之间的莫顿码关系的示例。
图7是本申请实施例提供的邻域范围内与待编码当前点共线的邻居点之间的莫顿码关系的示例。
图8是本申请实施例提供的编码方法的示意性流程图。
图9是本申请实施例提供的解码方法的示意性流程图。
图10是本申请实施例提供的编码器的示意性框图。
图11是本申请实施例提供的解码器的示意性框图。
图12是本申请实施例提供的电子设备的示意性框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请提供的方案可涉及人工智能技术。
其中,人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
应理解,人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用,例如常见的智能家居、智能穿戴设备、虚拟助理、智能音箱、智能营销、无人驾驶、自动驾驶、无人机、机器人、智能医疗、智能客服等,相信随着技术的发展,人工智能技术将在更多的领域得到应用,并发挥越来越重要的价值。
本申请实施例可涉及人工智能技术中的计算机视觉(Computer Vision,CV)技术,计算机视觉是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能系统。计算机视觉技术通常包括图像处理、图像识别、图像语义理解、图像检索、OCR、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、3D技术、虚拟现实、增强现实、同步定位与地图构建等技术,还包括常见的人脸识别、指纹识别等生物特征识别技术。
本申请实施例提供一种计算机视觉技术中与点云媒体的数据处理相关的技术领域。
下面对点云相关的概念进行说明。
点云(Point Cloud)是空间中一组无规则分布的、表达三维物体或三维场景的空间结构及表面属性的离散点集。
点云数据(Point Cloud Data)是点云的具体记录形式,点云中每个点的点云数据可以包括几何信息和属性信息,其中,点云中每个点的几何信息是指该点的笛卡尔三维坐标数据,点云中每个点的属性信息可以包括但不限于以下至少一种:色彩信息、材质信息、激光反射强度信息。色彩信息可以是任意一种色彩空间上的信息。例如,色彩信息可以是红绿蓝(Red Green Blue,RGB)信息。再如,色彩信息还可以是亮度色度(YcbCr,YUV)信息。其中,Y表示明亮度(Luma),Cb(U)表示蓝色色差,Cr(V)表示红色,U和V表示为色度(Chroma),色度用于描述色差信息。
点云中的每个点都具有相同数量的属性信息。例如,点云中的每个点都具有色彩信息和激光反射强度两种属性信息。再如,点云中的每个点都具有色彩信息、材质信息和激光反射强度信息三种属性信息。在点云媒体的封装过程中,点的几何信息也可称为点云媒体的几何分量或几何成分(Geometry Component),点的属性信息也可称为点云媒体的属性分量或属性成分(Attribute Component)。点云媒体可包括一个几何成分以及一个或多个属性成分。
基于应用场景可以将点云划分为两大类别,即机器感知点云和人眼感知点云。机器感知点云的应用场景包括但不限于:自主导航系统、实时巡检系统、地理信息系统、视觉分拣机器人、抢险救灾机器人等点云应用场景。人眼感知点云的应用场景包括但不限于:数字文化遗产、自由视点广播、三维沉浸通信、三维沉浸交互等点云应用场景。点云的获取途径包括但不限于:计算机生成、3D激光扫描、3D摄影测量等。计算机可以生成虚拟三维物体及场景的点云。3D扫描可以获得静态现实世界三维物体或场景的点云,每秒可以获取百万级点云。3D摄像可以获得动态现实世界三维物体或场景的点云,每秒可以获取千万级点云。具体而言,可通过光电雷达、激光雷达、激光扫描仪、多视角相机等采集设备,可以采集得到物体表面的点云。根据激光测量原理得到的点云,其可以包括点的三维坐标信息和点的激光反射强度(reflectance)。根据摄影测量原理得到的点云,其可以可包括点的三维坐标信息和点的色彩信息。结合激光测量和摄影测量原理得到点云,其可以可包括点的三维坐标信息、点的激光反射强度(reflectance)和点的色彩信息。相应的,可以基于点云的获取方式,将点云划分为密集型点云和稀疏型点云;也可基于点云的获取途径将点云划分为静态点云和动态点云,更具体可划分为三种类型的点云,即第一静态点云、第二类动态点云以及第三类动态获取点云。针对第一静态点云,物体是静止的,且获取点云的设备也是静止的;针对第二类动态点云,物体是运动的,但获取点云的设备是静止的;针对第三类动态获取点云,获取点云的设备是运动的。
例如,在医学领域,由磁共振成像(magnetic resonance imaging,MRI)、计算机断层摄影(computed tomography,CT)、电磁定位信息,可以获得生物组织器官的点云。这些技术降低了点云的获取成本和时间周期,提高了数据的精度。点云的获取方式的变革,使大量点云的获取成为可能。伴随着大规模的点云不断积累,点云的高效存储、传输、发布、共享和标准化,成为点云应用的关键。
点云数据可用于形成点云媒体,点云媒体可以是一个媒体文件。点云媒体可包括多个媒体帧,点云媒体中的每个媒体帧由点云数据组成。点云媒体可以灵活方便地表达三维物体或三维场景的空间结构及表面属性,因此被广泛应用。对点云媒体进行编码后,再对编码后的码流进行封装可形成封装文件,封装文件可用于传输给用户。相对应的,在点云媒体播放器端,需要先对封装文件进行解封装,然后再进行解码,最后对解码后的数据流进行呈现。封装文件也可称为点云文件。
截止目前,可通过点云编码框架对点云进行编码。
针对不同的点云数据类型,可以分为基于几何结构的点云编码以及基于投影的点云编码。用于进行点云编码的点云编码框架可以是运动图象专家组(Moving PictureExperts Group,MPEG)提供的基于几何的点云压缩(Geometry Point Cloud Compression,G-PCC)编解码框架或基于视频的点云压缩(Video Point Cloud Compression,V-PCC)编解码框架,也可以是音视频编码标准(Audio Video Standard,AVS)提供的AVS-PCC编解码框架。G-PCC编解码框架可用于针对第一静态点云和第三类动态获取点云进行压缩,V-PCC编解码框架可用于针对第二类动态点云进行压缩。G-PCC编解码框架也称为点云编解码器TMC13,V-PCC编解码框架也称为点云编解码器TMC2。G-PCC及AVS-PCC均针对静态的稀疏型点云,其编码框架大致相同,下面以G-PCC编解码框架对本申请实施例可适用的编解码框架进行说明。
图1是本申请实施例提供的编码框架100的示意性框图。
如图1所示,编码框架100可以从采集设备获取点云的位置信息和属性信息。点云的编码包括位置编码和属性编码。在一个实施例中,位置编码的过程包括:对原始点云进行坐标变换、量化去除重复点等预处理;构建八叉树后进行编码形成几何码流。属性编码过程包括:通过给定输入点云的位置信息的重建信息和属性信息的原始值,选择三种预测模式的一种进行点云预测,对预测后的结果进行量化,并进行算术编码形成属性码流。
如图1所示,位置编码可通过以下单元实现:
坐标变换(Tanmsform coordinates)单元101、量化和移除重复点(Quantize andremove points)单元102、八叉树分析(Analyze octree)单元103、几何重建(Reconstructgeometry)单元104以及第一算术编码(Arithmetic enconde)单元105。
坐标变换单元101可用于预处理(Pre-processing)点云中的点,即可用于坐标变换和体素化(Voxelize),坐标变换可以指将点云中点的世界坐标变换为相对坐标。例如,通过缩放操作(点的几何坐标分别减去xyz坐标轴的最小值)和平移操作,将3D空间中的点云中的点的数据转换成整数形式,并将其最小几何位置移至坐标原点处。针对点的缩放操作相当于去直流操作,以实现将点云中的点的坐标从世界坐标变换为相对坐标。
量化和移除重复点单元102可通过几何量化(Geometry quantization)减少坐标的数目。几何量化的精细程度通常由量化参数(QP)来决定,QP取值较大,表示更大取值范围的系数将被量化为同一个输出,因此通常会带来更大的失真,及较低的码率;相反,QP取值较小,表示较小取值范围的系数将被量化为同一个输出,因此通常会带来较小的失真,同时对应较高的码率。在点云编码中,量化是直接对点的坐标信息进行的。量化后原先不同的点可能被赋予相同的坐标,基于此,可通过去重操作将重复的点删除;例如,具有相同量化位置和不同属性信息的多个点可通过属性变换合并到一个点中。在本申请的一些实施例中,量化和移除重复点单元102可作为可选的单元模块。
几何编码(Geometry encoding)中包含两种模式,即基于八叉树的几何编码(Octree)和基于三角表示的几何编码(Trisoup),其可在不同条件下使用。八叉树分析单元103可利用八叉树(octree)编码方式编码量化的点的位置信息。八叉树是一种树形数据结构,在3D空间划分中,对预先设定的包围盒进行均匀划分,每个节点都具有八个子节点。通过对八叉树各个子节点的占用与否采用‘1’和‘0’指示,获得占用码信息(occupancy code)作为点云几何信息的码流。例如,将点云按照八叉树的形式进行划分,由此,点的位置可以和八叉树的位置一一对应,通过统计八叉树中有点的位置,并将其标识(flag)记为1,以进行几何编码。基于三角表示的几何编码将点云划分为一定大小的块(block),定位点云表面在块的边缘的交点并构建三角形,通过编码交点位置实现几何信息的压缩。
第一算术编码单元105可用于几何熵编码(Geometry entropy encoding),即针对八叉树的占用码信息进行统计压缩编码,最后输出二值化(0或者1)的压缩码流。统计压缩编码是一种无损编码方式,可以有效的降低表达同样的信号所需要的码率。常用的统计压缩编码可以是基于上下文的二值化算术编码(Content Adaptive Binary ArithmeticCoding,CABAC)。简言之,采用熵编码方式对八叉树分析单元103输出的位置信息进行算术编码,即将八叉树分析单元103输出的位置信息利用算术编码方式生成几何码流;几何码流也可称为几何比特流(geometry bitstream)。
在有损编码情况下,在几何信息编码后,编码端需解码并重建几何信息,即恢复3D点云的各点坐标信息。针对每一个点,在原始点云中寻找其对应一个或多个邻近点的属性信息的重建值,作为该点的属性信息的预测值,基于该点的属性信息的预测值和原始值即可得到该点的属性信息的残差值,编码器通过对点云的所有点的属性信息的残差值进行编码,以得到属性比特流。编码器基于属性信息的重建值可基于预测值和原始值,可以得到属性信息的重建值。
属性编码可通过以下单元实现:
颜色空间变换(Transform colors)单元110、属性变换(Transfer attributes)单元111、区域自适应分层变换(Region Adaptive Hierarchical Transform,RAHT)单元112、预测变化(predicting transform)单元113以及提升变化(lifting transform)单元114、量化(Quantize)单元115以及第二算术编码单元116。
颜色空间变换单元110可用于将点云中点的RGB色彩空间变换为YCbCr格式或其他格式。
属性变换单元111可用于变换点云中点的属性信息,以最小化属性失真。例如,属性变换单元111可用于得到点的属性信息的原始值。例如,该属性信息可以是点的颜色信息。经过属性变换单元111变换得到点的属性信息的原始值后,可选择任一种预测单元,对点云中的点进行预测。
用于对点云中的点进行预测编码的单元可包括:分层区域自适应变换编码(Region Adaptive Hierarchical Transform,RAHT)单元112、预测变化(predictingtransform)单元113以及提升变化(lifting transform)单元114中的至少一项,即属性变换编码中包含三种模式,可在不同条件下使用。换言之,RAHT 112、预测变化(predictingtransform)单元113以及提升变化(lifting transform)单元114中的任一项可用于对点云中点的属性信息进行预测,以得到点的属性信息的预测值,进而可基于点的属性信息的预测值得到点的属性信息的残差值。例如,点的属性信息的残差值可以是点的属性信息的原始值减去点的属性信息的预测值。利用RAHT单元112进行预测编码时,属性信息经过RAHT变换,将信号转换到变换域中,称之为变换系数。利用提升变化单元114进行预测编码时,在LoD相邻层预测的基础上,引入邻域点的权重更新策略,最终获得各点的属性信息的预测值,进而获得对应的残差值。预测变换单元113还可用于生成LOD,并对LOD中点的属性信息依次进行预测,计算得到预测残差以便后续进行量化编码。利用预测变换单元113进行预测编码时,根据距离选择子点集,将点云划分成多个不同的层级(Level of Detail,LOD),实现由粗糙到精细化的点云表示。相邻层之间可以实现自下而上的预测,即由粗糙层中的邻近点预测精细层中引入的点的属性信息,获得对应的残差值。其中,LOD中的最底层的点作为参考信息进行编码。
量化单元115可用于属性信息的量化(Attribute quantization),量化的精细程度通常由量化参数来决定。在预测变换编码及提升变换编码中,是对残差值进行量化后进行熵编码;在RAHT中,是对变换系数进行量化后进行熵编码。例如,若该量化单元115和该预测变换单元113相连,则该量化单元可用于量化该预测变换单元113输出的点的属性信息的残差值。例如,对预测变换单元113输出的点的属性信息的残差值使用量化步长进行量化,以实现提升系统性能。
针对属性信息进行预测编码时,通过对几何信息或属性信息的邻近关系,选择一个或多个点作为预测值,并求加权平均获得属性信息的最终预测值,对原始值与预测值之间的差值进行编码。以利用预测变换单元113进行预测编码为例,对LOD中的每一个点,在其前面的LOD中找到3个距离最近的邻居点,然后利用3个邻居点的重建值对当前点进行预测,得到预测值;基于此,可基于当前点的预测值和当前点的原始值得到当前点的残差值。
在一些实施例中,可以基于下述方公式确定残差值:
attrResidualQuant=(attrValue-attrPred)/Qstep;
其中,attrResidualQuant表示当前点的残差值,attrPred表示当前点的预测值,attrValue表示当前点的原始值,Qstep表示量化步长。其中,Qstep由量化参数(Quantization Parameter,Qp)计算得到。
在一些实施例中,当前点将会作为后续点的最近邻居,并利用当前点的重建值对后续点的属性信息进行预测。当前点的属性信息的重建值可通过以下公式得到:
reconstructedColor=attrResidualQuant×Qstep+attrPred;
其中,reconstructedColor表示当前点的重建值,attrResidualQuant表示当前点的残差值,Qstep表示量化步长,attrPred表示当前点的预测值。其中,Qstep由量化参数(Quantization Parameter,Qp)计算得到。
第二算术编码单元116可用于属性信息的熵编码(Attribute entropy coding),量化后的属性信息的残差值或变换系数可使用行程编码(run length coding)及算数编码(arithmetic coding)实现最终的压缩。相应的编码模式,量化参数等信息也同样采用熵编码器进行编码。对点的属性信息的残差值进行熵编码,可以得到属性码流。该属性码流可以是比特流信息。
需要说明的是,在本申请实施例中,点云中的点的属性信息的预测值(predictedvalue)也可称为LOD模式下的颜色预测值(predictedColor)。点的属性信息的原始值减去点的属性信息的预测值可得到点的残差值(residualvalue)。点的属性信息的残差值也可称为LOD模式下的颜色残差值(residualColor)。点的属性信息的预测值和点的属性信息的残差值相加可生成点的属性信息的重建值(reconstructedvalue)。点的属性信息的重建值也可称为LOD模式下的颜色重建值(reconstructedColor)。当然,上述术语仅为示例性说明,不应理解为对本申请的限制。
基于边框框架100的编码过程,解码器获得压缩码流后,首先进行熵解码,获得各种模式信息及量化后的几何信息以及属性信息。首先,几何信息经过反量化,得到重建的3D点位置信息。另一方面,属性信息经过反量化得到残差值,并根据采用的变换模式确认参考信号,得到属性信息的预测值,按顺序与几何信息一一对应,产生并输出的每一个点的重建值,即输出重建点云数据。
图2是本申请实施例提供的解码框架200的示意性框图。
如图2所示,解码框架200可以从编码设备获取点云的码流,通过解析码得到点云中的点的位置信息和属性信息。点云的解码包括位置解码和属性解码。
在一个实施例中,位置解码的过程包括:对几何码流进行算术解码;构建八叉树后进行合并,对点的位置信息进行重建,以得到点的位置信息的重建信息;对点的位置信息的重建信息进行坐标变换,得到点的位置信息。点的位置信息也可称为点的几何信息。
属性解码过程包括:通过解析属性码流,获取点云中点的属性信息的残差值;通过对点的属性信息的残差值进行反量化,得到反量化后的点的属性信息的残差值;基于位置解码过程中获取的点的位置信息的重建信息,选择三种预测模式的一种进行点云预测,得到点的属性信息的重建值;对点的属性信息的重建值进行颜色空间反变换,以得到解码点云。
如图2所示,位置解码可通过以下单元实现:第一算数解码单元201、八叉树分析(synthesize octree)单元202、几何重建(Reconstruct geometry)单元203以及坐标反变化(inverse transform coordinates)单元204。属性编码可通过以下单元实现:第二算数解码单元210、反量化(inverse quantize)单元211、RAHT单元212、预测变化(predictingtransform)单元213、提升变化(lifting transform)单元214以及颜色空间反变换(inverse trasform colors)单元215。
需要说明的是,解压缩是压缩的逆过程,类似的,解码框架200中的各个单元的功能可参见编码框架100中相应的单元的功能。例如,解码框架200可根据点云中点与点之间的欧式距离将点云划分为多个LOD;然后,依次对LOD中点的属性信息进行解码;例如,计算零行程编码技术中零的数量(zero_cnt),以基于零的数量对残差进行解码;接着,解码框架200可基于解码出的残差值进行反量化,并基于反量化后的残差值与当前点的预测值相加得到该点云的重建值,直到解码完所有的点云。当前点将会作为后续LOD中点的最近邻居,并利用当前点的重建值对后续点的属性信息进行预测。此外,关于反变换(transform)和反量化(scale/scaling),对于正交变换,如果将其中的一个矩阵用于变换,则另一个矩阵用于反变换。对于解码方法,可将解码器中使用的矩阵称为“变换”(transform)矩阵。
为便于描述,下面对属性信息的预测编码方法进行说明。属性信息的预测编码方法可包括针对反射率属性信息的预测编码方法、针对颜色属性信息的预测编码方法以及自适应选择属性预测值的方法。
1)、针对反射率属性信息的预测编码方法。
i)、莫顿序邻居点选取。
基于偏移莫顿码的方法找到当前点的k个已编码的点作为邻居点。莫顿码是一种将多维空间中的点坐标用一个一维的数值来表示,通过利用莫顿编码的方式来可以将空间中点所对应的空间关系用莫顿码的值之间的相邻关系来近似表示。换言之,点云经过莫顿码编码后可形成由多个莫顿码基于莫顿排序的方式形成的莫顿顺序。排序(sorting)是指将一组数据按特定规则(排序算法)调换位置,使得数据按序排列。莫顿排序是指基于莫顿码的值之间的相邻关系进行排序的过程。
图3是本申请实施例提供的原始莫顿顺序下的点云的示意图。图4是本申请实施例提供的偏移莫顿顺序下的点云的示意图。
如图3所示,获取点云中所有点的坐标,并按照莫顿排序的方式得到莫顿顺序1;把所有点的坐标(x,y,z)加上一个固定值(j1,j2,j3),用新的坐标(x+j1,y+j2,z+j3)生成点云对应的莫顿码,按照莫顿排序的方式得到莫顿顺序2。如图4所示,在图3中的A,B,C,D移到图4中的不同位置,对应的莫顿码也发生了变化,但相对位置保持不变。另外,在图4中,点D的莫顿码是23,点D的邻居点B的莫顿码是21,所以,从点D向前最多搜索两个点就可以找到点B。但在图3中,从点D的莫顿码是16,点D的邻居点B的莫顿码是2,所以,从点D向前最多需要搜索14个点才能找到点B。
解码器根据莫顿顺序进行解码,查找当前点的最近预测点。具体地,在莫顿顺序1中选取该当前点的前N个点作为备选点,N取值范围是大于等于1,在莫顿顺序2中选取该当前点的前M个点作为备选点,M的取值范围是大于等于1。在上述N个备选点和M个备选点中,计算每个备选点到当前点的距离d,当前点的坐标为(x,y,x),备选点的坐标为(x1,y1,z1),距离d计算方法为d=|x-x1|+|y-y1|+|z-z1|,从这N+M个备选点中选取距离最小的k个已解码点作为当前点的预测点。作为本申请的示例,在PCEM软件中,j1=j2=j3=42,k=3,N=M=4。
ii)、希尔伯特(Hilbert)序邻居点选取。
其中,Hilbert序邻居点的选取方式通过在Hilbert序下当前编码点的前的邻居点的最大数目(maxNumOfNeighbours)个点中查找距离当前点最近的k个点作为邻居点,其中maxNumOfNeighbours表示备选点的个数,maxNumOfNeighbours默认取128,k默认取3,距离计算方法为曼哈顿距离,即d=|x1-x2|+|y1-y2|+|z1-z2|。其中,在编码中,进行希尔伯特排序时采用离散的希尔伯特曲线进行计算。
iii)、预测值计算。
在进行当前点的属性信息的预测值计算时,用上述选定的k个邻居点与当前点之间的曼哈顿距离的倒数作为权重,最后计算k个邻居点的属性重构值的加权平均获得当前点的属性信息的预测值。设当前点的序号为i,当前点的几何坐标为(xi,yi,zi),每个邻居点的几何坐标为(xij,yij,zij)。其中,j=0,1,2,……,k,则每个邻居点的权重wij如下式1所示:
Figure BDA0002975059450000141
其中,设每个邻居点的属性信息的重建值为
Figure BDA0002975059450000142
则当前点的属性信息的预测值
Figure BDA0002975059450000143
如下式2:
Figure BDA0002975059450000144
对于反射率属性,若式1中的权重计算在x、y、z方向的分量采用不同权重,则每个邻居点的权重wij如下式3所示:
Figure BDA0002975059450000145
其中a、b、c分别x、y、z方向的分量上的不同权重。
2)、针对颜色属性信息的预测编码方法。
在颜色属性的预测方法中,首先利用莫顿码来查找当前点的空间邻居点,然后根据查找的空间邻居点对当前点进行属性预测。
图5是本申请实施例提供的邻居点的空间关系的示意性结构图。图6是本申请实施例提供的邻域范围内与待编码当前点共面的邻居点之间的莫顿码关系的示例。图7是本申请实施例提供的邻域范围内与待编码当前点共线的邻居点之间的莫顿码关系的示例。
如图5所示,待编码的当前点为粗线条标记块A,邻居查找范围为待编码的当前点的3X3X3邻域。首先利用当前点的莫顿码得到该邻域中莫顿码值最小的块,将该块作为基准块,利用基准块来查找与待编码当前点7共面、共线的已编码邻居点。如图6所示,邻域范围内,待编码当前点7与邻居点3、邻居点5和邻居点6共面。如图7所示,邻域范围内,待编码当前点7与邻居点1、邻居点2和邻居点4共线。
利用基准块来搜索与待编码当前点共面、共线的已编解码的k个邻居点(比如当选择邻域时,k≤6),利用这k个邻居点来预测待编码当前点的属性信息。例如k=3的情况下,在已编码的点一定范围[j-maxNumOfNeighbours,j-1]内进行查找与待编码当前点共面的邻居点,其中,当前点的索引为j,maxNumOfNeighbours表示备选点的个数,如果查找到共面的已编解码的邻居点,则将共面的邻居点的权重分配为2;继续在已编解码的点中查找与待编码当前点共线的邻居点,如果在已解码点集中查找到共线的邻居点,则对共线的邻居点的权重分配为1,最终,利用查找到的邻居点进行加权平均对待编码当前点进行属性预测;如果没有查找到与待编码当前点共面和共线的已编解码邻居点,则可以利用待编码当前点的前一个莫顿码对应的点进行属性预测。
例如,利用邻居点进行加权平均对待编码当前点进行属性预测时,若有一个共面点和一个共线点,共面点与当前点距离为d1(比如d1=1),属性值为r1;共线点与当前点距离为d2(比如d2≥2),属性值为r2,则待编码当前点的属性预测值为r=(2*r1+r2)/(2+1)。
3)、自适应选择属性预测值的方法。
针对反射率属性信息的预测方法和针对颜色属性属性信息的预测方法均是根据几何位置信息来确定属性信息的预测值,针对反射率属性信息的预测方法和针对颜色属性属性信息的预测方法可以称为基于几何位置的预测值方法。基于几何位置的预测值方法通常适合于比较稠密、较易预测的点云,比如人物点云,或者适合于预测残差较小的情况。如果基于几何位置的预测值方法产生的残差很大的情况下,基于属性值的预测值方法通常能降低预测残差,并提高编码效率。
其中,基于属性值的预测值方法可以通过以下步骤实现:
i)、将最近已编码的已编码点中32个不同的属性预测值保存在侯选预测值表中;
ii)、从候选预测值表中选取跟当前点的属性信息最近的点,并用被选取点的属性值作为当前点的属性预测值;
iii)、将被选取点在侯选预测值表的序号二值化成5个比特,并用有上下文的熵编码进行编码。
针对颜色属性属性信息的预测方法中,通过寻找已编码点中的共面共线点作为当前点的邻居点,并给共面点和共线点设置不同的权重进行加权计算,最终获得对应点的属性信息的预测值。对于较稀疏的点云数据,在90%以上找不到共面共线点,则在AVS编码中会采取前一个点进行预测。一个场景下的点云就可以对应几十万个点,数量如此庞大的点也给计算机的存储和传输带来了挑战,直接在已编码点中的共面共线点作为当前点的邻居点需要的计算量过大,导致预测复杂度过高。
本申请提出了一种面向颜色预测的邻居点优化方法,通过更好地利用点云邻近点的空间关联性,能够在保证预测效果的基础上降低预测复杂度。具体地,通过分析点云数据的空间邻域关系在M个已编码点中选择N个已编码点作为N个备选点,然后设计距离优先或几何结构优先的方式在N个备选点中选择k个邻居点,最后基于选择的k个邻居点进行属性预测。需要说明的是,本申请实施例中,针对在M个已编码点中选择N个备选点的方案,以及针对在N个备选点中选择k个邻居点的方案,可以通过搜索或映射等多种方式实现。在不同的情况下,可能采取单独的选择方式,或采取多种选择方式相结合,以实现在保证预测效果的基础上降低预测复杂度。此外,本申请提出的面向点云属性预测的邻居点选择优化方式可应用于任意一种3D点云编解码产品中。
图8是本申请实施例提供的基于点云属性预测的编码方法300的示意性流程图。该方法300可由编码器或编码端来执行。例如,图1所示的编码框架100。
如图8所示,该编码方法300可包括:
S310,获取点云中的目标点的位置信息的重建信息;
S320,从该点云中的M个已编码点中选择N个已编码点作为该目标点的N个备选点,M≥N≥1;
S330,基于该目标点的位置信息的重建信息,从该N个备选点中选择k个邻居点,N≥k≥1;
S340,利用该k个邻居点的属性值,确定该目标点的属性信息的预测值;该k个邻居点的属性值为该k个邻居点的属性信息的重建值或该k个邻居点的原始值;
S350,根据该目标点的属性信息的预测值和该目标点的属性信息的原始值,得到该目标点的属性信息的残差值;
S360,对该目标点的属性信息的残差值进行编码,得到该点云的码流。
简言之,编码端针对目标点的属性信息进行编码时,先在M个已编码点中选择N个已编码点作为该目标点的N个备选点,再从该N个备选点中选择k个邻居点,接着利用该k个邻居点的属性值,确定该目标点的属性信息的预测值,最后,根据该目标点的属性信息的预测值和该目标点的属性信息的原始值,得到该目标点的属性信息的残差值;并对该目标点的属性信息的残差值进行编码,得到该点云的码流。
本申请实施例中,从该点云中的M个已编码点中选择N个已编码点作为该目标点的N个备选点后,基于该目标点的位置信息的重建信息,从该N个备选点中选择k个邻居点,针对密集点云,能够避免用于选择该k个邻居点的备选点的数量过大,降低预测复杂度。另一方面,在利用该k个邻居点的属性值,确定该目标点的属性信息的预测值,能够保证针对目标点的属性信息的预测准确度。因此,本申请提供的方案,能够在保证预测效果的基础上降低预测复杂度。
在一些实施例中,M>N;其中,该S320可包括:
基于该M个已编码点的第一顺序,从该M个已编码点中选择该N个已编码点;其中,该第一顺序为按照从小到大或从大到小的顺序对该M个已编码点和该目标点进行莫顿排序或希尔伯特排序所得到的顺序,或该第一顺序为该M个已编码点和该目标点的编码顺序;将该N个已编码点作为该N个备选点。
换言之,编码端对点云中的点进行排序,例如,采用莫顿(morton)码或希尔伯特(hilbert)码表示点云中点的坐标,并从小到大或从大到小进行排序;或不进行排序,保持各点的编码顺序;点的编码顺序也可以称为点的输入顺序。以希尔伯特排序为例,当前待编码点序号为i,对应希尔伯特码为m_i,其前序的已编码点包括i-1,i-2,…,1,0,对应的希尔伯特码为m_(i-1),m_(i-2),…,m_1,m_0。在序号为i-1,i-2,…,1,0的已编码点中选择N个已编码点,即为当前点选择N个备选点作为当前点的邻居点的备选点,选择N个已编码点的方法包括但是不限于:
1、采用所有已编码点作为备选点。
2、采用已编码点中的部分点作为备选点。
在一些实施例中,该S320可具体包括:
沿该第一顺序,将该目标点前面的且与该目标点相邻的N个点,确定为该N个已编码点;或者,沿该第一顺序,将该目标点前面的且连续的N个点,确定为该N个已编码点,其中,该连续的N个点与该目标点相邻或间隔至少一个已编码点。
换言之,编码端采用已编码点中的部分点作为备选点时,可实现的方案包括但是不限于以下方式中的至少一项:
1、按照该第一顺序逐渐向前搜索,选择N个点加入备选点。
2、按该第一顺序选择前序的N个点,即选择序号为i-1,i-2,…,i-N的点作为备选点。
3、按该第一顺序在已编码点中任选连续的N个点。例如,跳过前序N1个点,即选择序号为i-N1-1,i-N1-2,…,i-N1-N的N个点加入备选点。
本实施例中,基于该M个已编码点的第一顺序,直接从该M个已编码点中选择该N个已编码点,能够有效控制备选点的选择复杂度,提升预测效率。
当然,在其他可替代实施例中,编码端也可以从该M个已编码点中随机选择该N个已编码点,本申请实施例对此不作具体限定。
需要说明的是,该第一顺序可以是编码端直接对该点云进行排序形成的顺序,也可以是仅对该M个已编码点和该目标点排序形成的顺序,例如,该点云为密集点云时,该第一顺序可以是仅对该M个已编码点和该目标点排序形成的顺序,该点云为稀疏点云时,该第一顺序可以是对该点云中所有的点进行排序形成的顺序,以降低工作量并提升预测效率。此外,编码端对点云中的点进行排序或仅对该M个已编码点和该目标点进行排序时,可对所有方向(x,y,z)进行处理,或者对其中一个或多个方向进行处理,本申请实施例对此不作具体限定。例如,编码端根据点的位置信息对点云中的点进行排序(或仅对该M个已编码点和该目标点进行排序)时,编码端可以根据点的位置信息对点云中的点进行莫顿排序(或仅对该M个已编码点和该目标点进行莫顿排序),也可以根据点的位置信息对点云中的点进行希尔伯特排序(或仅对该M个已编码点和该目标点进行希尔伯特排序)。可选的,该点的位置信息可以是该云的三维位置信息,也可以是一个维度或多个维度上的位置信息。可选的,编码端可根据实际需求确定采用几个维度的位置信息对点云中的点(或该M个已编码点和该目标点)进行排序。
编码端选择出该N个备选点后,可以在该N个备选点中选择用于预测目标点的属性信息的邻居点。
需要说明的是,编码端可计算该N个备选点中的每一个备选点与目标点的距离,并基于每一个备选点与目标点的距离确定k个邻居点;也可通过点的几何结构关系,如利用基于该N个备选点和目标点形成的八叉树结构定位出符合条件的k邻居点;也可通过其他映射方式进行定位;还可以在对N个备选点和目标点进行排序,并在排序后的备选点中选择k个邻居点,例如,可以基于对N个备选点和目标点进行排序形成的顺序选择k个邻居点,本申请实施例对此不作具体限定。还需要说明的是,本申请对计算过程中涉及的距离所采用的度量方式或具体实现方式不作限定。例如,可以采用欧式(Euclidean)距离或曼哈顿(Manhattan)距离。还需要说明的是,对N个备选点和目标点进行排序形成的顺序可以是直接对该点云进行排序形成的顺序,也可以是仅对该N个备选点和目标点排序形成的顺序,例如,该点云为密集点云时,对N个备选点和目标点进行排序形成的顺序可以是仅对该N个备选点和目标点排序形成的顺序,该点云为稀疏点云时,该对N个备选点和目标点进行排序形成的顺序可以是对该点云中所有的点进行排序形成的顺序,以降低工作量并提升预测效率。此外,编码端对点云中的点进行排序(或仅对该N个备选点和目标点进行排序)时,可对所有方向(x,y,z)进行处理,或者对其中一个或多个方向进行处理,本申请实施例对此不作具体限定。例如,编码端根据点的位置信息对点云中的点进行排序(或仅对该N个备选点和目标点进行排序)时,编码端可以根据点的位置信息对点云中的点进行莫顿排序(或仅对该N个备选点和目标点进行莫顿排序),也可以根据点的位置信息对点云中的点进行希尔伯特排序(或仅对该N个备选点和目标点进行希尔伯特排序)。可选的,该点的位置信息可以是该云的三维位置信息,也可以是一个维度或多个维度上的位置信息。可选的,编码端可根据实际需求确定采用几个维度的位置信息对点云中的点或该N个备选点进行排序。
在一些实施例中,该S330可包括:
基于该目标点的位置信息的重建信息和该N个备选点的位置信息的重建信息,确定该N个备选点和该目标点的几何结构关系;基于该几何结构关系,从该N个备选点中选择该k个邻居点。
在一种实现方式中,该几何结构关系通过八叉树结构表示;基于该八叉树结构,确定该目标点的k个最近邻点;将该k个最近邻点,确定为该k个邻居点。
简言之,编码端基于该八叉树结构,选择k个最近邻点作为邻居点;即,在该N个备选点中选择与目标点距离最近的k个点。例如,编码端可利用K最近邻(k-NearestNeighbor,KNN)分类算法计算获取其的K个最近邻点。其中,所谓K最近邻就是K个最近的邻居的意思,相当于,每个点都可以用它最接近的K个邻近点来代表。
在另一种实现方式中,基于该几何结构关系,从该N个备选点中选择与该目标点共线和/或共面的p个备选点;若p大于或等于k,则将该p个备选点确定为该k个邻居点;或者,若p大于或等于k,则在该p个备选点中选择k个备选点作为该k个邻居点。在另一种实现方式中,基于该几何结构关系,从该N个备选点中选择与该目标点共线和/或共面的p个备选点;若p小于k或p等于0,则基于该目标点的位置信息的重建信息和该N个备选点的位置信息的重建信息,确定该N个备选点中的备选点到该目标点之间的距离;基于该N个备选点中的备选点到该目标点之间的距离,从该N个备选点中选择该k个邻居点,其中,该N个备选点中的备选点到该目标点的距离为欧式距离或曼哈顿距离。在另一种实现方式中,基于该几何结构关系,从该N个备选点中选择与该目标点共线和/或共面的p个备选点;若p小于k或p等于0,则利用该目标点的位置信息的重建信息和该N个备选点的位置信息的重建信息确定第二顺序;基于该第二顺序,从该N个备选点中选择该k个邻居点;其中,该第二顺序为按照从小到大或从大到小的顺序对该N个备选点和该目标点进行莫顿排序或希尔伯特排序所得到的顺序;或者,该第二顺序为按照该N个备选点中的备选点与该目标点的距离由大到小或有小到大进行排序后得到的顺序,该N个备选点中的备选点到该目标点的距离为欧式距离或曼哈顿距离。
简言之,编码端可基于该几何结构关系,从该N个备选点中选择与该目标点共线和/或共面的备选点;若从与该目标点共线和/或共面的备选点的数目小于k或者不存在与该目标点共线或共面的备选点,则编码端基于该N个备选点中的备选点到该目标点之间的距离或第二顺序确定该k个邻居点,若从与该目标点共线和/或共面的备选点的数目大于或等于k,则将所有的与该目标点共线和/或共面的备选点确定为该k个邻居点或从所有的与该目标点共线和/或共面的备选点中选择出k和点作为该k个邻居点。
编码端基于该N个备选点中的备选点到该目标点之间的距离,从该N个备选点中选择该k个邻居点时,将该N个备选点中的与该目标点的距离小于第一阈值的点,确定为该k个邻居点;或,将该N个备选点中的与该目标点的距离为第二阈值的点,确定为k个邻居点。换言之,编码端从该N个备选点中选择该k个邻居点的方法具体包括但是不限于以下方法中的至少一项:
1、选择所有距离小于d的点作为邻居点。例如,d=2。
2、选择所有距离为d_0的点作为邻居点。可选的,d_0可选一个固定值或多个固定值。例如,d_0可以为1或2,即选择密集点云中与目标点共面或共线的点。
编码端基于该第二顺序,从该N个备选点中选择该k个邻居点时,可以基于该目标点在该第二顺序中的序号,从该N个备选点中选择该k个邻居点。换言之,编码端采用该N个备选点中的部分点作为该k个邻居点时,可实现的方案包括但是不限于以下方式中的至少一项:
1、按照该第二顺序逐渐向前搜索,选择k个点加入邻居点。
2、按该第二顺序选择前序的k个点,即选择序号为i-1,i-2,…,i-k的点作为邻居点。
3、按该第二顺序在该N个备选点中任选连续的k个点。例如,跳过前序N1个点,即选择序号为i-N1-1,i-N1-2,…,i-N1-k的N个点加入邻居点。
当然,在其他可替代实施例中,编码端也可以从该N个备选点中随机选择该k个邻居点,本申请实施例对此不作具体限定。
在一些实施例中,该S330可包括:
基于该目标点的位置信息的重建信息和该N个备选点的位置信息的重建信息,确定该N个备选点中的备选点到该目标点之间的距离;基于该N个备选点中的备选点到该目标点之间的距离,从该N个备选点中选择该k个邻居点,其中,该N个备选点中的备选点到该目标点的距离为欧式距离或曼哈顿距离。
由于备选点到该目标点之间的距离大小,能够体现备选点的属性信息和目标点的属性信息之间的相关度或相似度,编码端可基于该N个备选点中的备选点到该目标点之间的距离大小,优先从该N个备选点中选择符合预设条件或属性预测条件的该k个邻居点。
在一种实现方式中,该S330可具体包括:
将该N个备选点中的与该目标点的距离小于第一阈值的点,确定为该k个邻居点;或,将该N个备选点中的与该目标点的距离为第二阈值的点,确定为k个邻居点。
换言之,编码端从该N个备选点中选择该k个邻居点的方法具体包括但是不限于以下方法中的至少一项:
1、选择所有距离小于d的点作为邻居点。例如,d=2。
2、选择所有距离为d_0的点作为邻居点。可选的,d_0可选一个固定值或多个固定值。例如,d_0可以为1或2,即选择密集点云中与目标点共面或共线的点。
在一些实施例中,该S330可包括:
利用该目标点的位置信息的重建信息和该N个备选点的位置信息的重建信息确定第二顺序;基于该第二顺序,从该N个备选点中选择该k个邻居点;其中,该第二顺序为按照从小到大或从大到小的顺序对该N个备选点和该目标点进行莫顿排序或希尔伯特排序所得到的顺序;或者,该第二顺序为按照该N个备选点中的备选点与该目标点的距离由大到小或有小到大进行排序后得到的顺序,该N个备选点中的备选点到该目标点的距离为欧式距离或曼哈顿距离。
换言之,编码端可基于第二顺序,按序号从该N个备选点中选择该k个邻居点。例如,基于该N个备选点的第二顺序,从该N个备选点中选择部分备选点作为该k个邻居点。例如,沿该第二顺序,将该目标点前面的且与该目标点相邻的k个点,确定为该k个邻居点;或者,沿该第二顺序,将该目标点前面的且连续的k个点,确定为该k个邻居点,其中,该连续的k个点与该目标点相邻或间隔至少一个备选点。
换言之,编码端采用该N个备选点中的部分点作为该k个邻居点时,可实现的方案包括但是不限于以下方式中的至少一项:
1、按照该第二顺序逐渐向前搜索,选择k个点加入邻居点。
2、按该第二顺序选择前序的k个点,即选择序号为i-1,i-2,…,i-k的点作为邻居点。
3、按该第二顺序在该N个备选点中任选连续的k个点。例如,跳过前序N1个点,即选择序号为i-N1-1,i-N1-2,…,i-N1-k的N个点加入邻居点。
当然,在其他可替代实施例中,编码端也可以从该N个备选点中随机选择该k个邻居点,本申请实施例对此不作具体限定。
在一些实施例中,该S340可包括:
以该k个邻居点中的一个邻居点与该目标点的距离的倒数为该一个邻居点的权重,基于该k个邻居点中每一个邻居点的属性值和权重,将计算的该k个邻居点的属性值的加权平均值,确定为该目标点的属性信息的预测值;或者,针对该k个邻居点中的不同邻居点设置相同或不同的初始权重,基于该k个邻居点中每一个邻居点的属性值和初始权重,将计算的该k个邻居点的属性值的加权平均值,确定为该目标点的属性信息的预测值,其中该k个邻居点中的一个邻居点的初始权重随该一个邻居点与该目标点的距离的增大而减小,该码流包括该k个邻居点中的每一个邻居点的初始权重;或者,将该k个邻居点中与该目标点的距离最近的邻居点的属性值,确定为该目标点的属性信息的预测值。
换言之,编码端可利用所获得的邻居点的属性值计算目标点的属性信息的预测值,具体计算过程包括但是不限于以下方法中的至少一项:
1、根据邻居点与目标点的距离计算加权平均值。例如,采用欧式距离度量,以距离的倒数作为各个邻居点的权重,预测值为各个邻居点属性值的加权平均。
2、根据设置的初始权重计算加权平均值,可由编码端为不同邻居点设置相同或不同的权重值,例如,给距离较近的点设置较大的权重值;预测值为各个邻居点属性值的加权平均。相应的,解码端可通过解析码流获得对应的权重值。
3、采用最邻近点的属性值作为目标点的属性值预测值。
在一些实施例中,该S350可包括:
丢弃该k个邻居点中的与参考点的距离大于第一阈值的邻居点和该k个邻居点中的与该参考点的属性值大于或等于第二阈值的邻居点;其中,该k个邻居点包括该参考点;利用该k个邻居点中剩余的邻居点的属性值,确定该目标点的属性信息的预测值。
换言之,编码端对所获得的邻居点可进行处理,可剔除差异较大的点,避免引入误差,包括但是不限于以下方法中的至少一项:
1、剔除邻居点中距离相差较大的邻居点。例如,已选择k个最近邻点作为邻居点,设置阈值为d_0,其中距离最近的邻居点为j,若其余邻居点与j的距离大于d_0,则剔除。
2、剔除邻居点中属性相差较大的邻居点。例如,已选择k个最近邻点作为邻居点,设置阈值为r_0,其中距离最近的邻居点为j,若其余邻居点与j的属性值之差大于d_0,则剔除。
以上结合附图详细描述了本申请的优选实施方式,但是,本申请并不限于上述实施方式中的具体细节,在本申请的技术构思范围内,可以对本申请的技术方案进行多种简单变型,这些简单变型均属于本申请的保护范围。例如,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合,为了避免不必要的重复,本申请对各种可能的组合方式不再另行说明。又例如,本申请的各种不同的实施方式之间也可以进行任意组合,只要其不违背本申请的思想,其同样应当视为本申请所公开的内容。还应理解,在本申请的各种方法实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
图9是本申请实施例提供的基于点云属性预测的解码方法400的示意性流程图。
如图9所示,该解码方法400可包括:
S410,对点云的码流进行解析,得到该点云中的目标点的位置信息的重建信息;
S420,从该点云中的M个已解码点中选择N个已解码点作为该目标点的N个备选点,M≥N≥1;
S430,基于该目标点的位置信息的重建信息,从该N个备选点中选择k个邻居点,N≥k≥1;
S440,利用该k个邻居点的属性值,确定该目标点的属性信息的预测值;该k个邻居点的属性值为该k个邻居点的属性信息的重建值;
S450,对该码流进行解析,得到该目标点的属性信息的残差值;
S460,用于根据该目标点的属性信息的预测值和该目标点的属性信息的残差值,得到该目标点的属性信息的重建值;
S470,根据该目标点的属性信息的最终重建值,得到解码点云。
在一些实施例中,M>N;其中,该S420可包括:
基于该M个已解码点的第一顺序,从该M个已解码点中选择该N个已解码点;其中,该第一顺序为按照从小到大或从大到小的顺序对该M个已解码点和该目标点进行莫顿排序或希尔伯特排序所得到的顺序,或该第一顺序为该M个已解码点和该目标点的解码顺序;将该N个已解码点,确定为该N个备选点。
本申请实施例中,从该点云中的M个已解码点中选择N个已解码点作为该目标点的N个备选点后,基于该目标点的位置信息的重建信息,从该N个备选点中选择k个邻居点,针对密集点云,能够避免用于选择该k个邻居点的备选点的数量过大,降低预测复杂度。另一方面,在利用该k个邻居点的属性值,确定该目标点的属性信息的预测值,能够保证针对目标点的属性信息的预测准确度。因此,本申请提供的方案,能够在保证预测效果的基础上降低预测复杂度。
在一些实施例中,该S420可具体包括:
沿该第一顺序,将该目标点前面的且与该目标点相邻的N个点,确定为该N个已解码点;或者,沿该第一顺序,将该目标点前面的且连续的N个点,确定为该N个已解码点,其中,该连续的N个点与该目标点相邻或间隔至少一个已解码点。
在一些实施例中,该S430可包括:
基于该目标点的位置信息的重建信息和该N个备选点的位置信息的重建信息,确定该N个备选点和该目标点的几何结构关系;基于该几何结构关系,从该N个备选点中选择该k个邻居点。
在一些实施例中,该几何结构关系通过八叉树结构表示;该S430可具体包括:
基于该八叉树结构,确定该目标点的k个最近邻点;将该k个最近邻点,确定为该k个邻居点。
在一些实施例中,该S430可包括:
基于该几何结构关系,从该N个备选点中选择与该目标点共线和/或共面的p个备选点;
若p大于或等于k,则将该p个备选点确定为该k个邻居点;或者
若p大于或等于k,则在该p个备选点中选择k个备选点作为该k个邻居点。
在一些实施例中,该S430可包括:
基于该几何结构关系,从该N个备选点中选择与该目标点共线和/或共面的p个备选点;
若p小于k或p等于0,则基于该目标点的位置信息的重建信息和该N个备选点的位置信息的重建信息,确定该N个备选点中的备选点到该目标点之间的距离;
基于该N个备选点中的备选点到该目标点之间的距离,从该N个备选点中选择该k个邻居点,其中,该N个备选点中的备选点到该目标点的距离为欧式距离或曼哈顿距离。
在一些实施例中,该S430可包括:
基于该几何结构关系,从该N个备选点中选择与该目标点共线和/或共面的p个备选点;
若p小于k或p等于0,则利用该目标点的位置信息的重建信息和该N个备选点的位置信息的重建信息确定第二顺序;基于该第二顺序,从该N个备选点中选择该k个邻居点;
其中,该第二顺序为按照从小到大或从大到小的顺序对该N个备选点和该目标点进行莫顿排序或希尔伯特排序所得到的顺序;或者,该第二顺序为按照该N个备选点中的备选点与该目标点的距离由大到小或有小到大进行排序后得到的顺序,该N个备选点中的备选点到该目标点的距离为欧式距离或曼哈顿距离。
在一些实施例中,该S430可包括:
基于该目标点的位置信息的重建信息和该N个备选点的位置信息的重建信息,确定该N个备选点中的备选点到该目标点之间的距离;基于该N个备选点中的备选点到该目标点之间的距离,从该N个备选点中选择该k个邻居点,其中,该N个备选点中的备选点到该目标点的距离为欧式距离或曼哈顿距离。
在一些实施例中,该S430可具体包括:
将该N个备选点中的与该目标点的距离小于第一阈值的点,确定为该k个邻居点;或,将该N个备选点中的与该目标点的距离为第二阈值的点,确定为k个邻居点。
在一些实施例中,该S430可包括:
利用该目标点的位置信息的重建信息和该N个备选点的位置信息的重建信息确定第二顺序;基于该第二顺序,从该N个备选点中选择该k个邻居点;
其中,该第二顺序为按照从小到大或从大到小的顺序对该N个备选点和该目标点进行莫顿排序或希尔伯特排序所得到的顺序;或者,该第二顺序为按照该N个备选点中的备选点与该目标点的距离由大到小或有小到大进行排序后得到的顺序,该N个备选点中的备选点到该目标点的距离为欧式距离或曼哈顿距离。
在一些实施例中,该S440可包括:
以该k个邻居点中的一个邻居点与该目标点的距离的倒数为该一个邻居点的权重,基于该k个邻居点中每一个邻居点的属性值和权重,将计算的该k个邻居点的属性值的加权平均值,确定为该目标点的属性信息的预测值;或者,针对该k个邻居点中的不同邻居点设置相同或不同的初始权重,基于该k个邻居点中每一个邻居点的属性值和初始权重,将计算的该k个邻居点的属性值的加权平均值,确定为该目标点的属性信息的预测值,其中该k个邻居点中的一个邻居点的初始权重随该一个邻居点与该目标点的距离的增大而减小,该码流包括该k个邻居点中的每一个邻居点的初始权重;或者,将该k个邻居点中与该目标点的距离最近的邻居点的属性值,确定为该目标点的属性信息的预测值。
在一些实施例中,该S440可包括:
丢弃该k个邻居点中的与参考点的距离大于第一阈值的邻居点和该k个邻居点中的与该参考点的属性值大于或等于第二阈值的邻居点;其中,该k个邻居点包括该参考点;利用该k个邻居点中剩余的邻居点的属性值,确定该目标点的属性信息的预测值。
应理解,解码方法400可参考编码方法300的相关描述,为避免重复,此处不再赘述。
下面将结合附图对本申请实施例提供的编码器或解码器进行说明。
图10是本申请实施例提供的点云的编码器500的示意性框图。
如图10所示,该编码器500可包括:
获取单元510,用于获取点云中的目标点的位置信息的重建信息;
预测单元520,用于:
从该点云中的M个已编码点中选择N个已编码点作为该目标点的N个备选点,M≥N≥1;
基于该目标点的位置信息的重建信息,从该N个备选点中选择k个邻居点,N≥k≥1;
利用该k个邻居点的属性值,确定该目标点的属性信息的预测值;该k个邻居点的属性值为该k个邻居点的属性信息的重建值或该k个邻居点的原始值;
残差单元520,用于根据该目标点的属性信息的预测值和该目标点的属性信息的原始值,得到该目标点的属性信息的残差值;
编码单元530,用于对该目标点的属性信息的残差值进行编码,得到该点云的码流。
在一些实施例中,M>N;其中,该预测单元520具体用于:
基于该M个已编码点的第一顺序,从该M个已编码点中选择该N个已编码点;其中,该第一顺序为按照从小到大或从大到小的顺序对该M个已编码点和该目标点进行莫顿排序或希尔伯特排序所得到的顺序,或该第一顺序为该M个已编码点和该目标点的编码顺序;
将该N个已编码点作为该N个备选点。
在一些实施例中,该预测单元520具体用于:
沿该第一顺序,将该目标点前面的且与该目标点相邻的N个点,确定为该N个已编码点;或者
沿该第一顺序,将该目标点前面的且连续的N个点,确定为该N个已编码点,其中,该连续的N个点与该目标点相邻或间隔至少一个已编码点。
在一些实施例中,该预测单元520具体用于:
基于该目标点的位置信息的重建信息和该N个备选点的位置信息的重建信息,确定该N个备选点和该目标点的几何结构关系;
基于该几何结构关系,从该N个备选点中选择该k个邻居点。
在一些实施例中,该几何结构关系通过八叉树结构表示;该预测单元520具体用于:
基于该八叉树结构,确定该目标点的k个最近邻点;
将该k个最近邻点,确定为该k个邻居点。
在一些实施例中,该预测单元520具体用于:
基于该几何结构关系,从该N个备选点中选择与该目标点共线和/或共面的p个备选点;
若p大于或等于k,则将该p个备选点确定为该k个邻居点;或者
若p大于或等于k,则在该p个备选点中选择k个备选点作为该k个邻居点。
在一些实施例中,该预测单元520具体用于:
基于该几何结构关系,从该N个备选点中选择与该目标点共线和/或共面的p个备选点;
若p小于k或p等于0,则基于该目标点的位置信息的重建信息和该N个备选点的位置信息的重建信息,确定该N个备选点中的备选点到该目标点之间的距离;
基于该N个备选点中的备选点到该目标点之间的距离,从该N个备选点中选择该k个邻居点,其中,该N个备选点中的备选点到该目标点的距离为欧式距离或曼哈顿距离。
在一些实施例中,该预测单元520具体用于:
基于该几何结构关系,从该N个备选点中选择与该目标点共线和/或共面的p个备选点;
若p小于k或p等于0,则利用该目标点的位置信息的重建信息和该N个备选点的位置信息的重建信息确定第二顺序;基于该第二顺序,从该N个备选点中选择该k个邻居点;
其中,该第二顺序为按照从小到大或从大到小的顺序对该N个备选点和该目标点进行莫顿排序或希尔伯特排序所得到的顺序;或者,该第二顺序为按照该N个备选点中的备选点与该目标点的距离由大到小或有小到大进行排序后得到的顺序,该N个备选点中的备选点到该目标点的距离为欧式距离或曼哈顿距离。
在一些实施例中,该预测单元520具体用于:
基于该目标点的位置信息的重建信息和该N个备选点的位置信息的重建信息,确定该N个备选点中的备选点到该目标点之间的距离;
基于该N个备选点中的备选点到该目标点之间的距离,从该N个备选点中选择该k个邻居点,其中,该N个备选点中的备选点到该目标点的距离为欧式距离或曼哈顿距离。
在一些实施例中,该预测单元520具体用于:
将该N个备选点中的与该目标点的距离小于第一阈值的点,确定为该k个邻居点;或
将该N个备选点中的与该目标点的距离为第二阈值的点,确定为k个邻居点。
在一些实施例中,该预测单元520具体用于:
利用该目标点的位置信息的重建信息和该N个备选点的位置信息的重建信息确定第二顺序;
基于该第二顺序,从该N个备选点中选择该k个邻居点;
其中,该第二顺序为按照从小到大或从大到小的顺序对该N个备选点和该目标点进行莫顿排序或希尔伯特排序所得到的顺序;或者,该第二顺序为按照该N个备选点中的备选点与该目标点的距离由大到小或有小到大进行排序后得到的顺序,该N个备选点中的备选点到该目标点的距离为欧式距离或曼哈顿距离。
在一些实施例中,该预测单元520具体用于:
以该k个邻居点中的一个邻居点与该目标点的距离的倒数为该一个邻居点的权重,基于该k个邻居点中每一个邻居点的属性值和权重,将计算的该k个邻居点的属性值的加权平均值,确定为该目标点的属性信息的预测值,该码流包括该k个邻居点中的每一个邻居点的初始权重;或者
针对该k个邻居点中的不同邻居点设置相同或不同的初始权重,基于该k个邻居点中每一个邻居点的属性值和初始权重,将计算的该k个邻居点的属性值的加权平均值,确定为该目标点的属性信息的预测值,其中该k个邻居点中的一个邻居点的初始权重随该一个邻居点与该目标点的距离的增大而减小;或者
将该k个邻居点中与该目标点的距离最近的邻居点的属性值,确定为该目标点的属性信息的预测值。
在一些实施例中,该预测单元520具体用于:
丢弃该k个邻居点中的与参考点的距离大于第一阈值的邻居点和该k个邻居点中的与该参考点的属性值大于或等于第二阈值的邻居点;其中,该k个邻居点包括该参考点。
需要说明的是,该编码器500也可以结合至图1所示的编码框架100,即可将该编码器500中的单元替换或结合至编码框架100中的相关单元。例如,该预测单元520和残差单元530可用于实现编码框架100中的预测变换单元113的相关功能,甚至可用于实现位置编码功能以及针对属性信息进行预测之前的功能。再如,该编码单元540可用于替换该编码框架100中的第二算数编码单元116。
图11是本申请实施例提供的解码器600的示意性框图。
如图11所示,该解码器600可包括:
解析单元610,用于对点云的码流进行解析,得到该点云中的目标点的位置信息的重建信息;
预测单元620,用于:
从该点云中的M个已解码点中选择N个已解码点作为该目标点的N个备选点,M≥N≥1;
基于该目标点的位置信息的重建信息,从该N个备选点中选择k个邻居点,N≥k≥1;
利用该k个邻居点的属性值,确定该目标点的属性信息的预测值;该k个邻居点的属性值为该k个邻居点的属性信息的重建值;
该解析单元610还用于对该码流进行解析,得到该目标点的属性信息的残差值;
残差单元630,用于根据该目标点的属性信息的预测值和该目标点的属性信息的残差值,得到该目标点的属性信息的重建值;
解码单元640,用于根据该目标点的属性信息的最终重建值,得到解码点云。
在一些实施例中,M>N;其中,该预测单元620具体用于:
基于该M个已解码点的第一顺序,从该M个已解码点中选择该N个已解码点;其中,该第一顺序为按照从小到大或从大到小的顺序对该M个已解码点和该目标点进行莫顿排序或希尔伯特排序所得到的顺序,或该第一顺序为该M个已解码点和该目标点的解码顺序;
将该N个已解码点,确定为该N个备选点。
在一些实施例中,该预测单元620具体用于:
沿该第一顺序,将该目标点前面的且与该目标点相邻的N个点,确定为该N个已解码点;或者
沿该第一顺序,将该目标点前面的且连续的N个点,确定为该N个已解码点,其中,该连续的N个点与该目标点相邻或间隔至少一个已解码点。
在一些实施例中,该预测单元620具体用于:
基于该目标点的位置信息的重建信息和该N个备选点的位置信息的重建信息,确定该N个备选点和该目标点的几何结构关系;
基于该几何结构关系,从该N个备选点中选择该k个邻居点。
在一些实施例中,该几何结构关系通过八叉树结构表示;该预测单元620具体用于:
基于该八叉树结构,确定该目标点的k个最近邻点;
将该k个最近邻点,确定为该k个邻居点。
在一些实施例中,该预测单元620具体用于:
基于该几何结构关系,从该N个备选点中选择与该目标点共线和/或共面的p个备选点;
若p大于或等于k,则将该p个备选点确定为该k个邻居点;或者
若p大于或等于k,则在该p个备选点中选择k个备选点作为该k个邻居点。
在一些实施例中,该预测单元620具体用于:
基于该几何结构关系,从该N个备选点中选择与该目标点共线和/或共面的p个备选点;
若p小于k或p等于0,则基于该目标点的位置信息的重建信息和该N个备选点的位置信息的重建信息,确定该N个备选点中的备选点到该目标点之间的距离;
基于该N个备选点中的备选点到该目标点之间的距离,从该N个备选点中选择该k个邻居点,其中,该N个备选点中的备选点到该目标点的距离为欧式距离或曼哈顿距离。
在一些实施例中,该预测单元620具体用于:
基于该几何结构关系,从该N个备选点中选择与该目标点共线和/或共面的p个备选点;
若p小于k或p等于0,则利用该目标点的位置信息的重建信息和该N个备选点的位置信息的重建信息确定第二顺序;基于该第二顺序,从该N个备选点中选择该k个邻居点;
其中,该第二顺序为按照从小到大或从大到小的顺序对该N个备选点和该目标点进行莫顿排序或希尔伯特排序所得到的顺序;或者,该第二顺序为按照该N个备选点中的备选点与该目标点的距离由大到小或有小到大进行排序后得到的顺序,该N个备选点中的备选点到该目标点的距离为欧式距离或曼哈顿距离。
在一些实施例中,该预测单元620具体用于:
基于该目标点的位置信息的重建信息和该N个备选点的位置信息的重建信息,确定该N个备选点中的备选点到该目标点之间的距离;
基于该N个备选点中的备选点到该目标点之间的距离,从该N个备选点中选择该k个邻居点,其中,该N个备选点中的备选点到该目标点的距离为欧式距离或曼哈顿距离。
在一些实施例中,该预测单元620具体用于:
将该N个备选点中的与该目标点的距离小于第一阈值的点,确定为该k个邻居点;或
将该N个备选点中的与该目标点的距离为第二阈值的点,确定为k个邻居点。
在一些实施例中,该预测单元620具体用于:
利用该目标点的位置信息的重建信息和该N个备选点的位置信息的重建信息确定第二顺序;
基于该第二顺序,从该N个备选点中选择该k个邻居点;
其中,该第二顺序为按照从小到大或从大到小的顺序对该N个备选点和该目标点进行莫顿排序或希尔伯特排序所得到的顺序;或者,该第二顺序为按照该N个备选点中的备选点与该目标点的距离由大到小或有小到大进行排序后得到的顺序,该N个备选点中的备选点到该目标点的距离为欧式距离或曼哈顿距离。
在一些实施例中,该预测单元620具体用于:
以该k个邻居点中的一个邻居点与该目标点的距离的倒数为该一个邻居点的权重,基于该k个邻居点中每一个邻居点的属性值和权重,将计算的该k个邻居点的属性值的加权平均值,确定为该目标点的属性信息的预测值;或者
针对该k个邻居点中的不同邻居点设置相同或不同的初始权重,基于该k个邻居点中每一个邻居点的属性值和初始权重,将计算的该k个邻居点的属性值的加权平均值,确定为该目标点的属性信息的预测值,其中该k个邻居点中的一个邻居点的初始权重随该一个邻居点与该目标点的距离的增大而减小,该码流包括该k个邻居点中的每一个邻居点的初始权重;或者
将该k个邻居点中与该目标点的距离最近的邻居点的属性值,确定为该目标点的属性信息的预测值。
在一些实施例中,该预测单元620具体用于:
丢弃该k个邻居点中的与参考点的距离大于第一阈值的邻居点和该k个邻居点中的与该参考点的属性值大于或等于第二阈值的邻居点;其中,该k个邻居点包括该参考点。
需要说明的是,该解码器600也可以结合至图2所示的解码框架200,即可将该解码器600中的单元替换或结合至解码框架200中的相关单元。例如,该解析单元610可用于实现解码框架200中的预测变换单元213的相关功能,甚至可用于实现反量化单元211以及第二算数解码单元210的相关功能。再如,预测单元620和残差单元630可用于实现预测变换单元213的相关功能。再如,解码单元640可用于实现该解码框架200中的颜色空间反变换单元215的功能。
应理解,装置实施例与方法实施例可以相互对应,类似的描述可以参照方法实施例。为避免重复,此处不再赘述。具体地,编码器500可以对应于执行本申请实施例的方法300中的相应主体,并且编码器500中的各个单元分别为了实现方法300中的相应流程,类似的,解码器600可以对应于执行本申请实施例的方法400中的相应主体,并且解码器600中的各个单元分别为了实现方法400中的相应流程,为了简洁,在此不再赘述。
还应当理解,本申请实施例涉及的点云媒体的数据处理装置中的各个单元可以分别或全部合并为一个或若干个另外的单元来构成,或者其中的某个(些)单元还可以再拆分为功能上更小的多个单元来构成,这可以实现同样的操作,而不影响本申请的实施例的技术效果的实现。上述单元是基于逻辑功能划分的,在实际应用中,一个单元的功能也可以由多个单元来实现,或者多个单元的功能由一个单元实现。在本申请的其它实施例中,该点云媒体的数据处理装置也可以包括其它单元,在实际应用中,这些功能也可以由其它单元协助实现,并且可以由多个单元协作实现。根据本申请的另一个实施例,可以通过在包括例如中央处理单元(CPU)、随机存取存储介质(RAM)、只读存储介质(ROM)等处理元件和存储元件的通用计算机的通用计算设备上运行能够执行相应方法所涉及的各步骤的计算机程序(包括程序代码),来构造本申请实施例涉及的点云媒体的数据处理装置,以及来实现本申请实施例的基于点云属性预测的编解码方法。计算机程序可以记载于例如计算机可读存储介质上,并通过计算机可读存储介质装载于任意具有数据处理能力的电子设备,并在其中运行,来实现本申请实施例的相应方法。
换言之,上文涉及的单元可以通过硬件形式实现,也可以通过软件形式的指令实现,还可以通过软硬件结合的形式实现。具体地,本申请实施例中的方法实施例的各步骤可以通过处理器中的硬件的集成逻辑电路和/或软件形式的指令完成,结合本申请实施例公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件组合执行完成。可选地,软件可以位于随机存储器,闪存、只读存储器、可编程只读存储器、电可擦写可编程存储器、寄存器等本领域的成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法实施例中的步骤。
图12是本申请实施例提供的编解码设备700的示意结构图。
如图12所示,该编解码设备700至少包括处理器710以及计算机可读存储介质720。其中,处理器710以及计算机可读存储介质720可通过总线或者其它方式连接。计算机可读存储介质720用于存储计算机程序721,计算机程序721包括计算机指令,处理器710用于执行计算机可读存储介质720存储的计算机指令。处理器710是编解码设备700的计算核心以及控制核心,其适于实现一条或多条计算机指令,具体适于加载并执行一条或多条计算机指令从而实现相应方法流程或相应功能。
作为示例,处理器710也可称为中央处理器(CentralProcessingUnit,CPU)。处理器710可以包括但不限于:通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等等。
作为示例,计算机可读存储介质720可以是高速RAM存储器,也可以是非不稳定的存储器(Non-VolatileMemory),例如至少一个磁盘存储器;可选的,还可以是至少一个位于远离前述处理器710的计算机可读存储介质。具体而言,计算机可读存储介质720包括但不限于:易失性存储器和/或非易失性存储器。其中,非易失性存储器可以是只读存储器(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)。
在一种实现方式中,该编解码设备700可以是图1所示的编码框架100或图10所示的编码器500;该计算机可读存储介质720中存储有第一计算机指令;由处理器710加载并执行计算机可读存储介质720中存放的第一计算机指令,以实现图8所示方法实施例中的相应步骤;具体实现中,计算机可读存储介质720中的第一计算机指令由处理器710加载并执行相应步骤,为避免重复,此处不再赘述。
在一种实现方式中,该编解码设备700可以是图2所示的解码框架200或图11所示的解码器600;该计算机可读存储介质720中存储有第二计算机指令;由处理器710加载并执行计算机可读存储介质720中存放的第二计算机指令,以实现图9所示方法实施例中的相应步骤;具体实现中,计算机可读存储介质720中的第二计算机指令由处理器710加载并执行相应步骤,为避免重复,此处不再赘述。
根据本申请的另一方面,本申请实施例还提供了一种计算机可读存储介质(Memory),计算机可读存储介质是编解码设备700中的记忆设备,用于存放程序和数据。例如,计算机可读存储介质720。可以理解的是,此处的计算机可读存储介质720既可以包括编解码设备700中的内置存储介质,当然也可以包括编解码设备700所支持的扩展存储介质。计算机可读存储介质提供存储空间,该存储空间存储了编解码设备700的操作系统。并且,在该存储空间中还存放了适于被处理器710加载并执行的一条或多条的计算机指令,这些计算机指令可以是一个或多个的计算机程序721(包括程序代码)。这些计算机指令指令用于计算机执行上述各种可选方式中提供的基于点云属性预测的编解码方法。
根据本申请的另一方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。例如,计算机程序721。此时,编解码设备700可以是计算机,处理器710从计算机可读存储介质720读取该计算机指令,处理器710执行该计算机指令,使得该计算机执行上述各种可选方式中提供的基于点云属性预测的编解码方法。
换言之,当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行该计算机程序指令时,全部或部分地运行本申请实施例的流程或实现本申请实施例的功能。该计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。该计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质进行传输,例如,该计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元以及流程步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
最后需要说明的是,以上内容,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。

Claims (18)

1.一种基于点云属性预测的解码方法,其特征在于,包括:
对点云的码流进行解析,得到所述点云中的目标点的位置信息的重建信息;
从所述点云中的M个已解码点中选择N个已解码点作为所述目标点的N个备选点,M≥N≥1;
基于所述目标点的位置信息的重建信息,从所述N个备选点中选择k个邻居点,N≥k≥1;
利用所述k个邻居点的属性值,确定所述目标点的属性信息的预测值;所述k个邻居点的属性值为所述k个邻居点的属性信息的重建值;
对所述码流进行解析,得到所述目标点的属性信息的残差值;
根据所述目标点的属性信息的预测值和所述目标点的属性信息的残差值,得到所述目标点的属性信息的重建值;
根据所述目标点的属性信息的最终重建值,得到解码点云。
2.根据权利要求1所述的方法,其特征在于,M>N;
其中,所述从所述点云中的M个已解码点中选择N个已解码点作为所述目标点的N个备选点,包括:
基于所述M个已解码点的第一顺序,从所述M个已解码点中选择所述N个已解码点;其中,所述第一顺序为按照从小到大或从大到小的顺序对所述M个已解码点和所述目标点进行莫顿排序或希尔伯特排序所得到的顺序,或所述第一顺序为所述M个已解码点和所述目标点的解码顺序;
将所述N个已解码点,确定为所述N个备选点。
3.根据权利要求2所述的方法,其特征在于,所述基于所述M个已解码点的第一顺序,从所述M个已解码点中选择所述N个已解码点,包括:
沿所述第一顺序,将所述目标点前面的且与所述目标点相邻的N个点,确定为所述N个已解码点;或者
沿所述第一顺序,将所述目标点前面的且连续的N个点,确定为所述N个已解码点,其中,所述连续的N个点与所述目标点相邻或间隔至少一个已解码点。
4.根据权利要求1所述的方法,其特征在于,所述基于所述目标点的位置信息的重建信息,从所述N个备选点中选择k个邻居点,包括:
基于所述目标点的位置信息的重建信息和所述N个备选点的位置信息的重建信息,确定所述N个备选点和所述目标点间的几何结构关系;
基于所述几何结构关系,从所述N个备选点中选择所述k个邻居点。
5.根据权利要求4所述的方法,其特征在于,所述几何结构关系通过八叉树结构表示;所述基于所述几何结构关系,从所述N个备选点中选择所述k个邻居点,包括:
基于所述八叉树结构,确定所述目标点的k个最近邻点;
将所述k个最近邻点,确定为所述k个邻居点。
6.根据权利要求4所述的方法,其特征在于,所述基于所述几何结构关系,从所述N个备选点中选择所述k个邻居点,包括:
基于所述几何结构关系,从所述N个备选点中选择与所述目标点共线和/或共面的p个备选点;
若p大于或等于k,则将所述p个备选点确定为所述k个邻居点;或者
若p大于或等于k,则在所述p个备选点中选择k个备选点作为所述k个邻居点。
7.根据权利要求4所述的方法,其特征在于,所述基于所述几何结构关系,从所述N个备选点中选择所述k个邻居点,包括:
基于所述几何结构关系,从所述N个备选点中选择与所述目标点共线和/或共面的p个备选点;
若p小于k或p等于0,则基于所述目标点的位置信息的重建信息和所述N个备选点的位置信息的重建信息,确定所述N个备选点中的备选点到所述目标点之间的距离;
基于所述N个备选点中的备选点到所述目标点之间的距离,从所述N个备选点中选择所述k个邻居点,其中,所述N个备选点中的备选点到所述目标点的距离为欧式距离或曼哈顿距离。
8.根据权利要求4所述的方法,其特征在于,所述基于所述几何结构关系,从所述N个备选点中选择所述k个邻居点,包括:
基于所述几何结构关系,从所述N个备选点中选择与所述目标点共线和/或共面的p个备选点;
若p小于k或p等于0,则利用所述目标点的位置信息的重建信息和所述N个备选点的位置信息的重建信息确定第二顺序;
基于所述第二顺序,从所述N个备选点中选择所述k个邻居点;
其中,所述第二顺序为按照从小到大或从大到小的顺序对所述N个备选点和所述目标点进行莫顿排序或希尔伯特排序所得到的顺序;或者,所述第二顺序为按照所述N个备选点中的备选点与所述目标点的距离由大到小或有小到大进行排序后得到的顺序,所述N个备选点中的备选点到所述目标点的距离为欧式距离或曼哈顿距离。
9.根据权利要求1所述的方法,其特征在于,所述基于所述目标点的位置信息的重建信息,从所述N个备选点中选择k个邻居点,包括:
基于所述目标点的位置信息的重建信息和所述N个备选点的位置信息的重建信息,确定所述N个备选点中的备选点到所述目标点之间的距离;
基于所述N个备选点中的备选点到所述目标点之间的距离,从所述N个备选点中选择所述k个邻居点,其中,所述N个备选点中的备选点到所述目标点的距离为欧式距离或曼哈顿距离。
10.根据权利要求7或9所述的方法,其特征在于,所述基于所述N个备选点中的备选点到所述目标点之间的距离,从所述N个备选点中选择所述k个邻居点,包括:
将所述N个备选点中的与所述目标点的距离小于第一阈值的点,确定为所述k个邻居点;或
将所述N个备选点中的与所述目标点的距离为第二阈值的点,确定为k个邻居点。
11.根据权利要求1所述的方法,其特征在于,所述基于所述目标点的位置信息的重建信息,从所述N个备选点中选择k个邻居点,包括:
利用所述目标点的位置信息的重建信息和所述N个备选点的位置信息的重建信息确定第二顺序;
基于所述第二顺序,从所述N个备选点中选择所述k个邻居点;
其中,所述第二顺序为按照从小到大或从大到小的顺序对所述N个备选点和所述目标点进行莫顿排序或希尔伯特排序所得到的顺序;或者,所述第二顺序为按照所述N个备选点中的备选点与所述目标点的距离由大到小或有小到大进行排序后得到的顺序,所述N个备选点中的备选点到所述目标点的距离为欧式距离或曼哈顿距离。
12.根据权利要求1~9中任一项所述的方法,其特征在于,所述利用所述k个邻居点的属性值,确定所述目标点的属性信息的预测值,包括:
以所述k个邻居点中的一个邻居点与所述目标点的距离的倒数作为所述一个邻居点的权重,基于所述k个邻居点中每一个邻居点的属性值和权重,将计算的所述k个邻居点的属性值的加权平均值,确定为所述目标点的属性信息的预测值;或者
针对所述k个邻居点中的不同邻居点设置相同或不同的初始权重,基于所述k个邻居点中每一个邻居点的属性值和初始权重,将计算的所述k个邻居点的属性值的加权平均值,确定为所述目标点的属性信息的预测值,其中所述k个邻居点中的一个邻居点的初始权重随所述一个邻居点与所述目标点的距离的增大而减小,所述码流包括所述k个邻居点中的每一个邻居点的初始权重;或者
将所述k个邻居点中与所述目标点的距离最近的邻居点的属性值,确定为所述目标点的属性信息的预测值。
13.根据权利要求1~9中任一项所述的方法,其特征在于,所述利用所述k个邻居点的属性值,确定所述目标点的属性信息的预测值,包括:
丢弃所述k个邻居点中的与参考点的距离大于第一阈值的邻居点和所述k个邻居点中的与所述参考点的属性值大于或等于第二阈值的邻居点;其中,所述k个邻居点包括所述参考点;
利用所述k个邻居点中剩余的邻居点的属性值,确定所述目标点的属性信息的预测值。
14.一种基于点云属性预测的编码方法,其特征在于,包括:
获取点云中的目标点的位置信息的重建信息;
从所述点云中的M个已编码点中选择N个已编码点作为所述目标点的N个备选点,M≥N≥1;
基于所述目标点的位置信息的重建信息,从所述N个备选点中选择k个邻居点,N≥k≥1;
利用所述k个邻居点的属性值,确定所述目标点的属性信息的预测值;所述k个邻居点的属性值为所述k个邻居点的属性信息的重建值或所述k个邻居点的原始值;
根据所述目标点的属性信息的预测值和所述目标点的属性信息的原始值,得到所述目标点的属性信息的残差值;
对所述目标点的属性信息的残差值进行编码,得到所述点云的码流。
15.一种基于点云属性预测的解码器,其特征在于,包括:
解析单元,用于对点云的码流进行解析,得到所述点云中的目标点的位置信息的重建信息;
预测单元,用于:
从所述点云中的M个已解码点中选择N个已解码点作为所述目标点的N个备选点,M≥N≥1;
基于所述目标点的位置信息的重建信息,从所述N个备选点中选择k个邻居点,N≥k≥1;
利用所述k个邻居点的属性值,确定所述目标点的属性信息的预测值;所述k个邻居点的属性值为所述k个邻居点的属性信息的重建值;
所述解析单元还用于对所述码流进行解析,得到所述目标点的属性信息的残差值;
残差单元,用于根据所述目标点的属性信息的预测值和所述目标点的属性信息的残差值,得到所述目标点的属性信息的重建值;
解码单元,用于根据所述目标点的属性信息的最终重建值,得到解码点云。
16.一种基于点云属性预测的编码器,其特征在于,包括:
获取单元,用于获取点云中的目标点的位置信息的重建信息;
预测单元,用于:
从所述点云中的M个已编码点中选择N个已编码点作为所述目标点的N个备选点,M≥N≥1;
基于所述目标点的位置信息的重建信息,从所述N个备选点中选择k个邻居点,N≥k≥1;
利用所述k个邻居点的属性值,确定所述目标点的属性信息的预测值;所述k个邻居点的属性值为所述k个邻居点的属性信息的重建值或所述k个邻居点的原始值;
残差单元,用于根据所述目标点的属性信息的预测值和所述目标点的属性信息的原始值,得到所述目标点的属性信息的残差值;
编码单元,用于对所述目标点的属性信息的残差值进行编码,得到所述点云的码流。
17.一种编解码设备,其特征在于,包括:
处理器,适于执行计算机程序;
计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序被所述处理器执行时,实现如权利要求1至13中任一项所述的基于点云属性预测的解码方法,或实现如权利要求14所述的基于点云属性预测的编码方法。
18.一种计算机可读存储介质,其特征在于,用于存储计算机程序,所述计算机程序使得计算机执行如权利要求1至13中任一项所述的基于点云属性预测的解码方法,或如权利要求14所述的基于点云属性预测的编码方法。
CN202110278568.XA 2021-03-12 2021-03-12 基于点云属性预测的解码、编码方法、解码器及编码器 Active CN115086660B (zh)

Priority Applications (6)

Application Number Priority Date Filing Date Title
CN202110278568.XA CN115086660B (zh) 2021-03-12 2021-03-12 基于点云属性预测的解码、编码方法、解码器及编码器
CN202311139933.4A CN117097898A (zh) 2021-03-12 2021-03-12 基于点云属性预测的解码、编码方法、解码器及编码器
PCT/CN2022/075560 WO2022188583A1 (zh) 2021-03-12 2022-02-08 基于点云属性预测的解码、编码方法、解码器及编码器
EP22766110.5A EP4307663A4 (en) 2021-03-12 2022-02-08 DECODING METHODS/ENCODING METHODS BASED ON POINT CLOUD ATTRIBUTE PREDICTION, DECODER AND ENCODER
TW111108454A TWI815339B (zh) 2021-03-12 2022-03-08 基於點雲屬性預測的解碼方法、編碼方法、解碼器及編碼器、電子設備以及電腦可讀存儲介質
US18/051,713 US20230086264A1 (en) 2021-03-12 2022-11-01 Decoding method, encoding method, decoder, and encoder based on point cloud attribute prediction

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110278568.XA CN115086660B (zh) 2021-03-12 2021-03-12 基于点云属性预测的解码、编码方法、解码器及编码器

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN202311139933.4A Division CN117097898A (zh) 2021-03-12 2021-03-12 基于点云属性预测的解码、编码方法、解码器及编码器

Publications (2)

Publication Number Publication Date
CN115086660A true CN115086660A (zh) 2022-09-20
CN115086660B CN115086660B (zh) 2023-07-25

Family

ID=83226313

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202311139933.4A Pending CN117097898A (zh) 2021-03-12 2021-03-12 基于点云属性预测的解码、编码方法、解码器及编码器
CN202110278568.XA Active CN115086660B (zh) 2021-03-12 2021-03-12 基于点云属性预测的解码、编码方法、解码器及编码器

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN202311139933.4A Pending CN117097898A (zh) 2021-03-12 2021-03-12 基于点云属性预测的解码、编码方法、解码器及编码器

Country Status (5)

Country Link
US (1) US20230086264A1 (zh)
EP (1) EP4307663A4 (zh)
CN (2) CN117097898A (zh)
TW (1) TWI815339B (zh)
WO (1) WO2022188583A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115688004A (zh) * 2022-11-08 2023-02-03 中国民用航空总局第二研究所 一种基于希尔伯特编码的目标属性确定方法、介质及设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110708560A (zh) * 2018-07-10 2020-01-17 腾讯美国有限责任公司 点云数据处理方法和装置
CN110996098A (zh) * 2018-10-02 2020-04-10 腾讯美国有限责任公司 处理点云数据的方法和装置
CN111095929A (zh) * 2017-09-14 2020-05-01 苹果公司 点云压缩
CN111145090A (zh) * 2019-11-29 2020-05-12 鹏城实验室 一种点云属性编码方法、解码方法、编码设备及解码设备
US20200304823A1 (en) * 2019-03-20 2020-09-24 Tencent America LLC Techniques and apparatus for interframe point-cloud attribute coding

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10897269B2 (en) * 2017-09-14 2021-01-19 Apple Inc. Hierarchical point cloud compression
US10911787B2 (en) * 2018-07-10 2021-02-02 Apple Inc. Hierarchical point cloud compression
WO2020190090A1 (ko) * 2019-03-20 2020-09-24 엘지전자 주식회사 포인트 클라우드 데이터 전송 장치, 포인트 클라우드 데이터 전송 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법
CN111405281A (zh) * 2020-03-30 2020-07-10 北京大学深圳研究生院 一种点云属性信息的编码方法、解码方法、存储介质及终端设备
WO2021196029A1 (zh) * 2020-03-31 2021-10-07 深圳市大疆创新科技有限公司 一种用于点云编码、解码的方法和设备

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111095929A (zh) * 2017-09-14 2020-05-01 苹果公司 点云压缩
CN110708560A (zh) * 2018-07-10 2020-01-17 腾讯美国有限责任公司 点云数据处理方法和装置
CN110996098A (zh) * 2018-10-02 2020-04-10 腾讯美国有限责任公司 处理点云数据的方法和装置
US20200304823A1 (en) * 2019-03-20 2020-09-24 Tencent America LLC Techniques and apparatus for interframe point-cloud attribute coding
CN111145090A (zh) * 2019-11-29 2020-05-12 鹏城实验室 一种点云属性编码方法、解码方法、编码设备及解码设备

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115688004A (zh) * 2022-11-08 2023-02-03 中国民用航空总局第二研究所 一种基于希尔伯特编码的目标属性确定方法、介质及设备
CN115688004B (zh) * 2022-11-08 2023-09-29 中国民用航空总局第二研究所 一种基于希尔伯特编码的目标属性确定方法、介质及设备

Also Published As

Publication number Publication date
TWI815339B (zh) 2023-09-11
CN117097898A (zh) 2023-11-21
EP4307663A4 (en) 2024-04-17
CN115086660B (zh) 2023-07-25
WO2022188583A1 (zh) 2022-09-15
EP4307663A1 (en) 2024-01-17
US20230086264A1 (en) 2023-03-23
TW202236216A (zh) 2022-09-16

Similar Documents

Publication Publication Date Title
US10904564B2 (en) Method and apparatus for video coding
Nguyen et al. Multiscale deep context modeling for lossless point cloud geometry compression
US20230162402A1 (en) Method and apparatus for processing a point cloud
CN111108529A (zh) 信息处理设备和方法
US11902348B2 (en) Point cloud data transmission device, point cloud data transmission method, point cloud data reception device, and point cloud data reception method
CN114598892B (zh) 点云数据编码方法、解码方法、装置、设备及存储介质
US20230164353A1 (en) Point cloud data processing device and processing method
US20230394712A1 (en) Point cloud data transmission device, point cloud data transmission method, point cloud data reception device, and point cloud data reception method
CN115379191B (zh) 一种点云解码方法、点云编码方法及相关设备
JP2024050705A (ja) 属性情報の予測方法、エンコーダ、デコーダ及び記憶媒体
CN115086660B (zh) 基于点云属性预测的解码、编码方法、解码器及编码器
WO2022131948A1 (en) Devices and methods for sequential coding for point cloud compression
CN115086658A (zh) 点云数据的处理方法、装置、存储介质及编解码设备
CN116250008A (zh) 点云的编码、解码方法、编码器、解码器以及编解码系统
WO2023015530A1 (zh) 点云编解码方法、编码器、解码器及计算机可读存储介质
CN115100302A (zh) 点云处理方法、装置、设备以及介质
CN116325732A (zh) 点云的解码、编码方法、解码器、编码器和编解码系统
CN115474041B (zh) 点云属性的预测方法、装置及相关设备
WO2024060161A1 (zh) 编解码方法、编码器、解码器以及存储介质
CN115086716B (zh) 点云中邻居点的选择方法、装置及编解码器
WO2024012381A1 (en) Method, apparatus, and medium for point cloud coding
WO2024026712A1 (zh) 点云编解码方法、装置、设备及存储介质
CN115914651A (zh) 点云编解码方法、装置、设备及存储介质
CN115720273A (zh) 点云编解码中的属性预测方法、装置、设备及存储介质
Kaya Visual and Geometric Data Compression for Immersive Technologies

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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40073969

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant