您的位置 首页 资料

解读HEVC视频规范的环内滤波

1.0引言高效视频编码(HEVC)是H.264/MPEG-4AVC(高级视频编码)的一种升级版视频压缩标准(即ISO/IEC23008-2MPEG-H第2部分和ITU-TH.265)是由ISO/IEC

1.0 导言

高效视频编码(HEVC)是H.264/MPEG-4 AVC(高档视频编码)的一种升级版视频压缩规范(即ISO/IEC 23008-2 MPEG-H第2部分和ITU-T H.265)是由ISO/IEC动态图画专家组(MPEG)和ITU-T视频编码专家组(VCEG)一起编写的。与业界规范H.264比较,HEVC能够以简直相同的视频质量完结半比特速率,而且有望在视频运用中得到广泛运用,其间包含:手机、播送、机顶盒、视频会议、视频监控、车载等。


下图显现了带有环路滤波的HEVC视频解码器结构图,杰出显现的即为环路滤波。如图所示,它是一个可去除视频编码进程中块效应的两个级组成的级联,即去块效应滤波(DBLK)和采样自适应偏移(SAO)滤波。接下来的两部分内容将详细描述这个级。


图1 HEVC视频解码器结构图

2.0 去块效应滤波(DBLK)


本部分将论述去块效应滤波,如HEVC视频规范[1]所述。去块效应滤滤器运转可大体可分为两部分:


1. 滤波器边际上的鸿沟滤波强度(aka BS)核算

2. 滤波器的实践运转


纵观整个去块效应滤波器运转,本文献采用了以下常规:Q像素坐落“纵向”滤波器的右侧,P像素坐落“纵向”滤波器左边。相同,Q归于“横向”滤波器边际下方的像素,P归于“横向”滤波器边际上方的像素。


图2 环内去块效应滤波中称为常规的相邻像素


2.1 滤波器边际强度(aka BS)


鸿沟滤波强度[hor/ver][xpos][ypos]核算是在一个8×8网格上完结的,取值0、1、2,如下图所示:


虽然在8×8网格的每个像素边际上都有滤波器(8×8结构包含4像素边际),但就一个4像素段的一切像素而言,鸿沟滤波强度核算的特点能够被组合。就强度核算而言,咱们假定每个4像素段作为一个级。请注意,鸿沟滤波强度核算取决于当时、左边和顶部LCU LCUinfo。


图3 鸿沟滤波强度(BS)结构图,在8×8网格中显现了边际及其编号

2.1.1 鸿沟滤波强度功用概述


鸿沟滤波强度核算是在一个8×8网格上完结的,设置图片为0,且分片鸿沟(slice boundarie) (if loop_filter_across_slice_enabled_flag = 0),Tile鸿沟(loop_filter_across_tile_enabled_flag = 0).


只要8×8像素鸿沟通过滤波,即猜测单元(PU)和/或转化单元(TU)鸿沟,滤波进程如下。


图4 PU和TU部分的鸿沟滤波强度(BS)与边际调谐

鸿沟滤波强度推导规矩:


感兴趣的读者可拜见HEVC规范,了解以下内容:


1. 鸿沟滤波强度的TU鸿沟滤波强度推导:8.7.2.1章节

2. 鸿沟滤波强度的PU鸿沟滤波强度推导:8.7.2.2章节

3. 鸿沟滤波强度推导:8.7.2.3章节

2.1.2 色度鸿沟滤波强度推导


只要8×8色度像素网格上的PU和/或TU鸿沟得到滤波。色度鸿沟滤波强度值源自亮度鸿沟滤波强度值。就色度滤波器4:2:0 (q0, p0)采样而言,从相应的(2q0, 2p0)亮度采样(即BS{Hor/ver}[xpos/2][ypos/2]图中的2要素下行采样)获取鸿沟滤波强度。


图5 色度鸿沟滤波强度映射:匹配到8×8网格然后除以2

2.2 滤波器运转


该部分将论述去除HEVC视频规范中特定块效应的实践滤波。


2.2.1 滤波器的阶数


就HEVC而言,规则的滤波器阶数为帧级(不是LCU级),如下所示:


1. 在整个帧处理进程中,对一切块的竖向边际都进行了H滤波。

2. 在整个帧处理进程中,对一切块的横向边际都进行了V滤波。


滤波是彻底独立的8×8滤波段,如图6所示:


图6 8×8块级独立滤波

是否需求亮度/色度(敞开/封闭断定)滤波、滤波等级(弱滤波/强滤波)以及终究的实践滤波运转将在下面章节论述。

2.2.2 亮度滤波器敞开/封闭以及弱/强滤波的断定


滤波器开/关断定和亮度强/弱断定是依据上图所示的四个队伍段进行的。

假如鸿沟滤波强度等于0,则按次序进行以下过程:


qPL= ((QPP+QPQ+1)>>1), QPP 和 QPQ 为亮度 QPs

β = BETA_TABLE[Clip3(0,51,qPL+(beta_offset_div2<<1)) ]

tc = TC_TABLE[Clip3(0,53,qPL+2*(BS-1)+(tc_offset_div2<<1)) ]

dp0 = |p2,0-2*p1,0+p0,0| ; dp3 =|p2,3-2*p1,3+p0,3|

dq0 = |q2,0-2*q1,0+q0,0| ; dq3 = |q2,3-2*q1,3+q0,3|

dpq0 = dp0+dq0 ; dpq3 = dp3+dq3

dp = dp0+dp3 ; dq = dq0+dq3

dE = dEp = dEq = 0

假如 (dpq0 + dpq3 < β) //滤波器开/关断定

If ( (2*dpq0 <(β>>2)) && ( |p3,0- p0,0| + |q3,0- q0,0| <(β>>3)) && ( | p0,0- q0,0| <((5*tc+1)>>1))) dSam0 = 1

If ( (2*dpq3 <(β>>2)) && ( |p3,3- p0,3| + |q3,3- q0,3| <(β>>3)) && ( | p0,3- q0,3| <((5*tc+1)>>1))) dSam3 = 1

假如 (dSam0 ==1 && dSam3 ==1) dE = 2 (strong filter); 其他 dE = 1 (弱滤波);

假如 (dp < ((β+(β>>1))>>3) ) dEp = 1 //对滤波采样的数量进行弱滤波

If (dq < ((β+(β>>1))>>3) ) dEq = 1 //对滤波采样的数量进行弱滤波


图7 去块效应滤波中滤波开/关以及滤波强度断定中的像素运用

表1 qp、tc和β(BETA_TABLE和TC_TABLE)之间的联系

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/ziliao/229043.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部