Lab8-2 H.264编码实验——程序实现

Lab8-2 H.264编码实验——程序实现

一、实验要求

1

二、实验过程

1、使用ldecod_vc10的工程文件将highway_qcif.264和pulada.264进行解码,以得到yuv文件。

已知highway_qcif.264的图像宽高为176x144;pulada.264的图像宽高为640x368。(使用上一篇Lab8-1 H.264编码实验——软件分析中所使用的码流分析软件得到)

命令行参数设置:
2
将decoder.cfg分别修改为:
3
4

得到输出:
5
6
7
8

2、使用lencod_vc10的工程文件将刚刚得到的两个YUV文件按照不同要求编码为264文件。

命令行参数设置为:
9

(1)固定码率(5Mbps),不同的GOP长度及形状:

pulada.yuv进行编码时,基本参数设置为:

参数所在行数参数名称参数含义参数值
13InputFile输入文件名“pulada.yuv”
16FramesToBeEncoded编码帧数30
30SourceWidth输入文件的宽度640
31SourceHeight输入文件的高度368
33OutputWidth输出视频的宽度640
34OutputHeight输出视频的高度368
56TraceFile跟踪文件名(.txt)“pulada_enc.txt”
57ReconFile重建文件名(.yuv)“puladaxx_rec.yuv”
58OutputFile输出文件名(.264)“pulada_new0x.264”

highway_qcif.yuv进行编码时,基本参数设置为:

参数所在行数参数名称参数含义参数值
13InputFile输入文件名“highway_qcif.yuv”
16FramesToBeEncoded编码帧数30
30SourceWidth输入文件的宽度176
31SourceHeight输入文件的高度144
33OutputWidth输出视频的宽度176
34OutputHeight输出视频的高度144
56TraceFile跟踪文件名(.txt)“highway_qcif_enc.txt”
57ReconFile重建文件名(.yuv)“highway_qcifxx_rec.yuv”
58OutputFile输出文件名(.264)“highway_qcif_new0x.264”

其他参数按照要求分别进行设置,如下图:
10

优先级:IDRPeriod > IntraPeriod;IntraPeriod > NumberBFrames;IDRPeriod > PrimaryGOPLength。

以pulada.yuv,GOP=15,2B帧为例,将输出结果截图展示:
111213
以pulada.yuv为例,使用ESEyE码流分析软件进行验证:
33
主观评价——通过H264Visa播放器观看生成码流的质量:
码率一定的情况下,图像质量从高到低依次是:GOP=12,0B帧 > GOP=15,2B帧 > GOP=12,2B帧 > GOP=9,2B帧 > GOP=4,1B帧 > GOP=1,全I帧。
(可用率失真曲线验证。)

(2)固定GOP长度及形状(GOP=15、2B帧),不同码率:

基本参数设置与(1)中相同,其他参数设置如下图:
11
以highway_qcif.yuv为例,记录不同码率下Y分量的PSNR,结果如下图:
66
65
64
63
62

61

客观评价——以Bitrate(Mkps)为横坐标,以PSNR(dB)为纵坐标,生成率失真曲线。
77
由率失真曲线可以看出,随着比特率的升高,编码后的图像质量也有所提升。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值