具体实施方式
正如上文所述,即使应用良好的频率弯曲函数对源语音进行频率弯曲,由于说话者语音的具体频谱差异,听众仍然能够察觉到转换的语音和目标说话者之间的差别。鉴于纯粹的诸如频率弯曲的频谱转换难以进一步提高与目标说话者的相似度,本发明提出一种复合式的语音转换系统,其中将诸如频率弯曲的频谱转换技术和TTS系统内的单元选择进行有机地结合,以得到更好的语音转换系统。
图1示出了根据本发明一个实施方式的语音转换方法的流程图。
如图1所示,在步骤S100中,该方法的流程开始。
在步骤S102中,对源说话者的语音进行语音分析以获得语音信息。该语音信息诸如频谱包络和基频曲线信息。
在步骤S104中,根据本发明的语音转换系统的原理,对源说话者的语音应用诸如频率弯曲的频谱转换,以获得与目标说话者的语音相似的第一频谱。
通过使用频率弯曲函数转换频谱包络,本步骤是相当直接的。假设源说话者的频谱的一帧是S(w),从目标频率轴到源频率轴的频率弯曲函数是F(w),则转换频谱Conv(w)是:
Conv(w)=S(F(w))
在步骤S106中,对音调曲线(韵律)进行韵律转换,其中主要包括对基音频率(f0)曲线转换。例如,可以利用训练的f0调域转换函数转换f0的均值和方差。
本领域的技术人员可以理解,利用频率弯曲还可以在弯曲的频谱上应用频谱包络均衡过滤来补偿沿着频率轴的不同能量分布。
在步骤S104和S106之后,转换后的第一频谱将与目标说话者的频谱相似,以及优选地转换后的音调曲线将与目标说话者的音调曲线更相似。
在步骤S108中,至少使用第一频谱作为估计的目标,基于目标说话者语料库进行单元选择。
这里可以采用的最小单元为一帧语音提取的频谱和基频信息。将其作为一个码字,而将所有码字的集合成为码本。例如,所采用的一帧语音的帧长可以为5ms或10ms。当然,本领域的技术人员可以很容易地使用其他尺度的语音长度,这不对本发明构成限制。
优选地,使用通过频率弯曲转换的第一频谱和转换的f0曲线作为估计的目标来从目标说话者的码本中选择合适的码字。
该步骤与在拼接式文本到语音系统中的候选单元选择相似。然而,不同指出在于,本发明以转换后的第一频谱和f0曲线作为单元选择的目标。这样的估计目标的有点在于,其比TTS系统中的由韵律模型或者其它模型估计出的更自然。
可以从转换的第一频谱和f0曲线生成目标码字的集合。如果拥有原始语音的切分信息,则目标码字可以同时提取语境信息。然后,可以定义在目标码字和候选的码字之间的目标代价函数。优选地,此目标代价可以由频谱距离、韵律距离和语境距离加权。
可以通过各种频谱特征之间的距离计算频谱距离,诸如Euclidean距离或者FFT(快速傅立叶变换)振幅频谱、FFT倒易空间振幅频谱、MFCC(耳级频率倒谱系数)、LPC(线性预测编码)、LSF(线性频谱频率)等距离度量,也可以采用多个距离的加权和。
韵律距离可以通过线性域或者对数域f0之间的差值计算。韵律距离也可以通过预定义的特殊策略进行计算。例如,如果两个f0值都非零或者都为零,他们的韵律距离为零。否则,他们的韵律距离是非常大的值。也可以使用许多其它策略来进行韵律距离的计算,例如,考虑f0导数之间的差值的策略等。
如果在生成目标码字和训练备选码字时均提取了语境信息,则可以计算目标码字和备选码字之间的语境距离。最重要的语境信息之一是码字属于哪个音素及它的邻近音素是哪个音素。距离计算策略可以是:如果两个码字属于相同音素并具有相同的邻近音素,则它们的距离是零。如果两个码字属于相同音素但具有不同的邻近音素,则将它们的距离设为很小的值。然而,如果两个码字属于不同的音素,则将它们的距离设为大的值。
除了目标代价外,还需要定义在两个候选码字之间的过渡代价。与目标代价类似,过渡代价也可以是频谱距离、韵律距离和语境距离的加权和。
由此,通过上述选择过程,可以确定目标说话者语料库中与转换后的第一频谱和f0曲线最适合的码字集合。
在步骤S110中,以所选择的目标说话者语音单元的真实频谱替代第一频谱的至少一部分。
这样做的这主要原因是,由于所选择的目标说话者语音的是诸如帧的基本单元,因此如果直接利用所选择的单元替换第一频谱中该单元所对应的整个的频谱,则可能在最终得到的语音中引起严重的不连续问题。鉴于频谱的低频部分对于连续性是至关重要的,而对改善与目标的相似度不是很重要,因此根据本发明一种优选的方案,将第一频谱中所选单元所对应频谱的低频部分保持不变。也就是说,在选择完合适的码字后,利用选择的码字的高于特定频率的频谱替换第一频谱中的相应部分,而将第一频谱中低于该特定频率的部分保持不变。根据本发明的一种优选实施方案,该特定频率在500Hz到2000Hz之间进行选择。
优选地,在步骤S112中,可以利用现有技术中的任何已知方案对替换所得的频谱进行平滑。
在步骤S114中,利用平滑后的频谱和转换的f0曲线重建语音数据。
在步骤S116中,该方法的流程结束。
如上所述的根据本发明一个实施方式的语音转换方法,在常规的基于频谱转换的语音转换方法的基础上增加了单元选择步骤以及频谱替换步骤,由此以经过频谱转换的源说话者语音频谱作为估计目标,来选择目标说话者语料库中的诸如语音帧的单元,并完成频谱相应部分的替换。这样,充分利用了源说话者自然的频谱特征,并且相当大程度上保留了目标说话者的发音特点。
上述语音转换方法的实施方式中,主要以频率弯曲作为频谱转换的示例性技术方案。这是因为现有的频率弯曲方案能够提供转换语音与目标说话者语音的之间相对高的近似度。然而,这种举例并不是限制性的,因为本领域的技术人员可以理解,只要频率转换步骤能够为后续的单元选择步骤提供良好的估计目标,就能够实现根据本发明的技术方案。类似地,对于韵律转换中对f0曲线的转换可以利用除调域变换以外的其他任何已知的技术实现。
图2示意性地示出了根据本发明一种实施方式的语音转换系统的功能框图。其中,参考标号200表示根据本发明一个实施方式的语音转换系统;参考标号201表示对源语音进行分析的语音分析装置;参考标号202表示根据源语音的频谱包络进行频谱转换的频谱转换装置,在本实施方式中频谱转换装置202采用频率弯曲技术实现频谱转换;参考标号203表示根据源语音的曲线进行韵律转换的装置;参考标号204表示提供目标说话者语音码本的目标语音语料库;参考标号205表示从目标语音语料中选择适当码字单元的单元选择装置;参考标号206表示频谱替换装置;参考标号208表示用于根据本发明一种优选方案的频谱平滑装置;参考标号209表示进行语音重建以获得最终转换语音的语音重建装置。
如图2所示的语音转换系统类似于常规的语音转换系统,需要在语音分析装置201中对源语音进行语音分析以将源语音分解成频谱包络和激励(例如,f0曲线),并且最终在语音重建装置209中,由转换的频谱包络和激励重建转换的语音。例如,语音转换系统200可以使用由Chazan,D.,R.Hoory,A.Sagi,S.Shechtman,A.Sorin,Z.W.Shuang和R.Bakis在“High Quality Sinusoidal Modeling ofWideband Speech for the Purpose of Speech Synthesis andModification,”ICASSP 2006中提出的语音分析/重建技术,以得到加强的复杂包络模型和音调曲线。该技术基于合成过程中的频率抖动噪音插入和有效线谱提取,并且能够提供在分析和合成过程中的帧对准过程以在语音操作过程中允许振幅和相位操纵,例如,音调修正、频谱平滑、声道转换等。当然,对于本发明而言,可以采用本领域中现有的任何语音分析/重建技术来实现语音分析装置201和语音重建装置209,其对本发明的实现不够成限制。
语音转换系统200的功能实现依赖于两个操作阶段,即训练阶段和转换阶段。训练阶段为转换阶段的操作提供必要的准备。
虽然训练阶段本身并不是本发明所关注的问题所在,但是由于本发明语音转换系统的新颖配置,其训练阶段也与常规系统有所不同。以下对根据本发明一个实施方式的语音转换系统200的训练阶段进行简要的示例性描述,以便本领域的技术人员更好的理解本发明的实现方式。
根据本发明一个实施方式的语音转换系统200的训练阶段可以分为三部分:1.针对频谱转换装置202所采用的频率弯曲函数训练;2.针对目标语音语料库204和单元选择装置205进行的码本训练;3.除了这两个主要部分外,还可以包括附加的其它训练:韵律参数训练、频谱均衡过滤训练等。
1.频率弯曲函数训练
如前所述,频谱转换装置202可以采用频率弯曲技术实现对源语音频谱包络的频谱转换。
频率弯曲可以补偿不同说话者之间声光谱的差值。给定一种声音的截面谱,可以通过应用频率弯曲函数创建新的截面谱。假设源说话者的频谱的一帧是S(w),从目标频率轴到源频率轴的频率弯曲函数是F(w),则转换频谱Conv(w)是:
Conv(w)=S(F(w))
在现有技术中存在许多用于发现性能良好的频率弯曲函数的自动训练方法。一种方法是最大似然线性回归法,参见LF.Uebeland和P.C.Woodland的“An investigation into vocal tract lengthnormalization,”EUROSPEEECH’99,Budapest,Hungary,1999,pp.2527-2530。然而,这种方法需要大量的训练数据集,这限制了它在很多场合中的使用。Eichner,M.,M.Wolff和R.Hoffmann的“VoiceCharacteristic Conversion for TTS Using Reverse VTLN,”Pro.ICASSP,Montreal,PQ,Canada,2004建议从一些预定义的单参数函数族中选择频率弯曲函数,但是效率难以令人满意。David Sunderman和Hermann Ney的“VTLN-Based Voice Conversion”,ICSLP,2004,Jeju,Korea,2004采用动态编程以训练线性或者分段的线性弯曲函数,其中动态编程使转换源频谱和目标频谱之间的距离最小化。然而,由于输入光谱中的噪音,此方法的性能可以被极大地降低。
由Eide,E.和H.Gish在“A Parametric Approach to Vocal TractLength Normalization,”ICAS SP 1996,Atlanta,USA,1996中提出了一种方法,其中弯曲函数是基于每一个说话者的第三共振峰的中值。一些研究者通过基于属于相同音素的共振峰生成弯曲函数扩展了此方法。然而,共振峰频率和其与声道长度(VTL)的关系不仅依赖于说话者的声道形状和其所发出的不同音素,而且高度依赖于上下文,同一个说话者的共振峰可能随着上下文而发生很大变化。同一申请人的中国专利申请公开号CN101004911A公开了一种通过映射源说话者和目标说话者的共振峰参数生成频率弯曲函数的新方案,在此通过参考将该申请全文引入本申请。在该技术方案中增加了对准和选择过程,以保证选择的映射共振峰可以很好地代表说话者之间发音的不同之处。然后,映射共振峰将成为定义从目标频率轴到源频率轴的分段线性频率弯曲函数的关键位置。提出线性插值以生成两个邻接关键位置之间的部分,其它插值机制也可以使用。此方案仅需要非常小量的生成弯曲函数的训练数据,可以极大地方便其应用,而且可以获得高质量的转换语音,同时成功地使转换语音与目标说话者相似。
2.码本训练
目标语料库204是可以用于存储并向单元选择装置205提供码本。码本由多个码字组成。通常一个码字由一帧语音数据而生成,该一帧语音数据例如是10ms长的语音数据。一个码字可以用于重建一帧语音数据。
基本上有两种码字。一种没有语境信息,其意味着每个码字仅包含诸如频谱和基音频率的声音信息。另一种具有语音信息,其意味着除了声音信息之外,每个码字包含语音信息,诸如码字属于的音素、邻近音素等。
生成不具有语音信息的码本通常非常简单。仅需要逐帧对语音数据作语音分析,并得到每帧的频谱包络和基音频率。然后,从所有分析的帧中选择一些帧。可以简单地在固定间隔内选择一个帧来执行选择。当然,也可以使用一些更复杂的策略执行选择。例如,可以在那些安静或者低能段中选择更少的帧。或者可以在更快变化段中选择更多的帧,而在稳定段中选择更少的帧。
为了生成具有目标语音信息的码本,通常需要对准信息。可以通过自动语音识别引擎执行对准,其将目标语音语料库204中语音数据与诸如音节、音素等相应的单元对准。还可以通过听取目标语音语料库204中的语音数据手动地添加标签,从而执行对准。利用对准信息,可以得到一个码字的多种语音信息,诸如:其属于的音素、在音素中的位置和它的邻近音素等。这样的音素信息对于在转换阶段中由单元选择单元205所执行的对码本单元的选择是很有用的。
3.其它训练
除了上述两部分外,还可以包括附加的训练,例如韵律参数(音调参数)训练、频谱均衡过滤训练等。
韵律训练为韵律转换装置203提供了从源说话者音调到目标说话者音调的韵律转换函数。其中基音频率(f0)转换对于韵律转换是至关重要的。可以通过使用应用至logf0的线性转换对f0曲线进行调节。因此,如果f0s是源f0,f0t是目标f0,则logf0t=a+blogf0s,。其中选择a和b以将源说话者logf0的均值和方差转换为目标说话者logf0的均值和方差。所以,我们可以通过计算源说话者和目标说话者logf0的均值和方差生成f0转换函数。
可以将频谱包络均衡实现为对频谱的滤波器(未示出),以补偿沿着频率轴的不同能量分配。在训练完频率弯曲函数后,由于在频率弯曲后计算源说话者和目标说话者的平均功率谱之间的差异曲线,需要训练频谱均衡滤波器。然后,平滑差异曲线以得到更平滑的作为频谱包络均衡滤波器使用的频谱滤波器。
当然,本领域技术人员可以理解,为了获得更加更佳的语音转换结果还可以在根据本发明的语音转换系统200中增加这里虽未描述但依据现有技术可以获知的任何其它处理装置,因此还可以包括针对这些附加装置的其它附加的训练步骤。
当根据本发明一个实施方式的语音转换系统200执行源语音到目标语音的转换时,则系统进入转换阶段。
首先,由语音分析装置201对源说话者的语音进行语音分析以获得频谱包络和音调曲线信息。
频谱转换装置202对源说话者的语音频谱包络进行频谱转换。如前所述,在该实施方式中频谱转换装置202将在训练阶段所得到频率弯曲函数应用于源说话者语音的频谱包络,以获得与目标说话者的语音相似的第一频谱。
韵律转换装置203对音调曲线进行韵律转换,其中主要包括对基音频率(f0)曲线转换。例如,可以利用在训练阶段训练的f0转换函数转换f0曲线。之后,韵律转换装置203将转换后的音调信息提供给单元选择装置205和语音重建装置209,以便后续的使用。
此时,通过频谱转换装置202和韵律转换装置203的转换,第一频谱将与目标说话者的频谱更相似,以及优选地转换后的音调曲线将与目标说话者的音调曲线更相似。
单元选择装置205至少使用第一频谱作为估计的目标,基于由目标语音语料库204通过前述训练过程所获得的码本进行单元选择。在本实施方式中,优选地,单元选择装置205使用通过频率弯曲转换的第一频谱和转换的f0曲线作为估计的目标来由目标语音语料库204通过前述训练过程所获得的码本中选择合适的码字。
单元选择装置205执行与在拼接式文本到语音系统中的候选单元选择相似的处理过程。然而,不同指出在于,本发明以转换后的第一频谱和f0轮廓曲线作为单元选择的目标。这样的估计目标的优点在于,其比TTS系统中的由韵律模型或者其它模型估计出的目标更自然。单元选择装置205可以从转换的第一频谱和f0轮廓曲线生成目标码字的集合。然后,可以定义在目标码字和候选的码字之间的目标代价函数。优选地,此目标代价可以由频谱距离、韵律距离和语境距离加权。除了目标代价外,单元选择装置205还需要定义在两个候选码字之间的过渡代价。与目标代价类似,过渡代价也可以是频谱距离、韵律距离和语境距离的加权和。由此,单元选择装置205确定目标语音语料库204中生成的码本与转换后的第一频谱和f0轮廓曲线最适合的码字集合。
接着,频谱替换装置206以所选择的目标说话者语音单元的真实频谱替代第一频谱的至少一部分。由于所选择的目标说话者语音的是诸如帧的基本单元,因此如果频谱替换装置206直接利用所选择的单元替换第一频谱中该单元所对应的整个的频谱,则可能在最终得到的语音中引起严重的中断问题。鉴于频谱的低频部分对于连续性是至关重要的,而对改善与目标的相似度不是很重要,因此根据本发明一种优选的方案,频谱替换装置206将第一频谱中所选单元所对应频谱的低频部分保持不变。也就是说,在选择完合适的码字后,频谱替换装置206利用选择的码字的高于特定频率的频谱替换第一频谱中的相应部分,而将第一频谱中低于该特定频率的部分保持不变。根据本发明的一种优选实施方案,该特定频率在500Hz到2000Hz之间进行选择。
优选地,频谱平滑装置208可以利用现有技术中的任何已知方案对替换所得的频谱进行平滑。
语音重建装置209利用平滑后的频谱和转换的f0曲线重建语音数据,由此获得最终转换的语音。
如图2所示的根据本发明实施方式的语音转换系统与使用频率弯曲的现有语音转换系统相比较,在根据本发明实施方式的语音转换系统所获得的最终转换语音与目标说话者的相似度的得分上增加了20%,并在质量上的降低是可以接受的。
图2所示的语音转换系统的一些部件对于本发明来说是可选的,例如频谱平滑装置208,其作用是消除用于进行语音重建的频谱包络的细小毛刺和跳变,使其更加平滑,从而能够获得性能更加优越的最终转换语音。虽然在图2所示实施方式中没有进一步列举,但是本领域的技术人员可以在实现根据本发明的语音转换系统时增加其它的部件,以便进一步改进最终转换语音的性能,例如消除附加噪声、获得某种特殊音效等。
图3示意性示出了可以实现根据本发明的实施方式的计算设备。
图3中所示的计算机系统包括CPU(中央处理单元)301、RAM(随机存取存储器)302、ROM(只读存储器)303、系统总线304,硬盘控制器305、键盘控制器306、串行接口控制器307、并行接口控制器308、显示器控制器309、硬盘310、键盘311、串行外部设备312、并行外部设备313和显示器314。在这些部件中,与系统总线304相连的有CPU 301、RAM 302、ROM 303、硬盘控制器305、键盘控制器306,串行接口控制器307,并行接口控制器308和显示器控制器309。硬盘310与硬盘控制器305相连,键盘311与键盘控制器306相连,串行外部设备312与串行接口控制器307相连,并行外部设备313与并行接口控制器308相连,以及显示器314与显示器控制器309相连。
图3中每个部件的功能在本技术领域内都是众所周知的,并且图3所示的结构也是常规的。这种结构不仅用于个人计算机,而且用于手持设备,如Palm PC、PDA(个人数据助理)、移动电话等等。在不同的应用中,可以向图3中所示的结构添加某些部件,或者图6中的某些部件可以被省略。图3中所示的整个系统由通常作为软件存储在硬盘310中、或者存储在EPROM或者其它非易失性存储器中的计算机可读指令控制。软件也可从网络(图中未示出)下载。或者存储在硬盘310中,或者从网络下载的软件可被加载到RAM302中,并由CPU 301执行,以便完成由软件确定的功能。
尽管图3中描述的计算机系统能够支持根据本发明的语音转换方案,但是该计算机系统只是计算机系统的一个例子。本领域的熟练技术人员可以理解,许多其它计算机系统设计也能实现本发明的实施方式。
本发明还可以实现为例如由图3所示计算机系统所使用的计算机程序产品,其可以包含有用于实现根据本发明的语音转换方法的代码。在使用之前,可以把代码存储在其它计算机系统的存储器中,例如,存储在硬盘或诸如光盘或软盘的可移动的存储器中,或者经由因特网或其它计算机网络进行下载。
虽然结合附图描述了本发明的实施方式,但是本领域技术人员可以在所附权利要求的范围内做出各种变形或修改。