用于语音信号的组合频域和时域音高提取的系统和方法

文档序号:2834558阅读:776来源:国知局

专利名称::用于语音信号的组合频域和时域音高提取的系统和方法
技术领域
:本发明一般涉及语音处理系统例如语音编码和语音识别系统的领域,特别涉及用于窄带宽通信和无线通信的分布式语音识别系统。
背景技术
:随着移动电话和无线通信设备的出现,无线服务产业已经发展成数十亿美元的产业。无线服务提供者(WSP)的大量收入来自订购。这样,WSP运营成功网络的能力取决于在具有有限带宽的网络上向订户提供的服务的质量。为此,WSP不断地寻找减少在网络上传送的信息的数量同时向订户保持高服务质量的方法。近来,语音识别在无线服务产业内获得了成功。语音识别用于各种应用和服务。例如,无线服务订户可被提供快速拨号特性,由此订户将呼叫接收者的姓名说入无线设备。使用语音识别来识别接收者的姓名,并且在订户和接收者之间发起呼叫。在另一个例子中,主叫者信息(411)可以利用语音识别来识别订户试图向其发出呼叫的接收者的姓名。随着语音识别在无线领域(wirelesscommunity)内获得了接受,分布式语音识别(DSR)已经作为新兴技术而出现。DSR是指语音识别系统的特征提取和模式识别部分是分布式的框架。也就是,在两个不同的位置由两个不同的处理单元执行语音识别系统的特征提取和模式识别部分。具体地说,在前端即在无线设备上执行特征提取处理,而在后端即由无线服务提供者系统执行模式识别处理。DSR使得无线设备能够处理较复杂的语音识别任务,例如采用口述航班信息的自动飞机预订或者具有类似特性的经纪业交易。欧洲电信标准协会(ETSI)颁布了一组用于DSR的标准。ETSIDSR标准ES201108(2000年4月)和ES202050(2002年7月)定义了前端的特征提取和压缩算法。然而,这些标准没有加入后端的语音重构,这在一些应用中可能是重要的。结果,新工作项WI-030和WI-034已经由ETSI发布,以扩展上述标准(分别地,ES201108和ES202050)以便包括后端的语音重构以及声调语言识别。在当前DSR标准中,被提取、压缩且传送到后端的特征是13个梅儿(Mel)频率倒谱系数(MFCC)C0-C12以及帧能量的对数log-E。每10毫秒或者每秒100次更新这些特征。在扩展标准的提议(即,上述工作项)中,除了MFCC和log-E之外,还规定针对每帧获得并传送音高(pitch)和类(或浊音化(voicing))信息。然而,音高信息提取方法仍然被定义在对当前DSR标准的扩展中。各种技术已被用于采用时域方法或频域方法的音高估计。众所周知,表示较短帧内的浊音的语音信号可以由周期信号近似。该周期性以周期循环时长(音高周期)T或者被称作基频F0的其倒数为特征。清音以非周期语音信号表示。在标准声码器例如LPC-10声码器和MELP(混合激励线性预测)声码器中,通常采用时域方法进行音高提取。用于时域音高估计的常用方法也使用相关型方案,其搜索最大化以时间t为中心的信号段与以时间t-T为中心的信号段之间的互相关的音高周期T。采用时域方法的音高估计的成功性取决于所涉及的复杂性和背景噪声条件而变化。一般而言,这样的时域方法由于在给定时间窗口内包含很多音高周期而往往对于高音高声音较好。众所周知,无限周期信号的傅立叶频谱是位于基频倍数处的脉冲(谐波、线)序列。因此,频域音高估计典型地基于分析频谱峰值的位置和幅度。用于基频搜索(即,用于音高估计)的标准是基频值与频谱峰值之间的高度兼容性。一般而言,频域方法由于在分析带宽内典型地存在大量谐波而往往对于估计低音高频率声音较好。由于频域方法分析频谱峰值而非整个频谱,因此仅仅部分使用驻留在语音信号中的信息来估计语音样本的基频。频域方法的优点和缺点都起因于这一事实。其优点是对真实语音数据与精确周期模型的偏差的潜在容忍性、噪声鲁棒性以及在计算复杂性减轻方面的相对有效性。然而,该搜索标准由于仅仅测试部分频谱信息而不能被视作足够的条件。由于公知的用于音高提取的频域方法典型地仅仅使用有关频谱中的谐波峰值的信息,因此单独使用这些公知的频域方法将导致遭受对于DSR应用是不可接受的准确性和误差的音高估计。
发明内容简要地,根据本发明的优选实施例,公开了一种用于提取与音频信号相关联的音高信息的系统、方法和计算机可读介质。根据本发明的优选实施例,频域和时域方法的组合用来捕获音频信号帧,并且准确地提取每一个音频信号帧的音高信息,同时保持针对无线设备如蜂窝电话或双向无线电设备的低处理复杂性。本发明的优选实施例被实施在分布式语音识别系统中。另外,优选实施例可以被实施在利用与语音音频信号相关的语音编码的任何信息处理系统中。在本发明的实施例中,音高提取器提取由设备或系统正在处理的音频信号的音高信息。例如,该设备或系统包括用于接收音频信号的麦克风。音高提取器提取与所接收的音频信号对应的音高信息。本发明的优选实施例是有利的,因为它们用来改善处理性能同时准确地提取语音信号的音高信息,由此提高通信质量。改善的处理性能还将延长实现本发明优选实施例的电池供电设备的电池寿命。与下面详细描述一起包括在本说明书中且形成其一部分的附图用来进一步阐述根据本发明的各个实施例以及说明其各种原理和优点,其中相同的附图标记贯穿不同的视图引用相同或在功能上类似的单元。图1是示出根据本发明优选实施例的适于分布式语音识别的连网系统的方框图。图2是根据本发明优选实施例的适于分布式语音识别的无线通信系统的详细方框图。图3是示出根据本发明优选实施例的用于在无线通信系统中操作的无线设备的方框图。图4是示出根据本发明优选实施例的适于分布式语音识别前端的无线设备的各组件的方框图。图5是示出根据本发明优选实施例的音高提取处理的功能方框图。图6、7和8是示出根据本发明优选实施例的音高提取处理的各部分的操作流程图。图9和10是示出根据本发明优选实施例的时域信号分析处理的时间线-信号能量图。图11是适于实现本发明优选实施例的计算机系统的方框图。具体实施例方式根据需要,这里公开了本发明的详细实施例。然而,应当理解,所公开的实施例对于本发明而言仅仅是示例性的,本发明可以采用各种形式来实施。因此,这里公开的特定结构和功能细节不应当被解释为限制性的,而是仅被解释为权利要求的基础以及用于教导本领域的技术人员以实际上任何适当的具体结构以各种方式采用本发明的代表性基础。此外,这里使用的术语和短语不旨在是限制性的;而是提供对本发明的可理解描述。这里所使用的术语“a”或“an”被定义为一个或多于一个。这里所使用的术语“plurality(多个)”被定义为两个或多于两个。这里所使用的术语“another(另一个)”被定义为至少第二个或更多个。这里所使用的术语“including(包括)”和/或“having(具有)”被定义为comprising(包括)(即,开放式语言)。这里使用的术语“耦接”被定义为连接,但是不一定是直接的并且不一定是机械的。这里所使用的术语“程序”、“软件应用”等被定义为被设计成在计算机系统上执行的指令序列。程序、计算机程序或软件应用可以包括子例程、函数、过程、对象方法、对象实现、可执行应用、小应用程序、小服务程序、源代码、目标代码、共享库/动态装载库和/或被设计成在计算机上执行的其它指令序列。根据优选实施例,如下所述,本发明通过提出一种有效地组合频域和时域技术的优点的低复杂性、准确且鲁棒的音高估计方法,有利地克服了现有技术的问题。根据本发明优选实施例而利用的频域和时域方法彼此互补并且提供准确的结果。例如,频域方法由于在所分析的带宽内存在大量谐波峰值而往往对于低音高声音执行得较好,而时域方法由于在特定时间窗口内存在大量音高循环而往往对于高音高声音执行得较好。如下面更详细描述的那样,使用频域和时域音高估计方法的组合来分析语音音频信号将导致总体上更准确的对语音音频信号的音高的估计,同时保持音高提取处理的较低处理复杂性。重要的是,音高提取方法是准确的,并且具有抗背景噪声的鲁棒性以及低复杂性。降低音高提取操作方法的复杂性对于减小前端设备例如无线设备上的处理开销尤其重要,其中该前端设备在处理能力、可用存储器和其它设备资源、以及来自小型便携式电源例如电池的可用工作功率方面可能受到严重限制。处理器所需的处理开销量越小,例如从语音信号提取音高信息,则无线设备的电源例如电池中的电能就节约得越多。用户不断地寻求无线设备的较长电池寿命。通过延长无线设备的电池寿命,它向用户增加了优点和益处,因此提高了该产品在市场上的商业生命力。一般地,本发明的优选实施例通过利用频域和时域音高估计方法的组合来处理以帧采样的语音信号,从而确定每个语音信号样本的音高估计值,由此提取每个语音信号样本的音高信息。在扩展DSR标准的提议中,可以容易地获得输入语音信号的频谱信息(短时傅立叶变换形式的频域信息),以便由音高估计方法使用。因此,根据本发明的优选实施例,频域音高估计方法利用可用的频谱信息。下面讨论用于音高估计的优选方法的概述,随后是新颖系统以及全新且新颖的音高估计方法的更详细描述。使用在DSR前端处已经可用的频谱信息(采取每个语音帧的短时傅立叶变换的形式),随同关联的频谱得分一起使用频域方法来选择少量的音高候选值,其中该频谱得分是音高频率候选值与每个语音帧的短时傅立叶变换中的频谱峰值的兼容性的量度。对于每一个音高候选值,计算对应的时滞,并且采用时域相关方法计算归一化的相关分值,其中优选地使用经过低通滤波、下采样的语音信号,以便对于音高估计时域相关方法保持处理复杂性低。然后,由逻辑单元处理频谱得分、相关得分以及先前音高估计值的历史,以选择最佳候选值作为当前帧的音高估计值。在描述了用于实现本发明的可选实施例的示例性系统之后,下面讨论将详细描述根据本发明优选实施例的特定音高提取方法。图1是示出根据本发明优选实施例的用于分布式语音识别(DSR)的网络的方框图。图1示出了在网络104上工作的网络服务器或无线服务提供者102,其中网络104连接服务器/无线服务提供者102与客户端106和108。在本发明的一个实施例中,图1表示网络计算机系统,其包括服务器102、网络104以及客户端计算机106到108。在第一实施例中,网络104是电路交换网络,例如公共服务电话网络(PSTN)。可选地,网络104是分组交换网络。分组交换网络是广域网(WAN),例如全球因特网、专用WAN、局域网(LAN)、电信网络或者上述网络的任何组合。在另一个可选方案中,网络104是有线网络、无线网络、广播网络或者点到点网络。在第一实施例中,服务器102和计算机客户端106和108包括一个或多个个人计算机(PC)(例如,运行MicrosoftWindows95/98/2000/ME/CE/NT/XP操作系统的IBM或兼容PC工作站、运行MacOS操作系统的Macintosh计算机、运行LINUX操作系统的PC等等)或者任何其它计算机处理设备。可选地,服务器102以及计算机客户端106和108包括一个或多个服务器系统(例如,运行SunOS或AIX操作系统的SUNUltra工作站、运行AIX操作系统的IBMRS/6000工作站和服务器、或者运行LINUX操作系统的服务器)。在本发明的另一个实施例中,图1表示无线通信系统,其包括无线服务提供者102、无线网络104和无线设备106到108。无线服务提供者102是第一代模拟移动电话服务、第二代数字移动电话服务或者第三代支持因特网的移动电话服务。在该示例性实施例中,无线网络104是移动电话无线网络、移动文本消息传递设备网络、寻呼机网络等。此外,图1的无线网络104的通信标准是码分多址(CDMA)、时分多址(TDMA)、全球移动通信系统(GSM)、通用分组无线服务(GPRS)、频分多址(FDMA)等。无线网络104支持任意数目的无线设备106到108,其是移动电话、文本消息传递设备、手持计算机、寻呼机、传呼机等。在该示例性实施例中,无线服务提供者102包括服务器,其包括一个或多个个人计算机(PC)(例如,运行MicrosoftWindows95/98/2000/ME/CE/NT/XP操作系统的IBM或兼容PC作站、运行MacOS操作系统的Macintosh计算机、运行LINUX操作系统的PC等等)或者任何其它计算机处理设备。在本发明的另一个实施例中,无线服务提供者102的服务器是一个或多个服务器系统(例如,运行SunOS或AIX操作系统的SUNUltra工作站、运行AIX操作系统的IBMRS/6000工作站和服务器、或者运行LINUX操作系统的服务器)。如上所述,DSR是指语音识别系统的特征提取和模式识别部分是分布式的框架。也就是,在两个不同的位置由两个不同的处理单元执行语音识别系统的特征提取和模式识别部分。具体地说,由前端例如无线设备106和108执行特征提取处理,而由后端例如无线服务提供者102的服务器执行模式识别处理。如图1所示,特征提取处理器107位于前端无线设备106中,而模式识别处理器103位于无线服务提供者服务器102中。特征提取处理器107从语音信号提取特征信息,例如提取音高信息,然后在网络104上将所提取的信息传达到模式识别处理器103。下面将更详细地描述由根据本发明优选实施例的前端无线设备106上的特征提取处理器107执行的特征提取处理。图2是根据本发明示例性实施例的用于DSR的无线通信系统的详细方框图。图2是上面参照图1描述的无线通信系统的更详细方框图。图2的无线通信系统包括耦接到基站202、203和204的系统控制器201。系统控制器201以对于本领域的普通技术人员是公知的方式控制整个系统通信。另外,图2的无线通信系统通过电话接口206与外部电话网络接口。基站202、203和204各自支持包含订户单元或收发器(即无线设备)106和108(参见图1)的地理覆盖区域的一部分。无线设备106和108使用诸如CDMA、FDMA、CDMA、GPRS和GSM的通信协议与基站202、203和204接口。在图2所示的示例性系统中,并且参照图1,无线设备106包括特征提取处理器107,并且提供DSR的前端,而基站202包括模式识别处理器103,其在维护与无线设备106的无线通信和接口的同时提供DSR的后端。还应当注意,在该示例性系统中,基站202、203和204的每一个包括模式识别处理器103,其在维护与前端无线设备106的无线通信和接口的同时向前端无线设备106提供DSR的后端。对于本领域的普通技术人员是显而易见的,DSR后端可以位于整个通信系统中的另一个点。例如,控制器201(参见图2)可以包括DSR后端,其为无线设备106、108处理模式识别,与基站202、203和204通信。可选地,DSR后端可以跨越可通信地耦接到控制器201的网络,例如跨越广域网如因特网或者例如经由电话接口206跨越公共交换电话网络(PSTN)而位于远程服务器处。例如,DSR后端可以位于提供航班预订服务的远程服务器处。例如,无线设备106的用户可以能够将语音命令和查询传达到远程航班预订服务器。本领域的普通技术人员应当理解,任何远程应用服务器可以受益于利用本发明优选实施例的分布式语音识别系统。图2的无线通信系统的地理覆盖区域被划分成多个覆盖区域或小区,其各自由基站202、203和204(这里也被称作小区服务器)服务。在无线通信系统内操作的无线设备选择特定小区服务器作为其用于系统内的接收和发射操作的主要接口。例如,无线设备106具有小区服务器202作为其主要小区服务器,并且无线设备108具有小区服务器204作为其主要小区服务器。优选地,无线设备选择提供到无线通信系统中的最佳通信接口的小区服务器。通常,这将取决于无线设备与特定小区服务器之间的通信信号质量。当无线设备在无线通信系统的地理覆盖区域内的不同地理位置或小区之间移动时,可能需要越区切换或切换到另一个小区服务器,然后该小区服务器将用作主要小区服务器。无线设备监测来自服务相邻小区的基站的通信信号,以确定最适当的新服务器,以便进行越区切换。除了监测来自相邻小区服务器的发射信号的质量之外,根据本例,无线设备还监测与发射信号相关联的发射色码(colorcode)信息,以便快速地识别哪个相邻小区服务器是发射信号源。图3是示出根据本发明优选实施例的用于无线通信系统的无线设备的方框图。图3是上面参照图1和2描述的无线设备的更详细方框图。图3示出了如图1所示的无线设备106。在本发明的一个实施例中,无线设备106包括能够在诸如CDMA、FDMA、CDMA、GPRS或GSM的通信协议下通过通信信道接收和发射射频信号的双向无线电设备。无线设备106在控制器302的控制下操作,其中控制器302在接收和发射模式之间切换无线设备106。在接收模式中,控制器302通过发射/接收开关314将天线316耦接到接收器304。接收器304解码所接收的信号,并且将这些解码信号提供给控制器302。在发射模式中,控制器302通过开关314将天线316耦接到发射器312。控制器302根据存储在存储器310中的程序指令来操作发射器和接收器。所存储的指令包括相邻小区测量调度(scheduling)算法。根据本例,存储器310包括闪存、其它非易失性存储器、随机存取存储器(RAM)、动态随机存取存储器(DRAM)等。定时器模块311向控制器302提供定时信息,以跟踪(keeptrackof)定时事件。此外,控制器302可以利用来自定时器模块311的时间信息来跟踪对相邻小区服务器发射的调度和所发射的色码信息。当调度相邻小区测量时,接收器304在控制器302的控制下监测相邻小区服务器,并且接收“接收信号质量指示符”(RSQI)。RSQI电路308生成RSQI信号,其表示由每个所监测的小区服务器发射的信号的信号质量。每个RSQI信号由模拟到数字转换器306转换成数字信息,并且作为输入提供给控制器302。当需要越区切换时,使用色码信息和关联的接收信号质量指示符,无线设备106确定最适当的相邻小区服务器以用作主要小区服务器。图3所示的处理器320执行下面更详细描述的各种功能,例如归因于分布式语音识别的功能。根据本例,操作各种DSR功能的处理器320对应于图1所示的特征提取处理器107。在本发明的可选实施例中,图3所示的处理器320包括用于执行上述功能和任务的单个处理器或者多于一个处理器。下面将更详细地讨论根据本发明优选实施例的图1的特征提取处理器107的有利结构和功能。图4是示出无线设备106的各组件的方框图,其中无线设备106用来提供DSR的前端,而后端支持来自无线服务提供者服务器102。将参照图1、2和3来讨论图4。应当理解,在本例中,以来自存储器310的功能组件操作的处理器320实现DSR前端的功能和特征。例如,与处理器320可通信地耦接的特征提取处理器107从例如当用户向麦克风404提供语音音频402时通过麦克风404接收的语音信号中提取音高信息。如图3所示,处理器320还可通信地耦接到无线设备106的发射器312,并且用来将所提取的音高信息无线从前端特征提取处理器107传达到无线网络104中,以便由服务器102和提供DSR后端的模式识别处理器103接收。根据本例,无线设备106包括麦克风404,其用于从设备106的用户接收音频402如语音音频。麦克风404接收音频402,然后将语音信号耦接到处理器320。在由处理器320执行的处理中,特征提取处理器107从语音信号中提取音高信息。将所提取的音高信息编码在至少一个码字中,其中所述至少一个码字包括在信息包中。然后,通过网络104由发射器312将该包发射到包括模式识别处理器103的无线服务提供者服务器102。下面将更详细地描述根据本发明优选实施例的用于提取音高信息的有利功能组件和处理。图5是示出根据本发明优选实施例的由特征提取处理器107执行的音高提取处理的功能方框图。参照图1、2、3和4将更好地理解关于图5的讨论。现在参考图5,其是示出根据本发明的优选实施例而操作的音高估计系统的简化功能方框图。例如,图1的特征提取处理器107包括如图5所示的音高提取系统。图5的音高提取器包括成帧器502、短时傅立叶变换(STFT)电路504、频域音高候选值生成器(FDPCG)506、再采样器508、相关电路510、音高单元转换器512、逻辑单元514以及延迟单元516。系统输入是数字化的语音信号。系统输出是与均匀间隔的时刻或帧相关联的音高值序列(音高轮廓)。一个音高值表示对应时刻附近的语音信号段的周期性。诸如零的保留音高值表示信号是非周期的清音语音段。在一些优选实施例中,例如,在ETSIDSR标准扩展的提议中,音高估计只是用于语音编码、识别或其它语音处理需要的更一般系统的子系统。在这样的实施例中,成帧器502和/或STFT电路504可以是父系统而非音高估计子系统的功能块。对应地,在音高估计子系统之外产生它们的输出,并且将这些输出馈送到该音高估计子系统中。成帧器502将语音信号划分成以预定义的偏移量如10毫秒相对偏移的、预定义时长如25毫秒的帧。每个帧被并行传递到STFT电路504和再采样器508中,并且控制流程如图5所示分支。以该功能方框图的上分支开始,在STFT电路504内,对帧施加短时傅立叶变换,包括乘以窗口函数例如汉明窗口,并且对加窗的帧进行快速傅立叶变换(FFT)。由STFT电路504获得的帧频谱被进一步传递到FDPCG506,FDPCG506执行基于频谱峰值的音高候选值确定。FDPCG506可以采用任何公知的频域音高估计方法,例如在2000年7月14日提交的美国专利申请No.09/617,582中描述的频域音高估计方法,在此将其全文引作参考。这些方法中的一些使用从一个或多个先前帧估计的音高值。对应地,根据一个或多个先前帧从逻辑单元514(下面对其进行描述)获得并且存储在延迟单元516中的整个音高估计系统的输出被馈送到FDPCG506中。所选频域方法的操作模式被修改成根据该示例性实施例,一旦确定了音高候选值,也就是,在进行最佳候选值的最终选择之前,就终止该处理。这样,FDPCG506输出多个音高候选值。在ETSIDSR标准扩展的提议中,由FDPCG506产生不多于六个音高候选值。然而,对于本领域的普通技术人员应当是显而易见的,任何数目的音高候选值可以同样地适于本发明的可选实施例。与每个音高候选值相关联的信息包括归一化的基频F0值(1除以以样本表达的音高周期)以及频谱得分SS,其中频谱得分SS是该基频与包含在频谱中的频谱峰值的兼容性的量度。返回到流程分支点。每个帧被馈送到再采样器508中,其中该帧经历具有截止频率Fc的低通滤波(LPF),然后是下采样。在该方法的优选实施例中,组合800Hz低通无限脉冲响应(IIR)第6阶巴式(Butterworth)滤波器与第1阶IIR低频加重滤波器(emphasisfilter)。将该组合的滤波器施加到帧的最后FS个样本,其中FS是相对帧偏移,因为只有这些样本才是未出现在先前帧中的新样本。再采样器508维护历史缓冲器,其中存储了从先前帧产生的LH个滤波样本。LH被定义为LH=2*MaxPitch-FS,其中,预定义数MaxPitch是音高搜索范围的上限。滤波信号的FS个新样本被附加到历史缓冲器的内容,从而产生2*MaxPitch样本长度的扩展滤波帧。然后,对扩展滤波帧进行下采样,这产生下采样扩展帧。下采样因数DSF优选地被选成略微低于由下式给出的最大理论合理值DSF=0.5*Fs/Fc其中,Fs是原始语音信号的采样频率,以便避免由于非理想低通滤波而产生的混叠效应。这样,在该方法的优选实施例中,在Fs值分别是8000Hz、11000Hz和16000Hz的情况下,使用4、5和8的DSF值。(分别与5、6.875和10的理论值相比较)。由再采样器508产生的下采样扩展帧被传递到相关电路510。相关电路510的任务是为由FDPCG506生成的每个音高候选值计算基于相关的得分。相应地,由音高单元转换器512根据下式将与由FDPCG506产生的音高候选值相关联的基频值{F0i}转换成对应的下采样滞后值{Ti}Ti=1/(F0i*DSF)并且将其馈送到相关电路510中。对于每个音高候选值,相关电路510产生相关得分值CS。下面参照图7更详细地描述相关电路510的优选操作模式。最后,将音高候选值列表馈送到逻辑单元514中。与每个候选值相关联的信息包括a)基频值F0;b)频谱得分SS;以及c)相关得分CS。逻辑单元优选地在内部维护关于从一个或多个先前帧获得的音高估计值的历史信息。使用所有上述信息,逻辑单元514从传到其中的多个音高候选值中选择音高估计值,或者指示该帧为清音。在选择音高估计值时,逻辑单元514优先选择具有高(即最佳)相关和频谱得分、高基频(短音高循环周期)值和与从先前帧获得的音高估计值的基频值接近(即,最佳匹配)的基频值的候选值。根据本讨论对于本领域的普通技术人员是显而易见的,可以使用实现这类折衷的任何逻辑方案。图6是示出在该方法的优选实施例中实现的逻辑单元514的操作的流程图。在步骤602,按照候选值的F0值的降序对候选值进行排序。然后,在步骤604,顺序地扫描候选值,直到找到了类1的候选值,或者测试了所有候选值为止。如果与候选值相关联的CS和SS值满足下面条件,则候选值被定义为类1(CS>C1并且SS>S1)或者(SS>S11并且SS+CS>CS1)(类1条件)其中,C1=0.79,S1=0.78,S11=0.68以及CS1=1.6。在步骤606,流程发生分支。如果找到类1候选值,则选择它作为优选候选值,并且控制传到步骤608,从而执行下面描述的“查找附近最佳者(FindBestinVicinity)”过程。检查优选候选值之后的候选值当中的那些候选值(thosecandidatesamongtheonesfollowingthepreferredcandidate),以确定哪些候选值在F0上接近于优选候选值。如果满足下列条件,则两个值F01和F02被定义为彼此接近(F01<1.2*F02并且F02<1.2*F01)(接近条件)在接近的候选值当中确定多个较佳候选值。较佳候选值必须分别具有高于优选候选值的SS和CS值。如果存在至少一个较佳候选值,则在这些较佳候选值当中确定最佳候选值。最佳候选值的特征在于没有其它较佳候选值分别具有高于最佳候选值的SS和CS值。将最佳候选值选择为优选候选值来代替前面候选值。如果没有找到较佳候选值,则优选候选值保持不变。在步骤610,逐一地扫描优选候选值之后的候选值,直到找到其平均得分显著高于优选候选值的平均得分的类1候选值SScandidate+CScandidate>SSpreferred+CSpreferred+0.18或者扫描了所有候选值为止。如果找到满足上述条件的候选值,则在步骤612,选择它作为优选候选值,并且在步骤614施加“查找附近最佳者”过程。否则,控制直接传到步骤616。在步骤616,将音高估计值设成优选候选值,并且将控制传到在步骤670更新历史,然后在步骤672退出流程图。返回到条件分支步骤606,如果没有找到类1候选值,则在步骤620,检查内部维护的历史信息是否表示“在稳定轨迹上”(OnStableTrack)条件。“连续的音高轨迹”被定义为这样情况下的两个或更多个顺序帧的序列,其中与该序列中的每个帧相关联的音高估计值在F0上接近于与先前帧相关联的音高估计值(按照所规定的上述接近定义)。如果属于连续音高轨迹的最后帧是前一帧或者紧邻在前一帧之前的帧,并且连续音高轨迹至少6帧长,则认为满足“在稳定轨迹上”条件。如果“在稳定轨迹上”条件有效,则控制传到步骤622,否则传到步骤640。在步骤622,将参考基频值F0ref设成与属于稳定轨迹的最后帧相关联的F0。然后,在步骤624,顺序地扫描候选值,直到找到类2的候选值,或者测试了所有候选值为止。如果与候选值相关联的F0值以及CS和SS得分满足下面条件,则候选值被定义为类2(CS>C2并且SS>S2)并且(F0和F0ref彼此接近)(类2条件)其中,C2=0.7,S2=0.7。如果在步骤626没有找到类2候选值,则在步骤628将音高估计值设成表示清音帧。否则,在步骤630选择类2候选值作为优选候选值,并且施加“查找附近最佳者”过程。然后,在步骤632,将音高估计值设成优选候选值。在音高估计值设置步骤628或632的任一个之后,控制传到更新历史步骤670,然后在步骤672退出。返回到最后条件分支步骤620,如果不满足“在稳定轨迹上”条件,则控制传到步骤640,其中测试连续音高条件。如果前一帧属于至少2帧长的连续音高轨迹,则认为满足该条件。如果满足连续音高条件,则在步骤642,将F0ref参考值设成对前一帧估计的值,并且在步骤644执行类2候选值搜索。如果找到类2候选值,则在步骤646选择它作为优选候选值,并且在步骤648施加“查找附近最佳者”过程,并且在步骤650将音高估计值设成优选候选值,随后是在步骤670更新历史。否则,如果步骤640的连续音高条件测试失败,则控制流到步骤660。在步骤660,顺序地扫描候选值,直到找到类3的候选值,或者测试了所有候选值为止。如果与候选值得分相关联的CS和SS得分满足下面条件,则候选值被定义为类3(CS>C3或者SS>S3)(类3条件)其中C3=0.85,S3=0.82。如果在步骤662没有找到类3候选值,则在步骤668将音高估计值设成表示清音帧。否则,在步骤664选择类3候选值作为优选候选值,并且施加“查找附近最佳者”过程。然后,在步骤666,将音高估计值设成优选候选值。在音高估计值设置步骤668或666的任一个之后,控制传到在步骤670更新历史。在步骤670,将与前一帧相关联的音高估计值设成新的音高估计值,并且相应地更新所有历史信息。现在将描述相关电路510的操作(参见图5)。相关电路在输入端获得·下采样扩展帧s(n),n=1、2、...、LDEF,其中LDEF=floor(2*MaxPitch/DSF)是除以下采样因数并且经过向下取整舍入的滤波扩展帧长度;·对应于音高候选值的(一般而言非整数)滞后值的列表{Ti}。相关电路510为对应于滞后值的音高候选值产生相关值(相关得分CS)的列表。使用帧样本的子集来计算每个相关值。子集中的样本数取决于滞后值。该子集通过最大化由其表示的信号的能量来选择。计算非整数滞后Ti的上下两个整数滞后即floor(Ti)和ceil(Ti)的相关值。然后,使用在Y.Medan、E.Yair和D.Chazan,″Superresolutionpitchdeterminationofspeechsignals″,IEEETrans.Acouts.,SpeechandSignalProcessing,vol.39,pp.40-48,Jan.1991.中提出的插值技术来近似Ti滞后的相关。现在参考图7和8,其组成了示出与相关电路510相关的操作的流程图。还参考图9和10。在初始化步骤702,将表示最后整数滞后的内部变量ITlast设成0。在步骤704,以升序对所有输入滞后值进行排序。在步骤706,将当前滞后T设成第一滞后。在插值准备步骤708,计算整数滞后IT=ceil(T)和插值因数α=IT-T。在步骤710,将整数滞后值IT与最后整数滞后ITlast进行比较。如果这些值相同,则控制流到插值步骤720。否则,在步骤711,确定样本子集以便用于相关得分计算。子集由一个(简单子集)或者两个(复合子集)参数对(OS,LS)指定。将整数滞后IT与预定义的窗口长度LW=round((75/DSF)*(SF/8000))进行比较。如果整数滞后IT小于或等于LW,则如参照图9进一步所述确定简单子集。在该步骤仅仅使用下采样扩展帧的LDF=LF/DSF个最后样本,其中LF是以样本为单位的帧时长。也就是,不使用历史。在由下采样扩展帧的最后LDF个样本组成的窗口的开始处定位(LW+IT)个样本长的片断。计算片断能量(平方值之和)。然后,将该片断向下采样扩展帧的末尾移动一个样本,并且计算与移动后的片断相关联的能量。该处理继续直到该片断的最后样本到达下采样扩展帧的末尾为止。选择具有最高能量的片断的位置oo=argmaxLDEF-LDF≤m≤LDEF-LW-ITΣi=0LW+IT-1s(m+i)2]]>子集参数被设为OS=o、LS=LW。否则,如果整数滞后IT大于LW,则如参照图10进一步描述的那样,在步骤716确定子集。在这种情况下要被使用的下采样扩展帧的一部分取决于IT值。具体地说,使用NS=max(LDF,2*IT)个最后样本,从而意味着历史仅仅用于足够长的滞后值。分别在偏移量m1=(LDEF-NS/2-IT)和m2=(LDEF-NS/2)处从帧提取均具有长度IT-1的两个相邻段Seg1和Seg2。每个段被认为是表示周期信号的循环缓冲区。首先,在Seg1段的开头处定位LW个样本长的片段1。类似地,在Seg2的开头处定位LW个样本长的片断2。计算片断能量之和。然后,将片断向右(向段的末尾)(同时)移动一个样本,并且计算与移动后的片断对应的能量之和。即使在一个片断到达其段内的最右位置之后,该处理还继续,并且把偏移操作当作循环操作。也就是,将片断分裂成两个部分,左部分位于段的开头处,并且右部分位于段的末尾处,如图10所示。当片断移动时,其左部分长度减小,并且左部分长度增大。选择最大能量位置oo=argmax0≤m≤IT[Σi=0LW-1Seg1((m+i)modIT)2+Σi=0LW-1Seg2((m+i)modIT)2]]]>存在两种可能性。1)偏移o足够小,具体地说,o<IT-LW。在这种情况下,定义简单子集并且将其参数设成OS=o+m1,LS=LW。2)偏移o大,o>=IT-LW,使得每个子集围着循环缓冲区的边缘环绕。在这种情况下,定义复合子集(OSl=o+ml,LS1=IT-o)和(OS2=m1,LS2=LW-IT+o)。返回到图8,在步骤712,该流程发生分支。如果确定了简单子集,则控制传到步骤713,否则并行执行步骤714和715。三个处理步骤(713、714、715)的每一个实现下述相同的累积(accumulation)过程。该过程的输入是子集参数(OS,LS)。定义三个向量,其中每一个具有长度LS。X={x(i)=s(OS+i-l)},X1={x1(i)=s(OS+i)},Y={y(i)=s(OS+IT+i-l)},其中,i=1,2,...,LS。然后,计算每个向量的平方范数(X,X)、(X1,X1)和(Y,Y)以及每个向量对的内积(X,X1)、(X,Y)和(X1,Y)。另外,对每个向量SX、SX1、SY计算所有坐标(coordinate)之和。在确定了复合子集的情况下,在步骤714,对(OS1,LS1)子集施加累积过程,并且在步骤715,对(OS2,LS2)子集施加该过程。然后,在步骤716,相加由累积过程产生的对应值。在步骤717,如下修改平方范数和内积(X,X)=(X,X)-SX2/LW(Xl,X1)=(X1,X1)-SX12/LW(Y,Y)=(Y,Y)-SY2/LW(X,X1)=(X,X1)-SX.SX1/LW(X,Y)=(X,Y)-SX.SY/LW(X,Xl)=(X,Xl)-SX.SX1/LW存储修改后的平方范数和内积,以便在处理下一个候选滞后值时有可能使用。将整数滞后IT保存为最后整数滞后。在步骤720,如下计算相关得分。D=(X,Y)·((1-α)2·(X,Y)+2·(1-α)·α·(X,X1)+α2·(X1,X1))]]>如果D为正,则CS=((X,Y)+α(X1,Y))/D,否则CS=0。然后,控制流到测试步骤722,其中进行检查以便发现是否处理了最后滞后。如果答案为是,则在步骤724,该处理停止。否则,控制流回到步骤706,其中选择下一个滞后作为当前滞后,以便处理。本发明可以在图1的客户端106、108或者服务器102中采用硬件、软件、或者硬件和软件的组合来实现。如图5、6、7、8、9和10所述,根据本发明优选实施例的系统可以在一个计算机系统中以集中方式实现,或者以不同单元分散在若干互连的计算机系统之间的分布方式实现。任何种类的计算机系统-或者被适配成执行这里描述的方法的其它设备-是适合的。典型的硬件和软件组合可以是具有计算机程序的通用计算机系统,当被装载和执行时,该计算机程序控制计算机系统,使得它执行这里描述的方法。本发明的实施例还可以被嵌入在(客户端106和108以及服务器102内的)计算机程序产品中,该计算机程序产品包括使得能够实现这里描述的方法的所有特性,并且当被装载在计算机系统中时,能够执行这些方法。在本发明中使用的计算机程序装置或计算机程序表示采用任何语言、代码或表示法的一组指令的任何表达,其中该组指令旨在使具有信息处理能力的系统直接地或者在下面操作的任一个或两者之后执行特定功能a)转换成另一种语言、代码或表示法;以及b)以不同的材料形式再现。计算机系统可以包括一个或多个计算机以及至少计算机可读介质等等,从而允许计算机系统从计算机可读介质读取数据、指令、消息或消息包、以及其它计算机可读信息。计算机可读介质可以包括非易失性存储器如ROM、闪存、盘驱动器存储器、CD-ROM和其它永久性存储装置。另外,计算机可读介质可以包括例如易失性存储装置如RAM、缓冲器、高速缓冲存储器和网络电路。此外,计算机可读介质可以包括暂态介质中的计算机可读信息,其中暂态介质例如为网络链路和/或网络接口,包括有线网络或无线网络,其允许计算机系统读取这样的计算机可读信息。图11是有用于实现本发明实施例的计算机系统的方框图。图11的计算机系统是客户端106和108以及服务器102的更详细表示。图11的计算机系统包括一个或多个处理器,例如处理器1004。处理器1004连接到通信基础设施1002(例如,通信总线、跨接条(cross-overbar)或网络)。各种软件实施例是按照该示例性计算机系统来描述的。在阅读本描述之后,如何使用其它计算机系统和/或计算机体系结构来实现本发明对于相关
技术领域
的普通技术人员将会变得清楚。该计算机系统可以包括显示接口1008,其转发来自通信基础设施1002(或者来自未示出的帧缓冲器)的图形、文本和其它数据,以便显示在显示单元1010上。该计算机系统还包括主存储器1006、优选地是随机存取存储器(RAM),并且还可以包括次级存储器1012。次级存储器1012可以包括例如硬盘驱动器1014和/或可移动存储驱动器1016,其中可移动存储驱动器1016代表软盘驱动器、磁带驱动器、光盘驱动器等。可移动存储驱动器1016以对于本领域的普通技术人员是公知的方式从可移动存储单元1018读取或者向其写入。可移动存储单元1018代表软盘、磁带、光盘等,其由可移动存储驱动器1016读取或写入。应当理解,可移动存储单元1018包括其中存储了计算机软件和/或数据的计算机可用存储介质。在可选实施例中,次级存储器1012可以包括用于允许将计算机程序或其它指令装载到计算机系统中的其它类似装置。这些装置可以例如包括可移动存储单元1022以及接口1020。其例子可以包括程序匣(cartridge)和匣接口(如在视频游戏设备中找到的那样)、可移动存储器芯片(例如,EPROM或PROM)和关联插座(socket),以及允许将软件和数据从可移动存储单元1022传输到计算机系统的其它可移动存储单元1022和接口1020。该计算机系统还可以包括通信接口1024。通信接口1024允许在计算机系统和外部设备之间传输软件和数据。通信接口1024的例子可以包括调制解调器、网络接口(如以太网卡)、通信端口、PCMCIA插槽和卡等。通过通信接口1024传输的软件和数据采取可以例如是电子、电磁、光的信号或者能够由通信接口1024接收的其它信号的形式。通过通信路径(即信道)1026将这些信号提供给通信接口1024。该信道1026运载信号,并且可以使用线路或电缆、光纤、电话线、蜂窝电话链路、RF链路和/或其它通信信道来实现。在本文档中,术语“计算机程序介质”、“计算机可用介质”、“机器可读介质”和“计算机可读介质”用来统称诸如主存储器1006和次级存储器1012、可移动存储驱动器1016、安装在硬盘驱动器1014中的硬盘的介质、以及信号。这些计算机程序产品是用于向计算机系统提供软件的装置。计算机可读介质允许计算机系统从计算机可读介质读取数据、指令、消息或消息包以及其它计算机可读信息。计算机可读介质例如可以包括非易失性存储器如软盘、ROM、闪存、盘驱动器存储器、CD-ROM和其它永久性存储装置。例如,它有用于在计算机系统之间传输诸如数据和计算机指令的信息。此外,计算机可读介质可以包括暂态介质中的计算机可读信息,其中暂态介质例如为网络链路和/或网络接口,包括有线网络或无线网络,其允许计算机读取这样的计算机可读信息。计算机程序(也被称作计算机控制逻辑)被存储在主存储器1006和/或次级存储器1012中。还可以通过通信接口1024接收计算机程序。当被执行时,这些计算机程序使得计算机系统能够执行如这里所讨论的本发明的特性。具体地说,当被执行时,这些计算机程序使得处理器1004能够执行计算机系统的特性。从而,这些计算机程序代表计算机系统的控制器。该用于从语音信号提取音高信息的新颖系统和相关方法提供了用于处理例如用于语音识别系统或语音编码系统的音高信息的显著优点。分布式语音识别系统将尤其受益于本发明的新颖系统和音高估计方法。由于分布式语音识别前端设备如便携式无线设备、蜂窝电路或双向无线电设备典型地具有有限的计算资源、有限的处理能力并且由电池供电,因此这些类型的设备将特别受益于如上面讨论的本发明的优选实施例。虽然公开了本发明的特定实施例,但是本领域的普通技术人员应当理解,在不脱离本发明的精神和范围的情况下可以对特定实施例进行改变。因此,本发明的范围不应当局限于这些特定实施例。此外,所附权利要求旨在涵盖本发明的范围内的所有这些应用、变型和实施例。权利要求1.一种方法,包括对语音信号进行采样;将采样语音信号划分成重叠帧;使用频域分析从帧提取第一音高信息;从第一音高信息提供至少一个音高候选值,其中每一个音高候选值与频谱得分相结合,所述至少一个音高候选值中的每一个表示该帧的可能音高估计值;使用时域分析从该帧提取第二音高信息;从第二音高信息提供所述至少一个音高候选值的相关得分;以及选择所述至少一个音高候选值中的一个来表示该帧的音高估计值。2.如权利要求1所述的方法,其中选择包括选择所述至少一个音高候选值中具有频谱得分和相关得分的最佳组合的一个音高候选值,由此指示具有与该帧的音高相匹配的最佳可能性的一个音高候选值。3.如权利要求2所述的方法,其中选择包括计算所述至少一个音高候选值的每一个的可能音高估计值与前一帧的选定音高估计值之间的匹配度,选择所述至少一个音高候选值中具有频谱得分、相关得分和匹配度的最佳组合的一个音高候选值,由此指示具有与该帧的音高相匹配的最佳可能性的一个音高候选值。4.如权利要求1所述的方法,其中所述至少一个音高候选值包括不多于六个音高候选值,其表示该帧的不多于六个的可能音高估计值。5.如权利要求1所述的方法,其中所述至少一个音高候选值的频谱得分表示音高值与在该帧的频谱中找到的频谱峰值的兼容度。6.如权利要求1所述的方法,其中使用时域分析从该帧提取第二音高信息包括将该帧与前一帧组合在一起成为扩展帧;以及通过对扩展帧进行低通滤波和下采样来计算下采样扩展帧。7.如权利要求1所述的方法,其中提供相关得分包括计算下采样扩展帧的两个片断之间的互相关。8.如权利要求7所述的方法,其中所述两个片断具有预定长度,并且彼此相对延迟与所述至少一个音高候选值中的每一个对应的滞后值。9.如权利要求8所述的方法,其中下采样扩展帧内的所述两个片断的位置通过最大化所述片断的总能量来选择。10.如权利要求1所述的方法,还包括选择采样语音信号的多个帧的多个音高估计值;以及对采样语音信号的表示进行编码,该表示包括所述多个音高估计值。11.如权利要求10所述的方法,其中采样语音信号的编码表示用于分布式语音识别系统中。12.一种分布式语音识别系统,包括分布式语音识别前端,用于提取语音信号特征,该分布式语音识别前端包括存储器;处理器,可通信地与该存储器耦接;以及音高提取处理器,可通信地与该存储器和该处理器耦接,用于通过以下操作从语音信号提取音高信息对语音信号进行采样;将采样语音信号划分成重叠帧;使用频域分析从帧提取第一音高信息;从第一音高信息提供至少一个音高候选值,其中每一个音高候选值与频谱得分相结合,所述至少一个音高候选值中的每一个表示该帧的可能音高估计值;使用时域分析从该帧提取第二音高信息;从第二音高信息提供所述至少一个音高候选值的相关得分;以及选择所述至少一个音高候选值中的一个来表示该帧的音高估计值。13.如权利要求12所述的分布式语音识别系统,其中音高提取处理器选择包括选择所述至少一个音高候选值中具有频谱得分和相关得分的最佳组合的一个音高候选值,由此指示具有与该帧的音高相匹配的最佳可能性的一个音高候选值。14.如权利要求13所述的分布式语音识别系统,其中音高提取处理器选择包括计算所述至少一个音高候选值的每一个的可能音高估计值与前一帧的选定音高估计值之间的匹配度,选择所述至少一个音高候选值中具有频谱得分、相关得分和匹配度的最佳组合的一个音高候选值,由此指示具有与该帧的音高相匹配的最佳可能性的一个音高候选值。15.如权利要求12所述的分布式语音识别系统,其中所述至少一个音高候选值包括不多于六个音高候选值,其表示该帧的不多于六个的可能音高估计值。16.如权利要求12所述的分布式语音识别系统,其中所述至少一个音高候选值的频谱得分表示音高值与在该帧的频谱中找到的频谱峰值的兼容度。17.如权利要求12所述的分布式语音识别系统,其中音高提取处理器使用时域分析从该帧提取第二音高信息包括将该帧与前一帧组合在一起成为扩展帧;以及通过对扩展帧进行低通滤波和下采样来计算下采样扩展帧。18.如权利要求12所述的分布式语音识别系统,其中音高提取处理器提供相关得分包括计算下采样扩展帧的两个片断之间的互相关。19.如权利要求18所述的分布式语音识别系统,其中所述两个片断具有预定长度,并且彼此相对延迟与所述至少一个音高候选值中的每一个对应的滞后值。20.如权利要求19所述的分布式语音识别系统,其中下采样扩展帧内的所述两个片断的位置通过最大化所述片断的总能量来选择。21.如权利要求12所述的分布式语音识别系统,其中音高提取处理器还选择采样语音信号的多个帧的多个音高估计值;以及对采样语音信号的表示进行编码,该表示包括所述多个音高估计值。22.一种计算机可读介质,包括用于语音处理系统的计算机指令,这些计算机指令包括用于以下操作的指令对语音信号进行采样;将采样语音信号划分成重叠帧;使用频域分析从帧提取第一音高信息;从第一音高信息提供至少一个音高候选值,其中每一个音高候选值与频谱得分相结合,所述至少一个音高候选值中的每一个表示该帧的可能音高估计值;使用时域分析从该帧提取第二音高信息;从第二音高信息提供所述至少一个音高候选值的相关得分;以及选择所述至少一个音高候选值中的一个来表示该帧的音高估计值。23.如权利要求22所述的计算机可读介质,其中选择包括选择所述至少一个音高候选值中具有频谱得分和相关得分的最佳组合的一个音高候选值,由此指示具有与该帧的音高相匹配的最佳可能性的一个音高候选值。24.如权利要求22所述的计算机可读介质,其中选择包括计算所述至少一个音高候选值的每一个的可能音高估计值与前一帧的选定音高估计值之间的匹配度,选择所述至少一个音高候选值中具有频谱得分、相关得分和匹配度的最佳组合的一个音高候选值,由此指示具有与该帧的音高相匹配的最佳可能性的一个音高候选值。25.如权利要求22所述的计算机可读介质,其中所述至少一个音高候选值的频谱得分表示音高值与在该帧的频谱中找到的频谱峰值的兼容度。26.如权利要求22所述的计算机可读介质,其中使用时域分析从该帧提取第二音高信息包括将该帧与前一帧组合在一起成为扩展帧;以及通过对扩展帧进行低通滤波和下采样来计算下采样扩展帧。27.如权利要求22所述的计算机可读介质,其中提供相关得分包括计算下采样扩展帧的两个片断之间的互相关。28.如权利要求27所述的计算机可读介质,其中所述两个片断具有预定长度,并且彼此相对延迟与所述至少一个音高候选值中的每一个对应的滞后值。29.如权利要求22所述的计算机可读介质,其中这些计算机指令还包括用于以下操作的指令选择采样语音信号的多个帧的多个音高估计值;以及对采样语音信号的表示进行编码,该表示包括所述多个音高估计值。30.如权利要求29所述的计算机可读介质,其中采样语音信号的编码表示用于分布式语音识别系统中。全文摘要本发明公开一种系统、计算机可读介质和方法,用于对语音信号进行采样;将采样语音信号划分成重叠帧;使用频域分析从帧提取第一音高信息;从第一音高信息提供至少一个音高候选值,其中每一个音高候选值与频谱得分相结合,所述至少一个音高候选值中的每一个表示该帧的可能音高估计值;使用时域分析从该帧提取第二音高信息;从第二音高信息提供所述至少一个音高候选值的相关得分;以及选择所述至少一个音高候选值中的一个来表示该帧的音高估计值。该系统、计算机可读介质和方法适于语音编码和分布式语音识别。文档编号G10L11/00GK1826632SQ200480008861公开日2006年8月30日申请日期2004年3月31日优先权日2003年3月31日发明者腾卡斯·V.·拉玛巴德拉恩,亚历山大·索里恩申请人:国际商业机器公司,摩托罗拉公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1