美文网首页
第三章 语音信号特征分析

第三章 语音信号特征分析

作者: 锅锅Iris | 来源:发表于2019-01-30 17:37 被阅读0次

    第三章 语音信号特征分析

    语音合成音质的好坏,语音识别率的高低,都取决于对语音信号分析的准确度和精度。例如,利用线性预测分析来进行语音合成,其先决条件是要用线性预测方法分析语音库,如果线性预测分析获得的语音参数较好,则用此参数和成的语音音质就较好。例如,利用带通滤波器组法来进行语音识别,其先决条件是要弄清楚语音共振峰的幅值,个数,频率范围及其分布情况。

    语音信号特征的分析可以分为时域,频域和倒谱域。

    时域分析简单直观,清晰易懂,物理意义明确。

    更多有效的分析是围绕频域进行的,因为语音中最重要的感知特性反应在其功率谱中,其相位变化只起着很小的作用。

    常用频域分析有带通滤波器组,傅里叶变换法和线性预测分析法。频谱具有很明显的声学特性,利用频域分析获得的特征具有实际的物理意义,如共振峰参数,基音参数周期等。

    倒谱域是对对数功率谱进行傅里叶反变换得到的,可以将声道特性和激励特性有效的分开,更好的揭示语音信号的本质特征。

    可以将语音信号分析分为模型分析法和非模型分析法两种。模型分析法是指依据语音信号产生的数学模型,来分析和提取表征这些模型的特征参数;共振峰模型分析法和线性预测都术语这种方法。凡不进行模型化分析的其他方法都属于非模型分析法,包括上面提到的时域分析法,频域分析法及同态分析法。

    贯穿语音信号分析全过程的是“短时分析技术”。短时间内特性基本保持不变,相对稳定,准稳态过程。10~30ms内保持相对平稳。

    语音信号数字化

    语音信号的采样和量化

    实际信号常有一些低能量的信号分量超过采样频率的一半,如浊音的频谱超过4khz的分量至少比峰值低40db,而清音,超过8khz,频率分量也没有显著下降,因此语音信号所占的频率范围可以达到10khz以上,但对语音清晰度的有明显影响部分的最高频率为5.7kHZ左右。

    电话系统为8kHZ,而时间中,采样频率为8-10kHZ,而语音合成或者语音识别,获得更高的质量,采样频率一般为15——20kHZ。

    在一般的识别系统中,采样率最高为16kHZ,当继续增加采样率是,识别率几乎没有增加。

    量化:有三种方式,零记忆量化,分组量化和序列量化。

    短时加窗处理

    假设语音信号在10~30ms内是平稳的,后面所有的分析都是在这个假设下进行的。

    为了得到短时的语音信号,要对语音信号进行加窗的操作,窗函数平滑的在语音信号上滑动,将语音信号分成帧。分帧可以连续,也可以采用交叠分段,交叠部分称为帧移,一般为窗长的一般。

    加窗时,不同窗口将影响到语音信号分析的结果

    1. 窗函数的形式

      • 矩形窗
      • 汉明窗(hamming窗)

      这些窗函数的频率响应都有低通特性,但不同窗口形状将影响分帧后的短时特征的特性。汉明窗的第一个零值频率位置要比矩形窗大一倍左右,即汉明窗的主瓣带宽大约是同样宽度矩形窗带宽的两倍。但是在通带内,汉明窗的衰减对应比矩形窗大得多。

      矩形窗平滑性较好,但波形细节丢失,并且会产生泄露现象,而汉明窗可以有效克服泄露现象,应用范围最为广泛。

    2. 窗函数长度

    ​ 窗的长度对能否反映语音信号的幅度变化起决定性作用。如果N特别大,即等于几个基因周期量级,则窗函数等效于很窄的低通滤波器,此时信号短时信息将缓慢的变化,因而不能充分反映波形变化的细节。如果N特别小,即等于或小于一个基因周期的量级,则信号的能量将按照信号波形的细微状况而很快的启发,但如果N太小,滤波器的通带变宽,则不能获得平滑的短时信息,因此窗口的长度要选择合适。窗的衰减基本与窗的持续时间无关,因此当改变宽度N时,会使带宽发生变化。

    窗口长度是相对于语音信号的汲引周期而言,通常认为一个语音帧内,应含有1~7个基音周期,然而不同人的基音周期变化范围很大,基音周期的持续时间会从高音的约20个采样点变化到低音调250个采样点,这意味着可能需要多个不同的N值,所以N的选择比较困难,通常在采样频率10kHZ的情况,N选择100~200量级(10~20ms)持续时间是比较合适的。

    时域分析

    1. 能量
    2. 过零率
    3. 自相关函数
    4. 平均幅度差函数

    端点检测和语音分割

    有声(V)无声(S)清音(U)判决。

    能够实现这些判决的依据再于,不同性质的语音各种短时参数具有不同的概率密度函数,以及相邻的若干帧具有一致的语音特性,不会再S , U, V之间快速变化。

    每个语音的输入起点和重点,利用短时平均幅度参数M和短时过零率可以做到这一点。

    浊音情况下短时平均幅度参数的概率密度函数P(M|V)确定一个阈值参数M_H.根据M_H可以确定前后两个点A_1和A_2 后肯定是语音段,但精确起点,还要仔细查找。

    为此,再设定一个较低的阈值参数M_L, 然后确定B_1 和 B_2, 从这两个点之后用短时过零率搜索。 清音的过零率高于无声段,但是能量低。

    但是在研究结果中表明,利用短时平均过零率区分无声和清音在有些情况下不是很可靠,由于清音的强度会比无声段高一下,将门限提高一些对清音的影响不大,但在没有背景噪声的情况下,无声段将不会穿越这一提高的电平,因为可以正确区分清音和无声段。

    因此采用这种过零率,具有抗干扰能力
    Z_n = \frac{1}{2}\sum_{m=-\infty}^{\infty} \{|sgn[x(m)-T]-sgn[x(m-1)-T]|\\+|sgn[x(m)+T]-sgn[x(m-1)+T]|\}w(n-m)

    语音信号的频域分析

    滤波器组的方法

    滤波器可以是宽带带通滤波器,具有平摊的特性,粗略求语音的频谱,频率分辨率低,可以是窄带滤波器,频率分辨率较高。

    现在一般都在用数字滤波器,其中如何将模拟滤波器数字化,涉及到零点极点的内容,需要参考DSP的内容。极点波峰,零点波谷。

    傅里叶频谱

    X_n(w) = \sum_{m=-\infty}^{\infty}x(m)w(n-m)e^{jwn}

    w(n) 为窗口函数。

    两种方式来理解物理意义

    1. 当n固定时,如n=n_0X_{n0}(w)是将窗函数的起点移至n0处截取信号做傅里叶变换
    2. 当频率固定是,例如w=w_k, X_n(w_k)可以看做是信号经过一个中心频率为w_k的带通滤波器产生的输出。 这是因为窗口函数w(n)通常具有低通特性,而指数e^{jw_0n}对语音信号具有调制作用,使频谱产生移位, 将x(n)对应于w_k的频率分量移到零频。

    在实际计算时,一般用离散傅里叶变换代替连续傅里叶变换,则需要对信号进行周期延拓。(非周期->连续谱,周期->离散谱),这时候得到的是功率谱。 如果窗长度为L, 那么R_n(k)的长度为2L, 如果对x(n)w(n)L进行周期拓展,则自相关就会出现混叠现象,即这个周期的循环相关函数在一个周期中的值就与线性相关R_n(k)的值不同,这样得到的功率谱就是一组前采样,若想得到全部的2L个值,可以补充L个零,扩展成2L的信号,并做离散傅里叶变换,这时的循环相关与现行相关是等价的。(后面这句话对我来说暂时是天书

    在对窗函数的分析中,我们知道对于任何一个窗函数都存在旁瓣效应,这时候有谐波效应。

    语谱图的时间分辨率和频率分辨率是由所采用的窗函数决定的。假设时间固定,对信号乘以窗函数相当于在频域用窗函数的频率响应与信号频谱的卷积。如果窗函数的频率响应W(w)的通带宽度为b,那么语谱图中的频率分辨率的宽度即为b。即卷积的作用将使任何两个相隔间隔频率小于b的谱峰合并为一个单峰。对于窗函数而言,通带宽度与窗长成反比,如果希望频率分辨率高,则窗长应该尽量长一些。

    对于时间分辨率,假设频率固定,相当于对时间序列x(n)e^{jnw_k}做低通滤波,输出信号的带宽就是w(n)的带宽b,根据采样定理,只需要以2b的采样率就可以反映出信号的所有频率成分,这时候所具有的时间分辨率的宽度为\frac{1}{2b}. 因此如果希望时间分辨率高,则窗长应该短一些。因此时间分辨率和频率分辨率是相互矛盾的,这也是短时傅里叶变换本身固有的缺点。

    点评:

    1. 尽管上面👆的解释像天书,而且也是长久的困扰着的知其然但从来没推导过理论证明的时间分辨率和频率分辨率的道理。
    2. 短时处理是理解语音的一个难点。其中时域相乘为频率卷积,要理解体会这个公式。
    3. 对于非周期信号,频谱是连续的,所以要进行周期延拓,此时选用了2L的长度,这点要细细推导
    4. 现在就先这样囫囵吞枣吧……...

    1.26新增理解:

    1. 关于窗函数的通带b和N有关,比如矩形窗2\pi k/N, N越大,则b越小,时间分辨宽度为1/2b, 时间分辨率减小,反之频率分辨率变小。
    2. 分辨率的定义:对信号所能做出辨别的时域或者频域的最小间隔。对于时域瞬变得信号,希望时域的分辨率要高,即时域的观察间隔短,保证能观察到该瞬变信号发生的时刻即形态。对频域具有两个或者多个

    传统傅里叶变换及时频分析的思想

    1. 传统傅里叶变换时间分辨率为0,只适合分析信号组成分量不随时间变化的聘问分量,纯频域分析。

    2. 传统傅里叶变换基于信号平稳的假设,但是在实际场合中,信号是不平稳的,而且时变。

    3. 传统傅里叶变换在全频域范围内分辨率相同。

      因为一个信号的频率和它的周期成反比,所以在应用中,一个合理的要求是,高频信息,时间长度较短,给出精确的高频成分,而对于待分析信号的低频信息,时间长度较长,给出一个周期内完整的信息。 在中心频率高的地方没时间窗自动变窄,在中心频率低的地方,时间窗变宽,然而傅里叶变换是一种整体的变换,在整体上将信号分解为不同的频率分量,对信号的表征要么在时域,要么在频域,作为频域表示的功率谱,并不能反应出某种频率分量出现在什么时候及其变化情况。傅里叶变换对信号的局部畸变没有标定和度量的能力。在实际应用中,畸变是我们所关心的信号再局部范围内的特征,比如音乐和语音信号。

      为了分析和处理非平稳信号,将傅里叶变换进行推广,联合时频分析就是一种重要方法。着眼于真是信号组成成分的时变谱特征,设计时间和频率的联合函数,描述信号再不同时间和频率的能量密度和强度。

    线性时频时频表示

    x(n) = a_1x_1(n)+a_2x_2(n)\\ X(w) = a_1X_1(w)+a_2X_2(w)

    这类线性主要有短时傅里叶变换与Gabor变换和小波变换,其中STFT和Gabor变换是一种加窗的傅里叶变换,使用固定大小的时频网格,时频网格在时频变换只限于时间平移和频率平移,窗函数固定的,只适用于分析带宽固定的非平稳信号,实际应用中,希望对低频分析,频率分辨率高,高频时间分辨率高,要求窗函数宽度能随之频率变化而变化。小波分析的视频分析网格变化除了时间平移外,还有时间和频率轴比例尺度的改变。适用于分析具有固定比例带宽的非平稳信号。

    二次时频表示

    这类时频由能量谱或功率谱演化而来,其特点是变换为二次的。双线性关系可以表示为
    \xi(w) = |a_1|^2\xi_1(w) +|a_2|^2\xi_2(w) +2Re[a_1a_2X_1^*(w)X_2^*(w)]
    其中\xi(w)为能量谱,而*表示取共轭操作。

    点评:好像没见过,先跳过。。。。。

    不确定原理

    在信号分析与信号处理中,信号的“时间中心”及“时间宽度”以及频率中心与频率宽度是非常重要的概念,分别说明信号在时域和频域中心位置在两个域的扩展情况。

    信号再这两个物理量的测量上有一个重要的约束原则,就是著名的“不确定性原理”。它的意义是,信号波形在频率轴上的扩张和时间轴上的扩张不可能同时小于某一界限,即若函数w(n)W(w)构成一堆傅里叶变换,则不可能同时是短宽度的,即
    \Delta(w)\Delta(W) \geq \frac{1}{2}
    等号成立的充分必要条件是w(n)为高斯函数,即w(n) = Ae^{-an^2}. 证明,用Cauchy-Schwarts不等式可得。

    Gabor变换

    窗函数为高斯函数的短时傅里叶变换称为Gabor变换。

    1. 高斯函数的傅里叶变换仍然为高斯函数,这想防御傅里叶反变换也是用高斯函数加窗的,同时体现了频域的局部化。

    2. gabor变换的定义
      G_x(n,w) = \sum_{\tau=-\infty}^{\infty}x(\tau)g_a^*(t-n)e^{-jw\tau}\\ g_a^*(n) = \frac{1}{2\sqrt{\pi a}} e^{\frac{-n^2}{4a}}

    a是大于0的固定常数。由于\sum_{n=-\infty}^{\infty}g_a(\tau-n)=1, 因此\sum_{n=-\infty}^{\infty}G_x(n,w)=X(w). 这表明,信号x(n)的gabor 变换G_x(n,w)是对任何a>0在时间\tau = n 附近对x(n)傅里叶变换的局部化(在说什么??),达到了对X(w)的精确分解。

    Gabor变换是具有最小时频窗的短时傅里叶变换。但进一步研究发现,这两种变换都没有离散的正交基, 所以没有像离散傅里叶变换FFT那种快速算法。而且窗函数固定不变,不能随着所分析信号的成分是高频还是低频做相应的变化。所以这时候有小波变换,能够自动调节窗口长度。

    小波变换

    小波理论采用多分辨率的分析的思想,非均匀地划分时频空间,为非平稳信号的分析提供了新途径。

    定义: 小波是函数空间L^2(R)中满足下述条件的一个函数或者信号\psi (t)
    C_{\psi} = \int_{R^*} \frac{|\Psi(w)|^2}{|w|}dw<\infty
    其中R^*=R-\{0\} 表示全体非零实数,\Psi(w)\psi(t)的频域表示形式。\psi(t)称为小波母函数。对于任意实数对,称如下形式的函数为右小波母函数生成的依赖于参数(a,b)的连续小波函数,称为小波,其中a必须为非零实数。
    \psi_{(a,b)}(t) = \frac{1}{\sqrt{a}}\psi(\frac{t-b}{a})
    a的作用是把基本小波\psi(t)做伸缩,b的作用是确定对x(t)分析的时间位置,也即是实践中心。 ()\psi_{(a,b)}(t)t=b的附近存在明显的波动,而且波动范围的大小完全依赖于尺度因子a的变化。 a=1时,一致,a>1时,范围比原来小波函数\psi(t)范围大些,小波的波形变得矮宽,变化越来越缓慢,当0<a<1时,\psi_{(a,b)}(t)t=b附近波动范围药效,小波波形尖锐而消瘦。

    给定平方可积的信号x(t),即x(t)\in L^2(R), 则x(t)的小波变换定义为
    W_x(a,b) = \int_R x(t)\psi^*_{(a,b)}(t)dt = \frac{1}{\sqrt a} \int_R x(t)\psi^*{(\frac{t-b}{a})}dt
    与傅里叶变换不同,小波变换是一个二元函数。另外,因为母函数\psi(t)只在原点附近才会有明显偏离水平轴的移动,远离原点,迅速衰减为0.

    假设小波函数\psi(t) 及傅里叶变换\Psi(w)都满足窗口函数的要求,他们的窗口中心和半径分别记为E(\psi)\Delta(\psi)E(\Psi)\Delta(\Psi), 可以证明对于任意任意参数对,连续小波变换和其傅里叶变换都满足窗口函数的要求,他们的窗口中心和宽度分别为
    E(\psi_{(a,b)} ) = b+aE(\psi)\\ \Delta(\psi_{(a,b)}) = a\Delta(\psi)

    E(\Psi_{(a,b)} ) =\frac{E(\Psi)}{a}\\ \Delta(\Psi_{(a,b)}) = \frac{\Delta(\psi)}{a}

    则时频窗是平面一个可变的矩形,面积为2a\Delta(\psi)\frac{2\Delta{\Psi}}{a} = 4\Delta(\psi)\Delta(\Psi). 这个面积只与小波的母函数\psi(t)有关,与(a,b)无关,但形状随着a变换。

    小波分析的特点

    1. 恒Q性质, Q为母小波\psi(t)的平直因数,定义
      Q= \frac{带宽}{中心频率} = \frac{\Delta_w}{w_0}
      不论a为何值,始终与\psi(t)保持相同的品质因素。

    2. 与傅里叶变换的不同

      • 傅里叶变换的基本函数只有 e^{jwt},具有唯一性,小波分析用的函数不唯一,同一个问题用不同小波分析相差很远。
      • 在频域里,FT具有较好的局部化能力,特别是频率成分简单的信号,可以表示成叠加的形式。但在时域中,没有局部化的能力,无法从信号的FT中看出原信号在任一时间点附近的形态。
      • 对短时FT来说,带宽与中心频率无关,但是对小波变换来说,带宽正比于中心频率。

    小波变换在语音处理中的应用

    1. 利用小波变换对听觉系统的模拟

      听觉系统大致分为三个阶段: 耳蜗滤波器,毛细胞完成机械振动到点激励的转换,侧抑制网络完成声学谱的缩减(另一种第一次看到的解释)。对声音信号的分析主要是在基底膜上完成。

      人耳的分辨率是非线性的,用传统的信号处理方法,比如傅里叶是比较难得。利用单纯的小波变换对信号处理进行处理时,是将整个频带二分,然后保留高频部分,对低频部分继续二分,这与临界频带划分差别较大,这时候可以采用广义的小波变换,即吧小波变换与小波包变换结合使用,小波包算法有灵活的时频分析能力。 当频带宽为4kHz时,子带最小宽度为125Hz,接近最小的临界频带带宽。

    2. 随机噪声的去除

    3. 清音和浊音的判断

      • 语音信号小波系数的低频部分描述了信号的轮廓,相当于信号经过低通滤波器的结果,高频部分描述信号的细节,相当于信号经过高通滤波器的结果。根据语音信号短时平稳的特点,对语音信号分帧进行小波变化吗,计算每个频带的平均能量。如果 小波与最高频带能量比其他频带能量大 且最低频带能量和最高频带能量比小于0.9,则这段信号为清音。

    语音信号的同态解卷积(Homographic analysis)

    如果按照线性模型理论,语音信号是由激励信号和声道响应卷积产生。解卷就是将各卷积分量分开。解卷算法分为两大类,一类称为“参数解卷”,即线性预测分析,另一类算法称为“非参数解卷”,即同态解卷积,对语音信号进行同态分析后,将得到语音信号的倒谱参数,此时同态分析也称为倒谱分析或者同态处理。

    同态处理是一种较好的解卷积方法,它可以较好的将语音信号中的激励信号和声道响应分离,并且只需要用十几个倒谱系数就能相当好的描述语音信号的声道特性,因此占很重要的位置。

    同态信号处理的基本原理

    通常的加性信号可以用线性系统处理,满足线性叠加原理。然后很多信号是由乘性信号或者卷积信号组合的信号。这样的信号不能用线性系统处理,得用非线性系统处理。但是非线性系统分析起来困难,同态语音辛哈就是将非线性问题转换为线性问题处理。语音信号可以看做是声门激励信号与声道响应的卷积结果,所以下面仅讨论卷积同态信号的处理问题。

    同态语音信号处理的一个通用的系统如图3-23所示,其符号* 表示由卷积组合规则组合起来的空间,即该系统的输入和输出都是卷积性信号。同态系统的一个最主要理论结果是同态系统理论分解,分解的目的是用两个特征系统和一个线性系统来代替非线性的同态系统。分解的情形如下面所示。

    同态语音信号

    ,e(n),v(n) 分别对应声门激励信号(excitation 和 vocal tract),特征信号D^*是将卷积信号转化为加性信号,这时候进行Z变换,将卷积信号转化为乘积信号(疑问1),这时候得到的就是频谱,然后通过对数运算,变成加性信号,但是这个时候是对数频谱,使用不便。最后再变换回时域信号。
    Z[x(n)] = X(z) = E(z) \cdot V(z)\\ logX(z) = logE(z) + logV(z) = \hat{E}(z)+ \hat{V}(z) = \hat{X}(z)\\ Z^{-1}[\hat{X}(z)] = Z^{-1}[\hat{E}(z)+\hat{V}(z)] = \hat{e}(n) + \hat{v}(n)
    L(*)是在倒谱域对信号处理,常见处理方式是将语音声源信号与声道信号分离。 在倒谱域,总可以找到一个N,当n>N时,声道滤波器的倒谱为0,当n<N时,激励的倒谱接近于0.

    如果想再恢复语音信号,用d所示的逆特征系统运算即可。

    语音信号的复倒谱

    1. 声门激励信号

      发清音是,声门激励是能量较小,频谱均匀分布的白噪声。发浊音时,声门激励是以汲引周期为周期的冲击序列。

      省略公式推导,可以得出以下结论

      • 一个周期冲激有限长度序列,倒谱也是一个周期冲击序列,且周期长度N_p不变,知识长度变成无限长度
      • 周期冲击序列倒谱的振幅随着r值的增大而衰减,并且衰减速度比原序列要快。

      这对语音信号的分析很有用,这意味着除了原点外,可以采用“高时窗”来从语音信号的倒谱中提取浊音信号的倒谱,从而使得用倒谱法提取基因周期成为现实。声门激励源在浊音时,其倒谱只在n=kN_p诸点上不等于0,其他店均为0.即神门激励在浊音是,倒谱序列的第一个非零点与原点的距离正好为基音周期N_p, 在清音的情况下,声门激励源具有噪声特性,没有明显的峰点,分布范围很宽,从低时域延伸到高时域,利用这个可以进行清音和浊音的判断。

    2. 声道冲击响应的倒谱

      省略公式

      实际上,声道的特性取决于零极点分布,从声道响应的倒谱可知,当V(z)的零极点模值不接近于1时,\hat{v}(n)将随着n的增大而迅速递减。当采样频率为10kHZ时,\hat{v}(n)在间隔[-25,25]之外的值相当小,只分布在这一范围内。

    基于听觉特性的Mel倒谱系数

    MFCC (Mel Frequency cepstrum coefficient),MFCC是将人耳的听觉感知特性和语音产生机制相结合,因此目前大多数语音识别系统广泛使用这种特征。

    耳蜗的滤波作用是在对数频率尺度进行的,在1000Hz以下为线性,在1000Hz以上为对数,这就使得人耳对低频比高频更敏感
    f_{mel} = 2595log(1+\frac{f}{700})
    对频率轴不均匀划分是MFCC特征区别于前面普通倒谱特征的最重要的特点,变换到Mel域后,Mel带通滤波器组的中心频率是按照Mel刻度均匀排列的,实际应用中,MFCC计算过程如下

    1. 信号分帧,预加重和加汉明窗进行处理,然后进行短时傅里叶变换
    2. 求出频谱的平方,即能量谱,用M个Mel带通滤波器滤波,由于每一个频带中的分量的作用在人耳中是叠加的,因此将每个滤波频带内能连叠加。
    3. 将每个滤波器输出去对数,得到对数功率谱,并进行反离散余弦变换DCT discrete cosine transform,得到L个MFCC系数,一般取12~16个左右。
    4. 得到MFCC的特征作为静态特征,将这种静态特征做一阶和二阶的差分,得到动态特征。

    MFCC有效利用的听觉特性,因此改变了识别系统的性能,如果倒谱位数增加,对识别性能影响不大。但采用动态特征,误识率有20%的下降。

    点评2019.01.30:第三四次囫囵吞枣的看完MFCC,即使知道了倒谱,但最后按个离散余弦变换还是比较不能联系上,反正感觉乱乱的吧,包括差分之类的,想被打回哪门语音信号处理课上回炉了,Mark一下,始终有一天会懂其中的深意的。

    相关文章

      网友评论

          本文标题:第三章 语音信号特征分析

          本文链接:https://www.haomeiwen.com/subject/kmmcsqtx.html