CN117808967A - 用于生成压缩点云的系统、方法和计算机可读介质 - Google Patents

用于生成压缩点云的系统、方法和计算机可读介质 Download PDF

Info

Publication number
CN117808967A
CN117808967A CN202311796136.3A CN202311796136A CN117808967A CN 117808967 A CN117808967 A CN 117808967A CN 202311796136 A CN202311796136 A CN 202311796136A CN 117808967 A CN117808967 A CN 117808967A
Authority
CN
China
Prior art keywords
point cloud
points
sub
point
location
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
Application number
CN202311796136.3A
Other languages
English (en)
Inventor
K·马莫
F·A·罗比内特
A·克雷马斯基
A·图拉皮斯
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.)
Apple Inc
Original Assignee
Apple Inc
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 Apple Inc filed Critical Apple Inc
Publication of CN117808967A publication Critical patent/CN117808967A/zh
Pending legal-status Critical Current

Links

Classifications

    • 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
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image 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/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • 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/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • 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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/167Position within a video image, e.g. region of interest [ROI]
    • 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/182Methods 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 pixel
    • 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
    • H04N19/59Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/56Particle system, point based geometry or rendering

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Graphics (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • Image Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Image Generation (AREA)

Abstract

本公开的实施例涉及用于生成压缩点云的系统、方法和计算机可读介质。本发明提供了一种系统,所述系统包括被配置为压缩点云的编码器,所述点云包括多个点,每个点包括针对所述点的空间信息。所述编码器被配置为对所述点进行子采样并确定针对所述子采样点的细分位置。另外,所述编码器被配置为针对相应细分位置确定是要包括点、不包括点、还是相对所述细分位置重新定位点。所述编码器对针对所述子采样点的空间信息进行编码并对细分位置点包括/重新定位信息进行编码以生成压缩点云。解码器基于包括在所述压缩点云中的所述空间信息和所述细分位置包括/重新定位信息来重新创建原始点云的原始或近似副本。

Description

用于生成压缩点云的系统、方法和计算机可读介质
本申请是国际申请日为2018年9月5日、国际申请号PCT/US2018/049523、于2020年3月5日进入中国国家阶段、中国国家申请号201880057814.5、发明名称为“用于生成压缩点云的系统、方法和计算机可读介质”的发明专利申请的分案申请。
技术领域
本公开整体涉及点云的压缩和解压缩,这些点云包括多个点,每个点具有相关联的空间信息,并且在一些实施方案中,具有附加的属性信息。
背景技术
各种类型的传感器诸如光检测和测距(LIDAR)系统、3D相机、3D扫描仪等可以捕获指示点在三维空间中的位置(例如在X、Y和Z平面中的位置)的数据。另外,一些此类系统除了针对相应点的空间信息之外还可捕获属性信息,诸如颜色信息(例如,RGB值)、强度属性、反射率属性或各种其他属性。在一些情况下,可将其他属性分配给相应点,诸如捕获该点时的时间戳。由此类传感器捕获的点可构成“点云”,该“点云”包括各自具有相关联空间信息的一组点。在一些情况下,点云可包括数千个点、数十万个点、数百万个点或甚至更多的点。另外,在一些情况下,与由一个或多个传感器捕获的点云不同,可以例如在软件中生成点云。在任一种情况下,此类点云可包括大量数据,并且存储和传输这些点云可能成本高且耗时。
发明内容
在一些实施方案中,系统包括被配置为捕获共同构成点云的点的一个或多个传感器,其中这些点中的每个点包括识别相应点的空间位置的空间信息。该系统还包括被配置为生成压缩点云的编码器,其中该压缩点云包括针对比捕获点云的点数量少的点的空间信息,但是其中针对压缩点云中包括的点的空间信息和压缩点云中包括的附加数据以使得解码器可基于该压缩点云来重新创建捕获点云或捕获点云的极度近似的方式来进行组织。为了生成压缩点云,编码器被配置为对由所述一个或多个传感器捕获的捕获点云进行子采样,其中子采样点云包括比捕获点云少的点。编码器被进一步配置为针对子采样点云的点中的相应一些中的每个点识别子采样点云的相应点与子采样点云中的相邻点之间的位置,并基于将该位置与捕获点云进行比较,确定是要将解压缩点云中的点包括在该位置处、不包括在该位置处、还是相对于该位置重新定位。编码器被进一步配置为对针对压缩点云的数据进行编码,该数据包括针对子采样点云的点的空间信息以及指示针对相应位置中的每个是要将相应点包括在该位置处、不包括在该位置处、还是相对于解压缩点云中的位置重新定位的数据。在一些实施方案中,系统可省略所述一个或多个传感器,并且编码器可从另一个系统的传感器或从另一个源接收待压缩的原始点云。
在一些实施方案中,方法包括对点云进行子采样,其中该子采样点云包括比该点云少的点。该方法还包括在子采样之前针对子采样点云的点中的相应一些中的每个点将子采样点云的相应点与子采样点云中的相邻点之间的位置进行比较,并且基于该比较确定是要将点包括在该位置处、不包括在该位置处、还是相对于解压缩点云中的位置重新定位。该方法还包括对数据进行编码,该数据包括针对子采样点云的点的空间信息以及指示针对相应位置中的每个是要将相应点包括在该位置处、不包括在该位置处、还是相对于解压缩点云中的位置重新定位的数据。
在一些实施方案中,非暂态计算机可读介质存储程序指令,当这些程序指令由一个或多个处理器执行时使所述一个或多个处理器实现被配置为接收压缩点云的解码器,其中该压缩点云包括针对子采样点云的点的空间信息,以及指示针对子采样点云的相应点与子采样点云中的相应相邻点之间的多个相应位置中的每个是要将点包括在该相应位置处、不包括在该相应位置处、还是相对于解压缩点云中的相应位置重新定位的数据。当被执行时,这些程序指令还使得解码器针对子采样点云的点中的相应一些中的每个点识别子采样点云中的相应点与相邻点之间的相应位置,并且基于接收到的压缩点云中包括的数据确定是在该相应位置处包括、不包括、还是重新定位点。当被执行时,这些程序指令还使得解码器生成解压缩点云,其中该解压缩点云包括子采样点云的点和确定要包括在相应位置处或相对于相应位置重新定位的相应点。
附图说明
图1A示出了根据一些实施方案的包括捕获针对点云的点的信息的传感器和压缩点云的编码器的系统,其中该压缩点云被发送至解码器。
图1B示出了根据一些实施方案的用于对压缩点云进行编码的过程。
图1C示出了根据一些实施方案的点云在编码过程的不同阶段处的代表性视图。
图2A示出了根据一些实施方案的编码器的部件。
图2B示出了根据一些实施方案的解码器的部件。
图3示出了根据一些实施方案的示例性压缩点云文件的组成部分。
图4示出了根据一些实施方案的用于对压缩点云进行编码的过程。
图5示出了根据一些实施方案的用于在对压缩点云进行编码时确定子采样点云的细分位置的过程。
图6A-C示出了根据一些实施方案的用于对压缩点云进行解码的过程。
图7示出了根据一些实施方案的在3D远程显示应用中正在使用的压缩点云。
图8示出了根据一些实施方案的在虚拟现实应用中正在使用的压缩点云。
图9示出了根据一些实施方案的可实现编码器或解码器的示例性计算机系统。
本说明书包括参考“一个实施方案”或“实施方案”。出现短语“在一个实施方案中”或“在实施方案中”并不一定是指同一个实施方案。特定特征、结构或特性可以与本公开一致的任何合适的方式被组合。
“包括”。该术语是开放式的。如在所附权利要求书中所使用的,该术语不排除附加结构或步骤。考虑以下引用的权利要求:“一种包括一个或多个处理器单元...的装置”此类权利要求不排除该装置包括附加部件(例如,网络接口单元、图形电路等)。
“被配置为”。各种单元、电路或其他部件可被描述为或叙述为“被配置为”执行一项或多项任务。在此类上下文中,“被配置为”用于通过指示单元/电路/部件包括在操作期间执行这一项或多项任务的结构(例如,电路)来暗指该结构。如此,单元/电路/部件据称可被配置为即使在指定的单元/电路/部件当前不可操作(例如,未接通)时也执行该任务。与“被配置为”语言一起使用的单元/电路/部件包括硬件——例如电路、存储可执行以实现操作的程序指令的存储器等。引用单元/电路/部件“被配置为”执行一项或多项任务明确地旨在针对该单元/电路/部件不援引35U.S.C.§112(f)。此外,“被配置为”可包括由软件和/或固件(例如,FPGA或执行软件的通用处理器)操纵的通用结构(例如,通用电路)以能够执行待解决的一项或多项任务的方式操作。“被配置为”还可包括调整制造过程(例如,半导体制作设施),以制造适用于实现或执行一项或多项任务的设备(例如,集成电路)。
“第一”“第二”等。如本文所用,这些术语充当它们所在之前的名词的标签,并且不暗指任何类型的排序(例如,空间的、时间的、逻辑的等)。例如,缓冲电路在本文中可被描述为执行“第一”值和“第二”值的写入操作。术语“第一”和“第二”未必暗指第一值必须在第二值之前被写入。
“基于”。如本文所用,该术语用于描述影响确定的一个或多个因素。该术语不排除影响确定的附加因素。即,确定可仅基于这些因素或至少部分地基于这些因素。考虑短语“基于B来确定A”。在这种情况下,B为影响A的确定的因素,此类短语不排除A的确定也可基于C。在其他实例中,可仅基于B来确定A。
具体实施方式
随着数据采集和显示技术变得更加先进,已增强了(诸如通过LIDAR系统)捕获包括2D或3D空间中成千上万个点的点云的能力。另外,先进显示技术诸如虚拟现实或增强现实系统的发展已增加点云的潜在用途。然而,点云文件通常非常大,并且存储和传输这些点云文件可能成本高且耗时。例如,点云通过私有网络或公共网络(诸如互联网)的通信可能需要相当大量的时间和/或网络资源,使得点云数据的一些使用(诸如实时使用)可能受到限制。另外,点云文件的存储需求可能消耗存储点云文件的设备的显著量的存储容量,这也可能限制潜在应用使用点云数据。
在一些实施方案中,编码器可用于生成压缩点云以降低与存储和传输大的点云文件相关联的成本和时间。在一些实施方案中,系统可包括压缩点云文件的编码器,使得点云文件可比非压缩点云更快地被存储和传输,并且以点云文件可比非压缩点云占据少的存储空间的方式被存储和传输。在一些实施方案中,点云压缩可使点云能够实时地或几乎实时地通过网络进行通信。例如,系统可包括传感器,该传感器捕获关于该传感器所在环境中的点的数据,其中捕获的点构成点云。该系统还可包括压缩该捕获点云的编码器。该压缩点云可实时地或几乎实时地通过网络被发送至解压该压缩点云的解码器。该解压缩点云可被进一步处理,例如以基于传感器位置处的周围环境做出控制决策。然后可将控制决策传送回传感器位置处或其附近的设备,其中接收控制决策的设备实时地或几乎实时地实现控制决策。在一些实施方案中,解码器可以与增强现实系统相关联,并且解压缩点云可以由增强现实系统显示或以其他方式使用。
在一些实施方案中,系统可包括解码器,该解码器经由网络从远程服务器或存储一个或多个点云文件的其他存储设备处接收所述一个或多个点云文件。例如,可以实时地或几乎实时地操纵3D显示器、全息显示器或头戴式显示器,以显示由点云表示的虚拟世界的不同部分。为了更新3D显示器、全息显示器或头戴式显示器,与解码器相关联的系统可以基于显示器的用户操纵从远程服务器请求点云文件,并且这些点云文件可以从远程服务器传输到解码器并由解码器实时地或几乎实时地进行解码。然后可用响应于用户操纵用的更新点云数据来更新显示器。
在一些实施方案中,系统可包括一个或多个LIDAR系统、3D相机、3D扫描仪等,并且此类传感器设备可捕获空间信息,诸如传感器设备的视图中的点的X、Y和Z坐标。在一些实施方案中,空间信息可相对于局部坐标系或可相对于全局坐标系(例如,笛卡尔坐标系可具有固定参考点诸如地球上的定点,或者可具有不固定的局部参考点诸如传感器位置)。在一些实施方案中,此类传感器还可捕获这些点中的一个或多个点的属性信息,诸如颜色属性、反射率属性、速度属性、加速度属性、时间属性和/或各种其他属性。
在一些实施方案中,编码器可接收待压缩的点云,并且可对该点云进行子采样以生成子采样点云。例如,在一些实施方案中,点云可包括一百万个点,并且通过对点云进行子采样而生成的子采样点云可包括少至1,000或2,000个点。在一些实施方案中,可以统一的点间隔或统一的距离执行子采样。例如,在一些实施方案中,子采样可包括在子采样点云中包括点云的每第100、第1000或第N个点,或可包括在子采样点云中包括X、Y或Z方向上距离每D个增量的点。在一些实施方案中,子采样可包括过滤点云中的点,例如以降低混叠。在一些实施方案中,可使用其他子采样技术。
一旦生成子采样点云,编码器就可针对子采样点云的多个相应点中的每个点识别一组一个或多个相邻点。例如,编码器可选择子采样点云中的第一点,并且可识别子采样点云中与正在评估的所选点最近的一组相邻点。对于所识别的相邻点中的每个点,编码器可确定正在评估的所选点与该组最近相邻点的相应相邻点之间的细分位置。该编码器还可将正在评估的点与相应相邻点之间的细分位置与子采样之前的原始点云进行比较。如果该位置在原始点云中包括的点的范围内,则编码器可确定要在细分位置处将点包括在解压缩点云中,并且可在针对压缩点云进行编码的数据中包括指示在细分位置处包括点的指示。如果该位置在原始点云中包括的点的范围之外,则编码器可确定将不在解压缩点云中的细分位置处包括点,并且可在针对压缩点云的数据中包括此类指示。另外,编码器可确定点在要包括在解压缩点云中的范围内,但是与原始点云中包括的点相距一定距离。在此类情况下,编码器可在针对压缩点云的数据中包括信息,该信息指示要相对于解压缩点云中的细分位置重新定位点。例如,编码器可将原始点云中与细分位置相邻的点的位置与细分位置的位置进行比较,以确定要如何相对于该细分位置重新定位点。编码器可针对为正在评估的所选点所识别的该组相邻点中的每个所识别的相邻点继续该过程。然后编码器可针对子采样点云中要被评估的下一个点重复类似过程,直到已经评估子采样点云中的至少显著部分的点。
另外,编码器可比较子采样点云和确定要包括在子采样点云(例如,细分)的点之间的相应位置处的点或相对于细分处的相应位置要重新定位的点,并且可确定解压缩点云中要包括一个或多个附加点以准确表示原始点云。在一些实施方案中,针对所述一个或多个附加点的空间信息可显式编码在针对压缩点云的数据中。
在一些实施方案中,编码器可执行确定要定位或重新定位在子采样点云的细分位置处的点的多次迭代,并且可执行确定要包括在解压缩点云中的一个或多个附加点的多次迭代。例如,编码器可更新子采样点云以在细分位置处包括确定要包括在解压缩点云中的点、以包括确定要相对于细分位置重新定位的点,并且以包括确定要包括在解压缩点云中的附加点。然后编码器可通过选择更新的子采样点云中包括的点中的相应一些、识别所选点的最近相邻点,并确定在所选点与最近相邻点之间的细分位置处是包括、不包括、还是重新定位点来重复细分过程。编码器还可基于比较更新的子采样点云(包括确定要包括在新细分位置处的任何点)来确定是否要将一个或多个附加点包括在解压缩点云中。编码器可重复该过程达多次迭代。在一些实施方案中,编码器和解码器可按照预先指定或确定的待执行的细分迭代数量(N)执行迭代。在一些实施方案中,待执行的细分迭代数量(N)可以是用户可配置参数,或可以是在编码器中基于正在处理的点云数据确定的参数,或是它们的组合。例如,在一些实施方案中,待执行的迭代数量可基于用户可配置参数与基于编码器的派生参数之间的平均值、最小值或最大值。在一些实施方案中,待执行的细分迭代数量可以是固定值。在一些实施方案中,待执行的细分迭代数量可以是预先确定的并且被编码器和解码器两者知晓。在一些实施方案中,编码器可在针对压缩点云的数据中包括指示待执行的细分迭代数量的数据。
编码器可对针对子采样点云的点的空间信息和指示是要将点包括在细分位置处、不包括在细分位置处、还是相对于细分位置重新定位的信息进行编码。另外,可对针对确定要包括在解压缩点云中的任何附加点的空间信息进行编码。
编码器还可对如上所述的配置信息进行编码,以与子采样点数据和针对压缩点云的细分点包括、不包括或重新定位数据一起被发送。例如,编码器可对指示待执行的细分迭代数量(N)、要包括在一组最近相邻点中的最近相邻点的数量(K)、识别最近相邻点时点到最近相邻点的最小距离(D0)、识别最近相邻点时点到最近相邻点的最大距离(D1)、确定是否要在细分位置处包括点时到细分的位置的阈值距离(D2)等的数据进行编码。在一些实施方案中,距离D0、D1和/或D2可被计算为正被评估的点与最近的相邻点或细分位置之间的欧几里得距离。配置信息可使解码器能够基于子采样点云的点的空间信息来重新创建与在编码器处所评估的相同的细分位置。这样,解码器可在仅接收针对原始点云的点中的一部分点的空间信息(例如,点云的子采样点的空间信息)时重新创建原始点云或原始点云的近似表示。因为压缩点云数据中包括针对少得多的点的显式空间信息,所以压缩点云数据可比针对原始或捕获点云的非压缩数据占据少的存储空间,并且可比针对原始或捕获点云的非压缩数据更快速和/或使用少的网络资源进行传输。
图1A示出了根据一些实施方案的包括捕获针对点云的点的信息的传感器和压缩被发送至解码器的点云的编码器的系统。
系统100包括传感器102和编码器104。传感器102捕获点云110,该点云包括表示传感器102的视图108中的结构106的点。例如,在一些实施方案中,结构106可以是山脉、建筑、标牌、街道周围的环境或任何其他类型的结构。在一些实施方案中,捕获点云(诸如捕获点云110)可包括针对包括在该点云中的点的空间和/或属性信息。例如,捕获点云110的点A包括X、Y、Z坐标以及属性1、2和3。在一些实施方案中,点的属性可包括属性诸如R、G、B颜色值、结构在该点处的速度、结构在该点处的加速度、结构在该点处的反射率、指示何时捕获该点的时间戳或其他属性。捕获点云110可提供给编码器104,其中编码器104生成该点云的压缩版本(压缩点云112),该压缩版本经由网络114传输到解码器116。
在一些实施方案中,编码器104可与传感器102成一体。例如,编码器104可在包括在传感器设备(诸如传感器102)中的硬件或软件中实现。在其他实施方案中,编码器104可在邻近传感器102的独立计算设备上实现。
图1B示出了根据一些实施方案的用于对压缩点云进行编码的过程。另外,图1C示出了根据一些实施方案的点云在编码过程的不同阶段处的代表性视图。
在152处,编码器(诸如编码器104)接收捕获点云,诸如图1A中示出的捕获点云110或图1C中示出的捕获点云154。需注意,为了便于说明,以二维示出了捕获点云110和154,但是在一些实施方案中,可包括三维点云。
在156处,编码器对点云进行子采样以生成子采样点云。例如,图1C示出了子采样点云158。在一些实施方案中,编码器可统一地对点云进行采样以生成子采样点云。例如,编码器可在点云中以统一的间隔选择点以生成子采样点云。在一些实施方案中,编码器可在对要用于生成解压缩的子采样点云的子采样点云的空间信息进行编码时使用有损压缩算法。在一些此类实施方案中,编码器可使用有损压缩算法对子采样点云进行编码,并且可在编码器处对有损编码的子采样点云进行解码以生成代表性子采样点云,在解码针对根据有损压缩算法进行编码的子采样点云的点的空间信息时,解码器将遇到该代表性子采样点云。在一些实施方案中,编码器可使用无损压缩算法来对针对子采样点云的点的空间信息进行编码,并且编码器可省略对子采样点云的编码和解码以生成解码器要遇到的代表性子采样点云。这是因为当使用无损压缩算法时,该子采样点云代表解码器在对针对根据无损压缩算法编码的子采样点云的点的空间信息进行解码时将遇到的代表性子采样点云。
在160处,编码器识别子采样点云的相应点与子采样点云的相应点的相邻点之间的细分位置。例如,如图1C的162中所示。在164处,编码器确定是要在细分位置处将点包括在解压缩点云中、不在细分位置处将点包括在解压缩点云中、还是相对于细分位置在解压缩点云中重新定位点。例如,如图1C的166中所示。
在一些实施方案中,可在给定点与到该给定点的一组相邻点中的相应一些之间确定多个细分位置,并且可针对所述多个细分位置中的每个确定是要在细分位置处将点包括在解压缩点云中、不在细分位置处将点包括在解压缩点云中、还是相对于细分位置在解压缩点云中重新定位点。在每种情况下,可基于将细分位置与子采样之前的原始点云进行比较来确定包括点、不包括点或相对于细分位置重新定位点的确定。例如,如果细分位置落在原始点云的表面上,则编码器可确定应在解压缩点云中的细分位置处包括点。相反地,如果细分位置大于到原始点云的表面的阈值距离,则编码器可确定不在细分位置处包括点。如果细分位置在原始点云的表面的阈值范围内,但将需要进行调整以与原始点云的表面对准,则编码器可确定将相对于细分位置在解压缩点云中重新定位点,使得该重新定位点与原始点云更接近地对准。
在一些实施方案中,除了空间信息之外,编码器还可对时间信息进行编码。例如,每个点可能具有与该点相关联的时间属性,诸如捕获该点的时间。在其中正在对时间信息进行编码的一些实施方案中,例如,编码器还可基于时间信息(诸如点云是否已在细分位置处从一个时间增量改变为下一个时间增量)确定是包括点、不包括点、还是相对于细分位置重新定位点。或者,可基于是否在较早的时间点在细分位置处将点包括在解压缩点云的先前版本中。
在一些实施方案中,编码器可确定要包括在解压缩点云中的一个或多个附加点。例如,如果原始捕获点云具有不规则的表面或形状,使得子采样点云中的点之间的细分位置未充分表示该不规则的表面或形状,则编码器可确定除了确定要包括在细分位置处的点或相对于解压缩点云中的细分位置重新定位的点之外还包括一个或多个附加点。在一些实施方案中,除了包括在针对压缩点云的数据中的子采样点之外,还可以对表示附加点的数据进行显式编码。
在一些实施方案中,编码器可针对子采样点云中的每个点执行160和164。另外,在一些实施方案中,编码器可添加确定要包括或相对于某个位置重新定位的任何点以及确定要包括在解压缩点云中的任何其他附加点以生成更新的子采样点云。然后编码器可针对更新的子采样点云的点中的每个点执行160和164。在一些实施方案中,编码器可继续遍历160和164,并更新子采样点云达特定的迭代数量,例如指定的或确定的参数(N)。在一些实施方案中,待执行的细分迭代数量可以是在编码器处配置并与压缩点云一起传送至解码器的可配置参数。在一些实施方案中,编码器和解码器可被配置为执行固定数量的细分迭代。
一旦编码器已完成评估相应细分位置以确定是要在相应细分位置中的每个位置处包括点、不包括点还是重新定位点并且已遍历该过程达按照迭代参数要求的所有细分迭代,在168处,该编码器就可对针对子采样点云的点的空间信息和/或属性信息进行编码,并且还可对针对相应细分位置中的每个位置指示是要在相应细分位置处包括点、还是不包括点的数据进行编码。对于要在解压缩点云中重新定位的点,编码器还可对指示如何相对于细分位置重新定位该点的位置校正数据进行编码。在一些实施方案中,编码器可另外对针对要添加到解压缩点云的附加点的空间和/或属性信息进行编码,并且可对其他配置信息进行编码。
例如,图1C的166示出了在细分位置处正在重新定位以与原始捕获点云对准的点。在一些实施方案中,该位置校正信息可被编码为相对于细分位置的ΔX、ΔY或ΔZ空间信息。在其他实施方案中,该位置校正信息可被编码为标量值,该标量值可经由从细分位置到重新定位位置的向量与在细分位置处的法向量之间的点积来确定,其中在将点重新定位到重新定位位置之前,法向量垂直于子采样点云的表面。在一些实施方案中,可以对位置校正数据进行算术编码或根据Golomb编码技术或其他合适的无损编码技术进行编码。
在一些实施方案中,除了空间信息之外,编码器还可对时间信息进行编码。例如,每个点可能具有与该点相关联的时间,例如捕获该点的时间。在其中正在对时间信息进行编码的一些实施方案中,例如,编码器还可基于时间信息(诸如点云是否已在细分位置处从一个时间增量改变为下一个时间增量)确定是包括点、不包括点、还是相对于细分位置重新定位点。又如,编码器可确定包括在原始(非压缩)点云中的特定时间增量处的在原始点云中的先前时间增量(例如帧)处不出现和/或在原始点云中的后续时间增量(例如帧)处不出现的点是不重要点。响应于此类确定,编码器可确定不需要在与原始点云中的该点相对应的细分位置处包括点。当确定是否相对于细分位置重新定位点和/或确定是否在点云中包括针对附加点的空间信息时,编码器可以利用类似的时间考虑因素。
另外,可对针对确定要包括在解压缩点云中的任何附加点的空间信息进行编码,并将该空间信息包括在压缩点云中。另外,指示可配置参数诸如在确定细分位置时要包括在针对点的一组最近相邻点中的最近相邻点的数量(K)、所选点距最近相邻点的最小距离(D0)、所选点距最近相邻点的最大距离(D1)、所选点距细分位置的最小距离(D2)、所选点与距细分位置的最近相邻点(例如,中点)之间的距离(M)、待执行的细分迭代数量(N)等的数据可包括在从编码器发送至解码器的压缩点云中或者可包括在待存储并随后由解码器进行解码的压缩点云中。在一些实施方案中,可使用各种编码技术对包括在压缩点云中的该附加信息进行编码。例如,可使用算术编码、Golomb编码或其他合适的无损或有损编码技术。
因为压缩点云包括针对子采样点的空间信息、指示在细分位置处包括或不包括点的数据、指示要相对于细分位置重新定位的任何点的重新定位的数据、针对要包括的任何附加点的空间信息以及编码器使用的配置信息,所以解码器可通过执行与编码器类似的分析来重新创建原始捕获点云或原始捕获点云的近似副本。例如,解码器可使用与编码器相同的配置参数来确定细分位置,并且可按照包括在压缩点云中的确定来包括点、不包括点或在细分位置处重新定位点。另外,解码器可基于针对包括在压缩点云中的附加点的空间信息来包括附加点。解码器还可基于时间参数(诸如在多帧点云中帧之间的点位置变化)来确定是否包括附加点。
图2A示出了根据一些实施方案的编码器的部件。
编码器202可以是与图1A中示出的编码器104类似的编码器。编码器202包括子采样器216、有损编码器204和有损解码器210。如上所述,在一些实施方案中,可使用有损编码算法对子采样点云的点的空间信息进行编码。因此,编码器(诸如编码器202)可例如经由传入数据接口214接收点云,并且可经由子采样器(诸如子采样器216)对接收到的点云进行子采样以生成子采样点云。编码器然后可对子采样点云进行有损编码和有损解码(例如经由有损编码器204和有损解码器210)以生成表示子采样点云的代表性子采样点云,解码器在接收到包括已进行有损编码的子采样点的压缩点云时将生成该代表性子采样点云。
在一些实施方案中,编码器(诸如编码器202)还可包括配置接口(诸如配置接口212),其中编码器用来压缩点云的一个或多个参数可经由配置接口进行调整。在一些实施方案中,配置接口(诸如配置接口212)可为程序化接口,诸如API。编码器(诸如编码器202)所使用的配置可存储在配置存储库(诸如配置存储库218)中。细分评估仪(诸如细分位置评估仪206)可执行细分位置评估以确定是应包括点、不包括点、还是相对于细分位置重新定位点。另外,细分位置评估仪可确定要包括在解压缩点云中的任何附加点,该解压缩点云由编码器进行编码的压缩点云中包括的数据生成。
一旦已确定细分位置决策信息并且已确定要包括在解压缩点云中的任何附加点,就可经由传出数据编码器(诸如传出数据编码器208)对针对子采样点云的点的空间信息、指示细分位置决策信息的数据、重新定位信息、针对要包括在解压缩点云中的任何附加点的空间信息以及用于对压缩点云进行解码的配置信息进行编码。在一些实施方案中,传出数据编码器可根据各种编码技术诸如算术编码、Golomb编码、各种无损编码技术或有损编码技术中的任何一种对传出数据进行编码。在一些实施方案中,可根据有损编码技术对针对点的空间信息进行编码,同时可根据无损编码技术对针对要相对于细分位置重新定位的点的重新定位信息进行编码。在一些实施方案中,可使用特定的编码技术对包括一些字符的重新定位信息进行编码,同时可使用不同的编码技术对包括更多字符的重新定位信息进行编码。
在一些实施方案中,编码器(诸如编码器202)可包括比图2A所示多或少的部件。例如,在使用无损编码技术对空间信息进行编码的一些实施方案中,可省略有损编码器204和有损解码器210。
图2B示出了根据一些实施方案的解码器的部件。
解码器220可以是与图1A中示出的解码器116类似的解码器。解码器220包括编码的数据接口224、子采样解码器222、细分点评估仪226、配置存储库230和解码数据接口228。
解码器(诸如解码器220)可经由编码的数据接口(诸如编码的数据接口224)接收来自编码器的编码的压缩点云(诸如图1A中示出的压缩点云112或图3中示出的压缩点云文件300)。解码器可对该编码的压缩点云进行解码并将其用于确定子采样点云的点。例如,子采样点云的点的空间信息可由子采样解码器(诸如子采样解码器222)进行解码。在一些实施方案中,可经由编码的数据接口(诸如编码的数据接口224)从存储设备或其他中间源接收压缩点云,其中该压缩点云先前由编码器(诸如编码器104)进行编码。
一旦确定了子采样点云,细分点评估仪(诸如细分点评估仪226)就可确定所确定的子采样点云的相应点的相邻点,并且可确定相应点与相应相邻点之间的细分位置。该细分评估仪还可接收包括在压缩点云中的解码数据,该解码数据指示是要在特定的细分位置处包括点还是不包括点,或是否要相对于该细分位置重新定位该点。在一些实施方案中,子采样解码器222还可经由有损或无损技术对指示是要在特定的细分位置处包括点还是不包括点和/或重新定位信息的编码数据进行解码,并将解码的数据提供给细分点评估仪226。细分评估仪可基于存储在配置存储库(诸如配置存储库230)中的参数来确定细分位置。在一些实施方案中,配置中的至少一些配置可以是在编码器处配置并与压缩点云一起传送至解码器的可配置参数。在一些实施方案中,参数中的至少一些参数可以是不与压缩点云一起传送的固定参数。在一些实施方案中,可对与压缩点云一起包括的可配置参数进行解码并将其添加到配置存储库(诸如配置存储库230),使得在确定细分位置时由细分点评估仪226使用这些可配置参数。在一些实施方案中,细分点评估仪和/或子采样解码器可进一步对针对要包括在解压缩点云中的任何附加点的空间信息进行解码,其中针对这些附加点的空间信息包括在由解码器接收到的编码的压缩点云中。
解码器(诸如解码器220)可经由解码的数据接口(诸如解码的数据接口228)向接收设备或应用程序提供基于接收到的编码的压缩点云生成的解压缩点云。该解压缩点云可包括子采样点云的点、要包括在细分位置处或相对于细分位置重新定位的任何点,以及被指示要包括在解压缩点云中的任何附加点。在一些实施方案中,解压缩点云可用于生成视觉显示,诸如用于头戴式显示器。另外,在一些实施方案中,可将解压缩点云提供给决策引擎,该决策引擎使用解压缩点云来做出一个或多个控制决策。在一些实施方案中,解压缩点云可用于各种其他应用或用于各种其他目的。
图3示出了根据一些实施方案的示例性压缩点云文件。点云文件300包括配置信息304、点云数据306、细分位置点包括/重新定位数据308,以及要包括在解压缩点云310中的附加点。在一些实施方案中,点云文件300可经由多个数据包分批地传送。在一些实施方案中,并非点云文件300中所示的所有部分都可被包括在传输压缩点云信息的每个数据包中。在一些实施方案中,点云文件(诸如点云文件300)可被存储在存储设备(诸如实现编码器或解码器的服务器)中,或者可被存储在另一计算设备中。
图4示出了根据一些实施方案的用于对压缩点云进行编码的过程。
在402处,编码器接收点云。该点云可以是来自一个或多个传感器的捕获点云,或者可以是生成的点云(诸如由图形应用程序生成的点云)。
在404处,编码器对接收到的点云进行子采样以生成子采样点云。该子采样点云可包括比该接收到的点云少的点。例如,接收到的点云可包括数十万个点或数百万个点,并且子采样点云可包括数百个点或数千个点。
在406处,编码器对子采样点云进行编码和解码,以生成解码器在对压缩点云进行解码时将生成的代表性子采样点云。在一些实施方案中,编码器和解码器可执行有损压缩/解压缩算法以生成代表性子采样点云。在一些实施方案中,可将针对子采样点云的点的空间信息量化,作为生成代表性子采样点云的一部分。在一些实施方案中,编码器可利用无损压缩技术,并且可省略406。例如,当使用无损压缩技术时,原始子采样点云可表示解码器将生成的子采样点云,因为在无损压缩中,数据可能不会在压缩和解压缩期间丢失。
在408处,编码器根据为压缩点云选择的配置参数或根据固定的配置参数来识别子采样点云的点之间的细分位置。由编码器使用的非固定的配置参数的配置参数通过在压缩点云中包括这些配置参数的值来传送至解码器。因此,解码器可基于包括在压缩点云中的细分配置参数来确定与编码器评估的相同的细分位置。图5更详细地讨论编码器如何根据配置参数来识别细分位置。
在410处,编码器针对细分位置中的相应一些确定是要在解压缩点云中的细分位置处包括点还是不包括点。指示此确定的数据编码在压缩点云中。在一些实施方案中,指示该确定的数据可以是单个位,如果“真”,则该单个位意味着将要包括点,如果“假”,则该单个位意味着将不包括点。另外,编码器可确定要包括在解压缩点云中的点将相对于解压缩点云中的细分位置重新定位。针对此类点,编码器还可对指示如何相对于细分位置重新定位点的数据进行编码。在一些实施方案中,位置校正信息可以被量化并进行熵编码。在一些实施方案中,位置校正信息可包括ΔX、ΔY和/或ΔZ值,这些值指示如何相对于细分位置重新定位该点。在其他实施方案中,位置校正信息可包括单个标量值,该单个标量值对应于位置校正信息的法向分量,其计算如下:
ΔN=([XA,YA,ZA]-[X,Y,Z])·[法向量]
在以上公式中,ΔN是指示位置校正信息的标量值,该标量值是相对于细分位置重新定位或调整的点位置(例如[XA,YA,ZA])与原始细分位置(例如[X,Y,Z])之间的差值。该向量差与细分位置处的法向量的向量积产生标量值ΔN。因为解码器可确定细分位置处的法向量,并且可确定细分位置的坐标(例如[X,Y,Z]),通过针对经调整位置解出上述公式,该解码器还能确定经调整位置的坐标(例如[XA,YA,ZA]),该坐标表示点相对于细分位置的经重新定位位置。在一些实施方案中,位置校正信息可进一步分解为垂直分量和一个或多个附加切向分量。在此类实施方案中,可对垂直分量(例如,ΔN)和所述一个或多个切向分量进行量化和编码以包括在压缩点云中。
在412处,编码器确定是否要将一个或多个附加点(除了子采样点之外和除了包括在细分位置处的点或在相对于细分位置重新定位的位置处包括的点之外)包括在解压缩点云中。例如,如果原始点云具有不规则的表面或形状,使得子采样点云中的点之间的细分位置未充分表示该不规则的表面或形状,则编码器可确定除了确定要包括在细分位置处的点或相对于解压缩点云中的细分位置重新定位的点之外还包括一个或多个附加点。另外,编码器可基于系统约束诸如目标比特率、目标压缩率、质量目标度量等来确定是否要将一个或多个附加点包括在解压缩点云中。在一些实施方案中,位预算可由于条件诸如网络条件、处理器负载等的变化而改变。在一些实施方案中,编码器可基于变化的位预算来调整要包括在解压缩点云中的一定量的附加点。在一些实施方案中,编码器可包括附加点,使得在不超出位预算的情况下消耗位预算。例如,当位预算较高时,编码器可包括更多的附加点以消耗位预算(并提高质量),并且当位预算较小时,编码器可包括较少的附加点,使得在不超出位预算的情况下消耗位预算。
在414处,编码器确定是否要执行附加的细分迭代。如果要,则考虑到确定要包括、重新定位或附加地包括在解压缩点云中的点,并且该过程返回至408,以识别更新的子采样点云的新细分位置,该更新的子采样点云包括确定要包括、重新定位或附加地包括在解压缩点云中的点。在一些实施方案中,待执行的细分迭代数量(N)可以是编码器/解码器的固定或可配置参数。在一些实施方案中,可将不同的细分迭代值分配给点云的不同部分。例如,编码器可考虑正从其查看点云的点视图,并且可对该点云在从该点视图查看的该点云的前景中的点执行更多的细分迭代,并且可对在从该点视图查看的点云的后景中的点执行较少的细分迭代。
在416处,对针对点云的子采样点的空间信息进行编码并将其包括在压缩点云中。另外,对细分位置包括和重新定位数据进行编码并将其与针对要包括在解压缩点云中的任何附加点的空间信息一起包括在压缩点云中。另外,由编码器选择或从用户提供给编码器的任何可配置参数都被编码为与压缩点云一起包括。然后,可将压缩点云作为一个压缩点云文件、多个压缩点云文件发送至接收实体,或者可将压缩点云打包并经由多个数据包传送至接收实体,诸如解码器或存储设备。
图5示出了根据一些实施方案的用于对子采样点云进行细分的过程。图5中示出的步骤502至步骤512可作为识别细分位置(诸如图4中的408中)的一部分来执行。
在502处,细分位置评估仪(诸如图2A中示出的编码器202的细分位置评估仪206)从子采样点云(诸如从图4中的404处进行子采样所得的子采样点云或诸如从图4中的406所得的代表性子采样点云)中选择所选点。在一些实施方案中,可对子采样点云的点进行排序,并且细分位置评估仪可选择该顺序中的第一(或下一个)点。子采样点可按相同的顺序传送至解码器,使得解码器按与由编码器选择子采样点云或代表性子采样点云以进行评估的相同顺序从这些子采样点云或代表性子采样点云中选择待评估的点。
在504处,细分位置评估仪识别距所选点的最近相邻点(或在后续迭代中,识别下一个最近相邻点)。在506处,细分位置评估仪确定所识别的最近或下一个最近相邻点是否与正被评估的所选点相距至少最小距离(D0)。在一些实施方案中,D0可以是压缩点云中编码器传送至解码器的可配置参数。如果最近或下一个最近相邻点比最小距离D0更靠近正被评估的所选点,则不针对细分位置进一步评估该相邻点,并且该过程返回至504,其中选择下一个最近相邻点。
如果在506处正被评估的所识别的相邻点比最小距离更远离所选点,则在508处确定正被评估的所识别的相邻点是否比最大距离(D1)更靠近正被评估的所选点。D1也可以是压缩点云中编码器传送至解码器的可配置参数。如果正被评估的所识别的相邻点比最大距离(D1)更远离正被评估的所选点,则可不针对细分位置进一步评估正被评估的所识别的相邻点,并且该过程可返回至504,其中选择另一个相邻点,或者如果在D0和D1内没有相邻点,则该过程可完成并返回至图4的410(例如图5的512)。
在510处,对正被评估的所选点与正被评估的所识别的相邻点之间的细分位置进行评估,以确定细分位置是否至少在远离正被评估的所选点的最小距离(D2)处。在一些实施方案中,细分位置可位于正被评估的所选点与正被评估的所识别的相邻点之间的中点处。在一些实施方案中,细分位置可位于正被评估的所选点与正被评估的所识别的相邻点之间除中点之外的位置处。例如,在一些实施方案中,编码器可选择用于确定正被评估的所选点与正被评估的所识别的相邻点之间的细分位置的配置参数。该参数(M)可在压缩点云中传送至解码器。
在512处,如果细分位置大于距正被评估的所选点的最小距离D2,则该细分可以是有效的细分位置,并且编码器可确定是要在细分位置处包括点、不在细分位置处包括点、还是相对于细分位置重新定位点。需注意,512可与图4中的410相同,并且编码器可继续图4中所示的步骤412至步骤416。
图6示出了根据一些实施方案的用于对压缩点云进行解码的过程。解码器可执行与图4和图5中对于编码器所描述的类似的步骤,以基于从遵循图4和图5中所概述的类似过程的编码器接收的压缩点云中包括的信息生成解压缩点云。
在602处,解码器接收压缩点云。该压缩点云可包括针对子采样点云的点的空间信息、指示在细分位置处包括或重新定位点的信息、针对要包括在解压缩点云中的任何附加点的空间信息以及配置信息。在一些实施方案中,子采样点云可以编码格式传送至解码器。例如,针对子采样点云的点的空间信息可能已在编码器处使用算术编码技术或Golomb编码技术进行编码。在此类实施方案中,解码器可对针对子采样点云的点的编码的空间信息进行解码,使得针对子采样点云的点的空间信息可用于确定要包括在由压缩点云生成的解压缩点云中的附加点。
在604处,解码器的细分点评估仪(诸如图2B中示出的解码器220的细分点评估仪226)从在压缩点云中传送的子采样点云中选择点以针对细分位置进行评估。在后续迭代中,所选点可以是更新的子采样点云的点,该更新的子采样点云包括在确定细分位置的先前迭代中确定要包括在解压缩点云中的点。在一些实施方案中,可对子采样点云的点进行排序,使得解码器的细分点评估仪按与在编码器处对这些点进行评估的相同顺序来选择待评估的子采样点云的点。
在606处,解码器的细分点评估仪识别距正被评估的子采样点云的所选点最近的(或下一个最近的)相邻点。在608处,解码器的细分点评估仪确定所选的相邻点是否至少在距正被评估的所选点的最小距离(D0)处。如果该相邻点并非至少在距正被评估的所选点的最小距离D0处,则细分点评估仪返回至606并选择另一个相邻点。如果该相邻点在比距正被评估的所选点的最小距离D0更大的距离处,则在610处,细分点评估仪确定该相邻点是否在距正被评估的所选点的最大距离D1内。如果该相邻点不在距正被评估的所选点的最大距离D1内,则细分点评估仪返回至606并选择另一个相邻点。如果在D0和D1内不存在任何相邻点,则细分点评估仪返回至604并评估另一个点。
如果相邻点在D0和D1内,则在612处,细分点评估仪确定正被评估的所选点与正被评估的当前相邻点之间的细分位置。在一些实施方案中,细分位置可以是中点,或者可位于除中点之外的位置处,其中包括在压缩点云中的配置信息指示如何在点与相邻点之间确定细分位置。在614处,解码器的细分点评估仪确定所确定的细分位置是否距正被评估的所选点至少最小距离D2。在一些实施方案中,参数D0、D1和/或D2可在压缩点云中传送,或可以是在编码器和解码器两者处相同的固定参数。如果所确定的细分位置并非至少在距正被评估的所选点的最小距离D2处,则解码器的细分点评估仪返回至606并识别另一个相邻点以进行评估。
在616处,一旦确定有效的细分位置,则细分点评估仪基于包括在压缩点云中的细分位置点包括/重新定位数据来确定是否要在细分位置处包括点。如果不在细分位置处包括点,则细分点评估仪返回至606并识别另一个相邻点以进行评估。
在618处,细分点评估仪确定是否要相对于细分位置重新定位该点。如果不重新定位该点,则在620处,细分点评估仪使点被包括在解压缩点云中的细分位置处。如果要重新定位该点,则在622处,解码器利用包括在压缩点云中的重新定位信息来相对于细分位置确定要将点包括在解压缩点云中的位置,并且在624处,解码器使得该点被包括在解压缩点云中。
在626处,解码器基于配置信息来确定是否存在要针对所选点进行评估的附加相邻点。例如,包括在压缩点云中的配置参数“K”可指示针对正被评估的给定所选点要包括在针对细分位置待评估的一组相邻点中的相邻点的数量。如果存在待评估的附加相邻点,则解码器可返回至606,并且细分点评估仪可评估与正被评估的所选点相邻的另一个相邻点。如果不存在针对所选点待评估的任何附加相邻点,则在628处,解码器可确定是否存在待评估的子采样点云的附加点。如果存在待评估的子采样点云的附加点,则解码器可返回至604并选择子采样点云的点中的下一个点以进行评估,并且可对子采样点云中的该下一个点执行上述相同的过程。在一些实施方案中,子采样点云的点可按此类顺序传送至解码器,所述此类顺序使得解码器按与在编码器处对这些点进行评估的相同顺序来选择待评估的子采样点云的点。
如果不存在待评估的子采样点云的任何附加点,则在630处,解码器可确定是否存在针对当前细分迭代要包括在解压缩点云中的任何附加点。如果存在要包括的附加点,则在632处,可包括这些附加点。如果不存在,则可跳过632。
在634处,解码器确定是否存在待执行的附加细分迭代。例如,压缩点云可包括配置参数“N”,该配置参数指示当从压缩点云生成解压缩点云时待执行的细分迭代数量。如果存在待执行的附加细分迭代,则在636处,解码器使用确定要包括在细分位置处或相对于细分位置重新定位的任何点与确定要包括在解压缩点云中的任何附加点一起来更新当前子采样点云。继更新当前子采样点云之后,解码器返回至604并使用该更新的子采样点云重复该过程以确定细分位置。
如果不存在尚待执行的任何附加细分迭代,则在638处,解码器生成解压缩点云。解压缩点云包括原始子采样点云的包括在压缩点云中的点和确定要相对于在任何细分迭代期间确定的任何细分位置包括或重新定位的任何点,以及在任何细分迭代期间确定要包括在解压缩点云中的任何附加点。
图7示出了根据一些实施方案的在3D远程显示应用中正在使用的压缩点云。
在一些实施方案中,传感器(诸如传感器102)、编码器(诸如编码器104或编码器202)和解码器(诸如解码器116或解码器220)可用于在3D远程显示应用中传送点云。例如,在702处,传感器(诸如传感器102)可捕获3D图像,并且在704处,传感器或与传感器相关联的处理器可基于感测到的数据执行3D重建以生成点云。
在706处,编码器(诸如编码器104或202)可对点云进行压缩,并且在708处,编码器或后处理器可打包压缩点云并经由网络710传输压缩点云。在712处,可在包括解码器(诸如解码器116或解码器220)的目标位置处接收数据包。在714处,解码器可对点云进行解压缩,并且在716处,可渲染解压缩点云。在一些实施方案中,3D远程显示应用可实时地传输点云数据,使得716处的显示可表示正在702处观察到的图像。例如,在716处,峡谷中的相机可允许远程用户体验穿行虚拟峡谷。
图8示出了根据一些实施方案的在虚拟现实(VR)或增强现实(AR)应用中正在使用的压缩点云。
在一些实施方案中,点云可在软件中生成(例如,与由传感器捕获相反)。例如,在802处,产生虚拟现实或增强现实内容。虚拟现实或增强现实内容可包括点云数据和非点云数据。例如,作为一个示例,非点云字符可横穿由点云表示的地形。在804处,可以压缩点云数据,并且在806处,可以打包压缩点云数据和非点云数据并经由网络808传输这些数据。例如,在802处产生的虚拟现实或增强现实内容可在远程服务器处产生并经由网络808传送至VR或AR内容消费者。在810处,数据包可在VR或AR消费者的设备处被接收并同步。在812处,在VR或AR消费者的设备处运作的解码器可对压缩点云进行解压缩,并且点云和非点云数据可例如在VR或AR消费者的设备的头戴式显示器中被实时渲染。在一些实施方案中,可响应于VR或AR消费者操纵头戴式显示器以看向不同的方向来生成、压缩、解压缩和渲染点云数据。
在一些实施方案中,如本文所述的点云压缩可用于各种其他应用诸如地理信息系统、体育赛事直播、博物馆展示、自主导航等中。
示例性计算机系统
图9示出了根据一些实施方案的示例性计算机系统900,该示例性计算机系统可实现编码器或解码器或本文所述的部件中的任何其他部件(例如,上文参考图1至图8描述的部件中的任何部件)。计算机系统900可被配置为执行上文所述的任意或全部实施方案。在不同的实施方案中,计算机系统900可为各种类型的设备中的任一者,包括但不限于:个人计算机系统、台式计算机、膝上型电脑、笔记本电脑、平板电脑、一体电脑、平板计算机或上网本计算机、大型计算机系统、手持式计算机、工作站、网络计算机、相机、机顶盒、移动设备、消费者设备、视频游戏控制器、手持式视频游戏设备、应用服务器、存储设备、电视、视频记录设备、外围设备(诸如交换机、调制解调器、路由器)、或一般性的任何类型的计算或电子设备。
本文所述的点云编码器或解码器的各种实施方案可在一个或多个计算机系统900上执行,该计算机系统可与各种其他设备交互。需注意,根据各种实施方案,上文相对于图1至图8描述的任何部件、动作或功能性可以实现于被配置为图9的计算机系统900的一个或多个计算机上。在例示的实施方案中,计算机系统900包括经由输入/输出(I/O)接口930耦接到系统存储器920的一个或多个处理器910。计算机系统900还包括耦接到I/O接口930的网络接口940,以及一个或多个输入/输出设备950,诸如光标控制设备960、键盘970和一个或多个显示器980。在一些情况下,可以想到实施方案可以利用计算机系统900的单个实例来实现,而在其他实施方案中,多个此类系统或者构成计算机系统900的多个节点可被配置为托管实施方案的不同部分或实例。例如,在一个实施方案中,一些元素可经由计算机系统900的与实现其他元素的那些节点不同的一个或多个节点来实现。
在各种实施方案中,计算机系统900可以是包括一个处理器910的单处理器系统,或者是包括若干个处理器910(例如两个、四个、八个或另一合适数量)的多处理器系统。处理器910可以是能够执行指令的任何合适的处理器。例如,在各种实施方案中,处理器910可以是实现多种指令集架构(ISA)(诸如x86、PowerPC、SPARC或MIPS ISA或任何其他合适的ISA)中的任一种的通用或嵌入式处理器。在多处理器系统中,处理器910中的每个处理器通常可以但并非必须实现相同的ISA。
系统存储器920可被配置为存储点云压缩或点云解压缩程序指令922和/或可由处理器910访问的传感器数据。在各种实施方案中,系统存储器920可使用任何合适的存储器技术来实现,诸如静态随机存取存储器(SRAM)、同步动态RAM(SDRAM)、非易失性/闪存型存储器或任何其他类型的存储器。在例示的实施方案中,程序指令922可被配置为实现结合上述功能性中的任一种的图像传感器控制应用程序。在一些实施方案中,程序指令和/或数据可被接收、发送或存储在与系统存储器920或计算机系统900分开的不同类型的计算机可访问介质上或类似介质上。虽然将计算机系统900描述为实现先前各图的功能框的功能性,但可以通过此类计算机系统实现本文描述的任何功能性。
在一个实施方案中,I/O接口930可被配置为协调设备中的处理器910、系统存储器920和任何外围设备(包括网络接口940或其它外围设备接口,诸如输入/输出设备950)之间的I/O通信。在一些实施方案中,I/O接口930可执行任何必要的协议、定时或其他数据转换以将来自一个部件(例如系统存储器920)的数据信号转换为适于由另一部件(例如处理器910)使用的格式。在一些实施方案中,I/O接口930可包括对例如通过各种类型的外围设备总线(诸如,外围部件互连(PCI)总线标准或通用串行总线(USB)标准的变型)附接的设备的支持。在一些实施方案中,I/O接口930的功能例如可被划分到两个或更多个单独部件中,诸如北桥接件和南桥接件。此外,在一些实施方案中,I/O接口930(诸如到系统存储器920的接口)的功能中的一些或全部可直接并入处理器910中。
网络接口940可被配置为允许在计算机系统900与附接到网络985的其他设备(例如,承载器或代理设备)之间或者在计算机系统900的节点之间交换数据。在各种实施方案中,网络985可包括一种或多种网络,包括但不限于局域网(LAN)(例如,以太网或企业网)、广域网(WAN)(例如,互联网)、无线数据网、某种其他电子数据网络或它们的某种组合。在各种实施方案中,网络接口940可支持例如经由有线或无线通用数据网络(诸如任何合适类型的以太网网络)的通信;经由电信/电话网络(诸如模拟语音网络或数字光纤通信网络)的通信;经由存储区域网络(诸如光纤通道SANs)、或经由任何其他合适类型的网络和/或协议的通信。
在一些实施方案中,输入/输出设备950可包括一个或多个显示终端、键盘、键区、触控板、扫描设备、语音或光学识别设备、或适于由一个或多个计算机系统900输入或访问数据的任何其他设备。多个输入/输出设备950可存在于计算机系统900中,或者可分布在计算机系统900的各个节点上。在一些实施方案中,类似的输入/输出设备可以与计算机系统900分开,并且可通过有线或无线连接(诸如通过网络接口940)与计算机系统900的一个或多个节点交互。
如图9所示,存储器920可包括程序指令922,该程序指令可以是处理器可执行的,以实现上述任何元素或动作。在一个实施方案中,程序指令可执行上文所述的方法。在其他实施方案中,可包括不同的元件和数据。需注意,数据可包括上文所述的任何数据或信息。
本领域的技术人员应当理解,计算机系统900仅仅是例示性的,而并非旨在限制实施方案的范围。具体地,计算机系统和设备可包括可执行所指出的功能的硬件或软件的任何组合,包括计算机、网络设备、互联网设备、个人数字助理、无线电话、寻呼机等。计算机系统900还可连接到未示出的其他设备,或者反之可作为独立的系统进行操作。此外,由所示出的部件所提供的功能在一些实施方案中可被组合在更少的部件中或者被分布在附加部件中。类似地,在一些实施方案中,所示出的部件中的一些部件的功能可不被提供,和/或其他附加功能可能是可用的。
本领域的技术人员还将认识到,虽然各种项目被示出为在被使用期间被存储在存储器中或存储装置上,但是为了存储器管理和数据完整性的目的,这些项目或其部分可在存储器和其他存储设备之间进行传输。另选地,在其他实施方案中,这些软件元件中的一些或全部软件可在另一设备上的存储器中执行,并且经由计算机间通信来与所示出的计算机系统进行通信。系统部件或数据结构中的一些或全部也可(例如作为指令或结构化数据)被存储在计算机可访问介质或便携式制品上以由合适的驱动器读取,其多种示例在上文中被描述。在一些实施方案中,存储在与计算机系统900分开的计算机可访问介质上的指令可经由传输介质或信号(诸如经由通信介质诸如网络和/或无线链路而传送的电信号、电磁信号或数字信号)传输到计算机系统900。各种实施方案还可包括在计算机可访问介质上接收、发送或存储根据以上描述所实现的指令和/或数据。一般来讲,计算机可访问介质可包括非暂态计算机可读存储介质或存储器介质,诸如磁介质或光学介质,例如盘或DVD/CD-ROM、易失性或非易失性介质,诸如RAM(例如SDRAM、DDR、RDRAM、SRAM等)、ROM等。在一些实施方案中,计算机可访问介质可包括传输介质或信号,诸如经由通信介质诸如网络和/或无线链路而传送的电气信号、电磁信号、或数字信号。
在不同的实施方案中,本文所述的方法可以在软件、硬件或它们的组合中实现。此外,可改变方法的框的次序,并且可对各种要素进行添加、重新排序、组合、省略、修改等。对于受益于本公开的本领域的技术人员,显然可做出各种修改和改变。本文所述的各种实施方案旨在为例示的而非限制性的。许多变型、修改、添加和改进是可能的。因此,可为在本文中被描述为单个示例的部件提供多个示例。各种部件、操作和数据存储库之间的界限在一定程度上是任意性的,并且在具体的示例性配置的上下文中示出了特定操作。预期了功能的其他分配,它们可落在所附权利要求的范围内。最后,被呈现为示例性配置中的分立部件的结构和功能可被实现为组合的结构或部件。这些和其他变型、修改、添加和改进可落入如以下权利要求书中所限定的实施方案的范围内。

Claims (10)

1.一种系统,包括:
被配置为捕获构成点云的多个点的一个或多个传感器;以及
被配置为生成压缩点云的编码器,其中为了生成所述压缩点云,所述编码器被配置为:
对由所述一个或多个传感器捕获的捕获点云进行子采样,其中所述子采样点云包括比所述捕获点云少的点;以及
针对所述子采样点云的所述点中的相应一些:
识别所述子采样点云的所述相应点与所述子采样点云中的相邻点之间的位置;以及
基于将所述位置与所述捕获点云进行比较,确定是要将解压缩点云中的点包括在所述位置处、不包括在所述位置处、还是相对于所述位置重新定位;以及
对针对所述压缩点云的数据进行编码,所述数据包括:
针对所述子采样点云的所述点的空间信息;以及
指示针对所述相应位置中的每个是要将相应点包括在所述位置处、不包括在所述位置处、还是相对于所述解压缩点云中的所述位置重新定位的数据。
2.根据权利要求1所述的系统,其中针对所述子采样点云的所述点中的所述相应一些,所述编码器被进一步配置为;
识别一组相邻点,
其中所述识别所述子采样点云的所述相应点与所述子采样点云中的相邻点之间的位置包括识别所述相应点与所述一组相邻点的所述相邻点中的相应一些之间的位置,并且
其中基于将所述位置与所述捕获点云进行比较,所述确定是要将解压缩点云中的点包括在所述位置处、不包括在所述位置处、还是相对于所述位置重新定位包括针对所述相应点与所述一组相邻点的所述相邻点中的所述相应一些之间的所述相应位置中的每个执行所述确定。
3.根据权利要求2所述的系统,其中针对所述相应点要包括在所述一组相邻点中的最近相邻点的数量是可由所述编码器配置的可配置参数,
其中所述编码器被进一步配置为对指示要包括在所述一组相邻点中的最近相邻点的所述数量的所述压缩点云数据进行编码,其中解码器在生成所述解压缩点云时使用指示要包括在所述一组相邻点中的最近相邻点的所述数量的所述编码数据。
4.根据权利要求3所述的系统,其中为了识别所述一组相邻点,所述编码器被配置为识别处于距所述相应点的距离大于距所述相应点的最小距离并且小于距所述相应点的最大距离的相邻点,其中所述最小距离和所述最大距离是可由所述编码器配置的可配置参数,其中所述编码器被进一步配置为对指示所述最小距离和所述最大距离的针对所述压缩点云的数据进行编码,其中解码器在生成所述解压缩点云时使用指示所述最小距离和所述最大距离的所述编码数据。
5.根据权利要求4所述的系统,其中最近相邻点的所述数量、所述最小距离以及所述最大距离是用户可配置参数。
6.根据权利要求1所述的系统,其中所述编码器被进一步配置为:
基于将所述捕获点云与所述子采样点、确定要包括在所述解压缩点云中的所述点以及确定要在所述解压缩点云中重新定位的所述点进行比较,确定是否要将一个或多个附加点包括在所述解压缩点云中;以及
对针对所述压缩点云的数据进行编码,所述数据包括针对要包括在所述解压缩点云中的所述一个或多个附加点的空间信息。
7.根据权利要求1所述的系统,其中所述编码器被进一步配置为:
继确定要包括在所述解压缩点云中的一个或多个点或要在所述解压缩点云中重新定位的一个或多个点之后,将所述一个或多个点或所述一个或多个重新定位的点添加到所述子采样点云,作为更新的子采样点云的点;以及
针对所述更新的子采样点云的所述点中的相应一些:
识别所述更新的子采样点云的所述相应点与所述更新的子采样点云中的相邻点之间的位置;以及
基于将所述位置与所述捕获点云进行比较,确定是要将解压缩点云中的点包括在所述位置处、不包括在所述位置处、还是相对于所述位置重新定位,
其中为了对针对所述压缩点云的数据进行编码,所述编码器被配置为对数据进行编码,所述数据包括指示针对一个或多个相应的更新的子采样点云中的每个的相应位置是要将相应点包括在所述相应位置处、不包括在所述相应位置处、还是相对于所述解压缩点云中的所述相应位置重新定位的数据。
8.一种生成压缩点云的方法,包括:
捕获构成点云的多个点,所述多个点中的每个点包括识别所述相应点的空间位置的空间信息;
对所述点云进行子采样,其中所述子采样点云包括比所述点云少的点;以及
针对所述子采样点云的所述点中的相应一些:
将所述子采样点云的所述相应点与所述子采样点云中的相邻点之间的位置与所述子采样之前的所述点云进行比较;以及
基于所述比较确定:
是要将点包括在所述位置处、不包括在所述位置处、还是相对于解压缩点云中的所述位置重新定位;以及
对数据进行编码,所述数据包括针对所述子采样点云的所述点的空间信息以及指示针对所述相应位置中的每个是要将相应点包括在所述位置处、不包括在所述位置处、还是相对于解压缩点云中的所述位置重新定位的数据。
9.根据权利要求8所述的方法,还包括:
针对所述子采样点云的所述点中的所述相应一些识别一组相邻点;
其中所述识别所述子采样点云的所述相应点与所述子采样点云中的相邻点之间的位置包括识别所述相应点与所述一组相邻点的所述相邻点中的每个之间的位置。
10.根据权利要求9所述的方法,其中所述针对所述子采样点云的所述点中的所述相应一些中的每个识别一组相邻点包括:
识别处于距所述相应点的距离大于距所述相应点的最小距离并且小于距所述相应点的最大距离的一个或多个相邻点,其中所述最小距离和所述最大距离是可由编码器配置的可配置参数。
CN202311796136.3A 2017-09-06 2018-09-05 用于生成压缩点云的系统、方法和计算机可读介质 Pending CN117808967A (zh)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US201762555003P 2017-09-06 2017-09-06
US62/555,003 2017-09-06
US16/121,501 US10462485B2 (en) 2017-09-06 2018-09-04 Point cloud geometry compression
US16/121,501 2018-09-04
CN201880057814.5A CN111052189B (zh) 2017-09-06 2018-09-05 用于生成压缩点云的系统、方法和计算机可读介质
PCT/US2018/049523 WO2019050931A1 (en) 2017-09-06 2018-09-05 COMPRESSION OF THE GEOMETRY OF A POINT CLOUD

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201880057814.5A Division CN111052189B (zh) 2017-09-06 2018-09-05 用于生成压缩点云的系统、方法和计算机可读介质

Publications (1)

Publication Number Publication Date
CN117808967A true CN117808967A (zh) 2024-04-02

Family

ID=65518420

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202311796136.3A Pending CN117808967A (zh) 2017-09-06 2018-09-05 用于生成压缩点云的系统、方法和计算机可读介质
CN201880057814.5A Active CN111052189B (zh) 2017-09-06 2018-09-05 用于生成压缩点云的系统、方法和计算机可读介质

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN201880057814.5A Active CN111052189B (zh) 2017-09-06 2018-09-05 用于生成压缩点云的系统、方法和计算机可读介质

Country Status (5)

Country Link
US (3) US10462485B2 (zh)
KR (2) KR102513867B1 (zh)
CN (2) CN117808967A (zh)
DE (1) DE112018004878T5 (zh)
WO (1) WO2019050931A1 (zh)

Families Citing this family (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10462485B2 (en) 2017-09-06 2019-10-29 Apple Inc. Point cloud geometry compression
US11818401B2 (en) 2017-09-14 2023-11-14 Apple Inc. Point cloud geometry compression using octrees and binary arithmetic encoding with adaptive look-up tables
US10897269B2 (en) 2017-09-14 2021-01-19 Apple Inc. Hierarchical point cloud compression
US10861196B2 (en) 2017-09-14 2020-12-08 Apple Inc. Point cloud compression
US11113845B2 (en) 2017-09-18 2021-09-07 Apple Inc. Point cloud compression using non-cubic projections and masks
US10909725B2 (en) 2017-09-18 2021-02-02 Apple Inc. Point cloud compression
US10438413B2 (en) * 2017-11-07 2019-10-08 United States Of America As Represented By The Secretary Of The Navy Hybrid 2D/3D data in a virtual environment
US10607373B2 (en) 2017-11-22 2020-03-31 Apple Inc. Point cloud compression with closed-loop color conversion
US10939129B2 (en) 2018-04-10 2021-03-02 Apple Inc. Point cloud compression
US10909726B2 (en) 2018-04-10 2021-02-02 Apple Inc. Point cloud compression
US10909727B2 (en) 2018-04-10 2021-02-02 Apple Inc. Hierarchical point cloud compression with smoothing
US11017566B1 (en) 2018-07-02 2021-05-25 Apple Inc. Point cloud compression with adaptive filtering
US11202098B2 (en) 2018-07-05 2021-12-14 Apple Inc. Point cloud compression with multi-resolution video encoding
US11012713B2 (en) 2018-07-12 2021-05-18 Apple Inc. Bit stream structure for compressed point cloud data
US11367224B2 (en) 2018-10-02 2022-06-21 Apple Inc. Occupancy map block-to-patch information compression
CN109889840B (zh) * 2019-03-20 2022-11-22 北京大学深圳研究生院 点云编码和解码的方法、编码设备和解码设备
US20220159261A1 (en) * 2019-03-21 2022-05-19 Lg Electronics Inc. Point cloud data transmission device, point cloud data transmission method, point cloud data reception device, and point cloud data reception method
EP3926959A4 (en) * 2019-03-21 2022-03-23 LG Electronics Inc. POINT CLOUD DATA TRANSMITTER DEVICE, POINT CLOUD DATA TRANSMITTER METHOD, POINT CLOUD DATA RECEIVE DEVICE, AND POINT CLOUD DATA RECEIVE METHOD
CN113455007B (zh) * 2019-03-22 2023-12-22 腾讯美国有限责任公司 帧间点云属性编解码的方法和装置
WO2020197086A1 (ko) * 2019-03-25 2020-10-01 엘지전자 주식회사 포인트 클라우드 데이터 송신 장치, 포인트 클라우드 데이터 송신 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법
US11057564B2 (en) 2019-03-28 2021-07-06 Apple Inc. Multiple layer flexure for supporting a moving image sensor
CN111684804B (zh) * 2019-04-30 2022-05-13 深圳市大疆创新科技有限公司 一种数据编码、数据解码方法、设备及存储介质
CN110211040B (zh) * 2019-04-30 2022-10-21 国网河南省电力公司电力科学研究院 一种基于权值的点云压缩方法和装置
GB2584119B (en) * 2019-05-22 2022-11-02 Sony Interactive Entertainment Inc Content coding system and method
WO2020246689A1 (ko) * 2019-06-05 2020-12-10 엘지전자 주식회사 포인트 클라우드 데이터 전송 장치, 포인트 클라우드 데이터 전송 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법
CN111699683B (zh) * 2019-06-13 2022-05-17 深圳市大疆创新科技有限公司 一种点云编码方法、点云解码方法及相关设备
US11711544B2 (en) 2019-07-02 2023-07-25 Apple Inc. Point cloud compression with supplemental information messages
CN114402624A (zh) * 2019-08-02 2022-04-26 Lg 电子株式会社 点云数据处理设备和方法
US11627314B2 (en) 2019-09-27 2023-04-11 Apple Inc. Video-based point cloud compression with non-normative smoothing
US11562507B2 (en) 2019-09-27 2023-01-24 Apple Inc. Point cloud compression using video encoding with time consistent patches
US11538196B2 (en) 2019-10-02 2022-12-27 Apple Inc. Predictive coding for point cloud compression
US11895307B2 (en) 2019-10-04 2024-02-06 Apple Inc. Block-based predictive coding for point cloud compression
US11798196B2 (en) 2020-01-08 2023-10-24 Apple Inc. Video-based point cloud compression with predicted patches
US11475605B2 (en) 2020-01-09 2022-10-18 Apple Inc. Geometry encoding of duplicate points
MX2022009490A (es) * 2020-02-06 2022-11-09 Pcms Holdings Inc Mejora de nube de puntos 3d con múltiples mediciones.
CN117834863A (zh) 2020-04-14 2024-04-05 Lg电子株式会社 点云数据发送设备和方法、点云数据接收设备和方法
US20230232042A1 (en) * 2020-06-05 2023-07-20 Lg Electronics Inc. Point cloud data transmission device, point cloud data transmission method, point cloud data reception device, and point cloud data reception method
US11615557B2 (en) 2020-06-24 2023-03-28 Apple Inc. Point cloud compression using octrees with slicing
US11620768B2 (en) 2020-06-24 2023-04-04 Apple Inc. Point cloud geometry compression using octrees with multiple scan orders
KR20220001312A (ko) * 2020-06-29 2022-01-05 삼성전자주식회사 무선 통신 시스템에서 데이터의 송수신을 제어하기 위한 방법 및 장치
KR102488423B1 (ko) * 2020-11-18 2023-01-13 광운대학교 산학협력단 포인트 클라우드 압축 방법
CN118075494A (zh) * 2020-12-07 2024-05-24 腾讯科技(深圳)有限公司 点云数据编码方法、解码方法、装置、设备及存储介质
TWI744147B (zh) 2020-12-24 2021-10-21 財團法人工業技術研究院 可動式機械的動作測試方法與控制主機
US11948338B1 (en) 2021-03-29 2024-04-02 Apple Inc. 3D volumetric content encoding using 2D videos and simplified 3D meshes
CN113219493B (zh) * 2021-04-26 2023-08-25 中山大学 一种基于三维激光雷达传感器的端到端点云数据压缩方法
CA3216786A1 (en) * 2021-04-29 2022-11-03 Dong Tian Learning-based point cloud compression via tearing transform
WO2023272730A1 (en) * 2021-07-02 2023-01-05 Beijing Xiaomi Mobile Software Co., Ltd. Method for encoding and decoding a point cloud
US11544419B1 (en) 2021-07-26 2023-01-03 Pointlab, Inc. Subsampling method for converting 3D scan data of an object for marine, civil, and architectural works into smaller densities for processing without CAD processing

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7224731B2 (en) * 2002-06-28 2007-05-29 Microsoft Corporation Motion estimation/compensation for screen capture video
US8179393B2 (en) * 2009-02-13 2012-05-15 Harris Corporation Fusion of a 2D electro-optical image and 3D point cloud data for scene interpretation and registration performance assessment
US8731313B2 (en) * 2009-03-23 2014-05-20 Level Set Systems, Inc. Method and apparatus for accurate compression and decompression of three-dimensional point cloud data
US9753124B2 (en) * 2009-07-13 2017-09-05 Celartem, Inc. LIDAR point cloud compression
US20110216063A1 (en) * 2010-03-08 2011-09-08 Celartem, Inc. Lidar triangular network compression
GB2477368B (en) 2010-10-11 2011-12-14 Visual Technology Services Ltd Triangle mesh compression
AU2014254426B2 (en) * 2013-01-29 2018-05-10 Andrew Robert Korb Methods for analyzing and compressing multiple images
US9530225B1 (en) * 2013-03-11 2016-12-27 Exelis, Inc. Point cloud data processing for scalable compression
US9796400B2 (en) * 2013-11-27 2017-10-24 Solfice Research, Inc. Real time machine vision and point-cloud analysis for remote sensing and vehicle control
US9476730B2 (en) * 2014-03-18 2016-10-25 Sri International Real-time system for multi-modal 3D geospatial mapping, object recognition, scene annotation and analytics
CN106133756B (zh) * 2014-03-27 2019-07-12 赫尔实验室有限公司 过滤、分割和识别对象的系统、方法及非暂时性计算机可读介质
KR102510119B1 (ko) * 2014-08-15 2023-03-15 에이아이, 아이엔씨. 레이더 전송을 위한 방법 및 시스템
US9734595B2 (en) 2014-09-24 2017-08-15 University of Maribor Method and apparatus for near-lossless compression and decompression of 3D meshes and point clouds
US20170214943A1 (en) 2016-01-22 2017-07-27 Mitsubishi Electric Research Laboratories, Inc. Point Cloud Compression using Prediction and Shape-Adaptive Transforms
US10482196B2 (en) 2016-02-26 2019-11-19 Nvidia Corporation Modeling point cloud data using hierarchies of Gaussian mixture models
DE102016106472A1 (de) 2016-04-08 2017-10-12 Dr. Ing. H.C. F. Porsche Aktiengesellschaft Verfahren zum Regeln einer Leistungselektronik
US10694210B2 (en) * 2016-05-28 2020-06-23 Microsoft Technology Licensing, Llc Scalable point cloud compression with transform, and corresponding decompression
US10223810B2 (en) * 2016-05-28 2019-03-05 Microsoft Technology Licensing, Llc Region-adaptive hierarchical transform and entropy coding for point cloud compression, and corresponding decompression
CN106504275B (zh) * 2016-10-12 2019-03-05 杭州深瞳科技有限公司 一种惯性定位与点云配准耦合互补的实时三维重建方法
US10462485B2 (en) 2017-09-06 2019-10-29 Apple Inc. Point cloud geometry compression

Also Published As

Publication number Publication date
US10462485B2 (en) 2019-10-29
US20190075320A1 (en) 2019-03-07
CN111052189B (zh) 2023-12-15
KR20220025157A (ko) 2022-03-03
KR102513867B1 (ko) 2023-03-23
US10869059B2 (en) 2020-12-15
DE112018004878T5 (de) 2020-06-18
KR102362066B1 (ko) 2022-02-14
US20200053391A1 (en) 2020-02-13
US10659816B2 (en) 2020-05-19
KR20200035133A (ko) 2020-04-01
US20200275125A1 (en) 2020-08-27
WO2019050931A1 (en) 2019-03-14
CN111052189A (zh) 2020-04-21

Similar Documents

Publication Publication Date Title
CN111052189B (zh) 用于生成压缩点云的系统、方法和计算机可读介质
US11132818B2 (en) Predicting attributes for point cloud compression according to a space filling curve
US11895307B2 (en) Block-based predictive coding for point cloud compression
US11538196B2 (en) Predictive coding for point cloud compression
US11450031B2 (en) Significant coefficient flag encoding for point cloud attribute compression
US11454710B2 (en) Point cloud compression using a space filling curve for level of detail generation
US20210264640A1 (en) Adaptive Distance Based Point Cloud Compression
US20210118190A1 (en) Point Cloud Compression
US11508095B2 (en) Hierarchical point cloud compression with smoothing
US20210119640A1 (en) Hierarchical point cloud compression

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