信号的语谱图

前言:本文参考了网上的一些资料和论述,在此表示感谢!
1.语谱图

语谱图就是语音频谱图,一般是通过处理接收的时域信号得到频谱图 ,因此只要有足够时间长度的时域信号就可。(时间长度为保证频率分辨率)
专业点讲,那是频谱分析视图,如果针对语音数据的话,叫语谱图。 语谱图的横坐标是时间,纵坐标是频率,坐标点值为语音数据能量 。由于是采用二维平面表达三维信息,所以能量值的大小是通过颜色来表示的,颜色深,表示该点的语音能量越强。
可是为什么采用二维平面来表示三维信息呢?这个是有历史原因的。在数字技术发展以前,人们可视化研究语音数据的方法是把数据通过频率滤波器,然后各个频率的数据驱动相应的类似针式打印的设备按频率高低顺序记录在一卷纸上,信号的强弱由记录在纸上的灰度来表示。记录纸按照一定的速度旋转,即相当于在不同的时间里记录下语音数据。
我们可以观察语音不同频段的信号强度随时间的变化情况。由于音乐信号本身频率丰富,不太容易看出规律,我们可以观察一下纯粹的语音数据的语谱图。从图中可以看到明显的一条条横方向的条纹,我们称为“声纹”,有很多应用。条纹的地方实际是颜色深的点聚集的地方,随时间延续,就延长成条纹,也就是表示语音中频率值为该点横坐标值的能量较强,在整个语音中所占比重大,那么相应影响人感知的效果要强烈得多。而一般语音中数据是周期性的,所以,能量强点的频率分布是频率周期的,即存在300Hz强点,则一般在n*300Hz点也会出现强点,所以我们看到的语谱图都是条纹状的。
尽管客观人发声器官的音域是有限度的,即一般人发声最高频率为4000Hz,乐器的音域要比人宽很多,打击乐器的上限可以到20KHz。但是,由于我们数字分析频率时,采用的是算法实现的,一般是FFT,所以其结果是由采样率决定的,即尽管是上限为4000Hz的语音数据,如果采用16Khz的采样率来分析,则仍然可以在4000Hz以上的频段发现有数据分布,则可以认为是算法误差,非客观事实。

2.带限信号特性

    语音中设计窗函数,窗函数性质大同小异,这里以窗函数为对象进行分析。

    对于时域的窗函数:

    其表达式为:

    对应的傅里叶变换:

 

 

    表达式为:

    可见信号的时宽越大(小),信号的频带宽度越小(大),对于矩形窗,有着带宽B与时宽乘积为这样的特性,其他窗函数也有着类似的性质。

    MATLAB仿真举例:

    根据上面的分析,信号长度定为2000(即2*pi的长度)的话,矩形窗为40,要满足时宽与带宽乘积为2000不变,理论上带宽应为50,一下的结果图验证了上面的理论:

 

    由于语音信号具有短时平稳特性,因此对其分析时,要进行加窗处理,借助上面的分析,可以看出,窗长如果选择短一些的话,就是时宽较小,对应的带宽就要大一些,在这种情况下得到的就是宽带语谱图,反之则得到窄带语谱图。

3.窄带语谱图

    对于一段语音进行分析(语音内容为0 1 2 3 4 5 6 7 8 9),语音采样率为8000Hz,取窗长为512个数据点,帧移为窗长的1/4,即128个数据点。

    得到如下结果图:

    从结果图中可以清楚看到谐波的结构,频率分辨率非常好,但是时间上的分辨率就不理想。对于上述语音,画出其频率特性:

    语音低频部分(红线)体现了声道的特性,窄带语谱图,频率分辨率太过精细,不能很好体现出共振峰的大致位置,即反映不出基波的变化特性。

 

4.宽带语谱图

    对于一段语音进行分析(语音内容为0 1 2 3 4 5 6 7 8 9),语音采样率为8000Hz,取窗长为128个数据点,帧移为窗长的1/4,即32个数据点。

    得到如下结果图:

 

 

    与窄带语谱图相反,宽带语谱图的时间分辨率很好,频率分辨率较低,不能很好反映声音的纹理特性,反映了频谱的时变特性,能很好分辨出共振峰的大致位置,但分辨不清谐波结构。

你可能感兴趣的:(Signal,processing)