CN103299626B - 去块滤波 - Google Patents

去块滤波 Download PDF

Info

Publication number
CN103299626B
CN103299626B CN201180064761.8A CN201180064761A CN103299626B CN 103299626 B CN103299626 B CN 103299626B CN 201180064761 A CN201180064761 A CN 201180064761A CN 103299626 B CN103299626 B CN 103299626B
Authority
CN
China
Prior art keywords
pixel
line
block boundary
skew
pixel 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
CN201180064761.8A
Other languages
English (en)
Other versions
CN103299626A (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.)
Ericsson Co ltd
Telefonaktiebolaget LM Ericsson AB
Original Assignee
Telefonaktiebolaget LM Ericsson AB
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=46507326&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=CN103299626(B) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Telefonaktiebolaget LM Ericsson AB filed Critical Telefonaktiebolaget LM Ericsson AB
Priority to CN201610702114.XA priority Critical patent/CN106101707B/zh
Publication of CN103299626A publication Critical patent/CN103299626A/zh
Application granted granted Critical
Publication of CN103299626B publication Critical patent/CN103299626B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/86Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness
    • H04N19/865Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness with detection of the former encoding block subdivision in decompressed video
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/117Filters, e.g. for pre-processing or post-processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/182Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a pixel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/86Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness

Abstract

可以通过基于块(10)中的具有像素(11、13、15、17)的线(12)中的像素(11、13)的像素值并且基于相邻块(20)中的相应的具有像素(21、23、25、27)的线(22)中的像素(21、23)的像素值计算偏移来减小视频帧中的块(10)与相邻块(20)之间的块边界(1)处的块效应。将该偏移加至具有像素(11、13、15、17)的线(12)中与块边界(1)相距最近的像素(11)的像素值,并且从相应的具有像素(21、23、25、27)的线(22)中与块边界(1)相距最近的像素(21)的像素值中减去该偏移。由此产生的去块滤波器具有良好的低通特性并且对于减小块效应是有效的。

Description

去块滤波
技术领域
本描述涉及用于减小块边界处的块效应的去块滤波。
背景技术
在视频编码标准中使用去块滤波器以防止块效应。因为将原始视频划分为相对独立地处理的块,因此出现了块效应。例如,块效应可能由于不同的对块的帧内预测、量化效应和运动补偿而出现。下面描述去块的两种特定的变型。
H.264去块
在诸如H.264等的现有的视频编码中,在预测和残差重构之后、但是在存储重构以便稍后在对后续帧进行编码或解码时进行参考之前,存在去块滤波器,也称作环路滤波器。去块滤波是由多个步骤构成,例如,滤波器决策、滤波操作、截断函数和像素值的改变。关于是否对界线进行滤波的决策是基于对多个条件的评估来做出的。滤波器决策取决于宏块(MB)类型、相邻块之间的运动向量(MV)差别、相邻块是否具有编码的残差以及取决于当前块和/或相邻块的局部结构。
然后,针对像素的滤波的量尤其取决于该像素相对于块界线或边界的位置以及用于残差编码的量化参数(QP)值。
滤波器决策基于将三个像素差与三个阈值进行比较。这些阈值适应量化参数(QP)。例如,假设垂直块边界是:
a b c d|e f g h
其中,a、b、c和d表示当前块中像素行的像素的像素值,而e、f、g和h表示相邻块中相应像素行的像素的相应像素值。如果满足下面的条件,例如,abs(d-e)<thr1、abs(c-d)<thr2和abs(e-f)<thr2,其中,thr1和thr2是基于QP来调整的,则滤波器决策是肯定的。
在H.264中存在两个滤波模式。在称作常规滤波的第一滤波模式中,可以使用delta值来描述滤波,滤波以该delta值改变当前的值。针对与块边界相距最近的像素的滤波是d’=d+delta和e’=e-delta,其中,已经截去了delta,截到阈值±thr3,即,截到由QP约束的值。由此,与针对低QP相比,针对高QP允许更多的滤波。可以将截断描述为delta_clipped=max(-thr3,min(thr3,delta)),其中,thr3控制滤波器的强度。更大的thr3值意味着滤波更强,这意味着将发生更强的低通滤波效应。
如果下面的两个条件中任意一个也成立,例如,abs(b-d)<thr2和abs(e-g)<thr2,则可以增加滤波器的强度。通过更少地截断delta(例如,允许更多的变型)来调节滤波器的强度。
当满足下面的条件时,abs(d-e)<thr1/4,称作强滤波的第二滤波模式仅应用于帧内宏块边界。
参照List等的Adaptive Deblocking Filter,IEEE Transactions on Circuitsand Systems for Video Technology,vol.13,no.7,July 2003以得到关于H.264中去块滤波的更多信息。
HEVC草案中的去块
在草案HEVC(高效视频编码)规范“Test Model under Consideration(考虑的测试模型)”的ITU-T SG16 WP3文档JCTVC-B205的第6.5章的内环滤波器的处理中,去块滤波器不同于H.264而工作。如果边界的一侧上的块中至少一个在内部或者具有非零系数,或者块的运动向量分量之差大于或等于一个整数像素,则执行滤波。例如,当对具有以下垂直块边界的块之间的界线进行滤波时,
p3i p2i p1i p0i|q0i q1i q2i q3i
其中,pji表示当前块中行号i的像素号j的像素值,qji表示相邻块中行号i的像素号j的像素值,i=0...7,j=0...3,则还应当满足下面的条件:
d=|p22-2×p12+p02|+|q22-2×q12+q02|+|p25-2×p15+p05|+|q25-2×q15+q05|<β
其中,β取决于QP。在上面提到的HEVC规范中,存在β的表格,其中,β随着QP而增加。
如果满足这些条件并且在当前块与相邻块之间完成滤波,则执行两种类型的滤波(其分别称作弱滤波和强滤波)中一种。根据下面的条件,针对每一条线单独地完成在强滤波与弱滤波之间的选择。对于每一条线i=0...7,如果所有下面的条件为真,则执行强滤波,否则执行弱滤波:
d<(β>>2)
(|p3i-p0i|+|q0i-q3i|)<(β>>3)
|p0i-q0i|<((5×tC+1)>>1)
其中,tC和β取决于QP,并且>>表示右移运算符。
HEVC草案中的弱滤波
基于上面的条件来执行弱滤波。实际的滤波是通过计算偏移(Δ)、将该偏移加至原始像素值并且将总和截断到范围0-255内的经滤波的输出像素值来工作的:
Δ=Clip(-tC,tC,(13×(q0i-p0i)+4×(q1i-p1i)-5×(q2i-p2i)+16)>>5))
p0i=Clip0-255(p0i+Δ)
q0i=Clip0-255(q0i-Δ)
p1i=Clip0-255(p1i+Δ/2)
q1i=Clip0-255(q1i-Δ/2)
其中,截断函数Clip(A,B,x)被定义为如果x<A则Clip(A,B,x)=A,如果x>B则Clip(A,B,x)=B,并且如果A≤x≤B则Clip(A,B,x)=x,并且将Clip0-255(x)定义为Clip(0,255,x)。
HEVC草案中的强滤波
通过下面的一组操作来执行强滤波模式:
p0i=Clip0-255((p2i+2×p1i+2×p0i+2×q0i+q1i+4)>>3)
q0i=Clip0-255((p1i+2×p0i+2×q0i+2×q1i+q2i+4)>>3)
p1i=Clip0-255((p2i+p1i+p0i+q0i+2)>>2)
q1i=Clip0-255((p0i+q0i+q1i+q2i+2)>>2)
p2i=Clip0-255((2×p3i+3×p2i+p1i+p0i+q0i+4)>>3)
q2i=Clip0-255((p0i+q0i+q1i+3×q2i+2×q3i+4)>>3)
HEVC中去块的一个问题是弱滤波器不具有良好的低通特性。可以看出,来自块界线的第一像素和第二像素是通过分别添加Δ或减去Δ/2来修改的。这种滤波器不能移除可能出现在块界线附近的高频并且不能移除振荡。此外,HEVC中滤波器的频率特性显示当对来自块边界的第二像素(p1i和q1i)进行滤波时对较高频率的略微放大,这会导致编码器的更差的速率失真(RD)性能。此外,尽管在块边界的不同侧上,信号的结构可能是不同的,但是像素p1i的偏移在幅度上等于像素q1i的偏移。因此,HEVC滤波器没有很好地适应块边界的一侧的局部结构。
因此,需要一种可以用于减小块边界处的块效应并且不具有上述缺点的有效的去块滤波器。
发明内容
一般目的是防止视频帧中像素块之间的块边界处的块效应。
本文公开的实施例满足了该目的和其它目的。
这些实施例的一个方面定义了一种减小视频帧中像素块与相邻像素块之间的块边界处的块效应的方法。所述方法基于(9×(q0-p0)-3×(q1-p1))/16计算第一偏移,其中,p0表示所述块中像素线中与所述块边界相距最近的像素的像素值,p1表示所述像素线中与所述块边界相距第二近的像素的像素值,q0表示所述相邻块中相应的像素线中与所述块边界相距最近的像素的像素值,并且q1表示所述相应的像素线中与所述块边界相距第二近的像素的像素值。所述像素线和所述相应的像素线垂直于所述块边界。通过将所述第一偏移加至所述像素线中与所述块边界相距最近的所述像素的所述像素值来修改所述像素的所述像素值,以形成修改后的像素值。相应地,通过从与所述块边界相距最近的、但是在所述相应的像素线中所述像素的所述像素值中减去所述第一偏移来修改所述像素的所述像素值,以形成修改后的像素值。
在该方面的可选实施例中,将所述第一偏移计算为等于(9×(q0-p0)-3×(q1-p1)+8)>>4,其中,>>表示右移运算。
在该方面的可选实施例中,所述方法还包括:通过以下方式来将所述第一偏移截断到-tC与tC的间隔内:如果所述第一偏移小于-tC,则将所述第一偏移设置为等于-tC,并且如果所述第一偏移大于tC,则将所述第一偏移设置为等于tC,其中,tC是取决于指派给所述块的量化参数值的阈值。
在该方面的可选实施例中,所述方法还包括:将所述像素线中与所述块边界相距最近的所述像素的所述修改后的像素值截断到零与定义的最大值的间隔内,以及将所述相应的像素线中与所述块边界相距最近的所述像素的所述修改后的像素值截断到零与所述定义的最大值的间隔内。该可选的截断是通过以下方式来实现的:如果所述修改后的像素值小于零,则将所述修改后的像素值设置为等于零,并且如果所述修改后的像素值大于所述定义的最大值,则将所述修改后的像素值设置为等于所述定义的最大值。
在该方面的可选实施例中,所述方法还包括:基于(p2+p0-2×p1+2×Δ)/4计算第二偏移,其中,p2表示所述像素线中与所述块边界相距第三近的像素的像素值,并且Δ表示所述第一偏移。在该可选的实施例中,所述方法还包括:基于(q2+q0-2×q1-2×Δ)/4计算第三偏移,其中,q2表示所述相应的像素线中与所述块边界相距第三近的像素的像素值。通过将所述第二偏移加至所述像素线中与所述块边界相距第二近的所述像素的所述像素值来修改所述像素线中与所述块边界相距第二近的所述像素的所述像素值,以形成修改后的像素值。相应地,在该可选实施例中,所述方法还包括:通过将所述第三偏移加至所述相应的像素线中与所述块边界相距第二近的所述像素的所述像素值来修改所述相应的像素线中与所述块边界相距第二近的所述像素的所述像素值,以形成修改后的像素值。
在该方面的可选实施例中,将所述第二偏移计算为等于(((p2+p0+1)>>1)-p1+Δ)>>1,其中,>>表示右移运算,并且将所述第三偏移计算为等于(((q2+q0+1)>>1)-q1-Δ)>>1。
在该方面的可选实施例中,所述方法还包括:将所述第二偏移截断到-tC2与tC2的间隔内并且将所述第三偏移截断到-tC2与tC2的间隔内,其中,tC2是取决于指派给所述块的量化参数值的阈值。该可选的截断是通过以下方式来:如果所述第二偏移或第三偏移小于-tC2,则将所述第二偏移或第三偏移设置为等于-tC2,并且如果所述第二偏移或第三偏移大于tC2,则将所述第二偏移或第三偏移设置为等于tC2
在该方面的可选实施例中,所述方法还包括:将所述像素线中与所述块边界相距第二近的所述像素的所述修改后的像素值截断到零与定义的最大值的间隔内,并且将所述相应的像素线中与所述块边界相距第二近的所述像素的所述修改后的像素值截断到零与所述定义的最大值的间隔内。该可选的截断是通过以下方式来实现的:如果所述修改后的像素值小于零,则将所述修改后的像素值设置为等于零,并且如果所述修改后的像素值大于所述定义的最大值,则将所述修改后的像素值设置为等于所述定义的最大值。
在该方面的可选实施例中,所述方法还包括:基于(p3+p1-2×p2+2×Δp1)/4计算第四偏移,其中,p3表示所述像素线中与所述块边界相距第四近的像素的像素值,并且Δp1表示所述第二偏移。在该可选的实施例中,所述方法还包括:基于(q3+q1-2×q2+2×Δq1)/4计算第五偏移,其中,q3表示所述相应的像素线中与所述块边界相距第四近的像素的像素值,并且Δq1表示所述第三偏移。通过将所述第四偏移加至所述像素线中与所述块边界相距第三近的所述像素的所述像素值来修改所述像素线中与所述块边界相距第三近的所述像素的所述像素值,以形成修改后的像素值。在该可选实施例中,所述方法还包括:通过将所述第五偏移加至所述相应的像素线中与所述块边界相距第三近的所述像素的所述像素值来修改所述相应的像素线中与所述块边界相距第三近的所述像素的所述像素值,以形成修改后的像素值。
在该方面的可选实施例中,将所述第四偏移计算为等于(((p3+p1+1)>>1)-p2+Δp1)>>1,其中,>>表示右移运算,并且将所述第五偏移计算为等于(((q3+q1+1)>>1)-q2+Δq1)>>1。
在该方面的可选实施例中,去块滤波器单元基于(9×(q0-p0)-3×(q1-p1))/16计算所述第一偏移。所述去块滤波器单元通过将所述第一偏移加至所述像素线中与所述块边界相距最近的所述像素的所述像素值来修改所述像素线中与所述块边界相距最近的所述像素的所述像素值,以形成修改后的像素值。所述去块滤波器单元还通过从所述相应的像素线中与所述块边界相距最近的所述像素的所述像素值中减去所述第一偏移来修改所述相应的像素线中与所述块边界相距最近的所述像素的所述像素值,以形成修改后的像素值。
这些实施例的另一个方面定义了一种用于减小视频帧中像素块与相邻的像素块之间的块边界处的块效应的去块滤波器单元。所述去块滤波器单元包括:第一偏移计算器,被配置为基于(9×(q0-p0)-3×(q1-p1))/16计算第一偏移,其中,p0表示所述块中像素线中与所述块边界相距最近的像素的像素值,p1表示所述像素线中与所述块边界相距第二近的像素的像素值,q0表示所述相邻块中所述相应的像素线中与所述块边界相距最近的像素的像素值,并且q1表示所述相应的像素线中与所述块边界相距第二近的像素的像素值。所述像素线和所述相应的像素线垂直于所述块边界。所述去块滤波器单元还包括:像素值修改器,被配置为通过将所述第一偏移加至所述像素线中与所述块边界相距最近的所述像素的所述像素值来修改所述像素的所述像素值,以形成修改后的像素值。所述像素值修改器还被配置为通过从与所述块边界相距最近的、但是在所述相应的像素线中所述像素的所述像素值中减去所述第一偏移来修改所述像素的所述像素值,以形成修改后的像素值。
在该方面的可选实施例中,所述第一偏移计算器被配置为将所述第一偏移计算为等于(9×(q0-p0)-3×(q1-p1)+8)>>4,其中,>>表示右移运算。
在该方面的可选实施例中,所述去块滤波器单元包括:第一截断单元,被配置为通过以下方式来将所述第一偏移截断到-tC与tC的间隔内:如果所述第一偏移小于-tC,则将所述第一偏移设置为等于-tC,并且如果所述第一偏移大于tC,则将所述第一偏移设置为等于tC,其中,tC是取决于指派给所述块的量化参数值的阈值。
在该方面的可选实施例中,所述去块滤波器单元包括:第二截断单元,被配置为将所述像素线中与所述块边界相距最近的所述像素的所述修改后的像素值截断到零与定义的最大值的间隔内,并且将所述相应的像素线中与所述块边界相距最近的所述像素的所述修改后的像素值截断到零与所述定义的最大值的间隔内。该可选的截断是由所述可选的第二截断单元通过以下方式实现的:如果所述修改后的像素值小于零,则将所述修改后的像素值设置为等于零,并且如果所述修改后的像素值大于所述定义的最大值,则将所述修改后的像素值设置为等于所述定义的最大值。
在该方面的可选实施例中,所述去块滤波器单元包括:第二偏移计算器,被配置为基于(p2+p0-2×p1+2×Δ)/4计算第二偏移,其中,p2表示所述像素线中与所述块边界相距第三近的像素的像素值,并且Δ表示所述第一偏移。在该可选实施例中,所述去块滤波器单元还包括:第三偏移计算器,被配置为基于(q2+q0-2×q1-2×Δ)/4计算第三偏移,其中,q2表示所述相应的像素线中与所述块边界相距第三近的像素的像素值。在该可选的实施例中,所述像素值修改器被配置为通过将所述第二偏移加至所述像素线中与所述块边界相距第二近的所述像素的所述像素值来修改所述像素线中与所述块边界相距第二近的所述像素的所述像素值,以形成修改后的像素值,并且被配置为通过将所述第三偏移加至所述相应的像素线中与所述块边界相距第二近的所述像素的所述像素值来修改所述相应的像素线中与所述块边界相距第二近的所述像素的所述像素值,以形成修改后的像素值。
在该方面的可选实施例中,所述第二偏移计算器被配置为将所述第二偏移计算为等于(((p2+p0+1)>>1)-p1+Δ)>>1,其中,>>表示右移运算,并且所述第三偏移计算器被配置为将所述第三偏移计算为等于(((q2+q0+1)>>1)-q1-Δ)>>1。
在该方面的可选实施例中,所述去块滤波器单元包括:第三截断单元,被配置为将所述第二偏移截断到-tC2与tC2的间隔内并且将所述第三偏移截断到-tC2与tC2的间隔内,其中,tC2是取决于指派给所述块的量化参数值的阈值。该可选的截断是由所述可选的第三截断单元通过以下方式来实现的:如果所述第二偏移或第三偏移小于-tC2,则将所述第二偏移或第三偏移设置为等于-tC2,并且如果所述第二偏移或第三偏移大于tC2,则将所述第二偏移或第三偏移设置为等于tC2
在该方面的可选实施例中,所述去块滤波器单元包括:第二截断单元,被配置为将所述像素线中与所述块边界相距第二近的所述像素的所述修改后的像素值截断到零与定义的最大值的间隔内并且将所述相应的像素线中与所述块边界相距第二近的所述像素的所述修改后的像素值截断到零与所述定义的最大值的间隔内。该可选的截断是由所述可选的第二截断单元通过以下方式来实现的:如果所述修改后的像素值小于零,则将所述修改后的像素值设置为等于零,并且如果所述修改后的像素值大于所述定义的最大值,则将所述修改后的像素值设置为等于所述定义的最大值。
在该方面的可选实施例中,所述去块滤波器单元包括:第四偏移计算器,被配置为:基于(p3+p1-2×p2+2×Δp1)/4计算第四偏移,其中,p3表示所述像素线中与所述块边界相距第四近的像素的像素值,并且Δp1表示所述第二偏移。在该可选的实施例中,所述去块滤波器单元还包括:第五偏移计算器,被配置为:基于(q3+q1-2×q2+2×Δq1)/4计算第五偏移,其中,q3表示所述相应的像素线中与所述块边界相距第四近的像素的像素值,并且Δq1表示所述第三偏移。在该可选的实施例中,所述像素值修改器被配置为:通过将所述第四偏移加至所述像素线中与所述块边界相距第三近的所述像素的所述像素值来修改所述像素线中与所述块边界相距第三近的所述像素的所述像素值,以形成修改后的像素值,并且通过将所述第五偏移加至所述相应的像素线中与所述块边界相距第三近的所述像素的所述像素值来修改所述相应的像素线中与所述块边界相距第三近的所述像素的所述像素值,以形成修改后的像素值。
在该方面的可选实施例中,所述第四偏移计算器被配置为将所述第四偏移计算为等于(((p3+p1+1)>>1)-p2+Δp1)>>1,其中,>>表示右移运算,并且所述第五偏移计算器被配置将所述第五偏移计算为等于(((q3+q1+1)>>1)-q2+Δq1)>>1。
这些实施例的其它方面定义了编码器和解码器,其分别包括上文所定义的去块滤波器单元。
此外,这些实施例的一个方面定义了一种用户设备,包括存储器,被配置为存储编码的视频帧,如上文所定义的解码器,被配置为将所述编码的视频帧解码为解码的视频帧,以及媒体播放器,被配置为将所述解码的视频帧转化为能够在显示器上显示的视频数据。
另一方面定义了一种网络设备,作为或者属于进行发送的单元与进行接收的用户设备之间的通信网络中网络节点。所述网络设备包括上文所定义的编码器和/或解码器。
这些实施例的另一方面定义了一种用于减小视频帧中像素块与相邻的像素块之间的块边界处的块效应的计算机程序。所述计算机程序包括当在计算机上运行时使所述计算机执行以下操作的代码装置:基于(9×(q0-p0)-3×(q1-p1))/16计算偏移,其中,p0表示所述块中像素线中与所述块边界相距最近的像素的像素值,p1表示所述像素线中与所述块边界相距第二近的像素的像素值,q0表示所述相邻块中所述相应的像素线中与所述块边界相距最近的像素的像素值,并且q1表示所述相应的像素线中与所述块边界相距第二近的像素的像素值。所述像素线和所述相应的像素线垂直于所述块边界。还使所述计算机通过将所述偏移加至所述像素线中与所述块边界相距最近的所述像素的所述像素值来修改所述像素的所述像素值。所述代码装置还使所述计算机通过从所述相应的像素线中与所述块边界相距最近的所述像素的所述像素值中减去所述偏移来修改所述像素的所述像素值。
这些实施例的另一方面定义了一种计算机程序产品,包括:计算机可读代码装置和如上文所定义的计算机程序,所述计算机程序产品存储在所述计算机可读装置上。
本实施例实现了块效应的有效减小并且还具有良好的低通特性。
附图说明
通过参照下面结合附图给出的描述,可以最佳地理解本发明及其其它目的和优点,在附图中:
图1是示出了根据一个实施例的减小块效应的方法的流程图;
图2A和图2B示出了可以对其应用去块滤波的相邻块和块边界的两个实施例;
图3是示出了根据一个实施例的图1中方法的额外的可选步骤的流程图;
图4是示出了根据一个实施例的图1和图5中方法的额外的可选步骤的流程图;
图5是示出了根据另一个实施例的图1中方法的额外的可选步骤的流程图;
图6是示出了根据一个实施例的图5中的方法的额外的可选步骤的流程图;
图7是示出了根据另一个实施例的图5中的方法的额外的可选步骤的流程图;
图8是根据一个实施例的去块滤波器单元的示意性框图;
图9是根据另一个实施例的去块滤波器单元的示意性框图;
图10是根据一个实施例的计算机中的去块滤波器模块的软件实现的示意性框图;
图11是根据一个实施例的编码器的示意性框图;
图12是根据一个实施例的解码器的示意性框图;
图13是根据一个实施例的用户设备的示意性框图;以及
图14是根据一个实施例的包括网络设备的通信网络的一部分的概述图。
具体实施方式
在附图中,针对类似的或相应的元件,使用了相同的参考数字。
实施例大体上涉及用于防止视频帧中块边界上的块效应的去块滤波。实施例使用具有良好的频率特性的去块滤波器。该去块滤波器被配置为如果块边界上的像素值形成斜坡,则不修改这些像素值,但是如果这些像素值取而代之地具有阶梯的形式,则对这些像素值进行平滑。这暗指去块滤波器将具有良好的低通特性,并且可以移除可能出现在块边界附近的高频。
图1是根据一个实施例的减小视频帧中具有多个像素的块与具有多个像素的相邻块之间的块边界处的块效应的方法的流程图。如本领域中众所周知的,将视频帧划分为根据各个可用的帧内编码模式和帧间编码模式编码和解码的非重叠的像素块。通常,将视频帧划分为具有16×16个像素的非重叠的宏块。可以进而将这种宏块划分为具有不同大小(例如,4×4个像素或8×8个像素)的更小的块。然而,根据这些实施例,矩形块也是可能的,例如,4×8、8×4、8×16或者16×8。这些实施例可以应用于任何此类像素块,其包括宏块或者甚至更大的像素块。
在新出现的高效视频编码(HEVC)标准中,使用了编码单元(CU)、预测单元(PU)和变换单元(TU)。预测单元被定义在编码单元中,并且包含帧内预测模式或帧间预测模式。变换单元被定义在编码单元中,并且最大的变换大小是32×32个像素,而最小的大小是4×4个像素。CU大小当前从64×64个像素(最大)到4×4个像素(最小)不等。通过这种方式,可以将最大的CU划分为具有取决于帧的局部特性的“粒度水平”的较小的CU。这意味着可以将最大的CU划分为具有不同大小的较小的CU。这些实施例也可以结合这些编码单元使用,编码单元被视为由本文所使用的表达“像素块”涵盖。
块中每一个像素具有相应的像素值。视频帧通常具有指派给这些像素的颜色值,其中,用定义的颜色格式来表示这些颜色值。通用颜色格式之一针对每一个像素使用一个亮度分量和两个色度分量(但是存在其它格式),例如,针对每一个像素使用红色分量、绿色分量和蓝色分量。
通常,可能采用不同的滤波决策和不同的去块滤波器来单独地完成亮度分量滤波和色度分量滤波。但是,在诸如HEVC等的色度滤波中可能使用亮度滤波决策。可以应用这些实施例以对亮度分量进行滤波,对色度分量进行滤波,或者对亮度分量和色度分量二者进行滤波。在特定的实施例中,应用这些实施例以实现亮度或明亮度(luma)滤波。然后,可以在针对诸如色度等的其它分量做出滤波决策时使用针对诸如明亮度等的一个分量的滤波决策或部分滤波决策。
可以对相邻块之间的边界、边缘或界线进行去块滤波。因此,这些边界可以是在视频帧中并排地呈现的两个相邻块10、20之间的垂直边界1(参见图2A)。可替换地,这些边界是两个相邻块10、20之间的水平边界1(参见图2B),其中,在视频帧中,一个块10被部署在另一个块20之上。在特定的实施例中,首先从最左侧的边界开始并且按照边界的几何顺序向右手侧贯穿边界,来对垂直边界进行滤波。然后,从顶部的边界开始并且按照边界的几何顺序向底部贯穿边界,来对水平边界进行滤波。然而,这些实施例不限于这些特定的滤波顺序,并且实际上可以应用于任何预定的滤波顺序。在特定的实施例中,优选地不对视频帧的边缘处的边界进行滤波,因此从去块滤波中排除视频帧的边缘处的边界。
该实施例的方法在步骤S1中开始,在步骤S1中,针对块10中具有像素11、13、15、17的线12计算第一偏移或delta。根据这些实施例,基于(9×(q0-p0)-3×(q1-p1))/16来计算该第一偏移,其中,p0表示块10中具有像素11、13、15、17的线12中与块边界1相距最近的像素11的像素值,p1表示具有像素11、13、15、17的线12中与块边界1相距第二近的像素13的像素值,q0表示相邻块20中相应的或相对的具有像素21、23、25、27的线22中与块边界1相距最近的像素21的像素值,并且q1表示相应的具有像素21、23、25、27的线22中与块边界1相距第二近的像素23的像素值。
块10中具有像素11、13、15、17的线12和相邻块20中相应的具有像素21、23、25、27的线22属于相同的水平像素线,即,像素行,其在垂直边界1上延伸(参见图2A),或者属于相同的垂直像素线,即,像素列,其在水平边界1上延伸(参见图2B)。因此,具有像素11、13、15、17的线12和相应的具有像素21、23、25、27的线22垂直于块10与相邻块20之间的块边界1。此外,块10中具有像素11、13、15、17的线12和相邻块20中相应的具有像素21、23、25、27的线22具有相同的线号。例如,如果块10和相邻块20均包括N个(例如,8个)像素行或像素列(其具有行号或列号i=0...N-1),则具有像素11、13、15、17的线10在块10中具有线号i,并且相应的具有像素21、23、25、27的线20也具有线号i,但是是在相邻块20中具有线号i。因此,块中具有像素11、13、15、17的线12和相邻块20中相应的具有像素21、23、25、27的线22是关于块边界1的相对线。
根据这些实施例,在如图2A中垂直块边界的情况下,“像素线”和“相应的像素线”用于表示“像素行”和“相应的像素行”,并且在如图2B中水平块边界的情况下,“像素线”和“相应的像素线”用于表示“像素列”和“相应的像素列”。
下一个步骤S2通过将在步骤S1中计算出的第一偏移加至具有像素11、13、15、17的线12中与块边界1相距最近的像素11的像素值来修改该像素11的像素值,以形成修改后的像素值p0′。因此,针对该像素11的修改后的像素值p0′是p0′=p0+Δ,其中,Δ表示来自步骤S1的第一偏移。相应地,在步骤S3中,通过从与块边界1相距最近的、但是在相邻块20中具有像素21、23、25、27的相应线22中的像素21的像素值中减去第一偏移来修改该像素21的像素值,以形成修改后的像素值q0′。因此,按照q0′=q0-Δ来计算修改后的像素值q0′。
可以如图1所示,顺序地执行或者顺序地但是以相反的顺序(即,步骤S3在步骤S2之前)执行步骤S2中修改块10中具有像素11、13、15、17的线12中与块边界1相距最近的像素11的像素值以及步骤S3中修改相邻块20中具有像素21、23、25、27的相应线22中与块边界1相距最近的像素21的像素值。可替换地,可以至少部分并行地执行两个步骤S2和S3。
图1中所示的并且包括步骤S1至S3的方法通过处理块中具有像素11、13、15、17的一条线12中像素并且还处理相邻块20中相应的具有像素21、23、25、27的线22中像素来减小块边界1处的块效应。可以针对块10中(垂直或水平)线12之一或者针对块10中多个(即,至少两个)线12(可能针对块10中所有(水平或垂直)线12)来执行这种像素修改。通过线L1示意性地示出了这一点。
前面概括地讨论的去块滤波涉及滤波器决策,该滤波器决策确定是否对块的水平或垂直块边界应用去块滤波器。如果该决策为肯定的,则将去块滤波器应用于块的所有列(垂直线)或行(水平线)。可替换地,可以对每一列或每一行做出进一步的滤波决策,以决定是否应用去块滤波器和/或针对特定的列或行使用哪一种去块滤波器。因此,图1中所示的方法可以应用于视频帧中像素块中一列、一行、多列、多行或者至少一列和至少一行二者。可以进一步预期的是,去块滤波不一定必须应用于视频帧中所有块。相比之下,优选地,这种去块滤波仅应用于在其处存在块效应的块和块边界,如一个或多个滤波器决策所确定的。
现在将结合各个实现实施例来进一步描述去块滤波。
可以首先在一个实施例中对第一偏移执行截断,从而将第一偏移的值限制在-tC与tC的间隔内。阈值tC优选地取决于指派给块的量化参数(QP)值。在这种情况下,可以使用具有针对不同的QP值的不同阈值的表格。下面列出的表格1是这种表格的示例。
表格1——针对不同的QP值的tC
然而,本实施例不限于如表格1中所示的tC与QP之间的特定关系,而是可以以某种其它方式基于针对块的QP值来确定针对块的tC值。
图3示出了该截断动作。然后,该方法从图1的步骤S1继续。下一个步骤S10检查第一偏移是否在间隔-tC与tC内,即,是否-tC≤Δ≤tC。在这种情况下,方法继续到图1的步骤S2,并且不需要对第一偏移进行修改。然而,如果第一偏移不在步骤S10中确定的间隔内,则方法继续到步骤S11,在步骤S11处,将第一偏移截断为具有该间隔内的值。因此,在步骤S11中,如果Δ<-tC,则将第一偏移设置为具有值-tC。相应地,在步骤S11中,如果Δ>tC,则将第一偏移设置为具有值tC。然后,该方法继续到图1的步骤S2。
相应地,可以将在图1的步骤S2和S3中计算出的修改后的像素值截断到所允许的间隔内。图4的流程图示意性地示出了这一点。然后,该方法从图1中步骤S2或S3继续,并且下一个步骤S20检查修改后的像素值(即,p0′或q0′)是否处于0与M的所允许的间隔内。参数M表示修改后的像素值可以呈现的定义的最大值。在特定的实施例中,基于花费在像素值上的比特的数量来定义该最大值。因此,假设像素值具有m比特的值的形式,则M优选地等于2m-1。例如,如果每一个像素值是8比特的值(即,m=8),则M=255。因此,步骤S20检查是否满足下式:0≤p0′≤M或0≤q0′≤M。如果修改后的像素值在间隔[0、M]内,则方法继续到图1的步骤S3或者结束。然而,如果修改后的像素值在间隔以外,则在步骤S21中将该像素值截断为具有间隔内的值。换言之,如果p0′<0或q0′<0,则在步骤S21中将修改后的像素值设置为p0′=0或q0′=0。相应地,如果p0′>M或q0′>M,则步骤S21将修改后的像素值设置为p0′=M或q0′=M。
图1的步骤S1将第一偏移计算为基于(9×(q0-p0)-3×(q1-p1))/16。在特定的实施例中,在步骤S1中将第一偏移计算为等于(9×(q0-p0)-3×(q1-p1))/16。在一个实施例中,因而由提出的去块滤波器使用下面的计算来更新像素值:
Δ=(9×(q0-p0)-3×(q1-p1))/16
p0′=p0+Δ
q0′=q0-Δ
还可以使用如图3和图4中所示的对第一偏移和/或修改后的像素值的截断。
在可替换的实施例中,按照(9×(q0-p0)-3×(q1-p1))/16的函数来计算偏移。然后,可以将该函数定义为使得在硬件中有效地执行对第一偏移的计算。在这种情况下,通常优选的是不进行任何除法(division)和/或定义函数使得第一偏移将是整数值。在一个实施例中,(X+8)>>4用作X/16的整数表达,其中,>>表示右移运算。因此,在特定的实施例中,步骤S1基于(9×(q0-p0)-3×(q1-p1)+8)>>4计算第一偏移,优选地等于(9×(q0-p0)-3×(q1-p1)+8)>>4。
在该实施例中,因而由提出的去块滤波器使用下面的计算来更新像素值:
Δ=(9×(q0-p0)-3×(q1-p1)+8)>>4
p0′=p0+Δ
q0′=q0-Δ
或者如果使用截断,则:
Δ=Clip3(-tC,tC,(9×(q0-p0)-3×(q1-p1)+8)>>4)
p0′=Clip(p0+Δ)
q0′=Clip(q0-Δ)
其中,Clip3(A,B,x)被定义为如果x<A,则Clip3(A,B,x)=A,如果x>B,则Clip3(A,B,x)=B,并且如果A≤x≤B,则Clip3(A,B,x)=x,并且Clip(x)被定义为Clip(0,M,x)。
在可替换的实施例中,使用诸如(9×(q0-p0)-3×(q1-p1))/16的整数表示并且优选地在硬件中有效地实现的此类整数表示等的其它实现。
上文公开的实施例定义了一种去块滤波器,该去块滤波器利用公式生成针对与块边界相距最近的像素的第一偏移,其中,该公式当应用于具有像素值的斜坡时近似产生零(优选地刚好为零)并且当应用于具有像素值的阶梯时产生平滑像素值中阶梯的偏移值。例如,可以将斜坡描述为线性增加或减小的像素值,例如,10、20、30、40。当计算针对这些像素值(即,p1=10,p0=20,q0=30,q1=40)的第一偏移时,第一偏移将为零。相应地,可以将阶梯描述为像素值的阶梯增加或阶梯减小,例如,10、10、20、20。当计算针对这些像素值(p1=10,p0=10,q0=20,q1=20)的第一偏移时,如果Δ=(9×(q0-p0)-3×(q1-p1))/16,则第一偏移将为3.75,或者如果Δ=(9×(q0-p0)-3×(q1-p1)+8)>>4,则第一偏移将为4。然后,修改后的像素值将为10、13.75、16.25、30或者10、14、16、20,并且因此实现了对阶梯的平滑。对于平整线,即,如果像素值相等(p0=p1=q0=q1),则第一偏移也将为零。
在特定的实施例中,还可以修改与块边界相距第二近的像素的像素值。在本文中参照图2A、图2B和图5进一步描述了这一点。然后,该方法从图1的步骤S3或者从步骤S2或者甚至步骤S1继续。下一个步骤S30基于(p2+p0-2×p1+2×Δ)/4计算第二偏移,其中,p2表示块10中具有像素11、13、15、17的线12中与块边界1相距第三近的像素15的像素值。下一个步骤S31基于(q2+q0-2×q1-2×Δ)/4计算第三偏移,其中,q2表示相邻块20中相应的具有像素21、23、25、27的线22中与块边界1相距第三近的像素25的像素值。可以以任意顺序顺序地或者至少部分并行地执行步骤S30和S31。
在步骤S32中使用在步骤S30中计算出的第二偏移以修改具有像素11、13、15、17的线12中与块边界1相距第二近的像素13的像素值。在一个实施例中,将第二偏移加至该像素13的像素值,以获得修改后的像素值。相应地,步骤S33通过将第三偏移加至相应的具有像素21、23、25、27的线22中与块边界1相距第二近的像素23的像素值来修改该像素23的像素值,以形成修改后的像素值。可以以任意相继顺序或者至少部分并行地执行步骤S32和S33。
在该实施例中,所提出的去块滤波器是所有滤波器位置p0,p1,q0,q1上的低通滤波器。当将去块滤波器应用于斜坡信号时,去块滤波器将不修改斜坡信号,这是因为Δ,Δp,Δq将均等于零,其中,Δp表示第二偏移并且Δq表示第三偏移。当将去块滤波器应用于阶梯信号(即,去块)时,去块滤波器将对该阶梯信号进行平滑,即,减小块效应。与当前的HEVC滤波器相比,所提出的去块滤波器将进行平滑,从而衰减块边界的两侧上的小波动。
在上述实施例中,针对处于从块边界开始的第二位置(p1,q1)处的系数的滤波器是通过使用第一偏移和对称低通滤波器的组合而产生的。该实施例的优点在于针对与块边界相距第三近的像素的偏移可以具有不同的值,这允许更好的局部适应。
与第一偏移类似,可以将第二偏移和第三偏移截断到-tC2与tC2的间隔内,其中,阈值tC2是基于指派给块的QP值来确定的。在特定的实施例中,基于用于在图3中对第一偏移进行截断的阈值tC来确定阈值tC2。例如,或者对于适应硬件的实现,tC2=tC>>1。
图6是示出了对第二偏移和第三偏移进行这种截断的流程图。方法从图5的步骤S30或S31继续。下一个步骤S40检查第二偏移或第三偏移是否在-tC2与tC2的间隔内。如果成立,则该方法继续到图5的步骤S32或S33。然而,如果第二偏移或第三偏移小于-tC2或者大于tC2,则该方法继续到步骤S41。如果Δp,q<-tC2,则步骤S41将第二偏移或第三偏移截断到-tC2,或者如果Δp,q>tC2,则该步骤S41将第二偏移或第三偏移设置为tC2其中Δp,q表示第二偏移或第三偏移。
优选地,类似于与块边界相距最近的像素的修改后的像素值,将与块边界相距第二近的像素的修改后的像素值截断到0与M的间隔内。因此,图4的方法步骤也可以应用于这些像素以使这些像素值处于[0、M]内。
在一个实施例中,按下式计算与块边界1相距第二近的像素13、23的修改后的像素值:
Δp=(p2+p0-2×p1+2×Δ)/4
p1′=p1+Δp
Δq=(q2+q0-2×q1-2×Δ)/4
q1′=q1+Δq
可选地,使用上文所公开的对第二偏移和第三偏移的截断和/或修改后的像素值。
在可替换的实施例中,可以彼此独立地执行对偏移的计算。
Δ=(9×(q0-p0)-3×(q1-p1)+8)>>4
p0′=p0+Δ
q0′=q0-Δ
Δp=(p0+p2-2×p1)/4
p1′=p1+Δp+Δ/2
Δq=(q0+q2-2×q1)/4
q1′=q1+Δq-Δ/2
在数学上,这与先前公开的实施例相当。还可以针对该实施例执行可选的截断。
在可替换的实施例中,分别基于例如(p2+p0-2×p1+2×Δ)/4和(q2+q0-2×q1-2×Δ)/4的函数来计算第二偏移和第三偏移。例如,这种函数可以适合于硬件实现和/或可以是(p2+p0-2×p1+2×Δ)/4和(q2+q0-2×q1-2×Δ)/4的整数表示。产生整数值的这种硬件实现的特定示例是基于(((p2+p0+1)>>1)-p1+Δ)>>1计算第二偏移、优选等于(((p2+p0+1)>>1)-p1+Δ)>>1。相应地,基于(((q2+q0+1)>>1)-q1-Δ)>>1计算第三偏移、优选地等于(((q2+q0+1)>>1)-q1-Δ)>>1。
在这种情况下,按下式计算修改后的像素值:
Δp=(((p2+p0+1)>>1)-p1+Δ)>>1
p1′=p1+Δp
Δq=(((q2+q0+1)>>1)-q1-Δ)>>1
q1′=q1+Δq
或者如果使用截断,则:
Δp=Clip3(-tC2,tC2,(((p2+p0+1)>>1)-p1+Δ)>>1)
p1′=Clip(p1+Δp)
Δq=Clip3(-tC2,tC2,(((q2+q0+1)>>1)-q1-Δ)>>1)
q1′=Clip(q1+Δq)
用于计算第二偏移和第三偏移的适合于硬件实现的可替换的实施例是:
Δp=Clip3(-tC2,tC2,((p2+p0-((p1-Δ)<<1)+2)>>2))
Δq=Clip3(-tC2,tC2,((q2+a0-((q1+Δ)<<1)+2)>>2))
其中,<<表示左移操作。
用于计算第二偏移和第三偏移的适合于硬件实现的另一个可替换的实施例是:
Δp=Clip3(-tC2,tC2,((((p2+p0+1)>>1)-p1+Δ+1)>>1))
Δq=Clip3(-tC2,tC2,((((q2+q0+1)>>1)-q1-Δ+1)>>1))
在另一个实施例中,可以将更强的低通滤波器与第一偏移结合使用。在这种情况下,基于(p2+p0-2×p1+Δ)/2来计算第二偏移((例如,第二偏移等于(p2+p0-2×p1+Δ)/2),或者在适应硬件的实现中,基于((p2+p0+1+Δ)>>1)-p1或者可替换地((p2+p0+Δ-(p1<<1)+1)>>1)来计算第二偏移(优选地,第二偏移等于((p2+p0+1+Δ)>>1)-p1或者可替换地((p2+p0+Δ-(p1<<1)+1)>>1))。然后,可以基于(q2+q0-2×q1-Δ)/2来计算第三偏移(例如,第三偏移等于(q2+q0-2×q1-Δ)/2),或者在适应硬件的实现中,基于((q2+q0+1-Δ)>>1)-q1或者可替换地((q2+q0-Δ-(q1<<1)+1)>>1)来计算第三偏移(优选地,第三偏移等于((q2+q0+1-Δ)>>1)-q1或者可替换地((q2+q0-Δ-(q1<<1)+1)>>1))。
特定的实施例计算针对块中像素线的第一偏移、第二偏移和第三偏移,从而修改与块边界相距最近的像素以及与块边界相距第二近的像素的像素值。
在可替换的实施例中,首先对是否计算第二偏移和第三偏移做出决定,从而对除了修改与块边界相距最近的像素的像素值以外,是否还修改与块边界相距第二近的像素的像素值做出决定。
类似于在前面计算第二偏移和第三偏移以修改与块边界相距第二近的像素的像素值中所公开的实施例,可以计算第四偏移和第五偏移以修改与块边界相距第三近的像素的像素值。
图7是示出了这种实施例的流程图。该方法从图5的步骤S33继续。下一个步骤S50基于(p3+p1-2×p2+2×Δp1)/4计算第四偏移,其中,p3表示块10中具有像素11、13、15、17的线12中与块边界1第四近的像素17的像素值,并且Δp1表示第二偏移。步骤S51相应地基于(q3+q1-2×q2+2×Δq1)/4计算第五偏移,其中,q3表示相邻块20中相应的具有像素21、23、25、27的线22中与块边界1第四近的像素27的像素值,并且Δq1表示第三偏移。可以以任意顺序连续地或者至少部分并行地执行步骤S50和S51。
在可替换的实施例中,可以分别基于(p3+p1-2×p2+Δp1)/2和(q3+q1-2×q2+Δq1)/2或者可替换地(p3+p1-2×p2+2×Δq1)/4和(q3+q1-2×q2+2×Δp2)/4计算第四偏移和第五偏移。
下两个步骤基于第四偏移和第五偏移来修改像素值。因此,步骤S52通过将第四偏移加至块10中具有像素11、13、15、17的线12中与块边界1相距第三近的像素15的像素值来修改该像素15的像素值,以形成修改后的像素值。相应地,步骤S53通过将第五偏移加至相邻的块20中相应的具有像素21、23、25、27的线22中与块边界1相距第三近的像素25的像素值来修改该像素25的像素值,以形成修改后的像素值。可以以任意顺序连续地或者至少部分并行地执行步骤S52和S53。
还可以针对滤波器修改与块边界相距多于三个的像素来一般化该构思。例如,可以使用针对第三像素15、25的偏移(或者与第二像素13、23的偏移或者与第一像素11、21的偏移)和对称低通滤波器的组合来获得从块边界1开始的第四像素17、27。甚至更长的滤波器也是可能的。
类似于前面的实施例,也可以对第四偏移和第五偏移进行截断。在这种情况下,可以使用与针对第二偏移和第三偏移的间隔相同的间隔或者可以使用该间隔的一半。在可替换的实施例中,截断间隔是-tC3到tC3,其中,阈值tC3是基于与块相关联的QP值来确定的。此外,可以将与块边界相距第三近的像素的修改后的像素值截断到图4中公开的0与M的间隔内。
在特定的实施例中,根据下式来执行对这些像素值的修改:
Δp2=(p3+p1-2×p2+2×Δp1)/4
p2′=p2+Δp2
Δq2=(q3+q1-2×q2+2×Δq1)/4
q2′=q2+Δq2
其中,Δp2,Δq2分别表示第四偏移和第五偏移。可选地,可以如上文所描述的来执行截断。
可以使用(p3+p1-2×p2+2×Δp1)/4和(q3+q1-2×q2+2×Δq1)/4的适合于硬件实现的表示以得到作为整数值的第四偏移和第五偏移。在特定的实施例中,基于(((p3+p1+1)>>1)-p2+Δp1)>>1计算第四偏移,优选地等于(((p3+p1+1)>>1)-p2+Δp1)>>1。相应地,(((q3+q1+1)>>1)-q2+Δq1)>>1是针对第五偏移的整数表示。
本实施例适合于联合对视频帧的编码和解码来防止块效应。因此,这些实施例可以应用于这样的视频编码和解码标准,即,这些标准将视频帧划分为像素块从而冒着在块边界上具有块效应的风险。本实施例可以应用于的这种标准的示例是H.264和HEVC。具体地说,HEVC具有在弱滤波模式与强滤波模式之间进行选择的可能性。然后,可以在弱滤波模式中有利地使用本实施例来计算用于修改块边界上的像素线和相应的像素线中像素值的偏移。因此,关于是否根据现有的HEVC来执行这种去块滤波的决策可以有利地用于本实施例。
特定的方面涉及一种减小视频帧中具有多个像素的块与相邻的具有多个像素的块之间的块边界处的块效应的方法。参照图1,该方法包括在步骤S1中,基于以下各项来计算第一偏移:块中的像素线中与块边界相距最近的像素的像素值、像素线中与块边界相距第二近的像素的像素值、相邻块中的相应的或相对的像素线中与块边界相距最近的像素的像素值以及相应的像素线中与块边界相距第二近的像素的像素值。像素线和相邻的像素线垂直于块边界。基于这些像素值和公式来计算第一偏移,该公式在像素值当沿着像素线和相应的像素线前进时线性增加或线性减小或者是相同的时,产生近似为零(优选地,等于零)的偏移值,并且在像素值当沿着像素线和相应的像素线前进时阶梯地增加或减小时,产生平滑像素值中阶梯的偏移值。该方法还包括在步骤S2中,通过将第一偏移加至像素线中与块边界相距最近的像素的像素值,来修改像素线中与块边界相距最近的像素的像素值。下一个步骤S3通过从相应的像素线中与块边界相距最近的像素的像素值中减去第一偏移来修改相应的像素线中与块边界相距最近的像素的像素值。
可以将该特定的方面与上文中结合图1至图7所讨论的实施例相结合。
优选地,由去块滤波器单元来执行根据图1中公开的实施例减小块效应的方法。因此,这种去块滤波器单元然后在步骤S1中计算第一偏移并且在步骤S2和S3中修改与块边界相距最近的像素的像素值。图8是这种去块滤波器单元100的实施例的示意性框图。
去块滤波器单元100包括第一偏移计算器110,其被配置为基于(9×(q0-p0)-3×(q1-p1))/16来计算第一偏移,如本文先前针对视频帧中像素块中像素线所公开的。去块滤波器单元100的像素修改器120被配置为通过将由第一偏移计算器110计算出的第一偏移加至块中像素线中与块边界相距最近的像素的像素值来修改该像素的像素值,以形成修改后的像素值。像素修改器120还修改与块边界相距最近的、但是在视频帧中的相邻像素块中的相应像素线中的像素的像素值。通过从该像素的像素值中减去由第一偏移计算器110计算出的第一偏移来实现由像素值修改器120进行的这种修改,以形成修改后的像素值。
因此,在特定的实施例中,像素修改器120被配置为将第一偏移加至像素线中与块边界相距最近的像素的像素值以形成修改后的像素值。像素修改器120被进一步配置为从相应的像素线中与块边界相距最近的像素的像素值中减去第一偏移,以形成修改后的像素值。
在特定的实施例中,第一偏移计算器110被配置为将第一偏移计算为f((9×(q0-p0)-3×(q1-p1))/16),即,(9×(q0-p0)-3×(q1-p1))/16的函数f()或者表示。该函数优选地输出(9×(q0-p0)-3×(q1-p1))/16的整数表示,并且优选地,该函数适合于硬件实现。在一个实施例中,第一偏移计算器110被配置为基于(9×(q0-p0)-3×(q1-p1)+8)>>4计算第一偏移、优选地等于(9×(q0-p0)-3×(q1-p1)+8)>>4。
图9是根据另一个实施例的去块滤波器单元200的示意性框图。去块滤波器单元200包括第一偏移计算器210和像素值修改器220。这些单元210、220如前面结合图8所讨论的进行操作。优选地,去块滤波器单元200还包括第一截断单元230。该第一截断单元230被配置为将第一偏移截断到-tC与tC的间隔内。然后,阈值tC取决于与块相关联的QP值,并且可以例如基于块的QP值从表格1中选择阈值tC
在去块滤波器单元200中实现可选的第二截断单元240以用于对由像素值修改器220计算出的修改后的像素值进行截断。因此,第二截断单元240将这些修改后的像素值限制在0与定义的最大值M的间隔内。
在优选的实施例中,去块滤波器单元200还包括第二偏移计算器250,其被配置为基于(p2+p0-2×p1+2×Δ)/4来计算针对块中像素线的第二偏移。
在特定的实施例中,第二偏移计算器250被配置为将第二偏移计算为g((p2+p0-2×p1+2×Δ)/4),即,(p2+p0-2×p1+2×Δ)/4的函数g()或表示。该函数优选地输出(p2+p0-2×p1+2×Δ)/4的整数表示,并且优选地,该函数适合于硬件实现。在一个实施例中,第二偏移计算器250被配置为基于(((p2+p0+1)>>1)-p1+Δ)>>1计算第二偏移、优选地等于(((p2+p0+1)>>1)-p1+Δ)>>1。
去块滤波器单元200优选地包括第三偏移计算器260,其被配置为基于(q2+q0-2×q1-2×Δ)/4来计算针对相邻块中相应像素线的第三偏移。
在特定的实施例中,第三偏移计算器260被配置为将第三偏移计算为h((q2+q0-2×q1-2×Δ)/4),即(q2+q0-2×q1-2×Δ)/4的函数h()或表示。该函数优选地输出(q2+q0-2×q1-2×Δ)/4的整数表示,并且优选地,该函数适合于硬件实现。在一个实施例中,第三偏移计算器260被配置为基于(((q2+q0+1)>>1)-q1-Δ)>>1计算第三偏移、优选地等于(((q2+q0+1)>>1)-q1-Δ)>>1。
然后,去块滤波器单元200的像素修改器220被另外配置为修改块中的像素线中与块边界相距第二近的像素的像素值。像素修改器220将由第二偏移计算器250计算出的第二偏移加至该像素的像素值。像素修改器220被另外配置为修改与块边界相距第二近、但是在相邻块中的相应像素线中像素的像素值。该修改是通过将第三偏移计算器260计算出的第三偏移加至该像素的像素值来实现的。
去块滤波器单元200的可选的第三截断单元270被配置为将由第二偏移计算器250计算出的第二偏移和由第三偏移计算器260计算出的第三偏移截断到-tC2与tC2的间隔内。阈值tC2优选地取决于与块相关联的QP值,并且有利地基于用于对第一偏移进行截断的阈值tC来算阈值tC2。在可替换的实施例中,省略了第三截断单元270,并且取而代之的是由第一截断单元230来执行对第二偏移和第三偏移的任何截断。
优选地,第二截断单元240不仅对与块边界相距最近的像素的修改后的像素值进行截断,而且还对与块边界相距第二近的像素的并且分别使用第二偏移和第三偏移计算出的经修改后的像素值进行截断。因此,优选地,这些修改后的像素值也被限制在0到定义的最大值M的间隔内。
第二偏移计算器250和第三偏移计算器260可以被配置为计算针对每一条像素线和每一条相应的像素线的第二偏移和第三偏移,其中,针对这些像素线,将对块与相邻块之间的块边界应用去块滤波。在可替换的方法中,去块滤波器单元200执行关于以下操作的选择:是仅计算第一偏移从而仅修改与块边界相距最近的像素的像素值还是计算第一偏移以及第二偏移和第三偏移从而修改与块边界相距最近的像素和与块边界相距第二近的像素的像素值。
在可选的实施例中,去块滤波器单元200可以包括第四偏移计算器280,其被配置为基于(p3+p1-2×p2+2×Δp1)/4计算第四偏移。
在特定的实施例中,第四偏移计算器280被配置为将第四偏移计算为基于b((p3+p1-2×p2+2×Δp1)/4),即,(p3+p1-2×p2+2×Δp1)/4的函数b()或表示。该函数优选地输出(p3+p1-2×p2+2×Δp1)/4的整数表示,并且优选地,该函数适合于硬件实现。在一个实施例中,第四偏移计算器280被配置为基于(((p3+p1+1)>>1)-p2+Δp1)>>1计算第四偏移、优选地等于(((p3+p1+1)>>1)-p2+Δp1)>>1。
去块滤波器200还可以包括可选的第五偏移计算器290,其被配置为基于(q3+q1-2×q2+2×Δq1)/4计算第五偏移。
在特定的实施例中,第五偏移计算器290被配置为将第五偏移计算为基于k((q3+q1-2×q2+2×Δq1)/4),即,(q3+q1-2×q2+2×Δq1)/4的函数k()或表示。该函数优选地输出(q3+q1-2×q2+2×Δq1)/4的整数表示,并且优选地,该函数适合于硬件实现。在一个实施例中,第五偏移计算器290被配置为基于(((q3+q1+1)>>1)-q2+Δq1)>>1计算第五偏移、优选地等于(((q3+q1+1)>>1)-q2+Δq1)>>1。
在该实施例中,像素值修改器220还被配置为通过将由第四偏移计算器280计算出的第四偏移加至块中像素线中与块边界相距第三近的像素的像素值,来修改该像素的像素值。在该实施例中,该像素值修改器220另外通过将由第五偏移计算器计算出的第五偏移加至相邻块中相应像素线中与块边界相距第三近的像素的像素值,来修改该像素的像素值。
第二截断单元240优选地处理修改后的像素值,以将它们限制于零与定义的最大值M的间隔内。类似于第二偏移和第三偏移,第三截断单元270还可以用于对第四偏移和第五偏移进行截断。可替换地,去块滤波器单元200包括第四截断单元,其被配置为将第四偏移和第五偏移截断到具有基于块的QP值并且优选地基于阈值tC所定义的端点的间隔内。
特定的方面涉及一种用于减小视频帧中具有多个像素的块与相邻的具有多个像素的块之间的块边界处的块效应的去块滤波器单元。参照图8,去块滤波器单元100包括第一偏移计算器110,其被配置为基于以下各项来计算第一偏移:块中像素线中与块边界相距最近的像素的像素值、像素线中与块边界相距第二近的像素的像素值、相邻块中相应或相对的像素线中与块边界相距最近的像素的像素值以及相应像素线中与块边界相距第二近的像素的像素值。像素线和相邻像素线垂直于块边界。第一偏移是由第一偏移计算器110基于这些像素值和公式计算的,该公式在像素值当沿着像素线和相应的像素线前进时线性增加或减小或者相同时产生约为零(优选地等于零)的偏移值,并且在像素值当沿着像素线和相应的像素线前进时阶梯式地增加或减小时产生平滑像素值中阶梯的偏移值。去块滤波器单元110还包括像素值修改器120,其被配置为通过将第一偏移加至像素线中与块边界相距最近的像素的像素值来修改像素线中与块边界相距最近的像素的像素值,以形成修改后的像素值。像素值修改器120被进一步配置为通过从相应像素线中与块边界相距最近的像素的像素值中减去第一偏移来修改相应像素线中与块边界相距最近的像素的像素值,以形成修改后的像素值。
虽然结合图8和图9所公开的相应单元110、120和210-290已经公开为设备100、200中物理上单独的单元110、120和210-290,并且所有单元可以是专用电路(例如,ASIC(专用集成电路)),但是设备100、200的可替换实施例是可能的,其中,所有单元110、120和210-290中一些或全部被实现为在通用处理器上运行的计算机程序模块。在图10中公开了这种实施例。
图10示意性地示出了具有处理单元72(例如,DSP(数字信号处理器)或CPU(中央处理单元))的计算机70的实施例。处理单元72可以是用于执行本文所描述的方法的不同步骤的单个单元或多个单元。计算机70还包括输入/输出(I/O)单元71,其用于接收记录的或生成的视频帧或者编码的视频帧或者解码的视频数据。在图10中,I/O单元71已经被示出为单个单元,但是其同样可以具有单独的输入单元和单独的输出单元的形式。
此外,计算机70包括至少一个非易失性存储器形式的计算机程序产品73,例如,EEPROM(电可擦除可编程只读存储器)、闪存或磁盘驱动器。计算机程序产品73包括计算机程序74,其包括代码装置,当在计算机70上例如由处理单元72运行该代码装置时,该代码装置使计算机70执行前面结合图1所描述的方法的步骤。因此,在一个实施例中,计算机程序74中代码装置包括去块滤波器模块300或去块滤波器设备的用于计算第一偏移的第一偏移计算模块或第一偏移计算器310,以及用于修改像素值的像素值修改模块或像素值修改器320。当在处理单元72上运行模块310、320时,这些模块310、320实质上执行图1中流程图的步骤。因此,当在处理单元72上运行不同的模块310、320时,这些模块与图8的相应单元110、120以及图9的单元210、220相对应。
计算机程序74可以另外包括第一截断模块、第二截断模块、第二偏移计算模块、第三偏移计算模块,并且可选地还可以包括第三截断模块、第四偏移计算模块和第五偏移计算模块,以执行图9中相应单元230-290的操作。
图10的计算机70可以是用户设备,或者可以存在于用户设备80中。在这种情况下,用户设备80可以另外包括或者连接到显示器88以显示视频数据。
图8和图9的去块滤波器单元100、200优选地用于视频编码。它在视频编码器和视频解码器二者中起作用并且因此优选地实现在视频编码器和视频解码器二者中。视频解码器可以优选地实现在硬件中,但是也可以实现在软件中。对于视频编码器,这一点同样成立。
图11是根据一个实施例的用于对视频序列的视频帧中像素块进行编码的编码器40的示意性框图。
通过由运动估计器50根据在相同的帧或前一个帧中已经提供的像素块执行运动估计,来预测当前的像素块。在帧间预测的情况下,运动估计的结果是与参考块相关联的运动或移位向量。由运动补偿器50利用运动向量以输出像素块的帧间预测。
帧内预测器49计算当前像素块的帧内预测。运动估计器/补偿器50和帧内预测器49的输出被输入到选择器51中,选择器51选择针对当前的像素块的帧内预测或帧间预测。选择器51的输出被输入到加法器41形式的误差计算器,加法器41还接收当前像素块的像素值。加法器41计算并输出残差作为像素块与其预测之间的像素值的差别。
误差在变换器42中例如通过离散余弦变换来进行变换,并且由量化器43进行量化,然后在编码器44中(例如,由熵编码器)进行编码。在帧间编码中,还使估计的运动向量去往编码器44以生成当前像素块的编码表示。
还将针对当前像素块的经变换和量化的残差提供给反量化器45和反变换器46以取回原始的残差。由加法器47将该误差加至从运动补偿器50或帧内预测器49输出的块预测以创建可以在对下一个像素块进行预测和编码时使用的参考像素块。首先,由根据这些实施例的去块滤波器单元100来处理该新的参考块,以执行去块滤波从而防止任何去块。然后,将经处理的新的参考块临时存储在帧缓冲48中,其中,该经处理的新的参考块可以被帧内预测器49和运动估计器/补偿器50利用。
图12是包括根据这些实施例的去块滤波器单元100的解码器60的示意性框图。解码器60包括用于对像素块的编码表示进行解码以得到一组经量化和变换的残差的解码器61,例如,熵解码器。这些残差在反量化器62中被去量化,并且由反变换器63进行反变换,以得到一组残差。
在加法器64中将这些残差加至参考像素块的像素值。根据是执行帧间预测还是帧内预测,由运动估计器/补偿器67或帧内预测器66来确定参考块。因此,选择器68互连到加法器64以及运动估计器/补偿器67和帧内预测器66。从加法器64输出的由此产生的解码的像素块被输入到根据这些实施例的去块滤波器单元100中,以对任何块效应进行去块滤波。经滤波的像素块从解码器60输出并且另外优选地临时提供给帧缓冲65并且可以用作针对要解码的后续像素块的参考像素块。因此,帧缓冲65连接到运动估计器/补偿器67以使运动估计器/补偿器67可以利用存储的像素块。
优选地,来自加法器64的输出也输入到帧内预测器66中以用作未经滤波的参考像素块。
在图11和图12中公开的实施例中,去块滤波器单元100执行去块滤波作为所谓的内环滤波。在可替换的实现中,在解码器60处,去块滤波器单元100被布置为执行所谓的后置处理滤波。在这种情况下,去块滤波器单元100在由加法器64、帧缓冲65、帧内预测器66、运动估计器/补偿器67和选择器68形成的环的外部对输出的帧进行操作。然后,在编码器处通常不进行去块滤波。
图13是容纳具有去块滤波器单元的解码器60的用户设备或媒体终端80的示意性框图。用户设备80可以是具有媒体解码功能的任何设备,该设备对编码的视频帧的编码的视频流进行操作,从而对视频帧进行解码并且使得视频数据可用。这种设备的非限制性示例包括移动电话和其它便携式媒体播放器、平板电脑、台式机、笔记本、个人录像机、多媒体播放器、视频流服务器、机顶盒、TV、计算机、解码器、游戏机等。用户设备80包括存储器84,其被配置为存储经编码的视频帧。可能已经由用户设备80自身生成了这些经编码的视频帧。在这种情况下,用户设备80优选地包括媒体引擎或媒体录影机以及诸如图11的编码器等的连接的编码器。可替换地,由某个其它设备生成经编码的视频帧,并且向用设备80无线地发送或有线地发送经编码的视频帧。然后,用户设备80包括收发机(发射机和接收机)或者输入和输出端口82以实现数据传输。
使经编码的视频帧从存储器84去往解码器60,例如,图12中所示的解码器。解码器60包括根据这些实施例的去块滤波器单元100。然后,解码器60将经编码的视频帧解码为解码的视频帧。将经解码的视频帧提供给媒体播放器86,媒体播放器86被配置为将经解码的视频帧转化为可以在用户设备80的显示器或屏幕88上显示的视频数据或者可以在连接到用户设备80的显示器或屏幕88上显示的视频数据。
在图13中,用户设备80已经示出为包括解码器60和媒体播放器86,其中,解码器60被实现为媒体播放器86的一部分。然而,这应当仅被示为用户设备80的实现实施例的示例性的而非限制性的示例。此外,在两个物理上分离的设备中提供解码器60和媒体播放器86的分布式的实现也是可能的,并且落入本文使用的用户设备80的范围内。还可以将显示器88作为连接到在其中发生实际的数据处理的用户设备80的单独的设备来提供。
如图14所示,如图11和图12所示的编码器40和/或解码器60可以实现在网络设备30中,网络设备30作为或者属于进行发送的单元34与进行接收的用户设备36之间的通信网络32中网络节点。例如,如果已经确认进行接收的用户设备36仅能够利用除了从进行发送的单元34发送的视频编码标准以外的另一个视频编码标准或者与从进行发送的单元34发送的视频编码标准相比偏向另一个视频编码标准,则这种网络设备30可以是用于随着视频编码标准的改变来转化视频的设备。网络设备30可以具有以下各项的形式或者包含在以下各项中:诸如基于无线电的网络等的通信网络32中无线电基站、节点-B或者任何其它网络节点。
上文所描述的实施例将被理解为是本发明的几个示例性示例。本领域技术人员将理解的是,可以在不偏离本发明的范围的情况下对这些实施例进行各种修改、组合和改变。具体地说,在技术可行的情况下,可以在其它配置中组合不同的实施例中不同的部分解决方案。然而,本发明的范围是由所附权利要求来限定的。

Claims (25)

1.一种减小视频帧中的具有多个像素(11、13、15、17)的块(10)与具有多个像素(21、23、25、27)的相邻块(20)之间的块边界(1)处的块效应的方法,所述方法包括:
基于(9×(q0-p0)-3×(q1-p1))/16来计算(S1)第一偏移,其中,p0表示所述块(10)中具有像素(11、13、15、17)的线(12)中与所述块边界(1)相距最近的像素(11)的像素值,其中,所述具有像素(11、13、15、17)的线(12)垂直于所述块边界(1),p1表示所述具有像素(11、13、15、17)的线(12)中与所述块边界(1)相距第二近的像素(13)的像素值,q0表示所述相邻块(20)中相应的具有像素(21、23、25、27)的线(22)中与所述块边界(1)相距最近的像素(21)的像素值,其中,所述相应的具有像素(21、23、25、27)的线(22)垂直于所述块边界(1),并且q1表示所述相应的具有像素(21、23、25、27)的线(22)中与所述块边界(1)相距第二近的像素(23)的像素值;
通过将所述第一偏移加至所述具有像素(11、13、15、17)的线(12)中与所述块边界(1)相距最近的所述像素(11)的所述像素值p0来修改(S2)所述具有像素(11、13、15、17)的线(12)中与所述块边界(1)相距最近的所述像素(11)的所述像素值p0,以形成所述具有像素(11、13、15、17)的线(12)中与所述块边界(1)相距最近的所述像素(11)的修改后的像素值p0′;以及
通过从所述相应的具有像素(21、23、25、27)的线(22)中与所述块边界(1)相距最近的所述像素(21)的所述像素值q0中减去所述第一偏移来修改(S3)所述相应的具有像素(21、23、25、27)的线(22)中与所述块边界(1)相距最近的所述像素(21)的所述像素值q0,以形成所述相应的具有像素(21、23、25、27)的线(22)中与所述块边界(1)相距最近的所述像素(21)的修改后的像素值q0′。
2.根据权利要求1所述的方法,其中,计算(S1)所述第一偏移包括:将所述第一偏移计算为等于(9×(q0-p0)-3×(q1-p1)+8)>>4,其中,>>表示右移运算。
3.根据权利要求1或2所述的方法,还包括:通过以下方式来将所述第一偏移截断(S11)到-tC与tC的间隔内:如果所述第一偏移小于-tC,则将所述第一偏移设置为等于-tC,并且如果所述第一偏移大于tC,则将所述第一偏移设置为等于tC,其中,tC是取决于指派给所述块(10)的量化参数值的阈值。
4.根据权利要求1或2所述的方法,还包括:
通过以下方式将所述具有像素(11、13、15、17)的线(12)中与所述块边界(1)相距最近的所述像素(11)的所述修改后的像素值p0′截断(S21)到零与定义的最大值的间隔内:如果所述具有像素(11、13、15、17)的线(12)中与所述块边界(1)相距最近的所述像素(11)的所述修改后的像素值p0′小于零,则将所述具有像素(11、13、15、17)的线(12)中与所述块边界(1)相距最近的所述像素(11)的所述修改后的像素值p0′设置为等于零,并且如果所述具有像素(11、13、15、17)的线(12)中与所述块边界(1)相距最近的所述像素(11)的所述修改后的像素值p0′大于所述定义的最大值,则将所述具有像素(11、13、15、17)的线(12)中与所述块边界(1)相距最近的所述像素(11)的所述修改后的像素值p0′设置为等于所述定义的最大值;以及
通过以下方式将所述相应的具有像素(21、23、25、27)的线(22)中与所述块边界(1)相距最近的所述像素(21)的所述修改后的像素值q0′截断(S21)到零与所述定义的最大值的间隔内:如果所述相应的具有像素(21、23、25、27)的线(22)中与所述块边界(1)相距最近的所述像素(21)的所述修改后的像素值q0′小于零,则将所述相应的具有像素(21、23、25、27)的线(22)中与所述块边界(1)相距最近的所述像素(21)的所述修改后的像素值q0′设置为等于零,并且如果所述相应的具有像素(21、23、25、27)的线(22)中与所述块边界(1)相距最近的所述像素(21)的所述修改后的像素值q0′大于所述定义的最大值,则将所述相应的具有像素(21、23、25、27)的线(22)中与所述块边界(1)相距最近的所述像素(21)的所述修改后的像素值q0′设置为等于所述定义的最大值。
5.根据权利要求1或2所述的方法,还包括:
基于(p2+p0-2×p1+2×Δ)/4来计算(S30)第二偏移,其中,p2表示所述具有像素(11、13、15、17)的线(12)中与所述块边界(1)相距第三近的像素(15)的像素值,并且Δ表示所述第一偏移;
基于(q2+q0-2×q1-2×Δ)/4来计算(S31)第三偏移,其中,q2表示所述相应的具有像素(21、23、25、27)的线(22)中与所述块边界(1)相距第三近的像素(25)的像素值;
通过将所述第二偏移加至所述具有像素(11、13、15、17)的线(12)中与所述块边界(1)相距第二近的所述像素(13)的所述像素值p1来修改(S32)所述具有像素(11、13、15、17)的线(12)中与所述块边界(1)相距第二近的所述像素(13)的所述像素值p1,以形成所述具有像素(11、13、15、17)的线(12)中与所述块边界(1)相距第二近的所述像素(13)的修改后的像素值p1′;以及
通过将所述第三偏移加至所述相应的具有像素(21、23、25、27)的线(22)中与所述块边界(1)相距第二近的所述像素(23)的所述像素值q1来修改(S33)所述相应的具有像素(21、23、25、27)的线(22)中与所述块边界(1)相距第二近的所述像素(23)的所述像素值q1,以形成所述相应的具有像素(21、23、25、27)的线(22)中与所述块边界(1)相距第二近的所述像素(23)的修改后的像素值q1′。
6.根据权利要求5所述的方法,其中,
计算(S30)所述第二偏移包括:将所述第二偏移计算(S30)为等于(((p2+p0+1)>>1)-p1+Δ)>>1,其中,>>表示右移运算;并且
计算(S31)所述第三偏移包括:将所述第三偏移计算(S31)为等于(((q2+q0+1)>>1)-q1-Δ)>>1。
7.根据权利要求5所述的方法,还包括:
通过以下方式来将所述第二偏移截断(S41)到-tC2与tC2的间隔内:如果所述第二偏移小于-tC2,则将所述第二偏移设置为等于-tC2并且如果所述第二偏移大于tC2,则将所述第二偏移设置为等于tC2,其中,tC2是取决于指派给所述块(10)的量化参数值的阈值;以及
通过以下方式来将所述第三偏移截断(S41)到-tC2与tC2的间隔内:如果所述第三偏移小于-tC2,则将所述第三偏移设置为等于-tC2并且如果所述第三偏移大于tC2,则将所述第三偏移设置为等于tC2
8.根据权利要求5所述的方法,还包括:
通过以下方式将所述具有像素(11、13、15、17)的线(12)中与所述块边界(1)相距第二近的所述像素(13)的所述修改后的像素值p1′截断(S21)到零与定义的最大值的间隔内:如果所述具有像素(11、13、15、17)的线(12)中与所述块边界(1)相距第二近的所述像素(13)的所述修改后的像素值p1′小于零,则将所述具有像素(11、13、15、17)的线(12)中与所述块边界(1)相距第二近的所述像素(13)的所述修改后的像素值p1′设置为等于零,并且如果所述具有像素(11、13、15、17)的线(12)中与所述块边界(1)相距第二近的所述像素(13)的所述修改后的像素值p1′大于所述定义的最大值,则将所述具有像素(11、13、15、17)的线(12)中与所述块边界(1)相距第二近的所述像素(13)的所述修改后的像素值p1′设置为等于所述定义的最大值;以及
通过以下方式将所述相应的具有像素(21、23、25、27)的线(22)中与所述块边界(1)相距第二近的所述像素(23)的所述修改后的像素值q1′截断(S21)到零与所述定义的最大值的间隔内:如果所述相应的具有像素(21、23、25、27)的线(22)中与所述块边界(1)相距第二近的所述像素(23)的所述修改后的像素值q1′小于零,则将所述相应的具有像素(21、23、25、27)的线(22)中与所述块边界(1)相距第二近的所述像素(23)的所述修改后的像素值q1′设置为等于零,并且如果所述相应的具有像素(21、23、25、27)的线(22)中与所述块边界(1)相距第二近的所述像素(23)的所述修改后的像素值q1′大于所述定义的最大值,则将所述相应的具有像素(21、23、25、27)的线(22)中与所述块边界(1)相距第二近的所述像素(23)的所述修改后的像素值q1′设置为等于所述定义的最大值。
9.根据权利要求5所述的方法,还包括:
基于(p3+p1-2×p2+2×Δp1)/4来计算(S50)第四偏移,其中,p3表示所述具有像素(11、13、15、17)的线(12)中与所述块边界(1)相距第四近的像素(17)的像素值,并且Δp1表示所述第二偏移;以及
基于(q3+q1-2×q2+2×Δq1)/4来计算(S51)第五偏移,其中,q3表示所述相应的具有像素(21、23、25、27)的线(22)中与所述块边界(1)相距第四近的像素(27)的像素值,并且Δq1表示所述第三偏移;
通过将所述第四偏移加至所述具有像素(11、13、15、17)的线(12)中与所述块边界(1)相距第三近的所述像素(15)的所述像素值p2来修改(S52)所述具有像素(11、13、15、17)的线(12)中与所述块边界(1)相距第三近的所述像素(15)的所述像素值p2,以形成所述具有像素(11、13、15、17)的线(12)中与所述块边界(1)相距第三近的所述像素(15)的修改后的像素值p2′;以及
通过将所述第五偏移加至所述相应的具有像素(21、23、25、27)的线(22)中与所述块边界(1)相距第三近的所述像素(25)的所述像素值q2来修改(S53)所述相应的具有像素(21、23、25、27)的线(22)中与所述块边界(1)相距第三近的所述像素(25)的所述像素值q2,以形成所述相应的具有像素(21、23、25、27)的线(22)中与所述块边界(1)相距第三近的所述像素(25)的修改后的像素值q2′。
10.根据权利要求9所述的方法,其中,
计算(S51)所述第四偏移包括:将所述第四偏移计算(S51)为等于(((p3+p1+1)>>1)-p2+Δp1)>>1,其中,>>表示右移运算;并且
计算(S52)所述第五偏移包括:将所述第五偏移计算(S52)为等于(((q3+q1+1)>>1)-q2+Δq1)>>1。
11.根据权利要求1或2所述的方法,其中,
计算(S1)所述第一偏移包括:去块滤波器单元(100、200、300)基于(9×(q0-p0)-3×(q1-p1))/16来计算(S1)所述第一偏移;
修改(S2)所述像素值p0包括:所述去块滤波器单元(100、200、300)通过将所述第一偏移加至所述具有像素(11、13、15、17)的线(12)中与所述块边界(1)相距最近的所述像素(11)的所述像素值p0来修改(S2)所述具有像素(11、13、15、17)的线(12)中与所述块边界(1)相距最近的所述像素(11)的所述像素值p0,以形成所述具有像素(11、13、15、17)的线(12)中与所述块边界(1)相距最近的所述像素(11)的所述修改后的像素值p0′;以及
修改(S3)所述像素值q0包括:所述去块滤波器单元(100、200、300)通过从所述相应的具有像素(21、23、25、27)的线(22)中与所述块边界(1)相距最近的所述像素(21)的所述像素值q0中减去所述第一偏移来修改(S3)所述相应的具有像素(21、23、25、27)的线(22)中与所述块边界(1)相距最近的所述像素(21)的所述像素值q0,以形成所述相应的具有像素(21、23、25、27)的线(22)中与所述块边界(1)相距最近的所述像素(21)的所述修改后的像素值q0′。
12.一种去块滤波器单元(100、200),用于减小视频帧中具有多个像素(11、13、15、17)的块(10)与具有多个像素(21、23、25、27)的相邻块(20)之间的块边界(1)处的块效应,所述去块滤波器单元(100、200)包括:
第一偏移计算器(110、210),被配置为:基于(9×(q0-p0)-3×(q1-p1))/16来计算第一偏移,其中,p0表示所述块(10)中具有像素(11、13、15、17)的线(12)中与所述块边界(1)相距最近的像素(11)的像素值,其中,所述具有像素(11、13、15、17)的线(12)垂直于所述块边界(1),p1表示所述具有像素(11、13、15、17)的线(12)中与所述块边界(1)相距第二近的像素(13)的像素值,q0表示所述相邻块(20)中相应的具有像素(21、23、25、27)的线(22)中与所述块边界(1)相距最近的像素(21)的像素值,其中,所述相应的具有像素(21、23、25、27)的线(22)垂直于所述块边界(1),并且q1表示所述相应的具有像素(21、23、25、27)的线(22)中与所述块边界(1)相距第二近的像素(23)的像素值;以及
像素值修改器(120、220),被配置为:通过将所述第一偏移加至所述具有像素(11、13、15、17)的线(12)中与所述块边界(1)相距最近的所述像素(11)的所述像素值p0来修改所述具有像素(11、13、15、17)的线(12)中与所述块边界(1)相距最近的所述像素(11)的所述像素值p0,以形成所述具有像素(11、13、15、17)的线(12)中与所述块边界(1)相距最近的所述像素(11)的修改后的像素值p0′,并且被配置为:通过从所述相应的具有像素(21、23、25、27)的线(22)中与所述块边界(1)相距最近的所述像素(21)的所述像素值q0中减去所述第一偏移来修改所述相应的具有像素(21、23、25、27)的线(22)中与所述块边界(1)相距最近的所述像素(21)的所述像素值q0,以形成所述相应的具有像素(21、23、25、27)的线(22)中与所述块边界(1)相距最近的所述像素(21)的修改后的像素值q0′。
13.根据权利要求12所述的去块滤波器单元,其中,所述第一偏移计算器(110、210、310)被配置为:将所述第一偏移计算为等于(9×(q0-p0)-3×(q1-p1)+8)>>4,其中,>>表示右移运算。
14.根据权利要求12或13所述的去块滤波器单元,还包括:第一截断单元(230),被配置为通过以下方式来将所述第一偏移截断到-tC与tC的间隔内:如果所述第一偏移小于-tC,则将所述第一偏移设置为等于-tC,并且如果所述第一偏移大于tC,则将所述第一偏移设置为等于tC,其中,tC是取决于指派给所述块(10)的量化参数值的阈值。
15.根据权利要求12或13所述的去块滤波器单元,还包括:第二截断单元(240),被配置为通过以下方式将所述具有像素(11、13、15、17)的线(12)中与所述块边界(1)相距最近的所述像素(11)的所述修改后的像素值p0′截断到零与定义的最大值的间隔内:如果所述具有像素(11、13、15、17)的线(12)中与所述块边界(1)相距最近的所述像素(11)的所述修改后的像素值p0′小于零,则将所述具有像素(11、13、15、17)的线(12)中与所述块边界(1)相距最近的所述像素(11)的所述修改后的像素值p0′设置为等于零,并且如果所述具有像素(11、13、15、17)的线(12)中与所述块边界(1)相距最近的所述像素(11)的所述修改后的像素值p0′大于所述定义的最大值,则将所述具有像素(11、13、15、17)的线(12)中与所述块边界(1)相距最近的所述像素(11)的所述修改后的像素值p0′设置为等于所述定义的最大值,并且被配置为通过以下方式将所述相应的具有像素(21、23、25、27)的线(22)中与所述块边界(1)相距最近的所述像素(21)的所述修改后的像素值q0′截断到零与所述定义的最大值的间隔内:如果所述相应的具有像素(21、23、25、27)的线(22)中与所述块边界(1)相距最近的所述像素(21)的所述修改后的像素值q0′小于零,则将所述相应的具有像素(21、23、25、27)的线(22)中与所述块边界(1)相距最近的所述像素(21)的所述修改后的像素值q0′设置为等于零,并且如果所述相应的具有像素(21、23、25、27)的线(22)中与所述块边界(1)相距最近的所述像素(21)的所述修改后的像素值q0′大于所述定义的最大值,则将所述相应的具有像素(21、23、25、27)的线(22)中与所述块边界(1)相距最近的所述像素(21)的所述修改后的像素值q0′设置为等于所述定义的最大值。
16.根据权利要求12或13所述的去块滤波器单元,还包括:
第二偏移计算器(250),被配置为基于(p2+p0-2×p1+2×Δ)/4来计算第二偏移,其中,p2表示所述具有像素(11、13、15、17)的线(12)中与所述块边界(1)相距第三近的像素(15)的像素值,并且Δ表示所述第一偏移;以及
第三偏移计算器(260),被配置为基于(q2+q0-2×q1-2×Δ)/4来计算第三偏移,其中,q2表示所述相应的具有像素(21、23、25、27)的线(22)中与所述块边界(1)相距第三近的像素(25)的像素值,
其中,所述像素值修改器(220)被配置为:通过将所述第二偏移加至所述具有像素(11、13、15、17)的线(12)中与所述块边界(1)相距第二近的所述像素(13)的所述像素值p1来修改(S32)所述具有像素(11、13、15、17)的线(12)中与所述块边界(1)相距第二近的所述像素(13)的所述像素值p1,以形成所述具有像素(11、13、15、17)的线(12)中与所述块边界(1)相距第二近的所述像素(13)的修改后的像素值p1′;以及
通过将所述第三偏移加至所述相应的具有像素(21、23、25、27)的线(22)中与所述块边界(1)相距第二近的所述像素(23)的所述像素值q1来修改(S33)所述相应的具有像素(21、23、25、27)的线(22)中与所述块边界(1)相距第二近的所述像素(23)的所述像素值q1,以形成所述相应的具有像素(21、23、25、27)的线(22)中与所述块边界(1)相距第二近的所述像素(23)的修改后的像素值q1′。
17.根据权利要求16所述的去块滤波器单元,其中,
所述第二偏移计算器(250)被配置为:将所述第二偏移计算为等于(((p2+p0+1)>>1)-p1+Δ)>>1,其中,>>表示右移运算;以及
所述第三偏移计算器(260)被配置为:将所述第三偏移计算为等于(((q2+q0+1)>>1)-q1-Δ)>>1。
18.根据权利要求16所述的去块滤波器单元,还包括:第三截断单元(270),被配置为通过以下方式来将所述第二偏移截断到-tC2与tC2的间隔内:如果所述第二偏移小于-tC2,则将所述第二偏移设置为等于-tC2,并且如果所述第二偏移大于tC2,则将所述第二偏移设置为等于tC2,其中,tC2是取决于指派给所述块的量化参数值的阈值,并且被配置为通过以下方式来将所述第三偏移截断到-tC2与tC2的间隔内:如果所述第三偏移小于-tC2,则将所述第三偏移设置为等于-tC2,并且如果所述第三偏移大于tC2,则将所述第三偏移设置为等于tC2
19.根据权利要求16所述的去块滤波器单元,还包括:第二截断单元(240),被配置为通过以下方式将所述具有像素(11、13、15、17)的线(12)中与所述块边界(1)相距第二近的所述像素(13)的所述修改后的像素值p1′截断到零与定义的最大值的间隔内:如果所述具有像素(11、13、15、17)的线(12)中与所述块边界(1)相距第二近的所述像素(13)的所述修改后的像素值p1′小于零,则将所述具有像素(11、13、15、17)的线(12)中与所述块边界(1)相距第二近的所述像素(13)的所述修改后的像素值p1′设置为等于零,并且如果所述具有像素(11、13、15、17)的线(12)中与所述块边界(1)相距第二近的所述像素(13)的所述修改后的像素值p1′大于所述定义的最大值,则将所述具有像素(11、13、15、17)的线(12)中与所述块边界(1)相距第二近的所述像素(13)的所述修改后的像素值p1′设置为等于所述定义的最大值,并且被配置为通过以下方式将所述相应的具有像素(21、23、25、27)的线(22)中与所述块边界(1)相距第二近的所述像素(23)的所述修改后的像素值q1′截断到零与所述定义的最大值的间隔内:如果所述相应的具有像素(21、23、25、27)的线(22)中与所述块边界(1)相距第二近的所述像素(23)的所述修改后的像素值q1′小于零,则将所述相应的具有像素(21、23、25、27)的线(22)中与所述块边界(1)相距第二近的所述像素(23)的所述修改后的像素值q1′设置为等于零,并且如果所述相应的具有像素(21、23、25、27)的线(22)中与所述块边界(1)相距第二近的所述像素(23)的所述修改后的像素值q1′大于所述定义的最大值,则将所述相应的具有像素(21、23、25、27)的线(22)中与所述块边界(1)相距第二近的所述像素(23)的所述修改后的像素值q1′设置为等于所述定义的最大值。
20.根据权利要求16所述的去块滤波器单元,还包括:
第四偏移计算器(280),被配置为:基于(p3+p1-2×p2+2×Δp1)/4来计算第四偏移,其中,p3表示所述具有像素(11、13、15、17)的线(12)中与所述块边界(1)相距第四近的像素(17)的像素值,并且Δp1表示所述第二偏移;以及
第五偏移计算器(290),被配置为:基于(q3+q1-2×q2+2×Δq1)/4来计算第五偏移,其中,q3表示所述相应的具有像素(21、23、25、27)的线(22)中与所述块边界(1)相距第四近的像素(27)的像素值,并且Δq1表示所述第三偏移,
其中,所述像素值修改器(220)被配置为:通过将所述第四偏移加至所述具有像素(11、13、15、17)的线(12)中与所述块边界(1)相距第三近的所述像素(15)的所述像素值p2来修改所述具有像素(11、13、15、17)的线(12)中与所述块边界(1)相距第三近的所述像素(15)的所述像素值p2,以形成所述具有像素(11、13、15、17)的线(12)中与所述块边界(1)相距第三近的所述像素(15)的修改后的像素值p2′,并且被配置为:通过将所述第五偏移加至所述相应的具有像素(21、23、25、27)的线(22)中与所述块边界(1)相距第三近的所述像素(25)的所述像素值q2来修改所述相应的具有像素(21、23、25、27)的线(22)中与所述块边界(1)相距第三近的所述像素(25)的所述像素值q2,以形成所述相应的具有像素(21、23、25、27)的线(22)中与所述块边界(1)相距第三近的所述像素(25)的修改后的像素值q2′。
21.根据权利要求20所述的去块滤波器单元,其中,
所述第四偏移计算器(280)被配置为:将所述第四偏移计算为等于(((p3+p1+1)>>1)-p2+Δp1)>>1,其中,>>表示右移运算;并且
所述第五偏移计算器(290)被配置为:将所述第五偏移计算为等于(((q3+q1+1)>>1)-q2+Δq1)>>1。
22.一种编码器(40),包括根据权利要求12至21中任意一项所述的去块滤波器单元(100)。
23.一种解码器(60),包括根据权利要求12至21中任意一项所述的去块滤波器单元(100)。
24.一种用户设备(80),包括:
存储器(84),被配置为存储编码视频帧;
根据权利要求23所述的解码器(60),被配置为将所述编码视频帧解码为解码视频帧;以及
媒体播放器(86),被配置为将所述解码视频帧渲染为能够在显示器(88)上显示的视频数据。
25.一种网络设备(30),作为或者属于进行发送的单元(34)与进行接收的用户设备(36)之间的通信网络(32)中的网络节点,所述网络设备(30)包括根据权利要求22所述的编码器(40)和/或根据权利要求23所述的解码器(60)。
CN201180064761.8A 2011-01-14 2011-10-06 去块滤波 Active CN103299626B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610702114.XA CN106101707B (zh) 2011-01-14 2011-10-06 去块滤波

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201161432751P 2011-01-14 2011-01-14
US61/432,751 2011-01-14
PCT/SE2011/051199 WO2012096610A1 (en) 2011-01-14 2011-10-06 Deblocking filtering

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN201610702114.XA Division CN106101707B (zh) 2011-01-14 2011-10-06 去块滤波

Publications (2)

Publication Number Publication Date
CN103299626A CN103299626A (zh) 2013-09-11
CN103299626B true CN103299626B (zh) 2016-09-21

Family

ID=46507326

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201180064761.8A Active CN103299626B (zh) 2011-01-14 2011-10-06 去块滤波
CN201610702114.XA Active CN106101707B (zh) 2011-01-14 2011-10-06 去块滤波

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN201610702114.XA Active CN106101707B (zh) 2011-01-14 2011-10-06 去块滤波

Country Status (24)

Country Link
US (4) US8526509B2 (zh)
EP (2) EP2664141B1 (zh)
JP (3) JP5540163B2 (zh)
KR (1) KR101670116B1 (zh)
CN (2) CN103299626B (zh)
AP (1) AP3890A (zh)
AU (1) AU2011354786B2 (zh)
BR (1) BR112013015517B1 (zh)
CA (1) CA2824739C (zh)
DK (1) DK2664141T3 (zh)
ES (2) ES2548043T3 (zh)
HK (1) HK1185483A1 (zh)
HU (2) HUE041988T2 (zh)
IL (1) IL226929A (zh)
MA (1) MA34906B1 (zh)
MX (1) MX2013007960A (zh)
MY (1) MY183761A (zh)
NZ (1) NZ612089A (zh)
PL (2) PL2664141T3 (zh)
PT (1) PT2664141E (zh)
RU (1) RU2550541C2 (zh)
SG (1) SG191247A1 (zh)
TW (1) TWI538521B (zh)
WO (1) WO2012096610A1 (zh)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1333681A3 (en) * 2002-01-31 2004-12-08 Samsung Electronics Co., Ltd. Filtering method and apparatus for reducing block artifacts or ringing noise
BRPI0921986A2 (pt) * 2008-11-25 2018-06-05 Thomson Licensing métodos e aparelho para filtralçao por eliminação de artefatos à base de matrizes esparsas para codificação e decodificação de vídeo
CN101583041B (zh) * 2009-06-18 2012-03-07 中兴通讯股份有限公司 多核图像编码处理设备的图像滤波方法及设备
ES2548043T3 (es) * 2011-01-14 2015-10-13 Telefonaktiebolaget Lm Ericsson (Publ) Filtrado de desbloqueo
CN103299632B (zh) * 2011-01-14 2017-02-22 瑞典爱立信有限公司 去块效应滤波方法及去块效应滤波器单元
US9232237B2 (en) * 2011-08-05 2016-01-05 Texas Instruments Incorporated Block-based parallel deblocking filter in video coding
EP2774371B1 (en) * 2011-11-03 2020-08-26 Sun Patent Trust Efficient rounding for deblocking
KR102032000B1 (ko) * 2011-11-04 2019-10-14 선 페이턴트 트러스트 변경된 이미지 블록 경계 세기 유도에 의한 디블로킹 필터링
US10397615B2 (en) * 2012-07-03 2019-08-27 Telefonaktiebolaget Lm Ericsson (Publ) Strong deblocking filtering decisions
US20140056363A1 (en) * 2012-08-23 2014-02-27 Yedong He Method and system for deblock filtering coded macroblocks
US9445130B2 (en) * 2013-01-09 2016-09-13 Qualcomm Incorporated Blockiness metric for large HEVC block artifacts
CN104284199B (zh) * 2013-07-11 2019-02-01 Nxp股份有限公司 用降低复杂度的去块效应操作进行视频解码方法和装置
US10666975B2 (en) * 2014-04-23 2020-05-26 Sony Corporation Image processing apparatus and image processing method
US9779664B2 (en) * 2014-08-05 2017-10-03 Apple Inc. Concurrently refreshing multiple areas of a display device using multiple different refresh rates
JP6269431B2 (ja) * 2014-10-10 2018-01-31 ソニー株式会社 画像処理装置、画像処理方法及び画像処理システム
JP6545515B2 (ja) * 2015-04-24 2019-07-17 株式会社東芝 画像復号装置
CN106303550B (zh) 2015-06-11 2019-06-21 华为技术有限公司 去块效应滤波方法和去块效应滤波器
CN106470341B (zh) 2015-08-17 2020-10-02 恩智浦美国有限公司 媒体显示系统
JP6620354B2 (ja) 2015-09-30 2019-12-18 Kddi株式会社 動画像の処理装置、処理方法及びコンピュータ可読記憶媒体
US10110926B2 (en) * 2015-10-15 2018-10-23 Cisco Technology, Inc. Efficient loop filter for video codec
KR200486770Y1 (ko) 2015-12-17 2018-06-27 조기찬 공기층을 가지는 단열재
KR102331220B1 (ko) * 2016-12-27 2021-12-01 파나소닉 인텔렉츄얼 프로퍼티 코포레이션 오브 아메리카 부호화 장치, 복호 장치, 부호화 방법 및 복호 방법
CN106604039B (zh) * 2016-12-28 2020-07-31 北京奇艺世纪科技有限公司 一种滤波方法及装置
CN111149206B (zh) * 2017-11-15 2023-08-18 桑迪士克科技有限责任公司 在平台区中具有加厚字线的三维存储器器件及其制造方法
AU2019242247B2 (en) * 2018-03-30 2022-12-22 FG Innovation Company Limited Systems and methods for applying deblocking filters to reconstructed video data
US10554975B1 (en) * 2018-09-30 2020-02-04 Tencent America LLC Method and apparatus for video coding
JP7418152B2 (ja) 2018-12-17 2024-01-19 キヤノン株式会社 画像符号化装置、画像符号化方法、画像復号装置、画像復号方法

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3095140B2 (ja) 1997-03-10 2000-10-03 三星電子株式会社 ブロック化効果の低減のための一次元信号適応フィルター及びフィルタリング方法
FI117533B (fi) * 2000-01-20 2006-11-15 Nokia Corp Menetelmä digitaalisten videokuvien suodattamiseksi
WO2002096117A1 (en) 2001-05-25 2002-11-28 Pace Soft Silicon Limited Deblocking block-based video data
US7227901B2 (en) * 2002-11-21 2007-06-05 Ub Video Inc. Low-complexity deblocking filter
US20050013494A1 (en) 2003-07-18 2005-01-20 Microsoft Corporation In-loop deblocking filter
US7430337B2 (en) 2004-01-06 2008-09-30 Sharp Laboratories Of America, Inc. System and method for removing ringing artifacts
US7539248B2 (en) * 2004-04-29 2009-05-26 Mediatek Incorporation Adaptive de-blocking filtering apparatus and method for MPEG video decoder
US20050243914A1 (en) * 2004-04-29 2005-11-03 Do-Kyoung Kwon Adaptive de-blocking filtering apparatus and method for mpeg video decoder
US7430336B2 (en) * 2004-05-06 2008-09-30 Qualcomm Incorporated Method and apparatus for image enhancement for low bit rate video compression
NO322722B1 (no) * 2004-10-13 2006-12-04 Tandberg Telecom As Fremgangsmate for videokoding gjennom reduksjon av blokkartefakter
JP4605052B2 (ja) * 2006-03-03 2011-01-05 日本電気株式会社 動画像符号化方法、動画像復号方法、動画像符号化装置、動画像復号装置、フィルタ装置及びプログラム
US8111760B2 (en) 2006-11-16 2012-02-07 Texas Instruments Incorporated Deblocking filters
US20080123750A1 (en) * 2006-11-29 2008-05-29 Michael Bronstein Parallel deblocking filter for H.264 video codec
CN101527841B (zh) * 2008-03-06 2011-05-11 瑞昱半导体股份有限公司 去除图像区块效应的方法及装置
US8566515B2 (en) * 2009-01-12 2013-10-22 Maxim Integrated Products, Inc. Memory subsystem
US8451952B2 (en) * 2009-12-30 2013-05-28 Telefonaktiebolaget L M Ericsson (Publ) Iterative decoding and demodulation with feedback attenuation
CN102860005B (zh) 2010-02-05 2016-07-06 瑞典爱立信有限公司 去块滤波控制
CN103141096A (zh) * 2010-09-28 2013-06-05 三星电子株式会社 自适应滤波方法和设备
CN101951519A (zh) * 2010-10-12 2011-01-19 西安电子科技大学 高速去块效应滤波方法
ES2548043T3 (es) * 2011-01-14 2015-10-13 Telefonaktiebolaget Lm Ericsson (Publ) Filtrado de desbloqueo

Also Published As

Publication number Publication date
EP2664141A4 (en) 2013-12-11
TW201234858A (en) 2012-08-16
ES2548043T3 (es) 2015-10-13
RU2550541C2 (ru) 2015-05-10
AP2013007049A0 (en) 2013-08-31
RU2013134265A (ru) 2015-02-20
TWI538521B (zh) 2016-06-11
HUE041988T2 (hu) 2019-06-28
PL2938075T3 (pl) 2019-05-31
EP2938075B1 (en) 2018-12-05
NZ612089A (en) 2015-07-31
US10142659B2 (en) 2018-11-27
JP2014507863A (ja) 2014-03-27
AU2011354786B2 (en) 2016-05-26
EP2664141A1 (en) 2013-11-20
CN106101707A (zh) 2016-11-09
US9743115B2 (en) 2017-08-22
KR20140043715A (ko) 2014-04-10
US20140050272A1 (en) 2014-02-20
EP2938075A1 (en) 2015-10-28
MA34906B1 (fr) 2014-02-01
HUE027993T2 (en) 2016-11-28
AU2011354786A1 (en) 2013-08-01
BR112013015517B1 (pt) 2021-11-23
US20170302967A1 (en) 2017-10-19
US20130003865A1 (en) 2013-01-03
PL2664141T3 (pl) 2016-01-29
US20160142739A1 (en) 2016-05-19
CA2824739C (en) 2017-06-20
JP5540163B2 (ja) 2014-07-02
MY183761A (en) 2021-03-11
DK2664141T3 (en) 2015-08-31
US8526509B2 (en) 2013-09-03
US9407912B2 (en) 2016-08-02
CA2824739A1 (en) 2012-07-19
JP6096342B2 (ja) 2017-03-15
JP5889953B2 (ja) 2016-03-22
BR112013015517A2 (pt) 2016-09-20
SG191247A1 (en) 2013-07-31
CN103299626A (zh) 2013-09-11
ES2714349T3 (es) 2019-05-28
JP2016129388A (ja) 2016-07-14
CN106101707B (zh) 2019-04-19
HK1185483A1 (zh) 2014-02-14
JP2014197847A (ja) 2014-10-16
EP2664141B1 (en) 2015-08-12
PT2664141E (pt) 2015-10-21
KR101670116B1 (ko) 2016-10-27
AP3890A (en) 2016-11-10
MX2013007960A (es) 2013-08-01
WO2012096610A1 (en) 2012-07-19
IL226929A (en) 2017-01-31

Similar Documents

Publication Publication Date Title
CN103299626B (zh) 去块滤波
CN103430537B (zh) 去块滤波控制
US11601673B2 (en) Method and apparatus for performing intra-prediction using adaptive filter
CN103299632B (zh) 去块效应滤波方法及去块效应滤波器单元
CN108322747B (zh) 一种面向超高清视频的编码单元划分优化方法
CN103460700A (zh) 以帧内预测模式解码图像的方法
US20110228854A1 (en) Apparatus and method for encoding/decoding a video signal
EP2870758A1 (en) Controlling deblocking filtering
CN103442229A (zh) 适用于hevc标准的编码器中sao模式判决的比特率估计方法
CN103686169A (zh) 一种基于宏块特征的帧内预测快速算法
WO2024064329A1 (en) Reinforcement learning-based rate control for end-to-end neural network bsed video compression
CN110234013B (zh) 一种帧级运动矢量精度比特分配的优化方法
CN107211127A (zh) 用于对多媒体流进行解码的解码器、方法、和系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1185483

Country of ref document: HK

C14 Grant of patent or utility model
GR01 Patent grant
REG Reference to a national code

Ref country code: HK

Ref legal event code: GR

Ref document number: 1185483

Country of ref document: HK

TR01 Transfer of patent right

Effective date of registration: 20190225

Address after: Dublin, Ireland

Patentee after: Velos Media, LLC

Address before: Delaware

Patentee before: Ericsson Co.,Ltd.

Effective date of registration: 20190225

Address after: Delaware

Patentee after: Ericsson Co.,Ltd.

Address before: Stockholm

Patentee before: Telefonaktiebolaget LM Ericsson (publ)

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20220114

Address after: Stockholm, SWE

Patentee after: Telefonaktiebolaget LM Ericsson (publ)

Address before: Delaware

Patentee before: Ericsson Co.,Ltd.

Effective date of registration: 20220114

Address after: Delaware

Patentee after: Ericsson Co.,Ltd.

Address before: Irish Dublin

Patentee before: Velos Media, LLC

TR01 Transfer of patent right