新闻中心

EEPW首页 > 消费电子 > 设计应用 > PC机的MPEG-4编码原理及实现

PC机的MPEG-4编码原理及实现

作者:时间:2010-06-02来源:网络收藏

日益增长的多媒体通信量和有限的通信带宽之间的矛盾日益突出。为了减小传输的数据量,国际电信联盟和MPEG标准组织都制定过各自的视频压缩标准。其中,最新标准以其高压缩率,支持低码率传输和基于对象等优点,而在传真、视频点播、电视会议、医用图像传输等领域广泛应用。

继承了MPEG-2中档次和等级概念,共有视频档次、音频档次、图形档次和场景描述档次共四类。档次是针对某一特定的应用而采用的工具,它是提供的工具集中一个子集,不同的档次就是不同的子集。每一个档次分为一个或多个等级,等级则定义了比特流参数的规格,实际上是限定了解码一个序列所应具备的性能。

MPEG-4的独特之处在于支持基于内容的编解码,为此引入了视听对象AVO(Audio/Video Object)的概念。AVO可以是一幅图像中一个小提琴或琴声等,每个AVO可独立编码,但相互之间又存在着时空结构关系,因此编码时,必须传送编码对象的组成结构信息体“场景描述”,以表示场景中各AVO之间的时空结构关系。解码时根据此“场景描述”对图像和声音的有关内容进行编辑和操作。视听对象还可以是一个矩形帧,从而使MPEG-4兼容原来的MPEG标准。视听对象中的视频对象VO通常由3类信息来描述,即运动、形状和纹理信息。

1 编码

MPEG-4编码器主要由形状编码、纹理编码和运动编码三部分组成。帧格式分为I-VoP,P-VOP和B-VOP。这里只讨论I-VOP和P-VOP。I-VOP采用纹理编码来消除一帧图像数据间的空间冗余度;P-VOP是参考前一帧图像,并采用两种参数来编码。一种是当前要编码的图像与参考图像之间的差值;另一种是运动矢量。编码器的具体结构模块如图1所示。


1.1 形状编码

形状编码主要用于记录从图像序列中提取VOP的形状信息,该信息分为二值形状信息和灰度形状信息。二值形状信息用0和1两个值表示VOP的形状;灰度形状信息用0~255表示VOP区域的不同透明度。在编码时,当提取的VOP具有非矩形形状时,需要对其进行边界扩展,使其矩形边界都是16的倍数,同时保证扩展后的面积最小,然后进行形状编码;当提取的VOP为矩形时(矩形的长度和宽度都是16的倍数),形状编码就会被屏蔽。

1.2 纹理编码

纹理编码主要对I-VOP内的图像像素或P-VOP内的差值像素进行编码,包括DCT、量化、DC和AC预测、熵编码等过程,最大程度地去除当前VOP内各像素之间的空间冗余度。

视频的第一帧图像采用I-VOP格式编码,其余的帧采用I-VOP,还是P-VOP格式则受两个因素制约。其用户会按照IPPPIPPPI的方式设置当前帧所采用的格式;二是已经人为地设置了当前帧为P-VOP,通过运动估计计算mad_P的值,如果mad_P满足下列两个条件之一,则当前帧就采用P-VOP编码格式,否则采用I-VOP编码格式。

条件1:mad P50/3;

条件2:mad P50,并且IntraMBRatio0.4。其中,IntraMBRatio为当前帧中采用MBM_INTRA预测模式的宏块占总宏块的比重。

纹理编码中的DCT和量化模块比较简单,这里略过,重点介绍剩下的纹理编码模块。

1.2.1 DC和AC预测

8×8块经过DCT和量化后,系数排列呈现以下的规律,即非零系数集中在左上角,大部分的0系数集中在偏离DC系数向右和向下的位置上。特别是DC系数、第一行和第一列AC系数,数值非零且较大,如果能用较小的数值代替它们,会减少编码后的位流数,于是产生DC和AC预测。

在MPEG-4中,通常把一个宏块分为6个8×8块进行DC和AC预测。

首先对8×8块进行DC预测。如图2所示,X表示当前的8×8块;A,B和C表示X的相邻8×8块,其位置分别位于X的左边、左上角和上边。对X进行DC预测就是采用相邻块的DC系数值预测X的DC系数值,关键是选择哪个相邻块的DC系数。


上一页 1 2 3 下一页

关键词: 实现 原理 编码 MPEG-4 PC

评论


相关推荐

技术专区

关闭