H.264编解码实验

一、H.264解码实验

(一)实验过程及任务

1、选择两个264文件进行解码,得到相应的YUV文件

参考JM使用手册,将JM18.6下的ldecod.exe、decoder.cfg与要处理的.264文件放在同一目录下,利用cmd指令指定解码文件与解码得到的yuv文件名,完成解码

2、实验结果

在这里插入图片描述
成功将原H.264文件解码为yuv格式文件。

二、H.264编码实验

(一)编码原理

H.264和先前的标准一样,都采用变换编码、基于运动补偿的帧间预测和熵编码的混合框架。不同是增加了帧内预测,变换采用整数变换,熵编码采用自适应的方法。根据我自己的经验,在调试编码器程序之前,一定先把变换和量化的原理弄明白。这样编码参数文件中QP的设置就比较清楚。(变换量化部分邵文娟做过一个不错的总结)。其它的我觉得都可以结合调试程序来学习(边调边学)。例如,具体的预测方式只看原理非常清楚,但一定要结合程序才能彻底弄明白。熵编码更是要结合文献和程序才能弄清楚。

(二)H.264编码器输入参数文件说明

在这里插入图片描述

(三)实验过程及任务

1、将上面实验中的两个视频序列编码为.264文件

参考JM使用手册,编码语法如下
在这里插入图片描述

(2)编码要求
  1. 固定码率,以不同的GOP长度及形状编码
    GOP=15,2B帧;GOP=12,2B帧,GOP=9,2B帧
    GOP=4,1B帧;GOP=12,无B帧;GOP=1,全I帧

  2. 相同的GOP长度及形状,不同的码率
    例:1000kb/s, 800kb/s,400kb/s

  • encoder.cfg 文件中的B帧和P帧
    在这里插入图片描述

在这里插入图片描述
参考JM18.6文件:

Examples of usage:
lencod.exe
lencod.exe -h
lencod.exe -d default.cfg
lencod.exe -f curenc1.cfg
lencod.exe -f curenc1.cfg –p InputFile="e:\data\container_qcif_30.yuv"\ -p SourceWidth=176 -p SourceHeight=144
lencod.exe -f curenc1.cfg -p FramesToBeEncoded=30 \ -p QPFirstFrame=28 -p QPRemainingFrame=28 -p 	QPBPicture=30
(3)码率控制

H.264的码率控制算法建立在如下假设上:即编码图像有一个预先定义好的顺序,也即预先定义好了GOP的组成。该算法可以用来产生适合可用带宽的码流,同时考虑了HRD模型。
该算法主要包括以下三个部分:

  1. GOP级别的码率控制
  2. 图像级别的码率控制
  3. 可选的基本单元级别的码率控制(基本单元被定义为同一帧图像中连续的一组宏块,如果使用了基本单元,则其中的宏块个数最小为1,最大为该帧图像的宏块总数)
  • encoder.cfg 文件中的码率控制
    在这里插入图片描述
(3)实验结果
  • PSNR输出
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

2、用码流分析软件检查所生成的码流中各种编码模式和运动矢量等信息

打开码流分析软件MB Blocks逐帧分析。视频流的第一帧一定是I帧,具体宏块类型(MB Type)有I_4x4,I_8x8,I_16x16。即I帧内只含有其中只含有I型宏块,不含有P帧。

在这里插入图片描述

在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述
解码实验再编码的264文件分析:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3、率失真曲线

PSNR是"Peak Signal to Noise Ratio"的缩写,即峰值信噪比,是一种评价图像的客观标准。

记录码流的Y-PSNR:
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值