信息处理设备、信息处理方法和程序与流程
未命名
10-19
阅读:54
评论:0
1.本公开涉及生成虚拟视点图像的技术。
背景技术:
2.近年来,已关注使用布置在摄像区域周围的多个摄像设备来进行被摄体的摄像、并使用从摄像设备获取的多个拍摄图像来生成从指定视点(虚拟视点)观看的图像(虚拟视点图像)的技术。因为该技术使得用户能够从各种角度观看例如足球或篮球的精彩场景,所以与通常图像相比,该技术能够使得用户感觉到高真实感。
3.专利文献1讨论了用于生成包括指示三维位置的多个点的点云数据作为用于指示被摄体的形状的三维形状数据的系统。另外,专利文献1中讨论的系统通过使用所生成的点云数据进行渲染处理来生成从任意视点观看的图像(虚拟视点图像)。
4.专利文献2讨论了基于由rgb-d照相机所获取的信息来恢复宽范围的三维模型的技术,其中该宽范围不仅包括对象的正面区域而且还包括侧面区域。根据专利文献2,基于深度图的深度数据来提取对象区域,并且基于深度数据来生成对象的三维表面模型。另外,根据专利文献2,通过利用使用三维表面模型所生成的三维网格模型进行渲染处理,来生成虚拟视点图像。
5.引文列表
6.专利文献
7.专利文献1:国际公开wo 2018/147329
8.专利文献2:日本特开2016-71645
技术实现要素:
9.发明要解决的问题
10.如上所述,存在多个虚拟视点图像生成方法,并且各个生成方法中所要使用的数据不同。因此,在输出到用于执行与虚拟视点图像的生成相关的处理的设备的数据是输出目的地设备所不支持的数据的情况下,处理可能无法适当地执行。
11.本公开是鉴于上述问题而设计的。本公开的目的是使得能够输出由数据的输出目的地设备可处理的与虚拟视点图像的生成相关的素材数据。
12.用于解决问题的方案
13.根据本公开的信息处理设备包括:获取单元,其被配置为获取要用于虚拟视点图像的生成的素材数据,所述虚拟视点图像基于通过多个摄像设备进行被摄体的摄像所获得的多个拍摄图像,所述素材数据是由第一格式表示的素材数据;转换单元,其被配置为基于用于识别作为所述素材数据的输出目的地的不同设备能够处理的素材数据格式的信息,将所述获取单元所获取的素材数据的格式从所述第一格式转换为第二格式;以及输出单元,其被配置为将被所述转换单元转换为所述第二格式的素材数据输出到所述不同设备。
14.发明的效果
15.根据本公开,变得可以输出数据的输出目的地设备可处理的与虚拟视点图像的生成相关的素材数据。
附图说明
16.图1是示出信息处理设备的硬件配置示例的框图。
17.图2是示出包括根据第一示例性实施例的信息处理设备的虚拟视点图像生成系统的配置的示例的图。
18.图3示出要存储到存储单元中的素材数据的数据结构的示例。
19.图4示出要存储到存储单元中的素材数据的数据结构的示例。
20.图5示出要存储到存储单元中的素材数据的数据结构的示例。
21.图6示出要存储到存储单元中的素材数据的数据结构的示例。
22.图7示出要存储到存储单元中的素材数据的数据结构的示例。
23.图8示出要存储到存储单元中的素材数据的数据结构的示例。
24.图9示出要存储到存储单元中的素材数据的数据结构的示例。
25.图10a示出用于识别转换处理的信息的示例。
26.图10b示出用于识别转换处理的信息的示例。
27.图11是示出根据第一示例性实施例的虚拟视点图像生成系统所要进行的处理的示例的流程图。
28.图12示出要存储到存储单元中的素材数据的数据结构的示例。
29.图13示出要存储到存储单元中的素材数据的数据结构的示例。
30.图14a示出要存储到存储单元中的素材数据的数据结构的示例。
31.图14b示出要存储到存储单元中的素材数据的数据结构的示例。
32.图14c示出要存储到存储单元中的素材数据的数据结构的示例。
33.图15示出要存储到存储单元中的素材数据的数据结构的示例。
34.图16示出要存储到存储单元中的素材数据的数据结构的示例。
35.图17是示出包括根据第二示例性实施例的信息处理设备的虚拟视点图像生成系统的配置的示例的图。
36.图18是示出根据第二示例性实施例的虚拟视点图像生成系统所要进行的处理的示例的流程图。
具体实施方式
37.在下文中,将参考附图描述本公开的示例性实施例。以下示例性实施例中所要描述的组件仅仅指示示例性实施例的示例,而不旨在将本公开限制为这些组件。
38.(第一示例性实施例)
39.在本示例性实施例中,将给出如下信息处理设备的描述,该信息处理设备用于向显示装置输出要用于虚拟视点图像的生成的数据(在下文中将被称为素材数据),该虚拟视点图像基于通过多个摄像设备进行被摄体的摄像所获得的多个拍摄图像。
40.图1是示出可适用于根据本示例性实施例的信息处理设备的计算机的硬件的配置示例的框图。信息处理设备包括中央处理单元(cpu)1601、随机存取存储器(ram)1602、只读
存储器(rom)1603、操作单元1604、输出单元1605、外部存储装置1606、接口(i/f)1607和总线1608。图1所示的硬件配置可适用于以下将要描述的虚拟视点图像生成系统中所包括的任何设备。
41.cpu 1601使用存储在ram 1602和rom 1603中的计算机程序和数据来控制整个计算机。ram 1602包括用于临时存储从外部存储装置806加载的计算机程序和数据、以及经由i/f 1607从外部获取的数据等的区。此外,ram 1602包括在cpu 1601执行各种类型的处理时所要使用的工作区。换句话说,ram 1602例如可以作为帧存储器来分配,或可以适当地提供其他各种区。
42.rom 1603存储该设备的设置数据和引导程序等。操作单元1604包括诸如键盘、鼠标和操纵杆等的输入装置。基于使用这些输入装置而进行的用户操作,可以将各种指令输入到cpu 1601。输出单元1605输出cpu 1601所获得的处理结果。输出单元1605例如包括液晶显示器等。
43.外部存储装置1606可以是以硬盘驱动装置为代表的信息存储装置。外部存储装置1606存储操作系统(os)和用于使得cpu 1601实现根据本示例性实施例的设备中所包括的各个处理单元的功能的计算机程序。根据cpu 1601所执行的控制,存储在外部存储装置1606中的计算机程序和数据被适当地加载到ram 802上以由cpu 1601进行处理。此外,外部存储装置1606可以存储要处理的各个图像数据和在处理中要使用的各种类型的信息。
44.诸如局域网(lan)或因特网等的网络以及诸如投影装置和显示装置等的其他装置可以连接到i/f 1607。该计算机可以经由i/f 1607获取和发送各种类型的信息。例如,在信息处理设备200以有线方式与外部设备连接的情况下,通信用的线缆连接到通信i/f 1607。在信息处理设备包括与外部设备无线通信的功能的情况下,通信i/f 1607包括天线。总线1608是用于连接上述组件的总线。
45.上述组件中的至少任意组件都可以作为不同设备连接到信息处理设备的外部。这同样适用于下面将要描述的虚拟视点图像生成系统中所包括的所有设备。
46.《虚拟视点图像生成系统的配置》
47.接下来,将描述根据本示例性实施例的虚拟视点图像生成系统的配置。根据本示例性实施例的虚拟视点图像也被称为自由视点图像,但是虚拟视点图像不限于与用户自由(任意)指定的视点相对应的图像。例如,与用户从多个候选中选择的视点相对应的图像等也被包括在虚拟视点图像中。在本示例性实施例中,将主要给出基于用户操作来进行虚拟视点的指定的情况的描述,但是可以基于图像分析的结果等来自动进行虚拟视点的指定。另外,在本示例性实施例中,将主要给出虚拟视点图像是运动图像的情况的描述,但虚拟视点图像可以是静止图像。
48.图2是示出虚拟视点图像生成系统1的配置的图。虚拟视点图像生成系统1例如使用安装在诸如运动场(体育场)或音乐厅等的设施中的多个摄像设备来进行被摄体的摄像,并且基于所获得的多个拍摄图像来生成用于生成虚拟视点图像的数据(素材数据)。虚拟视点图像生成系统1包括照相机101a至101z、输入单元102、累积单元103、素材数据生成单元104、信息处理设备100和终端109a至109d。下面将描述信息处理设备100的功能配置。
49.照相机101a至101z以使得围绕被摄体的方式来布置,并且同步地进行摄像。然而,照相机的数量不限于图2所示的数量。照相机101a至101z经由网络连接,并且连接到输入单
元102。照相机101a至101z同步地进行摄像。换句话说,在相等的时间获取照相机101a至101z所拍摄的拍摄图像的帧。与摄像时间有关的时间信息和帧号被分配给所获取的拍摄图像,并且将拍摄图像发送到输入单元102。可以使用任意格式的时间信息。另外,照相机id被分配给各个照相机,并且与照相机id有关的信息被分配给相应照相机所获取的拍摄图像。在以下描述中,在没有理由将照相机101a至101z彼此区分开的情况下,照相机101a至101z将被简单描述为照相机101。
50.输入单元102输入通过照相机101a至101z所进行的摄像而获得的图像数据,并且将该图像数据输出到累积单元103。累积单元103是用于对所输入的图像数据进行一次累积的累积单元。
51.素材数据生成单元104使用累积单元103中所累积的图像数据来生成要用于虚拟视点图像的生成的素材数据。根据本示例性实施例的素材数据是用于生成虚拟视点图像的数据,并且是指基于拍摄图像所生成的数据。素材数据例如包括从拍摄图像中提取的前景图像和背景图像的数据、表示三维空间中的被摄体的形状的模型(在下文中也被称为三维形状数据)、以及用于对三维形状数据进行着色的纹理数据等。根据本示例性实施例的素材数据生成单元104生成以虚拟视点图像生成系统1所预设的格式的素材数据。
52.终端109a至109d是用于从下面将要描述的信息处理设备100获取素材数据、并基于该素材数据来生成和显示虚拟视点图像的显示装置。终端109a至109d例如可以是个人计算机(pc)、智能电话和平板电脑等。在以下描述中,在没有理由将终端109a至109d彼此区分开的情况下,终端109a至109d将被简单描述为终端109。
53.接下来,将参考图2描述虚拟视点图像生成系统1中所包括的信息处理设备100的功能配置。信息处理设备100包括获取单元105、存储单元106、转换单元107和发送/接收单元108。
54.获取单元105获取素材数据并将所获取的素材数据存储到存储单元108中。根据本示例性实施例的获取单元105从虚拟视点图像生成系统1中的素材数据生成单元104获取素材数据。当获取单元105存储所获取的素材数据时,获取单元105以预定形式(格式)存储素材数据。例如,通过生成用于读出数据的数据访问的表,以使得能够与时间信息和帧号等相关联地读取或写入数据的格式来存储素材数据。下面将描述可以由获取单元105获取的素材数据的种类以及要存储的素材数据的格式。
55.存储单元106存储所输入的素材数据。存储单元106与图1所示的外部存储装置1606相对应,并且包括半导体存储器和磁记录装置等。基于来自获取单元105的指令来写入或读出数据,并且根据所读出的指令将所写入的数据输出到发送/接收单元108。
56.转换单元107进行将存储单元106中所存储的素材数据的格式转换为作为素材数据的输出目的地的终端109可处理的格式的处理。下面将描述转换处理。发送/接收单元108与终端109通信并进行相对于终端的请求和数据的发送和接收。终端109a至109d从信息处理设备100获取素材数据。另外,终端109a至109d接收用户所进行的虚拟视点指定操作,并且基于素材数据来生成与所指定的虚拟视点相对应的虚拟视点图像。另外,终端109a至109d显示所生成的虚拟视点图像。在本示例性实施例中,终端109a使用前景图像和点云数据来生成虚拟视点图像。另外,终端109b使用着色点云数据来生成虚拟视点图像。另外,终端109c使用前景图像和距离图像来生成虚拟视点图像。另外,终端109d使用网格数据来生
成虚拟视点图像。
57.这里,要用于虚拟视点图像的生成的素材数据有时根据如上所述的虚拟视点图像生成方法而变化。要使用的素材数据变化的原因例如可能在于,终端所采用的虚拟视点图像生成方法以及终端所使用的虚拟视点图像生成用的软件的类型变化。另外,另一原因在于,终端可管理的素材数据的格式变化。此外,另一原因还在于,终端的显示能力或处理能力以如下的方式进行变化:终端无法显示基于点云数据的虚拟视点图像,而终端能够显示基于网格数据的虚拟视点图像。这些原因可能导致这样的问题:即使将与终端无法显示的虚拟视点图像相对应的素材数据输出到终端,该终端也无法生成虚拟视点图像。为了解决该问题,根据本示例性实施例的信息处理设备100将所获取的素材数据的格式转换为作为该素材数据的输出目的地的终端109可处理的格式,并且将转换后的素材数据输出到终端109。
58.《素材数据的种类和格式的示例》
59.将描述根据本示例性实施例的信息处理设备100的获取单元105能够获取的素材数据的种类。因为根据本示例性实施例的获取单元105获取素材数据生成单元104所生成的素材数据,因此下面将描述素材数据生成单元104所要生成的素材数据以及该素材数据的生成方法。下面要描述的素材数据的种类是示例,并且可以生成除以下素材数据之外的素材数据。
60.首先,将描述素材数据生成单元104生成指示被摄体的三维形状的点云数据和前景图像作为素材数据的情况。这里,前景图像是从拍摄图像中提取的与对象(例如,选手或球等)相对应的区域的图像。素材数据生成单元104拍摄不包括被摄体的图像作为基准图像,并且例如使用与所输入的图像数据(拍摄图像)的差来提取与被摄体相对应的区域。另外,素材数据生成单元104基于被摄体区域的提取结果,来生成与被摄体相对应的区域的像素值被设置为1且其他区域的像素值被设置为0的剪影图像。
61.此外,素材数据生成单元104使用所生成的剪影图像、利用shape-from-silhouette(剪影形状)来生成点云数据。所生成的点云数据是通过多个点的集合来指示被摄体的三维形状的数据,其中多个点各自具有与三维空间中的坐标有关的信息。另外,素材数据生成单元104获得所提取的被摄体区域的外接矩形,裁剪拍摄图像中与该外接矩形相对应的区域,并生成该区域的图像作为前景图像。前景图像被用作用于在生成虚拟视点图像时对三维形状数据进行着色的纹理数据。点云数据和前景图像的生成方法不限于上述方法,并且可以使用任意生成方法。
62.接下来,将描述素材数据生成单元104生成包括表示被摄体的三维形状的点云和指示被摄体的颜色的信息的数据(在下文中被称为着色点云数据)作为素材数据的情况。可以使用利用上述方法所生成的点云数据以及从累加单元103获取的各个照相机101的拍摄图像或前景图像来生成着色点云数据。素材数据生成单元104针对点云数据中所包括的各点来识别用于拍摄与点相对应的三维位置的图像的照相机101所获取的拍摄图像的颜色(像素值)。通过将所识别的颜色与点相关联,素材数据生成单元104可以生成作为包括颜色信息的点云数据的着色点云数据。
63.接下来,将描述素材数据生成单元104生成指示从各个照相机101到被摄体的距离的距离图像作为素材数据的情况。素材数据生成单元104通过使用例如立体匹配方法
(stereo matching method)等计算多个拍摄图像之间的视差并根据该视差的数据确定距离图像的像素值,来生成距离图像。距离图像的生成方法不限于此。例如,素材数据生成单元104可以通过使用利用上述方法所生成的点云数据获得从点云数据中的点的三维位置到各个照相机101的距离,来生成距离图像。另外,素材数据生成单元104可以使用包括红外传感器等的距离照相机来单独获取距离图像。
64.接下来,将描述素材数据生成单元104生成指示被摄体的三维形状的网格数据作为素材数据的情况。例如使用专利文献2中讨论的方法,素材数据生成单元104生成作为多个多边形的集合的网格数据。在使用该方法时,使用上述方法所生成的距离图像数据被用作深度图。网格数据的生成方法不限于此。例如,素材数据生成单元104可以通过转换使用上述方法所生成的点云数据和着色点云数据等来生成网格数据。
65.接下来,将描述素材数据生成单元104生成指示被摄体的概览的布告板数据的情况。布告板数据是通过使用前景图像对板状多边形进行着色而获得的数据。在素材数据生成单元104生成布告板数据的情况下,素材数据生成单元104生成板状多边形和使用上述方法所得的前景图像。
66.素材数据生成单元104所进行的上述处理的一部分可以由诸如摄像设备和下面将描述的信息处理设备100等的不同设备来进行。例如,可以由照相机101来进行在生成点云数据的情况下要进行的剪影图像和/或前景图像的生成处理。在这种情况下,照相机101将诸如时间信息、帧号和照相机id等的各种类型的信息分配给基于拍摄图像所生成的剪影图像和/或前景图像,并将该剪影图像和/或前景图像发送到输入单元102。
67.接下来,下面将描述在存储上述素材数据时所使用的素材数据的格式的示例。素材数据生成单元104所生成的素材数据由获取单元105获取,并且以下面要描述的格式存储到存储单元106中。
68.图3示出要存储在存储单元106中的素材数据的形式的示例。如图3的(a)所示,素材数据被存储为与一个组相对应的序列。例如,可以针对已进行摄像的各个时段、以及针对已进行摄像的各个比赛、以及还针对在比赛期间出现了的各个比赛项目(event)或中断(cut),来生成序列。存储单元106管理各个序列的数据。各个序列包括序列头部(sequence header)。如图3的(b)所示,在序列头部中存储用于指示序列的开始的序列头部起始码(sequence header start code)。随后,存储与整个序列有关的信息。例如,存储序列的名称、摄像位置、指示已开始摄像的日期和时间或时间等的时间信息、帧频和图像大小。作为序列的名称,例如,描述诸如比赛或比赛项目的名称等的用于识别序列的信息。
69.在序列中,针对被称为数据集(data set)的各个单元来存储素材数据。在序列头部中,描述数据集的数量(number of data set)m。此后,存储与各个数据集有关的信息。在与各个数据集有关的信息中,最初分配相应数据集的标识id。作为标识id,分配在存储单元106中的数据集或所有数据集中的唯一id。随后,存储数据集的种类。在图3的(a)所示的示例中,点云数据、前景图像、着色点云数据、距离图像数据和网格数据作为数据集被包括在序列中,但不是所有这些数据集都总是被包括在序列中。在本示例性实施例中,获取单元105所获取的素材数据作为数据集被包括在序列中。例如,在获取单元105获取点云数据和前景图像数据的情况下,序列包括点云数据和前景图像数据的数据集。序列中所包括的各个数据集由数据集类别代码(data set class code)表示。数据集类别代码被表示为图3的
(e)所示的两字节代码。然而,数据和代码的种类不限于这些。数据可以是指示三维形状数据的另一种数据。随后,存储指向数据集的指针。然而,指针仅需要是用于访问各个数据集的信息,并且这样的信息不限于指针。例如,可以在存储单元中构建文件系统,并且可以使用文件名来代替指针。
70.接下来,将描述序列中所包括的各个数据集的格式。在本示例性实施例中,将使用点云数据、前景图像、着色点云数据、距离图像数据、网格数据和布告板数据作为各种数据集的示例来给出描述。
71.图4示出前景图像数据集的配置的示例。为了解释方便,针对各帧来存储前景图像数据集中的数据,但数据结构不限于此。如图4的(a)所示,前景图像数据头部被存储在数据集的开头处。指示该数据集是前景图像的数据集的信息和帧数等被存储在头部中。
72.图4的(b)示出各帧中所包括的信息。在各帧中,存储用于指示前景图像数据的最前帧的时间的时间信息(time information)和帧的数据大小(data size)。数据大小是用于参考下一帧的数据的信息,并且可以与上述信息一起存储在头部中。随后,存储用于在时间信息所指示的时间处生成虚拟视点图像的被摄体数量(number of object(对象数量))p。此外,存储在该时间点的摄像中使用的照相机数量(number of camera)c。随后,存储所使用的照相机的照相机id(camera id of cth camera(第c照相机的照相机id))。随后,针对各个被摄体存储包括被摄体的前景图像的图像数据(第c照相机的第一前景图像(1st foreground image of cth camera))。如图4的(c)所示,前景图像的数据大小、前景图像的大小、各个像素值的位深度和像素值按光栅顺序存储在图像数据的顶部。此后,针对各个被摄体连续存储来自各个照相机的前景图像数据。在照相机所拍摄的图像中不包括被摄体的情况下,可以写入空数据(null data),或可以针对各个被摄体存储已对被摄体进行摄像的照相机的数量以及相应的照相机id。
73.图5示出点云数据的数据集的配置的示例。为了解释方便,针对各帧存储点云数据集中的数据,但数据结构不限于此。点云数据头部被存储在数据集的开头处。如图5的(a)所示,用于指示该数据集是点云数据的数据集的信息和帧数等存储在头部中。
74.图5的(b)示出各帧中所包括的信息。在各帧中,存储用于指示帧的时间的时间信息(time information)。随后,存储帧的数据大小(data size)。数据大小是用于参考下一帧的数据的信息,并且可以与上述信息一起存储在头部中。随后,存储时间信息所指示的时间处的被摄体数量(即点云数据的数量)(number of object)p。此后,按顺序存储与各个被摄体相对应的点云数据。首先,存储第一被摄体的点云中所包括的坐标点数(第一对象中的点数(number of points in 1st object))。此后,存储点的坐标(第一对象中的点坐标(point coordination in 1st object))。此后,类似地存储在与时间信息相对应的时间处包括的所有被摄体的点云数据。
75.在本示例性实施例中,存储坐标系作为三轴数据,但坐标系不限于此,并且可以使用极坐标或其他坐标系。可以将坐标值的数据长度描述为点云数据头部中的固定值,或者可以设置针对各个点云而变化的数据长度。在数据长度针对各个点云而变化的情况下,针对各个点云存储数据大小。通过参考数据大小,可以基于坐标点数来识别下一点云的存储位置。
76.图6示出着色点云数据的数据集的配置的示例。为了解释方便,针对各帧来存储着
色点云数据集中的数据,但数据结构不限于此。着色点云数据头部存储在数据集的开头处。如图6的(a)所示,指示该数据集是着色点云数据的数据集的信息和帧数等被存储在头部中。
77.图6的(b)示出各帧中所包括的信息。在各帧中,在点云数据的各帧中,存储用于指示帧的时间的时间信息(time information)。随后,存储帧的数据大小(data size)。数据大小是用于参考下一帧的数据的信息,并且可以与上述信息一起存储在头部中。随后,存储时间信息所指示的时间处的被摄体数量(即着色点云数据的数量)(number of object)p。此后,按顺序存储各个被摄体的着色点云数据。首先,存储第一被摄体的点云中所包括的坐标点数(number of points in 1st object(第一对象中的点数))。此后,存储点的坐标和点的颜色信息(point coordination in 1st object(第一对象中的点坐标))。此后,类似地存储在与时间信息相对应的时间处包括的所有被摄体的着色点云数据。
78.在本示例性实施例中,存储坐标系作为三轴数据,并且存储颜色信息作为rgb三原色的值,但坐标系和颜色信息不限于这些。坐标系可以是极坐标或其他坐标系。另外,颜色信息可以由诸如均匀颜色空间、亮度或色度等的信息来表示。另外,可以将坐标值的数据长度描述为着色点云数据头部中的固定值,或者可以设置针对各个着色点云而变化的数据长度。在数据长度针对各个着色点云而变化的情况下,针对各个点云存储数据大小。通过参考数据大小,可以基于坐标点数来识别下一着色点云的存储位置。
79.图7示出距离图像数据的数据集的配置的示例。为了解释方便,针对各帧来存储距离图像数据集中的数据,但数据结构不限于此。距离图像数据头部存储在数据集的开头处。如图7的(a)所示,指示该数据集是距离图像数据的数据集的信息和帧数等被存储在头部中。
80.图7的(b)示出各帧中所包括的信息。在各帧中,存储用于指示帧的时间的时间信息(time information)。随后,存储帧的数据大小(data size)。数据大小是用于参考下一帧的数据的信息,并且可以与上述信息一起存储在头部中。因为距离图像数据是针对各个照相机所获取的数据,所以存储在帧中使用的照相机数量(number of camera)c。随后,按顺序存储照相机id(camera id of cth camera)。随后,存储距离图像数据distance image of cth camera(第c照相机的距离图像())。如图7的(c)所示,距离图像的数据大小、距离图像的大小、各个像素值的位深度和像素值按光栅顺序存储在距离图像数据的顶部。此后,连续存储来自各个照相机的距离图像数据。在照相机所拍摄的图像中不包括被摄体的情况下,可以写入空数据,或可以针对各个被摄体仅存储已对被摄体进行摄像的照相机数量c以及相应的照相机id。
81.图8示出网格数据的数据集的配置的示例。为了解释方便,针对各帧来存储网格数据集中的数据,但数据结构不限于此。网格数据头部存储在数据集的开头处。如图8的(a)所示,指示该数据集是网格数据的数据集的信息和帧数等被存储在头部中。
82.图8的(b)示出各帧中所包括的信息。在各帧中,存储用于指示帧的时间的时间信息(time information)。随后,存储帧的数据大小(data size)。数据大小是用于参考下一帧的数据的信息,并且可以与上述信息一起存储在头部中。随后,存储被摄体数量(number of object)p。此后,存储各个被摄体的网格数据。在各个被摄体的网格数据中,网格数据中所包括的多边形数量(number of points in pth object(第p对象中的点数))存储在顶
部。此外,在各个被摄体的网格数据中,存储各个多边形的数据(即,各个多边形的顶点坐标和与各个多边形的颜色有关的信息)(polygon information in pth object(第p对象中的多边形信息))。此后,类似地存储在与时间信息相对应的时间处包括的所有被摄体的网格数据。上述网格数据是将一个颜色分配给一个多边形的网格数据,但网格数据也可以是不包括颜色信息的网格数据。在以下描述中,图8所示的网格数据将被称为着色网格数据,并且不包括颜色信息的网格数据将被简称为网格数据。在使用着色网格数据生成虚拟视点图像的情况下,与虚拟视点的位置和来自虚拟视点的眼睛方向无关地确定各个多边形的颜色。另一方面,在使用不包括颜色信息的网格数据来生成虚拟视点图像的情况下,根据虚拟视点的位置和来自虚拟视点的眼睛方向,使用前景图像对各个多边形进行着色。
83.图9示出布告板数据的数据集的配置的示例。为了解释方便,针对各帧来存储布告板数据集中的数据,但数据结构不限于此。如图9的(a)所示,布告板数据头部存储在数据集的开头处。指示该数据集是布告板数据的信息和帧数等被存储在头部中。在各帧的布告板数据中,存储用于指示帧的时间的时间信息(time information)。随后,存储帧的数据大小(data size)。此后,针对各个被摄体来存储各个照相机的布告板数据。
84.针对各个被摄体存储布告板数据,作为各个照相机中的布告板的多边形数据和要经过纹理映射(texture mapping)的图像数据的组合。首先,描述布告板的一个多边形数据(polygon billboard of cth camera for pth object(第p对象的第c照相机的多边形布告板))。随后,存储用于进行纹理映射的前景图像数据(foreground image of cth camera for pth object(第p对象的第c照相机的前景图像))。在布告板方法中,通过将被摄体视为一个多边形,可以显著减少处理和数据量。表示布告板数据的多边形数量不限于一个,并且是小于网格数据数量的多边形数量。
85.在本示例性实施例中,存储用于描述顶点的坐标系作为三轴数据,并且存储颜色信息作为rgb三原色的值,但坐标系和颜色信息不限于这些。坐标系可以是极坐标或其他坐标系。另外,颜色信息可以由诸如均匀颜色空间、亮度或色度等的信息来表示。另外,例如可以使用诸如多边形文件格式(polygon file format,ply)或斯坦福三角形格式(stanford triangle format,stl)等的现有格式。可以通过准备与各个格式相对应的数据集类别代码来使用这样的格式。
86.《转换单元所要进行的转换处理的示例1》
87.接下来,将描述转换单元107所要进行的转换处理。转换单元107进行将已由获取单元105获取并以预定格式存储在存储单元106中的素材数据转换为输出目的地设备可处理的格式的处理。如上所述,因为存在多个类型的虚拟视点图像生成方法,所以要使用的素材数据有时根据生成方法而变化。另一方面,用于生成素材数据的一些系统只能生成预定格式的素材数据。此时,在系统所生成的素材数据的格式是进行与虚拟视点图像的生成相关的处理的设备不可处理的格式的情况下,可能会出现不生成虚拟视点图像这样的问题。为了解决该问题,通过经由转换单元107将素材数据的格式转换为可处理的格式,来将素材数据的输出目的地设备变得能够适当地进行处理。
88.转换单元107首先识别素材数据的输出目的地设备可处理的素材数据。发送/接收单元108从连接到信息处理设备100的终端109获取用于识别终端109可处理的素材数据的格式的信息。这里,终端109可以处理素材数据的状态是指终端109对所获取的素材数据的
文件中的数据进行解释并且可以根据该素材数据中的描述来适当地进行处理的状态。例如,终端109不支持且不可读的素材数据的文件格式是不可处理的文件格式。另外,终端112可以处理素材数据的状态是指终端112可以基于所获取的素材数据来生成虚拟视点图像的状态。另外,在本示例性实施例中,使用表示识别出素材数据的“格式”的表述,但是也可以使用诸如素材数据的“种类”、“结构”或“形式”等的任意术语。
89.要获取的信息例如可以包括与终端的规格或类型有关的信息、以及与终端的处理能力有关的信息等。要获取的信息例如还可以包括终端所要使用的虚拟视点图像生成方法、以及与要用于虚拟视点图像的生成或再现有关的应用和软件等有关的信息等。要获取的信息例如还可以包括与终端可显示的虚拟视点图像的格式有关的信息等。发送/接收单元108将所获取的信息发送到转换单元107。转换单元107基于所获取的信息来识别要输出到终端109的素材数据的格式。
90.另外,转换单元107识别存储单元106中所存储的素材数据的格式。例如,转换单元107通过参考存储单元106中所存储的素材数据的数据集类别代码和数据集头部等来识别素材数据的种类。在获取单元105所要获取的素材数据的格式或种类是预定的情况下,转换单元107不需要参考数据集。在要输出到终端109的素材数据的格式与存储单元106中所存储的素材数据的格式不同的情况下,转换单元107进行存储单元106中所存储的素材数据的转换处理。发送/接收单元108将通过转换处理所获得的素材数据输出到输出目的地设备。
91.作为转换处理的示例,将描述仅前景图像数据集和点云数据集被存储在存储单元106中的情况。这里,假设终端109c连接到信息处理设备100,并且已从终端109c发出了距离图像输出请求。在这种情况下,转换单元107将已从发送/接收单元108输入的来自终端109c的数据集请求与存储单元309中所存储的素材数据的格式进行比较。作为比较的结果,转换单元107判断为没有存储满足该请求的格式的素材数据。转换单元107从存储单元106获取点云数据集,并且通过获得从点云数据的各点到各个照相机的距离并生成距离图像数据来将点云数据集转换为距离图像数据集。换句话说,转换单元107将图5所示的点云数据集转换为图7所示的距离图像数据集。发送/接收单元108将通过转换处理所获得的距离图像数据输出到终端109。
92.以这种方式,根据来自终端109的请求,转换单元107将存储单元106中所存储的素材数据的格式转换为预定格式。在终端109所请求的素材数据的格式与存储单元106中所存储的素材数据的格式相同的情况下,不进行转换处理。在这种情况下,例如转换单元107可以获取存储单元106中所存储的素材数据,并且在不进行转换的情况下将所获取的素材数据发送到发送/接收单元108,或者可以将素材数据从存储单元106直接发送到发送/接收单元108。
93.通过与上述处理的流程类似的处理,转换单元107进行如下转换处理。例如,在点云数据和前景图像数据被存储在存储单元106中的情况下,根据来自终端109的请求,可以将数据转换为着色点云数据、距离图像、网格数据和前景图像、着色网格数据或布告板数据。另外,例如,在着色点云数据被存储在存储单元106中的情况下,根据来自终端109的请求,可以将数据转换为着色网格数据、距离图像或布告板数据。另外,例如,在网格数据和前景图像数据被存储在存储单元106中的情况下,根据来自终端109的请求,可以将数据转换为点云数据和前景图像数据、着色点云数据、着色网格数据、距离图像或布告板数据。另外,
例如,在着色网格数据被存储在存储单元106中的情况下,根据来自终端109的请求,可以将数据转换为着色点云数据、距离图像或布告板数据。
94.另外,例如,在距离图像数据和前景图像被存储在存储单元106中的情况下,根据来自终端109的请求,可以将数据转换为布告板数据。另外,例如,在布告板数据和前景图像数据被存储在存储单元106中的情况下,可以将数据转换为点云数据和前景图像数据、着色点云数据、网格数据和前景图像、着色网格数据或距离图像。在要将布告板数据转换为指示三维形状的点云数据或网格数据的情况下,例如通过执行使用布告板数据的shape-from-silhouette来转换布告板数据。
95.在上述示例中,给出了转换单元107基于从终端109获取的信息来进行素材数据的转换处理的配置的描述,但该配置不限于此。在初步识别出素材数据的输出目的地终端的情况下,转换单元107可以初步转换要输出到终端的素材数据。例如,假设点云数据和前景图像数据被存储在存储单元106中,并且终端109a、109b和109d连接到信息处理设备100。终端109a使用前景图像和点云数据来生成虚拟视点图像。另外,终端109b使用着色点云数据来生成虚拟视点图像。另外,终端109d使用着色网格数据来生成虚拟视点图像。这里,参考图10a所示的表,转换单元107确定要从存储单元106中所存储的点云数据和前景图像数据进行转换的数据。图10a中的转换标志在要进行转换的情况下指示“1”,并且在不进行转换的情况下指示“0”。基于转换标志的值,转换单元107将点云数据和前景图像数据转换为着色点云数据和着色网格数据。发送/接收单元108将已通过转换单元107所进行的转换处理而生成的着色点云数据和着色网格数据分别输出到终端109b和109d。另外,发送/接收单元108将存储在存储单元106中的点云数据和前景图像数据输出到终端109a。
96.通过上述配置,同样在获取单元105所获取的素材数据的种类与终端109所请求的素材数据的种类不同的情况下,可以在将素材数据的格式转换为适当格式之后输出该素材数据。在上述示例中,给出了获取点云数据和前景图像数据的示例的描述,但是在获取其他种类的素材数据的情况下也类似地进行转换处理。
97.《转换单元所要进行的转换处理的示例2》
98.接下来,将描述转换单元107所要进行的转换处理的另一示例。转换单元107不仅可以转换素材数据的类型,还可以转换素材数据的内容。这里,将描述用作用于识别素材数据的数据量的信息的分辨率和帧频,作为要转换的内容。此外,还将描述格式作为要转换的内容。
99.首先,将描述素材数据的分辨率的转换处理。例如,在点云数据被存储在存储单元106中的情况下,转换单元107可以改变点云数据的分辨率。分辨率指示点云数据中所包括的多个点的密度。多个点的密度与要用于表示被摄体的三维形状的点的数量相对应。分辨率随着多个点的密度变大而变高,这是因为可以更精细地表示三维形状。另一方面,分辨率随着多个点的密度变小而变低。根据从终端109获取的信息,转换单元107以使得点云数据中所包括的点的密度增加(增加分辨率)或使得密度减少(减少分辨率)的方式来进行转换处理。在要增加密度的情况下,转换单元107例如进行在多个点之间进行插值的处理。另外,在要增加密度的情况下,转换单元107进行点的间隙剔除处理。可以对点云数据一致地进行点的插值处理和点的间隙剔除处理,或者可以使用任意方法来进行点的插值处理和点的间隙剔除处理。例如,可以以使得选手面部部分的点的密度变得高于选手身体部分的点的密
度的方式来进行点的插值处理和点的间隙剔除处理。另外,在进行点云数据的点的插值或间隙剔除的情况下,转换单元107改变存储单元106中所存储的点云数据的内容。在这种情况下,转换单元107向图5的(b)所示的信息添加与点的坐标有关的信息以及从图5的(b)所示的信息中删除与点的坐标有关的信息。
100.点云数据的分辨率的上述转换方法也可以适用于着色点云数据。另外,将描述在存储单元106中所存储的素材数据是各自具有预定体积的体素的集合的体素数据的情况。体素数据的分辨率与表示三维形状的一个体素的大小(体素大小)相对应。分辨率随着体素大小变小而变高,这是因为可以更精细地表示三维形状。另一方面,分辨率随着体素大小变大而变低。根据从终端109获取的信息,转换单元107以使得体素数据中所包括的体素的大小减小(增加分辨率)或使得大小增加(减少分辨率)的方式来进行转换处理。
101.另外,将描述存储单元106中所存储的素材数据是网格数据的情况。网格数据的分辨率与网格数据中所包括的多边形的大小(多边形大小)相对应。分辨率随着多边形大小变小而变高,这是因为可以更精细地表示三维形状。另一方面,分辨率随着多边形大小变大而变低。根据从终端109获取的信息,转换单元107以使得网格数据中所包括的多边形的大小减小(增加分辨率)或使得大小减小(减少分辨率)的方式来进行转换处理。作为多边形大小的转换方法,例如通过诸如增加各个多边形的顶点数量(增加多边形数量)或减少顶点数量(减少多边形数量)的处理等的处理来进行转换。另外,在转换单元107改变了各个多边形的顶点数量的情况下,根据改变处理,转换单元107改变图8的(b)所示的多边形信息的内容。网格数据的分辨率的上述转换处理也可以适用于着色网格数据。
102.另外,转换单元107转换前景图像的分辨率。转换单元107可以进行例如通过超分辨率处理来增加与像素值有关的信息数量(增加分辨率)的处理、或者通过将多个像素值的平均值替换为一个像素值来减少与像素值有关的信息数量(减少分辨率)的处理。前景图像的分辨率的转换与要使用诸如点云数据或网格数据等的前景图像来着色的素材数据相结合地进行。例如,在转换单元107已将点云数据或网格数据的分辨率转换为更低分辨率的情况下,转换单元107还将前景图像的分辨率改变为较低分辨率。另外,例如,在转换单元107已将点云数据或网格数据的分辨率转换为更高分辨率的情况下,转换单元107还将前景图像的分辨率改变为更高分辨率。然而,前景图像的分辨率的转换处理不限于此。例如,即使在转换单元107已将点云数据或网格数据的分辨率转换为更低分辨率的情况下,转换单元107也可以避免改变前景图像的分辨率。该配置引起了这样的效果:虽然粗略地表示三维形状,但颜色变得更接近被摄体的实际颜色,并且在减少了数据量的同时抑制了虚拟视点图像的图像质量的劣化。
103.转换单元107可以进行对点云数据中的点的坐标值、网格数据中的网格的顶点的坐标值和距离图像数据中的距离的值的精度进行转换的处理。换句话说,转换单元107可以通过将这些值转换为浮点值、定点值和整数中的任一个来进行改变数据的精度的处理。另外,转换单元107可以进行通过量化处理等来减少前景图像的像素值的位深度的转换处理、以及通过插值处理等来增加位深度的转换处理。
104.接下来,将描述素材数据的帧频的转换处理。转换单元107可以以使得存储单元106中所存储的素材数据的帧频增加或减少的方式来进行转换处理。例如,将描述存储单元106中所存储的素材数据的帧频为60帧每秒(fps)的情况。在要增加帧频的情况下,转换单
元107通过例如以在帧之间进行插值的方式生成帧来将帧频改变为120fps。另外,在要减少帧频的情况下,例如转换单元107例如通过进行帧的间隙剔除处理来将帧频改变为30fps。改变后的帧频的值和帧频改变方法不限于这些。例如,可以仅在数据集的序列中的特定范围内改变帧频。帧频的改变也可以适用于前景图像数据、点云数据、网格数据、距离图像数据和布告板数据等中的任何种类的素材数据。
105.接下来,将描述素材数据的格式的转换处理。格式是指例如文件的扩展名或数据的结构等。在终端109可处理的素材数据的文件的扩展名与存储单元106中所存储的素材数据的文件的扩展名不同的情况下,例如转换单元107进行文件的格式的转换处理。该处理也可以适用于任何种类的素材数据。另外,例如转换单元107可以进行将存储单元106中所存储的网格数据中所包括的多边形的形状进行改变的处理。例如,在存储单元106中所存储的网格数据中的多边形的形状是三角形、并且终端109可处理的网格数据中的多边形的形状是六边形的情况下,转换单元107进行将多边形的形状从三角形转换为六边形的处理。以这种方式,转换单元107可以将多边形的形状改变为任意多边形形状。
106.在上述示例中,基于从终端109获取的信息来进行素材数据的分辨率、帧频和格式的转换处理,但转换处理不限于此。在初步识别出素材数据的输出目的地终端的情况下,转换单元107可以初步转换要输出到终端的素材数据。在这种情况下,例如参考图10b所示的表,转换单元107进行素材数据的转换处理。在图10b所示的示例中,转换单元107将存储单元106中所存储的点云数据的分辨率转换为更低分辨率,并将帧频转换为更小帧频。
107.例如通过进行用于识别诸如素材数据的分辨率或帧频等的数据量的信息的转换,可以输出适合于终端的处理能力或显示能力的素材数据。例如,在素材数据的分辨率等于4k分辨率并且终端可以显示8k视频的情况下,转换单元107将素材数据的分辨率转换为更高分辨率。相反地,在终端仅能显示2k视频的情况下,转换单元107将素材数据的分辨率转换为更低分辨率。
108.《信息处理设备的操作》
109.接下来,将参考图11中的流程图来描述信息处理设备100的操作和从该信息处理设备获取素材数据的终端109的操作。图11所示的处理是通过虚拟视点图像生成系统1中的各个设备中所包括的cpu读出并执行存储在rom或外部存储装置中的程序来实现的。如果信息处理设备100的电源接通,则开始处理。
110.在步骤s1100中,获取单元105从不同设备获取素材数据。这里,获取单元105获取素材数据生成单元104所生成的素材数据。在步骤s1101中,获取单元105将所获取的素材数据以上述格式存储到存储单元106中。在步骤s1102中,发送/接收单元108从连接到信息处理设备100的终端109接收素材数据输出请求。此时,发送/接收单元108从终端109获取用于识别终端109可处理的素材数据的格式的信息。发送/接收单元108要从终端获取的信息不限于上述信息。例如,可以获取用于指定诸如点云数据等的特定素材数据的信息。另外,信息处理设备100可以将用于将多个终端的类型与要输出到各个终端的素材数据相关联的表预存储在外部存储装置等中,并且发送/接收单元108可以获取该表。发送/接收单元108将所获取的信息发送到转换单元107。
111.另外,在步骤s1102中,发送/接收单元108获取用于识别素材数据的序列的信息。例如,用于识别序列的信息可以是序列名称。发送/接收单元108将所获取的信息(诸如序列
名称等)发送到转换单元107,并且以获取相应序列的方式发出指令。
112.在步骤s1103中,转换单元107基于存储单元106中所存储的素材数据的格式和从发送/接收单元108获取的信息,来判断是否需要素材数据的转换处理。在基于从发送/接收单元108获取的信息而识别的要输出到终端109的素材数据的格式与存储单元106中所存储的素材数据的格式不同的情况下,转换单元107判断为需要转换处理(步骤s1103中的“是”)。然后,在步骤s1104中,转换单元107进行对存储单元106中所存储的素材数据的转换处理。另一方面,在要输出到终端109的素材数据的格式与存储单元106中所存储的素材数据的格式相同的情况下,转换单元107判断为不需要转换处理(步骤s1103中的“否”),并且跳过步骤s1104中的处理。
113.在步骤s1105中,发送/接收单元108将从转换单元107获取的素材数据输出到终端109。在步骤s1106中,终端109获取素材数据,并执行步骤s1107和s1108中的处理。针对要生成的虚拟视点图像的各帧,重复进行步骤s1107和s1108中的处理。
114.在步骤s1107中,终端109基于用户操作等来确定虚拟视点的位置和来自该虚拟视点的眼睛方向。在步骤s1108中,终端109基于从信息处理设备100获取的素材数据以及所确定的虚拟视点的位置和所确定的来自虚拟视点的眼睛方向,来生成虚拟视点图像。在根据前景图像数据和点云数据生成虚拟视点视频的终端(诸如终端109a等)中,最初识别虚拟视点图像中的点云数据的点的位置。另外,通过利用前景图像数据的投影对与点的位置相对应的像素值进行着色,来生成虚拟视点图像。在根据前景图像数据和点云数据来生成虚拟视点图像的方法中,根据虚拟视点的位置和来自虚拟视点的眼睛方向,来改变要分配给各点的颜色。此外,在根据着色点云数据来生成虚拟视点图像的诸如终端109b等的终端中,最初识别虚拟视点视频中的点云数据的点的位置。通过以与点相关联的颜色对与所识别出的点的位置相对应的像素值进行着色,来生成虚拟视点图像。在使用着色点云来生成虚拟视点图像的方法中,因为与各点相对应的颜色是固定的,所以与虚拟视点的位置和来自虚拟视点的眼睛方向无关地以预定颜色进行着色。
115.在根据距离图像数据和前景图像数据来生成虚拟视点图像的终端(诸如终端109c等)中,从多个距离图像数据中识别虚拟视点图像上的物体的位置,并且通过使用前景图像的纹理映射来生成虚拟视点图像。在根据网格数据来生成虚拟视点图像的诸如终端109d等的终端中,与通常的计算机图形类似,通过将颜色的值和图像附接到从虚拟视点可见的表面,来生成虚拟视点图像。
116.在步骤s1109中,终端109在显示单元上显示所生成的虚拟视点图像。在步骤s1110中,终端109判断是否结束重复处理。例如,如果根据来自用户等的指令而结束虚拟视点图像的生成,则重复处理结束。
117.通过上述配置和操作,信息处理设备100基于用于识别终端109可处理的素材数据的格式的信息来进行转换处理,并将所获得的素材数据输出到终端109。利用该配置,即使在信息处理设备100中所存储的素材数据的格式与终端可处理的素材数据的格式不同的情况下,也可以输出终端可处理的素材数据。在图11所示的处理中,在步骤s1104中进行转换处理之后,进行针对虚拟视点图像的各帧而重复的处理,但处理顺序不限于此。更具体地,信息处理设备100可以根据所确定的虚拟视点来读出存储单元108中所存储的素材数据,并将通过进行转换处理所生成的素材数据输出到终端109。在这种情况下,例如在步骤s1107
和s1108之间进行图11中的步骤s1102至s1104中的处理。
118.另外,信息处理设备100可以将转换单元107所获取的转换后的素材数据存储到存储单元106中。此时,通过转换处理所生成的素材数据可以存储在相同的存储单元106中,或者可以存储在针对各个种类的素材数据而不同的存储单元中。此外,在素材数据被存储到不同的存储单元中的情况下,信息处理设备100可以包括多个存储单元,或者存储单元可以作为不同设备被包括在虚拟视点图像生成系统1中。在多个种类的素材数据被存储在不同的存储单元中的情况下,信息处理设备100将用于指示要输出到终端109的素材数据所存储的位置的诸如指针等的信息输出到终端109。利用该配置,终端109可以访问用于存储虚拟视点图像的生成所需的素材数据的存储单元,并获取该素材数据。
119.(第一示例性实施例的变形例)
120.在第一示例性实施例中,给出了在虚拟视点图像生成系统1中生成素材数据、并由信息处理设备中的获取单元105获取该素材数据的配置的描述,但是该配置不限于此。例如,信息处理设备100可以获取在不同系统中生成的素材数据,或从多个设备获取素材数据。然后,信息处理设备100可以将所获取的素材数据的格式转换为适合终端109的格式,并将转换后的素材数据输出到终端109。
121.另外,在第一示例性实施例中,存储针对各个被摄体分割的前景图像,但是配置不限于此。可以按原样存储照相机所拍摄的图像。另外,在第一示例性实施例中,针对各帧存储点云数据,但是配置不限于此。例如,通过识别各个被摄体,还可以针对各个被摄体存储点云数据。
122.另外,在第一示例性实施例中,为了识别三维形状数据,在序列的头部中存储用于识别数据的信息,但是数据管理方法不限于此。可以使用与数据相关联的列表等来管理数据。另外,可以对存储单元106中所存储的素材数据进行编码。此时,获取单元105可以在将素材数据存储到存储单元106中时对该素材数据进行编码,或者可以获取经受了素材数据生成单元104所进行的编码处理的素材数据。
123.另外,在第一示例性实施例中,前景图像数据和点云数据被存储为不同的数据集,但配置不限于此。图12示出集成了前景图像数据和点云数据的前景图像/点云数据集的配置的示例。在图12所示的格式中,与图4所示的前景图像数据集类似地,前景图像/点云数据头部(foreground&point cloud model header)被存储在数据集的开头处。在数据头部中,将用于指示该数据集是前景图像/点云数据的数据集的信息、以及帧数等存储在头部中。随后,存储各帧的前景图像数据和点云数据。在各帧的前景图像/点云数据中,存储用于指示帧的时间的时间信息(time information)和帧的数据大小(data size)。随后,存储与时间信息所指示的时间相对应的被摄体数量(number of object)p。此外,存储在该时间点进行摄像所使用的照相机数量(number of camera)c。随后,存储所使用的照相机的照相机id(camera id of cth camera)。随后,存储各个被摄体的数据。首先,与图5所示的点云数据类似地,存储被摄体的点云中所包括的坐标点的数量。此后,存储点的坐标。随后,与图4所示的前景图像数据类似地,按顺序存储各个照相机所获取的包括被摄体的前景图像数据。此后,针对各个被摄体来存储点云数据和前景图像数据。
124.利用上述配置,可以根据用作渲染器的终端来一体地存储数据集的必需组合。利用该配置,可以简化数据读出。这里,给出了将点云数据和前景图像数据集成的格式的描
述,但数据组合不限于此。例如,可以使用集成地组合任意数据的格式,诸如集成距离图像和前景图像的格式、或者集成三个或多于三个素材数据的格式等。另外,转换单元107还可以进行诸如上述素材数据的集成和所集成的素材数据的分离等的转换。
125.另外,如图16所示,点云数据的帧数据和前景图像数据的帧数据可以仅交错并交替存储。类似地,可以存储距离图像数据来代替点云数据。转换单元107还可以将素材数据的配置转换为如图16所示的数据配置。
126.另外,可以针对各个被摄体来管理素材数据。图13示出示例。
127.作为序列的新数据集,定义了对象数据集。可以存在多个对象数据集。例如,可以针对各个预定单元(诸如针对被摄体所属的各个团队等)提供对象数据集。
128.在对象数据集开头处的对象数据头部中,存储用于指示对象数据集的开始的对象数据头部起始码(object data header)。此外,在对象数据头部中存储数据大小(data size)。随后,存储对象数据集中所包括的被摄体数量(number of object)p。此后,针对各个被摄体存储与数据有关的信息。
129.在与被摄体数据有关的信息(pth object data description(第p对象数据描述))中,存储被摄体的id号(object id)和与被摄物数据有关的信息的大小(data size)。随后,存储用作数据集的用于指示数据的种类的数据集类别代码(data set class code)。另外,存储指向被摄体的对象数据的指针(pointer of object data(对象数据的指针))。另外,存储被摄体的元数据(meta data)。作为元数据,例如在运动的情况下,可以存储诸如选手的姓名、选手所属的团队、以及制服号码等的信息。
130.在各个对象数据中,存储基于数据集类别代码的数据。图13示出集成了前景图像和点云数据的数据集的示例。在开头处,存储对象数据集的大小、最前帧的时间信息和帧频等作为头部。此后,存储各帧的数据。在各帧的数据中,在开头处存储相应帧的时间信息(time information)和帧的数据大小(data size)。随后,存储被摄体的帧中的点云数据的大小(data size of point cloud)和点数(number of points)。此后,存储点云的点的坐标(point coordination)。随后,存储已对被摄体进行摄像的照相机数量(number of camera)c。此后,存储各个照相机的照相机id(camera id of 1st to cth camera(第1照相机至第c照相机的照相机id))和前景图像数据(data size of foreground image of 1st to cth camera(第1照相机至第c照相机的前景图像的数据大小))。此后,针对各个照相机存储照相机id和前景图像数据。
131.如果对象数据的数据集是着色点云数据的数据集,则如图14a所示设置数据集类别代码,并且存储时间信息、数据大小、着色点云的点数和着色点云的数据作为各帧的数据。另外,如果对象数据的数据集是网格数据的数据集,则如图14b所示设置数据集类别代码,并且存储时间信息、数据大小、多边形数量和各个多边形的数据作为各帧的数据。另外,如果对象数据的数据集是距离图像的数据集,则如图14c所示设置数据集类别代码,并且存储时间信息、数据大小、照相机数量和各个距离图像的数据作为各帧的数据。
132.以这种方式,通过管理各个被摄体的数据并输出该数据,可以缩短例如指定诸如选手或表演者等的被摄体并读出以所指定的被摄体为中心的图像所花费的时间。当生成以指定选手的运动为中心的图像或从后面跟踪被摄体的虚拟视点图像时,这是有用的。另外,还变得可以容易地搜索指定选手。另外,转换单元106可以将格式从如图4至图9所示的针对
各帧来管理数据的格式转换为如图13和图14a至图14c所示的针对各个被摄体来管理数据的格式。不用说,也可以将格式从图13和图14a至图14c所示的格式转换为图4至图9所示的格式。
133.另外,获取单元105可以获取如图15所示的各个种类的素材数据的序列。例如,在获取单元105所要获取的素材数据是前景图像数据和点云数据的情况下,如图15所示,单独生成前景图像数据和点云数据的序列并将其存储到存储单元106中。利用该配置,因为可以根据输出目的地终端所要使用的渲染方法来集体地输出序列,所以变得可以迅速地进行输出。另外,转换单元107能够将格式从如图3所示的将素材数据组合成一个序列的格式转换为如图15所示的针对各个素材数据来分割序列的格式。不用说,格式也可以从图15所示的格式转换为图3所示的格式。另外,转换单元107可以被配置为以使得输出目的地设备能够处理素材数据的方式来进行将预定信息添加到素材数据的头部等的处理。相反地,转换单元107可以被配置为进行用于删除诸如输出目的地设备无需的元数据等的信息的处理。
134.另外,在本示例性实施例中,已假设信息处理设备100是与素材数据生成单元104和终端109不同的设备来给出描述,但是配置不限于此。换句话说,信息处理设备100可以与用于生成素材数据的设备或用于获取素材数据的设备集成。
135.将描述信息处理设备100的功能被包括在具有素材数据生成单元104的素材数据生成设备中的情况。在这种情况下,获取单元105和转换单元107可以初步识别要生成的素材数据的种类。因此,转换单元107参考从终端109获取的用于识别终端109可处理的素材数据的信息、以及图10a或图10b所示的表等,来进行素材数据的转换处理。
136.另一方面,将描述信息处理设备100的功能被包括在用于获取素材数据并进行与虚拟视点图像的生成相关的处理的设备中的情况。例如,假设信息处理设备100的功能被包括在终端109中。在这种情况下,转换单元107可以初步识别终端可处理的素材数据的格式。因此,转换单元107将从不同设备获取的素材数据的格式转换为初步识别出的素材数据的格式。此时,通过将用于识别要获取的素材数据的种类等的信息(例如,数据集类别代码等)添加到素材数据,转换单元107可以确定要进行的转换处理的类型。
137.另外,在第一示例性实施例中,作为用于识别终端109可处理的素材数据的格式的信息,主要描述了诸如终端的类型等的不变信息,但该信息不限于此。换句话说,用于识别终端109可处理的素材数据的格式的信息可以是动态变化的信息。例如,在终端109可处理的素材数据由于处理负荷的增加等而改变的情况下,终端109再次向信息处理设备100发送信息。信息处理设备100可以相应地确定要输出到终端109的适当素材数据,并进行转换处理。此外,信息处理设备100可以根据到终端109的通信路径的通信频带的变化,动态地确定要通过转换处理生成的素材数据。
138.(第二示例性实施例)
139.在第一示例性实施例中,描述了在终端109生成虚拟视点图像的情况下使用的系统的配置。在本示例性实施例中,将描述信息处理设备生成虚拟视点图像的配置。因为根据本示例性实施例的信息处理设备200的硬件配置与第一示例性实施例中的硬件配置类似,所以将省略描述。另外,与第一示例性实施例中的功能配置类似的功能配置被赋予相同的附图标记,并且将省略描述。
140.图17是示出包括信息处理设备200的虚拟视点图像生成系统2的配置的图。除了与
根据第一示例性实施例的信息处理设备100的组件类似的组件之外,信息处理设备200还包括转换单元201、虚拟视点图像生成单元202和发送/接收单元203。终端202a至202d基于用户操作等设置虚拟视点,并将用于指示所设置的虚拟视点的位置和来自虚拟视点的眼睛方向的虚拟视点信息发送到信息处理设备200。终端204a至204d不包括生成虚拟视点图像的功能(渲染器),并且仅进行虚拟视点的设置和虚拟视点图像的显示。在以下描述中,在没有理由将终端204a至204d彼此区分开的情况下,终端204a到204d将被简单描述为终端204。
141.发送/接收单元203从终端204接收虚拟视点信息,并将虚拟视点信息发送到虚拟视点图像生成单元202。另外,发送/接收单元203从终端204获取用于识别要输出到终端204的虚拟视点图像的种类的信息。另外,发送/接收单元203包括将所生成的虚拟视点图像发送到已发送了虚拟视点信息的终端的功能。虚拟视点图像生成单元202基于从存储单元106或转换单元201获取的虚拟视点信息和素材数据来生成虚拟视点图像。使用素材数据的虚拟视点图像生成方法与第一示例性实施例中描述的方法类似。
142.根据要输出到终端204的虚拟视点图像的格式,转换单元201通过与第一示例性实施例中的转换处理类似的处理来进行存储单元106中所存储的素材数据的转换。例如,假设点云数据和前景图像数据存储在存储单元106中,并且作为虚拟视点图像的输出目的地的终端204显示基于着色网格数据所生成的虚拟视点图像。在这种情况下,转换单元201将存储在存储单元106中的点云数据和前景图像数据转换为着色网格数据。虚拟视点图像生成单元202使用通过转换单元201所进行的转换处理而获取的着色网格数据来生成虚拟视点图像,并且经由发送/接收单元203将虚拟视点图像输出到终端204。另外,例如,例如假设尽管点云数据和前景图像数据被存储在存储单元106中,但是终端204由于显示能力而无法显示使用存储单元106所存储的点云数据而生成的虚拟视点图像。在这种情况下,转换单元201基于从终端204获取的与显示能力有关的信息来确定素材数据的转换处理的类型。这里,假设转换单元201已确定为终端204可以显示通过将点云数据的分辨率转换为更低分辨率而生成的虚拟视点图像。转换单元201以使得分辨率减少(增加体素大小)的方式转换存储单元106中所存储的点云数据的分辨率。虚拟视点图像生成单元202使用通过转换单元201所进行的转换处理而获得的素材数据来生成虚拟视点图像,并且经由发送/接收单元203将虚拟视点图像输出到终端204。
143.另外,转换单元201还可以转换虚拟视点图像生成单元202所生成的虚拟视点图像的格式。此时,虚拟视点图像生成单元202可以使用存储单元106中所存储的素材数据,或可以使用转换单元201所转换的素材数据。例如,假设终端204无法显示虚拟视点图像生成单元202所生成的虚拟视点图像,这是因为虚拟视点图像的分辨率高于预定分辨率。在这种情况下,转换单元201以使得虚拟视点图像的分辨率减少的方式转换所生成的虚拟视点图像的格式。另外,假设终端204所要使用的用于虚拟视点图像的再现的应用或软件只能以特定格式再现虚拟视点图像。在这种情况下,转换单元201将所生成的虚拟视点图像的格式转换为终端204可再现的虚拟视点图像的格式。另外,在终端204是头戴式显示器(hmd)的情况下,例如转换单元201将所生成的虚拟视点图像转换为用于hmd的图像。以这种方式,转换单元201可以根据终端的显示能力、终端可显示的虚拟视点图像的格式、以及终端的类型等来转换虚拟视点图像。
144.如上所述,通过转换单元201转换存储单元106中所存储的素材数据和虚拟视点图
像生成单元202所生成的虚拟视点图像中的至少一个,可以将适当格式的虚拟视点图像输出到终端204。本示例性实施例可以与第一示例性实施例组合地执行。换句话说,可以将包括渲染器的设备可处理的素材数据输出到该设备,并且可以将不包括渲染器的设备可显示的虚拟视点图像输出到该设备。同样在该配置中,转换单元根据输出目的地设备来执行转换素材数据和虚拟视点图像中的至少一个的格式的转换处理。
145.将参考图18描述信息处理设备200和终端204所要进行的处理。这里,将描述在转换单元201转换素材数据的情况下要进行的处理的示例。与图11中的处理步骤类似的处理步骤被分配有相同步骤编号,并且将省略描述。
146.在步骤s1801中,发送/接收单元203从终端204获取用于识别要输出到终端204的虚拟视点图像的格式的信息。例如,要获取的信息可以是与第一示例性实施例中描述的信息类似的信息。在步骤s1103和s1104中,转换单元201根据所获取的信息来进行转换处理。
147.在步骤s1802中,虚拟视点图像生成单元202和终端204针对要生成的虚拟视点图像的各帧来重复执行步骤s1803至s1109中的处理。在步骤s1803中,发送/接收单元203从终端204获取用于指示虚拟视点的位置和来自虚拟视点的眼睛方向的虚拟视点信息。另外,发送/接收单元203将所获取的虚拟视点信息发送到虚拟视点图像生成单元202。在步骤s1804中,虚拟视点图像生成单元202基于通过转换单元201所进行的转换处理而获得的素材数据以及从发送/接收单元203获取的虚拟视点信息,来生成虚拟视点图像。在步骤s1805中,发送/接收单元203将所生成的虚拟视点图像输出到终端204。在步骤s1109中,终端204显示虚拟视点图像。
148.在步骤s1806中,信息处理设备200判断是否结束重复处理。例如,如果虚拟视点图像的生成根据来自终端的指令等而结束,则重复处理结束。通过上述配置,根据终端204输出适当格式的虚拟视点图像。在转换单元201转换虚拟视点图像的格式的情况下,在图18所示的处理中,在步骤s1804之后增加虚拟视点图像的转换处理的步骤。在这种情况下的素材数据的转换处理(步骤s1103和s1104)不是必需的。
149.在图18所示的处理中,在步骤s1104中进行转换处理之后,进行要针对虚拟视点图像的各帧而重复的处理,但是处理顺序不限于此。更具体地,信息处理设备100可以根据所获取的虚拟视点信息来读出存储单元108中所存储的素材数据,并且通过进行转换处理来生成虚拟视点图像。在这种情况下,在步骤s1803和s1804之间进行例如图18中的步骤s1801至s1104中的处理。
150.(其他示例性实施例)
151.在上述第一示例性实施例和第二示例性实施例中,给出了将素材数据输出到用于显示虚拟视点图像的终端的示例的描述,但是输出目的地设备不限于此。例如,即使在素材数据被输出到用于获取素材数据并进行预定处理的不同设备的情况下,上述示例性实施例也是适用的。在这种情况下,基于用于识别输出目的地不同设备可处理的素材数据的格式的信息,信息处理设备100确定要将素材数据输出到不同设备,并进行素材数据的转换处理。
152.本公开还可以通过经由网络或存储介质将用于实现上述示例性实施例的一个或多于一个功能的程序供给到系统或设备的处理、以及读出并执行该程序的系统或设备的计算机中的一个或多于一个处理器来实现。另外,本公开还可以通过用于实现一个或多于一
个功能的电路(例如,专用集成电路(asic))来实现。
153.本发明不限于上述实施例,并且可以在本发明的精神和范围内进行各种改变和修改。因此,为了向公众告知本发明的范围,做出了所附权利要求书。
154.本技术要求于2021年2月18日提交的日本专利申请2021-024136的优先权,该申请的全部内容通过引用而并入本文。
技术特征:
1.一种信息处理设备,包括:获取单元,其被配置为获取要用于虚拟视点图像的生成的素材数据,所述虚拟视点图像基于通过多个摄像设备进行被摄体的摄像所获得的多个拍摄图像,所述素材数据是由第一格式表示的素材数据;转换单元,其被配置为基于用于识别作为所述素材数据的输出目的地的不同设备能够处理的素材数据格式的信息,将所述获取单元所获取的素材数据的格式从所述第一格式转换为第二格式;以及输出单元,其被配置为将被所述转换单元转换为所述第二格式的素材数据输出到所述不同设备。2.根据权利要求1所述的信息处理,其中,所述转换单元所要转换的素材数据格式是用于识别素材数据的种类的格式。3.根据权利要求1或2所述的信息处理设备,其中,所述信息包括与所述不同设备的类型有关的信息。4.根据权利要求1至3中任一项所述的信息处理设备,其中,所述信息包括与所述不同设备的处理能力有关的信息。5.根据权利要求1至4中任一项所述的信息处理设备,其中,所述信息包括与所述不同设备所要使用的虚拟视点图像的生成方法有关的信息。6.根据权利要求1至5中任一项所述的信息处理设备,其中,所述信息包括与所述不同设备能够显示的虚拟视点图像的格式有关的信息。7.根据权利要求1至6中任一项所述的信息处理设备,还包括生成单元,所述生成单元被配置为基于所述获取单元所获取的素材数据来生成由第三格式表示的虚拟视点图像,其中,所述转换单元将所述生成单元所生成的虚拟视点图像的格式从所述第三格式转换为第四格式。8.一种信息处理设备,包括:获取单元,其被配置为获取要用于虚拟视点图像的生成的素材数据,所述虚拟视点图像基于通过多个摄像设备进行被摄体的摄像所获得的多个拍摄图像,所述素材数据是通过基于用于识别所述信息处理设备能够处理的素材数据格式的信息、将由第一格式表示的素材数据格式从所述第一格式转换为第二格式而获得的素材数据;以及生成单元,其被配置为基于所述获取单元所获取的素材数据来生成虚拟视点图像。9.根据权利要求8所述的信息处理设备,其中,所述信息包括与所述信息处理设备的类型有关的信息。10.根据权利要求8或9所述的信息处理设备,其中,所述信息包括与所述信息处理设备的处理能力有关的信息。11.根据权利要求8至10中任一项所述的信息处理设备,其中,所述信息包括与所述信息处理设备所要使用的虚拟视点图像的生成方法有关的信息。12.根据权利要求8至11中任一项所述的信息处理设备,其中,所述信息包括与所述信息处理设备能够显示的虚拟视点图像的格式有关的信息。13.根据权利要求1至12中任一项所述的信息处理设备,其中,由所述第二格式表示的素材数据是包括用于指示所述被摄体的三维形状的点云数据和用于指示所述被摄体的颜
色的纹理数据的数据。14.根据权利要求1至12中任一项所述的信息处理设备,其中,由所述第二格式表示的素材数据是包括用于指示所述被摄体的三维形状和所述被摄体的颜色的点云数据的数据。15.根据权利要求1至12中任一项所述的信息处理设备,其中,由所述第二格式表示的素材数据是包括用于指示所述被摄体的三维形状和所述被摄体的颜色的网格数据的数据。16.根据权利要求1至12中任一项所述的信息处理设备,其中,由所述第二格式表示的素材数据是包括用于指示所述被摄体的三维形状的网格数据和用于指示所述被摄体的颜色的纹理数据的数据。17.根据权利要求14至16中任一项所述的信息处理设备,其中,由所述第一格式表示的素材数据是包括用于指示所述被摄体的三维形状的点云数据和用于指示所述被摄体的颜色的纹理数据的数据。18.根据权利要求16所述的信息处理设备,其中,由所述第一格式表示的素材数据是包括用于指示所述被摄体的三维形状和所述被摄体的颜色的点云数据的数据。19.根据权利要求13至15中任一项所述的信息处理设备,其中,由所述第一格式表示的素材数据是包括用于指示所述被摄体的三维形状的网格数据和用于指示所述被摄体的颜色的纹理数据的数据。20.根据权利要求14所述的信息处理设备,其中,由所述第一格式表示的素材数据是包括用于指示所述被摄体的三维形状和所述被摄体的颜色的网格数据的数据。21.根据权利要求1至20中任一项所述的信息处理设备,其中,所述素材数据格式是与用于识别素材数据的数据量的信息有关的格式。22.根据权利要求21所述的信息处理设备,其中,所述用于识别素材数据的数据量的信息包括与所述素材数据的分辨率有关的信息。23.根据权利要求21或22所述的信息处理设备,其中,所述用于识别素材数据的数据量的信息包括与所述素材数据的帧频有关的信息。24.一种信息处理方法,包括:获取要用于虚拟视点图像的生成的素材数据,所述虚拟视点图像基于通过多个摄像设备进行被摄体的摄像所获得的多个拍摄图像,所述素材数据是由第一格式表示的素材数据;基于用于识别作为所述素材数据的输出目的地的不同设备能够处理的素材数据格式的信息,将在所述获取中获取的素材数据的格式从所述第一格式转换为第二格式;以及将在所述转换中被转换为所述第二格式的素材数据输出到所述不同设备。25.一种程序,所述程序用于使得计算机用作根据权利要求1至23中任一项所述的信息处理设备。
技术总结
信息处理设备(100)包括:获取单元(105),其被配置为获取要用于虚拟视点图像的生成的素材数据,所述虚拟视点图像基于通过多个照相机(101)进行被摄体的摄像所获得的多个拍摄图像,所述素材数据是由第一格式表示的素材数据;转换单元(107),其被配置为基于用于识别作为所述素材数据的输出目的地的不同设备能够处理的素材数据的格式的信息,将所获取的素材数据的格式从所述第一格式转换为第二格式;以及发送/接收单元(108),其被配置为将被转换为所述第二格式的素材数据输出到所述不同设备。所述第二格式的素材数据输出到所述不同设备。所述第二格式的素材数据输出到所述不同设备。
技术研发人员:前田充 船木日菜子 冈部弘治 龟井秀和 太田祐矢 小沼和文 小笠原拓
受保护的技术使用者:佳能株式会社
技术研发日:2022.02.09
技术公布日:2023/10/15
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
航空商城 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/
上一篇:具有振动的侧壁的高压辊压机的制作方法 下一篇:电池组和包括该电池组的车辆的制作方法