一种语音信号处理方法及装置与流程

文档序号:21621813发布日期:2020-07-29 02:27阅读:190来源:国知局
一种语音信号处理方法及装置与流程

本申请涉及语音信号处理技术领域,尤其涉及一种语音信号处理方法及装置。



背景技术:

当用户将唤醒语音输入到智能设备后,智能设备会发出例如“好的”之类的应答词,但是,由于智能设备发出的应答词的频率与唤醒后用户发出的语音指令频率相近,因此,应答词会和用户的语音指令混杂,造成识别困难的问题。

现有技术中,可以通过要求用户在接收到应答词结束之后再将语音指令输入到智能设备中,这样,智能设备可以使用白噪声将应答词替换,但是这种方式限制了用户的交互方式,当用户不按照标准方式进行交互时,会出现导致无法识别指令的问题,降低了智能设备对用户语音指令的识别率。



技术实现要素:

本申请实施例提供一种语音信号处理方法及装置,以提高智能设备对用户语音指令的识别率。

本申请实施例提供的具体技术方案如下:

一种语音信号处理方法,包括:

获取麦克风信号,其中,所述麦克风信号至少包括接收应答词信号和唤醒声源信号;

根据所述麦克风信号、麦克风阵型和预设波束数量,生成所述唤醒声源的波束;

根据麦克风信号和预设参考信号,确定所述麦克风信号的增益值,其中,所述参考信号中至少包括发送应答词信号;

根据所述波束和所述增益值,从所述麦克风信号中识别出所述唤醒声源信号。

可选的,获取麦克风信号,具体包括:

获取麦克风时域信号,其中,所述麦克风时域信号至少包括接收应答词的时域信号和唤醒声源的时域信号;

则根据所述麦克风信号、麦克风阵型和预设波束数量,生成所述唤醒声源的波束,具体包括:

将获得的麦克风时域信号和预设参考时域信号进行时域到频域转换,获得麦克风频域信号和参考频域信号,并将所述麦克风频域信号进行回声消除,获得残差频域信号,其中,所述麦克风频域信号至少包括接收应答词的频域信号和唤醒声源的频域信号,所述参考时域信号至少包括发送应答词的时域信号,所述参考频域信号至少包括发送应答词的频域信号;

根据所述残差频域信号、麦克风阵型和预设波束数量生成所述唤醒声源的波束。

可选的,根据所述残差频域信号、麦克风阵型和预设波束数量生成所述唤醒声源的波束,具体包括:

根据所述残差频域信号、麦克风阵型和预设波束数量,生成至少一个波束,并获得至少一个波束角度,其中,所述至少一个波束角度为麦克风之间的角度,所述至少一个波束角度是通过麦克风阵型和预设波束数量确定出的;

将所述至少一个波束进行语音增益,获得至少一个语音增益后的波束;

将所述至少一个语音增益后的波束按照预设算法进行运算,从所述至少一个波束角度中确定出所述唤醒声源的角度;

根据所述角度和所述残差频域信号,确定所述唤醒声源的波束。

可选的,根据麦克风信号和预设参考信号,确定所述麦克风信号的增益值,具体包括:

基于已训练的神经网络模型,将所述麦克风频域信号、所述参考频域信号和所述残差频域信号的单路bark域信号作为输入参数,确定所述残差频域信号的增益值,其中,所述神经网络模型用于放大所述唤醒声源的频域信号,减小所述接收应答词的频域信号。

可选的,基于已训练的神经网络模型,将所述麦克风频域信号、所述参考频域信号和所述残差频域信号的单路bark域信号作为输入参数,确定所述残差频域信号的增益值,具体包括:

分别将所述麦克风频域信号、参考频域信号和所述残差频域信号转换为单路bark域信号,获得麦克风单路bark域信号、参考单路bark域信号和残差单路bark域信号;

基于已训练的神经网络模型,将所述麦克风单路bark域信号、所述参考单路bark域信号和所述残差单路bark域信号作为输入参数,确定所述残差频域信号的增益值。

可选的,根据所述波束和所述增益值,从所述麦克风信号中识别出所述唤醒声源信号,具体包括:

将所述波束进行语音增益,获得所述唤醒声源的第一单路频域信号;

根据将所述第一单路频域信号对应的频率点与所述增益值相乘,获得所述唤醒声源的bark域信号,并将所述bark域信号转换为频域信号,获得所述唤醒声源的频域信号。

可选的,获得所述唤醒声源的频域信号之后,进一步包括:

将所述唤醒声源的频域信号进行转换,获得所述唤醒声源的时域信号;

根据所述唤醒声源的时域信号,执行相应的处理操作。

一种语音信号处理装置,包括:

获取模块,用于获取麦克风信号,其中,所述麦克风信号至少包括接收应答词信号和唤醒声源信号;

第一处理模块,用于根据所述麦克风信号、麦克风阵型和预设波束数量,生成所述唤醒声源的波束;

确定模块,用于根据麦克风信号和预设参考信号,确定所述麦克风信号的增益值,其中,所述参考信号中至少包括发送应答词信号;

第二处理模块,用于根据所述波束和所述增益值,从所述麦克风信号中识别出所述唤醒声源信号。

可选的,获取模块具体用于:

获取麦克风时域信号,其中,所述麦克风时域信号至少包括接收应答词的时域信号和唤醒声源的时域信号;

则第一处理模块具体用于:

将获得的麦克风时域信号和预设参考时域信号进行时域到频域转换,获得麦克风频域信号和参考频域信号,并将所述麦克风频域信号进行回声消除,获得残差频域信号,其中,所述麦克风频域信号至少包括接收应答词的频域信号和唤醒声源的频域信号,所述参考时域信号至少包括发送应答词的时域信号,所述参考频域信号至少包括发送应答词的频域信号;

根据所述残差频域信号、麦克风阵型和预设波束数量生成所述唤醒声源的波束。

可选的,根据所述残差频域信号、麦克风阵型和预设波束数量生成所述唤醒声源的波束时,第一处理模块具体用于:

根据所述残差频域信号、麦克风阵型和预设波束数量,生成至少一个波束,并获得至少一个波束角度,其中,所述至少一个波束角度为麦克风之间的角度,所述至少一个波束角度是通过麦克风阵型和预设波束数量确定出的;

将所述至少一个波束进行语音增益,获得至少一个语音增益后的波束;

将所述至少一个语音增益后的波束按照预设算法进行运算,从所述至少一个波束角度中确定出所述唤醒声源的角度;

根据所述角度和所述残差频域信号,确定所述唤醒声源的波束。

可选的,确定模块具体用于:

基于已训练的神经网络模型,将所述麦克风频域信号、所述参考频域信号和所述残差频域信号的单路bark域信号作为输入参数,确定所述残差频域信号的增益值,其中,所述神经网络模型用于放大所述唤醒声源的频域信号,减小所述接收应答词的频域信号。

可选的,基于已训练的神经网络模型,将所述麦克风频域信号、所述参考频域信号和所述残差频域信号的单路bark域信号作为输入参数,确定所述残差频域信号的增益值时,确定模块具体用于:

分别将所述麦克风频域信号、参考频域信号和所述残差频域信号转换为单路bark域信号,获得麦克风单路bark域信号、参考单路bark域信号和残差单路bark域信号;

基于已训练的神经网络模型,将所述麦克风单路bark域信号、所述参考单路bark域信号和所述残差单路bark域信号作为输入参数,确定所述残差频域信号的增益值。

可选的,第二处理模块具体用于:

将所述波束进行语音增益,获得所述唤醒声源的第一单路频域信号;

根据将所述第一单路频域信号对应的频率点与所述增益值相乘,获得所述唤醒声源的bark域信号,并将所述bark域信号转换为频域信号,获得所述唤醒声源的频域信号。

可选的,获得所述唤醒声源的频域信号之后,第二处理模块进一步用于:

将所述唤醒声源的频域信号进行转换,获得所述唤醒声源的时域信号;

根据所述唤醒声源的时域信号,执行相应的处理操作。

一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述语音信号处理方法的步骤。

一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述语音信号处理方法的步骤。

本申请实施例中,获取麦克风信号,其中,麦克风信号至少包括接收应答词信号和唤醒声源信号,根据麦克风信号、麦克风阵型和预设波束数量,生成唤醒声源的波束,并根据麦克风信号和预设参考信号,确定麦克风信号的增益值,然后根据波束和麦克风信号的增益值,从麦克风信号中识别出唤醒声源信号,这样,根据获得唤的醒声源的波束和麦克风信号的增益值,能够从麦克风信号中识别出唤醒声源信号,进而可以实现从麦克风信号中消除接收应答词信号,这样,不会限制用户的交互方式,并且还能够减小接收应答词信号对唤醒声源的语音指令的干扰,更好地识别唤醒声源的语音指令,提高智能设备对用户的语音指令的识别率。

附图说明

图1为本申请实施例中另一种语音信号处理方法的流程图;

图2为本申请实施例中麦克风时域信号处理方法的流程图;

图3为本申请实施例中语音信号处理装置的结构示意图;

图4为本申请实施例中电子设备的结构示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,并不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

目前,随着语音识别技术的普及,越来越的智能设备具备语音唤醒的功能,当用户将唤醒语音输入到智能设备后,智能设备会被唤醒,然后向用户发出回应,例如“在呢”、“好的”之类的应答词,但是,由于智能设备发出的应答词的频域与将智能设备唤醒后用户发出的语音指令的频率相近,因此,智能设备接收到的应答词可能会和用户的语音指令混杂,造成识别困难的问题。

现有技术中,提供了一种方法,可以通过要求用户在听到智能设备发出应答词结束之后,再将语音指令输入到智能设备中,这样,智能设备能够将唤醒之后的一段时间内接受到的音频判定为应答词,并使用白噪声将应答词替换,进而实现消除应答词,但是这种方式,必须在智能设备应答结束之后,用户才能够发出语音指令,限制了用户的交互方式,用户体验感较差,并且,当用户不按照标准方式进行交互时,会出现导致无法识别指令的问题。

或者,还可以根据回采信号,按照传统语音信号处理的算法进行一些处理,这样,虽然不需要对用户在交互方式上进行限制,但是由于智能设备发出的应答词的频域和唤醒后用户发出的命令语音指令的频率相近,因此不仅无法彻底消除应答词,而且会对后续语音指令识别有影响,降低了智能设备对用户指令的识别率。

本申请实施例中,获取麦克风信号,麦克风信号至少包括接收应答词信号和唤醒声源信号,根据麦克风信号、麦克风阵型和预设波束数量,生成唤醒声源的波束,并根据麦克风信号和预设参考信号,确定麦克风信号的增益值,其中,参考信号中至少包括发送应答词信号,然后根据波束和增益值,从麦克风信号中识别出唤醒声源信号,这样,由于确定出的麦克风信号的增益值用于放大唤醒声源信号,减小接收应答词信号,并且,生成了唤醒声源的波束,进而能够根据增益值和波束,从麦克风信号中识别出唤醒声源信号,从而实现消除了接收应答词信号,这样,不会限制用户的交互方式,并且还能够消除接收应答词信号,进而能够提升智能设备对用户指令的识别率。

具体地,本申请实施例中,获取的麦克风信号为麦克风时域信号时,将获得的麦克风时域信号和预设参考时域信号转换为麦克风频域信号和参考频域信号,并将麦克风频域信号进行回声消除,获得残差频域信号,麦克风时域信号至少包括接收应答词的时域信号和唤醒声源的时域信号,麦克风频域信号至少包括接收应答词的频域信号和唤醒声源的频域信号,参考时域信号至少包括发送应答词的时域信号,参考频域信号至少包括发送应答词的频域信号,根据残差频域信号、根据残差频域信号、麦克风阵型和预设波束数量生成唤醒声源的波束,并将波束进行语音增益,获得第一单路频域信号,基于已训练的神经网络模型,将麦克风频域信号、参考频域信号和残差频域信号的单路bark域信号作为输入参数,确定残差频域信号的增益值,神经网络模型用于放大唤醒声源的频域信号,减小接收应答词的频域信号,将第一单路频域信号对应的频率点与增益值相乘,这样,能够将唤醒声源的bark域信号放大,减小接收应答词的bark域信号,因此,可以获得唤醒声源的bark域信号,并将bark域信号转换为频域信号,获得唤醒声源的频域信号,这样,能够从麦克风频域信号中消除接收应答词的频域信号,获得唤醒声源的频域信号,提高了语音指令的识别率。

基于上述实施例,下面对本申请实施例中的一种语音信号处理方法进行详细阐述,具体包括:

s1:获取麦克风信号。

其中,麦克风信号至少包括接收应答词信号和唤醒声源信号。

其中,接收应答词信号表示设备发出应答词后,又接收到所发出的应答词的信号,唤醒声源信号表示在唤醒后唤醒声源所发出的信号,即可以理解为唤醒后用户发出的命令语音信号。

s2:根据麦克风信号、麦克风阵型和预设波束数量,生成唤醒声源的波束。

本申请实施例中,当麦克风信号为麦克风时域信号时,则执行步骤s2时,具体包括:

a1:将获得的麦克风时域信号和预设参考时域信号进行时域到频域转换,获得麦克风频域信号和参考频域信号,并将麦克风频域信号进行回声消除,获得残差频域信号。

其中,麦克风频域信号至少包括接收应答词的频域信号和唤醒声源的频域信号,参考时域信号至少包括发送应答词的时域信号,参考频域信号至少包括发送应答词的频域信号。

其中,发送应答词信号表示设备发出的应答词的信号。

a2:根据残差频域信号、麦克风阵型和预设波束数量生成唤醒声源的波束。

s3:根据麦克风信号和预设参考信号,确定麦克风信号的增益值。

其中,预设参考信号中至少包括发送应答词信号。

本申请实施例中,执行步骤s3时,具体包括:

基于已训练的神经网络模型,将麦克风频域信号、参考频域信号和残差频域信号的单路bark域信号作为输入参数,确定残差频域信号的增益值。

其中,神经网络模型用于放大唤醒声源的频域信号,减小接收应答词的频域信号。

s4:根据波束和增益值,从麦克风信号中识别出唤醒声源信号。

本申请实施例中,执行步骤s4时,具体包括:

a1:将波束进行语音增益,获得唤醒声源的第一单路频域信号。

a2:根据将第一单路频域信号对应的频率点与增益值相乘,获得唤醒声源的bark域信号,并将bark域信号转换为频域信号,获得唤醒声源的频域信号。

本申请实施例中,获取麦克风信号,麦克风信号至少包括接收应答词信号和唤醒声源信号,根据麦克风信号、麦克风阵型和预设波束数量,生成唤醒声源的波束,根据麦克风信号和预设参考信号,确定麦克风信号的增益值,其中,参考信号中至少包括发送应答词信号,根据波束和增益值,从麦克风信号中识别出唤醒声源信号,这样,通过根据生成的唤醒声源的波束和麦克风信号的增益值,能够从麦克风信号中识别出唤醒声源信号,进而能够实现消除了麦克风信号中的接收应答词信号,并提高了智能设备对唤醒声源指令的识别率。

基于上述实施例,下面以麦克风信号为麦克风时域信号、预设参考信号为预设参考时域信号为例,对本申请实施例中的一种语音信号处理方法进行示例性阐述,参阅图1所示,为本申请实施例中另一种语音信号处理方法的流程图,具体包括:

步骤100:将获得的麦克风时域信号和预设参考时域信号进行时域到频域转换,获得麦克风频域信号和参考频域信号,并将麦克风频域信号进行回声消除,获得残差频域信号。

其中,麦克风时域信号至少包括接收应答词的时域信号和唤醒声源的时域信号,麦克风频域信号至少包括接收应答词的频域信号和唤醒声源的频域信号。

麦克风时域信号例如可以是通过麦克风获得的,由于麦克风在采集电信号时,可能会采集到智能设备发出的应答词对应的信号,因此,可以将采集到的智能设备发出的应答词对应的信号称为接收应答词信号,这样,麦克风采集到的电信号中不仅包括唤醒声源的信号,还包括接收应答词信号,因此,麦克风时域信号至少包括接收应答词的时域信号和唤醒声源的时域信号,麦克风频域信号至少包括应答词的频域信号和唤醒声源的频域信号,本申请实施例中对获得麦克风时域信号的方式并不进行限制。

其中,由于声波在传播过程中,碰到大的反射面,例如建筑物的墙壁、大山里面等,在界面将发生反射,会产生反射声波,即回声,因此,需要先将麦克风频域信号进行回声消除,获得残差频域信号,这样,能够减少回声对于语音指令的识别率的影响。

参考时域信号为智能设备发送的应答词信号,也可以称为回采信号,因此参考时域信号至少包括发送应答词的时域信号,参考频域信号至少包括发送应答词的频域信号。

进一步地,智能设备能够将参考时域信号存储在本地,参考时域信号例如可以是应答词“好的”,“在呢”,还可以是一段音乐,本申请实施例中对此并不进行限制。

进一步地,本申请实施例中还可以设置一个回声消除模块,回声消除模块用于将麦克风频域信号进行初步回声消除,获得初步回声消除后的残差频域信号,并且,还能够将麦克风时域信号转换为麦克风频域信号,将参考时域信号转换为参考频域信号,例如,将n路麦克风时域信号和m路参考时域信号输入到回声消除模块中,获得n路麦克风频域信号、m路参考频域信号和n路残差频域信号,本申请实施例中对此并不进行限制。

其中,将时域信号转换为频域信号时,可以通过快速傅里叶变换(fastfouriertransform,fft)进行转换,也可以通过其它方式进行转换,本申请实施例中对此并不进行限制。

步骤110:根据残差频域信号、麦克风阵型和预设波束数量生成唤醒声源的波束,并将波束进行语音增益,获得唤醒声源的第一单路频域信号。

步骤120:基于已训练的神经网络模型,将麦克风频域信号、参考频域信号和残差频域信号的单路bark域信号作为输入参数,确定残差频域信号的增益值。

其中,神经网络模型用于放大唤醒声源的频域信号,减小接收应答词的频域信号。

需要说明的是,本申请实施例中,步骤110与步骤120的执行顺序并不进行限制,可以同时进行。

步骤130:根据将第一单路频域信号对应的频率点与增益值相乘,获得唤醒声源的bark域信号,并将bark域信号转换为频域信号,获得唤醒声源的频域信号。

本申请实施例中,获得第一单路频域信号,具体包括:

s1:据残差频域信号、麦克风阵型和预设波束数量,生成至少一个波束,并获得至少一个波束角度。

其中,至少一个波束角度为麦克风之间的角度,至少一个波束角度是通过麦克风阵型和预设波束数量确定出的。

本申请实施例中,需要设置多个麦克风,并且,可以根据不同麦克风的个数设置不同的麦克阵列,例如,可以将麦克阵列设置为圆阵、线阵、l型阵列,本申请实施例中对此并不进行限制。

预设波束数量为预先设置好的,例如,波束数量可以为4、6,本申请实施例中对此并不进行限制。

其中,不同的麦克风阵型和预设波束数量,会影响生成的波束个数和每个波束的角度。

例如,当4个麦克风构成环形麦克风阵列,预设波束数量为6时,则能够生成6个波束,每60度为设置一个波束,一共产生6个方向的波束,分别在60度、120度、180度、240度、300度、360度生成波束。

例如,当两个麦克风构成线形麦克风阵列时,预设的波束数量为2时,则能够生成两个波束,即分别在0度和180度生成波束,本申请实施例中对此并不进行限制。

s2:将至少一个波束进行语音增益,获得至少一个语音增益后的波束。

本申请实施例中,当获得至少一个波束时,对至少一个波束进行语音增益,获得至少一个语音增益后的波束,例如,在频域1k处,语音增益10db,本申请实施例中对此并不进行限制。

s3:将至少一个语音增益后的波束按照预设算法进行运算,从至少一个波束角度中确定出唤醒声源的角度。

本申请实施例中,当进行语音增益后,获得放大的音频,将放大的音频输入到语音唤醒模块中进行运算,获得唤醒模块的结果,即唤醒声源的频域信号的时长,然后将唤醒模块的结果按照预设算法进行运算,进而获得唤醒声源的角度。

其中,例如可以通过广义旁瓣相消(generalizedsidelobecancellation,gsc)算法获得唤醒声源的时长,本申请实施例中对此并不进行限制。

预设算法可以是波达方向(directionofarrival,doa)估计,doa估计是在空域、时域谱估计的基础上发展来的一种技术,是阵列信号处理中的一个重要研究方向,doa估计是确定同时处在空间某一区域内多个感兴趣的信号的空间位置,即多个信号到达阵列参考阵元的方向角。

s4:根据角度和残差频域信号,确定唤醒声源的波束。

本申请实施例中,当获得唤醒声源的角度后,根据唤醒声源的角度和残差频域信号,确定出唤醒声源的波束,也就是说,生成的唤醒声源的波束角度正对声源角度,并对唤醒声源之外的其它角度的声音进行屏蔽,例如,假设获得的唤醒语音的角度为60度,则60度的波束,并将60度之外的其它角度的声音屏蔽,本申请实施例中对此并不进行限制。

s5:将波束进行语音增益,获得唤醒声源的语音增益后的第一单路频域信号。

本申请实施例中,在获得波束后,将波束进行语音增益,获得唤醒声源的语音增益的单路频域信号,即第一单路频域信号,该第一单路频域信号为唤醒声源放大的信号。

但是,由于智能设备发出的应答词信号为360度的,因此,在唤醒声源的波束还是会有接收应答词的频域信号,也就是说,第一单路频域信号中还是会有接收应答词的频域信号,这时,需要获得残差频域信号的增益值,也就是说,需要训练一个神经网络模型,将残差频域信号中的接收应答词对应的频域信号减小,将唤醒声源对应的频域信号放大,这样,将第一单路频域信号对应的频域点与增益值相乘后,将第一单路频域信号中唤醒声源对应的频域点放大,将第一单路频域信号中接收应答词对应的频率点减小,就能够放大唤醒声源的bark域信号,减小接收应答词的bark域信号,将接收应答词信号降低到最小,从而达到从麦克风频域信号中消除接收应答词的频域信号的效果。

则确定残差频域信号的增益值,具体包括:

s1:分别将麦克风频域信号、参考频域信号和残差频域信号转换为单路bark域信号,获得麦克风单路bark域信号、参考单路bark域信号和残差单路bark域信号。

本申请实施例中,在将麦克风时域信号和预设参考时域信号进行回声消除,获得麦克风频域信号、参考频域信号和残差频域信号后,将麦克风频域信号取任意一路、参考频域信号取任意一路、残差频域信号取任意一路,获得麦克风单路频域信号、参考单路频域信号和残差单路频域信号,然后将麦克风单路频域信号、参考单路频域信号和残差单路频域信号转换为单路bark域信号,获得麦克风单路bark域信号、参考单路bark域信号和残差单路bark域信号。

其中,在获得麦克风单路频域信号、参考单路频域信号和残差单路频域信号时,可以取第一路频域信号,本申请实施例中对此并不进行限制。

s2:基于已训练的神经网络模型,将麦克风单路bark域信号、参考单路bark域信号和残差单路bark域信号作为输入参数,确定残差频域信号的增益值。

本申请实施例中,将麦克风单路bark域信号、参考单路bark域信号和残差单路bark域信号作为输入参数,输入到已训练的神经网络模型中,获得残差频域信号的增益值。

其中,将频域信号转换为bark域信号表示可以通过查表进行转换,bark域信号能够更加真实地反应人耳对信号产生的感觉,本申请实施例中对此并不进行限制。

神经网络模型用于放大唤醒声源的频域信号,减小接收应答词的频域信号。

本申请实施例中,神经网络模型的训练方式具体包括:

s1:获取bark域信号的音频样本集。

其中,音频样本集中至少包括麦克风bark域信号的音频样本、参考bark域信号的音频样本和残差bark域信号的音频样本。

麦克风bark域信号的音频样本是将麦克风频域信号的音频样本经过频域转换到bark域进而获得的,参考bark域信号的音频样本是将参考频域信号的音频样本经过频域转换到bark域进而获得的,残差bark域信号的音频样本是将残差频域信号的音频样本经过频域转换到bark域进而获得的。

s2:将音频样本集输入到神经网络模型进行训练,输出为残差频域信号的增益值,直至神经网络模型的目标函数收敛,获得训练完成的神经网络模型。

其中,目标函数为残差频域信号的增益值的交叉熵函数最小化。

其中,增益值表示音频样本集中,减小残差bark域信号中参考bark域信号对应的信号频率点,增大残差bark域信号中唤醒声源的bark域信号对应的信号频率点。

因此,通过训练神经网络模型,能够达到放大唤醒声源的频域信号,减小参考频域信号的效果,这样,将麦克风单路bark域信号、参考单路bark域信号和残差单路bark域信号作为输入参数,输入到已训练的神经网络模型中,进而能够确定出残差频域信号的增益值。

神经网络模型例如可以是长短期记忆网络(longshort-termmemorynetworks,lstm),长短期记忆网络是一种时间循环神经网络,是为了解决一般的循环神经网络(recurrentneuralnetwork,rnn)存在的长期依赖问题而专门设计出来的,本申请实施例中对神经网络模型并不进行限制。

当获得第一单路频域信号和唤醒声源的增益值后,具体包括:

s1:根据将第一单路频域信号与增益值相乘,获得唤醒声源的bark域信号。

本申请实施例中,增益值可以为一组数组,放大唤醒声源的信号,减小接收应答词的信号,这样,将第一单路频域信号与增益值相乘,第一单路频域信号中唤醒声源频域信号的对应的频率点被放大,接收应答词频域信号的对应的频率点减小,因此,在相乘后的bark域信号中,接收应答词的bark域信号变得非常小,唤醒声源的bark域信号变得非常大,这样就可以忽略接收应答词的bark域信号,进而实现将接收应答词的bark域信号消除,获得唤醒声源的bark域信号。

s2:将bark信号转换为频域信号,获得唤醒声源的频域信号。

进一步地,当获得唤醒声源的频域信号后,还包括:

s1:将唤醒声源的频域信号进行转换,获得唤醒声源的时域信号。

本申请实施例中,可以通过fft的逆变换,获得唤醒声源的时域信号,本申请实施例中对此并不进行限制。

s2:根据唤醒声源的时域信号,执行相应的处理操作。

例如,唤醒声源的频域信号为“开机”,则智能设备执行开机操作,本申请实施例中对此并不进行限制。

本申请实施例中,将获得的麦克风时域信号和预设参考时域信号转换为麦克风频域信号和参考频域信号,并将麦克风时域信号进行回声消除,获得残差频域信号,根据残差频域信号、麦克风阵型和预设波束数量生成至少一个波束,并获得至少一个波束角度,然后将至少一个波束进行语音增益,获得至少一个语音增益后的波束,将至少一个语音增益后的波束按照预设算法进行运算,从至少一个波束角度中获得唤醒声源的角度,并根据唤醒声源的角度和残差频域信号,获得第一单路频域信号,然后基于已训练的神经网络模型,将麦克风频域信号、参考频域信号和残差频域信号的单路bark域信号作为输入参数,确定唤醒声源的增益值,由于第一单路频域信号中还有一部分的接收应答词对应的频域信号,但是,由于经过神经网络模型后,增益值为放大了唤醒声源对应的信号,减小了接收应答词对应的信号,因此,将第一单路频域信号对应的频率点和增益值相乘后,唤醒声源信号被放大,接收应答词信号被减小,从而能够获得消除应答词的信号的效果,获得唤醒声源的bark域信号,然后将唤醒声源的bark域信号转换为频域信号,这样,提高了用户的语音指令的识别率。

基于上述实施例,参阅图2所示,为本申请实施例中麦克风时域信号处理方法的流程图,具体包括:

步骤200:将获得的麦克风时域信号和预设参考时域信号进行时域到频域转换,获得麦克风频域信号和参考频域信号。

其中,麦克风时域信号至少包括接收应答词的时域信号和唤醒声源的时域信号,麦克风频域信号至少包括接收应答词的频域信号和唤醒声源的频域信号,参考时域信号至少包括发送应答词的时域信号,参考频域信号至少包括发送应答词的频域信号。

本申请实施例中的语音信号处理方法可以应用于任意一种智能设备,例如,手机、电脑、智能音箱、智能空调等,或者,当计算量较大时,还可以应用于服务器,本申请实施例中对此并不进行限制。

例如,将n路麦克风时域信号和m路参考时域信号进行回声消除,获得n路麦克风频域信号、m路参考频域信号和n路残差频域信号,本申请实施例中对此并不进行限制。

步骤201:将麦克风频域信号进行回声消除,获得残差频域信号。

步骤202:根据残差频域信号、麦克风阵型和预设波束数量,生成至少一个波束,并获得至少一个波束角度。

其中,至少一个波束角度为麦克风之间的角度,至少一个波束角度是通过麦克风阵型和预设波束数量确定出的。

本申请实施例中,不同的麦克风阵型和预设波束数量都会影响生成的波束。

步骤203:将至少一个波束进行语音增益,获得至少一个语音增益后的波束。

步骤204:将至少一个语音增益后的波束按照预设算法进行运算,从至少一个波束角度中确定出唤醒声源的角度。

步骤205:根据角度和残差频域信号,确定唤醒声源的波束。

步骤206:将波束进行语音增益,获得唤醒声源的第一单路频域信号。

步骤207:分别将麦克风频域信号、参考频域信号和残差频域信号转换为单路bark域信号,获得麦克风单路bark域信号、参考单路bark域信号和残差单路bark域信号。

步骤208:基于已训练的神经网络模型,将麦克风单路bark域信号、参考单路bark域信号和残差单路bark域信号作为输入参数,确定残差频域信号的增益值。

其中,神经网络模型用于放大唤醒声源的频域信号,减小接收应答词的频域信号。

需要说明的是,本申请实施例中,步骤210-步骤250与步骤260-步骤270的执行顺序并不进行限制,可以同时进行。

步骤209:根据将第一单路频域信号对应的频率点与增益值相乘,获得唤醒声源的bark域信号。

步骤210:将bark域信号转换为频域信号,获得唤醒声源的频域信号。

步骤211:将唤醒声源的频域信号进行转换,获得唤醒声源的时域信号。

步骤212:根据唤醒声源的时域信号,执行相应的处理操作。

本申请实施例中,将通过麦克风获得的麦克风时域信号和预设参考时域信号进行转换,转换为麦克风频域信号和参考频域信号,然后将麦克风频域信号进行回声消除,获得残差频域信号,根据麦克风频域信号、麦克风阵型和预设波束数量,生成至少一个波束,并获得至少一个波束角度,然后将至少一个波束进行语音增益,并根据预设算法进行运算,从至少一个波束角度中确定出唤醒声源的角度,根据获得的唤醒声源的角度和残差频域信号,生成唤醒声源的波束,并将波束进行语音增益,获得第一单路频域信号,分别将麦克风频域信号、参考频域信号和残差频域信号转换为单路bark域信号,获得麦克风单路bark域信号、参考单路bark域信号和残差单路bark域信号,然后将麦克风单路bark域信号、参考单路bark域信号和残差单路bark域信号输入已训练的神经网络模型中,确定残差频域信号的增益值,进而将第一单路频域信号对应的频率点与增益值相乘,这样,由于残差频域信号的增益值放大了唤醒声源的信号,减小了接收应答词信号,进而可以实现消除接收应答词对应的频域信号,获得唤醒声源的频域信号的效果,提高了智能设备对用户的语音指令的识别率。

基于同一发明构思,本申请实施例中提供了语音信号处理装置,该语音信号处理装置可以是硬件结构、软件模块、或硬件结构加软件模块。基于上述实施例,参阅图3所示,为本申请实施例中语音信号处理装置的结构示意图,具体包括:

获取模块300,用于获取麦克风信号,其中,所述麦克风信号至少包括接收应答词信号和唤醒声源信号;

第一处理模块310,用于根据所述麦克风信号、麦克风阵型和预设波束数量,生成所述唤醒声源的波束;

确定模块320,用于根据麦克风信号和预设参考信号,确定所述麦克风信号的增益值,其中,所述参考信号中至少包括发送应答词信号;

第二处理模块330,用于根据所述波束和所述增益值,从所述麦克风信号中识别出所述唤醒声源信号。

可选的,获取模块300具体用于:

获取麦克风时域信号,其中,所述麦克风时域信号至少包括接收应答词的时域信号和唤醒声源的时域信号;

则第一处理模块310具体用于:

将获得的麦克风时域信号和预设参考时域信号进行时域到频域转换,获得麦克风频域信号和参考频域信号,并将所述麦克风频域信号进行回声消除,获得残差频域信号,其中,所述麦克风频域信号至少包括接收应答词的频域信号和唤醒声源的频域信号,所述参考时域信号至少包括发送应答词的时域信号,所述参考频域信号至少包括发送应答词的频域信号;

根据所述残差频域信号、麦克风阵型和预设波束数量生成所述唤醒声源的波束。

可选的,根据所述残差频域信号、麦克风阵型和预设波束数量生成所述唤醒声源的波束时,第一处理模块310具体用于:

根据所述残差频域信号、麦克风阵型和预设波束数量,生成至少一个波束,并获得至少一个波束角度,其中,所述至少一个波束角度为麦克风之间的角度,所述至少一个波束角度是通过麦克风阵型和预设波束数量确定出的;

将所述至少一个波束进行语音增益,获得至少一个语音增益后的波束;

将所述至少一个语音增益后的波束按照预设算法进行运算,从所述至少一个波束角度中确定出所述唤醒声源的角度;

根据所述角度和所述残差频域信号,确定所述唤醒声源的波束。

可选的,确定模块320具体用于:

基于已训练的神经网络模型,将所述麦克风频域信号、所述参考频域信号和所述残差频域信号的单路bark域信号作为输入参数,确定所述残差频域信号的增益值,其中,所述神经网络模型用于放大所述唤醒声源的频域信号,减小所述接收应答词的频域信号。

可选的,基于已训练的神经网络模型,将所述麦克风频域信号、所述参考频域信号和所述残差频域信号的单路bark域信号作为输入参数,确定所述残差频域信号的增益值时,确定模块320具体用于:

分别将所述麦克风频域信号、参考频域信号和所述残差频域信号转换为单路bark域信号,获得麦克风单路bark域信号、参考单路bark域信号和残差单路bark域信号;

基于已训练的神经网络模型,将所述麦克风单路bark域信号、所述参考单路bark域信号和所述残差单路bark域信号作为输入参数,确定所述残差频域信号的增益值。

可选的,第二处理模块330具体用于:

将所述波束进行语音增益,获得所述唤醒声源的第一单路频域信号;

根据将所述第一单路频域信号对应的频率点与所述增益值相乘,获得所述唤醒声源的bark域信号,并将所述bark域信号转换为频域信号,获得所述唤醒声源的频域信号。

可选的,获得所述唤醒声源的频域信号之后,第二处理模块330进一步用于:

将所述唤醒声源的频域信号进行转换,获得所述唤醒声源的时域信号;

根据所述唤醒声源的时域信号,执行相应的处理操作。

基于上述实施例,参阅图4所示为本申请实施例中电子设备的结构示意图。

本申请实施例提供了一种电子设备,该电子设备可以包括处理器410(centerprocessingunit,cpu)、存储器420、输入设备430和输出设备440等,输入设备430可以包括键盘、鼠标、触摸屏等,输出设备440可以包括显示设备,如液晶显示器(liquidcrystaldisplay,lcd)、阴极射线管(cathoderaytube,crt)等。

存储器420可以包括只读存储器(rom)和随机存取存储器(ram),并向处理器410提供存储器420中存储的程序指令和数据。在本申请实施例中,存储器420可以用于存储本申请实施例中任一种语音信号处理方法的程序。

处理器410通过调用存储器420存储的程序指令,处理器410用于按照获得的程序指令执行本申请实施例中任一种语音信号处理方法。

基于上述实施例,本申请实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意方法实施例中的语音信号处理方法。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

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