用于扩展现实的高精度3维音频的系统和方法

文档序号:7945531阅读:202来源:国知局
专利名称:用于扩展现实的高精度3维音频的系统和方法
技术领域
本发明涉及用于扩展现实的高精度3维音频的系统和方法。
背景技术
公知的是,人类具有使用他们的耳朵在即使没有任何视觉线索的情况下识别声音源的能力。人类通过采用从一只耳朵导出的线索并且通过比较在两只耳朵处所接收的线索(差异线索或双耳线索)来估计源的位置。在这些差异线索之中有到达的时间差和强度差。单耳线索来自声音源与人类解剖结构之间的交互,在人类解剖结构中,原始源声音在其进入耳道以前被修改,以供由听觉系统进行处理。在现实世界情况下,声音实际上是从特定位置处发出的。所期望的可能是,使听者能够感受到由音频扬声器产生的声音似乎来自3维空间中的特定位置。一种可能的技术包括让用户佩戴亦称“头戴式耳机”的“头戴耳机”。也就是说,一个音频扬声器被放置在每个耳朵之上或附近。该技术可以采用使用“与头部相关的传输函数”(HRTF)来创建音频信号以制造声音源自3D空间中的某位置这一错觉。在此,制造声音来自3D空间中的某位置这一错觉的音频信号被称为3D音频信号。HRTF可以基于自由空间中的声音与到达耳膜时的声音之间的差异来定义。HRTF 描述给定的声波输入(其被参数化为频率和声音位置)在该声音达到耳膜和内耳以前如何被头部和耳廓的衍射和反射性质过滤。HRTF可以与人的头部形状和他们耳朵的物理特性密切相关。因此,HRTF可能因人而显著不同。因此,尽管HRTF可以用于帮助创建3D音频信号,但是在使HRTF适应于每个用户方面仍然存在挑战。3D音频的一种可能的应用是在扩展的现实场景中。扩展的现实可以被定义为使用某种计算机生成的技术来扩展现实世界情况。扩展的现实、以及其他3D应用需要精确的 3-D音频。例如,用户应当能够将声音精确定位为来自虚拟声音源。尽管存在3D音频技术,但是期望改进。如已经提到的那样,一种改进是为用户提供精确的HRTF。但是,还期望其它改进。3D音频信号应当是精确的、消费者友好的、节省成本的,并且与现有音频系统兼容。

发明内容
提供了用于提供3D音频的技术。3D音频可以用在扩展的现实中,但是这不是必需的。在此所公开的技术是精确的、节省成本的、用户友好的,并且与现有音频系统兼容。技术可以使用一个或多个传感器来收集描述听者所处的环境(例如房间)以及听者在房间中的位置的现实世界数据。逼真的3D音频信号可以基于从传感器收集的数据生成。一种选择是使用传感器来收集描述听者的物理特性(例如头部和耳廓形状和大小)的数据以便为该听者确定合适的HRTF。一个实施例包括一种方法,该方法包括基于传感器数据确定房间的物理特性; 确定听者在该房间中的位置;以及基于该房间的物理特性和听者在该房间中的位置确定3D音频信号。一个实施例包括一种装置,该装置包括一个或多个传感器、处理器以及计算机可读存储介质。该计算机可读存储介质其上存储有指令,所述指令在处理器上执行时致使该处理器使用传感器来收集关于环境和听者的数据。处理器基于传感器数据确定环境的物理特性以及听者在该环境中的位置。处理器基于环境的物理特性和听者在该环境中的位置来确定3D音频信号的不同分量。处理器将针对听者的与头部相关的传输函数(HRTF)应用于 3D音频信号的每个分量,并且提供3D音频信号。一个实施例包括一种用于提供3D音频信号的方法。该方法可以包括收集传感器数据,该传感器数据可以包括深度信息。基于深度信息确定听者的物理参数。可以基于 HRTF库确定与头部相关的传输函数(HRTF)——该确定可以基于听者的物理参数。可以收集包括关于房间的深度信息的传感器数据。可以基于该深度信息确定房间的物理参数。可以在房间中确定听者的位置。可以基于房间的物理参数以及听者在该房间中的位置来确定虚拟声音源与该听者之间的声音路径。基于房间的物理参数,可以为每个声音路径确定3D 音频信号的分量。针对听者的HRTF可以应用于3D音频信号的每个分量,并且可以提供该 3D音频信号。提供本发明内容以便以简化形式介绍将在以下的具体实施方式
中进一步描述的一些概念。本发明内容并不旨在标识出所要求保护的主题的关键特征或必要特征,也不旨在用于限定所要求保护的主题的范围。


图1描绘了运动捕捉系统的示例性实施例。图2描绘了图1的运动捕捉系统的示例性框图。图3是用于提供3D音频信号的过程的一个实施例的流程图。图4A描绘了用于确定房间的模型的过程的流程图。图4B描绘了用于基于虚拟特性和真实特性来构建房间模型的过程的一个实施例的流程图。图5A是用于确定3D音频信号的音频分量的过程的一个实施例的流程图。图5B描绘了房间的顶视图以以2维示出可能的声音路径。图6示出了用于确定听者在房间中的位置和旋转的过程的流程图。图7描述了用于为特定听者确定HRTF的过程的一个实施例。图8描绘了用于基于之前收集的详细特性来为听者选择HRTF的过程的一个实施例的流程图。图9是描绘用于基于这样的数据修改房间模型的过程的一个实施例的流程图。图10描绘了用于生成3D音频信号的一个实施例的框图。图11描绘了可以在图1的运动捕捉系统中使用的计算环境的示例框图。图12描绘了可以在图1的运动捕捉系统中使用的计算环境的另一示例框图。
具体实施例方式提供了用于提供3D音频的技术。3D音频可以用于扩展现实,但是其他应用也是可能的。在此所公开的技术是精确的、节省成本的、用户友好的,并且与现有音频系统兼容。 3D音频信号可以基于从听者所在的实际房间中所收集的传感器数据以及听者在该房间中的实际位置来生成。该音频信号可以表示“虚拟声音”,该虚拟声音表示来自3D空间中的某个特定位置的声音。该位置可以表示在视频屏幕上所显示的某个物体、或者甚至听者房间中的真实实物物体。在一些实施例中,3D音频信号通过一组头戴耳机被提供给听者。该3D 音频信号可以包括多个分量,这些分量基于所收集的传感器数据和听者的位置来确定。例如,墙壁和家具的位置可以从传感器数据中确定。还可以确定虚拟声音源与听者之间的多个(虚拟)声音路径。该传感器数据可以用于估计房间中的材料,使得可以确定这些材料在声音在沿着这些路径传播时可能对声音造成的影响。在一些实施例中,可以分析传感器数据以确定听者的物理特性,使得可以从HRTF库中确定合适的HRTF。针对听者的HRTF可以应用于3D音频信号的不同分量。下面讨论其他细节。在一些实施例中,生成3D音频信号被用于运动捕捉系统中。因此,将描述示例性的运动捕捉系统。然而,可以理解,本文所描述的技术不限于运动捕捉系统。图1描绘了运动捕捉和3D音频系统10的示例,其中房间(或其他环境)中的人与应用交互。运动捕捉和3D音频系统10包括显示器196、深度相机系统20、以及计算环境或装置12。深度相机系统20可以包括图像相机组件22,该图像相机组件22具有光发射器M、光传感器25、以及红绿蓝(RG^相机观。在一个实施例中,光发射器M发射准直光束。准直光束的示例可包括但不限于,红外(IR)和激光。在一个实施例中,光发射器M是LED。从视野6内的听者8、物体33、墙壁35等等反射离开的光由光传感器25来检测。在一些实施例中,系统10 使用该信息来确定如何生成3D音频信号。描述该房间的诸如RGB信息(其在下面予以讨论)之类其他信息可以用于确定如何生成3D音频信号。亦称为听者的用户站在深度相机系统20的视野6中。听者8佩戴了用来提供3D 音频声音的头戴耳机27。在该示例中,头戴耳机27包括两个音频扬声器37,所述音频扬声器37之一佩戴在每只耳朵之上或附近。系统10可以提供驱动音频扬声器37的3D音频信号。该3D音频信号可以使用无线或有线连接来提供。在某个实施例中,系统10将3D音频信号提供给另一组件,比如高保真度立体声系统、HDTV等等。对于听者8而言,3D音频信号中的声音可能似乎源自某个虚拟声音源四。作为一个示例,虚拟声音源29a可以是显示器196上所显示的物体。然而,虚拟声音源29a可以对应于房间中的某个真实物体^b。例如,可以指示用户将玩偶侏儒(gnome)放置在他们面前的桌上,其中系统10可以使得对用户而言就好像该玩偶侏儒正在与他们交谈(由于通过头戴27所播放的3D音频的缘故)。虚拟声音源四甚至可能好像源自房间之外。在一些实施例中,用户“佩戴”一个或多个话筒31,所述话筒可以被系统10用于确定房间的声学性质以提供更逼真的3D音频信号。在该示例中,话筒31位于头戴耳机27 上,但是用户可以将话筒31 “佩戴”在另一位置处。在一些实施例中,用户“佩戴”一个或多个惯性传感器38,所述惯性传感器可以被系统10用于确定听者8的位置和旋转。在该示例中,惯性传感器38位于用户的头上,但是用户可以将惯性传感器38 “佩戴”在另一位置处。 例如,惯性传感器38可以集成到头戴耳机27中。在一些实施例中,用户8可以携带相机, 该相机可以用于向系统10提供与深度相机系统20所生成的深度和/或RGB信息类似的深度和/或RGB信息。
线2和4表示视野6的边界。可以定义笛卡儿世界坐标系,其包括沿着深度相机系统20的焦距例如水平地延伸的ζ轴;垂直地延伸的y轴;以及侧向地且水平地延伸的χ 轴。注意,附图的透视被修改成简化表示,显示器196在y轴方向上垂直延伸,ζ轴垂直于y 轴和χ轴且与用户所站立的地面平行地从深度相机系统20延伸出来。一般而言,运动捕捉系统10用于识别、分析和/或跟踪对象。计算环境12可包括计算机、游戏系统或控制台等等,以及执行应用程序的硬件组件和/或软件组件。深度相机系统20可以包括相机,该相机用于可视地监视诸如用户之类的一个或多个物体8,使得可以捕捉、分析并跟踪用户所作出的姿势和/或运动,以执行应用中的一个或多个控制或动作,比如选中用户界面(UI)中的菜单项。运动捕捉系统10可以连接到诸如显示器196等可向用户提供视觉和音频输出的视听设备,如电视机、监视器、高清电视机(HDTV)等,或甚至是墙或其他表面上的投影。还可以经由单独的设备来提供音频输出。注意,3D音频信号通常通过头戴耳机27来提供。为驱动显示器,计算环境12可包括提供与应用相关联的视听信号的诸如图形卡之类的视频适配器和/或诸如声卡之类的音频适配器。显示器196可以通过例如S-视频电缆、同轴电缆、HDMI电缆、DVI电缆、VGA电缆等等连接到计算环境12。图2描绘了图1的运动捕捉和3D音频系统10的示例性框图。系统10包括深度相机系统20和计算环境12。在该实施例中,计算环境12具有3D音频生成195。计算环境 12输入来自深度相机系统20的深度信息和RGB信息,并且将3D音频信号输出给音频放大器197。音频放大器197可以是诸如HDTV、立体声系统等等之类的单独设备的一部分。3D 音频生成195可以通过在处理器192上执行指令来实现。注意,硬件执行的实施方式、以及混合型软件/硬件实施方式也是可能的。深度相机系统20可被配置成生成深度图像,该深度图像可以包括深度值。深度相机系统20可以将深度图像组织成“Z层”,或者可以与从深度相机系统20沿其视线延伸的Z 轴垂直的层。深度图像可包括所捕捉的场景的二维O-D)像素区域,其中该2-D像素区域中的每个像素具有代表距离图像相机组件22的线性距离(径向距离)的或由像素观察的 3D位置的Z分量(垂直距离)的相关联的深度值。图像相机组件22可以包括光发射器M和一个或多个光传感器25来捕捉从视野内的物体反射离开的光的强度。例如,深度相机系统20可使用光发射器M将光发射到物理空间上并使用光传感器25来检测从物理空间内一个或多个对象的表面所反射的光。在一些实施例中,深度值基于光强来确定。例如,随着时间的过去,越来越多的光子达到给定的像素。在收集时间段以后,每个像素处的光强被采样。深度图像中的深度值可以基于每个像素处的光强来确定。在一些实施例中,光发射器M发射脉冲红外光。在一些实施例中, 光被调制到所期望的频率。红绿蓝(RGB)相机洲可用于捕捉可见光图像。深度相机系统20还可以包括话筒 30,其包括例如接收声波并将其转换成电信号的换能器或传感器。另外,话筒30可用于接收也可由人提供的诸如声音之类的音频信号,以控制可由计算环境12运行的应用程序。音频信号可包括人的口声,如说的话、口哨声、喊声及其他发声,以及非口声,如掌声或跺脚。 在一些实施例中,话筒30是话筒阵列,它可具有一起运行的任何数量的话筒。如图1中所述,还可以由用户8佩戴一个或多个话筒31。这些话筒31的输出可以被提供给计算环境12以供由3D音频生成195来使用。如果期望的话,则话筒30的输出也可以由3D音频生成 195来使用。深度相机系统20可包括与图像相机组件22进行通信的处理器32。处理器32可以包括可执行例如包括用于生成3D音频信号的指令在内的指令的标准化处理器、专用处理器、微处理器等等。深度相机系统20还可包括存储器组件34,存储器组件34可存储可由处理器32执行的指令、以及存储RGB相机所捕捉的图像或图像帧、或任何其他合适的信息、图像等等。 根据一个示例实施方式,存储器组件34可包括随机存取存储器(RAM)、只读存储器(ROM)、 高速缓存、闪存、硬盘或任何其他合适的有形计算机可读存储组件。存储器组件34可以是经由总线21与图像捕捉组件22和处理器32通信的单独的组件。根据另一实施例,存储器组件34可被集成到处理器32和/或图像捕捉组件22中。深度相机系统20可以通过通信链路36与计算环境12进行通信。通信链路36可以是有线和/或无线连接。根据一个实施方式,计算环境12可以经由通信链路36向深度相机系统20提供时钟信号,该时钟信号指出何时从位于深度相机系统20的视野中的物理空间捕捉图像数据。此外,深度相机系统20可通过通信链路36向计算环境12提供深度信息和由RGB 相机观捕捉的图像。计算环境12然后可使用深度信息和所捕捉的图像来控制应用。例如,如图2所示,计算环境12可包括诸如姿势过滤器集合等姿势库190,每一姿势过滤器具有关于可(在用户移动时)执行的姿势的信息。例如,可以为各种手势(如手的猛击或投掷)提供姿势过滤器。通过将检测到的运动与每一个过滤器进行比较,可以标识由人执行的指定的姿势或运动。还可以确定执行运动的程度。计算环境还可包括处理器192,其用于执行存储在存储器194中的指令以向显示设备196提供音频-视频输出信号并实现其他功能。图3是用于提供3D音频信号的过程300的一个实施例的流程图。过程300可以在系统10内实现,但是可以使用不同的系统。在步骤301,收集传感器数据。该传感器数据可以包括、但不限于深度信息、GRB数据以及音频数据。例如,可以使用深度相机系统20来用光传感器25收集其(使用光发射器24)所发射的光。还可以使用RGB相机观。在一个实施例中,使用由用户8佩戴的一个或多个话筒31来收集传感器数据。也可以使用深度相机系统20中的话筒30。在一个实施例中,用户8握住相机并且将其在四周移动以收集房间周围的传感器数据。该数据可以包括深度信息和RGB数据。在步骤302,基于传感器数据来确定听者所在的房间或其他环境的物理特性。该传感器数据可以用于确定诸如墙壁和各个物体位于何处之类的信息。而且,该传感器数据可以用于估计房间中的材料。例如,传感器数据可以用于确定地面是硬木还是地毯。在步骤304,确定听者在房间中的位置。在一个实施例中,使用传感器数据来确定听者的位置。例如,可以使用在步骤302所收集的传感器数据来确定听者的位置。在步骤306,基于听者在房间中的位置以及该房间的一个或多个物理特性来确定 3D音频信号。作为一个示例,可以确定虚拟声音源与听者之间的多个声音路径。此外,可以将房间的物理特性作为因素计入。作为一个示例,从硬木地面反射离开的声音将不同于从地毯反射的声音。因此,对于具有这样的路径的声音路径而言,这可以作为因素计入。在一些实施例中,应用针对听者的HRTF以形成3D音频信号。在一些实施例中,基于传感器确定的特性来确定针对听者的HRTF。例如,图像相机组件20中的传感器可以捕捉深度和/或 RGB数据。可以存在HRTF库,其中基于匹配过程从该库中选择(或以其他方式确定)合适的 HRTF。在步骤308中,提供3D音频信号。例如,3D音频信号被提供给用于驱动头戴耳机 27的音频放大器197。注意,过程300可以通过如下方式重复收集更多传感器数据(301); 重新确定房间的物理特性(步骤30 ;重新确定听者的位置(步骤304)等等。然而,不需要连续地重复所有步骤。例如,过程300可以以任何所期望的间隔来重新确定房间特性。可以预期某些信息保持不变(例如墙壁的位置)。然而,诸如物体位置之类的其他房间信息可能随时间改变。由于听者的位置可能非常频繁地改变,因此可以仔细地跟踪听者的位置。图4A描绘了用于确定房间模型的过程400的一个实施例的流程图。过程400可以用在过程300的步骤301、302和306中。例如,该模型可以从在步骤301所收集的传感器数据中构建,并且在步骤306被用于确定音频分量。在步骤402,生成房间中的一个或多个物体的深度图像。在一个实施例中,通过由深度相机系统20将顶射束发射到视野内并且在一个或多个图像传感器处收集所反射的数据来形成深度图像。然后,处理该传感器数据以确定深度值(例如与各个物体相距的距离)。注意,由于视野可能是有限的,因此深度相机系统20可以调节视野并且重复收集附加的深度信息。在一些实施例中,图像相机组件 22由电机来控制,该电机允许移动视野以捕捉房间的更完整的照片。如上所述,用户8可以握住相机并且将其用于扫描房间以收集深度数据。在步骤404,生成房间中的一个或多个物体的RGB图像。在一个实施例中,由深度相机系统20使用红绿蓝(RGB)相机28来形成RGB图像。如上所述,用户8可以握住相机并且将其用于扫描房间以收集RGB数据。RGB图像可以与深度图像一起从一个以上的数据收集步骤中形成。步骤402和404是步骤301的一个实施例。在步骤406,确定房间和该房间中的物体的物理尺寸。还可以确定物体的物理位置。该信息可以基于在步骤402和404所收集的数据。在一些实施例中,基于所收集的数据来外插出该物理尺寸。如所述那样,深度相机系统20可能不能不收集整个房间的数据。 例如,参考图1,视野可能不能捕捉整个墙壁35。在这样的情况下,一种选择是对所收集的数据进行外插以针对没有数据的区域估计墙壁35的位置。步骤406是步骤302的一个实施例。在步骤408,对房间中的物体的材料进行估计。作为一个示例,对各件家具、墙壁、 天花板、地面等等的材料进行估计。在一些实施例中,使用深度信息来辅助该确定。例如, 该深度信息可以用于确定地板是光滑的(以及可能确定是硬木的或是铺了地板砖的)还是粗糙的(可能确定是铺了地毯的)。还可以使用RGB信息。注意,不需要估计实际材料, 但是这是一种选择。估计材料的原因是能够确定该材料将如何影响声音。因此,可以确定和排序可用于确定材料将如何影响声音从物体离开的反射的任何参数。在步骤410,基于在步骤406和408确定的物理尺寸和材料来构造房间的模型。之后,可以基于该房间模型生成3D音频信号。例如,该模型可以用在过程300的步骤306。因此,可以用3D音频信号来扩展用户房间的实际现实。步骤406、408和410是步骤302的一个实施例。
图4B描绘了用于基于虚拟特性和真实特性来构建房间模型的过程450的一个实施例。作为一个示例,可以使用处理器450来使得对于听者而言好像他们的房间被以某种方式变换。例如,如果用户玩视频游戏,其中用户想象他们处于监狱牢房中,则处理器450 可以用于构建具有监狱牢房的特性的房间模型。该模型可以使用用户房间的一些实际特性,比如物体的大小和位置。然而,替代于使用真实物体的实际材料,可以使用虚拟特性。例如,替代于实际的厚地毯,可以对水泥地面进行建模。因此,听者的房间的现实可以基于该模型由3D音频信号来扩展。在步骤452,访问物体在实际房间中的物理尺寸和位置。这些特性可以已经使用过程400被确定。然而,实际房间特性在期望时可以重新确定。在步骤454,确定虚拟环境的特性。例如,实现虚拟游戏的软件应用可以提供定义虚拟环境的参数。在本示例中,该应用可以提供描述墙壁、地面、天花板等等的虚拟材料的参数。注意,这些参数可以以另一方式来确定。在步骤456,将虚拟特性应用于实际房间特性。因此,替代于确定用户的实际地面是铺了地毯的以及确定声音将如何受到地毯影响,将用户的地面建模为水泥。然后,作出关于水泥将如何影响声音反射的确定。如果期望的话,则可以让虚拟特性应用于房间中的各个物体。例如,如果期望让沙发模拟大石(bolder),则可以让石头的特性应用于沙发。在步骤458,基于来自步骤456的信息来构建用户房间的模型。该模型可以在生成 3D音频信号时使用。例如,该模型可以用在图3的过程300的步骤306。注意,用户房间中的实际物体(家具、墙壁、天花板等等)可以用于确定该模型。因此,可以通过3D音频信号来扩展用户的实际房间的现实。图5A是用于确定3D音频信号的分量的过程500的一个实施例的流程图。过程500 是过程300的步骤306的一个实施例。在步骤502,确定虚拟声音源四的位置。例如,如果用户与显示器196上所示的虚拟世界交互,则虚拟声音源四可以是该虚拟世界中所显示的某个物体。然而,虚拟声音源四可以是用户房间中的实际物体或虚拟物体。例如,用户可以将物体放置在该房间中的所期望的位置处。然后,系统可以标识出该物体的位置。作为特定的示例,系统可以指示用户将物体放置在用户想要放置的地方。作为响应,用户可以在桌上放置玩偶侏儒。然后,系统例如通过使用深度相机系统来确定物体的位置。如前面所讨论的那样,系统可以跟踪用户的物理位置。因此,系统能够通过跟踪用户的运动来确定用户已经将玩偶侏儒放置在了桌上。可以将其他技术用于该系统以确定虚拟声音源四的实际位置。虚拟声音源四甚至可以处于房间之外。例如,系统可以使得某人好像在敲门或者从门的另一侧谈话。在步骤504,确定虚拟声音源四与听者8之间的声音路径。这可以包括确定直接路径和一个或多个间接路径。步骤504可以基于已经在过程300的步骤302确定的房间信息。图5B描绘了房间的顶视图以以2维示出可能的声音路径。注意,系统10可以以3维确定声音路径;然而使用2维来简化说明。在步骤504以前,系统可以确定听者8和房间中的其他物体33的位置。作为一个示例,其他物体33可以是沙发。在该示例中,声音路径包括直接声音路径和两个间接声音路径。一个间接声音路径是包括从一个物体的声音反射的一阶路径。还描绘了包括从两个物体的反射的二阶路径。在该示例中,物体33阻挡潜在的一阶路径(其由指向物体33的虚线箭头来指示)。还可以确定三阶和更高阶的路径。注意,可以考虑从墙壁以外的物体离开的反射。图5B的具体视图未描绘离开地面和天花板的声音反射,但是也可以考虑这些声音路径。在步骤506,为每个声音路径确定3D音频信号的分量。这些不同分量可以联合以形成3D音频信号。关于房间中的材料的信息可以用在步骤506。例如,如果已经确定沿着一阶路径存在关闭的窗,则可以将声音从玻璃反射离开的影响作为因素计入。另一方面, 可能确定该窗当前为打开的,在这种情况下,一阶路径可以不加以考虑。作为另一示例,窗帘可能被关闭,在这种情况下,考虑窗帘对一阶路径上传播的声音的影响。如之前所述,关于房间的信息可以以任何所期望的间隔更新。因此,当用户进行交互时,所生成的3D音频信号可能由于诸如用户打开窗、关闭窗帘等等之类的情况而改变。在步骤508,将针对听者的HRTF应用于每个音频分量。下面讨论为听者确定合适 HRTF的进一步细节。在将HRTF应用于每个音频分量以后,这些分量可以合并以生成3D音频信号。注意,在输出3D音频信号以前可以执行其他处理。图6示出了用于确定听者在房间中的位置和旋转的过程600的流程图。例如,过程 600可以用于确定用户的头旋转到哪个方位。过程600是过程300的步骤304的一个实施例。注意,过程600不一定包括收集用于为听者8确定合适HRTF的信息。该信息可以如下面所述那样以更加受限的基础来收集。该示例性方法例如可以使用深度相机系统20来实现。可以扫描用户8来生成模型,比如骨架模型、网格人类模型、或人的任何其他合适的表示。然后,该模型可以与房间信息一起用于确定用户在该房间中的位置。用户的旋转(例如用户的头所取向的方位)也可以从该模型中确定。根据一个实施方式,在步骤602中,例如,从深度相机系统接收深度信息。可以将深度图像下采样到较低的处理分辨率,使得其可以更容易地用较少的计算开销来使用和处理。另外,可从深度图像中移除和/或平滑掉一个或多个高变度和/或含噪声的深度值;可填入和/或重构缺少的和/或移除的深度信息的部分;和/或可对所接收的深度信息执行任何其他合适的处理,使得该深度信息可用于生成诸如骨架模型等模型。在判定步骤604,判定深度图像是否包括人类目标。这可以包括对深度图像中的每一个目标或物体进行泛色填充,将该目标或物体与图案进行比较以判断深度图像是否包括人类目标。例如,可以如上文所描述的那样将深度图像的选定区域或点中的像素的各种深度值进行比较,以确定可以定义目标或对象的边缘。可基于所确定的边缘来对Z层的可能Z 值进行泛色填充。例如,与确定的边缘相关联的像素和该边缘内的区域的像素可以彼此相关联,以定义可以与图案相比较的捕捉区域中的目标或对象,这在下面将更详细地描述。如果判定步骤604为真,则执行步骤606。如果判断步骤604为假,则在步骤602 中接收附加的深度信息。每一个目标或对象与其比较的图案可包括一个或多个数据结构,这些数据结构具有共同地定义人的典型身体的变量集合。可以将与例如视野内的人类目标和非人类目标的像素相关联的信息与变量进行比较,以标识人类目标。在一个实施例中,可以基于身体部位,对该集合中的每一个变量赋予权重。例如,图案中的诸如头和/或肩之类的各种身体部位可以具有与其相关联的权重值,这些权重值可以大于诸如腿之类的其他身体部位的权重值。根据一个实施方式,当将目标与变量进行比较以判断目标是否可能是人类以及哪些目标可能是人类时,可以使用权重值。例如,变量和目标之间具有较大的权重值的匹配与具有较小权重值的匹配相比可产生目标是人类的更大似然性。步骤606包括扫描人类目标以寻找身体部位。可以扫描人类目标,以提供与人的一个或多个身体部位相关联的诸如长度、宽度等等之类的测量值,以提供该人的准确模型。 在一示例实施例中,人类目标可以被隔离,并且可以创建人类目标的位掩模来扫描一个或多个身体部位。可以通过例如对人目标进行泛色填充来创建位掩模,以便人类目标可以与捕捉区域元素中的其他目标或对象分离。然后,可以对于一个或多个身体部位分析位掩码, 以生成人类目标的模型,如骨架模型、网格人类模型等等。步骤608包括生成人类目标的模型。在一个实施方式中,可以使用由扫描的位掩模确定的测量值来定义骨架模型中的一个或多个关节。一个或多个关节被用来定义对应于人类的身体部位的一个或多个骨头。一般而言,每个身体部位可被表征为定义骨架模型的关节和骨骼的数学向量。身体部位在关节处可以相对于彼此移动。模型可以包括描述用户的头的旋转的信息,使得得知用户的耳朵的取向。在步骤610,在用户上的惯性传感器收集数据。在一个实施例中,至少一个惯性传感器位于用户的头上以允许跟踪用户的头。在步骤611中,通过每秒钟多次更新人的位置来跟踪模型。随着用户在物理空间中移动,使用来自深度相机系统的信息来调整骨架模型,以使该骨架模型表示人。来自惯性传感器的数据也可以用于跟踪用户。具体而言,可以向骨架模型的一个或多个受力面施加一个或多个力,以将骨架模型调整为更加紧密地对应于物理空间中的人类目标的姿态的姿态。一般而言,可使用用于跟踪一个或多个人的运动的任何已知技术。在步骤612,基于对模型的跟踪来确定用户在房间中的位置。在步骤614,基于对模型的跟踪来确定用户的头的旋转。过程600可以继续跟踪用户,使得位置和旋转可以更新。在一些实施例中,基于听者8的物理特性从HRTF库中确定针对用户8的HRTF。这些物理特性可以基于诸如深度信息和RGB信息之类的来自传感器的输入来确定。图7描述了用于为特定听者8确定HRTF的过程700的一个实施例。该HRTF可以用在过程300的步骤306或者过程500的步骤508。注意,HRTF可以在任何时间确定。作为一个示例,为用户确定一次HRTF,并且将其存储以供反复使用。当然,可能修订HRTF (例如选择新的HRTF)。在步骤702,系统10指示用户8采取某个位置或姿态。例如,系统指示用户向左看。在步骤704,系统10收集用户处于该位置的情况下的数据。例如,使用深度相机系统 20来收集深度信息(利用传感器25)以及RGB信息(利用传感器观)。在步骤706,系统数据是否有效。例如,如果系统曾预期针对右耳的数据,则系统确定该数据是否与针对右耳所预期的数据相匹配。如果否,步骤702可以重复,使得再次指示用户采取正确的姿态。如果数据有效(步骤706为“是”),则系统确定是否存在该用户要采取的更多位置/姿态。在接下来的迭代中,可以要求用户向正前方看,向右看等等。可以收集针对多种多样的位置的数据。当收集到合适的数据时,过程700继续到步骤710以在步骤710为听者8确定 HRTF。在一些实施例中,存在可从中进行选择的HRTF库。这些HRTF可以与用户的各种物理特性相关联。示例包括、但不限于头大小和宽度、耳廓特性、身体尺寸。例如,特定的HRTF 可以与同头大小和耳廓相关的特定测量结果相关联。这些测量结果可以是某个范围或单个
12值。例如,一个测量结果可以是头宽度,这可以表达根据单个值或某个范围来表达。然后, 系统可以通过将用户的物理特性与同库中HRTF相关联的物理特性进行匹配来为用户选择 HRTF0可以使用任何技术来确定最佳匹配。在一个实施例中,系统进行内插以为用户确定 HRTF0例如,用户的测量结果可以处于两个HRTF的测量结果之间,在这种情况下,可以通过对两个HRTF的参数进行内插来确定针对该用户的HRTF。接着,系统可以执行附加的步骤以验证该HRTF确定是良好的,并且可能为该听者选择更好的HRTF。在步骤712,系统为该用户播放3D音频信号。这可以通过用户佩戴的头戴耳机来播放。在步骤714,可以要求用户指向3D音频信号的明显的源。在一个实施例中, 该过程被制成游戏,其中要求用户对着该声音射击。例如,系统在没有任何视觉表示的情况下播放鸭子声音。在步骤716,系统确定用户所指向的位置。步骤716可以包括使用深度相机系统来收集深度信息。系统还可以向用户要求话音输入,该语音输入可以由该系统使用语音识别来识别。可以针对其他声音重复步骤712-716,直到在步骤717确定收集到足够的数据。在步骤718,系统确定HRTF的有效程度。例如,系统确定用户能够多精确地对虚拟声音进行定位。在一个实施例中,如果用户命中声音源(例如用户射中鸭子),则系统在显示器196上显示该鸭子。然后,系统确定是否应当为该用户确定不同的HRTF。如果是,则通过返回到步骤710来确定新的HRTF。过程700可以重复步骤712-718,直到找到令人满意的 HRTF。在步骤722,为用户存储HRTF。注意,这不一定是在过程700中被测试的最后一个 HRTF。也就是说,系统可以确定之前在过程700曾被测试的HRTF之一可能是最好的。还应注意,可以为给定用户存储一个以上的HRTF。例如,可以针对佩戴眼镜和未佩戴眼镜的用户重复过程700,为每种情况存储一个HRTF。如所述那样,用于确定听者8的详细特性使得可以为该用户存储HRTF的这个过程可以不频繁地进行——可能仅仅进行一次。图8描绘了用于基于之前收集的详细特性来为听者8选择HRTF的过程800的一个实施例的流程图。例如,过程700可以在过程800以前执行一次。然后,过程800可以执行许多次。在步骤802,使用生物测定信息来标识出听者 8。注意,该信息不同于在过程700收集的信息。然而,可能的是,可能存在信息的一些重叠。 收集生物测定信息可以包括收集深度信息和RGB信息。在一个实施例中,系统能够例如基于面部识别来识别听者。在步骤804,为在步骤802所标识出的用户选择合适的HRTF。在一个实施例中,选择在过程700为该用户存储的HRTF。在另一实施例中,详细的用户特性已经在过程700被存储。然后,在过程800,可以基于所存储的详细用户特性来选择HRTF。如果期望的话,这些所存储的详细用户特性可以被当前所收集的信息扩充例如,用户可能在此时戴着帽子。因此,系统可以在过程700期间选择与用户未戴帽子的情况不同的HRTF。如上所述,用户可能佩戴可收集关于房间的声学数据的一个或多个话筒。图9是描绘用于基于这样的数据修改房间模型的过程900的一个实施例的流程图。作为一个示例,过程400可能已经执行了至少一次以基于深度图像和/或RGB图像来确定房间模型。然后,过程900可以用于修改该房间模型。在步骤902,通过位于听者所在的房间中的扬声器来播放声音。该步骤可以在任何时间执行以帮助细化房间的模型。在任选步骤904,指示用户在播放声音时在房间四周走动。不一定具体地告知用户应走到那里。另一方面,可以指示用户走到房间四周的不同位置;然而,这不是必需的。注意,步骤904是任选的。在一个实施例中,不是指示用户他们应当在房间四周自动,而是简单地假定用户作为正常玩游戏或其他交互的一部分而将在四周移动。在步骤906,在播放声音时收集来自用户所佩戴的一个或多个话筒31的数据。用户可以将这些话筒31佩戴在其耳朵附近,但是这不是必需的。在步骤908,确定用户的位置并且将该位置与从话筒31收集的数据相关。一种选择是使用深度信息和RGB信息来对用户进行定位。在步骤910,基于在步骤906被收集、在步骤908与用户位置相关的数据来确定房间声学特性。在步骤912,基于在步骤910所确定的声学性质来更新房间模型。如所述那样,过程400可以以所期望的频繁程度执行。因此,一种选择是使用过程 400构建房间模型。然后,可以使用过程900来更新房间模型。接着,可以再次使用过程400 一次或多次来更新(或重新创建)房间模型。另一选择是将过程900与过程400相组合。 例如,所生成的初始房间模型可以基于过程400和900 二者的使用。图10描绘了用于生成3D音频信号的一个实施例的框图。该框图提供了过程300 的一个实施例的附加细节。声音源1002表示3D音频信号所基于的虚拟声音。例如,该声音源可以是狗叫的(录制的或计算机生成的)数字数据。总的来说,声音源1002是沿着若干路径——直接路径和若干反射路径——被处理的。图5B中提供了这些路径的一个示例。 对于直接路径而言,通过施加增益和滤波器1006来处理声音源1002 ;然后为听者应用HRTF 1008。对于间接路径而言,首先为每个反射路径计算1004方位角和仰角。然后,该处理类似于针对直接路径所描述的处理。该结果可以在施加所估计的混响尾音(reverb tail) 1010 以产生最终的3D音频信号以前相加,该3D音频信号可以通过头戴耳机来播放1012。图10的图描绘了可以出于不同原因使用的传感器输入。传感器输入可以用于计算用户的位置和旋转,这如框1020中所示。传感器输入可以用于构建房间模型,以及用于估计房间材料,这如框1030所示。最后,传感器输入可以用于确定用户特性,比如耳廓和头部特性,这如框1040所示。这些用户特性可以用于为该用户确定HRTF。注意,针对用户的 HRTF不要求是来自库的HRTF。例如,可以使用内插来从库中的两个或更多个HRTF中形成 HRTF。框1020的传感器输入(其用于计算用户位置)可以包括、但不限于深度信息、RGB 信息、以及惯性数据(其来自在用户上的惯性传感器)。框1030的传感器输入(其用于计算房间模型)可以包括、但不限于深度信息、RGB信息、以及声学数据(其例如来自用户佩戴的话筒)。框1040的传感器输入(其用于确定HRTF)可以包括、但不限于深度信息和RGB
fn息ο为了计算反射的方位角和仰角,可以使用来自框1020和1030的数据。类似地,增益和滤波器可以使用来自框1020和1030的数据。注意,该传感器数据可以在任何时间更新。例如,用户可能移动,使得捕捉用户位置的传感器数据非常频繁地变化。这些改变例如可以被馈送给方位角和仰角计算1004,使得不断地因改变的用户位置而更新3D音频信号。 类似地,用户位置的改变可以实时地馈送给增益和滤波器1006。在一些实施例中,针对用户的HRTF不是实时地更新。然而,实时地更新针对用户的HRTF是一种选择。在接近生成3D音频信号结束时添加的混响尾音可以基于房间模型和对材料的估计。因此,框1030可以是用于估计混响尾音1010的输入。在一个实施例中,系统存储与诸如房间大小和材料之类的因素相关的混响尾音的库。系统能够基于房间模型选择混响尾音之一。系统还可以在两个所存储的混响尾音之间内插。因此,通过选择所存储的混响尾音, 节省了计算时间。图11描绘了可用于生成3D音频信号的计算环境的示例性框图。该计算环境可以用在图1的运动捕捉系统中。上文所描述的诸如计算环境12等的计算环境可包括诸如游戏控制台等的多媒体控制台100。控制台100可以从图2的深度相机系统20接收输入。控制台还可以从话筒31和惯性传感器38接收输入,所述话筒31和惯性传感器38 二者都可以由用户佩戴。控制台 100可以将3D音频信号输出给音频放大器197。多媒体控制台100包括具有1级高速缓存102、2级高速缓存104和闪存R0M(只读存储器)106的中央处理单元(CPU) 101。一级高速缓存102和二级高速缓存104临时存储数据并因此减少存储器访问周期数,由此改进处理速度和吞吐量。CPU 101可以设置成具有一个以上的内核,以及由此的附加的一级和二级高速缓存102和104。诸如闪存ROM之类的存储器106可存储当多媒体控制台100通电时在引导过程的初始阶段期间加载的可执行代码。图形处理单元(GPU) 108和视频编码器/视频编解码器(编码器/解码器)114形成用于高速和高分辨率图形处理的视频处理流水线。经由总线从图形处理单元108向视频编码器/视频编解码器114运送数据。视频处理流水线向A/V(音频/视频)端口 140输出数据,用于传输至电视或其他显示器。存储器控制器110连接到GPU 108,以便于处理器对各种类型的存储器112,比如RAM(随机存取存储器)的处理器访问。A/V端口 140可以连接到显示器196。多媒体控制台100包括可在模块118上实现的I/O控制器120、系统管理控制器 122、音频处理单元123、网络接口 124、第一 USB主控制器126、第二 USB控制器1 和前面板 I/O子部件130。USB控制器126和128用作外围控制器142 (1)-142 (2)、无线适配器148、 和外置存储器设备146(例如闪存、外置CD/DVD ROM驱动器、可移动介质等)的主机。网络接口(NW IF) IM和/或无线适配器148提供对网络(例如,因特网、家庭网络等)的访问并且可以是包括以太网卡、调制解调器、蓝牙模块、电缆调制解调器等的各种不同的有线或无线适配器组件中任何一种。提供系统存储器143来存储在引导过程期间加载的应用数据。提供了媒体驱动器 144,其可以包括DVD/CD驱动器、硬盘驱动器、或其他可移动媒体驱动器。介质驱动器144 可以在多媒体控制台100的内部或外部。应用数据可经由介质驱动器144访问,以由多媒体控制台100执行、回放等。媒体驱动器144经由诸如串行ATA总线或其他高速连接等总线连接到I/O控制器120。系统管理控制器122提供涉及确保多媒体控制台100的可用性的各种服务功能。 音频处理单元123和音频编解码器132形成具有高保真度和立体声处理的对应的音频处理流水线。音频数据经由通信链路在音频处理单元123与音频编解码器132之间传输。音频处理流水线将数据输出到A/V端口 140以供外置音频播放器或具有音频能力的设备再现。 在一些实施例中,3D音频信号通过A/V端口 140来提供,但是3D音频信号可以通过不同的连接来提供。前面板I/O子部件130支持暴露在多媒体控制台100的外表面上的电源按钮150 和弹出按钮152以及任何LED(发光二极管)或其他指示器的功能。系统供电模块136向多媒体控制台100的组件供电。风扇138冷却多媒体控制台100内的电路。CPU 101、GPU 108、存储器控制器110、和多媒体控制台100内的各个其他组件经由一条或多条总线互连,包括串行和并行总线、存储器总线、外围总线、和使用各种总线架构中任一种的处理器或局部总线。当多媒体控制台100通电时,应用数据可从系统存储器143加载到存储器112和/ 或高速缓存102、104中并在CPU 101上执行。应用可呈现在导航到多媒体控制台100上可用的不同媒体类型时提供一致的用户体验的图形用户界面。在操作中,介质驱动器144中包含的应用和/或其他媒体可从介质驱动器144启动或播放,以向多媒体控制台100提供附加功能。多媒体控制台100可通过将该系统连接到电视机或其他显示器而作为独立系统来操作。在该独立模式中,多媒体控制台100允许一个或多个用户与该系统交互、看电影、 或听音乐。然而,随着通过网络接口 1 或无线适配器148可用的宽带连接的集成,多媒体控制台100还可作为较大网络社区中的参与者来操作。当多媒体控制台100通电时,可以保留指定量的硬件资源以供多媒体控制台操作系统作系统使用。这些资源可以包括存储器保留(例如,16MB)、CPU和GPU周期(例如, 5%)、网络带宽(例如,SlAs)等。因为这些资源是在系统引导时保留的,所以所保留的资源对应用程序而言是不存在的。具体地,存储器保留可以是足够大以包含启动内核、并发系统应用和驱动程序。 CPU保留可以是恒定的,使得若所保留的CPU使用不被系统应用使用,则空闲线程将消耗任何未使用的周期。对于GPU保留,通过使用GPU中断来显示由系统应用生成的轻量消息(例如,弹出窗口),以调度代码来将弹出窗口呈现为覆盖图。覆盖图所需的存储器量取决于覆盖区域大小,并且覆盖图可与屏幕分辨率成比例缩放。在并发系统应用使用完整用户界面的情况下, 优选使用独立于应用分辨率的分辨率。定标器可用于设置该分辨率,从而无需改变频率并引起TV重新同步。在多媒体控制台100引导且系统资源被保留之后,就执行并发系统应用来提供系统功能。系统功能被封装在上述所保留的系统资源中执行的一组系统应用中。操作系统内核标识了是系统应用线程而非游戏应用线程的线程。系统应用可被调度为在预定时间并以预定时间间隔在CPU 101上运行,来为应用提供一致的系统资源视图。进行调度是为了把对于控制台上运行的游戏应用的高速缓存分裂最小化。当并发系统应用需要音频时,则由于时间敏感性而异步调度音频处理给游戏应用。多媒体控制台应用管理器(如下所述)在系统应用活动时控制游戏应用的音频水平 (例如,静音、衰减)。输入设备(例如,控制器142(1)和142( )由游戏应用和系统应用共享。输入设备不是所保留的资源,但却在系统应用和游戏应用之间切换以使其各自具有设备的焦点。 应用管理器可控制输入流的切换,而无需知晓游戏应用的知识,并且驱动程序维持有关焦点切换的状态信息。图12描绘了可用于提供3D音频信号的计算环境的另一示例性框图。计算环境可以从图2的深度相机系统20接收输入。计算环境还可以从话筒31和惯性传感器38接收输入,所述话筒31和惯性传感器38 二者都可以由用户佩戴。计算环境可以将3D音频信号输出给头戴耳机27。计算环境220包括通常包括各种有形计算机可读存储介质的计算机Ml。这可以是能由计算机241访问的任何可用介质,而且包含易失性和非易失性介质、可移动和不可移动介质。系统存储器222包括易失性和/或非易失性存储器形式的计算机存储介质,如只读存储器(ROM) 223和随机存取存储器(RAM06O。基本输入/输出系统224 ¢10 包括如在启动时帮助在计算机Ml内的元件之间传输信息的基本例程,它通常储存在ROM 223 中。RAM 260通常包含处理单元259可以立即访问和/或目前正在操作的数据和/或程序模块。图形接口 231与GPU 2 进行通信。作为示例而非局限,图12描绘了操作系统225、 应用程序226、其他程序模块227和程序数据228。计算机241也可以包括其他可移动/不可移动、易失性/非易失性计算机存储介质,例如,读写不可移动、非易失性磁性介质的硬盘驱动器238,读写可移动、非易失性磁盘 254的磁盘驱动器239,以及读写诸如CD ROM或其他光学介质之类的可移动、非易失性光盘 253的光盘驱动器M0。可以在该示例性操作环境中使用的其他可移动/不可移动、易失性 /非易失性有形计算机可读存储介质包括但不限于,磁带盒、闪存卡、数字多功能盘、数字录像带、固态RAM、固态ROM等等。硬盘驱动器238通常由例如接口 234等不可移动存储器接口连接至系统总线221,而磁盘驱动器239和光盘驱动器240通常由例如接口 235等可移动存储器接口连接至系统总线221。以上讨论并在图12中描绘的驱动器及其相关联的计算机存储介质为计算机241 提供了对计算机可读指令、数据结构、程序模块和其他数据的存储。例如,硬盘驱动器238 被描绘为存储了操作系统258、应用程序257、其他程序模块256、以及程序数据255。注意, 这些组件可以与操作系统225、应用程序226、其他程序模块227和程序数据2 相同,也可以与它们不同。在此给操作系统258、应用程序257、其他程序模块256、以及程序数据255 提供了不同的编号,以说明至少它们是不同的副本。用户可以通过诸如键盘251和定点设备252(通常被称为鼠标、跟踪球或触摸垫)之类的输入设备向计算机241输入命令和信息。其他输入设备(未示出)可包括话筒、游戏杆、游戏手柄、圆盘式卫星天线、扫描仪等。 这些和其他输入设备通常由耦合至系统总线的用户输入接口 236连接至处理单元259,但也可以由诸如并行端口、游戏端口或通用串行总线(USB)等其他接口和总线结构来进行连接。图2的包括相机观的深度相机系统20可以定义附加的输入设备。显示器196也经由诸如视频接口 232之类的接口连接至系统总线221。除监视器之外,计算机还可以包括可以通过输出外围接口 233连接的诸如头戴耳机27和打印机243之类的其他外围输出设备。计算机241可使用至诸如远程计算机246之类的一个或多个远程计算机的逻辑连接在联网环境中操作。远程计算机246可以是个人计算机、服务器、路由器、网络PC、对等设备或其他常见的网络节点,且通常包括许多或所有以上相对于计算机241描述的元件, 但是在图12中仅示出了存储器存储设备M7。逻辑连接包括局域网(LAN)245和广域网 (WAN) M9,但也可以包括其他网络。这样的联网环境在办公室、企业范围计算机网络、内联网和因特网中是常见的。当在LAN联网环境中使用时,计算机241通过网络接口或适配器245连接至LAN 237。当在WAN联网环境中使用时,计算机241通常包括调制解调器250或用于通过诸如因特网等WAN 249建立通信的其他手段。调制解调器250可以是内置或外置的,它可以经由用户输入接口 236或其他适当的机制连接至系统总线221。在联网环境中,相对于计算机 241所描述的程序模块或其部分可被存储在远程存储器存储设备中。作为示例而非限制,图 12描绘了远程应用程序248驻留在存储器设备247上。应当理解,所示的网络连接是示例性的,并且可使用在计算机之间建立通信链路的其他手段。前面的对本技术的详细描述只是为了说明和描述。它不是为了详尽的解释或将本技术限制在所公开的准确的形式。鉴于上述教导,许多修改和变型都是可能的。所描述的实施例只是为了最好地说明本技术的原理以及其实际应用,从而使精通本技术的其他人在各种实施例中最佳地利用本技术,适合于特定用途的各种修改也是可以的。本技术的范围由所附的权利要求进行定义。
权利要求
1.一种方法,包括基于传感器数据确定房间的物理特性(302);确定听者在该房间中的位置(304);以及基于该房间的物理特性和该听者在该房间中的位置来确定3D音频信号(306)。
2.如权利要求1所述的方法,其特征在于,确定3D音频信号包括基于该房间的物理参数以及该听者在该房间中的位置来确定虚拟声音源与该听者之间的多个声音路径。
3.如权利要求2所述的方法,其特征在于,确定3D音频信号包括确定3D音频信号的多个分量,其中为所述多个声音路径中的每个确定分量;以及将针对该听者的与头部相关的传输函数(HRTF)应用于所述多个分量中的每个(308)。
4.如权利要求1至3中的任一项所述的方法,其特征在于,还包括基于该传感器数据估计该房间中的物体的材料,确定3D音频信号是基于该材料将对声音造成的影响的。
5.如权利要求1至4中的任一项所述的方法,其特征在于,确定该听者在该房间中的位置包括收集图像传感器数据;以及基于该图像传感器数据确定该听者在该房间中的位置和旋转。
6.如权利要求1至5中的任一项所述的方法,其特征在于,确定该听者在该房间中的位置包括跟踪该听者在该房间中的位置。
7.如权利要求1至6中任一项所述的方法,其特征在于,还包括收集该听者的图像传感器数据;从该听者的图像传感器数据中确定该听者的物理特性;以及基于该听者的物理特性从HRTF库中为该听者确定HRTF,确定3D音频信号是基于针对该听者的HRTF的。
8.如权利要求7所述的方法,其特征在于,还包括在第一时间存储该听者的物理特性;在晚于第一时间的第二时间基于生物测定信息标识出该听者,该生物测定信息不同于该听者的物理特性;以及基于针对所标识出的听者所存储的物理特性从该库中选择HRTF。
9.如权利要求1至8中任一项所述的方法,其特征在于,该传感器数据包括来自该听者上的一个或多个话筒的传感器数据。
10.一种装置,包括一个或多个传感器(25,28,31,38);处理器(32,192,101,259),该处理器(32,192,101,259)耦合到所述一个或多个传感器;以及耦合到该处理器的计算机可读存储介质(34,194,102,106,112,143,22 ,该计算机可读存储介质其上存储有指令,所述指令在该处理器上执行时致使计算机使用该传感器收集关于环境和听者的数据;该处理器基于所收集的传感器数据确定该环境的物理特性;该处理器基于所收集的传感器数据确定该听者在该环境中的位置;该处理器基于该环境的物理特性以及该听者在该环境中的位置确定3D音频信号的多个分量;该处理器将针对该听者的与头部相关的传输函数(HRTF)应用于所述多个分量中的每个;以及该处理器提供3D音频信号。
全文摘要
本发明涉及用于扩展现实的高精度3维音频的系统和方法。提供了用于提供3D音频的技术,该3D音频可以用于扩展的现实。3D音频信号可以基于从听者所在的实际房间中所采集的传感器数据以及听者在该房间中的实际位置来生成。该3D音频信号可以包括基于所采集的传感器数据和听者的位置所确定的多个分量。例如,可以确定虚拟声音源与听者之间的多个(虚拟)声音路径。该传感器数据可以用于估计房间中的材料,使得可以确定这些材料在声音在沿着这些路径传播时可能对声音造成的影响。在一些实施例中,传感器数据可以用于收集听者的物理特性,使得可以从HRTF库中确定合适的HRTF。
文档编号H04S3/00GK102413414SQ20111032127
公开日2012年4月11日 申请日期2011年10月12日 优先权日2010年10月13日
发明者A·巴-泽埃夫, J·塔迪夫, J·弗莱克斯 申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1