[go: up one dir, main page]

CN109952135B - 具有差分渲染和声音定位的无线头戴式显示器 - Google Patents

具有差分渲染和声音定位的无线头戴式显示器 Download PDF

Info

Publication number
CN109952135B
CN109952135B CN201780070649.2A CN201780070649A CN109952135B CN 109952135 B CN109952135 B CN 109952135B CN 201780070649 A CN201780070649 A CN 201780070649A CN 109952135 B CN109952135 B CN 109952135B
Authority
CN
China
Prior art keywords
hmd
user
movement
gaze
transceiver
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
Application number
CN201780070649.2A
Other languages
English (en)
Other versions
CN109952135A (zh
Inventor
T.托库博
S.奥斯曼
J.R.斯塔福德
X.毛
G.布莱克
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Interactive Entertainment Inc
Original Assignee
Sony Interactive Entertainment Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Priority claimed from US15/283,138 external-priority patent/US10209771B2/en
Priority claimed from US15/337,469 external-priority patent/US10585472B2/en
Application filed by Sony Interactive Entertainment Inc filed Critical Sony Interactive Entertainment Inc
Publication of CN109952135A publication Critical patent/CN109952135A/zh
Application granted granted Critical
Publication of CN109952135B publication Critical patent/CN109952135B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/211Input arrangements for video game devices characterised by their sensors, purposes or types using inertial sensors, e.g. accelerometers or gyroscopes
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/213Input arrangements for video game devices characterised by their sensors, purposes or types comprising photodetecting means, e.g. cameras, photodiodes or infrared cells
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/25Output arrangements for video game devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/53Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2370/00Aspects of data communication
    • G09G2370/16Use of wireless transmission of display information

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Stereophonic System (AREA)
  • Processing Or Creating Images (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

提供了一种方法,包括以下方法操作:接收其中安置头戴式显示器(HMD)的交互式环境的捕获图像;接收从所述HMD的至少一个惯性传感器处理得到的惯性数据;分析所述捕获图像和所述惯性数据以确定所述HMD的预测的未来位置;使用所述HMD的预测的未来位置来朝向所述HMD的所述预测的未来位置调整RF收发器的波束成形方向。

Description

具有差分渲染和声音定位的无线头戴式显示器
1.技术领域
本公开涉及用于将数据传输到头戴式显示器(HMD)的预测RF波束成形,以及相关的方法、设备和系统。
背景技术
2.相关技术说明
视频游戏产业多年以来经历了很多改变。随着计算能力的扩大,视频游戏的开发者同样已设计出利用计算能力上这些增强的游戏软件。为此,视频游戏开发者一直以来都在编码结合复杂操作和数学运算的游戏以产生极其精细且引人入胜的游戏体验。
示例游戏平台包括Sony
Figure BDA0002060091840000011
Sony />
Figure BDA0002060091840000012
(PS2)、Sony
Figure BDA0002060091840000013
(PS3)和Sony />
Figure BDA0002060091840000014
(PS4),其中的每一者都以游戏机(gameconsole)的形式出售。众所周知,游戏机被设计成连接至显示器(通常是电视),并且通过手持式控制器来实现用户互动。游戏机被设计成具有专门的处理硬件和其他胶合硬件、固件和软件,所述专门的处理硬件包括:CPU;用于处理集中图形操作的图形合成器;用于执行几何变换的矢量单元。游戏机可进一步被设计成具有用于容纳游戏光盘的光盘读取器,以便通过游戏机在本地玩游戏。也可以是在线游戏,其中用户可以通过互联网与其他用户以互动方式比赛或一起玩游戏。由于游戏的复杂性不断激起玩家的兴趣,游戏和硬件制造商不断进行创新以启用额外的互动性和计算机程序。
计算机游戏行业的发展趋势是开发提高用户与游戏系统之间的互动性的游戏。实现更丰富的互动体验的一种方式是使用无线游戏控制器,游戏系统对所述控制器的移动进行跟踪以便跟踪玩家的移动并将这些移动用作游戏的输入。一般而言,手势输入指的是使诸如计算系统、视频游戏机、智能家电等电子装置对由玩家做出并且被电子装置捕获的一些手势做出反应。
实现更为沉浸的互动式体验的另一种方式是使用头戴式显示器。头戴式显示器由用户佩戴,并且可以被配置为呈现各种图形,诸如虚拟空间的视图。呈现在头戴式显示器上的图形可以覆盖用户的大部分或甚至全部视野。因此,头戴式显示器可以为用户提供视觉上沉浸的体验。
头戴式显示器(HMD)提供沉浸式虚拟现实体验,因为HMD以响应用户移动的方式渲染虚拟环境的实时视图。佩戴HMD的用户在所有方向上都可以自由移动,且因此可以通过HMD提供所有方向上的虚拟环境的视图。然而,生成用于在HMD上渲染的视频所需的处理资源是相当大的,且因此由诸如个人计算机或游戏机的单独计算装置来处理。计算装置生成用于渲染到HMD的视频,并将视频传输到HMD。
为了提供高保真体验,期望提供高质量视频(例如,以高分辨率和帧速率)。然而,这种视频需要传输大量数据,从而需要高带宽和稳定的连接。因此,用于HMD渲染的当前系统使用有线连接来将数据从计算装置传送到HMD,因为这提供了必要的带宽和连接稳定性。然而,连接至HMD的线的存在对于用户来说可能是麻烦的,因为它可接触到用户并且有损于使用HMD的沉浸式体验。此外,有线连接可抑制用户的移动自由,因为用户必须注意不要过度延伸该线,并且必须避免可能导致断开该线或损坏该线的任何移动。此外,线的存在呈现绊倒危险,这一点由于用户在使用HMD时无法看到真实环境的事实而被放大。
正是在这种背景下出现本公开的实现方式。
发明内容
本公开的实现方式包括与用于头戴式显示器的RF波束成形相关的装置、方法和系统。
在一些实现方式中,提供了一种方法,该方法包括以下方法操作:接收其中安置头戴式显示器(HMD)的交互式环境的捕获图像;接收从HMD的至少一个惯性传感器处理得到的惯性数据;分析捕获图像和惯性数据以确定所述HMD的预测的未来位置;使用所述HMD的预测的未来位置来朝向所述HMD的预测的未来位置调整RF收发器的波束成形方向。
在一些实现方式中,分析所述捕获图像和所述惯性数据包括识别所述HMD的移动,使用所述HMD的所识别的移动来确定所述HMD的所述预测的未来位置。
在一些实现方式中,识别所述HMD的移动包括确定所述HMD的运动矢量,通过将所述HMD的所述运动矢量应用于所述HMD的当前位置来确定所述HMD的所述预测的未来位置。
在一些实现方式中,所述运动矢量的量值识别所述HMD的所述移动的速度,并且其中所述运动矢量的方向识别所述HMD的所述移动的方向。
在一些实现方式中,该方法还包括:基于所述HMD的所述移动的所述速度调整所述RF收发器的角展度。
在一些实现方式中,所述角展度随着所述HMD的所述移动的速度的增加而增加。
在一些实现方式中,识别HMD的移动包括识别HMD的平移移动和/或旋转移动;其中确定运动矢量包括确定平移移动和/或旋转移动的加速度。
在一些实现方式中,RF收发器包括RF发射器相控阵列;其中调整所述RF收发器的所述波束成形方向包括生成收发器控制数据,所述收发器控制数据被配置为引起对所述相控阵列的所述RF发射器中的至少一个的相位或振幅的调整。
在一些实现方式中,所述HMD的至少一个惯性传感器包括加速度计、陀螺仪或磁力仪中的一者或多者。
在一些实现方式中,HMD包括多个灯;其中分析所述捕获图像包括识别所述捕获图像中的所述多个灯中的一个或多个。
在一些实现方式中,提供了一种系统,该系统包括:头戴式显示器(HMD),该HMD具有至少一个惯性传感器,该至少一个惯性传感器被配置为生成惯性数据;摄像机,该摄像机被配置为捕获其中安置HMD的交互式环境的图像;RF收发器;计算机,该计算机被配置为分析捕获图像和惯性数据以确定所述HMD的预测的未来位置,并使用所述HMD的预测的未来位置来朝向HMD的预测的未来位置调整RF收发器的波束成形方向。
从下面结合附图进行的、通过举例方式说明本公开的原理的详细描述中,本公开的其他方面和优点将变得明显。
本公开的实现方式包括与用于头戴式显示器的RF波束成形相关的装置、方法和系统。
在一些实现方式中,提供了一种方法,该方法包括以下方法操作:接收其中安置头戴式显示器(HMD)的交互式环境的捕获图像;接收从所述HMD的至少一个惯性传感器处理得到的惯性数据;分析所述捕获图像和所述惯性数据以确定所述HMD的当前位置和所述HMD的预测的未来位置;使用所述HMD的所述预测的未来位置而将RF收发器的波束成形方向调整为朝向所述HMD的所述预测的未来位置的方向;跟踪所述HMD的用户的注视;生成描绘所述HMD的虚拟环境的视图的图像数据,其中基于所述用户的所述所跟踪的注视差分地渲染所述视图的区域;生成描绘来自所述虚拟环境的声音的音频数据,所述音频数据被配置为在被渲染到连接至所述HMD的耳机时实现所述用户对所述声音的定位;使用所述所调整的波束成形方向经由所述RF收发器将所述图像数据和所述音频数据传输到所述HMD。
在一些实现方式中,所述用户的所述注视所指向的所述视图的区域以比所述视图的其他区域更高的图像质量设置渲染,所述视图的所述其他区域以较低的图像质量设置渲染以减小所述图像数据的大小。
在一些实现方式中,所述图像质量设置包括更新频率、分辨率、图像复杂度或确定用于渲染所述视图的所述区域的顺序的渲染顺序值中的一者或多者。
在一些实现方式中,该方法还包括:跟踪所述用户的所述注视的轨迹;基于所述用户的所述注视的所述轨迹预测所述用户的所述注视的移动;其中基于所述用户的所述注视的所述所预测的移动差分地渲染所述视图的所述区域。
在一些实现方式中,生成所述音频数据包括确定所述虚拟环境中的所述声音的一个或多个发出位置,其中所述音频数据被配置为在渲染到所述耳机时将所述声音模拟为源自所述一个或多个发出位置。
在一些实现方式中,生成所述音频数据使用为所述用户识别的HRTF。
在一些实现方式中,生成所述音频数据是基于所述HMD的所述当前位置和/或预测的未来位置。
在一些实现方式中,分析所述捕获图像和所述惯性数据包括识别所述HMD的移动,使用所述HMD的所识别的移动来确定所述HMD的所述预测的未来位置。
在一些实现方式中,识别所述HMD的移动包括确定所述HMD的运动矢量,通过将所述HMD的所述运动矢量应用于所述HMD的当前位置来确定所述HMD的所述预测的未来位置;其中所述运动矢量的量值识别所述HMD的所述移动的速度,并且其中所述运动矢量的方向识别所述HMD的所述移动的方向。
在一些实现方式中,该方法还包括:基于HMD的移动的速度来调整RF收发器的角展度;其中角展度随着HMD的移动的速度的增加而增加。
从下面结合附图进行的、通过举例方式说明本公开的原理的详细描述中,本公开的其他方面和优点将变得明显。
附图说明
通过参考以下结合附图进行的描述,可更好地理解本公开,在附图中:
图1示出了根据本公开的实现方式的用于经由头戴式显示器(HMD)与虚拟环境进行交互的系统。
图2A-1和图2A-2示出了根据本公开的实现方式的头戴式显示器(HMD)。
图2B示出了根据一种实现方式的与客户端系统交接的HMD用户以及向第二屏幕显示器(其被称为第二屏幕)提供内容的客户端系统的一个示例。
图3概念性地示出了根据本公开的实现方式的HMD结合执行的视频游戏的功能。
图4示出了根据本公开的实现方式的基于HMD的未来位置的预测对收发器的波束成形方向的调整。
图5A和图5B示出了根据本公开的实现方式的基于HMD移动对波束成形角展度的调整。
图5C是示出根据本公开的实现方式的收发器的波束成形角展度与HMD的速度的关系的曲线图。
图5D是示出根据本公开的实现方式的收发器的波束成形角展度与HMD距收发器的径向距离的关系的曲线图。
图5E是示出根据本公开的实现方式的收发器的波束成形角展度与传输数据速率的关系的曲线图。
图6A、图6B和图6C示出了根据本公开的实现方式的其中基于用户100的注视方向调整波束成形方向的场景。
图7示出了根据本公开的实现方式的房间700的俯视图,其示出了HMD的位置分布。
图8概念性地示出了根据本公开的实现方式使用预测模型来确定波束成形参数。
图9示出了根据本公开的实现方式的用于使用预测的未来位置来调整波束成形参数的方法。
图10概念性地示出了根据本公开的实现方式的用于在计算机和HMD之间提供无线通信的系统。
图11A是示出了根据本公开的实现方式的波束成形传输器的部件的示意图。
图11B是示出了根据本公开的实现方式的波束成形接收器的部件的示意图。
图12A概念性地示出了根据本公开的实现方式的具有多个天线阵列的HMD。
图12B、图12C和图12D示出了根据本公开的实现方式的交互式真实环境中的HMD的俯视图,示出了有源天线阵列在HMD上的切换。
图13示出了根据本公开的实现方式的显示器(例如,HMD)的刷新。
图14示出了根据本公开的实现方式的在HMD的显示器上示出的游戏场景。
图15示出了根据本公开的实现方式在显示器中创建用于优先渲染的区域。
图16是根据本公开的实现方式的用于渲染HMD上的图像的流程图。
图17示出了修改在耳机处递送的声音的实现方式。
图18示出了根据本公开的实现方式用户经由具有真实的声音递送的HMD观看VR环境。
图19是根据本发明的实现方式的用于模拟声源的声音定位算法的流程图。
图20示出了根据本公开的实现方式的用于基于用户对所接收声音的感知来选择声音定位函数的方法。
图21是用于实现本发明的实现方式的计算机系统的简化示意图。
图22示出了可以用于实现本发明的实现方式的装置的架构。
图23是根据本公开的实现方式的游戏系统2300的框图。
具体实施方式
本公开的以下实现方式提供了与头戴式显示器(HMD)的预测RF波束成形相关的装置、方法和系统。
在各种实现方式中,方法、系统、图像捕获对象、传感器和相关联的接口对象(例如,手套、控制器、外围装置等)被配置为处理被配置为在显示屏上大体上实时渲染的数据。显示器可以是头戴式显示器(HMD)的显示器、第二屏幕的显示器、便携式装置的显示器、计算机显示器、显示面板、一个或多个远程连接用户(例如,可能正在观看内容或在交互式体验中进行共享的用户)的显示器等。
然而,对于本领域技术人员来说,将显而易见是,本公开可以在没有这些具体细节中的一些或全部的情况下实践。在其他情况下,没有详细描述众所周知的过程操作,以免不必要地模糊本公开。
图1示出了根据本公开的实现方式的用于经由头戴式显示器(HMD)与虚拟环境进行交互的系统。示出了佩戴头戴式显示器(HMD)102的用户100。HMD 102以与眼镜、护目镜或头盔类似的方式佩戴,并且被配置为向用户100显示视频游戏或其他内容。HMD 102凭借其在用户眼睛附近提供显示机制,为用户提供非常沉浸的体验。因此,HMD 102可以向用户的每一只眼睛提供显示区域,所述显示区域占据用户的大部分或甚至全部视野。
在所示的实现方式中,HMD 102无线连接至计算机106。计算机106可以是本领域已知的任何通用或专用计算机,包括但不限于:游戏机、个人计算机、膝上型计算机、平板计算机、移动装置、蜂窝电话、平板电脑、瘦客户端、机顶盒、媒体流装置等。在一个实现方式中,计算机106可以被配置为执行视频游戏,并从视频游戏输出视频和音频以供HMD 102渲染。收发器110被配置为将视频和音频从视频游戏无线传输到HMD 102以在其上进行渲染。收发器110包括用于向HMD 102无线传输数据的发送器,以及用于接收由HMD 102无线传输的数据的接收器。
在一些实现方式中,HMD 102还可以通过替代机制或信道与计算机通信,诸如经由HMD 102和计算机106都连接至的网络112。
用户100可操作接口对象104以提供用于视频游戏的输入。另外,摄像机108可以被配置为捕获用户100位于其中的交互式环境的图像。可以对这些捕获图像进行分析,以确定用户100、HMD 102和接口对象104的位置和移动。在各种实现方式中,接口对象104包括可以被跟踪的灯和/或一个或多个惯性传感器,以使得能够确定接口对象的位置和取向。
用户与HMD 102中显示的虚拟现实场景的交接方式可以变化,并且可以使用除接口对象104之外的其他接口装置。例如,可以使用各种单手控制器以及双手控制器。在一些实现方式中,可以通过跟踪与控制器相关联的灯或跟踪与控制器相关联的形状、传感器和惯性数据来跟踪控制器本身。使用这些各种类型的控制器,或甚至简单地由一个或多个摄像机制作和捕获的手势,可以交接、控制、操纵HMD 102上呈现的虚拟现实环境、与其进行交互并参与到其中。
另外,HMD 102可包括一个或多个灯,该一个或多个灯可被跟踪以确定HMD 102的位置和取向。摄像机108可以包括一个或多个传声器,以从交互式环境捕获声音。可处理由传声器阵列捕获的声音,以识别声源的位置。可以选择性地利用或处理来自识别的位置的声音,以排除并非来自所述识别的位置的其他声音。另外,摄像机108可以被限定成包括多个图像捕获装置(例如,一对立体摄像机)、IR摄像机、深度摄像机和它们的组合。
在另一个实现方式中,计算机106充当经由网络112与云游戏提供商114通信的瘦客户端。在这样一个实现方式中,一般而言,云游戏提供商114维护并且执行用户102正玩的视频游戏。计算机106将来自HMD 102、定向接口对象104和摄像机108的输入传输给云游戏提供商,云游戏提供商处理所述输入以影响正执行的视频游戏的游戏状态。来自正执行的视频游戏的输出(诸如视频数据、音频数据和触觉反馈数据)被传输到计算机106。计算机106还可在传输之前处理数据,或可将数据直接传输到相关装置。例如,将视频流和音频流提供至HMD 102,而将振动反馈命令提供至接口对象104。
在一些实现方式中,HMD 102、接口对象104和摄像机108本身可以是联网装置,所述联网装置连接至网络112以例如与云游戏提供商114通信。在一些实现方式中,计算机106可以是不否则执行视频游戏处理但促进网络流量通过的本地网络装置(诸如路由器)。HMD102、接口对象104和摄像机108至网络的连接可以是有线的或无线的。
另外,尽管可以参考头戴式显示器描述本公开中的实现方式,但是应理解,在其他实现方式中,非头戴式显示器可被替代,包括但不限于便携式装置屏幕(例如,平板电脑、智能电话、膝上型计算机等)或可被配置为根据本实现方式渲染视频和/或提供交互式场景或虚拟环境的显示的任何其他类型的显示器。
在观看虚拟环境时必须传输到HMD以提供高质量用户体验的数据量(尤其是以视频数据(例如,包括图像数据和音频数据)的形式)非常大。因此,当前的HMD技术需要在生成视频数据的计算机与HMD之间进行有线连接。然而,如上所述,到HMD的有线连接有损于用户的移动自由,从而降低了可以通过HMD如此有效地渲染的其他沉浸式体验。
提供能够可靠地传输高质量体验所需的数据量的无线连接需要克服在为高数据带宽提供高信噪比方面的问题,同时随着HMD根据用户的移动而移动,还保持对HMD的高连接稳定性。为实现此目的,本发明的实现方式使用预测波束成形来提供到HMD的无线数据传输。也就是说,在一些实现方式中,分析HMD的跟踪的移动以预测HMD的未来位置,并且波束成形用于预测性地将RF信号朝向HMD的预测的未来位置导向。由此通过以预期方式导向RF信号来维持RF信号强度,以便更好地跟踪HMD的位置。
出于易于在本公开中描述的目的,参考HMD的实际或预测位置作为RF信号应指向的现实世界空间中的位置。然而,应理解,HMD的位置可以更具体地指HMD上、内或相对于HMD的特定位置,诸如为HMD的一部分的接收器天线的位置,HMD的显示部分的位置、HMD的中心等。
继续参考图1,根据本公开的实现方式,示出了用于向HMD的数据传输的预测波束成形的过程的概述。应理解,可以使用各种技术来跟踪HMD 102的位置。在所示的实现方式中,HMD 102将从HMD的一个或多个惯性传感器生成的惯性数据116传输到计算机106。此外,计算机106从摄像机110接收捕获图像数据118,该摄像机被配置为捕获其中安置HMD 102和用户100的交互式环境的图像。计算机106分析惯性数据116和/或图像数据118,以识别和跟踪HMD 102及其位置、取向和移动。
使用HMD 102的跟踪移动来确定HMD的预测的未来位置。举例来说,计算机106可以基于HMD 102的所跟踪的移动来生成运动矢量。该运动矢量可以应用于HMD 102的当前位置以预测HMD的未来位置。使用所述HMD的预测的未来位置,计算机106生成波束成形数据120,其被配置为将收发器110的波束成形方向指向HMD的预测的未来位置。通过以预测方式指引收发器的波束成形方向,可以保持强无线信号,因为将预期HMD 102的移动并且信号的波束成形方向将不会滞后此类移动,但是可以同时和/或预期的方式随着HMD的此类移动而移动。在本公开中,参考收发器110的波束成形参数(例如,方向和角展度)。应理解,这种波束成形参数可以应用于作为收发器的一部分的发送器和接收器中的任一者或两者。一般而言,专注于从计算机到HMD的视频数据传输的实现方式可以讨论在收发器的发送器的传输方面的波束成形。然而,应理解,波束成形的任何这种讨论也可以应用于收发器的接收器的信号接收。
在一些实现方式中,摄像机108和收发器110集成在同一装置中,使得摄像机和收发器彼此具有固定的空间关系,并且更具体地,摄像机的图像捕获和收发器的RF波束成形在空间上已知是彼此相关的。在此类实现方式中,HMD的位置可以由摄像机捕获的图像确定,并且收发器的波束成形可以适当地指向HMD,而无需额外的校准。
在其他实现方式中,收发器110和摄像机108是可以定位在本地环境中的不同位置处的单独装置。在此类实现方式中,可以执行校准以确定摄像机的图像捕获和收发器的RF波束成形的空间关系。在一个实现方式中,这可以通过分析来自摄像机的捕获图像以确定HMD相对于摄像机的位置、并执行测试以确定HMD的所确定位置的最佳波束成形方向以及将这些信息相关联来执行。可以对HMD的多个位置执行这样的过程以实现更准确的校准结果。
在一些实现方式中,信号质量反馈122从HMD 102提供到计算机106,例如经由收发器110或网络112。信号质量反馈122指示无线传输的质量(例如,信号强度、错误率等),并且提供可用于评估波束成形方向是否被有效地朝向HMD 102导向以提供足够的数据传输速率的信息。
图2A-1和图2A-2示出了根据本公开的实现方式的头戴式显示器(HMD)。图2A-1特别示出了
Figure BDA0002060091840000131
VR头戴式受话器,其是根据本公开的实现方式的HMD的一个示例。如图所示,HMD 102包括多个灯200A-H。这些灯中的每一个可被配置为具有特定形状,并且可以被配置为具有相同或不同的颜色。灯200A、200B、200C和200D布置在HMD 102的前表面上。灯200E和200F布置在HMD 102的侧表面上。并且灯200G和200H布置在HMD 102的转角处,以便跨越HMD 102的前表面和侧表面。应理解,可以在用户使用HMD 102的交互式环境的捕获图像中识别所述灯。基于对所述灯的识别和跟踪,可以确定HMD 102在交互式环境中的位置和取向。应进一步理解,所述灯中的一些可以是可见的或者可以是不可见的,这取决于HMD 102相对于图像捕获装置的特定取向。而且,灯(例如,灯200G和200H)的不同部分可被暴露用于图像捕获,这取决于HMD 102相对于图像捕获装置的取向。
在一个实现方式中,灯可以被配置为将HMD的当前状态指示给附近的其他人。例如,所述灯中的一些或全部可被配置为具有特定颜色布置、强度布置、被配置为闪烁、具有特定开/关配置或指示HMD 102的当前状态的其他布置。举例来说,所述灯可以被配置为在相对于视频游戏的其他非活跃游戏玩法方面的视频游戏的活跃游戏玩法期间(大体上是在游戏的活跃时间线期间或场景内发生的游戏玩法)显示不同的配置,诸如导航菜单界面或配置游戏设置(期间游戏时间线或场景可能不活跃或暂停)。所述灯还可以被配置为指示游戏玩法的相对强度等级。例如,当游戏玩法的强度增加时,灯的强度或闪烁的速率可增加。以这种方式,用户外部的人可以观看HMD 102上的灯并且理解用户积极地参与激烈的游戏,并且可能不希望在那个时刻被打扰。
HMD 102可另外包括一个或多个传声器。在所示的实现方式中,HMD 102包括限定在HMD 102的前表面上的传声器204A和204B,以及限定在HMD 102的侧表面上的传声器204C。通过利用一系列传声器,可以处理来自传声器中的每一个的声音,以确定声音的来源的位置。可以各种方式来利用该信息,包括排除不需要的声源、将声源与视觉识别相关联等。
HMD 102还可包括一个或多个图像捕获装置。在所示的实现方式中,示出HMD 102包括图像捕获装置202A和202B。通过利用一对立体图像捕获装置,可以从HMD 102的视角捕获环境的三维(3D)图像和视频。可以将此类视频呈现给用户,以在用户佩戴HMD 102时向用户提供“视频透视”能力。也就是说,虽然从严格意义上来说用户无法透视HMD 102,但是由图像捕获装置202A和202B(例如,或者安置在HMD 102的外部主体上的一个或多个前向摄像机108’,如下面图3所示)捕获的视频可以仍然提供相当于能够看到HMD 102外部的环境就如同看穿HMD 102的功能。此类视频可利用虚拟元素来增强,以便提供增强的现实体验,或可与虚拟元素以其他方式组合或共混。虽然在所示的实现方式中,示出HMD 102的前表面上有两个摄像机,但是应理解,可存在安装在HMD 102上并且以任何方向取向的任何数量的面向外部的摄像机。例如,在另一个实现方式中,可能有摄像机安装在HMD 102的侧面上,以提供对环境的额外全景图像捕获。
图2B示出了与客户端系统106交接的HMD 102用户100以及向第二屏幕显示器(其被称为第二屏幕207)提供内容的客户端系统106的一个示例。客户端系统106可以包括用于处理从HMD 102到第二屏幕207的内容共享的集成电子装置。其他实现方式可以包括单独的装置、模块、连接器,其将交接在客户端系统与HMD 102和第二屏幕207中的每一者之间。在该一般示例中,用户100正佩戴HMD 102并且正在使用控制器玩视频游戏,该控制器也可以是定向接口对象104。用户100的交互式游戏将产生视频游戏内容(VGC),其被交互地显示给HMD 102。
在一个实现方式中,HMD 102中显示的内容被共享到第二屏幕207。在一个示例中,观看第二屏幕207的人可以观看用户100在HMD 102中交互地播放的内容。在另一个实现方式中,另一用户(例如,玩家2)可以与客户端系统106交互以产生第二屏幕内容(SSC)。由玩家产生的第二屏幕内容也与控制器104(或任何类型的用户界面、手势、语音或输入)交互,可以作为SSC产生到客户端系统106,其可以与从HMD 102接收的VGC一起在第二屏幕207上显示。
因此,可以与HMD用户共定位或远离HMD用户的其他用户的交互性可以是社交的、交互式的,并且对于HMD用户和可能正在第二屏幕207上观看由HMD用户播放的内容的用户更加身临其境。如图所示,客户端系统106可以连接至互联网210。互联网还可以向客户端系统106提供对来自各种内容源220的内容的访问。内容源220可以包括可通过互联网访问的任何类型的内容。
这样的内容可以包括但不限于视频内容、电影内容、流媒体内容、社交媒体内容、新闻内容、朋友内容、广告内容等。在一个实现方式中,客户端系统106可以用于同时处理HMD用户的内容,使得在游戏玩法期间向HMD提供与交互性相关联的多媒体内容。然后,客户端系统106还可以向第二屏幕提供可能与视频游戏内容无关的其他内容。在一种实现方式中,客户端系统106可以从内容源220之一或者从本地用户或远程用户接收第二屏幕内容。
图3概念性地示出了根据本公开的实现方式的HMD 102结合执行的视频游戏的功能。执行的视频游戏由游戏引擎320定义,游戏引擎320接收输入以更新视频游戏的游戏状态。可以至少部分地通过限定当前游戏玩法的各个方面的视频游戏的各种参数的值来定义视频游戏的游戏状态,当前游戏玩法的各个方面诸如对象的存在和位置、虚拟环境的状况、事件的触发、用户简档、视角等。
在所示的实现方式中,游戏引擎通过示例的方式接收控制器输入314、音频输入316和运动输入318。控制器输入314可以根据与HMD 102分开的游戏控制器的操作来定义,诸如手持游戏控制器(例如,Sony
Figure BDA0002060091840000161
4无线控制器、Sony />
Figure BDA0002060091840000162
Move运动控制器)或定向接口对象104。作为示例,控制器输入314可以包括定向输入、按钮按压、触发激活、移动、手势或从游戏控制器的操作处理得到的其他种类的输入。音频输入316可以是从HMD 102的传声器302处理而来的,或者从包括在图像捕获装置108中的传声器或本地环境内的其他地方处理而来的。运动输入318可以是从包括在HMD 102中的运动传感器300处理而来的,或者在图像捕获装置108捕获HMD 102的图像时从所述图像捕获装置处理而来的。游戏引擎320接收根据游戏引擎的配置进行处理的输入以更新视频游戏的游戏状态。引擎320将游戏状态数据输出到各种渲染模块,所述渲染模块处理游戏状态数据以定义将呈现给用户的内容。
在所示的实现方式中,视频渲染模块322被定义为渲染视频流以在HMD 102上呈现。视频流可以由显示器/投影仪机构310呈现,并且由用户的眼睛306通过光学器件308观看。音频渲染模块304被配置为渲染供用户收听的音频流。在一个实现方式中,音频流通过与HMD 102相关联的扬声器304输出。应理解,扬声器304可以采用露天扬声器、耳机或能够呈现音频的任何其他种类的扬声器的形式。
在一个实现方式中,HMD 102中包括注视跟踪摄像机312以使得能够跟踪用户的注视。注视跟踪摄像机捕获用户眼睛的图像,分析所述图像以确定用户的注视方向。在一个实现方式中,可以利用关于用户的注视方向的信息来影响视频渲染。例如,如果确定用户的眼睛正在朝特定方向看,则可以优先化或强调这个方向的视频渲染,诸如通过在用户正在看的区域中提供更多细节或更快的更新。应理解,用户的注视方向可以相对于头戴式显示器、相对于用户所处的真实环境、和/或相对于正在头戴式显示器上渲染的虚拟环境来定义。
概括地说,当单独考虑时,对由注视跟踪摄像机312捕获的图像的分析提供了用户相对于HMD 102的注视方向。然而,当结合HMD 102的跟踪位置和取向来考虑时,可以确定用户的真实世界注视方向,因为HMD 102的位置和取向与用户头部的位置和取向同义。也就是说,可以通过跟踪用户眼睛的位置移动以及跟踪HMD 102的位置和取向来确定用户的真实世界注视方向。当在HMD 102上渲染虚拟环境的视图时,可以应用用户的真实世界注视方向以确定用户在虚拟环境中的虚拟世界注视方向。
另外,触觉反馈模块326被配置为向HMD 102或由用户操作的另一装置(诸如定向接口对象104)中包括的触觉反馈硬件提供信号。触觉反馈可以采取各种触觉的形式,诸如振动反馈、温度反馈、压力反馈等。定向接口对象104可以包括用于渲染此类形式的触觉反馈的对应硬件。
图4示出了根据本公开的实现方式的基于HMD的未来位置的预测对发送器的波束成形方向的调整。在所示的实现方式中,HMD 102被示出在初始位置A处的三维空间中。HMD102能够在用户的控制下在任何方向上移动,并且因此希望将发射波束朝向HMD 102导向。
在一些实现方式中,确定运动矢量400,其指示HMD 102的当前移动。HMD的当前移动可以由HMD 102的一个或多个惯性传感器生成的数据以及分析HMD的捕获图像(例如跟踪HMD的灯或其他可识别部分的移动)来确定。在一些实现方式中,运动矢量400是指示HMD的移动的空间(三维(3D))方向和移动的速度的速度矢量。可以将运动矢量400应用于HMD的当前位置A,以确定HMD的预测的未来位置B。也就是说,通过使用HMD的移动的方向和速度从当前位置A外推来预测未来位置B。
在一些实现方式中,基于所确定的HMD 102的加速度自身预测运动矢量400。也就是说,HMD的速度变化(包括方向和速度的变化)可以根据先前确定的HMD在较早时间点的速度和/或限定HMD的当前加速度的加速度感测硬件(例如,一个或多个加速度计)来确定。可以将该加速度应用于紧接在前的运动矢量以确定运动矢量400,其被应用于当前位置以预测如上所述的未来位置。
在所示的实现方式中,收发器110的初始波束成形方向402指向HMD的初始位置A,如图所示。基于所述HMD的预测的未来位置B,调整波束成形方向以便指向未来位置B,如更新的波束成形方向404所示。应理解,波束成形方向的调整是以预测方式执行的,该预测方式在HMD 102的实际未来位置已知之前发生。通过预期HMD的未来位置,并相应地预测性地导向波束成形方向,可以改善收发器110和HMD 102之间的无线通信,因为经由RF波束成形提供的改善的带宽通过不断地将其方向朝向HMD 102来导向而维持。
应理解,波束成形方向是预测性调整的,且因此可以或可以不匹配HMD的实际移动到不同程度。然而,根据本公开的实现方式,可以从基于最新可用信息确定(例如,通过分析来自摄像机的捕获图像)的已知当前位置来确定后续预测位置。因此,尽管给定的调整的波束成形方向可能不特别匹配HMD的实际移动,但是波束成形方向的后续调整将至少部分地基于HMD的实际已知位置,且因此,连续调整波束成形方向将不易受到与HMD 102的实际位置的过度偏差的影响。
在一些实现方式中,波束成形更新速率大约为10到100毫秒,且因此预测HMD的未来位置的速率与波束成形更新速率的速率匹配。在一些实现方式中,预测速率被配置为匹配摄像机的帧速率,例如在一些实现方式中为60Hz、120Hz或240Hz。因此,预测将是预测下一帧的HMD的位置。
在一些实现方式中,HMD 102的惯性传感器可具有比摄像机108更好的用于检测移动的能力。例如,惯性传感器可能对比摄像机108更小的移动敏感,因为摄像机可能受其分辨率(例如,在一些实现方式中为720p或1080p分辨率)限制。此外,惯性传感器的采样率可能显著高于摄像机的帧速率。例如,摄像机可具有约60Hz、120Hz或240Hz的帧速率,而惯性传感器可具有超过1000Hz的采样率。此外,摄像机可能需要更长的处理时间(例如,分析捕获图像)以确定位置和/或移动。因此,惯性传感器可以对具有比摄像机108更快的瞬态响应的移动更敏感。
然而,检测相对移动的惯性传感器可能随时间倾向于漂移效应,且因此不仅仅依赖于提供对HMD位置的确定。然而,摄像机108更适合于提供对HMD的位置的准确确定,因为本地环境中的固定对象可以用作锚点以用于确定HMD在本地环境内的位置。
因此,在各种实现方式中,惯性传感器数据与图像捕获数据的使用可以单独地或组合地随时间变化。例如,在一些实现方式中,惯性传感器的采样率可以比摄像机的帧速率快N倍。因此,可以以与惯性传感器的采样率匹配的速率确定HMD的预测位置,但是每个第N预测位置考虑来自摄像机的图像捕获数据(例如,以验证HMD的实际位置,在此基础上确定预测位置)。应理解,利用HMD的每个预测位置,可以相应地调整收发器110的波束成形方向,以便指向HMD的预测位置。因此,波束成形方向的调整可以以比摄像机的帧速率更快的速率发生。
在相关实现方式中,确定HMD的预测位置的速率不一定与惯性传感器的采样率匹配,但是仍然比摄像机的帧速率快,和/或比预测位置确定考虑捕获图像数据的速率快。应理解,惯性传感器的采样率和摄像机的帧速率可以在这些装置的操作范围内配置,并且可以根据需要控制这种配置,以实现所讨论的位置预测。
在一些实现方式中,利用惯性传感器的更快采样率来改善运动矢量的确定,例如通过基于(另外采样的,相对于捕获图像)惯性传感器数据考虑真实空间中的HMD的加速度。因此,可以更好地定制运动矢量400以匹配HMD的实际运动,从而实现HMD的更准确的预测位置。
在一些实现方式中,处理和分析来自摄像机的捕获图像数据所需的时间使得使用捕获图像数据的HMD位置的确定可滞后HMD的实际移动到显著程度。因此,在一些实现方式中,分析捕获图像数据以确定HMD的历史位置,但是不用作当前位置以用于确定预测的未来位置(基于惯性传感器数据)。然而,执行捕获图像数据的分析并利用它来验证HMD的历史位置,例如,相对于HMD的先前预测的位置。如果例如HMD的先前预测的位置与历史位置的差异大于预定量,则可以基于这样的信息调整HMD位置的当前预测。
另外,如下面进一步详细讨论的,HMD位置的预测可以采用预测模型。可以基于将使用来自摄像机的捕获图像数据确定的HMD的历史位置与相同时间的先前预测的位置进行比较来评估预测模型的准确性。可以基于这样的比较来调整预测模型以提供改进的结果。
图5A和图5B示出了根据本公开的实现方式的基于HMD移动对波束成形角展度的调整。应理解,在本公开中,波束成形方向指波束成形收发器110的主瓣的峰值强度方向。然而,除了调整波束成形方向之外,还可以调整波束成形角展度,即主瓣的角宽度/展度。电磁波束的角展度可以使用各种定义来定义,诸如“半高全宽”(FWHM)(或“半功率波束宽度”(HPBW)定义,其将角展度定义为波束在其最大强度下的全宽。
在一些实现方式中,基于HMD 102的速度来调整角展度。例如,在图5A中,由用户100操作的HMD 102具有由运动矢量500指示的第一速度。因此,收发器110的波束成形角展度被控制为具有角展度502。在图5B中,由用户100操作的HMD 102具有由运动矢量504指示的第二速度,该第二速度比第一速度快。因此,收发器110的波束成形角展度被控制为具有角展度506,角展度506比角展度502更宽/更大。当前描述的实现方式考虑以与HMD的速度成正比关系的方式调整波束成形展度,使得角展度随着HMD速度增加而增加。这对于保持无线连接稳定性是有用的,因为当HMD的速度较高时HMD的可能的未来位置的范围可能倾向于更大,且因此在这种情况下具有更大角宽度的波束成形角展度更可能将HMD保持在主瓣的展度内。
在相关实现方式中,为了确定波束成形角展度,HMD相对于收发器的横向速度优先于HMD在其他方向上的速度。应理解,当HMD 102正朝向或远离收发器110移动时,HMD可能不太可能移出收发器的主瓣,与当HMD正在横向方向上相对于收发器移动时相反。因此,在一些实现方式中,考虑HMD 102相对于收发器110的横向移动,并且以与横向速度成正比关系来调整波束成形角展度。
在一些实现方式中,收发器110的波束成形角展度被调整为HMD相对于收发器的横向速度的函数,以排除其他非横向方向上的HMD速度,使得角展度随着横向速度的增加而增加。在其他实现方式中,收发器110的波束成形角展度作为HMD的速度的函数以成正比关系进行调整,使得角展度随着HMD速度增加而增加,但是为了确定角展度,HMD的横向速度被加权超过HMD在其他方向上的速度。
在一些实现方式中,HMD与收发器的距离影响波束成形角展度。例如,当HMD更靠近收发器时,HMD的移动可更可能将HMD移出收发器的主瓣,与HMD离收发器更远相比。因此,在一些实现方式中,波束成形角展度被调整为与HMD距收发器的距离成反比关系,使得角展度随着HMD距收发器的距离减小而增加。
在相关实现方式中,可以基于检测到的HMD的移动来应用该概念。例如,在一些实现方式中,基于HMD朝向/远离收发器的径向移动来调整波束成形角展度,使得当检测到HMD朝向收发器的径向移动时角展度增加,并且当检测到HMD远离收发器的径向移动时,角展度减小。此外,角展度的增加或减小量可以分别与朝向或远离收发器的HMD径向移动的速度成正比关系。
图5C是示出根据本公开的实现方式的收发器的波束成形角展度与HMD的速度的关系的曲线图。一般而言,角展度与HMD的速度成正比关系,使得随着HMD速度增加,收发器的角展度也增加。然而,低于某一最小速度时,角展度保持在最小值。并且高于某一最大速度时,角展度保持在最大值。在一些实现方式中,HMD的速度具体是HMD相对于收发器的横向速度。应理解,根据本公开的原理,HMD的速度可以是预测速度,例如基于诸如当前速度和/或加速度的因素,并且基于速度的角展度的调整可因此以预测方式执行。
图5D是示出收发器的波束成形角展度与HMD距收发器的径向距离的关系的曲线图。如图所示,角展度通常与HMD距收发器的径向距离成反比关系,角展度通常随着径向距离的增加而减小。然而,低于某一最小径向距离时,角展度保持在最大值。并且高于某一最大径向距离时,角展度保持在最小值。应理解,根据本公开的原理,HMD距收发器的径向距离可以是预测径向距离,例如基于诸如当前移动和/或加速度的各种因素,并且基于径向距离的角展度的调整可因此以预测方式执行。
在一些实现方式中,可以基于诸如数据速率的其他因素来确定角展度。图5E是示出根据本公开的实现方式的收发器的波束成形角展度与传输数据速率的关系的曲线图。一般而言,角展度与传输数据速率成反比关系,因此随着数据速率的增加,角展度减小。较窄的角展度可以提供更高的带宽,尽管宽度更窄。因此,通过作为数据速率的函数以这种方式改变角展度,在信号被正确地指向HMD时的可用带宽与无线连接对HMD的移动的容限之间存在折衷。在一些实现方式中,低于某一最小数据速率时,角展度保持在最大值。并且高于某一最大数据速率时,角展度保持在最小值。
涉及波束成形角展度的调整的上述实现方式通过示例的方式提供,但不限于此。落入本公开范围内的其他实现方式由任何前述实现方式的组合所涵盖,这些实现方式不是彼此排斥的。
在一些实现方式中,可基于用户的注视方向来调整波束成形方向和/或角展度。图6A、图6B和图6C示出了根据本公开的实现方式的其中基于用户100的注视方向调整波束成形方向的场景。图6A示出了佩戴HMD 102的用户100的俯视图。用户100被示出具有注视方向600。收发器110被配置为具有指向HMD 102的波束成形方向602。应理解,收发器的角展度大致以HMD 102为中心。
在图6B中,用户100已将他的注视方向向右移动到注视方向606。用户100的注视方向的改变可以指示用户将要移动,例如,大致在新注视方向的方向上移动。因此,根据一些实现方式,响应于用户的注视方向的改变来调整收发器110的波束成形方向。继续参考图6B,随着注视方向606已经移动到用户100的右侧,因此波束成形方向608在类似方向上移动,响应性地改变为更新的波束成形方向608。尽管波束成形方向608改变,但是其角展度610使得HMD 102仍然位于主瓣内,以便保持与HMD的无线连接,因为HMD尚未实际移动到新位置。应理解,波束成形方向已经基于用户注视方向的变化而被预测性地移动。虽然HMD的位置没有改变,但是可以预测性地调整波束成形方向,但是在将HMD 102保持在收发器110的角展度内的范围内。
在图6C中,用户100已经进一步将他的注视方向移动到注视方向612,例如通过另外旋转他的头部。然后,用户移动到标号614指示的新位置。当用户100移动时,收发器的波束成形方向被预测性地移动到方向616,以便保持强无线连接。
在一些实现方式中,用户的注视方向(和/或其变化)是可以考虑用于预测HMD的未来位置的另一因素。注视方向可以与用于确定预测的未来位置的另外描述的因素组合加权,并且可以相应地调整波束成形方向。此外,在额外的实现方式中,可以应用用户的注视方向以影响波束成形角展度。
在一些实现方式中,可以随时间跟踪HMD的位置,并且可以确定HMD在交互式环境中的位置的分布。可以至少部分地基于HMD的历史位置分布来确定HMD的未来位置。
图7示出了根据本公开的实现方式的房间700的俯视图,其示出了HMD的位置分布。房间700定义了交互式真实环境,用户在该环境中操作HMD,并且其中安置有摄像机108和收发器110。线704a-e和706a-d是基于房间700中的HMD的历史位置的等距位置分布线。也就是说,随着时间的推移跟踪HMD在交互期间的位置,例如通过以周期性间隔记录HMD的位置,并且房间700中的位置的分布使得密度(每单位面积的出现次数)或者出现频率或出现概率沿着线704a-e或706a-d中的给定的一条线相同或大致相同。在所示的实现方式中,所示的最高等距值是线704a和706a的等距值,线704b,c和d以及线706b,c和d的值减小。在所示的实现方式中,线704e表示所示的最低等距值。
应理解,区域708和710表现出HMD的位置的最高分布密度。换句话说,与其他位于房间700的其他区域的单位区域中相比,HMD位于区域708和710的单位区域中具有统计学上更高的概率。在所示的实现方式中,在房间700中示出了沙发/椅子702。区域710和周围区域对应于在沙发702上的中心就位位置,因为用户可能在坐在沙发702上时使用HMD花费大量时间。区域708和周围区域是沙发的前部,因此可以指示用户在使用HMD时站在沙发前部的区域。
在一些实现方式中,位置分布被用作用于确定HMD的预测的未来位置的因素。例如,概率或权重可以作为位置的函数来确定,该函数指示HMD位于该位置的可能性,并且这可以用作用于确定HMD的预测的未来位置的因素。
在相关实现方式中,对于给定的交互式应用,可以确定跨多个用户的HMD位置/移动模式,例如通过记录多个HMD的位置/移动信息并将此类信息上载到服务器以进行处理和分析。位置/移动信息与交互式应用的状态相关,因此交互式应用的给定状态的HMD位置/移动模式(例如,在由交互式应用定义的虚拟环境内的特定时间或地理位置处)可被确定。这可以提供关于特定应用状态的HMD位置和移动的众包数据,其可以用于在与交互式应用交互期间预测特定用户的HMD的未来位置和移动。
图8概念性地示出了根据本公开的实现方式使用预测模型来确定波束成形参数。预测模型800被配置为使用一个或多个输入来预测HMD的未来位置和/或移动(例如,速度、加速度)。
举例来说,此类输入可以包括以下中的任一者:运动数据808(例如速度(方向和速度)、加速度、旋转等)、位置数据810(例如3D坐标、相对位置信息、历史位置信息等)、注视方向812、用户生物计量814(例如身高、体重、心率、呼吸、瞳孔扩张等)、用户简档/历史(例如用户偏好、用户移动/手势模式等)和应用状态818(例如,应用变量状态、虚拟对象状态等)。
基于预测模型的输出,调整收发器的波束成形参数(标号802),其可以包括调整主瓣的方向和/或角展度。应理解,收发器的波束成形被预测性地调整,使得波束成形调整可以与HMD的实际移动同时或甚至在HMD的实际移动之前发生,以便确保HMD保持在波束成形主瓣内并且被提供有持续的强无线连接。
在操作804,可以处理反馈数据以评估波束成形调整的有效性和/或预测模型的准确性。在一些实现方式中,反馈数据包括由HMD采取的信号质量测量,其指示HMD从收发器接收的无线信号的质量。举例来说,此类信号质量测量可以包括信号强度、信噪比、带宽、误差或由收发器发送并由HMD接收的无线信号的质量的其他度量。通过评估收发器的信号质量,可以评估波束成形调整的有效性和/或预测模型的准确性。
在一些实现方式中,反馈数据包括指示HMD的实际位置和/或移动的位置和/或移动数据,其可以与由预测模型生成的预测位置/移动进行比较,以评估预测模型的准确性。
基于以上所述,然后在操作806,可以调整预测模型800以提高其准确性。在一些实现方式中,可以应用机器学习技术来改进预测模型。
图9示出了根据本公开的实现方式的用于使用预测的未来位置来调整波束成形参数的方法。在方法操作900,由摄像机捕获包括HMD的真实世界交互式环境的图像。在方法操作902,HMD的惯性移动由HMD的一个或多个惯性传感器感测。在方法操作904,至少部分地基于感测到的HMD的惯性移动和HMD的捕获图像中的一者或两者来确定HMD的当前位置。
在方法操作906,至少部分地基于感测到的HMD的惯性移动和HMD的捕获图像中的一者或两者来生成运动矢量。在方法操作908,使用运动矢量和HMD的当前位置来预测HMD的未来位置。在方法操作910,基于所述HMD的预测的未来位置来调整收发器的一个或多个波束成形参数,诸如方向和/或角展度。
尽管在本公开中,通常参考预测HMD的未来位置并将RF波束成形方向朝向预测的未来位置导向来描述实现方式,但是应理解,在一些实现方式中,不一定确定特定的未来位置。而是,基于各种输入参数实现以预测方式调整波束成形方向,而无需具体确定或识别特定的未来位置。应理解,在此类实现方式中的波束成形方向将以基于将朝向预测的未来位置(如果预测的未来位置被确定的话)的输入的方式预测性地导向。
图10概念性地示出了根据本公开的实现方式的用于在计算机和HMD之间提供无线通信的系统。计算机106连接至摄像机108和收发器110。如所指出,在一些实现方式中,摄像机108和收发器110可以是同一装置的一部分,或者在其他实现方式中可以是单独的装置。摄像机108包括控制器1026,控制器1026被配置为处理从计算机106接收的指令以控制摄像机的操作参数,例如光圈、传感器增益等。收发器110包括控制器1028,控制器1028被配置为处理来自计算机106的指令以控制收发器110的操作,包括控制收发器的传输器1030和接收器1032。应理解,传输器1030和接收器1032可以被配置为根据本公开的原理实现波束成形。
一般而言,计算机106执行交互式应用1016(例如,视频游戏)以生成视频数据(包括图像和音频数据),该视频数据被无线传输到HMD 102以渲染到HMD 102的显示器1048。调整收发器110的波束成形方向和/或展度,以便保持朝向HMD的无线覆盖和方向性。HMD包括各种惯性传感器1038,例如包括一个或多个加速度计1040、陀螺仪1042和磁力仪1044。经由从HMD的收发器1034到收发器110的传输,由惯性传感器1038处理的数据由HMD传送到计算机106。计算机106包括传感器数据处理器1000,其被配置为处理来自HMD的惯性传感器数据,例如以确定或识别HMD的移动。
摄像机108被配置为捕获用户操作HMD的交互式真实环境的图像。由摄像机108捕获的图像由图像分析器1002进行处理,例如以识别HMD,诸如通过识别HMD 102的灯1046。
跟踪逻辑1004被配置为进一步分析、识别和/或量化HMD的位置、取向和/或移动。为此,位置分析器1006被配置为基于惯性传感器数据和捕获图像数据来确定HMD的位置。取向分析器被配置为基于惯性传感器数据和捕获图像数据来确定HMD的取向。运动分析器被配置为基于惯性传感器数据和捕获图像数据来确定HMD的运动。
预测逻辑1018使用模型基于诸如HMD 102的前述位置、取向和移动的各种输入来预测HMD 102的未来位置和/或移动。在一些实现方式中,预测逻辑1018使用额外输入,诸如用户设置1014或来自交互式应用1016的信息。例如,交互式应用1016可以基于交互式应用的当前状态提供关于HMD的未来预期位置或移动的信息。波束成形处理器1020被配置为基于所述HMD的预测的未来位置和/或移动来确定波束成形参数及其调整。方向处理模块1022被配置为确定收发器110的波束成形方向及其调整。展度处理模块1024被配置为确定收发器110的角展度及其调整。更新的波束成形参数被传送到收发器110的控制器1028,其实现收发器的参数的调整,诸如将波束成形方向导向/更新到更新的方向,和/或更新角展度。
在一些实现方式中,HMD 102包括信号分析器1036,其被配置为评估从收发器110接收的信号的质量。例如,信号分析器1036可以分析来自收发器110的无线信号以确定其信号强度。该信息可以作为反馈提供回计算机106,以便能够评估是否正在保持强信号并且波束成形方向和角展度的预测调整是否为有效的。在一些实现方式中,反馈数据经由单独的通信信道和/或单独的通信协议/上下文提供,而不是用于将视频数据传输到HMD 102。例如,在一些实现方式中,反馈数据通过网络112从HMD传输到计算机106(而不是经由收发器110传输)。作为示例,网络112可以包括无线路由器或其他无线联网装置,HMD 102通过该无线路由器或其他无线联网装置无线地访问网络112。计算机106还可以通过有线或无线连接访问网络106。
在通过收发器110的无线连接丢失的情况下,使用替代通信协议/上下文来提供反馈数据是有益的,在这种情况下,用于通信回计算机106的替代路径是可能的。应理解,反馈数据和其他类型数据的传输的带宽要求可以显著小于视频数据传输所需的带宽要求。因此,通过具有较小带宽(例如,与用于将视频数据传输到HMD的带宽相比)的通信上下文(例如传统的WiFi网络连接)的反馈数据的传输,对于此类目的可为足够的。
在一些实现方式中,反馈数据的传输发生在与用于向HMD无线传输视频数据的频带不同的频带上。例如,视频数据可以在60GHz的频带上传输到HMD,而反馈数据在不同的频带上传输,例如2.4GHz或5GHz的频带。应理解,在此类实现方式中,收发器110的传输器1030和HMD的收发器1034的对应的接收器被配置为在60GHz下操作,而收发器110的接收器1032和HMD的收发器1034的对应的传输器被配置为在不同的频带下操作。
如已经指出,在一些实现方式中,收发器110应用波束成形以用于发送和接收的目的。然而,在一些实现方式中,可以由收发器110选择性地应用波束成形以仅用于发送,而不应用波束成形来进行接收。以这种方式,即使发送到HMD受到损害或丢失(例如,由于主瓣未能充分跟踪HMD),更可能保持从HMD返回到收发器的通信。在其他实现方式中,可以以不同的方式应用波束成形以用于发送与接收。例如,用于由收发器110接收的波束成形的角展度可以被配置为大于由收发器110发送的波束成形的角展度。这可以为从HMD接收通信(相对于发送到HMD)提供更大的信号稳定性,同时仍然在接收方向性方面提供一些益处。
在更进一步的实现方式中,收发器110的信号接收的质量可以用作指示收发器的波束成形方向是否有效地朝向HMD导向的额外反馈数据。
本公开的实现方式采用波束成形作为信号处理技术以实现定向信号发送和/或接收。波束成形技术需要操作相控阵列的发送或接收元件,以有目的地在所需方向和所需角宽度上产生相长干涉。波束成形可用于实现发送和接收的空间选择性。一般而言,发送波束成形需要在多个空间上分开的天线中的每一个处控制信号的相位和相对振幅,而接收波束成形需要组合从已经相位和振幅调整的此类天线接收的信号。关于波束成形的基本讨论可以参考“A Primer on Digital Beamforming”,Toby Haynes,频谱信号处理,1998年3月26日(http://www.spectrumsignal.com/publications/beamform_primer.pdf),其公开内容通过引用结合到本文中。
尽管为了确定HMD的位置和移动而通常参考惯性数据和捕获图像数据的使用来描述实现方式,但是应理解,本公开的原理可以应用于用于确定HMD的位置和/或取向和/或移动的任何已知方法。例如,在一些实现方式中,HMD包括一个或多个面向外的摄像机,其可用于移动和位置跟踪,例如使用本领域已知的同时定位与建图(SLAM)技术。在一些实现方式中,可识别的对象(例如,发射器(例如,RF、IR、可见光谱、激光、超声波、磁性等)、灯、反射对象、标签、成形对象、图案等)可以定位在局部环境中协助进行此类跟踪。可以通过安装在HMD上的适当传感器(例如,摄像机、光敏二极管、磁传感器、传声器等)来检测此类对象。应理解,此类传感器可以包括围绕HMD分布的一个或多个传感器,或者预定配置中的传感器阵列,其可以协同操作以实现HMD的定位和跟踪。用于定位和跟踪HMD的任何已知方法可以应用于根据本公开的原理实现预测RF波束成形,以实现完全无线操作的HMD。本文没有详细描述所有此类实现方式,但是对于本领域技术人员来说将是显而易见的并且作为本公开的一部分被理解。
图11A是示出根据本公开的实现方式的波束成形传输器(诸如收发器110的传输器1030)的部件的示意图。编码器1100被配置为接收和编码用于无线传输的信息(例如,用于传输到HMD的视频数据)。编码器1100可以格式化或以其他方式处理用于传输的信息,例如,执行块编码、压缩、添加用于减少误差的冗余等。调制器1102将编码数据变换为波形,例如通过将二进制数字映射到载波频率(例如脉冲幅度调制(PAM)、相移键控(PSK)等)。在一些实现方式中,载波频率由载波振荡器1104生成。尽管没有具体示出,但是在一些实现方式中,由调制器生成的波形可以被频率上变频和/或放大。
波形被提供给波束成形器1106,波束成形器1106并行地将波形馈送到多个振幅调整器1108a-d,并且馈送到多个移相器1110a-d。振幅调整器和移相器使得能够针对天线阵列1114中的每个天线1116a-d单独调整/调谐波形的振幅和相位。提供对应的放大器1112a-d以放大经调整的波形以经由天线1116a-d进行传输。天线阵列1114中的天线1116a-d在空间上以预定配置布置。如上所述,来自天线阵列中的天线的相位和振幅调整信号的传输产生具有相长干涉和相消干涉的图案的波前,其产生所需的波束成形效果。
图11B是示出根据本公开的实现方式的波束成形接收器(诸如收发器110的接收器1032)的部件的示意图。天线阵列1120包括多个天线1122a-d。由天线阵列1120接收的信号被馈送到波束成形器1124,波束成形器1124通过多个相位调整器1126a和振幅调整器1128a为每个天线单独地调整接收信号的相位和振幅。然后经由组合器1130组合经调整的信号,组合器1130还可以放大组合信号。尽管没有具体示出,但是在一些实现方式中,组合信号可以被频率下变频和/或单独放大。
解调器1132解调组合信号以提取编码数据,并且解码器1134对编码数据进行解码以提取原始信息。
在一些实现方式中,天线阵列1114(传输器天线阵列)和天线阵列1120(接收器天线阵列)是单独的装置。然而,在其他实现方式中,天线阵列1114和1120是相同的装置,例如,双工器被配置为适当地转移发送和接收信号。在各种实现方式中,天线阵列可以是微带/贴片天线阵列或其他类型的天线阵列,其具有以预定配置定位的多个天线,以根据本公开的原理实现波束成形。如本领域中已知的贴片天线可具有数十至数百个单独的天线元件。
在一些实现方式中,根据本公开的原理的无线通信(例如,用于将视频数据传输到HMD)在60GHz的频带上发生。在一些实现方式中,无线通信发生在其他频带上,并且还可以利用不同频带的组合。
图12A概念性地示出了根据本公开的实现方式的具有多个天线阵列的HMD。如图所示,HMD包括定位于HMD 102前部的天线阵列1200,定位于HMD 102顶部的天线阵列1202,定位于HMD 102一侧的天线阵列1206,以及定位于HMD 102后部的天线阵列1208。天线阵列连接至选择器1210,选择器1210控制哪个天线阵列是有源的,以便收发器1034进行信号接收和/或信号发送。随着用户100在交互式真实环境中移动,HMD的位置和取向可以改变,从而改变哪个天线阵列被最佳地定位。在一些实现方式中,最佳定位的天线阵列可以是最靠近收发器或者向收发器提供最佳视线的天线阵列。因此,选择器1210可以被配置为在各种天线阵列之间切换,选择最佳定位的天线阵列。在一些实现方式中,选择器1210被配置为连续地测量来自天线阵列1200、1202、106和1208中的每一个的接收信号强度,并且确定哪个提供最高信号强度,并且然后如果必要,从使用天线阵列中的当前天线阵列切换到使用提供最高信号强度的天线阵列。
标号1204示出了一个天线阵列的扩展表示。每个天线阵列可包括多个单独的天线元件1205。
图12B、图12C和图12D示出了根据本公开的实现方式的交互式真实环境中的HMD的俯视图,示出了有源天线阵列在HMD上的切换。在图12B中,HMD 102的前部面向收发器110。根据本公开的实现方式,收发器110具有朝向天线阵列1200的波束成形方向1220,天线阵列1200是HMD的当前有源天线阵列,从该天线阵列处理接收信号以提取/解码视频数据以用于在HMD上进行渲染。额外天线阵列1206a、1206b和1208当前处于无源状态,这意味着从这些天线阵列接收的信号不像天线阵列1200那样专门处理用于视频渲染。然而,仍然可以监视天线阵列1206a/b和1208的信号,以例如确定它们的信号强度,以确定哪个天线阵列在给定时刻被最佳地定位。
在图12C中,HMD已沿顺时针方向旋转,从而移动天线阵列1200。因此,收发器被调整为具有朝向天线阵列1200的波束成形方向1222,并且波束成形方向1222可能已经根据本文所讨论的原理预测性地导向。天线阵列1200保持为有源天线阵列,而其他天线阵列为无源的。
然而,在图12D中,HMD 102已经旋转到其中天线阵列1206a现在是最近的点,并且向收发器110提供最无阻挡的视线。因此,有源天线阵列从天线阵列1200切换到天线阵列1206a。另外,收发器的波束成形方向被重定向到新的有源天线阵列1206a而不是阵列1200。
应理解,在一些实现方式中,可以使用如前所述的惯性数据和捕获图像数据来确定交互式环境中HMD的取向(例如,相对于收发器)。然后可以利用HMD的取向来确定哪个天线阵列对于HMD的信号接收是最佳的。另外,可以以预测方式执行当前描述的天线切换方案,使得基于HMD的预测的未来取向来激活或停用天线阵列。
图13示出了根据本公开的实现方式的显示器(例如,HMD)的刷新。在许多显示器中,按行渲染显示器的内容,也称为扫描输出或刷新或更新。一次渲染一行,按从上到下的顺序。在每行中,与该行相关联的像素从左到右刷新。这种类型的渲染为显示器上的所有像素提供相同的刷新频率。
本文呈现的实现方式定义了显示器内的不同区域,并且每个区域中的像素被赋予不同的渲染优先级。渲染优先级确定像素的显示方式。在一个实现方式中,像素的渲染优先级越高,像素将被刷新的频率越高。
如本文所使用的,显示器上的识别区域的渲染策略确定如何扫描输出所述识别区域。渲染策略包括一个或多个值(或图像质量设置),用于识别区域的显示方式。在一个实现方式中,渲染策略包括以下中的一者或多者:该区域的屏幕更新频率(例如,每秒30次,但是其他值也是可能的)、渲染分辨率、在该区域中渲染图像的复杂性、渲染顺序值或可能影响图像质量和/或用于渲染用户视图的图像数据量的其他设置。
渲染分辨率确定是否将单独刷新区域中的所有像素。在最大分辨率(例如,100%)下,区域中的所有像素将用颜色和亮度的各个值进行刷新。然而,有时该区域的分辨率将降低(例如,64%),这意味着每次通过仅刷新该区域中的一些像素。例如,在50%的渲染分辨率下,该区域中的一半像素将在一个周期中刷新,而另一半将在下一个周期中刷新。
在该区域中渲染图像的复杂性基于为区域中的像素生成像素值所需的处理量。例如,具有均匀颜色的背景区域或者填充有来自背景图像的像素值的区域将比包括移动化身的区域进行渲染更不复杂。取决于化身的一些属性,复杂性可能大大增加,诸如当化身包括长的自由流动的头发、化身是具有毛皮的动物时等等。此外,包括镜子的区域也可能具有复杂的处理以确定像素值,因为镜子上的图像将取决于用户的注视,并且可能需要计算来确定镜子瞄准的位置。
在另一实现方式中,通过降低用于存储像素信息的内存单元的数量来改变区域的定义。在这种情况下,如果区域的定义低于最大值,则用于存储像素数据的内存相应地减少。例如,定义为25%的区域仅使用与100%定义相关联的25%的内存。这意味着相同的像素数据用于扫描该区域中的四个像素的组。
此外,显示技术可以放大与区域相关联的源内存以填充像素区域。在其他实现方式中,可以使用用于放大或缩小的不同方法,诸如最近邻插值、具有多重映射(mipmapping)的最近邻、双线性滤波、三线性滤波或各向异性滤波。
例如,双线性滤波是用于在使用第二多个像素在显示器的区域上显示第一多个像素时平滑纹理的纹理滤波方法,其中第二多个像素中的像素的数量不同于第一多个像素中的像素的数量。换句话说,第二多个像素需要第一多个像素的缩放(放大或缩小)。
很多时候,当在屏幕上绘制纹理形状时,纹理不会完全按照存储的方式显示,没有任何失真。因此,大多数像素最终需要使用纹理上纹素(纹理空间的单位)之间的点,假设纹素是位于各自单元格中某处的点。双线性滤波使用这些点在最接近像素所代表的点(通常在像素的中间或左上)的四个纹素之间执行双线性插值。
通过降低一个区域中的分辨率或定义,可以将计算资源分配给屏幕上的其他区域,这些区域对于为用户提供更好的体验更为关键。
渲染顺序值是由计算装置分配的值,以定义渲染区域的顺序。在一个实现方式中,计算装置向每个区域提供渲染顺序值,然后以通过渲染顺序值定义的顺序扫描输出所有区域。换句话说,计算装置创建用于进行渲染的所有区域的排序列表。
在一个实现方式中,一个或多个渲染规则定义渲染策略。例如,渲染策略可以包括一个规则(例如,从左到右和从上到下显示像素),或者可以包括两个或更多个规则。例如,第一规则可以定义显示器中心的区域将具有比显示器外围中的区域更高的优先级,并且第二规则可以定义具有游戏角色的区域具有比不具有游戏角色的区域更高的渲染优先级。
图14示出了根据本公开的实现方式的在HMD的显示器上示出的游戏场景。在一些实现方式中,使用注视跟踪和HMD运动跟踪来优先HMD显示器1402上的不同区域的扫描输出。
在一个实现方式中,屏幕被划分为多个区域或部分,并且用不同的优先级和不同的分辨率级别更新区域。这意味着某些区域可能比其他区域更频繁地刷新或具有更高的分辨率。
HMD跟踪有助于确定用户将投射他们的注视的位置,因为当用户打算改变他们的注视时,即使头部的移动与眼睛的移动相比可能是轻微的,也有将头部向相同方向移动的自然本能。例如,如果用户正向前看并且头部(与HMD一起)开始向左移动,则计算装置预测用户将他们的注视向左移动。响应于该检测,屏幕左侧的区域被渲染的优先级高于屏幕右侧的区域。事实上,当场景向左移位时,朝向屏幕右边界的区域很可能会从视图中消失。
通过优先不同区域的扫描输出,可以通过关注用户正在看的位置或用户将要在下一步看的位置为用户提供更好的体验,并且更有效地应用计算机资源以使得能够更快地渲染用户的视图且质量更好。
应理解,当根据本文描述的实现方式将视频数据无线传输到HMD时,有效利用可用无线传输带宽更加重要,因为带宽可能受限制和/或可能根据用户的移动而改变。因此,本文描述的优先渲染方法实现了更有效的数据使用,这可以改善整体用户体验,例如,实现更高的帧速率和/或更少的丢帧,以获得更平滑的观看体验。
HMD运动跟踪很重要,因为有时检测HMD运动比注视运动更快。在一些情况下,在视觉上跟踪HMD的计算装置具有比HMD更多的计算资源,因此计算装置能够检测HMD运动并基于HMD运动预测HMD的轨迹。另外,HMD向计算装置提供关于注视的当前位置的信息,并且计算装置能够组合两个信息源以便更好地预测注视的轨迹。
图14显示了虚拟现实游戏的屏幕。本文呈现的实现方式是参考虚拟现实显示器描述的,其中屏幕仅显示由计算装置创建的场景。然而,本文呈现的原理也可以应用于增强现实游戏,其中屏幕上的视图是真实世界图像和计算装置生成图像的组合。在一个实现方式中,游戏在广阔的虚拟世界中进行。用户可以随时看到虚拟世界的仅一部分,并且用户能够在虚拟世界中移动。当用户在虚拟世界中移动时,虚拟世界的其他部分被暴露。
在一些实现方式中,当前用户的视点1404被给予比用户的视点1404之外的区域更高的渲染优先级。用户的视点被定义为显示器上用户正聚焦其视图的区域。因此,大多数游戏交互发生在用户的视点1404内。当然,用户的注视集中在视点1404周围。
许多人能够在他们的视野内看到从向左约90°到向右约90°的区域。然而,尽管一个人可能在这些外围区域内感觉到一些运动或变化,但是用户视觉外围的区域并未被清楚地感知到。
在图14所示的实现方式中,视点被定义为屏幕上的矩形部分,其中用户的注视在该矩形部分的中心。然而,可以定义其他类型的视点区域。例如,在一个实现方式中,视点区域被定义为围绕屏幕上的用户的注视点的圆圈。参考从眼睛之间的中点到屏幕上的注视点的线来定义视角。然后,通过视角确定视点圆圈的半径。在一些实现方式中,视角可以具有5°至45°范围内的值,但是其他值也是可能的。
在一些实现方式中,渲染策略要求具有游戏角色的区域被赋予比没有游戏角色的区域更高的渲染优先级。在其他实现方式中,另一个渲染策略给游戏角色和由游戏排名为重要游戏对象的特殊游戏对象提供更高的扫描输出优先级。例如,重要的游戏对象可以是出口门、汽车或飞机中的导航控制台、舒缓游戏上的目标、敌机等。通常,重要的游戏对象是可以由用户对其进行操作的对象,而非重要的游戏对象在后台渲染以填充场景。
在图14中,区域1406(包括游戏角色1410和1412)和区域1408(包括游戏角色1414)是具有游戏角色的区域,并且被赋予比显示器的其余部分更高的渲染优先级。当然,在一些实现方式中,这仅是计算最终渲染优先级的因素,因为渲染优先级可以通过一些其他规则来改变,例如当用户移动他们的注视或他们的头部时。
在一个实现方式中,当用户快速移动他们的头部时可能发生屏幕上的模糊,因为快速运动需要快速更新显示器,并且HMD可能没有足够的计算资源来跟上用户的运动。为了避免在HMD快速运动时模糊,渲染策略开始更快地刷新与用户的运动相关联的区域,并且一些其他区域可能以较低频率或较低分辨率刷新。一旦HMD停止移动,就会恢复扫描输出的图像的更高质量。
此外,应注意,为了预测用户的注视的轨迹,计算装置在预定时间段内跟踪用户的注视的轨迹,并且还在预定时间段(或其他一些时间段)内跟踪HMD的轨迹。历史数据用于通过分析注视运动和HMD运动中的趋势来预测用户的注视的轨迹。
应注意,图14中所示的实现方式是示例性的。其他实现方式可以利用不同类型的视点区域、不同类型的显示器、不同的渲染策略等。因此,图14中示出的实现方式不应被解释为排他性或限制性的,而是示例性或说明性的。
图15示出了根据本公开的实现方式在显示器中创建用于优先渲染的区域。在图15的实现方式中,在屏幕1502上定义了相同大小的多个区域。在示例性实现方式中,在屏幕上定义网格,其创建30个区域(6×5)。在其他实现方式中,屏幕上定义的区域不具有相同的大小。例如,显示器中心的区域小于显示器外部的区域,因为通常中心区域对于提供更好的用户体验更为重要。因此,这些中心区域被赋予更高的渲染优先级。
在一些实现方式中,基于游戏活动或基于用户正在做什么,一些区域被赋予更高的渲染优先级。例如,如上面参考图6所讨论的,检测用户的头部的运动并用于增加预测用户的注视的区域的优先级。
在一个实现方式中,具有游戏角色的区域被赋予比没有游戏角色的区域更高的优先级。在图15的示例性实现方式中,区域1504和1506内的区域包括游戏角色的部分。在一个实现方式中,渲染策略包括增加用于渲染区域1504和1506的优先级的规则。另一种渲染策略为屏幕中心的区域提供高渲染优先级,并为显示器外围的区域提供低渲染优先级。
在一个实现方式中,通过考虑确定优先级的多个因素或规则来计算每个区域的渲染策略。以下等式用于确定区域ri:的渲染策略rp值
rp(ri)=f(rule1(ri),rule2(ri),…,rulen(ri))
其中rp(ri)是区域ri的渲染策略,并且rule1-rulen是为确定渲染策略而定义的策略规则。例如,一个规则可以规定显示器中心的区域被赋予更高的渲染优先级,第二个规则可以确定具有游戏角色的区域被赋予更高的渲染优先级,第三个规则可以赋予该注视点周围的区域更高的优先级,第四规则可以确定当用户移动他们的头部时,预测头部被转动的区域被赋予更高的渲染优先级等。
在一个实现方式中,渲染策略包括该区域的屏幕更新频率、渲染分辨率和渲染顺序值中的一者或多者。在一个实现方式中,为每个规则赋予权重以便计算该区域的渲染策略。在一些实现方式中,可以基于过去的经验动态调整权重。
图16是根据本公开的实现方式的用于渲染HMD上的图像的流程图。尽管顺序地呈现和描述了此流程图中的各种操作,但本领域的普通技术人员将理解,某些或全部操作可以以不同的顺序执行、被组合或省略、或并行地执行。
在操作1602中,该方法利用HMD内的一个或多个第一摄像机跟踪用户的注视。从操作1602,该方法前进到操作1604,其中该方法跟踪HMD的运动。跟踪该运动包括分析用不在HMD中的第二摄像机(例如,图1中的摄像机108)拍摄的HMD的图像。
从操作1604,该方法前进到操作1606,其中基于注视和HMD的运动来预测用户的注视的运动(例如,注视的预测轨迹)。此外,从操作1606,该方法前进到操作1608,其中确定在HMD的显示器上定义的多个区域的渲染策略。基于注视的预测运动确定渲染策略。
从操作1608,该方法前进到操作1610,以基于先前计算的渲染策略在显示器上渲染图像。另外,在一个实现方式中,当HMD移动时,区域的渲染分辨率降低,并且当HMD变为静止时,区域的渲染分辨率增加。
在一些实现方式中,接收关于HMD的运动的惯性信息,惯性信息由HMD中的惯性传感器捕获。在另一实现方式中,通过分析用不在HMD中的第二摄像机拍摄的HMD的图像来跟踪HMD的运动。在又一实现方式中,通过将惯性信息与来自用第二摄像机拍摄的图像的图像分析的结果相结合来跟踪HMD的运动。
在又一实现方式中,呈现了一种用于在HMD上渲染图像的方法。该方法包括用于跟踪观看由HMD内的显示器创建的视图的用户的注视的操作。此外,该方法包括用于基于用户的注视为在显示器上渲染的多个游戏对象分配渲染优先级值的操作。每个游戏对象的渲染优先级值定义渲染频率和渲染分辨率。另外,该方法包括用于基于游戏中的每个游戏对象的重要性值来改变渲染优先级值的操作。在另一操作中,该方法根据渲染优先级值在显示器上渲染多个游戏对象。
在另一实现方式中,基于源图像和正在渲染源图像的区域来改变实际源图像。例如,游戏角色在直接注视下(例如,游戏角色在用户的视野的中心附近)时相比于游戏角色不在直接注视下(例如,游戏角色不在用户视野的中心附近)时,游戏角色被渲染得更详细。
声音定位是指听者在方向和距离上识别检测到的声音的位置或起源的能力。它还可以指声学工程中的方法,用以模拟虚拟3D空间中的听觉线索的放置。人类听觉系统使用几个线索进行声源定位,包括双耳之间的时间和水平差异、光谱信息、时序分析、相关性分析和模式匹配。
人类有两只耳朵,但可以在三个维度上定位声音—范围(距离)、上下方向、前后方向、以及任何一侧。大脑、内耳和外耳共同作用来推断位置。人类通过从一只耳朵(单耳线索)获取线索,并通过比较两只耳朵收到的线索(差异线索或双耳线索)来估计源的位置。差异线索中包括到达时间差和强度差异。单耳线索来自声源和人体解剖结构之间的相互作用,其中原始来源的声音在声音进入耳道之前被修改以供听觉系统处理。这些修改对源位置进行编码,并且可以通过与源位置和耳位置相关的脉冲响应来捕获。该脉冲响应被称为头部相关脉冲响应(HRIR)。如果声音已经在源位置播放,并且听众的耳朵在接收器位置处,则用HRIR将任意来源的声音的卷积转换为听者将听到的声音。HRIR可用于产生虚拟环绕声。
声音定位函数f(本文也称为声音函数、定位函数,并且有时简称为“函数”)是基于声音和被感知为声音原点的空间位置产生本地化声音的函数或算法。当通过扬声器播放时,本地化声音给听众留下了声音源于所需位置的印象,即使声音实际上源于扬声器。函数f可以在数学上表示为:
ls=f(s,l) (1)
其中s是声音(例如,狗吠),l是其中声音被认为起源的位置,并且ls是本地化声音。声音定位函数的一个示例是头部相关传输函数(HRTF),其为表征耳朵如何从空间中的点接收声音的响应。用于两只耳朵的一对HRTF可用于合成似乎来自空间中特定点的双耳声。HRTF也可以描述为对从自由空气的方向到到达鼓膜的声音的声音的修改。这些修改包括听者外耳的形状、听者头部和身体的形状、播放声音的空间的声学特性等。所有这些特性都会影响听者如何准确地判断声音所来自的方向。由于每个人的身体差异,每个人都有不同的HRTF。使用HRTF描述了用于声音定位的本发明的实现方式,但是考虑到收听者的物理特性的任何其他形式的声音定位可以与本发明的实现方式一起使用。
图17示出了本发明的实现方式,其中在耳机1716处递送的声音被修改,使得用户102感知由耳机1716递送的声音,好像声音是从虚拟位置“A”发出,而不是感知声音直接来自耳机1716。跟踪HMD102和/或耳机1716(也称为头戴式受话器、耳机或听筒)在本地交互式环境中的位置。应理解,在一些实现方式中,可以通过跟踪HMD来推论或推断耳机的位置。一旦耳机的位置已知,计算机106就操纵声音(例如,使用用户的HRTF)以产生本地化声音,以使用户相信声音来自虚拟位置A。
在图17所示的实现方式中,本地化声音(以音频数据/信号的形式)被无线传输以供耳机1716渲染,耳机1716可以是无线的或有线的。在一些实现方式中,音频数据/信号被无线传输到HMD 102,HMD 102然后可以将音频数据/信号传输到耳机1716(例如,经由有线连接)以渲染声音。在一些实现方式中,在传输到耳机之前,HMD 102进一步处理音频数据/信号。例如,由HMD接收的无线传输的音频数据可以以压缩音频格式进行数字编码,以减少对音频的无线带宽要求。因此,HMD 102可以对编码的音频数据进行解码以生成传输到耳机的模拟音频信号。一旦耳机1716播放了本地化声音,用户就将声音感知为来自虚拟位置A。
在其他实现方式中,使用与HMD不同的单独无线传输信号将音频数据/信号直接无线传输到耳机。在此类实现方式中,使用单独的传输信号将图像数据和音频数据单独地分别传输到HMD 102和耳机1716。然而,应理解,本文描述的波束成形技术可以应用于两者。
不同的人具有不同的HRTF,并且当使用用户的HRTF时递送最引人入胜的体验。在一个实现方式中,当用户的HRTF不可用时,使用标准HRTF。标准HRTF考虑了人类的平均特性。尽管未使用用户的HRTF,但标准HRTF仍然可以为用户提供逼真的体验。另外,可以利用校准方法来进一步定制特定用户的声音定位体验,以便为用户开发HRTF。
跟踪耳机的位置的方法有多种,耳机的位置继而定义了用户耳朵的位置。通常,我们在本文称为跟踪用户耳朵的位置,因为耳朵的位置决定了声音如何被定位。为了便于描述,我们有时在本文是指跟踪用户的位置、跟踪用户头部的位置、跟踪HMD的位置或跟踪用户佩戴的耳机的位置。所有这些跟踪方法都是等效的,因为耳朵的位置可以从头部、用户、HMD或耳机的位置推论出来。
在图17的实现方式中,耳机1716可包括光源,诸如发光二极管(LED)1714。摄像机108捕获用户100所处空间的图像,然后计算机106执行图像分析以确定LED 1714的位置。图像中较亮的点有助于识别LED的位置。另外,基于摄像机108拍摄的图像中的LED 1714的大小来估计从摄像机108到耳机的距离。一旦确定了LED 1714的位置,根据耳机的物理特性,通过假设LED位于耳朵之间并且在连接耳朵的线上方几英寸处来估计用户耳朵的位置。
应注意,图17中所示的实现方式是示例性的。其他实现方式可以使用不同的方法来跟踪用户耳朵的位置,或者可以利用跟踪方法的组合来提高准确性。例如,可以使用面部识别、超声波通信、RFID、红外灯、全球定位系统(GPS)等来执行位置跟踪。因此,图17中所示的实现方式不应被解释为排他性或限制性的,而是示例性的或说明性的。
声音投射为用户提供了引人入胜的体验,使得耳机从听觉体验中“消失”。用户不会感觉到声音来自位于耳朵周围的两个扬声器元件,而是声音来自空间中的特定点,这取决于具体情况可以与便携式装置、来自游戏的虚拟元件、虚拟用户等相关联。当声音的虚拟源改变或者当用户的位置改变时,声音投射适应于声音似乎从正确的位置发出。
图18示出了根据本公开的实现方式用户经由具有真实的声音递送的HMD观看VR环境。尽管玩家100在房间内,但是虚拟现实(在本文也称为虚拟场景)可以延伸超出房间的物理边界。虚拟场景的参考点1802位于桌子1804的顶部。在一个实现方式中,点P0 1802是参考点,并且也是具有坐标(X0=0,Y0=0,Z0=0)的坐标原点。玩家1806b正在与玩家100玩相同的游戏但处于远程位置,并且玩家1806b被表示为玩家100的游戏中的虚拟元素。玩家1806b手持便携式装置1808b,其已经与玩家1806b所在的物理空间中的另一个参考点同步。
在一个示例实现方式中,虚拟场景被绑定到参考点,因为虚拟场景的几何形状(如通过HMD的屏幕看到)至少部分地基于参考点。例如,可以相对于参考点确定虚拟场景中的虚拟对象的坐标。
可以使用任何测量标准来测量坐标。然而,为了提供可视化示例,并且不限制使用的实际坐标,如果以米为单位测量虚拟场景的坐标,则坐标(1,0,0)的对象将位于参考点右侧一米处。当然,可以在场景改变时动态地更新对象(真实或虚拟)的坐标,诸如当虚拟对象在场景内移动时。此外,更改可以由计算机设置的动作(例如,交互式程序)定义、由用户的动作驱动或两者的组合。另外,为了清楚起见,交互式程序可以是任何类型的程序,诸如视频游戏、商业程序、互联网接口、或简单地为提供对数据、其他用户、程序、或扬声器可能或可能不显示或投射的对象的访问的图形用户界面。
此外,其他实现方式可以具有不同的坐标系或使用缩放。例如,坐标系,而不是笛卡尔坐标系,可以是极坐标系、球面坐标系、抛物线坐标系等。另外,参考点不一定是坐标系的原点,而是可以定位在不同的位置。为了提供示例,参考点可以位于坐标(5,5,5)处以在每个方向上启用5米的缓冲器,然后必须在超过5米的点中使用负坐标值。在另一种情况下,虚拟对象按比例构建,并且坐标也按比例测量。例如,虚拟对象可以以1:10的比例构建,并且几何轴也可以具有1:10的比例,使得具有坐标(1,0,0)的对象在“真实”世界中的1米远处并且在虚拟世界中的10米远处。
在图18中,虚拟对象包括直升机1814a-1814c、云、鸟、太阳1816等。当玩家1806a移动便携式装置1808a时,虚拟场景的视图改变,就像玩家将摄像机保持在虚拟世界中一样。应注意,装置408a中所示的视图可包括或可不包括参考点。除了桌子1804之外,房间还包括其他静态对象,诸如电视1812和窗户1810。
如图18所示,虚拟对象可以位于空间的任何位置。当便携式装置包括摄像机时,便携式装置可以使用房间中的静态特征来通过利用来自其摄像机的视图调整其惯性测量来维持当前位置的准确测量。便携式装置中的图像分析可以检测窗户的边缘、光源、桌子的边缘、墙壁上的绘画、电视等。
计算机/游戏机106与便携式装置408a交换信息以递送增强现实环境。该信息包括游戏信息、用户跟踪、便携式装置位置、虚拟对象位置、远程玩家位置等中的一者或多者。
在一个实现方式中,游戏机106跟踪玩家100的耳朵的位置。当在游戏中产生声音(例如,直升机飞行的声音)时,游戏机106确定声音原点的虚拟空间中的坐标。一旦耳朵的位置和声音原点的位置已知,游戏机106就确定声音原点和感知声音的耳朵之间的相对位置。
在一个实现方式中,用户100佩戴有耳机1716。用户的HRTF用于将声音转换为用户看来来自声音原点的本地化声音。传输到耳机1716的本地化声音(可能经由如上所述的HMD)包括用于耳机的每个单独扬声器的不同声学信号,以便模拟声音原点的位置。
在另一实现方式中,由扬声器1820产生本地化声音。游戏机106具有关于扬声器1820在房间中的位置的信息。同样,用户的HRTF用于将声音转换为用户看来来自声音原点的本地化声音。传输到扬声器1820的本地化声音包括用于每个扬声器1820的不同声学信号,以便模拟声音原点的位置。
在这种情况下,本地化声音被递送到扬声器而不是耳机。使用扬声器并使用耳机进行声音定位的算法类似,但在扬声器的情况下,位置是固定的,而用户的位置可能会改变。来自每个扬声器的声音都有传播时间,必须通过声音定位算法来考虑。在耳机的情况下,必须跟踪位置,因为耳机在用户移动时移动。
声音定位算法使用用户的HRTF以及用户耳朵的当前位置来为耳机生成本地化声音。由耳机播放的用于本地化声音的声学信号向用户提供关于虚拟对象的空间中的虚拟位置的声学线索。
在一个实现方式中,当发起声音的对象或人在HMD 102的显示器上或在连接至游戏机106的显示器207(例如,共享/社交屏幕)中显示时,用于更高音量的本地化声音的声学信号被递送。在某种意义上,HMD也起到定向传声器的作用。当声音原点不在HMD的显示器上时,声音的音量较低。由于HMD用作定向传声器,因此当用户移动HMD时,用户具有对声音原点的下落的声学提示。
远程玩家1806b被分配在玩家100的物理空间中的位置。声音定位包括产生看起来来自玩家1806b或来自便携式装置1808b的声音。例如,当玩家1806b说话时,便携式装置1808b捕获语音,然后将其发送到游戏机106。然后使用HRTF或一些其他声音定位算法来变换来自用户1806b的语音,以将语音递送给用户100,就像玩家1806b站在玩家100附近一样,如图示的虚拟场景中所示。
在一个实现方式中,GPS用于跟踪用户。例如,HMD或游戏机中的GPS模块用于确定用户的GPS位置。如果用户1806b位于远程位置(例如,几英里之外),则用户1806b的GPS位置可用于声音效果。例如,用户1806b具有由远程玩家发射的游戏大炮。声音效果模拟来自用户1806b的实际位置的大炮的发射。首先听到发射炮弹,然后随着炮弹从玩家1806b的位置穿过空气行进到达玩家100的位置,听到炮弹的声音。当炮弹在空中行进时,声音的强度会增加,就像在现实生活中一样。最后,当炮弹击中目标时听到爆炸,并且如果目标靠近用户,则声音将以高音量递送。
图19是根据本发明的实现方式的用于模拟声源的声音定位算法的流程图。在操作1902中,确定用户的头部在空间中的位置,其中用户佩戴包括两个扬声器的耳机。如前所述,可以利用多种方法来确定耳机的位置,诸如通过超声波、图像分析、RFID、GPS、红外线等。此外,在操作1904中,确定将要递送到扬声器的声音,每个扬声器与用户的一只耳朵相关联。换句话说,一个扬声器位于左耳旁边,并且另一个扬声器位于右耳旁边。在操作1906中,确定声音的发出位置。声音的发出位置是指空间中定义了要递送给用户的声音的虚拟原点的点,使得用户得到声音来自该声音原点的印象。
在操作1908中,基于头部在空间中的位置、声音、空间中的发出位置以及用户的听觉特性来建立每个扬声器的声学信号。用户的听觉特性定义了用户的物理方面,这些方面影响用户如何定位声音来自何处。在一个实现方式中,用户的听觉特性由用户耳朵的一对HRTF定义。
在操作1908之后,该方法前进到操作1910,其中声学信号被传输到两个扬声器。当声学信号由两个扬声器播放时,声音似乎起源于空间中的发出位置。
图20示出了根据本公开的实现方式的用于基于用户对所接收声音的感知来选择声音定位函数的方法。通过耳机进行虚拟环绕效果最佳,可以准确测量人体的HRTF(或其他一些声音定位函数)。测量HRTF的过程是困难的(即,该过程需要将小传声器放在人的耳朵中,并且当扬声器在不同位置和距离处的头部周围移动时完全坐直)。本发明的实现方式利用针对一群用户的测量的HRTF的数据库。在一个实现方式中,运动控制器用于为用户创建基于来自数据库的一个或多个HRTF的声音定位函数。实际上没有测量用户的HRTF,但是通过找到对用户“工作”的一个或多个HRTF,提供了具有本地化声音递送的逼真的虚拟环绕系统。
为数百万用户提供声音定位函数是不切实际的。本发明的实现方式将测量的声音定位函数用于代表性的人群,然后执行测试以为特定用户选择这些函数中的一个。
在图20的实现方式中,用户100在房间中并且佩戴HMD 102和耳机1716。应注意,校准过程也可以用多个扬声器2002而不是耳机来执行。计算机系统通过耳机1716播放声音,并且要求用户将控制器104a指向用户认为是声源的方向2008a。基于由用户识别为声音原点的方向2008a,系统从数据库中选择与该方向匹配的一个或多个声音定位函数。换句话说,在用户100的每次响应之后,系统缩小了可以满足用户100的特性的声音定位函数。
在一个实现方式中,向用户提供两种选择。如果用户不确定声音来自何处,则在控制器上按下第一按钮以指示用户不确定。另一方面,如果用户识别出方向,则用户在指向声音的方向的同时按下第二按钮。这允许人们通过搜索声音定位函数(例如,HRTF)的数据库来找到适当的声音定位函数,并找到最紧密地匹配用户输入(例如,由控制器识别的方向)的函数。
在不同位置用其他声音重复该过程。基于控制器(例如,104b、104c)的位置为每个声音获得新方向(例如,2008b、2008c),并且分析声音定位函数以找到该位置的最佳匹配。在一个实现方式中,最佳匹配是为所有测试声音提供最佳的整体性能的声音定位函数。
在另一个实现方式中,该特定用户的函数是声音函数的组合,其中用户周围的空间被划分为扇区,并且来自每个扇区的声音使用与该扇区相关联的函数,其中每个扇区具有不同的相关联的函数。在一个实现方式中,使用插值,并且一些扇区使用来自两个或更多个函数的插值。期望的目标不是具有完美选择的函数,而目标是在不同位置具有许多可接受的函数,这足以填充特定游戏或一系列游戏所需的3D音量。如果认为一定数量的离散传递函数优于仅选择一个函数,则不需要仅选择一个函数。在一个实现方式中,插值用于填充尚未执行实际测试的区域中的间隙,因为对用户周围的整个3-D空间执行测试将是非常繁琐的。
每个测试播放的声音可以是相同的声音,但是从不同的位置投射,或者声音可以从一个位置改变到另一个位置,以便获取不同音频的数据。这可以减少用户的混淆,因为用户不会觉得所有声音都完全相同并且声音来自同一个地方。
如果一个传递函数不与所有测试声音的用户的声音特性正确地匹配,则在一个实现方式中,为用户计算的声音函数是不仅考虑到声音来自的区域而且考虑到正在产生的声音类型(例如,声音的主频)的函数的组合。例如,在3-D空间中的特定点中,第一函数可以用于低频声音,并且第二函数用于高频或中频声音。
由于与用户100相关联的函数未知,因此选择来自数据库的声音定位函数f1以开始校准过程。当用户在方向2008a上指向104a时,系统分析什么定位函数fu(一个或多个)可在使用f1生成声音时引起此响应。换句话说,系统需要关联f1与数据库中的其他函数。如果s是为测试选择的声音(例如,狗吠),l1是声音的位置,并且ls1是在扬声器处递送的本地化声音,则等式(1)变为:
ls1=f1(s,l1) (2)
当用户指向方向2008a时,位置l2基于方向2008a计算。如果fu是匹配该声音和位置l2的声音s用户的函数,则得到以下等式:
ls1=fu(s,l2) (3)
这意味着,对于相同的声音测试(例如,狗吠),f1和fu将产生发送到扬声器的相同声音,但由于不同的声音定位函数,用户感知的位置发生变化。换句话说,具有函数f1的用户感知到来自l1的声音并且具有函数fu的用户感知到来自l2的声音。
结合等式(2)和(3),得到以下同一性:
f1(s,l1)=fu(s,l2) (4)
由于f1、s,l1、和l2已知,利用公式(4)可得到fu。然而,应注意,fu适用于此用户的位置l2,但是fu可能不适用于其他位置。由于等式(4)可能满足数据库中的许多函数,因此继续在不同位置进行测试允许系统选择哪个可能的函数更适合该用户。在一个实现方式中,测试过程通过消除不起作用的函数而继续,直到选择了一个最终函数(更好地匹配用户的特性的函数)。
在一个实现方式中,相同的函数f1用于所有测试。在另一个实现方式中,当系统开始微调最适合该用户的一个或多个函数时,用于每个测试的函数会发生变化。例如,在第二测试中,所选择的在先前的测试中获得的函数fu而不是f1用于第二测试。第二测试之后,基于两次测量选择新函数fu2。并且基于所有测试的测量,重复该过程以在每次测试之后计算出新函数。
应注意,如果用户在进行校准的同时移动头部,则移动可改变结果。在一种实现方式中,声音很短,并且消除或显著减少了头部移动的影响。在另一种实现方式中,跟踪用户的头部,这意味着在测试期间耳朵的位置是已知的。在一个实现方式中,通过分析用户拍摄的图像来执行头部跟踪,但是也可以使用其他方法,诸如使用具有磁力仪的耳机等。
图21是用于实现本发明的实现方式的计算机系统的简化示意图。应理解,本文描述的方法可以用数字处理系统执行,诸如传统的通用计算机系统。在替代方案中可以使用被设计或编程为执行一个或多个特定功能的专用计算机。计算装置106包括处理器2132,其耦接到内存2134、永久性存储装置2158、以及计算装置106内部或连接至计算装置106的其他模块。声音定位计算机程序2136驻留在内存2134中,但也可以驻留在永久性存储装置2158中。
计算装置106与声音/超声捕获装置2108、图像捕获装置108和显示器207通信。在一个实现方式中,声音捕获装置2108、图像捕获装置108、RFID模块2106和显示器207可以嵌入在计算装置106内或者是单独的单元。在一个实现方式中,超声捕获装置包括传声器,并且在另一实现方式中,超声捕获装置包括传声器阵列。
装置位置跟踪模块724确定诸如HMD 102、耳机1716、控制器104等装置的位置。多种技术可用于位置跟踪,诸如超声波、GPS、RFID、图像分析、三角测量、惯性等或其组合。头部跟踪模块2138确定用户的一个或两个耳朵的位置(可以通过确定耳机的位置来间接确定)。头部跟踪模块2138可以使用一种或多种不同技术(诸如图像识别、RFID、超声波、红外线、三角测量等)或基于用户佩戴的装置(诸如HMD或耳机)的跟踪来确定用户耳朵的位置。
声音投射模块2116修改旨在递送到声音系统的声音信号,以便执行声音定位,使得接收修改的声音信号的用户将具有声音从预期位置发出的印象。声音投射模块2116使用由装置位置跟踪模块2124和头部跟踪模块2138提供的位置信息来修改声音信号。
永久性存储装置2158表示诸如软盘驱动器或固定盘驱动器之类的持久数据存储装置,其可以是本地的或远程的。网络接口746提供网络连接,允许与其他装置通信。应理解,处理器2132可以体现在通用处理器、专用处理器或专门编程的逻辑装置中。输入/输出(I/O)接口2142提供与不同外围装置的通信,诸如显示器207、键盘2152、鼠标2150、超声捕获装置2108、图像捕获装置108、扬声器1820、耳机1716、按钮、传感器、触摸屏2156等。通用串行总线(USB)模块2144提供与USB装置的连接。
HMD 102和/或显示器207被配置为显示本文描述的用户界面。键盘2152、鼠标2150和其他外围装置耦接到I/O接口2142,以便将信息传送到处理器2132。应理解,可以通过I/O接口2142传送去往和来自外部装置的数据。本公开还可在分布式计算环境中进行实践,其中由通过基于有线的或无线网络加以链接的远程处理装置执行任务。
数据库2110包括与多个不同用户相关联的多个声音定位函数。在一个实现方式中,声音定位函数是针对多个用户获得的测量的HRTF函数,但是也可以使用其他声音定位函数。数据库2110可用于为用户构建声音定位函数,其利用针对其他用户获得的现有函数。
应注意,图21中所示的实现方式是示例性的。其他实现方式可以利用不同的模块,或者具有由一个模块执行的若干函数等。因此,图21中示出的实现方式不应被解释为排他性的或限制性的,而是示例性的或说明性的。
图22示出了可以用于实现本发明的实现方式的装置的架构。头戴式显示器是计算装置并且包括通常见于计算装置上的模块,诸如处理器2204、内存2216(RAM、ROM等)、一个或多个电池2206或其他电源、以及永久性存储设备2248(诸如硬盘)。
通信模块允许HMD与其他便携式装置、其他计算机、其他HMD、服务器等交换信息。通信模块包括通用串行总线(USB)连接器2246、通信链路2252(诸如以太网)、超声波通信2256、蓝牙2258和WiFi 2254。
用户界面包括用于输入和输出的模块。输入模块包括输入按钮、传感器和开关2210、传声器2232、触摸屏(未示出,其可用于配置或初始化HMD)、前置摄像机2240、后置摄像机2242、视线跟踪摄像机2244。诸如键盘或鼠标的其他输入/输出装置也可以通过诸如USB或蓝牙的通信链路来连接至便携式装置。
输出模块包括用于在用户的眼睛前面渲染图像的显示器2214。一些实现方式可包括一个显示器、两个显示器(每只眼睛一个)、微投影仪或其他显示技术。其他输出模块包括发光二极管(LED)2234(其也可以用于HMD的视觉跟踪)、触觉振动反馈2250、扬声器2230和声音定位模块2212,该声音定位模块2212执行对待递送到扬声器或耳机的声音的声音定位。诸如耳机的其他输出装置也可以经由通信模块连接至HMD。
可以被包括以便有助于运动跟踪的元件包括LED 2234、用于视觉识别的一个或多个对象2236、以及红外灯2238。
位置模块2228可以使用来自不同装置的信息以便计算HMD的位置。这些模块包括磁力仪2218、加速计2220、陀螺仪2222、全球定位系统(GPS)模块2224和罗盘2226。此外,位置模块可以分析用摄像机和传声器捕获的声音或图像数据以便计算位置。更进一步地,位置模块可以执行测试(诸如WiFi ping测试或超声测试)以便确定便携式装置的位置或附近的其他装置的位置。
如先前所描述的,虚拟现实生成器2208使用位置模块计算的位置来创建虚拟现实或增强现实。虚拟现实生成器2208可以与其他计算装置(例如,游戏机、互联网服务器等)协作以便生成用于显示模块2214的图像。远程装置可以发送用于在屏幕上创建游戏对象的屏幕更新或指令。
应理解,图22中所示的实现方式是HMD的示例性实现方式。其他实现方式可使用不同的模块、模块的子集或将相关任务分配给不同的模块。因此,图22中所示的实现方式不应被解释为排他性的或限制性的,而是示例性的或说明性的。
图23是根据本公开的各种实现方式的游戏系统2300的框图。游戏系统2300被配置为经由网络2315向一个或多个客户端2310提供视频流。游戏系统2300通常包括视频服务器系统2320以及可选的游戏服务器2325。视频服务器系统2320被配置为以最小的服务质量向一个或多个客户端2310提供视频流。例如,视频服务器系统2320可接收改变视频游戏内的状态或视点的游戏命令,并且以最小的滞后时间向客户端2310提供反映所述状态改变的更新的视频流。视频服务器系统2320可被配置为以各种替代视频格式(包括尚未定义的格式)提供视频流。此外,视频流可包括被配置用于以各种帧速率呈现给用户的视频帧。典型的帧速率是每秒30帧、每秒60帧和每秒120帧。但是在本公开的替代实现方式中包括更高或更低的帧速率。
客户端2310(本文单独称为2310A、2310B等)可包括头戴式显示器、终端、个人计算机、游戏机、平板电脑、电话、机顶盒、电话亭、无线装置、数字板、独立装置、手持式游戏运行装置等等。通常,客户端2310被配置为接收编码的视频流、解码视频流、并且将所得视频呈现给用户,例如游戏的玩家。接收编码视频流和/或解码视频流的过程通常包括将各个视频帧存储在客户端的接收缓冲器中。可在与客户端2310成一体的显示器上或在诸如监视器或电视的单独装置上将视频流呈现给用户。客户端2310可选地被配置为支持多于一个游戏玩家。例如,游戏机可被配置为支持两个、三个、四个或更多个同时玩家。这些玩家中的每一个可接收单独的视频流,或者单个视频流可包括专门为每个玩家生成的(例如基于每个玩家的视点生成的)帧的区域。客户端2310可选地在地理上分散。游戏系统2300中包括的客户端的数量可从一个或两个到数千、数万或更多个广泛地变化。如本文所使用的,术语“游戏玩家”用于指代进行游戏的人,并且术语“游戏运行装置”用于指代用于玩游戏的装置。在一些实现方式中,游戏运行装置可指协作以向用户递送游戏体验的多个计算装置。例如,游戏机和HMD可与视频服务器系统2320合作以递送通过HMD观看的游戏。在一个实现方式中,游戏机从视频服务器系统2320接收视频流,并且游戏机将视频流或视频流的更新转发到HMD以便进行渲染。
客户端2310被配置为经由网络2315接收视频流。网络2315可为任何类型的通信网络,包括电话网络、互联网、无线网络、电力线网络、局域网、广域网、专用网络等等。在典型的实现方式中,经由诸如TCP/IP或UDP/IP的标准协议来传送视频流。可替代地,视频流经由专有标准进行通信。
客户端2310的典型示例是个人计算机,所述个人计算机包括处理器、非易失性内存、显示器、解码逻辑、网络通信能力以及输入装置。解码逻辑可包括存储在计算机可读介质上的硬件、固件和/或软件。用于解码(和编码)视频流的系统在本领域中是众所周知的,并且根据所使用的特定编码方案而变化。
客户端2310可但不需要进一步包括被配置用于修改所接收的视频的系统。例如,客户端可被配置为执行进一步的渲染、将一个视频图像叠加在另一个视频图像上、裁剪视频图像等等。例如,客户端2310可被配置为接收各种类型的视频帧,诸如I帧、P帧和B帧,并且被配置为将这些帧处理成图像以向用户显示。在一些实现方式中,客户端2310的成员被配置为对视频流执行进一步的渲染、着色、转换成3-D或类似操作。客户端2310的成员可选地被配置为接收多于一个音频或视频流。客户端2310的输入装置可包括例如单手游戏控制器、双手游戏控制器、手势识别系统、注视识别系统、语音识别系统、键盘、操纵杆、定点装置、力反馈装置、运动和/或位置感测装置、鼠标、触摸屏、神经接口、摄像机、尚未开发的输入装置等等。
由客户端2310接收的视频流(以及可选地音频流)由视频服务器系统2320生成和提供。如本文其他地方进一步描述的,该视频流包括视频帧(并且音频流包括音频帧)。配置视频帧(例如,它们包括适当数据结构中的像素信息)以有意义地对显示给用户的图像作出贡献。如本文所使用的,术语“视频帧”用于指代主要包括被配置为有助于例如实现显示给用户的图像的信息的帧。本文关于“视频帧”的大多数教导也可应用于“音频帧”。
客户端2310通常被配置为从用户接收输入。这些输入可包括被配置为改变视频游戏的状态或以其他方式影响游戏玩法的游戏命令。可使用输入装置接收游戏命令和/或可通过在客户端2310上执行的计算指令自动生成游戏命令。所接收的游戏命令经由网络2315从客户端2310传送到视频服务器系统2320和/或游戏服务器2325。例如,在一些实现方式中,游戏命令经由视频服务器系统2320传送到游戏服务器2325。在一些实现方式中,游戏命令的单独副本从客户端2310传送到游戏服务器2325和视频服务器系统2320。游戏命令的通信可选地取决于命令的身份。从客户端2310A通过用于向客户端2310A提供音频或视频流的不同路由或通信信道来可选地传送游戏命令。
游戏服务器2325可选地由与视频服务器系统2320不同的实体来操作。例如,游戏服务器2325可由多玩家游戏的发布者来操作。在所述示例中,视频服务器系统2320可选地由游戏服务器2325视为客户端,并且可选地被配置为从游戏服务器2325的视点出现为执行现有技术游戏引擎的现有技术客户端。视频服务器系统2320与游戏服务器2325之间的通信可选地经由网络2315发生。因此,游戏服务器2325可为现有技术的多玩家游戏服务器,所述多玩家游戏服务器将游戏状态信息发送到多个客户端,其中一个客户端是游戏服务器系统2320。视频服务器系统2320可被配置为同时与游戏服务器2325的多个实例通信。例如,视频服务器系统2320可被配置为向不同用户提供多个不同的视频游戏。这些不同的视频游戏中的每一个可由不同的游戏服务器2325支持和/或由不同的实体发布。在一些实现方式中,视频服务器系统2320的若干地理上分布的实例被配置为向多个不同用户提供游戏视频。视频服务器系统2320的这些实例中的每一个可与游戏服务器2325的相同实例通信。视频服务器系统2320与一个或多个游戏服务器2325之间的通信可选地经由专用通信信道发生。例如,视频服务器系统2320可经由专用于这两个系统之间的通信的高带宽信道连接至游戏服务器2325。
视频服务器系统2320至少包括视频源2330、I/O装置2345、处理器2350和非暂时性存储设备2355。视频服务器系统2320可包括一个计算装置或者分布在多个计算装置中。这些计算装置可选地经由诸如局域网的通信系统连接。
视频源2330被配置为提供视频流,例如流视频或形成动态图像的一系列视频帧。在一些实现方式中,视频源2330包括视频游戏引擎和渲染逻辑。视频游戏引擎被配置为从玩家接收游戏命令并且基于所接收的命令维护视频游戏的状态的副本。所述游戏状态包括游戏环境中的对象的位置以及通常的视点。游戏状态还可包括对象的性质、图像、颜色和/或纹理。通常基于游戏规则以及诸如移动、转弯、攻击、设置焦点、交互、使用等的游戏命令来维持游戏状态。游戏引擎的部分可选地安置在游戏服务器2325内。游戏服务器2325可基于使用地理上分散的客户端从多个玩家接收的游戏命令来维护游戏状态的副本。在这些情况下,游戏状态由游戏服务器2325提供给视频源2330,其中存储游戏状态的副本并且执行渲染。游戏服务器2325可经由网络2315直接从客户端2310接收游戏命令,和/或可经由视频服务器系统2320接收游戏命令。
视频源2330通常包括渲染逻辑,例如硬件、固件和/或存储在计算机可读介质(诸如存储设备2355)上的软件。所述渲染逻辑被配置为基于游戏状态创建视频流的视频帧。全部或部分渲染逻辑可选地安置在图形处理单元(GPU)内。渲染逻辑通常包括被配置用于确定对象之间的三维空间关系和/或用于基于游戏状态和视点来应用适当的纹理等的处理级。渲染逻辑产生原始视频,所述原始视频随后通常在与客户端2310通信之前对其进行编码。例如,可根据Adobe
Figure BDA0002060091840000581
标准、.wav、H.264、H.263、On2、VP6、VC-1、WMA、Huffyuv、Lagarith、MPG-x.Xvid.FFmpeg、x264、VP6-8、realvideo、mp3等来对原始视频进行编码。编码过程产生视频流,所述视频流可选地被打包以递送到远程装置上的解码器。视频流的特征在于帧大小和帧速率。典型的帧大小包括800x600、1280x720(例如720p)、1024x768,但是可使用任何其他帧大小。帧速率是每秒视频帧的数量。视频流可包括不同类型的视频帧。例如,H.264标准包括”P”帧和”I”帧。I帧包括用于刷新显示装置上的所有宏块/像素的信息,而P帧包括用于刷新其子集的信息。P帧的数据大小通常小于I帧。如本文所使用的,术语“帧大小”意指帧内的像素数量。术语“帧数据大小”用于指存储所述帧所需的字节数。
在替代实现方式中,视频源2330包括诸如摄像机的视频录制装置。所述摄像机可用于生成可包括在计算机游戏的视频流中的延迟或现场视频。所得的视频流可选地包括渲染图像和使用照相机或摄影机记录的图像两者。视频源2330还可包括存储装置,所述存储装置被配置为存储先前记录的视频以包括在视频流中。视频源2330还可包括被配置为检测对象(例如,人)的运动或位置的运动或定位感测装置,以及被配置为基于检测到的运动和/或位置来确定游戏状态或产生视频的逻辑。
视频源2330可选地被配置为提供被配置为放置在其他视频上的叠加。例如,这些叠加可包括命令界面、登入指令、发给游戏玩家的消息、其他游戏玩家的图像、其他游戏玩家的视频馈送(例如网络摄像机视频)。在客户端2310A包括触摸屏接口或注视检测接口的实现方式中,所述叠加可包括虚拟键盘、操纵杆、触摸板等等。在叠加的一个示例中,玩家的语音被叠加在音频流上。视频源2330可选地还包括一个或多个音频源。
在其中视频服务器系统2320被配置为基于来自多于一个玩家的输入来维持游戏状态的实现方式中,每个玩家可具有包括视图的位置和方向的不同视点。视频源2330可选地被配置为基于他们的视点为每个玩家提供单独的视频流。此外,视频源2330可被配置为向客户端2310中的每一个提供不同的帧大小、帧数据大小和/或编码。视频源2330可选地配置为提供3-D视频。
I/O装置2345被配置用于视频服务器系统2320以发送和/或接收信息,所述信息诸如视频、命令、对信息的请求、游戏状态、注视信息、装置运动、装置位置、用户运动、客户端身份、玩家身份、游戏命令、安全信息、音频等等。I/O装置2345通常包括诸如网卡或调制解调器的通信硬件。I/O装置2345被配置为与游戏服务器2325、网络2315和/或客户端2310通信。
处理器2350被配置为执行逻辑,例如包括在本文讨论的视频服务器系统2320的各种部件内的软件。例如,处理器2350可用软件指令编程以便执行视频源2330、游戏服务器2325和/或客户端限定器2360的功能。视频服务器系统2320可选地包括处理器2350的多于一个实例。处理器2350还可用软件指令编程,以便执行由视频服务器系统2320接收的命令,或者协调本文讨论的游戏系统2300的各种元件的操作。处理器2350可包括一个或多个硬件装置。处理器2350是电子处理器。
存储设备2355包括非暂时性模拟和/或数字存储装置。例如,存储设备2355可包括被配置为存储视频帧的模拟存储装置。存储设备2355可包括计算机可读数字存储设备,例如硬盘驱动器、光盘驱动器或固态存储设备。存储设备2315被配置为(例如,通过适当的数据结构或文件系统)存储视频帧、人工帧、包括视频帧和人工帧两者的视频流、音频帧、音频流等等。存储设备2355可选地分布在多个装置中。在一些实现方式中,存储设备2355被配置为存储本文其他地方讨论的视频源2330的软件部件。这些部件可以在需要时以准备好提供的格式来存储。
视频服务器系统2320可选地还包括客户端限定器2360。客户端限定器2360被配置用于远程地确定诸如客户端2310A或2310B的客户端的能力。这些能力可包括客户端2310A本身的能力以及客户端2310A与视频服务器系统2320之间的一个或多个通信信道的能力两者。例如,客户端限定器2360可被配置为测试通过网络2315的通信信道。
客户端限定器2360可手动或自动地确定(例如,发现)客户端2310A的能力。手动确定包括与客户端2310A的用户通信并且要求用户提供能力。例如,在一些实现方式中,客户端限定器2360被配置为在客户端2310A的浏览器内显示图像、文字等等。在一个实现方式中,客户端2310A是包括浏览器的HMD。在另一个实现方式中,客户端2310A是具有可在HMD上显示的浏览器的游戏机。所显示的对象请求用户输入客户端2310A的信息,诸如操作系统、处理器、视频解码器类型、网络连接类型、显示器分辨率等。向客户端限定器2360传送回用户输入的信息。
例如,可通过在客户端2310A上执行代理程序和/或通过将测试视频发送到客户端2310A来进行自动确定。代理程序可包括嵌入在网页中或作为附件安装的计算指令,诸如java脚本。代理程序可选地由客户端限定器2360提供。在各种实现方式中,代理程序可发现客户端2310A的处理能力、客户端2310A的解码和显示能力、客户端2310A与视频服务器系统2320之间的通信信道的滞后时间可靠性和带宽、客户端2310A的显示类型、存在于客户端2310A上的防火墙、客户端2310A的硬件、在客户端2310A上执行的软件、客户端2310A内的注册表条目等等。
客户端限定器2360包括硬件、固件和/或存储在计算机可读介质上的软件。客户端限定器2360可选地安置在与视频服务器系统2320的一个或多个其他元件分开的计算装置上。例如,在一些实现方式中,客户端限定器2360被配置为确定客户端2310与视频服务器系统2320的多于一个实例之间的通信信道的特性。在这些实现方式中,由客户端限定器发现的信息可用来确定视频服务器系统2320的哪个实例最适用于向客户端2310中的一个递送流视频。
本公开的实现方式可用包括手持装置、微处理器系统、基于微处理器或可编程消费电子产品、小型计算机、大型计算机等的各种计算机系统配置进行实践。本公开还可在分布式计算环境中进行实践,其中由通过基于有线的或无线网络加以链接的远程处理装置执行任务。
考虑到上述实现方式,应理解,本公开可采用涉及存储在计算机系统中的数据的各种计算机实现的操作。这些操作是需要对物理量进行物理操纵的操作。本文描述的形成本公开的一部分的任何操作都是有用的机器操作。本公开还涉及用于执行这些操作的装置或设备。所述设备可以专门构造以用于所需目的,或所述设备可以是通过存储在计算机中的计算机程序来选择性地激活或配置的通用计算机。具体地,各种通用机器可与根据本文的教导编写的计算机程序一起使用,或者构建更专业的设备来执行所需操作可为更方便的。
本公开也可体现为计算机可读介质上的计算机可读代码。计算机可读介质是可存储数据的任何数据存储装置,所述数据随后可由计算机系统读取。计算机可读介质的示例包括硬盘驱动器、网络附接存储(NAS)、只读内存、随机存取内存、CD-ROM、CD-R、CD-RW、磁带以及其他光学和非光学数据存储装置。计算机可读介质可包括分配在网络耦接的计算机系统上的计算机可读有形介质,使得计算机可读代码被以分配的方式存储和执行。
尽管以特定顺序描述了所述方法操作,但应理解,其他内务处理操作可在操作之间执行,或者可调整操作以使得它们在略微不同的时间发生,或者可分布在系统中,所述系统允许处理操作以与所述处理相关联的各种时间间隔发生,只要叠加操作的处理以所需方式执行即可。
尽管为了清晰理解的目的已详细描述了前述公开内容,但是将会明显的是,可在所附权利要求书的范围内实践某些变化和修改。因此,本发明的实现方式应被认为是说明性的而非限制性的,并且本公开不限于本文给出的细节,而是可以在本公开的范围和等效物内进行修改。

Claims (33)

1.一种经由头戴式显示器与虚拟环境进行交互的方法,其包括:
接收其中安置头戴式显示器HMD的交互式环境的捕获的图像帧;
接收从所述HMD的至少一个惯性传感器处理得到的惯性数据;
分析所述捕获的图像帧和所述惯性数据以确定所述HMD的预测的未来位置,其中分析所述捕获的图像帧和所述惯性数据包括识别所述HMD的移动,使用识别的所述HMD的移动来确定所述HMD的所述预测的未来位置,其中分析所述捕获的图像帧包括跟踪所述捕获的图像帧的序列内的所述HMD的可识别部分的移动以跟踪所述HMD的所述移动,其中分析所述捕获的图像帧包括跟踪所述捕获的图像帧的序列内的所述交互式环境中的一个或多个锚点以跟踪所述HMD的运动,所述一个或多个锚点包括所述交互式环境中的一个或多个固定对象;
使用所述HMD的所述预测的未来位置来朝向所述HMD的所述预测的未来位置调整RF收发器的波束成形方向;
基于所述HMD的移动的速度调整所述RF收发器的角展度,其中所述角展度随着所述HMD的所述移动的速度的增加而增加。
2.如权利要求1所述的方法,其中识别所述HMD的所述移动包括确定所述HMD的运动矢量,通过将所述HMD的所述运动矢量应用于所述HMD的当前位置来确定所述HMD的所述预测的未来位置。
3.如权利要求2所述的方法,其中所述运动矢量的量值识别所述HMD的所述移动的所述速度,并且其中所述运动矢量的方向识别所述HMD的所述移动的方向。
4.如权利要求2所述的方法,
其中识别所述HMD的所述移动包括识别所述HMD的平移移动和/或旋转移动;
其中确定所述运动矢量包括确定所述平移移动和/或所述旋转移动的加速度。
5.如权利要求1所述的方法,
其中所述RF收发器包括RF发射器相控阵列;
其中调整所述RF收发器的所述波束成形方向包括生成收发器控制数据,所述收发器控制数据被配置为引起对所述相控阵列的所述RF发射器中的至少一个的相位或振幅的调整。
6.如权利要求1所述的方法,其中所述HMD的至少一个惯性传感器包括加速度计、陀螺仪或磁力仪中的一者或多者。
7.如权利要求1所述的方法,
其中所述HMD包括多个灯;
其中分析所述捕获的图像帧包括识别所述捕获的图像帧中的所述多个灯中的一个或多个。
8.一种经由头戴式显示器与虚拟环境进行交互的系统,其包括:
头戴式显示器HMD,所述HMD具有至少一个惯性传感器,所述至少一个惯性传感器被配置为生成惯性数据;
摄像机,所述摄像机被配置为捕获其中安置所述HMD的交互式环境的图像帧;
RF收发器;
计算机,所述计算机被配置为分析捕获的图像帧和所述惯性数据以确定所述HMD的预测的未来位置,并使用所述HMD的所述预测的未来位置来朝向所述HMD的所述预测的未来位置调整所述RF收发器的波束成形方向,其中分析所述捕获的图像帧和所述惯性数据包括识别所述HMD的移动,使用识别的所述HMD的移动来确定所述HMD的所述预测的未来位置,其中分析所述捕获的图像帧包括跟踪所述捕获的图像帧的序列内的所述HMD的可识别部分的移动以跟踪所述HMD的所述移动,其中分析所述捕获的图像帧包括跟踪所述捕获的图像帧的序列内的所述交互式环境中的一个或多个锚点以跟踪所述HMD的运动,所述锚点包括所述交互式环境中的一个或多个固定对象;
其中所述计算机还被配置为基于来自所述RF收发器的所述HMD的径向距离调整所述RF收发器的角展度。
9.如权利要求8所述的系统,其中识别所述HMD的移动包括确定所述HMD的运动矢量,通过将所述HMD的所述运动矢量应用于所述HMD的当前位置来确定所述HMD的所述预测的未来位置。
10.如权利要求9所述的系统,其中所述运动矢量的量值识别所述HMD的所述移动的速度,并且其中所述运动矢量的方向识别所述HMD的所述移动的方向。
11.如权利要求10所述的系统,其中所述计算机被进一步配置为基于所述HMD的所述移动的所述速度调整所述RF收发器的角展度。
12.如权利要求11所述的系统,其中所述角展度随着所述HMD的所述移动的速度的增加而增加。
13.如权利要求9所述的系统,
其中识别所述HMD的移动包括识别所述HMD的平移移动和/或旋转移动;
其中确定所述运动矢量包括确定所述平移移动和/或所述旋转移动的加速度。
14.如权利要求8所述的系统,
其中所述RF收发器包括RF发射器相控阵列;
其中调整所述RF收发器的所述波束成形方向包括生成收发器控制数据,所述收发器控制数据被配置为引起对所述相控阵列的所述RF发射器中的至少一个的相位或振幅的调整。
15.如权利要求8所述的系统,其中所述HMD的至少一个惯性传感器包括加速度计、陀螺仪或磁力仪中的一者或多者。
16.如权利要求8所述的系统,
其中所述HMD包括多个灯;
其中分析所述捕获的图像帧包括识别所述捕获的图像帧中的所述多个灯中的一个或多个。
17.一种经由头戴式显示器与虚拟环境进行交互的方法,其包括:
接收其中安置头戴式显示器HMD的交互式环境的捕获图像;
接收从所述HMD的至少一个惯性传感器处理得到的惯性数据;
分析所述交互式环境的所述捕获图像和所述惯性数据以确定所述HMD的当前位置和所述HMD的预测的未来位置;
使用所述HMD的所述预测的未来位置而将RF收发器的波束成形方向调整为朝向所述HMD的所述预测的未来位置的方向;
跟踪所述HMD的用户的注视,其中跟踪所述用户的注视包括通过所述HMD中的注视跟踪摄像机捕获所述用户的眼睛的图像;
生成描绘所述HMD的虚拟环境的视图的视频,其中基于跟踪的所述HMD的用户的注视差分地渲染所述视图的区域;
在预定时间段内跟踪所述用户的所述注视的轨迹,其中跟踪所述注视的所述轨迹使用所述用户的所述眼睛的所述捕获图像;
在所述预定时间段内跟踪所述HMD的轨迹;
在跟踪所述注视的所述轨迹时,基于分析所述用户的所述注视的所跟踪的轨迹的趋势且基于分析所述HMD的所跟踪的轨迹的趋势,预测所述用户的所述注视向所述用户将在下一步看的所述虚拟环境中的预测的未来区域的移动;
其中基于所述用户的所述注视的所预测的移动差分地渲染所述视图的所述区域,其中在所述用户的所述注视处于所述预测的未来区域之前所述预测的未来区域开始渲染;
生成描绘来自所述虚拟环境的声音的音频数据,所述音频数据被配置为在被渲染到连接至所述HMD的耳机时实现所述用户对所述声音的定位;
使用调整的波束成形方向经由所述RF收发器将所述视频和所述音频数据无线地传输到所述HMD。
18.如权利要求17所述的方法,其中所述用户的所述注视所指向的所述视图的区域以比所述视图的其他区域更高的图像质量设置渲染,所述视图的所述其他区域以较低的图像质量设置渲染以减小所述视频的大小。
19.如权利要求18所述的方法,其中所述图像质量设置包括更新频率、分辨率、图像复杂度或确定用于渲染所述视图的所述区域的顺序的渲染顺序值中的一者或多者。
20.如权利要求17所述的方法,其中生成所述音频数据包括确定所述虚拟环境中的所述声音的一个或多个发出位置,其中所述音频数据被配置为在渲染到所述耳机时将所述声音模拟为源自所述一个或多个发出位置。
21.如权利要求17所述的方法,其中生成所述音频数据使用为所述用户识别的HRTF。
22.如权利要求17所述的方法,其中生成所述音频数据是基于所述HMD的所述当前位置和/或预测的未来位置。
23.如权利要求17所述的方法,其中分析所述捕获图像和所述惯性数据包括识别所述HMD的移动,使用识别的所述HMD的移动来确定所述HMD的所述预测的未来位置。
24.如权利要求23所述的方法,
其中识别所述HMD的移动包括确定所述HMD的运动矢量,通过将所述HMD的所述运动矢量应用于所述HMD的当前位置来确定所述HMD的所述预测的未来位置;
其中所述运动矢量的量值识别所述HMD的所述移动的速度,并且其中所述运动矢量的方向识别所述HMD的所述移动的方向。
25.如权利要求24所述的方法,其还包括:
基于所述HMD的所述移动的所述速度调整所述RF收发器的角展度;
其中所述角展度随着所述HMD的所述移动的速度的增加而增加。
26.一种经由头戴式显示器与虚拟环境进行交互的方法,其包括:
接收其中安置头戴式显示器HMD的交互式环境的捕获图像;
接收从所述HMD的至少一个惯性传感器处理得到的惯性数据;
分析所述交互式环境的所述捕获图像和所述惯性数据以确定所述HMD的当前位置和所述HMD的预测的未来位置;
使用所述HMD的所述预测的未来位置而将RF收发器的波束成形方向调整为朝向所述HMD的所述预测的未来位置的方向;
跟踪所述HMD的用户的注视,其中跟踪所述用户的所述注视包括通过所述HMD中的注视跟踪摄像机捕获所述用户的眼睛的图像;
生成描绘所述HMD的虚拟环境的视图的视频,其中基于跟踪的所述HMD的用户的注视差分地渲染所述视图的区域;
在预定时间段内跟踪所述用户的所述注视的轨迹,其中跟踪所述注视的所述轨迹使用所述用户的所述眼睛的所述捕获图像;
在所述预定时间段内跟踪所述HMD的轨迹;
在跟踪所述注视的所述轨迹时,基于分析所述用户的所述注视的所跟踪的轨迹的趋势且基于分析所述HMD的所跟踪的轨迹的趋势,预测所述用户的所述注视向所述用户将在下一步看的所述虚拟环境中的预测的未来区域的移动;
其中基于所述用户的所述注视的所述所预测的移动差分地渲染所述视图的所述区域,其中在所述用户的所述注视处于所述预测的未来区域之前所述预测的未来区域开始渲染;
使用调整的波束成形方向经由所述RF收发器将所述视频传输到所述HMD。
27.如权利要求26所述的方法,其中所述用户的所述注视所指向的所述视图的区域以比所述视图的其他区域更高的图像质量设置渲染,所述视图的所述其他区域以较低的图像质量设置渲染以减小所述视频的大小。
28.如权利要求27所述的方法,其中所述图像质量设置包括更新频率、分辨率、图像复杂度或确定用于渲染所述视图的所述区域的顺序的渲染顺序值中的一者或多者。
29.如权利要求26所述的方法,其中分析所述捕获图像和所述惯性数据包括识别所述HMD的移动,使用所述HMD的识别的移动来确定所述HMD的所述预测的未来位置。
30.一种经由头戴式显示器与虚拟环境进行交互的方法,其包括:
接收其中安置头戴式显示器HMD的交互式环境的捕获图像;
接收从所述HMD的至少一个惯性传感器处理得到的惯性数据;
分析所述交互式环境的所述捕获图像和所述惯性数据以确定所述HMD的当前位置和所述HMD的预测的未来位置;
使用所述HMD的所述预测的未来位置而将RF收发器的波束成形方向调整为朝向所述HMD的所述预测的未来位置的方向;
生成描绘来自所述虚拟环境的声音的音频数据,所述音频数据被配置为在被渲染到连接至所述HMD的耳机时实现用户对所述声音的定位;
使用调整的波束成形方向经由所述RF收发器将所述音频数据传输到所述HMD;
在预定时间段内跟踪所述用户的注视的轨迹,其中跟踪所述注视的所述轨迹使用通过所述HMD中的注视跟踪摄像机捕获的所述用户的眼睛的捕获图像;
在跟踪所述注视的所述轨迹时基于分析所述用户的所述注视的所述所跟踪的轨迹的趋势来预测所述用户的所述注视向所述用户将在下一步看的所述虚拟环境中的预测的未来区域的移动;
其中基于所述用户的所述注视的所述所预测的移动差分地渲染所述HMD的虚拟环境的视图的区域,其中在所述用户的所述注视处于所述预测的未来区域之前所述预测的未来区域开始渲染。
31.如权利要求30所述的方法,其中生成所述音频数据包括确定所述虚拟环境中的所述声音的一个或多个发出位置,其中所述音频数据被配置为在渲染到所述耳机时将所述声音模拟为源自所述一个或多个发出位置。
32.如权利要求30所述的方法,其中生成所述音频数据使用为所述用户识别的HRTF。
33.如权利要求30所述的方法,其中生成所述音频数据是基于所述HMD的所述当前位置和/或预测的未来位置。
CN201780070649.2A 2016-09-30 2017-09-29 具有差分渲染和声音定位的无线头戴式显示器 Active CN109952135B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US15/283,138 2016-09-30
US15/283,138 US10209771B2 (en) 2016-09-30 2016-09-30 Predictive RF beamforming for head mounted display
US15/337,469 US10585472B2 (en) 2011-08-12 2016-10-28 Wireless head mounted display with differential rendering and sound localization
US15/337,469 2016-10-28
PCT/US2017/054605 WO2018064627A1 (en) 2016-09-30 2017-09-29 Wireless head mounted display with differential rendering and sound localization

Publications (2)

Publication Number Publication Date
CN109952135A CN109952135A (zh) 2019-06-28
CN109952135B true CN109952135B (zh) 2023-05-26

Family

ID=60143765

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780070649.2A Active CN109952135B (zh) 2016-09-30 2017-09-29 具有差分渲染和声音定位的无线头戴式显示器

Country Status (4)

Country Link
EP (1) EP3519066B1 (zh)
JP (2) JP6813670B2 (zh)
CN (1) CN109952135B (zh)
WO (1) WO2018064627A1 (zh)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019040665A1 (en) 2017-08-23 2019-02-28 Neurable Inc. BRAIN-COMPUTER INTERFACE PROVIDED WITH HIGH-SPEED OCULAR FOLLOWING CHARACTERISTICS
KR20200098524A (ko) 2017-11-13 2020-08-20 뉴레이블 인크. 고속, 정확도 및 직관적 사용자 상호작용을 위한 적응을 갖춘 두뇌-컴퓨터 인터페이스
WO2019144019A1 (en) 2018-01-18 2019-07-25 Neurable Inc. Brain-computer interface with adaptations for high-speed, accurate, and intuitive user interactions
WO2020035143A1 (en) * 2018-08-16 2020-02-20 Telefonaktiebolaget Lm Ericsson (Publ) Distributed microphones signal server and mobile terminal
US10664050B2 (en) * 2018-09-21 2020-05-26 Neurable Inc. Human-computer interface using high-speed and accurate tracking of user interactions
US11309947B2 (en) * 2018-11-19 2022-04-19 Facebook Technologies, Llc Systems and methods for maintaining directional wireless links of motile devices
JP2020098381A (ja) * 2018-12-17 2020-06-25 未來市股▲ふん▼有限公司 測位方法及び現実感提示装置
US11169382B2 (en) * 2019-01-25 2021-11-09 Valve Corporation Wireless data transport system for head-mounted displays
US10931346B2 (en) 2019-02-21 2021-02-23 Qualcomm Incorporated Techniques for using rotation vectors for beam management in high frequency wireless networks
CN113223544B (zh) * 2020-01-21 2024-04-02 珠海市煊扬科技有限公司 音频的方向定位侦测装置及方法以及音频处理系统
EP3876559A1 (en) * 2020-03-02 2021-09-08 Nokia Technologies Oy Future position estimation for improved reliability of connectivity
KR102359367B1 (ko) 2020-04-07 2022-02-07 주식회사 엔씨소프트 게임 스트리밍을 위한 방법 및 장치
TWI777265B (zh) * 2020-10-05 2022-09-11 鉭騏實業有限公司 指向音源探取裝置及其方法
CN112641468B (zh) * 2020-12-15 2022-11-04 青岛海信医疗设备股份有限公司 超声成像方法、超声图像处理方法、超声设备及存储介质
JP7032837B1 (ja) * 2021-06-18 2022-03-09 シンメトリー・ディメンションズ・インク 音波伝播シミュレーションシステム
CN115311397B (zh) * 2022-08-09 2025-02-28 北京字跳网络技术有限公司 用于图像渲染的方法、装置、设备和存储介质
CN115671726B (zh) * 2022-12-29 2023-03-28 腾讯科技(深圳)有限公司 游戏数据渲染方法、装置、设备及存储介质
WO2025050022A1 (en) * 2023-08-31 2025-03-06 Worcester Polytechnic Institute Virtual and mixed space-time scalable amalgamation system
KR102777889B1 (ko) * 2024-07-18 2025-03-10 더모임컴퍼니주식회사 가상현실을 이용한 차량 체험장치

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104486775A (zh) * 2015-01-08 2015-04-01 西安电子科技大学 基于用户位置的跟踪预测的有源天线阵列波束优化方法
CN105359063A (zh) * 2013-06-09 2016-02-24 索尼电脑娱乐公司 利用追踪的头戴式显示器
CN105392538A (zh) * 2013-06-07 2016-03-09 索尼电脑娱乐公司 响应于头戴式显示器中的用户动作的图像渲染
CN105814809A (zh) * 2013-12-16 2016-07-27 华为技术有限公司 无线通信系统中调整波束宽度的方法和装置

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003264499A (ja) * 2002-03-11 2003-09-19 Matsushita Electric Ind Co Ltd ミリ波無線伝送システム
US9384737B2 (en) * 2012-06-29 2016-07-05 Microsoft Technology Licensing, Llc Method and device for adjusting sound levels of sources based on sound source priority
AU2013293081B2 (en) * 2012-07-23 2017-07-20 Cubic Corporation Wireless immersive simulation system
EP4027222A1 (en) * 2013-03-15 2022-07-13 Magic Leap, Inc. Display system and method
US9908048B2 (en) * 2013-06-08 2018-03-06 Sony Interactive Entertainment Inc. Systems and methods for transitioning between transparent mode and non-transparent mode in a head mounted display
US9524580B2 (en) * 2014-01-06 2016-12-20 Oculus Vr, Llc Calibration of virtual reality systems
US10080146B2 (en) * 2014-03-12 2018-09-18 Telefonaktiebolaget Lm Ericsson (Publ) Antenna beam control
US9551873B2 (en) * 2014-05-30 2017-01-24 Sony Interactive Entertainment America Llc Head mounted device (HMD) system having interface with mobile computing device for rendering virtual reality content
US10416760B2 (en) * 2014-07-25 2019-09-17 Microsoft Technology Licensing, Llc Gaze-based object placement within a virtual reality environment
US10684485B2 (en) * 2015-03-06 2020-06-16 Sony Interactive Entertainment Inc. Tracking system for head mounted display

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105392538A (zh) * 2013-06-07 2016-03-09 索尼电脑娱乐公司 响应于头戴式显示器中的用户动作的图像渲染
CN105359063A (zh) * 2013-06-09 2016-02-24 索尼电脑娱乐公司 利用追踪的头戴式显示器
CN105814809A (zh) * 2013-12-16 2016-07-27 华为技术有限公司 无线通信系统中调整波束宽度的方法和装置
CN104486775A (zh) * 2015-01-08 2015-04-01 西安电子科技大学 基于用户位置的跟踪预测的有源天线阵列波束优化方法

Also Published As

Publication number Publication date
EP3519066B1 (en) 2021-09-01
JP2021073546A (ja) 2021-05-13
JP6813670B2 (ja) 2021-01-13
CN109952135A (zh) 2019-06-28
EP3519066A1 (en) 2019-08-07
JP2020503906A (ja) 2020-02-06
WO2018064627A1 (en) 2018-04-05
JP6994556B2 (ja) 2022-01-14

Similar Documents

Publication Publication Date Title
US11768537B2 (en) Wireless head mounted display with differential rendering
CN109952135B (zh) 具有差分渲染和声音定位的无线头戴式显示器
US10514754B2 (en) RF beamforming for head mounted display
US11436803B2 (en) Insertion of VR spectator in live video of a live event
US10780350B2 (en) Spatially and user aware second screen projection from a companion robot or device
JP7132280B2 (ja) Vr観戦のための拡大された視野再レンダリング
US11079999B2 (en) Display screen front panel of HMD for viewing by users viewing the HMD player
US10245507B2 (en) Spectator management at view locations in virtual reality environments
US10445925B2 (en) Using a portable device and a head-mounted display to view a shared virtual reality space
CN109999491B (zh) 在头戴式显示器上渲染图像的方法和计算机可读存储介质

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