发明名称 一种可分级矢量量化编解码方法
摘要 本发明提出了一种可分级矢量量化编解码方法。编码时,提取表示源信号的帧的点阵矢量X;对点阵矢量X进行点阵压缩得到格点矢量Y;判断目标矢量Y是否包括在基础码本C中,根据判断结果进行多级扩展。解码时,从编码码流中提取基础码本量化索引I以及扩展层数n;根据扩展层数n解码量化索引。本发明根据具体的码本半径,确定扩展层数,实现了精细的可分级矢量量化。
申请公布号 CN101599273B 申请公布日期 2012.01.11
申请号 CN200910063171.8 申请日期 2009.07.14
申请人 武汉大学 发明人 胡瑞敏;杨玉红;刘元元;谢昭;周成;杜希
分类号 G10L19/00(2006.01)I 主分类号 G10L19/00(2006.01)I
代理机构 武汉天力专利事务所 42208 代理人 严彦;冯卫平
主权项 1.一种可分级矢量量化编码方法,其特征在于:包括以下步骤,步骤1.1,提取表示源信号的帧的点阵矢量X;步骤1.2,对点阵矢量X进行点阵压缩得到格点矢量Y;步骤1.3,判断格点矢量Y是否包括在基础码本C中;如果格点矢量Y包括在基础码本C中,对格点矢量Y在基础码本C中进行矢量量化索引查找,得到基础码本量化索引I并编码输出;如果格点矢量Y不包括在基础码本C中,分裂格点矢量Y得到基础部分矢量base_Y和扩展部分矢量extend_Y,所述扩展部分矢量extend_Y按照扩展层数n分裂为各层扩展部份矢量extend_Y<sub>i</sub>,1≤i≤n;对基础部分矢量base_Y在基础码本C中进行矢量量化索引查找,得到基础码本量化索引I,对各层扩展部份矢量extend_Y<sub>i</sub>分别在扩展码本E中进行矢量量化索引查找,得到相应各层扩展量化索引extend_I<sub>i</sub>,1≤i≤n;最后将所得基础码本量化索引I、各层扩展量化索引extend_I<sub>i</sub>和扩展层数n编码输出;所述扩展部分矢量extend_Y按照扩展层数n分裂为各层扩展部份矢量extend_Y<sub>i</sub>,具体方式如下,(1)计算扩展部分矢量extend_Y的扩展层数n:<img file="FSB00000593947200011.GIF" wi="1357" he="84" />其中,<img file="FSB00000593947200012.GIF" wi="66" he="66" />表示上限取整,R为基础码本球壳半径,Z为扩展码本球壳半径,extend_y<sub>k</sub>表示扩展部分矢量extend_Y的第k维元素,k取1~K,K为总维数;(2)根据扩展层数n计算得到每层扩展部份矢量{extend_Y<sub>1</sub>,extend_Y<sub>2</sub>,...,extend_Y<sub>n</sub>}其中,第一层的扩展部份矢量extend_Y<sub>1</sub>计算如下,extend_Y<sub>1</sub>=mod((extend_Y/R),Z)其中,第二层及以上的扩展部份矢量extend_Y<sub>i</sub>计算如下,<maths num="0001"><![CDATA[<math><mrow><mi>extend</mi><mo>_</mo><msub><mi>Y</mi><mi>i</mi></msub><mo>=</mo><mi>mod</mi><mrow><mo>(</mo><mrow><mo>(</mo><mrow><mo>(</mo><mi>extend</mi><mo>_</mo><mi>Y</mi><mo>/</mo><mi>R</mi><mo>)</mo></mrow><mo>-</mo><munderover><mi>&Sigma;</mi><mrow><mi>j</mi><mo>=</mo><mn>0</mn></mrow><mrow><mi>i</mi><mo>-</mo><mn>1</mn></mrow></munderover><msup><mi>Z</mi><mi>j</mi></msup><mi>extend</mi><mo>_</mo><msub><mi>Y</mi><mi>j</mi></msub><mo>)</mo></mrow><mo>,</mo><msup><mi>Z</mi><mi>i</mi></msup><mo>)</mo></mrow></mrow></math>]]></maths>其中2≤i≤n,且i为整数。
地址 430072 湖北省武汉市武昌珞珈山