CN114424541A - 使用查找表的自适应双边滤波 - Google Patents
使用查找表的自适应双边滤波 Download PDFInfo
- Publication number
- CN114424541A CN114424541A CN202080065722.9A CN202080065722A CN114424541A CN 114424541 A CN114424541 A CN 114424541A CN 202080065722 A CN202080065722 A CN 202080065722A CN 114424541 A CN114424541 A CN 114424541A
- Authority
- CN
- China
- Prior art keywords
- pixel
- encoder
- pixels
- bilateral filter
- look
- 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.)
- Granted
Links
Images
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/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/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/124—Quantisation
- H04N19/126—Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
-
- 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/13—Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
-
- 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
-
- 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/182—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 a pixel
-
- 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/186—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 a colour or a chrominance component
-
- 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/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
一种系统包括被配置为压缩视频数据的编码器。该编码器包括使用查找表的自适应双边滤波器。该编码器可编码待由解码器用来选择或调节用于解码所压缩视频数据的查找表的一个或多个自适应调节因子。
Description
优先权
本申请要求2019年8月16日提交的美国临时专利申请第62/888,398号的优先权和权益,该申请的全部内容以引用方式并入本文。
技术领域
本公开整体涉及使用双边滤波器对视频数据进行压缩和解压缩。
背景技术
包括但不限于个人计算机系统、台式计算机系统、膝上型电脑和笔记本式计算机、平板电脑或平板设备、数码相机、数字视频录像机、以及移动电话或智能电话的各种设备可包括可实施视频处理方法的软件和/或硬件。例如,设备可包括可根据一个或多个视频处理方法来接收和处理来自一个或多个源的数字视频输入并输出经处理的视频帧的装置(例如集成电路(IC),诸如片上系统(SOC)、或IC的子系统)。又如,可在设备上实施可根据一个或多个视频处理方法接收和处理来自一个或多个源的数字视频输入并输出经处理的视频帧的软件程序。
在一些视频处理方法中,为了执行处理,每个输入视频帧被划分成像素块(例如,16×16像素块)的行和列。输入视频帧的每个块可单独被处理,并且在处理完成时经处理的块被组合以形成输出视频帧。这可被称为块处理方法。
块处理方法可包括顺序地被施加到视频帧中的每个块的多个处理步骤或操作。为了实施这种块处理方法,装置或软件程序(诸如视频编码器)可包括或实施块处理流水线。块处理流水线可包括两个或更多个阶段,其中每个阶段实施块处理方法的步骤或操作中的一者或多者。
发明内容
在一些实施方案中,一种系统包括编码器,该编码器被配置为针对包括在视频的多个帧中的多个图像,压缩包括在这些图像帧中的这些图像中的相应图像的多个像素的像素值数据。该编码器还被配置为作为压缩该像素值数据的压缩过程的一部分应用双边滤波器。为了应用该双边滤波器,该编码器被配置为针对该视频的相应图像的相应部分确定待作为双边滤波器的一部分应用的自适应调节因子,其中该自适应调节因子是基于相应部分的一个或多个特性确定的。为了应用该双边滤波器,该编码器还被配置为针对将针对其确定双边滤波器偏移值的相应部分的相应像素从由编码器针对双边滤波器生成或维持的多个查找表中选择一个查找表,其中该多个查找表包括索引值和用于确定待应用于相应像素的双边滤波器偏移值的相关联近似偏移值。
该编码器被配置为生成或维持多个查找表,其中这些查找表中的不同查找表与用于编码视频的相应图像的相应部分的不同量化参数相关联。
此外,给定量化参数与相应图像帧的相应部分相关联,针对该部分的像素确定双边滤波器偏移值,并且所选择查找表是基于所确定的自适应调节因子而从与给定量化参数相关联的多个查找表选择的。另选地,所选择查找表的近似偏移值是基于所确定的自适应调节因子修改的。在一些实施方案中,可基于自适应调节因子和所选择查找表的基于自适应调节因子进一步调节的近似偏移值来选择特定查找表。
编码器还被配置为针对相应像素的第一相邻像素确定到所选择查找表中的索引值,其中该索引值是基于相邻像素相对于相应像素的位置或距离并且基于相邻像素的像素值确定的。编码器还被配置为针对相应像素的一个或多个附加的相邻像素确定到所选择查找表或另外的一个或多个所选择查找表中的相应索引值,其中这些相应索引值是基于相应相邻像素相对于相应像素的相应位置或相应距离并且基于相应相邻像素的相应像素值确定的。
此外,编码器被配置为针对第一相邻像素和一个或多个附加的相邻像素检索用于确定待应用于相应像素的双边滤波器偏移值的近似偏移值,其中这些近似偏移值是基于所确定索引值而从所选择查找表或一个或多个其他查找表中检索的。并且,编码器被配置为基于相邻像素的所检索近似偏移值确定待应用于相应像素的双边滤波器偏移值。
此外,编码器被配置为将所确定双边滤波器偏移值应用于相应像素的像素值以确定相应像素的滤波的像素值数据。
附图说明
图1示出了根据一些实施方案的可包括使用查找表的自适应双边滤波器的示例性编码器。
图2示出了根据一些实施方案的由使用查找表的自适应双边滤波器使用的示例性相邻像素布置。
图3A至图3B示出了根据一些实施方案的消除正数偏差的示例性计算结果。
图4A至图4B示出了根据一些实施方案的由使用查找表的自适应双边滤波器使用的示例性相邻像素布置。
图5示出了根据一些实施方案的可包括使用查找表的自适应双边滤波器的示例性编码器,其中自适应双边滤波器使用先前图像帧像素。
图6示出了根据一些实施方案的基于两个发信号通知的查找表对查找表进行插值的过程。
图7示出了根据一些实施方案的可包括作为样本自适应偏移(SAO)滤波器的一部分的使用查找表的自适应双边滤波器的示例性编码器。
图8示出了根据一些实施方案的可包括作为预测过程的一部分的使用查找表的自适应双边滤波器的示例性编码器。
图9示出了根据一些实施方案的示例性编码器,该编码器可包括作为预测过程的一部分的使用查找表的自适应双边滤波器和作为环内滤波过程的一部分的使用查找表的附加的自适应双边滤波器。
图10示出了根据一些实施方案的可实现编码器或解码器的示例性计算机系统。
本说明书包括参考“一个实施方案”或“实施方案”。出现短语“在一个实施方案中”或“在实施方案中”并不一定是指同一个实施方案。特定特征、结构或特性可以与本公开一致的任何合适的方式被组合。
“包括”,该术语是开放式的。如在所附权利要求书中所使用的,该术语不排除附加结构或步骤。考虑以下引用的权利要求:“一种包括一个或多个处理器单元...的装置”此类权利要求不排除该装置包括附加部件(例如,网络接口单元、图形电路等)。
“被配置为”,各种单元、电路或其他部件可被描述为或叙述为“被配置为”执行一项或多项任务。在此类上下文中,“被配置为”用于通过指示单元/电路/部件包括在操作期间执行这一项或多项任务的结构(例如,电路)来暗指该结构。如此,单元/电路/部件据称可被配置为即使在指定的单元/电路/部件当前不可操作(例如,未接通)时也执行该任务。与“被配置为”语言一起使用的单元/电路/部件包括硬件——例如电路、存储可执行以实现操作的程序指令的存储器等。引用单元/电路/部件“被配置为”执行一项或多项任务明确地旨在针对该单元/电路/部件不援引35U.S.C.§112(f)。此外,“被配置为”可包括由软件和/或固件(例如,FPGA或执行软件的通用处理器)操纵的通用结构(例如,通用电路)以能够执行待解决的一项或多项任务的方式操作。“被配置为”还可包括调整制造过程(例如,半导体制作设施),以制造适用于实现或执行一项或多项任务的设备(例如,集成电路)。
“第一”“第二”等。如本文所用,这些术语充当它们所在之前的名词的标签,并且不暗指任何类型的排序(例如,空间的、时间的、逻辑的等)。例如,缓冲电路在本文中可被描述为执行“第一”值和“第二”值的写入操作。术语“第一”和“第二”未必暗指第一值必须在第二值之前被写入。
“基于”,如本文所用,该术语用于描述影响确定的一个或多个因素。该术语不排除影响确定的附加因素。即,确定可仅基于这些因素或至少部分地基于这些因素。考虑短语“基于B来确定A”。在这种情况下,B为影响A的确定的因素,此类短语不排除A的确定也可基于C。在其他实例中,可仅基于B来确定A。
具体实施方式
双边滤波是一种已经用于多种应用的高级滤波方法,这些应用包括图像去噪和增强。与利用固定系数进行滤波的传统FIR滤波器不同,双边滤波器考虑当前样本/中心像素和其邻域中的像素之间的相似性,并且因此调节滤波系数。这导致更好的边缘保存和改进的总体主观质量。
在一些实施方案中,双边滤波可用作视频编解码器内的环内滤波器。例如,图1示出了接收输入视频数据102的编码器100。输入视频数据102用于经由帧内预测模块108和/或运动估计/补偿模块110确定预测数据。将预测数据与输入视频数据102进行比较以确定残余视频数据(例如,预测视频数据和输入视频数据102之间的差异)。残余视频数据经由变换/量化模块104进一步处理。所变换/所量化的残余数据经由熵编码模块106进行熵编码,并且作为压缩视频数据输出。编码器100还包括逆量化/逆变换模块114。逆量化/逆变换模块重建残余视频数据。逆量化/逆变换模块114的输出被馈送到生成原始输入视频数据102的重建版本的预测因子。视频数据的重建版本可用于确定由于在变换/量化模块104处执行的变换/量化而引入的任何失真和/或由预测产生的任何失真。视频数据的重建版本由环内滤波器116进一步处理并存储在解码图片缓冲器112中。解码图片缓冲器112中的图像可被运动估计/补偿模块110使用。
在一些实施方案中,环内滤波器116可包括去块滤波器118、SAO滤波器120和使用查找表122的自适应双边滤波器,如本文更详细地描述。
在一些实施方案中,使用这种自适应双边滤波器可提供附加的编码益处,例如改进的速率失真性能和主观质量。在一些实施方案中,双边滤波器可与其他编码工具组合使用。然而,双边滤波器可以是相当复杂的,例如,它们可需要除法和基于其他浮点的运算,这可能使它们难以在视频编码系统的上下文内支持。为了减少这种复杂性,可基于查找表(LUT)方法使用近似法。此过程可导致待添加到中心像素位置的偏移参数。为了还结合过程的复杂性,双边滤波可限制在像素的邻域内,诸如来自中心像素位置的正或负1像素。在仅使用邻近像素位置的竖直和水平邻居情况下,还可以考虑进一步简化。在一些实施方案中,查找表的使用可通过仅涉及求和与乘法而不涉及使用浮点小数的除法来简单地计算。在一些实施方案中,使用查找表的自适应双边滤波可用于如由MPEG诸如HEVC或VVC定义的编码器/解码器中。此外,在一些实施方案中,使用查找表的自适应双边滤波可用于如由AV2诸如AOM定义的编码器/解码器中。
在一些实施方案中,除了或代替去块滤波器、样本自适应偏移(SAO)滤波器和/或自适应环路滤波(ALF)方法,可使用双边滤波器。在一些实施方案中,双边滤波器可与SAO滤波器并行使用。在这种实施方案中,可使用SAO和双边滤波器过程并行处理相同的像素,然后可将通过双边处理导出的隐式偏移和通过SAO过程导出并发信号通知的显式偏移相加。更具体地,代替以串行方式例如SAO(BIF(I(x,y)))执行两个滤波器,两个滤波器都可作用于输入样本I(x,y)上,以创建Δ值。
ΔBIF=ΔBIF(I(x,y))并且ΔSAO=ΔSAO(I(x,y))
并且因此可并行执行。最终像素值被构建为
Ifilt(x,y)=clip(I(x,y)+ΔBIF+ΔSAO)。
在一些实施方案中,查找表基于待处理的当前像素的量化参数(QP)来选择。
LUT的条目基于当前像素和其相邻像素之间的差异来确定,即如下计算:
indexi,j=((I(pad(x+i,y+j))-I(x,y))+4)>>3,其中i和j表示在[-1,1]之间的带符号整数值。对于此公式以及如下所有,忽略i=j=0的情况。在相邻像素不可用(例如像素位于图像或图块的边界上)的情况下,使用函数pad(m,n)应用填补。然后,将索引的绝对值限幅以拟合到LUT条目的范围中:
LUT_indexi,j=clip(abs(indexi,j),15)
基于索引i、j的符号和I(x,y)的亮度QP值,可针对每个位置计算偏移。在索引i、j>0的情况下,
LUT_valuei,j=LUT[LUT_indexi,j],
否则:
LUT_valuei,j=-LUT[LUT_indexi,j]
这也可被视为:
LUT_valuei,j=sign(indexi,j)*LUT[LUT_indexi,j]
结果可进一步基于当前像素和对应相邻像素之间的空间距离进行加权。在一些实施方案中,仅针对每个样本考虑8个最接近的邻居(8个连接的邻域),该加权过程例如通过将LUT的结果缩放1/2来影响对角位置。例如,图2中的202示出了具有8个连接的邻居的实施方案。此外,图2中的204示出了具有4个连接的邻居的实施方案。
在一些实施方案中,然后计算的LUT值被如下求和:
并且利用因子k进一步加权,该因子k取决于滤波块的大小,例如
sum=(k*sum)>>1
基于CU块大小和当前块的预测模式的因子k的推导在下表1中示出:
表1
然后通过如下将总和变量除以16来计算最终偏移值Δ_BIF:
ΔBIF=(sum+8)>>4
在一些实施方案中,使用查找表的自适应双边滤波不仅可在视频编码的上下文中(例如在视频编码环路内部)使用,而且还用于应用双边滤波以进行增强应用,例如环外去噪。
对减小正数偏差的改进
假设除以2n的为无符号整数x,则上述方法引入对正数的偏差:
g(x)=(x+2n-1)>>n
在以下情况下引入此偏差:
i.确定LUT的索引
ii.对由于空间距离(例如,对角邻居)增大而产生的LUT值进行加权
iii.计算最终偏移值
为了消除偏差,在一些实施方案中,可使用以下方法:
f(x)=sign(x)*((abs(x)+2n-1)>>n)
例如,图3A示出了消除了偏差的结果,而图3B示出了所描述的引入正数偏差的原始方法。
针对HDR、Hi-位深度和其他块特性的改进
在一些实施方案中,LUT可仅适用于10位输入数据。LUT也可能针对使用视频范围表示所表示的内容优化,并且最可能针对标准动态范围(SDR)材料优化。为了改进这一点,在一些实施方案中,可考虑输入位深度和任选地动态范围和内容类型。这可通过在编解码器内针对每个不同的位深度、范围或内容特性(传递特性、色原、矩阵系数等)指定不同的LUT或通过调整LUT索引和最终偏移值的计算来实现。例如,可将不同的LUT用于BT.2100 PQYCbCr内容与利用BT.709YCbCr表示或BT.2100 HLG YCbCr表示的其他视频材料。在基于位深度调节计算的情况下,可根据标称位深度(例如10位)调节输入数据,然后可将此信息馈送到LUT中。特别地,在一个实施方案中,假设输入位深度小于10位,则可通过计算来调整位深度:
I10b(x,y)=I(x,y)<<(10-InternalBitDepth)
如果位深度超过10位,则调整如下执行:
I10b(x,y)=I(x,y)>>(InternalBitDepth-10)
如果还期望考虑样本范围例如用于完整范围内容,并且假设针对视频范围材料优化LUT,则该过程可如下进一步调节:
为了调节SDR材料的过程,可假设I对应于非线性变换的照度,而不是亮度信号。因此,该信号然后可通过应用PQ EOTF例如针对PQ内容首先线性化,然后转换为BT.709信号,假设通过应用BT.709逆EOTF过程针对此类信号优化LUT。
在编解码器内指定不同的LUT或基于当前样本(中心像素)的预测类型调整样本的LUT索引和最终偏移值的计算也是期望的。作为示例,通常,P或B译码图片或切片内的帧内块中的错误与帧间预测块中的错误相比具有通常因较差的预测而引起的不同特性。因此,与帧间预测块相比,最好对帧内预测块施加更强的滤波。这可以是隐式的,例如,滤波强度可基于块的和/或其邻域编码模式来调整,或者可在位流中进一步发信号通知和控制,例如,存在发信号通知是否将考虑块和/或其邻域块的模式来调整滤波强度的控制参数。在另一示例中,与平滑帧内预测模式诸如平面或DC相比,某些方向帧内预测模式(例如,水平、竖直或对角(45/135度))在相邻样本之间的误差分布可不同。然后,可期望还基于帧内预测模式类型来调整滤波强度。块大小也可以是用于改变滤波强度的另一分类器。针对帧间模式,也可考虑参考指数和运动向量范围。
填补改进
在一些实施方案中,这种方案可以多种级别操作,这些级别包括仅位于CU/块、CTU/宏块、切片、图块、程序块或图片边界内。根据该级别,填补可必须在这种级别的边界处应用。上述所提出的双边滤波器使用镜像以用于任何位置的填补,例如顶部、左、右或底部上可能不可用的位置。在一些实施方案中,也可使用其他填补方案,诸如边界复制、外推、在边界处引入恒定值(例如通过用零值或用中间范围值填补)、循环填补等。另一另选方案是不使用填补,并且仅使用基于可用样本的数量修改权重的可用样本。可用标记(例如,序列参数集(sps)、图片参数集(pps)、自适应参数集(app)或切片标头等内的bif_use_padding)发信号通知是否使用了填补。然而,如果填补方法也是可控制的,则可替代地发信号通知参数而不是标记。当标记为不可用的相邻样本的数量大于阈值时,另一另选方案是针对当前样本禁用双边滤波。用于确定这种决策的阈值可固定或在sps、pps、aps或切片标头内发信号通知。这可帮助避免或减少在图像或分区边界处由于填补而引起的典型的拖曳问题。
对改变考虑的相邻像素的质量和/或配置的改进
在一些实施方案中,针对此过程可考虑不同数量的邻居。数量可针对整个序列固定,但也可根据帧、切片或甚至CTU发信号通知和调节。例如,代替仅考虑八个直接相邻的样本(8个连接的邻域),可考虑围绕中心样本的较大区域。另选的,可使用4个连接的邻域或多于8个例如24个连接的邻域。此外,在一些情况下,针对此过程,使用菱形或圆形采样区域可能优于使用方形采样区域。与在使用方形滤波区域时原本将考虑的样本的数量相比,在仅适度地增加被认为用于滤波的样本的数量时,滤波可得到改进。显然,进一步远离中心的样本(例如,与中心相比距离为2的样本)将显然增大滤波器的范围,然而,同时需要考虑它们的复杂性。无论如何,由于距中心样本的距离增大,因此需要对此类样本的所得LUT值进行适当缩放。另选采样区域的示例在图4A的402和图4B的404中示出。
在一些实施方案中,与帧间预测的块、切片等相比,不同查找表可用于帧内预测的块、切片等。而且,此外,来自先前或后续时间点的像素值(例如,其他帧)可用于双边预测。在一些实施方案中,先前或后续帧可用于确定存在多少运动,并且可基于运动调节QP。因此,针对用于双边滤波的不同QP可导致不同的LUT。
对作为双边滤波器中的第三维度的使用时间的改进
在一些实施方案中,过程也可扩展以包括时间候选,例如通过还在先前和/或未来帧(如果这些帧可用的话)中考虑协同定位的像素及其邻居。类似或不同的加权可应用于时间候选与空间候选。在这种情况下,具体实施可被认为是3D双边滤波方案。例如,图5示出了来自解码图片缓冲器112的先前时隙的图像被提供给环内滤波器116的双边滤波器122。
对基于正在滤波的内容调节LUT的改进
在上文最初描述的过程中,讨论固定LUT。然而,可能无法针对正在滤波的内容优化固定LUT。因此,在一些实施方案中,可使用基于内容的LUT系数的调整,这些LUT系数可在解码器处计算或在序列、图片参数集、切片或图块标头(或在由编解码器支持的情况下为类似高级语法结构)中发信号通知。可发信号通知多个此类LUT,并且可使这些LUT持续(例如,在帧的解码之后不转储并且针对多个未来帧重复使用)且可调节。如果发信号通知多个LUT,则在较低级别处也可发信号通知到适当的LUT的索引。例如,在CTU级别上,可存在发信号通知到先前发信号通知的LUT的索引的参数bif_LUT_index。只有之前在较高级别上将标记bif_signal_addititional_LUT设定为1的情况下才发信号通知此索引。SPS中的示例性信令可如下:
另选方案可以是将sps_lut_coefficient作为Δ值发信号通知,其中Δ是基于当前LUT的先前指示系数计算的。在这种情况下,可将信令类型从u(8)改变为se(v)。
在一些实施方案中,可根据较高级别版本(例如在SPS中)预测LUT的较低级别(例如PPS或切片标头)信令。在这种情况下,代替发信号通知区间的数量,我们可发信号通知当前LUT将根据哪个较高级别(例如SPS)LUT预测,然后针对所有系数发信号通知它们与较高级别LUT的差异。
还可如下进行附加的考虑:
i.LUT的大小可与上文所述的相同,具有16个条目。然而,也可使用不同(例如,更少例如8个,或更多例如32个)的LUT大小,这可提供更粗糙或更精细的LUT。在这种情况下,LUT长度也将在对应的HLS结构中被发信号通知,并且被考虑来确定每个相邻样本的适当LUT条目。除了将bif_signal_additional_LUT设定为1之外,参数例如bif_LUT_length还将指示发信号通知的LUT的长度。
ii.代替发信号通知所有LUT系数,仅发信号通知这些系数的子集,并且基于特定插值方法(例如双线性或双三次)对缺失系数进行插值。插值可以是已知的,或者可在位流内部发信号通知。与显式地发送值(尤其是在频繁地发信号通知这些值的情况下)相比,插值过程可节省一些开销,并因此可能节省位并且提高编码效率。可发信号通知每隔一个系数的线性插值的示例,并且对中间系数进行插值。代替在线性空间中插值,到对数域的变换可能导致更好的LUT。
iii.LUT可以是基于训练(例如,使用机器学习过程)的。与中心像素值与其邻域相比,通常针对较小的差异预期较高的系数值,而当距离较大时,系数值应当减小。
对考虑相邻样本的QP的改进
在一些实施方案中,可基于与正在考虑的给定像素相关联的QP范围针对像素指定LUT。然而,这可能不考虑将哪些QP用于相邻样本。例如,针对在编解码器(如HEVC或VVC)中的量化组边界处的样本,该样本的邻居可属于不同的量化组并且可与更大或更小的QP相关联。这可导致那些样本以及属于特定量化组的所有样本与相邻量化组相比可能被不同地滤波。这可在块边界处引入伪影。作为另选方案,考虑在该过程期间也可应用邻域QP。例如,代替考虑像素的实际QP,可利用该像素的邻域进行求平均并且利用平均的QP来选择LUT。还可针对更精细的QP范围定义更多LUT(或甚至每个QP都具有LUT)。此类LUT可通过插值过程来生成,例如通过跨连续发信号通知的LUT执行双线性或其他插值。如果LUT针对较低或最大范围未完全指定,则也可使用外推。图6示出了用于在两个LUT之间插值的一般工作流程。例如查找表1(602)和查找表2(604)可由插值器606使用以生成插值的查找表608。也可通过考虑当前样本与在某一距离内的其他量化组相距的距离并且对QP值执行基于距离的插值来计算待用于位置的QP。然后,使用此基于距离的QP,将进行LUT的选择。
对滤波器色度值的改进
对上文所述的想法的另一扩展是对色度值的滤波。例如,相同的LUT可用于对色度分量进行滤波。此外,针对给定亮度权重情况,也可提供相关联的色度权重表。该过程可另选地在不同的颜色域中执行,例如在RGB或ICtCp中执行(假设内容呈4:4:4格式),或者如果允许动态插值,则进行颜色转换以及从一种格式下采样到下一种格式。
在一些实施方案中,可以与亮度不同的速率对色度进行采样。因此,与亮度相比,可针对色度使用不同的LUT(和所得偏移)。例如,针对较低采样的色度值,可使用较少的滤波来避免来自进一步远离样本的值的溢出。例如,色度样本可彼此进一步远离,因为与亮度相比,子采样跳过色度中的值。
对避免LUT中的负值的改进
遵循双边滤波过程的性质以保留尖锐边缘(这些尖锐边缘是原始信号的一部分),建议调整LUT并将最后一个条目设定为零或正值。除了通过在LUT中仅具有正值来保存尖锐边缘之外,还减少存储条目所必需的位的数量。此外,我们不再需要关注舍入运算,从而潜在地节省了滤波过程中的计算步骤。
关于量化的改进
在一些实施方案中,代替将绝对距离除以8(移位3)并且将结果限幅到LUT的最大区间,可针对该距离选择不同的量化控制值。该控制值可以是隐式的,或者也可用LUT发信号通知。然后执行限幅。另选地,可在应用量化之前完成限幅,同时保证值将保持在LUT范围内。
对合并计算步骤的改进
在一些实施方案中,代替利用首先计算cmsum的中间步骤计算BifOffsetVal[xTuY+x][yTuY+y],提议将这两个步骤合并成一个步骤。在这种情况下,偏移值可被计算为:
BifOffsetVal[xTuY+x][yTuY+y]=((strength*msum)+16)>>5
这可减少计算所需的操作的数量。
对切换双边滤波或双边滤波参数的改进
在一些实施方案中,可在sps中和在CTU级别上发信号通知是否要应用双边滤波。由于在双边滤波器处理样本时引入的延迟,因此特定的编码器具体实施在这种情形下可能遇到“应急模式”。该应急模式还可有助于允许对pps、切片标头或图块级别进行控制。除此之外,还可应用仅允许对LUT参数的附加的偏移或调节的滤波器信令的开/关控制。利用这种控制,控制双边滤波器的使用将不仅有助于“应急模式”情形,而且还作为控制重建过程的质量的机制。
对在SAO计算中包括双边滤波的改进
如上所述的滤波过程实际上可被视为自适应且隐式的SAO过程,因为其结果是需要基于其邻域特性添加到每个像素的偏移。因此,代替与SAO过程并行执行此过程,该过程可被认为是针对每个CTU可自适应地启用的“特殊”SAO模式。目前,例如,SAO过程支持两种模式。带偏移和边缘偏移模式。这些模式显式地发送在此类模式下支持的不同分类器的偏移。在一些实施方案中,可引入称为“隐式”SAO的第三模式,该第三模式现在利用上文所述过程来生成偏移。
附加的发信号通知的参数
在一些实施方案中,代替仅考虑块和/或其邻域的QP以用于选择LUT,可发信号通知将调节LUT的所选择索引的附加的参数。这可例如通过以下方式来完成:将该参数与原始QP相加,同时还考虑将确保在访问LUT表时不存在溢出的限幅过程。
距离计算调节
此外,在一些实施方案中,还可调节距离计算。可将附加的偏移(正或负)与朝向所选择LUT中的特定条目的偏差相加。这可帮助减小或增大滤波过程的强度。
对进一步调节从LUT检索的近似值的改进
在一些实施方案中,计算的偏移可仅考虑距离而不考虑样本的实际值。然而,可期望还基于样本的明度调节偏移。针对较亮的样本,可添加较大的偏移,而针对较暗淡/较暗样本,较小的偏移可能更适当。这需要基于当前样本的强度的偏移的附加的调制/乘法。在一些实施方案中,明度考虑可以是带状的,使得如果明度落在一个带内,则将发信号通知特定附加的调节值,并且如果该明度落入另一带内,则将发信号通知不同的特定调节值。
对包括双边滤波作为SAO模式的改进
在一些实施方案中,另选方案将为创建附加的SAO模式,其中例如基于边缘偏移方法仍然发信号通知SAO偏移。然而,在这种情况下,发信号通知的偏移值可通过将使用LUT过程生成的值来调节。与两个偏移相加的上述过程不同,在这种情况下,发信号通知的偏移由导出参数缩放。在这种情况下,可期望还调节如何执行SAO分类的过程,例如,在这种情况下,边缘偏移分类的Δ可“量化”,而不是仅考虑样本大于(larger/bigger than)其邻居(例如,也考虑差异量)。例如,图7示出了SAO滤波器120,该SAO滤波器包括作为SAO滤波器120的一部分的双边滤波器加权模块702。
对在SAO计算中使用双边滤波结果的改进
在一些实施方案中,如果执行SAO和双边滤波两者以计算两个相加的偏移,则从编码器侧来看,首先基于原始样本计算双边偏移更加优化,而针对常规SAO过程,考虑原始样本进行分类,但基于也考虑双边偏移的修改的样本执行附加的SAO偏移的计算和优化。以这种方式,最终的组合偏移将更加优化。
对利用预测数据调节双边滤波的改进
在一些实施方案中,还可基于当前块的模式类型和大小以及可已经针对当前块和/或被考虑用于滤波的其邻居使用的预测的某些特性来控制使用查找表的自适应双边滤波。例如,如果用于当前像素的运动向量高于某一阈值或在某个运动范围内,则可需要应用不同/更强的滤波。如果块也使用仿射运动补偿或加权预测,可使用不同的滤波。帧内与帧间编码块还可使用不同的滤波强度,而强度可基于预测块大小增大或减小。也可基于类似的条件再次针对所有或一些像素(例如,针对边界或内部像素)禁用滤波器。其他模式,诸如帧内块拷贝,也可影响该模式。例如,如果使用帧内块拷贝模式或分形预测对块进行编码,并且如果该块没有残余,并且如果该块的相关联QP高于隐式地关闭而不必为其使用发信号通知任何标记的某个阈值,则该模式可以是期望的。然而,在其他情况下,标记针对这种考虑可以是足够的。也可需要不使用双边滤波器的其他情况可包括使用调色板或无损模式诸如在如HEVC的编解码器中的PCM模式的情况。另选地,当待处理的当前样本或该样本的邻居利用特定模式或块大小进行编码(例如在帧内块拷贝或调色板模式下编码)时,可在编解码器中可存在的sps、pps、切片或其他类型的高级别语法标头中发信号通知启用标记,以指示是否应当隐式地启用或禁用此滤波模式,而无需任何其他信令(例如,其是禁止模式)。
对在预测中使用双边滤波的改进
在一些实施方案中,双边滤波器也可被认为是预测过程的一部分。如果使用特定的帧内或帧间预测模式,则如本文所指定的,可在预测样本上应用双边滤波以进一步细化那些预测样本。例如,针对帧内预测,通常用于预测的相邻样本,例如当前块左侧或顶部上的样本,首先使用双边滤波进行滤波,之后将它们用于例如使用方向预测生成预测块。在这种情况下,仅相同样本可用于双边滤波,然而,在另选实施方案中也可使用已经被重建的它们的相邻样本。类似地,针对帧间预测,还可在相邻样本上应用双边滤波。在这种情况下,可在插值过程之前或在插值过程之后应用双边滤波。该双边滤波也可限制在待使用的预测块的样本内,或允许还使用在预测块之外的样本(如果可用的话)。双边滤波的使用可以是隐式的,例如,始终启用,或者可以是显式的。可以SPS、PPS、切片标头或甚至以CTU和CU级别发信号通知显式使用。如果启用或禁用全局运动补偿(GMC),或者如果当前块的运动向量在某一范围内,则还可允许将显式使用仅用于某些预测模式,例如仅用于特定块大小的帧内或帧间模式。这些不同的选项也可在位流的不同级别下发信号通知或预先决定。例如,图8示出了编码器800,该编码器包括作为预测过程的一部分的双边滤波802和804。在一些实施方案中,环内滤波器116还可包括如图1、图5或图7中所描述的双边滤波。例如,图9示出了编码器900,该编码器包括用于预测的双边滤波过程802和804两者以及包括在环内滤波器116中的双边滤波器122。
在一些实施方案中,使用原始未滤波样本执行用于帧间预测的子像素生成过程。在这种情况下,在执行运动补偿之后应用滤波过程。这在数学上可被视为prediction(x,y)=Filter(MC(x,y))。这具有仅需要对对应于正在进行运动补偿的块的大小的最终窗口执行滤波的优点,这导致复杂性降低。
在一些实施方案中,在子像素生成过程之前执行滤波过程。这可被视为prediction(x,y)=MC(Filter(x,y))。这可导致更好的性能,但这可需要编码器/解码器对MC插值窗口内的所有样本(例如,不仅包括我们正在进行运动补偿的块的中心中的像素,而且包括来自子像素插值过程所需的块的左侧、右侧、顶部和底部的附加的样本)进行滤波;窗口的大小由块大小以及运动补偿插值滤波器的滤波器长度/抽头决定。
在一些实施方案中,另一另选方案为了不增加滤波操作的数量,双边滤波可被限制为仅在中心块中应用,而在该块之外并且用于子像素插值的样本被保留未滤波。在这种情形下,可改变所使用的插值滤波器,以便在插值时将比未滤波位置高的强度赋予滤波位置。
也可考虑混合方法。也就是说,代替仅对预测块的中心位置或子像素插值所需的所有位置进行滤波,对预测块和边界样本(例如,右侧/左侧上的M最近列和顶部/底部上的N最近行,其中M或N可能小于从每个侧滤波所需的样本的数量)中的一些样本两者进行滤波。如果还需要,也可从左侧与右侧或从顶部与底侧考虑不同数量的样本。这再次可降低滤波复杂性,但对质量的影响较小。
在一些实施方案中,滤波可仅针对一些子像素位置并且不针对其他子像素位置启用。例如,滤波仅用于整数,或者用于整数和半像素位置,而针对所有其他位置禁用滤波。这还可帮助降低复杂性。可根据其对样本进行滤波的先前描述的所有方法仍然适用。在这种情况下,可节省滤波模式的信令。
在一些实施方案中,以上方法可在编码器/解码器中预定义,但也可发信号通知。在后一种情况下,系统可支持此类方法中的多种,并且编码器可在语法的不同级别(SPS、PPS、切片/图块标头、块级别等)内向解码器发信号通知要使用哪种方法。要使用的方法还可取决于诸如运动向量子像素位置的方面。也就是说,针对利用仅呈整数或半精度的向量发信号通知的运动向量,可使用将滤波限制到块的中心的方法,针对所有其他位置可使用混合方法等。
在一些实施方案中,针对亮度与色度,可考虑类似的考虑因素,其中系统允许针对色度位置与亮度位置的不同滤波或针对其禁用滤波,这也取决于运动向量精度。
在一些实施方案中,编码器也可考虑类似的策略以降低复杂性(这是非规范方面)。例如,在解码器预期对所有样本进行滤波的系统中,如在于子像素生成过程之前执行滤波过程的方案中所述,编码器可通过在这些阶段处部分地对样本进行滤波来降低运动估计过程的不同阶段的复杂性。例如,许多编码器首先执行具有围绕一个或多个特定中心的整数位移的初始运动估计阶段。该中心也可以呈整数精度(在这种情况下,显然总是对仅整数样本进行滤波),而在其他情况下,这种中心也可呈子像素精度。在这种情况下,在整个图像上并且在运动补偿之前执行滤波可能更容易,因为编码器不必每次执行搜索时都对位置进行滤波。在这种情况下,可使用类似但不太复杂的滤波器,以便再次降低复杂性。这显然意味着在编码器中需要用于存储这种滤波图像的附加的存储器。另选方案将是使用受限窗口方法动态地对位置进行滤波。在执行该步骤之后,然后编码器可执行子像素细化。在此阶段处,编码器可更喜欢使用如何生成预测样本的更准确方法执行子像素细化。如果使用了分层运动估计,则也可应用类似的策略。
当在运动估计过程期间应用滤波时,滤波参考以及未滤波参考可相对于滤波源进行匹配,以便导出最佳匹配运动向量。在稍后的模式决策过程中,然后可通过针对原始源测试不同的重建(滤波预测+残余与未滤波预测+残余)来决定是否应当对参考块进行滤波。附图有望为您提供一些进一步的见解(ME/MD)。
当使用预测滤波执行运动估计和补偿时,在一些实施方案中,可利用类似的滤波器对源而不仅是参考进行滤波。这可帮助找到参考和源之间的更好匹配。如果未评估滤波,则编码器可切换并尝试将原始源(未滤波)与该参考匹配。
在一些实施方案中,可扩展类似概念以用于帧内预测。针对帧内预测,通常样本是从水平和/或竖直相邻样本中生成的。在其他情况下,例如在帧内块拷贝方法中,通过使用先前在同一图像中编码的整个数据块来生成预测。在此类情况下,再次滤波可被约束为仅使用用于预测过程的样本,或被扩展以也使用与用于预测的那些样本邻近的样本。也可对用于预测过程的水平与竖直样本进行不同的考虑。该方法再次可以是模式相关的,在系统中预定义的,或者可在位流中(例如在SPS、PPS、切片标头等中)发信号通知。例如,针对DC预测模式,可禁用滤波,同时仅针对所有其他方向预测模式或仅针对某些预测模式启用滤波。我还附上一张图来使主要想法可视化。
对在后图像处理中使用双边滤波的改进
在一些实施方案中,代替或除了作为环内滤波器的一部分,作为后处理步骤可应用双边滤波器。当作为后处理步骤而不是环内滤波过程或作为预测环路的一部分应用双边滤波器时,上文所述的信息可包括在SEI中以改进输出并使滤波器对原始的内容特性更加自适应。
示例性计算机系统
图10示出了根据一些实施方案的示例性计算机系统1000,该示例性计算机系统可实现编码器或解码器或本文所述的部件中的任何其他部件(例如,上文参考图1至图9描述的部件中的任何部件)。计算机系统1000可被配置为执行上文所述的任意或全部实施方案。在不同的实施方案中,计算机系统1000可以是各种类型的设备中的任一者,包括但不限于:个人计算机系统、台式计算机、膝上型电脑、笔记本电脑、平板电脑、一体电脑、平板计算机或上网本电脑、大型计算机系统、手持式计算机、工作站、网络计算机、相机、机顶盒、移动设备、消费者设备、视频游戏控制器、手持式视频游戏设备、应用服务器、存储设备、电视、视频记录设备、外围设备(诸如交换机、调制解调器、路由器)或一般性的任何类型的计算或电子设备。
如本文所述的点云编码器或解码器的各种实施方案可在一个或多个计算机系统1000中执行,该计算机系统可与各种其他设备交互。需注意,根据各种实施方案,上文相对于图1至图15描述的任何部件、动作或功能性可实现于被配置为图10的计算机系统1000的一个或多个计算机上。在所示出的实施方案中,计算机系统1000包括经由输入/输出(I/O)接口1030联接到系统存储器1020的一个或多个处理器1010。计算机系统1000还包括联接到I/O接口1030的网络接口1040,以及一个或多个输入/输出设备1050,诸如光标控制设备1060、键盘1070和一个或多个显示器1080。在一些情况下,可以想到实施方案可使用计算机系统1000的单个实例来实现,而在其他实施方案中,多个此类系统或者构成计算机系统1000的多个节点可被配置为托管实施方案的不同部分或实例。例如,在一个实施方案中,一些元素可经由计算机系统1000的与实现其他元素的那些节点不同的一个或多个节点来实现。
在各种实施方案中,计算机系统1000可以是包括一个处理器1010的单处理器系统或者包括若干个处理器1010(例如两个、四个、八个或另一合适数量)的多处理器系统。处理器1010可以是能够执行指令的任何合适的处理器。例如,在各种实施方案中,处理器1010可以是实现多种指令集架构(ISA)(诸如x86、PowerPC、SPARC或MIPS ISA或任何其他合适的ISA)中的任一种的通用或嵌入式处理器。在多处理器系统中,处理器1010中的每个处理器通常可但并非必须实现相同的ISA。
系统存储器1020可被配置为存储点云压缩或点云解压缩程序指令1022和/或能够由处理器1010访问的传感器数据。在各种实施方案中,系统存储器1020可使用任何合适的存储器技术来实现,合适的存储器技术为诸如静态随机存取存储器(SRAM)、同步动态RAM(SDRAM)、非易失性/闪存型存储器或任何其他类型的存储器。在所示出的实施方案中,程序指令1022可被配置为实现结合上文所述功能性中的任一种的图像传感器控制应用程序。在一些实施方案中,程序指令和/或数据可被接收、发送或存储在与系统存储器1020或计算机系统1000分开的不同类型的计算机可访问介质上或类似介质上。尽管将计算机系统1000描述为实施前面各图的功能框的功能性,但可通过这种计算机系统实施本文描述的任何功能性。
在一个实施方案中,I/O接口1030可被配置为协调设备中的处理器1010、系统存储器1020和任何外围设备(包括网络接口1040或其它外围设备接口,诸如输入/输出设备1050)之间的I/O通信。在一些实施方案中,I/O接口1030可执行任何必要的协议、定时或其他数据变换以将来自一个部件(例如系统存储器1020)的数据信号转换成适于由另一部件(例如处理器1010)使用的格式。在一些实施方案中,I/O接口1030可包括对例如通过各种类型的外围总线(诸如,外围部件互连(PCI)总线标准或通用串行总线(USB)标准的变型)附接的设备的支持。在一些实施方案中,I/O接口1030的功能例如可被划分到两个或更多个单独部件中,诸如北桥接件和南桥接件。此外,在一些实施方案中,I/O接口1030(诸如到系统存储器1020的接口)的功能中的一些或全部可直接并入处理器1010中。
网络接口1040可被配置为允许在计算机系统1000和附接到网络1085的其他设备(例如,承载器或代理设备)之间或者在计算机系统1000的节点之间交换数据。在各种实施方案中,网络1085可包括一种或多种网络,包括但不限于局域网(LAN)(例如,以太网或企业网)、广域网(WAN)(例如,互联网)、无线数据网、某种其他电子数据网络或它们的某种组合。在各种实施方案中,网络接口1040可支持经由有线或无线通用数据网络(诸如任何合适类型的以太网网络)的通信,例如;经由电信/电话网络(诸如模拟语音网络或数字光纤通信网络)的通信;经由存储区域网络(诸如光纤通道SAN)、或经由任何其他合适类型的网络和/或协议的通信。
在一些实施方案中,输入/输出设备1050可包括一个或多个显示终端、键盘、小键盘、触控板、扫描设备、语音或光学识别设备或适于由一个或多个计算机系统1000键入或访问数据的任何其他设备。多个输入/输出设备1050可存在于计算机系统1000中,或者可分布在计算机系统1000的各个节点上。在一些实施方案中,类似的输入/输出设备可与计算机系统1000分开,并且可通过有线或无线连接(诸如通过网络接口1040)与计算机系统1000的一个或多个节点进行交互。
如图10所示,存储器1020可包括程序指令1022,这些程序指令可能够由处理器执行,以实现上文所述的任何元素或动作。在一个实施方案中,程序指令可执行上文所述的方法。在其他实施方案中,可包括不同的元件和数据。需注意,数据可包括上文所述的任何数据或信息。
本领域的技术人员应当理解,计算机系统1000仅仅是例示性的,而并非旨在限制实施方案的范围。特别地,计算机系统和设备可包括可执行所指出的功能的硬件或软件的任何组合,包括计算机、网络设备、互联网家电、PDA、无线电话、寻呼机等等。计算机系统1000还可连接到未示出的其他设备,或者反之可作为独立的系统进行操作。此外,由所示出的部件所提供的功能在一些实施方案中可被组合在更少的部件中或者被分布在附加部件中。类似地,在一些实施方案中,所示出的部件中的一些部件的功能可不被提供,和/或其他附加功能可能是可用的。
本领域的技术人员还将认识到,虽然各种项目被示出为在被使用期间被存储在存储器中或存储装置上,但是为了存储器管理和数据完整性的目的,这些项目或其部分可在存储器和其他存储设备之间进行传输。另选地,在其他实施方案中,这些软件部件中的一些或全部软件部件可以在另一设备上的存储器中执行,并且经由计算机间通信来与例示的计算机系统进行通信。系统部件或数据结构中的一些或全部也可(例如作为指令或结构化数据)被存储在计算机可访问介质或便携式制品上以由合适的驱动器读取,其多种示例在上文中被描述。在一些实施方案中,存储在与计算机系统1000分开的计算机可访问介质上的指令可经由传输介质或信号(诸如经由通信介质诸如网络和/或无线链路而传送的电信号、电磁信号或数字信号)传输到计算机系统1000。各种实施方案还可包括在计算机可访问介质上接收、发送或存储根据以上描述所实现的指令和/或数据。一般来讲,计算机可访问介质可包括非暂态计算机可读存储介质或存储器介质,诸如磁介质或光学介质,例如盘或DVD/CD-ROM、易失性或非易失性介质,诸如RAM(例如SDRAM、DDR、RDRAM、SRAM等)、ROM等。在一些实施方案中,计算机可访问介质可包括传输介质或信号,诸如经由通信介质诸如网络和/或无线链路而传送的电气信号、电磁信号、或数字信号。
在不同的实施方案中,本文所述的方法可以在软件、硬件或它们的组合中实现。此外,可改变方法的框的次序,并且可对各种要素进行添加、重新排序、组合、省略、修改等。对于受益于本公开的本领域的技术人员,显然可做出各种修改和改变。本文所述的各种实施方案旨在为例示的而非限制性的。许多变型、修改、添加和改进是可能的。因此,可为在本文中被描述为单个示例的部件提供多个示例。各种部件、操作和数据存储区之间的边界在某种程度上是任意的,并且在特定例示性配置的上下文中示出了特定操作。预期了功能的其他分配,它们可落在所附权利要求的范围内。最后,被呈现为示例性配置中的分立部件的结构和功能可被实现为组合的结构或部件。这些和其他变型、修改、添加和改进可落入如以下权利要求书中所限定的实施方案的范围内。
Claims (22)
1.一种系统,所述系统包括:
编码器,所述编码器被配置为:
针对包括在视频的多个帧中的多个图像,压缩包括在图像帧中的所述图像中的相应图像的多个像素的像素值数据;以及
作为压缩所述像素值数据的压缩过程的一部分应用双边滤波器,其中为了应用所述双边滤波器,所述编码器被配置为:
针对所述视频的相应图像的相应部分:
确定待作为所述双边滤波器的一部分应用的自适应调节因子,其中所述自适应调节因子是基于所述相应部分的一个或多个特性确定的;以及
针对将针对其确定双边滤波器偏移值的所述相应部分的相应像素:
从由所述编码器针对所述双边滤波器生成或维持的多个查找表中选择一个查找表,其中所述多个查找表包括索引值和用于确定待应用于所述相应像素的所述双边滤波器偏移值的相关联近似偏移值;
其中所述查找表中的不同查找表与用于编码所述视频的所述相应图像的所述相应部分的不同量化参数相关联;并且
其中:
给定量化参数与所述相应部分相关联,并且所选择查找表是基于所确定的自适应调节因子而从与所述给定量化参数相关联的多个查找表选择的;或者
所选择查找表的近似偏移值是基于所确定的自适应调节因子修改的;
针对所述相应像素的第一相邻像素,确定到所选择查找表中的索引值,其中所述索引值是基于所述相邻像素相对于所述相应像素的位置或距离并且基于所述相邻像素的像素值确定的;
针对所述相应像素的一个或多个附加的相邻像素确定到所选择查找表或另外的一个或多个所选择查找表中的相应索引值,其中所述相应索引值是基于所述相应相邻像素相对于所述相应像素的相应位置或相应距离并且基于所述相应相邻像素的相应像素值确定的;
针对所述第一相邻像素和所述一个或多个附加的相邻像素,检索用于确定待应用于所述相应像素的所述双边滤波器偏移值的近似偏移值,其中所述近似偏移值是基于所确定索引值而从所选择查找表或所述一个或多个其他查找表中检索的;
基于所述相邻像素的所检索近似偏移值确定待应用于所述相应像素的所述双边滤波器偏移值;以及
将所确定双边滤波器偏移值应用于所述相应像素的所述像素值以确定所述相应像素的滤波的像素值数据。
2.根据权利要求1所述的系统,其中所述编码器被配置为对所述近似偏移值求和并且基于正在用于确定所述双边滤波器偏移值的相邻像素的数量应用移位算子,并且
其中所述编码器被配置为在应用所述移位算子之前获取所求和的近似偏移值的绝对值,然后在应用所述移位算子之后应用与所求和的近似偏移值相关联的正或负符号。
3.根据权利要求1或2所述的系统,其中用于确定所述自适应调节因子的所述相应部分的所述一个或多个特性包括以下中的一者或多者:
所述相应部分的像素的位深度,其中所述编码器针对不同的位深度生成或维持不同的查找表;
与所述相应部分相关联的动态范围,其中所述编码器针对标准动态范围和高动态范围生成或维持不同的查找表;
色原,其中所述编码器针对不同的色原生成或维持不同的查找表;
传递特性,其中所述编码器针对不同的传递特性生成或维持不同的查找表;
矩阵系数,其中所述编码器针对不同的矩阵系数生成或维持不同的查找表;
预测模式类型,其中所述编码器针对帧内预测模式和帧间预测模式生成或维持不同的查找表。
4.根据权利要求1-3中任一项所述的系统,其中用于确定所述自适应调节因子的所述相应部分的所述一个或多个特性包括以下中的一者或多者:
用于确定所述双边滤波器偏移的相邻像素的数量,其中针对与不在边界上的像素相比具有更少相邻像素的在边界上的像素,所述编码器被配置为针对具有更少相邻像素的所述像素利用不同的查找表。
5.根据权利要求1-4中任一项所述的系统,其中所述编码器被配置为发信号通知待用于确定所述双边滤波器偏移的所述一个或多个附加的相邻像素的数量。
6.根据权利要求1-5中任一项所述的系统,其中所述编码器被配置为发信号通知待用于确定所述双边滤波器偏移的所述一个或多个附加的相邻像素的布置。
7.根据权利要求5或6所述的系统,其中所述自适应调节因子包括缩放信息,所述缩放信息用于基于相应相邻像素相对于所述相应像素的位置或距离缩放所选择查找表的所述近似偏移值。
8.根据权利要求5-7中任一项所述的系统,其中所述待用于确定所述双边滤波器偏移的相邻像素的数量或布置以以下中的一者或多者发信号通知:
图像帧级别;
图像帧的切片级别;或者
切片的编码树单元。
9.根据权利要求1-8中任一项所述的系统,其中所述相邻像素中的一个相邻像素是相对于包括特定像素的图像帧的先前或后续图像帧的像素。
10.根据权利要求1-9中任一项所述的系统,其中由所述编码器生成或维持的所述查找表中的至少一些查找表是根据所述查找表中的其他查找表插值的,其中所述编码器被配置为向解码器发信号通知根据所述查找表中的所述其他查找表生成所述至少一些插值的查找表的指令。
11.根据权利要求1-9中任一项所述的系统,其中由所述编码器生成或维持的所述查找表中的至少一些查找表是通过将一个或多个Δ值应用于所述查找表中的其他查找表生成的,其中所述编码器被配置为向解码器发信号通知使用所述一个或多个Δ值根据所述查找表中的所述其他查找表生成所述至少一些查找表的指令。
12.根据权利要求1-10中任一项所述的系统,其中用于确定所述自适应调节因子的所述相应部分的所述一个或多个特性包括以下中的一者或多者:
相邻部分的量化参数。
13.根据权利要求1-12中任一项所述的系统,其中所述编码器被配置为针对亮度值和色度值生成或维持不同的查找表。
14.根据权利要求1-13中任一项所述的系统,其中所述查找表的所述近似偏移值不包括负值。
15.根据权利要求1所述的系统,其中所述双边滤波器被包括作为样本自适应偏移(SAO)滤波器的子部件。
16.根据权利要求1-15中任一项所述的系统,其中所述双边滤波器在预测过程中应用以确定预测的像素值。
17.根据权利要求1-16中任一项所述的系统,其中所述双边滤波器在预测过程之后应用于存储在解码图片缓冲器中的图像。
18.一种方法,包括:
针对包括在视频的多个帧中的多个图像,压缩包括在所述图像帧中的所述图像中的相应图像的多个像素的像素值数据;以及
作为压缩所述像素值数据的压缩过程的一部分应用双边滤波器,其中应用所述双边滤波器包括:
针对所述视频的相应图像的相应部分:
确定待作为所述双边滤波器的一部分应用的自适应调节因子,其中所述自适应调节因子是基于所述相应部分的一个或多个特性确定的;以及
针对将针对其确定双边滤波器偏移值的所述相应部分的相应像素:
从由所述编码器针对所述双边滤波器生成或维持的多个查找表中选择一个查找表,其中所述多个查找表包括索引值和用于确定待应用于所述相应像素的所述双边滤波器偏移值的相关联近似偏移值;
其中所述查找表中的不同查找表与用于编码所述视频的所述相应图像的所述相应部分的不同量化参数相关联;并且
其中:
给定量化参数与所述相应部分相关联,并且所选择查找表是基于所确定的自适应调节因子而从与所述给定量化参数相关联的多个查找表选择的;或者
所选择查找表的近似偏移值是基于所确定的自适应调节因子修改的;
针对所述相应像素的第一相邻像素,确定到所选择查找表中的索引值,其中所述索引值是基于所述相邻像素相对于所述相应像素的位置或距离并且基于所述相邻像素的像素值确定的;
针对所述相应像素的一个或多个附加的相邻像素,确定到所选择查找表或另外的一个或多个所选择查找表中的相应索引值,其中所述相应索引值是基于所述相应相邻像素相对于所述相应像素的相应位置或相应距离并且基于所述相应相邻像素的相应像素值确定的;
针对所述第一相邻像素和所述一个或多个附加的相邻像素,检索用于确定待应用于所述相应像素的所述双边滤波器偏移值的近似偏移值,其中所述近似偏移值是基于所确定索引值而从所选择查找表或所述一个或多个其他查找表中检索的;
基于所述相邻像素的所检索近似偏移值确定待应用于所述相应像素的所述双边滤波器偏移值;以及
将所确定双边滤波器偏移值应用于所述相应像素的所述像素值以确定所述相应像素的滤波的像素值数据。
19.一种或多种非暂态计算机可读存储介质,所述一种或多种非暂态计算机可读存储介质存储指令,所述指令当在一个或多个处理器上或跨所述一个或多个处理器执行时致使所述一个或多个处理器:
执行根据权利要求18所述的方法。
20.一种系统,所述系统包括解码器,所述解码器被配置为重建经由根据权利要求1所述的编码器压缩的视频。
21.一种重建经由根据权利要求1所述的编码器压缩的视频的方法。
22.一种或多种非暂态计算机可读存储介质,所述一种或多种非暂态计算机可读存储介质存储指令,所述指令当在一个或多个处理器上或跨所述一个或多个处理器执行时致使所述一个或多个处理器重建经由根据权利要求1所述的编码器压缩的视频。
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US201962888398P | 2019-08-16 | 2019-08-16 | |
| US62/888,398 | 2019-08-16 | ||
| PCT/US2020/046533 WO2021034722A1 (en) | 2019-08-16 | 2020-08-14 | Adaptive bilateral filtering using look-up tables |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN114424541A true CN114424541A (zh) | 2022-04-29 |
| CN114424541B CN114424541B (zh) | 2024-05-31 |
Family
ID=72291122
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN202080065722.9A Active CN114424541B (zh) | 2019-08-16 | 2020-08-14 | 压缩视频及重建压缩视频的系统、方法、及存储介质 |
Country Status (4)
| Country | Link |
|---|---|
| US (3) | US11438584B2 (zh) |
| EP (1) | EP4014503A1 (zh) |
| CN (1) | CN114424541B (zh) |
| WO (1) | WO2021034722A1 (zh) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2024212391A1 (en) * | 2023-04-14 | 2024-10-17 | Beijing Xiaomi Mobile Software Co., Ltd. | Encoding/decoding video picture data |
| WO2025011377A1 (en) * | 2023-07-11 | 2025-01-16 | Mediatek Inc. | Method and apparatus of unified classification in in-loop filtering in video coding |
Families Citing this family (17)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2021034722A1 (en) | 2019-08-16 | 2021-02-25 | Apple Inc. | Adaptive bilateral filtering using look-up tables |
| WO2021051044A1 (en) | 2019-09-14 | 2021-03-18 | Bytedance Inc. | Quantization parameter offset for chroma deblocking filtering |
| WO2021072177A1 (en) | 2019-10-09 | 2021-04-15 | Bytedance Inc. | Cross-component adaptive loop filtering in video coding |
| EP4055827A4 (en) | 2019-12-09 | 2023-01-18 | ByteDance Inc. | USE OF QUANTIZATION GROUPS IN VIDEO CODING |
| WO2021136555A1 (en) * | 2020-01-05 | 2021-07-08 | Beijing Bytedance Network Technology Co., Ltd. | Use of offsets with adaptive colour transform coding tool |
| WO2021143896A1 (en) | 2020-01-18 | 2021-07-22 | Beijing Bytedance Network Technology Co., Ltd. | Adaptive colour transform in image/video coding |
| JP2024503972A (ja) * | 2020-12-29 | 2024-01-30 | クアルコム,インコーポレイテッド | ジオメトリに基づく点群圧縮のための道路および地面の物体ラベルを使用したグローバル動き推定 |
| US11949909B2 (en) * | 2020-12-29 | 2024-04-02 | Qualcomm Incorporated | Global motion estimation using road and ground object labels for geometry-based point cloud compression |
| US12327384B2 (en) | 2021-01-04 | 2025-06-10 | Qualcomm Incorporated | Multiple neural network models for filtering during video coding |
| US11818343B2 (en) * | 2021-03-12 | 2023-11-14 | Tencent America LLC | Sample offset with predefined filters |
| CN113068050B (zh) * | 2021-03-17 | 2022-08-23 | 上海哔哩哔哩科技有限公司 | 树形编码块的样点自适应补偿模式确定方法、装置 |
| WO2022211693A1 (en) * | 2021-03-30 | 2022-10-06 | Telefonaktiebolaget Lm Ericsson (Publ) | Combined loop filtering |
| CN117859325A (zh) * | 2021-09-07 | 2024-04-09 | 北京达佳互联信息技术有限公司 | 用于视频编解码的自适应双边滤波 |
| US12262019B2 (en) | 2023-01-13 | 2025-03-25 | Tencent America LLC | Adaptive bands for filter offset selection in cross-component sample offset |
| US12388991B2 (en) | 2023-02-27 | 2025-08-12 | Tencent America LLC | Feature based cross-component sample offset optimization and signaling improvement |
| US12425598B2 (en) | 2023-08-03 | 2025-09-23 | Tencent America LLC | Cross component sample offset filtering with asymmetric quantizer |
| WO2025048350A1 (ko) * | 2023-08-28 | 2025-03-06 | 삼성전자 주식회사 | 영상의 부호화 방법, 부호화 장치, 복호화 방법 및 복호화 장치 |
Citations (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2010017845A1 (en) * | 2008-08-15 | 2010-02-18 | Telefonaktiebolaget L M Ericsson (Publ) | Method and apparatus for estimating the quantisation parameter used in video sequences |
| CN102860005A (zh) * | 2010-02-05 | 2013-01-02 | 瑞典爱立信有限公司 | 去块滤波控制 |
| US20130083844A1 (en) * | 2011-09-30 | 2013-04-04 | In Suk Chong | Coefficient coding for sample adaptive offset and adaptive loop filter |
| CN103141100A (zh) * | 2010-10-01 | 2013-06-05 | 高通股份有限公司 | 用于视频译码的帧内平滑滤波器 |
| CN104303501A (zh) * | 2012-04-03 | 2015-01-21 | 高通股份有限公司 | 用于视频译码的量化矩阵和解块滤波器 |
| CN106031172A (zh) * | 2014-02-25 | 2016-10-12 | 苹果公司 | 用于视频编码和解码的自适应传递函数 |
| CN107211154A (zh) * | 2015-02-11 | 2017-09-26 | 高通股份有限公司 | 译码树单元级自适应环路滤波器 |
| WO2018123800A1 (ja) * | 2016-12-27 | 2018-07-05 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | 符号化装置、復号装置、符号化方法及び復号方法 |
| WO2018134128A1 (en) * | 2017-01-19 | 2018-07-26 | Telefonaktiebolaget Lm Ericsson (Publ) | Filtering of video data using a shared look-up table |
| US20190082176A1 (en) * | 2017-09-11 | 2019-03-14 | Qualcomm Incorporated | Non-local bilateral filter |
| CN109792541A (zh) * | 2016-10-05 | 2019-05-21 | 瑞典爱立信有限公司 | 用于视频译码的去振铃滤波器 |
| EP3525461A1 (en) * | 2018-02-12 | 2019-08-14 | InterDigital VC Holdings, Inc. | Adaptive loop filtering |
Family Cites Families (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US10121231B2 (en) * | 2016-02-01 | 2018-11-06 | Texas Instruments Incorporated | Adaptive bilateral (BL) filtering for computer vision |
| US10694181B2 (en) * | 2017-01-27 | 2020-06-23 | Qualcomm Incorporated | Bilateral filters in video coding with reduced complexity |
| US10887622B2 (en) * | 2017-07-05 | 2021-01-05 | Qualcomm Incorporated | Division-free bilateral filter |
| US10834396B2 (en) * | 2018-04-12 | 2020-11-10 | Qualcomm Incorporated | Bilateral filter for predicted video data |
| TWI813741B (zh) * | 2018-08-21 | 2023-09-01 | 大陸商北京字節跳動網絡技術有限公司 | 雙邊濾波器的不相等加權樣點平均 |
| WO2020055288A2 (en) * | 2018-09-16 | 2020-03-19 | Huawei Technologies Co., Ltd. | Apparatus and method for filtering in video coding with look-up table selected based on bitstream information |
| US11166037B2 (en) * | 2019-02-27 | 2021-11-02 | Mediatek Inc. | Mutual excluding settings for multiple tools |
| WO2021034722A1 (en) | 2019-08-16 | 2021-02-25 | Apple Inc. | Adaptive bilateral filtering using look-up tables |
-
2020
- 2020-08-14 WO PCT/US2020/046533 patent/WO2021034722A1/en not_active Ceased
- 2020-08-14 EP EP20764512.8A patent/EP4014503A1/en active Pending
- 2020-08-14 US US16/994,506 patent/US11438584B2/en active Active
- 2020-08-14 CN CN202080065722.9A patent/CN114424541B/zh active Active
-
2022
- 2022-09-01 US US17/901,715 patent/US12108036B2/en active Active
-
2024
- 2024-09-27 US US18/900,600 patent/US20250024034A1/en active Pending
Patent Citations (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2010017845A1 (en) * | 2008-08-15 | 2010-02-18 | Telefonaktiebolaget L M Ericsson (Publ) | Method and apparatus for estimating the quantisation parameter used in video sequences |
| CN102860005A (zh) * | 2010-02-05 | 2013-01-02 | 瑞典爱立信有限公司 | 去块滤波控制 |
| CN103141100A (zh) * | 2010-10-01 | 2013-06-05 | 高通股份有限公司 | 用于视频译码的帧内平滑滤波器 |
| US20130083844A1 (en) * | 2011-09-30 | 2013-04-04 | In Suk Chong | Coefficient coding for sample adaptive offset and adaptive loop filter |
| CN104303501A (zh) * | 2012-04-03 | 2015-01-21 | 高通股份有限公司 | 用于视频译码的量化矩阵和解块滤波器 |
| CN106031172A (zh) * | 2014-02-25 | 2016-10-12 | 苹果公司 | 用于视频编码和解码的自适应传递函数 |
| CN107211154A (zh) * | 2015-02-11 | 2017-09-26 | 高通股份有限公司 | 译码树单元级自适应环路滤波器 |
| CN109792541A (zh) * | 2016-10-05 | 2019-05-21 | 瑞典爱立信有限公司 | 用于视频译码的去振铃滤波器 |
| WO2018123800A1 (ja) * | 2016-12-27 | 2018-07-05 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | 符号化装置、復号装置、符号化方法及び復号方法 |
| WO2018134128A1 (en) * | 2017-01-19 | 2018-07-26 | Telefonaktiebolaget Lm Ericsson (Publ) | Filtering of video data using a shared look-up table |
| US20190082176A1 (en) * | 2017-09-11 | 2019-03-14 | Qualcomm Incorporated | Non-local bilateral filter |
| EP3525461A1 (en) * | 2018-02-12 | 2019-08-14 | InterDigital VC Holdings, Inc. | Adaptive loop filtering |
Non-Patent Citations (4)
| Title |
|---|
| M. TASLEEM KHAN等: "Analysis and Implementation of Block Least Mean Square Adaptive Filter using Offset Binary Coding", 《2018 IEEE INTERNATIONAL SYMPOSIUM ON CIRCUITS AND SYSTEMS (ISCAS)》 * |
| MATTEO NACCARI等: "Adaptive bilateral filter for improved in-loop filtering in the emerging high efficiency video coding standard", 《2012 PICTURE CODING SYMPOSIUM》 * |
| 刘彩慧: "H.264解码器中反变换反量化及去方块滤波VLSI设计", 《中国优秀硕士学位论文全文数据库》, no. 4 * |
| 周连方等: "基于改进的LUT乘法器的FIR滤波器设计", 《浙江大学学报(理学版)》, no. 6 * |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2024212391A1 (en) * | 2023-04-14 | 2024-10-17 | Beijing Xiaomi Mobile Software Co., Ltd. | Encoding/decoding video picture data |
| WO2025011377A1 (en) * | 2023-07-11 | 2025-01-16 | Mediatek Inc. | Method and apparatus of unified classification in in-loop filtering in video coding |
Also Published As
| Publication number | Publication date |
|---|---|
| US12108036B2 (en) | 2024-10-01 |
| US20250024034A1 (en) | 2025-01-16 |
| US20210051320A1 (en) | 2021-02-18 |
| EP4014503A1 (en) | 2022-06-22 |
| CN114424541B (zh) | 2024-05-31 |
| WO2021034722A1 (en) | 2021-02-25 |
| US11438584B2 (en) | 2022-09-06 |
| US20220417509A1 (en) | 2022-12-29 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN114424541B (zh) | 压缩视频及重建压缩视频的系统、方法、及存储介质 | |
| AU2023201119B2 (en) | Sample adaptive offset control | |
| CN109688406B (zh) | 使用机器学习的图像编码器及图像编码器的数据处理方法 | |
| CN114009018A (zh) | 用于基于交叉分量相关性来减小视频编码中的重构误差的系统和方法 | |
| US20140376619A1 (en) | Sample adaptive offset control | |
| US20200244965A1 (en) | Interpolation filter for an inter prediction apparatus and method for video coding | |
| TW201924332A (zh) | 用於視頻寫碼及處理之導引濾波器 | |
| CN114586347A (zh) | 用于基于交叉分量相关性来减小视频编码中的重构误差的系统和方法 | |
| CN114640845A (zh) | 编解码方法、装置及其设备 | |
| WO2024012576A1 (en) | Adaptive loop filter with virtual boundaries and multiple sample sources | |
| WO2024016982A1 (en) | Adaptive loop filter with adaptive filter strength | |
| WO2024032725A1 (en) | Adaptive loop filter with cascade filtering |
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 | ||
| GR01 | Patent grant | ||
| GR01 | Patent grant |