CN112313710A - 三维数据编码方法、三维数据解码方法、三维数据编码装置及三维数据解码装置 - Google Patents

三维数据编码方法、三维数据解码方法、三维数据编码装置及三维数据解码装置 Download PDF

Info

Publication number
CN112313710A
CN112313710A CN201980040987.0A CN201980040987A CN112313710A CN 112313710 A CN112313710 A CN 112313710A CN 201980040987 A CN201980040987 A CN 201980040987A CN 112313710 A CN112313710 A CN 112313710A
Authority
CN
China
Prior art keywords
data
information
point cloud
encoding
unit
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
CN201980040987.0A
Other languages
English (en)
Inventor
韩中定
王驰
P·拉桑
井口贺敬
杉尾敏康
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.)
Panasonic Intellectual Property Corp of America
Original Assignee
Panasonic Intellectual Property Corp of America
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 Panasonic Intellectual Property Corp of America filed Critical Panasonic Intellectual Property Corp of America
Publication of CN112313710A publication Critical patent/CN112313710A/zh
Pending legal-status Critical Current

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/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
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/36Input/output arrangements for on-board computers
    • G01C21/3626Details of the output of route guidance instructions
    • G01C21/3635Guidance using 3D or perspective road maps
    • G01C21/3638Guidance using 3D or perspective road maps including 3D objects and buildings
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/60Memory management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • 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
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/28Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network with correlation of data from several navigational instruments
    • G01C21/30Map- or contour-matching
    • G01C21/32Structuring or formatting of map data
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/38Electronic maps specially adapted for navigation; Updating thereof
    • G01C21/3804Creation or updating of map data
    • G01C21/3807Creation or updating of map data characterised by the type of data
    • G01C21/3811Point data, e.g. Point of Interest [POI]

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • General Physics & Mathematics (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Automation & Control Theory (AREA)
  • Computer Graphics (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Image Processing (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

三维数据编码方法通过将第1点群数据与第2点群数据结合而生成第3点群数据(S5481),通过将第3点群数据编码而生成编码数据(S5482),编码数据包含识别信息,该识别信息表示第3点群数据中包含的多个三维点分别属于第1点群数据和第2点群数据中的哪一个。例如,第1点群数据和第2点群数据也可以是同一对象物的不同时刻的点群数据。

Description

三维数据编码方法、三维数据解码方法、三维数据编码装置及 三维数据解码装置
技术领域
本发明涉及三维数据编码方法、三维数据解码方法、三维数据编码装置及三维数据解码装置。
背景技术
在用于汽车或机器人自主地进行工作的计算机视觉、地图信息、监控、基础设施检查、或影像分发等较大的领域中,今后将会普及灵活运用了三维数据的装置或服务。三维数据通过测距仪等距离传感器、立体摄影机、或多个单眼相机的组合等各种方法来取得。
作为三维数据的表现方法之一,有被称作点云的表现方法,该方法通过三维空间内的点群来表现三维构造的形状。在点云中保存点群的位置和颜色。虽然预想点云作为三维数据的表现方法将成为主流,但是点群的数据量非常大。因此,在三维数据的积蓄或传输中,与二维的运动图像(作为一例,有以MPEG进行标准化后的MPEG-4AVC或HEVC等)同样,需要通过编码来进行数据量的压缩。
此外,关于点云的压缩,有一部分由进行点云关联的处理的公开的库(PointCloud Library:点云库)等支持。
此外,已知有利用三维的地图数据,检索位于车辆周边的施设并进行显示的技术(例如,参照专利文献1)。
现有技术文献
专利文献
专利文献1:国际公开第2014/020663号
发明内容
发明要解决的课题
在三维数据的编码处理中,希望能够提高编码效率。
本发明的目的是提供一种能够提高编码效率的三维数据编码方法、三维数据解码方法、三维数据编码装置或三维数据解码装置。
用来解决课题的手段
有关本发明的一技术方案的三维数据编码方法,通过将第1点群数据与第2点群数据结合,生成第3点群数据;通过将上述第3点群数据编码,生成编码数据;上述编码数据包含识别信息,该识别信息表示上述第3点群数据中包含的多个三维点分别属于上述第1点群数据和上述第2点群数据中的哪一个。
有关本发明的一技术方案的三维数据解码方法,通过将编码数据解码,取得第1点群数据与第2点群数据被结合而生成的第3点群数据、以及表示上述第3点群数据中包含的多个三维点分别属于第1点群数据和第2点群数据中的哪一个的识别信息;使用上述识别信息,从上述第3点群数据分离上述第1点群数据和上述第2点群数据。
发明效果
本发明能够提供能够提高编码效率的三维数据编码方法、三维数据解码方法、三维数据编码装置或三维数据解码装置。
附图说明
图1是表示有关实施方式1的三维数据编解码系统的构成的图。
图2是表示有关实施方式1的点群数据的构成例的图。
图3是表示有关实施方式1的记述有点群数据信息的数据文件的构成例的图。
图4是表示有关实施方式1的点群数据的种类的图。
图5是表示有关实施方式1的第1编码部的构成的图。
图6是有关实施方式1的第1编码部的框图。
图7是表示有关实施方式1的第1解码部的构成的图。
图8是有关实施方式1的第1解码部的框图。
图9是表示有关实施方式1的第2编码部的构成的图。
图10是有关实施方式1的第2编码部的框图。
图11是表示有关实施方式1的第2解码部的构成的图。
图12是有关实施方式1的第2解码部的框图。
图13是表示有关实施方式1的关于PCC编码数据的协议栈的图。
图14是表示有关实施方式2的ISOBMFF的基本结构的图。
图15是表示有关实施方式2的协议栈的图。
图16是表示有关实施方式3的编码部及复用部的构成的图。
图17是表示有关实施方式3的编码数据的构成例的图。
图18是表示有关实施方式3的编码数据及NAL单元的构成例的图。
图19是表示有关实施方式3的pcc_nal_unit_type的语义例的图。
图20是表示有关实施方式3的NAL单元的送出顺序的例子的图。
图21是有关实施方式4的第1编码部的框图。
图22是有关实施方式4的第1解码部的框图。
图23是有关实施方式4的分割部的框图。
图24是表示有关实施方式4的切片及瓦片的分割例的图。
图25是表示有关实施方式4的切片及瓦片的分割样式的例子的图。
图26是表示有关实施方式4的依赖关系的例子的图。
图27是表示有关实施方式4的数据的解码顺序的例子的图。
图28是有关实施方式4的编码处理的流程图。
图29是有关实施方式4的结合部的框图。
图30是表示有关实施方式4的编码数据及NAL单元的构成例的图。
图31是有关实施方式4的编码处理的流程图。
图32是有关实施方式4的解码处理的流程图。
图33是有关实施方式4的编码处理的流程图。
图34是有关实施方式4的解码处理的流程图。
图35是表示有关实施方式5的根据多个帧的点群数据生成树结构及占用率代码的形象的图。
图36是表示有关实施方式5的帧结合的例子的图。
图37是表示有关实施方式5的多个帧的结合的例子的图。
图38是有关实施方式5的三维数据编码处理的流程图。
图39是有关实施方式5的编码处理的流程图。
图40是有关实施方式5的三维数据解码处理的流程图。
图41是有关实施方式5的解码及分割处理的流程图。
图42是有关实施方式5的编码部的框图。
图43是有关实施方式5的分割部的框图。
图44是有关实施方式5的位置信息编码部的框图。
图45是有关实施方式5的属性信息编码部的框图。
图46是有关实施方式5的点群数据的编码处理的流程图。
图47是有关实施方式5的编码处理的流程图。
图48是有关实施方式5的解码部的框图。
图49是有关实施方式5的位置信息解码部的框图。
图50是有关实施方式5的属性信息解码部的框图。
图51是有关实施方式5的结合部的框图。
图52是有关实施方式5的点群数据的解码处理的流程图。
图53是有关实施方式5的解码处理的流程图。
图54是表示有关实施方式5的帧的结合样式的例子的图。
图55是表示有关实施方式5的PCC帧的构成例的图。
图56是表示有关实施方式5的编码位置信息的构成的图。
图57是表示有关实施方式5的编码位置信息的头的句法例的图。
图58是表示有关实施方式5的编码位置信息的有效载荷的句法例的图。
图59是表示有关实施方式5的叶节点信息的例子的图。
图60是表示有关实施方式5的叶节点信息的例子的图。
图61是表示有关实施方式5的位图(bitmap)信息的例子的图。
图62是表示有关实施方式5的编码属性信息的构成的图。
图63是表示有关实施方式5的编码属性信息的头的句法例的图。
图64是表示有关实施方式5的编码属性信息的有效载荷的句法例的图。
图65是表示有关实施方式5的编码数据的构成的图。
图66是表示有关实施方式5的数据的送出顺序及数据的参照关系的图。
图67是表示有关实施方式5的数据的送出顺序及数据的参照关系的图。
图68是表示有关实施方式5的数据的送出顺序及数据的参照关系的图。
图69是表示有关实施方式5的将一部分帧解码的例子的图。
图70是表示有关实施方式5的数据的送出顺序及数据的参照关系的图。
图71是表示有关实施方式5的数据的送出顺序及数据的参照关系的图。
图72是表示有关实施方式5的数据的送出顺序及数据的参照关系的图。
图73是表示有关实施方式5的数据的送出顺序及数据的参照关系的图。
图74是有关实施方式5的编码处理的流程图。
图75是有关实施方式5的解码处理的流程图。
具体实施方式
有关本发明的一技术方案的三维数据编码方法,通过将第1点群数据与第2点群数据结合,生成第3点群数据;通过将上述第3点群数据编码,生成编码数据;上述编码数据包含识别信息,该识别信息表示上述第3点群数据中包含的多个三维点分别属于上述第1点群数据和上述第2点群数据中的哪一个。
由此,该三维数据编码方法通过将多个点群数据一起编码,能够提高编码效率。
例如也可以是,上述第1点群数据和上述第2点群数据是不同时刻的点群数据。
例如也可以是,上述第1点群数据和上述第2点群数据是同一对象物的不同时刻的点群数据。
例如也可以是,上述编码数据包含上述第3点群数据中包含的多个三维点各自的位置信息和属性信息,上述识别信息包含在上述属性信息中。
例如也可以是,上述编码数据包含使用N(N是2以上的整数)叉树表示了上述第3点群数据中包含的多个三维点各自的位置的位置信息。
有关本发明的一技术方案的三维数据解码方法,通过将编码数据解码,取得第1点群数据与第2点群数据被结合而生成的第3点群数据、以及表示上述第3点群数据中包含的多个三维点分别属于第1点群数据和第2点群数据中的哪一个的识别信息;使用上述识别信息,从上述第3点群数据分离上述第1点群数据和上述第2点群数据。
由此,该三维数据解码方法能够将通过将多个点群数据一起编码而提高了编码效率的编码数据解码。
例如也可以是,上述第1点群数据和上述第2点群数据是不同时刻的点群数据。
例如也可以是,上述第1点群数据和上述第2点群数据是同一对象物的不同时刻的点群数据。
例如也可以是,上述编码数据包含上述第3点群数据中包含的多个三维点各自的位置信息和属性信息,上述识别信息包含在上述属性信息中。
例如也可以是,上述编码数据包含使用N(N是2以上的整数)叉树表示了上述第3点群数据中包含的多个三维点各自的位置的位置信息。
此外,有关本发明的一技术方案的三维数据编码装置具备处理器和存储器;上述处理器使用上述存储器进行如下处理:通过将第1点群数据与第2点群数据结合,生成第3点群数据;通过将上述第3点群数据编码,生成编码数据;上述编码数据包含识别信息,该识别信息表示上述第3点群数据中包含的多个三维点分别属于上述第1点群数据和上述第2点群数据中的哪一个。
由此,该三维数据编码装置通过将多个点群数据一起编码,能够提高编码效率。
此外,有关本发明的一技术方案的三维数据解码装置具备处理器和存储器;上述处理器使用上述存储器进行如下处理:通过将编码数据解码,取得第1点群数据与第2点群数据被结合而生成的第3点群数据、以及表示上述第3点群数据中包含的多个三维点分别属于第1点群数据和第2点群数据中的哪一个的识别信息;使用上述识别信息,从上述第3点群数据分离上述第1点群数据和上述第2点群数据。
由此,该三维数据解码装置能够将通过将多个点群数据一起编码而提高了编码效率的编码数据解码。
另外,这些包含性或具体的技术方案也可以由系统、方法、集成电路、计算机程序或计算机可读取的CD-ROM等的记录介质实现,也可以由系统、方法、集成电路、计算机程序及记录介质的任意的组合来实现。
以下,参照附图对实施方式具体地进行说明。另外,以下说明的实施方式都表示本发明的一具体例。在以下的实施方式中表示的数值、形状、材料、构成要素、构成要素的配置位置及连接形态、步骤、步骤的顺序等是一例,不是限定本发明的意思。此外,关于以下的实施方式的构成要素中的、在表示最上位概念的独立权利要求中没有记载的构成要素,设为任意的构成要素进行说明。
(实施方式1)
在将点云的编码数据用于实际的装置或服务时,为了抑制网络带宽,而希望按照用途来对所需要的信息进行收发。然而,至今的三维数据的编码结构中不存在这样的功能,因此也没有与此相对的编码方法。
在本实施方式中将要说明的是,用于提供在三维的点云的编码数据中,按照用途来对所需要的信息进行收发的功能的三维数据编码方法以及三维数据编码装置、还有对该编码数据进行解码的三维数据解码方法以及三维数据解码装置,以及对该编码数据进行复用的三维数据复用方法、以及传输该编码数据的三维数据传输方法进行说明。
特别是,当前,作为点群数据的编码方法(编码方式)研究了第1编码方法和第2编码方法,但没有定义将编码数据的构成以及编码数据保存到系统格式的方法,在这种情况下,存在无法直接进行编码部中的MUX处理(复用)、或者传输或蓄积这样的课题。
此外,如PCC(Point Cloud Compression:点云压缩)那样,对第1编码方法和第2编码方法这2个编解码器混合存在的格式进行支持的方法至今不存在。
在本实施方式中,对将第1编码方法和第2编码方法这2个编解码器混合存在的PCC编码数据的构成以及将编码数据向系统格式保存的方法进行说明。
首先,说明本实施方式的三维数据(点群数据)编码解码系统的构成。图1是表示本实施方式的三维数据编码解码系统的构成例的图。如图1所示,三维数据编码解码系统包括三维数据编码系统4601、三维数据解码系统4602、传感器终端4603以及外部连接部4604。
三维数据编码系统4601通过对作为三维数据的点群数据进行编码来生成编码数据或复用数据。此外,三维数据编码系统4601可以是由单个装置实现的三维数据编码装置,也可以是由多个装置实现的系统。另外,三维数据编码装置也可以包含于三维数据编码系统4601中包含的多个处理部中的一部分。
三维数据编码系统4601包括点群数据生成系统4611、提示部4612、编码部4613、复用部4614、输入输出部4615、以及控制部4616。点群数据生成系统4611包括传感器信息取得部4617和点群数据生成部4618。
传感器信息取得部4617从传感器终端4603取得传感器信息,并将传感器信息输出到点群数据生成部4618。点群数据生成部4618根据传感器信息生成点群数据,并将点群数据输出到编码部4613。
提示部4612向用户提示传感器信息或点群数据。例如,提示部4612显示基于传感器信息或点群数据的信息或图像。
编码部4613对点群数据进行编码(压缩),将得到的编码数据、在编码过程中得到的控制信息和其他附加信息输出到复用部4614。附加信息例如包含传感器信息。
复用部4614通过复用从编码部4613输入的编码数据、控制信息和附加信息来生成复用数据。复用数据的格式例如是用于蓄积的文件格式、或用于传输的包格式。
输入输出部4615(例如,通信部或接口)将复用数据向外部输出。或者,复用数据被蓄积于内部存储器等蓄积部。控制部4616(或应用执行部)控制各处理部。即,控制部4616进行编码及复用等控制。
此外,也可以将传感器信息向编码部4613或复用部4614输入。另外,输入输出部4615也可以将点群数据或编码数据直接向外部输出。
从三维数据编码系统4601输出的传输信号(复用数据)经由外部连接部4604输入到三维数据解码系统4602。
三维数据解码系统4602通过对编码数据或复用数据进行解码而生成作为三维数据的点群数据。此外,三维数据解码系统4602可以是由单一的装置实现的三维数据解码装置,也可以是由多个装置实现的系统。另外,三维数据解码装置也可以包含三维数据解码系统4602中包含的多个处理部中的一部分。
三维数据解码系统4602包括传感器信息取得部4621、输入输出部4622、逆复用部4623、解码部4624、提示部4625、用户接口4626、以及控制部4627。
传感器信息取得部4621从传感器终端4603取得传感器信息。
输入输出部4622取得传输信号,根据传输信号对复用数据(文件格式或者包)进行解码,并将复用数据输出到逆复用部4623。
逆复用部4623从复用数据中取得编码数据、控制信息以及附加信息,并将编码数据、控制信息以及附加信息输出到解码部4624。
解码部4624通过对编码数据进行解码而重构点群数据。
提示部4625将点群数据提示给用户。例如,提示部4625显示基于点群数据的信息或图像。用户接口4626取得基于用户的操作的指示。控制部4627(或应用执行部)控制各处理部。即,控制部4627进行逆复用、解码以及提示等的控制。
此外,输入输出部4622也可以从外部直接取得点群数据或编码数据。另外,提示部4625也可以取得传感器信息等附加信息,并提示基于附加信息的信息。另外,提示部4625也可以基于由用户接口4626取得的用户的指示来进行提示。
传感器终端4603生成由传感器取得的信息即传感器信息。传感器终端4603是搭载有传感器或相机的终端,例如有汽车等移动体、飞机等飞行物体、移动终端或相机等。
能够由传感器终端4603取得的传感器信息例如是(1)由LIDAR、毫米波雷达或者红外线传感器得到的传感器终端4603与对象物的距离、或者对象物的反射率、(2)从多个单眼相机图像或者立体相机图像得到的相机与对象物的距离或者对象物的反射率等。另外,传感器信息也可以包含传感器的姿势、朝向、回转(角速度)、位置(GPS信息或者高度)、速度或者加速度等。另外,传感器信息也可以包含气温、气压、湿度、或者磁性等。
外部连接部4604通过集成电路(LSI或IC)、外部蓄积部、经由因特网的与云服务器的通信、或者广播等来实现。
接着,对点群数据进行说明。图2是表示点群数据的构成的图。图3是表示记述了点群数据的信息的数据文件的构成例的图。
点群数据包含多个点的数据。各点的数据包含位置信息(三维坐标)以及与该位置信息相对的属性信息。将聚集了多个这样的点的群称为点群。例如,点群表示对象物(对象)的三维形状。
有时也将三维坐标等位置信息(Position)称为几何形状(geometry)。另外,各点的数据也可以包含多个属性类别的属性信息(attribute)。属性类别例如是颜色或反射率等。
既可以将1个属性信息针对1个位置信息建立对应,也可以将具有多个不同的属性类别的属性信息针对1个位置信息建立对应。另外,也可以将多个相同的属性类别的属性信息针对1个位置信息建立对应。
图3所示的数据文件的构成例是位置信息和属性信息1对1对应的情况的例子,表示构成点群数据的N个点的位置信息和属性信息。
位置信息例如是x、y、z这3轴的信息。属性信息例如是RGB的颜色信息。作为代表性的数据文件,有ply文件等。
接着,对点群数据的种类进行说明。图4是表示点群数据的种类的图。如图4所示,点群数据包含静态对象和动态对象。
静态对象是任意时间(某个时刻)的三维点群数据。动态对象是随时间变化的三维点群数据。以下,将某时刻的三维点群数据称为PCC帧或者帧。
对象可以是如通常的影像数据那样区域被某种程度限制的点群,也可以是像地图信息那样区域未被限制的大规模点群。
另外,存在各种密度的点群数据,也可以存在稀疏的点群数据和密集的点群数据。
以下,对各处理部的详细情况进行说明。传感器信息通过LIDAR或者测距仪等距离传感器、立体相机或者多个单眼相机的组合等各种方法来取得。点群数据生成部4618基于由传感器信息取得部4617得到的传感器信息生成点群数据。点群数据生成部4618生成位置信息作为点群数据,对位置信息附加针对该位置信息的属性信息。
点群数据生成部4618也可以在生成位置信息或者附加属性信息时,对点群数据进行加工。例如,点群数据生成部4618也可以通过删除位置重复的点群来减少数据量。另外,点群数据生成部4618也可以对位置信息进行变换(位置转变、旋转或者标准化等),也可以对属性信息进行渲染。
此外,在图1中,点群数据生成系统4611包含于三维数据编码系统4601,但也可以独立设置于三维数据编码系统4601的外部。
编码部4613基于预先规定的编码方法对点群数据进行编码,由此生成编码数据。编码方法大致存在以下2种。第1种是使用了位置信息的编码方法,以后将该编码方法记载为第1编码方法。第2种是使用了视频编解码器的编码方法,以后将该编码方法记载为第2编码方法。
解码部4624基于预先规定的编码方法对编码数据进行解码,由此对点群数据进行解码。
复用部4614通过使用现有的复用方式对编码数据进行复用,从而生成复用数据。所生成的复用数据被传输或蓄积。复用部4614除了PCC编码数据以外,还复用影像、声音、字幕、应用、文件等其他媒体、或者基准时刻信息。另外,复用部4614还可以对与传感器信息或者点群数据相关联的属性信息进行复用。
作为复用方式或文件格式,有ISOBMFF、作为ISOBMFF基础的传输方式的MPEG-DASH、MMT、MPEG-2 TS Systems、RMP等。
逆复用部4623从复用数据中提取PCC编码数据、其他媒体以及时刻信息等。
输入输出部4615使用与广播或通信等传输介质或蓄积介质一致的方法传输复用数据。输入输出部4615可以经由因特网与其他设备进行通信,也可以与云服务器等蓄积部进行通信。
作为通信协议,使用http、ftp、TCP或UDP等。既可以使用PULL型的通信方式,也可以使用PUSH型的通信方式。
可以使用有线传输和无线传输中的任一种。作为有线传输,使用Ethernet(注册商标)、USB、RS-232C、HDMI(注册商标)或同轴电缆等。作为无线传输,使用无线LAN、Wi-Fi(注册商标)、Bluetooth(注册商标)或毫米波等。
此外,作为广播方式,例如使用DVB-T2、DVB-S2、DVB-C2、ATSC3.0或ISDB-S3等。
图5是表示进行第1编码方法的编码的编码部4613的例子即第1编码部4630的构成的图。图6是第1编码部4630的框图。第1编码部4630通过用第1编码方法对点群数据进行编码来生成编码数据(编码流)。该第1编码部4630包括位置信息编码部4631、属性信息编码部4632、附加信息编码部4633以及复用部4634。
第1编码部4630具有意识到三维结构来进行编码的特征。另外,第1编码部4630具有属性信息编码部4632使用从位置信息编码部4631得到的信息进行编码的特征。第1编码方法也被称为GPCC(Geometry based PCC)。
点群数据是PLY文件那样的PCC点群数据、或者根据传感器信息生成的PCC点群数据,包含位置信息(Position)、属性信息(Attribute)以及其他的附加信息(MetaData)。位置信息被输入到位置信息编码部4631,属性信息被输入到属性信息编码部4632,附加信息被输入到附加信息编码部4633。
位置信息编码部4631通过对位置信息进行编码,来生成作为编码数据的编码位置信息(Compressed Geometry)。例如,位置信息编码部4631使用八叉树等N叉树结构对位置信息进行编码。具体而言,在八叉树中,对象空间被分割为8个节点(子空间),生成表示各节点中是否包含点群的8比特的信息(占用率代码)。另外,包含点群的节点进一步被分割为8个节点,生成表示在该8个节点的每一个中是否包含点群的8比特的信息。反复进行该处理,直到成为预先确定的阶层或节点所包含的点群的数量的阈值以下为止。
属性信息编码部4632通过使用由位置信息编码部4631生成的构成信息进行编码,来生成作为编码数据的编码属性信息(Compressed Attribute)。例如,属性信息编码部4632基于由位置信息编码部4631生成的八叉树结构,决定在处理对象的对象点(对象节点)的编码中参照的参照点(参照节点)。例如,属性信息编码部4632参照周边节点或相邻节点中的八叉树中的父节点与对象节点的父节点相同的节点。另外,参照关系的决定方法不限于此。
另外,属性信息的编码处理可以包括量化处理、预测处理和算术编码处理中的至少一个。在该情况下,参照是指在属性信息的预测值的计算中使用参照节点,或者在编码的参数的决定中使用参照节点的状态(例如,表示在参照节点中是否包含点群的占有信息)。例如,编码的参数是量化处理中的量化参数、或者算术编码中的上下文等。
附加信息编码部4633通过对附加信息中的可压缩的数据进行编码,来生成作为编码数据的编码附加信息(Compressed MetaData)。
复用部4634通过对编码位置信息、编码属性信息、编码附加信息以及其他附加信息进行复用,来生成作为编码数据的编码流(Compressed Stream)。所生成的编码流被输出到未图示的系统层的处理部。
接着,对作为进行第1编码方法的解码的解码部4624的例子的第1解码部4640进行说明。图7是表示第1解码部4640的构成的图。图8是第1解码部4640的框图。第1解码部4640通过以第1编码方法对以第1编码方法进行了编码的编码数据(编码流)进行解码,来生成点群数据。该第1解码部4640包括逆复用部4641、位置信息解码部4642、属性信息解码部4643以及附加信息解码部4644。
从未图示的系统层的处理部将作为编码数据的编码流(Compressed Stream)输入到第1解码部4640。
逆复用部4641从编码数据中分离编码位置信息(Compressed Geometry)、编码属性信息(Compressed Attribute)、编码附加信息(Compressed MetaData)以及其他附加信息。
位置信息解码部4642通过对编码位置信息进行解码来生成位置信息。例如,位置信息解码部4642根据由八叉树等N叉树结构表示的编码位置信息,复原用三维坐标表示的点群的位置信息。
属性信息解码部4643基于由位置信息解码部4642生成的构成信息,对编码属性信息进行解码。例如,属性信息解码部4643基于由位置信息解码部4642得到的八叉树结构,决定在处理对象的对象点(对象节点)的解码中参照的参照点(参照节点)。例如,属性信息解码部4643参照周边节点或相邻节点中的八叉树中的父节点与对象节点的父节点相同的节点。另外,参照关系的决定方法不限于此。
另外,属性信息的解码处理也可以包括逆量化处理、预测处理以及算术解码处理中的至少一个。在该情况下,参照是指在属性信息的预测值的计算中使用参照节点、或者在解码的参数的决定中使用参照节点的状态(例如,表示在参照节点中是否包含点群的占有信息)。例如,解码的参数是逆量化处理中的量化参数、或者算术解码中的上下文等。
附加信息解码部4644通过对编码附加信息进行解码来生成附加信息。另外,第1解码部4640在解码时使用位置信息以及属性信息的解码处理所需的附加信息,向外部输出应用所需的附加信息。
接着,对作为进行第2编码方法的编码的编码部4613的例子的第2编码部4650进行说明。图9是表示第2编码部4650的构成的图。图10是第2编码部4650的框图。
第2编码部4650通过以第2编码方法对点群数据进行编码来生成编码数据(编码流)。该第2编码部4650包括附加信息生成部4651、位置图像生成部4652、属性图像生成部4653、影像编码部4654、附加信息编码部4655以及复用部4656。
第2编码部4650具有如下特征:通过将三维结构投影于二维图像来生成位置图像以及属性图像,并使用现有的影像编码方式对所生成的位置图像以及属性图像进行编码。第2编码方法也被称为VPCC(video based PCC,基于视频的PCC)。
点群数据是PLY文件那样的PCC点群数据、或者根据传感器信息生成的PCC点群数据,包含位置信息(Position)、属性信息(Attribute)以及其他的附加信息(MetaData)。
附加信息生成部4651通过将三维结构投影到二维图像,来生成多个二维图像的映射信息。
位置图像生成部4652基于位置信息和由附加信息生成部4651生成的映射信息,生成位置图像(Geometry Image)。该位置图像例如是表示距离(Depth)作为像素值的距离图像。另外,该距离图像既可以是从1个视点观察多个点群的图像(在1个二维平面上投影了多个点群的图像),也可以是从多个视点观察多个点群的多个图像,也可以是将这些多个图像合并而成的1个图像。
属性图像生成部4653基于属性信息和由附加信息生成部4651生成的映射信息,生成属性图像。该属性图像例如是表示属性信息(例如颜色(RGB))作为像素值的图像。另外,该图像可以是从1个视点观察多个点群的图像(在1个二维平面上投影了多个点群的图像),也可以是从多个视点观察多个点群的多个图像,也可以是将这些多个图像合并而成的1个图像。
影像编码部4654通过使用影像编码方式对位置图像以及属性图像进行编码,从而生成作为编码数据的编码位置图像(Compressed Geometry Image)以及编码属性图像(Compressed Attribute Image)。此外,作为影像编码方式,可以使用公知的任意的编码方式。例如,影像编码方式是AVC或HEVC等。
附加信息编码部4655通过对点群数据中包含的附加信息以及映射信息等进行编码来生成编码附加信息(Compressed MetaData)。
复用部4656通过对编码位置图像、编码属性图像、编码附加信息以及其他附加信息进行复用,来生成作为编码数据的编码流(Compressed Stream)。所生成的编码流被输出到未图示的系统层的处理部。
接着,对作为进行第2编码方法的解码的解码部4624的例子的第2解码部4660进行说明。图11是表示第2解码部4660的构成的图。图12是第2解码部4660的框图。第2解码部4660通过以第2编码方法对以第2编码方法进行了编码的编码数据(编码流)进行解码,来生成点群数据。该第2解码部4660包括逆复用部4661、影像解码部4662、附加信息解码部4663、位置信息生成部4664以及属性信息生成部4665。
从未图示的系统层的处理部将作为编码数据的编码流(Compressed Stream)输入到第2解码部4660。
逆复用部4661从编码数据中分离编码位置图像(Compressed Geometry Image)、编码属性图像(Compressed Attribute Image)、编码附加信息(Compressed MetaData)以及其他附加信息。
影像解码部4662通过使用影像编码方式对编码位置图像以及编码属性图像进行解码,来生成位置图像以及属性图像。此外,作为影像编码方式,可以使用公知的任意的编码方式。例如,影像编码方式是AVC或HEVC等。
附加信息解码部4663通过对编码附加信息进行解码,来生成包含映射信息等的附加信息。
位置信息生成部4664使用位置图像和映射信息生成位置信息。属性信息生成部4665使用属性图像和映射信息生成属性信息。
第2解码部4660在解码时使用解码所需的附加信息,向外部输出应用所需的附加信息。
以下,说明PCC编码方式中的课题。图13是表示与PCC编码数据有关的协议栈的图。图13表示在PCC编码数据中复用、传输或蓄积影像(例如HEVC)或声音等其他媒体的数据的例子。
复用方式及文件格式具有用于复用、传输或蓄积各种编码数据的功能。为了传输或蓄积编码数据,必须将编码数据变换为复用方式的格式。例如,在HEVC中,规定了将编码数据保存在被称为NAL单元的数据结构中,将NAL单元保存到ISOBMFF中的技术。
另一方面,当前,作为点群数据的编码方式,正在研究第1编码方法(Codec1)以及第2编码方法(Codec2),但没有定义编码数据的构成以及将编码数据保存到系统格式的方法,存在无法直接进行编码部中的MUX处理(复用)、传输以及蓄积这样的课题。
另外,以下只要没有特定的编码方法的记载,就表示第1编码方法及第2编码方法中的某一个。
(实施方式2)
在本实施方式中,对将NAL单元向ISOBMFF的文件保存的方法进行说明。
ISOBMFF(ISO based media file format:ISO基础媒体文件格式)是由ISO/IEC14496-12规定的文件格式标准。ISOBMFF规定了能够将视频、音频及文本等各种媒体复用而保存的格式,是不依赖于媒体的标准。
对ISOBMFF的基本构造(文件)进行说明。ISOBMFF中的基本单位是盒子(box)。盒子由type(类型)、length(长度)、data(数据)构成,将各种type的盒子组合而成的集合为文件。
图14是表示ISOBMFF的基本构造(文件)的图。ISOBMFF的文件主要包括将文件的版本(brand)用4CC(4字符码)表示的ftyp、保存控制信息等的元数据的moov、以及保存数据的mdat等的盒子。
向ISOBMFF的文件的各媒体的保存方法被另行规定,例如,AVC视频及HEVC视频的保存方法由ISO/IEC14496-15规定。这里,为了将PCC编码数据积蓄或传输,可以考虑将ISOBMFF的功能扩展而使用,但还没有将PCC编码数据向ISOBMFF的文件保存的规定。所以,在本实施方式中,对将PCC编码数据向ISOBMFF的文件保存的方法进行说明。
图15是表示将PCC编解码器共同的NAL单元向ISOBMFF的文件保存的情况下的协议栈的图。这里,PCC编解码器共同的NAL单元被保存到ISOBMFF的文件。NAL单元是PCC编解码器共同的,但由于在NAL单元中保存多个PCC编解码器,所以希望规定与各个编解码器对应的保存方法(Carriage of Codec1、Carriage of Codec2)。
(实施方式3)
在本实施方式中,对由上述的第1编码部4630或第2编码部4650生成的编码数据(位置信息(Geometry)、属性信息(Attribute)、附加信息(Metadata))的种类及附加信息(元数据)的生成方法、以及复用部中的复用处理进行说明。另外,附加信息(元数据)也有表述为参数集或控制信息的情况。
在本实施方式中,以在图4中说明的动态对象(随时间而变化的三维点群数据)为例进行说明,但在静态对象(任意的时刻的三维点群数据)的情况下也可以使用同样的方法。
图16是表示在有关本实施方式的三维数据编码装置中包含的编码部4801及复用部4802的构成的图。编码部4801例如对应于上述的第1编码部4630或第2编码部4650。复用部4802对应于上述的复用部4634或46456。
编码部4801将多个PCC(Point Cloud Compression)帧的点群数据编码,生成多个位置信息、属性信息及附加信息的编码数据(Multiple Compressed Data)。
复用部4802通过对多个数据种类(位置信息、属性信息及附加信息)的数据进行NAL单元化,将数据变换为考虑了解码装置中的数据访问的数据构成。
图17是表示由编码部4801生成的编码数据的构成例的图。图中的箭头表示与编码数据的解码有关的依赖关系,箭头的根部依赖于箭头的尖部的数据。即,解码装置将箭头的尖部的数据解码,使用该解码的数据将箭头的根部的数据解码。换言之,依赖是指在依赖源的数据的处理(编码或解码等)中参照(使用)依赖目标的数据。
首先,对位置信息的编码数据的生成处理进行说明。编码部4801通过将各帧的位置信息编码,生成各帧的编码位置数据(Compressed Geometry Data)。此外,将编码位置数据用G(i)表示。i表示帧号或帧的时刻等。
此外,编码部4801生成与各帧对应的位置参数集(GPS(i))。位置参数集包含能够在编码位置数据的解码中使用的参数。此外,每个帧的编码位置数据依赖于对应的位置参数集。
此外,将由多个帧构成的编码位置数据定义为位置序列(Geometry Sequence)。编码部4801生成将在对于位置序列内的多个帧的解码处理中共同使用的参数进行保存的位置序列参数集(Geometry Sequence PS:也记作位置SPS)。位置序列依赖于位置SPS。
接着,对属性信息的编码数据的生成处理进行说明。编码部4801通过将各帧的属性信息编码,生成各帧的编码属性数据(Compressed Attribute Data)。此外,将编码属性数据用A(i)表示。此外,在图17中,示出了存在属性X和属性Y的例子,将属性X的编码属性数据用AX(i)表示,将属性Y的编码属性数据用AY(i)表示。
此外,编码部4801生成与各帧对应的属性参数集(APS(i))。此外,将属性X的属性参数集用AXPS(i)表示,将属性Y的属性参数集用AYPS(i)表示。属性参数集包含能够在编码属性信息的解码中使用的参数。编码属性数据依赖于对应的属性参数集。
此外,将由多个帧构成的编码属性数据定义为属性序列(Attribute Sequence)。编码部4801生成将在对于属性序列内的多个帧的解码处理中共同使用的参数进行保存的属性序列参数集(Attribute Sequence PS:也记作属性SPS)。属性序列依赖于属性SPS。
此外,在第1编码方法中,编码属性数据依赖于编码位置数据。
此外,在图17中,示出了存在两种属性信息(属性X和属性Y)的情况下的例子。在有两种属性信息的情况下,例如由两个编码部生成各自的数据及元数据。此外,例如按属性信息的每个种类来定义属性序列,按属性信息的每个种类来生成属性SPS。
另外,在图17中,示出了位置信息是1种、属性信息是两种的例子,但并不限于此,属性信息也可以是1种,也可以是3种以上。在此情况下,也能够用同样的方法生成编码数据。此外,在不具有属性信息的点群数据的情况下,也可以没有属性信息。在此情况下,编码部4801也可以不生成与属性信息关联的参数集。
接着,对附加信息(元数据)的生成处理进行说明。编码部4801生成PCC流整体的参数集即PCC流PS(PCC Stream PS:也记作流PS)。编码部4801在流PS中保存能够在对1个或多个位置序列及1个或多个属性序列的解码处理中共同使用的参数。例如,在流PS中,包含表示点群数据的编解码器的识别信息及表示在编码中使用的算法的信息等。位置序列及属性序列依赖于流PS。
接着,对访问单元及GOF进行说明。在本实施方式中,新导入访问单元(AccessUnit:AU)及GOF(Group of Frame:帧组)的考虑方式。
访问单元是在解码时用来访问数据的基本单位,由1个以上的数据及1个以上的元数据构成。例如,访问单元由相同时刻的位置信息和1个或多个属性信息构成。GOF是随机访问单位,由1个以上的访问单元构成。
编码部4801生成访问单元头(AU Header)作为表示访问单元的开头的识别信息。编码部4801在访问单元头中保存与访问单元有关的参数。例如,访问单元头包含:在访问单元中包含的编码数据的构成或信息。此外,访问单元头包含对在访问单元中包含的数据共同使用的参数,例如与编码数据的解码有关的参数等。
另外,编码部4801也可以代替访问单元头而生成不包含与访问单元有关的参数的访问单元定界符。该访问单元定界符被用作表示访问单元的开头的识别信息。解码装置通过检测访问单元头或访问单元定界符,识别访问单元的开头。
接着,对GOF开头的识别信息的生成进行说明。编码部4801生成GOF头(GOFHeader)作为表示GOF的开头的识别信息。编码部4801在GOF头中保存与GOF有关的参数。例如,GOF头包含:在GOF中包含的编码数据的构成或信息。此外,GOF头包含对在GOF中包含的数据共同使用的参数,例如与编码数据的解码有关的参数等。
另外,编码部4801也可以代替GOF头而生成不包含与GOF有关的参数的GOF定界符。该GOF定界符被用作表示GOF的开头的识别信息。解码装置通过检测GOF头或GOF定界符,识别GOF的开头。
在PCC编码数据中,例如定义为访问单元是PCC帧单位。解码装置基于访问单元开头的识别信息,对PCC帧进行访问。
此外,例如GOF被定义为1个随机访问单位。解码装置基于GOF开头的识别信息,对随机访问单位进行访问。例如,如果PCC帧相互没有依赖关系而能够单独解码,则也可以将PCC帧定义为随机访问单位。
另外,也可以对1个访问单元分配两个以上的PCC帧,也可以对1个GOF分配多个随机访问单位。
此外,编码部4801也可以定义并生成上述以外的参数集或元数据。例如,编码部4801也可以生成保存有可能在解码时不一定使用的参数(可选的参数)的SEI(Supplemental Enhancement Information:补充增强信息)。
接着,说明编码数据的构成及编码数据向NAL单元的保存方法。
例如,按编码数据的每个种类规定数据格式。图18是表示编码数据及NAL单元的例子的图。
例如,如图18所示,编码数据包括头和有效载荷。另外,编码数据也可以包含编码数据、头或表示有效载荷的长度(数据量)的长度信息。此外,编码数据也可以不包含头。
头例如包含用来确定数据的识别信息。该识别信息例如表示数据种类或帧号。
头例如包含表示参照关系的识别信息。该识别信息例如是在数据间有依赖关系的情况下被保存到头中,用来从参照源对参照目标进行参照的信息。例如,在参照目标的头中,包含用来确定该数据的识别信息。在参照源的头中,包含表示参照目标的识别信息。
另外,在能够从其他信息识别或导出参照目标或参照源的情况下,也可以省略用来确定数据的识别信息或表示参照关系的识别信息。
复用部4802将编码数据保存在NAL单元的有效载荷中。在NAL单元头中,包含作为编码数据的识别信息的pcc_nal_unit_type。图19是表示pcc_nal_unit_type的语义例的图。
如图19所示,在pcc_codec_type是编解码器1(Codec1:第1编码方法)的情况下,pcc_nal_unit_type的值0~10被分配给编解码器1中的编码位置数据(Geometry)、编码属性X数据(AttributeX)、编码属性Y数据(AttributeY)、位置PS(Geom.PS)、属性XPS(AttrX.PS)、属性YPS(AttrX.PS)、位置SPS(Geometry Sequence PS)、属性XSPS(AttributeX Sequence PS)、属性YSPS(AttributeY Sequence PS)、AU头(AU Header)、GOF头(GOF Header)。此外,值11以后被分配为编解码器1的备用。
在pcc_codec_type是编解码器2(Codec2:第2编码方法)的情况下,pcc_nal_unit_type的值0~2被分配给编解码器的数据A(DataA)、元数据A(MetaDataA)、元数据B(MetaDataB)。此外,值3以后被分配为编解码器2的备用。
接着,对数据的送出顺序进行说明。以下,对NAL单元的送出顺序的制约进行说明。
复用部4802将NAL单元以GOF或AU单位一起送出。复用部4802将GOF头配置在GOF的开头,将AU头配置在AU的开头。
复用部4802也可以按每个AU来配置序列参数集(SPS),以使得在因丢包等而丢失了数据的情况下解码装置也能够从下个AU起进行解码。
在编码数据中有与解码有关的依赖关系的情况下,解码装置在将参照目标的数据解码后,将参照源的数据解码。在解码装置中,为了使得能够不将数据重新排列而以接收到的顺序进行解码,复用部4802先送出参照目标的数据。
图20是表示NAL单元的送出顺序的例子的图。图20表示位置信息优先、参数优先和数据合并这3个例子。
位置信息优先的送出顺序是将与位置信息有关的信息和与属性信息有关的信息的各信息一起送出的例子。在该送出顺序的情况下,与位置信息有关的信息的送出比与属性信息有关的信息的送出更早完成。
例如,通过使用该送出顺序,不解码属性信息的解码装置通过忽视属性信息的解码,有可能能够设置不进行处理的时间。此外,例如在想要早解码位置信息的解码装置的情况下,通过较早得到位置信息的编码数据,有可能能够更早地解码位置信息。
另外,在图20中,将属性XSPS与属性YSPS合并而记作属性SPS,但也可以单独地配置属性XSPS和属性YSPS。
在参数集优先的送出顺序中,先送出参数集,后送出数据。
如以上这样,只要遵循NAL单元送出顺序的制约,复用部4802将NAL单元以怎样的顺序送出都可以。例如,也可以定义顺序识别信息,复用部4802具有以多个样式的顺序送出NAL单元的功能。例如在流PS中保存NAL单元的顺序识别信息。
三维数据解码装置也可以基于顺序识别信息进行解码。也可以从三维数据解码装置向三维数据编码装置指示希望的送出顺序,三维数据编码装置(复用部4802)按照被指示的送出顺序对送出顺序进行控制。
另外,只要是如数据合并的送出顺序那样遵循送出顺序的制约的范围,复用部4802也可以生成将多个功能归并的编码数据。例如,如图20所示,也可以将GOF头与AU头合并,也可以将AXPS与AYPS合并。在此情况下,在pcc_nal_unit_type中,定义表示是具有多个功能的数据的识别符。
以下,对本实施方式的变形例进行说明。如帧级的PS、序列级的PS、PCC序列级的PS那样,PS有级别,如果将PCC序列级设为上位的级别,将帧级设为下位的级别,则参数的保存方法也可以使用下述的方法。
将默认的PS的值用较上位的PS表示。此外,在下位的PS的值与上位的PS的值不同的情况下,用下位的PS表示PS的值。或者,在上位不记载PS的值,在下位的PS中记载PS的值。或者,用下位的PS和上位的PS的某一方或双方来表示将PS的值用下位的PS表示、还是用上位的PS表示、还是用双方表示的信息。或者,也可以将下位的PS归并到上位的PS。或者,在下位的PS与上位的PS重复的情况下,复用部4802也可以将某一方的送出省略。
另外,编码部4801或复用部4802也可以将数据分割为切片或瓦片等,将分割后的数据送出。在分割后的数据中,包含用来识别所分割的数据的信息,在参数集中包含在分割数据的解码中使用的参数。在此情况下,在pcc_nal_unit_type中,定义了表示是与瓦片或切片有关的数据或保存参数的数据的识别符。
(实施方式4)
在HEVC编码中,为了使得能够进行解码装置的并行处理,有切片或瓦片等的数据分割的工具,但在PCC(Point Cloud Compression:点云压缩)编码中还没有。
在PCC中,根据并行处理、压缩效率及压缩算法,可以考虑各种各样的数据分割方法。这里,对切片及瓦片的定义、数据结构及送接收方法进行说明。
图21是表示有关本实施方式的三维数据编码装置中包含的第1编码部4910的构成的框图。第1编码部4910通过用第1编码方法(GPCC(Geometry based PCC))将点群数据编码而生成编码数据(编码流)。该第1编码部4910包括分割部4911、多个位置信息编码部4912、多个属性信息编码部4913、附加信息编码部4914和复用部4915。
分割部4911通过将点群数据分割而生成多个分割数据。具体而言,分割部4911通过将点群数据的空间分割为多个子空间而生成多个分割数据。这里子空间指的是瓦片及切片中的一方、或瓦片及切片的组合。更具体地讲,点群数据包含位置信息、属性信息及附加信息。分割部4911将位置信息分割为多个分割位置信息,将属性信息分割为多个分割属性信息。此外,分割部4911生成关于分割的附加信息。
多个位置信息编码部4912通过将多个分割位置信息编码,生成多个编码位置信息。例如,多个位置信息编码部4912将多个分割位置信息并行处理。
多个属性信息编码部4913通过将多个分割属性信息编码而生成多个编码属性信息。例如,多个属性信息编码部4913将多个分割属性信息并行处理。
附加信息编码部4914通过将点群数据中包含的附加信息和由分割部4911在分割时生成的关于数据分割的附加信息编码,生成编码附加信息。
复用部4915通过将多个编码位置信息、多个编码属性信息及编码附加信息复用,生成编码数据(编码流),将所生成的编码数据送出。此外,编码附加信息在解码时被使用。
另外,在图21中,示出了位置信息编码部4912及属性信息编码部4913的数量分别为两个的例子,但位置信息编码部4912及属性信息编码部4913的数量分别也可以是1个,也可以是3个以上。此外,多个分割数据既可以如CPU内的多核那样在同一芯片内并行处理,也可以由多个芯片的核并行处理,也可以由多个芯片的多个核进行并行处理。
图22是表示第1解码部4920的构成的框图。第1解码部4920通过对通过用第1编码方法(GPCC)将点群数据编码而生成的编码数据(编码流)进行解码,将点群数据复原。该第1解码部4920包括逆复用部4921、多个位置信息解码部4922、多个属性信息解码部4923、附加信息解码部4924和结合部4925。
逆复用部4921通过将编码数据(编码流)逆复用,生成多个编码位置信息、多个编码属性信息及编码附加信息。
多个位置信息解码部4922通过将多个编码位置信息解码而生成多个分割位置信息。例如,多个位置信息解码部4922将多个编码位置信息并行处理。
多个属性信息解码部4923通过将多个编码属性信息解码而生成多个分割属性信息。例如,多个属性信息解码部4923将多个编码属性信息并行处理。
多个附加信息解码部4924通过将编码附加信息解码,生成附加信息。
结合部4925通过使用附加信息将多个分割位置信息结合,生成位置信息。结合部4925通过使用附加信息将多个分割属性信息结合,生成属性信息。
另外,在图22中示出了位置信息解码部4922及属性信息解码部4923的数量分别为两个的例子,但位置信息解码部4922及属性信息解码部4923的数量分别也可以是1个,也可以是3个以上。此外,多个分割数据既可以如CPU内的多核那样在同一芯片内并行处理,也可以由多个芯片的核并行处理,也可以由多个芯片的多个核进行并行处理。
接着,说明分割部4911的构成。图23是分割部4911的框图。分割部4911包括切片分割部4931(Slice Divider)、位置信息瓦片分割部4932(Geometry Tile Divider)和属性信息瓦片分割部4933(Attribute Tile Divider)。
切片分割部4931通过将位置信息(Position(Geometry))分割为切片而生成多个切片位置信息。此外,切片分割部4931通过将属性信息(Attribute)分割为切片而生成多个切片属性信息。此外,切片分割部4931输出有关切片分割的信息及包含在切片分割中生成的信息的切片附加信息(Slice MetaData)。
位置信息瓦片分割部4932通过将多个切片位置信息分割为瓦片而生成多个分割位置信息(多个瓦片位置信息)。此外,位置信息瓦片分割部4932输出与位置信息的瓦片分割有关的信息及包含在位置信息的瓦片分割中生成的信息的位置瓦片附加信息(GeometryTile MetaData)。
属性信息瓦片分割部4933通过将多个切片属性信息分割为瓦片而生成多个分割属性信息(多个瓦片属性信息)。此外,属性信息瓦片分割部4933输出与属性信息的瓦片分割有关的信息及包含在属性信息的瓦片分割中生成的信息的属性瓦片附加信息(Attribute Tile MetaData)。
另外,被分割的切片或瓦片的数量是1个以上。即,也可以不进行切片或瓦片的分割。
此外,这里示出了在切片分割后进行瓦片分割的例子,但也可以在瓦片分割后进行切片分割。此外,除了切片及瓦片以外,也可以再定义新的分割种类,以3个以上的分割种类进行分割。
以下,对点群数据的分割方法进行说明。图24是表示切片及瓦片分割的例子的图。
首先,对切片分割的方法进行说明。分割部4911将三维点群数据以切片单位分割为任意的点群。分割部4911在切片分割中不分割构成点的位置信息和属性信息,而将位置信息和属性信息一齐分割。即,分割部4911以任意点处的位置信息和属性信息属于相同的切片的方式进行切片分割。另外,只要遵循这些,则分割数量及分割方法是怎样的方法都可以。此外,分割的最小单位是点。例如,位置信息和属性信息的分割数量相同。例如,与切片分割后的位置信息对应的三维点和与属性信息对应的三维点包含于相同的切片中。
此外,分割部4911在切片分割时生成作为与分割数量及分割方法有关的附加信息的切片附加信息。切片附加信息在位置信息和属性信息中是相同的。例如,切片附加信息包含表示分割后的包围盒(bounding box)的基准坐标位置、大小或边的长度的信息。此外,切片附加信息包含表示分割数量及分割类型等的信息。
接着,对瓦片分割的方法进行说明。分割部4911将被切片分割后的数据分割为切片位置信息(G切片)和切片属性信息(A切片),将切片位置信息和切片属性信息分别分割为瓦片单位。
另外,在图24中示出了以8叉树结构分割的例子,但分割数量及分割方法是怎样的方法都可以。
此外,分割部4911将位置信息和属性信息既可以用不同的分割方法分割,也可以用相同的分割方法分割。此外,分割部4911将多个切片既可以用不同的分割方法分割为瓦片,也可以用相同的分割方法分割为瓦片。
此外,分割部4911在瓦片分割时生成与分割数量及分割方法有关的瓦片附加信息。瓦片附加信息(位置瓦片附加信息及属性瓦片附加信息)在位置信息和属性信息中独立。例如,瓦片附加信息包含表示分割后的包围盒的基准坐标位置、大小或边的长度的信息。此外,瓦片附加信息包含表示分割数量及分割类型等的信息。
接着,说明将点群数据分割为切片或瓦片的方法的例子。作为切片或瓦片分割的方法,分割部4911既可以使用预先设定的方法,也可以根据点群数据而自适应地切换所使用的方法。
在切片分割时,分割部4911对于位置信息和属性信息一齐将三维空间分割。例如,分割部4911判定对象的形状,根据对象的形状将三维空间分割为切片。例如,分割部4911提取树或建筑物等对象,以对象单位进行分割。例如,分割部4911进行切片分割,以使1个或多个对象的整体包含于1个切片中。或者,分割部4911将一个对象分割为多个切片。
在此情况下,编码装置例如也可以按每个切片改变编码方法。例如,编码装置也可以对特定的对象或对象的特定的一部分使用高品质的压缩方法。在此情况下,编码装置也可以将表示每个切片的编码方法的信息向附加信息(元数据)保存。
此外,分割部4911也可以基于地图信息或位置信息进行切片分割,以使各切片对应于预先设定的坐标空间。
在瓦片分割时,分割部4911将位置信息和属性信息独立地分割。例如,分割部4911根据数据量或处理量将切片分割为瓦片。例如,分割部4911判定切片的数据量(例如切片中包含的三维点的数量)是否比预先设定的阈值多。分割部4911在切片的数据量比阈值多的情况下将切片分割为瓦片。分割部4911在切片的数据量比阈值少时不将切片分割为瓦片。
例如,分割部4911将切片分割为瓦片,以使解码装置中的处理量或处理时间成为一定的范围(预先设定的值以下)。由此,解码装置的每个瓦片的处理量成为一定,解码装置中的分散处理变得容易。
此外,分割部4911在位置信息和属性信息中处理量不同的情况下,例如在位置信息的处理量比属性信息的处理量多的情况下,使位置信息的分割数量比属性信息的分割数量多。
此外,例如根据内容,在解码装置也可以将位置信息较早地解码并显示、将属性信息然后慢慢解码而显示的情况下,分割部4911也可以使位置信息的分割数量比属性信息的分割数量多。由此,解码装置能够使位置信息的并行数量变多,所以能够使位置信息的处理比属性信息的处理高速化。
另外,解码装置并不需要一定将被切片化或瓦片化的数据并行处理,也可以根据解码处理部的数量或能力来判定是否将它们并行处理。
通过用以上那样的方法分割,能够实现与内容或对象对应的自适应的编码。此外,能够实现解码处理中的并行处理。由此,点群编码系统或点群解码系统的柔性提高。
图25是表示切片及瓦片的分割的样式的例子的图。图中的DU是数据单位(DataUnit),表示瓦片或切片的数据。此外,各DU包括切片索引(Slice Index)和瓦片索引(TileIndex)。图中的DU的右上的数值表示切片索引,DU的左下的数值表示瓦片索引。
在样式1中,在切片分割中,在G切片和A切片中分割数量及分割方法相同。在瓦片分割中,对于G切片的分割数量及分割方法与对于A切片的分割数量及分割方法不同。此外,在多个G切片间使用相同的分割数量及分割方法。在多个A切片间使用相同的分割数量及分割方法。
在样式2中,在切片分割中,在G切片和A切片中分割数量及分割方法相同。在瓦片分割中,对于G切片的分割数量及分割方法与对于A切片的分割数量及分割方法不同。此外,在多个G切片间,分割数量及分割方法不同。在多个A切片间,分割数量及分割方法不同。
接着,对分割数据的编码方法进行说明。三维数据编码装置(第1编码部4910)将被分割后的数据分别编码。三维数据编码装置在将属性信息编码时,生成表示基于哪个构成信息(位置信息、附加信息或其他属性信息)进行了编码的依赖关系信息作为附加信息。即,依赖关系信息例如表示参照目标(依赖目标)的构成信息。在此情况下,三维数据编码装置基于与属性信息的分割形状对应的构成信息生成依赖关系信息。另外,三维数据编码装置也可以基于与多个分割形状对应的构成信息生成依赖关系信息。
依赖关系信息也可以由三维数据编码装置生成,所生成的依赖关系信息被送出至三维数据解码装置。或者,也可以由三维数据解码装置生成依赖关系信息,三维数据编码装置不送出依赖关系信息。此外,也可以预先设定三维数据编码装置使用的依赖关系,三维数据编码装置不送出依赖关系信息。
图26是表示各数据的依赖关系的一例的图。图中的箭头的尖部表示依赖目标,箭头的根部表示依赖源。三维数据解码装置以从依赖目标到依赖源的顺序将数据解码。此外,在图中用实线表示的数据是实际被送出的数据,由点线表示的数据是不被送出的数据。
此外,在该图中,G表示位置信息,A表示属性信息。Gs1表示切片号1的位置信息,Gs2表示切片号2的位置信息。Gs1t1表示切片号1且瓦片号1的位置信息,Gs1t2表示切片号1且瓦片号2的位置信息,Gs2t1表示切片号2且瓦片号1的位置信息,Gs2t2表示切片号2且瓦片号2的位置信息。同样,As1表示切片号1的属性信息,As2表示切片号2的属性信息。As1t1表示切片号1且瓦片号1的属性信息,As1t2表示切片号1且瓦片号2的属性信息,As2t1表示切片号2且瓦片号1的属性信息,As2t2表示切片号2且瓦片号2的属性信息。
Mslice表示切片附加信息,MGtile表示位置瓦片附加信息,MAtile表示属性瓦片附加信息。Ds1t1表示属性信息As1t1的依赖关系信息,Ds2t1表示属性信息As2t1的依赖关系信息。
此外,三维数据编码装置也可以将数据以解码顺序重新排列,以使得在三维数据解码装置中不需要将数据重新排列。另外,也可以在三维数据解码装置中将数据重新排列,也可以在三维数据编码装置和三维数据解码装置双方中将数据重新排列。
图27是表示数据的解码顺序的例子的图。在图27的例子中,从左方的数据起依次进行解码。三维数据解码装置在处于依赖关系的数据间,先从依赖目标的数据开始进行解码。例如,三维数据编码装置将数据预先重新排列为该顺序而送出。另外,只要是依赖目标的数据为先的顺序,则怎样的顺序都可以。此外,三维数据编码装置也可以将附加信息及依赖关系信息比数据先送出。
图28是表示由三维数据符号装置进行的处理的流程的流程图。首先,三维数据编码装置如上述那样将多个切片或瓦片的数据编码(S4901)。接着,三维数据编码装置如图27所示,以依赖目标的数据为先的方式将数据重新排列(S4902)。接着,三维数据编码装置将重新排列后的数据复用(NAL单元化)(S4903)。
接着,说明在第1解码部4920中包含的结合部4925的构成。图29是表示结合部4925的构成的框图。结合部4925包括位置信息瓦片结合部4941(Geometry Tile Combiner)、属性信息瓦片结合部4942(Attribute Tile Combiner)和切片结合部(Slice Combiner)。
位置信息瓦片结合部4941通过使用位置瓦片附加信息将多个分割位置信息结合,生成多个切片位置信息。属性信息瓦片结合部4942通过使用属性瓦片附加信息将多个分割属性信息结合,生成多个切片属性信息。
切片结合部4943通过使用切片附加信息将多个切片位置信息结合而生成位置信息。此外,切片结合部4943通过使用切片附加信息将多个切片属性信息结合而生成属性信息。
另外,被分割的切片或瓦片的数量是1个以上。即,也可以不进行切片或瓦片的分割。
此外,这里示出了在切片分割后进行瓦片分割的例子,但也可以在瓦片分割后进行切片分割。此外,除了切片及瓦片以外也可以还定义新的分割种类,以3个以上的分割种类进行分割。
接着,说明被切片分割或瓦片分割的编码数据的构成、以及编码数据向NAL单元的保存方法(复用方法)。图30是说明编码数据的构成及编码数据向NAL单元的保存方法的图。
编码数据(分割位置信息及分割属性信息)被保存到NAL单元的有效载荷中。
编码数据包括头和有效载荷。头是用来确定有效载荷中包含的数据的识别信息。该识别信息例如包括切片分割或瓦片分割的种类(slice_type、tile_type)、用来确定切片或瓦片的索引信息(slice_idx、tile_idx)、数据(切片或瓦片)的位置信息、或数据的地址(address)等。用来确定切片的索引信息也记作切片索引(Slice Index)。用来确定瓦片的索引信息也记作瓦片索引(Tile Index)。此外,分割的种类例如是上述那样的基于对象形状的方法、基于地图信息或位置信息的方法、或者基于数据量或处理量的方法等。
另外,上述信息的全部或一部分也可以被保存在分割位置信息的头及分割属性信息的头的一方中,而不保存在另一方中。例如,在位置信息和属性信息中使用相同的分割方法的情况下,在位置信息和属性信息中,分割的种类(slice_type、tile_type)及索引信息(slice_idx、tile_idx)相同。因此,也可以在位置信息和属性信息的一方的头中包含这些信息。例如,在属性信息依赖于位置信息的情况下,位置信息先被处理。因此,也可以在位置信息的头中包含这些信息,在属性信息的头中不包含这些信息。在此情况下,三维数据解码装置例如判断为依赖源的属性信息属于与依赖目标的位置信息的切片或瓦片相同的切片或瓦片。
此外,有关切片分割或瓦片分割的附加信息(切片附加信息、位置瓦片附加信息或属性瓦片附加信息)及表示依赖关系的依赖关系信息等也可以被保存在既有的参数集(GPS、APS、位置SPS或属性SPS等)中而送出。在分割方法按每个帧变化的情况下,也可以在每个帧的参数集(GPS或APS等)中保存表示分割方法的信息。在序列内分割方法不变化的情况下,也可以在每个序列的参数集(位置SPS或属性SPS)中保存表示分割方法的信息。进而,在位置信息和属性信息中使用相同的分割方法的情况下,也可以在PCC流的参数集(流PS)中保存表示分割方法的信息。
此外,上述的信息既可以被保存在上述的某个参数集中,也可以被保存在多个参数集中。此外,也可以定义瓦片分割或切片分割用的参数集,在该参数集中保存上述信息。此外,这些信息也可以被保存在编码数据的头中。
此外,编码数据的头包含表示依赖关系的识别信息。即,在数据间有依赖关系的情况下,该头包含用来从依赖源参照依赖目标的识别信息。例如,在依赖目标的数据的头中,包含用来确定该数据的识别信息。在依赖源的数据的头中,包含表示依赖目标的识别信息。另外,在能够根据其他信息识别或导出用来确定数据的识别信息、与切片分割或瓦片分割有关的附加信息及表示依赖关系的识别信息的情况下,也可以将这些信息省略。
接着,对有关本实施方式的点群数据的编码处理及解码处理的流程进行说明。图31是有关本实施方式的点群数据的编码处理的流程图。
首先,三维数据编码装置决定使用的分割方法(S4911)。该分割方法包含是否进行切片分割、是否进行瓦片分割。此外,分割方法也可以包含进行切片分割或瓦片分割的情况下的分割数量及分割的种类等。分割的种类指的是上述那样的基于对象形状的方法、基于地图信息或位置信息的方法、或者基于数据量或处理量的方法等。另外,分割方法也可以被预先设定。
在进行切片分割的情况下(在S4912中“是”),三维数据编码装置通过将位置信息和属性信息一齐分割,生成多个切片位置信息及多个切片属性信息(S4913)。此外,三维数据编码装置生成有关切片分割的切片附加信息。另外,三维数据编码装置也可以将位置信息和属性信息独立地分割。
在进行瓦片分割的情况下(在S4914中“是”),三维数据编码装置通过将多个切片位置信息及多个切片属性信息(或位置信息及属性信息)独立地分割,生成多个分割位置信息及多个分割属性信息(S4915)。此外,三维数据编码装置生成与瓦片分割有关的位置瓦片附加信息及属性瓦片附加信息。另外,三维数据编码装置也可以将切片位置信息和切片属性信息一齐分割。
接着,三维数据编码装置通过将多个分割位置信息及多个分割属性信息分别编码,生成多个编码位置信息及多个编码属性信息(S4916)。此外,三维数据编码装置生成依赖关系信息。
接着,三维数据编码装置通过将多个编码位置信息、多个编码属性信息及附加信息进行NAL单元化(复用)而生成编码数据(编码流)(S4917)。此外,三维数据编码装置将所生成的编码数据送出。
图32是有关本实施方式的点群数据的解码处理的流程图。首先,三维数据解码装置通过将编码数据(编码流)中包含的有关分割方法的附加信息(切片附加信息、位置瓦片附加信息及属性瓦片附加信息)解析,判定分割方法(S4921)。该分割方法包含是否进行切片分割、是否进行瓦片分割。此外,分割方法也可以包含进行切片分割或瓦片分割的情况下的分割数量及分割的种类等。
接着,三维数据解码装置通过将编码数据中包含的多个编码位置信息及多个编码属性信息使用编码数据中包含的依赖关系信息进行解码,生成分割位置信息及分割属性信息(S4922)。
在由附加信息表示进行了瓦片分割的情况下(在S4923中“是”),三维数据解码装置基于位置瓦片附加信息及属性瓦片附加信息,将多个分割位置信息和多个分割属性信息用各自的方法结合,从而生成多个切片位置信息及多个切片属性信息(S4924)。另外,三维数据解码装置也可以将多个分割位置信息和多个分割属性信息用相同的方法结合。
在由附加信息表示进行了切片分割的情况下(在S4925中“是”),三维数据解码装置基于切片附加信息,将多个切片位置信息及多个切片属性信息(多个分割位置信息及多个分割属性信息)用相同的方法结合,从而生成位置信息及属性信息(S4926)。另外,三维数据解码装置也可以将多个切片位置信息和多个切片属性信息分别用不同的方法结合。
如以上这样,有关本实施方式的三维数据编码装置进行图34所示的处理。首先,三维数据编码装置分割为多个分割数据(例如瓦片),该多个分割数据包含于将包含多个三维点的对象空间分割而成的多个子空间(例如切片),并且分别包含1个以上的三维点(S4932)。这里,分割数据是包含于子空间中,包含1个以上的三维点的1个以上的数据集合体。此外,分割数据也是空间,也可以包括不包含三维点的空间。此外,既可以在1个子空间中包含多个分割数据,也可以在1个子空间中包含1个分割数据。另外,也可以在对象空间中设定多个子空间,也可以在对象空间中设定1个子空间。
接着,三维数据编码装置通过将多个分割数据分别编码,生成与多个分割数据分别对应的多个编码数据(S4931)。三维数据编码装置生成包含多个编码数据和与多个编码数据分别对应的多个控制信息(例如图30所示的头)的比特流(S4932)。在多个控制信息各自中,保存表示与对应于该控制信息的编码数据对应的子空间的第1识别符(例如slice_idx)、和表示与对应于该控制信息的编码数据对应的分割数据的第2识别符(例如tile_idx)。
由此,将由三维数据编码装置生成的比特流解码的三维数据解码装置能够使用第1识别符及第2识别符将多个分割数据的数据结合而容易地复原对象空间。因此,能够减少三维数据解码装置中的处理量。
例如,三维数据编码装置在上述编码中,将在多个分割数据各自中包含的三维点的位置信息和属性信息编码。多个编码数据分别包含位置信息的编码数据和属性信息的编码数据。多个控制信息分别包含位置信息的编码数据的控制信息和属性信息的编码数据的控制信息。第1识别符及第2识别符保存在位置信息的编码数据的控制信息中。
例如,在比特流中,多个控制信息分别配置在与该控制信息对应的编码数据之前。
此外,三维数据编码装置也可以是,包含多个三维点的对象空间被设定为1个以上的子空间,在上述子空间中包括包含1个以上的三维点的1个以上的分割数据;通过将上述分割数据分别编码,生成与上述多个分割数据分别对应的多个编码数据,生成包含上述多个编码数据和与上述多个编码数据分别对应的多个控制信息的比特流;在上述多个控制信息各自中,保存表示与对应于该控制信息的编码数据对应的子空间的第1识别符、和表示与对应于该控制信息的编码数据对应的分割数据的第2识别符。
例如,三维数据编码装置具备处理器和存储器,处理器使用存储器进行上述的处理。
此外,有关本实施方式的三维数据解码装置进行图34所示的处理。首先,三维数据解码装置从包含多个编码数据和与多个编码数据分别对应的多个控制信息(例如图30所示的头)的比特流,取得保存在上述多个控制信息中的第1识别符(例如slice_idx)和第2识别符(例如tile_idx),上述多个编码数据是通过将多个分割数据(例如瓦片)分别编码而生成的,上述多个分割数据包含于将包含多个三维点的对象空间分割而成的多个子空间(例如切片)中,并且分别包含1个以上的三维点,上述第1识别符表示与对应于该控制信息的编码数据对应的子空间,上述第2识别符表示与对应于该控制信息的编码数据对应的分割数据(S4941)。接着,三维数据解码装置通过将多个编码数据解码而复原多个分割数据(S4942)。接着,三维数据解码装置通过使用第1识别符及第2识别符将多个分割数据结合,复原对象空间(S4943)。例如,三维数据编码装置通过使用第2识别符将多个分割数据结合而复原多个子空间,通过使用第1识别符将多个子空间结合而复原对象空间(多个三维点)。另外,三维数据解码装置也可以使用第1识别符及第2识别符的至少一方,从比特流取得希望的子空间或分割数据的编码数据,将所取得的编码数据有选择地解码或优先地解码。
由此,三维数据解码装置能够使用第1识别符及第2识别符将多个分割数据的数据结合而容易地复原对象空间。因此,能够减少三维数据解码装置中的处理量。
例如,多个编码数据分别通过将对应的分割数据中包含的三维点的位置信息和属性信息编码而生成,并且包含位置信息的编码数据和属性信息的编码数据。多个控制信息分别包含位置信息的编码数据的控制信息和属性信息的编码数据的控制信息。第1识别符及第2识别符保存在位置信息的编码数据的控制信息中。
例如,在比特流中,控制信息配置在对应的编码数据之前。
例如,三维数据解码装置具备处理器和存储器,处理器使用存储器进行上述的处理。
(实施方式5)
在使用相邻依赖的位置信息编码中,点群的密度越高,编码效率越有可能越提高。在本实施方式中,三维数据编码装置通过将连续的帧的点群数据结合,将连续的帧的点群数据一起编码。此时,三维数据编码装置生成添加了用来识别结合后的点群数据中包含的叶节点的各自所属的帧的信息的编码数据。
这里,连续的帧的点群数据类似的可能性较高。因此,在连续的帧中,占用率代码的上位级相同的可能性较高。即,通过将连续的帧一起编码,能够共用占用率代码的上位级。
此外,关于点群属于哪个帧的区别,通过将帧的索引编码而在叶节点进行。
图35表示根据N个PCC(Point Cloud Compression:点云压缩)帧的点群数据生成树结构及占用率代码(Occupancy Code)的形象的图。在该图中,箭头中的点表示属于各个PCC帧的点。首先,对属于各个PCC帧的点赋予用来确定帧的帧索引。
接着,将属于N个帧的点变换为树结构,生成占用率代码。具体而言,按每个点,判定点属于树结构中的哪一个叶节点。在该图中,树结构(Tree Structure)表示节点的集合。从上层的节点起依次判定点属于哪个节点。将每个节点的判定结果编码为占用率代码。占用率代码在N个帧中是共同的。
有在节点中混杂有被赋予了不同的帧索引的不同帧的点的情况。另外,在8叉树(Octree)的解析力较小的情况下,也有混杂有被赋予了相同的帧索引的相同帧的点的情况。
有在最下层的节点(叶节点)中混杂(重复)有属于多个帧的点的情况。
在树结构及占用率代码中,上层级别的树结构及占用率代码有可能在全部的帧中是共同成分,下层级别的树结构及占用率代码有可能混杂有每个帧的个别成分、或共同成分和个别成分。
例如,在叶节点等的最下层的节点中,生成具有帧索引的0以上的点,生成表示点的数量的信息、以及对于各点的帧索引的信息。这些信息也可以说在帧中是个别的信息。
图36是表示帧结合的例子的图。如图36的(a)所示,通过将多个帧汇总起来生成树结构,从而相同的节点中包含的帧的点的密度增加。此外,通过共用树结构,能够削减占用率代码的数据量。由此,有可能能够提高编码率。
此外,如图36的(b)所示,通过树结构中的占用率代码的个别成分变得更密,算术编码的效果提高,所以有可能能够提高编码率。
以下,以在时间上不同的多个PCC帧的结合为例进行说明,但也能够应用于不是多个帧的情况、即不结合帧的情况(N=1)。此外,结合的多个点群数据并不限于多个帧、即同一对象物的时刻不同的点群数据。即,以下的方法也能够应用于在空间上或时间空间上不同的多个点群数据的结合。此外,以下的方法也能够应用于内容不同的点群数据或点群文件的结合。
图37是表示在时间上不同的多个PCC帧的结合的例子的图。图37表示在汽车移动的同时、由LiDAR等的传感器取得点群数据的例子。点线表示各帧的传感器的取得范围、即点群数据的区域。在传感器的取得范围大的情况下,点群数据的范围也变大。
将点群数据结合而编码的方法对于以下这样的点群数据是有效的。例如,在图37所示的例子中,汽车移动,帧通过汽车周边的360°的扫描而被识别。即,作为下一帧的帧2对应于车辆向X方向的移动后的其他的360°的扫描。
在此情况下,由于在帧1和帧2中存在重复的区域,所以有可能包含相同的点群数据。因此,通过将帧1与帧2结合而编码,有可能能够提高编码效率。另外,也可以考虑将更多的帧结合。但是,如果将结合的帧数增加,则对叶节点附加的帧索引的编码所需的比特数增加。
此外,也可以由不同位置的传感器取得点群数据。由此,也可以使用从各个位置取得的各个点群数据分别作为帧。即,多个帧既可以是由单一的传感器取得的点群数据,也可以是由多个传感器取得的点群数据。此外,在多个帧间,一部分或全部的对象物既可以相同,也可以不同。
接着,说明有关本实施方式的三维数据编码处理的流程。图38是三维数据编码处理的流程图。三维数据编码装置基于作为进行结合的帧的数量的结合帧数N,读入N个全部帧的点群数据。
首先,三维数据编码装置决定结合帧数N(S5401)。例如,该结合帧数N由用户指定。
接着,三维数据编码装置取得点群数据(S5402)。接着,三维数据编码装置记录所取得的点群数据的帧索引(S5403)。
在没有将N个帧处理完的情况下(在S5404中“否”),三维数据编码装置指定下一个点群数据(S5405),对被指定的点群数据进行步骤S5402以后的处理。
另一方面,在将N个帧处理完了的情况下(在S5404中“是”),三维数据编码装置将N个帧结合,将结合后的帧编码(S5406)。
图39是编码处理(S5406)的流程图。首先,三维数据编码装置生成N个帧中共同的共同信息(S5411)。例如,共同信息包含表示占用率代码及结合帧数N的信息。
接着,三维数据编码装置按每个帧生成作为个别的信息的个别信息(S5412),例如,个别信息包括叶节点中包含的点的数量及叶节点中包含的点的帧索引。
接着,三维数据编码装置将共同信息与个别信息结合,通过将结合后的信息编码,生成编码数据(S5413)。接着,三维数据编码装置生成与帧结合有关的附加信息(元数据),将所生成的附加信息编码(S5414)。
接着,说明有关本实施方式的三维数据解码处理的流程。图40是三维数据解码处理的流程图。
首先,三维数据解码装置从比特流取得结合帧数N(S5421)。接着,三维数据编码装置从比特流取得编码数据(S5422)。接着,三维数据解码装置通过将编码数据解码,取得点群数据和帧索引(S5423)。最后,三维数据解码装置使用帧索引将被解码的点群数据分割(S5424)。
图41是解码及分割处理(S5423及S5424)的流程图。首先,三维数据解码装置从编码数据(比特流)解码(取得)共同信息及个别信息(S5431)。
接着,三维数据解码装置决定是将单一的帧解码还是将多个帧解码(S5432)。例如,也可以从外部指定是将单一的帧解码还是将多个帧解码。这里,多个帧既可以是被结合的帧的全部的帧,也可以是一部分帧。例如,三维数据解码装置也可以决定为解码应用所需要的特定帧,不解码不需要的帧。或者,在要求实时解码的情况下,三维数据解码装置也可以决定为解码被结合的多个帧中的单一的帧。
在解码单一的帧的情况下(在S5432中“是”),三维数据解码装置从解码后的个别信息中提取与被指定的单一的帧索引对应的个别信息,通过将提取出的个别信息解码,复原与被指定的帧索引对应的帧的点群数据(S5433)。
另一方面,在解码多个帧的情况下(在S5432中“否”),三维数据解码装置提取与被指定的多个帧(或全部的帧)的帧索引对应的个别信息,通过将提取出的个别信息解码,复原被指定的多个帧的点群数据(S5434)。接着,三维数据解码装置基于帧索引,将解码后的点群数据(个别信息)分割(S5435)。即,三维数据解码装置将解码后的点群数据分割为多个帧。
另外,三维数据解码装置既可以将被结合的全部的帧的数据一齐解码并将解码后的数据分割为各帧,也可以将被结合的全部的帧中的任意的一部分帧一齐解码,将解码后的数据分割为各帧。此外,三维数据解码装置也可以将由多个帧构成的预先设定的单位帧单独地解码。
以下,说明有关本实施方式的三维数据编码装置的结构。图42是表示在有关本实施方式的三维数据编码装置中包含的编码部5410的构成的框图。编码部5410通过将点群数据(点云)编码而生成编码数据(编码流)。该编码部5410包括分割部5411、多个位置信息编码部5412、多个属性信息编码部5413、附加信息编码部5414和复用部5415。
分割部5411通过将多个帧的点群数据分割,生成多个帧的多个分割数据。具体而言,分割部5411通过将各帧的点群数据的空间分割为多个子空间,生成多个分割数据。这里,子空间指的是瓦片及切片中的一方、或瓦片及切片的组合。更具体地讲,点群数据包括位置信息、属性信息(颜色或反射率等)及附加信息。此外,分割部5411中被输入帧号。分割部5411将各帧的位置信息分割为多个分割位置信息,将各帧的属性信息分割为多个分割属性信息。此外,分割部5411生成关于分割的附加信息。
例如,分割部5411首先将点群分割为瓦片。接着,分割部5411将得到的瓦片再分割为切片。
多个位置信息编码部5412通过将多个分割位置信息编码而生成多个编码位置信息。例如,位置信息编码部5412使用8叉树等N叉树结构,将分割位置信息编码。具体而言,在8叉树中,对象空间被分割为8个节点(子空间),生成表示在各节点中是否包含点群的8比特的信息(占用率代码)。此外,将包含点群的节点进一步分割为8个节点,生成表示在该8个节点各自中是否包含点群的8比特的信息。将该处理反复进行,直到成为预先设定的层级或节点中包含的点群的数量的阈值以下。例如,多个位置信息编码部5412将多个分割位置信息并行处理。
属性信息编码部4632通过使用由位置信息编码部4631生成的构成信息进行编码,生成作为编码数据的编码属性信息(Compressed Attribute)。例如,属性信息编码部4632基于由位置信息编码部4631生成的8叉树结构,决定在处理对象的对象点(对象节点)的编码中参照的参照点(参照节点)。例如,属性信息编码部4632参照周边节点或相邻节点中的、8叉树中的父节点与对象节点的父节点相同的节点。另外,参照关系的决定方法并不限于此。
此外,属性信息的编码处理也可以包括量化处理、预测处理及算术编码处理中的至少一个。在此情况下,参照是指在属性信息的预测值的计算中使用参照节点、或在编码的参数的决定中使用参照节点的状态(例如,表示在参照节点中是否包含点群的占有信息)。例如,编码的参数是指量化处理中的量化参数或算术编码中的上下文等。
多个属性信息编码部5413通过将多个分割属性信息编码,生成多个编码属性信息。例如,多个属性信息编码部5413将多个分割属性信息并行处理。
附加信息编码部5414通过将点群数据中包含的附加信息和由分割部5411在分割时生成的关于数据分割的附加信息编码,生成编码附加信息。
复用部5415通过将多个帧的多个编码位置信息、多个编码属性信息及编码附加信息复用,生成编码数据(编码流),送出所生成的编码数据。此外,编码附加信息在解码时被使用。
图43是分割部5411的框图。分割部5411包括瓦片分割部5421和切片分割部5422。
瓦片分割部5421通过将多个帧的位置信息(Position(Geometry))分别分割为瓦片,生成多个瓦片位置信息。此外,瓦片分割部5421通过将多个帧的属性信息(Attribute)分别分割为瓦片,生成多个瓦片属性信息。此外,瓦片分割部5421输出包含有关瓦片分割的信息及在瓦片分割中生成的信息的瓦片附加信息(Tile MetaData)。
切片分割部5422通过将多个瓦片位置信息分割为切片,生成多个分割位置信息(多个切片位置信息)。此外,切片分割部5422通过将多个瓦片属性信息分割为切片,生成多个分割属性信息(多个切片属性信息)。此外,切片分割部5422输出包含有关切片分割的信息及在切片分割中生成的信息的切片附加信息(Slice MetaData)。
此外,分割部5411为了在分割处理中表示原点坐标及属性信息等,使用帧号(帧索引)。
图44是位置信息编码部5412的框图。位置信息编码部5412包括帧索引生成部5431和熵编码部5432。
帧索引生成部5431基于帧号决定帧索引的值,将所决定的帧索引附加到位置信息。熵编码部5432对被附加了帧索引的分割位置信息进行熵编码,生成编码位置信息。
图45是属性信息编码部5413的框图。属性信息编码部5413包括帧索引生成部5441和熵编码部5442。
帧索引生成部5441基于帧号决定帧索引的值,将所决定的帧索引附加到属性信息。熵编码部5442通过对被附加了帧索引的分割属性信息进行熵编码,生成编码属性信息。
接着,对有关本实施方式的点群数据的编码处理及解码处理的流程进行说明。图46是有关本实施方式的点群数据的编码处理的流程图。
首先,三维数据编码装置决定要使用的分割方法(S5441)。该分割方法包括是否进行切片分割、是否进行瓦片分割。此外,分割方法也可以包括进行切片分割或瓦片分割的情况下的分割数量及分割的种类等。
在进行瓦片分割的情况下(在S5442中“是”),三维数据编码装置通过将位置信息和属性信息分割而生成多个瓦片位置信息及多个瓦片属性信息(S5443)。此外,三维数据编码装置生成有关瓦片分割的瓦片附加信息。
在进行切片分割的情况下(在S5444中“是”),三维数据编码装置通过将多个瓦片位置信息及多个瓦片属性信息(或位置信息及属性信息)分割而生成多个分割位置信息及多个分割属性信息(S5445)。此外,三维数据编码装置生成有关切片分割的切片附加信息。
接着,三维数据编码装置通过将多个分割位置信息及多个分割属性信息分别与帧索引编码,生成多个编码位置信息及多个编码属性信息(S5446)。此外,三维数据编码装置生成依赖关系信息。
接着,三维数据编码装置通过将多个编码位置信息、多个编码属性信息及附加信息进行NAL单元化(复用),生成编码数据(编码流)(S5447)。此外,三维数据编码装置送出所生成的编码数据。
图47是编码处理(S5446)的流程图。首先,三维数据编码装置将分割位置信息编码(S5451)。接着,三维数据编码装置将分割位置信息用的帧索引编码(S5452)。
在存在分割属性信息的情况下(在S5453中“是”),三维数据编码装置将分割属性信息编码(S5454),将分割属性信息用的帧索引编码(S5455)。另一方面,在不存在分割属性信息的情况下(在S5453中“否”),三维数据编码装置不进行分割属性信息的编码及分割属性信息用的帧索引的编码。另外,帧索引可以被保存在分割位置信息和分割属性信息中的某一方或双方中。
另外,三维数据编码装置对于属性信息,既可以使用帧索引来编码,也可以不使用帧索引而编码。即,三维数据编码装置既可以使用帧索引来识别各个点所属的帧,并按每个帧编码,也可以不识别帧而对属于全部的帧的点进行编码。
以下,说明有关本实施方式的三维数据解码装置的构成。图48是表示解码部5450的构成的框图。解码部5450通过将点群数据被编码而生成的编码数据(编码流)解码,将点群数据复原。该解码部5450包括逆复用部5451、多个位置信息解码部5452、多个属性信息解码部5453、附加信息解码部5454和结合部5455。
逆复用部5451通过将编码数据(编码流)逆复用,生成多个编码位置信息、多个编码属性信息及编码附加信息。
多个位置信息解码部5452通过将多个编码位置信息解码,生成多个分割位置信息。例如,多个位置信息解码部5452将多个编码位置信息并行处理。
多个属性信息解码部5453通过将多个编码属性信息解码,生成多个分割属性信息。例如,多个属性信息解码部5453将多个编码属性信息并行处理。
多个附加信息解码部5454通过将编码附加信息解码,生成附加信息。
结合部5455通过使用附加信息将多个分割位置信息结合,生成位置信息。结合部5455通过使用附加信息将多个分割属性信息结合,生成属性信息。此外,结合部5455使用帧索引将位置信息及属性信息分割为多个帧的位置信息及多个帧的属性信息。
图49是位置信息解码部5452的框图。位置信息解码部5452包括熵解码部5461和帧索引取得部5462。熵解码部5461通过将编码位置信息进行熵解码而生成分割位置信息。帧索引取得部5462从分割位置信息中取得帧索引。
图50是属性信息解码部5453的框图。属性信息解码部5453包括熵解码部5471和帧索引取得部5472。熵解码部5471通过将编码属性信息进行熵解码而生成分割属性信息。帧索引取得部5472从分割属性信息中取得帧索引。
图51是表示结合部5455的构成的图。结合部5455通过将多个分割位置信息结合而生成位置信息。结合部5455通过将多个分割属性信息结合而生成属性信息。此外,结合部5455使用帧索引将位置信息及属性信息分割为多个帧的位置信息及多个帧的属性信息。
图52是有关本实施方式的点群数据的解码处理的流程图。首先,三维数据解码装置通过将编码数据(编码流)中包含的有关分割方法的附加信息(切片附加信息及瓦片附加信息)解析,判定分割方法(S5461)。该分割方法包括是否进行切片分割、是否进行瓦片分割。此外,分割方法也可以包括进行切片分割或瓦片分割的情况下的分割数量及分割的种类等。
接着,三维数据解码装置使用编码数据中包含的依赖关系信息将编码数据中包含的多个编码位置信息及多个编码属性信息解码,由此生成分割位置信息及分割属性信息(S5462)。
在由附加信息表示进行了切片分割的情况下(在S5463中“是”),三维数据解码装置通过基于切片附加信息将多个分割位置信息结合,生成多个瓦片位置信息,通过将多个分割属性信息结合,生成多个瓦片属性信息(S5464)。这里,多个分割位置信息、多个分割属性信息、多个瓦片位置信息及多个瓦片属性信息包含帧索引。
在由附加信息表示进行了瓦片分割的情况下(在S5465中“是”),三维数据解码装置通过基于瓦片附加信息将多个瓦片位置信息(多个分割位置信息)结合,生成位置信息,通过将多个瓦片属性信息(多个分割属性信息)结合,生成属性信息(S5466)。这里,多个瓦片位置信息、多个瓦片属性信息、位置信息及属性信息包含帧索引。
图53是解码处理(S5464或S5466)的流程图。首先,三维数据解码装置将分割位置信息(切片位置信息)解码(S5471)。接着,三维数据解码装置将分割位置信息用的帧索引解码(S5472)。
在存在分割属性信息的情况下(在S5473中“是”),三维数据解码装置将分割属性信息解码(S5474),将分割属性信息用的帧索引解码(S5475)。另一方面,在不存在分割属性信息的情况下(在S5473中“否”),三维数据解码装置不进行分割属性信息的解码及分割属性信息用的帧索引的解码。
另外,三维数据解码装置对于属性信息,既可以使用帧索引来解码,也可以不使用帧索引而解码。
以下,对帧结合中的编码单位进行说明。图54是表示帧的结合样式的例子的图。该图的例子例如是PCC帧为时间序列、实时地进行数据的生成及编码的情况下的例子。
图54的(a)表示固定地结合4帧的情况。三维数据编码装置等待4帧量的数据的生成而生成编码数据。
图54的(b)表示帧数自适应地变化的情况。例如,三维数据编码装置在速率控制中,为了调整编码数据的代码量而使结合帧数变化。
另外,三维数据编码装置在有可能没有基于帧结合的效果的情况下,也可以不结合帧。此外,三维数据编码装置也可以将进行帧结合的情况和不进行帧结合的情况切换。
图54的(c)是要结合的多个帧的一部分与下一个要结合的多个帧的一部分重复的情况下的例子。该例在从已编码的数据起依次送出等被要求实时性或低延迟的情况下是有用的。
图55是表示PCC帧的构成例的图。三维数据编码装置也可以将要结合的帧构成为至少包含能够单独解码的数据单位。例如,如图55的(a)所示,在PCC帧全部被帧内编码、能够将PCC帧单独地解码的情况下,上述的哪种样式都能够应用。
此外,如图55的(b)所示,在应用了帧间预测的情况下等设定GOF(帧组)等的随机访问单位的情况下,三维数据编码装置也可以将该GOF单位作为最小单位来结合数据。
另外,三维数据编码装置既可以将共同信息和个别信息一齐编码,也可以分别单独地编码。此外,三维数据编码装置对于共同信息和个别信息既可以使用共同的数据结构也可以使用不同的数据结构。
此外,三维数据编码装置也可以在按每个帧生成占用率代码后,将多个帧的占用率代码比较,例如以规定的基准判定在多个帧的占用率代码间是否共同部分较多,在共同部分较多的情况下生成共同信息。或者,三维数据编码装置也可以基于是否共同部分是否较多,来决定是否进行帧结合、将哪个帧结合、或结合帧数。
接着,说明编码位置信息的构成。图56是表示编码位置信息的构成的图。编码位置信息包括头和有效载荷。
图57是表示编码位置信息的头(Geometry_header)的句法例的图。编码位置信息的头包括GPS索引(gps_idx)、偏移信息(offset)、其他信息(other_geometry_information)、帧结合标志(combine_frame_flag)和结合帧数(number_of_combine_frame)。
GPS索引表示与编码位置信息对应的参数集(GPS)的识别符(ID)。GPS是1帧或多个帧的编码位置信息的参数集。另外,在每1帧存在参数集的情况下,也可以在头中表示多个参数集的识别符。
偏移信息表示用来取得结合数据的偏移位置。其他信息表示关于位置信息的其他信息(例如,量化参数的差分值(QPdelta)等)。帧结合标志是表示编码数据是否被帧结合的标志。结合帧数表示被结合的帧的数量。
另外,也可以将上述的信息的一部分或全部记载在SPS或GPS中。另外,SPS是指序列(多个帧)单位的参数集,是在编码位置信息和编码属性信息中共同使用的参数集。
图58是表示编码位置信息的有效载荷(Geometry_data)的句法例的图。编码位置信息的有效载荷包括共同信息和叶节点信息。
共同信息是1个以上的帧结合的数据,包括占用率代码(occupancy_Code)等。
叶节点信息(combine_information)是各叶节点的信息。作为帧数的循环,也可以按每个帧表示叶节点信息。
作为表示叶节点中包含的点的帧索引的方法,可以使用方法1和方法2中的任一个。图59是表示方法1的情况下的叶节点信息的例子的图。图59所示的叶节点信息包括表示节点中包含的点的数量的三维点数(NumberOfPoints)和每个点的帧索引(FrameIndex)。
图60是表示方法2的情况下的叶节点信息的例子的图。在图60所示的例子中,叶节点信息包括用位图表示多个点的帧索引的位图信息(bitmapIsFramePointsFlag)。图61是表示位图信息的例子的图。在该例中,由位图表示叶节点包括帧索引1、3和5的三维点。
另外,在量化的解析力较低的情况下,有在同一帧中存在重复点的情况。在此情况下,也可以将三维点数(Number Of Points)共用化,表示各帧的三维点的数量和多个帧的合计的三维点的数量。
此外,在使用不可逆压缩的情况下,三维数据编码装置也可以将重复点删除而削减信息量。三维数据编码装置既可以在帧结合前删除重复点,也可以在帧结合后删除重复点。
接着,说明编码属性信息的构成。图62是表示编码属性信息的构成的图。编码属性信息包括头和有效载荷。
图63是表示编码属性信息的头(Attribute_header)的句法例的图。编码属性信息的头包括APS索引(aps_idx)、偏移信息(offset)、其他信息(other_attribute_information)、帧结合标志(combine_frame_flag)和结合帧数(number_of_combine_frame)。
APS索引表示与编码属性信息对应的参数集(APS)的识别符(ID)。APS是1帧或多个帧的编码属性信息的参数集。另外,在每1帧存在参数集的情况下,也可以在头中表示多个参数集的识别符。
偏移信息表示用来取得结合数据的偏移位置。其他信息表示关于属性信息的其他信息(例如,量化参数的差分值(QPdelta)等)。帧结合标志是表示编码数据是否被帧结合的标志。结合帧数表示被结合的帧的数量。
另外,也可以将上述信息的一部分或全部记载在SPS或APS中。
图64是表示编码属性信息的有效载荷(Attribute_data)的句法例的图。编码属性信息的有效载荷包含叶节点信息(combine_information)。例如,该叶节点信息的构成与编码位置信息的有效载荷中包含的叶节点信息是同样的。即,叶节点信息(帧索引)也可以包含在属性信息中。
此外,叶节点信息(帧索引)也可以被保存在编码位置信息和编码属性信息的一方中,而不保存在另一方中。在此情况下,保存在编码位置信息和编码属性信息的一方中的叶节点信息(帧索引)在另一方的信息的解码时被参照。此外,也可以是,表示参照目标的信息保存在编码位置信息或编码属性信息中。
接着,说明编码数据的送出顺序及解码顺序的例子。图65是表示编码数据的构成的图。编码数据包括头和有效载荷。
图66~图68是表示数据的送出顺序与数据的参照关系的图。在该图中,G(1)等表示编码位置信息,GPS(1)等表示编码位置信息的参数集,SPS表示序列(多个帧)的参数集。此外,()内的数字表示帧索引的值。另外,三维数据编码装置也可以将数据以解码顺序送出。
图66是表示不结合帧的情况下的送出顺序的例子的图。图67是表示作为将帧结合的情况、按每个PCC帧附加元数据(参数集)的情况下的例子的图。图68是表示将帧结合、并且以结合的单位附加元数据(参数集)的情况下的例子的图。
在帧结合后的数据的头中,为了得到该帧的元数据而保存参照目标的元数据的识别符。如图68那样,也可以将每个多个帧的元数据汇总。帧结合后的多个帧中共同的参数也可以汇总为一个。帧中不共同的参数表示与各帧对应的值。
每个帧的信息(帧中不共同的参数)例如是表示帧数据的生成时刻、编码时刻或解码时刻等的时间戳。此外,每个帧的信息也可以包括取得了帧数据的传感器的信息(传感器的速度、加速度、位置信息、传感器的朝向、其他的传感器信息等)。
图69是表示在图67所示的例子中将一部分的帧解码的例子的图。如图69所示,如果在帧结合数据内在帧间没有依赖关系,则三维数据解码装置能够将各数据独立地解码。
在点群数据具有属性信息的情况下,三维数据编码装置也可以对属性信息进行帧结合。对于属性信息,参照位置信息进行编码及解码。被参照的位置信息既可以是帧结合前的位置信息,也可以是帧结合后的位置信息。位置信息的结合帧数和属性信息的结合帧数既可以是共同的(相同),也可以是独立的(不同)。
图70~图73是表示数据的送出顺序与数据的参照关系的图。图70及图71表示将位置信息和属性信息都以4帧结合的例子。在图70中,按每个PCC帧附加元数据(参数集)。在图71中,以结合的单位附加元数据(参数集)。在该图中,A(1)等表示编码属性信息,APS(1)等表示编码属性信息的参数集。此外,()内的数字表示帧索引的值。
图72表示将位置信息以4帧结合,而不结合属性信息的例子。也可以如图72所示将位置信息进行帧结合,而不对属性信息进行帧结合。
图73表示将帧结合与瓦片分割组合的例子。在如图73所示进行瓦片分割的情况下,各瓦片位置信息的头包含GPS索引(gps_idx)及结合帧数(number_of_combine_frame)等信息。此外,各瓦片位置信息的头包含用来识别瓦片的瓦片索引(tile_idx)。
如以上这样,有关本实施方式的三维数据编码装置进行图74所示的处理。首先,三维数据编码装置通过将第1点群数据与第2点群数据结合而生成第3点群数据(S5481)。接着,三维数据编码装置通过将第3点群数据编码而生成编码数据(S5482)。此外,编码数据包含表示第3点群数据中包含的多个三维点分别属于第1点群数据和第2点群数据中的哪一个的识别信息(例如帧索引)。
由此,三维数据编码装置通过将多个点群数据一起编码,能够提高编码效率。
例如,第1点群数据和第2点群数据是不同时刻的点群数据(例如PCC帧)。例如,第1点群数据和第2点群数据是同一对象物的不同时刻的点群数据(例如PCC帧)。
编码数据包含第3点群数据中包含的多个三维点各自的位置信息和属性信息,识别信息包含在属性信息中。
例如,编码数据包含使用N(N是2以上的整数)叉树表示了第3点群数据中包含的多个三维点各自的位置的位置信息(例如占用率代码)。
例如,三维数据编码装置具备处理器和存储器,处理器使用存储器进行上述的处理。
此外,有关本实施方式的三维数据解码装置进行图75所示的处理。首先,三维数据解码装置通过将编码数据解码,取得表示第1点群数据与第2点群数据被结合而生成的第3点群数据、和表示第3点群数据中包含的多个三维点分别属于第1点群数据和第2点群数据中的哪一个的识别信息(S5491)。接着,三维数据解码装置使用识别信息,从第3点群数据中分离第1点群数据和第2点群数据(S5492)。
由此,三维数据解码装置能够将通过将多个点群数据一起编码而提高了编码效率的编码数据解码。
例如,第1点群数据和第2点群数据是不同时刻的点群数据(例如PCC帧)。例如,第1点群数据和第2点群数据是同一对象物的不同时刻的点群数据(例如PCC帧)。
编码数据包含第3点群数据中包含的多个三维点各自的位置信息和属性信息,识别信息包含在属性信息中。
例如,编码数据包含使用N(N是2以上的整数)叉树表示了第3点群数据中包含的多个三维点各自的位置的位置信息(例如占用率代码)。
例如,三维数据解码装置具备处理器和存储器,处理器使用存储器进行上述的处理。
以上,对有关本发明的实施方式的三维数据编码装置及三维数据解码装置等进行了说明,但本发明并不限定于该实施方式。
此外,有关上述实施方式的三维数据编码装置及三维数据解码装置等中包含的各处理部典型的是作为集成电路即LSI实现。它们既可以单独地形成1个芯片,也可以包含一部分或全部而形成1个芯片。
此外,集成电路化并不限于LSI,也可以由专用电路或通用处理器实现。也可以利用在LSI制造后能够编程的FPGA(Field Programmable Gate Array现场可编程门阵列)、或能够重构LSI内部的电路单元的连接或设定的可重构处理器。
此外,在上述各实施方式中,各构成要素也可以由专用的硬件构成,或通过执行适合于各构成要素的软件程序来实现。各构成要素也可以通过由CPU或处理器等程序执行部读出被记录在硬盘或半导体存储器等记录介质中的软件程序并执行来实现。
此外,本发明也可以作为由三维数据编码装置及三维数据解码装置等执行的三维数据编码方法或三维数据解码方法等实现。
此外,框图中的功能块的分割是一例,也可以将多个功能块作为一个功能块实现,或将一个功能块分割为多个,或将一部分功能转移到其他的功能块。此外,也可以是单一的硬件或软件将具有类似的功能的多个功能块的功能并行或分时地处理。
此外,流程图中的各步骤的执行顺序是为了具体地说明本发明而例示的,也可以是上述以外的顺序。此外,也可以将上述步骤的一部分与其他步骤同时(并行)执行。
以上,基于实施方式对有关一个或多个技术方案的三维数据编码装置及三维数据解码装置等进行了说明,但本发明并不限定于该实施方式。只要不脱离本发明的主旨,对本实施方式施以本领域技术人员想到的各种变形的形态、或将不同实施方式的构成要素组合而构建的形态也可以包含在一个或多个技术方案的范围内。
产业上的可利用性
本发明能够应用于三维数据编码装置及三维数据解码装置。
标号说明
4601 三维数据编码系统
4602 三维数据解码系统
4603 传感器终端
4604 外部连接部
4611 点群数据生成系统
4612 提示部
4613 编码部
4614 复用部
4615 输入输出部
4616 控制部
4617 传感器信息取得部
4618 点群数据生成部
4621 传感器信息取得部
4622 输入输出部
4623 逆复用部
4624 解码部
4625 提示部
4626 用户接口
4627 控制部
4630 第1编码部
4631 位置信息编码部
4632 属性信息编码部
4633 附加信息编码部
4634 复用部
4640 第1解码部
4641 逆复用部
4642 位置信息解码部
4643 属性信息解码部
4644 附加信息解码部
4650 第2编码部
4651 附加信息生成部
4652 位置图像生成部
4653 属性图像生成部
4654 映像编码部
4655 附加信息编码部
4656 复用部
4660 第2解码部
4661 逆复用部
4662 映像解码部
4663 附加信息解码部
4664 位置信息生成部
4665 属性信息生成部
4801 编码部
4802 复用部
4910 第1编码部
4911 分割部
4912 位置信息编码部
4913 属性信息编码部
4914 附加信息编码部
4915 复用部
4920 第1解码部
4921 逆复用部
4922 位置信息解码部
4923 属性信息解码部
4924 附加信息解码部
4925 结合部
4931 切片分割部
4932 位置信息瓦片分割部
4933 属性信息瓦片分割部
4941 位置信息瓦片结合部
4942 属性信息瓦片结合部
4943 切片结合部
5410 编码部
5411 分割部
5412 位置信息编码部
5413 属性信息编码部
5414 附加信息编码部
5415 复用部
5421 瓦片分割部
5422 切片分割部
5431、5441 帧索引生成部
5432、5442 熵编码部
5450 解码部
5451 逆复用部
5452 位置信息解码部
5453 属性信息解码部
5454 附加信息解码部
5455 结合部
5461、5471 熵解码部
5462、5472 帧索引取得部

Claims (12)

1.一种三维数据编码方法,其中,
通过将第1点群数据与第2点群数据结合,生成第3点群数据;
通过将上述第3点群数据编码,生成编码数据;
上述编码数据包含识别信息,该识别信息表示上述第3点群数据中包含的多个三维点分别属于上述第1点群数据和上述第2点群数据中的哪一个。
2.如权利要求1所述的三维数据编码方法,其中,
上述第1点群数据和上述第2点群数据是不同时刻的点群数据。
3.如权利要求2所述的三维数据编码方法,其中,
上述第1点群数据和上述第2点群数据是同一对象物的不同时刻的点群数据。
4.如权利要求1~3中任一项所述的三维数据编码方法,其中,
上述编码数据包含上述第3点群数据中包含的多个三维点各自的位置信息和属性信息,上述识别信息包含在上述属性信息中。
5.如权利要求1~3中任一项所述的三维数据编码方法,其中,
上述编码数据包含使用N叉树表示了上述第3点群数据中包含的多个三维点各自的位置的位置信息,N是2以上的整数。
6.一种三维数据解码方法,其中,
通过将编码数据解码,取得第1点群数据与第2点群数据被结合而生成的第3点群数据、以及表示上述第3点群数据中包含的多个三维点分别属于第1点群数据和第2点群数据中的哪一个的识别信息;
使用上述识别信息,从上述第3点群数据分离上述第1点群数据和上述第2点群数据。
7.如权利要求6所述的三维数据解码方法,其中,
上述第1点群数据和上述第2点群数据是不同时刻的点群数据。
8.如权利要求7所述的三维数据解码方法,其中,
上述第1点群数据和上述第2点群数据是同一对象物的不同时刻的点群数据。
9.如权利要求6~8中任一项所述的三维数据解码方法,其中,
上述编码数据包含上述第3点群数据中包含的多个三维点各自的位置信息和属性信息,上述识别信息包含在上述属性信息中。
10.如权利要求6~8中任一项所述的三维数据解码方法,其中,
上述编码数据包含使用N叉树表示了上述第3点群数据中包含的多个三维点各自的位置的位置信息,N是2以上的整数。
11.一种三维数据编码装置,其中,具备:
处理器;以及
存储器;
上述处理器使用上述存储器进行如下处理:
通过将第1点群数据与第2点群数据结合,生成第3点群数据;
通过将上述第3点群数据编码,生成编码数据;
上述编码数据包含识别信息,该识别信息表示上述第3点群数据中包含的多个三维点分别属于上述第1点群数据和上述第2点群数据中的哪一个。
12.一种三维数据解码装置,其中,具备:
处理器;以及
存储器;
上述处理器使用上述存储器进行如下处理:
通过将编码数据解码,取得第1点群数据与第2点群数据被结合而生成的第3点群数据、以及表示上述第3点群数据中包含的多个三维点分别属于第1点群数据和第2点群数据中的哪一个的识别信息;
使用上述识别信息,从上述第3点群数据分离上述第1点群数据和上述第2点群数据。
CN201980040987.0A 2018-09-21 2019-09-19 三维数据编码方法、三维数据解码方法、三维数据编码装置及三维数据解码装置 Pending CN112313710A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201862734657P 2018-09-21 2018-09-21
US62/734657 2018-09-21
PCT/JP2019/036844 WO2020059826A1 (ja) 2018-09-21 2019-09-19 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置

Publications (1)

Publication Number Publication Date
CN112313710A true CN112313710A (zh) 2021-02-02

Family

ID=69887154

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980040987.0A Pending CN112313710A (zh) 2018-09-21 2019-09-19 三维数据编码方法、三维数据解码方法、三维数据编码装置及三维数据解码装置

Country Status (7)

Country Link
US (2) US20210168400A1 (zh)
EP (1) EP3855398A4 (zh)
KR (1) KR20210058841A (zh)
CN (1) CN112313710A (zh)
BR (1) BR112021002981A2 (zh)
MX (1) MX2021003267A (zh)
WO (1) WO2020059826A1 (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114930863B (zh) * 2020-01-09 2023-08-08 Lg电子株式会社 点云数据发送装置、点云数据发送方法、点云数据接收装置和点云数据接收方法
WO2021200919A1 (ja) * 2020-03-30 2021-10-07 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置
WO2022124648A1 (ko) * 2020-12-09 2022-06-16 엘지전자 주식회사 포인트 클라우드 데이터 송신 장치, 포인트 클라우드 데이터 송신 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법
CN115474051A (zh) * 2021-06-11 2022-12-13 维沃移动通信有限公司 点云编码方法、点云解码方法及终端
WO2023013037A1 (ja) * 2021-08-06 2023-02-09 日本電信電話株式会社 点群データ処理装置、点群データ処理方法及びプログラム
CN114609591B (zh) * 2022-03-18 2022-12-20 湖南星晟智控科技有限公司 一种基于激光点云数据的数据处理方法
CN114697668B (zh) * 2022-04-22 2023-06-30 腾讯科技(深圳)有限公司 点云媒体的编解码方法及相关产品

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3186406B2 (ja) * 1994-03-10 2001-07-11 松下電器産業株式会社 画像合成符号化方法及び画像合成装置
US20140375638A1 (en) 2012-07-30 2014-12-25 Mitsubishi Electric Corporation Map display device
US11297346B2 (en) * 2016-05-28 2022-04-05 Microsoft Technology Licensing, Llc Motion-compensated compression of dynamic voxelized point clouds
US11113845B2 (en) * 2017-09-18 2021-09-07 Apple Inc. Point cloud compression using non-cubic projections and masks
JP6433559B1 (ja) * 2017-09-19 2018-12-05 キヤノン株式会社 提供装置および提供方法、プログラム
EP3918793A4 (en) * 2019-01-30 2022-11-30 Nokia Technologies Oy APPARATUS, METHOD AND COMPUTER PROGRAM FOR VOLUMETRIC VIDEO

Also Published As

Publication number Publication date
JPWO2020059826A1 (ja) 2021-09-02
US20210168400A1 (en) 2021-06-03
WO2020059826A1 (ja) 2020-03-26
US20240107064A1 (en) 2024-03-28
KR20210058841A (ko) 2021-05-24
EP3855398A1 (en) 2021-07-28
EP3855398A4 (en) 2021-10-20
BR112021002981A2 (pt) 2021-05-11
MX2021003267A (es) 2021-05-12

Similar Documents

Publication Publication Date Title
US11423581B2 (en) Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device
US11470352B2 (en) Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device
WO2020116563A1 (ja) 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置
CN112313710A (zh) 三维数据编码方法、三维数据解码方法、三维数据编码装置及三维数据解码装置
US11750840B2 (en) Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device
CN113228110A (zh) 三维数据编码方法、三维数据解码方法、三维数据编码装置及三维数据解码装置
US11936919B2 (en) Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device
CN112368743A (zh) 三维数据编码方法、三维数据解码方法、三维数据编码装置及三维数据解码装置
CN113474820A (zh) 三维数据编码方法、三维数据解码方法、三维数据编码装置及三维数据解码装置
CN112534477A (zh) 三维数据编码方法、三维数据解码方法、三维数据编码装置以及三维数据解码装置
CN112639885A (zh) 三维数据编码方法、三维数据解码方法、三维数据编码装置及三维数据解码装置
CN112334948A (zh) 三维数据编码方法、三维数据解码方法、三维数据编码装置以及三维数据解码装置
WO2020045590A1 (ja) 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置
CN112513938A (zh) 三维数据保存方法、三维数据获得方法、三维数据保存装置以及三维数据获得装置
JP7512201B2 (ja) 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置

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