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

《语音信号处理试验教程》(梁瑞宇等)的代码主要是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\{\begin{array}{ll} \bigcup_{j=1}^JR_j=R^K\\R_i\bigcap R_j=\Phi,i\neq j \end{array}\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

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值