CN114788279A - 视频编解码中使用的量化组 - Google Patents

视频编解码中使用的量化组 Download PDF

Info

Publication number
CN114788279A
CN114788279A CN202080085422.7A CN202080085422A CN114788279A CN 114788279 A CN114788279 A CN 114788279A CN 202080085422 A CN202080085422 A CN 202080085422A CN 114788279 A CN114788279 A CN 114788279A
Authority
CN
China
Prior art keywords
video
block
chroma
deblocking
offset
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.)
Pending
Application number
CN202080085422.7A
Other languages
English (en)
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.)
ByteDance Inc
Original Assignee
ByteDance Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ByteDance Inc filed Critical ByteDance Inc
Publication of CN114788279A publication Critical patent/CN114788279A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/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/124Quantisation
    • 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/174Methods 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 slice, e.g. a line of blocks or a group of blocks
    • 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/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/186Methods 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • 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/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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

一种视频处理的示例方法,其包括在包括多个分量的视频和视频的比特流表示之间的转换中,对多个分量的视频块应用去方块滤波器。根据规则确定多个分量中的每个分量的去方块滤波器的去方块滤波强度,该规则规定使用不同的方式来确定多个分量中的每个分量的视频块的去方块滤波强度。

Description

视频编解码中使用的量化组
相关申请的交叉引用
根据适用的专利法和/或巴黎公约的规定,本申请及时要求于2019年12月9日提交的国际专利申请No.PCT/CN2019/123951以及于2019年12月31日提交的国际专利申请No.PCT/CN2019/130851的优先权和利益。出于法律上的全部目的,上述申请的全部公开内容通过引用并入,作为本申请公开内容的一部分。
技术领域
本专利文档涉及视频编解码技术、设备和系统。
背景技术
目前,正在努力提高当前视频编解码器技术的性能,以提供更好的压缩比或提供允许较低复杂度或并行化实现的视频编解码和解码方案。行业专家最近提出了几种新的视频编码工具,目前正在进行测试以确定其有效性。
发明内容
描述了与数字视频编码相关的设备、系统和方法,特别是,与运动矢量的管理相关的设备、系统和方法。所描述的方法可以应用于现有的视频编解码标准(例如,高效视频编解码(High Efficiency Video Coding,HEVC)和/或通用视频编解码(Versatile VideoCoding,VVC)和未来的视频编解码标准或视频编解码器。
在一个代表性方面中,所公开的技术可用于提供一种视频处理的方法。该方法包括,在包括多个分量的视频和视频的比特流表示之间的转换中,对多个分量的视频块应用去方块滤波器。根据规则确定多个分量中的每个分量的去方块滤波器的去方块滤波强度,该规则规定使用不同的方式来确定多个分量中的每个分量的视频块的去方块滤波强度。
在另一个代表性方面中,所公开的技术可用于提供一种视频处理的方法。该方法包括,执行视频的第一视频单元和视频的比特流表示之间的转换。在所述转换期间,对所述第一视频单元应用去方块滤波处理。基于在其他视频单元级别中累积一个或多个去方块控制偏移值,确定所述第一视频单元的去方块控制偏移。
在另一个代表性方面中,所公开的技术可用于提供一种视频处理的方法。该方法包括,对于视频的块和所述视频的比特流表示之间的转换,基于对所述块进行编解码的变换跳过(transform skip,TS)模式或自适应颜色变换(adaptive color transform,ACT)模式的使用,确定去方块处理中使用的量化参数。该方法还包括基于所述确定执行所述转换。
在另一个代表性方面中,所公开的技术可用于提供一种视频处理的方法。该方法包括,执行视频的颜色分量块和视频的比特流表示之间的转换。所述比特流表示符合规则,所述规则规定所述色度分量的量化组的尺寸大于阈值K。所述量化组包括一个或多个携带量化参数的编解码单元。
在一个代表性方面中,所公开的技术可用于提供一种视频处理的方法。该方法包括,执行视频单元和视频单元的比特流表示之间的转换,其中,在转换期间,在视频单元的边界上使用去方块滤波器,使得当使用色度量化参数(quantization parameter,QP)表推导去方块滤波器的参数时,色度QP表对各个色度QP值进行处理。
在另一个代表性方面中,所公开的技术可用于提供一种视频处理的方法。该方法包括,执行视频单元和视频单元的比特流表示之间的转换,其中,在转换期间,在视频单元的边界上使用去方块滤波器,使得在去方块滤波器中使用色度QP偏移,其中,色度QP偏移处于图片/条带/片/图块/子图片级别。
在另一个代表性方面中,所公开的技术可用于提供一种视频处理的方法。该方法包括,执行视频单元和视频单元的比特流表示之间的转换,其中,在转换期间,在视频单元的边界上使用去方块滤波器,使得在去方块滤波器中使用色度QP偏移,其中,在去方块滤波器中使用与相同亮度编解码单元有关的信息并用于推导色度QP偏移。
在另一个代表性方面中,所公开的技术可用于提供一种视频处理的方法。该方法包括,执行视频单元和视频单元的比特流表示之间的转换,其中,在转换期间,在视频单元的边界上使用去方块滤波器,使得在去方块滤波器中使用色度QP偏移,其中,在比特流表示中信令通知启用使用色度QP偏移的指示。
在另一个代表性方面中,所公开的技术可用于提供一种视频处理的方法。该方法包括,执行视频单元和视频单元的比特流表示之间的转换,其中,在转换期间,在视频单元的边界上使用去方块滤波器,使得在去方块滤波器中使用色度QP偏移,其中,无论是在视频单元的边界上应用JCCR编解码方法还是在视频单元的边界上应用与JCCR编解码方法不同的方法,去方块滤波器中使用的色度QP偏移都是相同的。
在另一个代表性方面中,所公开的技术可用于提供一种视频处理的方法。该方法包括,执行视频单元和视频单元的比特流表示之间的转换,其中,在转换期间,在视频单元的边界上使用去方块滤波器,使得在去方块滤波器中使用色度QP偏移,其中,在不比较参考图片和/或与具有在Q侧边界处的视频单元的参考图片的在P侧边界处的视频单元相关联的运动矢量(motion vector,MV)的数量的情况下,计算去方块滤波器的边界强度(boundarystrength,BS)。
在另一个代表性方面中,所公开的技术可用于提供一种视频处理的方法。该方法包括,对于视频分量的视频单元和视频的编解码表示之间的转换,基于指定量化组尺寸必须大于K的约束规则确定视频单元的量化组尺寸,其中,K为正数,以及基于该确定执行转换。
进一步地,在一个代表性方面,公开了一种视频系统中的装置,包括处理器和其上具有指令的非暂态存储器。指令在被处理器执行后,使处理器实施任何一种或多种所公开的方法。
此外,在一个代表性方面,一种视频解码装置,包括被配置为实施所公开的方法中的任何一个或多个的处理器。
在另一个代表性方面,一种视频编码装置,包括被配置为实施所公开的方法中的任何一个或多个的处理器。
此外,还公开了一种存储在非暂时性计算机可读介质上的计算机程序产品,该计算机程序产品包括用于执行所公开的方法中的任何一个或多个的程序代码。
附图、说明书和权利要求中更详细描述了本公开技术的以上和其他方面和特征。
附图说明
图1示出了分块去方块滤波处理的整体处理流程的示例。
图2示出了Bs计算的流程图的示例。
图3示出了在CTU边界处Bs计算的参考信息的示例。
图4示出了涉及滤波器开/关决策和强/弱滤波器选择的像素的示例。
图5示出了VVC中去方块滤波处理的整体处理流程的示例。
图6示出了VVC中的亮度去方块滤波处理的示例。
图7示出了VVC中的色度去方块滤波处理的示例
图8示出了子PU边界的滤波器长度确定的示例。
图9A示出了色度块的中心位置的示例。
图9B示出了色度块的中心位置的另一示例。
图10示出了P侧和Q侧的块的示例。
图11示出了亮度块的解码信息的使用示例。
图12是实施本文档中描述的视觉媒体解码或视觉媒体编码技术的硬件平台的示例的框图。
图13示出了视频编解码的示例方法的流程图。
图14A示出了CC-ALF相对于其他环路滤波器(b)菱形滤波器的放置示例。
图14B示出了CC-ALF相对于菱形滤波器的放置示例。
图15示出了自适应颜色变换(ACT)过程的示例流程图。
图16示出了高级去方块控制机制的示例流程图。
图17示出了高级去方块控制机制的示例流程图。
图18是说明实例视频编解码系统的框图。
图19是说明根据本公开的一些实施例的编码器的框图。
图20是说明根据本公开的一些实施例的解码器的框图。
图21是其中可以实施所公开的技术的示例视频处理系统的框图。
图22是根据本技术的用于视频处理的方法的流程图表示。
图23是根据本技术的用于视频处理的另一种方法的流程图表示。
图24是根据本技术的用于视频处理的另一种方法的流程图表示。
图25是根据本技术的用于视频处理的又一方法的流程图表示。
具体实施方式
1 HEVC/H.265中的视频编解码
视频编解码标准主要是通过众所周知的ITU-T和ISO/IEC标准发展而来的。ITU-T制定了H.261和H.263,ISO/IEC制定了MPEG-1和MPEG-4视觉,这两个组织联合制定了H.262/MPEG-2视频标准、H.264/MPEG-4高级视频编解码(AVC)标准和H.265/HEVC标准。从H.262开始,视频编解码标准是基于混合视频编解码结构,其中使用了时间预测加变换编解码。为了探索HEVC之外的未来视频编解码技术,VCEG和MPEG于2015年联合成立了联合视频探索团队(JVET)。此后,JVET采用了许多新方法,并将其放入名为联合探索模型(JEM)的参考软件中。2018年4月,VCEG(Q6/16)和ISO/IEC JTC1 SC29/WG11(MPEG)成立了联合视频专家团队(JVET),致力于VVC标准的研究,目标是比HEVC降低50%的比特率。
2.1 HEVC中的去方块方案
以与解码处理相同的顺序对每个CU执行去方块滤波处理。首先,滤波垂直边缘(水平滤波),然后滤波水平边缘(垂直滤波)。滤波应用于确定要滤波的8×8块边界,对于亮度和色度分量两者。不处理4×4块边界以降低复杂性。
图1说明了去方块滤波处理的整体处理流程。图1说明了去方块滤波处理的整体处理流程。边界可以有三种滤波状态:无滤波、弱滤波和强滤波。每个滤波决策都基于边界强度Bs和阈值β和tC
滤波过程中可能涉及三种边界:CU边界、TU边界和PU边界。CU边界,即CU的外边缘,总是参与滤波,因为CU边界也总是TU边界或PU边界。当PU形状为2NxN(N>4)且RQT深度等于1时,8×8块网格处的TU边界和CU内部每个PU之间的PU边界都参与滤波。一个例外是当PU边界在TU内时,边界不会被滤波。
2.1.1边界强度计算
一般来说,边界强度(Bs)反映了边界需要多强的滤波。如果Bs很大,则应考虑强滤波。
将P和Q定义为参与滤波的块,其中,P表示位于边界左侧(垂直边缘情况)或上方(水平边缘情况)侧的块,Q表示位于边界右侧(垂直边缘情况)或上方(水平边缘情况)侧的块。图2说明了如何基于帧内编解码模式、非零变换系数和运动信息的存在、参考图片、运动矢量的数量和运动矢量差来计算Bs值。
在4×4块的基础上计算Bs,但将Bs重新映射到8×8网格。选择对应于由4×4网格中的一条线组成的8个像素的Bs的两个值中的最大值作为8×8网格中边界的Bs。
为了减少行缓冲内存需求,仅对于CTU边界,重新使用左侧或上方每隔一个块(4×4网格)中的信息,如图3所示。
2.1.2 β和tC决策
分别根据P块和Q块的亮度量化参数QPP和QPQ推导出涉及滤波器开/关决策、强弱滤波器选择和弱滤波过程的阈值β和tC
Q用于推导β和tC,其计算如下。
Q=((QPP+QPQ+1)>>1)。
如表1所示,基于Q推导变量β。如果Bs大于1,则将变量tC指定为表1,其中,Clip3(0,55,Q+2)作为输入。否则(BS等于或小于1),将变量tC指定为表1,其中,Q作为输入。
表1由输入Q推导阈值变量β和tC
Q 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
β 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 7 8
t<sub>C</sub> 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
Q 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
β 9 10 11 12 13 14 15 16 17 18 20 22 24 26 28 30 32 34 36
t<sub>C</sub> 1 1 1 1 1 1 1 1 2 2 2 2 3 3 3 3 4 4 4
Q 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55
β 38 40 42 44 46 48 50 52 54 56 58 60 62 64 64 64 64 64
t<sub>C</sub> 5 5 6 6 7 8 9 9 10 10 11 11 12 12 13 13 14 14
2.1.3对于4行的滤波器开/关决策
滤波器开/关决策以4行为一个单元进行。图4说明了涉及滤波器开/关决策的像素。前4行的两个红色框中的6个像素用于确定4行的滤波器开/关。后4行的两个红色框中的6个像素用于确定后4行的滤波器开/关。
如果dp0+dq0+dp3+dq3<β,则打开前4行的滤波并应用强/弱滤波器选择处理。每个变量的推导如下。
dp0=|p2,0–2*p1,0+p0,0|,dp3=|p2,3–2*p1,3+p0,3|,dp4=|p2,4–2*p1,4+p0,4|,dp7=|p2,7–2*p1,7+p0,7|
dq0=|q2,0–2*q1,0+q0,0|,dq3=|q2,3–2*q1,3+q0,3|,dq4=|q2,4–2*q1,4+q0,4|,dq7=|q2,7–2*q1,7+q0,7|
如果不满足条件,则对前4行不进行滤波。此外,如果满足条件,则推导出dE、dEp1和dEp2用于弱滤波处理。变量dE设置为1。如果dp0+dp3<(β+(β>>1))>>3,则变量dEp1设置为1。如果dq0+dq3<(β+(β>>1))>>3,变量dEq1设置为等于1。
对于后4行,采用与上述相同的方式做出决策。
2.1.4对于4行的强/弱滤波器选择
在滤波器开/关决策中前4行被确定为滤波器打开后,如果满足以下两个条件,则使用强滤波器对前4行进行滤波。否则,使用弱滤波器进行滤波。涉及的像素与用于滤波器开/关决策的像素相同,如图4所示。
1)2*(dp0+dq0)<(β>>2),|p30–p00|+|q00–q30|<(β>>3)and|p00–q00|<(5*tC+1)>>1
2)2*(dp3+dq3)<(β>>2),|p33–p03|+|q03–q33|<(β>>3)and|p03–q03|<(5*tC+1)>>1
同样,如果满足以下两个条件,则使用强滤波器对后4行进行滤波。否则,使用弱滤波器进行滤波。
1)2*(dp4+dq4)<(β>>2),|p34–p04|+|q04–q34|<(β>>3)and|p04–q04|<(5*tC+1)>>1
2)2*(dp7+dq7)<(β>>2),|p37–p07|+|q07–q37|<(β>>3)and|p07–q07|<(5*tC+1)>>1
2.1.4.1强滤波
对于强滤波,滤波后的像素值通过以下等式获得。值得注意的是,分别使用四个像素作为每个P和Q块的输入来修改三个像素。
p0’=(p2+2*p1+2*p0+2*q0+q1+4)>>3
q0’=(p1+2*p0+2*q0+2*q1+q2+4)>>3
p1’=(p2+p1+p0+q0+2)>>2
q1’=(p0+q0+q1+q2+2)>>2
p2’=(2*p3+3*p2+p1+p0+q0+4)>>3
q2’=(p0+q0+q1+3*q2+2*q3+4)>>3
2.1.4.2弱滤波
将Δ定义如下。
Δ=(9*(q0–p0)–3*(q1–p1)+8)>>4
当abs(Δ)小于tC*10时,
Δ=Clip3(-tC,tC,Δ)
p0’=Clip1Y(p0+Δ)
q0’=Clip1Y(q0-Δ)
如果dEp1等于1,
Δp=Clip3(-(tC>>1),tC>>1,(((p2+p0+1)>>1)–p1+Δ)>>1)
p1’=Clip1Y(p1+Δp)
如果dEq1等于1,
Δq=Clip3(-(tC>>1),tC>>1,(((q2+q0+1)>>1)–q1–Δ)>>1)
q1’=Clip1Y(q1+Δq)
值得注意的是,分别使用三个像素作为每个P和Q块的输入来修改最大两个像素。
2.1.4.3色度滤波
色度滤波的Bs继承于亮度。如果Bs>1或如果编解码色度系数存在的情况,则执行色度滤波。没有其他滤波决策。并且仅对色度应用了一个滤波器。不使用色度滤波器选择过程。滤波后的样点值p0’和q0’的推导如下。
Δ=Clip3(-tC,tC,((((q0–p0)<<2)+p1–q1+4)>>3))
p0’=Clip1C(p0+Δ)
q0’=Clip1C(q0-Δ)
2.2 VVC中的去方块方案
在VTM6中,去方块滤波处理与HEVC中的大部分相同。但是,增加了如下修改。
A)去方块滤波器的滤波器强度取决于重构样点的平均亮度水平。
B)去方块tC表的扩展和对10位视频的适配。
C)亮度的4×4网格去方块。
D)更强的亮度去方块滤波器。
E)更强的色度去方块滤波器。
F)子块边界的去方块滤波器。
G)去方块决策适应于较小的运动差。
图5描绘了在VVC中针对编解码单元的去方块滤波处理的流程图。
2.2.1边界强度计算
在HEVC中,去方块滤波器的滤波强度由变量β和tC控制,变量β和tC由平均量化参数qPL推导得出。在VTM6中,如果该方法的SPS标志为真,则去方块滤波器通过根据重构样点的亮度级别向qPL添加偏移量来控制去方块滤波器的强度。重构的亮度级别LL推导如下:
LL=((p0,0+p0,3+q0,0+q0,3)>>2)/(1<<bitDepth) (3-1)
其中,可以推导出样点值pi,k和qi,k,其中,i=0...3以及k=0和3。然后,LL用于根据SPS中发出的阈值来决定偏移量qpOffset。之后,使用如下推导出的qPL推导出β和tC
qPL=((QpQ+QpP+1)>>1)+qpOffset (3-2)
其中,QpQ和QpP分别表示包含样点q0,0和p0,0的编解码单元的量化参数。在目前的VVC中,这种方法只应用于亮度去方块处理。
2.2.2亮度的4×4去方块网格
HEVC对亮度和色度使用8×8去方块网格。在VTM6中,引入了4×4网格上的亮度边界去方块处理,以处理来自矩形变换形状的块状伪影。通过将要去方块的样点数限制为在垂直亮度边界的每一侧上的1个样点或水平亮度边界的每一侧上的1个样点,实现4×4网格上的并行友好亮度去方块,其中,垂直亮度边界一侧的宽度为4或更小,水平亮度边界一侧的高度为4或更小。
2.2.3亮度的边界强度推导
详细的边界强度推导见表2。按顺序检查表2中的条件。
表2边界强度推导
Figure BDA0003685396460000091
Figure BDA0003685396460000101
Figure BDA0003685396460000111
2.2.4亮度的4×4去方块网格
当边界任一侧的样点属于一个较大块时,该提议使用双线性滤波器。属于较大块的样点定义为垂直边缘的宽度>=32,水平边缘的高度>=32。
以下列出了双线性滤波器。
i=0到Sp-1的块边界样点pi和j=0到Sq-1的qi(pi和qi遵循上述HEVC去方块中的定义)然后由线性插值替换,如下所示:
—pi′=(fi*Middles,t+(64-fi)*Ps+32)>>6),clipped to pi±tcPDi
—qj′=(gj*Middles,t+(64-gj)*Qs+32)>>6),clipped to qj±tcPDj
其中tcPDi和tcPDj项是第2.2.5节中描述的位置相关裁剪,下面给出gj、fi、Middles,t、Ps和Qs
Figure BDA0003685396460000112
Figure BDA0003685396460000121
2.2.5亮度的去方块控制
本小节描述了去方块化决策过程。
更宽更强的亮度滤波器是仅当条件1、条件2和条件3都为真时才使用滤波器。
条件1是“较大块条件”。该条件检测P侧和Q侧的样点是否属于较大块,分别由变量bSidePisLargeBlk和bSideQisLargeBlk表示。bSidePisLargeBlk和bSideQisLargeBlk定义如下。
bSidePisLargeBlk=((边缘类型为垂直并且p0属于CU,其中,宽度>=32)||(边缘类型为水平并且p0属于CU,其中,高度>=32))?真:假
bSideQisLargeBlk=((边缘类型为垂直并且q0属于CU,其中,宽度>=32)||(边缘类型为水平并且q0属于CU,其中,高度>=32))?真:假
基于bSidePisLargeBlk和bSideQisLargeBlk,条件1定义如下。
条件1=(bSidePisLargeBlk||bSidePisLargeBlk)?真:假
接下来,如果条件1为真,则进一步检查条件2。首先,推导以下变量:首先在HEVC中推导dp0,dp3,dq0,dq3。
if(p侧大于或等于32)
dp0=(dp0+Abs(p5,0-2*p4,0+p3,0)+1)>>1
dp3=(dp3+Abs(p5,3-2*p4,3+p3,3)+1)>>1
if(q侧大于或等于32)
dq0=(dq0+Abs(q5,0-2*q4,0+q3,0)+1)>>1
dq3=(dq3+Abs(q5,3-2*q4,3+q3,3)+1)>>1
然后在HEVC中推导dpq0,dpq3,dp,dq,d。
然后条件2定义如下。
条件2=(d<β)?真:假
其中,d=dp0+dq0+dp3+dq3,如2.1.4节所示。
如果条件1和条件2有效,则检查是否有任何块使用子块:
Figure BDA0003685396460000131
最后,如果条件1和条件2都有效,则所提出的去方块方法将检查条件3(较大块强滤波条件),其定义如下。
在条件3的StrongFilterCondition中,推导以下变量:
在HEVC中推导dpq。
sp3=Abs(p3-p0),如在HEVC中的推导
Figure BDA0003685396460000141
sq3=Abs(q0-q3),如在HEVC中的推导
Figure BDA0003685396460000142
如在HEVC中的推导,StrongFilterCondition=(dpq小于(β>>2),sp3+sq3小于(3*β>>5),并且Abs(p0-q0)小于(5*tC+1)>>1)?真:假
图6描绘了亮度去方块滤波处理的流程图。
2.2.6强色度去方块滤波器
定义了以下用于色度的强去方块滤波器:
p2′=(3*p3+2*p2+p1+p0+q0+4)>>3
p1′=(2*p3+p2+2*p1+p0+q0+q1+4)>>3
p0′=(p3+p2+p1+2*p0+q0+q1+q2+4)>>3
所提出的色度滤波器在4×4色度样点网格上执行去方块。
2.2.7色度去方块控制
上述色度滤波器在8×8色度样点网格上执行去方块。色度强滤波器用于块边界的两侧。这里,当色度边缘两侧都大于等于8(以色度样点为单位)时,选择色度滤波器,并且满足以下三个条件的决策。第一个是边界强度以及较大块的决策。第二个和第三个与HEVC亮度决策基本相同,分别是开/关决策和强滤波器决策。
图7描绘了色度去方块滤波处理的流程图。
2.2.8位置相关裁剪
该提议还引入了一个位置相关裁剪tcPD,其应用于亮度滤波过程的输出样点,涉及在边界处修改7、5和3个样点的强滤波器和长滤波器。假设量化误差分布,提议对预期具有较高量化噪声的样点增加裁剪值,从而预期重构样点值与真实样点值的偏差更大。
对于使用提议的非对称滤波器滤波的每个P或Q边界,根据第2.2节中描述的决策处理的结果,从作为边信息提供给解码器的Tc7和Tc3表中选择位置相关阈值表:
Tc7={6,5,4,3,2,1,1};
Tc3={6,4,2};
tcPD=(SP==3)?Tc3:Tc7;
tcQD=(SQ==3)?Tc3:Tc7;
对于使用短对称滤波器滤波的P或Q边界,应用较低幅度的位置相关阈值:
Tc3={3,2,1};
定义阈值后,滤波后的p’i和q’i样点值根据tcP和tcQ裁剪值进行裁剪:
p”i=clip3(p’i+tcPi,p’i–tcPi,p’i);
q”j=clip3(q’j+tcQj,q’j–tcQj,q’j);
其中p’i和q’i是滤波后的样点值,p”i和q”j是裁剪后的输出样点值,tcPi tcPi是从VVC tc参数和tcPD和tcQD推导出的裁剪阈值。术语clip3是VVC中指定的裁剪函数。
2.2.9子块去方块调整
为了同时使用长滤波器和子块去方块来启用并行友好去方块,长滤波器被限制为在使用子块去方块(AFFINE或ATMVP)的一侧最多修改5个样点,如在长滤波器的亮度控制中所示。
此外,调整子块去方块以使靠近CU或隐式(implicit)TU边界的8×8网格上的子块边界被限制为在每侧最多修改两个样点。
以下适用于不与CU边界对齐的子块边界。
Figure BDA0003685396460000151
Figure BDA0003685396460000161
其中,边缘等于0对应于CU边界,边缘等于2或等于正交Length-2对应于来自CU边界的子块边界8个样点,等等。如果使用TU的隐式划分,则隐式TU为真。图8示出了TU边界和子PU边界的确定过程的流程图。
当水平边界与CTU边界对齐时,水平边界的滤波限制了亮度的Sp=3、色度的Sp=1和Sq=1。
2.2.10适应于较小运动差的去方块决策
当边界的各个侧上的块之间的至少一个运动矢量分量的差等于或大于1个样点的阈值时,HEVC能够对预测单元边界进行去方块。在VTM6中,引入了半亮度样点的阈值从而还能够去除源自运动矢量差异很小的帧间预测单元之间的边界的块状伪影。
2.3组合的帧间和帧内预测(Combined inter and intra prediction,CIIP)
在VTM6中,当一个CU以merge模式编解码时,如果CU包含至少64个亮度样点(即CU宽度乘以CU高度等于或大于64),如果CU宽度和CU高度都小于128亮度样点,信令通知附加标志以指示组合的帧间/帧内预测(CIIP)模式是否应用于当前CU。顾名思义,CIIP预测将帧间预测信令与帧内预测信令相结合。使用应用于常规merge模式的相同帧间预测过程推导CIIP模式下的帧间预测信令Pinter;按照平面模式的常规帧内预测过程推导帧内预测信令Pintra。然后,使用加权平均来组合帧内和帧间预测信令,其中,权重值根据顶部和左侧相邻块的编解码模式计算如下:
-如果顶部相邻值可用且为帧内编解码,则将isIntraTop设置为1,否则将isIntraTop设置为0;
-如果左侧相邻值可用且为帧内编解码,则将isIntraLeft设置为1,否则将isIntraLeft设置为0;
-如果(isIntraLeft+isIntraLeft)等于2,则将wt设置为3;
-否则,如果(isIntraLeft+isIntraLeft)等于1,则将wt设置为2;
-否则,将wt设置为1。
CIIP预测形成如下:
PCIIP=((4-wt)*Pinter+wt*Pintra+2)>>2
2.4 VTM-6.0中的色度QP表设计
在一些实施例中,使用色度QP表。在一些实施例中,信令机制用于色度QP表,其使得能够灵活地为编码器提供优化SDR和HDR内容的表的机会。其支持分别为Cb和Cr分量发信令通知表。所提出的机制信令通知作为分段线性函数的色度QP表。
2.5变换跳过(TS)
与HEVC相同,可以使用变换跳过模式对块的残差进行编解码。为了避免语法编解码的冗余,当CU级别MTS_CU_flag不等于0时,不发送变换跳过标志。变换跳过的块尺寸限制与JEM4中的MTS相同,这表明变换跳过适用于块宽度和高度都等于或小于32的CU。请注意,当为当前CU激活LFNST或MIP时,隐式MTS变换设置为DCT2。此外,当为帧间编解码块启用MTS时,仍然可以启用隐式MTS。
此外,对于变换跳过块,最小允许量化参数(QP)定义为6*(internalBitDepth–inputBitDepth)+4。
2.6色度残差的联合编解码(Joint coding of chroma residuals,JCCR)
在一些实施例中,色度残差被联合编解码。联合色度编解码模式的使用(激活)由TU级标志tu_joint_cbcr_residual_flag指示,且所选模式由色度CBF隐式指示。如果TU的一个或两个色度CBF等于1,则存在标志tu_joint_cbcr_residual_flag。在PPS和条带标头中,针对联合色度残差编解码模式信令通知色度QP偏移值,以区别于针对常规色度残差编解码模式信令通知的通常色度QP偏移值。这些色度QP偏移值用于推导使用联合色度残差编解码模式编解码的那些块的色度QP值。当相应的联合色度编解码模式(表3中的模式2)在TU中处于有效状态时,该色度QP偏移会在该TU的量化和解码期间添加到应用的亮度推导的色度QP。对于其他模式(表3中的模式1和3,表3:色度残差的重构。值CSign是符号值(+1或–1),在条带标头中指定,resJointC[][]是传输的残差),色度QP的推导方式与传统Cb或Cr块相同。来自传输的变换块的色度残差(resCb和resCr)的重构过程如表3所示。当此模式有效时,一个单一的联合色度残差块(表3中的resJointC[x][y])被信令通知,Cb的残差块(resCb)和Cr的残差块(resCr)是考虑到诸如tu_cbf_cb、tu_cbf_cr和CSign等信息而推导的,CSign是在条带标头中指定的符号值。
在编码器端,联合色度分量的推导如下所述。根据模式(在上表中列出),resJointC由编码器生成,如下所示:
●如果模式等于2(具有重构Cb=C,Cr=CSign*C的单个残差),联合残差根据以下公式确定
resJointC[x][y]=(resCb[x][y]+CSign*resCr[x][y])/2。
●否则,如果模式等于1(具有重构Cb=C,Cr=(CSign*C)/2的单个残差),则联合残差根据以下公式确定
resJointC[x][y]=(4*resCb[x][y]+2*CSign*resCr[x][y])/5。
●否则(模式等于3,即单个残差,重构Cr=C,Cb=(CSign*C)/2),联合残差根据以下公式确定
resJointC[x][y]=(4*resCr[x][y]+2*CSign*resCb[x][y])/5。
表3:色度残差的重构。值CSign是符号值(+1或–1),在条带标头中指定,resJointC[][]是传输的残差。
Figure BDA0003685396460000181
上述三种模式使用不同的QP。对于模式2,应用JCCR编解码块在PPS中信令通知的QP偏移,而对于其他两种模式,上述不被应用,而是应用非JCCR编解码块在PPS中信令通知的QP偏移。
对应条款如下:
8.7.1量化参数的推导过程
变量QpY的推导如下:
QpY=((qPY_PRED+CuQpDeltaVal+64+2*QpBdOffsetY)%(64+QpBdOffsetY))-QpBdOffsetY (8-933)
亮度量化参数Qp′Y推导如下:
Qp′Y=QpY+QpBdOffsetY (8-934)
当ChromaArrayType不等于0且treeType等于SINGLE_TREE或DUAL_TREE_CHROMA时,以下情况适用:
–当treeType等于DUAL_TREE_CHROMA时,变量QpY设置为等于覆盖亮度位置(xCb+cbWidth/2,yCb+cbHeight/2)的亮度编解码单元的亮度量化参数QpY
–变量qPCb、qPCr和qPCbCr的推导如下:
qPiChroma=Clip3(-QpBdOffsetC,63,QpY) (8-935)
qPiCb=ChromaQpTable[0][qPiChroma] (8-936)
qPiCr=ChromaQpTable[1][qPiChroma] (8-937)
qPiCbCr=ChromaQpTable[2][qPiChroma] (8-938)
–Cb和Cr分量、Qp′Cb和Qp′Cr以及联合Cb-Cr编解码Qp′CbCr的色度量化参数推导如下:
Qp′Cb=Clip3(-QpBdOffsetC,63,qPCb+pps_cb_qp_offset+slice_cb_qp_offset+CuQpOffsetCb)+QpBdOffsetC (8-939)
Qp′Cr=Clip3(-QpBdOffsetC,63,qPCr+pps_cr_qp_offset+slice_cr_qp_offset+CuQpOffsetCr)+QpBdOffsetC (8-940)
Qp′CbCr=Clip3(-QpBdOffsetC,63,qPCbCr+pps_cbcr_qp_offset+slice_cbcr_qp_offset+CuQpOffsetCbCr)+QpBdOffsetC (8-941)
8.7.3变换系数的缩放过程
该过程的输入为:
–亮度位置(xTbY,yTbY),指定当前亮度变换块的左上角样点相对于当前图片的左上角亮度样点,
–变量nTbW,指定变换块宽度,
–变量nTbH,指定变换块高度,
–变量cIdx,指定当前块的颜色分量,
–变量bitDepth,指定当前颜色分量的位深度。
该过程的输出是具有元素d[x][y]的缩放变换系数的(nTbW)×(nTbH)数组d。
量化参数qP推导如下:
–如果cIdx等于0且transform_skip_flag[xTbY][yTbY]等于0,则以下适用:qP=Qp′Y (8-950)
–否则,如果cIdx等于0(且transform_skip_flag[xTbY][yTbY]等于1),则以下适用:
qP=Max(QpPrimeTsMin,Qp′Y) (8-951)
–否则,如果TuCResMode[xTbY][yTbY]等于2,则以下适用:
qP=Qp′CbCr (8-952)
–否则,如果cIdx等于1,则以下适用:
qP=Qp′Cb (8-953)
–否则(cIdx等于2),以下适用:
qP=Qp′Cr (8-954)
2.7.跨分量自适应环路滤波器(Cross-Component Adaptive Loop Filter,CC-ALF)
图14A说明了CC-ALF相对于其他环路滤波器的放置。CC-ALF通过对每个色度分量的亮度通道应用线性菱形滤波器(图14B)进行操作,表示为
其中,
Figure BDA0003685396460000201
(x,y)为色度分量的细化位置
(xC,yC)为基于(x,y)的亮度分量
Si为在亮度中支持的色度分量i的滤波器
ci(x0,y0)表示滤波器系数
CC-ALF流程的主要特点包括:
-基于亮度和色度平面之间的空域缩放因子计算亮度位置,支撑区域围绕该亮度位置居中。
-所有滤波器系数都在APS中传输并具有8位动态范围。
-APS可能在条带报头中被引用。
-用于条带的每个色度分量的CC-ALF系数也存储在对应于时域子层的缓冲区中。使用条带级别标志来促进这些时域子层滤波器系数集的重复使用。
-CC-ALF滤波器的应用受可变块尺寸的控制,并由为每个样点块接收的上下文编解码标志信令通知。在每个色度分量的条带级别接收块尺寸以及CC-ALF启用标志。
-水平虚拟边界的边界填充利用重复(repetition)。对于其余边界,使用与常规ALF相同类型的填充。
2.8量化参数的推导过程
基于临近QP和解码的delta QP推导QP。与QP推导相关的示例文本如下所示。
该过程的输入为:
–亮度位置(xCb,yCb),指定当前编解码块的左上角亮度样点相对于当前图片的左上角亮度样点,
–变量cbWidth,指定亮度样点中当前编解码块的宽度,
–变量cbHeight,指定亮度样点中当前编解码块的高度,
–变量treeType,指定是使用单树(SINGLE_TREE)还是双树来分割编解码树节点,以及,当使用双树时,当前处理的是亮度(DUAL_TREE_LUMA)还是色度(DUAL_TREE_CHROMA)分量。
在此过程中,推导出亮度量化参数Qp′Y和色度量化参数Qp'Cb、Qp'Cr和Qp'CbCr。
亮度位置(xQg,yQg)指定当前量化组的左上亮度样点相对于当前图片的左上亮度样点。水平和垂直位置xQg和yQg分别设置为等于CuQgTopLeftX和CuQgTopLeftY。
注–:当前量化组是共享相同qPY_PRED的编解码树块内的矩形区域。其宽度和高度等于编解码树节点的宽度和高度,其左上亮度样点位置被分配给变量CuQgTopLeftX和CuQgTopLeftY。
当treeType等于SINGLE_TREE或DUAL_TREE_LUMA时,预测的亮度量化参数qPY_PRED由以下有序步骤推导:
1、变量qPY_PREV推导如下:
–如果以下一个或多个条件为真,则将qPY_PREV设置为等于SliceQpY:
–当前量化组是条带中的第一个量化组。
–当前量化组是片中的第一个量化组。
–当前量化组是片的CTB行中的第一个量化组,并且entropy_coding_sync_enabled_flag等于1。
–否则,qPY_PREV设置为等于解码顺序中前一个量化组中最后一个亮度编解码单元的亮度量化参数QpY。
2、调用条款6.4.4中指定的临近块可用性的推导过程,将设置为(xCb,yCb)的位置(xCurr,yCurr)、设置为(xQg-1,yQg)的临近位置(xNbY,yNbY)、设置为FALSE的checkPredModeY,以及设置为等于0的cIdx作为输入,将输出分配给availableA。变量qPY_A的推导如下:
–如果以下一个或多个条件为真,则将qPY_A设置为等于qPY_PREV:
–availableA等于FALSE。
–包含覆盖亮度位置(xQg-1,yQg)的亮度编解码块的CTB不等于包含(xCb,yCb)处的当前亮度编解码块的CTB,即以下所有条件都为真:
–(xQg-1)>>CtbLog2SizeY不等于(xCb)>>CtbLog2SizeY
–(yQg)>>CtbLog2SizeY不等于(yCb)>>CtbLog2SizeY
–否则,将qPY_A设置为等于编解码单元的亮度量化参数QpY,该编解码单元包含覆盖(xQg-1,yQg)的亮度编解码块。
3、调用条款6.4.4中指定的临近块可用性的推导过程,将设置为(xCb,yCb)的位置(xCurr,yCurr)、设置为(xQg,yQg-1)的临近位置(xNbY,yNbY)、设置为FALSE的checkPredModeY、以及设置为等于0的cIdx作为输入,并且将输出分配给availableB。变量qPY_B的推导如下:
–如果以下一个或多个条件为真,则将qPY_B设置为等于qPY_PREV:
–availableB等于FALSE。
–包含覆盖亮度位置(xQg,yQg-1)的亮度编解码块的CTB不等于包含(xCb,yCb)处的当前亮度编解码块的CTB,即以下所有条件都为真:
–(xQg)>>CtbLog2SizeY不等于(xCb)>>CtbLog2SizeY
–(yQg-1)>>CtbLog2SizeY不等于(yCb)>>CtbLog2SizeY
–否则,将qPY_B设置为等于编解码单元的亮度量化参数QpY,该编解码单元包含覆盖(xQg,yQg-1)的亮度编解码块。
4、预测的亮度量化参数qPY_PRED推导如下:
–如果以下所有条件都为真,则将qPY_PRED设置为等于编解码单元的亮度量化参数QpY,该编解码单元包含覆盖(xQg,yQg-1)的亮度编解码块:
–availableB等于TRUE。
–当前量化组是片内CTB行中的第一个量化组。
–否则,qPY_PRED推导如下:
qPY_PRED=(qPY_A+qPY_B+1)>>1 (1115)
变量QpY的推导如下:
QpY=((qPY_PRED+CuQpDeltaVal+64+2*QpBdOffset)%(64+QpBdOffset))-QpBdOffset (1116)
亮度量化参数Qp'Y推导如下:
Qp′Y=QpY+QpBdOffset (1117)
当ChromaArrayType不等于0且treeType等于SINGLE_TREE或DUAL_TREE_CHROMA时,以下情况适用:
–当treeType等于DUAL_TREE_CHROMA时,将变量QpY设置为等于覆盖亮度位置(xCb+cbWidth/2,yCb+cbHeight/2)的亮度编解码单元的亮度量化参数QpY。
–变量qPCb、qPCr和qPCbCr的推导如下:
qPChroma=Clip3(-QpBdOffset,63,QpY) (1118)
qPCb=ChromaQpTable[0][qPChroma] (1119)
qPCr=ChromaQpTable[1][qPChroma] (1120)
qPCbCr=ChromaQpTable[2][qPChroma] (1121)
–Cb和Cr分量、Qp′Cb和Qp′Cr以及联合Cb-Cr编解码Qp′CbCr的色度量化参数推导如下:
Qp′Cb=Clip3(-QpBdOffset,63,qPCb+pps_cb_qp_offset+slice_cb_qp_offset+CuQpOffsetCb)+QpBdOffset (1122)
Qp′Cr=Clip3(-QpBdOffset,63,qPCr+pps_cr_qp_offset+slice_cr_qp_offset+CuQpOffsetCr)+QpBdOffset (1123)
Qp′CbCr=Clip3(-QpBdOffset,63,qPCbCr+pps_joint_cbcr_qp_offset+slice_joint_cbcr_qp_offset+CuQpOffsetCbCr)+QpBdOffset (1124)
2.9自适应颜色变换(ACT)
图15示出了应用了ACT的解码流程图。如图15所示,颜色空间转换是在残差域中进行的。具体来说,在逆变换后引入了一个额外的解码模块,即逆向ACT,将残差从YCgCo域转换回原始域。
在VVC中,除非最大变换尺寸小于一个编码解单元(CU)的宽度或高度,否则一个CU叶节点也被用作变换处理的单元。因此,在提议的实施中,向一个CU信令通知ACT标志以选择对其残差进行编解码的颜色空间。此外,按照HEVC ACT设计,对于帧间和IBC CU,ACT仅在CU中至少存在一个非零系数时启用。对于帧内CU,仅当色度分量选择与亮度分量相同的帧内预测模式时才启用ACT,例如DM模式。
用于颜色空间转换的核心转换与用于HEVC的核心转换保持相同。具体地,应用以下正向和逆向YCgCo颜色变换矩阵,如下所述。
Figure BDA0003685396460000241
另外,为了补偿残差信号在颜色变换前后的动态范围变化,对变换残差应用(-5,-5,-3)的QP调整。
另一方面,如(1)所示,正向和逆向颜色变换需要访问所有三个分量的残差。相应地,在提议的实施方式中,ACT在以下两种情况下被禁用,其中,三个分量的所有残差都不可用。
1.分离树分割:当应用分离树时,一个CTU内的亮度和色度样点被不同的结构分割。这导致亮度树中的CU仅包含亮度分量,而色度树中的CU仅包含两个色度分量。
帧内子分割预测(intra sub-partition prediction,ISP):ISP子分割仅应用于亮度,而色度信号被编解码而不被划分。在当前的ISP设计中,除了最后一个ISP子分割外,其他子分割只包含亮度分量。
2.10高级去方块控制示例
控制机制如下图16所示。
3.现有实施的缺点
DMVR和BIO在细化运动矢量时不涉及原始信令,这可能导致编解码块的运动信息不准确。此外,DMVR和BIO有时会在运动细化后采用分数运动矢量,而屏幕视频通常具有整数运动矢量,这使得当前运动信息更加不准确,从而使编解码性能变差。
1、色度QP表和色度去方块之间的交互可能有问题,例如,色度QP表应当应用于单个QP,而不是QP的加权和。
2、亮度去方块滤波处理逻辑复杂,硬件设计复杂。
3、边界强度推导的逻辑对于软件和硬件设计来说都过于复杂。
4、在BS决策过程中,JCCR与那些没有应用JCCT编解码的块分开处理。但是,JCCR只是对残差进行编解码的一种特殊方式。因此,这样的设计可能会带来额外的复杂性而没有明显的好处。
5、在色度边缘判定中,QpQ和QpP被设置为等于编解码单元的QpY值,这些编解码单元包括分别包含样点q0,0和p0,0的编解码块。然而,在量化/反量化过程中,从覆盖当前色度CU中心位置的对应亮度样点的亮度块的QP中推导色度样点的QP。启用双树时,亮度块的不同位置可能会导致不同的QP。因此,在色度去方块处理中,可能会使用错误的QP进行滤波器决策。这种错位可能导致视觉伪影。图9A-图9B中示出了一个示例。图9A示出了亮度块的相应CTB分割,图9B示出了双树下的色度CTB分割。在确定色度块的QP时,记为CUc1,首先推导CUc1的中心位置。然后识别CUc1中心位置对应的亮度样点,并与覆盖对应亮度样点的亮度CU相关联的亮度QP,即,然后利用CUY3推导CUc1的QP。然而,当对所描绘的三个样点(带有实心圆圈)进行滤波决策时,会选择覆盖相应3个样点的CU的QP。因此,对于第一、第二和第三色度样点(如图9B所示),分别使用CUY2、CUY3、CUY4的QP。也就是说,同一CU中的色度样点可能会使用不同的QP进行滤波器决策,这可能会导致错误的决策。
6、将不同的图片级别QP偏移(即,pps_joint_cbcr_qp_offset)应用于JCCR编解码块,这不同于应用于非JCCR编解码块的Cb/Cr的图片级别偏移(例如,pps_cb_qp_offset和pps_cr_qp_offset)。然而,在色度去方块滤波器决策过程中,仅使用非JCCR编解码块的那些偏移量。忽略编解码模式可能会导致错误的滤波器决策。
7、TS和非TS编解码块在反量化过程中采用不同的QP,这在去方块处理中也可以考虑。
8、不同模式的JCCR编解码块在缩放过程(量化/反量化)中使用不同的QP。这样的设计并不一致。
9、Cb/Cr的色度去方块可以不进行并行设计。
10、基于色度反量化过程中使用的QP(例如qP)推导去方块中的色度QP,但是,当在去方块处理中使用TS和ACT块时,qP应该被裁剪或减5。
11、BDPCM和ACT两者都启用时,三个分量的预测过程可能不一样。
4.技术和实施例的示例
以下详细的实施例应被视为解释一般概念的示例。不应狭隘地解释这些实施例。此外,这些实施例可以以任何方式组合。
除了以下提到的DMVR和BIO之外,以下描述的方法还可以适用于其他解码器运动信息推导技术。
在以下示例中,MVM[i].x和MVM[i].y表示M(M为P或Q)侧块的参考图片列表i(i为0或1)中的运动矢量的水平和垂直分量。Abs表示获取输入绝对值的操作,“&&”和“||”表示逻辑运算AND和OR。参考图10,P可以表示P侧的样点,Q可以表示Q侧的样点。P侧和Q侧的块可以表示由虚线标记的块。
关于去方块中的色度QP
1.当使用色度QP表推导控制色度去方块的参数时(例如,在色度块边缘的决策处理中),可以在应用色度QP表之后应用色度QP偏移。
a.在一个示例中,可以将色度QP偏移添加到色度QP表输出的值。
b.或者,色度QP偏移可以不被视为色度QP表的输入。
c.在一个示例中,色度QP偏移可以是图片级别或其他视频单元级别(条带/片/图块/子图片)色度量化参数偏移(例如,条款中的pps_cb_qp_offset、pps_cr_qp_offset)。
2.QP裁剪可以不适用于色度QP表的输入。
3.建议色度分量的去方块处理可以基于每侧映射的色度QP(通过色度QP表)。
a.在一个示例中,建议色度的去方块参数(例如,β和tC)可以基于从每一侧的亮度Q推导出的QP。
b.在一个示例中,色度去方块参数可以取决于以QpP作为表索引的色度QP表值,其中,QpP是P侧的亮度QP值。
c.在一个示例中,色度去方块参数可以取决于以QpQ作为表索引的色度QP表值,其中,QpQ是Q侧的亮度QP值。
4.建议色度分量的去方块处理可以基于应用于色度块的量化/反量化的QP。
a.在一个示例中,去方块处理的QP可以等于反量化过程中的QP。
b.在一个示例中,去方块处理的QP选择可以取决于TS和/或ACT块的使用指示。
i.在一个示例中,去方块处理的QP可以由Max(QpPrimeTsMin,qP)-(cu_act_enabled_flag[xTbY][yTbY]?N:0)推导出,其中,QpPrimeTsMin是TS块的最小QP,而cu_act_enabled_flag是ACT的使用标志。
1.在一个示例中,qP可以是第2.8节给出的Qp′Cb或Qp′Cr
ii.在一个示例中,去方块处理的QP可以由Max(QpPrimeTsMin,qP-(cu_act_enabled_flag[xTbY][yTbY]?N:0))推导出,其中,QpPrimeTsMin是TS块的最小QP,而cu_act_enabled_flag是ACT的使用标志。
1.在一个示例中,qP可以是第2.8节给出的Qp′Cb或Qp′Cr
iii.在上述示例中,对于每个颜色分量,N可以设置为相同或不同的值。
1.在一个示例中,对于Cb/B/G/U/分量,N可以设置为5,和/或对于Cr/R/B/V分量,N可以设置为3。
c.在一个示例中,去方块处理中使用的块的QP可以通过第2.8节描述的过程推导出,其中,delta QP(例如CuQpDeltaVal)等于0。
iv.在一个示例中,仅当块的编解码块标志(cbf)等于0时才可以应用上述推导。
d.在一个示例中,上述示例可以应用于亮度和/或色度块。
e.在一个示例中,在去方块处理中使用的第一块的QP可以设置为等于存储并用于预测第二块的QP。
v.在一个示例中,对于具有全零系数的块,在去方块处理中使用的相关QP可以设置为等于存储并用于预测第二块的QP。
5.建议在去方块滤波器决策过程中考虑用于不同编解码方法的图片/条带/
片/图块/子图片级别量化参数偏移。
a.在一个示例中,用于滤波器决策(例如,去方块滤波器过程中的色度边缘决策)的图片/条带/片/图块/子图片级别量化参数偏移的选择可以取决于每一侧的编解码方法。
b.在一个示例中,需要对色度块使用量化参数的滤波过程(例如色度边缘决策过程)可以取决于这些块是否使用JCCR。
i.或者,此外,在去方块滤波处理中可以进一步考虑应用于JCCR编解码块的图片/条带级别QP偏移(例如,pps_joint_cbcr_qp_offset)。
ii.在一个示例中,在某些条件下,用于决定Tc和β设置的cQpPicOffset可以设置为pps_joint_cbcr_qp_offset而不是pps_cb_qp_offset或pps_cr_qp_offset:
1.在一个示例中,当P或Q侧的任何一个块使用JCCR时。
2.在一个示例中,当P或Q侧的两个块都使用JCCR时。
iii.此外,或者,滤波过程可以取决于JCCR的模式(例如,模式是否等于2)。
6.需要访问亮度块的解码信息的色度滤波过程(例如色度边缘决策过程)可以利用与用于在反量化/量化过程中推导色度QP的相同亮度编解码块相关联的信息。
a.在一个示例中,需要对亮度块使用量化参数的色度滤波过程(例如色度边缘决策过程)可以利用覆盖当前色度CU的中心位置的对应亮度样点的亮度编解码单元。
b.在图9A-图9B中描绘了一个示例,其中,CUY3的解码信息可以用于图9B中的三个色度样点(第一、第二和第三)的滤波决策。
7.色度滤波过程(例如,色度边缘决策过程)可以取决于应用于色度块的缩放过程(例如,量化/反量化)的量化参数。
a.在一个示例中,用于推导β和Tc的QP可以取决于应用于色度块的缩放过程的QP。
b.或者,此外,用于色度块缩放过程的QP可能已经考虑了色度CU级别QP偏移。
8.是否调用上述项目符号(bullets)可以取决于要滤波的样点,其在P或Q侧的块中。
a.例如,是使用覆盖当前色度样点的对应亮度样点的亮度编解码块的信息还是使用覆盖当前色度样点的色度编解码块的中心位置对应的亮度样点的亮度编解码块的信息可以取决于块位置。
i.在一个示例中,如果当前色度样点在Q侧的块中,则可以使用覆盖当前色度样点的色度编解码块的中心位置的对应亮度样点的亮度编解码块的QP信息。
ii.ii.在一个示例中,如果当前色度样点在P侧的块中,则可以使用覆盖色度样点的对应亮度样点的亮度编解码块的QP信息。
9.去方块中使用的色度QP可以取决于相应变换块的信息。
a.在一个示例中,在P侧去方块的色度QP可以取决于P侧的变换块的模式。
i.在一个示例中,在P侧去方块的色度QP可以取决于P侧的变换块是否在应用JCCR的情况下进行编解码。
ii.在一个示例中,在P侧去方块的色度QP可以取决于P侧的变换块是否以joint_cb_cr模式编解码并且JCCR的模式等于2。
b.在一个示例中,在Q侧去方块的色度QP可以取决于在Q侧的变换块的模式。
i.在一个示例中,在Q侧去方块的色度QP可以取决于在Q侧的变换块是否在应用JCCR的情况下进行编解码。
ii.在一个示例中,在Q侧去方块的色度QP可以取决于Q侧的变换块是否在应用JCCR的情况下进行编解码,并且JCCR的模式等于2。
10.色度QP的信令可以在编解码单元中。
a.在一个示例中,当编解码单元尺寸大于最大变换块尺寸,即maxTB时,可以在CU级别中信令通知色度QP。或者,可以在TU级别中信令通知色度QP。
b.在一个示例中,当编解码单元尺寸大于VPDU的尺寸时,可以在CU级别中信令通知色度QP。或者,可以在TU级别中信令通知色度QP。
11.可以在编解码单元级别指示块是否为joint_cb_cr模式。
a.在一个示例中,变换块是否为joint_cb_cr模式可以继承包含变换块的编解码单元的信息。
12.去方块中使用的色度QP可以取决于缩放过程中使用的色度QP减去由于位深度引起的QP偏移。
a.在一个示例中,当TuCResMode[xTb][yTb]等于2时,P侧去方块中使用的色度QP设置为缩放过程中使用的JCCR色度QP,即Qp′CbCr,减去QpBdOffsetC,其中,(xTb,yTb)表示在P侧包含第一个样点的变换块,即p0,0
b.在一个示例中,当TuCResMode[xTb][yTb]等于2时,P侧去方块中使用的色度QP设置为缩放过程中使用的Cb色度QP,即Qp'Cb,减去QpBdOffsetC,其中,(xTb,yTb)表示在P侧包含第一个样点的变换块,即p0,0
c.在一个示例中,当TuCResMode[xTb][yTb]等于2时,P侧去方块中使用的色度QP设置为缩放过程中使用的Cr色度QP,即Qp′Cr,减去QpBdOffsetC,其中,(xTb,yTb)表示在P侧包含第一个样点的变换块,即p0,0
d.在一个示例中,当TuCResMode[xTb][yTb]等于2时,将Q侧用于去方块的色度QP设置为缩放过程中使用的JCCR色度QP,即Qp′CbCr,减去QpBdOffsetC,其中,(xTb,yTb)表示包含Q侧最后一个样点的变换块,即q0,0
e.在一个示例中,当TuCResMode[xTb][yTb]等于2时,将Q侧去方块中使用的色度QP设置为缩放过程中使用的Cb色度QP,即Qp'Cb,减去QpBdOffsetC,其中,(xTb,yTb)表示包含Q侧最后一个样点的变换块,即q0,0
f.在一个示例中,当TuCResMode[xTb][yTb]等于2时,将Q侧用于去方块的ChromaQP设置为缩放过程中使用的Cr色度QP,即Qp′Cr,减去QpBdOffsetC,其中,(xTb,yTb)表示包含Q侧最后一个样点的变换块,即q0,0
13.不同的颜色分量可以有不同的去方块强度控制。
a.在一个示例中,每个分量可以具有其pps_beta_offset_div2、pps_tc_offset_div2和/或pic_beta_offset_div2、pic_tc_offset_div2和/或lice_beta_offset_div2、slice_tc_offset_div2。
b.在一个示例中,对于joint_cb_cr模式,可以在PPS和/或图片报头和/或条带包头中应用不同的一组beta_offset_div2、tc_offset_div2。
14.考虑到不同级别的偏移,可以累积去方块控制偏移,而不是使用覆盖机制。
a.在一个示例中,pps_beta_offset_div2和/或pic_beta_offset_div2和/或slice_beta_offset_div2可以被累加以获得条带级别的去方块偏移。
b.在一个示例中,pps_tc_offset_div2和/或pic_tc_offset_div2和/或slice_tc_offset_div2可以被累加以获得条带级别的去方块偏移。
关于QP设置
15.建议在条带/片/图块/子图片级别信令通知启用块级色度QP偏移的指示(例如slice_cu_chroma_qp_offset_enabled_flag)。
a.或者,可以有条件地信令通知这种指示。
i.在一个示例中,其可以在JCCR使能标志的条件下被信令通知。
ii.在一个示例中,其可以在图片级别中块级别色度QP偏移使能标志的条件下被信令通知。
iii.或者,可以替代地推导这样的指示。
b.在一个示例中,仅当色度QP偏移的PPS标志(例如slice_cu_chroma_qp_offset_enabled_flag)为真时,才可以信令通知slice_cu_chroma_qp_offset_enabled_flag。
c.在一个示例中,仅当色度QP偏移的PPS标志(例如slice_cu_chroma_qp_offset_enabled_flag)为假时,才可以推断slice_cu_chroma_qp_offset_enabled_flag为假。
d.在一个示例中,是否对块使用色度QP偏移可以基于PPS级别和/或条带级别的色度QP偏移的标志。
16.对于不同模式的JCCR编解码块,在缩放过程(量化/反量化)中使用相同的QP推导方法。
a.在一个示例中,对于具有模式1和3的JCCR,QP取决于在图片/条带级别中信令通知的QP偏移(例如,pps_cbcr_qp_offset、slice_cbcr_qp_offset)。
滤波程序
17.除第一个颜色分量之外的所有颜色分量的去方块可以在第一个颜色分量的去方块处理之后进行。
a.在一个示例中,当颜色格式为4:4:4时,第二和第三分量的去方块处理可以在第一分量的去方块处理之后。
b.在一个示例中,当RGB颜色空间中的颜色格式为4:4:4时,第二和第三分量的去方块处理可以在第一分量的去方块处理之后。
c.在一个示例中,当颜色格式为4:2:2时,第二和第三分量的垂直去方块处理可以在第一分量的垂直去方块处理之后。
d.在以上示例中,去方块处理可以指去方块决策过程和/或去方块滤波处理。
18.如何计算去方块滤波处理中使用的梯度可以取决于编解码模式信息和/或量化参数。
a.在一个示例中,梯度计算可以仅考虑一侧的梯度,其中,该侧的样点未被无损编解码。
b.在一个示例中,如果两边都是无损编解码或几乎无损编解码(例如,量化参数等于4),则可以直接将梯度设置为0。
i.或者,如果双方都是无损编解码或几乎无损编解码(例如,量化参数等于4),则边界强度(例如,BS)可以设置为0。
c.在一个示例中,如果P侧的样点是无损编解码的并且Q侧的样点是有损编解码的,则用于去方块开/关决策和/或强滤波器开/关决策的梯度可以仅包括Q侧样点的梯度,反之亦然。
i.或者,此外,可以通过N缩放一侧的梯度。
1.N是一个整数(例如2),可以取决于
a.视频内容(例如屏幕内容或自然内容)
b.在DPS/SPS/VPS/PPS/APS/图片报头/条带报头/片组报头/最大编解码单元(LCU)/编解码单元(CU)/LCU行/LCU组/TU/PU块/视频编解码单元
c.CU/PU/TU/块/视频编解码单元的位置
d.包含沿边缘样点的块的编解码模式
e.变换矩阵应用于包含沿边缘的样点的块
f.当前块和/或其临近块的块尺寸/块形状
g.颜色格式指示(如4:2:0、4:4:4、RGB或YUV)
h.编解码树结构(如双树或单树)
i.条带/片组类型和/或图片类型
j.颜色分量(例如,可以只应用于Cb或Cr)
k.时间层ID
l.Profiles/Levels/Tiers标准
m.或者,可以信令通知N到解码器
关于边界强度推导
19.建议在边界强度决策过程中将JCCR编解码块视为非JCCR编解码块。
a.在一个示例中,边界强度(BS)的确定可以独立于对P侧和Q侧的两个块的JCCR使用情况的检查。
b.在一个示例中,无论块是否用JCCR编解码,都可以确定该块的边界强度(BS)。
20.建议在不将与P侧的块相关联的参考图片和/或MV的数量与Q侧的块的参考图片进行比较的情况下推导边界强度(BS)。
a.在一个示例中,即使两个块具有不同的参考图片,也可以禁用去方块滤波器。
b.在一个示例中,即使两个块具有不同数量的MV(例如,一个是单预测的,另一个是双向预测的),也可以禁用去方块滤波器。
c.在一个示例中,当P侧和Q侧的块之间的一个或所有参考图片列表的运动矢量差大于或等于阈值Th时,可以将BS的值设置为1。
i.或者,此外,当P侧和Q侧的块之间的一个或所有参考图片列表的运动矢量差小于或等于阈值Th时,可以将BS的值设置为0。
d.在一个示例中,大于阈值Th的两个块的运动矢量的差值可以定义为(Abs(MVP[0].x-MVQ[0].x)>Th||Abs(MVP[0].y-MVQ[0].y)>Th||Abs(MVP[1].x-MVQ[1].x)>Th)||Abs(MVP[1].y-MVQ[1].y)>Th)
ii.或者,两个块的运动矢量的差大于阈值Th可以定义为(Abs(MVP[0].x-MVQ[0].x)>Th&&Abs(MVP[0].y-MVQ[0].y)>Th&&Abs(MVP[1].x-MVQ[1].x)>Th)&&Abs(MVP[1].y-MVQ[1].y)>Th)
iii.或者,在一个示例中,大于阈值Th的两个块的运动矢量的差值可以定义为(Abs(MVP[0].x-MVQ[0].x)>Th||Abs(MVP[0].y-MVQ[0].y)>Th)&&(Abs(MVP[1].x-MVQ[1].x)>Th)||Abs(MVP[1].y-MVQ[1].y)>Th)
iv.或者,在一个示例中,大于阈值Th的两个块的运动矢量的差值可以定义为(Abs(MVP[0].x-MVQ[0].x)>Th&&Abs(MVP[0].y-MVQ[0].y)>Th)||(Abs(MVP[1].x-MVQ[1].x)>Th)&&Abs(MVP[1].y-MVQ[1].y)>Th)
e.在一个示例中,在给定列表中不具有运动矢量的块可以被视为在该列表中具有零运动矢量。
f.在上述示例中,Th是整数(例如4、8或16)。
g.在上面的示例中,Th可以取决于
v.视频内容(例如屏幕内容或自然内容)
vi.DPS/SPS/VPS/PPS/APS/图片报头/条带报头/片组报头/最大编解码单元(LCU)/编解码单元(CU)/LCU行/LCU组/TU/PU块/视频编解码单元
vii.CU/PU/TU/块/视频编解码单元的位置
viii.包含沿边缘样点的块的编解码模式
ix.变换矩阵应用于包含沿边缘的样点的块
x.当前块和/或其临近块的块尺寸/块形状
xi.颜色格式指示(如4:2:0、4:4:4、RGB或YUV)
xii.编解码树结构(如双树或单树)
xiii.条带/片组类型和/或图片类型
xiv.颜色分量(例如,可以只应用于Cb或Cr)
xv.时间层ID
xvi.Profiles/Levels/Tiers标准
xvii.或者,可以信令通知Th到解码器。
h.上述示例可以在某些条件下应用。
xviii.在一个示例中,条件是blkP和blkQ未使用帧内模式编解码。
xix.在一个示例中,条件是blkP和blkQ在亮度分量上的系数为零。
xx.在一个示例中,条件是blkP和blkQ未使用CIIP模式编解码。
xxi.在一个示例中,条件是blkP和blkQ使用相同的预测模式(例如IBC或Inter)进行编解码。
关于亮度去方块滤波处理
21.去方块可能对TS编解码块和非TS编解码块使用不同的QP。
a.在一个示例中,TS的QP可用于TS编解码块,而非TS的QP可用于非TS编解码块。
22.亮度滤波过程(例如亮度边缘决策过程)可以取决于应用于亮度块缩放过程的量化参数。
a.在一个示例中,用于推导beta和Tc的QP可以取决于变换跳过的裁剪范围,例如如QpPrimeTsMin所示。
23.建议对较大块边界和较小块边界使用相同的梯度计算。
a.在一个示例中,第2.1.4节中描述的去方块滤波器开/关决策也可以应用于较大块边界。
i.在一个示例中,可以针对较大块边界修改决策中的阈值β。
1.在一个示例中,beta可以取决于量化参数。
2.在一个示例中,用于较大块边界的去方块滤波器开/关决策的β可能小于用于较小块边界的β。
a.或者,在一个示例中,用于较大块边界的去方块滤波器开/关决策的β可能大于用于较小块边界的β。
b.或者,在一个示例中,用于较大块边界的去方块滤波器开/关决策的β可以等于较小块边界的β。
3.在一个示例中,beta是一个整数并且可以基于
a.视频内容(例如屏幕内容或自然内容)
b.在DPS/SPS/VPS/PPS/APS/图片报头/条带报头/片组报头/最大编解码单元(LCU)/编解码单元(CU)/LCU行/LCU组/TU/PU块/视频编解码单元
c.CU/PU/TU/块/视频编解码单元的位置
d.包含沿边缘样点的块的编解码模式
e.变换矩阵应用于包含沿边缘的样点的块
f.当前块和/或其临近块的块尺寸/块形状
g.颜色格式指示(如4:2:0、4:4:4、RGB或YUV)
h.编解码树结构(如双树或单树)
i.条带/片组类型和/或图片类型
j.颜色分量(例如,可以只应用于Cb或Cr)
k.时间层ID
l.Profiles/Levels/Tiers标准
m.或者,可以信令通知beta到解码器
关于缩放矩阵(反量化矩阵)
24.量化矩阵的特定位置的值可以设置为常数。
a.在一个示例中,该位置可以是(x,y)的位置,其中,x和y是两个整数变量(例如,x=y=0),并且(x,y)是相对于TU/TB/PU/PB/CU/CB的坐标。
i.在一个示例中,该位置可以是DC的位置。
b.在一个示例中,常数值可以是16。
c.在一个示例中,对于那些位置,可以不使用矩阵值的信令。
25.可以设置一个约束,使得量化矩阵的一些位置的平均/加权平均可以是一个常数。
a.在一个示例中,去方块处理可以取决于常数值。
b.在一个示例中,可以在DPS/VPS/SPS/PPS/条带/图片/片/图块报头中指示常数值。
26.可以在图片报头中信令通知一个或多个指示以通知要在与图片报头相关联的图片中选择的缩放矩阵。
关于跨分量自适应环路滤波器(Cross Component Adaptive Loop Filter, CCALF)
27.CCALF可以在解码器的一些环路滤波处理之前应用
a.在一个示例中,可以在解码器处的去方块处理之前应用CCALF。
b.在一个示例中,可以在解码器处的SAO之前应用CCALF。
c.在一个示例中,可以在解码器处的ALF之前应用CCALF。
d.或者,不同滤波器(例如,CCALF、ALF、SAO、去方块滤波器)的顺序可能不固定。
i.在一个示例中,CCLAF的调用可以在一个视频单元的一个滤波过程之前或另一个视频单元的另一个滤波过程之后。
ii.在一个示例中,视频单元可以是CTU/CTB/条带/片/图块/图片/序列。
e.或者,可以在运行中信令通知或推导不同滤波器(例如,CCALF、ALF、SAO、去方块滤波器)的顺序指示。
i.或者,可以在运行中信令通知或推导调用CCALF的指示。
f.对于不同的颜色分量(例如Cb和Cr),如何控制CCALF的显式(例如,从编码器到解码器信令通知)或隐式(例如,在编码器和解码器推导)指示可以被解耦。
g.是否和/或如何应用CCALF可以取决于颜色格式(例如RGB和YCbCr)和/或颜色采样格式(例如4:2:0、4:2:2和4:4:4),和/或颜色下采样位置或相位)。
关于色度QP偏移列表
28.色度QP偏移列表的信令和/或选择可以取决于编解码的预测模式/图片类型/条带或片或图块类型。
h.色度QP偏移列表,例如cb_qp_offset_list[i]、cr_qp_offset_list[i]和joint_cbcr_qp_offset_list[i]对于不同的编解码模式可能不同。
i.在一个示例中,是否以及如何应用色度QP偏移列表可以取决于当前块是否以帧内模式编解码。
j.在一个示例中,是否以及如何应用色度QP偏移列表可以取决于当前块是否以帧间模式编解码。
k.在一个示例中,是否以及如何应用色度QP偏移列表可以取决于当前块是否以调色板模式编解码。
l.在一个示例中,是否以及如何应用色度QP偏移列表可以取决于当前块是否以IBC模式编解码。
m.在一个示例中,是否以及如何应用色度QP偏移列表可以取决于当前块是否在变换跳过模式中被编解码。
n.在一个示例中,是否以及如何应用色度QP偏移列表可以取决于当前块是否以BDPCM模式编解码。
o.在一个示例中,是否以及如何应用色度QP偏移列表可以取决于当前块是在transform_quant_skip还是无损模式下编解码。
关于CTU边界的色度去方块
29.如何选择去方块滤波处理中使用的QP(例如,使用相应的亮度或色度反量化QP)可以取决于样点相对于CTU/CTB/VPDU边界的位置。
30.如何选择去方块滤波处理中使用的QP(例如,使用相应的亮度或色度反量化QP)可以取决于颜色格式(例如RGB和YCbCr)和/或颜色采样格式(例如4:2:0、4:2:2和4:4:4),和/或颜色下采样位置或相位)。
31.对于CTU边界的边缘,去方块可以基于相应块的亮度QP。
p.在一个示例中,对于CTU边界处的水平边缘,可以基于对应块的亮度QP去方块。
i.在一个示例中,可以基于在P侧的对应块的亮度QP去方块。
ii.在一个示例中,可以基于在Q侧的对应块的亮度QP去方块。
q.在一个示例中,对于CTU边界处的垂直边缘,可以基于对应块的亮度QP去方块。
i.在一个示例中,可以基于在P侧的对应块的亮度QP去方块。
ii.在一个示例中,可以基于在Q侧的对应块的亮度QP去方块。
r.在一个示例中,对于CTU边界处的边缘,可以基于P侧的亮度QP和Q侧的色度QP去方块。
s.在一个示例中,对于CTU边界处的边缘,可以基于Q侧的亮度QP和P侧的色度QP去方块。
t.在本项目符号中,“CTU边界”可以指特定的CTU边界,例如CTU上边界或CTU下边界。
32.对于CTU边界的水平边缘,可以基于P侧的色度QP的函数去方块。
u.在一个示例中,可以基于P侧的色度QP的平均函数去方块。
i.在一个示例中,该函数可以基于每8个亮度样点的色度QP的平均值。
ii.在一个示例中,该函数可以基于每16个亮度样点的色度QP的平均值。
iii.在一个示例中,该函数可以基于每32个亮度样点的色度QP的平均值。
iv.在一个示例中,该函数可以基于每64个亮度样点的色度QP的平均值。
v.在一个示例中,该函数可以基于每个CTU的色度QP的平均值。
v.在一个示例中,可以基于P侧的色度QP的最大函数去方块。
i.在一个示例中,该函数可以基于每8个亮度样点的色度QP的最大值。
ii.在一个示例中,该函数可以基于每16个亮度样点的色度QP的最大值。
iii.在一个示例中,该函数可以基于每32个亮度样点的色度QP的最大值。
iv.在一个示例中,该函数可以基于每64个亮度样点的色度QP的最大值。
v.在一个示例中,该函数可以基于每个CTU的色度QP的最大值。
w.在一个示例中,去方块可以基于P侧的色度QP的最小函数。
i.在一个示例中,该函数可以基于每8个亮度样点的色度QP的最小值。
ii.在一个示例中,该函数可以基于每16个亮度样点的色度QP的最小值。
iii.在一个示例中,该函数可以基于每32个亮度样点的色度QP的最小值。
iv.在一个示例中,该函数可以基于每64个亮度样点的色度QP的最小值。
v.在一个示例中,该函数可以基于每个CTU的色度QP的最小值。
x.在一个示例中,去方块可以基于P侧的色度QP的二次采样函数。
i.在一个示例中,该函数可以基于每8个亮度样点的第k个色度样点的色度QP。
1.在一个示例中,第k个样点可以是第一个样点。
2.在一个示例中,第k个样点可以是最后一个样点。
3.在一个示例中,第k个样点可以是第3个样点。
4.在一个示例中,第k个样点可以是第4个样点。
ii.在一个示例中,该函数可以基于每16个亮度样点的第k个色度样点的色度QP。
1.在一个示例中,第k个样点可以是第一个样点。
2.在一个示例中,第k个样点可以是最后一个样点。
3.在一个示例中,第k个样点可以是第7个样点。
4.在一个示例中,第k个样点可以是第8个样点。
iii.在一个示例中,该函数可以基于每32个亮度样点的第k个色度样点的色度QP。
1.在一个示例中,第k个样点可以是第一个样点。
2.在一个示例中,第k个样点可以是最后一个样点。
3.在一个示例中,第k个样点可以是第15个样点。
4.在一个示例中,第k个样点可以是第16个样点。
iv.在一个示例中,该函数可以基于每64个亮度样点的第k个色度样点的色度QP。
1.在一个示例中,第k个样点可以是第一个样点。
2.在一个示例中,第k个样点可以是最后一个样点。
3.在一个示例中,第k个样点可以是第31个样点。
4.在一个示例中,第k个样点可以是第32个样点。
v.在一个示例中,该函数可以基于每个CTU的第k个色度样点的色度QP。
y.或者,上述项目符号可以应用于Q侧的色度QP以进行去方块处理。
33.可以约束色度分量的量化组必须大于一定尺寸。量化组是携带量化参数的一组(一个或多个)编解码单元。
a.在一个示例中,可以约束色度分量的量化组的宽度必须大于某个值,K。
i.在一个示例中,K等于4。
34.可以约束亮度分量的量化组必须大于一定尺寸。
a.在一个示例中,可以约束亮度分量的量化组的宽度必须大于某个值,K。
i.在一个示例中,K等于8。
35.可以约束,对于从相对于图片的左上角(4*m*x,2y)开始的长度为4*m的色度行段,色度分量的QP可以相同,其中,x和y是非负整数;m为正整数。
z.在一个示例中,m可以等于1。
aa.在一个示例中,色度分量的量化组的宽度必须不小于4*m。
36.可以约束,对于从相对于图片的左上角(2*x,4*n*y)开始的长度为4*n的色度列段,色度分量的QP可以相同,其中,x和y是非负整数;n为正整数。
ab.在一个示例中,n可以等于1。
ac.在一个示例中,色度分量的量化组的高度必须不小于4*n。
关于色度去方块滤波处理
37.取决于在第二视频单元(例如SPS或PPS或VPS)中信令通知的第二语法元素,可以在第一视频单元(例如图片报头)中信令通知控制编解码工具X的使用的第一语法元素。
a.在一个示例中,仅当第二句法元素指示编解码工具X被启用时才信令通知第一句法元素。
b.在一个示例中,X是双向光流(Bi-DirectionOptical Flow,BDOF)。
c.在一个示例中,X是预测细化光流(Prediction Refinement Optical Flow,PROF)。
d.在一个示例中,X是解码器端运动矢量细化(Decoder-side Motion VectorRefinement,DMVR)。
e.在一个示例中,可以在检查条带类型(例如,P或B条带;非I条带)的条件下信令通知编解码工具X的使用。
关于色度去方块滤波处理
38.两个色度块的去方块滤波器决策过程可以统一为仅调用一次,并且该决策应用于两个色度块。
b.在一个示例中,对于Cb和Cr分量,是否执行去方块滤波的决策可能相同。
c.在一个示例中,如果确定要应用去方块滤波器,则对于Cb和Cr分量是否执行更强的去方块滤波器的决策可能相同。
d.在一个示例中,如第2.2.7节所述,去方块条件和强滤波器开/关条件可能只检查一次。但是,可以对其进行修改以检查两个色度分量的信息。
i.在一个示例中,Cb和Cr分量的平均梯度可用于Cb和Cr分量的上述决策。
ii.在一个示例中,仅当对于Cb和Cr分量两者都满足强滤波条件时才可以执行色度更强滤波。
1.或者,在一个示例中,可以仅当强滤波条件不满足至少一个色度分量时才执行色度弱滤波。
在ACT中
39.去方块QP是否等于反量化QP可以取决于是否应用了ACT。
a.在一个示例中,当ACT应用于块时,去方块QP值可以取决于ACT QP调整之前的QP值。
b.在一个示例中,当ACT不应用于块时,去方块QP值可以总是等于反量化QP值。
c.在一个示例中,当ACT和TS都未应用于块时,去方块QP值可以总是等于反量化QP值。
40.ACT和BDPCM可以专门用于块级别。
a.在一个示例中,当ACT应用于块时,亮度BDPCM不应当应用于该块。
b.在一个示例中,当ACT应用于块时,色度BDPCM不应当应用于该块。
c.在一个示例中,当ACT应用于块时,亮度和色度BDPCM都不应当应用于该块。
d.在一个示例中,当亮度和/或色度BDPCM应用于块时,ACT不应当应用于该块。
41.可以根据ACT的使用情况(例如cu_act_enabled_flag)来推断是否开启BDPCM模式。
a.在一个示例中,色度BDPCM模式的推断值可以定义为(cu_act_enabled_flag&&intra_bdpcm_luma_flag&&sps_bdpcm_chroma_enabled_flag?true:false)。
b.在一个示例中,如果sps_bdpcm_chroma_enabled_flag为假,则当intra_bdpcm_luma_flag未被信令通知并且cu_act_enabled_flag为真时,可以推断intra_bdpcm_luma_flag为假。
c.在一个示例中,当intra_bdpcm_luma_flag为真并且sps_bdpcm_chroma_enabled_flag为假时,可以推断cu_act_enabled_flag为假。
d.d.在一个示例中,当cu_act_enabled_flag为真且sps_bdpcm_chroma_enabled_flag为假时,可以推断intra_bdpcm_luma_flag为假。
一般的42.上述提议的方法可以在某些条件下应用。
a.在一个示例中,条件是颜色格式为4:2:0和/或4:2:2。
i.或者,另外,对于4:4:4颜色格式,如何对两个颜色色度分量应用去方块滤波器可以遵循当前的设计。
b.在一个示例中,可以在序列/图片/条带/片/图块/视频区域级别(例如SPS/PPS/图片报头/条带报头)信令通知上述方法的使用指示。
c.在一个示例中,上述方法的使用可以取决于
ii.视频内容(例如屏幕内容或自然内容)
iii.DPS/SPS/VPS/PPS/APS/图片报头/条带报头/片组报头/最大编解码单元(LCU)/编解码单元(CU)/LCU行/LCU组/TU/PU块/视频编解码单元中信令通知的消息
iv.CU/PU/TU/块/视频编解码单元的位置
a.在一个示例中,为了沿CTU/CTB边界(例如,第一个K(例如,K=4/8)到上/左/右/下边界)滤波样点,可以应用现有设计。而对于其他样点,可以改为应用建议的方法(例如,项目符号3/4)。
v.包含沿边缘样点的块的编解码模式
vi.变换矩阵应用于包含沿边缘的样点的块
vii.当前块和/或其临近块的块尺寸
viii.当前块和/或其临近块的块形状
ix.颜色格式指示(如4:2:0、4:4:4、RGB或YUV)
x.编解码树结构(如双树或单树)
xi.条带/片组类型和/或图片类型
xii.颜色分量(例如,可以只应用于Cb或Cr)
xiii.时间层ID
xiv.Profiles/Levels/Tiers标准
xv.或者,可以信令通知m和/或n到解码器。
5附加实施例
新添加的文本以带下划线的粗斜体示出。删除的文本用[[]]标记。
5.1去方块中色度QP的实施例#1
8.8.3.6单向边缘滤波处理
–否则(cIdx不等于0),cIdx指定的当前编解码单元的色度编解码块中边缘的滤波过程包括以下有序步骤:
1、变量cQpPicOffset推导如下:
cQpPicOffset=cIdx==1?pps_cb_qp_offset:pps_cr_qp_offset(8-1065)
8.8.3.6.3色度块边缘的判定过程
设置变量QpQ和QpP为等于编解码单元的QpY值,这些编解码单元包括分别包含样点q0,0和p0,0的编解码块。
变量QpC的推导如下:
[[qPi=Clip3(0,63,((QpQ+QpP+1)>>1)+cQpPicOffset) (8-1132)
QpC=ChromaQpTable[cIdx-1][qPi] (8-1133)]]
qPi=(QpQ+QpP+1)>>1 (8-1132)
QpC=ChromaQpTable[cIdx-1][qPi]+cQpPicOffset (8-1133)
注意–变量cQpPicOffset根据滤波后的色度分量是Cb分量还是Cr分量,来调整pps_cb_qp_offset或pps_cr_qp_offset的值。然而,为了避免需要改变图片内的调整量,滤波过程不包括对slice_cb_qp_offset或slice_cr_qp_offset值的调整,也不包括(当cu_chroma_qp_offset_enabled_flag等于1时)对CuQpOffsetCb、CuQpOffsetCr或CuQpOffsetCbCr值的调整。
基于如下推导的量化参数Q,如表8-18中指定来确定变量β'的值:
Q=Clip3(0,63,QpC+(slice_beta_offset_div2<<1)) (8-1134)
其中,slice_beta_offset_div2是包含样点q0,0的条带的语法元素slice_beta_offset_div2的值。
变量β的推导如下:
β=β′*(1<<(BitDepthC-8)) (8-1135)
基于如下推导的量化参数Q,如表8-18中指定来确定变量tC'的值:
Q=Clip3(0,65,QpC+2*(bS-1)+(slice_tc_offset_div2<<1))(8-1136)
其中,slice_tc_offset_div2是包含样点q0,0的条带的语法元素slice_tc_offset_div2的值。
变量tC的推导如下:
tC=(BitDepthC<10)?(tC′+2)>>(10-BitDepthC):tC′*(1<<(BitDepthC-8)) (8-1137)
5.2边界强度推导的实施例#2
8.8.3.5边界滤波强度推导过程
该过程的输入为:
–图片样点数组recPicture,
–位置(xCb,yCb),指定当前编解码块的左上角样点相对于当前图片的左上角样点,
–变量nCbW,指定当前编解码块宽度
–变量nCbH,指定当前编解码块高度,
–变量edgeType,指定是否滤波垂直(EDGE_VER)或水平(EDGE_HOR)边缘,
–变量cIdx,指定当前编解码块的颜色分量,
–二维(nCbW)x(nCbH)数组edgeFlags。
该过程的输出为一个二维(nCbW)x(nCbH)数组bS,指定边界滤波强度。
对于i=0..xN的xDi和j=0..yN的yDj,以下适用:
–如果edgeFlags[xDi][yDj]等于0,则变量bS[xDi][yDj]设置为等于0。
–否则,以下适用:
–变量bS[xDi][yDj]的推导如下:
–如果cIdx等于0,并且样点p0和q0都在intra_bdpcm_flag等于1的编解码块中,则bS[xDi][yDj]设置为等于0。
–否则,如果样点p0或q0在以帧内预测模式编解码的编解码单元的编解码块中,则bS[xDi][yDj]设置为等于2。
–否则,如果块边缘也是变换块边缘,并且样点p0或q0位于ciip_flag等于1的编解码块中,则将bS[xDi][yDj]设置为等于2。
–否则,如果块边缘也是变换块边缘,并且样点p0或q0在包含一个或多个非零变换系数级别的变换块中,则bS[xDi][yDj]设置为等于1。
–否则,如果块边缘也是变换块边缘,cIdx大于0,样点p0或q0在tu_joint_cbcr_residual_flag等于1的变换单元,bS[xDi][yDj]设置等于1。
–否则,如果包含样点p0的编解码子块的预测模式与包含样点q0的编解码子块的预测模式不同(即,一个编解码子块以IBC预测模式编解码,另一个以帧间预测模式编解码),bS[xDi][yDj]设置为等于1。
–否则,如果cIdx等于0并且以下一个或多个条件为真,则bS[xDi][yDj]设置为等于1:
Figure BDA0003685396460000461
Figure BDA0003685396460000462
–[[包含样点p0的编解码子块和包含样点q0的编解码子块均采用IBC预测模式进行编解码,两个编解码子块的预测中使用的块向量的水平或垂直分量的绝对差值在1/16亮度样点单元中大于或等于8。
–对于包含样点p0的编解码子块的预测,与预测包含样点q0的编解码子块相比,使用不同的参考图片或不同数量的运动矢量。
注意1–用于两个编解码子块的参考图片是否相同或不同的确定仅基于参考了哪些图片,不考虑是使用参考图片列表0的索引还是参考图片列表1的索引来形成预测,也不考虑参考图片列表中的索引位置是否不同。
注意2–用于预测具有左上角样点覆盖(xSb,ySb)的编解码子块的运动矢量的数量等于PredFlagL0[xSb][ySb]+PredFlagL1[xSb][ySb]。
–一个运动矢量用于预测包含样点p0的编解码子块,一个运动矢量用于预测包含样点q0的编解码子块,使用的运动矢量的水平或垂直分量之间的绝对差值在1/16亮度样点单元中大于或等于8。
–两个运动矢量和两个不同的参考图片用于预测包含样点p0的编解码子块,相同的两个参考图片的两个运动矢量用于预测包含样点q0的编解码子块,用于预测同一参考图片的两个编解码子块的两个运动矢量的水平或垂直分量的绝对差值在1/16亮度样点单元中大于或等于8。
–相同参考图片的两个运动矢量用于预测包含样点p0的编解码子块,同一参考图片的两个运动矢量用于预测包含样点q0的编解码子块,并且以下两个条件都为真:
–两个编解码子块的预测中使用的列表0运动矢量的水平或垂直分量之间的绝对差值在1/16亮度样点中大于或等于8,或者两个编解码子块的预测中使用的列表1运动矢量的水平或垂直分量的绝对差值在1/16亮度样点单元中大于或等于8。
–包含样点p0的编解码子块的预测中使用的列表0运动矢量的水平或垂直分量与包含样点q0的编解码子块的预测中使用的列表1运动矢量的绝对差值在1/16亮度样点单元中大于或等于8,包含样点p0的编解码子块的预测中使用的列表1运动矢量的水平或垂直分量与包含样点q0的编解码子块的预测中使用的列表0运动矢量的绝对差值在1/16亮度样点单元中大于或等于8。]]
–否则,变量bS[xDi][yDj]设置为等于0。
5.3边界强度推导的实施例#3
8.8.3.5边界滤波强度推导过程
该过程的输入为:
–图片样点数组recPicture,
–位置(xCb,yCb),指定当前编解码块的左上角样点相对于当前图片的左上角样点,
–变量nCbW,指定当前编解码块宽度,
–变量nCbH,指定当前编解码块高度,
–变量edgeType,指定是否滤波垂直(EDGE_VER)或水平(EDGE_HOR)边缘,
–变量cIdx,指定当前编解码块的颜色分量,
–二维(nCbW)x(nCbH)数组edgeFlags。
该过程的输出是一个二维(nCbW)x(nCbH)数组bS,指定边界滤波强度。
对于i=0..xN的xDi和j=0..yN的yDj,以下适用:
–如果edgeFlags[xDi][yDj]等于0,则变量bS[xDi][yDj]设置为等于0。
–否则,以下适用:
–变量bS[xDi][yDj]的推导如下:
–如果cIdx等于0,并且样点p0和q0都在intra_bdpcm_flag等于1的编解码块中,则bS[xDi][yDj]设置为等于0。
–否则,如果样点p0或q0在以帧内预测模式编解码的编解码单元的编解码块中,则bS[xDi][yDj]设置为等于2。
–否则,如果块边缘也是变换块边缘,并且样点p0或q0位于ciip_flag等于1的编解码块中,则将bS[xDi][yDj]设置为等于2。
–否则,如果块边缘也是变换块边缘,并且样点p0或q0在包含一个或多个非零变换系数级别的变换块中,则bS[xDi][yDj]设置为等于1。
–否则,如果块边缘也是变换块边缘,cIdx大于0,样点p0或q0在tu_joint_cbcr_residual_flag等于1的变换单元,bS[xDi][yDj]设置等于1。
–否则,如果包含样点p0的编解码子块的预测模式与包含样点q0的编解码子块的预测模式不同(即,一个编解码子块以IBC预测模式编解码,另一个以帧间预测模式编解码),bS[xDi][yDj]设置为等于1。
–否则,如果cIdx等于0并且以下一个或多个条件为真,则bS[xDi][yDj]设置为等于1:
–包含样点p0的编解码子块和包含样点q0的编解码子块均采用IBC预测模式进行编解码,两个编解码子块的预测中使用的块向量的水平或垂直分量的绝对差值在1/16亮度样点单元中大于或等于8。
–对于包含样点p0的编解码子块的预测,与预测包含样点q0的编解码子块相比,使用不同的参考图片或不同数量的运动矢量。
注意1–用于两个编解码子块的参考图片是否相同或不同的确定仅基于参考了哪些图片,不考虑是使用参考图片列表0的索引还是参考图片列表1的索引来形成预测,也不考虑参考图片列表中的索引位置是否不同。
注意2–用于预测具有左上角样点覆盖(xSb,ySb)的编解码子块的运动矢量的数量等于PredFlagL0[xSb][ySb]+PredFlagL1[xSb][ySb]。
–一个运动矢量用于预测包含样点p0的编解码子块,一个运动矢量用于预测包含样点q0的编解码子块,使用的运动矢量的水平或垂直分量之间的绝对差值在1/16亮度样点单元中大于或等于8。
–两个运动矢量和两个不同的参考图片用于预测包含样点p0的编解码子块,相同的两个参考图片的两个运动矢量用于预测包含样点q0的编解码子块,用于预测同一参考图片的两个编解码子块的两个运动矢量的水平或垂直分量的绝对差值在1/16亮度样点单元中大于或等于8。
–相同参考图片的两个运动矢量用于预测包含样点p0的编解码子块,同一参考图片的两个运动矢量用于预测包含样点q0的编解码子块,并且以下两个条件都为真:
–两个编解码子块的预测中使用的列表0运动矢量的水平或垂直分量之间的绝对差值在1/16亮度样点中大于或等于8,或者两个编解码子块的预测中使用的列表1运动矢量的水平或垂直分量的绝对差值在1/16亮度样点单元中大于或等于8。
–包含样点p0的编解码子块的预测中使用的列表0运动矢量的水平或垂直分量与包含样点q0的编解码子块的预测中使用的列表1运动矢量的绝对差值在1/16亮度样点单元中大于或等于8,包含样点p0的编解码子块的预测中使用的列表1运动矢量的水平或垂直分量与包含样点q0的编解码子块的预测中使用的列表0运动矢量的绝对差值在1/16亮度样点单元中大于或等于8。
–否则,变量bS[xDi][yDj]设置为等于0。
5.4亮度去方块滤波处理的实施例#4
8.8.3.6.1亮度块边缘的决策过程
该过程的输入为:
–图片样点数组recPicture,
–位置(xCb,yCb),指定当前编解码块的左上角样点相对于当前图片的左上角样点,
–位置(xBl,yBl),指定当前块的左上角样点相对于当前编解码块的左上角样点,
–变量edgeType,指定是否滤波垂直(EDGE_VER)或水平(EDGE_HOR)边缘,
–变量bS,指定边界滤波强度,
–变量maxFilterLengthP,指定最大滤波器长度,
–变量maxFilterLengthQ,指定最大滤波器长度。
该过程的输出为:
–变量dE、dEp和dEq,包含决策,
–修改后的滤波器长度变量maxFilterLengthP和maxFilterLengthQ,
–变量tC
...
以下有序步骤适用:
...
1.当sidePisLargeBlk或sideQisLargeBlk大于0时,以下情况适用:
a.推导变量dp0L、dp3L,修改maxFilterLengthP如下:
–[[如果sidePisLargeBlk等于1,则以下情况适用:
dp0L=(dp0+Abs(p5,0-2*p4,0+p3,0)+1)>>1 (8-1087)
dp3L=(dp3+Abs(p5,3-2*p4,3+p3,3)+1)>>1 (8-1088)
–否则,以下适用:]]
dp0L=dp0 (8-1089)
dp3L=dp3 (8-1090)
[[maxFilterLengthP=3 (8-1091)]]
Figure BDA0003685396460000501
b.变量dq0L和dq3L的推导如下:
–[[如果sideQisLargeBlk等于1,则以下情况适用:
dq0L=(dq0+Abs(q5,0-2*q4,0+q3,0)+1)>>1 (8-1092)
dq3L=(dq3+Abs(q5,3-2*q4,3+q3,3)+1)>>1
(8-1093)
–否则,以下适用:]]
dq0L=dq0 (8-1094)
dq3L=dq3 (8-1095)
Figure BDA0003685396460000511
2.变量dE、dEp和dEq推导如下:
5.5色度去方块滤波处理的实施例#5
8.8.3.6.3色度块边缘的决策过程
仅当ChromaArrayType不等于0时才调用此过程。
该过程的输入为:
–色度图片样点数组recPicture,
–色度位置(xCb,yCb),指定当前色度编解码块的左上角样点相对于当前图片的左上角色度样点,
–色度位置(xBl,yBl),指定当前色度块的左上角样点相对于当前色度编解码块的左上角样点,
–变量edgeType,指定是否滤波垂直(EDGE_VER)或水平(EDGE_HOR)边缘,
–变量cIdx,指定颜色分量索引,
–变量cQpPicOffset,指定图片级别色度量化参数偏移量,
–变量bS,指定边界滤波强度,
–变量maxFilterLengthCbCr。
该过程的输出为
–修改后的变量maxFilterLengthCbCr,
–变量tC
变量maxK的推导如下:
–如果edgeType等于EDGE_VER,则以下情况适用:
maxK=(SubHeightC==1)?3:1 (8-1124)
–否则(edgeType等于EDGE_HOR),以下适用:
maxK=(SubWidthC==1)?3:1 (8-1125)
其中i=0..maxFilterLengthCbCr以及k=0..maxK的值pi和qi推导如下:
–如果edgeType等于EDGE_VER,则以下情况适用:
qi,k=recPicture[xCb+xBl+i][yCb+yBl+k] (8-1126)
pi,k=recPicture[xCb+xBl-i-1][yCb+yBl+k] (8-1127)
subSampleC=SubHeightC (8-1128)
–否则(edgeType等于EDGE_HOR),以下适用:
qi,k=recPicture[xCb+xBl+k][yCb+yBl+i] (8-1129)
pi,k=recPicture[xCb+xBl+k][yCb+yBl-i-1] (8-1130)
subSampleC=SubWidthC (8-1131)
Figure BDA0003685396460000521
Figure BDA0003685396460000522
Figure BDA0003685396460000523
Figure BDA0003685396460000524
Figure BDA0003685396460000525
Figure BDA0003685396460000526
Figure BDA0003685396460000527
Figure BDA0003685396460000528
Figure BDA0003685396460000531
基于如下推导的量化参数Q,如表t-18中指定来确定变量β'的值:
Q=Clip3(0,63,QpC+(slice_beta_offset_div2<<1)) (8-1134)
其中,slice_beta_offset_div2是包含样点q0,0的条带的语法元素slice_beta_offset_div2的值。
变量β的推导如下:
β=β′*(1<<(BitDepthC-8)) (8-1135)
基于如下推导的量化参数Q,如表8-18中指定来确定变量tC'的值:
Q=Clip3(0,65,QpC+2*(bS-1)+(slice_tc_offset_div2<<1))(8-1136)
其中,slice_tc_offset_div2是包含样点q0,0的条带的语法元素slice_tc_offset_div2的值。
变量tC的推导如下:
tC=(BitDepthC<10)?(tC′+2)>>(10-BitDepthC):tC′*(1<<(BitDepthC-8)) (8-1137)
当maxFilterLengthCbCr等于1且bS不等于2时,maxFilterLengthCbCr设置为0。
5.6去方块中色度QP的实施例#6
8.8.3.6.3色度块边缘的决策过程
仅当ChromaArrayType不等于0时才调用此过程。
该过程的输入为:
–色度图片样点数组recPicture,
–色度位置(xCb,yCb),指定当前色度编解码块的左上角样点相对于当前图片的左上角色度样点,
–色度位置(xBl,yBl),指定当前色度块的左上角样点相对于当前色度编解码块的左上角样点,
–变量edgeType,指定是否滤波垂直(EDGE_VER)或水平(EDGE_HOR)边缘,
–变量cIdx,指定颜色分量索引,
–变量cQpPicOffset,指定图片级别色度量化参数偏移量,
–变量bS,指定边界滤波强度,
–变量maxFilterLengthCbCr。
该过程的输出为:
–修改后的变量maxFilterLengthCbCr,
–变量tC
变量maxK的推导如下:
–如果edgeType等于EDGE_VER,则以下情况适用:
maxK=(SubHeightC==1)?3:1 (8-1124)
–否则(edgeType等于EDGE_HOR),以下适用:
maxK=(SubWidthC==1)?3:1 (8-1125)
其中i=0..maxFilterLengthCbCr以及k=0..maxK的值pi和qi推导如下:
–如果edgeType等于EDGE_VER,则以下情况适用:
qi,k=recPicture[xCb+xBl+i][yCb+yBl+k] (8-1126)
pi,k=recPicture[xCb+xBl-i-1][yCb+yBl+k] (8-1127)
subSampleC=SubHeightC (8-1128)
–否则(edgeType等于EDGE_HOR),以下适用:
qi,k=recPicture[xCb+xBl+k][yCb+yBl+i] (8-1129)
pi,k=recPicture[xCb+xBl+k][yCb+yBl-i-1] (8-1130)
subSampleC=SubWidthC (8-1131)
变量QpQ和QpP被设置为等于编解码单元的QpY值,这些编解码单元包括分别包含样点q0,0和p0,0的编解码块。
Figure BDA0003685396460000541
变量QpC的推导如下:
[[qPi=Clip3(0,63,((QpQ+QpP+1)>>1)+cQpPicOffset) (8-1132)]]
Figure BDA0003685396460000542
QpC=ChromaQpTable[cIdx-1][qPi] (8-1133)
注意–变量cQpPicOffset根据滤波后的色度分量是Cb还是Cr分量,对pps_cb_qp_offset或pps_cr_qp_offset的值进行调整。然而,为了避免需要改变图片内的调整量,滤波过程不包括对slice_cb_qp_offset或slice_cr_qp_offset值的调整,也不包括(当cu_chroma_qp_offset_enabled_flag等于1时)对CuQpOffsetCb、CuQpOffsetCr或CuQpOffsetCbCr的调整。
5.7去方块中色度QP的实施例#7
8.8.3.6.3色度块边缘的决策过程
仅当ChromaArrayType不等于0时才调用此过程。
该过程的输入为:
–色度图片样点数组recPicture,
–色度位置(xCb,yCb),指定当前色度编解码块的左上角样点相对于当前图片的左上角色度样点,
-……
该过程的输出为
–修改后的变量maxFilterLengthCbCr,
–变量tC
变量maxK的推导如下:
–如果edgeType等于EDGE_VER,则以下情况适用:
maxK=(SubHeightC==1)?3:1 (8-1124)
–否则(edgeType等于EDGE_HOR),以下适用:
maxK=(SubWidthC==1)?3:1 (8-1125)
其中i=0..maxFilterLengthCbCr以及k=0..maxK的值pi和qi推导如下:
–如果edgeType等于EDGE_VER,则以下情况适用:
qi,k=recPicture[xCb+xBl+i][yCb+yBl+k] (8-1126)
pi,k=recPicture[xCb+xBl-i-1][yCb+yBl+k] (8-1127)
subSampleC=SubHeightC (8-1128)
–否则(edgeType等于EDGE_HOR),以下适用:
qi,k=recPicture[xCb+xBl+k][yCb+yBl+i] (8-1129)
pi,k=recPicture[xCb+xBl+k][yCb+yBl-i-1] (8-1130)
subSampleC=SubWidthC (8-1131)
[[变量QpQ和QpP被设置为等于编解码单元的QpY值,这些编解码单元包括分别包含样点q0,0和p0,0的编解码块。]]
Figure BDA0003685396460000561
变量QpC的推导如下:
qPi=Clip3(0,63,((QpQ+QpP+1)>>1)+cQpPicOffset) (8-1132)
QpC=ChromaQpTable[cIdx-1][qPi] (8-1133)
注意–变量cQpPicOffset根据滤波后的色度分量是Cb还是Cr分量,对pps_cb_qp_offset或pps_cr_qp_offset的值进行调整。然而,为了避免需要改变图片内的调整量,滤波过程不包括对slice_cb_qp_offset或slice_cr_qp_offset值的调整,也不包括(当cu_chroma_qp_offset_enabled_flag等于1时)对CuQpOffsetCb、CuQpOffsetCr或CuQpOffsetCbCr的调整。
基于如下推导的量化参数Q,如表8-18中指定来确定变量β'的值:
Q=Clip3(0,63,QpC+(slice_beta_offset_div2<<1)) (8-1134)
其中,slice_beta_offset_div2是包含样点q0,0的条带的语法元素slice_beta_offset_div2的值。
变量β的推导如下:
β=β′*(1<<(BitDepthC-8)) (8-1135)
基于如下推导的量化参数Q,如表8-18中指定来确定变量tC'的值:
Q=Clip3(0,65,QpC+2*(bS-1)+(slice_tc_offset_div2<<1)) (8-1136)
其中,slice_tc_offset_div2是包含样点q0,0的条带的语法元素slice_tc_offset_div2的值。
5.8去方块中色度QP的实施例#8
当为所描绘的三个样点(带有实心圆圈)做出滤波器决策时,选择覆盖包括三个样点的色度CU的中心位置的亮度CU的QP。因此,对于第一个、第二个和第三个色度样点(如图11所示),分别仅使用CUY3的QP。
这样,色度量化/反量化过程中如何选择亮度CU就与色度滤波器决策过程中如何选择亮度CU有关了。
5.9 JCCR编解码块的QP的实施例#9
8.7.3变换系数的缩放过程
该过程的输入为:
–亮度位置(xTbY,yTbY),指定当前亮度变换块的左上角样点相对于当前图片的左上角亮度样点,
–变量nTbW,指定变换块宽度,
–变量nTbH,指定变换块高度,
–变量cIdx,指定当前块的颜色分量,
–变量bitDepth,指定当前颜色分量的位深度。
该过程的输出是具有元素d[x][y]的缩放变换系数的(nTbW)×(nTbH)数组d。
量化参数qP推导如下:
–如果cIdx等于0且transform_skip_flag[xTbY][yTbY]等于0,则以下适用:qP=Qp′Y (8-950)
–否则,如果cIdx等于0(且transform_skip_flag[xTbY][yTbY]等于1),则以下适用:
qP=Max(QpPrimeTsMin,Qp′Y) (8-951)
–否则,如果TuCResMode[xTbY][yTbY]等于2,则以下适用:
qP=Qp′CbCr (8-952)
–否则,如果cIdx等于1,则以下适用:
qP=Qp′Cb (8-953)
–否则(cIdx等于2),以下适用:
qP=Qp′Cr (8-954)
5.9 JCCR编解码块的QP的实施例#10
8.8.3.2一个方向的去方块滤波过程
该过程的输入为:
–变量treeType指定当前是否处理亮度(DUAL_TREE_LUMA)或色度(DUAL_TREE_CHROMA)分量,
–当treeType等于DUAL_TREE_LUMA时,去方块前的重构图片,即数组recPictureL
–当ChromaArrayType不等于0且treeType等于DUAL_TREE_CHROMA时,数组recPictureCb和recPictureCr
–变量edgeType,指定是否滤波垂直(EDGE_VER)或水平(EDGE_HOR)边缘。
该过程的输出是去方块后修改后的重构图片,即:
–当treeType等于DUAL_TREE_LUMA时,数组recPictureL
–当ChromaArrayType不等于0且treeType等于DUAL_TREE_CHROMA时,数组recPictureCb和recPictureCr
变量firstCompIdx和lastCompIdx推导如下:
firstCompIdx=(treeType==DUAL_TREE_CHROMA)?1:0 (8-1022)
lastCompIdx=(treeType==DUAL_TREE_LUMA||ChromaArrayType==0)?0:2(8-1023)
对于每个编解码单元和每个编解码块,由颜色分量索引cIdx指示的编解码单元的每个颜色分量,范围从firstCompIdx到lastCompIdx(含),编解码块宽度为nCbW,编解码块高度为nCbH,编解码块的左上角样点的位置(xCb,yCb),当cIdx等于0时,或者当cIdx不等于0并且edgeType等于EDGE_VER并且xCb%8等于0时,或者当cIdx不等于0并且edgeType等于EDGE_HOR并且yCb%8等于0时,通过以下有序步骤滤波边缘:
[[5.图片样点数组recPicture推导如下:
–如果cIdx等于0,recPicture被设置为等于在去方块recPictureL之前重构的亮度图片样点阵列。
–否则,如果cIdx等于1,recPicture被设置为等于在去方块recPictureCb之前重构的色度图像样点数组。
–否则(cIdx等于2),recPicture被设置为等于去方块之前重构的色度图片样点数组recPictureCr]]
Figure BDA0003685396460000581
Figure BDA0003685396460000591
对于条款8.8.3.6中指定的编解码块调用一个方向的边缘滤波过程,其中,将变量edgeType、变量cIdx、去方块之前的重构图片recPicture、位置(xCb、yCb)、编解码块宽度nCbW、编解码块高度nCbH,以及数组bS、maxFilterLengthPs和maxFilterLengthQs作为输入,并将修改后的重构图片recPicture作为输出。
8.8.3.5边界滤波强度推导过程
该过程的输入为:
–图片样点数组recPicture,
–位置(xCb,yCb),指定当前编解码块的左上角样点相对于当前图片的左上角样点,
–变量nCbW,指定当前编解码块宽度
–变量nCbH,指定当前编解码块高度,
–变量edgeType,指定是否滤波垂直(EDGE_VER)或水平(EDGE_HOR)边缘,
–变量cIdx,指定当前编解码块的颜色分量,
–二维(nCbW)x(nCbH)数组edgeFlags。
该过程的输出是一个二维(nCbW)x(nCbH)数组bS,指定边界滤波强度。
变量xDi、yDj、xN和yN的推导如下:
对于i=0..xN的xDi和j=0..yN的yDj,以下适用:
–如果edgeFlags[xDi][yDj]等于0,则变量bS[xDi][yDj]设置为等于0。
–否则,以下适用:
–样点值p0和q0的推导如下:
–如果edgeType等于EDGE_VER,则设置p0等于
Figure BDA0003685396460000592
并且设置q0等于
Figure BDA0003685396460000593
–否则(edgeType等于EDGE_HOR),设置p0等于
Figure BDA0003685396460000601
Figure BDA0003685396460000602
并且设置q0等于
Figure BDA0003685396460000603
Figure BDA0003685396460000604
..
8.8.3.6单向边缘滤波处理
该过程的输入为:
–变量edgeType,指定当前是否处理垂直边缘(EDGE_VER)或水平边缘(EDGE_HOR),
–变量cIdx,指定当前颜色分量,
–去方块recPicture之前的重构图片,
–位置(xCb,yCb),指定当前编解码块的左上角样点相对于当前图片的左上角样点,
–变量nCbW,指定当前编解码块宽度
–变量nCbH,指定当前编解码块高度,
–数组bS,指定边界强度,
–数组maxFilterLengthPs和maxFilterLengthQs。
该过程的输出为去方块recPicturei之后修改后的重构图片。
––否则(cIdx不等于0),cIdx指定的当前编解码单元的色度编解码块中边缘的滤波过程包括以下有序步骤:
1.变量cQpPicOffset推导如下:
Figure BDA0003685396460000605
2.
Figure BDA0003685396460000606
Figure BDA0003685396460000607
3.调用条款8.8.3.6.3中指定的色度块边缘的决策过程,将色度图像样点数组recPicture、色度编解码块(xCb,yCb)的位置、设置为(xDk,yDm)的色度块的位置(xBl,yBl)、边缘方向edgeType、
Figure BDA0003685396460000608
Figure BDA0003685396460000609
变量cQpPicOffset、边界滤波强度bS[xDk][yDm]以及设置为等于maxFilterLengthPs[xDk][yDm]的变量maxFilterLengthCbCr作为输入,并且将修改后的变量maxFilterLengthCbCr和变量tC作为输出。
4.当maxFilterLengthCbCr大于0时,调用条款8.8.3.6.4中指定的色度块边缘的滤波过程,将色度图像样点数组recPicture、色度编解码块(xCb,yCb)的位置、设置为等于(xDk,yDm)块的色度位置(xBl,yBl)、边缘方向edgeType、变量maxFilterLengthCbCr
Figure BDA0003685396460000611
Figure BDA0003685396460000612
作为输入,以及将变量tC作为输入,以及将修改后的色度图片样点数组recPicture作为输出。
Figure BDA0003685396460000613
8.8.3.6.3色度块边缘的决策过程
仅当ChromaArrayType不等于0时才调用此过程。
该过程的输入为:
–色度图片样点数组recPicture,
–色度位置(xCb,yCb),指定当前色度编解码块的左上角样点相对于当前图片的左上角色度样点,
–色度位置(xBl,yBl),指定当前色度块的左上角样点相对于当前色度编解码块的左上角样点,
–变量edgeType,指定是否滤波垂直(EDGE_VER)或水平(EDGE_HOR)边缘,
–[[变量cIdx,指定颜色分量索引,]]
–变量cQpPicOffset,指定图片级别色度量化参数偏移量,
–变量bS,指定边界滤波强度,
–变量maxFilterLengthCbCr。
该过程的输出为
–修改后的变量maxFilterLengthCbCr,
–变量tC
变量maxK的推导如下:
–如果edgeType等于EDGE_VER,则以下情况适用:
maxK=(SubHeightC==1)?3:1 (8-1124)
–否则(edgeType等于EDGE_HOR),以下适用:
maxK=(SubWidthC==1)?3:1 (8-1125)
其中i=0..maxFilterLengthCbCr以及k=0..maxK的值pi和qi推导如下:
–如果edgeType等于EDGE_VER,则以下情况适用:
qi,k=recPicture[xCb+xBl+i][yCb+yBl+k] (8-1126)
pi,k=recPicture[xCb+xBl-i-1][yCb+yBl+k] (8-1127)
subSampleC=SubHeightC (8-1128)
–否则(edgeType等于EDGE_HOR),以下适用:
qi,k=recPicture[xCb+xBl+k][yCb+yBl+i] (8-1129)
pi,k=recPicture[xCb+xBl+k][yCb+yBl-i-1] (8-1130)
subSampleC=SubWidthC (8-1131)
变量QpQ和QpP被设置为等于编解码单元的QpY值,这些编解码单元包括分别包含样点q0,0和p0,0的编解码块。
变量QpC的推导如下:
Figure BDA0003685396460000621
注意–变量cQpPicOffset根据滤波后的色度分量是Cb还是Cr分量,对pps_cb_qp_offset或pps_cr_qp_offset的值进行调整。然而,为了避免需要改变图片内的调整量,滤波过程不包括对slice_cb_qp_offset或slice_cr_qp_offset值的调整,也不包括(当cu_chroma_qp_offset_enabled_flag等于1时)对CuQpOffsetCb、CuQpOffsetCr或CuQpOffsetCbCr的调整。
基于如下推导的量化参数Q,如表8-18中指定来确定变量β'的值:
Q=Clip3(0,63,QpC+(slice_beta_offset_div2<<1)) (8-1134)
其中,slice_beta_offset_div2是包含样点q0,0的条带的语法元素slice_beta_offset_div2的值。
变量β的推导如下:
β=β′*(1<<(BitDepthC-8)) (8-1135)
基于如下推导的量化参数Q,如表8-18中指定来确定变量tC'的值:
Q=Clip3(0,65,QpC+2*(bS-1)+(slice_tc_offset_div2<<1))(8-1136)
其中,slice_tc_offset_div2是包含样点q0,0的条带的语法元素slice_tc_offset_div2的值。
变量tC的推导如下:
tC=(BitDepthC<10)?(tC′+2)>>(10-BitDepthC):tC′*(1<<(BitDepthC-8)) (8-1137)
当maxFilterLengthCbCr等于1且bS不等于2时,maxFilterLengthCbCr设置为0。
当maxFilterLengthCbCr等于3时,应用以下有序步骤:
1.变量n1、
Figure BDA0003685396460000631
Figure BDA0003685396460000632
推导如下:
n1=(subSampleC==2)?1:3 (8-1138)
Figure BDA0003685396460000633
Figure BDA0003685396460000634
Figure BDA0003685396460000635
Figure BDA0003685396460000636
Figure BDA0003685396460000637
Figure BDA0003685396460000638
Figure BDA0003685396460000639
Figure BDA00036853964600006310
Figure BDA00036853964600006311
2.变量d设置为(d0+d1+1)>>1
3.变量dSam0和dSam1都设置为0。
4.当d小于β时,以下有序步骤适用:
a.变量dpq设置为等于2*dpq0。
b.对于样点位置(xCb+xBl,yCb+yBl),通过调用条款8.8.3.6.8中指定的色度样点的决策过程得出变量dSam0,将样点值p0,0、p3,0、q0,0和q3,0,变量dpq、β和tC作为输入,以及将输出分配给决策dSam0。
c.变量dpq设置为等于2*dpq1。
d.变量dSam1修改如下:
–如果edgeType等于EDGE_VER,对于样点位置(xCb+xBl,yCb+yBl+n1),调用条款8.8.3.6.8中指定的色度样点的决策过程,将样点值p0,n1、p3,n1、q0,n1和q3,n1,变量dpq、β和tC作为输入,以及将输出分配给决策dSam1。
–否则(edgeType等于EDGE_HOR),f或样点位置(xCb+xBl+n1,yCb+yBl),调用条款8.8.3.6.8中指定的色度样点的决策过程,将样点值p0,n1、p3,n1、q0,n1和q3,n1,变量dpq、β和tC作为输入,以及将输出分配给决策dSam1。
5.5.变量maxFilterLengthCbCr修改如下:
–如果dSam0等于1并且dSam1等于1,则maxFilterLengthCbCr设置为等于3。
–否则,maxFilterLengthCbCr设置为1。
8.8.3.6.4色度块边缘的滤波过程
仅当ChromaArrayType不等于0时才调用此过程。
该过程的输入为:
–色度图片样点数组recPicture,
–色度位置(xCb,yCb),指定当前色度编解码块的左上角样点相对于当前图片的左上角色度样点,
–色度位置(xBl,yBl),指定当前色度块的左上角样点相对于当前色度编解码块的左上角样点,
–变量edgeType,指定是否滤波垂直(EDGE_VER)或水平(EDGE_HOR)边缘,
–变量maxFilterLengthCbCr,包含最大色度滤波器长度,
6.
Figure BDA0003685396460000641
–变量tC
该过程的输出为修改后的色度图片样点数组recPicture。
其中i=0..maxFilterLengthCbCr以及k=0..maxK的值pi和qi推导如下:
–如果edgeType等于EDGE_VER,则以下情况适用:
Figure BDA0003685396460000651
Figure BDA0003685396460000652
–否则(edgeType等于EDGE_HOR),以下适用:
Figure BDA0003685396460000653
Figure BDA0003685396460000654
根据edgeType的值,以下适用:
–如果edgeType等于EDGE_VER,对于每个样点位置(xCb+xBl,yCb+yBl+k),k=0..maxK,以下顺序步骤适用:
1.调用条款8.8.3.6.9中指定的色度样点滤波过程,将变量maxFilterLengthCbCr、其中i=0..maxFilterLengthCbCr的样点值pi,k,qi,k、其中i=0..maxFilterLengthCbCr-1的位置(xCb+xBl-i 1,yCb+yBl+k)和(xCb+xBl+i,yCb+yBl+k)以及变量tC作为输入,以及将其中i=0..maxFilterLengthCbCr-1的滤波样点值pi'和qi'作为输出。
2.其中i=0..maxFilterLengthCbCr-1的滤波样点值pi'和qi'替换样点数组recPicture内对应的样点如下:
Figure BDA0003685396460000655
Figure BDA0003685396460000656
–否则(edgeType等于EDGE_HOR),对于每个样点位置(xCb+xBl+k,yCb+yBl),k=0..maxK,以下有序步骤适用:
1.调用条款8.8.3.6.9节中指定的色度样点滤波过程,将变量maxFilterLengthCbCr、其中i=0..maxFilterLengthCbCr的样点值pi,k和qi,k、位置(xCb+xBl+k,yCb+yBl-i 1)和(xCb+xBl+k,yCb+yBl+i)、变量tC作为输入,以及将滤波后的样点值pi'和qi'作为输出。
2.滤波后的样点值pi'和qi'替换样点数组recPicture内对应的样点如下:
Figure BDA0003685396460000657
Figure BDA0003685396460000661
5.11实施例#11
8.8.3.6.3色度块边缘的决策过程
[[设置变量QpQ和QpP为等于编解码单元的QpY值,这些编解码单元包括分别包含样点q0,0和p0,0的编解码块。
变量QpC的推导如下:
qPi=Clip3(0,63,((QpQ+QpP+1)>>1)+cQpPicOffset) (8-1132)
QpC=ChromaQpTable[cIdx-1][qPi] (8-1133)]]
Figure BDA0003685396460000662
Figure BDA0003685396460000663
Figure BDA0003685396460000664
Figure BDA0003685396460000665
Figure BDA0003685396460000666
Figure BDA0003685396460000667
Figure BDA0003685396460000668
Figure BDA0003685396460000672
5.12实施例#12
8.8.3.6.3色度块边缘的决策过程
[[设置变量QpQ和QpP为等于编解码单元的QpY值,这些编解码单元包括分别包含样点q0,0和p0,0的编解码块。
变量QpC的推导如下:
qPi=Clip3(0,63,((QpQ+QpP+1)>>1)+cQpPicOffset) (8-1132)
QpC=ChromaQpTable[cIdx-1][qPi] (8-1133)
注意–变量cQpPicOffset根据滤波后的色度分量是Cb还是Cr分量,对pps_cb_qp_offset或pps_cr_qp_offset的值进行调整。然而,为了避免需要改变图片内的调整量,滤波过程不包括对slice_cb_qp_offset或slice_cr_qp_offset值的调整,也不包括(当cu_chroma_qp_offset_enabled_flag等于1时)对CuQpOffsetCb、CuQpOffsetCr或CuQpOffsetCbCr的调整。]]
Figure BDA0003685396460000671
5.13实施例#13
色度块边缘的决策过程
仅当ChromaArrayType不等于0时才调用此过程。
该过程的输入为:
–色度图片样点数组recPicture,
–色度位置(xCb,yCb),指定当前色度编解码块的左上角样点相对于当前图片的左上角色度样点,
–色度位置(xBl,yBl),指定当前色度块的左上角样点相对于当前色度编解码块的左上角样点,
–变量edgeType,指定是否滤波垂直(EDGE_VER)或水平(EDGE_HOR)边缘,
–变量cIdx,指定颜色分量索引,
–变量bS,指定边界滤波强度,
–变量maxFilterLengthP,指定最大滤波器长度,
–变量maxFilterLengthQ,指定最大滤波器长度。
该过程的输出为
–修改后的滤波器长度变量maxFilterLengthP和maxFilterLengthQ,
–变量tC
变量QpP的推导如下:
–亮度位置(xTbP,xTbP)设置为包含样点p0,0的变换块的左上亮度样点位置,相对于图片的左上亮度样点。
–如果TuCResMode[xTbP][yTbP]等于2,则QpP设置为等于包含样点p0,0的变换块的Qp′CbCr
Figure BDA0003685396460000681
Figure BDA0003685396460000682
–否则,如果cIdx等于1
Figure BDA0003685396460000683
Figure BDA0003685396460000684
则QpP设置为等于包含样点p0,0的变换块的Qp′Cb
–否则,QpP设置为等于包含样点p0,0的变换块的Qp′Cr
Figure BDA0003685396460000685
Figure BDA0003685396460000686
变量QpQ的推导如下:
–亮度位置(xTbQ,xTbQ)设置为包含样点q0,0的变换块的左上亮度样点位置,相对于图片的左上亮度样点。
–如果TuCResMode[xTbQ][yTbQ]等于2,则将QpQ设置为等于包含样点q0,0的变换块的Qp′CbCr
Figure BDA0003685396460000687
Figure BDA0003685396460000688
–否则,如果cIdx等于1
Figure BDA0003685396460000691
Figure BDA0003685396460000692
则将QpQ设置为等于包含样点q0,0的变换块的Qp′Cb
–否则,QpQ设置为等于包含样点q0,0的变换块的Qp′Cr
Figure BDA0003685396460000693
Figure BDA0003685396460000694
–变量QpC的推导如下:
QpC=(QpQ-QpBdOffset+QpP-QpBdOffset+1)>>1 (1321)
5.14实施例#14
色度块边缘的决策过程
仅当ChromaArrayType不等于0时才调用此过程。
该过程的输入为:
–色度图片样点数组recPicture,
–色度位置(xCb,yCb),指定当前色度编解码块的左上角样点相对于当前图片的左上角色度样点,
–色度位置(xBl,yBl),指定当前色度块的左上角样点相对于当前色度编解码块的左上角样点,
–变量edgeType,指定是否滤波垂直(EDGE_VER)或水平(EDGE_HOR)边缘,
–变量cIdx,指定颜色分量索引,
–变量bS,指定边界滤波强度,
–变量maxFilterLengthP,指定最大滤波器长度,
–变量maxFilterLengthQ,指定最大滤波器长度。
该过程的输出为
–修改后的滤波器长度变量maxFilterLengthP和maxFilterLengthQ,
–变量tC
变量QpP的推导如下:
–亮度位置(xTbP,xTbP)设置为包含样点p0,0的变换块的左上亮度样点位置,相对于图片的左上亮度样点。
–如果TuCResMode[xTbP][yTbP]等于2,则QpP设置为等于包含样点p0,0的变换块的Qp′CbCr
Figure BDA0003685396460000701
Figure BDA0003685396460000702
–否则,如果cIdx等于1
Figure BDA0003685396460000703
Figure BDA0003685396460000704
则QpP设置为等于包含样点p0,0的变换块的Qp′Cb
–否则,QpP设置为等于包含样点p0,0的变换块的Qp′Cr
Figure BDA0003685396460000705
Figure BDA0003685396460000706
变量QpQ的推导如下:
–亮度位置(xTbQ,xTbQ)设置为包含样点q0,0的变换块的左上亮度样点位置,相对于图片的左上亮度样点。
–如果TuCResMode[xTbQ][yTbQ]等于2,则将QpQ设置为等于包含样点q0,0的变换块的Qp′CbCr
Figure BDA0003685396460000707
Figure BDA0003685396460000708
–否则,如果cIdx等于1
Figure BDA0003685396460000709
Figure BDA00036853964600007010
则将QpQ设置为等于包含样点q0,0的变换块的Qp′Cb
–否则,QpQ设置为等于包含样点q0,0的变换块的Qp′Cr
Figure BDA00036853964600007011
Figure BDA00036853964600007012
–变量QpC的推导如下:
QpC=(QpQ-QpBdOffset+QpP-QpBdOffset+1)>>1 (1321)
5.15实施例#15
示例控制逻辑如图17所示。
7.3.2.6图片报头RBSP语法
Figure BDA00036853964600007013
Figure BDA0003685396460000711
7.3.7.1通用条带报头语法
Figure BDA0003685396460000712
5.16实施例#16
7.3.2.4图片参数集RBSP语法
Figure BDA0003685396460000713
7.3.2.6图片报头RBSP语法
Figure BDA0003685396460000721
7.3.7.1通用条带报头语法
Figure BDA0003685396460000722
7.3.2.4图片参数集RBSP语法
Figure BDA0003685396460000723
Figure BDA0003685396460000731
7.4.8.1通用条带报头语义
Figure BDA0003685396460000732
8.8.3.6.3色度块边缘的决策过程
基于如下推导的量化参数Q,如表41中指定来确定变量β'的值:
[[Q=Clip3(0,63,QpC+(slice_beta_offset_div2<<1)) (1322)]]
Figure BDA0003685396460000733
Figure BDA0003685396460000734
Figure BDA0003685396460000735
Figure BDA0003685396460000736
其中,slice_beta_offset_div2是包含样点q0,0的条带语法元素slice_beta_offset_div2的值。
变量β的推导如下:
β=β′*(1<<(BitDepth-8)) (1323)
基于如下推导的色度量化参数Q,如表41中指定来确定变量tC'的值:
[[Q=Clip3(0,65,QpC+2*(bS-1)+(slice_tc_offset_div2<<1)) (1324)]]
Figure BDA0003685396460000737
Figure BDA0003685396460000741
Figure BDA0003685396460000742
Figure BDA0003685396460000743
5.18实施例#18
7.4.3.4图片参数集RBSP语义
Figure BDA0003685396460000744
7.4.8.1通用切片头语义
Figure BDA0003685396460000745
8.8.3.6.1亮度块边缘的决策过程
基于如下推导的量化参数Q,如表41中指定来确定变量β'的值:
[[Q=Clip3(0,63,qP+(slice_beta_offset_div2<<1)) (1262)]]
Figure BDA0003685396460000746
其中,slice_beta_offset_div2是包含样点q0,0的条带语法元素slice_beta_offset_div2的值。
变量β的推导如下:
β=β′*(1<<(BitDepth-8)) (1263)
基于如下推导的量化参数Q,如表41中指定来确定变量tC'的值:
[[Q=Clip3(0,65,qP+2*(bS-1)+(slice_tc_offset_div2<<1)) (1264)]]
Figure BDA0003685396460000751
8.8.3.6.3色度块边缘的决策过程
基于如下推导的量化参数Q,如表41中指定来确定变量β'的值:
[[Q=Clip3(0,63,QpC+(slice_beta_offset_div2<<1)) (1322)]]
Figure BDA0003685396460000752
Figure BDA0003685396460000753
Figure BDA0003685396460000754
Figure BDA0003685396460000755
其中,slice_beta_offset_div2是包含样点q0,0的条带语法元素slice_beta_offset_div2的值。
变量β的推导如下:
β=β′*(1<<(BitDepth-8)) (1323)
基于如下推导的色度量化参数Q,如表41中指定来确定变量tC'的值:
[[Q=Clip3(0,65,QpC+2*(bS-1)+(slice_tc_offset_div2<<1)) (1324)]]
Figure BDA0003685396460000756
Figure BDA0003685396460000757
Figure BDA0003685396460000758
Figure BDA0003685396460000759
5.19实施例#19
本实施例与ACT有关。
Figure BDA00036853964600007510
等于1表示将BDPCM应用于位置(x0,y0)的当前色度编解码块,即跳过变换,由intra_bdpcm_chroma_dir_flag指定帧内色度预测模式。intra_bdpcm_chroma_flag等于0表示BDPCM不应用于位置(x0,y0)的当前色度编解码块。
当intra_bdpcm_chroma_flag不存在时[[推断其等于0]]
Figure BDA0003685396460000761
Figure BDA0003685396460000762
变量BdpcmFlag[x][y][cIdx]设置为等于intra_bdpcm_chroma_flag,其中,x=x0..x0+cbWidth-1,y=y0..y0+cbHeight 1以及cIdx=1..2。
Figure BDA0003685396460000763
等于0表示BDPCM预测方向是水平的。intra_bdpcm_chroma_dir_flag等于1表示BDPCM预测方向是垂直的。
Figure BDA0003685396460000764
变量BdpcmDir[x][y][cIdx]设置为等于intra_bdpcm_chroma_dir_flag,其中,x=x0..x0+cbWidth-1,y=y0..y0+cbHeight-1以及cIdx=1..2。
5.20实施例#20
本实施例涉及去方块的QP推导。
8.8.3.6.1亮度块边缘的决策过程
该过程的输入为:
–色度图片样点数组recPicture,
–色度位置(xCb,yCb),指定当前编解码块的左上角样点相对于当前图片的左上角色度样点,
–色度位置(xBl,yBl),指定当前块的左上角样点相对于当前编解码块的左上角样点,
–变量edgeType,指定是否滤波垂直(EDGE_VER)或水平(EDGE_HOR)边缘,
–变量bS,指定边界滤波强度,
–变量maxFilterLengthP,指定最大滤波器长度,
–变量maxFilterLengthQ,指定最大滤波器长度。
该过程的输出为:
–变量dE、dEp和dEq,包含决策,
–修改后的滤波器长度变量maxFilterLengthP和maxFilterLengthQ,
–变量tC
...
[[变量QpQ和QpP被设置为等于编解码单元的QpY值,这些编解码单元包括分别包含样点q0,0和p0,0的编解码块。]]
Figure BDA0003685396460000771
8.8.3.6.3色度块边缘的决策过程
仅当ChromaArrayType不等于0时才调用此过程。
该过程的输入为:
–色度图片样点数组recPicture,
–色度位置(xCb,yCb),指定当前色度编解码块的左上角样点相对于当前图片的左上角色度样点,
–色度位置(xBl,yBl),指定当前色度块的左上角样点相对于当前色度编解码块的左上角样点,
–变量edgeType,指定是否滤波垂直(EDGE_VER)或水平(EDGE_HOR)边缘,
–变量cIdx,指定颜色分量索引,
–变量bS,指定边界滤波强度,
–变量maxFilterLengthP,指定最大滤波器长度,
–变量maxFilterLengthQ,指定最大滤波器长度。
该过程的输出为:
–修改后的滤波器长度变量maxFilterLengthP和maxFilterLengthQ,
–变量tC
...
变量QpP的推导如下:
–亮度位置(xTbP,xTbP)设置为包含样点p0,0的变换块的左上亮度样点位置,相对于图片的左上亮度样点。
–如果TuCResMode[xTbP][yTbP]等于2,则QpP设置为等于包含样点p0,0的变换块的Qp′CbCr
–否则,如果cIdx等于1,则QpP设置为等于包含样点p0,0的变换块的Qp′Cb
–否则,QpP设置为等于包含样点p0,0的变换块的Qp′Cr
Figure BDA0003685396460000781
变量QpQ的推导如下:
–亮度位置(xTbQ,xTbQ)设置为包含样点q0,0的变换块的左上亮度样点位置,相对于图片的左上亮度样点。
–如果TuCResMode[xTbQ][yTbQ]等于2,则将QpQ设置为等于包含样点q0,0的变换块的Qp′CbCr
–否则,如果cIdx等于1,则将QpQ设置为等于包含样点q0,0的变换块的Qp′Cb
–否则,QpQ设置为等于包含样点q0,0的变换块的Qp′Cr
Figure BDA0003685396460000782
–变量QpC的推导如下:
QpC=(QpQ-QpBdOffset+QpP-QpBdOffset+1)>>1 (1321)
6所公开技术的示例实施
图12是示例视频处理装置1200的框图。装置1200可用于实施本文档所述的一种或多种方法。装置1200可以体现在智能电话、平板电脑、计算机、物联网(IoT)接收器等中。装置1200可以包括一个或多个处理器1202、一个或多个存储器1204和视频处理硬件1206。处理器1202可以被配置为实施本文档中描述的一种或多种方法。存储器(Memory)1204可用于存储用于实施在此描述的方法和技术的数据和代码。视频处理硬件1206可用于在硬件电路中实施本文档中描述的一些技术。在一些实施例中,硬件1206可以部分或完全是处理器1202(例如,图形处理器核心GPU或其他信号处理电路)的一部分。
在本公开中,术语“视频处理”可以指视频编码、视频解码、视频压缩或视频解压缩。例如,视频压缩算法可以在从视频的像素表示转换为对应的比特流表示期间应用,反之亦然。当前视频块的比特流表示可以例如对应于在比特流内位于不同位置或分布在不同位置的比特,如语法所定义。例如,宏块可以根据变换和编解码的误差残差值进行编码,并且还可以使用标头中的比特和比特流中的其他字段。
应当理解,所公开的方法和技术将通过允许使用本文档中公开的技术而有益于并入视频处理设备(例如智能手机、膝上型电脑、台式机和类似设备)中的视频编码器和/或解码器实施例。
图13是视频处理的示例方法1300的流程图。方法1300包括,在1310,执行视频单元和视频单元的比特流表示之间的转换,其中,在转换期间,在视频单元的边界上使用去方块滤波器,使得当使用色度量化参数(QP)表推导去方块滤波器的参数时,色度QP表对各个色度QP值进行处理。
可以使用以下基于条款的格式来描述一些实施例。
1、一种视频处理方法,包括:
执行视频单元和视频单元的比特流表示之间的转换,其中,在转换期间,在视频单元的边界上使用去方块滤波器,使得当使用色度量化参数(QP)表推导去方块滤波器的参数时,色度QP表对各个色度QP值进行处理。
2、根据条款1的方法,其中,在由色度QP表进行处理之后,色度QP偏移被添加到各个色度QP值。
3、根据条款1-2中任一项的方法,其中,将色度QP偏移添加到色度QP表输出的值中。
4、根据条款1-2中任一项的方法,其中,色度QP偏移不被视为色度QP表的输入。
5、根据条款2的方法,其中。色度QP偏移处于图片级别或视频单元级别。
6、一种视频处理方法,包括:
执行视频单元和视频单元的比特流表示之间的转换,其中,在转换期间,在视频单元的边界上使用去方块滤波器,使得在去方块滤波器中使用色度QP偏移,其中,色度QP偏移处于图片/条带/片/图块/子图片级别。
7、根据条款6的方法,其中,在去方块滤波器中使用的色度QP偏移与在视频单元的边界上应用的编解码方法相关联。
8、根据条款7方法,其中,编解码方法是色度残差联合编解码(JCCR)方法。
9、一种视频处理方法,包括:
执行视频单元和视频单元的比特流表示之间的转换,其中,在转换期间,在视频单元的边界上使用去方块滤波器,使得在去方块滤波器中使用色度QP偏移,其中,在去方块滤波器中使用与相同亮度编解码单元有关的信息并用于推导色度QP偏移。
10、根据条款9的方法,其中,相同的亮度编解码单元覆盖视频单元的中心位置的对应亮度样点,其中,视频单元是色度编解码单元。
11、根据条款9的方法,其中,将缩放过程应用于视频单元,并且其中,去方块滤波器的一个或多个参数至少部分地取决于所述缩放过程的量化/反量化参数。
12、根据条款11的方法,其中,缩放过程的量化/反量化参数包括色度QP偏移。
13、根据条款9-12中任一项的方法,其中,视频单元中的亮度样点在P侧或Q侧。
14、根据条款13的方法,其中,与相同亮度编解码单元有关的信息取决于该编解码单元相对于相同亮度编解码单元的相对位置。
15、一种视频处理方法,包括:
执行视频单元和视频单元的比特流表示之间的转换,其中,在转换期间,在视频单元的边界上使用去方块滤波器,使得在去方块滤波器中使用色度QP偏移,其中,在比特流表示中信令通知启用使用色度QP偏移的指示。
16、根据条款15的方法,其中,响应于检测到一个或多个标志,有条件地信令通知该指示。
17、根据条款16的方法,其中,一个或多个标志与JCCR启用标志或色度QP偏移启用标志相关。
18、根据条款15的方法,其中,基于推导信令通知该指示。
19、一种视频处理方法,包括:
执行视频单元和视频单元的比特流表示之间的转换,其中,在转换期间,在视频单元的边界上使用去方块滤波器,使得在去方块滤波器中使用色度QP偏移,其中,无论是在视频单元的边界上应用JCCR编解码方法还是在视频单元的边界上应用与JCCR编解码方法不同的方法,去方块滤波器中使用的色度QP偏移都是相同的。
20、一种视频处理方法,包括:
执行视频单元和视频单元的比特流表示之间的转换,其中,在转换期间,在视频单元的边界上使用去方块滤波器,使得在去方块滤波器中使用色度QP偏移,其中,在不比较参考图片和/或与参考图片的P侧边界处的视频单元相关联的运动矢量(MV)的数量和/或与与Q侧的视频单元相关联的运动矢量(MV)的数量的情况下,计算去方块滤波器的边界强度(BS)。
21、根据条款20的方法,其中,在一种或多种条件下禁用去方块滤波器。
22、根据条款21的方法,其中,一个或多个条件与运动矢量(MV)的幅度(magnitude)或阈值相关联。
23、根据条款22的方法,其中,阈值与以下各项中的至少一项相关联:i.视频单元的内容,ii.在DPS/SPS/VPS/PPS/APS/图片报头/条带报头/片组报头/最大编解码单元(LCU)/编解码单元(CU)/LCU行/LCU组/TU/PU块/视频中编解码单元中信令通知的消息,iii.CU/PU/TU/块/视频编解码单元的位置,iv.具有沿边界样点的块的编解码模式,v.应用于具有沿边界样点的视频单元的变换矩阵,vi.视频单元的形状或尺寸,vii.颜色格式的指示,viii.编解码树结构,ix.条带/片组类型和/或图片类型,x.颜色分量,xi.时域层ID,或xii.标准的配置文件/级别/层。
24、根据条款20的方法,其中,TS编解码视频单元和非TS编解码视频单元使用不同的QP偏移。
25、根据条款20的方法,其中,在亮度滤波步骤中使用的QP与在亮度块的缩放过程中使用的QP相关。
26、一种视频解码装置,包括被配置为实施条款1至25中的一项或多项中的方法的处理器。
27、一种视频编码装置,包括被配置为实施条款1至25中的一项或多项中的方法的处理器。
28、一种其上存储有计算机代码的计算机程序产品,该代码在由处理器执行时使处理器实施条款1至25中任一项的方法。
29、一种在本文件中描述的方法、装置或系统。
图18是描述可以利用本公开的技术的示例视频编解码系统100的框图。
如图18所示,视频编解码系统100可以包括源设备110和目的设备120。源设备110产生可以被称为视频编码设备的编码视频数据。目的设备120可以解码由源设备110产生的编码视频数据,可以被称为视频解码设备。
源设备110可以包括视频源112、视频编码器114和输入/输出(I/O)接口116。
视频源112可以包括诸如视频捕获设备、从视频内容提供者接收视频数据的接口、和/或用于产生视频数据的计算机图形系统之类的源,或这些源的组合。视频数据可以包括一幅或多幅图片。视频编码器114对来自视频源112的视频数据进行编码以产生比特流。比特流可以包括形成视频数据的编解码表示的位序列。比特流可以包括编解码图片和相关数据。编解码图片是图片的编解码表示。关联数据可以包括序列参数集、图片参数集和其他语法结构。I/O接口116可以包括调制器/解调器(调制解调器)和/或发射器。编码的视频数据可以通过网络130a经由I/O接口116直接发送到目的设备120。编码的视频数据也可以存储在存储介质/服务器130b上以供目的设备120访问。
目的设备120可以包括I/O接口126、视频解码器124和显示设备122。
I/O接口126可以包括接收器和/或调制解调器。I/O接口126可以从源设备110或存储介质/服务器130b获取编码视频数据。视频解码器124可解码经编码视频数据。显示设备122可以向用户显示解码的视频数据。显示设备122可以与目标设备120集成,或者可以在目标设备120外部,目标设备120配置为与外部显示设备接口。
视频编码器114和视频解码器124可以根据视频压缩标准操作,例如高效视频编码(HEVC)标准、通用视频编码(VVC)标准和其他当前和/或进一步的标准。
图19是说明视频编码器200的示例的框图,视频编码器200可以是在图18中说明的系统100中的视频编码器114。
视频编码器200可经配置以执行本公开的任何或所有技术。在图19的示例中,视频编码器200包括多个功能组件。本公开中描述的技术可在视频编码器200的各种组件之间共享。在一些示例中,处理器可以被配置为执行本公开中描述的任何或所有技术。
视频编码器200的功能组件可以包括分区单元201、预测单元202(可以包括模式选择单元203、运动估计单元204、运动补偿单元205和帧内预测单元206)、残差产生单元207、变换单元208、量化单元209、逆量化单元210、逆变换单元211、重构单元212、缓冲器213和熵编解码单元214。
在其他示例中,视频编码器200可包括更多、更少或不同的功能组件。在一个示例中,预测单元202可以包括帧内块复制(IBC)单元。IBC单元可以在IBC模式下执行预测,其中至少一个参考图片是当前视频块所在的图片。
此外,诸如运动估计单元204和运动补偿单元205的一些组件可以高度集成,但是为了解释的目的而在图5的示例中单独表示。
分割单元201可将图片分割成一个或多个视频块。视频编码器200和视频解码器300可以支持各种视频块尺寸。
模式选择单元203可以选择编解码模式之一(帧内或帧间,例如基于错误结果),并且将得到的帧内或帧间编解码块提供给残差产生单元207以产生残差块数据,并提供给重构单元212以重构编解码块以用作参考图片。在一些示例中,模式选择单元203可以选择帧内和帧间预测(CIIP)模式的组合,其中预测基于帧间预测信号和帧内预测信号。在帧间预测的情况下,模式选择单元203还可以为块选择运动矢量(例如,子像素或整数像素精度)的分辨率。
为了对当前视频块执行帧间预测,运动估计单元204可以通过将来自缓冲器213的一个或多个参考帧与当前视频块进行比较来产生当前视频块的运动信息。运动补偿单元205可以基于来自缓冲器213的除了与当前视频块相关联的图片之外的图片的运动信息和解码样点来确定当前视频块的预测视频块。
运动估计单元204和运动补偿单元205可以对当前视频块执行不同的操作,例如,取决于当前视频块是在I条带、P条带还是B条带中。
在一些示例中,运动估计单元204可为当前视频块执行单向预测,且运动估计单元204可搜索列表0或列表1的参考图片以寻找当前视频块的参考视频块。运动估计单元204可接着产生指示列表0或列表1中包含参考视频块的参考图片的参考索引和指示当前视频块与参考视频块之间的空间位移的运动矢量。运动估计单元204可输出参考索引、预测方向指示符和运动矢量作为当前视频块的运动信息。运动补偿单元205可以基于由当前视频块的运动信息指示的参考视频块来产生当前块的预测视频块。
在其他示例中,运动估计单元204可为当前视频块执行双向预测,运动估计单元204可在列表0中的参考图片中搜索当前视频块的参考视频块,并且还可在列表1中的参考图片中搜索当前视频块的另一参考视频块。运动估计单元204可接着产生指示列表0和列表1中的参考图片的参考索引,其包含参考视频块和指示参考视频块与当前视频块之间的空间位移的运动矢量。运动估计单元204可以输出当前视频块的参考索引和运动矢量作为当前视频块的运动信息。运动补偿单元205可以基于由当前视频块的运动信息指示的参考视频块来产生当前视频块的预测视频块。
在一些示例中,运动估计单元204可以输出完整的运动信息集以用于解码器的解码处理。
在一些示例中,运动估计单元204可以不输出当前视频的完整的运动信息集。相反,运动估计单元204可参考另一视频块的运动信息来信令通知当前视频块的运动信息。例如,运动估计单元204可确定当前视频块的运动信息与相邻视频块的运动信息足够相似。
在一个示例中,运动估计单元204可在与当前视频块相关联的句法结构中指示一个值,该值向视频解码器300指示当前视频块具有与另一视频块相同的运动信息。
在另一示例中,运动估计单元204可在与当前视频块相关联的语法结构中识别另一视频块和运动矢量差(motion vector difference,MVD)。运动矢量差表示当前视频块的运动矢量与指示的视频块的运动矢量之间的差。视频解码器300可以使用所指示的视频块的运动矢量和运动矢量差来确定当前视频块的运动矢量。
如上所述,视频编码器200可预测性地信令通知运动矢量。可由视频编码器200实施的预测信令通知技术的两个示例包括高级运动矢量预测(advanced motion vectorpredication,AMVP)和merge模式信令通知。
帧内预测单元206可以对当前视频块执行帧内预测。当帧内预测单元206对当前视频块执行帧内预测时,帧内预测单元206可以基于同一图片中的其他视频块的解码样点产生当前视频块的预测数据。当前视频块的预测数据可以包括预测视频块和各种语法元素。
残差产生单元207可通过从当前视频块减去(例如,由负号指示)当前视频块的预测视频块来产生当前视频块的残差数据。当前视频块的残差数据可以包括残差视频块,该残差视频块对应于当前视频块中样点的不同样点分量。
在其他示例中,对于当前视频块可能不存在当前视频块的残差数据,例如在跳过模式中,并且残差产生单元207可能不执行减法运算。
变换处理单元208可以通过对与当前视频块相关联的残差视频块应用一个或多个变换,为当前视频块产生一个或多个变换系数视频块。
在变换处理单元208产生与当前视频块相关联的变换系数视频块之后,量化单元209可基于与当前视频块相关联的一个或多个量化参数(QP)值来量化与当前视频块相关联的变换系数视频块。
逆量化单元210和逆变换单元211可以分别对变换系数视频块应用逆量化和逆变换,以从变换系数视频块重构残差视频块。重构单元212可将重构的残差视频块添加到来自预测单元202产生的一个或多个预测视频块的对应样点中,以产生与当前块相关联的重构视频块以存储在缓冲器213中。
在重构单元212重构视频块之后,可以执行环路滤波操作以减少视频块中的视频块伪影。
熵编解码单元214可以从视频编码器200的其他功能组件接收数据。当熵编解码单元214接收数据时,熵编解码单元214可执行一个或多个熵编码操作以产生熵编码数据并输出包括熵编码数据的比特流。
图20是说明视频解码器300的示例框图,视频解码器300可以是图18中说明的系统100中的视频解码器114。
视频解码器300可经配置以执行本公开任何或所有技术。在图20的示例中,视频解码器300包括多个功能组件。本公开中描述的技术可在视频解码器300的各种组件之间共享。在一些示例中,处理器可以被配置为执行本公开中描述的任何或所有技术。
在图20的示例中,视频解码器300包括熵解码单元301、运动补偿单元302、帧内预测单元303、逆量化单元304、逆变换单元305、以及重构单元306和缓冲器307。在一些示例中,视频解码器300可以执行通常与关于视频编码器200(例如,图19)描述的编码通道(pass)相反的解码通道。
熵解码单元301可以检索编码比特流。编码比特流可以包括熵编解码的视频数据(例如,编码的视频数据块)。熵解码单元301可以解码熵编解码的视频数据,并且根据熵解码的视频数据,运动补偿单元302可以确定包括运动矢量、运动矢量精度、参考图片列表索引和其他运动信息的运动信息。例如,运动补偿单元302可以通过执行AMVP和merge模式来确定该信息。
运动补偿单元302可以产生运动补偿块,可能基于插值滤波器执行插值。以子像素精度使用的插值滤波器的标识符可以包括在语法元素中。
运动补偿单元302可使用视频编码器20在对视频块进行编码期间使用的内插滤波器来计算参考块的子整数像素的内插值。运动补偿单元302可根据接收的语法信息来确定由视频编码器200使用的内插滤波器并且使用内插滤波器来产生预测块。
运动补偿单元302可以使用一些语法信息来确定用于对编码视频序列的帧和/或条带进行编码的块的尺寸、描述编码视频序列的图片的每个宏块如何分割的分割信息、指示每个分割如何编码的模式、每个帧间编解码块的一个或多个参考帧(和参考帧列表)以及其他解码编码的视频序列的信息。
帧内预测单元303可以使用例如在比特流中接收的帧内预测模式来从空间相邻块形成预测块。逆量化单元303对在比特流中提供并由熵解码单元301解码的量化视频块系数进行逆量化,即反量化。逆变换单元303应用逆变换。
重构单元306可将残差块与由运动补偿单元202或帧内预测单元303产生的对应预测块相加以形成解码块。如果需要,还可以应用去方块滤波器来滤波解码的块,以便去除块状伪影。然后将解码的视频块存储在缓冲器307中,缓冲器307为随后的运动补偿提供参考块并且还产生用于在显示设备上呈现的解码视频。
图21示出了示例视频处理系统2100的框图,其可以实施本公开的各种技术。各种实施可以包括系统2100的一些或所有组件。系统2100可以包括用于接收视频内容的输入2102。视频内容可以以原始或未压缩格式(例如,8或10位多分量像素值)接收,或者可以以压缩或编码格式接收。输入2102可以表示网络接口、外围总线接口或存储接口。网络接口的示例包括例如以太网、无源光网络(PON)等的有线接口和例如Wi-Fi或蜂窝接口的无线接口。
系统2100可以包括编解码组件2104,其可以实现本文档中描述的各种编解码或编码方法。编解码组件2104可以降低从输入2102到编解码组件1304输出的视频平均比特率以产生视频的编解码表示。因此,编解码技术有时被称为视频压缩或视频转码技术。编解码组件2104的输出可以被存储或通过连接的通信传输,如组件2106所示。在输入2102处接收的视频的存储或传送的比特流(或编解码)表示可以被组件2108用于产生发送到显示接口2110的像素值或可显示视频。从比特流表示产生用户可见视频的过程有时被称为视频解压缩。此外,虽然某些视频处理操作被称为“编解码”操作或工具,还应认识到,编解码工具或操作用于编码器,且相应的将编解码结果反转的解码工具或操作将由解码器执行。
外围总线接口或显示接口的示例可以包括通用串行总线(USB)或高清多媒体接口(HDMI)或显示端口等。存储接口的示例包括SATA(串行高级技术附件)、PCI、IDE接口等。本文档中描述的技术可以体现在各种电子设备中,例如移动电话、笔记本电脑、智能电话或能够执行数字数据处理和/或视频显示的其他设备。
图22是本技术的视频处理方法的流程图表示。方法2200包括,在操作2210,在包括多个分量的视频和视频的比特流表示之间的转换中,对多个分量的视频块应用去方块滤波器。根据规则确定多个分量中的每个分量的去方块滤波器的去方块滤波强度,该规则规定使用不同的方式来确定多个分量中的每个分量的视频块的去方块滤波强度。
在一些实施例中,多个分量至少包括Cb分量和Cr分量。在一些实施例中,多个分量中的每个颜色分量与去方块参数偏移beta和tc相关联,去方块参数偏移包括视频单元中的第一语法元素beta_offset_div2和第二语法元素tc_offset_div2。在一些实施例中,视频单元包括对应于图片参数集的部分。在一些实施例中,视频单元还包括对应于图片报头的部分。在一些实施例中,在将色度残差模式的联合编解码应用于视频块的情况下,不同的语法元素适用于颜色分量的视频块。
图23是根据本技术的用于视频处理的方法的流程图表示。方法2300包括,在操作2310,执行视频的第一视频单元和视频的比特流表示之间的转换。在转换期间,对第一视频单元应用去方块滤波处理。基于在其他视频单元级别中累积一个或多个去方块控制偏移值,确定第一视频单元的去方块控制偏移。
在一些实施例中,去方块控制偏移至少包括beta_offset_div2或tc_offset_div2。在一些实施例中,第一视频单元包括条带,并且其中,其他视频单元级别至少包括图片参数集或图片。
图24是根据本技术的用于视频处理的方法的流程图表示。方法2400包括,在操作2410,对于视频的块和视频的比特流表示之间的转换,基于对块进行编解码的变换跳过(TS)模式或自适应颜色变换(ACT)模式的使用,确定去方块处理中使用的量化参数。方法2400还包括,在操作2420,基于该确定执行转换。
在一些实施例中,基于Max(QpPrimeTsMin,qP)-(cu_act_enabled_flag[xTbY][yTbY]?N:0)确定量化参数,N为正整数并且qP为实数,其中,QpPrimeTsMin表示以TS模式编码的块的最小量化参数,其中,cu_act_enabled_flag为指示使用ACT模式的标志。在一些实施例中,基于Max(QpPrimeTsMin,qP-(cu_act_enabled_flag[xTbY][yTbY]?N:0))确定量化参数,N为正整数并且qP为实数。QpPrimeTsMin表示以TS模式编码的块的最小量化参数,而cu_act_enabled_flag为指示使用ACT模式的标志。在一些实施例中,qP等于Cb或Cr分量的色度量化参数。在一些实施例中,对于不同颜色分量的块,N是不同的。在一些实施例中,在块为Cb、B、G或U分量的情况下,N等于5。在一些实施例中,在块为Cr、R、B或V分量的情况下,N等于3。
图25是根据本技术的用于视频处理的方法的流程图表示。方法2500包括,在操作2510,执行视频的颜色分量块和视频的比特流表示之间的转换。比特流表示符合规则,规则规定色度分量的量化组的尺寸大于阈值K。量化组包括一个或多个携带量化参数的编解码单元。
在一些实施例中,其中尺寸包括量化组的宽度。在一些实施例中,颜色分量为色度分量。在一些实施例中,K为4。在一些实施例中,颜色分量为亮度分量。在一些实施例中,K为8。
在一些实施例中,转换包括将视频编码为比特流表示。在一些实施例中,转换包括将比特流表示解码为视频。
所公开技术的一些实施例包括做出以启用视频处理工具或模式的决定或确定。在一个示例中,当视频处理工具或模式被启用时,编码器将在处理视频块时使用或实施该工具或模式,但可能不必基于该工具或模式的使用来修改生成的比特流。也就是说,从视频块到视频的比特流表示的转换将使用视频处理工具或模式,当其基于决定或确定被启用时。在另一示例中,当视频处理工具或模式被启用时,解码器将在已知比特流已基于视频处理工具或模式修改的情况下处理比特流。也就是说,从视频的比特流表示到视频块的转换将使用基于决定或确定启用的视频处理工具或模式来执行。
所公开技术的一些实施例包括做出禁用视频处理工具或模式的决定或确定。在一个示例中,当视频处理工具或模式被禁用时,编码器将不使用该工具或模式将视频块转换为视频的比特流表示。在另一示例中,当视频处理工具或模式被禁用时,解码器将在已知比特流尚未使用基于决定或确定而启用的视频处理工具或模式被修改的情况下处理比特流。
本文档中所公开的和其他解决方案、示例、实施例、模块和功能操作可以在数字电子电路或计算机软件、固件或硬件中实现,包括本文档中公开的结构及其结构等效物,或其中的一种或多种的组合。所公开的和其他实施例可以实施为一个或多个计算机程序产品,即,在计算机可读介质上编码的一个或多个计算机程序指令模块,由数据处理设备执行或控制操作。计算机可读介质可以是机器可读存储设备、机器可读存储基板、存储器设备、影响机器可读传播信号的物质组合物,或者其中的一个或多个的组合。计算机可读介质可以是机器可读存储设备、机器可读存储基板、存储设备、影响机器可读传播信号的物质组合,或其中一项或多项的组合。术语“数据处理装置”涵盖处理数据的所有装置、设备和机器,例如包括可编程处理器、计算机或多个处理器或计算机。除了硬件之外,该装置还可以包括为所讨论的计算机程序创建执行环境的代码,例如,构成处理器固件、协议栈、数据库管理系统、操作系统或其中一个或多个的组合代码。传播的信号是人工产生的信号,例如机器产生的电、光或电磁信号,其被产生是为了对信息进行编码以传输到合适的接收器设备。
计算机程序(也称为程序、软件、软件应用程序、脚本或代码)可以以任何形式的编程语言(包括编译或解释语言)编写,并且可以以任何形式进行部署,包括独立程序或适合在计算环境中使用的模块、组件、子例程或其他单元。计算机程序不一定与文件系统中的文件相对应。程序可以存储在保存其他程序或数据的文件的一部分中(例如,存储在标记语言文档中的一个或多个脚本),存储在专用于所讨论程序的单个文件中或多个协调文件(例如,存储一个或多个模块、子程序或部分代码的文件)。可以部署计算机程序,以在一台计算机或位于一个位置上或分布在多个位置上并通过通信网络互连的多台计算机上执行。
本文档中描述的过程和逻辑流程可以由一个或多个可编程处理器来执行,以执行一个或多个计算机程序,从而通过对输入数据进行操作并产生输出来执行功能。处理和逻辑流程也可以由专用逻辑电路执行,并且也可以实现为专用逻辑电路,例如FPGA(fieldprogrammable gate array,现场可编程门阵列)或ASIC(application specificintegrated circuit,应用专用集成电路)。
例如,适合于执行计算机程序的处理器包括通用和专用微处理器,以及任何种类的数字计算机的任何一个或多个处理器。通常,处理器将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本元件是用于执行指令的处理器和用于存储指令和数据的一个或多个存储器装置。通常,计算机还将包括或可操作地耦合到一个或多个用于存储数据的大容量存储设备,例如,磁盘、磁光盘或光盘,以从中接收数据,或将数据传输到一个或多个大容量存储设备,或两者。但是,计算机不必具有这样的装置。适用于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器装置,包括例如半导体存储设备,例如EPROM、EEPROM和闪存设备;磁盘,例如内置硬盘或可移动磁盘;磁光盘;以及CD ROM和DVD-ROM磁盘。处理器和存储器可以由专用逻辑电路补充或并入专用逻辑电路中。
尽管本专利文档包含许多细节,但是这些细节不应解释为对任何发明或可要求保护的范围的限制,而应解释为对特定发明的特定实施例可能特定的特征的描述。在单独的实施例的上下文中在本专利文档中描述的某些特征也可以在单个实施例中组合实现。相反,在单个实施例的上下文中描述的各种特征也可以分别在多个实施例中或以任何合适的子组合来实现。此外,尽管以上可以将特征描述为以某些组合起作用并且甚至最初如此要求保护,但是在某些情况下,可以从组合中剔除所要求保护的组合中的一个或多个特征,并且所要求保护的组合可以涉及子组合或子组合的变体。
类似地,虽然在附图中以特定顺序描绘了操作,但是这不应理解为要求以所示的特定顺序或以连续的顺序执行这样的操作,或者执行所有示出的操作以实现期望的效果。此外,在该专利文档中描述的实施例中的各种系统组件的分离不应被理解为在所有实施例中都需要这种分离。
仅描述了一些实施方式和示例,并且可以基于本专利文档中描述和示出的内容进行其他实施方式、增强和变化。

Claims (28)

1.一种视频处理方法,包括:
在包括多个分量的视频和所述视频的比特流之间的转换中,对所述多个分量的视频块应用去方块滤波器,
其中,根据规则确定所述多个分量中的每个分量的所述去方块滤波器的去方块滤波强度,
其中,所述规则规定使用不同的方式来确定所述多个分量中的每个分量的所述视频块的所述去方块滤波强度。
2.如权利要求1所述的方法,其中,所述多个分量至少包括Cb分量和Cr分量。
3.如权利要求1或2所述的方法,其中,所述多个分量中的每个分量与去方块参数偏移beta和tc相关联,所述去方块参数偏移包括视频单元中的第一语法元素beta_offset_div2和第二语法元素tc_offset_div2。
4.如权利要求3所述的方法,其中,所述视频单元包括对应于图片参数集的部分。
5.如权利要求3或4所述的方法,其中,所述视频单元包括对应于图片报头的部分。
6.如权利要求3至5任一所述的方法,其中,所述视频单元还包括对应于条带报头的部分。
7.如权利要求3至6任一所述的方法,其中,在将色度残差模式的联合编解码应用于所述视频块的情况下,不同的语法元素适用于颜色分量的视频块。
8.一种视频处理方法,包括:
执行视频的第一视频单元和所述视频的比特流之间的转换,
其中,在所述转换期间,对所述第一视频单元应用去方块滤波处理,并且
其中,基于在其他视频单元级别中累积一个或多个去方块控制偏移值,确定所述第一视频单元的去方块控制偏移。
9.如权利要求8所述的方法,其中,所述去方块控制偏移至少包括beta_offset_div2或tc_offset_div2。
10.如权利要求8或9所述的方法,其中,所述第一视频单元包括条带,并且其中,所述其他视频单元级别至少包括图片参数集或图片。
11.一种视频处理方法,包括:
对于视频的块和所述视频的比特流之间的转换,基于对所述块进行编解码的变换跳过(TS)模式或自适应颜色变换(ACT)模式的使用,确定去方块处理中使用的量化参数;以及
基于所述确定执行所述转换。
12.如权利要求11所述的方法,其中,基于Max(QpPrimeTsMin,qP)-(cu_act_enabled_flag[xTbY][yTbY]?N:0)确定所述量化参数,N为正整数并且qP为实数,其中,QpPrimeTsMin表示以所述TS模式编码的块的最小量化参数,其中,cu_act_enabled_flag为指示使用所述ACT模式的标志。
13.如权利要求11所述的方法,其中,基于Max(QpPrimeTsMin,qP-(cu_act_enabled_flag[xTbY][yTbY]?N:0))确定所述量化参数,N为正整数并且qP为实数,其中,QpPrimeTsMin表示以所述TS模式编码的块的最小量化参数,其中,cu_act_enabled_flag为指示使用所述ACT模式的标志。
14.如权利要求12或13所述的方法,其中,qP等于Cb或Cr分量的色度量化参数。
15.如权利要求12至14任一所述的方法,其中,对于不同颜色分量的块,N是不同的。
16.如权利要求15所述的方法,其中,在所述块为Cb、B、G或U分量的情况下,N等于5。
17.如权利要求15所述的方法,其中,在所述块为Cr、R、B或V分量的情况下,N等于3。
18.一种视频处理方法,包括:
执行视频的颜色分量的块和所述视频的比特流之间的转换,
其中,所述比特流符合规则,所述规则规定所述颜色分量的量化组的尺寸大于阈值K,其中,所述量化组包括一个或多个携带量化参数的编解码单元。
19.如权利要求18所述的方法,其中,所述尺寸包括所述量化组的宽度。
20.如权利要求18或19所述的方法,其中,所述颜色分量为色度分量。
21.如权利要求20所述的方法,其中,K为4。
22.如权利要求18或19所述的方法,其中,所述颜色分量为亮度分量。
23.如权利要求22所述的方法,其中,K为8。
24.如权利要求1至23任一所述的方法,其中,所述转换包括将所述视频编码为所述比特流。
25.如权利要求1至23任一所述的方法,其中,所述转换包括将所述比特流解码为所述视频。
26.一种视频处理装置,包括处理器,所述处理器被配置为实施如权利要求1至25任一项所述的方法。
27.一种其上存储有代码的计算机可读介质,所述代码在由处理器执行时,使所述处理器实施如权利要求1至25中任一项所述的方法。
28.一种计算机可读介质,其中,所述计算机可读介质存储根据权利要求1至25中任一项生成的比特流。
CN202080085422.7A 2019-12-09 2020-12-08 视频编解码中使用的量化组 Pending CN114788279A (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
CN2019123951 2019-12-09
CNPCT/CN2019/123951 2019-12-09
CNPCT/CN2019/130851 2019-12-31
CN2019130851 2019-12-31
PCT/US2020/063746 WO2021118977A1 (en) 2019-12-09 2020-12-08 Using quantization groups in video coding

Publications (1)

Publication Number Publication Date
CN114788279A true CN114788279A (zh) 2022-07-22

Family

ID=76330418

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080085422.7A Pending CN114788279A (zh) 2019-12-09 2020-12-08 视频编解码中使用的量化组

Country Status (6)

Country Link
US (2) US11902518B2 (zh)
EP (1) EP4055827A4 (zh)
JP (2) JP2023504574A (zh)
KR (1) KR20220106116A (zh)
CN (1) CN114788279A (zh)
WO (1) WO2021118977A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102464910B1 (ko) * 2019-02-28 2022-11-09 삼성전자주식회사 크로마 성분을 예측하는 비디오 부호화 및 복호화 방법, 및 크로마 성분을 예측하는 비디오 부호화 및 복호화 장치

Family Cites Families (99)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5512953A (en) 1994-08-09 1996-04-30 At&T Corp. Method and apparatus for conversion of compressed bit stream representation of video signal
US7123655B2 (en) 2001-08-09 2006-10-17 Sharp Laboratories Of America, Inc. Method for reduced bit-depth quantization
US7190723B2 (en) 2002-03-27 2007-03-13 Scientific-Atlanta, Inc. Digital stream transcoder with a hybrid-rate controller
US7227901B2 (en) 2002-11-21 2007-06-05 Ub Video Inc. Low-complexity deblocking filter
US20040146108A1 (en) 2003-01-23 2004-07-29 Shih-Chang Hsia MPEG-II video encoder chip design
US7227585B1 (en) 2003-12-30 2007-06-05 Conexant Systems, Inc. Luminance and chrominance separation system
US9185426B2 (en) 2008-08-19 2015-11-10 Broadcom Corporation Method and system for motion-compensated frame-rate up-conversion for both compressed and decompressed video bitstreams
MX353107B (es) 2010-04-09 2017-12-19 Mitsubishi Electric Corp Dispositivo codificador de imagen en movimiento y dispositivo decodificador de imagen en movimiento.
JP2011259362A (ja) 2010-06-11 2011-12-22 Sony Corp 画像処理装置および方法
US8891617B2 (en) * 2011-01-18 2014-11-18 Google Inc. Method and system for processing video data
US10409892B2 (en) 2011-01-26 2019-09-10 Microsoft Technology Licensing, Llc Formatting data by example
KR101566366B1 (ko) 2011-03-03 2015-11-16 한국전자통신연구원 색차 성분 양자화 매개 변수 결정 방법 및 이러한 방법을 사용하는 장치
US9143805B2 (en) 2011-07-14 2015-09-22 Panasonic Intellectual Property Corporation Of America Method of image coding chrominance signal and method of image decoding chrominance signal
US8964833B2 (en) 2011-07-19 2015-02-24 Qualcomm Incorporated Deblocking of non-square blocks for video coding
US9510020B2 (en) 2011-10-20 2016-11-29 Qualcomm Incorporated Intra pulse code modulation (IPCM) and lossless coding mode deblocking for video coding
US9807403B2 (en) 2011-10-21 2017-10-31 Qualcomm Incorporated Adaptive loop filtering for chroma components
US9161046B2 (en) 2011-10-25 2015-10-13 Qualcomm Incorporated Determining quantization parameters for deblocking filtering for video coding
US20130107973A1 (en) 2011-10-28 2013-05-02 Qualcomm Incorporated Loop filtering control over tile boundaries
WO2013074365A1 (en) 2011-11-18 2013-05-23 Dolby Laboratories Licensing Corporation Subjective based post-filter optimization
US9538200B2 (en) 2012-01-19 2017-01-03 Qualcomm Incorporated Signaling of deblocking filter parameters in video coding
US9451258B2 (en) 2012-04-03 2016-09-20 Qualcomm Incorporated Chroma slice-level QP offset and deblocking
GB2501535A (en) 2012-04-26 2013-10-30 Sony Corp Chrominance Processing in High Efficiency Video Codecs
US9414054B2 (en) 2012-07-02 2016-08-09 Microsoft Technology Licensing, Llc Control and use of chroma quantization parameter values
US9591302B2 (en) 2012-07-02 2017-03-07 Microsoft Technology Licensing, Llc Use of chroma quantization parameter offsets in deblocking
US10448032B2 (en) 2012-09-04 2019-10-15 Qualcomm Incorporated Signaling of down-sampling location information in scalable video coding
GB2506852B (en) 2012-09-28 2015-09-30 Canon Kk Method and device for determining the value of a quantization parameter
TWI610574B (zh) 2012-09-29 2018-01-01 微軟技術授權有限責任公司 於解塊中色度量化參數偏移之使用
JP2014116733A (ja) 2012-12-07 2014-06-26 Canon Inc 画像符号化装置、画像符号化方法及びプログラム、画像復号装置、画像復号方法及びプログラム
AU2013200051B2 (en) 2013-01-04 2016-02-11 Canon Kabushiki Kaisha Method, apparatus and system for de-blocking video data
EP2941871A2 (en) 2013-01-07 2015-11-11 VID SCALE, Inc. Enhanced deblocking filters for video coding
US9225991B2 (en) 2013-05-30 2015-12-29 Apple Inc. Adaptive color space transform coding
US11323747B2 (en) 2013-06-05 2022-05-03 Qualcomm Incorporated Residual differential pulse code modulation (DPCM) extensions and harmonization with transform skip, rotation, and scans
US20140376611A1 (en) 2013-06-21 2014-12-25 Qualcomm Incorporated Adaptive color transforms for video coding
US9294766B2 (en) 2013-09-09 2016-03-22 Apple Inc. Chroma quantization in video coding
WO2015054811A1 (en) 2013-10-14 2015-04-23 Microsoft Corporation Features of intra block copy prediction mode for video and image coding and decoding
EP3058736B1 (en) * 2013-10-14 2019-02-27 Microsoft Technology Licensing, LLC Encoder-side options for intra block copy prediction mode for video and image coding
BR122022001646B1 (pt) * 2014-03-04 2023-03-07 Microsoft Technology Licensing, Llc Dispositivo de memória ou armazenamento legível por computador, método e sistema de computador
US9948933B2 (en) 2014-03-14 2018-04-17 Qualcomm Incorporated Block adaptive color-space conversion coding
KR20200014945A (ko) 2014-03-14 2020-02-11 브이아이디 스케일, 인크. Rgb 비디오 코딩 향상을 위한 시스템 및 방법
AU2014202921B2 (en) * 2014-05-29 2017-02-02 Canon Kabushiki Kaisha Method, apparatus and system for de-blocking a block of video samples
US10142642B2 (en) 2014-06-04 2018-11-27 Qualcomm Incorporated Block adaptive color-space conversion coding
US10136141B2 (en) 2014-06-11 2018-11-20 Qualcomm Incorporated Determining quantization parameter (QP) values and delta QP values for palette coded blocks in video coding
US9924175B2 (en) 2014-06-11 2018-03-20 Qualcomm Incorporated Determining application of deblocking filtering to palette coded blocks in video coding
US20150373327A1 (en) 2014-06-20 2015-12-24 Qualcomm Incorporated Block adaptive color-space conversion coding
JP6194427B2 (ja) 2014-10-06 2017-09-06 テレフオンアクチーボラゲット エルエム エリクソン(パブル) 量子化パラメータのコーディング及び導出
US9883184B2 (en) 2014-10-07 2018-01-30 Qualcomm Incorporated QP derivation and offset for adaptive color transform in video coding
US9854201B2 (en) 2015-01-16 2017-12-26 Microsoft Technology Licensing, Llc Dynamically updating quality to higher chroma sampling rate
US10057574B2 (en) 2015-02-11 2018-08-21 Qualcomm Incorporated Coding tree unit (CTU) level adaptive loop filter (ALF)
CN107534783B (zh) 2015-02-13 2020-09-08 联发科技股份有限公司 图像中区块的调色板索引图编解码方法
US20160286226A1 (en) 2015-03-24 2016-09-29 Nokia Technologies Oy Apparatus, a method and a computer program for video coding and decoding
EP3354019A4 (en) 2015-09-23 2019-05-22 Telefonaktiebolaget LM Ericsson (publ) DETERMINATION OF QUANTIZATION PARAMETER VALUES
US20170105014A1 (en) 2015-10-08 2017-04-13 Qualcomm Incorporated Luma-driven chroma scaling for high dynamic range and wide color gamut contents
WO2017093189A1 (en) 2015-11-30 2017-06-08 Telefonaktiebolaget Lm Ericsson (Publ) Encoding of pictures in a video
US11064195B2 (en) 2016-02-15 2021-07-13 Qualcomm Incorporated Merging filters for multiple classes of blocks for video coding
US10419755B2 (en) 2016-05-16 2019-09-17 Qualcomm Incorporated Confusion of multiple filters in adaptive loop filtering in video coding
WO2018018486A1 (en) 2016-07-28 2018-02-01 Mediatek Inc. Methods of reference quantization parameter derivation for signaling of quantization parameter in quad-tree plus binary tree structure
US11095922B2 (en) 2016-08-02 2021-08-17 Qualcomm Incorporated Geometry transformation-based adaptive loop filtering
US10419757B2 (en) 2016-08-31 2019-09-17 Qualcomm Incorporated Cross-component filter
US20180091812A1 (en) 2016-09-23 2018-03-29 Apple Inc. Video compression system providing selection of deblocking filters parameters based on bit-depth of video data
US10506230B2 (en) 2017-01-04 2019-12-10 Qualcomm Incorporated Modified adaptive loop filter temporal prediction for temporal scalability support
US20180199057A1 (en) 2017-01-12 2018-07-12 Mediatek Inc. Method and Apparatus of Candidate Skipping for Predictor Refinement in Video Coding
US10708591B2 (en) 2017-03-20 2020-07-07 Qualcomm Incorporated Enhanced deblocking filtering design in video coding
US10212456B2 (en) 2017-06-02 2019-02-19 Apple Inc. Deblocking filter for high dynamic range (HDR) video
JP7406378B2 (ja) 2017-06-21 2023-12-27 ヴィド スケール インコーポレイテッド 360度ビデオ符号化のための適応的量子化
EP3649782A4 (en) 2017-07-05 2021-04-14 Telefonaktiebolaget LM Ericsson (PUBL) DECODING A BLOCK OF VIDEO SAMPLE
US10778974B2 (en) 2017-07-05 2020-09-15 Qualcomm Incorporated Adaptive loop filter with enhanced classification methods
US11019339B2 (en) 2017-07-12 2021-05-25 Futurewei Technologies, Inc. Fractional quantization parameter offset in video compression
GB2575090A (en) 2018-06-28 2020-01-01 Canon Kk Method and apparatus for deblocking filtering a block of pixels
US10616577B2 (en) * 2017-10-16 2020-04-07 Intel Corporation Adaptive video deblocking
US10812798B2 (en) 2017-10-19 2020-10-20 Qualcomm Incorporated Chroma quantization parameter (QP) offset
EP3704858A1 (en) 2017-11-01 2020-09-09 Vid Scale, Inc. Methods for simplifying adaptive loop filter in video coding
US10972729B2 (en) 2018-01-20 2021-04-06 Qualcomm Incorporated Deblocking filter selection and application in video coding
US20190238845A1 (en) 2018-01-26 2019-08-01 Qualcomm Incorporated Adaptive loop filtering on deblocking filter results in video coding
CN116567230A (zh) 2018-03-30 2023-08-08 夏普株式会社 用于将解块滤波器应用于重构视频数据的方法和设备
US10708592B2 (en) 2018-04-02 2020-07-07 Qualcomm Incorporated Deblocking filter for video coding and processing
US20190306502A1 (en) 2018-04-02 2019-10-03 Qualcomm Incorporated System and method for improved adaptive loop filtering
EP3554074A1 (en) 2018-04-13 2019-10-16 Thomson Licensing Methods and apparatus for depth encoding and decoding
KR101997681B1 (ko) 2018-06-11 2019-07-08 광운대학교 산학협력단 양자화 파라미터 기반의 잔차 블록 부호화/복호화 방법 및 장치
US20200213570A1 (en) 2019-01-02 2020-07-02 Mediatek Inc. Method for processing projection-based frame that includes at least one projection face and at least one padding region packed in 360-degree virtual reality projection layout
CN113383554B (zh) 2019-01-13 2022-12-16 北京字节跳动网络技术有限公司 LUT和共享Merge列表之间的交互
EP3931746A4 (en) 2019-02-27 2022-05-11 Huawei Technologies Co., Ltd. CHANNEL ILLUSTRATION WITH COLOR SCALING ADJUSTMENT PARAMETERS IN VIDEO ENCODING
CN113545036B (zh) 2019-03-02 2023-11-28 北京字节跳动网络技术有限公司 对环路内滤波的限制
CN113574889B (zh) 2019-03-14 2024-01-12 北京字节跳动网络技术有限公司 环路整形信息的信令和语法
JP7234406B2 (ja) 2019-03-24 2023-03-07 北京字節跳動網絡技術有限公司 ビデオ処理における非線形適応ループフィルタリング
WO2020192726A1 (en) 2019-03-27 2020-10-01 Beijing Bytedance Network Technology Co., Ltd. History-based motion vector prediction
TWI739386B (zh) 2019-04-11 2021-09-11 聯發科技股份有限公司 具有適應性參數集之適應性迴路濾波器
JP7405865B2 (ja) 2019-04-15 2023-12-26 北京字節跳動網絡技術有限公司 非線形適応ループフィルタにおけるパラメータの時間的予測
WO2020211809A1 (en) 2019-04-16 2020-10-22 Beijing Bytedance Network Technology Co., Ltd. On adaptive loop filtering for video coding
CN114026868A (zh) * 2019-04-25 2022-02-08 Op方案有限责任公司 帧间预测中全局运动约束的运动矢量
US11381819B2 (en) 2019-07-05 2022-07-05 Qualcomm Incorporated Chroma delta quantization parameter (QP) in video coding
EP3868101B1 (en) 2019-08-23 2024-04-10 Huawei Technologies Co., Ltd. An encoder, a decoder and corresponding methods for performing chroma deblocking for blocks which use joint chroma coding
WO2021040481A1 (ko) 2019-08-29 2021-03-04 엘지전자 주식회사 크로스 컴포넌트 필터링 기반 영상 코딩 장치 및 방법
US20210076032A1 (en) 2019-09-09 2021-03-11 Qualcomm Incorporated Filter shapes for cross-component adaptive loop filter with different chroma formats in video coding
WO2021051046A1 (en) 2019-09-14 2021-03-18 Bytedance Inc. Quantization parameter for chroma deblocking filtering
BR112022005394A2 (pt) 2019-09-24 2022-06-21 Huawei Tech Co Ltd Simplificação de dependência de mensagem sei em codificação de vídeo
KR20220073745A (ko) 2019-10-14 2022-06-03 바이트댄스 아이엔씨 비디오 처리에서 크로마 잔차 및 필터링의 공동 코딩
CA3162821A1 (en) 2019-12-23 2021-07-01 Anand Meher Kotra Cross-component adaptive loop filtering for video coding
US11375200B2 (en) 2019-12-24 2022-06-28 Tencent America LLC Video coding method and device for controlling color component processing
WO2021138293A1 (en) 2019-12-31 2021-07-08 Bytedance Inc. Adaptive color transform in video coding

Also Published As

Publication number Publication date
JP2023504574A (ja) 2023-02-03
US20230291898A1 (en) 2023-09-14
WO2021118977A1 (en) 2021-06-17
KR20220106116A (ko) 2022-07-28
US11902518B2 (en) 2024-02-13
US20220321882A1 (en) 2022-10-06
EP4055827A1 (en) 2022-09-14
EP4055827A4 (en) 2023-01-18
JP2024023426A (ja) 2024-02-21

Similar Documents

Publication Publication Date Title
CN114586370B (zh) 在视频编解码中使用色度量化参数的方法、装置及介质
CN114208174B (zh) 预测过程中的调色板模式编解码
CN114402601B (zh) 色度去块滤波的量化参数偏移的方法及装置
CN114902657A (zh) 视频编解码中的自适应颜色变换
JP7444997B2 (ja) ビデオコーディングのためのクロスコンポーネント適応ループフィルタリング
CN114651442A (zh) 视频编解码中的跨分量适应性回路滤波
JP2024023426A (ja) ビデオコーディングにおける量子化グループの使用
CN114503597B (zh) 视频编解码中的色度去方块方法

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