电子视频技术

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

视频数据的基本压缩编码技术与MPEG系列标准1.Huffman编码、算术编码、行程编码的原理、算法及适用范围。1.1Huffman编码HUFFMAN编码又称哈夫曼编码,是一种可变长编码方式,是由美国数学家DavidHuffman创立的,是二叉树的一种特殊转化形式。编码的原理是:将使用次数多的代码转换成长度较短的代码,而使用次数少的可以使用较长的编码,并且保持编码的唯一可解性。Huffman算法的最根本的原则是:累计的(字符的统计数字*字符的编码长度)为最小,也就是权值(字符的统计数字*字符的编码长度)的和最小。由于Huffman编码需要扫描两次,第一次是统计数字,第二次是编码写文件,大大影响了速度,因此有人发明了enhancedHuffmanaglorithm。这种算法只扫描一遍文件,动态产生Huffman树,即每读n个字节就重新编码一次Huffman树,以达到提高速度的目的。在解码的过程中使用动态还原技术。Huffman编码是Huffman树的一个应用。Huffman编码应用广泛,如JPEG中就应用了Huffman编码。1.2算术编码算术编码是图像压缩的主要算法之一。是一种无损数据压缩方法,也是一种熵编码的方法。和其它熵编码方法不同的地方在于,其他的熵编码方法通常是把输入的消息分割为符号,然后对每个符号进行编码,而算术编码是直接把整个输入的消息编码为一个数,一个满足(0.0≤n1.0)的小数n。在给定符号集和符号概率的情况下,算术编码可以给出接近最优的编码结果。使用算术编码的压缩算法通常先要对输入符号的概率进行估计,然后再编码。这个估计越准,编码结果就越接近最优的结果。算术编码是用符号的概率和它的编码间隔两俩个基本参数来描述的(见下文教程)。算术编码可以是静态的或是自适应的。在静态算术编码中,信源符号的概率是固定的。在自适应算术编码中,信源符号的概率根据编码时符号出现的频繁程度动态地进行修改。在编码期间估算信源符号概率的过程叫建模。需要开发动态算术编码的原因,是因为事先知道精确的信源符号概率是很难的,而且是不切实际的。动态建模是确定编码器压缩效率的关键。算术编码在图像数据压缩标准(如JPEG,JBIG)中扮演了重要的角色。在算术编码中,消息用0到1之间的实数进行编码,算术编码用到两个基本的参数:符号的概率和它的编码间隔。信源符号的概率决定压缩编码的效率,也决定编码过程中信源符号的间隔,而这些间隔包含在0到1之间。编码过程中的间隔决定了符号压缩后的输出。1.3行程编码仅存储一个像素值以及具有相同颜色的像素数目的图象数据编码方式称为行程编码,或称游程编码,常用RLE(Run-LengthEncoding)表示。该压缩编码技术相当直观和经济,运算也相当简单,因此解压缩速度很快。RLE压缩编码尤其适用于计算机生成的图形图像,对减少存储容量很有效果。行程编码的基本原理是:用一个符号值或串长代替具有相同值的连续符号(连续符号构成了一段连续的“行程”。行程编码因此而得名),使符号长度少于原始数据的长度。只在各行或者各列数据的代码发生变化时,一次记录该代码及相同代码重复的个数,从而实现数据的压缩。在此方式下每两个字节组成一个信息单元。第一个字节给出其后面相连的象素的个数。第二个字节给出这些象素使用的颜色索引表中的索引。例如:信息单元0304,03表示其后的象素个数是3个,04表示这些象素使用的是颜色索引表中的第五项的值。压缩数据展开后就是040404.同理0405可以展开为05050505.信息单元的第一个字节也可以是00,这种情况下信息单元并不表示数据单元,而是表示一些特殊的含义。这些含义通常由信息单元的第二个字节的值来描述。在对图像数据进行编码时,沿一定方向排列的具有相同灰度值的像素可看成是连续符号,用字串代替这些连续符号,可大幅度减少数据量。行程编码分为定长行程编码和不定长行程编码两种类型。行程编码是连续精确的编码,在传输过程中,如果其中一位符号发生错误,即可影响整个编码序列,使行程编码无法还原回原始数据。如果一幅图象是由很多块颜色相同的大面积区域组成,那么采用行程编码的压缩效率是惊人的。然而,该算法也导致了一个致命弱点,如果图象中每两个相邻点的颜色都不同,用这种算法不但不能压缩,反而数据量增加一倍。所以现在单纯采用行程编码的压缩算法用得并不多,PCX文件算是其中的一种.2.预测编码的基本原理、DPCM编码原理、最佳线性预测、自适应预测编码、自适应帧间预测等相关内容。2.1预测编码预测编码对有记忆信源的剩余度进行压缩的一种时域编码方法。预测编码是根据离散信号之间存在着一定关联性的特点,利用前面一个或多个信号预测下一个信号进行,然后对实际值和预测值的差(预测误差)进行编码。如果预测比较准确,误差就会很小。在同等精度要求的条件下,就可以用比较少的比特进行编码,达到压缩数据的目的。预测编码中典型的压缩方法有脉冲编码调制(PCM,PulseCodeModulation)、差分脉冲编码调制(DPCM,DifferentialPulseCodeModulation)、自适应差分脉冲编码调制(ADPCM,AdaptiveDifferentialPulseCodeModulation)等,它们较适合于声音、图像数据的压缩,因为这些数据由采样得到,相邻样值之间的差相差不会很大,可以用较少位来表示。2.2DPCM编码在PCM系统中,原始的模拟信号经过采样后得到的每一个样值都被量化成为数字信号。为了压缩数据,可以不对每一样值都进行量化,而是预测下一样值,并量化实际值与预测值之间的差值,这就是DPCM(DifferentialPulseCodeModulation,差分脉冲编码调制)。1952年贝尔(Bell)实验室的C.C.Cutler取得了差分脉冲编码调制系统的专利,奠定了真正实用的预测编码系统的基础。DPCM系统工作时,发送端先发送一个起始值x0,接着就只发送预测误差值ek=xk–x^k,而预测值x^k可记为x^k=f(x'1,x'2,…,x'N,k),kN(04-01-1)式中kN表示x'1,x'2,…,x'N的时序在xk之前,为所谓因果型(Causal)预测,否则为非因果型预测。接收端把接收到的量化后的预测误差e^k与本地算出的x^k相加,即得恢复信号x'k。如果没有传输误差,则接收端重建信号x'k与发送端原始信号xk之间的误差为:xk-x'k=xk-(x^k+e^k)=(xk-x^k)-e^k=ek-e^k=qk(04-01-2)这正是发送端量化器产生的量化误差,即整个预测编码系统的失真完全由量化器产生。因此,当xk已经是数字信号时,如果去掉量化器,使e^k=ek,则qk=0,即x'k=xk。这表明,这类不带量化器的DPCM系统也可用于无损编码。但如果量化误差qk≠0,则x'k≠xk,为有损编码。如果预测方程式(04-01-2)的右方是各个x'i的线性函数,即Nx'k=Σai(k)x'ikN(04-01-3)i=1即得常用的线性预测,又称线性预测编码(LPC,LinearPredictiveCoding)。LPC在语音处理中得到广泛应用,并在此基础上发展了许多算法,典型的有:多脉冲线性预测编码(MPLPC),规则脉冲激励编码(RPE),码激励线性预测(CELP),代数激励线性预测(ACELP),矢量和激励线性预测(VSELP),QCELP(QualcommCELP,变速率CELP),低延时码激励线性预测(LD-CELP),共轭结构代数激励线性预测(CS-ACELP),混合激励线性预测(MELP),间隔同步更新码激励线性预测(PSI-CELP),松弛码激励线性预测(RCELP),残差激励线性预测(RELP),规则脉冲激励长时预测(RPE-LTP)等。在DPCM中,“1位量化”的特殊情况称为增量调制(Δ调制)。为了能够正确恢复被压缩的信号,不仅在接收端有一个与发送端相同的预测器,而且其输入信号也要相同(都是x'k,而不是xk),动作也与发送端的预测器环路(即发送端本地的反量化和解码部分)完全相同。在图像信号中应用DPCM时,用作预测的像素和被预测的像素可以在同一行,也可以在不同行(同一帧),甚至在不同帧,分别称为一维预测、二维预测和三维预测。声音信号中的预测只是一维预测。DPCM的优点是算法简单,容易硬件实现,缺点是对信道噪声很敏感,会产生误差扩散。即某一位码出错,对图像一维预测来说,将使该像素以后的同一行各个像素都产生误差;而对二维预测,该码引起的误差还将扩散到以下的各行。这样,将使图像质量大大下降。同时,DPCM的压缩率也比较低。随着变换编码的广泛应用,DPCM的作用已很有限。2.3最佳线性预测如果对一个随机效应(如个体育种值)的预测具有线性(预测量是样本观察值的线性函数)、无偏(预测量的数学期望等于随机效应本身的数学期望)和预测误差方差最小等统计学性质,则称其为最佳线性无偏预测。2.4自适应预测编码预测参数的最佳化依赖信源的特征,要得到最佳预测参数显然是一件繁琐的工作。而采用固定的预测参数往往又得不到较好的性能。为了能使性能较佳,又不致于有太大的工作量,可以采用自适应预测。为了减少计算工作量,预测参数仍采用固定的,但此时有多组预测参数可供选择,这些预测参数根据常见的信源特征求得。编码时具体采用哪组预测参数需根据特征来自适应地确定。为了自适应地选择最佳参数,通常将信源数据分区间编码,编码时自动地选择一组预测参数,使该实际值与预测值的均方误差最小。随着编码区间的不同,预测参数自适应地变化,以达到准最佳预测。2.5自适应帧间预测帧间预测编码是利用视频图像帧间的相关性,即时间相关性,来达到图像压缩的目的,广泛用于普通电视、会议电视、视频电话、高清晰度电视的压缩编码。在图像传输技术中,活动图像特别是电视图像是关注的主要对象。活动图像是由时间上以帧周期为间隔的连续图像帧组成的时间图像序列,它在时间上比在空间上具有更大的相关性。大多数电视图像相邻帧间细节变化是很小的,即视频图像帧间具有很强的相关性,利用帧所具有的相关性的特点进行帧间编码,可获得比帧内编码高得多的压缩比。对于静止图像或活动很慢的图像,可以少传一些帧,如隔帧传输,未传输的帧,利用接收端的帧存储器中前一帧的数据作为该帧数据,对视觉没有什么影响。因为人眼对图像中静止或活动慢的部分,要求有较高的空间分辨率,而对时间分辨率的要求可低些。这种方法叫帧重复方法,广泛应用于视频电话、视频会议系统中,其图像帧速率一般为1~15帧/秒。采用预测编码的方法消除序列图像在时间上的相关性,即不直接传送当前帧的像素值,而是传送x和其前一帧或后一帧的对应像素x'之间的差值,这称为帧间预测。当图像中存在着运动物体时,简单的预测不能收到好的效果,例如图象的当前帧与前一帧的背景完全一样,只是小球平移了一个位置,如果简单地以第k-1帧像素值作为k帧的预测值,则在实线和虚线所示的圆内的预测误差都不为零。如果已经知道了小球运动的方向和速度,可以从小球在k-1帧的位置推算出它在k帧中的位置来,而背景图像(不考虑被遮挡的部分)仍以前一帧的背景代替,将这种考虑了小球位移的k-1帧图像作为k帧的预测值,就比简单的预测准确得多,从而可以达到更高的数据压缩比。这种预测方法称为具有运动补偿的帧间预测。具有运动补偿的帧间预测编码是视频压缩的关键技术之一,它包括以下几个步骤:首先,将图像分解成相对静止的背景和若干运动的物体,各个物体可能有不同的位移,但构成每个物体的所有像素的位移相同,通过运动估值得到每个物体的位移矢量;然后,利用位移矢量计算经运动补偿后的预测值;最后对预测误差进行量化、编码、传输,同时将位移矢量和图像分解方式等信息送到接收端。在具有运动补偿的帧间预测编码系统中,对图像静止区和不同运动区的实时完善分解和运动矢量计算是较为复杂和困难的。在实际实现时经常采用的是像素递归法和块匹配法两种简化的办法。像素递归法的具体作法是,仍需通过某种较为简单的方法首先将图像分割成运动区和静止区。在静止区内像素的位移为零,不进行递归运

1 / 10
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功