重构语音信号的方法和装置与流程

文档序号:17933449发布日期:2019-06-15 01:07阅读:191来源:国知局
重构语音信号的方法和装置与流程

本发明涉及语音识别领域,特别涉及一种重构语音信号的方法和装置。



背景技术:

随着语音识别技术的发展,终端可以对用户语音的内容进行识别,进而可以对语音的内容做出响应。

终端一般采用麦克风阵列来采集远场空间中的声音信号。麦克风阵列利用空间相干性检测区分出各个声音信号的入射方向,对声场中的各种信号的入射方向做出估计,定位跟踪能量最强的前几个声音信号。对于每一个所跟踪的声音信号,判断其是否属于语音信号。在麦克风阵列的每个传感器(如麦克风)上施加相应的时延和增益控制,使阵列形成波束指向,使得语音信号方向上的增益尽可能大、并且在噪声信号方向上的增益尽可能小。从麦克风阵列的输出结果中估计出语音信号与噪声信号在频率特征分布上的不同,构造一个时变的滤波器,从统计的意义上进一步将语音信号与噪声信号做分离,从而将语音信号分离出来。

在实现本发明的过程中,发明人发现现有技术至少存在以下问题:

如果麦克风阵列内的传感器数量达到无穷,则将语音信号和噪声信号进行分离时,可以达到清晰的分离。但是,实际情况中,麦克风阵列内的麦克风数量是有限的,区分各个声音信号入射方向的能力也是有限的,因此语音信号和噪声信号必定会存在重叠部分。在滤除噪声信号时,一般需要对语音信号和噪声信号进行频域维纳滤波,在消除噪声的同时会对语音信号造成损伤。将损伤的语音信号输入语音识别系统asr(automaticspeechrecognition,语音识别)时,可能导致语音识别结果的准确性较低,因此,亟需一种对语音信号进行重构的方法。



技术实现要素:

为了解决现有技术的问题,本发明实施例提供了一种重构语音信号的方法和装置。所述技术方案如下:

一方面,提供了一种重构语音信号的方法,所述方法包括:

通过麦克风阵列的多个传感器进行声音采集,得到多个声音信号;

在所述多个声音信号中确定第一语音信号,所述第一语音信号为通过检测确定的语音信号;

对所述第一语音信号进行信号分离,得到第二语音信号;

将所述第二语音信号通过失真恢复模型进行重构,得到重构的语音信号;

其中,所述失真恢复模型是基于干净语音信号和失真语音信号进行训练得到。

一方面,提供了一种话音检测模型的训练方法,所述方法包括:

获取第一对抗生成网络,所述第一对抗生成网络包含初始混响滤波模型与初始话音检测模型,所述初始混响滤波模型的输出作为所述初始话音检测模型的输入;

获取多个样本声音信号,其中,所述样本声音信号至少包括干净语音信号与纯噪声信号;

基于所述多个样本声音信号对所述第一对抗生成网络中的初始混响滤波模型与初始话音检测模型进行训练,得到所述话音检测模型;

其中,所述话音检测模型用于检测声音信号对应的信号类型,所述信号类型至少包括语音信号或噪声信号。

一方面,提供了一种失真恢复模型的训练方法,所述方法包括:

获取第二对抗生成网络,所述第二对抗生成网络包含初始失真判别模型与初始失真恢复模型,所述初始失真恢复模型的输出与干净语音信号作为所述初始失真判别模型的输入;

获取多个样本声音信号,其中,所述样本声音信号至少包括干净语音信号与失真语音信号;

基于所述多个样本声音信号对所述第二对抗生成网络中的初始失真判别模型与初始失真恢复模型进行训练,得到所述失真恢复模型;

其中,所述失真恢复模型用于对第二语音信号进行重构,所述第二语音信号为进行信号分离后的语音信号。

一方面,提供了一种重构语音信号的装置,所述装置包括:

第一获取模块,用于通过麦克风阵列的多个传感器进行声音采集,得到多个声音信号;

确定模块,用于在所述多个声音信号中确定第一语音信号,所述第一语音信号为通过检测确定的语音信号;

分离模块,用于对所述第一语音信号进行信号分离,得到第二语音信号;

重构模块,用于将所述第二语音信号通过失真恢复模型进行重构,得到重构的语音信号;

其中,所述失真恢复模型是基于干净语音信号和失真语音信号进行训练得到。

一方面,提供了一种训练话音检测模型的装置,所述装置包括:

第一获取模块,用于获取第一对抗生成网络,所述第一对抗生成网络包含初始混响滤波模型与初始话音检测模型,所述初始混响滤波模型的输出作为所述初始话音检测模型的输入;

第二获取模块,用于获取多个样本声音信号,其中,所述样本声音信号至少包括干净语音信号与纯噪声信号;

训练模块,用于基于所述多个样本声音信号对所述第一对抗生成网络中的初始混响滤波模型与初始话音检测模型进行训练,得到所述话音检测模型;

其中,所述话音检测模型用于检测声音信号对应的信号类型,所述信号类型为语音信号或噪声信号。

一方面,提供了一种训练失真恢复模型的装置,所述装置包括:

第一获取模块,用于获取第二对抗生成网络,所述第二对抗生成网络包含初始失真判别模型与初始失真恢复模型,所述初始失真恢复模型的输出与干净语音信号作为所述初始失真判别模型的输入;

第二获取模块,用于获取多个样本声音信号,其中,所述样本声音信号至少包括干净语音信号与失真语音信号;

训练模块,用于基于所述多个样本声音信号对所述第二对抗生成网络中的初始失真判别模型与初始失真恢复模型进行训练,得到所述失真恢复模型;

其中,所述失真恢复模型用于对第二语音信号进行重构,所述第二语音信号为进行信号分离后的语音信号。

一方面,提供了一种终端,所述终端包括处理器和存储器,所述存储器中存储有至少一条指令,所述指令由所述处理器加载并执行以实现上述重构语音信号的方法;或,所述指令由所述处理器加载并执行以实现上述话音检测模型的训练方法;或,所述指令由所述处理器加载并执行以实现上述失真恢复模型的训练方法。

一方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令,所述指令由处理器加载并执行以实现上述重构语音信号的方法;或,所述指令由所述处理器加载并执行以实现上述话音检测模型的训练方法;或,所述指令由所述处理器加载并执行以实现上述失真恢复模型的训练方法。

本发明实施例提供的技术方案带来的有益效果是:

本发明实施例中,终端可以通过麦克风阵列的多个传感器进行声音采集,得到多个声音信号,在多个声音信号中确定第一语音信号,对第一语音信号进行信号分离,得到第二语音信号,然后,将第二语音信号通过失真恢复模型进行重构,得到重构的语音信号。通过失真恢复模型得到的重构的语音信号,可以与干净语音信号高度接近,即可以存在比较少的失真。这样,将重构的语音信号输入语音识别系统时,可以提高语音识别结果的准确性。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明实施例提供的一种麦克风线阵列的示意图;

图2是本发明实施例提供的一种麦克风圆阵列的示意图;

图3是本发明实施例提供的一种话音检测模型的训练方法流程图;

图4是本发明实施例提供的一种训练话音检测模型的示意图;

图5是本发明实施例提供的一种话音检测模型的训练方法流程图;

图6是本发明实施例提供的一种失真恢复模型的训练方法流程图;

图7是本发明实施例提供的一种训练失真恢复模型的示意图;

图8是本发明实施例提供的一种失真恢复模型的训练方法流程图;

图9是本发明实施例提供的一种重构语音信号的方法流程图;

图10是本发明实施例提供的一种重构语音信号的示意图;

图11是本发明实施例提供的一种终端与用户交互的场景示意图;

图12是本发明实施例提供的一种重构语音信号的装置结构示意图;

图13是本发明实施例提供的一种重构语音信号的装置结构示意图;

图14是本发明实施例提供的一种重构语音信号的装置结构示意图;

图15是本发明实施例提供的一种重构语音信号的装置结构示意图;

图16是本发明实施例提供的一种训练话音检测模型的装置结构示意图;

图17是本发明实施例提供的一种训练失真恢复模型的装置结构示意图;

图18是本发明实施例提供的一种终端的结构示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。

本发明实施例提供了一种重构语音信号的方法,该方法的执行主体可以为终端。其中,终端可以是智能手机、平板电脑、智能音箱等可以采集到声音信号并具有处理能力的设备。

终端上可以安装有麦克风阵列对远场空间的声音信号进行采集。麦克风阵列具有波束指向能力,可以检测各个方向的声音信号,并且可以对特定入射方向上的声音信号进行幅度增强。麦克风阵列一般由一定数量的传感器(本实施例以传感器为麦克风为例)按照一定的几何规律排列而成,实际中麦克风阵列一般有两种阵列布置形式:线阵列和圆阵列。该方法并不局限于任何特定形式的阵列结构,此处不作限定。

下面对麦克风阵列进行具体的介绍:

图1所示为麦克风阵列为线阵列时的结构示意图,n个麦克风以d为间隔等间距排列成一条直线,d的取值要求满足如下数学关系:

其中,λ表示声音信号中最高频率成分所对应的波长,n的取值主要受到终端物理尺寸的限制,阵列的总长度为n×d。

图2所示为麦克风阵列为圆阵列时的结构示意图,n个麦克风在圆周上等间隔排列,有时圆心处也会安置有一颗麦克风。无论麦克风阵列采用何种形式,麦克风阵列都是通过空间采样在声音信号的传播路径上,检测出同一时刻下声音信号在各个麦克风上的声压分布,通过这一压力分布的变化来检测出声音信号的入射方向,并且对特定入射方向上的声音信号进行幅度加强。

下面对本实施例中所使用的名词进行介绍:

干净语音信号:干净语音信号是在安静的环境下采集的语音信号。每个人的发音习惯不尽相同,干净语音信号可以是包含有各种发音习惯的语音信号,包括音色、音高、语言种类等差异。

纯噪声信号:纯噪声信号是不包含任何语音信号的声音信号,可以是自然环境下采集的声音信号。

该方法涉及话音检测模型与失真恢复模型,话音检测模型与失真恢复模型都可以由神经网络模型构成,在使用该方法进行语音信号重构之前,需要分别对话音检测模型与失真恢复模型进行训练。

话音检测模型可以由混响滤波模型与话音检测模型构成的对抗生成网络训练得到。混响滤波模型与话音检测模型进行博弈,基于混响滤波模型与话音检测模型得到的结果,计算损失函数。对混响滤波模型的调整会使混响滤波模型的损失代价函数减小而话音检测模型的损失代价函数增大,对话音检测模型的调整会使话音检测模型的损失代价函数减小而混响滤波模型的损失代价函数增大,多次调整后可以得到收敛的损失函数,即可得到训练完成后的话音检测模型。

失真恢复模型可以由失真判别模型与失真恢复模型构成的对抗生成网络训练得到。失真判别模型与失真恢复模型进行博弈,基于失真判别模型与失真恢复模型得到的结果,计算损失函数。对失真恢复模型的调整会使失真恢复模型的损失代价函数减小而失真判别模型的代价函数增大,对失真判别模型的调整会使失真判别模型的代价函数减小而失真恢复模型的代价函数增大,多次调整后可以得到收敛的损失函数,即可得到训练完成后的失真恢复模型。

具体的训练过程可以如下:

图3所示为话音检测模型的训练方法流程图,图4所示为训练话音检测模型的示意图。结合图3与图4,对话音检测模型进行训练的处理流程可以如下:

301、获取第一对抗生成网络。

其中,第一对抗生成网络包含初始混响滤波模型与初始话音检测模型,初始混响滤波模型的输出作为初始话音检测模型的输入。混响滤波模型可以是线性的滤波器,也可以引入非线性算子而形成神经网络模型,用于基于输入的声音信号,生成混响的声音信号,以模拟真实场景中的声学混响;话音检测模型可以是神经网络模型,用于检测输入的声音信号的信号类型。信号类型可以是语音信号或噪声信号,即话音检测模型可以用于判断输入的声音信号是语音信号,还是噪声信号。

在实施中,混响滤波模型与话音检测模型构成一个对抗生成网络,在训练的过程中,对混响滤波器训练的目的是,让混响滤波模型所输出的混响的声音信号无法被话音检测模型正确检测,也即是,如果混响滤波器输出混响的干净语音信号,则话音检测模型将其检测为噪声信号;而对话音检测模型训练的目的是,让话音检测模型能够正确检测出混响的声音信号的信号类型,也即是,如果混响滤波器输出混响的干净语音信号,则话音检测模型将其检测为语音信号。技术人员可以在任一设备中建立初始混响滤波模型与初始话音检测模型。

302、获取多个样本声音信号。

其中,样本声音信号至少包括干净语音信号与纯噪声信号。这样训练出来的话音检测模型,即使用户具有较为特殊的发音习惯,话音检测模型也能判断出对应的语音信号,提高检测信号类型的准确性。

在实施中,任一设备可以获取到多个样本声音信号,并且,每个样本声音信号可以带有相应的标识,使得设备能够获取到哪个是干净语音信号,哪个是纯噪声信号。

303、基于多个样本声音信号对第一对抗生成网络中的初始混响滤波模型与初始话音检测模型进行训练,得到话音检测模型。

在实施中,初始混响滤波模型具有初始的模型参数,将多个样本声音信号输入后,可以输出多个初步的混响的样本声音信号。同样,初始话音检测模型也具有初始的模型参数,可以对输入的多个混响的样本声音信号,初步判断出哪个是语音信号,哪个是噪声信号。进而,可以根据初始话音检测模型检测的结果与实际应该得到的结果,对初始混响滤波模型与初始话音检测模型的模型参数进行调整。

图5所示为话音检测模型的训练方法流程图,具体的训练步骤可以如下:

3031、依次将多个样本声音信号输入初始混响滤波模型,输出多个混响的样本声音信号。

其中,多个混响的样本声音信号包括多个混响的干净语音信号与多个混响的纯噪声信号。

在实施中,混响滤波模型可以是有限冲激响应滤波器,该滤波器的阶数可以根据预设的最长房间冲激响应得到,具体的,计算滤波器阶数的公式可以如下:

rirorder=ω×tlmax(2)

其中,rirorder为滤波器的阶数,ω为音频采样率,tlmax为最长房间冲激响应。一般来说,音频采样率可以取16000hz,最长房间冲激响应可以取0.1s,通过上述公式计算得到,该滤波器的阶数为1600阶。

设备可以将多个样本声音信号,依次输入初始混响滤波模型,对应于每个样本声音信号,输出对应的混响的样本声音信号。由于设备能够获知哪个样本声音信号是干净语音信号,哪个样本声音信号是纯噪声信号,在得到对应的混响的样本声音信号时,也能够获知哪个是混响的干净语音信号,哪个是混响的纯噪声信号。进而,设备可以统计得到混响的干净语音信号在所有混响的样本声音信号中的概率分布、混响的纯噪声信号在所有混响的样本声音信号中的概率分布。

3032、将多个混响的样本声音信号,输入初始话音检测模型,输出每个混响的样本声音信号对应的信号类型。

在实施中,设备可以将混响的样本声音信号,分别输入初始话音检测模型,输出得到每个混响的样本声音信号对应的信号类型,即对每个混响的样本声音信号,分别判断是语音信号,还是噪声信号。

3033、基于多个混响的样本声音信号与每个混响的样本声音信号对应的信号类型,对初始混响滤波模型与初始话音检测模型的模型参数进行调整,得到话音检测模型。

在实施中,设备可以根据每个混响的样本声音信号实际的信号类型,以及经过初始话音检测模型输出得到的信号类型,获取符合“实际为语音信号、被检测为语音信号”的混响的样本声音信号、符合“实际为噪声信号、被检测为语音信号”的混响的样本声音信号。然后,设备可以统计得到,符合“实际为语音信号、被检测为语音信号”的混响的样本声音信号的概率,以及符合“实际为噪声信号、被检测为语音信号”的混响的样本声音信号的概率。

终端可以根据上述混响的干净语音信号的概率分布、混响的纯噪声信号的概率分布、符合“实际为语音信号、被检测为语音信号”的混响的样本声音信号的概率、符合“实际为噪声信号、被检测为语音信号”的混响的样本声音信号的概率,通过下述公式计算损失函数:

其中,x表示混响的干净语音信号,n表示混响的纯噪声信号,prir_data(x)表示混响的干净语音信号的概率分布,prir_data(n)表示混响的纯噪声信号的概率分布,vad(x)表示符合“实际为语音信号、被检测为语音信号”的混响的样本声音信号的概率,vad(rir(n))表示符合“实际为噪声信号、被检测为语音信号”的混响的样本声音信号的概率,v(vad,rir)表示损失函数。

然后,设备可以计算上述损失函数的梯度信息,并且可以根据梯度信息对初始混响滤波模型与初始话音检测模型的模型参数进行调整。设备还可以获取其他的样本声音信号,通过上述过程,继续对混响滤波模型与话音检测模型的模型参数进行调整,具体过程此处不再赘述。

对混响滤波模型的模型参数进行调整,可以使得话音检测模型检测结果的错误率增大,即vad(x)减小、vad(rir(n))增大;对话音检测模型的模型参数进行调整,可以使得话音检测模型检测结果的正确率增大,即vad(x)增大、vad(rir(n))减小。在训练过程中,对初始混响滤波模型与初始话音检测模型的模型参数进行调整,直到v(vad,rir)的绝对值达到最小值时,可以结束训练,将调整后的话音检测模型作为话音检测模型。

图6所示为失真恢复模型的训练方法流程图,图7所示为训练失真恢复模型的示意图。结合图6与图7,对失真恢复模型进行训练的处理流程可以如下:

601、获取第二对抗生成网络。

其中,第二对抗生成网络包含初始失真判别模型与初始失真恢复模型,初始失真恢复模型的输出与干净语音信号作为初始失真判别模型的输入。失真判别模型可以是神经网络模型,用于检测输入的声音信号是干净语音信号,还是失真语音信号,即判断输入的声音信号是否存在失真;失真恢复模型可以是神经网络模型,用于对失真的声音信号进行重构。

在实施中,失真判别模型与失真恢复模型构成一个对抗生成网络,在训练的过程中,对失真判别模型训练的目的是,让失真判别模型能够准确地判断哪个声音信号是干净语音信号,哪个声音信号是失真语音信号;而对失真恢复模型训练的目的是,让失真恢复模型所输出的重构的语音信号无法被失真判别模型准确地判断为失真语音信号。技术人员可以在任一设备中建立初始失真判别模型与初始失真恢复模型。

602、获取多个样本声音信号。

其中,样本声音信号至少包括干净语音信号与失真语音信号。这样训练出来的失真恢复模型,即使用户具有较为特殊的发音习惯,失真恢复模型也能重构出对应的语音信号,提高重构语音信号的准确性。

在实施中,麦克风阵列可以利用空间相干性检测周围环境中各个声音信号的入射方向,由于可能存在多个方向的声音信号,麦克风阵列只跟踪其中信号强度最大的前m个声音信号,并将入射方位角记为dm。m的取值可以与麦克风的数目成正比,例如,当麦克风的数目为6个时,m的取值最大可以为6;当麦克风的数目为8个时,m的取值最大可以为8。

然后,设备可以对m个声音信号进行检测,判断哪个是语音信号,哪个是噪声信号。在m个声音信号中,如果包含有唯一的语音信号,则可以将该语音信号作为第一语音信号;如果包含有不止一个语音信号,则可以判断得到信号强度最大的语音信号,作为第一语音信号;如果检测到不包含有语音信号,即采集到的所有声音信号都为噪声信号,则可以认为当前环境中不存在可用的语音信号,不进行后续处理。在确定下第一语音信号后,可以将记录下来的其他声音信号的信号频谱,通过加权求和的方法,生成噪声模板。

经验性的,m的取值一般为2,即麦克风阵列只跟踪其中信号强度最大的前2个声音信号。以跟踪其中信号强度最大的前2个声音信号为例,通过对麦克风阵列中的各个传感器施加适当的时延和增益,可以使得阵列在d=dm的方向上的采集到的声音信号最大、同时对其他方向上的声音信号保持最小,将采集到的2个声音信号输入上述训练完成后的话音检测模型。然后,话音检测模型可以检测输入的2个声音信号的信号类型。如果其中一个声音信号是语音信号,而另一个声音信号是噪声信号,则将噪声信号的信号频谱记录下来,作为噪声模板;如果两个声音信号都是语音信号,则将信号强度较小的声音信号的信号频谱记录下来,作为噪声模板;如果两个声音信号都是噪声信号,则可以认为当前环境中不存在可用的语音信号,不进行后续处理。

第二语音信号为第一语音信号通过滤波的方法得到的语音信号。如果在上述过程中确定下语音信号与噪声模板,则可以通过频域维纳滤波的方法,通过滤波器基于噪声模板的频谱对语音信号的频谱进行滤波处理,得到分离后的语音信号(即第二语音信号),该分离后的语音信号的频谱实际上是噪声模板和语音信号的频谱之差。当然,在实际应用中,还可以控制信号分离的程度,以减少对语音信号的损伤。例如,实际中频域维纳滤波可以简化为频域谱减操作,用公式表示如下:

y=max(0,|x|-α|n|)(4)

其中,y为分离后的语音信号,x为未分离的语音信号,n为噪声模板。α表示信号分离算法的参数,其取值控制着信号分离的程度,分离程度正比于语音信号的损伤程度。经验性的,α一般取值为1。

麦克风阵列还可以采集多个时刻的声音信号,经过上述过程,得到多个分离后的语音信号,具体过程此处不再赘述。然后,设备可以将上述多个干净语音信号与多个失真语音信号,作为样本声音信号。在失真语音信号与干净语音信号构成的样本空间中,设备可以统计得到失真语音信号的概率分布、干净语音信号的概率分布。

603、基于多个样本声音信号对第二对抗生成网络中的初始失真判别模型与初始失真恢复模型进行训练,得到失真恢复模型。

在实施中,初始失真判别模型具有初始的模型参数,可以对输入的各个声音信号,初步判断出哪个是干净语音信号,哪个是失真语音信号。同样,初始失真恢复模型也具有初始的模型参数,可以对输入的分离后的语音信号进行重构,输出重构的语音信号,一般来说,初始失真恢复模型输出的重构的语音信号存在失真的概率较大,是失真语音信号。进而,可以根据初始失真判别模型检测的结果与实际应该得到的结果,对初始失真判别模型与初始失真恢复模型的模型参数进行调整。

图8所示为失真恢复模型的训练方法流程图,具体的训练步骤可以如下:

6031、依次将多个失真语音信号输入初始失真恢复模型,输出多个重构的语音信号。

在实施中,设备可以将多个失真语音信号,依次输入初始失真恢复模型,输出得到每个失真语音信号对应的重构的语音信号。

6032、将多个重构的语音信号与多个干净语音信号,输入初始失真判别模型,分别确定每个重构的语音信号与每个干净语音信号是否为干净语音信号,作为每个重构的语音信号与每个干净语音信号对应的检测结果。

在实施中,终端可以将上述多个干净语音信号与多个重构的语音信号,输入初始失真判别模型,分别检测每个样本声音信号是干净语音信号,还是重构的语音信号。进而,可以得到每个样本声音信号对应的检测结果。

6033、基于多个失真语音信号、多个干净语音信号以及每个重构的语音信号与每个干净语音信号对应的检测结果,对初始失真判别模型与初始失真恢复模型的模型参数进行调整,得到失真恢复模型。

在实施中,终端可以根据每个样本声音信号实际的情况,以及上述过程得到的每个样本声音信号对应的检测结果,获取符合“实际为干净语音信号、被检测为干净语音信号”的样本声音信号、符合“实际为重构的语音信号、被检测为干净语音信号”的样本声音信号。然后,终端可以统计得到,符合“实际为干净语音信号、被检测为干净语音信号”的样本声音信号的概率,以及符合“实际为重构的语音信号、被检测为干净语音信号”的样本声音信号的概率。

终端可以根据上述失真语音信号的概率分布、干净语音信号的概率分布、符合“实际为干净语音信号、被检测为干净语音信号”的样本声音信号的概率、符合“实际为重构的语音信号、被检测为干净语音信号”的样本声音信号的概率,通过下述公式计算损失函数:

其中,x表示干净语音信号,s表示失真语音信号,pclean_speech(x)表示干净语音信号的概率分布,ps(s)表示失真语音信号的概率分布,d(x)表示符合“实际为干净语音信号、被检测为干净语音信号”的样本声音信号的概率,d(g(s))表示符合“实际为重构的语音信号、被检测为干净语音信号”的样本声音信号的概率,v(d,g)表示损失函数。

然后,设备可以计算上述损失函数的梯度信息,并且可以根据梯度信息对初始失真判别模型与初始失真恢复模型的模型参数进行调整。设备还可以获取其他的样本声音信号,通过上述过程,继续对失真判别模型与失真恢复模型的模型参数进行调整,具体过程此处不再赘述。

对失真判别模型的模型参数进行调整,可以使得失真判别模型检测结果的正确率增大,即d(x)增大、d(g(s))减小;对失真恢复模型的模型参数进行调整,可以使得失真判别模型检测结果的错误率增大,即d(x)减小、d(g(s))增大。在训练过程中,对初始失真判别模型与初始失真恢复模型的模型参数进行调整,直到损失函数v(d,g)的绝对值达到最小时,可以结束训练,将调整后的失真恢复模型作为失真恢复模型。

上述模型在训练完成后,可以用在本发明实施例提供的重构语音信号的方法中。图9所示为重构语音信号的方法流程图,图10所示为重构语音信号的示意图。结合图9与图10,该方法的处理流程可以包括如下的步骤:

901、终端通过麦克风阵列的多个传感器进行声音采集,得到多个声音信号。

在实施中,麦克风阵列可以利用空间相干性检测周围环境中各个声音信号的入射方向,由于可能存在多个方向的声音信号,麦克风阵列只跟踪其中信号强度最大的前m个声音信号,并将入射方位角记为dm。m的取值可以与麦克风的数目成正比,例如,当麦克风的数目为6个时,m的取值最大可以为6;当麦克风的数目为8个时,m的取值最大可以为8。通过对麦克风阵列中的各个传感器施加适当的时延和增益,可以使得阵列在d=dm的方向上的采集到的声音信号最大、同时对其他方向上的声音信号保持最小,将采集到的m个声音信号用作后续处理。

经验性的,m的取值一般为2,即麦克风阵列只跟踪其中信号强度最大的前2个声音信号,将采集到的2个声音信号用作后续处理。

902、终端在多个声音信号中确定第一语音信号。

其中,第一语音信号为通过检测确定的语音信号。

在实施中,终端可以跟踪上述m个声音信号,记录每个声音信号对应的信号频谱。然后,终端可以在每个声音信号中,根据信号频谱检测得到第一语音信号。

可选的,声音信号中可能存在多个语音信号,可以根据一定的规则来确定第一语音信号,相应的处理可以如下:对多个声音信号进行检测;如果在多个声音信号中包含有一个语音信号,则将语音信号作为第一语音信号;如果在多个声音信号中包含有两个以上的语音信号,则确定信号强度最大的语音信号,将信号强度最大的语音信号作为第一语音信号。

在实施中,终端可以根据麦克风阵列采集到不同入射方向的声音信号,然后,判断声音信号中是否包含有语音信号,具体的方法可以是根据信号频谱的平稳型来判断,也可以是将每个声音信号分别输入上述训练完成后的话音检测模型进行检测,此处不作限定。上述m个声音信号中,如果包含有唯一的语音信号,则可以将该语音信号作为第一语音信号;如果包含有不止一个语音信号,则可以判断得到信号强度最大的语音信号,作为第一语音信号;如果检测到不包含有语音信号,即采集到的所有声音信号都为噪声信号,则可以认为当前环境中不存在可用的语音信号,不进行后续处理。这样,当采集到不止一个语音信号时,可以只对其中一个语音信号进行识别,可以减少其他语音信号的影响,可以提高语音识别结果的准确性。

示例性的,当m=2时,如果其中一个声音信号是语音信号,而另一个声音信号是噪声信号,则将该语音信号作为第一语音信号;如果两个声音信号都是语音信号,则将信号强度较大的语音信号,作为第一语音信号;如果两个声音信号都是噪声信号,则可以认为当前环境中不存在可用的语音信号,不进行后续处理。

可选的,终端可以将多个声音信号输入话音检测模型,输出多个声音信号的信号类型,进而判断每个声音信号是否为语音信号,确定第一语音信号。具体的确定过程与上述过程相同,此处不再赘述。

在实施中,话音检测模型可以是神经网络模型,通过上述方法训练得到,利用话音检测模型可以提高判断声音信号的信号类型的准确性。

可选的,终端可以基于多个声音信号中除第一语音信号以外的至少一个声音信号的信号频谱,生成多个声音信号的噪音模板。

在实施中,终端在确定下第一语音信号后,可以将记录下来的其他声音信号的信号频谱,通过加权求和的方法,生成噪声模板。当m=2时,在确定下第一语音信号后,可以直接将余下的声音信号的信号频谱,作为噪音模板。这样,利用余下的声音信号生成噪声模板,可以更接近实际情况中其他声音对语音信号造成的影响,提高分离语音信号的准确性。

903、终端对第一语音信号进行信号分离,得到第二语音信号。

其中,第二语音信号为第一语音信号通过滤波的方法得到的语音信号。

在实施中,为了减小噪声信号对语音信号的干扰,终端可以对第一语音信号进行信号分离,得到第二语音信号,具体方法可以是通过滤波器直接对第一语音信号进行信号分离,也可以是基于噪声模板对第一语音信号进行信号分离,此处不作限定。

可选的,终端可以基于噪声模板,对第一语音信号进行信号分离,得到第二语音信号。

在实施中,如果在上述过程中确定下语音信号与噪声模板,则可以通过频域维纳滤波的方法,通过滤波器基于噪声模板的频谱对语音信号的频谱进行滤波处理,得到分离后的语音信号(即第二语音信号),该分离后的语音信号的频谱实际上是噪声模板和语音信号的频谱之差。当然,在实际应用中,还可以控制信号分离的程度,以减少对语音信号的损伤。例如,实际中频域维纳滤波可以简化为频域谱减操作,用公式表示如下:

y=max(0,|x|-α|n|)(6)

其中,y为分离后的语音信号,x为未分离的语音信号,n为噪声模板。α表示信号分离算法的参数,其取值控制着信号分离的程度,分离程度正比于语音信号的损伤程度。经验性的,α一般取值为1。

904、终端将第二语音信号通过失真恢复模型进行重构,得到重构的语音信号。

在实施中,在得到第二语音信号后,终端可以将其输入失真恢复模型,输出得到重构的语音信号。

进而,终端可以将重构的语音信号输入语音识别系统,将语音的内容识别出来,并且可以根据语音的内容进行相应的处理,如播放音乐、搜索天气预报等,图11所示为终端与用户交互的场景示意图。

本发明实施例中,终端可以通过麦克风阵列的多个传感器进行声音采集,得到多个声音信号,在多个声音信号中确定第一语音信号,对第一语音信号进行信号分离,得到第二语音信号,然后,将第二语音信号通过失真恢复模型进行重构,得到重构的语音信号。通过失真恢复模型得到的重构的语音信号,可以与干净语音信号高度接近,即可以存在比较少的失真。这样,将重构的语音信号输入语音识别系统时,可以提高语音识别结果的准确性。

基于相同的技术构思,本发明实施例还提供了一种重构语音信号的装置,图12所示为重构语音信号的装置结构示意图,该装置包括:

第一获取模块1201,用于通过麦克风阵列的多个传感器进行声音采集,得到多个声音信号;

确定模块1202,用于在所述多个声音信号中确定第一语音信号,所述第一语音信号为通过检测确定的语音信号;

分离模块1203,用于对所述第一语音信号进行信号分离,得到第二语音信号;

重构模块1204,用于将所述第二语音信号通过失真恢复模型进行重构,得到重构的语音信号;

其中,所述失真恢复模型是基于干净语音信号和失真语音信号进行训练得到。

可选的,图13所示为重构语音信号的装置结构示意图,所述装置还包括:

生成模块1205,用于基于所述多个声音信号中除所述第一语音信号以外的至少一个声音信号的信号频谱,生成所述多个声音信号的噪音模板;

所述分离模块1203用于:

基于所述噪声模板,对所述第一语音信号进行信号分离,得到第二语音信号。

可选的,所述确定模块1202用于:

对所述多个声音信号进行检测;

如果在所述多个声音信号中包含有一个语音信号,则将所述语音信号,作为第一语音信号;

如果在所述多个声音信号中包含有两个以上的语音信号,则确定信号强度最大的语音信号,将所述信号强度最大的语音信号,作为第一语音信号。

可选的,所述确定模块1202用于:

将所述多个声音信号输入话音检测模型,输出所述多个声音信号的信号类型;

其中,所述话音检测模型是基于干净语音信号与纯噪声信号进行训练得到,所述信号类型为语音信号或噪声信号。

可选的,图14所示为重构语音信号的装置结构示意图,所述装置还包括:

第二获取模块1206,用于获取第一对抗生成网络,所述第一对抗生成网络包含初始混响滤波模型与初始话音检测模型,所述初始混响滤波模型的输出作为所述初始话音检测模型的输入;

第三获取模块1207,用于获取多个样本声音信号,其中,所述样本声音信号至少包括干净语音信号与纯噪声信号;

第一训练模块1208,用于基于所述多个样本声音信号对所述第一对抗生成网络中的初始混响滤波模型与初始话音检测模型进行训练,得到所述话音检测模型。

可选的,所述第一训练模块1208用于:

依次将所述多个样本声音信号输入所述初始混响滤波模型,输出多个混响的样本声音信号,其中,所述多个混响的样本声音信号包括多个混响的干净语音信号与多个混响的纯噪声信号;

将所述多个混响的样本声音信号,输入所述初始话音检测模型,输出每个混响的样本声音信号对应的信号类型;

基于所述多个混响的样本声音信号与所述每个混响的样本声音信号对应的信号类型,对所述初始混响滤波模型与所述初始话音检测模型的模型参数进行调整,得到所述话音检测模型。

可选的,图15所示为重构语音信号的装置结构示意图,所述装置还包括:

第四获取模块1209,用于获取第二对抗生成网络,所述第二对抗生成网络包含初始失真判别模型与初始失真恢复模型,所述初始失真恢复模型的输出与干净语音信号作为所述初始失真判别模型的输入;

第五获取模块1210,用于获取多个样本声音信号,其中,所述样本声音信号至少包括干净语音信号与失真语音信号;

第二训练模块1211,用于基于所述多个样本声音信号对所述第二对抗生成网络中的初始失真判别模型与初始失真恢复模型进行训练,得到所述失真恢复模型。

可选的,所述第二训练模块1211用于:

依次将多个失真语音信号输入所述初始失真恢复模型,输出多个重构的语音信号;

将所述多个重构的语音信号与多个干净语音信号,输入所述初始失真判别模型,分别确定每个重构的语音信号与每个干净语音信号是否为干净语音信号,作为每个重构的语音信号与每个干净语音信号对应的检测结果;

基于所述多个失真语音信号、所述多个干净语音信号以及所述每个重构的语音信号与每个干净语音信号对应的检测结果,对所述初始失真判别模型与所述初始失真恢复模型的模型参数进行调整,得到所述失真恢复模型。

基于相同的技术构思,本发明实施例还提供了一种训练话音检测模型的装置,图16所示为训练话音检测模型的装置结构示意图,该装置包括:

第一获取模块1601,用于获取第一对抗生成网络,所述第一对抗生成网络包含初始混响滤波模型与初始话音检测模型,所述初始混响滤波模型的输出作为所述初始话音检测模型的输入;

第二获取模块1602,用于获取多个样本声音信号,其中,所述样本声音信号至少包括干净语音信号与纯噪声信号;

训练模块1603,用于基于所述多个样本声音信号对所述第一对抗生成网络中的初始混响滤波模型与初始话音检测模型进行训练,得到所述话音检测模型;

其中,所述话音检测模型用于检测声音信号对应的信号类型,所述信号类型为语音信号或噪声信号。

可选的,所述训练模块1603用于:

依次将所述多个样本声音信号输入所述初始混响滤波模型,输出多个混响的样本声音信号,其中,所述多个混响的样本声音信号包括多个混响的干净语音信号与多个混响的纯噪声信号;

将所述多个混响的样本声音信号,输入所述初始话音检测模型,输出每个混响的样本声音信号对应的信号类型;

基于所述多个混响的样本声音信号对应的信号类型与所述每个混响的样本声音信号对应的信号类型,对所述初始混响滤波模型与所述初始话音检测模型的模型参数进行调整,得到所述话音检测模型。

基于相同的技术构思,本发明实施例还提供了一种训练失真恢复模型的装置,图17所示为训练失真恢复模型的装置结构示意图,该装置包括:

第一获取模块1701,用于获取第二对抗生成网络,所述第二对抗生成网络包含初始失真判别模型与初始失真恢复模型,所述初始失真恢复模型的输出与干净语音信号作为所述初始失真判别模型的输入;

第二获取模块1702,用于获取多个样本声音信号,其中,所述样本声音信号至少包括干净语音信号与失真语音信号;

训练模块1703,用于基于所述多个样本声音信号对所述第二对抗生成网络中的初始失真判别模型与初始失真恢复模型进行训练,得到所述失真恢复模型;

其中,所述失真恢复模型用于对第二语音信号进行重构,所述第二语音信号为进行信号分离后的语音信号。

可选的,所述训练模块1703用于:

依次将多个第二语音信号输入所述初始失真恢复模型,输出多个重构的语音信号;

将所述多个重构的语音信号与多个干净语音信号,输入所述初始失真判别模型,分别确定每个重构的语音信号与每个干净语音信号是否为干净语音信号,作为每个重构的语音信号与每个干净语音信号对应的检测结果;

基于所述多个失真语音信号、所述多个干净语音信号以及所述每个重构的语音信号与每个干净语音信号对应的检测结果,对所述初始的失真判别模型与所述初始的失真恢复模型的模型参数进行调整,得到所述失真恢复模型。

上述发明实施例中,终端可以通过麦克风阵列的多个传感器进行声音采集,得到多个声音信号,在多个声音信号中确定第一语音信号,对第一语音信号进行信号分离,得到第二语音信号,然后,将第二语音信号通过失真恢复模型进行重构,得到重构的语音信号。通过失真恢复模型得到的重构的语音信号,可以与干净语音信号高度接近,即可以存在比较少的失真。这样,将重构的语音信号输入语音识别系统时,可以提高语音识别结果的准确性。

需要说明的是:上述实施例提供的重构语音信号的装置在重构语音信号时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将终端的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的重构语音信号的装置与重构语音信号的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。

图18示出了本发明一个示例性实施例提供的终端1800的结构框图。该终端1800可以是便携式移动终端,比如:智能手机、平板电脑、mp3播放器(movingpictureexpertsgroupaudiolayeriii,动态影像专家压缩标准音频层面3)、mp4(movingpictureexpertsgroupaudiolayeriv,动态影像专家压缩标准音频层面4)播放器、智能音箱。终端1800还可能被称为用户设备、便携式终端等其他名称。

通常,终端1800包括有:处理器1801和存储器1802。

处理器1801可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器1801可以采用dsp(digitalsignalprocessing,数字信号处理)、fpga(field-programmablegatearray,现场可编程门阵列)、pla(programmablelogicarray,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器1801也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称cpu(centralprocessingunit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器1801可以在集成有gpu(graphicsprocessingunit,图像处理器),gpu用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器1801还可以包括ai(artificialintelligence,人工智能)处理器,该ai处理器用于处理有关机器学习的计算操作。

存储器1802可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是有形的和非暂态的。存储器1802还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1802中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器1801所执行以实现本申请中提供的重构语音信号的方法。

在一些实施例中,终端1800还可选包括有:外围设备接口1803和至少一个外围设备。具体地,外围设备包括:射频电路1804、触摸显示屏1805、摄像头1806、音频电路1807、定位组件1808和电源1809中的至少一种。

外围设备接口1803可被用于将i/o(input/output,输入/输出)相关的至少一个外围设备连接到处理器1801和存储器1802。在一些实施例中,处理器1801、存储器1802和外围设备接口1803被集成在同一芯片或电路板上;在一些其他实施例中,处理器1801、存储器1802和外围设备接口1803中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。

射频电路1804用于接收和发射rf(radiofrequency,射频)信号,也称电磁信号。射频电路1804通过电磁信号与通信网络以及其他通信设备进行通信。射频电路1804将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路1804包括:天线系统、rf收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路1804可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:万维网、城域网、内联网、各代移动通信网络(2g、3g、4g及5g)、无线局域网和/或wifi(wirelessfidelity,无线保真)网络。在一些实施例中,射频电路1804还可以包括nfc(nearfieldcommunication,近距离无线通信)有关的电路,本申请对此不加以限定。

触摸显示屏1805用于显示ui(userinterface,用户界面)。该ui可以包括图形、文本、图标、视频及其它们的任意组合。触摸显示屏1805还具有采集在触摸显示屏1805的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器1801进行处理。触摸显示屏1805用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,触摸显示屏1805可以为一个,设置终端1800的前面板;在另一些实施例中,触摸显示屏1805可以为至少两个,分别设置在终端1800的不同表面或呈折叠设计;在再一些实施例中,触摸显示屏1805可以是柔性显示屏,设置在终端1800的弯曲表面上或折叠面上。甚至,触摸显示屏1805还可以设置成非矩形的不规则图形,也即异形屏。触摸显示屏1805可以采用lcd(liquidcrystaldisplay,液晶显示器)、oled(organiclight-emittingdiode,有机发光二极管)等材质制备。

摄像头组件1806用于采集图像或视频。可选地,摄像头组件1806包括前置摄像头和后置摄像头。通常,前置摄像头用于实现视频通话或自拍,后置摄像头用于实现照片或视频的拍摄。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能,主摄像头和广角摄像头融合实现全景拍摄以及vr(virtualreality,虚拟现实)拍摄功能。在一些实施例中,摄像头组件1806还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。

音频电路1807用于提供用户和终端1800之间的音频接口。音频电路1807可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器1801进行处理,或者输入至射频电路1804以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端1800的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器1801或射频电路1804的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路1807还可以包括耳机插孔。

定位组件1808用于定位终端1800的当前地理位置,以实现导航或lbs(locationbasedservice,基于位置的服务)。定位组件1808可以是基于美国的gps(globalpositioningsystem,全球定位系统)、中国的北斗系统或俄罗斯的伽利略系统的定位组件。

电源1809用于为终端1800中的各个组件进行供电。电源1809可以是交流电、直流电、一次性电池或可充电电池。当电源1809包括可充电电池时,该可充电电池可以是有线充电电池或无线充电电池。有线充电电池是通过有线线路充电的电池,无线充电电池是通过无线线圈充电的电池。该可充电电池还可以用于支持快充技术。

在一些实施例中,终端1800还包括有一个或多个传感器1810。该一个或多个传感器1810包括但不限于:加速度传感器1811、陀螺仪传感器1812、压力传感器1813、指纹传感器1814、光学传感器1818以及接近传感器1816。

加速度传感器1811可以检测以终端1800建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器1811可以用于检测重力加速度在三个坐标轴上的分量。处理器1801可以根据加速度传感器1811采集的重力加速度信号,控制触摸显示屏1805以横向视图或纵向视图进行用户界面的显示。加速度传感器1811还可以用于游戏或者用户的运动数据的采集。

陀螺仪传感器1812可以检测终端1800的机体方向及转动角度,陀螺仪传感器1812可以与加速度传感器1811协同采集用户对终端1800的3d动作。处理器1801根据陀螺仪传感器1812采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变ui)、拍摄时的图像稳定、游戏控制以及惯性导航。

压力传感器1813可以设置在终端1800的侧边框和/或触摸显示屏1805的下层。当压力传感器1813设置在终端1800的侧边框时,可以检测用户对终端1800的握持信号,根据该握持信号进行左右手识别或快捷操作。当压力传感器1813设置在触摸显示屏1805的下层时,可以根据用户对触摸显示屏1805的压力操作,实现对ui界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。

指纹传感器1814用于采集用户的指纹,以根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器1801授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器1814可以被设置终端1800的正面、背面或侧面。当终端1800上设置有物理按键或厂商logo时,指纹传感器1814可以与物理按键或厂商logo集成在一起。

光学传感器1815用于采集环境光强度。在一个实施例中,处理器1801可以根据光学传感器1815采集的环境光强度,控制触摸显示屏1805的显示亮度。具体地,当环境光强度较高时,调高触摸显示屏1805的显示亮度;当环境光强度较低时,调低触摸显示屏1805的显示亮度。在另一个实施例中,处理器1801还可以根据光学传感器1815采集的环境光强度,动态调整摄像头组件1806的拍摄参数。

接近传感器1816,也称距离传感器,通常设置在终端1800的正面。接近传感器1816用于采集用户与终端1800的正面之间的距离。在一个实施例中,当接近传感器1816检测到用户与终端1800的正面之间的距离逐渐变小时,由处理器1801控制触摸显示屏1805从亮屏状态切换为息屏状态;当接近传感器1816检测到用户与终端1800的正面之间的距离逐渐变大时,由处理器1801控制触摸显示屏1805从息屏状态切换为亮屏状态。

本领域技术人员可以理解,图18中示出的结构并不构成对终端1800的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。

本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。

以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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