CN111683246A - 解码方法、解码装置和编码方法 - Google Patents

解码方法、解码装置和编码方法 Download PDF

Info

Publication number
CN111683246A
CN111683246A CN202010106772.9A CN202010106772A CN111683246A CN 111683246 A CN111683246 A CN 111683246A CN 202010106772 A CN202010106772 A CN 202010106772A CN 111683246 A CN111683246 A CN 111683246A
Authority
CN
China
Prior art keywords
block
decoding
reference index
target
encoding
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
CN202010106772.9A
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.)
Renesas Electronics Corp
Original Assignee
Renesas Electronics Corp
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 Renesas Electronics Corp filed Critical Renesas Electronics Corp
Publication of CN111683246A publication Critical patent/CN111683246A/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/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • H04N19/122Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
    • 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/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/184Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being bits, e.g. of the compressed video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/573Motion compensation with multiple frame prediction using two or more reference frames in a given prediction direction

Landscapes

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

Abstract

本申请涉及解码方法、解码装置和编码方法。解码方法是用于解码比特流的解码方法,其中对于通过对其中多个帧连续的运动图像的每个帧进行分割而获得的每个块,使用参考索引和运动矢量的预测值之间的差,其中在每个帧中定义具有预定数量的块的多个组,并且针对每个组向组中除第一块之外的块的参考索引和差的范围应用限制,并且所述解码方法包括用于确定要解码的块是否为组的第一块的步骤、用于在该块不是第一块的情况下使用参考索引和差进行解码的步骤、以及用于在该块不是第一块的情况下使用限制的参考索引和差进行解码的步骤。

Description

解码方法、解码装置和编码方法
相关申请的交叉引用
这里通过参考并入2019年3月11日提交的日本专利申请No.2019-043469的全部公开内容,包括说明书、附图和摘要。
技术领域
本发明涉及解码方法、解码装置和编码方法,例如,用于对经编码的运动图像进行解码的解码方法和解码装置以及用于对运动图像进行编码的编码方法。
背景技术
在对图像进行编码时,将图像分成被称为块的矩形,并以矩形为单位执行被称为运动补偿的处理,以预测图像并执行压缩。在运动补偿中,通过使用指示要使用哪个帧的参考索引和指示帧中位置的运动矢量的参数,从先前编码的图像的指定位置复制像素值。在复制时,读取大于实际块的区域,并对该区域执行滤波处理。例如,根据标准,对于16×16最大需要23×23的区域并且对于8×8最大需要15×15的区域。
在运动补偿中,还存在不仅从单个图像而且从多个图像执行运动补偿的方法。在运动矢量的编码中,为了实现更高的压缩比,从当前块附近的块的运动矢量预测当前块的运动矢量,并且仅对预测值与当前运动矢量之间的差进行编码。
下面列出了公开的技术。
[专利文献1]日本未审查专利申请公开2015-027095
发明内容
在运动补偿中,存在这样一个问题:当块分割变得更细时,从外部存储器读取的数据量的最坏情况变得巨大。由于这将读出大于块的实际大小的区域,因此随着块的数量增加,需要更多的数据。例如,在一个标准中,为了处理16×16区域,如果没有分割,则在垂直和水平方向上都添加7,并且需要23×23=529的数据。另一方面,在分割为8×8的情况下,在垂直和水平方向上加7,得到4×15×15=900。块的分割可以进一步细分为8×4、4×8和4×4。
当运动矢量的值与相邻块的值大不相同或要参考的帧不同时,存在在读取外部存储器时发生惩罚的可能性。这是因为外部存储器(以DDR为代表的大容量存储器)是标准化的,以便在访问连续地址时是有效的,并且当在远程(存储器上的地址大不相同)位置连续访问时,可能会发生被称为缺页的惩罚,并且访问效率可能会变差。
根据标准,对可以包括在数据中的运动矢量之间的差的值存在约束,但是差具有为±65536的较大值,并且甚至宽度超过10000像素的如16K的图像也可以被从头到尾参考,这基本上是与没有任何约束情况相同的情况。因此存在这样一个问题:当块分割变得更细时,要从外部存储器读取的数据量的最坏情况变得巨大。
其他目的和新颖特征将从本说明书和附图的描述中变得明显。
根据一个实施例,解码方法是如下的解码方法:对于通过分割多个帧中的每个帧而获得的每个块,使用指示要参考的帧的参考索引和该帧中预测的运动矢量的预测值之间的差来解码具有运动图像的比特流码,其中在每个帧中定义具有预定数量的块的组,针对每个组限制该组中除第一块之外的块的参考索引和差的范围,并且要解码的块是第一块确定步骤,用于确定要解码的块是否是组中的第一块,并且当要解码的块是第一块时,使用参考索引和差来进行解码。如果目标块不是第一块,则提供使用限制的参考索引和差进行解码的第二块解码步骤或后续块解码步骤。
根据上述实施例,可以提供使存储器访问有效的解码方法、解码装置和编码方法。
附图说明
图1是示出根据编码方法和解码方法的比较示例的图。
图2是示出根据实施例1的编码方法和解码方法的图。
图3是示出根据实施例1的编码方法和解码方法的基本概念的流程图。
图4是示出根据实施例1的编码装置的配置的图。
图5是示出根据实施例1的解码装置的配置的图。
图6是例示根据实施例2的解码方法的语法。
图7是例示根据实施例2的解码方法的语法。
图8是例示根据实施例2的解码方法的语法。
图9是示出根据实施例2的解码处理中的合并的图。
图10是示出根据实施例2的解码处理的流程图。
图11是示出根据实施例3的解码方法的语法。
图12是示出根据实施例3的解码方法的语法。
图13是示出根据实施例3的解码处理的流程图。
图14是示出根据实施例3的另一解码处理的流程图。
具体实施方式
图1是示出根据编码方法和解码方法的比较示例的图。图2是示出根据实施例1的编码方法和解码方法的图。
如图1和图2所示,运动图像包括连续的多个帧f01到f03和帧f11到f13。在对运动图像进行编码时,每个帧被分成称为块b01到b04和b11到b14的矩形。然后,在逐块的基础上执行被称为运动补偿的处理。因此,运动图像被预测和压缩。另一方面,在解码时,经编码的比特流被转换成运动图像。
在运动补偿中,使用包括参考索引和运动矢量的参数来执行从先前编码的运动图像的指定位置复制像素值的处理。这里,参考索引指示在多个连续帧中要使用哪个帧。运动矢量指示在该帧中的位置。例如,在编码和解码的情况下,在帧中预先预测运动矢量,并且对与预测矢量的差进行编码和解码。
如图1所示,例如,根据比较示例的编码方法使用多个帧f01和f02对块b01到b04执行运动补偿处理。在比较示例中,与块b02到b04不同,块b01参考帧f01的值c01。在参考同一帧f02的块b02到b04中,要参考的值c02到c04彼此相差很大。如在比较例中那样,当要参考的帧不同时并且当运动矢量的值与邻近块的值大不相同时,如果块的分割变得更细,则从外部存储器读取的数据量的最大值变得巨大。
如图2所示,本实施例的编码方法定义了包括多个小块b11到b14的组g11。这里,小块b11到b14是其中在块中包括的像素数等于或小于某个数的块,或者是其中帧中的分割数等于或大于某个数的块。例如,小块是其中在块中包括的像素数小于或等于64的块。此外,垂直像素和水平像素的总和小于或等于16。在图中,组g11包括四个块b11到b14,但组g11中包括的块的数目不限于此。
例如,在本实施例中,将以下约束添加到组中的块。(i)在组中使得由块参考的帧是相同的。(ii)限制运动矢量的范围(将运动矢量的编码方法更改为仅产生有限范围值的方法,使同一组中的运动矢量之间的差在一定范围内)。(iii)在组中使运动矢量的预测值相同(例如,将在块中的第一块中获得的运动矢量的预测值作为组中的预测值,或将在第一块中获得的运动矢量用作同一组中剩余运动矢量的预测值)。
结果,如图2所示,可以在不参考离散区域的情况下访问集合区域c11。为此,例如,可以减少外部存储器中的存储器带宽,并且同时,可以将用于访问外部存储器的地址设置为闭合值。因此,可以提高访问效率。
图3是示出根据实施例1的编码方法和解码方法的基本概念的流程图。作为示例,将描述解码情况。在本实施例中,在每个帧中定义具有预定数量的块的多个组。然后,如图3的步骤S11所示,例如,确定要解码的块是否是比特流中的组中的第一块。如果目标块是组的第一块,则通常存在在要参考的帧与运动矢量之间的差。然后,如步骤S12所示,对参考索引进行解码,并且如步骤S13所示,对运动矢量之间的差进行解码。
另一方面,在步骤S11中,当目标块不是组中的第一块时,即,在组中的第二块和后续块的情况下,仅存在其中运动矢量之间的差的范围被限制的运动矢量。然后,如步骤S14所示,对被限制的运动矢量之间的差进行解码。使用这样的基本概念来执行编码和解码。
通过改变组的大小,可以改变要限制的块的大小。在某些情况下,可能有大于组大小的其他块。
如上所述,在本实施例中,以编码方法为例,对于通过分割多个帧连续的运动图像的每个帧而获得的每个块,通过使用参考索引和运动矢量的预测值之间的差来将运动图像编码成比特流。此时,首先,在每个帧中定义具有预定数量的块的多个组。然后,确定要编码的块是否是组中的第一块。当要编码的块是第一块时,使用参考索引和差执行编码。如果目标块不是第一块,则通过针对每个组添加限制来对参考索引和差的范围进行编码。
以解码方法为例,解码方法是用于解码如下比特流的解码方法,其中通过上述编码方法针对每个块对运动图像进行编码。在解码的目标处,首先,确定要解码的块是否是该组的第一块。然后,如果目标块是第一块,则使用参考索引和差对其进行解码。如果目标块不是第一块,则使用限制的参考索引和差对其进行解码。
在本实施例中,如上所述定义组。例如,提供约束,使得在组中的块中参考的帧相同,并且运动矢量的值彼此接近。这样防止组中的块引用离散位置。
例如,作为要添加到第二块和后续块的限制,将参考索引设置为与第一块相同的参考索引。预测值可以是与第一块相同的预测值,或者预测值可以是第一块的运动矢量。因此,例如,可以减少外部存储器的存储器带宽,并且可以提高存储器访问的效率。这用于访问一组区域而不参考离散区域。
接下来,将描述根据本实施例的用于执行编码的编码装置和用于执行解码的解码装置。图4是示出根据实施例1的编码装置的配置的图。如图4所示,编码装置10包括编码单元1009和控制单元1008。针对通过对其中多个帧连续的运动图像的每个帧进行分割而获得的每个块,编码单元1009通过使用参考索引和预测值之间的差来将运动图像编码成比特流。编码单元1009包括差分电路(-)1000、正交变换电路(T)1001、量化电路(Q)1002、逆量化电路(IQ)1003、逆正交变换电路(IT)1004、加法电路(+)1005、滤波电路1006、预测模式确定电路(模式和预测)1007和流编码单元(VLC)12。
输入的图片信号DVin被分为块和输入。差分电路(-)1000针对每个像素获得预测信号1011和输入信号DVin之间的差。此后,通过正交变换电路(T)1001和量化电路(Q)1002将信号转换为信号1010。在转换之后,数据流由流编码单元12编码并作为数据流BSout输出。该数据流也被称为比特流。同时,通过逆量化电路(IQ)1003和逆正交变换电路(IT)1004将信号1010逆变换为差信号。此后,加法电路(+)1005针对每个像素将预测信号1011和预测信号1011相加,并且在由滤波电路1006执行滤波处理之后,获得与由解码装置获得的图像信号相同的图像信号(本地解码图像)。本地解码图像被写入外部存储器1100中,并且本地解码图像被用于生成预测信号1011的后续处理中。
如下在预测模式确定电路1007中生成预测信号1011。输入图像信号(编码块)DVin被输入到预测模式确定电路1007。预测模式确定电路1007准备多个候选矢量,用于获取对应编码块的预测信号的候选。然后,预测模式确定电路1007使用地址信号1017访问外部存储器1100的编码区域以获取像素信号1016,并且基于指定的候选矢量从所获取的像素信号中生成预测信号。预测模式确定电路1007通过针对每个像素在输入信号DVin(编码块信号)和预测块信号之间取差来计算预测误差。在计算所有候选矢量的预测误差之后,使用具有最小预测误差的矢量1012进行矢量预测,并且输出与用于矢量预测的矢量1012对应的预测信号1011。用于矢量预测的矢量1012是流编码器12中的数据流BSout的一部分。
尽管没有特别限制,但是预测模式确定电路1007在帧间预测的情况下使用利用运动矢量(运动矢量)的预测方法,并且在帧内预测的情况下使用来自周围像素的预测方法。此外,预测模式确定电路1007生成配置数据流BSout所需的信息,并将生成的信息提供给流编码单元12。
当将运动图像编码成比特流时,控制单元1008定义在每个帧中具有预定数量的块的多个组。然后,控制单元1008确定要编码的目标块是否是组的第一块。当目标块是第一块时,控制单元1008使编码单元1009使用参考索引和差对目标块进行编码。
另一方面,当目标块不是第一块时,通过针对每个组添加限制,使得编码单元1009对参考索引和差的范围进行编码。具体地说,参考索引是与第一块相同的参考索引。预测值可以是与第一块相同的预测值,或者预测值可以是第一块的运动矢量。如果不是第一块,则确定运动矢量的值,使得运动矢量的值与第一块的运动矢量的值之间的差落在一定范围内。以这种方式,编码装置10对运动图像进行编码。
图5是示出根据实施例1的解码装置的配置的图。如图5所示,解码装置20包括解码单元2006和确定单元2005。针对通过对其中多个帧连续的运动图像的每个帧进行分割而获得的每个块,解码装置20通过使用参考索引与预测值之间的差来解码其中运动图像被编码的比特流。在本实施例中,解码装置20在每个帧中定义均具有预定数量的块的多个组。向每个组中除第一块以外的块的参考索引和差的范围应用针对该组的限制。针对每个这样的块,解码装置20解码其中运动图像被编码的比特流。
解码单元2006从比特流解码运动图像。解码单元2006包括逆量化电路(IQ)2000、逆正交变换电路(IT)2001、图像再现电路(+)2002、预测信号生成电路(P)2003、滤波电路2004和流解码单元(VLD)21。
例如,从外部存储器2100输入的数据流BSin包括用于构成图像的每个块的矢量预测的矢量以及关于预测信号的差信号的信息。流解码器21解码数据流BSin,并提取矢量2013和差数据2011以用于矢量预测。差数据2011由逆量化电路(IQ)2000和逆正交变换电路(IT)2001转换为差信号2012。与此并行,预测信号生成电路(P)2003基于用于预测的矢量2013生成外部存储器(外部存储器)2100的解码区域的指定地址2016,获取对应地址的像素信号2015,并生成预测块的像素信号2014。在图像再现电路(+)2002中将生成的预测块的像素信号2014添加到差信号2012中,并且经由滤波电路2004再现相应块的图像。滤波电路2004通过对比目标块具有更多像素的区域执行滤波处理来再现块。例如,滤波处理是减少误差的处理。再现的图像被写入外部存储器2100中,并且被用作在再现后续块的图像时出现预测图像的候选者。在完成针对一个图像的解码处理之后,将出现的图像的信号输出为输出信号并显示在诸如TV的显示设备上。
尽管不是特别限制,但是在帧间预测的情况下,预测信号生成电路2003使用用于矢量预测的矢量2013作为运动矢量,并且在帧内预测的情况下,预测信号生成电路2003预测来自邻近区域的像素。此外,由流解码单元21对构成数据流BSin的信息进行解码,并且在诸如预测信号生成单元2003的处理中使用解码的信息。
确定单元2005确定要解码的块是否是组的第一块。当目标块是第一块时,确定单元2005使解码单元2006使用参考索引和差来解码该块。
另一方面,当要解码的块不是第一块时,确定单元2005使解码单元2006使用限制的参考索引和差来解码块。具体地,当目标块不是第一块时,确定单元2005使解码单元2006使用与第一块相同的参考索引来解码目标块。当目标块不是第一块时,确定单元2005可以使解码单元2006使用与第一块相同的预测值作为预测值来解码该块,或者可以使解码单元2006使用第一块的运动矢量作为预测值来解码该块。
接下来,将描述本实施例的效果。在本实施例中,定义包括多个块的组,并且限制该组中的参考索引和预测值之间的差。因此,组中的块不参考不同的位置,并且可以更有效地进行存储器访问。
通过将第二块和后续块的参考索引和预测值设置为与组中的第一块的参考索引和预测值相同,可以使外部存储器的地址彼此接近,从而可以高效地进行存储器访问。
组中的块是其中像素数等于或小于某个数或分割数等于或大于某个数的小块。具体来说,在这种块的情况下,从外部存储器读取的数据量的最坏情况变得巨大,但是在本实施例中,通过在组内共享参考索引和预测值,可以抑制数据量的增加。
(实施例2)接下来,将描述第二实施例。本实施例是将上述实施例1应用于例如运动图像编码标准VVC的解码处理的示例。图6至图8是例示根据实施例2的解码方法的语法。页面中的行数显示在框外部。图9是示出根据实施例2的解码处理中的合并的图。
如图6的第一行所示,首先,通过“cu_skip_flag”发生分支。跳过是预测方法之一。当“cu_skip_flag”为1时,模式被认为是如下模式(“merge”):其中从周围块复制所有预测方向(“inter_pred_idc”)、参考索引和运动矢量。只解码“merge”上的数据(从中复制周围块)。预测方向指示相对于时间轴的其中存在用于预测的帧的方向。预测方向在前方时称为向前方向,在后方时称为向后方向,在前方和后方时称为向前和向后方向。
当“cu_skip_flag”为0时,由指示预测方法是否为“merge”的“merge_flag”进一步分支成是否解码预测方向、参考索引、运动矢量等。图6的第2至7行和第11至16行示出了执行合并的位置。
对于“merge”,如图9所示,预测方向、参考索引和运动矢量不是从比特流解码的,而是从周围复制的。另一方面,如果不是“merge”,则从比特流解码预测方向、参考帧和运动矢量的差值。
这里,在本实施例中,如第18和25行所示,准备变量“not_first_block”,其指示块是否是组中的第一块。当“not_first_block”为1时,仅解码运动矢量的差而不解码参考索引等。此时运动矢量的解码基于可能值的范围小的假设。
也就是说,保证图8的第10行和第15行中的“abs_mvd_minus2”在“restricted_mvd_coding”中被解密为常量值或更少,并且前进到图8的第一行,“restricted_mvd_coding”被定义为图7的第25行和第27行中的“restricted_mvd_coding”。由于运动矢量是二维的,所以水平方向和垂直方向的两个轴用0和1表示。
未从比特流解码的预测方向和参考索引与组中的第一块相同。因此,预测方向和参考索引在组内是相同的,并且没有大的运动矢量差。
图6的第18行中的“slice_type”指示参考帧,B指示最多可以使用两个帧。作为B的代替,在P的情况下可以用一片。图6的第19行中的inter_pred_idc“指示预测的方向,无论使用一片还是两片。
在组切换时,变量“not_first_block”被重置为0。即使当一个块被解码时,如图7的第30行所示,变量也变为1。
图10是示出根据实施例2的解码处理的流程图。图10是示出上述程序中的解码方法的基本概念的流程图。
如图10的步骤S21所示,确定该块是否是组的第一块。在第一块的情况下,如步骤S22所示,“not_first_block”被设置为0。然后,如步骤S23所示,读入“merge_flag”。另一方面,如果块不是步骤S21中的第一块,则处理前进到步骤S23以读取“merge_flag”。
接下来,如步骤S24所示,确定“merge_flag”是否为1。也就是说,确定是否合并。当“merge_flag”为1时,确定“not_first_block”为0,如步骤S25所示。在步骤S25中,当“not_first_block”为0时,即,在第一块的情况下,如步骤S26所示执行合并。当“not_first_block”不是0时,即,在第二块和后续块的情况下,处理进行到步骤S32。
另一方面,当在步骤S24中“merge_flag”不是1时,如步骤S27所示,确定“not_first_block”是0。当“not_first_block”为0时,它是组中的第一块。因此,如步骤S28、S29和S30所示,使用预测方向、参考索引和运动矢量之间的差来执行解码。在本实施例中,预测方向也被编码在比特流中。因此,除了参考索引和运动矢量的预测值之间的差之外,还使用预测方向来执行解码。
在步骤S27中,当“not_first_block”不是0时,它是组中的第二块和后续块。因此,如步骤S31所示,使用与限制的运动矢量的预测值的差来执行解码。
接下来,如步骤S32所示,“not_first_block”被设置为1。针对块从“开始”到“完成”进行重复。这样,比特流就可以被解码。
在本实施例中,在确定要解码的块是否是组的第一块之前,确定要解码的块是否是合并的目标。在合并的情况下,预测方向、参考索引和运动矢量不是从比特流解码的,而是从目标复制的。如果不是合并的对象,则首先确定组的第一块是否基于实施例1的基本概念。然后,在第一块与第二块和后续块之间进行不同情况的处理。
根据本实施例,可以将实施例1的基本概念应用于运动图像编码标准VVC的解码处理。因此,即使在运动图像编码标准VVC的解码处理中,也可以抑制数据量的增加。存储器访问可以变得更加高效。其他配置和优点包括在实施例1的描述中。
接下来,将描述第三实施例。在上述实施例2中,如果组中的第一块是“merge”或“skip”,而后续块不是“merge”或“skip”,则预测方向是未知的,直到预测方向执行运动矢量预测处理。换言之,存在如下情况:其中仅通过从比特流中提取数据,不知道比特流中包含多少运动矢量差。这是一个数据依赖性的问题。
为了防止这种情况,如果在组中没有解码预测方向(“inter_pred_idc”),则从比特流解码预测方向(“inter_pred_idc”)。例如,假设总是从比特流解码预测方向(“inter_pred_idc”)。这使得在不执行运动矢量预测处理的情况下,仅通过从比特流中提取数据就可以确定下一步要解码哪些数据。
(实施例3)图11和图12是示出根据解码方法的第三实施例的语法图。如图11和图12所示,在实施例2中,如图11的第8、20和27行所示,仅由“not_fitst_block”控制的解码方法由两个变量“merge_decoded”和“pred_idc_decoded”控制。
图13是示出根据实施例3的解码处理的流程图。如图13的步骤S41所示,确定块是否为组的第一块。在第一块的情况下,如步骤S42所示,将“merge_decoded”和“pred_idc_decoded”设置为0。在下文中,“merge_decoded”是0的情况和“pred_idc_decoded”是0的情况由“cond 1”指示。然后,如步骤S43所示,读入“merge_flag”。另一方面,如果在步骤S41中块不是第一块,则处理前进到步骤S43以读取“merge_flag”。
接下来,如步骤S44所示,确定“merge_flag”是否为1。当“merge_flag”为1时,如S45所示确定是否满足“cond 1”。如果在步骤S45中满足“cond 1”,则如步骤S46所示执行合并。如果“cond 1”不满足,则如S47所示“merge_decoded”被设置为1。
另一方面,当步骤S44中的“merge_flag”不是1时,如步骤S48所示,确定“pred_idc_decoded”为0。当“pred_idc_decoded”为0时,如步骤S49所示解码“inter_pred_idc”。如上所述,本实施例包括对预测方向进行解码的步骤。然后,处理进入步骤S50。另一方面,如果在步骤S48中“pred_idc_decoded”不是0,则处理进入步骤S50。
接下来,如S50所示,确定是否满足“cond 1”。当满足“cond 1”时,如步骤S51和S52所示,从比特流解码参考索引以及参考索引和运动矢量之间的差。如果在步骤S50中不满足“cond 1”,则如步骤S53所示,从比特流解码与限制的运动矢量的预测值的差。
然后,如步骤S54所示,“pred_idc_decoded”被设置为1。针对块从“开始”到“完成”进行重复。这样,比特流就可以被解码。
在本实施例中,当未在组中解码预测方向(“inter_pred_idc”)时,从比特流解码预测方向(“inter_pred_idc”)。因此,可以通过简单地从比特流中提取数据来确定接下来要解码哪些数据。因此,可以消除数据依赖性。
然而,存在如下可能性:由于诸如比特流中的混合误差的因素,基于在“merge”块中的周围数据获得的预测方向和从比特流解码的预测方向彼此不一致。例如,当出现不一致时,“merge”块的预测方向被优先化。此外,未解码的运动矢量之间的差被视为0,并且丢弃不必要矢量之间的差,以便即使在出现不一致时也可以执行解码处理。当出现不一致时,“inter_pred_idc”的值可以被给予优先级。
此外,将描述在保持存储器带宽的同时提高图像质量的方法。图14是示出根据实施例3的另一解码处理的流程图。
如图14所示,除了图13的方法之外,当组中首先解码的“inter_pred_idc”是“BI_PRED”时,本解码方法使得后续组中的块能够选择任意方向作为预测方向。这认为,当第一块是“BI_PRED”时,即使后续的预测方向不受限制,所需的存储器带宽也不会改变。也就是说,由于“BI_PRED”具有要参考的最大平面数,无论后续块的预测方向如何,要参考的最大平面数都不会变化。例如,“BI_PRED”表示参考两片的情况。
为此,保留组中解码的第一“inter_pred_idc”以及是否已解码“inter_pred_idc”。如果是“BI_PRED”,则执行“inter_pred_idc”的解密。具体地,例如,当第一块的预测方向是向前和向后方向时,则使用来自第二块和后续块中的比特流的预测方向来执行解码。
如图14的步骤S61所示,确定块是否是组的第一块。在第一块的情况下,如步骤S62所示,“merge_deencoded”被设置为0,“pred_idc_decoded”被设置为0,“first_pred_idc”被设置为“UNI_PRED”。
在下文中,“merge_decoded”为0的情况、“pred_idc_decoded”为0的情况以及“first_pred_idc”为“UNI_PRED”的情况用“cond 1”表示。
当“first_pred_idc”为“BI_PRED”且“pred_idc_decoded”为0时,此属性指示“cond 2”。接下来,如步骤S63所示,读入“merge_flag”。另一方面,如果不是第一块,则处理进入步骤S63。然后,“merge_flag”被解码。
接下来,如步骤S64所示,确定“merge_flag”是否为1。当“merge_flag”为1时,如S65所示确定是否满足“cond 1”。如果在步骤S65中满足“cond 1”,则如步骤S66所示执行合并。然后,处理进入步骤S67。另一方面,当不满足“cond 1”时,处理进行到S67。在步骤S67中,“merge_decoded”被设置为1。
另一方面,如果在步骤S64中“merge_flag”不是1,则如步骤S68所示确定是否满足“cond 2”。如果满足“cond 2”,则如S69所示解码“inter_pred_idc”。然后,如步骤S70所示,确定“pred_idc_decoded”为0。当“pred_idc_decoded”为0时,“first_pred_idc”被设置为“inter_pred_idc”,如步骤S71所示。然后,处理进入步骤S72。另一方面,如果在步骤S70中“pred_idc_decoded”不是0,则处理进入步骤S72。另一方面,如果在步骤S68中不满足“cond2”,则处理进入步骤S72。
接下来,如S72所示,确定是否满足“cond 1”。如果满足“cond 1”,则如步骤S73和S74所示,从比特流解码参考索引以及参考索引和运动矢量之间的差。如果在S72中不满足“cond 1”,则从比特流解码限制的运动矢量的预测值和预测值之间的差。
然后,如步骤S76所示,“pred_idc_decoded”被设置为1。针对块从“开始”到“完成”进行重复。这样,比特流就可以被解码。
例如,根据本实施例,可以在保持外部存储器的存储器带宽的同时提高图像质量。其他配置和效果包括在实施例1和实施例2的描述中。
尽管以上已经描述了每个实施例,但是本发明不限于上述配置,并且可以在不偏离技术构思的范围内进行改变。此外,将实施例1至3的各个配置组合在一起的编码方法、解码方法、编码装置和解码装置也在技术构思的范围内。
另外,使计算机执行解码方法和编码方法的以下解码程序和编码程序以及以下编码装置也落入实施例1至3的技术构思内。
(附加声明1)一种使得计算机执行以下处理的编码程序:对于通过对其中多个帧连续的运动图像的每个帧进行分割而获得的每个块,使用指示要参考的帧的参考索引和帧中预测的运动矢量的预测值之间的差来将图像编码为比特流,所述程序包括以下步骤:在每个帧中定义具有预定数量的块的多个组;通过针对每个组向组中除第一块之外的块的参考索引和差的范围添加限制,针对每个块编码运动图像;确定要解码的目标块是否是组中的第一块;当要解码的目标块是第一块时使用参考索引和差来解码目标块;如果目标块不是第一块,则使用限制的参考索引和差来解码目标块。
(附加声明2)根据附加声明1的解码程序,其中,如果目标块不是第一块,则解码程序使参考索引为与第一块相同的参考索引。
(附加声明3)根据附加声明1的解码程序,其中,如果目标块不是第一块,则将预测值设置为与第一块相同的预测值。
(附加声明4)根据附加声明1的解码程序,其中,如果目标块不是第一块,则将预测值设置为第一块的运动矢量。
(附加声明5)根据附加声明1的解码程序,其中块是其中包括在所述块中的像素数等于或小于预定数的块,或者是其中帧中的分割数等于或大于预定数的块。
(附加声明6)根据附加声明1的解码程序,其中解码程序从比目标块具有更多像素的区域对目标块执行滤波处理。
(附加声明7)根据附加声明1的解码程序,其中,使用预测方向对运动图像进行编码,所述预测方向指示被用于预测的帧关于时间轴的方向,并且在目标块是第一块时解码程序进一步使用所述预测方向来对运动图像进行解码。
(附加声明8)根据附加声明7的解码程序,其中在确定要解码的块是否是组的第一块之前,目标块确定要解码的块是否是用于复制预测方向、参考索引和与周围块的差的合并目标,并且如果要合并的块是合并目标,则对目标块执行合并,并且当所述块不是合并目标时,确定所述块是否是组的第一块。
(附加声明9)根据附加声明1的解码程序,其中,使用预测方向对运动图像进行编码,所述预测方向指示被用于预测的帧关于时间轴的方向,并且解码程序对预测方向进行解码。
(附加声明10)根据附加声明7的解码程序,其中,当第一块的预测方向是向前和向后方向时,解码程序使用当比特流不是第一块时的预测方向来解码比特流。
(附加声明11)一种编码程序,对于通过对连续运动图像中的多个帧中的每个帧进行分割而获得的每个块,使用指示要参考的帧的参考索引和与帧中预测的运动矢量的预测值之间的差来将运动图像编码为比特流,其中编码程序使计算机执行以下处理:确定具有预定数量的块的组是否是组的第一块;如果要编码的块是第一块,编码程序使用参考索引和差;以及如果要编码的块不是第一块,编码程序使计算机通过对每个组的参考索引和差的范围施加限制来编码参考索引和差的范围。
(附加声明12)根据附加声明11的编码程序,其中,如果目标块不是第一块,则编码程序使参考索引为与第一块相同的参考索引。
(附加声明13)根据附加声明11的编码程序,其中,如果目标块不是第一块,则编码程序使预测值与第一块的预测值相同。
(附加声明14)根据附加声明11的编码程序,其中,如果目标块不是第一块,则编码程序使预测值为第一块的运动矢量。
(附加声明15)一种编码装置,对于通过对其中多个帧连续的运动图像的每个帧进行分割而获得的每个块,使用指示要参考的帧的参考索引和帧中预测的运动矢量的预测值之间的差来将图像编码为比特流,编码装置包括:控制单元,在每个帧中定义具有预定数量的块的多个组,并确定要编码的块是否是组的第一块;编码单元,将运动图像编码成比特流,其中当目标块是第一块时,控制单元使编码单元使用参考索引和差来执行编码,以及其中如果目标块不是第一块,则编码单元通过针对每个组添加限制来对参考索引和差的范围进行编码。
(附加声明16)根据附加声明15的编码装置,其中,如果目标块不是第一块,则控制单元使编码单元使用与第一块的参考索引相同的参考索引对目标块进行编码。
(附加声明17)根据附加声明15的编码装置,其中,当目标块不是第一块时,控制单元使编码单元使用与第一块相同的预测值作为预测值对目标块进行编码。
(附加声明18)根据附加声明15的编码装置,其中,当目标块不是第一块时,控制单元使编码单元使用第一块的运动矢量作为预测值对目标块进行编码。

Claims (20)

1.一种解码方法,对于通过对其中多个帧连续的运动图像的每个帧进行分割而获得的每个块,使用指示要参考的帧的参考索引和帧中预测的运动矢量的预测值之间的差,来解码对运动图像编码的比特流,所述解码方法在每个帧中定义具有预定数量的块的多个组,通过针对每个组向所述组中除第一块以外的块的所述参考索引、以及所述差的范围添加限制,来针对每个块编码所述运动图片,所述解码方法包括以下步骤:
第一块确定步骤,确定要解码的目标块是否是所述组中的所述第一块,
第一块解码步骤,当要解码的所述目标块是所述第一块时,使用所述参考索引和所述差对所述目标块进行解码,以及
第二块解码步骤,如果所述目标块不是所述第一块,使用限制的所述参考索引和所述差对所述目标块进行解码。
2.根据权利要求1所述的解码方法,其中在所述第二块解码步骤及后续块解码步骤中,所述参考索引是与所述第一块相同的参考索引。
3.根据权利要求1所述的解码方法,其中在所述第二块解码步骤及后续块解码步骤中,所述预测值是与所述第一块相同的预测值。
4.根据权利要求1所述的解码方法,其中在所述第二块解码步骤及后续块解码步骤中,所述预测值是所述第一块的所述运动矢量。
5.根据权利要求1所述的解码方法,其中所述块是其中包括在所述块中的像素数等于或小于某个数的块,或者是其中帧中的分割数等于或大于某个数的块。
6.根据权利要求1所述的解码方法,其中所述目标块是从比所述目标块具有更多像素的区域进行滤波处理得到的。
7.根据权利要求1所述的解码方法,其中,使用预测方向对所述运动图像进行编码,并且在所述第一块解码步骤中进一步使用所述预测方向进行解码,所述预测方向指示被用于预测的帧关于时间轴的方向。
8.根据权利要求7所述的解码方法,其中在所述第一块确定步骤之前,所述目标块确定所述目标块是否是用于复制所述预测方向、所述参考索引和与周围块的差的合并目标,并且如果所述目标块是合并目标,对所述目标块执行合并,并且如果所述目标块不是合并目标,所述解码方法进行到所述第一块确定步骤。
9.根据权利要求1所述的解码方法,其中,使用预测方向对所述运动图像进行编码,并且还包括对所述预测方向进行解码的预测方向解码步骤,所述预测方向指示被用于预测的帧关于时间轴的方向。
10.根据权利要求7所述的解码方法,其中,在所述第一块解码步骤中,当所述预测方向是向前和向后方向两者时,在所述第二块解码步骤和后续块解码步骤中,使用来自所述比特流的所述预测方向执行解码。
11.一种解码装置,对于通过对其中多个帧连续的运动图像的每个帧进行分割而获得的每个块,使用指示要参考的帧的参考索引和与帧中预测的运动矢量的预测值的差,来解码对运动图像编码的比特流,所述解码装置在每个帧中定义具有预定数量的块的多个组,通过针对每个组向所述组中除第一块以外的块的所述参考索引、以及所述差的范围添加限制,来针对每个块编码所述运动图片,所述解码装置包括:
确定单元,确定要解码的目标块是否是所述组的所述第一块;以及
解码单元,从所述比特流解码所述运动图像,
其中,当要解码的所述目标块是所述第一块时,所述确定单元使用所述参考索引和所述差来解码所述目标块,以及
其中,如果所述目标块不是所述第一块,所述确定单元使用限制的所述参考索引和所述差来解码所述目标块。
12.根据权利要求11所述的解码装置,其中,如果所述目标块不是所述第一块,所述确定单元使所述解码单元使用与所述第一块相同的参考索引进行解码。
13.根据权利要求11所述的解码装置,其中,当所述目标块不是所述第一块时,所述确定单元使所述解码单元使用与所述第一块相同的预测值作为所述预测值进行解码。
14.根据权利要求11所述的解码装置,其中,当所述目标块不是所述第一块时,所述确定单元使所述解码单元使用所述第一块的所述运动矢量作为所述预测值进行解码。
15.根据权利要求11所述的解码装置,其中,所述块是其中包括在所述块中的像素数等于或小于某个数的块,或者是其中帧中的分割数等于或大于某个数的块。
16.根据权利要求11所述的解码装置,还包括:滤波电路,用于执行滤波处理,使得具有比所述目标块更多像素数的区域成为所述块。
17.一种编码方法,对于通过对其中多个帧连续的运动图像的每个帧进行分割而获得的每个块,使用指示要参考的帧的参考索引和帧中预测的运动矢量的预测值之间的差,来将运动图像编码为比特流,所述编码方法包括以下步骤:
在每个帧中定义具有预定数量的块的多个组的步骤,
确定要解码的目标块是否是所述组的第一块的步骤,
第一块编码步骤,当要解码的所述目标块是所述第一块时,使用所述参考索引和所述差对所述目标块进行编码,以及
第二块编码步骤,如果所述目标块不是所述第一块,使用限制的所述参考索引和所述差对所述目标块进行编码。
18.根据权利要求17所述的编码方法,其中在所述第二块编码步骤及后续块编码步骤中,所述参考索引是与所述第一块相同的参考索引。
19.根据权利要求17所述的编码方法,其中在所述第二块编码步骤及后续块编码步骤中,所述预测值是与所述第一块相同的预测值。
20.根据权利要求17所述的编码方法,其中在所述第二块编码步骤及后续块编码步骤中,所述预测值是所述第一块的所述运动矢量。
CN202010106772.9A 2019-03-11 2020-02-20 解码方法、解码装置和编码方法 Pending CN111683246A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2019043469A JP2020150294A (ja) 2019-03-11 2019-03-11 復号方法、復号装置及び符号化方法
JP2019-043469 2019-03-11

Publications (1)

Publication Number Publication Date
CN111683246A true CN111683246A (zh) 2020-09-18

Family

ID=69804626

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010106772.9A Pending CN111683246A (zh) 2019-03-11 2020-02-20 解码方法、解码装置和编码方法

Country Status (4)

Country Link
US (1) US20200296409A1 (zh)
EP (1) EP3709649A1 (zh)
JP (1) JP2020150294A (zh)
CN (1) CN111683246A (zh)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102263947B (zh) * 2010-05-27 2016-07-06 香港科技大学 图像运动估计的方法及系统
KR101912059B1 (ko) 2011-01-19 2018-10-25 르네사스 일렉트로닉스 가부시키가이샤 화상 부호화 장치 및 화상 복호 장치
CN110651474B (zh) * 2017-05-18 2022-02-18 联发科技股份有限公司 用于视频编解码的运动向量限制方法和装置

Also Published As

Publication number Publication date
US20200296409A1 (en) 2020-09-17
JP2020150294A (ja) 2020-09-17
EP3709649A1 (en) 2020-09-16

Similar Documents

Publication Publication Date Title
JP4788649B2 (ja) 動画像記録方法及びその装置
US8213501B2 (en) Video encoding method, video decoding method, video encoding program, video decoding program, video encoding apparatus, and video decoding apparatus
US9503728B2 (en) Image processing device, decoding method, intra-frame decoder, method of decoding intra-frame and intra-frame encoder
CN113115046A (zh) 分量相关的子块分割
CN114009040A (zh) 编码器、解码器及对应方法
CN111083487B (zh) 仿射模式的运动信息的存储
US20060093039A1 (en) Video image encoding method and video image encoding apparatus
JPH1155667A (ja) 画像符号化装置および画像復号化装置および画像符号化データを記録した記録媒体
CN115023953A (zh) 指示高级语法的编码器、解码器以及对应方法
CN114501019A (zh) 关于划分预测
CN115152218A (zh) 简化条带头语法元素指示的编码器、解码器及对应方法
JP6209026B2 (ja) 画像符号化装置及びその制御方法
JP5677576B2 (ja) 動画像復号化方法及び動画像符号化方法
CN114830665B (zh) 仿射运动模型限制
US6353683B1 (en) Method and apparatus of image processing, and data storage media
CN115349257A (zh) 基于dct的内插滤波器的使用
EP3709649A1 (en) Decoding method, decoding apparatus, and encoding method
CN108702506B9 (zh) 编码设备和编码方法
CN114930840A (zh) 增强型插值滤波器的运动矢量范围的推导
CN113875251A (zh) 用于几何分割模式的自适应滤波器强度指示
CN114503559B (zh) 用于视频译码中的帧间预测装置和方法的插值滤波器
JP6519185B2 (ja) 動画像符号化装置
CN110958457A (zh) 模式依赖的仿射继承
CN118077199A (zh) 改进的变换系数残差符号预测在视频编码中的相关应用
JP2015092705A (ja) 動画像復号化方法及び画像符号化方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20200918

WD01 Invention patent application deemed withdrawn after publication