基于说话人分割与聚类的多说话人语速估计方法

文档序号:2836059阅读:639来源:国知局
专利名称:基于说话人分割与聚类的多说话人语速估计方法
技术领域
本发明涉及语音信号处理和模式识别技术,尤其涉及一种基于说话人分割与聚类的多说话人语速估计方法。
背景技术
随着语音处理技术的发展,目前语音处理的对象正逐步由单说话人语音转向多说话人语音(例如会议语音、谈话语音),估计出多说话人的语速并根据各个说话人的语速自适应地调整语音处理系统(例如语音识别系统)的参数变得越来越重要。另外,在录音棚或实验室的录音过程中,说话人(例如播音员、节目主持人、客服人员等)根据经验主观地测量语速,往往不够准确。虽然录音结束后可以采用人工标注的方法来估计说话人的语速, 但是这样做非常费时,特别是数据量很大时这种做法就不太可行。因此,能够自动地估计多说话人的语速就变得非常重要。现有语速估计方法都是针对单说话人语音的,只能估计单说话人的语速,而不能估计多说话人的语速。另外,现有语速估计方法主要是基于语音识别结果估计说话人的语速首先采用语音识别器从输入语音中识别音素序列和每个音素对应的时间点;再识别字序列和每个字对应的时间点,从而估计出说话人语速。上述语速估计方法的不足之处在于(1)只能估计单说话人语音的语速。当输入语音中含有多说话人的语音时,输入语音只被作为一个说话人的语音处理,而得不到多说话人的语速估计结果。(2)速度慢。目前的方法首先对输入语音进行语音识别,再根据识别的音素序列和字序列估算出语速。这种方法需要训练大量的音素模型(一般是隐马尔可夫模型,Hidden Markov Model),在识别时也需要大量的运算(提取特征、估计声学模型及语言模型的输出概率等),因此该方法的速度是比较慢的,不利于实时处理。

发明内容
本发明的目的在于解决现有技术所存在的缺陷,提供一种基于说话人分割与聚类的多说话人语速估计方法通过说话人分割与聚类先将语音流分割成语音段,再将相同说话人的语音段按顺序拼接在一起;然后分别估算各个说话人语音中的字数及时长,实现多说话人的语速估计。本发明解决其技术问题所采用的技术方案包括如下步骤1)读入语音流读入记录有多说话人语音的语音流;2)说话人分割检测上述语音流中说话人改变点,根据这些改变点将语音流分成多个语音段;3)说话人聚类利用谱聚类算法对上述分割出来的语音段进行说话人聚类,把相同说话人的语音段按顺序拼接在一起,得到说话人个数以及各个说话人的语音;4)语速估计分别从各个说话人语音中提取能量包络,并通过找出能量包络的局CN 102543063 A
部最大值点确定音节数,从而估计出各个说话人的语速。所述步骤2~)说话人分割的步骤包括2. 1)利用基于门限判决的静音检测算法从上述读入的语音流中找出静音段和语音段;2. 2)将上述语音段按顺序拼接成一个长语音段,并从长语音段中提取包括梅尔频率倒谱系数(Mel Frequency Cepstral Coefficients,MFCCs)及其一阶差分 (Delta-MFCCs)的音频特征;2. 3)利用上述提取出来的音频特征,根据贝叶斯信息准则,判断长语音段中相邻数据窗之间的相似度来检测说话人改变点;2. 4)根据上述说话人改变点,把语音流分割成多个语音段,且每个语音段只包含一个说话人。所述步骤2. 1)基于门限判决的静音检测算法的步骤包括2. 1. 1)对读入的语音流进行分帧,并计算每帧语音的能量,得到语音流的能量特征矢量;2. 1.2)计算能量门限;2. 1. 3)将每帧语音的能量与能量门限比较,低于能量门限的帧为静音帧,否则为语音帧,将相邻的静音帧按顺序拼接成一个静音段,将相邻的语音帧按顺序拼接成一个语音段。所述步骤4)语速估计的步骤包括4. 1)计算一个说话人语音的能量;4. 2)利用低通滤波器对上述提取出来的能量进行滤波,得到能量包络;4. 3)计算能量包络阈值;4. 4)确定能量包络中局部最大值点,得到局部最大值点的个数;4. 5)将该说话人语音能量包络中的局部最大值点的个数作为音节个数,并除以该说话人语音的时长,得到该说话人的语速;4. 6)重复上述步骤4. 1) 4.幻,直到所有说话人语音的语速都估计完为止。所述局部最大值点满足如下条件a)该元素值大于能量包络阈值;b)该元素值大于其前、后0. 07秒的所有元素值;所述局部最大值点所在位置为每个音节的韵母的能量峰值所在的位置。本发明的有益效果是利用说话人分割将包含多说话人的语音流切分成多个语音段,且每个语音段只包含一个说话人,再利用说话人聚类将相同说话人的语音段合并在一起,因此本发明能够估计多说话人语音的语速。另外,通过检测各个说话人语音能量包络的局部最大值点确定音节个数,从而估计出各个说话人的语速,与基于语音识别的语速估计方法相比,不需要做复杂的数值计算(例如声学模型及语言模型的输出概率的计算)从而节省了运算时间,更适用于实时语速估计的场合。


图1为本发明的流程图。
图2为本发明的实施例中语速估计的示意图,其中图2(a)是某个说话人的语音波形图,图2(b)为提取的语音能量图实线为能量包络,带圆圈的点划线为能量包络局部最大值点,虚线为能量包络阈值。
具体实施例方式下面结合具体的实施例与说明书附图进行详细描述。图1是根据本发明的一个实施例的估计多说话人语速的方法的流程图。如图1所示,首先在步骤101,读入语音流。语音流是记录有多说话人语音的语音数据,可以是各种格式的文件,例如WAV、RAM、MP3、VOX等。接着,在步骤102,利用基于门限判决的静音检测方法找出语音流中的静音段和语音段,将上述语音段按顺序拼接成一个长语音段,并从长语音段中提取音频特征,利用上述提取出来的音频特征,根据贝叶斯信息准则,判断长语音段中相邻数据窗之间的相似度来检测说话人改变点;最后根据上述说话人改变点,把语音流分割成多个语音段,且每个语音段只包含一个说话人。步骤102中的静音检测方法具体包括以下步骤1)将读入的语音流分成T帧,帧长为32毫秒(帧长对应的采样点个数N = 0. 032Xfs,其中fs为语音信号的采样频率),帧移为16毫秒,如果最后一帧语音的采样点个数小于N,则将其舍去;2)计算第t (1彡t彡T)帧语音信号& (η)的能量Et
权利要求
1.一种基于说话人分割与聚类的多说话人语速估计方法,其特征在于包括如下步骤1)读入语音流读入记录有多说话人语音的语音流;2)说话人分割检测上述语音流中说话人改变点,根据这些改变点将语音流分成多个语音段;3)说话人聚类把相同说话人的语音段聚在ー类并按顺序拼接在一起,得到说话人个数以及各个说话人的语音;4)语速估计分别从各个说话人语音中提取能量包络,并通过找出能量包络的局部最大值点确定音节数,从而估计出各个说话人的语速。
2.根据权利要求1所述的多说话人语速估计方法,其特征在干,所述步骤2)说话人分割的步骤包括2. 1)利用基于门限判决的静音检测算法从上述读入的语音流中找出静音段和语音段;2. 2)将上述语音段按顺序拼接成一个长语音段,并从长语音段中提取音频特征; 2. 3)利用上述提取出来的音频特征,根据贝叶斯信息准则,判断长语音段中相邻数据窗之间的相似度来检测说话人改变点;2.4)根据上述说话人改变点,把语音流分割成多个语音段,且每个语音段只包含ー个说话人。
3.根据权利要求2所述的多说话人语速估计方法,其特征在干,所述步骤2.1)基于门限判决的静音检测算法的步骤包括2. 1. 1)对读入的语音流进行分帧,并计算每帧语音的能量,得到语音流的能量特征矢里;2. 1.2)计算能量门限;2. 1.3)将每帧语音的能量与能量门限比较,低于能量门限的帧为静音帧,否则为语音帧,将相邻的静音帧按顺序拼接成一个静音段,将相邻的语音帧按顺序拼接成一个语音段。
4.根据权利要求2所述的多说话人语速估计方法,其特征在干,所述步骤2.2)的音频特征包括梅尔频率倒谱系数及其ー阶差分。
5.根据权利要求1所述的多说话人语速估计方法,其特征在干,所述步骤3)的说话人聚类采用谱聚类算法。
6.根据权利要求1所述的多说话人语速估计方法,其特征在干,所述步骤4)语速估计的步骤包括4. 1)计算ー个说话人语音的能量;4. 2)利用低通滤波器对上述提取出来的能量进行滤波,得到能量包络; 4. 3)计算能量包络阈值;4. 4)确定能量包络中局部最大值点,得到局部最大值点的个数; 4. 5)将该说话人语音能量包络中的局部最大值点的个数作为音节个数,并除以该说话人语音的时长,得到该说话人的语速;4. 6)重复上述步骤4. 1) 4. 5),直到所有说话人语音的语速都估计完为止。
7.根据权利要求6所述的多说话人语速估计方法,其特征在干,所述局部最大值点满足如下条件a)该元素值大于能量包络阈值;b)该元素值大于其前、后0.07秒的所有元素值;所述局部最大值点所在位置为每个音节的韵母的能量峰值所在的位置。
全文摘要
基于说话人分割与聚类的多说话人语速估计方法,它涉及一种估计多说话人语速的方法。本发明的估计多说话人语速的方法首先读入语音流;接着检测上述语音流中的说话人改变点,根据这些改变点将语音流分割成多个语音段;再对上述语音段进行说话人聚类,把相同说话人的语音段按顺序拼接在一起,得到说话人个数以及各个说话人的语音;最后分别估算各个说话人语音的时长及其所包含的字数,估计出各个说话人的语速。与目前基于语音识别的单说话人语速估计方法相比,本方法不但可以估计多说话人的语速,而且速度更快。
文档编号G10L11/00GK102543063SQ20111040357
公开日2012年7月4日 申请日期2011年12月7日 优先权日2011年12月7日
发明者徐鑫, 李艳雄, 贺前华 申请人:华南理工大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1