音调跟踪装置和方法

文档序号:2822009阅读:244来源:国知局
专利名称:音调跟踪装置和方法
背景技术
本发明涉及计算机语音系统。具体地说,本发明涉及计算机语音系统内的音调跟踪问题。
当前,计算机正逐步用于完成多种语音功能,包括通过计算机网络传送人类语音,识别人类语音以及根据输入的文本合成语音。为了实现这些功能,计算机必须能够识别人类语音的各种要素,其中一个要素是语音的音调或语音的主调,它是在语音发声期间由讲话人的声带产生的。例如可以在元音音中听到音调,例如“six”内的“ih”音。
人类话音中的音调在语音信号中表现为由不同频率的多个正弦波组合的接近重复的波形。这些接近重复的波形之间的周期确定音调。
为了识别语音信号内的音调,现有技术采用音调跟踪装置。在“ARobust Algorithmfor Pitch Tracking(RAPT)”D.Talkin,Speech CodingandSynthesis,pp.495-518,Elsevier,1995中对音调跟踪进行了综合研究。一种这类音调跟踪装置对被候选语音周期区分的语音信号的两部分进行识别并对这两部分进行比较。如果候选音调周期等于语音信号的实际音调,则这两部分接近相同。通常利用对各部分的多个采样互相进行比较的互相关技术来完成此比较过程。
不幸地是,这种音调跟踪装置有时并不准确。这会导致音调跟踪错误,音调跟踪错误会破坏计算机语音系统的性能。具体地说,音调跟踪错误会导致计算机系统将语音的发音部分错误地识别为不发音部分,或者将语音的不发音部分错误地识别为发音部分,并且可以导致语音系统错误地对语音信号进行分段。
本发明概述在一种在语音信号中跟踪音调的方法中,根据经过语音信号的第一窗口和第二窗口的采样建立第一窗口向量和第二窗口向量。利用测试音调周期将第一窗口和第二窗口分开。第一窗口内的语音信号的能量与第一窗口向量和第二窗口向量的相关合并以产生可预测能量因数。然后,使用可预测能量因数确定测试音调周期的音调得分。部分地根据音调得分,识别音调跟踪部分。
在本发明的其它实施例中,一种音调跟踪方法对语音信号内的第一波形和第二波形进行采样。利用测试音调周期将第一波形的中央与第二波形的中央分开。确定的相关值描述了第一波形与第二波形之间的相似性,确定的音调轮廓因数描述了测试音调周期与先前音调周期之间的相似性。然后,组合相关值和音调轮廓因数,以产生从前面的音调周期到测试音调周期的过渡的音调得分。使用此音调得分识别音调跟踪部分。
本发明的另一个实施例提供一种确定语音信号的区域是否是话音区域的方法。该方法包括采样第一波形和第二波形并确定两个波形之间的相关。然后,确定此第一波形的能量。如果相关和能量均高,则该方法认为此区域为话音区域。
附图的简要说明

图1示出本发明典型环境的平面图;图2示出语音信号的示意图;图3示出说明语句中作为时间函数的音调的示意图;图4示出语音合成系统的方框图;图5-1示出语音信号的示意图;图5-2示出图5-1所示的语音信号被适当降低其音调后的示意图;图5-3示出图5-1所示的语音信号被不适当降低其音调后的示意图;图6示出语音编码器的方框图;图7二维图解说明语音信号的窗口向量;图8示出根据本发明的音调跟踪装置的方框图;图9示出根据本发明的音调跟踪方法的流程图;图10示出产生窗口向量的各采样的语音信号的示意图;
图11示出用于识别语音信号的话音区域和非话音区域的隐含马尔可夫模型的示意图;图12示出根据能量和互相关对话音采样和非话音采样进行组合的示意图;图13示出根据本发明识别话音区域和非话音区域的方法的流程图。
实施例的详细说明图1和有关讨论对实现本发明的适当计算环境进行了一般性、简要说明。尽管不作这种要求,但是本发明至少部分地被描述为可以被个人计算机执行的一般意义的计算机可执行指令,例如程序模块。通常,程序模块包括例程、对象、部件、数据结构等等,它们执行特定任务或实现特定提取数据类型。此外,本技术领域内的其它技术人员会明白在其它计算机系统配置中也可以实施本发明,这些计算机系统配置包括手持设备、多处理器系统、基于多处理器或可编程消费电子产品、网络个人计算机、小型计算机、巨型计算机等等。还可以在分布式计算环境中实施本发明,在分布式计算环境中,由通过通信网络连接的远程处理设备执行任务。在一种分布式计算环境中,程序模块既可以位于本地存储设备也可以位于远程存储设备。
参考图1,实现本发明的典型系统包括传统个人计算机形式的通用计算设备20,通用计算设备20包括处理单元(CPU)21、系统内存22以及系统总线23,系统总线23将包括系统内存22在内的各种系统部件连接到处理单元21。系统总线23可以是包括存储器总线或存储控制器、外围总线以及局部总线在内的几种总线中的任何一种总线,局部总线可以采用任何类型的总线结构。系统内存22包括只读存储器(ROM)24和随机存取存储器(RAM)25。基本输入/输出系统(BIOS)26含有有助于个人计算机20内的各单元之间(例如在启动期间)传送信息的基本程序,例如,在启动期间它被存储到ROM24。个人计算机20进一步包括硬盘驱动器27,用于从硬盘(未示出)读取数据或将数据写入硬盘(未示出);磁盘驱动器28,用于从可装卸磁盘29读取数据或将数据写入可装卸磁盘29;以及光盘驱动器30,用于从诸如CD ROM或其它光介质之类的可装卸光盘31读取数据或将数据写入诸如CD ROM或其它光介质之类的可装卸光盘31。硬盘驱动器27、磁盘驱动器28以及光盘驱动器30分别通过硬盘驱动器接口32、磁盘驱动器接口33以及光盘驱动器接口34连接到系统总线23。这些驱动器以及有关计算机可读介质为个人计算机20提供了计算机可读指令、数据结构、程序模块以及其它数据的非易失性存储。
尽管在此描述的典型环境中使用了硬盘、可装卸磁盘29以及可装卸光盘31,但是本技术领域的其它技术人员应该明白,在此典型操作环境中还可以使用能够存储数据、可以被计算机访问的其它类型的计算机可读介质,例如卡型盒式磁带机、闪速存储卡、数字视盘、伯努利盒式磁盘、随机存取存储器(RAM)、只读存储器(ROM)等等。
可以存储到硬盘、磁盘29、光盘31、ROM24或RAM25的程序模块有许多,它们包括操作系统35、一个或多个应用程序36、其它程序模块37以及其它程序数据38。用户通过本机输入设备(例如键盘40、定位设备42以及麦克风43)将命令和信息输入个人计算机20。其它输入设备(未示出)还有操纵杆、游戏键盘、圆盘式卫星天线、扫描仪等等。这些以及其它输入设备通常通过与系统总线23相连的串行端口接口46连接到处理单元21,但是也可以利用其它接口(例如声卡、并行端口、游戏端口或通用串行总线(USB))将这些以及其它输入设备连接到处理单元21。监视器47或其它类型的显示设备通过诸如视频适配器48的接口也连接到系统总线23。除了监视器47之外,个人计算机通常还包括其它外围输出设备,例如扬声器45和打印机(未示出)。
通过逻辑连接到一个或多个远程计算机(例如远程计算机49),个人计算机20可以在网络环境下运行。远程计算机49可以是另一个个人计算机、手持设备、服务器、路由器、网络个人计算机、对等设备或其它网络节点,它通常包括上述与个人计算机20有关的许多单元或全部单元,但是在图1中仅示出存储设备50。图1中所示的逻辑连接包括局域网(LAN)51和广域网(WAN)52。在办公室内常用的这类网络环境有企业计算机网络(企业网络)和因特网。
当在LAN网络环境下使用时,个人计算机20通过网络接口或适配器53连接到局域网51。当在WAN网络环境下使用时,个人计算机20通常包括调制解调器54或其它用于通过广域网52(例如因特网)建立通信的装置。调制解调器54可以是内置的也可以是外置的,它通过串行端口接口46连接到系统总线23。在网络环境下,可以将与个人计算机20有关的所述程序模块,或其各部分存储到远程存储设备。显然,所示的网络连接属于典型情况,当然在各计算机之间也可以使用其它装置建立通信链路。例如,在网络的一个或多个部分之间可以建立无线通信链路。
图2和图3示出说明人类语音音调特性的示意图。图2示出人类语音信号200的示意图,其纵轴202表示振幅,其横轴204表示时间。语音信号200包括位于两个非发音部分208与210之间的发音部分206。发音部分206包括多个接近重复的波形,例如波形212和214,它们被音调周期216分开。音调周期216的长度确定发音部分206的音调。
图3示出作为说明语句的时间(横轴232)函数的基本音调频率的示意图234。基本音调频率可以被简称为基本频率F0,它等于音调周期的倒数。从示意图234可以清楚地看到音调随时间发生变化。具体地说,在说明语句开始时,基本音调频率升高以强调语句的主题,然后,逐渐降低直到语句结束。音调还可以在在单词内发生变化,在单词的发音部分与非发音部分之间的交界处最明显。
在包括诸如图4所示的语音合成系统240的语音合成系统在内的许多语音系统中均跟踪音调的变化。语音合成系统240包括两部分,即相互合作的训练部分242和合成部分244,以便根据输入的文本产生合成语音。训练部分242采样并存储人类语音模板,合成部分244对人类语音模板进行调节和合并以产生合成语音。当用户对着麦克风讲话时,训练部分242根据麦克风43产生的模拟人类语音信号产生模板。
将麦克风43产生的模拟信号送到模数(A/D)转换器246模数转换器246周期地采样该信号以产生此信号的数字采样。然后,将数字采样送到特征提取部件248和音调跟踪装置250。
通过对数字化的语音信号进行频谱分析,特征提取部件248提取代表数字化输入语音信号的参数。这样会获得代表输入语音信号帧序列的频率分量的系数。进行频谱分析的各种方法在信号处理领域内是众所周知的,它们包括快速傅里叶变换、线性预测编码(LPC)以及对数倒数系数。将获得的频谱系数送到分析引擎252。
另外,还将数字化信号送到音调跟踪装置250,音调跟踪装置250对该信号进行分析以对该信号确定一系列音调标记。所设置的音调标记与数字化信号的音调匹配并在时间上被拆分的总数等于该信号的音调周期。以下将进一步说明根据本发明的音调跟踪装置的运行过程。音调跟踪装置250产生的音调标记被送到分析引擎252。
分析引擎252对存在于输入语音信号内的各语音单元创建声音模型。这些语音单元包括音素、双音素(两个音素)或三音素(三个音素)。为了创建这些模型,分析引擎252将语音信号文本转换为语音单元。将语音信号文本存储到文本存储器254,并利用字典存储器256将语音信号文本划分为其语音单元,字典存储器256内包括文本存储器254内各单词的语音描述。
然后,分析引擎252从模型存储器258内检索各语音单元的初始模型。例如,这种模型包括音素的三态隐含马尔科夫模型。将初始模型与输入语音信号的频谱系数进行比较,并对这些模型进行调节,直到这些模型能够正确表示输入语音信号为止。然后,将这些模型存储到单元存储器260。
由于存储容量有限,所以分析引擎252不能存储存在于输入语音信号内的各例语音单元。相反,分析引擎252选择各语音单元例的子集来表示语音单元的所有情况。
对于存储在单元存储器260内的各语音单元,分析引擎252还存储与在语音存储器262内存储的语音单元有关的语音标记。
合成部分244根据送到自然语言分列器(NLP)266的输入文本264产生语音信号。自然语言分列器266将输入的文本划分为单词和短语并对单词和短语指定标记,标记描述文本中各要素之间的关系。将文本和标记送到字母到声音(LTS)部件268和韵律语音特征引擎270。利用字典256和在准则存储器272内存在的一组字母到声音单元规则,LTS部件268将各单词划分为语音单元,例如音素、双元素或三音素。字母到声音单元规则包括拼写相同但发音不同的单词的发音规则以及将数字转换为文本的转换规则(例如将“1”转换为“壹”)。
将LTS268的输出送到语音串和语音强调部件274,语音串和语音强调部件274产生能够正确强调输入的文本的语音串。然后,将语音串送到韵律语音特征引擎270,韵律语音特征引擎270插入延长记号并确定韵律语音特征参数,韵律语音特征参数指出文本串内的各语音单元的强度、音调以及时长。通常,韵律语音特征引擎270利用存储在韵律语音特征存储单元276内的韵律语音特征模型确定韵律语音特征。然后,将语音串和韵律语音特征参数送到语音合成器278。
通过访问单元存储器260和音调存储器262,语音合成器278检索各语音单元的语音模型和音调标记。然后,语音合成器278对存储的语音单元的音调、强度和持续时间进行转换以使它们与被韵律语音特征引擎270识别的音调、强度和持续时间匹配。这样就产生数字输出语音信号。然后,将数字输出语音信号送到输出引擎280,用于存储或用于转换为模拟输出信号。
将存储单元的音调转换为韵律语音特征引擎270设置的音调的步骤示于图5-1、5-2和5-3。图5-1示出包括波形283、284和285在内的存储的语音单元282的示意图。为了降低语音单元282的音调,语音合成器278根据存储的音调标记对各波形进行分段并延长分段波形之间的时间。这种划分示于图5-2,分段波形286、287和288与图5-1所示的波形283、284和285对应。
如果不能对语音单元正确确定音调标记,则这种分段技术就不能产生低音调。例如,这可以从图5-3中看出,在图5-3中,用于分段语音信号的存储音调标记不能正确地识别音调周期。尤其是,音调标记指示的音调周期对于语音信号来说太长。这会导致在一个分段294内出现多个峰290和292,并且建立的音调高于韵律语音特征引擎270调用的音调。因此,对于语音合成来说,准确的音调跟踪装置至关重要。
为了减少通过信道发送的语音数据总数,还在语音编码中使用了音调跟踪。实质上,通过识别在语音信号的发音部分语音信号包括多个接近重复的波形,语音编码对语音数据进行压缩。语音编码器不是发送各波形各部分的准确数值而是发送一个模板波形的数值。然后,通过参考当即进行的波形,描述各后续波形。图6示出这种语音编码器的一个实例的方框图。
在图6中,语音编码器300接收语音信号302,模数转换器304将语音信号302转换为数字信号。该数字信号通过线性预测编码滤波器(LPC)306,线性预测编码滤波器306将该信号白噪声化以改进音调跟踪。利用LPC系数来描述白噪声化该信号的功能,LPC系数之后还被用于重构此完整信号。将白噪声化信号送到音调跟踪装置308,音调跟踪装置308识别该语音信号的音调。
还将语音信号送到减法单元310,减法单元310将延迟后的语音单元从该语音单元内减去。延迟电路312对语音单元的延迟总量进行控制。延迟电路312对语音信号进行标准延迟,这样当前波形与语音信号内的先前波形一致。为了实现此结果,延迟电路312使用音调跟踪装置308确定的音调,音调跟踪装置308指出在语音信号内的连续波形之间的时间间隔。
在乘法单元314内,延迟波形乘以增益因数“g(n)”,然后将此延迟波形从当前波形中减去。可以这样选择增益因数,以便通过减法单元310获得的差值最小。通过使用负反馈回路316可以实现此要求,负反馈回路316对增益因数进行调节直到该差值变为最小为止。
一旦增益因数变成最小,则利用向量化单元318将减法单元310输出的差值和LPC系数向量化为码字。利用标量化单元319将增益g(n)和音调周期标量化为码字。然后,通过信道发送这些码字。
在图6所示的语音编码器中,如果减法单元310输出的差值最小,则可以改善该编码器的性能。由于这些波形不一致会在波形之间产生较大差值,所以音调跟踪装置308的性能不佳会导致编码性能不佳。因此,准确音调跟踪装置对于有效语音编码过程至关重要。
在现有技术中,利用互相关完成音调跟踪过程,互相关指出当前采样窗口与先前采样窗口之间的相似性程度。互相关值在-1和+1之间。如果两个窗口中的波形在实质上不同,则该互相关接近0。然而,如果两个波形近似,则互相关接近+1。
在这种系统中,对多个不同的音调周期计算互相关。通常,由于窗口中的波形非常近似,所以最接近实际音调周期的测试音调周期将产生最高互相关。对于与实际音调周期不同的测试音调周期,由于在两个采样窗口内的波形互相不一致,所以互相关会低。
不幸地是,现有技术的音调跟踪装置不能始终正确识别音调。例如,在现有技术的互相关系统内,语音信号的不发音部分恰好具有半重复波形,它们会被错误地翻译为提供音调的发音部分。由于不发音区域不为语音信号提供音调,所以这是明显错误的。由于将音调与不发声区域联系在一起,所以现有技术的音调跟踪装置不能对语音信号正确计算音调,并会将不发音部分错误地识别为发音部分。
在对现有技术互相关方法的改进方案中,本发明构建音调跟踪的概率模型。该概率模型对语音信号确定测试音调跟踪P为实际音调跟踪的概率。此确定过程部分地是通过检验窗口向量X的序列实现的,其中P和X被定义为P={P0,P1,...,Pi,...,PM-1}等式1X={x0,x1,...,xi,...,xM-1}等式2其中Pi代表音调跟踪内的第i个音调,xi代表窗口向量序列内的第i个窗口向量,M代表音调跟踪内的音调总数以及窗口向量内的窗口向量总数。
各窗口向量xi被定义为存在于输入语音信号的窗口内的采样集合。利用等式表示为xi={x[t-N/2],...,x[t],...,x[t+N/2-1]}等式3其中N为窗口的大小,t为窗口中央的时间标记,x[t]为时间t时输入信号的采样。
在以下的说明中,等式3定义的窗口向量被称为当前窗口向量xt。据此,先前窗口向量xt-p被定义为xt-p={x[t-p-N/2],...,x[i-p],...,x[t-p+N/2-1]} 等式4其中N为窗口的大小,P为描述当前窗口的中央与先前窗口的中央之间的时间周期的音调周期,t-p为先前窗口的中央。
测试音调跟踪P为给出窗口向量X的序列的实际音调跟踪的概率被表示为f(p|x)。如果对多个测试音调跟踪计算此概率,则可以对这些概率进行互相比较以识别与实际音调跟踪大概相同的音调跟踪。因此,音调跟踪的最大后验(MAP)估计为PMAP=argpmaxf(P|x)等式5利用贝叶斯规则,等式5的概率可以被扩展为 其中f(P)为音调跟踪P出现在任意语音信号内的概率,f(x)为窗口向量序列x的概率,f(P|x)为给出音调跟踪P的窗口序列X序列的概率。由于等式6寻找能使由等式右侧的因数表示的总概率最大的音调跟踪,所以只需要研究作为测试音调跟踪的函数的因数。可以忽略不是音调跟踪函数的因数。由于f(x)不是P的函数,所以等式6简化为PMAP=argpmaxf(P)f(x|P)等式7因此,为了确定最可能的音调跟踪,本发明对各测试音调跟踪确定两个概率。首先,已知测试音调跟踪P,本发明确定窗口向量x的序列出现在语音信号内的概率。其次,本发明确定测试音调跟踪P出现在任意语音信号内的概率。
本发明将给出测试音调跟踪P的窗口向量x的序列的概率近似为一组独立概率的乘积,这组独立概率中的各概率代表特定窗口向量xi将出现在对于该窗口向量给定音调Pi的语音信号内的概率。用等式表示为 其中M为窗口向量序列x内的窗口向量数和音调跟踪P内的音调数。
独立窗口向量xi出现在对该时间窗口给出音调Pi的语音信号内的概率可以通过对语音信号建模来确定。此模型的基础是本发明人注意到根据如下等式当前窗口向量可以被描述为过去窗口向量的函数xt=ρxt-P+et等式9其中xt为当前窗口向量,ρ为预测增益,xt-P为先前窗口向量,et为误差向量。在图7所示的二维向量空间内可以观察到这种关系,其中xt被示为三角形502的斜边500,三角形502的一个股504表示ρxt=P,其另一个股506表示et。斜边500与股504之间的夹角508被表示为θ。
从图7中可以看到,最小预测误差|et|2被定义为|et|2=|xt|2-|xt|2cos2(θ)等式10其中 在等式11中,<xt,xt-P>为xt与xt-P的标量积,它被定义为 其中x[t+n]为在时间t+n时对输入信号的采样,x[t+n-P]为在时间t+n-P时对输入信号的采样,N为窗口的大小。等式11中的|xt|为xt与xt的标量乘积的平方根,|xt-P|为xt-P与xt-P的标量乘积的平方根。用等式表示为 将等式11、12、13和14合并产生 对于音调P,等式15的右侧等于当前窗口向量与先前窗口向量的互相关αt(P)。因此,互相关可以代替等式10中的cos(θ),获得 在根据本发明的实施例中,本发明人对出现最小预测误差|et|2的概率建模为具有标准偏差σ的零平均值高斯随机向量。因此,|et|2的任何一个值的概率由下式给出 通过将各常数表示为一个常数V,可以对等式18进行简化,产生 用上述等式16代替|et|2可以获得 可以采集不是音调函数的因数,并用一个常数K代替此因数,因为这些因数不影响音调的最优化过程。此简化过程产生 正如等式21所描述的那样,具有给定音调周期P的特定预测误差的概率与给出先前窗口向量和音调周期P的当前窗口向量的概率相同。因此,等式21可以被重新写为 其中f(xt|Pt)为给出先前窗口向量和音调周期P的当前窗口向量的概率。
如上所述,根据本发明,存在两个概率,可以将它们合并以识别可能的音调跟踪。第一个概率为给出音调跟踪的窗口向量的概率。通过将等式22与上述等式8合并计算此概率。第二个概率为在语音信号内出现音调跟踪的概率。
通过假定音调周期的先前概率仅依赖于先前帧的音调周期,本发明近似计算在语音信号内出现音调跟踪的概率。因此,音调跟踪的概率变成在音调跟踪内给出先前音调的语音信号内存在的各独立音调的概率的乘积。可以被表示为等式f(P)=f(PT-1|PT-2)f(PT-2|PT-3)…f(P1|P0)f(P0) 等式23概率f(PT-1|PT-2)的一个可能选择是平均值等于先前音调周期的高斯分布。这会导致对下式表示的独立音调周期的对数似然 其中γ为高斯分布的标准偏差,K’为常数。
将等式7、8和23合并,并进行重新排列得到乘积 由于此对数是单调的,所以可以使等式25最大并可以使等式25的右侧的对数最大的P的数值为 将等式26与等式22和等式24合并并忽略常数K和常数K’不计,得到 其中λ=σ2/γ2。请注意,在等式27中,分母2σ2已从等式的右侧去除,因为它对于确定可能的音调跟踪无关紧要。
因此,测试音调跟踪为实际音调跟踪的概率包括三项。第一项为初始能量项α02(P0)|x0|2,它描述存在于从语音信号内采样的第一窗口内的能量。
第二项为可预测能量项αt2(Pi)|xt|2,它代表对存在于现有技术音调跟踪装置内的互相关项进行调整。可预测能量项包括两个因数当前窗口的总能量|xi|2以及当前窗口与先前窗口之间的互相关αi2(Pi)。由于包括总能量,所以此项在识别音调时比现有技术的互相关项要准确得多。其一个原因是可预测能量项降低了在语音信号的非发音部分内存在的非常大互相关的权重。在现有技术中不存在此降低权重过程,这里利用此降低权重过程是因为语音信号内的非发音部分的总能量低,并且低的总能量产生低可预测能量。
测试音调跟踪概率内的第三项为音调过渡项λ(Pi-Pi-1)2,它处罚音调跟踪内的大过渡。在等式27内包括此项是对现有技术的附加改进。在现有技术的系统中,一旦在一组时间标记的各时间标记确定可能音调,则执行拆分步骤来缓和音调跟踪。在本发明中,将此拆分步骤引入对音调跟踪的概率计算中。
等式27的加法部分可以被看作独立一序列概率值的总和,每个概率值表示在特定时间特定音调过渡的概率。这些独立的概率值被表示为 其中Si(Pi,Pi-1))为从在时间i-1时的音调Pi-1过渡到在时间i时的音调Pi的概率值。
将等式28与等式27合并获得 等式29提供以音调PM-1结束的可能音调跟踪。为了计算以音调PM -1结束的可能音调跟踪,可以将等式29展开,这样得到 将等式30与等式29进行比较,可以发现,为了计算以新音调PM结束的可能的音调声径,与过渡到新音调SM(PM,PM-1)有关的音调得分累加到在对以先前音调PM-1结束的音调声径计算的概率。
在本发明的实施例中,在一组时间标记t=iT时这样确定音调跟踪得分,即在时间t=(M-1)T时确定以音调PM-1结束的音调跟踪得分。通过存储在时间t=(M-1)T时确定的音调跟踪得分并通过利用等式30,为了计算以音调PM结束的音调跟踪值,本发明的此实施例仅需要确定在时间t=MT时的声径得分SM(PM,PM-1)。
根据等式30,图8示出根据本发明的音调跟踪装置350。在图9所示的流程图中示出音调跟踪装置350的运行过程。
音调跟踪装置350在输入端352接收语音信号的数字采样。在许多实施例中,语音信号先被带通滤波处理,然后被转换为数字采样,这样与发音部分无关的高频和低频均被去除。在音调跟踪装置350内,数字采样被存储到存储区354以允许音调跟踪装置350多次存取采样。
在图9所示的步骤520,图8所示的音调指定器360指定当前时间周期t=MT的测试音调PM。在许多实施例中,音调指定器360从音调表362中检索测试音调PM,音调表362包括人类语音中存在的典型音调列表。在许多实施例中,音调列表包括互相之间用对数方法划分的音调。在一个实施例中,建立了一种四分之一半音解决方案以获得满意的效果。如下所述,由于最后将在此时间周期内检索列表音调内的各音调,所以可以对特定音调进行随机检索。
将音调指定器360指定的测试音调PM送到窗口采样器358。根据指定的测试音调以及存储在采样存储器354内的采样,在图9所示的步骤522,窗口采样器358建立当前窗口向量xt和先前窗口向量xt-P。如上等式3和等式4所示,当前窗口向量和先前窗口向量包括采样集合。
在图10中示出存在于存取窗口向量xt和先前窗口向量xt-P内的采样的实例。图10示出输入语音信号404作为时间的函数示意图。在图10中,利用音调指定器360指定的音调周期406将当前窗口402与先前窗口400分开。在先前窗口400内的采样408、410以及412示出先前窗口向量xt-P的采样x[t-P-4]、x[t-P-3]以及x[t-P-2]。在先前窗口402内的采样414、416以及418示出当前窗口向量xt的采样x[t+n-4]、x[t+n-3]以及x[t+n-2]。
窗口采样器358将当前窗口向量xt送到能量计算器366,能量计算器366在图9所示的步骤524计算向量的能量|xi|2。在一个实施例中,利用上述等式13计算能量。
窗口采样器358还将当前窗口向量xt与先前窗口向量xt-P一起送到互相关计算器364。利用上述等式15,在图9所示的步骤526,互相关计算器364计算前向互相关αi(P)。在本发明的一些实施例中,等式15内的窗口N的大小被设置为等于正被测试的音调P。在这些实施例中,为了避免使用太小的窗口,本发明人要求最小窗口长度为5毫秒,而与正被测试的音调P无关。
在本发明的一些实施例中,窗口采样器358还将下一个窗口向量xt+P送到互相关计算器364。在时间上,下一个窗口向量xt+P在当前窗口向量xt前向互相关的总数等于音调指定器360产生的音调。在图9所示的步骤528,互相关计算器364使用下一个窗口向量xt+P来计算后向互相关αi(-P)。利用上述等式15并用(+P)代替(-P)就可以计算后向互相关αi(-P)。
在步骤528计算后向互相关之后,本发明的一些实施例在步骤530将前向互相关αi(P)与后向互相关αi(-P)进行比较。完成此比较过程是为了确定语音信号是否发生突变。如果对于相同音调周期后向互相关高于前向互相关,则输入语音信号可能在先前窗口与当前窗口之间已经发生变化。在语音信号中,这种变化通常发生在音素之间的交界处。如果该信号在先前窗口与当前窗口之间已经发生变化,则后向互相关比前向互相关能够更准确的确定当前窗口的可预测能量。
如果后向互相关高于前向互相关,则在步骤532,后向互相关与0进行比较。如果在步骤532得知后向互相关小于0,则在下一个窗口与当前窗口之间存在负互相关。由于互相关先被平方然后在等式27中用于计算音调值,所以在等式27中会把负互相关误认为是正互相关。为了避免发生这种情况,如果在步骤532得知后向互相关小于0,则在步骤534将两次调整后的互相关α″i(P)设置为0。如果在步骤532得知后向互相关大于0,则在步骤536将一次调整后的互相关α′i(P)设置为等于后向互相关αi(-P)。
如果在步骤530得知前向互相关大于后向互相关,则在步骤538将后向互相关与0进行比较。如果在步骤538得知后向互相关小于0,则在步骤534将两次调整后的互相关α″i(P)设置为0。如果在步骤538得知后向互相关大于0,则在步骤542将一次调整后的互相关α′i(P)设置为等于前向互相关αi(P)。
在本发明的进一步实施例中,在步骤544,通过将谐波衰减值从一次调整后的互相关值α′i(P)中减去,可以对一次调整后的互相关进一步进行调整以产生两次调整后的互相关α″i(P)。谐波衰减值具有两部分,第一部分是被半音调周期(P/2)分开的窗口向量的互相关,第二部分是谐波衰减因数,谐波衰减值乘以P/2互相关值。此调整过程可以被表示为等式α″i(P)=α′i(P)-βα′i(P/2)等式31其中β为衰减因数,并且0<β<1。在一些实施例中,β为(.2)。
在步骤534和步骤544后,图9所示的过程继续进行步骤546,在步骤546,对于从在向前时间标记时的音调到在当前时间标记t=MT时当前选择音调延伸的各声径,计算当前声径值SM(PM,PM-1)。可以利用上述等式28计算当前声径值。通过将互相关计算器364的输出平方并将该平方值乘以能量计算器366的输出就可以计算可预测能量αi2(Pi)|xi|2。这些功能可以分别被表示为图8中的平方块368和乘法块370。对于一些实施例,请注意,利用替代αi(P)的互相关计算器364,可以产生两次调整后的互相关α″i(P)。在这种实施例中,两次调整后的互相关被用于计算可预测能量。
利用图8所示的音调过渡计算器372产生等式28中的音调过渡项λ(PM-PM-1)2。对于时间t=(M-1)T时的各音调,音调过渡计算器372产生单独音调过渡项λ(PM-PM-1)2。音调过渡计算器372从音调选择器360接收当前音调PM并利用音调表362识别先前音调PM-1。
利用减法单元374分别从乘法器370的输出中减去音调过渡计算器372产生的各单独音调过渡项。这样就产生从在时间t=(M-1)T时的先前音调PM-1音调值到在时间t=MT时的当前测试音调PM的各声径的音调值。然后,将这些音调值送到动态规划单元376。
在图9所示的步骤548,音调选择器360确定是否在时间t=MT时已经对各音调PM产生声径值。如果在时间t=MT时的音调还未用于产生声径值,则在步骤550利用音调选择器360选择该音调。然后,处理过程返回步骤522以产生声径值用于从先前音调PM-1过渡到新选择的音调PM。持续进行此过程直到对从先前音调PM-1到各可能当前音调PM的各声径计算声径值为止。
如果在步骤548计算了所有当前声径值,则在步骤552继续进行此过程,在步骤552,动态规划单元376利用等式30将当前声径值SM(PM,PM-1)与过去音调跟踪值相加。如上所述,过去音调跟踪值代表在先前时间标记t=(M-1)T结束的各跟踪的声径值之和。将当前声径值与过去音调跟踪值相加会产生在当前时间标记t=MT结束的各音调跟踪的音调跟踪值。
作为此处理过程的一部分,动态规划单元376的一些实施例将具有极低声径值的音调跟踪删除。这样就降低了计算其它声径值的复杂性而不会明显降低其性能。此删除过程会使在时间t=(M-S)T时之前全部时间内的可能音调跟踪汇合为一个最可能的音调跟踪,其中S的值部分地是由删除的严重程度和此语音信号内音调的稳定性确定的。然后,在步骤554,将此最可能音调跟踪输出。
在步骤556,存储在时间t=MT时确定的保留音调跟踪,并在步骤558将时间标记递增到t=(M+1)T。然后,图9所示的处理过程返回步骤520,在步骤520,音调选择器360选择新时间标记的第一音调。
除了识别音调跟踪之外,本发明还提供了一种用于识别语音信号内的发音部分和非发音部分的装置。为此,本发明定义了一种双态隐藏马尔可夫模型(HMM),如图11中的模型600所示。模型600包括发音状态602和非发音状态604,它们具有在这两个状态之间扩展的过渡声径606和608。模型600还包括自过渡声径610和612,它们自己分别与状态602和状态604相连。
在任意时间周期属于发音状态或非发音状态的概率均是两个概率的组合。第一概率是过渡概率,它代表语音信号将从发音区域过渡到非发音区域以及从非发音区域过渡到发音区域或者语音信号仍保持在发音区域或非发音区域的似然性。因此,第一概率指出语音信号经过过渡声径606、608、610或612之一的似然性。在许多实施例中,根据实验确定过渡概率以保证发音区域和非发音区域均不太短,从而实现连续性。
在确定语音信号是处于发音区域还是处于非发音区域的过程中使用的第二概率是以当前时间周期的语音信号的特征为根据的。尤其是,第二概率是基于当前采样窗口的总能量|xi|2与在对窗口识别的最大前验音调PMAP确定的当前采样窗口的两次调整后的互相关α″i(PMAP)的组合的。根据本发明,已经发现这些特征是发音区域和非发音区域的强标志。这还可以从图12所示的示意图中看到,图12示出,根据总能量值(横轴630)和互相关值(纵轴632),将发音窗口采样634与非发音窗口采样636相对组合在一起。在图12中可以看到,发音窗口采样634趋向于具有高总能量和高互相关,而非发音窗口采样636趋向于具有低总能量和低互相关。
图13所示的流程图示出一种根据本发明用于识别语音信号的发音区域与非发音区域的方法。该方法从步骤650开始,在步骤650,利用集中在当前时间t的当前窗口向量xt与集中在先前时间t-PMAP的先前窗口向量xt-P,计算互相关。在计算互相关的过程中,PMAP是通过上述音调跟踪处理过程对当前时间t识别的最大前验音调。此外,在一些实施例中,窗口向量xt与xt-P的长度等于最大前验音调PMAP。
在步骤650对互相关进行计算之后,在步骤652确定窗口向量xt的总能量。然后,在步骤654,将互相关和总能量用于计算窗口向量包括发音区域的概率。在一个实施例中,根据在发音采样与总能量和互相关之间的关系的高斯模型进行此计算过程。利用EM(估计最大)算法计算高斯分布的平均偏差和标准偏差,EM算法根据样本发音估计发言组与非发言组的平均偏差和标准偏差。该算法从初始推测发言组和非发言组的平均偏差和标准偏差开始。然后,根据哪个组具有最高概率对样本发音的采样进行分类。如果对各组分配采样,则重新估计各组的平均偏差和标准偏差。将此过程重复进行几次,直到实现收敛以致在重复该过程之间各组的平均偏差和标准偏差不发生大的变化为止。此初始数值对于此算法有些重要。根据本发明的一个实施例,将发音状态的初始平均偏差设置为等于最高对数能量采样,而将非发音状态的平均偏差设置为等于最低对数能量的采样。发音组和非发音组的初始标准偏差均设置为互相相等并且均等于所有采样的整体标准偏差。
在步骤656,该方法计算当前窗口向量xt包括语音信号的非发音部分的概率。在一个实施例中,根据非发音采样与总能量和互相关之间的关系的高斯模型来进行此计算过程。
在步骤658,将适当过渡概率与分别在步骤654和656计算的概率相加。适当过渡概率是从模型的先前状态过渡到相应状态的概率。因此,如果在先前时间标记语音信号处于图11所示的非发音状态604,则与发音状态602有关的过渡概率就是与过渡声径606有关的概率。对于相同的先前状态,与非发音状态604有关的过渡概率就是与过渡声径612有关的概率。
在步骤660,将与各状态有关的概率之和与在发音状态和非发音状态输入当前时间帧的多个可能发音跟踪的各跟踪值相加。利用动态规划,根据当前发音跟踪值确定对过去时间周期的发音判定。这种动态规划系统为本技术领域所公知。
在步骤661,语音跟踪系统确定这是否是语音信号内的最后一个帧。如果这不是最后一个帧,则在步骤662选择语音信号内的下一个时间标记,并且处理过程返回步骤650。如果这是最后一个帧,则在步骤663通过检验在最后一帧结束的所有可能发音跟踪的跟踪值。
尽管参考特定实施例对本发明进行了说明,但是本技术领域的技术人员会认识到,可以在本发明实质范围内在形式和细节方面进行变更。此外,尽管采用方框图对本发明进行了说明,但是本技术领域的其它技术人员会认识到,可以将本发明的部件作为计算机指令实现。
权利要求
1.一种在语音信号内跟踪音调的方法,方法包括通过集中在第一时间标记的第一时间窗口采样语音信号以产生第一窗口向量;通过集中在第二时间标记的第二时间窗口采样语音信号以产生第二窗口向量,利用测试音调周期将第二时间标记与第一时间标记分开;计算由第一窗口向量表示的语音信号部分的能量的能量值;根据第一窗口向量和第二窗口向量,计算互相关值;将能量值与互相关值合并以产生可预测能量因数;部分地根据可预测能量因数,确定测试音调周期的音调得分;以及部分地根据音调得分,至少识别一部分音调跟踪。
2.根据权利要求1所述的方法,其特征在于经过第一时间窗口采样语音信号包括与测试音调周期相同长度的第一时间窗口采样语音信号。
3.根据权利要求2所述的方法,其特征在于经过第二时间窗口采样语音信号包括与测试音调周期相同长度的第二时间窗口采样语音信号。
4.根据权利要求1所述的方法,其特征在于计算互相关值包括将第一窗口向量与第二窗口向量的标量乘积除以第一窗口向量和第二窗口向量的大小以产生初始互相关值。
5.根据权利要求4所述的方法,其特征在于计算互相关值还包括将互相关值设置为等于初始互相关值。
6.根据权利要求4所述的方法,其特征在于计算互相关值还包括如果初始互相关值小于0则将互相关值设置为0。
7.根据权利要求4所述的方法,其特征在于进一步包括经过集中在第三时间标记的第三时间窗口采样语音信号以产生第三窗口向量,利用测试音调周期将第三时间标记与第一时间标记分开。
8.根据权利要求7所述的方法,其特征在于计算互相关值还包括根据第一窗口向量和第三窗口向量计算第二互相关值;将初始互相关值与第二互相关值进行比较;以及如果第二互相关值表示比初始互相关值更相关,则将互相关值设置为等于第二互相关值,否则,将互相关值设置为等于初始互相关值。
9.根据权利要求4所述的方法,其特征在于计算互相关值还包括经过集中在第一时间标记的一次谐波时间窗口采样语音信号以产生第一次谐波窗口向量;经过集中在二次谐波时间标记的二次谐波时间窗口采样语音信号以产生第二次谐波窗口向量,利用半测试音调周期将第二次谐波时间标记与一次谐波时间标记分开;根据第一次谐波窗口向量和第二次谐波窗口向量计算谐波互相关值;将谐波互相关值乘以衰减因数以产生谐波衰减值;以及将谐波衰减值从初始互相关值内减去并将此互相关值设置为等于此差值。
10.根据权利要求1所述的方法,其特征在于确定音调值包括对集中在第一时间标记的语音信号确定测试音调周期为实际音调周期的概率。
11.根据权利要求10所述的方法,其特征在于确定测试音调周期为实际音调周期的概率包括将可预测能量因数与过渡概率相加,过渡概率指出从先前音调周期过渡到测试音调周期的概率。
12.根据权利要求10所述的方法,其特征在于还包括用一个音调得分确定多个音调得分,用于从多个先前音调周期到测试音调周期的每一个可能过渡。
13.根据权利要求12所述的方法,其特征在于还包括将多个音调得分与过去音调得分合并以产生音调跟踪得分,各音调跟踪得分表示测试音调跟踪等于语音信号的实际音调跟踪的概率。
14.根据权利要求13所述的方法,其特征在于识别音调跟踪包括识别与最高音调跟踪得分有关的音调跟踪。
15.根据权利要求1所述的方法,其特征在于还包括确定第一时间标记是否处于语音信号的发音区域内。
16.根据权利要求15所述的方法,其特征在于确定第一时间标记是否处于语音信号的发音区域包括根据能量值和互相关值确定第一时间标记处于发音区域内的概率。
17.一种执行语音功能的计算机语音系统,音调跟踪装置包括窗口采样单元,用于从语音信号的各当前窗口和先前窗口构建当前窗口向量和先前窗口向量,利用测试音调周期将当前窗口中央与先前窗口中央分开;能量计算器,用于计算当前窗口的总能量;互相关计算器,用于根据当前窗口向量和先前窗口向量计算互相关值;乘法器,用于将总能量乘以互相关值以产生可预测能量因数;音调得分产生器,根据可预测能量产生音调得分;以及音调跟踪识别器,用于至少部分地根据音调得分至少识别语音信号的部分音调跟踪。
18.根据权利要求17所述的音调跟踪装置,其特征在于计算机语音系统为语音合成系统。
19.根据权利要求17所述的音调跟踪装置,其特征在于计算机语音系统为语音编码器。
20.一种在语音信号内跟踪音调的方法,方法包括在语音信号内采样第一波形;在语音信号内采样第二波形,利用测试音调周期将第一波形的中央与第二波形的中央分开;创建表示第一波形与第二波形之间的相似程度的相关值;创建表示测试音调周期与先前音调周期的相似性的音调轮廓因数。将相关值与音调轮廓因数合并以产生音调得分以从先前音调周期过渡到测试音调周期;以及根据至少一个音调得分识别部分音调跟踪。
21.根据权利要求20所述的方法,其特征在于创建相关值的过程包括确定第一波形与第二波形之间的互相关;确定第一波形的能量;以及将互相关值乘以能量值以产生相关值。
22.根据权利要求21所述的方法,其特征在于确定互相关包括根据对第一波形的采样创建第一窗口向量和根据对第二波形的采样创建第二窗口向量。
23.根据权利要求22所述的方法,其特征在于确定互相关还包括将第一窗口向量与第二窗口向量的标量乘积除以第一窗口向量与第二窗口向量的大小以产生互相关值。
24.根据权利要求23所述的方法,其特征在于确定互相关还包括将互相关值设置为等于初始互相关值。
25.根据权利要求23所述的方法,其特征在于确定互相关还包括如果初始互相关值小于0则将互相关值设置为0。
26.根据权利要求23所述的方法,其特征在于还包括在语音信号内采样第三波形,利用测试音调周期将第三波形的中央与第一波形的中央分开;以及根据对第三波形的采样创建第三窗口向量。
27.根据权利要求26所述的方法,其特征在于确定互相关还包括根据第一窗口向量和第三窗口向量计算第二互相关值;将初始互相关值与第二互相关值进行比较;以及如果第二互相关值大于初始互相关值,则将互相关值设置为等于第二互相关值,否则,将互相关值设置为等于初始互相关值。
28.根据权利要求23所述的方法,其特征在于确定互相关还包括采样第一次谐波波形并根据对第一次谐波波形的采样创建第一次谐波窗口向量;采样第二次谐波波形并根据对第二次谐波波形的采样创建第二次谐波窗口向量,利用半测试音调周期将第二次谐波波形的中央与第一次谐波波形的中央分开;根据第一次谐波窗口向量和第二次谐波窗口向量计算谐波互相关值;将谐波互相关值乘以衰减因数以产生谐波衰减值;以及将谐波衰减值从初始互相关值中减去并将互相关设置为等于此差值。
29.根据权利要求20所述的方法,其特征在于第一波形的长度等于测试音调周期。
30.根据权利要求20所述的方法,其特征在于创建音调轮廓因数包括将测试音调周期从先前音调周期中减去。
31.根据权利要求30所述的方法,其特征在于将相关值与音调轮廓因数合并包括将音调轮廓因数从相关值中减去。
32.根据权利要求20所述的方法,其特征在于识别部分音调跟踪包括对至少两个测试音调跟踪确定多个音调值,其中,对于各测试音调跟踪内的各音调过渡对应一个音调得分。
33.根据权利要求32所述的方法,其特征在于识别部分音调跟踪还包括将各测试音调跟踪的音调得分相加,以及,选择具有最高和数的测试音调跟踪作为语音信号的音调跟踪。
34.一种用于跟踪语音信号内的音调的音调跟踪系统,该系统包括窗口采样器,用于产生语音信号内第一波形和第二波形的采样;相关计算器,用于产生表示第一波形与第二波形之间的相似性程度的相关值;音调轮廓计算器,用于计算表示测试音调周期与先前音调周期之间的相似性的音调轮廓因数;音调得分计算器,用于根据相关值和音调轮廓因数计算相关得分;以及音调跟踪识别器,用于根据音调得分识别音调跟踪。
35.一种确定语音信号的区域是否是发音区域的方法,方法包括采样语音信号的第一波形和第二波形;确定第一波形与第二波形之间的相关;确定第一波形的能量;以及如果第一波形的能量以及第一波形与第二波形之间的相关均高,则确定该区域为发音区域。
36.根据权利要求35所述的方法,其特征在于还包括如果第一波形的能量以及第一波形与第二波形之间的相关均低,则确定语音信号的区域为非发音区域。
37.在计算机系统中使用的音调跟踪装置可以确定语音信号的区域是否是发音区域,该音调跟踪装置包括采样器,用于采样第一波形和第二波形;相关计算器,用于计算第一波形与第二波形之间的相关;能量计算器,用于计算第一波形的能量;以及区域识别器,如果第一波形与第二波形之间的相关高并且第一波形的能量也高则识别该语音信号的区域为发音区域。
全文摘要
本发明披露了一种在语音信号(200)内跟踪音调的方法,在该方法中,根据经过语音信号的第一窗口和第二窗口(402、400)的采样(414、416,418、408,410、412)创建第一窗口向量和第二窗口向量(x
文档编号G10L11/00GK1338095SQ99813697
公开日2002年2月27日 申请日期1999年11月22日 优先权日1998年11月24日
发明者亚历杭德罗·阿塞罗, 詹姆斯·C·Iii·德保罗 申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1