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

用于递送体积视频内容的方法和装置与流程

2022-04-14 04:14:21 来源:中国专利 TAG:


1.本原理一般而言涉及三维(3d)场景和立体视频内容的领域。本文档还可以在代表3d场景的纹理和几何形状的数据的编码、格式化和解码的上下文中理解,用于在最终用户设备(诸如移动设备或头戴式显示器(hmd))上渲染立体内容。特别地,本原理涉及用信号通知和解码代表体积视频中导航的限制的信息。


背景技术:

2.本部分旨在向读者介绍本领域的各个方面,这些方面可以与以下描述和/或要求保护的本原理的各个方面相关。相信该讨论有助于向读者提供背景信息,以促进更好地理解本原理的各个方面。因而,应当理解的是,应从这种角度来阅读这些陈述,而不是作为对现有技术的承认。
3.最近,可用的大视场内容(高达360
°
)有所增长。用户在诸如头戴式显示器、智能眼镜、pc屏幕、平板电脑、智能电话等沉浸式显示设备上观看内容时,可能无法完全看到此类内容。这意味着在给定时刻,用户可能只能观看内容的一部分。但是,用户通常可以通过各种手段在内容内导航,诸如头部移动、鼠标移动、触摸屏、语音等。通常期望编码和解码这种内容。
4.沉浸式视频,也称为360
°
平面视频,允许用户通过其头部围绕静止视点的旋转来观看其自己周围的一切。旋转仅允许3自由度(3dof)体验。即使3dof视频足以满足第一全向视频体验,例如使用头戴式显示设备(hmd),但对于预期获得更多自由度的观看者来说,3dof视频可能很快变得令人沮丧,例如由于体验视差。此外,3dof还会诱发头晕,因为用户从来不会仅旋转头部,而是还会在三个方向上平移头部,而这种平移在3dof视频体验中是无法再现的。
5.除其它以外,大视场内容尤其可以是三维计算机图形影像场景(3d cgi场景)、点云或沉浸式视频等。许多术语可以被用于设计此类沉浸式视频:例如,虚拟现实(vr)、360、全景、4π立体、沉浸式、全向或大视场。
6.体积视频(也称为6自由度(6dof)视频)是3dof视频的替代方案。在观看6dof视频时,除了旋转之外,用户还可以在观看的内容中平移其头部以及甚至其身体,并体验视差甚至体积。此类视频通过在头部平移期间提供一致的视觉反馈而大大增加了沉浸感和对场景深度的感知,并防止头晕。内容是借助于专用传感器创建的,从而允许同时记录感兴趣场景的颜色和深度。使用与摄影测量技术相结合的彩色相机的装配装备(rig)是执行这种记录的一种方式,即使仍然存在技术困难。
7.虽然3dof视频包括由纹理图像(例如,根据纬度/经度投影映射或等距柱状投影映射编码的球形图像)的未映射产生的图像序列,但6dof视频帧嵌入了来自几个视点的信息。它们可以被视为由三维捕获产生的点云的时间系列。根据观看条件,可以考虑两种体积视频。第一种(即,完整的6dof)允许在视频内容中完全自由导航,而第二种(又称3dof )将用户观看空间限制到称为观看边界框的有限体积内,从而允许有限的头部平移和视差体验。
这第二个上下文是自由导航和就座观众的被动观看条件之间的宝贵权衡。在3dof 和6dof体验之间,有可能将4dof 情况定义为3dof 和6dof之间的中间情况,其中用户的位移被限制到沿着3d场景内的曲线(1d)路径,每个路径样本周围具有受限的水平、垂直和深度平移。用户可以在保证良好视觉质量的情况下沿着路径在一种隧道(tunnel)内移动。如果用户将他的虚拟相机移到隧道外,那么对于重构良好质量的3d场景,数据将可能丢失。
8.在给定体积视频内容的导航期间,用户的虚拟相机的允许位置的范围和观看朝向可能必然受到限制。否则,当请求由于缺乏可用的视觉数据而无法被完全渲染的视口时,用户可以“离开”3d场景。因此,需要一种解决方案,用于在消费给定的体积视频内容时向最终用户设备通知合适的、优选的和/或允许的观看者(虚拟)位置和观看朝向。


技术实现要素:

9.以下给出了本原理的简化发明内容,以提供对本原理某些方面的基本理解。本发明内容不是本原理的广泛概述。它并不旨在识别本原理的关键或重要元素。以下发明内容仅以简化形式给出了本原理的一些方面,作为下面提供的更详细描述的序言。
10.本原理涉及用于用信号通知代表体积视频中导航的限制的信息的方法和设备。该方法包括将元数据编码到数据流中,该数据流包括代表所述体积视频的视频数据。元数据包括:
[0011]-代表观看边界框的数据;
[0012]-代表所述体积视频的3d空间中的曲线路径的数据;以及
[0013]-代表与所述曲线路径上的点相关联的至少一个观看方向范围的数据。
[0014]
根据另一方面,提供了用于解码代表体积视频中导航的限制的信息的第二方法和第二设备。第二方法包括从包括代表体积视频的视频数据的数据流中解码元数据。元数据包括:
[0015]-代表观看边界框的数据;
[0016]-代表所述体积视频的3d空间中的曲线路径的数据;以及
[0017]-代表与所述曲线路径上的点相关联的至少一个观看方向范围的数据;
[0018]
根据至少一个实施例的另一个一般方面,提供了一种数据流,该数据流包括根据任何所描述的编码实施例或变体生成的视频数据和相关联的元数据。
[0019]
根据至少一个实施例的另一个一般方面,提供了一种包含根据任何所描述的编码实施例或变体生成的数据内容的非暂时性计算机可读介质。
[0020]
根据至少一个实施例的另一个一般方面,提供了一种包括指令的计算机程序产品,指令在由计算机执行时使计算机执行任何所描述的解码实施例或变体。
附图说明
[0021]
通过阅读以下描述,将更好地理解本公开,并且将出现其它具体特征和优点,本描述参考附图,其中:
[0022]-图1示出了根据本原理的非限制性实施例的物体的三维(3d)模型和与该3d模型对应的点云的点;
[0023]-图2示出了根据本原理的非限制性实施例的代表3d场景序列的数据的编码、传输
和解码的非限制性示例;
[0024]-图3示出了根据本原理的非限制性实施例的设备的示例体系架构,该设备可以被配置为实现关于图7和8描述的方法;
[0025]-图4示出了根据本原理的非限制性实施例的当数据通过基于分组的传输协议被传输时流的语法的实施例的示例;
[0026]-图5示意性地图示了根据本原理的非限制性实施例的通过描绘一条曲线路径并且在沿着这条路径的给定位置处描绘球形边界框和观看朝向范围的虚拟3d场景内的受限导航的概念;
[0027]
图5b图示了根据本原理的非限制性实施例的具有放置在圆弧上的五个会聚相机的获取相机装配装备的示例,具有从获取相机的位置和方向推断的管状观看空间;
[0028]
图6图示了根据本原理的非限制性实施例的在中心位置处具有感兴趣对象的3d场景周围导航的圆形路径的特定情况;
[0029]
图7图解图示了根据本原理的非限制性实施例的用于用信号通知代表体积视频中导航的限制的信息的方法70;
[0030]
图8图解图示了根据本原理的非限制性实施例的用于解码代表体积视频中导航的限制的信息的方法80。
具体实施方式
[0031]
在下文中将参考附图更全面地描述本原理,在附图中示出了本原理的示例。但是,本原理可以以许多替代形式来实施,并且不应当被解释为限于本文阐述的示例。因而,虽然本原理易于有各种修改和替代形式,但是其具体示例通过附图中的示例示出,并且将在本文中进行详细描述。但是,应当理解的是,无意将本发明原理限于所公开的特定形式,相反,本发明将覆盖落入如权利要求定义的本发明原理的精神和范围内的所有修改、等同形式和替代形式。
[0032]
本文使用的术语仅出于描述特定示例的目的,而无意于限制本原理。如本文所使用的,单数形式“一”、“一个”和“该”也意图包括复数形式,除非上下文另外明确指出。将进一步理解的是,当在本说明书中使用时,术语“包括”和/或“包含”指定所述特征、整数、步骤、操作、元素和/或组件的存在。但不排除一个或多个其它特征、整数、步骤、操作、元素、组件和/或其组的存在或添加。而且,当元件被称为“响应于”或“连接到”另一个元件时,它可以直接响应于或连接到另一个元件,或者可以存在中间元件。相反,当元件被称为“直接响应于”或“直接连接到”其它元件时,不存在中间元件。如本文所使用的,术语“和/或”包括相关联的所列项目中的一个或多个的任何和所有组合,并且可以缩写为“/”。
[0033]
将理解的是,虽然本文可以使用术语第一、第二等来描述各种元素,但是这些元素不应受到这些术语的限制。这些术语仅用于区分一个元素与另一个元素。例如,在不脱离本原理的教导的情况下,第一元素可以被称为第二元素,并且类似地,第二元素可以被称为第一元素。
[0034]
虽然一些图在通信路径上包括箭头以示出通信的主要方向,但是应该理解的是,通信可以在与所描绘的箭头相反的方向上发生。
[0035]
关于框图和操作流程图描述了一些示例,其中每个方框表示电路元件、模块或代
码的部分,其包括用于实现(一个或多个)指定的逻辑功能的一个或多个可执行指令。还应当注意的是,在其它实施方式中,在方框中指出的(一个或多个)功能可以不按指出的次序发生。例如,取决于所涉及的功能,连续示出的两个方框实际上可以基本上并发地执行,或者有时可以以相反的次序执行。
[0036]
本文中对“根据示例”或“在示例中”的引用是指结合示例描述的特定特征、结构或特点可以包括在本原理的至少一个实施方式中。在说明书中各个地方出现的短语“根据示例”或“示例”不一定全部是指同一个示例,也不是必须与其它示例相互排斥的单独或替代示例。
[0037]
出现在权利要求中的附图标记仅仅是说明性的,并且对权利要求的范围没有限制作用。虽然没有明确描述,但是可以以任何组合或子组合来采用本示例和变体。
[0038]
图1示出了物体的三维(3d)模型10和与该3d模型10对应的点云11的点。3d模型10和点云11可以例如与包括其它物体的3d场景的物体的可能的3d表示对应。模型10可以是3d网表示,并且点云11的点可以是网的顶点。点云11的点也可以是散布在网的面的表面上的点。模型10也可以表示为点云11的拼贴版本,模型10的表面是通过拼贴点云11的点创建的。模型10可以用许多不同的表示(诸如体素或样条)来表示。图1图示了一个事实,即,可以用3d物体的表面表示定义点云,并且可以从云的点生成3d物体的表面表示。如本文所使用的,将3d物体的点(通过3d场景的扩展点)投影到图像上等同于投影这个3d物体的任何表示,例如点云、网、样条模型或体素模型。
[0039]
点云可以在存储器中表示,例如,作为基于向量的结构,其中每个点在视点的参考系(例如,三维坐标xyz)中具有其自己的坐标,或立体角和与视点的距离(也称为深度)和一个或多个属性,也称为分量。分量的示例是可以在各种颜色空间中表达的颜色分量,例如rgb(红、绿和蓝)或yuv(y是亮度分量,uv是两个色度分量)。点云是包括物体的3d场景的表示。可以从给定的视点或视点范围看到3d场景。点云可以通过许多方式获得,例如:
[0040]
·
从由相机的装配装备拍摄的真实物体的捕获,可选地辅以深度有源感测设备;
[0041]
·
从由建模工具中的虚拟相机的装配装备拍摄的虚拟/合成物体的捕获;
[0042]
·
从真实和虚拟物体的混合。
[0043]
图2示出了代表3d场景序列的数据的编码、传输和解码的非限制性示例。例如并且同时编码格式可以对于3dof、3dof 和6dof解码兼容。
[0044]
获得3d场景序列20。由于图片序列是2d视频,因此3d场景序列是3d(也称为体积)视频。可以向体积视频渲染设备提供3d场景序列以进行3dof、3dof 或6dof渲染和显示。
[0045]
3d场景序列20被提供给编码器21。编码器21将一个3d场景或3d场景序列作为输入并提供代表该输入的位流。位流可以存储在存储器22中和/或电子数据介质上并且可以通过网络22传输。代表3d场景序列的位流可以由解码器23从存储器22读取和/或从网络22接收。解码器23由所述位流输入并提供3d场景序列,例如以点云格式。
[0046]
编码器21可以包括实现若干步骤的若干电路。在第一步中,编码器21将每个3d场景投影到至少一个2d图片上。3d投影是将三维点映射到二维平面的任何方法。由于用于显示图形数据的大多数当前方法基于平面(来自若干位平面的像素信息)二维媒体,因此这种类型的投影的使用非常广泛,尤其是在计算机图形学、工程设计和绘图中。投影电路211为序列20的3d场景提供至少一个二维帧2111。帧2111包括代表投影到帧2111上的3d场景的颜
色信息和深度信息。在变体中,颜色信息和深度信息被编码在两个分离的帧2111和2112中。
[0047]
元数据212由投影电路211使用和更新。元数据212包括关于投影操作的信息(例如,投影参数)以及关于颜色和深度信息在帧2111和2112内被组织的方式的信息,如关于图5至7所描述的。
[0048]
视频编码电路213将帧2111和2112的序列编码为视频。3d场景的图片2111和2112(或3d场景的图片序列)由视频编码器213编码在流中。然后视频数据和元数据212被数据封装电路214封装在数据流中。
[0049]
编码器213例如符合诸如以下的编码器:
[0050]-jpeg,规范iso/cei 10918-1uit-t建议t.81,https://www.itu.int/rec/t-rec-t.81/en;
[0051]-avc,也称为mpeg-4avc或h264。在uit-t h.264和iso/cei mpeg-4第10部分(iso/cei 14496-10)中指定,http://www.itu.int/rec/t-rec-h.264/en、hevc(其规范可在itu网站上找到,t建议,h系列,h265,http://www.itu.int/rec/t-rec-h.265-201612-i/en);
[0052]-3d-hevc(hevc的扩展,其规范在itu网站、t推荐、h系列、h265、http://www.itu.int/rec/t-rec-h.265-201612-i/en附录g和i中找到);
[0053]-谷歌开发的vp9;或者
[0054]-由开放媒体联盟开发的av1(aomedia video 1)。
[0055]
数据流存储在可由解码器23例如通过网络22访问的存储器中。解码器23包括实现不同解码步骤的不同电路。解码器23采用由编码器21生成的数据流作为输入并提供要由体积视频显示设备(如头戴式设备(hmd))渲染和显示的3d场景序列24。解码器23从源22获得流。例如,源22属于集合,包括:
[0056]-本地存储器,例如视频存储器或ram(或随机存取存储器)、闪存、rom(或只读存储器)、硬盘;
[0057]-存储接口,例如与大容量存储装置、ram、闪存、rom、光碟或磁性载体的接口;
[0058]-通信接口,例如有线接口(例如总线接口、广域网接口、局域网接口)或无线接口(诸如ieee 802.11接口或接口);以及
[0059]-用户接口,诸如使用户能够输入数据的图形用户界面。
[0060]
解码器23包括用于提取在数据流中编码的数据的电路234。电路234将数据流作为输入并提供与编码在流中的元数据212和二维视频对应的元数据232。视频由提供帧序列的视频解码器233解码。解码的帧包括颜色和深度信息。在变体中,视频解码器233提供两个帧序列,一个包括颜色信息,另一个包括深度信息。电路231使用元数据232从解码的帧中去投影颜色和深度信息以提供3d场景24的序列。3d场景序列24与3d场景序列20对应,具有与编码为2d视频和视频压缩相关的精度的可能损失。
[0061]
图3示出了设备30的示例体系架构,其可以被配置为实现关于图7和8描述的方法。图2的编码器21和/或解码器23可以实现这个体系架构。可替代地,编码器21和/或解码器23的每个电路可以是根据图3的体系架构的设备,例如经由它们的总线31和/或经由i/o接口36链接在一起。
[0062]
设备30包括以下元件,这些元件通过数据和地址总线31链接在一起:
[0063]-微处理器32(或cpu),例如,dsp(或数字信号处理器);
[0064]-rom(或只读存储器)33;
[0065]-ram(或随机存取存储器)34;
[0066]-存储接口35;
[0067]-i/o接口36,用于接收来自应用的要传输的数据;以及
[0068]-电源,例如电池。
[0069]
根据示例,电源在设备外部。在每个提到的存储器中,说明书中使用的词“寄存器”可以与容量小的区域(几位)或者与非常大的区域(例如整个程序或大量接收或解码的数据)对应。rom 33包括至少程序和参数。rom 33可以存储算法和指令以执行根据本原理的技术。在接通电源后,cpu 32将程序上传到ram中并执行对应的指令。
[0070]
ram 34在寄存器中包括由cpu 32执行并在设备30接通电源后上传的程序、寄存器中的输入数据、寄存器中处于方法的不同状态的中间数据以及寄存器中其它用于执行方法的变量。
[0071]
本文描述的实施方式可以例如以方法或处理、装置、计算机程序产品、数据流或信号来实现。即使仅在单一形式的实施方式的上下文中进行讨论(例如,仅作为方法或设备进行讨论),所讨论的特征的实施方式也可以以其它形式(例如程序)实现。装置可以例如以适当的硬件、软件和固件来实现。该方法可以在例如装置中实现,诸如例如处理器,其是指处理设备,一般而言包括例如计算机、微处理器、集成电路或可编程逻辑设备。处理器还包括通信设备,诸如例如计算机、蜂窝电话、便携式/个人数字助理(“pda”)和其它促进最终用户之间的信息通信的设备。
[0072]
根据示例,设备30被配置为实现关于图7和8描述的方法,并且属于包括以下的集合:
[0073]-移动设备;
[0074]-通信设备;
[0075]-游戏设备;
[0076]-平板电脑(或平板计算机);
[0077]-膝上型计算机;
[0078]-静止图片相机;
[0079]-摄像机;
[0080]-编码芯片;
[0081]-服务器(例如,广播服务器、视频点播服务器或web服务器)。
[0082]
图4示出了当通过基于分组的传输协议传输数据时流的语法的实施例的示例。图4示出了体积视频流的示例结构4。该结构包含在容器中,该容器以独立的语法元素组织流。该结构可以包括头部部分41,其是流的每个语法元素共有的数据的集合。例如,头部部分包括关于语法元素的元数据中的一些,描述每个元素的性质和作用。头部部分还可以包括图2的元数据212的一部分,例如用于将3d场景的点投影到帧2111和2112上的中心视点的坐标。该结构包括有效载荷,其包括语法的元素42和语法的至少一个元素43。语法元素42包括代表颜色和深度帧的数据。图像可以已根据视频压缩方法进行了压缩。
[0083]
语法的元素43是数据流的有效载荷的一部分并且可以包括关于如何对语法的元素42的帧进行编码的元数据,例如用于将3d场景的点投影和打包到帧上的参数。此类元数
据可以与视频的每一帧或帧的组(在视频压缩标准中也称为图片组(gop))相关联。
[0084]
图5示意性地图示了通过描绘一条曲线路径并且在沿着这条路径的给定位置处描绘球形边界框和观看朝向范围的虚拟3d场景内的受限导航的概念。导航限制是在内容创建阶段按内容确定的,附加的益处是有可能向3d几何目标约束添加主观(例如,艺术)约束。
[0085]
根据本原理,明确描述与代表3d场景50的给定体积视频内容相关联的观看位置和朝向的子集的高级语法元素的布置。用信号通知的信息包括以下元素:
[0086]-3d空间中的曲线路径51(或曲线路径的集合),
[0087]-基本边界框体积52,
[0088]-观看朝向范围的集合53,由沿着(一条或多条)曲线路径的位置建索引
[0089]
这些元素的组合描述沿着(一条或多条)路径的虚拟位移,这些位移是合适的、优选的和/或允许高质量的3d场景重构。在沿着(一条或多条)路径的每个位置处,边界框内的小平移是可能的并且观看朝向被限制在给定的角度范围内。这可以被描述为4dof 虚拟导航“隧道”。
[0090]
根据第一实施例,曲线导航路径的集合由3d点的集合定义,具有以下语法和语义:
[0091][0092]
[0093][0094]
num_paths指定为导航内容而定义的曲线导航路径的数量。值0指示可以导航整个3d空间。
[0095]
num_points指定沿着曲线导航路径采样的3d点的数量。
[0096]
x[n][i]、y[n][i]、z[n][i]是固定点值(例如,16.16值),定义在3d场景的全局坐标系中第i个样本沿着第n条路径的3d坐标。这些点根据沿着路径的曲线横坐标进行排序。因此,第n条路径定义在两个3d端点(x[n][0],y[n][0],z[n][0])和(x[n][num_points[n]-1],y[n][num_points[n]-1],z[n][num_points[n]-1])之间。例如,曲线路径可以是到列表中的连续点之间以及从列表的最后一个点到第一个点的直线路径的分段路径。在变体中,曲线路径可以通过使用三个或四个连续点通过使用二次或三次贝塞尔曲线来确定。
[0097]
phi_min[n][i]、phi_max[n][i]和theta_min[n][i]、theta_max[n][i]是方位角和仰角的最小值和最大值,它们在沿着第n条路径的第i个点处界定观看朝向,以2
16
度为单位。例如,方位角值在-180*2
16
到180*2
16-1的范围内,包括端点。例如,仰角值在-90*2
16
到90*2
16
的范围内,包括端点。方位角和仰角值可以用不同的测量单位表述,例如用弧度表示。
[0098]
shape_type指定观看边界框的形状,允许用户在其中沿着导航路径在给定位置轻微移动。shape_type等于0指示球体,其半径由first_dimension指定。该语法允许定义更复杂的椭圆体或长方体3d体积形状。
[0099]
根据另一个实施例,通过从与体积内容相关联的获取相机的参数推断导航路径51来获得轻量级观看空间54规范。对导航路径进行采样的3d点是获取相机的3d位置。每个样本位置处的观看方向(中心方位角和仰角)是那个位置处的获取相机观看方向。由于获取外部相机参数已经是与体积视频内容相关联的元数据的一部分,因此要传输以指定观看空间的附加元数据减少到每个样本位置处观看框的形状和迟迟,以及观看方向周围的方位角和仰角范围。语法和相关联的语义的示例如下:
[0100][0101]
num_cams[n]是用于对第n条导航路径进行采样的获取相机的子集的尺寸。cam_idx[n][i]是第i个相机沿着第n条导航路径的索引(在所有获取相机的列表当中)。phi_range[n][i]和theta_range[n][i]是沿着在第cam_idx[n][i]个获取相机的方位角和仰角周围第n条路径的第i个位置处的方位角和仰角偏差的范围。
[0102]
这种观看空间规范特别适用于使用沿着圆弧定位的相机的装配装备捕获的体积内容。图5b图示了与从这种装配装备捕获的3d内容相关联的观看空间54的示例:十个相机布置成五对会聚相机55捕获3d场景;通过在每隔一个相机位置采样5个球体来指定管状观看空间54。
[0103]
图6图示了在3d场景周围导航的圆形路径的特定情况,感兴趣的对象位于中心位置处。在这个用例中,用户被允许在全局坐标系中的给定高度值处的水平面内的圆形路径61上在3d场景50周围走动,具有向内视场63。与第一实施例中一样,允许边界框52内的位移。
[0104]
语法和语义的示例可以如下:
[0105]
[0106][0107]
center_x、center_y、center_z是固定点值(例如,16.16值),用于定义圆形路径的中心的3d坐标。
[0108]
radius是固定点值,用于定义圆形路径的半径。
[0109]
phi_range是在圆形路径上的任何点(相对于径向方向)处界定方位角观看朝向的角度范围,以2
16
度为单位。delta_phi值应在0到360*2
16-1的范围内,包括端点。
[0110]
theta_min、theta_max是圆形路径上的任何点处观看仰角的最小值和最大值,以2
16
度为单位。仰角值应在-90*2
16
到90*2
16
的范围内,包括端点。
[0111]
更一般地,曲线导航路径可以由参数化3d曲线定义:x=f(s),y=g(s),z=h(s),s是标量值。根据本原理,多种这样的功能参数化是合适的。这种通用方法特别适用于典型的4dof 体验,如渲染体育赛事或音乐会活动的体积视频。对于此类4dof 视频,合适的、优选的和/或允许的路径具有可以使用少量参数被参数化的简单形状,例如体育场看台上的椭圆或舞台或体育场的场地周围的矩形。
[0112]
图7图解地图示了用于用信号通知代表体积视频中导航的限制的信息的方法70。在步骤71处,获得体积视频数据。同时获得代表曲线路径和曲线路径的点的观看方向范围的数据。与观看边界框相关联的曲线路径代表在包括体积视频的3d场景的3d空间中导航的限制。根据本原理的实施例,这些数据可以通过如关于图5和6描述的不同数据结构来表示。在步骤72处,将体积视频数据编码在与元数据相关联的数据流中,该元数据包括在步骤71处获得的导航的限制。在步骤73处,在步骤72处编码的数据流可以存储在非暂时性介质中或传输到客户端设备。
[0113]
根据实施例,所提出的受限导航路径消息在视频流内被编码在专用sei消息(补充增强信息)中。根据另一个实施例,所提出的受限导航路径消息在容器级别使用iso基础媒体文件格式进行编码。在体积视频流的元数据中添加这种导航路径消息允许在渲染器侧将虚拟导航限制到与编码的3d场景内容一致的观看位置和朝向,从而确保沉浸式体验的质量。
[0114]
图8图解地图示了用于解码代表体积视频中导航的限制的信息的方法80。在步骤81处,从源获得包括体积视频的视频数据的数据流。数据流还包括与体积视频相关联的元数据和包括体积视频的3d场景的3d空间中导航的限制的表示。在步骤82处,解码视频数据和元数据。元数据包括代表观看边界框的数据、代表体积视频的3d空间中的曲线路径的数据以及代表与曲线路径上的点相关联的至少一个观看方向范围的数据。这些数据可以由根据本原理的实施例的不同数据结构来表示,如关于图5和6所示。在步骤83处,通过使用解码的元数据来检索代表3d场景的3d空间中导航的限制的信息,并且这个信息被渲染器使用。
例如,当用户试图离开保证良好渲染质量的隧道时,渲染器可以警告用户。当用户移动到合适的路径之外时,渲染器还可以防止虚拟相机移动到描述体积之外或修改渲染(例如,通过淡化图像)。
[0115]
本文描述的实施方式可以在例如方法或过程、装置、计算机程序产品、数据流或信号中实现。即使仅在单一实现形式的上下文中进行讨论(例如,仅作为方法或设备进行讨论),所讨论的特征的实施方式也可以以其它形式(例如,程序)来实现。装置可以在例如适当的硬件、软件和固件中实现。方法可以在例如诸如处理器之类的装置中实现,处理器泛指处理设备,包括例如计算机、微处理器、集成电路或可编程逻辑设备。处理器还包括通信设备,诸如例如智能电话、平板电脑、计算机、移动电话、便携式/个人数字助理(“pda”)以及促进最终用户之间信息通信的其它设备。
[0116]
本文描述的各种过程和特征的实施方式可以实施在各种不同的装备或应用中,特别是例如与数据编码、数据解码、视图生成、纹理处理以及图像和相关纹理信息和/或深度信息的其它处理相关联的装备或应用。此类装备的示例包括编码器、解码器、处理来自解码器的输出的后处理器、向编码器提供输入的预处理器、视频编码器、视频解码器、视频编解码器、web服务器、机顶盒、膝上型计算机、个人计算机、电话、pda和其它通信设备。如应当清楚的,装备可以是移动的,并且甚至可以安装在移动车辆中。
[0117]
此外,方法可以通过由处理器执行的指令来实现,并且此类指令(和/或由实施方式产生的数据值)可以存储在处理器可读介质上,例如,集成电路、软件载体或其它存储设备(诸如例如硬盘、压缩盘(“cd”)、光碟(诸如例如dvd,常常称为数字多功能碟或数字视频碟)、随机存取存储器(“ram”)或只读存储器(“rom”)。指令可以形成有形地实施在处理器可读介质上的应用。指令可以是例如硬件、固件、软件或其组合。指令可以在例如操作系统、单独的应用或两者的组合中找到。因此,处理器的特征可以在于例如被配置为执行处理的设备和包括具有用于执行处理的指令的处理器可读介质(诸如存储设备)的设备。另外,除了或替换指令,处理器可读介质还可以存储由实施方式产生的数据值。
[0118]
对于本领域技术人员将显而易见的是,实施方式可以产生各种信号,这些信号被格式化以携带例如可以被存储或传输的信息。信息可以包括例如用于执行方法的指令或由所描述的实施方式之一产生的数据。例如,信号可以被格式化为携带用于写入或读取所述实施例的语法的规则作为数据,或者携带由所述实施例写入的实际语法值作为数据。这种信号可以被格式化为例如电磁波(例如,使用频谱的射频部分)或基带信号。格式化可以包括例如对数据流进行编码并且利用编码的数据流来调制载波。信号携带的信息可以是例如模拟或数字信息。如已知的,信号可以通过各种不同的有线或无线链路传输。信号可以存储在处理器可读介质上。
[0119]
已经描述了许多实施方式。不过,将理解的是,可以进行各种修改。例如,不同实施方式的元素可以被组合、补充、修改或移除以产生其它实施方式。此外,本领域普通技术人员将理解的是,可以用其它结构和处理替换所公开的结构和处理,并且结果产生的实施方式将以至少基本上相同的(一种或多种)方式执行至少基本上相同的(一个或多个)功能,以实现至少与所公开的实施方式基本上相同的(一个或多个)结果。因而,本技术考虑这些和其它实施方式。
再多了解一些

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

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

相关文献