CN111727605B - 用于发送和接收关于多个视点的元数据的方法及设备 - Google Patents
用于发送和接收关于多个视点的元数据的方法及设备 Download PDFInfo
- Publication number
- CN111727605B CN111727605B CN201980013604.0A CN201980013604A CN111727605B CN 111727605 B CN111727605 B CN 111727605B CN 201980013604 A CN201980013604 A CN 201980013604A CN 111727605 B CN111727605 B CN 111727605B
- Authority
- CN
- China
- Prior art keywords
- viewpoint
- information
- metadata
- degree video
- video
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/106—Processing image signals
- H04N13/172—Processing image signals image signals comprising non-image signal components, e.g. headers or format information
- H04N13/178—Metadata, e.g. disparity information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/81—Monomedia components thereof
- H04N21/816—Monomedia components thereof involving special video data, e.g 3D video
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/106—Processing image signals
- H04N13/158—Switching image signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/106—Processing image signals
- H04N13/111—Transformation of image signals corresponding to virtual viewpoints, e.g. spatial image interpolation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/106—Processing image signals
- H04N13/111—Transformation of image signals corresponding to virtual viewpoints, e.g. spatial image interpolation
- H04N13/117—Transformation of image signals corresponding to virtual viewpoints, e.g. spatial image interpolation the virtual viewpoint locations being selected by the viewers or determined by viewer tracking
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/106—Processing image signals
- H04N13/139—Format conversion, e.g. of frame-rate or size
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/106—Processing image signals
- H04N13/156—Mixing image signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/106—Processing image signals
- H04N13/161—Encoding, multiplexing or demultiplexing different image signal components
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/194—Transmission of image signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/21—Server components or server architectures
- H04N21/218—Source of audio or video content, e.g. local disk arrays
- H04N21/21805—Source of audio or video content, e.g. local disk arrays enabling multiple viewpoints, e.g. using a plurality of cameras
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/235—Processing of additional data, e.g. scrambling of additional data or processing content descriptors
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/236—Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
- H04N21/23614—Multiplexing of additional data and video streams
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/262—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
- H04N21/26258—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists for generating a list of items to be played back in a given order, e.g. playlist, or scheduling item distribution according to such list
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/266—Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
- H04N21/26603—Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel for automatically generating descriptors from content, e.g. when it is not made available by its provider, using content analysis techniques
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/84—Generation or processing of descriptive data, e.g. content descriptors
Abstract
在根据本发明的一个实施方式的由360度视频发送装置执行的处理360度视频数据的方法中,该方法包括以下步骤:获取由至少一个图像获取装置捕获的360度视频数据;处理360度视频数据以推导包括全向图像的二维图片;生成关于360度视频数据的元数据;对关于二维图片的信息进行编码;以及以关于二维图片的信息和元数据为基础执行封装,其中,元数据包含非毗邻标志信息,该非毗邻标志信息指示在360度视频数据中的视点组中所包括的一个或更多个视点是否彼此非毗邻。
Description
技术领域
本公开涉及用于360度视频数据的元数据,并且更具体地,涉及用于发送和接收关于多个视点的元数据的方法及设备。
背景技术
虚拟现实(VR)系统给予用户处于电子投影环境中的感觉。增强现实(AR)系统以交叠方式将3D虚拟图像布置在真实图像或背景上,以向用户提供处于虚拟和现实的混合环境中的感觉。用于提供VR或AR的系统可以进一步改进以提供更高质量的图像和立体声音。VR或AR系统可以允许用户交互地消费VR或AR内容。
随着对VR或AR内容的需求的增加,越来越需要一种更具体地发信号通知VR或AR内容中关于多视点的信息的方法。
发明内容
技术问题
本公开的目的是提供一种用于处理360度视频数据的方法及设备。
本公开的另一个目的是提供一种用于发送或接收360度视频数据的元数据的方法及设备。
本公开的另一目的是提供一种用于发送或接收关于多个视点的元数据的方法及设备。
本公开的另一目的是提供一种用于发送或接收指示在视点组中所包括的至少一个视点是否彼此非毗邻的非毗邻标志信息的方法及设备。
本公开的另一目的是提供一种用于发送或接收指示当前视点是否是锚视点的锚视点标志信息的方法及设备。
技术方案
在本公开的一个方面,本文提供了一种由360度视频发送设备处理360度视频数据的方法。该方法可以包括:获取由至少一个图像获取装置捕获的360度视频数据;处理360度视频数据并推导包括全向图像的二维图片;生成360度视频数据的元数据;对关于二维图片的信息进行编码;以及基于关于二维图片的信息和元数据执行封装,其中,元数据包含非毗邻标志信息,该非毗邻标志信息指示在360度视频数据中的视点组中所包括的至少一个视点是否彼此非毗邻。
在本公开的另一方面,本文提供一种用于处理360度视频数据的360度视频发送设备。该360度视频发送设备可以包括:数据输入单元,其被配置为获取由至少一个图像获取装置捕获的360度视频数据;投影处理器,其被配置为处理360度视频数据并推导包括全向图像的二维图片;元数据处理器,其被配置为生成360度视频数据的元数据;数据编码器,其被配置为对关于二维图片的信息进行编码;以及封装处理器,其被配置为基于关于二维图片的信息和元数据执行封装,其中,元数据包含非毗邻标志信息,该非毗邻标志信息指示在360度视频数据中的视点组中所包括的至少一个视点是否彼此非毗邻。
在本公开的另一方面,本文提供一种由360度视频接收设备处理360度视频数据的方法。该方法可以包括:接收关于360度视频数据的信息;从关于360度视频数据的信息获取关于编码图片的信息和元数据;基于关于编码图片的信息解码图片;以及基于元数据渲染解码图片,其中,元数据包含非毗邻标志信息,该非毗邻标志信息指示在360度视频数据中的视点组中所包括的至少一个视点是否彼此非毗邻。
在本公开的另一方面,本文提供一种用于处理360度视频数据的360度视频接收设备。360度视频接收设备可以包括:接收处理器,其被配置为接收关于360度视频数据的信息,并从关于360度视频数据的信息获取关于编码图片的信息和元数据;数据解码器,其被配置为基于关于编码图片的信息解码图片;以及渲染器,其被配置为基于元数据渲染解码图片,其中,元数据包含非毗邻标志信息,该非毗邻标志信息指示在360度视频数据中的视点组中所包括的至少一个视点是否彼此非毗邻。
技术效果
根据本公开,可以在支持采用地面广播网络和因特网的下一代混合广播的环境中有效地发送VR内容。
根据本公开,可以向消费360内容的用户提供交互式体验。
根据本公开,可以在增加传输容量的同时为用户有效地传递必要的360内容信息。
根据本公开,可以通过基于国际标准化组织(ISO)的媒体文件格式(诸如,基于ISO的媒体文件格式(ISOBMFF))有效地存储和传输关于360度视频数据的信令信息。
根据本公开,可以通过基于超文本传输协议(HTTP)的自适应流(诸如,基于HTTP的动态自适应流(DASH))来传输关于360度视频数据的信令信息。
根据本公开,可以通过补充增强信息(SEI)消息或视频可用性信息(VUI)来存储和传输关于360度视频数据的信令信息,从而提高了总体传输效率。
根据本公开,可以有效地用信号通知指示视点组中所包括的至少一个视点是否彼此非毗邻的非毗邻标志信息。
根据本公开,可以有效地用信号通知指示当前视点是否是锚视点的锚视点标志信息。
附图说明
图1是示出根据实施方式的用于提供360内容的整体架构的图。
图2和图3例示了根据一些实施方式的媒体文件的结构。
图4例示了基于DASH的自适应流模型的整体操作的示例。
图5是示意性地例示了根据实施方式的360视频发送设备的配置的图。
图6是示意性地例示了根据实施方式的360视频接收设备的配置的图。
图7是例示了根据实施方式的用于描述3D空间的航空器主轴的概念的图。
图8示例性地例示了应用了360视频处理过程和基于投影格式的按区域打包过程的二维图像。
图9a和图9b示例性地例示了根据一些实施方式的投影格式。
图10a和图10b是例示了根据一些实施方式的切片的示图。
图11示出了根据实施方式的360度视频有关元数据的示例。
图12示意性地例示了视点、观看位置和观看方位的概念。
图13是示意性示出了根据实施方式的用于提供3DoF+视频的示例性架构的图。
图14a和图14b是例示了3DoF+端到端系统架构的示例的图。
图15是示意性例示了FLUS架构的示例的图。
图16是示意性例示了3DoF+发送终端的配置示例的图。
图17是示意性地例示了3DoF+接收终端的配置示例的图。
图18例示了在多个位置捕获关于VR内容的信息的示例。
图19例示了基于全局坐标系呈现的三个视点的示例。
图20例示了多个视点的视点组ID和非毗邻标志信息的示例。
图21a和图21b例示了根据多个视点是否彼此毗邻的显示的示例。
图22a和图22b例示了根据多个视点是否彼此毗邻的显示的另一示例。
图23示出了多个视点的视点组ID、非毗邻标志信息和锚视点标志信息的示例。
图24a和图24b例示了根据多个视点是否彼此毗邻的显示的又一示例。
图25a和图25b示出了多个视点的示例。
图26是例示了根据实施方式的操作360度视频发送设备的方法的流程图。
图27是例示了根据实施方式的360度视频发送设备的配置的框图。
图28是例示了根据实施方式的操作360度视频接收设备的方法的流程图。
图29是例示了根据实施方式的360度视频接收设备的配置的框图。
具体实施方式
根据本公开的实施方式,本文提供了一种由360度视频发送设备处理360度视频数据的方法。该方法包括:获取由至少一个图像获取装置捕获的360度视频数据;处理360度视频数据并推导包括全景图像的二维图片;生成360度视频数据的元数据;对关于二维图片的信息进行编码;并且基于关于二维图片的信息和元数据执行封装,其中,元数据包括指示在360度视频数据中的视点组中所包括的至少一个视点是否彼此非毗邻的非毗邻标志信息。
实施方式
下面描述的技术特征可以由运动图像专家组(MPEG)标准化组织应用于标准规范,并且可以用在处理视频、图像或音频的技术领域中。例如,在以下描述中公开的方法或实施方式可以涉及MPEG-I标准(ISO/IEC 23090)或遵循MPEG-1标准(ISO/IEC 23090)的下一代标准的公开内容。
本公开可以进行各种改变并且可以具有各种实施方式,并且将参照附图详细描述特定实施方式。然而,这并非旨在将本公开限制于特定实施方式。本说明书中使用的术语仅用来解释特定实施方式,并且非旨在限制本公开的技术精神。除非上下文另外明确指出,否则单数表达包括复数表达。在本说明书中,术语“包括”或“具有”旨在表示存在说明书中公开的特征、图形、步骤、操作、组成和组件或其组合,并且应理解为不排除存在或添加一个或更多个其它特征、图形、步骤、操作、组成、组件或其组合。
尽管为了方便描述不同功能而在附图中独立地示出了本公开中描述的各个元件,但这并不意味着元件以彼此分离的硬件或软件元件来实现。例如,两个或更多个元件可以组合以形成一个元件,或者一个元件可以划分为多个元件。在不脱离本公开的实质的情况下,各个元件被集成和/或分开的实施方式也在本公开的范围内。
在下文中,将参照附图详细描述本公开的示例性实施方式。相同的附图标记将用于附图中的相同组件,并且省略了相同组件的冗余描述。
图1是例示了根据实施方式的用于提供360内容的整体架构的图。
在本说明书中,“图像”可以意味着包括静止图像和作为一定时间内一系列静止图像的集合的视频的概念。另外,“视频”并不一定意味着一段时间内的一系列静止图像的集合。在某些情况下,静止图像可以解释为包含在视频中的概念。
为了向用户提供虚拟现实(VR),可以考虑提供360度内容的方法。这里,360度内容可以称为三个自由度(3DoF)内容,并且VR可以是指用于复制真实或虚拟环境的技术或环境。VR可以人工地向用户提供感官体验,因此用户可以通过其体验电子投影环境。
360内容可以是指用于实现和提供VR的全部内容,并且可以包括360度视频和/或360音频。360度视频和/或360音频也可以称为3D视频和/或3D音频,360度视频可以是指提供VR所需的并且同时在所有方向(360度)捕获或再现的视频或图像内容。在下文中,360度视频可以是指360度视频。360度视频可以是指根据3D模型在各种类型的3D空间中呈现的视频或图像。例如,可以在球形表面上呈现360度视频。360音频可以是用于提供VR的音频内容,并且可以是指可以使音频生成源被识别为位于特定3D空间中的空间音频内容。360音频也可以称为3D音频。可以生成、处理并向用户发送360内容,并且用户可以使用360内容来消费VR体验。360视频可以称为全景视频,而360图像可以称为全景图像。
为了提供360度视频,可以首先使用一个或更多个相机捕获360度视频。可以通过一系列处理来发送所捕获的360度视频,并且在接收侧所接收的数据可以被处理成原始360度视频并被渲染。然后,可以将360度视频提供给用户。
具体地,用于提供360度视频的整个过程可以包括捕获过程、准备过程、发送过程、处理过程、渲染过程和/或反馈过程。
捕获过程可以是指通过一个或更多个相机捕获多个视点的图像或视频的过程。通过捕获过程可以生成如图1的部分110中所示的图像/视频数据。图1的部分110中的每个平面可以是指每个视点的图像/视频。所捕获的图像/视频可以称为原数据。在捕获过程中,可以生成与捕获有关的元数据。
可以使用用于VR的专用相机进行捕获。根据实施方式,当要提供使用计算机生成的用于虚拟空间的360度视频时,可以不执行使用实际相机的捕获操作。在这种情况下,捕获过程可以由简单地生成相关数据的过程来代替。
准备过程可以是处理在捕获过程中生成的元数据和所捕获的图像/视频的过程。在准备过程中,可以对捕获的图像/视频进行拼接、投影、按区域打包和/或编码。
首先,图像/视频可以进行拼接过程。拼接过程可以是连接所捕获的图像/视频以创建单个全景图像/视频或球形图像/视频的过程。
然后,拼接的图像/视频可以经过投影过程。在投影过程中,可以将拼接的图像/视频投影到2D图像上。依据上下文,2D图像可以称为2D图像帧。投影到2D图像上可以称为映射到2D图像。如图1的部分120所示,投影的图像/视频数据可以采取2D图像的形式。
投影到2D图像上的视频数据可以经过按区域打包过程,以提高视频编码效率。按区域打包可以是指将投影到2D图像上的视频数据划分为多个区域并处理这些区域的过程。在此,区域可以是指通过划分上面投影有360度视频数据的2D图像而获得的区域。根据实施方式,可以通过均等地或随机地划分2D图像来区分这样的区域。根据实施方式,可以根据投影方案来划分区域。按区域打包过程可以是可选过程,因此可以从准备过程中省略。
根据实施方式,该处理过程可以包括旋转区域或在2D图像上重新排列区域以提高视频编码效率的过程。例如,可以旋转区域,使得区域的特定侧面彼此靠近放置。因此,可以提高编码效率。
根据实施方式,处理过程可以包括增加或减小特定区域的分辨率以使360度视频的区域的分辨率差异化的过程。例如,360度视频的与相对重要区域相对应的区域的分辨率可以相对于其它区域的分辨率而增加。投影到2D图像上的视频数据或按区域打包的视频数据可以经过采用视频编解码器的编码过程。
根据实施方式,准备过程可以进一步包括编辑过程。在编辑过程中,可以在投影之前或之后编辑图像/视频数据。在准备过程中,可以生成用于拼接/投影/编码/编辑的元数据。另外,可以生成关于投影到2D图像上的视频数据的初始视点或感兴趣区域(ROI)的元数据。
发送过程可以是处理并发送图像/视频数据和通过准备过程获得的元数据的过程。可以执行根据任何传输协议的处理以进行发送。可以经由广播网络和/或宽带来传递已经被处理用于发送的数据。可以按需向接收侧传递数据。接收侧可以通过各种路径接收数据。
处理过程可以是指对接收到的数据进行解码并且将投影的图像/视频数据重新投影到3D模型上的过程。在此过程中,投影到2D图像上的图像/视频数据可以重新投影到3D空间上。依据上下文,该过程可以称为映射投影。在此,数据所映射到的3D空间的形状可以取决于3D模型。例如,3D模型可以包括球体、立方体、圆柱体和金字塔。
根据实施方式,处理过程可以进一步包括编辑过程和放大过程。在编辑过程中,可以在重新投影之前或之后编辑图像/视频数据。当图像/视频数据具有减小的尺寸时,可以通过在放大过程中对样本进行放大来增加图像/视频数据的尺寸。当需要时,可以通过缩小来减小尺寸。
渲染过程可以是指渲染和显示重新投影到3D空间上的图像/视频数据的过程。重新投影和渲染可以统一表示为在3D模型上渲染。在3D模型上重新投影(或渲染)的图像/视频可以采用如图1的部分130所示的形式。图1的部分130对应于将图像/视频数据重新投影到球体的3D模型上的情况。用户可以通过VR显示器等观看渲染的图像/视频的区域的一部分。在此,用户观看的区域可以采用如图1的部分140所示的形式。
反馈过程可以是指向发送侧传递可在显示过程中获取的各种类型的反馈信息的过程。通过反馈过程,可以在360度视频消费中提供交互性。根据实施方式,可以在反馈过程向发送侧传递头部方位信息、指示用户当前观看的区域的视口信息等。根据实施方式,用户可以与在VR环境中实现的内容进行交互。在这种情况下,可以在反馈过程中向发送侧或服务提供商传递与交互有关的信息。在实施方式中,可以跳过反馈过程。
头部方位信息可以是指关于用户头部的位置、角度和运动的信息。基于该信息,可以计算关于在360度视频中用户当前观看的区域的信息,即,视口信息。
视口信息可以是关于在360度视频中用户当前观看的区域的信息。可以使用该信息来执行注视分析,以检查用户如何消费360度视频以及用户注视360度视频的区域多长时间。注视分析可以在接收侧执行,并且分析结果可以在反馈信道上被传递到发送侧。诸如VR显示器之类的装置可以基于用户头部的位置/方位、装置所支持的垂直或水平视场(FOV)信息等来提取视口区域。
根据实施方式,前述反馈信息可以在接收侧被消耗并且被传递到发送侧。即,可以使用上述反馈信息来执行接收侧的解码、重新投影和渲染过程。例如,可以使用头部方位信息和/或视口信息优先对仅与用户当前观看的区域相对应的360度视频进行解码和渲染。
在此,视口或视口区域可以是指360度视频中的用户当前观看的区域。视点可以是在360度视频中的用户观看的点,并且可以表示视口区域的中心点。即,视口是以视点为中心的区域,并且该区域的尺寸和形状可以由FOV确定,这将在后面进行描述。
在用于提供360度视频的上述架构中,经历了一系列捕获/投影/编码/发送/解码/重新投影/渲染过程的图像/视频数据可以被称为360度视频数据。术语“360度视频数据”可以用作包括与这样的图像/视频数据有关的元数据或信令信息的概念。
为了存储和发送诸如上述音频或视频数据之类的媒体数据,可以定义标准化的媒体文件格式。根据实施方式,媒体文件可以具有基于ISO基础媒体文件格式(ISOBMFF)的文件格式。
图2和图3例示了根据一些实施方式的媒体文件的结构。
根据实施方式的媒体文件可以包括至少一个盒。在此,盒可以是包含媒体数据或与媒体数据有关的元数据的数据块或对象。盒可以以层级结构布置。因此,数据可以根据盒来分类,并且媒体文件可以采取适合于存储和/或发送大型媒体数据的形式。另外,媒体文件可以具有在用户移动到媒体内容中的特定点的情况下便于访问媒体信息的结构。
根据实施方式的媒体文件可以包括ftyp盒、moov盒和/或mdat盒。
Ftyp盒(文件类型盒)可以提供与媒体文件的文件类型或兼容性有关的信息。该ftyp盒可以包括关于媒体文件的媒体数据的配置版本信息。解码器可以参考ftyp盒来识别媒体文件。
moov盒(电影盒)可以包括关于媒体文件的媒体数据的元数据。moov盒可以用作所有元数据的容器。moov框可以是元数据相关盒当中的处于最高级别的盒。根据实施方式,媒体文件中可以存在仅一个moov盒。
mdat盒(媒体数据盒)可以是实际上包含媒体文件的媒体数据的盒。媒体数据可以包含音频样本和/或视频样本,并且mdat盒可以用作包含这种媒体样本的容器。
根据实施方式,moov盒可以包括作为子盒的mvhd盒、trak盒和/或mvex盒。
Mvhd盒(电影头部盒)可以包含关于媒体文件中包含的媒体数据的媒体呈现相关信息。即,mvhd盒可以包含诸如媒体生成时间、改变时间、时间标准和媒体呈现时段之类的信息。
trak盒(轨迹盒)可以提供与媒体数据的轨迹有关的信息。trak盒可以包含诸如关于音频轨迹或视频轨迹的流相关信息、呈现相关信息、以及访问相关信息之类的信息。依据轨迹的数量,可以提供多个trak盒。
根据实施方式,trak盒可以包括作子盒的tkhd盒(轨迹头部盒)。Tkhd盒可以包含关于由trak盒指示的轨迹的信息。该tkhd盒可以包含诸如轨迹的生成时间、改变时间和轨迹标识符之类的信息。
mvex盒(电影扩展盒)可以指示媒体文件可以包括moof盒,这将在后面描述。可以需要扫描moov盒以识别特定轨迹的所有媒体样本。
根据实施方式,媒体文件可以被划分成多个片段(200)。因此,媒体文件可以被分段并存储或发送。媒体文件的媒体数据(mdat盒)可以被划分为多个片段,并且每个片段可以包括moof盒和划分的mdat盒。根据实施方式,可以需要ftyp盒和/或moov盒的信息来使用片段。
moof盒(电影片段盒)可以提供关于相应片段的媒体数据的元数据。Moof盒可以是与相应片段的元数据有关的盒当中的处于最高层的盒。
mdat盒(媒体数据盒)可以包含如上所述的实际媒体数据。mdat盒可以包含与每个片段相对应的媒体数据的媒体样本。
根据实施方式,上述的moof盒可以包括作为子盒的mfhd盒和/或traf盒。
mfhd盒(电影片段头部盒)可以包含与多个划分的片段的相关性有关的信息。mfhd盒可以包括序列号,以指示相应片段的媒体数据在所划分的数据当中的顺序位置。此外,可以基于mfhd盒来检查在划分的数据当中是否存在缺少数据。
traf盒(踪迹片段盒)可以包含关于相应踪迹片段的信息。traf盒可以提供关于片段中包括的划分轨迹片段的元数据。traf盒可以提供用于解码/再现轨迹片段中的媒体样本的元数据。可以依据轨迹片段的数量提供多个traf盒。
根据实施方式,上述的traf盒可以包括作为子盒的tfhd盒和/或trun盒。
tfhd盒(轨迹片段头部盒)可以包含关于相应轨迹片段的头部信息。Tfhd盒可以提供诸如由traf盒指示的轨迹片段的媒体样本的默认样本尺寸、时段、偏移和标识符之类的信息。
trun盒(轨迹片段运行盒)可以包含与相应轨迹片段有关的信息。trun盒可以包含诸如每个媒体样本的时段、尺寸和再现定时之类的信息。
媒体文件或媒体文件的片段可以被处理成段并发送。这些段可以包括初始化段和/或媒体段。
例示的实施方式210的文件可以是包含除媒体数据之外的与媒体解码器的初始化有关的信息的文件。该文件可以对应于上述初始化段。初始化段可以包括上述的ftyp盒和/或moov盒。
所例示的实施方式220的文件可以是包括上述片段的文件。例如,该文件可以对应于上述媒体段。媒体段可以包括上述的moof盒和/或mdat盒。媒体段可以进一步包括styp盒和/或sidx盒。
styp盒(段类型盒)可以提供用于标识所划分片段的媒体数据的信息。styp盒可以执行与上述关于所划分片段的styp盒相同的功能。根据实施方式,styp盒可以具有与ftyp盒相同的格式。
sidx盒(段索引盒)可以提供指示所划分片段的索引的信息。因此,可以指示所划分片段的顺序位置。
根据实施方式230,可以进一步提供ssix盒。当段被进一步划分为子段时,ssix盒(子段索引盒)可以提供指示子段的索引的信息。
媒体文件中的盒可以进一步包含关于如实施方式250中所示的盒或FullBox的基础的扩展信息。在该实施方式中,size字段,largesize可以指示相应盒的以字节为单位的长度。version字段可以指示相应盒格式的版本。Type字段可以指示盒的类型或标识符。flag字段可以指示与盒有关的标志。
根据实施方式,可以在基于DASH的自适应流模型中携带360度视频的字段(属性)。
图4例示了基于DASH的自适应流模型的整体操作的示例。
根据图中所示的实施方式400的基于DASH的自适应流模型描述了HTTP服务器和DASH客户端之间的操作。在此,DASH(基于HTTP的动态自适应流)是用于支持基于HTTP的自适应流的协议,并且可以依据网络状况动态地支持流。因此,可以无缝地播放AV内容。
首先,DASH客户端可以获取MPD。可以从诸如HTTP服务器之类的服务提供方传送MPD。DASH客户端可以基于用于访问段的信息向服务器请求MPD中描述的段。可以基于网络状况进行请求。
DASH客户端可以获取段,通过媒体引擎处理段并且在屏幕上显示经处理的段。DASH客户端可以通过实时地反映回放时间和/或网络状况来请求和获取必要的段(自适应流)。因此,可以无缝地播放内容。
MPD(媒体呈现描述)是包含允许DASH客户端动态地获取段的详细信息的文件,并且可以XML格式表示。
DASH客户端控制器可以考虑网络状况来生成用于请求MPD和/或段的命令。另外,DASH客户端控制器可以控制诸如媒体引擎之类的内部块来使用所获取的信息。
MPD解析器可以实时地解析所获取的MPD。因此,DASH客户端控制器可以生成用于获取必要段的命令。
段解析器可以实时地解析所获取的段。诸如媒体引擎之类的内部块可以根据段中包含的信息执行特定操作。
HTTP客户端可以向HTTP服务器请求必要的MPD和/或段。另外,HTTP客户端可以向MPD解析器或段解析器传递从服务器获取的MPD和/或段。
媒体引擎可以基于段中包括的媒体数据在屏幕上显示内容。在该操作中,可以使用MPD的信息。
DASH数据模型可以具有层级结构410。媒体呈现可以由MPD来描述。MPD可以描述用于媒体呈现的多个时段的时间序列。时段可以代表媒体内容的一个区段。
在一个时段中,数据可以包括在适配集中。适配集可以是可以交换的多个媒体内容分量的集合。适配可以包括表示的集合。表示可以对应于媒体内容分量。在一个表示中,内容可以在时间上划分为多个段,这可以意欲用于适当的可访问性和传递。为了访问每个段,可以提供每个段的URL。
MPD可以提供与媒体呈现有关的信息。时段元素、适配集元素和表示元素可以分别描述相应的时段、相应的适配集和相应的表示。表示可以划分为子表示。子表示元素可以描述相应的子表示。
在此,可以定义通用属性/元素。通用属性/元素可以应用于(包括在)子表示中。通用属性/元素可以包括EssentialProperty(基本特性)和/或SupplementalProperty(补充特性)。
EssentialProperty可以是包括在处理相应媒体呈现相关数据中被视为基本元素的元素的信息。SupplementalProperty可以是包括在处理相应媒体呈现相关数据中可以使用的元素的信息。在实施方式中,当通过MPD传递时,可以在EssentialProperty和/或SupplementalProperty中定义稍后将描述的描述符。
图5是示意性地例示了根据实施方式的360视频发送设备的配置的图。
根据实施方式的360视频发送设备可以执行与上述准备过程或发送过程有关的操作。360视频发送设备可以包括作为内部/外部元件的数据输入单元、拼接器、投影处理器、按区域打包处理器(未示出)、元数据处理器、(发送侧)反馈处理器、数据编码器、封装处理器、发送处理器和/或发送器。
数据输入单元可以接收每个捕获的视点的图像/视频。这些视点特定图像/视频可以是由一个或更多个相机捕获的图像/视频。数据输入单元还可以接收在捕获过程中生成的元数据。数据输入单元可以向拼接器传递每个视点的输入图像/视频,并且向信令处理器传递捕获过程的元数据。
拼接器可以对所捕获的每个视点的图像/视频执行拼接。拼接器可以向投影处理器传递经拼接的360视频数据。必要时,拼接器可以从元数据处理器接收必要的元数据,并使用其进行拼接。拼接器可以向元数据处理器传递在拼接过程中生成的元数据。拼接过程的元数据可以包含诸如是否已经执行拼接的指示以及拼接类型之类的信息。
投影处理器可以将经拼接的360视频数据投影到2D图像上。投影处理器可以根据将在后面描述的各种方案执行投影。投影处理器可以考虑每个视点的360视频数据的相应深度来执行映射。必要时,投影处理器可以从元数据处理器接收投影所需的元数据,并将其用于投影操作中。投影处理器可以向元数据处理器传递在投影过程中生成的元数据。投影处理器的元数据可以包括投影方案的类型。
按区域打包处理器(未示出)可以执行上述的按区域打包过程。即,按区域打包处理器可以执行诸如将投影的360视频数据划分为区域,旋转或重新排列每个区域,或者改变每个区域的分辨率之类的处理。如上所述,按区域打包过程是可选的。当跳过按区域打包时,可以省略按区域打包处理器。必要时,按区域打包处理器可以从元数据处理器接收按区域打包所需的元数据,并将其用于按区域打包操作中。按区域打包处理器可以向元数据处理器传递在按区域打包过程中生成的元数据。按区域打包处理器的元数据可以包括每个区域的旋转度和尺寸。
根据实施方式,上述的拼接器、投影处理器和/或按区域打包处理器可以由一个硬件组件来实现。
元数据处理器可以处理可在捕获过程、拼接过程、投影过程、按区域打包过程、编码过程、封装过程和/或发送过程中生成的元数据。使用元数据,元数据处理器可以生成360视频相关元数据。根据实施方式,元数据处理器可以以信令表的形式生成360视频相关元数据。依据信令上下文,360视频相关元数据可以称为元数据或360视频相关信令信息。根据需要,元数据处理器还可以向360视频发送设备的内部元件传递所获取或所生成的元数据。元数据处理器可以向数据编码器、封装处理器和/或发送处理器发送360视频相关元数据,使得可以向接收侧发送元数据。
数据编码器可以对投影到2D图像上的360视频数据和/或按区域打包的360视频数据进行编码。360视频数据可以以各种格式编码。
封装处理器可以以文件的形式封装经编码的360视频数据和/或360视频相关元数据。在此,可以从上述元数据处理器接收360视频相关元数据。封装处理器可以以诸如ISOBMFF或CFF之类的文件格式来封装数据,或者将数据处理为DASH段等。根据实施方式,封装处理器可以包括文件格式的360视频相关元数据。360相关元数据可以例如包括在ISOBMFF的各个层级的盒中,或者可以作为数据包含在文件的单独轨迹中。根据实施方式,封装处理器可以将360视频相关元数据封装到文件中。发送处理器可以根据文件格式处理封装的360视频数据,以便进行发送。发送处理器可以根据任何传输协议来处理360视频数据。用于发送的处理可以包括用于在广播网络上进行传递的处理以及用于在宽带上进行传递的处理。根据实施方式,发送处理器不仅可以接收360视频数据,而且可以从元数据处理器接收360视频相关元数据,并且可以对其进行处理,以便进行发送。
发送器可以在广播网络和/或宽带上发送经处理以进行发送的360视频数据和/或360视频相关元数据。发送器可以包括用于在广播网络上发送的元件和/或用于在宽带上发送的元件。
根据实施方式,360视频发送设备可以进一步包括作为内部/外部元件的数据存储单元(未示出)。数据存储单元可以在向发送处理器发送经编码的360视频数据和/或360视频相关元数据之前,将其进行存储。这些数据可以以诸如ISOBMFF之类的文件格式存储。当实时发送360视频时,可以不需要数据储存单元。但是,当根据需要以NRT(非实时)或在宽带上发送视频时。封装的360数据可以在数据储存单元中存储一定时间段,然后进行发送。
根据另一实施方式,360视频发送设备可以进一步包括作为内部/外部元件的(发送侧)反馈处理器和/或网络接口(未示出)。网络接口可以从根据本公开的360视频接收设备接收反馈信息,并将其传递到发送侧反馈处理器。发送侧反馈处理器可以向拼接器、投影处理器、按区域打包处理器、数据编码器、封装处理器、元数据处理器和/或发送处理器传递反馈信息。根据实施方式,在反馈信息被传递到元数据处理器之后,该反馈信息可以被依次传递到每个内部元件。接收反馈信息的内部元件可以在360视频数据的后续处理中反映该反馈信息。
根据360视频发送设备的另一实施方式,按区域打包处理器可以旋转每个区域并将其映射到2D图像上。在该操作中,各个区域可以在不同方向上以不同角度旋转,然后映射到2D图像上。可以考虑在投影之前在球形表面上邻近360视频数据或被拼接的部分来执行区域的旋转。可以通过360视频相关元数据来发信号通知关于区域的旋转的信息(即,旋转方向、角度等)。根据360视频发送设备的另一实施方式,数据编码器可以针对每个区域不同地执行编码。数据编码器可以以高质量对特定区域进行编码并且以低质量对其它区域进行编码。发送侧反馈处理器可以向数据编码器传递从360视频接收设备接收的反馈信息,使得数据编码器针对每个区域使用差异化编码方法。例如,发送侧反馈处理器可以向数据编码器传递从接收侧接收到的视口信息。数据编码器可以针对包括由视口信息所指示的领域的区域以比其它区域更高的质量(UHD等)进行编码。
根据360视频发送设备的另一实施方式,发送处理器可以针对每个区域不同地执行用于发送的处理。发送处理器可以为各个区域应用不同的传输参数(调制阶数、编码率等),使得为每个区域发送的数据可以具有不同的鲁棒性。
然后,发送侧反馈处理器可以向发送处理器传递从360视频接收设备接收的反馈信息,使得发送过程针对每个区域执行差异化发送处理。例如,发送侧反馈处理器可以向发送处理器传递从接收侧接收的视口信息。发送处理器可以对包括由视口信息所指示的领域的区域执行用于发送的处理,使得这些区域可以具有比其它区域更高的鲁棒性。
上述360视频发送设备的内部/外部元件可以是以硬件实现的硬件元件。根据实施方式,内部/外部元件可以被改变、省略或用其它元件代替。根据实施方式,可以向360视频发送设备添加补充元件。
图6是示意性地例示了根据实施方式的360视频接收设备的配置的图。
根据实施方式,360视频接收设备可以执行与上述处理过程和/或渲染过程有关的操作。360视频接收设备可以包括作为内部/外部元件的接收器、接收处理器、解封装处理器、数据解码器、元数据解析器、(接收侧)反馈处理器、重新投影处理器和/或渲染器。信令解析器可以称为元数据解析器。
接收器可以接收由根据实施方式的360视频发送设备发送的360视频数据。依据发送信道,接收器可以经由广播网络或宽带接收360视频数据。
接收处理器可以根据传输协议来处理接收到的360视频数据。接收处理器可以执行上述发送处理器的过程的反向过程,使得反向过程对应于发送侧上用于发送的处理。接收处理器可以向解封装处理器传递所获取的360视频数据,并且向元数据解析器传递所获取的360视频相关元数据。接收处理器所获取的360视频相关元数据可以是信令表的形式。
解封装处理器可以对从接收处理器以文件形式接收的360视频数据进行解封装。解封装处理器可以根据ISOBMFF等对文件进行解封装,以获取360视频数据或360视频相关元数据。所获取的360视频数据可以传递给数据解码器,并且所获取的360视频相关元数据可以传递给元数据解析器。由解封装处理器所获取的360视频相关元数据可以是文件格式的盒或轨迹的形式。必要时,解封装处理器可以从元数据解析器接收解封装所需的元数据。
数据解码器可以对360视频数据进行解码。数据解码器可以从元数据解析器接收解码所需的元数据。在数据解码过程中获取的360视频相关元数据可以被传递给元数据解析器。
元数据解析器可以解析/解码360视频相关元数据。元数据解析器可以向数据解封装处理器、数据解码器、重新投影处理器和/或渲染器传递所获取的元数据。
重新投影处理器可以重新投影解码后的360视频数据。重新投影处理器可以将360视频数据重新投影在3D空间上。3D空间的形状可以取决于所采用的3D模型。重新投影处理器可以从元数据解析器接收重新投影所需的元数据。例如,重新投影处理器可以从元数据解析器接收关于所采用的3D模型的类型的信息以及相应详细信息。根据实施方式,重新投影处理器可以使用重新投影所需的元数据仅将与3D空间中的特定领域相对应的360视频数据重新投影到3D空间上。
渲染器可以渲染重新投影的360度视频数据。如上所述,可以在3D空间中渲染360视频数据。如上所述,在一次发生两个过程的情况下,重新投影处理器和渲染器可以集成在一起,并且这些过程可以全部由渲染器执行。根据实施方式,渲染器可以根据关于用户的观看位置信息仅渲染用户正在观看的部分。
用户可以通过VR显示器等观看渲染的360视频的一些领域。VR显示器是回放360视频的装置,并且可以包括在360视频接收设备中(处于束缚状态)或作为单独的装置连接到360视频接收设备(处于非束缚状态)。
根据实施方式,360视频接收设备可以进一步包括作为内部/外部元件的(接收侧)反馈处理器和/或网络接口(未示出)。接收侧反馈处理器可以从渲染器、重新投影处理器、数据解码器、解封装处理器和/或VR显示器获取反馈信息,并对其进行处理。反馈信息可以包括视口信息、头部方位信息和注视信息。网络接口可以从接收侧反馈处理器接收反馈信息,并将该反馈信息发送到360视频发送设备。
如上所述,反馈信息不仅可以传递给发送侧,而且可以在接收侧被消费。接收侧反馈处理器可以将所获取的反馈信息传递到360视频接收设备的内部元件,使得该信息可以反映在诸如渲染之类的过程中。接收侧反馈处理器可以向渲染器、重新投影处理器、数据解码器和/或解封装处理器传递反馈信息。例如,渲染器可以基于反馈信息优先渲染用户观看的领域。解封装处理器和数据解码器可以优先对用户正在观看或将要观看的领域进行解封装和解码。
根据上述实施方式的360视频接收设备的内部/外部元件可以是以硬件实现的硬件元件。根据实施方式,内部/外部元件可以被改变、省略或用其它元件来代替。根据实施方式,可以向360视频接收设备添加补充元件。
在另一方面,根据上述实施方式的360视频接收设备的操作方法可以涉及发送360视频的方法和接收360视频的方法。根据实施方式的发送/接收360视频的方法可以由根据上述实施方式的360视频发送/接收设备或由该设备的实施方式来实现。
根据上述实施方式的360视频发送/接收设备、发送/接收方法及其内部/外部元件的实施方式可以彼此组合。例如,投影处理器的实施方式和数据编码器的实施方式可以彼此组合以配置与组合一样多的360视频发送设备的实施方式。
图7是例示了根据实施方式的用于描述3D空间的航空器主轴的概念的图。
在本公开中,航空器主轴的概念可以用于表示3D空间中的特定点、位置、方向、间隔、领域等。即,在本公开中,可以描述在投影之前或之后给出的3D空间的概念,并且航空器主轴的概念可以用于在其上执行信令。根据实施方式,可以使用基于采用X、Y和Z轴的笛卡尔坐标系或球面坐标系的方法。
航空器可以在三个维度上自由旋转。三维轴分别称为俯仰轴(pitch axis)、偏摆轴(yaw axis)和翻滚轴(roll axis)。在本说明书中,这些轴可以简单地表示为俯仰、偏摆和翻滚,或者表示为俯仰方向、偏摆方向、翻滚方向。
在一个示例中,翻滚轴可以对应于笛卡尔坐标系的X轴或从前后轴。另选地,在航空器主轴的概念中,翻滚轴可以是从航空器的前鼻延伸至尾部的轴线,并且在翻滚方向的旋转可以是指绕翻滚轴的旋转。指示围绕翻滚轴旋转的角度的翻滚值的范围可以从-180度到180度,并且-180度和180度的边界值可以包括在翻滚值的范围内。
在另一示例中,俯仰轴可以对应于笛卡尔坐标系中的Y轴或左右轴。另选地,俯仰轴可以是指航空器的前鼻绕其向上/向下旋转的轴线。在所示的航空器主轴的概念中,俯仰轴可以是指从航空器的一个机翼延伸到另一机翼的轴线。代表绕俯仰轴的旋转角度的俯仰值的范围可以在-90度和90度之间,并且-90度和90度的边界值可以包括在俯仰值的范围内。
在另一示例中,偏摆轴可以对应于笛卡尔坐标系的Z轴或垂直轴。另选地,偏摆轴可以是指航空器的前鼻绕其向左/向右旋转的参考轴线。在所示的航空器主轴的概念中,偏摆轴可以是指从航空器的顶部延伸到底部的轴线。代表绕偏摆轴的旋转角度的偏摆值的范围可以是从-180度到180度,并且-180度和180度的边界值可以包括在偏摆值的范围内。
在根据实施方式的3D空间中,作为用于确定偏摆轴、俯仰轴和翻滚轴的基准的中心点可以不是静态的。
如上所述,可以基于俯仰、偏摆和翻滚的概念来描述本公开中的3D空间。
如上所述,投影在2D图像上的视频数据可以经过按区域打包过程,以提高视频编码效率等。按区域打包过程可以是指将投影到2D图像上的视频数据划分为多个区域并根据区域处理视频数据的过程。区域可以是指通过划分其上投影有360度视频数据的2D图像而获得的区域。2D图像的划分区域可以通过投影方案来区分。在此,2D图像可以称为视频帧或帧。
就此而言,本公开提出了一种根据投影方案用于按区域打包过程的元数据以及用信号通知元数据的方法。可以基于元数据更有效地执行按区域打包过程。
图8例示性地示例了应用了360视频处理过程和基于投影格式的按区域打包过程的二维图像。
图8中的(a)可以例示处理输入的360度视频数据的过程。参照图8中的(a),输入观看位置的360度视频数据可以被拼接并根据各种投影方案投影到3D投影结构上。投影到3D投影结构上的360度视频数据可以表示为2D图像。即,360视频数据可以被拼接并投影到2D图像中。其中投影有360视频数据的2D图像可以被表示为投影帧。另外,可以对投影帧执行上述操作。即,可以执行诸如将包括投影帧上的投影的360视频数据的领域划分为多个区域,旋转或重新排列每个区域,或者改变每个区域的分辨率之类的处理。换句话说,按区域打包过程可以表示将投影帧映射到一个或多更个打包帧的过程。执行按区域打包过程可以是可选的。当跳过按区域打包过程时,打包帧可以与投影帧相同。当应用按区域打包过程时,投影帧的每个区域可以映射到打包帧的区域,并且可以推导出指示投影帧中的每个区域所映射至的打包帧的区域的位置、形状和尺寸的元数据。
图8中的(b)和图8中的(c)可以示出其中投影帧的每个区域被映射到打包帧的区域的示例。参照图8中的(b),360视频数据可以根据全景投影方案投影到2D图像(或帧)中。投影帧的顶区域、中间区域和底区域可以经过按区域打包过程并且如图的右侧所示重新排列。在此,顶区域可以代表2D图像上全景的顶表面,中间区域可以代表2D图像上全景的中间表面,并且底区域可以代表2D图像上全景的底表面。参照图8中的(c),360视频数据可以根据立方体投影方案投影到2D图像(或帧)中。投影帧的前区域、后区域、顶区域、底区域、右区域和左区域可以经过按区域打包过程并如图右侧所示重新排列。在此,前区域可以代表2D图像上的立方体的正面,并且后区域可以代表2D图像上的立方体的背面。另外,顶区域可以代表2D图像上的立方体的顶面,并且底区域可以代表2D图像上的立方体的底面。右区域可以代表2D图像上的立方体的右面,并且左区域可以表示2D图像上的立方体的左面。
图8中的(d)可以示出可以投影360视频数据的各种3D投影格式。参照图8中的(d),3D投影格式可以包括四面体、立方体、八面体、十二面体和二十面体。图8中的(d)所示的2D投影可以表示作为2D图像的投影帧,该投影帧表示投影到3D投影格式上的360视频数据。
根据实施方式,作为投影格式,例如,可以使用各种投影格式(或投影方案)中的一些或全部。可以通过例如元数据的投影格式字段来指示用于360视频的投影格式。
图9a和图9b示例性地示出了根据一些实施方式的投影格式。
图9a中的(a)可以示出等距投影格式。当使用等距投影格式时,球面上的点(r,θ0,0)(即,θ=θ0且的点)可以映射到2D图像的中心像素。另外,可以假设前相机的主要点为球面上的点(r,0,0)。而且,可以固定为因此,通过变换为XY坐标系而获得的值(x,y)可以通过下式变换为2D图像上的像素(X,Y)。
式1
X=Kx *x+X○=Kx *(θ-θ0)*r+X○
Y=-Ky *y-Y○
另外,当2D图像的左上像素位于XY坐标系的(0,0)时,沿x轴的偏移值和沿y轴的偏移值可以由下式给出。
式2
X○=Kx *π*r
Y○=-Ky *π/2*r
基于该式,可以如下地给出用于转换成XY坐标系的式。
式3
X=KxX+X○=Kx *(T+θ-θ0)*r
例如,当θ0=0时,即,当2D图像的中心像素指示球面上θ=0的数据时,球面可以映射到2D图像中相对于(0,0)的宽度=2Kxπr且高度=Kxπr的领域。球面上的数据可以映射到2D图像的整个顶侧。另外,球面上(r,π/2,0)的数据可以映射到2D图像上的点(3πKxr/2,πKxr/2)。
在接收侧,2D图像上的360视频数据可以重新投影到球面上。可以如下给出该操作的变换问题。
式4
θ=θ0+X/Kx *r-π
图9a中的(b)可以示出立方体投影格式。例如,拼接的360视频数据可以显示在球面上。投影处理器可以将360视频数据划分为立方体形状,以将其投影到2D图像上。球面上的360视频数据可以对应于立方体的每个面,并且可以投影到2D图像上,如图9a中的(b)的左侧或右侧所示。
图9a中的(c)可以示出圆柱体投影格式。假设拼接的360视频数据可以显示在球面上,则投影处理器可以将360视频数据划分为圆柱体形状并将其投影到2D图像上。球面上的360视频数据可以分别对应于圆柱体的侧面、顶面和底面,并且可以投影到2D图像上,如图9a中的(c)的左侧或右侧所示。
图9a中的(d)可以示出基于切片的投影格式。当使用基于切片的投影方案时,上述投影处理器可以将球面上的360视频数据划分为如图9a中的(d)所示的一个或更多个详细区域,以将其投影到2D图像上。详细区域可以被称为切片。
图9b中的(e)可以示出金字塔投影格式。当假设拼接的360视频数据可以显示在球面上时,投影处理器可以认为360视频数据具有金字塔形状,并且划分其各个面以将其投影到2D图像上。球面上的360视频数据可以分别对应于金字塔的正面和金字塔的四个侧面(左上、左下、右上、右下),并且可以如图8中的(e)的左侧或右侧所示地投影。这里,正面可以是包括由面向前方的相机获取的数据的领域。
图9b中的(f)可以示出全景投影格式。当使用全景投影格式时,如图9b中的(f)所示,上述投影处理器可以仅将球面上的360视频数据的侧表面投影到2D图像上。这可以与在圆柱体投影方案中不存在顶面和底面的情况相同。
根据实施方式,可以在没有拼接的情况下执行投影。图9b中的(g)可以示出没有拼接而执行投影的情况。当在没有拼接的情况下执行投影时,上述投影处理器可以将360视频数据投影到2D图像上,如图9b中的(g)所示。在这种情况下,可以跳过拼接,并且相机所获取的每个图像可以被直接投影到2D图像上。
参照图9b中的(g),两个图像可以没有拼接地投影到2D图像上。每个图像可以是通过球面相机(或鱼眼相机)中的每个传感器所获取的鱼眼图像。如上所述,接收侧可以拼接从相机传感器获取的图像数据,并且将拼接的图像数据映射到球面上以渲染球形视频,即,360视频。
图10a和图10b是例示了根据一些实施方式的切片的示图。
在投影到2D图像上或经过按区域打包之后获得的360视频数据可以划分为一个或更多个切片。图10a示出了一个2D图像划分为16个切片。在此,2D图像可以是上述投影帧或打包帧。根据本公开的360视频发送设备的另一实施方式,数据编码器可以独立地编码每个切片。
上述的按区域打包和切片化彼此区分开。按区域打包可以是指将投影到2D图像上的360视频数据划分为区域,并对区域进行处理以提高编码效率或调整分辨率。切片化可以是指数据解码器将投影帧或打包帧划分成称为切片的部分并独立地编码每个切片的操作。当提供360视频时,用户不会同时消费360视频的全部部分。切片化使得可以在有限带宽上向接收侧发送或在接收侧消费仅与重要部分或特定部分(诸如用户当前观看的视口)相对应的切片。当执行切片化时,可以更有效地利用有限带宽,并且与一次处理全部360视频数据的情况相比,接收侧可以减少计算负载。
区域和切片彼此区分开,因此区域和切片不必相同。然而,根据实施方式,区域和切片可以指代相同的领域。根据实施方式,根据切片执行按区域打包,因此区域和切片可以是相同的。根据实施方式,当根据投影方案的每个面和区域相同时,根据投影方案的每个面、区域和切片可以是指相同的领域。依据上下文,区域可以称为VR区域,或者切片可以称为切片区域。
如360内容提供商所建议的,感兴趣区域(ROI)可以是指用户感兴趣的领域。在制作360视频中,360内容提供商可以创建360视频,假设用户对某个领域感兴趣。根据实施方式,ROI可以对应于在360视频的内容中的播放重要内容的领域。
根据360视频发送/接收设备的另一实施方式,接收侧反馈处理器可以提取并收集视口信息,并将其发送到发送侧反馈处理器。在此过程中,可以使用两个网络接口在双方之间传输视口信息。在图10a的2D的图像中,显示了视口1000。在此,视口可以跨越2D图像上的9个切片。
在这种情况下,360视频发送设备可以进一步包括切片化系统。根据实施方式,切片化系统可以挨着数据编码器布置(如图10b所示),可以包括在上述数据编码器或发送处理器中,或者可以作为单独的内部/外部元件包括在360视频发送设备中。
切片化系统可以从发送侧的反馈处理器接收视口信息。切片化系统可以选择并发送仅包括视口区域的切片。在图10a所示的2D图像中,可以发送16个切片当中的包括视口区域1000的仅9个切片。在此,切片化系统可以以单播方式在宽带上发送切片。这是因为视口区域在用户之间不同。
在这种情况下,发送侧反馈处理器可以向数据编码器传递视口信息。数据编码器可以以比其它切片更高的质量对包括视口区域的切片进行编码。
在这种情况下,发送侧反馈处理器可以向元数据处理器传递视口信息。元数据处理器可以将与视口区域有关的元数据传递到360视频发送设备的每个内部元件,或者可以将与视口区域有关的元数据包括在360视频相关元数据中。
由于执行了切片化操作,可以节省传输带宽,并且可以通过对每个切片执行差异化处理来有效地执行数据处理/传输。
与视口区域有关的上述实施方式可以以类似方式应用于除视口区域之外的特定区域。例如,可以以与上述视口区域相同的方式处理以下区域:通过上述注视分析确定用户主要感兴趣的区域、ROI以及当用户通过VR显示器(初始视点)观看360视频时首先播放的区域。
根据360视频发送设备的另一实施方式,发送处理器可以不同地处理每个切片以进行发送。发送处理器可以针对各个切片应用不同的发送参数(调制阶数、编码率等),使得针对每个切片所传递的数据可以具有不同的鲁棒性。
然后,发送侧反馈处理器可以向发送处理器传递从360视频接收设备接收到的反馈信息,使得发送处理器对每个切片进行差异化处理以进行发送。例如,发送侧反馈处理器可以向发送处理器传递从接收侧接收到的视口信息。发送处理器可以对包括视口区域的切片执行用于发送的处理,使得切片可以具有比其它切片更高的鲁棒性。
图11示出了根据实施方式的360度视频相关元数据的示例。
如上所述,360度视频相关元数据可以包括关于360度视频的各种元数据。依据上下文,360度视频相关元数据可以称为360度视频相关信令信息。360度视频相关元数据可以以单独信令表发送,可以以DASH MPD发送,或者可以在诸如ISOBMFF之类的文件格式中以盒形式发送。当以盒形式包括360度视频相关元数据时,它可以包括在诸如文件、片段、轨迹、样本条目和样本之类的各个层级中,以包括用于相应层级的数据的元数据。
根据实施方式,稍后将描述的元数据的一部分可以以信令表来配置并以信令表传递,并且其另一部分可以盒或轨迹形式包括在文件格式中。
根据360度视频相关元数据的实施方式,360度视频相关元数据可以包括与投影方案有关的默认元数据、立体相关元数据、以及初始视图/初始视点相关元数据、ROI相关元数据、FOV(视场)相关元数据、和/或裁剪区域相关元数据。根据实施方式,360度视频相关元数据可以进一步包括补充元数据。
360度视频相关元数据的实施方式可以包括默认元数据、立体相关元数、初始视图/视点相关元数据、ROI相关元数据、FOV相关元数据、裁剪区域相关元数据和/或以后可以添加的元数据中的至少一个。根据本公开的360度视频相关元数据的实施方式可以根据每个实施方式中包括的详细元数据的情况的数量以各种方式来配置。根据实施方式,除了上述信息之外,360度视频相关元数据可以进一步包含补充信息。
stereo_mode字段可以指示由相应360度视频所支持的3D布局。仅此字段可以指示360度视频是否支持3D布局。在这种情况下,可以省略上述的is_stereoscopic字段。当此字段的值为0时,360度视频可以处于单模式。即,投影的2D图像可以仅包括一个单视图。在这种情况下,360度视频可以不支持3D布局。
当该字段的值为1或2时,360度视频可以分别符合左右布局和上下布局。左右布局和上下布局也可以分别称为并排格式和上下格式。在左右布局中,其上投影有左/右图像的2D图像可以分别位于图像帧中的左侧和右侧。在上下布局中,其上投影有左/右图像的2D图像可以分别位于图像帧的顶部和底部。当该字段的其它值可以保留以供将来使用时。
初始视图相关元数据可以包括关于在初始播放360度视频时用户的视图(初始视点)的信息。初始视图相关元数据可以包括initial_view_yaw_degree字段、initial_view_pitch_degree字段和/或initial_view_roll_degree字段。根据实施方式,初始视图相关元数据可以进一步包括补充信息。
initial_view_yaw_degree字段、initial_view_pitch_degree字段和initial_view_roll_degree字段可以指示回放相应360度视频时的初始视图。即,可以由这三个字段指示在回放中初始显示的视口的中心点。具体地,initial_view_yaw_degree字段可以指示初始视图的偏摆值。即,initial_view_yaw_degree字段可以指示中心点的位置绕偏摆轴的旋转的方向(符号)和程度(角度)。initial_view_pitch_degree字段可以指示初始视图的俯仰值。即,initial_view_pitch_degree字段可以指示中心点的位置围绕俯仰轴的旋转的方向(符号)和程度(角度)。initial_view_roll_degree字段可以指示初始视图的翻滚值。即,initial_view_roll_degree字段可以指示中心点的位置绕翻滚轴的旋转的方向(符号)和程度(角度)。基于initial_view_yaw_degree字段、initial_view_pitch_degree字段和initial_view_roll_degree字段,可以指示回放360度视频时的初始视图,即,在回放中初始显示的视口的中心点。从而,可以在初始视点处向用户显示和提供360度视频的特定区域。另外,基于视场(FOV),可以确定初始视口相对于所指示的初始视图的宽度和高度。即,使用这三个字段和FOV信息,360度视频接收设备可以向用户提供360度视频的特定区域作为初始视口。
根据实施方式,由初始视图相关元数据指示的初始视图可以在场景之间变化。即,360度视频的场景根据360内容的时间流而改变,并且用户首先看到的初始视图或初始视口可以在360度视频的场景之间变化。在这种情况下,初始视图相关元数据可以指示每个场景的初始视图。为此,初始视图相关元数据可以进一步包括用于标识应用了相应初始视图的场景的场景标识符。另外,由于FOV可以在360度视频的场景之间变化,所以初始视图相关元数据可以进一步包括指示与场景相对应的FOV的场景特定FOV信息。
ROI相关元数据可以包括与上述ROI有关的信息。ROI相关元数据可以包括2d_roi_range_flag字段和/或3d_roi_range_flag字段。2d_roi_range_flag字段可以指示ROI相关元数据是否包括表示基于2D图像的ROI的字段,并且3d_roi_range_flag字段可以指示ROI相关元数据是否包括表示基于3D空间的ROI的字段。根据实施方式,ROI相关元数据可以进一步包括补充信息,诸如根据ROI的差异化编码信息和根据ROI的差异化发送处理信息。
当ROI相关元数据包括表示基于2D图像的ROI的字段时,ROI相关元数据可以包括min_top_left_x字段、max_top_left_x字段、min_top_left_y字段、max_top_left_y字段、min_width字段、max_width字段、min_height字段、max_height字段、min_x字段、max_x字段、min_y字段和/或max_y字段。
min_top_left_x字段、max_top_left_x字段、min_top_left_y字段和max_top_left_y字段可以指示ROI的左上端的坐标的最小值/最大值。也就是说,这些字段可以分别指示左上端的最小x坐标、最大x坐标、最小y坐标和最大y坐标。
min_width字段、max_width字段、min_height字段和max_height字段可以指示ROI的宽度和高度的最小值/最大值。即,这些字段可以分别指示宽度的最小值、宽度的最大值、高度的最小值和高度的最大值。
min_x字段、max_x字段、min_y字段和max_y字段可以指示ROI中的坐标的最小值/最大值。即,这些字段可以分别指示ROI中的坐标当中的最小x坐标、最大x坐标、最小y坐标和最大y坐标。这些字段可以省略。
当ROI相关元数据包括表示基于3D渲染空间中的坐标的ROI的字段时,ROI相关元数据可以包括min_yaw字段、max_yaw字段、min_pitch字段、max_pitch字段、min_roll字段、max_roll字段、min_field_of_view字段和/或max_field_of_view字段。
min_yaw字段、max_yaw字段、min_pitch字段、max_pitch字段、min_roll字段和max_roll字段可以指示3D空间中具有偏摆、俯仰和翻滚的最小值/最大值的ROI所占据的领域。即,这些字段可以指示绕偏摆轴的旋转量的最小值、绕偏摆轴的旋转量的最大值、绕俯仰轴的旋转量的最小值、绕俯仰轴的旋转量的最大值、绕翻滚轴的旋转量的最小值和绕翻滚轴的旋转量的最大值。
min_field_of_view字段和max_field_of_view字段可以指示相应360度视频数据的FOV的最小值/最大值。FOV可以是指在回放360度视频数据时一次显示的视野。min_field_of_view字段和max_field_of_view字段可以分别指示FOV的最小值和最大值。这些字段可以省略。这些字段可以包括在FOV相关元数据中,这将在后面描述。
FOV相关元数据可以包括与上述FOV有关的信息。FOV相关元数据可以包括content_fov_flag字段和/或content_fov字段。根据实施方式,FOV相关元数据可以进一步包括诸如与上述FOV的最小值/最大值有关的信息之类的补充信息。
content_fov_flag字段可以指示是否存在关于在制作360度视频时预期的FOV的信息。当此字段的值为1时,可以存在content_fov字段。
content_fov字段可以指示关于在制作相应360度视频时预期的FOV的信息。根据实施方式,可以基于360度视频接收设备的垂直或水平FOV来确定一次要向用户显示的360图像的领域。另选地,根据实施方式,可以考虑该字段的FOV信息来确定一次要向用户显示的360度图像的领域。
裁剪区域相关元数据可以包括关于在图像帧中实际上包含360度视频数据的领域的信息。图像帧可以包括在其上实际投影了360度视频数据的有效视频领域和未投影领域。在这种情况下,有效视频领域可以称为裁剪区域或默认显示区域。有效视频领域是在VR显示器上实际显示360度视频的区域。360度视频接收设备或VR显示器可以仅处理/显示有效视频领域。例如,当图像帧的宽高比为4:3时,仅图像帧中的除了图像帧的上部和下部的一部分之外的领域可以包含360度视频数据。该领域可以称为有效视频领域。
裁剪区域相关元数据可以包括is_cropped_region字段、cr_region_left_top_x字段、cr_region_left_top_y字段、cr_region_width字段和/或cr_region_height字段。根据实施方式,裁剪区域相关元数据可以进一步包括补充信息。
is_cropped_region字段可以是指示360度视频接收设备或VR显示器是否使用图像帧的整个领域的标志。这里,360度视频数据所映射到的领域或在VR显示器上显示的领域可以称为有效视频领域。is_cropped_region字段可以指示整个图像帧是否是有效视频领域。当图像帧的仅一部分是有效视频领域时,可以进一步添加以下4个字段。
cr_region_left_top_x字段、cr_region_left_top_y字段、cr_region_width字段和cr_region_height字段可以指示图像帧中的有效视频领域。这些字段可以分别指示有效视频领域的左上方的x坐标、有效视频领域的左上方的y坐标、有效视频领域的宽度和有效视频领域的高度。宽度和高度可以以像素为单位表示。
基于360视频的VR系统可以基于上述360视频处理过程,关于用户相对于360视频的位置,提供针对不同观看方位的视觉/听觉体验。在用户对于360视频的固定位置处,提供不同观看方位的视觉/听觉体验的VR系统可以称为基于3个自由度(DoF)的VR系统。能够在不同视点或观看位置处提供针对不同观看方位的扩展的视觉/听觉体验的VR系统可以被称为基于3DoF+或3DoF plus的VR系统。
图12示意性地例示了视点、观看位置和观看方位的概念。
参照图12,当假设如(a)中所示的空间(例如剧院)时,在该空间中标记的圆圈可以表示不同的视点。在相同空间中的各个视点处提供的视频/音频可以在相同时区中彼此关联。在这种情况下,可以根据特定视点处的用户的注视方向(例如,头部运动)的变化,向用户提供不同的视觉/听觉体验。即,对于特定视点可以假设如(b)中所示的各种观看位置的球体,并且可以提供反映每个观看位置的相对位置的图像/音频/文本信息。
如(c)中所示,在特定视点的特定观看位置处,可以如同在现有3DoF的情况下那样传递针对各种方向的视觉/听觉信息。此时,可以集成和提供主要源(例如,图像/音频/文本)和各种附加源。在这种情况下,信息可以与用户的观看方位相结合或独立于用户的观看方位来传递。
图13是示意性示出了根据实施方式的用于提供3DoF+视频的示例性架构的图。
图13可以示出包括3DoF+图像获取、预处理、发送、(后)处理、渲染和反馈过程的3DoF+端到端系统的流程图。
参照图13,获取过程可以是指通过捕获、合成或生成360视频来获取360视频的过程。通过该过程,可以针对多个位置获取根据注视方向的变化(例如,头部运动)的多条图像/音频信息。在此,图像信息可以包括深度信息以及视觉信息(例如,纹理)。如图像信息的示例1310所示,可以分别获取根据不同视点的不同观看位置的多条信息。
合成过程可以包括用于合成视频/图像、来自外部媒体的音频/声音效果和文本(字幕等)以及通过图像/音频输入设备获取的信息,以将其包括在用户体验中的过程和方法。
预处理过程可以是用于发送/传递所获取的360视频的准备(预处理)过程,并且可以包括上述的拼接过程、投影过程、按区域打包过程和/或编码过程。即,该处理可以包括用于根据制作者的意图来改变/补充图像/声音/文本信息的预处理过程和编码过程。例如,图像的预处理可以包括将获取的视觉信息映射到360球体上的操作(拼接)、去除领域边界、减小颜色/亮度差或向图像添加视觉效果的校正操作(编辑),根据视图将图像分段的操作(视图分段),将360球体上的图像映射到2D图像的操作(投影)、根据区域重新排列图像的操作(按区域打包)以及压缩图像信息的编码操作。如视频方面的示例1320所示,可以生成根据不同视点的不同观看位置的多个投影图像。
发送过程可以是指处理并发送通过准备过程(预处理过程)形成的图像/音频数据和元数据的过程。作为发送根据不同视点的不同观看位置的多个图像/音频数据和相关元数据的方法,可以如上所述地使用广播网络或通信网络,或者可以使用单向传递方法。
后处理和合成过程可以是指用于对接收/存储的视频/音频/文本数据进行解码并最终对其进行回放的后处理过程。例如,后处理过程可以包括对打包的图像进行解包的解包过程以及从2D投影图像恢复3D球形图像的重新投影过程。
渲染过程可以是指在3D空间中渲染和显示重新投影的图像/视频数据的过程。在此过程中,视频/音频信号可以重构为用于最终输出的形式。可以跟踪用户的ROI的观看方位、观看位置/头部位置和视点,并且可以根据此信息选择性地仅使用必要的图像/音频/文本信息。在图像信号的情况下,如示例1330中所示,可以根据用户的ROI选择不同的观看位置。最后,可以输出像示例1340那样的在特定视点处的特定观看位置的特定观看方位的图像。
图14a和图14b是例示了3DoF+端到端系统架构的示例的图。
如上所述的3DoF+360内容可以由图14a和图14b的架构提供。
参照图14a,360视频发送设备(发送终端)可以包括:获取单元,其配置为获取360视频(图像)/音频数据;视频/音频预处理器,其配置为处理所获取的数据;合成生成单元,其配置为合成补充信息;编码单元,其配置为对文本、音频和投影的360度视频进行编码;封装单元,其配置为对编码数据进行封装。如上所述,可以以比特流的形式输出编码数据。可以以诸如ISOBMFF或CFF之类的文件格式封装编码数据,或者可以以其它DASH段的形式来处理编码数据。编码数据可以通过数字存储介质被传递到360视频接收设备。另选地,尽管未明确示出,但是编码数据可以如上所述地通过发送处理器进行针对发送的处理,然后经由广播网络或宽带进行发送。
数据获取单元可以根据传感器方位(或图像的观看方位)、用于信息获取的传感器位置(或图像的观看位置)以及传感器信息获取位置(图像的视点)同时或依次获取不同条的信息。此时,可以获取视频、图像、音频和位置信息。
在图像数据的情况下,可以分别获取纹理和深度信息,并且可以根据每个分量的特征对其执行不同的视频预处理。例如,在纹理信息的情况下,可以基于图像传感器位置信息使用在相同视点处获取的相同观看位置的不同观看方位的图像来构造360全向图像。为此,可以执行图像拼接过程。另外,可以执行用于将图像改变为用于编码的格式的投影和/或按区域打包。在深度图像的情况下,通常可以通过深度相机获取图像。在这种情况下,可以以诸如纹理的形式创建深度图像。另选地,可以基于单独测量的数据来生成深度数据。在生成各个分量的图像之后,可以通过执行附加打包为用于有效压缩的视频格式或将图像划分为实际需要的部分来执行子图像生成。通过视频元数据传递关于在视频预处理阶段中使用的视频配置的信息。
当附加给予的图像/音频/文本信息与所获取的数据(或用于主要服务的数据)一起提供时,需要提供用于在最终回放时合成这种信息的信息。合成生成单元基于创建者的意图,生成用于在最终回放阶段合成外部生成的媒体数据(视觉媒体的视频/图像、音频媒体的音频/声音效果、以及文本的字幕)的信息。此信息作为合成元数据而被递送。
在每个过程之后获得的图像/音频/文本信息使用每个编码器压缩,并依据应用以文件单元或段单元来封装。在这种情况下,根据视频、文件或段配置方法,可以(由文件提取器)仅提取必要信息。
另外,在编解码器或文件格式/系统层级传递用于在接收器中重构每个数据的信息。该信息包括用于视频/音频重构的信息(视频/音频元数据)、用于叠加的合成信息(合成元数据)、视频/音频可播放位置(视点)以及针对每个视点的观看位置信息(观看位置和视点元数据)。这样的信息可以通过单独的元数据处理器生成。
参照图14b,360视频接收设备(接收终端)可以包括:文件/段解封装单元,其配置为对接收到的文件或段进行解封装;解码单元,其配置为从比特流生成视频/音频/文本信息;后处理器,其配置为以用于回放的形式重构图像/音频/文本;跟踪单元,其被配置为跟踪用户的ROI;以及显示器,其作为回放装置。
通过解封装生成的比特流可以根据数据的类型划分为图像/音频/文本,并分别解码为可播放形式。
跟踪单元可以基于传感器和用户的输入信息来生成关于用户的感兴趣区域的视点、在视点处的观看位置、以及观看位置处的观看方位的信息。该信息可以被360视频接收设备的每个模块用于选择或提取感兴趣区域,或者可以用于强调关于感兴趣区域的信息的后处理过程。当被传递到360视频发送设备时,该信息可以用于文件提取或子图片选择以实现有效的带宽使用,以及各种基于ROI的图像重构方法(依赖于视口/观看位置/视点的处理)。
可以根据图像配置方法使用各种处理方法来处理解码图像信号。当由360视频发送设备执行图像打包时,需要基于通过元数据传递的信息来重构图像的过程。在这种情况下,可以使用由360视频发送设备生成的视频元数据。另外,当在解码图像中包括多个视点、多个观看位置或各种观看方位的图像时,通过跟踪生成的用户感兴趣区域的位置,可以选择并处理匹配用户的ROI的视点、观看位置和观看方位的信息。此时,可以使用由发送终端生成的观看位置和视点相关元数据。当针对特定视点、观看位置或观看方位传递多个分量时,或者分开传递用于叠加的视频信息时,可以包括基于其的渲染过程。已经经历了单独的渲染过程的视频数据(纹理、深度、叠加)经过合成过程。此时,可以使用由发送终端生成的合成元数据。最后,可以根据用户的ROI生成用于在视口中回放的信息。
可以通过音频渲染器和/或后处理过程从解码的音频信号生成可播放的音频信号。此时,基于关于用户的ROI的信息和传递给360视频接收设备的元数据,可以生成满足用户请求的信息。
解码的文本信号可以传递给叠加渲染器,并且被处理为诸如字幕之类的基于文本的叠加信息。必要时,可以包括单独的文本后处理过程。
图15是示意性例示了FLUS架构的示例的图。
图15例示了在无线通信系统中基于实时上行链路流的框架(FLUS)在用户设备(UE)之间或在UE与网络之间执行的通信的示例。FLUS源和FLUS宿可以使用F参考点相互之间发送和接收数据。
在本说明书中,“FLUS源”可以是指被配置为基于FLUS通过F参考点向FLUS宿发送数据的设备。但是,FLUS源并不总是向FLUS宿发送数据。在一些情况下,FLUS源可以通过F参考点从FLUS宿接收数据。FLUS源可以被解释为与本文描述的图像发送设备或360视频发送设备相同/相似的装置,解释为包括图像发送设备或360视频发送设备,或者解释为包括在图像发送设备或360视频发送设备中。FLUS源可以是例如UE、网络、服务器、云服务器、机顶盒(STB)、基站、PC、台式机、笔记本电脑、相机、便携式摄像机、TV等,并且可以是所例示设备中包括的元件或模块。此外,与所例示设备类似的装置也可以作为FLUS源操作。FLUS源的示例不限于此。
在本说明书中,“FLUS宿”可以是指被配置为基于FLUS通过F参考点从FLUS源接收数据的装置。但是,FLUS宿并非总是从FLUS源接收数据。在一些情况下,FLUS宿可以通过F参考点向FLUS源发送数据。FLUS宿可以被解释为与本文描述的图像接收设备或360视频接收设备相同/相似的装置,解释为包括图像接收设备或360视频接收设备,或者解释为包括在图像接收设备或360视频接收设备中。FLUS宿可以是例如网络、服务器、云服务器、STB、基站、PC、台式机、笔记本电脑、相机、便携式摄像机、TV等,并且可以是包括在所例示设备中的元件或模块。此外,与所例示设备类似的装置也可以作为FLUS宿操作。FLUS宿的示例不限于此。
虽然FLUS源和捕获装置在图15中被例示为构成一个UE,但是实施方式不限于此。FLUS源可以包括捕获装置。另外,包括捕获装置的FLUS源可以是UE。另选地,捕获装置可以不包括在UE中,并且可以向UE发送媒体信息。捕获装置的数量可以大于或等于一。
虽然FLUS宿、渲染模块(或单元)、处理模块(或单元)和分发模块(或单元)在图15中被例示为组成一个UE或网络,但是实施方式不限于此。FLUS宿可以包括渲染模块、处理模块和分发模块中的至少一个。另外,包括渲染模块、处理模块和分发模块中的至少一个的FLUS宿可以是UE或网络。另选地,渲染模块、处理模块和分发模块中的至少一个可以不包括在UE或网络中,并且FLUS宿可以向渲染模块、处理模块和分发模块中的至少一个发送媒体信息。可以配置至少一个渲染模块、至少一个处理模块和至少一个分发模块。在一些情况下,模块中的一些可以不提供。
在一个示例中,FLUS宿可以作为媒体网关功能(MGW)和/或应用功能(AF)而操作。
在图15中,连接FLUS源和FLUS宿的F参考点可以允许FLUS源创建并控制单个FLUS会话。另外,F参考点可以允许FLUS宿认证和授权FLUS源。此外,F参考点可以支持FLUS控制平面F-C和FLUS用户平面F-U的安全保护功能。
在一个实施方式中,FLUS源和FLUS宿可以各包括FLUS ctrl模块。FLUS源和FLUS宿的FLUS ctrl模块可以经由F-C连接。FLUS ctrl模块和F-C可以为FLUS宿提供功能,以对上载媒体执行下行流分发,提供媒体实例化选择以及支持会话的静态元数据的配置。在一个示例中,当FLUS宿可以仅执行渲染时,可以不存在F-C。
在一个实施方式中,F-C可以用于创建并控制FLUS会话。F-C可以用于FLUS源以选择诸如MTSI之类的FLUS媒体实例,在媒体会话周围提供静态元数据,或者选择并配置处理和分发功能。
FLUS媒体实例可以被定义为FLUS会话的一部分。在一些情况下,F-U可以包括媒体流创建过程,并且可以为一个FLUS会话生成多个媒体流。
媒体流可以包括诸如音频、视频或文本之类的针对单个内容类型的媒体分量,或诸如音频和视频之类的针对多种不同内容类型的媒体分量。FLUS会话可以配置有多个相同的内容类型。例如,FLUS会话可以配置有针对视频的多个媒体流。
在一个实施方式中,FLUS源和FLUS宿可以各包括FLUS媒体模块。FLUS源和FLUS宿的FLUS媒体模块可以通过F-U连接。FLUS媒体模块和F-U可以提供创建一个或更多个媒体会话以及在媒体流上发送媒体数据的功能。在一些情况下,可以需要媒体会话创建协议(例如,基于MTSI的用于FLUS实例的IMS会话建立)。
图16是示意性例示了3DoF+发送终端的配置示例的图。
参照图16,当输入数据是相机输出图像时,发送终端(360视频发送设备)可以根据每个视点/观看位置/分量来执行用于配置球体图像的拼接。一旦为每个视点/观看位置/组件配置了球体图像,就可以将图像投影到2D图像上以用于编码。依据应用,可以执行用于从多个图像创建整合图像的打包或将图像划分为详细区域的图像的子图片生成。如上所述,作为可选过程,可以跳过按区域打包过程。在这种情况下,可以省略打包处理器。当输入数据是补充图像/音频/文本信息时,也可以用信号通知向中央图像添加补充信息并显示图像的方法,并且也可以发送添加的数据。生成的图像和添加的数据可以在编码过程中压缩成比特流,然后通过封装过程被转换成文件格式以进行发送或存储。此时,可以根据应用或系统请求来处理提取接收器所需要的文件的过程。所生成的比特流可以被转换成发送格式并通过发送处理器来发送。然后,发送侧反馈处理器可以基于从接收终端发送的信息来处理视点/观看位置/观看方位信息以及必要的元数据,并将其传递到相关的发送器。
图17是示意性地例示了3DoF+接收终端的配置的示例的图。
参照图17,接收终端(360视频接收设备)可以在接收到从发送终端传递的比特流之后提取必要的文件。可以使用视点/观看位置/观看方位信息和从反馈处理器传递的视频元数据来选择所生成的文件格式中的视频流,并且可以通过解码器从所选择的比特流重构视频信息。可以基于通过元数据发送的打包信息来对打包图像进行解包。当在发送终端省略了打包过程时,也可以省略接收终端的解包。必要时,可以执行选择图像和适合于从反馈处理器传递的视点/观看位置/观看方位的必要分量的过程。可以执行将图像纹理、深度和叠加信息重构为适合于回放的格式的渲染过程。在生成最终图像之前,可以执行整合不同层的信息的合成过程,并且可以生成并播放适合于显示视口的图像。
图18例示了在多个位置捕获关于VR内容的信息的示例。
在实施方式中,可以在一个场景中的多个位置处捕获用于生成VR内容的信息,如图18所示。两个VR相机可以在固定位置A和B处捕获用于生成VR内容的信息,并且一个VR相机可以在连续改变其在轨道上的位置的同时捕获用于生成VR内容的信息。
用户可以在多个位置(即,多个视点)之间执行视点切换。当视点切换到另一视点时,可以提供关于用户切换到的视点的位置的信息以及相关媒体轨迹信息。系统可以设计为当特定视点包括用于切换到另一视点的提示时基于提示切换到另一视点。
图19例示了基于全局坐标系呈现的三个视点的示例。
参照图19,根据实施方式的全局坐标系可以表示为全局三维笛卡尔坐标轴。
在图19中,视点A的中心位置可以是全局坐标系的原点,并且可以由(0,0,0)表示。视点在全局坐标系中的位置的绝对值可以以毫米表示。
下面描述的内容集中在MPEG系统的文件格式语法元素和语义格式上。但是,诸如SEI消息、参数集和/或未来或当前的视频编解码器、系统级别(例如,文件格式、DASH、MMT和3GPP)或数字接口(例如,HDMI、DisplayPort等)之类的其它格式的视频级别和VESA也可以通过反映以下内容来操作。
在一个实施方式中,ViewpointInfoStruct()可以提供视点信息,该视点信息包括关于视点的位置以及绕X、Y和Z轴的偏摆角、俯仰角和翻滚角的信息。在此,偏摆角、俯仰角和翻滚角可以指示视点的全局坐标系相对于公共参考坐标系的旋转角。下表1示出了ViewpointInfoStruct()的示例。
表1
在表1中,当(0,0,0)是3D空间中的公共参考坐标系的原点时,viewpoint_pos_x、viewpoint_pos_y和viewpoint_pos_z表示以毫米为单位的视点位置。viewpoint_gcs_yaw、viewpoint_gcs_pitch和viewpoint_gcs_roll分别表示视点的全局坐标系相对于公共参考坐标系的X轴、Y轴和Z轴的偏摆角、俯仰角和翻滚角,并且其单位可以是2-16度。viewpoint_gcs_yaw可以在-180*216至180*216-1的范围内,viewpoint_gcs_pitch可以在-90*216至180*216-1的范围内,并且viewpoint_gcs_roll可以在-180*216至180*216-1的范围内。接下来,transition_effect_type可以指示当执行视点切换时的过渡效果的类型。下表2示出了transition_effect_type的示例。
表2
值 | 描述 |
0 | 向热点的放大效果并且前进至该点 |
1 | 向热点的穿行效果(walk though effect) |
2-255 | 保留以用于未来扩展 |
在根据表2的示例中,当transition_effect_type的值为0时,可以指示放大效果,该放大效果表示放大到特定视点的过渡效果。当transition_effect_type的值为1时,可以指示穿行效果,该穿行效果表示走到特定视点的过渡效果。
再次参照表1,当viewing_orientation_refresh_flag的值为1时,可以不提供InitialViewingOrientationSample(),并且可以推荐保持在切换到当前视点之前给定的视点的观看方位。当viewing_orientation_refresh_flag的值为0时,可以提供InitialViewingOrientationSample(),并且可以推荐遵循在切换到当前视点时用信号通知的InitialViewingOrientationSample()中所包括的观看方位。
viewing_orientation_yaw、viewing_orientation_pitch和viewing_orientation_roll指示在切换到当前视点时推荐的全局坐标系的X轴、Y轴和Z轴的偏摆旋转角、俯仰旋转角和翻滚旋转角,并且可以以2-16度为单位来指定。viewing_orientation_yaw可以在-180*216至180*216-1度的范围内,viewing_orientation_pitch可以在-90*216至180*216-1度的范围内,并且viewing_orientation_roll可以在-180*216至180*216-1度的范围内。
根据实施方式的视点信息盒可以如下配置。
表3
表3中包括的信息可以提供视点信息,该视点信息包括位置信息、以及视点的全局坐标系相对于公共参考坐标系的X轴、Y轴和Z轴的偏摆旋转角、俯仰旋转角和翻滚旋转角。
根据实施方式,视点信息盒可以例如通过如下表4中所示的语法来表示。
表4
在表4中,pointview_id可以指示视点组中所包括的视点的ID,并且num_viewpoints可以指示以样本格式发信号通知的视点的数量。
在一个实施方式中,动态视点定时的元数据轨迹可以指示随时间动态改变的视点参数。在一个示例中,在执行视点切换之后,OMAF播放器可以在开始针对视点的回放中使用以下信号通知的信息。当有明确地信号通知的推荐观看方位时,OMAF播放器可以解析关于推荐观看方位的信息,并遵循推荐观看方位。另一方面,当没有明确地信号通知的推荐观看方位时,即使在视点切换之后,OMAF播放器也可以保持在视点切换之前给定的视点的观看方位。
在一个实施方式中,可以使用轨迹样本条目类型“dyvp”。可以如下表5所示地指定样本条目类型的样本条目。
表5
在一个实施方式中,可以如下表6中所示地指定样本条目类型“dyvp”的样本语法。
表6
在表6中,viewpoint_id可以指示关于视点组中所包括的视点的ID信息,并且num_viewpoints可以指示以样本格式用信号通知的视点的数量。
在一个实施方式中,track_group_type被设置为“vpgr”的TrackGroupTypeBox中所包括的轨迹可以指示可以在360场景内执行切换。映射到该组的轨迹(即,在track_group_type被设置为“vpgr”的TrackGroupTypeBox中track_group_id的值相同的可视轨迹)可以形成可在360场景内切换的视点。
关于多个视点视频轨迹的分组,可以提出以下两个实施方式。在第一实施方式中,non_contiguous_flag可以指示轨迹组的毗邻特征。因此,当track_group_id相同时,non_contiguous_flag的值可以相同。在第二实施方式中,可以定义每个毗邻视点的锚视点。此外,将多个视点视频轨迹分组的实施方式不限于上述第一实施方式和第二实施方式。下述图20至图22b可以与第一实施方式有关,并且图23至图24b可以与第二实施方式有关。
根据本公开的实施方式,用户可以通过在3DoF、3DoF+或6DoF环境中基于多个视点执行视点切换来从各种视点体验360度视频。在此,可以对其执行视点切换的视点可以称为“热点”。热点可以被解释为视点的子概念,因为它指示视点当中的可以对其执行视点切换的视点。但是,在一些情况下,热点可以表示与视点相同/相似的概念。因此,整个说明书中描述的任何“视点”可以用热点代替,并且整个说明书中描述的任何“热点”可以用视点代替。另外,诸如“热点元数据”之类的热点相关信息也可以被解释为“视点元数据”。
在本说明书中描述的“公共参考坐标系”可以表示视点组所基于(居中)的坐标系。公共参考坐标系可以称为参考坐标系。
图20示出了多个视点的视点组ID和非毗邻标志信息的示例。
例如,可以如下表7所示地表示用于对多个视点视频轨迹进行分组的语法。
表7
在表7中,当non_contiguous_flag的值为0时,这可以指示该组中的全部视点在360场景中是毗邻的。当non_contiguous_flag的值为1时,这可以指示视点视频轨迹组包括在360场景中的至少一个非毗邻视点。在一个示例中,具有相同值的track_group_id的轨迹可以具有相同值的non_contiguous_flag。
在一个实施方式中,当具有不同值的track_group_id的轨迹具有不同值的non_contiguous_flag时,non_contiguous_flag值为0的track_group_id可以在non_contiguous_flag值为1的track_group_id之前。
可以通过添加标志或定义ViewpointTrackGroupType来定义其它类型的视点视频轨迹组。
在一个示例中,表7中的ViewpointTrackGroupType()的语义可以包括诸如transition_effect_type、viewing_orientation_refresh_flag和viewing_orientation_refresh_flag之类的字段。transition_effect_type可以指示当在轨迹组中执行视点切换时的过渡效果的类型。当viewing_orientation_refresh_flag的值为1时,InitialViewingOrientationSample()可能不存在,并且可以推荐保持在切换到当前视点之前给定的视点的观看方位。当viewing_orientation_refresh_flag的值为0时,InitialViewingOrientationSample()可以存在,并且可以推荐遵循在向当前视点切换中用信号通知的InitialViewingOrientationSample()中所包括的观看方位。
参照图20的示例,视点由VP#1至VP#5表示。将VP#1和VP#2与VP#3、VP#4和VP#5分开的线可以指示视点是否彼此毗邻。在track_group_id被设置为0的组中的VP#1和VP#2是毗邻的,因此在track_group_id被设置为0的组中视点的non_contiguous_flag的值为0。在track_group_id被设置为1的组中,VP#2与VP#4和VP#5不毗邻,因此在track_group_id被设置为1的组中视点的non_contiguous_flag的值为1。track_group_id被设置为2的组中的VP#3、VP#4和VP#5是毗邻的,因此在track_group_id被设置为2的组中视点的non_contiguous_flag的值为0。
图21a和图21b例示了根据多个视点是否彼此毗邻的显示的示例。
在图21a中,VP#1至VP#4表示体育馆的场景,VP#5和VP#6表示休息室的场景,而VP#7表示体育馆入口的场景。由于track_group_id被设置为0的组中所包括的VP#1到VP#4是毗邻的,因此在track_group_id被设置为0的组中视点的non_contiguous_flag的值为0。由于track_group_id被设置为1的组中所包括的VP#5和VP#6是毗邻的,因此在track_group_id被设置为1的组中视点的non_contiguous_flag的值是0。由于track_group_id被设置为2的组中所包括的VP#1至VP#7并非全部彼此毗邻,因此在track_group_id被设置为2的组中视点的non_contiguous_flag的值为1。
在一个实施方式中,当在毗邻视点之间执行切换时应用的过渡效果可以不同于当在非毗邻视点之间执行切换时应用的过渡效果。在一个示例中,当在毗邻视点之间执行切换时应用的过渡效果可以是放大效果,而当在非毗邻视点之间执行切换时应用的过渡效果可以是“穿行”或“在走廊穿行”效果。
参照图21b,名称、静止图像、预览视频、实际视频或相关描述可以以叠加的方式传递或显示。由于从图21a可以看出,track_group_id=0的VP#1、VP#2、VP#3和VP#4彼此毗邻,因此指示VP#2、VP#3和VP#4的位置的图标可以以叠加方式布置在VP#1的场景中,如图21b所示。
可以通过图21b的左图的右上角示出的叠加图标来访问与VP#1不毗邻的VP#5、VP#6和VP#7。换句话说,track_group_id等于1的视点和track_group_id等于2而不是0的视点与VP#1不毗邻,因此,与VP#5、VP#6和VP#7相对应的图标不直接显示在VP#1的场景上,而是可以在访问链接图标之后附加地显示。然而,实施方式不限于此。对应于与VP#1不毗邻的VP#5、VP#6和VP#7的图标可以例如通过附加的弹出显示,通过附加在视口上,通过与实际位置相关或不相关的360球坐标系,或通过根据360场景的覆盖范围限制的黑色领域来呈现。
图22a和图22b例示了根据多个视点是否彼此毗邻的显示的另一示例。
在一个实施方式中,图22a可以示出以弹出方式显示对应于与VP#1不毗邻的VP#5、VP#6和VP#7的图标,并且图22b可以示出以附加在视口上的方式显示对应于与VP#1不毗邻的VP#5、VP#6和VP#7的图标。
参照图22a,因为VP#5、VP#6和VP#7与VP#1不毗邻,因此它们不能直接显示在VP#1的场景中。但是,对应于VP#5、VP#6和VP#7的图标可以显示在表示VP#5、VP#6和VP#7的最佳间接位置上(例如,在VP#1的场景看到的休息室的位置)。另外,可以如图22a所示地以弹出方式显示与每个视点有关的图像信息和描述信息。
参照图22b,与VP#1不毗邻的VP#5、VP#6和VP#7的图标可以显示在VP#1的场景的左侧。另外,分别与VP#5、VP#6和VP#7相对应的图像可以与VP#5、VP#6和VP#7的图标一起显示。
图23示出了多个视点的视点组ID、非毗邻标志信息和锚视点标志信息的示例。
例如,可以如下表8所示地表示用于对多个视点视频轨迹进行分组的语法。
表8
锚视点可以定义为毗邻视点的基本视点。在表8中,当anchor_viewpoint_flag的值为0时,(当前)视点可以不是轨迹组(或视点组)中的毗邻视点当中的锚/主/原视点。当anchor_viewpoint_flag的值为1时,(当前)视点可以是轨迹组(或视点组)中的毗邻视点当中的锚/主/原视点。当定义了视点轨迹组(或视点组或轨迹组)中的多个毗邻视点时,至少一个视点的anchor_viewpoint_flag的值可以为1。
在一个实施方式中,锚视点可以用作两个分开的组之间的连接点。例如,当在一个房间中定义了多个视点时,位于房间门口处的视点可以定义为锚视点。在此,位于房间门口处的视点可以作为连接点而连接到位于另一房间门口处的视点。
在表8中,当non_contiguous_flag的值为0时,当前视点可以在空间上或逻辑上与锚视点毗邻。当non_contiguous_flag的值为1时,当前视点可以在空间上或逻辑上与锚视点非毗邻。即,可以通过当前视点与锚视点之间的空间关系或逻辑关系来确定视点轨迹组中视点的毗邻。在一个示例中,可以通过添加标志或定义ViewpointTrackGroupType,来定义另一类型的视点视频轨迹组。
在一个示例中,ViewpointTrackGroupType可以表示关于诸如空间毗邻和逻辑毗邻之类的不同类型的毗邻的指示信息。
在一个实施方式中,ViewpointTransitionEffectStruct()可以包括如下所述的transition_effect_type和viewing_orientation_refresh_flag。transition_effect_type可以指示在轨迹组(或视点组)中的视点之间执行切换时应用的过渡效果的类型。当viewing_orientation_refresh_flag的值为0时,InitialViewingOrientationSample()可以不存在,并且可以推荐保持在相同轨迹组(或视点组)中执行切换之前给定的观看方位。当viewing_orientation_refresh_flag的值为1时,可以指定InitialViewingOrientationSample()的值,并且可以推荐遵循在相同轨迹组中执行切换时用信号通知的InitialViewingOrientationSample()中所包括的观看方位。
从图23可以看出,视点轨迹组中track_group_id等于0的视点(由虚线包围的视点)是VP#1至VP#5,并且视点轨迹组中track_group_id等于1的视点(由实线包围的视点)也是VP#1至VP#5。可以基于图23的中心的线来确定毗邻。即,VP#1和VP#2可以是毗邻的,并且VP#3、VP#4和VP#5可以是毗邻的。在图23中,track_group_id等于0的视点(轨迹)组的锚视点是VP#2,并且track_group_id等于1的视点(轨迹)组的锚视点是VP#4。
参照图23,在track_group_id等于0的视点组中,VP#1与锚视点VP#2毗邻,因此,VP#1的non_contiguous_flag的值可以为0。另外,由于VP#1不是锚视点,因此anchor_viewpoint_flag的值可以为0。在track_group_id等于0的视点组中,VP#3与锚视点VP#2不毗邻,因此VP#3的non_contiguous_flag的值可以为1。另外,因为VP#3不是锚视点,所以anchor_viewpoint_flag的值为0。在track_group_id等于1的视点组中,VP#4是锚视点,因此non_contiguous_flag的值可以为0,并且anchor_viewpoint_flag的值可以为1。
图24a和图24b例示了根据多个视点是否彼此毗邻的显示的又一示例。
参照图24a,在视点轨迹组中,track_group_id等于0的视点是VP#1至VP#7,其中VP#1是锚视点,并且VP#2至VP#4是与锚视点VP#1毗邻的视点。因此,VP#1的anchor_viewpoint_flag的值可以为1,VP#2至VP#7的anchor_viewpoint_flag的值可以为0,VP#1至VP#4的non_contiguous_flag的值可以为0,并且VP#5至VP#7的anchor_viewpoint_flag的值可以为1。track_group_id等于1的锚视点(轨迹)组的锚视点可以是VP#5,并且track_group_id等于2的锚视点(轨迹)组的锚视点可以是VP#7。与track_group_id等于0的视点组的情况类似,可以基于锚视点来确定track_group_id等于1的视点组或track_group_id等于2的视点组的anchor_viewpoint_flag和non_contiguous_flag的值。
在一个实施方式中,当在毗邻视点之间执行切换时应用的过渡效果可以不同于当在非毗邻视点之间执行切换时应用的过渡效果。在一个示例中,当在毗邻视点之间执行切换时应用的过渡效果可以是放大效果,并且当在非毗邻视点之间执行切换时应用的过渡效果可以是“穿行”或“在走廊穿行”效果。
参照图24b,名称、静止图像、预览视频、实际视频或相关描述可以以叠加的方式传递或显示。由于从图24a可以看出,在track_group_id=0的视点组中VP#1、VP#2、VP#3和VP#4彼此毗邻,指示VP#2、VP#3和VP#4的位置的图标可以以叠加方式布置在VP#1的场景中,如图24b所示。
可以通过图24b的左图的右上角示出的叠加图标来访问与VP#1不毗邻的VP#5、VP#6和VP#7。换句话说,VP#5至VP#7与VP#1不毗邻,因此,与VP#5、VP#6和VP#7相对应的图标不直接显示在VP#1的场景上,而是可以在访问链接图标后附加地显示。然而,实施方式不限于此。对应于与VP#1不毗邻的VP#5、VP#6和VP#7的图标可以例如通过附加的弹出显示,通过附加在视口上,通过与实际位置相关或不相关的360球坐标系,或通过根据360场景的覆盖范围限制的黑色领域来呈现。
在一个实施方式中,可以与下表9中的DASH数据类似地配置上述元数据。
表9
表9中的transition_effect_type可以对应于表1中的transition_effect_type[i],并且表9中的viewing_orientation_refresh_flag可以对应于表1中的viewing_orientation_refresh_flag。表9中的viewing_orientation_yaw、viewing_orientation_pitch和viewing_orientation_roll可以对应于表1中的viewing_orientation_yaw、viewing_orientation_pitch和viewing_orientation_roll,并且表9中的num_viewpoints可以对应于表4中的num_viewpoints。表9中的viewpoint_id可以对应于表4中的viewpoint_id,表9中的non_contiguous_flag可以对应于表7中的non_contiguous_flag,并且表9中的ViewpointTrackGroupType可以对应于表7中的ViewpointTrackGroupType。
图25a和图25b示出了多个视点的示例。
当用户搜索360场景时,可以使用多个视点。在执行多个视点之间的切换的过程中可以使用热点,并且用户可以通过选择并点击代表360场景中的可切换视点的热点来执行视点切换。
为了支持多视点功能,需要考虑以下要求。首先,需要定义一种用于描述与不同视点相对应的内容之间的空间关系的手段。其次,与不同视点相对应的内容需要时间上同步。第三,需要支持在不同视点处切换内容。第四,当由内容提供者执行不同视点之间的过渡时,可以提供平滑过渡。
需要考虑附加元数据以支持视点之间的切换。第一元数据是关于当执行从一个视点到另一视点的切换时被推荐要使用的过渡效果的元数据。过渡效果可以包括例如穿行效果或放大效果。当执行内容提供者想要的视点之间的切换时,关于过渡效果的元数据可以提供平滑过渡。
第二元数据是关于允许用户选择可用视点之一的视点分组的元数据。图25a是体育馆的多个视点的示例,示出了体育馆的多个视点以及诸如休息室的多个视点和体育馆入口的视点之类的场地外的视点。在与体育馆的多个视点相关的情况下,用户可以将热点切换到的视点可以位于当前的360场景中,并且可以基于毗邻视点之间的实际关系来确定视点的位置。当视点位置与场景对准时,用户可以直观地选择视点。
另一方面,在与场地外的视点相关的情况下,视点之间的空间关系可能无法与场景对准,因此接收器需要使用另一种方法来指示非毗邻视点的可用性。参照图25b,可以看出,休息室和体育馆的入口连接到与实际视点不匹配的热点。
在一个实施方式中,为了解决上述问题,可以提供一种使能接收器接收关于想要的过渡效果的信息的信令方法。附加地,可以提出指示用于视点切换的一组视频轨迹的多个视点的新的轨迹分组。为了支持多个视点的切换,可以提出一种在OMAF中传递视点元数据的方法。在OMAF中传递视点元数据的方法中,过渡效果元数据可以包括在ViewpointInfoStruct()中以被传递,可以提出针对视点的新轨迹分组,以指示在毗邻或非闭合360场景内切换的一组视频轨迹。
在一个实施方式中,ViewpointInfoStruct()可以提供视点信息,该视点信息包括视点在全局坐标系中的位置以及相对于公共参考坐标系的X轴、Y轴和Z轴的偏摆旋转角、俯仰旋转角和翻滚旋转角。在一个示例中,需要定义共同应用于视点组中的全部视点的公共参考坐标系。下表10中示出了包括ViewpointInfoStruct()的语法示例。
表10
当(0,0,0)是公共参考坐标系的原点时,viewpoint_pos_x、viewpoint_pos_y和viewpoint_pos_z可以指示视点在3D空间中以毫米为单位的位置。
viewpoint_gcs_yaw、viewpoint_gcs_pitch和viewpoint_gcs_roll可以分别表示视点的全局坐标系相对于公共参考坐标系的X轴、Y轴和Z轴的偏摆角、俯仰角和翻滚角,并且这些角度的单位可以是2-16度。viewpoint_gcs_yaw可以在-180*216至180*216-1的范围内,viewpoint_gcs_pitch可以在-90*216至180*216-1的范围内,并且viewpoint_gcs_roll可以在-180*216至180*216-1的范围内。接下来,transition_effect_type可以指示当执行视点切换时的过渡效果的类型。下表11示出了transition_effect_type的示例。
表11
值 | 描述 |
0 | 向热点的放大效果并且前进至该点 |
1 | 向热点的穿行效果 |
2-127 | 保留以用于未来扩展 |
返回参照表10,当viewing_orientation_refresh_flag的值为1时,可以不提供InitialViewingOrientationSample(),并且可以推荐保持在切换到当前视点之前给予的视点的观看方位。当viewing_orientation_refresh_flag的值为0时,可以提供InitialViewingOrientationSample(),并且可以推荐遵循切换到当前视点时用信号通知的InitialViewingOrientationSample()中所包括的观看方位。在另一示例中,当viewing_orientation_refresh_flag的值为0并且InitialViewingOrientationSample()不存在时,可以将视点的坐标系的(0,0,0)确定为视点切换中的视点方位。
根据表10的ViewpointInfoStruct仅是示例,并且本领域技术人员将容易理解,表示ViewpointInfoStruct的语法不限于表10。
在一个实施方式中,track_group_type被设置为“vpgr”的TrackGroupTypeBox可以指示相应轨迹是360场景中的可切换轨迹。映射到相应组的轨迹可以形成360场景中的可切换视点。
在一个实施方式中,下表12可以示出包括anchor_viewpoint_flag和non_contiguous_flag的语法的示例。
表12
在表12中,当anchor_viewpoint_flag的值为1时,(当前)视点可以对应于形成确定相同视点轨迹组中的视点的毗邻的基础的锚视点。当存在具有相同值的track_group_id的多个轨迹时,相应组的至少一个轨迹(或视点)的anchor_viewpoint_flag的值可以为1。
在一个示例中,当用户加入相应视点轨迹组而不是在视点轨迹组中明确选择特定视点时(如在360场景改变的情况下),OMAF播放器可以播放锚视点轨迹。
当表12中的non_CONTIGUOUS_FLAG的值为0时,视点可以与锚视点毗邻。当non_contiguous_flag的值为1时,视点可以与锚视点非毗邻。
图26是例示了根据实施方式的操作360度视频发送设备的方法的流程图,并且图27是例示了根据实施方式的360度视频发送设备的配置的框图。
在图26中公开的每个步骤可以由图5中公开的360视频发送设备、图14a中公开的360视频发送设备、在图15中公开的FLUS源或图27中公开的360度视频发送设备执行。在一个示例中,图26的S2600可以由图5中公开的360视频发送设备的数据输入单元执行,并且图26的S2610可以由图5中公开的360视频发送设备的投影处理器执行。图26的S2620可以由图5中公开的元数据处理器来执行。图26的S2630可以由图5中公开的360视频发送设备的数据编码器执行,并且图26的S2640可以由图5中公开的360视频发送设备的封装处理器执行。因此,在描述图26的每个步骤中,将跳过或简要说明已经参照图5、图14a和图15描述的细节的说明。
如图27所示,根据实施方式的360度视频发送设备可以包括数据输入单元、投影处理器、元数据处理器、数据编码器和封装处理器。然而,在一些情况下,图27中所示的全部组件可能并非都是360度视频发送设备的必要组件。360度视频发送设备可以由比图27所示组件更多的组件或更少的组件来实现。
在根据实施方式的360度视频发送设备中,数据输入单元、投影处理器、元数据处理器、数据编码器和封装处理器可以各实现为单独芯片,或者可以通过一个芯片实现两个或更多个组件。
在本说明书中,“360视频”和“360度视频”仅在名称上不同并且可以表示相同的对象。因此,图5中所示的“360视频发送设备”和图27中所示的“360度视频发送设备”仅名称彼此不同,并且可以执行相同/相似的操作。图6中所示的“360度视频接收设备”和图23中所示的“360度视频接收设备”仅名称彼此不同,并且可以执行相同/相似的操作。
根据实施方式,360度视频发送设备可以获取由至少一个图像获取装置捕获的360度视频数据(S2600)。更具体地,360度视频发送设备的数据输入单元可以获取由至少一个图像获取装置捕获的360度视频数据。
在一个示例中,图像获取装置可以包括相机、便携式摄像机、智能手机和PC,但是不限于此。
根据实施方式,360度视频发送设备可以处理360度视频数据以推导包括全向图像的二维图片(S2610)。更具体地,360度视频发送设备的投影处理器可以处理360度视频数据以推导包括全向图像的二维图片。
根据实施方式,360度视频发送设备可以生成360度视频数据的元数据(S2620)。更具体地说,360度视频发送设备的元数据处理器可以生成360度视频数据的元数据。
在一个实施方式中,元数据可以包含非毗邻标志信息,该非毗邻标志信息指示360度视频数据中的视点组中所包括的至少一个视点是否是彼此非毗邻的。在一个示例中,非毗邻标志信息可以称为non_contiguous_flag。
在一个实施方式中,当视点组中所包括的全部视点彼此毗邻时,非毗邻标志信息的值可以为0。当视点组中所包括的至少一个视点彼此不毗邻时,非毗邻标志信息的值可以为1。
在一个实施方式中,可以基于空间非毗邻和逻辑非毗邻中的至少一个来确定视点组中所包括的至少一个视点是否彼此非毗邻。在一个示例中,可以基于ViewpointTrackGroupType来确定视点组中所包括的至少一个视点是否彼此非毗邻。
在一个实施方式中,元数据还可以包含锚视点标志信息,该锚视点标志信息指示视点组中所包括的当前视点是否是锚视点。在一个示例中,锚视点标志信息可以称为anchor_viewpoint_flag。
在一个实施方式中,在当前视点是锚视点时,关于当前视点的锚视点标志信息的值可以为1。在当前视点不是锚视点时,关于当前视点的锚视点标志信息的值可以为0。
在一个实施方式中,当视点组中所包括的当前视点与锚视点毗邻时,关于当前视点的非毗邻标志信息的值可以为0。当视点组中所包括的当前视点与锚视点非毗邻时,关于当前视点的非毗邻标志信息的值可以为1。
在一个实施方式中,当锚视点标志信息的值为1时,非毗邻标志信息的值可以为0。
在一个实施方式中,元数据可以进一步包含关于是否向视点应用初始观看方位的信息。在一个示例中,关于是否向视点应用初始观看方位的信息可以称为viewing_orientation_refresh_flag。
在一个实施方式中,当基于关于是否应用初始观看方位的信息来确定向视点应用初始观看方位时,元数据可以包含关于初始观看方位相对于视点的偏摆角、俯仰角和翻滚角的信息。在一个示例中,关于初始观看方位相对于视点的偏摆角、俯仰角和翻滚角的信息可以称为InitialViewingOrientationSample。
在一个实施方式中,元数据可以进一步包含关于当在视点组中执行视点切换时要应用的过渡效果的类型的信息。在一个示例中,关于过渡效果的类型的信息可以称为transition_effect_type。
在一个实施方式中,关于过渡效果的类型的信息可以包括关于放大效果的信息和关于穿行效果的信息。
根据实施方式的360度视频发送设备可以对关于2D图片的信息进行编码(S2630)。更具体地,360度视频发送设备的数据编码器可以对关于2D图片的信息进行编码。
根据实施方式,360度视频发送设备可以基于关于2D图片的信息和元数据来执行封装(S2640)。更具体地,360度视频发送设备的封装处理器可以基于关于2D图片的信息和元数据来执行封装。
根据图26和图27中公开的360度视频发送设备和360度视频发送设备的操作方法,根据实施方式的360度视频发送设备可以获取由至少一个相机捕获的360度视频数据(S2600),处理360度视频数据并推导包括全向图像的2D图片(S2610),生成360度视频数据的元数据(S2620),对关于2D图片的信息进行编码(S2630),并基于关于2D图片的信息和元数据进行封装(S2640)。在此,元数据可以包含非毗邻标志信息,该非毗邻标志信息指示在360度视频数据中的视点组中所包括的至少一个视点是否彼此非毗邻。因此,可以有效地用信号通知指示360度视频中的视点组中所包括的至少一个视点是否彼此非毗邻的非毗邻标志信息。
图28是例示了根据实施方式的操作360度视频接收设备的方法的流程图,并且图29是例示了根据实施方式的360度视频接收设备的配置的框图。
根据图28和图29的360度视频接收设备及其操作方法可以部分地对应于上述根据图26和图27的360度视频发送设备的操作方法。因此,可以简要地描述或跳过与上述操作方法的操作相同的操作的描述。
图28中公开的每个步骤可以由图6中公开的360视频接收设备、图14b中公开的360视频接收设备、图15中公开的FLUS宿、或者图29中公开的360视频接收设备执行。在一个示例中,图28的S2800和S2810可以由图6中公开的360视频接收设备的接收处理器执行。图28的S2820可以由图6中公开的360视频接收设备的数据解码器执行,并且图28的S2830可以由图6中公开的渲染器执行。因此,在描述图28的每个步骤中,将省略或简要说明已经参照图6、图14b和图15描述的细节的描述。
如图29中所示,根据实施方式的360度视频接收设备可以包括接收处理器、数据解码器和渲染器。然而,在一些情况下,图29中所示的全部组件可能并非都是360度视频接收设备的必要组件。360度视频接收设备可以由比图29所示组件更多的组件或更少的组件来实现。
在根据实施方式的360度视频接收设备中,接收处理器、数据解码器和渲染器可以实现为单独的芯片,或者可以通过一个芯片来实现至少两个或更多个组件。
根据实施方式的360度视频接收设备可以接收关于360度视频数据的信息(S2800)。更具体地,360度视频接收设备的接收处理器可以接收关于360度视频数据的信息。
在一个实施方式中,360度视频接收设备可以从360度视频发送设备接收关于360度视频数据的信息。关于360度视频数据的信息可以包括例如通过基于关于由360度发送设备编码的图片的信息和360度视频数据的元数据来执行封装而推导出的文件。但是,示例不限于此。
根据实施方式的360度视频接收设备可以从关于360度视频数据的信息获取关于编码图片的信息和元数据(S2810)。更具体地,360度视频接收设备的接收处理器、元数据解析器或解封装处理器可以从关于360度视频数据的信息获取关于编码图片的信息和元数据。
根据实施方式的360度视频接收设备可以基于关于编码图片的信息对图片进行解码(S2820)。更具体地,360度视频接收设备的数据解码器可以基于关于编码图片的信息来解码图片。
根据实施方式的360度视频接收设备可以基于元数据来渲染解码图片(S2830)。更具体地,360度视频接收设备的渲染器可以基于元数据来渲染解码图片。
根据图28和图29中公开的360度视频接收设备和360度视频接收设备的操作方法,根据实施方式的360度视频接收设备可以接收关于360度视频数据的信息(S2800),从关于360度视频数据的信息获取关于编码图片的信息和元数据(S2810),基于关于编码图片的信息对图片进行解码(S2820),并基于元数据渲染解码图片(S2830)。在此,元数据可以包含非毗邻标志信息,该非毗邻标志信息指示360度视频数据中的视点组中所包括的至少一个视点是否彼此非毗邻。因此,可以有效地用信号通知指示360度视频中的视点组中所包括的至少一个视点是否彼此非毗邻的非毗邻标志信息。
上述部件、模块或单元中的每一个可以是执行存储在存储器(或储存单元)中的连续过程的处理器或硬件部件。在上述实施方式中描述的每个步骤可以由处理器或硬件部件执行。在上述实施方式中描述的每个模块/块/单元可以作为硬件元件/处理器来操作。另外,本公开中描述的方法可以作为代码执行。代码可以写入在处理器可读的记录介质中,并且因此可以由设备所提供的处理器读取。
尽管基于一系列步骤或方框的流程图描述了上述实施方式中的方法,但是本公开不限制步骤的顺序。一些步骤可以以不同顺序进行或同时进行。本领域技术人员将理解,流程图中所示的步骤不是排它的,并且在本公开的范围内,可以包括其它步骤,或者可以删除流程图中的一个或更多个步骤。
当本公开的实施方式以软件实现时,上述方法可以实现为被配置为执行上述功能的模块(过程、功能等)。模块可以存储在存储器中并且可以由处理器执行。存储器可以在处理器内部或外部,并且可以通过各种公知手段连接到处理器。处理器可以包括专用集成电路(ASIC)、其它芯片组、逻辑电路和/或数据处理装置。存储器可以包括只读存储器(ROM)、随机存取存储器(RAM)、闪存、存储卡、存储介质和/或其它存储装置。
Claims (11)
1.一种由360度视频接收设备执行的360度视频数据处理方法,该360度视频数据处理方法包括以下步骤:
接收包括编码图片的360度视频数据;
推导元数据;
对所述编码图片进行解码;以及
基于所述元数据渲染解码后的图片,
其中,所述元数据包括视点信息,
所述视点信息包括指示视点的位置的x分量、y分量和z分量的视点位置信息,
所述元数据还包括与所述视点相关的标志,
当所述标志具有特定值时,所述视点位置信息表示所述视点是原视点,
所述元数据还包括针对所述视点的全局坐标系的旋转信息,
所述元数据还包括过渡效果类型信息,
所述过渡效果类型信息表示当向所述视点切换时的过渡效果的类型,
所述元数据还包括视点数量的信息,该信息指示以样本格式发信号通知的视点的数量,并且
所述元数据还包括标识所述视点的视点标识的信息。
2.根据权利要求1所述的360度视频数据处理方法,
其中,所述视点信息包括视点旋转信息,并且
所述视点旋转信息包括所述视点的旋转角的偏摆角、俯仰角和翻滚角。
3.根据权利要求1所述的360度视频数据处理方法,
其中,所述过渡效果的类型包括放大效果类型和穿行效果类型中的至少一种。
4.根据权利要求1所述的360度视频数据处理方法,
其中,所述视点信息包括观看方位信息,以及
所述观看方位信息包括当向所述视点切换时所述视点的观看方位。
5.根据权利要求4所述的360度视频数据处理方法,
其中,所述视点的所述观看方位在所述视点中保持相同。
6.根据权利要求1所述的360度视频数据处理方法,
其中,所述元数据包括指示所述视点的视点ID的视点ID信息。
7.根据权利要求1所述的360度视频数据处理方法,
其中,所述元数据包括用于标识视点的视点组ID信息。
8.根据权利要求1所述的360度视频数据处理方法,
其中,所述元数据包括动态视点信息。
9.一种360度视频接收设备,该360度视频接收设备包括:
接收器,该接收器被配置为接收包括编码图片的360度视频数据;
数据解码器,该数据解码器被配置为对所述编码图片进行解码;以及
渲染器,该渲染器被配置为基于推导出的元数据渲染解码后的图片,
其中,所述元数据包括视点信息,
所述视点信息包括指示视点的位置的x分量、y分量和z分量的视点位置信息,
所述元数据还包括与所述视点相关的标志,
当所述标志具有特定值时,所述视点位置信息表示所述视点是原视点,
所述元数据还包括针对所述视点的全局坐标系的旋转信息,
所述元数据还包括过渡效果类型信息,
所述过渡效果类型信息表示当向所述视点切换时的过渡效果的类型,
所述元数据还包括视点数量的信息,该信息指示以样本格式发信号通知的视点的数量,并且
所述元数据还包括标识所述视点的视点标识的信息。
10.一种由360度视频发送设备执行的360度视频数据处理方法,该360度视频数据处理方法包括以下步骤:
获取360度视频;
生成图片;
对所述图片进行编码;
生成元数据;以及
执行用于存储或发送编码后的图片和所述元数据的处理,
其中,所述元数据包括视点信息,
所述视点信息包括指示视点的位置的x分量、y分量和z分量的视点位置信息,
所述元数据还包括与所述视点相关的标志,
当所述标志具有特定值时,所述视点位置信息表示所述视点是原视点,
所述元数据还包括针对所述视点的全局坐标系的旋转信息,
所述元数据还包括过渡效果类型信息,
所述过渡效果类型信息表示当向所述视点切换时的过渡效果的类型,
所述元数据还包括视点数量的信息,该信息指示以样本格式发信号通知的视点的数量,并且
所述元数据还包括标识所述视点的视点标识的信息。
11.一种360度视频发送设备,该360度视频发送设备包括:
投影处理器,该投影处理器被配置为生成360度视频的图片;
数据编码器,该数据编码器被配置为对所述图片进行编码;
元数据处理器,该元数据处理器被配置为生成元数据;以及
发送处理器,该发送处理器被配置为执行用于存储或发送编码后的图片和所述元数据的处理,
其中,所述元数据包括视点信息,
所述视点信息包括指示视点的位置的x分量、y分量和z分量的视点位置信息,
所述元数据还包括与所述视点相关的标志,
当所述标志具有特定值时,所述视点位置信息表示所述视点是原视点,
所述元数据还包括针对所述视点的全局坐标系的旋转信息,
所述元数据还包括过渡效果类型信息,
所述过渡效果类型信息表示当向所述视点切换时的过渡效果的类型,
所述元数据还包括视点数量的信息,该信息指示以样本格式发信号通知的视点的数量,并且
所述元数据还包括标识所述视点的视点标识的信息。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201862679681P | 2018-06-01 | 2018-06-01 | |
US62/679,681 | 2018-06-01 | ||
PCT/KR2019/006269 WO2019231178A1 (ko) | 2018-06-01 | 2019-05-24 | 복수의 뷰포인트들에 대한 메타데이터를 송수신하는 방법 및 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111727605A CN111727605A (zh) | 2020-09-29 |
CN111727605B true CN111727605B (zh) | 2022-09-13 |
Family
ID=68697243
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980013604.0A Active CN111727605B (zh) | 2018-06-01 | 2019-05-24 | 用于发送和接收关于多个视点的元数据的方法及设备 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20210176446A1 (zh) |
EP (1) | EP3806458A4 (zh) |
JP (1) | JP6986158B2 (zh) |
KR (1) | KR102214085B1 (zh) |
CN (1) | CN111727605B (zh) |
WO (2) | WO2019231178A1 (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3599544A1 (en) * | 2018-07-25 | 2020-01-29 | Nokia Technologies Oy | An apparatus, method, computer program for enabling access to mediated reality content by a remote user |
CN110876051B (zh) * | 2018-08-29 | 2023-04-11 | 中兴通讯股份有限公司 | 视频数据的处理,传输方法及装置,视频数据的处理系统 |
WO2021137300A1 (en) * | 2020-01-04 | 2021-07-08 | Sharp Kabushiki Kaisha | Systems and methods for signaling viewpoint switching information in omnidirectional media |
KR20220160550A (ko) * | 2020-03-31 | 2022-12-06 | 인텔 코포레이션 | 몰입형 비디오에서 아틀라스 당 인에이블된 뷰들을 시그널링하는 방법들 및 장치들 |
EP4210339A4 (en) * | 2020-09-04 | 2024-03-20 | Panasonic Ip Corp America | REPRODUCTION DEVICE, TRANSMISSION DEVICE, REPRODUCTION METHOD AND TRANSMISSION METHOD |
WO2023058258A1 (ja) * | 2021-10-05 | 2023-04-13 | ソニーグループ株式会社 | 画像処理システム、並びに、画像処理装置および方法 |
CN113949829B (zh) * | 2021-10-15 | 2022-09-20 | 腾讯科技(深圳)有限公司 | 媒体文件封装及解封装方法、装置、设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101895740A (zh) * | 2009-05-22 | 2010-11-24 | 华为技术有限公司 | 传输视频数据的方法及装置 |
CN104520854A (zh) * | 2012-08-10 | 2015-04-15 | 微软公司 | 电子表格应用中的动画过渡和效果 |
WO2017142353A1 (ko) * | 2016-02-17 | 2017-08-24 | 엘지전자 주식회사 | 360 비디오를 전송하는 방법, 360 비디오를 수신하는 방법, 360 비디오 전송 장치, 360 비디오 수신 장치 |
WO2018079166A1 (ja) * | 2016-10-26 | 2018-05-03 | ソニー株式会社 | 情報処理装置、情報処理システム、および情報処理方法、並びにプログラム |
KR20180046044A (ko) * | 2016-10-27 | 2018-05-08 | 에스케이텔레콤 주식회사 | 전방위 영상 표시 장치 및 그 표시 방법 |
CN108028910A (zh) * | 2015-09-25 | 2018-05-11 | 索尼公司 | 信息处理设备、信息处理方法与程序 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4167777B2 (ja) * | 1999-07-19 | 2008-10-22 | 三菱電機株式会社 | 映像表示装置、映像表示方法および映像を表示するためのプログラムを記録した記録媒体 |
US8239766B2 (en) * | 2005-09-27 | 2012-08-07 | Qualcomm Incorporated | Multimedia coding techniques for transitional effects |
KR20110097690A (ko) * | 2010-02-23 | 2011-08-31 | 삼성전자주식회사 | 다시점 정지 영상 서비스 제공 방법 및 그 장치, 다시점 정지 영상 서비스 수신 방법 및 그 장치 |
JP6309749B2 (ja) * | 2013-12-09 | 2018-04-11 | シャープ株式会社 | 画像データ再生装置および画像データ生成装置 |
JP2015187797A (ja) * | 2014-03-27 | 2015-10-29 | シャープ株式会社 | 画像データ生成装置および画像データ再生装置 |
KR20170079198A (ko) * | 2015-12-30 | 2017-07-10 | 엘지전자 주식회사 | 이동 단말기 및 그의 동작 방법 |
JPWO2017154606A1 (ja) * | 2016-03-10 | 2019-01-10 | ソニー株式会社 | 情報処理装置および情報処理方法 |
WO2017205642A1 (en) * | 2016-05-25 | 2017-11-30 | Livit Media Inc. | Methods and systems for live sharing 360-degree video streams on a mobile device |
WO2018038523A1 (ko) * | 2016-08-25 | 2018-03-01 | 엘지전자 주식회사 | 전방향 비디오를 전송하는 방법, 전방향 비디오를 수신하는 방법, 전방향 비디오 전송 장치, 전방향 비디오 수신 장치 |
KR102014240B1 (ko) * | 2016-09-08 | 2019-08-27 | 가온미디어 주식회사 | 공간적 구조 정보를 이용한 동기화된 다시점 영상의 선택적 복호화 방법, 부호화 방법 및 그 장치 |
US10614606B2 (en) * | 2016-11-30 | 2020-04-07 | Ricoh Company, Ltd. | Information processing apparatus for creating an animation from a spherical image |
-
2019
- 2019-05-24 KR KR1020207012028A patent/KR102214085B1/ko active IP Right Grant
- 2019-05-24 EP EP19812642.7A patent/EP3806458A4/en not_active Withdrawn
- 2019-05-24 JP JP2020531440A patent/JP6986158B2/ja active Active
- 2019-05-24 US US16/761,356 patent/US20210176446A1/en not_active Abandoned
- 2019-05-24 WO PCT/KR2019/006269 patent/WO2019231178A1/ko unknown
- 2019-05-24 CN CN201980013604.0A patent/CN111727605B/zh active Active
- 2019-05-31 WO PCT/KR2019/006551 patent/WO2019231269A1/ko active Application Filing
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101895740A (zh) * | 2009-05-22 | 2010-11-24 | 华为技术有限公司 | 传输视频数据的方法及装置 |
CN104520854A (zh) * | 2012-08-10 | 2015-04-15 | 微软公司 | 电子表格应用中的动画过渡和效果 |
CN108028910A (zh) * | 2015-09-25 | 2018-05-11 | 索尼公司 | 信息处理设备、信息处理方法与程序 |
WO2017142353A1 (ko) * | 2016-02-17 | 2017-08-24 | 엘지전자 주식회사 | 360 비디오를 전송하는 방법, 360 비디오를 수신하는 방법, 360 비디오 전송 장치, 360 비디오 수신 장치 |
WO2018079166A1 (ja) * | 2016-10-26 | 2018-05-03 | ソニー株式会社 | 情報処理装置、情報処理システム、および情報処理方法、並びにプログラム |
KR20180046044A (ko) * | 2016-10-27 | 2018-05-08 | 에스케이텔레콤 주식회사 | 전방위 영상 표시 장치 및 그 표시 방법 |
Also Published As
Publication number | Publication date |
---|---|
EP3806458A4 (en) | 2022-03-02 |
KR102214085B1 (ko) | 2021-02-09 |
JP2021506175A (ja) | 2021-02-18 |
KR20200058501A (ko) | 2020-05-27 |
US20210176446A1 (en) | 2021-06-10 |
JP6986158B2 (ja) | 2021-12-22 |
WO2019231178A1 (ko) | 2019-12-05 |
EP3806458A1 (en) | 2021-04-14 |
WO2019231269A1 (ko) | 2019-12-05 |
CN111727605A (zh) | 2020-09-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102118056B1 (ko) | 복수의 뷰포인트들에 대한 메타데이터를 송수신하는 방법 및 장치 | |
US11575869B2 (en) | Overlay processing method in 360 video system, and device thereof | |
CN109076255B (zh) | 发送、接收360度视频的方法及设备 | |
KR102157655B1 (ko) | 360 비디오를 전송하는 방법, 360 비디오를 수신하는 방법, 360 비디오 전송 장치, 360 비디오 수신 장치 | |
CN111727605B (zh) | 用于发送和接收关于多个视点的元数据的方法及设备 | |
KR102258448B1 (ko) | 핫스팟 및 roi 관련 메타데이터를 이용한 360도 비디오를 송수신하는 방법 및 그 장치 | |
US20200112710A1 (en) | Method and device for transmitting and receiving 360-degree video on basis of quality | |
KR102221301B1 (ko) | 카메라 렌즈 정보를 포함한 360도 비디오를 송수신하는 방법 및 그 장치 | |
US10965928B2 (en) | Method for 360 video processing based on multiple viewpoints and apparatus therefor | |
KR102120110B1 (ko) | 복수의 뷰포인트들에 대한 메타데이터를 송수신하는 방법 및 장치 | |
KR20210016530A (ko) | 미디어 콘텐츠 전송을 위한 방법, 디바이스, 및 컴퓨터 프로그램 | |
KR20190103102A (ko) | Vr 디바이스 및 vr 디바이스 제어 방법 | |
CN110637463B (zh) | 360度视频处理方法 | |
US20190313074A1 (en) | Method for transmitting 360-degree video, method for receiving 360-degree video, apparatus for transmitting 360-degree video, and apparatus for receiving 360-degree video |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |