CN101902632B - 像素插值滤波方法及装置,解码方法及系统 - Google Patents

像素插值滤波方法及装置,解码方法及系统 Download PDF

Info

Publication number
CN101902632B
CN101902632B CN 200910203237 CN200910203237A CN101902632B CN 101902632 B CN101902632 B CN 101902632B CN 200910203237 CN200910203237 CN 200910203237 CN 200910203237 A CN200910203237 A CN 200910203237A CN 101902632 B CN101902632 B CN 101902632B
Authority
CN
China
Prior art keywords
pixel
interpolation
filtering
pixel value
value
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.)
Active
Application number
CN 200910203237
Other languages
English (en)
Other versions
CN101902632A (zh
Inventor
张凯
马思伟
高文
熊联欢
杨名远
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN 200910203237 priority Critical patent/CN101902632B/zh
Publication of CN101902632A publication Critical patent/CN101902632A/zh
Application granted granted Critical
Publication of CN101902632B publication Critical patent/CN101902632B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Image Processing (AREA)

Abstract

本发明实施例公开了像素插值滤波方法及装置,解码方法及系统,用于提高像素插值滤波的效率。本发明实施例方法包括:获取视频信号的整像素的像素值;采用预置的1/2像素插值方法对所述整像素的像素值进行插值滤波得到1/2像素的像素值;根据所述整像素的像素值以及所述1/2像素的像素值对第一类1/8像素进行水平插值滤波以及垂直插值滤波得到第一类1/8像素的像素值;根据所述整像素的像素值以及所述1/2像素的像素值对第二类1/8像素进行斜向插值滤波得到第二类1/8像素的像素值。本发明实施例还提供了一种像素插值滤波装置,解码方法及系统。本发明实施例可以有效地提高像素插值滤波的效率。

Description

像素插值滤波方法及装置,解码方法及系统
技术领域
本发明涉及图像处理领域,尤其涉及一种像素插值滤波方法及系统,解码方法及系统,视频信号处理方法及系统。
背景技术
现有技术中,完整的视频编解码系统包括编码器与解码器两部分,在编码端,视频信号首先会经过预测模块,编码器依照一定的最优化准则从若干种预测模式中选择最佳的一种来生成预测信号,然后根据预测信号与真实信号之间的差异生成残差信号;残差信号经过变换量化后进入熵编码模块,并最终形成输出码流。在解码端,首先从码流中解析出预测模式信息,生成与编码端完全一致的预测信号;接着解析出码流中已经量化过的变换系数值,进行反量化与反变换,生成重构残差信号;最后用预测信号与重建残差信号合成出重构视频信号。
在视频编码技术中,通常会存在帧内预测与帧间预测,相应的,图像也分为帧内图像与帧间图像两种。帧间预测的主要技术是运动估计和运动补偿,以充分利用相邻帧的相关性。这种编码方法的核心思想是在参考图像中搜索与待编码块最为匹配的块作为待编码块的预测块,待编码块减去预测块的值得到残差,再进行编码。显然地,编码块与预测块的匹配程度越高,残差就会越小,编码的性能就会越高。
为了提高预测块的匹配程度,需要提高运动估计和运动补偿的精度。动态图像专家组(MPEG,Moving Pictures Experts Group)提出的MPEG-1方案采用整像素精度的运动估计与补偿,MPEG-2方案与H.263方案采用的是1/2像素精度运动估计与补偿,在MPEG-4,H.264/MPEG-4AVC及AVS(音视频编解码标准,Audio Video coding Standard)中采用的是1/4像素精度的运动估计与补偿。另外,还可以采用1/8像素精度进行运动估计与补偿。其中,这些比整像素更高精度的像素(如1/2像素,1/4像素,1/8像素等)被称为亚像素。在运动估计及运动补偿中引入亚像素技术,可以获得更好的编码性能。
通常采用数字滤波器来实现亚像素插值计算。其工作原理是使用一组特定的滤波器系数作用于某些特定的像素(整像素或者亚像素)值上,所得到的结果作为所需要位置的亚像素的像素值。
现有技术中一种像素插值滤波方法为:使用某种滤波器作用于整像素的像素值得到1/2像素的像素值,然后再使用某种滤波器作用于整像素的像素值及1/2像素的像素值得到1/4像素的像素值,之后再使用可分离的二阶双线性滤波器作用于整像素的像素值,1/2像素的像素值,以及1/4像素的像素值得到1/8像素的像素值。
但是,上述的像素插值滤波方法中,为得到1/8像素的像素值,需要计算1/2像素的像素值得到1/4像素的像素值,所以进行1/8像素插值滤波需要很大的计算量,影响了像素插值滤波的效率。
发明内容
本发明实施例提供了一种像素插值滤波方法及系统,解码方法及系统,视频信号处理方法及系统,能够提高像素插值滤波的效率。
本发明实施例提供的像素插值滤波方法,包括:获取视频信号的整像素的像素值;采用预置的1/2像素插值方法对所述整像素的像素值进行插值滤波得到1/2像素的像素值;根据所述整像素的像素值以及所述1/2像素的像素值对第一类1/8像素进行水平插值滤波以及垂直插值滤波得到第一类1/8像素的像素值;根据所述整像素的像素值以及所述1/2像素的像素值对第二类1/8像素进行斜向插值滤波得到第二类1/8像素的像素值。
本发明实施例提供的解码方法,包括:对码流进行解码得到当前宏块的参考视频信号,运动矢量残差以及像素残差;对所述参考视频信号进行1/8像素插值滤波得到插值后的参考视频信号;根据所述当前宏块周围的宏块计算运动矢量预测值;将所述运动矢量残差与所述运动矢量预测值相加得到实际运动矢量;根据所述插值后的参考视频信号与所述实际运动矢量计算所述当前宏块的像素预测值;将所述像素预测值与所述像素残差相加得到所述当前宏块的重构。
本发明实施例提供的视频信号处理方法,包括:将获取到的视频信号划分为帧,宏块,或宏块组;对于每帧,每个宏块,或每个宏块组,按照预置的选取规则选取对应的插值滤波精度;按照选取的插值滤波精度对不同的帧,宏块,或宏块组进行运动补偿以及运动矢量编码。
本发明实施例提供的像素插值滤波装置,包括:获取模块,用于获取视频信号的整像素的像素值;半像素插值滤波模块,用于采用预置的1/2像素插值方法对所述整像素的像素值进行插值滤波得到1/2像素的像素值;水平垂直像素插值滤波模块,用于根据所述整像素的像素值以及所述1/2像素的像素值对第一类1/8像素进行水平插值滤波以及垂直插值滤波得到第一类1/8像素的像素值;斜向像素插值滤波模块,用于根据所述整像素的像素值以及所述1/2像素的像素值对第二类1/8像素进行斜向插值滤波得到第二类1/8像素的像素值。
本发明实施例提供的解码系统,包括:解码执行装置,用于对码流进行解码得到当前宏块的参考视频信号,运动矢量残差以及像素残差;像素插值滤波装置,用于对所述参考视频信号进行1/8像素插值滤波得到插值后的参考视频信号;运动矢量预测装置,用于根据所述当前宏块周围的宏块计算运动矢量预测值;运动矢量补偿装置,用于将所述运动矢量残差与所述运动矢量预测值相加得到实际运动矢量;像素预测装置,用于根据所述插值后的参考视频信号与所述实际运动矢量计算所述当前宏块的像素预测值;重构装置,用于将所述像素预测值与所述像素残差相加得到所述当前宏块的重构。
本发明实施例提供的视频信号处理系统,包括:划分装置,用于将获取到的视频信号划分为帧,宏块,或宏块组;精度选择装置,用于对于每个帧,宏块,或宏块组,按照预置的选取规则选取对应的插值滤波精度;处理装置,用于按照所述精度选择装置选取的插值滤波精度对不同的帧,宏块,或宏块组进行运动补偿以及运动矢量编码。
从以上技术方案可以看出,本发明实施例具有以下优点:
本发明实施例中,在获取到整像素的像素值以及1/2像素的像素值之后,即可对1/8像素进行水平插值滤波、垂直插值滤波/以及斜向插值滤波,从而得到1/8像素的像素值,因此无需计算1/4像素的像素值,所以减少了进行1/8像素插值滤波的计算量,从而提高了像素插值滤波的效率。
附图说明
图1为本发明实施例中像素插值滤波方法一个实施例示意图;
图2为本发明实施例中像素插值滤波方法另一实施例示意图;
图3为本发明实施例中像素分布示意图;
图4为本发明实施例中解码方法实施例示意图;
图5为本发明实施例中视频信号处理方法实施例示意图;
图6为本发明实施例中像素插值滤波装置一个实施例示意图;
图7为本发明实施例中像素插值滤波装置另一实施例示意图;
图8为本发明实施例中解码系统实施例示意图;
图9为本发明实施例中视频信号处理系统实施例示意图。
具体实施方式
本发明实施例提供了一种像素插值滤波方法及系统,解码方法及系统,视频信号处理方法及系统,用于像素插值滤波的效率。
请参阅图1,本发明实施例中像素插值滤波方法应用于解码器插值滤波,其中一个实施例包括:
101、获取视频信号的整像素的像素值。
本实施例中,当需要对视频信号进行亚像素插值滤波时,可以先从视频信号中获取整像素的像素值,具体的获取方式为本领域技术人员的公知常识,此处不作限定。
本实施例中的视频信号可以是图像,或者还可以是其他由像素组成的信号。
102、采用预置的1/2像素插值方法对所述整像素的像素值进行插值滤波得到1/2像素的像素值。
在获取到整像素的像素值之后,即可根据该整像素的像素值计算1/2像素的像素值,计算1/2像素的像素值的过程可以是音频视频编码标准(AVS,AudioVideo coding Standard)规定的过程,或者还可以采用其他的过程,此为本领域技术人员的公知常识,此处不作限定。
103、根据所述整像素的像素值以及所述1/2像素的像素值对第一类1/8像素进行水平插值滤波以及垂直插值滤波得到第一类1/8像素的像素值。
在获取到整像素的像素值以及1/2像素的像素值之后,可以对与整像素或1/2像素位于同一行的1/8像素进行水平插值滤波,并可以对与整像素或1/2像素位于同一列的1/8像素进行垂直插值滤波,从而得到第一类1/8像素的像素值,该第一类1/8像素是指与整像素或1/2像素位于同一行或同一列的1/8像素。
104、根据所述整像素的像素值以及所述1/2像素的像素值对第二类1/8像素进行斜向插值滤波得到第二类1/8像素的像素值。
在获取到整像素的像素值以及1/2像素的像素值之后,同样还可以对第二类1/8像素进行斜向插值滤波,该第二类1/8像素是指被相邻的2个整像素以及相邻的2个1/2像素呈正方形包围的1/8像素。
本实施例中,在获取到整像素的像素值以及1/2像素的像素值之后,即可对1/8像素进行水平插值滤波,垂直插值滤波,以及斜向插值滤波,从而得到1/8像素的像素值,因此无需计算1/4像素的像素值,所以减少了进行1/8像素插值滤波的计算量,从而提高了像素插值滤波的效率。
为便于理解,下面以一具体实例对本发明实施例中的像素插值滤波方法进行描述,请参阅图2,本发明实施例中像素插值滤波方法应用于解码器插值滤波,其中另一实施例包括:
201~202、与上述图1所示的实施例中的步骤101~102相同,此处不再赘述。
203、选取4阶滤波器。
本实施例中,为对1/8像素进行插值滤波,则可以选择在时域宽度有限条件下,频率响应特性最接近最优插值滤波器的滤波器,本实施例中选取两个Laczos滤波器的整数化滤波器作为4阶滤波器。
204、确定选取的4阶滤波器的滤波系数。
上述确定的两个Laczos滤波器的整数化滤波器分别为第一4阶滤波器F1以及第二4阶滤波器F2,其中,第一4阶滤波器F1的滤波系数为(c0,c1,c2,c3)/2n;第二4阶滤波器F2的滤波系数为(d0,d1,d2,d3)/2m
其中,c0,c1,c2,c3及d0,d1,d2,d3均为整数;且c0,c1,c2,c3之和为2n;d0,d1,d2,d3之和为2m
本实施例中,第一4阶滤波器F1的滤波系数可以从以下参数中选取任意一组:
n=4,(c0,c1,c2,c3)=(-1,14,4,-1);
n=5,(c0,c1,c2,c3)=(-3,28,8,-1);
n=5,(c0,c1,c2,c3)=(-2,28,7,-1);
n=6,(c0,c1,c2,c3)=(-6,56,15,-1);
n=6,(c0,c1,c2,c3)=(-5,55,15,-1);
n=7,(c0,c1,c2,c3)=(-11,111,30,-2);
n=8,(c0,c1,c2,c3)=(-21,222,60,-5);
n=8,(c0,c1,c2,c3)=(-21,222,59,-4);
n=9,(c0,c1,c2,c3)=(-43,445,119,-9);
n=10,(c0,c1,c2,c3)=(-85,889,238,-18);
n=10,(c0,c1,c2,c3)=(-86,890,238,-18)。
本实施例中,第二4阶滤波器F2的滤波系数可以从以下参数中选取任意一组:
m=4,(d0,d1,d2,d3)=(-1,4,14,-1);
m=5,(d0,d1,d2,d3)=(-1,8,28,-3);
m=5,(d0,d1,d2,d3)=(-1,7,28,-2);
m=6,(d0,d1,d2,d3)=(-1,15,56,-6);
m=6,(d0,d1,d2,d3)=(-1,15,55,-5);
m=7,(d0,d1,d2,d3)=(-2,30,111,-11);
m=8,(d0,d1,d2,d3)=(-5,60,222,-21);
m=8,(d0,d1,d2,d3)=(-4,59,222,-21);
m=9,(d0,d1,d2,d3)=(-9,119,445,-43);
m=10,(d0,d1,d2,d3)=(-18,238,889,-85);
m=10,(d0,d1,d2,d3)=(-18,238,890,-86)。
本实施例中,当n和m相同时,第一4阶滤波器F1的滤波系数和第二4阶滤波器F2的滤波系数之间存在对应关系,第一4阶滤波器F1的滤波系数为(c0,c1,c2,c3),第二4阶滤波器F2的滤波系数为(d0,d1,d2,d3),其中,c0=d3,c1=d2,c2=d1,c3=d0。在确定选取的4阶滤波器的滤波系数时,可以使确定的第一4阶滤波器F1的滤波系数与确定的第二4阶滤波器F2的滤波系数相对应,例如,F1的系数为“n=6,(c0,c1,c2,c3)=(-5,55,15,-1)”,则对应的确定F2的系数为“n=6,(d0,d1,d2,d3)=(c3,c2,c1,c0)=(-1,15,55,-5)”,此时,由于F1与F2存在对应关系,可以使计算量更简化,并且能够获得更好的插值滤波效果;当然,也可以使确定的第一4阶滤波器F1的滤波系数与确定的第二4阶滤波器F2的滤波系数不相对应,分别确定第一4阶滤波器F1的滤波系数和第二4阶滤波器F2的滤波系数。
205、利用选取的4阶滤波器,根据所述整像素的像素值以及所述1/2像素的像素值对第一类1/8像素进行水平插值滤波以及垂直插值滤波得到第一类1/8像素的像素值。
在获取到整像素的像素值以及1/2像素的像素值之后,可以对与整像素或1/2像素位于同一行的1/8像素进行水平插值滤波,并可以对与整像素或1/2像素位于同一列的1/8像素进行垂直插值滤波,从而得到第一类1/8像素的像素值,该第一类1/8像素是指与整像素或1/2像素位于同一行或同一列的1/8像素。
具体的插值滤波可以包括如下一些过程:整像素的水平插值滤波,整像素的垂直插值滤波,1/2像素的水平插值滤波,1/2像素的垂直插值滤波。下面结合图3对上述插值滤波分别进行说明,图3中用坐标的方式表示整像素及各级亚像素,其中,在像素或亚像素的坐标中,Y轴坐标在前,X轴坐标在后,某一像素或亚像素的坐标为L(y,x),图3中圆形代表的像素为整像素,方形代表的像素为1/2像素,空心五角星形代表的像素为1/8像素;下面以对(0,0)至(8,8)的方形区域中的1/8像素进行水平插值滤波为例进行说明,在该方形区域外的1/8像素进行水平插值滤波的方式与之类似,不再赘述:
(1)整像素的水平插值滤波:
本方式采用第一4阶滤波器F1以及第二4阶滤波器F2对和整像素位于同一水平线的1/8像素进行水平插值滤波得到1/8像素的像素值,水平插值滤波的输入参数为在所述同一水平线上与所述1/8像素相邻的2个整像素的像素值以及相邻的2个1/2像素的像素值。
由图3可以看出,与整像素L(0,0)位于同一水平线(即Y=0的水平线)的1/8像素有L(0,1),L(0,3),L(0,5)以及L(0,7),该水平线上还存在1/2像素L(0,-4)以及L(0,4)等,则在该水平线上对每一个1/8像素分别查询其相邻的2个整像素以及相邻的2个1/2像素,并根据查询到的2个整像素的像素值以及1/2像素的像素值对该1/8像素进行水平插值滤波得到该1/8像素的像素值,具体的插值滤波的方式可以为:
L(0,1)=(c0*L(0,-4)+c1*L(0,0)+c2*L(0,4)+c3*L(0,8)+2n-1)/2n
L(0,3)=(d0*L(0,-4)+d1*L(0,0)+d2*L(0,4)+d3*L(0,8)+2m-1)/2m
L(0,5)=(c0*L(0,0)+c1*L(0,4)+c2*L(0,8)+c3*L(0,12)+2n-1)/2n
L(0,7)=(d0*L(0,0)+d1*L(0,4)+d2*L(0,8)+d3*L(0,12)+2m-1)/2m
需要说明的是,具体对1/8像素L(0,1),L(0,3),L(0,5)以及L(0,7)进行插值滤波时,可以先对L(0,1)进行插值滤波,也可以先对L(0,3)进行插值滤波,或者还可以先对L(0,5)进行插值滤波等,具体顺序此处不作限定。另外,对和整像素位于同一水平线的1/8像素进行水平插值滤波时,可以对这些1/8像素中的一部分使用第一4阶滤波器F1进行水平插值滤波,对这些1/8像素中的其他部分使用第二4阶滤波器F2进行水平插值滤波;例如,上面的过程中交替使用第一4阶滤波器F1以及第二4阶滤波器F2对和整像素位于同一水平线的1/8像素进行水平插值滤波,对1/8像素L(0,1),L(0,5)采用第一4阶滤波器F1,对1/8像素L(0,3),L(0,7)采用第二4阶滤波器F2;当然,也可以随机选择和整像素位于同一水平线的1/8像素的一部分,采用第一4阶滤波器F1进行水平插值滤波,对其他的1/8像素采用第二4阶滤波器F2进行水平插值滤波。
上述插值滤波的公式中的c0,c1,c2,c3,d0,d1,d2,d3,n以及m与前述步骤204中所描述的参数一致,此处不再赘述。
本实施例中,为获得更好的插值滤波效果,可以使得n和m相等,并且同时使得c0=d3,c1=d2,c2=d1,c3=d0。
需要说明的是,上述计算得到1/8像素L(0,1),L(0,3),L(0,5)以及L(0,7)的像素值之后,还可以根据一预置门限值对计算得到的像素值进行校验,若计算得到的某1/8像素的像素值超过了该预置门限值,则将该1/8像素的像素值修改为该门限值。
(2)整像素的垂直插值滤波:
本方式采用第一4阶滤波器F1以及第二4阶滤波器F2对和整像素位于同一垂直线的1/8像素进行垂直插值滤波得到1/8像素的像素值,所述垂直插值滤波的输入参数为在所述同一垂直线上与所述1/8像素相邻的2个整像素的像素值以及相邻的2个1/2像素的像素值。
由图3可以看出,与整像素L(0,0)位于同一垂直线(即X=0的垂直线)的1/8像素有L(1,0),L(3,0),L(5,0)以及L(7,0),该垂直线上还存在1/2像素L(-4,0)以及L(4,0)等,则在该垂直线上对每一个1/8像素分别查询其相邻的2个整像素以及2个1/2像素,并根据查询到的2个整像素的像素值以及1/2像素的像素值对该1/8像素进行垂直插值滤波得到该1/8像素的像素值,具体的插值滤波的方式可以为:
L(1,0)=(c0*L(-4,0)+c1*L(0,0)+c2*L(4,0)+c3*L(8,0)+2n-1)/2n
L(3,0)=(d0*L(-4,0)+d1*L(0,0)+d2*L(4,0)+d3*L(8,0)+2m-1)/2m
L(5,0)=(c0*L(0,0)+c1*L(4,0)+c2*L(8,0)+c3*L(12,0)+2n-1)/2n
L(7,0)=(d0*L(0,0)+d1*L(4,0)+d2*L(8,0)+d3*L(12,0)+2m-1)/2m
上述插值滤波的公式中的c0,c1,c2,c3,d0,d1,d2,d3,n以及m与前述步骤204中所描述的参数一致,此处不再赘述。
本实施例中,为获得更好的插值滤波效果,可以使得n和m相等,并且同时使得c0=d3,c1=d2,c2=d1,c3=d0。
本实施例中对1/8像素的插值滤波顺序不作限定。另外,对和整像素位于同一垂直线的1/8像素进行垂直插值滤波时,可以对这些1/8像素中的一部分使用第一4阶滤波器F1进行垂直插值滤波,对这些1/8像素中的其他部分使用第二4阶滤波器F2进行垂直插值滤波,这里不做限定。
需要说明的是,上述计算得到1/8像素L(1,0),L(3,0),L(5,0)以及L(7,0)的像素值之后,还可以根据一预置门限值对计算得到的像素值进行校验,若计算得到的某1/8像素的像素值超过了该预置门限值,则将该1/8像素的像素值修改为该门限值。
(3)1/2像素的水平插值滤波:
本方式采用第一4阶滤波器F1以及第二4阶滤波器F2对和1/2像素位于同一水平线的1/8像素进行水平插值滤波得到1/8像素的像素值,所述水平插值滤波的输入参数为在所述同一水平线上与所述1/8像素相邻的4个1/2像素的像素值。
由图3可以看出,与1/2像素L(4,0)位于同一水平线(即Y=4的水平线)的1/8像素有L(4,1),L(4,3),L(4,5)以及L(4,7),该水平线上还存在1/2像素L(4,-4),L(4,4),L(4,8)以及L(4,12)等,则在该水平线上对每一个1/8像素分别查询其相邻的4个1/2像素,并根据查询到的4个1/2像素的像素值对该1/8像素进行水平插值滤波得到该1/8像素的像素值,具体的插值滤波的方式可以为:
L(4,1)=(c4*L(4,-4)+c1*L(4,0)+c2*L(4,4)+c3*L(4,8)+2n-1)/2n
L(4,3)=(d4*L(4,-4)+d1*L(4,0)+d2*L(4,4)+d3*L(4,8)+2m-1)/2m
L(4,5)=(c4*L(4,0)+c1*L(4,4)+c2*L(4,8)+c3*L(4,12)+2n-1)/2n
L(4,7)=(d4*L(4,0)+d1*L(4,4)+d2*L(4,8)+d3*L(4,12)+2m-1)/2m
上述插值滤波的公式中的c0,c1,c2,c3,d0,d1,d2,d3,n以及m与前述步骤204中所描述的参数一致,此处不再赘述。
本实施例中,为获得更好的插值滤波效果,可以使得n和m相等,并且同时使得c0=d3,c1=d2,c2=d1,c3=d0。
本实施例中对1/8像素的插值滤波顺序不作限定。另外,对和1/2像素位于同一水平线的1/8像素进行水平插值滤波时,可以对这些1/8像素中的一部分使用第一4阶滤波器F1进行水平插值滤波,对这些1/8像素中的其他部分使用第二4阶滤波器F2进行水平插值滤波,这里不做限定。
需要说明的是,上述计算得到1/8像素L(4,1),L(4,3),L(4,5)以及L(4,7)的像素值之后,还可以根据一预置门限值对计算得到的像素值进行校验,若计算得到的某1/8像素的像素值超过了该预置门限值,则将该1/8像素的像素值修改为该门限值。
(4)1/2像素的垂直插值滤波:
本方式采用第一4阶滤波器F1以及第二4阶滤波器F2对和1/2像素位于同一垂直线的1/8像素进行垂直插值滤波得到1/8像素的像素值,所述垂直插值滤波的输入参数为在所述同一垂直线上与所述1/8像素相邻的4个1/2像素的像素值。
由图3可以看出,与1/2像素L(0,4)位于同一垂直线(即X=4的垂直线)的1/8像素有L(1,4),L(3,4),L(5,4)以及L(7,4),该垂直线上还存在1/2像素L(-4,4),L(4,4),L(8,4)以及L(12,4)等,则在该垂直线上对每一个1/8像素分别查询其相邻4个1/2像素,并根据查询到的4个1/2像素的像素值对该1/8像素进行垂直插值滤波得到该1/8像素的像素值,具体的插值滤波的方式可以为:
L(1,4)=(c4*L(-4,4)+c1*L(0,4)+c2*L(4,4)+c3*L(8,4)+2n-1)/2n
L(3,4)=(d4*L(-4,4)+d1*L(0,4)+d2*L(4,4)+d3*L(8,4)+2m-1)/2m
L(5,4)=(c4*L(0,4)+c1*L(4,4)+c2*L(8,4)+c3*L(12,4)+2n-1)/2n
L(7,4)=(d4*L(0,4)+d1*L(4,4)+d2*L(8,4)+d3*L(12,4)+2m-1)/2m
上述插值滤波的公式中的c0,c1,c2,c3,d0,d1,d2,d3,n以及m与前述步骤204中所描述的参数一致,此处不再赘述。
本实施例中,为获得更好的插值滤波效果,可以使得n和m相等,并且同时使得c0=d3,c1=d2,c2=d1,c3=d0。
本实施例中对1/8像素的插值滤波顺序不作限定。另外,对和1/2像素位于同一垂直线的1/8像素进行垂直插值滤波时,可以对这些1/8像素中的一部分使用第一4阶滤波器F1进行垂直插值滤波,对这些1/8像素中的其他部分使用第二4阶滤波器F2进行垂直插值滤波,这里不做限定。
需要说明的是,上述计算得到1/8像素L(1,4),L(3,4),L(5,4)以及L(7,4)的像素值之后,还可以根据一预置门限值对计算得到的像素值进行校验,若计算得到的某1/8像素的像素值超过了该预置门限值,则将该1/8像素的像素值修改为该门限值。
206、利用双线性滤波器,根据所述整像素的像素值以及所述1/2像素的像素值对第二类1/8像素进行斜向插值滤波得到第二类1/8像素的像素值。
在获取到整像素的像素值以及1/2像素的像素值之后,同样还可以对第二类1/8像素进行斜向插值滤波,该第二类1/8像素是指被相邻的2个整像素以及2个1/2像素呈正方形包围的1/8像素。
同样请参阅图3,图3中所示的黑色的实心五角星所代表的1/8像素即是第二类1/8像素,具体的,按照图3所示的第二类1/8像素的位置,具体进行斜向插值滤波的过程包括如下几个方面:
(1)采用双线性滤波器对位于L(0,0),L(0,4),L(4,0),L(4,4)所包围区域内的1/8像素进行插值滤波,本实施例中的双线性滤波器的滤波系数可以为(e0,e1,e2,e3)/2p,其中,e0,e1,e2,e3均为整数;且e0,e1,e2,e3之和为2p,具体插值滤波的过程如下:
L(1,1)=1/16*(9*L(0,0)+3*L(0,4)+3*L(4,0)+L(4,4)+8);
L(1,2)=1/16*(6*L(0,0)+6*L(0,4)+2*L(4,0)+2*L(4,4)+8);
L(1,3)=1/16*(3*L(0,0)+9*L(0,4)+L(4,0)+3*L(4,4)+8);
L(2,1)=1/16*(6*L(0,0)+2*L(0,4)+6*L(4,0)+2*L(4,4)+8);
L(2,3)=1/16*(2*L(0,0)+6*L(0,4)+2*L(4,0)+6*L(4,4)+8);
L(3,1)=1/16*(3*L(0,0)+L(0,4)+9*L(4,0)+3*L(4,4)+8);
L(3,2)=1/16*(2*L(0,0)+2*L(0,4)+6*L(4,0)+6*L(4,4)+8);
L(3,3)=1/16*(L(0,0)+3*L(0,4)+3*L(4,0)+9*L(4,4)+8);
同理,在计算得到上述1/8像素的像素值之后,也可以根据一预置门限值对计算得到的像素值进行校验,若计算得到的某1/8像素的像素值超过了该预置门限值,则将该1/8像素的像素值修改为该门限值。
(2)采用双线性滤波器对位于L(0,4),L(0,8),L(4,4),L(4,8)所包围区域内的1/8像素进行插值滤波:
L(1,5)=1/16*(9*L(0,4)+3*L(0,8)+3*L(4,4)+L(4,8)+8);
L(1,6)=1/16*(6*L(0,4)+6*L(0,8)+2*L(4,4)+2*L(4,8)+8);
L(1,7)=1/16*(3*L(0,4)+9*L(0,8)+L(4,4)+3*L(4,8)+8);
L(2,5)=1/16*(6*L(0,4)+2*L(0,8)+6*L(4,4)+2*L(4,8)+8);
L(2,7)=1/16*(2*L(0,4)+6*L(0,8)+2*L(4,4)+6*L(4,8)+8);
L(3,5)=1/16*(3*L(0,4)+L(0,8)+9*L(4,4)+3*L(4,8)+8);
L(3,6)=1/16*(2*L(0,4)+2*L(0,8)+6*L(4,4)+6*L(4,8)+8);
L(3,7)=1/16*(L(0,4)+3*L(0,8)+3*L(4,4)+9*L(4,8)+8);
同理,在计算得到上述1/8像素的像素值之后,也可以根据一预置门限值对计算得到的像素值进行校验,若计算得到的某1/8像素的像素值超过了该预置门限值,则将该1/8像素的像素值修改为该门限值。
(3)采用双线性滤波器对位于L(4,0),L(4,4),L(8,0),L(8,4)所包围区域内的1/8像素进行插值滤波:
L(5,1)=1/16*(9*L(4,0)+3*L(4,4)+3*L(8,0)+L(8,4)+8);
L(5,2)=1/16*(6*L(4,0)+6*L(4,4)+2*L(8,0)+2*L(8,4)+8);
L(5,3)=1/16*(3*L(4,0)+9*L(4,4)+L(8,0)+3*L(8,4)+8);
L(6,1)=1/16*(6*L(4,0)+2*L(4,4)+6*L(8,0)+2*L(8,4)+8);
L(6,3)=1/16*(2*L(4,0)+6*L(4,4)+2*L(8,0)+6*L(8,4)+8);
L(7,1)=1/16*(3*L(4,0)+L(4,4)+9*L(8,0)+3*L(8,4)+8);
L(7,2)=1/16*(2*L(4,0)+2*L(4,4)+6*L(8,0)+6*L(8,4)+8);
L(7,3)=1/16*(L(4,0)+3*L(4,4)+3*L(8,0)+9*L(8,4)+8);
同理,在计算得到上述1/8像素的像素值之后,也可以根据一预置门限值对计算得到的像素值进行校验,若计算得到的某1/8像素的像素值超过了该预置门限值,则将该1/8像素的像素值修改为该门限值。
(4)采用双线性滤波器对位于L(4,4),L(4,8),L(8,4),L(8,8)所包围区域内的1/8像素进行插值滤波:
L(5,5)=1/16*(9*L(4,4)+3*L(4,8)+3*L(8,4)+L(8,8)+8);
L(5,6)=1/16*(6*L(4,4)+6*L(4,8)+2*L(8,4)+2*L(8,8)+8);
L(5,7)=1/16*(3*L(4,4)+9*L(4,8)+L(8,4)+3*L(8,8)+8);
L(6,5)=1/16*(6*L(4,4)+2*L(4,8)+6*L(8,4)+2*L(8,8)+8);
L(6,7)=1/16*(2*L(4,4)+6*L(4,8)+2*L(8,4)+6*L(8,8)+8);
L(7,5)=1/16*(3*L(4,4)+L(4,8)+9*L(8,4)+3*L(8,8)+8);
L(7,6)=1/16*(2*L(4,4)+2*L(4,8)+6*L(8,4)+6*L(8,8)+8);
L(7,7)=1/16*(L(4,4)+3*L(4,8)+3*L(8,4)+9*L(8,8)+8);
同理,在计算得到上述1/8像素的像素值之后,也可以根据一预置门限值对计算得到的像素值进行校验,若计算得到的某1/8像素的像素值超过了该预置门限值,则将该1/8像素的像素值修改为该门限值。
通过上述步骤205以及206即可对第一类1/8像素以及第二类1/8均进行插值滤波,从而对视频信号中所有的1/8像素都进行插值滤波。
本实施例中,在获取到整像素的像素值以及1/2像素的像素值之后,即可对1/8像素进行水平插值滤波,垂直插值滤波,以及斜向插值滤波从而得到1/8像素的像素值,因此无需计算1/4像素的像素值,所以减少了进行1/8像素插值滤波的计算量,从而提高了像素插值滤波的效率;
其次,本实施例中选取两个Laczos滤波器的整数化滤波器作为4阶滤波器,且为每个4阶滤波器给出可选的滤波系数,采用这样的4阶滤波器以及滤波系数可以在时域宽度有限条件下,使得频率响应特性最接近于最优插值滤波器的效果。
下面介绍本发明实施例中的解码方法,请参阅图4,本发明实施例中解码方法实施例包括:
401、对码流进行解码得到当前宏块的参考视频信号,运动矢量残差以及像素残差;
本实施例中,对接收到的码流进行解码即可得到当前宏块的参考视频信号,运动矢量残差以及像素残差。
具体的,本实施例中可以利用逆熵、反量化和反离散余弦变换进行解码得到当前宏块的像素残差。
402、对参考视频信号进行1/8像素插值滤波得到插值后的参考视频信号;
本实施例中,对参考视频信号进行1/8像素插值滤波的过程与前述像素插值滤波方法所描述的过程一致,此处不再赘述。
403、根据当前宏块周围的宏块计算运动矢量预测值;
本实施例中,具体的计算运动矢量预测值的过程为本领域技术人员的公知常识,此处不作限定。
404、将运动矢量残差与所述运动矢量预测值相加得到实际运动矢量;
405、根据插值后的参考视频信号与实际运动矢量计算所述当前宏块的像素预测值;
本实施例中,具体的计算当前宏块的像素预测值的过程为本领域技术人员的公知常识,此处不作限定。
406、将像素预测值与像素残差相加得到所述当前宏块的重构。
本实施例在解码过程中,在对参考视频信号进行1/8像素插值滤波时,在获取到整像素的像素值以及1/2像素的像素值之后,即可对1/8像素进行水平插值滤波,垂直插值滤波,以及斜向插值滤波从而得到1/8像素的像素值,因此无需计算1/4像素的像素值,所以减少了进行1/8像素插值滤波的计算量,从而提高了像素插值滤波的效率。
下面介绍本发明实施例中的视频信号处理方法,请参阅图5,本发明实施例中视频信号处理方法实施例包括:
501、将获取到的视频信号划分为帧,宏块,或宏块组;
本实施例中,可以将视频信号划分为若干帧,宏块,或宏块组,具体的划分过程为本领域技术人员的公知常识,此处不作限定。
502、对于每帧,每个宏块或者每个宏块组,按照预置的选取规则选取对应的插值滤波精度;
本实施例中,系统可以以帧,宏块或者宏块组为单位,选择插值滤波的精度,并以此精度为单位,编码并传输运动矢量信息;同时,此精度选项也应作为附件信息,编码并传输。例如某一宏块中内容信息较少,则可采用较低的插值滤波精度(比如整像素或1/2像素),若某一宏块中内容信息较多,则可采用较高的插值滤波精度(比如1/4像素或1/8像素)。
需要说明的是,本实施例中的选取规则可以为率失真最优规则或复杂度分级规则,可以理解的是,在实际应用中,该选取规则同样可以为其他类型的规则,具体规则此处不作限定。
503、按照选取的插值滤波精度对不同的宏块进行运动补偿以及运动矢量编码。
当为每个宏块都确定了对应的插值滤波精度之后,则可以按照确定的插值滤波精度分别对不同的宏块进行运动补偿以及运动矢量编码,具体的运动补偿以及运动矢量编码的过程为本领域技术人员的公知常识,此处不作限定。
需要说明的是,本实施例中,当以1/8像素作为插值滤波精度时,对1/8像素插值滤波的运动矢量搜索进行简化,具体的:可以跳过个别位置的1/8像素精度运动矢量的搜索,例如可以只搜索图3中白色五角星所表示的1/8像素;可以在1/8像素精度运动矢量的搜索过程中按某种机制实施提前退出;可以按某种机制对最优1/8像素精度运动矢量做出预判。例如,可以根据相邻宏块所使用的运动矢量作出预判;又如,可以根据所有已经编码完成的宏块的统计信息作出预判。
本实施例可以为不同的帧,宏块或者宏块组选取不同的插值滤波精度,因此能够对需要精细表现的地方采用较高的插值滤波精度,对无需精细表现的地方采用较低的插值滤波精度,从而提高插值滤波的灵活性。
为便于理解,下面以具体的仿真实验结果对上述各实施例的效果进行描述:
实验中使用RM62g为平台,并采用以下设置:
使用两个参考帧,采用自适应二进制算术编码(CABAC,Context-basedAdaptive Binary Arithmetic Coding),运动估计采用全搜索,搜索范围32,只有第一帧为I帧,关闭自适应扫描。每个序列都测试4个量化参数(QP,Qualityparameter)点,分别为24,27,30,35。最后比较采用本实施例的1/8亚像素精度方案与采用AVS标准中1/4亚像素精度方案的编码性能,计算平均ΔPSNR与ΔBitrate。
在编码结构为IPPP条件下测得的结果如下表1所示:
表1
  序列   格式   PSNR(dB)   Bitrate
  Bus   CIF   0.427   -6.84%
  City   CIF   0.499   -9.92%
  Mobile   CIF   0.660   -9.91%
  Flowergarden   CIF   0.719   -8.78%
  Tempete   CIF   0.425   -7.46%
  News   CIF   0.207   -3.91%
在编码结构为IBBP条件下测得的结果如下表2所示:
表2
  序列   格式   PSNR(dB)   Bitrate
  Bus   CIF   0.267   -4.67%
  Flowergarden   CIF   0.450   -6.08%
  Tempete   CIF   0.217   -4.37%
  Mobile   CIF   0.460   -7.99%
  CIty   4CIF   0.122   -4.33%
  Mobile   480i   0.293   -4.81%
  Tempete   480i   0.127   -3.06%
  Flowergarden   576i   0.196   -2.87%
  Basketball   576i   0.125   -2.04%
由上述表1以及表2可以看出,本实施例的方案相对于AVS标准中1/4亚像素精度的解决方案有很明显的性能提高,PSNR(Peak Signal to NoiseRatio,峰值信噪比)明显增加,同时Bitrate(比特率)明显减少。
上述的实施例中的方案相比现有的先插值1/4亚像素,再由1/4亚像素插值得到1/8亚像素的方案而言,本实施例具有明显的复杂度优势:首先,现有的方法插值一个1/8亚像素需要先插值1/4亚像素,本实施例在插值1/8亚像素的过程中只用到整像素与1/2像素,至少可以节省8个1/4亚像素的插值过程,以及为了插值这些1/4亚像素所需要的额外1/2亚像素插值过程;其次,现有的方法在利用1/4亚像素插值得到1/8亚像素的过程中需要根据不同的1/8亚像素位置分为至少8类,对每类采用不同的插值流程,需要复杂的逻辑判断过程,而本方法只把1/8亚像素分为两类处理,逻辑判断极为简洁;再次,现有的方法采用6键甚至8键滤波器,运算复杂,且存取面积大。本实施例采用4键滤波器,运算次数少,存取面积小,且与现有AVS标准中的1/4亚像素高度契合。
下面介绍本发明实施例中的像素插值滤波装置,请参阅图6,本发明实施例中的像素插值滤波装置一个实施例包括:
获取模块601,用于获取视频信号的整像素的像素值;
半像素插值滤波模块602,用于采用预置的1/2像素插值方法对所述整像素的像素值进行插值滤波得到1/2像素的像素值;
水平垂直像素插值滤波模块603,用于根据所述整像素的像素值以及所述1/2像素的像素值对第一类1/8像素进行水平插值滤波以及垂直插值滤波得到第一类1/8像素的像素值;
斜向像素插值滤波模块604,用于根据所述整像素的像素值以及所述1/2像素的像素值对第二类1/8像素进行斜向插值滤波得到第二类1/8像素的像素值。
本实施例中,在获取模块601获取到整像素的像素值以及半像素插值滤波模块602获取到1/2像素的像素值之后,水平垂直像素插值滤波模块603即可对1/8像素进行水平插值滤波以及垂直插值滤波,斜向像素插值滤波模块604即可对1/8像素进行斜向插值滤波,从而得到1/8像素的像素值,因此无需计算1/4像素的像素值,所以减少了进行1/8像素插值滤波的计算量,从而提高了像素插值滤波的效率。
为便于理解,下面以一具体实例对本发明实施例中的像素插值滤波装置进行详细描述,请参阅图7,本发明实施例中像素插值滤波装置另一实施例包括:
获取模块701,用于获取视频信号的整像素的像素值;
半像素插值滤波模块702,用于采用预置的1/2像素插值方法对所述整像素的像素值进行插值滤波得到1/2像素的像素值;
水平垂直像素插值滤波模块703,用于根据所述整像素的像素值以及所述1/2像素的像素值对第一类1/8像素进行水平插值滤波以及垂直插值滤波得到第一类1/8像素的像素值;
斜向像素插值滤波模块,用于根据所述整像素的像素值以及所述1/2像素的像素值对第二类1/8像素进行斜向插值滤波得到第二类1/8像素的像素值;
本实施例中的水平垂直像素插值滤波模块703可以进一步包括:
第一4阶滤波器7031以及第二4阶滤波器7032;
所述第一4阶滤波器6031为Laczos滤波器的整数化滤波器,所述第一4阶滤波器的滤波系数为(c0,c1,c2,c3)/2n
所述第二4阶滤波器6032为Laczos滤波器的整数化滤波器,所述第二4阶滤波器的滤波系数为(d0,d1,d2,d3)/2m
所述c0,c1,c2,c3及d0,d1,d2,d3均为整数,且c0,c1,c2,c3之和为2n,d0,d1,d2,d3之和为2m
本实施例中的斜向像素插值滤波模块可以为双线性滤波器704。
下面以一实际应用场景对本实施例中的像素插值滤波装置进行描述:
本实施例中,当需要对视频信号进行亚像素插值滤波时,获取模块701可以先从视频信号中获取整像素的像素值,具体的获取方式为本领域技术人员的公知常识,此处不作限定。
在获取模块701获取到整像素的像素值之后,半像素插值滤波模块702即可根据该整像素的像素值计算1/2像素的像素值,计算1/2像素的像素值的过程可以是AVS规定的过程,或者还可以采用其他的过程,此为本领域技术人员的公知常识,此处不作限定。
本实施例中可以选择在时域宽度有限条件下,频率响应特性最接近最优插值滤波器的滤波器,即选择水平垂直像素插值滤波模块703所包含的第一4阶滤波器7031以及第二4阶滤波器7032,同时确定第一4阶滤波器7031以及第二4阶滤波器7032各自的滤波系数。
之后水平垂直像素插值滤波模块703中的第一4阶滤波器7031以及第二4阶滤波器7032根据获取模块701获取到的整像素的像素值以及半像素插值滤波模块702获取到的1/2像素的像素值对第一类1/8像素进行水平插值滤波以及垂直插值滤波得到第一类1/8像素的像素值。
同时,双线性滤波器704根据获取模块701获取到的整像素的像素值以及半像素插值滤波模块702获取到的1/2像素的像素值对第二类1/8像素进行斜向插值滤波得到第二类1/8像素的像素值。
本实施例中,在获取模块701获取到整像素的像素值以及半像素插值滤波模块702获取到1/2像素的像素值之后,水平垂直像素插值滤波模块703中的第一4阶滤波器7031以及第二4阶滤波器7032即可对1/8像素进行水平插值滤波以及垂直插值滤波,双线性滤波器704即可对1/8像素进行斜向插值滤波,从而得到1/8像素的像素值,因此无需计算1/4像素的像素值,所以减少了进行1/8像素插值滤波的计算量,从而提高了像素插值滤波的效率;
其次,本实施例中选取两个Laczos滤波器的整数化滤波器作为4阶滤波器,且为每个4阶滤波器给出可选的滤波系数(参考方法实施例中的相关内容),采用这样的4阶滤波器以及滤波系数可以在时域宽度有限条件下,使得频率响应特性最接近于最优插值滤波器的效果。
下面介绍本发明实施例中的解码系统,请参阅图8,本发明实施例中的解码系统实施例包括:
解码执行装置801,用于对码流进行解码得到当前宏块的参考视频信号,运动矢量残差以及像素残差;
像素插值滤波装置802,用于对所述参考视频信号进行1/8像素插值滤波得到插值后的参考视频信号;
本实施例中的像素插值滤波装置802与前述图6以及图7中所示的像素插值滤波装置实施例一致,此处不再赘述。
运动矢量预测装置803,用于根据所述当前宏块周围的宏块计算运动矢量预测值;
运动矢量补偿装置804,用于将所述运动矢量残差与所述运动矢量预测值相加得到实际运动矢量;
像素预测装置805,用于根据所述插值后的参考视频信号与所述实际运动矢量计算所述当前宏块的像素预测值;
重构装置806,用于将所述像素预测值与所述像素残差相加得到所述当前宏块的重构。
本实施例中的像素插值滤波装置802获取到整像素的像素值以及1/2像素的像素值之后,即可对1/8像素进行水平插值滤波以及垂直插值滤波,并可对1/8像素进行斜向插值滤波,从而得到1/8像素的像素值,因此无需计算1/4像素的像素值,所以减少了进行1/8像素插值滤波的计算量,从而提高了像素插值滤波的效率。
下面介绍本发明实施例中的视频信号处理系统,请参阅图9,本发明实施例中的视频信号处理系统实施例包括:
划分装置901,用于将获取到的视频信号划分为帧,宏块,或宏块组;
精度选择装置902,用于对于每个宏块,按照预置的选取规则选取对应的插值滤波精度;
处理装置903,用于按照所述精度选择装置902选取的插值滤波精度对不同的帧,宏块,或宏块组进行运动补偿以及运动矢量编码。
本实施例中,预置的选取规则为率失真最优规则或复杂度分级规则。
本实施例可以针对不同的宏块选取不同的插值滤波精度,所以能够调整视频信号的不同部分的精细度,以适应不同环境的需求。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上对本发明所提供的一种像素插值滤波方法及系统,解码方法及系统,视频信号处理方法及系统进行了详细介绍,对于本领域的一般技术人员,依据本发明实施例的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (12)

1.一种像素插值滤波方法,其特征在于,包括:
获取视频信号的整像素的像素值;
采用预置的1/2像素插值方法对所述整像素的像素值进行插值滤波得到1/2像素的像素值;
根据所述整像素的像素值以及所述1/2像素的像素值对第一类1/8像素进行水平插值滤波以及垂直插值滤波得到第一类1/8像素的像素值;
根据所述整像素的像素值以及所述1/2像素的像素值对第二类1/8像素进行斜向插值滤波得到第二类1/8像素的像素值。
2.根据权利要求1所述的方法,其特征在于,所述根据整像素的像素值以及所述1/2像素的像素值对第一类1/8像素进行水平插值滤波以及垂直插值滤波得到第一类1/8像素的像素值包括:
采用第一4阶滤波器以及第二4阶滤波器对和整像素位于同一水平线的1/8像素进行水平插值滤波得到1/8像素的像素值,所述水平插值滤波的输入参数为在所述同一水平线上与所述1/8像素相邻的2个整像素的像素值以及2个1/2像素的像素值;
采用第一4阶滤波器以及第二4阶滤波器对和整像素位于同一垂直线的1/8像素进行垂直插值滤波得到1/8像素的像素值,所述垂直插值滤波的输入参数为在所述同一垂直线上与所述1/8像素相邻的2个整像素的像素值以及2个1/2像素的像素值;
采用第一4阶滤波器以及第二4阶滤波器对和1/2像素位于同一水平线的1/8像素进行水平插值滤波得到1/8像素的像素值,所述水平插值滤波的输入参数为在所述同一水平线上与所述1/8像素相邻的4个1/2像素的像素值;
采用第一4阶滤波器以及第二4阶滤波器对和1/2像素位于同一垂直线的1/8像素进行垂直插值滤波得到1/8像素的像素值,所述垂直插值滤波的输入参数为在所述同一垂直线上与所述1/8像素相邻的4个1/2像素的像素值。
3.根据权利要求2所述的方法,其特征在于,
所述第一4阶滤波器为Laczos滤波器的整数化滤波器,所述第一4阶滤波器的滤波系数为(c0,c1,c2,c3)/2n
所述第二4阶滤波器为Laczos滤波器的整数化滤波器,所述第二4阶滤波器的滤波系数为(d0,d1,d2,d3)/2m
所述c0,c1,c2,c3及d0,d1,d2,d3均为整数,且c0,c1,c2,c3之和为2n,d0,d1,d2,d3之和为2m
4.根据权利要求3所述的方法,其特征在于,
所述第一4阶滤波器的滤波系数为以下参数中的任意一组:
n=4,(c0,c1,c2,c3)=(-1,14,4,-1);
n=5,(c0,c1,c2,c3)=(-3,28,8,-1);
n=5,(c0,c1,c2,c3)=(-2,28,7,-1);
n=6,(c0,c1,c2,c3)=(-6,56,15,-1);
n=6,(c0,c1,c2,c3)=(-5,55,15,-1);
n=7,(c0,c1,c2,c3)=(-11,111,30,-2);
n=8,(c0,c1,c2,c3)=(-21,222,60,-5);
n=8,(c0,c1,c2,c3)=(-21,222,59,-4);
n=9,(c0,c1,c2,c3)=(-43,445,119,-9);
n=10,(c0,c1,c2,c3)=(-85,889,238,-18);
n=10,(c0,c1,c2,c3)=(-86,890,238,-18);
所述第二4阶滤波器的滤波系数为以下参数中的任意一组:
m=4,(d0,d1,d2,d3)=(-1,4,14,-1);
m=5,(d0,d1,d2,d3)=(-1,8,28,-3);
m=5,(d0,d1,d2,d3)=(-1,7,28,-2);
m=6,(d0,d1,d2,d3)=(-1,15,56,-6);
m=6,(d0,d1,d2,d3)=(-1,15,55,-5);
m=7,(d0,d1,d2,d3)=(-2,30,111,-11);
m=8,(d0,d1,d2,d3)=(-5,60,222,-21);
m=8,(d0,d1,d2,d3)=(-4,59,222,-21);
m=9,(d0,d1,d2,d3)=(-9,119,445,-43);
m=10,(d0,d1,d2,d3)=(-18,238,889,-85);
m=10,(d0,d1,d2,d3)=(-18,238,890,-86)。
5.根据权利要求1所述的方法,其特征在于,所述根据整像素的像素值以及所述1/2像素的像素值对第二类1/8像素进行斜向插值滤波得到第二类1/8像素的像素值包括:
对于除所述第一类1/8像素之外的其他1/8像素,采用双线性滤波器,根据与所述第二类1/8像素相邻的,呈正方形包围所述第二类1/8像素的2个整像素的像素值以及2个1/2像素的像素值对所述第二类1/8像素进行斜向插值滤波得到所述第二类1/8像素的像素值。
6.根据权利要求1,2或5中任一项所述的方法,其特征在于,所述方法还包括:
若所述第一类1/8像素中任意一个1/8像素的像素值超过预置门限值,则将该超过预置门限值的1/8像素的像素值设置为所述预置门限值;
若所述第二类1/8像素中任意一个1/8像素的像素值超过预置门限值,则将该超过预置门限值的1/8像素的像素值设置为所述预置门限值。
7.一种解码方法,其特征在于,包括:
对码流进行解码得到当前宏块的参考视频信号,运动矢量残差以及像素残差;
按照前述权利要求1至6中任一种像素插值滤波的方式对所述参考视频信号进行1/8像素插值滤波得到插值后的参考视频信号;
根据所述当前宏块周围的宏块计算运动矢量预测值;
将所述运动矢量残差与所述运动矢量预测值相加得到实际运动矢量;
根据所述插值后的参考视频信号与所述实际运动矢量计算所述当前宏块的像素预测值;
将所述像素预测值与所述像素残差相加得到所述当前宏块的重构。
8.根据权利要求7所述的方法,其特征在于,所述对码流进行解码得到当前宏块的参考视频信号,运动矢量残差以及像素残差包括:
对码流进行解码得到当前宏块的参考视频信号;
通过对码流利用逆熵编码进行解码得到当前宏块的运动矢量残差;
通过对码流利用逆熵编码、反量化和反离散余弦变换进行解码得到当前宏块的像素残差。
9.一种像素插值滤波装置,其特征在于,包括:
获取模块,用于获取视频信号的整像素的像素值;
半像素插值滤波模块,用于采用预置的1/2像素插值方法对所述整像素的像素值进行插值滤波得到1/2像素的像素值;
水平垂直像素插值滤波模块,用于根据所述整像素的像素值以及所述1/2像素的像素值对第一类1/8像素进行水平插值滤波以及垂直插值滤波得到第一类1/8像素的像素值;
斜向像素插值滤波模块,用于根据所述整像素的像素值以及所述1/2像素的像素值对第二类1/8像素进行斜向插值滤波得到第二类1/8像素的像素值。
10.根据权利要求9所述的装置,其特征在于,所述水平垂直像素插值滤波模块包括:
第一4阶滤波器以及第二4阶滤波器;
所述第一4阶滤波器为Laczos滤波器的整数化滤波器,所述第一4阶滤波器的滤波系数为(c0,c1,c2,c3)/2n
所述第二4阶滤波器为Laczos滤波器的整数化滤波器,所述第二4阶滤波器的滤波系数为(d0,d1,d2,d3)/2m
所述c0,c1,c2,c3及d0,d1,d2,d3均为整数,且c0,c1,c2,c3之和为2n,d0,d1,d2,d3之和为2m
11.根据权利要求9或10所述的装置,其特征在于,所述斜向像素插值滤波模块为双线性滤波器。
12.一种解码系统,其特征在于,包括:
解码执行装置,用于对码流进行解码得到当前宏块的参考视频信号,运动矢量残差以及像素残差;
如权9至11中任一项所述的像素插值滤波装置,用于对所述参考视频信号进行1/8像素插值滤波得到插值后的参考视频信号;
运动矢量预测装置,用于根据所述当前宏块周围的宏块计算运动矢量预测值;
运动矢量补偿装置,用于将所述运动矢量残差与所述运动矢量预测值相加得到实际运动矢量;
像素预测装置,用于根据所述插值后的参考视频信号与所述实际运动矢量计算所述当前宏块的像素预测值;
重构装置,用于将所述像素预测值与所述像素残差相加得到所述当前宏块的重构。
CN 200910203237 2009-05-25 2009-05-25 像素插值滤波方法及装置,解码方法及系统 Active CN101902632B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 200910203237 CN101902632B (zh) 2009-05-25 2009-05-25 像素插值滤波方法及装置,解码方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 200910203237 CN101902632B (zh) 2009-05-25 2009-05-25 像素插值滤波方法及装置,解码方法及系统

Publications (2)

Publication Number Publication Date
CN101902632A CN101902632A (zh) 2010-12-01
CN101902632B true CN101902632B (zh) 2013-03-20

Family

ID=43227781

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 200910203237 Active CN101902632B (zh) 2009-05-25 2009-05-25 像素插值滤波方法及装置,解码方法及系统

Country Status (1)

Country Link
CN (1) CN101902632B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103747251B (zh) * 2013-09-30 2017-08-08 北京大学深圳研究生院 一种视频图像的插值优化方法及滤波器
US9924191B2 (en) * 2014-06-26 2018-03-20 Qualcomm Incorporated Filters for advanced residual prediction in video coding
CN106331722B (zh) 2015-07-03 2019-04-26 华为技术有限公司 图像预测方法和相关设备
CN106331703B (zh) 2015-07-03 2020-09-08 华为技术有限公司 视频编码和解码方法、视频编码和解码装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1750659A (zh) * 2004-09-14 2006-03-22 华为技术有限公司 插值图像内存组织、分数像素生成及预测误差指标计算方法
CN101217667A (zh) * 2008-01-11 2008-07-09 北京中星微电子有限公司 四分之一像素插值方法及装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1750659A (zh) * 2004-09-14 2006-03-22 华为技术有限公司 插值图像内存组织、分数像素生成及预测误差指标计算方法
CN101217667A (zh) * 2008-01-11 2008-07-09 北京中星微电子有限公司 四分之一像素插值方法及装置

Also Published As

Publication number Publication date
CN101902632A (zh) 2010-12-01

Similar Documents

Publication Publication Date Title
US8279923B2 (en) Video coding method and video coding apparatus
JP5413191B2 (ja) 動画像符号化方法及び装置並びに動画像復号装置
JP5378791B2 (ja) 適応補間を使用する映像符号化及び復号化の方法と装置
US8054882B2 (en) Method and system for providing bi-directionally predicted video coding
CN103152579B (zh) 用于视频编码及解码的环内自适应维纳滤波器
CN103460700A (zh) 以帧内预测模式解码图像的方法
Dar et al. Motion-compensated coding and frame rate up-conversion: Models and analysis
US20070098067A1 (en) Method and apparatus for video encoding/decoding
CN103119937A (zh) 用于解块滤波的方法和装置以及利用该方法和装置进行编码和解码的方法和装置
KR101653039B1 (ko) 복호화 정보를 이용한 해상도 변환 장치 및 그 방법
US9271005B2 (en) Multi-pass video encoder and methods for use therewith
US7936824B2 (en) Method for coding and decoding moving picture
CN104320657B (zh) Hevc无损视频编码的预测模式选择方法及相应的编码方法
JP2010010950A (ja) 画像符号化/復号化方法及び装置
CN102057680A (zh) 运动图像编码/解码方法和装置
EP1449384A2 (en) Reduced-complexity video decoding using larger pixel-grid motion compensation
KR20140043743A (ko) 코딩된 이미지 파티션들을 필터링하기 위한 방법 및 디바이스
JP2000201354A (ja) 動画像符号化装置
CN103327319A (zh) 利用缩放后的运动搜索识别运动矢量候选的方法与设备
CN101902632B (zh) 像素插值滤波方法及装置,解码方法及系统
Chiu et al. Decoder-side motion estimation and wiener filter for HEVC
Flierl et al. Video coding with superimposed motion-compensated signals: applications to H. 264 and beyond
Sun et al. Rate distortion modeling and adaptive rate control scheme for high efficiency video coding (HEVC)
CN103875246A (zh) 影像编码方法、装置、影像解码方法、装置及它们的程序
US20150208082A1 (en) Video encoder with reference picture prediction and methods for use therewith

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant