I 、B、P帧

来源:互联网 发布:西安行知教育 编辑:程序博客网 时间:2024/04/27 13:52

I帧:在MPEG编码的过程中,部分视频帧序列压缩成为I帧;部分压缩成P帧;还有部分压缩成B帧。I帧法是帧内压缩法,也称为“关键帧”压缩法。I帧法是基于离散余弦变换DCT(Discrete Cosine Transform)的压缩技术,这种算法与JPEG压缩算法类似。采用I帧压缩可达到1/6的压缩比而无明显的压缩痕迹。

 

B帧:B帧法是双向预测的帧间压缩算法。当把一帧压缩成B帧时,它根据相邻的前一帧、本帧以及后一帧数据的不同点来压缩本帧,也即仅记录本帧与前后帧的差值。只有采用B帧压缩才能达到200:1的高压缩。


P帧:P帧法是一种前向预测算法,它考虑相邻帧之间的相同信息或数据,也即考虑运动的特性进行帧间压缩。P帧法是根据本帧与相邻的前一帧(I帧或P帧)的不同点来压缩本帧数据。采取P帧和I帧联合压缩的方法可达到更高的压缩且无明显的压缩痕迹。

 

 

MPEG压缩中的 IBP

首先,MPEG-1压缩的基本思想:帧内压缩和帧间压缩。 
其次,时间相关性的统计分析:统计的结果表明,在间隔1~2帧的图像中,各像素只有10%以下的点,其亮度差值变化超过2%,而色度差值的变化只有1%以下。  

采用的压缩方法分组:把几帧图像分为一组(GOP),为防止运动变化,帧数不宜取多。 
1.定义帧:将每组内各帧图像定义为三种类型,I帧、B帧和P
2.预测帧:I帧做为基础帧,I帧预测P,再由I帧和P帧预测B
3.数据传输:最后将I帧数据与预测的差值信息进行存储和传输。 

I:帧内编码帧 
I帧特点
1.它是一个全帧压缩编码帧。它将全帧图像信息进行JPEG压缩编码及传输
2.解码时仅用I帧的数据就可重构完整图像
3.I帧描述了图像背景和运动主体的详情
4.I帧不需要参考其他画面而生成
5.I帧是P帧和B帧的参考帧(其质量直接影响到同组中以后各帧的质量); 
6.I帧是帧组GOP的基础帧(第一帧),在一组中只有一个I
7.I帧不需要考虑运动矢量
8.I帧所占数据的信息量比较大。 

P:前向预测编码帧。 
P帧的预测与重构:P帧是以I帧为参考帧,I帧中找出P某点的预测值和运动矢量,取预测差值和运动矢量一起传送。在接收端根据运动矢量从I帧中找出P某点的预测值并与差值相加以得到P某点样值,从而可得到完整的P帧。 
P帧特点
1.P帧是I帧后面相隔1~2帧的编码帧
2.P帧采用运动补偿的方法传送它与前面的IP帧的差值及运动矢量(预测误差); 
3.解码时必须将I帧中的预测值与预测误差求和后才能重构完整的P帧图像
4.P帧属于前向预测的帧间编码。它只参考前面最靠近它的I帧或P
5.P帧可以是其后面P帧的参考帧,也可以是其前后的B帧的参考帧
6.由于P帧是参考帧,它可能造成解码错误的扩散
7.由于是差值传送,P帧的压缩比较高。 

B:双向预测内插编码帧。 
B帧的预测与重构 
B帧以前面的IP帧和后面的P帧为参考帧,“找出”B某点的预测值和两个运动矢量,并取预测差值和运动矢量传送。接收端根据运动矢量在两个参考帧中找出(算出)”预测值并与差值求和,得到B某点样值,从而可得到完整的B帧。 
B帧特点 
1.B帧是由前面的IP帧和后面的P帧来进行预测的
2.B帧传送的是它与前面的IP帧和后面的P帧之间的预测误差及运动矢量
3.B帧是双向预测编码帧
4.B帧压缩比最高,因为它只反映丙参考帧间运动主体的变化情况,预测比较准确
5.B帧不是参考帧,不会造成解码错误的扩散。 

:IBP各帧是根据压缩算法的需要,是人为定义的,它们都是实实在在的物理帧,至于图像中的哪一帧是I,是随机的,一但确定了I,以后的各帧就严格按规定顺序排列