CN113853784A - 用于视频译码的多个自适应环路滤波器集合 - Google Patents

用于视频译码的多个自适应环路滤波器集合 Download PDF

Info

Publication number
CN113853784A
CN113853784A CN202080034866.8A CN202080034866A CN113853784A CN 113853784 A CN113853784 A CN 113853784A CN 202080034866 A CN202080034866 A CN 202080034866A CN 113853784 A CN113853784 A CN 113853784A
Authority
CN
China
Prior art keywords
adaptive loop
block
video data
aps
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.)
Granted
Application number
CN202080034866.8A
Other languages
English (en)
Other versions
CN113853784B (zh
Inventor
胡楠
V·谢廖金
M·卡切夫维茨
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.)
Qualcomm Inc
Original Assignee
Qualcomm 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 Qualcomm Inc filed Critical Qualcomm Inc
Publication of CN113853784A publication Critical patent/CN113853784A/zh
Application granted granted Critical
Publication of CN113853784B publication Critical patent/CN113853784B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/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/184Methods 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 bits, e.g. of the compressed video stream
    • 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/46Embedding additional information in the video signal during the compression process
    • H04N19/463Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
    • 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
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop

Abstract

描述了用于用信号传送和解码自适应环路滤波器信息的技术。视频解码器可以被配置为:对视频数据的块进行解码,并且在所述视频数据的块的经编码视频比特流中接收自适应参数集(APS),其中,所述APS包括用于所述视频数据的块的亮度分量的多个自适应环路滤波器集合。所述视频译码器可以从所述APS中的所述多个自适应环路滤波器集合中确定自适应环路滤波器以应用于所述视频数据的经解码的块,并将所确定的自适应环路滤波器应用于所述视频数据的所述经解码的块以创建所述视频数据的经滤波的块。

Description

用于视频译码的多个自适应环路滤波器集合
本申请要求享受于2020年5月13日递交的美国专利申请No.15/931,110的优先权,该美国专利申请要求享受于2019年5月17日递交的美国临时申请No.62/849,606的权益,以引用方式将上述每个申请的完整内容并入本文。
技术领域
本公开内容涉及视频编码和视频解码。
背景技术
数字视频功能可以纳入多种设备,这些设备包括:数字电视、数字直播系统、无线广播系统、个人数字助理(PDA)、膝上型或桌面型计算机、平板电脑、电子书阅读器、数码相机、数字记录设备、数字媒体播放器、视频游戏设备、视频游戏控制台、蜂窝式或卫星无线电话、所谓的“智能手机”、视频电话会议设备、视频流式传输设备,等等。数字视频设备实现视频译码技术,例如在由MPEG-2、MPEG-4、ITU-T H.263、ITU-T H.264/MPEG-4第10部分、高级视频译码(AVC)、ITU-T H.265/高效视频译码(HEVC)以及这些标准的扩展中定义的标准中描述的那些技术。通过实现这样的视频译码技术,视频设备可以更有效地发送、接收、编码、解码和/或存储数字视频信息。
视频译码技术包括空间(图片内)预测和/或时间(图片间)预测以减少或去除视频序列中固有的冗余。对于基于块的视频译码,可以将视频切片(例如,视频图片或视频图片的一部分)划分为视频块,这些视频块也可以被称为译码树单元(CTU)、译码单元(CU)和/或译码节点。针对同一图片中相邻块中的参考采样,使用空间预测对图片的内译码(I)切片中的视频块进行编码。图片的间译码(P或B)切片中的视频块可使用针对同一图片中相邻块中参考采样的空间预测,或针对其他参考图片中的参考采样的时间预测。图片可以被称为帧,并且参考图片可以被称为参考帧。
发明内容
概括地说,本公开内容描述与自适应环路滤波器(ALF)相关的技术。具体而言,本公开内容描述了用于对视频数据的块(例如,译码树块)的亮度和/或色度自适应环路滤波器进行信号传送和解码的各种技术。在一些实例中,本公开内容描述了用于在一个或多个自适应参数集(APS)中用信号传送和解码自适应环路滤波器信息的技术,自适应环路滤波器信息包括用于多个自适应环路滤波器集合的自适应环路滤波器信息。自适应环路滤波器信息可包括自适应环路滤波器集合、自适应环路滤波器系数、合并表和/或裁剪值中的一项或多项。本公开内容的技术可以通过在选择可能的自适应环路滤波器以应用于视频数据的亮度和色度分量方面提供额外的灵活性来提高经解码/经重构视频数据的译码效率和/或减少失真。
本公开内容的技术可应用于对任何现有视频编解码器的扩展,例如对高效视频译码(HEVC)的扩展,或者当前正在开发的标准的一部分,例如通用视频译码(VVC),以及其他未来的视频译码标准。
在一个示例中,本公开内容描述了一种被配置为对视频数据进行解码的装置,所述装置包括:存储器,其被配置为存储所述视频数据;以及一个或多个处理器,其与所述存储器通信,所述一个或多个处理器被配置为:对所述视频数据的块进行解码;在经编码视频比特流中接收针对所述视频数据的所述块的自适应参数集(APS),其中,所述APS包括用于所述视频数据的所述块的亮度分量的多个自适应环路滤波器集合;从所述APS中的所述多个自适应环路滤波器集合中确定自适应环路滤波器以应用于所述视频数据的经解码的块;以及将所确定的自适应环路滤波器应用于所述视频数据的经解码的块以创建所述视频数据的经滤波的块。
在另一个示例中,本公开内容描述了一种用于对视频数据进行解码的方法,所述方法包括:对所述视频数据的块进行解码;在经编码视频比特流中接收针对所述视频数据的所述块的APS,其中,所述APS包括用于所述视频数据的所述块的亮度分量的多个自适应环路滤波器集合;从所述APS中的所述多个自适应环路滤波器集合中确定自适应环路滤波器以应用于所述视频数据的经解码的块;以及将所确定的自适应环路滤波器应用于所述视频数据的经解码的块以创建所述视频数据的经滤波的块。
在另一示例中,本公开内容描述了一种被配置为对视频数据进行编码的装置,所述装置包括:存储器,其被配置为存储所述视频数据;以及一个或多个处理器,其与所述存储器通信,所述一个或多个处理器被配置为:对所述视频数据的块进行编码;重构所述视频数据的所述块;将自适应环路滤波器应用于所述视频数据的经重构的块以创建所述视频数据的经滤波的块;以及在经编码视频比特流中用信号传送针对所述视频数据的所述块的APS,其中,所述APS包括用于所述视频数据的所述块的亮度分量的、包括所应用的自适应环路滤波器的多个自适应环路滤波器集合。
在另一示例中,本公开内容描述了一种对视频数据进行编码的方法,所述方法包括:对所述视频数据的块进行编码;重构所述视频数据的所述块;将自适应环路滤波器应用于所述视频数据的经重构的块以创建所述视频数据的经滤波的块;以及在经编码视频比特流中用信号传送针对所述视频数据的所述块的APS,其中,所述APS包括用于所述视频数据的所述块的亮度分量的、包括所应用的自适应环路滤波器的多个自适应环路滤波器集合。
在附图和下面的描述中阐述了一个或多个示例的细节。其它特征、目标和优点从说明书、附图以及权利要求书将是显而易见的。
附图说明
图1是示出可以执行本公开内容的技术的示例视频编码和解码系统的方块图。
图2A和图2B是示出示例四叉树二叉树(QTBT)结构以及相应编码树单元(CTU)的概念图。
图3是示出可以执行本公开内容的技术的示例视频编码器的方块图。
图4是示出可以执行本公开内容的技术的示例视频解码器的方块图。
图5是示出自适应环路滤波器支持的示例的概念图。
图6是示出示例5x5菱形滤波器支持的概念图。
图7是示出示例几何变换的概念图。
图8是示出本公开内容的示例编码方法的流程图。
图9是更详细地示出本公开内容的示例编码方法的流程图。
图10是示出本公开内容的示例解码方法的流程图。
图11是更详细地示出本公开内容的示例解码方法的流程图。
具体实施方式
概括地说,本公开内容描述与自适应环路滤波器(ALF)相关的技术。具体而言,本公开内容描述了用于对视频数据的块(例如,译码树块)的亮度和/或色度自适应环路滤波器进行信号传送和解码的各种技术。在一些示例中,本公开内容描述了用于在一个或多个自适应参数集(APS)中用信号传送和解码自适应环路滤波器信息的技术,自适应环路滤波器信息包括用于多个自适应环路滤波器集合的自适应环路滤波器信息。自适应环路滤波器信息可以包括自适应环路滤波器集合、自适应环路滤波器系数、合并表和/或裁剪值中的一项或多项。本公开内容的技术可以通过在选择可能的自适应环路滤波器以应用于视频数据的亮度和色度分量两者方面提供额外的灵活性来提高经解码/经重构视频数据的译码效率和/或减少失真。
图1是示出可以执行本公开内容的技术的示例视频编码和解码系统100的方块图。概括地说,本公开内容的技术涉及对视频数据进行译码(编码和/或解码)。概括地说,视频数据包括用于处理视频的任何数据。因此,视频数据可以包括原始的未编码的视频、编码视频、解码(例如,经重构的)视频以及视频元数据,例如信令数据。
如图1所示,在该示例中,系统100包括源设备102,其提供要由目的地设备116解码和显示的编码视频数据。具体而言,源设备102经由计算机可读介质110向目的地设备116提供视频数据。源设备102和目标设备116可以包括多种设备中的任何一种,包括桌面式计算机、笔记本计算机(即膝上型计算机)、平板计算机、机顶盒、例如智能手机的电话手持设备、电视机、照相机、显示设备、数字媒体播放器、视频游戏控制台、视频流式传输设备等等。在一些情况下,源设备102和目的地设备116可以被配备用于无线通信,因此可以被称为无线通信设备。
在图1的示例中,源设备102包括视频源104、存储器106、视频编码器200和输出接口108。目的地设备116包括输入接口122、视频解码器300、存储器120和显示设备118。根据本公开内容,源设备102的视频编码器200和目的地设备116的视频解码器300可以被配置为:应用用于自适应环路滤波的技术。因此,源设备102表示视频编码设备的示例,而目的地设备116表示视频解码设备的示例。在其他示例中,源设备和目的地设备可以包括其他组件或布置。例如,源设备102可以从诸如外部摄像机的外部视频源接收视频数据。同样,目的地设备116可以与外部显示设备接口,而不是包括集成显示设备。
图1所示的系统100仅是一个示例。概括地说,任何数字视频编码和/或解码设备都可以执行用于自适应环路滤波的技术。源设备102和目的地设备116仅仅是此类译码设备的示例,其中源设备102生成经译码的视频数据以传输到目标设备116。本公开内容将“译码”设备称为执行数据的译码(编码和/或解码)的设备。因此,视频编码器200和视频解码器300分别表示译码设备的示例,具体而言,分别是视频编码器和视频解码器。在一些示例中,设备102、116可以用基本上对称的方式来进行操作,从而使得设备102、116中的每个设备包括视频编码和解码组件。因此,系统100可以支持视频设备102、116之间的单向或双向视频传输,例如,用于视频流式传输、视频回放、视频广播或视频电话。
通常,视频源104表示视频数据(即,原始、未编码的视频数据)的源,并将视频数据的一系列顺序图片(也被称为“帧”)提供给视频编码器200,视频编码器200对图片的数据进行编码。源设备102的视频源104可以包括视频捕获设备(例如摄像机,包含先前捕获的原始视频的视频档案和/或视频馈送接口),以从视频内容提供商接收视频。作为另一替代方案,视频源104可以生成基于计算机图形的数据作为源视频,或者实时视频、归档视频和计算机生成的视频的组合。在每种情况下,视频编码器200对捕获的、预捕获的或计算机生成的视频数据进行编码。视频编码器200可以将图像从接收的顺序(有时被称为“显示顺序”)重新排列为用于译码的译码顺序。视频编码器200可以生成包括编码视频数据的比特流。然后,源设备102可以经由输出接口108将编码视频数据输出到计算机可读介质110上,以通过例如目的地设备116的输入接口122进行接收和/或检索。
源设备102的存储器106和目的设备116的存储器120代表通用存储器。在一些示例中,存储器106、120可以存储原始视频数据,例如,来自视频源104的原始视频和来自视频解码器300的原始、经解码视频数据。附加地或可替代地,存储器106、120可以存储分别可由例如视频编码器200和视频解码器300执行的软件指令。尽管在该示例中与视频编码器200和视频解码器300分开示出,但应当理解的是:视频编码器200和视频解码器300还可以包括内部存储器,以实现功能上相似或等效的目的。此外,存储器106、120可以存储编码视频数据,例如从视频编码器200输出并输入到视频解码器300的编码视频数据。在一些示例中,可以分配存储器106、120的一些部分作为一个或多个视频缓冲器,例如,以存储原始、解码和/或编码视频数据。
计算机可读介质110可以代表能够将编码视频数据从源设备102传输到目的地设备116的任何类型的介质或设备。在一个示例中,计算机可读介质110表示通信介质,以使源设备102能够例如经由射频网络或基于计算机的网络将编码视频数据直接实时发送到目的地设备116。输出接口108可以根据通信标准(例如无线通信协议)来调制包括编码视频数据的传输信号,并且输入接口122可以对接收到的传输信号进行调制。通信介质可以包括任何无线或有线通信介质,例如射频(RF)频谱或一条或多条物理传输线。通信介质可以形成基于分组的网络的一部分,例如局域网、广域网或例如互联网的全球网络。通信介质可以包括路由器、交换机、基站或有助于从源设备102到目的地设备116的通信的任何其他设备。
在一些示例中,源设备102可以将编码数据从输出接口108输出到存储设备112。类似地,目的地设备116可以经由输入接口122访问来自存储设备112的编码数据。存储设备112可以包括各种分布式或本地访问的数据存储介质中的任何一种,例如硬盘驱动器、蓝光光盘、DVD、CD-ROM、闪存器、易失性或非易失性存储器或用于存储编码视频数据的任何其他合适的数字存储介质。
在一些示例中,源设备102可以将编码视频数据输出到文件服务器114或可以存储由源设备102生成的编码视频的另一中间存储设备。目的地设备116可以经由流式传输或下载来访问来自文件服务器114的存储的视频数据。文件服务器114可以是能够经存储编码视频数据并将该经编码视频数据发送到目的地设备116的任何类型的服务器设备。文件服务器114可以代表网络服务器(例如,用于网站)、文件传输协议(FTP)服务器、内容分发网络设备或网络附加存储(NAS)设备。目的地设备116可以通过包括互联网连接的任何标准数据连接来访问来自文件服务器114的编码视频数据。这可以包括适合访问存储在文件服务器114上的编码视频数据的无线信道(例如,Wi-Fi连接)、有线连接(例如,DSL、电缆调制解调器等)或这二者的组合。文件服务器114和输入接口122可以被配置为根据流式传输协议、下载传输协议或其组合来操作。
输出接口108和输入接口122可以代表无线发射机/接收机、调制解调器、有线网络组件(例如,以太网卡)、根据各种IEEE 802.11标准中的任何一种进行操作的无线通信组件,或者其他物理组件。在输出接口108和输入接口122包括无线组件的示例中,输出接口108和输入接口122可以被配置为根据蜂窝通信标准(例如,4G、4G-LTE(长期演进)、高级LTE、5G等)来传输数据(例如编码视频数据)。在输出接口108包括无线发射机的一些示例中,输出接口108和输入接口122可以配置为根据其他无线标准(例如,IEEE 802.11规范、IEEE 802.15规范(例如,ZigBeeTM)、Bluetooth TM标准等)来传输数据(例如编码视频数据)。在一些示例中,源设备102和/或目的地设备116可以包括各自的片上系统(SoC)设备。例如,源设备102可以包括SoC设备以执行归因于视频编码器200和/或输出接口108的功能,并且目的地设备116可以包括SoC设备以执行归因于视频解码器300和/或输入接口122的功能。
本公开内容的技术可以应用于支持各种多媒体应用中的任何一种的视频译码,例如空中电视广播、有线电视传输、卫星电视传输、互联网流式视频传输,例如HTTP上的动态自适应流式传输(DASH)、编码到数据存储介质上的数字视频,对存储在数据存储介质上的数字视频进行解码,或者其他应用。
目的地设备116的输入接口122从计算机可读介质110(例如、存储设备112、文件服务器114等)接收经编码视频比特流。经编码视频比特流计算机可读介质110可以包括由视频编码器200定义的信令信息,其也由视频解码器300使用,例如具有描述视频块或其他编码单元(例如,切片、图片、图片组、序列等)的特性和/或处理的值的语法元素。显示设备118向用户显示解码视频数据的解码图片。显示设备118可以代表多种显示设备中的任何一种,例如液晶显示器(LCD)、等离子显示器、有机发光二极管(OLED)显示器或另一种类型的显示设备。
尽管未在图1中显示,但在一些示例中,视频编码器200和视频解码器300可以分别与音频编码器和/或音频解码器集成在一起,并且可以包括适当的MUX-DEMUX单元或其他硬件和/或软件,以用于处理公共数据流中包括音频和视频二者的复用流。如果适用,MUX-DEMUX单元可以符合ITU H.223复用器协议或其他协议,例如用户数据报协议(UDP)。
视频编码器200和视频解码器300可以各自实现为各种合适的编码器和/或解码器电路中的任何一种,例如一个或多个微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、离散逻辑单元、软件、硬件、固件或其任何组合。当这些技术部分地以软件实现时,设备可将用于软件的指令存储在合适的非暂时性计算机可读介质中,并使用一个或多个处理器以硬件方式执行指令以执行本公开内容的技术。视频编码器200和视频解码器300中的每一个可以包括在一个或多个编码器或解码器中,其中的任意一个可以集成作为相应设备中的组合编码器/解码器(CODEC)的一部分。包括视频编码器200和/或视频解码器300的设备可以包括集成电路、微处理器和/或无线通信设备,例如蜂窝电话。
视频编码器200和视频解码器300可以根据视频译码标准(例如ITU-T H.265,也被称为高效视频译码(HEVC)或其扩展,例如多视图和/或可调节视频译码扩展)来进行操作。或者,视频编码器200和视频解码器300可以根据其他专有或工业标准(例如联合探索测试模型(JEM)或ITU-T H.266,也被称为多功能视频译码(VVC))来操作。Bross等人的“Versatile Video Coding(Draft 5)”,ITU-T SG 16WP 3和ISO/IEC JTC 1/SC 29/WG 11的联合视频专家组(JVET),第14次会议,日内瓦,CH,2019年3月19日-27日,JVET-N1001-v5(以下简称“VVC草案5”)中描述了VVC标准的最新草案。然而,本公开内容的技术不限于任何特定的译码标准。
通常,视频编码器200和视频解码器300可以执行图片的基于块的译码。术语“块”通常是指包括待处理的数据的结构(例如,待编码和/或解码,或者在编码和/或解码过程中以其他方式待使用)。例如,块可以包括亮度和/或色度数据的采样的二维矩阵。通常,视频编码器200和视频解码器300可以对以YUV(例如,Y,Cb,Cr)格式表示的视频数据进行译码。也就是说,视频编码器200和视频解码器300可以对亮度和色度分量进行译码,而不是对图片采样的红、绿和蓝(RGB)数据进行译码,其中色度分量可以包括红色和蓝色色度分量。在一些示例中,视频编码器200在编码之前将接收到的RGB格式的数据转换成YUV表示,并且视频解码器300将YUV表示转换成RGB格式。或者,预处理和后处理单元(未示出)可以执行这些转换。
本公开内容通常可以提及图片的译码(例如,编码和解码)以包括对图片的数据进行编码或解码的过程。类似地,本发明可以提及对图片的块的译码以包括对块的数据进行编码或解码的过程,例如,预测和/或残差译码。经编码视频比特流通常包括语法元素的一系列值,这些值表示译码决策(例如,译码模式)以及将图片划分为块。因此,提及对图片或块进行译码通常应理解为对形成图片或块的语法元素的值进行译码。
HEVC定义了各种块,包括译码单元(CU)、预测单元(PU)和变换单元(TU)。根据HEVC,视频译码器(例如,视频编码器200)根据四叉树结构将译码树单元(CTU)划分为CU。也就是说,视频译码器将CTU和CU划分为四个相等、不重叠的正方形,并且四叉树的每个节点具有零个或四个子节点。没有子节点的节点可以被称为“叶节点”,并且这种叶节点的CU可以包括一个或多个PU和/或一个或多个TU。视频译码器可进一步划分PU和TU。例如,在HEVC中,残差四叉树(RQT)表示TU的划分。在HEVC中,PU表示间预测数据,而TU表示残差数据。内预测的CU包括预测内信息,例如模式内指示。
作为另一示例,视频编码器200和视频解码器300可以被配置为根据VVC进行操作。根据VVC,视频译码器(例如,视频编码器200)将图片划分为多个译码树单元(CTU)。视频编码器200可根据树结构(例如四叉树-二叉树(QTBT)结构或多类型树(MTT)结构)来划分CTU。QTBT结构消除了多个划分类型的概念,例如HEVC的CU、PU和TU之间的分隔。QTBT结构包括两个级别:根据四叉树分区来划分的第一级,以及根据二叉树分区来划分的第二级。QTBT结构的根节点对应于CTU。二叉树的叶节点对应于译码单元(CU)。
在MTT分区结构中,可以使用四叉树(QT)分区、二叉树(BT)分区以及一种或多种类型的三叉树(TT)(也被称为三元树(TT))分区来对块进行划分。三叉树或三元树分区是将一个块分为三个子块的一种分区方式。在一些示例中,三叉树或三元树分区将一个块划分为三个子块,而不通过中心来对原始块进行划分。MTT中的分区类型(例如,QT、BT和TT)可以是对称的或不对称的。
在一些示例中,视频编码器200和视频解码器300可以使用单个QTBT或MTT结构来表示亮度和色度分量中的每一个,而在其他示例中,视频编码器200和视频解码器300可以使用两个或多个QTBT或MTT结构,例如,一个QTBT/MTT结构用于亮度分量,另一个QTBT/MTT结构用于两个色度分量(或两个QTBT/MTT结构用于相应的色度分量)。
视频编码器200和视频解码器300可以被配置为对每个HEVC、QTBT分区、MTT分区或其他分区结构使用四叉树分区。为了说明的目的,针对QTBT分区给出了对本公开内容的技术的描述。然而,应当理解的是:本公开内容的技术还可以应用于被配置为使用四叉树分区或其它类型分区的视频译码器。
在一些示例中,CTU包括亮度采样的译码树块(CTB)、具有三个采样阵列的图片的色度采样的两个相应CTB,或者单色图片或使用三个单独的颜色平面和用于对采样译码的语法结构来译码的图片的采样的CTB。CTB可以是针对某个N值的NxN采样块,使得将分量划分为CTB是分区。分量是来自以4:2:0、4:2:2或4:4:4颜色格式组成图片的三个阵列(亮度和两个色度)中的一个的阵列或单个采样,或者组成单色格式图片的阵列或阵列的单个采样。在一些示例中,译码块是针对某个M和N值的MxN采样块,使得将CTB划分为译码块是分区。
可以用各种方式将块(例如,CTU或CU)成组在图片中。作为一个示例,砖块(brick)可以指图片中特定瓦片(tile)之内的CTU行的矩形区域。瓦片可以是图片中特定瓦片列和特定瓦片行之内的CTU的矩形区域。瓦片列是指CTU的矩形区域,其具有等于图片高度的高度和由语法元素指定的宽度(例如,如在图片参数集中指定的)。瓦片行是指CTU的矩形区域,其具有由语法元素指定的高度(例如,诸如在图片参数集中)以及与图片宽度相等的宽度。
在一些示例中,可以将瓦片划分成多个砖块,每个砖块可以包括瓦片内的一个或多个CTU行。没有被划分为多个砖块的瓦片也可以被称为砖块。但是,作为瓦片的真实子集的砖块不能被称为瓦片。
图片中的砖块也可以布置为切片。切片可以是图片的整数个砖块,器可以排他地包含在单个网络抽象层(NAL)单元中。在一些示例中,切片包括多个完整瓦片或仅一个瓦片的连续的完整砖块序列。
本本公开内容可互换地使用“NxN”和“N乘N”来指代块(例如CU或其他视频块)的采样尺寸在垂直维度和水平维度方面的采样维度,例如,16x16个采样或16乘16个采样。通常,16x16 CU在垂直方向上将具有16个采样(y=16),并且在水平方向上将具有16个采样(x=16)。同样地,NxN CU通常在垂直方向上具有N个采样,在水平方向上具有N个采样,其中N表示非负整数值。Cu中的采样可以按行和列排列。此外,CU在水平方向上不一定具有与垂直方向上相同数量的采样。例如,CU可以包含N×M个采样,其中M不一定等于N。
视频编码器200对表示预测和/或残差信息以及其他信息的CU的视频数据进行编码。预测信息指示将如何预测CU以便形成用于CU的预测块。残差信息通常代表编码之前的CU采样与预测块之间的逐采样差异。
为了预测CU,视频编码器200通常可通过间预测或内预测来形成用于CU的预测块。间预测通常是指根据先前译码的图片的数据来预测CU,而内预测通常是指根据同一图片的先前译码的数据来预测CU。为了执行间预测,视频编码器200可使用一个或多个运动向量来生成预测块。视频编码器200通常可以例如在CU与参考块之间的差异方面执行运动搜索以识别与CU紧密匹配的参考块。视频编码器200可以使用绝对差之和(SAD)、平方差之和(SSD)、平均绝对差(MAD)、均方差(MSD)或其他此类差异来计算差值度量,以确定参考块是否与当前CU紧密匹配。在一些示例中,视频编码器200可使用单向预测或双向预测来预测当前CU。
VVC的某些示例还提供了仿射运动补偿模式,其可以被视为间预测模式。在仿射运动补偿模式中,视频编码器200可以确定表示非平移运动(例如放大或缩小、旋转、透视运动或其他不规则运动类型)的两个或更多个运动矢量。
为了执行内预测,视频编码器200可以选择内预测模式以生成预测块。VVC的某些示例提供了67种内预测模式,包括各种方向模式以及平面模式和DC模式。通常,视频编码器200选择内预测模式,该内预测模式描述与当前块(例如,CU的块)相邻的采样,从这些相邻采样预测当前块的采样。假设视频编码器200以光栅扫描顺序(从左到右,从上到下)对CTU和CU进行译码,则此类采样通常可以在与当前块相同的图片中当前块的上方、上方左侧、或左侧。
视频编码器200对表示当前块的预测模式的数据进行编码。例如,对于间预测模式,视频编码器200可对表示使用各种可用间预测模式中的哪一个的数据,以及相应模式的运动信息进行编码。对于单向或双向帧间预测,例如,视频编码器200可使用高级运动矢量预测(AMVP)或合并模式来对运动矢量进行编码。视频编码器200可使用类似模式来对仿射运动补偿模式的运动向量进行编码。
在预测(例如块的内预测或间预测)之后,视频编码器200可计算该块的残差数据。残差数据(例如残差块)表示该块与使用相应预测模式形成的该块的预测块之间的逐采样差异。视频编码器200可将一个或多个变换应用于残差块,以在变换域而非采样域中产生经变换的数据。例如,视频编码器200可将离散余弦变换(DCT)、整数变换、小波变换或概念上类似的变换应用于残差视频数据。另外,视频编码器200可在第一变换之后应用次级变换,例如,与模式有关的不可分离的次级变换(MDNSST)、与信号有关的变换、Karhunen-Loeve变换(KLT)等等。视频编码器200在应用一个或多个变换之后产生变换系数。
如上所述,在进行任何变换以产生变换系数之后,视频编码器200可以执行变换系数的量化。量化通常是指以下过程:对变换系数进行量化以可能减少用于表示变换系数的数据量,从而提供进一步压缩。通过执行量化过程,视频编码器200可以减小与一些或所有变换系数相关联的比特深度。举例来说,视频编码器200可在量化期间将n比特值舍入为m比特值,其中n大于m。在一些示例中,为了执行量化,视频编码器200可以执行待量化的值的按位右移。
在量化之后,视频编码器200可以扫描变换系数,从而从包括量化变换系数的二维矩阵产生一维向量。可以将扫描设计为将较高能量(因此频率较低)的变换系数放在矢量的前部,并将较低能量(因此频率较高)的变换系数放在矢量的后部。在一些示例中,视频编码器200可以利用预定义的扫描顺序来扫描量化的变换系数以产生序列化,然后对矢量的量化的变换系数进行熵编码。在其他示例中,视频编码器200可以执行自适应扫描。在扫描量化的变换系数以形成一维矢量之后,视频编码器200可以例如根据上下文自适应二进制算术译码(CABAC)对一维矢量进行熵编码。视频编码器200还可以对语法元素的值进行熵编码,该语法元素描述与编码视频数据相关联的元数据,以供视频解码器300在解码视频数据时使用。
为了执行CABAC,视频编码器200可以将上下文模型内的上下文指派给要发送的符号。上下文可以涉及例如符号的相邻值是否为零值。概率确定可以基于分配给符号的上下文。
视频编码器200还可以例如在图片报头、块报头、切片报头或其他语法数据(例如序列参数集(SPS)、图片参数集(PPS)或视频参数集(VPS))中向视频解码器300生成语法数据,例如基于块的语法数据、基于图片的语法数据和基于序列的语法数据。视频解码器300可类似地解码此类语法数据以确定如何对相应视频数据进行解码。
以此方式,视频编码器200可以生成包括编码视频数据的比特流,例如,描述将图片划分成块(例如,CU)的语法元素以及针对块的预测和/或残差信息。最终,视频解码器300可以接收比特流并对编码视频数据进行解码。
通常,视频解码器300执行与视频编码器200所执行的过程相逆的过程以对比特流的编码视频数据进行解码。例如,视频解码器300可以使用CABAC以与视频编码器200的CABAC编码过程基本相似(尽管与之相逆)的方式来对比特流的语法元素的值进行解码。语法元素可将图片的用于分区的分区信息定义为CTU,并根据相应分区结构对每个CTU进行划分(例如,QTBT结构)以定义CTU的CU。语法元素还可以定义针对视频数据的块(例如,CU)的预测和残差信息。
残差信息可以由例如量化的变换系数来表示。视频解码器300可以对块的量化的变换系数进行逆量化和逆变换以再现该块的残差块。视频解码器300使用信号传达的预测模式(内预测或间预测)和相关的预测信息(例如,用于间预测的运动信息)来形成针对该块的预测块。视频解码器300然后可以(逐个采样地)对预测块和残差块进行组合以再现原始块。视频解码器300可以执行附加处理,例如执行去块过程以减少沿块的边界的视觉伪像。
根据本公开内容的技术,如下文将更详细解释的,视频编码器200可被配置为:对所述视频数据的块进行编码;重构所述视频数据的所述块;将自适应环路滤波器应用于所述视频数据的经重构的块以创建所述视频数据的经滤波的块;以及在所述视频数据的所述块的经编码视频比特流中用信号传送自适应参数集(APS),其中,所述APS包括用于所述视频数据的所述块的亮度分量的、包括所应用的自适应环路滤波器的多个自适应环路滤波器集合。以互反的方式,视频解码器300可以被配置为:对所述视频数据的块进行解码;在经编码视频比特流中接收针对所述视频数据的所述块的自适应参数集(APS),其中,所述APS包括用于所述视频数据的所述块的亮度分量的多个自适应环路滤波器集合;从所述APS中的所述多个自适应环路滤波器集合中确定自适应环路滤波器以应用于所述视频数据的经解码的块;以及将所确定的自适应环路滤波器应用于所述视频数据的经解码的块以创建所述视频数据的经滤波的块。
本公开内容可以概括地提及“用信号传送”某些信息,例如语法元素。术语“用信号传送”通常可以指代语法元素和/或对编码视频数据进行解码的其他数据的值的通信。也就是说,视频编码器200可以用信号传送比特流中的语法元素的值。通常,用信号传送是指在比特流中生成值。如上所述,源设备102可以基本实时地或不实时地将比特流传输到目的地设备116,例如在将语法元素存储到存储设备112以供稍后由目的地设备116取回时可能发生。
图2A和图2B是示出示例四叉树二叉树(QTBT)结构130以及相应编码树单元(CTU)132的概念图。实线表示四叉树分割,虚线表示二叉树分割。在二叉树的每个拆分(即非叶)节点中,用信号传送一个标志位以指示使用哪种拆分类型(即,水平或垂直),在该示例中,0表示水平拆分,而1表示垂直拆分。对于四叉树拆分,由于四叉树节点将一个块水平和垂直拆分为大小相等的4个子块,因此无需指示拆分类型。因此,视频编码器200可以对QTBT结构130的区域树级别(即实线)的语法元素(例如拆分信息)以及QTBT结构130的预测树级别(即虚线)的语法元素(例如拆分信息)进行编码,并且视频解码器300可以对上述语法元素进行解码。视频编码器200可以对QTBT结构130的终端叶节点表示的CU的视频数据(例如预测和变换数据)进行编码,并且视频解码器300可以对上述数据进行解码。
通常,图2B的CTU 132可以与在第一和第二级别处定义与QTBT结构130的节点相对应的块的大小的参数相关联。这些参数可以包括CTU大小(代表采样中CTU 132的大小)、最小四叉树大小(MinQTSize,代表最小允许的四叉树叶节点大小),最大二叉树大小(MaxBTSize,代表最大允许的二叉树根节点大小),最大二叉树深度(MaxBTDepth,代表最大允许的最大二叉树深度)以及最小二叉树大小(MinBTSize,表示最小允许的二叉树叶节点大小)。
与CTU相对应的QTBT结构的根节点可以在QTBT结构的第一级具有四个子节点,可以根据四叉树划分来划分每个子节点。即,第一级的节点是叶节点(没有子节点)或具有四个子节点。QTBT结构130的示例表示这样的节点,包括父节点和具有实线分支的子节点。如果第一级的节点不大于最大允许的二叉树根节点大小(MaxBTSize),则可以通过相应的二叉树对这些节点进行进一步划分。可以迭代一个节点的二叉树拆分,直到拆分产生的节点达到最小允许的二叉树叶节点大小(MinBTSize)或最大允许的二叉树深度(MaxBTDepth)。QTBT结构130的示例将这样的节点表示为具有用于分支的虚线。二进制树叶节点被称为编码单元(CU),其用于预测(例如,图片内预测或图片间预测)和变换,而无需任何进一步的划分。如上文所讨论的,CU也可以被称为“视频块”或“块”。
在QTBT分区结构的一个示例中,CTU大小设置为128x128(亮度采样和两个相应的64x64色度采样),MinQTSize设置为16x16,MaxBTSize设置为64x64,MinBTSize(针对宽度和高度)设置为4,并且MaxBTDepth设置为4。首先将四叉树分区应用于CTU,以生成四叉树叶节点。四叉树叶节点的大小可以从16x16(即MinQTSize)到128x128(即CTU大小)。如果叶四叉树节点为128x128,则其将不会被二进制树进一步拆分,因为该大小超过了MaxBTSize(即,在该示例中为64x64)。否则,二叉树将对叶四叉树节点进行进一步划分。因此,四叉树叶节点也是二叉树的根节点,并且二叉树的深度为0。当二叉树深度达到MaxBTDepth(在该示例中为4)时,不允许进一步拆分。当二叉树节点宽度等于MinBTSize(在本示例中为4)时,意味着不允许进一步的水平拆分。类似地,高度等于MinBTSize的二叉树节点意味着该二叉树节点不允许进一步的垂直拆分。如上所述,二叉树的叶节点被称为CU,并且根据预测和变换对其进行进一步处理而无需进一步划分。
图3是示出可以执行本公开内容的技术的示例视频编码器200的方块图。提供图3是为了解释的目的,并且不应被认为是对本公开内容中广泛例示和描述的技术的限制。为了说明的目的,本公开内容在视频译码标准(例如开发中的HEVC视频译码标准和H.266视频译码标准)的上下文中描述了视频编码器200。然而,本公开内容的技术不限于这些视频译码标准,并且通常可应用于视频编码和解码。
在图3的示例中,视频编码器200包括视频数据存储器230、模式选择单元202、残差生成单元204、变换处理单元206、量化单元208、逆量化单元210、逆变换处理单元212、重构单元214、滤波器单元216、解码图片缓冲器(DPB)218和熵编码单元220。视频数据存储器230、模式选择单元202、残差生成单元204、变换处理单元206、量化单元208、逆量化单元210、逆变换处理单元212、重构单元214、滤波器单元216、DPB 218以及熵编码单元220中的任意一个或全部可以在一个或多个处理器中或在处理电路中实现。此外,视频编码器200可包括额外的或替代的处理器或处理电路,以执行这些和其他功能。
视频数据存储器230可以存储将要由视频编码器200的组件编码的视频数据。视频编码器200可以从例如视频源104(图1)接收存储在视频数据存储器230中的视频数据。DPB218可以用作参考图片存储器,该参考图片存储器存储参考视频数据,以供视频编码器200预测后续视频数据时使用。视频数据存储器230和DPB 218可以由多种存储器设备中的任何一种形成,例如动态随机存取存储器(DRAM),包括同步DRAM(SDRAM)、磁阻性RAM(MRAM)、电阻性RAM(RRAM)或其他类型的存储设备。视频数据存储器230和DPB 218可以由同一存储器设备或分离的存储器设备提供。在各个示例中,视频数据存储器230可以与视频编码器200的其他组件一起在芯片上,如图所示,或者相对于那些组件在芯片外。
在本公开内容中,除非如此具体地描述,否针对视频数据存储器230的引用不应解释为限于视频编码器200内部的存储器;或者除非如此具体地描述,否则对视频数据存储器230的引用不应解释为限于视频编码器200外部的存储器。而是,对视频数据存储器230的引用应被理解为存储视频编码器200所接收的用于编码的视频数据(例如,用于待编码的当前块的视频数据)的参考存储器。图1的存储器106还可以提供对视频编码器200的各个单元的输出的临时存储。
示出了图3的各个单元以帮助理解由视频编码器200执行的操作。这些单元可以实现为固定功能电路、可编程电路或其组合。固定功能电路是指提供特定功能并在可以被执行的操作上预先设置的电路。可编程电路是指可以程以执行各种任务并且在可以执行的操作中提供灵活功能的电路。例如,可编程电路可以执行使可编程电路以软件或固件的指令所定义的方式操作的软件或固件。固定功能电路可以执行软件指令(例如,以接收参数或输出参数),但固定功能电路执行的操作类型通常是不可变的。在一些示例中,这些单元中的一个或多个单元可以是不同的电路块(固定功能或可编程的),并且在一些示例中,这些一个或多个单元可以是集成电路。
视频编码器200可以包括从可编程电路形成的算术逻辑单元(ALU)、基本功能单元(EFU)、数字电路、模拟电路和/或可编程核。在使用由可编程电路执行的软件来执行视频编码器200的操作的示例中,存储器106(图1)可以存储视频编码器200所接收和执行的软件的目标代码,或者视频编码器200之内的另一存储器(未示出)可以存储这些指令。
视频数据存储器230被配置为存储接收到的视频数据。视频编码器200可以从视频数据存储器230检索视频数据的图片,并将视频数据提供给残差生成单元204和模式选择单元202。视频数据存储器230中的视频数据可以待编码的原始视频数据。
模式选择单元202包括运动估计单元222、运动补偿单元224和内预测单元226。模式选择单元202可以包括附加功能单元,以根据其他预测模式来执行视频预测。作为示例,模式选择单元202可以包括调色板单元、块内复制单元(其可以是运动估计单元222和/或运动补偿单元224的一部分)、仿射单元、线性模型(LM)单元,等等。
模式选择单元202通常协调多个编码通路,以测试编码参数的组合以及针对这些组合的所得速率失真值。编码参数可以包括将CTU划分为CU、用于CU的预测模式、用于CU的残差数据的变换类型、用于CU的残差数据的量化参数,等等。模式选择单元202可以最终选择具有比其他被测组合更好的速率失真值的编码参数的组合。
视频编码器200可将从视频数据存储器230检索到的图片划分为一系列CTU,并将一个或多个CTU封装在切片内。模式选择单元202可以根据树结构(例如上述HEVC的QTBT结构或四叉树结构)来划分图片的CTU。如上所述,视频编码器200可根据树结构通过划分CTU来形成一个或多个CU。这样的CU也通常可以被称为“视频块”或“块”。
概括地说,模式选择单元202还控制其组件(例如,运动估计单元222、运动补偿单元224和内预测单元226)以生成针对当前块(例如,当前CU,或在HEVC中,PU和TU的重叠部分)的预测块。对于当前块的间预测,运动估计单元222可以执行运动搜索以识别一个或一个以上参考图片(例如,存储在DPB 218中的一个或多个先前编码的图片)中的一个或多个紧密匹配的参考块。具体而言,运动估计单元222可以例如根据绝对差之和(SAD)、平方差之和(SSD)、平均绝对差(MAD)、均方差(MSD)等来计算表示潜在参考块与当前块的相似程度的值。运动估计单元222通常可使用当前块与所考虑的参考块之间的逐采样差异来执行这些计算。运动估计单元222可识别具有由这些计算产生的最低值的参考块,最低值指示与当前块最紧密匹配的参考块。
运动估计单元222可形成一个或多个运动向量(MV),其定义参考图片中的参考块相对于当前图片中的当前块的位置。运动估计单元222然后可以将运动向量提供给运动补偿单元224。例如,对于单向间预测,运动估计单元222可以提供单个运动矢量,而对于双向间预测,运动估计单元222可以提供两个运动矢量。运动补偿单元224然后可使用运动向量来生成预测块。例如,运动补偿单元224可以使用运动矢量来检索参考块的数据。作为另一示例,如果运动向量具有分数采样精度,则运动补偿单元224可根据一个或多个内插滤波器对预测块的值进行内插。此外,对于双向间预测,运动补偿单元224可以(例如通过逐采样平均或加权平均)来检索由相应运动向量标识的两个参考块的数据,并对检索的数据进行组合。
作为另一示例,对于内预测或内预测译码,内预测单元226可以根据与当前块相邻的采样来生成预测块。例如,对于定向模式,内预测单元226通常可以通过数学的方式对相邻采样的值进行组合,并在当前块上沿定义的方向填充这些计算出的值以产生预测块。作为另一示例,对于DC模式,内预测单元226可以计算相邻采样到当前块的的平均值,并且生成预测块以包括针对预测块的每个采样的该所得平均值。
模式选择单元202将预测块提供给残差生成单元204。残差生成单元204从视频数据存储器230接收当前块的原始未编码版本,并从模式选择单元202接收预测块。残差生成单元204计算当前块和预测块之间的逐采样差异。所得的逐采样差异定义了当前块的残差块。在一些示例中,残差生成单元204还可确定残差块中的采样值之间的差以使用残差差分脉冲代码调制(RDPCM)来产生残差块。在一些示例中,可以使用执行二进制减法的一个或多个减法器电路来形成残差生成单元204。
在模式选择单元202将CU划分为PU的示例中,每个PU可以与亮度预测单元和相应的色度预测单元相关联。视频编码器200和视频解码器300可以支持具有各种大小的PU。如上所述,CU的大小可以指的是CU的亮度译码块的大小,而PU的大小可以指的是PU的亮度预测单元的大小。假设特定CU的大小为2Nx2N,则视频编码器200可支持用于内预测的2Nx2N或NxN的PU大小,以及用于间预测的2Nx2N、2NxN、Nx2N、NxN或类似的对称PU大小。视频编码器200和视频解码器300还可支持针对用于间预测的2NxnU、2NxnD、nLx2N和nRx2N的PU大小的非对称划分。
在模式选择单元不进一步将CU划分为PU的实例中,每个CU可与亮度译码块和相应色度译码块相关联。如上所述,CU的大小可以指CU的亮度经编码块的大小。视频编码器200和视频解码器300可以支持2N×2N、2N×N或N×2N的CU大小。
对于其他视频译码技术(例如,块内复制模式译码、仿射模式译码和线性模型(LM)模式译码,仅举几例),模式选择单元202会经由与译码技术相关联的各个单元来生成针对正在被编码的当前块的预测块。在一些示例(例如调色板模式译码)中,模式选择单元202可以不生成预测块,而是生成指示基于所选择的调色板来对块进行重构的方式的语法元素。在这样的模式中,模式选择单元202可以将这些语法元素提供给熵编码单元220以进行编码。
如上所述,残差生成单元204接收当前块和相应预测块的视频数据。残差生成单元204然后生成当前块的残差块。为了生成残差块,残差生成单元204计算预测块和当前块之间的逐采样差异。
变换处理单元206将一个或多个变换应用于残差块以生成变换系数的块(在本文中被称为“变换系数块”)。变换处理单元206可以将各种变换应用于残差块以形成变换系数块。例如,变换处理单元206可以将离散余弦变换(DCT)、方向变换、Karhunen-Loeve变换(KLT)或概念上类似的变换应用于残差块。在一些示例中,变换处理单元206可以对残差块执行多个变换,例如主变换和次变换,例如旋转变换。在一些示例中,变换处理单元206不将变换应用于残差块。
量化单元208可以对变换系数块中的变换系数进行量化,以产生量化的变换系数块。量化单元208可以根据与当前块相关联的量化参数(QP)值来对变换系数块的变换系数进行量化。视频编码器200(例如,经由模式选择单元202)可通过调整与CU相关联的QP值来调整应用于与当前块相关联的系数块的量化程度。量化可能会导致信息丢失,因此,量化的变换系数的精度可能会比变换处理单元206生成的原始变换系数的精度低。
逆量化单元210和逆变换处理单元212可以分别对量化的变换系数块应用逆量化和逆变换,以从变换系数块重构残差块。重构单元214可以基于重构的残差块和由模式选择单元202生成的预测块来产生与当前块相对应的重构块(尽管可能具有某种程度的失真)。例如,重构单元214可以将重构的残差块的采样添加到模式选择单元202生成的来自预测块的相应采样,以产生重构块。
滤波器单元216可对重构块执行一个或多个滤波操作。例如,滤波器单元216可以执行解块操作以减少沿着CU的边缘的块状伪影。滤波器单元216还可执行本公开内容的用于确定和应用自适应环路滤波器的技术中的一种或多种技术,如下文将更详细描述的。在一些示例中,可以跳过滤波器单元216的操作。
根据本公开内容的技术,如下文将更详细解释的,滤波器单元216可以被配置为:执行本公开内容的一种或多种技术。例如,视频编码器200可被配置为:对视频数据的块进行编码,并使用上述任何预测技术或其他编码技术来重构视频数据的块。滤波器单元216可以被配置为:对所述视频数据的块进行编码;重构所述视频数据的所述块;将自适应环路滤波器应用于所述视频数据的经重构的块以创建所述视频数据的经滤波的块;以及在所述视频数据的所述块的经编码视频比特流中用信号传送自适应参数集(APS),其中,所述APS包括用于所述视频数据的所述块的亮度分量的、包括所应用的自适应环路滤波器的多个自适应环路滤波器集合。
视频编码器200将重构的块存储在DPB 218中。例如,在不需要滤波器单元216的操作的示例中,重构单元214可以将重构块存储到DPB 218。在需要滤波器单元216的操作的示例中,滤波器单元216可以将经滤波的重构块存储到DPB 218。运动估计单元222和运动补偿单元224可从由重构的(并且可能经滤波的)块形成的DPB 218向随后编码的图像的间预测块检索参考图像。此外,内预测单元226可以使用当前图片的DPB 218中的重构块来对当前图片中的其他块进行内预测。
通常,熵编码单元220可以对从视频编码器200的其他功能组件接收的语法元素进行熵编码。例如,熵编码单元220可以对来自量化单元208的量化的变换系数块进行熵编码。作为另一示例,熵编码单元220可以对来自模式选择单元202的预测语法元素(例如,用于间预测的运动信息或用于内预测的模式内信息)进行熵编码。熵编码单元220可以对作为视频数据的另一示例的语法元素执行一个或多个熵编码操作,以生成熵编码数据。例如,熵编码单元220可以执行上下文自适应可变长度编码(CAVLC)操作、CABAC操作、可变到可变(V2V)长度编码操作、基于语法的上下文自适应二进制算术编码(SBAC)操作、概率区间划分熵(PIPE)编码操作、索引Golomb编码操作或对数据的另一种熵编码操作。在一些示例中,熵编码单元220可以在语法元素未被熵编码的旁通模式下操作。
视频编码器200可输出包括重构切片或图片的块所需的熵编码语法元素的比特流。特别地,熵编码单元220可以输出比特流。
针对块描述了上述操作。这样的描述应该被理解为用于亮度译码块和/或色度译码块的操作。如上所述,在一些示例中,亮度译码块和色度译码块是CU的亮度和色度分量。在一些示例中,亮度译码块和色度译码块是PU的亮度和色度分量。
在一些示例中,不必针对色度译码块重复针对亮度译码块执行的操作。作为一个示例,不需要重复用于识别用于亮度译码块的运动矢量(MV)和参考图片的操作来识别用于色度块的MV和参考图片。而是,可以调节用于亮度译码块的MV以确定用于色度块的MV,并且参考图片可以是相同的。作为另一示例,对于亮度译码块和色度译码块,内预测过程可以是相同的。
视频编码器200表示被配置为进行以下操作的设备的示例:对视频数据的块进行编码;重构视频数据的块;将自适应环路滤波器应用于视频数据的经重构的块以创建视频数据的经滤波的块;以及在视频数据的块的经编码视频比特流中用信号传送自适应参数集(APS),其中,APS包括多个自适应环路滤波器集合,其包括应用于视频数据的块的亮度分量的自适应环路滤波器。
图4是示出可以执行本公开内容的技术的示例视频解码器300的方块图。提供图4是为了解释的目的,并且不对本公开内容中广泛例示和描述的技术进行限制。为了说明的目的,本公开内容根据JEM、VVC和HEVC的技术描述了视频解码器300。然而,本公开内容的技术可以由被配置为其他视频译码标准的视频译码设备来执行。
在图4的示例中,视频解码器300包括编码图片缓冲器(CPB)存储器320、熵解码单元302、预测处理单元304、逆量化单元306、逆变换处理单元308、重构单元310、滤波器单元312以及解码图片缓冲器(DPB)314。CPB存储器320、熵解码单元302、预测处理单元304、逆量化单元306、逆变换处理单元308、重构单元310、滤波器单元312和DPB 314中的任意一个或全部可以在一个或多个处理器中或在处理电路中实现。此外,视频解码器300可包括额外的或替代的处理器或处理电路,以执行这些和其他功能。
预测处理单元304包括运动补偿单元316和内预测单元318。预测处理单元304可以包括附加单元,以根据其他预测模式来执行预测。作为示例,预测处理单元304可以包括调色板单元、块内复制单元(其可以形成运动补偿单元316的一部分)、仿射单元、线性模型(LM)单元,等等。在其他示例中,视频解码器300可以包括更多、更少或不同的功能组件。
CPB存储器320可以存储将由视频解码器300的组件解码的视频数据(例如经编码视频比特流)。可以例如从计算机可读介质110(图1)获得存储在CPB存储器320中的视频数据。CPB存储器320可以包括存储来自经编码视频比特流的编码视频数据(例如,语法元素)的CPB。而且,CPB存储器320可以存储除译码图片的语法元素之外的视频数据,例如表示来自视频解码器300的各个单元的输出的临时数据。DPB 314通常存储解码图片,当对经编码视频比特流的后续数据或图片进行解码时,视频解码器300可以输出和/或使用解码图片当作参考视频数据。CPB存储器320和DPB314可以由多种存储器设备中的任何一种形成,例如动态随机存取存储器(DRAM),包括同步DRAM(SDRAM)、磁阻性RAM(MRAM)、电阻性RAM(RRAM)或其他类型的存储设备。CPB存储器320和DPB 314可以由同一存储器设备或分离的存储器设备提供。在各个示例中,CPB存储器320可以与视频解码器300的其他组件一起在芯片上,或者相对于那些组件在芯片外。
附加地或替代地,在一些示例中,视频解码器300可以从存储器120(图1)检索译码的视频数据。即,存储器120可以如上文针对CPB存储器320讨论的那样存储数据。同样,当视频解码器300的一些或全部功能在要由视频解码器300的处理电路执行的软件中实现时,存储器120可以存储要由视频解码器300执行的指令。
示出了图4的各个单元以帮助理解由视频解码器300执行的操作。这些单元可以实现为固定功能电路、可编程电路或其组合。与图3类似,固定功能电路是指提供特定功能并在可以被执行的操作上预先设置的电路。可编程电路是指可以程以执行各种任务并且在可以执行的操作中提供灵活功能的电路。例如,可编程电路可以执行使可编程电路以软件或固件的指令所定义的方式操作的软件或固件。固定功能电路可以执行软件指令(例如,以接收参数或输出参数),但固定功能电路执行的操作类型通常是不可变的。在一些示例中,这些单元中的一个或多个单元可以是不同的电路块(固定功能或可编程的),并且在一些示例中,这些一个或多个单元可以是集成电路。
视频解码器300可包括ALU、EFU、数字电路、模拟电路和/或由可编程电路形成的可编程核。在视频解码器300的操作由在可编程电路上执行的软件执行的示例中,片上或片外存储器可以存储视频解码器300接收并执行的软件的指令(例如,目标代码)。
熵解码单元302可以从CPB接收编码视频数据,并对视频数据进行熵解码以再现语法元素。预测处理单元304、逆量化单元306、逆变换处理单元308、重构单元310和滤波器单元312可以基于从比特流中提取的语法元素来生成解码视频数据。
通常,视频解码器300逐块地重构图片。视频解码器300可单独地对每个块执行重构操作(其中当前正在重构(即,被解码的)块可以被称为“当前块”)。
熵解码单元302可对定义量化的变换系数块的量化的变换系数的语法元素以及变换信息进行熵解码(例如量化参数(QP)和/或变换模式指示)。逆量化单元306可以使用与量化的变换系数块相关联的QP来确定量化度,并且同样地,确定逆量化度以供逆量化单元306应用。逆量化单元306可以例如执行按位左移操作以对量化的变换系数进行逆量化。逆量化单元306从而可以形成包括变换系数的变换系数块。
在逆量化单元306形成变换系数块之后,逆变换处理单元308可以将一个或多个逆变换应用于变换系数块以生成与当前块相关联的残差块。例如,逆变换处理单元308可以将逆DCT、逆整数变换、逆Karhunen-Loeve变换(KLT)、逆旋转变换、逆方向变换或另一种逆变换应用于系数块。
此外,预测处理单元304根据由熵解码单元302进行熵解码的预测信息语法元素来生成预测块。例如,如果预测信息语法元素指示当前块是间预测的,则运动补偿单元316可以生成预测块。在这种情况下,预测信息语法元素可以指示DPB 314中的从其检索参考块的参考图片,以及识别参考图片中的参考块相对于当前图片中的当前块位置的位置的运动矢量。运动补偿单元316通常可以用与针对运动补偿单元224所描述的方式基本相似的方式来执行间预测过程(图3)。
作为另一示例,如果预测信息语法元素指示当前块是内预测的,则内预测单元318可以根据由预测信息语法元素指示的内预测模式来生成预测块。再次,内预测单元318通常可以用与针对内预测单元226(图3)所描述的方式基本相似的方式来执行内预测过程。内预测单元318可以从DPB314检索当前块的相邻采样的数据。
重构单元310可以使用预测块和残差块来重构当前块。例如,重构单元310可以将残差块的采样添加到预测块的相应采样以重构当前块。
滤波器单元312可对重构块执行一个或多个滤波操作。例如,滤波器单元312可以执行解块操作以减少沿着重构块的边缘的块状伪影。滤波器单元312还可执行本公开内容的用于确定和应用自适应环路滤波器的技术中的一种或多种技术,如下文将更详细描述的。不一定在所有示例中都执行滤波器单元312的操作。
如下文将更详细解释的,滤波器单元312可以被配置为执行本公开内容的技术。例如,视频解码器300可以被配置为:对视频数据的块进行解码,并且在视频数据的块的经编码视频比特流中接收自适应参数集(APS),其中,APS包括用于视频数据的块的亮度分量的多个自适应环路滤波器集合。滤波器单元312可被配置为:从APS中的多个自适应环路滤波器集合中确定自适应环路滤波器以应用于视频数据的经解码的块,并将所确定的自适应环路滤波器应用于视频数据的经解码的块以创建视频数据的经滤波的块。
视频解码器300可以将重构块存储在DPB 314中。如上文所讨论的,DPB 314可以向预测处理单元304提供参考信息,例如用于内预测的当前图片的采样以及用于随后的运动补偿的先前解码的图片。此外,视频解码器300可以从DPB输出解码图片,以便随后在显示设备(例如图1的显示设备118)上呈现。
以这种方式,视频解码器300表示视频解码设备的实例,其包括被配置为存储视频数据的存储器,以及一个或多个处理单元,这些处理单元实施为电路并且被配置为:对视频数据的块进行解码;在经编码视频比特流中接收针对视频数据的块的自适应参数集(APS),其中,APS包括用于视频数据的块的亮度分量的多个自适应环路滤波器集合;从APS中的多个自适应环路滤波器集合中确定自适应环路滤波器以应用于视频数据的经解码的块;以及将所确定的自适应环路滤波器应用于视频数据的经解码的块以创建视频数据的经滤波的块。
如上所述,本公开内容中描述的示例技术与自适应环路滤波器有关。下面提供了关于自适应环路滤波的附加信息。
VVC测试模型5.0(VTM-5.0)中的自适应环路滤波器
在视频译码领域,通常应用滤波以提升经解码/经重构的视频信号的质量。滤波器可以用作后置滤波器,其中,经滤波的帧不用于未来帧的预测。在其他示例中,滤波器可以用作环路内滤波器,其中,经滤波的帧用于预测未来帧(例如,分别在图3和图4中的滤波器单元216和滤波器单元312)。因此,即使在视频编码器200未被配置为显示图片的示例中,视频编码器200也可以被配置为执行自适应环路滤波器技术(例如,经由滤波器单元216)作为环路内滤波器的一部分。视频解码器300可以被配置为:执行用于环路内滤波的自适应环路滤波器技术(例如,经由滤波器单元312),或者滤波器单元312可以作为在DPB 314的输出上的后置滤波器(或环路内滤波器和后置滤波器的某种组合)。例如,可以通过使原始信号和经解码的滤波信号之间的误差最小化来设计滤波器。在本公开内容中,经重构块或图片可以指视频编码器200的重构单元214的输出。经解码的块或图片可以指视频解码器300的重构单元310的输出。
带裁剪的自适应环路滤波器
在VTM-5.0中,经解码的滤波器系数f(k,l)和裁剪值c(k,l)应用于经解码/重构的图像R(i,j),如下所示:
Figure BDA0003346547990000271
在一些实例中,视频编码器200和视频解码器300可以被配置为:将7x7滤波器应用于块的亮度分量,并且将5x5滤波器应用于块的色度分量。图5是示出自适应环路滤波器支持的示例的概念图。如图5所示,自适应环路滤波器支持500是5x5菱形滤波器支持,自适应环路滤波器支持502是7x7菱形滤波器支持,其中C#值是滤波器系数。
像素分类
对于块的亮度分量,视频编码器200和视频解码器300可以被配置为:基于1D拉普拉斯方向(最多5个方向)和2D拉普拉斯活动(最多5个活动值)对整个图片中的4x4块进行分类。视频编码器200和视频解码器300可以被配置为:对方向Dirb和未量化活动Actb的计算进行进一步量化。作为一个示例,Actb被量化到范围0至4,包括端点0和4。
首先,视频编码器200和视频解码器300可以被配置为:除了在现有自适应环路滤波器中使用的水平和垂直梯度(例如,在VVC草案5中)之外,使用1-D拉普拉斯算子来计算两个对角梯度的值。从下文的公式(2)至(5)中可见,视频编码器200和视频解码器300可以被配置为:使用覆盖目标像素的8x8窗口内的所有像素的梯度总和作为目标像素的表示梯度,其中,R(k,l)是位置(k,l)的经重构的像素,并且索引i和j指代4×4块中左上角像素的坐标。每个像素与四个梯度值相关联,其中,垂直梯度由gv表示,水平梯度由gh表示,135度对角梯度由gd1表示,45度对角梯度由gd2表示。
Figure BDA0003346547990000272
Vk,l=|2R(k,l)-R(k,l-1)-R(k,l+1)|,如果k和l二者都是偶数,或者k和l二者都不是偶数。否则,为0。
Figure BDA0003346547990000273
Hk,l=|2R(k,l)-R(k-1,l)-R(k+1,l)|,如果k和l二者都是偶数,或者k和l二者都不是偶数。否则,为0。
Figure BDA0003346547990000281
D1k,l=|2R(k,l)-R(k-1,l-1)-R(k+1,l+1)|,如果k和l二者都是偶数,或者k和l二者都不是偶数。否则,为0。
Figure BDA0003346547990000282
D2k,l=|2R(k,l)-R(k-1,l+1)-R(k+1,l-1)|,如果k和l二者都是偶数,或者k和l二者都不是偶数。否则,为0。
为了分配方向性Dirb,视频编码器200和视频解码器300可以被配置为:将水平和垂直梯度的最大值和最小值的比率(由(6)中的Rh,v表示)以及两个对角梯度的最大值和最小值的比率(由(7)中的Rd1,d2表示)与两个阈值t1和t2进行比较。
Figure BDA0003346547990000283
其中
Figure BDA0003346547990000284
Figure BDA0003346547990000285
其中
Figure BDA0003346547990000286
通过比较检测到的水平/垂直和对角梯度的比率,在公式(8)中定义了五种方向模式,即,Dirb在[0,4]的范围内,包括端点0和4。在表1中描述了Dirb的值及其物理意义。
Figure BDA0003346547990000287
表1.方向值及其物理意义
Figure BDA0003346547990000291
视频编码器200和视频解码器300可以被配置为将活动值Act计算为:
Figure BDA0003346547990000292
视频编码器200和视频解码器300可以被配置为:进一步将Act的值量化到0到4的范围,包括端点0和4,并且经量化的值被表示为
Figure BDA0003346547990000293
从活动值Act到活动索引
Figure BDA0003346547990000294
的量化过程
量化过程定义如下:
avg_var=Clip_post(NUM_ENTRY-1,(Act*ScaleFactor)>>shift);
Figure BDA0003346547990000295
其中NUM_ENTRY被设置为16,ScaleFactor被设置为64,shift为(4+内部译码比特深度),ActivityToIndex[NUM_ENTRY]={0,1,2,2,2,2,2,3,3,3,3,3,3,3,3,4},函数Clip_post(a,b)返回a和b之间的较小值。
总的来说,视频编码器200和视频解码器300可以被配置为:将每个4x4亮度块分类为25(5x5)个类中的一个,并且根据块的Dirb和块的Actb的值向每个4x4块分配索引。视频编码器200和视频解码器300可以被配置为:用C来表示组索引,并且被设置为等于
Figure BDA0003346547990000296
其中
Figure BDA0003346547990000297
是Actb的经量化的值。
几何变换
在一些示例中,对于每一类别,视频编码器200可以被配置为:译码和用信号传送一组滤波器系数和裁剪值。为了更好地区分标有相同类别索引的块的不同方向,可以使用四种几何变换,包括不变换、对角变换、垂直翻转变换和旋转变换。
图6是示出示例5x5菱形滤波器支持600的概念图。图7中描绘了具有三个几何变换的5×5滤波器支持的示例,包括对角变换700、垂直翻转变换710以及旋转变换720。比较图6和图7,三个附加几何变换的公式形式如下:
对角变换:fD(k,l)=f(l,k),cD(k,l)=c(l,k),
垂直翻转变换:fV(k,l)=f(k,K-l-1),cV(k,l)=c(k,K-l-1) (10)
旋转变换:fR(k,l)=f(K-l-1,k),cR(k,l)=c(K-l-1,k),
其中,K是滤波器的大小,0≤k,l≤K-1是系数坐标,使得位置(0,0)位于块的左上角,位置(K-1,K-1)位于块的右下角。当使用菱形滤波器支持时,例如在现有的自适应环路滤波器中,具有滤波器支持之外的坐标的系数将被设置为0。用于指示和确定几何变换索引的一种技术是隐式地推导出几何变换索引(例如,没有信令)以避免额外开销。在几何自适应环路滤波器(GALF)中,视频编码器200和视频解码器300可以被配置为:根据为该块计算的梯度值将变换应用于滤波器系数f(k,l)。在表1中描述了变换与使用公式(2)-(5)计算的四个梯度之间的关系。总而言之,变换基于两个梯度(水平梯度和垂直梯度,或45度和135度梯度)中的哪一个较大。基于该比较,可以提取更准确的方向信息。因此,可以通过变换得到不同的滤波结果,而不会增加滤波器系数的开销。
表2.梯度和变换的映射。
Figure BDA0003346547990000301
滤波器信息信令
一个亮度滤波器集合包括所有25个类别的滤波器信息(包括滤波器系数和裁剪值)。在一个示例中,视频编码器200和视频解码器300可使用一个或多个固定滤波器来预测每个类别的滤波器。在一些示例中,视频编码器200可以被配置为:用信号传送每个类别的标志以指示该类别是否使用固定滤波器作为其滤波器预测器。如果是(例如,使用固定滤波器),则用信号传送固定滤波器信息。
为了减少表示滤波器系数所需的比特数量,可以对不同的类别进行合并。可以通过为25个类别中的每个类别发送索引iC来提供指示哪些类别被合并的信息。具有相同索引iC的类共享相同的经译码的滤波器系数。视频编码器200可以被配置为:用信号传送在针对每个亮度滤波器集合的类和滤波器之间的映射。视频编码器200和视频解码器300可以被配置为:用截短的二进制二值化方法对索引iC进行译码。
在一些示例中,视频编码器200和视频解码器300可以被配置为:从先前用信号传送的滤波器预测用信号传送的滤波器。
自适应参数集
在VTM-5.0中,自适应参数集(APS)用于在比特流中携带自适应环路滤波器系数。自适应参数集也可以被称为适配参数集。APS是一种语法结构,其包含应用于切片的语法元素,这些切片由在切片报头中找到的语法元素确定。在一些示例中,APS可以包括亮度滤波器(例如,用于亮度分量的自适应环路滤波器)或色度滤波器(例如,用于色度分量的自适应环路滤波器)或这二者的集合。在一些示例中,视频编码器200和视频解码器300可以被配置为:在相应的瓦片组报头中对用于当前瓦片组的APS的索引进行译码。
基于译码树块(CTB)的滤波器集合开关
在VTM-5.0中,视频编码器200和视频解码器300可以被配置为:使用从先前编码的瓦片组生成的滤波器用于当前瓦片组,以便节省滤波器信令的开销。视频编码器200和视频解码器300可以被配置为:针对亮度译码树块(CTB)从固定滤波器集合和来自APS的滤波器集合之中来确定滤波器集合。视频编码器200可以被配置为:用信号传送滤波器集合索引。视频解码器300可以被配置为:使用来自与亮度CTB相同的APS的用于色度CTB的滤波器集合。在瓦片组报头、切片报头和/或图片报头中,视频编码器200可以用信号传送用于当前瓦片组的亮度和色度CTB的APS。
上述特征说明一些示例自适应环路滤波器技术缺乏针对亮度和色度CTB二者用信号传送和确定滤波器的灵活性。鉴于上文讨论的技术的这些缺点和缺乏灵活性,本公开内容描述了可以基于上述技术改进的以下技术。下文描述的每一种技术可以独立使用或可以以任意组合一起使用。本公开内容的技术可以通过在选择可能的自适应环路滤波器以应用于视频数据的亮度和色度分量方面提供额外的灵活性来提高经解码/经重构视频数据的译码效率和/或减少失真。下文描述的本公开内容的技术参考使用译码树块(CTB)的实例。然而,应当理解,本发明的技术适用于任何大小的块,包括CTB、译码单元、预测单元、子块、采样组和/或个体采样。
在本公开内容的一个示例中,视频编码器200和视频解码器300可以被配置为:从多个APS中选择和/或确定用于一个瓦片组、切片和/或图片中的色度CTB\瓦片或块组中的色度CTB\或者切片中的色度CTB的滤波器(例如,自适应环路滤波器)。视频编码器200可以被配置为:用信号传送一个或多个APS索引,这些APS索引用于确定用于报头(例如,切片报头或瓦片组报头)中的色度块(例如,CTB、子块、采样组或采样)的自适应环路滤波器。在一个示例中,视频编码器200可以被配置为:用信号传送用于当前切片或瓦片组和/或图片中的色度CTB的APS的数量。然后,视频编码器200可以被配置为:用信号传送所有使用的APS的索引。即,视频编码器200可以被配置为:用信号传送视频解码器300要针对其获得并应用自适应环路滤波器的APS的索引。
对于启用了自适应环路滤波的每个色度CTB,视频编码器200可以被配置为:用信号传送滤波器索引或APS索引。视频解码器300可以被配置为:对滤波器索引和/或APS索引进行解码并且应用所指示的自适应环路滤波器。例如,视频解码器300可以获得用于与用信号传送的APS索引相关联的色度CTB的自适应环路滤波器。
在一个示例中,视频编码器200和视频解码器300可以被配置为:共享同一APS索引集合或者用于Cb和Cr色度分量的同一滤波器集合。在另一示例中,视频编码器200可以被配置为:用信号传送仅用于Cb分量的滤波器集合的APS索引集合,并且可以用信号传送仅用于Cr分量的另一个APS索引集合。视频解码器300可以对仅用于Cb分量的滤波器集合的APS索引进行解码,并且可以对仅用于Cr分量的另一APS索引集合进行解码,并且可以基于由APS索引指示的APS中的滤波器集合将自适应环路滤波器应用于Cr和Cb分量。
在一些示例中,视频编码器200和视频解码器300可以被配置为:使用单独的滤波器将自适应环路滤波器应用于Cb和Cr色度分量。不是在APS中最多包含一个色度滤波器,APS可以具有一个用于Cb的滤波器(例如,自适应环路滤波器)和另一个用于Cr的滤波器。
在一个示例中,当用信号传送这两个滤波器时,视频解码器300可以被配置为:从另一个用信号传送的滤波器预测一个滤波器。视频编码器200可以被配置为:用信号传送标志以指示是否应用预测。如果是(例如,应用了预测),则视频编码器200可以被配置为:用信号传送滤波器与其预测器之间的差异。视频解码器300然后可以将用信号传送的差异添加到预测器以获得滤波器。
在另一示例中,视频编码器200可以被配置为:用信号传送标志以指示用于Cr和Cb分量的两个滤波器是否相同。
在另一示例中,视频编码器200和视频解码器300可以确定用于多个APS之中的色度CTB的滤波器。在一个示例中,视频编码器200和视频解码器300可以仅将来自同一颜色分量的滤波器用于色度CTB。在另一示例中,视频编码器200和视频解码器300可以将滤波器用于来自任何颜色分量的色度CTB。
在本公开内容的另一示例中,视频编码器200和视频解码器300可以被配置为:对包括多个亮度滤波器集合的APS进行译码。例如,视频编码器200可以被配置为:对视频数据的块进行编码,并且重构视频数据的块。视频编码器200然后可将自适应环路滤波器应用于视频数据的经重构的块以创建视频数据的经滤波的块。根据本公开内容的技术,视频编码器200可以在视频数据的块的经编码视频比特流中用信号传送自适应参数集(APS),其中,APS包括用于视频数据的块的亮度分量的多个自适应环路滤波器集合,其包括所应用的自适应环路滤波器。
以互易的方式,视频解码器300可以对视频数据的块进行解码。视频解码器300还可以在经编码视频比特流中接收针对视频数据的块的自适应参数集(APS),其中,APS包括用于视频数据的块的亮度分量的多个自适应环路滤波器集合。视频解码器300然后可以从APS中的多个自适应环路滤波器集合中确定自适应环路滤波器以应用于视频数据的经解码的块,并将所确定的自适应环路滤波器应用于视频数据的经解码的块以创建视频数据的经滤波的块。通过使用包括多个自适应环路滤波器集合的APS,视频编码器200在针对不同的视频数据的块指示所使用的实际滤波器集合以及来自所使用的滤波器集合的实际自适应环路滤波器方面可以具有更大的灵活性。
在一个示例中,视频编码器200和视频解码器300可以根据一个或多个先前编码的滤波器集合来预测亮度滤波器集合。例如,视频编码器200和视频解码器300可以根据当前块的APS从一个或多个先前解码的自适应环路滤波器集合预测自适应环路滤波器集合。视频编码器200可以被配置为:用信号传送标志以指示是否应用预测。如果是(例如,应用了预测),则视频编码器200可以被配置为:用信号传送滤波器与其预测器之间的差异。视频解码器300然后可以将用信号传送的差添加到预测器以获得滤波器。
当应用自适应环路滤波器时,视频编码器200可以针对CTB用信号传送使用哪个滤波器集合和哪个合并表。合并表可以指示一类滤波器(各种块可以具有不同的分类)与要使用的滤波器或要应用的滤波器集合之间的映射。在该示例中,视频编码器200可以被配置为:用信号传送指示自适应环路滤波器集合和合并表的一个或多个语法元素,其中,合并表指示类别与要应用的自适应环路滤波器之间的映射。以互易的方式,为了从APS中的多个自适应环路滤波器集合确定自适应环路滤波器,视频解码器300可以被配置为:接收指示自适应环路滤波器集合和合并表的一个或多个语法元素。视频解码器300然后可以从所指示的自适应环路滤波器集合和合并表确定自适应环路滤波器。
在一个示例中,APS可以包括一个滤波器集合和多个合并表。即,APS中的多个自适应环路滤波器集合由单个自适应环路滤波器集合和多个合并表表示。在另一示例中,APS可以包括一个合并表和多个滤波器集合。即,APS中的多个自适应环路滤波器集合由多个自适应环路滤波器集合和单个合并表表示。在另一示例中,APS可以包括多个滤波器集合并且每个集合具有一个或多个合并表。即,APS中的多个自适应环路滤波器集合由多个自适应环路滤波器集合表示,其中,多个自适应环路滤波器集合中的每个自适应环路滤波器集合与一个或多个合并表相关联。
在本公开内容的另一示例中,视频编码器200和视频解码器300可以被配置为:针对亮度CTB/块对多个APS索引进行译码以指示滤波器(例如,自适应环路滤波器)、合并表和/或裁剪值所来自的APS。例如,视频编码器200可以被配置为:在经编码视频比特流中用信号传送针对视频数据的块的的多个APS;以及用信号传送用于视频数据的块的多个APS索引,其中,多个APS索引中的每个相应APS索引指示针对视频数据的块的以下各项中的一项或多项:从多个APS中的哪个APS确定自适应环路滤波器、合并表或裁剪值。
以互易的方式,视频解码器300可以被配置为:接收视频数据的块的经编码视频比特流中的多个APS;接收用于视频数据的块的多个APS索引,其中,多个APS索引中的每个相应APS索引指示针对视频数据的块的以下各项中的一项或多项:从多个APS中的哪个APS确定自适应环路滤波器、合并表或裁剪值。
在一个示例中,多个APS索引中的一个APS索引指示滤波器来自哪个APS,多个APS索引中的另一个APS索引指示裁剪值来自哪个APS,并且多个APS索引中的另一个APS索引指示合并表来自的APS索引。
在另一示例中,多个APS索引中的一个APS索引指示滤波器(例如,滤波器系数)和裁剪值来自的APS,并且多个APS索引中的另一个APS索引指示合并表来自的APS。
在另一示例中,多个APS索引中的一个APS索引指示滤波器(例如,滤波器系数)和合并表来自的APS,并且多个APS索引中的另一个APS索引指示裁剪值来自的APS。
在另一示例中,多个APS索引中的一个APS索引指示滤波器来自的APS,并且多个APS索引中的另一个APS索引指示裁剪值和合并表来自的APS。
在另一示例中,对于亮度CTB/块,视频编码器200和视频解码器300可以重新使用来自一个APS的系数和裁剪值,并且用信号传送/解码标志以指示/确定是否用信号传送新的合并表。如果标志为真,则针对CTB/块用信号传送新的合并表;否则,视频编码器200和视频解码器300使用来自APS的合并表。
在另一示例中,对于亮度CTB/块,视频编码器200和视频解码器300可以重新使用来自一个APS的系数和合并表,并且用信号传送/解码标志以指示/确定是否用信号传送新的裁剪值。如果该标志为真,则针对CTB/块用信号传送新的裁剪值;否则,视频编码器200和视频解码器300使用来自APS的裁剪值。
在另一示例中,对于亮度CTB/块,视频编码器200和视频解码器300可以重新使用来自一个APS的系数,并用信号传送标志以指示是否用信号传送新的裁剪值。如果该标志为真,则针对CTB/块用信号传送新的裁剪值;否则,使用来自APS的裁剪值。此外,可以用信号传送标志以指示是否用信号传送合并表。如果标志为真,则针对CTB/块用信号传送新的合并表;否则,视频编码器200和视频解码器300使用来自APS的合并表。
在另一实例中,对于亮度CTB/块,视频编码器200和视频解码器300可重新使用来自先前编码的CTB/块的合并表并使用来自APS的滤波器系数。
在另一示例中,对于亮度CTB/块,视频编码器200和视频解码器300可以使用来自多个滤波器集合的滤波器。可以用信号传送一个标志以指示滤波器是否来自同一滤波器集合。如果不是,则对于每个滤波器,视频编码器200可以用信号传送该滤波器来自哪个滤波器集合。
在另一示例中,对于CTB,视频编码器200可使用来自不同滤波器集合的滤波器系数和裁剪值。可以用信号传送一个标志以指示系数和裁剪值是否来自相同的滤波器集合。如果不是,则在译码比特流中用信号传送关于在何处获得系数和裁剪值的信息。
图8是示出用于对当前块进行编码的示例方法的流程图。当前块可以包括当前CU。尽管针对视频编码器200(图1和图3)进行了描述,但应该理解的是:其他设备可以被配置为执行与图8类似的方法。
在该示例中,视频编码器200最初预测当前块(350)。举例来说,视频编码器200可形成当前块的预测块。视频编码器200然后可以计算当前块的残差块(352)。为了计算残差块,视频编码器200可计算原始未编码块与当前块的预测块之间的差。视频编码器200然后可以对残差块的系数进行变换和量化(354)。视频编码器200然后可以重构块并应用自适应环路滤波器(过程A)。将参考图9更详细地描述过程A。接下来,视频编码器200可以对残差块的经量化的变换系数进行扫描(356)。在扫描期间或在扫描之后,视频编码器200可对系数进行熵编码(358)。例如,视频编码器200可使用CABAC对系数进行编码。视频编码器200然后可以输出块的熵译码数据(360)。
图9是更详细地示出本公开内容的示例编码方法的流程图。视频编码器200的一个或多个结构组件可以被配置为执行图9的技术,包括滤波器单元216。
在本公开内容的一个示例中,视频编码器200可以被配置为:对视频数据的块进行编码(900)。例如,视频编码器200可以使用图8的方法对视频数据的块进行编码。然后视频编码器200可以执行图8中的过程A。例如,视频编码器200可以重构视频数据的块(902),并且视频编码器200的滤波器单元216可以将自适应环路滤波器应用于视频数据的重构块以创建视频数据的经滤波的块(904)。视频编码器200还可以在视频数据的块的经编码视频比特流中用信号传送自适应参数集(APS),其中,APS包括多个自适应环路滤波器集合,其包括应用于视频数据的块的亮度分量的自适应环路滤波器(906)。
在一个示例中,视频编码器200可以被配置为:用信号传送指示自适应环路滤波器集合和合并表的一个或多个语法元素,其中,合并表指示类别与要应用的自适应环路滤波器之间的映射。在一个示例中,多个自适应环路滤波器集合由单个自适应环路滤波器集合和多个合并表表示。在另一示例中,多个自适应环路滤波器集合由多个自适应环路滤波器集合和单个合并表表示。在另一示例中,多个自适应环路滤波器集合由多个自适应环路滤波器集合表示,其中,多个自适应环路滤波器集合中的每个自适应环路滤波器集合与一个或多个合并表相关联。
在另一示例中,视频编码器200可以被配置为:在经编码视频比特流中用信号传送针对视频数据的块的的多个APS;以及用信号传送用于视频数据的块的多个APS索引,其中,多个APS索引中的每个相应APS索引指示以下各项中的一项或多项:从多个APS中的哪个APS确定针对视频数据的块的自适应环路滤波器、合并表或裁剪值。
图10是示出用于对视频数据的当前块进行解码的示例方法的流程图。当前块可以包括当前CU。尽管针对视频解码器300(图1和图4)进行了描述,但应该理解的是:其他设备可以被配置为执行与图10类似的方法。
视频解码器300可接收当前块的熵译码数据,例如,熵译码预测信息和与当前块相对应的残差块的系数的熵译码数据(370)。视频解码器300可以对熵译码数据进行熵解码以确定针对当前块的预测信息并再现残差块的系数(372)。视频解码器300可例如使用由针对当前块的预测信息所指示的内预测或间预测模式来预测当前块(374),以计算针对当前块的预测块。视频解码器300然后可以对再现的系数进行逆扫描(376),以创建经量化的变换系数的块。然后,视频解码器300可以对系数进行逆量化和逆变换以产生残差块(378)。视频解码器300可通过对预测块和残差块进行组合来最终对当前块进行解码(380)。视频解码器300可以将自适应环路滤波器应用于经解码的块(过程B)。将参考图11更详细地描述过程B。
图11是更详细地示出本公开内容的示例解码方法的流程图。视频解码器300的一个或多个结构组件可以被配置为执行图9的技术,包括滤波器单元312。
在一个示例中,视频解码器300可以被配置为:对视频数据的块进行解码(950)。例如,视频解码器300可以使用图10的方法对视频数据的块进行解码。然后视频解码器300可以执行图10中的过程B。例如,视频解码器300可以在经编码视频比特流中接收针对视频数据的块的自适应参数集(APS),其中,APS包括用于视频数据的块的亮度分量的多个自适应环路滤波器集合(952);以及从APS中的多个自适应环路滤波器集合中确定自适应环路滤波器以应用于视频数据的经解码的块(954)。视频解码器300然后可以将所确定的自适应环路滤波器应用于视频数据的经解码的块以创建视频数据的经滤波的块(956)。
在一个示例中,视频解码器300可以被配置为:根据当前块的APS从一个或多个先前解码的自适应环路滤波器集合预测自适应环路滤波器集合。
在另一示例中,为了从APS中的多个自适应环路滤波器集合中确定自适应环路滤波器,视频解码器300可以被配置为:接收指示自适应环路滤波器集合和合并表的一个或多个语法元素,其中,合并表指示类别与要应用于视频数据的经解码的块的自适应环路滤波器之间的映射;以及从所指示的自适应环路滤波器集合和合并表中确定自适应环路滤波器。
在一个示例中,多个自适应环路滤波器集合由单个自适应环路滤波器集合和多个合并表表示。在另一示例中,多个自适应环路滤波器集合由多个自适应环路滤波器集合和单个合并表表示。在另一示例中,多个自适应环路滤波器集合由多个自适应环路滤波器集合表示,其中,多个自适应环路滤波器集合中的每个自适应环路滤波器集合与一个或多个合并表相关联。
在另一示例中,视频解码器300可以被配置为:接收视频数据的块的经编码视频比特流中的多个APS;接收用于视频数据的块的多个APS索引,其中,多个APS索引中的每个相应APS索引指示以下各项中的一项或多项:从多个APS中的哪个APS确定针对视频数据的块的自适应环路滤波器、合并表或裁剪值。
下面描述了本公开内容的其他示例。
示例1-一种用于对视频数据进行译码的方法,所述方法包括:重构译码树块;根据本公开内容的一种或多种技术确定用于所述译码树块的自适应环路滤波器;以及将所述自适应环路滤波器应用于所述经重构的译码树块。
示例2-根据示例1所述的方法,其中,译码树块为色度译码树块,其中确定用于所述色度译码树块的所述自适应环路滤波器包括:从多个自适应参数集中确定用于所述色度译码树块的所述自适应环路滤波器。
示例3-根据示例2所述的方法,其中,所述色度译码树块包括Cr译码树块和Cb译码树块,并且其中,确定用于所述色度译码树块的所述自适应环路滤波器包括:确定用于所述Cr译码树块和所述Cb译码树块二者的相同的自适应环路滤波器。
示例4-根据示例2所述的方法,其中,所述色度译码树块包括Cr译码树块和Cb译码树块,并且其中,确定用于所述色度译码树块的所述自适应环路滤波器包括:确定用于所述Cr译码树块和所述Cb译码树块二者的不同自适应环路滤波器。
示例5-根据示例1所述的方法,还包括:对多个自适应参数集中的一个或多个进行译码,其中,第一自适应参数集包括用于亮度分量的多个自适应环路滤波器集合。
示例6-根据示例5所述的方法,还包括:从先前经译码的滤波器集合中预测用于亮度分量的自适应环路滤波器集合。
示例7-根据示例1所述的方法,还包括:将索引译码到多个自适应滤波器集合中的第一自适应参数集合,其中,所述索引指示从其确定自适应环路滤波器、合并表或裁剪值中的一项或多项的所述第一自适应参数集合。
示例8-根据示例1所述的方法,其中,所述译码树块是亮度译码树块,并且其中,确定用于所述亮度译码树块的所述自适应环路滤波器包括:重新使用来自先前经译码的自适应参数集的所述自适应环路滤波器的滤波器系数。
示例9-根据示例8所述的方法,还包括:对所述亮度译码树块的裁剪值进行译码。
示例10-根据示例1所述的方法,其中,所述译码树块为色度译码树块,并且其中,确定用于所述亮度译码树块的所述自适应环路滤波器包括:重新使用来自先前编码的自适应参数集的所述自适应环路滤波器的合并表。
示例11-根据示例1所述的方法,还包括:显示包括所述经重构的译码树块的图片。
示例12-根据示例1-11中的任意示例所述的方法,其中,译码包括解码。
示例13-根据示例1-11中的任意示例所述的方法,其中,译码包括编码。
示例14-一种用于对视频数据进行译码的设备,所述设备包括用于执行根据示例1-13中的任意示例所述的方法的一个或多个单元。
示例15-根据示例14所述的设备,其中,所述一个或多个单元包括电路中实现的一个或多个处理器。
示例16-根据示例14和15中的任意示例所述的设备,还包括用于存储所述视频数据的存储器。
示例17-根据示例14-16中的任意示例所述的设备,还包括被配置为显示经解码视频数据的显示器。
示例18-根据示例14-17中的任意示例所述的设备,其中,所述设备包括下列中的一项或多项:照相机、计算机、移动设备、广播接收机设备或机顶盒。
示例19-根据示例14-18中的任意示例所述的设备,其中,所述设备包括视频解码器。
示例20-根据示例14-19中的任意示例所述的设备,其中,所述设备包括视频编码器。
示例21-一种具有存储在其上的指令的计算机可读存储介质,当被执行时,所述指令使得一个或多个处理器执行根据示例1-13中任意示例所述的方法。
示例22-本公开内容中描述的技术的任何组合。
应该认识到的是:根据示例,本文中描述的技术中的任一种技术的某些动作或事件可以不同的顺序执行,可以添加、合并或一起省略(例如,对于技术的实施来说,不是所有所描述的动作都是必要的)。此外,在某些示例中,动作或事件可以并发执行(例如,通过多线程处理、中断处理或多处理器)而不是顺序执行。
在一个或多个示例中,可以用硬件、软件、固件、或它们的任意组合来实现所描述的功能。如果用软件来实现,则这些功能可以作为一条或多条指令或代码存储在计算机可读介质上、或者通过计算机可读介质发送、以及由基于硬件的处理单元执行。计算机可读介质可以包括计算机可读存储介质,其与诸如数据存储介质的有形介质,或通信介质(其包括例如,根据通信协议便于将计算机程序传送从一个地点转移到另一个地点的任何介质)相对应。以这种方式,计算机可读介质通常可以对应于(1)非暂时性的有形计算机可读存储介质或者(2)通信介质(诸如信号或载波)。数据存储介质可以是可以由一个或多个计算机或一个或多个处理器存取以便取回用于本公开内容中描述的技术的实现的指令、代码和/或数据结构的任何可用介质。计算机程序产品可以包括计算机可读介质。
通过举例而非限制的方式,这种计算机可读存储介质可以包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储、磁盘存储或其它磁存储设备、闪存器或者可以用于存储具有指令或数据结构形式的所期望的程序代码并可以由计算机存取的任何其它介质。此外,任何连接都可以被适当地称为计算机可读介质。例如,如果使用同轴电缆、光纤线缆、双绞线、数字用户线(DSL)、或诸如红外线、无线电和微波的无线技术,从网站、服务器、或其它远程源发送指令,那么,同轴电缆、光纤线缆、双绞线、DSL、或诸如红外线、无线电和微波的无线技术包含在介质的定义中。然而,应该理解的是:计算机可读存储介质和数据存储介质不包括连接、载波、信号或其它暂时性介质,而是针对非暂时性、有形的存储介质。如本文中所使用的,磁盘(disk)和光盘(disc)包括压缩光盘(CD)、激光光盘、光盘、数字通用光盘(DVD)、软盘和蓝光光盘,其中磁盘通常磁性地复制数据,而光盘则用激光来光学地复制数据。上述各项的组合也应该包括在计算机可读介质的范围之内。
指令可以由一个或多个处理器执行,例如一个或多个数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其它等效集成或离散逻辑电路的一个或多个处理器。因此,如本文中所使用的,术语“处理器”和“处理电路”可以指代前述结构或适于本文中所描述的技术的实现的任何其它结构中的任何一个。此外,在一些方面,本文中描述的功能可以在被配置用于编码和解码的专用硬件和/软件模块之内提供,或者并入组合编解码器。此外,这些技术可以在一个或多个电路或逻辑单元中完全实现。
本公开内容的技术可以在多种设备或装置中实现,这些设备或装置包括无线手持设备、集成电路(IC)或一组IC(例如,芯片组)。本公开内容中描述了各种组件、模块或单元以强调被配置为执行所公开技术的设备的功能方面,但不一定要求由不同的硬件单元来实现。而是如上所述,各个单元可以组合在编解码器硬件单元中,或者由可互操作的硬件单元的集合来提供,其包括如上所述的一个或多个处理器结合适的软件和/或固件。
已经描述了各个示例。这些示例和其它示例在下面权利要求的范围之内。

Claims (30)

1.一种被配置为对视频数据进行解码的装置,所述装置包括:
存储器,其被配置为存储所述视频数据;以及
一个或多个处理器,其与所述存储器通信,所述一个或多个处理器被配置为:
对所述视频数据的块进行解码;
在经编码视频比特流中接收针对所述视频数据的所述块的自适应参数集(APS),其中,所述APS包括用于所述视频数据的所述块的亮度分量的多个自适应环路滤波器集合;
从所述APS中的所述多个自适应环路滤波器集合中确定自适应环路滤波器以应用于所述视频数据的经解码的块;以及
将所确定的自适应环路滤波器应用于所述视频数据的所述经解码的块以创建所述视频数据的经滤波的块。
2.根据权利要求1所述的装置,其中,所述一个或多个处理器还被配置为:
根据一个或多个先前解码的自适应环路滤波器集合从针对所述块的所述APS预测自适应环路滤波器集合。
3.根据权利要求1所述的装置,其中,为了从所述APS中的所述多个自适应环路滤波器集合中确定所述自适应环路滤波器,所述一个或多个处理器还被配置为:
接收指示所述自适应环路滤波器集合和合并表的一个或多个语法元素,其中,所述合并表指示类别与要应用于所述视频数据的所述经解码的块的所述自适应环路滤波器之间的映射;以及
从所指示的自适应环路滤波器集合和合并表确定所述自适应环路滤波器。
4.根据权利要求1所述的装置,其中,所述多个自适应环路滤波器集合由单个自适应环路滤波器集合和多个合并表表示。
5.根据权利要求1所述的装置,其中,所述多个自适应环路滤波器集合由多个自适应环路滤波器集合和单个合并表表示。
6.根据权利要求1所述的装置,其中,所述多个自适应环路滤波器集合由多个自适应环路滤波器集合表示,其中,所述多个自适应环路滤波器集合中的每个自适应环路滤波器集合与一个或多个合并表相关联。
7.根据权利要求1所述的装置,其中,所述一个或多个处理器还被配置为:
在所述经编码视频比特流中接收针对所述视频数据的所述块的多个APS;
接收用于所述视频数据的所述块的多个APS索引,其中,所述多个APS索引中的每个相应APS索引指示以下各项中的一项或多项:从所述多个APS中的哪个APS确定针对所述视频数据的所述块的所述自适应环路滤波器、合并表或裁剪值;以及
基于所述多个APS索引确定所述自适应环路滤波器、所述合并表和裁剪值。
8.根据权利要求1所述的装置,还包括:
显示器,其被配置为:显示包括所述视频数据的所述经滤波的块的图片。
9.一种用于对视频数据进行解码的方法,所述方法包括:
对所述视频数据的块进行解码;
在经编码视频比特流中接收针对所述视频数据的所述块的自适应参数集(APS),其中,所述APS包括用于所述视频数据的所述块的亮度分量的多个自适应环路滤波器集合;
从所述APS中的所述多个自适应环路滤波器集合中确定自适应环路滤波器以应用于所述视频数据的经解码的块;以及
将所确定的自适应环路滤波器应用于所述视频数据的所述经解码的块以创建所述视频数据的经滤波的块。
10.根据权利要求9所述的方法,还包括:
根据一个或多个先前解码的自适应环路滤波器集合从针对所述块的所述APS预测自适应环路滤波器集合。
11.根据权利要求9所述的方法,其中,从所述APS中的所述多个自适应环路滤波器集合确定所述自适应环路滤波器包括:
接收指示所述自适应环路滤波器集合和合并表的一个或多个语法元素,其中,所述合并表指示类别与要应用于所述视频数据的所述经解码的块的所述自适应环路滤波器之间的映射;以及
从所指示的自适应环路滤波器集合和合并表确定所述自适应环路滤波器。
12.根据权利要求9所述的方法,其中,所述多个自适应环路滤波器集合由单个自适应环路滤波器集合和多个合并表表示。
13.根据权利要求9所述的方法,其中,所述多个自适应环路滤波器集合由多个自适应环路滤波器集合和单个合并表表示。
14.根据权利要求9所述的方法,其中,所述多个自适应环路滤波器集合由多个自适应环路滤波器集合表示,其中,所述多个自适应环路滤波器集合中的每个自适应环路滤波器集合与一个或多个合并表相关联。
15.根据权利要求9所述的方法,还包括:
在所述经编码视频比特流中接收针对所述视频数据的所述块的多个APS;
接收用于所述视频数据的所述块的多个APS索引,其中,所述多个APS索引中的每个相应APS索引指示以下各项中的一项或多项:从所述多个APS中的哪个APS确定针对所述视频数据的所述块的所述自适应环路滤波器、合并表或裁剪值;以及
基于所述多个APS索引确定所述自适应环路滤波器、所述合并表和裁剪值。
16.根据权利要求9所述的方法,还包括:
显示包括所述视频数据的所述经滤波的块的图片。
17.一种被配置为对视频数据进行编码的装置,所述装置包括:
存储器,其被配置为存储所述视频数据;以及
一个或多个处理器,其与所述存储器通信,所述一个或多个处理器被配置为:
对所述视频数据的块进行编码;
重构所述视频数据的所述块;
将自适应环路滤波器应用于所述视频数据的经重构的块以创建所述视频数据的经滤波的块;以及
在所述视频数据的所述块的经编码视频比特流中用信号传送自适应参数集(APS),其中,所述APS包括:用于所述视频数据的所述块的亮度分量的、包括所应用的自适应环路滤波器的多个自适应环路滤波器集合。
18.根据权利要求17所述的装置,其中,所述一个或多个处理器还被配置为:
用信号传送指示所述自适应环路滤波器集合和合并表的一个或多个语法元素,其中,所述合并表指示类别与要应用的所述自适应环路滤波器之间的映射。
19.根据权利要求17所述的装置,其中,所述多个自适应环路滤波器集合由单个自适应环路滤波器集合和多个合并表表示。
20.根据权利要求17所述的装置,其中,所述多个自适应环路滤波器集合由多个自适应环路滤波器集合和单个合并表表示。
21.根据权利要求17所述的装置,其中,所述多个自适应环路滤波器集合由多个自适应环路滤波器集合表示,其中,所述多个自适应环路滤波器集合中的每个自适应环路滤波器集合与一个或多个合并表相关联。
22.根据权利要求17所述的装置,其中,所述一个或多个处理器还被配置为:
在所述经编码视频比特流中用信号传送针对所述视频数据的所述块的多个APS;以及
用信号传送用于所述视频数据的所述块的多个APS索引,其中,所述多个APS索引中的每个相应APS索引指示以下各项中的一项或多项:从所述多个APS中的哪个APS确定针对所述视频数据的所述块的所述自适应环路滤波器、合并表或裁剪值。
23.根据权利要求17所述的装置,还包括:
照相机,其被配置为捕获包括所述视频数据的所述块的图片。
24.一种对视频数据进行编码的方法,所述方法包括:
对所述视频数据的块进行编码;
重构所述视频数据的所述块;
将自适应环路滤波器应用于所述视频数据的经重构的块以创建所述视频数据的经滤波的块;以及
在所述视频数据的所述块的经编码视频比特流中用信号传送自适应参数集(APS),其中,所述APS包括:用于所述视频数据的所述块的亮度分量的、包括所应用的自适应环路滤波器的多个自适应环路滤波器集合。
25.根据权利要求24所述的方法,还包括:
用信号传送指示所述自适应环路滤波器集合和合并表的一个或多个语法元素,其中,所述合并表指示类别与要应用的所述自适应环路滤波器之间的映射。
26.根据权利要求24所述的方法,其中,所述多个自适应环路滤波器集合由单个自适应环路滤波器集合和多个合并表表示。
27.根据权利要求24所述的方法,其中,所述多个自适应环路滤波器集合由多个自适应环路滤波器集合和单个合并表表示。
28.根据权利要求24所述的方法,其中,所述多个自适应环路滤波器集合由多个自适应环路滤波器集合表示,其中,所述多个自适应环路滤波器集合中的每个自适应环路滤波器集合与一个或多个合并表相关联。
29.根据权利要求24所述的方法,还包括:
在所述经编码视频比特流中用信号传送针对所述视频数据的所述块的多个APS;以及
用信号传送用于所述视频数据的所述块的多个APS索引,其中,所述多个APS索引中的每个相应APS索引指示以下各项中的一项或多项:从所述多个APS中的哪个APS确定针对所述视频数据的所述块的所述自适应环路滤波器、合并表或裁剪值。
30.根据权利要求24所述的方法,还包括:
捕获包括所述视频数据的所述块的图片。
CN202080034866.8A 2019-05-17 2020-05-14 用于视频译码的多个自适应环路滤波器集合的方法和装置 Active CN113853784B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201962849606P 2019-05-17 2019-05-17
US62/849,606 2019-05-17
US15/931,110 2020-05-13
US15/931,110 US11019334B2 (en) 2019-05-17 2020-05-13 Multiple adaptive loop filter sets for video coding
PCT/US2020/032858 WO2020236506A1 (en) 2019-05-17 2020-05-14 Multiple adaptive loop filter sets for video coding

Publications (2)

Publication Number Publication Date
CN113853784A true CN113853784A (zh) 2021-12-28
CN113853784B CN113853784B (zh) 2023-08-11

Family

ID=73230857

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080034866.8A Active CN113853784B (zh) 2019-05-17 2020-05-14 用于视频译码的多个自适应环路滤波器集合的方法和装置

Country Status (8)

Country Link
US (1) US11019334B2 (zh)
EP (1) EP3970379B1 (zh)
KR (1) KR102423331B1 (zh)
CN (1) CN113853784B (zh)
BR (1) BR112021022471A2 (zh)
SG (1) SG11202111683VA (zh)
TW (1) TW202106012A (zh)
WO (1) WO2020236506A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024016982A1 (en) * 2022-07-20 2024-01-25 Mediatek Inc. Adaptive loop filter with adaptive filter strength

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10609423B2 (en) 2016-09-07 2020-03-31 Qualcomm Incorporated Tree-type coding for video coding
KR102627821B1 (ko) 2019-06-04 2024-01-23 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 이웃 블록 정보를 사용한 모션 후보 리스트 구성
CN114097228B (zh) 2019-06-04 2023-12-15 北京字节跳动网络技术有限公司 具有几何分割模式编解码的运动候选列表
CN114175636B (zh) 2019-07-14 2024-01-12 北京字节跳动网络技术有限公司 自适应参数集中的自适应环路滤波的指示
CN114450959A (zh) 2019-09-28 2022-05-06 北京字节跳动网络技术有限公司 视频编解码中的几何分割模式
US20220030232A1 (en) * 2020-07-24 2022-01-27 Qualcomm Incorporated Multiple adaptive loop filter sets
US11838557B2 (en) * 2021-11-17 2023-12-05 Mediatek Inc. Methods and apparatuses of ALF derivation in video encoding system
WO2023143588A1 (en) * 2022-01-29 2023-08-03 Beijing Bytedance Network Technology Co., Ltd. Method, apparatus, and medium for video processing

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130259118A1 (en) * 2011-04-21 2013-10-03 Mediatek Inc. Method and Apparatus for Improved In-Loop Filtering
EP3226562A1 (en) * 2011-02-16 2017-10-04 HFI Innovation Inc. Method and apparatus for slice common information sharing
US20180192050A1 (en) * 2017-01-04 2018-07-05 Qualcomm Incorporated Modified adaptive loop filter temporal prediction for temporal scalability support
CN108605128A (zh) * 2016-02-15 2018-09-28 高通股份有限公司 合并用于视频译码的用于多类别块的滤波器

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9807403B2 (en) 2011-10-21 2017-10-31 Qualcomm Incorporated Adaptive loop filtering for chroma components
KR20130053645A (ko) * 2011-11-15 2013-05-24 한국전자통신연구원 적응적 루프 필터를 이용한 비디오 부호화/복호화 방법 및 장치

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3226562A1 (en) * 2011-02-16 2017-10-04 HFI Innovation Inc. Method and apparatus for slice common information sharing
US20130259118A1 (en) * 2011-04-21 2013-10-03 Mediatek Inc. Method and Apparatus for Improved In-Loop Filtering
CN108605128A (zh) * 2016-02-15 2018-09-28 高通股份有限公司 合并用于视频译码的用于多类别块的滤波器
US20180192050A1 (en) * 2017-01-04 2018-07-05 Qualcomm Incorporated Modified adaptive loop filter temporal prediction for temporal scalability support

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
NAN HU等: "CE2.3 and CE2.4: Fixed filters, temporal filters, CU-level control and low-latency encoder for ALF", 《JOINT VIDEO EXPERTS TEAM (JVET) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11》 *
VADIM SEREGIN等: "CE5: Summary Report on Adaptive Loop Filter", 《JOINT VIDEO EXPERTS TEAM (JVET) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11》 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024016982A1 (en) * 2022-07-20 2024-01-25 Mediatek Inc. Adaptive loop filter with adaptive filter strength

Also Published As

Publication number Publication date
SG11202111683VA (en) 2021-12-30
US11019334B2 (en) 2021-05-25
WO2020236506A1 (en) 2020-11-26
KR20210138159A (ko) 2021-11-18
TW202106012A (zh) 2021-02-01
US20200366891A1 (en) 2020-11-19
CN113853784B (zh) 2023-08-11
EP3970379B1 (en) 2023-07-05
BR112021022471A2 (pt) 2022-01-04
EP3970379A1 (en) 2022-03-23
KR102423331B1 (ko) 2022-07-20

Similar Documents

Publication Publication Date Title
CN113853784B (zh) 用于视频译码的多个自适应环路滤波器集合的方法和装置
CN113940069A (zh) 用于视频译码中的低频不可分离变换的变换和最后有效系数位置信令
AU2020278519A1 (en) Low-frequency non-separable transform signaling based on zero-out patterns for video coding
TW202123699A (zh) 具有協調的運動場儲存及運動補償的幾何分區模式
CN114080802A (zh) 用于视频译码中的变换跳过模式和调色板模式的最小允许量化参数
CN114258675A (zh) 用于视频编码的跨分量自适应环路滤波
CN114521330A (zh) 低频不可分离变换(lfnst)简化
CN114223202A (zh) 低频不可分离变换(lfnst)信令
CN114731415A (zh) 针对多类型树块结构的合并估计区域
AU2020235622A1 (en) Coefficient domain block differential pulse-code modulation in video coding
CN114424570B (zh) 用于视频编解码的变换单元设计
CN113924776A (zh) 使用不同的色度格式的具有未经滤波的参考样本的视频译码
CN114424566A (zh) 视频译码中用于联合色度残差模式的量化参数信令
EP4186237A1 (en) Multiple adaptive loop filter sets
CN114080805A (zh) 用于视频译码的自适应环路滤波的非线性扩展
CN113545054A (zh) 视频编解码中子块变换的简化
CN114128283A (zh) 用于视频编解码的自适应参数集的存储器约束
CN114830649A (zh) 推断bdpcm经译码的块中的帧内译码模式
CN114868387A (zh) 在进行视频译码时对块的色度变换跳过和联合色度译码启用
CN114402620A (zh) 用于视频编解码的交叉分量自适应环路滤波的比特移位
CN116325729A (zh) 用于视频译码的基于神经网络的滤波过程中的激活函数设计
CN114846801A (zh) 基于色度变换跳过的用于色度的lfnst信令
CN114930821A (zh) 视频编解码中的自适应色彩变换的qp偏移的灵活信令通知
CN114175643A (zh) 调色板和预测模式信令
CN113615178A (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
GR01 Patent grant
GR01 Patent grant