语音端点检测方法及系统

文档序号:1688179 发布日期:2020-01-03 浏览:29次 >En<

阅读说明:本技术 语音端点检测方法及系统 (Voice endpoint detection method and system ) 是由 沈小正 周强 于 2019-09-26 设计创作,主要内容包括:本申请公开一种语音端点检测方法及系统,其中方法包括:对麦克风阵列所采集的音频信号进行语音增强;根据语音增强后的音频信号确定多个波达方向;判断所述多个波达方向中是否有存在于目标人声方位区域内的波达方向,并生成第一判断结果;将语音增强后的音频信号输入至预先训练的深度神经网络以判断是否存在目标语音信号,并生成第二判断结果;根据所述第一判断结果和所述第二判断结果确定是否存在目标语音信号。本申请实施例提供了一种新的VAD架构来解决干扰人声误触发VAD的问题,即考虑语音和噪声的分类,又考虑多通道语音信号在阵列上表现出来的方向信息,很好的区分目标人声和干扰人声以及环境噪声。(The application discloses a voice endpoint detection method and a system, wherein the method comprises the following steps: carrying out voice enhancement on an audio signal collected by a microphone array; determining a plurality of directions of arrival from the speech enhanced audio signal; judging whether the direction of arrival exists in the target human voice azimuth area or not in the plurality of directions of arrival, and generating a first judgment result; inputting the audio signal after the voice enhancement into a pre-trained deep neural network to judge whether a target voice signal exists or not and generating a second judgment result; and determining whether the target voice signal exists according to the first judgment result and the second judgment result. The embodiment of the application provides a new VAD architecture to solve the problem that VAD is falsely triggered by interfering voices, namely, the classification of voice and noise is considered, and the direction information of a multi-channel voice signal expressed on an array is also considered, so that the target voice, the interfering voices and the environmental noise are well distinguished.)

语音端点检测方法及系统

技术领域

本申请涉及语音识别技术领域,尤其涉及一种语音端点检测方法及系统。

背景技术

远场语音交互越来越普及,带有语音交互功能的设备快速占据市场,语音交互很大程度上方面了人们的生活。远场语音交互中非常重要的设备就是麦克风阵列,特别是在吵杂的环境中,麦克风阵列相对单个麦克具有较大的优势。业界大部分公司应用麦克风阵列去获得高信噪比的目标语音信号,然后送给语音识别引擎。现在业内主要使用的VAD包括两种架构,一种是开源工具kaidi中通过DNN训练模型来分类,判断语音和非语音帧的架构;另外一种开源工具webrtc中通过GMM计算每个频带噪声和语音的特征做VAD的判断。

在识别过程中需要通过语音活动端点检测(VAD)模块,业内所有的语音活动端点检测主要是采用神经网络训练的方法,从而区分语音和环境噪声,但是并不能够很好解决干扰人声的误判。由于麦克风阵列进行语音增强只是提升信干比和信噪比,而不是将环境噪声和干扰完全消除,主要考虑到语音失真和可懂度,业内不采用非线性算法去完全去除噪声和干扰,这就造成了现有的神经网络VAD在多人说话的嘈杂环境中性能较差。

发明内容

本申请实施例提供一种语音端点检测方法及系统,用于至少解决上述技术问题之一。

第一方面,本申请实施例提供一种语音端点检测方法,包括:

对麦克风阵列所采集的音频信号进行语音增强;

根据语音增强后的音频信号确定多个波达方向;

判断所述多个波达方向中是否有存在于目标人声方位区域内的波达方向,并生成第一判断结果;

将语音增强后的音频信号输入至预先训练的深度神经网络以判断是否存在目标语音信号,并生成第二判断结果;

根据所述第一判断结果和所述第二判断结果确定是否存在目标语音信号。

第二方面,本申请实施例提供一种语音端点检测系统,包括:

信号增强模块,用于对麦克风阵列所采集的音频信号进行语音增强;

波达方向确定模块,用于根据语音增强后的音频信号确定多个波达方向;

第一判断模块,用于判断所述多个波达方向中是否有存在于目标人声方位区域内的波达方向,并生成第一判断结果;

第二判断模块,用于将语音增强后的音频信号输入至预先训练的深度神经网络以判断是否存在目标语音信号,并生成第二判断结果;

目标语音信号确定模块,用于根据所述第一判断结果和所述第二判断结果确定是否存在目标语音信号。

第三方面,本申请实施例提供一种存储介质,所述存储介质中存储有一个或多个包括执行指令的程序,所述执行指令能够被电子设备(包括但不限于计算机,服务器,或者网络设备等)读取并执行,以用于执行本申请上述任一项语音端点检测方法。

第四方面,提供一种电子设备,其包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器,其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本申请上述任一项语音端点检测方法。

第五方面,本申请实施例还提供一种计算机程序产品,所述计算机程序产品包括存储在存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行上述任一项语音端点检测方法。

本申请实施例的有益效果在于:提供了一种新的VAD架构来解决干扰人声误触发VAD的问题,即考虑语音和噪声的分类,又考虑多通道语音信号在阵列上表现出来的方向信息,很好的区分目标人声和干扰人声以及环境噪声。

附图说明

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

图1为本申请的语音端点检测方法的一实施例的流程图;

图2为本申请的语音端点检测方法的另一实施例的流程图;

图3为本申请的语音端点检测方法的又一实施例的流程图;

图4为本申请的语音端点检测系统的一实施例的原理框图;

图5为本申请的语音端点检测系统中的第二判断模块的一实施例的原理框图;

图6为本申请的语音端点检测系统中的波达方向确定模块的一实施例的原理框图;

图7为本申请的语音端点检测系统的另一实施例的原理框图;

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

具体实施方式

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。

发明人在实现本申请的过程中尝试进行语音增强来完全去除干扰人声,这种方案造成VAD性能大幅下降,如果采用数据适配的方法重新训练VAD,这种方案能够在一定程度上提升VAD的准确率,但是对识别性能影响较大,因为识别率对语音失真程度比较相关。

业内的VAD,主要采用麦克风阵列进行语音增强,消除干扰人声,假设VAD的输入是干净的目标语音信号,实际情况是高信干比的目标语音是很难获得的,特别在高混响高噪声的环境中。业内很多研究人员致力于语音增强的研究,但是并不去考虑研究具有空间区分性的VAD方法。

如图1所示,本申请的实施例提供一种语音端点检测方法,包括:

S10、对麦克风阵列所采集的音频信号进行语音增强;

S20、根据语音增强后的音频信号确定多个波达方向;

S30、判断所述多个波达方向中是否有存在于目标人声方位区域内的波达方向,并生成第一判断结果;

S40、将语音增强后的音频信号输入至预先训练的深度神经网络以判断是否存在目标语音信号,并生成第二判断结果;

S50、根据所述第一判断结果和所述第二判断结果确定是否存在目标语音信号。

本申请实施例提供了一种新的VAD架构来解决干扰人声误触发VAD的问题,VAD的最终状态由深度神经网络语音活动端点检测(DNN_VAD)和波束语音活动端点检测(BEAM_VAD)联合决定。即考虑语音和噪声的分类,又考虑多通道语音信号在阵列上表现出来的方向信息,很好的区分目标人声和干扰人声以及环境噪声。

DNN_VAD在近场语音交互中比较成熟,在远场语音交互中性能有待改善,本申请通过使用远场语音数据进行训练改善了DNN_VAD的性能。但是在远场声学环境比较恶劣的情况下,单一的DNN_VAD仍然难以获得满意性能。本申请通过DNN_VAD和BEAM_VAD结合的方法,改善上述性能。

如图2所示,为本申请的语音端点检测方法的另一实施例的流程图,在该实施例中,所述多个波达方向可分为多个方向组,每个方向组中包含多个波达方向。如图2所示,所述根据语音增强后的音频信号确定多个波达方向包括:

S21、确定对应于语音增强后的音频信号中的多帧音频信号的多个空间能量谱;

S22、选择每个所述空间能量谱中能量值从大到小排序在前的多个能量值所对应的多个波达方向,以确定所述多个方向组。

本申请实施例中BEAM_VAD主要考虑声源通过麦克阵列具有的方向性,判断目标方向上是否存在信号源,另外通过考虑语音信号的连续性,确保BEAM_VAD的状态连续稳定,有助于提升语音端点检测的准确性与可靠性。

在一些实施例中,所述判断所述多个波达方向中是否有存在于目标人声方位区域内的波达方向,并生成第一判断结果包括:

分别确定所述多个方向组中是否有存在于目标人声方位区域内的波达方向,并生成第一判断结果,其中,如果是则判定目标语音信号存在,否则判定目标语音信号不存在。

如图3所示,为本申请的语音端点检测方法的另一实施例的流程图,在该实施例中,所述将语音增强后的音频信号输入至预先训练的深度神经网络以判断是否存在目标语音信号,并生成第二判断结果包括:

S41、从语音增强后的音频信号中选择一帧作为目标帧音频信号;

S42、选出所述目标帧音频信号的前面多帧音频信号和后面多帧音频信号;

S43、分别将所述目标帧音频信号、所述前面多帧音频信号和所述后面多帧音频信号输入至预先训练好的深度神经网络得到对应的多个语音存在概率值;

S44、判断所述多个语音存在概率值的均值是否大于设定门限阈值,并生成第二判断结果,其中,如果是则判定目标语音信号存在,否则判定目标语音信号不存在。

本实施例中采用预先训练好的深度神经网络分别对多帧音频信号进行处理得到相应的多个语音存在概率值,并且对多个概率值取平均后与设定门限阈值进行比较以判断是否存在目标语音信号,从而避免了单独一帧信号处理存在的偶然性误差导致误判断,提升了判断的准确性与可靠性。

本申请专利采用DNN_VAD和BEAM_VAD联合的方法,即考虑语音和噪声的分类,又考虑多通道语音信号在阵列上表现出来的方向信息。具有步骤包括:

步骤1:麦克风阵列采集数据,对原始数据进行分帧加窗,帧长32ms,帧移16ms。

步骤2:对原始数据进行自适应滤波,获得增强之后的音频,比如在地铁购票设备中,针对线性麦克风阵列法线方向进行语音增强(方向的选择是因为地铁购票机等带屏设备,用户使用时主要位于麦克风阵列的法线方向),业界主要采用GSC框架进行波束形成。

步骤3:采用语音增强后的数据使用GCC_path算法计算DOA(Direction ofArrival,到达方向),一般选空间谱能量最大的两个值对应的位置作为DOA1、DOA2。

步骤4:如果DOA1、DOA2中至少一个数值包含在设定的目标人声方位区域内(目标人声方向区域可根据具体的产品和应用场景进行设定,例如,购票机设定为了90度方向),则目标信号的存在概率判断spp1为1。

步骤5:为了增加算法的鲁棒性,连续判断8帧信号的ssp取值。如果有1帧信号的ssp=1,判定BEAM_VAD最终输出状态为1,语音信号具有连续性,为确保语音信息不丢失,上述状态BEAM_VAD输出为1;如果连续8帧信号的ssp=0,判定BEAM_VAD最终输出状态为0。

步骤6:采用单帧波束形成之后的音频信号,提取24维fbank特征。

步骤7:输入预先训练好的DNN网络,DNN网络作为分类器,计算当前帧属于语音的存在概率spp2。

步骤8:设置buffer_ssp2长度为7,buffer_spp2中第4个位置保存当前帧的语音存在概率,向前看3帧,向后看3帧。示例性地,DNN_VAD主要需要考虑延迟和语音的持续时间,buffer_ssp2长度过大所带来的延迟会影响用户的体验。另外过短,会很难表征语音信号的信息,影响判断的准确率。通过大量实验,语音信号帧长1024,选取buffer_ssp2的长度为7。

步骤9:DNN_VAD基于buffer_spp2进行决策,对buffer_spp2进行求平均,如果大于设定门限值,DNN_VAD的输出状态为1,如果小于设定门限值,DNN_VAD的输出状态为0。其中,设定门限阈值根据DNN网络训练之后,对正例和反例的统计,根据统计结果确定门限阈值0.35。

步骤10:DNN_VAD和BEAM_VAD结果融合,DNN_VAD和BEAM_VAD取逻辑与,输出最终的VAD状态。

本申请专利在语音交互中尤其重要,特别是远场嘈杂环境中的多轮交互,比如地铁售票机、商场电视等设备上表现出极大的优势。具有空间信息的VAD,确保语音交互不受外部人声干扰,专注于目标说话人的沟通,提升用户体验。

需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作合并,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

如图4所示,本申请的实施例还提供一种语音端点检测系统400,包括:

信号增强模块410,用于对麦克风阵列所采集的音频信号进行语音增强;

波达方向确定模块420,用于根据语音增强后的音频信号确定多个波达方向;

第一判断模块430,用于判断所述多个波达方向中是否有存在于目标人声方位区域内的波达方向,并生成第一判断结果;

第二判断模块440,用于将语音增强后的音频信号输入至预先训练的深度神经网络以判断是否存在目标语音信号,并生成第二判断结果;

目标语音信号确定模块450,用于根据所述第一判断结果和所述第二判断结果确定是否存在目标语音信号。

本申请实施例提供了一种新的VAD架构来解决干扰人声误触发VAD的问题,VAD的最终状态由深度神经网络语音活动端点检测(DNN_VAD)和波束语音活动端点检测(BEAM_VAD)联合决定。即考虑语音和噪声的分类,又考虑多通道语音信号在阵列上表现出来的方向信息,很好的区分目标人声和干扰人声以及环境噪声。

在一些实施例中,所述多个波达方向可分为多个方向组,每个方向组中包含多个波达方向;如图5所示,在该实施例中,所述波达方向确定模块420包括:

空间能量谱确定单元421,用于确定对应于语音增强后的音频信号中的多帧音频信号的多个空间能量谱;

波达方向确定单元422,用于选择每个所述空间能量谱中能量值从大到小排序在前的多个能量值所对应的多个波达方向,以确定所述多个方向组。

在一些实施例中,所述判断所述多个波达方向中是否有存在于目标人声方位区域内的波达方向,并生成第一判断结果包括:

分别确定所述多个方向组中是否有存在于目标人声方位区域内的波达方向,并生成第一判断结果,其中,如果是则判定目标语音信号存在,否则判定目标语音信号不存在。

如图6所示,在一些实施例中本申请的语音端点检测系统中的第二判断模块440包括:

第一信号帧选择单元441,用于从语音增强后的音频信号中选择一帧作为目标帧音频信号;

第二信号帧选择单元442,用于选出所述目标帧音频信号的前面多帧音频信号和后面多帧音频信号;

概率值计算单元443,用于分别将所述目标帧音频信号、所述前面多帧音频信号和所述后面多帧音频信号输入至预先训练好的深度神经网络得到对应的多个语音存在概率值;

判断单元444,用于判断所述多个语音存在概率值的均值是否大于设定门限阈值,并生成第二判断结果,其中,如果是则判定目标语音信号存在,否则判定目标语音信号不存在。

如图7所示,为本申请的语音端点检测系统的另一实施例的原理框图,在该实施例中语音端点检测系统包括:

数据采集预处理模块,用于对麦克风阵列所采集的音频数据进行分帧加窗处理,帧长32ms,帧移16ms。

波束形成模块,用于数据采集预处理模块的输出数据进行自适应滤波,获得增强之后的音频,例如,在地铁购票设备中,针对线性麦克风阵列法线方向进行语音增强。

DOA估计模块,用于采用GCC_path算法对增强后的数据处理以计算DOA,一般选空间谱能量最大的两个值对应的位置作为DOA1、DOA2。

目标信号判断模块,用于当DOA1、DOA2中至少一个数值包含在设定的目标人声方位区域内时,则判断目标信号存在概率spp1为1。

波束语音活动端点检测状态判断模块,用于判断语音端点是否存在,为了增加算法的鲁棒性,连续判断8帧信号的ssp取值。如果有1帧信号的ssp=1,判定BEAM_VAD最终输出状态为1,语音信号具有连续性,为确保语音信息不丢失,上述状态BEAM_VAD输出为1;如果连续8帧信号的ssp=0,判定BEAM_VAD最终输出状态为0。

特征提取模块,用于采用单帧波束形成之后的音频信号,提取24维fbank特征。

深度神经网络解码模块,用于将所提取的特征输入预先训练好的DNN网络,DNN网络作为分类器,计算当前帧属于语音的存在概率spp2。

状态缓存模块,用于设置buffer_ssp2长度为7,buffer_spp2中第4个位置保存当前帧的语音存在概率,向前看3帧,向后看3帧。示例性地,DNN_VAD主要需要考虑延迟和语音的持续时间,buffer_ssp2长度过大所带来的延迟会影响用户的体验。另外过短,会很难表征语音信号的信息,影响判断的准确率。通过大量实验,语音信号帧长1024,选取buffer_ssp2的长度为7。

深度神经网络语音活动端点检测状态判断模块,用于判断语音端点是否存在。DNN_VAD基于buffer_spp2进行决策,对buffer_spp2进行求平均,如果大于设定门限值,DNN_VAD的输出状态为1,如果小于设定门限值,DNN_VAD的输出状态为0。其中,设定门限阈值根据DNN网络训练之后,对正例和反例的统计,根据统计结果确定门限阈值0.35。

语音活动端点检测联合判断模块,用于融合DNN_VAD和BEAM_VAD的结果,DNN_VAD和BEAM_VAD取逻辑与,输出最终的VAD状态。

在一些实施例中,本申请实施例提供一种非易失性计算机可读存储介质,所述存储介质中存储有一个或多个包括执行指令的程序,所述执行指令能够被电子设备(包括但不限于计算机,服务器,或者网络设备等)读取并执行,以用于执行本申请上述任一项语音端点检测方法。

在一些实施例中,本申请实施例还提供一种计算机程序产品,所述计算机程序产品包括存储在非易失性计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行上述任一项语音端点检测方法。

在一些实施例中,本申请实施例还提供一种电子设备,其包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器,其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行语音端点检测方法。

在一些实施例中,本申请实施例还提供一种存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现语音端点检测方法。

上述本申请实施例的语音端点检测系统可用于执行本申请实施例的语音端点检测方法,并相应的达到上述本申请实施例的实现语音端点检测方法所达到的技术效果,这里不再赘述。本申请实施例中可以通过硬件处理器(hardware processor)来实现相关功能模块。

图8是本申请另一实施例提供的执行语音端点检测方法的电子设备的硬件结构示意图,如图8所示,该设备包括:一个或多个处理器810以及存储器820,图8中以一个处理器810为例。

执行语音端点检测方法的设备还可以包括:输入装置830和输出装置840。

处理器810、存储器820、输入装置830和输出装置840可以通过总线或者其他方式连接,图8中以通过总线连接为例。

存储器820作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本申请实施例中的语音端点检测方法对应的程序指令/模块。处理器810通过运行存储在存储器820中的非易失性软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例语音端点检测方法。

存储器820可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据语音端点检测装置的使用所创建的数据等。此外,存储器820可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器820可选包括相对于处理器810远程设置的存储器,这些远程存储器可以通过网络连接至语音端点检测装置。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

输入装置830可接收输入的数字或字符信息,以及产生与语音端点检测装置的用户设置以及功能控制有关的信号。输出装置840可包括显示屏等显示设备。

所述一个或者多个模块存储在所述存储器820中,当被所述一个或者多个处理器810执行时,执行上述任意方法实施例中的语音端点检测方法。

上述产品可执行本申请实施例所提供的方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本申请实施例所提供的方法。

本申请实施例的电子设备以多种形式存在,包括但不限于:

(1)移动通信设备:这类设备的特点是具备移动通信功能,并且以提供话音、数据通信为主要目标。这类终端包括:智能手机(例如iPhone)、多媒体手机、功能性手机,以及低端手机等。

(2)超移动个人计算机设备:这类设备属于个人计算机的范畴,有计算和处理功能,一般也具备移动上网特性。这类终端包括:PDA、MID和UMPC设备等,例如iPad。

(3)便携式娱乐设备:这类设备可以显示和播放多媒体内容。该类设备包括:音频、视频播放器(例如iPod),掌上游戏机,电子书,以及智能玩具和便携式车载导航设备。

(4)服务器:提供计算服务的设备,服务器的构成包括处理器、硬盘、内存、系统总线等,服务器和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。

(5)其他具有数据交互功能的电子装置。

以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。

最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

15页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:热辅助磁记录介质和磁存储装置

网友询问留言

已有0条留言

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

精彩留言,会给你点赞!