CN118101931A - 视频译码中用于参考图像重采样的双向光流(bio)译码工具的处理 - Google Patents

视频译码中用于参考图像重采样的双向光流(bio)译码工具的处理 Download PDF

Info

Publication number
CN118101931A
CN118101931A CN202410218755.2A CN202410218755A CN118101931A CN 118101931 A CN118101931 A CN 118101931A CN 202410218755 A CN202410218755 A CN 202410218755A CN 118101931 A CN118101931 A CN 118101931A
Authority
CN
China
Prior art keywords
resolution
current
image
bdof
current image
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
CN202410218755.2A
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 CN118101931A publication Critical patent/CN118101931A/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/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
    • 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/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/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • 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/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • 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/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • 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/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding

Landscapes

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

Abstract

一种由视频解码器实现的解码方法,包括:视频解码器确定正被解码的当前图像的分辨率是否与当前图像关联的参考图像列表所标识的参考图像的分辨率相同;当确定当前图像的分辨率与参考图像中每一个参考图像的分辨率均相同时,视频解码器对当前图像的当前块启用双向光流(bi‑direction optical flow,BDOF);当确定当前图像的分辨率与参考图像中任一个参考图像的分辨率不同时,视频解码器对当前图像的当前块禁用所述BDOF;对当前块启用所述BDOF时,视频解码器使用所述BDOF对当前块对应的运动矢量进行修正。

Description

视频译码中用于参考图像重采样的双向光流(BIO)译码工具 的处理
本申请是分案申请,原申请的申请号是202080035926.8,原申请日是2020年05月14日,原申请的全部内容通过引用结合在本申请中。
相关申请的交叉引用
本专利申请要求陈建乐等人于2019年5月15日递交、申请号为62/848,409、申请名称为“视频译码中用于参考图像重采样的双向光流(BIO)译码工具的处理”的美国临时专利申请的权益,其通过引用结合在本申请中。
技术领域
本申请大体上描述了在视频译码中支持双向光流(bi-direction optical flow,BDOF)的技术。更具体地,本申请中,可以将所述BDOF用于参考图像重采样中,但仅可以在当前图像的空间分辨率与参考图像的空间分辨率不同的情况下对块或样本禁用所述BDOF。
背景技术
即使某一段视频相对较短,也需要大量的视频数据来描述。当该数据要在带宽容量受限的通信网络中进行流式传输或以其它方式传输时,可能会造成困难。因此,视频数据通常需要先进行压缩,然后通过现代电信网络进行传输。由于内存资源可能有限,在存储设备中存储视频时,该视频的大小也可能产生问题。视频压缩设备通常在源侧使用软件和/或硬件对该视频数据进行译码,然后进行传输或存储,从而减少用于表示数字视频图像所需的数据量。然后,对视频数据进行解码的视频解压缩设备在目的地侧接收压缩后的数据。在网络资源有限以及对更高视频质量的需求不断增长的情况下,需要改进压缩和解压缩技术,这些改进的技术几乎不影响图像质量,同时能够提高压缩比。
发明内容
第一方面涉及一种由视频解码器实现的对经编码视频码流进行解码的方法。该方法包括:视频解码器确定正被解码的当前图像的分辨率是否与当前图像关联的参考图像列表所标识的参考图像的分辨率相同;当确定当前图像的分辨率与参考图像中每一个参考图像的分辨率均相同时,视频解码器对当前图像的当前块启用双向光流(bi-directionoptical flow,BDOF);当确定当前图像的分辨率与参考图像中任一个参考图像的分辨率不同时,视频解码器对当前图像的当前块禁用所述BDOF;对当前块启用所述BDOF时,视频解码器使用所述BDOF对当前块对应的运动矢量进行修正。
在该方法提供的技术中,在当前图像的空间分辨率与参考图像的空间分辨率不同时,可以选择性地禁用BDOF,而无需在启用参考图像重采样(reference pictureresampling,RPR)时对整个CVS禁用BDOF。由于这种方式中具有选择性地禁用BDOF的能力,从而可以提高译码效率。因此,可以减少在编码器和解码器上所使用的处理器、存储器和/或网络资源。因此,视频译码中的编码器/解码器(又称为“编解码器codec”)相对于现有的编解码器有所改进。实际上,改进的视频译码过程在发送、接收和/或观看视频时提供了更好的用户体验。
可选地,根据上述任一方面,在该方面的另一种实现方式中,启用所述BDOF包括将BDOF标志设置为第一值,禁用所述BDOF包括将BDOF标志设置为第二值。
可选地,根据上述任一方面,在该方面的另一种实现方式中,所述方法还包括:在双向帧间预测模式下根据参考图像列表为当前图像生成参考图像。
可选地,根据上述任一方面,在该方面的另一种实现方式中,所述方法还包括:根据多个图像中每个图像的分辨率是否与该图像关联的参考图像的分辨率相同或不同,对该多个图像中的块选择性地启用或禁用所述BDOF。
可选地,根据上述任一方面,在该方面的另一种实现方式中,所述方法还包括:当所述BDOF被禁用时,对包括当前图像的整个经编码视频序列(coded video sequence,CVS)启用参考图像重采样(reference picture resampling,RPR)。
可选地,根据上述任一方面,在该方面的另一种实现方式中,当前图像的分辨率设置在所述经编码视频码流的参数集中,当前块是从当前图像的条带中获得的。
可选地,根据上述任一方面,在该方面的另一种实现方式中,所述方法还包括:在电子设备的显示屏上显示根据当前块生成的图像。
第二方面涉及一种由视频编码器实现的编码视频码流的方法。该方法包括:视频编码器确定正被编码的当前图像的分辨率是否与当前图像关联的参考图像列表所标识的参考图像的分辨率相同;当确定当前图像的分辨率与参考图像中每一个参考图像的分辨率均相同时,视频编码器对当前图像的当前块启用双向光流(bi-direction optical flow,BDOF);当确定当前图像的分辨率与参考图像中任一个参考图像的分辨率不同时,视频编码器对当前图像的当前块禁用所述BDOF;对当前块启用所述BDOF时,视频编码器使用所述BDOF对当前块对应的运动矢量进行修正。
在该方法提供的技术中,在当前图像的空间分辨率与参考图像的空间分辨率不同时,可以选择性地禁用BDOF,而无需在启用参考图像重采样(reference pictureresampling,RPR)时对整个CVS禁用BDOF。由于这种方式中具有选择性地禁用BDOF的能力,从而可以提高译码效率。因此,可以减少在编码器和解码器上所使用的处理器、存储器和/或网络资源。因此,视频译码中的编码器/解码器(又称为“编解码器codec”)相对于现有的编解码器有所改进。实际上,改进的视频译码过程在发送、接收和/或观看视频时提供了更好的用户体验。
可选地,根据上述任一方面,在该方面的另一种实现方式中,所述方法还包括:视频编码器根据参考图像确定当前图像的运动矢量;视频编码器根据运动矢量对当前图像进行编码;视频编码器通过假设参考解码器对当前图像进行解码。
可选地,根据上述任一方面,在该方面的另一种实现方式中,启用所述BDOF包括将BDOF标志设置为第一值,禁用所述BDOF包括将BDOF标志设置为第二值。
可选地,根据上述任一方面,在该方面的另一种实现方式中,所述方法还包括:在双向帧间预测模式下根据参考图像列表为当前图像生成参考图像。
可选地,根据上述任一方面,在该方面的另一种实现方式中,所述方法还包括:根据多个图像中每个图像的分辨率是否与该图像关联的参考图像的分辨率相同或不同,对该多个图像中的块选择性地启用或禁用所述BDOF。
可选地,根据上述任一方面,在该方面的另一种实现方式中,所述方法还包括:即使是在所述BDOF被禁用的情况下,对包括当前图像的整个经编码视频序列(coded videosequence,CVS)启用参考图像重采样(reference picture resampling,RPR)。
可选地,根据上述任一方面,在该方面的另一种实现方式中,所述方法还包括:向视频解码器发送包括当前块的视频码流。
第三方面涉及一种解码设备。该解码设备包括:接收器,用于接收经编码视频码流;存储器,耦合到接收器,其中,存储器存储指令;处理器,耦合到存储器,其中,处理器用于执行所述指令,使得该解码设备执行以下操作:确定正被解码的当前图像的分辨率是否与当前图像关联的参考图像列表所标识的参考图像的分辨率相同;当确定当前图像的分辨率与参考图像中每一个参考图像的分辨率均相同时,对当前图像的当前块启用双向光流(bi-direction optical flow,BDOF);当确定当前图像的分辨率与参考图像中任一个参考图像的分辨率不同时,对当前图像的当前块禁用所述BDOF;对当前块启用所述BDOF时,使用所述BDOF对当前块对应的运动矢量进行修正。
在该解码设备提供的技术中,在当前图像的空间分辨率与参考图像的空间分辨率不同时,可以选择性地禁用BDOF,而无需在启用参考图像重采样(reference pictureresampling,RPR)时对整个CVS禁用BDOF。由于这种方式中具有选择性地禁用BDOF的能力,从而可以提高译码效率。因此,可以减少在编码器和解码器上所使用的处理器、存储器和/或网络资源。因此,视频译码中的编码器/解码器(又称为“编解码器codec”)相对于现有的编解码器有所改进。实际上,改进的视频译码过程在发送、接收和/或观看视频时提供了更好的用户体验。
可选地,根据上述任一方面,在该方面的另一种实现方式中,当所述BDOF被禁用时,对包括当前图像的整个经编码视频序列(coded video sequence,CVS)启用参考图像重采样(reference picture resampling,RPR)。
可选地,根据上述任一方面,在该方面的另一种实现方式中,该解码设备还包括显示器,用于显示根据当前块生成的图像。
第四方面涉及一种编码设备。该编码设备包括:存储器,存储器存储指令;处理器,耦合到存储器,其中,处理器用于执行所述指令,使得该编码设备执行以下操作:确定正被编码的当前图像的分辨率是否与当前图像关联的参考图像列表所标识的参考图像的分辨率相同;当确定当前图像的分辨率与参考图像中每一个参考图像的分辨率均相同时,对当前图像的当前块启用双向光流(bi-direction optical flow,BDOF);当确定当前图像的分辨率与参考图像中任一个参考图像的分辨率不同时,对当前图像的当前块禁用所述BDOF;对当前块启用所述BDOF时,使用所述BDOF对当前块对应的运动矢量进行修正;发送器,耦合到处理器,其中,发送器用于向视频解码器发送包括当前块的视频码流。
在该编码设备提供的技术中,在当前图像的空间分辨率与参考图像的空间分辨率不同时,可以选择性地禁用BDOF,而无需在启用参考图像重采样(reference pictureresampling,RPR)时对整个CVS禁用BDOF。由于这种方式中具有选择性地禁用BDOF的能力,从而可以提高译码效率。因此,可以减少在编码器和解码器上所使用的处理器、存储器和/或网络资源。因此,视频译码中的编码器/解码器(又称为“编解码器codec”)相对于现有的编解码器有所改进。实际上,改进的视频译码过程在发送、接收和/或观看视频时提供了更好的用户体验。
可选地,根据上述任一方面,在该方面的另一种实现方式中,即使是在所述BDOF被禁用的情况下,对包括当前图像的整个经编码视频序列(coded video sequence,CVS)启用参考图像重采样(reference picture resampling,RPR)。
可选地,根据上述任一方面,在该方面的另一种实现方式中,在发送器向所述视频解码器发送视频码流之前,存储器存储所述码流。
第五方面涉及一种译码装置。该译码装置包括:接收器,用于接收图像进行编码或接收码流进行解码;发送器,耦合到接收器,其中,发送器用于将码流发送到解码器或将经解码图像发送到显示器;存储器,耦合到接收器或发送器中的至少一个,其中,存储器用于存储指令;处理器,耦合到存储器,其中,处理器用于执行存储在存储器中的指令,以执行本文中所公开的方法。
在该译码装置提供的技术中,在当前图像的空间分辨率与参考图像的空间分辨率不同时,可以选择性地禁用BDOF,而无需在启用参考图像重采样(reference pictureresampling,RPR)时对整个CVS禁用BDOF。由于这种方式中具有选择性地禁用BDOF的能力,从而可以提高译码效率。因此,可以减少在编码器和解码器上所使用的处理器、存储器和/或网络资源。因此,视频译码中的编码器/解码器(又称为“编解码器codec”)相对于现有的编解码器有所改进。实际上,改进的视频译码过程在发送、接收和/或观看视频时提供了更好的用户体验。
第六方面涉及一种系统。该系统包括:编码器;解码器,与编码器进行通信;其中,编码器或解码器包括本文中公开的解码设备、编码设备或译码装置。
在该系统提供的技术中,在当前图像的空间分辨率与参考图像的空间分辨率不同时,可以选择性地禁用BDOF,而无需在启用参考图像重采样(reference pictureresampling,RPR)时对整个CVS禁用BDOF。由于这种方式中具有选择性地禁用BDOF的能力,从而可以提高译码效率。因此,可以减少在编码器和解码器上所使用的处理器、存储器和/或网络资源。因此,视频译码中的编码器/解码器(又称为“编解码器codec”)相对于现有的编解码器有所改进。实际上,改进的视频译码过程在发送、接收和/或观看视频时提供了更好的用户体验。
附图说明
为了更完整地理解本申请,参考以下结合附图和具体实施方式而进行的简要描述,其中,相同的附图标记表示相同的部件。
图1为可以利用视频译码技术的一种示例性译码系统的框图。
图2为可以实现视频译码技术的一种示例性视频编码器的框图。
图3为可以实现视频译码技术的一种示例性视频解码器的框图。
图4示出了分别按解码顺序和显示顺序排列时IRAP图像相对于前置图像和后置图像之间的关系表示。
图5示出了一种用于实现空间分级的多层译码示例。
图6为一种单向帧间预测示例的示意图。
图7为一种双向帧间预测示例的示意图。
图8示出了一种视频码流。
图9示出了一种用于图像的分割技术。
图10示出了一种对经编码视频码流进行解码的方法的实施例。
图11示出了一种对经编码视频码流进行编码的方法的实施例。
图12为一种视频译码设备的示意图。
图13为一种译码单元的实施例的示意图。
具体实施方式
首先应当理解,尽管下文提供一个或多个实施例的说明性实现方式,但所公开的系统和/或方法可以使用任何数量的技术来实现,无论这些技术是当前已知的技术还是现有的技术。本申请不应限于下文所说明的说明性实现方式、附图和技术,包括本文所说明并描述的示例性设计和实现方式,且可以在所附权利要求书的范围以及其等效部分的完整范围内进行修改。
本文中所描述的分辨率描述了视频文件中的像素数量。即分辨率是以像素为单位对投影图像进行测量得到的宽度和高度。例如,视频的分辨率可能为1280(水平像素)×720(垂直像素)。这通常简写为1280×720,或缩写为720p。BDOF是一种用于对预测块的运动或运动矢量进行修正的过程、算法或译码工具。BDOF中,可以根据两个参考图像之间的差值的梯度为子编码单元找到运动矢量。RPR特征是指不需要在改变分辨率的位置处对图像进行帧内译码的情况下改变位于码流中间位置的编码图像的空间分辨率的能力。
图1为可以利用本文描述的视频译码技术的一种示例性译码系统10的框图。如图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 videodisk,DVD)、压缩光盘只读存储器(compact disc read-only memory,CD-ROM)、闪存、易失性或非易失性存储器,或用于存储经编码视频数据的任何其它合适的数字存储介质。在另一示例中,存储设备可以对应文件服务器或者其它中间存储设备,其中,其它中间存储设备可以存储源设备12生成的经编码视频。目的地设备14可以通过流式传输或下载方式从存储设备中访问所存储的视频数据。文件服务器可以是能够存储经编码视频数据并将该经编码视频数据发送到目的地设备14的任何类型的服务器。示例性文件服务器包括万维网服务器(例如,用于网站)、文件传输协议(file transfer protocol,FTP)服务器、网络附属存储(network attached storage,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仅是一个示例。这些进行视频译码的技术可以由任何数字视频编码和/或解码设备实现。尽管本申请的技术通常由视频译码设备实现,但这些技术还可以由视频编码器/解码器(通常称为“编解码器(codec)”)实现。此外,本申请的技术也可以由视频预处理器实现。视频编码器和/或视频解码器可以是图形处理单元(graphicsprocessing 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可以根据视频编码标准(例如,目前正在开发的高效视频编码(High Efficiency Video Coding,HEVC)标准)进行操作,并且可以符合HEVC测试模型(HEVC Test Model,HM)。可选地,视频编码器20和视频解码器30可以根据其它专有或行业标准进行操作,这些标准例如国际电信联盟电信标准化部门(InternationalTelecommunications Union Telecommunication Standardization Sector,ITU-T)H.264标准,还称为运动图像专家组(Moving Picture Expert Group,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单元可以遵守ITU H.223复用器协议,或用户数据报协议(user datagram protocol,UDP)等其它协议。
视频编码器20和视频解码器30可以分别实现为各种合适的编码器电路中的任一个,例如一个或多个微处理器、一个或多个数字信号处理器(digital signal processor,DSP)、一个或多个专用集成电路(application-specific integrated circuit,ASIC)、一个或多个现场可编程门阵列(field programmable gate array,FPGA)、一个或多个离散逻辑、一个或多个软件、一个或多个硬件、一个或多个固件或其任何组合。当这些技术部分地以软件实现时,设备可以将该软件的指令存储在合适的非瞬时性计算机可读介质中,并且通过硬件中的一个或多个处理器执行这些指令,以实现本申请的技术。视频编码器20和视频解码器30可以分别包含在一个或多个编码器或解码器中,即任一者可以集成为相应设备中的组合编码器/解码器(编解码器,codec)的一部分。包括视频编码器20和/或视频解码器30的设备可以包括集成电路、微处理器和/或如蜂窝电话等无线通信设备。
图2为可以实现视频译码技术的一种示例性视频编码器20的框图。视频编码器20可以对视频条带(slice)内的视频块执行帧内编码和帧间编码。帧内编码依赖于空间预测来减少或去除给定视频帧或图像内的视频中的空间冗余。帧间编码依赖于时间预测来减少或去除视频序列的相邻帧或图像内视频中的时间冗余。帧内模式(I模式)可以指若干种基于空间的编码模式中的任一种。帧间模式,如单向预测(uni-directional/uniprediction)(P模式)或双向预测(bi-prediction/bi prediction)(B模式),可以指若干种基于时间的编码模式中的任一种。
如图2所示,视频编码器20接收待编码视频帧内的当前视频块。在图2的示例中,视频编码器20包括模式选择单元40、参考帧存储器64、加法器50、变换处理单元52、量化单元54和熵编码单元56。模式选择单元40又包括运动补偿单元44、运动估计单元42、帧内预测(intra-predition/intra prediction)单元46和分割单元48。为了重建视频块,视频编码器20还包括反量化单元58、逆变换单元60和加法器62。去块效应滤波器(图2中未示出)也包括在内,用于对块边界进行滤波,以便从重建视频中去除块效应。如果需要,去块效应滤波器通常用于对加法器62的输出进行滤波。除去块效应滤波器之外,还可以使用其它(环内或环后)滤波器。为了简洁起见,图中未示出此类滤波器,但是如果需要,此类滤波器(作为环内滤波器)可以对加法器50的输出进行滤波。
在编码过程中,视频编码器20接收待编码的视频帧或条带。该帧或条带可以划分为多个视频块。运动估计单元42和运动补偿单元44相对于一个或多个参考帧中的一个或多个块对接收到的视频块进行帧间预测编码,以提供时间预测。帧内预测单元46还可以相对于与待编码块位于同一帧或条带内的一个或多个相邻块对接收到的视频块进行帧内预测编码,以提供空间预测。视频编码器20可以执行多个编码过程,例如,以便为视频数据的每一个块选择适当的编码模式。
此外,分割单元48可以根据先前编码过程中对先前分割方案的评估将视频数据的块分割为子块。例如,分割单元48初始时可以将帧或条带分割为多个最大编码单元(largest coding unit,LCU),并且根据率失真分析(例如,率失真优化)将每个LCU分割为多个子编码单元(sub-coding unit,sub-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。当在跳过模式或直接模式、帧内预测模式或帧间预测模式(inter-predition/inter prediction)下对CU进行编码时,分割模式可能有所不同。PU可以分割为非正方形的形状。例如,与CU关联的语法数据也可以描述根据四叉树将CU分割为一个或多个TU。TU可以是正方形或非正方形(例如,矩形)。
模式选择单元40可以根据误差结果等选择帧内编码模式或帧间编码模式中的一种,将所得到的帧内编码块或帧间编码块提供给加法器50以生成残差块数据,并提供给加法器62来重建编码块以用作参考帧。模式选择单元40还将语法元素如运动矢量、帧内模式指示符、分割信息和其它此类语法信息等提供给熵编码单元56。
运动估计单元42和运动补偿单元44可以高度集成,但出于概念目的而分别进行说明。由运动估计单元42执行的运动估计是生成运动矢量的过程,这些运动矢量用于估计视频块的运动。例如,运动矢量可以表示当前视频帧或图像内的视频块的PU相对于参考帧(或其它编码单元)中的预测块的位移,所述参考帧(或其它编码单元)中的预测块是相对于当前帧(或其它编码单元)中的正被编码的当前块而言的。预测块为所找到的、在像素差方面与待编码块高度匹配的块,所述像素差可以通过绝对差和(sum of absolute difference,SAD)、平方差和(sum of square 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 cosine transform,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-adaptive binaryarithmetic coding,SBAC)、概率区间分割熵(probability interval partitioningentropy,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还可以用于对深度图的深度块进行帧间预测。
在一个实施例中,视频解码器30包括用户界面(user interface,UI)84。用户界面84用于接收视频解码器30的用户(例如,网络管理员)的输入。通过用户界面84,用户能够管理或更改视频解码器30上的设置。例如,用户能够输入或以其它方式提供参数(例如,标志)的值,以便根据用户的偏好控制视频解码器30的配置和/或操作。例如,用户界面84可以是支持用户通过图形图标、下拉菜单、复选框等与视频解码器30交互的图形用户界面(graphical user interface,GUI)。在一些情况下,用户界面84可以通过键盘、鼠标或其它外围设备从用户接收信息。在一个实施例中,用户能够通过智能手机、平板设备、远离视频解码器30的个人计算机等访问用户界面84。本文中所描述的用户界面84可以称为外部输入单元或外部单元。
考虑到上述情况,采用视频压缩技术执行空间(帧内)预测和/或时间(帧间)预测,以减少或去除视频序列中固有的冗余。对于基于块的视频译码,视频条带(即视频图像或视频图像的一部分)可以分割为多个视频块,所述多个视频块还可以称为树块、编码树块(coding tree block,CTB)、编码树单元(coding tree unit,CTU)、编码单元(codingunit,CU)和/或编码节点。图像的帧内编码(I)条带中的视频块是针对同一图像的相邻块的参考样本使用空间预测进行编码的。图像的帧间编码(P或B)条带中的视频块可以是针对同一图像的相邻块的参考样本使用空间预测,或者是针对其它参考图像的参考样本使用时间预测。图像可以称为帧,参考图像可以称为参考帧。
空间预测或时间预测用于为待编码块产生预测块。残差数据表示待编码的原始块与预测块之间的像素差。帧间编码块根据运动矢量和残差数据进行编码,所述运动矢量指向组成所述预测块的参考样本的块,所述残差数据表示所述编码块与所述预测块之间的差值。帧内编码块根据帧内编码模式和残差数据进行编码。为了进一步进行压缩,所述残差数据可以从像素域变换到变换域,从而产生可以再进行量化的残差变换系数。量化变换系数最初以二维阵列排列,并且可以扫描,以产生变换系数的一维矢量。熵编码可以用于实现进一步压缩。
图像和视频压缩技术发展迅速,由此产生了各种编码标准。此类视频编码标准包括ITU-T H.261、国际标准化组织/国际电工委员会(International Organization forStandardization/International Electrotechnical Commission,ISO/IEC)MPEG-1第2部分、ITU-T H.262或ISO/IEC MPEG-2第2部分、ITU-T H.263、ISO/IEC MPEG-4第2部分,高级视频编码(Advanced Video Coding,AVC)(也称为ITU-T H.264或ISO/IEC MPEG-4第10部分),以及高效视频编码(High Efficiency Video Coding,HEVC)(也称为ITU-T H.265或MPEG-H第2部分)。AVC包括可分级的视频编码(Scalable Video Coding,SVC)、多视图视频编码(Multiview Video Coding,MVC)和多视图视频编码加深度(Multiview Video Codingplus Depth,MVC+D)以及3D AVC(3D-AVC)等扩展版。HEVC包括可分级的HEVC(ScalableHEVC,SHVC)、多视图HEVC(Multiview HEVC,MV-HEVC)以及3D HEVC(3D-HEVC)等扩展版。
通用视频编码(Versatile Video Coding,VVC)是ITU-T和ISO/IEC的联合视频专家组(joint video experts team,JVET)正在开发的一种新视频编码标准。虽然VVC标准有若干个工作草案,其中一个VVC工作草案(working draft,WD)(草案5),即B.Bross,J.Chen和S.Liu在2019年3月27日第13次JVET会议上的提案“通用视频编码(草案5)”JVET-N1001-v3的全部内容通过引用结合在本文中。
本文中所公开的技术的说明是基于ITU-T和ISO/IEC的联合视频专家组(jointvideo experts team,JVET)正在开发的视频编码标准,即通用视频编码(versatile videocoding,VVC)。然而,这些技术还适用于其它视频编解码规范。
图4示出了分别按解码顺序408和显示顺序410排列时帧内随机接入点(intrarandom access point,IRAP)图像402相对于前置图像404和后置图像406之间的关系表示400。在一个实施例中,IRAP图像402被称为清理随机接入(clean random access,CRA)图像或伴随可解码随机接入前置(random access decodable leading,RADL)图像的即时解码刷新(instantaneous decoder refresh,IDR)图像。在HEVC中,IDR图像、CRA图像和断点连接接入(Broken Link Access,BLA)图像都被认为是IRAP图像402。对于VVC,在2018年10月第12次JVET会议上,同意将IDR图像和CRA图像作为IRAP图像。在一个实施例中,断点连接接入(Broken Link Access,BLA)图像和逐步解码器刷新(Gradual Decoder Refresh,GDR)图像也可以被认为是IRAP图像。对于经编码视频序列,其解码过程始终从是IRAP图像开始。
如图4所示,前置图像404(例如,图像2和图像3)按解码顺序408位于IRAP图像402之后,而按显示顺序410则位于IRAP图像402之前。后置图像406按解码顺序408和显示顺序410均位于IRAP图像402之后。虽然图4中描绘了两个前置图像404和一个后置图像406,但本领域技术人员应理解,在实际应用中,可以存在更多或更少按解码顺序408和显示顺序410排列的前置图像404和/或后置图像406。
图4中的前置图像404被划分为两种类型,即跳过随机接入前置(random accessskipped leading,RASL)图像和RADL前置图像。当从IRAP图像402(例如,图像1)开始进行解码时,RADL图像(例如,图像3)可以被正常解码,而RASL图像(例如,图像2)则不能被正常解码。因此,RASL图像被丢弃。鉴于RADL图像与RASL图像之间的区别,与IRAP图像402相关联的前置图像404的类型应被标识为RADL或RASL,以便进行正常、高效地译码。在HEVC中,当存在RASL和RADL图像时,则受到如下限制:对于与同一IRAP图像402关联的RASL图像和RADL图像,RASL图像按显示顺序410应位于RADL图像之前。
IRAP图像402提供了以下两个重要功能/益处。第一,若存在IRAP图像402,则表示解码过程可以从该图像开始。该功能支持随机接入特征,随机接入时,解码过程不一定是从码流的起始位置开始,而是从码流的某个位置开始,只要该位置存在IRAP图像402。第二,IRAP图像402的存在刷新了解码过程,从而可以对以IRAP图像402开始的编码图像(不包括RASL图像)在不参考之前的图像的情况下进行译码。因此,若码流中存在IRAP图像402,在对位于IRAP图像402之前的编码图像进行解码的过程中,可以防止可能发生的任何错误传播到IRAP图像402以及按解码顺序408位于IRAP图像402之后的那些图像。
虽然IRAP图像402提供了重要的功能,但这些功能会影响压缩效率。IRAP图像402的存在会导致码率激增。有两个原因造成压缩效率效率低下。第一,由于IRAP图像402是帧内预测图像,与作为帧内预测图像的其它图像(例如,前置图像404、后置图像406)相比,该图像需要相对更多的比特来表示。第二,因为IRAP图像402的存在中断了时间预测(这是因为解码器会刷新解码过程,其中,解码过程的动作之一是删除解码图像缓冲区(decodedpicture buffer,DPB)中的先前参考图像),所以IRAP图像402导致对于按解码顺序408位于IRAP图像402之后的图像进行译码时的译码效率较低(即,需要更多的比特来表示),这是因为这些图像具有较少的参考图像对其进行帧间预测译码。
在被认为是IRAP图像402的图像类型中,HEVC中的IDR图像与其它图像类型相比具有不同的指示和推导。其中一些差异如下:
为了指示和推导IDR图像的图像顺序编号(picture order count,POC)值,POC的最高有效位(most significant bit,MSB)部分不是从先前的关键图像推导的,而是被简单地设置为等于0。
对于进行参考图像管理所需的指示信息,IDR图像的条带头中不包括需要被指示来辅助进行参考图像管理所需的信息。对于其它图像类型(即CRA、后置、时间子层接入(temporal sub-layer access,TSA)图像等),参考图像标识过程(即,确定解码图像缓冲区(decoded picture buffer,DPB)中用于参考和不用于参考的参考图像的状态的过程)需要诸如下文描述的参考图像集(reference picture set,RPS)之类的信息或其它形式的类似信息(例如参考图像列表)。但是,对于IDR图像,不需要指示这样的信息,因为IDR图像的存在即表示解码过程仅应将DPB中的所有参考图像标识为不用于参考。
在HEVC和VVC中,IRAP图像402和前置图像404可以分别包含在单个网络抽象层(network abstraction layer,NAL)单元中。NAL单元集合可以称为接入单元。IRAP图像402和前置图像404被赋予不同的NAL单元类型,使得这些图像易于被系统级应用识别到。例如,视频条带器需要理解编码图像的类型,但不必要理解经编码码流中语法元素的太多细节,特别是需要从非IRAP图像中识别IRAP图像402,并从后置图像406中识别前置图像404,包括确定RASL图像和RADL图像。后置图像406是与IRAP图像402关联、且按显示顺序410位于IRAP图像402之后的图像。一个图像按解码顺序408可以位于特定的IRAP图像402之后,并且按解码顺序408位于任何其它IRAP图像402之前。为此,分别为IRAP图像402和前置图像404赋予NAL单元类型有助于此类应用。
对于HEVC,IRAP图像的NAL单元类型包括以下几种:
伴随前置图像的BLA(BLA_W_LP):按解码顺序其后可以跟随一个或多个前置图像的断点连接接入(Broken Link Access,BLA)图像的NAL单元。
伴随RADL的BLA(BLA_W_RADL):按解码顺序其后可以跟随一个或多个RADL图像但不跟随RASL图像的BLA图像的NAL单元。
未伴随前置图像的BLA(BLA_N_LP):按解码顺序其后不跟随前置图像的BLA图像的NAL单元。
伴随RADL的IDR(IDR_W_RADL):按解码顺序其后可以跟随一个或多个RADL图像但不跟随RASL图像的IDR图像的NAL单元。
未伴随前置图像的IDR(IDR_N_LP):按解码顺序其后不跟随前置图像的IDR图像的NAL单元。
CRA:其后可以跟随前置图像(即,RASL图像或RADL图像或两者)的清理随机接入(Clean Random Access,CRA)图像的NAL单元。
RADL:RADL图像的NAL单元。
RASL:RASL图像的NAL单元。
对于VVC,IRAP图像402和前置图像404的NAL单元类型如下:
伴随RADL的IDR(IDR_W_RADL):按解码顺序其后可以跟随一个或多个RADL图像但不跟随RASL图像的IDR图像的NAL单元。
未伴随前置图像的IDR(IDR_N_LP):按解码顺序其后不跟随前置图像的IDR图像的NAL单元。
CRA:其后可以跟随前置图像(即,RASL图像或RADL图像或两者)的清理随机接入(Clean Random Access,CRA)图像的NAL单元。
RADL:RADL图像的NAL单元。
RASL:RASL图像的NAL单元。
参考图像重采样(reference picture resampling,RPR)特征是指不需要在改变分辨率的位置处对图像进行帧内译码的情况下改变位于码流中间位置的编码图像的空间分辨率的能力。要实现此特征,图像需要能够参考空间分辨率与当前图像的空间分辨率不同的一个或多个参考图像,以便进行帧间预测。因此,需要对这种参考图像或其一部分进行重新采样,以对当前图像进行编码和解码。因此,称为RPR。此特征也可以称为自适应分辨率变化(adaptive resolution change,ARC)或其它名称。有一些受益于RPR特征的使用案例或应用场景,如下所述。
视频电话和视频会议中的速率自适应:这是为了使经编码视频适应不断变化的网络条件。当网络条件变差,导致可用带宽降低时,编码器可以通过编码较小分辨率的图像来适应这种情况。
多方视频会议中的主动发言者变化:对于多方视频会议,主动发言者的视频大小通常要大于其他与会者的视频大小。当主动发言者发生变化时,每个与会者的图像分辨率也可能需要进行调整。当主动发言者频繁发生变化时,具有ARC特征则更加重要。
流式传输快速启动:对于流式传输应用,应用在开始显示图像之前通常会缓冲一定长度的解码图像。启动较小分辨率的码流,使得该应用可以在缓冲区中拥有足够的图像,以便更加快速地开始进行显示。
流式传输中的自适应流切换:HTTP动态自适应流媒体(Dynamic AdaptiveStreaming over HTTP,DASH)规范包括名为@mediaStreamStructureId的特征。此特征可以实现在具有不可解码前置图像的开放GOP随机接入点处的不同表示之间的切换,其中,不可解码前置图像例如为HEVC中的与RASL图像关联的CRA图像。当同一视频的两种不同表示具有不同的码率但空间分辨率相同,且所述两种表示的@mediaStreamStructureId值相同时,可以在与RASL图像关联的CRA图像处执行所述两种表示之间的切换,而且,与进行切换的CRA图像关联的RASL图像可以以可接受的质量进行解码,从而实现无缝切换。利用ARC,@mediaStreamStructureId特征也可以用于在具有不同空间分辨率的DASH表示之间进行切换。
有各种方法促进实现支持RPR/ARC的基础技术,例如,指示图像分辨率列表、对DPB中参考图像的重采样进行一些约束限制等。此外,在日内瓦举行的第14次JVET会议期间,提出了一些文稿提议,建议在VVC标准中应用约束条件以支持RPR。所建议的约束条件包括以下内容。
在当前图像参考了与该当前图像的分辨率不同的参考图像时,对该当前图像中的块进行译码时应禁用某些工具。这些工具包括:
时间运动矢量预测(Temporal motion vector prediction,TMVP)和高级TMVP(advanced TMVP,ATMVP),这是由JVET-N0118提议的。
解码器侧运动矢量修正(decoder side motion vector refinement,DMVR),这是由JVET-N0279提议的。
双向光流(bi-directional optical flow,BIO),这是由JVET-N0279提议的。
不允许对与当前图像的分辨率不同的参考图像中的块进行双向预测,这是由JVET-N0118提议的。
对于运动补偿,样本滤波应仅应用一次,即,如果需要进行重采样和内插以获得更精细的像素分辨率(例如,四分之一像素分辨率),则需要组合两个滤波器并且仅应用一次。这是由JVET-N0118提议的。
视频译码中的可分级性通常由多层译码技术支持。多层码流包括基础层(baselayer,BL)和一个或多个增强层(enhancement layer,EL)。可分级性的示例包括空间分级、质量/信噪比(signal-to-noise,SNR)分级、多视图分级等。当使用多层译码技术时,可以(1)在不使用参考图像,即,不使用帧内预测的情况下,(2)通过参考同一层中的参考图像,即,使用帧间预测,或(3)通过参考其它一层或多层中的参考图像,即,使用层间预测,对图像或图像的一部分进行译码。用于对当前图像进行层间预测的参考图像被称为层间参考图像(inter-layer reference picture,ILRP)。
图5示出了一种用于空间分级的多层译码的示例500。第N层的图像502的分辨率与第N+1层的图像504的分辨率不相同(例如,图像502的分辨率更低)。在一个实施例中,第N层被认为是上文所述的基础层,第N+1层被认为是上文所述的增强层。第N层的图像502和第N+1层的图像504可以通过帧间预测(如实线箭头所示)进行译码。图像502也可以通过层间预测(如虚线箭头所示)进行译码。
在进行RPR的上下文中,可以通过从下层选择参考图像或者通过层间预测对参考图像进行重采样,以便根据下层参考图像生成上层参考图像。
以前的H.26x视频编标准系列支持从一个或多个单独配置文件实现该一个或多个配置文件的分级,从而实现单层译码。可分级视频编码(scalable video coding,SVC)是AVC/H.264的可扩展版,其支持空间、时间和质量分级。对于SVC,在EL图像的每个宏块(macroblock,MB)中指示标志,以表示是否对该EL Mb使用来自下层的并置块进行预测,其中,基于并置块的预测可以包括纹理、运动矢量和/或编码模式。实现SVC时,不能在SVC的实现设计中直接重用未经修改的H.264/AVC实现。EL宏块在SVC中的语法和解码过程与其在H.264/AVC中的语法和解码过程不同。
可分级的HEVC(scalable HEVC,SHVC)是HEVC/H.265标准的扩展版,支持空间和质量分级;多视图HEVC(multiview HEVC,MV-HEVC)是HEVC/H.265的扩展版,支持多视图可适性;3D HEVC(3D-HEVC)是HEVC/H.264的扩展版,支持比MV-HEVC更先进、更高效的三维(three dimensional,3D)视频译码。需要说明的是,时间可适性是单层HEVC编解码器不可分割的一部分。HEVC的多层扩展的设计中采用了如下理念:用于层间预测的解码图像仅来自同一接入单元(access unit,AU),其被视作长期参考图像(long-term referencepicture,LTRP),且与当前层的其它时间参考图像一起被分配一个或多个参考图像列表中的参考索引。层间预测(inter-layer prediction,ILP)是在预测单元(prediction unit,PU)级通过将参考索引的值设置为参考一个或多个参考图像列表中的一个或多个层间参考图像而实现的。
需要说明的是,参考图像重采样和空间可适性特征都要求对参考图像或参考图像的一部分进行重采样。参考图像重采样可以在图像级或编码块级实现。然而,当被称为译码特征时,RPR是单层译码的特征。即便如此,从编解码器设计的角度而言,可能使用、甚至是优选使用相同的重采样滤波器,以实现单层译码的RPR特征和多层译码的空间可适性特征。
JVET-N0279提议禁用BIO进行RPR。更准确地,它提议在启用RPR时对整个经编码视频序列(coded video sequence,CVS)禁止使用BIO(又称为BDOF)。由此可见,即使启用了RPR特征,在许多情况下,当前图像也不会参考分辨率不同的参考图像。因此,对整个CVS禁用BIO是不必要的限制,可能会降低译码效率。
在本文所公开的技术中,在当前图像的空间分辨率与参考图像的空间分辨率不同时,可以选择性的禁用BDOF,而无需在启用RPR时对整个CVS禁用BDOF。由于这种方式中具有选择性地禁用BDOF的能力,从而可以提高译码效率。因此,可以减少在编码器和解码器上所使用的处理器、存储器和/或网络资源。因此,视频译码中的编码器/解码器(又称为“编解码器codec”)相对于现有的编解码器有所改进。实际上,改进的视频译码过程在发送、接收和/或观看视频时提供了更好的用户体验。
图6为一种单向帧间预测示例600的示意图。单向帧间预测600可以用于确定在分割图像时产生的编码块和/或解码块的运动矢量。
单向帧间预测600中采用包括参考块631的参考帧630来预测当前帧610中的当前块611。参考帧630可以如图所示在时间上位于当前帧610之后(例如,作为下一个参考帧),但在一些示例中,也可以在时间上位于当前帧610之前(例如,作为前一个参考帧)。当前帧610是在特定时间进行编码/解码的示例性帧/图像。当前帧610包括当前块611中的一个对象,该对象与参考帧630中的参考块631中的一个对象匹配。参考帧630是对当前帧610进行编码时用作参考的帧,参考块631是参考帧630中的一个块,该参考块包括的对象也包括在当前帧610中的当前块611中。
当前块611是译码过程中在指定时间点进行编码/解码的任何编码单元。当前块611可以是整个分割块,也可以是采用仿射帧间预测时的子块。当前帧610与参考帧630间隔一定时间距离(temporal distance,TD)633。TD 633表示视频序列中的当前帧610与参考帧630之间的时间量,可以以帧为单位进行测量。当前块611的预测信息可以通过表示各帧之间的方向和时间距离的参考索引对参考帧630和/或参考块631进行参考。在TD 633表示的时间段内,当前块611中的对象从当前帧610中的一个位置移动到参考帧630中的另一个位置(例如,参考块631的位置)。例如,该对象可以沿着运动轨迹(trajectory)613移动,运动轨迹613表示对象随时间移动的方向。运动矢量635描述了该对象在TD 633内沿着运动轨迹613移动的方向和幅度。因此,经编码运动矢量635、参考块631以及包括当前块611与参考块631之间的差值的残差提供足够的信息来重建当前块611并且在当前帧610中定位当前块611。
图7为一种双向帧间预测示例700的示意图。双向帧间预测700可以用于确定在分割图像时产生的编码块和/或解码块的运动矢量。
双向帧间预测700类似于单向帧间预测600,但双向帧间预测700中采用一对参考帧来预测当前帧710中的当前块711。因此,当前帧710和当前块711分别与当前帧610和当前块611基本上类似。当前帧710在时间上位于前一个参考帧720与下一个参考帧730之间,其中,前一个参考帧720在视频序列中位于当前帧710之前,下一个参考帧730在视频序列中位于当前帧710之后。前一个参考帧720和下一个参考帧730在其它方面与参考帧630基本上类似。
当前块711与前一个参考帧720中的前一个参考块721和下一个参考帧730中的下一个参考块731匹配。这种匹配表示在播放视频序列的过程中,一个对象沿着运动轨迹713从前一个参考块721的位置经过当前块711移动到下一个参考块731的位置。当前帧710与前一个参考帧720间隔一定的前一个时间距离(TD0)723,且与下一个参考帧730间隔一定的下一个时间距离(TD1)733。TD0 723表示视频序列中的前一个参考帧720与当前帧710之间的时间量,以帧为单位。TD1 733表示视频序列中的当前帧710与下一个参考帧730之间的时间量,以帧为单位。因此,该对象在由TD0 723表示的时间段内沿着运动轨迹713从前一个参考块721移动到当前块711。该对象还在由TD1 733表示的时间段内沿着运动轨迹713从当前块711移动到下一个参考块731。当前块711的预测信息可以通过一对表示各帧之间的方向和时间距离的参考索引对前一个参考帧720和/或前一个参考块721以及下一个参考帧730和/或下一个参考块731进行参考。
前一个运动矢量(MV0)725描述了该对象在TD0 723内(例如,在前一个参考帧720与当前帧710之间)沿着运动轨迹713移动的方向和幅度。下一个运动矢量(MV1)735描述了该对象在TD1 733内(例如,在当前帧710与下一个参考帧730之间)沿着运动轨迹713移动的方向和幅度。因此,在双向帧间预测700中,当前块711可以通过前一个参考块721和/或下一个参考块731、MV0 725和MV1 735进行译码和重建。
在一个实施例中,可以逐样本(例如,逐像素)而不是逐块执行帧间预测和/或双向帧间预测。即,可以针对当前块711中的每个样本确定指向前一个参考块721和/或下一个参考块731中的每个样本的运动矢量。在这些实施例中,图7中描绘的运动矢量725和运动矢量735表示对应于当前块711、前一个参考块721和下一个参考块731中的多个样本的多个运动矢量。
在融合(merge)模式和高级运动矢量预测(advanced motion vectorprediction,AMVP)模式中,候选列表都是通过按照候选列表确定模式定义好的顺序将候选运动矢量添加到候选列表中生成的。这些候选运动矢量可以包括根据单向帧间预测600、双向帧间预测700或其组合得到的运动矢量。具体地,运动矢量是在对相邻块进行编码时针对这些块生成的。这些运动矢量被添加到当前块的候选列表中,而且当前块的运动矢量也是从该候选列表中选择的。然后,运动矢量可以指示为该选定的运动矢量在候选列表中的索引。解码器可以使用与编码器相同的过程构建候选列表,并且可以根据该指示的索引从候选列表中确定该选定的运动矢量。因此,候选运动矢量包括根据单向帧间预测600和/或双向帧间预测700生成的运动矢量,具体取决于使用哪种方法对这些相邻块进行编码。
图8示出了一种视频码流800。本文中所描述的视频码流800也可以称为经编码视频码流、码流或其变体。如图8所示,码流800包括序列参数集(sequence parameter set,SPS)802、图像参数集(picture parameter set,PPS)804、条带头806和图像数据808。
SPS 802包括图像序列(sequence of picture,SOP)中的所有图像共有的数据,而PPS 804包括整个图像共有的数据。条带头806包括当前条带的信息,例如条带类型、要使用的参考图像等。SPS 802和PPS 804可以统称为参数集。SPS 802、PPS 804和条带头806是网络抽象层(Network Abstraction Layer,NAL)单元类型。NAL单元是一种语法结构,包括要遵循的数据类型(例如,经编码视频数据)的指示。NAL单元分为视频编码层(video codinglayer,VCL)NAL单元和非视频编码层NAL(non-VCL NAL)单元。VCL NAL单元包括表示视频图像中的样本的值的数据,非VCL NAL单元包括任何关联的附加信息,例如参数集(可以应用于大量VCL NAL单元的重要条带头数据)和补充增强信息(定时信息和其它补充数据,其中,该补充数据可以增强解码后的视频信号的可用性,但它不是解码视频图像中的样本的值所必需的)。本领域技术人员应理解,码流800在实际应用中可以包括其它参数和信息。
图8所示的图像数据808包括与正被编码或解码的图像或视频关联的数据。图像数据808可以简单地称为码流800中携带的载荷或数据。在一个实施例中,图像数据808包括CVS 814(或CLVS),该CVS 814(或CLVS)包括多个图像810。CVS 814是视频码流800中每个编码层视频序列(coded layer video sequence,CLVS)的经编码视频序列。需要说明的是,当视频码流800包括单层时,CVS与CLVS相同。仅当视频码流800包括多层时,CVS与CLVS才不相同。
如图8所示,每个图像810的条带可以包含在该图像810自己的VCL NAL单元812中。CVS 814中的VCL NAL单元812的集合可以称为接入单元。
图9示出了一种用于图像910的分割技术900。图像910可以与图8中的任何图像810类似。如该图所示,图像910可以被分割为多个条带912。条带是一个帧(例如,图像)中的一个空间上不同的区域,该区域与同一帧中的任何其它区域分开进行编码。虽然图9中示出了三个条带912,但在实际应用中可以使用更多或更少的条带。每个条带912可以被分割为多个块914。图9中的块914可以与图7中的当前块711、前一个参考块721和下一个参考块731类似。块914可以表示CU。虽然图9中示出了四个块914,但在实际应用中可以使用更多或更少的块。
每个块914可以被分割为多个样本916(例如,像素)。在一个实施例中,每个块914的大小以亮度样本为单位进行测量。虽然图9中示出了16个样本916,但在实际应用中可以使用更多或更少的样本。
图10示出了一种由视频解码器(例如,上述视频解码器30)实现的对经编码视频码流进行解码的方法1000的实施例。该方法1000可以在从视频编码器(例如,上述视频编码器20)直接或间接地接收到经解码码流之后执行。该方法1000中,在当前图像的空间分辨率与参考图像的空间分辨率不同时,可以选择性地禁用BDOF,而无需在启用RPR时对整个CVS禁用BDOF,从而改进了解码过程。由于这种方式中具有选择性地禁用BDOF的能力,从而可以提高译码效率。因此,这样实际上提高了编解码器的性能,从而使得用户体验更好。
步骤1002:视频解码器确定正被解码的当前图像的分辨率是否与参考图像列表所标识的参考图像的分辨率相同。在一个实施例中,视频解码器接收经编码视频码流(例如,所述码流800)。经编码视频码流包括参考图像列表,表示当前图像的分辨率,并表示双向帧间预测模式。在一个实施例中,参考图像列表结构中包括该参考图像列表。在一个实施例中,该参考图像列表用于进行双向帧间预测。在一个实施例中,当前图像的分辨率设置在经编码视频码流的参数集中。在一个实施例中,参考图像的分辨率根据当前图像推导出,根据当前图像的分辨率推断出,从码流中解析出,或以其它方式得到。在一个实施例中,当前图像的参考图像是根据双向帧间预测模式并基于参考图像列表生成的。
步骤1004:当确定当前图像的分辨率与参考图像中每一个参考图像的分辨率均相同时,视频解码器对当前图像的当前块启用BDOF。在一个实施例中,视频解码器通过将BDOF标志设置为第一值(例如,真(true)、1等)启用所述BDOF。在一个实施例中,即使启用了所述BDOF,所述BDOF也是可选的过程。也就是说,即使启用了所述BDOF,也不一定需要执行所述BDOF。
步骤1006:当前图像的分辨率与参考图像中任一个参考图像的分辨率不同时,视频解码器对当前图像的当前块禁用所述BDOF。在一个实施例中,视频解码器通过将BDOF标志设置为第二值(例如,假(false),0等)禁用所述BDOF。
步骤1008:当BDOF标志被设置为第一值时,视频解码器对当前块对应的运动矢量进行修正。在一个实施例中,该方法1000还包括:根据当前图像的分辨率是否与参考图像的分辨率相同或不同,对当前图像中的其它块选择性地启用或禁用BDOF。
在一个实施例中,该方法还包括:即使是在所述BDOF被禁用的情况下,对包括当前图像的整个经编码视频序列(coded video sequence,CVS)启用参考图像重采样(reference picture resampling,RPR)。
在一个实施例中,当前块是从当前图像的条带中获得的。在一个实施例中,当前图像包括多个条带,当前块是从该多个条带的一个条带中获得的。
在一个实施例中,该方法还包括:为电子设备(例如,智能手机、平板电脑、笔记本电脑、个人计算机等)的用户显示根据当前图像生成的图像。
图11示出了一种由视频编码器(例如,上述视频编码器20)实现的编码视频码流的方法1100的实施例。该方法900可以在需要将图像(例如,来自视频)编码到视频码流并发送到视频解码器(例如,上述视频解码器30)时执行。该方法1100中,在当前图像的空间分辨率与参考图像的空间分辨率不同时,可以选择性地禁用BDOF,而无需在启用RPR时对整个CVS禁用BDOF,从而改进了编码过程。由于这种方式中具有选择性地禁用BDOF的能力,从而可以提高译码效率。因此,这样实际上提高了编解码器的性能,从而使得用户体验更好。
步骤1102:视频编码器确定正被编码的当前图像的分辨率是否与参考图像列表所标识的参考图像的分辨率相同。在一个实施例中,参考图像列表结构中包括该参考图像列表。在一个实施例中,该参考图像列表用于进行双向帧间预测。在一个实施例中,当前图像的分辨率编码到视频码流的参数集中。在一个实施例中,当前图像的参考图像是根据双向帧间预测模式并基于参考图像列表生成的。
步骤1104:当确定当前图像的分辨率与参考图像中每一个参考图像的分辨率均相同时,视频编码器对当前图像的当前块启用BDOF。在一个实施例中,视频编码器通过将BDOF标志设置为第一值(例如,真(true)、1等)启用所述BDOF。在一个实施例中,即使启用了所述BDOF,所述BDOF也是可选的过程。也就是说,即使启用了所述BDOF,也不一定需要执行所述BDOF。
在一个实施例中,该方法包括:根据参考图像确定当前图像的运动矢量,根据运动矢量对当前图像进行编码,通过假设参考解码器(hypothetical reference decoder,HRD)对当前图像进行解码。
步骤1106:当前图像的分辨率与参考图像中任一个参考图像的分辨率不同时,视频编码器对当前图像的当前块禁用所述BDOF。在一个实施例中,视频编码器通过将BDOF标志设置为第二值(例如,假(false),0等)禁用所述BDOF。
步骤1108:当BDOF标志被设置为第一值时,视频编码器对当前块对应的运动矢量进行修正。在一个实施例中,该方法1100还包括:根据当前图像的分辨率是否与参考图像的分辨率相同或不同,对当前图像中的其它块选择性地启用或禁用BDOF。
在一个实施例中,该方法还包括:即使是在所述BDOF被禁用的情况下,对包括当前图像的整个经编码视频序列(coded video sequence,CVS)启用参考图像重采样(reference picture resampling,RPR)。
在一个实施例中,当前块是从当前图像的条带中获得的。在一个实施例中,当前图像包括多个条带,当前块是从该多个条带的一个条带中获得的。
在一个实施例中,视频编码器生成包括当前块的视频码流,并将该视频码流发送给视频解码器。在一个实施例中,视频编码器存储该视频码流,以发送到视频解码器。
在一个实施例中,公开了一种对视频码流进行解码的方法。该视频码流包括至少一个图像,每个图像包括多个条带。多个条带中的每个条带包括多个编码块和多个参考图像列表。多个参考图像列表中的每个参考图像列表包括多个参考图像,这些参考图像可以用于对条带中的编码块进行帧间预测。
该方法包括:解析参数集,以获得当前图像的分辨率信息;获得当前图像中当前条带的两个参考图像列表;确定用于对当前条带中的当前编码块进行解码的参考图像;确定参考图像的分辨率;根据当前图像的分辨率和参考图像的分辨率,决定是否使用或启用双向光流(bi-direction optical flow,BIO)对当前编码块进行解码;对当前编码块进行解码。
在一个实施例中,该方法包括:当前图像的分辨率与参考图像的分辨率不同时,不使用或禁用所述BIO对当前编码块进行解码。
在一个实施例中,公开了一种对视频码流进行解码的方法。该视频码流包括至少一个图像,每个图像包括多个条带。多个条带中的每个条带与包括多个语法元素的条带头相关联。多个条带中的每个条带包括多个编码块和多个参考图像列表。多个参考图像列表中的每个参考图像列表包括多个参考图像,这些参考图像可以用于对当前条带中的编码块进行帧间预测。
该方法包括:解析参数集,以获得标志,该标志用于表示是否可以使用双向光流(bi-direction optical flow,BIO)译码工具/技术对当前经编码视频序列中的图像进行解码;获得当前图像中的当前条带;当表示是否可以使用双向光流(bi-direction opticalflow,BIO)译码工具/技术对当前经编码视频序列中的图像进行解码的标志的值表示可以使用BIO时,解析与当前条带关联的条带头,以获得用于表示是否可以使用BIO译码工具对当前条带中的编码块进行解码的标志。
在一个实施例中,当表示是否可以使用BIO译码工具对当前条带中的编码块进行解码的标志的值表示不可以使用该译码工具对当前条带进行解码时,则不使用或禁用该BIO译码工具对当前编码块进行解码。
在一个实施例中,当表示是否可以使用BIO译码工具对当前条带中的编码块进行解码的标志的值不存在时,则推断该值与表示是否可以使用双向光流(bi-directionoptical flow,BIO)译码工具/技术对当前经编码视频序列中的图像进行解码的标志的值相同。
在一个实施例中,公开了一种编码视频码流的方法。该视频码流包括至少一个图像,每个图像包括多个条带。多个条带中的每个条带与包括多个语法元素的条带头相关联。多个条带中的每个条带包括多个编码块和多个参考图像列表。多个参考图像列表中的每个参考图像列表包括多个参考图像,这些参考图像可以用于对当前条带中的编码块进行帧间预测。
该方法包括:确定是否可以使用双向光流(bi-direction optical flow,BIO)译码工具/技术对当前经编码视频序列中的图像进行编码;解析参数集,以获得每个图像码流的分辨率信息;获得当前图像中当前条带的两个参考图像列表;解析当前条带的参考图像列表,以获得可用于对当前条带中的编码块进行解码的活动参考图像;若满足以下至少一个条件,限制为不可以使用该BIO译码工具对当前条带中的编码块进行编码:该BIO译码工具不可以用于对当前经编码视频序列中的图像进行编码,并且当前图像的分辨率与至少一个参考图像的分辨率不同。
在一个实施例中,公开了一种对视频码流进行解码的方法。该码流包括至少一个图像,每个图像包括多个条带。多个条带中的每个条带与包括多个语法元素的条带头相关联。多个条带中的每个条带包括多个编码块和多个参考图像列表。多个参考图像列表中的每个参考图像列表包括多个参考图像,这些参考图像可以用于对当前条带中的编码块进行帧间预测。
该方法包括:解析参数集,以获得用于表示是否可以使用双向光流(bi-directionoptical flow,BIO)译码工具/技术对当前经编码视频序列中的图像进行解码的标志;解析参数集,以获得用于表示是否可以使用双向光流(bi-direction optical flow,BIO)译码工具/技术对参考参数集的图像进行解码的标志,其中,参数集是指图像参数集(PictureParameter Set,PPS)。
在一个实施例中,当表示是否可以使用BIO译码工具对参考PPS的图像进行解码的标志的值表示不可以使用该译码工具时,则不使用或禁用该BIO译码工具对当前编码块进行解码。
在一个实施例中,公开了一种编码视频码流的方法。该视频码流包括至少一个图像,每个图像包括多个条带。多个条带中的每个条带与包括多个语法元素的条带头相关联。多个条带中的每个条带包括多个编码块和多个参考图像列表。多个参考图像列表中的每个参考图像列表包括多个参考图像,这些参考图像可以用于对当前条带中的编码块进行帧间预测。
在一个实施例中,该方法包括:确定是否可以使用双向光流(bi-directionoptical flow,BIO)译码工具/技术对当前经编码视频序列中的图像进行编码;确定是否可以使用双向光流(bi-direction optical flow,BIO)译码工具/技术对参考当前PPS的图像进行编码;当不可以使用该BIO译码工具对当前经编码序列中的图像进行编码时,限制为不可以使用该BIO译码工具对参考当前PPS的图像进行编码。
以下语法和语义可以用于实现本文公开的实施例。以下描述是相对于基础文本展开的,该基础文本是指最新的VVC草案规范。换句话说,下文中只描述了新增部分,而基础文本中的文本则按原样适用,并未在下文中提及。相对于基础文本而新增的文本则以粗体形式显示,删除的文本则以斜体形式显示。
参考图像列表的构建流程更新如下:
参考图像列表RefPicList[0]和RefPicList[1]的构建方式如下:
确定是否使用BIO的标志推导如下。
令predSamplesL0L、predSamplesL1L和predSamplesIntraL为预测亮度样本值的(cbWidth(宽度))x(cbHeight(高度))阵列,令predSamplesL0Cb、predSamplesL1Cb、predSamplesL0Cr、predSamplesL1Cr、predSamplesIntraCb和predSamplesIntraCr为预测色度样本值的(cbWidth/2)x(cbHeight/2)阵列。
-变量currPic表示当前图像,变量bdofFlag推导如下:
-如果以下所有条件都为真,则bdofFlag设置为等于TRUE。
-sps_bdof_enabled_flag等于1。
-predFlagL0[xSbIdx][ySbIdx]和predFlagL1[xSbIdx][ySbIdx]都等于1。
-DiffPicOrderCnt(currPic,RefPicList[0][refIdxL0])*DiffPicOrderCnt(currPic,RefPicList[1][refIdxL1])小于0。
-MotionModelIdc[xCb][yCb]等于0。
-merge_subblock_flag[xCb][yCb]等于0。
-BcwIdx[xCb][yCb]等于0。
-luma_weight_l0_flag[refIdxL0]和luma_weight_l1_flag[refIdxL1]都等于0。
-cbHeight大于或等于8。
-cIdx等于0。
-
-
-否则,bdofFlag设置为FALSE。
序列参数集的语法和语义如下:
sps_bdof_enabled_flag等于0,表示双向光流帧间预测被禁用。sps_bdof_enabled_flag等于1表示双向光流帧间预测被启用。
条带头的语法和语义如下:
确定是否使用BIO的标志推导如下。
令predSamplesL0L、predSamplesL1L和predSamplesIntraL为预测亮度样本值的(cbWidth(宽度))x(cbHeight(高度))阵列,令predSamplesL0Cb、predSamplesL1Cb、predSamplesL0Cr、predSamplesL1Cr、predSamplesIntraCb和predSamplesIntraCr为预测色度样本值的(cbWidth/2)x(cbHeight/2)阵列。
-变量currPic表示当前图像,变量bdofFlag推导如下:
-如果以下所有条件都为真,则bdofFlag设置为等于TRUE。
-
-
-predFlagL0[xSbIdx][ySbIdx]和predFlagL1[xSbIdx][ySbIdx]都等于1。
-DiffPicOrderCnt(currPic,RefPicList[0][refIdxL0])*DiffPicOrderCnt(currPic,RefPicList[1][refIdxL1])小于0。
-MotionModelIdc[xCb][yCb]等于0。
-merge_subblock_flag[xCb][yCb]等于0。
-BcwIdx[xCb][yCb]等于0。
-luma_weight_l0_flag[refIdxL0]和luma_weight_l1_flag[refIdxL1]都等于0。
-cbHeight大于或等于8。
-cIdx等于0。
-否则,bdofFlag设置为FALSE。
序列参数集的语法和语义如下:
sps_bdof_enabled_flag等于0,表示双向光流帧间预测被禁用。sps_bdof_enabled_flag等于1表示双向光流帧间预测被启用。
图像参数集语法和语义。
确定是否使用BIO的标志推导如下。
令predSamplesL0L、predSamplesL1L和predSamplesIntraL为预测亮度样本值的(cbWidth(宽度))x(cbHeight(高度))阵列,令predSamplesL0Cb、predSamplesL1Cb、predSamplesL0Cr、predSamplesL1Cr、predSamplesIntraCb和predSamplesIntraCr为预测色度样本值的(cbWidth/2)x(cbHeight/2)阵列。
-变量currPic表示当前图像,变量bdofFlag推导如下:
-如果以下所有条件都为真,则bdofFlag设置为等于TRUE。
-
-
-predFlagL0[xSbIdx][ySbIdx]和predFlagL1[xSbIdx][ySbIdx]都等于1。
-DiffPicOrderCnt(currPic,RefPicList[0][refIdxL0])*DiffPicOrderCnt(currPic,RefPicList[1][refIdxL1])小于0。
-MotionModelIdc[xCb][yCb]等于0。
-merge_subblock_flag[xCb][yCb]等于0。
-BcwIdx[xCb][yCb]等于0。
-luma_weight_l0_flag[refIdxL0]和luma_weight_l1_flag[refIdxL1]都等于0。
-cbHeight大于或等于8。
-cIdx等于0。
-否则,bdofFlag设置为FALSE。
图12为本申请实施例提供的一种视频译码设备1200(例如,上述视频编码器20或上述视频解码器30)的示意图。该视频译码设备1200适用于实现本文所描述的公开实施例。该视频译码设备1200包括:入端口1210和接收单元(Rx)1220,用于接收数据;处理器、逻辑单元或中央处理单元(central processing unit,CPU)1230,用于处理数据;发送单元(Tx)1240和出端口1250,用于发送数据;存储器1260,用于存储数据。该视频译码设备1200还可以包括光电(optical-to-electrical,OE)组件和电光(electrical-to-optical,EO)组件,耦合到入端口1210、接收单元1220、发送单元1240和出端口1250,作为光信号或电信号的出口或入口。
处理器1230通过硬件和软件实现。处理器1230可以实现为一个或多个CPU芯片、核(例如作为多核处理器)、现场可编程门阵列(field-programmable gate array,FPGA)、专用集成电路(application-specific integrated circuit,ASIC)和数字信号处理器(digital signal processor,DSP)。处理器1230与入端口1210、接收单元1220、发送单元1240、出端口1250和存储器1260进行通信。处理器1230包括译码模块1270。该译码模块1270实现上述公开实施例。例如,该译码模块1270实现、处理、准备或提供各种编解码功能。因此,将该译码模块1270包括在内,这实质性地改进了视频译码设备1200的功能,并且对视频译码设备1200转换到不同状态产生影响。可替换地,该译码模块1270实现为存储在存储器1260中并由处理器1230执行的指令。
该视频译码设备1200还可以包括用于与用户进行数据交换的输入和/或输出(I/O)设备1280。I/O设备1280可以包括输出设备,例如用于显示视频数据的显示器、用于输出音频数据的扬声器等。I/O设备1280还可以包括输入设备,例如键盘、鼠标、轨迹球等,和/或用于与这些输出设备交互的对应接口。
存储器1260包括一个或多个硬盘、磁带驱动器和固态硬盘,可以用作溢出数据存储设备,以在选择用于执行的程序时存储此类程序,以及存储在程序执行期间读取的指令和数据。存储器1260可以是易失性的和/或非易失性的,可以是只读存储器(read-onlymemory,ROM)、随机存取存储器(random access memory,RAM)、三态内容寻址存储器(ternary content-addressable memory,TCAM)和/或静态随机存取存储器(staticrandom access memory,SRAM)。
图13为一种译码单元1300的实施例的示意图。在一个实施例中,译码单元1300在视频译码设备1302(例如,上述视频编码器20或上述视频解码器30)中实现。该视频译码设备1302包括接收单元1301。接收单元1301用于接收图像进行编码或接收码流进行解码。该视频译码设备1302包括发送单元1307,耦合到接收单元1301。发送单元1307用于将码流发送到解码器或将经解码图像发送到显示单元(例如,上述I/O设备1280中的一个)。
该视频译码设备1302包括存储单元1303。存储单元1303耦合到接收单元1301或发送单元1307中的至少一个。存储单元1303用于存储指令。该视频译码设备1302还包括处理单元1305。处理单元1305耦合到存储单元1303。处理单元1305用于执行存储在存储单元1303中的指令,以执行本文中所公开的方法。
还应当理解,本文中阐述的示例性方法的步骤不一定需要按照所描述的顺序执行,并且这些方法的步骤的顺序应理解为仅仅是示例性的。同样地,在与本申请各种实施例相一致的方法中,这些方法可以包括其它步骤,并且某些步骤可以省略或组合。
虽然本申请提供了若干个实施例,但应当理解,在不脱离本申请的精神或范围的情况下,所公开的系统和方法可能通过其它多种具体形式体现。本申请的示例将被认为是说明性的而非限制性的,并不旨在受限于本文中所描述的详细内容。例如,各种元件或组件可以组合或集成在另一个系统中,或者一些特征可以省略或不实施。
此外,在不脱离本申请范围的情况下,各种实施例中描述和说明为独立或分离的技术、系统、子系统和方法可以与其它系统、模块、技术或方法组合或集成。展示或描述为彼此耦合或直接耦合或者互相通信的其它项也可以采用电方式、机械方式或其它方式经由某一接口、设备或中间组件间接地耦合或通信。本领域技术人员在不脱离本文所公开的精神和范围的情况下可以确定出其它变化、替换和更改的示例。

Claims (41)

1.一种视频码流的解码方法,其特征在于,所述方法包括:
解析经编码视频码流,所述视频码流包括与当前图像关联的语法元素,以及所述当前图像的当前块的量化变换系数;
确定正被解码的所述当前图像的分辨率是否与所述当前图像关联的参考图像列表所标识的参考图像的分辨率相同;
当确定所述当前图像的分辨率与所述参考图像中每一个参考图像的分辨率均相同时,对所述当前图像的当前块启用双向光流(bi-direction optical flow,BDOF);
当确定所述当前图像的分辨率与所述参考图像中任一个参考图像的分辨率不同时,对所述当前图像的当前块禁用所述BDOF;
对所述量化变换系数进行反量化和逆变换,以获得重建残差块;
根据所述参考图像列表为所述当前图像生成所述参考图像,并根据所述参考图像的参考块和所述语法元素对所述当前块进行帧间预测,以获得预测块;
根据所述预测块和所述重建残差块,获得重建块。
2.根据权利要求1所述的方法,其特征在于,启用所述BDOF包括将BDOF标志设置为第一值,禁用所述BDOF包括将所述BDOF标志设置为第二值。
3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:在双向帧间预测模式下根据所述参考图像列表为所述当前图像生成所述参考图像。
4.根据权利要求1至3中任一项所述的方法,其特征在于,所述方法还包括:根据多个图像中每个图像的分辨率是否与所述图像关联的参考图像的分辨率相同或不同,对所述多个图像中的块选择性地启用或禁用所述BDOF。
5.根据权利要求1至4中任一项所述的方法,其特征在于,所述方法还包括:当所述BDOF被禁用时,对包括所述当前图像的整个经编码视频序列(coded video sequence,CVS)启用参考图像重采样(reference picture resampling,RPR)。
6.根据权利要求1至5中任一项所述的方法,其特征在于,所述当前图像的分辨率设置在所述经编码视频码流的参数集中,所述当前块是从所述当前图像的条带中获得的。
7.根据权利要求1至6中任一项所述的方法,其特征在于,所述方法还包括:在电子设备的显示屏上显示根据所述当前块生成的图像。
8.一种编码视频码流的方法,其特征在于,所述方法包括:
确定正被编码的当前图像的分辨率是否与所述当前图像关联的参考图像列表中所标识的参考图像的分辨率相同;
当确定所述当前图像的分辨率与所述参考图像中每一个参考图像的分辨率均相同时,对所述当前图像的当前块启用双向光流(bi-direction optical flow,BDOF);
当确定所述当前图像的分辨率与所述参考图像中任一个参考图像的分辨率不同时,对所述当前图像的当前块禁用所述BDOF;
根据所述参考图像列表为所述当前图像生成所述参考图像,并根据所述参考图像的参考块对所述当前块进行帧间预测,以获得与当前图像关联的语法元素,以及预测块;
根据所述预测块和所述当前块,获得残差块;
对所述残差块进行变换和量化,以获得量化变换系数;
将所述语法元素和所述量化变换系数编码到视频码流中。
9.根据权利要求8所述的方法,其特征在于,所述根据所述参考图像列表为所述当前图像生成所述参考图像,并根据所述参考图像的参考块对所述当前块进行帧间预测包括:
根据所述参考图像确定所述当前图像的运动矢量;
根据所述运动矢量对所述当前图像进行编码;
所述方法还包括:通过假设参考解码器对所述当前图像进行解码。
10.根据权利要求8或9所述的方法,其特征在于,启用所述BDOF包括将BDOF标志设置为第一值,禁用所述BDOF包括将所述BDOF标志设置为第二值。
11.根据权利要求8至10中任一项所述的方法,其特征在于,所述方法还包括:在双向帧间预测模式下根据参考图像列表为所述当前图像生成所述参考图像。
12.根据权利要求8至11中任一项所述的方法,其特征在于,所述方法还包括:根据多个图像中每个图像的分辨率是否与所述图像关联的参考图像的分辨率相同或不同,对所述多个图像中的块选择性地启用或禁用所述BDOF。
13.根据权利要求8至12中任一项所述的方法,其特征在于,所述方法还包括:即使是在所述BDOF被禁用的情况下,对包括所述当前图像的整个经编码视频序列(coded videosequence,CVS)启用参考图像重采样(reference picture resampling,RPR)。
14.根据权利要求8至13中任一项所述的方法,其特征在于,所述方法还包括:向视频解码器发送包括所述当前块的视频码流。
15.一种解码设备,其特征在于,包括:
接收器,用于接收经编码视频码流,所述视频码流表示与当前图像关联的语法元素,以及所述当前图像的当前块的量化变换系数;
存储器,耦合到所述接收器,其中,所述存储器存储指令;
处理器,耦合到所述存储器,其中,所述处理器用于执行所述指令,使得所述解码设备执行以下操作:
确定正被解码的所述当前图像的分辨率是否与所述当前图像关联的参考图像列表所标识的参考图像的分辨率相同;
当确定所述当前图像的分辨率与所述参考图像中每一个参考图像的分辨率均相同时,对所述当前图像的当前块启用双向光流(bi-direction optical flow,BDOF);
当确定所述当前图像的分辨率与所述参考图像中任一个参考图像的分辨率不同时,对所述当前图像的当前块禁用所述BDOF;
对所述量化变换系数进行反量化和逆变换,以获得重建残差块;
根据所述参考图像列表为所述当前图像生成所述参考图像,并根据所述参考图像的参考块和所述语法元素对所述当前块进行帧间预测,以获得预测块;
根据所述预测块和所述重建残差块,获得重建块。
16.根据权利要求15所述的解码设备,其特征在于,当所述BDOF被禁用时,对包括所述当前图像的整个经编码视频序列(coded video sequence,CVS)启用参考图像重采样(reference picture resampling,RPR)。
17.根据权利要求15或16所述的解码设备,其特征在于,所述解码设备还包括显示器,用于显示根据所述当前块生成的图像。
18.一种编码设备,其特征在于,包括:
存储器,所述存储器存储指令;
处理器,耦合到所述存储器,其中,所述处理器用于执行所述指令,使得所述编码设备执行以下操作:
确定正被编码的当前图像的分辨率是否与所述当前图像关联的参考图像列表中所标识的参考图像的分辨率相同;
当确定所述当前图像的分辨率与所述参考图像中每一个参考图像的分辨率均相同时,对所述当前图像的当前块启用双向光流(bi-direction optical flow,BDOF);
当确定所述当前图像的分辨率与所述参考图像中任一个参考图像的分辨率不同时,对所述当前图像的当前块禁用所述BDOF;
根据所述参考图像列表为所述当前图像生成所述参考图像,并根据所述参考图像的参考块对所述当前块进行帧间预测,以获得与当前图像关联的语法元素,以及预测块;
根据所述预测块和所述当前块,获得残差块;
对所述残差块进行变换和量化,以获得量化变换系数;
将所述语法元素和所述量化变换系数编码到视频码流中;
发送器,耦合到所述处理器,其中,所述发送器用于向视频解码器发送包括所述视频码流。
19.根据权利要求18所述的编码设备,其特征在于,即使是在BDOF被禁用的情况下,对包括所述当前图像的整个经编码视频序列(coded video sequence,CVS)启用参考图像重采样(reference picture resampling,RPR)。
20.根据权利要求18或19所述的编码设备,其特征在于,在所述发送器向所述视频解码器发送所述视频码流之前,所述存储器存储所述码流。
21.一种译码装置,其特征在于,包括:
接收器,用于接收图像进行编码或接收码流进行解码;
发送器,耦合到所述接收器,其中,所述发送器用于将所述码流发送到解码器或将经解码图像发送到显示器;
存储器,耦合到所述接收器或所述发送器中的至少一个,其中,所述存储器用于存储指令;
处理器,耦合到所述存储器,其中,所述处理器用于执行存储在所述存储器中的所述指令,以执行根据权利要求1至7以及权利要求8至14中任一项所述的方法。
22.根据权利要求21所述的译码装置,其特征在于,所述译码装置还包括显示器,用于显示图像。
23.一种系统,其特征在于,包括:
编码器;
解码器,与所述编码器进行通信;其中,所述编码器或所述解码器包括根据权利要求15至22中任一项所述的解码设备、编码设备或译码装置。
24.一种计算机可读存储介质,其特征在于,包括:
经编码视频码流,所述视频码流包括与当前图像关联的语法元素,所述语法元素包括双向光流(bi-direction optical flow,BDOF)标志和所述当前图像的分辨率,其中:
当所述当前图像的分辨率与多个参考图像中每一个参考图像的分辨率均相同时,所述BDOF标志被启用,所述多个参考图像为与所述当前图像关联的参考图像列表所标识的多个参考图像;
当所述当前图像的分辨率与所述参考图像中任一个参考图像的分辨率不同时,所述BDOF标志被禁用。
25.根据权利要求24所述的计算机可读存储介质,其特征在于,当所述BDOF标志被禁用时,对包括所述当前图像的整个经编码视频序列(coded video sequence,CVS)的参考图像重采样(reference picture resampling,RPR)被启用。
26.根据权利要求24或25所述的计算机可读存储介质,其特征在于,所述当前图像的分辨率设置在所述经编码视频码流的参数集中,所述当前块是从所述当前图像的条带中获得的。
27.一种存储视频码流的方法,其特征在于,包括:
接收经编码视频码流,所述视频码流包括与当前图像关联的语法元素,所述语法元素包括双向光流(bi-direction optical flow,BDOF)标志和所述当前图像的分辨率,其中:当所述当前图像的分辨率与多个参考图像中每一个参考图像的分辨率均相同时,所述BDOF标志被启用,所述多个参考图像为与所述当前图像关联的参考图像列表所标识的多个参考图像;当所述当前图像的分辨率与所述参考图像中任一个参考图像的分辨率不同时,所述BDOF标志被禁用;
将所述视频码流存储在存储介质中。
28.根据权利要求27所述的方法,其特征在于,当所述BDOF标志被禁用时,对包括所述当前图像的整个经编码视频序列(coded video sequence,CVS)的参考图像重采样(reference picture resampling,RPR)被启用。
29.根据权利要求27或28所述的方法,其特征在于,所述当前图像的分辨率设置在所述经编码视频码流的参数集中,所述当前块是从所述当前图像的条带中获得的。
30.一种存储视频码流的设备,其特征在于,包括:
接收器,用于接收经编码视频码流,所述视频码流包括双向光流(bi-directionoptical flow,BDOF)标志和所述当前图像的分辨率,其中:当所述当前图像的分辨率与多个参考图像中每一个参考图像的分辨率均相同时,所述BDOF标志被启用,所述多个参考图像为与所述当前图像关联的参考图像列表所标识的多个参考图像;当所述当前图像的分辨率与所述参考图像中任一个参考图像的分辨率不同时,所述BDOF标志被禁用;
存储器,用于存储所述视频码流。
31.根据权利要求30所述的设备,其特征在于,当所述BDOF标志被禁用时,对包括所述当前图像的整个经编码视频序列(coded video sequence,CVS)的参考图像重采样(reference picture resampling,RPR)被启用。
32.根据权利要求30或31所述的设备,其特征在于,所述当前图像的分辨率设置在所述经编码视频码流的参数集中,所述当前块是从所述当前图像的条带中获得的。
33.一种传输码流的方法,其特征在于,包括:
从存储器中获取经编码视频码流,所述视频码流包括双向光流(bi-directionoptical flow,BDOF)标志和所述当前图像的分辨率,其中:当所述当前图像的分辨率与多个参考图像中每一个参考图像的分辨率均相同时,所述BDOF标志被启用,所述多个参考图像为与所述当前图像关联的参考图像列表所标识的多个参考图像;当所述当前图像的分辨率与所述参考图像中任一个参考图像的分辨率不同时,所述BDOF标志被禁用;
发送所述视频码流。
34.根据权利要求33所述的方法,其特征在于,当所述BDOF标志被禁用时,对包括所述当前图像的整个经编码视频序列(coded video sequence,CVS)的参考图像重采样(reference picture resampling,RPR)被启用。
35.根据权利要求33或34所述的方法,其特征在于,所述当前图像的分辨率设置在所述经编码视频码流的参数集中,所述当前块是从所述当前图像的条带中获得的。
36.一种传输码流的设备,其特征在于,包括:
处理器,用于从存储器中获取经编码视频码流,所述视频码流包括双向光流(bi-direction optical flow,BDOF)标志和所述当前图像的分辨率,其中:当所述当前图像的分辨率与多个参考图像中每一个参考图像的分辨率均相同时,所述BDOF标志被启用,所述多个参考图像为与所述当前图像关联的参考图像列表所标识的多个参考图像;当所述当前图像的分辨率与所述参考图像中任一个参考图像的分辨率不同时,所述BDOF标志被禁用;;
发送器,用于发送所述视频码流。
37.根据权利要求36所述的设备,其特征在于,当所述BDOF标志被禁用时,对包括所述当前图像的整个经编码视频序列(coded video sequence,CVS)的参考图像重采样(reference picture resampling,RPR)被启用。
38.根据权利要求36或37所述的设备,其特征在于,所述当前图像的分辨率设置在所述经编码视频码流的参数集中,所述当前块是从所述当前图像的条带中获得的。
39.一种经编码视频码流,其特征在于,所述经编码视频码流包括:
双向光流(bi-direction optical flow,BDOF)标志和所述当前图像的分辨率,其中:当所述当前图像的分辨率与多个参考图像中每一个参考图像的分辨率均相同时,所述BDOF标志被启用,所述多个参考图像为与所述当前图像关联的参考图像列表所标识的多个参考图像;当所述当前图像的分辨率与所述参考图像中任一个参考图像的分辨率不同时,所述BDOF标志被禁用;。
40.根据权利要求39所述的视频码流,其特征在于,当所述BDOF标志被禁用时,对包括所述当前图像的整个经编码视频序列(coded video sequence,CVS)的参考图像重采样(reference picture resampling,RPR)被启用。
41.根据权利要求39或40所述的视频码流,其特征在于,所述当前图像的分辨率设置在所述经编码视频码流的参数集中,所述当前块是从所述当前图像的条带中获得的。
CN202410218755.2A 2019-05-15 2020-05-14 视频译码中用于参考图像重采样的双向光流(bio)译码工具的处理 Pending CN118101931A (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201962848409P 2019-05-15 2019-05-15
US62/848,409 2019-05-15
CN202080035926.8A CN113826381A (zh) 2019-05-15 2020-05-14 视频译码中用于参考图像重采样的双向光流(bio)译码工具的处理
PCT/US2020/032922 WO2020232264A1 (en) 2019-05-15 2020-05-14 Handling of bi-directional optical flow (bio) coding tool for reference picture resampling in video coding

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN202080035926.8A Division CN113826381A (zh) 2019-05-15 2020-05-14 视频译码中用于参考图像重采样的双向光流(bio)译码工具的处理

Publications (1)

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

Family

ID=73289314

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202410218755.2A Pending CN118101931A (zh) 2019-05-15 2020-05-14 视频译码中用于参考图像重采样的双向光流(bio)译码工具的处理
CN202080035926.8A Pending CN113826381A (zh) 2019-05-15 2020-05-14 视频译码中用于参考图像重采样的双向光流(bio)译码工具的处理

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN202080035926.8A Pending CN113826381A (zh) 2019-05-15 2020-05-14 视频译码中用于参考图像重采样的双向光流(bio)译码工具的处理

Country Status (11)

Country Link
US (1) US20220014735A1 (zh)
EP (2) EP4221225B1 (zh)
JP (2) JP7384929B2 (zh)
KR (2) KR102628896B1 (zh)
CN (2) CN118101931A (zh)
ES (1) ES2947509T3 (zh)
HU (1) HUE061979T2 (zh)
MX (1) MX2021013977A (zh)
PL (1) PL3970363T3 (zh)
PT (1) PT3970363T (zh)
WO (1) WO2020232264A1 (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3954119A4 (en) 2019-05-21 2022-06-22 Beijing Bytedance Network Technology Co., Ltd. SYNTAX SIGNALING IN A SUBBLOCK MERGE MODE
KR20240036121A (ko) * 2019-06-24 2024-03-19 엘지전자 주식회사 영상 디코딩 방법 및 그 장치
KR102679376B1 (ko) * 2019-08-22 2024-06-27 엘지전자 주식회사 가중 예측을 수행하는 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법
CN114631317B (zh) 2019-10-18 2024-03-15 北京字节跳动网络技术有限公司 子图片的参数集信令中的语法约束
EP4351133A1 (en) * 2022-10-07 2024-04-10 Beijing Xiaomi Mobile Software Co., Ltd. Encoding/decoding video picture data

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4390112B2 (ja) * 2002-09-05 2009-12-24 エージェンシー フォー サイエンス,テクノロジー アンド リサーチ ビデオシーケンスのレートを制御する方法及び装置並びにビデオ符号化装置
WO2008140656A2 (en) * 2007-04-03 2008-11-20 Gary Demos Flowfield motion compensation for video compression
US20170171563A1 (en) * 2014-02-24 2017-06-15 Sharp Kabushiki Kaisha Restrictions on signaling
US10375413B2 (en) * 2015-09-28 2019-08-06 Qualcomm Incorporated Bi-directional optical flow for video coding
KR20240024335A (ko) * 2018-11-22 2024-02-23 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 서브 블록 기반 인터 예측을 위한 조정 방법
US11206425B2 (en) * 2019-03-11 2021-12-21 Alibaba Group Holding Limited Inter prediction methods for coding video data
US11039150B2 (en) * 2019-04-19 2021-06-15 Tencent America LLC Method and apparatus for video coding
CN117692630A (zh) * 2019-05-11 2024-03-12 北京字节跳动网络技术有限公司 视频处理中编解码工具的选择性使用
CA3146230A1 (en) * 2019-07-08 2020-10-22 Huawei Technologies Co., Ltd. Handling of multiple picture size and conformance windows for reference picture resampling in video coding
CN117376557A (zh) * 2019-10-13 2024-01-09 北京字节跳动网络技术有限公司 参考图片重采样与视频编解码工具之间的相互作用

Also Published As

Publication number Publication date
EP4221225A1 (en) 2023-08-02
JP7384929B2 (ja) 2023-11-21
EP3970363B1 (en) 2023-05-17
WO2020232264A1 (en) 2020-11-19
PT3970363T (pt) 2023-06-15
HUE061979T2 (hu) 2023-09-28
PL3970363T3 (pl) 2023-07-17
EP3970363A1 (en) 2022-03-23
ES2947509T3 (es) 2023-08-10
KR20220008342A (ko) 2022-01-20
EP3970363A4 (en) 2022-07-27
EP4221225B1 (en) 2024-05-29
MX2021013977A (es) 2022-04-01
CN113826381A (zh) 2021-12-21
KR20240013895A (ko) 2024-01-30
JP2024012555A (ja) 2024-01-30
US20220014735A1 (en) 2022-01-13
KR102628896B1 (ko) 2024-01-23
JP2022532400A (ja) 2022-07-14

Similar Documents

Publication Publication Date Title
JP7302000B2 (ja) エンコーダ、デコーダ、および対応する方法
CN115314708B (zh) 视频码流的解码方法及对应的设备及介质
JP7384929B2 (ja) 映像コーディングにおける参照ピクチャリサンプリングに対する双方向オプティカルフロー(bio)コーディングツールの取扱い
US20220094954A1 (en) Inter Coding in Video Coding with the Support of Multiple Layers
US11895312B2 (en) Output of prior pictures for pictures starting a new coded video sequence in video coding
RU2820215C2 (ru) Обработка инструмента кодирования двунаправленного оптического потока (bio) для передискретизации опорного изображения при кодировании видео

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