一种环路滤波方法

文档序号:7684240阅读:192来源:国知局

专利名称::一种环路滤波方法
技术领域
:本发明涉及纟见频编解码领域,尤其涉及一种环路滤波方法。
背景技术
:视频编解码标准AVS(AudioVideocodingStandard,数字音-见频编解码标准)、H.264都采用基于宏块的编码框架,即将输入视频分割成宏块,对宏块进行预测、运动估计、变换、量化、熵编码等。由于进行了分块,因而不可避免的会导致块效应,于是引入了环路滤波技术。除图像边界及条带的边界之外,宏块的所有块边界都应进行滤波。此处宏块边界定义为宏块内部各个8x8块的边界。环路滤波以宏块为单位,图像中每个宏块的滤波过程如下对于AVS标准来说,对亮度和色度分别做环路滤波。如图l所示,对于一个宏块的16xl6亮度块来iJt,其内部包含①、②、③、④四个8x8块,标准环3各滤波方法首先从左到右对垂直边界1和2依次进行滤波,然后从上到下对水平边界3和4依次进行滤波;对于一个宏块的8x8色度块来说,标准环路滤波方法首先对垂直边界5滤波,然后对水平边界6滤波。当前宏块的环路滤波的输入为图像未进行滤波的样本值,当前宏块环路滤波会修改这些样本值。当前宏块垂直边界滤波过程中修改的样本值作为水平边界滤波过程的输入。如上所述,在编解码过程中,为解决边界效应和块效应问题,必须进行环路滤波。在标准的环路滤波算法中,其对一个8x8块边界的滤波过程为首先根据宏块类型以及宏块中8x8亮度块的运动矢量得到当前边界的滤波强度值,再根据该滤波强度值对当前边界两侧的某一行/列样本进行阈值判断以确定是否需要滤波,若需要则进一步通过两个阈值判断步骤确定滤波的程度和范围,最后再进行滤波操作。很显然,由于一个8x8块边界仅采用一个滤波强度值,因而对于该边界的8个行/列边界来说,所述的滤波强度值并不一定适合该行/列边界,会造成重建图像质量的下降。并且,由于对边界上的每行/列进行滤波时都需要两个阈值判断步骤,因而复杂度加大,并且不利于滤波的流水操作。
发明内容本发明所要解决的技术问题在于提供一种使得重建图像质量较好的环路滤波方法。为了解决上述技术问题,本发明提出一种环路滤波方法,包括以下步骤a、计算需要滤波的边界的每一行/列样本的滤波强度值;b、对应所述滤波强度值对所述每一行/列样本进行滤波。其中,所述滤波强度值通过计算边界平滑度并根据该边界平滑度与阈值平滑度的对应关系得到。优选的,所述边界平滑度通过以下方法得到判断紧邻当前边界的一对样本的差的绝对值是否小于第一阈值,若是,则耳又值1,否则,耳又值0;判断紧邻当前边界的一侧和次紧邻当前边界的所述侧的一对样本的差的绝对值是否小于第二阈值,若是,则取值l,否则,取值0;判断次紧邻当前边界的所述侧和倒数第三紧邻当前边界的所述侧的一对样本的差的绝对值是否小于第二阈值,若是,则取值l,否则,取值0;判断紧邻当前边界的另一侧和次紧邻当前边界的所述另一侧的一对样本的差的绝对值是否小于第二阈值,若是,则取值l,否则,取值0;判断次紧邻当前边界的所述另一侧和倒数第三紧邻当前边界的所述另一侧的一对样本的差的绝对值是否小于第二阈值,若是,则取值l,否则,取值0;上述五个判断所取值的和为所述边界平滑度;并且,所述边界平滑度与所述滤波强度值的对应关系为若边界平滑度大于第一阈值平滑度,则滤波强度值为2;若边界平滑度位于第一阈值平滑度和第二阈值平滑度之间,则滤波强度值为l;若边界平滑度小于第二阈值平滑度,则滤波强度值为o。其中,步骤b中,当所述滤波强度值为2时,且为亮度边界时,采用以下公式进行滤波p0,=(p2+plx4+p0x4+p0x2+q0x4+ql+8)/16;q0,=(pl+p0x4+q0x4+q0x2+qlx4+q2+8)/16;pl,=(p2x3+plx8+p0x4+q0+8)/16;ql,=(q2x3+qlx8+q0x4+p0+8)/16;当所述滤波强度值为2时,且为色度边界时,采用以下公式进行滤波p0,=(p2+plx4+p0x4+p0x2+q0x4+ql+8)/16;q0,=(pl+pOx4+q0x4+q0x2+qlx4+q2+8)/16。其中,步骤b中,当所述滤波强度值为l时,采用以下公式进行滤波p0,=(p0x3+q0+2)/4;q0,=(q0x3+p0+2)/4。另外,在计算所述边界平滑度之前,首先判断当前行/列样本的边界是否是真实边界,若是,则结束对该行/列样本边界的滤波,否则执行后续步骤。其中,步骤b中,当所述滤波强度值为不等于对应所述的情形时,则按照一见频编解码标准中标准滤波方案滤波。另一方面,步骤a中通过判断当前宏块的块效应是否明显实现,若明显,则认为需要滤波,否则不需要滤波。其中,若当前边界满足下述3个条件中的至少一个,则认为块效应不明显,否则认为明显conl、当前帧为B帧或p帧,并且当前边界为当前宏块的内部边界,且当前宏块亮度的宏块编码模板的值为0;con2、当前帧为B帧或p帧,并且当前边界为两个宏块之间的边界,且所述两个宏块亮度的宏块编码模板的值都为0;con3、当前帧为B帧或p帧,并且当前边界为两个宏块之间的边界,所述两个宏块的参考帧相同,且所述两个宏块的运动矢量的差小于一个像素点。本发明中由于对边界上每一行/列均计算一个滤波强度值,从而该滤波强度值更加适合该行/列边界,而根据该滤波强度值进行的滤波操作也能够使得重建图像的质量更好。另外,由于在滤波过程中省略了对两个阈值的判断,因而避免了大量的运算,提高了效率。另一方面,由于在滤波强度值等于2或1时采用了新的滤波公式,从而使得输出的信噪比进一步提升。图l是一个宏块的亮度和色度边界分布的一个实施例的示意图2是基于图1所示宏块的一个8x8块边界结构的一个实施例的示意图3是基于图2的本发明一种环路滤波方法的一个实施例的流程图。具体实施例方式首先,对现有技术中环路滤波的方法进行描述。参考图1,图示了一个宏块的亮度和色度边界分布的一个实施例的示意图。如图所示,该宏块包括4个8x8亮度块,分别是①、②、③、④;该四个亮度块包括两个垂直边界1和2(图中实线部分),两个水平边界3和4(图中虚线部分);其中,2表示一整个垂直边界,而7表示2的一部分(在本实施例中为2的一半)。该宏块还包括一个8x8色度块(图中仅示出一个,对于不同的格式8x8色度块的数量也不同),其包括垂直边界5和水平边界6。图1中四个亮度块和一个色度块的最右边的点线边界为所述宏块右边的宏块(图未示)的对应亮度和色度的左边界,最下边的点线为所述宏块下边的宏块(图未示)的对应亮度和色度的上边界,因此,所述两个点线边界为其它宏块的边界,可以类比于图l所示宏块,在此不对其说明。参考图2,图示了基于图1所示宏块的一个8x8块边界结构的一个实施例的示意图。如图所示,实际上本实施例是将图1中垂直边界7及其两侧的各三列样本进行放大后的示意图,由于①、②均是8x8块,因此,边界7两侧的各三列样本每列均包括8行,另外由于对于边界7的滤波不涉及其两侧各三列样本以外的数据,所以,在图2中仅示出其两侧的各三列样本。需要说明的是,本具体实施方式中用p、q表示未进行滤波前的样本值,用字母p,、q,对应表示滤波后的样本值;其后所跟的数值(例如p0、ql、q2、p2等)为通用的表示同一行/列样本中与边界的位置关系,0表示紧邻,1表示次紧邻,2表示倒数第三紧邻。在现有技术的环路滤波过程当中,计算边界7的滤波强度值(BS值),并利用该滤波强度值对该边界7的每行边界两侧的像素进行滤波。例如,当BS二2时,滤波过辟呈如下if(Abs(p2-p0)<|3&&Abs(p0—q0)<((a》2)+2))p0,=(pl+2xpO+qO+2)2pi,=(2xpi+p0+q0+2)》2}elsep0,=(2xpl+p0+q0+2)》2if(Abs(q2,<卩&&Abs(pO—q0)<((a2)+2)){qO,=(ql+2xq0+p0+2)》2ql,=(2xql+q0+p0+2)》2elseqO,=(2xql+qO+pO+2)》2可见,在上述过程中,有两次"if,的判断,这两次判断即为阈值的判断。其中,a、(3均为AVS标准中所定义的块边界阈值,其值可以参考AVS标准中的解释;Abs为求绝对值函数;Bs为滤波强度;">〉"表示右移操作,其后值为右移操作次数。下面,简要说明本发明的原理。本发明改变了现有技术中以一个块边界的滤波强度值(即Bs值)来作为该边界下的每一行/列样本的边界滤波强度值的做法;其通过计算块边界上的每一行/列样本的边界滤波强度值,来对该行/列样本边界两侧的像素进行滤波,这样一来,由于每一行/列样本的边界滤波强度值相对于所述块边界的滤波强度值更能适应该行/列的情况,因而滤波的效果更好,重建图像的质量也更好。以图2为例,其为8x8块,其包括8行及8列样本。对于边界7来说,该块的8行样本所包含的每一段边界将求得一个Bs值,并根据该Bs值对所在行的对应样本进行滤波操作。而现有技术当中则是对图2中8x8块的边界7求一个该边界下所有8行样本共用的Bs值,或者对图1中宏块的边界l、2、3、4、5、6求得一个该边界下所有行Z列样本共用的Bs值。另外,由于每一行/列样本边界得到一个滤波强度值,因而省略了现有技术中在对每一行/列样本边界滤波时所进行的阈值判断,降低了计算量,提高了效率。下面结合附图对本发明进行详细阐述。参考图3,图示了基于图2的本发明一种环路滤波方法的一个实施例的流程图。如图所示,包括以下步骤步骤S300,判断当前宏块是否需要滤波,若是,则程序下行,否则执行步骤S307。本步骤中,判断当前宏块是否需要滤波通过判断当前宏块的块效应是否明显来实现,若明星,则认为需要滤波,否则不需要滤波。判断当前边界满足是否满足下列三个条件中的至少一个,若是,则认为块效应不明显.,否则i人为明显。三个条件如下conl、当前帧为B帧或P帧,并且当前边界为当前宏块的内部边界,且当前宏块亮度的宏块编码4莫板的值为0;con2、当前帧为B帧或P帧,并且当前边界为两个宏块之间的边界,且所述两个宏块亮度的宏块编码模板的值都为0;con3、当前帧为B帧或P帧,并且当前边界为两个宏块之间的边界,所述两个宏块的参考帧相同,且所述两个宏块的运动矢量的差小于一个像素点。所述宏块编码模板即为cbp,其含义在AVS标准中有定义,在此不进行详细解释。步骤S301,计算当前边界当前行/列的边界平滑度。在本发明的一个实施例中,所述边界平滑度通过以下方式计算num=(abs(p0—q0)<Tl)l:0+(abs(p1—pO)〈T2)l:0+(abs(p2—pl)<T2)l:0+(abs(ql~q0)<T2)l:0+(abs(q2-ql)〈T2)l:0其中,num表示边界平滑度;Tl为第一阈值,其可以在((013)+2)~((al)+2)之间取值,优选的可以耳又(013)+2;T2为第二阈值,其可以在(p+2)/5《p+2)/3之间取值,优选的可以取((3+2)/4;""为问号表达式,对于SU:V式来说,若S成立,则该式的值为U,否则为V;ot、p、abs的含义与前述背景^支术中相同;abs(pO-qO)<Tl)l:0含义为判断紧邻当前边界的一对样本的差的绝对值是否小于第一阈值,若是,则取值l,否则,取值0;abs(pl-pO)<T2)l:0含义为判断紧邻当前边界的一侧和次紧邻当前边界的所述侧的一对样本的差的绝对值是否小于第二阈值,若是,则取值l,否则,取值0;abs(p2-pl)<T2l:0含义为判断次紧邻当前边界的所述侧和倒数第三紧邻当前边界的所述侧的一对样本的差的绝对值是否小于第二阈值,若是,则取值1,否则,取值0;abs(ql-qO)〈T2)1:0含义为判断紧邻当前边界的另一侧和次紧邻当前边界的所述另一侧的一对样本的差的绝对值是否小于第二阈值,若是,则取值l,否则,取值0;abs(q2il)<T2)l:0含义为判断次紧邻当前边界的所述另一侧和倒数第三紧邻当前边界的所述另一侧的一对样本的差的绝对值是否小于第二阈值,若是,则取值1,否则,取值0;步骤S302,根据边界平滑度与阈值平滑度的关系对应得到当前边界的滤波强度值Bs。在通过步骤S301得到了边界平滑度后,本步骤将利用该边界平滑度与阈值平滑度的对应关系获得滤波强度值Bs。即,得到num后再将num与阈值平滑度比较,才艮据num所在的范围来确定滤波强度Bs的值。其得到Bs的一个实施例如下若num>Thl,则Bs=2;若Th2《num〈Thl,则Bs=l;若num〈Th2,贝'JBs=0;其中,Thl为第一阈值平滑度,其值可以取3、4或5,优选的可以取4;Th2为第二阈值平滑度,其值可以取1或2,优选的可以取2;另外,对于num等于边界值的情况,这时num即可以事先约定属于哪个区间(例如上述实施例),也可以是随4几的;步骤S303,判断滤波强度值Bs是否为0,若是,则执行步骤S305,否则,才丸行步骤S304。当Bs值为0时,即表示滤波强度为0,也就不需要滤波,因而执行步骤S305;步骤S304,根据所述滤波强度值对当前行/列进行滤波。在本步骤中,滤波操作所采用的公式可以是视频编解码标准中定义的标准公式(例如AVS标准文档、H.264标准文档中的滤波公式),也可以采用本发明使用。下面以本发明中的滤波公式为例进行说明当所述滤波强度值为2时,且为亮度边界时,采用以下公式进行滤波p0,=(p2+plx4+p0x4+p0x2+q0x4+ql+8)/16;q0,=(pl+p0x4+q0x4+q0x2+qlx4+q2+8)/16;pl,=(p2x3+plx8+p0x4+q0+8)/16;ql,=(q2x3+qlx8+q0x4+p0+8)/16;当所述滤波强度值为2时,且为色度边界时,采用以下公式进行滤波p0,=(p2+plx4+p0x4+p0x2+q0x4+ql+8)/16;q0'=(pl+p0x4+q0x4+q0x2+qlx4+q2+8)/16。其中,步骤b中,当所述滤波强度值为l时,采用以下公式进行滤波p0,=(pOx3+qO+2)/4;q0,=(q0x3+p0+2)/4;所述p0、pl、p2、q2、ql、q0所表示的含义可以参考上文的阐述,其位置关系可以形象的参考下表<table>tableseeoriginaldocumentpage12</column></row><table>其表示一行/列样本中临近边界(粗实线)的三个像素点;px,表示,px滤波后的《直,x取0,1,2。步骤S305,判断当前宏块是否滤波完毕,若是,则执行步骤S307,否则执行步骤S306。判断当前宏块是否滤波完毕是指当前宏块的所有需要滤波的边界的每一行/列均滤波完毕;步骤S306,取下一行/列样本。即,在当前宏块还有没有滤波的行/列样本时,则取还没有滤波的行/列样本以进行上述的滤波过程,其目的在于遍历所有行/列进行滤波。本步骤执行完毕后执行步骤S301;步骤S307,结束。需要i兌明的是,在步骤S304的滤波过程中,可以Bs=2时采用本发明所述方案,Bs=l时采用标准文档中的方案;或者,反过来,当Bs=l时采用本发明所述方案,Bs=2时采用标准文档中的方案。另夕卜,由于AVS一见频编解码标准和H.264、MPEG^L频编解码标准等均是基于宏块的编码框架,因此本具体实施方式中的实施例均可以适用。以上所揭露的仅为本发明一种较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。权利要求1、一种环路滤波方法,包括以下步骤a、计算需要滤波的边界的每一行/列样本的滤波强度值;b、对应所述滤波强度值对所述每一行/列样本进行滤波。2、根据权利要求1中任一项所述的方法,其特征在于,所述滤波强度值通过计算边界平滑度并根据该边界平滑度与阈值平滑度的对应关系得到。3、根据权利要求2所述的方法,其特征在于,所述边界平滑度通过以下方法得到判断紧邻当前边界的一对样本的差的绝对值是否小于第一阈值,若是,则取值1,否则,取值0;判断紧邻当前边界的一侧和次紧邻当前边界的所述侧的一对样本的差的绝对值是否小于第二阔值,若是,则取值l,否则,取值0;判断次紧邻当前边界的所述侧和倒数第三紧邻当前边界的所述侧的一对样本的差的绝对值是否小于第二阈值,若是,则取值l,否则,取值0;判断紧邻当前边界的另一侧和次紧邻当前边界的所述另一侧的一对样本的差的绝对值是否小于第二阈值,若是,则取值l,否则,取值0;判断次紧邻当前边界的所述另一侧和倒数第三紧邻当前边界的所述另一侧的一对样本的差的绝对值是否小于第二阈值,若是,则取值l,否则,取值0;上述五个判断所取值的和为所述边界平滑度;并且,所述边界平滑度与所述滤波强度值的对应关系为若边界平滑度大于第一阈值平滑度,则滤波强度值为2;若边界平滑度位于第一阈值平滑度和第二阈值平滑度之间,则滤波强度值为i;若边界平滑度小于第二阈值平滑度,则滤波强度值为0。4、根据权利要求3所述的方法,其特征在于,步骤b中,当所述滤波强度值为2时,且为亮度边界时,采用以下公式进行滤波p0,=(p2+plx4+p0x4+p0x2+q0x4+ql+8)/16;q0,=(pl+p0x4+q0x4+q0x2+qlx4+q2+8)/16;pl'=(p2x3+plx8+p0x4+q0+8)/16;ql,=(q2x3+qlx8+q0x4+p0+8)/16;当所述滤波强度值为2时,且为色度边界时,采用以下公式进行滤波:p0,=(p2+plx4+p0x4+p0x2+q0x4+ql+8)/16;qO'=(pl+pOx4+q0x4+q0x2+qlx4+q2+8)/16。5、根据权利要求3所述的方法,其特征在于,步骤b中,当所述滤波强度值为1时,采用以下公式进行滤波p0,=(p0x3+q0+2)/4;q0,=(q0x3+p0+2)/4。6、根据权利要求2所述的方法,其特征在于,在计算所述边界平滑度之前,首先判断当前行/列样本的边界是否是真实边界,若是,则结束对该行/列样本边界的滤波,否则执4于后续步骤。7、根据权利要求4所述的方法,其特征在于,步骤b中,当所述滤波强度值为1时,采用以下公式进行滤波p0,=(p0x3+q0+2)/4;q0,=(q0x3+p0+2)/4。8、根据权利要求4、5、7中任一项所述的方法,其特征在于,步骤b中,当所述滤波强度值为不等于对应所述的情形时,则按照视频编解码标准中标准滤波方案滤波。9、根据权利要求1至7中任一项所述的方法,其特征在于,步骤a中通过判断当前宏块的块效应是否明显实现,若明显,则认为需要滤波,否则不需要滤波。10、根据权利要求9所述的方法,其特征在于,若当前边界满足下述3个条件中的至少一个,则认为块效应不明显,否则认为明显conl、当前帧为B帧或p帧,并且当前边界为当前宏块的内部边界,且当前宏块亮度的宏块编码模板的值为0;con2、当前帧为B帧或p帧,并且当前边界为两个宏块之间的边界,且所述两个宏块亮度的宏块编码模板的值都为0;con3、当前帧为B帧或p帧,并且当前边界为两个宏块之间的边界,所述两个宏块的参考帧相同,且所述两个宏块的运动矢量的差小于一个像素点。全文摘要本发明公开了一种环路滤波方法,包括以下步骤a.计算需要滤波的边界的每一行/列的滤波强度值;b.对应所述滤波强度值对所述每一行/列样本进行滤波。本发明中由于对边界上每一行/列样本均计算一个滤波强度值,从而该滤波强度值更加适合该行/列边界,而根据该滤波强度值进行的滤波操作也能够使得重建图像的质量更好。文档编号H04N7/26GK101330615SQ20081001707公开日2008年12月24日申请日期2008年6月23日优先权日2008年6月23日发明者微刘,彭玉华,梅焦,雷裴申请人:青岛海信电子产业控股股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1