一种语音合成方法、装置及存储介质

文档序号:513256 发布日期:2021-05-28 浏览:9次 >En<

阅读说明:本技术 一种语音合成方法、装置及存储介质 (Speech synthesis method, device and storage medium ) 是由 殷昊 陈云琳 江明奇 杨喜鹏 张旭 于 2020-12-31 设计创作,主要内容包括:本发明公开了一种语音合成方法、装置及计算机可读存储介质,首先将原始语音信号按频率分解成n个子带频率信号,n的取值为大于等于2的正整数;接着从所述原始语音信号提取梅尔频谱特征;之后根据所提取的梅尔频谱特征生成所述n个子带频率信号中每个子带频率信号的预测采样点;最后利用所述n个子带频率信号中每个子带频率信号的预测采样点对所述n个子带频率信号进行合成,得到对应所述原始语音信号的语音合成信号。(The invention discloses a voice synthesis method, a device and a computer readable storage medium, which are characterized in that an original voice signal is decomposed into n sub-band frequency signals according to frequency, wherein the value of n is a positive integer which is more than or equal to 2; then extracting Mel frequency spectrum characteristics from the original voice signal; then generating a prediction sampling point of each sub-band frequency signal in the n sub-band frequency signals according to the extracted Mel frequency spectrum characteristics; and finally, synthesizing the n sub-band frequency signals by using the predicted sampling point of each sub-band frequency signal in the n sub-band frequency signals to obtain a voice synthesis signal corresponding to the original voice signal.)

一种语音合成方法、装置及存储介质

技术领域

本发明涉及语言处理技术,尤其涉及一种语音合成方法、装置及计算机可读存储介质。

背景技术

语音合成是指计算机自动根据文本生成相应语音的技术。语音合成主要由文本前端分析,声学模型和声码器组成,目前逐渐从传统技术向深度学习技术转变。

基于深度学习的语音合成能够大大提高合成语音的音质,但基于神经网络的语音合成系统往往会因为语音的采样率过高,导致每秒需要生成的采样点过多而发生延时问题。

发明内容

本发明实施例为了解决当前基于神经网络的语音合成技术所存在的以上缺陷,创造性地提供一种语音合成方法、装置及计算机可读存储介质。

根据本发明的第一方面,提供了一种语音合成方法,该方法包括:将原始语音信号按频率分解成n个子带频率信号,n的取值为大于等于2的正整数;从所述原始语音信号提取梅尔频谱特征;根据所提取的梅尔频谱特征生成所述n个子带频率信号中每个子带频率信号的预测采样点;利用所述n个子带频率信号中每个子带频率信号的预测采样点对所述n个子带频率信号进行合成,得到对应所述原始语音信号的语音合成信号。

根据本发明一实施方式,根据所提取的梅尔频谱特征生成所述n个子带频率信号中每个子带频率信号的预测采样点,包括:根据所提取的梅尔频谱特征对所述n个子带频率信号进行线性预测,得到所述n个子带频率信号中每个子带频率信号对应的线性预测值;利用所提取的梅尔频谱特征对所述n个子带频率信号进行神经网络预测,得到所述n个子带频率信号中每个子带频率信号对应的残差;将所述n个子带频率信号中每个子带频率信号对应的线性预测值和残差对应相加,得到所述n个子带频率信号中每个子带频率信号的预测采样点。

根据本发明一实施方式,利用所述n个子带频率信号中每个子带频率信号的预测采样点对所述n个子带频率信号进行合成,得到对应所述原始语音信号的语音合成信号,包括:根据所述n个子带频率信号中每个子带频率信号对应的线性预测值和残差,生成n个子带语音合成信号;将所述n个子带语音合成信号按频率合并,得到对应所述原始语音信号的语音合成信号。

根据本发明一实施方式,根据所提取的梅尔频谱特征对所述n个子带频率信号进行线性预测,包括:将所提取的梅尔频谱特征转换为线性谱;将所述线性谱等分成n个子带线性谱;对所述n个子带线性谱进行线性预测,得到每个子带线性谱对应的线性预测系数;根据所述线性预测系数确定所述n个子带频率信号中每个子带频率信号对应的线性预测值。

根据本发明一实施方式,利用所提取的梅尔频谱特征对所述n个子带频率信号进行神经网络预测,包括:利用梅尔频谱样本和所述n个子带频率信号进行模型训练,得到神经网络模型;将所提取的梅尔频谱特征作为所述神经网络模型的输入,对所述n个子带频率信号进行神经网络预测。

根据本发明第二方面,还提供了一种语音合成装置,该装置包括:信号分解模块,用于将原始语音信号按频率分解成n个子带频率信号,n的取值为大于等于2的正整数;特征提取模块,用于从所述原始语音信号提取梅尔频谱特征;采样点生成模块,用于根据所提取的梅尔频谱特征生成所述n个子带频率信号中每个子带频率信号的预测采样点;信号合成模块,用于利用所述n个子带频率信号中每个子带频率信号的预测采样点对所述n个子带频率信号进行合成,得到对应所述原始语音信号的语音合成信号。

根据本发明一实施方式,所述采样点生成模块具体用于,根据所提取的梅尔频谱特征对所述n个子带频率信号进行线性预测,得到所述n个子带频率信号中每个子带频率信号对应的线性预测值;利用所提取的梅尔频谱特征对所述n个子带频率信号进行神经网络预测,得到所述n个子带频率信号中每个子带频率信号对应的残差;将所述n个子带频率信号中每个子带频率信号对应的线性预测值和残差对应相加,得到所述n个子带频率信号中每个子带频率信号的预测采样点。

根据本发明一实施方式,所述信号合成模块具体用于,根据所述n个子带频率信号中每个子带频率信号对应的线性预测值和残差,生成n个子带语音合成信号;将所述n个子带语音合成信号按频率合并,得到对应所述原始语音信号的语音合成信号。

根据本发明一实施方式,所述采样点生成模块,还用于将所提取的梅尔频谱特征转换为线性谱;将所述线性谱等分成n个子带线性谱;对所述n个子带线性谱进行线性预测,得到每个子带线性谱对应的线性预测系数;根据所述线性预测系数确定所述n个子带频率信号中每个子带频率信号对应的线性预测值。

根据本发明一实施方式,所述采样点生成模块,还用于利用梅尔频谱样本和所述n个子带频率信号进行模型训练,得到神经网络模型;将所提取的梅尔频谱特征作为所述神经网络模型的输入,对所述n个子带频率信号进行神经网络预测。

根据本发明第三方面,又提供了一种计算机可读存储介质,所述存储介质包括一组计算机可执行指令,当所述指令被执行时用于执行上述任一语音合成方法。

本发明实施例语音合成方法、装置及计算机可读存储介质,首先将原始语音信号按频率分解成n个子带频率信号,n的取值为大于等于2的正整数;接着从所述原始语音信号提取梅尔频谱特征;之后根据所提取的梅尔频谱特征生成所述n个子带频率信号中每个子带频率信号的预测采样点;最后利用所述n个子带频率信号中每个子带频率信号的预测采样点对所述n个子带频率信号进行合成,得到对应所述原始语音信号的语音合成信号。如此,本发明基于子带的线性预测语音合成技术,通过引入子带频率(subband)技术,使得语音合成系统由每次输出一个采样点,变成每次输出多个采样点,从而有效加快语音合成系统的预测速度。

需要理解的是,本发明的教导并不需要实现上面所述的全部有益效果,而是特定的技术方案可以实现特定的技术效果,并且本发明的其他实施方式还能够实现上面未提到的有益效果。

附图说明

通过参考附图阅读下文的详细描述,本发明示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本发明的若干实施方式,其中:

在附图中,相同或对应的标号表示相同或对应的部分。

图1示出了本发明实施例语音合成方法的实现流程示意图一;

图2示出了本发明一应用实例语音合成系统的框架示意图;

图3示出了本发明实施例根据梅尔频谱特征生成预测采样点的实现流程示意图;

图4示出了本发明实施例语音合成装置的组成结构示意图。

具体实施方式

下面将参考若干示例性实施方式来描述本发明的原理和精神。应当理解,给出这些实施方式仅仅是为使本领域技术人员能够更好地理解进而实现本发明,而并非以任何方式限制本发明的范围。相反,提供这些实施方式是为使本发明更加透彻和完整,并能够将本发明的范围完整地传达给本领域的技术人员。

下面结合附图和具体实施例对本发明的技术方案进一步详细阐述。

相关技术中,加速声码器(vocoder)预测速度的方法是基于线性预测系数结合神经网络的方法。这种方法将语音信号分为线性部分和非线性部分,将容易预测的线性部分使用线性预测系数估计,而难以预测的非线性部分,交给强大的神经网络来预测。因为神经网络部分只需要预测语音信号的残差(非线性部分),因此可以使用相对简单的网络即可,这样便可以加快语音合成的速度。

但是,这种方法在性能较强的图形处理器(Graphics Processing Unit,GPU)上才能实现实时语音合成,在性能较低的机器上(如手表,耳机,车载)做离线语音合成时,往往会因为每秒需要预测的采样点太多而发生延时。

为了解决上述问题,本发明实施例提出了一种基于子带的线性预测语音合成方法,该方法实现了一种并行声码器(vocoder)技术,即将自回归声码器由每次输出一个采样点,转变为一次生成多个采样点,从而有效实现预测的加速。

图1示出了本发明实施例语音合成方法的实现流程示意图;图2示出了本发明一应用实例语音合成系统的框架示意图。

参考图1,本发明实施例语音合成方法包括:操作101,将原始语音信号按频率分解成n个子带频率信号;操作102,从所述原始语音信号提取梅尔频谱特征;操作103,根据所提取的梅尔频谱特征生成所述n个子带频率信号中每个子带频率信号的预测采样点;操作104,利用所述n个子带频率信号中每个子带频率信号的预测采样点对所述n个子带频率信号进行合成,得到对应所述原始语音信号的语音合成信号。

在操作101,子带频率(subband)是将原始信号由时间域转变为频率域,然后将其分割为若干个子频带。

具体地,语音合成系统首先将原始语音信号(wav)按频率分解成n个子带频率信号(subband wav),比如参考图2所示的语音合成系统框架,n个子带频率信号可以分别对应记作subband wav_1,subband wav_2,…,subband wav_n;其中,n的取值为大于等于2的正整数。

这里,本发明实施例语音合成系统可以应用在性能较低的电子设备上,如手表,耳机,车载等具有离线语音合成功能的机器上。

在操作102,语音合成系统从原始语音信号wav进行特征提取,得到梅尔频谱(melspectrogram)特征。

其中,梅尔频谱(mel spectrogram),即模拟人耳对高频信号的抑制,利用一组多个三角滤波器对快速傅里叶变化(sfft)后的线性谱进行处理,得到低维特征,广泛应用于语音特征提取中。

在操作103~104,语音合成系统根据所提取的梅尔频谱特征进行线性预测和非线性预测(即神经网络预测)的方式,生成所述n个子带频率信号中每个子带频率信号的预测采样点。

具体地,参考图3,操作103包括:操作1031,根据所提取的梅尔频谱特征对所述n个子带频率信号进行线性预测,得到所述n个子带频率信号中每个子带频率信号对应的线性预测值;操作1032,利用所提取的梅尔频谱特征对所述n个子带频率信号进行神经网络预测,得到所述n个子带频率信号中每个子带频率信号对应的残差;操作1033,将所述n个子带频率信号中每个子带频率信号对应的线性预测值和残差对应相加,得到所述n个子带频率信号中每个子带频率信号的预测采样点。

在操作1031,根据所提取的梅尔频谱特征对所述n个子带频率信号进行线性预测,包括:将所提取的梅尔频谱特征转换为线性谱;将所述线性谱等分成n个子带线性谱;对所述n个子带线性谱进行线性预测,得到每个子带线性谱对应的线性预测系数;根据所述线性预测系数确定所述n个子带频率信号中每个子带频率信号对应的线性预测值。

具体地,参考图2,语音合成系统首先将所提取的梅尔频谱(mel spectrogram)特征转换为线性谱(linear spectrogram);将所述线性谱(linear spectrogram)等分成n个子带线性谱,记作sub_linear_1,sub_linear_2,…,sub_linear_n;接着对所述n个子带线性谱进行线性预测,得到每个子带线性谱对应的线性预测系数(linear predictioncoefficient,LPC),记作sub_lpc_1,sub_lpc_2,…,sub_lpc_n;之后根据所述线性预测系数确定所述n个子带频率信号中每个子带频率信号对应的线性预测值,记作sub_wav_1,sub_wav_2,…,sub_wav_n。

这里,一个语音的采样值可以通过过去若干语音采样值的线性组合来逼近(最小均方误差),能够决定唯一的一组预测系数,而这个预测系数就是线性预测系数。

在操作1032,利用所提取的梅尔频谱特征对所述n个子带频率信号进行神经网络预测,包括:利用梅尔频谱样本和所述n个子带频率信号进行模型训练,得到神经网络模型;将所提取的梅尔频谱特征作为所述神经网络模型的输入,对所述n个子带频率信号进行神经网络预测。

参考图2,语音合成系统首先利用梅尔频谱样本和所述n个子带频率信号进行模型训练,得到神经网络模型(Neutral Model);将所提取的梅尔频谱特征作为所述神经网络模型的输入,对所述n个子带频率信号进行神经网络预测,输出所述n个子带频率信号中每个子带频率信号对应的残差,记作out_1,out_2,…,out_n。

在操作104,语音合成系统利用所述n个预测采样点生成全带语音合成信号(fullband wav)。具体地,先根据所述n个子带频率信号中每个子带频率信号对应的线性预测值和残差,生成n个子带语音合成信号;再将所述n个子带语音合成信号按频率合并,得到对应所述原始语音信号的语音合成信号。

本发明实施例语音合成方法,首先将原始语音信号按频率分解成n个子带频率信号,n的取值为大于等于2的正整数;接着从所述原始语音信号提取梅尔频谱特征;之后根据所提取的梅尔频谱特征生成所述n个子带频率信号中每个子带频率信号的预测采样点;最后利用所述n个子带频率信号中每个子带频率信号的预测采样点对所述n个子带频率信号进行合成,得到对应所述原始语音信号的语音合成信号。如此,本发明基于子带的线性预测语音合成技术,通过引入子带频率(subband)技术,使得语音合成系统由每次输出一个采样点,变成每次输出多个采样点,从而有效加快语音合成系统的预测速度。

同理,基于上文所述语音合成方法,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有程序,当所述程序被处理器执行时,使得所述处理器至少执行如下所述的操作步骤:操作101,将原始语音信号按频率分解成n个子带频率信号;操作102,从所述原始语音信号提取梅尔频谱特征;操作103,根据所提取的梅尔频谱特征生成所述n个子带频率信号中每个子带频率信号的预测采样点;操作104,利用所述n个子带频率信号中每个子带频率信号的预测采样点对所述n个子带频率信号进行合成,得到对应所述原始语音信号的语音合成信号。

进一步地,基于上文所述语音合成方法,本发明实施例又提供一种语音合成装置,如图4所示,该装置40包括:信号分解模块401,用于将原始语音信号按频率分解成n个子带频率信号,n的取值为大于等于2的正整数;特征提取模块402,用于从所述原始语音信号提取梅尔频谱特征;采样点生成模块403,用于根据所提取的梅尔频谱特征生成所述n个子带频率信号中每个子带频率信号的预测采样点;信号合成模块404,用于利用所述n个子带频率信号中每个子带频率信号的预测采样点对所述n个子带频率信号进行合成,得到对应所述原始语音信号的语音合成信号。

根据本发明一实施方式,采样点生成模块403具体用于,根据所提取的梅尔频谱特征对所述n个子带频率信号进行线性预测,得到所述n个子带频率信号中每个子带频率信号对应的线性预测值;利用所提取的梅尔频谱特征对所述n个子带频率信号进行神经网络预测,得到所述n个子带频率信号中每个子带频率信号对应的残差;将所述n个子带频率信号中每个子带频率信号对应的线性预测值和残差对应相加,得到所述n个子带频率信号中每个子带频率信号的预测采样点。

根据本发明一实施方式,信号合成模块404具体用于,根据所述n个子带频率信号中每个子带频率信号对应的线性预测值和残差,生成n个子带语音合成信号;将所述n个子带语音合成信号按频率合并,得到对应所述原始语音信号的语音合成信号。

根据本发明一实施方式,采样点生成模块403,还用于将所提取的梅尔频谱特征转换为线性谱;将所述线性谱等分成n个子带线性谱;对所述n个子带线性谱进行线性预测,得到每个子带线性谱对应的线性预测系数;根据所述线性预测系数确定所述n个子带频率信号中每个子带频率信号对应的线性预测值。

根据本发明一实施方式,采样点生成模块403,还用于利用梅尔频谱样本和所述n个子带频率信号进行模型训练,得到神经网络模型;将所提取的梅尔频谱特征作为所述神经网络模型的输入,对所述n个子带频率信号进行神经网络预测。

这里需要指出的是:以上对语音合成装置实施例的描述,与前述图1至3所示的方法实施例的描述是类似的,具有同前述图1至3所示的方法实施例相似的有益效果,因此不做赘述。对于本发明语音合成装置实施例中未披露的技术细节,请参照本发明前述图1至3所示的方法实施例的描述而理解,为节约篇幅,因此不再赘述。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。

在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。

上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元;既可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。

另外,在本发明各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。

本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(Read Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的介质。

或者,本发明上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、ROM、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

12页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:驾驶行程中的聊天交互展示方法、电子设备和存储介质

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!