用于扬声器位置估计的系统和方法与流程

文档序号:18554050发布日期:2019-08-30 22:20阅读:219来源:国知局
用于扬声器位置估计的系统和方法与流程

本申请根据35u.s.c.§119(e)要求2016年11月16日提交的名称为“systemandmethodforloudspeakerpositionestimation(用于扬声器位置估计的系统和方法)”的美国临时申请第62/423,041号的优先权,其全部内容通过引用结合于此。



背景技术:

环绕声系统通常需要听众进行校准以获得高质量的收听体验。通常,使用放置在最佳听音位置(sweetspot)或默认收听位置的多元件麦克风来手动校准环绕声系统,以接收由环绕声系统的每个扬声器播放的测试信号。多元件麦克风通常通过长电缆连接到音频/视频(a/v)接收器或处理器。然而,将多元件麦克风物理地放置在最佳听音位置或默认收听位置对于听众来说可能是麻烦的。



技术实现要素:

本公开的一个方面提供了一种用于估计多声道环绕声系统中扬声器位置的装置。该装置包括:麦克风阵列,包括第一麦克风和第二麦克风,其中第一麦克风被配置为响应于扬声器输出测试信号而生成第一音频信号,并且其中第二麦克风被配置为响应于扬声器输出该测试信号而生成第二音频信号。该装置还包括耦合到麦克风阵列的位置估计引擎,所述位置估计引擎被配置为:基于第一音频信号和第二音频信号确定到达时间差估计;基于到达时间差估计来确定第一角度;识别从第一音频信号导出的脉冲响应中的第一直接路径分量;识别从第二音频信号导出的脉冲响应中的第二直接路径分量;基于第一直接路径分量和第二直接路径分量确定第二角度;以及基于第一角度和第二角度的比较来确定是否存在异常情况。

前一段落中的装置可以包括以下特征的任何子组合:其中所述位置估计引擎还被配置为:将第一音频信号划分为一个或多个第一段;将第二音频信号划分为一个或多个第二段;生成所述一个或多个第一段中的第一段的傅里叶变换,以形成第一傅里叶变换;生成所述一个或多个第二段中的第一段的傅里叶变换,以形成第二傅里叶变换;并且基于第一傅里叶变换和第二傅里叶变换确定到达时间差估计;其中所述位置估计引擎还被配置为:基于所生成的所述一个或多个第一段和所述一个或多个第二段的傅里叶变换来确定多个到达时间差估计;将所述多个到达时间差估计汇总成直方图;以及基于所述多个到达时间差估计中的在所述直方图中出现次数最多的到达时间差估计,确定到达时间差估计;其中所述位置估计引擎还被配置为基于从所述第一音频信号导出的所述脉冲响应中的最高振幅来识别从所述第一音频信号导出的所述脉冲响应中的所述第一直接路径分量;其中所述位置估计引擎还被配置为:选择包括第一直接路径分量的第一时间窗口;选择包含第二直接路径分量的第二时间窗口;使用第一时间窗口中的数据和第二时间窗口中的数据确定互相关;以及使用所确定的互相关确定第二角度;其中所述位置估计引擎还被配置为:将第一角度与第二角度进行比较;以及响应于确定第一角度和第二角度不在阈值角度值内,确定存在异常情况;其中所述阈值角度值包括0和15度之间的值;其中所述装置还包括:通知生成器,被配置为响应于确定存在异常情况,经由网络向用户设备发送通知;其中所述通知包括扬声器的角度不正确的指示、物体阻塞扬声器和麦克风阵列之间的路径的指示、扬声器的极性不正确的指示、或者扬声器的位置不正确的指示中的一个;其中所述装置包括条形音箱、音频/视频(a/v)接收器、中央扬声器或电视机中的一个;以及其中所述多声道环绕声系统被以立体声、2.1、3.1、5.1、5.2、7.1、7.2、11.1、11.2、或22.2扬声器布局之一布置。

本公开的另一方面提供了一种估计多声道环绕声系统中扬声器位置的方法。该方法包括:接收来自麦克风阵列中的第一麦克风的第一音频信号以及来自麦克风阵列中的第二麦克风的第二音频信号;基于第一音频信号和第二音频信号确定到达时间差估计;基于到达时间差估计来确定第一角度;识别从第一音频信号导出的脉冲响应中的第一直接路径分量;识别从第二音频信号导出的脉冲响应中的第二直接路径分量;基于第一直接路径分量和第二直接路径分量确定第二角度;以及基于第一角度和第二角度的比较来确定是否存在异常情况。

前一段落中的方法可包括以下特征的任何子组合:其中确定到达时间差估计还包括:将第一音频信号划分为一个或多个第一段;将第二音频信号划分为一个或多个第二段;生成所述一个或多个第一段中的第一段的傅里叶变换,以形成第一傅里叶变换;生成所述一个或多个第二段中的该第一段的傅里叶变换,以形成第二傅里叶变换;并且基于第一傅里叶变换和第二傅里叶变换确定到达时间差估计;其中识别从所述第一音频信号导出的脉冲响应中的第一直接路径分量还包括基于从所述第一音频信号导出的所述脉冲响应中的最高振幅来识别从所述第一音频信号导出的所述脉冲响应中的所述第一直接路径分量;其中确定是否存在异常情况还包括:将第一角度与第二角度进行比较;以及响应于确定第一角度和第二角度不在阈值角度值内,确定存在异常情况;其中所述阈值角度值包括0和15度之间的值;其中所述方法还包括:响应于确定存在异常情况,经由网络向用户设备发送通知,其中,所述通知包括扬声器的角度不正确的指示、物体阻塞扬声器和麦克风阵列之间的路径的指示、扬声器的极性不正确的指示、或者扬声器的位置不正确的指示中的一个。

本公开的另一方面提供了一种非暂时性物理计算机存储器,其上存储有可执行指令,当所述可执行指令在由硬件处理器执行时被配置为至少:指令扬声器发送测试信号;使用第一技术基于从麦克风阵列中的第一麦克风记录的第一音频信号和从麦克风阵列中的第二麦克风记录的第二音频信号确定第一角度;使用第二技术基于第一音频信号和第二音频信号确定第二角度;以及基于第一角度和第二角度的比较来确定是否存在异常情况。

前一段落中的非暂时性物理计算机存储器可包括以下特征的任何子组合:其中所述第一技术包括广义互相关和相位变换(gcc-phat)技术;以及其中第二技术包括直接路径分量(dpc)技术。

出于概述本公开的目的,本文已经描述了本发明的某些方面,优点和新颖特征。应该理解,根据本文公开的本发明的任何特定实施例并不必需实现所有这些优点。因此,本文公开的发明可以如下方式来实施或实行:实现或优化本文所教导的一个优点或一组优点,而不必需实现本文可教导或建议的其他优点。

附图说明

在整个附图中,重复使用附图标记来指示所引用元件之间的对应关系。提供附图以说明本文所述发明的实施例,而不是限制其范围。

图1a示出了根据一个实施例的描绘用于估计扬声器位置和校准多声道环绕声系统的示例房间环境的高级框图。

图1b示出了根据一个实施例的描绘用户设备经由网络与条形音箱通信的框图。

图2a示出了示例扬声器位置估计过程。

图2b示出了示例直接路径分量(dpc)选择过程。

图2c示出了使用dpc的示例扬声器角度确定过程。

图2d示出了示例扬声器异常情况检测过程。

图3示出了描绘图1的麦克风阵列中的第一麦克风的脉冲响应和图1a的麦克风阵列中的第二麦克风的脉冲响应的示例图。

图4示出了描绘所确定的第一角度和所确定的第二角度具有相似值的状况的示例图。

图5示出了描绘所确定的第一角度和所确定的第二角度不具有相似值的状况的示例图。

图6示出了可以由图1b的用户设备显示的示例图形用户界面(gui)。

图7示出了另一示例扬声器位置估计过程。

图8示出了描绘根据一个实施例的图1a的示例性房间环境中的第一角度的示例的高级框图。

具体实施方式

介绍

如上文在背景技术中所述,为了校准的目的而需要听众将多元件麦克风物理地放置在最佳收听位置或默认收听位置可能是麻烦的。因此,一个或多个麦克风可以集成到中央已知位置。例如,一个或多个麦克风可以集成到多声道环绕声系统的前置组件中,例如条形音箱,a/v接收器,中央扬声器,电视机,电视机之下或之上的设备中,和/或等等。

标准布局可指示如下一个或多个位置,相对于一个或多个麦克风的中心已知位置或另一参考点(例如,收听位置)在该位置放置一个或多个扬声器以实现最佳或接近最佳的收听体验。然而,听众往往难以将扬声器放置在最佳位置。例如,墙壁,门,家具和/或其他物体可以防止听众将一个或多个扬声器放置在最佳位置。如果扬声器不能放置在最佳位置,则可能导致音频图像的失真,并且听众可能不能体验到内容创建者所预期的声音场景。

当扬声器不能放置在最佳位置时,可以修改发送到扬声器的音频信号,以通过空间校准和补偿使失真最小化。对于空间校准,确定扬声器相对于一个或多个麦克风的中心已知位置或相对于收听位置的位置可能是重要的。

通常,通过在扬声器上播放校准信号、利用(一个或多个)校准麦克风接收所得到的声信号、记录(一个或多个)麦克风输出信号以及分析所记录的(一个或多个)信号使用诸如具有相位变换加权的广义互相关(gcc-phat)之类的技术来估计扬声器的位置。当扬声器直接面向一个或多个麦克风时,gcc-phat技术可以产生可靠的结果。但是,gcc-phat技术在其他情形下会产生不可靠的结果。例如,如果物体阻挡扬声器和一个或多个麦克风之间的路径,则gcc-phat技术可能产生不可靠的结果。作为另一示例,如果扬声器朝向与面向一个或多个麦克风的方向不同的方向,则gcc-phat技术可以产生不可靠的结果。

因此,本文描述了扬声器位置估计系统的实施例,该系统估计扬声器的位置和/或朝向,并且如果扬声器朝向不正确或者物体正在阻塞扬声器和麦克风之间的路径,则通知听众。例如,扬声器位置估计系统可以集成在包括两个或更多个麦克风的设备(例如,a/v接收器,条形音箱,中央扬声器,电视等)内。扬声器位置估计系统可以指令扬声器输出测试信号(例如,最大长度序列)。每个麦克风可以接收由于输出的测试信号而生成的声信号。每个麦克风可以将声信号转换为音频信号,其中音频信号可以记录在存储设备上。扬声器位置估计系统可以确定扬声器的距离。此外,扬声器位置估计系统可以使用gcc-phat技术和所记录的音频信号确定扬声器的估计角度。扬声器位置估计系统还可以使用从所记录的音频信号获得的直接路径分量(dpc)来确定扬声器的估计角度。

扬声器位置估计系统可以比较这两个估计角度。如果这两个估计角度在阈值角度值内,则扬声器位置估计系统可以通知听众在麦克风和扬声器之间没有检测到障碍物。扬声器位置估计系统同样可以通知听众扬声器正确地朝向收听圈的中心。可选地,如果这两个估计角度在阈值角度值内,则扬声器位置估计系统可以基于估计角度中的至少一个导出补偿分量的参数,其中参数可以用于将来补偿非理想的扬声器放置或其他异常情况(例如,在通过扬声器回放之前处理音频时)。然而,如果这两个估计角度在阈值角度值内,则可能存在不正确或非理想的扬声器角度和/或不正确或非理想的扬声器位置。扬声器位置估计系统可以将估计角度之一或两者与理想角度(例如,在理想扬声器布局中指定的角度)进行比较,并且如果比较的角度不在另一个阈值角度值内,则扬声器位置估计系统可以确定存在不正确或非理想的扬声器角度和/或不正确或不理想的扬声器位置。如果两个估计角度不在阈值角度值内,则扬声器位置估计系统可以通知听众已经检测到异常情况。异常情况的示例可以包括麦克风和扬声器之间的障碍、不正确或非理想的扬声器角度,不正确的扬声器极性,和/或不正确或非理想的扬声器位置。在诸如移动计算设备的用户设备上执行的应用可以与扬声器位置估计系统通信并生成显示通知的界面。可替代地或附加地,扬声器位置估计系统可以向补偿组件提供信息,该补偿组件修改发送给扬声器的信号以补偿非理想的扬声器放置或其他异常情况。扬声器位置估计系统的其他细节在下面参考图1a到8进行描述。

示例扬声器位置估计系统概述

作为概述,图1a示出了描绘根据一个实施例的用于估计扬声器位置和校准多声道环绕声系统的示例房间环境100的高级框图。多声道环绕声系统常常根据标准化的扬声器布局(例如立体声,2.1,3.1,5.1,5.2,7.1,7.2,11.1,11.2或22.2)被布置。还可以使用其他扬声器布局或阵列,例如波场合成(wfs)阵列或其他基于对象的渲染布局。条形音箱是一种特殊的扬声器箱,其可以安装在例如监视器或电视机的显示设备的上方或下方。最近的条形音箱模型常常是包括扬声器阵列的动力系统,该扬声器阵列将左和右声道扬声器与可选的中央扬声器和/或低音炮集成在一起。当与有线或无线环绕扬声器和/或超低音扬声器连接时,条形音箱已成为独立环绕声系统或家庭影院系统中的关键前端组件的灵活解决方案。

在图1a中,房间环境100包括3.1扬声器布置(例如,条形音箱110,左环绕扬声器106,右环绕扬声器108和低音炮104),电视102(或监视器或视频屏幕),听众120和沙发122。条形音箱110可包括扬声器阵列112,麦克风阵列114,位置估计引擎118,校准引擎(未示出),以及集成在其外壳中的a/v处理引擎(未示出)。在其他实施例中,条形音箱110包括与图1中所示的组件不同的、更少的或更多的组件。

dvd、blu-和流媒体内容的出现和扩散导致了多声道音轨的广泛应用。大多数现代环绕声格式规定了用于正确再现这样的内容的理想扬声器放置。由于实际原因(例如房间布局或家具摆放),拥有环绕声系统的典型听众往往不能遵守扬声器设置的这些规定。这常常会导致内容制作者的意图与听众的空间音频体验不匹配。例如,作为最佳实践,常常建议将扬声器沿推荐布置圆130放置并且使听众坐在推荐布置圆130的中心处或附近。关于推荐扬声器布置的更多细节可以在国际电信联盟(itu)报告itu-rbs.2159-4(05/2012)“家庭和广播应用中的多声道声音技术”中找到,其通过引用而整体并入。然而,由于房间环境100中的房间限制或用户偏好,右环绕扬声器108未被放置在其推荐位置109处,并且听众120坐在沙发122而远离推荐布置圆130的中心。

这种问题的一种解决方案(通常称为空间校准)通常需要听众将麦克风阵列放置在默认收听位置(或最佳听音位置)。然后,系统在每个相应的扬声器上播放测试信号,记录对应的麦克风信号(例如,由麦克风阵列捕获的声信号的转换版本),并分析所记录的信号以近似出每个扬声器的位置。通过近似出每个扬声器106和108的位置,系统然后可以使用补偿过程针对实际扬声器布局在空间上重新格式化多声道音轨。为了清楚起见,空间校准过程通常包括近似每个扬声器的位置,使用近似位置来确定扬声器设置误差,建议对设置误差的补救,和/或估计可以由补偿过程使用的补偿参数(例如,扬声器位置估计)。补偿过程可以包括使用估计的补偿参数来修改音频信号以供进行最佳回放(例如,当扬声器处于非理想系统布局时)。然而,这种空间校准过程对于典型的听众来说可能是令人生畏或不方便的。当听众120移动到不同位置时,这种现有方法无法检测和补偿这种变化,并且听众120必须通过将麦克风放置在新收听位置而手动完成整个校准过程。相反,使用条形音箱110中的集成麦克风阵列114,条形音箱110中的校准引擎(未示出)可以在用户干预最小的情况下对扬声器106和108执行空间校准以及估计听众120的位置,如在名称为“spatialcalibrationofsurroundsoundsystemsincludinglisteningpositionestimation(包括收听位置估计的环境声音系统的空间校准)”的美国专利公开第2015/0016642号中更详细地描述的,其全部内容通过引用结合于此。在一些实施例中,可以通过图形用户界面指定听众位置,如在2016年11月21日提交的名称为“graphicaluserinterfaceforcalibratingasurroundsoundsystem(用于校准环绕声系统的图形用户界面)”的美国专利申请第15/357,971号中更详细地描述的,其全部内容通过引用结合于此。用于空间校准的另一种方法是在每个扬声器106和108中结合麦克风,与使用集成在中央组件中的小麦克风阵列相比,这可能过于昂贵。

然而,补偿参数的准确估计可能依赖于扬声器106和108的位置的准确估计。不准确的扬声器106和108位置估计可能导致较差的音频信号修改和/或次最优收听体验。如果例如扬声器106或108背向麦克风阵列114或者麦克风阵列114与扬声器106或108之间的路径被物体阻挡,则传统的扬声器位置估计技术可能失败。例如,传统的扬声器位置估计技术可能不准确地估计左环绕扬声器106的位置,因为左环绕扬声器106的前表面不朝向面向麦克风阵列114的方向。作为另一示例,传统扬声器位置估计技术可能不准确地估计右环绕扬声器108的位置,即使右环绕扬声器108的前表面朝向面向麦克风阵列114的方向,这是因为沙发122位于右环绕扬声器108和麦克风阵列114之间的路径中。

因此,位置估计引擎116可以实现如下技术:即使扬声器106或108没有朝向麦克风阵列114的方向或者扬声器106或108与麦克风阵列114的路径被阻挡,仍改进扬声器106和108位置估计。例如,位置估计引擎116可以使用第一技术来估计扬声器106或108的位置。使用第一技术估计的位置可以被认为是基线估计。位置估计引擎116还可以使用第二技术来估计扬声器106或108的位置。可以利用使用第二技术估计的位置来检测异常情况,例如被阻塞路径或不正确的扬声器方向。位置估计引擎116可以使用两个位置估计来导出更可靠的扬声器位置估计。扬声器位置估计可用于生成用户通知和/或补偿非理想扬声器106或108放置或其他异常情况。关于第一和第二技术的附加细节将在下文参照在图2a-2d被描述。虽然文中将位置估计引擎116描述为使用两种位置估计技术,但这并不意味着限制。位置估计引擎116可以组合任何数量(例如,3,4,5,6等)的位置估计技术的结果,以导出更可靠的扬声器位置估计。可以使用诸如神经网络的人工智能或启发式方法来组合位置估计技术的结果以导出更可靠的扬声器位置估计。

另外,当检测到异常情况时,条形音箱110可以为听众120生成通知。图1b示出了根据一个实施例的描绘用户设备140经由网络115与条形音箱110通信的框图。网络115可以包括局域网(lan)、广域网(wan)、因特网或其组合。如图1b所示,示例条形音箱110包括位置估计引擎116和通知生成器118。

用户设备140可以是台式计算机,笔记本电脑,平板电脑,个人数字助理(pda),电视,无线手持设备(例如智能手机),条形音箱,机顶盒,a/v接收器,家庭影院系统组件,它们的组合和/或由听众120操作的类似物。用户设备140可以执行使得用户设备140显示用户界面的应用。例如,用户界面可以显示条形音箱110、低音炮104,左环绕扬声器106和/或右环绕扬声器108的估计位置。用户界面还可以包括允许听众120开始校准(例如,空间校准和/或非空间校准)的功能。如果听众120发起校准,则用户设备140可以经由网络115指导条形音箱110(例如,嵌入在条形音箱110中的校准引擎,未示出)开始校准操作。作为校准操作的一部分,条形音箱110指令位置估计引擎116以本文所述的方式估计一个或多个扬声器106和108的位置。基于位置估计的结果,位置估计引擎116可以确定是否存在异常情况。异常情况的示例可包括物体阻塞麦克风阵列114与扬声器106或108之间的路径、不正确的扬声器106或108角度、不正确的扬声器106或108极性,和/或不正确或不理想的扬声器106或108的位置。该确定可以由位置估计引擎116发送到通知生成器118。另外,位置估计(或从位置估计导出的参数)可以被发送到条形音箱110中的补偿组件(例如,运行本文所述的补偿过程的组件),补偿组件110修改多声道音频以供在如本文所述地放置的扬声器106和108上进行最佳回放。

通知生成器118可以基于由位置估计引擎116提供的确定来生成通知。例如,如果没有检测到异常情况,则通知生成器118可以生成没有检测到异常情况的通知,或者可以根本不生成通知。可替代地,如果检测到异常情况,则通知生成器118可以生成指示检测到哪种异常情况的通知,指令听众120如何解决问题,和/或一旦问题得到纠正则指令听众120再次选择校准选项。可选地,条形音箱110可以自动修复问题,如下面更详细描述的。

通知生成器118可以经由网络115将通知发送到用户设备140。一旦从通知生成器118接收到通知,应用可以使用户设备140在用户界面中显示通知。

注意,图1a-1b仅示出了环绕声系统布置的一个示例。其他实施例可以包括具有更多或更少扬声器的不同扬声器布局。例如,条形音箱110可以由中央声道扬声器、两个前置声道扬声器(一个左和右一个)和a/v接收器代替,以形成传统的5.1布置。在该示例中,麦克风阵列114可以集成在中央声道扬声器中或者在a/v接收器中,校准引擎、位置估计引擎116和通知生成器118可以是a/v接收器的一部分,并且麦克风阵列114可以耦合到校准引擎、位置估计引擎116和/或通知生成器118。条形音箱110也可以用电视或任何其他a/v组件替换,其中替换a/v组件包括校准引擎、位置估计引擎116、通知生成器118和/或麦克风阵列114。

尽管图1a将麦克风阵列114示出为包括两个麦克风,这并不意味着限制。可安装额外的麦克风或麦克风阵列以面向顶部扬声器、左侧前置扬声器,右侧前置扬声器和/或任何其他扬声器,以便更好地测量和位置估计。例如,第三麦克风可以被包括在麦克风阵列114中而处于与其他两个麦克风不同的深度和/或不同的高度(例如,不与其他两个麦克风成直线)。将第三麦克风定位在由其他两个麦克风形成的线之外可允许位置估计引擎116三维地估计扬声器的角度(例如,除了方位角之外,还有天顶角)。

此外,尽管图1a-1b示出了包括在条形音箱110中的单个位置估计引擎116,这并不意味着限制。条形音箱110可以包括任何数量的位置估计引擎116(例如,一个位置估计引擎116,每个用于麦克风阵列114中的多个不同麦克风子集)。例如,位置估计引擎116可以是包括计算机处理单元(cpu)、存储器和/或其他硬件组件(例如,模数转换器(adc))的硬件设备。总线可以将cpu直接耦合到麦克风阵列114中的麦克风,使得cpu可以处理从麦克风记录的音频信号。如果条形音箱110包括单个位置估计引擎116,则总线可以将麦克风阵列114中的每个麦克风耦合到临时存储从相应麦克风记录的音频信号的缓冲器。切换机制可被用于将数据从缓冲区引导到cpu进行处理。可替代地,单个位置估计引擎116可以包括多个cpu,并且总线可以将麦克风阵列114中的每个麦克风耦合到单独的cpu以进行处理。

示例扬声器位置估计过程

图2a示出了示例扬声器位置估计过程200。在一个实施例中,过程200可以由本文描述的系统中的任以一个执行,包括上文关于图1a-1b讨论的条形音箱110(例如,位置估计引擎116和/或通知生成器118)。根据实施例,过程200可以包括更少的框和/或附加的框,或者框可被以与所示顺序不同的顺序执行。

框204,206,208,210,212,214和216对应于用于估计扬声器位置的第一示例技术。例如,第一技术可以是gcc-phat技术,并且可以产生第一角度估计。此外,分别在图2b和2c中描述的过程218和220对应于用于估计扬声器位置的第二技术。例如,第二技术可以是dpc技术并且可以产生第二角度估计。

过程200可以在听众发起校准之后在框202处开始,并且可以是由条形框110实现以执行校准的若干过程之一。这里描述的过程200可以由条形音箱110(例如,位置估计引擎116和/或通知发生器118)实现,以估计单个扬声器的位置和/或生成关于估计位置的通知。条形音箱110可以针对多声道环绕声系统中的一个或多个扬声器重复过程200。例如,条形音箱110可以针对左环绕扬声器106将过程200执行一次,针对右环绕扬声器108将过程200执行一次。

在框202处,指令扬声器发送测试信号。例如,测试信号可以是最大长度序列(例如,伪随机二进制序列)。可以指令扬声器通过位置估计引擎116经由有线或无线连接发送测试信号。在一个实施例中,测试信号被输出500ms。扬声器可以在延迟之后输出测试信号,该延迟例如是环回延迟(例如,由条形音箱110和/或扬声器中的硬件组件引起的延迟,诸如由硬件缓冲、硬件过滤、信号数模转换、信号模数转换、和/或类似处理导致的延迟)。麦克风阵列114中的麦克风可各自接收由于输出的测试信号而生成的声信号。然后,麦克风阵列114中的麦克风可以进一步将声信号转换为分别对应于音频信号的电信号。随后可以将音频信号记录在存储设备(未示出)中。例如,音频信号可以包括输出的测试信号的直接路径分量以及由房间环境100中的物理(例如,壁,物体等)引起的混响。在完成框202之后,过程200继续到框204和过程218。

在框204处,将变量n设为等于麦克风阵列114中的麦克风的数量。例如,变量n可以设置为2,3,4,5,6等。

在框206,将变量i设为等于1。变量i可以标识麦克风阵列114中的特定麦克风。

在框208,执行从麦克风i记录的音频信号的傅里叶变换以生成傅里叶变换i。来自麦克风i的音频信号可以被记录设定的时间量。例如,设定的时间量可以基于扬声器距条形音箱110的最大距离和测试信号的时间长度。作为示例,扬声器与条形音箱110的最大距离可以预计在15m和20m之间。因此,假设空气中的声速大约为342m/s,输出的测试信号从扬声器到达麦克风i的预计最大传播时间可以在大约43.9ms和58.5ms之间。然后可以将来自麦克风i的音频信号记录至少预计最大传播时间加上测试信号的时间长度(例如,至少约558.5ms)。可以对整个所记录的音频信号(例如,大约558.5ms的音频信号)执行傅里叶变换。可替代地,可以对所记录的音频信号的一部分(例如,所记录的音频信号的10ms至30ms片段)执行傅里叶变换,和/或可以对所记录的音频信号的不同部分执行多个傅里叶变换(例如,可以对所记录的音频信号的每个30ms片段执行傅里叶变换)。

在框210处,过程200确定变量i是否等于变量n。如果变量i和n相等,则过程200对从麦克风阵列114中的每个麦克风记录的音频信号执行傅里叶变换,并且可以前进到框214。否则,过程200没有对从麦克风阵列114中的每个麦克风记录的音频信号执行傅里叶变换,并且可以前进到框212。

在框212处,将变量i递增1。在将变量i递增1之后,过程200返回到框208。

在框214处,基于傅里叶变换确定到达时间差。例如,考虑到给定麦克风阵列114中的麦克风的不同位置,输出的测试信号(例如,以声信号的形式)可以在不同时间到达麦克风阵列114中的每个麦克风。到达时间差可代表这种时间差异。在麦克风阵列114包括两个麦克风的情况下,可以如下确定到达时间差:

其中是两个麦克风之间的到达时间差,x1(ω)和x2(ω)分别是从两个麦克风记录的音频信号的傅里叶变换,并且w(ω)是加权函数。加权函数可以定义如下:

在替代实施例中,位置估计引擎116确定一组可能的到达时间差估计,并且选择一个到达时间差估计作为用于确定第一角度的到达时间差估计。例如,如上所述,可以对记录的音频信号的一部分(例如所记录的音频信号的10ms到30ms片段)执行傅里叶变换。因为测试信号可以持续更长的时间段(例如,500ms),所以记录的音频信号可以具有相似的时间长度,并且可以被划分或分割成多个相等或几乎相等的片段。然后,可以对于每个片段确定到达时间差。例如,可以针对从麦克风阵列114中的第一麦克风记录的第一片段和从麦克风阵列114中的第二麦克风记录的第一片段确定第一到达时间差,可以针对从麦克风阵列114中的第一麦克风记录的第二片段和从麦克风阵列114中的第二麦克风记录的第二片段确定第二到达时间差,等等。位置估计引擎116可以将各种到达时间差估计组织成直方图。例如,位置估计引擎116可以量化到达时间差估计,然后对量化到达时间差估计进行归纳(bin)。可以选择具有最高出现次数的到达时间差估计(例如,具有最高数量的量化到达时间差估计的区段)作为用于确定第一角度的到达时间差估计。可选地,每个到达时间差估计可以从内插的互相关导出,以实现子采样精度。每个到达时间差估计可以包括整数部分和小数部分。到达时间差估计的整数部分可以被组织成直方图。然后可以基于直方图选择到达时间差的整数部分(例如,可以选择与具有最高出现次数的到达时间差估计相对应的整数部分作为到达时间差的整数部分。然后,可以将与所选择的到达时间差估计相对应的小数部分被加回到该整数部分。作为示例,可以通过对其整数部分位于所选区段中的原始到达时间差估计的小数部分求平均来导出与所选择的到达时间差估计相对应的小数部分。

在框216处,基于到达时间差确定扬声器的第一角度。例如,麦克风阵列114中的麦克风之间的距离可以是已知的。然后可以如下确定第一角度:

其中c是空气中声音的速度,d是麦克风阵列114中的麦克风之间的距离,而τ是到达时间差。第一角度可以代表连接扬声器的中心与麦克风阵列114的中心的线相对于穿过麦克风阵列114中的麦克风的线的角度。作为示例,如果麦克风阵列114中的麦克风沿在x-y坐标平面中没有y分量的线对齐,并且扬声器的中心定位成使得连接扬声器的中心和麦克风阵列114的中心的线在x-y坐标平面中没有x分量,则确定的第一角度可以是90度。图8示出了根据一个实施例的描绘图1a的示例性房间环境100中的第一角度810的示例的高级框图。如图8所示,线820连接左环绕扬声器106的中心与麦克风阵列114的中心,并且线830表示穿过麦克风阵列114中的麦克风的线。第一角度810表示线820和线830之间的角度。在确定了第一角度之后,过程200前进到过程222,其将参考图2d被更详细地描述。在一个实施例中,对于包括多于2个麦克风的麦克风阵列114,可以通过(1)确定每对麦克风的第一角度(例如,对于每对麦克风重复框214和216)并然后对结果进行聚合,和/或(2)通过使用线性代数公式来确定到达方向,来确定第一角度。

图2b示出了示例dpc选择过程218。在一个实施例中,过程218可以由本文描述的系统中的任何一个执行,包括上文参照图1a-1b讨论的条形音箱110(例如,位置估计引擎116)。根据实施例,过程218可以包括更少的和/或附加的框,或者框可以按与图示顺序不同的顺序来执行。

在过程200的框202完成之后,过程218可以在框224处开始。在框224处,将变量n设为等于麦克风阵列114中的麦克风的数量。例如,变量n可以设为2,3,4,5,6等。

在框226处,将变量i设置为等于1。变量i可以标识麦克风阵列114中的特定麦克风。

在框228处,确定从测试信号和从麦克风i记录的音频信号导出的脉冲响应中的最大峰值。作为示例,位置估计引擎116可以通过对所记录的音频信号进行傅里叶变换并将结果除以测试信号的傅里叶变换来导出脉冲响应。该除法导致传递函数的傅里叶变换。然后,位置估计引擎116可以对传递函数的傅里叶变换进行逆傅里叶变换,以导出脉冲响应。在一个实施例中,位置估计引擎116标识时间窗口内的最大峰值,该时间窗口在扬声器被指令输出测试信号之后对应于一个环回延迟的时间开始,并且在对应于接收测试信号的预计最大时间量加上测试信号的时间长度的时间结束。

在框230处,基于所确定的最大峰值确定阈值振幅。例如,阈值振幅可以是所确定的最大峰值的设定百分比(例如,50%,60%,70%,80%,90%等)。

在框232处,确定脉冲响应中的与最大峰值的时间之前的时间对应的并且大于阈值振幅的峰值是否存在。在一些情况下,由于房间环境100中的混响,最大峰值不是dpc(例如,与可在从一个或多个表面反射之后到达麦克风i的其他音频信号相反,在直接路径中从扬声器传送到麦克风i的音频信号)。因此,位置估计引擎116可以通过找到在最大峰值之前出现的并且具有高于特定阈值的振幅的另一个峰值来确定dpc。

在框234处,如果在最大峰值之前存在具有大于阈值振幅的振幅的峰值,则过程218继续到框238。否则,过程218继续到框236。

在框236处,麦克风i的dpc被设为最大峰值。例如,可以将dpc设为最大峰值,这是因为在最大峰值之前没有出现其他峰值具有足够高的振幅以被认为是dpc。图3示出了示例图300,其描绘了麦克风阵列114中的麦克风314a的脉冲响应和麦克风阵列114中的麦克风314b的脉冲响应。如图3中所示,峰值310a是麦克风314a的脉冲响应的最大峰值,峰值310b是麦克风314b的脉冲响应的最大峰值。峰值310a和310b之前没有出现超过阈值振幅的峰值,因此峰值310a可以被设为麦克风314a的脉冲响应的dpc,并且峰值310b可以被设为麦克风314b的脉冲响应的dpc。

在框238,麦克风i的dpc被设为脉冲响应中的第一峰值,其对应于最大峰值的时间之前的时间并且大于阈值振幅。例如,在最大峰值之前出现的多个峰值可能超过阈值振幅。然而,可以选择超过阈值振幅的第一峰值作为dpc。

在框240处,过程218确定变量i是否等于变量n。如果变量i和n相等,则过程218确定麦克风阵列114中的每个麦克风的dpc,并且可以前进到过程220的框244。否则,过程218不确定麦克风阵列114中的每个麦克风的dpc,并且可以前进到框242。

在框242处,将变量i递增1。在将变量i递增1之后,过程218返回到框228。

图2c示出了使用dpc的示例扬声器角度确定过程220。在一个实施例中,过程220可以由本文描述的系统中的任一个执行,包括上面关于图1a-1b讨论的条形音箱110(例如,位置估计引擎116)。根据实施例,过程220可以包括更少的和/或附加的框,或者框可以按与所示顺序不同的顺序执行。

在过程218的框240完成之后,过程220可以在框244处开始。在框244,选择每个dpc周围的时间窗口。例如,位置估计引擎116可以针对每个麦克风idpc选择相应dpc周围的时间窗口。时间窗口可以在dpc峰值的时间之前的数毫秒(例如,10ms,20ms等)开始,并且可以在dpc峰值的时间之后的数毫秒(例如,10ms,20ms等)结束。

在框246,确定所选时间窗口之间的互相关以估计延时。例如,位置估计引擎116可以确定包括在所选时间窗口中的数据的互相关。估计的延时可以对应于互相关数据的开始(例如,对应于麦克风i时间窗口的开始的时间)和互相关数据具有最高振幅的时间之间的时间长度。可选地,可以对互相关输出执行插值,以进一步提高延时估计的准确性。在替代实施例中,位置估计引擎116可以通过从对应于第二麦克风的dpc峰值的时间减去对应于第一麦克风的dpc峰值的时间来确定估计的延时。然而,与执行互相关相比,该方法可能产生更高的噪声,这是因为在一些实施例中,即使1个样本的误差也可能显着影响所得到的角度确定。

在框248,基于估计的延时确定第二角度。例如,等式(3)可以与估计的延时一起使用(例如,替换到达时间差)以确定第二角度。第二角度可以代表连接扬声器的中心与麦克风阵列114的中心的线相对于穿过麦克风阵列114中的麦克风的线的角度。一旦过程220确定第二角度,过程220就可以继续到过程222的框250。

图2d示出了示例扬声器异常状况检测过程222。在一个实施例中,过程222可以由本文描述的系统中的任一个执行,包括上面关于图1a-1b讨论的条形音箱110(例如,位置估计引擎116和/或通知生成器118)。根据实施例,过程222可以包括更少的和/或附加的框,或者框可以按与所示顺序不同的顺序执行。

在过程220的框248完成之后,过程222可以在框250处开始。在框250处,将第一角度与第二角度进行比较。在一些实施例中,框202,204,206,208,210,212,214和216、过程218和过程220被重复若干次。因此,可以在一系列测试中比较第一角度和第二角度。

当扬声器的输出直接面对麦克风阵列114时,所确定的第一角度可以是准确的。然而,当扬声器的输出面向除了朝向麦克风阵列114的方向之外的方向时或者当麦克风阵列114与扬声器之间的路径中存在阻塞时,所确定的第一角度可能不准确。当扬声器的输出直接面向麦克风阵列114时,所确定的第二角度也可以是准确的,并且当扬声器面向除了朝向麦克风阵列114的方向之外的方向时或者在麦克风阵列114和扬声器之间的路径中存在阻塞时,所确定的第二角度可以比确定的第一角度更准确。

因此,在框252处,基于比较确定第一角度和第二角度之间的差异是否大于阈值角度值。如果这两个角度之间的差异超过阈值角度值,则这可以指示存在异常情况。作为示例,阈值角度值可以在0和15度之间。考虑到当扬声器不面向麦克风阵列114时或者物体阻塞扬声器和麦克风阵列114之间的路径时dpc技术的相对一致的准确性以及gcc-phat技术的不准确性,位置估计引擎116可以提供在这样的情形下通过dpc方法获得的结果。然而,即使两个角度之间的差异不超过阈值角度值,仍可能存在不正确或非理想的扬声器角度和/或不正确或非理想的扬声器位置。

在框254处,如果两个角度在阈值角度值内,则过程222继续到框256。否则,过程222继续到框262。图4示出了示例图400,其描绘了所确定的第一角度410(例如,使用gcc-phat技术确定)和所确定的第二角度420(例如,使用dpc技术确定)具有相似值的情形。例如,所确定的第一角度410和所确定的第二角度420的值可以在阈值角度值内(例如,角度大约在0.3度内)。可以运行多个测试,使得可确定多个第一角度410和第二角度420。图5示出了示例图500,其描绘了所确定的第一角度510(例如,使用gcc-phat技术确定)和所确定的第二角度450(例如,使用dpc技术确定)不具有相似值的情形。例如,所确定的第一角度510和所确定的第二角度520的值可以不在阈值角度值内(例如,角度大约相隔11度)。可以运行多个测试,使得确定多个第一角度510和第二角度520。

在框256处,将第一和/或第二角度与理想角度进行比较。理想角度可以是从理想扬声器布局导出或提供的角度。可以执行比较以确定是否存在不正确或非理想的扬声器角度和/或不正确或非理想的扬声器位置。

在框258处,如果第一和/或第二角度在理想角度的阈值角度值(与框252和254中的阈值角度值相同或不同)之内,则过程222继续到框260(例如,其指示没有检测到不正确或非理想的扬声器角度和/或不正确或非理想的扬声器位置)。否则,过程222继续到框262。

在框260处,未检测到错误。位置估计引擎116可以向通知生成器118指示没有检测到错误。通知生成器118可以生成如下通知,该通知指示没有检测到错误,扬声器的角度是正确的,和/或没有物体阻塞扬声器和条形音箱110(例如,麦克风阵列114)之间的路径。或者,通知生成器118可以不生成通知。条形音箱110可以使用所确定的角度和/或基于dpc峰值确定的距离来执行校准的剩余部分。

在框262处,检测到异常情况。位置估计引擎116可以向通知生成器118指示检测到异常情况。通知生成器118可以生成如下通知,该通知指示物体正在阻塞麦克风阵列114和扬声器之间的路径和/或应该移除物体,检测到不正确或非理想的扬声器角度,检测到不正确或非理想的扬声器位置,和/或检测到不正确的极性。

可替代地或附加地,通知可以指示扬声器错误地朝向。例如,通知可以通知听众120检查扬声器的方向(例如,检查扬声器是否朝向圆130的中心)。

可替代地或附加地,通知可以指示扬声器具有不正确的位置(例如,在给定扬声器连接到的输出的情况下,扬声器被放置在房间的错误侧)。例如,当启动校准时,条形音箱110指令一个或多个扬声器输出测试信号。因此,条形音箱110知道哪个环绕扬声器例如在给定时间正输出测试信号。如果听众120将左环绕扬声器和右环绕扬声器连线,使得左环绕扬声器106连接到右环绕插孔并且右环绕扬声器108连接到左环绕插孔,则当预计右环绕扬声器108正输出测试信号时,条形音箱110可指令左环绕扬声器输出测试信号106。所确定的第二角度(和/或所确定的第一角度)可以具有在是左环绕扬声器106而不是右环绕扬声器108正输出测试信号的情况下的预计值。因此,所确定的第二角度(和/或所确定的第一角度)的值类似于替代指定的扬声器的预计值(例如,所确定的左环绕扬声器的第二角度的值类似于右环绕扬声器的预计值)可由位置估计引擎116识别,并且听众120可被适当地通知。在另外的实施例中,条形音箱110可以在这种情况下重新路由条形音箱110的内部布线,使得听众120不必手动调换扬声器。

可替代地或附加地,通知可以指示扬声器具有不正确的极性。例如,用户可能已经将扬声器的正输入连接到负插孔,并且可以将扬声器的负输入连接到正插孔。在这种情况下,从麦克风阵列114中的麦克风记录的音频信号可能与测试信号异相(例如,180度异相)。因此,位置估计引擎116可以比较所记录的音频信号与测试信号。如果这两个信号在特定值(例如,180度)的阈值内彼此异相,则位置估计引擎116可以识别不正确的极性,并且听众120可被适当地通知。在另外的实施例中,条形音箱110可以在这种情况下重新路由条形音箱110的内部布线以反转极性,使得听众120不必手动地重新布线扬声器。

可替代地或附加地,通知可以指示扬声器位置不正确或不理想,和/或扬声器应该重新定位到什么位置。例如,dpc峰值可以对应于扬声器和麦克风阵列114之间的距离。因为dpc峰值对应于从扬声器到麦克风阵列114的音频信号的直接路径,所以将环回延迟添加到指令扬声器输出测试信号的时间并且从dpc峰值出现的时间减去组合时间对应于音频信号从扬声器行进到麦克风阵列114的时间。通过位置估计引擎116将该时间乘以空气中的声速,可以将该时间转换为距离估计。然后,距离估计可以代表扬声器和麦克风阵列114之间的距离。距离估计可以与角度估计(例如,第一角度)组合以确定扬声器的可能位置。位置估计引擎116可以基于所确定的可能位置导出补偿参数以供由补偿组件使用来修改音频信号以便最佳回放,和/或所确定的可能位置可以显示在用户设备140上的图形用户界面上。位置估计引擎116还可以确定沿着推荐布置圆130的靠近该可能位置的位置(例如,标准布局中的最近位置),作为用于重新定位扬声器的建议位置。在一些实施例中,可以在将扬声器重新定位到推荐位置之后再次运行校准。在一些实施例中,扬声器的一个或多个可能位置显示在用户设备140上的图形用户界面上,并且听众120可以选择最佳匹配扬声器的物理位置的位置(例如,从而无需请求听众120重新定位扬声器)。

在框280或282处生成的通知可以由通知生成器118经由网络115发送到用户设备140。然后,用户设备140可以显示该通知。

在可替代实施例中,如果所确定的角度之间的差超过阈值角度值,则位置估计引擎116选择所确定的第二角度和/或基于dpc峰值确定的距离以供在执行校准中使用。因此,可以不生成通知并且可以完成校准。

示例图形用户界面

图6示出了可以由图1b的用户设备140显示的示例图形用户界面(gui)600。例如,用户设备140可以执行使得用户设备140显示gui600的应用。gui600可以包括校准按钮660、补偿按钮682、以及条形音箱610、听众620、左环绕扬声器606和右环绕扬声器608的图形表示。

校准按钮660的选择可以使得用户设备140指令条形音箱610(例如,物理设备而不是gui600中描绘的表示)执行空间和/或非空间(例如,不正确极性检测)校准。作为校准的一部分,条形音箱610可以如本文所述地生成通知。如果生成通知,则通知可以被发送到用户设备140并显示在gui600中。可替代地,条形音箱610可以将校准的结果发送到用户设备140,并且用户设备140可以确定是否应该生成通知。

补偿按钮662的选择可以打开和关闭补偿处理。另外,可以在gui内选择并拖动听众620图标以表示听众620的真实位置。在gui600内,可以选择(未示出)附加选项,其允许听众620改变扬声器606和608布局、听众620位置、扬声器606和608位置等。例如,如果在将通知提供给听众620和/或校准被启动一次或多次之后继续检测到异常情况,则可以向听众620呈现这些附加选项(例如,手动校准选项,诸如允许听众620从若干可能的显示选项中选择gui600中的扬声器的位置)。

另一示例扬声器位置估计过程

图7示出了另一示例扬声器位置估计过程700。在一个实施例中,过程700可以由本文描述的系统中的任一个执行,包括上面关于图1a-1b讨论的条形音箱110(例如,位置估计引擎116和/或通知生成器118)。根据实施例,过程700可以包括更少的和/或附加的框,或者框可以按与所示顺序不同的顺序执行。

在框702处,指令扬声器发送测试信号。例如,测试信号可以是最大长度序列。可以指令扬声器通过位置估计引擎116经由有线或无线连接发送测试信号。作为输出的测试信号的结果,麦克风阵列114中的麦克风可以各自生成音频信号。音频信号可以记录在存储设备(未示出)上。

在框704处,使用第一技术基于从麦克风阵列114中的第一麦克风记录的第一音频信号和从麦克风阵列114中的第二麦克风记录的第二音频信号来确定第一角度。第一技术可以是用于估计扬声器位置的任何技术。例如,第一技术可以是本文所述的gcc-phat技术。

在框706处,使用第二技术基于第一音频信号和第二音频信号确定第二角度。第二技术可以是除第一种技术之外的用于估计扬声器位置的任何技术。例如,第二技术可以是这里描述的dpc技术。

如图7中所示,顺序执行框704和706,首先执行框704。但是,这并不意味着限制。例如,可以顺序执行框704和706,其中首先执行框706。作为另一个例子,可以同时执行块704和706。

在块708,基于第一角度和第二角度的比较来确定是否存在异常情况。例如,如果第一角度和第二角度相差超过阈值角度值,则可能存在异常情况,例如本文所述的一个或多个异常情况。否则,可能不存在异常情况。

附加实施例

本公开的一个方面提供了一种用于估计多声道环绕声系统中扬声器位置的装置。该装置包括:麦克风阵列,包括第一麦克风和第二麦克风,其中第一麦克风被配置为响应于扬声器输出测试信号而生成第一音频信号,并且其中第二麦克风被配置为响应于扬声器输出该测试信号而生成第二音频信号。该装置还包括耦合到麦克风阵列的位置估计引擎,所述位置估计引擎被配置为:基于第一音频信号和第二音频信号确定到达时间差估计;基于到达时间差估计来确定第一角度;识别从第一音频信号导出的脉冲响应中的第一直接路径分量;识别从第二音频信号导出的脉冲响应中的第二直接路径分量;基于第一直接路径分量和第二直接路径分量确定第二角度;以及基于第一角度和第二角度的比较来确定是否存在异常情况。

前一段落中的装置可以包括以下特征的任何子组合:其中所述位置估计引擎还被配置为:生成第一音频信号的傅里叶变换,以形成第一傅里叶变换;生成第二音频信号的傅里叶变换,以形成第二傅里叶变换;并且基于第一傅里叶变换和第二傅里叶变换确定到达时间差估计;其中所述位置估计引擎还被配置为:基于第一音频信号的不同部分和第二音频信号的不同部分确定其它到达时间差,将该到达时间差与该其它到达时间差进行聚合,并且基于所聚合的到达时间差中的与到达时间差对应的值的出现次数来选择用于确定第一角度的到达时间差;其中所述位置估计引擎还被配置为基于从所述第一音频信号导出的脉冲响应中的最高振幅来识别从所述第一音频信号导出的所述脉冲响应中的第一直接路径分量;其中所述位置估计引擎还被配置为基于从所述第一音频信号导出的所述脉冲响应中的第一振幅识别从所述第一音频信号导出的所述脉冲响应中的第一直接路径分量,所述第一振幅在从所述第一音频信号导出的所述脉冲响应中在最高振幅之前出现并且在所述最高振幅的阈值内;其中所述位置估计引擎还被配置为:选择包括第一直接路径分量的第一时间窗口;选择包含第二直接路径分量的第二时间窗口;使用第一时间窗口中的数据和第二时间窗口中的数据确定互相关;以及使用所确定的互相关确定第二角度;其中所述位置估计引擎还被配置为:将第一角度与第二角度进行比较;以及响应于确定第一角度和第二角度不在阈值角度值内,确定存在异常情况;其中所述位置估计引擎还被配置为响应于确定第一角度和第二角度在阈值角度值内,确定不存在异常情况;其中所述阈值角度值包括0和15度之间的值;其中所述装置还包括:通知生成器,被配置为响应于确定存在异常情况,经由网络向用户设备发送通知;其中所述通知包括扬声器的角度不正确的指示、物体正在阻塞扬声器和麦克风阵列之间的路径的指示、扬声器的极性不正确的指示、或者扬声器的位置不正确或非理想的指示中的一个;其中所述位置估计引擎还被配置为指令扬声器输出测试信号;其中所述装置包括条形音箱、音频/视频(a/v)接收器、中央扬声器或电视机中的一个;以及其中所述多声道环绕声系统被以立体声、2.1、3.1、5.1、5.2、7.1、7.2、11.1、11.2、或22.2扬声器布局之一布置。

术语

根据本公开,文中描述内容之外的许多其他变型将是显而易见的。例如,取决于实施例,本文描述的任何算法的某些动作、事件或功能可以以不同的顺序执行,可以被添加,合并或完全省略(例如,并非所有所描述的动作或事件都是实践算法所必需的)。此外,在某些实施例中,动作或事件可以同时执行,例如,通过多线程处理,中断处理,或多个处理器或处理器核,或在其他并行架构上,而不是顺序执行。另外,通过可以一起工作的不同机器和/或计算系统可执行不同的任务或过程。

结合本文公开的实施例描述的各种说明性逻辑块、模块和算法步骤可以实现为电子硬件、计算机软件或两者的组合。为了清楚地说明硬件和软件的这种可互换性,上文已经在功能方面对各种说明性的组件、块、模块和步骤进行了总体描述。将此功能性实施为硬件还是软件取决于特定应用和施加于整个系统的设计约束。所描述的功能可以针对每个特定应用以变化的方式实现,但是这种实现决策不应被解释为导致脱离本公开的范围。

结合本文公开的实施例描述的各种说明性逻辑块和模块可以由被设计用于执行本文所述的功能的机器实现或执行,该机器例如是包括数字逻辑电路的硬件处理器、通用处理器、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)或其他可编程逻辑器件、离散门或晶体管逻辑,分立硬件组件、或其任何组合。通用处理器可以是微处理器,但是在可选方案中,处理器可以是控制器、微控制器或状态机、它们的组合等。处理器可以包括被配置为处理计算机可执行指令的电路。在另一实施例中,处理器包括执行逻辑操作而不处理计算机可执行指令的fpga或其他可编程设备。处理器还可以实现为计算设备的组合,例如dsp和微处理器的组合,多个微处理器,结合dsp内核的一个或多个微处理器,或任何其他这样的配置。计算环境可以包括任何类型的计算机系统,举例而言,包括但不限于基于微处理器的计算机系统,主机计算机,数字信号处理器,便携式计算设备,设备控制器,或设施内的计算引擎。

结合本文中所公开的实施例而描述的方法、过程或算法的步骤可直接体现于硬件中、存储于一个或多个存储设备中且由一个或多个处理器执行的软件模块中,或这两者的组合中。软件模块可以驻留在ram存储器、闪存、rom存储器、eprom存储器、eeprom存储器、寄存器、硬盘、可拆卸盘、cd-rom、或本领域已知的任何其他形式的非暂时性计算机可读存储介质、媒介或物理计算机存储器。示例存储介质可以耦合到处理器,使得处理器可以从存储介质读取信息和向存储介质写入信息。在替代方案中,存储介质可以是处理器的组成部分。存储介质可以是易失性的或非易失性的。处理器和存储介质可以驻留在asic中。

除非另外特别说明,或者在所使用的上下文中以其他方式理解,否则本文使用的条件语言,尤其诸如“可以”,“可能”,“可”,“例如”等,通常旨在传达某些实施例包括某些特征,元件和/或状态,而其他实施例不包括。因此,这种条件语言通常不旨在暗示一个或多个实施例以任何方式需要特征,元素和/或状态,或者一个或多个实施例必须包括如下逻辑,该逻辑用于在有或没有作者输入或提示的情况下决定这些特征、元素和/或状态被包括在任何特定实施例中或将在任何特定实施例中执行。术语“包括”,“包含”,“具有”等是同义的并且以开放式方式包含性地使用,并且不排除其他元件、特征、动作、操作等。此外,术语“或”在其包含性意义上使用(而不是在其排他意义上),因此当例如被使用以连接元素列表时,术语“或”表示列表中的一个、一些或全部元素。此外,除了具有其普通含义之外,这里使用的术语“每个”可以表示应用术语“每个”的一组元素的任何子集。

除非另外特别说明,否则诸如短语“x,y和z中的至少一个”之类的析取语言应结合上下文被理解为通常用于传达项目、术语等可以是x,y、或z,或其组合。因此,这种联合语言通常不旨在暗示某些实施例需要至少一个x,至少一个y和至少一个z,每个均存在。

除非另有明确说明,否则诸如“一个”或“一”的冠词通常应被解释为包括一个或多个所描述的项目。因此,诸如“被配置为…的设备”的短语预期包括一个或多个所述设备。这样的一个或多个所述设备也可以共同配置为执行所述的叙述。例如,“配置成执行叙述a、b和c的处理器”可以包括被配置为执行叙述a的第一处理器,其与被配置为执行叙述b和c的第二处理器一起工作。

虽然以上详细描述已经示出、描述并指出了应用于各种实施例的新颖特征,但是应当理解,可以在不背离本公开的精神的情况下进行所示的设备或算法的形式和细节中的各种省略、替换和改变。如将认识到的,本文描述的本发明的某些实施例可以体现为不提供本文所述的所有特征和益处的形式,因为一些特征可以与其他特征分开使用或实践。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1