CN116250009A - 基于视频的点云译码的快速块生成 - Google Patents

基于视频的点云译码的快速块生成 Download PDF

Info

Publication number
CN116250009A
CN116250009A CN202180064023.7A CN202180064023A CN116250009A CN 116250009 A CN116250009 A CN 116250009A CN 202180064023 A CN202180064023 A CN 202180064023A CN 116250009 A CN116250009 A CN 116250009A
Authority
CN
China
Prior art keywords
connected components
list
point
generating
points
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
CN202180064023.7A
Other languages
English (en)
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 America LLC
Original Assignee
Tencent America LLC
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 America LLC filed Critical Tencent America LLC
Publication of CN116250009A publication Critical patent/CN116250009A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/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
    • G06T9/00Image coding
    • G06T9/001Model-based coding, e.g. wire frame
    • 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/117Filters, e.g. for pre-processing or post-processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation

Landscapes

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

Abstract

使用视频点云译码对视频流进行编码的方法和设备,包括:针对点云中的每个点确定投影平面;创建包括在点云中的原始点的列表;生成连通分量的列表;确定连通分量的数量是否大于第一阈值;基于确定连通分量的数量大于第一阈值,对连通分量进行处理并基于经处理的连通分量生成一个或更多个块;以及基于所生成的一个或更多个块来生成编码视频流,其中,基于生成连通分量的列表的结果和对连通分量进行处理的结果中的至少一者对原始点的列表进行更新。

Description

基于视频的点云译码的快速块生成
技术领域
本公开内容涉及一组先进视频译码技术,更具体地,涉及包括快速块生成的基于视频的点云压缩。
背景技术
世界的先进三维(three-dimensional,3D)表示能够实现更具沉浸感的交互和通信形式。这些先进3D表示还使得机器能够理解、解释和导航我们的世界。点云已被广泛用作世界的3D表示。例如,点云可以被用于在自主驾驶车辆中进行对象检测和定位;在地理信息系统(geographic information system,GIS)中进行地图构建;以及在文化遗产中对文化遗产对象和收藏品进行可视化和存档等。已经确认了与点云数据相关联的若干用例,并且已经开发了针对点云表示和压缩的一些对应要求。
点云包含一组高维(例如三维(3D))点,每个高维点包括3D位置信息以及诸如颜色、反射率等的附加属性。这些高维点可以利用多个摄像机和深度传感器或各种装置中的激光雷达来捕获,并且可以由数千至数十亿个点组成以真实地表示原始场景。
需要压缩技术来减少表示点云所需的数据量,以便更快地进行传输或减少存储。ISO/IEC MPEG(JTC 1/SC 29/WG 11)已经创建了ad-hoc组(MPEG-PCC),以使用于静态或动态云的压缩技术标准化。
发明内容
根据实施方式,一种使用视频点云译码对视频流进行编码的方法,该方法由至少一个处理器执行并且包括:获得点云;针对点云中的每个点确定投影平面;创建包括在点云中的原始点的列表;针对原始点的列表生成连通分量的列表;确定连通分量的列表中的连通分量的数量是否大于第一阈值;基于确定连通分量的列表中的连通分量的数量大于第一阈值,对连通分量的列表中的连通分量进行处理并基于经处理的连通分量生成一个或更多个块;以及基于所生成的一个或更多个块来生成编码视频流,其中,基于生成连通分量的列表的结果和对连通分量进行处理的结果中的至少一者对原始点的列表进行更新。
根据实施方式,一种使用视频点云译码对视频流进行编码的设备,该设备包括:至少一个存储器,其被配置成存储程序代码;以及至少一个处理器,其被配置成读取程序代码并如程序代码所指示的那样操作。程序代码包括:第一获取代码,其被配置成使至少一个处理器获得点云;第一确定代码,其被配置成使至少一个处理器针对点云中的每个点确定投影平面;创建代码,其被配置成使至少一个处理器创建包括在点云中的原始点的列表;第一生成代码,其被配置成使至少一个处理器针对原始点的列表生成连通分量的列表;第二确定代码,其被配置成使至少一个处理器确定连通分量的列表中的连通分量的数量是否大于第一阈值;处理代码,其被配置成使至少一个处理器基于确定连通分量的列表中的连通分量的数量大于第一阈值,对连通分量的列表中的连通分量进行处理并基于经处理的连通分量生成一个或更多个块;以及第二生成代码,其被配置成使至少一个处理器基于所生成的一个或更多个块来生成编码视频流,其中,基于生成连通分量的列表的结果和对连通分量进行处理的结果中的至少一者对原始点的列表进行更新。
根据实施方式,一种非暂态计算机可读介质,其存储用于使用视频点云译码来对视频流进行编码的计算机指令,所述计算机指令在由至少一个处理器执行时使该至少一个处理器进行以下操作:获得点云;针对点云中的每个点确定投影平面;创建包括在点云中的原始点的列表;针对原始点的列表生成连通分量的列表;确定连通分量的列表中的连通分量的数量是否大于第一阈值;基于确定连通分量的列表中的连通分量的数量大于第一阈值,对连通分量的列表中的连通分量进行处理并基于经处理的连通分量生成一个或更多个块;以及基于所生成的一个或更多个块来生成编码视频流,其中,基于生成连通分量的列表的结果和对连通分量进行处理的结果中的至少一者对原始点的列表进行更新。
附图说明
根据以下详细描述和附图,所公开的主题的另外的特征、性质和各种优点将更加明显,在附图中:
图1是根据实施方式的通信系统的简化框图的示意性示出。
图2是根据实施方式的流式传输系统的简化框图的示意性示出。
图3是根据实施方式的视频编码器的简化框图的示意性示出。
图4是根据实施方式的视频解码器的简化框图的示意性示出。
图5示出了根据实施方式的块生成处理的示例。
图6A至图6B示出了根据实施方式的连通分量处理的示例。
图7是示出由实施方式执行的处理的流程图。
图8是示出根据实施方式的设备的图。
图9是适于实现实施方式的计算机系统的图。
具体实施方式
基于视频的点云压缩(video-based point cloud compression,V-PCC)背后的考虑是利用现有的视频编解码器将动态点云的几何形状、占用和纹理压缩为三个单独的视频序列。解释这三个视频序列所需的额外元数据可以被分别压缩。整个比特流的一小部分是元数据,其可以使用软件实现方式来有效地编码/解码。大量信息可以由视频编解码器处理。
参照图1至图4,描述了用于实现本公开内容的编码结构和解码结构的本公开内容的实施方式。本公开内容的编码结构和解码结构可以实现上述V-PCC的各方面。
图1示出了根据本公开内容的实施方式的通信系统100的简化框图。系统100可以包括经由网络150互连的至少两个终端110、120。对于数据的单向传输,第一终端110可以在本地位置处对可以包括3D点云数据的视频数据进行编码以经由网络150传输至另一终端120。第二终端120可以从网络150接收另一终端的编码视频数据、对编码数据进行解码并且显示经恢复的视频数据。单向数据传输在媒体服务应用等中可能是常见的。
图1示出了第二对终端130、140,提供第二对终端130、140以支持例如在视频会议期间可能发生的编码视频的双向传输。对于数据的双向传输,每个终端130、140可以对在本地位置处捕获的视频数据进行编码以经由网络150传输至另一终端。每个终端130、140还可以接收由另一终端传输的编码视频数据、可以对编码数据进行解码并且可以在本地显示装置处显示经恢复的视频数据。
在图1中,终端110至140可以是例如服务器、个人计算机和智能电话以及/或者任何其他类型的终端。例如,终端(110至140)可以是膝上型计算机、平板计算机、媒体播放器和/或专用视频会议装备。网络150表示在终端110至140之间传送编码视频数据的任何数量的网络,包括例如有线和/或无线通信网络。通信网络150可以在电路交换和/或分组交换信道中交换数据。代表性网络包括电信网络、局域网、广域网和/或因特网。出于本讨论的目的,除非在下文中有所说明,否则网络150的架构和拓扑对于本公开内容的操作而言可以是不重要的。
作为所公开的主题的应用的示例,图2示出了视频编码器和解码器在流式传输环境中的放置方式。所公开的主题可以与其他支持视频的应用一起使用,所述应用包括例如视频会议、数字电视、在包括CD、DVD、存储棒等的数字介质上存储经压缩的视频等。
如图2所示,流式传输系统200可以包括捕获子系统213,捕获子系统213包括视频源201和编码器203。流式传输系统200还可以包括至少一个流式传输服务器205和/或至少一个流式传输客户端206。
视频源201可以创建例如包括与3D视频对应的3D点云的流202。视频源201可以包括例如3D传感器(例如深度传感器)或3D成像技术(例如数码摄像机)以及被配置成利用从3D传感器或3D成像技术接收的数据来生成3D点云的计算装置。与编码视频比特流相比具有较高数据量的样本流202可以由耦接至视频源201的编码器203处理。编码器203可以包括硬件、软件或其组合,以实现或实施如下面更详细地描述的所公开主题的各方面。编码器203还可以生成编码视频比特流204。与未经压缩的流202相比具有较低数据量的编码视频比特流204可以被存储在流式传输服务器205上以供将来使用。一个或更多个流式传输客户端206可以访问流式传输服务器205以检索可以作为编码视频比特流204的副本的视频比特流209。
流式传输客户端206可以包括视频解码器210和显示器212。视频解码器210可以例如对作为编码视频比特流204的传入副本的视频比特流209进行解码,并且创建可以在显示器212或另一呈现装置(未描绘)上呈现的传出视频样本流211。在一些流式传输系统中,可以根据某些视频编码/压缩标准对视频比特流204、209进行编码。这样的标准的示例包括但不限于ITU-T建议H.265、通用视频编码(Versatile Video Coding,VVC)和MPEG/V-PCC。
参照图3至图4,下面描述可以通过本公开内容的实施方式执行的V-PCC的一些方面。
图3示出了根据本公开内容的实施方式的视频编码器203的示例功能框图。在实施方式中,视频编码器203可以是基于视频的点云编码器。
如图3中所示,视频编码器203可以接收点云帧350,并且基于点云帧350生成几何图像352、纹理图像356和占用图334。视频编码器203可以将几何图像352压缩成经压缩的几何图像362、将纹理图像356压缩成经压缩的纹理图像364并且将占用图334压缩成经压缩的占用图372。视频编码器203的多路复用器328可以形成包括经压缩的几何图像362、经压缩的纹理图像364和经压缩的占用图372的经压缩的比特流374。
更具体地,在实施方式中,视频编码器203可以包括将点云帧350分割成块(patch)的块生成模块302。块是V-PCC的有用实体。块生成处理包括将点云帧350分解成最小数量的具有平滑边界的块,同时还使重建误差最小化。本公开内容的编码器可以实现各种方法来生成这样的分解。
视频编码器203可以包括执行封装处理的块封装模块304。封装处理包括将所提取的块映射到2D网格上,同时使未使用的空间最小化并且保证网格的每个M×M(例如,16×16)区块(block)与唯一的块相关联。有效块封装通过使未使用的空间最小化或确保时间一致性来直接影响压缩效率。块封装模块304可以生成占用图334。
视频编码器203可以包括几何图像生成模块306和纹理图像生成模块308。为了更好地处理多个点被投影到同一样本的情况,可以将每个块投影到两个被称为层的图像上。例如,几何图像生成模块306和纹理图像生成模块308可以利用在块封装模块304的封装处理期间计算的3D到2D映射来将点云的几何形状和纹理存储为图像(也称为层)。所生成的图像/层可以被存储为视频帧并根据作为参数提供的配置使用视频编解码器(例如HM视频编解码器)来压缩。
在实施方式中,基于输入的点云帧350和占用图334,几何图像生成模块306生成几何图像352,并且纹理图像生成模块308生成纹理图像356。在实施方式中,几何图像352可以由YUV420-8比特格式的WxH的单色帧表示。在实施方式中,占用图334图像由二值图组成,该二值图针对网格的每个格点(cell)指示它是属于空白空间还是属于点云。为了生成纹理图像356,纹理图像生成模块308可以利用经重建/平滑的几何形状358来计算要与重新采样的点相关联的颜色。
视频编码器203还可以包括图像填充模块314和图像填充模块316,以用于分别对几何图像352和纹理图像356进行填充从而形成经填充的几何图像354和经填充的纹理图像360。图像填充(也称为背景填充)仅用冗余信息来填充图像的未使用空间。良好的背景填充是最小程度地增加比特率、同时不在块边界周围引入明显编码失真的背景填充。图像填充模块314和图像填充模块316可以使用占用图334来分别形成经填充的几何图像354和经填充的纹理图像360。在实施方式中,视频编码器203可以包括组扩展模块320以形成经填充的纹理图像360。
视频编码器203可以包括视频压缩模块322和视频压缩模块324,以用于将经填充的几何图像354和经填充的纹理图像360分别压缩成经压缩的几何图像362和经压缩的纹理图像364。
视频编码器203可以包括用于对占用图334进行无损编码366的熵压缩模块318和用于对占用图334进行有损编码368的视频压缩模块326。
在实施方式中,视频编码器203可以包括平滑模块310,以用于通过使用由视频压缩模块322提供的经重建的几何形状365以及块信息332来生成经平滑的几何形状358。平滑模块310的平滑过程可以旨在减轻可能由于压缩伪影而在块边界处出现的潜在不连续性。经平滑的几何形状358可以被纹理图像生成模块308用于生成纹理图像356。
视频编码器203还可以包括辅助块信息压缩模块312,以用于形成由多路复用器328在经压缩的比特流374中提供的经压缩的辅助块信息370。
图4示出了根据本公开内容的实施方式的视频解码器210的示例功能框图。在实施方式中,视频解码器210可以是基于视频的点云解码器。
如图4中所示,视频解码器210可以从视频编码器203接收编码比特流374以获得经压缩的纹理图像362、经压缩的几何图像364、经压缩的占用图372和经压缩的辅助块信息370。视频解码器210可以对经压缩的纹理图像362、经压缩的几何图像364、经压缩的占用图372和经压缩的辅助块信息370进行解码,以分别获得解压缩的纹理图像460、解压缩的几何图像462、解压缩的占用图464和解压缩的辅助块信息466。接下来,视频解码器210可以基于解压缩的纹理图像460、解压缩的几何图像462、解压缩的占用图464和解压缩的辅助块信息466来生成经重建的点云474。
在实施方式中,视频解码器210可以包括解复用器402,解复用器402对所接收的经压缩的比特流374中的经压缩的纹理图像362、经压缩的几何图像364、经压缩的占用图372和经压缩的辅助块信息370进行分离。
视频解码器210可以包括视频解压缩模块404、视频解压缩模块406、占用图解压缩模块408和辅助块信息解压缩模块410,这些模块分别对经压缩的纹理图像362、经压缩的几何图像364、经压缩的占用图372和经压缩的辅助块信息370进行解码。
视频解码器210可以包括几何重建模块412,几何重建模块412基于解压缩的几何图像462、解压缩的占用图464和解压缩的辅助块信息466来获得经重建的(三维)几何形状468。
视频解码器210可以包括平滑模块414,平滑模块414对经重建的几何形状468进行平滑以获得经平滑的几何形状470。平滑过程可以旨在减轻可能由于压缩伪影而在块边界处出现的潜在不连续性。
视频解码器210可以包括纹理重建模块416,以用于基于解压缩的纹理图像460和经平滑的几何形状470来获得经重建的纹理472。
视频解码器210可以包括颜色平滑模块418,颜色平滑模块418对经重建的纹理472的颜色进行平滑以获得经重建的点云474。在2D视频中,3D空间中的非相邻块通常被彼此紧邻封装。这暗指来自非相邻块的像素值可能被基于区块的视频编解码器混合。颜色平滑模块418的颜色平滑可以旨在减少在块边界处出现的可见伪影。
基于视频的点云压缩(Video-based Point Cloud Compression,V-PCC)中的块生
在可以对应于V-PCC的MPEG PCC测试模型类别2(test model category 2,TMC2)模型中,块生成可以涉及多个步骤。图5以及图6A至图6B示出了示例块生成处理500。
如图5所示,操作510可以包括:在操作510处,基于所定义的聚类准则(例如,基于相关联的法向量和相邻点)针对点云中的每个点确定投影平面。
操作520可以包括创建不属于任何块的原始点的列表。最初不生成块,并且也没有点属于任何块。
操作530可以包括:针对原始点的列表,通过对具有相同投影平面并且彼此相邻的点进行分组来生成连通分量的列表。如果连通分量中的点的数量小于给定阈值,则可以将该连通分量从列表中移除。例如,在实施方式中,每个连通分量可以包括具有相同投影平面并且彼此相邻的一组点。例如,如果点在某个阈值距离内,或者如果在这些点之间没有其他点,或者如果这些点满足某些其他相邻条件,则这些点可以是彼此相邻的。
操作540可以包括确定列表中的连通分量的数量是否为零。如果列表中的连通分量的数量为零,则块生成处理可以在操作550处停止。
操作560可以包括对列表中的每个连通分量(connected component,CC)进行处理。图6A和图6B示出了可以在操作560中执行的处理的示例。
例如,如图6A所示,可以作为操作560的示例的操作560’可以包括操作611至615。为了便于描述,此处将描述操作560’,并且下面将单独描述操作560”。
如图6A所示,操作611可以包括移除离群值。例如,可以将CC中的点投影到相关联的投影平面。3D点在2D UV平面中的投影坐标可以是
Figure BDA0004131828110000081
其中,N是CC中的点的数量。表示:
umin=min(u0,u1,...,uN-1) 式(1)
vmin=min(v0,v1,...,vN-1) 式(2)
其中,(ui-umin)>Uthresold或(vi-vmin)>Vthresold,其中,Uthresold和Vthresold可以是用户定义的阈值。第i个点可以被称为离群点(outlier)并且可以被从CC中移除。所得连通分量可以被称为经更新的连通分量,被表示为CC’。
操作612可以包括生成近表面。如果在操作611之后CC’不为空,则3D点在2D UV平面中的投影坐标可以被表示为
Figure BDA0004131828110000082
其中,
Figure BDA0004131828110000083
是CC’中的点的数量。可以通过选择满足以下条件的点来确定接近投影平面的近表面Snear:如果一个或更多个点具有相同的投影坐标,则选择具有最小深度值的点作为近表面Snear的一部分。将
Figure BDA0004131828110000084
Figure BDA0004131828110000085
表示为经投影的UV坐标,将
Figure BDA0004131828110000086
表示为深度值,将
Figure BDA0004131828110000087
表示为点云中的3D点的索引,其中,
Figure BDA0004131828110000088
是近表面Snear中的点的数量。
操作613可以包括对近表面进行过滤。对于投影平面中的TxT(其中T可以是用户定义的正整数)网格,CC’中被投影到TxT网格的所有那些点的最小深度值可以被表示为
Figure BDA0004131828110000091
用户定义的阈值可以被表示为dthreshold,用户定义的表面厚度可以被表示为dsurface,CC’中所有点的最小深度值可以被表示为
Figure BDA0004131828110000092
并且最大允许深度表示可以被表示为Dmax。如果Snear中的点
Figure BDA0004131828110000093
被投影到TxT网格并且满足以下条件:
Figure BDA0004131828110000094
或式(3)
Figure BDA0004131828110000095
其中,
Figure BDA0004131828110000096
是投影坐标并且
Figure BDA0004131828110000097
是该点的深度值,则可以将该点从近表面Snear移除。
操作614可以包括生成远表面。远表面Sfar可以被初始化为与近表面相同。如果CC’中的多个点被投影到相同的UV坐标
Figure BDA0004131828110000098
则可以用具有最大深度值的点来替换Sfar中的第i个点,使得该点与Snear中的点
Figure BDA0004131828110000099
之间的距离不大于dsurface,并且使得它们的颜色值彼此接近。
操作615可以包括将具有近表面和远表面的块添加到点云的块列表中。
再次回到图5,在执行操作560之后,操作570可以包括基于所有块的Snear和Sfar中的点来重建点云。
操作580可以包括使用经重建的点云来构建K维(K-dimensional,KD)树。
操作590可以包括:针对原始点云中的每个点,利用KD树在经重建的点中搜索最近邻近者。如果点与其在经重建的点云中的最近邻近者之间的距离大于用户定义的阈值,则该点可以被分类为原始点。
在执行操作590之后,处理500可以返回到操作530。
在实施方式中,处理500可以包括更多或更少的操作,并且这些操作可以以任何顺序组合或重新排列。
图6B中示出另一示例操作560。例如,如图6B所示,可以作为操作560的示例的操作560”可以包括操作621至625。例如,操作621可以包括移除离群值,操作622可以包括生成远表面,操作623可以包括对远表面进行过滤,操作可以包括生成近表面,并且操作625可以包括将具有近表面和远表面的块添加到点云的块列表中。
在实施方式中,操作622可以包括通过选择满足以下条件的点来确定远离投影平面的远表面Sfar:如果一个或更多个点具有相同的投影坐标,则选择具有最大深度值的点作为远表面Sfar的一部分。
在实施方式中,操作622可以包括:对于投影平面中的TxT(其中T是用户定义的正整数)网格,投影到TxT网格的所有那些点的最大深度值可以被表示为
Figure BDA0004131828110000101
将用户定义的阈值表示为dthreshold,将用户定义的表面厚度表示为dsurface,将CC’中所有点的最大深度值表示为
Figure BDA0004131828110000102
并且将最大允许深度表示表示为Dmax。如果Sfar中的点
Figure BDA0004131828110000103
被投影到TxT网格并且满足以下条件:
Figure BDA0004131828110000104
或式(5)
Figure BDA0004131828110000105
其中,
Figure BDA0004131828110000106
是投影坐标并且
Figure BDA0004131828110000107
是该点的深度值,则将该点从远表面Sfar移除。
在实施方式中,操作622可以包括将近表面Snear初始化为与远表面相同。如果CC’中的多个点被投影到相同的UV坐标
Figure BDA0004131828110000108
则用具有最小深度值的点来替换Snear中的第i个点,使得该点与Sfar中的点
Figure BDA0004131828110000109
之间的距离不大于asurface,并且使得它们的颜色值彼此接近。
如上可见,块生成处理例如处理500可能具有高的计算复杂度。特别地,尤其是对于具有数百万个点的大点云,可能由于KD树构造和KD树中的最近点搜索而使操作580和590复杂。因此,可能期望移除块生成算法中对KD树的使用。
所提出的方法可以单独使用或以任何顺序组合使用。此外,方法(或实施方式)、编码器和解码器中的每一个可以由处理电路(例如,一个或更多个处理器或一个或更多个集成电路)来实现。在一个示例中,一个或更多个处理器执行存储在非暂态计算机可读介质中的程序。
如图5所示,可以使用KD树搜索来确定不是所生成的块的列表的一部分或者不接近所生成的块中的点的原始点的集合。该原始点的集合可以用于新一轮的连通分量生成以及根据连通分量的集合来进行块生成。
下面讨论的实施方式可以涉及不使用KD树的块生成方法。例如,下面讨论的实施方式可以对应于处理500或上述在图5以及图6A至图6B中示出的任何步骤的修改。
例如,在生成连通分量之后,所有的原始点都可以被使用。因此,原始点的集合Θraw可能为空。可以通过跟随块生成的步骤并将从该处理中移除的那些点放回近表面和远表面的生成来生成原始点的集合。
在实施方式中,在操作530中生成连通分量之后,如果连通分量中的点的数量小于给定阈值,则可以将该连通分量从列表中移除。被移除的连通分量中的点可以被放回原始点集合Θraw
在实施方式中,在操作611中,可以将所识别的离群点从连通点中移除并且可以将其放回原始点集合Θraw
在实施方式中,在操作613之后,如果Snear中的点
Figure BDA0004131828110000111
被投影到TxT网格并且满足以下条件:
Figure BDA0004131828110000112
或式(7)
Figure BDA0004131828110000113
其中,
Figure BDA0004131828110000114
是投影坐标并且
Figure BDA0004131828110000115
是该点的深度值,则可以将该点从近表面Snear移除。被移除的点可以被放回原始点集合Θraw。在另一实施方式中,投影坐标为
Figure BDA0004131828110000116
的所有点都可以被放回原始点集合Θraw
在实施方式中,在操作623之后,如果Sfar中的点
Figure BDA0004131828110000117
被投影到TxT网格并且满足以下条件:
Figure BDA0004131828110000118
或式(9)
Figure BDA0004131828110000119
其中,
Figure BDA00041318281100001110
是投影坐标并且
Figure BDA00041318281100001111
是该点的深度值,则可以将该点从远表面Sfar移除。被移除的点可以被放回原始点集合Θraw。在另一实施方式中,投影坐标为
Figure BDA00041318281100001112
的所有点都可以被放回原始点集合Θraw
在实施方式中,在操作615或操作625之后,对于远表面中的所有点
Figure BDA00041318281100001113
其中
Figure BDA00041318281100001114
是投影坐标并且
Figure BDA00041318281100001115
是深度值,可以识别连通分量CC’中满足以下条件的点
Figure BDA00041318281100001116
并且
Figure BDA00041318281100001117
其中,
Figure BDA00041318281100001118
是用户定义的阈值(例如,
Figure BDA00041318281100001119
Figure BDA00041318281100001120
)。满足上述条件的点可以被放回原始点集合Θraw
在实施方式中,在操作615或操作625之后,对于近表面中的所有点
Figure BDA00041318281100001121
其中
Figure BDA00041318281100001122
是投影坐标并且
Figure BDA00041318281100001123
是深度值,可以识别连通分量CC’中满足以下条件的点
Figure BDA00041318281100001124
并且
Figure BDA0004131828110000121
其中,
Figure BDA0004131828110000122
是用户定义的阈值(例如,
Figure BDA0004131828110000123
Figure BDA0004131828110000124
)。识别出的点可以被放回原始点集合Θraw
在实施方式中,在操作615或操作625之后,对于近表面中的所有点
Figure BDA0004131828110000125
其中
Figure BDA0004131828110000126
是投影坐标并且
Figure BDA0004131828110000127
是深度值,并且对于远表面中的所有点
Figure BDA0004131828110000128
其中
Figure BDA0004131828110000129
是投影坐标并且
Figure BDA00041318281100001210
是深度值,可以识别连通分量CC’中满足以下条件的点
Figure BDA00041318281100001211
Figure BDA00041318281100001212
并且
Figure BDA00041318281100001213
其中,
Figure BDA00041318281100001214
Figure BDA00041318281100001215
是两个用户定义的阈值(例如,
Figure BDA00041318281100001216
)。满足上述条件的点可以被放回原始点集合Θraw
注意,上述实施方式可以以各种方式组合。在操作560之后,可能已经识别到原始点集合Θraw。因此,可以省略操作570、580和590,并且处理500可以在操作560完成之后返回到操作530。
在实现上述快速块生成方法时,可以使用标志数组F={fi,i=0、……、Np-1}来标识原始点,其中,Np是点云中的点的数量。以操作520开始,标志数组F可以被初始化为1,即,fi=1,i=0、……、Np-1,指示在操作530之前所有点均为原始点。点云中的点可以利用其索引pi=i,i=0、……、Np-1来标识。
在操作530中,可以针对连通分量(CC)中的所有点将对应标志设置为0。例如,如果具有索引p的点在CC中,则有fp=0。在上述实施方式中,在具有索引p的点被放回原始点集合Θraw时,设置fp=1。在操作560之后,具有
Figure BDA00041318281100001217
的点的集合是原始点集合,其中Nr是原始点集合中的点的数量,pi是原始点集合中第i个点的索引。注意,标志值1可以用于指示作为原始点的点,并且标志值0可以用于指示不是原始点的点。可以使用其他值来指示标志数组F中的原始点或非原始点。
在操作540中,如果列表中的连通分量的数量为零,则块生成处理停止。在实施方式中,如果在操作560之后Θraw中的点的数量小于阈值或者小于或等于阈值,则块生成处理可以停止。
图7是使用视频点云译码对视频流进行编码的方法700的流程图。在一些实现方式中,图7的一个或更多个处理框可以由编码器203执行。在一些实现方式中,图7的一个或更多个处理框可以由与编码器203分离或包括编码器203的另一装置或一组装置来执行,例如由解码器210执行。
如图7所示,在操作710中,方法700可以包括获得点云。
在操作720中,方法700可以包括针对点云中的每个点确定投影平面。
在操作730中,方法700可以包括创建包括在点云中的原始点的列表。
在操作740中,方法700可以包括针对原始点的列表生成连通分量的列表。
在操作750中,方法700可以包括确定连通分量的列表中的连通分量的数量是否大于第一阈值。在实施方式中,第一阈值可以是零。
在操作760中,方法700可以包括对连通分量的列表中的连通分量进行处理并基于经处理的连通分量生成一个或更多个块。
基于确定连通分量的列表中的连通分量的数量大于第一阈值(750处为“是”),方法700可以进行至操作760,操作760可以包括对连通分量的列表中的连通分量进行处理并基于经处理的连通分量生成一个或更多个块。在实施方式中,操作760可以对应于上面讨论的操作560、560’和560”中的任何一个。例如,操作760可以根据需要包括操作611至615以及/或者操作621至625中的任何操作。
基于确定新的连通分量的列表中的新的连通分量的数量小于或等于第一阈值(在750处为“否”),方法700可以进行至操作770,在操作770处,块生成可以停止,并且然后进行至操作780,操作780可以包括基于所选颜色值生成编码视频流。
在实施方式中,可以基于生成连通分量的列表的结果以及对连通分量进行处理的结果中的至少一者对原始点的列表进行更新。
在实施方式中,在操作760之后,方法700可以返回至操作740。例如,在操作740处,该方法可以包括基于经更新的原始点的列表来生成新的连通分量的列表,并且在操作750处,该方法可以包括确定新的连通分量的列表中的新的连通分量的数量是否小于或等于第一阈值。基于确定新的连通分量的列表中的新的连通分量的数量大于第一阈值(在750处为“是”),方法700可以包括在操作760处对新的连通分量的列表中的新的连通分量进行处理并基于经处理的新的连通分量来生成一个或更多个新的块。基于确定新的连通分量的列表中的新的连通分量的数量小于或等于第一阈值(在750处为“否”),方法700可以包括停止块生成,以及基于所生成的一个或更多个块和所生成的一个或更多个新的块来生成编码视频流。在实施方式中,可以基于操作740的结果和操作760的结果中的至少一者对经更新的原始点的列表进行更新。
在实施方式中,在生成连通分量的列表之后,基于连通分量中的点的数量小于或等于第二阈值,可以将该连通分量从连通分量的列表中移除,并且可以将该连通分量中的点添加至经更新的原始点的列表。
在实施方式中,对连通分量进行处理可以包括:识别连通分量中的离群点,并且这些离群点可以被从该连通分量中移除并被添加至经更新的原始点的列表。
在实施方式中,对连通分量进行处理可以包括:针对连通分量的列表中的连通分量,从连通分量中识别并移除离群点;生成与连通分量对应的近表面;对近表面进行过滤;生成与连通分量对应的远表面;以及基于近表面和远表面生成块。
在实施方式中,对近表面进行过滤可以包括基于确定点满足以下条件来移除该点:
Figure BDA0004131828110000141
Figure BDA0004131828110000142
其中,
Figure BDA0004131828110000143
表示点的深度值,
Figure BDA0004131828110000144
表示连通分量中各点的最小深度值,dthreshold表示第二阈值,dsurface表示表面厚度,并且Dmax表示最大允许深度表示。被移除的点可以被添加至经更新的原始点的列表。
在实施方式中,生成块可以包括基于确定点满足以下条件来从块中移除该点:
Figure BDA0004131828110000145
并且
Figure BDA0004131828110000146
其中,
Figure BDA0004131828110000147
表示点的坐标,
Figure BDA0004131828110000148
表示点的深度值,
Figure BDA0004131828110000149
表示与远表面对应的投影点的坐标,
Figure BDA00041318281100001410
表示投影点的深度值,并且dthreshold表示第二阈值。被移除的点可以被添加至经更新的原始点的列表。
在实施方式中,生成块可以包括基于确定点满足以下条件来从块中移除该点:
Figure BDA00041318281100001411
并且
Figure BDA00041318281100001412
其中,
Figure BDA00041318281100001413
表示点的坐标,
Figure BDA00041318281100001414
表示点的深度值,
Figure BDA00041318281100001415
表示与近表面对应的投影点的坐标,
Figure BDA00041318281100001416
表示投影点的深度值,并且dthreshold表示第二阈值。被移除的点可以被添加至经更新的原始点的列表。
在实施方式中,对连通分量进行处理可以包括:针对连通分量的列表中的连通分量,从连通分量中识别并移除离群点;生成与连通分量对应的远表面;对远表面进行过滤;生成与连通分量对应的近表面;以及基于近表面和远表面生成块。
在实施方式中,生成块可以包括基于确定点满足以下条件来从块中移除该点:
Figure BDA00041318281100001417
并且
Figure BDA00041318281100001418
其中,
Figure BDA00041318281100001419
表示点的坐标,
Figure BDA0004131828110000151
表示点的深度值,
Figure BDA0004131828110000152
表示与远表面对应的投影点的坐标,
Figure BDA0004131828110000153
表示投影点的深度值,并且dthreshold表示第二阈值。被移除的点可以被添加至更新后的原始点的列表。
在实施方式中,生成块可以包括基于确定点满足以下条件来从块中移除该点:
Figure BDA0004131828110000154
并且
Figure BDA0004131828110000155
其中,
Figure BDA0004131828110000156
表示点的坐标,
Figure BDA0004131828110000157
表示点的深度值,
Figure BDA0004131828110000158
表示与近表面对应的投影点的坐标,
Figure BDA0004131828110000159
表示投影点的深度值,并且dthreshold表示第二阈值。被移除的点可以被添加至更新后的原始点的列表。
在实施方式中,可以使用标志数组来标识原始点的列表中所包括的原始点。
虽然图7示出了方法700的示例框,但是在一些实现方式中,方法700可以包括与图7中描绘的那些框相比更多的框、更少的框、不同的框或不同地布置的框。另外地或可替选地,可以并行地执行方法700的两个或更多个框。
图8是根据实施方式的使用视频点云译码对视频流进行编码的设备800的图。如图8所示,设备800包括第一获取代码810、第一确定代码820、创建代码830、第一生成代码840、第二确定代码850、处理代码860、停止代码870和第二生成代码880。
第一获取代码810可以被配置成使至少一个处理器获得点云。
第一确定代码820可以被配置成使至少一个处理器针对点云中的每个点确定投影平面。
创建代码830可以被配置成使至少一个处理器创建包括在点云中的原始点的列表。
第一生成代码840可以被配置成使至少一个处理器针对原始点的列表生成连通分量的列表。
第二确定代码850可以被配置成使至少一个处理器确定连通分量的列表中的连通分量的数量是否小于或等于第一阈值。
处理代码860可以被配置成:使至少一个处理器基于确定连通分量的列表中的连通分量的数量大于第一阈值,对连通分量的列表中的连通分量进行处理并基于经处理的连通分量生成一个或更多个块。以及
停止代码870可以被配置成使至少一个处理器停止块生成处理。
第二生成代码880可以被配置成使至少一个处理器基于所生成的一个或更多个块来生成编码视频流。
在实施方式中,可以基于执行第一生成代码840的结果和执行处理代码860的结果中的至少一者对原始点的列表进行更新。
上述技术可以被实现为使用计算机可读指令的计算机软件并且被物理地存储在一个或更多个计算机可读介质中。例如,图9示出了适于实现本公开内容的某些实施方式的计算机系统900。
可以使用任何合适的机器代码或计算机语言对计算机软件进行编码,所述机器代码或计算机语言可以经受汇编、编译、链接等机制,以创建包括可以由计算机中央处理单元(central processing units,CPU)、图形处理单元(Graphics Processing Units,GPU)等直接执行或者通过解译、微代码执行等执行的指令的代码。
这些指令可以在各种类型的计算机或者其部件上执行,所述计算机包括例如个人计算机、平板计算机、服务器、智能电话、游戏装置、物联网装置等。
图9中所示的用于计算机系统900的部件是示例,并且不旨在对实现本公开内容的实施方式的计算机软件的使用范围或功能提出任何限制。部件的配置也不应被解释为关于计算机系统900的非限制性实施方式中示出的部件中的任一部件或其组合具有任何依赖性或要求。
计算机系统900可以包括某些人机接口输入装置。这样的人机接口输入装置可以对由一个或更多个人类用户通过例如触觉输入(例如:击键、滑动、数据手套移动)、音频输入(例如:语音、拍打)、视觉输入(例如:姿势)、嗅觉输入(未描绘)实现的输入做出响应。人机接口装置还可以用于捕获不一定与人的意识输入直接相关的某些媒体,例如音频(例如:语音、音乐、环境声音)、图像(例如:扫描的图像、从静态图像摄像机获得的摄影图像)、视频(例如二维视频、包括立体视频的三维视频)。
输入人机接口装置可以包括以下各项中的一个或更多个(每项仅描绘一个):键盘901、鼠标902、触控板903、触摸屏910、数据手套、操纵杆905、麦克风906、扫描仪907、摄像机908。
计算机系统900还可以包括某些人机接口输出装置。这样的人机接口输出装置可以通过例如触觉输出、声音、光和气味/味道来刺激一个或更多个人类用户的感官。这样的人机接口输出装置可以包括触觉输出装置(例如,通过触摸屏910、数据手套或操纵杆905进行的触觉反馈,但是也可以存在不用作输入装置的触觉反馈装置)。例如,这样的装置可以是音频输出装置(例如,扬声器909、耳机(未描绘))、视觉输出装置(例如,包括CRT屏幕、LCD屏幕、等离子体屏幕、OLED屏幕的屏幕910,各自具有或不具有触摸屏输入能力,各自具有或不具有触觉反馈能力——其中的一些能够通过诸如立体输出、虚拟现实眼镜(未描绘)、全息显示器和发烟器(未描绘)的装置输出二维视觉输出或超过三维输出)以及打印机(未描绘)。
计算机系统900还可以包括人类可访问存储装置及其相关联的介质,例如包括具有CD/DVD等介质921的CD/DVD ROM/RW 920的光学介质、拇指驱动器922、可移除硬盘驱动器或固态驱动器923、传统磁性介质(例如磁带和软盘(未描绘))、基于专用ROM/ASIC/PLD的装置(例如安全加密狗(未描绘))等。
本领域技术人员还应当理解,结合当前公开的主题使用的术语“计算机可读介质”不包含传输介质、载波或其他瞬态信号。
计算机系统900还可以包括到一个或更多个通信网络的接口。网络可以例如是无线的、有线的、光学的。网络还可以是局域的、广域的、城域的、车载和工业的、实时的、延时容忍的等。网络的示例包括:局域网例如以太网,无线LAN,包括GSM、3G、4G、5G、LTE等的蜂窝网络,包括有线电视、卫星电视和地面广播电视的电视有线或无线广域数字网络,包括CAN总线的车载和工业网络等。某些网络通常需要附接至某些通用数据端口或外围总线949(例如,诸如计算机系统900的USB端口)的外部网络接口适配器;其他网络通常通过附接至如下所描述的系统总线而集成到计算机系统900的核中(例如,通过以太网接口集成到PC计算机系统中或通过蜂窝网络接口集成到智能电话计算机系统中)。利用这些网络中的任何网络,计算机系统900可以与其他实体进行通信。这样的通信可以是单向仅接收的(例如,广播电视)、单向仅发送的(例如,到某些CAN总线装置的CAN总线)、或双向的(例如,利用局域数字网络或广域数字网络到其他计算机系统)。这样的通信可以包括到云计算环境955的通信。如上所描述的,可以用在这些网络和网络接口中的每一个上某些协议和协议栈。
以上提及的人机接口装置、人类可访问存储装置和网络接口954可以附接至计算机系统900的核940。
核940可以包括一个或更多个中央处理单元(CPU)941、图形处理单元(GPU)942、现场可编程门区域(Field Programmable Gate Area,FPGA)943形式的专用可编程处理单元、用于某些任务的硬件加速器944等。这些装置连同只读存储器(Read-only memory,ROM)945、随机存取存储器946、内部大容量存储装置(例如内部非用户可访问硬盘驱动器、SSD等)947可以通过系统总线948连接。在一些计算机系统中,可以以一个或更多个物理插头的形式访问系统总线948,以使得能够通过附加的CPU、GPU等进行扩展。外围装置可以直接地或通过外围总线949附接至核的系统总线948。外围总线的架构包括PCI、USB等。图形适配器950可以包括在核940中。
CPU 941、GPU 942、FPGA943和加速器944可以执行某些指令,这些指令组合起来可以构成以上提及的计算机代码。该计算机代码可以存储在ROM 945或RAM 946中。暂态数据也可以存储在RAM 946中,而永久数据可以存储在例如内部大容量存储装置947中。可以通过使用高速缓存存储器来实现对存储装置中的任何存储装置的快速存储及检索,该高速缓存存储器可以与一个或更多个CPU 941、GPU 942、大容量存储装置947、ROM 945、RAM 946等紧密相关联。
计算机可读介质上可以具有用于执行各种计算机实现的操作的计算机代码。介质和计算机代码可以是出于本公开内容的目的而专门设计和构造的介质和计算机代码,或者它们可以是对计算机软件领域的技术人员公知且可获得的类型。
作为示例而非限制,具有架构的计算机系统900并且特别是核940可以由于处理器(包括CPU、GPU、FPGA、加速器等)执行体现在一个或更多个有形计算机可读介质中的软件而提供功能。这样的计算机可读介质可以是与以下各项相关联的介质:如上面所介绍的用户可访问的大容量存储装置、以及核940的具有非暂态性质的某些存储装置例如核内部大容量存储装置947或ROM 945。实现本公开内容的各种实施方式的软件可以存储在这样的装置中并且由核940执行。根据特定需要,计算机可读介质可以包括一个或更多个存储器装置或芯片。软件可以使核940并且特别是其中的处理器(包括CPU、GPU、FPGA等)执行本文中描述的特定处理或特定处理的特定部分,包括限定存储在RAM 946中的数据结构以及根据通过软件限定的处理来修改这样的数据结构。另外地或者作为替选方案,计算机系统可以由于以硬连线或以其他方式体现在电路(例如:加速器944)中的逻辑而提供功能,该逻辑可以代替软件或与软件一起操作以执行本文中描述的特定处理或特定处理的特定部分。在适当的情况下,提及软件可以包含逻辑,并且反之,提及逻辑可以包含软件。在适当的情况下,提及计算机可读介质可以包含存储用于执行的软件的电路(例如集成电路(integratedcircuit,IC))、实施用于执行的逻辑的电路或上述两者。本公开内容包含硬件和软件的任何合适的组合。
尽管本公开内容已经描述了若干非限制性实施方式,但是存在落入本公开内容的范围内的改变、置换和各种替换等效物。因此,将认识到,虽然本文中没有明确示出或描述,但是本领域技术人员将能够设想体现本公开内容的原理并且因此在本公开内容的精神和范围内的许多系统和方法。

Claims (20)

1.一种使用视频点云译码对视频流进行编码的方法,所述方法由至少一个处理器执行并且包括:
获得点云;
针对所述点云中的每个点确定投影平面;
创建包括在所述点云中的原始点的列表;
针对所述原始点的列表生成连通分量的列表;
确定所述连通分量的列表中的连通分量的数量是否大于第一阈值;
基于确定所述连通分量的列表中的连通分量的数量大于所述第一阈值,对所述连通分量的列表中的连通分量进行处理并基于经处理的连通分量生成一个或更多个块;以及
基于所生成的一个或更多个块来生成编码视频流,
其中,基于所述生成连通分量的列表的结果和所述对连通分量进行处理的结果中的至少一者对所述原始点的列表进行更新。
2.根据权利要求1所述的方法,还包括:
基于经更新的原始点的列表生成新的连通分量的列表;
确定所述新的连通分量的列表中的新的连通分量的数量是否大于所述第一阈值;
基于确定所述新的连通分量的列表中的新的连通分量的数量大于所述第一阈值,对所述新的连通分量的列表中的新的连通分量进行处理并基于经处理的新的连通分量生成一个或更多个新的块;以及
基于所生成的一个或更多个块以及所生成的一个或更多个新的块来生成所述编码视频流,
其中,基于所述生成新的连通分量的列表的结果和所述对新的连通分量进行处理的结果中的至少一者对所述经更新的原始点的列表进行更新。
3.根据权利要求1所述的方法,其中,在生成所述连通分量的列表之后,基于连通分量中的点的数量小于第二阈值,将该连通分量从所述连通分量的列表中移除并将该连通分量中的点添加至经更新的原始点的列表。
4.根据权利要求1所述的方法,其中,所述对连通分量进行处理包括识别连通分量中的离群点,并且
其中,所述离群点被从连通分量中移除并被添加至经更新的原始点的列表。
5.根据权利要求1所述的方法,其中,所述对连通分量进行处理包括针对所述连通分量的列表中的连通分量进行以下操作:
从该连通分量中识别并移除离群点;
生成与该连通分量对应的近表面;
对所述近表面进行过滤;
生成与该连通分量对应的远表面;
基于所述近表面和所述远表面生成块。
6.根据权利要求5所述的方法,其中,对所述近表面进行过滤包括基于确定点满足以下条件来移除所述点:
Figure FDA0004131828090000021
Figure FDA0004131828090000022
其中,
Figure FDA0004131828090000023
表示所述点的深度值,
Figure FDA0004131828090000024
表示连通分量中的点的最小深度值,dthreshold表示第二阈值,dsurface表示表面厚度,并且Dmax表示最大允许深度表示,并且
其中,所移除的点被添加至经更新的原始点的列表。
7.根据权利要求5所述的方法,其中,所述生成块包括基于确定点满足以下条件来从所述块中移除所述点:
Figure FDA0004131828090000025
并且
Figure FDA0004131828090000026
其中,
Figure FDA0004131828090000027
表示所述点的坐标,
Figure FDA0004131828090000028
表示所述点的深度值,
Figure FDA0004131828090000029
表示与所述远表面对应的投影点的坐标,
Figure FDA00041318280900000210
表示所述投影点的深度值,并且dthreshold表示第二阈值,并且
其中,所移除的点被添加至经更新的原始点的列表。
8.根据权利要求5所述的方法,其中,所述生成块包括基于确定点满足以下条件来从所述块中移除所述点:
Figure FDA0004131828090000031
并且
Figure FDA0004131828090000032
其中,
Figure FDA0004131828090000033
表示所述点的坐标,
Figure FDA0004131828090000034
表示所述点的深度值,
Figure FDA0004131828090000035
表示与所述近表面对应的投影点的坐标,
Figure FDA0004131828090000036
表示所述投影点的深度值,并且dthreshold表示第二阈值,并且
其中,所移除的点被添加至经更新的原始点的列表。
9.根据权利要求1所述的方法,其中,所述对连通分量进行处理包括针对所述连通分量的列表中的连通分量进行以下操作:
从该连通分量中识别并移除离群点;
生成与该连通分量对应的远表面;
对所述远表面进行过滤;
生成与该连通分量对应的近表面;以及
基于所述近表面和所述远表面生成块。
10.根据权利要求9所述的方法,其中,所述生成块包括基于确定点满足以下条件来从所述块中移除所述点:
Figure FDA0004131828090000037
并且
Figure FDA0004131828090000038
其中,
Figure FDA0004131828090000039
表示所述点的坐标,
Figure FDA00041318280900000310
表示所述点的深度值,
Figure FDA00041318280900000311
表示与所述远表面对应的投影点的坐标,
Figure FDA00041318280900000312
表示所述投影点的深度值,并且dthreshold表示第二阈值,并且
其中,所移除的点被添加至经更新的原始点的列表。
11.根据权利要求9所述的方法,其中,所述生成块包括基于确定点满足以下条件来从所述块中移除所述点:
Figure FDA00041318280900000313
并且
Figure FDA00041318280900000314
其中,
Figure FDA00041318280900000315
表示所述点的坐标,
Figure FDA00041318280900000316
表示所述点的深度值,
Figure FDA00041318280900000317
表示与所述近表面对应的投影点的坐标,
Figure FDA00041318280900000318
表示所述投影点的深度值,并且dthreshold表示第二阈值,并且
其中,所移除的点被添加至经更新的原始点的列表。
12.根据权利要求1所述的方法,其中,使用标志数组来标识包括在所述原始点的列表中的原始点。
13.一种使用视频点云译码对视频流进行编码的设备,所述设备包括:
至少一个存储器,其被配置成存储程序代码;以及
至少一个处理器,其被配置成读取所述程序代码并且如所述程序代码所指示的那样操作,所述程序代码包括:
第一获取代码,其被配置成使所述至少一个处理器获得点云;
第一确定代码,其被配置成使所述至少一个处理器针对所述点云中的每个点确定投影平面;
创建代码,其被配置成使所述至少一个处理器创建包括在所述点云中的原始点的列表;
第一生成代码,其被配置成使所述至少一个处理器针对所述原始点的列表生成连通分量的列表;
第二确定代码,其被配置成使所述至少一个处理器确定所述连通分量的列表中的连通分量的数量是否大于第一阈值;
处理代码,其被配置成使所述至少一个处理器基于确定所述连通分量的列表中的连通分量的数量大于所述第一阈值,对所述连通分量的列表中的连通分量进行处理并基于经处理的连通分量生成一个或更多个块;以及
第二生成代码,其被配置成使所述至少一个处理器基于所生成的一个或更多个块生成编码视频流;
其中,基于所述生成连通分量的列表的结果和所述对连通分量进行处理的结果中的至少一者对所述原始点的列表进行更新。
14.根据权利要求13所述的设备,其中,所述程序代码还包括:
基于经更新的原始点的列表生成新的连通分量的列表;
确定所述新的连通分量的列表中的新的连通分量的数量是否大于所述第一阈值;
基于确定所述新的连通分量的列表中的新的连通分量的数量大于所述第一阈值,对所述新的连通分量的列表中的新的连通分量进行处理并基于经处理的新的连通分量生成一个或更多个新的块;以及
基于所生成的一个或更多个块以及所生成的一个或更多个新的块来生成所述编码视频流,
其中,基于所述生成新的连通分量的列表的结果和所述对新的连通分量进行处理的结果中的至少一者来对所述经更新的原始点的列表进行更新。
15.根据权利要求13所述的设备,其中,在生成所述连通分量的列表之后,基于连通分量中的点的数量小于第二阈值,将该连通分量从所述连通分量的列表中移除并将该连通分量中的点添加至经更新的原始点的列表。
16.根据权利要求13所述的设备,其中,所述对连通分量进行处理包括识别连通分量中的离群点,并且
其中,所述离群点被从连通分量中移除并被添加至经更新的原始点的列表。
17.根据权利要求13所述的设备,其中,所述处理代码还包括:
从所述连通分量的列表中的连通分量中识别并移除离群点;
生成与该连通分量对应的近表面;
对所述近表面进行过滤;
生成与该连通分量对应的远表面;
基于所述近表面和所述远表面生成块。
18.根据权利要求17所述的设备,其中,所述对近表面进行过滤包括基于确定点满足以下条件来移除所述点:
Figure FDA0004131828090000051
Figure FDA0004131828090000052
其中,
Figure FDA0004131828090000053
表示所述点的深度值,
Figure FDA0004131828090000054
表示该连通分量中的点的最小深度值,dthreshold表示第二阈值,dsurface表示表面厚度,并且Dmax表示最大允许深度表示,并且
其中,所移除的点被添加至经更新的原始点的列表。
19.根据权利要求13所述的设备,其中,所述处理代码还包括:
从所述连通分量的列表中的连通分量中识别并移除离群点;
生成与该连通分量对应的远表面;
对所述远表面进行过滤;
生成与该连通分量对应的近表面;以及
基于所述近表面和所述远表面生成块。
20.一种非暂态计算机可读介质,其存储用于使用视频点云译码来对视频流进行编码的计算机指令,所述计算机指令在由至少一个处理器执行时使所述至少一个处理器进行以下操作:
获得点云;
针对所述点云中的每个点确定投影平面;
创建包括在所述点云中的原始点的列表;
针对所述原始点的列表生成连通分量的列表;
确定所述连通分量的列表中的连通分量的数量是否大于第一阈值;
基于确定所述连通分量的列表中的连通分量的数量大于所述第一阈值,对所述连通分量的列表中的连通分量进行处理并基于经处理的连通分量生成一个或更多个块;以及
基于所生成的一个或更多个块来生成编码视频流,
其中,基于所述生成连通分量的列表的结果和所述对连通分量进行处理的结果中的至少一者对所述原始点的列表进行更新。
CN202180064023.7A 2021-07-20 2021-10-18 基于视频的点云译码的快速块生成 Pending CN116250009A (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US202163223793P 2021-07-20 2021-07-20
US63/223,793 2021-07-20
US17/502,605 2021-10-15
US17/502,605 US11606556B2 (en) 2021-07-20 2021-10-15 Fast patch generation for video based point cloud coding
PCT/US2021/055380 WO2023003580A1 (en) 2021-07-20 2021-10-18 Fast patch generation for video based point cloud coding

Publications (1)

Publication Number Publication Date
CN116250009A true CN116250009A (zh) 2023-06-09

Family

ID=84979461

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202180064023.7A Pending CN116250009A (zh) 2021-07-20 2021-10-18 基于视频的点云译码的快速块生成

Country Status (6)

Country Link
US (1) US11606556B2 (zh)
EP (1) EP4186031A4 (zh)
JP (1) JP7438612B2 (zh)
KR (1) KR102677403B1 (zh)
CN (1) CN116250009A (zh)
WO (1) WO2023003580A1 (zh)

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10424083B2 (en) * 2017-10-21 2019-09-24 Samsung Electronics Co., Ltd. Point cloud compression using hybrid transforms
US10867414B2 (en) * 2018-04-10 2020-12-15 Apple Inc. Point cloud attribute transfer algorithm
US10909726B2 (en) 2018-04-10 2021-02-02 Apple Inc. Point cloud compression
EP3777182A1 (en) * 2018-04-11 2021-02-17 InterDigital VC Holdings, Inc. A method and apparatus for encoding/decoding a point cloud representing a 3d object
US20210027505A1 (en) 2018-04-11 2021-01-28 Sony Corporation Image processing apparatus and method
US11138762B2 (en) * 2018-07-11 2021-10-05 Samsung Electronics Co., Ltd. Visual quality of video based point cloud compression using one or more additional patches
CN112514396A (zh) 2018-08-02 2021-03-16 索尼公司 图像处理设备和图像处理方法
US11348285B2 (en) 2019-12-10 2022-05-31 Sony Group Corporation Mesh compression via point cloud representation

Also Published As

Publication number Publication date
EP4186031A1 (en) 2023-05-31
EP4186031A4 (en) 2024-01-10
JP2023547174A (ja) 2023-11-09
JP7438612B2 (ja) 2024-02-27
WO2023003580A1 (en) 2023-01-26
KR20230052923A (ko) 2023-04-20
US20230040484A1 (en) 2023-02-09
KR102677403B1 (ko) 2024-06-25
US11606556B2 (en) 2023-03-14

Similar Documents

Publication Publication Date Title
JP7383171B2 (ja) 点群コーディングのための方法および装置
CN116848553A (zh) 基于二维uv地图集采样的用于动态网格压缩的方法
KR102677403B1 (ko) 비디오 기반 포인트 클라우드 코딩을 위한 고속 패치 생성
JP7434667B2 (ja) ビデオベースの点群コーディングのためのグループオブピクチャベースのパッチパッキング
CN112188201B (zh) 对视频流进行编码的方法、装置、电子设备及存储介质
US12101505B2 (en) Fast recolor for video based point cloud coding
US20230156222A1 (en) Grid-based patch generation for video-based point cloud coding
KR20240131434A (ko) 동적 메시 압축을 위한 경계 정보를 이용한 삼각 분할 방법
JP2023533423A (ja) ビデオベースの点群コーディングのための非バイナリ占有マップ
KR20240110024A (ko) 차트 파티션을 사용한 텍스처 좌표 압축
CN117203672A (zh) 具有时间相关的uv图谱的网格参数化
JP2023533416A (ja) ビデオベースの点群コーディングのための条件付き再着色
KR20240131432A (ko) 메시 압축을 위한 경계 uv2xyz 인덱스의 코딩에 대한 개선
KR20240128999A (ko) 메시 압축을 위한 경계 uv2xyz 인덱스의 코딩에 대한 개선
KR20230158622A (ko) 메시 압축을 위한 지오메트리 필터링
CN118202387A (zh) 使用新型分割的网格优化
KR20240067924A (ko) 대칭 메시의 uv 속성 코딩 방법 및 장치
CN118475958A (zh) 使用图表分区的纹理坐标压缩
CN118020093A (zh) 网格压缩中的纹理坐标预测
CN117203673A (zh) 用于网格压缩的边界uv信息的预测编解码
CN118318254A (zh) 用于对称网格的连接性编码

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40088101

Country of ref document: HK