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

人工现实系统中的音频样本相位对齐的制作方法

2022-07-10 18:48:04 来源:中国专利 TAG:


1.本公开总体上涉及音频处理,包括在诸如虚拟现实、混合现实和/或增强现实系统的人工现实系统中的音频处理。
2.背景
3.人工现实系统正变得越来越普遍,应用于许多领域,例如计算机游戏、健康和安全、工业和教育。例如,人工现实系统正在被合并到移动设备、游戏机、个人计算机、电影院和主题公园中。通常,人工现实是在呈现给用户之前已经以某种方式调整的现实的形式,其可包括例如虚拟现实、增强现实、混合现实、混杂现实(hybrid reality)、或其某种组合和/或衍生物。
4.概述
5.本公开描述了包括将由多个音频传感器或麦克风收集的音频样本的处理进行对齐的技术。在一些示例中,描述了用于将由两个麦克风收集的音频样本的处理进行对齐的技术,其中一个麦克风在另一个麦克风被启用或开启之后的任意时间被启用或开启。在一些示例中,由每个这样的麦克风收集的音频样本可以在不同时间启动的处理流水线中由音频处理器进行处理。结果,流水线可能在不同的时间完成处理,从而使这些样本在进一步处理中的使用变得复杂。为了避免这种结果,在一个示例中,音频处理器可以在启动与较晚启用的麦克风相关联的通道的音频处理流水线时引入延迟,以确保该流水线在与较早启用的麦克风相关联的通道的流水线被启动的同时进行启动。在另一个例子中,音频处理器可以使用同步信号来向较晚启动的音频通道传达何时启动其音频处理流水线。如果在较早启动的音频通道启动处理新的流水线时发信号通知较晚启动的音频通道,则两个通道对音频数据的处理可以被对齐。描述了用于将以相同频率和以不同频率操作的通道的音频样本的处理进行对齐的技术。
6.在各种实施方式中,所公开的技术可提供一种或更多种技术优势。例如,通过将音频样本的处理进行对齐,用于对音频样本执行某些操作(例如,声源识别、方向对齐、定位、混合)的技术被简化和/或是可行的。此外,通过实现用于将音频样本的处理进行对齐的技术,当从仅使用麦克风阵列中的麦克风的小子集的低功率模式转变到使用麦克风阵列中的麦克风的较大子集的更鲁棒的功率模式时,可以在实际或有效功能损失很少或没有损失的情况下执行涉及选择性地开启和关闭各种麦克风的功率节省模式。
7.在一些示例中,本公开描述了根据本公开的一个或更多个方面,由音频处理系统执行的操作。在一个具体示例中,本公开描述了一种系统,其包括:多个麦克风,其包括第一麦克风和第二麦克风;控制系统,其被配置为选择性地使第二麦克风在启用状态和禁用状态之间转变;以及音频处理系统,其被配置为:接收由第一麦克风收集的音频样本,检测第二麦克风从禁用状态到启用状态的转变,执行由第一麦克风收集的音频样本和由第二麦克风收集的音频样本之间的相位对齐,以及处理由第一麦克风和第二麦克风收集的音频样本。
8.在一些实施例中,音频处理系统可以被配置为接收第一麦克风收集的音频样本。
在一些实施例中,响应于检测到第二麦克风从禁用状态到启用状态的转变,执行由第一麦克风和第二麦克风收集的音频样本之间的相位对齐。在一些实施例中,被处理的音频样本是由第一麦克风和第二麦克风收集的相位对齐后的音频样本。
9.在一些实施例中,音频处理系统可进一步被配置为:使用第一流水线处理由第一麦克风收集的音频样本,其中第一流水线在多个启动时钟周期中的每一个处周期性地启动;并且使用第二流水线处理由第二麦克风收集的音频样本。
10.在一些实施例中,为了执行相位对齐,音频处理系统可进一步被配置为:在多个启动时钟周期中的每一个期间启动第二流水线。
11.在一些实施例中,为了在多个启动时钟周期中的每一个期间启动第二流水线,音频处理系统可进一步被配置为:在检测到第二麦克风从禁用状态到启用状态的转变后,在启动第二流水线时引入延迟,其中,基于第一流水线的长度和直到启动时钟周期之一的时间量来计算延迟。
12.在一些实施例中,第一流水线可以以第一采样频率操作,其中第二流水线以不同于第一采样频率的第二采样频率操作,并且其中为了在启动第二流水线时引入延迟,音频处理系统进一步被配置为:进一步基于第一采样频率和第二采样频率之间的差来计算延迟。
13.在一些实施例中,第二采样频率可高于第一采样频率。
14.在一些实施例中,为了在多个启动时钟周期中的每一个期间启动第二流水线,音频处理系统可进一步被配置为:检测与多个启动时钟周期相关联的同步信号;并且在检测到同步信号时,启动第二流水线。
15.在一些实施例中,第一流水线可以以第一采样频率操作,并且其中第二流水线以不同于第一采样频率的第二采样频率操作,并且其中为了启动第二流水线,音频处理系统进一步被配置为:在检测到同步信号之前,通过处理在检测到同步信号之前由第二麦克风收集的音频样本,生成第二流水线数据;以及在检测到同步信号时,丢弃第二流水线数据中的至少一些。
16.在一些实施例中,为了处理相位对齐后的音频样本,音频处理系统可进一步被配置为执行声源识别、方向对齐、定位、混合中的至少一项。
17.在一些实施例中,该系统为人工现实系统。在一些实施例中,控制系统可以被配置成:检测与人工现实系统相关联的需要更鲁棒的音频处理的状态变化;以及响应于检测到该状态变化,将第二麦克风从禁用状态转变到启用状态。
18.在一些实施例中,状态变化可以是第一状态变化,并且其中音频处理系统进一步被配置为:检测与人工现实系统相关联的第二状态变化;确定第二状态变化需要较不鲁棒的音频处理;以及响应于检测到第二状态变化,进入低功率模式,其中为了进入低功率模式,音频处理系统进一步被配置为将第二麦克风从禁用状态转变到启用状态。
19.在一些实施例中,所述人工现实系统可进一步包括头戴式显示器(hmd),并且其中所述hmd被配置为执行以下至少一项:检测输入;检测人工现实系统的模式的变化;检测与多个话音相关联的音频数据;检测向更嘈杂的物理环境的转变;以及检测物理环境的变化。
20.在另一个示例中,本公开描述了一种方法,包括由具有第一麦克风和第二麦克风的人工现实系统中的音频处理系统接收由第一麦克风收集的音频样本;由音频处理系统检
测第二麦克风从禁用状态到启用状态的转变;由音频处理系统执行由第一麦克风收集的音频样本和由第二麦克风收集的音频样本之间的相位对齐;以及由音频处理系统处理由第一麦克风和第二麦克风收集的音频样本。
21.在一些实施例中,提供了一种方法,包括:由具有第一麦克风和第二麦克风的人工现实系统中的音频处理系统接收由第一麦克风收集的音频样本;由音频处理系统检测第二麦克风从禁用状态到启用状态的转变;由音频处理系统响应于检测到该转变,执行由第一麦克风收集的音频样本和由第二麦克风收集的音频样本之间的相位对齐;以及由音频处理系统处理对齐后的音频样本。
22.在一些实施例中,该方法可进一步包括:由音频处理系统使用第一流水线处理由第一麦克风收集的音频样本,其中第一流水线在多个启动时钟周期中的每一个处周期性地启动;以及由音频处理系统使用第二流水线处理由第二麦克风收集的音频样本。
23.在一些实施例中,执行相位对齐可包括:在多个启动时钟周期中的每一个期间启动第二流水线。
24.在一些实施例中,在多个启动时钟周期中的每一个期间启动第二流水线可包括:在检测到第二麦克风从禁用状态到启用状态的转变后,在启动第二流水线时引入延迟,其中,基于第一流水线的长度和直到启动时钟周期之一的时间量来计算延迟。
25.在一些实施例中,第一流水线可以以第一采样频率操作,其中第二流水线以不同于第一采样频率的第二采样频率操作,并且其中在启动第二流水线时引入延迟包括:进一步基于第一采样频率和第二采样频率之间的差来计算延迟。
26.在一些实施例中,第二采样频率可高于第一采样频率。
27.在一些实施例中,在多个启动时钟周期中的每一个期间启动第二流水线可包括:检测与多个启动时钟周期相关联的同步信号;以及在检测到同步信号时,启动第二流水线。
28.在另一个示例中,本公开描述了一种计算机可读存储介质,包括指令,所述指令在被执行时配置计算系统的处理电路执行操作,该操作包括:接收由第一麦克风收集的音频样本;检测第二麦克风从禁用状态到启用状态的转变;由音频处理系统执行由第一麦克风收集的音频样本和由第二麦克风收集的音频样本之间的相位对齐;以及由音频处理系统处理由第一麦克风和第二麦克风收集的音频样本。
29.在一些实施例中,提供了一种计算机可读存储介质,包括指令,该指令在被执行时配置人工现实系统的音频处理系统执行操作,该操作包括:接收由第一麦克风收集的音频样本;检测第二麦克风从禁用状态到启用状态的转变;由音频处理系统响应于检测到该转变,执行由第一麦克风收集的音频样本和由第二麦克风收集的音频样本之间的相位对齐;以及由音频处理系统处理对齐后的音频样本。
30.应理解,本文描述的适合结合到本发明的一个或更多个方面和实施例的特征,旨在可在本公开的任何和所有方面和实施例中通用。
31.本公开的技术的一个或更多个示例的细节在附图和下面的描述中被阐述。这些技术的其他特征、目的和优点将从描述和附图以及权利要求中显而易见。
32.附图简述
33.图1a是描绘根据本公开的一个或更多个方面的示例人工现实系统的图示。
34.图1b是描绘根据本公开的一个或更多个方面的另一示例人工现实系统的图示。
35.图2a是根据本公开的一个或更多个方面,描绘被配置为从麦克风阵列收集音频样本的示例hmd的图示。
36.图2b是根据本公开的一个或更多个方面,描绘被配置为从麦克风阵列收集音频样本的另一示例hmd的图示。
37.图3是根据本公开的一个或更多个方面,示出可以选择性地开启和关闭各种音频传感器的人工现实系统的控制台和hmd的示例实施方式的框图。
38.图4是根据本公开的一个或更多个方面,描绘可以选择性地开启和关闭各种音频传感器的人工现实系统的hmd的示例的框图。
39.图5是根据本公开的一个或更多个方面,示出用于多设备人工现实系统的分布式架构的更详细示例实施方式的框图,其中一个或更多个设备使用每个设备内的一个或更多个soc集成电路来实现。
40.图6a、图6b和图6c是根据本公开的一个或更多个方面,示出从多个麦克风收集的音频样本的处理的时序图。
41.图7a、图7b和图7c是根据本公开的一个或更多个方面,示出从以不同采样频率工作的多个麦克风收集的音频样本的处理的时序图。
42.图8是示出根据本公开的一个或更多个方面的在音频处理状态之间转变的示例过程的流程图。
43.图9是示出由根据本公开的一个或更多个方面的示例hmd执行的操作的流程图。
44.详细描述
45.图1a是描绘根据本公开的一个或更多个方面的示例人工现实系统10的图示。在图1a的示例中,人工现实系统10包括头戴式设备(hmd)112、控制台106,以及在一些示例中包括一个或更多个外部传感器90。在一些示例中,外部传感器90可以包括麦克风和/或音频传感器。
46.如所示的,hmd 112通常由用户110佩戴,并且包括用于向用户110呈现人工现实内容122的电子显示器和光学组件。此外,hmd 112包括用于跟踪hmd的运动的一个或更多个传感器(例如,加速度计),并且可以包括用于捕获周围物理环境的图像数据的一个或更多个图像捕获设备138(例如,相机、线扫描仪等)。尽管图示为头戴式显示器,但是ar系统10可以替代地或附加地包括用于向用户110呈现人工现实内容122的眼镜或其他显示设备。
47.在该示例中,控制台106被示为单个计算设备,例如游戏机、工作站、台式计算机或膝上型计算机。在其他示例中,控制台106可以分布在多个计算设备上,例如分布式计算网络、数据中心或云计算系统。如该示例中所示,控制台106、hmd 112和传感器90可以经由网络104通信耦合,网络104可以是有线或无线网络(例如wi-fi)、网状网络或短程无线通信介质。尽管在该示例中,hmd 112被示出为与控制台106通信,例如系留(tethered to)到控制台或与控制台进行无线通信,但在一些实施方式中,hmd 112作为独立的移动人工现实系统进行操作。
48.通常,人工现实系统10使用从真实世界3d物理环境采集的信息来渲染人工现实内容122以显示给用户110。在图1a的示例中,用户110观看由在控制台106和/或hmd 112上执行的人工现实应用构建和渲染的人工现实内容122。在一些示例中,人工现实内容122可以包括真实世界影像(例如,手132、地面120、墙壁121)和虚拟对象(例如,虚拟内容项目124、
126、140和142)的混合。在图1a的示例中,人工现实内容122包括虚拟内容项目124、126,虚拟内容项目124、126表示虚拟桌子,并且可以被映射(例如,被钉扎(pin)、被锁定、被放置)到人工现实内容122内的特定位置。类似地,人工现实内容122包括表示虚拟显示设备的虚拟内容项目142,其也被映射到人工现实内容122内的特定位置。虚拟内容项目的位置可以是固定的,例如相对于墙壁或地面固定。虚拟内容项目的位置可以是可变的,例如相对于用户可变。在一些示例中,虚拟内容项目在人工现实内容122内的特定位置与真实世界物理环境内的位置相关联(例如,在物理对象的表面上)。
49.在图1a所示的示例人工现实体验中,虚拟内容项目124、126被映射到地面120和/或墙壁121上的位置。人工现实系统10可以响应于确定虚拟内容项目的位置的至少一部分在用户110的视场130中而渲染一个或更多个虚拟内容项目。也就是说,虚拟内容仅出现在人工现实内容122内,而不存在于真实世界、物理环境中。
50.在操作期间,人工现实应用通过跟踪和计算参考系(frame of reference)(通常是hmd 112的观看视角)的姿态信息来构建用于向用户110显示的人工现实内容122。使用hmd 112作为参考系,并且基于由hmd 112的当前估计姿态确定的当前视场130,人工现实应用渲染3d人工现实内容,在一些示例中,该3d人工现实内容可以至少部分地覆盖在用户110的真实世界3d物理环境上。在该过程期间,人工现实应用使用从hmd 112接收的感测数据,例如移动信息和用户命令,并且在一些示例中,使用来自任何外部传感器90(例如外部相机或麦克风)的数据来捕获真实世界物理环境内的3d信息,例如用户110的运动和/或关于用户110的特征跟踪信息。基于所感测的数据,人工现实应用确定hmd 112的参考系的当前姿态,并且根据当前姿态,渲染人工现实内容122。
51.人工现实系统10可以基于用户110的可以由用户的实时凝视跟踪或其他条件来确定的当前视场130触发虚拟内容项目的生成和渲染。更具体地说,hmd 112的图像捕获设备138捕获表示在图像捕获设备138的视场130内的真实世界物理环境中的对象的图像数据。视场130通常与hmd 112的观看视角相对应。在一些示例中,人工现实应用呈现包括混合现实和/或增强现实的人工现实内容122。在一些示例中,人工现实应用可以例如在人工现实内容122内渲染在视场130内的真实世界对象(诸如用户110的手132和/或手臂134的部分)的图像以及虚拟对象。在其他示例中,人工现实应用可以在人工现实内容122内渲染用户110的手132和/或手臂134在视场130内的部分的虚拟表示(例如,将真实世界对象渲染为虚拟对象)。在任一示例中,用户110能够在人工现实内容122内查看他们的手132、手臂134和/或视场130内的任何其他真实世界对象的部分。在其他示例中,人工现实应用可以不渲染用户的手132或手臂134的表示。
52.在操作期间,人工现实系统10在由hmd 112的图像捕获设备138捕获的图像数据内执行对象识别,以识别手132,包括可选地识别用户110的单个手指或拇指、和/或手臂134的全部或部分。此外,人工现实系统10在滑动时间窗口上跟踪手132(可选地包括手的特定指头)和/或手臂134的部分的位置、取向和构形。
53.不是仅要求通常整个视野130完全沉浸在人工现实内容122内的人工现实应用,人工现实系统10可以通过同时运行并输出在公共场景中显示的内容的多个人工现实应用来实现人工现实内容122的生成和显示。人工现实应用可以包括环境应用、放置的应用和浮动应用。环境应用可以定义ar环境的场景,该场景用作使一个或更多个应用变得活跃的背景。
例如,环境应用将用户置于场景中,诸如海滩、办公室、来自虚构位置(例如,来自游戏或故事)的环境、真实位置的环境或任何其他环境。在图1a的示例中,环境应用在人工现实内容122内提供起居室场景。
54.放置的应用是预计在人工现实内容122内保持渲染的固定应用(例如,不预计关闭该应用)。例如,放置的应用可以包括用于放置其他对象的表面,诸如桌子、架子等。在一些示例中,放置的应用包括装饰性应用,例如图片、蜡烛、鲜花、游戏奖杯或用于定制场景的任何观赏物品。在一些示例中,放置的应用包括允许快速浏览重要信息(例如,日历的议程视图)的功能应用(例如,微件(widget))。在图1a的示例中,人工现实内容122包括虚拟桌子124和126,虚拟桌子124和126包括用于放置其他对象的表面。
55.浮动应用可以包括在“浮动窗口”上实现的应用。例如,浮动应用可以包括2d用户界面、2d应用(例如,时钟、日历等)等等。在图1a的示例中,浮动应用可以包括在人工现实内容122内的浮动窗口上实现的时钟应用128。在一些示例中,浮动应用可以集成3d内容。例如,浮动应用可以是航班预订应用,其提供2d用户界面以查看可用航班列表并从中进行选择,并且与3d内容(例如座位选择的3d可视化)相集成。作为另一个例子,浮动应用可以是化学教学应用,其提供分子的描述的2d用户界面,并且还显示分子的3d模型。在另一个例子中,浮动应用可以是语言学习应用,其也可以显示具有定义的对象的3d模型和/或关于学习进度的3d图表。在另一个例子中,浮动应用可以是视频聊天应用,其显示线路另一端的人的脸部的3d重建。
56.如下文进一步所述,人工现实系统10包括应用引擎107,应用引擎107被配置为执行一个或更多个人工现实应用,包括可协作地构建和共享公共人工现实环境的那些应用。在一个示例中,应用引擎107接收多个人工现实应用的对象的建模信息。例如,应用引擎107接收议程应用的议程对象140的建模信息,以显示议程信息。应用引擎107还接收媒体内容应用的虚拟显示对象142的建模信息,以显示媒体内容(例如,gif、照片、应用、实况流、视频、文本、web浏览器、绘图、动画、3d模型、数据文件的表示(包括二维和三维数据集)、或任何其他可视媒体)。
57.在一些示例中,根据技术,人工现实应用可以指定任意数量的提议区域(例如,零个或更多个),该提议区域定义了对象和适合于放置该对象的表面。在一些示例中,人工现实应用包括描述提议区域的元数据,诸如提供提议区域的特定节点、提议区域相对于该节点的姿态、提议区域的表面形状以及提议区域的大小。在图1a的示例中,议程应用在虚拟桌子124的表面上定义了提议区域150以显示议程对象140。议程应用可以指定,例如,提议区域150的位置和取向(例如,姿态)在虚拟桌子124的顶部,提议区域150的形状为矩形,以及用于放置议程对象140的提议区域150的大小。作为另一示例,媒体内容应用定义了虚拟显示对象142的提议区域152。媒体内容应用可以指定,例如,用于放置虚拟显示对象142的提议区域152的位置和取向(即,姿态),提议区域152的形状为矩形,以及用于放置虚拟显示对象142的提议区域150的大小。
58.人工现实应用还可以请求一个或更多个附件,所述附件描述了提议区域和其上放置的对象之间的联系。在一些示例中,附件包括附加属性,例如对象是否可以被交互式地移动或缩放。在图1a的示例中,议程应用请求提议区域150和议程对象140之间的附件,并且包括指示议程对象140可以在提议区域150内被交互式地移动和/或缩放的附加属性。类似地,
媒体内容应用请求提议区域152和虚拟显示对象142之间的附件,并且包括指示虚拟显示对象142在提议区域152内是固定的附加属性。
59.替代地或附加地,对象被自动放置在提议区域上。例如,对关于提议区域的附件的请求可以指定提议区域和被放置的对象的尺寸、提议区域和被放置的对象的语义信息、和/或提议区域和被放置的对象的物理信息。提议区域的尺寸可以包括提议区域支持放置对象所必需的空间量,并且对象的尺寸可以包括对象的大小。在一些示例中,基于语义信息,诸如对象的类型、提议区域的类型以及在这种类型的区域上可以找到什么类型的对象,对象被自动放置在场景中。例如,水体上的提议区域可以具有指定只有与水兼容的对象(例如,船)可以被放置在水体上的语义信息。在一些示例中,基于物理(或伪物理)信息,诸如对象在提议区域中是否具有足够的支撑、对象是否会滑动或坠落、对象是否会与其他对象碰撞等,对象被自动放置在场景中。
60.在一些示例中,可以实施图1a的系统10的控制台106、hmd 112和/或其他部件来控制麦克风阵列,包括在系统20和/或hmd 112可能不需要较少的麦克风时,选择性地启用和禁用这样的麦克风以节省电力。在一些示例中,当启用或禁用这样的麦克风时,系统20的控制台106、hmd 112和/或其他部件可以执行操作来将音频样本的处理进行对齐,其中这样的麦克风可以异步地和/或在任意时间被开启。
61.该系统和技术可以提供一个或更多个技术优势和实际应用。例如,通过将音频样本的处理进行对齐,用于对音频样本执行某些操作(例如,声源识别、方向对齐、定位、混合)的技术被简化和/或是可行的。此外,通过实施用于将音频样本的处理进行对齐的技术,当从仅使用麦克风阵列中的麦克风的小子集的低功率模式转变到使用麦克风阵列中的麦克风的较大子集的更鲁棒的功率模式时,可以在功能性损失很少或没有损失的情况下执行涉及选择性地开启和关闭各种麦克风的节电模式。
62.图1b是根据本公开的一个或更多个方面,描绘生成人工现实场景的另一示例人工现实系统20的图示。类似于图1a的人工现实系统10,在一些示例中,图1b的人工现实系统20可以为多用户人工现实环境内的多个人工现实应用生成并渲染包括对象的公共场景。在各种示例中,人工现实系统20还可以响应于在多用户人工现实环境内检测到用户的一个或更多个特定手势,提供虚拟对象的交互式放置和/或操纵。
63.在图1b的示例中,人工现实系统20包括外部相机102a和102b(统称为“外部相机102”)、hmd 112a-112c(统称为“hmd 112”)、控制器114a和114b(统称为“控制器114”)、控制台106和传感器90。如图1b所示,人工现实系统20表示多用户环境,其中在控制台106和/或hmd 112上执行的多个人工现实应用可以并发运行,并基于相应用户的对应参考系的当前观看视角,多个人工现实应用被显示在向用户110a-110c(统称为“用户110”)中的每一个用户呈现的公共渲染场景上。也就是说,在该示例中,多个人工现实应用中的每一个通过跟踪和计算针对hmd 112中的每一个的参考系的姿态信息来构建人工内容。人工现实系统20使用从相机102、hmd 112和控制器114接收的数据来捕获真实世界环境内的3d信息,例如用户110的运动和/或关于用户110和对象108的跟踪信息,用于针对hmd 112的对应参考系计算更新的姿态信息。作为一个示例,多个人工现实应用可以基于针对hmd 112c确定的当前观看视角,在相同的场景上渲染人工现实内容122,该人工现实内容112具有空间上覆盖在真实世界对象108a-108c(统称为“真实世界对象108”)上的虚拟对象124、126、140和142。此
外,从hmd 112c的观看视角来看,人工现实系统20分别基于用户110a、110b的估计位置来渲染化身122a、122b。
64.hmd 112中的每一个在人工现实系统20内并发操作。在图1b的示例中,用户110中的每一个可以是多个人工现实应用中的“参与者”(或“玩家”),并且用户110中的任何一个可以是多个人工现实应用中的“旁观者”或“观察者”。通过跟踪用户110c的手132和/或手臂134,并且将视场130内的手132的部分渲染为人工现实内容122内的虚拟手136,hmd 112c可以基本上类似于图1a的hmd 112进行操作。hmd 112b可以从用户110b握持的控制器114a接收用户输入。hmd 112a也可以基本上类似于图1a的hmd 112进行操作,并且通过跟踪用户110a的手132a、132b的移动来接收用户输入。hmd 112b可以从用户110b握持的控制器114接收用户输入。控制器114可以使用诸如蓝牙的短程无线通信的近场通信、使用有线通信链路或使用另一种类型的通信链路来与hmd 112b通信。
65.如图1b所示,除了经由hmd 112c的相机138捕获的图像数据之外或作为该图像数据的替代,来自外部相机102的输入数据可用于跟踪和检测用户110的手和手臂(例如用户110c的手132)的特定运动、构形、位置和/或取向,包括手的单独指头(手指、拇指)和/或指头的组合的移动。
66.在一些方面,人工现实应用可以在控制台106上运行,并且可以利用图像捕获设备102a和102b来分析手132b的构形、位置和/或取向,以识别hmd 112a的用户可能执行的输入手势。应用引擎107可以响应于这样的手势、运动和取向,以类似于上面关于图1a描述的方式渲染虚拟内容项目。例如,应用引擎107可以响应于这样的手势、运动和取向,以类似于上面关于图1a描述的方式,提供议程对象140和/或虚拟显示对象142的交互式放置和/或操纵。
67.图像捕获设备102和138可以捕获可见光谱、红外光谱或其他光谱中的图像。例如,本文描述的用于识别对象、对象姿态和手势的图像处理可以包括处理红外图像、可见光光谱图像等。
68.在一些示例中,可以实施图1b的系统20的控制台106、hmd 112和/或其他部件来控制麦克风阵列,包括在系统20和/或hmd 112可能不需要较少的麦克风时,选择性地启用和禁用这样的麦克风以节省电力。在一些示例中,当启用或禁用这样的麦克风时,系统20的控制台106、hmd 112和/或其他部件可以将由异步地和/或在任意时间开启的麦克风收集的音频样本的处理进行对齐。
69.图2a是根据本公开的一个或更多个方面,描绘能够和/或被配置为从麦克风阵列收集音频样本的示例hmd 112的图示。图2a的hmd 112可以是图1a和图1b的hmd 112中的任一个的示例。hmd 112可以是人工现实系统(例如图1a、图1b的人工现实系统10、20)的一部分,或者可作为被配置为实现本文所述技术的独立的、可移动的人工现实系统操作。
70.在该示例中,hmd 112包括前刚性主体和用于将hmd 112固定到用户的带。此外,hmd 112包括面向内部的电子显示器203,该电子显示器被配置为向用户呈现人工现实内容。电子显示器203可以是任何合适的显示技术,例如液晶显示器(lcd)、量子点显示器、点阵显示器、发光二极管(led)显示器、有机发光二极管(oled)显示器、阴极射线管(crt)显示器、电子墨水、或单色、彩色或能够生成视觉输出的任何其他类型的显示器。在一些示例中,电子显示器是用于向用户的每只眼睛提供单独图像的立体显示器。在一些示例中,当跟踪
hmd 112的位置和取向以用于根据hmd 112和用户的当前观看视角渲染人工现实内容时,显示器203相对于hmd 112的前刚性主体的已知取向和位置被用作参考系,也被称为局部原点(local origin)。在其他示例中,hmd可以采取其他可佩戴的头戴式显示器(例如眼镜或护目镜)的形式。
71.如图2a中进一步所示,在该示例中,hmd 112还包括一个或更多个传感器206,例如一个或更多个运动传感器、输出指示hmd 112的当前加速度的数据的加速度计(也称为惯性测量单元或“imu”)、输出指示hmd 112的位置的数据的gps传感器、输出指示hmd 112与各种对象相距的距离的数据的雷达或声纳、或可提供hmd 112或物理环境内的其他对象的位置或取向的指示的其他传感器。hmd 112可以包括一个或更多个音频传感器或麦克风207,用于从物理环境中捕获音频。这样的麦克风207可以被布置成阵列,并且能够用于执行方向对齐、声源识别、到达方向估计、音频定位和其他过程。在一些示例中,可以选择性地启用和禁用或者开启或关闭每个麦克风以节省功率。
72.此外,hmd 112可以包括集成的图像捕获设备138a和138b(统称为“图像捕获设备138”),例如摄像机、激光扫描仪、多普勒雷达扫描仪、深度扫描仪等,其被配置为输出表示物理环境的图像数据。更具体地说,图像捕获设备138捕获表示物理环境中的对象(包括手132)的图像数据,这些对象在图像捕获设备138的视场130a、130b内,视场130a、130b通常与hmd 112的观看视角相对应。hmd 112包括内部控制单元210,该内部控制单元210可包括内部电源和一个或更多个印刷电路板,该印刷电路板具有一个或更多个处理器、存储器和硬件,以提供用于执行可编程操作以处理感测数据并在显示器203上呈现人工现实内容的操作环境。
73.在一些示例中,应用引擎107控制对场景上的对象的交互,并为感兴趣的人工现实应用传递输入和其他信号。例如,控制单元210被配置为基于感测到的数据,识别用户执行的特定手势或手势组合,并且作为响应,执行动作。如本文所解释的,控制单元210可以在由图像捕获设备138捕获的图像数据内执行对象识别,以识别手132、手指、拇指、手臂或用户的另一部位,并跟踪所识别的部位的移动,以识别用户执行的预定义的手势。响应于识别预定义的手势,控制单元210采取某个动作,诸如生成和渲染被交互式地放置或操纵以在电子显示器203上显示的人工现实内容。
74.根据本文中描述的技术,hmd 112可以检测手132的手势,并且基于检测到的手势,将放置在人工现实内容内的提议区域上的应用内容项目移动到提议区域内的另一位置或者人工现实内容内的另一提议区域。例如,图像捕获设备138可以被配置为捕获表示物理环境的图像数据。控制单元210可以在电子显示器203上输出人工现实内容。控制单元210可以渲染包括附件的第一提议区域(例如,图1a和图1b的提议区域150),所述附件连接对象(例如,图1a和图1b的议程对象140)。控制单元210可以从图像数据中识别选择手势——其中选择手势是对提议区域内的对象执行捏或抓取运动的手132的构形——以及手132从第一提议区域到第二提议区域(例如,图1a和图1b的提议区域152)的后续平移手势(例如,移动)。响应于控制单元210识别选择手势和平移手势,控制单元210可以处理附件以在第二提议区域上连接对象并渲染被放置在第二提议区域上的对象。
75.图2b是根据本公开的一个或更多个方面,描绘能够和/或被配置成从麦克风阵列收集音频样本的另一示例hmd 112的图示。如图2b所示,hmd 112可以采取眼镜的形式。图2a
的hmd 112可以是图1a和图1b的hmd 112中的任一个的示例。hmd 112可以是人工现实系统(例如图1a、图1b的人工现实系统10、20)的一部分,或者可作为被配置为实现本文所述技术的独立的、可移动的人工现实系统来操作。
76.在该示例中,hmd 112是包括前框架的眼镜,该前框架包括允许hmd 112搁在用户的鼻子上的鼻梁架(bridge)和在用户耳朵上延伸以将hmd 112固定到用户的镜腿(temple)(或“臂”)。此外,图2b的hmd 112包括面向内部的电子显示器203a和203b(统称为“电子显示器203”),其被配置为向用户呈现人工现实内容。电子显示器203可以是任何合适的显示技术,例如液晶显示器(lcd)、量子点显示器、点阵显示器、发光二极管(led)显示器、有机发光二极管(oled)显示器、阴极射线管(crt)显示器、电子墨水、或单色、彩色或能够生成视觉输出的任何其他类型的显示器。在图2b所示的示例中,电子显示器203形成立体显示器,用于向用户的每只眼睛提供单独的图像。在一些示例中,当跟踪hmd 112的位置和取向以根据hmd 112和用户的当前观看视角渲染人工现实内容时,显示器203相对于hmd 112的前框架的已知取向和位置被用作参考系,也称为局部原点。
77.如图2b中进一步所示,在该示例中,hmd 112还包括一个或更多个传感器206,例如输出指示hmd 112的当前加速度的数据的一个或更多个运动传感器或加速度计(也称为惯性测量单元或“imu”)、输出指示hmd 112的位置的数据的gps传感器、输出指示hmd 112与各种对象相距的距离的数据的雷达或声纳、或提供hmd 112或物理环境内的其他对象的位置或取向的指示的其他传感器。图2b的hmd 112还可以包括一个或更多个音频传感器或麦克风207,用于从物理环境中捕获音频。这样的麦克风207可以布置成阵列,并且能够用于执行方向对齐、声源识别、到达方向估计、音频定位和其他过程。在一些示例中,每个麦克风可以选择性地被开启或关闭以节省电力。此外,图2b的hmd 112可以包括集成的图像捕获设备138a和138b(统称为“图像捕获设备138”),例如摄像机、激光扫描仪、多普勒雷达扫描仪、深度扫描仪等,其被配置为输出表示物理环境的图像数据。hmd 112包括内部控制单元210,该内部控制单元可包括内部电源和一个或更多个印刷电路板,该印刷电路板具有一个或更多个处理器、存储器和硬件以提供用于执行可编程操作的操作环境,从而处理感测数据并在显示器203上呈现人工现实内容。
78.图3是示出根据本公开的一个或更多个方面的可选择性地开启和关闭各种音频传感器的人工现实系统的控制台106和hmd 112的示例实施方式的框图。在图3的示例中,控制台106执行姿态跟踪、手势检测以及多个人工现实应用322的生成和渲染,该多个人工现实应用322可以同时运行并输出用于在hmd 112的电子显示器203上的公共3d ar场景内显示的内容。
79.在该示例中,hmd 112包括一个或更多个处理器302和存储器304,在一些示例中,处理器302和存储器304提供用于执行操作系统305的计算机平台,操作系统305可以是例如嵌入式实时多任务操作系统或其他类型的操作系统。继而,操作系统305提供用于执行一个或更多个软件部件307(包括应用引擎107)的多任务操作环境。如关于图2a和图2b的示例所讨论的,处理器302耦合到电子显示器203、传感器206和图像捕获设备138。在一些示例中,处理器302和存储器304可以是单独的、分立的部件。在其他示例中,存储器304可以是与单个集成电路内的处理器302并列放置的片上存储器。
80.hmd 112可包括音频处理模块390,其可执行与处理一个或更多个音频传感器或麦
克风207收集的音频样本相关的操作。音频处理模块390可以包括控制系统或控制器逻辑,该控制系统或控制器逻辑能够或被配置为选择性地将每个传感器207转变成启用或禁用状态(例如,“开启”或“关闭”麦克风207)。
81.通常,控制台106是处理从相机102(图1b)和/或hmd 112接收的图像和跟踪信息的计算设备,以执行手势检测和用于hmd 112的用户界面生成。在一些示例中,控制台106是单个计算设备,例如工作站、台式计算机、膝上型计算机或游戏系统。在一些示例中,控制台106的至少一部分(例如处理器312和/或存储器314)可以分布在云计算系统、数据中心上或分布在网络上,例如互联网、另一公共或私有通信网络,例如宽带、蜂窝、wi-fi和/或用于在计算系统、服务器和计算设备之间传输数据的其他类型的通信网络。
82.在图3的示例中,控制台106包括一个或更多个处理器312和存储器314,在一些示例中,该一个或更多个处理器312和存储器314提供用于执行操作系统316的计算机平台,操作系统316可以是例如嵌入式实时多任务操作系统或其他类型的操作系统。继而,操作系统316提供用于执行一个或更多个软件部件317的多任务操作环境。处理器312耦合到一个或更多个i/o接口315,i/o接口315提供用于与例如键盘、游戏控制器、显示设备、图像捕获设备、hmd等的外部设备通信的一个或更多个i/o接口。此外,一个或更多个i/o接口315可以包括一个或更多个有线或无线网络接口控制器(nic),用于与诸如网络104的网络通信。处理器302、312中的每一者可包括多核处理器、控制器、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)、或等效的分立或集成逻辑电路中的任何一个或更多个。存储器304、314可包括用于存储数据和可执行软件指令的任何形式的存储器,例如随机存取存储器(ram)、只读存储器(rom)、可编程只读存储器(prom)、可擦除可编程只读存储器(eprom)、电子可擦除可编程只读存储器(eeprom)和闪存。
83.控制台106的软件应用317操作来提供人工现实应用在公共场景上的聚合。在该示例中,软件应用317包括应用引擎107、渲染引擎322、手势检测器324、姿态跟踪器326和用户界面引擎328。
84.一般而言,应用引擎107包括用于提供和呈现由多个人工现实应用332生成的内容的聚合的功能,所述多个人工现实应用332例如是电话会议应用、游戏应用、导航应用、教育应用、培训或模拟应用等。应用引擎107可包括,例如,用于在控制台106上实现多个人工现实应用332的聚合的一个或更多个软件包、软件库、硬件驱动器和/或应用程序接口(api)。
85.基于来自图像捕获设备138或102或其他传感器设备中的任何一个的感测数据,手势检测器324分析所跟踪的hmd 112和/或用户的物理对象(例如,手、手臂、手腕、手指、手掌、拇指)的运动、构形、位置和/或取向,以识别用户110执行的一个或更多个手势。更具体地,手势检测器324分析在由hmd 112的图像捕获设备138和/或传感器90和外部相机102捕获的图像数据内识别的对象,以识别用户110的手和/或手臂,并跟踪手和/或手臂相对于hmd 112的移动,以识别用户110执行的手势。手势检测器324可以基于捕获到的图像数据来跟踪手、指头和/或手臂的移动(包括位置和取向的改变),并将对象的运动矢量与手势库330中的一个或更多个条目进行比较,以检测用户110执行的手势或手势组合。
86.手势库330中的一些条目可以各自将手势定义为一系列或模式的运动,例如用户的手、特定手指、拇指、手腕和/或手臂的相对路径或空间平移和旋转。手势库330中的一些条目可以各自将手势定义为用户的手和/或手臂(或其部分)在特定时间或在一段时间内的
构形、位置和/或取向。手势类型的其他示例也是可能的。此外,手势库330中的每个条目可以为所定义的手势或一系列手势指定该手势或一系列手势触发动作所需的条件,例如与hmd 112的当前视场的空间关系、与用户当前正在观察的特定区域的空间关系,这可以通过个人的实时凝视跟踪、正在显示的人工内容的类型、正在执行的应用的类型等来确定。
87.手势库330中的每个条目还可以为每个定义的手势或手势组合/一系列手势指定要由软件应用317执行的期望响应或动作。例如,根据本公开的技术,某些专用手势可以被预定义,使得响应于检测到预定义的手势中的一个,应用引擎107可以控制对渲染的场景上的对象的交互,并且为感兴趣的人工现实应用传递输入和其他信号。
88.作为示例,手势库330可以包括描述选择手势、平移手势(例如,移动、旋转)、修改/改变手势(例如,缩放)或用户可以执行的其他手势的条目。手势检测器324可以处理来自图像捕获设备138的图像数据,以分析用户的手的构形、位置、运动和/或取向,从而识别手势,诸如选择手势。例如,手势检测器324可以检测表示选择对象的手的特定构形,该构形是手被定位成抓取放置在第一提议区域上的对象。在某些实例中,这种抓取定位可以是在对象附近执行的两个手指的捏,其中用户的手的两个或更多个手指彼此靠近。手势检测器324可以随后检测平移手势,其中用户的手或手臂从第一提议区域移动到第一提议区域的另一位置或移动到第二提议区域。手势检测器还可以检测释放手势,其中用户的手的两个或更多个手指彼此远离。一旦对象被释放到第二提议区域,应用引擎107处理附件以将对象连接到第二提议区域。
89.在一些示例中,图3的控制台106、hmd 112和/或其他部件可被实现来控制音频传感器207的阵列,包括在系统20和/或hmd 112可能不需要较少传感器时,选择性地启用和禁用这样的传感器以节省电力。在一些示例中,当这样的传感器被启用或禁用时,图3的控制台106、hmd 112和/或其他部件可以执行将音频样本的处理进行对齐的技术,其中这样的传感器可以在任意时间被异步开启。
90.图4是根据本公开的一个或更多个方面,描绘可选择性地开启和关闭各种音频传感器的人工现实系统的hmd 112的示例的框图。在这个示例中,类似于图3,hmd 112包括一个或更多个处理器302和存储器304,在一些示例中,处理器302和存储器304提供用于执行操作系统305的计算机平台,操作系统305可以是例如嵌入式实时多任务操作系统或其他类型的操作系统。继而,操作系统305提供用于执行一个或更多个软件部件417的多任务操作环境。此外,一个或更多个处理器302耦合到电子显示器203、传感器206、音频处理模块390和图像捕获设备138。
91.在一些示例中,可实施hmd 112来控制音频传感器207的阵列,包括在系统20和/或hmd 112可能不需要较少传感器时,选择性地启用和禁用这样的传感器以节省电力。在一些示例中,当这样的传感器被启用或禁用时,hmd 112可以执行将音频样本的处理进行对齐的技术,其中这样的传感器可以在任意时间被异步开启。
92.图5是示出根据本公开的一个或更多个方面的用于多设备人工现实系统的分布式架构的更详细的示例实施方式的框图,其中一个或更多个设备使用每个设备内的一个或更多个soc集成电路来实现。在一些示例中,人工现实系统包括结合hmd 112进行操作的外围设备602。在该示例中,外围设备602是具有表面的物理真实世界设备,ar系统可以将虚拟内容覆盖在该表面上。外围设备602可以包括一个或更多个存在敏感(presence-sensitive)
表面,用于通过检测触摸存在敏感表面的位置或悬停在存在敏感表面的位置上方的一个或更多个对象(例如,手指、触笔)的存在来检测用户输入。在一些示例中,外围设备602可以包括输出显示器,其可以是存在敏感显示器。在一些示例中,外围设备602可以是智能手机、平板电脑、个人数据助理(pda)或其他手持式设备。在一些示例中,外围设备602可以是智能手表、智能戒指或其他可佩戴设备。外围设备602也可以是自助服务终端(kiosk)或其他固定的或可移动的系统的一部分。外围设备602可以包括也可以不包括用于向屏幕输出内容的显示设备。
93.一般来说,图5所示的soc代表以分布式架构布置的专用集成电路的集合,其中每个soc集成电路包括被配置为提供人工现实应用的操作环境的各种专用功能块。图5仅仅是soc集成电路的一个示例布置。多设备人工现实系统的分布式架构可以包括soc集成电路的任何集合和/或布置。
94.在这个示例中,hmd 112的soc 630a包括功能块,功能块包括跟踪670、加密/解密680、协处理器682、安全处理器683和接口684。跟踪670为眼睛跟踪672(“眼睛672”)、手跟踪674(“手674”)、深度跟踪676(“深度676”)和/或即时定位与地图构建(slam)678(“slam 678”)提供功能块。例如,hmd 112可以从输出指示hmd 112的当前加速度的数据的一个或更多个加速度计(也称为惯性测量单元或“imu”)、输出指示hmd 112的位置的数据的gps传感器、输出指示hmd 112与各种对象的距离的数据的雷达或声纳、或提供hmd 112或物理环境内的其他对象的位置或取向的指示的其他传感器接收输入。hmd 112可以从一个或更多个音频传感器或麦克风685a

685n(统称为“麦克风685”)接收音频数据。麦克风685中的一个或更多个可以对应于结合图2a、图2b、图3和图4描述的传感器207。hmd 112还可以从一个或更多个图像捕获设备688a-688n(统称为“图像捕获设备688”)接收图像数据。图像捕获设备可以包括摄像机、激光扫描仪、多普勒雷达扫描仪、深度扫描仪等,其被配置为输出表示物理环境的图像数据。更具体地,图像捕获设备捕获表示在图像捕获设备的视场内的物理环境中的对象(包括外围设备602和/或手)的图像数据,图像捕获设备的视场通常与hmd 112的观看视角相对应。基于所感测的数据和/或图像数据,跟踪670确定例如hmd 112的参考系的当前姿态,并且根据当前姿态,渲染人工现实内容。
95.加密/解密680是对传送至外围设备602或安全服务器的传出数据进行加密并对从外围设备602或安全服务器传送的传入数据进行解密的功能块。加密/解密680可以支持对称密钥密码术,以利用会话密钥(例如,秘密对称密钥)来加密/解密数据。
96.协应用处理器682包括各种处理器,例如视频处理单元、图形处理单元、数字信号处理器、编码器和/或解码器和/或其他。
97.当与在ar环境内结合使用的设备(例如外围设备606)配对时,安全处理器683提供hmd 112的安全设备证明和相互认证。安全处理器683可以认证hmd 112的soc 630a-630c。
98.接口684是包括一个或更多个接口的功能块,该一个或更多个接口用于连接到soc 630a的功能块。作为一个示例,接口684可以包括外围组件互连快速(pcie)插槽。soc 630a可以使用接口684与soc 630b、630c连接。soc 630a可以使用接口684与通信设备(例如无线电发射机)连接,用于与其他设备(例如外围设备136)通信。
99.音频子系统690可执行与处理一个或更多个音频传感器或麦克风685收集的音频样本相关的操作。音频子系统690可以对应于或包括结合图3和图4描述的音频处理系统390
的功能。音频子系统690可以包括控制系统691(例如,控制逻辑),该控制系统691能够或被配置成选择性地将每个麦克风685转变成启用或禁用状态(例如,“开启”或“关闭”麦克风685)。在一些情况下,控制系统691可以出于高效地管理由hmd 112消耗的功率的目的而启用或禁用一个或更多个麦克风。在其他情况下,控制系统691可以出于另一目的而启用或禁用一个或更多个麦克风。当启用麦克风时,这种控制系统691可以将该麦克风685配置为在多个频率中的一个频率处工作。在一些示例中,每个麦克风685在被启用时可以以相同的频率工作。在其他示例中,一些麦克风685可以在与其他麦克风不同的频率处工作。尽管控制系统691被示为在音频子系统690内实现或位于音频子系统690内,但是控制系统691可以位于soc 630a内的其他地方或hmd112内的其他地方。
100.音频子系统690还可包括音频处理系统,其被配置为执行如本文所述的技术,以将由麦克风685收集的音频样本的处理进行对齐,特别是在此类麦克风可在任意时间异步被开启的情况下。这种音频处理系统可以通过执行方向对齐、到达方向估计、音频定位和其他过程来进一步处理得到的对齐的音频样本。
101.soc 630b和630c各自表示用于在相应的显示器例如显示器686a、686b(统称为“显示器686”)上输出人工现实内容的显示控制器。在该示例中,soc 630b可以包括用于显示器668a的显示控制器,以向用户的左眼687a输出人工现实内容。例如,soc 630b包括解密块692a、解码器块694a、显示控制器696a和/或用于在显示器686a上输出人工现实内容的像素驱动器698a。类似地,soc 630c可以包括用于显示器668b的显示控制器,以向用户的右眼687b输出人工现实内容。例如,soc 630c包括解密692b、解码器694b、显示控制器696b和/或像素驱动器698b,用于生成和在显示器686b上输出人工现实内容。显示器668可以包括发光二极管(led)显示器、有机led(oled)、量子点led(qled)、电子纸(电子墨水)显示器、液晶显示器(lcd)或用于显示ar内容的其他类型的显示器。
102.hmd 112还包括外部存储器634,其可由soc 630a、630b和/或630c中的每一个访问。如图5所示,hmd 112包括电源699,其向soc 630a、630b、630c和/或显示器686中的每一个提供电力。
103.外围设备602包括被配置为支持人工现实应用的soc 610a和610b。在这个示例中,soc 610a包括功能块,包括跟踪640、加密/解密650、显示处理器652、接口654和安全处理器656。跟踪640是提供眼睛跟踪642(“眼睛642”)、手跟踪644(“手644”)、深度跟踪646(“深度646”)和/或即时定位与地图构建(slam)648(“slam 648”)的功能块。例如,外围设备602可以从输出指示外围设备602的当前加速度的数据的一个或更多个加速度计(也称为惯性测量单元或“imu”)、输出指示外围设备602的位置的数据的gps传感器、输出指示外围设备602与各种对象的距离的数据的雷达或声纳、或者提供外围设备602或物理环境内的其他对象的位置或取向的指示的其他传感器接收输入。在一些示例中,外围设备602还可以从一个或更多个图像捕获设备接收图像数据,所述图像捕获设备例如是摄像机、激光扫描仪、多普勒雷达扫描仪、深度扫描仪等,其被配置为输出表示物理环境的图像数据。基于所感测的数据和/或图像数据,跟踪块640确定例如外围设备602的参考系的当前姿态,并且根据当前姿态,将人工现实内容渲染到hmd 112。
104.加密/解密650加密传送到hmd 112或安全服务器的传出数据,并解密从hmd 112或安全服务器传送的传入数据。加密/解密550可以支持对称密钥密码术,以使用会话密钥(例
如,秘密对称密钥)来加密/解密数据。
105.显示处理器652包括一个或更多个处理器,例如视频处理单元、图形处理单元、编码器和/或解码器和/或其他,用于将人工现实内容渲染到hmd 112。
106.接口654包括一个或更多个接口,用于连接到soc 510a的功能块。作为一个示例,接口684可以包括外围组件互连快速(pcie)插槽。soc 610a可以使用接口684与soc 610b连接。soc 610a可以使用接口684与一个或更多个通信设备(例如,无线电发射机)连接,用于与其他设备(例如hmd 112)通信。
107.当与在ar环境内结合使用的设备(例如hmd 112)配对时,安全处理器656可提供外围设备602的安全设备证明和相互认证。安全处理器656可以认证外围设备602的soc 610a、610b。
108.soc 610b包括协应用处理器660和应用处理器662。在该示例中,协应用处理器660包括各种处理器,例如视觉处理单元(vpu)、图形处理单元(gpu)和/或中央处理单元(cpu)。应用处理器662可以包括处理单元,用于执行一个或更多个人工现实应用,以生成和渲染例如虚拟用户界面到外围设备602的表面和/或检测用户相对于外围设备602执行的手势。
109.在一些示例中,整个人工现实系统内的各种部件或系统可在低功率模式下操作。例如,在先前描述的图示中示出的hmd 112有时可以以减少其内部电源699的使用的方式操作或有时被配置为以这种方式操作。在电源699是电池的情况下,如果hmd 112以降低功耗的方式操作,则可以延长hmd 112能够使用电源699有效地操作的时间。
110.hmd 112可以节省功率的一种方式是减少从电源699汲取功率的设备、部件和/或外围设备。例如,在一些示例中,在并非所有这样的麦克风685对于整个人工现实系统内的hmd 112的有效操作都是必要的情况下,hmd 112可以禁用、关闭一个或更多个麦克风685或从一个或更多个麦克风685移除功率。在一些示例中,默认情况下,hmd 112可以在低功率模式下操作,并且仅使用麦克风685的子集,而不是可用麦克风685的完整阵列。通过仅使用麦克风685的子集,hmd 112在许多情况下可以消耗更少的功率。
111.然而,在某些情况下,hmd 112可从低功率模式转变到更鲁棒的模式,在该更鲁棒的模式下,对于某些操作而言,可能期望或要求使用额外的麦克风685。举例来说,当佩戴hmd 112的用户从安静环境移动到嘈杂环境时,麦克风685的阵列在将用户的音频语音与物理环境中的其他声音区分开方面可能是有用的。在这样的示例中,以及在识别声音的源和/或区分音频源是有用的其他情况下,hmd 112可以使用麦克风685的阵列来分析来自多个麦克风685的音频并执行声源识别。替代地或附加地,hmd 112可以使用由多个麦克风685捕获的音频来执行方向对齐、到达方向估计、音频定位和其他过程。然而,使用更多的麦克风685比使用更少的麦克风685消耗更多的功率,因此hmd 112可能仅在某些情况下,例如当物理环境(例如,嘈杂的环境)的特性或在hmd 112或控制台106上执行的特定应用需要时,使用更大数量的麦克风685。
112.为了转变到使这种音频分析将能够被执行的操作模式,hmd 112可以开启先前关闭(即,先前汲取很少功率或不汲取功率)的一个或更多个或一系列麦克风685。然而,异步开启额外的麦克风685可能导致一些麦克风685捕获的音频样本与阵列中其他麦克风685捕获的音频样本不完全对齐。在一些情况下,当hmd 112对音频样本执行某些操作(例如,声源识别、方向对齐、定位、混合)时,这种未对齐会造成复杂情况。如果来自麦克风685的阵列中
的每个麦克风685的音频样本是对齐的,则执行这样的操作往往更加有效或可行。
113.因此,在图5的示例中,以及根据本公开的一个或更多个方面,hmd 112可将从多个麦克风685接收的音频样本对齐。例如,在可以参考图5描述的示例中,处理器682接收hmd 112正在可能期望或需要多个麦克风685的模式下操作的指示。处理器682使麦克风685的阵列内的附加麦克风685开启。处理器682使来自这些麦克风685的音频样本流向(stream to)音频子系统690。音频子系统690从多个麦克风685接收音频样本,其中一些麦克风可能已经在不同时间被启动或开启。音频子系统690将从每个麦克风685接收的音频样本的处理进行对齐。
114.在一些示例中,为了将样本的处理对齐,音频子系统690可将延迟引入到从一个或更多个麦克风685(例如,后来开启的麦克风685)接收的音频样本的处理中。在其他示例中,音频子系统690可以使用同步信号来处理每个音频样本。在这样的示例中,音频子系统690使用同步信号来同步与麦克风685捕获的每个音频样本相关联的音频处理流水线被启动的时间。对于与音频样本相关联的音频处理流水线,可以丢弃在初始同步信号之前接收的一些音频处理数据。
115.图6a、图6b和图6c是根据本公开的一个或更多个方面,示出从多个麦克风收集的音频样本的处理的时序图。图6a、图6b和图6c中的每一个都包括两组波形(即,通道0和通道1),每一组都具有通道使能信号(例如,“ch0_en”)、脉冲密度调制(pdm)时钟(例如,“ch0_pdm_clk”)、脉冲编码调制(pcm)数据有效信号(例如,“ch0_pcm_data_vld”)和pcm数据波形(例如,“ch0_pcm_data”)。在图6a、图6b和图6c中的每一个中,通道0和通道1以相同的采样频率操作。此外,在图6a、图6b和图6c中的每一个中,与通道1相关联的麦克风在与通道0相关联的麦克风之后被开启。在图6a、图6b和图6c的波形中收集和描绘的音频样本可以对应于由例如图5的麦克风685中的两个麦克风收集的音频样本。
116.在图6a中,通道0时序图710a和通道1时序图711a示出了音频子系统690在处理来自两个通道的音频数据时执行的操作。通道0时序图710a对应于来自麦克风685中的一个麦克风的音频数据的处理。通道1时序图711a对应于来自麦克风685中的不同麦克风的音频数据的处理。在所示的示例中,在对应于通道0时序图710a的麦克风已经被开启或启用时,对应于通道1时序图711a的麦克风被开启或启用(即,当“ch1_en”升高时)。因此,当音频子系统690开始处理来自对应于通道1时序图711a的麦克风的数据时,音频子系统690已经在处理对应于通道0时序图710a的麦克风的音频数据。在一些示例中,音频子系统690可以在需要多个时钟周期的多级处理流水线中处理音频数据。如果当音频子系统690已经开始处理通道0中的音频数据时,音频子系统690开始处理通道1中的音频数据,则通道0时序图710a和通道1时序图711a中的每一个的数据有效信号可能不对齐。
117.图6a中示出了这种未对齐。在图6a中,通道0开始周期性地(包括在时钟周期2、9、16处,如图6a所示)处理音频数据样本。流水线周期在图6a中被标记为ts(即1/时钟频率)。如果通道1在某个任意时间(例如,在时钟周期4处)被启用,则存在时间段t1,该时间段t1表示通道1的音频流水线的处理滞后于通道0的音频流水线的处理的时间量。然后,通道1的数据有效信号(“ch1_pcm_data_vld”)在初始流水线时延(latency)tinit之后被触发,使得数据在时钟10处对于通道1是有效的,然后周期性地有效。在所示的例子中,即使通道0和通道1的流水线时延相同,数据有效信号也不同步,因为音频处理流水线在不同的时钟周期开
始。
118.在数据有效信号不是同时被生成的情况下处理由音频处理流水线生成的音频数据样本往往会使某些类型的多样本处理(例如声源识别、定位、混合和其他操作)变得复杂。根据本公开的一个或更多个方面,本文描述了用于以使得将能够以同步方式生成每个处理流水线的数据有效信号的方式来对齐音频处理流水线的相位的技术。这种对齐简化了对音频数据的多个样本的某些类型的处理,并且在某些情况下可能使之可行。
119.在图6b中,通道0时序图710b和通道1时序图711b示出了由音频子系统690执行以将多个通道的音频样本的处理进行对齐的操作。如图6a中所示的那样,通道0时序图710b对应于来自麦克风685中的一个麦克风的音频数据的处理,而通道1时序图711b对应于来自麦克风685中的不同麦克风的音频数据的处理。在图6b的示例中,对应于通道1时序图711b的麦克风在对应于通道0时序图710b的麦克风之后被开启。具体来说,通道1麦克风在通道0针对由通道0捕获的音频数据开始处理流水线之后的时间t1处被开启。
120.根据本公开的一个或更多个方面,并且为了确保在图6b所示的示例中同时处理从两个麦克风中的每一个接收的音频样本,音频子系统690在激活通道1的时钟(“ch1_pdm_clk”)之前引入延迟。该延迟(图6b中的twait)确保通道0和通道1的音频处理流水线同时开始,这具有确保通道1的数据有效信号与通道0的数据有效信号同时出现的效果。在一些示例中,音频子系统690通过从音频处理流水线的周期的长度中减去t1来计算延迟。t1可以是已知的,因为音频子系统690可以监控由通道0生成的数据有效信号,并且因为它们是周期性的,所以在任何给定的时钟周期,有可能知道自通道0的最后一个处理流水线被启动以来有多少个时钟周期(或者等效地,直到通道0的下一个处理流水线将被启动之前有多少个时钟周期)。因此,引入延迟以确保通道1在通道0开始其处理流水线的同时开始其处理流水线。如图6b所示,结果是两个通道的数据有效信号在相同的时钟周期上出现。通过确保通道1的数据有效信号与通道0的数据有效信号同时出现,通道0和通道1中的每一个的处理后的数据样本将被对齐。音频子系统690可以使用这样对齐的数据样本来执行声源识别、定位、混合和其他操作。
121.在图6c中,通道0时序图710c和通道1时序图711c示出了由音频子系统690执行以将多个通道的音频样本的处理进行对齐的替代示例操作。如同在图6a和图6b中一样,通道0时序图710c对应于来自麦克风685中的一个麦克风的音频数据的处理,而通道1时序图711c对应于来自麦克风685中的另一个麦克风的音频数据的处理,并且对应于通道1的麦克风在对应于通道0的麦克风之后被开启。
122.根据本公开的一个或更多个方面,并且为了确保在图6c的示例中同时处理相同的音频样本,音频子系统690使用在通道间传送的同步信号,以确保通道1的数据有效信号与通道0的数据有效信号同时出现。在图6c的示例中,每当为通道0生成数据有效信号时,音频子系统690可以生成同步信号。在每个同步信号处,音频子系统690确保通道1在该时钟周期开始其音频处理流水线。在这样的例子中,通道1可以在其准备好生成有效的音频样本之前接收同步信号。当通道1在通道0已经开始其最后一个处理流水线之后开启且因此通道1还没有完成其自己的处理流水线时,通常会出现这种情况。在这种情况下,并且在图6c所示的例子中,通道1放弃其未完成的处理流水线,并且开始新的处理流水线。在一些示例中,音频子系统690可以通过刷新(flush)与通道1处理相关联的缓冲器(“ch1刷新流水线”)来丢弃
通道1的任何被部分处理的流水线数据。当接收到下一个和随后的同步信号时,通道0和通道1两者将被同步,并且将完成(或将已经完成)它们各自的处理流水线。在图6c的例子中,可能没有必要计算“t1”或计算“twait”(指示直到开始处理流水线之前要等待多长时间),因为同步信号可以提供所有必要的信息。
123.图7a、图7b和图7c是时序图,示出了根据本公开的一个或更多个方面的从以不同采样频率操作的多个麦克风收集的音频样本的处理。如同在图6a、图6b和图6c中一样,图7a、图7b和图7c中的每一个都包括两组波形(即,通道0和通道1),每一组都具有通道使能信号(例如,“ch0_en”)、脉冲密度调制(pdm)时钟(例如,“ch0_pdm_clk”)、脉冲编码调制(pcm)数据有效信号(例如,“ch0_pcm_data_vld”)和pcm数据波形(例如,“ch0_pcm_data”)。在图7a、图7b和图7c中的每一个中,与通道1相关联的麦克风在与通道0相关联的麦克风之后被开启。在所示的例子中,通道0在比通道1更高的频率(例如,32khz和16khz)处操作。然而,在其他示例中,通道1可以在比通道0更高的频率处操作,这可以对应于较高保真度的麦克风被添加到麦克风阵列的情形(例如,诸如在hmd 112寻求移动到更鲁棒的音频处理模式的情形中)。然而,在一些示例中,较低保真度的麦克风被添加到麦克风阵列的情形是有效的用例,至少因为它可以在转变到需要较不鲁棒的音频处理模式的模式时使用,如结合图8进一步描述的。
124.在图7a中,通道0时序图720a和通道1时序图721a示出了音频子系统690在处理来自以不同频率操作的两个通道的音频数据时所执行的操作。在图7a所示的例子中,由于对应于通道1的麦克风在对应于通道0的麦克风之后被开启,所以当音频子系统690开始处理由通道1的麦克风采样的音频数据时,音频子系统690已经在处理由对应于通道的麦克风采样的音频数据。因此,图7a示出了如果在音频子系统690已经开始处理通道0时序图720a中的音频数据时,音频子系统690开始处理通道1中的音频数据,则通道0和通道1中的每一个的数据有效信号可能不对齐。在图7a的例子中,由于通道0和通道1操作的频率不同,未对齐可能会加剧。如图6a中所示的一样,这种未对齐可能使某些类型的多样本处理(例如声源识别、定位、混合和其他操作)变得复杂。
125.在图7b中,通道0时序图720b和通道1时序图721b示出了在多个通道以不同频率操作时音频子系统690执行的将这些通道的音频样本的处理进行对齐的操作。在图7b的例子中,对应于通道1的麦克风在对应于通道0的麦克风之后被开启。具体而言,在通道0开始处理流水线之后的一段时间(“t1”)后,通道1的麦克风被开启。以类似于结合图6b描述的方式,并且为了确保在图7b的示例中同时处理相同的音频样本,音频子系统690在激活通道1的时钟之前引入延迟。延迟(即“twait”)确保通道1的数据有效信号在与通道0的频率对齐的时间出现。在所示的示例中,音频子系统690将延迟引入通道1,使得通道0和通道1中的每一个的数据有效信号将在它们的自然节拍中对齐(即,在通道1的每一个数据有效信号处,以及在通道0的每隔一个数据有效信号处)。在一些示例中,音频子系统690通过从通道1的周期(“ts2”)中减去t1来计算延迟(“twait”)。如图7b所示,ts2是通道0的周期“ts1”的两倍。同样如图7b所示,计算twait还可以包括进一步减去tinit与ts1的模数(modulus)(即在tinit除以ts1之后的余数中的时钟周期数)。
126.在图7c中,通道0时序图720c和通道1时序图721c示出了由音频子系统690执行的将在不同频率处操作的多个通道的音频样本的处理进行对齐的操作的替代示例。在该示例
中,为了确保同时处理相同的音频样本,音频子系统690使用在通道之间传送的同步信号来确保通道0时序图720c的数据有效信号与通道1时序图721c的数据有效信号同时出现。具体地,音频子系统690确保通道0时序图720c的每隔一个的数据有效信号与通道1时序图721c的数据有效信号同时出现。在图6c的示例中,音频子系统690可以在每隔一次为通道0生成数据有效信号时生成同步信号。在图7a中,通道0操作的频率是通道1的两倍。在不同的示例中,例如在通道0的频率是通道1的频率的三倍的示例中,音频子系统690可以在每隔两次为通道0生成数据有效信号时生成同步信号。
127.在图7c的示例中,在每隔一次为通道0生成数据有效信号时生成同步信号的情况下,音频子系统690确保通道1在每个这样的同步信号处开始其音频处理流水线。在这样的示例中,并且如在图6c中所示的一样,通道1可以在它准备好生成有效音频样本之前接收同步信号(例如,如果通道1在通道0开始其最后的处理流水线之后被开启,并且通道1还没有完成其自己的处理流水线)。在这种情况下,并且在对应于图7c的示例中,通道1可以放弃其未完成的处理流水线,并且开始新的处理流水线,从而确保它与通道0同时开始对音频数据的处理流水线。在一些示例中,音频子系统690可以通过刷新与通道1处理相关联的缓冲器来丢弃通道1的任何被部分处理的流水线数据。
128.图8是示出根据本公开的一个或更多个方面的在音频处理状态之间转变的示例过程的流程图。本文在图5的hmd 112内的音频子系统690从低功率、较不鲁棒的音频处理模式转变到较高功耗、较鲁棒的音频处理模式且接着再次回到低功率、较不鲁棒的音频处理模式的背景中描述图8的过程。为了便于说明和简化描述,图8的示例是在两个麦克风的背景中描述的,这两个麦克风可以对应于图5所示的麦克风685中的任意两个。然而,图8的例子可以扩展到任意数量的麦克风。此外,在其他示例中,可以执行不同的操作,或者在图8中描述为由特定部件、模块、系统和/或设备执行的操作可以由一个或更多个其他部件、模块、系统和/或设备执行。此外,在其他示例中,结合图8描述的操作可以以不同的顺序执行、合并、省略,或者可以包含未具体示出或描述的附加操作,即使这些操作被示为由多于一个的部件、模块、系统和/或设备执行。
129.在图8所示的过程中,并且根据本公开的一个或更多个方面,音频子系统690最初可在相对低功率模式下操作,该模式在图8的示例中被表征为麦克风1被启用并以16khz的频率操作(811)、且麦克风2被禁用并可能汲取很少功率或不汲取功率(821)的模式。
130.hmd 112可以确定更鲁棒的音频处理模式可能是合适的(来自801的“是”路径)。举例来说,在图8的示例中,hmd 112可以检测到hmd 112确定的输入对应于需要更鲁棒的音频处理的应用的启动。在另一个示例中,hmd 112的一个或更多个麦克风685可以检测到hmd 112确定的输入对应于如下指示:操作hmd 112的物理环境已经从相对安静的环境改变为嘈杂的环境,其中可能需要多个麦克风来准确地辨别用户的话音或者来有效地执行足够的到达方向估计或其他处理。在其他情况下,其他环境可能导致hmd 112确定更鲁棒的音频处理模式可能是合适的。
131.hmd 112可以启用附加麦克风(802)。举例来说,在图8的示例中,hmd 112使音频子系统690内的控制系统以32khz的频率启用麦克风2(822)。麦克风2可在任何任意时间被启用,因此麦克风1和麦克风2收集的音频样本的处理很可能会不对齐,如结合图6a和图7a所述。
132.在启用麦克风2后,hmd 112可以同步麦克风1和麦克风2收集的样本的音频处理(803)。举例来说,在图8的示例中,音频子系统690可将延迟引入与麦克风2相关联的音频处理流水线中,以确保麦克风2的音频处理与麦克风1的音频处理对齐。由于麦克风2以不同于麦克风1的频率操作,所以音频子系统690可以执行类似于结合图7b描述的那些技术,以正确计算将被引入与麦克风2相关联的流水线中的延迟。在另一示例中,音频子系统690可以使用由与麦克风1相关联的处理触发的同步信号来识别开始与麦克风2相关联的音频处理流水线的适当时间。
133.hmd 112可以提高麦克风1的采样频率(804)。举例来说,在转变到更鲁棒的音频处理模式时,hmd 112可以确定麦克风1和麦克风2两者都应在32khz处操作。因此,hmd 112确定麦克风1应该从在16khz的频率处操作转变到在32khz的频率处操作。在一些示例中,为了将麦克风1转变到32khz的频率,音频子系统690可以首先关闭或禁用麦克风1,并以较高的32khz速率重新启用麦克风1(812)。
134.在提高麦克风1的速率后,hmd 112可以同步麦克风1和麦克风2收集的样本的音频处理(805)。在通过首先禁用麦克风1然后以较高频率重新启用麦克风1来将麦克风1从16khz转变到32khz的示例中,音频子系统690可能需要对齐麦克风1和麦克风2的处理,因为这种示例再次涉及麦克风(在这种情况下,麦克风1)在现有麦克风已经在处理音频数据之后的任意时间被启用。音频子系统690可以通过引入延迟、通过使用由与麦克风2收集的音频数据的处理相关联的逻辑生成的同步信号、或者通过使用另一种技术来将麦克风的音频处理进行对齐。
135.当麦克风1和麦克风2均被启用并在32khz处操作时,结合图8描述的双麦克风系统可被视为在鲁棒模式下操作。麦克风1和麦克风2操作的32khz频率是更鲁棒的,因为更高的频率采样速率使得能够收集更高保真度的音频数据。此外,两个麦克风可以实现仅用单个麦克风可能无法实现的音频数据处理(例如,声源识别)。然而,在32khz处操作的两个麦克风比上述由单个16khz麦克风1(例如,811和821)表征的较不鲁棒的初始模式消耗更多的功率。
136.hmd 112可以继续在更鲁棒的音频处理模式下操作(来自806的“是”路径)。然而,hmd 112可以替代地检测到不再需要更鲁棒的音频处理模式(来自806的“否”路径)。例如,在一些示例中,hmd 112可以确定不再使用需要更鲁棒的音频处理的应用,或者hmd 112可以检测到物理环境的变化。
137.hmd 112可以降低麦克风1的采样频率(807)。举例来说,在转变到较不鲁棒的音频处理模式时,hmd 112可以确定麦克风1应在16khz处操作。在一些示例中,为了将麦克风1转变到16khz,音频子系统690可以首先禁用麦克风1(当前在32khz处操作)并以16khz重新启用麦克风1(813)。
138.在降低麦克风1的速率后,hmd 112可以同步麦克风1和麦克风2收集的样本的音频处理(808)。在通过首先禁用麦克风1然后以较低频率重新启用麦克风1来将麦克风1从32khz转变到16khz的示例中,如结合图7a所述,麦克风1和麦克风2正在处理的音频数据样本的对齐可能是必要的。为了执行这种对齐,音频子系统690可以以结合图7b描述的方式将延迟引入麦克风1的音频处理流水线中。替代地,以结合图7c描述的方式,音频子系统690可以使用由与麦克风2收集的音频数据的处理相关联的逻辑生成的同步信号。
139.hmd 112可以降低麦克风2的采样频率(809)。举例来说,在转变到较不鲁棒的音频处理模式时,hmd 112可以确定麦克风2应在16khz处操作(824)。hmd 112可以使音频子系统690禁用麦克风2并以16khz重新启用麦克风。在以16khz重新启用麦克风2之后,音频子系统690可以再次将麦克风1和麦克风2的音频处理进行对齐,且接着可以禁用麦克风2(810和825)。在所描述的示例中,当转变到较不鲁棒的音频处理模式(806到809)时,音频子系统690在禁用麦克风2之前将麦克风2从32khz转变到16khz。与可能涉及简单地当麦克风2在32khz处操作时禁用麦克风2的替代过程相比,这种过程可以提供从更鲁棒的音频处理模式到较不鲁棒的音频处理模式的更优雅和无缝的转变。
140.图9是示出由根据本公开的一个或更多个方面的示例hmd执行的操作的流程图。下面在图5的hmd 112的背景中描述图9。在其他示例中,图9中描述的操作可以由一个或更多个其他部件、模块、系统或设备来执行。此外,在其他示例中,结合图9描述的操作可以被合并、以不同的顺序执行、被省略,或者可以包含未具体示出或描述的附加操作。
141.在图9所示的过程中,并且根据本公开的一个或更多个方面,hmd 112可以接收由第一麦克风收集的音频样本(901)。例如,在可以参考图5描述的示例中,麦克风685a检测输入并将关于输入的信息输出到soc 630a。soc 630a内的音频子系统690接收关于输入的信息,并确定该输入对应于麦克风685a收集的音频数据样本。
142.hmd 112可以继续接收由第一麦克风收集的音频样本(来自902的“否”路径)。最终,hmd 112可以确定应启用第二麦克风(来自902的“是”路径)。例如,在参考图5描述的示例中,hmd 112可以检测到其确定的输入对应于模式改变(例如,物理环境的改变或新应用在hmd 112上被启动)。hmd 112可以进一步确定该模式改变需要更鲁棒的音频处理系统。在这样的示例中,hmd 112向音频子系统690输出关于模式改变的信息。音频子系统690使hmd 112启用麦克风685b。一旦被启用,麦克风685b检测输入并将关于输入的信息输出到soc 630a内的音频子系统690。音频子系统690确定该输入对应于麦克风685b收集的音频数据样本。
143.hmd 112可以对第一麦克风和第二麦克风收集的音频样本执行相位对齐(903)。举例来说,hmd 112的音频子系统690可以对麦克风685a和麦克风685b收集的音频数据样本的处理执行相位对齐过程。通过执行这样的过程,音频子系统690可以确保用于对应于麦克风685a和685b的每个处理流水线的数据有效信号在相同的时钟周期上出现。为了执行这样的过程,音频子系统690可以执行类似于结合图6b、图6c、图7b和/或图7c描述的那些操作。
144.hmd 112可以处理由第一麦克风和第二麦克风收集的音频样本(904)。例如,音频子系统690可以使用来自麦克风685a和685b的同步音频数据来执行其他操作,包括声源识别、方向对齐、定位和/或音频数据的混合。
145.本公开中描述的技术可以至少部分地以硬件、软件、固件或其任何组合实现。例如,所描述的技术的各个方面可在一个或更多个处理器内实现,该处理器包括一个或更多个微处理器、dsp、专用集成电路(asic)、现场可编程门阵列(fpga)、或任何其他等效的集成或分立逻辑电路,以及此类部件的任何组合。术语“处理器”或“处理电路”一般可指前述逻辑电路中的任一种(单独或与其他逻辑电路组合),或任何其他等效电路。包括硬件的控制单元也可执行本公开的一种或更多种技术。
146.此类硬件、软件和固件可在同一设备内或在单独的设备内实现,以支持本公开中
描述的各种操作和功能。此外,所描述的单元、模块或部件中的任一个可一起或单独地实现为分立的但可互操作的逻辑设备。将不同特征描述为模块或单元旨在突出不同的功能方面,并不一定意味着这样的模块或单元必须由单独的硬件或软件部件实现。更确切地说,与一个或更多个模块或单元相关联的功能可以由单独的硬件或软件部件执行,或者集成在公共或单独的硬件或软件部件内。
147.在本公开中描述的技术还可在包含指令的计算机可读介质(例如计算机可读存储介质)中体现或编码。嵌入或编码在计算机可读存储介质中的指令可以例如在指令被执行时使可编程处理器或其他处理器执行方法。计算机可读存储介质可包括随机存取存储器(ram)、只读存储器(rom)、可编程只读存储器(prom)、可擦除可编程只读存储器(eprom)、电子可擦除可编程只读存储器(eeprom)、闪存、硬盘、cd-rom、软盘、盒式磁带、磁介质、光学介质或其他计算机可读介质。
148.如本文通过各种示例所描述的,本公开的技术可包括人工现实系统或结合人工现实系统来实现。如所描述的,人工现实是在呈现给用户之前已经以某种方式进行了调整的现实的形式,其可包括例如虚拟现实vr、增强现实ar、混合现实mr、混杂现实、或其某种组合和/或衍生物。人工现实内容可以包括完全生成的内容或与捕获的内容(例如,真实世界的照片)相结合的生成的内容。人工现实内容可以包括视频、音频、触觉反馈、或它们的某种组合,并且其中的任何一种都可以在单个通道中或在多个通道中被呈现(诸如,对观看者产生三维效果的立体视频)。另外,在一些实施例中,人工现实可以与应用、产品、附件、服务或其某种组合相关联,这些应用、产品、附件、服务或其某种组合例如用于在人工现实中创建内容和/或在人工现实中被使用(例如,在人工现实中执行活动)。可以在各种平台上实现提供人工现实内容的人工现实系统,所述各种平台包括连接至主计算机系统的头戴式显示器(hmd)、独立的hmd、移动设备或计算系统、或者能够向一个或更多个观看者提供人工现实内容的任何其他硬件平台。
再多了解一些

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

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

相关文献