基于人工智能的语音识别方法及装置与流程

文档序号:12864807阅读:900来源:国知局
基于人工智能的语音识别方法及装置与流程

本发明涉及语音识别技术领域,尤其涉及一种基于人工智能的语音识别方法及装置。



背景技术:

人工智能(artificialintelligence),英文缩写为ai。它是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。人工智能是计算机科学的一个分支,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器,该领域的研究包括机器人、语音识别、图像识别、自然语言处理和专家系统等。其中,人工智能最重要的方面就是语音识别技术。

目前比较成熟的语音识别技术大多应用在近场环境中,也就是用户距离麦克风的距离较近的情况,这种场景下的识别率大都比较高。但是,当用户在远场环境中,例如用户距离麦克风3米、5米或者更远时,现有的语音识别模型或系统的语音识别性能会急剧下降。

目前,绝大多数采用加噪训练的方式,模拟远场场景下的语音信号,通过训练数据来重新训练声学模型使之与远场场景匹配。但是,该方式完全依赖训练数据。由于训练数据无法覆盖噪声、混响等干扰因素的全部可能性,因此这种模型的表征能力有限,所带来的语音识别性能提升也有限。



技术实现要素:

本发明旨在至少在一定程度上解决相关技术中的技术问题之一。

为此,本发明的第一个目的在于提出一种基于人工智能的语音识别方法,以实现对语音识别输入信号进行解混响、增强、去噪声处理,以解决现有技术中远场语音识别率低的问题。

本发明的第二个目的在于提出一种基于人工智能的语音识别装置。

本发明的第三个目的在于提出另一种基于人工智能的语音识别装置。

本发明的第四个目的在于提出一种计算机程序产品。

本发明的第五个目的在于提出一种非临时性计算机可读存储介质。

为达上述目的,本发明第一方面实施例提出了一种基于人工智能的语音识别方法,包括:对麦克风阵列进行采集,获取多路第一语音信号;基于wpe算法去除每路第一语音信号中的混响信号,得到每路第二语音信号,并将每路第二语音信号通过mvdr波束形成器,获取一路第三语音信号;将第三语音信号分别输入到自适应阻塞矩阵模块和自适应干扰消除模块中;在自适应阻塞矩阵模块中基于第三语音信号与每路第一语音信号进行噪声提取,得到每路的第一噪声信号;在自适应干扰消除模块中将每路的第一噪声信号进行滤波后叠加,得到一路的第二噪声信号,并将第三语音信号与第二噪声信号相减,得到目标语音信号。

本发明实施例的基于人工智能的语音识别方法,通过麦克风阵列获取第一语音信号,然后基于wpe算法去除每路第一语音信号中的混响信号,并将去混响后获得的第二语音信号通过mvdr波束形成器合为一路第三语音信号,再将第三语音信号分别输入自适应阻塞矩阵模块和自适应干扰消除模块中,自适应阻塞矩阵模块基于第三语音信号和每路第一语音信号进行噪声提取,获得每路的第一噪声信号,自适应干扰消除模块将每路的第一噪声信号滤波后叠加得到第二噪声信号,并用第三语音信号减去第二噪声信号,获得目标语音信号,实现了对语音识别输入信号进行解混响、增强、去噪声处理,解决了现有技术中远场语音识别率低的问题。

另外,本发明实施例的基于人工智能的语音识别方法,还包括以下附加技术特征:

在本发明的一个实施例中,基于wpe算法去除每路第一语音信号中的混响信号,包括:针对每一路,选取当前采样时刻之前的p个采样时刻的第一语音信号;其中,p≥1,p的取值为整数;将p个采样时刻的第一语音信号输入到当前时刻对应的第一滤波器中,对当前采样时刻的混响信号进行线性预测;利用当前采样时刻的第一语音信号与预测得到的混响信号做减,得到第二语音信号。

在本发明的一个实施例中,选取当前采样时刻之前的p个采样时刻的第一语音信号,包括:确定第一采样时刻和第二采样时刻,其中,第一采样时刻与第二采样时刻之间存在p个采样时刻;其中第二采样时刻接近当前采样时刻,第二采样时刻与当前采样时刻之间存在q个采样时刻;从第一采样时刻开始至第二采样时刻为止,选取p个采样时刻的第一语音信号。

在本发明的一个实施例中,获取当前采样时刻第二语音信号的语音功率;基于前一采样时刻的语音功率与当前采样时刻的语音功率进行加权最小化处理,基于最小化处理后的结果计算下一采样时刻对应的第一滤波器的滤波系数。

在本发明的一个实施例中,将每路第二语音信号通过mvdr波束形成器,获取一路第三语音信号之前,还包括:确定声源的方向向量;基于方向向量和预估的噪声协方差矩阵,确定mvdr波束形成器的最优系数。

在本发明的一个实施例中,确定声音的方向向量,包括:采集同一声源的预设时长内的第一语音信号;获取预设时长内第一语音信号的第一协方差矩阵;采集声源处于静音状态下预设时长内的噪声信号;获取噪声信号的噪声协方差矩阵;基于第一协方差矩阵和噪声协方差矩阵,得到语音信号的第二协方差矩阵;获取第二协方差矩阵的特征值;将最大特征值对应的特征向量作为方向向量。

在本发明的一个实施例中,基于人工智能的语音识别方法,还包括将目标语音信号输入远场声学模型进行识别。

为达上述目的,本发明第二方面实施例提出了一种基于人工智能的语音识别装置,包括:采集模块,用于对麦克风阵列进行采集,获取多路第一语音信号;波束形成模块,用于基于wpe算法去除每路第一语音信号中的混响信号,得到每路第二语音信号,并将每路第二语音信号通过mvdr波束形成器,获取一路第三语音信号,以及将第三语音信号分别输入到自适应阻塞矩阵模块和自适应干扰消除模块中;自适应阻塞矩阵模块,用于基于第三语音信号与每路第一语音信号进行噪声提取,得到每路的第一噪声信号;自适应干扰消除模块,用于将每路的第一噪声信号进行滤波后叠加,得到一路的第二噪声信号,并将第三语音信号与第二噪声信号相减,得到目标语音信号。

本发明实施例的基于人工智能的语音识别装置,通过麦克风阵列获取第一语音信号,然后基于wpe算法去除对每路第一语音信号中的混响信号,并将去混响后获得的第二语音信号通过mvdr波束形成器合为一路第三语音信号,再将第三语音信号分别输入自适应阻塞矩阵模块和自适应干扰消除模块中,自适应阻塞矩阵模块基于第三语音信号和每路第一语音信号进行噪声提取,获得每路的第一噪声信号,自适应干扰消除模块将每路的第一噪声信号滤波后叠加得到第二噪声信号,并用第三语音信号减去第二噪声信号,获得目标语音信号,实现了对语音识别输入信号进行解混响、增强、去噪声处理,解决了现有技术中远场语音识别率低的问题。

另外,本发明实施例的基于人工智能的语音识别方法,还包括以下附加技术特征:

在本发明的一个实施例中,波束形成模块,包括:选取单元,用于针对每一路,选取当前采样时刻之前的p个采样时刻的第一语音信号;其中,p≥1,p的取值为整数;线性预测单元,用于将p个采样时刻的第一语音信号输入到当前时刻对应的第一滤波器中,对当前采样时刻的混响信号进行线性预测;解混响单元,用于利用当前采样时刻的第一语音信号与预测得到的混响信号做减,得到第二语音信号。

在本发明的一个实施例中,选取单元,具体包括:确定第一采样时刻和第二采样时刻,其中,第一采样时刻与第二采样时刻之间存在p个采样时刻;其中第二采样时刻接近当前采样时刻,第二采样时刻与当前采样时刻之间存在q个采样时刻;从第一采样时刻开始至第二采样时刻为止,选取p个采样时刻的第一语音信号。

在本发明的一个实施例中,波形形成模块,还包括:获取单元,用于获取当前采样时刻第二语音信号的语音功率,基于前一采样时刻的语音功率与当前采样时刻的语音功率进行加权最小化处理,基于最小化处理后的结果计算下一采样时刻对应的第一滤波器的滤波系数。

在本发明的一个实施例中,波形形成模块,还包括:声源定位单元,用于在将每路第二语音信号通过mvdr波束形成器,获取一路第三语音信号之前,确定声源的方向向量,基于方向向量和预估的噪声协方差矩阵,确定mvdr波束形成器的最优系数。

在本发明的一个实施例中,声源定位单元,具体用于:采集同一声源的预设时长内的第一语音信号;获取预设时长内第一语音信号的第一协方差矩阵;采集声源处于静音状态下预设时长内的噪声信号;获取噪声信号的噪声协方差矩阵;基于第一协方差矩阵和噪声协方差矩阵,得到语音信号的第二协方差矩阵;获取第二协方差矩阵的特征值;将最大特征值对应的特征向量作为方向向量。

在本发明的一个实施例中,基于人工智能的语音识别装置,还包括:识别模块,用于将目标语音信号输入远场声学模型进行识别。

为达上述目的,本发明第三方面实施例提出了另一种基于人工智能的语音识别装置,包括:存储器和处理器,其中,处理器通过读取存储器中存储的可执行程序代码来运行与可执行程序代码对应的程序,以用于实现如第一方面实施例所述的基于人工智能的语音识别方法。

本发明实施例的基于人工智能的语音识别装置,通过麦克风阵列获取第一语音信号,然后基于wpe算法去除每路第一语音信号中的混响信号,并将去混响后获得的第二语音信号通过mvdr波束形成器合为一路第三语音信号,再将第三语音信号分别输入自适应阻塞矩阵模块和自适应干扰消除模块中,自适应阻塞矩阵模块基于第三语音信号和每路第一语音信号进行噪声提取,获得每路的第一噪声信号,自适应干扰消除模块将每路的第一噪声信号滤波后叠加得到第二噪声信号,并用第三语音信号减去第二噪声信号,获得目标语音信号,实现了对语音识别输入信号进行解混响、增强、去噪声处理,解决了现有技术中远场语音识别率低的问题。

为达上述目的,本发明第四方面实施例提出了一种计算机程序产品,当计算机程序产品中的指令由处理器执行时,执行如第一方面实施例所述的基于人工智能的语音识别方法。

为达上述目的,本发明第五方面实施例提出了一种非临时性计算机可读存储介质,其上存储有计算机程序,当计算机程序被处理器执行时实现如第一方面实施例所述的基于人工智能的语音识别方法。

本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。

附图说明

本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:

图1为本发明实施例提供的一种基于人工智能的语音识别方法的流程示意图;

图2为本发明实施例提供的一种基于wpe算法和mvdr波束形成器处理语音信号的流程示意图;

图3为本发明实施例提供的一种基于人工智能的语音识别方法的框架示意图;

图4为本发明实施例提供的一种基于人工智能的语音识别装置的结构示意图;

图5为本发明实施例提供的另一种基于人工智能的语音识别装置的结构示意图;

图6为本发明实施例提供的再一种基于人工智能的语音识别装置的结构示意图。

具体实施方式

下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。

下面参考附图描述本发明实施例的基于人工智能的语音识别方法及装置。

目前比较成熟的语音识别技术大多应用在近场环境中,也就是用户距离麦克风的距离较近的情况,这种场景下的识别率大都比较高。但是,当用户在远场环境中,例如用户距离麦克风3米、5米或者更远时,现有的语音识别模型或系统的语音识别性能会急剧下降。

目前,绝大多数采用加噪训练的方式,模拟远场场景下的语音信号,通过训练数据来重新训练声学模型使之与远场场景匹配。但是,该方式并没有对输入信号做任何处理,完全依赖训练数据。由于训练数据无法覆盖噪声、混响等干扰因素的全部可能性,因此这种模型的表征能力有限,所带来的语音识别性能提升也有限。

为此本发明实施例提出一种基于人工智能的语音识别方法,以实现对语音识别输入信号进行解混响、增强、去噪声处理,解决现有技术中远场语音识别率低的问题。

图1为本发明实施例提供的一种基于人工智能的语音识别方法的流程示意图。

如图1所示,该基于人工智能的语音识别方法包括以下步骤:

s101,对麦克风阵列进行采集,获取多路第一语音信号。

为了增强待识别语音信号,在本发明的实施例中,采用麦克风阵列作为前端输入设备,通过麦克风阵列中包括的所有麦克风同时采集声源所发出的语音信号,以获取多路第一语音信号。

s102,基于wpe算法去除每路第一语音信号中的混响信号,得到每路第二语音信号,并将每路第二语音信号通过mvdr波束形成器,获取一路第三语音信号。

由于在远场语音识别场景下,也就是用户进行语音输入时,距离麦克风较远时,混响十分严重。因此,为了提高语音识别率,需要对混响进行一定程度的抑制。

在本发明的实施例中,通过wpe(weightedpredictionerror,简称加权预测误差)算法,利用语音信号的线性预测特性,对每路第一语音信号中的混响信号加以抑制。

由于本发明实施例中采用的是多通道语音输入系统,因此需要采用多通道wpe算法,也就是说,对于多路输入的场景,可针对每一路的第一语音信号通过wpe算法进行解混响操作,达到去除每路的第一语音信号中的混响信号的目的,获得每路的第二语音信号。

在获得每路的第二语音信号后,为了进一步消除残余的混响信号,以及增强信号强度,可通过mvdr(minimumvariancedistortionlessresponse,简称最小方差无畸变响应)波束形成器,对多路第二语音信号进行滤波,获得一路第三语音信号。

s103,将第三语音信号分别输入到自适应阻塞矩阵模块和自适应干扰消除模块中。

其中,自适应阻塞矩阵模块主要通过对第三语音信号进行自适应滤波,抑制第三语音信号中的语音分量,保留噪声分量,也就是提取第三语音信号中的噪声;自适应干扰消除模块主要用于消除第三语音信号中的噪声。

在本发明的一个实施例中,在经过wpe算法解混响操作和mvdr波束形成器滤波操作,形成一路第三语音信号后,可将第三语音信号分别输入到自适应阻塞矩阵模块和自适应干扰消除模块中,去除第三语音信号中的噪声,获得目标语音信号。

s104,在自适应阻塞矩阵模块中基于第三语音信号与每路第一语音信号进行噪声提取,得到每路的第一噪声信号。

在本发明的实施例中,自适应阻塞矩阵模块中为每路输入的第三语音信号设置有自适应滤波器,该自适应滤波器采用重叠保留(overlap-save)频域滤波算法对输入信号进行滤波,下面以一路第一语音信号为例来说明自适应阻塞矩阵模块的工作机制。

假设每次处理的数据长度为l,为了满足overlap-save频域滤波算法的运行条件,需要构造长度为2l的第一语音信号和第三语音信号,其中,第三语音信号可表示成2l×2l的频域信号矩阵,如公式一所示。具体地,利用第三语音信号的上一采样时刻的l维数据,以及当前采样时刻的l维数据,构造长度为2l维的第三语音信号。

公式一:yf(k)=diag{f(yf(kl-l),…,yf(kl),…,yf(kl+l-1))}

其中,yf(k)表示第三语音信号。

其中,f为傅里叶变换矩阵,一个时域信号左乘f矩阵,表示该信号的傅里叶变换,即可以将该时域信号转换成频域信号。同样的,一个频域信号左乘f-1矩阵,表示该信号的傅立叶反变换,即可以将该频域信号转换成时域信号。

为了实现自适应阻塞矩阵模块中的频域自适应滤波,还需要构造2l维滤波器hb(m)(k),其中,m=0,1,…,m-1,m表示麦克风数量,即每一个麦克风通道对应一个2l维滤波器。

自适应滤波器的长度同样是2l,其中,前l维为正常的滤波器系数,后l维补0,以构造长度为2l的频域自适应滤波器,如公式二所示。

公式二:

频域自适应滤波过程可以表示为yf(k)与二者的乘积:

接下来,提取语音信号中的噪声信号,即第一噪声信号。第一噪声信号既可以在时域中计算,也可以在频域中计算。

在本发明的一个实施例中,提供了在时域中计算第一噪声信号的方法,具体方法如下:

将频域的第三语音信号输入到自适应阻塞矩阵模块中2l维滤波器中,该2l维滤波器可以对该第三语音信号进行自适应滤波,得到频域自适应滤波的输出结果为

由于输入到自适应阻塞矩阵模块中的第三语音信号为频域信号,可以将自适应滤波的结果左乘f-1变换到时域,得到转换后的时域信号的长度仍为2l。其中,只有后l个数据是有效数据,而前l个数据为无效数据。也就是说,在计算第一噪声信号时,需要保留后一半数据,而将前一半数据丢弃或者置零。可通过左乘一个w矩阵,w=diag[01×l,11×l]实现。由此,得到与自适应滤波器输出的频域信号对应的2l维时域信号需要注意的是,左乘一个w矩阵后,该时域信号的前一半数据均为0。

由于与自适应滤波器输出的频域信号对应的时域信号的前l个数据被置为0,因此,第一语音信号也用相同的形式表示,如公式三所示。

公式三:xm(k)=(01×l,xm(kl),…,xm(kl+l-1))t

为了保证整个自适应滤波系统是一个因果系统,可对第一语音信号进行一个延时,时间长度为τ,即xm(k-τ)。

第一语音信号与自适应滤波器的输出信号的差值,即为第一噪声信号,如公式四所示。

公式四:

在本发明的实施例中,将第三语音信号作为自适应阻塞矩阵模块的输入信号,第一语音信号作为参考信号,来提取得到每路的第一噪声信号。

另外,由于第一噪声信号为第一语音信号与自适应滤波器的输出信号的差值,即为自适应滤波器的误差信号,进而可以根据得到的第一噪声信号,对自适应滤波器进行更新,以得到能用于对下一个采样时刻的第三语音信号进行滤波的自适应滤波器。自适应滤波器的频域更新公式,如公式五所示。

公式五:

其中,第一噪声信号与第三语音信号的乘积为自适应滤波器的更新方向。μ(k)为步长矩阵,用来调节自适应滤波器每次迭代更新的步长,通常的计算方法:其中,p(k)表示第三语音信号的功率谱,输入信号能量越大,迭代步长越小。

s105,在自适应干扰消除模块中将每路的第一噪声信号进行滤波后叠加,得到一路的第二噪声信号,并将第三语音信号与第二噪声信号相减,得到目标语音信号。

在本发明的实施例中,自适应干扰消除模块的输入信号为自适应阻塞矩阵模块的输出信号,即每路的第一噪声信号作为输入信号,第三语音信号作为参考信号。自适应干扰消除模块同样为每路输入的第一噪声信号设置有自适应滤波器,该自适应滤波器采用overlap-save频域滤波算法。下面介绍自适应干扰消除模块中自适应滤波器的工作机制。

首先,构造自适应干扰消除模块的输入信号。对自适应阻塞矩阵模块的输出信号第一噪声信号进行傅里叶变换,即可得到自适应干扰消除模块的输入信号,即

为了满足overlap-save滤波算法的条件,同样需要构造长度为2l的输入信号,其中前l维为上一时刻第一噪声信号的数据,后l维为当前时刻第一噪声信号的数据,在本发明的一个实施例中,表达式如公式六所示。

公式六:

其中,下表lastl表示只取2l维向量的后l维数据,这是因为是2l维的,且前l维的数据已经被置零,只有后l维的数据是有效的。

在本发明的另一实施例中,公式六有另外一种表达方式。由于第一噪声信号的前l维数据均被置零,只有后l维数据有效,因此可以通过“将向量进行长度为l圆周移位,再与相加”的方式,来构造输入信号如公式七所示。

公式七:

其中,j=diag{(1,-1,1,-1,…,1,-1,)1×2l}。一个频域信号左乘j矩阵,相当于它对应的时域信号完成了长度为l的圆周移位。

然后是自适应干扰消除模块的自适应滤波过程。具体地,将每路的频域第一噪声信号输入到自适应干扰消除模块对应的自适应滤波器中进行滤波,得到该滤波器的滤波结果。自适应干扰消除模块的自适应滤波,与自适应阻塞矩阵模块的自适应滤波不同,自适应干扰消除模块的自适应滤波最终只有一路输出,即第二噪声信号。而自适应阻塞矩阵模块的自适应滤波有多个输出,其输出个数与麦克风个数相同。

因此,在自适应干扰消除模块中,需要将每个通道的自适应滤波后的结果叠加,得到自适应干扰消除模块的自适应滤波的输出信号,即第二噪声信号,如公式八所示。

公式八:

为了计算目标语音信号,需要将第二噪声信号变换到时域,并将前l个值置零,只保留后l个输出值,如公式九所示。

公式九:

对于参考信号,也就是第三语音信号,需要将其构造成2l维,利用被置零的前l维数据,以及当前采样时刻的l维数据,构造长度为2l维的第三语音信号,如公式十所示。

公式十:yf(k)=(01×l,yf(kl-τ),…,yf(kl+l-1-τ))t

其中,τ为延时项,对参考信号进行延时,以保证系统的因果性。

于是,第三语音信号减去变换到时域的第二噪声信号,所得的差值即为目标语音信号,其表达式如公式十一所示。

公式十一:ea(k)=yf(k)-ya(k)

由于目标语音信号为第三语音信号与自适应滤波器的输出信号的差值,即为自适应滤波器的误差信号,进而可以根据得到的目标语音信号,对自适应滤波器进行更新,以得到能用于对下一个采样时刻的第一噪声信号进行滤波的自适应滤波器。自适应滤波器的迭代更新公式,如公式十二所示。

公式十二:

其中,频域目标语音信号fea(k)与输入信号的乘积为滤波器的更新方向。μ(k)为步长矩阵,用来调节自适应滤波器每次迭代更新的步长,计算公式如步骤s104中所述。

在本发明的实施例中,在自适应干扰消除模块中将每路的第一噪声信号进行滤波后叠加,得到一路的第二噪声信号,并将第三语音信号与第二噪声信号相减,即可得到目标语音信号。

在获得目标语音信号之后,再将目标语音信号输入到远场声学模型进行识别,得到语音识别结果。其中,可采集远场语音数据作为训练数据,训练远场声学模型,使训练数据和测试数据尽可能匹配,以提高语音识别的效率。

本发明实施例的基于人工智能的语音识别方法,通过麦克风阵列获取第一语音信号,然后基于wpe算法去除每路第一语音信号中的混响信号,并将去混响后获得的第二语音信号通过mvdr波束形成器合为一路第三语音信号,再将第三语音信号分别输入自适应阻塞矩阵模块和自适应干扰消除模块中,自适应阻塞矩阵模块基于第三语音信号和每路第一语音信号进行噪声提取,获得每路的第一噪声信号,自适应干扰消除模块将每路的第一噪声信号滤波后叠加得到第二噪声信号,并用第三语音信号减去第二噪声信号,获得目标语音信号,实现了对语音识别输入信号进行解混响、增强、去噪声处理,解决了现有技术中远场语音识别率低的问题。

下面结合图2详细描述上述步骤s102中通过wpe算法和mvdr波束形成器,对第一语音信号进行处理,获得第三语音信号的过程。

如图2所示,步骤s102可包括以下步骤:

s201,针对每一路,选取当前采样时刻之前的p个采样时刻的第一语音信号。

其中,p≥1,p的取值为整数。

在利用语言信号的线性预测特征对混响信号进行线性预测时,由于直接预测的方法会削弱语音信号本身的相关性,对语音本身损伤比较严重,因此在本发明的实施例中,在利用线性预测特性时,并不直接用当前时刻的前p个采样时刻来预测当前采样时刻的值,而是用再之前的p个采样点来预测当前采样点的值。

具体而言,首先确定第一采样时刻和第二采样时刻,其中,第一采样时刻与第二采样时刻之间存在p个采样时刻,第二采样时刻接近当前采样时刻,第二采样时刻与当前采样时刻之间存在q个采样时刻。也就是说,第二采样时刻与当前采样时刻之间空余q个点,以保留语音信号的短时相关性。

然后,从第一采样时刻开始至第二采样时刻为止,选取p个采样时刻的第一语音信号。

s202,将p个采样时刻的第一语音信号输入到当前时刻对应的第一滤波器中,对当前采样时刻的混响信号进行线性预测。

在本发明的实施例中,设当前时刻对应的第一滤波器系数为h(n),将p个采样时刻的第一语音信号输入到当前时刻对应的第一滤波器中,对当前采样时刻的混响信号进行线性预测,如公式十三所示。

公式十三:

其中,yl(n)为预测的混响信号,y(n)为当前采样时刻的第一语音信号。

s203,利用当前采样时刻的第一语音信号与预测得到的混响信号做减,得到第二语音信号。

将当前采样时刻的第一语音信号y(n),减去预测得到的混响信号yl(n),得到的差值为第二语音信号x(n),如公式十四所示。

公式十四:x(n)=y(n)-yl(n)

为了得到第一滤波器的最优系数,通常最小化均方误差,采用梯度下降的方法迭代计算第一滤波器系数h(n),如公式十四所示。

公式十四:

这种方法的一个前提条件是输入信号y(n)是平稳信号,但是语音信号是非平稳的,采用该方法会导致对于语音功率大的部分,预测误差也大,语音功率小的部分,预测误差也小。因此,需要对第二语音信号进行加权。

具体地,获取当前采样时刻第二语音信号的语音功率,基于前一采样时刻的语音功率与当前采样时刻的语音功率进行加权最小化处理,最小化方法如公式十五所示。

公式十五:

其中,σ2(h)表示第二语音信号的语音功率。

从公式十五可以看出,有两个变量σ2(h)和h(n),本发明的实施例中,采用辅助变量优化方法,分两步进行优化。

第一步,在第n步迭代,固定第一滤波器系数h(n),得到第n步的第二语音信号功率σ2(h),如公式十六所示。

公式十六:

第二步,固定σ2(h),最小化公式十五的问题就转化成一个标准的均方误差最小化方法,可以直接得到h(n)的最优估计,如公式十七所示。

公式十七:h(n)=r-1r

其中,y(n)=[y(n),y(n-1),…,y(n-p+1)]t

基于最小化处理后的结果,可得到下一采样时刻对应的第一滤波器的滤波系数。

s204,将每路第二语音信号通过mvdr波束形成器,获取一路第三语音信号。

在本发明的实施例中,将第一语音信号经过wpe算法解混响处理,得到每路的第二语音信号后,再将每路的第二语音信号通过mvdr波束形成器,进一步消除残余混响和噪声,得到一路的第三语音信号。

为了提高mvdr波束形成器滤波效果,可在第二语音信号通过mvdr波束形成器之前,先确定mvdr波束形成器的最优系数。

在本发明的一个实施例中,假设空间中只有一个有效声源,首先确定声源的方向向量。具体而言,先采集同一声源的预设时长内的第一语音信号,以获取预设时长内第一语音信号的第一协方差矩阵,再采集声源处于静音状态下预设时长内的噪声信号,以获取噪声信号的噪声协方差矩阵。然后,将第一协方差矩阵减去噪声协方差矩阵,得到的差值为语音信号的第二协方差矩阵,表达式如公式十八所示。

公式十八:rss=rxx-rnn

其中,rss为语音信号的第二协方差矩阵,rxx为第一协方差矩阵,rnn为噪声协方差矩阵。

之后,计算第二协方差矩阵rss的特征值。由于假设空间中只有一个有效声源,因此第二协方差矩阵rss的特征值中会有一个特征值远远大于其他特征值,那么将最大特征值对应的特征向量作为声源的方向向量。

最后,基于声源的方向向量和预估的噪声协方差矩阵,确定mvdr波束形成器的最优系数。mvdr波束形成器的最优系数的表达式,如公式十九所示。

公式十九:

其中,rnn为噪声协方差矩阵,a为声源的方向向量。

在确定mvdr波束形成器的最优系数之后,将每路的第二语音信号通过mvdr波束形成器进行滤波,得到一路的第三语音信号,如公式二十所示。

公式二十:yf(n)=whx

现有技术中,通常通过声源定位技术定位出声源的方位,从而确定方向向量,但是声源定位本身也会带来误差,尤其是远场情况下,定位误差较大,一旦定位方向出现错误,那么mvdr波束形成器的输出结果就会完全失效。本发明实施例提出的确定方向向量的方法,与现有技术相比,误差小且不存在mvdr波束形成器的输出结果完全失效的问题。

本发明实施例,通过wpe算法和mvdr波束形成器对采集的第一语音信号进行解混响和滤波,实现了对语音信号中的混响进行一定程度的抑制。

下面结合图3,通过一个具体实施例说明本发明实施例提出的基于人工智能的语音识别方法。

首先,对包含m个麦克风的麦克风阵列进行语音采集,获得x0(k)、x1(k)、…xm-1(k)等m路第一语音信号。

如图3所示,基于wpe和mvdr波束形成器构成固定波束形成模块,对x0(k)、x1(k)、…、xm-1(k)等m路第一语音信号进行去混响、滤波等处理,得到一路的第三语音信号。

然后,将第三语音信号分别输入到对应的h(b,0)(n)、h(b,1)(n)…、h(b,m-1)(n)等m路滤波器中,也就是通过自适应阻塞矩阵模块对第二语音信号进行滤波处理,并将每路的第一语音信号通过z-l延时后的信号,减去对应的经过滤波器处理后的信号,得到u0(k)、u1(k)、…、um-1(k)等m路第一噪声信号。

再将u0(k)、u1(k)、…、um-1(k)等m路第一噪声信号,分别输入到对应的h(a,0)(n)、h(a,1)(n)、…、h(a,m-1)(n)等滤波器中进行滤波处理,并将处理后的信号进行叠加,得到一路的第二噪声信号。之后,再将延时后的第三语音信号,减去第二噪声信号,从而获得目标语音信号y(k)。

获得目标语音信号后,再将目标语音信号输入到远场声学模型中进行识别,得到语音识别结果。

为达了实现上述实施例,本发明还提出一种基于人工智能的语音识别装置。

如图4所示,该基于人工智能的语音识别装置包括:采集模块410、波束形成模块420、自适应阻塞矩阵模块430、自适应干扰消除模块440。

采集模块410用于对麦克风阵列进行采集,获取多路第一语音信号。

波束形成模块420用于基于wpe算法去除每路第一语音信号中的混响信号,得到每路第二语音信号,并将每路第二语音信号通过mvdr波束形成器,获取一路第三语音信号,以及将第三语音信号分别输入到自适应阻塞矩阵模块430和自适应干扰消除模块440中。

自适应阻塞矩阵模块430用于基于第三语音信号与每路第一语音信号进行噪声提取,得到每路的第一噪声信号。

自适应干扰消除模块440用于将每路的第一噪声信号进行滤波后叠加,得到一路的第二噪声信号,并将第三语音信号与第二噪声信号相减,得到目标语音信号。

如图5所示,波束形成模块420具体包括:选取单元421、线性预测单元422、解混响单元423、获取单元424、声源定位单元425。

选取单元421用于针对每一路,选取当前采样时刻之前的p个采样时刻的第一语音信号;其中,p≥1,p的取值为整数。

选取单元421具体用于:确定第一采样时刻和第二采样时刻,其中,第一采样时刻与第二采样时刻之间存在p个采样时刻;其中,第二采样时刻接近当前采样时刻,第二采样时刻与当前采样时刻之间存在q个采样时刻;从第一采样时刻开始至第二采样时刻为止,选取p个采样时刻的第一语音信号。

线性预测单元422用于将p个采样时刻的第一语音信号输入到当前时刻对应的第一滤波器中,对当前采样时刻的混响信号进行线性预测。

解混响单元423用于利用当前采样时刻的第一语音信号与预测得到的混响信号做减,得到第二语音信号。

获取单元424用于获取当前采样时刻第二语音信号的语音功率,基于前一采样时刻的语音功率与当前采样时刻的语音功率进行加权最小化处理,基于最小化处理后的结果计算下一采样时刻对应的第一滤波器的滤波系数。

声源定位单元425用于在将每路第二语音信号通过mvdr波束形成器,获取一路第三语音信号之前,确定声源的方向向量,基于方向向量和预估的噪声协方差矩阵,确定mvdr波束形成器的最优系数。

声源定位单元425具体用于采集同一声源的预设时长内的第一语音信号;获取预设时长内第一语音信号的第一协方差矩阵;采集声源处于静音状态下预设时长内的噪声信号;获取噪声信号的噪声协方差矩阵;基于第一协方差矩阵和噪声协方差矩阵,得到语音信号的第二协方差矩阵;获取第二协方差矩阵的特征值;将最大特征值对应的特征向量作为方向向量。

如图6所示,在图5的基础上,该基于人工智能的语音识别装置还包括识别模块450。

识别模块450用于将目标语音信号输入远场声学模型进行识别。

需要说明的是,前述对基于人工智能的语音识别方法实施例的解释说明也适用于该实施例的基于人工智能的语音识别装置,此处不再赘述。

本发明实施例的基于人工智能的语音识别装置,通过麦克风阵列获取第一语音信号,然后基于wpe算法去除对每路第一语音信号中的混响信号,并将去混响后获得的第二语音信号通过mvdr波束形成器合为一路第三语音信号,再将第三语音信号分别输入自适应阻塞矩阵模块和自适应干扰消除模块中,自适应阻塞矩阵模块基于第三语音信号和每路第一语音信号进行噪声提取,获得每路的第一噪声信号,自适应干扰消除模块将每路的第一噪声信号滤波后叠加得到第二噪声信号,并用第三语音信号减去第二噪声信号,获得目标语音信号,实现了对语音识别输入信号进行解混响、增强、去噪声处理,解决了现有技术中远场语音识别率低的问题。

为了实现上述实施例,本发明实施例又提出了一种基于人工智能的语音识别装置,该装置包括存储器和处理器,其中,处理器通过读取存储器中存储的可执行程序代码来运行与可执行程序代码对应的程序,以用于实现如前述实施例所述的基于人工智能的语音识别方法。

本发明实施例的基于人工智能的语音识别装置,通过麦克风阵列获取第一语音信号,然后基于wpe算法去除每路第一语音信号中的混响信号,并将去混响后获得的第二语音信号通过mvdr波束形成器合为一路第三语音信号,再将第三语音信号分别输入自适应阻塞矩阵模块和自适应干扰消除模块中,自适应阻塞矩阵模块基于第三语音信号和每路第一语音信号进行噪声提取,获得每路的第一噪声信号,自适应干扰消除模块将每路的第一噪声信号滤波后叠加得到第二噪声信号,并用第三语音信号减去第二噪声信号,获得目标语音信号,实现了对语音识别输入信号进行解混响、增强、去噪声处理,解决了现有技术中远场语音识别率低的问题。

为了实现上述实施例,本发明还提出一种计算机程序产品,当计算机程序产品中的指令由处理器执行时,执行如前述实施例所述的基于人工智能的语音识别方法。

为了实现上述实施例,本发明还提出一种非临时性计算机可读存储介质,其上存储有计算机程序,当该计算机程序被处理器执行时能够实现如前述实施例所述的基于人工智能的语音识别方法。

在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。

此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。

流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。

在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(ram),只读存储器(rom),可擦除可编辑只读存储器(eprom或闪速存储器),光纤装置,以及便携式光盘只读存储器(cdrom)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。

应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。

本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。

此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。

上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。

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