CN116805968A - 视频编解码方法、装置、计算机可读介质及电子设备 - Google Patents

视频编解码方法、装置、计算机可读介质及电子设备 Download PDF

Info

Publication number
CN116805968A
CN116805968A CN202210260543.1A CN202210260543A CN116805968A CN 116805968 A CN116805968 A CN 116805968A CN 202210260543 A CN202210260543 A CN 202210260543A CN 116805968 A CN116805968 A CN 116805968A
Authority
CN
China
Prior art keywords
vector
block
prediction
displacement
current block
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
CN202210260543.1A
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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202210260543.1A priority Critical patent/CN116805968A/zh
Priority to PCT/CN2022/135499 priority patent/WO2023173809A1/zh
Priority to KR1020247009420A priority patent/KR20240051197A/ko
Publication of CN116805968A publication Critical patent/CN116805968A/zh
Priority to US18/516,013 priority patent/US20240089494A1/en
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/521Processing of motion vectors for estimating the reliability of the determined motion vectors or motion vector field, e.g. for smoothing the motion vector field or for correcting motion vectors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • 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
    • H04N19/139Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本申请的实施例提供了一种视频编解码方法、装置、计算机可读介质及电子设备。该视频解码方法包括:根据参考帧为当前帧的已解码块的位移矢量,生成预测矢量候选列表;从所述预测矢量候选列表中选择待解码的当前块的预测矢量;基于所述当前块的预测矢量对所述当前块进行解码处理。本申请实施例的技术方案可以根据参考帧为当前帧的已解码块的位移矢量构建更适合的预测矢量候选列表,以保证从中选择出更为准确的预测矢量,有利于提升编码性能。

Description

视频编解码方法、装置、计算机可读介质及电子设备
技术领域
本申请涉及计算机及通信技术领域,具体而言,涉及一种视频编解码方法、装置、计算机可读介质及电子设备。
背景技术
在相关的音视频编解码技术中,如果码流中不包含当前块的预测矢量,那么可以导出默认的预测矢量,而这些默认的预测矢量如果选择不当,则会影响编码性能。
发明内容
本申请的实施例提供了一种视频编解码方法、装置、计算机可读介质及电子设备,进而至少在一定程度上可以根据参考帧为当前帧的已解码块的位移矢量构建更适合的预测矢量候选列表,以保证从中选择出更为准确的预测矢量,有利于提升编码性能。
本申请的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本申请的实践而习得。
根据本申请实施例的一个方面,提供了一种视频解码方法,包括:根据参考帧为当前帧的已解码块的位移矢量,生成预测矢量候选列表;从所述预测矢量候选列表中选择待解码的当前块的预测矢量;基于所述当前块的预测矢量对所述当前块进行解码处理。
根据本申请实施例的一个方面,提供了一种视频编码方法,包括:根据参考帧为当前帧的已编码块的位移矢量,生成预测矢量候选列表;从所述预测矢量候选列表中选择待编码的当前块的预测矢量;基于所述当前块的预测矢量对所述当前块进行编码处理。
根据本申请实施例的一个方面,提供了一种视频解码装置,包括:第一生成单元,配置为根据参考帧为当前帧的已解码块的位移矢量,生成预测矢量候选列表;第一选择单元,配置为从所述预测矢量候选列表中选择待解码的当前块的预测矢量;第一处理单元,配置为基于所述当前块的预测矢量对所述当前块进行解码处理。
在本申请的一些实施例中,基于前述方案,所述第一选择单元配置为:从码流中解码得到预测矢量索引信息,根据所述预测矢量索引信息从所述预测矢量候选列表中的相应位置处选择一个预测矢量作为所述当前块的预测矢量。
在本申请的一些实施例中,基于前述方案,所述第一选择单元还用于:根据所述预测矢量候选列表的长度确定是否需要解码所述预测矢量索引信息;若确定需要解码所述预测矢量索引信息,则从所述码流中解码得到预测矢量索引信息。
在本申请的一些实施例中,基于前述方案,所述预测矢量索引信息采用基于上下文的多符号算数编码。
在本申请的一些实施例中,基于前述方案,所述码流中包含有所述预测矢量索引信息的最大值,所述最大值位于序列头、图像头或者片头中;其中,不同的位移矢量预测模式对应的所述最大值相同或者不同。
在本申请的一些实施例中,基于前述方案,所述第一选择单元配置为:按照设定的选择策略,从所述预测矢量候选列表中选择一个预测矢量作为所述当前块的预测矢量。
在本申请的一些实施例中,基于前述方案,所述第一生成单元配置为:从参考帧为当前帧的已解码块的位移矢量中,获取所述当前块相邻近的已解码块的位移矢量;按照设定顺序,对所述当前块相邻近的已解码块的位移矢量进行排序,以生成第一位移矢量列表;根据所述第一位移矢量列表,生成所述预测矢量候选列表。
在本申请的一些实施例中,基于前述方案,所述相邻近的已解码块包括以下至少一个:处于所述当前块上方n1行的已解码块、处于所述当前块左方n2列的已解码块;其中,n1和n2为正整数。
在本申请的一些实施例中,基于前述方案,所述第一生成单元配置为:从参考帧为当前帧的已解码块的位移矢量中,获取历史已解码块的位移矢量;按照设定顺序,将所述历史已解码块的位移矢量按照先入先出的方式添加至设定长度的队列中,以生成第二位移矢量列表;根据所述第二位移矢量列表,生成所述预测矢量候选列表。
在本申请的一些实施例中,基于前述方案,所述第一生成单元还配置为:在将所述历史已解码块的位移矢量添加至所述队列中时,若所述队列中已存在相同的位移矢量,则删掉所述队列中已存在的相同的位移矢量。
在本申请的一些实施例中,基于前述方案,一个所述第二位移矢量列表对应于至少一个待解码区域,所述待解码区域包括以下中的一个:所述当前块所在的最大编码块、所述当前块所在的最大编码块中的行、所述当前块所在的片。
在本申请的一些实施例中,基于前述方案,所述第一生成单元还配置为:若指定待解码区域所对应的第二位移矢量列表中的位移矢量超过设定值,则停止向所述指定待解码区域所对应的第二位移矢量列表中添加位移矢量。
在本申请的一些实施例中,基于前述方案,所述第一生成单元还配置为:若向指定待解码区域所对应的第二位移矢量列表中添加位移矢量的次数超过设定次数,则停止向所述指定待解码区域所对应的第二位移矢量列表中添加位移矢量。
在本申请的一些实施例中,基于前述方案,所述第一生成单元配置为:从参考帧为当前帧的已解码块的位移矢量中获取所述当前块相邻近的已解码块的位移矢量,并按照设定顺序对所述当前块相邻近的已解码块的位移矢量进行排序,以生成第一位移矢量列表;
从参考帧为当前帧的已解码块的位移矢量中,获取历史已解码块的位移矢量,并按照设定顺序将所述历史已解码块的位移矢量按照先入先出的方式添加至设定长度的队列中,以生成第二位移矢量列表;
根据所述第一位移矢量列表和所述第二位移矢量列表,生成所述预测矢量候选列表。
在本申请的一些实施例中,基于前述方案,所述第一生成单元配置为:将所述第一位移矢量列表和所述第二位移矢量列表进行合并,并删除重复的位移矢量,以生成所述预测矢量候选列表。
在本申请的一些实施例中,基于前述方案,所述第一生成单元还配置为:检测所述第一位移矢量列表和所述第二位移矢量列表中是否存在未处于预设区域内的位移矢量,所述预设区域包括以下至少一个:当前图像、当前片、当前的全局参考范围和当前的局部参考范围;在将所述第一位移矢量列表和所述第二位移矢量列表进行合并的过程中,删除未处于所述预设区域内的位移矢量。
在本申请的一些实施例中,基于前述方案,所述设定顺序包括以下中的一个:已解码块的解码顺序、已解码块的扫描顺序、已解码块的类型、位移矢量所对应的权重;其中,所述权重与以下至少一个因素相关联:位移矢量的重复次数、位移矢量所对应的块大小、位移矢量所对应的块位置。
在本申请的一些实施例中,基于前述方案,所述视频解码装置还包括:解码单元,配置为从码流中解码得到参考范围类别指示信息,所述参考范围类别指示信息用于指示帧内块复制模式所使用的目标参考范围,所述目标参考范围包括全局参考范围和局部参考范围中的至少一个;所述第一选择单元配置为:从所述预测矢量候选列表中选择与所述目标参考范围相对应的预测矢量。
在本申请的一些实施例中,基于前述方案,所述第一生成单元配置为:从参考帧为当前帧的已解码块的位移矢量中,获取所对应的参考块处于所述目标参考范围内、且采用帧内块复制模式的目标已解码块;根据所述目标已解码块的位移矢量生成所述预测矢量候选列表。
在本申请的一些实施例中,基于前述方案,所述第一生成单元配置为:根据参考帧为当前帧的已解码块的位移矢量,计算所述当前块的参考块;确定所述当前块的参考块中处于所述目标参考范围内的目标参考块;根据所述目标参考块所对应的已解码块的位移矢量,生成所述预测矢量候选列表。
在本申请的一些实施例中,基于前述方案,所述参考范围类别指示信息为图像级的参考范围类别指示信息或者片级的参考范围类别指示信息;所述第一生成单元还配置为:若所述预测矢量候选列表中包含的位移矢量的数量未达到设定数量,则根据所述图像级的参考范围类别指示信息或者片级的参考范围类别指示信息,向所述预测矢量候选列表中填充预设的块矢量。
在本申请的一些实施例中,基于前述方案,所述视频解码装置还包括:解码单元,配置为从码流中解码得到位移矢量预测模式指示信息;所述第一处理单元配置为:
若所述位移矢量预测模式指示信息指示所述当前块采用Skip预测模式,则将所述当前块的预测矢量作为所述当前块的位移矢量,且跳过对所述当前块的残差系数的解码过程,以对所述当前块进行解码处理;
若所述位移矢量预测模式指示信息指示所述当前块采用NearMV预测模式,则将所述当前块的预测矢量作为所述当前块的位移矢量,并对所述当前块的残差系数进行解码,以对所述当前块进行解码处理;
若所述位移矢量预测模式指示信息指示所述当前块采用NewMV预测模式,则从所述码流中解码得到所述当前块的位移矢量残差,根据所述位移矢量残差和所述当前块的预测矢量计算所述当前块的位移矢量,并对所述当前块的残差系数进行解码,以对所述当前块进行解码处理。
在本申请的一些实施例中,基于前述方案,所述解码单元还配置为:根据所述预测矢量候选列表的长度确定是否需要解码所述位移矢量预测模式指示信息;若确定需要解码所述位移矢量预测模式指示信息,则从所述码流中解码得到所述位移矢量预测模式指示信息。
在本申请的一些实施例中,基于前述方案,所述第一处理单元从所述码流中解码得到所述当前块的位移矢量残差的过程,包括:从所述码流中解码得到所述当前块的位移矢量的符号和数值;或者
从所述码流中解码得到联合类型指示信息,所述联合类型指示信息用于指示所述当前块的位移矢量残差与所述当前块的预测矢量之间的分量是否一致,根据所述联合类型指示信息解码得到所述当前块的位移矢量残差。
根据本申请实施例的一个方面,提供了一种视频编码装置,包括:第二生成单元,配置为根据参考帧为当前帧的已编码块的位移矢量,生成预测矢量候选列表;第二选择单元,配置为从所述预测矢量候选列表中选择待编码的当前块的预测矢量;第二处理单元,配置为基于所述当前块的预测矢量对所述当前块进行编码处理。
根据本申请实施例的一个方面,提供了一种计算机可读介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上述实施例中所述的方法。
根据本申请实施例的一个方面,提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述电子设备实现如上述实施例中所述的方法。
根据本申请实施例的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各种可选实施例中提供的方法。
在本申请的一些实施例所提供的技术方案中,通过根据参考帧为当前帧的已解码块的位移矢量,生成预测矢量候选列表,进而从预测矢量候选列表中选择当前块的预测矢量,使得可以根据参考帧为当前帧的已解码块的位移矢量构建更适合的预测矢量候选列表,以保证从中选择出更为准确的预测矢量,有利于提升编码性能。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1示出了可以应用本申请实施例的技术方案的示例性系统架构的示意图;
图2示出视频编码装置和视频解码装置在流式传输系统中的放置方式示意图;
图3示出了SB与B之间的关系示意图;
图4示出了一个视频编码器的基本流程图;
图5示出了帧间预测的示意图;
图6示出了帧内块复制的示意图;
图7示出了AV1中IBC的参考范围示意图;
图8示出了AV2中IBC的参考范围示意图;
图9示出了根据本申请的一个实施例的视频解码方法的流程图;
图10示出了根据本申请的一个实施例的选择当前块相邻近的已解码块的示意图;
图11示出了根据本申请的一个实施例的视频解码方法的流程图;
图12示出了根据本申请的一个实施例的视频编码方法的流程图;
图13示出了根据本申请的一个实施例的视频解码装置的框图;
图14示出了根据本申请的一个实施例的视频编码装置的框图;
图15示出了适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。
具体实施方式
现在参考附图以更全面的方式描述示例实施方式。然而,示例的实施方式能够以各种形式实施,且不应被理解为仅限于这些范例;相反,提供这些实施方式的目的是使得本申请更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。
此外,本申请所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,有许多具体细节从而可以充分理解本申请的实施例。然而,本领域技术人员应意识到,在实施本申请的技术方案时可以不需用到实施例中的所有细节特征,可以省略一个或更多特定细节,或者可以采用其它的方法、元件、装置、步骤等。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
需要说明的是:在本文中提及的“多个”是指两个或两个以上。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
图1示出了可以应用本申请实施例的技术方案的示例性系统架构的示意图。
如图1所示,系统架构100包括多个终端装置,所述终端装置可通过例如网络150彼此通信。举例来说,系统架构100可以包括通过网络150互连的第一终端装置110和第二终端装置120。在图1的实施例中,第一终端装置110和第二终端装置120执行单向数据传输。
举例来说,第一终端装置110可对视频数据(例如由终端装置110采集的视频图片流)进行编码以通过网络150传输到第二终端装置120,已编码的视频数据以一个或多个已编码视频码流形式传输,第二终端装置120可从网络150接收已编码视频数据,对已编码视频数据进行解码以恢复视频数据,并根据恢复的视频数据显示视频图片。
在本申请的一个实施例中,系统架构100可以包括执行已编码视频数据的双向传输的第三终端装置130和第四终端装置140,所述双向传输比如可以发生在视频会议期间。对于双向数据传输,第三终端装置130和第四终端装置140中的每个终端装置可对视频数据(例如由终端装置采集的视频图片流)进行编码,以通过网络150传输到第三终端装置130和第四终端装置140中的另一终端装置。第三终端装置130和第四终端装置140中的每个终端装置还可接收由第三终端装置130和第四终端装置140中的另一终端装置传输的已编码视频数据,且可对已编码视频数据进行解码以恢复视频数据,并可根据恢复的视频数据在可访问的显示装置上显示视频图片。
在图1所示的实施例中,第一终端装置110、第二终端装置120、第三终端装置130和第四终端装置140可为服务器或者终端,但本申请公开的原理可不限于此。
服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器。终端可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能语音交互设备、智能手表、智能家电、车载终端、飞行器等,但并不局限于此。
图1中所示的网络150表示在第一终端装置110、第二终端装置120、第三终端装置130和第四终端装置140之间传送已编码视频数据的任何数目的网络,包括例如有线和/或无线通信网络。通信网络150可在电路交换和/或分组交换信道中交换数据。该网络可包括电信网络、局域网、广域网和/或互联网。出于本申请的目的,除非在下文中有所解释,否则网络150的架构和拓扑对于本申请公开的操作来说可能是无关紧要的。
在本申请的一个实施例中,图2示出视频编码装置和视频解码装置在流式传输环境中的放置方式。本申请所公开主题可同等地适用于其它支持视频的应用,包括例如视频会议、数字TV(television,电视机)、在包括CD、DVD、存储棒等的数字介质上存储压缩视频等等。
流式传输系统可包括采集子系统213,采集子系统213可包括数码相机等视频源201,视频源创建未压缩的视频图片流202。在实施例中,视频图片流202包括由数码相机拍摄的样本。相较于已编码的视频数据204(或已编码的视频码流204),视频图片流202被描绘为粗线以强调高数据量的视频图片流,视频图片流202可由电子装置220处理,电子装置220包括耦接到视频源201的视频编码装置203。视频编码装置203可包括硬件、软件或软硬件组合以实现或实施如下文更详细地描述的所公开主题的各方面。相较于视频图片流202,已编码的视频数据204(或已编码的视频码流204)被描绘为细线以强调较低数据量的已编码的视频数据204(或已编码的视频码流204),其可存储在流式传输服务器205上以供将来使用。一个或多个流式传输客户端子系统,例如图2中的客户端子系统206和客户端子系统208,可访问流式传输服务器205以检索已编码的视频数据204的副本207和副本209。客户端子系统206可包括例如电子装置230中的视频解码装置210。视频解码装置210对已编码的视频数据的传入副本207进行解码,且产生可在显示器212(例如显示屏)或另一呈现装置上呈现的输出视频图片流211。在一些流式传输系统中,可根据某些视频编码/压缩标准对已编码的视频数据204、视频数据207和视频数据209(例如视频码流)进行编码。
应注意,电子装置220和电子装置230可包括图中未示出的其它组件。举例来说,电子装置220可包括视频解码装置,且电子装置230还可包括视频编码装置。
在本申请的一个实施例中,以国际视频编码标准HEVC(High Efficiency VideoCoding,高效率视频编码)、VVC(Versatile Video Coding,多功能视频编码),以及中国国家视频编码标准AVS为例,当输入一个视频帧图像之后,会根据一个块大小,将视频帧图像划分成若干个不重叠的处理单元,每个处理单元将进行类似的压缩操作。这个处理单元被称作CTU(Coding Tree Unit,编码树单元),或者称之为LCU(Largest Coding Unit,最大编码单元)。CTU再往下可以继续进行更加精细的划分,得到一个或多个基本的编码单元CU(Coding Unit,编码单元),CU是一个编码环节中最基本的元素。
在另一个实施例中,这个处理单元也可以被称作编码片(即Tile),是可以独立解码和编码的多媒体数据帧的矩形区域。其中,编码片再往下可以继续进行更加精细的划分,得到一个或多个最大编码块(Superblock,简称SB),SB是块划分的起点,可以继续划分为多个子块,然后最大编码块再往下划分,得到一个或多个块(Block)。每个块是一个编码环节中最基本的元素。可选地,SB与块(B)之间的关系可如图3所示,即一个SB可以包含若干个B。
以下介绍编码过程中的一些概念:
预测编码(Predictive Coding):预测编码包括了帧内预测和帧间预测等方式,原始视频信号经过选定的已重建视频信号的预测后,得到残差视频信号。编码端需要为当前编码单元(或编码块)决定选择哪一种预测编码模式,并告知解码端。其中,帧内预测是指预测的信号来自于同一图像内已经编码重建过的区域;帧间预测是指预测的信号来自已经编码过的、不同于当前图像的其它图像(称之为参考图像)。
变换及量化(Transform&Quantization):残差视频信号经过DFT(DiscreteFourier Transform,离散傅里叶变换)、DCT(Discrete Cosine Transform,离散余弦变换)等变换操作后,将信号转换到变换域中,称之为变换系数。变换系数进一步进行有损的量化操作,丢失掉一定的信息,使得量化后的信号有利于压缩表达。在一些视频编码标准中,可能有多于一种变换方式可以选择,因此编码端也需要为当前编码单元(或编码块)选择其中的一种变换方式,并告知解码端。量化的精细程度通常由量化参数(QuantizationParameter,简称QP)来决定,QP取值较大,表示更大取值范围的系数将被量化为同一个输出,因此通常会带来更大的失真及较低的码率;相反,QP取值较小,表示较小取值范围的系数将被量化为同一个输出,因此通常会带来较小的失真,同时对应较高的码率。
熵编码(Entropy Coding)或统计编码:量化后的变换域信号将根据各个值出现的频率进行统计压缩编码,最后输出二值化(0或者1)的压缩码流。同时,编码产生其他信息,例如选择的编码模式、运动矢量数据等,也需要进行熵编码以降低码率。统计编码是一种无损的编码方式,可以有效的降低表达同样信号所需要的码率,常见的统计编码方式有变长编码(Variable Length Coding,简称VLC)或者基于上下文的二值化算术编码(ContentAdaptive Binary Arithmetic Coding,简称CABAC)。
基于上下文的二值化算术编码(CABAC)过程主要包含3个步骤:二值化、上下文建模和二进制算术编码。在对输入的语法元素进行二值化处理后,可以通过常规编码模式和旁路编码模式(Bypass Coding Mode)对二元数据进行编码。旁路编码模式无须为每个二元位分配特定的概率模型,输入的二元位bin值直接用一个简单的旁路编码器进行编码,以加快整个编码以及解码的速度。一般情况下,不同的语法元素之间并不是完全独立的,且相同语法元素自身也具有一定的记忆性。因此,根据条件熵理论,利用其他已编码的语法元素进行条件编码,相对于独立编码或者无记忆编码能够进一步提高编码性能。这些用来作为条件的已编码符号信息称为上下文。在常规编码模式中,语法元素的二元位顺序地进入上下文模型器,编码器根据先前编码过的语法元素或二元位的值,为每一个输入的二元位分配合适的概率模型,该过程即为上下文建模。通过ctxIdxInc(context index increment,上下文索引增量)和ctxIdxStart(context index Start,上下文起始索引)即可定位到语法元素所对应的上下文模型。将bin值和分配的概率模型一起送入二元算术编码器进行编码后,需要根据bin值更新上下文模型,也就是编码中的自适应过程。
环路滤波(Loop Filtering):经过变化及量化的信号会通过反量化、反变换及预测补偿的操作获得重建图像。重建图像与原始图像相比由于存在量化的影响,部分信息与原始图像有所不同,即重建图像会产生失真(Distortion)。因此,可以对重建图像进行滤波操作,例如去块效应滤波(Deblocking filter,简称DB)、SAO(Sample Adaptive Offset,自适应像素补偿)或者ALF(Adaptive Loop Filter,自适应环路滤波)等滤波器,可以有效降低量化所产生的失真程度。由于这些经过滤波后的重建图像将作为后续编码图像的参考来对将来的图像信号进行预测,因此上述的滤波操作也被称为环路滤波,即在编码环路内的滤波操作。
在本申请的一个实施例中,图4示出了一个视频编码器的基本流程图,在该流程中以帧内预测为例进行说明。其中,原始图像信号sk[x,y]与预测图像信号做差值运算,得到残差信号uk[x,y],残差信号uk[x,y]经过变换及量化处理之后得到量化系数,量化系数一方面通过熵编码得到编码后的比特流,另一方面通过反量化及反变换处理得到重构残差信号u'k[x,y],预测图像信号/>与重构残差信号u'k[x,y]叠加生成图像信号图像信号/>一方面输入至帧内模式决策模块和帧内预测模块进行帧内预测处理,另一方面通过环路滤波输出重建图像信号s'k[x,y],重建图像信号s'k[x,y]可以作为下一帧的参考图像进行运动估计及运动补偿预测。然后基于运动补偿预测的结果s'r[x+mx,y+my]和帧内预测结果/>得到下一帧的预测图像信号/>并继续重复上述过程,直至编码完成。
基于上述的编码过程,在解码端针对每一个编码单元(或编码块),在获取到压缩码流(即比特流)之后,进行熵解码获得各种模式信息及量化系数。然后量化系数经过反量化及反变换处理得到残差信号。另一方面,根据已知的编码模式信息,可获得该编码单元(或编码块)对应的预测信号,然后将残差信号与预测信号相加之后即可得到重建信号,重建信号再经过环路滤波等操作,产生最终的输出信号。
目前主流的视频编码标准(如HEVC、VVC、AVS3、AV1、AV2),均采用基于块的混合编码框架。具体是将原始的视频数据分成一系列的编码块,结合预测、变换和熵编码等视频编码方法,实现视频数据的压缩。其中,运动补偿是视频编码常用的一类预测方法,运动补偿基于视频内容在时域或空域的冗余特性,从已编码的区域导出当前编码块的预测值。这类预测方法包括:帧间预测、帧内块复制预测、帧内串复制预测等,在具体的编码实现中,可能单独或组合使用这些预测方法。对于使用了这些预测方法的编码块,通常需要在码流中显式或隐式的编码一个或多个二维的位移矢量,指示当前块(或当前块的同位块)相对它的一个或多个参考块的位移。
其中,AV1的全称为Alliance for Open Media Video 1,是由开放媒体联盟制定的第一代视频编码标准;AV2的全称为Alliance for Open Media Video 2,是由开放媒体联盟制定的第二代视频编码标准。
需要注意的是,在不同的预测模式及不同的实现下,位移矢量可能有不同的名称,本申请的实施例中统一按照以下方式进行描述:1)帧间预测中的位移矢量称为运动位移矢量(Motion Vector,简称MV);2)帧内块复制中的位移矢量称为块位移矢量(Block Vector,简称BV);3)帧内串复制中的位移矢量称为串位移矢量(String Vector,简称SV)。以下对帧间预测和帧内块复制预测中相关的技术进行介绍。
如图5所示,帧间预测利用视频时间域的相关性,使用邻近已编码图像的像素预测当前图像的像素,以达到有效去除视频时域冗余的目的,能够有效节省编码残差数据的比特。其中,P表示当前帧,Pr表示参考帧,B表示当前编码块,Br表示B的参考块。B'在参考帧中的坐标与B在当前帧中的坐标位置相同,Br的坐标为(xr,yr),B'的坐标为(x,y),当前编码块与其参考块之间的位移称为运动向量(即MV),其中,MV=(xr-x,yr-y)。
考虑到时域或空域邻近块具有较强的相关性,可以采用MV预测技术进一步减少编码MV所需要的比特。在H.265/HEVC中,帧间预测包含Merge和AMVP(Advanced MotionVector Prediction,高级运动矢量预测)两种MV预测技术。Merge模式会为当前PU(prediction unit,预测单元)建立一个MV候选列表,其中存在5个候选MV(及其对应的参考图像)。遍历这5个候选MV,选取率失真代价最小的作为最优MV。若编解码器依照相同的方式建立候选列表,则编码器只需要传输最优MV在候选列表中的索引即可。需要注意的是,HEVC的MV预测技术还有一种skip模式,是Merge模式的一种特例,通过Merge模式找到最优MV后,如果当前块和参考块基本一样,那么不需要传输残差数据,只需要传送MV的索引和一个skip flag即可。
类似的,AMVP模式利用空域和时域邻近块的MV相关性,为当前PU建立候选预测MV列表。与Merge模式不同,AMVP模式候选预测MV列表中选择最优的预测MV,与当前编码块通过运动搜索得到的最优MV进行差分编码,即编码MVD=MV-MVP;解码端通过建立相同的列表,仅需要MVD(Motion Vector Difference,运动位移矢量残差)与MVP(Motion VectorPredictor,预测运动矢量)在该列表中的序号即可计算当前编码块的MV。AMVP候选MV列表也包含空域和时域两种情形,不同的是AMVP列表长度仅为2。
帧内块复制是HEVC屏幕内容编码(Screen Content Coding,简称SCC)扩展中采纳的一种编码工具,它显著提升了屏幕内容的编码效率。在AVS3和VVC中,也采纳了IBC技术以提升屏幕内容编码的性能,IBC利用屏幕内容视频在空间的相关性,使用当前图像上已编码图像的像素预测当前待编码块的像素,能够有效节省编码像素所需的比特。如图6所示,在IBC中当前块与其参考块之间的位移称为块位移矢量(Block Vector,简称BV)。
在目前的AV1标准中,IBC模式使用了全局参考范围的方案,即当前帧已重构的区域允许用作当前块的参考块。但是由于IBC使用片外存储器存储参考样本,需要增加了下列限制以解决IBC潜在的硬件实现问题:
1)如果当前图像允许使用IBC模式,则环路滤波器将被禁用,从而避免增加额外的图像存储需求,而为了降低环路滤波器关闭带来的影响,IBC模式仅允许在关键帧中使用。
2)参考块的位置需要满足硬件回写时延限制,比如当前块水平方向上的256个已重建样本的区域不允许用作参考块。
3)参考块的位置需要满足并行处理的限制。
具体可以参考图7所示的目前AV1标准中IBC参考范围的示意图,其中SB的大小为128×128,编码器按SB行进行并行编码,当前块水平方向上的256个已重建样本的区域(即两个SB大小)不允许用作参考块。
在目前正在研发的AOM(Alliance for Open Media,开放媒体联盟)下一代标准AV2中,IBC模式得到进一步的改进。如图8所示,在AV2中,IBC的参考范围由两部分组成,分别称为全局参考范围和局部参考范围。其中,全局参考范围为AV1中允许的参考范围;局部参考范围为新增的参考范围,其大小比如可以为64×64(即当前块所在的SB区域),该参考范围的像素样本存储在额外的片上存储器中,因此在仅使用该参考范围时不需要禁用环路滤波器。同时,根据帧类型的不同,IBC允许使用不同的参考范围,比如对于关键帧,IBC允许使用全局参考范围和局部参考范围,对于非关键帧IBC仅允许使用局部参考范围。
需要说明的是:局部参考范围在不同的实现方式中可以有不同的大小,比如除了可以是64×64之外,还可以128×128等。
由于AV2允许使用不同类型的参考范围,那么当参考块位于不同类型的参考范围内时,块矢量的数值具有较大的变化。例如,当参考块位于局部参考范围内时,块矢量的绝对值将小于64;而当参考块位于全局参考范围时,块矢量的绝对值均大于64。但是,在当前版本的AV2中,默认预测块矢量均指向全局参考范围,未考虑到当前块位于局部参考范围的情况。对于局部参考范围内的参考块,默认预测块矢量不能提供较好的预测,将导致较大的块矢量编码开销。同时,在相关的音视频编解码技术中,如果码流中不包含当前块的预测矢量,那么需要导出默认的预测矢量,但是相关技术中对于这些默认的预测矢量的选择方式存在一定的局限性,进而影响了整体的编码性能。
以下对本申请实施例的技术方案的实现细节进行详细阐述:
图9示出了根据本申请的一个实施例的视频解码方法的流程图,该视频解码方法可以由具有计算处理功能的设备来执行,比如可以由终端设备或服务器来执行。参照图9所示,该视频解码方法至少包括如下步骤:
步骤S910,根据参考帧为当前帧的已解码块的位移矢量,生成预测矢量候选列表;
步骤S920,从预测矢量候选列表中选择待解码的当前块的预测矢量;
步骤S930,基于当前块的预测矢量对当前块进行解码处理。
图9所示实施例的技术方案可以根据参考帧为当前帧的已解码块的位移矢量构建更适合的预测矢量候选列表,以保证从中选择出更为准确的预测矢量,有利于提升编码性能。
需要说明的是:图9所示实施例的技术方案可以用于“默认”的预测矢量的导出,即在通过标准中固定的规则导出当前块的预测块矢量的各分量均为0时,才使用图9所示的方法导出预测矢量。当然,在本申请的其它实施例中,也可以直接使用图9所示实施例的技术方案。
以下对图9中所示的步骤S910至步骤S930的实现细节进行详细阐述:
在步骤S910中,根据参考帧为当前帧的已解码块的位移矢量,生成预测矢量候选列表。
在一些可选的实施例中,在不同的预测模式及不同的实现下,位移矢量可能有不同的名称,比如在帧间预测中的位移矢量可以称为运动位移矢量MV,在帧内块复制中的位移矢量称为块位移矢量BV,在帧内串复制中的位移矢量称为串位移矢量SV。
在本申请的一个实施例中,可以根据当前块相邻近的已解码块的位移矢量来构建预测矢量候选列表。
具体而言,可以从参考帧为当前帧的已解码块的位移矢量中,获取当前块相邻近的已解码块的位移矢量,然后按照设定顺序,对当前块相邻近的已解码块的位移矢量进行排序,以生成第一位移矢量列表,进而根据第一位移矢量列表,生成预测矢量候选列表。比如可以将第一位移矢量列表作为预测矢量候选列表。
可选地,当前块相邻近的已解码块可以包括以下至少一个:处于当前块上方n1行的已解码块、处于当前块左方n2列的已解码块;其中,n1和n2为正整数。比如图10所示,相邻近的已解码块可以是当前块上方的3行或左边的3列已解码块,其中的每一行或列的基本单元可以是8×8的大小。需要说明的是:位移矢量的信息通常是按4×4的单元进行存储的,在具体的实现中,可以通过一个8×8的单元搜索得到多个位移矢量,并且对于不同的行或列,搜索得到的位移矢量的数量可以是不同的。
可选地,该设定顺序可以是已解码块的解码顺序、已解码块的扫描顺序、位移矢量所对应的权重。该位移矢量所对应的权重可以与以下至少一个因素相关联:位移矢量的重复次数、位移矢量所对应的块大小、位移矢量所对应的块位置。
比如,若位移矢量的重复次数较多,那么位移矢量所对应的权重越大,在第一位移矢量列表中的顺序也就越靠前;若位移矢量所对应的块越小,那么位移矢量所对应的权重越大,在第一位移矢量列表中的顺序也就越靠前;若位移矢量所对应的块位置距离当前块越近,那么位移矢量所对应的权重越大,在第一位移矢量列表中的顺序也就越靠前。
在本申请的一个实施例中,可以根据历史已解码块的位移矢量来构建预测矢量候选列表。
具体而言,可以从参考帧为当前帧的已解码块的位移矢量中,获取历史已解码块的位移矢量,然后按照设定顺序,将历史已解码块的位移矢量按照先入先出的方式添加至设定长度的队列中,以生成第二位移矢量列表,进而根据第二位移矢量列表,生成预测矢量候选列表。比如可以将第二位移矢量列表作为预测矢量候选列表。
可选地,比如队列长度为3,那么可以按照设定顺序存储位移矢量1、位移矢量2和位移矢量3,当有新的位移矢量4需要加入时,该队列中的位移矢量变为:位移矢量2、位移矢量3和位移矢量4;如果有新的位移矢量5需要加入时,该队列中的位移矢量变为:位移矢量3、位移矢量4和位移矢量5。
可选地,该设定顺序可以是已解码块的解码顺序、已解码块的扫描顺序、位移矢量所对应的权重。该位移矢量所对应的权重可以与以下至少一个因素相关联:位移矢量的重复次数、位移矢量所对应的块大小、位移矢量所对应的块位置。
比如,若位移矢量的重复次数较多,那么位移矢量所对应的权重越大,在第一位移矢量列表中的顺序也就越靠前;若位移矢量所对应的块越小,那么位移矢量所对应的权重越大,在第一位移矢量列表中的顺序也就越靠前;若位移矢量所对应的块位置距离当前块越近,那么位移矢量所对应的权重越大,在第一位移矢量列表中的顺序也就越靠前。
在一些可选的实施例中,在将历史已解码块的位移矢量添加至队列中时,若队列中已存在相同的位移矢量,则删掉队列中已存在的相同的位移矢量。比如队列中存储有位移矢量1、位移矢量2和位移矢量3,当有新的位移矢量4需要加入时,如果该位移矢量4与位移矢量2相同,那么可以将位移矢量2从队列中删除,进而得到的队列变为:位移矢量1、位移矢量3和位移矢量4。
在一些可选的实施例中,一个第二位移矢量列表可以对应于至少一个待解码区域,待解码区域包括以下中的一个:当前块所在的最大编码块SB、当前块所在的最大编码块SB中的行、当前块所在的片(tile)。比如一个第二位移矢量列表对应于一个SB,或者一个第二位移矢量列表对应于多个SB。在此基础上,可选地,如果指定待解码区域所对应的第二位移矢量列表中的位移矢量超过设定值,则停止向指定待解码区域所对应的第二位移矢量列表中添加位移矢量,即可以针对待解码区域所对应的第二位移矢量列表设定最大数量,当超过最大数量之后,可以停止向对应的第二位移矢量列表中添加位移矢量。
当然,对于一个待解码区域而言,也可以记录向其对应的第二位移矢量列表中添加位移矢量的操作次数,当该操作次数超过预设值时,停止向所对应的第二位移矢量列表添加新的位移矢量。即该实施例通过记录向第二位移矢量列表中添加位移矢量的操作次数来确定是否停止向对应的第二位移矢量列表中添加位移矢量。
在本申请的一个实施例中,可以根据当前块相邻近的已解码块的位移矢量,以及历史已解码块的位移矢量来构建预测矢量候选列表。
具体而言,可以从参考帧为当前帧的已解码块的位移矢量中获取当前块相邻近的已解码块的位移矢量,并从参考帧为当前帧的已解码块的位移矢量中,获取历史已解码块的位移矢量,然后根据获取到的相邻近的已解码块的位移矢量和历史已解码块的位移矢量生成预测矢量候选列表。其中,在根据获取到的相邻近的已解码块的位移矢量和历史已解码块的位移矢量生成预测矢量候选列表时,可以按照设定的顺序对获取到的位移矢量进行排列,以生成该预测矢量候选列表。在这个过程中还可以删掉重复的位移矢量。
可选地,在根据获取到的相邻近的已解码块的位移矢量和历史已解码块的位移矢量生成预测矢量候选列表时,还可以删除其中未处于预设区域内的位移矢量,预设区域包括以下至少一个:当前图像、当前片、当前的全局参考范围和当前的局部参考范围。
可选地,在按照设定的顺序对获取到的位移矢量进行排列时,该设定顺序可以是已解码块的解码顺序、已解码块的扫描顺序、已解码块的类型、位移矢量所对应的权重。该位移矢量所对应的权重可以与以下至少一个因素相关联:位移矢量的重复次数、位移矢量所对应的块大小、位移矢量所对应的块位置。一个已解码块可以是当前块相邻近的已解码块(即前述的第一位移矢量列表中的编码块),也可以是历史已解码块(即前述的第二位移矢量列表中的编码块)。因此已解码块的类型用于表示已解码块是当前块相邻近的已解码块(也即表示是前述的第一位移矢量列表中的编码块)还是历史已解码块(也即表示是前述的第二位移矢量列表中的编码块)。比如可以将当前块相邻近的已解码块的位移矢量排列在历史已解码块的位移矢量之前,当然也可以将当前块相邻近的已解码块的位移矢量排列在历史已解码块的位移矢量之后。
在一个可选的实施例中,还可以从参考帧为当前帧的已解码块的位移矢量中获取当前块相邻近的已解码块的位移矢量,并按照设定顺序对当前块相邻近的已解码块的位移矢量进行排序,以生成第一位移矢量列表;然后从参考帧为当前帧的已解码块的位移矢量中,获取历史已解码块的位移矢量,并按照设定顺序将历史已解码块的位移矢量按照先入先出的方式添加至设定长度的队列中,以生成第二位移矢量列表;进而根据第一位移矢量列表和第二位移矢量列表,生成预测矢量候选列表。
其中,生成第一位移矢量列表和第二位移矢量列表的过程参照前述实施例的技术方案,不再赘述。
在一些可选的实施例中,根据第一位移矢量列表和第二位移矢量列表,生成预测矢量候选列表的过程可以是将第一位移矢量列表和第二位移矢量列表进行合并,并删除重复的位移矢量,以生成预测矢量候选列表。
可选地,在将第一位移矢量列表和第二位移矢量列表进行合并时,可以将第一位移矢量列表中的位移矢量排列在第二位移矢量列表中的位移矢量之前;当然也可以将第一位移矢量列表中的位移矢量排列在第二位移矢量列表中的位移矢量之后。
可选地,在将第一位移矢量列表和第二位移矢量列表进行合并时,还可以检测第一位移矢量列表和第二位移矢量列表中是否存在未处于预设区域内的位移矢量,预设区域包括以下至少一个:当前图像、当前片、当前的全局参考范围和当前的局部参考范围;然后在将第一位移矢量列表和第二位移矢量列表进行合并的过程中,删除未处于预设区域内的位移矢量。
继续参照图9所示,在步骤S920中,从预测矢量候选列表中选择待解码的当前块的预测矢量。
在本申请的一个实施例中,从预测矢量候选列表中选择当前块的预测矢量的过程可以是从码流中解码得到预测矢量索引信息,然后根据预测矢量索引信息从预测矢量候选列表中的相应位置处选择一个预测矢量作为当前块的预测矢量。
可选地,可以根据预测矢量候选列表的长度确定是否需要解码预测矢量索引信息,如果确定需要解码预测矢量索引信息,则从码流中解码得到预测矢量索引信息。具体而言,比如若预测矢量候选列表的长度为1,那么不需要从码流中解码预测矢量索引信息,可以直接将预测矢量候选列表中的预测矢量作为当前块的预测矢量。
可选地,预测矢量索引信息可以采用基于上下文的多符号算数编码。
在一些可选的实施例中,码流中还可以包含有预测矢量索引信息的最大值,该最大值可以位于序列头、图像头或者片头中,该最大值可以表示预测矢量索引信息的最大数量。可选地,不同的位移矢量预测模式对应的最大值相同或者不同。
在本申请的一个实施例中,从预测矢量候选列表中选择当前块的预测矢量的过程也可以是按照设定的选择策略,从预测矢量候选列表中选择一个预测矢量作为当前块的预测矢量。比如可以按照顺序选择第i个(i为正整数)预测矢量作为当前块的预测矢量,或者随机选择一个。
在步骤S930中,基于当前块的预测矢量对当前块进行解码处理。
在本申请的一个实施例中,步骤S930中基于当前块的预测矢量对当前块进行解码处理的过程可以是将当前块的预测矢量作为当前块的位移矢量,以对当前块进行解码处理。
在本申请的一个实施例中,步骤S930中基于当前块的预测矢量对当前块进行解码处理的过程可以是从码流中解码得到当前块的矢量残差,根据矢量残差和当前块的预测矢量计算当前块的位移矢量,然后根据当前块的位移矢量对当前块进行解码处理。
图11示出了根据本申请的一个实施例的视频解码方法的流程图,该视频解码方法可以由具有计算处理功能的设备来执行,比如可以由终端设备或服务器来执行。参照图11所示,该视频解码方法至少包括如下步骤:
步骤S1110,从码流中解码得到参考范围类别指示信息,该参考范围类别指示信息用于指示帧内块复制模式所使用的目标参考范围,该目标参考范围包括全局参考范围和局部参考范围中的至少一个。
在一些可选的实施例中,参考范围类别指示信息可以通过两个标志位来实现,比如参考范围类别指示信息可以包括第一标志位和第二标志位,第一标志位用于指示帧内块复制模式是否允许使用全局参考范围,第二标志位用于指示帧内块复制模式是否允许使用局部参考范围。
可选地,比如若第一标志位的值为1,则表示帧内块复制模式允许使用全局参考范围;第一标志位的值为0,则表示帧内块复制模式不允许使用全局参考范围。若第二标志位的值为1,则表示帧内块复制模式允许使用局部参考范围;第二标志位的值为0,则表示帧内块复制模式不允许使用局部参考范围。
在一些可选的实施例中,参考范围类别指示信息可以通过一个标志位来实现,比如在一个实施例中,参考范围类别指示信息可以包括第三标志位,第三标志位为第一值(比如1)时,指示帧内块复制模式允许使用全局参考范围;第三标志位为第二值(比如0)时,指示帧内块复制模式允许使用局部参考范围。
在另一个实施例中,参考范围类别指示信息可以包括第四标志位,第四标志位为第一值(比如1)时,指示帧内块复制模式允许使用全局参考范围和局部参考范围;第四标志位为第二值(比如0)时,指示帧内块复制模式允许使用局部参考范围。
步骤S1120,根据参考帧为当前帧的已解码块的位移矢量,生成预测矢量候选列表。
需要说明的是:步骤S1110和步骤S1120的执行顺序既可以按照图11所示,先执行步骤S1110,再执行步骤S1120;也可以先执行步骤S1120,再执行步骤S1110;还可以同时执行步骤S1110和步骤S1120。
在本申请的一个实施例中,步骤S1120中根据参考帧为当前帧的已解码块的位移矢量,生成预测矢量候选列表的过程可以是:从参考帧为当前帧的已解码块的位移矢量中,获取所对应的参考块处于目标参考范围内、且采用帧内块复制模式的目标已解码块,然后根据目标已解码块的位移矢量生成预测矢量候选列表。
在本申请的一个实施例中,步骤S1120中根据参考帧为当前帧的已解码块的位移矢量,生成预测矢量候选列表的过程可以是:根据参考帧为当前帧的已解码块的位移矢量,计算当前块的参考块,然后确定当前块的参考块中处于目标参考范围内的目标参考块,进而根据目标参考块所对应的已解码块的位移矢量,生成预测矢量候选列表。
可选地,可以根据当前块的坐标与已解码块的位移矢量,确定当前块的参考块的位置信息。比如根据当前块的横坐标与一个位移矢量的水平分量,计算得到对应的一个参考块的横坐标;根据当前块的纵坐标与一个位移矢量的竖直分量,计算得到对应的一个参考块的纵坐标。
在一些可选的实施例中,参考范围类别指示信息可以是图像级的参考范围类别指示信息或者片级的参考范围类别指示信息,那么如果预测矢量候选列表中包含的位移矢量的数量未达到设定数量,则可以根据图像级的参考范围类别指示信息或者片级的参考范围类别指示信息,向预测矢量候选列表中填充预设的块矢量。
比如,若指示的是全局参考范围,那么可以从以下的块矢量中选择至少一个来对预测矢量候选列表进行填充:(-sb_w-D,0)、(0,-sb_h)、(sb_x-b_w-cur_x-D,0)、(0,sb_y-b_h-cur_y)、(-M×sb_w-D,-N×sb_h)。可选地,这些块矢量的精度可以是整像素级的,具体实现时可以使用不同精度的表示方式。
其中,sb_w表示当前块所在的最大编码块的宽度;sb_h表示当前块所在的最大编码块的高度;sb_x表示当前块所在的最大编码块的左上角横坐标;sb_y表示当前块所在的最大编码块的左上角纵坐标;b_w表示当前块的宽度;b_h表示当前块的高度;cur_x表示当前块的左上角横坐标;cur_y表示当前块的左上角纵坐标;D、M和N为设定的常数。
若指示的是局部参考范围,那么可以从以下的块矢量中选择至少一个来对预测矢量候选列表进行填充:(-b_w,0)、(0,-b_h)、(-b_w,-b_h)、(-2×b_w,0)、(0,-2×b_h)、(0,0)、(0,-vb_w)、(-vb_h,0)、(-vb_w,-vb_h);其中,b_w表示当前块的宽度;b_h表示当前块的高度;vb_w表示预设的块宽度,比如可以是64、32、16、8或4;vb_h表示预设的块高度,比如可以是64、32、16、8或4。可选地,这些块矢量的精度可以是整像素级的,具体实现时可以使用不同精度的表示方式。
若指示的是全局参考范围和局部参考范围,那么可以从上述的块矢量中选择至少一个来进行填充。
在本申请的一个实施例中,在向预测矢量候选列表中填充预测块矢量时,也可以选择满足以下任一条件的候选预测块矢量进行填充:
cur_x+bvpi_x≥min_x;
cur_y+bvpi_y≥min_y;
cur_x+bvpi_x≥min_x且cur_y+bvpi_y≥min_y;
cur_x+b_w-1+bvpi_x≤max_x;
cur_y+b_h-1+bvpi_y≤max_y;
cur_x+b_w-1+bvpi_x≤max_x且cur_y+b_h-1+bvpi_y≤max_y;
其中,cur_x表示当前块的左上角横坐标;cur_y表示当前块的左上角纵坐标;b_w表示当前块的宽度;b_h表示当前块的高度;bvpi_x表示第i个候选预测块矢量的水平分量;bvpi_y表示第i个候选预测块矢量的竖直分量;若目标参考范围为全局参考范围,则min_x和min_y表示当前块所在片的左上角坐标,max_x和max_y表示处于指定最大编码块所在行中的全局参考范围的右下角坐标,指定最大编码块为当前块所在的最大编码块;若目标参考范围为局部参考范围,则min_x和min_y表示当前块所在的局部参考范围的左上角坐标,max_x和max_y表示当前块所在的局部参考范围的右下角坐标。
在一个具体的实施例中,如果预测矢量候选列表中包含的位移矢量的数量不满4个,则可以进行以下操作:
A)如果允许使用全局参考范围和局部参考范围,则可以向预测矢量候选列表中添填充{(0,-sb_h)、(-sb_w-D,0)、(0,-h')、(-w',0)},其中,SB大小为128,D为256;
B)如果仅允许使用局部参考范围,则可以向预测矢量候选列表中添加{(0,-h')、(-w',0)、(-w',-h')、(0,-2×h')};
C)如果仅允许全局参考范围,则可以向预测矢量候选列表中添加{(0,-sb_h)、(-sb_w-D,0)、(-sb_w,-sb_h)、(-2×sb_w,-sb_h)},其中,SB大小为128,D为256;
D)填充预测矢量候选列表时可以进行查重操作,删除重复的预测矢量;
其中,w'=min(b_w,64);h'=min(b_h,64)。
步骤S1130,从预测矢量候选列表中选择与目标参考范围相对应的预测矢量。
在本申请的一个实施例中,如果预测矢量候选列表中所包含的预测矢量是与目标参考范围相对应的,那么从预测矢量候选列表中选择与目标参考范围相对应的预测矢量的过程可以是从码流中解码得到预测矢量索引信息,然后根据预测矢量索引信息从预测矢量候选列表中的相应位置处选择一个预测矢量作为当前块的预测矢量。
在本申请的一个实施例中,从预测矢量候选列表中选择与目标参考范围相对应的预测矢量的过程也可以是按照设定的选择策略,从预测矢量候选列表中选择一个与目标参考范围相对应的预测矢量作为当前块的预测矢量。比如可以按照顺序选择第i个(i为正整数)与目标参考范围相对应的预测矢量作为当前块的预测矢量,或者随机选择一个。
步骤S1140,基于当前块的预测矢量对当前块进行解码处理。
在本申请的一个实施例中,基于当前块的预测矢量对当前块进行解码处理的过程可以是将当前块的预测矢量作为当前块的位移矢量,以对当前块进行解码处理。或者也可以是从码流中解码得到当前块的矢量残差,根据矢量残差和当前块的预测矢量计算当前块的位移矢量,然后根据当前块的位移矢量对当前块进行解码处理。
基于图9或图11所示实施例的技术方案,在本申请的一个实施例中,还可以从码流中解码得到位移矢量预测模式指示信息。在此基础上,如果位移矢量预测模式指示信息指示当前块采用Skip预测模式,则将当前块的预测矢量作为当前块的位移矢量,且跳过对当前块的残差系数的解码过程,以对当前块进行解码处理;
如果位移矢量预测模式指示信息指示当前块采用NearMV预测模式,则将当前块的预测矢量作为当前块的位移矢量,并对当前块的残差系数进行解码,以对当前块进行解码处理;
如果位移矢量预测模式指示信息指示当前块采用NewMV预测模式,则从码流中解码得到当前块的位移矢量残差,根据位移矢量残差和当前块的预测矢量计算当前块的位移矢量,并对当前块的残差系数进行解码,以对当前块进行解码处理。
需要说明的是:上述三种预测模式在实现时可以随机进行组合,比如使用这三种模式中的一种、两种或者全部。
在本申请的一个实施例中,还可以根据预测矢量候选列表的长度确定是否需要解码位移矢量预测模式指示信息,如果确定需要解码位移矢量预测模式指示信息,则从码流中解码得到位移矢量预测模式指示信息。比如,若预测矢量候选列表的长度为0,那么说明当前块的预测矢量为0,此时可以默认使用NewMV预测模式,通过解码当前块的位移矢量残差来作为当前块的预测矢量。
在本申请的一个实施例中,从码流中解码得到当前块的位移矢量残差的过程可以是直接从码流中解码得到当前块的位移矢量的符号和数值;或者也可以是从码流中解码得到联合类型指示信息(joint_type),联合类型指示信息用于指示当前块的位移矢量残差与当前块的预测矢量之间的分量是否一致,根据联合类型指示信息解码得到当前块的位移矢量残差。
比如,若该联合类型指示信息指示位移矢量残差与预测矢量之间的水平分量一致,竖直分量不一致,那么只需要从码流中解码竖直分量即可,这种情况下编码端也无需在码流中编码位移矢量残差的水平分量;若该联合类型指示信息指示位移矢量残差与预测矢量之间的水平分量不一致,竖直分量一致,那么只需要从码流中解码水平分量即可,这种情况下编码端无需在码流中编码位移矢量残差的竖直分量;若该联合类型指示信息指示位移矢量残差与预测矢量之间的水平分量与竖直分量都一致,那么无需从码流解码位移矢量残差,这种情况下编码端无需在码流中编码位移矢量残差;若该联合类型指示信息指示位移矢量残差与预测矢量之间的水平分量与竖直分量均不一致,那么需要从码流解码位移矢量残差的水平分量和竖直分量。
图12示出了根据本申请的一个实施例的视频编码方法的流程图,该视频编码方法可以由具有计算处理功能的设备来执行,比如可以由终端设备或服务器来执行。参照图12所示,该视频编码方法至少包括步骤S1210至步骤S1230,详细介绍如下:
在步骤S1210中,根据参考帧为当前帧的已编码块的位移矢量,生成预测矢量候选列表;
在步骤S1220中,从预测矢量候选列表中选择待编码的当前块的预测矢量;
在步骤S1230中,基于当前块的预测矢量对当前块进行编码处理。
需要说明的是:图12中所示的视频编码方法中的实现细节与前述实施例中所述的视频解码方法的实现细节类似,不再赘述。
总体而言,本申请实施例的技术方案可以根据参考帧为当前帧的已解码块的位移矢量构建更适合的预测矢量候选列表,以保证从中选择出更为准确的预测矢量,有利于提升编码性能。并且也可以根据参考范围类型选择合适的默认预测矢量导出方法,以针对不同的参考范围,选择对应的预测矢量,进而可以提高矢量预测的准确率,降低位移矢量的编码代价,提升编码性能。
以下以解码端的角度,再次对本申请实施例的技术方案的实现细节进行详细阐述:
在一些可选的实施例中,在对当前块进行解码时,需要解码当前块的位移矢量,以下以当前块为IBC块为例进行说明,IBC块的位移矢量为块矢量bv(bv_x,bv_y)。
可选地,码流中可以包含bvp_mode,指示所使用的块矢量预测模式,以下预测模式可以单独使用或组合在一起使用:
A)块矢量预测模式包括Skip模式,在这种预测模式下,当前块的bv等于bvp(BlockVector Prediction,预测块矢量),且当前块的残差系数默认为0,不需要进行解码。
B)块矢量预测模式包括NearMV模式,在这种预测模式下,当前块的bv等于bvp,但是需要解码当前块的残差系数。
C)块矢量预测模式包括NewMV预测模式,在这种预测模式下,需要解码bvd(BlockVector Difference,块矢量残差),当前块的bv=bvd+bvp,同时需要解码当前块的残差系数。
可选地,在解码bvd时既可以采用直接解码的方式,即从码流中解码bvd的符号和绝对值。或者也可以将bvd的解码方式分为几类,然后先解码joint_type确认所属类别,再进行bvd的解码。例如分为以下4种情况:bvd与bvp各分量均一致,不需要解码bvd;bvd与bvp水平分量一致,竖直分量不一致,此时只需解码bvd的竖直分量;bvd与bvp水平分量不一致,竖直分量一致,此时只需解码bvd的水平分量;bvd与bvp各分量都不一致,此时需要从码流中解码bvd的水平分量和竖直分量。
在本申请的一个实施例中,可以从预测块矢量候选列表中导出当前块的bvp,具体比如可以解码预测块矢量索引bvp_index,然后根据bvp_index所指示的bvp在预测块矢量候选列表中的位置来导出当前块的bvp;或者也可以按照固定的规则顺序导出bvp,不需要解码索引,如检查预测块矢量候选列表中前2个候选bvp,然后将第一个不为0的候选bvp导出为当前块的bvp。
需要说明的是:如果码流中包含用于指示当前IBC块的参考块所在的参考范围类别指示信息ibc_ref_type,那么需要使用相应类别的bvp。比如指示当前IBC块的参考块在全局参考范围内,那么需要使用与该全局参考范围相对应的bvp;若指示当前IBC块的参考块在局部参考范围内,那么需要使用与该局部参考范围相对应的bvp。
ibc_ref_type属于块级的参考范围类别指示信息,码流中也可以包含图像级别的参考范围类别指示信息,或者片级的参考范围类别指示信息,以分别指示当前图像或当前片内的IBC块的参考范围。当然也可以通过多级的参考范围类别指示信息进行指示,比如通过图像级别的参考范围类别指示信息和块级的参考范围类别指示信息。
在本申请的一个实施例中,预测块矢量候选列表bvp_list的构建方法如下:
1、预测块矢量候选列表bvp_list可包括空域相邻已解码块的块矢量信息,即SBVP(space based block vector prediction,空域块矢量预测列表)。
具体地,可以构建一个长度为N1的SBVP,按照设定顺序记录空域邻近已解码IBC块的BV。
其中,空域相邻已解码IBC块包括当前块上方N1行或左方N2列的已解码块,N1和N2为正整数。该设定顺序可以是空域邻近已解码IBC块的解码顺序、扫描顺序、空域邻近已解码IBC块的位移矢量所对应的权重等。该位移矢量所对应的权重可以与以下至少一个因素相关联:位移矢量的重复次数、位移矢量所对应的块大小、位移矢量所对应的块位置。
可选地,SBVP可以根据bv的参考范围类型(如全局参考范围、局部参考范围等)进行构建,比如可以只包含参考块在对应参考范围内的bv。
2、预测块矢量候选列表bvp_list可包括历史已解码块的块矢量信息,即HBVP(history based block vector prediction,历史块矢量预测列表)。
具体地,可以构建一个长度为N2的HBVP,按照设定顺序记录已解码IBC块的BV(或者是参考帧为当前帧的已解码块的BV),每完成一个IBC块的解码后,将该解码块的bv按先入先出(First Input First Output,FIFO)的顺序加入HBVP,其中,解码顺序与当前块邻近的bv具有更高的优先级。
需要说明的是:在将bv插入HBVP时可进行查重操作,如果列表中存在与新的需要插入的BV重复的BV,则将HBVP中重复的BV删除。
可选地,HBVP可以具有检查次数限制,对于一个SB、SB行或tile,当加入HBVP的BV数量超过预设值时,可以停止将已解码块的BV加入HBVP。并且HBVP也可以按SB、SB行或tile进行重置。
HBVP中的bv也可以具有不同的排列顺序,比如按照已解码IBC块的解码顺序、扫描顺序、已解码IBC块的位移矢量所对应的权重等。该位移矢量所对应的权重可以与以下至少一个因素相关联:位移矢量的重复次数、位移矢量所对应的块大小、位移矢量所对应的块位置。
3、预测块矢量候选列表bvp_list除了单独由SBVP或HBVP构成之外,还可以是由两者的组合构成。
如果由SBVP和HBVP共同构建bvp_list,那么可以进行查重操作使列表中不含重复的实例。同时,如果码流中包含有参考范围类别指示信息(可以是块级的参考范围类别指示信息ibc_ref_type,也可以是图像级或者片级的参考范围类别指示信息),那么可以使用以下方法构建bvp_list:
使用参考块在参考范围类别指示信息所指示的参考范围内的已解码IBC块的bv构建bvp_list;或者先使用已解码块的bv计算当前IBC块的参考块,然后仅当该参考块在参考范围类别指示信息所指示的参考范围内时,才将该已解码块的bv用于构建bvp_list。
可见,在本申请的实施例中,码流中包含有参考范围类别指示信息、bvp_mode和bvp_index中的一个或多个,以下以参考范围类别指示信息是ibc_ref_type为例,对本申请的具体实施例进行说明:
以下给出一些具体的实施例:
实施例1:码流中包括ibc_ref_type、bvp_mode和bvp_index。
解码端的处理过程是:解码ibc_ref_type,如果ibc_ref_type的值为0,指示当前IBC块的参考块位于局部参考范围,否则当前IBC块的参考块位于全局参考范围。
解码bvp_mode,根据bvp_mode的值确认使用的块矢量预测模式:
若bvp_mode值为0表示使用skip模式,当前块的bv=bvp,跳过残差系数的解码;若bvp_mode的值为1表示使用NearMv模式,当前块的bv=bvp;若bvp_mode的值为2表示使用NewMV模式,采用基于类别(即joint_tpye)的方法解码得到bvd,当前块的bv=bvd+bvp。
解码bvp_index确认bvp在bvp_list中的位置。
在该实施例中,构建的bvp_list的最大长度为8,在具体构建时,仅使用与ibc_ref_type对应的候选构建预测块矢量候选列表。并且允许使用空域邻近或历史编码顺序邻近的候选bv,比如可以先向bvp_list中加入SBVP中的候选bv,如果bvp_list列表未填满,再加入HBVP中的候选bv。
实施例2:码流中包括bvp_mode和bvp_index。
在该实施例中,块矢量预测模式有2种,包括NearMV模式和NewMV模式。可以根据bvp_index确认bvp在bvp_list的位置,然后确定出bvp。
在该实施例中,构建的bvp_list的最大长度为8,在具体构建时,可以只使用SBVP中的候选bv。
实施例3:码流中包括bvp_index。
在该实施例中,块矢量预测模式只有一种预测模式NewMV模式。可以根据bvp_index确认bvp在bvp_list的位置,然后确定出bvp。
在该实施例中,构建的bvp_list的最大长度为8,在具体构建时,可以只使用SBVP中的候选bv。
实施例4:码流中包含指示参考范围的标志、bvp_mode和bvp_idx。
可选地,指示参考范围的标志可以是allowed_global_intrabc和allowed_local_intrabc,这两个标志分别指示当前图像或者当前片中的块是否允许使用全局参考范围或局部参考范围。
比如,若allowed_global_intrabc的值为1,则指示允许使用全局参考范围;若allowed_global_intrabc的值为0,则指示不允许使用全局参考范围。若allowed_local_intrabc的值为1,则指示允许使用局部参考范围;若allowed_local_intrabc的值为0,则指示不允许使用局部参考范围。
解码端除了解码指示参考范围的标志之外,还包括:
解码bvp_mode确认使用的模式,比如可以包含两种模式,0表示是NewMV模式,1表示是NearMV模式。
解码bvp_index确认bvp在bvp_list中的位置。
在该实施例中,构建的bvp_list的最大长度为4,bvp_list由SBVP和HBVP构成,如果列表长度小于4,则根据参考范围填充bvp_list,具体如下:
A)如果允许使用全局参考范围和局部参考范围,则可以向预测矢量候选列表中添填充{(0,-sb_h)、(-sb_w-D,0)、(0,-h')、(-w',0)},其中,SB大小为128,D为256;
B)如果仅允许使用局部参考范围,则可以向预测矢量候选列表中添加{(0,-h')、(-w',0)、(-w',-h')、(0,-2×h')};
C)如果仅允许全局参考范围,则可以向预测矢量候选列表中添加{(0,-sb_h)、(-sb_w-D,0)、(-sb_w,-sb_h)、(-2×sb_w,-sb_h)},其中,SB大小为128,D为256;
D)填充预测矢量候选列表时可以进行查重操作,删除重复的预测矢量;
其中,w'=min(b_w,64);h'=min(b_h,64)。
综上,本申请实施例的技术方案可以根据参考范围类型选择合适的默认预测矢量导出方法,以针对不同的参考范围,选择对应的预测矢量,进而可以提高矢量预测的准确率,降低位移矢量的编码代价,提升编码性能。并且也可以根据参考帧为当前帧的已解码块的位移矢量构建更适合的预测矢量候选列表,以保证从中选择出更为准确的预测矢量,有利于提升编码性能。
以下介绍本申请的装置实施例,可以用于执行本申请上述实施例中的方法。对于本申请装置实施例中未披露的细节,请参照本申请上述的方法实施例。
图13示出了根据本申请的一个实施例的视频解码装置的框图,该视频解码装置可以设置在具有计算处理功能的设备内,比如可以设置在终端设备或服务器内。
参照图13所示,根据本申请的一个实施例的视频解码装置1300,包括:第一生成单元1302、第一选择单元1304和第一处理单元1306。
其中,第一生成单元1302配置为根据参考帧为当前帧的已解码块的位移矢量,生成预测矢量候选列表;第一选择单元1304配置为从所述预测矢量候选列表中选择待解码的当前块的预测矢量;第一处理单元1306配置为基于所述当前块的预测矢量对所述当前块进行解码处理。
在本申请的一些实施例中,基于前述方案,所述第一选择单元1304配置为:从码流中解码得到预测矢量索引信息,根据所述预测矢量索引信息从所述预测矢量候选列表中的相应位置处选择一个预测矢量作为所述当前块的预测矢量。
在本申请的一些实施例中,基于前述方案,所述第一选择单元1304还用于:根据所述预测矢量候选列表的长度确定是否需要解码所述预测矢量索引信息;若确定需要解码所述预测矢量索引信息,则从所述码流中解码得到预测矢量索引信息。
在本申请的一些实施例中,基于前述方案,所述预测矢量索引信息采用基于上下文的多符号算数编码。
在本申请的一些实施例中,基于前述方案,所述码流中包含有所述预测矢量索引信息的最大值,所述最大值位于序列头、图像头或者片头中;其中,不同的位移矢量预测模式对应的所述最大值相同或者不同。
在本申请的一些实施例中,基于前述方案,所述第一选择单元1304配置为:按照设定的选择策略,从所述预测矢量候选列表中选择一个预测矢量作为所述当前块的预测矢量。
在本申请的一些实施例中,基于前述方案,所述第一生成单元1302配置为:从参考帧为当前帧的已解码块的位移矢量中,获取所述当前块相邻近的已解码块的位移矢量;按照设定顺序,对所述当前块相邻近的已解码块的位移矢量进行排序,以生成第一位移矢量列表;根据所述第一位移矢量列表,生成所述预测矢量候选列表。
在本申请的一些实施例中,基于前述方案,所述相邻近的已解码块包括以下至少一个:处于所述当前块上方n1行的已解码块、处于所述当前块左方n2列的已解码块;其中,n1和n2为正整数。
在本申请的一些实施例中,基于前述方案,所述第一生成单元1302配置为:从参考帧为当前帧的已解码块的位移矢量中,获取历史已解码块的位移矢量;按照设定顺序,将所述历史已解码块的位移矢量按照先入先出的方式添加至设定长度的队列中,以生成第二位移矢量列表;根据所述第二位移矢量列表,生成所述预测矢量候选列表。
在本申请的一些实施例中,基于前述方案,所述第一生成单元1302还配置为:在将所述历史已解码块的位移矢量添加至所述队列中时,若所述队列中已存在相同的位移矢量,则删掉所述队列中已存在的相同的位移矢量。
在本申请的一些实施例中,基于前述方案,一个所述第二位移矢量列表对应于至少一个待解码区域,所述待解码区域包括以下中的一个:所述当前块所在的最大编码块、所述当前块所在的最大编码块中的行、所述当前块所在的片。
在本申请的一些实施例中,基于前述方案,所述第一生成单元1302还配置为:若指定待解码区域所对应的第二位移矢量列表中的位移矢量超过设定值,则停止向所述指定待解码区域所对应的第二位移矢量列表中添加位移矢量。
在本申请的一些实施例中,基于前述方案,所述第一生成单元1302还配置为:若向指定待解码区域所对应的第二位移矢量列表中添加位移矢量的次数超过设定次数,则停止向所述指定待解码区域所对应的第二位移矢量列表中添加位移矢量。
在本申请的一些实施例中,基于前述方案,所述第一生成单元1302配置为:从参考帧为当前帧的已解码块的位移矢量中获取所述当前块相邻近的已解码块的位移矢量,并按照设定顺序对所述当前块相邻近的已解码块的位移矢量进行排序,以生成第一位移矢量列表;
从参考帧为当前帧的已解码块的位移矢量中,获取历史已解码块的位移矢量,并按照设定顺序将所述历史已解码块的位移矢量按照先入先出的方式添加至设定长度的队列中,以生成第二位移矢量列表;
根据所述第一位移矢量列表和所述第二位移矢量列表,生成所述预测矢量候选列表。
在本申请的一些实施例中,基于前述方案,所述第一生成单元1302配置为:将所述第一位移矢量列表和所述第二位移矢量列表进行合并,并删除重复的位移矢量,以生成所述预测矢量候选列表。
在本申请的一些实施例中,基于前述方案,所述第一生成单元1302还配置为:检测所述第一位移矢量列表和所述第二位移矢量列表中是否存在未处于预设区域内的位移矢量,所述预设区域包括以下至少一个:当前图像、当前片、当前的全局参考范围和当前的局部参考范围;在将所述第一位移矢量列表和所述第二位移矢量列表进行合并的过程中,删除未处于所述预设区域内的位移矢量。
在本申请的一些实施例中,基于前述方案,所述设定顺序包括以下中的一个:已解码块的解码顺序、已解码块的扫描顺序、已解码块的类型、位移矢量所对应的权重;其中,所述权重与以下至少一个因素相关联:位移矢量的重复次数、位移矢量所对应的块大小、位移矢量所对应的块位置。
在本申请的一些实施例中,基于前述方案,所述视频解码装置还包括:解码单元,配置为从码流中解码得到参考范围类别指示信息,所述参考范围类别指示信息用于指示帧内块复制模式所使用的目标参考范围,所述目标参考范围包括全局参考范围和局部参考范围中的至少一个;所述第一选择单元1304配置为:从所述预测矢量候选列表中选择与所述目标参考范围相对应的预测矢量。
在本申请的一些实施例中,基于前述方案,所述第一生成单元1302配置为:从参考帧为当前帧的已解码块的位移矢量中,获取所对应的参考块处于所述目标参考范围内、且采用帧内块复制模式的目标已解码块;根据所述目标已解码块的位移矢量生成所述预测矢量候选列表。
在本申请的一些实施例中,基于前述方案,所述第一生成单元1302配置为:根据参考帧为当前帧的已解码块的位移矢量,计算所述当前块的参考块;确定所述当前块的参考块中处于所述目标参考范围内的目标参考块;根据所述目标参考块所对应的已解码块的位移矢量,生成所述预测矢量候选列表。
在本申请的一些实施例中,基于前述方案,所述参考范围类别指示信息为图像级的参考范围类别指示信息或者片级的参考范围类别指示信息;所述第一生成单元1302还配置为:若所述预测矢量候选列表中包含的位移矢量的数量未达到设定数量,则根据所述图像级的参考范围类别指示信息或者片级的参考范围类别指示信息,向所述预测矢量候选列表中填充预设的块矢量。
在本申请的一些实施例中,基于前述方案,所述视频解码装置还包括:解码单元,配置为从码流中解码得到位移矢量预测模式指示信息;所述第一处理单元1306配置为:
若所述位移矢量预测模式指示信息指示所述当前块采用Skip预测模式,则将所述当前块的预测矢量作为所述当前块的位移矢量,且跳过对所述当前块的残差系数的解码过程,以对所述当前块进行解码处理;
若所述位移矢量预测模式指示信息指示所述当前块采用NearMV预测模式,则将所述当前块的预测矢量作为所述当前块的位移矢量,并对所述当前块的残差系数进行解码,以对所述当前块进行解码处理;
若所述位移矢量预测模式指示信息指示所述当前块采用NewMV预测模式,则从所述码流中解码得到所述当前块的位移矢量残差,根据所述位移矢量残差和所述当前块的预测矢量计算所述当前块的位移矢量,并对所述当前块的残差系数进行解码,以对所述当前块进行解码处理。
在本申请的一些实施例中,基于前述方案,所述解码单元还配置为:根据所述预测矢量候选列表的长度确定是否需要解码所述位移矢量预测模式指示信息;若确定需要解码所述位移矢量预测模式指示信息,则从所述码流中解码得到所述位移矢量预测模式指示信息。
在本申请的一些实施例中,基于前述方案,所述第一处理单元1306从所述码流中解码得到所述当前块的位移矢量残差的过程,包括:从所述码流中解码得到所述当前块的位移矢量的符号和数值;或者
从所述码流中解码得到联合类型指示信息,所述联合类型指示信息用于指示所述当前块的位移矢量残差与所述当前块的预测矢量之间的分量是否一致,根据所述联合类型指示信息解码得到所述当前块的位移矢量残差。
图14示出了根据本申请的一个实施例的视频编码装置的框图,该视频编码装置可以设置在具有计算处理功能的设备内,比如可以设置在终端设备或服务器内。
参照图14所示,根据本申请的一个实施例的视频编码装置1400,包括:第二生成单元1402、第二选择单元1404和第二处理单元1406。
其中,第二生成单元1402配置为根据参考帧为当前帧的已编码块的位移矢量,生成预测矢量候选列表;第二选择单元1404配置为从所述预测矢量候选列表中选择待编码的当前块的预测矢量;第二处理单元1406配置为基于所述当前块的预测矢量对所述当前块进行编码处理。
图15示出了适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。
需要说明的是,图15示出的电子设备的计算机系统1500仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图15所示,计算机系统1500包括中央处理单元(Central Processing Unit,CPU)1501,其可以根据存储在只读存储器(Read-Only Memory,ROM)1502中的程序或者从存储部分1508加载到随机访问存储器(Random Access Memory,RAM)1503中的程序而执行各种适当的动作和处理,例如执行上述实施例中所述的方法。在RAM 1503中,还存储有系统操作所需的各种程序和数据。CPU 1501、ROM 1502以及RAM 1503通过总线1504彼此相连。输入/输出(Input/Output,I/O)接口1505也连接至总线1504。
以下部件连接至I/O接口1505:包括键盘、鼠标等的输入部分1506;包括诸如阴极射线管(Cathode Ray Tube,CRT)、液晶显示器(Liquid Crystal Display,LCD)等以及扬声器等的输出部分1507;包括硬盘等的存储部分1508;以及包括诸如LAN(Local AreaNetwork,局域网)卡、调制解调器等的网络接口卡的通信部分1509。通信部分1509经由诸如因特网的网络执行通信处理。驱动器1510也根据需要连接至I/O接口1505。可拆卸介质1511,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1510上,以便于从其上读出的计算机程序根据需要被安装入存储部分1508。
特别地,根据本申请的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本申请的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的计算机程序。在这样的实施例中,该计算机程序可以通过通信部分1509从网络上被下载和安装,和/或从可拆卸介质1511被安装。在该计算机程序被中央处理单元(CPU)1501执行时,执行本申请的系统中限定的各种功能。
需要说明的是,本申请实施例所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、闪存、光纤、便携式紧凑磁盘只读存储器(Compact Disc Read-Only Memory,CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的计算机程序。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的计算机程序可以用任何适当的介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。其中,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
作为另一方面,本申请还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该电子设备执行时,使得该电子设备实现上述实施例中所述的方法。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本申请的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本申请实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、触控终端、或者网络设备等)执行根据本申请实施方式的方法。
本领域技术人员在考虑说明书及实践这里公开的实施方式后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。

Claims (29)

1.一种视频解码方法,其特征在于,包括:
根据参考帧为当前帧的已解码块的位移矢量,生成预测矢量候选列表;
从所述预测矢量候选列表中选择待解码的当前块的预测矢量;
基于所述当前块的预测矢量对所述当前块进行解码处理。
2.根据权利要求1所述的视频解码方法,其特征在于,从所述预测矢量候选列表中选择所述当前块的预测矢量,包括:
从码流中解码得到预测矢量索引信息,根据所述预测矢量索引信息从所述预测矢量候选列表中的相应位置处选择一个预测矢量作为所述当前块的预测矢量。
3.根据权利要求2所述的视频解码方法,其特征在于,所述视频解码方法还包括:
根据所述预测矢量候选列表的长度确定是否需要解码所述预测矢量索引信息;
若确定需要解码所述预测矢量索引信息,则从所述码流中解码得到预测矢量索引信息。
4.根据权利要求2或3所述的视频解码方法,其特征在于,所述预测矢量索引信息采用基于上下文的多符号算数编码。
5.根据权利要求2所述的视频解码方法,其特征在于,所述码流中包含有所述预测矢量索引信息的最大值,所述最大值位于序列头、图像头或者片头中;
其中,不同的位移矢量预测模式对应的所述最大值相同或者不同。
6.根据权利要求1所述的视频解码方法,其特征在于,从所述预测矢量候选列表中选择所述当前块的预测矢量,包括:
按照设定的选择策略,从所述预测矢量候选列表中选择一个预测矢量作为所述当前块的预测矢量。
7.根据权利要求1所述的视频解码方法,其特征在于,根据参考帧为当前帧的已解码块的位移矢量,生成预测矢量候选列表,包括:
从参考帧为当前帧的已解码块的位移矢量中,获取所述当前块相邻近的已解码块的位移矢量;
按照设定顺序,对所述当前块相邻近的已解码块的位移矢量进行排序,以生成第一位移矢量列表;
根据所述第一位移矢量列表,生成所述预测矢量候选列表。
8.根据权利要求7所述的视频解码方法,其特征在于,所述相邻近的已解码块包括以下至少一个:处于所述当前块上方n1行的已解码块、处于所述当前块左方n2列的已解码块;
其中,n1和n2为正整数。
9.根据权利要求1所述的视频解码方法,其特征在于,根据参考帧为当前帧的已解码块的位移矢量,生成预测矢量候选列表,包括:
从参考帧为当前帧的已解码块的位移矢量中,获取历史已解码块的位移矢量;
按照设定顺序,将所述历史已解码块的位移矢量按照先入先出的方式添加至设定长度的队列中,以生成第二位移矢量列表;
根据所述第二位移矢量列表,生成所述预测矢量候选列表。
10.根据权利要求9所述的视频解码方法,其特征在于,所述视频解码方法还包括:
在将所述历史已解码块的位移矢量添加至所述队列中时,若所述队列中已存在相同的位移矢量,则删掉所述队列中已存在的相同的位移矢量。
11.根据权利要求9所述的视频解码方法,其特征在于,一个所述第二位移矢量列表对应于至少一个待解码区域,所述待解码区域包括以下中的一个:
所述当前块所在的最大编码块、所述当前块所在的最大编码块中的行、所述当前块所在的片。
12.根据权利要求11所述的视频解码方法,其特征在于,所述视频解码方法还包括:
若指定待解码区域所对应的第二位移矢量列表中的位移矢量超过设定值,则停止向所述指定待解码区域所对应的第二位移矢量列表中添加位移矢量;或者
若向指定待解码区域所对应的第二位移矢量列表中添加位移矢量的次数超过设定次数,则停止向所述指定待解码区域所对应的第二位移矢量列表中添加位移矢量。
13.根据权利要求1所述的视频解码方法,其特征在于,根据参考帧为当前帧的已解码块的位移矢量,生成预测矢量候选列表,包括:
从参考帧为当前帧的已解码块的位移矢量中获取所述当前块相邻近的已解码块的位移矢量,并按照设定顺序对所述当前块相邻近的已解码块的位移矢量进行排序,以生成第一位移矢量列表;
从参考帧为当前帧的已解码块的位移矢量中,获取历史已解码块的位移矢量,并按照设定顺序将所述历史已解码块的位移矢量按照先入先出的方式添加至设定长度的队列中,以生成第二位移矢量列表;
根据所述第一位移矢量列表和所述第二位移矢量列表,生成所述预测矢量候选列表。
14.根据权利要求13所述的视频解码方法,其特征在于,根据所述第一位移矢量列表和所述第二位移矢量列表,生成所述预测矢量候选列表,包括:
将所述第一位移矢量列表和所述第二位移矢量列表进行合并,并删除重复的位移矢量,以生成所述预测矢量候选列表。
15.根据权利要求14所述的视频解码方法,其特征在于,所述视频解码方法还包括:
检测所述第一位移矢量列表和所述第二位移矢量列表中是否存在未处于预设区域内的位移矢量,所述预设区域包括以下至少一个:当前图像、当前片、当前的全局参考范围和当前的局部参考范围;
在将所述第一位移矢量列表和所述第二位移矢量列表进行合并的过程中,删除未处于所述预设区域内的位移矢量。
16.根据权利要求7、8或13所述的视频解码方法,其特征在于,所述设定顺序包括以下中的一个:已解码块的解码顺序、已解码块的扫描顺序、已解码块的类型、位移矢量所对应的权重;
其中,所述权重与以下至少一个因素相关联:位移矢量的重复次数、位移矢量所对应的块大小、位移矢量所对应的块位置。
17.根据权利要求1所述的视频解码方法,其特征在于,所述视频解码方法还包括:
从码流中解码得到参考范围类别指示信息,所述参考范围类别指示信息用于指示帧内块复制模式所使用的目标参考范围,所述目标参考范围包括全局参考范围和局部参考范围中的至少一个;
从所述预测矢量候选列表中选择待解码的当前块的预测矢量,包括:从所述预测矢量候选列表中选择与所述目标参考范围相对应的预测矢量。
18.根据权利要求17所述的视频解码方法,其特征在于,根据参考帧为当前帧的已解码块的位移矢量,生成预测矢量候选列表,包括:
从参考帧为当前帧的已解码块的位移矢量中,获取所对应的参考块处于所述目标参考范围内、且采用帧内块复制模式的目标已解码块;
根据所述目标已解码块的位移矢量生成所述预测矢量候选列表。
19.根据权利要求17所述的视频解码方法,其特征在于,根据参考帧为当前帧的已解码块的位移矢量,生成预测矢量候选列表,包括:
根据参考帧为当前帧的已解码块的位移矢量,计算所述当前块的参考块;
确定所述当前块的参考块中处于所述目标参考范围内的目标参考块;
根据所述目标参考块所对应的已解码块的位移矢量,生成所述预测矢量候选列表。
20.根据权利要求17所述的视频解码方法,其特征在于,所述参考范围类别指示信息为图像级的参考范围类别指示信息或者片级的参考范围类别指示信息;所述视频解码方法还包括:
若所述预测矢量候选列表中包含的位移矢量的数量未达到设定数量,则根据所述图像级的参考范围类别指示信息或者片级的参考范围类别指示信息,向所述预测矢量候选列表中填充预设的块矢量。
21.根据权利要求1至3、5至15、17至20中任一项所述的视频解码方法,其特征在于,所述视频解码方法还包括:从码流中解码得到位移矢量预测模式指示信息;
基于所述当前块的预测矢量对所述当前块进行解码处理,包括:
若所述位移矢量预测模式指示信息指示所述当前块采用Skip预测模式,则将所述当前块的预测矢量作为所述当前块的位移矢量,且跳过对所述当前块的残差系数的解码过程,以对所述当前块进行解码处理;
若所述位移矢量预测模式指示信息指示所述当前块采用NearMV预测模式,则将所述当前块的预测矢量作为所述当前块的位移矢量,并对所述当前块的残差系数进行解码,以对所述当前块进行解码处理;
若所述位移矢量预测模式指示信息指示所述当前块采用NewMV预测模式,则从所述码流中解码得到所述当前块的位移矢量残差,根据所述位移矢量残差和所述当前块的预测矢量计算所述当前块的位移矢量,并对所述当前块的残差系数进行解码,以对所述当前块进行解码处理。
22.根据权利要求21所述的视频解码方法,其特征在于,所述视频解码方法还包括:
根据所述预测矢量候选列表的长度确定是否需要解码所述位移矢量预测模式指示信息;
若确定需要解码所述位移矢量预测模式指示信息,则从所述码流中解码得到所述位移矢量预测模式指示信息。
23.根据权利要求21所述的视频解码方法,其特征在于,从所述码流中解码得到所述当前块的位移矢量残差,包括:
从所述码流中解码得到所述当前块的位移矢量的符号和数值;或者
从所述码流中解码得到联合类型指示信息,所述联合类型指示信息用于指示所述当前块的位移矢量残差与所述当前块的预测矢量之间的分量是否一致,根据所述联合类型指示信息解码得到所述当前块的位移矢量残差。
24.一种视频编码方法,其特征在于,包括:
根据参考帧为当前帧的已编码块的位移矢量,生成预测矢量候选列表;
从所述预测矢量候选列表中选择待编码的当前块的预测矢量;
基于所述当前块的预测矢量对所述当前块进行编码处理。
25.一种视频解码装置,其特征在于,包括:
第一生成单元,配置为根据参考帧为当前帧的已解码块的位移矢量,生成预测矢量候选列表;
第一选择单元,配置为从所述预测矢量候选列表中选择待解码的当前块的预测矢量;
第一处理单元,配置为基于所述当前块的预测矢量对所述当前块进行解码处理。
26.一种视频编码装置,其特征在于,包括:
第二生成单元,配置为根据参考帧为当前帧的已编码块的位移矢量,生成预测矢量候选列表;
第二选择单元,配置为从所述预测矢量候选列表中选择待编码的当前块的预测矢量;
第二处理单元,配置为基于所述当前块的预测矢量对所述当前块进行编码处理。
27.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至23中任一项所述的视频解码方法,或实现如权利要求24所述的视频编码方法。
28.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述电子设备实现如权利要求1至23中任一项所述的视频解码方法,或实现如权利要求24所述的视频编码方法。
29.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机指令,所述计算机指令存储在计算机可读存储介质中,电子设备的处理器从所述计算机可读存储介质读取并执行所述计算机指令,使得所述电子设备执行如权利要求1至23中任一项所述的视频解码方法,或实现如权利要求24所述的视频编码方法。
CN202210260543.1A 2022-03-16 2022-03-16 视频编解码方法、装置、计算机可读介质及电子设备 Pending CN116805968A (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN202210260543.1A CN116805968A (zh) 2022-03-16 2022-03-16 视频编解码方法、装置、计算机可读介质及电子设备
PCT/CN2022/135499 WO2023173809A1 (zh) 2022-03-16 2022-11-30 视频编解码方法、装置、存储介质、电子设备及计算机程序产品
KR1020247009420A KR20240051197A (ko) 2022-03-16 2022-11-30 비디오 인코딩 및 디코딩 방법, 장치, 저장 매체, 전자 기기 및 컴퓨터 프로그램 제품
US18/516,013 US20240089494A1 (en) 2022-03-16 2023-11-21 Video encoding and decoding method and apparatus, storage medium, electronic device, and computer program product

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210260543.1A CN116805968A (zh) 2022-03-16 2022-03-16 视频编解码方法、装置、计算机可读介质及电子设备

Publications (1)

Publication Number Publication Date
CN116805968A true CN116805968A (zh) 2023-09-26

Family

ID=88022138

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210260543.1A Pending CN116805968A (zh) 2022-03-16 2022-03-16 视频编解码方法、装置、计算机可读介质及电子设备

Country Status (4)

Country Link
US (1) US20240089494A1 (zh)
KR (1) KR20240051197A (zh)
CN (1) CN116805968A (zh)
WO (1) WO2023173809A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117615129B (zh) * 2024-01-23 2024-04-26 腾讯科技(深圳)有限公司 帧间预测方法、装置、计算机设备及存储介质

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106464896B (zh) * 2014-07-07 2020-03-13 寰发股份有限公司 利用帧内区块复制模式编码的视频编码方法
WO2017131908A1 (en) * 2016-01-29 2017-08-03 Google Inc. Dynamic reference motion vector coding mode
WO2019036080A1 (en) * 2017-08-15 2019-02-21 Google Llc ESTIMATION OF CONSTRAINED MOTION FIELD FOR INTERPRETING
CN115442594A (zh) * 2019-06-20 2022-12-06 Jvc建伍株式会社 动图像编码装置和方法、以及动图像解码装置和方法
CN113709458B (zh) * 2020-05-22 2023-08-29 腾讯科技(深圳)有限公司 视频编解码中的位移矢量预测方法、装置及设备

Also Published As

Publication number Publication date
WO2023173809A1 (zh) 2023-09-21
KR20240051197A (ko) 2024-04-19
US20240089494A1 (en) 2024-03-14

Similar Documents

Publication Publication Date Title
CN112291571B (zh) 视频解码方法及装置以及计算机设备和存储介质
CN113574885B (zh) 视频解码方法、装置以及电子设备
CN114827597B (zh) 视频解码方法、装置、计算机设备及存储介质
CN110944185B (zh) 视频解码的方法和装置、计算机设备及存储介质
CN113259661A (zh) 视频解码的方法和装置
CN113301333A (zh) 视频解码的方法和装置
CN114615504B (zh) 视频解码方法、视频编码方法、装置及设备
CN112543337B (zh) 视频解码方法、装置、计算机可读介质及电子设备
CN113709458B (zh) 视频编解码中的位移矢量预测方法、装置及设备
US20240089494A1 (en) Video encoding and decoding method and apparatus, storage medium, electronic device, and computer program product
KR102604094B1 (ko) 비디오 코딩을 위한 방법 및 장치
WO2022022299A1 (zh) 视频编解码中的运动信息列表构建方法、装置及设备
WO2023196025A1 (en) Symmetric affine mode
WO2022193870A1 (zh) 视频编解码方法、装置、计算机可读介质及电子设备
CN116805969A (zh) 视频编解码方法、装置、计算机可读介质及电子设备
CN114079788B (zh) 视频编解码中的运动信息列表构建方法、装置及设备
CN116530081B (zh) 视频解码方法及视频解码装置
WO2024109099A1 (zh) 视频编解码方法、装置、计算机可读介质及电子设备
US20240144439A1 (en) Filtering method and apparatus, computer-readable medium
CN115086656A (zh) 视频编解码方法、装置、计算机可读介质及电子设备
CN117560502A (zh) 视频编码方法、装置、计算机可读介质及电子设备
CN117956164A (zh) 视频编解码方法、装置、计算机可读介质及电子设备
CN115086655A (zh) 视频编解码方法、装置、计算机可读介质及电子设备
CN114374849A (zh) 一种候选运动信息列表确定方法、装置、电子设备及存储介质
CN116456086A (zh) 环路滤波方法、视频编解码方法、装置、介质及电子设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40092646

Country of ref document: HK