用于生成图像数据流的装置和方法与流程

文档序号:24502421发布日期:2021-03-30 21:32阅读:90来源:国知局
用于生成图像数据流的装置和方法与流程

本发明涉及用于生成图像数据流的装置和方法,并且尤其但非排他地涉及用于访问场景的虚拟现实应用的图像数据流的生成。



背景技术:

近年来,随着不断开发和引入新的服务以及利用和使用视频的方式,图像和视频应用的种类和范围已大大增加。

例如,一种越来越流行的服务是以如下的方式提供图像序列:使得观看者能够主动和动态地与系统交互以改变绘制的参数。在许多应用中,一个非常吸引人的功能是能够更改观看者的有效观看位置和观看方向的能力,例如允许观看者在呈现的场景中移动并“环顾四周”。

这样的特征可以具体地允许将虚拟现实体验提供给用户。这可以允许用户在虚拟环境中(相对)自由地移动,并动态地改变其位置和他所看的位置。通常,这样的虚拟现实应用基于场景的三维模型,其中该模型被动态评估以提供特定的请求视图。从例如用于计算机和控制台的第一人称射击游戏类别的游戏应用中,这种方法是众所周知的。

尤其对于虚拟现实应用,还期望所呈现的图像是三维图像。实际上,为了优化观看者的沉浸感,通常优选的是,用户将呈现的场景体验为三维场景。实际上,虚拟现实体验应该优选地允许用户选择相对于虚拟世界的他/她自己的位置、相机视点以及时间。

通常,虚拟现实应用固有地受限于它们基于场景的预定模型,并且通常基于虚拟世界的人工模型。如果可以基于真实世界的捕获来提供虚拟现实体验,则将是理想的。但是,在许多情况下,这样的方法非常受限制,或者倾向于要求根据现实世界的捕获物来构建现实世界的虚拟模型。然后通过评估该模型来生成虚拟现实体验。

然而,许多当前的方法倾向于是次优的,并且倾向于通常具有较高的计算或通信资源要求和/或以例如降低的质量或受限的自由度提供次优的用户体验。

作为应用的示例,虚拟现实眼镜已经进入市场。这些眼镜使观看者可以体验捕获的360度(全景)视频。这些360度视频通常是使用摄影机预先捕获的,其中将单幅图像拼贴在一起形成单个球面映射。针对360度视频的常见立体声格式为上/下和左/右。与非全景立体声视频相似,左眼和右眼图片被压缩为单个h.264视频流的一部分。在对单个帧解码后,观看者旋转他/她的头部以查看他/她周围的世界。一个示例是如下的记录,其中,观看者可以体验360度环视效果,并且可以在从不同位置录制的视频流之间离散地切换。在切换时,将加载另一个视频流,这中断了体验。

立体全景视频方法的一个缺点是观看者不能改变虚拟世界中的位置。除了全景立体视频之外,全景深度图的编码和传输还允许补偿客户端观看者的小的平移运动,但是这种补偿本质上将限于小的变化和运动,并且将不能提供沉浸式和自由虚拟现实体验的视觉效果。

一种相关技术是自由视点视频,其中具有深度图的多个视点在单个视频流中被编码和传输。除了利用众所周知的时间预测方案之外,还可以通过利用视点之间的角度依赖性来降低视频流的比特率。然而,所述方法仍然需要高比特率,并且在可以生成的图像方面是受限制的。它实际上不能提供在三维虚拟现实世界中完全自由移动的体验。

遗憾的是,没有任何一种现有技术能够提供理想的体验,而是常常倾向于限制位置和观看方向的改变的自由度。另外,这些技术趋向于要求非常高的数据率并提供包括比生成单幅图像/视图所需的数据更多的数据的数据流。

在许多应用中,并且尤其是对于虚拟现实应用,根据表示场景的数据来生成图像数据流,以使图像数据流反映用户在场景中的(虚拟)位置。这样的图像数据流通常动态地并且实时地生成,使得其反映用户在虚拟场景内的运动。图像数据流可以被提供给绘制器,所述绘制器根据图像数据流的图像数据向用户绘制图像。在许多应用中,经由带宽受限的通信链路将图像数据流提供给绘制器。例如,图像数据流可以由远程服务器生成并且例如通过通信网络被传输到绘制设备。

然而,例如此类应用的问题在于,对于大多数实际应用而言,它们需要非常高的数据率。例如,已经提出基于360°视频流提供虚拟现实体验,其中,由服务器针对给定的观看者位置提供场景的完整360°视图,从而允许客户端生成不同方向的视图。然而,这导致极高的数据率,这在大多数实际应用中是不希望的或无法获得的。

具体地说,虚拟现实(vr)的有前途的应用之一是全向视频(例如vr360或vr180)。这里,来自特定视点的完整视频被映射到一个(或多个)矩形窗口上(例如,使用erp投影)。mpeg已经对该方法进行了标准化,并且还预见到它将最终导致非常高的数据率。

已经提出将视域划分为几个预定的瓦片,然后将它们以不同的质量水平发送给客户端。然而,这通常仍然导致非常高的数据率,并且还倾向于降低针对呈现给用户的绘制图像所实现的质量。对于mpegvr360和vr180,可以仅要求人(当时)正在看的部分(“瓦片”)处于全分辨率和高质量观看,而其余部分(周围)则处于低分辨率。然而,这仍然要求高的数据率,并且由于与例如hdtv(水平约30度)相比,典型的虚拟现实眼镜/头戴套件的视角非常高(水平约100度),因此视频数据率也将比hdtv更高(例如,高10倍)。

因此,改进的方法将是有利的。特别地,一种允许改善的操作、增加的灵活性、改善的虚拟现实体验、降低的数据率、便利的分发、减少的复杂性、便利的实现、减少的存储需求、增加的图像质量和/或改善的性能和/或操作的方法将是有利的。



技术实现要素:

因此,本发明寻求单独地或以任何组合来优选地减弱、减轻或消除上述缺点中的一个或多个。

根据本发明的一个方面,提供了一种用于生成表示三维场景的视图的图像数据流的装置,所述装置包括:接收器,其用于接收指示观看者的头部姿态和相对眼睛姿态的注视指示,所述头部姿态包括头部位置,并且所述相对眼睛姿态指示相对于所述头部姿态的眼睛姿态;确定器,其用于确定具有与所述注视指示相对应的三维场景中的三维位置的视觉关注区域;生成器,其用于将所述图像数据流生成为包括针对所述场景的图像数据,其中,所述图像数据被生成为至少包括针对所述视觉关注区域的第一图像数据和针对所述视觉关注区域之外的场景的第二图像数据;其中,所述生成器被配置为生成所述图像数据,以使所述第一图像数据具有比所述第二图像数据更高的质量水平;并且其中,所述确定器被布置为响应于所述注视指示的注视距离指示来确定所述视觉关注区域。

在许多实施例中,本发明可以为场景提供改进的和/或更实用的图像数据。在许多实施例中,所述方法可以提供非常适合于灵活、高效和高性能的虚拟现实(vr)应用的图像数据。在许多实施例中,其可以允许或实现具有在图像质量和数据率之间显著改善的折衷的vr应用。在许多实施例中,它可以允许改善的感知到的图像质量和/或降低的数据率。该方法可以特别适合于例如vr应用,其中,表示场景的数据被集中存储并且潜在地支持多个远程vr客户端。

注视指示可以指示观看者的注视点。头部姿态和相对眼睛姿态的组合可以对应于注视点,并且注视指示可以例如指示场景中与该注视点相对应的位置。

在许多实施例中,视觉关注区域可以是对应于注视点的区域。特别地,视觉关注区域可以被确定为场景的关于由注视指示所指示的注视点满足准则的区域。该准则例如可以是接近度要求。

图像数据流可以包括用于与头部姿态相对应的视口的视频数据。第一和第二图像数据可以是针对视口的图像数据。所述第二数据可以是对应于根据头部姿态的观看区域的图像的至少一部分的图像数据。

所述图像数据流可以是连续数据流,并且可以例如是观看图像流和/或三维数据流。在许多实施例中,图像质量水平可以等同于(空间和/或时间)数据率。具体地,在以下意义上,所述生成器可以被布置为针对第一图像数据产生比第二图像数据具有更高质量水平的图像数据:所述生成器可以被布置为针对第一图像数据比针第二图像对生成具有更高的数据率的图像数据。

所述视觉关注区域可以是所述场景中的三维区域。所述注视指示可以包括从头部姿态的位置到注视点的距离的指示。所述确定器可以被布置为确定到视觉关注区域的距离(从观看者位置开始),并且所述生成器可以被布置为响应于所述距离来确定所述第一数据。

所述注视指示的注视距离指示可以指示从头部姿态/观看者姿态到注视点的距离。所述确定器可以被布置为响应于与注视指示相对应的场景的内容来确定所述视觉关注区域。

所述场景可以是虚拟场景,并且可以具体地是人工虚拟场景,或者可以例如是捕获的真实世界场景或增强现实场景。

根据本发明的任选的特征,所述确定器被布置为确定视觉关注区域具有针对头部姿态上在至少一个方向上具有不超过10度的延伸。

这可以在许多实施例中提供改进的性能。视觉关注区域可以被确定为具有非常小的延伸,并且具体地比用户的视角小得多,并且比当用于向用户呈现场景的图像时典型的显示视角小得多。例如,vr头戴套件通常提供约100°的视角。发明人已经意识到,感知的图像质量将不会(显著地或通常可注意到地)受到在窄视角之外降低的质量水平的影响。

在一些实施例中,所述确定器可以被布置为将视觉关注区域确定为针对头部姿态具有不超过10度的水平延伸。在一些实施例中,所述确定器可以被布置为将视觉关注区域确定为针对头部姿态具有不超过10度的垂直延伸。

根据本发明的任选的特征,所述视觉关注区域对应于场景对象。

这可以在许多实施例中提供改进的性能。

根据本发明的任选的特征,所述确定器被布置为跟踪场景中场景对象的运动,并且所述确定器被布置为响应于所跟踪的运动来确定视觉关注区域。

在许多实施例中,这可以提供改善的性能,并且特别地可以典型地允许确定更紧密地对应于用户实际当前焦点的视觉关注区域。

根据本发明的任选的特征,所述确定器被布置为响应于针对场景存储的用户观看行为来确定视觉关注区域。

在许多实施例中,这可以提供改善的性能,并且特别地可以典型地允许确定更紧密地对应于用户实际当前焦点的视觉关注区域。

根据本发明的任选的特征,所述确定器被布置为将视觉关注区域朝向场景的如下的区域:对于所述区域,所存储的用户观看行为指示较高的观看频率。

这通常可以提供对视觉关注区域的改善的确定并且可以提供改善的性能。

确定器可以被布置为将视觉关注区域朝向场景的如下的区域偏置:对于所述区域,存储的用户观看行为相对于场景中的存储的用户观看行为指示较低的观看频率区域指示较高的观看频率。

针对区域/对象的较高观看频率可以反映出该区域/对象已成为相比于针对观看频率较低的区域/对象,用户视觉关注更多的对象。

根据本发明的任选的特征,所述确定器被布置为响应于指示场景的不同区域之间的先前观看行为关系的关系数据来确定预测的视觉关注区域;并且其中,所述生成器被布置为在图像数据流中包括针对预测的视觉关注区域的第三图像数据;并且所述生成器被配置为生成如下的图像数据,所述图像数据针对第三图像数据具有比在预测的视觉关注区域之外的第二图像数据更高的质量水平。

这可以在许多实施例中提供改进的性能。具体地,在许多实施例中,它可以允许改善的感知图像质量而对于许多典型用户行为不会中断或滞后。

所述确定器可以被布置为响应于指示当前视觉关注区域和预测视觉关注区域的视图之间的高视图相关性的关系数据来确定预测的视觉关注区域。

根据本发明的任选的特征,所述关系数据指示至少一个观看者的先前视线移动。并且所述确定器被布置为将预测的视觉关注区域确定为场景的第一区域,针对所述第一区域,关系数据指示注视从所述视觉关注区域视线移动到所述第一区域的频率超过阈值。

这可以在许多实施例中提供改进的性能。

根据本发明的任选的特征,所述确定器被布置为响应于与所述视觉关注区域相对应的场景对象的运动数据来确定预测的视觉关注区域。并且其中,所述生成器被布置为包括针对所述预测的视觉关注区域的第三图像数据;其中,所述生成器被配置为生成图像数据,所述图像数据针对第三图像数据具有比在预测的视觉关注区域之外的第二图像数据更高的质量水平。

这可以在许多实施例中提供改进的性能。

根据本发明的任选的特征,所述生成器被布置为将所述图像数据流生成为视频数据流,所述视频数据流包括与针对观看姿态的视口相对应的图像。

这可以在许多实施例中提供特别有利的方法,包括从远程服务器提供vr体验的许多实施例。例如,它可以降低vr客户端的复杂性,同时仍保持较低的数据率要求。

根据本发明的任选的特征,所述确定器被布置为响应于场景中视觉关注区域的运动与注视指示的变化之间的相关性来确定针对所述视觉关注区域的置信度度量。并且所述生成器被布置为响应于所述置信度度量来确定所述第一图像数据的质量。

根据本发明的任选的特征,所述装置包括虚拟现实处理器,所述虚拟现实处理器被布置为针对所述虚拟场景执行虚拟现实应用,其中,所述虚拟现实应用被布置为生成注视指示并且被布置为根据图像数据流绘制与查看者的视口相对应的图像。

根据本发明的任选的特征,其中,所述装置还被布置为从远程客户端接收注视指示并且将所述图像数据流发送到远程客户端。

根据本发明的任选的特征,所述生成器被布置为响应于头部姿态来确定所述图像数据的视口,并且响应于所述视口来确定所述第一数据。

根据本发明的一个方面,提供了一种生成表示三维场景的视图的图像数据流的方法,所述方法包括:接收指示观看者的头部姿态和相对眼睛姿态的注视指示,所述头部姿态包括头部位置,并且所述相对眼睛姿态指示相对于头部姿态的眼睛姿态;确定具有与所述注视指示相对应的三维场景中的三维位置的视觉关注区域;将所述图像数据流生成为包括针对所述场景的图像数据,其中,所述图像数据被生成为至少包括针对所述视觉关注区域的第一图像数据和针对所述视觉关注区域之外的场景的第二图像数据;所述图像数据针对所述第一图像数据比所述第二图像数据具有更高的质量水平;并且其中,确定所述视觉关注区域包括响应于所述注视指示的注视距离指示来确定所述视觉关注区域。

参考下文描述的(一个或多个)实施例,本发明的这些和其他方面、特征和优势将变得显而易见并将得以阐述。

附图说明

仅以范例的方式参考附图描述本发明的实施例,其中,

图1图示了用于提供虚拟现实体验的客户端服务器布置的示例;

图2图示了根据本发明一些实施例的装置的元件的示例;并且

图3图示了可以由图1的设备的一些实施方式生成的视图图像的示例。

具体实施方式

允许用户在虚拟世界中四处移动的虚拟体验正变得越来越流行,并且正在开发满足这些需求的服务。但是,提供有效的虚拟现实服务非常具有挑战性,特别是如果体验是基于对真实世界环境的捕获,而不是基于完全虚拟生成的人造世界的话。

在许多虚拟现实应用中,确定观众姿态输入,以反映场景中虚拟观看者的姿态。然后,虚拟现实设备/系统/应用为与观看者姿态相对应的观看者生成与场景的视图和视口相对应的一幅或多幅图像。

通常,虚拟现实应用以针对左眼和右眼的单独视图图像的形式生成三维输出。然后可以通过合适的方式将这些呈现给用户,例如通常是vr头戴套件的左右眼显示器。在其他实施例中,图像可以例如被呈现在自动立体显示器上(在这种情况下,可以针对观看者的姿态生成大量的观看图像),或者实际上在一些实施例中,可以仅生成单个二维图像(例如,使用常规的二维显示器)。

观看者或姿态输入可以在不同应用中以不同方式确定。在许多实施例中,可以直接跟踪用户的身体运动。例如,勘测用户区域的摄像机可以检测并跟踪用户的头部(或者甚至是眼睛)。在许多实施例中,用户可以佩戴可以由外部和/或内部装置跟踪的vr耳机。例如,头戴套件可以包括加速度计和陀螺仪,所述加速度计和陀螺仪提供有关头戴套件并且因此头部的运动和旋转的信息。在一些示例中,vr头戴套件可以发送信号或包括(例如视觉)识别符,其使得外部传感器能够确定vr头戴套件的移动。

在一些系统中,观看者姿态可以通过手动方式提供,例如通过用户手动控制操纵杆或类似的手动输入。例如,用户可以通过用一只手控制第一模拟操纵杆来手动在场景中四处移动虚拟观看者,并通过用另一只手手动移动第二模拟操纵杆来手动控制虚拟观看者的观看方向。

在一些应用中,可以使用手动和自动方法的组合来生成输入观看者姿态。例如,头戴套件可以跟踪头部的取向,并且场景中观看者的移动/位置可以由用户使用操纵杆来控制。

图像的生成基于虚拟世界/环境/场景的适当表示。在一些应用中,可以为场景提供完整的三维模型,并且可以通过评估该模型来确定来自特定观看者姿态的场景的视图。在其他系统中,场景可以由与从不同捕获姿态捕获的视图相对应的图像数据表示。例如,对于多个捕获姿态,可以将完整的球形图像与三维(深度数据)一起存储。在这样的方法中,可以通过三维图像处理,例如专门使用视图平移算法,来生成除了捕获姿态以外的其他姿态的视图图像。在系统中,场景是通过针对离散的视点/位置/姿态存储的视点数据来描述/引用的,但也可以将这些场景称为锚点视点/位置/姿态。通常,当已经通过捕获来自不同点/位置/姿态的图像来捕获现实环境时,这些捕获点/位置/姿态也是锚点/位置/姿态。

典型的vr应用程序相应地提供(至少)与当前观看者姿态的场景的视口相对应的图像,其中图像被动态更新以反映观看者姿态的变化,并且图像基于表示虚拟场景/环境/世界的数据而生成。

在本领域中,术语放置和姿态用作针对位置和/或方向/取向的通用术语。例如对象、相机、头部或视图的位置和方向/取向的组合可以被称为姿态或放置。因此,放置或姿态指示可包括六个值/分量/自由度,其中每个值/分量通常描述相应对象的方位/位置或取向/方向的单独属性。当然,在许多情况下,放置或姿态可利用较少的分量表示,例如,如果一个或多个分量被认为是固定的或不相关的(例如,如果所有对象都被认为处于相同的高度并具有水平方向,则四个分量可以提供对象姿态的完整表示)。在下文中,术语“姿态”用于表示可以由一到六个值(对应于最大可能的自由度)表示的位置和/或取向。

许多vr应用都是基于具有最大自由度的姿态,即,每个位置和取向的三个自由度导致总共六个自由度。因此,姿态可以由表示六个自由度的六个值的集合或向量表示,因此姿态向量可以提供三维位置和/或三维方向指示。然而,将意识到,在其他实施例中,姿态可以由更少的值表示。

基于为观看者提供最大自由度的系统或实体通常是指具有6个自由度(6dof)。许多系统和实体仅提供方向或位置,通常将其称为具有3个自由度(3dof)。

在一些系统中,vr应用可以由例如不使用或者甚至不能访问任何远程vr数据或处理的独立设备本地地提供给观看者。例如,诸如游戏主机的设备可以包括:用于存储场景数据的存储部,用于接收/生成观众姿态的输入部,以及用于从场景数据生成对应图像的处理器。

在其他系统中,vr应用可以在远离观看者的地方实现和执行。例如,用户本地的设备可以检测/接收运动/姿态数据,所述数据被发送到处理该数据以生成观看者姿态的远程设备。然后,远程设备可以基于描述场景的场景数据针对观看者的姿态生成合适的观看图像。然后将观看图像传输到观看者所在的本地设备。例如,远程设备可以直接生成由本地设备直接呈现的视频流(通常是立体声/3d视频流)。因此,在这样的示例中,除了发送运动数据以及呈现接收到的视频数据之外,本地设备可以不执行任何vr处理。

场景数据可以具体地是描述3d场景的3d(三维)场景数据。可以通过参考场景坐标系(通常具有三个正交轴)来描述3d场景的内容的3d场景数据来表示3d场景。

在许多系统中,功能可以分布在本地设备和远程设备上。例如,本地设备可以处理接收到的输入和传感器数据以生成观看者姿态,所述观看者姿态被连续地发送到远程vr设备。然后,远程vr设备可以生成相应的视图图像,并将其发送到本地设备以用于呈现。在其他系统中,远程vr设备可能不直接生成视图图像,而是可能会选择相关的场景数据并将其传输到本地设备,然后本地设备可以生成呈现的视图图像。例如,远程vr设备可以识别最近的捕获点并提取对应的场景数据(例如,来自捕获点的球面图像和深度数据),并将其发送到本地设备。然后,本地设备可以处理接收到的场景数据,以生成针对特定当前观看姿态的图像。观看姿态通常将对应于头部姿态,并且通常可以等效地认为对观看姿态的引用对应于对头部姿态的引用。

图1图示了vr系统的这样示例,其中,远程vr服务器101例如经由诸如因特网的网络105与客户端vr服务器103联络。服务器103可以被布置为同时支持潜在大量的客户端设备101。

在许多场景,这种方法可以提供改进的折衷,例如在复杂性和针对不同设备的资源需求、通信需求等之间。例如,观看者姿态和对应的场景数据可以以较大的间隔被发送,其中本地设备在本地处理观看者姿态和接收的场景数据以提供实时的低延迟体验。例如,这可以显著减少所需的通信带宽,同时提供低延迟体验,并且同时允许场景数据被集中存储、生成和维护。例如,它可能适用于将vr体验提供给多个远程设备的应用。

图2示出了根据本发明的一些实施例的可以在许多情况下提供改善的虚拟现实体验的装置的元件。所述装置可以基于表征场景的数据来生成图像数据流以对应于观看者姿态。

在一些实施例中,所述设备包括传感器输入处理器201,所述传感器输入处理器201被布置为从传感器接收数据,所述传感器检测观看者或与所述观看者有关的装备的运动。传感器输入被特别地布置为接收指示观看者的头部姿态的数据。响应于传感器输入,如本领域技术人员所知,传感器输入处理器201被布置为确定/估计观看者的当前头部姿态。例如,基于来自头戴套件的加速度和陀螺仪传感器数据,传感器输入处理器201可以估计和跟踪头戴套件以及因此估计和跟踪观看者的头部的位置和方向。替代地或者额外地,例如可以使用相机来捕获观看环境,并且可以使用来自相机的图像来估计和跟踪观看者的头部位置和方向。以下描述将集中于头部姿态被确定为具有六个自由度的实施例,但是应当理解,在其他实施例中可以考虑更少的自由度。

除了头部姿态相关数据之外,传感器输入处理器201还接收取决于观看者眼睛的相对眼睛姿态的输入传感器数据。根据该数据,传感器输入处理器201可以生成观看者相对于头部的(一个或多个)眼睛姿态的估计。例如,vr头戴套件可以包括瞳孔跟踪器,所述瞳孔跟踪器检测用户的每只眼睛相对于vr头戴套件并因此检测相对于头部姿态的方向。基于眼睛传感器输入数据,传感器输入处理器201可以确定相对眼睛姿态指示符,所述相对眼睛姿态指示符指示观看者的眼睛相对于头部姿态的眼睛姿态。在许多实施例中,可以利用六个自由度来确定(一个或多个)相对眼睛姿态,但是应当理解,在其他实施例中可以考虑更少的自由度。特别地,可以生成眼睛姿态指示器以仅反映眼睛相对于头部的取向,并因此反映头部姿态。这尤其可以反映出眼睛/瞳孔相对于头部的位置变化趋于相对可忽略。

作为特定示例,用户可以佩戴vr护目镜或包括可以检测眼睛相对于护罩/头戴套件的运动的红外眼动仪传感器的vr头戴套件。

传感器输入处理器201被布置为组合头部姿态指示器和眼睛姿态指示器以生成注视指示。眼睛的光轴相交的点称为注视点,并且注视指示指示该注视点。注视指示可以具体地指示从当前观看者位置到注视点的方向,并且通常可以指示到注视点的方向和距离。因此,在许多实施例中,注视指示符指示到注视点的距离(相对于观看者位置)。

在该示例中,可以基于跟踪眼睛姿态,将注视指示确定为注视点的至少一个方向,并且通常确定为注视点的位置,并且因此确定眼睛的光轴的会聚。

该场景通常可以是具有相关联的3d坐标系的3d场景。场景可以由提供场景内容的3d描述的3d数据表示。3d数据可以与3d场景坐标系相关联。

注视指示指示3d场景中的注视点,并且可以具体指示在场景坐标中表示的注视点。

注视点指示可以指示3d场景中的3d位置,并且可以具体指示或包括定义3d场景中的3d位置的三个坐标参数(并且这三个坐标参数可以特定地表示场景坐标)。因此,注视点指示不仅是显示器或视口上的位置指示,而且可以定义或描述3d场景坐标系中的位置。

因此,注视指示不仅可以包括关于观看者姿态的方位角和高度信息,而且可以包括距离。以上提供的论述加上必要的变更适用于注视点本身。

图2的装置包括还包括接收器203,所述接收器被布置为从传感器输入处理器201接收注视指示。如上所述,注视指示不仅指示头部姿态,而且指示注视点并且反映头部位置和相对眼睛姿态。

接收器203被耦合到视觉注意处理器205,视觉注意处理器205被布置为确定场景中与注视指示相对应的视觉关注区域。视觉关注区域反映了注视指示所指示的观看者的视觉注意力或焦点,即可以认为它反映了观看者在“看”哪里并集中其视觉注意力于其处。视觉关注区域可以被认为是观看者当前正在关注的场景内的区域。

视觉关注处理器205可以确定场景中的区域,使得该区域满足关于注视指示的准则。该准则可以具体地包括接近度准则,并且该接近度准则可以要求区域的部分与由注视指示所指示的注视点之间的距离度量低于阈值。由于所确定的区域是考虑到注视指示而确定的区域,因此被系统假定为指示用户将注意力集中在该区域上的可能性增加。因此,借助于考虑注视指示来确定该区域,认为该区域可用作指示用户可能的视觉注意的指示,并且因此它是视觉关注区域。

视觉关注区域是3d场景的区域,并且与3d场景中的位置/位置相关联。视觉关注区域可以与3d场景中的至少一个位置相关联或由其确定/定义,并且该位置可以在场景坐标系中表示。该位置通常可以由3d场景中由三个场景坐标表示的至少一个3d位置表示。

在许多实施例中,视觉关注区域可以是3d场景中的3d区域,并且可以在3d场景坐标系中被描述/确定/定义。视觉关注区域通常是邻接的3d区域,例如对应于场景对象。

因此,视觉关注区域通常与包括距离指示的观看者位置具有3d关系。结果,观看者的改变将导致观看者姿态与注视点之间的空间关系的改变,并且因此导致视觉关注区域的变化,这与注视点和视觉关注区域为2d投影表面上的点/区域的情况不同,无论投影表面是平面还是弯曲的(例如投影表面)。

视觉关注区域通常可以被生成为包括注视点的区域,并且通常被生成为包括注视点或非常接近此的区域。应当理解,可以使用不同的方法和准则来确定与注视点相对应的视觉关注区域。如稍后将更详细地描述的,视觉关注区域可以例如被确定为如注视指示所指示的场景中靠近注视点的对象。例如,如果场景对象与注视点之间的估计距离小于给定阈值,并且该场景对象是最接近该注视点的场景对象,则可以将该场景对象确定为视觉关注区域。

因此,视觉关注区域是场景中的区域,并且是指世界或场景。视觉关注区域不仅被确定为观看者的视口的给定区域,而且还定义了场景本身中的区域。在一些实施例中,视觉关注区域可以被确定为二维区域,但是在大多数实施例中,视觉关注区域不仅由例如相对于观看位置的方位角和仰角区间定义,而且通常包括距离/深度值或区间。例如,视觉关注区域可以被确定为由分别定义方位范围、仰角范围和距离范围的三个区间形成的区域。作为另一个示例,视觉关注区域可以在场景/世界坐标系中被确定为三个空间分量的范围(例如,视觉关注区域可以确定为由x分量范围、y分量范围和z分量范围)。在一些实施例中,视觉关注区域可以被确定为足够接近(或包括)注视点的场景对象的三维形状。

视觉关注区域通常被确定为与观看者姿态具有三维关系的区域。换句话说,相对于观看者姿态的视觉关注区域不仅可以被确定为例如相对于观看姿态的视口或球体的面积,而且还将与观看姿态具有距离。视觉关注处理器205相应地被布置为响应于所述注视指示的注视距离指示来确定所述视觉关注区域。因此,在确定视觉关注区域时不仅要考虑注视的方向,而且视觉关注区域还将被确定为取决于从观看姿态到注视点的距离。

在一些实施例中,视觉关注区域可以仅取决于注视指示,但是在许多实施例中,可以进一步通过考虑场景的内容来确定,诸如像哪些场景对象对应于当前的注视点。因此,视觉关注处理器205被耦合到场景存储207,所述场景存储207包括描述场景/世界的场景数据。该场景数据可以例如被存储为三维模型,但是在许多实施例中将以针对多个捕获/锚点位置的三维视图图像数据的形式。

场景数据具体地是提供场景的3d描述的3d场景数据。场景数据可以参考场景坐标系来描述场景。

所述装置还包括图像数据生成器209,所述图像数据生成器209被耦合到视觉关注处理器205,场景存储207,并且在该示例中还被耦合到传感器输入处理器201。图像数据生成器209被布置为生成表示场景的视图的图像数据流。在图2的示例中,图像数据生成器209从传感器输入处理器201接收观看者姿态。在该示例中,观看者姿态指示头部姿态,并且图像数据生成器209被布置为生成用于绘制与观看者姿态相对应的视图的图像数据。因此,在特定示例中,图像数据生成器209响应于观看者头部姿态来生成图像数据。

在一些实施例中,图像数据生成器209可以直接生成与针对观看姿态的视口相对应的视图图像。在这样的实施例中,图像数据生成器209可以相应地直接合成可以由合适的vr设备直接绘制的视图图像。例如,图像数据生成器209可以生成视频流,所述视频流包括与针对给定观看位置的观看者的左眼和右眼相对应的立体图像。视频流可以例如被提供给直接馈送或控制vr头戴套件的绘制器,并且观看图像视频流可以被直接呈现。

然而,在图2的示例中,图像数据生成器209被布置为将所述图像数据流生成为包括用于合成针对观看者姿态(并且具体地针对头部姿态)的观看图像的图像数据。

具体地,在该示例中,图像数据生成器209被耦合到图像合成器211,图像合成器211被布置为响应于从图像数据生成器209接收的图像数据流来合成用于观看者姿态的观看图像。可以特别地选择图像数据流以包括接近或直接对应于观看者姿态的三维图像数据。图像合成器211然后可以对其进行处理以合成可以呈现给用户的观看者姿态的观看图像。

例如,所述方法可以允许图像数据生成器209和图像合成器211以不同的速率操作。例如,图像数据生成器209可以被布置为例如以低的频率评估新的观看者姿态,例如,比方每秒一次。图像数据流因此可以被生成为具有与该观看者姿态相对应的三维图像数据,因此,当前观看者姿态的三维图像数据可以每秒更新一次。

相反,图像合成器211可以更快地合成针对当前观看姿态的视口的视图图像,例如可以生成新图像并将其提供给用户,例如每秒30次。观看者因此将体验到每秒30帧的帧速率。由于用户的移动,针对单个视图图像/帧的观看姿态可能偏离参考观看姿态,图像数据生成器209为其生成参考图像,因此图像合成器211可能执行某些视图移位等操作。

因此,所述方法可以允许图像数据生成器209更慢地操作,并且基本上实时操作可以被限制于图像合成器211。这可以减少图像数据生成器209的复杂度和资源需求。此外,图像合成器211的复杂度和资源要求通常相对较低,这是因为视角偏移往往相对较小,因此,即使是低复杂度的算法也将倾向于导致足够高的质量。同样,所述方法可以显著减少图像数据生成器209民图像合成器211之间的连接/链接所需的带宽。这可以是重要的特征,特别是在图像数据生成器209和图像合成器211彼此远离定位的实施例中,例如分别在图1的vr服务器101和vr客户端103中。

图像数据生成器209基于从场景存储207提取的场景数据来生成图像数据。作为特定示例,场景存储207可包括来自潜在大量捕获点或锚点的场景图像数据。例如,对于场景中的大量位置,场景存储207可以存储具有相关联的深度数据的完整球形图像。在这种情况下,图像数据生成器209可以确定最接近从传感器输入处理器201接收到的当前观看者姿态的锚点。然后,它可以提取相应的球面图像和深度数据,并将它们发送到图像合成器211。然而,通常,图像数据生成器209将不发送整个球面图像(和深度数据),而是选择该图像的适当部分进行发送。这样的部分可以被称为瓦片。瓦片通常将反映球面图像的显著的部分,例如在区域的1/16与1/64之间。实际上,瓦片通常将大于当前观看姿态的视口。可以从观看姿态的取向确定所选择的瓦片。

将理解的是,在一些实施例中,图像合成器211可以被认为包括在图像数据生成器209中,并且图像数据生成器209可以直接生成包括用于用户的视口的视图图像的图像数据流(例如,对应于图2的图像合成器211的输出。换句话说,在一些实施例中,参考图2描述的图像流生成器1207和图像合成器211的功能同样可以应用于其他实施例中的组合实现,其中,图像数据生成器209和图像合成器211的功能被集成到单个功能实体中,所述功能实体直接生成包括观看者/用户的直接观看图像的输出数据流)。

在图2的装置中,图像数据生成器209还被耦合至视觉注意处理器205,图像数据生成器209从图像处理器接收所确定的视觉关注区域的信息。图像数据生成器209被布置为响应于视觉关注区域来适配所生成的图像数据的不同部分的质量。具体地,图像数据生成器209被布置为设置质量,使得对于视觉关注区域的质量比视觉关注区域之外的(至少一些部分)更高。因此,图像数据生成器209可以生成图像数据以具有变化的图像质量,其中针对视觉关注区域的所生成图像数据的图像质量高于表示视觉关注区域外部的图像数据的(至少一部分)图像质量。

由于视觉关注区域是3d场景中的区域并且相对于观看者姿态具有深度/距离参数/属性,因此视觉关注区域与图像数据之间的关系针对变化的观看者姿态而变化。具体地,图像数据的哪些部分对应于视觉关注区域,并且因此应取决于距离以更高质量提供的图像数据的那些部分。图像数据生成器209因此被布置为响应于从观看者姿态到视觉关注区域的距离来确定与视觉关注区域相对应的第一图像数据。

注意,这不同于例如确定显示器或图像中的注视点,然后根据此来生成偏向的图像。在这样的方法中,注视点不因观看者位置(具有相同焦点)的改变而改变,并且偏向的图像也不改变。但是,对于3d场景中距观看者位置到视觉关注区域的距离有所变化的3d视觉关注区域,即使焦点保持恒定,随着观看者姿态的变化,与视觉关注区域相对应的图像数据也会发生变化,例如在同一场景对象上。

图像数据生成器209可以被布置为考虑这样的变化。例如,图像数据生成器209可以被布置为将视觉关注区域投影到为其提供了图像数据的视口上,并且然后响应于该投影来确定第一数据。具体地,可以将第一图像数据(将以更高的质量提供)确定为围绕视觉关注区域到视口上的投影的视口的一部分的图像数据。

作为示例,基于接收到的观看者姿态,图像数据生成器209可以识别最接近的捕获位置,并且检索针对该位置的球面图像和深度数据。图像数据生成器209然后可以继续确定瓦块(例如,包括观看者姿态的120°方位角和90°仰角图块)。然后,可以确定图块中与视觉关注区域相对应的区域。具体地,这可以通过基于观看者的姿态跟踪视觉关注区域到由球形图像表示的表面上的线性投影来完成。例如,可以将直线从观看者的位置投影到视觉关注区域的点,并将与视觉关注区域相对应的图块/图像的区域确定为这些线与球体表面/图像视口相交的区域。

图像数据生成器209因此可以识别瓦片的表示视觉关注区域的部分。例如,如果视觉关注区域对应于场景对象,则图像数据生成器209可以识别瓦片中的包括场景对象的区域。然后,图像数据生成器209可以继续生成针对图块的图像数据,但是使得针对所识别的区域的图像数据的质量高于图块的其余部分的图像数据的质量。然后将得到的图像数据包括在图像数据流中,并馈送到图像合成器211。

使用瓦片的一个优点是,它们通常可以由预编码的视频(在dash中称为“轨道”)表示,并且能够然后被选择以进行传输,而无需按客户端编码或转码。所描述的方法可能适于在这样的瓦片中使用。特别地,在许多实施例中,图像数据生成器209可以针对给定的瓦片在传输之前处理该瓦片,使得该处理降低了针对该瓦片的数据率,除了与视觉关注区域相对应的特定区域之外。因此,生成并传输得到的图块,其对于当前估计为观看者的视觉关注的特定区域具有高质量(数据率),而对于其余的瓦片具有较低的质量(数据率)。

在其他实施例中,可以以不同的质量存储大量的较小的瓦片。例如,每个瓦片可以对应于不大于10°的视角。然后,可以通过针对对应于视觉关注区域的区域选择高质量的瓦片并且针对组合的瓦片的其余部分选择较低质量的瓦片来形成更大的组合瓦片。

在图像数据生成器209直接生成用于呈现给用户的视口图像的实施例中,在视口图像中与视觉关注区域相对应的区域可以被生成为比针对视觉关注区域之外的视口区域具有更高的质量(空间和/或时间数据率)(例如,上面的论述可以被认为是适用的,但选择的瓦片对应于针对(一具或多个)头部姿态的视口)。

将理解的是,用于改变图像数据的图像质量的不同方法是技术人员已知的,并且可以使用任何合适的方法。在许多实施例中,数据率(空间和/或时间)的变化可以对应于图像质量的变化。因此,在许多实施例中,图像数据生成器209可以被布置为生成图像数据,以针对第一图像数据具有比针对第二图像数据具有更高的数据/比特率。数据/比特率的变化可以是空间和/或时间数据/比特率。具体地,图像数据生成器209可以被布置为生成图像数据,以使得针对第一图像数据比针对第二图像数据每区域具有更多的位和/或每秒具有更多的位。

图像数据生成器209可以例如将从场景存储207中检索到的数据重新编码(转码)以针对视觉关注区域的区域之外的区域具有较低的质量水平,并且然后发送较低质量版本。在其他实施例中,场景存储207可以包括针对不同捕获点的图像的两种不同编码的版本,并且图像数据生成器209可以通过从不同版本中分别针对视觉关注区域的区域和针对瓦片的剩余部分选择数据来生成不同的质量。

将意识到,图像数据生成器209可以通过调整诸如空间分辨率,时间分辨率,压缩水平,量化水平(字长)等的不同参数来改变质量水平。例如,通过以下中的至少一项来实现更高的质量水平:更高的帧率;更高的分辨率;更长的字长;以及降低的图像压缩水平。

因此,图像数据生成器209生成其中视觉关注区域的图像质量高于外部的图像数据流。因此,基于注视点识别场景的特定部分,从而反映头部姿态和相对眼睛姿态,并且以较高的质量表示该部分。因此,为观看者可能聚焦的场景部分,通常是场景对象,提供高质量。

该方法可以提供差异化的方法,其中,视觉关注区域可以对应于针对观看者的视口的一小部分区域,并且其呈现的质量水平可能比视口总体上高得多。该方法的重要特征在于,与视觉关注区域相对应的高质量区/区域可以形成整个视口/区的很小的部分。实际上,在许多实施例中,视觉关注处理器205被布置为确定视觉关注区域对于观看者的观看者位置具有不大于10°(或者在一些实施例中甚至为5°)的水平延伸。因此,视觉关注区域可以对应于观看者的视野(和视口)的小于10°(或5°),因此提高的质量被限制在非常小的区域。类似地,在许多实施例中,视觉关注处理器205被布置为确定视觉关注区域对于观看者的观看者位置具有不大于10°(或者在一些实施例中甚至为5°)的垂直延伸。

实际上,发明人已经意识到,人类质量感知是非常有限和特定的,并且通过在对应于观看者当前注视点处的场景内容的特定小观看区间中提供高质量,观看者将感知整体视口将以高质量呈现。发明人还意识到,这可以用于通过跟踪用户在场景中的视线并相应地调整质量水平来显著降低vr应用程序中的数据率。

实际上,在许多情况下,人类完全感知锐度/质量的角度可能非常低,并且通常在一度或几度的范围内。然而,通过确定较大的区域以具有改善的质量,可以实现相关区域的较少更新是必需的,从而便于高质量区的适应和传输。在实践中,在许多实施例中已经发现,大约5-10°的延伸提供了非常有利的权衡。

该方法的效果可以通过图3中的图片来示例,其中,上图显示了针对整个视点具有相同(高质量)质量的可能的视图图像。下部图片是可以由图2的设备生成的可能的观看图像的示例。在该示例中,已经在右侧的三个人周围识别了与用户的当前注视相对应的视觉关注区域。在此示例中,这三个人周围的相应区域(在示例中为整个区域的~1/3x1/3)的质量保持与上图相同的高水平,但是针对剩余图像己经降低(例如,通过以更高压缩水平进行转码)。当看两张图片时,很明显看到质量差异。但是,对于视觉上专注于左侧三个人的用户,通常不会注意到质量差异。实际上,已经进行了测试,其中,这两个图片已叠加在显示器上,使得显示器就可以在图像之间快速切换而没有任何空间变化。当测试对象聚焦在与视觉关注区域相对应的区域(即左侧的三个人)时,在两幅图像之间没有感受到质量差异。

在许多实施例中,图像数据生成器209可以被布置为响应于注视指示和/或头部姿态来确定针对图像数据的视口,并且响应于所述视口来确定第一数据。

具体地,视口可以对应于例如头戴套件的显示器,并且用户可以通过头戴套件的显示器并且因此通过与显示器相对应的视口有效地观看场景。然而,随着用户在移动或者改变头部向等,他将看到场景的不同部分,这些部分与有效地观看场景的视口相对应。因此,视口将在3d场景中四处移动,并且确实将改变3d场景中的位置和取向。

在许多实施例中,图像数据生成器209可以进一步考虑到这一点。图像数据生成器209可以具体地以两阶段的方式进行。首先,头部姿态可以用于确定与该姿态的观看者的视图相对应的视口的姿态。例如,视口可以被确定为距头部位置并且在头部的方向上具有预定尺寸和距离的视口。然后,它可以例如通过从3d场景数据生成与视口相对应的图像来确定表示该视口所需的图像数据。图像数据生成器209然后可以进行到考虑视觉关注区域并且基于观看者姿态将其投影到视口上。然后可以确定视口的相应区域并且识别相应的图像数据。然后可以以比该区域外部的视口的图像数据更高的质量来生成该图像数据。

在许多实施例中,可以针对多个视口重复该方法,例如专门针对每只眼睛的视口。

图2的装置在许多实施例中可以在观看者本地的单个设备中实现,例如游戏控制台。然而,在许多其他实施例中,装置的元件可以远离观看者。例如,在许多实施例中,诸如图1的客户端/服务器方法可以被使用,其中,图2的一些元件可以采用图1的元件可以定位于客户端设备中,并且一些元件位于服务器中。

例如,在许多实施例中,接收器203,视觉关注处理器205,场景存储207和图像数据生成器209可以位于服务器103中。这些元素可以在多个服务器之间共享,因此可以基于集中式场景数据来支持多个同时的vr应用程序。

在许多实施例中,图像数据生成器209可以位于服务器103中,并且图像合成器211可以位于客户端中。这将允许服务器103连续提供3d图像数据,所述3d图像数据可在本地使用以进行(较小)调整,以准确生成与当前观看姿态相对应的视图图像。这可能降低所需的数据率。然而,在其他实施例中,图像合成器211可以位于服务器103中(并且实际上图像数据生成器209和图像合成器211的功能可以组合),并且服务器103可以直接生成可以直接呈现给用户视图图像。因此,发送到服务器103的图像数据流在某些情况下可以包括可以在本地处理以生成视图图像的3d图像数据,并且在其他情况下可以直接包括用于呈现给用户的视图图像。

在许多实施例中,传感器输入处理器201包括在客户端101中,并且接收器203可以包括在服务器103中。因此,客户端101可以从例如vr头戴套件接收并处理输入数据,以生成单个组合的注视指示,然后将其发送到接收器203。在一些实施例中,客户端101可以将传感器输入(可能被部分地处理)或单独的眼睛姿态和头部姿态数据直接转发到服务器103,服务器103然后可以确定组合的注视指示。实际上,注视指示可以被生成为指示例如场景中的位置的单个值或向量,或者可以例如由单独的参数的组合来表示,例如头部姿态和相对眼睛姿态的单独表示。

在不同的实施例中,视觉关注处理器205可以使用不同的算法和准则来选择视觉关注区域。在一些示例中,其可以在场景中定义三维视觉关注区域,并且具体地,可以将视觉关注区域确定为场景中的预定区域,所述预定区域包括注视指示所指示的注视点的位置或以其为中心。

例如,注视指示可以直接指示场景中的点,例如,以直角坐标(x,y,z)或极坐标(方位角,仰角,距离)给出。然后可以将视觉关注区域确定为以视点为中心的预定尺寸的棱柱。

然而,在许多实施例中,视觉关注处理器205被布置为响应于与注视指示相对应的场景的内容来确定视觉关注区域。

在许多实施例中,视觉关注处理器205可以评估注视点周围的场景。例如,视觉关注处理器205可以识别注视点周围的区域,所述区域具有相同的视觉特性,例如像相同的颜色和/或强度。然后可以将该区域视为视觉关注区域。作为特定示例,注视点可以被提供为相对于当前视图位置(例如,由头部姿态指示的头部位置)的三维向量。视觉关注处理器205可以基于头部姿态选择捕获的3d图像,并确定相对于3d图像的捕获点的注视点。然后,它可以确定3d图像中与确定的注视点相对应的一部分,并评估它是否是视觉上均质区域的一部分。如果是这样,则可以将该区域确定为视觉关注区域,例如,受制于最大尺寸。

在许多实施例中,视觉关注处理器205可以确定视觉关注区域以对应于场景对象。例如,如果注视点足够接近或直接匹配这样的对象的位置,则视觉关注处理器205可以将视觉关注处理器205设置为与该对象相对应。

在一些实施例中,系统可以具有场景对象的显式信息,例如人在场景中的位置的显式信息。如果检测到注视点足够靠近人,则可以假定观看者正在有效地注视着这个人,因此视觉注意处理器205可以将视觉关注区域设置为与该人相对应。如果例如已知人的粗略轮廓(例如,通过使用基于模型的方法的vr系统),则视觉注意处理器205可以继续将视觉关注区域确定为包括人的边界框。可以选择这样的框的尺寸以确保整个人都在框内,并且可以例如被确定为对应于期望的视角(例如5°)。

作为另一示例,如果场景数据包括来自不同捕获点的3d图像数据,则视觉注意处理器205可以动态地将场景对象确定为例如对应于注视点并且具有均匀颜色并且在狭窄/有限的深度范围内。例如,视觉关注处理器205可以包括面部检测,所述面部检测可以自动检测所捕获的图像数据中的面部。然后可以将视觉关注区域设置为对应于该动态检测的场景对象。

在许多实施例中,视觉关注处理器205可以还包括跟踪器,其被布置为跟踪场景中场景对象的运动,并且可以响应于所跟踪的运动来确定所述视觉关注区域。这可以提供对合适的视觉关注区域的更准确的确定。例如,可以知道或估计物体正在场景中移动(例如,汽车在行驶,球在移动等)。该运动的特征可以是已知的或估计的。具体地,可以确定场景中对象的方向和速度。如果视觉关注处理器205确定了与该运动对象相对应的视觉关注区域,则视觉关注处理器205可以随后跟踪该运动以查看其是否与注视指示的变化匹配。如果是这样,则假定观看者正在看着该对象并且正在跟随/跟踪该对象,并且视觉关注区域被保持为与该对象相对应。然而,如果注视指示不跟随对象的运动,则视觉注意处理器205可以确定该对象不适合作为视觉关注区域,并且因此可以继续选择不同的视觉关注区域,或者确定当前存在不能保持视觉注意力,并且因此不适合确定视觉关注区域(例如,当以高质量的视觉关注区域图像显示时,整个图块可能以中等分辨率传输(例如,以在高质量视觉关注区域图像数据和低质量的非视觉关注区域图像数据时相应的总数据率传输)。

该方法可以提供额外的时间一致性,并且可以允许视觉关注处理器205确定更紧密地反映用户的注意力的视觉关注区域。

在许多实施例中,视觉关注处理器205可以被布置为通过考虑针对先前的注视指示和/或观看者姿态而确定的视觉关注区域来确定视觉关注区域。例如,当前的视觉关注区域可以被确定为匹配先前的视觉关注区域。在特定情况下,视觉关注区域的确定通常会受到低通滤波效果的影响,即,可以将相同的场景区域选作后续注视指示的视觉关注区域,只要它们之间的差异不与以前的注视指示差别太多。

该系统可以提供“快照”效果,其中,只要注视点的变化与对象的运动之间的相关性足够紧密地匹配(根据适当的准则),则视觉关注区域就链接到例如场景对象。即使例如检测到注视点更靠近另一物体,也可以继续进行将场景物体作为视觉关注区域的选择。然而,如果注视点不满足关于场景对象运动的相关要求,则视觉注意处理器205可以改变视觉关注区域以对应于另一场景对象(通常是最近的场景对象)或可以将视觉关注区域设置为当前注视点周围的预定区域(或实际上确定当前没有特定的视觉关注区域(例如,对应于用户快速扫描场景/视口))。

在一些实施例中,视觉关注处理器205可以被布置为响应于视觉关注区域的运动与注视指示的变化之间的相关性来确定视觉关注区域的置信度。具体地,通过检测如注视指示所指示的注视点的变化并将这些变化与如果观看者跟踪视觉关注区域(例如,与视觉关注区域相对应的对象)的运动将导致的注视点的变化进行比较,可以确定指示观看者确实将其视觉注意力集中在该对象/区域上的可能性有多大的度量。如果相关性很高,例如从视线姿态观看到的对象位置变化与注视点中的相应移动相匹配,则观看者很可能确实将注意力集中在了相应的对象上,并且视觉关注区域的置信度值可以设置得很高。如果相关性低,则可以将置信度值设置得较低。实际上,在许多实施例中,可以确定相关量度并将其直接用作置信度量(或者例如,可以将置信度量确定为相关量度的单调递增函数)。

在这样的实施例中,图像数据生成器209可以被布置为基于所确定的置信度度量来设置视觉关注区域的质量水平,例如,如由数据率所表示的。具体地,可以提高质量水平以增加置信度(例如,可以使用单调函数来确定视觉关注区域的图像数据的空间和/或时间数据率)。

这可以提供以下操作,其中,如果所述装置确定观看者很有可能正在聚焦于特定区域/物体,则以非常高的质量显示该图像,其中,通常视图图像/视口的大部分的质量明显较低。然而,如果替代地,认为用户当前正专注于检测到的区域/物体的可能性很小,则可以大大减小区域/对象与图像/视口其余部分之间的质量差。实际上,如果置信度度量足够低,则图像数据生成器209可以将针对视觉关注区域的数据和所生成的其余数据的质量水平设置为基本相同。如果观看者不将他的焦点限制在检测到的视觉关注区域,则这可以减少可能出现的感知到的质量“闪烁”。而且,如果存在恒定的数据率限制,则可以例如允许将针对视觉关注区域的降低的数据率用于增加针对瓦片/视口的其余部分的数据率。

在许多实施例中,图像数据生成器209可以被布置为根据置信度度量来在两个质量水平之间切换,例如像在与视觉关注区域图像数据相关联的高质量水平与与非视觉关注区域图像数据相关联的低质量水平之间切换。然而,在许多实施例中,图像数据生成器209可以被布置为根据置信度度量在许多不同的质量水平之间切换。

在许多实施例中,视觉关注处理器205可以被布置为响应于针对场景存储的用户观看行为来确定视觉关注区域。存储的用户观看行为可以反映场景的先前视图的频率/分布,并且具体地可以反映针对场景的先前视图的注视点的空间频率分布。注视点可以例如由一个或多个参数反映,例如例如完整的三维位置、方向或者例如距离。

在一些实施例中,所述设备可以被布置为监视和跟踪场景中用户的注视点,并且确定用户最频繁地查看何处。作为示例,视觉关注处理器205可以通过确定注视点足够接近单个对象有多长时间进行评估,来跟踪用户查看特定场景对象的频率。具体地,可以监视将各个场景对象被选择为视觉关注区域的频率。在这样的实施例中,视觉关注处理器205可以例如针对每个场景对象,保持个体场景对象已经被选择为视觉关注区域的次数的运行总计。

当确定视觉关注区域时,视觉关注处理器205可以考虑所存储的用户观看行为,并且可以将视觉关注区域的选择/确定具体地偏向具有较高观看频率的区域/对象。例如,对于给定的观看者姿态和注视点,视觉关注处理器205可以确定合适的视口并且可以识别该视口内的一些潜在的候选场景对象。然后,它可以根据注视点与各个场景对象的接近程度以及场景对象先前被选择为视觉关注区域的频率来选择对象中的一个作为视觉关注区域。朝向“流行的”场景对象的偏置可能导致选择的场景对象不是最接近注视点的对象,而是比最接近的对象更可能的候选对象。

在不同的实施例中,可以使用不同的方法和算法来考虑先前的用户行为。例如,可以针对每个场景对象确定代价量度,所述代价量度既取决于到注视点的距离,又取决于指示先前观看行为的频率度量,并且具体取决于场景对象先前作被择为视觉关注区域的频率。视觉关注处理器205然后可以选择具有最低代价量度的场景对象作为视觉关注区域。

视觉关注处理器205可以相应地将视觉关注区域朝向场景的如下的区域偏置:对于所述区域,存储的用户观看行为相对场景中的存储的用户观看行为指示较低的观看频率区域指示较高的观看频率。这样的方法可以导致改善的用户体验和对视觉关注区域的选择,所述视觉关注区域更可能对应于用户的实际视觉焦点。

用户观看行为可以反映在相同vr会话和相同用户期间的观看行为。因此,视觉关注处理器205可以例如存储指示例如哪个场景对象被选择为视觉关注区域的数据。然后,对视觉关注区域的后续选择可以将各个场景对象的选择频率考虑进去以进行后续选择。

在一些实施例中,观看行为可以反映先前的vr会话的行为,并且实际上可以反映多个用户的观看行为。例如,在视觉注意处理器205在图1的服务器103中实现的实施例中,并且因此服务于许多不同的用户,针对所有用户和所有vr会话的个体场景对象(或更一般地,区域)的选择可以反映在所存储的观看行为数据中。视觉关注区域的选择因此可以进一步响应于例如访问场景数据时的先前的统计用户行为。

在许多实施例中,视觉关注处理器205可以被布置为进一步确定预测的视觉关注区域。预测的视觉关注区域指示观看者的估计的未来视觉注意力,因此可以具体地不对应于当前注视点,而是对应于期望的未来注视点。因此,预测的视觉关注区域可以是将来可能选择的视觉关注区域的指示/估计。

视觉关注处理器205可以响应于指示场景的不同区域之间,特别是不同场景对象之间的先前观看行为关系的关系数据,来确定预测的视觉关注区域。

发明人已经认识到,在许多应用中,在内容的不同部分之间存在典型或更频繁的转换,并且可以记录这种用户行为并将其用于提供改进的性能。

视觉关注处理器205可以具体包括用于预测视觉关注区域的额外图像数据,其中该图像数据的质量水平高于在预测视觉关注区域之外的质量水平。特别地,先前描述的用于针对当前的视觉关注区域提供图像数据的方法也可以应用于针对预测的视觉关注区域提供图像数据。因此,在一些实施例中,图像数据生成器209可以生成数据流,所述数据流包括针对给定瓦片的处于给定质量的图像数据,除了与质量水平可能显著更高的当前和预测的视觉关注区域相对应的区域之外。

视觉关注处理器205可以响应于指示当前视觉关注区域和预测视觉关注区域的视图之间的高视角相关性的关系数据来确定预测视觉关注区域。

关系数据通常可以指示观看者访问场景之前的注视移动,并且视觉注意处理器205可以将预测的视觉关注区域确定为如下的区域:对于所述区域,关系数据指示从视觉关注区域注视移动到符合准则的第一区域的注视移动的频率。该准则通常可能要求注视频率高于阈值,或者例如是从视觉关注区域到邻近的场景对象的注视频率的集合中的最高频率。

作为示例,在若干个vr会话期间,视觉关注处理器205可以收集反映用户如何改变他们的焦点的数据。例如,这可以通过存储哪些场景对象被选择为视觉关注区域并且具体地发生哪些选择改变来完成。对于给定的场景对象,每当从给定的场景对象到该场景对象的选择发生改变时,视觉关注处理器205就可以针对给定的距离记录内的每个其他场景对象。当给定场景对象被选择为当前视觉关注区域时,视觉关注处理器205然后可以继续评估所存储的数据,以识别作为接下来最常被选择的场景对象的第二场景对象,即,用户的视觉关注通常切换到的那个。

视觉关注处理器205然后可以继续传输针对当前视觉关注区域和预测视觉关注区域两者的特别高质量的数据。结果,可以为用户生成对于用户的当前视觉焦点以及对于用户的预测/期望的下一个视觉焦点具有特别高质量的观看图像。如果确实如此,那么用户随后会在视觉焦点上进行预期的更改,他将直接且没有任何滞后或延迟地感知到整幅图像的高质量。

作为一个具体示例,可以考虑以网球比赛的沉浸式和嵌入式观看者体验的形式的vr体验,其中向用户提供了作为看台上的观众的体验。在这种情况下,用户可以将其位置或头部方向更改为例如环顾四周,移动到不同的位置等。在该示例中,场景对象可以对应于两个球员,裁判员,网,男球童或女球童等。

在这样的应用中,生成观看行为数据可能导致以下结果:表明与两个球员相对应的场景对象经常被选择为视觉关注区域,即用户的注意力主要集中在球员身上。因此,即使注视指示表明注视点更接近例如网或球童,视觉注意处理器205也可能更有可能选择玩家对象之一作为视觉关注区域。

另外,关系行为可以反映出视觉关注区域经常从第一玩家切换到第二玩家,并且反之亦然。因此,当第一玩家对象被选择为当前视觉关注区域时,视觉关注处理器205可以将第二玩家对象确定为预测的视觉关注,并且反之亦然。图像数据生成器209然后可以生成图像数据以具有与当前观看姿态相对应的图块的给定质量,但是对于小区域具有显著更高的质量。类似地,图像合成器211可以生成具有给定质量的观看图像,除了在球员周围质量显著更高的非常小的区域(例如,在第一球员和第二球员周围小于5°的区域)之外。因此,当用户的视线在不同的球员之间切换时,用户会感觉到始终如一的高质量。

还应该注意的是,这种方法与观看者姿态的改变是相符的。具体地,如果观看者姿态从一个位置改变为另一位置,例如对应于用户在看台上从其观看游戏的用户选择不同的位置,则关于选择视觉关注区域的数据仍然有用。具体地,指示对应于球员的场景对象是针对视觉关注区域的强候选的先前数据仍然是相关的,其为指示用户频繁地将视线从一个球员改变为另一球员(即在球员场景对象之间)的关系数据。当然,视觉关注区域到特定视图图像的投影将根据视口的变化而变化。

在一些实施例中,视觉关注处理器205可以被布置为响应于与视觉关注区域相对应的场景对象的运动数据来确定预测的视觉关注区域。预测的视觉关注区域可以例如被确定为场景对象向其移动的区域,即,其可以对应于场景对象的估计或预测的将来位置。该方法可以在例如用户正在跟踪快速移动的物体的情况下提供改进的性能,所述物体例如快速移动以致连续更新当前的视觉关注区域并发送相应的高质量数据可能会引入延迟或不可接受的延迟。例如,如果用户在足球比赛中跟随球,则当球缓慢移动(例如,传球)时,连续跟踪相应对象并针对较小的周围区域传输高质量数据的方法可能适用,但当球快速移动(时例如射门或球门球)不适用。在后一种情况下,系统可以预测例如球将击中球门,因此可以在球到达球门之前传输球门区域的高质量数据。

先前的示例集中于如下的实施例,其中,针对与视觉关注区域(或预测的视觉关注区域)相对应的区域选择了给定的较高图像质量,而针对其他区域(例如,视口的区域)选择了给定的较低图像质量。然而,在许多实施例中,可以应用质量的逐渐改变。

例如,可以识别视图图像中与视觉关注区域相对应的焦点,并且图像区域越靠近焦点,可以提高视图图像中图像区域的质量。例如,视图图像的编码可以基于从许多编码方案(例如,mpeg)中已知的宏块。可以根据宏块与焦点之间的距离来确定分配给每个宏块的比特数(以及因此宏块的质量)。该功能可以随着距离的增加而单调减小,从而确保质量在宏块越靠近焦点时越增加。应当理解,可以选择功能的特征以提供期望的渐进质量分布。例如,可以选择功能以提供高斯质量/比特分配分布。

在一些实施例中,可以提供:

一种用于生成表示场景的视图的图像数据流的装置,所述装置包括:

接收器(203),其用于接收指示观看者的头部姿态和相对眼睛姿态两者的注视指示,所述头部姿态包括头部位置,并且所述相对眼睛姿态指示相对于所述头部姿态的眼睛姿态;

确定器(205),其用于确定所述场景中与所述注视指示相对应的视觉关注区域;

生成器(209),其用于将所述图像数据流生成为包括针对所述场景的图像数据,其中,所述图像数据被生成为至少包括针对所述视觉关注区域的第一图像数据和针对所述视觉关注区域之外的场景的第二图像数据;其中,所述生成器(209)被配置为生成所述图像数据,以使所述第一图像数据比所述第二图像数据具有更高的质量水平;

一种生成表示场景视图的图像数据流的方法,所述方法包括:

接收指示观看者的头部姿态和相对眼睛姿态的注视指示,所述头部姿态包括头部位置,并且所述相对眼睛姿态指示相对于所述头部姿态的眼睛姿态;

确定所述场景中与所述注视指示相对应的所述视觉关注区域;

将所述图像数据流生成为包括针对所述场景的图像数据,其中,所述图像数据被生成为至少包括针对所述视觉关注区域的第一图像数据和针对所述视觉关注区域之外的场景的第二图像数据;所述图像数据针对所述第一图像数据比所述第二图像数据具有更高的质量水平。

应当理解,为了清楚起见,以上描述已经参考不同的功能电路、单元和处理器描述了本发明的实施例。然而,显而易见的是,可以在不背离本发明的情况下使用不同功能电路、单元或处理器之间的任何合适的功能分布。例如,被示为由分别的处理器或控制器执行的功能可以由相同的处理器执行。因此,对特定功能单元或电路的引用仅被视为对用于提供所描述的功能的合适设备的引用,而不是指示严格的逻辑或物理结构或组织。

本发明可以以任何合适的形式实现,包括硬件、软件、固件或这些的任何组合。本发明可以任选地至少部分地实现为在一个或多个数据处理器和/或数字信号处理器上运行的计算机软件。本发明的实施例的元件和部件可以以任何合适的方式来物理地、功能地和逻辑地实现。实际上,功能可以在单个单元中、在多个单元中或作为其他功能单元的一部分来实现。这样,本发明可以在单个单元中实现,或者可以在不同的单元、电路和处理器之间物理地和功能地分布。

尽管已经结合一些实施例描述了本发明,但是并不旨在将本发明限于这里阐述的特定形式。相反,本发明的范围仅受所附权利要求的限制。另外,尽管可能看起来结合特定实施例描述了特征,但是本领域技术人员将认识到,可以根据本发明组合所描述的实施例的各种特征。在权利要求中,术语“包括”不排除存在其他元件或步骤。

此外,尽管单独列出,但是多个设备、元件、电路或方法步骤可以通过例如单个电路、单元或处理器来实现。另外,尽管各个特征可以包括在不同的权利要求中,但是这些特征可以有利地组合,并且包含在不同的权利要求中并不意味着特征的组合是不可行和/或不利的。在一类权利要求中包含特征并不意味着对该类别的限制,而是指示该特征在合适时同样适用于其他权利要求类别。此外,权利要求中的特征的顺序并不意味着特征必须工作的任何特定顺序,并且特别地,方法权利要求中的各个步骤的顺序并不意味着必须以该顺序执行这些步骤。而是,可以以任何合适的顺序来执行这些步骤。另外,单数引用不排除多个。因此,对“一”、“一个”、“第一”、“第二”等的引用不排除多个。权利要求中的附图标记仅被提供用于地使示例清楚,不应被解释为以任何方式限制权利要求的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1