




已阅读5页,还剩1页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
X264 视频编码器关键参数的选择和优化 孟雷雷 1,夏哲雷 (1 中国计量学院 信息工程学院,浙江 杭州 310018) 【摘要】X264 是目前工业界性能最好的 H.264/AVC 编码器,它采用一系列编码参数,允 许用户为这些参数选择合适取值,以满足特定的率-失真-复杂度约束。如何为可定制编码 参数选择合适取值,是最大限度发挥 X264 编码器性能的关键。关注对编码性能影响显著 的编码参数,根据性能变化的灵敏度建立显性编码参数的离散化候选取值列表;根据参数 不同候选取值单位复杂度的率-失真性能变化,提出性能提升效率最大化的参数取值选择方 法。实验结果表明本文方法配置的 X264 编码器能获得比默认 preset 配置更高的率-失真-复 杂度性能。 【关键词】编码参数;复杂度;率失真性能;性能提升效率; 【中图分类号】TN914 【文献标识码】 A The Selection and Optimization of Dominant Encoding Parameters in X264 Meng Leilei, Xia Zhelei (College of Information Engineering, China Jiliang University, Hangzhou 310018, China) Abstract: As an encoder of H.264/AVC, X264 has the best performance in industry. It contains a series of encoding parameters, and allow user choose appropriate values for them to meet rate- distortion-complexitys constraints. How to choose appropriate values for these customable coding parameters is the key to maximize X264 encoder performance. We focus on the encoding parameters which affect performance significantly. Based on the sensitivity of performance, establish the candidate values list of dominant encoding parameters. Based on the rate-distortion performance change of unit complexity, we put forward the performance boost efficiency maximization selection method of parameter value. The experiment results show that configure the X264 encoder with our method can obtain higher rate-distortion-complexity than the default preset. Key words: encoding parameters; complexity; rate-distortion performance; performance boost efficiency; 【基金项目】浙江省自然科学基金资助项目(No.LY12F01011) 1 引言 作为新一代的多媒体应用视频编码标 准,H.264/AVC 采用了许多不同于以往 标准的先进技术,在提高编码效率和性能 的同时,增加了编码复杂度。如何权衡率 -失真-复杂度的约束,满足不同领域应用 的需求,成为视频编码技术研究的一个重 要方向 1。Chen 等人集中研究了芯片逻 辑门、访存带宽、片上 SRAM 等性能参 数,对各目标性能参数表现定性分析 2。 Li 等人提出了将率-失真- 复杂度这三者映 射到三维空间,通过计算曲面之间间距来 度量率-失真- 复杂度性能 4。这些算法提 升了编码性能,但复杂度较高,应用具有 局限性。 X264 编码器作为 H.264 标准发布的 三大开源编码器之一 ,它采用大量的编码参数,这些编码参数 取值的组合使得编码器可以满足特定的率 -失真-复杂度约束。针对影响编码性能显 著的编码参数,如何在兼顾灵敏度和区分 度前提下,为各个参数选择合适的离散化 候选取值;基于参数的候选取值,如何在 率-失真- 复杂度约束下,为关键编码参数 选择合适的取值组合,将是视频编码优化 过程亟待解决的问题。针对以上问题,本 文以开源代码 X264 为实验平台,进行一 系列分析研究。 2 X264 中显性编码参数 2.1 重要编码参数 在 H.264/AVC 视频编码标准中,根 据涉及的编码技术在编码流程中的作用, 可以将未规定具体实现方案,允许用户根 据应用需求进行定制的模块归纳为四个典 型模块:视频预处理、运动估计、码率控 制、模式选择模块 2,每个模块中包含大 量的编码参数。视频预处理模块: bframes 参数设定 X264 使用的最大并行 b 帧数;ref 参数控制解码图像缓存区 的 大小;b-adapt 参数设定自适应 b 帧位置 决策算法;keyint 参数设定 X264 输出文 件的最大关键帧间隔;lookahead 参数设 定 mb-tree 码率控制和 vbv-lookahead 使用 的帧数 3。运动估计模块:me 参数设定 全像素运动估计的方法,包含五个取值: dia、 hex、umh、esa、tesa ;merange 参数 设定运动搜寻的最大范围;subme 参数设 定子像素估计方法,层级 15 控制子像 素细分强度,层级 6 为模式决策启用 rdo,层级 8 以上为运动矢量和内部预测 模式启用 rdo。码率控制模块: qp、bitrate、crf 三个参数,对应 三种码率 控制模式。qp 设定 X264 以固定量化值进 行编码,bitrate 以目标码率进行编码,crf 以固定码率系数进行编码,三个选项相互 排斥;aq-mode 参数设定自适应量化模式, 此选项能够更好地分配视频所有宏块之间 可用比特数;mbtree 参数设置是否开启 宏 块树进行码率控制,开启 mb-tree 码率控 制会改善整体压缩率。模式选择模块: partitions 参数控制宏块的分割模式,视频 图像在压缩过程中划分为 16x16 的宏块, 这些宏块可以进一步划分为 8x8 或 4x4。 此选项依据不同的帧类型,启用个别分割 模式;trellis 参数执行 trellis quantization 以提高效率。 2.2 显性编码参数的性能分析 上节列举出算法可定制模块的关键编 码参数,并加以解释说明。针对每个模块 中重要的编码参数,本文进行定量测试以 获取不同取值的 PSNR 曲线。图 1 给出部 分参数的实验结果,其中 subme 与 keyint 参数不同取值的 PSNR 相差达 4dB 以上, ref、 bframes 参数,即使在相对较弱的情 况下,PSNR 相差仍达 0.5dB 左右。根据 参数不同取值的 PSNR 曲线,定义 PSNR 相差 0.2dB(包括 0.2dB)以上的参数为 显性编码参数。实验结果表明, subme、 bframes、ref、me 、keyint、mera nge 参数不同取值的 PSNR 相差均大于 0.2dB,作为本文关注的显性编码参数。 10 150 20 250 30 35030 32 34 36 R (Kb/s) PSNR (db) subme 10 150 20 250 30 35031 323 3435 36 R (Kb/s) PSNR (db) ref 10 150 20 250 30 35030 32 34 36 R (Kb/s) PSNR (db) bframes 10 150 20 250 30 35028 30 32 34 36 R (Kb/s) PSNR (db) keyint 图 1 显性编码参数不同取值的 PSNR 曲线 Figure 1 PSNR curve of dominant parameters different values 2.3 参数的离散化候选取值 根据取值方式的不同,本文将编码参 数分为两类:离散取值参数和连续取值参 数。一些编码参数规定有限个取值,它们 可供选取的模式是特定的,如 subme、 aq-mode 参数,将这类参数定义 为离散取值参数。由上节参数不同取值的 性能分析可知,subme 参数的 0-9 取值以 及 me 参数的 5 个取值均对编码性能产生 一定影响,bframes 参数取值大于 3 和 ref 参数取值大于 4 时编码性能几乎保持不变。 本文主要关注离散取值参数性能变化灵敏 的取值,基于此离散取值参数的候选取值 如表 1 所示;一些编码参数没有限定选项, 它们的取值以及取值间隔,在一定范围内 由编码器自行设置,如 keyint、merange 参数,将这类参数定义为连续取值参数。 考虑性能变化的灵敏度和区分度,本文引 用非线性取值方法为连续取值参数设定候 选取值。 i、获取参数不同取值的失真曲线, 进行区域分割如图 2,Num 表示参数取值。 ii、在性能变化突出的(实线箭头) 区域 a1 进行集中式等间隔取值。 iii、 在性能变化平缓的(虚线箭头) 区域 a2 进行疏散递增式间隔取值。应用 以上设置方法,建立连续取值参数的候选 取值在表 1 中列出。 表 1 显性编码参数候选取值 Table 1 Candidate values of dominant encoding parameters 编码参数 候选取值 subme 0,1,2,3,4,5,6,7,8,9 ref 1,2,3,4 bframes 0,1,2,3 me dia(1),hex(2),umh(3),esa(4),tesa(5) keyint 40(1) ,70(2) ,100(3) ,150(4) ,250(5) merange 4(1) ,8(2) ,16(3) ,24(4) ,40(5) ,64(6) 0 50 10 150 20 25032.5 3 3.5 34 34.5 35 35.5 Num PSNR (db) 图 2 keyint 参数取值区域的划分 Figure 2 Partition of keyint parameters value area 3 参数取值的选择方法 3.1 J 与 C 的表示方法 率-失真- 复杂度性能评价对于视频编 码算法优化极为重要,其中影响率-失真 性能的因素有两个:失真度和编码码率。 本文选用视频信号的均方误差 MSE 来度 量失真,通过大量的离线测试,即并不要 求编码过程中实时获取率-失真性能,在 编码结束后对 MSE 及码率进行处理以获 取编码参数的率-失真性能。大量实验数 据表明,视频图像质量与 呈现线性MSE 递减的关系特性,基于此本文定义失真度 (D): ab (1)其中 a 表示固定值,b 表示 MSE 与 视频质量分数的关系系数。一般 8bit 彩色 视频图像的信号峰值密度值为 256,本文 采用二分之一此值表示固定值 a。对不同 的视频测试序列进行测试,实验数据得出 公式(1)中系数 b=11.19。 编码过程采取固定目标码率的编码方 式,在编码结束后计算平均每个像素点的 码率(R ) 。 10*(/*) bitraepixlfs (2)其中 bitrate 为目标码率,单位为 b/s;fps 为帧率,单位为帧/s ;pixel 为图 像的分辨率。考虑到 D-Qp 模型建模难度 很大,在编码过程中实时获取率-失真性 能很困难,因此本文采用离线搜索的方式, 在编码结束后对 D、 R 进行分析,以 R1、 R2 为边界条件进行 R-D 曲线积分图 3 所示,采用积分面积表示率- 失真性能 (J): 21()JdR (3) D 率 - 失 真 性 能 J D ( R ) R 1 R 2 图 3 率-失真性能原理图 Figure 3 Rate-distortion performance 复杂度分为空间复杂度和时间复杂度。 空间复杂度用来表征程序运行所需的内存 空间;时间复杂度是程序运行所需要的时 间,即算法执行需要的操作数。视频编码 复杂度主要指编码过程耗用的时间: CTi (4) 其中 为编码过程耗用的时间,单位为Ti s。本文采用 Intel 并行开发程序运行组件 Intel Vtune Amplifier XE 2011 获取编码复 杂度,考虑到一定外界硬件的影响,对同 一编码过程进行多次测试,获取最终编码 复杂度 。C_ 3.2 显性参数候选取值的 J-C 特性 本文采用离线测试建模的方法,此方 法对测试序列样本的要求较高。将相同分 辨率、不同内容的序列接连成新序列样本, 选取 5 个新序列样本进行测试,分辨率为 352x288;bitrate 分别取 100、200、300、400、500,单位为 kb/s;fps 为 25;图 4 给出 keyint、 subme、bframes、ref 、me 参数候 选取值的 J-C 数据,图中标记为每个参数 的相应取值。结果显示编码参数取值改变 时,J 与 C 的变化程度不同。因此单位复 杂度的率- 失真性能变化,可以作为参数 取值选择的有力依据。 1.24 1.26 1.28 1.3 1.32x 10-71 1.1 1.2 1.3 1.4 1.5 1.6 40 70 10 150 250 C/s J keyint 0.5 1 1.5 2x 10-710 10.5 1 1.5 12 0 1 2 3 4 5 6 7 8 9 C/s J subme 1.24 1.26 1.28 1.3 1.32x 10-710.8 10.91 1.11.2 1.31.4 1.51.6 1.7 0 1 2 3 C/s J bframes 1 1.1 1.2 1.3 1.4x 10-71.3 1.351.4 1.451.5 1.51.6 1.65 1 2 3 4 C/s J ref 1 1.5 2 2.5 3x 10-71.52 1.531.54 1.51.56 1.571.58 1.591.6 dia hex umh esa tesa C /s J me 1.4 1.6 1.8 2 2.2 2.4 2.6x 10-71.545 1.5 1.55 1.56 1.565 1.57 1.575 4 8 16 24 40 64 C /s J merange-me(umh( 1 2 3 4 5 6x 10-71.535 1.541.545 1.51.55 1.561.565 1.571.575 1.58 4 8 16 24 40 64 C /s J merange-me(esa( 1 2 3 4 5 6x 10-71.54 1.51.56 1.571.58 1.591.6 1.61 4 8 16 24 40 64 C /s J merange-me(tesa( 图 4 参数候选取值 J-C 性能结果 Figure 4 J-C performance of parameters candidate value 以上显性编码参数中,并非每个参数 均独立地对视频编码产生作用,其中 me 参数与 nerange 参数具有一定相关性。图 5 给出不同 me 取值时 merange 参数候选 取值的 J-C 数据,结果表明 me 参数的不 同取值,使得 merange 参数候选取值的 J、C 变化程度具有一定差异。对于 me 参 数 dia 与 hex 两个取值,限定 merang 最 大取值为 16。 3.3 参数取值选择的评判依据 基于显性编码参数候选取值的 J-C 特 性,本文定义编码参数相邻取值之间,单 位复杂度的率-失真性能变化如公式( 5) 。 参数的候选取值为a1,a2 , a3.ai. , J1 , J2, J3.Ji.与 C1 , C2, C3.Ci.分别为相应取值的 率-失真性能和复杂度。 C JJiiii1/ (5) 配置编码参数取值组合时,J/C 直 接影响编码器的性能提升效率。参数取值 的J/C 越大,编码器的性能提升效率越 高。根据大量实验测试建立显性编码参数 的J/C 列表( e+00a= ) ,表中箭头表10a 示编码参数取值的变化过程,空格表示参 数无相应取值。根据参数候选取值的 J-C 数据,在 C 或 J 约束下,锁定参数符合条 件的有效取值。针对有效取值,以J/C 做为评判依据,进行参数取值的自适应选 择。表 2 中数据显示, subme、bframes、ref、keyint 参数性能提 升效率高于 me 参数,设定参数选择的优 先级为 subme=bframes=keyint=refmemerange。 subme、bframes、keyint 、ref 参数具有相 同的优先级,可进行并列选取。me 参数 优先级位于以上参数之后,基于 me 参数 的选取结果进行 merange 参数取值的选择, 完成编码器显性编码参数的配置。 表 2 显性编码参数候选取值之间J/C Table 2 J/C of discrete parameters 取值变化 subme bframes ref me keyint merange-me( umh) merange-me(esa) merange-me(tesa) 10 1.652e+008 2.724e+008 21 2.544e+007 3.655e+007 8.227e+006 7.584e+004 6.145e+007 1.027e+006 7.877e+005 6.044e+005 32 9.446e+006 -2.466e+006 5.399e+006 1.007e+005 7.776e+007 8.153e+005 1.479e+005 1.565e+005 43 5.987e+006 4.519e+006 9.267e+003 5.641e+007 2.102e+005 3.061e+004 5.215e+004 54 2.646e+006 3.144e+004 5.730e+007 1.055e+005 2.389e+004 3.031e+004 65 8.749e+006 1.001e+005 2.189e+004 2.876e+004 76 9.486e+006 87 3.621e+006 98 6.577e+005 4 实验结果 配置参数候选取值列表中各个参数的 最低取值为 lowest 组合,最高取值为 optimal 组合,对比两种组合的 J-C 性能 如图 6 所示。图中 optimal 与 lowest 组合 之间 J 与 C 均相差较大,由此表明编码参 数不同取值的组合使得视频编码具有很大 的优化空间。 0.526747E-7 1.8034276E-74 56 78 910 112 1314 15 C (s) J lowest optimal 图 6 lowest 与 optimal 配置 J-C 对比图 Figure 6 J-C comparison of lowest and optimal 1.86 1.30510 10.2 10.4 10.6 10.8 1 1.2 1.4 1.6 1.8 12 C (s) J J/C9.61e+07 J/C8.39e+07默 认 配 置新 参 数 组 合 图 7 新参数组合与默认配置结果对比图 Figure 7 Result comparison of New and default parameters 表 3 新参数组合与默认配置 J-C 数 Table 3 J-C data of new and default parameters configuration 编码器配置 J C J/C 新参数组合 1.141e+001 1.185e-007 9.611e+007 默认配置 1.153e+001 1.305e-007 8.839e+007 -0.12 -0.120e-007 0.772e+007 为了验证本文提出的参数取值选择方 法的有效性,对比默认配置与采用本文方 法配置的 X264 编码器,两种不同配置的 率-失真性能、编码复杂度以及单位复杂 度的率- 失真性能(J/C)数据如表 3 所示, 其中=新参数组合-默认配置。由对比结 果图 7 可以看出,采用本文方法选择的参 数取值组合,在率-失真性能与默认配置 相差较小的情况下,降低了编码复杂度, 提高了单位复杂度的率-失真性能,实现 了性能提升效率最大化。 5 结 论 本文研究 X264 编码器中涉及的重要 参数,通过对参数率-失真特性的定量测 试,选取对编码性能影响显著的参数。引 用非线性取值方法,设定显性编码参数的 离散化候选取值,以确保候选取值的灵敏 度和区分度。本文对大量测试序列进行离 线测试,分析显性编码参数候选取值的 J- C 特性,建立J/C 数据列表,提出了以 J/C 为评判依据进行参数 取值选择的方 法。该方法能够从参数候选取值中配置出 性能提升效率最高的参数组合,达到了视 频编码优化目的。 【参考文献】 1 Wiegand T, Sullivan G J, Bjontegaard G. Overview of the H.264/AVC video coding standardJ. IEEE Transactions on Circuits Systems for Video Technolongy, 2003,13(7):560-576. 2 Chen C Y, Chien S Y, Huang Yuwen, et al. Analysis and architecture design of variable block-size motion estimation for H.264/AVCJ. IEEE Circuits and Systems Society, 2006, 53(3):578-593. 3 Vanne J, Viitanen M, et al. Comparative rate-distortion- complexity analysis of HEVC and AVC video codecsJ. IEEE Circuits and Systems Society, 2012,22(12
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 服务风险协议书
- 2025年中国诗歌试题及答案
- 2025年硬件工程师c语言笔试题及答案
- 2025年保健食品考试题及答案
- 2025年中药人员考试试题及答案
- 2025年药企qc培训考核试题及答案
- 村级桥梁协议书
- 村路规划协议书
- 林地归属协议书
- 果实代销协议书
- 2023年乌鲁木齐市疾控系统应急处置技能大练兵大比武竞赛附有答案
- 夜市运营应急预案
- 口腔科麻药过敏演练
- DB32T3938-2020钢混组合结构梁桥养护技术规程
- 浙江省2023-2024学年七年级下学期英语期中试卷(含答案)
- 越南音响行业分析
- 托福TPO1-24口语答案
- 电力维保服务方案
- 少年中国说英文版
- 数列经典习题含参考答案
- 少儿口才训练材料(30篇)
评论
0/150
提交评论