一种基于四叉树编码分割的hevc复杂度控制方法_3

文档序号:9399631阅读:来源:国知局
帧的平均编码时间作为参考时间ts:
[0126] 视频的前N帧进行正常编码,即不进行任何的复杂度控制,获取参考时间ts:
[0127]
[0128] 其中,tg是前N帧的编码时间之和,T。是初始目标复杂度。N为整数。
[0129] 步骤403、利用初始目标复杂度,对第N+1帧的目标复杂度TN+1进行调整;
[0130] 由于前N帧不进行复杂度控制,对整体的复杂度控制结果会有一定的影响,为了 尽量消除这种影响,需要对第N+1帧的目标复杂度T N+1进行调整,调整公式为:
[0131]
[0132] 其中,F为视频所包含的所有帧的数量。
[0133] 步骤404、循环计算第N+1帧之后的帧的目标复杂度作为当前帧的目标复杂度,替 换前一帧的目标复杂度并应用于块级别复杂度-失真优化控制模型中。
[0134] 在对当前帧,假设第k帧,k>N+l,进行编码之前,需要更新其目标复杂度。首先, 需要计算k帧之前所有帧的编码时间的平均值,记为t k,然后根据巩与t s的关系获得第k 帧的目标复杂度,具体计算方法如下:
[0135]
[0136] 其中,α和β是用来调整复杂度波动幅度和波动频率的,其值越接近1,复杂度的 波动幅度越大,波动频率越小。a和b是用来调整复杂度控制精度和复杂度波动幅度的,其 值越大,复杂度控制精度越高,波动幅度越大。在本实例中,α和β取值可分别为1.2和 0. 8, a和b的取值为2%,但不局限于上述取值。
[0137] 步骤405、利用每帧的块级别复杂度-失真优化控制模型控制该帧的实际编码复 杂度,使当前帧的实际编码复杂度等于该帧设定的初始目标复杂度。
[0138] 实际编码复杂度与初始目标复杂度基本保持一致。
[0139] 步骤五、当前视频的所有帧全部处理完,编码结束。
[0140] 如图12所示,展示了在剩余电量不足的应用场景下,随着电量的变化,视频编码 的复杂度控制结果和相应的视频质量变化情况。可以看出,应用本发明的方法后,视频编 码的复杂度随着电量的降低而减小,但是这种复杂度的减小主要发生在显著性比较低的区 域,即图中的黑色区域,而显著性较高的区域的编码复杂度并没有降低,在一定程度上保证 了由复杂度降低所导致的视频主观失真。
[0141] -种基于四叉树编码分割的HEVC复杂度控制方法,特点在于具有面向主观重要 性的编码复杂度分配机制,能够按照区域的视觉显著性来分配相应的编码复杂度,在一定 程度上减小由于编码复杂度的降低所导致的视频失真。同时,采用了块级别和帧级别的双 级复杂度控制方法,保证了复杂度控制的准确度;通过建立一种基于四叉树编码分割的复 杂度-失真优化控制模型来准确地控制HEVC视频编码的复杂度,能够根据不同智能终端的 编码能力和设备的剩余电量动态地调整HEVC编码器的复杂度;适用于多种具有视频编码 需求的智能终端中。
[0142] 可根据用户端设置的目标复杂度,通过复杂度控制算法,通过保证关键区域的视 频编码质量,保证编码后视频整体的主观质量;在最大程度地保证视频主观质量的前提下, 将实际视频编码的复杂度降低至指定水平的目标复杂度。
[0143] 本发明通过设定目标复杂度,对视频编码的复杂度进行准确地控制,适用于需要 进行视频编码但计算能力受限或者电量不足的终端设备中。尽管本发明已参照具体实施方 式进行描述和举例说明,但是并不意味着本发明限于这些描述的实施方式。
【主权项】
1. 一种基于四叉树编码分割的HEVC复杂度控制方法,其特征在于,具体步骤如下: 步骤一、用户根据自己的需求或者终端的计算能力设定视频编码初始目标复杂度; 步骤二、编码器利用区域显著性检测算法生成视频中每一帧的编码块权重图谱; 步骤三、根据每一帧的目标复杂度和编码块权重图谱,编码器设计每一帧的块级别复 杂度-失真优化控制模型; 步骤301、通过训练至少三个视频,建立编码深度与编码复杂度之间的函数关系; 步骤302、通过训练至少三个视频,建立编码深度与失真程度之间的函数关系; 步骤303、综合编码深度与编码复杂度、失真程度之间的函数关系以及步骤二中每一帧 的编码块权重图谱,得到每帧的块级别复杂度-失真优化控制模型;其中,I为每一帧内编码块的数量;T。为初始目标复杂度;AD^)为编码深度为山时 所对应的编码失真;以山)在编码深度为山时所对应的编码复杂度;针对第i个和第1个 两个编码块,%是第i个编码块的权重值;《 1是第1个编码块的权重值;AD(dD是第 1个编码块的失真程度;通过比较两个编码块的权重值和失真程度,满足条件:Vq2?, ADWJ彡AD^),保证了权重值高的编码块的失真程度小于权重低的编码块的失真程 度; 步骤四、针对视频中的所有帧,循环更新当前帧的目标复杂度替换前一帧的目标复杂 度,应用于步骤三中得到的当前帧的块级别复杂度-失真优化控制模型; 步骤401、针对视频的前N帧,正常编码不进行复杂度控制,计算编码时间之和tg; 步骤402、获取前N帧的平均编码时间作为参考时间ts:其中,tg是前N帧的编码时间之和,N为整数; 步骤403、利用初始目标复杂度,对第N+1帧的目标复杂度TN+1进行调整,公式为:其中,F为视频所包含的所有帧的数量; 步骤404、循环计算第N+1帧之后的帧的目标复杂度作为当前帧的目标复杂度,替换前 一帧的目标复杂度并应用于块级别复杂度-失真优化控制模型中; 计算当前帧之前所有帧的编码时间的平均值tk,根据tk与参考时间13的关系获得当前 帧的目标复杂度,公式如下:其中,k为当前帧,k>N+l;a和0用来调整复杂度波动幅度和波动频率,a和0值 越接近1,复杂度的波动幅度越大,波动频率越小;a和b用来调整复杂度控制精度和复杂度 波动幅度,a和b值越大,复杂度控制精度越高,波动幅度越大; 步骤405、利用每帧的块级别复杂度-失真优化控制模型控制该帧帧的实际编码复杂 度;使当前帧的实际编码复杂度等于当前帧设定的目标复杂度; 步骤五、当前视频的所有帧全部处理完,编码结束。2. 如权利要求1所述的一种基于四叉树编码分割的HEVC复杂度控制方法,其特征在 于,所述的步骤二,具体包括: 步骤201、输入视频帧; 步骤202、利用区域显著性检测算法获得视频帧中每个编码块包含的每个像素点的权 重值; 步骤203、计算每个编码块内所有像素点权重值,取平均值获得该编码块的权重; 针对第i个编码块,计算编码块i内的所有像素点的权重值并取平均值,获得编码块i 的权重,公式为:兵甲,vn衣不弟n个1家累点的权重值,n为整数,M为编码块内像素点的个数; 步骤204、将每一帧内所有编码块的权重值构成权重图谱。3. 如权利要求1所述的一种基于四叉树编码分割的HEVC复杂度控制方法,其特征在 于,所述的步骤301,具体包括: 步骤(1)、选取至少三个训练视频; 步骤(2)、将所有编码块的编码深度设置为最大值3 ;记录每一个编码块的编码时间Q(3),作为参考时间;i表示编码块的序号,为自然数; 步骤(3)、将所有编码块的编码深度分别设置不同的深度值山,山G{3, 2, 1,0},记录每 一个编码块在相应的编码深度下的编码时间CjcQ; 步骤(4)、利用参考时间对编码时间CjcU进行归一化,获得每一个编码块的相对归一 化编码复杂度1 .(<>,公式为:步骤(5)、对所有训练视频的所有编码块的相对归一化编码复杂度取平均值,获得不同 编码深度山对应的编码复杂度C(d;)。4. 如权利要求1所述的一种基于四叉树编码分割的HEVC复杂度控制方法,其特征在 于,所述的步骤302,具体包括: 步骤(3-1)、选取至少三个训练视频; 步骤(3-2)、将所有编码块的编码深度设置为最大值3,记录每一个编码块编码后的均 方误差值MSEi(3),作为参考均方误差值; i表示编码块的序号,为自然数; 步骤(3-3)、将所有编码块的编码深度分别设置为不同的深度值山,山G{3, 2, 1,0},记 录每一个编码块在相应的编码深度下的编码后的均方误差值MSEi(山); 步骤(3-4)、利用参考均方误差值对均方误差值MSEjcQ进行归一化,得到每一个编码 块在不同编码深度下的归一化失真程度公式如下:步骤(3-5)、对所有训练视频的所有编码块的归一化失真程度与最大深度的关系做二 次拟合,获得不同编码深度山所对应的失真程度AD(dJ。
【专利摘要】本发明公开了一种基于四叉树编码分割的HEVC复杂度控制方法,属于视频编码领域,具体步骤如下:一、用户设定视频编码的初始目标复杂度;步骤二、利用区域显著性检测算法生成视频中每一帧的编码块权重图谱;步骤三、编码器设计每一帧的块级别复杂度-失真优化控制模型;步骤四、针对视频中的所有帧,循环更新当前帧的目标复杂度替换前一帧的目标复杂度,应用于当前帧的块级别复杂度-失真优化控制模型;步骤五、编码结束。优点在于:用户在编码端根据既定需求指定目标复杂度进行编码,从而将HEVC编解码广泛地应用于具有不同计算能力或者不同电量的终端设备中,或在一定电量下完成指定时间内的视频录制。
【IPC分类】H04N19/96, H04N19/89, H04N19/147
【公开号】CN105120295
【申请号】CN201510490394
【发明人】徐迈, 邓欣, 王祖林
【申请人】北京航空航天大学
【公开日】2015年12月2日
【申请日】2015年8月11日
当前第3页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1