I、p、b 帧

I帧:帧内编码帧 :尽可能去除图像空间冗余信息来压缩传输数据量的帧内编码图像;P帧:前向预测编码帧: 通过充分将低于图像序列中前面已编码帧的时间冗余信息来压缩传输数据量的编码图像,也叫预测帧; B帧:双向预测内插编码帧 既考虑与源图像序列前面已编码帧,也顾及源图像序列后面已编码帧之间的时间冗余信息来压缩传输数据量的编码图像,也叫双向预测帧;一般地,I帧压缩效率最低,P帧较高,B帧最高。 I、p、B 帧编码的基本流程

I 帧编码的基本流程为
[15]

(1) 进行帧内预测,决定所采用的帧内预测模式。
(2) 像素值减去预测值,得到残差。
(3) 对残差进行变换和量化。
(4) 变长编码和算术编码。
(5) 重构图像并滤波,得到的图像作为其它帧的参考帧。

P 帧和 B 帧编码的基本流程为:
(1) 进行运动估计,计算采用帧间编码模式的率失真函数(节)值。P 帧
只参考前面的帧,B 帧可参考后面的帧。
(2) 进行帧内预测,选取率失真函数值最小的帧内模式与帧间模式比较,确定采用哪种编码模式。
(3) 计算实际值和预测值的差值。
(4) 对残差进行变换和量化。
(5) 熵编码,如果是帧间编码模式,编码运动矢量

MPEG压缩中的 I、B、P帧(转)

首先,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帧采用运动补偿的方法传送它与前面的I或P帧的差值及运动矢量(预测误差);
3.解码时必须将I帧中的预测值与预测误差求和后才能重构完整的P帧图像;
4.P帧属于前向预测的帧间编码。它只参考前面最靠近它的I帧或P帧;
5.P帧可以是其后面P帧的参考帧,也可以是其前后的B帧的参考帧;
6.由于P帧是参考帧,它可能造成解码错误的扩散;
7.由于是差值传送,P帧的压缩比较高。

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

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

本文转自:http://hi.baidu.com/injava/item/ae4dea0b18bb7b19ebfe3877

图像I、B、P帧介绍相关推荐

  1. java 求集合平均数_图像二值化方法介绍(转载学习)

    ImageJ中图像二值化方法介绍 概述 二值图像分析在对象识别与模式匹配中有重要作用,同时也在机器人视觉中也是图像处理的关键步骤,选择不同图像二值化方法得到的结果也不尽相同.本文介绍超过十种以上的基于 ...

  2. 图像和流媒体 -- I 帧,B帧,P帧,IDR帧的区别

    参看:什么是I帧,P帧,B帧 参看:H264编码原理以及I帧B帧P帧 一.H246简介 H264是新一代的编码标准,以高压缩高质量和支持多种网络的流媒体传输著称,在编码方面,我理解的他的理论依据是:参 ...

  3. 基于图像的三维模型重建——基础介绍

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 本文由知乎作者梦寐mayshine授权转载,不得擅自二次转载.原文链接:https://zhuanla ...

  4. 图像标注的基础内容介绍

    点击上方"AI公园",关注公众号,选择加"星标"或"置顶" 作者:Surya Remanan 编译:ronghuaiyang 导读 给大家介 ...

  5. 无监督低照度图像增强网络ZeroDCE和SCI介绍

    目录 简介 Zero-DCE 算法介绍 模型代码 无监督loss介绍 小结 Self-Calibrated Illumination (SCI) 模型介绍 无监督loss介绍 小结 总结 简介 当前有 ...

  6. 计算机网络四种帧介绍,广播帧、未知帧、同网帧、异网帧

    文章原文件下载 https://download.csdn.net/download/L_Z_jay/37943385 前言: (1)网上这一部分总结感觉比较少,或者说找起来不是很好找. (2)然后又 ...

  7. 收藏 | 图像标注的基础内容介绍

    作者:Surya Remanan,来源:AI公园 介绍 "如果没有数据分析,公司就会变得既盲又聋,就像高速公路上的鹿一样在网络上游荡." - Geoffrey Moore 每个数据 ...

  8. 资深大佬:基于深度学习的图像边缘和轮廓提取方法介绍

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 本文转自:AI算法与图像处理 导读 边缘和轮廓的提取是一个非常棘手 ...

  9. 图像滤波之高斯滤波介绍

    1 高斯滤波简介 了解高斯滤波之前,我们首先熟悉一下高斯噪声.高斯噪声是指它的概率密度函数服从高斯分布(即正态分布)的一类噪声.如果一个噪声,它的幅度分布服从高斯分布,而它的功率谱密度又是均匀分布的, ...

最新文章

  1. CentOS-7-64bit 配置Apache + MySQL + PHP
  2. [译]Professional ASP.NET MVC3(01)-Chapter 1:Getting Started(上)
  3. mapper注解的主要作用_Mybatis中mapper的xml解析详解
  4. Vertica数据库
  5. jvm 9种垃圾收集器
  6. OpenGL Multi Texture多重纹理的实例
  7. Azkaban任务调度(使用带有依赖的任务调度)【mapreduce数据清洗,数据入hive库,kylin预编译、数据分析】
  8. 计算机 课题学科代码,学科分类与代码表课题.doc
  9. html5播放器 迅雷,搜狗浏览器HTML5视频播放器插件(HTML5.Video.Player)
  10. webpack devserver配置_在webpack中使用babel
  11. FreeRTOS内核实现05:支持多优先级
  12. 数据切片与MapTask并行度
  13. Python入门之面向对象module,library,package之间区别
  14. httpclient架构原理介绍 连接池详解
  15. eclipse生成ant build.xml打war包
  16. 拉格朗日插值法_Lagrange、Newton、分段插值法及Python实现
  17. STM32 485通信芯片引脚应用讲解
  18. Mac 修改hosts
  19. webflux excel文件上传:java.io.IOException: Unable to read entire header; 0 bytes read; expected 512 byte
  20. Datawhale组队学习周报(第044周)

热门文章

  1. 采集文章自动发布:技术与应用探索
  2. 冯诺依曼计算机程序及其执行,冯诺依曼计算机机器级程序及其执行DOC
  3. 软件保护工具VMProtect用户手册——核心处理的5个事件设置
  4. scala php,Scala 教程
  5. Canvas加动画,实现火柴人跳绳效果,Android经典入门教程
  6. jquery数字滚动
  7. 图形学日记(二)几何造型技术
  8. 互联网产品经理的未来
  9. 顺序结构综合实训(专业)
  10. Web 2.0界面设计模式