|
帧间压缩基于末压缩的图象进行工作,基本上是无损的。在图7中,基淮帧堆栈中保存着满 分辨率的前一帧图象,拥有全部视频数据。而运动矢量从运动补偿块中被计算出来,用来预 溯当前帧图象.由于各帧图象可能有着不同种类的差异,而预测只能提供宏块的运动矢量, 所以预溯可能不是十分的精确。(后面将谈到预测的这点缺陷是无关紧要的) 预测帧堆栈存储着被预测的当前帧,这些内容是通过前一帧和运动矢量的信息来构造的。然 后从实际的当前帧中减去被预测的当前帧,其差异作为输出。如果没有运动和其他变化(考 虑一种权端情况,一帧图象重复出现),当前帧可以很精确地预测出来,并且差值输出应为 零(很容易压缩)。当两帧不完全相同时,帧问差异只包含很少的信息,容易被压缩。 请注意,图7展示了如何生成前向预测帧(P帧)和双向预测帧(B帧),后面将有更为详尽 的定义。重要的是,这种帧内压缩,帧问压缩方式的组合,已构成了基本的MPEG—2视频压 缩系统。(图8)预铡帧是从经过DCT量化,解码的图象得来的,这样能够得到更好的整体效果, 因为编码器重复了解码器的工作过程,这样就减弱了数学运算导致的负效应,例如舍位, 进位错误。 基准图象堆栈如何影响预测能力 只能处理P帧的编码器和对P帧B帧都能处理的编码器主要的差异就在于基准帧堆栈。前向 预测只要求存储最后一个基准帧,而双向预测要求存储最后一个基准帧和一个将来的基准帧。 |
|
|
|
|