`
pleasetojava
  • 浏览: 703111 次
  • 性别: Icon_minigender_2
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

MPEG-2简介及MPEG-2编解码 (3)

阅读更多

MPEG-2简介及MPEG-2编解码
  3、之型扫描与游程编码
  DCT变换产生的是一8x8的二维数组,为进行传输,还须将其 转换为一维排列方式。有两种二维到一维的转换方式,或称扫描方式:之型扫描(Zig-Zag)和交替扫描,其中之型扫描是最常用的一种。由于经量化后,大 多数非零DCT系数集中于8x8二维矩阵的左上角,即低频分量区,之型扫描后,这些非零DCT系数就集中于一维排列数组的前部,后面跟着长串的量化为零的 DCT系数,这些就为游程编码创造了条件。
  - 游程编码中,只有非零系数被编码。一个非零系数的编码由两 部分组成:前一部分表示非零系数前的连续零系数的数量(称为游程),后一部分是那个非零系数。这样就把之型扫描的优点体现出来了,因为之型扫描在大多数情 况下出现连零的机会比较多,游程编码的效率就比较高。当一维序列中的后部剩余的DCT系数都为零时,只要用一个“块结束”标志(EOB)来指示,就可结束 这一8x8变换块的编码,产生的压缩效果是非常明显的。
  4、熵编码
  量化仅生成了DCT系数的一种有效的离散表示,实际传输前,还 须对其进行比特流编码,产生用于传输的数字比特流。简单的编码方法是采用定长码,即每个量化值以同样数目的比特表示,但这种方法的效率较低。而采用熵编码 可以提高编码效率。熵编码是基于编码信号的统计特性,使得平均比特率下降。游程和非零系数既可独立的,也可联合的作熵编码。熵编码中使用较多的一种是霍夫 曼编码,MPEG-2视频压缩系统中采用的就是霍夫曼编码。霍夫曼编码中,在确定了所有编码信号的概率后生产一个码表,对经常发生的大概率信号分配较少的 比特表示,对不常发生的小概率信号分配较多的比特表示,使得整个码流的平均长度趋于最短。
  5、信道缓存
  由于采用了熵编码,产生的比特流的速率是变化的,随着视频图像 的统计特性变化。但大多数情况下传输系统分配的频带都是恒定的,因此在编码比特流进入信道前需设置信道缓存。信道缓存是一缓存器,以变比特率从熵编码器向 里写入数据,以传输系统标称的恒定比特率向外读出,送入信道。缓存器的大小,或称容量是设定好的,但编码器的瞬时输出比特率常明显高于或低于传输系统的频 带,这就有可能造成缓存器的上溢出或下溢出。因此缓存器须带有控制机制,通过反馈控制压缩算法,调整编码器的比特率,使得缓存器的写入数据速率与读出数据 速率趋于平衡。缓存器对压缩算法的控制是通过控制量化器的量化步长实现的,当编码器的瞬时输出速率过高,缓存器将要上溢时,就使量化步长增大以降低编码数 据速率,当然也相应增大了图像的损失;当编码器的瞬时输出速率过低,缓存器将要下溢出时,就使量化步长减小以提高编码数据速率。
  6、运动估计
  运努估计使用于帧间编码方式时,通过参考帧图像产生对被压缩图 像的估计。运动估计的准确程度对帧间编码的压缩效果非常重要。如果估计作的好,那么被压缩图像与估计图像相减后只留下很小的值用于传输。运动估计以宏块为 单位进行,计算被压缩图像与参考图像的对应位置上的宏块间的位置偏移。这种位置偏移是以运动矢量来描述的,一个运动矢量代表水平和垂直两个方向上的位移。 运动估计时,P帧和B帧图像所使用的参考帧图像是不同的。P帧图像使用前面最近解码的I帧或P帧作参考图像,称为前向预测;而B帧图像使用两帧图像作为预 测参考,称为双向预测,其中一个参考帧在显示顺序上先于编码帧(前向预测),另一帧在显示顺序上晚于编码帧(后向预测),B帧的参考帧在任何情况下都是I 帧或P帧。
  7、运动补偿
  利用运动估计算出的运动矢量,将参考帧图像中的宏块移至水平和垂直方向上的相对应位置,即可生成对被压缩图像的预测。在绝大多数的自然场景中运动都是有序的。因此这种运动补偿生成的预测图像与被压缩图像的差分值是很小的。数字图像质量的主观评价
  主观评价的条件包括:评价小组 结构,观察距离,测试图像,环境照度和背景色调等。评价小组 由一定人数观察人员构成,其中专业人员与非专业人员各占一定比例。观察距离为显示器对角线尺寸的3-6倍。测试图像有若干具有一定图像细节和运动的图像序列构成。主观评价反映的是许多人对图像质量统计评价的平均值。

相关阅读:MPEG2编码

MPEG-2视讯原始的主要目标是希望在位元率介于4到9Mbit/s间时,能对一般标准电视解析度的交错式视讯(Interlaced Video)提供一种新的编码压缩方法以得到更好的画质。然而,MPEG-2的最终目标并未仅只于此,它也可以支援如HDTV等更高画面解析度的视讯应 用,以及各种画面解析度下的交错式视讯。如同其它MPEG标准,MPEG-2的视讯标准仅仅定义了资料的语义及语法,并未规定资料编码及解码的实作方法, 因此这之间还有不少编解码技术空间可以发挥。
  一个简单的MPEG-2 Non-scalable视讯编解码器(Codec),MPEG-2视讯编码器(Encoder)包含Inter Frame/Field离散馀弦变换(Discrete Cosine Transform,DCT)编码器、Frame/Field动态估计及补偿器(Motion Estimator and Compensator)、以及可变长度编码器(Variable Length Encoder,VLE)。离散馀弦变换编码器主要是利用空间上的冗馀(Spatial Redundancies),而动态估计及补偿器则是利用时间上的冗馀(Temporal Redundancies)来压缩资料;最后资料经过可变长度编码器编码后送至MPEG-2的系统多工器(System Multiplexer,SysMux),再由Transport或Program Stream将资料送出。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics