一种基于位置信息的语音端点检测方法与流程

文档序号:13423597阅读:2212来源:国知局
一种基于位置信息的语音端点检测方法与流程

本发明涉及语音检测领域,尤其是涉及一种基于位置信息的语音端点检测方法。



背景技术:

语音是人类最自然的信息载体,很可能成为未来人机交互的主要方式,而语音端点检测是语音分析、语音合成、语音编码、说话人识别中的一个重要环节,直接影响到后续工作的性能。

语音端点检测,通常是指在有噪声或其他干扰的环境下分辨出音频信号流中的语音信号和非语音信号,并确定语音信号的起始点和终止点,为后续的信号处理提供必要的支持。但在实际应用中,由于噪声的引入、环境的改变甚至是语音自身的性质都会导致端点检测的结果不准确,系统的识别性能也不能得到保证。由于现实环境下没有完全纯净的语音信号,往往都伴有噪声或其他干扰,通常会使端点检测性能显著地下降。由于实际应用中的语音采集于不同的场景中,常常会混入不同类型的环境噪音,这增加了语音端点检测的难度,并降低了语音端点检测的准确性。



技术实现要素:

本发明的目的是针对上述问题提供一种基于位置信息的语音端点检测方法。

本发明的目的可以通过以下技术方案来实现:

一种基于位置信息的语音端点检测方法,所述方法包括下列步骤:

a1)采集音频,同时获取音频对应的位置信息;

a2)根据步骤a1)得到的音频对应的位置信息,确定音频所处的噪声环境,并选取相应的深度神经网络端点检测模型;

a3)将音频作为输入通过步骤a2)选定的深度神经网络端点检测模型进行端点检测,得到的输出结果作为语音端点的检测结果。

所述步骤a1)具体为:

a11)通过音频采集装置采集音频;

a12)通过定位装置获取音频对应的位置信息。

所述定位装置包括gps定位器。

所述步骤a1)还包括:通过谱减法对采集的音频进行降噪处理。

所述深度神经网络端点检测模型的训练过程具体为:

b1)对噪声环境进行划分;

b2)采集不同噪声环境下的音频数据作为训练样本;

b3)分别对不同噪声环境下的训练样本进行深度神经网络训练,得到不同噪声环境下的深度神经网络端点检测模型。

所述噪声环境包括机场环境、车载环境、展会环境、餐厅环境、街道环境、地铁站环境和火车站环境。

所述步骤b2)还包括:通过谱减法对样本进行降噪处理。

与现有技术相比,本发明具有以下有益效果:

(1)通过在采集音频的同时得到音频对应的位置信息,根据位置信息自动确定该音频所处的噪声环境,通过自动选取相应噪声环境下的深度神经网络端点检测模型对音频进行端点检测,从而得到语音端点的检测结果,这种方法可以最大程度的排除环境噪声对音频端点检测带来的干扰和影响,提高了语音端点检测的准确性。

(2)在对音频的位置信息进行获取的过程中,主要是通过gps定位器来获取的,由于gps技术已经十分成熟,因此定位准确且价格便宜,性价比高,既确保了定位的效果也节省了成本,便于推广。

(3)在对音频进行采集后还通过谱减法对采集的音频进行降噪处理,这是由于现有的基于深度神经网络的语音检测系统,在训练数据足够充足、网络结构足够复杂的条件下,即使不使用语音增强的方法,深度神经网络也能较好的处理不同信噪比条件下的语音端点检测任务。但是在训练数据量不大,深度神经网络结构较为简单的时候,深度神经网络较难从低信噪比的数据中学习到语音帧与非语音帧的区别。所以通过谱减法做语音增强处理,可以取得更好的检测效果,而且也可以降低对神经网络训练样本量的要求,实用性能强。

(4)在训练深度神经网络端点检测模型的过程中,首先将噪声环境进行了划分,包括机场环境、车载环境、展会环境、餐厅环境、街道环境、地铁站环境和火车站环境,通过这样一个较为全面的环境划分,可以尽量概括所有的环境噪声,适用范围广。

附图说明

图1为本发明的方法流程图;

图2为实施例中机场环境下的噪声波形图;

图3为实施例中车载环境下的噪声波形图;

图4为实施例中展会环境下的噪声波形图;

图5为实施例中餐厅环境下的噪声波形图;

图6为实施例中街道环境下的噪声波形图;

图7为实施例中地铁站环境下的噪声波形图;

图8为实施例中火车站环境下的噪声波形图。

具体实施方式

下面结合附图和具体实施例对本发明进行详细说明。本实施例以本发明技术方案为前提进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。

如图1所示,本发明提供了一种基于位置信息的语音端点检测方法,包括下列步骤:

a1)采集音频,同时获取音频对应的位置信息:

a11)通过音频采集装置采集音频;

a12)通过定位装置(本实施例中为gps定位器)获取音频对应的位置信息;

本步骤还包括:通过谱减法对采集的音频进行降噪处理;

a2)根据步骤a1)得到的音频对应的位置信息,确定音频所处的噪声环境,并自动选取事先训练好的、与噪声类型相关的深度神经网络端点检测模型,深度神经网络端点检测模型的训练过程具体为:

b1)对噪声环境进行划分;

b2)采集不同噪声环境下的音频数据作为样本,通过谱减法对样本进行降噪处理;

b3)分别对不同噪声环境下的训练样本各自单独进行深度神经网络训练,得到不同噪声环境下的深度神经网络端点检测模型;

a3)将音频作为输入通过步骤a2)选定的深度神经网络端点检测模型进行端点检测,得到的输出结果作为语音端点的检测结果。

本实施例中,噪声环境包括但不限于机场环境、车载环境、展会环境、餐厅环境、街道环境、地铁站环境和火车站环境。

根据上述步骤进行具体的语音端点检测,可以将整个过程分为两个阶段:训练阶段和测试阶段。训练阶段在系统开发时完成。以后只需操作测试阶段,即可完成基于位置信息的语音端点检测。

在训练阶段,先将不同噪音环境下的音频数据,即训练数据,进行谱减法降噪处理。然后在不同噪声环境下分别进行深度神经网络(dnn)训练,得到不同噪声环境下的深度神经网络端点检测模型。图2为机场环境下的噪声波形图,图3为车载环境下的噪声波形图,图4为展会环境下的噪声波形图,图5为餐厅环境下的噪声波形图,图6为街道环境下的噪声波形图,图7为地铁站环境下的噪声波形图,图8为火车站环境下的噪声波形图。由图可见这些环境中,噪声特特性各不相同,所以本发明在每种环境下都单独训练了一个深度神经网络,来实现不同噪声环境中的语音端点检测。在每一种环境下,训练数据先采用无监督学习的预训练方法来生成网络的初始权重,再通过反向传播(bp)算法来调整整个网络的参数。

在测试阶段,先通过gps获取位置信息,并通过麦克风获取与之对应的音频。之后根据位置信息确定噪声环境,并对音频进行谱减法降噪处理。然后将音频输入对应噪声环境下的深度神经网络端点检测模型,得到语音端点检测结果。

其中谱减法降噪方法的技术原理是:

在信噪比较低的情况下,大部分语音端点检测系统容易将包含噪音的非语音段判为语音段。因此,通常会在提取语音特征参数之前,使用一些语音增强的技术来提高信噪比。谱减算法为最早的语音降噪算法之一,它假设语音中的噪声只有加性噪声,只要将带噪语音谱减去噪声谱,就可以得到纯净语音幅度。假设|y|2与|n|2分别表示带噪语音与噪音在傅里叶变换后功率谱密度,则纯净语音的功率谱密度|x|2可以表示为如下形式:

|x|2=|y|2-|n|2

现有的基于深度神经网络的语音端点检测系统,在训练数据足够充足、网络结构足够复杂的条件下,即使不使用语音增强的方法,深度神经网络也能较好的处理不同信噪比条件下的端点检测。但是在训练数据量不大,深度神经网络结构较为简单的时候,深度神经网络较难从低信噪比的数据中学习到语音帧与非语音帧的区别。所以本实施例在提取特征之前使用了谱减法做语音增强处理,取得了较好的效果。

下面介绍涉及到的深度神经网络的训练方法:

深度神经网络训练过程可以拆解为前向传播和后向传播(bp)。前向传播中,除了最后一层softmax层,其他层都是输入×权重加上偏差,成为ah,然后通过一个激活函数(这里是sigmoid函数)作为输出bh。最后一层使用softmax输出。

深度神经网络的语音端点检测使用了softmax函数作为输出层函数,以获取分类结果,即预测标签o。在给定的一个k类分类问题中,若预测标签o属于k=1,...,k中第k类,则输出单元ck=1,ck的计算如下:

其中sk是softmax函数在ck=1情况下输出的概率值,sk和ak的定义如下。g(l)(·)表示第l个隐层的非线性激活函数,l=1,...,l,表示第l层的i节点与第l-1层的j节点之间的权重,{xr}r表示输入特征向量。

基于深度神经网络的语音端点检测使用了sigmoid函数作为非输出层的激活函数,sigmoid函数g(·)公式如下。-个具有输入x1,x2,...,权重ω1,ω2,...,和偏置b的sigmoid函数的输出是:

因为语音端点检测的预测标签只包含两类,即语音(speech)和非语音(nonspeech),我们可把基于深度神经网络的语音端点检测的预测标签表示如下。

其中h1/h0表示语音/非语音假设,η表示可调判决门限,通常设为0。

接下来就是后向传播,后向传播的目的在于最小化目标函数,这里的目标函数为交叉熵函数,

x为输入向量。y为答案向量,由一个1其余为0组成比如[0,1],1和0代表的是概率值,它们求和为1,可以理解为总共的2个分类结果。w为连接的权重。在上述公式中有,

sk为softmax函数的输出值,也就是预测的分类结果的概率,可得:

后向传播即是求权重w关于目标函数o的导数。我们先求a关于目标函数o的导数,再求w关于a的导数。a在上文提到过,是输入×权重,加上偏差的值。

softmax这层后向传播的推导可以用下式表示,

其中,

因此可以得到,

由sk与a关系可得:

因为答案标签yk由一个1其余为0组成,其中答案(answer)那项为1,其余为0,所以上式的后两项可以简化为,

因为,

其中h2代表与softmax层连接的第二个隐层中的一个节点,h2代表h2所在隐层的节点总数。所以softmax层最终的反向传播的结果为,

其他层使用sigmoid函数,其后向传播的推导表示如下。首先推倒h1h2之前的权重wh1h2关于目标函数的导数,

其中h1代表第一个隐层中的一个节点,h1∈h1。h2代表第二个隐层中的一个节点,h2∈h2,因此可得,

等号右边第一项,为sigmoid函数的导数,sigmoid函数在上面的公式中已给出,sigmoid函数的导数为:

通过上面的公式就可以得到导数的结果。得到的导数被用来调整整个网络的参数,实现对深度神经网络的训练。

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