音频设备自动定位的制作方法

文档序号:31003496发布日期:2022-08-03 06:02阅读:175来源:国知局
音频设备自动定位的制作方法
音频设备自动定位


背景技术:

1.相关申请的交叉引用
2.本技术要求于2019年12月18日提交的美国临时专利申请号62/949,998、2019年12月18日提交的欧洲专利申请号19217580.0和2020年3月19日提交的美国临时专利申请号62/992,068的优先权,所述专利申请均通过引用并入本文。
技术领域
3.本公开涉及用于自动定位音频设备的系统和方法。
4.背景技术
5.音频设备,包括但不限于智能音频设备,已经被广泛部署并且正在成为许多家庭的共同特征。尽管用于定位音频设备的现有系统和方法提供了益处,但改进的系统和方法将仍是期望的。
6.符号和术语
7.在本文中使用表达“智能音频设备”来表示智能设备,所述智能设备是单一用途音频设备或虚拟助理(例如,连接的虚拟助理)。单一用途音频设备是包括或耦接到至少一个麦克风(并且在一些示例中还可以包括或耦接到至少一个扬声器)并且很大程度上或主要被设计为实现单一用途的设备(例如,智能扬声器、电视(tv)或移动电话)。尽管tv通常可以播放(并且被认为能够播放)来自节目素材的音频,但是在大多数情况下,现代tv运行某种操作系统,应用程序(包括看电视的应用程序)在所述操作系统上本地运行。类似地,移动电话中的音频输入和输出可以做很多事情,但这些都是由电话上运行的应用程序服务的。从这个意义上说,具有(多个)扬声器和(多个)麦克风的单一用途音频设备通常被配置为运行本地应用程序和/或服务来直接使用(多个)扬声器和(多个)麦克风。一些单一用途音频设备可以被配置为组合在一起以实现在区域或用户配置的区域上播放音频。
8.在本文中,“虚拟助理”(例如,连接的虚拟助理)是包括或耦接到至少一个麦克风(并且可选地还包括或耦接到至少一个扬声器)的设备(例如,智能扬声器、智能显示器或语音助理集成设备),并且所述设备可以提供将多个设备(不同于虚拟助理)用于在某种意义上启用云或者未在虚拟助理本身中或上实施的应用程序的能力。虚拟助理有时可以一起工作,例如,以非常离散和有条件定义的方式。例如,两个或更多个虚拟助理可以在其中一个(即最确信已经听到唤醒词的虚拟助理)响应于所述词的意义上一起工作。连接的设备可以形成一种系列,所述系列可以由一个主应用程序管理,所述主应用程序可以是(或包括或实施)虚拟助理。
9.在本文中,“唤醒词”在广义上用于表示任何声音(例如,人类说出的词或一些其他声音),其中智能音频设备被配置成响应于检测到(“听到”)声音(使用包括在智能音频设备中或耦接到所述智能音频设备的至少一个麦克风,或至少一个其他麦克风)而唤醒。在这种情况下,“唤醒”表示设备进入等待(即,正在收听)声音命令的状态。
10.在本文中,表达“唤醒词检测器”表示被配置成连续搜索实时声音(例如,言语)特
征与训练模型之间的对齐的设备(或包括用于将设备配置成连续搜索实时声音特征与训练模型之间的对齐的指令的软件)。通常,每当唤醒词检测器确定检测到唤醒词的概率超过预定义阈值,就会触发唤醒词事件。例如,所述阈值可以是被调整以在错误接受率与错误拒绝率之间给出合理折衷的预定阈值。在唤醒词事件之后,设备可能会进入一种状态(可以被称为“唤醒”状态或“注意力”状态),在所述状态下设备会收听命令并且将接收到的命令传递给更大、计算更密集的识别器。
11.贯穿本公开,包括在权利要求中,“扬声器(speaker)”和“扩音器(loudspeaker)”同义地用于表示由单个扬声器馈送驱动的任何发声换能器(或一组换能器)。一套典型的耳机包括两个扬声器。扬声器可以被实施为包括多个换能器(例如,低音扬声器和高音扬声器),这些换能器全部由单个公共扬声器馈送驱动。在一些情况下,扬声器馈送可以在耦接到不同换能器的不同电路分支中经历不同的处理。
12.贯穿本公开,包括在权利要求中,在广义上使用“对”信号或数据执行操作的表达(例如,对信号或数据进行滤波、缩放、变换或施加增益)来表示直接对信号或数据执行操作或对信号或数据的已处理版本(例如,在对其执行操作之前已经历了初步滤波或预处理的信号版本)执行操作。
13.贯穿本公开,包括在权利要求中,在广义上使用表达“系统”来表示设备、系统或子系统。例如,实施解码器的子系统可以被称为解码器系统,并且包括这种子系统的系统(例如,响应于多个输入而生成x个输出信号的系统,其中,所述子系统生成其中m个输入,而其他x-m个输入是从外部源接收的)也可以被称为解码器系统。
14.贯穿本公开,包括在权利要求中,在广义上使用术语“处理器”来表示可编程或以其他方式可配置(例如,用软件或固件)为对数据(例如,音频、视频或其他图像数据)执行操作的系统或设备。处理器的示例包括现场可编程门阵列(或其他可配置集成电路或芯片组)、被编程和/或以其他方式被配置成对音频或其他声音数据执行流水线式处理的数字信号处理器、可编程通用处理器或计算机,以及可编程微处理器芯片或芯片组。


技术实现要素:

15.本公开的至少一些方面可以经由方法来实施。一些这样的方法可以涉及音频设备定位,即确定环境中的多个(例如至少四个或更多个)音频设备的位置的方法。例如,一些方法可以涉及获得多个音频设备中的每个音频设备的到达方向(doa)数据以及基于所述doa数据确定多个三角形中的每一个的内角。在一些实例中,多个三角形中的每个三角形可以具有与三个音频设备的音频设备位置相对应的顶点。一些这样的方法可以涉及至少部分地基于内角来确定每个三角形的每条边的边长。
16.一些这样的方法可以涉及执行将多个三角形中的每一个以第一顺序对齐的前向对齐过程,以产生前向对齐矩阵。一些这样的方法可以涉及执行将多个三角形中的每一个以与第一顺序反向的第二顺序对齐的反向对齐过程,以产生反向对齐矩阵。一些这样的方法可以涉及至少部分地基于前向对齐矩阵的值和反向对齐矩阵的值来产生每个音频设备位置的最终估计。
17.根据一些示例,产生每个音频设备位置的最终估计可以涉及平移和缩放前向对齐矩阵以产生经平移和缩放的前向对齐矩阵,以及平移和缩放反向对齐矩阵以产生经平移和
缩放的反向对齐矩阵。一些这样的方法可以涉及基于所述经平移和缩放的前向对齐矩阵和所述经平移和缩放的反向对齐矩阵来产生旋转矩阵。旋转矩阵可以包括每个音频设备的多个估计音频设备位置。在一些实施方式中,产生旋转矩阵可以涉及对经平移和缩放的前向对齐矩阵以及经平移和缩放的反向对齐矩阵执行奇异值分解。根据一些示例,产生每个音频设备位置的最终估计也可以涉及对每个音频设备的估计音频设备位置求平均,以产生每个音频设备位置的最终估计。
18.在一些实施方式中,确定边长可以涉及确定三角形的第一边的第一长度以及基于三角形的内角确定三角形的第二边和第三边的长度。在一些示例中,确定第一长度可以涉及将第一长度设置为预定值。在一些示例中,确定第一长度可以基于到达时间数据和/或接收信号强度数据。
19.根据一些示例,获得doa数据可以涉及确定多个音频设备中的至少一个音频设备的doa数据。在一些实例中,确定doa数据可以涉及从与多个音频设备中的单个音频设备相对应的多个音频设备麦克风中的每个麦克风接收麦克风数据以及至少部分地基于所述麦克风数据确定单个音频设备的doa数据。根据一些示例,确定doa数据可以涉及从与多个音频设备中的单个音频设备相对应的一个或多个天线接收天线数据以及至少部分地基于所述天线数据确定单个音频设备的doa数据。
20.在一些实施方式中,所述方法还可以涉及至少部分地基于至少一个音频设备位置的最终估计来控制音频设备中的至少一个音频设备。在一些这样的示例中,控制音频设备中的至少一个音频设备可以涉及控制音频设备中的至少一个音频设备的扩音器。
21.本文描述的一些或所有操作、功能和/或方法可以由一个或多个设备根据存储在一个或多个非暂态介质上的指令(例如,软件)来执行。这种非暂态介质可以包括如本文所描述的那些存储器设备,包括但不限于随机存取存储器(ram)设备、只读存储器(rom)设备等。因此,本公开中描述的主题的一些创新方面可以在其上存储有软件的非暂态介质中实施。
22.例如,所述软件可以包括用于控制一个或多个设备执行涉及音频设备定位的方法的指令。一些方法可以涉及获得多个音频设备中的每个音频设备的doa数据以及基于所述doa数据确定多个三角形中的每一个的内角。在一些实例中,多个三角形中的每个三角形可以具有与三个音频设备的音频设备位置相对应的顶点。一些这样的方法可以涉及至少部分地基于内角来确定每个三角形的每条边的边长。
23.一些这样的方法可以涉及执行将多个三角形中的每一个以第一顺序对齐的前向对齐过程,以产生前向对齐矩阵。一些这样的方法可以涉及执行将多个三角形中的每一个以与第一顺序反向的第二顺序对齐的反向对齐过程,以产生反向对齐矩阵。一些这样的方法可以涉及至少部分地基于前向对齐矩阵的值和反向对齐矩阵的值来产生每个音频设备位置的最终估计。
24.根据一些示例,产生每个音频设备位置的最终估计可以涉及平移和缩放前向对齐矩阵以产生经平移和缩放的前向对齐矩阵,以及平移和缩放反向对齐矩阵以产生经平移和缩放的反向对齐矩阵。一些这样的方法可以涉及基于所述经平移和缩放的前向对齐矩阵和所述经平移和缩放的反向对齐矩阵来产生旋转矩阵。旋转矩阵可以包括每个音频设备的多个估计音频设备位置。在一些实施方式中,产生旋转矩阵可以涉及对经平移和缩放的前向
对齐矩阵以及经平移和缩放的反向对齐矩阵执行奇异值分解。根据一些示例,产生每个音频设备位置的最终估计也可以涉及对每个音频设备的估计音频设备位置求平均,以产生每个音频设备位置的最终估计。
25.在一些实施方式中,确定边长可以涉及确定三角形的第一边的第一长度以及基于三角形的内角确定三角形的第二边和第三边的长度。在一些示例中,确定第一长度可以涉及将第一长度设置为预定值。在一些示例中,确定第一长度可以基于到达时间数据和/或接收信号强度数据。
26.根据一些示例,获得doa数据可以涉及确定多个音频设备中的至少一个音频设备的doa数据。在一些实例中,确定doa数据可以涉及从与多个音频设备中的单个音频设备相对应的多个音频设备麦克风中的每个麦克风接收麦克风数据以及至少部分地基于所述麦克风数据确定单个音频设备的doa数据。根据一些示例,确定doa数据可以涉及从与多个音频设备中的单个音频设备相对应的一个或多个天线接收天线数据以及至少部分地基于所述天线数据确定单个音频设备的doa数据。
27.在一些实施方式中,所述方法还可以涉及至少部分地基于至少一个音频设备位置的最终估计来控制音频设备中的至少一个音频设备。在一些这样的示例中,控制音频设备中的至少一个音频设备可以涉及控制音频设备中的至少一个音频设备的扩音器。
28.本公开的至少一些方面可以经由装置来实施。例如,一个或多个设备可以能够至少部分地执行本文公开的方法。在一些实施方式中,装置可以包括接口系统和控制系统。控制系统可以包括一个或多个通用单芯片或多芯片处理器、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)或其他可编程逻辑设备、离散门或晶体管逻辑、离散硬件部件或其组合。在一些示例中,所述装置可以是上文引用的音频设备之一。然而,在一些实施方式中,所述装置可以是另一种类型的设备,如移动设备、膝上型计算机、服务器等。
29.在本公开的一些方面中,任何所描述的方法可以在包括指令的计算机程序产品中实施,当所述程序由计算机执行时,所述指令使所述计算机执行本公开中描述的任何方法或方法的步骤。
30.在本公开的一些方面中,描述了包括计算机程序产品的计算机可读介质。
31.在以下附图和描述中阐述了本说明书所描述的主题的一个或多个实施方式的细节。从所述描述、附图和权利要求中,其他特征、方面和优点将变得显而易见。注意,以下附图的相对尺寸可能不是按比例来绘制的。
附图说明
32.图1示出了环境中三个音频设备之间的几何关系的示例。
33.图2示出了图1中示出的环境中三个音频设备之间的几何关系的另一个示例。
34.图3a示出了图1和图2中描绘的两个三角形,没有对应的音频设备和环境的其他特征。
35.图3b示出了估计由三个音频设备形成的三角形的内角的示例。
36.图4是概述了可以由如图11中示出的装置等装置执行的方法的一个示例的流程图。
37.图5示出了其中环境中的每个音频设备都是多个三角形的顶点的示例。
38.图6提供了前向对齐过程的一部分的示例。
39.图7示出了已经在前向对齐过程期间发生的多个音频设备位置估计的示例。
40.图8提供了反向对齐过程的一部分的示例。
41.图9示出了已经在反向对齐过程期间发生的多个音频设备位置估计的示例。
42.图10示出了估计音频设备位置和实际音频设备位置的比较。
43.图11是示出了能够实施本公开的各个方面的装置的部件的示例的框图。
44.图12是概述了可以由如图11中示出的装置等装置执行的方法的一个示例的流程图。
45.图13a示出了图12的一些框的示例。
46.图13b示出了确定收听者角取向数据的附加示例。
47.图13c示出了确定收听者角取向数据的附加示例。
48.图13d示出了根据参考图13c描述的方法来确定音频设备坐标的适当旋转的一个示例。
49.图14示出了扬声器激活,其包括针对这些特定扬声器位置的等式11的最优解。
50.图15描绘了各个扬声器的位置,图14中是针对这样的位置示出了扬声器激活。
51.在各个附图中,相似的附图标记和名称指示相似的元素。
具体实施方式
52.除了包括电视和条形音箱的现有音频设备以及如电灯泡和微波炉等新的支持麦克风和扩音器的连接设备之外,并入多个驱动单元和麦克风阵列的智能扬声器的出现产生了以下问题,即,几十个麦克风和扩音器需要相对于彼此定位以实现编排。不能假设音频设备采用典型布局(如离散杜比5.1扩音器布局)。在一些情况下,环境中的音频设备可以随机定位,或者至少可以以不规则和/或不对称的方式分布在环境内。
53.此外,不能假设音频设备是非均匀的或同步的。如本文所使用的,如果音频设备根据相同的采样时钟或同步采样时钟检测或发出声音,则音频设备可以被称为“同步的”或“同步化的”。例如,环境内的第一音频设备的第一同步麦克风可以根据第一采样时钟对音频数据进行数字采样,并且环境内的第二同步音频设备的第二麦克风可以根据第一采样时钟对音频数据进行数字采样。替代性地或另外地,环境内的第一音频设备的第一同步扬声器可以根据扬声器设置时钟发出声音,并且环境内的第二音频设备的第二同步扬声器可以根据扬声器设置时钟发出声音。
54.用于自动扬声器定位的一些先前公开的方法需要同步的麦克风和/或扬声器。例如,用于设备定位的一些先前存在的工具依赖于系统中的所有麦克风之间的采样同步,这需要已知的测试刺激以及在传感器之间传递全带宽音频数据。
55.本受让人已经给出了用于电影院和家庭的若干种扬声器定位技术,所述技术是其被设计所用于的用例的极好解决方案。一些这样的方法基于从声源和与每个扩音器大约共同定位的(多个)麦克风之间的脉冲响应得到的飞行时间。尽管可以估计记录和回放链中的系统延迟,但是需要时钟之间的采样同步并且需要从中估计脉冲响应的已知测试刺激。
56.该上下文中的源定位的最新示例已经通过要求设备内麦克风同步但不要求设备间同步来释放约束。另外地,一些这样的方法不需要通过低带宽消息传递(如经由检测直接
(非反射)声音的到达时间(toa)或经由检测直接声音的主要到达方向(doa))来在传感器之间传递音频。每种方法存在一些潜在优点和潜在缺点。例如,toa方法可以根据关于三个轴线之一的未知平移、旋转和反射来确定设备几何形状。如果每个设备仅有一个麦克风,则单个设备的旋转也是未知的。doa方法可以根据未知平移、旋转和缩放来确定设备几何形状。尽管一些这样的方法在理想条件下可以给出满意结果,但是尚未证明这些方法对测量误差的稳健性。
57.本公开的一些实施方式通过应用基于几何学的优化使用来自由每个设备中的麦克风阵列观察到的不受控声源的异步doa估计来自动定位环境(例如,房间)中的多个音频设备的位置。已经证明各种公开的音频设备定位方法对大doa估计误差具有稳健性。
58.一些这样的实施方式涉及迭代地对齐从doa数据集得到的三角形。在一些这样的示例中,每个音频设备可以包含估计来自不受控源的doa的麦克风阵列。在一些实施方式种,麦克风阵列可以与至少一个扩音器并列放置。然而,至少一些公开的方法普及其中不是所有麦克风都与扩音器并列放置的情况。
59.根据一些公开的方法,可以聚合从每个音频设备到环境中的每个其他音频设备的doa数据。可以通过迭代地对齐由doa对参数化的三角形来估计音频设备位置。一些这样的方法可以产生根据未知缩放和旋转进行校正的结果。在许多应用中,绝对缩放是不必要的,并且可以通过对解施加附加约束来对旋转求解。例如,一些多扬声器环境可以包括电视(tv)扬声器和针对tv观看定位的沙发。在对环境中的扬声器进行定位之后,一些方法可以涉及找到指向tv的矢量以及通过三角测量对坐在沙发上的用户的言语进行定位。一些这样的方法然后可以涉及使tv从其扬声器发出声音和/或提示用户走向tv以及通过三角测量对用户的言语进行定位。一些实施方式可以涉及渲染围绕环境平移的音频对象。用户可以提供指示音频对象何时位于环境中的一个或多个预定位置(如环境前方、在环境的tv位置处等)的用户输入(例如,说出“停止”)。根据一些这样的示例,在定位环境中的扬声器以及确定其取向之后,可以通过找到由多个扬声器发出的声音的到达方向的交点来对用户进行定位。一些实施方式涉及确定至少两个音频设备之间的估计距离以及根据估计距离缩放环境中的其他音频设备之间的距离。
60.图1示出了环境中三个音频设备之间的几何关系的示例。在该示例中,环境100是包括电视101、沙发105和五个音频设备105的房间。根据该示例,音频设备105在环境100的位置1至位置5中。在该实施方式中,每个音频设备105包括具有至少三个麦克风的麦克风系统120和包括至少一个扬声器的扬声器系统125。在一些实施方式中,每个麦克风系统120包括麦克风阵列。根据一些实施方式,每个音频设备105可以包括包含至少三根天线的天线系统。
61.与本文所公开的其他示例一样,图1中示出的元件的类型、数量和布置仅作为示例。其他实施方式可以具有不同类型、数量和布置的元件,例如,更多或更少的音频设备105、在不同位置的音频设备105等。
62.在该示例中,三角形110a的顶点在位置l、2和3处。此处,三角形110a具有边12、23a和13a。根据该示例,边12与边23之间的角为θ2,边12与边13a之间的角为θ1并且边23a与边13a之间的角为θ3。这些角可以根据doa数据确定,如下文更详细描述的。
63.在一些实施方式中,仅可以确定三角形边的相对长度。在替代性实施方式中,可以
估计三角形边的实际长度。根据一些这样的实施方式,三角形边的实际长度可以根据toa数据来估计,例如,根据由位于一个三角形顶点处的音频设备产生并且由位于另一个三角形顶点处的音频设备检测到的声音的到达时间来估计。替代性地或另外地,三角形边的长度可以根据由位于一个三角形顶点处的音频设备产生并且由位于另一个三角形顶点处的音频设备检测到的电磁波来估计。例如,三角形边的长度可以根据由位于一个三角形顶点处的音频设备产生并且由位于另一个三角形顶点处的音频设备检测到的电磁波的信号强度来估计。在一些实施方式中,可以根据检测到的电磁波的相移来估计三角形边的长度。
64.图2示出了图1中示出的环境中三个音频设备之间的几何关系的另一个示例。在该示例中,三角形110b的顶点在位置1、3和4处。此处,三角形110b具有边13b、14和34a。根据该示例,边13b与边14之间的角为θ4,边13b与边34a之间的角为θ5并且边34a与边14之间的角为θ6。
65.通过比较图1和图2,可以观察到三角形110a的边13a的长度应该等于三角形110b的边13b的长度。在一些实施方式中,一个三角形(例如,三角形110a)的边长可以被假定为正确的,由相邻三角形共享的边的长度将被约束为该长度。
66.图3a示出了图1和图2中描绘的两个三角形,没有对应的音频设备和环境的其他特征。图3示出了三角形110a和110b的边长和角取向的估计。在图3a中示出的示例中,三角形110b的边13b的长度被约束为与三角形110a的边13a的长度相同。三角形110b的其他边的长度与边13b的长度的所产生的变化成比例地缩放。所得三角形110b’在图3a示出为与三角形110a相邻。
67.根据一些实施方式,与三角形110a和110b相邻的其他三角形的边长都可以以类似的方式确定,直到已经确定了环境100中的所有音频设备位置。
68.音频设备位置的一些示例可以如下进行。每个音频设备可以基于由环境中的每个其他音频设备产生的声音来报告环境(例如,房间)中的每个其他音频设备的doa。第i个音频设备的笛卡尔坐标可以表示为xi=[xi,yi]
t
,其中,上标t指示矢量转置。给定环境中的m个音频设备,i={1...m}。
[0069]
图3b示出了估计由三个音频设备形成的三角形的内角的示例。在该示例中,音频设备为i、j和k。从设备i观察到的从设备j散发的声源的doa可以表示为θ
ji
。从设备i观察到的从设备k散发的声源的doa可以表示为θ
ki
。在图3b中示出的示例中,θ
ji
和θ
ki
是从轴线305a测得的,所述轴线的取向是任意的,并且所述轴线可以例如与音频设备i的取向相对应。三角形310的内角a可以表示为a=θ
ki-θ
ji
。可以观察到内角a的计算不依赖于轴线305a的取向。
[0070]
在图3b中示出的示例中,θ
ij
和θ
kj
是从轴线305b测得的,所述轴线的取向是任意的,并且所述轴线可以与音频设备j的取向相对应。三角形310的内角b可以表示为b=θ
ij-θ
kj
。类似地,在该示例中,θ
jk
和θ
ik
是从轴线305c测得的。三角形310的内角c可以表示为c=θ
jk-θ
ik

[0071]
在存在测量误差的情况下,a+b+c≠180
°
。可以通过从其他两个角预测每个角并且求平均来提高稳健件,例如,如下所示:
[0072][0073]
在一些实施方式中,可以通过应用正弦规则来计算(根据缩放误差)边缘长度(a、
b、c)。在一些示例中,可以为一个边缘长度分配任意值,如1。例如,通过使a=1并且将顶点放置在原点处,剩余两个顶点的位置可以计算如下:
[0074][0075]
然而,任意旋转可以是可接受的。
[0076]
根据一些实施方式,可以为环境中三个音频设备的所有可能子集重复三角形参数化的过程,在大小为的超集ζ中枚举。在一些示例中,t
l
可以表示第l个三角形。三角形可以不以任何特定顺序枚举,这取决于实施方式。由于doa和/或边长估计中的可能误差,三角形可能重叠并且可能无法完美对齐。
[0077]
图4是概述了可以由如图11中示出的装置等装置执行的方法的一个示例的流程图。与本文所描述的其他方法一样,不必以所指示的顺序来执行方法400的框。此外,这样的方法可以包括比所示出和/或所描述的框更多或更少的框。在该实施方式中,方法400涉及估计扬声器在环境中的位置。方法400的框可以由一个或多个设备执行,所述一个或多个设备可以是(或可以包括)图11中示出的装置1100。
[0078]
在该示例中,框405涉及获得多个音频设备中的每个音频设备的到达方向(doa)数据。在一些示例中,多个音频设备可以包括环境中的所有音频设备,如图1中示出的所有音频设备105。
[0079]
然而,在一些实例中,多个音频设备可以仅包括环境中所有音频设备的子集。例如,多个音频设备可以包括环境中的所有智能扬声器,但不包括环境中的其他音频设备中的一个或多个。
[0080]
doa数据可以通过各种方式获得,这取决于特定实施方式。在一些实例中,确定doa数据可以涉及确定多个音频设备中的至少一个音频设备的doa数据。例如,确定doa数据可以涉及从与多个音频设备中的单个音频设备相对应的多个音频设备麦克风中的每个麦克风接收麦克风数据以及至少部分地基于所述麦克风数据确定单个音频设备的doa数据。替代性地或另外地,确定doa数据可以涉及从与多个音频设备中的单个音频设备相对应的一个或多个天线接收天线数据以及至少部分地基于所述天线数据确定单个音频设备的doa数据。
[0081]
在一些这样的示例中,单个音频设备本身可以确定doa数据。根据一些这样的实施方式,多个音频设备中的每个音频设备可以确定其自身的doa数据。然而,在其他实施方式中,另一个设备(可以是本地或远程设备)可以确定环境中的一个或多个音频设备的doa数据。根据一些实施方式,服务器可以确定环境中一个或多个音频设备的doa数据。
[0082]
根据该示例,框410涉及基于doa数据确定多个三角形中的每个三角形的内角。在该示例中,多个三角形中的每个三角形具有与三个音频设备的音频设备位置相对应的顶点。上文描述了一些这样的示例。
[0083]
图5示出了其中环境中的每个音频设备都是多个三角形的顶点的示例。每个三角形的边与两个音频设备105之间的距离相对应。
[0084]
在该实施方式中,框415涉及确定每个三角形的每条边的边长。(三角形的边在本文中也可以被称为“边缘”。)根据该示例,边长至少部分地基于内角。在一些实例中,可以通
过确定三角形的第一边的第一长度以及基于三角形的内角确定三角形的第二边和第三边的长度来计算边长。上文描述了一些这样的示例。
[0085]
根据一些这样的实施方式,确定第一长度可以涉及将第一长度设置为预定值。然后可以基于三角形的内角来确定第二边和第三边的长度。可以基于预定值(例如参考值)来确定三角形的所有边。为了获得环境中的音频设备之间的实际距离(长度),可以将标准化缩放应用于由以下参考图4的框420和425描述的对齐过程产生的几何形状。该标准化缩放可以包括缩放对齐的三角形,使得所述三角形适合具有与环境相对应的大小的边界形状,例如圆形、多边形等。形状的大小可以是典型家庭环境的大小或者适合于特定实施方式的任意大小。然而,缩放对齐的三角形不限于使几何形状适合特定边界形状,可以使用适合于特定实施方式的任何其他缩放标准。
[0086]
在一些示例中,确定第一长度可以基于到达时间数据和/或接收信号强度数据。在一些实施方式中,到达时间数据和/或接收信号强度数据可以与来自环境中的第一音频设备的由环境中的第二音频设备检测到的声波相对应。替代性地或另外地,到达时间数据和/或接收信号强度数据可以与来自环境中的第一音频设备的由环境中的第二音频设备检测到的电磁波(例如,无线电波、红外波等)相对应。当到达时间数据和/或接收信号强度数据不可用时,第一长度可以被设置为如上文所描述的预定值。
[0087]
根据该示例,框420涉及执行将多个三角形中的每一个以第一顺序对齐的前向对齐过程。根据该示例,前向对齐过程产生前向对齐矩阵。
[0088]
根据一些这样的示例,期望三角形以边缘(xi,xj)等于相邻边缘的方式对齐,例如,如图3a中示出的和上文所描述的。令ε为大小为的所有边缘的集合。在一些这样的实施方式中,框420可以涉及遍历ε并且通过强制边缘与先前对齐的边缘的边缘一致来按前向顺序对齐三角形的公共边缘。
[0089]
图6提供了前向对齐过程的一部分的示例。图6中以粗体示出的数字1至5与图1、图2和图5中示出的音频设备位置相对应。图6中示出并且在本文中描述的前向对齐过程的顺序仅为示例。
[0090]
在该示例中,如在图3a中,强制三角形110b的边13b的长度与三角形110a的边13a的长度一致。图6中示出了所得三角形110b’,其中维持相同的内角。根据该示例,也强制三角形110c的边13c的长度与三角形110a的边13a的长度一致。图6中示出了所得三角形110c’,其中维持相同的内角。
[0091]
接下来,在该示例中,强制三角形110d的边34b的长度与三角形110b’的边34a的长度一致。此外,在该示例中,强制三角形110d的边23b的长度与三角形110a的边23a的长度一致。图6中示出了所得三角形110d’,其中维持相同的内角。根据一些这样的示例,图5中示出的剩余三角形可以以与三角形110b、110c和110d相同的方式进行处理。
[0092]
前向对齐过程的结果可以存储在数据结构中。根据一些这样的示例,前向对齐过程的结果可以存储在前向对齐矩阵中。例如,前向对齐过程的结果可以存储在矩阵中,其中n指示三角形的总数。
[0093]
当doa数据和/或初始边长确定包含误差时,将发生多个音频设备位置估计。在前
向对齐过程期间,误差通常会增加。
[0094]
图7示出了已经在前向对齐过程期间发生的多个音频设备位置估计的示例。在该示例中,前向对齐过程基于以七个音频设备位置为其顶点的三角形。此处,由于doa估计中的附加误差,三角形没有完美对齐。图7中示出的数字1至7的位置与由前向对齐过程产生的估计音频设备位置相对应。在该示例中,标记为“1”的音频设备位置估计一致,但针对音频设备6和7的音频设备位置估计示出较大差异,如数字6和7所在的相对较大的区域所示出的。
[0095]
返回图4,在该示例中,框425涉及将多个三角形中的每一个以与第一顺序反向的第二顺序对齐的反向对齐过程。根据一些实施方式,反向对齐过程可以涉及像以前一样但以反向的顺序遍历ε。在替代性示例中,反向对齐过程可以不与前向对齐过程的操作顺序正好反向。根据该示例,反向对齐过程产生反向对齐矩阵,所述反向对齐矩阵在本文中可以表示为
[0096]
图8提供了反向对齐过程的一部分的示例。图8中以粗体示出的数字1至5与图1、图2和图5中示出的音频设备位置相对应。图8中示出并且在本文中描述的反向对齐过程的顺序仅为示例。
[0097]
在图8中示出的示例中,三角形110e基于音频设备位置3、4和5。在该实施方式中,假定三角形110e的边长(或“边缘”)是正确的,并且强制相邻三角形的边长与其一致。根据该示例,强制三角形110f的边45b的长度与三角形110e的边45a的长度一致。图8中示出了所得三角形110f’,其中内角保持相同。在该示例中,强制三角形110c的边35b的长度与三角形110e的边35a的长度一致。图8中示出了所得三角形110c”,其中内角保持相同。根据一些这样的示例,图5中示出的剩余三角形可以以与三角形110c和110f相同的方式进行处理,直到反向对齐过程已经包括所有剩余三角形。
[0098]
图9示出了已经在反向对齐过程期间发生的多个音频设备位置估计的示例。在该示例中,反向对齐过程基于具有与上文参考图7描述的顶点相同的七个音频设备位置的三角形。图9中示出的数字1至7的位置与由反向对齐过程产生的估计音频设备位置相对应。此处同样,由于doa估计中的附加误差,三角形没有完美对齐。在该示例中,标记为6和7的音频设备位置估计一致,但针对音频设备1和2的音频设备位置估计示出更大差异。
[0099]
返回图4,框430涉及至少部分地基于前向对齐矩阵的值和反向对齐矩阵的值来产生每个音频设备位置的最终估计。在一些示例中,产生每个音频设备位置的最终估计可以涉及平移和缩放前向对齐矩阵以产生经平移和缩放的前向对齐矩阵,以及平移和缩放反向对齐矩阵以产生经平移和缩放的反向对齐矩阵。
[0100]
例如,通过将质心移动到原点并且强制单位弗罗贝尼乌斯范数(frobenius norm)(例如,和)来固定平移和缩放。
[0101]
根据一些这样的示例,产生每个音频设备位置的最终估计也可以涉及基于经平移和缩放的前向对齐矩阵以及经平移和缩放的反向对齐矩阵来产生旋转矩阵。旋转矩阵可以包括每个音频设备的多个估计音频设备位置。例如,可以通过奇异值分解来找到前向对齐与反向对齐之间的最佳旋转。在一些这样的示例中,涉及产生旋转矩阵可以涉及对经平移和缩放的前向对齐矩阵以及经平移和缩放的反向对齐矩阵执行奇异值分解,例如,如下:
[0102][0103]
在前述等式中,分别地,u表示矩阵的左奇异矢量并且v表示矩阵的右奇异矢量,∑表示奇异值矩阵。前述等式产生旋转矩阵r=vu
t
。矩阵乘积vu
t
产生旋转矩阵,使得被最佳旋转以与对齐。
[0104]
根据一些示例,在确定旋转矩阵r=vu
t
之后,可以对对齐求平均,例如,如下:
[0105][0106]
在一些实施方式中,产生每个音频设备位置的最终估计也可以涉及对每个音频设备的估计音频设备位置求平均,以产生每个音频设备位置的最终估计。各种公开的实施方式已被证明是稳健的,即使在doa数据和/或其他计算包括重大误差时。例如,由于来自多个三角形的重叠顶点,包含相同节点的个(即多个)估计。跨公共节点求平均产生最终估计
[0107]
图10示出了估计音频设备位置和实际音频设备位置的比较。在图10中示出的示例中,音频设备位置与在上文参考图7和图9描述的前向对齐过程和反向对齐过程期间估计的音频设备位置相对应。在这些示例中,doa估计的误差有15度的标准偏差。尽管如此,每个音频设备位置的最终估计(每个所述最终估计在图10中由“x”表示)与实际音频设备位置(每个所述实际音频设备位置在图10中由圆圈表示)很好地对应。通过以第一顺序执行前向对齐过程并且以与第一顺序相反的第二顺序执行反向对齐过程,到达方向估计(数据)的误差/不准确性被平均化,从而产生环境中的音频设备位置的估计的整体误差。误差趋向于以对齐顺序累积,如图7(其中较大的顶点数示出较大的对齐扩展)和图9(其中较小的顶点数示出较大的扩展)所示。以反向顺序遍历序列的过程也使对齐误差反向,从而使最终位置估计的整体误差平均化。
[0108]
图11是示出了能够实施本公开的各个方面的装置的部件的示例的框图。根据一些示例,装置1100可以是或可以包括被配置用于执行本文公开的方法中的至少一些方法的智能音频设备(如智能扬声器)。在其他实施方式中,装置1100可以是或者可以包括被配置用于执行本文公开的方法中的至少一些方法的其他设备。在一些这样的实施方式中,装置1100可以是或可以包括服务器。
[0109]
在该示例中,装置1100包括接口系统1105和控制系统1110。在一些实施方式中,接口系统1105可以被配置用于从环境中的多个麦克风中的每一个接收输入。接口系统1105可以包括一个或多个网络接口和/或一个或多个外部设备接口(如一个或多个通用串行总线(usb)接口)。根据一些实施方式,接口系统1105可以包括一个或多个无线接口。接口系统1105可以包括用于实施用户接口的一个或多个设备,如一个或多个麦克风、一个或多个扬声器、显示系统、触摸传感器系统和/或手势传感器系统。在一些示例中,接口系统1105可以包括控制系统1110与存储器系统(如图11中示出的可选存储器系统1115)之间的一个或多个接口。然而,控制系统1110可以包括存储器系统。
[0110]
例如,控制系统1110可以包括通用单芯片或多芯片处理器、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)或其他可编程逻辑设备、离散门或
晶体管逻辑、和/或离散硬件部件。在一些实施方式中,控制系统1110可以驻留在超过一个设备中。例如,控制系统1110的一部分可以驻留在图1中描绘的环境100内的设备中,并且控制系统1110的另一部分可以驻留在环境100之外的设备中,如服务器、移动设备(例如,智能电话或平板计算机)等。在一些这样的示例中,接口系统1105也可以驻留在多于一个设备中。
[0111]
在一些实施方式中,控制系统1110可以被配置用于至少部分地执行本文公开的方法。根据一些示例,控制系统1110可以被配置用于实施上文例如参考图4描述的方法和/或下文参考图12以及以下描述的方法。在一些这样的示例中,控制系统1110可以被配置用于至少部分地基于来自分类器的输出来确定对环境中的多个音频设备位置中的每一个的估计。
[0112]
在一些示例中,装置1100可以包括图11中描绘的可选麦克风系统1120。麦克风系统1120可以包括一个或多个麦克风。在一些示例中,麦克风系统1120可以包括麦克风阵列。在一些示例中,装置1100可以包括图11中描绘的可选扬声器系统1125。扬声器系统1125可以包括一个或多个扩音器。在一些示例中,麦克风系统1120可以包括扩音器阵列。在一些这样的示例中,装置1100可以是或者可以包括音频设备。例如,装置1100可以是或者可以包括图1中示出的音频设备105中的一个。
[0113]
在一些示例中,装置1100可以包括图11中示出的可选天线系统1130。根据一些示例,天线系统1130可以包括天线阵列。在一些示例中,天线系统1130可以被配置用于发射和/或接收电磁波。根据一些实施方式,控制系统1110可以被配置成基于来自天线系统1130的天线数据来估计环境中两个音频设备之间的距离。例如,控制系统1110可以被配置成根据天线数据的到达时间和/或天线数据的接收到的信号强度来估计环境中两个音频设备之间的距离。
[0114]
本文描述的一些或所有方法可以由一个或多个设备根据存储在一个或多个非暂态介质上的指令(例如,软件)来执行。这种非暂态介质可以包括如本文所描述的那些存储器设备,包括但不限于随机存取存储器(ram)设备、只读存储器(rom)设备等。一个或多个非暂态介质可以例如位于图11中所示的可选存储器系统1115和/或控制系统1110中。因此,可以在其上存储有软件的一个或多个非暂态介质中实施本公开中所描述的主题的各个创新方面。例如,软件可以包括用于控制至少一个设备来处理音频数据的指令。例如,软件可以由如图11的控制系统1110等控制系统的一个或多个部件执行。
[0115]
前述讨论的大部分涉及音频设备自动定位。以下讨论扩展了上文简要描述的确定收听者位置和收听者角取向的一些方法。在前述描述中,术语“旋转”的使用方式与以下描述中使用的术语“取向”基本上相同。例如,上文提到的“旋转”可以指最终扬声器几何形状的全局旋转,而不是在上文参考图4以及以下描述的过程期间单个三角形的旋转。该全局旋转或取向可以参考收听者角取向,例如通过收听者注视的方向、收听者的鼻子指向的方向等来解决。
[0116]
用于估计收听者位置的各种令人满意的方法是本领域已知的,所述方法中的一些方法在下文描述。然而,估计收听者角取向可能具有挑战性。下文详细描述了一些相关方法。
[0117]
确定收听者位置和收听者角取向可以实现一些期望的特征,如相对于收听者定向
定位的音频设备。知道收听者位置和角取向允许确定例如环境中相对于收听者哪些扬声器在前面、哪些在后面、哪些靠近中心(如果有的话)等。
[0118]
在音频设备位置与收听者的位置和取向之间建立关联之后,一些实施方式可以涉及将音频设备位置数据、音频设备角取向数据、收听者位置数据和收听者角取向数据提供给音频渲染系统。替代性地或另外地,一些实施方式可以涉及至少部分地基于音频设备位置数据、音频设备角取向数据、收听者位置数据和收听者角取向数据的音频数据渲染过程。
[0119]
图12是概述了可以由如图11中示出的装置等装置执行的方法的一个示例的流程图。与本文所描述的其他方法一样,不必以所指示的顺序来执行方法1200的框。此外,这样的方法可以包括比所示出和/或所描述的框更多或更少的框。在该示例中,方法1200的框由控制系统执行,所述控制系统可以是(或可以包括)图11中示出的控制系统1110。如上所述,在一些实施方式中,控制系统1110可以位于单个设备中,而在其他实施方式中,控制系统1110可以位于两个或更多个设备中。
[0120]
在该示例中,框1205涉及获得环境中的多个音频设备中的每个音频设备的到达方向(doa)数据。在一些示例中,多个音频设备可以包括环境中的所有音频设备,如图1中示出的所有音频设备105。
[0121]
然而,在一些实例中,多个音频设备可以仅包括环境中所有音频设备的子集。例如,多个音频设备可以包括环境中的所有智能扬声器,但不包括环境中的其他音频设备中的一个或多个。
[0122]
doa数据可以通过各种方式获得,这取决于特定实施方式。在一些实例中,确定doa数据可以涉及确定多个音频设备中的至少一个音频设备的doa数据。在一些示例中,可以通过控制环境中的多个扩音器中的每个扩音器以再现测试信号来获得doa数据。例如,确定doa数据可以涉及从与多个音频设备中的单个音频设备相对应的多个音频设备麦克风中的每个麦克风接收麦克风数据以及至少部分地基于所述麦克风数据确定单个音频设备的doa数据。替代性地或另外地,确定doa数据可以涉及从与多个音频设备中的单个音频设备相对应的一个或多个天线接收天线数据以及至少部分地基于所述天线数据确定单个音频设备的doa数据。
[0123]
在一些这样的示例中,单个音频设备本身可以确定doa数据。根据一些这样的实施方式,多个音频设备中的每个音频设备可以确定其自身的doa数据。然而,在其他实施方式中,另一个设备(可以是本地或远程设备)可以确定环境中的一个或多个音频设备的doa数据。根据一些实施方式,服务器可以确定环境中一个或多个音频设备的doa数据。
[0124]
根据图12中示出的示例,框1210涉及至少部分地基于doa数据,经由控制系统产生音频设备位置数据。在该示例中,音频设备位置数据包括对在框1205中引用的每个音频设备的音频设备位置的估计。
[0125]
音频设备位置数据例如可以是(或包括)坐标系(如笛卡尔坐标系、球坐标系或圆柱坐标系)的坐标。所述坐标系在本文中可以被称为音频设备坐标系。在一些这样的示例中,音频设备坐标系可以参考环境中的音频设备之一来定向。在其他示例中,音频设备坐标系可以参考由环境中的音频设备中的两个音频设备之间的线所定义的轴线来定向。然而,在其他示例中,音频设备坐标系可以参考环境的其他部分(如电视、房间的墙等)来定向。
[0126]
在一些示例中,框1210可以涉及上文参考图4描述的过程。根据一些这样的示例,
框1210可以涉及基于doa数据确定多个三角形中的每个三角形的内角。在一些实例中,多个三角形中的每个三角形可以具有与三个音频设备的音频设备位置相对应的顶点。一些这样的方法可以涉及至少部分地基于内角来确定每个三角形的每条边的边长。
[0127]
一些这样的方法可以涉及执行将多个三角形中的每一个以第一顺序对齐的前向对齐过程,以产生前向对齐矩阵。一些这样的方法可以涉及执行将多个三角形中的每一个以与第一顺序反向的第二顺序对齐的反向对齐过程,以产生反向对齐矩阵。一些这样的方法可以涉及至少部分地基于前向对齐矩阵的值和反向对齐矩阵的值来产生每个音频设备位置的最终估计。然而,在方法1200的一些实施方式中,框1210可以涉及应用除了上文参考图4描述的方法之外的方法。
[0128]
在该示例中,框1215涉及经由控制系统确定指示环境内的收听者位置的收听者位置数据。例如,收听者位置数据可以参考音频设备坐标系。然而,在其他示例中,所述坐标系可以参考收听者或参考环境的一部分(如电视、房间的墙等)来定向。
[0129]
在一些示例中,框1215可以涉及提示收听者(例如,经由来自环境中的一个或多个扩音器的音频提示)以说出一个或多个话语并且根据doa数据估计收听者位置。doa数据可以与由环境中的多个麦克风获得的麦克风数据相对应。麦克风数据可以与由麦克风对一个或多个话语的检测相对应。至少一些麦克风可以与扩音器共同定位。根据一些示例,框1215可以涉及三角测量过程。例如,框1215可以涉及通过找到穿过音频设备的doa矢量之间的交点来对用户的语音进行三角测量,例如,如下文参考图13a所描述的。根据一些实施方式,框1215(或方法1200的另一个操作)可以涉及在确定收听者位置之后,将音频设备坐标系的原点和收听者坐标系的原点共同定位。将音频设备坐标系的原点和收听者坐标系的原点共同定位可以涉及将音频设备位置从音频设备坐标系变换到收听者坐标系。
[0130]
根据该实施方式,框1220涉及经由控制系统确定指示收听者角取向的收听者角取向数据。例如,收听者角取向数据可以参考用于表示收听者位置数据的坐标系(如音频设备坐标系)来得到。在一些这样的示例中,收听者角取向数据可以参考音频设备坐标系的原点和/或轴线来得到。
[0131]
然而,在一些实施方式中,收听者角取向数据可以参考由收听者位置和环境中的其他点(如电视、音频设备、墙等)定义的轴线来得到。在一些这样的实施方式中,收听者位置可以用于定义收听者坐标系的原点。在一些这样的示例中,可以参考收听者坐标系的轴线来得到收听者角取向数据。
[0132]
本文公开了用于执行框1220的各种方法。根据一些示例,收听者角取向可以与收听者观看方向相对应。在一些这样的示例中,可以例如通过假定收听者正在观看特定对象(如电视),从而参考收听者位置数据来推断收听者观看方向。在一些这样的实施方式中,可以根据收听者位置和电视位置来确定收听者观看方向。替代性地或另外地,可以根据收听者位置和电视条形音箱位置来确定收听者观看方向。
[0133]
然而,在一些示例中,可以根据收听者输入来确定收听者观看方向。根据一些这样的示例,收听者输入可以包括从由收听者握持的设备接收的惯性传感器数据。收听者可以使用所述设备来指向环境中的位置(例如,与收听者面向的方向相对应的位置)。例如,收听者可以使用所述设备来指向发声的扩音器(正在再现声音的扩音器)。因此,在这样的示例中,惯性传感器数据可以包括与发声的扩音器相对应的惯性传感器数据。
[0134]
在一些这样的实例中,收听者输入可以包括由收听者选择的音频设备的指示。在一些示例中,音频设备的指示可以包括与所选音频设备相对应的惯性传感器数据。
[0135]
然而,在其他示例中,可以根据收听者的一个或多个话语(例如,“电视现在在我前面”、“扬声器2现在在我前面”等)做出音频设备的指示。下文描述根据收听者的一个或多个话语来确定收听者角取向数据的其他示例。
[0136]
根据图12中示出的示例,框1225涉及经由控制系统确定音频设备角取向数据,所述音频设备角取向数据指示每个音频设备相对于收听者位置和收听者角取向的音频设备角取向。根据一些这样的示例,框1225可以涉及围绕由收听者位置定义的点旋转音频设备坐标。在一些实施方式中,框1225可以涉及将音频设备位置数据从音频设备坐标系变换到收听者坐标系。下文描述了一些示例。
[0137]
图13a示出了图12的一些框的示例。根据一些这样的示例,音频设备位置数据包括参考音频设备坐标系1307对音频设备1至5中的每一个音频设备的音频设备位置估计。在该实施方式中,音频设备坐标系1307是以音频设备2的麦克风的位置作为原点的笛卡尔坐标系。此处,音频设备坐标系1307的x轴与音频设备2的麦克风位置和音频设备1的麦克风位置之间的线1303相对应。
[0138]
在该示例中,收听者位置是通过提示被示出为坐在沙发103上的收听者1305(例如,经由来自环境1300a中的一个或多个扩音器的音频提示)以说出一个或多个话语1327并且根据到达时间(toa)数据估计收听者位置来确定的。toa数据与由环境中的多个麦克风获得的麦克风数据相对应。在该示例中,麦克风数据与由音频设备1至5中的至少一些(例如,3个、4个或全部5个)音频设备的麦克风对一个或多个话语1327的检测相对应。
[0139]
替代性地或另外地,收听者位置根据由音频设备1至5中的至少一些(例如,2个、3个、4个或全部5个)音频设备的麦克风提供的doa数据。根据一些这样的示例,可以根据与doa数据相对应的线1309a、1309b等的交点来确定收听者位置。
[0140]
根据该示例,收听者位置与收听者坐标系1320的原点相对应。在该示例中,收听者角取向数据由收听者坐标系1320的y’轴指示,所述y’轴与收听者的头1310(和/或收听者的鼻子1325)与电视101的条形音箱1330之间的线1313a相对应。在图13a中示出的示例中,线1313a平行于y’轴。因此,角表示y轴与y’轴之间的角。在该示例中,图12的框1225可以涉及音频设备坐标围绕收听者坐标系1320的原点旋转角度因此,尽管音频设备坐标系1307的原点示出为与图13a中的音频设备2相对应,但一些实施方式涉及在音频设备坐标围绕收听者坐标系1320的原点旋转角度之前,将音频设备坐标系1307的原点与收听者坐标系1320的原点共同定位。该共同定位可以通过从音频设备坐标系1307到收听者坐标系1320的坐标变换来执行。
[0141]
在一些示例中,条形音箱1330和/或电视101的位置可以通过使条形音箱发出声音并且根据doa和/或toa数据估计条形音箱的位置来确定,这可以对应于由音频设备1至5中的至少一些(例如,3个、4个或全部5个)音频设备的麦克风对声音的检测。替代性地或另外地,条形音箱1330和/或电视101的位置可以通过提示用户走近tv并且通过由doa和/或toa数据定位用户的言语来确定,这可以对应于由音频设备1至5中的至少一些(例如,3个、4个或全部5个)音频设备的麦克风对声音的检测。这种方法可以涉及三角测量。这样的示例在
其中条形音箱1330和/或电视101没有相关联的麦克风的情况下可以是有益的。
[0142]
在一些其他示例中,其中,条形音箱1330和/或电视101确实具有相关联的麦克风,条形音箱1330和/或电视101的位置可以根据toa或doa方法(如本文公开的doa方法)来确定。根据一些这样的方法,麦克风可以与条形音箱1330共同定位。
[0143]
根据一些实施方式,条形音箱1330和/或电视101可以具有相关联的相机1311。控制系统可以被配置成捕获收听者的头1310(和/或收听者的鼻子1325)的图像。在一些这样的示例中,控制系统可以被配置成确定收听者的头1310(和/或收听者的鼻子1325)与相机1311之间的线1313a。收听者角取向数据可以与线1313a相对应。替代性地或另外地,控制系统可以被配置成确定线1313a与音频设备坐标系的y轴之间的角
[0144]
图13b示出了确定收听者角取向数据的附加示例。根据该示例,收听者位置已经在图12的框1215中确定。此处,控制系统控制环境1300b的扩音器以将音频对象1335渲染到环境1300b内的各种位置。在一些这样的示例中,控制系统可以使扩音器渲染音频对象1335,使得音频对象1335似乎围绕收听者1305旋转,例如,通过渲染音频对象1335使得音频对象1335似乎围绕收听者坐标系1320的原点旋转。在该示例中,弯曲箭头1340示出了音频对象1335在其围绕收听者1305旋转时的轨迹的一部分。
[0145]
根据一些这样的示例,收听者1305可以提供指示音频对象1335何时处于收听者1305所面对的方向的用户输入(例如,说“停止”)。在一些这样的示例中,控制系统可以被配置成确定收听者位置与音频对象1335的位置之间的线1313b。在该示例中,线1313b与收听者坐标系的指示收听者1305所面对的方向的y’轴相对应。在替代性实施方式中,收听者1305可以提供指示音频对象1335何时在环境的前面、在环境的tv位置、在音频设备位置等的用户输入。
[0146]
图13c示出了确定收听者角取向数据的附加示例。根据该示例,收听者位置已经在图12的框1215中确定。此处,收听者1305正在使用手持设备1345通过将手持设备1345指向电视101或条形音箱1330来提供关于收听者1305的观看方向的输入。在该示例中,手持设备1345和收听者的手臂的虚线轮廓指示在收听者1305将手持设备1345指向电视101或条形音箱1330之前的时间,收听者1305将手持设备1345指向音频设备2。在其他示例中,收听者1305可以已经将手持设备1345指向另一个音频设备,如音频设备1。根据该示例,手持设备1345被配置成确定音频设备2与电视101或条形音箱1330之间的角α,所述角近似于音频设备2与收听者1305的观看方向之间的角。
[0147]
在一些示例中,手持设备1345可以是包括惯性传感器系统和被配置用于与控制环境1300c的音频设备的控制系统通信的无线接口的蜂窝电话。在一些示例中,手持设备1345可以运行被配置成例如通过提供用户提示(例如,经由图形用户界面)、通过接收指示手持设备1345指向期望方向的输入、通过保存对应的惯性传感器数据和/或将对应的惯性传感器数据传输到控制环境1300c的音频设备的控制系统等来控制手持设备1345执行必要功能的应用程序或“app”。
[0148]
根据该示例,控制系统(其可以是手持设备1345的控制系统或控制环境1300c的音频设备的控制系统)被配置成根据惯性传感器数据(例如,根据陀螺仪数据)确定线1313c和1350的取向。在该示例中,线1313c平行于轴y’,并且可以用于确定收听者角取向。根据一些示例,控制系统可以根据音频设备2与收听者1305的观看方向之间的角α来确定音频设备坐
标围绕收听者坐标系1320的原点的适当旋转。
[0149]
图13d示出了根据参考图13c描述的方法来确定音频设备坐标的适当旋转的一个示例。在该示例中,音频设备坐标系1307的原点与收听者坐标系1320的原点共同定位。在其中确定收听者位置的1215的过程之后,使音频设备坐标系1307的原点和收听者坐标系1320的原点共同定位成为可能。将音频设备坐标系1307的原点和收听者坐标系1320的原点共同定位可以涉及将音频设备位置从音频设备坐标系1307变换到收听者坐标系1320。已经如上文参考图13c所描述的确定了角α。因此,角α与音频设备2在收听者坐标系1320中的期望取向相对应。在该示例中,角β与音频设备2在音频设备坐标系1307中的取向相对应。角(在该示例中为β-α)指示用于将音频设备坐标系1307的y轴与收听者坐标系1320的y’轴对齐所必需的旋转。
[0150]
在一些实施方式中,图12的方法可以涉及至少部分地基于对应的音频设备位置、对应的音频设备角取向、收听者位置数据和收听者角取向数据来控制环境中的音频设备中的至少一个。
[0151]
例如,一些实施方式可以涉及将音频设备位置数据、音频设备角取向数据、收听者位置数据和收听者角取向数据提供给音频渲染系统。在一些示例中,音频渲染系统可以由控制系统(如图11的控制系统1110)实施。一些实施方式可以涉及至少部分地基于音频设备位置数据、音频设备角取向数据、收听者位置数据和收听者角取向数据来控制音频数据渲染过程。一些这样的实施方式可以涉及向渲染系统提供扩音器声学能力数据。扩音器声学能力数据可以与环境的一个或多个扩音器相对应。扩音器声学能力数据可以指示一个或多个驱动器的取向、驱动器数量或一个或多个驱动器的驱动器频率响应。在一些示例中,可以从存储器中取得扩音器声学能力数据,然后将所述扩音器声学能力数据提供给渲染系统。
[0152]
现有的灵活渲染技术包括质心振幅平移(cmap)和灵活虚拟化(fv)。从高水平来看,这两种技术渲染一组一个或多个音频信号,每个音频信号具有相关联的期望的感知空间位置,用于在一组两个或更多个扬声器上回放,其中,该组扬声器的相对激活是通过扬声器回放的所述音频信号的感知空间位置的模型以及音频信号的期望感知空间位置与扬声器位置的接近度的函数。所述模型确保收听者在其预期空间位置附近听到音频信号,并且接近度项控制使用哪些扬声器来实现该空间印象。具体地,接近度项有利于激活靠近音频信号的期望感知空间位置的扬声器。对于cmap和fv两者,该函数关系可以方便地从成本函数中得到,所述成本函数写为两个项的和,一个项用于空间方面并且一个项用于接近度:
[0153][0154]
此处,集合表示一组m个扩音器的位置,表示音频信号的期望感知空间位置,并且g表示扬声器激活的m维矢量。对于cmap,矢量中的每个激活表示每个扬声器的增益,而对于fv,每个激活表示滤波器(在第二种情况下,g可以等效地被视为特定频率处的复值的矢量,并且跨多个频率计算不同的g以形成滤波器)。激活的最佳矢量(g
opt
)是通过最小化跨激活的成本函数找到的:
[0155][0156]
在成本函数的某些定义下,很难控制由上述最小化产生的最佳激活的绝对水平,尽管g
opt
的分量之间的相对水平是适当的。为了解决该问题,可以执行g
opt
的后续归一化,以
便控制激活的绝对水平。例如,可以期望将矢量归一化为具有单位长度,这符合常用的恒定功率平移规则:
[0157][0158]
灵活渲染算法的确切行为由成本函数的两个项c
空间
和c
接近度
的特定构建决定。对于cmap,c
空间
是从模型得到的,所述模型将从一组扩音器播放的音频信号的感知空间位置放置在由扩音器的相关联的激活增益gi(矢量g的元素)加权的这些扩音器的位置的质心:
[0159][0160]
然后将等式3操纵成表示期望音频位置与由激活的扩音器产生的音频位置之间的平方误差的空间成本:
[0161][0162]
对于fv,成本函数的空间项被不同地定义。目标是在收听者的左耳和右耳处产生与音频对象位置相对应的双耳响应b。概念上,b是滤波器的2
×
1矢量(每只耳朵一个滤波器),但更方便地将其视为特定频率下复值的2
×
1矢量。继续以特定频率进行该表示,可以按对象位置从一组hrtf索引中取得期望的双耳响应:
[0163][0164]
同时,由扩音器在收听者的耳朵处产生的2x1双耳响应e被建模为2 x m声学传输矩阵h乘以复扬声器激活值的m x 1矢量g:
[0165]
e=hg
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(6)
[0166]
声学传输矩阵h是基于相对于收听者位置的扩音器位置的集合建模的。最后,成本函数的空间分量定义为期望的双耳响应(等式5)与扩音器产生的双耳响应(等式6)之间的平方误差:
[0167][0168]
方便地,等式4和7两者中定义的针对cmap和fv的成本函数的空间项都可以重新布置为矩阵二次函数,作为扬声器激活g的函数:
[0169][0170]
其中,a是m x m正方形矩阵,b是1 x m矢量,并且c是标量。矩阵a的秩为2,并且因此当m>2时,存在无限多个空间误差项等于零的扬声器激活g。引入成本函数的第二项c
接近度
去除了该不确定性,并且产生了与其他可能的解相比具有感知上有益性质的特定解。对于cmap和fv两者,c
接近度
被构建成使得位置远离期望的音频信号位置的扬声器的激活比位置接近期望位置的扬声器的激活受到更多惩罚。该构建产生了稀疏的扬声器激活最佳集合,其中,仅接近期望的音频信号的位置的扬声器才会被显著激活,并且实际上导致音频信号的空间再现,这对于在所述一组扬声器周围的收听者移动在感知上更加稳健。
[0171]
为此,成本函数的第二个项c
接近度
可以定义为扬声器激活的绝对值平方的距离加权和。这以矩阵形式简洁地表示为:
[0172][0173]
其中,d是期望的音频位置与每个扬声器之间距离惩罚的对角矩阵:
[0174][0175]
距离惩罚函数可以采取许多形式,但以下是有用的参数化
[0176][0177]
其中,是期望的音频位置与扬声器位置之间的欧几里得距离,并且α和β是可调参数。参数α指示惩罚的全局强度;d0与距离惩罚的空间范围相对应(在大约d0距离处或更远的扩音器将受到惩罚),并且β解释了在距离d0处惩罚起始的突然性。
[0178]
将等式8和9a中定义的成本函数的两个项相结合,得出总体成本函数
[0179]
c(g)=g
*
ag+bg+c+g
*
dg=g
*
(a+d)g+bg+c
ꢀꢀꢀ
(10)
[0180]
将该成本函数关于g的导数设置为零并且求解g产生最佳扬声器激活解:
[0181][0182]
通常,等式11中的最优解可以产生值为负的扬声器激活。对于灵活渲染器的cmap构建,这样的负激活可能是不期望的,并且因此等式(11)可以在所有激活保持为正的情况下最小化。
[0183]
图14和图15是图示了给定扬声器位置4度、64度、165度、-87度和-4度的情况下一组示例扬声器激活和对象渲染位置的图。图14示出了扬声器激活,其包括针对这些特定扬声器位置的等式11的最优解。图15描绘了各个扬声器位置,分别如橘色、紫色、绿色、金色和蓝色的点。图15还将大量可能对象角度的理想对象位置(即,要渲染音频对象的位置)示出为绿色点,并且将这些对象的对应实际渲染位置示出为通过黑色虚线连接到理想对象位置的红色点。
[0184]
虽然在本文中已经描述了本公开的具体实施例和应用,但是对于本领域普通技术人员而言显而易见的是,在不脱离本公开的范围的情况下,可以对本文所描述的实施例和应用进行许多改变。
[0185]
可以从以下枚举的示例实施例(eee)中理解本公开的各个方面:
[0186]
1.一种音频设备定位方法,包括:
[0187]
获得多个音频设备中的每个音频设备的到达方向(doa)数据;
[0188]
基于所述doa数据确定多个三角形中的每一个的内角,所述多个三角形中的每个三角形具有与所述音频设备中的三个音频设备的音频设备位置相对应的顶点;
[0189]
至少部分地基于所述内角来确定所述三角形中的每一个的每条边的边长;
[0190]
执行将所述多个三角形中的每一个以第一顺序对齐的前向对齐过程,以产生前向对齐矩阵;
[0191]
执行将所述多个三角形中的每一个以与所述第一顺序反向的第二顺序对齐的反向对齐过程,以产生反向对齐矩阵;以及
[0192]
至少部分地基于所述前向对齐矩阵的值和所述反向对齐矩阵的值来产生每个音
频设备位置的最终估计。
[0193]
2.如eee 1所述的方法,其中,产生每个音频设备位置的所述最终估计包括:
[0194]
平移和缩放所述前向对齐矩阵以产生经平移和缩放的前向对齐矩阵;以及
[0195]
平移和缩放所述反向对齐矩阵以产生经平移和缩放的反向对齐矩阵。
[0196]
3.如eee 2所述的方法,其中,产生每个音频设备位置的所述最终估计进一步包括基于所述经平移和缩放的前向对齐矩阵和所述经平移和缩放的反向对齐矩阵来产生旋转矩阵,所述旋转矩阵包括每个音频设备的多个估计音频设备位置。
[0197]
4.如eee 3所述的方法,其中,产生所述旋转矩阵包括对所述经平移和缩放的前向对齐矩阵和所述经平移和缩放的反向对齐矩阵执行奇异值分解。
[0198]
5.如eee 3或eee 4所述的方法,其中,产生每个音频设备位置的所述最终估计进一步包括对每个音频设备的所述估计音频设备位置求平均,以产生每个音频设备位置的所述最终估计。
[0199]
6.如eee 1至5中任一项所述的方法,其中,确定所述边长涉及:
[0200]
确定三角形的第一边的第一长度;以及
[0201]
基于所述三角形的所述内角来确定所述三角形的第二边和第三边的长度。
[0202]
7.如eee 6所述的方法,其中,确定所述第一长度涉及将所述第一长度设置为预定值。
[0203]
8.如eee 6所述的方法,其中,确定所述第一长度基于到达时间数据或接收信号强度数据中的至少一者。
[0204]
9.如eee 1至8中任一项所述的方法,其中,获得所述doa数据涉及确定所述多个音频设备中的至少一个音频设备的所述doa数据。
[0205]
10.如eee 9所述的方法,其中,确定所述doa数据涉及从与所述多个音频设备中的单个音频设备相对应的多个音频设备麦克风中的每个麦克风接收麦克风数据以及至少部分地基于所述麦克风数据确定所述单个音频设备的所述doa数据。
[0206]
11.如eee 9所述的方法,其中,确定所述doa数据涉及从与所述多个音频设备中的单个音频设备相对应的一个或多个天线接收天线数据以及至少部分地基于所述天线数据确定所述单个音频设备的所述doa数据。
[0207]
12.如eee 1至11中任一项所述的方法,进一步包括至少部分地基于至少一个音频设备位置的所述最终估计来控制所述音频设备中的至少一个音频设备。
[0208]
13.如eee 12所述的方法,其中,控制所述音频设备中的至少一个音频设备涉及控制所述音频设备中的至少一个音频设备的扩音器。
[0209]
14.一种装置,所述装置被配置成执行如eee 1至13中任一项所述的方法。
[0210]
15.一个或多个非暂态介质,其上记录有软件,所述软件包括用于控制一个或多个设备执行如eee 1至13中任一项所述的方法的指令。
[0211]
16.一种音频设备配置方法,包括:
[0212]
经由控制系统获得环境中的多个音频设备中的每个音频设备的音频设备到达方向(doa)数据;
[0213]
至少部分地基于所述doa数据经由所述控制系统产生音频设备位置数据,所述音频设备位置数据包括每个音频设备的音频设备位置的估计;
[0214]
经由所述控制系统确定指示所述环境内的收听者位置的收听者位置数据;
[0215]
经由所述控制系统确定指示收听者角取向的收听者角取向数据;以及
[0216]
经由所述控制系统确定音频设备角取向数据,所述音频设备角取向数据指示每个音频设备相对于所述收听者位置和所述收听者角取向的音频设备角取向。
[0217]
17.如eee 16所述的方法,进一步包括至少部分地基于对应的音频设备位置、对应的音频设备角取向、所述收听者位置数据和所述收听者角取向数据来控制所述音频设备中的至少一个音频设备。
[0218]
18.如eee 16所述的方法,进一步包括将所述音频设备位置数据、所述音频设备角取向数据、所述收听者位置数据和所述收听者角取向数据提供给音频渲染系统。
[0219]
19.如eee 16所述的方法,进一步包括至少部分地基于所述音频设备位置数据、所述音频设备角取向数据、所述收听者位置数据和所述收听者角取向数据来控制音频数据渲染过程。
[0220]
20.如eee 16至19中任一项所述的方法,其中,获得所述doa数据涉及控制所述环境中的多个扩音器中的每个扩音器以重现测试信号。
[0221]
21.如eee 16至20中任一项所述的方法,其中,所述收听者位置数据或所述收听者角取向数据中的至少一者基于与所述收听者的一个或多个话语相对应的doa数据。
[0222]
22.如eee 16至21中任一项所述的方法,其中,所述收听者角取向与收听者观看方向相对应。
[0223]
23.如eee 22所述的方法,其中,所述收听者观看方向根据所述收听者位置和电视位置确定。
[0224]
24.如eee 22所述的方法,其中,所述收听者观看方向根据所述收听者位置和电视条形音箱位置确定。
[0225]
25.如eee 22所述的方法,其中,所述收听者观看方向根据收听者输入确定。
[0226]
26.如eee 25所述的方法,其中,所述收听者输入包括从由所述收听者握持的设备接收的惯性传感器数据。
[0227]
27.如eee 25所述的方法,其中,所述惯性传感器数据包括与发声的扩音器相对应的惯性传感器数据。
[0228]
28.如eee 25所述的方法,其中,所述收听者输入包括由所述收听者选择的音频设备的指示。
[0229]
29.如eee 16至28中任一项所述的方法,进一步包括向渲染系统提供扩音器声学能力数据,所述扩音器声学能力数据指示一个或多个驱动器的取向、驱动器数量或一个或多个驱动器的驱动器频率响应中的至少一者。
[0230]
30.如eee 16至29中任一项所述的方法,其中,产生所述音频设备位置数据包括:
[0231]
基于所述音频设备doa数据确定多个三角形中的每一个的内角,所述多个三角形中的每个三角形具有与所述音频设备中的三个音频设备的音频设备位置相对应的顶点;
[0232]
至少部分地基于所述内角来确定所述三角形中的每一个的每条边的边长;
[0233]
执行将所述多个三角形中的每一个以第一顺序对齐的前向对齐过程,以产生前向对齐矩阵;
[0234]
执行将所述多个三角形中的每一个以与所述第一顺序反向的第二顺序对齐的反
向对齐过程,以产生反向对齐矩阵;以及
[0235]
至少部分地基于所述前向对齐矩阵的值和所述反向对齐矩阵的值来产生每个音频设备位置的最终估计。
[0236]
31.一种装置,所述装置被配置成执行如eee 16至30中任一项所述的方法。
[0237]
32.一个或多个非暂态介质,其上记录有软件,所述软件包括用于控制一个或多个设备执行如eee 16至30中任一项所述的方法的指令。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1