语音识别 三维语谱图
时频幅三维图
图1
图2
图3
数据处理过程
- 使用基于线性相关系数的基音周期提取算法计算出准确的基音周期;
- 在分析点取整周期对应的样点数据为一帧;
- 为提高频率分辨率,将一帧单周期数据重复拼接到多于1024个点(8K采样);
- 进行1024点加窗FFT,取模得到单帧的频谱;
- 以帧号(时间)为x轴,频率为y轴,幅度为z轴作图(图1);
- 同第5,以颜色表示幅度即为图2,也就是细化了的__语谱图__。
结论
以下结论为个人论断,仅供参考
1、汉语语音的浊音部分(韵母)具有清晰简明的频谱结构;
2、汉语发音音节(浊音)的频率和幅度随时间__连续__变化;
2.1 由图2可知单音节频率随时间连续变化,但是可能存在平稳-过渡两种状态。如图中“8”。
2.2 图3中幅值的跳跃个人认为是DFT频谱泄漏和计算误差造成,真实的幅度应该具有连续性。
3、基音频率的变化即为汉语的音调,对频率变化曲线作聚类分析能够得到各音调的典型模式;
4、对语音帧的频谱结构作聚类分析能够得到汉语语音的基本音节(韵母)。
后记
个人对语音识别和智能机器人非常感兴趣。
这几篇语音处理博客是本人近期的业余学习成果,浅显外行不成系统,与初学者共勉。
至此,汉语韵母的语音特性,我认为上述时频幅数据已经可以作为识别的数学依据了。声母(清音)的特性还需要另行提取。
这篇博文的Matlab代码已经丢失。
后来用Python实现了一个特定人孤立词识别的简单演示程序:
演示视频:https://www.bilibili.com/video/BV1b54y1B7ne?from=search&seid=12613039173403878744
python代码:https://gitee.com/hedgehogli/SimpleOffLineASR_Demo_sw