CN113475070B - 针对自适应环路滤波的虚拟边界处理 - Google Patents
针对自适应环路滤波的虚拟边界处理 Download PDFInfo
- Publication number
- CN113475070B CN113475070B CN202080016799.7A CN202080016799A CN113475070B CN 113475070 B CN113475070 B CN 113475070B CN 202080016799 A CN202080016799 A CN 202080016799A CN 113475070 B CN113475070 B CN 113475070B
- Authority
- CN
- China
- Prior art keywords
- filter
- value
- current sample
- virtual boundary
- sample
- 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
Links
- 238000001914 filtration Methods 0.000 title claims abstract description 101
- 238000012545 processing Methods 0.000 title claims description 21
- 230000003044 adaptive effect Effects 0.000 title claims description 19
- 238000000034 method Methods 0.000 claims abstract description 49
- 238000004590 computer program Methods 0.000 claims description 7
- 239000000523 sample Substances 0.000 description 207
- 239000000872 buffer Substances 0.000 description 16
- 230000008569 process Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 8
- 238000012937 correction Methods 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 230000009467 reduction Effects 0.000 description 5
- 238000005259 measurement Methods 0.000 description 4
- 230000000007 visual effect Effects 0.000 description 4
- 241000023320 Luma <angiosperm> Species 0.000 description 3
- 238000013459 approach Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 229910003460 diamond Inorganic materials 0.000 description 3
- 239000010432 diamond Substances 0.000 description 3
- 238000002474 experimental method Methods 0.000 description 3
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 3
- 230000011664 signaling Effects 0.000 description 3
- 230000003321 amplification Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000003199 nucleic acid amplification method Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000002123 temporal effect Effects 0.000 description 2
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 239000003607 modifier Substances 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 102220187649 rs145044428 Human genes 0.000 description 1
- 229910052710 silicon Inorganic materials 0.000 description 1
- 239000010703 silicon Substances 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/103—Selection of coding mode or of prediction mode
- H04N19/105—Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/117—Filters, e.g. for pre-processing or post-processing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/119—Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/132—Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/176—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/80—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
- H04N19/82—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/85—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
- H04N19/86—Methods 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
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
提供了一种用于对视频序列的图像进行编码或解码的方法。该方法包括获得与图像相关联的样本值的集合。该方法包括确定当前样本值相对于虚拟边界的相对位置。该虚拟边界相对于第一样本值块与第二样本值块之间的块边界而定义。该虚拟边界与该块边界平行,并且与该块边界间隔至少一行或一列包括在第一样本值块中的样本值。该方法包括基于所确定的当前样本值相对于虚拟边界的相对位置来选择滤波器强度值。该方法包括基于所选择的滤波器强度值对当前样本值进行滤波。
Description
技术领域
本公开涉及视频序列的图像的编码和解码。
背景技术
视频序列由若干图像(本文中也称为“图片”)组成。在屏幕上观看时,图像由像素组成,每个像素具有红色、绿色和蓝色(RGB)值。然而,在对视频序列进行编码和解码时,图像通常不使用RGB、而是通常使用另一颜色空间(包括但不限于YCbCr、ICTCP、非恒定亮度YCbCr、和恒定亮度YCbCr)表示。若我们以YCbCr为例,它由Y、Cb和Cr三个分量组成。通常情况下,Y(称为亮度(1uma)并粗略表示亮度)具有全分辨率,而另外两个分量Cb和Cr(称为色度(chroma))的分辨率较小。典型的示例是包含1920×1080个RGB像素的高清(HD)视频序列,通常用1920×1080分辨率的Y分量、960×540Cb分量、和960×540Cr分量表示。分量中的元素称为样本。在上面给出的示例中,Y分量中因此有1920×1080个样本,因而样本和像素之间具有直接关系。因此,在本文中,我们有时互换使用术语像素和样本。对于Cb和Cr分量,样本和像素之间没有直接关系;单个Cb样本通常影响若干像素。
在由联合视频专家组(JVET)开发的最新视频编码标准多功能视频编码标准(VVC)中,图像的解码分两个阶段进行:预测编码和环路滤波。在预测解码阶段,将分量(Y、Cb和Cr)的样本划分为矩形块。例如,一个块的大小可以是4×8个样本,而另一个块的大小可以是64×64个样本。解码器获得关于如何对每个块进行预测的指令,例如从先前解码的图像复制样本(时间预测的示例),或者从当前图片的已解码部分复制样本(帧内预测的示例),或者其组合。为了改进该预测,解码器可以获得残差,通常使用诸如离散正弦DST或离散余弦DCT之类的变换编码对残差进行编码。该残差与预测相加,解码器可以继续对下一块进行解码。
预测解码阶段的输出是三个分量Y、Cb和Cr。然而,可以进一步提高这些分量的保真度,这是在环路滤波阶段完成的。VVC中的环路滤波阶段由三个子阶段组成;去块滤波器阶段、样本自适应偏移滤波器(SAO)子阶段、和自适应环路滤波器(ALF)子阶段。在去块滤波器子阶段,解码器通过在某些条件满足时对块边界附近的边缘进行平滑来改变Y、Cb和Cr。这提高了感知质量(主观质量),因为人类视觉系统非常擅长检测规则边缘,例如沿着块边界的块伪影。在SAO子阶段,解码器将以信号通知的值与满足某些条件的样本相加或者从满足某些条件的样本减去以信号通知的值,满足某些条件的样本例如在某个值范围内(带偏移SAO)或者具有特定邻域(边缘偏移SAO)。这可以减少振铃噪声,因为这种噪声通常在某个值范围或者在特定邻域(例如,局部最大值)中聚集。在本文中,我们将作为该阶段的结果的重构图像分量表示为YSAO、CbsAo、CrsAO。环路滤波器阶段不必等到三个分量的所有块都已重构,而是可以根据需要逐块进行。
本发明涉及第三子阶段ALF,因此我们将更详细地对其进行描述。自适应环路滤波背后的基本思想是图像分量YSAO、CbsAO和CrsAO的保真度通常可以通过使用以信号从编码器向解码器通知的线性滤波器对图像进行滤波来提高。例如,通过求解最小二乘问题,编码器可以确定线性滤波器应具有哪些系数,以便最有效地降低到目前为止的重构图像分量(YSAO、CbsAO、CrSAO)和原始图像分量(Yorg、Cborg和Crorg)之间的误差。然后可以从编码器向解码器以信号通知这些系数。解码器如上所述重构图像,得到YSAO、CbsAO和CrSAO,从比特流中获得滤波器系数,然后应用滤波器得到最终输出,我们将其表示为YALF、CbALF、CrALF。
在VVC中,ALF亮度滤波器比这更先进。首先,观察到以下通常是有利的:利用一个系数集合对一些样本进行滤波而避免对其他样本进行滤波或者利用另一系数集合对那些其他样本进行滤波。为此,VVC将每个Y样本(即每个亮度样本)分类为25个类之一。基于样本的局部邻域(8×8邻域),特别地,基于周围样本的梯度和周围样本的活动,来针对每个4×4块决定样本属于哪个类。从VVC规范中可以看出,计算了四个变量来确定当前样本的局部邻域的特性,其中filtH水平测量梯度,filtV垂直测量梯度,filtD0从左上到右下对角测量梯度,且filtD1从右上到左下对角测量梯度:
然后,在当前样本周围的局部邻域中对这些变量求和,以如下所示的获得对邻域的方向性的更可靠估计,其中sumH指示filtH的总和,sumV指示filtV的总和,sumD0指示filtD0的总和,sumD1指示filtD1的总和,sumOfHV指示sumH和sumV的总和,根据下面的VVC草案:
最后,基于这些度量进行分类,以确定哪个滤波器集合filtIdx用于当前样本并确定transposeIdx,使得若干方向性可以共享相同的滤波器系数,根据下面的VVC草案:
从上面可以看出,等于0到4的filtIdx没有任何特定的方向特性。大于4的filterIdx的值与样本的方向性相对应,因为这意味着dirS大于0。研究对filtIdx的加法,
filtIdx[x][y]+=(((dir1[x][y]&0x1)<<1)+dirS[x][y])*5,我们看到,如果我们有对角线方向性,即如果dir1是0或2,则第一项将为零,我们可以加上1*5(如果dirS=1)或2*5(如果dirS=2)。(如果dirS=0,我们将不进行加法。)因此,filterIdx的从5到14的所有值都与样本的对角线方向性相对应。同样,如果我们有水平或垂直方向性,即如果dirl是1或3,则第一项(dir1&1)<<1将变为2。因此,在这种情况下,我们将加上(2+1)*5(如果dirS=1),或者我们将加上(2+2)*5(如果dirS=2),产生15到24之间的值。因此我们得出结论,filtIdx以表1中描述的以下方式指示周围样本的方向性:
表1:值filtIdx按照以下方式指示方向性
filtIdx范围 | 方向性 |
0..4 | 无方向性 |
5..14 | 对角线方向性(dir1=0或2) |
15..24 | 水平或垂直方向性(dirl=1或3) |
其中transposeIdx等于0与没有转置滤波器系数相对应,transposeIdx等于1与沿着从右上到左下的对角线对滤波器系数进行镜像相对应,transposeIdx等于2与沿着垂直轴对滤波器系数进行镜像相对应,以及transposeIdx等于3与将滤波器系数旋转90度相对应。
这意味着当filterIdx在15到24之间且transposeIdx等于3时,当前样本周围的局部结构具有垂直方向性,而当transposeIdx等于0时,当前样本周围的局部结构具有水平方向性。
编码器可以为25个类中的每个类以信号通知一个系数集合。在VVC中,在自适应参数集合(APS)中以信号通知ALF系数等,然后可以通过aps索引引用,aps索引确定在对图片进行解码时使用所定义的集合中的哪个集合。解码器然后将首先决定样本属于哪个类,然后选择适合的系数集合对样本进行滤波。然而,以信号通知25个系数集合可能开销巨大。因此,VVC标准还允许使用唯一的系数集合对25个类中的几个类进行滤波。其余的类可以重用另一类中使用的系数集合,或者可以确定根本不应对其进行滤波。另一种降低成本的方法是使用所谓的固定系数集合。这是解码器已知的64个硬编码的滤波器(即64组系数值)的集合。编码器可能以非常低廉的方式向解码器以信号通知使用这些固定(即硬编码的)滤波器之一,因为它们已经为解码器所知。例如,解码器存储不同的16组索引值的集合,每组索引值具有N个索引值(例如N=25),编码器发送指向16组索引值(每组索引值具有N个索引值)的初始索引值,其中包括在该组N个索引值中的索引值中的每个索引值与类相关联,并且所述索引值中的每个索引值指向64个硬编码的滤波器之一。例如,该组索引值中的N个值中的第一个值指向应当用于第一类的固定滤波器,第二个值指向应当用于第二类的固定滤波器,等等。因此,解码器基于初始索引值和类来获得特定滤波器的索引值。虽然这些滤波器是廉价的,但是它们可能无法完美匹配所需的滤波器,因此可能导致质量稍差。对于属于Cb或Cr的样本,即对于色度样本,不使用分类且对所有样本使用相同的系数集合。
发送滤波器系数的成本很高,因此对两个滤波器位置使用相同的系数值。对于亮度(Y分量中的样本),以图1所示的方式重新使用系数。如图1所示,每个系数在滤波器中使用两次,图1示出了亮度滤波器覆盖的空间邻域(即,图1示出了用于对当前样本的值(即,邻域中心的样本值)进行滤波的其他样本值)及其关于亮度的滤波器系数的配置。可以看出,滤波器覆盖是对称的,并且覆盖在水平方向上和在垂直方向上远离中心的多达3个样本。
假设R(x,y)是要滤波的样本,位于图1的中间。然后,样本R(x,y-1)(正上方的样本)和样本R(x,y+1)(正下方的样本)将使用相同的系数C6进行处理。
位置(x,y)处的重构样本的经滤波版本(我们将表示为RF(x,y))根据VVC规范的等式1411至1426和表43以如下方式计算,其中(x,y)=(hx,vy)并且C0=f[idx[0]],C1=f[idx[1]],C2=f[idx[2]],C3=f[idx[3]],C4=f[idx[4]],C5=f[idx[5]],C6=f[idx[6]],C7=f[idx[7]],C8=f[idx[8]],C9=f[idx[9]],C10=f[idx[10]]且C11=f[idx[11]]:
CtbSizeY是CTU的垂直大小。VVC中的CTU通常为128×128。这里,Clip3(x,y,z)操作只是确保值z的大小永远不超过y或低于x:
也要从编码器向解码器以信号通知限幅参数“c[x]”。
对图像的解码是按照连续的CTU顺序完成的。作为示例,如果视频帧有512×256个样本,则它可以由两行128×128的CTU组成,每行将有四个CTU。在对第二行CTU进行解码时,有时需要解码器访问来自先前(第一)CTU行的样本。在实际的硬件解码器中,这通常通过将最底部的样本行保存在所谓的行缓冲器中来解决,可以容易地从行缓冲器中访问最底部的样本行。继续我们的示例,如果我们需要访问当前样本上方的两个样本,则我们必须在我们的行缓冲器中存储两个样本行,在这种情况下是512×2个样本。然而,行缓冲器在硅表面积方面是昂贵的。因此,在VVC标准的许多部分中,禁止或限制CTU之外的读取,使得减少对昂贵的行缓冲器的需求。
在引入“虚拟水平CTU边界”的概念之前,如图13所示,ALF的行缓冲器要求是6个附加的行(line/row),其中对上方CTU的ALF滤波仅可以利用以下滤波器执行:仅覆盖从上方CTU的底部开始的第4行上方的样本(如位置106所示)的滤波器。在已经执行了去块和SAO时,可以在位置105和以下的行执行ALF。
减少对ALF的水平CTU行缓冲器要求的需求的一种尝试是VVC中使用的“虚拟水平CTU边界”的概念。虚拟水平边界的位置是当前CTU和当前CTU正上方的CTU(即“上方”CTU)之间的边界上方的四个样本,如图2所示,其示出了虚拟边界的位置和两个可能的ALF滤波。由于去块的工作原理,虚拟边界位于这里:在对CTU边界处的样本进行去块时,去块过程可以读取CTU边界上方的多达四个样本。这意味着上方CTU中虚拟边界以下的样本不能被去块,直到当前CTU已被解码-最后四行取决于当前CTU中的样本值。
在上方CTU中的虚拟边界以下的样本已被去块之后,它们必须经过SAO和ALF处理。为简单起见,假设SAO被禁用,仅需要执行ALF处理。如果在执行ALF滤波时不考虑虚拟边界,则将会访问虚拟边界上方的一些样本。这可以在图2中看出,当滤波器处于位置101时-访问虚拟边界上方的三行样本。这将意味着,将会需要行缓冲器的额外3行,这是开销巨大的。为了避免这一点,规定:当ALF滤波发生在虚拟垂直CTU边界处或虚拟垂直CTU边界下方时,不使用虚拟边界上方的样本(例如减少了滤波器的空间覆盖)。类似地,当在虚拟水平CTU边界上方进行滤波时,不使用虚拟垂直CTU边界处或虚拟垂直CTU边界下方的样本。这通过使用被称为对称填充的内容来实现。可以如下地描述对称填充。当滤波器的中心位于虚拟垂直CTU边界处或位于虚拟CTU边界上方的行处时,相邻行被位于滤波器中心的行填充,这与VVC规范中的表43定义的填充参数y1=y2=y3=0相对应。在图3中,我们已经示出了虚拟边界刚好位于中心样本上方的示例。在这种情况下,对称填充将意味着左侧所示的样本将被滤波,就像样本值是右侧所示的一样。
当中心行是在虚拟边界上方两行处的行时,虚拟边界处或虚拟边界下方的行被与中心行相邻且位于中心行下方的行填充,与中心行相邻且位于中心行上方的行之上的行被中心行上方的行填充,这与VVC规范中的表43定义的填充参数y1=y2=y3=1相对应。图4示出了虚拟边界从滤波器中心移了一步,且左侧的样本然后将被滤波,就像它们是右侧所示的值一样。这有效地意味着滤波器的空间覆盖降低为仅成为水平滤波器。
当中心行是在虚拟边界上方三行处的行时,虚拟边界处或虚拟边界下方的行被中心行下方两行处的行填充。中心行上方多于两行的行被中心行上方两行处的行填充,这与VVC规范中的表43中的填充参数y1=1、y2=2和y3=2相对应。图5示出了当滤波器支持刚好穿过虚拟边界时进行滤波的示例,其中左侧的样本被滤波,就像它们是右侧的值一样。
对称填充方法还用于对虚拟边界下方的行进行滤波。为了确定分类,用于分类的区域被限制为避免包括虚拟边界另一侧上的样本,且除此之外,基于虚拟边界当前侧的行来填充虚拟边界另一侧上的相邻行。
对称填充还应用于色度分量的ALF滤波,以避免增加用于色度的行缓冲器的数量。对于色度,虚拟边界的位置是在距离上方CTU的底部第二行处,因为那是用于水平色度CTU边界的色度去块的最后一行。
除了如上所示的虚拟水平CTU边界的概念外,VVC中的虚拟边界还可以定义在以下位置:作为8的倍数的水平位置和作为8的倍数的垂直位置。对于这些边界,仅对滤波器中的以下侧使用填充:与滤波器的中心样本的位置相比,该侧具有虚拟边界的另一侧上的任意滤波器系数,例如当前样本,使得使用与边界相邻的与当前样本位于相同侧上的样本,而不是虚拟边界另一侧上的样本。针对虚拟水平CTU边界描述的对称填充可以被视为双侧填充,其中所定义的虚拟边界使用单侧填充。
sps_virtual_boundaries_present_flag等于1指定在SPS中以信号通知虚拟边界的信息。sps_virtual_boundaries_present_flag等于0指定不在SPS中以信号通知虚拟边界的信息。当在SPS中以信号通知一个或多于一个虚拟边界时,禁用跨过参考SPS的图片中的虚拟边界的环路滤波操作。环路滤波操作包括去块滤波器、样本自适应偏移滤波器和自适应环路滤波器操作。
ph_virtual_boundaries_present_flag等于1指定在PH中以信号通知虚拟边界的信息。ph_virtual_boundaries_present_flag于0指定不在PH中以信号通知虚拟边界的信息。当在PH中以信号通知一个或多于一个虚拟边界时,禁用跨过图片中的虚拟边界的环路滤波操作。环路滤波操作包括去块滤波器、样本自适应偏移滤波器和自适应环路滤波器操作。当不存在时,ph_virtual_boundaries_present_flag的值被推断为等于0。
在JVET-O0636[1]中,首次提出被称为跨分量自适应环路滤波器(CC-ALF)的工具,作为自适应环路滤波器过程的一部分。在JVET-P会议和JVET-Q会议中的核心实验中对CC-ALF进行了研究。CC-ALF利用亮度样本值来细化每个色度分量。亮度样本值是SAO之后、亮度ALF操作之前的重构亮度样本。针对每个色度分量i,对亮度样本应用线性的钻石形滤波器,以导出残差校正ΔIi(x,y)。在ALF色度之后将残差校正应用于重构色度样本以导出经重构的色度样本值。图6示出了CC-ALF相对于其他环路滤波器的位置:
在JVET-P2025[2]中,核心实验5(CE5)的说明中:跨分量自适应环路滤波,CC-ALF指定了用于核心实验测试的锚CC-ALF(在当前发明的以下部分,被称为“CE锚”),其包括以下属性:1)滤波器形状是具有8个唯一系数的3×4钻石形;2)滤波器系数动态范围在[-32,31]之间,含端值;3)要在CTU级执行的滤波器选择支持最多4个滤波器;4)在虚拟边界使用对称行选择;5)不使用时间层系数缓冲器;以及6)将残差校正限幅在-2BitDepthC-1到2BitDepthC -1-1之间,含端值。
CE锚将8抽头钻石形CC-ALF滤波器应用于以要细化的色度样本为中心的共位亮度样本。图7示出了CE锚CC-ALF滤波器形状。
假设RC(xC,yC)是要通过CC-ALF细化的ALF色度重构色度样本,其中(xC,yC)指定色度样本在当前图片中的位置。与RC(xC,yC)共位的亮度样本是RL(xL,yL),其中(xL,yL)指定共位亮度样本在当前图片中的位置。要通过CC-ALF滤波的8个亮度样本是RL(xL-1,yL)、RL(xL,yL-1)、RL(xL,yL)、RL(xL-1,yL+1)、RL(xL+1,yL-1)、RL(xL+1,yL)、RL(xL+1,yL+1)、RL(xL+2,yL)。图8示出了相对于亮度样本位置的8抽头3×4钻石形CC-ALF滤波器系数。
残差校正ΔIi(x,y)的计算方式如下:
ΔIi(x,y)=(CL0*RL(xL-1,yL)+CL1*RL(xL,yL-1)+CL2
*RL(xL,yL)+CL3*RL(xL,yL+1)+CL4
*RL(xL+1,yL-1)+CL5*RL(xL+1,yL)+CL6
*RL(xL+1,yL+1)+CL7*RL(xL+2,yL)
+2shiftFactor-1)
>>shiftFactor (式4)
其中,CLi指定CC-ALF滤波器系数,i的范围从0到7,除了CL2之外的每个系数在编码器侧训练。
CC-ALF滤波器系数CLi具有[-32,31]之间的值范围,含端值。该值范围也被称为动态范围。
CL2=(-1)*(CL0+CL1+CL3+CL4+CL5+CL6+CL7)其中,被限幅到[-32,31]之间的值范围,含端值。
shiftFactor=系数比特缩放+(BitDepthY-BitDepthC),其中在CE锚中,系数比特缩放等于7。
将残差校正ΔIi(x,y)限幅到[-2BitDepthC-1,2BitDepthC-1-1]之间的值范围,含端值。然后,经CC-ALF细化的色度样本RF(xC,yC)被导出为:RF(xC,yC)=ΔIi(x,y)+RC(xC,yC),其中被限幅到[0,2BitDepthC-1]之间的值范围,含端值。
利用6比特固定长度码对CC-ALF滤波器系数进行编码,其可以表示从0到63的值范围。经编码/解码的CC-ALF系数被称为DL(i),i的范围为从0、1、2到7。CC-ALF系数CL(i)等于DL(i)-32。
与ALF类似,CC-ALF也借助于针对亮度样本的滤波的对称填充,使用虚拟边界处理来避免增加对亮度的行缓冲器要求。
发明内容
目前存在某些挑战。观察到ALF虚拟边界处理可以生成视觉伪像。伪像在虚拟水平CTU边界处和虚拟水平CTU边界上方的行处最突出。伪像的原因是由于填充,这有效地减少了滤波器的空间覆盖--即,与确定滤波器系数期间使用的样本相比,用于滤波的样本数量减少了,如图3至图5所示。因为与远离边界的样本(例如图5中)相比,在对靠近虚拟边界的样本进行滤波时(例如图3中),填充对样本的影响最大,所以伪影在那里变得最大。
如果我们考虑水平虚拟边界,则由于填充的ALF滤波器支持将仅是水平的。这可以在图9中看出。在左上图中,我们已经从图3中的所有值中减去了中间样本(120)。然后,将这些值乘以图9的右上图中所示的系数。然而,这与在除中间行之外的任何地方使用零是一样的,如图9的右下图中所示。因此,图9示出了在使用填充样本差异时(左上),滤波器(右上)变为仅是水平滤波器(下部)。
与中心样本水平相邻的样本对滤波的贡献将是(图1中的C12的位置处的)中心与(图1中的C11的位置处的)最紧邻样本之间的预期差异的5倍,并且是(图1中的C12的位置处的)中心样本与(图1中的C10的位置处的)距中心样本距离为2的相邻样本之间的预期差异的3倍。此外,各个相邻样本的滤波器系数将等于与该相邻样本垂直对齐的系数之和,例如在C11的位置处,系数将是C11+C1+C3+C5+C7,依此类推。
本公开提出了从虚拟边界处滤波移除视觉伪像的可选方案。一种可选方案是省略虚拟边界处和虚拟边界上方的行处的滤波,例如,当滤波器的空间覆盖与预期空间覆盖相比显著减少以在对虚拟边界一侧滤波时避免使用虚拟边界另一侧上的样本时,实际上只有具有水平空间覆盖的滤波器。
另一可选方案是从滤波中减少当前样本的改变量,以反映滤波器由于虚拟边界附近的填充而导致的修改,例如,当滤波器的空间覆盖与预期空间覆盖相比显著减少以在虚拟边界一侧滤波时避免使用虚拟边界另一侧上的样本时,实际上只有具有水平空间覆盖的滤波器。
另一可选方案是限制滤波器的空间覆盖的减少量,使得滤波器的空间覆盖至少包括水平方向和垂直方向上距离中心样本距离为1的相邻样本。
每个可选方案提供了移除VVC中用于ALF的虚拟边界处理可能引入的伪像的优点。第二可选方案还通过降低滤波强度(例如,当前样本值在虚拟边界处进行滤波的改变量)来保持对虚拟边界进行滤波的一些益处。
因此,根据本公开的第一方面,提供了一种用于对视频序列的图像进行编码或解码的方法。该方法包括:获得与图像相关联的样本值的集合,该样本值的集合包括前样本值和与当前样本值相邻的样本值,其中,所获得的样本值的集合包括在样本值的第一矩形块内,该样本值的集合包括前样本值和与当前样本值相邻的样本值。该方法还包括确定当前样本值相对于虚拟边界的相对位置。该虚拟边界相对于第一样本值块与第二样本值块之间的块边界而定义。该虚拟边界与该块边界平行,并且与该块边界间隔至少一行或一列包括在第一样本值块中的样本值。该方法还包括基于所确定的当前样本相对于虚拟边界的相对位置来选择滤波器强度值。该方法还包括基于所选择的滤波器强度值对当前样本值进行滤波。
根据本公开的第二方面,提供了一种用于对视频序列的图像进行编码或解码的方法。该方法包括获得与图像相关联的样本值的集合。该样本值的集合包括当前样本值和与当前样本值相邻的样本值,其中,所获得的样本值的集合包括在样本值的第一矩形块内。该方法还包括确定当前样本值相对于虚拟边界的相对位置。该虚拟边界相对于第一样本值块与第二样本值块之间的块边界而定义。该虚拟边界与该块边界平行,并且与该块边界间隔至少一行或一列包括在第一样本值块中的样本值。该方法还包括:基于所确定的当前样本值相对于虚拟边界的相对位置来做出是否对当前样本值进行滤波的决定。
根据本公开的第三方面,提供了一种包括指令的计算机程序,该指令在由处理电路执行时,使该处理电路执行第一或第二方面中任一项的方法。
根据本公开的第四方面,提供了一种包括根据第三方面的计算机程序的载体,其中,该载体是电信号、光信号、无线电信号和计算机可读存储介质中的一种。
根据本公开的第五方面,提供了一种装置,该装置适于执行第一或第二方面的方法。
附图说明
图1示意性地示出了滤波器系数的使用;
图2示意性地示出了虚拟边界的位置和两个可能的ALF滤波的示例;
图3示意性地示出了虚拟边界刚好位于中心样本上方的示例;
图4示意性地示出了虚拟边界从滤波器中心移了一步且左侧的样本然后将被滤波的示例;
图5示意性地示出了滤波器支持刚好穿过虚拟边界时进行滤波的示例;
图6示意性地示出了CC-ALF相对于其他环路滤波器的位置;
图7示意性地示出了CE锚CC-ALF滤波器形状;
图8示意性地示出了相对于亮度样本位置的8抽头3×4钻石形CC-ALF滤波器系数;
图9示意性地示出了在使用填充样本差异时(左上),滤波器(右上)变为仅是水平滤波器(下部)的示例;
图10示意性地示出了根据示例实施例的系统;
图11示意性地示出了根据一些实施例的编码器的示意框图;
图12示意性地示出了根据一些实施例的解码器的示意框图;
图13和14分别示意性地示出了虚拟边界的位置和两个可能的ALF滤波的示例;
图15示意性地示出了当前样本位于紧接虚拟边界上方的行的示例;
图16示意性地示出了当前样本位于紧接在与虚拟边界紧邻的行上方的行的示例;
图17示意性地示出了由于填充导致的ALF滤波器支持是三行的示例;
图18至20分别示意性地示出了根据一些实施例的用于处理图像的过程的流程图;
图21示意性地示出了根据一些实施例的用于实现编码器或解码器的装置的框图;
图22示意性地示出了以常规方式处理的第一图像(左图像)和根据实施例1处理的第二图像(底图像);
图23示意性地示出了以常规方式处理的第一图像(左图像)和根据实施例2处理的第二图像(底图像);
图24示意性地示出了当前样本位于紧接虚拟边界下方的行的示例;以及
图25示意性地示出了当前样本位于紧接在与虚拟边界紧邻的行下方的行的示例。
具体实施方式
图10示出了根据示例实施例的系统1000。系统1000包括编码器1002和解码器1004。在所示的示例中,解码器1004可以经由网络110(例如,互联网或其他网络)接收由编码器1002产生的编码图像。
图11是编码器1002的示意框图。如图11所示,编码器1002取得原始图像,并减去预测41,预测41是从先前解码的样本(“帧内预测”49)或来自通过被称为运动补偿50的方法存储在帧缓冲器48中的先前解码帧的样本中选择51的。找到最佳运动补偿样本的任务通常被称为运动估计50,并且涉及与原始样本的比较。在减去预测41之后,产生的差被变换42,随后被量化43。经量化的结果被熵编码44,产生可以被存储、发送或进一步处理的比特。量化43的输出还被逆量化45,随后是逆变换46。然后,来自51的预测被加47,将结果转发到帧内预测单元49和环路滤波器单元100二者。环路滤波器单元100可以进行去块、SAO和/或ALF滤波(包括CC-ALF滤波)。将结果存储在帧缓冲器48中,用于将来的预测。图11中未示出的是,其他块(例如42、43、49、50、51和100)的编码参数也可以被熵编码。
图12是根据一些实施例的解码器1004的示意框图。解码器1004取得经熵编码的变换系数,然后由解码器61对这些变换系数进行解码。然后对解码器61的输出进行逆量化62,随后进行逆变换63,以形成经解码的残差。将该经解码的残差与预测相加64。从运动补偿单元67或者从帧内预测单元66选择68预测。在将预测与经解码的残差64相加之后,可以转发样本以用于随后块的帧内预测。还可以将样本转发到环路滤波器单元100,其进行去块、SAO处理和/或ALF处理(包括CC-ALF滤波)。将环路滤波器单元100的输出转发给帧缓冲器65,其可以用于随后解码图像67的运动补偿预测。环路滤波器单元100的输出还可以输出解码图像以用于解码器外的观看或后续处理。图12中未示出的是,其他块(例如63、67、66和100)的参数也可以被熵解码。作为示例,可以对块100中的ALF滤波器的系数进行熵解码。
本文公开的实施例可用于避免由于对静止图像或视频图像中的虚拟边界进行滤波而生成伪像。这可以应用于编码器1002和/或解码器1004。该方法主要针对虚拟水平CTU边界进行描述,但一般地,也可以应用于虚拟边界,例如应用于参照列而不是行的虚拟垂直边界。该方法还主要针对ALF并针对亮度进行描述,但也可用于色度并用于CC-ALF。
实施例1
在要滤波的样本(“当前样本”)“位于”虚拟水平CTU边界“之上”(即,在当前样本位于紧接在虚拟边界上方的行中时)或者当前样本位于与紧接在位于虚拟水平CTU边界之上的行的上方的行中(例如,当滤波器空间覆盖从预期空间覆盖显著减少(这样做是为了避免滤波器使用虚拟边界另一侧的样本)时)时,滤波不修改当前样本。否则,滤波可以修改当前样本。
这可以通过以下实现:在滤波之前确定垂直位置,并且如果所确定的位置在虚拟水平CTU边界或虚拟水平CTU边界上方的行处,则省略滤波。如果虚拟水平CTU边界在以CTU的样本给出的y=CtbSizeY-4处,其中该CTU的顶行是第0行,则当y等于CtbSizeY-4或y等于CtbSizeY-5(例如,虚拟边界上方的行)时,不应用滤波,否则应用滤波。
做完全相同的事情的另一种方法是引入水平填充,使得当所确定的位置处于虚拟水平CTU边界或虚拟水平CTU边界上方的行处时,滤波器支持的所有相邻样本都指向当前样本,否则遵守填充参数,使得滤波可以修改当前样本。对VVC中的等式1424和表43中的改变如下所示:
sum=f[idx[0]]*(Clip3(-c[idx[0]],c[idx[0]],
recPictureL[hx,vy+y3]-curr)+
Clip3(-c[idx[0]],c[idx[0]],recPictureL[hx,vy-y3]-curr))
+
f[idx[1]]*(Clip3(-c[idx[1]],c[idx[1]],
recPictureL[hx+1-x1,vy+y2]-curr)+
Clip3(-c[idx[1]],c[idx[1]],
recPictureL[hx-1+x1,vy-y2]-curr))+
f[idx[2]]*(Clip3(-c[idx[2]],c[idx[2]],
recPictureL[hx,vy+y2]-curr)+
Clip3(-c[idx[2]],c[idx[2]],recPictureL[hX,vy-y2]-curr))
+
f[idx[3]]*(Clip3(-c[idx[3]],c[idx[3]],
recPictureL[hx-1+x1,vy+y2]-curr)+
Clip3(-c[idx[3]],c[idx[3]],
recPictureL[hx+1-x1,vy-y2]-curr))+
f[idx[4]]*(Clip3(-c[idx[4]],c[idx[4]],
recPictureL[hx+2-x2,vy+y1]-curr)+
Clip3(-c[idx[4]],c[idx[4]],
recPictureL[hx-2+x2,vy-y1]-curr))+
f[idx[5]]*(Clip3(-c[idx[5]],c[idx[5]],
recPictureL[hx+1-x1,vy+y1]-curr)+
Clip3(-c[idx[5]],c[idx[5]],
recPictureL[hx-1+x1,vy-y1]-curr))+
f[idx[6]]*(Clip3(-c[idx[6]],c[idx[6]],
recPictureL[hx,vy+y1]-curr)+
Clip3(-c[idx[6]],c[idx[6]],recPictureL[hx,vy-y1]-curr))
+
f[idx[7]]*(Clip3(-c[idx[7]],c[idx[7]],
recPictureL[hx-1+x1,vy+y1]-curr)+
Clip3(-c[idx[7]],c[idx[7]],
recPictureL[hx+1-x1,vy-y1]-curr))+
f[idx[8]]*(Clip3(-c[idx[8]],c[idx[8]],
recPictureL[hx-2+x2,vy+y1]-curr)+
Clip3(-c[idx[8]],c[idx[8]],
recPictureL[hx+2-x2,vy-y1]-curr))+
f[idx[9]]*(Clip3(-c[idx[9]],c[idx[9]],
recPictureL[hx+3-x3,vy]-curr)+
Clip3(-c[idx[9]],c[idx[9]],recPictureL[hx-3+x3,vy]-curr))
+
f[idx[10]]*(Clip3(-c[idx[10]],c[idx[10]],
recPicturer[hx+2-x2,vy]-curr)+
Clip3(-c[idx[10]],c[idx[10]],
recPictureL[hx-2+x2,vy]-curr))+
f[idx[11]]*(Clip3(-c[idx[11]],c[idx[11]],
recPictureL[hx+1-x1,vy]-curr)+
Clip3(-c[idx[11]],c[idx[11]],
recPictureL[hx-1+x1,vy]-curr)) (1424)
实施例2
在该实施例中,将特定的滤波量的减少应用于对以下的滤波:紧邻虚拟水平边界(即,紧接在虚拟边界上方或紧接在虚拟边界下方)的当前样本和紧接在与虚拟水平边界紧邻的行上方/紧接在与虚拟水平边界紧邻的行下方的行。在这种情况下,滤波器的空间覆盖减少为仅覆盖水平方向上的样本。
这可以通过以下实现:在滤波之前确定垂直位置,并且如果所确定的位置在虚拟水平CTU边界或虚拟水平CTU边界上方的行处,则专门减少滤波量。如果虚拟水平CTU边界在以CTU的样本给出的y=CtbSizeY-4处,其中该CTU的顶行为第0行。则当y等于CtbSizeY-4或y等于CtbSizeY-5(例如,虚拟边界上方的行)时,专门减少滤波量,否则不专门减少滤波量。
更具体地,滤波量是指滤波的强度。作为示例,假设我们有三个样本ILEFT、ICENTER、IRIGHT。中心样本的经滤波版本可以使用差分表示为:
IFILTERED=ICENTER+[5*(ILEFT-ICENTER)+5*(IRLGHT-ICENTER)]/16。
以上相当于:
IFILTERED=[5*ILEFT+6*ICENTER)+5*IRIGHT]/16,
这是非常强的滤波。然而,通过将除以16改变为除以32(即,将除数从值16改变为值32),我们得到:
IFILTERED=ICENTER+[5*(ILEFT-ICENTER)+5*(IRIGHT-ICENTER)]/32。
这相当于:
IFILTERED=[5*ILEFT+22*ICENTER)+5*IRIGHT]/32,
这导致弱得多的滤波,因为平均地看,ICENTER值的经滤波版本与原始ICENTER值的偏差较小。同样清楚的是,当滤波器使用差分表示时,只需将除数从16改变为32就可以轻松地改变滤波器的强度。通常,可以将除数定义为x*2^(-N),其中N大于0。这可以优选地通过右移来实现,x*2^(-N)=x>>N,例如将x右移。
在VVC中实现这一点的一种方法是确定右移因子,当所确定的垂直位置位于虚拟水平CTU边界处或者位于这种边界上方的行处时,右移因子具有比其他情况下的右移因子更高的值。右移因子的合理增加至少2,例如基本上将滤波的贡献减少到当前值的四分之一,因为对于亮度,填充与对当前样本的两个水平相邻样本的贡献增加5相对应,而对于色度,填充与对当前色度样本的两个水平相邻样本的贡献增加3相对应。这可以在VVC规范的基础上通过引入自适应移位因子alfShift(以下标黄)来实现。因此,对于虚拟水平CTU边界和该行上方的行上的样本,可以减少当前样本curr的修改量。在下面针对亮度的示例中,右移因子与alfShiftY相对应,且在该示例中,右移增加3与将滤波的贡献减少到当前值的八分之一相对应。
sum=curr+((sum+64)>>alfShiftY) (1425)
表43-根据垂直亮度样本位置y和applyAlfLineBufBoundary的y1、y2、y3和alfShiftY的指定
在下面针对色度的示例中,其中右移因子与alfShiftC相对应,且在该示例中,右移增加3与将滤波的贡献减少到当前值的八分之一相对应。
sum=curr+((sum+64)>>alfShiftC) (1466)
表44-根据垂直色度样本位置y和applyAlfLineBufBoundary的y1、y2和alfShifiC的指定
一种可选方案是在正常的右移因子之后定义一个附加的移位因子,如以下用于亮度的示例,但同样的方法也可用于色度:
sum=curr+(((sum+64)>>7)>>alfShiftY) (1425)
这会需要一个附加的移位。
实施例3
像实施例2中那样,其中滤波的减少取决于填充了多少样本,使得来自滤波的贡献的大部分减少发生在对以下的滤波:紧邻虚拟水平边界的样本(即,紧接虚拟边界上方的样本和紧接虚拟边界下方的样本)和紧接在与虚拟水平边界紧邻的行上方的行/紧接在与虚拟水平边界紧邻的行下方的行。
在实施例2的基础上执行这一点的一种方法是如下更改alfShiftY因子:
sum=curr+((sum+64)>>alfShiftY) (1425)
因此,当填充了更多样本时,当前样本curr的改变量减少得更多。
实施例4
在该实施例中,检查附加条件以确定应当应用滤波还是不应当应用滤波。
与当前样本的邻域特性有关的一个条件是检查邻域具有垂直(梯度在水平方向上占主导地位)还是对角线(梯度在距垂直轴+45/-45度的对角线方向上占主导地位)方向性,并且如果是这种情况,则确定不执行对样本的滤波,否则可以执行滤波。当邻域具有有着垂直或对角线方向性的结构时避免滤波器的原因在于,在对虚拟水平CTU边界和虚拟水平CTU边界上方的行进行滤波时,填充的滤波器仅利用水平方向上的样本,这与滤波器针对这种邻域的意图不符,因此可能创建视觉伪像而不是改善图像。
以VVC为例,这可以如下实现。首先确定当前样本是否在虚拟水平CTU边界或者虚拟水平CTU边界上方的行上,在这种情况下,对于与当前样本的具有垂直(梯度在水平方向上占主导地位)或对角线(梯度在距垂直轴+45/-45度的对角线方向上占主导地位)方向性的结构的邻域相对应的滤波器类别,将滤波器系数设置为0。可以允许对与具有水平方向性(梯度在垂直方向上占主导地位)或无方向性(没有主导梯度方向)的结构的当前样本的邻域进行滤波。例如,这可以通过检查filterIdx和transposeIdx来确定,transposeIdx被确定为已经从垂直、水平和对角线梯度的计算中确定的分类的一部分。如果filterIdx在0到4之间或者在15到24之间并且transposeIdx等于0,则可以执行滤波,否则不执行滤波。
一种更保守的变型是仅当当前样本的邻域具有水平方向性结构时才允许对当前样本进行滤波。这可以保证滤波不会使具有垂直和水平方向性二者的结构降级。这可以通过检查filterIdx是否在15到24之间以及transposeIdx是否等于0来确定,否则不执行滤波。另一方面,它降低了移除编码伪像的可能性。
另一种变型是仅当已经专门为正在编码的内容(例如,在比特流中提供)确定了滤波器系数时才允许如上变型中的滤波。在VVC中,可以通过检查AlfCtbFiltSetIdxY是否大于或等于16来发现这一点,这意味着比特流中已经提供了滤波器系数,它们不是来自标准中规定的预定的固定滤波器系数的集合。
实施例5
对于亮度,首先确定要由ALF滤波的当前样本是否紧邻虚拟水平CTU边界或位于紧接在与虚拟水平CTU边界紧邻的行上方的行/紧接在与虚拟水平CTU边界紧邻的行下方的行中。如果是这种情况,则确定filterIdx是否小于5或者filterIdx是否大于15。
该实施例基本上是实施例2和4的变型的组合。
对于亮度,首先确定第一条件,该第一条件检查要由ALF滤波的当前行是否位于虚拟水平CTU边界或虚拟水平CTU边界上方的行处。如果不满足条件,则应用ALF滤波。如果满足条件,则检查第二条件,该第二条件检查包括要由ALF滤波的当前样本的4×4块的filterIdx。如果filterIdx小于5(各向同性邻域)或者filterIdx大于或等于15但是小于25且transposeIdx等于0(具有水平方向性的邻域),则第二条件为真。如果第二条件为真,则通过将等式1425中的右移因子增加2来减少滤波量,从而使滤波的贡献减少到正常滤波的四分之一。否则,如果第二条件不为真,则不对当前样本应用滤波,这可以通过在等式1424的修改版本中设置x1=1、x2=2和x3=3(以黄色突出显示)来描述。在软件实现中,这与在这种情况下仅省略滤波等同。
sum=f[idx[0]]*(Clip3(-c[idx[0]],c[idx[0]],
recPictureL[hx,vy+y3]-curr)+
Clip3(-c[idx[0]],c[idx[0]],recPictureL[hx,vy-y3]-curr))+
f[idx[1]]*(Clip3(-c[idx[1]],c[idx[1]],
recPictureL[hx+1-x1,vy+y2]-curr)+
Clip3(-c[idx[1]],c[idx[1]],recPictureL[hx-1+x1,vy-y2]-curr))+
f[idx[2]]*(Clip3(-c[idx[2]],c[idx[2]],
recPictureL[hx,vy+y2]-curr)+
Clip3(-c[idx[2]],c[idx[2]],recPictureL[hx,vy-y2]-curr))+
f[idx[3]]*(Clip3(-c[idx[3]],c[idx[3]],
recPictureL[hx-1+x1,vy+y2]-curr)+
Clip3(-c[idx[3]],c[idx[3]],recPictureL[hx+1-x1,vy-y2]-curr))+
f[idx[4]]*(Clip3(-c[idx[4]],c[idx[4]],
recPictureL[hx+2-x2,vy+y1]-curr)+
Clip3(-c[idx[4]],c[idx[4]],recPictureL[hx-2+x2,vy-y1]-curr))+
f[idx[5]]*(Clip3(-c[idx[5]],c[idx[5]],
recPictureL[hx+1-x1,vy+y1]-curr)+
Clip3(-c[idx[5]],c[idx[5]],recPictureL[hx-1+x1,vy-y1]-curr))+
f[idx[6]]*(Clip3(-c[idx[6]],c[idx[6]],
recPictureL[hx,vy+y1]-curr)+
Clip3(-c[idx[6]],c[idx[6]],recPictureL[hx,vy-y1]-curr))+
f[idx[7]]*(Clip3(-c[idx[7]],c[idx[7]],
recPictureL[hx-1+x1,vy+y1]-curr)+
Clip3(-c[idx[7]],c[idx[7]],recPictureL[hx+1-x1,vy-y1]-curr))+
f[idx[8]]*(Clip3(-c[idx[8]],c[idx[8]],
recPictureL[hx-2+x2,vy+y1]-curr)+
Clip3(-c[idx[8]],c[idx[8]],recPictureL[hx+2-x2,vy-y1]-curr))+
f[idx[9]]*(Clip3(-c[idx[9]],c[idx[9]],
recPictureL[hx+3-x3,vy]-curr)+
Clip3(-c[idx[9]],c[idx[9]],recPictureL[hx-3+x3,vy]-curr))+
f[idx[10]]*(Clip3(-c[idx[10]],c[idx[10]],
recPictureL[hx+2-x2,vy]-curr)+
Clip3(-c[idx[10]],c[idx[10]],recPictureL[hx-2+x2,vy]-curr))+
f[idx[11]]*(Clip3(-c[idx[11]],c[idx[11]],
recPictureL[hx+1-x1,vy]-curr)+
Clip3(-c[idx[11]],c[idx[11]],recPictureL[hx-1+x1,vy]-curr))
(1424)
sum=curr+((sum+64)>>alfShiftY) (1425)
对于色度,首先确定要由ALF滤波的当前行是否在虚拟水平CTU边界或者虚拟水平CTU边界上方的行处。如果是这种情况,则通过将等式1466中的右移因子增加2来减少滤波量,从而使滤波的贡献减少到正常滤波的四分之一。否则对当前样本应用正常滤波。
sum=curr+((sum+64)>>alfShiftC) (1466)
表44-根据垂直色度样本位置y和applyAlfLineBufBoundary的y1、y2和alfShiftC的指定
实施例6
与在编码/解码比特流中对参数进行编码/解码的先前实施例中一样。当参数指示是否使用该方法时。
可以在比特流的以下级别之一对参数进行编码/解码:例如自适应参数集合(SPS)、图片、片或块。
实施例7
在该实施例中,在视频比特流中对等式1425中的右移参数(7)的偏移量(alfShiftOffset)进行编码/解码。附加的参数以黄色突出显示:
sum=curr+((sum+64)>>(7+alfShiftOffset) (1425)
可以在比特流的以下级别之一对偏移进行编码/解码:例如自适应参数集合(SPS)、图片、片或块。参数的范围可以例如是0到3,这与将滤波量减少1/2、1/4或1/8的能力相对应。
实施例8
如同其他实施例,但其中虚拟边界是虚拟垂直边界,行被替代为虚拟垂直边界左侧的列。在这种情况下,仅当结构具有水平方向性时才允许滤波的变型改为仅当结构具有垂直方向性时才允许滤波。
实施例9
如同其他实施例,但是方法应用于亮度和色度分量。
实施例10
如同其他实施例,但是方法仅应用于亮度。
实施例11
在该实施例中,滤波器的空间覆盖的减少量受到限制,使得滤波器的空间覆盖至少包括在垂直和水平方向上距离中心样本为1的相邻样本。
在虚拟水平CTU边界的上下文中,这可以通过将虚拟水平CTU边界的位置向上修改一行(可以使用对当前CTU的去块的行的上方的一行)来实现,同时允许ALF滤波从ALF虚拟边界的另一侧读取一行。这使得滤波器至少能够包括在垂直方向上距离中心样本为1的相邻样本值。这避免了填充所有相邻行的极端情况,例如当在ALF虚拟边界或ALF虚拟边界上方的行进行滤波时,将滤波器的空间覆盖减少到仅水平。
在这种情况下虚拟水平边界的位置是上方CTU内的当前CTU的顶行上方的五个样本,如图14所示。
当滤波器的中心紧邻虚拟边界下方(即当前样本的位置紧邻虚拟边界下方)时,滤波器的位置可以被看做图14中的103,而当滤波器的中心紧邻虚拟边界上方(即当前样本紧邻虚拟边界上方)时,滤波器的位置可以被看做图14中的104。由于当滤波器的中心在虚拟边界上方的行中时(如104中)允许滤波器从虚拟边界下方的一行读取样本,或者当滤波器的中心在虚拟边界下方的行时(如103中)允许滤波器从虚拟边界上方读取样本,因此这种情况下的填充量减少到4行填充,这是在允许滤波器从虚拟边界另一侧的一行读取样本时发生的最大填充量。在滤波器位于紧接虚拟边界上方的行的情况下的填充,紧接虚拟边界上方的行上的当前样本,可以在图15中看到。在滤波器位于紧接虚拟边界下方的行的情况下的填充,紧接虚拟边界下方的行上的当前样本,可以在图24中看到。在图16中,滤波器位于虚拟边界上方的第二行,即当前样本位于紧接在与虚拟边界紧邻的行上方的行中,并且在这种情况下仅需要填充两行。在图25中,滤波器位于虚拟边界下方的第二行,即当前样本位于紧接在与虚拟边界紧邻的行下方的行中,并且在这种情况下仅需要填充两行。
如果我们考虑虚拟水平边界,则由于填充,ALF滤波器支持将是三行,当前行上方的一行和当前行下方的一行。这可以在图17中看到。在左上图中,我们已经从图3中的所有值中减去了中间样本(120)。然后,将这些值乘以图17的右上图中所示的系数。然而,这与在除了中间三行之外的任何地方使用零是一样的,如图17的最右边的图所示。与中心样本位于同一行上的样本对滤波的贡献将符合预期(在图17中的C9、C10和C11的位置)。中心样本上方行上的样本和中心样本下方行上的样本的贡献将在它们靠近中心时被放大,并且中心上方行中的各个样本的滤波器系数将等于垂直对齐且位于上方的系数之和,下方行中的各个样本的滤波器系数将等于垂直对齐且位于下方的系数之和(图17中,2*(C5+C1)、3*(C6+C2+C0)、2*(C7+C3))。
与当前VVC草案中的虚拟水平CTU边界的ALF滤波的极端填充(如图5所示,其中仅使用来自样本的中心行的放大的贡献)相比,该实施例将放大减少大约一半,并且针对当前样本上方和下方的样本扩展放大,这使得滤波更加稳健并且没有极端填充方法的伪像。
可以通过将当前VVC草案的表43替换为下表,针对亮度实现该滤波方法:
针对色度,这可以通过将当前VVC草案的表44替换为下表来实现:
该实施例将行缓冲器要求增加两行(line/row),如可从图14中的位置103中所见。该实施例还关于ALF分类影响亮度,基于8×8的邻域(例如,块外在所有方向上两个样本)对每个4×4块执行ALF分类,因为它将具有4×4块内的虚拟水平边界。一种解决方案是使分类基于行的下半部分(第2行和第3行,而不是第0行和第1行)和来自4×4块下方的行的样本(邻域4×8)来对虚拟边界下方进行滤波,并且使分类基于行的上半部分(第0行和第1行)和来自4×4块上方的行的样本(邻域4×8)来对虚拟边界上方进行滤波。一种更简单且可能更稳健的解决方案是在虚拟边界上方和下方均使用相同的分类。在这样的解决方案中,可以对整个4×4块(第0行到第3行)和来自4×4块上方的行的样本进行分类,然后将该分类用于对4×4块的所有样本进行滤波,而无论样本是在虚拟边界下方还是上方。这会需要附加的行缓冲器来存储分类索引(0-24)和转置索引(0-3),这与4K视频的7比特乘以3840/4比特相对应(例如大约800字节)。这仍然比完全不使用虚拟边界的行缓冲器的数量的一半要少,因为在这种情况下,你会需要针对亮度存储6个附加的行(line/row),其中10比特深度下的4K视频的一行亮度样本与10*3840(例如大约4800字节)比特相对应。
对VVC中的分类的最简单的修改是考虑到在对虚拟边界行上方的行进行滤波时虚拟边界行也是可用的,在虚拟边界上方和下方使用相同的分类,这可以通过删除对CTU中的最后4×4块的minY和maxY的调整来执行,其中该调整是在y4等于下表(其示出了对当前VVC草案的改变)中所示的CtbSizeY-4时开始的。我们仍然需要保持对CTU中的4×4块的倒数第二行的调整,因为我们无法读取该4×4块的最后一行下方的样本:
分类的另一种解决方案是使用4×4块中包括虚拟边界的上半部分中的两行,用于在边界上方进行滤波,并且使用4×4块的下半部分中的两行,用于对边界或边界下方进行滤波。因此,需要对4×4块中包括虚拟边界的相应一半执行特定分类。标准的编写方式需要为这种4×4块存储两个版本的分类。可以在VVC中规定对分类的修改,如下表所示:
然后还需要修改滤波,使得将正确的类用于行CtbSize-6和CtbSize-5,可以在VVC中描述如下:
实施例12
一个或几个实施例之间的组合。
图18是示出用于处理(例如,编码或解码)图像的过程1800的流程图。过程1800可以在步骤s1802开始。
步骤s1802包括获得与图像相关联的样本值的集合。该样本值的集合包括当前样本值和与当前样本值相邻的样本值,其中,所获得的样本值的集合包括在样本值的第一矩形块内。
步骤s1804包括确定当前样本值相对于虚拟边界的相对位置。该虚拟边界相对于第一样本值块与第二样本值块之间的块边界而定义。该虚拟边界与该块边界平行,并且与该块边界间隔至少一行或一列包括在第一样本值块中的样本值。
步骤s1806包括基于所确定的当前样本值相对于虚拟边界的相对位置来做出是否对当前样本值进行滤波的决定。
在一些实施例中,基于所确定的当前样本的相对位置来做出关于是否对当前样本值进行滤波的决定包括:确定当前样本值是否与虚拟边界相邻(即,与虚拟边界的距离不超过一行或一列),并且作为确定当前样本值与虚拟边界相邻的结果,做出不对当前样本值进行滤波的决定。
在一些实施例中,基于所确定的当前样本相对于虚拟边界的相对位置来做出是否对当前样本值进行滤波的决定包括:不仅基于所确定的当前样本相对于虚拟边界的相对位置、而且还基于包括当前样本值在内的样本值块的特性来做出所述决定。
图19是示出用于处理图像的过程1900的流程图。过程1900可以在步骤s1902开始。
步骤s1902包括获得与图像相关联的样本值的集合。该样本值的集合包括当前样本值和与当前样本值相邻的样本值。所获得的该样本值的集合包括在样本值的第一矩形块内。
步骤s1904包括确定当前样本值相对于虚拟边界的相对位置。该虚拟边界相对于第一样本值块与第二样本值块之间的块边界而定义。该虚拟边界与该块边界平行,并且与该块边界间隔至少一行或一列包括在第一样本值块中的样本值。
步骤s1906包括基于所确定的当前样本值相对于虚拟边界的相对位置来选择滤波器强度值。
步骤s1908包括基于所选择的滤波器强度值来对当前样本值进行滤波。
在一些实施例中,基于所确定的当前样本相对于虚拟边界的相对位置来选择滤波器强度值包括:基于所确定的当前样本相对于虚拟边界的相对位置来选择右移值(例如N,其中N是>0的整数)或除数(例如等于2-N的值),并且基于所选择的滤波器量对当前样本进行滤波包括使用所选择的右移值或除数来对当前样本值进行滤波。
在一些实施例中,基于所确定的当前样本相对于虚拟边界的相对位置来选择滤波器强度值包括:如果确定当前样本值与虚拟边界相邻,则选择第一滤波器强度值;或者如果确定当前样本值与虚拟边界的距离大于一行或一列,则选择第二滤波器强度值。
在一些实施例中,第一滤波器强度值大于7且第二滤波器强度值小于或等于7,或者第一滤波器强度值大于或等于1(例如,3)且第二滤波器强度值为0(在该实施例中,所选择的滤波器强度值用作滤波器强度调整)。
在一些实施例中,基于所确定的当前样本相对于虚拟边界的相对位置来选择滤波器强度值包括:如果确定当前样本值与虚拟边界的距离不超过一行或一列,则选择第一滤波器强度值;或者如果确定当前样本值与虚拟边界的距离大于一行或一列,则从滤波器强度值的集合中选择滤波器强度值,其中,该滤波器强度值的集合包括第二滤波器强度值(例如9)、第三滤波器强度值(例如8)和第四滤波器强度值(例如7)。
在一些实施例中,如果确定当前样本值与虚拟边界的距离大于一行或一列,则从滤波器强度值的集合中选择滤波器强度值包括:如果确定当前样本值与虚拟边界的距离为两行或两列,则选择第二滤波器强度值;如果确定当前样本值与虚拟边界的距离为三行或三列,则选择第三滤波器强度值;或者如果确定当前样本值与虚拟边界的距离为至少四行或四列,则选择第四滤波器强度值。
在一些实施例中,基于所确定的当前样本相对于虚拟边界的相对位置来选择滤波器强度值包括:不仅基于所确定的当前样本相对于虚拟边界的相对位置、而且还基于包括当前样本值在内的样本值块的特性来选择滤波器强度值。
图20是示出用于处理图像的过程2000的流程图。过程2000可以在步骤s2002开始。
步骤s2002包括获取与图像相关联的样本值的集合,该样本值的集合包括当前样本值和与当前样本值相邻的相邻样本值的集合,其中,所获得的样本值的集合包括在样本值的第一矩形块内,并且其中,所获得的样本值的集合逻辑上排列成多行样本值,所述多行由中间行、中间行上方的行和中间行下方的行组成,当前样本值位于所述中间行。
步骤s2004包括确定中间行相对于虚拟水平边界的相对位置,其中,该虚拟水平边界相对于第一样本值块与第二样本值块之间的水平块边界而定义,其中,该虚拟水平边界与块边界平行并且与块边界间隔至少一行包括在第一样本值块中的样本值。
步骤s2006包括确定:i)中间行紧接在虚拟水平边界上方(图15),ii)中间行紧接在虚拟水平边界下方(图24),iii)中间行紧接在位于紧接虚拟水平边界上方的行的上方(图16),或者iv)中间行紧接在位于紧接虚拟水平边界下方的行的下方(图25)。
步骤s2008包括:如果确定中间行紧接虚拟水平边界上方或下方,则仅基于来自以下行的样本来对当前样本值应用ALF滤波:i)中间行,ii)紧接在中间行下方的行,和iii)紧接在中间行上方的行。
步骤s2010包括:如果确定中间行紧接在紧接虚拟水平边界上方的行的上方或者确定中间行紧接在紧接虚拟水平边界下方的行的下方(图16和图25),则仅基于来自以下行的样本来对当前样本值应用ALF滤波:i)中间行,ii)紧接在中间行上方的两行,和iii)紧接在下方行下方的两行。
在一些实施例中,亮度的虚拟水平边界是水平块边界上方的五个样本。
在一些实施例中,色度的虚拟水平边界是水平块边界上方的三个样本。
图21是根据一些实施例的用于实现编码器502或解码器504的装置2101的框图。也就是说,装置2101可以适于执行本文公开的方法。在装置2101实现编码器502的实施例中,装置2101可以被称为“编码装置2101”,并且在装置2101实现解码器504的实施例中,装置2101可以被称为“解码装置2101”。如图21所示,装置2101可以包括:处理电路(PC)2102,其可以包括一个或多个处理器(P)2155(例如,一个或多个通用微处理器和/或一个或多个其他处理器,如专用集成电路(ASIC)、现场可编程门阵列(FPGA)等),这些处理器可以合设于单个外壳或单个数据中心中,也可以在地理上分开;一个或多个网络接口2148(可以合设或在地理上分开),其中每个网络接口包括发射机(Tx)2145和接收机(Rx)2147,用于使装置2101能够向连接到网络110(例如,互联网协议(IP)网络)的其他节点发送数据和接收数据,网络接口2148连接到网络110;以及一个或多个存储单元(也被称为“数据存储系统”)2108,它们可以合设或在地理上分开,并且可以包括一个或多个非易失性存储设备和/或一个或多个易失性存储设备。在PC 2102包括可编程处理器的实施例中,可以提供计算机程序产品(CPP)2141。CPP 2141包括计算机可读介质(CRM)2142,计算机可读介质(CRM)2142存储包括计算机可读指令(CRI)2144在内的计算机程序(CP)2143。CRM 2142可以是非暂时性计算机可读介质,例如,磁介质(例如,硬盘)、光介质、存储器设备(例如,随机存取存储器、闪存)等。在一些实施例中,计算机程序2143的CRI 2144被适配为使得在由PC 2102执行时,CRI使装置2101执行本文描述的步骤(例如,本文中参照流程图描述的步骤)。在其他实施例中,装置2101可被适配为在不需要代码的情况下执行本文描述的步骤。也就是说,例如,PC 2102可以仅由一个或多个ASIC组成。因此,本文描述的实施例的特征可以以硬件和/或软件方式来实现。
本文公开的实施例通过减少在虚拟CTU边界和与虚拟CTU边界相邻的边界处的ALF的滤波量来避免从滤波引入伪像。以下是示出已实现改进的客观结果。
结果
与VTM-7.0(VVC参考软件)相比,实施例1的客观结果(BDR,其中负数是改进)如下:
全帧内
随机访问
低延迟B
实施例2与VTM-7.0(本发明时的VVC参考软件)相比的客观结果如下:
全帧内
随机访问
低延迟B
图22示出了以常规方式处理的第一图像(左图像)和根据实施例1处理的第二图像(底图像)。由于ALF,第一图像在虚拟边界处有伪像(线条模糊)。第二图像不包括伪像。因此,与第一图像相比,第二图像是原始图像的更高质量版本。
图23示出了以常规方式处理的第一图像(左图像)和根据实施例2处理的第二图像(底图像)。由于ALF,第一图像在虚拟边界处有伪像(线条模糊)。第二图像不包括伪像。因此,与第一图像相比,第二图像是原始图像的更高质量版本。
尽管本文描述了各种实施例,但是应当理解,它们仅仅是作为示例而不是限制来提出的。因此,本公开的宽度和范围不应当受到上述示例性实施例中任意一个的限制。此外,上述要素以其所有可能变型进行的任意组合都包含在本公开中,除非另有指示或以其他方式和上下文明确冲突。
附加地,尽管上文描述并附图中示出的处理被示为一系列步骤,但其仅用于说明目的。因此,可以想到可增加一些步骤、可省略一些步骤,可重排步骤顺序,以及可并行执行一些步骤。
参考文献
[1]Misra等,“Cross-Component Adaptive Loop Filter for chroma,”JVET-O0636_r1,2019年7月(可从
http://phenix.it-sudparis.eu/jvet/doc_end_user/documents/15_ Gothenburg/wg11/JVET-O0636-v2.zip获取)
[2]Chen,“Description of Core Experiment 5(CE5):Cross-componentadaptive loop filtering,”JVET-P2025-v4,2019年10月(可从
http://phenix.it-sudparis.eu/jvet/doc_end_user/documents/16_Geneva/ wg11/JVET-P2025-v4.zip获取)。
Claims (11)
1.一种用于对视频序列的图像进行编码或解码的方法(1900),所述方法包括:
获得与所述图像相关联的样本值的集合,所述样本值的集合包括当前样本值和与所述当前样本值相邻的样本值,其中,所获得的样本值的集合包括在样本值的第一矩形块内;
确定所述当前样本值相对于虚拟边界的相对位置,其中,所述虚拟边界相对于第一样本值块与第二样本值块之间的块边界而定义,其中,所述虚拟边界与所述块边界平行并且与所述块边界间隔至少一行或一列包括在所述第一样本值块中的样本值;
基于所确定的当前样本相对于虚拟边界的相对位置来选择滤波器强度值;以及
基于所选择的滤波器强度值对当前样本进行滤波,
其中,
基于所确定的当前样本相对于虚拟边界的相对位置来选择滤波器强度值包括:基于所确定的当前样本相对于虚拟边界的相对位置来选择右移值或除数以调整滤波器强度值的大小,以及
基于调整后的滤波器强度值对当前样本进行滤波包括:使用所选择的右移值或除数对所述当前样本进行滤波。
2.根据权利要求1所述的方法,其中,基于所确定的当前样本相对于虚拟边界的相对位置来选择滤波器强度值包括:
如果确定当前样本值与虚拟边界相邻,则选择第一滤波器强度值;或者
如果确定当前样本值与虚拟边界的距离大于一行或一列,则选择第二滤波器强度值。
3.根据权利要求2所述的方法,其中,
所述第一滤波器强度值大于7且所述第二滤波器强度值小于或等于7,或者
所述第一滤波器强度值大于或等于1且所述第二滤波器强度值为0。
4.根据权利要求1所述的方法,其中,基于所确定的当前样本相对于虚拟边界的相对位置来选择滤波器强度值包括:
如果确定当前样本值与虚拟边界的距离不超过一行或一列,则选择第一滤波器强度值;或者
如果确定当前样本值与虚拟边界的距离大于一行或一列,则从滤波器强度值的集合中选择滤波器强度值,其中,所述滤波器强度值的集合包括第二滤波器强度值、第三滤波器强度值和第四滤波器强度值。
5.根据权利要求4所述的方法,其中,如果确定当前样本值与虚拟边界的距离大于一行或一列则从滤波器强度值的集合中选择滤波器强度值包括:
如果确定当前样本值与虚拟边界的距离为两行或两列,则选择第二滤波器强度值;
如果确定当前样本值与虚拟边界的距离为三行或三列,则选择第三滤波器强度值;或者
如果确定当前样本值与虚拟边界的距离为至少四行或四列,则选择第四滤波器强度值。
6.根据权利要求1至5中任一项所述的方法,其中,基于所确定的当前样本相对于虚拟边界的相对位置来选择滤波器强度值包括:不仅基于所确定的当前样本相对于虚拟边界的相对位置、而且还基于包括当前样本值在内的样本值块的特性来选择滤波器强度值。
7.一种用于对视频序列的图像进行编码或解码的方法(1800),所述方法包括:
获得与图像相关联的样本值的集合,所述样本值的集合包括当前样本值和与所述当前样本值相邻的相邻样本值的集合,其中,所获得的样本值的集合包括在样本值的第一矩形块内;
确定所述当前样本值相对于虚拟边界的相对位置,其中,所述虚拟边界相对于第一样本值块与第二样本值块之间的块边界而定义,其中,所述虚拟边界与所述块边界平行并且与所述块边界间隔至少一行或一列包括在所述第一样本值块中的样本值;以及
基于所确定的当前样本相对于虚拟边界的相对位置来做出是否对当前样本值进行滤波的决定,包括:确定当前样本值是否与虚拟边界相邻或与虚拟边界的距离不超过一行或一列;以及如果确定当前样本值与虚拟边界相邻或与虚拟边界的距离不超过一行或一列,则做出不对当前样本值进行滤波的决定。
8.根据权利要求7所述的方法,其中,基于所确定的当前样本相对于虚拟边界的相对位置来做出是否对当前样本值进行滤波的决定包括:不仅基于所确定的当前样本相对于虚拟边界的相对位置、而且还基于包括当前样本值在内的样本值块的特性来做出所述决定。
9.根据权利要求7或8所述的方法,其中,在当前样本值与虚拟边界相邻时不对所述当前样本值进行滤波的决定应用于跨分量自适应环路滤波器CC-ALF。
10.一种计算机可读存储介质(2142),存储有包括指令(2144)的计算机程序(2143),所述指令(2144)在由处理电路(2102)执行时,使所述处理电路(2102)执行权利要求1至9中任一项所述的方法。
11.一种装置(2101),所述装置包括:
处理电路(2102);以及
存储器(2142),所述存储器包含能够由所述处理电路执行的指令(2144),由此所述装置能够操作为执行根据权利要求1至9中任一项所述的方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201962953310P | 2019-12-24 | 2019-12-24 | |
US62/953,310 | 2019-12-24 | ||
PCT/SE2020/051131 WO2021133236A1 (en) | 2019-12-24 | 2020-11-26 | Virtual boundary processing for adaptive loop filtering |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113475070A CN113475070A (zh) | 2021-10-01 |
CN113475070B true CN113475070B (zh) | 2024-06-25 |
Family
ID=76574978
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202080016799.7A Active CN113475070B (zh) | 2019-12-24 | 2020-11-26 | 针对自适应环路滤波的虚拟边界处理 |
Country Status (11)
Country | Link |
---|---|
US (3) | US11317095B2 (zh) |
EP (1) | EP4049448A4 (zh) |
JP (1) | JP7180001B2 (zh) |
KR (1) | KR20210096251A (zh) |
CN (1) | CN113475070B (zh) |
BR (1) | BR112021013893A2 (zh) |
CA (1) | CA3129687A1 (zh) |
CL (1) | CL2021001815A1 (zh) |
MX (1) | MX2021003675A (zh) |
WO (1) | WO2021133236A1 (zh) |
ZA (1) | ZA202102205B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11425405B2 (en) * | 2019-11-15 | 2022-08-23 | Qualcomm Incorporated | Cross-component adaptive loop filter in video coding |
EP4085639A4 (en) * | 2020-01-24 | 2023-03-22 | Huawei Technologies Co., Ltd. | ENCODER, DECODER AND CORRESPONDING METHOD FOR ADAPTIVE LOOP FILTERING |
US11284115B2 (en) * | 2020-03-31 | 2022-03-22 | Sharp Kabushiki Kaisha | Systems and methods for applying adaptive loop filters in video coding |
EP4399872A1 (en) * | 2021-09-08 | 2024-07-17 | Beijing Dajia Internet Information Technology Co., Ltd. | Coding enhancement in cross-component sample adaptive offset |
US12113996B2 (en) * | 2021-12-06 | 2024-10-08 | Tencent America LLC | Arrangement of adaptive loop filter coefficients for fast vectorized transpositions |
WO2023249404A1 (ko) * | 2022-06-21 | 2023-12-28 | 엘지전자 주식회사 | 영상 부호화/복호화 방법, 비트스트림을 전송하는 방법 및 비트스트림을 저장한 기록 매체 |
Family Cites Families (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013118605A (ja) * | 2011-06-28 | 2013-06-13 | Sony Corp | 画像処理装置と画像処理方法 |
US9641866B2 (en) * | 2011-08-18 | 2017-05-02 | Qualcomm Incorporated | Applying partition-based filters |
US9432700B2 (en) * | 2011-09-27 | 2016-08-30 | Broadcom Corporation | Adaptive loop filtering in accordance with video coding |
US8983218B2 (en) * | 2012-04-11 | 2015-03-17 | Texas Instruments Incorporated | Virtual boundary processing simplification for adaptive loop filtering (ALF) in video coding |
GB2501535A (en) * | 2012-04-26 | 2013-10-30 | Sony Corp | Chrominance Processing in High Efficiency Video Codecs |
CN105659597B (zh) * | 2013-10-22 | 2020-01-07 | 株式会社Kt | 用于对多层视频信号进行编码/解码的方法和装置 |
CN105794206B (zh) * | 2013-11-15 | 2018-12-28 | 联发科技股份有限公司 | 用于重建视频的自适应环路滤波方法 |
US10104397B2 (en) * | 2014-05-28 | 2018-10-16 | Mediatek Inc. | Video processing apparatus for storing partial reconstructed pixel data in storage device for use in intra prediction and related video processing method |
US10382766B2 (en) * | 2016-05-09 | 2019-08-13 | Qualcomm Incorporated | Signalling of filtering information |
US10609417B2 (en) * | 2016-05-23 | 2020-03-31 | Mediatek Inc. | High efficiency adaptive loop filter processing for video coding |
US10623737B2 (en) * | 2016-10-04 | 2020-04-14 | Qualcomm Incorporated | Peak sample adaptive offset |
CN117061771A (zh) * | 2017-09-20 | 2023-11-14 | Vid拓展公司 | 用于编码的方法和装置和用于解码的方法和装置 |
WO2019131400A1 (ja) * | 2017-12-26 | 2019-07-04 | シャープ株式会社 | 画像フィルタ装置、画像復号装置、および画像符号化装置 |
WO2019137749A1 (en) * | 2018-01-10 | 2019-07-18 | Telefonaktiebolaget Lm Ericsson (Publ) | Determining filter length for deblocking during encoding and/or decoding of video |
EP3780604A4 (en) | 2018-03-29 | 2021-12-22 | Industry Academy Cooperation Foundation Of Sejong University | IMAGE CODING / DECODING PROCESS AND APPARATUS |
TWI792578B (zh) * | 2018-07-09 | 2023-02-11 | 弗勞恩霍夫爾協會 | 用於經編碼圖像多樣化空間劃分之編碼器、解碼器、編碼方法及解碼方法 |
CN116016932A (zh) * | 2018-10-12 | 2023-04-25 | 华为技术有限公司 | 用于视频译码中去块效应滤波器的装置和方法 |
US11044473B2 (en) * | 2018-12-21 | 2021-06-22 | Qualcomm Incorporated | Adaptive loop filtering classification in video coding |
CN114424539B (zh) * | 2019-06-14 | 2024-07-12 | 北京字节跳动网络技术有限公司 | 处理视频单元边界和虚拟边界 |
WO2020256413A1 (ko) * | 2019-06-17 | 2020-12-24 | 한국전자통신연구원 | 적응적 루프내 필터링 방법 및 장치 |
US12034922B2 (en) * | 2019-06-24 | 2024-07-09 | Sharp Kabushiki Kaisha | Systems and methods for reducing a reconstruction error in video coding based on a cross-component correlation |
EP3970369A4 (en) * | 2019-06-28 | 2022-07-20 | ByteDance Inc. | TECHNIQUES FOR MODIFYING QUANTIZATION PARAMETERS IN TRANSFORM SKIP MODE |
US11671613B2 (en) * | 2019-12-30 | 2023-06-06 | Alibaba Group Holding Limited | Methods for signaling virtual boundaries and wrap-around motion compensation |
US11303936B2 (en) * | 2020-02-21 | 2022-04-12 | Tencent America LLC | Method and apparatus for filtering |
US11516469B2 (en) * | 2020-03-02 | 2022-11-29 | Tencent America LLC | Loop filter block flexible partitioning |
-
2020
- 2020-11-26 CN CN202080016799.7A patent/CN113475070B/zh active Active
- 2020-11-26 KR KR1020217021023A patent/KR20210096251A/ko not_active Application Discontinuation
- 2020-11-26 EP EP20904337.1A patent/EP4049448A4/en active Pending
- 2020-11-26 CA CA3129687A patent/CA3129687A1/en active Pending
- 2020-11-26 MX MX2021003675A patent/MX2021003675A/es unknown
- 2020-11-26 WO PCT/SE2020/051131 patent/WO2021133236A1/en unknown
- 2020-11-26 BR BR112021013893A patent/BR112021013893A2/pt unknown
- 2020-11-26 JP JP2021539897A patent/JP7180001B2/ja active Active
-
2021
- 2021-03-31 ZA ZA2021/02205A patent/ZA202102205B/en unknown
- 2021-05-18 US US17/323,502 patent/US11317095B2/en active Active
- 2021-07-07 CL CL2021001815A patent/CL2021001815A1/es unknown
-
2022
- 2022-04-20 US US17/724,883 patent/US11689725B2/en active Active
-
2023
- 2023-05-04 US US18/143,156 patent/US12101484B2/en active Active
Non-Patent Citations (1)
Title |
---|
Non-CE8.c.7: Single-source SAO and ALF virtual boundary processing with cross9x9;Ching-Yeh Chen 等;《Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11》;第1、3-4、6-7、10页 * |
Also Published As
Publication number | Publication date |
---|---|
ZA202102205B (en) | 2022-09-28 |
US20230362382A1 (en) | 2023-11-09 |
EP4049448A1 (en) | 2022-08-31 |
CL2021001815A1 (es) | 2021-12-24 |
EP4049448A4 (en) | 2023-03-08 |
US12101484B2 (en) | 2024-09-24 |
US11317095B2 (en) | 2022-04-26 |
MX2021003675A (es) | 2021-07-07 |
JP7180001B2 (ja) | 2022-11-29 |
CN113475070A (zh) | 2021-10-01 |
US20210274186A1 (en) | 2021-09-02 |
US11689725B2 (en) | 2023-06-27 |
US20220256163A1 (en) | 2022-08-11 |
JP2022531523A (ja) | 2022-07-07 |
KR20210096251A (ko) | 2021-08-04 |
BR112021013893A2 (pt) | 2022-07-26 |
WO2021133236A1 (en) | 2021-07-01 |
CA3129687A1 (en) | 2021-07-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113475070B (zh) | 针对自适应环路滤波的虚拟边界处理 | |
CN106105201B (zh) | 使用像素距离的解块滤波 | |
EP3247117B1 (en) | Method and device for optimizing encoding/decoding of compensation offsets for a set of reconstructed samples of an image | |
JP2011125034A (ja) | 低ビットレート映像圧縮のための画像エンハンスメント方法及び装置 | |
AU2019298855B2 (en) | Apparatus and method for filtering in video coding | |
JP7568353B2 (ja) | 異なるビデオユニット間の適応ループフィルタリング | |
CN112789856A (zh) | 视频编/解码中基于变换域滤波的量化伪影抑制 | |
JP7450604B2 (ja) | ビデオコーディング及び処理のためのデブロッキングフィルタ | |
KR20220128468A (ko) | 미리 정의된 필터들에 의한 샘플 오프셋 | |
US20240357121A1 (en) | Tracking sample completion in video coding | |
US20220272367A1 (en) | Buffers for video coding in palette mode | |
WO2023274370A1 (en) | Advanced bilateral filter in video coding | |
US11818386B2 (en) | Method and apparatus for decoding image using interpicture prediction | |
US20210289202A1 (en) | Intra prediction method and apparatus for performing adaptive filtering on reference pixel | |
US20230164312A1 (en) | Adaptive loop filter (alf) virtual boundry processing | |
OA20185A (en) | Virtual boundary processing for adaptive loop filtering. | |
US20230254483A1 (en) | Intra prediction method and apparatus for performing adaptive filtering on reference pixel |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for 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: 40055641 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |