数据压缩实验六——H.264编码实验

来源:互联网 发布:如何计算矩阵一致性 编辑:程序博客网 时间:2024/05/21 16:55

实验原理

实验流程

将不同的视频序列编码为.264文件
固定码率,以不同的GOP长度及形状编码
GOP=15,2B帧;GOP=12,2B帧,GOP=9,2B帧
GOP=4,1B帧;GOP=12,无B帧;GOP=1,全I帧
相同的GOP长度及形状,不同的码率
例:300kb/s, 200kb/s,100kb/s,…
用码流分析软件检查所生成的码流中各种编码模式和运动矢量等信息
用播放器观看所生成码流的质量
生成率失真曲线

调试过程

需改动的参数:
encoder.cfg
LINE194: HierarchicalCoding = 0 关闭B帧Hierarchy编码模式
LINE13/16/30/31/33/34/57/58/59: 一些基本输入输出参数
LINE73: IDRPeriod IDR(Instantaneous Decoding Refresh)帧间隔,标志着GOP的开始,所以IDRPeriod也是GOP长度。这里需要和LINE72的IntraPeriod区分,IntraPeriod是I帧间隔,而一个GOP内可以有多个I帧,但只有一个IDR帧。参考http://blog.sina.com.cn/s/blog_520811730101jlsa.html#cmt_2512661
180NumberBFrames: B帧数,指的是I帧/P帧之间的B帧数。如GOP=12,B=2时帧结构为:IBBPBBPBBPBB
LINE444/445: 调整可变输出码率

编码帧数FramesToBeEncoded的选择:要想对比不同GOP类型和不同码率下编码后的失真程度和一些参数,每次的编码帧数应相同。如果在GOP为4时只编码4帧,则无法压到比较小的输出码率,比如要求输出100kbps,在这种情况下只能输出229kbps。

实验结果

不同输出码率下每一帧编码结果及参数(GOP15B2)

设置码率(kbps) 实际码率(kbps) 结果 50 119.81 这里写图片描述 100 119.81 这里写图片描述 200 192.62 这里写图片描述 300 290.03 这里写图片描述 400 395.44 这里写图片描述 500 489.10 这里写图片描述 600 591.46 这里写图片描述

对比发现每组前4帧的比特数都相等,随后每帧的比特数都根据设置的输出码率,有不同程度的增加。分析这是由H.264某些自适应机制决定的(?)

率失真曲线
由于输出码率设置为50k时,实际输出码率和设置为100k时的实际码率相等,猜测可能100k时已经达到码率最低底线,所以输出码率仅以100k作为起始。当输出全I帧时,实际输出码率固定在6000k,所以没有画全I帧的图像。
这里写图片描述
在相同码率下,没有B帧时的视频客观质量(Y-PSNR)最高。GOP越短,低码率的视频客观质量越高。码率和视频客观质量呈非线性关系,低码率段100-250的斜率大于高码率段250-400,在低码率段提升码率,视频客观质量提升更显著。

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

帧类型 帧 I帧 I帧 P帧 P帧 B帧 B帧 B帧 B帧

以上几幅图片分别是用码流分析软件H264Visa,对生成的.264文件进行查看的结果。图像中的标记的是每个块的运动矢量,一个块的大小不定,从16x16~4X4。I帧为帧内编码没有运动矢量,P帧为前向预测编码,运动矢量为绿色,B帧为双向预测编码,运动矢量有红绿两种颜色。
参考:http://www.cnblogs.com/xkfz007/archive/2012/07/27/2612038.html
码流分析软件H264Visa可以查看.264文件的数据和编码信息,比如:帧信息、宏块信息、像素信息。可以查看帧序号、图片尺寸、编码方式、块类型、YUV通道等等信息。
这里写图片描述
这里写图片描述
这里写图片描述

用播放器观看所生成码流的质量

GOP长度/类型 \ 设置输出码率(kbps) 100 200 300 400 15 / 2B帧 这里写图片描述 这里写图片描述 这里写图片描述 这里写图片描述 12 / 2B帧 这里写图片描述 这里写图片描述 这里写图片描述 这里写图片描述 9 / 2B帧 这里写图片描述 这里写图片描述 这里写图片描述 这里写图片描述 4 / 1B帧 这里写图片描述 这里写图片描述 这里写图片描述 这里写图片描述 12 / 0B帧 这里写图片描述 这里写图片描述 这里写图片描述 这里写图片描述 1 / 全I帧 这里写图片描述 这里写图片描述 这里写图片描述 这里写图片描述

主观上看,长GOP、无B帧的视频质量不好。比较推荐GOP长12,2B帧的方案。
另:GOP长4,1B帧码率最低只能到300k,全I帧码率为6000k,所以这两个方案在此表中没有参考价值(设置的输出码率和实际的输出码率不一致)

原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 高跟皮鞋磨脚怎么办 大同同煤集团三供一业人员怎么办 小孩被猫咪抓了怎么办 长得特别丑的人怎么办 锅巴放的不脆了怎么办 淘宝买到假货了怎么办 单位不给解约函怎么办 安卓个人热点打不开怎么办 密码忘记无法进入主机怎么办 流放之路w10闪退怎么办 电脑网站被劫持了怎么办 苹果手机浏览器被劫持怎么办 苹果手机网站被劫持怎么办 a37手机网站被劫持怎么办 耳朵被震的耳鸣怎么办 液晶电视怎么办断屏坏还是逻辑板 门保险拧坏了怎么办 锁的保险坏了怎么办 鞋子里面长霉了怎么办 塑料瓶盖滑丝了怎么办? 塑料杯盖滑丝了怎么办 洗衣机上的订子很难扭出来怎么办 滚筒洗衣机坏了打不开门怎么办 海尔滚筒洗衣机打不开门怎么办 格兰仕滚筒洗衣机门打不开怎么办? lg洗衣机洗完衣服门打不开怎么办 lg洗衣机不能冼衣服怎么办 vivo账户密码忘记了怎么办 oppo账户密码忘记了怎么办 74160从1开始计数怎么办 微信录音声音小怎么办 word文档已停止工作怎么办 怀孕30天不想要怎么办 一楼墙体起碱怎么办 农村平房顶四墙面渗水怎么办 被蝎子精蛰了怎么办 小娃头摔包要怎么办抹个什么 老人死了银行钱存死期怎么办 飙酷车神2一进画面就闪退怎么办 电脑开机键盘鼠标没反应怎么办 玩gta4自由城卡怎么办