当前位置:   article > 正文

Python语音基础操作--11.1矢量量化(VQ)的说话人情感识别_vq语音识别python

vq语音识别python

《语音信号处理试验教程》(梁瑞宇等)的代码主要是Matlab实现的,现在Python比较热门,所以把这个项目大部分内容写成了Python实现,大部分是手动写的。使用CSDN博客查看帮助文件:

Python语音基础操作–2.1语音录制,播放,读取
Python语音基础操作–2.2语音编辑
Python语音基础操作–2.3声强与响度
Python语音基础操作–2.4语音信号生成
Python语音基础操作–3.1语音分帧与加窗
Python语音基础操作–3.2短时时域分析
Python语音基础操作–3.3短时频域分析
Python语音基础操作–3.4倒谱分析与MFCC系数
Python语音基础操作–4.1语音端点检测
Python语音基础操作–4.2基音周期检测
Python语音基础操作–4.3共振峰估计
Python语音基础操作–5.1自适应滤波
Python语音基础操作–5.2谱减法
Python语音基础操作–5.4小波分解
Python语音基础操作–6.1PCM编码
Python语音基础操作–6.2LPC编码
Python语音基础操作–6.3ADPCM编码
Python语音基础操作–7.1帧合并
Python语音基础操作–7.2LPC的语音合成
Python语音基础操作–10.1基于动态时间规整(DTW)的孤立字语音识别试验
Python语音基础操作–10.2隐马尔科夫模型的孤立字识别
Python语音基础操作–11.1矢量量化(VQ)的说话人情感识别
Python语音基础操作–11.2基于GMM的说话人识别模型
Python语音基础操作–12.1基于KNN的情感识别
Python语音基础操作–12.2基于神经网络的情感识别
Python语音基础操作–12.3基于支持向量机SVM的语音情感识别
Python语音基础操作–12.4基于LDA,PCA的语音情感识别

代码可在Github上下载busyyang/python_sound_open

VQ基本原理

矢量量化(VQ)的基本原理是将若干个标量数据组成一个矢量(或者从一帧语音数据中提取的特征矢量)在多维空间给予整体量化,从而可以在信息量损失最小的情况下压缩数据量。假设有N个K维的特征向量 X = { X 1 , X 2 , . . . , X N } X=\{X_1,X_2,...,X_N\} X={ X1,X2,...,XN},( X X X在K维欧几里得空间 R K R^K RK中),其中第i个矢量可写为:
X i = { x 1 , x 2 , . . . , x K } , i = 1 , 2 , . . . , N X_i=\{x_1,x_2,...,x_K\},i=1,2,...,N Xi={ x1,x2,...,xK},i=1,2,...,N

将K维欧几里得空间无遗漏地划分成 J J J个互不相关的子空间 R 1 , R 2 , . . . , R J R_1,R_2,...,R_J R1,R2,...,RJ,有:
{ ⋃ j = 1 J R j = R K R i ⋂ R j = Φ , i ≠ j \left\{

j=1JRj=RKRiRj=Φ,ij
\right. { j=1JRj=RKRiRj=Φ,i=j

这些子空间 R j R_j Rj称为胞腔,在每个子空间 R j R_j Rj找一个代表向量 Y j Y_j Yj,那么有J个代表矢量可以组成矢量集: Y = { Y 1 , Y 2 , . . . , Y J } Y=\{Y_1,Y_2,...,Y_J\} Y={ Y1,Y

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/喵喵爱编程/article/detail/754551
推荐阅读
相关标签
  

闽ICP备14008679号