一种语音信号相似度检测方法与流程

文档序号:12609386阅读:754来源:国知局

本发明涉及音频处理技术领域,具体是一种语音信号相似度检测方法。



背景技术:

音频是多媒体应用的一种重要媒体,人们能听见的音频信号的频率范围大约在20Hz~20kHz,而其中语音信号大约分布在300Hz~4kHz之内。在音频信号的传输过程中常常会涉及信号传输通道性能的检测,目前人们普遍通过检测待测通道与基准通道两者语音片段相似度来测试待测通道的性能。采用现有方式检测语音片段相似度时,受偶发性噪声干扰的影响,检测的准确率较低,衡量待测通道性能时参考意义不大。



技术实现要素:

本发明的目的在于克服现有技术的不足,提供了一种语音信号相似度检测方法,其能提升检测待测通道相对于基准通道的语音相似度的准确率,进而便于在衡量待测通道性能方面进行推广应用。

本发明的目的主要通过以下技术方案实现:一种语音信号相似度检测方法,包括以下步骤:

步骤1、将基准通道中基准语音信号和待测通道中待测语音信号均提取得到N段语音片段,对N段基准语音信号的语音片段和N段待测语音信号的语音片段分别进行排序,并使N段基准语音信号的语音片段与N段待测语音信号的语音片段一一对应;其中,N为不小于2的整数;

步骤2、逐一计算每段待测语音信号的语音片段及其对应的基准语音信号的语音片段的相似度;

步骤3、待N段待测语音信号的语音片段及其对应的基准语音信号的语音片段的相似度均计算完成后,采用累积平均值计算方法计算累积相似度平均值。本发明通过对语音信号连续采集,获取连续片段,取片段相似度的累积算术平均值,以抵消偶发性噪声干扰。

进一步的,所述步骤1中提取基准语音信号和待测语音信号两者的语音片段时包括以下步骤:

步骤1.1、分帧,其中,每帧语音信号对应一段语音片段;

步骤1.2、加矩形窗形成加窗信号,计算短时平均过零率;

步骤1.3、计算短时能量,并调整能量门限;

步骤1.4、端点检测,并提取语音片段。语音信号是连续的信号,本发明通过分帧将一次接收到的一大块语音信号分割成多个小块语音信号进行处理。本发明通过计算短时平均过零率(即计算每帧内信号通过零值的次数)来反应频率信息,得到频谱特性。因语音信号的能量随时间变化较明显,而短时能量能有效的判断信号幅度的大小,故本发明通过计算短时能量,用于有声或无声的判断。因语音信号的能量随时间变化比较明显,故本发明在判断信号是有声还是无声时,对每帧的信号门限做出了相应的调整。本发明在端点检测时,具体根据步骤1.2中计算的短时平均过零率和步骤1.3中计算的短时能量,与每帧数据做比较来判断是否是语音信号。

进一步的,所述步骤1.2中计算短时平均过零率的公式为:

<mrow> <msub> <mi>Z</mi> <mi>n</mi> </msub> <mo>=</mo> <mfrac> <mn>1</mn> <mn>2</mn> </mfrac> <munderover> <mi>&Sigma;</mi> <mrow> <mi>m</mi> <mo>=</mo> <mo>-</mo> <mi>&infin;</mi> </mrow> <mi>&infin;</mi> </munderover> <mo>|</mo> <mi>sgn</mi> <mo>&lsqb;</mo> <mi>x</mi> <mrow> <mo>(</mo> <mi>m</mi> <mo>)</mo> </mrow> <mo>&rsqb;</mo> <mo>-</mo> <mi>sgn</mi> <mo>&lsqb;</mo> <mi>x</mi> <mrow> <mo>(</mo> <mi>m</mi> <mo>-</mo> <mn>1</mn> <mo>)</mo> </mrow> <mo>&rsqb;</mo> <mo>|</mo> </mrow>

其中,Zn为短时平均过零率,m为经矩形窗处理后数据的索引,n为原始信号数据索引,x(m)为经过加窗处理后的信号。

进一步的,所述步骤1.3中计算短时能量的公式为:

<mrow> <msub> <mi>E</mi> <mi>n</mi> </msub> <mo>=</mo> <munderover> <mi>&Sigma;</mi> <mrow> <mi>m</mi> <mo>=</mo> <mi>n</mi> </mrow> <mrow> <mi>n</mi> <mo>+</mo> <mi>Q</mi> <mo>-</mo> <mn>1</mn> </mrow> </munderover> <msup> <mi>x</mi> <mn>2</mn> </msup> <mrow> <mo>(</mo> <mi>m</mi> <mo>)</mo> </mrow> </mrow>

其中,En为短时能量,Q为窗函数的长度。

进一步的,所述步骤1.3中调整能量门限的公式如下:

a其中,amp1为能量门限的上限值,amp2为能量门限的下限值。

本发明在调整能量门限时,限定上限值为10与max(En)/4中的较小值,下限值为2与max(En)/8中的较小值,低于下限的情况,则认定为静音,高于上限的情况,则认定为偶发的噪声。

进一步的,所述步骤2中计算相似度包括以下步骤:

步骤2.1、对待测语音信号的语音片段及其对应的基准语音信号的语音片段均进行FFT变换;

步骤2.2、计算功率;

步骤2.3、计算相似度。语音信号是时域信号,本发明通过FFT变换以获得时域信号的频谱特性,进而获得语音信号的频率,相位,功率等特性。

进一步的,所述步骤2.1中FFT变换的公式如下:

<mrow> <mi>X</mi> <mrow> <mo>(</mo> <mi>k</mi> <mo>)</mo> </mrow> <mo>=</mo> <munderover> <mi>&Sigma;</mi> <mrow> <mi>n</mi> <mo>=</mo> <mn>0</mn> </mrow> <mrow> <mi>M</mi> <mo>-</mo> <mn>1</mn> </mrow> </munderover> <mi>x</mi> <mrow> <mo>(</mo> <mi>n</mi> <mo>)</mo> </mrow> <mo>*</mo> <msup> <mi>e</mi> <mrow> <mo>-</mo> <mi>i</mi> <mn>2</mn> <mi>&pi;</mi> <mi>k</mi> <mi>n</mi> <mo>/</mo> <mi>M</mi> </mrow> </msup> </mrow>

其中,X(k)为经过FFT变换后的数据,k为经FFT变换后数据索引,x(n)为原始数据,n为原始信号数据索引,i为虚数,M为变换数据的个数。

进一步的,所述步骤2.2计算功率的公式如下:

<mrow> <msub> <mi>P</mi> <mi>s</mi> </msub> <mrow> <mo>(</mo> <mi>&omega;</mi> <mo>)</mo> </mrow> <mo>=</mo> <munder> <mi>lim</mi> <mrow> <mi>T</mi> <mo>&RightArrow;</mo> <mi>&infin;</mi> </mrow> </munder> <mfrac> <msup> <mrow> <mo>|</mo> <mi>X</mi> <mrow> <mo>(</mo> <mi>k</mi> <mo>)</mo> </mrow> <mo>|</mo> </mrow> <mn>2</mn> </msup> <mi>T</mi> </mfrac> </mrow>

其中,T为信号数据长度,Ps(ω)为语音片段音频数据点所对应的功率。

进一步的,所述步骤2中计算语音片段相似度的公式如下:

<mrow> <mi>S</mi> <mo>=</mo> <mrow> <mo>(</mo> <msubsup> <mi>&Sigma;</mi> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>N</mi> </msubsup> <mo>(</mo> <mrow> <msub> <mi>X</mi> <mi>i</mi> </msub> <mo>-</mo> <mover> <mi>X</mi> <mo>&OverBar;</mo> </mover> </mrow> <mo>)</mo> <mo>*</mo> <mo>(</mo> <mrow> <msub> <mi>Y</mi> <mi>i</mi> </msub> <mo>-</mo> <mover> <mi>Y</mi> <mo>&OverBar;</mo> </mover> </mrow> <mo>)</mo> <mo>)</mo> </mrow> <mo>&divide;</mo> <msqrt> <mrow> <mo>(</mo> <msubsup> <mi>&Sigma;</mi> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>N</mi> </msubsup> <msup> <mrow> <mo>(</mo> <mrow> <msub> <mi>X</mi> <mi>i</mi> </msub> <mo>-</mo> <mover> <mi>X</mi> <mo>&OverBar;</mo> </mover> </mrow> <mo>)</mo> </mrow> <mn>2</mn> </msup> <mo>)</mo> <mo>*</mo> <mo>(</mo> <msubsup> <mi>&Sigma;</mi> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>N</mi> </msubsup> <msup> <mrow> <mo>(</mo> <mrow> <msub> <mi>Y</mi> <mi>i</mi> </msub> <mo>-</mo> <mover> <mi>Y</mi> <mo>&OverBar;</mo> </mover> </mrow> <mo>)</mo> </mrow> <mn>2</mn> </msup> <mo>)</mo> </mrow> </msqrt> </mrow>

其中,S为语音片段相似度,i表示语音片段,Xi为基准语音信号第i段语音片段音频数据点所对应的功率,Yi为待测语音信号第i段语音片段音频数据点所对应的功率,为基准语音信号的平均功率,为待测语音信号的平均功率。

进一步的,所述步骤3中所述累积平均值计算方法采用的公式如下:

<mrow> <mover> <mi>S</mi> <mo>&OverBar;</mo> </mover> <mo>=</mo> <mrow> <mo>(</mo> <msubsup> <mi>&Sigma;</mi> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>N</mi> </msubsup> <msub> <mi>S</mi> <mi>i</mi> </msub> <mo>)</mo> </mrow> <mo>/</mo> <mi>N</mi> <mo>.</mo> </mrow>

综上所述,本发明具有以下有益效果:本发明应用时先通过将基准通道中基准语音信号和待测通道中待测语音信号均分为N段语音片段,再计算每段待测语音信号的语音片段及其对应的基准语音信号的语音片段的相似度,然后计算累积相似度平均值,所获得的相似度值为多次检测相似度的累积平均值,其能降低偶发性噪声干扰的影响,检测值更接近于真实值,能提升检测待测通道相对于基准通道的语音相似度的准确率,进而便于在衡量待测通道性能方面进行推广应用。

附图说明

此处所说明的附图用来提供对本发明实施例的进一步理解,构成本申请的一部分,并不构成对本发明实施例的限定。在附图中:

图1为本发明一个具体实施例的流程图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施例和附图,对本发明作进一步的详细说明,本发明的示意性实施方式及其说明仅用于解释本发明,并不作为对本发明的限定。

实施例:

如图1所示,一种语音信号相似度检测方法,包括以下步骤:步骤1、将基准通道中基准语音信号和待测通道中待测语音信号均提取得到N段语音片段,对N段基准语音信号的语音片段和N段待测语音信号的语音片段分别进行排序,并使N段基准语音信号的语音片段与N段待测语音信号的语音片段一一对应;其中,N为不小于2的整数;步骤2、逐一计算每段待测语音信号的语音片段及其对应的基准语音信号的语音片段的相似度;步骤3、待N段待测语音信号的语音片段及其对应的基准语音信号的语音片段的相似度均计算完成后,采用累积平均值计算方法计算累积相似度平均值。

本实施例步骤1中提取基准语音信号和待测语音信号两者的语音片段时包括以下步骤:步骤1.1、分帧,其中,每帧语音信号对应一段语音片段;步骤1.2、加矩形窗形成加窗信号,计算短时平均过零率;步骤1.3、计算短时能量,并调整能量门限;步骤1.4、端点检测,并提取语音片段。本实施例步骤1.4中端点检测具体操作步骤为:根据步骤1.2中计算的短时平均过零率和步骤1.3中计算的短时能量,对这每个片段做判断,超过平均过零率且在能量门限范围内的,则为语音片段,多个连续的语音片段组合在一起,就能获得一大块信号的语音。

本实施例步骤1.2中加矩形窗形成加窗信号的具体操作步骤如下:用矩形窗函数与分帧后的信号相乘,形成加窗信号。矩形窗函数为:

其中,j为数据下标,Q为窗函数长度。

步骤1.2中计算短时平均过零率的公式为:

<mrow> <msub> <mi>Z</mi> <mi>n</mi> </msub> <mo>=</mo> <mfrac> <mn>1</mn> <mn>2</mn> </mfrac> <munderover> <mi>&Sigma;</mi> <mrow> <mi>m</mi> <mo>=</mo> <mo>-</mo> <mi>&infin;</mi> </mrow> <mi>&infin;</mi> </munderover> <mo>|</mo> <mi>sgn</mi> <mo>&lsqb;</mo> <mi>x</mi> <mrow> <mo>(</mo> <mi>m</mi> <mo>)</mo> </mrow> <mo>&rsqb;</mo> <mo>-</mo> <mi>sgn</mi> <mo>&lsqb;</mo> <mi>x</mi> <mrow> <mo>(</mo> <mi>m</mi> <mo>-</mo> <mn>1</mn> <mo>)</mo> </mrow> <mo>&rsqb;</mo> <mo>|</mo> </mrow>

其中,Zn为短时平均过零率,m为经矩形窗处理后数据的索引,n为原始信号数据索引,x(m)为经过加窗处理后的信号。

本实施例步骤1.3中计算短时能量的公式为:

<mrow> <msub> <mi>E</mi> <mi>n</mi> </msub> <mo>=</mo> <munderover> <mi>&Sigma;</mi> <mrow> <mi>m</mi> <mo>=</mo> <mi>n</mi> </mrow> <mrow> <mi>n</mi> <mo>+</mo> <mi>Q</mi> <mo>-</mo> <mn>1</mn> </mrow> </munderover> <msup> <mi>x</mi> <mn>2</mn> </msup> <mrow> <mo>(</mo> <mi>m</mi> <mo>)</mo> </mrow> </mrow>

其中,En为短时能量。

本实施例步骤1.3中调整能量门限的公式如下:

其中,amp1为能量门限的上限值,amp2为能量门限的下限值。

本实施例步骤2中计算相似度包括以下步骤:步骤2.1、对待测语音信号的语音片段及其对应的基准语音信号的语音片段均进行FFT变换;步骤2.2、计算功率;步骤2.3、计算相似度。本实施例所述步骤2.1中FFT变换的公式如下:

<mrow> <mi>X</mi> <mrow> <mo>(</mo> <mi>k</mi> <mo>)</mo> </mrow> <mo>=</mo> <munderover> <mi>&Sigma;</mi> <mrow> <mi>n</mi> <mo>=</mo> <mn>0</mn> </mrow> <mrow> <mi>M</mi> <mo>-</mo> <mn>1</mn> </mrow> </munderover> <mi>x</mi> <mrow> <mo>(</mo> <mi>n</mi> <mo>)</mo> </mrow> <mo>*</mo> <msup> <mi>e</mi> <mrow> <mo>-</mo> <mi>i</mi> <mn>2</mn> <mi>&pi;</mi> <mi>k</mi> <mi>n</mi> <mo>/</mo> <mi>M</mi> </mrow> </msup> </mrow>

其中,X(k)为经过FFT变换后的数据,k为经FFT变换后数据索引,x(n)为原始数据,n为原始信号数据索引,i为虚数,M为变换数据的个数。

本实施例步骤2.2计算功率的公式如下:

<mrow> <msub> <mi>P</mi> <mi>s</mi> </msub> <mrow> <mo>(</mo> <mi>&omega;</mi> <mo>)</mo> </mrow> <mo>=</mo> <munder> <mi>lim</mi> <mrow> <mi>T</mi> <mo>&RightArrow;</mo> <mi>&infin;</mi> </mrow> </munder> <mfrac> <msup> <mrow> <mo>|</mo> <mi>X</mi> <mrow> <mo>(</mo> <mi>k</mi> <mo>)</mo> </mrow> <mo>|</mo> </mrow> <mn>2</mn> </msup> <mi>T</mi> </mfrac> </mrow>

其中,T为信号数据长度,Ps(ω)为语音片段音频数据点所对应的功率。

本实施例步骤2中计算语音片段相似度的公式如下:

<mrow> <mi>S</mi> <mo>=</mo> <mrow> <mo>(</mo> <msubsup> <mi>&Sigma;</mi> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>N</mi> </msubsup> <mo>(</mo> <mrow> <msub> <mi>X</mi> <mi>i</mi> </msub> <mo>-</mo> <mover> <mi>X</mi> <mo>&OverBar;</mo> </mover> </mrow> <mo>)</mo> <mo>*</mo> <mo>(</mo> <mrow> <msub> <mi>Y</mi> <mi>i</mi> </msub> <mo>-</mo> <mover> <mi>Y</mi> <mo>&OverBar;</mo> </mover> </mrow> <mo>)</mo> <mo>)</mo> </mrow> <mo>&divide;</mo> <msqrt> <mrow> <mo>(</mo> <msubsup> <mi>&Sigma;</mi> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>N</mi> </msubsup> <msup> <mrow> <mo>(</mo> <mrow> <msub> <mi>X</mi> <mi>i</mi> </msub> <mo>-</mo> <mover> <mi>X</mi> <mo>&OverBar;</mo> </mover> </mrow> <mo>)</mo> </mrow> <mn>2</mn> </msup> <mo>)</mo> <mo>*</mo> <mo>(</mo> <msubsup> <mi>&Sigma;</mi> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>N</mi> </msubsup> <msup> <mrow> <mo>(</mo> <mrow> <msub> <mi>Y</mi> <mi>i</mi> </msub> <mo>-</mo> <mover> <mi>Y</mi> <mo>&OverBar;</mo> </mover> </mrow> <mo>)</mo> </mrow> <mn>2</mn> </msup> <mo>)</mo> </mrow> </msqrt> </mrow>

其中,S为累积相似度平均值,i表示语音片段,Xi为基准语音信号第i段语音片段音频数据点所对应的功率,Yi为待测语音信号第i段语音片段音频数据点所对应的功率,为基准语音信号的平均功率,为待测语音信号的平均功率。

本实施例步骤3中所述累积平均值计算方法采用的公式如下:

<mrow> <mover> <mi>S</mi> <mo>&OverBar;</mo> </mover> <mo>=</mo> <mrow> <mo>(</mo> <msubsup> <mi>&Sigma;</mi> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>N</mi> </msubsup> <msub> <mi>S</mi> <mi>i</mi> </msub> <mo>)</mo> </mrow> <mo>/</mo> <mi>N</mi> <mo>.</mo> </mrow>

以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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