CN103402101A - 基于边界平滑度的avs环路滤波快速算法 - Google Patents
基于边界平滑度的avs环路滤波快速算法 Download PDFInfo
- Publication number
- CN103402101A CN103402101A CN2013103447116A CN201310344711A CN103402101A CN 103402101 A CN103402101 A CN 103402101A CN 2013103447116 A CN2013103447116 A CN 2013103447116A CN 201310344711 A CN201310344711 A CN 201310344711A CN 103402101 A CN103402101 A CN 103402101A
- Authority
- CN
- China
- Prior art keywords
- filtering
- border
- macro
- block
- frame
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
在对环路滤波算法进行深入分析的基础上,提出了一种基于边界平滑度的AVS环路滤波快速算法,算法的流程如附图所示。首先判断当前宏块是否需要滤波,是则计算当前宏块边界的平滑度,否则取下一宏块;根据边界平滑度与阈值的关系计算当前宏块边界的滤波强度值Bs,Bs≠0,根据滤波强度值对当前宏块边界进行滤波,Bs=0,不进行滤波,取下一宏块;重复上述步骤,直到当前帧的所有宏块边界滤波完毕,当前帧边界滤波结束。与AVS标准环路滤波算法相比,对于不同运动特征的视频序列,在平均PSNR下降0.011dB,比特率平均增加0.30%的情况下,环路滤波的时间平均可减少53.69%,能有效减少AVS环路滤波的计算量。
Description
技术领域
本发明涉及信号处理中的视频编码技术领域,具体涉及一种基于边界平滑度的AVS环路滤波快速算法。
背景技术
自1948年C.E.Shannon提出信源编码理论以来,人们对图像压缩编码技术进行了大量的研究。经过六十多年的研究和发展,出现了很多的技术和方法。AVS(Audio Video Coding Standard)是我国自主制定,拥有自主知识产权的音视频编解码标准。
AVS采用基于块的混合编码框架,变换算法采用基于8×8块的整数离散余弦变换(Discrete Cosine Transform, DCT)。在对每个块的DCT系数进行量化时,要将DCT变换后的系数除以量化系数后取整,这种量化的有损编码,会丢失块边缘大量的高频信息,造成重建图像中块的边界处出现不连续的跳变,即块效应。为去除块效应,引入了去块滤波技术。
AVS采用环路滤波来去除块效应,在编码框架中使用环路滤波对条带内每一个宏块的所有块边界进行滤波操作来降低块效应。对于每一个宏块单元,需要对其亮度、色度分量进行水平、垂直操作,因而环路滤波占据了很高的复杂度。
发明内容
针对AVS需要更高效的环路滤波快速算法,为了解决现有AVS环路滤波算法存在的不足,本发明公开一种基于边界平滑度的AVS环路滤波快速算法。该快速算法在保证图像质量和编码效率基本不变的同时,可有效地减少AVS环路滤波的计算量,提高编码速度。
本发明在对环路滤波算法进行深入分析的基础上,提出一种基于边界平滑度的AVS环路滤波快速算法,算法主要包括以下步骤:
步骤1 取当前帧的第一个宏块,判断当前宏块是否需要滤波,是则进行步骤2,否则转到步骤5;
步骤2 计算当前宏块边界的平滑度;
步骤3 根据边界平滑度与阈值的关系计算当前宏块边界的滤波强度值Bs,Bs≠0,进行步骤4,Bs=0,转到步骤5;
步骤4 根据滤波强度值对当前宏块边界进行滤波;
步骤5 当前帧宏块滤波是否完毕,否则进行步骤6,是则转到步骤7;
步骤6 取下一宏块,转到步骤2;
步骤7 当前帧块边界滤波结束。
与现有技术比较,本发明的优点和积极效果为:与AVS标准环路滤波算法相比,对于不同运动特征的视频序列,在平均PSNR下降0.011dB,比特率平均增加0.30%的情况下,环路滤波的时间平均可减少53.69%,能有效减少AVS环路滤波的计算量。
下面对AVS标准的环路滤波算法和本发明的基于边界平滑度的AVS环路滤波快速算法这两部分作详细说明。
标准的环路滤波算法。
AVS标准规定:每个8×8亮度块及相应的色度块边界都需要进行环路滤波,每条需要滤波的边界有一个边界强度Bs。环路滤波处理以16×16的宏块为基本单位,按照光栅扫描的顺序进行的。滤波时,按照先亮度再色度,先从左到右针对竖直方向的块边界进行水平滤波,然后再从上到下对水平方向的块边界进行竖直滤波。处理的顺序是对宏块内8×8的块边界分别处理,如图1所示,图中虚线为需要滤波的块边界。
AVS标准环路滤波算法的流程如图2所示。
从图2所示的环路滤波模块的处理步骤可看出,无论对I、P还是B帧,需要求每一个8×8块的边界强度,而且对一个宏块需要判断四次是否对色度块进行滤波,里面就会有大量的冗余,因此,可以对环路滤波模块进行优化。
边界强度Bs的计算如下:
(1)如果边界两边的两个8×8块有一个或两个都属于帧内预测宏块,则Bs=2;否则(2)或(3);
(2)如果图像类型为P帧,并且同时满足两个块的参考图像相同,两个运动矢量中任一个分量的差值小于一个整像素,则Bs=0;否则Bs=1;
(3)如果图像类型为B帧,并且同时满足两个块的参考图像相同,运动矢量的任一个分量差值小于一个整像素,则Bs=0;否则Bs=1。
滤波运算过程 如图3所示,块p和块q在水平或垂直边界两侧有6个样本点p2,p1,p0,q0,q1以及q2。用P 0,P 1,Q 0和Q 1分别表示p0,p1,q0 和q1滤波后的样本值。根据Bs和两个域值α,β(α和β可以根据两个块的量化因子QP以及图像头中的alpha_c_offset,beta_offset参数计算得到),滤波操作最多可以影响到边界两边各2个样本值。如果Bs≠0,|p0-q0|<α,|p1-p0|<β,且|q1-q0|<β,则对边界两边的样本进行如下滤波。
(1)Bs=2时,定义ap=|p2-p0|,aq=|q2-q0|。对亮度块边界两边的样本p0,p1,q0和q1的滤波过程如下:
if (ap <β&& |p0-q0|<((α>>2)+2)){
P 0=(p1+2×p0+q0+2) >>2
P 1=(2×p1+p0+q0+2) >>2
} else
P 0=(2×p1+p0+q0+2) >>2
if (aq<β&&|p0-q0|<((α>>2)+2)){
Q 0=(q1+2×q0+p0+2)>>2
Q 1=(2×q1+q0+p0+2)>>2
} else
Q 0=(2×q1+q0+p0+2)>>2
色度块边界两边的p0和q0采用同样的方法滤波。
(2)Bs=1时,对p0和q0滤波的计算过程如下:
首先,令delta=Clip3(-C, C, (((q0-p0)×3+(p1-q1)+4)>>3)),P 0=Clip1(p0+delta),Q 0=Clip1(q0-delta);然后,根据如下过程判断是否需要对p1和q1进行滤波:
(1)如果为色度边界,不对p1和q1滤波;
(2)如果为亮度边界,且ap<β,则P 1=Clip1(p1+Clip3(-C, C, (((P 0-p1)×3+(p2-Q 0)+4)>>3)));
(3)如果为亮度边界,且aq<β,则Q 1=Clip1(q1-Clip3(-C, C, (((q1-Q 0)×3+(P0- q2)+4)>>3)));
上述过程中,滤波裁减参数C由两个块的量化参数QP和图像头中的alpha_c_offset参数确定。
基于边界平滑度的AVS环路滤波快速算法。
AVS的环路滤波利用宏块中8×8亮度块的运动矢量计算滤波强度Bs,而对边界两边的像素值进行修改时,都要对对应像素之差进行阈值判断,然后选择是否进行滤波,这样就会增加编码的时间。本发明的基于边界平滑度的AVS环路滤波快速算法,根据图像的相关性,只利用当前8×8亮度块边界两边的六个像素值,如图3所示,先求得边界平滑度,然后根据边界平滑度求Bs,再修改相应的像素值,而在修改像素值的过程中省掉了大量的条件判断,而且只修改边界两边各一个像素值,因此,节省了计算量,减少了环路滤波的耗时,更利于编码的实时实现。
附图说明
图1为16×16宏块的边界及滤波顺序示意图。
图2为AVS环路滤波算法流程图。
图3为8×8块两边的像素样本示意图。
图4为本发明的基于边界平滑度的AVS环路滤波快速算法流程图。
具体实施方式
本发明的基于边界平滑度的AVS环路滤波快速算法的流程如图4所示,其算法的主要步骤如下:
步骤1 取当前帧的第一个宏块,判断当前宏块是否需要滤波,是则进行步骤2,否则转到步骤5;
步骤2 计算当前宏块边界的平滑度;
步骤3 根据边界平滑度与阈值的关系计算当前宏块边界的滤波强度值Bs,Bs≠0,进行步骤4,Bs=0,转到步骤5;
步骤4 根据滤波强度值对当前宏块边界进行滤波;
步骤5 当前帧宏块滤波是否完毕,否则进行步骤6,是则转到步骤7;
步骤6 取下一宏块,转到步骤2;
步骤7 当前帧块边界滤波结束。
判断当前宏块边界是否需要滤波的方法当前宏块需要滤波的边界如果满足以下条件中的一个,则不需要进行滤波,否则需要进行滤波:
(1)当前帧为B帧或P帧,边界为当前宏块的内部边界,且亮度块的cbp(编码块模板)为0;
(2)当前帧为B帧或P帧,边界为两个宏块的边界,且两个宏块的亮度块的cbp都为0;
(3)当前帧为B帧或P帧,两个宏块的参考帧相同,且两个宏块运动向量的差小于一个整像素点。
宏块边界的滤波强度值Bs的计算方法 对宏块中8×8亮度块和色度块计算Bs。
如图3所示,如果第一行或第一列的边界两边的像素满足:
Abs(p0-q0)<α&&Abs(pl-p0)<β&&Abs(ql-q0)<β,则进行下述处理,否则令Bs=0并跳到下一个需要滤波的8×8块的起始位置。这里的α与β依赖于索引值IndexA和IndexB查表确定。
设当前8×8亮度块的第一行或第一列的边界平滑度:
flamess=(abs(p0-q0)<T1)? l∶0+(abs(p1-p0)<T2)? l∶0+(abs(p2-p1)<T2)? l∶0+(abs(ql-q0)<T2)? l∶0+(abs(q2-q1)<T2)? l∶0
这里T1的取值与α有关;T2的取值与β有关。
如果flamess≥Thl,则Bs=2;如果flatness≥Th2,且flatness<Thl,则Bs=l;如果flatness<Th2,Bs=0。Thl和Th2是固定的值,Thl可取3,4或5,Th2可取2或l。
如果当前8×8亮度块的第一行或第一列的Bs=0,则当前整个8×8亮度块的边界滤波强度为0,不需要滤波,直接跳到下一个8×8亮度块的起始位置,重复上述步骤。如果当前8×8亮度块的第一行或第一列的Bs为1或2,则当前整个8×8亮度块的边界滤波强度为1或2,进行下面的滤波过程。
快速算法的滤波方法
当Bs=2时,仅修改p0,q0的值,即:
P 0=(pl+(p0<<1)+q0+2)>>2;
Q 0=(ql+(q0<<1)+p0+2)>>2;
当Bs=l时,仅修改p0,q0的值,此时滤波方式发生改变,即:
delta=Clip3(-C,C,(((p0-p0)×3+(pl-q1)+4)>>3)));
P 0=Clipl(p0+delta);
Q 0=Clipl(q0-delta);
当Bs=0时,不进行滤波;
P 0和Q 0分别为p0和q0滤波后的值,色度边界和亮度边界采用相同的滤波方式。
实验结果及分析。
实验采用AVS的参考软件RM52j作为改进算法的测试平台,测试环境是Pentium 4 CPU3.0GHz,DDR512MB,VC++6.0。实验中选取foreman、mobile、news和football四个具有不同运动程度的CIF标准视频序列。主要参数设置为:编码帧数100帧;帧率30f/s;序列结构IBBP;量化参数(QP)选择24、28、32、36、40,其他参数采用默认值。
基于边界平滑度的AVS环路滤波快速算法相对AVS标准环路滤波算法在信噪比、比特率及环路滤波时间等方面的变化,实验结果如表1。其中,基于边界平滑度的AVS环路滤波实验的过程中,T1=(α>>3)+2,T2=(β+2)/4,Thl=4,Th2=2。
表1的实验结果表明,本发明的基于边界平滑度的AVS环路滤波快速算法,相对AVS标准的环路滤波算法,信噪比降低在0.011db以内,比特率只平均增加0.30%,而环路滤波的时间却可以减少40.40%~67.62%,所以,采用本发明提出的基于边界平滑度的AVS环路滤波快速算法,有利于AVS编码的实时实现。
表1 实验结果统计表
本发明提出了一种基于边界平滑度的AVS环路滤波快速算法,该快速算法与AVS标准的环路滤波算法相比,可平均节省53.69%的编码时间,而图像的主客观质量基本保持不变。
应当指出,上述说明并非是对本发明的限制,本发明也并不仅限于上述举例,本技术领域的技术人员在本发明的实质范围内所做出的修改,变形、添加或替换,也应属于本发明的保护范围。
Claims (4)
1.基于边界平滑度的AVS环路滤波快速算法,其特征包括以下步骤:
步骤1 取当前帧的第一个宏块,判断当前宏块是否需要滤波,是则进行步骤2,否则转到步骤5;
步骤2 计算当前宏块边界的平滑度;
步骤3 根据边界平滑度与阈值的关系计算当前宏块边界的滤波强度值Bs,Bs≠0,进行步骤4,Bs=0,转到步骤5;
步骤4 根据滤波强度值对当前宏块边界进行滤波;
步骤5 当前帧宏块滤波是否完毕,否则进行步骤6,是则转到步骤7;
步骤6 取下一宏块,转到步骤2;
步骤7 当前帧块边界滤波结束。
2.根据权利要求1所述的基于边界平滑度的AVS环路滤波快速算法,其特征在于步骤1中判断当前宏块是否需要滤波的方法是:
当前宏块的边界如果满足以下条件中的一个,则不需要进行滤波,否则需要进行滤波:
(1)当前帧为B帧或P帧,边界为当前宏块的内部边界,且亮度块的cbp(编码块模板)为0;
(2)当前帧为B帧或P帧,边界为两个宏块的边界,且两个宏块的亮度块的cbp都为0;
(3)当前帧为B帧或P帧,两个宏块的参考帧相同,且两个宏块运动向量的差小于一个整像素点。
3.根据权利要求1所述的基于边界平滑度的AVS环路滤波快速算法,其特征在于步骤3中的边界的滤波强度值Bs的计算方法是:
对宏块中8×8亮度块和色度块计算Bs,如果第一行或第一列的边界两边的像素满足:
Abs(p0-q0)<α&&Abs(pl-p0)<β&&Abs(ql-q0)<β,则进行下述处理,否则令Bs=0并跳到下一个需要滤波的8×8块的起始位置,这里的α与β依赖于索引值IndexA和IndexB查表确定;
设当前8×8亮度块的第一行或第一列的边界平滑度:
flamess=(abs(p0-q0)<T1)? l∶0+(abs(p1-p0)<T2)? l∶0+(abs(p2-p1)<T2)? l∶0+(abs(ql-q0)<T2)? l∶0+(abs(q2-q1)<T2)? l∶0
这里T1的取值与α有关;T2的取值与β有关;
如果flamess≥Thl,则Bs=2;如果flatness≥Th2,且flatness<Thl,则Bs=l;如果flatness<Th2,Bs=0;Thl和Th2是固定的值,Thl可取3,4或5,Th2可取2或l。
4.在权利要求1所述的基于边界平滑度的AVS环路滤波快速算法,其特征在于步骤4中的对当前宏块边界进行滤波方法是:
当Bs=2时,仅修改p0,q0的值,即:
P 0=(pl+(p0<<1)+q0+2)>>2;
Q 0=(ql+(q0<<1)+p0+2)>>2;
当Bs=l时,仅修改p0,q0的值,此时滤波方式发生改变,即:
delta=Clip3(-C,C,(((p0-p0)×3+(pl-q1)+4)>>3)));
P 0=Clipl(p0+delta);
Q 0=Clipl(q0-delta);
当Bs=0时,不进行滤波;
P 0和Q 0分别为p0和q0滤波后的值,色度边界和亮度边界采用相同的滤波方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2013103447116A CN103402101A (zh) | 2013-08-08 | 2013-08-08 | 基于边界平滑度的avs环路滤波快速算法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2013103447116A CN103402101A (zh) | 2013-08-08 | 2013-08-08 | 基于边界平滑度的avs环路滤波快速算法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103402101A true CN103402101A (zh) | 2013-11-20 |
Family
ID=49565612
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2013103447116A Pending CN103402101A (zh) | 2013-08-08 | 2013-08-08 | 基于边界平滑度的avs环路滤波快速算法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103402101A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017045101A1 (en) * | 2015-09-14 | 2017-03-23 | Mediatek Singapore Pte. Ltd. | Advanced deblocking filter in video coding |
CN109889853A (zh) * | 2019-02-26 | 2019-06-14 | 北京大学深圳研究生院 | 一种去块效应滤波方法、系统、设备及计算机可读介质 |
-
2013
- 2013-08-08 CN CN2013103447116A patent/CN103402101A/zh active Pending
Non-Patent Citations (2)
Title |
---|
焦梅,彭玉华,刘微,游娜: "《一种快速的像素级 AVS 环路滤波算法》", 《计算机工程》 * |
高文,王强,马思伟: "《AVS数字音视频编解码标准》", 《中兴通讯技术》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017045101A1 (en) * | 2015-09-14 | 2017-03-23 | Mediatek Singapore Pte. Ltd. | Advanced deblocking filter in video coding |
CN109889853A (zh) * | 2019-02-26 | 2019-06-14 | 北京大学深圳研究生院 | 一种去块效应滤波方法、系统、设备及计算机可读介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI717309B (zh) | 畫像編碼裝置、畫像解碼裝置以及記錄媒體 | |
CN106131552B (zh) | 采用自适应偏置处理编码视频的方法和装置 | |
JP2020102855A (ja) | 画像符号化装置、画像符号化方法、画像復号装置および画像復号方法 | |
KR101530782B1 (ko) | 영상 부호화 및 복호화 방법, 장치 및 시스템 | |
JP6082073B2 (ja) | 画像復号装置、画像復号方法、画像符号化装置、画像符号化方法及びビットストリーム | |
KR102138828B1 (ko) | 영상 부호화 방법 및 장치 | |
CN109688414A (zh) | 一种vvc帧内编码单元候选预测模式缩减及块划分提前终止方法 | |
Wang et al. | A fast intra coding algorithm for HEVC | |
WO2014049981A1 (ja) | 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法 | |
CN110351552B (zh) | 视频编码中一种快速编码方法 | |
JPWO2010137322A1 (ja) | 画像符号化装置、画像復号装置、画像符号化方法、および画像復号方法 | |
CN103402101A (zh) | 基于边界平滑度的avs环路滤波快速算法 | |
Gao et al. | AVS video coding standard | |
An et al. | Low-complexity motion estimation for H. 264/AVC through perceptual video coding. | |
CN108259896B (zh) | 一种利用系数分布特性的哥伦布-莱斯初始参数自适应决策方法 | |
CN101867822A (zh) | 用于运动估计的自适应模板图像处理方法 | |
Bougacha et al. | Statistical analysis of intra prediction in HEVC video encoder | |
Wei et al. | Fast depth decision with enlarged coding block sizes for HEVC intra coding of 4K ultra-HD video | |
CN113055670B (zh) | 一种基于hevc/h.265的视频编码的方法及系统 | |
Wang et al. | Intra Prediction Fast Algorithm in AVS3 based on Image Texture Characteristics | |
Yuan et al. | A fast region-based inter mode selection algorithm | |
Zhang et al. | A fast coding tree unit depth prediction for HEVC | |
Zhang et al. | Chroma coding efficiency improvement with context adaptive Lagrange multiplier (CALM) | |
Kesireddy | A new adaptive trilateral filter for in-loop filtering | |
Poornima et al. | In-loop filter for H. 264/AVC |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20131120 |
|
WD01 | Invention patent application deemed withdrawn after publication |