您好,欢迎访问三七文档
矢量量化技术(vectorquantizationVQ)1概述2矢量量化的基本原理1.1概述一、矢量量化的应用二、标量量化和矢量量化的区别矢量量化技术技术是一种数据压缩和编码技术,矢量量化压缩技术的应用领域非常广阔,如军事部门和气象部门的卫星(或航天飞机)遥感照片的压缩编码和实时传输、雷达图像和军用地图的存储与传输、数字电视和DVD的视频压缩、医学图像的压缩与存储、网络化测试数据的压缩和传输、语音编码、图像识别和语音识别等等。一、矢量量化的应用整个动态范围被分成若干个小区间,每个小区间有一个代表值,量化时落入小区间的信号值就用这个代表值代替,或者叫被量化为这个代表值。这时的信号量是一维的,所以称为标量量化。二、标量量化和矢量量化的区别采样量化xa(t)xa(nT)x(n)xa1x1xkxakxak+1xk+1xLxaLxaL+1x(n)=Q[xa(nT)]。1.标量量化:2--22标量量化1-dimensionalVQisshownbelow:2.矢量量化:若干个标量数据组成一个矢量,矢量量化是对矢量进行量化,和标量量化一样,它把矢量空间分成若干个小区域,每个小区域寻找一个代表矢量,量化时落入小区域的矢量就用这个代表矢量代替,或者叫着被量化为这个代表矢量。例如,所有可能的二维矢量就构成了一个平面,将平面分成7个小区域。Y1Y2Y3Y4Y5Y6Y7x1x2Yi(x1i,x2i)假设声道滤波器传输函数用4个系数来描述,而且,又假设声道只能为4个可能的形状之一。这意味着只存在4组可能的声道滤波器传输函数。现在考虑对每一个滤波器系数单独进行标量量化,需要2bit,每一分析帧需要8个比特来进行编码。3、举例说明标量量化与矢量量化的区别如果我们知道只有4种可能的声道形状,与4个可能的声道滤波器系数组成的矢量相对应,若某一个滤波器系数知道了,其它系数就知道了,也就是矢量中的标量值之间是高度相关的,在这种情况下,一个分析帧,只需要一个2bits对4个滤波器系数进行编码,这样降低了所需的比特数。矢量量化就是利用数据之间的相关性来降低所需的比特率。2矢量量化的基本原理一、矢量量化的基本原理二、矢量量化在语音通信中的应用三、矢量量化在语音识别中的应用四、矢量量化的关键之处1.基础知识一、矢量量化的基本原理若干个标量数据组成一个矢量,标量的个数就为矢量的维数。如语音信号某一帧中提取的声道参数,共P个,Xi={ai1,ai2,…,aiP}。则Xi是一个P维矢量。设共有N个P维矢量X={X1,X2,…,XN},其中第i个矢量为Xi,i=1,2,…N。类比过来,N个语音帧,每帧中共有P个声道参数,共组成N个P维矢量。a11,a12,…,a1KaN1,aN2,…,aNK第1帧第N帧X1=a11,a12,…,a1PX2=a21,a22,….,a2PXN=aN1,aN2,….,aNPN个矢量,每个矢量的维数为P第一帧第二帧第N帧将一个P维随机矢量映射成另一个离散取值的实P维矢量的过程。()qXY所有P维矢量构成了一个空间为RP,无遗漏地划分成J个互不相交的子空间R1,R2…RJ,将Rj称为胞腔。在每一个子空间Rj找一代表矢量Yj,则J个代表矢量可以组成矢量集为:Y={Y1,Y2,…,YJ}构成了一个矢量量化器,Y叫作码本,J称为码本长度,Yj称为码字,有:Yj={yj1,yj2,…,yjP},j=1,2,…J。2.矢量空间的划分举例以P=2为例来说明。当P=2时,所得到的是二维矢量。所有可能的二维矢量就构成了一个平面。第i个二维矢量记为:Xi={xi1,xi2}。先把这个平面划分成J块互不相交的子区域,从每个子区域中找出一个代表矢量。如J=7。Y1Y2Y3Y4Y5Y6Y7x1x2码本Y={Y1,Y2,…,YJ}码本长度J=7码字Yj={xj1,xj2},j=1,2,…J维数为P,码本长度为J的矢量量化器Q定义:为从P维欧几里德空间RP到一包含J个输出(重构)点的有限集合C的映射,Q:RP→C,其中C={y1,y2,…,yJ}yiRP,i=1,…,J集合C称作码本或码书,码本长度为J。码本的J个元素称作码字或码矢量,它们均为RP中的矢量,P维矢量。矢量量化器定义:Anexampleofa2-dimensionalVQisshownbelow:当给矢量量化器输入一个任意矢量Xi进行矢量量化时,矢量量化器首先判断它属于哪个子空间,然后输出该子空间的代表矢量Yj。矢量量化过程就是用Yj代替Xi的过程。Yj=Q(Xi)1jJ1iN3.矢量量化的过程矢量量化器XiYj当给矢量量化器输入一个任意矢量Xi进行矢量量化时,矢量量化器首先判断它属于那个子空间,如何判断就是要依据一定的规则,选择一个合适的失真测度,分别计算每个码字代替Xi所带来的失真,当确定产生最小失真的那个码字Yj时,就将Xi量化成Yj,Yj就是Xi的重构矢量(和恢复矢量)。4.判断规则Xi={ai1,ai2,…,aiP}Y2Y1={y11,y12,…,y1P}Y2={y21,y22,…,y2P}YJ={yJ1,yJ2,…,yJP}矢量量化器(码本)最小失真计算失真x4矢量量化3323132221343411134码书码字c0码字c1码字c2码字c3索引0d(x,c0)=5d(x,c1)=11d(x,c2)=8d(x,c3)=8argmin[d(x,cj)]x412)(),(iiicxCXd图像编码例子:原图象块(4灰度级,矢量维数k=4×4=16)x0123码书C={y0,y1,y2,y3}y0y1y2y3码字y1最接近输入矢量图象块x,故用索引“01”编码d(x,y0)=25d(x,y1)=5d(x,y2)=25d(x,y3)=46标量量化是维数为1的矢量量化。一般矢量量化均指大于1的多维量化。一个P维最佳矢量量化器的性能总是优于P个最佳标量量化器。在相同的编码速率下,矢量量化的失真明显比标量量化的失真小;而在相同的失真条件下,矢量量化所需的码速率比标量量化所需的码速率低得多。由于矢量量化的复杂度随矢量维数成指数形式增加,故矢量量化的复杂度比标量量化的复杂度高。标量量化和矢量量化比较二、矢量量化在语音通信中的应用通信系统中有两个完全相同的码本,一个在编码器(发送端),另一个在解码器(接收端)。每个码本包含J个码字Yj,每个码字是一个P维矢量。VQ编码器的运行原理是根据输入矢量Xi从编码器码本中选择一个与之失真误差最小的码字Yj,其输出的V就是该码字的下标,V是一个数字,因而可以通过任何数字信道传输或任何数字存储器来存储。如在编码速率为2.4kbit/s的LPC声码器中,将每帧的10个预测系数加以10维的矢量量化,编码速率降低到800bit/s,而语音质量没有下降。特征矢量形成语音信号帧Xi码本Y1Y2YJVQ编码器传输或存储VVQ译码器VYj码本Y1Y2YJ矢量量化在语音通信中的应用信源用LBG(GLA)算法生成最近邻搜索信宿查表信道索引索引码书码书输入矢量输出矢量编码器解码器矢量量化编码与解码结构图:{X1,X2,…,XN}模板库语码本{Y1,Y2,…,YJ}学码本音码本文码本wen{2,4,…,1}N个特征矢量三、矢量量化在语音识别中的应用先对系统中的每个字,做一个码本作为该字的参考(标准)模板,共有M个字,故共有M个码本,组成一个模板库。识别时,对于任意输入的语音特征矢量序列X={X1,X2,…,XN},计算该序列中每一个特征矢量对模板库中的每个码本的总平均失真量误差,找出最小的失真误差对应的码本(代表一个字),将对应的字输出作为识别的结果。特征矢量序列X={X1,X2,……,XN}模板库Y1,Y2,……,YM特征矢量序列形成任意语音X码本Y1Y2YM计算失真误差判决输出结果Yi每一个字做一个码本,共M个字模板库{X1,X2,…,XN}模板库语码本{Y1,Y2,…,YN}学码本音码本文码本wen四、矢量量化的关键之处1.首先设计一个好码本。关键在于如何划分J个区域边界。这需要大量的输入信号矢量,经过统计实验才能确定,这个过程称为“训练”或“学习”。应用聚类算法,按照一定的失真度准则(失真测度),对训练的数据进行分类,从而把训练数据在多维空间中划分成一个以码字为中心的胞腔,常用的是LBG算法来实现。LBG算法是一种递推算法,从一个事先选定的初始码本开始迭代。把训练序列按照码本中的元素根据最邻近准则分组,对每一分组找质心,得到新的码本,又作为初始码本,再进行分组,重复上述过程,直到系统性能满足要求和不再有明显的改进为止。LBG算法THANKS
本文标题:矢量量化
链接地址:https://www.777doc.com/doc-7259387 .html