一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

三维数据编码方法、三维数据解码方法、三维数据编码装置及三维数据解码装置与流程

2022-05-08 10:22:49 来源:中国专利 TAG:


本发明涉及三维数据编码方法、三维数据解码方法、三维数据编码装置及三维数据解码装置。


背景技术:

在用于汽车或机器人自主地进行工作的计算机视觉、地图信息、监控、基础设施检查、或影像分发等较大的领域中,今后将会普及灵活运用了三维数据的装置或服务。三维数据通过测距仪等距离传感器、立体摄影机、或多个单眼相机的组合等各种方法来取得。作为三维数据的表现方法之一,有被称作点云的表现方法,该方法通过三维空间内的点群来表现三维构造的形状。在点云中保存点群的位置和颜色。虽然预想点云作为三维数据的表现方法将成为主流,但是点群的数据量非常大。因此,在三维数据的积蓄或传输中,与二维的运动图像(作为一例,有以mpeg进行标准化后的mpeg-4avc或hevc等)同样,需要通过编码来进行数据量的压缩。此外,关于点云的压缩,有一部分由进行点云关联的处理的公开的库(point cloud library:点云库)等支持。此外,已知有利用三维的地图数据,检索位于车辆周边的施设并进行显示的技术(例如,参照专利文献1)。现有技术文献专利文献专利文献1:国际公开第2014/020663号


技术实现要素:

发明要解决的课题在三维数据的编码处理及解码处理中,希望能够适当地对点群数据进行解码。本发明的目的是提供一种能够适当地对点群数据进行解码的三维数据编码方法、三维数据解码方法、三维数据编码装置或三维数据解码装置。用来解决课题的手段本发明的一个技术方案的三维数据编码方法,决定将表示三维点群的点群数据分割为多个时的分割数据单位、和分割前的点群数据单位中的至少一方的编码后的编码数据的第1最大比特数,通过以满足所决定的所述第1最大比特数的方式对分割所述点群数据而成的多个分割数据或分割前的所述点群数据进行编码,从而生成比特流,所述比特流包含表示所述第1最大比特数的第1比特数信息。本发明的一个技术方案的三维数据解码方法,取得包含编码数据和第1比特数信息的比特流,所述编码数据是将表示三维点群的点群数据分割为多个时的分割数据单位和分割前的点群数据单位中的至少一方的编码后的数据,所述第1比特数信息表示所述编码
数据的第1最大比特数,判定取得的所述比特流是否满足由所述第1比特数信息表示的第1最大比特数,在判定为所述比特流满足所述第1最大比特数的情况下,对所述编码数据进行解码。另外,这些包含性或具体的技术方案也可以由系统、装置、集成电路、计算机程序或计算机可读取的cd-rom等的记录介质实现,也可以由系统、装置、集成电路、计算机程序及记录介质的任意的组合来实现。发明效果本发明能够提供能够适当地对点群数据进行解码的三维数据编码方法、三维数据解码方法、三维数据编码装置或三维数据解码装置。
附图说明
图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的编码部及复用部的结构的图。图15是表示有关实施方式2的编码数据的结构例的图。图16是表示有关实施方式2的编码数据及nal单元的结构例的图。图17是表示有关实施方式2的pcc_nal_unit_type的语义例的图。图18是表示有关实施方式2的nal单元的送出顺序的例子的图。图19是有关实施方式3的第1编码部的框图。图20是有关实施方式3的第1解码部的框图。图21是有关实施方式3的分割部的框图。图22是表示有关实施方式3的切片及瓦片的分割例的图。图23是表示有关实施方式3的切片及瓦片的分割样式的例子的图。图24是表示有关实施方式3的依赖关系的例子的图。图25是表示有关实施方式3的数据的解码顺序的例子的图。图26是有关实施方式3的编码处理的流程图。图27是有关实施方式3的结合部的框图。图28是表示有关实施方式3的编码数据及nal单元的结构例的图。
图29是有关实施方式3的编码处理的流程图。图30是有关实施方式3的解码处理的流程图。图31是表示有关实施方式4的瓦片附加信息的句法例的图。图32是有关实施方式4的编解码系统的框图。图33是表示有关实施方式4的切片附加信息的句法例的图。图34是有关实施方式4的编码处理的流程图。图35是有关实施方式4的解码处理的流程图。图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的位置信息以及属性信息的参照关系的图。图56是表示实施方式5的位置信息以及属性信息的参照关系的图。图57是表示实施方式5的位置信息以及属性信息的参照关系的图。图58是表示实施方式5的比特流的结构例的图。图59是表示实施方式5的三维数据编码装置的结构例的图。图60是表示实施方式5的三维数据解码装置的结构例的图。图61是表示实施方式5的isobmff的基本结构的图。图62是将实施方式5的pcc编解码器共同的nal单元存放在isobmff中的情况下的协议栈图。图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的格式变换处理的流程图。图76是实施方式5的解码处理的流程图。图77是表示实施方式5的深度信息的句法例的图。图78是表示实施方式5的样本尺寸盒(sample size box)的句法例的图。图79是表示实施方式5的阶层信息的句法例的图。图80是表示实施方式5的pcclayerstructurebox的句法例的图。图81是示意性地表示实施方式5的提取动作的图。图82是表示实施方式5的文件格式的例子的图。图83是表示实施方式5的提取出的比特流的例子的图。图84是表示实施方式5的提取出的比特流的例子的图。图85是表示实施方式5的提取出的比特流的例子的图。图86是表示实施方式5的直接模式(direct mode)的例子的图。图87是实施方式5的三维数据编码处理的流程图。图88是实施方式5的三维数据解码处理的流程图。图89是表示有关实施方式6的三维数据编码装置的结构的一例的框图。图90是表示有关实施方式6的三维数据编码方法的第1例的流程图。图91是表示有关实施方式6的三维数据解码装置的结构的一例的框图。图92是表示有关实施方式6的三维数据解码方法的一例的流程图。图93是表示有关实施方式6的三维数据编码方法的第2例的流程图。图94是表示有关实施方式6的包围盒的一例的图。图95是表示有关实施方式6的三维数据解码方法的另一例的流程图。图96是表示有关实施方式6的三维数据编码方法的第3例的流程图。图97是有关实施方式6的减少比特数的处理的一例。图98是有关实施方式6的减少比特数的处理的另一例。图99是表示有关实施方式6的三维数据编码方法的第4例的流程图。图100是有关实施方式6的增加比特数的处理的一例。图101是有关实施方式6的增加比特数的处理的另一例。图102是表示有关实施方式6的三维数据编码方法的第5例的流程图。图103是表示有关实施方式6的一致性的组合的一例的图。图104是表示有关实施方式6的三维数据编码方法的第6例的流程图。图105是表示有关实施方式6的一致性的组合的另一例的图。
图106是表示有关实施方式6的一致性的组合的另一例的图。图107是表示有关实施方式6的sps(sequence parameter set,序列参数集)的一例(例1)的图。图108是表示有关实施方式6的sps的一例(例2)的图。图109是表示有关实施方式6的gps(geometry parameter set,几何参数集)的一例(例3)的图。图110是表示有关实施方式6的比特流的结构的图。图111是用于说明有关实施方式6的、根据三维点群的场所切换一致性的情况的例子的图。图112是表示有关实施方式6的三维数据编码处理的另一例的流程图。图113是表示有关实施方式6的三维数据解码处理的另一例的流程图。图114是实施方式7的三维数据制作装置的框图。图115是实施方式7的三维数据制作方法的流程图。图116是表示实施方式7的系统的结构的图。图117是实施方式7的客户端装置的框图。图118是实施方式7的服务器的框图。图119是实施方式7的客户端装置的三维数据制作处理的流程图。图120是实施方式7的客户端装置的传感器信息发送处理的流程图。图121是实施方式7的服务器的三维数据制作处理的流程图。图122是实施方式7的服务器的三维地图发送处理的流程图。图123是表示实施方式7的系统的变形例的结构的图。图124是表示实施方式7的服务器以及客户端装置的结构的图。图125是表示实施方式7的服务器以及客户端装置的结构的图。图126是实施方式7的客户端装置的处理的流程图。图127是表示实施方式7的传感器信息收集系统的结构的图。图128是表示实施方式7的系统的例子的图。图129是表示实施方式7的系统的变形例的图。图130是表示有关实施方式7的应用处理的例子的流程图。图131是表示有关实施方式7的各种传感器的传感器范围的图。图132是表示有关实施方式7的自动驾驶系统的结构例的图。图133是表示有关实施方式7的比特流的结构例的图。图134是有关实施方式7的点群选择处理的流程图。图135是表示有关实施方式7的点群选择处理的画面例的图。图136是表示有关实施方式7的点群选择处理的画面例的图。图137是表示有关实施方式7的点群选择处理的画面例的图。
具体实施方式
本发明的一个技术方案的三维数据编码方法,决定将表示三维点群的点群数据分割为多个时的分割数据单位、和分割前的点群数据单位中的至少一方的编码后的编码数据
的第1最大比特数,通过以满足所决定的所述第1最大比特数的方式对分割所述点群数据而成的多个分割数据或分割前的所述点群数据进行编码,从而生成比特流,所述比特流包含表示所述第1最大比特数的第1比特数信息。由此,三维数据编码方法生成包含表示编码后的编码数据的第1最大比特数的第1比特数信息的比特流,因此三维数据解码装置不解析比特流也能够判断是否能够适当地对编码数据进行解码。因此,能够减少三维数据解码装置的处理负荷。例如,也可以是,所述点群数据包含所述三维点群的各三维点的位置信息,所述第1最大比特数与所述位置信息的编码后的比特数相关,在所述生成中,通过以满足所决定的所述第1最大比特数的方式对分割所述点群数据而成的多个分割数据或分割前的所述点群数据的位置信息进行编码,从而生成所述比特流。由此,三维数据编码方法生成包含表示编码后的位置信息的第1最大比特数的第1比特数信息的比特流,因此三维数据解码装置即使不解析比特流也能够判断是否能够适当地对位置信息进行解码。例如,也可以是,进一步地,决定所述分割数据单位和所述点群数据单位的至少一方中包含的三维点的数量的范围,在所述生成中,通过以满足所决定的所述第1最大比特数和所述数量的范围的方式对分割所述点群数据而成的多个分割数据、或分割前的所述点群数据进行编码,从而生成所述比特流,所述比特流还包含表示所述数量的范围信息。因此,能够减少三维数据解码装置的处理负荷。由此,三维数据编码方法生成包含表示编码数据的三维点的数量的范围的范围信息的比特流,因此三维数据解码装置即使不解析比特流也能够判断是否能够适当地对位置信息进行解码。因此,能够减少三维数据解码装置的处理负荷。例如,也可以是,所述点群数据还包含所述三维点群的各三维点的属性信息,所述三维数据编码方法进一步地,决定所述分割数据单位和所述点群数据单位的至少一方的三维点群的属性信息的编码后的第2最大比特数,在所述生成中,(i)以满足所决定的所述第1最大比特数的方式对分割所述点群数据而成的多个分割数据或分割前的所述点群数据的位置信息进行编码,并且(ii)以满足所决定的所述第2最大比特数的方式对分割所述点群数据而成的多个分割数据或分割前的所述点群数据的属性信息进行编码,从而生成所述比特流,所述比特流还包含表示所述第2最大比特数的第2比特数信息。由此,三维数据编码方法生成包含表示编码后的属性信息的第2最大比特数的第2比特数信息的比特流,因此三维数据解码装置即使不解析比特流也能够判断是否能够适当地对属性信息进行解码。因此,能够减少三维数据解码装置的处理负荷。本发明的一个技术方案的三维数据解码方法,取得包含编码数据和第1比特数信息的比特流,所述编码数据是将表示三维点群的点群数据分割为多个时的分割数据单位和分割前的点群数据单位中的至少一方的编码后的数据,所述第1比特数信息表示所述编码数据的第1最大比特数,判定取得的所述比特流是否满足由所述第1比特数信息表示的第1最大比特数,在判定为所述比特流满足所述第1最大比特数的情况下,对所述编码数据进行解码。由此,三维数据解码方法从比特流中取得表示编码后的编码数据的第1最大比特数的第1比特数信息,因此能够基于取得的第1比特数信息适当地对点群数据进行解码。
例如,也可以是,在所述解码中,在判定为所述比特流不满足所述第1最大比特数的情况下,不对所述编码数据进行解码。由此,不进行不能适当地解码的比特流的编码数据的解码处理,因此能够减少处理负荷。例如,也可以是,所述点群数据包含所述三维点群的各三维点的位置信息,所述第1最大比特数与所述位置信息的编码后的比特数相关。由此,三维数据解码方法从比特流中取得表示编码后的位置信息的第1最大比特数的第1比特数信息,因此能够基于取得的第1比特数信息适当地对点群数据进行解码。例如,也可以是,所述比特流还包含范围信息,该范围信息表示所述分割数据单位和所述点群数据单位的至少一方中包含的三维点的数量的范围,在所述判定中,进一步判定所述比特流是否满足由所述范围信息表示的所述数量的范围,在所述解码中,在判定为所述比特流满足所述第1最大比特数且满足所述数量的范围的情况下,对所述编码数据进行解码,在判定为所述比特流不满足所述第1最大比特数或不满足所述数量的范围的情况下,不对所述编码数据进行解码。由此,三维数据解码方法从比特流中取得表示编码数据的三维点的数量的范围的范围信息,因此能够基于取得的范围信息适当地对点群数据进行解码。例如,也可以是,所述点群数据还包含所述三维点群的各三维点的属性信息,所述比特流还包含第2比特数信息,该第2比特数信息表示所述分割数据单位和所述点群数据单位的至少一方的三维点群的属性信息的编码后的第2最大比特数,在所述判定中,进一步判定所述比特流是否满足由所述第2比特数信息表示的所述第2最大比特数,在所述解码中,在判定为所述比特流满足所述第1最大比特数且满足所述第2最大比特数的情况下,对所述编码数据进行解码,在判定为所述比特流不满足所述第1最大比特数或不满足所述第2最大比特数的情况下,不对所述编码数据进行解码。由此,三维数据解码方法从比特流中取得表示编码后的属性信息的第2最大比特数的第2比特数信息,因此能够基于取得的第2比特数信息适当地对点群数据进行解码。(实施方式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基于预先规定的编码方法对点群数据进行编码,由此生成编码数据。编码方法大致存在以下两种。第1种是使用了位置信息的编码方法,以后将该编码方法记载为第1编码方法。第2种是使用了视频编解码器的编码方法,以后将该编码方法记载为第2编码方法。解码部4624基于预先规定的编码方法对编码数据进行解码,由此对点群数据进行解码。复用部4614通过使用现有的复用方式对编码数据进行复用,从而生成复用数据。所生成的复用数据被传输或蓄积。复用部4614除了pcc编码数据以外,还复用影像、声音、字幕、应用、文件等其他媒体、或者基准时刻信息。另外,复用部4614还可以对与传感器信息或者点群数据相关联的属性信息进行复用。作为复用方式或文件格式,有isobmff、作为isobmff基础的传输方式的mpeg-dash、mmt、mpeg-2ts 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)在本实施方式中,对由上述的第1编码部4630或第2编码部4650生成的编码数据(位置信息(geometry)、属性信息(attribute)、附加信息(metadata))的种类及附加信息(元数据)的生成方法、以及复用部中的复用处理进行说明。另外,附加信息(元数据)也有表述为参数集或控制信息的情况。在本实施方式中,以在图4中说明的动态对象(随时间而变化的三维点群数据)为例进行说明,但在静态对象(任意的时刻的三维点群数据)的情况下也可以使用同样的方法。
图14是表示在有关本实施方式的三维数据编码装置中包含的编码部4801及复用部4802的结构的图。编码部4801例如对应于上述的第1编码部4630或第2编码部4650。复用部4802对应于上述的复用部4634或4656。编码部4801将多个pcc(point cloud compression)帧的点群数据编码,生成多个位置信息、属性信息及附加信息的编码数据(multiple compressed data)。复用部4802通过对多个数据种类(位置信息、属性信息及附加信息)的数据进行nal单元化,将数据变换为考虑了解码装置中的数据访问的数据结构。图15是表示由编码部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)表示。此外,在图15中,示出了存在属性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编码方法中,编码属性数据依赖于编码位置数据。此外,在图15中,示出了存在两种属性信息(属性x和属性y)的情况下的例子。在有两种属性信息的情况下,例如由两个编码部生成各自的数据及元数据。此外,例如按属性信息的每个种类来定义属性序列,按属性信息的每个种类来生成属性sps。另外,在图15中,示出了位置信息是1种、属性信息是两种的例子,但并不限于此,属性信息也可以是1种,也可以是3种以上。在此情况下,也能够用同样的方法生成编码数据。此外,在不具有属性信息的点群数据的情况下,也可以没有属性信息。在此情况下,编码部4801也可以不生成与属性信息关联的参数集。接着,对附加信息(元数据)的生成处理进行说明。编码部4801生成pcc流整体的参
数集即pcc流ps(pcc stream ps:也记作流ps)。编码部4801在流ps中保存能够在对1个或多个位置序列及1个或多个属性序列的解码处理中共同使用的参数。例如,在流ps中,包含表示点群数据的编解码器的识别信息及表示在编码中使用的算法的信息等。位置序列及属性序列依赖于流ps。接着,对访问单元及gof进行说明。在本实施方式中,新导入访问单元(access unit:au)及gof(group of frame:帧组)的考虑方式。访问单元是在解码时用来访问数据的基本单位,由1个以上的数据及1个以上的元数据构成。例如,访问单元由相同时刻的位置信息和1个或多个属性信息构成。gof是随机访问单位,由1个以上的访问单元构成。编码部4801生成访问单元头(au header)作为表示访问单元的开头的识别信息。编码部4801在访问单元头中保存与访问单元有关的参数。例如,访问单元头包含:在访问单元中包含的编码数据的结构或信息。此外,访问单元头包含对在访问单元中包含的数据共同使用的参数,例如与编码数据的解码有关的参数等。另外,编码部4801也可以代替访问单元头而生成不包含与访问单元有关的参数的访问单元定界符。该访问单元定界符被用作表示访问单元的开头的识别信息。解码装置通过检测访问单元头或访问单元定界符,识别访问单元的开头。接着,对gof开头的识别信息的生成进行说明。编码部4801生成gof头(gof header)作为表示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单元的保存方法。例如,按编码数据的每个种类规定数据格式。图16是表示编码数据及nal单元的例子的图。例如,如图16所示,编码数据包括头和有效载荷。另外,编码数据也可以包含编码数据、头或表示有效载荷的长度(数据量)的长度信息。此外,编码数据也可以不包含头。头例如包含用来确定数据的识别信息。该识别信息例如表示数据种类或帧号。
头例如包含表示参照关系的识别信息。该识别信息例如是在数据间有依赖关系的情况下被保存到头中,用来从参照源对参照目标进行参照的信息。例如,在参照目标的头中,包含用来确定该数据的识别信息。在参照源的头中,包含表示参照目标的识别信息。另外,在能够从其他信息识别或导出参照目标或参照源的情况下,也可以省略用来确定数据的识别信息或表示参照关系的识别信息。复用部4802将编码数据保存在nal单元的有效载荷中。在nal单元头中,包含作为编码数据的识别信息的pcc_nal_unit_type。图17是表示pcc_nal_unit_type的语义例的图。如图17所示,在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先送出参照目标的数据。图18是表示nal单元的送出顺序的例子的图。图18表示位置信息优先、参数优先和数据合并这3个例子。位置信息优先的送出顺序是将与位置信息有关的信息和与属性信息有关的信息的各信息一起送出的例子。在该送出顺序的情况下,与位置信息有关的信息的送出比与属性信息有关的信息的送出更早完成。例如,通过使用该送出顺序,不解码属性信息的解码装置通过忽视属性信息的解码,有可能能够设置不进行处理的时间。此外,例如在想要早解码位置信息的解码装置的情况下,通过较早得到位置信息的编码数据,有可能能够更早地解码位置信息。另外,在图18中,将属性xsps与属性ysps合并而记作属性sps,但也可以单独地配置属性xsps和属性ysps。在参数集优先的送出顺序中,先送出参数集,后送出数据。如以上这样,只要遵循nal单元送出顺序的制约,复用部4802将nal单元以怎样的顺序送出都可以。例如,也可以定义顺序识别信息,复用部4802具有以多个样式的顺序送出nal单元的功能。例如在流ps中保存nal单元的顺序识别信息。
三维数据解码装置也可以基于顺序识别信息进行解码。也可以从三维数据解码装置向三维数据编码装置指示期望的送出顺序,三维数据编码装置(复用部4802)按照被指示的送出顺序对送出顺序进行控制。另外,只要是如数据合并的送出顺序那样遵循送出顺序的制约的范围,复用部4802也可以生成将多个功能归并的编码数据。例如,如图18所示,也可以将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中,定义了表示是与瓦片或切片有关的数据或保存参数的数据的标识符。(实施方式3)在hevc编码中,为了使得能够进行解码装置的并行处理,有切片或瓦片等的数据分割的工具,但在pcc(point cloud compression:点云压缩)编码中还没有。在pcc中,根据并行处理、压缩效率及压缩算法,可以考虑各种各样的数据分割方法。这里,对切片及瓦片的定义、数据结构及送接收方法进行说明。图19是表示有关本实施方式的三维数据编码装置中包含的第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通过将多个编码位置信息、多个编码属性信息及编码附加信息复用,生成编码数据(编码流),将所生成的编码数据送出。此外,编码附加信息在解码时被使用。另外,在图19中,示出了位置信息编码部4912及属性信息编码部4913的数量分别为两个的例子,但位置信息编码部4912及属性信息编码部4913的数量分别也可以是1个,也可以是3个以上。此外,多个分割数据既可以如cpu内的多核那样在同一芯片内并行处理,也可以由多个芯片的核并行处理,也可以由多个芯片的多个核进行并行处理。图20是表示第1解码部4920的结构的框图。第1解码部4920通过对通过用第1编码方法(gpcc)将点群数据编码而生成的编码数据(编码流)进行解码,将点群数据复原。该第1解码部4920包括逆复用部4921、多个位置信息解码部4922、多个属性信息解码部4923、附加信息解码部4924和结合部4925。逆复用部4921通过将编码数据(编码流)逆复用,生成多个编码位置信息、多个编码属性信息及编码附加信息。多个位置信息解码部4922通过将多个编码位置信息解码而生成多个分割位置信息。例如,多个位置信息解码部4922将多个编码位置信息并行处理。多个属性信息解码部4923通过将多个编码属性信息解码而生成多个分割属性信息。例如,多个属性信息解码部4923将多个编码属性信息并行处理。多个附加信息解码部4924通过将编码附加信息解码,生成附加信息。结合部4925通过使用附加信息将多个分割位置信息结合,生成位置信息。结合部4925通过使用附加信息将多个分割属性信息结合,生成属性信息。另外,在图20中示出了位置信息解码部4922及属性信息解码部4923的数量分别为两个的例子,但位置信息解码部4922及属性信息解码部4923的数量分别也可以是1个,也可以是3个以上。此外,多个分割数据既可以如cpu内的多核那样在同一芯片内并行处理,也可以由多个芯片的核并行处理,也可以由多个芯片的多个核进行并行处理。接着,说明分割部4911的结构。图21是分割部4911的框图。分割部4911包括切片分割部4931(slice divider)、位置信息瓦片分割部4932(geometry tile divider)和属性信息瓦片分割部4933(attribute tile divider)。切片分割部4931通过将位置信息(position(geometry))分割为切片而生成多个切片位置信息。此外,切片分割部4931通过将属性信息(attribute)分割为切片而生成多个切片属性信息。此外,切片分割部4931输出有关切片分割的信息及包含在切片分割中生成的信息的切片附加信息(slicemetadata)。位置信息瓦片分割部4932通过将多个切片位置信息分割为瓦片而生成多个分割位置信息(多个瓦片位置信息)。此外,位置信息瓦片分割部4932输出与位置信息的瓦片分割有关的信息及包含在位置信息的瓦片分割中生成的信息的位置瓦片附加信息(geometry tile metadata)。属性信息瓦片分割部4933通过将多个切片属性信息分割为瓦片而生成多个分割属性信息(多个瓦片属性信息)。此外,属性信息瓦片分割部4933输出与属性信息的瓦片分割有关的信息及包含在属性信息的瓦片分割中生成的信息的属性瓦片附加信息(attribute tile metadata)。另外,被分割的切片或瓦片的数量是1个以上。即,也可以不进行切片或瓦片的分
割。此外,这里示出了在切片分割后进行瓦片分割的例子,但也可以在瓦片分割后进行切片分割。此外,除了切片及瓦片以外,也可以再定义新的分割种类,以3个以上的分割种类进行分割。以下,对点群数据的分割方法进行说明。图22是表示切片及瓦片分割的例子的图。首先,对切片分割的方法进行说明。分割部4911将三维点群数据以切片单位分割为任意的点群。分割部4911在切片分割中不分割构成点的位置信息和属性信息,而将位置信息和属性信息一齐分割。即,分割部4911以任意点处的位置信息和属性信息属于相同的切片的方式进行切片分割。另外,只要遵循这些,则分割数量及分割方法是怎样的方法都可以。此外,分割的最小单位是点。例如,位置信息和属性信息的分割数量相同。例如,与切片分割后的位置信息对应的三维点和与属性信息对应的三维点包含于相同的切片中。此外,分割部4911在切片分割时生成作为与分割数量及分割方法有关的附加信息的切片附加信息。切片附加信息在位置信息和属性信息中是相同的。例如,切片附加信息包含表示分割后的包围盒(bounding box)的基准坐标位置、大小或边的长度的信息。此外,切片附加信息包含表示分割数量及分割类型等的信息。接着,对瓦片分割的方法进行说明。分割部4911将被切片分割后的数据分割为切片位置信息(g切片)和切片属性信息(a切片),将切片位置信息和切片属性信息分别分割为瓦片单位。另外,在图22中示出了以8叉树结构分割的例子,但分割数量及分割方法是怎样的方法都可以。此外,分割部4911将位置信息和属性信息既可以用不同的分割方法分割,也可以用相同的分割方法分割。此外,分割部4911将多个切片既可以用不同的分割方法分割为瓦片,也可以用相同的分割方法分割为瓦片。此外,分割部4911在瓦片分割时生成与分割数量及分割方法有关的瓦片附加信息。瓦片附加信息(位置瓦片附加信息及属性瓦片附加信息)在位置信息和属性信息中独立。例如,瓦片附加信息包含表示分割后的包围盒的基准坐标位置、大小或边的长度的信息。此外,瓦片附加信息包含表示分割数量及分割类型等的信息。接着,说明将点群数据分割为切片或瓦片的方法的例子。作为切片或瓦片分割的方法,分割部4911既可以使用预先设定的方法,也可以根据点群数据而自适应地切换所使用的方法。在切片分割时,分割部4911对于位置信息和属性信息一齐将三维空间分割。例如,分割部4911判定对象的形状,根据对象的形状将三维空间分割为切片。例如,分割部4911提取树或建筑物等对象,以对象单位进行分割。例如,分割部4911进行切片分割,以使1个或多个对象的整体包含于1个切片中。或者,分割部4911将一个对象分割为多个切片。在此情况下,编码装置例如也可以按每个切片改变编码方法。例如,编码装置也可以对特定的对象或对象的特定的一部分使用高品质的压缩方法。在此情况下,编码装置也可以将表示每个切片的编码方法的信息向附加信息(元数据)保存。此外,分割部4911也可以基于地图信息或位置信息进行切片分割,以使各切片对应于预先设定的坐标空间。
在瓦片分割时,分割部4911将位置信息和属性信息独立地分割。例如,分割部4911根据数据量或处理量将切片分割为瓦片。例如,分割部4911判定切片的数据量(例如切片中包含的三维点的数量)是否比预先设定的阈值多。分割部4911在切片的数据量比阈值多的情况下将切片分割为瓦片。分割部4911在切片的数据量比阈值少时不将切片分割为瓦片。例如,分割部4911将切片分割为瓦片,以使解码装置中的处理量或处理时间成为一定的范围(预先设定的值以下)。由此,解码装置的每个瓦片的处理量成为一定,解码装置中的分散处理变得容易。此外,分割部4911在位置信息和属性信息中处理量不同的情况下,例如在位置信息的处理量比属性信息的处理量多的情况下,使位置信息的分割数量比属性信息的分割数量多。此外,例如根据内容,在解码装置也可以将位置信息较早地解码并显示、将属性信息然后慢慢解码而显示的情况下,分割部4911也可以使位置信息的分割数量比属性信息的分割数量多。由此,解码装置能够使位置信息的并行数量变多,所以能够使位置信息的处理比属性信息的处理高速化。另外,解码装置并不需要一定将被切片化或瓦片化的数据并行处理,也可以根据解码处理部的数量或能力来判定是否将它们并行处理。通过用以上那样的方法分割,能够实现与内容或对象对应的自适应的编码。此外,能够实现解码处理中的并行处理。由此,点群编码系统或点群解码系统的柔性提高。图23是表示切片及瓦片的分割的样式的例子的图。图中的du是数据单位(data unit),表示瓦片或切片的数据。此外,各du包括切片索引(slice index)和瓦片索引(tile index)。图中的du的右上的数值表示切片索引,du的左下的数值表示瓦片索引。在样式1中,在切片分割中,在g切片和a切片中分割数量及分割方法相同。在瓦片分割中,对于g切片的分割数量及分割方法与对于a切片的分割数量及分割方法不同。此外,在多个g切片间使用相同的分割数量及分割方法。在多个a切片间使用相同的分割数量及分割方法。在样式2中,在切片分割中,在g切片和a切片中分割数量及分割方法相同。在瓦片分割中,对于g切片的分割数量及分割方法与对于a切片的分割数量及分割方法不同。此外,在多个g切片间,分割数量及分割方法不同。在多个a切片间,分割数量及分割方法不同。接着,对分割数据的编码方法进行说明。三维数据编码装置(第1编码部4910)将被分割后的数据分别编码。三维数据编码装置在将属性信息编码时,生成表示基于哪个结构信息(位置信息、附加信息或其他属性信息)进行了编码的依赖关系信息作为附加信息。即,依赖关系信息例如表示参照目标(依赖目标)的结构信息。在此情况下,三维数据编码装置基于与属性信息的分割形状对应的结构信息生成依赖关系信息。另外,三维数据编码装置也可以基于与多个分割形状对应的结构信息生成依赖关系信息。依赖关系信息也可以由三维数据编码装置生成,所生成的依赖关系信息被送出至三维数据解码装置。或者,也可以由三维数据解码装置生成依赖关系信息,三维数据编码装置不送出依赖关系信息。此外,也可以预先设定三维数据编码装置使用的依赖关系,三维数据编码装置不送出依赖关系信息。图24是表示各数据的依赖关系的一例的图。图中的箭头的尖部表示依赖目标,箭
头的根部表示依赖源。三维数据解码装置以从依赖目标到依赖源的顺序将数据解码。此外,在图中用实线表示的数据是实际被送出的数据,由点线表示的数据是不被送出的数据。此外,在该图中,g表示位置信息,a表示属性信息。g
s1
表示切片号1的位置信息,g
s2
表示切片号2的位置信息。g
s1t1
表示切片号1且瓦片号1的位置信息,g
s1t2
表示切片号1且瓦片号2的位置信息,g
s2t1
表示切片号2且瓦片号1的位置信息,g
s2t2
表示切片号2且瓦片号2的位置信息。同样,a
s1
表示切片号1的属性信息,a
s2
表示切片号2的属性信息。a
s1t1
表示切片号1且瓦片号1的属性信息,a
s1t2
表示切片号1且瓦片号2的属性信息,a
s2t1
表示切片号2且瓦片号1的属性信息,a
s2t2
表示切片号2且瓦片号2的属性信息。mslice表示切片附加信息,mgtile表示位置瓦片附加信息,matile表示属性瓦片附加信息。d
s1t1
表示属性信息a
s1t1
的依赖关系信息,d
s2t1
表示属性信息a
s2t1
的依赖关系信息。此外,三维数据编码装置也可以将数据以解码顺序重新排列,以使得在三维数据解码装置中不需要将数据重新排列。另外,也可以在三维数据解码装置中将数据重新排列,也可以在三维数据编码装置和三维数据解码装置双方中将数据重新排列。图25是表示数据的解码顺序的例子的图。在图25的例子中,从左方的数据起依次进行解码。三维数据解码装置在处于依赖关系的数据间,先从依赖目标的数据开始进行解码。例如,三维数据编码装置将数据预先重新排列为该顺序而送出。另外,只要是依赖目标的数据为先的顺序,则怎样的顺序都可以。此外,三维数据编码装置也可以将附加信息及依赖关系信息比数据先送出。图26是表示由三维数据符号装置进行的处理的流程的流程图。首先,三维数据编码装置如上述那样将多个切片或瓦片的数据编码(s4901)。接着,三维数据编码装置如图25所示,以依赖目标的数据为先的方式将数据重新排列(s4902)。接着,三维数据编码装置将重新排列后的数据复用(nal单元化)(s4903)。接着,说明在第1解码部4920中包含的结合部4925的结构。图27是表示结合部4925的结构的框图。结合部4925包括位置信息瓦片结合部4941(geometry tile combiner)、属性信息瓦片结合部4942(attribute tile combiner)和切片结合部(slice combiner)。位置信息瓦片结合部4941通过使用位置瓦片附加信息将多个分割位置信息结合,生成多个切片位置信息。属性信息瓦片结合部4942通过使用属性瓦片附加信息将多个分割属性信息结合,生成多个切片属性信息。切片结合部4943通过使用切片附加信息将多个切片位置信息结合而生成位置信息。此外,切片结合部4943通过使用切片附加信息将多个切片属性信息结合而生成属性信息。另外,被分割的切片或瓦片的数量是1个以上。即,也可以不进行切片或瓦片的分割。此外,这里示出了在切片分割后进行瓦片分割的例子,但也可以在瓦片分割后进行切片分割。此外,除了切片及瓦片以外也可以还定义新的分割种类,以3个以上的分割种类进行分割。接着,说明被切片分割或瓦片分割的编码数据的结构、以及编码数据向nal单元的保存方法(复用方法)。图28是说明编码数据的结构及编码数据向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)中保存表示分割方法的信息。此外,上述的信息既可以被保存在上述的某个参数集中,也可以被保存在多个参数集中。此外,也可以定义瓦片分割或切片分割用的参数集,在该参数集中保存上述信息。此外,这些信息也可以被保存在编码数据的头中。此外,编码数据的头包含表示依赖关系的识别信息。即,在数据间有依赖关系的情况下,该头包含用来从依赖源参照依赖目标的识别信息。例如,在依赖目标的数据的头中,包含用来确定该数据的识别信息。在依赖源的数据的头中,包含表示依赖目标的识别信息。另外,在能够根据其他信息识别或导出用来确定数据的识别信息、与切片分割或瓦片分割有关的附加信息及表示依赖关系的识别信息的情况下,也可以将这些信息省略。接着,对有关本实施方式的点群数据的编码处理及解码处理的流程进行说明。图29是有关本实施方式的点群数据的编码处理的流程图。首先,三维数据编码装置决定使用的分割方法(s4911)。该分割方法包含是否进行切片分割、是否进行瓦片分割。此外,分割方法也可以包含进行切片分割或瓦片分割的情况下的分割数量及分割的种类等。分割的种类指的是上述那样的基于对象形状的方法、基于地图信息或位置信息的方法、或者基于数据量或处理量的方法等。另外,分割方法也可以被预先设定。在进行切片分割的情况下(在s4912中“是”),三维数据编码装置通过将位置信息和属性信息一齐分割,生成多个切片位置信息及多个切片属性信息(s4913)。此外,三维数
据编码装置生成有关切片分割的切片附加信息。另外,三维数据编码装置也可以将位置信息和属性信息独立地分割。在进行瓦片分割的情况下(在s4914中“是”),三维数据编码装置通过将多个切片位置信息及多个切片属性信息(或位置信息及属性信息)独立地分割,生成多个分割位置信息及多个分割属性信息(s4915)。此外,三维数据编码装置生成与瓦片分割有关的位置瓦片附加信息及属性瓦片附加信息。另外,三维数据编码装置也可以将切片位置信息和切片属性信息一齐分割。接着,三维数据编码装置通过将多个分割位置信息及多个分割属性信息分别编码,生成多个编码位置信息及多个编码属性信息(s4916)。此外,三维数据编码装置生成依赖关系信息。接着,三维数据编码装置通过将多个编码位置信息、多个编码属性信息及附加信息进行nal单元化(复用)而生成编码数据(编码流)(s4917)。此外,三维数据编码装置将所生成的编码数据送出。图30是有关本实施方式的点群数据的解码处理的流程图。首先,三维数据解码装置通过将编码数据(编码流)中包含的有关分割方法的附加信息(切片附加信息、位置瓦片附加信息及属性瓦片附加信息)解析,判定分割方法(s4921)。该分割方法包含是否进行切片分割、是否进行瓦片分割。此外,分割方法也可以包含进行切片分割或瓦片分割的情况下的分割数量及分割的种类等。接着,三维数据解码装置通过将编码数据中包含的多个编码位置信息及多个编码属性信息使用编码数据中包含的依赖关系信息进行解码,生成分割位置信息及分割属性信息(s4922)。在由附加信息表示进行了瓦片分割的情况下(在s4923中“是”),三维数据解码装置基于位置瓦片附加信息及属性瓦片附加信息,将多个分割位置信息和多个分割属性信息用各自的方法结合,从而生成多个切片位置信息及多个切片属性信息(s4924)。另外,三维数据解码装置也可以将多个分割位置信息和多个分割属性信息用相同的方法结合。在由附加信息表示进行了切片分割的情况下(在s4925中“是”),三维数据解码装置基于切片附加信息,将多个切片位置信息及多个切片属性信息(多个分割位置信息及多个分割属性信息)用相同的方法结合,从而生成位置信息及属性信息(s4926)。另外,三维数据解码装置也可以将多个切片位置信息和多个切片属性信息分别用不同的方法结合。另外,瓦片或切片的属性信息(标识符、区域信息、地址信息及位置信息等)不限于sei,也可以存放在其他控制信息中。例如,属性信息可以存放在表示pcc数据整体的结构的控制信息中,也可以存放在每个瓦片或切片的控制信息中。另外,三维数据编码装置(三维数据发送装置)在将pcc数据传输到其他设备时,也可以将sei等控制信息变换为该系统的协议所特有的控制信息来表示。例如,当将包含属性信息的pcc数据变换为isobmff(iso base media file format:iso基本媒体文件格式)时,三维数据编码装置可以将sei与pcc数据一起存放在“mdat box”中,也可以存放在记载与流相关的控制信息的“track box”中。即,三维数据编码装置也可以将控制信息存放在用于随机访问的表中。此外,在将pcc数据打包并传输的情况下,三维数据编码装置也可以将sei存放在包头中。这样,通过使系统的层能够获得属性
信息,使属性信息和瓦片数据或切片数据的存取变得容易,能够提高存取的速度。另外,在三维数据解码装置的结构中,存储器管理部也可以预先判定解码处理所需的信息是否在存储器中,如果没有解码处理所需的信息,则从储存器或网络获得该信息。在三维数据解码装置从储存器或网络使用mpeg-dash等协议中的pull获得pcc数据的情况下,存储器管理部也可以基于来自本地化部等的信息,确定解码处理所需的数据的属性信息,请求包含所确定的属性信息的瓦片或切片,获得所需的数据(pcc流)。包含属性信息的瓦片或切片的确定可以在储存器或网络侧进行,也可以由存储器管理部进行。例如,存储器管理部也可以预先获得所有pcc数据的sei,基于该信息来确定瓦片或切片。在udp协议等中使用push从储存器或网络发送了所有pcc数据的情况下,存储器管理部也可以基于来自本地化部等的信息,确定解码处理所需的数据的属性信息、以及瓦片或切片,根据所送出的pcc数据对期望的瓦片或切片进行滤波,从而获得期望的数据。另外,三维数据编码装置也可以在获得数据时,基于是否存在期望的数据、或者数据尺寸等来判定是否能够进行实际时间内的处理、或者通信状态等。基于该判定结果,在判断为数据获得困难的情况下,三维数据编码装置也可以选择优先级或数据量不同的其他切片或瓦片来获得。另外,三维数据解码装置也可以向云服务器发送来自本地化部等的信息,云服务器基于该信息判定需要的信息。(实施方式4)接着,对瓦片附加信息进行说明。三维数据编码装置生成作为关于瓦片的分割方法的元数据的瓦片附加信息,将所生成的瓦片附加信息向三维数据解码装置发送。图31是表示瓦片附加信息(tilemetadata)的句法例的图。如图31所示,例如瓦片附加信息包括分割方法信息(type_of_divide)、形状信息(topview_shape)、重复标志(tile_overlap_flag)、重复信息(type_of_overlap)、高度信息(tile_height)、瓦片数(tile_number)和瓦片位置信息(global_position,relative_position)。分割方法信息(type_of_divide)表示瓦片的分割方法。例如,分割方法信息表示瓦片的分割方法是基于地图的信息的分割、即基于俯视的分割(top_view),还是其以外(other)。形状信息(topview_shape)例如在瓦片的分割方法是基于俯视的分割的情况下包含在瓦片附加信息中。形状信息表示将瓦片俯视的形状。例如,该形状包括正方形及圆。另外,该形状既可以包括椭圆、矩形或四边形以外的多边形,也可以包括其以外的形状。另外,形状信息并不限于将瓦片俯视的形状,也可以表示瓦片的三维形状(例如立方体及圆柱等)。重复标志(tile_overlap_flag)表示瓦片是否重复。例如,在瓦片的分割方法是基于俯视的分割的情况下,重复标志包含在瓦片附加信息中。在此情况下,重复标志表示在俯视中瓦片是否重复。另外,重复标志也可以表示在三维空间中瓦片是否重复。重复信息(type_of_overlap)例如在瓦片重复的情况下包含在瓦片附加信息中。重复信息表示瓦片的重复方式等。例如,重复信息表示重复的区域的大小等。高度信息(tile_height)表示瓦片的高度。另外,高度信息也可以包含表示瓦片的形状的信息。例如,在瓦片的俯视的形状是矩形的情况下,该信息也可以表示该矩形的边的
长度(纵向的长度及横向的长度)。此外,在瓦片的俯视的形状是圆的情况下,该信息也可以表示该圆的直径或半径。此外,高度信息既可以表示各瓦片的高度,也可以表示多个瓦片共同的高度。此外,也可以预先设定道路及立体交叉部分等的多个高度类型,由高度信息表示各高度类型的高度和各瓦片的高度类型。或者,也可以将各高度类型的高度预先定义,由高度信息表示各瓦片的高度类型。即,各高度类型的高度也可以不由高度信息表示。瓦片数(tile_number)表示瓦片的数量。另外,瓦片附加信息也可以包含表示瓦片的间隔的信息。瓦片位置信息(global_position,relative_position)是用来确定各瓦片的位置的信息。例如,瓦片位置信息表示各瓦片的绝对坐标或相对坐标。另外,上述的信息的一部分或全部既可以按每个瓦片设置,也可以按每多个瓦片(例如按每个帧或按每多个帧)设置。三维数据编码装置也可以将瓦片附加信息包含在sei(supplemental enhancement information)中而送出。或者,三维数据编码装置也可以将瓦片附加信息保存到既有的参数集(pps、gps或aps等)中并送出。例如,在瓦片附加信息按每个帧而变化的情况下,也可以在每个帧的参数集(gps或aps等)中保存瓦片附加信息。在序列内瓦片附加信息不变化的情况下,也可以在每个序列的参数集(位置sps或属性sps)中保存瓦片附加信息。进而,在位置信息和属性信息中使用相同的瓦片分割信息的情况下,也可以在pcc流的参数集(流ps)中保存瓦片附加信息。此外,瓦片附加信息既可以保存到上述中的任一个参数集中,也可以保存到多个参数集中。此外,瓦片附加信息也可以保存到编码数据的头中。此外,瓦片附加信息也可以保存到nal单元的头中。此外,瓦片附加信息的全部或一部分也可以保存到分割位置信息的头及分割属性信息的头的一方中,而不保存到另一方中。例如,在位置信息和属性信息中使用相同的瓦片附加信息的情况下,也可以在位置信息和属性信息的一方的头中包含瓦片附加信息。例如,在属性信息依赖于位置信息的情况下,位置信息先被处理。因此,也可以在位置信息的头中包含这些瓦片附加信息,在属性信息的头中不包含瓦片附加信息。在此情况下,三维数据解码装置例如判断为依赖源的属性信息属于与依赖目标的位置信息的瓦片相同的瓦片。三维数据解码装置基于瓦片附加信息,重构被瓦片分割的点群数据。三维数据解码装置在有重复的点群数据的情况下,确定重复的多个点群数据,选择某一个或将多个点群数据合并。此外,三维数据解码装置也可以使用瓦片附加信息进行解码。例如,三维数据解码装置也可以在多个瓦片重复的情况下按每个瓦片进行解码,进行使用了被解码的多个数据的处理(例如平滑化或滤波等),生成点群数据。由此,有可能能够进行精度更高的解码。图32是表示包括三维数据编码装置及三维数据解码装置的系统的结构例的图。瓦片分割部5051将包含位置信息及属性信息的点群数据分割为第1瓦片和第2瓦片。此外,瓦片分割部5051将有关瓦片分割的瓦片附加信息向解码部5053及瓦片结合部5054发送。编码部5052通过将第1瓦片及第2瓦片编码,生成编码数据。解码部5053通过将由编码部5052生成的编码数据解码,将第1瓦片及第2瓦片复
原。瓦片结合部5054通过使用瓦片附加信息将第1瓦片及第2瓦片结合,将点群数据(位置信息及属性信息)复原。接着,对切片附加信息进行说明。三维数据编码装置生成作为关于切片的分割方法的元数据的切片附加信息,将所生成的切片附加信息向三维数据解码装置发送。图33是表示切片附加信息(slicemetadata)的句法例的图。如图33所示,例如切片附加信息包括分割方法信息(type_of_divide)、重复标志(slice_overlap_flag)、重复信息(type_of_overlap)、切片数(slice_number)、切片位置信息(global_position,relative_position)和切片尺寸信息(slice_bounding_box_size)。分割方法信息(type_of_divide)表示切片的分割方法。例如,分割方法信息表示切片的分割方法是否是在图50中表示那样的基于对象的信息的分割(object)。另外,切片附加信息也可以包括表示对象分割的方法的信息。例如,该信息表示是将1个对象分割为多个切片还是分配给1个切片。此外,该信息也可以表示将1个对象分割为多个切片的情况下的分割数量等。重复标志(slice_overlap_flag)表示切片是否重复。重复信息(type_of_overlap)例如在切片重复的情况下包含在切片附加信息中。重复信息表示切片的重复方式等。例如,重复信息表示重复的区域的大小等。切片数(slice_number)表示切片的数量。切片位置信息(global_position,relative_position)及切片尺寸信息(slice_bounding_box_size)是关于切片的区域的信息。切片位置信息是用来确定各切片的位置的信息。例如,切片位置信息表示各切片的绝对坐标或相对坐标。切片尺寸信息(slice_bounding_box_size)表示各切片的尺寸。例如,切片尺寸信息表示各切片的边界框的尺寸。三维数据编码装置也可以将切片附加信息包含在sei中而送出。或者,三维数据编码装置也可以将切片附加信息保存在既有的参数集(pps、gps或aps等)中而送出。例如,在切片附加信息按每个帧变化的情况下,也可以在每个帧的参数集(gps或aps等)中保存切片附加信息。在序列内切片附加信息不变化的情况下,也可以在每个序列的参数集(位置sps或属性sps)中保存切片附加信息。进而,在位置信息和属性信息中使用相同的切片分割信息的情况下,也可以在pcc流的参数集(流ps)中保存切片附加信息。此外,切片附加信息既可以保存到上述中的任一个参数集中,也可以保存到多个参数集中。此外,切片附加信息也可以保存到编码数据的头中。此外,切片附加信息也可以保存到nal单元的头中。此外,切片附加信息的全部或一部分也可以保存到分割位置信息的头及分割属性信息的头的一方中,而不保存到另一方中。例如,在位置信息和属性信息中使用相同的切片附加信息的情况下,也可以在位置信息和属性信息的一方的头中包含切片附加信息。例如,在属性信息依赖于位置信息的情况下,位置信息先被处理。因此,也可以在位置信息的头中包含这些切片附加信息,在属性信息的头中不包含切片附加信息。在此情况下,三维数据解码装置例如判断为依赖源的属性信息属于与依赖目标的位置信息的切片相同的切片。三维数据解码装置基于切片附加信息,重构被切片分割的点群数据。三维数据解码装置在有重复的点群数据的情况下,确定重复的多个点群数据,选择某一个或将多个点群数据合并。
此外,三维数据解码装置也可以使用切片附加信息进行解码。例如,三维数据解码装置也可以在多个切片重复的情况下按每个切片进行解码,进行使用了被解码的多个数据的处理(例如平滑化或滤波等),生成点群数据。由此,有可能能够进行精度更高的解码。图34是由有关本实施方式的三维数据编码装置进行的、包括瓦片附加信息的生成处理的三维数据编码处理的流程图。首先,三维数据编码装置决定瓦片的分割方法(s5031)。具体而言,三维数据编码装置决定作为瓦片的分割方法而使用基于俯视的分割方法(top_view),还是使用其以外(other)的方法。此外,三维数据编码装置决定使用基于俯视的分割方法的情况下的瓦片的形状。此外,三维数据编码装置决定瓦片是否与其他瓦片重复。在由步骤s5031决定的瓦片的分割方法是基于俯视的分割方法的情况下(s5032中“是”),三维数据编码装置将瓦片的分割方法是基于俯视的分割方法(top_view)的情况记载在瓦片附加信息中(s5033)。另一方面,在由步骤s5031决定的瓦片的分割方法是基于俯视的分割方法以外的方法的情况下(s5032中“否”),三维数据编码装置将瓦片的分割方法是基于俯视的分割方法(top_view)以外的方法的情况记载在瓦片附加信息中(s5034)。此外,在由步骤s5031决定的俯视瓦片的形状是正方形的情况下(s5035中正方形),三维数据编码装置将俯视瓦片的形状是正方形的情况记载在瓦片附加信息中(s5036)。另一方面,在由步骤s5031决定的俯视瓦片的形状是圆的情况下(s5035中圆),三维数据编码装置将俯视瓦片的形状是圆的情况记载在瓦片附加信息中(s5037)。接着,三维数据编码装置判定瓦片是否与其他瓦片重复(s5038)。在瓦片与其他瓦片重复的情况下(s5038中“是”),三维数据编码装置将瓦片重复的情况记载在瓦片附加信息中(s5039)。另一方面,在瓦片不与其他瓦片重复的情况下(s5038中“否”),三维数据编码装置将瓦片不重复的情况记载在瓦片附加信息中(s5040)。接着,三维数据编码装置基于在步骤s5031中决定的瓦片的分割方法将瓦片分割,将各瓦片编码,送出所生成的编码数据及瓦片附加信息(s5041)。图35是由有关本实施方式的三维数据解码装置进行的使用了瓦片附加信息的三维数据解码处理的流程图。首先,三维数据解码装置将比特流中包含的瓦片附加信息解析(s5051)。在由瓦片附加信息表示瓦片不与其他瓦片重复的情况下(s5052中“否”),三维数据解码装置通过将各瓦片解码而生成各瓦片的点群数据(s5053)。接着,三维数据解码装置基于由瓦片附加信息表示的瓦片的分割方法及瓦片的形状,根据各瓦片的点群数据重构点群数据(s5054)。另一方面,在由瓦片附加信息表示瓦片与其他瓦片重复的情况下(s5052中“是”),三维数据解码装置通过将各瓦片解码,生成各瓦片的点群数据。此外,三维数据解码装置基于瓦片附加信息,确定瓦片的重复部分(s5055)。另外,三维数据解码装置也可以关于重复部分使用重复的多个信息进行解码处理。接着,三维数据解码装置基于由瓦片附加信息表示的瓦片的分割方法、瓦片的形状及重复信息,根据各瓦片的点群数据重构点群数据(s5056)。以下,说明关于切片的变形例等。三维数据编码装置也可以将表示对象的种类(道
路、建筑物、树等)或属性(动态信息、静态信息等)的信息作为附加信息而发送。或者,也可以根据对象预先规定编码的参数,三维数据编码装置通过将对象的种类或属性送出,向三维数据解码装置通知编码参数。关于切片数据的编码顺序及送出顺序,也可以使用以下的方法。例如,三维数据编码装置也可以根据对象的识别或聚类较容易的数据起依次将切片数据编码。或者,三维数据编码装置也可以从聚类较早结束的切片数据起依次进行编码。此外,三维数据编码装置也可以从被编码的切片数据起依次送出。或者,三维数据编码装置也可以在应用中以解码的优先级从高到低的顺序将切片数据送出。例如,在动态信息的解码的优先级较高的情况下,三维数据编码装置也可以从以动态信息进行了分组的切片起依次将切片数据送出。此外,三维数据编码装置在编码数据的顺序与解码的优先级的顺序不同的情况下,也可以将编码数据在重新排列后送出。此外,三维数据编码装置在将编码数据蓄积时,也可以将编码数据在重新排列后蓄积。应用(三维数据解码装置)向服务器(三维数据编码装置)请求包含期望的数据的切片的送出。服务器也可以送出应用需要的切片数据,而不送出不需要的切片数据。应用向服务器请求包含期望的数据的瓦片的送出。服务器也可以送出应用需要的瓦片数据,而不送出不需要的瓦片数据。(实施方式5)说明位置信息(几何形状)的编码。三维数据编码装置在位置信息的编码中,使用八叉树分割包含点群数据的区域,变换为每个节点的点的占有信息的集合。占有信息是表示在各个子节点中是否存在点的8bit的信息,并且通过0和1表示在各子节点中是否包含点。作为分割为八叉树的顺序,有使用宽度优先搜索法从深度(depth的值)小的节点开始依次分割的方法、使用深度优先搜索法在搜索点直到最下层的深度后再返回到上方的深度再次搜索的方法等。在编码中,按上述顺序排列占有信息并进行编码。图36是表示将具有的点群用八叉树进行分割直到depth=6的深度时的树结构的图。图37是表示使用了宽度优先搜索法的八叉树结构的编码数据的数据结构的例子的图。点群的编码数据包含头(header)和有效载荷(payload)。有效载荷中按顺序配置有针对每个深度(depth)的信息(depth#0~depth#6)。图38是表示有效载荷的句法例的图。有效载荷包含每个深度的占用率编码。接着,说明阶层结构。例如,如图36所示,定义多个级别(也称为阶层级别)。级别2是使用从depth=0到最终深度(depth=6)进行了八叉树分割的点群数据来表现的点群,级别1是使用从depth=0到depth=5进行了八叉树分割的点群数据来表现的点群,级别0是使用从depth=0到depth=4进行了八叉树分割的点群数据来表现的点群。即,点群的分辨率按照级别0、级别1、级别2的顺序变高。相反,点群的分辨率按照级别2、级别1、级别0的顺序变低。这也能够说是每次级别下降按1/2被量化。这样,通过使用级别,能够使用到最下位层为止的所有数据来表现点群整体,或者通过使用从depth=0到一部分上位的阶层为止的数据来表现低分辨率的点群数据。此外,能够根据数据的处理分辨率或数据量,根据需要适应性地通过各种组合来设定级别。图39是以目标分辨率对编码位置信息所得的编码数据进行解码的解码处理的流
程图。首先,三维数据解码装置决定想要解码的级别(分辨率)及与该级别对应的深度(s8801)。接着,三维数据解码装置对所决定的深度的编码数据进行解码。具体而言,三维数据解码装置对最初的深度(深度0(depth=0))进行解码(s8802)。三维数据解码装置在解码对象的所有深度的解码未完成的情况下(在s8803中“否”),对下一个深度进行解码(s8804)。另外,三维数据解码装置也可以使用之前的级别(或深度)的数据对解码对象的深度进行解码。三维数据解码装置在解码对象的所有深度的解码完成的情况下(在s8803中“是”),显示得到的点群(s8805)。此外,也可以是,三维数据解码装置对所决定的深度的编码数据进行解码,不对剩余的深度的编码数据进行解码。图40是表示级别与被解码的数据的关系的图。图41是表示级别的示意图。例如,在图40中,为了对级别0的点群进行解码,需要对depth#0~depth#4的解码。因此,三维数据解码装置对到a为止的编码数据进行解码。此外,为了对级别1的点群进行解码,需要对depth#0~depth#5的解码。因此,三维数据解码装置对到b为止的编码数据进行解码。此外,为了对级别2(所有)的点群进行解码,需要对depth#0~depth#6的解码。因此,三维数据解码装置对到c为止的编码数据进行解码。通过以上的处理,三维数据解码装置能够对低分辨率的数据进行解码。因此,三维数据解码装置在不需要高分辨率的点群的情况下能够削减数据量、或通过跳过解码处理而削减处理量。或者,三维数据解码装置能够在对低分辨率的数据进行解码之后,不等待剩余数据的解码而显示低分辨率数据,在对高分辨率的解码数据进行解码之后,显示剩余数据。由此,能够缩短解码以及显示的初始延迟。这里,三维数据解码装置为了进行到中途的数据为止的解码,需要判定到a或b的时间点为止取得了数据的情况,即编码数据中的深度间的边界或深度的信息。图42是表示头的句法例的图。图43是表示有效载荷的句法例的图。例如,三维数据解码装置可以使用头中所示的点群的点数(numpoint)、深度的数量(depth)和存放于有效载荷所示的每个深度的每个节点或每个叶的编码数据(occupancy_code),从开头起依次对编码数据进行解码,并解析被解码的占用率编码的信息,从而判定深度之间的边界或深度信息。在本实施方式中,说明这样的使得深度数据的部分解码以及数据的分割和组合变得容易的数据结构。这里,重新对意识到分层结构的数据结构进行定义。通过使用本数据结构,能够进行阶层数据单位的数据分割及结合。三维数据编码装置或三维数据解码装置通过提取特定的需要的阶层数据,能够削减传输所需要的数据量。此外,三维数据编码装置或三维数据解码装置能够不进行编码数据的解码而进行数据分割或结合,由此功能性提高。图44是表示具有从深度0到深度6的所有位置信息(depth#0~depth#6)的编码数据的结构的图。另外,该编码数据也称为整体编码数据或比特流(编码比特流)。在该例中,整体编码数据中不包含表示深度之间的数据所明示的边界的信息。三维数据解码装置能够通过解析占用率编码(occupancy_code)来得到深度之间的边界或深度信息。这里,头所包含的点数(numpoint)表示整体编码数据中所包含的所有点的数量。此外,表示深度的数量
的深度数depth在本例中为“7”。图45是表示整体编码数据的结构的图。除了图44所示的结构之外,图45所示的整体编码数据还包含表示阶层结构的元数据即阶层结构元数据。图46是表示深度信息(depth_info)的句法例的图。图47是表示深度信息存放在阶层结构元数据(layer_metadata)中的例子的图。深度信息包含深度数(depth)和表示每个深度(depth)的数据的长度的长度信息(length)。长度信息例如通过字节数或比特数等来表示对应的深度的编码数据(也记为深度数据)的开头位置与最终位置之差。包含长度信息的阶层结构元数据,可以在编码数据之前送出,也可以在编码数据之后送出。此外,长度信息可以存放在整体编码数据的头中。图48是表示在这种情况下的头的句法例的图。头包含点数(numpoint)和深度信息(depth_info)。这样,例如,在阶层结构元数据或头中明示了深度之间的数据边界。另外,三维数据解码装置也可以不将阶层结构元数据用于解码。在此情况下,三维数据解码装置在分割或重构阶层数据时使用阶层结构元数据。此外,在图44和图45所示的结构的情况下,所有深度数据是连续的,并且熵编码中使用的上下文信息也不被初始化而是连续的。通过使用本结构,三维数据解码装置能够容易地将整体编码数据分割为每个深度的数据,因此能够削减处理量。另外,由于能够进行分割数据的传输,所以能够削减传输量。接着,说明导入了阶层(层)的概念的情况。图49是表示在这种情况下的整体编码数据的结构例的图。在该图中,深度0~深度4(depth#0~depth#4)被定义为层0,深度5(depth#5)被定义为层1,深度6(depth#6)被定义为层2。也就是说,在与上述的级别(阶层级别)进行比较的情况下,与级别由从深度0到期望的深度的多个深度来定义相对,多个阶层由互不重复的深度来定义。例如,层0包含与级别0相同的深度,层1对应于级别1与级别0的差分的深度,层2对应于级别2与级别1的差分。在这种情况下,阶层信息(layer_info)被附加到整体编码数据。图50是表示阶层信息的句法例的图。阶层信息包含表示层的数量的层数(layer)以及表示各层所包含的深度的数量的层深度数(num_depth)。图51是表示阶层结构元数据的句法例的图。例如,阶层结构元数据包含阶层信息(layer_info)。图52是表示整体编码数据的头的句法例的图。例如,如图52所示,头包含深度信息(depth_info)。此外,阶层信息以及深度信息两者都可以包含在头或阶层结构元数据中。另外,这里所示的句法结构是一例,并不限于此。整体编码数据所包含的信息只要是三维数据解码装置能够取得深度数、层数、层深度数以及长度信息的信息即可。例如,整体编码数据可以包含表示各层的长度的信息。此外,如果层结构在多个处理单位(例如帧等)中是共同的,则这些信息中的一部分或全部可以包含在序列级别的参数集(例如sps)等的更上位的元数据中。此外,整体编码数据可以包含表示整体编码数据是否包含阶层信息(layer_info)及深度信息(depth_info)的标志。在标志为开(例如值1)的情况下,阶层信息及深度信息可以被包含在整体编码数据中。另外,标志也可以单独地设置在阶层信息和深度信息中。通过使用本结构,从本数据向每个深度的数据的分割或者从本数据向每个阶层的数据的分割变得容易,因此能够削减处理量。此外,由于能够进行分割数据的传输,所以能
够削减传输量。接着,说明点群数据整体的结构。点群数据除了位置信息(geometry)以外,有时还具有1个以上的例如颜色或反射率等属性信息(attribute)。属性信息也可以与位置信息同样地具有阶层结构。在属性信息具有与位置信息相同的阶层结构的情况下,三维数据编码装置与位置信息同样地将阶层结构的信息存放在阶层结构元数据或数据头中。例如,三维数据编码装置在属性信息头和位置信息头中分别存放阶层结构的信息。三维数据编码装置在将阶层结构信息存放于阶层结构元数据时,可以将阶层结构元数据存放于gps或aps等的位置信息和属性信息中单独的参数集,也可以存放于sps等的共同的参数集。此外,三维数据编码装置可以将阶层结构元数据存放于sei或其他元数据。图53是表示在位置信息和属性信息分别具有阶层结构并且阶层结构的信息被存放在阶层结构元数据中的情况下的比特流的结构例的图。通过使用本结构,从本数据向每阶层的数据的分割变得容易,所以能够削减处理量。此外,由于能够进行分割数据的传输,所以能够削减传输量。此外,位置信息和属性信息能够同样地按照每个阶层分割。图54是表示阶层结构元数据的句法例的图。该图表示在位置信息和属性信息中应用共同的阶层结构元数据的情况的例子。阶层结构元数据包含阶层信息(layer_info)、组件数(component)以及各组件的深度信息(depth_info)。组件数表示位置信息及属性信息等的组件数。例如,在点群数据除了位置信息之外还具有颜色和反射率的情况下,组件数为3。此外,假设位置信息总是存在,也可以表示属性信息的组件数。此外,在属性信息的组件数被表示在sps中的情况下,也可以省略该信息。因此,数据量被削减。阶层信息(layer_info)表示层数及各层所包含的深度的数量。例如,阶层信息在所有组件中是共同的。深度信息(depth_info)表示深度数及各深度数据的数据长度(长度信息)。深度信息例如按每个组件来设定。此外,深度信息的一部分或全部可以在所有组件中是共同的。此外,在使阶层结构按每个组件独立的情况下,可以按每个组件生成阶层信息。此外,在此说明了以深度为基准进行分层的方法,但也可以基于时间信息或空间信息进行分层。在被分层的情况下,用上述的方法表示阶层结构元数据。此外,有时可以生成不具有阶层结构的结构。表示编码数据是否具有阶层结构的信息可以包含在头或元数据中。由此,能够使具有阶层结构的数据和不具有阶层结构的数据混合存在。例如,可以是位置信息具有阶层结构,属性信息不具有阶层结构。另外,表示该情况的信息也可以在头等中示出。接着,说明位置信息和属性信息之间的数据参照关系和依赖关系。图55、图56以及图57是表示位置信息及属性信息的参照关系的图。在编码数据具有阶层结构的情况下,层0是基础层,是可以单独解码的数据。另一方面,层1不能单独解码,而是与层0的数据合并而被解码。此外,层2不能单独解码,而是与层0及层1的数据合并而被解码。此外,在使用基于八叉树的编码方式的情况下,如图55所示,参照位置信息的层0来对属性信息的层0进行解码。例如,如图56所示,通过参照属性信息的层0以及位置信息的层0及层1,对属性信息的层1进行解码。在解码中存在参照关系或
依赖关系的情况下,先送出参照目的地的数据。通过先传输参照目的地的数据,能够在三维数据解码装置中按照取得数据的顺序进行解码,能够进行能够削减接收缓冲器的容量等的高效率的解码。以下,说明将编码数据存放于例如isobmff等文件格式的方法。图58是表示比特流的结构例的图。图59是表示三维数据编码装置的结构例的图。三维数据编码装置包括编码部8801和文件变换部8802。编码部8801通过对点群数据进行编码来生成包含编码数据和控制信息的比特流。文件变换部8802将比特流变换为文件格式。图60是表示三维数据解码装置的结构例的图。三维数据解码装置包括文件逆变换部8811和解码部8812。文件逆变换部8811将文件格式变换为包含编码数据和控制信息的比特流。解码部8812通过对比特流进行解码来生成点群数据。图61是表示isobmff的基本结构的图。图62是将pcc编解码器共同的nal单元存放在isobmff中的情况下的协议栈图。这里,存放于isobmff的是pcc编解码器的nal单元。在nal单元中有数据用的nal单元和元数据用的nal单元。在数据用的nal单元中有位置信息切片数据(geometry slice data)、属性信息切片数据(attribute slice data)等。在元数据用的nal单元中有sps、gps、aps以及sei等。isobmff(iso based media file format)是iso/iec14496-12中规定的文件格式标准,规定能够复用并存放视频、音频以及文本等各种媒体的格式,是不依赖于媒体的标准。isobmff中的基本单位是盒。盒由类型(type)、长度(length)和数据(data)构成,组合了各种类型的盒得到的集合是文件。文件主要由表示用4cc表示文件的品牌(brand)的ftyp、存放控制信息等的元数据的moov以及存放数据的mdat等的盒构成。将每个媒体向isobmff的存放方法是单独规定的,例如,作为avc视频及hevc视频的存放方法,被规定在iso/iec14496-15中。此外,为了蓄积和传输pcc编码数据,可以扩展并使用isobmff的功能。在将元数据用的nal单元存放在isobmff中时,可以将sei与pcc数据一起存放在“mdat box”中,也可以存放在记载与流有关的控制信息的“track box”中。另外,在数据被分组化(packet)并被发送的情况下,sei可被存放在分组头中。通过在系统的层中表示sei,向属性信息、瓦片及切片数据和访问变得容易,因此访问的速度提高。接着,说明pcc阶层数据的格式变换的第1例。编码方式是压缩数据的技术。另一方面,附加功能以系统格式提供,并且起到与编码方式不同的作用。这样的附加功能由与编码方式不同的标准来规定。为了提供附加功能而设为最佳格式,因此三维数据编码装置对数据进行变换。此时,三维数据编码装置将变得容易变换的信息预先存放在编码数据中。由此,能够削减与变换相关的处理量。以下,说明将每个阶层的数据和包含阶层信息的阶层结构元数据变换为文件格式的方法。位置信息和属性信息等的切片数据分别存放在文件格式的样本中。样本被存放在mdat中。为了访问样本数据,将表示数据结构的信息、表示数据的位置的偏移信息和数据的长度信息存放在随机访问表等元数据中。另外,这些信息也可以存放在与随机访问表不同的表中。以下,说明将切片数据存放在样本中的情况。图63是表示从比特流向文件格式的
变换处理的图。三维数据编码装置使位置信息切片及属性信息切片一一对应地向样本(sample)存放。这里,切片包含所有层的信息(阶层数据)。位置信息样本属于位置信息轨道(geometry track),属性信息样本属于属性信息轨道(attribute track)。阶层信息被存放在属于元数据轨道(meta data track)的每帧的元数据中。此外,表示位置信息样本和属性信息样本属于相同帧的信息、在基于八叉树的编码方式的情况下表示属性信息样本是否参照位置信息样本的信息、位置信息样本及属性信息样本中共同的时间戳信息等可以被存放在元数据样本中。也可以将以共同的时间戳进行动作的帧单位称为访问单元。另外,阶层信息(layer_information)可以被存放在moov中。这里,阶层信息包含例如上述的阶层的信息(layer_info)。此外,阶层信息可以包含深度信息(depth_info)等上述的阶层结构元数据或头所包含的其他信息的至少一部分。在使用本方法的情况下,由于能够将切片直接作为样本存放,所以处理容易。图64是格式变换处理的流程图。首先,三维数据编码装置开始编码数据的格式变换(s8811)。接着,三维数据编码装置将包含多个层的1个切片存放在1个样本中(s8812)。此外,三维数据编码装置将阶层信息存放在元数据中(s8813)。三维数据编码装置构成帧(au:访问单元)(s8814)。接着,说明使用了文件格式的部分解码方法。图65是该解码处理的流程图。首先,三维数据解码装置通过随机访问提取期望的样本(s8821)。具体而言,三维数据解码装置使用moov所包含的元数据、以及随机访问表等,特定期望的样本的位置,提取该样本的数据。三维数据解码装置解析阶层信息元数据(s8822),并提取样本内的层边界信息(s8823)。具体而言,三维数据解码装置根据样本内的各层所包含的深度的数量及各深度的数据长度,从阶层信息元数据取得层的边界信息。例如,三维数据解码装置根据各层所包含的深度的数量及各深度的数据长度来计算各层的数据长度,并基于计算出的各层的数据长度来判定层的数据边界。接着,三维数据解码装置使用层的边界信息来分割层,并对期望的数据进行解码(s8824)。例如,三维数据解码装置从样本提取特定的层成分。这样,通过将阶层信息包含在元数据中,在三维数据解码装置中,能够使用阶层信息提取特定的信息而不对编码数据进行解码。以下,说明pcc阶层数据的格式变换的第2例。三维数据编码装置在将阶层数据存放在样本中时,可以将1个阶层数据作为1个样本存放,也可以作为1个子样本存放。图66是表示从比特流向文件格式的变换处理的图。三维数据编码装置在位置信息切片及属性信息切片中,使每个层的数据与样本一一对应地存放。位置信息样本属于位置信息轨道(geometry track),属性信息样本属于属性信息轨道(attribute track)。阶层信息被存放在属于元数据轨道(meta data track)的每帧的元数据中。另外,轨道存在于每一层中,并且存在属于各个轨道的样本。通过在每个层中设置轨道,处理每个层的数据变得容易。另外,在编码数据的比特流中,切片数据包含所有阶层数据,因此三维数据编码装置一边分割数据一边进行向样本的存放。在阶层信息在比特流中示出的情况下,三维数据编码装置使用表示各阶层数据的数据长度的信息等,分割切片数据。在阶层信息未在比特
流中示出的情况下,三维数据编码装置一边对编码数据进行解码一边计算阶层信息。三维数据编码装置基于得到的阶层信息对数据进行再编码并分割。通过本处理,能够将每个层的信息存放在每个层的轨道及样本中。因此,在三维数据解码装置中能够对每个层提取数据,所以每个层的数据的处理变得容易。图67是表示阶层结构元数据的句法例的图。阶层结构元数据包含阶层信息(layer_info)、组件数(component)以及各组件的深度信息(depth_info)。另外,三维数据编码装置在将切片分割为阶层数据时,在样本中包含头信息的情况下,也可以将切片头复制到所有分割数据中而附加。图68是示意性地表示该分割处理的图。另外,三维数据编码装置也可以不将切片头包含在样本中,而是存放在元数据中。通过复制头信息,能够减轻头制作的处理。此外,三维数据编码装置也可以将表示存放在样本中的数据是否被分层的标识符附加到文件格式中。此外,三维数据编码装置在数据被分层的情况下,可以将标识符附加到文件格式中,该标识符表示数据是否包含所有阶层数据或者存放在样本中的数据是否为被分层的阶层数据。另外,三维数据编码装置可以通过使用介质类型或4cc等box的类型(type)来表示这些信息。由此,介质的识别变得容易。图69是使用了阶层信息的变换处理的流程图。首先,三维数据编码装置开始编码数据的格式变换(s8831)。接着,三维数据编码装置使用阶层信息元数据将切片分割为每个层的信息(s8832)。接着,三维数据编码装置将分割后的多个阶层数据分别存放在1个样本中(s8833)。接着,三维数据编码装置将阶层信息存放在元数据中(s8834)。接着,三维数据编码装置构成帧(au)(s8835)。图70是不使用阶层信息的变换处理的流程图。首先,三维数据编码装置开始编码数据的格式变换(s8841)。接着,三维数据编码装置对数据进行解码,判定阶层数据的边界(s8842)。接着,三维数据编码装置对数据进行再编码并分割(s8843)。接着,三维数据编码装置将分割后的多个阶层数据分别存放在1个样本中(s8844)。接着,三维数据编码装置将阶层信息存放在元数据中(s8845)。接着,三维数据编码装置构成帧(au)(s8846)。图71是阶层数据样本数据的解码处理的流程图。首先,三维数据解码装置通过随机访问提取期望的样本(s8851)。接着,三维数据解码装置对提取出的样本所包含的数据进行解码(s8852)。接着,说明阶层数据结构的另一例。图72及图73是表示整体编码数据(pcc数据)的结构例的图。图72及图73所示的例子中的阶层结构与图49同样。图72表示将1个深度数据作为1个切片数据使用的情况,对每个深度数据赋予切片头。切片头包含识别深度数据的阶层的depthid、表示深度所属的阶层的layerid以及表示深度数据的长度的length。此外,切片头可以包含表示该数据属于同一帧的groupid。即,groupid表示该数据所属的帧(时刻)。在这些信息包含在切片头中的情况下,整体编码数据可以不具有阶层结构元数据。此外,三维数据编码装置可以将在所有深度中共同的参数存放在传输初始的深度的切片的头中,也可以存放在共同头中,配置在depth#0的数据之前。此外,三维数据编码装置可以将depthid及groupid存放在切片头中,并将深度的数量、以及每个深度的layerid及length存放在阶层结构元数据或共同头中。
另外,depth#0能够单独地进行解码,而depth#0以外的数据则不能单独地进行解码,而是依赖于其他数据。三维数据解码装置判断为depth#0以外的数据不能单独解码,将解码对象的深度数据与如下深度数据一起解码,所述深度数据具有与解码对象的深度数据相同groupid,且具有比解码对象的深度数据的depthid小的depthid。图73示出了1个阶层数据作为1个切片数据使用的情况,对每个阶层数据赋予切片头。切片头包含layerid、该层所包含的深度的数量(num_depth)以及深度数据的长度(length)。此外,切片头可以包含groupid,所述groupid表示该阶层数据属于同一帧。此外,切片头包含layerid及groupid,并且阶层的数量、各阶层所包含的深度的数量以及深度的长度信息(length)可以被包含在阶层结构元数据中。通过使用本结构,从本数据到每阶层的数据的分割变得容易,因此能够削减分割时的处理量。此外,由于能够进行分割数据的传输,所以能够削减传输量。此外,位置信息和属性信息能够同样地按每个阶层分割。接着,说明pcc阶层数据的格式变换的第3例。在将阶层数据存放在样本中时,三维数据编码装置可以将1个深度数据作为1个样本存放,也可以将1个深度数据作为1个子样本存放。图74是表示从比特流向文件格式的变换处理的图。三维数据编码装置在位置信息切片及属性信息切片中,使每个层的数据与样本一一对应地存放。位置信息样本属于位置信息轨道(geometry track),属性信息样本属于属性信息轨道(attribute track)。阶层信息被存放在属于元数据轨道(meta data track)的每帧的元数据中。轨道存在于每一层中,并且存在属于各个轨道的样本。通过在每个层中设置轨道,处理每个层的数据变得容易。此外,在编码数据的比特流中,由于对每个阶层数据构成切片数据,所以三维数据编码装置能够将数据原样直接存放在样本中。因此,与没有对每个阶层数据构成切片数据的情况相比,能够减少处理量。另外,阶层信息存放在元数据中。图75是格式变换处理的流程图。首先,三维数据编码装置开始编码数据的格式变换(s8861)。接着,三维数据编码装置将每个阶层的切片数据存放在1个样本中(s8862)。接着,三维数据编码装置将阶层信息存放在元数据中(s8863)。接着,三维数据编码装置构成帧(au)(s8864)。图76是解码处理的流程图。首先,三维数据解码装置为了访问特定的阶层数据而解析元数据,取得属于层的深度数(s8871)。接着,三维数据解码装置使用所取得的信息,计算阶层数据开头的深度数据的开始位置及层整体尺寸(s8872)。接着,三维数据解码装置对阶层数据进行解码(s8873)。图77是表示深度信息的句法例的图。图78是表示样本尺寸盒(sample_size_box:stsz)的句法例的图。三维数据编码装置也可以将各个阶层数据的尺寸(entry_size)存放在存放每个样本的尺寸信息的样本尺寸盒中。图79是表示阶层信息(layer_info)的句法例的图。图80是表示pcclayerstructurebox的句法例的图。例如,如图79及图80所示,三维数据编码装置将阶层数(layer)及阶层所包含的深度的数量(num_depth)存放在pcclayerstructurebox中。此外,三维数据编码装置可以将这些信息存放在相同的盒中,也可以将这些信息存放在不同
的盒中。接着,说明从文件格式中提取部分数据的处理。三维数据解码装置使用在本实施方式中说明的数据结构及阶层结构元数据,从文件中部分地随机访问解码数据,提取数据。三维数据解码装置能够基于元数据所包含的位置信息及属性信息的帧、阶层、各自的数据长度的信息、以及阶层所包含的深度数等,访问数据并提取期望的数据。图81是示意性地表示该提取动作的图。送出部8821具有包含层0、层1的完整数据的文件(文件格式),接收部8823具有层0的数据文件。在该状态下,在接收部8823想要取得层1的数据的情况下,请求送出部8821送出层1的文件。送出部8821所包含的提取部8822从完整数据的文件(文件格式)中提取层1的文件,并将层1的文件(比特流)提供给接收部8823。接收部8823将层0的文件与层1的文件合并,生成完整数据的文件。图82是表示完整数据的文件(文件格式)的例子的图。图83、图84及图85是表示由提取部8822提取的比特流的例子的图。例如,如图83所示,提取部8822也可以从文件格式中提取所有的数据。或者,如图84所示,提取部8822也可以提取位置信息而不提取属性信息。或者,如图85所示,提取部8822也可以提取层0,而不提取层1。或者,虽然未图示,但提取部8822例如也可以在对数据进行重新排列的状态下进行传输。通过使用在本实施方式中说明的数据结构和阶层结构元数据,阶层数据的分割变得容易,因此能够实现取得需要的数据而不取得不需要的数据的功能。由此,能够削减传输频带以及传输延迟,提高数据传输的功能性。接着,说明直接模式数据的部分解码处理。直接模式是在使用了八叉树的编码时,对于某个节点,停止八叉树(octree)编码,并且直接编码叶节点的点的坐标的方法。例如,在属于节点的点稀疏的情况下,使用直接模式。通过使用直接模式,能够削减数据量。图86是表示直接模式的例子的图。在图86中,在虚线所包围的部分中,叶的点的数量是2个(稀疏)。例如,在判断为depth=1的节点a中点稀疏的情况下,将这2点的坐标直接记载在depth1的数据区域中。2点的坐标是从节点a起的坐标,并且是具有depth=4的分辨率的坐标。即,depth=1的数据包含depth=1的占用率编码(occpancy_code)和用虚线包围的depth=4的直接模式中的坐标(b区域)数据。接着,说明这样的数据的解码方法。三维数据解码装置在depth0~depth4进行解码的情况下,使用通常的解码方法进行解码处理。另一方面,三维数据解码装置在部分地提取depth0~depth1并进行解码的情况下,在需要使解码数据全部为相同的分辨率的情况下,也可以不使用depth1所包含的depth4的坐标而进行解码。此外,在高分辨率也可以混合存在的情况下,三维数据解码装置也可以使用depth1所包含的depth4的坐标来进行解码。接着,对使用直接模式的情况下的数据分割进行说明。发送装置在提取depth0~depth1的数据并传输的情况下,depth1中可以包含也可以不包含直接模式(depth4)的信息。另外,发送装置也可以根据接收装置是否需要该信息来判定是否包含直接模式的信息,在接收装置需要该信息的情况下,将该信息包含在比特流中,在不需要的情况下,不将该信息包含在比特流中。由此,能够削减数据量。例如,发送装置也可以在有时将depth2~depth4的分辨率的数据与depth0~depth1一起解码的情况下,判断为需要直接模式的信息,在不进行depth2~depth4的解码的情况下,判断为不需要直接模式的信息。
如上所述,根据本实施方式的三维数据编码装置进行图87所示的处理。三维数据编码装置在点群数据所包含的多个三维点的多个位置信息中设定具有多个深度和各自包含1个以上的深度的多个阶层的阶层结构(s8881)。三维数据编码装置通过按每个深度对多个位置信息进行编码,生成每个深度的多个第1编码数据(例如深度数据)(s8882)。三维数据编码装置生成包含多个第2编码数据的比特流,该多个第2编码数据是每个阶层的编码数据,且包含对应的阶层所包含的1个以上的深度的1个以上的第1编码数据(s8883)。比特流包含表示多个第2编码数据各自的数据长度的第1信息。由此,对比特流进行解码的三维数据解码装置能够使用第1信息容易地访问任意阶层的数据。因此,该三维数据编码装置能够减少三维数据解码装置的处理量。例如,第1信息包含表示多个阶层分别包含的深度的数量的第2信息(例如num_depth)和表示多个第1编码数据各自的数据长度的第3信息(例如length)。例如,比特流包含多个第2编码数据所共用的第1头(例如图49所示的阶层结构元数据或头),第1头包含第1信息。例如,比特流包含每个第2编码数据的多个第2头(例如图73所示的切片头),第1信息与多个第2编码数据中的某一个对应,且包含表示对应的第2编码数据的数据长度的多个第4信息,多个第2头分别包含表示与该第2头对应的第2编码数据的数据长度的第4信息。例如,比特流包含多个第1编码数据中的每一个的多个第3头(例如图72所示的切片头),第1信息包含第2信息(例如num_depth)和第5信息(例如length),所述第2信息表示多个阶层分别包含的深度的数量,所述第5信息与多个第1编码数据分别对应,表示对应的第1编码数据的数据长度,多个第3头分别包含表示与该第3头对应的第1编码数据的数据长度的第5信息。例如,三维数据编码装置还通过将多个三维点具有的多个属性信息按每个深度进行编码来生成每个深度的多个第3编码数据,比特流包含多个第4编码数据,所述多个第4编码数据是每个阶层的编码数据,且包含对应的阶层所包含的1个以上的深度的1个以上的第3编码数据,比特流包含表示多个第4编码数据各自的数据长度的第6信息。例如,三维数据编码装置具备处理器和存储器,处理器使用存储器进行上述处理。此外,本实施方式的三维数据解码装置进行图88所示的处理。三维数据解码装置从包含多个第2编码数据和表示多个第2编码数据各自的数据长度的第1信息的比特流中取得第1信息(s8886)。三维数据解码装置使用第1信息,取得多个第2编码数据中的至少一个第2编码数据(s8887)。三维数据解码装置对取得的至少一个第2编码数据进行解码(s8888)。比特流包含每个深度的多个第1编码数据,所述多个第1编码数据是点群数据所包含的多个三维点的多个位置信息,并且是通过按每个深度对多个位置信息进行编码而生成的,所述多个位置信息设定了具有多个深度和分别包含1个以上的深度的多个阶层的阶层结构。多个第2编码数据分别与多个阶层中的某一个对应,包含多个第1编码数据中的、与该第2编码数据对应的阶层所包含的1个以上的第1编码数据。由此,三维数据解码装置能够使用第1信息容易地访问任意阶层的数据。因此,该三维数据解码装置能够减少处理量。例如,第1信息包含表示多个阶层分别包含的深度的数量的第2信息(例如num_depth)和表示多个第1编码数据各自的数据长度的第3信息(例如length)。例如,三维数据
解码装置使用第2信息及第3信息,计算第2编码数据的数据长度。例如,比特流包含多个第2编码数据所共用的第1头(例如图49所示的阶层结构元数据或头),第1头包含第1信息。例如,比特流包含每个第2编码数据的多个第2头(例如图73所示的切片头),第1信息与多个第2编码数据中的某一个对应,且包含表示对应的第2编码数据的数据长度的多个第4信息,多个第2头分别包含表示与该第2头对应的第2编码数据的数据长度的第4信息。例如,比特流包含多个第1编码数据中的每一个的多个第3头(例如图72所示的切片头),第1信息包含第2信息(例如num_depth)和第5信息(例如length),所述第2信息表示多个阶层分别包含的深度的数量的表示,所述第5信息与多个第1编码数据分别对应,表示对应的第1编码数据的数据长度,多个第3头分别包含表示与该第3头对应的第1编码数据的数据长度的第5信息。例如,比特流包含通过按每个深度对多个三维点所具有的多个属性信息进行编码而生成的每个深度的多个第3编码数据。比特流包含多个第4编码数据,所述多个第4编码数据是每个阶层的编码数据,并且包含对应的阶层所包含的1个以上的深度的1个以上的第3编码数据。比特流包含表示多个第4编码数据各自的数据长度的第6信息。三维数据解码装置还从比特流取得第6信息,使用第6信息取得多个第4编码数据中的至少一个第4编码数据,对取得的至少一个第4编码数据进行解码。例如,三维数据解码装置具备处理器和存储器,处理器使用存储器进行上述处理。(实施方式6)对实施方式6进行说明。一致性(conformance)是指在三维数据编码装置中编码后的三维点群即比特流、或者对比特流进行解码的三维数据解码装置应满足的规定的基准(例如,由标准确定的基准)。一致性还表现为一致性点或者匹配点、匹配级别。三维数据编码装置从预先确定的多个一致性中选择1个一致性,基于选择出的1个一致性,使用规定的方法对三维点群进行编码。三维数据解码装置基于比特流是否匹配于一致性、以及三维数据解码装置是否支持依据规定的一致性的比特流的解码,来决定是否进行解码。三维数据编码装置使用任意的方法(规定的处理)进行三维点群的编码,以使比特流能够满足预先确定的一致性。三维数据编码装置可以执行例如缩放处理、量化、切片单位或瓦片单位的分割、分割后的空间的偏移、表参照(码本)等作为针对三维点群的任意方法。可以调整三维点群的精度级别以增加、维持或减少比特精度。三维数据编码装置生成包含表示通过三维点群的编码生成的比特流所满足的一致性的信息的比特流。三维数据解码装置从比特流(例如编码数据的句法)取得表示一致性的信息,基于表示一致性的信息,判定被编码的三维点群的比特流是否满足预先确定的一致性。然后,三维数据解码装置在判定为满足一致性的情况下,对点群数据进行解码。一致性的组合(集)可以包含以下参数。一致性的组合可以包含例如三维点群的编码的精度(即,编码后的数据的比特数)、分割数据(切片或瓦片)单位的三维点的数量、三维数据解码装置的可利用的处理核心数、三维数据解码装置的处理器的速度、三维数据解码装置的应用要件(例如,实时、低功率消耗模式、远程服务器处理等)、无损编码或有损编码、切片的包围盒的信息(尺寸等)中的某一个。
另外,在本实施方式中,比特精度意味着比特数。比特精度意味着硬件处理中的精度。图89是表示有关实施方式6的三维数据编码装置的结构的一例的框图。图90是表示有关实施方式6的三维数据编码方法的第1例的流程图。三维数据编码装置9600具备判定部9601、变换部9602和编码部9603。三维点群的点群数据被输入到三维数据编码装置9600。由此,三维数据编码装置9600取得点群数据。三维数据编码装置9600的判定部9601决定作为三维点群的点群数据的编码后的数据的编码数据的一致性(s9601)。这里,一致性是根据对应的设备(三维数据解码装置)的性能、应用的使用情况、处理的三维点群的种类等来决定的。一致性可以预先确定,也可以自适应地确定。三维数据编码装置9600通过从一致性的组合中选择1个一致性,来决定一致性。判定部9601判定点群数据的三维点群是否满足所决定的一致性(s9602)。在由判定部9601判定为点群数据的三维点群不满足所决定的一致性的情况下(s9602中为否),变换部9602以满足所决定的一致性的方式执行规定的处理(s9603)。作为规定的处理,变换部9602例如可以执行量化或数据分割。在步骤s9603之后,或者在由判定部9601判定为点群数据的三维点群满足所决定的一致性的情况下(s9602中为是),编码部9603生成包含表示所决定的一致性的一致性索引的元数据(s9604)。一致性索引是用于确定多个一致性的组合中的1个一致性的识别信息。编码部9603对在步骤s9603中变换后的点群数据进行编码,或者在步骤s9602中判定为是的情况下对变换前的点群数据进行编码,生成包含编码后的点群数据和元数据的比特流(s9605)。图91是表示有关实施方式6的三维数据解码装置的结构的一例的框图。图92是表示有关实施方式6的三维数据解码方法的一例的流程图。三维数据解码装置9610具备判定部9611和解码部9612。三维数据解码装置9610取得比特流。比特流包含被编码的点群数据(编码数据)和包含一致性索引的元数据。三维数据解码装置9610是依据预先确定的多个一致性中的至少某一个的解码装置,只要比特流是依据三维数据解码装置9610支持的一致性的数据,就能够进行解码。判定部9611从元数据取得一致性索引(s9611)。判定部9611判定由一致性索引表示的一致性是否包含在三维数据解码装置9610所依据的一致性中(s9612)。三维数据解码装置9610所依据的一致性是三维数据解码装置9610的解码条件。另外,判定部9611判定比特流是否满足由一致性索引所示的一致性(s9612)。换言之,判定部9611判定比特流是否满足三维数据解码装置9610的解码条件。在由判定部9611判定为比特流包含于三维数据解码装置9610所依据的一致性的情况下(s9612中为是),解码部9612对包含于比特流的被编码的点群数据进行解码(s9613)。在由判定部9611判定为比特流不包含于三维数据解码装置9610所依据的一致性
的情况下(s9612中为否),解码部9612跳过比特流中包含的被编码的点群数据的解码,不对点群数据进行解码(s9614)。另外,解码部9612在步骤s9612中判定否的情况下,可以直接对点群数据进行解码,也可以转移到错误专用处理进行规定的处理。这里,规定的处理例如可以是判定解码后的品质,如果判定的结果是品质没有问题,则直接显示(输出)解码结果,如果品质差,则不显示(输出)解码结果。接着,说明设定一致性的制约的种类。作为设置一致性的制约的对象(以下称为制约对象),考虑输入点群和分割数据这两个对象。输入点群是表示输入到三维编码装置中的三维点群的点群数据。输入点群是被分割为切片或瓦片等之前的原来的点群数据。输入点群与分割点群数据而成的多个分割数据合并后的点群数据相等。在这样的输入点群是制约对象的情况下,一致性包括输入点群的三维点的数量、比特精度(比特数)等。在该情况下,匹配于一致性的输入点群也可以通过使用将匹配于一致性的检测结果作为输入点群而输出的传感器来生成。另外,匹配于一致性的输入点群也可以通过三维数据编码装置对已有的输入点群执行规定的处理以使其匹配于一致性来生成。也可以将分割数据作为制约对象,代替如上所述对输入点群设置制约。分割数据是将输入点群分割为切片或瓦片后的数据。在分割数据是制约对象的情况下,一致性包含分割数据单位的三维点的数量或比特精度(比特数)等。即,三维数据编码装置也可以以如下方式进行分割输入点群的处理,所述方式为在分割输入点群时,使分割后的分割数据满足一致性。另外,也可以对输入点群和分割数据两者设定一致性。在该情况下,在输入点群不满足一致性的情况下,三维数据编码装置将输入点群以满足分割数据单位的一致性的方式分割为多个分割数据。另一方面,在输入点群满足一致性的情况下,三维数据编码装置也可以不将输入点群分割为多个分割数据。即,在输入点群满足一致性的情况下,三维数据编码装置也可以不分割输入点群而直接进行编码。在对输入点群设置制约的情况下,三维数据编码装置能够将针对输入点群的一致性(例如,输入点群的三维点的数量、比特数等)作为预先生成满足一致性的输入点群时的规定来使用。另一方面,在对分割数据设置制约的情况下,三维数据编码装置能够作为在输入点群不满足一致性的情况下对输入点群进行分割时的规定来使用。例如,地图数据中使用的三维点群,处理的三维点的数量或三维点群的分布范围根据地图的大小或密度而不同,没有上限。对于这样大规模的三维点群,能够使用对分割数据设置制约的方法。换言之,通过对分割数据单位设置制约,即使是具有有限的资源(存储器、处理能力)的三维数据解码装置,也能够对三维点的数量或比特数没有上限的大规模的点群数据进行解码。此外,通过对输入点群和分割数据两者设置制约,能够对各种内容应用本编码方式。图93是表示有关实施方式6的三维数据编码方法的第2例的流程图。该三维数据编码方法是在将制约对象设为输入点群的情况和设为分割数据的情况下切换处理的方法。
三维数据编码装置判定制约对象是输入点群还是分割数据(s9621)。制约对象是输入点群还是分割数据,可以预先由用户确定,也可以根据三维点群的用途来确定。三维数据编码装置在判定为制约对象是输入点群的情况下(s9621中为输入点群),以输入点群为对象,制约比特精度(比特数)或点数(s9622)。具体而言,三维数据编码装置对输入点群决定作为一致性的比特精度或点数。另外,比特数是将输入点群的点群数据编码后的编码数据的最大比特数。另外,点数是输入点群中包含的三维点的数量的范围。三维数据编码装置判定输入点群是否在规定内(s9623)。即,三维数据编码装置判定输入点群是否满足在步骤s9622中决定的一致性。三维数据编码装置在判定为输入点群不在规定内的情况下(s9623中为否),以匹配于规定的方式对输入点群进行处理(s9624)。即,三维数据编码装置在输入点群不满足一致性的情况下,以满足一致性的方式对输入点群执行规定的处理。三维数据编码装置在判定为输入点群在规定内的情况下(s9623中为是),对判定为在规定内的输入点群进行编码(s9630)。另外,三维数据编码装置对在步骤s9624中执行规定的处理而满足一致性的处理后的输入点群进行编码(s9630)。返回步骤s9621,三维数据编码装置在判定为制约对象是分割数据的情况下(s9621中为分割数据),以分割数据为对象,按每个分割数据制约比特精度(比特数)或点数(s9625)。具体而言,三维数据编码装置决定作为分割数据单位的一致性的比特精度或点数。三维数据编码装置判定输入点群是否在规定内(s9626)。步骤s9626是与步骤s9623相同的处理。三维数据编码装置在判定为输入点群在规定内的情况下(s9626中为是),对判定为在规定内的输入点群进行编码(s9630)。另外,步骤s9626也可以不必执行。三维数据编码装置在判定为输入点群不在规定内的情况下(s9626中为否),将输入点群分割为多个分割数据(s9627)。三维数据编码装置例如也可以通过将输入点群存在的三维空间分割为多个子空间,将表示各子空间中包含的三维点群的点群数据决定为分割数据。子空间可以是切片,也可以是瓦片。三维数据编码装置判定分割数据是否在规定内(s9628)。即,三维数据编码装置判定分割数据是否满足在步骤s9625中决定的一致性。三维数据编码装置在判定为分割数据不在规定内的情况下(s9628中为否),处理分割数据以匹配于规定(s9629)。即,三维数据编码装置在分割数据不满足一致性的情况下,以满足一致性的方式对分割数据执行规定的处理。三维数据编码装置在判定为分割数据在规定内的情况下(s9628中为是),对判定为在规定内的分割数据进行编码(s9630)。另外,三维数据编码装置对在步骤s9629中执行规定的处理而满足一致性的处理后的分割数据进行编码(s9630)。此外,可以按每个分割数据实施是否满足一致性的匹配性判定或者用于使分割数据匹配于制约的规定的处理。即,执行用于使分割数据匹配于制约的规定的处理的分割数据和不执行规定的处理的分割数据混合存在。即,步骤s9628的判定可以对多个分割数据中的每一个进行,并且可以对多个分割数据中不满足规定的分割数据执行用于使分割数据匹
配于制约的规定的处理(s9629),也可以对满足规定的分割数据不执行用于使分割数据匹配于制约的规定的处理(s9629)。三维数据编码装置也可以在编码时将包含表示将制约对象设定于输入点群还是设定于分割数据的制约对象信息的元数据附加到比特流中。图94是表示包围盒的一例的图。作为分割数据的比特精度的制约方法,例如有确定分割数据的包围盒的大小的方法。例如,该包围盒的大小可以规定为高度、宽度、进深在规定的相同的n比特以内。另外,也可以规定高度、宽度、进深各自的比特数的上限(最大值)。图95是表示有关实施方式6的三维数据解码方法的另一例的流程图。三维数据解码装置解析比特流中包含的元数据,取得元数据中包含的一致性(制约条件)(s9631)。该一致性是在由三维数据编码装置对输入点群或分割数据进行编码时所决定的一致性。三维数据解码装置判定制约对象是输入点群还是分割数据(s9632)。三维数据解码装置在判定为制约对象是输入点群的情况下(s9632中为输入点群),确认输入点群单位的比特流是否满足三维数据解码装置的解码条件(s9633)。并且,三维数据解码装置也可以在确认的结果是输入点群单位的比特流满足解码条件的情况下,将比特流中包含的被编码的输入点群解码,在输入点群单位的比特流不满足解码条件的情况下,不将被编码的输入点群解码。三维数据解码装置在判定为限制对象是分割数据的情况下(s9632中为分割数据),确认分割数据单位的比特流是否满足解码条件(s9634)。然后,三维数据解码装置在确认的结果是分割数据单位的比特流满足解码条件的情况下,将比特流中包含的被编码的分割数据解码,在分割数据单位的比特流不满足解码条件的情况下,不将被编码的分割数据解码。接下来,说明在规定对每个切片的比特数的制约的情况下的规定的处理。图96是表示有关实施方式6的三维数据编码方法的第3例的流程图。该流程图是作为规定的处理进行减少比特数的处理的情况的例子。另外,以下以制约对象是输入点群的情况为例进行说明,但在是分割数据的情况下也同样能够应用。即,也可以将输入点群换读为分割数据。三维数据编码装置决定输入点群的位置信息的比特数的一致性(s9641)。即,三维数据编码装置将输入点群的编码后的编码数据的比特数的上限(第1最大比特数)决定为一致性。第1最大比特数与位置信息的编码后的数据的比特数相关。输入点群中包含的位置信息表示输入点群的各三维点的位置。位置信息例如是各三维点的坐标。坐标可以被示出在正交坐标系中或者被示出在极坐标系中。三维数据编码装置判定输入点群的位置信息的比特数是否满足在步骤s9641中决定的一致性(s9642)。即,三维数据编码装置判定输入点群的位置信息的比特数是否满足第1最大比特数。三维数据编码装置在判定为输入点群的位置信息的比特数不满足所决定的一致性的情况下(s9642中为否),即,在判定为超过所决定的一致性的情况下,执行减少输入点群的位置信息的比特数的处理作为规定的处理(s9643)。
三维数据编码装置在判定为输入点群的位置信息的比特数满足所决定的一致性的情况下(s9642中为是),对输入点群的位置信息进行编码(s9644)。另外,三维数据编码装置对满足在步骤s9643中执行了规定的处理的一致性的处理后的输入点群的位置信息进行编码(s9644)。三维数据编码装置通过执行步骤s9642~s9644,以满足所决定的一致性的方式对点群数据进行编码,从而生成比特流。具体而言,三维数据编码装置通过对输入点群的位置信息以满足所决定的第1最大比特数的方式进行编码,从而生成比特流。三维数据编码装置将表示所决定的一致性的一致性信息附加到比特流中。一致性信息例如是表示第1最大比特数的第1比特数信息。第1比特数信息可以是第1最大比特数本身的值,也可以是用于唯一地确定第1最大比特数的识别信息。识别信息例如是一致性索引。接着,说明图96的步骤s9643中的规定的处理。图97是有关实施方式6的减少比特数的处理的一例。在规定的处理中,可以通过量化位置坐标(x,y,z)来减少比特数。例如,如图97所示,在由一致性规定的最大比特数为4比特的情况下,在作为位置信息而包含的坐标(x,y,z)的某一个为6比特的情况下,位置信息的比特数不满足由一致性规定的最大比特数。因此,作为以满足一致性的方式对输入点群执行的规定的处理,通过实施量化的2比特移位的量化,将位置信息的比特数削减2比特。这里,成为2比特移位的量化对象的数据可以是输入比特,也可以是输入点群中的所有三维点的实质上使用的比特。图98是有关实施方式6的减少比特数的处理的另一例。在规定的处理中,也可以使用分割为切片或瓦片等的数据分割,减少切片单位的比特精度。具体而言,三维数据编码装置在以切片单位对输入点群进行数据分割时,也可以通过移位其他切片的原点的坐标以使其与一个切片的原点一致,从而减少比特精度。在将切片单位的最大比特数确定为一致性的情况下,在每个点群的比特(包含切片的包围盒的尺寸、宽度、高度、进深的比特数)超过一致性的情况下(即,切片单位的最大比特数不满足一致性的情况下),三维数据编码装置以切片的包围盒的比特数满足一致性的方式对点群进行分割。然后,三维数据编码装置通过使切片(slice2)的包围盒的原点移位到与图98中的被分割的切片(slice1)的包围盒的原点一致,能够削减比特数,使其匹配于一致性。例如,在存在以切片单位将比特数的上限确定为m比特的规则的情况下,在构成输入点群的包围盒的宽度为n(>m)比特的情况下,也可以以尺寸为m比特将包围盒的宽度分割为int(n/m) 1的数。另外,在图98中,使用在二维空间所示的图说明了规定的处理,但规定的处理既可以应用于三维空间,也可以应用于其他维的空间。图99是表示有关实施方式6的三维数据编码方法的第4例的流程图。该流程图是作为规定的处理进行增加比特数的处理的情况的例子。三维数据编码装置决定输入点群的位置信息的比特数的一致性(s9651)。即,三维数据编码装置将输入点群的编码后的编码数据的比特数的上限(第1最大比特数)决定为一致性。三维数据编码装置判定输入点群的位置信息的比特数是否满足在步骤s9651中决定的一致性(s9652)。即,三维数据编码装置判定输入点群的位置信息的比特数是否满足第
1最大比特数。三维数据编码装置在判定为输入点群的位置信息的比特数不满足所决定的一致性的情况下(s9652中为否),即,在判定为不满足所决定的一致性的情况下,执行增加输入点群的位置信息的比特数的处理作为规定的处理(s9653)。三维数据编码装置在判定为输入点群的位置信息的比特数满足所决定的一致性的情况下(s9652中为是),对输入点群的位置信息进行编码(s9654)。另外,三维数据编码装置对满足在步骤s9653中执行了规定的处理的一致性的处理后的输入点群的位置信息进行编码(s9654)。接着,说明图99的步骤s9653中的规定的处理。图100是有关实施方式6的增加比特数的处理的一例。在规定的处理中,在比特数不足的情况下,也可以进行上采样等来增加比特数。例如,在该方法中,可以通过填充位置坐标(x,y,z)来增加比特数。图101是有关实施方式6的增加比特数的处理的另一例。在规定的处理中,也可以通过比特移位或移位点群的原点来调整比特数。通过将移位值输入到切片或瓦片等的数据分区,能够增加每个切片的比特数。在结合多个切片(多个分割数据)时,可以通过从不同的比特流移位不同切片的坐标来增加比特数。例如,通过将切片(slice2)的包围盒的原点移位到与图101中的被分割的切片(slice1)的包围盒不重叠的位置,可以增加比特数。由此,能够使其匹配于一致性。一致性可以通过位置信息的比特数和三维点的数量的组合来规定。使用图102说明该例子。另外,有时也将三维点的数量称为点群的数量。图102是表示有关实施方式6的三维数据编码方法的第5例的流程图。在该流程图中,作为一致性,是决定位置信息的比特数和输入点群中的三维点的数量的范围的例子。另外,一致性不限于位置精度和三维点的数量的范围的组合,也可以是其他参数的组合。三维数据编码装置决定作为三维点群的点群数据的编码后的数据的编码数据的一致性(s9661)。这里所决定的一致性包含规定位置信息的比特数的第1最大比特数和输入点群中包含的三维点的数量的范围。三维数据编码装置判定所输入的三维点群是否满足所决定的比特数的一致性(s9662)。即,三维数据编码装置判定所输入的三维点群的位置信息的比特数是否满足所决定的第1最大比特数(是否一致)。三维数据编码装置在判定为所输入的三维点群不满足所决定的比特数的一致性的情况下(s9662中为否),以满足所决定的一致性的方式执行规定的处理(s9663)。规定的处理例如是使用图97、图98、图100和图101所说明的处理中的某一个处理。三维数据编码装置在步骤s9663结束了的情况或者判定为所输入的三维点群满足所决定的比特数的一致性的情况下(s9662中为是),执行接下来的步骤s9664。三维数据编码装置判定所输入的三维点群是否满足与所决定的三维点的数量的范围相关的一致性(s9664)。即,三维数据编码装置判定所输入的三维点群的三维点的数量是否在所决定的三维点的数量的范围内。三维数据编码装置在判定为所输入的三维点群不满足与所决定的三维点的数量的范围相关的一致性的情况下(s9664中为否),以满足所决定的一致性的方式执行规定的
处理(s9665)。规定的处理例如是使用图97、图98、图100和图101所说明的处理中的某一个处理。三维数据编码装置在步骤s9665结束了的情况或者判定为所输入的三维点群满足所决定的三维点的数量的范围的一致性的情况下(s9664中为是),执行接下来的步骤s9666。三维数据编码装置生成包含表示在步骤s9661中决定的一致性的一致性索引的元数据(s9666)。一致性索引是用于确定多个一致性的组合中的1个一致性的识别信息。三维数据编码装置根据步骤s9662和步骤s9664的判定结果,对在步骤s9663中的处理后的点群数据、在步骤s9665中的处理后的点群数据、在步骤s9663和步骤s9665中的处理后的点群数据、或未处理的点群数据(即,未进行规定的处理的点群数据)进行编码,并生成包含编码后的点群数据和元数据的比特流(s9667)。三维数据编码装置通过执行步骤s9662~s9665,通过以满足所决定的第1最大比特数和三维点的数量的范围这两者的一致性的方式对点群数据进行编码,从而生成比特流。这里,三维数据编码装置将表示所决定的一致性的一致性信息附加到比特流中。一致性信息例如是表示第1最大比特数的第1比特数信息和表示三维点的数量的范围的范围信息。另外,范围信息可以是三维点的数量的范围本身的值,也可以是用于唯一地确定该数量的范围的识别信息。图103是表示有关实施方式6的一致性的组合的一例的图。如该图所示,一致性的组合也可以用位置信息的比特数和点群的数量的范围的组合来表示。在该例中,位置信息的比特数分类为上限为32比特的情况和上限为64比特的情况这2个阶段。点群的数量的范围被分类为10000以下的情况、大于10000且为100000以下的情况、大于100000的情况这3个阶段。由此,一致性的组合被分类为6种一致性点,对各一致性赋予了一致性索引。即,通过指定由1至6的数字所示的一致性索引,能够唯一地设定位置信息的比特数和点群的数量的范围。在图102和图103中说明的例子是同时制约分割数据单位(例如切片单位)的位置信息的比特数和分割数据单位的点群的数量的范围的情况的例子。三维数据编码装置选择一致性的组合中包含的多个一致性点中的某一个,以匹配于所选择的1个一致性点的方式进行编码。如果不匹配于所选择的1个一致性点,则三维数据编码装置以分割数据单位的比特数或分割数据单位的点群的数匹配于一致性点的方式实施量化、数据分割、或分割数据的合并。另外,三维数据编码装置在想要匹配于位置信息的比特数和点群的数量的范围中的一方的一致性的情况下,有时不匹配于另一方的一致性。三维数据编码装置例如在以匹配于比特数的方式分割了数据的情况下,由于三维点群的数也被分割,所以有时不能收敛于规定的点群的数量的范围内。在这种情况下,三维数据编码装置可以根据规定的优先级执行规定的处理。例如,可以规定为遵守位置信息的比特数的制约是最优先(必须)的,而关于点群的数量的范围的制约是希望尽可能遵守。即,三维数据编码方法也可以执行用于满足优先的规定的一致性的规定的处理,不执行用于满足不优先的规定的一致性的规定的处理。低延迟模式等处理速度优先的情况可以将遵守比特数的制约的优先级设定为高
于对点群的数量的范围的制约。从编码率的观点来看,遵守点群的数的制约的优先级可以设定为高于比特数的制约。这样,可以根据目的来设定遵守比特数和点群的数量的范围的优先级。另外,一致性可以是比特数或分割数据的包围盒的尺寸的规定,也可以是分割数据的数的规定,也可以是这些规定的组合。一致性可以通过位置信息的比特数和帧率的组合来规定。使用图104说明该例子。图104是表示有关实施方式6的三维数据编码方法的第6例的流程图。在该流程图中,是决定位置信息的比特数和输入点群的帧率作为一致性的例子。三维数据编码装置决定作为三维点群的点群数据的编码后的数据的编码数据的一致性(s9671)。这里所决定的一致性包括规定位置信息的比特数的第1最大比特数和输入点群的帧率。三维数据编码装置判定所输入的三维点群是否满足所决定的比特数的一致性(s9672)。即,三维数据编码装置判定所输入的三维点群的位置信息的比特数是否满足所决定的第1最大比特数(是否一致),以及所输入的三维点群的帧率是否满足所决定的帧率。三维数据编码装置在判定为所输入的三维点群不满足所决定的比特数的一致性的情况下(s9672中为否),以满足所决定的一致性的方式执行规定的处理(s9673)。规定的处理例如是使用图97、图98、图100和图101所说明的处理中的某一个处理。三维数据编码装置在步骤s9673结束了的情况或者判定为所输入的三维点群满足所决定的三维点的数量的范围的一致性的情况下(s9672中为是),执行接下来的步骤s9674。三维数据编码装置生成包含表示在步骤s9671中决定的一致性的一致性索引的元数据(s9674)。一致性索引是用于确定多个一致性的组合中的1个一致性的识别信息。三维数据编码装置根据步骤s9672的判定结果,对步骤s9673中的处理后的点群数据或未处理的点群数据(即未进行规定的处理的点群数据)进行编码,生成包含编码后的点群数据和元数据的比特流(s9675)。这样,例如,一致性也可以根据硬件的要件来决定,该硬件的要件在硬件(三维数据编码装置/三维数据解码装置)所需的每单位时间(秒)的帧数(帧率/fps)方面能够变换为应用的需求。在这种情况下,1个帧可以被看作是lidar的360度捕获。一致性的组合也可以是其他参数的组合。另外,一致性也可以由分割数据(切片)单位的帧率规定。图105是表示有关实施方式6的一致性的组合的另一例的图。如该图所示,一致性的组合也可以通过位置信息的比特数和帧率的组合来表示。在该例中,位置信息的比特数被分类为上限为16比特的情况、32比特的情况、64比特的情况这3个阶段。帧率被分类为小于60fps的情况、小于10fps的情况、小于1fps的情况这3个阶段。由此,一致性的组合被分类为9种一致性点,对各一致性点赋予了一致性索引。即,通过指定由1至9的数字所示的一致性索引,能够唯一地设定位置信息的比特数和帧率。至此,说明了在位置信息的编码处理以及解码处理中设定一致性的例子,但在属性信息的编码处理以及解码处理中,也可以与位置信息的编码处理以及解码处理同样地设定一致性。此外,对属性信息应用的一致性不仅可以是对如颜色或反射率等属性部分信息的规定,也可以是对与出于预测或压缩目的与点群建立了关联的位置信息相关联的信息的
规定。为了在使用了lod或raht等阶层结构的属性信息的预测中执行子采样或搜索规定距离内的附近的点的功能,需要三维点群的几何位置信息。因此,为了规定属性信息,一致性也可以包含基于这些位置信息的参数。另外,用于规定属性信息的一致性也可以包含表现颜色的比特数的上限。例如,该一致性可以是rgb信息的比特数。rgb信息的比特数表示点群的颜色是用8比特表现、还是用12比特表现、还是用16比特表现。对反射率也可以同样地规定。图106是表示有关实施方式6的一致性的组合的另一例的图。如该图所示,一致性的组合也可以通过颜色的比特数和属性变换的参数的组合来表示。在该例中,颜色的比特数被分类为上限为8比特的情况、12比特的情况、16比特的情况这3个阶段。属性变换的参数例如表示在预测时使用的lod的阶层结构的阶层的数量。属性变换的参数被分类为小于10阶层的情况、小于5阶层的情况、以及1阶层的情况这3个阶段。由此,一致性的组合被分类为9种一致性点,对各一致性赋予了一致性索引。即,通过指定由1至9的数字所示的一致性索引,能够唯一地设定颜色的比特数和属性变换的参数。可以对属性信息设定一致性。即,点群数据除了位置信息之外,还可以包含三维点群的各三维点的属性信息。三维数据编码装置将对三维点群的点群数据的属性信息的编码后的比特数进行规定的第2最大比特数决定为编码数据的一致性。三维数据编码装置通过以满足决定了属性信息的第2最大比特数的方式进行编码,从而生成比特流。比特流可以包含表示第2最大比特数的第2比特数信息。下面说明一致性索引的句法。图107是表示有关实施方式6的sps(sequence parameter set)的一例(例1)的图。图108是表示有关实施方式6的sps的一例(例2)的图。图109是表示有关实施方式6的gps(geometry parameter set)的一例(例3)的图。图110是表示有关实施方式6的比特流的结构的图。如图107中所示,一致性索引可以被包含为sps中的可利用的profile_idc、profile_compatibility_flags或者level_idc参数的一部分。此外,如图108所示,根据记述或使用场景,为了进一步扩大g-pcc的编码/解码处理的多个差分档次、级别和一致性,一致性索引可以设定为sps的独立参数。即,一致性索引也可以设定在图110中的头9621中。此外,如图109所示,一致性索引可以设定为包含在geometry slice header(gps)中各切片的头中。即,一致性索引也可以设定在图110中的头9622、9623中。这意味着,为了与不同类型的三维点群或不同地域的数据对应,各切片能够具有不同的一致性索引。另外,也能够进行与cpu或gpu asic等不同的处理器类型对应的编码处理或解码处理。图111是用于说明有关实施方式6的、根据三维点群的场所来切换一致性的情况的例子的图。图111是得到室内的三维点群9631和室外的三维点群9632,室外的三维点群9632中的一部分三维区域9633与室内的三维点群9631对应的例子。室内的三维点群9631和室外的三维点群9632是由不同的传感器取得的数据,因此,例如点群的密度等互不相同。室内的三维点群9631是在办公室等室内测量的点群,因此室外的传感器不能取
得。即,室外的三维点群9632不包含室内的三维点群9631。这样,室内的三维点群9631和室外的三维点群9632是以不同的精度、不同的密度生成的相互独立的点群数据。因此,也可以对各个三维点群9631、9632设定独立的一致性,根据三维点群9631、9632来切换一致性。也可以通过切换室外的三维点群9632的精度,增大尺度以使室内的三维点群9631收敛,来组合两者的数据。并且,也可以使用不同的切片原点值来使室内点群移位。如上所述,本实施方式的一个技术方案的三维数据编码装置执行图112所示的处理。三维数据编码装置决定在将表示三维点群的点群数据分割为多个时的分割数据单位、和分割前的点群数据单位的至少一方的编码后的编码数据的第1最大比特数(s9681)。三维数据编码装置通过对分割所述点群数据而成的多个分割数据、或分割前的所述点群数据以满足所决定的所述第1最大比特数的方式进行编码,从而生成比特流(s9682)。所述比特流包含表示所述第1最大比特数的第1比特数信息。由此,三维数据编码方法生成包含表示编码后的编码数据的第1最大比特数的第1比特数信息的比特流,因此三维数据解码装置不解析比特流也能够判断是否能够适当地对编码数据进行解码。因此,能够减少三维数据解码装置的处理负荷。例如,所述点群数据包含所述三维点群的各三维点的位置信息。所述第1最大比特数与所述位置信息的编码后的比特数相关。在所述生成(s9682)中,通过对分割所述点群数据而成的多个分割数据或分割前的所述点群数据的位置信息以满足所决定的所述第1最大比特数的方式进行编码,从而生成所述比特流。由此,三维数据编码方法生成包含表示编码后的位置信息的第1最大比特数的第1比特数信息的比特流,因此三维数据解码装置即使不解析比特流也能够判断是否能够适当地对位置信息进行解码。例如,三维数据编码装置进一步决定所述分割数据单位和所述点群数据单位的至少一方中包含的三维点的数量的范围。在所述生成(s9682)中,通过对分割所述点群数据而成的多个分割数据、或分割前的所述点群数据以满足所决定的所述第1最大比特数及所述数量的范围的方式进行编码,从而生成所述比特流。所述比特流还包含表示所述数量的范围的范围信息。由此,三维数据编码方法生成包含表示编码数据的三维点的数量的范围的范围信息的比特流,因此三维数据解码装置即使不解析比特流也能够判断是否能够适当地对位置信息进行解码。因此,能够减少三维数据解码装置的处理负荷。例如,所述点群数据还包含所述三维点群的各三维点的属性信息。所述三维数据编码方法进一步地,决定所述分割数据单位和所述点群数据单位的至少一方的三维点群的属性信息的编码后的第2最大比特数。在所述生成(s9682)中,(i)以满足所决定的所述第1最大比特数的方式对分割所述点群数据而成的多个分割数据或分割前的所述点群数据的位置信息进行编码,并且(ii)以满足所决定的所述第2最大比特数的方式对分割所述点群数据而成的多个分割数据或分割前的所述点群数据的属性信息进行编码,从而生成所述比特流。所述比特流还包含表示所述第2最大比特数的第2比特数信息。由此,三维数据编码方法生成包含表示编码后的属性信息的第2最大比特数的第2比特数信息的比特流,因此三维数据解码装置即使不解析比特流也能够判断是否能够适当
地对属性信息进行解码。因此,能够减少三维数据解码装置的处理负荷。例如,三维数据编码装置具备处理器和存储器,处理器使用存储器进行上述处理。此外,本实施方式的一个技术方案的三维数据解码装置进行图113所示的处理。三维数据解码装置取得包含编码数据和第1比特数信息的比特流,所述编码数据是将表示三维点群的点群数据分割为多个时的分割数据单位和分割前的点群数据单位中的至少一方的编码后的数据,所述第1比特数信息表示所述编码数据的第1最大比特数(s9691)。三维数据解码装置判定所取得的所述比特流是否满足由所述第1比特数信息表示的第1最大比特数(s9692)。三维数据解码装置在判定为所述比特流满足所述第1最大比特数的情况下,对所述编码数据进行解码(s9693)。由此,三维数据解码方法从比特流中取得表示编码后的编码数据的第1最大比特数的第1比特数信息,因此能够基于取得的第1比特数信息适当地对点群数据进行解码。例如,三维数据解码装置在所述解码(s9693)中,在判定为所述比特流不满足所述第1最大比特数的情况下,不对所述编码数据进行解码。由此,不进行不能适当地解码的比特流的编码数据的解码处理,因此能够减少处理负荷。例如,所述点群数据包含所述三维点群的各三维点的位置信息。所述第1最大比特数与所述位置信息的编码后的比特数相关。由此,三维数据解码方法从比特流中取得表示编码后的位置信息的第1最大比特数的第1比特数信息,因此能够基于取得的第1比特数信息适当地对点群数据进行解码。例如,所述比特流还包含范围信息,该范围信息表示所述分割数据单位和所述点群数据单位的至少一方中包含的三维点的数量的范围。所述三维数据解码装置在所述判定(s9692)中进一步判定所述比特流是否满足由所述范围信息表示的所述数量的范围。在所述解码(s9693)中,在判定为所述比特流满足所述第1最大比特数并且满足所述数量的范围的情况下,对所述编码数据进行解码,在判定为所述比特流不满足所述第1最大比特数或不满足所述数量的范围的情况下,不对所述编码数据进行解码。由此,三维数据解码方法从比特流中取得表示编码数据的三维点的数量的范围的范围信息,因此能够基于取得的范围信息适当地对点群数据进行解码。例如,所述点群数据还包含所述三维点群的各三维点的属性信息。所述比特流还包含第2比特数信息,该第2比特数信息表示所述分割数据单位和所述点群数据单位的至少一方的三维点群的属性信息的编码后的第2最大比特数。在所述判定(s9692)中,进一步判定所述比特流是否满足由所述第2比特数信息表示的所述第2最大比特数。在所述解码(s9693)中,在判定为所述比特流满足所述第1最大比特数且满足所述第2最大比特数的情况下,对所述编码数据进行解码,在判定为所述比特流不满足所述第1最大比特数或不满足所述第2最大比特数的情况下,不对所述编码数据进行解码。由此,三维数据解码方法从比特流中取得表示编码后的属性信息的第2最大比特数的第2比特数信息,因此能够基于取得的第2比特数信息适当地对点群数据进行解码。例如,三维数据解码装置具备处理器和存储器,处理器使用存储器进行上述处理。(实施方式7)接着,对本实施方式所涉及的三维数据制作装置810的结构进行说明。图114是示
出本实施方式所涉及的三维数据制作装置810的结构例的框图。该三维数据制作装置810例如被搭载于车辆。三维数据制作装置810与外部的交通云监控、前方车辆或后方车辆进行三维数据的收发,同时对三维数据进行制作并蓄积。三维数据制作装置810具备:数据接收部811、通信部812、接收控制部813、格式变换部814、多个传感器815、三维数据制作部816、三维数据合成部817、三维数据蓄积部818、通信部819、发送控制部820、格式变换部821、以及数据发送部822。数据接收部811从交通云监控或前方车辆接收三维数据831。三维数据831例如包括含有自身车辆的传感器815不能检测的区域的信息,该信息例如是点云数据、可见光影像、进深信息、传感器位置信息、或速度信息等。通信部812与交通云监控或前方车辆进行通信,将数据发送请求等发送到交通云监控或前方车辆。接收控制部813经由通信部812,将对应的格式等信息与通信对方交换,确立与通信对方的通信。格式变换部814通过对数据接收部811接收的三维数据831进行格式变换等来生成三维数据832。并且,格式变换部814在三维数据831被压缩或编码的情况下,进行解压缩或解码处理。多个传感器815是lidar、可见光相机或红外线相机等获得车辆的外部的信息的传感器群,生成传感器信息833。例如,在传感器815为lidar等激光传感器的情况下,传感器信息833是点云数据(点群数据)等三维数据。另外,传感器815也可以不是多个。三维数据制作部816根据传感器信息833生成三维数据834。三维数据834例如包括点云数据、可见光影像、进深信息、传感器位置信息、或速度信息的信息。三维数据合成部817通过将交通云监控或前方车辆等制作的三维数据832,合成到根据自身车辆的传感器信息833而制作的三维数据834,从而能够构筑自身车辆的传感器815不能检测的前方车辆的前方的空间也包括在内的三维数据835。三维数据蓄积部818对生成的三维数据835等进行蓄积。通信部819与交通云监控或后方车辆进行通信,将数据发送请求等发送到交通云监控或后方车辆。发送控制部820经由通信部819,将对应的格式等信息与通信对方进行交换,确立与通信对方的通信。并且,发送控制部820根据在三维数据合成部817生成的三维数据832的三维数据构筑信息、以及来自通信对方的数据发送请求,来决定作为发送对象的三维数据的空间的发送区域。具体而言,发送控制部820按照来自交通云监控或后方车辆的数据发送请求,来决定包括后方车辆的传感器不能检测的自身车辆的前方的空间的发送区域。并且,发送控制部820通过根据三维数据构筑信息来判断能够发送的空间或已发送空间的更新有无等,从而决定发送区域。例如,发送控制部820将既是由数据发送请求指定的区域、又是对应的三维数据835存在的区域决定为发送区域。并且,发送控制部820将通信对方所对应的格式、以及发送区域通知给格式变换部821。格式变换部821通过将被蓄积在三维数据蓄积部818的三维数据835中的发送区域的三维数据836,转换为与接收侧对应的格式,来生成三维数据837。另外,也可以通过格式
变换部821对三维数据837进行压缩或编码,来削减数据量。数据发送部822将三维数据837发送到交通云监控或后方车辆。该三维数据837例如包括含有成为后方车辆的死角的区域的信息,该信息是自身车辆的前方的点云数据、可见光影像、进深信息、或传感器位置信息等。另外,在此虽然以格式变换部814以及821进行格式变换等为例进行了说明,但是也可以不进行格式变换。通过此结构,三维数据制作装置810从外部获得在自身车辆的传感器815不能检测的区域的三维数据831,并通过对三维数据831与基于自身车辆的传感器815检测到的传感器信息833的三维数据834进行合成,来生成三维数据835。据此,三维数据制作装置810能够生成自身车辆的传感器815不能检测的范围的三维数据。并且,三维数据制作装置810能够按照来自交通云监控或后方车辆的数据发送请求,将包括后方车辆的传感器不能检测的自身车辆的前方的空间的三维数据发送到交通云监控或后方车辆等。接着,对三维数据制作装置810中的给后方车辆的三维数据的发送顺序进行说明。图115是示出通过三维数据制作装置810向交通云监控或后方车辆发送三维数据的顺序的一个例子的流程图。首先,三维数据制作装置810生成并更新包括自身车辆的前方道路上的空间的空间的三维数据835(s801)。具体而言,三维数据制作装置810将交通云监控或前方车辆等制作的三维数据831,合成到基于自身车辆的传感器信息833制作的三维数据834,通过进行这种合成,来构筑自身车辆的传感器815不能检测的前方车辆的前方的空间也包括在内的三维数据835。接着,三维数据制作装置810判断已发送的空间中包含的三维数据835是否发生了变化(s802)。在由于车辆或人从外部进入到已发送的空间等而该空间中包含的三维数据835发生了变化的情况下(s802的“是”),三维数据制作装置810将包含发生了变化的空间的三维数据835的三维数据发送到交通云监控或后方车辆(s803)。另外,三维数据制作装置810虽然可以按照以规定的间隔来发送三维数据的发送定时,来发送发生了变化的空间的三维数据,不过也可以在检测到变化后立即进行发送。即,三维数据制作装置810可以将发生了变化的空间的三维数据,比以规定的间隔来发送的三维数据优先发送。并且,三维数据制作装置810也可以将发生了变化的空间的所有的三维数据,作为发生了变化的空间的三维数据来发送,也可以仅发送三维数据的差异(例如出现或消失的三维点的信息、或三维点的变位信息等)。并且,也可以是,三维数据制作装置810在发送发生了变化的空间的三维数据之前,先将紧急刹车警报等与自身车辆的危险回避工作有关的元数据发送到后方车辆。据此,后方车辆能够提早确认到前方车辆的紧急刹车等,从而能够尽快地开始减速等危险回避工作。在已发送的空间中包含的三维数据835没有发生变化的情况下(s802的“否”)或步骤s803之后,三维数据制作装置810将自身车辆的前方距离l上的规定的形状的空间中包含
的三维数据发送到交通云监控或后方车辆(s804)。并且,例如步骤s801~s804的处理以规定的时间间隔反复执行。并且,三维数据制作装置810在当前的发送对象的空间的三维数据835、与三维地图之间没有差异的情况下,也可以不发送空间的三维数据837。在本实施方式中,客户端装置向服务器或其他客户端装置发送由传感器得到的传感器信息。首先,对本实施方式所涉及的系统的结构进行说明。图116示出了本实施方式所涉及的三维地图以及传感器信息的收发系统的结构。该系统包括服务器901、客户端装置902a以及902b。另外,在不对客户端装置902a以及902b进行特殊区分的情况下,也记作客户端装置902。客户端装置902例如是被搭载在车辆等移动体的车载设备。服务器901例如是交通云监控等,能够与多个客户端装置902进行通信。服务器901向客户端装置902发送由点云数据构成的三维地图。另外,三维地图的结构并非受点云数据所限,也可以通过网格结构等其他的三维数据来表现。客户端装置902向服务器901发送由客户端装置902获得的传感器信息。传感器信息例如至少包括lidar获得信息、可见光图像、红外图像、深度图像、传感器位置信息以及速度信息之中的一个。关于在服务器901与客户端装置902之间收发的数据,在想要削减数据的情况下可以被压缩,在想要维持数据的精确度的情况下可以不进行压缩。在对数据进行压缩的情况下,在点云数据中例如能够采用基于八叉树的三维压缩方式。并且,在可见光图像、红外图像、以及深度图像中可以采用二维的图像压缩方式。二维的图像压缩方式例如是以mpeg标准化的mpeg-4avc或hevc等。并且,服务器901按照来自客户端装置902的三维地图的发送请求,将在服务器901进行管理的三维地图发送到客户端装置902。另外,服务器901也可以不等待来自客户端装置902的三维地图的发送请求,就对三维地图进行发送。例如,服务器901也可以将三维地图广播到预先规定的空间中的一个以上的客户端装置902。并且,服务器901也可以向接受过一次发送请求的客户端装置902,每隔一定的时间发送适于客户端装置902的位置的三维地图。并且,服务器901也可以在每当服务器901所管理的三维地图被更新时,向客户端装置902发送三维地图。客户端装置902向服务器901发出三维地图的发送请求。例如,在客户端装置902在行驶时想要进行自身位置估计的情况下,客户端装置902将三维地图的发送请求发送到服务器901。另外,在以下的情况下,客户端装置902也可以向服务器901发出三维地图的发送请求。在客户端装置902所持有的三维地图比较旧的情况下,客户端装置902也可以向服务器901发出三维地图的发送请求。例如,在客户端装置902获得三维地图并经过了一定期间的情况下,客户端装置902也可以向服务器901发出三维地图的发送请求。也可以是,在客户端装置902将要从客户端装置902所保持的三维地图所示的空间出来的一定时刻之前,客户端装置902向服务器901发出三维地图的发送请求。例如也可以是,在客户端装置902存在于从客户端装置902所保持的三维地图所示的空间的边界预先规
定的距离以内的情况下,客户端装置902向服务器901发出三维地图的发送请求。并且,在掌握到客户端装置902的移动路径以及移动速度的情况下,可以根据掌握到的移动路径和移动速度,来预测客户端装置902从客户端装置902所保持的三维地图示出的空间出来的时刻。在客户端装置902根据传感器信息制作的三维数据与三维地图的位置对照时的误差在一定范围以上时,客户端装置902可以向服务器901发出三维地图的发送请求。客户端装置902按照从服务器901发送来的传感器信息的发送请求,将传感器信息发送到服务器901。另外,客户端装置902也可以不等待来自服务器901的传感器信息的发送请求,就将传感器信息发送到服务器901。例如,客户端装置902在从服务器901得到过一次传感器信息的发送请求的情况下,可以在一定的期间之中,定期地将传感器信息发送到服务器901。并且也可以是,在客户端装置902根据传感器信息制作的三维数据、与从服务器901得到的三维地图的位置对照时的误差为一定范围以上的情况下,客户端装置902判断在客户端装置902的周边的三维地图有发生变化的可能性,并将这一判断结果和传感器信息一起发送到服务器901。服务器901向客户端装置902发出传感器信息的发送请求。例如,服务器901从客户端装置902接收gps等客户端装置902的位置信息。服务器901根据客户端装置902的位置信息,在判断为客户端装置902接近到服务器901所管理的三维地图中信息少的空间的情况下,为了重新生成三维地图,而将传感器信息的发送请求发出到客户端装置902。并且也可以是,服务器901在想要更新三维地图的情况、在想要确认积雪时或灾害时等道路状况的情况、在想要确认堵塞状况或事件事故状况等情况下,也可以发出传感器信息的发送请求。并且也可以是,客户端装置902按照从服务器901接受的传感器信息的发送请求的接收时的通信状态或频带,来设定发送到服务器901的传感器信息的数据量。对发送到服务器901的传感器信息的数据量进行设定例如是指,对该数据本身进行增减、或者选择适宜的压缩方式。图117是示出客户端装置902的结构例的框图。客户端装置902从服务器901接收以点云数据等构成的三维地图,根据基于客户端装置902的传感器信息而制作的三维数据,来估计客户端装置902的自身位置。并且,客户端装置902将获得的传感器信息发送到服务器901。客户端装置902具备:数据接收部1011、通信部1012、接收控制部1013、格式变换部1014、多个传感器1015、三维数据制作部1016、三维图像处理部1017、三维数据蓄积部1018、格式变换部1019、通信部1020、发送控制部1021、以及数据发送部1022。数据接收部1011从服务器901接收三维地图1031。三维地图1031是包括wld或swld等点云数据的数据。三维地图1031也可以包括压缩数据、以及非压缩数据的任一方。通信部1012与服务器901进行通信,将数据发送请求(例如,三维地图的发送请求)等发送到服务器901。接收控制部1013经由通信部1012,与通信对方交换对应格式等信息,确立与通信对方的通信。格式变换部1014通过对数据接收部1011所接收的三维地图1031进行格式转换等,来生成三维地图1032。并且,格式变换部1014在三维地图1031被压缩或编码的情况下,进行
解压缩或解码处理。另外,格式变换部1014在三维地图1031为非压缩数据的情况下,不进行解压缩或解码处理。多个传感器1015是lidar、可见光相机、红外线相机、或深度传感器等客户端装置902所搭载的用于获得车辆的外部的信息的传感器群,生成传感器信息1033。例如,在传感器1015为lidar等激光传感器的情况下,传感器信息1033是点云数据(点群数据)等三维数据。另外,传感器1015也可以不是多个。三维数据制作部1016根据传感器信息1033,制作自身车辆的周边的三维数据1034。例如,三维数据制作部1016利用由lidar获得的信息、以及由可见光相机得到的可见光影像,来制作自身车辆的周边的具有彩色信息的点云数据。三维图像处理部1017利用接收的点云数据等三维地图1032、以及根据传感器信息1033生成的自身车辆的周边的三维数据1034,来进行自身车辆的自身位置估计处理等。另外,也可以是,三维图像处理部1017对三维地图1032与三维数据1034进行合成,来制作自身车辆的周边的三维数据1035,利用制作的三维数据1035,来进行自身位置估计处理。三维数据蓄积部1018对三维地图1032、三维数据1034以及三维数据1035等进行蓄积。格式变换部1019通过将传感器信息1033转换为接收侧所对应的格式,来生成传感器信息1037。另外,格式变换部1019可以通过对传感器信息1037进行压缩或编码来削减数据量。并且,在不需要格式转换的情况下,格式变换部1019可以省略处理。并且,格式变换部1019可以对按照发送范围的指定来发送的数据量进行控制。通信部1020与服务器901进行通信,从服务器901接收数据发送请求(传感器信息的发送请求)等。发送控制部1021经由通信部1020,与通信对方交换对应格式等信息,从而确立通信。数据发送部1022将传感器信息1037发送到服务器901。传感器信息1037例如包括通过lidar获得的信息、通过可见光相机获得的亮度图像(可见光图像)、通过红外线相机获得的红外图像、通过深度传感器获得的深度图像、传感器位置信息、以及速度信息等由多个传感器1015获得的信息。接着,对服务器901的结构进行说明。图118是示出服务器901的结构例的框图。服务器901接收从客户端装置902发送来的传感器信息,根据接收的传感器信息,来制作三维数据。服务器901利用制作的三维数据,对服务器901管理的三维地图进行更新。并且,服务器901按照来自客户端装置902的三维地图的发送请求,将更新的三维地图发送到客户端装置902。服务器901具备:数据接收部1111、通信部1112、接收控制部1113、格式变换部1114、三维数据制作部1116、三维数据合成部1117、三维数据蓄积部1118、格式变换部1119、通信部1120、发送控制部1121、以及数据发送部1122。数据接收部1111从客户端装置902接收传感器信息1037。传感器信息1037例如包括通过lidar获得的信息、通过可见光相机获得的亮度图像(可见光图像)、通过红外线相机获得的红外图像、通过深度传感器获得的深度图像、传感器位置信息、以及速度信息等。通信部1112与客户端装置902进行通信,将数据发送请求(例如,传感器信息的发
送请求)等发送到客户端装置902。接收控制部1113经由通信部1112,与通信对方交换对应格式等信息,从而确立通信。格式变换部1114在接收的传感器信息1037被压缩或编码的情况下,通过进行解压缩或解码处理,来生成传感器信息1132。另外,在传感器信息1037是非压缩数据的情况下,格式变换部1114不进行解压缩或解码处理。三维数据制作部1116根据传感器信息1132,制作客户端装置902的周边的三维数据1134。例如,三维数据制作部1116利用通过lidar获得的信息、以及通过可见光相机得到的可见光影像,来制作客户端装置902的周边具有彩色信息的点云数据。三维数据合成部1117将基于传感器信息1132而制作的三维数据1134,与服务器901管理的三维地图1135进行合成,据此来更新三维地图1135。三维数据蓄积部1118对三维地图1135等进行蓄积。格式变换部1119通过将三维地图1135转换为接收侧对应的格式,来生成三维地图1031。另外,格式变换部1119也可以通过对三维地图1135进行压缩或编码,来削减数据量。并且,在不需要格式转换的情况下,格式变换部1119也可以省略处理。并且,格式变换部1119可以对按照发送范围的指定来发送的数据量进行控制。通信部1120与客户端装置902进行通信,从客户端装置902接收数据发送请求(三维地图的发送请求)等。发送控制部1121经由通信部1120,与通信对方交换对应格式等信息,从而确立通信。数据发送部1122将三维地图1031发送到客户端装置902。三维地图1031是包括wld或swld等点云数据的数据。在三维地图1031中也可以包括压缩数据以及非压缩数据的任一方。接着,对客户端装置902的工作流程进行说明。图119是示出客户端装置902进行的三维地图获得时的工作的流程图。首先,客户端装置902向服务器901请求三维地图(点云数据等)的发送(s1001)。此时,客户端装置902也将通过gps等得到的客户端装置902的位置信息一起发送,据此,可以向服务器901请求与该位置信息相关的三维地图的发送。接着,客户端装置902从服务器901接收三维地图(s1002)。若接收的三维地图是压缩数据,客户端装置902对接收的三维地图进行解码,生成非压缩的三维地图(s1003)。接着,客户端装置902根据从多个传感器1015得到的传感器信息1033,来制作客户端装置902的周边的三维数据1034(s1004)。接着,客户端装置902利用从服务器901接收的三维地图1032、以及根据传感器信息1033制作的三维数据1034,来估计客户端装置902的自身位置(s1005)。图120是示出客户端装置902进行的传感器信息的发送时的工作的流程图。首先,客户端装置902从服务器901接收传感器信息的发送请求(s1011)。接收了发送请求的客户端装置902将传感器信息1037发送到服务器901(s1012)。另外,在传感器信息1033包括通过多个传感器1015得到的多个信息的情况下,客户端装置902针对各信息,以适于各信息的压缩方式来进行压缩,从而生成传感器信息1037。
接着,对服务器901的工作流程进行说明。图121是示出服务器901进行传感器信息的获得时的工作的流程图。首先,服务器901向客户端装置902请求传感器信息的发送(s1021)。接着,服务器901接收按照该请求而从客户端装置902发送的传感器信息1037(s1022)。接着,服务器901利用接收的传感器信息1037,来制作三维数据1134(s1023)。接着,服务器901将制作的三维数据1134反映到三维地图1135(s1024)。图122是示出服务器901进行的三维地图的发送时的工作的流程图。首先,服务器901从客户端装置902接收三维地图的发送请求(s1031)。接收了三维地图的发送请求的服务器901向客户端装置902发送三维地图1031(s1032)。此时,服务器901可以与客户端装置902的位置信息相对应地提取其附近的三维地图,并发送提取的三维地图。并且可以是,服务器901针对由点云数据构成的三维地图,例如利用通过八叉树的压缩方式等来进行压缩,并发送压缩后的三维地图。以下,对本实施方式的变形例进行说明。服务器901利用从客户端装置902接收的传感器信息1037,来制作客户端装置902的位置附近的三维数据1134。接着,服务器901对制作的三维数据1134、与服务器901所管理的相同区域的三维地图1135进行匹配,算出三维数据1134与三维地图1135的差分。服务器901在差分为预先决定的阈值以上的情况下,判断在客户端装置902的周边发生了某种异常。例如,在因地震等自然灾害而发生了地表下沉等时,可以考虑到在服务器901所管理的三维地图1135、与基于传感器信息1037而制作的三维数据1134之间会产生较大的差。传感器信息1037也可以包括传感器的种类、传感器的性能、以及传感器的型号之中的至少一个。并且也可以是,传感器信息1037中被附加与传感器的性能相对应的类别id等。例如,在传感器信息1037是由lidar获得的信息的情况下,可以考虑到针对传感器的性能来分配标识符,例如,针对能够以几mm单位的精确度来获得信息的传感器分配类别1、针对能够以几cm单位的精确度来获得信息的传感器分配类别2、针对能够以几m单位的精确度来获得信息的传感器分配类别3。并且,服务器901也可以从客户端装置902的型号来估计传感器的性能信息等。例如,在客户端装置902搭载于车辆的情况下,服务器901可以根据该车辆的车型来判断传感器的规格信息。在这种情况下,服务器901可以事前获得车辆的车型的信息,也可以使该信息包括在传感器信息中。并且也可以是,服务器901利用获得的传感器信息1037,来切换针对利用传感器信息1037而制作的三维数据1134的校正的程度。例如,在传感器性能为高精确度(类别1)的情况下,服务器901不进行针对三维数据1134的校正。在传感器性能为低精确度(类别3)的情况下,服务器901将适于传感器的精确度的校正适用到三维数据1134。例如,服务器901在传感器的精确度越低的情况下就越增强校正的程度(强度)。服务器901也可以向存在于某个空间的多个客户端装置902同时发出传感器信息的发送请求。服务器901在从多个客户端装置902接收到多个传感器信息的情况下,没有必要将所有的传感器信息都利用到三维数据1134的制作,例如可以按照传感器的性能,来选择将要利用的传感器信息。例如,服务器901在对三维地图1135进行更新的情况下,可以从接收的多个传感器信息中选择高精确度的传感器信息(类别1),利用选择的传感器信息来制作三维数据1134。服务器901并非受交通云监控等服务器所限,也可以是其他的客户端装置(车载)。
图123示出了这种情况下的系统结构。例如,客户端装置902c向附近存在的客户端装置902a发出传感器信息的发送请求,并从客户端装置902a获得传感器信息。于是,客户端装置902c利用获得的客户端装置902a的传感器信息,来制作三维数据,并更新对客户端装置902c的三维地图进行更新。这样,客户端装置902c能够活用客户端装置902c的性能,来生成能够从客户端装置902a获得的空间的三维地图。例如,在客户端装置902c的性能高的情况下,可以考虑发生这种情况。并且,在这种情况下,提供了传感器信息的客户端装置902a被给予获得由客户端装置902c生成的高精确度的三维地图的权利。客户端装置902a按照该权利,从客户端装置902c接收高精确度的三维地图。并且也可以是,客户端装置902c向附近存在的多个客户端装置902(客户端装置902a以及客户端装置902b)发出传感器信息的发送请求。在客户端装置902a或客户端装置902b的传感器为高性能的情况下,客户端装置902c能够利用通过该高性能的传感器得到的传感器信息来制作三维数据。图124是示出服务器901以及客户端装置902的功能结构的框图。服务器901例如具备:对三维地图进行压缩以及解码的三维地图压缩/解码处理部1201、对传感器信息进行压缩以及解码的传感器信息压缩/解码处理部1202。客户端装置902具备:三维地图解码处理部1211、以及传感器信息压缩处理部1212。三维地图解码处理部1211接收压缩后的三维地图的编码数据,对编码数据进行解码并获得三维地图。传感器信息压缩处理部1212不对通过获得的传感器信息而制作的三维数据进行压缩,而是对传感器信息本身进行压缩,将压缩后的传感器信息的编码数据发送到服务器901。根据此结构,客户端装置902可以将用于对三维地图(点云数据等)进行解码处理的处理部(装置或lsi)保持在内部,而不必将用于对三维地图(点云数据等)的三维数据进行压缩处理的处理部保持在内部。这样,能够抑制客户端装置902的成本以及耗电量等。如以上所述,本实施方式所涉及的客户端装置902被搭载在移动体,根据通过被搭载在移动体的传感器1015得到的、示出移动体的周边状况的传感器信息1033,来制作移动体的周边的三维数据1034。客户端装置902利用制作的三维数据1034,来估计移动体的自身位置。客户端装置902将获得的传感器信息1033发送到服务器901或者其他的客户端装置902。据此,客户端装置902将传感器信息1033发送到服务器901等。这样,与发送三维数据的情况相比,将会有能够削减发送数据的数据量的可能性。并且,由于没有必要在客户端装置902执行三维数据的压缩或编码等处理,因此能够削减客户端装置902的处理的量。因此,客户端装置902能够实现传输的数据量的削减或装置的结构的简略化。并且,客户端装置902进一步向服务器901发送三维地图的发送请求,从服务器901接收三维地图1031。客户端装置902在自身位置的估计中,利用三维数据1034和三维地图1032,来对自身位置进行估计。并且,传感器信息1033至少包括通过激光传感器得到的信息、亮度图像(可见光图像)、红外图像、深度图像、传感器的位置信息、以及传感器的速度信息之中的一个。并且,传感器信息1033包括示出传感器的性能的信息。并且,客户端装置902对传感器信息1033进行编码或压缩,在传感器信息的发送
中,将编码或压缩后的传感器信息1037发送到服务器901或者其他的客户端装置902。据此,客户端装置902能够削减传输的数据量。例如,客户端装置902具备处理器以及存储器,处理器利用存储器进行上述的处理。并且,本实施方式所涉及的服务器901能够与搭载在移动体的客户端装置902进行通信,从客户端装置902接收通过被搭载在移动体的传感器1015得到的、示出移动体的周边状况的传感器信息1037。服务器901根据接收的传感器信息1037,来制作移动体的周边的三维数据1134。据此,服务器901利用从客户端装置902发送来的传感器信息1037,来制作三维数据1134。这样,与客户端装置902发送三维数据的情况相比,将会有能够削减发送数据的数据量的可能性。并且,由于可以不必在客户端装置902进行三维数据的压缩或编码等处理,因此能够削减客户端装置902的处理量。这样,服务器901能够实现传输的数据量的削减、或装置的结构的简略化。并且,服务器901进一步向客户端装置902发送传感器信息的发送请求。并且,服务器901进一步利用制作的三维数据1134,来更新三维地图1135,按照来自客户端装置902的三维地图1135的发送请求,将三维地图1135发送到客户端装置902。并且,传感器信息1037至少包括通过激光传感器得到的信息、亮度图像(可见光图像)、红外图像、深度图像、传感器的位置信息、以及传感器的速度信息之中的一个。并且,传感器信息1037包括示出传感器的性能的信息。并且,服务器901进一步按照传感器的性能,对三维数据进行校正。据此,该三维数据制作方法能够提高三维数据的品质。并且,服务器901在传感器信息的接收中,从多个客户端装置902接收多个传感器信息1037,根据多个传感器信息1037中包括的示出传感器的性能的多个信息,来选择三维数据1134的制作中使用的传感器信息1037。据此,服务器901能够提高三维数据1134的品质。并且,服务器901对接收的传感器信息1037进行解码或解压缩,根据解码或解压缩后的传感器信息1132,制作三维数据1134。据此,服务器901能够削减传输的数据量。例如,服务器901具备处理器和存储器,处理器利用存储器进行上述的处理。以下,对变形例进行说明。图125是表示本实施方式所涉及的系统的结构的图。图125所示的系统包括服务器2001、客户端装置2002a和客户端装置2002b。客户端装置2002a及客户端装置2002b被搭载于车辆等移动体,将传感器信息向服务器2001发送。服务器2001将三维地图(点云数据)向客户端装置2002a及客户端装置2002b发送。客户端装置2002a具备传感器信息获得部2011、存储部2012和数据发送可否判定部2013。另外,客户端装置2002b的结构也是同样的。此外,以下在将客户端装置2002a和客户端装置2002b不特别区分的情况下,也记作客户端装置2002。图126是表示本实施方式所涉及的客户端装置2002的动作的流程图。传感器信息获得部2011利用搭载于移动体的传感器(传感器群)获得各种传感器信息。即,传感器信息获得部2011获得由搭载于移动体的传感器(传感器群)得到的、表示移
动体的周边状况的传感器信息。此外,传感器信息获得部2011将所获得的传感器信息向存储部2012存储。该传感器信息包括lidar获得信息、可视光图像、红外图像及深度图像中的至少一个。此外,传感器信息也可以包括传感器位置信息、速度信息、获得时刻信息及获得场所信息中的至少一个。传感器位置信息表示获得了传感器信息的传感器的位置。速度信息表示传感器获得了传感器信息时的移动体的速度。获得时刻信息表示传感器信息被传感器获得的时刻。获得场所信息表示传感器信息被传感器获得时的移动体或传感器的位置。接着,数据发送可否判定部2013判定移动体(客户端装置2002)是否存在于能够向服务器2001发送传感器信息的环境中(s2002)。例如,数据发送可否判定部2013也可以使用gps等信息,确定客户端装置2002所处的场所及时刻,判定是否能够发送数据。此外,数据发送可否判定部2013也可以通过是否能够连接到特定的接入点,来判定是否能够发送数据。客户端装置2002在判定为移动体存在于能够向服务器2001发送传感器信息的环境中的情况下(s2002中“是”),将传感器信息向服务器2001发送(s2003)。即,在客户端装置2002成为能够将传感器信息向服务器2001发送那样的状况的时间点,客户端装置2002将所保持的传感器信息向服务器2001发送。例如,在交叉口等设置能够进行高速通信的毫米波的接入点。客户端装置2002在进入到交叉口内的时间点,利用毫米波通信将客户端装置2002所保持的传感器信息高速地发送给服务器2001。接着,客户端装置2002将已发送给服务器2001的传感器信息从存储部2012删除(s2004)。另外,客户端装置2002也可以在没有向服务器2001发送的传感器信息满足规定的条件的情况下将该传感器信息删除。例如,客户端装置2002也可以在所保持的传感器信息的获得时刻比从当前时刻起一定时刻前更早的时间点,将该传感器信息从存储部2012删除。即,客户端装置2002也可以在传感器信息被传感器获得的时刻与当前时刻的差超过了预先设定的时间的情况下,将传感器信息从存储部2012删除。此外,客户端装置2002也可以在所保持的传感器信息的获得场所距当前地点的距离比一定距离远的时间点,将该传感器信息从存储部2012删除。即,客户端装置2002也可以在传感器信息被传感器获得时的移动体或传感器的位置与移动体或传感器的当前位置的差超过了预先设定的距离的情况下,将传感器信息从存储部2012删除。由此,能够抑制客户端装置2002的存储部2012的容量。在由客户端装置2002进行的传感器信息的获得没有结束的情况下(s2005中“否”),客户端装置2002再次进行步骤s2001以后的处理。此外,在由客户端装置2002进行的传感器信息的获得结束的情况下(s2005中“是”),客户端装置2002结束处理。此外,客户端装置2002也可以匹配于通信状况来选择向服务器2001发送的传感器信息。例如,客户端装置2002在能够高速通信的情况下,将向存储部2012保持的尺寸大的传感器信息(例如lidar获得信息等)优先发送。此外,客户端装置2002在难以高速通信的情况下,发送向存储部2012保持的尺寸小且优先级高的传感器信息(例如可视光图像)。由此,客户端装置2002能够将保持在存储部2012中的传感器信息根据网络的状况有效地发送给服务器2001。此外,客户端装置2002也可以从服务器2001获得表示上述当前时刻的时刻信息及表示当前地点的场所信息。此外,客户端装置2002也可以基于所获得的时刻信息及场所信息,决定传感器信息的获得时刻及获得场所。即,客户端装置2002也可以从服务器2001获得时刻信息,使用所获得的时刻信息,生成获得时刻信息。此外,客户端装置2002也可以从服
务器2001获得场所信息,使用所获得的场所信息,生成获得场所信息。例如关于时刻信息,服务器2001和客户端装置2002利用ntp(network time protocol:网络时间协议)或ptp(precision time protocol:高精度时间同步协议)等的机制进行时刻同步。由此,客户端装置2002能够获得正确的时刻信息。此外,由于能够在服务器2001与多个客户端装置之间使时刻同步,所以能够使不同客户端装置2002获得的传感器信息内的时刻同步。因此,服务器2001能够处置表示被同步后的时刻的传感器信息。另外,时刻同步的机制也可以是ntp或ptp以外的任何方法。此外,作为上述时刻信息及场所信息,也可以使用gps的信息。服务器2001也可以指定时刻或场所来从多个客户端装置2002获得传感器信息。例如在发生了某种事故的情况下,为了寻找处于其附近的客户端,服务器2001指定事故发生时刻和场所,向多个客户端装置2002广播发送传感器信息发送请求。并且,具有相应的时刻和场所的传感器信息的客户端装置2002向服务器2001发送传感器信息。即,客户端装置2002从服务器2001接收包含指定场所及时刻的指定信息的传感器信息发送请求。客户端装置2002在存储部2012中存储有在由指定信息表示的场所及时刻得到的传感器信息、并且判定为移动体存在于能够向服务器2001发送传感器信息的环境中的情况下,将在由指定信息表示的场所及时刻得到的传感器信息向服务器2001发送。由此,服务器2001能够从多个客户端装置2002获得与事故的发生关联的传感器信息,用于事故解析等。另外,客户端装置2002在接收到来自服务器2001的传感器信息发送请求的情况下,也可以拒绝传感器信息的发送。此外,也可以事前由客户端装置2002设定在多个传感器信息之中能够发送哪个传感器信息。或者,服务器2001也可以每次向客户端装置2002询问能否发送传感器信息。此外,对于向服务器2001发送了传感器信息的客户端装置2002,也可以赋予得分。该得分例如可以用于汽油购买费、ev(electric vehicle,电动汽车)的充电费、高速道路的通行费或租车费用等的支付。此外,服务器2001也可以在获得传感器信息之后,将用来确定传感器信息的发送源的客户端装置2002的信息删除。例如,该信息是客户端装置2002的网络地址等信息。由此,能够使传感器信息匿名化,所以客户端装置2002的用户能够安心地将传感器信息从客户端装置2002向服务器2001发送。此外,服务器2001也可以由多个服务器构成。例如通过由多个服务器共用传感器信息,即使某个服务器故障,其他的服务器也能够与客户端装置2002通信。由此,能够避免因服务器故障造成的服务的停止。此外,由传感器信息发送请求指定的指定场所表示事故的发生位置等,有时与由传感器信息发送请求指定的指定时刻的客户端装置2002的位置不同。因此,服务器2001例如能够通过作为指定场所而指定周边xxm以内等的范围,来对存在于该范围内的客户端装置2002请求信息获得。关于指定时刻也同样,服务器2001也可以指定从某时刻起前后n秒以内等范围。由此,服务器2001能够从“在时刻:t-n至t n”存在于“场所:距绝对位置s在xxm以内”的客户端装置2002获得传感器信息。客户端装置2002也可以在发送lidar等的三维数据时,发送在时刻t的紧接着之后生成的数据。此外,服务器2001也可以将表示作为传感器信息获得对象的客户端装置2002的场所的信息、和想得到传感器信息的场所分别分开指定为指定场所。例如,服务器2001指定从存在于距绝对位置s在xxm以内的客户端装置2002获得至少包括距绝对位置s为yym的范围
的传感器信息。客户端装置2002在选择要发送的三维数据时,以至少包含被指定的范围的传感器信息的方式选择1个以上的可随机访问的单位的三维数据。此外,客户端装置2002在发送可视光图像时,也可以发送至少包含时刻t的紧接着之前或紧接着之后的帧的、在时间上连续的多个图像数据。在客户端装置2002在传感器信息的发送中能够利用5g或wifi、或5g的多个模式等多个物理网络的情况下,客户端装置2002也可以按照从服务器2001通知的优先顺序来选择要利用的网络。或者,也可以是客户端装置2002自身基于发送数据的尺寸来选择能够确保适当的带宽的网络。或者,客户端装置2002也可以基于在数据发送中花费的费用等来选择要利用的网络。此外,在来自服务器2001的发送请求中,也可以包含客户端装置2002在时刻t之前能够开始发送的情况下进行发送等表示发送期限的信息。服务器2001如果在期限内不能获得足够的传感器信息,则也可以再次发布发送请求。传感器信息也可以与压缩或非压缩的传感器数据一起包含表示传感器数据的特性的头信息。客户端装置2002也可以将头信息经由与传感器数据不同的物理网络或通信协议发送给服务器2001。例如,客户端装置2002也可以在传感器数据的发送之前将头信息发送给服务器2001。服务器2001基于头信息的解析结果,判断是否获得客户端装置2002的传感器数据。例如,头信息也可以包含表示lidar的点群获得密度、仰角、或帧速率,或者可视光图像的分辨率、sn比或帧速率等的信息。由此,服务器2001能够从具有所决定的品质的传感器数据的客户端装置2002获得传感器信息。如以上这样,客户端装置2002被搭载于移动体,获得由搭载于移动体的传感器得到的、表示移动体的周边状况的传感器信息,并将传感器信息存储到存储部2012中。客户端装置2002判定移动体是否存在于能够向服务器2001发送传感器信息的环境中,在判定为移动体存在于能够向服务器发送传感器信息的环境中的情况下,将传感器信息发送给服务器2001。此外,客户端装置2002进一步,根据传感器信息制作移动体的周边的三维数据,使用制作出的三维数据估计移动体的自身位置。此外,客户端装置2002进一步,向服务器2001发送三维地图的发送请求,从服务器2001接收三维地图。客户端装置2002在自身位置的估计中,利用三维数据和三维地图来估计自身位置。另外,由上述客户端装置2002进行的处理也可以作为客户端装置2002中的信息发送方法实现。此外,客户端装置2002也可以具备处理器和存储器,处理器使用存储器进行上述的处理。接着,对本实施方式所涉及的传感器信息收集系统进行说明。图127是表示本实施方式所涉及的传感器信息收集系统的结构的图。如图127所示,本实施方式所涉及的传感器信息收集系统包括终端2021a、终端2021b、通信装置2022a、通信装置2022b、网络2023、数据收集服务器2024、地图服务器2025和客户端装置2026。另外,在将终端2021a及终端2021b不特别区分的情况下,也记作终端2021。在将通信装置2022a及通信装置2022b不特别区分的情况下,也记作通信装置2022。数据收集服务器2024将由终端2021所具备的传感器得到的传感器数据等数据作
为与三维空间中的位置建立了对应的位置关联数据而收集。传感器数据例如指的是使用终端2021具备的传感器获得了终端2021的周围的状态或终端2021的内部的状态等的数据。终端2021将从处于能够与终端2021直接通信、或者通过相同的通信方式将一个或多个中继装置进行中继而能够通信的位置的一个或多个传感器设备收集到的传感器数据发送给数据收集服务器2024。位置关联数据中包含的数据例如也可以包含表示终端自身或终端所具备的设备的动作状态、动作日志、服务的利用状况等的信息。此外,位置关联数据中包含的数据也可以包含将终端2021的标识符与终端2021的位置或移动路径等建立了对应的信息等。位置关联数据中包含的表示位置的信息与例如三维地图数据等三维数据中的表示位置的信息建立了对应。关于表示位置的信息的详细情况在后面叙述。位置关联数据除了作为表示位置的信息的位置信息以外,也可以还包含前述的时刻信息、和表示位置关联数据中包含的数据的属性或生成该数据的传感器的种类(例如型号等)的信息中的至少一个。位置信息及时刻信息也可以被保存在位置关联数据的头区域或保存位置关联数据的帧的头区域中。此外,位置信息及时刻信息也可以作为与位置关联数据建立了对应的元数据而与位置关联数据分开地发送及/或保存。地图服务器2025例如连接于网络2023,根据来自终端2021等其他装置的请求而发送三维地图数据等三维数据。此外,如在前述的各实施方式中说明那样,地图服务器2025也可以具备利用从终端2021发送的传感器信息将三维数据更新的功能等。数据收集服务器2024例如连接于网络2023,从终端2021等其他装置收集位置关联数据,将收集到的位置关联数据保存到内部或其他服务器内的存储装置中。此外,数据收集服务器2024将收集到的位置关联数据或基于位置关联数据而生成的三维地图数据的元数据等,按照来自终端2021的请求而对终端2021发送。网络2023是例如因特网等的通信网络。终端2021经由通信装置2022连接于网络2023。通信装置2022通过一个通信方式或一边切换多个通信方式一边与终端2021进行通信。通信装置2022例如是(1)lte(long term evolution,长期演进)等的基站,(2)wifi或毫米波通信等的接入点(ap),(3)sigfox、lorawan或wi-sun等的lpwa(low power wide area低功耗广域)网的网关,或(4)使用dvb-s2等的卫星通信方式进行通信的通信卫星。另外,基站既可以通过被分类为nb-iot(narrow band-iot:窄带物联网)或lte-m等的lpwa的方式进行与终端2021的通信,也可以一边切换这些方式一边进行与终端2021的通信。这里,举出了终端2021具备与使用两种通信方式的通信装置2022进行通信的功能,使用这些通信方式中的某一个、或一边切换这些多个通信方式及作为直接的通信对方的通信装置2022一边与地图服务器2025或数据收集服务器2024进行通信的情况为例,但传感器信息收集系统及终端2021的结构并不限于此。例如,终端2021也可以不具有多个通信方式下的通信功能,而具备以某一个通信方式进行通信的功能。此外,终端2021也可以对应于3个以上的通信方式。此外,也可以按每个终端2021,对应的通信方式不同。终端2021例如具备图117所示的客户端装置902的结构。终端2021使用接收到的三维数据进行自身位置等的位置估计。此外,终端2021将从传感器获得的传感器数据与由位置估计的处理得到的位置信息建立对应,生成位置关联数据。
对位置关联数据附加的位置信息例如表示在三维数据中使用的坐标系中的位置。例如,位置信息是用纬度及经度的值表示的坐标值。此时,终端2021也可以与坐标值一起,将作为该坐标值的基准的坐标系及表示在位置估计中使用的三维数据的信息包含在位置信息中。此外,坐标值也可以包含高度的信息。此外,位置信息也可以与能够在前述的三维数据的编码中使用的数据的单位或空间的单位建立对应。该单位,例如是wld、gos、spc、vlm或vxl等。此时,位置信息例如通过用来确定与位置关联数据对应的spc等的数据单位的标识符来表现。另外,位置信息除了用来确定spc等的数据单位的标识符以外,也可以还包含表示对包括该spc等的数据单位的三维空间进行编码而得到的三维数据的信息、或表示该spc内的详细的位置的信息等。表示三维数据的信息,例如是该三维数据的文件名。这样,该系统通过生成与基于使用三维数据进行的位置估计的位置信息建立了对应的位置关联数据,与对传感器信息附加基于使用gps获得的客户端装置(终端2021)的自身位置的位置信息的情况相比,能够对传感器信息赋予精度更高的位置信息。结果,在其他装置在其他服务中利用位置关联数据的情况下,也能够通过基于相同的三维数据进行位置估计,在真实空间中更正确地确定与位置关联数据对应的位置。另外,在本实施方式中,举从终端2021发送的数据是位置关联数据的情况为例进行了说明,但从终端2021发送的数据也可以是没有与位置信息建立关联的数据。即,也可以经由在本实施方式中说明的网络2023进行在其他实施方式中说明的三维数据或传感器数据的收发。接着,对表示三维或二维的真实空间或地图空间中的位置的位置信息不同的例子进行说明。对位置关联数据附加的位置信息也可以是表示相对于三维数据中的特征点的相对位置的信息。这里,作为位置信息的基准的特征点,例如是被编码为swld、作为三维数据被通知给终端2021的特征点。表示相对于特征点的相对位置的信息,例如也可以通过从特征点到位置信息所表示的点的矢量来表示,是表示从特征点到位置信息所表示的点的方向和距离的信息。或者,表示相对于特征点的相对位置的信息也可以是表示从特征点到位置信息表示的点的x轴、y轴、z轴各自的变位量的信息。此外,表示相对于特征点的相对位置的信息也可以是表示从3个以上的特征点各自到位置信息所表示的点的距离的信息。另外,相对位置也可以不是以各特征点为基准而表现的位置信息所表示的点的相对位置,而是以位置信息所表示的点为基准而表现的各特征点的相对位置。基于相对于特征点的相对位置的位置信息的一例包括用来确定作为基准的特征点的信息、和表示位置信息所表示的点相对于该特征点的相对位置的信息。此外,在将表示相对于特征点的相对位置的信息与三维数据分开提供的情况下,表示相对于特征点的相对位置的信息也可以包含表示在相对位置的导出中使用的坐标轴、表示三维数据的种类的信息、或/及表示相对位置的信息的值的每单位量的大小(比例尺等)的信息等。此外,位置信息也可以包含针对多个特征点表示相对于各特征点的相对位置的信息。在将位置信息用相对于多个特征点的相对位置表示的情况下,在真实空间中要确定该位置信息所表示的位置的终端2021也可以根据按每个特征点基于传感器数据估计出的该特征点的位置,计算位置信息所表示的位置的候选点,将对计算出的多个候选点进行平均
而求出的点判定为位置信息所表示的点。根据该结构,能够减轻根据传感器数据估计特征点的位置时的误差的影响,所以能够提高真实空间中的位置信息所表示的点的估计精度。此外,在位置信息包含表示相对于多个特征点的相对位置的信息的情况下,即使在存在因终端2021所具备的传感器的种类或性能等的制约而不能检测的特征点的情况下,只要能够检测到多个特征点中的某一个,就能够估计位置信息所表示的点的值。作为特征点,可以使用能够根据传感器数据来确定的点。能够根据传感器数据来确定的点,例如是满足前述的三维特征量或可视光数据的特征量为阈值以上等特征点检测用的规定的条件的点或区域内的点。此外,也可以使用设置在真实空间中的标记等作为特征点。在此情况下,标记只要能够根据使用lider或相机等的传感器获得的数据进行检测及位置的确定就可以。例如,通过颜色或亮度值(反射率)的变化、或三维形状(凹凸等)来表现标记。此外,也可以使用表示该标记的位置的坐标值或根据该标记的标识符生成的二维码或条码等。此外,也可以使用发送光信号的光源作为标记。在使用光信号的光源作为标记的情况下,不仅发送坐标值或标识符等的用来获得位置的信息,也可以将其他的数据利用光信号来发送。例如,光信号也可以包含与该标记的位置对应的服务的内容、用来获得内容的url等的地址、或用来接受服务的提供的无线通信装置的标识符、表示用来与该无线通信装置连接的无线通信方式等的信息。通过使用光通信装置(光源)作为标记,表示位置的信息以外的数据的发送变得容易,并且能够动态地切换该数据。终端2021例如使用在数据间共同使用的标识符、或者表示数据间的特征点的对应关系的信息或表来掌握相互不同的数据间的特征点的对应关系。此外,在没有表示特征点间的对应关系的信息的情况下,终端2021也可以将在将一方的三维数据中的特征点的坐标变换为另一方的三维数据空间上的位置的情况下处于最近的距离的特征点判定为对应的特征点。在使用以上说明的基于相对位置的位置信息的情况下,即使在使用相互不同的三维数据的终端2021或服务之间,也能够以各三维数据中包含的或与各三维数据建立了对应的共同的特征点为基准,确定或估计位置信息所表示的位置。结果,能够在使用相互不同的三维数据的终端2021或服务间以更高的精度确定或估计相同的位置。此外,即使在使用利用相互不同的坐标系表现的地图数据或三维数据的情况下,也能够降低伴随于坐标系的变换的误差的影响,所以能够实现基于更高精度的位置信息的服务的协同。以下,对由数据收集服务器2024提供的功能的例子进行说明。数据收集服务器2024也可以将接收到的位置关联数据传送给其他的数据服务器。在有多个数据服务器的情况下,数据收集服务器2024判定将接收到的位置关联数据传送给哪个数据服务器,并向被判定为传送目的地的数据服务器传送位置关联数据。数据收集服务器2024例如基于在数据收集服务器2024中事前设定的传送目的地服务器的判定规则来进行传送目的地的判定。传送目的地服务器的判定规则,例如用将对应于各终端2021的标识符与传送目的地的数据服务器建立了对应的传送目的地表等来设定。终端2021对所发送的位置关联数据附加与该终端2021建立了对应的标识符,并向
数据收集服务器2024发送。数据收集服务器2024基于使用传送目的地表等的传送目的地服务器的判定规则,确定与附加在位置关联数据中的标识符对应的传送目的地的数据服务器,将该位置关联数据向被确定的数据服务器发送。此外,传送目的地服务器的判定规则也可以由使用位置关联数据被获得的时间或场所等的判定条件来指定。这里,与上述的发送源的终端2021建立了对应的标识符,例如是各终端2021所固有的标识符、或表示终端2021所属的组的标识符等。此外,传送目的地表也可以不是将对应于发送源的终端的标识符与传送目的地的数据服务器直接建立对应的。例如,数据收集服务器2024保持管理表和传送目的地表,管理表保存有按照终端2021所固有的标识符而赋予的标签信息,传送目的地表将该标签信息与传送目的地的数据服务器建立了对应。数据收集服务器2024也可以使用管理表和传送目的地表判定基于标签信息的传送目的地的数据服务器。这里,标签信息例如是与该标识符对应的终端2021的种类、型号、所有者、所属的组或其他的对标识符赋予的管理用的控制信息或服务提供用的控制信息。此外,在传送目的地表中,也可以代替与发送源的终端2021建立对应的标识符而使用每个传感器所固有的标识符。此外,传送目的地服务器的判定规则也可以能够从客户端装置2026设定。数据收集服务器2024也可以将多个数据服务器判定为传送目的地,将接收到的位置关联数据传送给该多个数据服务器。根据该结构,例如在将位置关联数据自动地备份的情况下、或者在为了在不同的服务中共同地利用位置关联数据而需要对用来提供各服务的数据服务器发送位置关联数据的情况下,通过变更对数据收集服务器2024的设定,能够实现所意图的数据的传送。结果,与对单独的终端2021设定位置关联数据的发送目的地的情况相比,能够削减系统的构建及变更所需要的工作量。数据收集服务器2024也可以根据从数据服务器接收到的传送请求信号,将由传送请求信号指定的数据服务器登记为新的传送目的地,将以后接收到的位置关联数据传送给该数据服务器。数据收集服务器2024也可以将从终端2021接收到的位置关联数据保存到记录装置中,根据从终端2021或数据服务器接收到的发送请求信号,将由发送请求信号指定的位置关联数据发送给请求源的终端2021或数据服务器。数据收集服务器2024也可以判断能否对请求源的数据服务器或终端2021提供位置关联数据,在判断为能够提供的情况下向请求源的数据服务器或终端2021传送或发送位置关联数据。在从客户端装置2026受理了当前的位置关联数据的请求的情况下,即使不是终端2021的位置关联数据的发送定时,也可以由数据收集服务器2024对终端2021进行位置关联数据的发送请求,终端2021根据该发送请求发送位置关联数据。在上述的说明中,假设终端2021对数据收集服务器2024发送位置信息数据,但数据收集服务器2024例如也可以具备对终端2021进行管理的功能等为了从终端2021收集位置关联数据而需要的功能、或从终端2021收集位置关联数据时使用的功能等。数据收集服务器2024也可以具备对终端2021发送数据请求信号并收集位置关联数据的功能,数据请求信号是请求位置信息数据的发送的信号。在数据收集服务器2024中,事前登记有用来与作为数据收集对象的终端2021进行
通信的地址或终端2021固有的标识符等的管理信息。数据收集服务器2024基于所登记的管理信息,从终端2021收集位置关联数据。管理信息也可以包含终端2021所具备的传感器的种类、终端2021所具备的传感器的数量、以及终端2021所对应的通信方式等的信息。数据收集服务器2024也可以从终端2021收集终端2021的工作状态或当前位置等的信息。管理信息的登记既可以从客户端装置2026进行,也可以通过由终端2021向数据收集服务器2024发送登记请求,来开始用于登记的处理。数据收集服务器2024也可以具备控制与终端2021之间的通信的功能。将数据收集服务器2024与终端2021连结的通信也可以是mno(mobile network operator:移动网络运营商)或mvno(mobile virtual network operator:移动虚拟网络运营商)等服务业者提供的专用线路,或者由vpn(virtual private network:虚拟专用网络)构成的虚拟的专用线路等。根据该结构,能够安全地进行终端2021与数据收集服务器2024之间的通信。数据收集服务器2024也可以具备对终端2021进行认证的功能、或将与终端2021之间收发的数据进行加密的功能。这里,终端2021的认证处理或数据的加密处理,使用在数据收集服务器2024与终端2021之间事前共用的、终端2021所固有的标识符或包括多个终端2021的终端组所固有的标识符等来进行。该标识符例如是作为保存在sim(subscriber identity module:用户识别模块)卡中的固有号码的imsi(international mobile subscriber identity:国际移动用户识别码)等。在认证处理中使用的标识符和在数据的加密处理中使用的标识符既可以相同也可以不同。数据收集服务器2024与终端2021之间的认证或数据加密的处理,只要数据收集服务器2024和终端2021双方具备实施该处理的功能就能够提供,不依赖于进行中继的通信装置2022使用的通信方式。因此,能够不考虑终端2021使用哪种通信方式而使用共同的认证或加密的处理,所以用户的系统构建的方便性提高。但是,不依赖于进行中继的通信装置2022所使用的通信方式,是指根据通信方式变更并不是必须的。即,也可以以传输效率的提高或安全性的确保的目的,根据中继装置所使用的通信方式来切换数据收集服务器2024与终端2021之间的认证或数据加密的处理。数据收集服务器2024也可以向客户端装置2026提供对从终端2021收集的位置关联数据的种类及数据收集的调度等的数据收集规则进行管理的ui。由此,用户能够使用客户端装置2026指定收集数据的终端2021、以及数据的收集时间及频率等。此外,数据收集服务器2024也可以指定想要收集数据的地图上的区域等,从包含在该区域中的终端2021收集位置关联数据。在以终端2021单位对数据收集规则进行管理的情况下,客户端装置2026例如在画面中提示作为管理对象的终端2021或传感器的列表。用户按列表的每个项目来设定数据的收集与否或收集调度等。在指定想要收集数据的地图上的区域等的情况下,客户端装置2026例如在画面中提示作为管理对象的地域的二维或三维的地图。用户在所显示的地图上选择收集数据的区域。在地图上选择的区域,既可以是以在地图上指定的点为中心的圆形或矩形的区域,也可以是能够通过拖拽动作确定的圆形或矩形的区域。此外,客户端装置2026也可以以城市、城
市内的区域、街区或主要的道路等预先设定的单位来选择区域。此外,也可以不是使用地图指定区域,而是输入纬度及经度的数值来设定区域,也可以从基于被输入的文本信息导出的候选区域的列表中选择区域。文本信息例如是地域、城市或地标的名称等。此外,也可以通过由用户指定一个或多个终端2021,设定该终端2021的周围100米的范围内等的条件,从而一边动态地变更指定区域一边进行数据的收集。此外,在客户端装置2026具备相机等的传感器的情况下,也可以基于根据传感器数据得到的客户端装置2026在真实空间中的位置来指定地图上的区域。例如,客户端装置2026也可以使用传感器数据估计自身位置,将距与估计出的位置对应的地图上的点为预先设定的距离或用户指定的距离的范围内的区域指定为收集数据的区域。此外,客户端装置2026也可以将传感器的感测区域、即与所获得的传感器数据对应的区域指定为收集数据的区域。或者,客户端装置2026也可以将基于与用户指定的传感器数据对应的位置的区域指定为收集数据的区域。与传感器数据对应的地图上的区域或位置的估计既可以由客户端装置2026进行,也可以由数据收集服务器2024进行。在地图上的区域中进行指定的情况下,数据收集服务器2024也可以通过收集各终端2021的当前位置信息,来确定被指定的区域内的终端2021,对所确定的终端2021请求位置关联数据的发送。此外,也可以不是数据收集服务器2024确定区域内的终端2021,而是数据收集服务器2024将表示被指定的区域的信息向终端2021发送,终端2021判定自身是否处于被指定的区域内,在判断为处于被指定的区域内的情况下发送位置关联数据。数据收集服务器2024将用来在客户端装置2026所执行的应用中提供上述ui(user interface)的列表或地图等的数据向客户端装置2026发送。数据收集服务器2024不仅发送列表或地图等的数据,也可以将应用的程序发送给客户端装置2026。此外,上述的ui也可以作为通过能够用浏览器显示的html等制作的内容来提供。另外,地图数据等一部分数据也可以从地图服务器2025等的数据收集服务器2024以外的服务器提供。客户端装置2026如果由用户进行设定按钮的按下等通知输入完成的输入,则将被输入的信息作为设定信息向数据收集服务器2024发送。数据收集服务器2024基于从客户端装置2026接收到的设定信息,对各终端2021发送位置关联数据的请求或通知位置关联数据的收集规则的信号,进行位置关联数据的收集。接着,说明基于附加在三维或二维地图数据中的附加信息对终端2021的动作进行控制的例子。在本结构中,将表示埋设在道路或停车场中的无线供电的供电天线或供电线圈等供电部的位置的对象信息包含在三维数据中,或与三维数据建立对应,向作为车或无人机等的终端2021提供。为了进行充电而获得了该对象信息的车辆或无人机通过自动驾驶使车辆自身的位置移动以使车辆具备的充电天线或充电线圈等充电部的位置成为与该对象信息所示的区域对置的位置,并开始充电。另外,在不具备自动驾驶功能的车辆或无人机的情况下,利用显示在画面上的图像或声音等,对驾驶员或操纵者提示应移动的方向或应进行的操作。并且,如果判断为基于估计出的自身位置计算出的充电部的位置进入到由对象信息所示的区域或距该区域为规定的距离的范围内,则将提示的图像或声音切换为使驾驶或操纵中止的内容,并开始充电。
此外,对象信息也可以不是表示供电部的位置的信息,而是表示如果将充电部配置到该区域内则能得到规定的阈值以上的充电效率的区域的信息。关于对象信息的位置,既可以用对象信息所示的区域的中心的点表示,也可以用二维平面内的区域或线、或者三维空间内的区域、线或平面等表示。根据该结构,由于能够掌握通过lider的感测数据或由相机拍摄的影像不能掌握的供电天线的位置,所以能够更高精度地进行车等的终端2021所具备的无线充电用的天线与埋设在道路等中的无线供电天线的对位。结果,能够使无线充电时的充电速度变短,或使充电效率提高。对象信息也可以是供电天线以外的对象物。例如,三维数据也可以包含毫米波无线通信的ap的位置等作为对象信息。由此,终端2021能够事前掌握ap的位置,所以能够将波束的指向性朝向该对象信息的方向来开始通信。结果,能够实现传输速度的提高、到通信开始为止的时间的缩短、以及延长可通信的期间等的通信品质的提高。对象信息也可以包含表示与该对象信息对应的对象物的类型的信息。此外,对象信息也可以包含表示在终端2021包含于与该对象信息的三维数据上的位置对应的真实空间上的区域内、或距区域为规定的距离的范围内的情况下终端2021应实施的处理的信息。对象信息也可以从与提供三维数据的服务器不同的服务器提供。在将对象信息与三维数据分开提供的情况下,也可以将保存有在相同的服务中使用的对象信息的对象组根据对象服务或对象设备的种类而分别作为不同的数据提供。与对象信息组合使用的三维数据可以是wld的点群数据,也可以是swld的特征点数据。在三维数据编码装置中,在使用lod(level of detail,多细节层次)对作为编码对象的三维点的对象三维点的属性信息进行了分阶层编码的情况下,三维数据解码装置可以用该三维数据解码装置将属性信息解码到所需的lod的阶层,不对不需要的阶层的属性信息进行解码。例如,在三维数据编码装置编码的比特流内的属性信息的lod的总数为n个的情况下,三维数据解码装置也可以对从最上位层的lod0到lod(m-1)的m个(m<n)lod进行解码,不对到剩余的lod(n-1)为止的lod进行解码。由此,三维数据解码装置能够抑制处理负荷,并且能够对三维数据解码装置所需的从lod0至lod(m-1)的属性信息进行解码。图128是表示上述的使用情况的图。在图128的例子中,服务器保持通过对三维位置信息和属性信息进行编码而得到的三维地图。服务器(三维数据编码装置)对服务器管理的区域的客户端装置(三维数据解码装置:例如车辆或者无人机等)广播发送三维地图,客户端装置进行使用从服务器接收到的三维地图来确定客户端装置的自身位置的处理、或者对操作客户端装置的用户等显示地图信息的处理。以下,对该例子中的动作例进行说明。首先,服务器使用八叉树结构等对三维地图的位置信息进行编码。然后,服务器使用以位置信息为基础而构建的n个lod对三维地图的属性信息进行分阶层编码。服务器保存通过分阶层编码得到的三维地图的比特流。接着,服务器根据从服务器管理的区域的客户端装置发送的地图信息的发送请求,将编码后的三维地图的比特流发送到客户端装置。客户端装置接收从服务器发送的三维地图的比特流,根据客户端装置的用途对三维地图的位置信息和属性信息进行解码。例如,在客户端装置使用位置信息和n个lod的属
性信息进行高精度的自身位置推定的情况下,客户端装置判断为需要到稠密的三维点为止的解码结果作为属性信息,对比特流内的所有信息进行解码。另外,在客户端装置将三维地图的信息显示给用户等的情况下,客户端装置判断为需要到稀疏的三维点为止的解码结果作为属性信息,对位置信息与从lod的上位层即lod0至m个(m<n)为止的lod的属性信息进行解码。这样,通过根据客户端装置的用途切换解码的属性信息的lod,能够削减客户端装置的处理负荷。在图128所示的例子中,例如,三维点地图包含位置信息和属性信息。位置信息用八叉树进行编码。属性信息用n个lod进行编码。客户端装置a进行高精度的自身位置推定。在该情况下,客户端装置a判断为需要全部的位置信息和属性信息,将比特流内的位置信息和由n个lod构成的属性信息全部解码。客户端装置b向用户显示三维地图。在该情况下,客户端装置b判断为需要位置信息和m个(m<n)lod的属性信息,对比特流内的位置信息和由m个lod构成的属性信息进行解码。另外,服务器可以向客户端装置广播发送三维地图,也可以组播发送或者单播发送。以下,对本实施方式的系统的变形例进行说明。在三维数据编码装置中,在使用lod对作为编码对象的三维点的对象三维点的属性信息进行分阶层编码的情况下,三维数据编码装置也可以对该三维数据解码装置所需的lod的阶层为止的属性信息进行编码,不对不需要的阶层的属性信息进行编码。例如,在lod的总数为n个的情况下,三维数据编码装置也可以对从最上位层lod0到lod(m-1)的m个(m<n)lod进行编码,不对到剩余lod(n-1)为止的lod进行编码,由此生成比特流。由此,三维数据编码装置能够根据来自三维数据解码装置的需求,提供对三维数据解码装置所需的从lod0到lod(m-1)的属性信息进行编码而得到的比特流。图129是表示上述使用情况的图。在图129所示的例子中,服务器保持通过对三维位置信息和属性信息进行编码而得到的三维地图。服务器(三维数据编码装置)对服务器管理的区域的客户端装置(三维数据解码装置:例如车辆或者无人机等),根据客户端装置的需求单播发送三维地图,客户端装置使用从服务器接收到的三维地图来进行确定客户端装置的自身位置的处理、或者将地图信息显示给操作客户端装置的用户等的处理。以下,对该例子中的动作例进行说明。首先,服务器使用八叉树结构等对三维地图的位置信息进行编码。然后,服务器使用以位置信息为基础构建的n个lod对三维地图的属性信息进行分阶层编码,由此生成三维地图a的比特流,并将生成的比特流保存在该服务器中。另外,服务器使用以位置信息为基础构建的m个(m<n)lod对三维地图的属性信息进行分阶层编码,由此生成三维地图b的比特流,并将生成的比特流保存在该服务器中。接着,客户端装置根据客户端装置的用途向服务器请求三维地图的发送。例如,客户端装置在使用位置信息和n个lod的属性信息进行高精度的自身位置推定的情况下,判断为需要到稠密的三维点为止的解码结果作为属性信息,向服务器请求三维地图a的比特流的发送。另外,客户端装置在将三维地图的信息显示给用户等的情况下,判断为需要到稀疏
的三维点为止的解码结果作为属性信息,向服务器请求包含位置信息和从lod的上位层lod0到m个(m<n)lod的属性信息的三维地图b的比特流的发送。然后,服务器根据来自客户端装置的地图信息的发送请求,将编码后的三维地图a或者三维地图b的比特流发送到客户端装置。客户端装置接收根据客户端装置的用途从服务器发送的三维地图a或三维地图b的比特流,对该比特流进行解码。这样,服务器根据客户端装置的用途切换要发送的比特流。由此,能够削减客户端装置的处理负荷。在图129所示的例子中,服务器保持三维地图a以及三维地图b。服务器例如用八叉树对三维地图的位置信息进行编码,用n个lod对三维地图的属性信息进行编码,由此生成三维地图a。即,三维地图a的比特流中包含的numlod表示n。另外,服务器例如用八叉树对三维地图的位置信息进行编码,用m个lod对三维地图的属性信息进行编码,由此生成三维地图b。即,三维地图b的比特流中包含的numlod表示m。客户端装置a进行高精度的自身位置推定。在该情况下,客户端装置a判断为需要全部的位置信息和属性信息,向服务器发送包含全部的位置信息和由n个lod构成的属性信息的三维地图a的发送请求。客户端装置a接收三维地图a,对全部的位置信息和由n个lod构成的属性信息进行解码。客户端装置b向用户显示三维地图。在该情况下,客户端装置b判断为需要位置信息和m个(m<n)lod的属性信息,将包含全部的位置信息和由m个lod构成的属性信息的三维地图b的发送请求发送到服务器。客户端装置b接收三维地图b,对全部的位置信息和由m个lod构成的属性信息进行解码。另外,服务器(三维数据编码装置)除了三维地图b以外,也可以事先对将剩余的n-m个lod的属性信息进行编码而得到的三维地图c进行编码,根据客户端装置b的要求将三维地图c发送到客户端装置b。另外,客户端装置b也可以使用三维地图b和三维地图c的比特流,得到n个lod的解码结果。以下,对应用处理的例子进行说明。图130是表示应用处理的例子的流程图。当开始应用操作时,三维数据逆复用装置取得包含点群数据以及多个编码数据的isobmff文件(s7301)。例如,三维数据逆复用装置既可以通过通信取得isobmff文件,也可以从蓄积的数据中读入isobmff文件。接着,三维数据逆复用装置解析isobmff文件中的整体结构信息,特定应用中使用的数据(s7302)。例如,三维数据逆复用装置取得处理中使用的数据,不取得处理中不使用的数据。接着,三维数据逆复用装置提取应用中使用的1个以上的数据,解析该数据的结构信息(s7303)。在数据的类型是编码数据的情况下(步骤s7304中的编码数据),三维数据逆复用装置将isobmff变换成编码流,并且提取时间戳(步骤s7305)。另外,三维数据逆复用装置例如也可以参照表示数据间是否同步的标志来判定数据间是否同步,如果不同步,则进行同步处理。接着,三维数据逆复用装置按照时间戳及其他指示,按照规定的方法对数据进行
解码,对解码后的数据进行处理(s7306)。另一方面,在数据的类别是编码数据的情况下(s7304中raw数据),三维数据逆复用装置提取数据和时间戳(s7307)。另外,三维数据逆复用装置例如也可以参照表示数据间是否同步的标志来判定数据间是否同步,如果不同步,则进行同步处理。接着,三维数据逆复用装置按照时间戳及其他指示,对数据进行处理(s7308)。例如,说明光束lidar、泛光式lidar、以及由相机取得的传感器信号分别以不同的编码方式进行编码以及复用的情况的例子。图131是表示光束lidar、泛光式lidar以及相机的传感器范围的例子的图。例如,光束lidar检测车辆(传感器)的周围的全部方向,泛光式lidar及相机检测车辆的一个方向(例如前方)的范围。在将lidar点群合并处理的应用的情况下,三维数据逆复用装置参照整体结构信息,提取光束lidar和泛光式lidar的编码数据进行解码。另外,三维数据逆复用装置不提取相机影像。三维数据逆复用装置按照lidar和泛光式lidar的时间戳,同时处理同一时间戳的时刻各自的编码数据。例如,三维数据逆复用装置也可以通过提示装置提示处理后的数据,或者合成光束lidar和泛光式lidar的点群数据,或者进行渲染等处理。另外,在数据间进行校准的应用的情况下,三维数据逆复用装置也可以提取传感器位置信息并在应用中使用。例如,三维数据逆复用装置可以在应用中选择使用光束lidar信息还是使用泛光式lidar,并根据选择结果来切换处理。这样,能够根据应用的处理而自适应地改变数据的取得以及编码处理,因此能够削减处理量以及消耗电力。以下,对自动驾驶中的使用情况进行说明。图132是表示自动驾驶系统的结构例的图。该自动驾驶系统包括云服务器7350和车载装置或移动装置等的边缘7360。云服务器7350具备逆复用部7351、解码部7352a、7352b以及7355、点群数据合成部7353、大规模数据蓄积部7354、比较部7356以及编码部7357。边缘7360具备传感器7361a及7361b、点群数据生成部7362a及7362b、同步部7363、编码部7364a及7364b、复用部7365、更新数据蓄积部7366、逆复用部7367、解码部7368、滤波器7369、自身位置推定部7370、以及驾驶控制部7371。在该系统中,边缘7360下载云服务器7350中蓄积的大规模点群地图数据即大规模数据。边缘7360通过将大规模数据和在边缘7360得到的传感器信息进行匹配,进行边缘7360(车辆或终端)的自身位置推定处理。另外,边缘7360将取得的传感器信息上载到云服务器7350,将大规模数据更新为最新的地图数据。另外,在处理系统内的点群数据的各种应用中,处理编码方法不同的点群数据。云服务器7350对大规模数据进行编码及复用。具体而言,编码部7357使用适于对大规模点群进行编码的第3编码方法进行编码。此外,编码部7357对编码数据进行复用。大规模数据蓄积部7354蓄积由编码部7357进行编码及复用后的数据。边缘7360进行感测。具体而言,点群数据生成部7362a使用由传感器7361a取得的感测信息,生成第1点群数据(位置信息(几何)以及属性信息)。点群数据生成部7362b使用由传感器7361b取得的感测信息,生成第2点群数据(位置信息以及属性信息)。生成的第1点
群数据以及第2点群数据用于自动驾驶的自身位置推定或者车辆控制或者地图更新。在各个处理中,也可以使用第1点群数据以及第2点群数据中的一部分信息。边缘7360进行自身位置推定。具体而言,边缘7360从云服务器7350下载大规模数据。逆复用部7367通过对文件格式的大规模数据进行逆复用而取得编码数据。解码部7368通过对所取得的编码数据进行解码而取得作为大规模点群地图数据的大规模数据。自身位置推定部7370通过将取得的大规模数据与由点群数据生成部7362a和7362b生成的第1点群数据以及第2点群数据进行匹配,来推定车辆的地图中的自身位置。另外,驾驶控制部7371将该匹配结果或自身位置推定结果用于驾驶控制。另外,自身位置推定部7370以及驾驶控制部7371也可以提取大规模数据中的位置信息等特定的信息,并使用提取出的信息进行处理。另外,滤波器7369对第1点群数据以及第2点群数据进行修正或间隔剔除等处理。自身位置推定部7370以及驾驶控制部7371也可以使用进行了该处理后的第1点群数据以及第2点群数据。另外,自身位置推定部7370及驾驶控制部7371也可以使用由传感器7361a及7361b得到的传感器信号。同步部7363进行多个传感器信号或多个点群数据的数据间的时间同步及位置修正。另外,同步部7363也可以基于通过自身位置推定处理而生成的、大规模数据与传感器数据的位置修正信息,以使传感器信号或者点群数据的位置信息与大规模数据一致的方式进行修正。另外,同步和位置修正也可以不是边缘7360而是由云服务器7350进行。在该情况下,边缘7360也可以将同步信息以及位置信息复用并发送到云服务器7350。边缘7360对传感器信号或点群数据进行编码及复用。具体而言,传感器信号或点群数据使用适于对各自的信号进行编码的第1编码方法或第2编码方法进行编码。例如,编码部7364a通过使用第1编码方法对第1点群数据进行编码来生成第1编码数据。编码部7364b使用第2编码方法对第2点群数据进行编码,由此生成第2编码数据。复用部7365通过对第1编码数据、第2编码数据、以及同步信息等进行复用而生成复用信号。更新数据蓄积部7366蓄积所生成的复用信号。此外,更新数据蓄积部7366将复用信号上载到云服务器7350。云服务器7350对点群数据进行合成。具体而言,逆复用部7351通过对在云服务器7350上载的复用信号进行逆复用而取得第1编码数据和第2编码数据。解码部7352a通过对第1编码数据进行解码而取得第1点群数据(或传感器信号)。解码部7352b通过对第2编码数据进行解码而取得第2点群数据(或传感器信号)。点群数据合成部7353通过规定的方法合成第1点群数据以及第2点群数据。在复用信号中对同步信息以及位置修正信息进行复用的情况下,点群数据合成部7353也可以使用这些信息进行合成。解码部7355对蓄积在大规模数据蓄积部7354中的大规模数据进行逆复用和解码。比较部7356将基于由边缘7360得到的传感器信号而生成的点群数据与云服务器7350所具有的大规模数据进行比较,判断需要更新的点群数据。比较部7356将大规模数据中判断为需要更新的点群数据更新为从边缘7360得到的点群数据。编码部7357对更新后的大规模数据进行编码及复用,将得到的数据蓄积在大规模数据蓄积部7354中。
如上所述,根据所使用的用途或应用,存在处理信号不同、复用的信号或编码方法不同的情况。即使在这样的情况下,通过使用本实施方式对各种编码方式的数据进行复用,也能够进行灵活的解码以及应用处理。另外,即使在信号的编码方式不同的情况下,也能够通过逆复用、解码、数据变换、编码、复用的处理而变换适合的编码方式,由此构建各种各样的应用、系统,提供灵活的服务。以下,说明分割数据的解码和应用的例子。首先,说明分割数据的信息。图133是表示比特流的结构例的图。分割数据的整体信息按每个分割数据表示该分割数据的传感器id(sensor_id)和数据id(data_id)。另外,数据id也表示在各编码数据的头中。此外,与图31同样,图133所示的分割数据的整体信息除了传感器id之外,还可以包含传感器信息(sensor)、传感器的版本(version)、传感器的制造商名(maker)、传感器的设置信息(mount info.)和传感器的位置坐标(world coordinate)中的至少一个。由此,三维数据解码装置能够从结构信息中取得各种传感器的信息。分割数据的整体信息可以保存在作为元数据的sps、gps或aps中,也可以保存在作为对于编码不是必需的元数据的sei中。此外,三维数据编码装置在复用时将该sei保存在isobmff的文件中。三维数据解码装置能够基于该元数据取得希望的分割数据。在图133中,sps是编码数据整体的元数据,gps是位置信息的元数据,aps是每个属性信息的元数据,g是每个分割数据的位置信息的编码数据,a1等是每个分割数据的属性信息的编码数据。接下来,说明分割数据的应用例。说明从点群数据中选择任意点群并提示所选择的点群的应用的例子。图134是由该应用执行的点群选择处理的流程图。图135~图137是表示点群选择处理的画面例的图。如图135所示,执行应用的三维数据解码装置例如具有显示用于选择任意点群的输入ui(用户界面)8661的ui部。输入ui8661具有提示所选择的点群的提示部8662和受理用户的操作的操作部(按钮8663和8664)。三维数据解码装置在由ui8661选择了点群后,从蓄积部8665取得期望的数据。首先,基于针对用户的输入ui8661的操作,选择用户想要显示的点群信息(s8631)。具体而言,通过选择按钮8663,选择基于传感器1的点群。通过选择按钮8664,选择基于传感器2的点群。或者,通过选择按钮8663及按钮8664这两者来选择基于传感器1的点群和基于传感器2的点群这两者。另外,点群的选择方法是一例,并不限于此。接着,三维数据解码装置对复用信号(比特流)或编码数据中包含的分割数据的整体信息进行解析,从所选择的传感器的传感器id(sensor_id)中特定构成所选择的点群的分割数据的数据id(data_id)(s8632)。接着,三维数据解码装置从复用信号中提取包含所特定的希望的数据id的编码数据,通过对所提取的编码数据进行解码,对基于所选择的传感器的点群进行解码(s8633)。另外,三维数据解码装置不对其他编码数据进行解码。最后,三维数据解码装置提示(例如显示)解码后的点群(s8634)。图136表示按下传感器1的按钮8663的情况的例子,提示传感器1的点群。图137表示按下传感器1的按钮8663和传感器2的按钮8664这两者的情况的例子,提示传感器1和传感器2的点群。
903.以上,对有关本发明的实施方式的三维数据编码装置及三维数据解码装置等进行了说明,但本发明并不限定于该实施方式。
此外,有关上述实施方式的三维数据编码装置及三维数据解码装置等中包含的各处理部典型的是作为集成电路即lsi实现。它们既可以单独地形成1个芯片,也可以包含一部分或全部而形成1个芯片。此外,集成电路化并不限于lsi,也可以由专用电路或通用处理器实现。也可以利用在lsi制造后能够编程的fpga(field programmable gate array现场可编程门阵列)、或能够重构lsi内部的电路单元的连接或设定的可重构处理器。此外,在上述各实施方式中,各构成要素也可以由专用的硬件构成,或通过执行适合于各构成要素的软件程序来实现。各构成要素也可以通过由cpu或处理器等程序执行部读出被记录在硬盘或半导体存储器等记录介质中的软件程序并执行来实现。此外,本发明也可以作为由三维数据编码装置及三维数据解码装置等执行的三维数据编码方法或三维数据解码方法等实现。此外,框图中的功能块的分割是一例,也可以将多个功能块作为一个功能块实现,或将一个功能块分割为多个,或将一部分功能转移到其他的功能块。此外,也可以是单一的硬件或软件将具有类似的功能的多个功能块的功能并行或分时地处理。此外,流程图中的各步骤的执行顺序是为了具体地说明本发明而例示的,也可以是上述以外的顺序。此外,也可以将上述步骤的一部分与其他步骤同时(并行)执行。以上,基于实施方式对有关一个或多个技术方案的三维数据编码装置及三维数据解码装置等进行了说明,但本发明并不限定于该实施方式。只要不脱离本发明的主旨,对本实施方式施以本领域技术人员想到的各种变形的形态、或将不同实施方式的构成要素组合而构建的形态也可以包含在一个或多个技术方案的范围内。产业上的可利用性本发明能够适用于三维数据编码装置及三维数据解码装置。附图标记说明810 三维数据制作装置811 数据接收部812、819 通信部813 接收控制部814、821 格式变换部815 传感器816 三维数据制作部817 三维数据合成部818 三维数据蓄积部820 发送控制部822 数据发送部831、832、834、835、836、837 三维数据833 传感器信息901 服务器902、902a、902b、902c 客户端装置1011、1111 数据接收部
1012、1020、1112、1120 通信部1013、1113 接收控制部1014、1019、1114、1119 格式变换部1015 传感器1016、1116 三维数据制作部1017 三维图像处理部1018、1118 三维数据蓄积部1021、1121 发送控制部1022、1122 数据发送部1031、1032、1135 三维地图1033、1037、1132 传感器信息1034、1035、1134 三维数据1117 三维数据合成部1201 三维地图压缩/解码处理部1202 传感器信息压缩/解码处理部1211 三维地图解码处理部1212 传感器信息压缩处理部2001 服务器2002、2002a、2002b 客户端装置2011 传感器信息取得部2012 存储部2013 数据发送可否判定部2021、2021a、2021b 终端2022、2022a、2022b 通信装置2023 网络2024 数据收集服务器2025 地图服务器2026 客户端装置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 切片结合部5051 瓦片分割部5052 编码部5053 解码部5054 瓦片结合部7350 云服务器7351 逆复用部7352a、7352 b解码部7353 点群数据合成部7354 大规模数据蓄积部7355 解码部7356 比较部7357 编码部7360 边缘7361a、7361b 传感器7362a、7362b 点群数据生成部7363 同步部7364a、7364b 编码部7365 复用部7366 更新数据蓄积部7367 逆复用部7368 解码部7369 滤波器7370 自身位置推定部7371 运转控制部8661 输入ui8662 提示部8663、8664 按钮
8665 蓄积部8801 编码部8802 文件变换部8811 文件逆变换部8812 解码部8821 送出部8822 提取部8823 接收部9600 三维数据编码装置9601 判定部9602 变换部9603 编码部9610 三维数据解码装置9611 判定部9612 解码部
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献