H264帧间压缩技术整理

帧间压缩是指同一个GOP 之间的压缩

参考帧(后面的帧参考前面的帧进行编码)

运动估计(宏块匹配+运动矢量)
通过宏块匹配的方法找到运动矢量,宏块匹配是方法手段,目的是找到运动矢量。

运动补偿(解码找到残差值)



如上图相邻的三帧,第一张是I帧的话,图像编码时只要将望远镜部分分割成很小的宏块,根据宏块匹配方法找到第二张图像对应的宏块(宏块匹配),求出运动矢量。

宏块查找

 将一张图划分成很多的小宏快,抽出相邻的两帧,记录前一帧小球的宏块(坐标位置),逐行扫描查找相邻帧的宏块,找相似度最高的宏块认为是同一个宏块记录下它的坐标,与原始坐标对比记录距离和方向,就这样记录了台球宏块的运动矢量。

宏块查找算法

每一个帧进行宏块匹配,求出运动矢量,所有帧的矢量和就还原了小球的运动轨迹,这就是运动估计。如下图;

 

 我们只要存储台球的运动矢量和一小部分背景数据,之外,宏块的匹配中还是有些误差的,上一张图片与下一张图片对应的宏块还是有些误差和损耗的,因此要存一些残差值,如下;

 因此真正传的压缩数据是运动矢量与宏块的残差值,后边到了解码时根据运动矢量复原,然后根据残差值补全。
帧间压缩的帧类型
P帧
B帧 
B帧后面的P帧解码先于B帧。
如果GOP 分组中有帧丢失,那么会造成解码的图像发生错误,这回这会发生花屏.。对于I帧丢失的话就没法解码了。避免花屏的方法就是,当发生丢帧时,丢弃GOP内所有帧,直到下一个IDR帧重新刷新图像。
I帧是按周期来的,需要一个比较长的时间周期,如果在下一个I帧来临前不显示后来的图像,那么视频就静止不动了,这就是出现了所谓的卡顿现象。如果不接受卡顿多插入几个IDR帧,看场景和带宽,产品的需求。

卡顿和花屏是不能兼顾的,看你如何选择。


 

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值