语音信号处理第四章:

语音信号处理第二章
语音信号处理第三章
语音信号处理第四章
语音信号处理第五章
语音信号处理第七章
语音信号处理第九章
语音信号处理第十章
语音信号处理第十二章

矢量量化的最佳码本设计:LBG算法

具体实现步骤

特征参数提取
(1)对语音信号进行预处理(预加重,加窗,分帧。加窗分帧对窗的要求取决于提取的参数)
(2)对每一帧提取参数,得到输入训练矢量X。所有帧都处理完毕后,得到全部输入训练矢量X的集合S
初始化码本
(3)设置J个码字的初始值
划分
(4)根据最近邻准则(与码字的距离最小),将训练矢量集合S分为J个子集
计算畸变
(5)计算本轮的总畸变(对于每个子集,求子集内每个矢量与子集所属码字的距离之和,再将每个子集得到的结果累加)
(6)计算畸变改进量的相对值(上一轮的总畸变与本轮的总畸变的差值绝对值除以本轮的总畸变。第0轮的畸变初值是一个较大值)
(7)计算新的码字(新的码字等于本轮子集内矢量的平均值)
判断是否达到要求
(8)判断(6)得到的相对值是否小于目标相对值δ。若小于,则转入(10),否则转入(9)
(9)判断本轮是否达到最大迭代次数L。若小于,则转入(4)执行下一轮,否则转入(10)
(10)迭代终止,输出(7)得到的新的码字

选用的距离/失真测度:

如果(2)参数使用MFCC,则距离可使用欧氏距离
如果(2)参数使用LPC,则距离可使用I-S距离或对数似然比失真测度

对数似然比失真测度:
在这里插入图片描述

设置码字初始值/码本初始化:

常用方法有随机选取法(训练矢量集合S中随机选取J个。最简单,但可能选中非典型的矢量)、分裂法、链映射法。改进的方法有遗传算法。

实际实现会遇到的问题:

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/jieyannn/article/details/107169248
今日推荐