一种ISF系数矢量量化的方法与装置
本发明涉及一种ISF系数矢量量化方法与装置,将训练好的多区域码表中的ISF系数转化为LPC系数,分别获取区域索引Choosen_cluster(i)、第一级矢量量化VQ的索引VQ(j)和第二级分裂矢量量化SVQ的索引SVQ[5]对待量化的ISF[16]系数进行量化,得到量化后的ISF_q[16],进一步得到当前帧量化后的LPC_q[16],将原始的LPC[16]系数通过功率谱计算公式得到对应的功率谱pf[128];将得到的当前帧量化后的LPC_q[16]系数和原始LPC[16]系数对应的功率谱pf[128]计算出当前区域对应的谱失真SD,并与上一个区域的谱失真进行比较,获取最小的谱失真SD,将最小谱失真对应的区域索引Choosen_cluster(i)和第一级矢量量化后的索引VQ(j)以及第二级分裂矢量量化后的索引SVQ[5]输出,完成ISF系数矢量量化。本发明仅使用42bit量化16阶ISF系数,相比AMR-WB+的46bit,少了4bit。
发明专利
CN201410524836.1
2014-09-30
CN104269176A
2015-01-07
G10L19/032(2013.01)I
武汉大学深圳研究院
胡瑞敏;张茂胜;姚雪春;王晓晨;姜林;涂卫平;王松;杨乘
518057 广东省深圳市南山区粤兴二道6号武汉大学深圳产学研大楼A302室
广东知恒律师事务所 44342
柴吉峰
广东;44
一种ISF系数矢量量化的方法,其特征在于,包括以下步骤:S1:将输入的一组待量化的ISF[16]系数转化成LPC_s[16],并且将训练好的多区域码表中的ISF系数转化为LPC系数,通过最近邻搜索法则,采用欧氏距离测度选择出欧氏距离最近的6个区域,然后按顺序选择第一个区域对应的码本,并将该区域的索引值Choosen_cluster(i)(用4bit表示)输出,其中i=0,1,2,3,...,15;S2:在步骤S1中输出的索引Choosen_cluster(i)对应的已经训练好的一张16*64*16的码表中,根据最近邻法则,采用欧式距离测度进行搜索,搜索出一组与待量化的ISF[16]系数残差最小的一组码本,得到第一级矢量量化VQ对应的索引VQ(j)(用6bit表示),j=0,1,2,3,…,63,然后将计算出来的残差Re[16]化分为5组,5组的长度分别为3,3,3,3,4,在第一级矢量量化VQ输出的索引中对应的3个3*64码表,1个3*128码表和1个4*128码表中通过最近邻法则,按照欧式距离测度,分别搜索出与5组残差中残差最小的一组码本,得到第二级分裂矢量量化索引SVQ[5](分别用6bit,6bit,6bit,7bit,7bit表示);最后通过区域索引Choosen_cluster(i)、第一级矢量量化VQ的索引VQ(j)和第二级分裂矢量量化SVQ的索引SVQ[5]对待量化的ISF[16]系数进行量化,得到量化后的ISF_q[16];S3:将步骤S2中得到的当前帧量化后的ISF_q[16]系数和前一帧保留的量化后的ISF_q_old[16]系数通过LPC和ISF之间的关系进行换算,得到当前帧量化后的LPC_q[16],并且将前一帧量化后的所保存的ISF_q_old[16]系数进行更新,把当前帧量化后的ISF_q[16]系数保存到ISF_q_old[16]系数中,以便下一帧使用;S4:将原始的LPC[16]系数通过功率谱计算公式得到对应的功率谱pf[128];S5:将步骤S3得到的当前帧量化后的LPC_q[16]系数和步骤S4中得到的原始LPC[16]系数对应的功率谱pf[128]通过谱失真计算公式,计算出当前区域对应的谱失真SD,并与上一个区域的谱失真进行比较,若当前区域计算出的谱失真小于上一个区域计算的谱失真,则将谱失真进行更新min_error=SD,然后跳转至步骤S1进行下一个区域的计算;若当前区域计算出的谱失真大于上一个区域计算的谱失真,则直接跳转至步骤S1进行下一个区域的计算;若6个区域对应的谱失真计算完成,最终将最小谱失真对应的区域索引Choosen_cluster(i)和第一级矢量量化后的索引VQ(j)以及第二级分裂矢量量化后的索引SVQ[5]输出,完成ISF系数矢量量化。