开放环境中的半私人通信的制作方法

文档序号:7985531阅读:343来源:国知局
专利名称:开放环境中的半私人通信的制作方法
技术领域
本发明涉及开放环境中的半私人通信。
背景技术
计算机游戏系统提供允许用户与经由局域网或广域网连接的其他玩家玩游戏的在线体验。在某些情况下,一个用户连接于游戏控制台从而在一个物理位置玩游戏,并且与在另一物理位置的另一用户进行通信。目前,每个用户可佩戴具有耳机和话筒的头戴式送受话器以进行通信。这允许位于不同物理位置的用户作为团队参与来彼此通信,而在相同物理环境中的非队友玩家仅能听到最少的环境串话(并且只能听到对话的一方)。在美国专利6935959中描述了一种这样的在游戏设备中使用多玩家实时语音通信的技术,该专利被转让给本申请的受让人,并且通过引用完全并入本文。已开发出包括话筒的运动跟踪系统,该运动跟踪系统可消除对控制器和头戴式送受话器的需要。现有技术允许游戏或应用通过各种机制来标识视野内的用户,这些机制包括能够感测诸如大小、面部特征、衣着颜色等用户特征的三维深度相机。还存在语音识别技术以通过包括话筒阵列在内的各种机制来标识感知的用户语音。

发明内容
描述了用于在使用收取室音话筒(area microphone)来与其他用户通信时在用户间提供半私人对话的技术。该技术在本地用户组中的一个本地用户希望与远程用户私人地通信的情况下是有利的。本地用户和远程用户可以通过网络相耦合。对话关系被限定在本地用户和远程用户之间,该本地用户的语音与由收取室音话筒检测到并在该收取室音话筒的范围内的其他语音隔离,并且该本地用户的经隔离的说话被传送至该远程用户。有向传送技术可用于将本地用户的说话输出到远程环境中的远程用户。在不使用诸如话筒和头戴式送受话器等的传统声音隔离技术的情况下,提供了半私人对话体验。在一个实施例中,该技术包括一种在本地用户和远程用户之间提供半私人对话的方法。经由收取室音话筒从第一物理空间中的本地用户接收语音说话。该本地用户的说话被定位并与第一用户相关联。基于第一用户和第二用户之间定义的对话关系,将第一用户的经隔离的说话导向到第二物理环境中的第二用户。第一和第二用户可使用通过网络彼此耦合的本地和远程处理设备来用这种方式进行通信。


图1示出位于不同物理环境中的两组用户,这两组用户经由通过网络耦合的处理设备进行通信。图2示出了目标识别、分析和跟踪系统的示例实施例,其中用户正在玩游戏。图3示出了目标识别、分析和跟踪系统的框图。图4是示出依照本技术的方法的流程图。
图5是目标识别、分析和跟踪系统所使用的骨架模型的图示。图6是示出用于将用户语音与用户进行关联的第一方法的流程图。图7是示出用于将用户语音与用户进行关联的第二方法的流程图。图8是表示用于子带域(sub-band domain)中的声音分离的组件的框图。图9是表示两阶段声音分离系统的流图,该两阶段声音分离系统包括空间过滤和正则化前馈独立组件分析。图10是依照本技术的第一输出系统的表示。图11是依照本技术的第二输出系统的表示。图12示出了可用于在目标识别、分析和跟踪系统中解释一个或多个姿势的计算环境的示例实施例。图13示出了可用于在目标识别、分析和跟踪系统中解释一个或多个姿势的计算环境的另一示例实施例。
具体实施例方式现在将参考图1-13来描述本技术的各实施例。提出了用于在本地用户组的一个本地用户和远程用户之间提供半私人对话的技术,其中使用收取室音话筒(area microphone)来检测本地用户的对话。本地用户和远程用户可以通过网络相耦合。对话关系被限定在本地用户和远程用户之间。该对话关系可用于在例如在游戏中一起交互的各用户间传递信息。该本地用户的语音与由该收取室音话筒检测到并在该收取室音话筒的范围内的其他语音隔离,然后被传递到该远程用户。有向传送技术可用于将该本地用户的说话输出到远程环境中的远程用户。在不使用诸如话筒和头戴式送受话器等的传统声音隔离技术的情况下,提供了半私人对话体验。图1示出了在不同物理环境102和104中的本地和远程用户。图1示出了两个物理环境102、104,其中操作各自的计算设备114和124的用户使用捕捉设备20与计算设备交互。在一个示例中,所有用户都可以是联网游戏中的参与者,并且具有在不同物理环境中的队友。在图1中所示的示例中,用户A和用户C是队友,而用户B和用户D是队友。作为队友,用户A/C和B/D可能需要交流有关该游戏的信息,而将其他团队排除在外。然而,因为用户A和B在同一物理环境102中并且用户C和D在同一物理环境104中,所以在用户 A和B以及用户C和D之间将发生室内串话(in room crosstalk)。本技术允许将对来自一个物理环境中的用户的说话的检测进行隔离,并将其传送到不同物理环境中的特定用户,由此提供半私人对话。由于同一物理环境中的各用户间的室内串话,可能出现一定的隐私损失。在物理环境102中,用户A和B参与计算设备114上的游戏应用118。游戏应用 118包括通信控制器116或与通信控制器116进行通信,通信控制器116将来自每个相应用户A和B的通信导向到他们在不同物理环境104中的对应的队友C和D。检测系统115将来自每个用户的语音说话与做出该说话的用户相关联。同样地,用户C和D与游戏应用1 交互,游戏应用1 与通信控制器1 和检测系统125进行通信。每个处理设备耦合于网络50,这允许各应用彼此通信并与第二物理环境104中的远程游戏应用128、对应的通信控制器1 和处理设备IM进行通信。在一个实施例中,游戏服务150为游戏应用提供连接、计分和其他服务。一种这样的游戏服务是可从微软公司获得的XBOX Live服务。该游戏服务允许用户进入诸如游戏“房间”或锦标赛等虚拟区域,并提供连接服务以在相应的游戏应用和游戏控制器之间路由通信。在替代实施例中,游戏应用118和1 可直接通信。图2是用户A和B以及处理设备114和在远程位置104处的远程用户C和D的立体表示。在图1和图2所示的示例中,在下面参考图3示出并描述的捕捉设备20捕捉一个物理环境102中的用户A和B以及另一物理环境104中的用户C和D的移动,将用户A和 B所提供的信息传送给处理设备114、检测系统115、游戏应用118和通信控制器116。该游戏应用可使用用户的运动来控制游戏内的活动和/或可经由网络在虚拟游戏环境中传送用户的图像(或用户的表示)。在进一步的替代实施例中,应用118和128是除游戏应用以外的应用。一个示例包括演示应用或虚拟会议应用,允许用户将通信导向到远程用户而排除其他室内用户。在图1中所示的示例中,源自用户A的说话110将被耦合于处理设备114的捕捉设备20a检测到。检测系统115将确定该说话源自哪个用户并将该用户的语音与该个体用户相关联。该通信控制器,与该应用一起,隔离该用户的话音并将该说话转发至特定的远程用户。扬声器或扬声器阵列21a、21b向用户输出声音。来自用户A的说话110将被路由到网络50,并被路由到通信控制器126以经由扬声器或阵列21b被路由到用户C。类似地,来自用户B的说话112将被设备20a检测到,被通信控制器116导向到网络50并经由扬声器 21b导向用户D。从用户C回来的通信(说话121)和从用户D回来的通信(说话129)通过捕捉设备20b、通信控制器1 被传送通过网络50回到通信控制器116以被扬声器21a 分别导向到用户A和B。尽管将参考跨网络的通信讨论该技术,然而将意识到,本技术的原理可用于对特定物理环境中的本地连接用户之间的通信进行导向。将进一步意识到,尽管图1和图2的实施例描绘了在两个物理环境中用户都与捕捉设备交互,然而该技术的替代实施例包括在一个物理环境中的一个或多个用户利用头戴式送受话器耳机和话筒(诸如微软部件号P6F-0001 Xbox 360无线头戴式送受话器或微软部件号B$D-0001)(bOX 360头戴式送受话器)。例如,一个物理环境102中的用户可与图1 和2中所示的捕捉设备交互,而其他物理环境中的用户图3示出了用于实现本技术的系统的一个实施例。在一个实施例中,系统包括目标识别、分析和跟踪系统10,该系统10可用于识别、分析和/或跟踪诸如用户A到B等一个或多个人类目标。目标识别、分析和跟踪系统10的各实施例包括用于执行游戏或其他应用的计算环境12,以及用于从游戏或其他应用提供音频和视觉表示的视听设备16。系统10 还包括捕捉设备20,捕捉设备20包括一个或多个深度感知相机以及包括两个或更多个话筒的话筒阵列。捕捉设备20与计算环境12通信,以使得计算环境12可以部分地基于从捕捉设备20接收到的信息来控制至视听设备16的输出。下面将更详细地描述这些组件中的每一个。如图2所示,在一示例实施例中,在计算环境12上执行的应用可以是多玩家游戏。 基于接收自捕捉设备20的信息,计算环境12可使用视听设备16提供每个用户A-D的视觉表示作为玩家化身或呈现不同物理环境中的其他用户的图像。用户可以移进和移出视野。尽管对于本技术而言并不是关键点,用户A-D可以执行被在计算环境12上运行的软件引擎所识别的姿势,以使得一识别出用户的姿势,该用户的化身就执行某个动作。尽管在图1-3的示例中示出了 4个用户,但应理解在各实施例中本技术可在多于或少于4个用户的情况下操作。此外,本技术并不限于在游戏上下文中将语音与说话者相关联,而且也可用在希望基于人的语音与身体的关联性来标识此人的各种其他实例中。图3示出了可以在目标识别、分析和跟踪系统10中使用的捕捉设备2(K20a或 20b)的示例实施例。在一示例实施例中,捕捉设备20可包括图像相机组件22。组件22被配置成经由包括例如飞行时间、结构化光、立体图像等任何合适的技术来捕捉视野中的三维视频图象。根据一个实施例,图像相机组件22可将所计算的深度信息组织为“Z层”,即可与从深度相机沿其视线延伸的Z轴垂直的层。有关可形成捕捉设备20的一部分的相机的更多细节被阐述于在2009年5月四日提交的名称为“Gesture Tool (姿势工具)”并通过引用而完全结合于此的美国专利申请 12/474,655 ;以及在2009年2月23日提交的名称为"MandardGestures (标准姿势),,并通过引用而完全结合于此的美国专利申请12/391,150中;这些申请中的每一个均整体上被引用而完全结合于此。然而,一般而言,如图2所示,图像相机组件22可捕捉具有所捕捉的场景的二维0-D)像素区域的深度图像,其中该2-D像素区域中的每一像素可表示来自该相机的所捕捉的场景中的物体的长度,该长度可采用例如厘米、毫米等单位。图像相机组件22能够对在图IA和IB中由光线Rl和R2表示的视野内的物体进行成像。该技术有利地被应用于诸如以下专利申请中公开的目标识别、分析和跟踪系统 通过引用而被完全结合于此的2009年5月四日提交的题为“Environmentand/or Target Segmentation(环境和/或目标分割),,的美国专利申请12/475094号;通过引用而被完全结合于此的2009年10月21日提交的题为“Pose TrackingPipeline (姿态跟踪流水线)”的美国专利申请12/603437号;通过引用而被完全结合于此的2009年5月四日提交的题为 “Device for Identifying and TrackingMultiple Humans Over Time (用于随时间标识和跟踪多个人类的设备),,的美国专利申请12/475308号;通过引用而被完全结合于此的2009年12月18日提交的“Motion Detection Using Depth Images(使用深度图像的运动检测)”;通过引用而被完全结合于此的2009年10月7日提交的题为“Human TrackingSystem(人类跟踪系统)”的美国专利申请第12/575388号;通过引用而被完全结合于此的 2009 年 4 月 13 日提交的题为“Gesture Recognizer SystemArchitecture (姿势识别器系统架构)”的美国专利申请第12/42沈61号;以及通过引用而被完全结合于此的 2009 年 7 月 29 日提交的题为“Auto Generating aVisual Representation (自动生成视觉表示),,的美国专利申请第12/511850号。如图3所示,根据一示例实施例,图像相机组件22可包括可用于捕捉场景的深度图像的顶光组件对、三维(3-D)相机沈和RGB相机28。例如,在飞行时间分析中,捕捉设备20的顶光组件M可以将红外光发射到场景上,然后,可以使用传感器(未示出),用例如3-D相机沈和/或RGB相机观,来检测从场景中的一个或多个目标和物体的表面反向散射的光。根据另一实施例,捕捉设备20可包括可以从不同的角度观察场景的两个或更多个在物理上分开的相机,以获取可以被解析以生成深度信息的视觉立体数据。在任一实施例中,图像相机组件22能够确定视野内的人相对于彼此的方位,并能够计算视野中的每个人相对于捕捉设备20的角度。捕捉设备20可经由通信链路36向计算环境12提供由例如3-D相机沈和/或 RGB相机观捕捉的深度信息和图像,以及可由捕捉设备20生成的骨架模型。存在用于确定捕捉设备20所检测到的目标或物体是否与人类目标相对应的各种已知技术。例如,捕捉设备20可捕捉可包括人类目标的捕捉区域的深度信息。该深度图像然后可被分析来确定该深度图像是否包括人类目标和/或非人类目标。该深度图像的各部分可被泛色填充并与一图案进行比较来确定该目标是否是人类目标。如果该深度图像中的一个或多个目标包括人类目标,则可扫描该人类目标。骨架映射技术因而可用于确定该用户的骨架上的各个点,手、腕、肘、膝、鼻、踝、肩的关节,以及骨盆与脊椎相交之处。其他技术包括将图像转换为人的身体模型表示以及将图像转换为人的网格模型表示。然后可将骨架模型提供给计算环境12以使得该计算环境可以跟踪该骨架模型并利用所述跟踪来达到多种目的中的任何目的,包括用于应用控制的姿势识别。图5中示出了用于跟踪的骨架模型的示例。捕捉设备20还可包括话筒阵列32,该话筒阵列包括两个或更多个话筒30。话筒阵列捕捉物理环境内的用户说话。这可包括相机的视野之内和视野之外的说话。话筒30 接收由用户A-D中的一个或多个提供的音频说话。在所示实施例中,有两个话筒30,但应理解在进一步实施例中话筒阵列可具有多于两个话筒。在解析沿纵轴的相对位置并不是关键的实施例中,可以在公共竖直面中(即, 在相同高度上)对准各话筒。然而,还应理解本技术可采用沿不同竖直线和水平线布置的两个到四个或者更多的相机。在这些实施例中,话筒阵列将能够沿竖直面和水平面两者采用声学定位技术来定位一个或多个语音在三维空间中的位置。阵列中的话筒30可以如图中所示那样被定位为彼此靠近,诸如相隔一英尺。应理解,在进一步实施例中,例如在邻近捕捉设备20的墙角处,话筒可以相距更紧,或者相隔更开。阵列中的话筒30可以彼此同步,且每个话筒可包括可以接收声音并将其转换成电信号的换能器或传感器。用于区分话筒所拾取的声音以确定这些声音中是否有一种或多种声音是人类语音的技术是已知的。话筒30可以包括各种已知的滤波器,诸如用于衰减可以由话筒30检测出的低频噪声的高通滤波器。在给定容限内,使用声学定位技术,阵列32还能够确定所感知语音相对于彼此的方位,并且能够计算每个语音源相对于话筒阵列的角度。在一示例性实施例中,捕获设备20还可以包括可以与图像相机组件22和话筒阵列32可操作性地通信的处理器33。处理器33可包括可执行指令的标准处理器、专用处理器、微处理器等,这些指令可包括用于接收深度图像的指令、用于确定合适的目标是否可被包括在深度图像中的指令、用于将合适的目标转换成该目标的骨架表示或模型的指令、或任何其他合适的指令。处理器33还可执行上述与声学定位有关的操作。捕捉设备20还可包括存储器组件34,其可存储可由处理器33执行的指令、3D相机或RGB相机所捕捉的图像或图像帧、来自话筒30的音频数据或任何其他合适的信息等。 根据一示例实施例,存储器组件;34可包括随机存取存储器(RAM)、只读存储器(ROM)、高速缓存、闪存、硬盘或任何其他合适的存储组件。如图3中所示,在一个实施例中,存储器组件34可以是与图像捕捉组件22、话筒阵列32以及处理器33通信的分开的组件。根据另一实施例,存储器组件34可被整合到处理器33、图像捕捉组件22和/或话筒阵列32中。如图3所示,捕捉设备20可以经由通信链路36与计算环境12通信。通信链路 36可以是包括例如USB连接、火线连接、以太网电缆连接等的有线连接和/或诸如无线 802. lib,802. llg、802. Ila或802. Iln连接等的无线连接。根据一个实施例,计算环境12 可以经由通信链路36向捕捉设备20提供时钟,可以使用该时钟来确定何时捕捉例如场景。 来自捕捉设备20的图像和音频数据也可以经由通信链路36被传达给计算环境12。计算系统12可包括下面的图12和图13所示的硬件实施例中的一个或多个。捕捉设备20可经由通信链路46向计算环境12提供由例如3-D相机36和/或RGB相机38 捕捉的深度信息和图像,包括可由捕捉设备20生成的骨架模型。然后计算环境12可使用骨架模型、深度信息和所捕捉的图像来跟踪视野内的用户以用于一应用。计算系统12可包括姿势库192、结构数据198、姿势识别引擎190、深度图像处理和物体报告模块194以及操作系统196。深度图像处理和物体报告模块194使用深度图像来跟踪诸如用户和其他物体等物体的运动。为了帮助跟踪物体,深度图像处理和物体报告模块194使用姿势库190、结构数据198和姿势识别引擎190。结构数据198包括关于可被跟踪的物体的结构信息。例如,可以存储人类的骨架模型以帮助理解用户的移动并识别身体部位。还可以存储关于非生命物体的结构信息以帮助识别这些物体并帮助理解移动。姿势库192可包括姿势过滤器的集合,每一姿势过滤器包括和骨架模型(在用户移动时)可执行的姿势有关的信息。姿势识别引擎190可将由相机36、38和设备20捕捉的骨架模型以及与其相关联的移动形式的数据与姿势库192中的姿势过滤器进行比较来标识用户(如骨架模型所表示的)何时执行了一个或多个姿势。那些姿势可与应用的各种控制相关联。因此,计算系统12可使用姿势库190来解释骨架模型的移动并基于该移动来控制操作系统196或应用(未示出)。在一个实施例中,深度图像处理和物体报告模块194会将检测到的每个物体的标识以及每帧的物体的位置报告给操作系统196。操作系统196将使用该信息来更新显示画面中的化身或其他图像的位置或移动,或在所提供的用户界面上执行动作。关于识别器引擎190的更多信息可在2009年4月13日提交的美国专利申请 12/422,661 “Gesture Recognizer System Architecture (姿势识别器系统架构)”中找到,该申请通过引用整体并入本文。关于识别姿势的更多信息可在2009年2月23日提交的美国专利申请12/391,150“Mandard Gestures (标准姿势)”;以及2009年5月29日提交的美国专利申请12/474,655 "Gesture Tool (姿势工具)”中找到,这两个申请通过引用整体并入本文。关于运动检测和跟踪的更多信息可在2009年12月18日提交的美国专利申请 12/641,788 "MotionDetection Using Depth Images (使用深度图像的运动检测),,, 以及在2009年5月29日提交的美国专利申请12/475,308“Device for Identifying and TrackingMultiple Humans over Time (用于随时间标识和跟踪多个人类的设备)”中找到, 这两个申请通过引用整体并入本文。图3中还示出了语音识别引擎200、游戏应用118和通信控制器114。语音识别引擎确定用户语音模式并隔离用户说话。识别引擎与姿势深度图像处理和物体报告引擎194相结合能够将用户说话映射到所跟踪的骨架模型。当存在多个用户语音时,识别引擎基于用户话音而将用户说话分离。然后其可被通信控制器路由,其方式类似于在例如美国专利号6935959中所公开的。图4示出了依照本技术的一种方法,以隔离来自一物理环境中的应用用户的由话筒检测到的说话,并将所隔离的说话导向到另一物理环境中的其他用户。在步骤302中,启动利用用户通信路由的应用。在一个实施例中,该应用可包括其中利用控制台或计算设备来提供用户间的本地的或基于网络的语音通信的游戏应用或任何其他应用。在步骤304,由该应用做出需要两个或更多个用户间的隔离对话的判断。对隔离通信的判断可以通过如下方式做出评估参与该应用的用户的数量,标识出哪些用户需要在与其他用户隔离的情况下彼此通信,以及使用此信息来基于此处所讨论的技术将通信在各用户间路由。使用上面参考图1-3讨论的技术,在步骤306中,捕捉设备的视野内的潜在玩家或用户在306被标识。在308,捕捉设备的话筒阵列的范围内的语音被标识。使用下面参考图 8和图9讨论的技术可以标识出语音。在步骤310,一旦使用本文所讨论的技术标识出语音,则执行语音到用户的相关。 在一个实施例中,这可以包括为用户创建骨架模型并跟踪该模型以操纵话筒阵列基于用户的位置和模型来检测来自用户的说话。或者,可将声纹指定给用户骨架模型(在跟踪到时)。在312,应用程序确定哪些用户处于对话关系中。在一个示例中,对话关系可在游戏中的队友间出现。在步骤312中,该对话关系在不同物理环境中或在该物理环境中的用户间进行。在此上下文中,该对话关系应当是对该关系中的那些人尽可能独占的,而将相同或不同物理环境中的其他用户排除在外。一旦关系被确定且语音被隔离,则在320当说话发生时来自每个用户的说话可被隔离并导向到所选择的其他用户。在步骤320,基于在步骤310和312中标识的语音-身体相关和团队/隔离特征, 将源自视野内的所检测的玩家的语音说话隔离并导向到所选择的接收者。步骤320可包括在321跟踪该环境中的用户位置以使得该用户位置和用户语音的位置间的关联可能出现。 语音声纹被指定到该系统所跟踪的骨架模型,所跟踪的模型的已知位置用于确定该说话的源。将语音与骨架模型相关联具有额外的好处允许在用户位置的方向上操纵对用户的话筒阵列检测。或者,不需要使用跟踪,而说话的源(即,说话来自哪个用户)可以在该说话的时刻被确定。对于每个说话并且对于每个用户A-D,例如通过子步骤322-3 来进行对说话的跟踪及路由。在322,对来自任何特定用户的每个说话,在324隔离用户的语音说话。说话隔离可使用下面描述的处理技术或上面指出的技术进行。将话筒阵列聚焦在与该用户相关联的骨架的已知位置处允许调谐该阵列以检测并隔离来自个体用户的说话。在326,然后通信控制器基于由该应用所标识的关系将来自该用户的说话路由到队友。这包括通过在源物理环境处的通信控制器路由到正确的目的通信控制器。在328,目的通信控制器基于通信关系将该说话导向到用户的队友。如下所述,这包括使用有向输出设备来将来自队友处的说话的声音聚焦到它所导向到的人。图5示出表示可作为图4的步骤306的一部分生成的扫描的人类目标的骨架模型或映射840的示例。根据一个实施例,骨架模型510可包括可将人类目标表示为三维模型的一个或多个数据结构。每个身体部位可被表征为定义骨架模型510的关节和骨骼的数学矢量。骨架模型510包括关节nl-nl8。关节nl-nl8中的每一个可使得在这些关节之间定义的一个或多个身体部位能相对于一个或多个其他身体部位移动。表示人类目标的模型可包括多个刚性和/或可变形身体部位,这些身体部位可由诸如“骨骼”等的一个或多个结构件来定义,而关节nl-nl8位于相邻骨骼的交叉点处。关节nl-nl8可使得与骨骼和关节 nl-nl8相关联的各个身体部位能够彼此独立地或彼此相对地移动。例如,在关节n7与nil 之间定义的骨骼对应于前臂,该前臂可独立于例如在关节nl5与nl7之间定义的对应于小腿的骨骼而移动。可以理解,某些骨骼可对应于人类目标中的解剖学骨骼,和/或某些骨骼在人类目标中可能不具有对应的解剖学骨骼。骨骼和关节可共同构成骨架模型,它们可以是该模型的构成元素。轴向滚动角可用于定义肢相对于其父肢和/或躯干的旋转定向。例如,如果骨架模型正示出手臂的轴向旋转,则滚动关节可用来指示相关联的腕所指的方向(例如,手掌向上)。通过检查肢相对于其父肢和/或躯干的定向,可确定轴向滚动角。例如,如果正在检查小腿,则可检查小腿相对于相关联的大腿和髋部的定向以便确定轴向滚动角。图6示出了上面参考图3和步骤310讨论的用于映射声音-身体相关性的方法的第一实施例。在图6,在一个实施例中,在602对于特定帧或视野中的每个身体,在604生成该身体的骨架模型。在606确定该用户的声音源要被定位。对声音源的定位参考下面在图 8或图9中阐述的描述或通过多种已知技术中的任一种来进行。如果声音源还未被定位,则该方法返回步骤602。如果声音源已被定位,则在608针对该声音源是否与所跟踪的用户相匹配做出判断。如果没有发生匹配,则在610重新扫描源和身体。如果该声音源被定位且与所跟踪的用户相匹配,则在620链接该源和骨架。一旦该源和该骨架模型被链接,则该系统能够将话筒阵列有方向地聚焦于该用户在该环境中的位置。图7示出了其中使用用户设置或相关技术的替代实施例。在步骤702,对于特定帧或视野中的每个身体,在704检索骨架模型并且在730请求与该骨架模型相关联的特定用户的声纹。该应用可生成接口,该接口在732提示用户记录特定信息,然后使用用户对该信息的说话来生成该用户的声纹。在736链接该声纹和该用户骨架。各种对用户语音进行定位的技术可与本技术一起使用。下面参考图8和图9讨论一种用于确定所感知的语音的方位的系统和方法,其可用于将语音映射到判断系统。其他各种声学定位技术是已知的。在一个实施例中,不需要利用跟踪系统,而可使用其他技术来进行用户语音的定位。一个实施例可采用到达时间差(TDOA)技术,该技术第一步骤是确定不同话筒对之间的 TDOA集合。即,对于话筒对集合中的每一对,确定声源信号到达该话筒对中的每个话筒的时间之间的相对时间差。例如,测量声源位置s的两个话筒i和j的TDOA可被确定为TDOAi, j = (Is-mi|-1s-mj|)/c其中Hii是第i个话筒的位置,Hij是第j个话筒的位置,以及c是光速。TDOA技术还包括使用所确定的TDOA数据和话筒阵列几何结构来估计声源位置的第二步骤。此第二步骤可以通过各种已知方法来执行,这些已知方法包括例如最大似然方法、三角测量方法、球面交集方法、以及球面内插方法。TDOA方法是数种已知的可被用来定位感知语音的源的方法中的一种。其他方法包括基于受馈波束成形器的技术以及基于高分辨率频谱估计的技术。关于用于声学定位的话筒系统的进一步细节可在例如题为“Method and Apparatusfor Passive Acoustic Source Localization for Video Camera Steering Applications(用于视频相机操纵应用的无源声源定位的方法和装置),,的美国专利号6,826,284中,以及在由H. Wang和P. Chu在IEEE 国际会议声学、语音和信号处理(ICASSP)会刊(德国慕尼黑,1997年4月,第187-190页) 中发表的论文"Voice Source Localization for Automatic Camera Pointing System hVide0C0nferencing(用于视频会议中的自动相机定位系统的声源定位),,中找到。以上专利和论文通过引用整体结合于此。在技术允许使用单个话筒的声源定位达到给定容限的情况下,话筒阵列32可包括一个或多个话筒。图8和图9示出了可用作图3的隔离和识别引擎200的多阶段过程/系统。该过程将空间过滤与正则化进行组合。在话筒阵列32处接收的音频信号被变换为频域信号,诸如经由调制复重叠变换或傅立叶变换或任何其他合适的到频域的变换。该频域信号在空间过滤阶段被处理为分离的经空间过滤的信号,包括通过将这些信号输入到多个波束成形器中(波束成形器可包括空成形器(nullformer))。波束成形器的输出可被馈送入非线性空间过滤器以输出经空间过滤的信号。在正则化阶段,分离的经空间过滤的信号被输入到独立组件分析机制,该独立组件分析机制被配置成具有与先前的输入帧相对应的多抽头过滤器(multi-tap filter)。独立组件分析机制的分离的输出可被馈送入次级非线性空间过滤器以输出分离的经空间过滤并经正则化的信号。所述分离的经空间过滤并经正则化的信号中的每个信号然后被逆变换为分离的音频信号。图8示出了具有基于瞬时到达方向(IDOA)的后处理的规则化的前馈独立组件分析(ICA)的框图。在图8中,两个独立话音源102和103(诸如用户A和B)在子带域被分离。为此目的,使用多个传感器(例如,话筒)32组成的阵列捕捉的时域信号被转换到子带域,在此示例中是通过使用以高效的方式产生改进的频带间分离的调制复重叠变换(MCLT, 框106)进行的。注意,可以使用任何其他合适变换,例如FFT。源分离可使用去混合过滤器(demixing filter)(框108)在每个个别频率窗口 (frequency bin)中执行,其中k= 1,2,…,K是频率窗口的数量。可使用逆MCLT (IMCLT) 将所得到的信号转换回时域,如由框120和121表示的。每个频率窗口的源分离可被公式化为S = WY (1)其中S是分离的话音向量,W是去混合矩阵,而Y是在有回声且有噪声的环境中测
量的话音向量。对于波束成形,波束成形器可以是非时变的(其中权重是离线计算的),或者是自适应的(其中权重是在状态改变时计算的)。一种这样的自适应波束成形器是最小方差无失真响应(MVDR)波束成形器,在频域中其可被描述为
H _]W77 = 1^r"(2)其中D是操纵向量(steering vector),Rn是噪声协方差矩阵,而W是权重矩阵。 通常,用R代替仅噪声协方差R是输入(信号加噪声)的协方差矩阵。这通常更方便,因
11为它避免了使用声音活动检测器;这样的波束成形器被称为最小功率无失真响应(MPDR)。 为了防止到达方向失配带来的不稳定性,正则化项被添加到样本协方差矩阵。在一种实现中,还用至干扰的方向添加附加的空约束。具有额外空成形约束的波束成形器可被公式化为Wh= [1 0] ([Dt I Di]H[R+ λ I] -1 [Dt | Di]) [Dt | Di]H [R+ λ I](3)其中Dt和Di分别是朝向目标和干扰方向的操纵向量,而λ是用于对角装填的正则化项。通过在目标上的波束和在干扰方向上的空,前馈ICA过滤器的第一抽头可被初始化以用于适当的信道分配。在美国专利号7,415,117和美国专利申请公开号20080288219和20080232607中描述了波束成形/空间处理的更多细节,它们通过被引用而结合于此。图9示出了常规子带域ICA和波束成形的组合。图9示出了,对于一个子带,两阶段机制的示例框图。第一阶段包括空间过滤,该空间过滤将各声音源按照它们的位置进行分离。来自话筒阵列204的信号被适当的变换206变换(MCLT作为示例示出)。在一种实现中,线性自适应波束成形器(MVDR或MPDR)与强制的空成形器组合起来用于信号表示, 如由框208和209表示的。这之后是非线性空间过滤(框210和211),非线性空间过滤产生对干扰信号的进一步抑制。在一种实现中,非线性空间过滤器包括基于瞬时到达方向 (IDOA)的空间过滤器,诸如在前面提到的美国专利申请公开号20080288219中描述的。不管在波束成形之后是否使用非线性空间过滤,空间过滤阶段的输出包括在第一分离级的分离的信号。上面的空间过滤的输出被示例性的两阶段处理方案的第二阶段用于正则化。第二阶段包括前馈ICA 214,前馈ICA 214是已知ICA算法的改型,该改型基于使用多抽头过滤器。更具体而言,混响过程的持续时间通常比当前帧更长,并因此使用包含先前帧上的历史信息的多抽头过滤器允许ICA考虑混响过程的持续时间。例如,与十个先前30ms帧相对应的十个多抽头过滤器可与300ms混响持续时间一起使用,从而等式(1)对应于图3中大致表示的矩阵,其中η表示当前帧。这只是一个示例,并且已实现了具有相应地更多抽头的更短的帧。可以看出,通过使用当前的和先前的多信道帧(多个抽头),最大化了分离的话音的相互独立性。对于额外的分离,次级空间过滤器215和216(另一非线性空间抑制器)被应用在ICA输出上,其后是逆MCLT 220和221以提供分离的话音信号。一般而言,这除去了任何残留的干扰。不管在正则化之后是否使用次级非线性空间过滤,第二阶段的输出包括在第二分离级的分离的信号,这通常是对现有技术的重大改进,例如,如按照信号干扰比测量的。对于之后有空间过滤器的波束成形,为了确定期望话音信号和干扰话音信号的到达方向(DOA),可以使用基于瞬时DOA(IDOA)的声音源定位器222。IDOA空间是M-I维的, 各轴是非重复对之间的相位差,其中M是话筒的数量。此空间允许对于每个子带,将概率密度函数Pk(9)作为方向θ的函数进行估计。来自所有子带的结果被总计并群集。注意,在这个阶段,该跟踪系统可提供额外提示(cue)来提高定位和跟踪精度。声音源定位器提供到期望信号的方向Q1和到干扰信号的方向θ2。给定对于目标和干扰话音信号的DOA的合适估计,如等式C3)中所述,应用被约束的波束成形器加上相应的空成形器
ο 转向更多细节,所得到的空间过滤器对每个子带应用时变实增益,从而担当时空过滤器以抑制来自非查看方向的声音。抑制增益被计算为其中Δ θ是围绕从其捕捉声音的期望方向θ工的范围。对于在基于IDOA的后处理之前的正则化的前馈ICA 214,如上所述,通过在每个子带中在去混合过滤器结构中允许多个抽头来利用子带域情况中的时域源分离方法。正则化的前馈ICA (RFFICA)的更新规则是Wi = Wi+ μ ((ι- α ) · Δ ICA’ 厂 α · Δ First stage,,) (5)其中i=0,l,"·,Ν-1,Ν是抽头数。ΔΠΜ_ε」表示ICA更新的部分以及第一级输出上的正则化的部分。Δ ICA,, = W「<g (S ( · - (N-I))) YtempH ( · _i) >t (6)Ytemp (·) = YW^k (-)S(-m)
^ (8)
M = OΔ First stage, i =《S ( · ) I Kef_SFirst stage ( · )) (Y ( · _i) I Kef) H>t (9)其中<*\表示时间平均,(*_i)表示i样本延迟,SFi tstage是用于正则化的第一级输出向量,而表示参考信道。只向分配了参考的信道应用惩罚项;混合矩阵的其他项被设为0以使该惩罚项在那些信道更新上消失。为了估计分离权重,对每个频率波束迭代执行等式(5)。可在数十到数千次的量级上进行该迭代,这取决于可用资源。在实践中,用明显少于一千次迭代获得了合理结果。为了后续过滤器的初始化,混响过程被建模为指数衰减Wi = θχρ(-β i) ‘ I (10)其中I是单位矩阵,选择β以对平均混响时间建模,而i是抽头索引。注意,对于一种实现,参考信道的RFFICA的第一抽头被初始化为操纵向量栈的伪求逆,从而可将1赋值给目标方向而将空赋值给干扰方向。W0, ini |ref= ([e(9t) ^(9,)1^6(0^ ^(9,)1)-^6(0^ Ie(Qi)]11 (11)因为初始化过滤器是使用ICA更新的,所以在更新过程中可调整与实际DOA的轻微失配。在一种实现中,α被设为0.5,仅是为了对与第一级输出的较大的偏差进行惩罚。 作为非线性函数g(·),使用基于极坐标的正切双曲函数,该函数适用于具有良好收敛特性的超级高斯源
N-I S(.) = y^W (.)Y(.-w
n=0
N-I
1权利要求
1.一种在本地用户和远程用户之间提供半私人对话的方法,包括经由收取室音话筒从第一物理环境中的至少两个用户中的至少第一用户接收语音输入;定位(308)所述第一物理环境中的语音;将语音与所述第一用户相关联(310);在所述第一环境中隔离(324)所述第一用户的说话;以及将所述第一环境中的所述第一用户的经隔离的说话导向(326,328)到第二物理环境中的第二用户。
2.如权利要求1所述的方法,其特征在于,还包括跟踪所述物理环境中的用户位置并将所述收取室音话筒聚焦在所述用户位置上的步骤。
3.如权利要求2所述的方法,其特征在于,还包括通过检测深度相机的视野中的用户位置来跟踪用户位置。
4.如权利要求1所述的方法,其特征在于,所述方法还包括从所述第二物理环境中的所述第二用户接收经隔离的说话并将该说话路由到所述第一物理环境中的所述第一用户。
5.如权利要求4所述的方法,其特征在于,路由包括将来自所述第二用户的经隔离的说话提供到对准所述第一用户的有向输出。
6.如权利要求1所述的方法,其特征在于,所述定位步骤包括将空间过滤与对所述输入的正则化进行组合以提供至少两个输出。
7.—种至少包括运动捕捉系统和音频输入的系统,包括 包括至少一个收取室音话筒的运动捕捉设备00);处理设备(12),所述处理设备包括致使所述处理设备执行以下操作的指令 定位(308)经由所述捕捉设备从第一物理环境中的多个用户中的第一用户接收的语曰;将所述语音与所述第一用户相关联(310); 在所述第一环境中隔离(324)所述第一用户的说话;以及将所述第一环境中的所述第一用户的经隔离的说话导向(326,328)到第二环境中的第二用户;以及对来自远程用户的音频输出进行导向的、耦合于所述处理设备的有向音频输出设备。
8.如权利要求7所述的系统,其特征在于,所述指令还包括跟踪第一物理环境中的至少第一本地用户和第二本地用户,每个本地用户与第二物理环境中的远程用户具有对话关系。
9.如权利要求7所述的系统,其特征在于,所述指令还包括从所述第二物理环境中的所述第二用户接收经隔离的说话并将该说话路由到所述第一物理环境中的所述第一用户。
10.如权利要求7所述的系统,其特征在于,所述有向输出包括超声扬声器阵列或至少第一可移动扬声器和第二可移动扬声器。
全文摘要
本发明涉及开放环境中的半私人通信。一种使用收取室音话筒在一组本地用户中的一个本地用户和远程用户之间提供半私人对话的系统和方法。该本地和远程用户可在使用由网络耦合的设备的不同物理环境中。对话关系被限定在本地用户和远程用户之间。该本地用户的语音和该环境中的其他语音隔离,并被传送到该远程用户。有向输出技术可用于将该本地用户的说话导向到远程环境中的远程用户。
文档编号H04L29/06GK102447697SQ201110378008
公开日2012年5月9日 申请日期2011年11月14日 优先权日2010年11月15日
发明者A·巴-泽埃夫, J·S·弗莱克斯 申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1