CN113228519A - 任意和环绕分块分组 - Google Patents

任意和环绕分块分组 Download PDF

Info

Publication number
CN113228519A
CN113228519A CN201980083100.6A CN201980083100A CN113228519A CN 113228519 A CN113228519 A CN 113228519A CN 201980083100 A CN201980083100 A CN 201980083100A CN 113228519 A CN113228519 A CN 113228519A
Authority
CN
China
Prior art keywords
tile
group
index
image
chunk
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
CN201980083100.6A
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 CN113228519A publication Critical patent/CN113228519A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/174Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a slice, e.g. a line of blocks or a group of blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • 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/167Position within a video image, e.g. region of interest [ROI]
    • 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/172Methods 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 picture, frame or field
    • 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/188Methods 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 video data packet, e.g. a network abstraction layer [NAL] unit
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/3068Precoding preceding compression, e.g. Burrows-Wheeler transformation
    • 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

Landscapes

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

Abstract

本发明公开了一种视频译码机制。所述机制包括将第一图像分割为多个分块。一组所述分块被分配到第一分块组中。所述第一分块组是沿水平方向和垂直方向围绕所述第一图像的矩形形状。所述第一分块组被编码到码流中。标志被编码到所述码流中的参数集中,以表示所述第一分块组为任意分块组。存储所述码流,用于发送到解码器。

Description

任意和环绕分块分组
相关申请案交叉申请
本专利申请要求FNU Hendry等人于2018年12月14日提交的申请号为62/780,053、发明名称为“任意和环绕分块分组(Arbitrary and Wrap-Around Tile Grouping)”的美国临时专利申请的权益,其全部内容通过引用的方式并入本文中。
技术领域
本发明大体上涉及视频译码,具体地,涉及环绕图像边界以增加视频译码中的压缩的分块组。
背景技术
即使在视频较短的情况下也需要对大量的视频数据进行描述,当数据要在带宽容量受限的通信网络中发送或以其它方式发送时,这样会造成困难。因此,视频数据通常要先压缩然后在现代电信网络中发送。由于内存资源有限,当在存储设备中存储视频时,视频的大小也会成为问题。视频压缩设备通常在信源侧使用软件和/或硬件,以在发送或存储之前对视频数据进行译码,从而减少用来表示数字视频图像所需的数据量。然后,压缩数据在目的侧由用于对视频数据进行解码的视频解压缩设备接收。在有限的网络资源以及对更高视频质量的需求不断增长的情况下,需要改进压缩和解压缩技术,这些改进的技术在几乎不影响图像质量的情况下能够提高压缩比。
发明内容
在一个实施例中,本发明包括一种在编码器中实现的方法,所述方法包括:所述编码器的处理器将第一图像分割为多个分块;所述处理器将一组所述分块分配到第一分块组,其中,所述第一分块组为沿水平方向和垂直方向环绕所述第一图像的矩形形状;所述处理器将所述第一分块组编码到码流中;所述处理器将标志编码到所述码流中的参数集中,以表示所述第一分块组为任意分块组;在所述编码器的存储器中存储所述码流,所述码流用于发送到解码器。一些系统使用分块组,所述分块组沿水平方向或垂直方向环绕图像,但不能两者兼而有之。这样的系统可以通过从分块组的最后分块的索引中减去分块组的第一分块的索引来确定分块组中的分块的数量。沿两个方向环绕图像的话,这样的系统可能无法正确地确定分块组中的分块的数量。本方面提供了一种机制来正确地确定分块组中的分块的正确数量,无论所述分块组如何环绕图像,包括沿两个方向环绕时。
可选地,根据上述任一方面,在所述方面的另一种实现方式中,所述标志为arbitrary_tile_group_present_flag。
可选地,根据上述任一方面,在所述方面的另一种实现方式中,所述标志被编码到与所述第一图像相关联的图像参数集(picture parameter set,PPS)中。
可选地,根据上述任一方面,在所述方面的另一种实现方式中,还包括所述处理器将第一分块索引和最后分块索引编码到分块组标头中,其中,所述第一分块索引表示所述第一分块组中的第一分块,所述最后分块索引表示所述第一分块组中的最后分块。
可选地,根据上述任一方面,在所述方面的另一种实现方式中,还包括通过以下步骤确定从第二图像分割的第二分块组中的分块的数量:将增量分块索引设置为所述第二分块组的最后分块索引与所述第二分块组的第一分块索引之间的差值;通过将所述增量分块索引除以所述第二图像中的分块列数量加一,确定所述第二分块组中的分块行的数量;将所述第二分块组中的分块列的数量确定为所述增量分块索引对所述第二图像中的所述分块列的数量求模加一。本方面描述了用于仅根据最后分块索引和第一分块索引确定分块组中的列的数量和行的数量的示例性机制。本方面解决了没有分块环绕发生的情况。
可选地,根据上述任一方面,在所述方面的另一种实现方式中,在确定所述第二分块组中的所述分块行的数量和所述第二分块组中的所述分块列的数量之前,当所述第二分块组的所述最后分块索引小于所述第二分块组的所述第一分块索引时(表示垂直环绕),并且当第一分块列索引大于最后分块列索引时(表示水平环绕),所述增量分块索引增加所述第二图像中的分块的数量和所述第二图像中的所述分块列的数量。本方面修改了上述方面,以便在同时存在水平环绕和垂直环绕时进行正确的计算。
可选地,根据上述任一方面,在所述方面的另一种实现方式中,在确定所述第二分块组中的所述分块行的数量和所述第二分块组中的所述分块列的数量之前,当所述第二分块组的所述最后分块索引小于所述第二分块组的所述第一分块索引时(表示垂直环绕),并且当第一分块列索引不大于最后分块列索引时(表示没有水平环绕),所述增量分块索引增加所述第二图像中的分块的数量。本方面修改了上述方面,以便在只有垂直环绕时进行正确的计算。
可选地,根据上述任一方面,在所述方面的另一种实现方式中,在确定所述第二分块组中的所述分块行的数量和所述第二分块组中的所述分块列的数量之前,当所述第二分块组的所述最后分块索引不小于所述第二分块组的所述第一分块索引时(表示没有垂直环绕),并且当第一分块列索引大于最后分块列索引时(表示水平环绕),所述增量分块索引增加所述第二图像中的所述分块列的数量。本方面修改了上述方面,以便在只有水平环绕时进行正确的计算。
在一个实施例中,本发明包括一种在解码器中实现的方法,所述方法包括:所述解码器的处理器通过接收器接收码流,所述码流包括参数集和第一分块组,所述第一分块组包括从第一图像分割的一组分块;所述处理器从所述参数集中获取标志,其中,所述标志表示所述第一分块组为任意分块组;所述处理器根据所述标志、第一分块索引和最后分块索引确定所述第一分块组中的分块的数量,其中,所述第一分块组为沿水平方向和垂直方向环绕所述第一图像的矩形形状;所述处理器对所述第一分块组进行解码,以生成重建视频序列,用于显示。一些系统使用分块组,所述分块组沿水平方向或垂直方向环绕图像,但不能两者兼而有之。这样的系统可以通过从分块组的最后分块的索引中减去分块组的第一分块的索引来确定分块组中的分块的数量。沿两个方向环绕图像的话,这样的系统可能无法正确地确定分块组中的分块的数量。本方面提供了一种机制来正确地确定分块组中的分块的正确数量,无论所述分块组如何环绕图像,包括沿两个方向环绕时。
可选地,根据上述任一方面,在所述方面的另一种实现方式中,所述标志为arbitrary_tile_group_present_flag。
可选地,根据上述任一方面,在所述方面的另一种实现方式中,所述标志从与所述第一图像相关联的PPS中获取。
可选地,根据上述任一方面,在所述方面的另一种实现方式中,还包括所述处理器从分块组标头获取所述第一分块索引和所述最后分块索引,其中,所述第一分块索引表示所述第一分块组中的第一分块,所述最后分块索引表示所述第一分块组中的最后分块。
可选地,根据上述任一方面,在所述方面的另一种实现方式中,还包括通过以下步骤确定从第二图像分割的第二分块组中的分块的数量:将增量分块索引设置为所述第二分块组的最后分块索引与所述第二分块组的第一分块索引之间的差值;通过将所述增量分块索引除以所述第二图像中的分块列数量加一,确定所述第二分块组中的分块行的数量;将所述第二分块组中的分块列的数量确定为所述增量分块索引对所述第二图像中的所述分块列的数量求模加一。本方面描述了用于仅根据最后分块索引和第一分块索引确定分块组中的列的数量和行的数量的示例性机制。本方面解决了没有分块环绕发生的情况。
可选地,根据上述任一方面,在所述方面的另一种实现方式中,在确定所述第二分块组中的所述分块行的数量和所述第二分块组中的所述分块列的数量之前,当所述第二分块组的所述最后分块索引小于所述第二分块组的所述第一分块索引时(表示垂直环绕),并且当第一分块列索引大于最后分块列索引时(表示水平环绕),所述增量分块索引增加所述第二图像中的分块的数量和所述第二图像中的所述分块列的数量。本方面修改了上述方面,以便在同时存在水平环绕和垂直环绕时进行正确的计算。
可选地,根据上述任一方面,在所述方面的另一种实现方式中,在确定所述第二分块组中的所述分块行的数量和所述第二分块组中的所述分块列的数量之前,当所述第二分块组的所述最后分块索引小于所述第一分块索引时(表示垂直环绕),并且当第一分块列索引不大于最后分块列索引时,表示没有水平环绕,所述增量分块索引增加所述第二图像中的分块的数量。本方面修改了上述方面,以便在只有垂直环绕时进行正确的计算。
可选地,根据上述任一方面,在所述方面的另一种实现方式中,在确定所述第二分块组中的所述分块行的数量和所述第二分块组中的所述分块列的数量之前,当所述第二分块组的所述最后分块索引不小于所述第一分块索引时(表示没有垂直环绕),并且当第一分块列索引大于最后分块列索引时(表示水平环绕),所述增量分块索引增加所述第二图像中的所述分块列的数量。本方面修改了上述方面,以便在只有水平环绕时进行正确的计算。
在一个实施例中,本发明包括一种视频译码设备,包括:处理器、耦合到所述处理器的接收器和耦合到所述处理器的发送器,所述处理器、所述接收器和所述发送器用于执行根据上述任一方面所述的方法。
在一个实施例中,本发明包括一种非瞬时性计算机可读介质,所述非瞬时性计算机可读介质包括供视频译码设备使用的计算机程序产品,所述计算机程序产品包括存储在所述非瞬时性计算机可读介质中的计算机可执行指令,当处理器执行所述计算机可执行指令时,使所述视频译码设备执行根据上述任一方面所述的方法。
在一个实施例中,本发明包括编码器,所述编码器包括:分割模块,用于将第一图像分割为多个分块;分配模块,用于将一组所述分块分配到第一分块组,其中,所述第一分块组为沿水平方向和垂直方向环绕所述第一图像的矩形形状;编码模块,用于:将所述第一分块组编码到码流中;将标志编码到所述码流中的参数集中,以表示所述第一分块组为任意分块组;存储模块,用于存储所述码流,用于发送到解码器。
可选地,根据上述任一方面,在所述方面的另一种实现方式中,所述编码器还用于执行根据上述任一方面所述的方法。
在一个实施例中,本发明包括一种解码器,所述解码器包括:接收模块,用于接收码流,所述码流包括第一分块组,所述第一分块组包括从第一图像分割的一组分块;获取模块,用于从所述码流中的参数集中获取标志,其中,所述标志表示所述第一分块组为任意分块组;确定模块,用于根据所述标志、第一分块索引和最后分块索引确定所述第一分块组中的分块的数量,其中,所述第一分块组为沿水平方向和垂直方向环绕所述第一图像的矩形形状;解码模块,用于对所述第一分块组进行解码,以生成重建视频序列,用于显示。
可选地,根据上述任一方面,在所述方面的另一种实现方式中,所述解码器还用于执行根据上述任一方面所述的方法。
为了清楚起见,上述任一实施例可以与上述其它实施例中任何一个或多个组合以创建本发明范围内的新实施例。
从结合附图和权利要求书的以下详细描述中,将更清楚地理解这些和其它特征。
附图说明
为了更完整地理解本发明,结合附图和具体实施方式,参考以下简要描述,其中,相同的附图标记表示相同的部件。
图1为对视频信号进行译码的示例性方法的流程图。
图2为用于视频译码的示例性编解码(codec)系统的示意图。
图3为示例性视频编码器的示意图。
图4为示例性视频解码器的示意图。
图5为包括编码视频序列的示例性码流的示意图。
图6A-6D示出了分割为示例性分块组的示例性图像。
图7为示例性视频译码设备的示意图。
图8为将具有任意分块组的图像编码到码流中的示例性方法的流程图。
图9为从码流解码具有任意分块组的图像的示例性方法的流程图。
图10为根据第一分块索引和最后分块索引从任意分块组确定分块组配置的示例性方法的流程图。
图11为用于对码流中的图像的视频序列进行译码的示例性系统的示意图。
具体实施方式
首先应理解,尽管下文提供了一个或多个实施例的说明性实现方式,但所公开的系统和/或方法可以使用任何数量的技术来实现,无论该技术是当前已知的技术还是现有的技术。本发明不应限于下文所说明的说明性实现方式、附图和技术,包括本文所说明和描述的示例性设计和实现方式,而是可在所附权利要求书的范围以及其等效部分的完整范围内修改。
本文使用各种缩略语,例如:编码树块(coding tree block,CTB),编码树单元(coding tree unit,CTU)、编码单元(coding unit,CU)、编码视频序列(coded videosequence,CVS)、联合视频专家组(Joint Video Experts Team,JVET)、运动约束分块集(motion constrained tile set,MCTS)、最大传输单元(maximum transfer unit,MTU)、网络抽象层(network abstraction layer,NAL)、图像顺序编号(picture order count,POC)、原始字节序列载荷(raw byte sequence payload,RBSP)、序列参数集(sequenceparameter set,SPS)、通用视频编码(versatile video coding,VVC)、工作草案(workingdraft,WD)。
许多视频压缩技术可以用来减小视频文件的大小,同时尽量减少数据丢失。例如,视频压缩技术可以包括执行空间(例如,帧内)预测和/或时间(例如,帧间)预测以减少或去除视频序列中的数据冗余。对于基于块的视频译码,可以将视频条带(slice)(例如,视频图像或视频图像的一部分)分割为视频块,视频块也可以称为树块、编码树块(coding treeblock,CTB)、编码树单元(coding tree unit,CTU)、编码单元(coding unit,CU)和/或编码节点。图像的帧内译码(I)条带中的视频块参照同一图像中的邻块中的参考样本使用空间预测进行译码。图像的帧间译码单向预测(P)或双向预测(B)条带中的视频块可以参照同一图像中的邻块中的参考样本使用空间预测进行译码,或者参照其它参考图像中的参考样本使用时间预测进行译码。图像(picture/image)可以称为帧(frame),参考图像可以称为参考帧。空间或时间预测产生表示图像块的预测块。残差数据表示原始图像块与预测块之间的像素差。因此,根据指向构成预测块的参考样本块的运动矢量,和表示译码块与预测块之间差值的残差数据,对帧间译码块进行编码。根据帧内译码模式和残差数据对帧内译码块进行编码。为了进一步压缩,残差数据可以从像素域变换到变换域,从而产生残差变换系数,该残差变换系数可以量化。量化变换系数最初以二维阵列排列。量化变换系数可以扫描,以产生变换系数的一维矢量。熵编码可以用于实现更大的压缩。下面详细描述这种视频压缩技术。
为了保证能够准确地对编码视频进行解码,根据对应的视频编码标准对视频进行编码和解码。视频编码标准包括国际电信联盟(international telecommunicationunion,ITU)标准化部门(international telecommunication union standardizationsector,ITU-T)H.261、国际标准化组织(international organization forstandardization,ISO)/国际电工委员会(international electrotechnicalcommission,IEC)运动图像专家组(motion picture experts group,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),以及三维(three dimensional,3D)AVC(3D-AVC)等扩展。HEVC包括可分级HEVC(scalable HEVC,SHVC)、多视点HEVC(multiview HEVC,MV-HEVC)和3D HEVC(3D-HEVC)等扩展。ITU-T和ISO/IEC的联合视频专家组(joint video experts team,JVET)已开始开发一种称为通用视频编码(versatile video coding,VVC)的视频编码标准。VVC包括在工作草案(working draft,WD)中,该WD包括JVET-L1001-v9。
为了对视频图像进行编码,首先对图像进行分割,并将得到的各部分编码到码流中。存在各种图像分割方案。例如,图像可以被分割为常规条带、非独立条带、分块(tile),和/或根据波前并行处理(wavefront parallel processing,WPP)对图像进行分割。为了简单起见,HEVC限制了编码器,使得在将条带分割为用于视频译码的CTB组时,只能使用常规条带、非独立条带、分块、WPP及其组合。这种分割可以用于支持最大传输单元(maximumtransfer unit,MTU)大小匹配、并行处理和减少端到端时延。MTU表示单个报文中能够发送的最大数据量。如果报文有效载荷超过MTU,则通过称为分割的过程将该载荷分划为两个报文。
常规条带,也简称为条带,是图像的分割部分,可以独立于同一图像中的其它常规条带重建,尽管由于环路滤波操作而存在一些相互依赖性。每个常规条带封装在自己的网络抽象层(network abstraction layer,NAL)单元中用于进行发送。此外,可以禁用跨条带边界的帧内预测(帧内样本预测、运动信息预测、译码模式预测)和熵编码依赖,以支持独立重建。这种独立重建支持并行化操作。例如,基于常规条带的并行化减少了处理器间或核间通信。但是,由于每个常规条带是独立的,因此每个条带都与单独的条带头相关联。由于每个条带的条带头的位成本,以及由于缺乏跨条带边界的预测,所以使用常规条带会造成大的译码开销。此外,常规条带可以用于支持MTU大小匹配要求。具体地,由于常规条带封装在单独的NAL单元中,并且可以独立译码,所以在MTU方案中每个常规条带应小于MTU,以避免将条带分成多个报文。因此,并行化的目标和MTU大小匹配的目标可能会对图像中的条带布局提出矛盾的要求。
非独立条带与常规条带类似,但非独立条带具有缩短的条带头,并且允许在不影响帧内预测的情况下对图像树块边界进行分割。因此,非独立条带将常规条带分割为多个NAL单元,这通过在整个常规条带的编码完成之前发送常规条带的一部分,降低端到端时延。
分块是图像中通过水平边界和垂直边界划分的分割部分,这些边界形成了分块的列和行。分块可以按光栅扫描顺序(从右到左,从上到下)进行译码。CTB的扫描顺序在分块内部进行。因此,按光栅扫描顺序对第一分块中的CTB进行译码,然后进行到下一个分块中的CTB。与常规条带类似,分块消除了帧内预测依赖以及熵解码依赖。但是,各个NAL单元中可以不包括分块,因此,分块可以不用于MTU大小匹配。每个分块可以由一个处理器/核处理,用于解码相邻分块的处理单元之间的帧内预测的处理器间/核间通信可以局限于(当相邻分块在同一条带中时)发送共享的条带头,和共享与环路滤波相关的重建样本和元数据。当条带中包括多个分块时,除条带中的第一入口点偏移之外,还可以在条带头中指示(signal)每个分块的入口点字节偏移。对于每个条带和分块,应满足以下条件中的至少一个:(1)条带中的所有编码树块属于同一个分块;(2)分块中的所有编码树块属于同一个条带。
在WPP中,将图像分割为单行CTB。熵解码和预测机制可以使用来自其它行中的CTB的数据。通过对CTB行进行并行解码,支持并行处理。例如,当前行可以与上一行并行解码。但是,对当前行的解码会比前几行的解码过程延迟了两个CTB。这种时延确保了在对当前CTB进行译码之前,与当前行中当前CTB上方和右侧的CTB相关的数据可用。当用图形表示时,这种方法表现为波前。这种交错式开始可以使用与图像内包括的CTB行一样多的处理器/核来实现并行化。由于可以在图像内相邻树块行之间进行帧内预测,因此使用处理器间/核间通信来实现帧内预测非常重要。WPP分割不考虑NAL单元大小。因此,WPP不支持MTU大小匹配。但是,常规条带可以与WPP结合使用(这需要一定的译码开销),以根据需要实现MTU大小匹配。
分块也可以包括运动约束分块集。运动约束分块集(motion constrained tileset,MCTS)是一种分块集,其使得相关联的运动矢量被限制为指向MCTS内的整数样本位置和分数样本位置,分数样本位置仅需要MCTS内的整数样本位置进行插值。此外,不允许将运动矢量候选用于从MCTS外部的块推导的时间运动矢量预测。这样,在MCTS中不包括分块的情况下,每个MCTS可以独立解码。时间MCTS补充增强信息(supplemental enhancementinformation,SEI)消息可以用于表示码流中存在MCTS并指示MCTS。MCTS SEI消息提供可用于MCTS子码流提取(作为SEI消息语义的一部分表示)的补充信息,以生成符合MCTS的码流。该信息包括多个提取信息集,每个提取信息集定义多个MCTS,并且包括在MCTS子码流提取过程所使用的替换视频参数集(video parameter set,VPS)、序列参数集(sequenceparameter set,SPS)和图像参数集(picture parameter set,PPS)的原始字节序列载荷(raw bytes sequence payload,RBSP)字节。当根据MCTS子码流提取过程提取子码流时,可以重写或替换参数集(VPS、SPS、PPS),并且可以更新条带头,因为一个或所有条带地址相关的语法元素(包括first_slice_segment_in_pic_flag和slice_segment_address)可以在所提取的子码流中使用不同的值。
当分割图像以进一步编码时,可以使用各种分块方案。作为一个特定的示例,可以将分块分配给分块组,在一些示例中,分块组可以替代条带。在一些示例中,每个分块组可以独立于其它分块组提取。因此,分块分组可以通过将每个分块组分配给不同的处理器来支持并行化。在不希望解码器解码整个图像的情况下,也可以使用分块分组。作为一个特定的示例,视频译码方案可以用于支持虚拟现实(virtual reality,VR)视频。
在VR视频中,一个或多个摄像机可以记录摄像机周围的环境。然后,用户可以像在摄像机所在的位置一样观看VR视频。在VR视频中,图像包括了用户周围的整个环境。然后,用户观看图像的子部分。例如,用户可以使用头戴式显示器,该显示器根据用户的头部移动来改变显示的图像的子部分。显示的视频的部分可以称为视角。
分块分组可以用于支持VR视频的更高效的视频译码。例如,VR视频可以分割为分块组,并以多种分辨率编码。解码器可以在流式传输期间对用户当前使用的视角进行表示。然后,提供VR视频数据的视频服务器可以以高分辨率转发与视角相关联的分块组,并且以低分辨率转发非观看分块组。这样,不用以高分辨率发送整个图像,用户就可以观看到高分辨率VR视频。丢弃非观看子部分,因此用户感觉不到低分辨率。但是,如果用户更改视角,则可以向用户显示低分辨率分块组。然后,随着视频的播放,可以提高新视角的分辨率。
分块组可以将图像分割为矩形。包括在分块组中的分块可以通过表示分块组的第一分块和最后分块进行指示。在这种情况下,第一分块的分块索引可以小于最后分块的分块索引。解码器可以通过比较这些值计算分块组的配置。这种方法高效地指示分块组信息。但是,在一些情况下,编码器可能会确定在图像边界上环绕分块组。当分块组的顶行朝向图像的底部,而分块组的底行朝向图像的顶部时,分块组沿垂直方向环绕图像。当分块组的左列朝向图像的右侧,而分块组的右列朝向图像的左侧时,分块组沿水平方向环绕图像。从形式上来说,当左图像边界和右图像边界平分一个分块组时,会发生水平环绕,当上图像边界和下图像边界平分一个分块组时,会发生垂直环绕。这种分块环绕特别可能发生在VR视频中。这是因为VR图像可以包括整个球形环境,扁平化为矩形图像进行编码。因此,VR图像中的图像边界可能有一定程度的任意性,并且在一些情况下,跨越这些任意图像边界的分块组环绕可能会导致压缩增加。这样的环绕分块组可以具有分块索引大于最后分块的分块索引的第一分块,这会导致解码器错误计算分块组的配置。
本文公开了各种机制,用于当这些分块组沿水平方向、垂直方向和/或两者跨图像边界环绕时,支持准确地指示分块组。编码器可以将arbitrary_tile_group_present_flag编码到图像参数集(picture parameter set,PPS)等参数集中,以表示图像中存在这样的分块分组。编码器还可以编码分块组的第一分块索引和最后分块索引,例如编码在分块组标头中。解码器可以确定增量分块索引,该增量分块索引是最后分块索引和第一分块索引之间的差值。解码器可以确定分块组环绕(如果有)的性质,并相应地调整增量分块索引。如果分块组的最后分块索引小于分块组的第一分块索引,则分块组包括垂直环绕。如果第一分块列索引大于最后分块列索引,则分块组包括水平环绕。如果分块组同时包括垂直环绕和水平环绕,则增量分块索引增加图像中的分块的数量和图像中的分块列的数量。如果分块组包括垂直环绕,没有水平环绕,则增量分块索引增加图像中的分块的数量。如果分块组包括水平环绕,没有垂直环绕,则增量分块索引增加图像中的分块列的数量。然后,解码器可以使用增量分块索引来确定分块组中的分块行的数量和分块列的数量。例如,分块组中的分块行的数量可以确定为增量分块索引除以图像中的分块列的数量加一。此外,分块组中的分块列的数量可以确定为增量分块索引对图像中分块列的数量求模加一。
图1为对视频信号进行译码的示例性操作方法100的流程图。具体地,在编码器侧对视频信号进行编码。编码过程通过使用各种机制对视频信号进行压缩,以减小视频文件大小。较小的文件大小有利于在减少相关的带宽开销的同时,将压缩的视频文件发送给用户。然后,解码器对压缩的视频文件进行解码,以重建原始视频信号,用于向终端用户显示。解码过程通常与编码过程对应,便于解码器一致地重建视频信号。
在步骤101中,将视频信号输入编码器。例如,视频信号可以是存储在存储器中的未压缩的视频文件。在另一示例中,视频文件可以由视频捕获设备(例如视频摄像机)捕获,并进行编码以支持视频的直播。视频文件可以包括音频分量和视频分量。视频分量包括一系列图像帧,当按顺序观看时,这些图像帧会产生运动的视觉效果。这些帧包括根据光(本文称为亮度分量(或亮度样本))和颜色(称为色度分量(或色度样本))表示的像素。在一些示例中,这些帧还可以包括深度值以支持三维观看。
在步骤103中,将视频分割为块。分割包括将每个帧中的像素细分为方块和/或矩形块,用于进行压缩。例如,在高效视频编码(high efficiency video coding,HEVC)(也称为H.265和MPEG-H第2部分)中,可以首先将帧划分为编码树单元(coding tree unit,CTU),这些编码树单元是预定义大小(例如,64×64像素)的块。CTU包括亮度样本和色度样本。编码树可以用于将CTU划分为块,然后递归地细分这些块,直到获得支持进一步编码的配置。例如,帧的亮度分量可以细分,直到各个块包括相对均匀的亮度值。此外,帧的色度分量可以细分,直到各个块包括相对均匀的颜色值。因此,分割机制根据视频帧的内容而不同。
在步骤105中,使用各种压缩机制来压缩在步骤103中分割的图像块。例如,可以使用帧间预测和/或帧内预测。帧间预测旨在利用公共场景中的对象往往出现在连续帧中这一事实。因此,无需在相邻帧中对参考帧中描绘对象的块进行重复描述。具体地,一个对象(如一张桌子)可以在多个帧中保持在恒定的位置。因此,只描述一次桌子,相邻帧可以重新参考参考帧。模式匹配机制可以用于匹配多个帧中的对象。此外,由于对象移动或摄像机移动等,移动对象可以通过多个帧表示。作为一个特定的示例,视频可以通过多个帧显示在屏幕上移动的汽车。运动矢量可以用于描述这种移动。运动矢量是一个二维矢量,提供从帧中对象的坐标到参考帧中该对象的坐标的偏移。因此,帧间预测可以将当前帧中的图像块编码为运动矢量集,表示相对于参考帧中对应块的偏移。
帧内预测对公共帧中的块进行编码。帧内预测利用亮度分量和色度分量往往在帧中聚集这一事实。例如,一棵树的一部分中的一片绿色往往与几片类似的绿色相邻。帧内预测使用多种方向预测模式(例如,HEVC中有33种模式)、平面模式和直流(direct current,DC)模式。方向模式表示当前块与对应方向的邻块的样本相似/相同。平面模式表示可以根据行边缘处的邻块对行/列(例如平面)上的一系列块进行插值。实际上,平面模式通过使用变化值的相对恒定的斜率来表示光/颜色在行/列上的平滑转变。DC模式用于边界平滑,表示块和与所有邻块的样本相关联的平均值相似/相同,所述邻块与方向预测模式的角方向相关联。因此,帧内预测块可以将图像块表示为各种关系预测模式值而非实际值。此外,帧间预测块可以将图像块表示为运动矢量值而非实际值。在任一种情况下,预测块在一些情况下可能无法精确地表示图像块。所有差值都存储在残差块中。可以对残差块进行变换以进一步压缩文件。
在步骤107中,可以应用各种滤波技术。在HEVC中,根据环内滤波方案应用滤波器。上文描述的基于块的预测可能使得在解码器侧创建块状图像。此外,基于块的预测方案可以对块进行编码,然后重建编码块,以供以后用作参考块。环内滤波方案迭代地将噪声抑制滤波器、去块效应滤波器、自适应环路滤波器和样本自适应偏移(sample adaptiveoffset,SAO)滤波器用于块/帧。这些滤波器减少了此类块伪影,从而可以准确地重建编码文件。此外,这些滤波器减少了重建参考块中的伪影,使得伪影不太可能在根据重建参考块编码的后续块中产生其它伪影。
在步骤109中,一旦对视频信号进行了分割、压缩和滤波,则将所得数据编码到码流中。所述码流包括上述数据以及支持在解码器侧进行适当的视频信号重建所需要的任何指示数据。例如,此类数据可以包括分割数据、预测数据、残差块和向解码器提供译码指令的各种标志。码流可以存储在存储器中,以便在请求时向解码器发送。还可以向多个解码器广播和/或组播所述码流。创建码流是一个迭代过程。因此,步骤101、103、105、107和109可以在多个帧和块中连续和/或同时执行。图1所示的顺序是为了清楚和便于描述而呈现的,并非旨在将视频译码过程限制于特定顺序。
在步骤111中,解码器接收码流并开始解码过程。具体地,解码器使用熵解码方案将码流转换为对应的语法数据和视频数据。在步骤111中,解码器使用码流中的语法数据来确定帧的分割。分割应与步骤103中的块分割结果匹配。这里描述了步骤111中使用的熵编码/熵解码。编码器在压缩过程中进行许多选择,例如根据一个或多个输入图像中值的空间定位从多个可能选择中选择块分割方案。指示确切的选择可能会使用大量的位元。本文所使用的位元是被视为变量的二进制值(例如,可以根据上下文变化的比特值)。熵编码允许编码器丢弃任何明显不适合特定情况的选项,留下一组可使用选项。然后,为每个可使用选项分配码字。码字的长度取决于可使用选项的数量(例如,一个位元对应两个选项,两个位元对应三个或四个选项等)。然后,编码器对所选选项的码字进行编码。该方案减小了码字的大小,因为码字的大小与唯一指示从可使用选项的小子集中进行选择所需要的码字一样大,而不是与唯一指示从所有可能选项的潜在大集中进行选择所需要的码字一样大。然后,解码器通过以与编码器类似的方式确定可使用选项集来对该选择进行解码。通过确定可使用选项集,解码器可以读取码字并确定编码器做出的选择。
在步骤113中,解码器执行块解码。具体地,解码器进行逆变换来生成残差块。然后,解码器使用残差块和对应的预测块,根据分割重建图像块。预测块可以包括在步骤105中编码器侧生成的帧内预测块和帧间预测块。然后,根据在步骤111中确定的分割数据将重建图像块定位到重建视频信号的帧中。步骤113的语法还可以通过上文描述的熵编码在码流中指示。
在步骤115中,以类似于步骤107的方式在编码器侧对重建视频信号的帧进行滤波。例如,可以对帧应用噪声抑制滤波器、去块效应滤波器、自适应环路滤波器和SAO滤波器以去除块伪影。一旦对帧进行滤波,在步骤117中,可以将视频信号输出到显示器以供终端用户观看。
图2为用于视频译码的示例性编码和解码(codec)系统200的示意图。具体地,编解码系统200能够实现操作方法100。编解码系统200广义地描述编码器和解码器中使用的组件。如操作方法100中的步骤101和103所描述,编解码系统200接收视频信号并对视频信号进行分割,从而产生分割视频信号201。如方法100中的步骤105、107和109所描述,然后,当作为编码器时,编解码系统200将分割视频信号201压缩到编码码流中。如操作方法100中的步骤111、113、115和117所描述,当作为解码器时,编解码系统200从码流中生成输出视频信号。编解码系统200包括总体译码器控制组件211、变换缩放和量化组件213、帧内估计组件215、帧内预测组件217、运动补偿组件219、运动估计组件221、缩放和逆变换组件229、滤波器控制分析组件227、环内滤波器组件225、解码图像缓冲区组件223、标头格式化和上下文自适应二进制算术译码(context adaptive binary arithmetic coding,CABAC)组件231。这些组件如图所示耦合。在图2中,黑线表示待编码/解码数据的移动,而虚线表示控制其它组件操作的控制数据的移动。编解码系统200的组件在编码器中都可以存在。解码器可以包括编解码系统200的组件的子集。例如,解码器可以包括帧内预测组件217、运动补偿组件219、缩放和逆变换组件229、环内滤波器组件225和解码图像缓冲区组件223。这里对这些组件进行描述。
分割视频信号201是已通过编码树分割为像素块的捕获的视频序列。编码树使用各种划分模式将像素块细分为更小的像素块。然后这些块还可以细分为更小的块。这些块可以称为编码树上的节点。较大的父节点被划分为较小的子节点。节点被细分的次数称为节点/编码树的深度。在一些情况下,编码单元(coding unit,CU)中可以包括划分的块。例如,CU可以是CTU的子部分,CTU包括亮度块、红差色度(Cr)块和蓝差色度(Cb)块以及CU的对应语法指令。划分模式可以包括二叉树(binary tree,BT)、三叉树(triple tree,TT)和四叉树(quad tree,QT),用于根据所使用的划分模式,分别将节点分割为不同形状的两个、三个或四个子节点。分割视频信号201被转发到总体译码器控制组件211、变换缩放和量化组件213、帧内估计组件215、滤波器控制分析组件227和运动估计组件221,用于进行压缩。
总体译码器控制组件211用于根据应用约束,做出与将视频序列的图像编码到码流中相关的决策。例如,总体译码器控制组件211管理码率/码流大小相对于重建质量的优化。此类决策可以根据存储空间/带宽可用性和图像分辨率请求做出。总体译码器控制组件211还根据传输速度管理缓冲区利用率,以缓解缓冲区欠载和超载问题。为了解决这些问题,总体译码器控制组件211管理由其它组件进行的分割、预测和滤波。例如,总体译码器控制组件211可以动态地提高压缩复杂度以提高分辨率和提高带宽利用率,或者降低压缩复杂度以降低分辨率和带宽利用率。因此,总体译码器控制组件211控制编解码系统200的其它组件,以平衡视频信号重建质量与码率问题。总体译码器控制组件211创建控制数据,这些控制数据控制其它组件的操作。控制数据还被转发到标头格式化和CABAC组件231,以编码到码流中,从而指示用于在解码器中进行解码的参数。
分割视频信号201还被发送至运动估计组件221和运动补偿组件219,用于进行帧间预测。分割视频信号201的帧或条带可以划分为多个视频块。运动估计组件221和运动补偿组件219相对于一个或多个参考帧中的一个或多个块对接收到的视频块进行帧间预测译码以提供时间预测。编解码系统200可以执行多个译码过程,以为每个视频数据块选择适当的译码模式等。
运动估计组件221和运动补偿组件219可以高度集成,但出于概念目的分开示出。运动估计组件221执行的运动估计是生成运动矢量的过程,其中,这些运动矢量用于估计视频块的运动。例如,运动矢量可以表示译码对象相对于预测块的位移。预测块是被发现在像素差异方面与待译码块高度匹配的块。预测块也可以称为参考块。此类像素差异可以通过绝对差异和(sum of absolute difference,SAD)、平方差异和(sum of squaredifference,SSD)或其它差异度量来确定。HEVC使用几种译码对象,包括CTU、编码树块(coding tree block,CTB)和CU。例如,CTU可以划分为多个CTB,然后CTB可以划分为多个CB,多个CB用于包括在CU中。CU可以编码为包括预测数据的预测单元(prediction unit,PU)和/或包括CU的变换残差数据的变换单元(transform unit,TU)。运动估计组件221使用率失真分析作为率失真优化过程的一部分来生成运动矢量、PU和TU。例如,运动估计组件221可以确定当前块/帧的多个参考块、多个运动矢量等,并且可以选择具有最佳率失真特性的参考块、运动矢量等。最佳率失真特性平衡视频重建的质量(例如,压缩造成的数据丢失量)和译码效率(例如,最终编码的大小)。
在一些示例中,编解码系统200可以计算存储在解码图像缓冲区组件223中的参考图像的子整数像素位置的值。例如,视频编解码系统200可以对参考图像的四分之一像素位置、八分之一像素位置或其它分数像素位置的值进行插值。因此,运动估计组件221可以执行相对于全像素位置和分数像素位置的运动搜索,并输出具有分数像素精度的运动矢量。运动估计组件221通过将PU的位置与参考图像的预测块的位置进行比较来计算帧间译码条带中视频块的PU的运动矢量。运动估计组件221将计算的运动矢量作为运动数据输出到标头格式化和CABAC组件231以进行编码,并将运动输出到运动补偿组件219。
运动补偿组件219执行的运动补偿可以涉及根据运动估计组件221所确定的运动矢量获取或生成预测块。另外,在一些示例中,运动估计组件221和运动补偿组件219可以在功能上集成。在接收到当前视频块的PU的运动矢量之后,运动补偿组件219可以定位运动矢量指向的预测块。然后,通过从所译码的当前视频块的像素值中减去预测块的像素值,形成像素差值,从而形成残差视频块。通常,运动估计组件221相对于亮度分量执行运动估计,运动补偿组件219将根据亮度分量计算的运动矢量用于色度分量和亮度分量。将预测块和残差块转发到变换缩放和量化组件213。
分割视频信号201也被发送到帧内估计组件215和帧内预测组件217。如同运动估计组件221和运动补偿组件219,帧内估计组件215和帧内预测组件217可以高度集成,但出于概念目的分开示出。帧内估计组件215和帧内预测组件217相对于当前帧中的块对当前块进行帧内预测,以替代如上所述的由运动估计组件221和运动补偿组件219在各帧之间执行的帧间预测。具体地,帧内估计组件215确定帧内预测模式,用于对当前块进行编码。在一些示例中,帧内估计组件215从多个测试的帧内预测模式中选择适当的帧内预测模式来对当前块进行编码。然后,将所选择的帧内预测模式转发到标头格式化和CABAC组件231用于进行编码。
例如,帧内估计组件215使用对各种测试的帧内预测模式的率失真分析来计算率失真值,并在测试的模式中选择具有最佳率失真特性的帧内预测模式。率失真分析通常确定编码块与经编码以产生编码块的原始未编码块之间的失真(或误差)量,以及用于产生编码块的码率(例如,位数)。帧内估计组件215根据各种编码块的失真和速率计算比率,以确定哪种帧内预测模式表现出块的最佳率失真值。此外,帧内估计组件215可以用于根据率失真优化(rate-distortion optimization,RDO),使用深度建模模式(depth modelingmode,DMM)对深度图的深度块进行译码。
当在编码器上实现时,帧内预测组件217可以根据由帧内估计组件215确定的所选帧内预测模式从预测块生成残差块,或者当在解码器上实现时,从码流读取残差块。残差块包括预测块与原始块之间的值差,表示为矩阵。然后,残差块被转发到变换缩放和量化组件213。帧内估计组件215和帧内预测组件217可以对亮度分量和色度分量进行操作。
变换缩放和量化组件213用于进一步压缩残差块。变换缩放和量化组件213对残差块应用变换,如离散余弦变换(discrete cosine transform,DCT)、离散正弦变换(discrete sine transform,DST)或概念上类似的变换,从而产生包括残差变换系数值的视频块。还可以使用小波变换、整数变换、子带变换或其它类型的变换。变换可以将残差信息从像素值域转换到变换域,如频域。变换缩放和量化组件213还用于根据频率等对变换的残差信息进行缩放。这种缩放涉及对残差信息应用缩放因子,以便在不同粒度下量化不同的频率信息,这可能会影响重建视频的最终视觉质量。变换缩放和量化组件213还用于对变换系数进行量化以进一步降低码率。量化过程可以降低与一些或全部系数相关的位深度。量化程度可以通过调整量化参数来修改。在一些示例中,变换缩放和量化组件213随后可以对包括量化变换系数的矩阵进行扫描。量化变换系数被转发到标头格式化和CABAC组件231,以编码到码流中。
缩放和逆变换组件229应用变换缩放和量化组件213的逆操作以支持运动估计。缩放和逆变换组件229应用逆缩放、逆变换和/或反量化以重建像素域中的残差块,例如,以供以后用作参考块,参考块可成为另一当前块的预测块。运动估计组件221和/或运动补偿组件219可以通过将残差块添加回对应的预测块来计算参考块,以用于后续块/帧的运动估计。滤波器用于重建参考块,以减少在缩放、量化和变换期间产生的伪影。当对后续块进行预测时,此类伪影可能导致预测不准确(并产生其它伪影)。
滤波器控制分析组件227和环内滤波器组件225将滤波器用于残差块和/或重建图像块。例如,缩放和逆变换组件229的变换残差块可以与帧内预测组件217和/或运动补偿组件219的对应的预测块合并以重建原始图像块。然后,滤波器可以用于重建图像块。在一些示例中,滤波器可以转而用于残差块。如同图2中的其它组件,滤波器控制分析组件227和环内滤波器组件225高度集成,可以一起实现,但出于概念目的分开示出。用于重建参考块的滤波器用于特定空间区域,包括多个参数以调整应用此类滤波器的方式。滤波器控制分析组件227对重建参考块进行分析,以确定应应用此类滤波器的位置并设置对应的参数。此类数据作为滤波器控制数据被转发到标头格式化和CABAC组件231用于进行编码。环内滤波器组件225根据滤波器控制数据应用此类滤波器。滤波器可以包括去块效应滤波器、噪声抑制滤波器、SAO滤波器和自适应环路滤波器。此类滤波器可以根据示例用于空域/像素域(例如,针对重建像素块)或频域中。
当作为编码器时,将滤波重建图像块、残差块和/或预测块存储在解码图像缓冲区组件223中,以供以后用于运动估计,如上所述。当作为解码器时,解码图像缓冲区组件223存储经重建和滤波的块并将其作为输出视频信号的一部分向显示器转发。解码图像缓冲区组件223可以是能够存储预测块、残差块和/或重建图像块的任何存储设备。
标头格式化和CABAC组件231从编解码系统200的各组件接收数据并将此类数据编码到编码码流中用于向解码器发送。具体地,标头格式化和CABAC组件231生成各种标头以对控制数据(如总体控制数据和滤波器控制数据)进行编码。此外,预测数据(包括帧内预测)和运动数据,以及量化变换系数数据形式的残差数据均编码在码流中。最终码流包括解码器重建原始的分割视频信号201所需要的所有信息。此类信息还可以包括帧内预测模式索引表(也称为码字映射表)、各种块的编码上下文的定义、最可能的帧内预测模式的表示、分割信息的表示等。此类数据可以使用熵编码进行编码。例如,可以使用上下文自适应可变长度编码(context adaptive variable length coding,CAVLC)、CABAC、基于语法的上下文自适应二进制算术编码(syntax-based context-adaptive binary arithmeticcoding,SBAC)、概率区间分割熵(probability interval partitioning entropy,PIPE)编码或其它熵编码技术对信息进行编码。在熵编码之后,可以将编码码流发送到另一设备(例如,视频解码器)或存档以供后续发送或检索。
图3为示例性视频编码器300的框图。视频编码器300可以用于实现编解码系统200的编码功能和/或实现操作方法100的步骤101、103、105、107和/或109。编码器300对输入视频信号进行分割,从而产生分割视频信号301,其中,分割视频信号301实质上类似于分割视频信号201。然后,通过编码器300的组件压缩分割视频信号301并将其编码到码流中。
具体地,分割视频信号301被转发到帧内预测组件317用于进行帧内预测。帧内预测组件317实质上可以类似于帧内估计组件215和帧内预测组件217。分割视频信号301还被转发到运动补偿组件321,用于根据解码图像缓冲区组件323中的参考块进行帧间预测。运动补偿组件321实质上可以类似于运动估计组件221和运动补偿组件219。帧内预测组件317和运动补偿组件321的预测块和残差块被转发到变换和量化组件313以用于对残差块进行变换和量化。变换和量化组件313实质上可以类似于变换缩放和量化组件213。变换和量化残差块和对应的预测块(连同相关控制数据)被转发到熵编码组件331用于编码到码流中。熵编码组件331可以实质上类似于标头格式化和CABAC组件231。
变换和量化残差块和/或对应的预测块也从变换和量化组件313转发到逆变换和量化组件329以重建成参考块供运动补偿组件321使用。逆变换和量化组件329实质上可以类似于缩放和逆变换组件229。根据示例,环内滤波器组件325中的环内滤波器还用于残差块和/或重建参考块。环内滤波器组件325实质上可以类似于滤波器控制分析组件227和环内滤波器组件225。如关于环内滤波器组件225所描述,环内滤波器组件325可以包括多个滤波器。然后,滤波块存储在解码图像缓冲区组件323中,以供运动补偿组件321用作参考块。解码图像缓冲区组件323实质上可以类似于解码图像缓冲区组件223。
图4为示例性视频解码器400的框图。视频解码器400可以用于实现编解码系统200的解码功能和/或实现操作方法100的步骤111、113、115和/或117。例如,解码器400从编码器300接收码流,并根据该码流生成重建输出视频信号,用于向终端用户显示。
该码流由熵解码组件433接收。熵解码组件433用于实现熵解码方案,如CAVLC、CABAC、SBAC、PIPE译码或其它熵译码技术。例如,熵解码组件433可以使用标头信息来提供上下文以解释在码流中编码为码字的其它数据。解码信息包括对视频信号进行解码所需的任何信息,如总体控制数据、滤波器控制数据、分割信息、运动数据、预测数据和残差块中的量化变换系数。量化变换系数被转发到逆变换和量化组件429以重建成残差块。逆变换和量化组件429可以类似于逆变换和量化组件329。
重建残差块和/或预测块被转发到帧内预测组件417,以根据帧内预测操作重建成图像块。帧内预测组件417可以类似于帧内估计组件215和帧内预测组件217。具体地,帧内预测组件417使用预测模式来定位帧中的参考块,并将残差块用于结果以重建帧内预测图像块。重建帧内预测图像块和/或残差块以及对应的帧间预测数据通过环内滤波器组件425转发到解码图像缓冲区组件423。解码图像缓冲区组件423和环内滤波器组件425实质上可以分别类似于解码图像缓冲区组件223和环内滤波器组件225。环内滤波器组件425对重建图像块、残差块和/或预测块进行滤波,并且此类信息存储在解码图像缓冲区组件423中。解码图像缓冲区组件423的重建图像块被转发到运动补偿组件421进行帧间预测。运动补偿组件421实质上可以类似于运动估计组件221和/或运动补偿组件219。具体地,运动补偿组件421使用参考块的运动矢量来生成预测块,并将残差块用于结果以重建图像块。所得重建块还可以通过环内滤波器组件425转发到解码图像缓冲区组件423。解码图像缓冲区组件423继续存储其它重建图像块,这些重建图像块可以通过分割信息重建成帧。此类帧也可以位于序列中。该序列作为重建输出视频信号向显示器输出。
图5为包括编码视频序列的示例性码流500的示意图。例如,码流500可以由编解码系统200和/或编码器300生成,用于由编解码系统200和/或解码器400进行解码。在另一示例中,码流500可以在方法100的步骤109中由编码器生成,在步骤111中供解码器使用。
码流500包括序列参数集(sequence parameter set,SPS)510、多个图像参数集(picture parameter set,PPS)512、分块组标头514和图像数据520。SPS 510包括码流500的视频序列中所有图像共用的序列数据。这些数据可以包括图像大小、位深度、译码工具参数、码率限制等。PPS 512包括一个或多个对应的图像的特定参数。因此,视频序列中的每个图像可以参考一个PPS 512。PPS 512可以表示可用于对应的图像中的分块的译码工具、量化参数、偏移、图像的特定译码工具参数(例如,滤波器控制)等。分块组标头514包括图像中的每个分块组的特定参数。因此,视频序列中的每个分块组可以有一个分块组标头514。分块组标头514可以包括分块组信息、图像顺序编号(picture order count,POC)、参考图像列表、预测权重、分块入口点、去块参数等。需要说明的是,一些系统将分块组标头514称为条带头,并使用这些信息来描述条带而不是分块组。
图像数据520包括根据帧间预测和/或帧内预测编码的视频数据以及对应的变换和量化残差数据。这些图像数据520根据编码前用于对图像进行分割的分割进行分类。例如,图像数据520中的图像被划分为分块523。分块523进一步划分为编码树单元(codingtree unit,CTU)。CTU根据编码树进一步划分为编码块。然后,编码块可以根据预测机制进行编码/解码。图像(image/picture)可以包括一个或多个分块523。
分块523是通过水平边界和垂直边界创建的图像的分割部分。分块523可以按光栅扫描顺序进行译码,在不同示例中,可以允许或不允许根据其它分块523进行预测。每个分块523在图像中具有唯一的分块索引524。分块索引524是按照流程选择的数字标识符,可用于将一个分块523与另一分块523区分开。例如,分块索引524可以按光栅扫描顺序增加数值。光栅扫描顺序从左到右,从上到下。需要说明的是,在一些示例中,也可以为分块523分配分块标识符(identifier,ID)。分块ID是一种分配的标识符,可用于将一个分块523与另一分块区分开。在一些示例中,可以使用分块ID进行计算,而不是使用分块索引524进行计算。此外,在一些示例中,可以为分块ID分配与分块索引524相同的值。
可以对分块索引524进行指示,以表示包括分块523的分块组。例如,分块523可以是围绕图像边界环绕的分块组的一部分。arbitrary_tile_group_present_flag等标志可以在分块组标头514中设置,以表示任意分块组正在使用。任意分块组是不限于相邻分块523的矩形分组的分块组。第一分块索引和最后分块索引可以在分块组标头514中指示。在一些示例中,第一分块索引和最后分块索引通过对应的分块ID指示。然后,解码器可以根据标志、第一分块索引和最后分块索引确定分块组的配置。例如,如下面关于图6A-6D所详述,解码器可以通过使用预定义的算法来确定分块组的配置。编码器还可以在率失真优化过程期间使用预定义的算法,因为编码器使用与解码器相似的过程,以便在选择优化的编码方法时预测解码器处的解码结果。通过仅指示第一分块索引和最后分块索引,而不是指示分块组的完整成员,可以节省很多位。这提高了译码效率,并且减少了编码器和解码器使用的内存资源和网络资源。因此,提供预定义的算法以根据第一分块索引和最后分块索引确定环绕分块组的分块组配置,为编码优化提供了其它功能和灵活性,同时保持这种译码效率。
图6A-6D示出了分别分割为示例性分块组609、619、629和639的示例性图像601、611、621和631。例如,可以通过编解码系统200、编码器300将图像601、611、621和631编码到码流500中和/或通过编解码系统200、解码器400从码流500中解码图像601、611、621和631。此外,图像601、611、621和631可以进行分割以支持根据方法100进行编码和解码。图6A-6D示出了示例性任意分块组。因此,读取表示任意分块组的标志的解码器应能够确定使用分块组609、619、629和639中的哪一种类型,并仅根据第一分块索引和最后分块索引(或对应的第一分块ID和最后分块ID)确定对应的分块组配置。
参考图6A,图像601是视频序列中的单个图像601。图像601可以由编码器编码在码流中,并由解码器从该码流中解码。图像601可以包括左边界601a、右边界601b、上边界601c和下边界601d,它们是为了清楚讨论而包括的图像601的边缘。图像601可以分割为分块603。
分块603是图像601的子部分。分块603实质上可以类似于分块523。分块603可以是矩形或正方形。此外,分块603可以分割为分块行605和分块列607。分块行605是一组分块603,以水平相邻的方式定位,以创建从左边界601a到右边界601b的连续线(反之亦然)。分块列607是一组分块603,以垂直相邻的方式定位,以创建从上边界601c到下边界601d的连续线(反之亦然)。每个分块603分配有一个分块索引,分块索引按光栅扫描顺序增加。在所示示例中,分块索引从0扩展到23。这些分块索引是示例性的,是为了清楚讨论而提供的,因此不应被视为限制。分块603包括在一个或多个分块组609中。
分块组609是分块603的相关集,可以单独提取和译码,以支持感兴趣区域的显示和/或支持并行处理等。可以在不参考分块组609之外的分块603的情况下对分块组609中的分块603进行译码。每个分块603可以分配给对应的分块组609,因此图像601可以包括多个分块组609。但是,为了清楚讨论,本发明参考示出为阴影区域的分块组609,该分块组609包括索引为7至10以及13至16的分块603。
因此,图像601的分块组609可以通过第一分块索引7和最后分块索引16来指示。解码器需要根据第一分块索引和最后分块索引确定分块组609的配置。本文所使用的分块组609的配置表示分块组609中的行、列和分块603。为了确定分块组609的配置,视频译码设备可以使用预定义的算法。例如,视频编码设备通过将增量分块索引设置为分块组609的最后分块索引与分块组609的第一分块索引之间的差值,确定从图像601分割的分块组609中的分块603的数量。分块组609中的分块行605的数量可以通过将增量分块索引除以图像601中的分块列607的数量加1来确定。此外,分块组609中的分块列607的数量可以确定为增量分块索引对图像中分块列607的数量求模加一。分块组609中的分块603的数量可以通过将分块组609中的分块列607的数量乘以分块组609中的分块行605的数量来确定。
现在参考图6B,图像611实质上类似于图像601,具有不同分块组619。因此,图像611包括左边界611a、右边界611b、上边界611c、下边界611d、分块613、分块行615和分块列617,它们实质上分别类似于左边界601a、右边界601b、上边界601c、下边界601d、分块603、分块行605和分块列607。图像611还包括类似于分块组609的分块组619。但是,分块组619延伸穿过上边界611c和下边界611d。具体地,分块组619的第一分块索引为19,最后分块索引为4。因此,分块组619是沿垂直方向环绕图像611的矩形形状。视频译码设备可以通过与分块组609实质上相同的方式确定分块组619的配置。但是,预定义的算法可以确定是否存在垂直环绕,并调整增量分块索引以调整环绕。例如,在确定分块组619中的分块行615的数量和分块列617的数量之前,预定义的算法可以检测垂直环绕。在一个具体的示例中,预定义的算法可以确定分块组619的最后分块索引(例如,4)小于分块组619的第一分块索引(例如,19),这表示垂直环绕。预定义的算法还可以确定第一分块列617索引(例如1)不大于最后分块列617索引(例如4),这表示没有水平环绕。在确定具有垂直环绕且没有水平环绕之后,在确定分块组619中的分块613、分块行615和分块列617的数量之前,增量分块索引可以增加图像611中的分块613的数量。
现在参考图6C,图像621实质上类似于图像601,具有不同分块组629。因此,图像621包括左边界621a、右边界621b、上边界621c、下边界621d、分块623、分块行625和分块列627,它们实质上分别类似于左边界601a、右边界601b、上边界601c、下边界601d、分块603、分块行605和分块列607。图像621还包括类似于分块组609的分块组629。但是,分块组629延伸穿过左边界621a和右边界621b。具体地,分块组629的第一分块索引为10,最后分块索引为13。因此,分块组629是沿水平方向环绕图像621的矩形形状。视频译码设备可以通过与分块组609实质上相同的方式确定分块组629的配置。但是,预定义的算法可以确定是否存在水平环绕,并调整增量分块索引以调整环绕。例如,在确定分块组629中的分块行625的数量和分块列627的数量之前,预定义的算法可以检测水平环绕。在一个具体的示例中,预定义的算法可以确定分块组629的最后分块索引(例如,13)不小于分块组629的第一分块索引(例如,10),这表示没有垂直环绕。预定义的算法还可以确定第一分块列627索引(例如4)大于最后分块列627索引(例如1),这表示水平环绕。在确定具有水平环绕且没有垂直环绕之后,在确定分块组629中的分块623、分块行625和分块列627的数量之前,增量分块索引可以增加图像621中的分块列627的数量。
现在参考图6D,图像631实质上类似于图像601,具有不同分块组639。因此,图像631包括左边界631a、右边界631b、上边界631c、下边界631d、分块633、分块行635和分块列637,它们实质上分别类似于左边界601a、右边界601b、上边界601c、下边界601d、分块603、分块行605和分块列607。图像631还包括类似于分块组609的分块组639。但是,分块组639沿水平方向延伸穿过左边界621a和右边界621b,沿垂直方向延伸穿过上边界631c和下边界631d。具体地,分块组639的第一分块索引为16,最后分块索引为1。因此,分块组639是沿水平方向和垂直方向环绕图像631的矩形形状。视频译码设备可以通过与分块组609实质上相同的方式确定分块组639的配置。但是,预定义的算法可以确定是否存在水平环绕和垂直环绕,并调整增量分块索引以调整环绕。例如,在确定分块组639中的分块行635的数量和分块列637的数量之前,预定义算法可以检测水平环绕和垂直环绕。在一个具体的示例中,预定义的算法可以确定分块组639的最后分块索引(例如,1)小于分块组639的第一分块索引(例如,16),这表示垂直环绕。预定义的算法还可以确定第一分块列637索引(例如4)大于最后分块列637索引(例如1),这表示水平环绕。在确定具有垂直环绕和水平环绕之后,在确定分块组639中的分块633、分块行635和分块列637的数量之前,增量分块索引可以增加图像631中的分块633的数量和图像631中的分块列637的数量。
如上文描述所示,预定义的算法可以确定分块组配置,不需要接收表示与分块组相关联的环绕类型的数据。在特定的实现方式中,以下语法可以描述上文预定义的算法。
Figure BDA0003115804560000161
Figure BDA0003115804560000171
以下是特定示例性技术,用于指示分块分组和显式指示分块ID,以便于从码流中提取分块组,而不必如本文所描述修改分块组标头。可以对分块组进行约束,使得分到同一个分块组的分块可以构成图像内的矩形区域。环绕分块组概念可以被认为是对矩形形状分块组的修改。分块组可以沿图6B所示的垂直方向和/或沿图6C所示的水平方向环绕。在图6B所示的示例中,分块组内的分块的顺序如下:索引19处的分块、索引20处的分块、索引21处的分块、索引22处的分块、索引1处的分块、索引2处的分块、索引3处的分块和索引4处的分块。另一方面,对于图6B所示的示例,分块组内的分块顺序如下:索引10处的分块、索引11处的分块、索引6处的分块、索引7处的分块、索引16处的分块、索引17处的分块、索引12处的分块和索引14处的分块。
在一个特定的示例中,变量numTileRowsInTileGroup、numTileColumnsInTileGroup和NumTilesInTileGroup可以如下进行推导:
deltaTileIdx=(bottom_right_tile_id<top_left_tile_id)?bottom_right_tile_id–top_left_tile_id+NumTilesInPic:((top_left_tile_id%(num_tile_columns_minus1+1))<(bottom_right_tile_id%(num_tile_columns_minus1+1)))?bottom_right_tile_id–top_left_tile_id+num_tile_columns_minus1:bottom_right_tile_id–top_left_tile_id
numTileRowsInTileGroup=(deltaTileIdx/(num_tile_columns_minus1+1))+1
numTileColumnsInTileGroup=(deltaTileIdx%(num_tile_columns_minus1+1))+1
NumTilesInTileGroup=numTileRowsInTileGroup*numTileColumnsInTileGroup
变量TgTileIdx[i]可以表示分块组中第i个分块的分块索引,并且可以如下进行推导:
Figure BDA0003115804560000172
Figure BDA0003115804560000181
通过上述推导,分块组数据的语法表的定义可以如下。
Figure BDA0003115804560000183
任意分块组概念允许灵活地将两个或多个分块分到一个组中,而不论它们在图像中的位置如何。但是,一些系统可能会限制任意分块组中的分块,使其符合按分块索引增加的顺序。为了支持这一概念,分块组指示的定义可以如下:
Figure BDA0003115804560000182
Figure BDA0003115804560000191
arbitrary_tile_group_flag可以设置为等于1,以表示使用语法元素delta_tile_idx[i]显式分配分块组中分块的每个分块索引。arbitrary_tile_group_flag可以设置为等于0,以表示分块组中分块的分块索引由语法元素first_tile_id和last_tile_id标识。num_remaining_tiles_in_tile_group_minus1可以表示分块组中的分块的数量,不包括分块组的第一分块。num_remaining_tiles_in_tile_group_minus1的长度可以是Ceil(Log2(NumTilesInPic–1))个位。
变量NumTilesInTileGroup可以如下进行推导:
NumTilesInTileGroup=num_remaining_tiles_in_tile_group_minus1+2
delta_tile_idx_minus1[i]可以表示分块组中第i个分块的分块索引与第i–1个分块的分块索引之间的差值。分块索引可以通过delta_tile_idx[i]推导,并且可以通过增加的顺序指示。分块索引的值不能等于同一编码图像的任何其它编码分块组中任何其它分块索引。变量TgTileIdx[i]可以如下进行推导:
TgTileIdx[i]=(i>0)?TgTileIdx[i–1]+delta_tile_idx_minus1[i]+1:first_tile_id
上述环绕和任意分块组的语法和语义描述可以不包括显式分块ID的概念,因此分块ID和分块索引相同。
这种环绕和任意形状的分块组(或简称为任意分块组)的方法至少存在以下问题。任意形状的分块组允许灵活的分块分组。但是,在实践中,任意分块分组可能很少使用,而且仅在特定的应用领域中使用,例如用于球体投影的360度视频。由于这种用法可能很少见,因此要求在分块组具有多个分块时始终指示语法元素arbitrary_tile_group_flag会效率低下。此外,为了支持任意形状的分块组,属于分块组的分块可以在分块组标头中显式列出。与通过指示第一分块索引或ID和最后分块索引或ID来指示矩形分块组相比,这自然会使用更多的位。为了提高指示效率,所公开的方法仅指示分块组中两个连续分块之间的增量块索引。当使用显式分块ID指示时,这可能会产生问题,因为推导分块组中分块的分块索引可能会导致分块索引列表不正确。
此外,一些环绕分块组指示可能仅支持沿垂直方向或水平方向的环绕,但不支持两者。例如,一些指示方法可能不支持图6D中所示的分块组。当分块组是沿垂直方向的环绕分块组时,示例性环绕分块组指示系统允许分块组中的最后分块和第一分块位于连续的分块行中。例如,在图6B中,第一分块是索引19处的分块,最后分块是索引16处的分块。同样,当分块组是沿水平方向的环绕分块组时,环绕分块组允许分块组中的最后分块和第一分块位于连续的分块列。例如,在图6C中,第一分块是索引10处的分块,最后分块是索引15处的分块。这样的条件可能不需要,因为这样的分块组是简单的矩形形状,并且允许这样的分块分组没有其它好处,因为它们可能会给解码器带来不必要的计算复杂性。
为了解决上述问题,本发明包括以下示例性方面。标志在参数集中定义,该参数集由分块组直接或间接参考。该标志表示是否使用任意形状的分块组。当该标志表示使用任意形状的分块组时,与任意形状的分块组相关的语法元素可以包括在分块组标头中,并可以(直接或间接)参考参数集。该标志可以在序列参数集、图像参数集或由分块组直接或间接参考的其它类型的参数集等中指示。该标志可以称为arbitrary_tile_group_present_flag。
在一些方面,当分块组为任意分块组时,可以指示分块组中两个连续分块的分块ID之间的增量,而不是指示分块组中两个连续分块的分块索引值之间的增量。在一种替代方案中,当分块组为任意分块组时,可以直接为分块组中的每个分块指示分块ID,不包括第一分块。这可以用于替代指示分块组中两个连续分块的分块索引值之间的增量。
对于环绕分块组,可以支持两个方向(例如垂直方向和水平方向)的环绕,如下所示。垂直方向和水平方向的环绕可以通过以下条件来识别:第一分块的分块索引大于最后分块的分块索引,第一分块的分块列索引大于最后分块的分块列,假设分块列索引按从左到右的递增顺序定义。或者,垂直方向和水平方向的环绕可以通过以下条件来识别:第一分块的分块行索引大于最后分块的分块索引,第一分块的分块列索引大于最后分块的分块列,假设分块列索引按从左到右的递增顺序定义,分块行索引按从上到下的递增顺序定义。
与沿两个方向属于环绕分块组的分块相关联的分块索引列表描述如下。当未启用显式分块ID指示时,可能不允许满足以下条件之一的任何环绕分块组。一个环绕分块组,其中,第一分块的分块行索引大于最后分块的分块行索引,并且这些分块行索引之间的差值为1。一个环绕分块组,其中,第一分块的分块列索引大于最后分块的分块列索引,并且这些分块列索引之间的差值为1。
下面描述所公开的机制的特定示例性实现方式。示例性图像参数集RBSP语法如下。
Figure BDA0003115804560000201
Figure BDA0003115804560000211
tile_id_len_minus1+1可以表示用于表示以下语法元素的位数:语法元素tile_id_val[i][j](当PPS中存在时),以及参考PPS的分块组标头中的语法元素first_tile_id和last_tile_id。tile_id_len_minus1的值可以在Ceil(Log2(NumTilesInPic)到15的范围内,包括端值。arbitrary_tile_group_present_flag可以设置为等于1,以表示参考PPS的分块组标头中存在语法元素arbitrary_tile_group_flag。arbitrary_tile_group_present_flag可以设置为等于0,以表示参考PPS的分块组标头中不存在语法元素arbitrary_tile_group_flag。
示例性分块组标头语法如下:
Figure BDA0003115804560000212
Figure BDA0003115804560000221
single_tile_in_tile_group_flag可以设置为等于1,以表示分块组中只有一个分块。single_tile_in_tile_group_flag可以设置为等于0,以表示分块组中有多个分块。first_tile_id可以表示分块组的第一分块的分块ID。first_tile_id的长度可以是tile_id_len_minus1+1个位。first_tile_id的值不能等于同一编码图像的任何其它编码分块组的first_tile_id的值。当图像中有多个分块组时,图像中分块组的解码顺序可以是first_tile_id的递增值。arbitrary_tile_group_flag可以设置为等于1,以表示分块组中的分块可以是图像的两个或多个分块的任何集合,并且每个分块的分块ID在分块组标头中显式指示。arbitrary_tile_group_flag可以设置为等于0,以表示分块组中的分块由语法元素first_tile_id和last_tile_id标识。当不存在时,推断arbitrary_tile_group_flag的值等于0。last_tile_id可以表示分块组的最后分块的分块ID。last_tile_id的长度为tile_id_len_minus1+1个位。如果不存在,则推断last_tile_id的值等于first_tile_id。
当arbitrary_tile_group_flag等于0时,变量numTileRowsInTileGroup、numTileColumnsInTileGroup和NumTilesInTileGroup可以如下进行推导:
Figure BDA0003115804560000222
Figure BDA0003115804560000231
当explicit_tile_id_flag等于0时,可以应用以下码流一致性约束。如果firstTileRowIdx大于lastTileRowIdx,则firstTileRowIdx与lastTileRowIdx之间的差值应大于1。如果firstTileColumnIdx大于lastTileColumnIdx,则firstTileColumnIdx与lastTileColumnIdx之间的差值应大于1。当arbitrary_tile_group_flag等于0时,变量TgTileIdx[i]表示分块组中第i个分块的分块索引,并且可以如下进行推导:
Figure BDA0003115804560000232
num_remaining_tiles_in_tile_group_minus1可以表示分块组中的分块的数量,不包括分块组的第一分块。num_remaining_tiles_in_tile_group_minus1的值可以在0到NumTilesInPic–1的范围内(包括端值)。当arbitrary_tile_group_flag等于1时,变量NumTilesInTileGroup可以如下进行推导:
NumTilesInTileGroup=num_remaining_tiles_in_tile_group_minus1+2
delta_tile_id_minus1[i]可以表示分块组中第(i+1)个分块的分块ID与第i个分块的分块ID之间的差值。delta_tile_id_minus1[i]的值可以在0到2(tile_id_len_minus1+1)–1的范围内,包括端值。当arbitrary_tile_group_flag等于1时,对于在0到NumTilesInTileGroup–1范围内(包括端值)的i,变量TgTileIdx[i]可以如下进行推导:
tgTileId[i]=i>0?tgTileId[i–1]+delta_tile_id_minus1[i–1]+1:first_tile_id
TgTileIdx[i]=TileIdToIdx[tgTileId[i]]
示例性总体分块组数据语法如下:
Figure BDA0003115804560000233
Figure BDA0003115804560000241
图7为示例性视频译码设备700的示意图。如本文所述,视频译码设备700适合于实现所公开的示例/实施例。视频译码设备700包括下行端口720、上行端口750和/或收发单元(Tx/Rx)710,收发单元(Tx/Rx)710包括用于通过网络向上游和/或下游传送数据的发送器和/或接收器。视频译码设备700还包括处理器730,处理器730包括用于处理数据的逻辑单元和/或中央处理器(central processing unit,CPU)以及用于存储数据的存储器732。视频译码设备700还可包括电、光电(optical-to-electrical,OE)组件、电光(electrical-to-optical,EO)组件、和/或耦合到上行端口750和/或下行端口720的无线通信组件,用于通过电、光或无线通信网络传送数据。视频译码设备700还可以包括用于与用户传送数据的输入和/或输出(I/O)设备760。I/O设备760可以包括输出设备,例如用于显示视频数据的显示器、用于输出音频数据的扬声器等。I/O设备760还可以包括输入设备,例如键盘、鼠标、轨迹球等,和/或用于与这些输出设备交互的对应的接口。
处理器730通过硬件和软件实现。处理器730可以实现为一个或多个CPU芯片、核(例如,多核处理器)、现场可编程门阵列(field-programmable gate array,FPGA)、专用集成电路(application specific integrated circuit,ASIC)和数字信号处理器(digitalsignal processor,DSP)。处理器730与下行端口720、Tx/Rx 710、上行端口750和存储器732通信。处理器730包括译码模块714。译码模块714实现本文所描述的公开实施例,例如方法100、800、900和1000,其可以使用码流500和/或分割为分块组609、619、629和/或639的图像。译码模块714还可以实现本文所描述的任何其它方法/机制。此外,译码模块714可以实现编解码系统200、编码器300和/或解码器400。例如,当作为编码器时,译码模块714可以将图像分割为沿水平和/或垂直方向环绕图像的分块组。译码模块714还可以对参数集中的标志进行编码,以表示任意分块组,并指示该分块组的第一分块索引和最后分块索引。当作为解码器时,译码模块714可以读取表示任意分块组的标志以及分块组的第一分块索引和最后分块索引。在编码器或解码器中,译码模块714可以确定环绕图像的分块组的性质,并在使用增量分块索引来确定分块组的配置之前相应地调整增量分块索引。因此,译码模块714改进了视频译码设备700的功能,并通过允许多种类型的分块组环绕(因此提高译码效率)而不对分块组指示产生负面影响,解决了视频译码领域的特定问题。此外,译码模块714可以将视频译码设备700变换到不同的状态。或者,译码模块714可以实现为存储在存储器732中并由处理器730执行的指令(例如,存储在非瞬时性介质中的计算机程序产品)。
存储器732包括一个或多个存储器类型,如磁盘、磁带机、固态驱动器、只读存储器(read only memory,ROM)、随机存取存储器(random access memory,RAM)、闪存、三态内容寻址存储器(ternary content-addressable memory,TCAM)、静态随机存取存储器(staticrandom-access memory,SRAM)等。存储器732可以用作溢出数据存储设备,以在选择程序用于执行时存储此类程序,并存储程序执行期间读取的指令和数据。
图8为将具有任意分块组(例如分块组609、619、629和639)的图像(例如图像601、611、621和631)编码到码流(例如码流500)中的示例性方法800的流程图。方法800可以由编码器(例如编解码系统200、编码器300和/或视频译码设备700)在执行方法100时使用。
方法800可以在编码器接收到包括多个图像的视频序列,并根据用户输入等确定将该视频序列编码到码流中时开始。在编码之前,视频序列被分割为图像/帧以进行进一步分割。在步骤801中,将图像分割为多个分块。分块可以进一步分割为多个CTU,这些CTU可以进一步分割为编码块,用于基于预测的压缩。一组分块也被分配到分块组中。在一个特定示例中,分块组是沿水平方向和垂直方向环绕图像的矩形形状。
在步骤803中,将分块组编码到码流中。此外,将标志编码到码流中的参数集中。该标志表示分块组为任意分块组。作为一个特定的示例,该标志为arbitrary_tile_group_present_flag。例如,可以将标志编码到与图像相关联的PPS中。
在步骤805中,第一分块索引和最后分块索引可以编码到分块组标头中。第一分块索引表示第一分块组中的第一分块。此外,最后分块索引表示第一分块组中的最后分块。第一分块索引和最后分块索引可以被编码,以支持在解码器处确定从图像分割的分块组中的分块的数量。此外,编码器可以根据第一分块索引和最后分块索引确定从图像分割的分块组中的分块的数量,作为率失真优化过程的一部分,同时预测解码器处的结果。
在步骤807中,存储码流,用于发送到解码器。在进行请求时,码流可以发送到解码器。
图9为从为码流(例如码流500)解码具有任意分块组(例如分块组609、619、629和639)的图像(例如图像601、611、621和631)的示例性方法900的流程图。方法900可以由解码器(例如编解码系统200、解码器400和/或视频译码设备700)在执行方法100时使用。
例如,在方法800结束之后,在解码器开始接收表示视频序列的编码数据的码流时,可以开始方法900。在步骤901中,在解码器处接收码流。码流包括分块组,该分块组包括从图像分割的一组分块。
在步骤903中,从码流中的参数集中获取标志。该标志表示分块组为任意分块组。作为一个特定的示例,该标志为arbitrary_tile_group_present_flag。例如,可以从与该图像相关联的PPS中获取该标志。根据该标志,解码器可以选择预定义的算法来确定分块组中分块的配置。
在步骤905中,可以从分块组标头获取分块组的第一分块索引和最后分块索引。第一分块索引表示分块组中的第一分块。最后分块索引表示分块组中的最后分块。
在步骤907中,可以根据标志、第一分块索引和最后分块索引确定分块组中的分块的数量。作为一个特定的示例,分块组可以是沿水平方向和垂直方向环绕图像的矩形形状。预定义的算法可以用于确定分块组中的分块的数量,而不论分块组使用的环绕类型如何。
在步骤909中,可以对第一分块组进行解码以重建图像的一部分,然后可以包括该部分,作为重建视频序列的一部分。所得到的重建视频序列可以转发到显示设备,用于向用户显示。
图10是根据第一分块索引和最后分块索引从任意分块组(例如分块组609、619、629和/或639)确定分块组配置的示例性方法1000的流程图。例如,方法1000可以在编码器处作为率失真优化过程的一部分,或者在步骤907中在解码器处作为方法900的一部分。因此,方法1000可以用于支持方法800和900。因此,当例如针对码流500执行方法100时,视频译码设备(例如编解码器系统200、编码器300、解码器400和/或视频编码设备700)可以使用方法1000。
当视频译码设备决定根据表示分块组为任意分块组的标志确定从图像分割的分块组中的分块的数量时,方法1000可以开始。在步骤1001中,增量分块索引设置为分块组的最后分块索引与分块组的第一分块索引之间的差值。
在步骤1003中,根据分块组环绕修改增量分块索引。这可以在步骤1005和步骤1007中确定分块组中的分块行的数量和分块组中的分块列的数量之前进行。在第一示例中,当分块组的最后分块索引小于分块组的第一分块索引时(表示垂直环绕),并且当第一分块列索引大于最后分块列索引时(表示水平环绕),增量分块索引增加图像中的分块的数量和图像中的分块列的数量。在第二示例中,当分块组的最后分块索引小于分块组的第一分块索引时(表示垂直环绕),并且当第一分块列索引不大于最后分块列索引时(表示没有水平环绕),增量分块索引增加图像中的分块的数量。在第三示例中,当分块组的最后分块索引不小于分块组的第一分块索引时(表示没有垂直环绕),并且当第一分块列索引大于最后分块列索引时(表示水平环绕),增量分块索引增加图像中的分块列的数量。
在步骤1005中,通过将增量分块索引除以图像中的分块列的数量加一,确定分块组中的分块行的数量。在步骤1007中,将分块组中的分块列的数量确定为增量分块索引对第二图像中的分块列的数量求模加一。此外,分块组中的分块的数量是通过将分块组中的分块行的数量乘以分块组中的分块列的数量来确定的。
图11为用于对码流(例如码流500)中的图像(例如图像601、611、621和631)的视频序列进行译码的示例性系统1100的示意图。系统1100可以由编码器和解码器(例如编解码系统200、编码器300、解码器400和/或视频译码设备700)实现。此外,系统1100可以用于实现方法100、800、900和/或1000。
系统1100包括视频编码器1102。视频编码器1102包括分割模块1101,用于将第一图像分割为多个分块。视频编码器1102还包括分配模块1103,用于将一组分块分配到第一分块组,其中,第一分块组为沿水平方向和垂直方向环绕第一图像的矩形形状。视频编码器1102还包括编码模块1105,用于将第一分块组编码到码流中,并将标志编码到码流中的参数集中,以表示第一分块组为任意分块组。视频编码器1102还包括存储模块1107,用于存储码流,用于发送到解码器。视频编码器1102还包括发送模块1109,用于发送码流,以支持确定分块组的配置并在解码器中对分块进行解码。视频编码器1102还可以用于执行方法800和/或1000中的任一步骤。
系统1100还包括视频解码器1110。视频解码器1110包括接收模块1111,用于接收码流,该码流包括第一分块组,该第一分块组包括从第一图像分割的一组分块。视频解码器1110还包括获取模块1113,用于从码流中的参数集中获取标志,其中,该标志表示第一分块组为任意分块组。视频解码器1110还包括确定模块1115,用于根据标志、第一分块索引和最后分块索引确定第一分块组中的分块的数量,其中,第一分块组为沿水平方向和垂直方向环绕第一图像的矩形形状。视频解码器1110还包括解码模块1117,用于对第一分块组进行解码,以生成重建视频序列,用于显示。视频解码器1110还可以用于执行方法900和/或1000中的任一步骤。
当第一组件与第二组件之间除线、迹线或其它介质之外,没有中间组件时,第一组件与第二组件直接耦合。当第一组件与第二组件之间除了线、迹线或其它介质之外还有中间组件时,第一组件与第二组件间接耦合。术语“耦合”及其同义词包括直接耦合和间接耦合。除非另有说明,否则术语“大约”是指包括其后数量的±10%的范围。
还应理解,本文中阐述的示例性方法的步骤不一定需要按照所描述的顺序执行,并且这些方法的步骤的顺序应理解为仅仅是示例性的。同样地,在与本发明各种实施例相一致的方法中,这些方法可以包括其它步骤,并且某些步骤可以省略或组合。
虽然本发明中已提供若干实施例,但可以理解,在不背离本发明的精神和范围的情况下,所公开的系统和方法可以以许多其它特定形式来体现。当前的这些示例被认为是说明性的而非限制性的,并且意图不限于本文给出的细节。例如,各种元件或组件可以结合或集成在另一系统中,或者某些特征可以省略或不实现。
此外,在各种实施例中描述和示出为分立的或单独的技术、系统、子系统和方法,在不背离本发明的范围的情况下,可以与其它系统、组件、技术或方法组合或集成。本领域技术人员可以确定改变、替换和更改的其它示例,并在不背离本发明的精神和范围的情况下作出改变、替换和更改。

Claims (22)

1.一种在编码器中实现的方法,其特征在于,所述方法包括:
所述编码器的处理器将第一图像分割为多个分块;
所述处理器将一组所述分块分配到第一分块组,其中,所述第一分块组为沿水平方向和垂直方向环绕所述第一图像的矩形形状;
所述处理器将所述第一分块组编码到码流中;
所述处理器将标志编码到所述码流中的参数集中,以表示所述第一分块组为任意分块组;
在所述编码器的存储器中存储所述码流,所述码流用于发送到解码器。
2.根据权利要求1所述的方法,其特征在于,所述标志为arbitrary_tile_group_present_flag。
3.根据权利要求1或2所述的方法,其特征在于,所述标志被编码到与所述第一图像相关联的图像参数集(picture parameter set,PPS)中。
4.根据权利要求1至3中任一项所述的方法,其特征在于,还包括所述处理器将第一分块索引和最后分块索引编码到分块组标头中,其中,所述第一分块索引表示所述第一分块组中的第一分块,所述最后分块索引表示所述第一分块组中的最后分块。
5.根据权利要求1至4中任一项所述的方法,其特征在于,还包括通过以下步骤确定从第二图像分割的第二分块组中的分块的数量:
将增量分块索引设置为所述第二分块组的最后分块索引与所述第二分块组的第一分块索引之间的差值;
通过将所述增量分块索引除以所述第二图像中的分块列数量加一,确定所述第二分块组中的分块行的数量;
将所述第二分块组中的分块列的数量确定为所述增量分块索引对所述第二图像中的所述分块列的数量求模加一。
6.根据权利要求5所述的方法,其特征在于,在确定所述第二分块组中的所述分块行的数量和所述第二分块组中的所述分块列的数量之前,当所述第二分块组的所述最后分块索引小于所述第二分块组的所述第一分块索引时(表示垂直环绕),并且当第一分块列索引大于最后分块列索引时(表示水平环绕),所述增量分块索引增加所述第二图像中的分块的数量和所述第二图像中的所述分块列的数量。
7.根据权利要求5所述的方法,其特征在于,在确定所述第二分块组中的所述分块行的数量和所述第二分块组中的所述分块列的数量之前,当所述第二分块组的所述最后分块索引小于所述第二分块组的所述第一分块索引时(表示垂直环绕),并且当第一分块列索引不大于最后分块列索引时(表示没有水平环绕),所述增量分块索引增加所述第二图像中的分块的数量。
8.根据权利要求5所述的方法,其特征在于,在确定所述第二分块组中的所述分块行的数量和所述第二分块组中的所述分块列的数量之前,当所述第二分块组的所述最后分块索引不小于所述第二分块组的所述第一分块索引时(表示没有垂直环绕),并且当第一分块列索引大于最后分块列索引时(表示水平环绕),所述增量分块索引增加所述第二图像中的所述分块列的数量。
9.一种在解码器中实现的方法,其特征在于,所述方法包括:
所述解码器的处理器通过接收器接收码流,所述码流包括参数集和第一分块组,所述第一分块组包括从第一图像分割的一组分块;
所述处理器从所述参数集中获取标志,其中,所述标志表示所述第一分块组为任意分块组;
所述处理器根据所述标志、第一分块索引和最后分块索引确定所述第一分块组中的分块的数量,其中,所述第一分块组为沿水平方向和垂直方向环绕所述第一图像的矩形形状;
所述处理器对所述第一分块组进行解码,以生成重建视频序列,用于显示。
10.根据权利要求9所述的方法,其特征在于,所述标志为arbitrary_tile_group_present_flag。
11.根据权利要求9或10所述的方法,其特征在于,所述标志从与所述第一图像相关联的图像参数集(picture parameter set,PPS)中获取。
12.根据权利要求9至11中任一项所述的方法,其特征在于,还包括:所述处理器从分块组标头获取所述第一分块索引和所述最后分块索引,其中,所述第一分块索引表示所述第一分块组中的第一分块,所述最后分块索引表示所述第一分块组中的最后分块。
13.根据权利要求9至12中任一项所述的方法,其特征在于,还包括通过以下步骤确定从第二图像分割的第二分块组中的分块的数量:
将增量分块索引设置为所述第二分块组的最后分块索引与所述第二分块组的第一分块索引之间的差值;
通过将所述增量分块索引除以所述第二图像中的分块列数量加一,确定所述第二分块组中的分块行的数量;
将所述第二分块组中的分块列的数量确定为所述增量分块索引对所述第二图像中的所述分块列的数量求模加一。
14.根据权利要求13所述的方法,其特征在于,在确定所述第二分块组中的所述分块行的数量和所述第二分块组中的所述分块列的数量之前,当所述第二分块组的所述最后分块索引小于所述第二分块组的所述第一分块索引时(表示垂直环绕),并且当第一分块列索引大于最后分块列索引时(表示水平环绕),所述增量分块索引增加所述第二图像中的分块的数量和所述第二图像中的所述分块列的数量。
15.根据权利要求13所述的方法,其特征在于,在确定所述第二分块组中的所述分块行的数量和所述第二分块组中的所述分块列的数量之前,当所述第二分块组的所述最后分块索引小于所述第一分块索引时(表示垂直环绕),并且当第一分块列索引不大于最后分块列索引时(表示没有水平环绕),所述增量分块索引增加所述第二图像中的分块的数量。
16.根据权利要求13所述的方法,其特征在于,在确定所述第二分块组中的所述分块行的数量和所述第二分块组中的所述分块列的数量之前,当所述第二分块组的所述最后分块索引不小于所述第一分块索引时(表示没有垂直环绕),并且当第一分块列索引大于最后分块列索引时(表示水平环绕),所述增量分块索引增加所述第二图像中的所述分块列的数量。
17.一种视频译码设备,其特征在于,包括:
处理器、耦合到所述处理器的接收器和耦合到所述处理器的发送器,所述处理器、所述接收器和所述发送器用于执行根据权利要求1至16中任一项所述的方法。
18.一种非瞬时性计算机可读介质,其特征在于,包括供视频译码设备使用的计算机程序产品,所述计算机程序产品包括存储在所述非瞬时性计算机可读介质中的计算机可执行指令,当处理器执行所述计算机可执行指令时,使所述视频译码设备执行根据权利要求1至16中任一项所述的方法。
19.一种编码器,其特征在于,包括:
分割模块,用于将第一图像分割为多个分块;
分配模块,用于将一组所述分块分配到第一分块组,其中,所述第一分块组为沿水平方向和垂直方向环绕所述第一图像的矩形形状;
编码模块,用于:
将所述第一分块组编码到码流中;
将标志编码到所述码流中的参数集中,以表示所述第一分块组为任意分块组;
存储模块,用于存储所述码流,用于发送到解码器。
20.根据权利要求19所述的编码器,其特征在于,所述编码器还用于执行根据权利要求1至8中任一项所述的方法。
21.一种解码器,其特征在于,包括:
接收模块,用于接收码流,所述码流包括第一分块组,所述第一分块组包括从第一图像分割的一组分块;
获取模块,用于从所述码流中的参数集中获取标志,其中,所述标志表示所述第一分块组为任意分块组;
确定模块,用于根据所述标志、第一分块索引和最后分块索引确定所述第一分块组中的分块的数量,其中,所述第一分块组为沿水平方向和垂直方向环绕所述第一图像的矩形形状;
解码模块,用于对所述第一分块组进行解码,以生成重建视频序列,用于显示。
22.根据权利要求20所述的解码器,其特征在于,所述解码器还用于执行根据权利要求9至16中任一项所述的方法。
CN201980083100.6A 2018-12-14 2019-12-13 任意和环绕分块分组 Pending CN113228519A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201862780053P 2018-12-14 2018-12-14
US62/780,053 2018-12-14
PCT/US2019/066350 WO2020124016A1 (en) 2018-12-14 2019-12-13 Arbitrary and wrap-around tile grouping

Publications (1)

Publication Number Publication Date
CN113228519A true CN113228519A (zh) 2021-08-06

Family

ID=71077040

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980083100.6A Pending CN113228519A (zh) 2018-12-14 2019-12-13 任意和环绕分块分组

Country Status (3)

Country Link
US (1) US11425377B2 (zh)
CN (1) CN113228519A (zh)
WO (1) WO2020124016A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11425376B2 (en) 2019-08-23 2022-08-23 Apple Inc. Image signal encoding/decoding method and apparatus therefor
KR20220146647A (ko) * 2020-05-19 2022-11-01 구글 엘엘씨 품질-정규화된 비디오 트랜스코딩을 위한 동적 파라미터 선택

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9584819B2 (en) * 2011-10-24 2017-02-28 Qualcomm Incorporated Grouping of tiles for video coding
MX345247B (es) * 2012-04-16 2017-01-23 Samsung Electronics Co Ltd Metodo y aparato para determinar conjunto de representación de referencia de imagen.
US10257522B2 (en) * 2012-06-25 2019-04-09 Sony Corporation Image decoding device, image decoding method, image encoding device, and image encoding method
US9749627B2 (en) * 2013-04-08 2017-08-29 Microsoft Technology Licensing, Llc Control data for motion-constrained tile set
US10542274B2 (en) * 2014-02-21 2020-01-21 Microsoft Technology Licensing, Llc Dictionary encoding and decoding of screen content
GB2525448B (en) * 2014-04-27 2018-01-24 Gurulogic Microsystems Oy Encoder and decoder
US10715843B2 (en) * 2015-08-20 2020-07-14 Koninklijke Kpn N.V. Forming one or more tile streams on the basis of one or more video streams
WO2018066985A1 (ko) * 2016-10-06 2018-04-12 김기백 영상 데이터 부호화/복호화 방법 및 장치
CN118200565A (zh) * 2018-12-07 2024-06-14 松下电器(美国)知识产权公司 编码装置、解码装置和非暂时性的计算机可读介质

Also Published As

Publication number Publication date
US11425377B2 (en) 2022-08-23
US20210321100A1 (en) 2021-10-14
WO2020124016A1 (en) 2020-06-18

Similar Documents

Publication Publication Date Title
CN112703736B (zh) 视频译码方法,视频译码设备以及非瞬时性计算机可读介质
CN113330451A (zh) 视频译码中的子图像大小
CN114189694A (zh) 用于视频译码的参数集
CN113261288A (zh) 视频译码中的灵活分块指示
US11729401B2 (en) Tile group signaling in video coding
US11889087B2 (en) Tile group assignment for raster scan and rectangular tile groups in video coding
CN114650428B (zh) 使用标识符指示的视频译码码流提取的方法、设备和介质
US11425377B2 (en) Arbitrary and wrap-around tile grouping
CN113261030A (zh) 视频译码中的灵活分块的分块组
CN113243110A (zh) 视频译码中的显式地址指示
CN114556938B (zh) 基于子图像的视频译码中的子图像id指示
CN114175638A (zh) 视频译码中的alf aps约束

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