CN115380529A - 用于编码视频数据的设备和方法 - Google Patents

用于编码视频数据的设备和方法 Download PDF

Info

Publication number
CN115380529A
CN115380529A CN202180026942.5A CN202180026942A CN115380529A CN 115380529 A CN115380529 A CN 115380529A CN 202180026942 A CN202180026942 A CN 202180026942A CN 115380529 A CN115380529 A CN 115380529A
Authority
CN
China
Prior art keywords
flag
index
enable flag
maximum
affine
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
CN202180026942.5A
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.)
FG Innovation Co Ltd
Original Assignee
FG Innovation 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 FG Innovation Co Ltd filed Critical FG Innovation Co Ltd
Publication of CN115380529A publication Critical patent/CN115380529A/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/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/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • 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
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • 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/537Motion estimation other than block-based
    • H04N19/54Motion estimation other than block-based using feature points or meshes

Landscapes

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

Abstract

本发明提供一种通过电子设备解码比特流的方法。所述电子设备:接收所述比特流,并且从所述比特流中确定对应于一个或者多个图像帧的预测模式启用标志和仿射启用标志,所述电子设备当所述仿射启用标志为真时,从所述比特流中确定对应于所述一个或者多个图像帧的最大索引。所述最大索引的索引值是在基于所述预测模式启用标志确定的索引范围内。所述电子设备当所述仿射启用标志为真时,基于所述最大索引确定零个以上的基于子块的合并运动矢量预测MVP候选的最大数量。所述电子设备基于所述零个以上的基于子块的合并MVP候选的所述最大数量来重建所述一个或者多个图像帧。

Description

用于编码视频数据的设备和方法
相关申请的交叉引用
本公开主张于2020年4月7日提交的名称为“Maximum Number for SubblockMerge Candidate and Motion Storage for Geometric Partitioning Mode”的临时美国专利申请序列号63/006631(下文中称为“’631临时案”)的权益和优先权。’631临时案的公开内容特此以引用方式完全并入本公开中。
技术领域
本公开总体上涉及视频编码,且特别地,涉及用于使用高级语法以确认合并候选的数量的技术。
背景技术
在常规视频编码方法中,编码器可编码视频数据以生成具有多个标志和多个索引的编码数据并且将编码数据提供到解码器。标志可指示是否启用多个编码模式。例如:编码数据可包括指示仿射模式是否针对某些图像帧而被启用的仿射启用标志。此外,索引可以指示用于编码模式的模式候选的最大数量。
尽管编码数据可包括用于每个不同级别语法元素中的每个编码模式的标志和索引,但是编码效率可能会被降低。因此,编码器和解码器需要有一种方法来更有效地使用标志和索引来限制编码数据中的比特数。
发明内容
本公开涉及一种用于使用高级语法以确定合并候选的数量的设备和方法。
在本公开的第一个方面,提供一种用于解码比特流的方法和一种用于执行所述方法的电子设备。所述方法包括:接收所述比特流;从所述比特流中确定对应于一个或多个图像帧的预测模式启用标志和仿射启用标志;当所述仿射启用标志为真时,从所述比特流中确定对应于所述一个或多个图像帧的最大索引,其中,所述最大索引的索引值是在基于所述预测模式启用标志确定的索引范围内,在所述仿射启用标志为真时,基于所述最大索引确定零个以上的基于子块的合并运动矢量预测(motion vector prediction,MVP)候选的最大数量,且基于所述零个以上的基于子块的合并MVP候选的最大数量来重建所述一个或多个图像帧。
在本公开的第二方面中,提供一种用于解码比特流和用于执行所述方法的电子设备。所述方法包括:接收所述比特流;从所述比特流中确定对应于一个或多个图像帧的预测模式启用标志;从所述比特流中确定对应于所述一个或多个图像帧的最大索引,其中,所述最大索引的索引值是在基于所述预测模式启用标志确定的索引范围内,基于所述最大索引确定零个以上的基于子块的合并运动矢量预测(motion vector prediction,MVP)候选的最大数量,且基于所述零个以上的基于子块的合并MVP候选的最大数量来重建所述一个或多个图像帧。
附图说明
当结合附图阅读以下详细描述时,可最佳地理解本公开的各方面。各种特征未按比例绘制,并且为了讨论清楚起见,可任意地增大或减小各种特征的尺寸。
图1示出根据本公开的实施方式的被配置为编码和解码视频数据的系统的框图。
图2示出根据本公开的实施方式的图1中所示出的第二电子设备的解码器模块的框图。
图3示出根据本公开的实施方式的用于通过电子设备解码视频数据的方法的流程图。
图4示出根据本公开的实施方式的用于通过电子设备解码视频数据的方法的流程图。
图5示出根据本公开的实施方式的用于通过电子设备解码视频数据的方法的流程图。
图6示出根据本公开的实施方式的图1中所示出的第一电子设备的编码器模块的框图。
具体实施方式
以下公开包含与本公开中的实施方式有关的具体信息。附图和对应的详细公开是针对示例性实施方式。然而,本公开不仅限于这些示例性实施方式。本领域技术人员将想到本公开的其他变型和实施方式。
除非另外指出,否则附图中的相似或对应的元件可通过相似或对应的参考标号来被指示。附图和图示通常未按比例绘制,并且并不意图对应于实际的相对尺寸。
出于一致性和易于理解的目的,在示例性附图中,通过参考标号标识相似的特征(尽管在一些示例中未展示)。然而,不同实施方式中的特征可在其他方面有所不同,因此不应狭隘地局限于附图中所示出的内容。
本说明书使用短语“在一个实施方式中”或“在一些实施方式中”,这些短语可指代相同或不同实施方式中的一者或多者。术语“耦接”被定义为连接,不管是直接连接还是通过中间部件间接连接,并且不一定限于物理连接。术语“包括”意指“包括但不一定限于”并且具体地指示在如此描述的组合、群组、系列或等效物中的开放式包括关系或隶属关系。
出于解释而非限制的目的,阐述具体细节(诸如:功能实体、技术、协议和标准)以用于提供对所公开技术的理解。省略了对众所周知的方法、技术、系统和架构的详细描述,以免不必要的细节混淆描述。
本领域技术人员将直接认识到,本公开中描述的任何一个或多个所公开的编码功能或算法可由硬件、软件或者软件和硬件的组合来实现。所描述的功能可对应于模块,所述模块可为软件、硬件、固件或它们的任何组合。
软件实施方式可包括存储在计算机可读介质(诸如:存储器或其他类型的存储设备)上的计算机可执行指令。例如,具有通信处理能力的一个或多个微处理器或通用计算机可编程有可执行指令,并且执行一个或多个所公开的功能或算法。
微处理器或通用计算机可由专用集成电路(applications specific integratedcircuitry,ASIC)、可编程逻辑阵列和/或使用一个或多个数字信号处理器(digitalsignal processor,DSP)形成。尽管所公开的实施方式中的一些面向在计算机硬件上安装和执行的软件,但是实现为固件或硬件或硬件和软件的组合的替代实施方式也完全在本公开的范围内。计算机可读介质包括但不限于随机存取存储器(random access memory,RAM)、只读存储器(read only memory,ROM)、可擦除可编程只读存储器(erasableprogrammable read-only memory,EPROM)、电可擦除可编程只读存储器(electricallyerasable programmable read-only memory,EEPROM)、闪存存储器、光盘只读存储器(compact disc read-only memory,CD ROM)、磁盒、磁带、磁盘存储设备或能够存储计算机可读指令的任何其他等效介质。
图1示出根据本公开的实施方式的被配置为编码和解码视频数据的系统100的框图。该系统100包括第一电子设备110、第二电子设备120和通信介质130。
第一电子设备110可以为源设备,该源设备包括被配置来编码视频数据并且将所编码视频数据传输到通信介质130的任何设备。第二电子设备120可以是目的地设备,该目的地设备包括被配置为经由通信介质130接收所编码的视频数据并且解码所编码的视频数据的任何设备。
第一电子设备110可经由通信介质130与第二电子设备120有线或无线地进行通信。第一电子设备110可包括源模块112、编码器模块114和第一接口116。第二电子设备120可包括显示模块122、解码器模块124和第二接口126。第一电子设备110可以是视频编码器,并且第二电子设备120可以是视频解码器。
第一电子设备110和/或第二电子设备120可以是移动电话、平板电脑、台式计算机、笔记本电脑或其他电子设备。图1示出第一电子设备110和第二电子设备120的一个示例。第一电子设备110和第二电子设备120可包括比所示出更多或更少的部件,或者具有各种部件的不同配置。
源模块112可包括用于捕获新视频的视频捕获设备、用于存储先前捕获的视频的视频档案和/或用于从视频内容提供方接收视频的视频馈送接口。源模块112可生成基于计算机图形的数据作为源视频,或生成直播视频、存档视频和电脑生成的视频的组合作为源视频。视频捕获设备可以是电荷耦合设备(charge-coupled device,CCD)图像传感器、互补型金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)图像传感器或相机。
编码器模块114和解码器模块124各自可被实现为多种合适的编码器/解码器电路中的任一种,所述解码器/编码器电路诸如一个或多个微处理器、中央处理单元(centralprocessing unit,CPU)、图形处理单元(graphic processing unit,GPU)、片上系统(system on chip,SoC)、数字信号处理器(digital signal processor,DSP)、专用集成电路(application specific in-tegrated circuit,ASIC)、现场可编程门阵列(fieldprogrammable gate array,FPGA)、离散逻辑、软件、硬件、固件或它们的任何组合。当部分以软件实现时,设备可将用于软件的指令存储在合适的非暂时性计算机可读介质中,并且使用一个或多个处理器在硬件中执行指令以执行所公开方法。在至少一个实施方式中,编码器模块114和解码器模块124中的每一者可包括在一个或多个编码器和解码器中,其中的每一者可集成作为设备中的组合式编码器/解码器(combined encoder/decoder,CODEC)的一部分。
第一接口116和第二接口126可利用自定义协议或遵循现有标准或实际标准,包括但不限于以太网、IEEE 802.11或IEEE 802.15系列、无线USB或电信标准(包括但不限于全球移动通信系统(Global System for Mobile Communications,GSM)、码分多址(Code-Division Multiple Access,CDMA)2000、时分同步码分多址(Time Division SynchronousCode Division Multiple Access,TD-SCDMA)、全球微波接入互操作性(WorldwideInteroperability for Microwave Access,WiMAX)、第3代合作伙伴计划长期演进(ThirdGeneration Partnership Project Long-Term Evolution,3GPP-LTE)或时分长期演进(Time-Division LTE,TD-LTE))。第一接口116和第二接口126各自可包括被配置来经由通信介质130传输和/或存储兼容视频比特流并且经由通信介质130接收兼容视频比特流的任何设备。
第一接口116和第二接口126可包括使得能够将兼容视频比特流存储在存储设备上或从存储设备接收兼容视频比特流的计算机系统接口。例如,第一接口116和第二接口126可包括支持外围部件互连(Peripheral Component Interconnect,PCI)和外围部件互连高速(Peripheral Component Interconnect Express,PCIe)总线协议、专有总线协议、通用串行总线(Universal Serial Bus,USB)协议、I2C的芯片组或可用于将对等设备互连的任何其他逻辑和物理结构。
显示模块122可包括显示器,其使用液晶显示器(liquid crystal display,LCD)技术、等离子体显示器技术、有机发光二极管(organic light emitting diode,OLED)显示器技术或发光聚合物显示器(light emitting polymer display,LPD)技术,且在其他实施方式中,使用其他显示器技术。显示模块122可包括高清晰度显示器或超高清晰度显示器。
图2示出根据本公开的实施方式的图1中所示出的第二电子设备的解码器模块124的框图。解码器模块124包括熵解码器(例如,熵解码单元2241)、预测处理器(例如,预测处理单元2242)、逆量化/逆变换处理器(例如,逆量化/逆变换单元2243)、加法器(例如,加法器2244)、滤波器(例如,滤波单元2245)和解码图片缓冲器(例如,解码图片缓冲器2246)。预测处理单元2242还包括帧内预测处理器(例如,帧内预测单元22421)和帧间预测处理器(例如,帧间预测单元22422)。解码器模块124接收比特流并且对比特流进行解码以输出所解码视频。
熵解码单元2241可从图1中的第二接口126接收包括多个语法元素的比特流,并且对比特流执行解析操作以从比特流中提取语法元素。作为解析操作的一部分,熵解码单元2241可对比特流进行熵解码以生成量化的变换系数、量化参数、变换数据、运动向量、帧内模式、分区信息和其他语法信息。
熵解码单元2241可执行上下文自适应可变长度编码(context adaptivevariable length coding,CAVLC)、上下文自适应二进制算术编码(context adaptivebinary arithmetic coding,CABAC)、基于语法的上下文自适应二进制算术编码(syntax-based context-adaptive binary arithmetic coding,SBAC)、概率区间分区熵(probability interval partitioning entropy,PIPE)编码或另一种熵编码技术,以生成量化的变换系数。熵编码单元2241可将量化的变换系数、量化参数和变换数据提供到逆量化/逆变换单元2243,并且将运动向量、帧内模式、分区信息和其他语法信息提供到预测处理单元2242。
预测处理单元2242可从熵编码单元2241接收语法元素,诸如运动向量、帧内模式、分区信息和其他语法信息。预测处理单元2242可接收包括分区信息的语法元素,并且根据分区信息划分图像帧。
图像帧中的每一个可根据分区信息划分成至少一个图像块。至少一个图像块可包括用于重建多个亮度样本的亮度块和用于重建多个色度样本的至少一个色度块。亮度块和至少一个色度块可进一步划分以生成宏块、编码树单元(coding tree units,CTUs)、编码块(coding blocks,CBs)、它们的细分单元和/或另一等效编码单元。
在解码过程期间,预测处理单元2242可接收预测数据,所述预测数据包括用于图像帧中的特定一个图像帧的当前图像块的帧内模式或运动向量。当前图像块可以是特定图像帧中的亮度块或者色度块中的一个。
帧内预测单元22421可基于与帧内模式相关的语法元素来相对于与当前块单元在同一帧中的一个或多个相邻块对当前块单元执行帧内预测编码,以便生成预测块。帧内模式可指定从当前帧内的相邻块选择的参考样本的位置。在至少一个实施方式中,当色度分量通过预测处理单元2242被重建时,帧内预测单元22421可基于当前块单元的多个亮度分量来重建当前块单元的多个色度分量。
当当前块的亮度分量通过预测处理单元2242被重建时,帧内预测单元22421可基于当前块单元的多个亮度分量来重建当前块单元的多个色度分量。
帧间预测单元22422可基于与运动向量相关的语法元素来相对于一个或多个参考图像块中的一个或多个块对当前块单元执行帧间预测编码,以便生成预测块。运动向量可指示当前图像块内的当前块单元相对于参考图像块内的参考块单元的位移。参考块单元是确定为紧密地匹配当前块单元的块。帧间预测单元22422可接收存储在解码图片缓冲器2246中的参考图像块,并且基于所接收的参考图像块来重建当前块单元。
逆量化/逆变换单元2243可应用逆量化和逆变换来在像素域中重建残余块。逆量化/逆变换单元2243可对残余量化变换系数应用逆量化以生成残余变换系数,然后对残余变换系数应用逆变换以在像素域中生成残余块。
逆变换可通过变换过程反向应用,所述变换过程诸如离散余弦变换(discretecosine transform,DCT)、离散正弦变换(discrete sine transform,DST)、自适应多重变换(adaptive multiple transform,AMT)、模式相关不可分二次变换(mode-dependentnon-separable secondary transform,MDNSST)、超立方体givens变换(hypercube-givenstransform,HyGT)、信号相关变换、Karhunen-Loéve变换(Karhunen-Loéve transform,KLT)、小波变换、整数变换、子带变换或概念上类似的变换。逆变换可将残余信息从变换域诸如频域转换回像素域。逆量化的程度可通过调整量化参数来被修改。
加法器2244将重建残余块添加到从预测处理单元2242提供的预测块,以产生重建块。
滤波单元2245可包括去块滤波器、样本自适应偏移(sample adaptive offset,SAO)滤波器、双边滤波器和/或自适应环路滤波器(adaptive loop filter,ALF)以从重建块去除块效应。除了去块滤波器、SAO滤波器、双边滤波器和ALF之外,还可使用另外的滤波器(环路内或环路后)。为简洁起见,此类滤波器未被明确示出,但可对加法器2244的输出进行滤波。在滤波单元2245对特定图像帧的重建块执行滤波过程之后,滤波单元2245可将解码视频输出到显示模块122或其他视频接收单元。
解码图片缓冲器2246可以是参考图片存储器,其存储参考块以供预测处理单元2242在解码比特流(以帧间编码模式)时使用。解码图片缓冲器2246可通过多种存储器设备中的任一种来被形成,所述存储器设备诸如动态随机存取存储器(dynamic random-accessmemory,DRAM)(包括同步DRAM(synchronous DRAM,SDRAM))、磁阻RAM(magneto-resistiveRAM,MRAM)、电阻RAM(resistive RAM,RRAM))或其他类型的存储器设备。解码图片缓冲器2246可与解码器模块124的其他部件在芯片上或相对于那些部件在芯片外。
图3示出根据本公开的实施方式的用于通过电子设备解码视频数据的方法300的流程图。方法300仅是示例,因为存在多种方法来执行解码视频数据。
方法300可使用图1和图2中所示出的配置来执行,并且针对方法300参考这些图中的各种元件。图3中所示出的每个框可表示所执行的一个或多个过程、方法或子例程。
图3中的框的顺序仅是说明性并且可改变。在不脱离本公开的情况下,可添加另外的框或可使用更少的框。
在框310处,解码器模块124接收视频数据,该视频数据可以是比特流。
参考图1和图2,第二电子设备120可以经由第二接口126从编码器诸如第一电子设备110或者其他视频提供方接收比特流。第二接口126可将比特流提供到解码器模块124。
熵解码单元2241可以解码比特流用以确定用于多个视频图像的多个预测指示和多个分区指示。并且,解码器模块124还可以基于预测指示和分区指示来重建多个视频图像。预测指示和分区指示可以包括多个标志和多个索引。
在框320处,解码器模块124从视频数据确定对应于一个或者多个图像帧的仿射启用标志。进一步参考图1和图2,解码器模块124可以从比特流确定一个或者多个图像帧并且确定对应于一个或者多个图像帧的第一参数集。
第一参数集可以包括多个第一预测指示和多个第一分区指示。第一参数集可以是:视频参数集(video parameter set,VPS)、序列参数集(sequence parameter set,SPS)、图片参数集(picture parameter set,PPS)和图片标头(picture header,PH)中的一者。例如:当仿射启用标志被包含于SPS时,仿射启用标志可以是标志sps_affine_enabled_flag。当第一参数集是SPS时,一个或者多个图像帧中的每一个基于SPS来被重建。
解码器模块124可以从比特流的第一参数集中确定对应于一个或者多个图像帧的仿射启用标志。仿射启用标志被用于确定是否为一个或者多个图像帧启用基于仿射模型的运动补偿。
比特流中的基于块的语法还可以包括基于块的仿射标志用于当仿射启用标志等于1时,确认从一个或者多个图像帧中的一个划分的图像块是否使用基于仿射模型的运动补偿。基于仿射模型的运动补偿可以包括仿射合并预测(具有从多个所继承的仿射合并候选、多个所构造的仿射合并候选和至少一个零运动矢量(MV)候选中选择的多个仿射合并候选)以及仿射高级运动矢量预测(affine advanced motion vector prediction,AMVP)(具有从多个所继承的仿射AMVP候选、多个所构造的仿射AMVP候选、从相邻块中确定的平移MV候选以及至少一个零MV候选中选择的多个仿射AMVP候选)。在仿射合并预测中,合并索引可以被包含于比特流中用于从合并列表中选择预测候选以生成预测结果。另外,在仿射AMVP预测中,至少两个控制点运动矢量预测可以被用于生成预测结果。
解码器模块124还可以从比特流的第一参数集中确定对应于一个或者多个图像帧的预测模式启用标志。预测模式启用标志和仿射启用标志对应于一个或者多个图像帧。预测模式启用标志可以被包含于VPS、SPS、PPS和PH中的一者。当仿射启用标志被包含于SPS中时,预测模式启用标志也被包含于SPS中。与多个预测模式中的特定的一个相对应的预测模式启用标志可以被用于确定是否为一个或者多个图像帧启用特定预测模式。
特定预测模式可以是基于子块的时间运动矢量预测(MVP)(subblock-basedtemporal motion vector prediction,sbTMVP)。因此,预测模式启用标志可以是sbTMVP启用标志。sbTMVP启用标志可以被用于确定具有多个基于子块的时间运动矢量预测的基于子块的时间MVP模式是否在一个或者多个图像帧中被启用。当仿射启用标志被包含于SPS中时,sbTMVP启用标志可以是被包含于SPS中的标志sps_sbtmvp_enabled_flag。
在框330处,解码器模块124确定仿射启用标志是否为真。当解码器模块124确定仿射启用标志为真时,方法300可进行至框340。当解码器模块124确定仿射启用标志为假时,方法300可进行至框350。
当仿射启用标志等于1时,解码器模块124确定仿射启用标记为真。当仿射启用标志等于0时,解码器模块124确定仿射启用标记为假。
当仿射启用标志被包含于VPS中时,仿射启用标志是标志vps_affine_enabled_flag。当仿射启用标志被包含于SPS中时,仿射启用标志是标志sps_affine_enabled_flag。当仿射启用标志被包含于PPS中时,仿射启用标志是标志pps_affine_enabled_flag。当仿射启用标志被包含于PH中时,仿射启用标志是标志ph_affine_enabled_flag。
在框340处,解码器模块124从视频数据中确定对应于一个或者多个图像帧的最大索引。进一步参考图1和图2,当仿射启用标志为真时,解码器模块124可以从对应于一个或者多个图像帧的第一参数集中确定最大索引。因此,最大索引也对应于一个或多个图像帧。当仿射启用标志被包含于SPS中时,最大索引被包含于SPS中。
当仿射启用标志为真时,最大索引被用于计算零个以上的基于子块的合并MVP候选的最大数量。最大数量可以被表示为MaxNumSubblockMergeCand。当最大索引被包含于SPS中时,最大索引是索引sps_N_minus_max_num_subblock_merge_cand。数量N是第一整数。当最大索引被包含于SPS中,并且数量N等于5时,最大索引是索引sps_five_minus_max_num_subblock_merge_cand。当最大索引被包含于PPS中,并且数量N等于6时,最大索引是索引pps_six_minus_max_num_subblock_merge_cand。
最大索引的索引值可以是索引范围。索引范围可以被预定义为从P到N-K1。数量P是小于数量N的第二整数,并且数量K1是小于数量N的第三整数。数量P和数量K1可以被预定义于第一电子设备110和第二电子设备120中。当最大索引是索引sps_five_minus_max_num_subblock_merge_cand时,索引范围可以被预定义为从P到5-K1。因此,当数量P和K1等于0时,索引范围可以被预定义为从0到5。另外,当数量P等于0,并且数量K1等于1时,索引范围可以被预定义为从0到4。
索引范围可以被预定义为从P到N-K2。变量K2的值等于小于数量N的第四整数。数量P可以被预定义于第一电子设备110和第二电子设备120中,并且变量K2的值可以从比特流中被确定。当最大索引是索引sps_five_minus_max_num_subblock_merge_cand时,索引范围可以被预定义为从P到5-K2。因此,当数量P等于0时,索引范围可以被预定义为从0到5-K2。
变量K2可以通过包含于比特流的第一参数集的标志来被确定。因此,当仿射启用标志和最大索引被包含于SPS中时,用于确定变量K2的标志也被包含于SPS中。用于确定变量K2的标志可以是预测模式启用标志。因此,索引范围可以基于预测模式启用标志来被确定。
例如:当数量P等于0,并且变量K2等于预测模式启用标志的标志值时,最大索引的索引值是在0到N-K2的索引范围内。当预测模式启用标志等于1时,最大索引的索引值是在0到N-1的索引范围内。当预测模式启用标志等于0时,最大索引的索引值是在0到N的索引范围内。数量N可以等于5。
预测模式启用标志可以是被包含于SPS中的sbTMVP启用标志。因此,当数量P等于0,并且sbTMVP启用标志等于1时,索引sps_five_minus_max_num_subblock_merge_cand的索引范围可以被预定义为从0到4。另外,当数量P等于0,并且sbTMVP启用标志等于0时,索引sps_five_minus_max_num_subblock_merge_cand的索引范围可以被预定义为从0到5。
在框350处,解码器模块124针对一个或者多个图像帧,基于预测模式启用标志和时间MVP(temporal MVP,TMVP)标志,确定零个以上的基于子块的合并MVP候选的最大数量,而不从视频数据中确定最大索引。
当仿射启用标志为假时,在不从视频数据中确定最大索引的情况下,最大数量基于预测模式启用标志和TMVP标志来被计算。当仿射启用标志被包含于SPS中时,预测模式启用标志可以是被包含于SPS中的sbTMVP启用标志sps_sbtmvp_enabled_flag。
TMVP标志可以从另一级别参数集中被确定。例如:当TMVP标志被包含于对应于至少一个或者多个图像帧中的一个的图片标头中时,TMVP标志可以是标志ph_temporal_mvp_enabled_flag。因此,TMVP标志可以对应于至少一个或者多个图像帧中的一个。至少一个或者多个图像帧中的一个是基于对应于至少一个或者多个图像帧中的一个的图片标头来被重建。
当仿射启用标志为假时,最大索引不能从视频数据中被解析。然而,当仿射启用标志为假时,可以推断出最大索引等于M。数量M是第一电子设备110和第二电子设备120中的所预定义的整数。例如:当仿射启用标志为假时,可以推断出最大索引等于0。另外,当仿射启用标志为假时,可以推断出最大索引等于5。
预测模式启用标志可以等于1或者0,并且TMVP标志可以等于1或者0。当仿射启用标志为假时,最大数量MaxNumSubblockMergeCand可以等于“预测模式启用标志&&TMVP标志”。
逻辑运算符号“&&”是两个布尔逻辑(Boolean logical)“and”的值。因此,当仿射启用标志为假,并且预测模式启用标志和TMVP标志中的每一个等于1时,最大数量MaxNumSubblockMergeCand可以等于1。换而言之,当仿射启用标志为假,并且预测模式启用标志和TMVP标志中的至少一个等于0时,最大数量MaxNumSubblockMergeCand可以等于0。
因此,当仿射启用标志为假,并且预测模式启用标志为sbTMVP启用标志时,最大数量MaxNumSubblockMergeCand可以被推导为如下:MaxNumSubblockMergeCand=sps_sbtmvp_enabled_flag&&ph_temporal_mvp_enable_flag
在框360处,解码器模块124基于最大索引来确定最大数量。当预测模式启用标志为真时,解码器模块124可以针对一个或者多个图像帧确定零个以上的基于子块的合并MVP候选的最大数量。
当仿射启用标记为真时,最大数量可以通过从数量N中减去最大索引来被确定。因此,当仿射启用标记为真,并且数量N等于5时,最大数量可以通过从5中减去最大索引而被计算。换而言之,当仿射启用标志为真,并且数量N等于5时,最大数量MaxNumSubblockMergeCand可以被推导为如下:
MaxNumSubblockMergeCand=5-sps_five_minus_max_num_subblock_merge_cand
当仿射启用标志为真,最大索引的索引值可以在P到N-K1的索引范围内,并且最大数量可以通过从数量N减去最大索引来被计算。因此,最大数量的值可以是在N-(N-K1)到N-P的值范围(例如:K1到N-P的值范围)内。当最大索引是索引sps_five_minus_max_num_subblock_merge_cand时,索引范围可以被预定义为从P到5-K1,并且,值范围可以被预定义为从K1到5-P。
因此,当数量P和K1等于0时,索引范围和值范围可以被预定义为从0到5。另外,当数量P等于0,并且数量K1等于1时,索引范围可以被预定义为从0到4,并且值范围可以被预定义为从1到5。
当仿射启用标志为真时,最大索引的索引值可以是在P到N-K2的索引范围内,并且最大数量可以通过从数量N减去最大索引来计算。因此,最大数量的值可以是在N-(N-K2)到N-P的值范围(例如:K2到N-P的值范围)内。当数量P等于0并且变量K2等于预测模式启用标志的标志值时,索引范围可以被预定义为从0到N-预测模式启用标志的标志值,并且值范围可以被预定义为从预测模式启用标志的标志值到N。
因此,当数量N等于5,并且预测模式启用标志为标志sps_sbtmvp_enabled_flag时,最大索引sps_five_minus_max_num_subblock_merge_cand的索引值可以在0到5-标志sps_sbtmvp_enabled_flag的索引范围内,并且最大数量MaxNumSubblockMergeCand可以在标志sps_sbtmvp_enabled_flag的值到5的值范围内。
因此,当数量P和标志sps_sbtmvp_enabled_flag等于0时,索引范围和值范围可以被预定义为从0到5。另外,当数量P等于0,并且标志sps_sbtmvp_enabled_flag等于1时,索引范围可以被预定义为从0到4,并且值范围可以被预定义为从1到5。
参考图3中的框330到360。最大数量MaxNumSubblockMergeCand可以被推导为如下:
if(sps_affine_enabled_flag)
MaxNumSubblockMergeCand=5-sps_five_minus_max_num_subblock_merge_cand
else
MaxNumSubblockMergeCand
=sps_sbtmvp_enabled_flag&&ph_temporal_mvp_enabled_flag
解码器模块124可以确定最大数量是否被包含于值范围内。当解码器模块124确定最大数量被排除在值范围之外时,解码器模块124可以确定视频数据不符合解码器模块124。
因此,解码器模块124可以输出用于一个或者多个图像帧的错误信号。换而言之,当解码器模块124确定最大数量被包含于值范围内时,解码器模块124可以确定视频数据符合解码器模块124。因此,解码器模块124可以解码比特流以重建一个或者多个图像帧。
当仿射启用标志为真时,解码器模块124可以确定最大索引是否被包含于索引范围内。当解码器模块124确定最大索引被排除在索引范围之外时,解码器模块124可以确定视频数据不符合解码器模块124。因此,解码器模块124可以输出用于一个或者多个图像帧的错误信号。
以上确定可以是视频编码标准(诸如:通用视频编码(versatile video coding,VVC))中的比特流一致性要求之一。换句话说,当解码器模块124确定最大索引被包含于索引范围内时,解码器模块124可以确定视频数据符合解码器模块124。因此,解码器模块124可以解码比特流以重建一个或者多个图像帧。
在框370处,解码器模块124基于零个以上的基于子块的合并MVP候选的最大数量来重建一个或者多个图像帧。进一步参考图1和图2,解码器模块124可以从包括零个以上的基于子块的合并MVP候选中选择用于一个或者多个图像帧中的多个图像块的每一个的预测模式,并且基于预测模式确定多个预测块。
用于一个或者多个图像帧中的每个图像块的零个以上的基于子块的合并MVP候选数量可以受最大数量限制。因此,解码器模块124基于受最大数量限制的零个以上的基于子块的合并MVP候选来重建一个或者多个图像帧。
零个以上的基于子块的合并MVP候选可以包括多个sbTMVP候选、多个仿射合并预测候选以及至少一个零填充候选中的零个或者多个。解码器模块124可以针对图像块中的每一个从比特流中确定多个残余分量,并且将残余分量添加到对应的一个预测块中以重建图像块。解码器模块124可以重建所有图像帧以重建视频图像。
在视频编码标准诸如高效视频编码(high efficiency video coding,HEVC)和VVC中,包括基于子块的合并MVP候选的基于子块的合并模式的多个第一搜索候选可以比仿射AMVP预测的多个第二搜索候选更有效。然而,基于子块的合并模式的第一搜索候选的数量可以受最大数量MaxNumSubblockMergeCand限制。因此,由于编码器的复杂性,当基于仿射模式的运动补偿被启用时,最大数量MaxNumSubblockMergeCand可以被设置以确保基于子块的合并模式不会被最大数量禁用。因此,数量K1可以设置为大于0,由此,最大数量MaxNumSubblockMergeCand也将大于0。
另外,当sbTMVP启用标志等于1时,变量K2的值被确定为大于0并且最大数量MaxNumSubblockMergeCand也大于0。这里将不会存在最大数量等于0的条件来禁用基于子块的合并模式,因此,最大索引的信令将不会无用或者被浪费。
为了降低复杂度,当仿射启用标志为真时,基于子块的合并模式可以被使用。当仿射启用标志为真时,从sbTMVP启用标志中确定的变量K2的值可以等于1,以改变最大数量MaxNumSubblockMergeCand的值范围。然而,当基于子块的合并模式已经被禁用时,不需要针对基于子块的合并MVP候选来保留候选者。因此,当基于子块的合并模式被禁用,从sbTMVP启用标志中确定的变量K2的值可以等于0以保持值范围不变。
图4示出根据本公开的实施方式的用于通过电子设备解码视频数据的方法400的流程图。方法400仅是示例,因为存在多种方法来执行解码视频数据。
方法400可使用图1和图2中所示出的配置来执行,并且针对方法400参考这些图中的各种元件。图4中所示出的每个框可表示所执行的一个或多个过程、方法或子例程。
图4中的框的顺序仅是说明性并且可改变。在不脱离本公开的情况下,可添加另外的框或可使用更少的框。
在框410处,解码器模块124接收视频数据,该视频数据可以是比特流。
参考图1和图2,第二电子设备120可以经由第二接口126从编码器诸如第一电子设备110或者其他视频提供方接收比特流。第二接口126可将比特流提供到解码器模块124。
熵解码单元2241可以解码比特流用以确定用于多个视频图像的多个预测指示和多个分区指示。并且,解码器模块124还可以基于预测指示和分区指示来重建多个视频图像。预测指示和分区指示可以包括多个标志和多个索引。
在框420处,解码器模块124从视频数据确定对应于一个或者多个图像帧的仿射启用标志和预测模式启用标志。进一步参考图1和图2,解码器模块124可以从比特流确定一个或者多个图像帧并且确定对应于一个或者多个图像帧的第一参数集。
第一参数集可以包括多个第一预测指示和多个第一分区指示。第一参数集可以是:视频参数集(video parameter set,VPS)、序列参数集(sequence parameter set,SPS)、图片参数集(picture parameter set,PPS)和图片标头(picture header,PH)中的一者。例如:当仿射启用标志被包含于SPS时,仿射启用标志可以是标志sps_affine_enabled_flag。当第一参数集是SPS时,一个或者多个图像帧中的每一个基于SPS来被重建。
解码器模块124可以从比特流的第一参数集中确定对应于一个或者多个图像帧的仿射启用标志。仿射启用标志被用于确定是否为一个或者多个图像帧启用基于仿射模型的运动补偿。
解码器模块124还可以从比特流的第一参数集中确定对应于一个或者多个图像帧的预测模式启用标志。与多个预测模式中的特定一个相对应的预测模式启用标志可以被用于确定是否为一个或者多个图像帧启用特定预测模式。特定预测模式可以是基于子块的时间运动矢量预测(MVP)(sbTMVP)模式。
因此,预测模式启用标志可以是sbTMVP启用标志。sbTMVP启用标志可以被用于确定具有多个基于子块的时间运动矢量预测的sbTMVP模式是否在一个或者多个图像帧中被启用。当仿射启用标志被包含于SPS中时,sbTMVP启用标志可以是被包含于SPS中的标志sps_sbtmvp_enabled_flag。
在框430处,解码器模块124确定仿射启用标志是否为真。当解码器模块124确定仿射启用标志为真时,方法400可进行至框440。当解码器模块124确定仿射启用标志为假时,方法400可进行至框450。
当仿射启用标志等于1时,解码器模块124确定仿射启用标记为真。当仿射启用标志等于0时,解码器模块124确定仿射启用标记为假。
当仿射启用标志被包含于VPS中时,仿射启用标志是标志vps_affine_enabled_flag。当仿射启用标志被包含于SPS中时,仿射启用标志是标志sps_affine_enabled_flag。当仿射启用标志被包含于PPS中时,仿射启用标志是标志pps_affine_enabled_flag。当仿射启用标志被包含于PH中时,仿射启用标志是标志ph_affine_enabled_flag。
在框440处,解码器模块124从视频数据中确定对应于一个或者多个图像帧的最大索引。进一步参考图1和图2,当仿射启用标志为真时,解码器模块124可以从对应于一个或者多个图像帧的第一参数集中确定最大索引。因此,最大索引也对应于一个或多个图像帧。当仿射启用标志被包含于SPS中时,最大索引被包含于SPS中。
当仿射启用标志为真时,最大索引被用于计算零个以上的基于子块的合并MVP候选的最大数量。最大数量可以被表示为MaxNumSubblockMergeCand。当最大索引被包含于SPS中时,最大索引是索引sps_N_minus_max_num_subblock_merge_cand。数量N是第一整数。
当最大索引被包含于SPS中,并且数量N等于5时,最大索引是索引sps_five_minus_max_num_subblock_merge_cand。当最大索引被包含于PPS中,并且数量N等于6时,最大索引是索引pps_six_minus_max_num_subblock_merge_cand。
最大索引的索引值可以是索引范围。索引范围可以被预定义为从0到N。当最大索引是索引sps_five_minus_max_num_subblock_merge_cand时,索引范围可以被预定义为从0到5。
在框450处,解码器模块124针对一个或者多个图像帧,基于预测模式启用标志和时间MVP(TMVP)标志,确定零个以上的基于子块的合并MVP候选的最大数量,而不从视频数据中确定最大索引。
当仿射启用标志为假时,在不从视频数据中确定最大索引的情况下,最大数量基于预测模式启用标志和TMVP标志来被计算。预测模式启用标志可以是sbTMVP启用标志。因此,当仿射启用标志被包含于SPS中时,预测模式启用标志可以是被包含于SPS中的sbTMVP启用标志sps_sbtmvp_enabled_flag。TMVP标志可以从另一级别参数集中被确定。
例如:当TMVP标志被包含于对应于至少一个或者多个图像帧中的一个的图片标头中时,TMVP标志可以是标志ph_temporal_mvp_enabled_flag。因此,TMVP标志可以对应于至少一个或者多个图像帧中的一个。至少一个或者多个图像帧中的一个是基于对应于至少一个或者多个图像帧中的一个的图片标头来被重建。
当仿射启用标志为假时,最大索引不能从视频数据中被解析。然而,当仿射启用标志为假时,可以推断出最大索引等于M。数量M是第一电子设备110和第二电子设备120中的所预定义的整数。
例如:当仿射启用标志为假时,可以推断出最大索引等于0。另外,当仿射启用标志为假时,可以推断出最大索引等于5。
预测模式启用标志可以等于1或者0,并且TMVP标志可以等于1或者0。当仿射启用标志为假时,最大数量MaxNumSubblockMergeCand可以等于“预测模式启用标志&&TMVP标志”。逻辑运算符号“&&”是两个布尔逻辑(Boolean logical)“and”的值。
因此,当仿射启用标志为假,并且预测模式启用标志和TMVP标志中的每一个等于1时,最大数量MaxNumSubblockMergeCand可以等于1。换而言之,当仿射启用标志为假,并且预测模式启用标志和TMVP标志中的至少一个等于0时,最大数量MaxNumSubblockMergeCand可以等于0。
因此,当仿射启用标志为假,并且预测模式启用标志为sbTMVP启用标志时,最大数量MaxNumSubblockMergeCand可以被推导为如下:
MaxNumSubblockMergeCand=sps_sbtmvp_enabled_flag&&ph_temporal_mvp_enable_flag
在框460处,解码器模块124基于最大索引和预测模式启用标志来确定最大数量。当仿射启用标志为真时,可能有一个以上的方程式用于推导出最大数量。解码器模块124可以基于最大索引和预测模式启用标志来选择一个以上方程式中的一个。
例如:当最大索引等于N并且预测模式启用标志为真时,第一方程式可以被选择以确定最大数量等于TMVP标志的标志值。另外,当最大索引不同于N或者预测模式启用标志为假时,第二方程式可以被选择以确定最大数量可以通过从数量N中减去最大索引来计算。换而言之,最大数量MaxNumSubblockMergeCand可以被推导为如下:
MaxNumSubblockMergeCand
=(maximum index==N&&prediction mode enabled flag)?TMVP flag:N-maximum index
例如:当数量N等于5,预测模式启用标志为标志sps_sbtmvp_enabled_flag以及TMVP标志为标志ph_temporal_mvp_enabled_flag时,最大索引是索引sps_five_minus_max_num_subblock_merge_cand时,最大索引是索引sps_five_minus_max_num_subblock_merge_cand。因此,最大数量MaxNumSubblockMergeCand可以被推导为如下:
MaxNumSubblockMergeCand
=(sps_five_minus_max_num_subblock_merge_cand==5&&sps_sbtmvp_enabled_flag)?
ph_temporal_mvp_enabled_flag:(5-sps_five_minus_max_num_subblock_merge_cand)
当解码器模块124使用第一方程式和第二方程式以确定最大数量时,针对不同条件的最大数量可以如表1所示。
表1
Figure BDA0003871659420000181
当最大索引等于N,预测模式启用标志为帧以及TMVP标志为帧时,第三方程式被选择以确定最大数量等于“预测模式启用标志&&TMVP标志”。另外,当最大索引不同于N,预测模式启用标志为假或者TMVP标志为假时,第四方程式被选择以确定最大数量是通过从数量N减去最大索引来计算。换而言之,最大数量MaxNumSubblockMergeCand可以被推导为如下:
MaxNumSubblockMergeCand=(maximum index==N&&prediction mode enabledflag&&TMVP flag)?(prediction
mode enabled flag&&TMVP flag):(N-maximum index)
例如:当数量N等于5,预测模式启用标志为标志sps_sbtmvp_enabled_flag以及TMVP标志为标志ph_temporal_mvp_enabled_flag时,最大索引是索引sps_five_minus_max_num_subblock_merge_cand。因此,最大数量MaxNumSubblockMergeCand可以被推导为如下:
MaxNumSubblockMergeCand=(sps_five_minus_max_num_subblock_merge_cand==5&&sps_sbtmvp_enabled_flag&&
ph_temporal_mvp_enabled_flag)?(sps_sbtmvp_enabled_flag&&
ph_temporal_mvp_enabled_flag):(5-sps_five_minus_max_num_subblock_merge_cand)
当解码器模块124使用第三方程式和第四方程式以确定最大数量时,针对不同条件的最大数量可以如表2所示。
表2
根据表1和表2,尽管包括第一方程式和第二方程式的第一方程式不同于包
Figure BDA0003871659420000191
括第三方程式和第四方程式的第二方程式,通过第一方程式和第二方程式来针对不同条件所计算的最大数量和通过第三方程式和第四方程式来针对不同条件所计算的最大数量相同。
参考图4中的框430至460,最大数量MaxNumSubblockMergeCand可以被推导为如下:
if(sps_affine_enabled_flag)
MaxNumSubblockMergeCand
=(sps_five_minus_max_num_subblock_merge_cand==5&&
sps_sbtmvp_enabled_flag&&ph_temporal_mvp_enabled_flag)?
(sps_sbtmvp_enabled_flag&&ph_temporal_mvp_enabled_flag):
(5-sps_five_minus_max_num_subblock_merge_cand)
else
MaxNumSubblockMergeCand
=sps_sbtmvp_enabled_flag&&ph_temporal_mvp_enabled_flag
关于用于推导出最大数量MaxNumSubblockMergeCand的运算符号,可以应用以下运算符号的定义:
x&&y x和y的布尔逻辑“and”
x?y:z如果x为真或者不等于0,则计算为y的值,否者计算为z的值
== 等于
解码器模块124可以确定最大数量是否被包含于值范围内。当解码器模块124确定最大数量不在值范围内时,解码器模块124可以确定视频数据不符合解码器模块124。
因此,解码器模块124可以输出用于一个或者多个图像帧的错误信号。换而言之,当解码器模块124确定最大数量被包含于值范围内时,解码器模块124可以确定视频数据符合解码器模块124。因此,解码器模块124可以解码比特流以重建一个或者多个图像帧。
当仿射启用标志为真时,解码器模块124可以确定最大索引是否被包含于索引范围内。当解码器模块124确定最大索引不在索引范围内时,解码器模块124可以确定视频数据不符合解码器模块124。因此,解码器模块124可以输出用于一个或者多个图像帧的错误信号。
以上确定可以是视频编码标准(诸如:通用视频编码(VVC))中的比特流一致性要求之一。换句话说,当解码器模块124确定最大索引被包含于索引范围内时,解码器模块124可以确定视频数据符合解码器模块124。因此,解码器模块124可以解码比特流以重建一个或者多个图像帧。
在框470处,解码器模块124基于零个以上的基于子块的合并MVP候选的最大数量来重建一个或者多个图像帧。进一步参考图1和图2,解码器模块124可以从包括零个以上的基于子块的合并MVP候选中选择用于一个或者多个图像帧中的多个图像块的每一个的预测模式,并且基于预测模式确定多个预测块。用于一个或者多个图像帧中的每个图像块的零个以上的基于子块的合并MVP候选数量可以受最大数量限制。因此,解码器模块124基于受最大数量限制的零个以上的基于子块的合并MVP候选来重建一个或者多个图像帧。
零个以上的基于子块的合并MVP候选可以包括多个sbTMVP候选、多个仿射合并预测候选以及至少一个零填充候选中的零个或者多个。解码器模块124可以针对图像块中的每一个从比特流中确定多个残余分量,并且将残余分量添加到对应的一个预测块中以重建图像块。解码器模块124可以重建所有图像帧以重建视频图像。
在视频编码标准诸如高效视频编码(HEVC)和VVC中,包括基于子块的合并MVP候选的基于子块的合并模式的多个第一搜索候选可以比仿射AMVP预测的多个第二搜索候选更有效。然而,基于子块的合并模式的第一搜索候选的数量可以受最大数量MaxNumSubblockMergeCand限制。
因此,由于编码器的复杂性,当仿射启用标志、sbTMVP启用标志以及TMVP启用标志为真时,最大数量MaxNumSubblockMergeCand可以被设置以确保基于子块的合并模式不会被最大数量禁用。因此,当仿射启用标志、sbTMVP启用标志以及TMVP启用标志等于1时,最大数量将比1大,以启用基于子块的合并模式。
图5示出根据本公开的实施方式的用于通过电子设备解码视频数据的方法500的流程图。方法500仅是示例,因为存在多种方法来执行解码视频数据。
方法500可使用图1和图2中所示出的配置来执行,并且针对方法500参考这些图中的各种元件。图5中所示出的每个框可表示所执行的一个或多个过程、方法或子例程。
图5中的框的顺序仅是说明性并且可改变。在不脱离本公开的情况下,可添加另外的框或可使用更少的框。
在框510处,解码器模块124接收视频数据,该视频数据可以是比特流。参考图1和图2,第二电子设备120可以经由第二接口126从编码器诸如第一电子设备110或者其他视频提供方接收比特流。第二接口126可将比特流提供到解码器模块124。
熵解码单元2241可以解码比特流用以确定用于多个视频图像的多个预测指示和多个分区指示。并且,解码器模块124还可以基于预测指示和分区指示来重建多个视频图像。预测指示和分区指示可以包括多个标志和多个索引。
在框520处,解码器模块124从视频数据确定对应于一个或者多个图像帧的仿射启用标志和预测模式启用标志。进一步参考图1和图2,解码器模块124可以从比特流确定一个或者多个图像帧并且确定对应于一个或者多个图像帧的第一参数集。
第一参数集可以包括多个第一预测指示和多个第一分区指示。第一参数集可以是:视频参数集(VPS)、序列参数集(SPS)、图片参数集(PPS)和图片标头(PH)中的一者。例如:当仿射启用标志被包含于SPS时,仿射启用标志可以是标志sps_affine_enabled_flag。当第一参数集是SPS时,一个或者多个图像帧中的每一个基于SPS来被重建。
解码器模块124可以从比特流的第一参数集中确定对应于一个或者多个图像帧的仿射启用标志。仿射启用标志被用于确定是否为一个或者多个图像帧启用基于仿射模型的运动补偿。
解码器模块124还可以从比特流的第一参数集中确定对应于一个或者多个图像帧的预测模式启用标志。与多个预测模式中的第一个相对应的预测模式启用标志可以被用于确定是否为一个或者多个图像帧启用第一预测模式。第一预测模式可以是基于子块的时间运动矢量预测(MVP)(sbTMVP)模式。
因此,预测模式启用标志可以是sbTMVP启用标志。sbTMVP启用标志可以被用于确定具有多个基于子块的时间运动矢量预测的sbTMVP模式是否在一个或者多个图像帧中被启用。当仿射启用标志被包含于SPS中时,sbTMVP启用标志可以是被包含于SPS中的标志sps_sbtmvp_enabled_flag。
解码器模块124还可以从比特流的第一参数集中确定对应于一个或者多个图像帧的最大索引。对应于多个预测模式中的第二个的最大缩影可以被用于一个或者多个图像帧中,以计算对应于第二预测模式的零个或者多个预测候选的最大数量。第二预测模式可以是基于子块的合并MVP模式。因此,当仿射启用标志被包含于SPS中时,最大索引可以是被包含于SPS中的索引sps_N_minus_max_num_subblock_merge_cand。数量N是第一整数。当最大索引被包含于SPS中,并且数量N等于5时,最大索引是索引sps_five_minus_max_num_subblock_merge_cand。基于子块的合并MVP模式可以包括具有多个sbTMVP候选、多个仿射合并预测候选和至少一个零填充候选的中的零个或多个的零个以上的基于子块的合并MVP候选。
在框530处,解码器模块124确定仿射启用标志是否为真。当解码器模块124确定仿射启用标志为假时,方法500可进行至框540。当解码器模块124确定仿射启用标志为真时,方法500可进行至框550。
当仿射启用标志等于1时,解码器模块124确定仿射启用标记为真。当仿射启用标志等于0时,解码器模块124确定仿射启用标记为假。
当仿射启用标志被包含于VPS中时,仿射启用标志是标志vps_affine_enabled_flag。当仿射启用标志被包含于SPS中时,仿射启用标志是标志sps_affine_enabled_flag。当仿射启用标志被包含于PPS中时,仿射启用标志是标志pps_affine_enabled_flag。当仿射启用标志被包含于PH中时,仿射启用标志是标志ph_affine_enabled_flag。
在框540处,解码器模块124确定预测模式启用标志是否为真。当解码器模块124确定预测模式启用标志为真时,方法500可以进行至框560。当解码器模块124确定预测模式启用标志为假时,方法500可以进行至框570。
当预测模式启用标志等于1时,解码器模块124确定预测模式启用标记为真。当预测模式启用标志等于0时,解码器模块124确定预测模式启用标记为假。
当仿射启用标志和预测模式启用标志被包含于VPS中时,预测模式启用标志是标志vps_sbtmvp_enabled_flag。当仿射启用标志和预测模式启用标志被包含于SPS中时,预测模式启用标志是标志sps_sbtmvp_enabled_flag。当仿射启用标志和预测模式启用标志被包含于PPS中时,预测模式启用标志是标志pps_sbtmvp_enabled_flag。当仿射启用标志和预测模式启用标志被包含于PH中时,预测模式启用标志是标志ph_sbtmvp_enabled_flag。
在框550处,解码器模块124针对一个或者多个图像帧,基于具有第一索引范围中的索引值的最大索引来确定零个以上的基于子块的合并MVP候选的最大数量。进一步参考图1和图2,当仿射启用标志为真时,解码器模块124确定最大索引的索引值在第一索引范围内。
第一索引范围可以被预定义为从P到N-K1。数量P是小于数量N的第二整数,并且数量K1是小于数量N的第三整数。数量P和数量K1可以被预定义于第一电子设备110和第二电子设备120中。当最大索引是索引sps_five_minus_max_num_subblock_merge_cand时,第一索引范围可以被预定义为从P到5-K1。
因此,当数量P和K1等于0时,第一索引范围可以被预定义为从0到5。另外,当数量P等于0,并且数量K1等于1时,第一索引范围可以被预定义为从0到4。
第一索引范围可以被预定义为从P到N-K2。变量K2的值等于小于数量N的第四整数。数量P可以被预定义于第一电子设备110和第二电子设备120中,并且变量K2的值可以从比特流中被确定。
当最大索引是索引sps_five_minus_max_num_subblock_merge_cand时,第一索引范围可以被预定义为从P到5-K2。因此,当数量P等于0时,第一索引范围可以被预定义为从0到5-K2。
变量K2可以通过包含于比特流的第一参数集的标志来被确定。因此,当仿射启用标志和最大索引被包含于SPS中时,用于确定变量K2的标志也被包含于SPS中。用于确定变量K2的标志可以是预测模式启用标志。因此,第一索引范围可以基于预测模式启用标志来被确定。
例如:当数量P等于0,并且变量K2等于预测模式启用标志的标志值时,最大索引的索引值是在0到N-K2的第一索引范围内。当预测模式启用标志等于1时,最大索引的索引值是在0到N-1的第一索引范围内。当预测模式启用标志等于0时,最大索引的索引值是在0到N的第一索引范围内。数量N可以等于5。
预测模式启用标志可以是被包含于SPS中的sbTMVP启用标志。因此,当数量P等于0,并且sbTMVP启用标志等于1时,索引sps_five_minus_max_num_subblock_merge_cand的第一索引范围可以被预定义为从0到4。另外,当数量P等于0,并且sbTMVP启用标志等于0时,索引sps_five_minus_max_num_subblock_merge_cand的第一索引范围可以被预定义为从0到5。
当仿射启用标记为真时,最大数量可以通过从数量N中减去最大索引来计算。因此,当仿射启用标记为真,并且数量N等于5时,最大数量可以通过从5中减去最大索引而被计算。换而言之,当仿射启用标志为真,并且数量N等于5时,最大数量MaxNumSubblockMergeCand可以被推导为如下:
MaxNumSubblockMergeCand=5-sps_five_minus_max_num_subblock_merge_cand
当仿射启用标志为真,最大索引的索引值可以在P到N-K1的第一索引范围内,并且最大数量可以通过从数量N减去最大索引来被计算。因此,最大数量的值可以在K1到N-P的值范围内。当最大索引是索引sps_five_minus_max_num_subblock_merge_cand时,第一索引范围可以被预定义为从P到5-K1,并且,值范围可以被预定义为从K1到5-P。
因此,当数量P和K1等于0时,第一索引范围和值范围可以被预定义为从0到5。另外,当数量P等于0,并且数量K1等于1时,第一索引范围可以被预定义为从0到4,并且值范围可以被预定义为从1到5。
当仿射启用标志为真时,最大索引的索引值可以是在P到N-K2的第一索引范围内,并且最大数量可以通过从数量N减去最大索引来计算。因此,最大数量的值可以是在K2到N-P的值范围内。当最大索引是索引sps_five_minus_max_num_subblock_merge_cand并且变量K2是标志sps_sbtmvp_enabled_flag时,第一索引范围可以被预定义为从P到5-sps_sbtmvp_enabled_flag,并且值范围可以被预定义为从sps_sbtmvp_enabled_flag到5-P。
因此,当数量P和标志sps_sbtmvp_enabled_flag等于0时,第一索引范围和值范围可以被预定义为从0到5。另外,当数量P等于0,并且标志sps_sbtmvp_enabled_flag等于1时,第一索引范围可以被预定义为从0到4,并且值范围可以被预定义为从1到5。
在框560处,解码器模块124基于预定义的值和具有第二索引范围中的索引值的最大索引中的一者确定最大数量。参考图1和图2,当仿射启用标志为假,且预测模式启用标志为真时,解码器模块124基于预定义的值和具有第二索引范围中的索引值的最大索引中的一者,针对一个或者多个图像帧来确定零个以上的基于子块的合并MVP候选的最大数量。
当仿射启用标志为假,预测模式启用标志和TMVP标志为真时,解码器模块124基于具有第二索引范围中的索引值的最大索引,针对一个或者多个图像帧来确定最大数量。当仿射启用标志为假,预测模式启用标志为真并且TMVP标志为假时,解码器模块124基于预定义的值,针对一个或多个图像帧确定最大数量。
预定义的值可以在第一电子设备110和第二电子设备120中被预定义为0。因此,当仿射启用标志为假,预测模式启用标志为真并且TMVP标志为假时,解码器模块124确定最大数量等于0。
第二索引范围可以被预定义为从Q到N-R。数量Q是小于数量N的第五整数,以及数量R是小于数量N的第六整数。数量Q和R可以被定义于第一电子设备110和第二电子设备120中。当最大索引是索引sps_five_minus_max_num_subblock_merge_cand时,第二索引范围可以被预定义为从Q到5-R。
因此,当数量Q等于4并且数量R等于0时,第二索引范围可以被预定义为从4到5。另外,当数量Q等于4并且数量R等于1时,最大索引可以被预定义为等于4。当数量Q和R的总数等于数量N时,最大数量可以与等于数量Q的第一预定义的索引值相等。
当仿射启用标志为假,预测模式启用标志为真以及TMVP标志为真时,最大数量可以通过从数量N中减去最大索引来计算。当数量N等于5时,最大数量可以通过从5减去最大索引来计算。
当仿射启用标志为假,并且预测模式启用标志和TMVP标志为真时,最大索引的索引值可以在Q到N-R的第二索引范围内,并且最大数量可以通过从数量N中减去最大索引来计算。因此,最大数量的值在R到N-Q的值范围内。当最大索引是索引sps_five_minus_max_num_subblock_merge_cand时,值范围可以被预定义为从R到5-Q。因此,当数量Q等于4,并且数量R等于0时,值范围可以被预定义为从0到1。
另外,当数量Q等于4,并且数量R等于1时,最大数量的值可以被预定义为等于1。因此,当数量Q和R的总数等于数量N时,最大数量可以与等于N-Q的预定义数量的值相等。
当仿射启用标志为假,并且预测模式启用标志和TMVP标志为真时,最大数量可以等于或者略大于0。例如:最大数量可以等于0或者1。因此,当仿射启用标志为假,并且预测模式启用标志和TMVP标志为真时,最大索引可以等于或者略小于数量N。
例如:如果最大索引等于5或者4,则编码器模块114可能需要使用更多比特以发送信号通知最大索引,并且解码器模块124需要解析更多的比特以确定最大索引。为了减少最大索引的比特数,编码器模块114可以在编码器模块114发送信号通知最大索引之前,通过从最大索引中减去数量Q来进一步调整最大索引。
因此,当仿射启用标志为假,并且预测模式启用标志和TMVP标志为真时,调整的最大索引的索引值在0到N-R-Q的第三索引范围内时。当仿射启用标志为假,并且预测模式启用标志和TMVP标志为真时,解码器模块124可以在解码器模块124基于最大索引确定最大数量之前通过将数量Q添加至调整的最大索引中来确定原始最大索引。例如:当数量N等于5,数量Q等于4以及数量R等于0时,解码器模块124可以进一步解析在0到1的第三索引范围内的调整的最大索引。
在框570处,解码器模块124基于预定义的值确定最大数量。进一步参考图1和图2,当仿射启用标志和预测模式启用标志为假时,解码器模块124基于预定义的值,针对一个或者多个图像帧来确定零个以上的基于子块的合并MVP的最大数量。
当仿射启用标志和预测模式启用标志为假时,解码器模块124基于预定义的值,针对一个或者多个图像帧来确定最大数量。预定义的值可以在第一电子设备110和第二电子设备120中等于0。因此,当仿射启用标志和预测模式启用标志为假时,解码器模块124确定最大数量等于0。
参考图5中的框530到570。最大数量MaxNumSubblockMergeCand可以被推导为如下:
if(sps_affine_enabled_flag)
MaxNumSubblockMergeCand=5–maximum index
else
MaxNumSubblockMergeCand
=(prediction mode enabled flag&&TMVP flag)?(N-maximum index):0
例如:当数量N等于5,预测模式启用标志为标志sps_sbtmvp_enabled_flag并且TMVP标志为标志ph_temporal_mvp_enabled_flag时,最大索引是索引sps_five_minus_max_num_subblock_merge_cand。因此,最大数量MaxNumSubblockMergeCand可以被推导为如下:
MaxNumSubblockMergeCand=(sps_affine_enabled_flag||sps_sbtmvp_enabled_flag&&ph_temporal_mvp_enabled_flag)?(5–sps_five_minus_max_num_subblock_merge_cand):0
参考框550处,当仿射启用标志为真,最大索引可以从第一参数集中被确定。参考框560,当仿射启用标志为假时,最大索引可以从第一参数集中确定。因此,仿射启用标志的值可以不被用于确定最大索引是否被包含于第一参数集中。
解码器模块124可以在解码器模块124在框530处确定仿射启用标志是否为真之前,在框520处,从第一参数集中确定最大索引。当仿射启用标志为假,并且预测模式启用标志和TMVP标志中一者也为假时,等于预定义的值的最大数量与最大索引无关。
因此,当仿射启用标志为假,预测模式启用标志和TMVP标志中的一者也为假时,在框520处确定的最大索引可以被预定义为第二预定义的索引值。第二预定义的索引值可以等于0或者5。
参考框560和570处,当仿射启用标志为假,并且预测模式启用标志和TMVP标志中的一者也为假时,最大数量与最大索引无关。因此,解码器模块124基于仿射启用标志、预测模式启用标志以及TMVP标志确定最大索引是否被包含于第一参数集。
例如:当仿射启用标志为真时,解码器模块124在框550处,从比特流的第一参数集中确定最大索引。另外,当仿射启用标志为假,并且预测模式启用标志和TMVP标志都为真时,解码器模块124可以在框560处从比特流的第一参数集中确定最大索引。此外,当仿射启用标志为假,并且预测模式启用标志和TMVP标志都为假时,最大索引可以不被包含于比特流的第一参数集中。当最大索引不存在于用于计算最大数量的第一参数集中时,最大索引可以被推断为等于第二预定义的索引值,诸如:0和5。
数量P、K1以及R可以等于0,以及数量Q可以等于4。因此,当仿射启用编码为真时最大索引的索引值可以在0到5的索引范围内。另外,当仿射启用标志为假,并且预测模式启用标志为真时,最大索引的索引值可以在4到5的索引范围内。当数量P、K1以及R等于0,并且数量Q等于4时,针对不同条件的最大数量可以如表3所示。
表3
Figure BDA0003871659420000281
在框580处,解码器模块124基于零个以上的基于子块的合并MVP候选的最大数量来重建一个或者多个图像帧。进一步参考图1或者图2,解码器模块124从包含零个以上的基于子块的合并MVP候选的多个模式候选中,针对在一个或者多个图像帧中的多个图像块的每一个选择来预测模式,并且基于预测模式确定多个预测块。用于一个或者多个图像帧中的每一个图像块的零个以上的基于子块的合并MVP候选的数量受最大数量限制。因此,解码器模块124基于受最大数量限制的零个以上的基于子块的合并MVP候选,重建一个或者多个图像帧。
零个以上的基于子块的合并MVP候选可以包括多个sbTMVP候选、多个仿射合并预测候选以及至少一个零填充候选中的零个或者多个。解码器模块124可以针对图像块中的每一个从比特流中确定多个残余分量,并且将残余分量添加到对应的一个预测块中以重建图像块。解码器模块124可以重建所有图像帧以重建视频图像。
在视频编码标准诸如高效视频编码(HEVC)和VVC中,包括基于子块的合并MVP候选的基于子块的合并模式的多个第一搜索候选可以比仿射AMVP预测的多个第二搜索候选更有效。然而,基于子块的合并模式的第一搜索候选的数量可以受最大数量MaxNumSubblockMergeCand限制。
因此,由于编码器的复杂性,当仿射启用标志为假时,最大数量MaxNumSubblockMergeCand不能被直接设置为0。因此,当仿射启用标志为假时,解码器模块124可以基于预测模式启用标志、TMVP标志和最大索引,来确定最大数量MaxNumSubblockMergeCand可以等于1以将基于子块的合并模式添加至候选模式中。
为了降低复杂度,当仿射启用标志为真时,基于子块的合并模式可以被使用。当仿射启用标志为真时,从sbTMVP启用标志中确定的变量K2的值可以等于1,以改变最大数量MaxNumSubblockMergeCand的值范围。然而,当基于子块的合并模式已经被禁用时,不需要针对基于子块的合并MVP候选来保留候选者。因此,当基于子块的合并模式被禁用,从sbTMVP启用标志中确定的变量K2的值可以等于0以保持值范围不变。
图6示出根据本公开的实施方式的图1中所示出的第一电子设备110的编码器模块114的框图。编码器模块114可包括预测处理器(例如,预测处理单元6141)、至少第一加法器(例如,第一加法器6142)和第二加法器(例如,第二加法器6145)、变换/量化处理器(例如,变换/量化单元6143)、逆量化/逆变换处理器(例如,逆量化/逆变换单元6144)、滤波器(例如,滤波单元6146)、解码图片缓冲器(例如,解码图片缓冲器6147)和熵编码器(例如,熵编码单元6148)。解码器模块114的预测处理单元6141还可包括分区处理器(例如,分区单元61411)、帧内预测处理器(例如,帧内预测单元61412)和帧间预测处理器(例如,帧间预测单元61413)。
编码器模块114可接收源视频并对源视频进行编码以输出比特流。编码器模块114可接收包括多个图像帧的源视频,然后根据编码结构划分图像帧。图像帧中的每一个可划分为至少一个图像块。
至少一个图像块可包括具有多个亮度样本的亮度块和具有多个色度样本的至少一个色度块。亮度块和至少一个色度块可进一步被划分以生成宏块、编码树单元(codingtree units,CTUs)、编码块(coding blocks,CBs)、它们的细分单元和/或另一等效编码单元。
编码器模块114可对源视频执行另外的细分。应当注意,这些实施方式总体上适用于视频编码,无论在编码之前和/或期间如何对源视频数据进行分区。
在编码过程期间,预测处理单元6141可接收图像帧中的特定一个图像帧的当前图像块。当前图像块可以是特定图像帧中的亮度块或者色度块中的一个。
分区单元61411可将当前图像块划分为多个块单元。帧内预测单元61412可相对于与当前块单元在同一帧中的一个或多个相邻块执行当前块单元的帧内预测编码,以便提供空间预测。帧间预测单元61413可相对于一个或多个参考图像块中的一个或多个块执行当前块单元的帧间预测编码,以提供时间预测。
预测处理单元6141可基于模式选择方法诸如成本函数,来选择由帧内预测单元61412和帧间预测单元61413生成的编码结果中的一个。模式选择方法可以是率失真优化(rate-distortion optimization,RDO)过程。
预测处理单元6141可确定所选择的编码结果,并且将对应于所选择的编码结果的预测块提供到第一加法器6142以用于生成残余块,并且提供到第二加法器6145以用于重建编码块单元。预测处理单元6141还可将语法元素诸如运动向量、帧内模式指示符、分区信息和其他语法信息提供到熵编码单元6148。
帧内预测单元61412可对当前块单元进行帧内预测。帧内预测单元61412可确定针对与当前块单元相邻的重建样本的帧内预测模式,以便对当前块单元进行编码。
帧内预测单元61412可使用各种帧内预测模式对当前块单元进行编码,并且帧内预测单元61412或预测处理单元6141可从选择的模式中选择适当的帧内预测模式。帧内预测单元61412可使用交叉分量预测模式对当前块单元进行编码,以基于当前块单元的亮度分量来预测当前块单元的两个色度分量中的一个。帧内预测单元61412可基于当前块单元的两个色度分量中的第二个来预测当前块单元的两个色度分量中的第一个。
作为由帧内预测单元61412执行的帧内预测的替代,帧间预测单元61413可对当前块单元进行帧间预测。帧间预测单元61413可执行运动估计以估计当前块单元的运动,以生成运动向量。
运动向量可指示当前图像块内的当前块单元相对于参考图像块内的参考块单元的位移。帧间预测单元61413可接收存储在解码图片缓冲器6147中的至少一个参考图像块,并且基于所接收的参考图像块来估计位移以生成运动向量。
第一加法器6142可通过从原始当前块单元中减去由预测处理单元6141确定的预测块来生成残余块。第一加法器6142可表示执行此减法运算的一个或多个部件。
变换/量化单元6143可对残余块应用变换以便生成残余变换系数,然后对残余变换系数进行量化以进一步降低比特率。变换可以是DCT、DST、AMT、MDNSST、HyGT、信号相关变换、KLT、小波变换、整数变换、子带变换或概念上类似的变换中的一者。
变换可将残余信息从像素值域转换到变换域,诸如频域。量化的程度可通过调整量化参数来修改。
变换/量化单元6143可对包括量化变换系数的矩阵执行扫描。替代地,熵编码单元6148可执行扫描。
熵编码单元6148可从预测处理单元6141和变换/量化单元6143接收多个语法元素,其包括量化参数、变换数据、运动向量、帧内模式、分区信息和其他语法信息。熵编码单元6148可将语法元素编码到比特流中。
熵编码单元6148可通过执行CAVLC、CABAC、SBAC、PIPE编码或另一种熵编码技术来对量化的变换系数进行熵编码以生成编码比特流。编码比特流可被传输到另一设备(图1中示出的第二电子设备120)或存档以供以后传输或检索。
逆量化/逆变换单元6144可应用逆量化和逆变换来在像素域中重建残余块,以供以后用作参考块。第二加法器6145可将重建残余块添加到从预测处理单元6141提供的预测块,以便产生重建块以用于存储在解码图片缓冲器6147中。
滤波单元6146可包括去块滤波器、SAO滤波器、双边滤波器和/或ALF以从重建块中去除块效应。除了去块滤波器、SAO滤波器、双边滤波器和ALF之外,还可使用另外的滤波器(环路内或环路后)。为简洁起见,未展示此类滤波器,并且可对第二加法器6145的输出进行滤波。
解码图片缓冲器6147可以是参考图片存储器,其存储参考块以供编码器模块114用来诸如以帧内或帧间编码模式对视频进行编码。解码图片缓冲器6147可包括多种存储器设备,诸如DRAM(包括SDRAM、MRAM、RRAM)或其他类型的存储器设备。解码图片缓冲器6147可与编码器模块114的其他部件在芯片上或相对于那些部件在芯片外。
编码器模块114可以接收视频数据,并且使用多个预测模式以预测视频数据内的多个图像帧。预测模式可以包括具有多个合并候选的多个合并模式。编码器模块114可以基于预测结果发信号通知图3至5中的仿射启用标志,以确定是否为一个或者多个图像帧启用仿射模式。
编码器模块114可以基于预测结果发信号通知图3至5中的针对方法300至500的最大索引,以确定对应的最大数量。另外,参考图3至5,编码器模块114可以发信号通知基于子块的时间MVP启用标志和时间MVP标志,以确定仿射合并MVP候选的最大数量。然后,编码器模块114可以将包括标志和索引的所编码的数据添加到比特流中,以提供给解码器模块124。
所描述的实施方式在所有方面都应被视为说明性而非限制性的。还应理解,本公开不限于以上所描述的特定实施方式,而是在不脱离本公开的范围的情况下,许多重新布置、修改和替换是可能的。

Claims (20)

1.一种通过电子设备解码比特流的方法,其特征在于,所述方法包括:
接收所述比特流;
从所述比特流中确定对应于一个或者多个图像帧的预测模式启用标志和仿射启用标志;
当所述仿射启用标志为真时,从所述比特流中确定对应于所述一个或者多个图像帧的最大索引,其中所述最大索引的索引值是在基于所述预测模式启用标志确定的索引范围内;
当所述仿射启用标志为真时,基于所述最大索引确定零个以上的基于子块的合并运动矢量预测MVP候选的最大数量;以及
基于所述零个以上的基于子块的合并MVP候选的所述最大数量来重建所述一个或者多个图像帧。
2.根据权利要求1所述的方法,其中,
所述最大索引的所述索引值在0到N-K的索引范围内,且所述N为整数,所述K等于所述预测模式启用标志并且小于所述N。
3.根据权利要求2所述的方法,其中,
所述N等于5。
4.根据权利要求2所述的方法,其中,
所述最大数量是通过从所述N中减去所述最大索引的所述索引值来被确定的,且
所述最大数量是在所述预测模式启用标志到所述N的值范围内。
5.根据权利要求2所述的方法,其中,
当所述预测模式启用标志等于1时,所述最大索引的所述索引值是在0到N-1的索引范围内,且所述最大数量是在1到N的值范围内;以及
当所述预测模式启用标志等于0时,所述最大索引的所述索引值时在0到N的索引范围内,且所述最大数量是在0到N的值范围内。
6.根据权利要求1所述的方法,其中,
所述预测模式启用标志被包含于所述比特流的序列参数集SPS中,且
所述一个或者多个图像帧中的每一个是基于所述SPS来被重建的。
7.根据权利要求6所述的方法,其中,
所述仿射启用标志和所述最大索引被包含于所述SPS中。
8.根据权利要求1所述的方法,其中,
所述预测模式启用标志是指示基于子块的时间MVP模式是否在所述一个或者多个图像中被启用的基于子块的时间MVP启用标志。
9.根据权利要求1所述的方法,其中,所述方法还包括:
当所述仿射启用标志为假时,基于所述预测模式启用标志和时间MVP标志来确定所述最大数量,而不从所述比特流中确定所述最大索引。
10.根据权利要求9所述的方法,其中,
所述时间MVP标志被包含于对应于所述一个或者多个图像帧中的至少一个的图片标头中,并且被包含于所述比特流中,
所述一个或者多个图像帧中的所述至少一个基于所述图片标头被重建。
11.一种用于解码比特流的电子设备,其特征在于,所述电子设备包括:
至少一个处理器以及
存储设备,所述存储设备耦接到所述至少一个处理器并且存储多个指令,所述多个指令在由所述至少一个处理器执行时使所述至少一个处理器:
接收所述比特流;
从所述比特流中确定对应于一个或者多个图像帧的预测模式启用标志和仿射启用标志;
当所述仿射启用标志为真时,从所述比特流中确定对应于所述一个或者多个图像帧的最大索引,其中所述最大索引的索引值是在基于所述预测模式启用标志确定的索引范围内;
当所述仿射启用标志为真时,基于所述最大索引确定零个以上的基于子块的合并运动矢量预测MVP候选的最大数量;以及
基于所述零个以上的基于子块的合并MVP候选的所述最大数量来重建所述一个或者多个图像帧。
12.根据权利要求11所述的电子设备,其中,
所述最大索引的所述索引值在0到N-K的索引范围内,且所述N为整数,所述K等于所述预测模式启用标志并且小于所述N。
13.根据权利要求12所述的电子设备,其中,
所述最大数量是通过从所述N中减去所述最大索引的所述索引值来被确定的,且
所述最大数量是在所述预测模式启用标志到所述N的值范围内。
14.根据权利要求11所述的电子设备,其中,
所述预测模式启用标志被包含于所述比特流的序列参数集SPS中,且
所述一个或者多个图像帧中的每一个是基于所述SPS来被重建的。
15.根据权利要求11所述的电子设备,其中,
所述预测模式启用标志是指示是否基于子块的时间MVP模式在所述一个或者多个图像中被启用的基于子块的时间MVP启用标志。
16.根据权利要求11所述的电子设备,其中,
所述多个指令在由所述至少一个处理器执行时还使所述至少一个处理器:
当所述仿射启用标志为假时,基于所述预测模式启用标志和时间MVP标志来确定最大数量,而不从所述比特流中确定所述最大索引,其中
所述时间MVP被包含在对应于所述一个或者多个图像帧中的至少一个的图片标头中。
17.一种通过电子设备解码比特流的方法,其特征在于,所述方法包括:
接收所述比特流;
从所述比特流中确定对应于一个或者多个图像帧的预测模式启用标志;
从所述比特流中确定对应于所述一个或者多个图像帧的最大索引,其中所述最大索引的索引值是在基于所述预测模式启用标志确定的索引范围内;
基于所述最大索引确定零个以上的基于子块的合并运动矢量预测MVP候选的最大数量;以及
基于所述零个以上的基于子块的合并MVP候选的所述最大数量来重建所述一个或者多个图像帧。
18.根据权利要求17所述的方法,其中,
所述最大索引的所述索引值在0到N-K的索引范围内,且所述N为整数,所述K等于所述预测模式启用标志并且小于所述N。
19.根据权利要求18所述的方法,其中,
所述最大数量是通过从所述N中减去所述最大索引的所述索引值来被确定的,且
所述最大数量是在所述预测模式启用标志到所述N的值范围内。
20.根据权利要求17所述的方法,其中,
所述预测模式启用标志是指示基于子块的时间MVP模式是否在所述一个或者多个图像中被启用的基于子块的时间MVP启用标志。
CN202180026942.5A 2020-04-07 2021-04-01 用于编码视频数据的设备和方法 Pending CN115380529A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US202063006631P 2020-04-07 2020-04-07
US63/006,631 2020-04-07
PCT/CN2021/085032 WO2021204063A1 (en) 2020-04-07 2021-04-01 Device and method for coding video data

Publications (1)

Publication Number Publication Date
CN115380529A true CN115380529A (zh) 2022-11-22

Family

ID=77922645

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202180026942.5A Pending CN115380529A (zh) 2020-04-07 2021-04-01 用于编码视频数据的设备和方法

Country Status (5)

Country Link
US (1) US11368704B2 (zh)
EP (1) EP4101165A4 (zh)
CN (1) CN115380529A (zh)
MX (1) MX2022011739A (zh)
WO (1) WO2021204063A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW202106014A (zh) * 2019-06-20 2021-02-01 日商索尼股份有限公司 影像處理裝置及影像處理方法
US20230396797A1 (en) * 2022-06-06 2023-12-07 Tencent America LLC Translational motion vector coding in affine mode

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102413529B1 (ko) 2014-06-19 2022-06-24 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 통합된 인트라 블록 카피 및 인터 예측 모드
US20190342546A1 (en) * 2018-05-03 2019-11-07 FG Innovation Company Limited Device and method for coding video data based on different reference sets in linear model prediction
US20190364295A1 (en) * 2018-05-25 2019-11-28 Tencent America LLC Method and apparatus for video coding
CN117528115A (zh) * 2018-08-27 2024-02-06 华为技术有限公司 一种视频图像预测方法及装置
KR20210094530A (ko) * 2018-11-29 2021-07-29 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 화면 내 블록 복사 모드 및 화면 간 예측 도구들 간의 상호작용

Also Published As

Publication number Publication date
US11368704B2 (en) 2022-06-21
EP4101165A4 (en) 2024-04-03
EP4101165A1 (en) 2022-12-14
US20210314588A1 (en) 2021-10-07
MX2022011739A (es) 2022-10-13
WO2021204063A1 (en) 2021-10-14

Similar Documents

Publication Publication Date Title
CN111903130B (zh) 在多参考列预测中编码视频数据的设备及方法
US11405648B2 (en) Device and method for coding video data
US10924733B2 (en) Device and method for coding video data based on mode list including different mode groups
US11943437B2 (en) Device and method for coding video data
US20240089432A1 (en) Device and method for coding video data for geometric partitioning mode
US11368704B2 (en) Device and method for coding video data
US11051029B2 (en) Device and method for coding video data
US11985345B2 (en) Device and method for coding video data
WO2022105721A1 (en) Device and method for coding video data
US12003780B2 (en) Device and method for decoding video data using maximum bit-depth constraint information
US11523137B2 (en) Device and method for decoding video data using general constraints information
WO2023036341A1 (en) Device and method for intra predictions in video coding

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