CN118101967A - 用于视频编解码的位置相关空间变化变换 - Google Patents

用于视频编解码的位置相关空间变化变换 Download PDF

Info

Publication number
CN118101967A
CN118101967A CN202410234618.8A CN202410234618A CN118101967A CN 118101967 A CN118101967 A CN 118101967A CN 202410234618 A CN202410234618 A CN 202410234618A CN 118101967 A CN118101967 A CN 118101967A
Authority
CN
China
Prior art keywords
svt
block
residual block
transform
video
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
CN202410234618.8A
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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of CN118101967A publication Critical patent/CN118101967A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • 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/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • H04N19/122Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
    • 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/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • 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
    • 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/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/625Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using discrete cosine transform [DCT]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/96Tree coding, e.g. quad-tree coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Discrete Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Television Systems (AREA)

Abstract

本申请公开了一种用于视频编解码的位置相关空间变化变换(spatial varying transform,SVT)机制。解码器接收预测块和对应的变换残差块。确定用于生成所述变换残差块的空间变化变换(SVT)的类型。还确定所述SVT相对于所述变换残差块的位置。将所述SVT的逆应用于所述变换残差块以对重建残差块进行重建。然后,将所述重建的残差块与所述预测块组合以重建图像块。

Description

用于视频编解码的位置相关空间变化变换
本申请是分案申请,原申请的申请号是201980015113.X,原申请日是2019年02月04日,原申请的全部内容通过引用结合在本申请中。
相关申请案的交叉参考
本申请要求Yin Zhao等人于2018年2月23日提交的发明名称为“PositionDependent Spatial Varying Transform for Video Coding”的第62/634,613号美国临时专利申请,该在先申请的教示内容和公开内容在此以全文引用的方式并入本文。
技术领域
本申请涉及视频编解码领域,尤其涉及一种用于视频编解码的位置相关空间变化变换的方法和相关装置。
背景技术
视频编解码是将视频图像压缩成更小格式的过程。视频编解码使得经编码的视频在介质上存储时占用更少的空间。此外,视频编解码支持流媒体。具体地,内容提供商希望以越来越高的清晰度向终端用户提供媒体。此外,内容提供商希望根据需要提供媒体,而无需强迫用户等待较长时间段才能将此类媒体传输到终端用户设备,如电视、计算机、平板电脑、电话等。视频编解码压缩方面的进步可以减小视频文件的大小。因此,当与相应的内容分发系统结合应用时,支持上述两个目标。
发明内容
第一方面涉及一种在计算设备中实施的方法。所述方法包括:所述计算设备的处理器解析比特流以获得预测块和与所述预测块对应的变换残差块;所述处理器确定用于生成所述变换残差块的空间变化变换(SVT)的类型;所述处理器确定所述SVT相对于所述变换残差块的位置;所述处理器基于所述SVT的所述位置确定所述SVT的逆;所述处理器将所述SVT的所述逆应用于所述变换残差块以产生重建残差块;所述处理器将所述重建残差块与所述预测块组合以重建图像块。
所述方法有利于提高SVT的编码效率。在这方面,变换块相对于对应的残差块定位在各个候选位置。因此,所公开的机制基于候选位置对变换块采用不同的变换。
在根据所述第一方面的方法的第一实现方式中,所述SVT的所述类型为SVT垂直(SVT-V)类型或SVT水平(SVT-H)类型。
在根据所述第一方面或所述第一方面的任一前述实现方式的方法的第二实现方式中,所述SVT-V类型包括的高度等于所述变换残差块的高度,宽度为所述变换残差块的宽度的一半;所述SVT-H类型包括的高度为所述变换残差块的高度的一半,宽度等于所述变换残差块的宽度。
在根据所述第一方面或所述第一方面的任一前述实现方式的方法的第三实现方式中,解析所述比特流中的svt_type_flag以确定所述SVT的类型。
在根据所述第一方面或所述第一方面的任一前述实现方式的方法的第四实现方式中,当所述残差块只允许使用一种类型的SVT时,通过推断确定SVT的类型。
在根据所述第一方面或所述第一方面的任一前述实现方式的方法的第五实现方式中,解析所述比特流中的位置索引以确定所述SVT的位置。
在根据所述第一方面或所述第一方面的任一前述实现方式的方法的第六实现方式中,位置索引包括二进制代码,其中,所述二进制代码指示根据候选位置步长(CPSS)确定的候选位置集合中的位置。
在根据所述第一方面或所述第一方面的任一前述实现方式的方法的第七实现方式中,为所述SVT的最可能位置分配所述二进制代码中指示所述位置索引的最少比特数。
在根据所述第一方面或所述第一方面的任一前述实现方式的方法的第八实现方式中,当单个候选位置可用于所述SVT变换时,所述处理器推断所述SVT的位置。
在根据所述第一方面或所述第一方面的任一前述实现方式的方法的第九实现方式中,当通过帧间预测模式下的模板匹配生成所述残差块时,所述处理器推断所述SVT的位置。
在根据所述第一方面或所述第一方面的任一前述实现方式的方法的第十实现方式中,对位于所述残差块的左边界处的SVT垂直(SVT-V)类型变换采用逆离散正弦变换(DST)。
在根据所述第一方面或所述第一方面的任一前述实现方式的方法的第十一实现方式中,对位于所述残差块的顶边界处的SVT水平(SVT-H)类型变换采用逆DST。
在根据所述第一方面或所述第一方面的任一前述实现方式的方法的第十二实现方式中,对位于所述残差块的右边界处的SVT-V类型变换采用逆离散余弦变换(DCT)。
在根据所述第一方面或所述第一方面的任一前述实现方式的方法的第十三实现方式中,对位于所述残差块的底边界处的SVT-H类型变换采用逆DCT。
在根据所述第一方面或所述第一方面的任一前述实现方式的方法的第十四实现方式中,当与所述重建残差块相关联的编码单元的右侧相邻编码单元已经重建且所述编码单元的左侧相邻编码单元还未重建时,在将所述重建残差块与所述预测块组合之前,水平翻转所述重建残差块中的样本。
第二方面涉及一种在计算设备中实施的方法。所述方法包括:从视频捕获设备接收视频信号,其中,所述视频信号包括图像块;所述计算设备的处理器生成预测块和残差块以表示所述图像块;所述处理器基于所述SVT相对于所述残差块的位置,选择用于空间变化变换(SVT)的变换算法;所述处理器使用所选择的所述SVT将所述残差块转换为变换残差块;所述处理器将所述SVT的类型编码到比特流中;所述处理器将所述SVT的位置编码到所述比特流中;所述处理器将所述预测块和所述变换残差块编码到所述比特流中以传输给解码器。
所述方法有利于提高SVT的编码效率。在这方面,变换块相对于对应的残差块定位在各个候选位置。因此,所公开的机制基于候选位置对变换块采用不同的变换。
在根据所述第二方面的方法的第一实现方式中,所述SVT的所述类型为SVT垂直(SVT-V)类型或SVT水平(SVT-H)类型。
在根据所述第二方面或所述第二方面的任一前述实现方式的方法的第二实现方式中,所述SVT-V类型包括的高度等于所述变换残差块的高度,宽度为所述变换残差块的宽度的一半。
在根据所述第二方面或所述第二方面的任一前述实现方式的方法的第三实现方式中,所述SVT-H类型包括的高度为所述变换残差块的高度的一半,宽度等于所述变换残差块的宽度。
在根据所述第二方面或所述第二方面的任一前述实现方式的方法的第四实现方式中,所述SVT的所述位置在位置索引中进行编码。
在根据所述第二方面或所述第二方面的任一前述实现方式的方法的第五实现方式中,位置索引包括二进制代码,其中,所述二进制代码指示根据候选位置步长(CPSS)确定的候选位置集合中的位置。
在根据所述第二方面或所述第二方面的任一前述实现方式的方法的第六实现方式中,为所述SVT的最可能位置分配所述二进制代码中指示所述位置索引的最少比特数。
在根据所述第二方面或所述第二方面的任一前述实现方式的方法的第七实现方式中,所述处理器对位于所述残差块的左边界处的SVT垂直(SVT-V)类型变换采用离散正弦变换(DST)算法。
在根据所述第二方面或所述第二方面的任一前述实现方式的方法的第八实现方式中,所述处理器对位于所述残差块的顶边界处的SVT水平(SVT-H)类型变换选择DST算法。
在根据所述第二方面或所述第二方面的任一前述实现方式的方法的第九实现方式中,所述处理器对位于所述残差块的右边界处的SVT-V类型变换选择离散余弦变换(DST)算法。
在根据所述第二方面或所述第二方面的任一前述实现方式的方法的第十实现方式中,所述处理器对位于所述残差块的底边界处的SVT-H类型变换选择DCT算法。
在根据所述第二方面或所述第二方面的任一前述实现方式的方法的第十一实现方式中,所述方法还包括:当与所述残差块相关联的编码单元的右侧相邻编码单元已经编码且所述编码单元的左侧相邻编码单元还未编码时,在所述处理器将所述残差块转换成所述变换残差块之前,所述处理器水平翻转所述残差块中的样本。
第三方面涉及一种编解码装置,包括:接收器,用于接收图像进行编码或接收比特流进行解码;耦合到所述接收器的发射器,其中,所述发射器用于将所述比特流传输到解码器或将解码图像传输到显示器;耦合到所述接收器或所述发射器中的至少一个的存储器,其中,所述存储器用于存储指令;耦合到所述存储器的处理器,其中,所述处理器用于执行所述存储器中存储的所述指令以执行前述方面或实现方式中任一项的方法。
所述编解码装置有利于提高SVT的编码效率。在这方面,变换块相对于对应的残差块定位在各个候选位置。因此,所公开的机制基于候选位置对变换块采用不同的变换。
在根据所述第三方面的装置的第一实现方式中,所述装置还包括用于显示图像的显示器。
第四方面涉及一种系统,其中,所述系统包括编码器和与所述编码器通信的解码器。所述编码器或所述解码器包括前述方面或实现方式种任一项的编解码装置。
所述系统有利于提高SVT的编码效率。在这方面,变换块相对于对应的残差块定位在各个候选位置。因此,所公开的机制基于候选位置对变换块采用不同的变换。
第五方面涉及一种用于编解码的构件,包括:接收构件,用于接收图像进行编码或接收比特流进行解码;耦合到所述接收构件的传输构件,其中,所述传输构件用于将所述比特流传输到解码器或将解码图像传输到显示构件;耦合到所述接收构件或所述传输构件中的至少一个的存储构件,其中,所述存储构件用于存储指令;耦合到所述存储构件的处理构件,其中,所述处理构件用于执行所述存储构件中存储的所述指令以执行前述方面或实现方式中任一项的方法。
所述用于编解码的构件有利于提高SVT的编码效率。在这方面,变换块相对于对应的残差块定位在各个候选位置。因此,所公开的机制基于候选位置对变换块采用不同的变换。
为了清楚起见,上述任一实施例可以与上述其他实施例中的任意一个或多个实施例结合,在本发明的范围内创建新的实施例。
根据以下详细说明结合附图和权利要求将能更清楚地理解这些和其他特征。
附图说明
为了更透彻地理解本发明,现参阅结合附图和具体实施方式而描述的以下简要说明,其中的相同参考标号表示相同部分。
图1是示出了可以利用空间变化变换(SVT)变换的示例性编码系统的框图。
图2是示出了可以利用空间SVT变换的示例性编码系统的框图。
图3是示出了可以利用空间SVT变换的视频解码器示例的框图。
图4是视频编解码中采用的帧内预测模式的示意图。
图5示出了视频编解码中的帧内预测的示例。
图6是示例性视频编码机制的示意图。
图7示出了示例性SVT变换。
图8示出了示例性SVT变换。
图9示出了相对于残余块的示例性SVT变换候选位置。
图10示出了相对于残余块的示例性SVT变换位置。
图11示出了残差样本水平翻转的示例。
图12是利用位置相关SVT进行视频解码的示例性方法的流程图。
图13是视频编解码的示例性方法的流程图。
图14是视频编解码的示例性方法的流程图。
图15是用于视频编解码的示例性计算设备的示意图。
图16是用于编解码的构件的实施例的示意图。
具体实施方式
首先应理解,尽管下文提供一个或多个实施例的说明性实现方式,但所公开的系统和/或方法可使用任何数量的技术来实施,无论该技术是当前已知还是现有的。本发明决不应限于下文所说明的说明性实现方式、附图和技术,包括本文所说明并描述的示例性设计和实现方式,而是可在所附权利要求书的范围以及其等效物的完整范围内修改。
现在称为高效视频编解码(High Efficiency Video Coding,HEVC)的标准是由国际电信联盟电信标准分局(International Telecommunication Union-Telecommunication Standardization Sector,ITU-T)研究组的视频编解码专家组成的联合协作团队(Joint Collaborative Team on Video Coding,JCT-VC)开发的一种高级视频编解码系统。关于HEVC标准的细节见ITU-T Rec.H.265和国际标准化组织(InternationalOrganization for Standardization,ISO)/国际电工委员会(InternationalElectrotechnical Commission,IEC)23008-2(2013),高效视频编解码,终稿批准日期:2013年1月(ITU-T于2013年6月正式发布,ISO/IEC于2013年11月发布),其以引用的方式并入本文中。HEVC的概述见G.J.Sullivan、J.-R.Ohm、W.-J.Han和T.Wiegand,“Overview ofthe High Efficiency Video Coding(HEVC)Standard”,IEEE Trans.Circuits andSystems for Video Technology,第22卷,第12期,第1649-1668页,2012年12月,其以引用的方式并入本文中。
图1是示出了示例性编码系统10的框图,其中,该示例性编码系统10可以利用视频编解码技术,如使用SVT机制进行编码。如图1所示,编码系统10包括源设备12,其中,该源设备12提供后续由目的设备14解码的经编码的视频数据。特别地,源设备12可以经由计算机可读介质16向目的设备14提供视频数据。源设备12和目的设备14可以包括以下多种设备中的任一种,包括台式电脑、笔记本(例如,膝上型)电脑、平板电脑、机顶盒、诸如所谓的“智能”手机和“智能”平板等的电话手持机、电视、摄像机、显示设备、数字媒体播放器、视频游戏机、视频流设备等。在某些情况下,可配备源设备12和目的设备14用于无线通信。
目的设备14可以经由计算机可读介质16接收待解码的经编码的视频数据。计算机可读介质16可以包括任何类型的能够将经编码的视频数据从源设备12移动到目的设备14的介质或设备。在一个示例中,计算机可读介质16可以包括通信介质,以使得源设备12能够将经编码的视频数据直接实时地传输到目的设备14。经编码的视频数据可以根据诸如无线通信协议等的通信标准进行调制,并传输到目的设备14。所述通信介质可以包括任何无线或有线通信介质,如射频(radio frequency,RF)频谱或一条或多条物理传输线。所述通信介质可以构成分组网络(如局域网、广域网或如互联网等全球网络)的一部分。所述通信介质可以包括路由器、交换机、基站或任何其他可用于促进源设备12和目的设备14进行通信的设备。
在一些示例中,可以将经编码的数据从输出接口22输出到存储设备。类似地,可以通过输入接口从存储设备访问经编码的数据。所述存储设备可以包括任一种分布式或本地访问的数据存储介质,如硬盘驱动器、蓝光光盘、数字视频磁盘(digital video disk,DVD)、只读光盘存储器(Compact Disc Read-Only Memory,CD-ROM)、闪存、易失性或非易失性存储器,或任何其他合适的用于存储经编码的视频数据的数字存储介质。在另一示例中,存储设备可以对应于文件服务器或可以存储源设备12生成的经编码的视频数据的另一中间存储设备。目的设备14可以经由流式传输或下载从存储设备中访问所存储的视频数据。所述文件服务器可以是任何类型的能够存储经编码的视频数据并将该经编码的视频数据传输到目的设备14的服务器。示例性文件服务器包括万维网服务器(例如,用于网站)、文件传输协议(file transfer protocol,FTP)服务器、网络附属存储(network attachedstorage,NAS)设备或本地磁盘驱动器。目的设备14可以通过任何标准数据连接(包括因特网连接)访问经编码的视频数据。所述标准数据连接可以包括无线信道(例如,Wi-Fi连接)、有线连接(例如,数字用户线(digital subscriber line,DSL)、电缆调制解调器等)或适用于访问存储在文件服务器上的经编码的视频数据的两者的组合。存储设备中经编码的视频数据的传输可以是流式传输、下载传输或其组合。
本发明的技术不一定限于无线应用或设置。这些技术可以应用于视频编解码以支持任一种多媒体应用,如空中电视广播、有线电视传输、卫星电视传输、互联网流视频传输(如HTTP动态自适应流媒体(dynamic adaptive streaming over HTTP,DASH)、在数据存储介质上编码的数字视频、数据存储介质中存储的数字视频的解码)或其他应用。在一些示例中,系统10可用于支持单向或双向视频传输,以支持如视频流式传输、视频播放、视频广播和/或视频电话等应用。
在图1的示例中,源设备12包括视频源18、视频编码器20和输出接口22。目的设备14包括输入接口28、视频解码器30和显示设备32。根据本发明,源设备12的视频编码器20和/或目的设备14的视频解码器30可用于应用视频编解码技术。在其他示例中,源设备和目的设备可以包括其他组件或布置。例如,源设备12可以从外部视频源(如外部摄像机)接收视频数据。同样地,目的设备14可以与外部显示设备连接,而非包括集成显示设备。
图1所示的编码系统10仅是一个示例。视频编解码技术可以由任何数字视频编码和/或解码设备执行。尽管本发明的技术通常由视频编解码设备执行,但这些技术也可以由视频编码器/解码器(通常称为“编解码器”)执行。此外,本发明的技术还可以由视频预处理器执行。视频编码器和/或解码器可以是图形处理器(graphics processing unit,GPU)或类似设备。
源设备12和目的设备14仅是此类编解码设备的示例,其中,源设备12生成经编码的视频数据以传输到目的设备14。在一些示例中,源设备12和目的设备14可以基本上对称地操作,使得源设备12和目的设备14都包括视频编码和解码组件。因此,编码系统10可以支持视频设备12、14之间的单向或双向视频传输,以用于视频流式传输、视频播放、视频广播、视频电话等。
源设备12的视频源18可以包括视频捕获设备(如视频摄像机)、包括先前捕获的视频的视频存档,和/或用于从视频内容提供商接收视频的视频馈送接口。可选地,视频源18可以生成基于计算机图形的数据作为源视频,或作为直播视频、存档视频和计算机生成视频的组合。
在一些情况下,当视频源18是视频摄像机时,源设备12和目的设备14可以形成所谓的摄像头手机或视频手机。然而,如上所述,本发明中描述的技术通常可用于视频编解码,也可用于无线和/或有线应用。在每种情况下,可以由视频编码器20对所捕获、预捕获或计算机生成的视频进行编码。然后,可以通过输出接口22将经编码的视频信息输出到计算机可读介质16。
计算机可读介质16可以包括瞬态介质,如无线广播或有线网络传输,也可以包括存储介质(即非瞬时性存储介质),如硬盘、闪存驱动器、光盘、数字视频光盘、蓝光光盘,或其他计算机可读介质。在一些示例中,网络服务器(未示出)可以从源设备12接收经编码的视频数据,并经由网络传输等向目的设备14提供经编码的视频数据。类似地,介质生产设施(如光盘冲压设施)的计算设备可以从源设备12接收经编码的视频数据,并产生包括经编码的视频数据的光盘。因此,在各种示例中,计算机可读介质16可理解为包括一个或多个各种形式的计算机可读介质。
目的设备14的输入接口28从计算机可读介质16接收信息。计算机可读介质16的信息可以包括视频编码器20定义的语法信息。该语法信息也由视频解码器30使用,包括描述块和其他编码单元(例如,图像组(group of picture,GOP))的特征和/或处理的语法元素。显示设备32将经解码的视频数据显示给用户,可以包括任一种显示设备,如阴极射线管(cathode ray tube,CRT)、液晶显示器(liquid crystal display,LCD)、等离子体显示器、有机发光二极体(organic light emitting diode,OLED)显示器或其他类型的显示设备。
视频编码器20和视频解码器30可以根据视频编解码标准(如目前正在开发的高效视频编解码(HEVC)标准)进行操作,并且可以符合HEVC测试模型(HEVC Test Model,HM)。或者,视频编码器20和视频解码器30可以根据其他专有或行业标准进行操作,如国际电信联盟电信标准化部门(ITU-T)H.264标准,或者称为运动图像专家组(Motion Picture ExpertGroup,MPEG)-4,第10部分、高级视频编解码(Advanced Video Coding,AVC)、H.265/HEVC及此类标准的扩展。然而,本发明的技术不限于任何特定的编码标准。视频编解码标准的其他示例包括MPEG-2和ITU-T H.263。尽管在图1中未示出,但是在一些方面中,视频编码器20和视频解码器30可以各自与音频编码器和音频解码器集成,并且可以包括适当的复用器-解复用器(multiplexer-demultiplexer,MUX-DEMUX)单元或其他硬件和软件,以对通用数据流或单独数据流中的音频和视频均进行编码处理。如果适用,MUX-DEMUX单元可以符合ITUH.223复用器协议,或如用户数据报协议(user datagram protocol,UDP)等其他协议。
视频编码器20和视频解码器30可以各自实现为任一种合适的编码器电路,如一个或多个微处理器、数字信号处理器(digital signal processor,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现场可编程门阵列(fieldprogrammable gate array,FPGA)、离散逻辑、软件、硬件、固件或其任何组合。当所述技术部分地以软件形式实现时,设备可将软件的指令存储在合适的非瞬时性计算机可读介质中,并且使用一个或多个处理器以硬件形式执行所述指令,以执行本发明的技术。视频编码器20和视频解码器30都可以包括在一个或多个编码器或解码器中,且都可以作为组合式编码器/解码器(编解码器)的一部分集成在对应设备中。包括视频编码器20和/或视频解码器30的设备可以包括集成电路、微处理器和/或如蜂窝电话等无线通信设备。
图2是示出了可以实施视频编解码技术的视频编码器20的示例的框图。视频编码器20可以执行视频片内的视频块的帧内和帧间编码。帧内编码依赖于空间预测来减少或去除给定视频帧或图像内视频中的空间冗余。帧间编码依赖于时间预测来减少或去除视频序列的相邻帧或图像内视频中的时间冗余。帧内模式(I模式)可以指几种基于空间的编码模式中的任意一种。帧间模式,如单向(也称为,uni预测)预测(P模式)或双向预测(也称为,bi预测)(B模式)可以指几种基于时间的编码模式中的任意一种。
如图2所示,视频编码器20接收待编码的视频帧内的当前视频块。在图2的示例中,视频编码器20包括模式选择单元40、参考帧存储器64、加法器50、转换处理单元52、量化单元54以及熵编码单元56。模式选择单元40依次包括运动补偿单元44、运动估计单元42、帧内预测(也称为,帧内预测)单元46和分割单元48。为了视频块重建,视频编码器20还包括反量化单元58、逆变换单元60和加法器62。也可以包括去块滤波器(图2中未示出),以过滤块边界,从而从重建视频去除成块性假影。如果需要,去块滤波器通常将过滤加法器62的输出。除去块滤波器外,还可以使用附加滤波器(在环路或后环路中)。此类滤波器不是为了简洁而示出,但是如果需要,可以过滤加法器50的输出(作为内环滤波器)。
在编码过程中,视频编码器20接收待编码的视频帧或片。帧或片可以分割为多个视频块。运动估计单元42和运动补偿单元44相对于一个或多个参考帧中的一个或多个块对所接收视频块执行帧间预测编码以提供时间预测。帧内预测单元46还可以相对于与待编码块位于同一帧或片内的一个或多个相邻块对所接收的视频块进行帧内预测编码以提供空间预测。视频编码器20可以执行多个编码通道,例如,为每个视频数据块选择适当的编码模式。
此外,分割单元48可以基于在先前编码通道中对先前分割方案的评估将视频数据的块分割成子块。例如,分割单元48可初始地将帧或片分割成最大编码单元(largestcoding unit,LCU),并且基于速率失真分析(例如,速率失真优化)将每个LCU分割成子编码单元(子CU)。模式选择单元40可以进一步产生指示将LCU分割成子CU的四叉树数据结构。四叉树的叶节点CU可以包括一个或多个预测单元(prediction unit,PU)和一个或多个变换单元(transform unit,TU)。
本发明使用术语“块”来指代在HEVC上下文中CU、PU或TU中的任一个,或在其他标准上下文中的类似数据结构(例如,H.264/AVC中的宏块及其子块)。CU包括编码节点、与编码节点关联的PU和TU。CU的大小与编码节点的大小相对应,呈正方形。CU的大小范围可以为8×8个像素到最大值为64×64个像素或更大的树块大小。每个CU可以包括一个或多个PU和一个或多个TU。例如,与CU相关联的语法数据可以描述将CU分割为一个或多个PU。是跳过CU还是对CU进行直接模式编码、帧内预测模式编码或帧间预测(也称为,帧间预测)模式编码,分割模式可能有所不同。可以将PU分割为非正方形。例如,与CU相关联的语法数据还可以描述根据四叉树将CU分割为一个或多个TU。TU可以是正方形或非正方形(例如,矩形)。
模式选择单元40可以基于错误结果等选择帧内或帧间编码模式中的一个,将所得帧内或帧间编码块提供给加法器50以生成残差块数据,并提供给加法器62来重建编码块以用作参考帧。模式选择单元40还将语法元素,如运动向量、帧内模式指示符、分割信息和其他此类语法信息提供给熵编码单元56。
运动估计单元42和运动补偿单元44可以高度集成,但出于概念目的,单独说明。由运动估计单元42执行的运动估计是生成运动矢量的过程,其中,所述运动矢量用于估计视频块的运动。例如,运动向量可以指示当前视频帧或图像内的视频块的PU相对于参考帧(或其他编码单元)内的预测块的位移,其中所述参考帧(或其他编码单元)与当前帧(或其他编码单元)的当前块相关。预测块是发现在像素差异方面与待编码块高度匹配的块,其中,所述像素差可以通过绝对差和(sum of absolute difference,SAD)、平方差和(sum ofsquare difference,SSD)或其他差值度量进行确定。在一些示例中,视频编码器20可以计算存储在参考帧存储器64中的参考图像的子整数像素位置的值。例如,视频编码器20可以插入参考图像的四分之一像素位置、八分之一像素位置或其他分数像素位置的值。因此,运动估计单元42可以执行相对于全像素位置和分数像素位置的运动搜索,并输出具有分数像素精度的运动矢量。
运动估计单元42通过将PU的位置与参考图像的预测块的位置进行比较来计算帧间编码片中视频块的PU的运动矢量。可从第一参考图像列表(列表0)或第二参考图像列表(列表1)中选择参考图像,每个列表标识存储在参考帧存储器64中的一个或多个参考图。运动估计单元42将计算的运动矢量发送给熵编码单元56和运动补偿单元44。
由运动补偿单元44执行的运动补偿可以涉及基于运动估计单元42所确定的运动矢量获取或生成预测块。另外,在一些示例中,运动估计单元42和运动补偿单元44可以在功能上集成。一旦接收到当前视频块的PU的运动矢量,运动补偿单元44可以定位在其中一个参考图像列表中运动矢量指向的预测块。加法器50通过从所编码的当前视频块的像素值中减去预测块的像素值,从而形成像素差值来形成残差视频块,如下文所论述。通常,运动估计单元42相对于亮度分量执行运动估计,运动补偿单元44将基于亮度分量计算的运动矢量用于色度分量和亮度分量。模式选择单元40还可以生成与视频块和视频片相关的语法元素,以供视频解码器30用于对视频片的视频块进行解码。
帧内预测单元46可以对当前块进行帧内预测,作为由运动估计单元42和运动补偿单元44执行的帧间预测的替代方案,如上所述。特别地,帧内预测单元46可以确定帧内预测模式,用于对当前块进行编码。在一些示例中,帧内预测单元46可以在单独的编码通道中等使用各种帧内预测模式对当前块进行编码,而帧内预测单元46(或者在一些示例中,模式选择单元40)可以从测试模式中选择适当的帧内预测模式进行使用。
例如,帧内预测单元46可以使用速率失真分析对各种测试的帧内预测模式计算速率失真值,并在测试的模式中选择具有最佳速率失真特性的帧内预测模式。速率失真分析通常确定编码块与经编码以产生编码块的原始未编码块之间的失真(或误差)量,以及用于产生编码块的比特率(即,比特数)。帧内预测单元46可以根据各种编码块的失真和速率计算比率,以确定哪种帧内预测模式表现出块的最佳速率失真值。
此外,帧内预测单元46可以用于使用深度建模模式(depth modeling mode,DMM)对深度图像的深度块进行编码。模式选择单元40可以确定可用的DMM模式是否比帧内预测模式和其他DMM模式(例如,使用速率失真优化(rate-distortion optimization,RDO))产生更好的编码结果。与深度图像对应的纹理图像的数据可以存储在参考帧存储器64中。运动估计单元42和运动补偿单元44还可以用于帧间预测深度图像的深度块。
在为块选择帧内预测模式之后(例如,常规的帧内预测模式或DMM模式之一),帧内预测单元46可以将指示为块选择的帧内预测模式的信息提供给熵编码单元56。熵编码单元56可以对指示所选择的帧内预测模式的信息进行编码。视频编码器20可以在所传输的比特流中包括配置数据,其中,所述配置数据包括多个帧内预测模式索引表和多个经修改的帧内预测模式索引表(也称为码字映射表)、各种块的编码上下文的定义,以及最可能帧内预测模式、帧内预测模式索引表和经修改的帧内预测模式索引表的指示以用于每个上下文。
视频编码器20通过从所编码的原始视频块中减去来自模式选择单元40的预测数据来形成残差视频块。加法器50表示执行该减运算的一个或多个组件。
变换处理单元52对残差块应用变换,如离散余弦变换(discrete cosinetransform,DCT)或概念上类似的变换,从而产生包括残差变换系数值的视频块。变换处理单元52可以执行概念上类似于DCT的其他变换。还可以使用小波变换、整数变换、子带变换或其他类型的变换。
变换处理单元52对残差块应用变换,从而产生具有残差变换系数的块。变换可以将残差信息从像素值域转化到变换域,如频域。变换处理单元52可以将所得变换系数发送到量化单元54。量化单元54对变换系数进行量化以进一步降低比特率。量化过程可以降低与一些或全部系数有关的位深度。可以通过调整量化参数来修改量化程度。在一些示例中,量化单元54随后可以对包括量化变换系数的矩阵进行扫描。或者,熵编码单元56可以执行扫描。
在量化后,熵编码单元56对经量化的变换系数进行熵编码。例如,熵编码单元56可以执行上下文自适应可变长度编码(context adaptive variable length coding,CAVLC)、上下文自适应二进制算术编码(context adaptive binary arithmetic coding,CABAC)、基于语法的上下文自适应二进制算术编码(syntax-based context-adaptivebinary arithmetic coding,SBAC)、概率区间分割熵(probability intervalpartitioning entropy,PIPE)编码或其他熵编码技术。在基于上下文的熵编码情况中,上下文可以基于相邻块。在熵编码单元56进行熵编码之后,可以将编码比特流传输到另一设备(例如,视频解码器30)或存档以用于稍后传输或检索。
反量化单元58和逆变换单元60分别应用反量化和逆变换,以重建像素域中的残差块,例如,用于以后用作参考块。运动补偿单元44可以通过将残差块添加到参考帧存储器64中的一个帧的预测块中来计算参考块。运动补偿单元44还可以将一个或多个插值滤波器应用于重建的残差块以计算子整数像素值,以用于运动估计。加法器62将重建的残差块添加到由运动补偿单元44产生的运动补偿预测块中以产生重建的视频块以存储在参考帧存储器64中。运动估计单元42和运动补偿单元44可以将重建的视频块用作参考块,以对后续视频帧中的块进行帧内编码。
图3是示出了可以实施视频编解码技术的视频解码器30的示例的框图。在图3的示例中,视频解码器30包括熵解码单元70、运动补偿单元72、帧内预测单元74、反量化单元76、逆变换单元78、参考帧存储器82和加法器80。在一些示例中,视频解码器30可执行通常与关于视频编码器20(图2)描述的编码通道相反的解码通道。运动补偿单元72可以基于从熵解码单元70接收的运动矢量生成预测数据,而帧内预测单元74可以基于从熵解码单元70接收的帧内预测模式指示符生成预测数据。
在解码过程中,视频解码器30从视频编码器20接收表示编码视频片的视频块的经编码的视频比特流以及相关联的语法元素。视频解码器30的熵解码单元70对比特流进行熵解码以生成量化系数、运动向量或帧内预测模式指示符以及其他语法元素。熵解码单元70将运动矢量和其他语法元素转发给运动补偿单元72。视频解码器30可以接收视频片级和/或视频块级的语法元素。
当视频片被编码为帧内编码(I)片时,帧内预测单元74可以基于来自当前帧或图像的先前解码块的信号发送的帧内预测模式和数据来生成当前视频片的视频块的预测数据。当视频帧被编码为帧间编码(例如,B、P或GPB)片时,运动补偿单元72基于从熵解码单元70接收的运动矢量和其他语法元素针对当前视频片的视频块生成预测块。可以从其中一个参考图像列表内的其中一个参考图像产生这些预测块。视频解码器30可以基于存储在参考帧存储器82中的参考图像,使用默认构建技术来构建参考帧列表:列表0和列表1。
运动补偿单元72通过解析运动向量和其他语法元素来确定当前视频片中的视频块的预测信息,并使用所述预测信息针对所解码的当前视频块生成预测块。例如,运动补偿单元72使用接收到的一些语法元素确定用于对视频片的视频块进行编码的预测模式(例如帧内预测或帧间预测)、帧间预测片类型(例如B片、P片或GPB片)、用于片的一个或多个参考图像列表的构建信息、用于片的每个帧间编码视频块的运动矢量、用于片的每个帧间编码视频块的帧间预测状态、其他信息,以对当前视频片内的视频块进行解码。
运动补偿单元72还可以基于插值滤波器进行插值。运动补偿单元72可以使用视频编码器20在视频块编码期间使用的插值滤波器来计算参考块的子整数像素的内插值。在这种情况下,运动补偿单元72可以从接收到的语法元素中确定视频编码器20使用的插值滤波器,并使用插值滤波器来产生预测块。
与深度图像对应的纹理图像的数据可以存储在参考帧存储器82中。运动补偿单元72还可以用于帧间预测深度图像的深度块。
本文公开了提高SVT的编码效率的各种机制。如上所述,变换块可以相对于对应的残差块定位在各个候选位置。所公开的机制基于候选位置对变换块采用不同的变换。例如,可以将逆离散正弦变换(DST)应用于覆盖残差块的右下角的候选位置处。此外,可以在覆盖残差块的左上角的候选位置处应用逆DCT。该机制可以是有益的,因为对于转换在右下角分布更多残差信息的残差块,DST通常比DCT更有效,而对于转换在左上角分布更多残差信息的残差块,DCT通常比DST更有效。还应注意,大多数情况下,残差块的右下角在统计学上包括更多残差信息。在某些情况下,所公开的机制还支持将变换块的残差样本水平反向。例如,在应用逆变换块之后,可以水平倒转/翻转残差样本。当已经重建当前残差块的右侧的相邻块并且尚未重建当前残差块的左侧的相邻块时,可能发生这种情况。当采用逆DST作为对应传输块的一部分时,也可能发生这种情况。该方法为对最接近重建块的信息进行编码提供了更大的灵活性,这减少了对应的残差信息。所公开的机制还支持变换块的候选位置信息的上下文编码。与残差块对应的预测信息可以用于对候选位置信息进行编码。例如,在某些情况下,残差块可以与通过模板匹配模式生成的预测块对应。此外,可以基于残差块的空间上相邻的重建区域选择模板匹配模式所采用的模板。在这种情况下,残差块的右下部分可以比残差块的其他部分包括更多的残差信息。因此,最有可能选择覆盖残差块的右下部分的候选位置作为用于变换的最佳位置。因此,当残差块与基于模板匹配的帧间预测相关联时,可以仅提供一个候选位置用于残差块,和/或其他上下文编码方法可以用于对用于变换的位置信息进行编码。
图4是在HEVC模型中视频编解码中采用的示例性帧内预测模式400的示意图。视频压缩方案利用了数据冗余。例如,大多数图像包括像素组,这些像素组包括与相邻像素相同或类似的颜色和/或光线。作为特别示例,夜空图像可能包括描绘星星的大面积黑色像素和成簇的白色像素。帧内预测模式400利用这些空间关系。具体地,帧可以分解为一系列包括样本的块。然后,可以基于与相邻块中的参考样本的空间关系预测块的光线/颜色,而不是传输每个块。例如,编码器可以表示当前块包括与位于当前块左上角处的先前编码块中的参考样本相同的数据。然后,编码器可以对预测模式而不是块的值进行编码。这明显减小了编码的大小。如帧内预测模式400所示,左上角与HEVC中的预测模式18对应。因此,编码器可以仅存储块的预测模式18,而不是对块的像素信息进行编码。如图所示,HEVC中的帧内预测模式400包括从预测模式2到预测模式34的三十三种角度预测模式。帧内预测模式400还包括预测平滑区域的帧内平面模式0和帧内直流(direct current,DC)模式1。帧内平面模式0预测块作为具有从相邻参考样本导出的垂直和水平斜率的幅度表面。帧内DC模式1预测块作为相邻参考样本的平均值。帧内预测模式400可用于向块的亮度(例如,光线)组件发送信号。帧内预测也可以应用于色度(例如,颜色)值。在HEVC中,通过采用平面模式、角二十六模式(例如,垂直)、角十模式(例如,水平)、帧内DC和导出模式来预测色度值,其中,导出的模式预测由帧内预测模式400编码的色度分量与亮度分量之间的相关性。
图像块的帧内预测模式400作为预测信息由编码器存储。应当注意,虽然采用帧内预测模式400进行单帧中的预测,但是也可以采用帧间预测。帧间预测利用了多个帧之间的时间冗余。例如,电影中的场景可以包括相对静止的背景,如不动的桌子。因此,桌子被描述为多个帧中基本上相同的像素集合。帧间预测使用第一帧中的块来预测第二帧中的块,在该示例中,这避免了需要对每一帧中的桌子进行编码。帧间预测采用块匹配算法将当前帧中的块与参考帧中的块进行匹配和比较。然后,可以对运动矢量进行编码,以指示参考帧中最佳匹配的块位置和当前/目标块的共址位置。因此,一系列图像帧可以表示为一系列块,这些块然后可以表示为包括预测模式和/或运动矢量的预测块。
图5示出了采用如帧内预测模式400等帧内预测模式的视频编解码中的帧内预测500的示例。如图所示,可以通过相邻块510中的样本预测当前块501。编码器通常可以从左上到右下对图像进行编码。然而,在某些情况下,编码器可以从右向左进行编码,如下文所论述。应注意,如本文所使用,右侧是指编码图像的右侧,左侧是指编码图像的左侧,顶部是指编码图像的顶侧,底侧是指编码图像的底侧。
应注意,当前块501可能并不总是与来自相邻块510的样本精确匹配。在这种情况下,从最匹配的相邻块510中编码预测模式。为了允许解码器确定适当值,保留预测值与实际值之间的差值。这称为残差信息。在帧内预测500中以及帧间预测中均存在残差信息。
图6是基于帧内预测500和/或帧间预测的示例性视频编解码机制600的示意图。图像块601可以由编码器从一个或多个帧中获得。例如,可以将图像分割成多个矩形图像区域。图像的每个区域对应一个编码树单元(Coding Tree Unit,CTU)。将CTU分割为多个块,如HEVC中的编码单元。然后,在比特流611中对块分割信息进行编码。因此,图像块601是图像的分割部分,包括表示图像的对应部分处的亮度分量和/或色度分量的像素。在编码期间,将图像块601编码为预测块603,其中,所述预测块603包括预测信息,如用于帧内预测的预测模式(例如,帧内预测模式400)和/或用于帧间预测的运动矢量。然后,将图像块601编码为预测块603可以留下残差块605,其中,所述残差块605包括指示预测块603与图像块601之间的差异的残差信息。
应注意,可以将图像块601分割成包括一个预测块603和一个残差块605的编码单元。预测块603可以包括编码单元的所有预测样本,残差块605可以包括编码单元的所有残差样本。在这种情况下,预测块603具有与残差块605相同的大小。在另一个示例中,可以将图像块601分割成包括两个预测块603和一个残差块605的编码单元。在这种情况下,每个预测块603包括编码单元的一部分预测样本,残差块605包括编码单元的所有残差样本。在又一个示例中,将图像块601分割成包括两个预测块603和四个残差块605的编码单元。可以在比特流611中信号发送编码单元中残差块605的分割模式。此类位置模式可以包括HEVC中的残差四叉树(Residual Quad-Tree,RQT)。此外,图像块601可以仅包括图像样本(或像素)的亮度分量(例如,光线),表示为Y分量。在其他情况下,图像块601可以包括图像样本的Y、U和V分量,其中U和V指示蓝色亮度和红色亮度色空间中的色度分量(例如,颜色)(UV)。
SVT可用于进一步压缩信息。具体地,SVT采用变换块607来进一步压缩残差块605。变换块607包括变换,如逆DCT和/或逆DST。预测块603与图像块601之间的差异通过采用变换系数来适合变换。通过指示变换块607的变换模式(例如,逆DCT和/或逆DST)和对应的变换系数,解码器可以重建残差块605。当不需要精确重现时,可以通过对特定值进行舍入来进一步压缩变换系数以创建对变换的更佳拟合。该过程称为量化,并且根据描述允许量化的量化参数来执行。因此,变换块607的变换模式、变换系数和量化参数作为经变换残差信息存储在变换残差块609中,在某些情况下,所述变换残差块609也可以简单地称为残差块。
然后,可以在比特流611中对预测块603的预测信息和变换残差块609的经变换残差信息进行编码。比特流611可以存储和/或传输到解码器。然后,解码器可以执行相反的过程以恢复图像块601。具体地,解码器可以采用变换残差信息来确定变换块607。然后,变换块607可以与变换残差块609结合使用,以确定残差块605。然后,可以采用残差块605和预测块603来重建图像块601。然后,可以相对于其他解码图像块601定位图像块601以重建帧并定位此类帧以恢复编码视频。
现在将进一步详细描述SVT。为了进行SVT,选择小于残差块605的变换块607。变换块607用于对残差块605的对应部分进行变换,并使残差块605的其余部分无需进行额外的编码/压缩。这是因为残差信息通常不均匀地分布在残差块605中。SVT采用具有自适应位置的较小变换块607来捕获残差块605中的大部分残差信息,而不需要对整个残差块605进行变换。该方法可以实现比变换残差块605中的所有残差信息更高的编码效率。由于变换块607小于残差块605,因此SVT采用用于信号发送变换相对于残差块605的位置的机制。例如,当对大小为w×h(例如,宽度乘以高度)的残差块605应用SVT时,可以将变换块607的大小和位置信息编码到比特流611中。这允许解码器重建变换块607并将变换块607组合到相对于变换残差块609的正确位置,以重建残差块605。
应注意,可以对一些预测块603进行编码而不会产生残差块605。然而,这种情况不会导致使用SVT,因此不进一步讨论。如上所述,SVT可用于帧间预测块或帧内预测块。此外,SVT可以用于由指定帧间预测机制(例如,基于平移模型的运动补偿)生成的残差块605,但不能用于由其他指定帧间预测机制(例如,仿射模型运动补偿)生成的残差块605。
图7示出了包括变换块707和残差块705的SVT示例700。图7的变换块707和残差块705分别类似于图6的变换块607和残差块605。为便于参考,SVT示例700称为SVT-I、SVT-II和SVT-III。
SVT-I描述为w_t=w/2,h_t=h/2,其中w_t和h_t分别表示变换块707的宽度和高度,其中,w和h分别表示残差块705的宽度和高度。例如,变换块707的宽度和高度均为残差块705的宽度和高度的一半。SVT-II描述为w_t=w/4,h_t=h,其中变量如上所述。例如,变换块707宽度为残差块705的宽度的四分之一,变换块707的高度等于残差块705的高度。SVT-III描述为w_t=w,h_t=h/4,其中变量如上所述。例如,变换块707的宽度等于残差块705的宽度,变换块707的高度等于残差块705的高度的四分之一。将指示SVT类型(例如,SVT-I、SVT-II或SVT-III)的类型信息编码到比特流中以支持解码器的重建。
如图7所示,可以相对于残差块705将每个变换块707定位在各种位置。变换块707的位置由到残差块705的左上角的位置偏移(x,y)表示,其中,x指示变换块707的左上角与残差块705的左上角之间以像素为单位的水平距离,y指示变换块707的左上角与残差块705的左上角之间以像素为单位的垂直距离。变换块707在残差块705内的每个潜在位置称为候选位置。对于残差块705,一种类型的SVT的候选位置数量为(w–w_t+1)×(h–h_t+1)。更具体地,对于16×16个残差块705,当使用SVT-I时,存在八十一个候选位置。当使用SVT-II或SVT-III时,存在十三个候选位置。一旦确定,将位置偏移的x值和y值连同所采用的SVT块类型一起编码到比特流中。为了降低SVT-I的复杂度,可以从八十一个可能的候选位置中选择三十二个位置的子集。然后,该子集作为SVT-I的允许候选位置。
采用SVT示例700之一的SVT方案的一个缺点是将SVT位置信息编码为残差信息导致明显的信令开销。此外,编码器复杂度可以随着如速率失真优化(Rate-DistortionOptimization,RDO)等压缩质量过程测试的位置数量增加而明显增加。由于候选位置的数量随着残差块705的大小增加,因此,对于较大的残差块705,如32×32或64×128,信令开销甚至会更大。采用SVT示例700之一的另一个缺点是,变换块707的大小是残差块705的大小的四分之一。在许多情况下,这种大小的变换块707的大小可能不足以覆盖残差块705中的主要残差信息。
图8示出了包括变换块807和残差块805的附加SVT示例800。图8的变换块807和残差块805分别类似于图6-图7的变换块607、707和残差块605、705。为便于参考,SVT示例800称为SVT垂直(SVT-V)和SVT水平(SVT-H)。SVT示例800与SVT示例700类似,但旨在支持信令开销减少和对编码器的复杂处理要求降低。
SVT-V描述为w_t=w/2和h_t=h,其中变量如上所述。变换块807的宽度为残差块805的宽度的一半,变换块807的高度等于残差块805的高度。SVT-H描述为w_t=w和h_t=h/2,其中变量如上所述。例如,变换块807的宽度等于残差块805的宽度,变换块807的高度为残差块805的高度的一半。SVT-V与SVT-II类似,SVT-H与SVT-III类似。与SVT-II和SVT-III相比,SVT-V和SVT-H中的变换块807被放大到残差块805的一半,使得变换块807覆盖残差块805中的更多残差信息。
如同SVT示例700,SVT示例800可以包括若干候选位置,其中,候选位置是变换块(例如,变换块807)相对于残差块(例如,残差块805)的可能允许位置。根据候选位置步长(CPSS)确定候选位置。各候选位置可以以CPSS指定的等间距分隔开。在这种情况下,候选位置数量减至不超过5个。候选位置数量减少缓解了与位置信息相关联的信令开销,因为可以用更少的比特来信号发送用于变换的选定位置。此外,减少候选位置数量使得选择变换位置在算法上更加简单,从而允许降低编码器的复杂度(例如,导致用于编码的计算资源更少)。
图9示出了包括变换块907和残差块905的SVT示例900。图9的变换块907和残差块905分别类似于图6-图8的变换块607、707、807和残差块605、705、805。图9示出了各种候选位置,其中,候选位置是变换块(例如,变换块907)相对于残差块(例如,残差块905)的可能允许位置。具体地,图9中(A)-图9中(E)中的SVT示例采用SVT-V,图9中(F)-图9中(J)中的SVT示例采用SVT-H。变换的允许候选位置取决于CPSS,CPSS进一步取决于变换块907应覆盖的残差块905的部分和/或候选位置之间的步长。例如,对于SVT-V,CPSS可以计算为s=w/M1,或对于SVT-H,CPSS可以计算为s=h/M2,其中,w和h分别为残差块的宽度和高度,M1和M2是在2至8范围内的预定整数。M1或M2值越大,候选位置越多。例如,可以将M1和M2均设置为8。在这种情况下,描述变换块907相对于残差块905的位置的位置索引(P)的值在0与4之间。
在另一示例中,对于SVT-V,CPSS计算为s=max(w/M1,Th1),对于SVT-H,CPSS计算为s=max(h/M2,Th2),其中Th1和Th2是指定最小步长的预定义整数。Th1和Th2可以是不小于2的整数。在该示例中,Th1和Th2设置为4,M1和M2设置为8,不同的块大小可以具有不同的候选位置数量。例如,当残余块905的宽度为8时,两个候选位置可用于SVT-V,具体地是图9中(A)和图9中(E)中的候选位置。例如,当如Th1所指示的步长较大并且如w/M1所指示的变换块907覆盖的残差块905的部分也较大时,只有两个候选位置满足CPSS。然而,当w设置为16时,由于w/M1变化,变换块907覆盖的残差块905的部分减少。这会产生更多的候选位置,在这种情况下,如图9中(A)、图9中(C)和图9中(E)中所示的三个候选位置。当残差块905的宽度大于16而Th1和M1的值如上文所论述时,图9中(A)-图9中(E)中所示的所有五个候选位置都是可用的。
当根据其他机制计算CPSS时,还可以看到其他示例。具体地,对于SVT-V,CPSS可以计算为s=w/M1;或对于SVT-H,CPSS可以计算为s=h/M2。在这种情况下,当M1和M2设置为4时,SVT-V允许有3个候选位置(例如,图9中(A)、图9中(C)和图9中(E)中的候选位置);SVT-H允许有3个候选位置(例如,图9中(F)、图9中(H)和图9中(J)中的候选位置)。此外,当M1和M2设置为4时,变换块907覆盖的残差块905的部分增加,从而使得SVT-V有两个允许候选位置(例如,图9中(A)和图9中(E)中的候选位置)并且SVT-H有两个允许候选位置(例如,图9中(F)和图9中(J)中的候选位置)。
在另一示例中,如上文所论述,对于SVT-V,CPSS计算为s=max(w/M1,Th1)或对于SVT-H,CPSS计算为s=max(h/M2,Th2)。在这种情况下,T1和T2设置为预定义的整数(例如2),当w≥h时,M1设置为8;当w<h时,M1设置为4。当h≥w时,M2设置为8;或当h<w时,M2设置为4。例如,变换块907覆盖的残差块905的部分取决于残差块905的高度是否大于残差块905的宽度,或者残差块905的宽度是否大于残差块905的高度。因此,SVT-H或SVT-V的候选位置数量还取决于残差块905的长宽比。
在另一示例中,如上文所论述,对于SVT-V,CPSS计算为s=max(w/M1,Th1)或对于SVT-H,CPSS计算为s=max(h/M2,Th2)。在这种情况下,M1、M2、Th1和Th2的值从比特流中的高级语法结构(例如,序列参数集)中导出。例如,用于导出CPSS的值可以在比特流中进行信号发送。M1和M2可能共用从语法元素解析出来的相同值,Th1和Th2可能共用从另一个语法元素解析出来的相同值。
图10示出了描述变换块1007相对于残差块1005的位置的示例性SVT位置1000。虽然示出了六个不同位置(例如,三个垂直位置和三个水平位置),但应理解,在实际应用中,可以使用不同数量的位置。从图9的SVT示例900中的候选位置中选择SVT变换位置1000。具体地,可以将所选择的SVT变换位置1000编码到位置索引(P)。位置索引P可用于确定变换块的左上角相对于残差块的左上角的位置偏移(Z)。例如,可以根据Z=s×P确定此位置相关性,其中,s是基于SVT类型的变换块的CPSS,并如关于图9所论述进行计算。当变换块为SVT-V类型时,P的值可以编码为当变换块为SVT-H类型时,P的值可以编码为更具体地,(0,0)可以表示残差块的左上角的坐标。在这种情况下,变换块的左上角的坐标对于SVT-V为(Z,0),对于SVT-H为(0,Z)。
如下文进一步详细论述的,编码器可以通过采用标志对比特流中的SVT变换类型(例如,SVT-H或SVT-T)和残差块大小进行编码。然后,解码器可以基于SVT变换大小和残差块大小确定SVT变换大小。一旦确定了SVT变换大小,解码器可以根据CPSS函数确定SVT变换的允许候选位置,如图9的SVT示例900中的候选位置。由于解码器能够确定SVT变换的候选位置,因此编码器可能不会信号发送位置偏移的坐标。相反,可以采用代码来指示采用哪些候选位置用于对应变换。例如,位置索引P可以使用截断一元码二值化为一个或多个二进制位,以增加压缩。作为一个特别示例,当P值在0至4的范围内时,P值0、4、2、3和1可以分别二值化为0、01、001、0001和0000。这个二进制代码比表示位置索引的基础十值压缩程度更高。作为另一示例,当P值在0至1的范围内时,P值0和1可以分别二值化为0和1。因此,位置索引的大小可以根据需要增大或缩小,以根据变换块的可能候选位置信号发送特定变换块位置。
位置索引P可以通过采用最可能位置和可能性较小的剩余位置来二值化为一个或多个二进制位。例如,当左相邻块和上相邻块已在解码器处解码,因此可用于预测时,可以将最可能位置设置为覆盖残差块的右下角的位置。在一个示例中,当P值在0到4的范围内并且位置4设置为最可能位置时,P值4、0、1、2和3分别二值化为1、000、001、010和011。此外,当P值在0到2的范围内并且位置2设置为最可能位置时,P值2、0和1分别二值化为1、01和00。因此,用最少的比特表示候选位置的最可能位置索引,以减少最常见情况下的信令开销。该概率可以基于相邻重建块的编码顺序来确定。因此,解码器可以基于所采用的解码方案推断将用于对应块的码字方案。
例如,在HEVC中,编码单元编码顺序通常是从上到下和从左到右。在这种情况下,当前编码/解码编码单元的右侧不可用,使得右上角成为变换位置的可能性更大。然而,运动矢量预测值是从左侧和上方空间邻居导出的。在这种情况下,残差信息朝向右下角在统计上更加密集。在这种情况下,覆盖右下部分的候选位置是最可能位置。此外,当利用自适应编码单元编码顺序时,一个节点可以垂直分裂为两个子节点,并且可以在对左子节点进行编码之前对右子节点进行编码。在这种情况下,在对左子节点进行解码/编码之前,已经重建了左子节点的右邻居。此外,在这种情况下,左侧相邻像素不可用。当右侧相邻像素可用而左侧相邻像素不可用时,残差块的左下部分可能包括大量残差信息,因此,覆盖残差块的左下部分的候选位置成为最可能位置。
因此,可以根据是否已对紧邻残差块的右侧进行重建,将位置索引P二值化为一个或多个二进制位。在一个示例中,P值在0到2的范围内,如SVT变换位置1000所示。当已重建紧邻残差块的右侧时,将P值0、2和1二值化为0、01和00。否则,将P值2、0和1二值化为0、01和00。在另一示例中,当已重建紧邻残差块的右侧,但未重建紧邻残差块的左侧时,将P值0、2和1二值化为0、00和01。否则,将P值2、0和1二值化为0、00和01。在这些示例中,与单个二进制位对应的位置是最可能位置,其他两个位置是剩余位置。例如,最可能位置取决于右侧相邻残差块的可用性。
在速率失真性能的意义上,最佳位置的概率分布在各帧间预测模式中可能有很大不同。例如,当残差块对应以空间相邻的重建像素为模板的模板匹配生成的预测块时,最佳位置最有可能为位置2。对于其他帧间预测模式,位置2(或在右邻居可用,左邻居不可用时,位置0)为最佳位置的概率低于模板匹配模式。有鉴于此,可以根据与残差块相关联的帧间预测模式确定位置索引P的第一二进制位的上下文模型。更具体地,当残差块与基于模板匹配的帧间预测相关联时,位置索引P的第一二进制位使用第一上下文模型。否则,使用第二上下文模型对该二进制位进行编码/解码。
在另一示例中,当残差块与基于模板匹配的帧间预测相关联时,最可能位置(例如,位置2,或当右邻居可用但左邻居不可用时,位置0)直接设置为变换块位置,并且不在比特流中信号发送位置信息。否则,位置索引在比特流中显式地进行信号发送。
还应注意,可以根据变换块相对于残差块的位置采用不同的变换。例如,重建残差块的左侧而不重建残差块的右侧,这发生在具有从左到右和从上到下的固定编码单元编码顺序(例如,HEVC中的编码顺序)的视频编解码中。在这种情况下,覆盖残差块的右下角的候选位置可以在编码时对变换块中的变换采用DST(例如,DST版本7(DST-7)或DST版本1(DST-1))。因此,在解码器处针对对应的候选位置采用逆DST变换。此外,覆盖残差块的左上角的候选位置在编码时可以对变换块中的变换采用DCT(例如,DCT版本8(DCT-8)或DCT版本2(DCT-2))。因此,在解码器处针对对应的候选位置采用逆DCT变换。这是因为在这种情况下,在四个角中,右下角距空间重建区域最远。此外,当变换块覆盖残差块的右下角时,DST比DCT更有效地变换残差信息分布。此外,当变换块覆盖残差块的左上角时,DCT比DST更有效地变换残差信息分布。对于其余候选位置,变换类型可以是逆DST或逆DCT。例如,当候选位置相比左上角更接近右下角时,采用逆DST作为变换类型。否则,采用逆DCT作为变换类型。
作为具体示例,可以允许变换块1007有三个候选位置,如图10所示。在这种情况下,位置0覆盖左上角,位置2覆盖右下角。位置1位于残差块1005中间,与左角和右角均等距离。在编码器处,位置0、位置1和位置2的变换类型可以分别选择为DCT-8、DST-7和DST-7。然后,可以在解码器处分别对位置0、位置1和位置2采用逆变换DCT-8、DST-7和DST-7。在另一个示例中,在编码器处,位置0、位置1和位置2的变换类型分别为DCT-2、DCT-2和DST-7。然后,可以在解码器处分别对位置0、位置1和位置2采用逆变换DCT-2、DCT-2和DST-7。因此,可以预定对应候选位置的变换类型。
在一些情况下,上述位置相关多重变换可以仅应用于亮度变换块。对应的色度变换块在变换/逆变换过程中可以始终使用逆DCT-2。
图11示出了残差样本水平翻转的示例1100。在某些情况下,通过在编码器处应用变换块(例如,变换块607)之前水平翻转残差块(例如,残差块605)中的残差信息,可以实现有益的残差压缩。示例1100示出了这种水平翻转。在此上下文中,水平翻转是指残差块中的残差样本在残差块的左侧和残差块的右侧之间绕轴旋转一半。这种水平翻转发生在在编码器处应用变换(例如,变换块)之前以及在解码器处应用逆变换(例如,变换块)之后。当出现指定的预定义条件时,可以采用这种翻转。
在一个示例中,当变换块在变换过程中采用DST/逆DST时,发生水平翻转。在这种情况下,在当前块之前对残差块的右侧相邻残差块进行编码/重建,并且在当前块之前不对左侧相邻残差块进行编码/重建。所述水平翻转过程将残差块第i列处的残差样本与残差块第w–1–i列处的残差样本进行交换。在此上下文中,w为变换块的宽度,i=0、1、……、(w/2)–1。残差样本的水平翻转可以通过使残差分布更好地适合DST变换来提高编码效率。
图12是利用采用上文论述的机制的位置相关SVT进行视频解码的示例性方法1200的流程图。在接收比特流(如比特流611)之后,可以在解码器处启动方法1200。方法1200采用比特流来确定预测块和变换残差块,如预测块603和变换残差块609。方法1200还确定变换块(如变换块607),其中,变换块607用于确定残差块(如残差块605)。然后,采用残差块605和预测块603重建图像块,如图像块601。应注意,虽然方法1200是从解码器的角度进行描述的,但可以采用类似方法(例如,反向)通过采用SVT来对视频进行编码。
在框1201中,在解码器处获取比特流。可以从存储器或从流媒体源接收比特流。所述比特流包括可以解码成与来自编码器的视频数据对应的至少一个图像的数据。具体地,所述比特流包括块分割信息,其中,所述块分割信息可以用于确定编码单元,所述编码单元包括机制600中所述的比特流中的预测块和残差块。因此,可以从比特流中解析与编码单元相关的编码信息,并且可以基于以下论述的编码信息重建编码单元的像素。
在框1203中,基于块分割信息从比特流中获取预测块和对应的变换残差块。对于该示例,已根据如上文关于机制600所论述的SVT对变换残差块进行编码。然后,方法1200根据变换残差块重建大小为w×h的残差块,如下所论述。
在框1205中,确定SVT使用、SVT类型以及变换块大小。例如,解码器首先确定编码中是否已使用SVT。这是因为一些编码所采用的变换是残差块的大小。SVT的使用可以通过比特流中的语法元素来信号发送。具体地,当允许残差块采用SVT时,从比特流中解析标志,如svt_flag。当变换残差块具有非零变换系数(例如,与任何亮度分量或色度分量对应)时,允许残差块采用SVT。例如,当残差块包括任何残差数据时,残差块可采用SVT。SVT标志指示是使用大小与残差块相同的变换块对残差块进行编码(例如,svt_flag设置为0)还是使用大小比残差块更小的变换块对残差块进行编码(例如:svt_flag设置为1)。可以采用编码块标志(coded block flag,cbf)来指示残差块是否包括颜色分量的非零变换系数,如HEVC中使用的。此外,根编码块(root coded block,根cbf)标志可以指示残差块是否包括任何颜色分量的非零变换系数,如HEVC中使用的。作为一个特定示例,当使用帧间预测预测图像块并且残差块宽度或残差块高度落入[a1,a2]的预定范围内时,允许残差块使用SVT,其中,a1=16且a2=64,或a1=8且a2=64,或a1=16且a2=128。a1和a2的值可以是预定的固定值。这些值还可以从比特流中的序列参数集(sequence parameter set,SPS)或片标头导出。当残差块不采用SVT时,将变换块大小设置为残差块大小的宽度和高度。否则,基于SVT变换类型确定变换大小。
一旦解码器确定SVT已用于残差块,解码器确定所使用的SVT变换块的类型,并根据SVT类型导出变换块大小。基于残差块的宽度和高度决定残差块的所允许SVT类型。如果残差块的宽度在如此类值在上文所定义的[a1,a2]范围内,则允许如图8所示的SVT-V变换。当残差块的高度在如此类值在上文所定义的[a1,a2]范围内时,则允许如图8所示的SVT-H变换。SVT可以仅用于残差块中的亮度分量,或SVT可以用于残差块中的亮度分量和色度分量两者。当SVT仅用于亮度分量时,通过SVT转换亮度分量残差信息,并通过转换残差块的大小来转换色度分量。当SVT-V和SVT-H都允许时,可以将标志(如svt_type_flag)编码到比特流中。svt_type_flag指示是使用SVT-V用于残差块(例如,svt_type_flag设置为0)还是使用SVT-H用于残差块(例如,svt_type_flag设置为1)。一旦确定了SVT变换的类型,根据信号发送的SVT类型设置变换块大小(例如,对于SVT-V,w_t=w/2且h_t=h;对于SVT-H,w_t=w且h_t=h/2)。当只允许SVT-V或只允许SVT-H时,可以不将svt_type_flag编码到比特流中。在这种情况下,解码器可以基于允许的SVT类型推断变换块大小。
一旦确定了SVT类型和大小,解码器继续到框1207。在框1207中,解码器确定变换相对于残差块的位置以及变换类型(例如,DST或DCT)。可以根据比特流中的语法元素确定变换块的位置。例如,在一些示例中,可以直接信号发送位置索引,从而从比特流中解析。在其他示例中,可以如关于图8-图10所论述推断位置。具体地,可以根据CPSS函数确定变换的候选位置。CPSS函数可以通过考虑残差块的宽度、残差块的高度、通过框1205确定的SVT类型、变换的步长和/或变换覆盖的残差块的部分来确定候选位置。然后,解码器可以通过获取p索引来根据候选位置确定变换块位置,其中,p索引包括根据如上文关于图10所论述的候选位置选择概率信号发送正确候选位置的代码。一旦变换块位置已知,解码器可以推断出变换块采用的变换类型,如上文关于图10所论述的。相应地,编码器可以选择对应的逆变换。在框1209中,解码器基于在框1205中确定的变换块大小解析变换块的变换系数。该过程可以根据在HEVC、H.264和/或AVC中采用的变换系数解析机制来完成。可以使用游程编码和/或作为变换系数组(coefficient group,CG)的集合对变换系数进行编码。应注意,在一些示例中,可以在框1207之前执行框1209。
在框1211中,基于如上文确定的变换位置、变换系数和变换类型重建残差块。具体地,对变换系数应用大小w_t×h_t的反量化和逆变换来恢复残差块的残差样本。具有残差样本的残差块的大小为w_t×h_t。根据在框1207中确定的位置相关变换类型,逆变换可以是逆DCT或逆DST。根据变换块位置,将残差样本分配到残差块内的对应区域。可以将残差块内和变换块外的任何残差样本设置为零。例如,当采用SVT-V时,候选位置数量为5,位置索引指示第五变换块位置。因此,将重建的残差样本分配到图9的SVT示例900的变换候选位置中的区域(例如,图9中的阴影区域)和位于该区域左侧、具有零个残差样本的大小为(w/2)×h的区域(图9中的非阴影区域)。
在可选框1213中,可以水平翻转重建块的残差块信息,如关于图11所论述的。如上所述,当解码器处的变换块采用逆DST,右侧相邻块已重建,而左侧相邻块尚未重建时,可能发生这种情况。具体地,在上述情况下,编码器可以在应用DST变换之前水平翻转残差块,以提高编码效率。因此,可选框1213可用于校正编码器处的这种水平翻转,以创建准确的重建块。
在框1215中,可以将重建的残差块与预测块组合以生成包括样本的重建图像块,作为编码单元的一部分。滤波过程还可以应用于重建样本,如HEVC中的去块滤波和样本自适应偏移(sample adaptiveoffset,SAO)处理。然后,可以将重建图像块与以类似方式解码的其他图像块组合起来,以生成媒体/视频文件的帧。然后,可以在监视器或其他显示设备上向用户显示重建的媒体文件。
应注意,可以采用方法1200的等效实现方式在残差块中生成重建样本。具体地,变换块的残差样本可以直接在变换块位置信息指示的位置与预测块组合,而无需首先恢复残差块。
图13是视频编解码的方法1300。方法1300可以在解码器(例如,视频解码器30)中实施。特别地,方法1300可以由解码器的处理器实施。当已从编码器(例如,视频编码器20)直接或间接接收或从存储器检索比特流时,可以实施方法1300。在框1301中,解析比特流以获得预测块(例如,预测块603)和与预测块对应的变换残差块(例如,变换残差块609)。在框1303中,确定用于生成变换残差块的SVT类型。如上所述,SVT类型可以是SVT-V或SVT-H。在一个实施例中,SVT-V类型包括的高度等于变换残差块的高度,宽度为所述变换残差块的宽度的一半。
在一个实施例中,SVT-H类型包括为变换残差块的高度一半的高度和等于变换残差块的宽度的宽度。在一个实施例中,从比特流中解析svt_type_flag以确定SVT类型。在一个实施例中,当仅允许残差块使用一种类型的SVT时,通过推理确定SVT类型。
在框1305中,确定了SVT相对于变换残差块的位置。在一个实施例中,从比特流中解析位置索引以确定SVT类型。在一个实施例中,位置索引包括二进制代码,其中,所述二进制代码指示根据CPSS确定的候选位置集合中的位置。在一个实施例中,为SVT的最可能位置分配二进制代码中指示位置索引的最少比特数。在一个实施例中,当单个候选位置可用于SVT变换时,处理器推断SVT的位置。在一个实施例中,当通过帧间预测模式下的模板匹配生成残差块时,处理器推断SVT的位置。
在框1307中,基于SVT的位置确定SVT的逆。在框1309中,将SVT的逆应用于变换残差块,以产生重建残差块(例如,残差块605)。在一个实施例中,对位于残差块的左边界处的SVT-V类型变换采用逆DST。在一个实施例中,对位于残差块的顶边界处的SVT-H类型变换采用逆DST。在一个实施例中,对位于残差块的右边界处的SVT-V类型变换采用逆DCT。在一个实施例中,对位于残差块的底边界处的SVT-H类型变换采用逆DCT。
在框1311中,将重建残差块与预测块组合以重建图像块。在一个实施例中,图像块显示在电子设备(例如,智能手机、平板电脑、膝上型计算机、个人计算机等)的显示器或监视器上。
可选地,方法1300还可以包括:当与重建残差块相关联的编码单元的右侧相邻编码单元已经重建且编码单元的左侧相邻编码单元还未重建时,在将重建残差块与预测块组合之前,水平翻转重建残差块中的样本。
图14是视频编解码的方法1400。方法1400可以在编码器(例如,视频编码器20)中实施。特别地,方法1400可以由编码器的处理器实施。可以实施方法1400以对视频信号进行编码。在框1401中,从视频捕获设备(例如,摄像机)接收视频信号。在一个实施例中,视频信号包括图像块(例如,图像块601)。
在框1403中,生成预测块(例如,预测块603)和残差块(例如,残差块605)以表示图像块。在框1405中,基于SVT相对于残差块的位置为SVT选择变换算法。在框1407中,使用所选择的SVT将残差块转换为变换残差块。
在框1409中,将SVT的类型编码到比特流中。在一个实施例中,SVT的类型是SVT-V类型或SVT-H类型。在一个实施例中,SVT-V类型包括的高度等于变换残差块的高度,宽度为所述变换残差块的宽度的一半。在一个实施例中,SVT-H类型包括的高度为所述变换残差块的高度的一半,宽度等于所述变换残差块的宽度。
在框1411中,将SVT的位置编码到比特流中。在一个实施例中,将SVT的位置在位置索引中进行编码。在一个实施例中,位置索引包括二进制代码,其中,所述二进制代码指示根据CPSS确定的候选位置集合中的位置。在一个实施例中,为SVT的最可能位置分配二进制代码中指示位置索引的最少比特数。
在一个实施例中,处理器对位于残差块的左边界处的SVT-V类型变换采用DST算法。在一个实施例中,处理器对位于残差块的顶边界处的SVT-H类型变换选择DST算法。在一个实施例中,处理器对位于残差块的右边界处的SVT-V类型变换选择DCT算法。在一个实施例中,处理器对位于残差块的底边界处的SVT-H类型变换选择DCT算法。
可选地,当与残差块相关联的编码单元的右侧相邻编码单元已经编码且编码单元的左侧相邻编码单元还未编码时,在将残差块转换成变换残差块之前,处理器水平翻转残差块中的样本。
在框1413中,将预测块和变换残差块编码到比特流中。在一个实施例中,比特流被配置成传输到解码器和/或传输到解码器。
图15是根据本发明实施例的用于视频编解码的示例性计算设备1500的示意图。计算设备1500适用于实现本文描述的公开实施例。计算设备1500包括:入端口1520和接收器单元(Rx)1510,用于接收数据;处理器、逻辑单元或中央处理单元(central processingunit,CPU)1530,用于处理数据;发射器单元(Tx)1540和出端口1550,用于传输数据;存储器1560,用于存储数据。计算设备1500还可以包括耦合到入端口1520的光电(optical-to-electrical,OE)组件和电光(electrical-to-optical,EO)组件、接收器单元1510、发射器单元1540,以及用于光信号或电信号出或入的出端口1550。在一些示例中,计算设备1500还可以包括无线发射器和/或接收器。
处理器1530通过硬件和软件实现。处理器1530可以实现为一个或多个CPU芯片、核(例如,多核处理器)、现场可编程门阵列(field-programmable gate array,FPGA)、专用集成电路(application specific integrated circuit,ASIC)和数字信号处理器(digitalsignal processor,DSP)。处理器1530与入端口1520、接收器单元1510、发射器单元1540、出端口1550和存储器1560通信。处理器1530包括编码/解码模块1514。编码/解码模块1514实施上述公开的实施例,如方法1300和方法1400,以及在采用SVT时基于变换块位置对残差块进行编码/重建的其他机制以及上文描述的任何其他机制。例如,编码/解码模块1514实施、处理、准备或提供各种编码操作,如上文论述的编码视频数据和/或解码视频数据。因此,包括编码/解码模块1514为计算设备1500的功能提供了显著改进,并且实现了计算设备1500到不同状态的转换。或者,编码/解码模块1514实现为存储在存储器1560中并由处理器1530执行的指令(例如,存储在非瞬时性介质上的计算机程序产品)。
存储器1560包括一个或多个磁盘、磁带驱动器和固态硬盘,可用作溢出数据存储设备,以在选择执行程序时存储这类程序,并存储在程序执行期间读取的指令和数据。存储器1560可以是易失性和/或非易失性,并且可以是只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、三态内容寻址存储器(ternary content-addressable memory,TCAM)和/或静态随机存取存储器(static random-access memory,SRAM)。计算设备1500还可以包括用于与终端用户交互的输入/输出(input/output,I/O)设备。例如,计算设备1500可以包括用于视觉输出的显示器(如监视器)、用于音频输出的扬声器,以及用于用户输入的键盘/鼠标/轨迹球等。
总之,上文公开内容包括对不同位置的变换块自适应地采用多种变换类型的机制。此外,本发明允许水平翻转残差块中的残差样本以提高编码效率。当在编码器和解码器处转换块分别使用DST和逆DST时,并且当右侧相邻块可用而左侧相邻块不可用时,就会发生这种情况。此外,本发明包括基于与残差块相关联的帧间预测模式支持比特流中的编码位置信息的机制。
图16是编码构件1600的实施例的示意图。在实施例中,编码构件1600在视频编解码设备1602(例如,视频编码器20或视频解码器30)中实现。视频编解码设备1602包括接收构件1601。接收构件1601用于接收图像进行编码或接收比特流进行解码。视频编解码设备1602包括耦合到接收构件1601的传输构件1607。传输构件1607用于将比特流传输到解码器或将解码图像传输到显示构件(例如,计算设备1500中的I/O设备之一)。
视频编解码设备1602包括存储构件1603。存储构件1603耦合到接收构件1601或传输构件1607中的至少一个。存储构件1603用于存储指令。视频编解码设备1602还包括处理构件1605。处理构件1605耦合到存储构件1603。处理构件1605用于执行存储在存储构件1603中的指令以执行本文公开的方法。
当第一组件与第二组件之间除了线、迹线或其他介质之外没有中间组件时,第一组件与第二组件直接耦合。当第一组件与第二组件之间除了线、迹线或其他介质之外还有中间组件时,第一组件与第二组件间接耦合。术语“耦合”及其变体包括直接耦合和间接耦合。除非另有说明,否则使用术语“约”意指包括后续数字的±10%的范围。
虽然本发明中已提供若干实施例,但可以理解,在不脱离本发明的精神或范围的情况下,所公开的系统和方法可以以许多其他特定形式来体现。本发明示例应被视为说明性而非限制性的,且本发明并不限于本文所给出的细节。例如,可以在另一系统中结合或集成各种元件或组件,或者可以省略或不实施某些特征。
此外,在不偏离本发明的范围的情况下,各种实施例中描述和说明为离散或单独的技术、系统、子系统和方法可以与其他系统、组件、技术或方法进行组合或集成。展示或论述为耦合的其他项可以直接连接,也可以采用电方式、机械方式或其他方式通过某一接口、设备或中间组件间接地耦合或通信。变化、替换和变更的其他实例可由本领域技术人员确定,并可在不偏离本文公开的精神和范围的情况下举例。

Claims (35)

1.一种在编解码设备中实施的方法,其特征在于,所述方法包括:
接收经编码视频码流,对所述视频码流进行熵解码以获取当前块的量化系数和与当前块关联的语法元素;
对所述量化系数进行反量化;
根据所述语法元素对所述当前块进行预测,以获得预测块;
确定用于生成所述变换残差块的空间变化变换SVT的类型;
确定所述SVT相对于所述变换残差块的位置;
基于所述SVT的所述位置确定所述SVT的逆;
将所述SVT的逆应用于所述变换残差块以产生重建残差块,所述变换残差块包括经反量化的量化系数;
将所述重建残差块与所述预测块组合以重建图像块。
2.根据权利要求1所述的方法,其特征在于,所述SVT的类型为SVT垂直(SVT-V)类型或SVT水平(SVT-H)类型。
3.根据权利要求1至2中任一项所述的方法,其特征在于,所述SVT-V类型包括的高度等于所述变换残差块的高度,宽度为所述变换残差块的宽度的一半;所述SVT-H类型包括的高度为所述变换残差块的高度的一半,宽度等于所述变换残差块的宽度。
4.根据权利要求1至3中任一项所述的方法,其特征在于,还包括:解析所述比特流中的svt_type_flag以确定所述SVT的类型。
5.根据权利要求1至4中任一项所述的方法,其特征在于,还包括:当所述残差块只允许使用一种类型的SVT时,通过推断确定SVT的类型。
6.根据权利要求1至5中任一项所述的方法,其特征在于,还包括:解析所述比特流中的位置索引以确定所述SVT的位置。
7.根据权利要求1至6中任一项所述的方法,其特征在于,位置索引包括二进制代码,其中,所述二进制代码指示根据候选位置步长CPSS确定的候选位置集合中的位置。
8.根据权利要求1至7中任一项所述的方法,其特征在于,为所述SVT的最可能位置分配所述二进制代码中指示所述位置索引的最少比特数。
9.根据权利要求1至8中任一项所述的方法,其特征在于,当单个候选位置可用于所述SVT变换时,
所述处理器推断所述SVT的位置。
10.根据权利要求1至9中任一项所述的方法,其特征在于,当通过帧间预测模式下的模板匹配生成所述残差块时,所述处理器推断所述SVT的位置。
11.根据权利要求1至10中任一项所述的方法,其特征在于,对位于所述残差块的左边界处的SVT垂直SVT-V类型变换采用逆离散正弦变换DST。
12.根据权利要求1至11中任一项所述的方法,其特征在于,对位于所述残差块的顶边界处的SVT水平(SVT-H)类型变换采用逆DST。
13.根据权利要求1至12中任一项所述的方法,其特征在于,对位于所述残差块的右边界处的SVT-V类型变换采用逆离散余弦变换DCT。
14.根据权利要求1至13中任一项所述的方法,其特征在于,对位于所述残差块的底边界处的SVT-H类型变换采用逆DCT。
15.一种在编解码设备中实施的方法,其特征在于,所述方法包括:
从视频捕获设备接收视频信号,其中,所述视频信号包括当前块;
对所述当前块进行预测处理,以获得与所述当前块关联的语法元素,以及预测块;
根据所述预测块和所述当前块,获得残差块;;
基于空间变化变换(spatial varying transform,SVT)相对于所述残差块的位置,选择用于所述SVT的变换算法;
使用所选择的所述SVT将所述残差块转换为变换残差块;
对所述变换残差块进行量化以得到量化变换残差块;
将所述语法元素、所述SVT的类型、所述SVT的位置,以及所述量化变换残差块编码到比特流中以传输给解码器。
16.根据权利要求15所述的方法,其特征在于,所述SVT的类型为SVT垂直(SVT-V)类型或SVT水平(SVT-H)类型。
17.根据权利要求15至16中任一项所述的方法,其特征在于,所述SVT-V类型包括的高度等于所述残差块的高度,宽度为所述残差块的宽度的一半。
18.根据权利要求15至17中任一项所述的方法,其特征在于,所述SVT-H类型包括的高度为所述残差块的高度的一半,宽度等于所述残差块的宽度。
19.根据权利要求15至18中任一项所述的方法,其特征在于,所述SVT的位置在位置索引中进行编码。
20.根据权利要求15至19中任一项所述的方法,其特征在于,位置索引包括二进制代码,其中,所述二进制代码指示根据候选位置步长(CPSS)确定的候选位置集合中的位置。
21.根据权利要求15至20中任一项所述的方法,其特征在于,为所述SVT的最可能位置分配所述二进制代码中指示所述位置索引的最少比特数。
22.根据权利要求15至21中任一项所述的方法,其特征在于,所述处理器对位于所述残差块的左边界处的SVT垂直(SVT-V)类型变换采用离散正弦变换(DST)算法。
23.根据权利要求15至22中任一项所述的方法,其特征在于,所述处理器对位于所述残差块的顶边界处的SVT水平(SVT-H)类型变换选择DST算法。
24.根据权利要求15至23中任一项所述的方法,其特征在于,所述处理器对位于所述残差块的右边界处的SVT-V类型变换选择离散余弦变换(DST)算法。
25.根据权利要求15至24中任一项所述的方法,其特征在于,所述处理器对位于所述残差块的底边界处的SVT-H类型变换选择DCT算法。
26.一种编解码装置,其特征在于,包括:
接收器,用于接收图像进行编码或接收比特流进行解码;
耦合到所述接收器的发射器,其中,所述发射器用于将所述比特流传输到解码器或将解码图像传输到显示器;
耦合到所述接收器或所述发射器中的至少一个的存储器,其中,所述存储器用于存储指令;
耦合到所述存储器的处理器,其中,所述处理器用于执行所述存储器中存储的所述指令以执行根据权利要求1至25中任一项所述的方法。
27.根据权利要求26所述的编解码装置,其特征在于,还包括用于显示图像的显示器。
28.一种系统,其特征在于,包括:
编码器;
与所述编码器通信的解码器,其中,所述编码器或所述解码器包括根据权利要求26至27中任一项所述的编解码装置。
29.一种用于编解码的构件,其特征在于,包括:
接收构件,用于接收图像进行编码或接收比特流进行解码;
耦合到所述接收构件的传输构件,其中,所述传输构件用于将所述比特流传输到解码器或将解码图像传输到显示构件;
耦合到所述接收构件或所述传输构件中的至少一个的存储构件,其中,所述存储构件用于存储指令;
耦合到所述存储构件的处理构件,其中,所述处理构件用于执行所述存储构件中存储的所述指令以执行根据权利要求1至25中任一项所述的方法。
30.一种非易失性计算机可读介质,其特征在于,所述非易失性计算机可读介质包括供视频译码设备使用的计算机程序产品;所述计算机程序产品包括存储在所述非易失性计算机可读介质中的计算机可执行指令;在处理器执行所述计算机可执行指令时,使得所述视频译码设备执行根据权利要求1至25中任一项所述的方法。
31.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储视频比特流,所述视频比特流包括由权利要求15至25中任一项所述的方法生成的视频比特流。
32.一种存储经编码视频比特流的方法,其特征在于,包括:
接收所述视频比特流,其中所述视频比特流包括由权利要求15至25中任一项所述的方法生成的视频比特流;
将所述视频比特流存储在存储介质中。
33.一种存储经编码视频比特流的系统,其特征在于,包括:
接收单元,用于接收所述视频比特流,其中所述视频比特流包括由权利要求15至25中任一项所述的方法生成的视频比特流;
存储单元,用于存储所述视频比特流。
34.一种传输经编码视频比特流的方法,其特征在于,包括:
从存储介质中获取所述视频比特流,其中所述视频比特流包括由权利要求15至25中任一项所述的方法生成的视频比特流;
发送所述视频比特流至解码设备。
35.一种传输经编码视频比特流的系统,其特征在于,包括:
从存储介质中获取所述视频比特流,其中所述视频比特流包括由权利要求15至25中任一项所述的方法生成的视频比特流;
发送所述视频比特流至解码设备。
CN202410234618.8A 2018-02-23 2019-02-04 用于视频编解码的位置相关空间变化变换 Pending CN118101967A (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201862634613P 2018-02-23 2018-02-23
US62/634,613 2018-02-23
PCT/US2019/016479 WO2019164660A1 (en) 2018-02-23 2019-02-04 Position dependent spatial varying transform for video coding
CN201980015113.XA CN111758255A (zh) 2018-02-23 2019-02-04 用于视频编解码的位置相关空间变化变换

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201980015113.XA Division CN111758255A (zh) 2018-02-23 2019-02-04 用于视频编解码的位置相关空间变化变换

Publications (1)

Publication Number Publication Date
CN118101967A true CN118101967A (zh) 2024-05-28

Family

ID=65444371

Family Applications (3)

Application Number Title Priority Date Filing Date
CN202410232196.0A Pending CN118101966A (zh) 2018-02-23 2019-02-04 用于视频编解码的位置相关空间变化变换
CN202410234618.8A Pending CN118101967A (zh) 2018-02-23 2019-02-04 用于视频编解码的位置相关空间变化变换
CN201980015113.XA Pending CN111758255A (zh) 2018-02-23 2019-02-04 用于视频编解码的位置相关空间变化变换

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN202410232196.0A Pending CN118101966A (zh) 2018-02-23 2019-02-04 用于视频编解码的位置相关空间变化变换

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN201980015113.XA Pending CN111758255A (zh) 2018-02-23 2019-02-04 用于视频编解码的位置相关空间变化变换

Country Status (8)

Country Link
US (2) US11388402B2 (zh)
EP (1) EP3750310A1 (zh)
JP (3) JP7121133B2 (zh)
KR (2) KR102438149B1 (zh)
CN (3) CN118101966A (zh)
BR (1) BR112020016913A2 (zh)
SG (1) SG11202008036TA (zh)
WO (1) WO2019164660A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102306884B1 (ko) * 2018-03-29 2021-09-30 닛폰 호소 교카이 화상 부호화 장치, 화상 복호 장치 및 프로그램
WO2024091913A1 (en) * 2022-10-24 2024-05-02 Tencent America LLC Flipping mode for chroma and intra template matching

Family Cites Families (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4610195B2 (ja) 2001-12-17 2011-01-12 マイクロソフト コーポレーション スキップマクロブロックコード化
CN101448162B (zh) 2001-12-17 2013-01-02 微软公司 处理视频图像的方法
KR101403338B1 (ko) 2007-03-23 2014-06-09 삼성전자주식회사 영상의 부호화, 복호화 방법 및 장치
EP2324641A1 (en) 2008-08-12 2011-05-25 Nokia Corporation Video coding using spatially varying transform
GB0906058D0 (en) 2009-04-07 2009-05-20 Nokia Corp An apparatus
JP5732454B2 (ja) 2009-07-06 2015-06-10 トムソン ライセンシングThomson Licensing 空間変化残差符号化を行う方法および装置
CN101668205B (zh) 2009-09-25 2011-04-20 南京邮电大学 基于残差宏块自适应下采样立体视频压缩编码方法
KR101487687B1 (ko) 2010-01-14 2015-01-29 삼성전자주식회사 큰 크기의 변환 단위를 이용한 영상 부호화, 복호화 방법 및 장치
US8885714B2 (en) 2010-01-14 2014-11-11 Texas Instruments Incorporated Method and system for intracoding in video encoding
KR101791078B1 (ko) 2010-04-16 2017-10-30 에스케이텔레콤 주식회사 영상 부호화/복호화 장치 및 방법
US9172968B2 (en) 2010-07-09 2015-10-27 Qualcomm Incorporated Video coding using directional transforms
PL3668094T3 (pl) 2011-01-13 2023-02-13 Canon Kabushiki Kaisha Urządzenie do kodowania obrazu, sposób kodowania obrazu i program, oraz urządzenie do dekodowania obrazu, sposób dekodowania obrazu i program
AU2012267007B2 (en) 2011-06-10 2016-03-17 Mediatek Inc. Method and apparatus of scalable video coding
KR101943049B1 (ko) 2011-06-30 2019-01-29 에스케이텔레콤 주식회사 영상 부호화/복호화 방법 및 장치
JP5711098B2 (ja) 2011-11-07 2015-04-30 日本電信電話株式会社 画像符号化方法,画像復号方法,画像符号化装置,画像復号装置およびそれらのプログラム
US10390046B2 (en) 2011-11-07 2019-08-20 Qualcomm Incorporated Coding significant coefficient information in transform skip mode
KR20130050404A (ko) 2011-11-07 2013-05-16 오수미 인터 모드에서의 복원 블록 생성 방법
US9549182B2 (en) 2012-07-11 2017-01-17 Qualcomm Incorporated Repositioning of prediction residual blocks in video coding
CN103581676B (zh) 2012-08-10 2016-12-28 联发科技股份有限公司 视频编码变换系数的解码方法及装置
US20140056347A1 (en) 2012-08-23 2014-02-27 Microsoft Corporation Non-Transform Coding
CN103716623B (zh) 2013-12-17 2017-02-15 北京大学深圳研究生院 基于加权量化的视频压缩编解码方法及编解码器
CN104935927A (zh) 2014-03-17 2015-09-23 上海京知信息科技有限公司 一种基于流水线的hevc视频序列编解码加速方法
CN103997650B (zh) 2014-05-30 2017-07-14 华为技术有限公司 一种视频解码的方法和视频解码器
CN104125466B (zh) 2014-07-10 2017-10-10 中山大学 一种基于gpu的hevc并行解码方法
CN105530518B (zh) 2014-09-30 2019-04-26 联想(北京)有限公司 一种视频编码、解码方法及装置
US10306229B2 (en) 2015-01-26 2019-05-28 Qualcomm Incorporated Enhanced multiple transforms for prediction residual
CN106254870B (zh) 2015-06-08 2020-08-18 财团法人工业技术研究院 采用自适性色彩转换的视频编码方法、系统和计算机可读取记录介质
US10681379B2 (en) 2015-09-29 2020-06-09 Qualcomm Incorporated Non-separable secondary transform for video coding with reorganizing
WO2017131233A1 (ja) 2016-01-28 2017-08-03 日本放送協会 符号化装置、復号装置及びプログラム
ES2710807B1 (es) 2016-03-28 2020-03-27 Kt Corp Metodo y aparato para procesar senales de video
JP7160948B2 (ja) * 2018-05-31 2022-10-25 華為技術有限公司 適応変換タイプを有する空間的に変化する変換
US10516885B1 (en) * 2018-07-11 2019-12-24 Tencent America LLC Method and apparatus for video coding
US11102513B2 (en) * 2018-12-06 2021-08-24 Tencent America LLC One-level transform split and adaptive sub-block transform

Also Published As

Publication number Publication date
JP2021515461A (ja) 2021-06-17
US20220377331A1 (en) 2022-11-24
KR20200118890A (ko) 2020-10-16
US11917152B2 (en) 2024-02-27
EP3750310A1 (en) 2020-12-16
US20200252610A1 (en) 2020-08-06
KR20220122809A (ko) 2022-09-02
CN118101966A (zh) 2024-05-28
US20220124329A9 (en) 2022-04-21
JP2022159392A (ja) 2022-10-17
BR112020016913A2 (pt) 2020-12-15
US11388402B2 (en) 2022-07-12
JP7410236B2 (ja) 2024-01-09
SG11202008036TA (en) 2020-09-29
KR102597838B1 (ko) 2023-11-02
JP7121133B2 (ja) 2022-08-17
CN111758255A (zh) 2020-10-09
WO2019164660A1 (en) 2019-08-29
JP2024029063A (ja) 2024-03-05
KR102438149B1 (ko) 2022-08-29

Similar Documents

Publication Publication Date Title
US11431968B2 (en) Variable number of intra modes for video coding
CN115941942B (zh) 视频编码器、视频解码器及相应的编解码方法
EP3857881A1 (en) Adaptive multiple transform coding
CN115152223A (zh) 对用于视频编解码的高级语法的输出层集数据和一致性窗口数据进行编解码
JP7410236B2 (ja) ビデオ符号化のための位置依存の空間変化変換
CN114710679A (zh) 视频编解码中的小色度块大小限制
US11601667B2 (en) Inter prediction method and related apparatus
JP2017512025A (ja) ビデオコーディングにおけるフリッカー検出および軽減
KR20210019554A (ko) 루마 인트라 모드 시그널링
KR20230123949A (ko) 인핸스드 보간 필터들을 사용한 인트라 예측
JP7513693B2 (ja) ルマ・イントラ・モード・シグナリング
RU2772813C1 (ru) Видеокодер, видеодекодер и соответствующие способы кодирования и декодирования
WO2023154359A1 (en) Methods and devices for multi-hypothesis-based prediction

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