CN112655214A - 用于视频编码和信令通知的运动信息存储 - Google Patents

用于视频编码和信令通知的运动信息存储 Download PDF

Info

Publication number
CN112655214A
CN112655214A CN201980025039.XA CN201980025039A CN112655214A CN 112655214 A CN112655214 A CN 112655214A CN 201980025039 A CN201980025039 A CN 201980025039A CN 112655214 A CN112655214 A CN 112655214A
Authority
CN
China
Prior art keywords
picture
coding
motion information
coding unit
inter
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
CN201980025039.XA
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.)
Ai Ruishi LLC
Original Assignee
Ai Ruishi LLC
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 Ai Ruishi LLC filed Critical Ai Ruishi LLC
Publication of CN112655214A publication Critical patent/CN112655214A/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/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/103Selection of coding mode or of prediction mode
    • H04N19/109Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/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/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/188Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a video data packet, e.g. a network abstraction layer [NAL] unit
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • H04N19/426Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements using memory downsizing methods
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures

Landscapes

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

Abstract

一种对视频进行帧间编码的方法,其中与有关共位编码单元的运动信息的存储相关联的编码器和解码器存储器需求减少。在所述方法中,只与单个或经过缩减的共位编码单元集合相关的运动信息可以存储在所述编码器和解码器处。在操作中,如果所述编码器确定当前编码单元的运动信息应该为所述共位编码单元的当前所存储运动信息更换当前所存储运动信息,那么所述编码器可以在所述编码器处更换所述运动信息并将指示符与所述当前编码单元一起传输,以便向所述解码器传送当前所存储运动信息当前应该更新或更换为与所述当前编码单元相关联的所述运动信息的信号。

Description

用于视频编码和信令通知的运动信息存储
优先权要求
本申请根据35 U.S.C.§119(e)要求早先在2018年4月12日提交的第62/656,743号美国临时申请、在2018年4月12日提交的第62/656,763号美国临时申请、在2018年4月20日提交的第62/660,883号美国临时申请和在2018年5月31日提交的第62/678,864号美国临时申请的优先权,其中每一申请的全文特此以引用的方式并入本文中。
技术领域
本公开涉及视频编码的领域,具体地说,涉及编码效率增加以及与对所存储共位图片的数目及存储器需求的控制相关联的减少的存储器负担。
背景技术
不断发展的视频编码标准的技术改进展现出提高编码效率的趋势,以实现更高的比特率、更高的分辨率和更好的视频质量。联合视频探索团队开发了一种被称为JVET的新型视频编码方案,并正在开发一种被称为多功能视频编码(VVC)的更新型视频编码方案—由JVET于2018年10月1日发布的标题为多功能视频编码(草案2)的标准的草案2的VVC第7版的完整内容据此以引用方式并入本文。类似于像HEVC(高效视频编码)的其它视频编码方案,JVET和VVC都是基于块的混合空域和时域预测编码方案。然而,相对于HEVC,JVET和VVC包括对比特流结构、语法、约束条件以及用于生成解码图片的映射的很多修改。JVET已经在联合探索模型(JEM)编码器和解码器中实施,但VVC预计要到2020年初才能实现。
当前和预期的视频编码方案通常需要多个图片存储在编码器和解码器两个地方,以便对视频进行编码和解码。但是,此类信息的传输和存储可能比较麻烦。因此,需要的是一种能够减少系统负担的用于视频编码和信令通知的运动信息存储系统和方法。
发明内容
一个或多个计算机的系统可被配置成通过在该系统上安装软件、固件、硬件或它们的组合来执行特定操作或动作,所述软件、固件、硬件或它们的组合在操作中使该系统执行特定所述动作。一个或多个计算机程序可被配置为通过包括指令来执行特定操作或动作,所述指令当由数据处理装置执行时使该装置执行所述动作。一个总体方面可包括接收第一编码单元;接收第二编码单元;确定所述第一编码单元和所述第二编码单元是不是单个共位图片的部分;以及在所述第一编码单元和所述第二编码单元是单个共位图片的部分的情况下,使用与所述第一编码单元和所述第二编码单元相关联的运动信息对当前编码单元进行编码。此方面的其它实施方案包括相应的计算机系统、装置和记录在一个或多个计算机存储设备上的计算机程序,它们中的每一个都被配置为执行方法的动作。
实施方案可进一步包括以下特征中的一个或多个:帧间编码方法,其中与所述第一编码单元相关联的所述运动信息进行;帧间编码方法,其中与所述第二编码单元相关联的所述运动信息进行归一化;帧间编码方法,其中指示符指示所述第一编码单元和所述第二编码单元是不是单个共位图片的部分;帧间编码方法,其中所述指示符包括在与所述当前编码单元相关联的NAL单元中。在帧间编码方法中,所述指示符是单个比特。所描述的技术的实施方案可包括硬件、方法或过程,或计算机可访问介质上的计算机软件。
一个总体方面还可包括一种帧间编码系统,其包括:在存储器的第一部分中接收第一编码单元,在所述存储器的第二部分中接收第二编码单元,确定所述第一编码单元和所述第二编码单元是不是单个共位图片的部分,以及在所述第一编码单元和所述第二编码单元是单个共位图片的部分的情况下,使用与所述第一编码单元和所述第二编码单元相关联的运动信息对当前编码单元进行编码。此方面的其它实施方案可以包括相应的计算机系统、装置和记录在一个或多个计算机存储设备上的计算机程序,它们中的每一个都被配置为执行方法的动作。
附图说明
借助于附图解释本发明的其它细节,在附图中:
图1描绘了将帧划分成多个编码树单元(CTU)。
图2a-2c描绘了CTU被示范性分割成编码单元(CU)。
图3描绘了图2的CU分割的四叉树加二叉树(QTBT)表示。
图4描绘了JVET或VVC编码器中用于CU编码的简化框图。
图5描绘了用于JVET或VVC中的亮度分量的可能帧内预测模式。
图6描绘了JVET或VVC解码器中用于CU编码的简化框图。
图7描绘了用于视频编码和信令通知的运动信息存储系统和方法的框图。
图8描绘了选择参考图片的系统和方法的框图。
图9描绘了用于减少与运动信息相关联的系统负担的系统和方法的框图。
图10描绘了用于视频编码和信令通知的运动信息存储系统和方法的框图。
图11描绘了示出用于减少与运动信息相关联的系统负担的系统和方法的表格。
图12描绘了适于且配置成提供可变模板尺寸以用于模板匹配的计算机系统的实施方案。
图13描绘了适于且配置成提供可变模板尺寸以用于模板匹配的视频编码器/解码器的实施方案。
具体实施方式
图1描绘了将帧划分成多个编码树单元(CTU)100。帧可以是视频序列中的图像。帧可以包括矩阵或矩阵的集合,以像素值表示图像中的强度度量。因此,这些矩阵的集合可以生成视频序列。可以定义像素值以表示全色视频编码中的颜色和亮度,其中像素被划分成三个通道。例如,在YCbCr颜色空间中,像素可以具有表示图像中的灰度水平强度的亮度值Y,以及表示颜色从灰色到蓝色和红色的差异程度的两个色度值Cb和Cr。在其它实施方案中,可以用不同颜色空间或模型中的值来表示像素值。视频的分辨率可以确定帧中的像素的数量。更高的分辨率可能表示更多像素和更好的图像清晰度,但也可能导致更高的带宽、存储和传输需求。
可以使用JVET对视频序列的帧进行编码和解码。JVET是联合视频探索团队开发的视频编码方案。已经在JEM(联合探索模型)编码器和解码器中实施了多个版本的JVET。类似于像HEVC(高效视频编码)的其它视频编码方案,JVET是一种基于块的混合空域和时域预测编码方案。在利用JVET进行编码期间,首先将帧分成被称为CTU 100的正方形块,如图1所示。例如,CTU 100可以是128×128像素的块。
图2a描绘了CTU 100被示范性地分割成CU 102。帧中的每个CTU 100可以被分割成一个或多个CU(编码单元)102。如下所述,CU 102可以用于预测和变换。与HEVC不同的是,在JVET中,CU 102可以是矩形或正方形,并可以被编码而无需进一步分割成预测单元或变换单元。CU 102可以与其根CTU 100一样大,或者是与4×4块一样小的根CTU 100的更小细分。
在JVET中,可以根据四叉树加二叉树(QTBT)方案将CTU 100分割成CU 102,其中,可以根据四叉树将CTU 100递归地划分成正方形块,然后可以根据二叉树水平或垂直递归地划分那些正方形块。可以设置参数以根据QTBT控制划分,这些参数是例如CTU尺寸、四叉树和二叉树叶节点的最小尺寸、二叉树根节点的最大尺寸,以及二叉树的最大深度。在VVC中,也可以利用三叉树划分将CTU 100分割成CU。
作为非限制性示例,图2a示出了分割成CU 102的CTU 100,其中实线表示四叉树划分,虚线表示二叉树划分。如图所示,二叉树划分允许水平划分和垂直划分以定义CTU及其细分成CU的结构。图2b和2c描绘了CU的三叉树划分的替代非限制性示例,其中,CU的细分是不均等的。
图3描绘了图2的分割的QTBT表示。四叉树根节点代表CTU 100,其中四叉树部分中的每个子节点代表从正方形父块划分的四个正方形块中的一个。然后可以使用二叉树将四叉树叶节点代表的正方形块划分零次或多次,其中四叉树叶节点为二叉树的根节点。在二叉树部分的每个层级,可以垂直或水平地对块进行划分。设置为“0”的标志表示水平划分块,而设置为“1”的标志表示垂直划分块。
在四叉树划分和二叉树划分之后,由QTBT的叶节点代表的块代表要例如使用帧间预测或帧内预测编码来编码的最终CU 102。对于用帧间预测编码的条带或完整帧,可以为亮度和色度分量使用不同的分割结构。例如,对于帧间条带,CU 102可以具有用于不同颜色分量的编码块(CB),例如一个亮度CB和两个色度CB。对于用帧内预测编码的条带或完整帧,对于亮度和色度分量,分割结构可以是相同的。
图4描绘了JVET编码器中用于CU编码的简化框图。视频编码的主要阶段包括:如上所述的分割以识别CU 102,接着在404或406处使用预测对CU 102编码,在408处生成残差CU410,在412处进行变换,在416处进行量化,以及在420处进行熵编码。图4中所示的编码器和编码过程还包括下文更详细描述的解码过程。
给定当前CU 102,编码器可以在404处使用帧内预测在空域上或在406处使用帧间预测在时域上获得预测CU 402。预测编码的基本理念是在初始信号与针对初始信号的预测之间传输差分或残余信号。在接收机侧,可以通过将残余和预测相加来重构初始信号,如下文将描述的。因为差分信号的相关性低于原始信号,所以其传输所需的比特更少。
完全用帧内预测CU编码的条带,例如,整个图片或图片的一部分,可以是无需参考其它条带就可以编码的I条带,并且因此可以是解码能够开始的可能点。用至少一些帧间预测CU编码的条带可以是可以基于一个或多个参考图片解码的预测(P)或双向预测(B)条带。P条带可以与先前编码的条带一起使用帧内预测和帧间预测。例如,可以使用帧间预测对P条带进行比I条带更进一步的压缩,但需要先前编码的条带的编码来对它们进行编码。B条带可以使用帧内预测或帧间预测,使用来自两个不同帧的插值预测,来使用来自先前和/或后续条带的数据进行其编码,从而提高运动估计过程的精确度。在一些情况下,也可以或可以替代地使用帧内块复制来对P条带和B条带进行编码,其中,使用来自相同条带的其它部分的数据。
如下文将要论述的,可以基于从先前编码的CU 102(例如,相邻CU 102或参考图片中的CU 102)重构的CU 434进行帧内预测或帧间预测。
当在404处用帧内预测在空域上对CU 102进行编码时,可以找到一种帧内预测模式,该模式基于来自图片中的相邻CU 102的样点来最佳地预测CU 102的像素值。
在对CU的亮度分量编码时,编码器可以生成候选帧内预测模式的列表。尽管HEVC对于亮度分量具有35种可能的帧内预测模式,但在JVET中,对于亮度分量有67种可能的帧内预测模式,在VVC中,有85种预测模式。这些模式包括平面模式、DC模式、图5中所示的65种定向模式,以及18种宽角预测模式,平面模式使用从相邻像素生成的值的三维平面,DC模式使用相邻像素的平均值,定向模式使用沿实线指示的方向从相邻像素复制的值,宽角预测模式可以与非正方形块一起使用。
在为CU的亮度分量生成候选帧内预测模式的列表时,列表上的候选模式的数量可以取决于CU的尺寸。候选列表可以包括:具有最低SATD(绝对变换差之和)成本的HEVC的35种模式的子集;为JVET添加的与从HEVC模式发现的候选相邻的新定向模式;以及来自基于用于先前编码的相邻块的帧内预测模式识别的CU 102的六个最可能模式(MPM)的集合以及默认模式列表中的模式。
在对CU的色度分量编码时,也可以生成候选帧内预测模式的列表。候选模式的列表可以包括从亮度样点利用跨分量线性模型投影生成的模式、为亮度CB,尤其是色度块中的共位位置发现的帧内预测模式,以及先前为相邻块发现的色度预测模式。编码器可以找到列表上具有最低速率失真成本的候选模式,并在对CU的亮度和色度分量编码时使用那些帧内预测模式。可以在指示用于对每个CU 102进行编码的帧内预测模式的比特流中对语法进行编码。
在已经选择了用于CU 102的最佳帧内预测模式之后,编码器可以使用那些模式生成预测CU 402。当选定模式是定向模式时,可以使用4抽头滤波器来提高定向精确度。可以利用边界预测滤波器,例如2抽头或3抽头滤波器调节预测块的顶部或左侧的列或行。
可以利用位置相关帧内预测组合(PDPC)过程对预测CU 402进行进一步平滑化,该过程使用相邻块的未滤波样点调节基于相邻块的滤波样点生成的预测CU 402,或者使用3抽头或5抽头低通滤波器进行自适应参考样点平滑化以处理参考样点。
当在406处利用帧间预测在时域上对CU 102编码时,可以找到一组运动矢量(MV),其指向参考图片中对CU 102的像素值做出最佳预测的样点。帧间预测通过表示条带中像素块的位移来利用条带之间的时间冗余性。通过称为运动补偿的过程,根据先前或之后条带中的像素值确定位移。可以在比特流中向解码器提供表示相对于特定参考图片的像素位移的运动矢量和关联的参考索引,连带提供初始像素与经运动补偿的像素之间的残差。解码器可以使用残差和信令通知的运动矢量和参考索引来在重构条带中重构像素块。
在JVET中,可以以1/16像素的精确度存储运动矢量,并可以利用四分之一像素或整数像素分辨率对运动矢量与CU的预测运动矢量之间的差值编码。
在JVET中,可以使用各种技术为CU 102内的多个子CU找到运动矢量,所述技术是例如高级时域运动矢量预测(ATMVP)、空时运动矢量预测(STMVP)、仿射运动补偿预测、模式匹配的运动矢量推导(PMMVD)和/或双向光流(BIO)。
使用ATMVP,编码器可以为CU 102找到指向参考图片中对应块的时域矢量。可以基于为先前编码的相邻CU 102找到的运动矢量和参考图片找到时域矢量。使用整个CU 102的时域矢量指向的参考块,可以为CU 102内的每个子CU找到运动矢量。
STMVP可以通过对为先前利用帧间预测编码的相邻块找到的运动矢量进行缩放和平均,来为子CU找到运动矢量,并一起找到时域矢量。
可以使用仿射运动补偿预测,基于为块的顶角找到的两个控制运动矢量,为该块中的每个子CU预测运动矢量场。例如,可以基于为CU 102内的每个4×4块找到的顶角运动矢量,推导出子CU的运动矢量。
PMMVD可以使用双边匹配或模板匹配为当前CU 102找到初始运动矢量。双边匹配可以沿运动轨迹查看两个不同参考图片中的当前CU102和参考块,而模板匹配可以查看当前CU 102和参考图片中由模板标识的对应块。然后可以针对每个子CU逐个细化为CU 102找到的初始运动矢量。
在利用双向预测基于更早和更晚参考图片执行帧间预测时可以使用BIO,并且BIO允许基于两个参考图片之间的差值梯度为子CU找到运动矢量。
在一些情况下,可以在CU级别使用局部照明补偿(LIC),以基于与当前CU 102相邻的样点和与候选运动矢量标识的参考块相邻的对应样点,找到缩放因子参数和偏移参数的值。在JVET中,LIC参数可以变化并在CU级别被信令通知。
对于以上方法中的一些,可以在CU级别将为CU的每个子CU找到的运动矢量用信号发送到解码器。对于其它方法,例如PMMVD和BIO,不在比特流中信令通知运动信息以节省开销,并且解码器可以通过相同过程推导出运动矢量。
在已经找到了CU 102的运动矢量之后,编码器可以使用那些运动矢量生成预测CU402。在一些情况下,在已经为各个子CU找到了运动矢量时,在通过组合那些运动矢量与先前为一个或多个相邻子CU找到的运动矢量来生成预测CU 402时,可以使用重叠块运动补偿(OBMC)。
在使用双向预测时,JVET可以使用解码器侧运动矢量细化(DMVR)来找到运动矢量。DMVR允许使用双向模板匹配过程,基于为双向预测找到的两个运动矢量来找到运动矢量。在DMVR中,可以找到利用两个运动矢量中的每个运动矢量生成的预测CU 402的加权组合,并且可以通过用最佳地指向组合的预测CU 402的新运动矢量更换这两个运动矢量来细化这两个运动矢量。可以使用两个细化的运动矢量来生成最终预测CU 402。
在408处,如上所述,一旦已经在404处用帧内预测或在406处用帧间预测找到了预测CU 402,编码器就可以从当前CU 102减去预测CU 402,以找到残差CU 410。
编码器可以在412处使用一个或多个变换操作来将残差CU 410变换成在变换域中表达残差CU 410的变换系数414,例如,使用离散余弦块变换(DCT变换)将数据转换到变换域中。与HEVC相比,JVET允许更多类型的变换操作,包括DCT-II、DST-VII、DST-VII、DCT-VIII、DST-I和DCT-V操作。可以将允许的变换操作分组成子集,并可以由编码器信令通知使用了哪些子集以及那些子集中的哪些特定操作的指示。在一些情况下,可以使用大块尺寸变换来将大于某个尺寸的CU 102中的高频变换系数归零,使得仅为那些CU 102保持低频变换系数。
在一些情况下,可以在正向内核变换之后向低频变换系数414应用模式相关的非独立二次变换(MDNSST)。MDNSST操作可以使用基于旋转数据的Hypercube-Givens变换(HyGT)。在使用时,可以由编码器信令通知标识特定MDNSST操作的索引值。
在416处,编码器可以将变换系数414量化成量化变换系数416。可以通过将系数值除以量化步长来计算每个系数的量化,该量化步长是从量化参数(QP)推导出的。在一些实施方案中,Qstep被定义为2(QP-4)/6。因为可以将高精度变换系数414转换成具有有限数量的可能值的量化变换系数416,所以量化可以有助于数据压缩。于是,变换系数的量化可以限制变换过程生成和发送的比特量。不过,尽管量化是有损操作,并且量化的损失不能恢复,但量化过程在重构序列的质量与表示该序列所需的信息量之间进行权衡。例如,较低的QP值可以产生质量更好的解码视频,尽管需要更大量的数据才能表示和传输。相反,高QP值可以产生质量较低的重构视频序列,但数据和带宽需求较低。
JVET可以利用基于方差的自适应量化技术,这允许每个CU 102为其编码过程使用不同的量化参数(而不是在对帧的每个CU 102编码时使用相同的帧QP)。基于方差的自适应量化技术自适应地降低某些块的量化参数,同时在其它块中增大量化参数。为了为CU 102选择特定QP,计算该CU的方差。简而言之,如果CU的方差高于帧的平均方差,可以为该CU102设置比帧的QP更高的QP。如果CU 102呈现出比帧的平均方差更低的方差,则可以分配更低的QP。
在420处,编码器可以通过对量化变换系数418进行熵编码来找到最终压缩比特422。熵编码旨在消除要传输的信息的统计冗余。在JVET中,可以使用CABAC(上下文自适应二进制算术编码)对量化变换系数418编码,该技术使用概率度量来消除统计冗余。对于具有非零量化变换系数418的CU 102,可以将量化变换系数418转换成二进制。然后可以使用上下文模型对二进制表示的每个比特(“二进制位”)编码。CU 102可以被分解成三个区域,每个区域具有其自己的一组上下文模型以用于该区域内的像素。
可以执行多个扫描轮次以对二进制位进行编码。在对前三个二进制位(bin0、bin1和bin2)编码的轮次期间,可以通过找到该二进制位在多达五个由模板标识的先前编码的相邻量化变换系数418中的位置之和,来找到指示为该二进制位使用哪个上下文模型的索引值。
上下文模型可以基于二进制位的值为“0”或“1”的概率。在对值进行编码时,可以基于遇到值“0”和“1”的实际数量来更新上下文模型中概率。尽管HEVC使用固定表格来针对每个新图片对上下文模型进行重新初始化,但在JVET中,可以基于为先前编码的帧间预测图片开发的上下文模型对用于新帧间预测图片的上下文模型的概率进行初始化。
编码器可以产生比特流,该比特流包含残差CU 410的熵编码的比特422、诸如选定的帧内预测模式或运动矢量的预测信息、如何根据QTBT结构从CTU 100分割CU 102的指示符,和/或关于编码视频的其它信息。比特流可以由解码器解码,如下所述。
除了使用量化变换系数418找到最终压缩比特422之外,编码器还可以通过遵循与解码器将用来生成重构的CU 434的解码过程相同的解码过程,使用量化变换系数418来生成重构的CU 434。于是,一旦变换系数已经被编码器计算并量化,就可以将量化变换系数418传输到编码器中的解码环路。在量化CU的变换系数之后,解码环路允许编码器生成与解码器在解码过程中生成的相同的重构的CU 434。因此,在对新CU 102执行帧内预测或帧间预测时,编码器可以使用解码器会用于相邻CU 102或参考图片的相同的重构的CU 434。重构的CU 102、重构条带或完整的重构帧可以充当其它预测阶段的参考。
在编码器的解码环路处(并且参见下文,对于解码器中相同的操作),为了获得重构图像的像素值,可以执行去量化过程。为了对帧进行去量化,例如,将帧的每个像素的量化值乘以量化步长,例如上述(Qstep),以获得重构的去量化变换系数426。例如,在图4中所示的解码过程中,在编码器中,可以在424处对残差CU 410的量化变换系数418进行去量化以找到去量化变换系数426。如果在编码期间执行MDNSST操作,则在去量化之后可以对该操作进行反向操作。
在428处,可以例如通过向值应用DCT来获得重构图像,从而对去量化变换系数426进行逆变换以找到重构的残差CU 430。在432处,可以将重构的残差CU 430添加到在404处利用帧内预测或在406处利用帧间预测找到的对应预测CU 402,以便找到重构的CU 434。
在436处,可以在图片级别或CU级别在解码过程期间(在编码器中,或者如下文所述,在解码器中)向重构数据应用一个或多个滤波器。例如,编码器可以应用去方块滤波器、样点自适应偏移(SAO)滤波器和/或自适应环形滤波器(ALF)。编码器的解码过程可以实现滤波器,以估计可以解决重构图像中的潜在人工痕迹的最佳滤波器参数并将其传输到解码器。这样的改进提高了重构视频的客观和主观质量。在去方块滤波中,可以修改子CU边界附近的像素,而在SAO中,可以使用边缘偏移或频带偏移分类修改CTU 100中的像素。JVET的ALF可以使用对于每个2×2块具有圆形对称形状的滤波器。可以信令通知用于每个2×2块的滤波器的尺寸和身份的指示。
如果重构图片是参考图片,可以将它们存储在参考缓冲器438中,以在406处对将来的CU 102进行帧间预测。
在以上步骤期间,JVET允许使用内容自适应裁剪操作来调整颜色值,以匹配在上裁剪边界与下裁剪边界之间。裁剪边界可以针对每个条带改变,并且可以在比特流中信令通知标识边界的参数。
图6描绘了JVET解码器中用于CU编码的简化框图。JVET解码器可以接收包含关于已编码CU 102的信息的比特流。比特流可以指示如何根据QTBT结构从CTU 100分割出图片的CU 102,CU 102的预测信息(例如,帧内预测模式或运动矢量),以及表示熵编码残差CU的比特602。
在604处,解码器可以使用编码器在比特流中信令通知的CABAC上下文模型对熵编码比特602解码。解码器可以使用编码器信令通知的参数,来以与在编码期间更新上下文模型的概率相同的方式更新上下文模型的概率。
在604处对熵编码进行逆操作以找到量化变换系数606之后,解码器可以在608对它们进行去量化,以找到去量化变换系数610。如果在编码期间执行MDNSST操作,则在去量化之后可以由解码器对该操作进行逆操作。
在612处,可以对去量化变换系数610进行逆变换以找到重构的残差CU 614。在616处,可以将重构的残差CU 614添加到在622处利用帧内预测或在624处利用帧间预测找到的对应预测CU 626,以便找到重构的CU 618。
在620处,可以在图片级别或CU级别向重构数据应用一个或多个滤波器。例如,解码器可以应用去方块滤波器、样点自适应偏移(SAO)滤波器和/或自适应环形滤波器(ALF)。如上所述,可以使用位于编码器的解码环路中的环内滤波器来估计最优滤波器参数,以提高帧的客观和主观质量。这些参数被传输到解码器以在620处对重构帧滤波,以与编码器中的经滤波的重构帧。
在通过找到重构的CU 618并应用信令通知的滤波器生成重构图片之后,解码器可以输出重构图片作为输出视频628。如果重构图片要被用作参考图片,可以将它们存储在参考缓冲器630中,以在624处对将来的CU 102进行帧间预测。
当前图片的运动信息被认为与先前已编码图片的运动信息高度相关。块的运动信息可以包括块的编码模式、运动矢量和来自参考列表的参考索引。当前图片中的当前块可以使用其在先前已编码图片中的共位块的运动信息来导出它自己的运动信息。此概念已用于现有视频压缩标准,例如MPEG-4AVC/H.264、HEVC、VP 9、VP 10和其它压缩方法。实际上,MPEG-4AVC/H.264、HEVC和VVC使用当前块在一个先前已编码图片中的共位块的运动信息来导出当前图片中的当前块的直接模式。另外,HEVC和VVC使用当前块在先前已编码图片中的一个中的共位块的运动信息来导出当前图片中的当前块的时间运动矢量预测(TMVP)和合并模式。
利用多个参考图片的时域预测是许多现有视频压缩标准中的一个强大工具,例如,作为非限制性示例的MPEG-4AVC/H.264、HEVC和VVC。在操作中,对于当前(帧间)图片,参考图片当中的一个参考图片被定义为共位图片,并且共位图片的所有块的运动信息可用于对当前图片的块进行编码/解码。因此共位图片中的所有块的运动信息,包括模式、运动矢量和来自参考列表的参考索引,需要同时保持/存储在编码器和解码器处/编码器和解码器中。另外,因为当前图片可以使用参考图片缓冲器中的任何参考图片作为它的共位图片,所以所有参考图片的运动信息都被存储。这种存储在编码器和解码器存储器方面非常昂贵。
在HEVC中的操作中,SPS处的一个启用标志sps_temporal_mvp_enabled_flag被定义成启用/停用整个序列的时间运动信息的使用。一旦它在SPS级别启用,那么就在条带级别信令通知另一启用标志slice_temporal_mvp_enabled_flag,以便进一步控制是否针对当前条带使用时间运动信息。如果在条带级别启用时间运动信息,那么在条带标头中定义一个语法元素collocated_from_l0_flag。这个标志用于指示将使用哪一列表来识别共位图片。如果collocated_from_l0_flag等于1,那么它指定共位图片将根据列表0定义,否则如果collocated_from_l0_flag等于0,那么共位图片将根据列表1定义。如果所识别列表中的参考图片的数量仅为一,那么所识别列表中的图片将被视为共位图片,否则如果所识别列表中的参考图片的数量超过一个,那么使用另一语法元素collocated_ref_idx来识别所识别列表中的哪一图片将被识别为共位图片。作为非限制性示例,如果collocated_from_l0_flag是1,在列表0中定义有五个参考图片,并且collocated_ref_idx是2,那么列表0中的第三个图片将被识别为共位图片。
因为参考图片集(RPS)中的任何图片都能用作共位图片并且选择将RPS中的哪一图片设置为共位图片是编码器选择,所以所有参考图片的运动信息都必须保持/存储在编码器和解码器两个地方。在HEVC系统中,基于16x16的块尺寸来保持运动信息,以便在编码性能和存储器消耗需求之间实现更好的权衡。因此,在定义五个参考图片以对一个HEVE编码器/解码器中的1080p序列进行编码的情形中,一个图片将需要8160个尺寸为16x16((1920/16)*(1080/16))的块。对于B图片,将存在列表0和列表1。需要16个比特来存储运动矢量,且每个运动矢量具有水平分量和垂直分量。因此,需要5*8160*2*2*2=326,400个字节来存储所有所需要的运动矢量。对于每个块,还需要存储这两个列表的编码模式和参考索引。因此,在需要一个字节来存储模式且需要另外两个字节用于可能的两个参考索引的系统中,需要额外的5*8160*3=122,400个字节来存储所有信息。此外,还需要额外存储器来存储所有已编码/已解码参考图片的所有条带的参考图片集(RPS)。因此,在此类限制性示例中,需要至少448,800个字节来存储时间运动信息。
在JVET系统中,已经提出更小的4x4的块尺寸来提供精细运动信息。因此,JVET的存储器消耗需求可能比HEVC的存储器消耗需求多十六倍。
图7描绘了用于视频编码和信令通知的高效运动信息存储方法700。在图7中所描绘的实施方案中,在步骤702中确定与共位图片相关联的运动信息,接着在步骤704中,确定与当前图片和编码当前图片相关联的运动信息。在步骤706中,比较共位图片和当前图片中的每一个的运动信息,并在步骤708中,确定是否应该更新和传输与当前图片或共位图片相关联的运动信息。在一些实施方案中,步骤706可以不存在。如果在步骤708中,确定不应更新运动信息,那么在步骤710中,系统可前进到对图片进行编码并在包中包括指示应该使用最近存储的运动信息对图片进行解码的标志指示符。但是,如果在步骤708中,确定应该更新运动信息,那么在步骤712中,可以提取运动信息用于编码,在步骤714中,可以更新存储在编码器处的运动信息,然后在步骤716中,可以建立指示符用于包括在已编码传输中,所述已编码传输可以向解码器传送应该更新共位运动信息的信号。接着在步骤710中,更新后的共位运动信息和指示符可以在步骤710中用来对图片编码。如所描绘,在图7中,在一些实施方案中,步骤712可以直接向编码步骤710和/或步骤714提供信息。另外,在一些实施方案中,步骤712和/或步骤708可以直接触发在步骤716中设置更新指示符的步骤。也就是说,在一些实施方案中,步骤714和716可并行或以非循序的顺序发生,如图7中所描绘。
在步骤718中,可以传输和接收在步骤710中编码的图片。在步骤720中,接收方解码器可对接收到的图片进行解码,并确定接收到的传输是否包括更新或更换其共位运动信息的指示符。如果传输不含指示被命令进行共位运动信息的更新/更换的指示符,那么解码器可前进到步骤718并等待/接收下一图片。但是,在步骤720,解码器检测到已经接收更新共位运动信息的指示符,接着在步骤722中,可以触发更换/更新决策,并在步骤724中,可以提取更新后的共位运动信息,在步骤726中,可以在步骤726中更新存储在解码器处的共位运动信息然后系统回到步骤718,等待/接收下一图片。但是,在一些替代实施方案中,解码722可与步骤724和726并行进行,和/或解码722可直接从步骤724接收更新后的共位运动信息。
如关于图7所述,在针对当前图片的操作中,只需要将其共位图片的运动信息保持/存储在编码器和解码器两个地方,无需将参考缓冲器中的其它参考图片的运动信息保持/存储在编码器和解码器处。如参考图7中所描述,在操作中,假设在利用先前系统的参考缓冲器中存在N个参考图片,相比于现有视频编码标准,因为每一当前图片只存在一个共位图片,所以用于在编码器和解码器两个地方存储运动信息的存储器需求可减小N(=N/1)倍。
因此,在操作中,编码器可以使用任何已知、方便和/或期望的系统和/或方法来确定当前已编码条带/图片是否将用作未来图片的共位图片。如果是,那么将信令通知当前已编码图片,并且将保持/存储其运动信息,包括块模式、运动矢量和来自参考列表的参考索引,以用于未来编码/解码,并且过去共位图片的先前所存储运动信息将更换为新共位图片的运动信息。在一些替代实施方案中,可以存储超过一个参考图片/条带。
此外,依据不同应用,对于当前图片中的当前块,它在共位图片中的共位块可以不同方式定义。作为非限制性示例,共位块可以定义为相对于当前块在共位图片中的位置的右下或中心块,如在HEVC中。但是,在一些替代实施方案中,共位块可以定义为由当前块的一个帧间空间相邻块的运动矢量和参考索引指向的块,如在JVET和/或VVC中。
另外,在一些实施方案中,共位块的运动信息可用作合并模式候选者中的一个的运动信息,或者用作用于对当前图片中的当前块进行编码的运动矢量预测符,并且在一些实施方案中,共位图片可能不是参考图片,但可能是非参考图片。
在解码侧,可以对信令通知的标志进行解码,以检查当前已解码条带/图片是否将用作未来图片的共位图片。如果是,那么将保持/存储当前已解码图片的运动信息,包括它的块模式、运动矢量和来自参考列表的参考索引,以用于未来编码/解码,并且过去共位图片的先前所存储运动信息可以更换为新共位图片的运动信息。因此,在一些实施方案中,共位图片可能不一定是当前图片的参考图片,它可以是任何在先前编码/解码的图片。
在当前系统中,共位图片在SPS和条带级别被信令通知。但是,较早进行信令通知可以提高性能和效率。因此,如图7中所描绘,共位图片的信令通知可以在网络抽象层(NAL)单元级别指示,以提供更多的灵活性。作为非限制性示例,在一些实施方案中,可以改变NAL类型以指示当前CVS(已编码视频序列)是不是共位图片。在替代实施方案中,可以在NAL中添加一位标志,用于指示当前CVS(已编码视频序列)是不是共位图片。
在一些实施方案中,视频编码单元是具有VVC、HEVC或JVET中的类似定义的(网络抽象层)NAL单元或条带单元,并且共位图片的信令通知可以在NAL或条带级别发生。但是,在一些实施方案中,单个编码图片可具有超过一个NAL或条带。因此,在一些实施方案中,如果一个NAL单元或条带被信令通知为共位图片,那么与相同图片相关联的其它NAL单元或条带可以被信令通知为共位图片,由此进一步降低与视频传输相关联的带宽要求。也就是说,对于由共位图片指代定图片,已编码图片的所有条带/NAL单元的信令通知标志应该是相同的。
图8描绘了选择参考图片的系统和方法的框图800。在图8中所描绘的实施方案中,在步骤802中,接收关于CU的信息,然后在步骤804中,确定关于共位图片的信息。在步骤806中,确定共位图片是否包括超过一个条带或NAL。如果在步骤806中,确定共位图片包括超过一个条带或NAL,那么在步骤808中,使用与图片相关联的所有条带/NAL将图片识别为参考图片,并且可在步骤810中进行编码。但是,如果在步骤806中,确定共位图片只包括一个条带或NAL,那么在步骤810中,可按标准方式进行编码。
在如图9中所描绘的一些实施方案中,为了进一步减少存储器使用,可以使用归一化运动信息,而不是完整或压缩的运动信息。因此,在一些实施方案中,一旦一个图片被选为共位图片,每一个选定共位图片的块的运动矢量就可以基于此图片和块的对应参考图片之间的POC差来进行归一化,然后根据以下方程式进行存储:
MV_x_stored=MV_x/(POC_picture-POC_reference)
MV_y_stored=MV_y/(POC_picture-POC_reference)
其中,POC_picture和POC_reference表示图片的POC和块的参考图片的POC,且MV_x和MV_y表示块的运动矢量的(x,y)分量。接着,MV_x和MV_y的运动矢量分量可归一化为MV_x_stored和MV_y_stored。
接着,可以为共位图片存储归一化的(MV_x_stored,MV_y_stored)运动矢量。依据所要应用,用于运动矢量存储的块尺寸可为不同的。作为非限制性示例,16x16和4x4的尺寸可分别用于HEVC和JVET或VVC。但是,在替代实施方案中,可以采用任何已知、方便和/或期望的尺寸。
在编码器侧处,如果当前编码图片被选为其它图片的共位图片,那么可以存储当前编码图片中的一些或全部块的一些或全部运动矢量。或者,如果在解码器侧处,当前解码图片被选为共位图片,那么将存储当前解码图片中的一些或全部块的一些或全部运动矢量。
在存在超过一个列表的一些实施方案中,所有列表的所有MV都可以进行归一化。此外,如果当前块是帧内块,那么MV可以设置为0,如下:
MV_x_stored=0
MV_y_stored=0
值得注意的是,一旦块的运动矢量被归一化,就无需存储相关联的参考索引和编码模式。
在一些实施方案中,可以只存储一个列表而不是两个列表的运动矢量,以减少存储器需求/使用。
作为非限制性示例,在一些实施方案中,可以根据上文提供的方程式来确定归一化运动矢量,并将其存储用于共位图片。因此,当对当前图片中的当前块进行编码时,当前图片和共位图片的POC分别是POC_current和POC_collocated。因此,当前块的时间运动矢量预测符(MV_x_TMVP,MV_y_TMVP)可以根据以下方程式基于当前编码图片和其共位图片之间的POC差缩放其共位块的归一化运动矢量来获得:
MV_x_TMVP=MV_x_col_stored*(POC_current-POC_collocated)
MV_y_TMVP=MV_y_col_stored*(POC_current-POC_collocated) (3)
其中(MV_x_col_stored,MV_y_col_stored)是共位图片中的共位块的所存储归一化运动矢量的两个分量。因此,在一些实施方案中,共位块可依据不同应用而具有不同定义。作为非限制性示例,在一些实施方案中,共位块可以定义为HEVC中在共位图片中处于相同位置的块,然后可定义为由当前块的空间相邻块的运动矢量和参考图片指向的块。
在图9中描绘的框流程图900中,在步骤902中,选择共位图片,然后在步骤904中,确定共位图片块。在步骤906中,可以缩放归一化运动矢量,然后在步骤908中进行编码。接着在步骤910中,可确定归一化共位图片块,如本文中所描述,并在步骤912中,可以传输已编码信号。在解码器侧处,在步骤914中,可以在步骤中接收比特流,接着如果指示归一化MV,那么在步骤916中,可以根据本文中所描述的技术缩放归一化MV信息,并且可以存储归一化运动矢量以用作未来共位图片块。接着,在步骤920中,可以根据本文中所描述的技术和系统对信号进行解码,并在步骤922中,可以重构图片。
根据如图10中所描绘的一些实施方案,可以识别超过一个所识别共位图片,但不是所有所识别的共位图片都可以更新。也就是说,在一些实施方案中,可存在N个图片被视为共位图片,其中N是整数,并且可以大于一。可以将N个共位图片识别为共位图片集(CPS),并且可以类似于HEVC中的参考图片集(RPS)的方式和/或以任何其它已知、方便和/或期望的方式管理CPS。在一些实施方案中,CPS可含有每个共位图片的POC信息,并且可通过使用先入先出(FIFO)方法和/或任何其它已知、方便和/或期望的方法来形成。也就是说,如果识别出新的共位图片,那么在CPS中所识别的共位图片的数量小于N的情况下,这个新的共位图片可以附加到当前CPS上,和/或在CPS当前含有N个条目的情况下,最新识别的共位图片可以更换具有N个条目的列表内的最早共位图片。在替代实施方案中,可以信令通知将指定CPS中的共位图片的索引更换为新共位图片的第一索引。因此,在一些实施方案中,可以对特殊索引进行编码,以便在N大于一的情况下指定使用CPS中的哪一共位图片。特殊索引可以在CU、图片或另一级别被信令通知。在一些实施方案中,当前图片的所有块都可以使用相同的共位图片。但是,在替代实施方案中,当前图片的块可以使用不同的共位图片,并且可以由每个块的特殊索引来指定将使用哪一共位图片。但是,在共位图片的数量是一的特殊情况中,不需要对特殊索引编码来指定共位图片。因此,在CPS含有多个条目的情形中,对于每个已编码图片,如果已编码图片被视为其它未来图片的共位图片,那么可以指定已编码图片,并且可以保持/存储已编码图片的运动信息,不管是运动相关信息还是归一化运动信息,并且这个新的共位图片可以插入CPS中或更换掉当前CPS中的现有条目。
在一些实施方案中,针对当前图片,特殊索引可以识别当前图片将使用CPS中的哪一共位图片。接着,可以根据此特殊索引来确定当前图片的共位图片。如果当前已编码条带/图片将用作未来图片的共位图片,那么可以信令通知指示当前已编码图片用作未来图片的共位图片的标志以及可能的指示CPS中的哪一共位图片将被去除并更换为当前图片的索引,并且可以保持/存储它的运动信息,包括它的块模式、运动矢量和来自参考列表的参考索引或归一化运动信息,以用于未来编码/解码。
在解码侧处,针对当前图片,指定CPS中的共位图片的索引可以在当前图片解码之前解码。接着,可以根据所识别的已解码索引确定当前图片的共位图片。因此,在一些实施方案中,可以对信令通知的标志进行解码,以验证当前已解码条带/图片是否将用作未来图片的共位图片。如果确定当前已解码条带/图片将用作未来图片的共位图片,那么可以保持/存储当前已解码图片的运动信息,包括它的块模式、运动矢量和来自参考列表的参考索引或归一化运动信息,以用于未来编码/解码,并且可以将共位图片中的一个(例如,最先存储的过去共位图片)的先前所存储运动信息更换为新共位图片的运动信息。
在当前图片的块可以使用不同共位图片的一些实施方案中,可以在对当前块编码之前为每个块编码特殊索引,而不是为整个图片编码特殊索引。作为非限制性示例,在CPS中存在两个共位图片的情况下,当当前图片进行编码/解码时,可处于当前条带标头中的索引可以指示这两个图片中的哪一个将成为当前图片的所有块的共位图片。因此,根据已编码/已解码索引,可以选择将哪个共位图片用于当前图片。
图10描绘了用于视频编码和信令通知的高效运动信息存储方法的框流程图1000。在图10中所描绘的实施方案中,在步骤1002中,确定与编码当前图片的共位图片相关联的运动信息,接着在步骤1004中,确定与共位图片集(CPS)和编码当前图片相关联的运动信息。在步骤1006中,可以建立指示符用于包括在已编码传输中,所述已编码传输可以向解码器传送是否应该更新CPS中的共位运动信息的信号,接着在步骤1008中,可进行编码。接着在步骤1010中,可以比较当前图片的运动信息与CPS中的运动信息。在步骤1012中,可确定是否希望更换CPS中的运动信息。如果在步骤1012中,确定希望更新CPS中的运动信息,那么在步骤1014中,可以更新CPS中的共位运动信息,并且系统可返回到步骤1002。在一些实施方案中,信号可指示CPS中的特定条目的更换。但是,在替代实施方案中,如本文所描述,可以使用FIFO系统来更新CPS,在又其它替代实施方案中,可以任何已知、方便和/或期望的方式更新CPS。但是,如果在步骤1012中,确定不需要更新CPS,那么系统可返回到步骤1002。
在步骤1016中,可以传输和接收在步骤1008中编码的图片。在步骤1018中,接收方解码器可对流中与是否更新CPS相关的那一部分进行解码,并在步骤1020中确定是否更新或更换CPS中的条目。如果在步骤1020中,确定CPS中不需要更新/更换,那么在步骤1026中,可使用当前CPS进行解码。但是,如果在步骤1020中,确定指示CPS的更新/更换,那么在步骤1022中可以提取运动信息,并在步骤1024中可以更新CPS,然后在步骤1026中对比特流中的其余部分进行解码。在一些替代实施方案中,解码1018可与步骤1022和1024并行进行,和/或解码1018可直接从步骤1022接收更新后的共位运动信息。
图11描绘了用于调整所存储时间运动矢量的存储器需求的替代系统和方法的表格图1100。在一些实施方案中,比特流中可以包括所存储时间运动矢量的分辨率。作为非限制性示例,所存储时间运动矢量的分辨率可以直接在比特流中进行显式信令通知。也就是说,在一些实施方案中,所存储时间运动矢量的分辨率可以被指定,并且包括在SPS、PPS或其它级别的比特流中。另外,在一些实施方案中,可以指定语法元素,用于指示八分之一像素、四分之一像素、整数像素、四像素和/或像素可能性的组合,并且可用于根据不同应用或不同需要或需求来存储运动矢量。分辨率可基于实施给定分辨率的应用、需要或需求来选择。在一些实施方案中,可由用户选择或指定所存储运动矢量的分辨率。
在一些实施方案中,所存储时间运动矢量的尺寸可以包括在比特流中。作为非限制性示例,所存储时间运动矢量的尺寸可被指定并包括在SPS、PPS或其它级别的比特流中。此外,在一些实施方案中,可以指定语法元素,用于指示可以使用一个字节、两个字节或四个字节或字节可能性的组合来存储运动矢量的每个分量。
如上文所提到,在一些实施方案中,为了进一步减少存储器使用,可以使用归一化运动信息,而不是完整或压缩的运动信息。因此,在一些实施方案中,一旦一个图片被选为共位图片,每一个选定共位图片的块的运动矢量就可以基于此图片和块的对应参考图片之间的POC差来进行归一化,然后根据以下方程式进行存储:
MV_x_stored=MV_x/(POC_picture-POC_reference)
MV_y_stored=MV_y/(POC_picture-POC_reference)
其中,POC_picture和POC_reference表示图片的POC和块的参考图片的POC,且MV_x和MV_y表示块的运动矢量的(x,y)分量。接着,MV_x和MV_y的运动矢量分量可归一化为MV_x_stored和MV_y_stored。
为了减少舍入错误,可以缩放所存储的运动矢量。在一些实施方案中,所存储运动矢量和/或缩放因子可被指定并包括在SPS、PPS或其它级别的比特流中。因此,替代性归一化运动矢量定义如下:
Normalized_MV_x_stored=scaling_factor*MV_x/(POC_picture-POC_reference),
Normalized_MV_y_stored=scaling_factor*MV_y/(POC_picture-POC_reference)。
其中
scaling_factor是指定的缩放因子,并且作为非限制性示例,可为8、16、24或更大。
在一些实施方案中,如果块具有单个列表的运动矢量,例如仅列表0,那么只能存储列表0的运动信息(运动矢量、参考索引、当前图片的RPS等等),或者只能存储列表0的归一化运动矢量。如果实施方案包括多个列表(例如,如果列表0、列表1均可用于块),那么可以存储列表0/列表1的运动信息(运动矢量、参考索引、当前图片的RPS等等),或者可以存储列表0/列表1的归一化运动矢量。另外,如果实施方案块包括单个列表(例如,列表1)的运动矢量,但其中具有多个列表选项(例如,仅列表1,但是列表0和1存在且可用),那么只能存储列表1的运动信息(运动矢量、参考索引、当前图片的RPS等等),或者只能存储列表1的归一化运动矢量。在图11中呈现了此示例的表格形式1100,其中1102指示列表0的运动矢量信息是否可用,1104指示列表1的运动矢量信息是否可用,1106指示基于在表格1100的各行中呈现的列表0/列表1的各种条件/可用性而将存储哪一运动信息。
但是,在使用时间运动矢量的一些替代实施方案中,不管哪些列表可用于当前块,都可相应地缩放所存储的时间运动矢量。
实践实施方案所需要的指令序列的执行可由如图12中所示的计算机系统1200执行。在实施方案中,指令序列的执行由单个计算机系统1200执行。根据其它实施方案,通过通信链路1215耦合的两个或更多个计算机系统1200可以彼此协调地执行指令序列。尽管将在下文呈现仅一个计算机系统1200的描述,但是应理解,可以采用任何数量的计算机系统1200来实践实施方案。
现将参考图12描述根据实施方案的计算机系统1200,本图是计算机系统1200的功能组件的框图。如本文中所使用,术语计算机系统1200广泛用于描述可以存储并独立运行一个或多个程序的任何计算设备。
每个计算机系统1200可以包括耦合到总线1206的通信接口1214。通信接口1214提供计算机系统1200之间的双向通信。相应计算机系统1200的通信接口1214传输和接收电、电磁或光信号,这些信号包括代表各种类型的信号信息的数据流,信号信息例如指令、消息和数据。通信链路1215将一个计算机系统1200与另一计算机系统1200链接。例如,通信链路1215可以是LAN,在此情况下,通信接口1214可以是LAN卡;或者通信链路1215可以是PSTN,在此情况下,通信接口1214可以是综合业务数字网(ISDN)卡或调制解调器;或者通信链路1215可以是因特网,在此情况下,通信接口1214可以是拨号、电缆或无线调制解调器。
计算机系统1200可以通过其相应通信链路1215和通信接口1214传输和接收消息、数据和指令,包括程序,即应用程序、代码。所接收的程序代码可以在被接收时由相应的处理器1207执行,和/或存储在存储设备1210或其它相关联的非易失性介质中以供后续执行。
在实施方案中,计算机系统1200协同数据存储系统1231一起操作,所述数据存储系统例如是含有易于被计算机系统1200访问的数据库1232的数据存储系统1231。计算机系统1200通过数据接口1233与数据存储系统1231通信。耦合到总线1206的数据接口1233传输和接收电、电磁或光信号,这些信号包括代表各种类型的信号信息的数据流,所述信号信息例如指令、消息和数据。在实施方案中,数据接口1233的功能可由通信接口1214执行。
计算机系统1200包括总线1206或用于传送指令、消息和数据(统称为信息)的其它通信机构,以及与总线1206耦合以处理信息的一个或多个处理器1207。计算机系统1200还包括耦合到总线1206以存储将由处理器1207执行的动态数据和指令的主存储器1208,例如随机存取存储器(RAM)或其它动态存储设备。主存储器1208还可用于在处理器1207执行指令期间存储临时数据,即变量,或其它中间信息。
计算机系统1200可以进一步包括耦合到总线1206以存储用于处理器1207的静态数据和指令的只读存储器(ROM)1209或其它静态存储设备。还可提供磁盘或光盘等存储设备1210,它可耦合到总线1206以存储用于处理器1207的数据和指令。
计算机系统1200可以经由总线1206耦合到显示设备1211,例如但不限于阴极射线管(CRT)或液晶显示器(LCD),以便向用户显示信息。字母数字按键和其它按键等输入设备1212耦合到总线1206,以便向处理器1207传送信息和命令选择。
根据一个实施方案,各个计算机系统1200通过它们相应的处理器1207执行主存储器1208中所含的一个或多个指令的一个或多个序列来执行特定操作。此类指令可以从例如ROM 1209或存储设备1210的另一计算机可用介质读取到主存储器1208中。主存储器1208中所含的指令序列的执行使处理器1207执行本文所描述的过程。在替代实施方案中,硬连线电路可以取代或结合软件指令使用。因此,实施方案不限于硬件电路和/或软件的任何特定组合。
如本文中所使用,术语“计算机可用”介质是指提供信息或可供处理器1207使用的任何介质。这样的介质可以采取很多形式,包括但不限于,非易失性介质、易失性介质和传输介质。非易失性介质,即,在不通电的情况下可以保持信息的介质,包括ROM 1209、CDROM、磁带和磁盘。易失性介质,即,在不通电的情况下无法保持信息的介质,包括主存储器1208。传输介质包括同轴电缆、铜线和光纤,包括包含总线1206的导线。传输介质还可以采取载波(即,可以在频率、幅度或相位方面被调制以传输信息信号的电磁波)的形式。此外,传输介质可以采取声波或光波(诸如,在无线电波和红外线数据通信期间产生的那些)的形式。
在以上说明书中,已经参考各实施方案的具体元素描述了各实施方案。但是,将显而易见的是,在不脱离实施方案的更广泛的实质和范围的情况下,可对其进行各种修改和变更。例如,读者要理解,本文所述的过程流程图中所示的过程动作的具体排序和组合仅仅是示范性的,并且可以使用不同或额外的过程动作或过程动作的不同组合或排序来实践这些实施方案。因此,说明书和附图应被视为是示范性的而非限制性的。
还应该指出的是,可以在各种计算机系统中实施本发明。本文所述的各种技术可以在硬件或软件或两者的组合中实现。优选地,在可编程计算机上执行的计算机程序中实施这些技术,所述可编程计算机各自包括处理器、可由处理器读取的存储介质(包括易失性和非易失性存储器和/或存储元件)、至少一个输入设备和至少一个输出设备。可以向使用输入设备输入的数据应用程序代码以执行上文描述的功能并产生输出信息。输出信息被应用到一个或多个输出设备。优选地以高阶程序编程语言或面向对象的编程语言实现每个程序,以与计算机系统通信。然而,如果需要的话,可以用汇编语言或机器语言来实现程序。在任何情况下,该语言可以是编译或解释语言。每个这样的计算机程序优选地存储在可由通用或专用可编程计算机读取的存储介质或设备(例如,ROM或磁盘)上,以在计算机读取存储介质或设备时配置并操作计算机以执行上述程序。还可以考虑将该系统实现为配置有计算机程序的计算机可读存储介质,其中如此配置的存储介质使计算机以特定的预定义方式运行。此外,示范性计算应用的存储元件可以是关系型或顺序(平坦文件)型计算数据库,其能够以各种组合和配置存储数据。
图13是可以结合本文中所描述的系统和设备的特征的源设备1312和目的地设备1310的高阶视图。如图13中所示,示例视频编码系统1310包括源设备1312和目的地设备1314,其中在此示例中,源设备1312生成已编码视频数据。因此,源设备1312可以称为视频编码设备。目的地设备1314可以对由源设备1312生成的已编码视频数据进行解码。因此,目的地设备1314可以称为视频解码设备。源设备1312和目的地设备1314可以是视频编码设备的示例。
目的地设备1314可经由通道1316从源设备1312接收已编码视频数据。通道1316可包括一类能够将已编码视频数据从源设备1312移动到目的地设备1314的介质或设备。在一个示例中,通道1316可包括使得源设备1312能够实时地直接向目的地设备1314传输已编码视频数据的通信介质。
在此示例中,源设备1312可根据无线通信协议等通信标准调制已编码视频数据,并且可将调制后的视频数据传输到目的地设备1314。通信介质可以包括无线或有线通信介质,例如射频(RF)频谱或一个或多个物理传输线。通信介质可以形成诸如局域网、广域网的基于分组的网络或诸如因特网的全球网络的一部分。通信介质可以包括路由器、交换机、基站或促进源设备1312与目的地设备1314之间的通信的其它设备。在另一示例中,通道1316可对应于存储由源设备1312生成的已编码视频数据的存储介质。
在图13的示例中,源设备1312包括视频源1318、视频编码器1320和输出接口1322。在一些情况下,输出接口1328可包括调制器/解调器(调制解调器)和/或传输器。在源设备1312中,视频源1318可包括源,例如视频捕获设备,如摄像机、含有先前捕获的视频数据的视频存档、用于从视频内容提供者接收视频数据的视频馈送接口,和/或用于生成视频数据的计算机图形系统,或此类源的组合。
视频编码器1320可对所捕获、预捕获或计算机生成的视频数据进行编码。输入图像可由视频编码器1320接收,并存储在输入帧存储器1321中。通用处理器1323可从此处加载信息并执行编码。用于驱动通用处理器的程序可以从存储设备加载,例如图13中描绘的示例存储器模块。通用处理器可以使用处理存储器1322执行编码,并且通用处理器的编码信息的输出可以存储在缓冲器中,例如存储在输出缓冲器1326中。
视频编码器1320可包括重采样模块1325,它可配置成在定义至少一个基础层和至少一个增强层的可伸缩视频编码方案中对视频数据进行译码(例如,编码)。作为编码过程的一部分,重采样模块1325可对至少一些视频数据重采样,其中重采样可使用重采样滤波器以自适应方式执行。
例如已编码比特流的已编码视频数据可以经由源设备1312的输出接口1328直接传输到目的地设备1314。在图13的示例中,目的地设备1314包括输入接口1338、视频解码器1330和显示设备1332。在一些情况下,输入接口1328可包括接收器和/或调制解调器。目的地设备1314的输入接口1338通过通道1316接收已编码视频数据。已编码视频数据可包括由视频编码器1320生成的表示视频数据的各种语法元素。这样的语法元素可以与通信介质上传输的已编码视频数据一起被包括,存储在存储介质上或存储在文件服务器上。
还可将已编码视频数据存储到存储介质或文件服务器上,以供稍后由目的地设备1314访问以用于解码和/或播放。例如,已编码比特流可以临时存储在输入缓冲器1331中,接着加载在通用处理器1333中。可以从存储设备或存储器加载用于驱动通用处理器的程序。通用处理器可使用处理存储器1332来执行解码。视频解码器1330还可包括重采样模块1335,类似于在视频编码器1320中采用的重采样模块1325。
图13分开描绘了重采样模块1335与通用处理器1333,但是所属领域的技术人员应了解,重采样功能可由通用处理器所执行的程序执行,并且视频编码器中的处理可以使用一个或多个处理器来实现。已解码图像可以存储在输出帧缓冲器1336中,然后发出到输入接口1338。
显示设备1338可以与目的地设备1314集成,也可以在其外部。在一些示例中,目的地设备1314可包括集成显示设备,并且还可配置成与外部显示设备介接。在其它示例中,目的地设备1314可以是显示设备。大体来说,显示设备1338向用户显示已解码视频数据。
视频编码器1320和视频解码器1330可根据视频压缩标准来操作。ITU-T VCEG(Q6/16)和ISO/IEC MPEG(JTC 1/SC 29/WG 11)正在研究对未来视频编码技术的标准化的潜在需求,该技术的压缩能力显著地超过当前的高效视频编码HEVC标准(包括其对屏幕内容编码和高动态范围编码的当前扩展和近期扩展)。各工作组正在共同努力一起开展这项探索活动(被称为联合视频探索团队(JVET)),以评估这个领域中其专家提出的压缩技术设计。在作者为J.Chen,E.Alshina,G.Sullivan,J.Ohm,J.Boyce的“Algorithm Description ofJoint Exploration Test Model 5(JEM 5)”,JVET-E1001-V2中描述了JVET开发的最近情况。
另外或替代地,视频编码器1320和视频解码器1330可根据与所公开的JVET特征一起发挥作用的其它专用或行业标准来操作。因而,其它标准是例如ITU-T H.264标准,或称为MPEG-4,部分10,高级视频编码(AVC)或此类标准的扩展。因此,尽管是为JVET新开发的,但本公开的技术不限于任何特定的编码标准或技术。视频压缩标准和技术的其它示例包括MPEG-2、ITU-T H.263和专有或开源压缩格式和相关格式。
视频编码器1320和视频解码器1330可以在硬件、软件、固件或其任何组合中实施。例如,视频编码器1320和解码器1330可采用一个或多个处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、离散逻辑或其任何组合。当视频编码器1320和解码器1330部分地在软件中实施时,设备可以将用于软件的指令存储在合适的非暂态计算机可读存储介质中,并且可以在硬件中使用一个或多个处理器执行所述指令来执行本公开的技术。视频编码器1320和视频解码器1330中的每一个都可以包括在一个或多个编码器或解码器中,编码器或解码器中的任一个可以集成为相应设备中的组合式编码器/解码器(编解码器)的一部分。
可以在由计算机执行的例如程序模块的计算机可执行指令的一般上下文中描述本文中所描述的主题的各方面,所述计算机例如是上文所描述的通用处理器1323和1333。通常,程序模块包括执行特定任务或实施特定抽象数据类型的例程、程序、对象、部件、数据结构等。也可以在分布式计算环境中实践本文所述的主题的各方面,其中任务是由通过通信网络链接的远程处理设备执行的。在分布式计算环境中,程序模块可位于包括存储设备的本地和远程计算机存储介质。
存储器的示例包括随机存取存储器(RAM)、只读存储器(ROM)或两者。存储器可以存储指令,例如,源代码或二进制代码,以用于执行上文所述的技术。存储器还可用于在执行将由例如处理器1323和1333的处理器执行的指令期间存储变量或其它中间信息。
存储设备还可以存储指令,例如,源代码或二进制代码,以用于执行上文所述的技术。存储设备可以额外地存储由计算机处理器使用和操控的数据。例如,视频编码器1320或视频解码器1330中的存储设备可以是由计算机系统1323或1333访问的数据库。存储设备的其它示例包括随机存取存储器(RAM)、只读存储器(ROM)、硬盘驱动器、磁盘、光盘、CD-ROM、DVD、闪存存储器、USB存储卡或任何其它计算机可以读取的介质。
存储器或存储设备可以是由或结合视频编码器和/或解码器使用的非暂态计算机可读存储介质的示例。非暂态计算机可读存储介质包含用于控制计算机系统的指令,所述计算机系统要被配置为执行特定实施方案描述的功能。所述指令在由一个或多个计算机处理器执行时,可以被配置成执行在特定实施方案中描述的功能。
而且,要指出的是,已经将一些实施方案描述为可以被描绘为流程图或框图的过程。虽然每者可将操作描述为顺序的过程,但是这些操作中的多个操作可并行执行或同时执行。此外,操作的顺序可被重新布置。过程可以具有附图中未包括的额外步骤。
特定实施方案可以在非暂态计算机可读存储介质中实现,以由或结合指令执行系统、装置、系统或机器使用。计算机可读存储介质包含用于控制计算机系统以执行特定实施方案描述的方法的指令。计算机系统包括一个或多个计算设备。指令在由一个或多个计算机处理器执行时,可以被配置成执行在特定实施方案中描述的功能。
如本文中的说明书和随后的整个权利要求书中所使用的,除非上下文明确指出其它表述,否则“一(a/an)”和“所述”包括复数引用。而且,如本文中的说明书和随后的整个权利要求书中所使用的,“在……中”的含义包括“在……中”和“在……上”,除非上下文明确指出其它表述。
尽管已经用以上结构特征和/或方法动作特有的语言详细描述了本发明的示范性实施方案,但要理解的是,本领域的技术人员将容易认识到,在实质上不背离本发明的新颖教导和优点的情况下,在示范性实施方案中很多额外修改是可能的。此外,应当理解,所附权利要求中定义的主题未必限于上述具体特征或动作。因此,这些和所有这样的修改都意在包括在根据所附权利要求的宽度和范围解释的本发明的范围内。

Claims (20)

1.一种帧间编码方法,包括:
接收第一编码单元;
接收第二编码单元;
确定所述第一编码单元和所述第二编码单元是不是单个共位图片的部分;以及
在所述第一编码单元和所述第二编码单元是单个共位图片的部分的情况下,使用与所述第一编码单元和所述第二编码单元相关联的运动信息对当前编码单元进行编码。
2.根据权利要求1所述的帧间编码方法,其中与所述第一编码单元相关联的所述运动信息进行归一化。
3.根据权利要求2所述的帧间编码方法,其中与所述第二编码单元相关联的所述运动信息进行归一化。
4.根据权利要求3所述的帧间编码方法,其中指示符指示所述第一编码单元和所述第二编码单元是不是单个共位图片的部分。
5.根据权利要求4所述的帧间编码方法,其中所述指示符包括在与所述当前编码单元相关联的NAL单元中。
6.根据权利要求4所述的帧间编码方法,其中所述指示符包括在所述NAL单元的标头内。
7.根据权利要求6所述的帧间编码方法,其中所述指示符是单个比特。
8.根据权利要求7所述的帧间编码方法,其中所述当前编码单元根据HEVC进行编码。
9.根据权利要求7所述的帧间编码方法,其中所述当前编码单元根据VVC进行编码。
10.根据权利要求7所述的帧间编码方法,其中所述当前编码单元根据JVET进行编码。
11.一种帧间编码系统,包括:
在存储器的第一部分中接收第一编码单元;
在所述存储器的第二部分中接收第二编码单元;
确定所述第一编码单元和所述第二编码单元是不是单个共位图片的部分;以及
在所述第一编码单元和所述第二编码单元是单个共位图片的部分的情况下,使用与所述第一编码单元和所述第二编码单元相关联的运动信息对当前编码单元进行编码。
12.根据权利要求11所述的帧间编码系统,其中与所述第一编码单元相关联的所述运动信息进行归一化。
13.根据权利要求12所述的帧间编码系统,其中与所述第二编码单元相关联的所述运动信息进行归一化。
14.根据权利要求13所述的帧间编码系统,其中指示符指示所述第一编码单元和所述第二编码单元是不是单个共位图片的部分。
15.根据权利要求14所述的帧间编码系统,其中所述指示符包括在与所述当前编码单元相关联的NAL单元中。
16.根据权利要求14所述的帧间编码系统,其中所述指示符包括在所述NAL单元的标头内。
17.根据权利要求16所述的帧间编码系统,其中所述指示符是单个比特。
18.根据权利要求17所述的帧间编码系统,其中所述当前编码单元根据HEVC进行编码。
19.根据权利要求17所述的帧间编码系统,其中所述当前编码单元根据VVC进行编码。
20.根据权利要求17所述的帧间编码系统,其中所述当前编码单元根据JVET进行编码。
CN201980025039.XA 2018-04-12 2019-04-12 用于视频编码和信令通知的运动信息存储 Pending CN112655214A (zh)

Applications Claiming Priority (9)

Application Number Priority Date Filing Date Title
US201862656743P 2018-04-12 2018-04-12
US201862656763P 2018-04-12 2018-04-12
US62/656,743 2018-04-12
US62/656,763 2018-04-12
US201862660883P 2018-04-20 2018-04-20
US62/660,883 2018-04-20
US201862678864P 2018-05-31 2018-05-31
US62/678,864 2018-05-31
PCT/US2019/027399 WO2019200366A1 (en) 2018-04-12 2019-04-12 Motion information storage for video coding and signaling

Publications (1)

Publication Number Publication Date
CN112655214A true CN112655214A (zh) 2021-04-13

Family

ID=68160035

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980025039.XA Pending CN112655214A (zh) 2018-04-12 2019-04-12 用于视频编码和信令通知的运动信息存储

Country Status (4)

Country Link
US (4) US11457233B2 (zh)
EP (1) EP3777179A1 (zh)
CN (1) CN112655214A (zh)
WO (1) WO2019200366A1 (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11838514B2 (en) * 2018-08-06 2023-12-05 Electronics And Telecommunications Research Institute Image encoding/decoding method and device, and recording medium storing bitstream
BR112021022174A2 (pt) 2019-05-11 2021-12-21 Beijing Bytedance Network Tech Co Ltd Método para processar dados de vídeo, aparelho para processar dados de vídeo, meio de armazenamento e meio de gravação
WO2020233662A1 (en) 2019-05-21 2020-11-26 Beijing Bytedance Network Technology Co., Ltd. Syntax signaling for optical-flow based inter coding
CN114223203A (zh) * 2019-08-27 2022-03-22 松下电器(美国)知识产权公司 编码装置、解码装置、编码方法和解码方法
EP4029245A4 (en) * 2019-10-12 2022-11-23 Beijing Bytedance Network Technology Co., Ltd. HIGH LEVEL SYNTAX FOR VIDEO CODING TOOLS
EP4032290A4 (en) 2019-10-18 2022-11-30 Beijing Bytedance Network Technology Co., Ltd. SYNTAX CONSTRAINTS IN REPORTING SUBPICTURE PARAMETER SETS
WO2021134635A1 (zh) * 2019-12-31 2021-07-08 Oppo广东移动通信有限公司 变换方法、编码器、解码器以及存储介质
WO2021246791A1 (ko) * 2020-06-03 2021-12-09 엘지전자 주식회사 영상/비디오 코딩 시스템에서 상위 레벨 신택스를 처리하는 방법 및 장치

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102763418A (zh) * 2009-12-20 2012-10-31 Lg电子株式会社 视频信号解码方法和设备
US20130114720A1 (en) * 2011-01-14 2013-05-09 General Instrument Corporation Joint spatial and temporal block merge mode for hevc
US20130128970A1 (en) * 2011-11-18 2013-05-23 General Instrument Corporation Explicit way for signaling a collocated picture for high efficicency video coding (hevc) using a single reference list
WO2014106346A1 (en) * 2013-01-07 2014-07-10 Mediatek Singapore Pte. Ltd. Method of signalling additional collocated picture for 3dvc
CN107005708A (zh) * 2014-09-26 2017-08-01 Vid拓展公司 使用时间块向量预测的块内复制译码

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101662139B1 (ko) 2011-11-18 2016-10-10 구글 테크놀로지 홀딩스 엘엘씨 고효율 비디오 코딩을 위한 움직임 정보의 효율적인 저장
US9319681B2 (en) * 2012-07-18 2016-04-19 Google Technology Holdings LLC Signaling of temporal motion vector predictor (MVP) enable flag
US10958927B2 (en) * 2015-03-27 2021-03-23 Qualcomm Incorporated Motion information derivation mode determination in video coding
CN110419219A (zh) * 2017-01-03 2019-11-05 诺基亚技术有限公司 用于视频编码和解码的装置、方法和计算机程序
CN116233416A (zh) * 2017-01-16 2023-06-06 世宗大学校产学协力团 影像编码/解码方法
US10602180B2 (en) * 2017-06-13 2020-03-24 Qualcomm Incorporated Motion vector prediction
US10785494B2 (en) * 2017-10-11 2020-09-22 Qualcomm Incorporated Low-complexity design for FRUC
US10812810B2 (en) * 2018-02-06 2020-10-20 Tencent America LLC Method and apparatus for video coding in merge mode
US10958928B2 (en) * 2018-04-10 2021-03-23 Qualcomm Incorporated Decoder-side motion vector derivation for video coding

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102763418A (zh) * 2009-12-20 2012-10-31 Lg电子株式会社 视频信号解码方法和设备
US20130114720A1 (en) * 2011-01-14 2013-05-09 General Instrument Corporation Joint spatial and temporal block merge mode for hevc
US20130128970A1 (en) * 2011-11-18 2013-05-23 General Instrument Corporation Explicit way for signaling a collocated picture for high efficicency video coding (hevc) using a single reference list
WO2014106346A1 (en) * 2013-01-07 2014-07-10 Mediatek Singapore Pte. Ltd. Method of signalling additional collocated picture for 3dvc
CN107005708A (zh) * 2014-09-26 2017-08-01 Vid拓展公司 使用时间块向量预测的块内复制译码

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
C. ROSEWARNE 等: "High Efficiency Video Coding (HEVC) Test Model 16 (HM 16) Improved Encoder Description Update 8", JCT-VC, pages 4 *

Also Published As

Publication number Publication date
WO2019200366A1 (en) 2019-10-17
US20240121425A1 (en) 2024-04-11
WO2019200366A9 (en) 2020-08-27
US20210029364A9 (en) 2021-01-28
US11457233B2 (en) 2022-09-27
US20190320196A1 (en) 2019-10-17
EP3777179A1 (en) 2021-02-17
US20200329246A1 (en) 2020-10-15
US20220408108A1 (en) 2022-12-22

Similar Documents

Publication Publication Date Title
US11936856B2 (en) Template matching for JVET intra prediction
US20230308688A1 (en) Jvet coding block structure with asymmetrical partitioning
US11463708B2 (en) System and method of implementing multiple prediction models for local illumination compensation
US20170339405A1 (en) System and method for intra coding
US11997305B2 (en) System and method of motion information storage for video coding and signaling
US20240121425A1 (en) Motion information storage for video coding and signaling
EP3443746B1 (en) Template matching for jvet intra prediction
JP7350757B2 (ja) テンプレートマッチングのための可変テンプレートサイズ
CN112106369A (zh) 减少双向时间预测中的运动矢量信息传输
CN111955009A (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
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20210413