H.264编码实验

本次实验涉及H.264编码的实践,包括SPS、PPS分析,帧内预测和帧间预测原理。通过对GOP结构的探讨,分析了I、P、B帧的编码类型及其比例,并通过软件实现264文件的解码与编码,探讨了不同GOP长度、码率对图像质量和压缩比的影响。
摘要由CSDN通过智能技术生成

一、实验要求

  • 选择一个.mp4或者.264文件。
  • 在码流分析仪软件中打开该文件,从几个层次进行分析:
    (1)分析SPS和PPS里都包含哪些主要的信息,给出参数值。(例如分辨率、帧率、GOP结构等等)
    (2)以一个GOP为例,分析如下信息:
  • 每个图像帧的类型及所用的编码比特数、QP值;并以图像帧号为横坐标、每帧所用比特数为纵坐标画出曲线图;以图像帧号为横坐标、每帧所用QP为纵坐标画出曲线图。
  • 以第一个I帧作为分析对象,基于该帧图像的空间特性,分析每个宏块所采用的编码类型及其比例。
  • 以第一个P帧作为分析对象,基于该帧图像的空间和时间特性,分析每个宏块所采用的编码类型及其比例。
  • 以某一个B帧作为分析对象,基于该帧图像的空间和时间特性,分析每个宏块所采用的编码类型及其比例。

二、实验原理

1、帧内预测和帧间预测
  • 帧内预测编码:
    根据邻近块的值来预测当前宏块的值,再对预测值和原始值的差值进行变换、量化和编码。对于亮度块,使用4×4与16×16编码模式,对色度块采用8×8编码模式。
    以亮度块的4×4帧内预测模式为例,由周围的15个像素预测4×4的16个像素,共有9种预测模式。

  • 帧间预测编码:

  • I帧:只由帧内宏块组成 。此外还有IDR帧,是GOP的第一个I帧,其后的所有帧都不能参考IDR帧之前帧的内容(位于普通的I帧之后的P/B帧可以参考其之前的I帧)
    GOP以I帧开始,每个GOP可能包含多个I帧。H.264的所有的GOP都是独立解码的,即封闭GOP。

  • P帧:包含前向运动补偿(前面的I或P帧)、帧内宏块

  • B帧:包含前向、后向和双向运动矢量和帧内宏块
    在这里插入图片描述

2.SPS、PPS

视频编码都是基于树状的分层结构:图像组GOP层、图像层、片层、宏块层和快层。将片层以上很少变化的系统级信息存放在序列参数集SPS和图像参数集PPS中传送,与图像具体内容不相关。
(1)序列参数集
说明的是某一段视频序列的编码特性:
profile_idc,level_idc说明该段视频序列遵循的是H.264/AVC标准的哪一种配置,以指导解码端调用合适的解码器进行解码
pic_order_cnt_type说明每帧图像的记数方法;pic_width_in_mbs_minusl和pic_height_in_mbs_minusl说明图像帧的宽度和高度
sequence_parameter_set_id来区分不同的序列参数集,方便解码端进行参考
(2)图像参数集PPS
说明的是某个图像帧的编码特性,最主要的部分是该图像帧的Slice Group划分方式的表示:
num_slice_groupes_minusl说明该图像帧中Slice group的数目
num_slice_group_map_type说明slice group的划分方式
pic_parameter_set_id来区分不同的图像参数集

三、实验过程

(一)软件分析</

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值