[go: up one dir, main page]

CN114303379A - Image decoding device, image decoding method, and program - Google Patents

Image decoding device, image decoding method, and program Download PDF

Info

Publication number
CN114303379A
CN114303379A CN202080057643.3A CN202080057643A CN114303379A CN 114303379 A CN114303379 A CN 114303379A CN 202080057643 A CN202080057643 A CN 202080057643A CN 114303379 A CN114303379 A CN 114303379A
Authority
CN
China
Prior art keywords
motion vector
merge
index
pixel
unit
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.)
Granted
Application number
CN202080057643.3A
Other languages
Chinese (zh)
Other versions
CN114303379B (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.)
KDDI Corp
Original Assignee
KDDI 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 KDDI Corp filed Critical KDDI Corp
Publication of CN114303379A publication Critical patent/CN114303379A/en
Application granted granted Critical
Publication of CN114303379B publication Critical patent/CN114303379B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/117Filters, e.g. for pre-processing or post-processing
    • 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/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
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/523Motion estimation or motion compensation with sub-pixel accuracy

Landscapes

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

Abstract

在本发明的图像解码装置200中,对象块被合并,且构成为在构建合并列表时,即便与不同的合并索引对应的运动矢量及参考图像索引相同,当与合并索引对应的半像素索引不同时,也作为不同的合并索引登记在合并列表中。

Figure 202080057643

In the image decoding apparatus 200 of the present invention, the target blocks are merged, and when the merge list is constructed, even if the motion vector and reference image index corresponding to different merge indexes are the same, when the half-pixel index corresponding to the merge index is different At the same time, it is also registered in the merge list as a different merge index.

Figure 202080057643

Description

图像解码装置、图像解码方法及程序Image decoding device, image decoding method, and program

[技术领域][Technical field]

本发明涉及一种图像解码装置、图像解码方法及程序。The present invention relates to an image decoding device, an image decoding method and a program.

[背景技术][Background technique]

在非专利文献1中,对于运动补偿预测(以下称为MC预测)这一技术,有合并编码(以下称为合并)及自适应矢量编码(以下称为AMVP)这样的用于导出运动矢量(以下称为mv)的技术,且准备了两种用于利用所导出的mv来生成MC预测图像信号的内插滤波器。In Non-Patent Document 1, for motion compensated prediction (hereinafter referred to as MC prediction), there are merge coding (hereinafter referred to as merge) and adaptive vector coding (hereinafter referred to as AMVP) for deriving motion vectors ( The technique is hereinafter referred to as mv), and two kinds of interpolation filters for generating the MC predicted image signal using the derived mv are prepared.

第一种是与非专利文献2相同的内插滤波器(以下称为HEVC滤波器),第二种是非专利文献1中新引入的内插滤波器(以下称为平滑化滤波器)。The first type is the same interpolation filter as that of Non-Patent Document 2 (hereinafter referred to as HEVC filter), and the second type is the interpolation filter newly introduced in Non-Patent Document 1 (hereinafter referred to as smoothing filter).

虽然均适用于mv的参考目标处于小数像素精度位置的情况,但上述平滑化滤波器仅限于mv的参考目标处于1/2像素精度位置的情况,而且,仅适用于显示半像素索引(以下称为hpelIfIdx)有效的情况,所述半像素索引表示上述平滑化滤波器是否有效。在除此以外的情况下,应用HEVC滤波器。Although both are applicable to the case where the reference target of mv is at the position of fractional pixel precision, the above-mentioned smoothing filter is limited to the case where the reference target of mv is at the position of 1/2 pixel precision, and is only applicable to display half-pixel index (hereinafter referred to as the If hpelIfIdx) is valid, the half-pixel index indicates whether the above-mentioned smoothing filter is valid. In other cases, apply the HEVC filter.

在编码对象的块(以下称为对象块)被合并时,从已完成处理的相邻块沿用上述hpelIfIdx,在对象块被AMVP时,根据所导出的mv,确定hpelIfIdx的值。When the blocks to be encoded (hereinafter referred to as target blocks) are merged, the above-described hpelIfIdx is inherited from the adjacent blocks that have already been processed, and when the target block is AMVP, the value of hpelIfIdx is determined based on the derived mv.

[现有技术文献][Prior Art Literature]

非专利文献Non-patent literature

非专利文献1:Versatile Video Coding(Draft 6),JVET-N1001Non-Patent Document 1: Versatile Video Coding (Draft 6), JVET-N1001

非专利文献2:ITU-T H.265 High Efficiency Video CodingNon-Patent Document 2: ITU-T H.265 High Efficiency Video Coding

[发明内容][Content of the Invention]

发明要解决的课题The problem to be solved by the invention

然而,在上述现有技术中,当对象块被合并时,是利用特定的合并列表构建方法及历史合并表构建方法,生成合并列表及历史合并表,并导出运动矢量,但有如下问题:在该合并列表及历史合并表的构建过程中的pruning(裁剪)处理中,未确认半像素索引的同一性。However, in the above-mentioned prior art, when the object blocks are merged, a specific merge list construction method and a history merge table construction method are used to generate a merge list and a history merge table, and to derive a motion vector, but there are the following problems: In the pruning process in the construction of the merge list and the history merge table, the identity of the half-pixel indices is not confirmed.

因此,本发明是鉴于上述问题而完成的,其目的在于提供一种图像解码装置、图像解码方法及程序,通过在构建合并列表时或历史合并表时的pruning处理的判断条件中追加半像素索引的判断,来增加平滑化滤波器的选择机会,结果可以期待编码性能的提高。Therefore, the present invention has been made in view of the above-mentioned problems, and its object is to provide an image decoding apparatus, an image decoding method, and a program that add a half-pixel index to the judgment condition of the pruning process when constructing a merge list or a history merge table. , to increase the selection opportunity of the smoothing filter, and the result can be expected to improve the coding performance.

用于解决课题的手段means of solving problems

本发明的第一特征的主旨在于一种图像解码装置,包括:合并部,构成为根据合并索引,对运动矢量及半像素索引进行解码,所述半像素索引表示所述运动矢量是否参考1/2像素精度位置;运动矢量细化部,构成为通过MMVD(Merge Motion Vector Difference)或DMVR(Decoder-side Motion Vector Refinement),对所述运动矢量进行细化;滤波器判断部,构成为基于经细化的运动矢量及所述半像素索引,判断是否使用内插滤波器及内插滤波器类型;及滤波器应用部,构成为利用所述内插滤波器,来生成运动补偿预测像素信号;并且,所述合并部构成为通过特定的合并列表构建方法,生成合并列表,并根据所述合并列表及所述合并索引,对所述运动矢量及所述半像素索引进行解码,对象块被合并,所述合并部构成为在构建所述合并列表时,即便与不同的所述合并索引对应的运动矢量及参考图像索引相同,当与所述合并索引对应的半像素索引不同时,也作为不同的合并索引登记在所述合并列表中。The gist of the first feature of the present invention resides in an image decoding apparatus including: a combining unit configured to decode a motion vector and a half-pixel index based on a combining index, the half-pixel index indicating whether the motion vector refers to 1/ 2-pixel precision position; a motion vector refinement unit configured to refine the motion vector through MMVD (Merge Motion Vector Difference) or DMVR (Decoder-side Motion Vector Refinement); a filter determination unit configured to The refined motion vector and the half-pixel index are used to determine whether to use an interpolation filter and an interpolation filter type; and a filter application unit is configured to use the interpolation filter to generate a motion-compensated prediction pixel signal; In addition, the merging unit is configured to generate a merging list by a specific merging list construction method, decode the motion vector and the half-pixel index based on the merging list and the merging index, and merge the target block , the merging unit is configured to, when constructing the merging list, even if the motion vector and reference image index corresponding to the different merging indices are the same, when the half-pixel indices corresponding to the merging indices are different, they are also regarded as different The merge index of is registered in the merge list.

本发明的第二特征的主旨在于一种图像解码装置,包括:合并部,构成为根据合并索引,对运动矢量及半像素索引进行解码,所述半像素索引表示所述运动矢量是否参考1/2像素精度位置;运动矢量细化部,构成为通过MMVD(Merge Motion Vector Difference)或DMVR(Decoder-side Motion Vector Refinement),对所述运动矢量进行细化;滤波器判断部,构成为基于经细化的运动矢量及所述半像素索引,判断是否使用内插滤波器及内插滤波器类型;及滤波器应用部,构成为利用所述内插滤波器,来生成运动补偿预测像素信号;并且,所述合并部构成为通过特定的合并列表构建方法,生成合并列表,并根据所述合并列表及所述合并索引,对所述运动矢量及所述半像素索引进行解码,对象块被合并,所述合并部构成为在构建历史合并表时,即便与不同的历史合并候补对应的运动矢量及参考图像索引相同,当与所述历史合并候补对应的半像素索引不同时,也作为不同的历史合并候补登记在所述历史合并表中。The gist of the second feature of the present invention resides in an image decoding apparatus including: a combining unit configured to decode a motion vector and a half-pixel index based on a combining index, the half-pixel index indicating whether the motion vector refers to 1/ 2-pixel precision position; a motion vector refinement unit configured to refine the motion vector through MMVD (Merge Motion Vector Difference) or DMVR (Decoder-side Motion Vector Refinement); a filter determination unit configured to The refined motion vector and the half-pixel index are used to determine whether to use an interpolation filter and an interpolation filter type; and a filter application unit is configured to use the interpolation filter to generate a motion-compensated prediction pixel signal; In addition, the merging unit is configured to generate a merging list by a specific merging list construction method, decode the motion vector and the half-pixel index based on the merging list and the merging index, and merge the target block , the merging unit is configured to, when constructing the history merging table, even if the motion vector and reference image index corresponding to the different history merging candidates are the same, when the half-pixel indices corresponding to the history merging candidates are different, they are also regarded as different The history merge candidates are registered in the history merge table.

本发明的第三特征的主旨在于一种图像解码装置,包括:合并部,构成为根据合并索引,对运动矢量及半像素索引进行解码,所述半像素索引表示所述运动矢量是否参考1/2像素精度位置;运动矢量细化部,构成为通过MMVD(Merge Motion Vector Difference)或DMVR(Decoder-side Motion Vector Refinement),对所述运动矢量进行细化;滤波器判断部,构成为基于经细化的运动矢量及所述半像素索引,判断是否使用内插滤波器及内插滤波器类型;及滤波器应用部,构成为利用所述内插滤波器,来生成运动补偿预测像素信号;并且,所述合并部构成为通过特定的合并列表构建方法,生成合并列表,并根据所述合并列表及所述合并索引,对所述运动矢量及所述半像素索引进行解码,对象块被合并,所述合并部构成为当将时间合并的合并索引登记在所述合并列表中时,沿用参考块的半像素索引,并登记在所述合并列表中。The gist of the third feature of the present invention resides in an image decoding apparatus including: a combining unit configured to decode a motion vector and a half-pixel index based on a combining index, the half-pixel index indicating whether the motion vector refers to 1/ 2-pixel precision position; a motion vector refinement unit configured to refine the motion vector through MMVD (Merge Motion Vector Difference) or DMVR (Decoder-side Motion Vector Refinement); a filter determination unit configured to The refined motion vector and the half-pixel index are used to determine whether to use an interpolation filter and an interpolation filter type; and a filter application unit is configured to use the interpolation filter to generate a motion-compensated prediction pixel signal; In addition, the merging unit is configured to generate a merging list by a specific merging list construction method, decode the motion vector and the half-pixel index based on the merging list and the merging index, and merge the target block , the merging unit is configured to use the half-pixel index of the reference block and register it in the merging list when registering the merging index of the temporal merging in the merging list.

本发明的第四特征的主旨在于一种图像解码方法,包括:步骤A,根据合并索引,对运动矢量及半像素索引进行解码,所述半像素索引表示所述运动矢量是否参考1/2像素精度位置;步骤B,通过MMVD(Merge Motion Vector Difference)或DMVR(Decoder-sideMotion Vector Refinement),对所述运动矢量进行细化;步骤C,基于经细化的所述运动矢量及所述半像素索引,判断是否使用内插滤波器及内插滤波器类型;及步骤D,利用所述内插滤波器,来生成运动补偿预测像素信号;并且,在所述步骤A中,通过特定的合并列表构建方法,生成合并列表,并根据所述合并列表及所述合并索引,对所述运动矢量及所述半像素索引进行解码,对象块被合并,所述合并部在构建所述合并列表时,即便与不同的所述合并索引对应的运动矢量及参考图像索引相同,当与所述合并索引对应的半像素索引不同时,也作为不同的合并索引登记在所述合并列表中。The gist of the fourth feature of the present invention is an image decoding method, comprising: step A, decoding a motion vector and a half-pixel index according to a merge index, the half-pixel index indicating whether the motion vector refers to 1/2 pixel Precision position; Step B, through MMVD (Merge Motion Vector Difference) or DMVR (Decoder-side Motion Vector Refinement), refine the motion vector; Step C, based on the refined motion vector and the half pixel index, to determine whether to use an interpolation filter and the type of interpolation filter; and step D, to use the interpolation filter to generate a motion-compensated prediction pixel signal; and, in the step A, to pass a specific merge list The construction method is to generate a merge list, and decode the motion vector and the half-pixel index according to the merge list and the merge index, and the target blocks are merged. When constructing the merge list, the merging unit: Even if the motion vector and reference image index corresponding to the different merging indexes are the same, when the half-pixel indices corresponding to the merging indexes are different, they are registered in the merging list as different merging indexes.

本发明的第五特征的主旨在于一种程序,使计算机作为图像解码装置发挥功能,所述图像解码装置包括:合并部,构成为根据合并索引,对运动矢量及半像素索引进行解码,所述半像素索引表示所述运动矢量是否参考1/2像素精度位置;运动矢量细化部,构成为通过MMVD(Merge Motion Vector Difference)或DMVR(Decoder-side Motion VectorRefinement),对所述运动矢量进行细化;滤波器判断部,构成为基于经细化的运动矢量及所述半像素索引,判断是否使用内插滤波器及内插滤波器类型;及滤波器应用部,构成为利用所述内插滤波器,来生成运动补偿预测像素信号;并且,所述合并部构成为通过特定的合并列表构建方法,生成合并列表,并根据所述合并列表及所述合并索引,对所述运动矢量及所述半像素索引进行解码,对象块被合并,所述合并部构成为在构建所述合并列表时,即便与不同的所述合并索引对应的运动矢量及参考图像索引相同,当与所述合并索引对应的半像素索引不同时,也作为不同的合并索引登记在所述合并列表中。The gist of a fifth feature of the present invention resides in a program for causing a computer to function as an image decoding apparatus including a combining unit configured to decode a motion vector and a half-pixel index based on a combining index, the The half-pixel index indicates whether the motion vector refers to a 1/2 pixel precision position; the motion vector refinement part is configured to refine the motion vector through MMVD (Merge Motion Vector Difference) or DMVR (Decoder-side Motion Vector Refinement). a filter determination unit configured to determine whether to use an interpolation filter and an interpolation filter type based on the refined motion vector and the half-pixel index; and a filter application unit configured to use the interpolation A filter is used to generate a motion-compensated predicted pixel signal; and the combining unit is configured to generate a combining list by using a specific combining list construction method, and to perform a combination of the motion vector and the all combining list based on the combining list and the combining index. The half-pixel index is decoded, and the target block is merged, and the merging unit is configured such that, when constructing the merge list, even if the motion vector and reference image index corresponding to the different merge index are the same, when the merge index is the same as the merge index When the corresponding half-pixel indices are different, they are also registered in the merging list as different merging indices.

发明的效果effect of invention

根据本发明,可以提供一种图像解码装置、图像解码方法及程序,通过在构建合并列表时或历史合并表时的pruning处理的判断条件中追加半像素索引的判断,来增加平滑化滤波器的选择机会,结果可以期待编码性能的提高。According to the present invention, it is possible to provide an image decoding apparatus, an image decoding method, and a program, in which the determination of the half-pixel index is added to the determination condition of the pruning process when the merge list is constructed or the history merge table is added, thereby increasing the smoothing filter. Opportunities are chosen, and as a result an improvement in coding performance can be expected.

[附图的简单说明][Simple Description of Drawings]

图1是示出一实施方式的图像处理系统1的构成的一个例子的图。FIG. 1 is a diagram showing an example of the configuration of an image processing system 1 according to an embodiment.

图2是示出一实施方式的图像编码装置100的功能块的一个例子的图。FIG. 2 is a diagram showing an example of functional blocks of the image coding apparatus 100 according to the embodiment.

图3是示出一实施方式的图像编码装置100的帧间预测部111的功能块的一个例子的图。FIG. 3 is a diagram showing an example of functional blocks of the inter prediction unit 111 of the image coding apparatus 100 according to the embodiment.

图4是示出一实施方式的图像解码装置200的功能块的一个例子的图。FIG. 4 is a diagram showing an example of functional blocks of the image decoding apparatus 200 according to an embodiment.

图5是示出一实施方式的图像解码装置200的帧间预测部241的功能块的一个例子的图。FIG. 5 is a diagram showing an example of functional blocks of the inter prediction unit 241 of the image decoding apparatus 200 according to the embodiment.

图6是示出一实施方式的滤波器判断部111D1/241C1中的是否应用内插滤波器及滤波器类型的判断处理的一个例子的流程图。FIG. 6 is a flowchart showing an example of a process of determining whether or not to apply an interpolation filter and a filter type in the filter determination unit 111D1/241C1 according to an embodiment.

图7是示出一实施方式的半像素索引(hpelIfIdx)的判断处理的一个例子的流程图。FIG. 7 is a flowchart showing an example of a half pixel index (hpelIfIdx) determination process according to an embodiment.

图8是用于说明非专利文献1的判断处理的图。FIG. 8 is a diagram for explaining the determination process of Non-Patent Document 1. FIG.

图9是一实施方式的图像解码装置200的mv细化部241B的功能块的一个例子的图。FIG. 9 is a diagram showing an example of functional blocks of the mv refinement unit 241B of the image decoding apparatus 200 according to the embodiment.

图10是示出一实施方式的合并列表构建处理的一个例子的流程图。FIG. 10 is a flowchart showing an example of a merge list construction process according to an embodiment.

图11是示出一实施方式的通过合并列表构建处理所生成的合并列表的一个例子的图。FIG. 11 is a diagram showing an example of a merged list generated by a merged list construction process according to an embodiment.

图12是示出一实施方式的空间合并的一个例子的图。FIG. 12 is a diagram showing an example of space combining according to an embodiment.

图13是示出一实施方式的时间合并的一个例子的图。FIG. 13 is a diagram showing an example of time integration according to an embodiment.

图14是用于说明一实施方式的时间合并中的运动矢量的缩放处理的一个例子的图。FIG. 14 is a diagram for explaining an example of scaling processing of motion vectors in temporal combining according to an embodiment.

图15是示出一实施方式的历史合并的一个例子的图。FIG. 15 is a diagram showing an example of history merging in one embodiment.

图16是示出一实施方式的通过成对平均合并算出的新的运动矢量与半像素索引的组合的一个例子的图。FIG. 16 is a diagram showing an example of a combination of a new motion vector and half-pixel index calculated by pairwise average combining according to an embodiment.

图17是示出一实施方式的通过成对平均合并生成的新半像素索引的设定处理的一个例子的流程图。FIG. 17 is a flowchart showing an example of a process of setting a new half-pixel index generated by pairwise average combining according to an embodiment.

图18是示出一实施方式的合并列表构建例的图。FIG. 18 is a diagram showing an example of constructing a merged list according to an embodiment.

[具体实施方式][Detailed ways]

下面,参考附图对本发明的实施方式进行说明。另外,下述实施方式中的构成要素可以适当地与现有的构成要素等进行置换,并且,可以进行包括与其他现有的构成要素的组合在内的各种变形。因此,不应以下述实施方式的记载来限定权利要求书所记载的发明内容。Hereinafter, embodiments of the present invention will be described with reference to the accompanying drawings. In addition, the components in the following embodiments can be appropriately replaced with existing components and the like, and various modifications including combinations with other existing components can be made. Therefore, the content of the invention described in the claims should not be limited by the description of the following embodiments.

<第一实施方式><First Embodiment>

下面,参考图1至图28对本发明的第一实施方式的图像处理系统10进行说明。图1是示出本实施方式的图像处理系统10的图。Next, the image processing system 10 according to the first embodiment of the present invention will be described with reference to FIGS. 1 to 28 . FIG. 1 is a diagram showing an image processing system 10 according to the present embodiment.

如图1所示,本实施方式的图像处理系统10包括图像编码装置100及图像解码装置200。As shown in FIG. 1 , the image processing system 10 according to the present embodiment includes an image encoding device 100 and an image decoding device 200 .

图像编码装置100构成为通过对输入图像信号进行编码来生成编码数据。图像解码装置200构成为通过对编码数据进行解码来生成输出图像信号。The image encoding device 100 is configured to generate encoded data by encoding an input image signal. The image decoding device 200 is configured to generate an output image signal by decoding the encoded data.

编码数据可以经由传输路径从图像编码装置100发送至图像解码装置200。编码数据也可以在存储至存储介质后,从图像编码装置100提供至图像解码装置200。The encoded data may be transmitted from the image encoding device 100 to the image decoding device 200 via the transmission path. The encoded data may be supplied from the image encoding device 100 to the image decoding device 200 after being stored in a storage medium.

(图像编码装置100)(image encoding device 100 )

下面,参考图2对本实施方式的图像编码装置100进行说明。图2是示出本实施方式的图像编码装置100的功能块的一个例子的图。Next, the image coding apparatus 100 according to the present embodiment will be described with reference to FIG. 2 . FIG. 2 is a diagram showing an example of functional blocks of the image coding apparatus 100 according to the present embodiment.

如图2所示,图像编码装置100包括帧间预测部111、帧内预测部112、减法器121、加法器122、变换及量化部131、逆变换及逆量化部132、编码部140、环路滤波处理部150及帧缓冲器160。As shown in FIG. 2 , the image coding apparatus 100 includes an inter prediction unit 111, an intra prediction unit 112, a subtractor 121, an adder 122, a transform and quantization unit 131, an inverse transform and inverse quantization unit 132, an encoding unit 140, a loop The channel filter processing unit 150 and the frame buffer 160 .

帧间预测部111构成为通过帧间预测(interframe prediction)来生成预测信号。The inter-frame prediction unit 111 is configured to generate a prediction signal by inter-frame prediction.

具体来说,帧间预测部111构成为通过对编码对象的帧(以下称为对象帧)与存储在帧缓冲器160中的参考帧进行比较,来指定参考帧中包含的参考块,并确定所指定的参考块的运动矢量(mv)。Specifically, the inter prediction unit 111 is configured to designate a reference block included in the reference frame by comparing a frame to be encoded (hereinafter referred to as a target frame) with a reference frame stored in the frame buffer 160, and to determine The motion vector (mv) of the specified reference block.

并且,帧间预测部111构成为基于参考块及运动矢量,针对每个对象块生成编码对象的块(以下称为对象块)中包含的预测信号。帧间预测部111构成为将预测信号输出至减法器121及加法器122。此处,参考帧是与对象帧不同的帧。In addition, the inter prediction unit 111 is configured to generate, for each target block, a prediction signal included in an encoding target block (hereinafter referred to as a target block) based on the reference block and the motion vector. The inter prediction unit 111 is configured to output the prediction signal to the subtractor 121 and the adder 122 . Here, the reference frame is a frame different from the object frame.

帧内预测部112构成为通过帧内预测(intraframe prediction)来生成预测信号。The intra-frame prediction unit 112 is configured to generate a prediction signal by intra-frame prediction.

具体来说,帧内预测部112构成为指定对象帧中包含的参考块,并基于所指定的参考块,针对每个对象块生成预测信号。并且,帧内预测部112构成为将预测信号输出至减法器121及加法器122。Specifically, the intra prediction unit 112 is configured to designate a reference block included in the target frame, and to generate a prediction signal for each target block based on the designated reference block. In addition, the intra prediction unit 112 is configured to output the prediction signal to the subtractor 121 and the adder 122 .

此处,参考块是对象块所参考的块。例如,参考块是与对象块相邻的块。Here, the reference block is the block to which the object block refers. For example, the reference block is a block adjacent to the object block.

减法器121构成为从输入图像信号中减去预测信号,并将预测残差信号输出至变换及量化部131。此处,减法器121构成为生成通过帧内预测或帧间预测所生成的预测信号与输入图像信号的差分即预测残差信号。The subtractor 121 is configured to subtract the prediction signal from the input image signal, and output the prediction residual signal to the transform and quantization unit 131 . Here, the subtractor 121 is configured to generate a prediction residual signal which is a difference between the prediction signal generated by intra prediction or inter prediction and the input image signal.

加法器122构成为将预测信号与从逆变换及逆量化部132输出的预测残差信号相加来生成滤波处理前解码信号,并将该滤波处理前解码信号输出至帧内预测部112及环路滤波处理部150。The adder 122 is configured to add the prediction signal and the prediction residual signal output from the inverse transform and inverse quantization unit 132 to generate a pre-filtering decoded signal, and output the pre-filtering decoded signal to the intra prediction unit 112 and the loop. The channel filter processing unit 150 .

此处,滤波处理前解码信号构成帧内预测部112中使用的参考块。Here, the decoded signal before the filtering process constitutes a reference block used in the intra prediction unit 112 .

变换及量化部131构成为进行预测残差信号的变换处理,且获取系数等级值。此外,变换及量化部131也可以构成为进行系数等级值的量化。The transform and quantization unit 131 is configured to perform transform processing of the prediction residual signal and obtain coefficient level values. Furthermore, the transform and quantization unit 131 may be configured to perform quantization of coefficient level values.

此处,变换处理是将预测残差信号变换为频率成分信号的处理。在该变换处理中,可以使用与离散余弦变换(DCT,Discrete Cosine Transform)对应的基模型(变换矩阵),也可以使用与离散正弦变换(DST,Discrete Sine Transform)对应的基模型(变换矩阵)。Here, the conversion process is a process of converting the prediction residual signal into a frequency component signal. In this transformation process, a base model (transformation matrix) corresponding to discrete cosine transform (DCT, Discrete Cosine Transform) may be used, or a base model (transformation matrix) corresponding to discrete sine transform (DST, Discrete Sine Transform) may be used. .

逆变换及逆量化部132构成为进行从变换及量化部131输出的系数等级值的逆变换处理。此处,逆变换及逆量化部132也可以构成为在逆变换处理之前进行系数等级值的逆量化。The inverse transform and inverse quantization unit 132 is configured to perform inverse transform processing of the coefficient level values output from the transform and quantization unit 131 . Here, the inverse transform and inverse quantization unit 132 may be configured to perform inverse quantization of the coefficient level values before the inverse transform process.

此处,逆变换处理及逆量化是按照与由变换及量化部131进行的变换处理及量化相反的顺序进行。Here, inverse transform processing and inverse quantization are performed in the reverse order of the transform processing and quantization performed by the transform and quantization unit 131 .

编码部140构成为对从变换及量化部131输出的系数等级值进行编码,并输出编码数据。The encoding unit 140 is configured to encode the coefficient level values output from the transform and quantization unit 131, and to output encoded data.

此处,例如编码是基于系数等级值的产生概率来分配不同长度的代码的熵编码。Here, for example, the encoding is entropy encoding in which codes of different lengths are allocated based on the generation probability of coefficient level values.

并且,编码部140构成为不仅对系数等级值进行编码,还对解码处理中使用的控制数据进行编码。In addition, the encoding unit 140 is configured to encode not only the coefficient level values, but also control data used in the decoding process.

此处,控制数据可以包括编码块(CU,Coding Unit)尺寸、预测块(PU,PredictionUnit)尺寸、变换块(TU,Transform Unit)尺寸等尺寸数据。Here, the control data may include size data such as a coding block (CU, Coding Unit) size, a prediction block (PU, Prediction Unit) size, and a transform block (TU, Transform Unit) size.

并且,如下所述,控制数据也可以包括序列参数集(SPS,Sequence ParameterSet)、图片参数集(PPS,Picture Parameter Set)、切片头部等头部信息。In addition, as described below, the control data may also include header information such as a sequence parameter set (SPS, Sequence Parameter Set), a picture parameter set (PPS, Picture Parameter Set), and a slice header.

环路滤波处理部150构成为对从加法器122输出的滤波处理前解码信号进行滤波处理,且将滤波处理后解码信号输出至帧缓冲器160。The loop filter processing unit 150 is configured to perform filtering processing on the pre-filtered decoded signal output from the adder 122 and output the post-filtered decoded signal to the frame buffer 160 .

此处,例如滤波处理是减少在块(编码块、预测块或变换块)的边界部分产生的失真的解块滤波处理。Here, for example, the filtering process is a deblocking filtering process that reduces distortion generated at boundary portions of blocks (encoding blocks, prediction blocks, or transform blocks).

帧缓冲器160构成为存储帧间预测部111中使用的参考帧。The frame buffer 160 is configured to store reference frames used in the inter prediction unit 111 .

此处,滤波处理后解码信号构成帧间预测部111中使用的参考帧。Here, the decoded signal after the filtering process constitutes a reference frame used in the inter prediction unit 111 .

如图2所示,图像编码装置100包括帧间预测部111、帧内预测部112、减法器121、加法器122、变换及量化部131、逆变换及逆量化部132、编码部140、环路滤波处理部150及帧缓冲器160。As shown in FIG. 2 , the image coding apparatus 100 includes an inter prediction unit 111, an intra prediction unit 112, a subtractor 121, an adder 122, a transform and quantization unit 131, an inverse transform and inverse quantization unit 132, an encoding unit 140, a loop The channel filter processing unit 150 and the frame buffer 160 .

帧间预测部111构成为通过帧间预测(interframe prediction)来生成预测信号。The inter-frame prediction unit 111 is configured to generate a prediction signal by inter-frame prediction.

具体来说,帧间预测部111构成为通过对编码对象的帧(以下称为对象帧)与存储在帧缓冲器160中的参考帧进行比较,来指定参考帧中包含的参考块,并确定所指定的参考块的运动矢量(mv)。Specifically, the inter prediction unit 111 is configured to designate a reference block included in the reference frame by comparing a frame to be encoded (hereinafter referred to as a target frame) with a reference frame stored in the frame buffer 160, and to determine The motion vector (mv) of the specified reference block.

并且,帧间预测部111构成为基于参考块及运动矢量,针对每个对象块生成编码对象的块(以下称为对象块)中包含的预测信号。帧间预测部111构成为将预测信号输出至减法器121及加法器122。此处,参考帧是与对象帧不同的帧。In addition, the inter prediction unit 111 is configured to generate, for each target block, a prediction signal included in an encoding target block (hereinafter referred to as a target block) based on the reference block and the motion vector. The inter prediction unit 111 is configured to output the prediction signal to the subtractor 121 and the adder 122 . Here, the reference frame is a frame different from the object frame.

帧内预测部112构成为通过帧内预测(intraframe prediction)来生成预测信号。The intra-frame prediction unit 112 is configured to generate a prediction signal by intra-frame prediction.

具体来说,帧内预测部112构成为指定对象帧中包含的参考块,并基于所指定的参考块,针对每个对象块生成预测信号。并且,帧内预测部112构成为将预测信号输出至减法器121及加法器122。Specifically, the intra prediction unit 112 is configured to designate a reference block included in the target frame, and to generate a prediction signal for each target block based on the designated reference block. In addition, the intra prediction unit 112 is configured to output the prediction signal to the subtractor 121 and the adder 122 .

此处,参考块是对象块所参考的块。例如,参考块是与对象块相邻的块。Here, the reference block is the block to which the object block refers. For example, the reference block is a block adjacent to the object block.

减法器121构成为从输入图像信号中减去预测信号,并将预测残差信号输出至变换及量化部131。此处,减法器121构成为生成通过帧内预测或帧间预测所生成的预测信号与输入图像信号的差分即预测残差信号。The subtractor 121 is configured to subtract the prediction signal from the input image signal, and output the prediction residual signal to the transform and quantization unit 131 . Here, the subtractor 121 is configured to generate a prediction residual signal which is a difference between the prediction signal generated by intra prediction or inter prediction and the input image signal.

加法器122构成为将预测信号与从逆变换及逆量化部132输出的预测残差信号相加来生成滤波处理前解码信号,并将该滤波处理前解码信号输出至帧内预测部112及环路滤波处理部150。The adder 122 is configured to add the prediction signal and the prediction residual signal output from the inverse transform and inverse quantization unit 132 to generate a pre-filtering decoded signal, and output the pre-filtering decoded signal to the intra prediction unit 112 and the loop. The channel filter processing unit 150 .

此处,滤波处理前解码信号构成帧内预测部112中使用的参考块。Here, the decoded signal before the filtering process constitutes a reference block used in the intra prediction unit 112 .

变换及量化部131构成为进行预测残差信号的变换处理,且获取系数等级值。此外,变换及量化部131也可以构成为进行系数等级值的量化。The transform and quantization unit 131 is configured to perform transform processing of the prediction residual signal and obtain coefficient level values. Furthermore, the transform and quantization unit 131 may be configured to perform quantization of coefficient level values.

此处,变换处理是将预测残差信号变换为频率成分信号的处理。在该变换处理中,可以使用与离散余弦变换(DCT,Discrete Cosine Transform)对应的基模型(变换矩阵),也可以使用与离散正弦变换(DST,Discrete Sine Transform)对应的基模型(变换矩阵)。Here, the conversion process is a process of converting the prediction residual signal into a frequency component signal. In this transformation process, a base model (transformation matrix) corresponding to discrete cosine transform (DCT, Discrete Cosine Transform) may be used, or a base model (transformation matrix) corresponding to discrete sine transform (DST, Discrete Sine Transform) may be used. .

逆变换及逆量化部132构成为进行从变换及量化部131输出的系数等级值的逆变换处理。此处,逆变换及逆量化部132也可以构成为在逆变换处理之前进行系数等级值的逆量化。The inverse transform and inverse quantization unit 132 is configured to perform inverse transform processing of the coefficient level values output from the transform and quantization unit 131 . Here, the inverse transform and inverse quantization unit 132 may be configured to perform inverse quantization of the coefficient level values before the inverse transform process.

此处,逆变换处理及逆量化是按照与由变换及量化部131进行的变换处理及量化相反的顺序进行。Here, inverse transform processing and inverse quantization are performed in the reverse order of the transform processing and quantization performed by the transform and quantization unit 131 .

编码部140构成为对从变换及量化部131输出的系数等级值进行编码,并输出编码数据。The encoding unit 140 is configured to encode the coefficient level values output from the transform and quantization unit 131, and to output encoded data.

此处,例如编码是基于系数等级值的产生概率来分配不同长度的代码的熵编码。Here, for example, the encoding is entropy encoding in which codes of different lengths are allocated based on the generation probability of coefficient level values.

并且,编码部140构成为不仅对系数等级值进行编码,还对解码处理中使用的控制数据进行编码。In addition, the encoding unit 140 is configured to encode not only the coefficient level values, but also control data used in the decoding process.

此处,控制数据可以包括编码块(CU,Coding Unit)尺寸、预测块(PU,PredictionUnit)尺寸、变换块(TU,Transform Unit)尺寸等尺寸数据。Here, the control data may include size data such as a coding block (CU, Coding Unit) size, a prediction block (PU, Prediction Unit) size, and a transform block (TU, Transform Unit) size.

并且,如下所述,控制数据也可以包括序列参数集(SPS,Sequence ParameterSet)、图片参数集(PPS,Picture Parameter Set)、切片头部等头部信息。In addition, as described below, the control data may also include header information such as a sequence parameter set (SPS, Sequence Parameter Set), a picture parameter set (PPS, Picture Parameter Set), and a slice header.

环路滤波处理部150构成为对从加法器122输出的滤波处理前解码信号进行滤波处理,且将滤波处理后解码信号输出至帧缓冲器160。The loop filter processing unit 150 is configured to perform filtering processing on the pre-filtered decoded signal output from the adder 122 and output the post-filtered decoded signal to the frame buffer 160 .

此处,例如滤波处理是减少在块(编码块、预测块或变换块)的边界部分产生的失真的解块滤波处理。Here, for example, the filtering process is a deblocking filtering process that reduces distortion generated at boundary portions of blocks (encoding blocks, prediction blocks, or transform blocks).

帧缓冲器160构成为存储帧间预测部111中使用的参考帧。The frame buffer 160 is configured to store reference frames used in the inter prediction unit 111 .

此处,滤波处理后解码信号构成帧间预测部111中使用的参考帧。Here, the decoded signal after the filtering process constitutes a reference frame used in the inter prediction unit 111 .

(帧间预测部111)(Inter prediction unit 111 )

下面,参考图3对本实施方式的图像编码装置100的帧间预测部111进行说明。图3是示出本实施方式的图像编码装置100的帧间预测部111的功能块的一个例子的图。Next, the inter prediction unit 111 of the image coding apparatus 100 according to the present embodiment will be described with reference to FIG. 3 . FIG. 3 is a diagram showing an example of functional blocks of the inter prediction unit 111 of the image coding apparatus 100 according to the present embodiment.

如图3所示,帧间预测部111包括mv导出部111A、AMVR(Adaptive Motion VectorResolution,自适应运动矢量精度)部111B、mv细化部111B及预测信号生成部111D。As shown in FIG. 3 , the inter prediction unit 111 includes an mv derivation unit 111A, an AMVR (Adaptive Motion Vector Resolution) unit 111B, an mv refinement unit 111B, and a prediction signal generation unit 111D.

帧间预测部111是构成为基于运动矢量来生成对象块中包含的预测信号的预测部的一个例子。The inter prediction unit 111 is an example of a prediction unit configured to generate a prediction signal included in a target block based on a motion vector.

如图3所示,mv导出部111A构成为包括AMVP(Adaptive Motion VectorPrediction)部111A1及合并部111A2,且将来自帧缓冲器160的对象帧及参考帧作为输入来获取运动矢量。As shown in FIG. 3 , the mv derivation unit 111A includes an AMVP (Adaptive Motion Vector Prediction) unit 111A1 and a combining unit 111A2 , and acquires a motion vector using the target frame and reference frame from the frame buffer 160 as inputs.

AMVP部111A1构成为通过对象帧与参考帧的比较,来指定参考帧中包含的参考块,并搜索所指定的参考块的运动矢量。The AMVP unit 111A1 is configured to designate a reference block included in the reference frame by comparing the target frame with the reference frame, and to search for the motion vector of the designated reference block.

并且,对多个候补参考帧进行上述搜索处理,以确定对象块中用于预测的参考帧及运动矢量,并输出至后一阶段的预测信号生成部111D。Then, the above-described search process is performed on a plurality of candidate reference frames to identify reference frames and motion vectors for prediction in the target block, and output them to the prediction signal generation unit 111D in the subsequent stage.

对于一个块最多可以各使用两个参考帧及运动矢量。将对于一个块仅使用一组参考帧与运动矢量的情况称为“单向预测”,将使用两组参考帧与运动矢量的情况称为“双向预测”。在下文中,将第一组称为“L0”,将第二组称为“L1”。Up to two reference frames and motion vectors can each be used for a block. The case of using only one set of reference frames and motion vectors for one block is called "unidirectional prediction", and the case of using two sets of reference frames and motion vectors is called "bidirectional prediction". Hereinafter, the first group will be referred to as "L0", and the second group will be referred to as "L1".

此外,在将上述所确定运动矢量最终传输至解码装置时,为了削减编码量,AMVP部111A从根据相邻的已编码的运动矢量所导出的运动矢量预测子(mvp,motion vectorpredictor)的候补中,选择与该对象块的运动矢量的差分即运动矢量差分(mvd,motionvector difference)较小的mvp。In addition, in order to reduce the amount of coding when the motion vector identified above is finally transmitted to the decoding device, the AMVP unit 111A selects motion vector predictor (mvp, motion vector predictor) candidates from motion vector predictor (mvp, motion vector predictor) candidates derived from adjacent coded motion vectors , and select the mvp with the smaller motion vector difference (mvd, motion vector difference), which is the difference with the motion vector of the target block.

表示以此方式选择的mvp及mvd的索引及表示参考帧的索引(以下称为Refidx)由编码部140编码,并被传输至图像解码装置200。该处理通常被称为自适应运动矢量预测编码(AMVP,Adaptive Motion Vector Preidicion)。An index indicating the mvp and mvd selected in this way and an index indicating a reference frame (hereinafter referred to as Refidx) are encoded by the encoding unit 140 and transmitted to the image decoding device 200 . This process is generally referred to as Adaptive Motion Vector Prediction Coding (AMVP, Adaptive Motion Vector Prediction).

另外,关于上述运动矢量的搜索方法、参考帧及运动矢量的确定方法、mvp的选择方法、mvd的算出方法,可以采用已知的方法,因此,省略其详细说明。The above-mentioned search method for motion vector, method for determining reference frame and motion vector, method for selecting mvp, and method for calculating mvd may be known methods, and therefore detailed descriptions thereof will be omitted.

AMVR部111B具有改变由AMVP部111A算出的mvd的传输精度的AMVR(AdaptiveMotion Vector Resolution)的功能。The AMVR unit 111B has a function of AMVR (Adaptive Motion Vector Resolution) for changing the transmission accuracy of the mvd calculated by the AMVP unit 111A.

由于mvd是像上述那样根据对象块的运动矢量与mvp的和导出的,所以改变mvd的传输精度是指改变对象块的运动矢量本身的精度。Since mvd is derived from the sum of the motion vector of the target block and mvp as described above, changing the transmission accuracy of mvd means changing the accuracy of the motion vector itself of the target block.

在非专利文献1中,有三种基于AMVR的mvd的传输精度的变化。通常的mvd的传输精度为1/16像素精度,此时,运动矢量最终会参考1/16像素精度的位置,但在AMVR有效时,mvd的传输精度选自1/4像素精度、1/2像素精度、1像素精度(即整数像素精度)。In Non-Patent Document 1, there are three variations in the transmission accuracy of the AMVR-based mvd. Usually the transmission precision of mvd is 1/16 pixel precision. At this time, the motion vector will eventually refer to the position of 1/16 pixel precision, but when AMVR is valid, the transmission precision of mvd is selected from 1/4 pixel precision, 1/2 pixel precision Pixel precision, 1 pixel precision (ie integer pixel precision).

但是,当对象块被仿射时,mvd的传输精度选自1/4像素精度、1/16像素精度、1像素精度。此处,仿射是指非专利文献1的Affine。However, when the object block is affine, the transmission precision of mvd is selected from 1/4 pixel precision, 1/16 pixel precision, 1 pixel precision. Here, affine refers to Affine of Non-Patent Document 1.

此外,在非专利文献1中,为如下构成:只有在选择1/2像素精度作为上述mvd的传输精度时,由后一阶段的预测信号生成部111D选择与在选择除1/2像素精度以外的像素精度时所应用的内插滤波器不同的内插滤波器。详细内容将在下文叙述。In addition, in Non-Patent Document 1, only when 1/2 pixel accuracy is selected as the transmission accuracy of the mvd, the prediction signal generation unit 111D in the latter stage selects and selects other than the 1/2 pixel accuracy. The pixel precision when applying the interpolation filter differs from the interpolation filter. Details will be described below.

并且,当在AMVR部111B中判断出AMVR处理有效时,将表示AMVR有效的标志及表示通过AMVR将mvd修正为哪一个精度的索引传输至图像解码装置200。Then, when the AMVR unit 111B determines that the AMVR process is valid, a flag indicating that the AMVR is valid and an index indicating the precision to which the mvd is corrected by the AMVR are transmitted to the image decoding device 200 .

在合并部111A2中,不像AMVP部111A1那样搜索并导出对象块的运动信息,也不传输与相邻块的差分mvd,而是将对象帧及参考帧作为输入,将与对象块处于同一帧中的相邻块或与对象帧不同的帧中相同位置的块作为参考块,直接沿用该参考块的运动信息。该处理通常被称为合并编码(以下称为合并)。The merging unit 111A2 does not search and derive motion information of the target block like the AMVP unit 111A1 does, and does not transmit the difference mvd with the adjacent block, but takes the target frame and the reference frame as input, and the target block is in the same frame as the target block. The adjacent block in the frame or the block at the same position in the frame different from the target frame is used as the reference block, and the motion information of the reference block is directly used. This process is generally referred to as merge encoding (hereinafter referred to as merge).

当该对象块被合并时,首先创建针对该对象块的合并列表。合并列表是列举了多个参考帧与运动矢量的组合的列表。为各组合分配有索引(以下称为合并索引),仅对上述合并索引进行编码,并传输至图像解码装置200,代替单独对Refidx及运动矢量的信息进行编码。When the object block is merged, a merge list for the object block is first created. The merge list is a list listing the combinations of multiple reference frames and motion vectors. An index (hereinafter referred to as a merge index) is assigned to each combination, and only the above-mentioned merge index is encoded and transmitted to the image decoding apparatus 200 instead of separately encoding the Refidx and motion vector information.

此处,通过预先在图像编码装置100侧与图像解码装置200侧共用合并列表的创建方法,在图像解码装置200侧,可以仅根据合并索引信息,解码出Refidx及运动矢量的信息。合并列表的创建方法的详细内容将在下文叙述。Here, by sharing the merge list creation method on the image coding apparatus 100 side and the image decoding apparatus 200 side in advance, the image decoding apparatus 200 side can decode Refidx and motion vector information only from the merge index information. Details of the method of creating the merged list will be described later.

mv细化部111C构成为进行对从合并部111A2输出的运动矢量进行修正的细化处理。详细内容将在下文叙述。The mv thinning unit 111C is configured to perform thinning processing of correcting the motion vector output from the combining unit 111A2. Details will be described below.

预测信号生成部111D构成为将运动矢量作为输入,并输出MC预测图像信号,且包括滤波器判断部111D1及滤波器应用部111D2。The predicted signal generation unit 111D is configured to take a motion vector as an input and output an MC predicted image signal, and includes a filter determination unit 111D1 and a filter application unit 111D2.

滤波器判断部111D1基于运动矢量,判断是否应用内插滤波器及滤波器类型。详细内容将在下文叙述。The filter determination unit 111D1 determines whether to apply an interpolation filter and a filter type based on the motion vector. Details will be described below.

滤波器应用部111D2构成为当滤波器判断部111D1判断出内插滤波器有效时,根据所选择的内插滤波器、运动矢量及参考帧,生成预测信号。The filter application unit 111D2 is configured to generate a prediction signal based on the selected interpolation filter, motion vector, and reference frame when the filter determination unit 111D1 determines that the interpolation filter is valid.

当滤波器判断部111D1判断出内插滤波器无效时,不使用内插滤波器,且根据运动矢量及参考帧,生成预测信号。When the filter determination unit 111D1 determines that the interpolation filter is invalid, the interpolation filter is not used, and a prediction signal is generated based on the motion vector and the reference frame.

(图像解码装置200)(image decoding device 200 )

下面,参考图4对本实施方式的图像解码装置200进行说明。图4是示出本实施方式的图像解码装置200的功能块的一个例子的图。Next, the image decoding apparatus 200 according to the present embodiment will be described with reference to FIG. 4 . FIG. 4 is a diagram showing an example of functional blocks of the image decoding apparatus 200 according to the present embodiment.

如图4所示,图像解码装置200包括解码部210、逆变换及逆量化部220、加法器230、帧间预测部241、帧内预测部242、环路滤波处理部250及帧缓冲器260。As shown in FIG. 4 , the image decoding apparatus 200 includes a decoding unit 210 , an inverse transform and inverse quantization unit 220 , an adder 230 , an inter prediction unit 241 , an intra prediction unit 242 , a loop filter processing unit 250 , and a frame buffer 260 .

解码部210构成为对由图像编码装置100生成的编码数据进行解码,且对系数等级值进行解码。The decoding unit 210 is configured to decode the encoded data generated by the image encoding device 100 and to decode the coefficient level value.

此处,例如解码是顺序与由编码部140进行的熵编码相反的熵解码。Here, for example, the decoding is entropy decoding in the reverse order of the entropy encoding performed by the encoding unit 140 .

并且,解码部210也可以构成为通过编码数据的解码处理来获取控制数据。Furthermore, the decoding unit 210 may be configured to acquire the control data by decoding the encoded data.

另外,如上所述,控制数据可以包括编码块尺寸、预测块尺寸、变换块尺寸等尺寸数据。In addition, as described above, the control data may include size data such as encoding block size, prediction block size, transform block size, and the like.

逆变换及逆量化部220构成为进行从解码部210输出的系数等级值的逆变换处理。此处,逆变换及逆量化部220也可以构成为在逆变换处理之前进行系数等级值的逆量化。The inverse transform and inverse quantization unit 220 is configured to perform inverse transform processing of the coefficient level value output from the decoding unit 210 . Here, the inverse transform and inverse quantization unit 220 may be configured to perform inverse quantization of the coefficient level values before the inverse transform process.

此处,逆变换处理及逆量化是按照与由变换及量化部131进行的变换处理及量化相反的顺序进行。Here, inverse transform processing and inverse quantization are performed in the reverse order of the transform processing and quantization performed by the transform and quantization unit 131 .

加法器230构成为将预测信号与从逆变换及逆量化部220输出的预测残差信号相加来生成滤波处理前解码信号,并将滤波处理前解码信号输出至帧内预测部242及环路滤波处理部250。The adder 230 is configured to add the prediction signal and the prediction residual signal output from the inverse transform and inverse quantization unit 220 to generate a pre-filtering decoded signal, and output the pre-filtering decoded signal to the intra prediction unit 242 and the loop Filter processing unit 250 .

此处,滤波处理前解码信号构成帧内预测部242中使用的参考块。Here, the decoded signal before the filtering process constitutes a reference block used in the intra prediction unit 242 .

与帧间预测部111同样地,帧间预测部241构成为通过帧间预测(interframeprediction)来生成预测信号。Like the inter-frame prediction unit 111 , the inter-frame prediction unit 241 is configured to generate a prediction signal by inter-frame prediction (interframe prediction).

具体来说,帧间预测部241构成为基于从编码数据中解码出的运动矢量及参考帧中包含的参考信号,针对每个预测块生成预测信号。帧间预测部241构成为将预测信号输出至加法器230。Specifically, the inter prediction unit 241 is configured to generate a prediction signal for each prediction block based on the motion vector decoded from the encoded data and the reference signal included in the reference frame. The inter prediction unit 241 is configured to output the prediction signal to the adder 230 .

与帧内预测部112同样地,帧内预测部242构成为通过帧内预测(intraframeprediction)来生成预测信号。Like the intra-frame prediction unit 112, the intra-frame prediction unit 242 is configured to generate a prediction signal by intra-frame prediction (intraframe prediction).

具体来说,帧内预测部242构成为指定对象帧中包含的参考块,并基于所指定的参考块,针对每个预测块生成预测信号。帧内预测部242构成为将预测信号输出至加法器230。Specifically, the intra prediction unit 242 is configured to designate a reference block included in the target frame, and to generate a prediction signal for each prediction block based on the designated reference block. The intra prediction unit 242 is configured to output the prediction signal to the adder 230 .

与环路滤波处理部150同样地,环路滤波处理部250构成为对从加法器230输出的滤波处理前解码信号进行滤波处理,且将滤波处理后解码信号输出至帧缓冲器260。Like the loop filter processing unit 150 , the loop filter processing unit 250 is configured to perform filtering processing on the pre-filtered decoded signal output from the adder 230 and output the post-filtered decoded signal to the frame buffer 260 .

此处,例如滤波处理是减少在块(编码块、预测块、变换块或将它们分割所得的子块)的边界部分产生的失真的解块滤波处理。Here, the filtering process is, for example, a deblocking filtering process that reduces distortion generated at boundary portions of blocks (encoding blocks, prediction blocks, transform blocks, or sub-blocks obtained by dividing them).

与帧缓冲器160同样地,帧缓冲器260构成为存储帧间预测部241中使用的参考帧。Like the frame buffer 160 , the frame buffer 260 is configured to store reference frames used by the inter prediction unit 241 .

此处,滤波处理后解码信号构成帧间预测部241中使用的参考帧。Here, the decoded signal after the filtering process constitutes a reference frame used in the inter prediction unit 241 .

(帧间预测部241)(Inter prediction unit 241)

下面,参考图5对本实施方式的帧间预测部241进行说明。图5是示出本实施方式的帧间预测部241的功能块的一个例子的图。Next, the inter prediction unit 241 of the present embodiment will be described with reference to FIG. 5 . FIG. 5 is a diagram showing an example of functional blocks of the inter prediction unit 241 according to the present embodiment.

如图5所示,帧间预测部241包括mv解码部241A、mv细化部241B及预测信号生成部111C。As shown in FIG. 5 , the inter prediction unit 241 includes an mv decoding unit 241A, an mv refinement unit 241B, and a prediction signal generation unit 111C.

帧间预测部241是构成为基于运动矢量来生成预测块中包含的预测信号的预测部的一个例子。The inter prediction unit 241 is an example of a prediction unit configured to generate a prediction signal included in a prediction block based on a motion vector.

mv解码部241A构成为包括AMVP部241A1及合并部241A2,且通过从帧缓冲器260输入的对象帧及参考帧、以及从图像编码装置100接收到的控制数据的解码,来获取运动矢量。The mv decoding unit 241A includes an AMVP unit 241A1 and a combining unit 241A2, and obtains a motion vector by decoding the target frame and reference frame input from the frame buffer 260 and control data received from the image coding device 100 .

AMVP部241A1构成为接收对象帧及参考帧、以及来自图像编码装置100的表示mvp及mvd的索引、Refidx、来自AMVR部111B的表示mvd的传输精度的索引,以对运动矢量进行解码。关于运动矢量的解码方法,可以采用已知的方法,因此,省略其详细说明。The AMVP unit 241A1 is configured to receive the target frame and the reference frame, the indices representing mvp and mvd, Refidx from the image coding apparatus 100 , and the index representing the transmission accuracy of mvd from the AMVR unit 111B to decode the motion vector. As for the decoding method of the motion vector, a known method can be adopted, and therefore, a detailed description thereof is omitted.

合并部241A2构成为从图像编码装置100接收合并索引,以对运动矢量进行解码。The merging unit 241A2 is configured to receive the merging index from the image encoding device 100 to decode the motion vector.

具体来说,合并部241A2构成为通过与图像编码装置100相同的方法构建合并列表,并从所构建的合并列表中获取与接收到的合并索引对应的运动矢量。合并列表的构建方法的详细内容将在下文叙述。Specifically, the merging unit 241A2 is configured to construct a merging list by the same method as that of the image coding apparatus 100, and acquire a motion vector corresponding to the received merging index from the constructed merging list. Details of the method of constructing the merged list will be described later.

与细化部111C同样地,mv细化部241B构成为执行对运动矢量进行修正的细化处理。Like the thinning unit 111C, the mv thinning unit 241B is configured to execute a thinning process for correcting a motion vector.

预测信号生成部241C构成为包括滤波器判定部241C1及滤波器应用部241C2,且与预测信号生成部111C同样地,基于运动矢量来生成预测信号。The predicted signal generation unit 241C is configured to include a filter determination unit 241C1 and a filter application unit 241C2, and similarly to the predicted signal generation unit 111C, generates a predicted signal based on a motion vector.

另外,图像解码装置200的滤波器判断部241C1是与图像编码装置100的滤波器判断部111D1完全相同的构成,因此,在本实施方式中,在下文以滤波器判断部111D1的动作为代表进行说明。In addition, the filter determination unit 241C1 of the image decoding device 200 has exactly the same configuration as the filter determination unit 111D1 of the image encoding device 100. Therefore, in the present embodiment, the operation of the filter determination unit 111D1 is hereinafter performed as a representative. illustrate.

(内插滤波器的判断处理)(judgment processing of interpolation filter)

下面,参考图6,对本实施方式的滤波器判断部111D1/241C1中的是否应用内插滤波器及滤波器类型的判断处理进行说明。Next, referring to FIG. 6 , the process of determining whether to apply an interpolation filter and a filter type in the filter determination unit 111D1/241C1 of the present embodiment will be described.

图6是示出本实施方式的滤波器判断部111D1中的是否应用内插滤波器及滤波器类型的判断处理顺序的一个例子的流程图。FIG. 6 is a flowchart showing an example of a processing procedure for determining whether to apply an interpolation filter and a filter type in the filter determining unit 111D1 of the present embodiment.

如图6所示,在步骤S6-1中,滤波器判断部111D1判断mv的参考位置是否是小数像素位置。当mv的参考位置是小数像素位置时,本处理进入步骤S6-2,当mv的参考位置不是小数像素位置时,即,当mv的参考位置是整数像素值位置时,本处理进入步骤S6-3。As shown in FIG. 6, in step S6-1, the filter determination part 111D1 determines whether the reference position of mv is a decimal pixel position. When the reference position of mv is a decimal pixel position, the process proceeds to step S6-2, and when the reference position of mv is not a decimal pixel position, that is, when the reference position of mv is an integer pixel value position, the process proceeds to step S6- 3.

在步骤S6-2中,滤波器判断部111D1判断为应用内插滤波器,本处理进入步骤S6-4。In step S6-2, the filter determination unit 111D1 determines that the interpolation filter is applied, and the process proceeds to step S6-4.

在步骤S6-3中,滤波器判断部111D1判断为不应用内插滤波器,结束本处理。In step S6-3, the filter determination unit 111D1 determines that the interpolation filter is not to be applied, and ends this process.

在步骤S6-4中,滤波器判断部111D1判断下述半像素索引(hpelIfIdx)是否无效、即是否为“0”。当hpelIfIdx为“0”时,本处理进入步骤S6-5,当hpelIfIdx有效、即不为“0”时,本处理进入步骤S6-6。In step S6-4, the filter determination unit 111D1 determines whether the following half pixel index (hpelIfIdx) is invalid, that is, whether it is "0". When hpelIfIdx is "0", the process proceeds to step S6-5, and when hpelIfIdx is valid, that is, not "0", the process proceeds to step S6-6.

在步骤S6-5中,滤波器判断部111D1判断为使用HEVC滤波器作为内插滤波器,结束本处理。In step S6-5, the filter determination unit 111D1 determines that the HEVC filter is to be used as the interpolation filter, and ends this process.

此处,HEVC滤波器是指与非专利文献2相同的8抽头的线性内插滤波器。Here, the HEVC filter refers to the same 8-tap linear interpolation filter as in Non-Patent Document 2.

在步骤S6-6中,滤波器判断部111D1判断为使用平滑化滤波器作为内插滤波器。In step S6-6, the filter determination unit 111D1 determines to use a smoothing filter as an interpolation filter.

此处,例如平滑化滤波器可以使用非专利文献1中采用的6抽头的高斯滤波器。并且,也可以根据hpelIfIdx所示的值,设定使用多个滤波器作为内插滤波器。Here, for example, the 6-tap Gaussian filter employed in Non-Patent Document 1 can be used as the smoothing filter. Furthermore, it is also possible to set a plurality of filters to be used as interpolation filters according to the value indicated by hpelIfIdx.

如此一来,在mv的参考位置是小数像素位置时,可以基于hpelIfIdx,在两种以上内插滤波器间自适应地切换使用,因此,能够根据图像特性来选择要使用的内插滤波器,结果可以期待编码性能提高的效果。In this way, when the reference position of mv is a fractional pixel position, it is possible to adaptively switch between two or more interpolation filters based on hpelIfIdx. Therefore, the interpolation filter to be used can be selected according to the image characteristics, As a result, the effect of improving the encoding performance can be expected.

(半像素索引(hpelIfIdx)的设定处理)(Setting process of half pixel index (hpelIfIdx))

下面,参考图7对本实施方式的半像素索引(hpelIfIdx)的判断处理进行说明。Next, the determination process of the half pixel index (hpelIfIdx) according to the present embodiment will be described with reference to FIG. 7 .

图7是示出本实施方式的滤波器判断部111D1中的hpelIfIdx的判断处理顺序的一个例子的流程图。FIG. 7 is a flowchart showing an example of the procedure of determination processing of hpelIfIdx in the filter determination unit 111D1 of the present embodiment.

如上所述,hpelIfIdx与内插滤波器类型的判断有关,当hpelIfIdx为“0”时,即无效时,使用与非专利文献2相同的内插滤波器。另一方面,当hpelIfIdx不为“0”时,即有效时,使用平滑化滤波器。As described above, hpelIfIdx is related to the determination of the interpolation filter type, and when hpelIfIdx is "0", that is, invalid, the same interpolation filter as in Non-Patent Document 2 is used. On the other hand, when hpelIfIdx is not "0", that is, when it is valid, the smoothing filter is used.

当对象块被合并时,hpelIfIdx从参考块同时获取运动矢量及RefIdx,且与合并索引相对应。When the object block is merged, hpelIfIdx simultaneously obtains the motion vector and RefIdx from the reference block, and corresponds to the merge index.

另一方面,当对象块不是合并模式,且通过AMVP对运动矢量进行解码时,根据上述是否应用AMVR及特定条件,判断hpelIfIdx的值。On the other hand, when the target block is not in merge mode and the motion vector is decoded by AMVP, the value of hpelIfIdx is determined based on whether or not AMVR is applied and the specific conditions described above.

如图7所示,在步骤S7-1中,滤波器判断部111D1判断AMVR是否有效。在判断时,例如,也可以与非专利文献1同样地,通过对表示是否应用AMVR的标志(amvr_flag)进行解码来判断。As shown in FIG. 7, in step S7-1, the filter determination part 111D1 determines whether AMVR is valid. At the time of determination, for example, similarly to Non-Patent Document 1, it may be determined by decoding a flag (amvr_flag) indicating whether or not AMVR is applied.

当在步骤S7-1中判断出AMVR有效时,本处理进入步骤S7-2,当判断出AMVR无效时,本处理进入步骤S7-3。When it is determined in step S7-1 that the AMVR is valid, the process proceeds to step S7-2, and when it is determined that the AMVR is invalid, the process proceeds to step S7-3.

在步骤S7-2中,滤波器判断部111D1根据特定条件1,来判断hpelIfIdx的值是否为“0”。In step S7 - 2 , the filter determination unit 111D1 determines whether or not the value of hpelIfIdx is “0” based on the specific condition 1 .

当在步骤S7-2中判断出满足特定条件1时,本处理进入步骤S7-4,当判断出不满足特定条件1时,本处理进入步骤S7-5。When it is determined in step S7-2 that the specific condition 1 is satisfied, the process proceeds to step S7-4, and when it is determined that the specific condition 1 is not satisfied, the process proceeds to step S7-5.

此处,在步骤S7-2的特定条件1中,可以对表示AMVR的传输精度的索引(amvr_precision_idx)进行解码来判断,当AMVR的传输精度为1/2像素精度时,判断为满足特定条件1,否则,判断为不满足特定条件1。Here, in the specific condition 1 of step S7-2, it can be determined by decoding the index (amvr_precision_idx) indicating the transmission precision of the AMVR, and when the transmission precision of the AMVR is 1/2 pixel precision, it is determined that the specific condition 1 is satisfied , otherwise, it is judged that the specific condition 1 is not met.

并且,在步骤S7-2的特定条件1中,也可以通过对象块是否被仿射来判断,当对象块被仿射时,判断为不满足特定条件1,当对象块未被仿射时,且当amvr_precision_idx表示mvd的传输精度为1/2像素精度时,判断为满足特定条件1。In addition, in the specific condition 1 of step S7-2, it can also be judged by whether the target block is affine, when the target block is affine, it is judged that the specific condition 1 is not satisfied, and when the target block is not affine, And when amvr_precision_idx indicates that the transmission precision of mvd is 1/2 pixel precision, it is determined that the specific condition 1 is satisfied.

此处,仿射是指非专利文献1中采用的Affine,在本发明中,可以采用已知的方法,因此省略其说明。Here, affine refers to Affine used in Non-Patent Document 1, and since a known method can be used in the present invention, the description thereof is omitted.

并且,在步骤S7-2的特定条件1中,也可以通过对象块是否为IBC来判断,当对象块为IBC时,判断为不满足特定条件1,当对象块不是IBC时,且当amvr_precision_idx表示mvd的传输精度为1/2像素精度时,判断为满足特定条件1。In addition, in the specific condition 1 of step S7-2, it can also be judged by whether the target block is an IBC, when the target block is an IBC, it is judged that the specific condition 1 is not satisfied, when the target block is not an IBC, and when amvr_precision_idx indicates When the transmission accuracy of mvd is 1/2 pixel accuracy, it is determined that the specific condition 1 is satisfied.

此处,IBC是指非专利文献1中采用的IBC(Intra_Block_Copy,帧内块复制),在本发明中,可以采用已知的方法,因此省略其说明。Here, the IBC refers to the IBC (Intra_Block_Copy) used in Non-Patent Document 1, and a known method can be used in the present invention, so the description thereof is omitted.

在步骤S7-3中,滤波器判断部111D1判断出hpelIfIdx为“0”,结束本处理。In step S7-3, the filter determination unit 111D1 determines that hpelIfIdx is "0", and ends this process.

在步骤S7-4中,滤波器判断部111D1判断出hpelIfIdx为“1”,结束本处理。In step S7-4, the filter determination unit 111D1 determines that hpelIfIdx is "1", and ends this process.

在步骤S7-5中,滤波器判断部111D1判断出hpelIfIdx为“0”,结束本处理。In step S7-5, the filter determination unit 111D1 determines that hpelIfIdx is "0", and ends the present process.

另外,至此为止,以流程图对hpelIfIdx的判断处理进行了说明,但也可以像图8所示的非专利文献1的判断处理那样,滤波器判断部111D1基于amvr_flag、amvr_precision_idx、inter_Affine_flag的解码结果及对象块是否为IBC,来确定Avmrshift值,并根据该AMVR_shift值来判断hpelIfIdx的值。In addition, the determination process of hpelIfIdx has been described with the flowchart so far, but the filter determination unit 111D1 may be based on the decoding results of amvr_flag, amvr_precision_idx, inter_Affine_flag, and Whether the object block is an IBC, the Avmrshift value is determined, and the value of hpelIfIdx is determined according to the AMVR_shift value.

(mv细化部)(mv refinement section)

下面,参考图9对本实施方式的mv细化部241B进行说明。另外,由于编码装置的mv细化部111C是与解码装置的mv细化部241B完全相同的构成,所以在本实施方式中,以mv细化部241B为代表进行说明。Next, the mv refinement unit 241B of the present embodiment will be described with reference to FIG. 9 . In addition, since the mv refinement unit 111C of the encoding apparatus has exactly the same configuration as the mv refinement unit 241B of the decoding apparatus, in this embodiment, the mv refinement unit 241B will be described as a representative.

图9是示出本实施方式的mv细化部241B的功能块的一个例子的图。FIG. 9 is a diagram showing an example of functional blocks of the mv refinement unit 241B according to the present embodiment.

如图9所示,mv细化部241B包括MMVD部241B1及DMVR部241B2。As shown in FIG. 9 , the mv refinement unit 241B includes an MMVD unit 241B1 and a DMVR unit 241B2.

在MMVD部241B1及DMVR部241B2中,具体来说,利用非专利文献1中采用的MMVD(Merge mode with MVD)及DMVR(Decoder side Motion Vector Refinement)对运动矢量进行细化。Specifically, the MMVD unit 241B1 and the DMVR unit 241B2 refine the motion vector using MMVD (Merge mode with MVD) and DMVR (Decoder side Motion Vector Refinement) adopted in Non-Patent Document 1.

具体来说,MMVD部241B1构成为以从合并部111A2输出的运动矢量的参考位置为基准,如图9所示,通过距离及方向(垂直及水平)来设定参考位置的修正范围。Specifically, the MMVD unit 241B1 is configured to set the correction range of the reference position by the distance and direction (vertical and horizontal) as shown in FIG. 9 based on the reference position of the motion vector output from the combining unit 111A2.

MMVD部241B1构成为进行如下细化处理:从修正范围中指定特定成本最小的修正位置作为修正距离,并基于修正参考位置,对运动矢量进行修正。The MMVD unit 241B1 is configured to perform a refinement process by specifying a correction position with the smallest specific cost from the correction range as a correction distance, and correcting the motion vector based on the correction reference position.

并且,DMVR部241B2构成为进行如下细化处理:以由从合并部111A2输出的运动矢量指定的参考位置为基准,设定搜索范围,从搜索范围中指定特定成本最小的修正参考位置,并基于修正参考位置,对运动矢量进行修正。Then, the DMVR unit 241B2 is configured to perform refinement processing by setting a search range with reference to the reference position specified by the motion vector output from the combining unit 111A2, specifying a correction reference position with the smallest specific cost from the search range, and based on Correct the reference position and correct the motion vector.

此处,在mv细化部241B中,也判断是否对对象块应用MMVD、是否应用DMVR,在本发明中,该判断处理可以使用非专利文献1所述的已知的方法,因此省略其说明。Here, the mv refinement unit 241B also determines whether or not to apply MMVD to the target block and whether to apply DMVR. In the present invention, the known method described in Non-Patent Document 1 can be used for this determination process, so the description thereof is omitted. .

另外,当MMVD及DMVR均无效时,从合并部111A2输出的运动矢量不加修正地直接输出至后一阶段的预测信号生成部241C。In addition, when both MMVD and DMVR are invalid, the motion vector output from the combining unit 111A2 is directly output to the prediction signal generating unit 241C in the subsequent stage without correction.

(合并列表构建方法)(merge list construction method)

下面,参考图10对本实施方式的合并列表构建处理进行说明。图10是示出本实施方式的合并列表构建处理的一个例子的流程图。Next, the merge list construction process of the present embodiment will be described with reference to FIG. 10 . FIG. 10 is a flowchart showing an example of the merge list construction process of the present embodiment.

如图10所示,与非专利文献1同样地,本发明的合并列表构建处理共由五个合并列表构建处理构成。As shown in FIG. 10 , as in Non-Patent Document 1, the merged list construction process of the present invention is composed of five merged list construction processes in total.

具体来说,由步骤S10-1的空间合并、步骤S10-2的时间合并、步骤S10-3的历史合并、步骤S10-4的成对平均合并、及步骤S10-5的零合并这五个合并列表构建处理构成。各个合并列表构建处理将在下文叙述。Specifically, there are five types of spatial merging in step S10-1, temporal merging in step S10-2, historical merging in step S10-3, pairwise average merging in step S10-4, and zero merging in step S10-5. Merge list construction processing composition. The respective merged list construction processes will be described later.

图11是示出本实施方式的通过合并列表构建处理所生成的合并列表的一个例子的图。FIG. 11 is a diagram showing an example of a merged list generated by the merged list construction process according to the present embodiment.

如上所述,合并列表是指登记有与合并索引对应的运动矢量、Refidx、hepelIfIdx的列表。As described above, the merge list refers to a list in which the motion vector, Refidx, and hepelIfIdx corresponding to the merge index are registered.

此处,合并索引的最大个数在非专利文献1中是设定为“5”,也可以根据设计者的意图自由设定。Here, the maximum number of merge indexes is set to "5" in Non-Patent Document 1, but can be freely set according to the intention of the designer.

并且,图11中的mvL0、mvL1、RefIdxL0、RefIdxL1分别表示参考图像列表L0、L1的运动矢量及参考图像索引。In addition, mvL0, mvL1, RefIdxL0, and RefIdxL1 in FIG. 11 represent motion vectors and reference image indices of the reference image lists L0 and L1, respectively.

此处,参考图像列表L0、L1表示登记有参考帧的列表,根据RefIdx,指定其参考帧。Here, the reference picture lists L0 and L1 represent lists in which reference frames are registered, and the reference frames are specified based on RefIdx.

另外,在图11所示的合并列表中,示出了L0及L1这两者的运动矢量及参考图像索引,但根据参考块的不同,有时为单向预测。在该情况下,在该合并列表中登记单向的运动矢量及参考图像索引。并且,当原本在参考块中就不存在运动矢量时,跳过针对该参考块的合并列表构建处理。In addition, the merge list shown in FIG. 11 shows motion vectors and reference image indices of both L0 and L1, but may be unidirectional prediction depending on the reference block. In this case, the unidirectional motion vector and reference image index are registered in the merge list. Also, when the motion vector does not originally exist in the reference block, the merge list construction process for the reference block is skipped.

(空间合并)(space merge)

图12是示出空间合并的图。空间合并是从与对象块存在于同一帧中的相邻块中将mv、RefIdx、hpelIfIdx沿用下来的技术。FIG. 12 is a diagram illustrating spatial merging. Spatial merging is a technique of inheriting mv, RefIdx, and hpelIfIdx from adjacent blocks existing in the same frame as the target block.

具体来说,从处于如图12所示的位置关系的相邻块中,将上述mv、Refidx、hpelfIdx沿用下来,其处理顺序也可以与非专利文献1同样地,为如图12所示的顺序。Specifically, the above-mentioned mv, Refidx, and hpelfIdx are used from the adjacent blocks in the positional relationship as shown in FIG. 12 , and the processing order may be as shown in FIG. 12 , as in Non-Patent Document 1. order.

另外,在合并列表处理中,按照上述处理顺序将参数登记在合并列表中,但存在如下检查机制:相同的运动矢量及参考图像索引不会被登记在合并列表中。将其称为pruning(裁剪)处理。In addition, in the merge list processing, parameters are registered in the merge list in the above-described processing order, but there is a checking mechanism such that the same motion vector and reference image index are not registered in the merge list. This is called pruning (cropping) processing.

pruning处理的存在理由在于,增加登记在合并列表中的运动矢量及参考图像索引的变化,从图像编码装置100的角度来看,可以根据图像特性选择特定成本最小的运动矢量,在图像解码装置200中,可以基于该所选择的运动矢量及参考图像索引,生成预测精度较高的预测信号,结果可以期待编码性能提高的效果。The reason for the existence of the pruning process is to increase the changes of the motion vectors registered in the merge list and the reference image index. From the perspective of the image encoding apparatus 100, the motion vector with the smallest specific cost can be selected according to the image characteristics. In the image decoding apparatus 200 , a prediction signal with high prediction accuracy can be generated based on the selected motion vector and the reference image index, and as a result, the effect of improving the encoding performance can be expected.

在空间合并中,例如为如下构成:若登记相邻块A1,则对于处于下一个处理顺序的相邻块B1,确认与针对相邻块A1所登记的运动矢量及参考图像索引的同一性,若确认到同一性,则相邻块B1的运动矢量及参考图像索引不会被登记在合并列表中。In the spatial merging, for example, when the adjacent block A 1 is registered, the adjacent block B 1 in the next processing order is confirmed to be the same as the motion vector and the reference image index registered for the adjacent block A 1 . If the identity is confirmed, the motion vector and reference image index of the adjacent block B1 will not be registered in the merge list.

另外,在非专利文献1中,对于相邻块B0、相邻块A0、相邻块B2,除了检查与已登记在合并列表中的运动矢量及参考图像索引的同一性以外,还确认对象块是否为三角合并。In addition, in Non-Patent Document 1, for the adjacent block B 0 , the adjacent block A 0 , and the adjacent block B 2 , in addition to checking the identity with the motion vector and the reference image index registered in the merge list, the Check whether the object block is a triangle merge.

在本实施方式中,也可以将该三角合并的判断追加在pruning处理中,并且,作为三角合并,可以采取已知的方法,因此省略其说明。In the present embodiment, the determination of the triangle merge may be added to the pruning process, and a known method can be adopted as the triangle merge, so the description thereof will be omitted.

并且,在非专利文献1中,将空间合并的合并索引的最大可登记数设定为“4”,关于相邻块B2,当通过至此为止的空间合并处理已登记有四个合并索引时,跳过B2的处理。In addition, in Non-Patent Document 1, the maximum number of merging indexes that can be registered for spatial merging is set to "4", and the adjacent block B 2 has four merging indexes registered by the spatial merging processing so far. , skip the processing of B2.

在本实施方式中,也可以与非专利文献1同样地,根据现有的合并索引登记数,对相邻块B2的处理进行判断。In the present embodiment, similarly to Non-Patent Document 1, it is possible to determine the processing of the adjacent block B2 based on the number of existing merge index registrations.

(时间合并)(time merge)

图13是示出时间合并的图。时间合并是如下技术:将与对象块存在于不同的帧中但位于同一位置的左下方的相邻块(图13的C1)或位于同一位置的块(图13的C0)指定为参考块,并沿用运动矢量及参考图像索引。FIG. 13 is a diagram showing time merging. Temporal merging is a technique of specifying as a reference a lower left adjacent block (C 1 in FIG. 13 ) or a co-located block (C 0 in FIG. 13 ) that exists in a different frame from the target block but is co-located block, and inherits the motion vector and reference picture index.

该时间合并列表的合并索引在合并列表中的最大可登记数在非专利文献1中为“1”,在本实施方式中,也可以同样设定最大可登记数。In Non-Patent Document 1, the maximum registrable number of the merging indexes of the time merging list in the merging list is "1", and in the present embodiment, the maximum registrable number may be similarly set.

并且,时间合并中所沿用的运动矢量具有被缩放的特征,图14是示出该缩放处理的图。Also, the motion vector used for temporal integration has the feature of being scaled, and FIG. 14 is a diagram showing the scaling process.

具体来说,如图14所示,基于对象块的参考帧与对象帧所在的帧的距离tb、及参考块的参考帧与参考块的参考帧的距离td,以如下方式缩放参考块的mv。Specifically, as shown in FIG. 14 , based on the distance tb between the reference frame of the target block and the frame where the target frame is located, and the distance td between the reference frame of the reference block and the reference frame of the reference block, the mv of the reference block is scaled as follows .

mv’=(td/tb)×mvmv'=(td/tb)×mv

在时间合并中,为如下构成:该被缩放的mv’作为与合并索引对应的运动矢量被登记在合并索引中。In temporal merging, the scaled mv' is registered in the merging index as a motion vector corresponding to the merging index.

(历史合并)(Historical merge)

图15是示出历史合并的图。历史合并是如下技术:预先将在对象块之前完成编码的帧间预测块所具有的运动矢量、参考图像索引、半像素索引另行存储在被称为历史合并表的存储区域中,当合并列表在前一阶段的空间合并处理、时间合并处理中未被填满时,将登记在该历史合并表中的合并索引登记在合并列表中。FIG. 15 is a diagram showing history merging. History merging is a technique in which the motion vector, reference image index, and half-pixel index of the inter-frame prediction block that has been coded before the target block are separately stored in a storage area called the history merging table. If the space merging process and the time merging process in the previous stage are not full, the merge index registered in the history merge table is registered in the merge list.

图15是示出历史合并表构建处理的一个例子的图,为如下构成:根据历史合并索引,将与之前完成编码的块对应的运动矢量、参考图像索引、半像素索引登记在历史合并表中。FIG. 15 is a diagram showing an example of a history merge table construction process, which is a configuration in which a motion vector corresponding to a previously coded block, a reference picture index, and a half-pixel index are registered in the history merge table based on the history merge index. .

该历史合并表的历史合并索引的最大登记数在非专利文献1中是最大设定为“6”,也可以根据设计者的意图自由设定。In Non-Patent Document 1, the maximum number of registrations of the history merge index in the history merge table is set to "6" at the maximum, and can be freely set according to the intention of the designer.

并且,该历史合并表中的历史合并索引的登记处理为FIFO处理,为如下构成:每当历史合并表被填满,而追加新的历史合并表时,都会删除最后登记的历史合并索引。In addition, the registration process of the history merge index in the history merge table is a FIFO process, and is configured as follows: every time the history merge table is filled and a new history merge table is added, the last registered history merge index is deleted.

并且,也可以与非专利文献1同样地,若对象块跨越编码树块(CTU,Coding TreeBlock),则对登记在历史合并表中的历史合并索引进行初始化。Furthermore, as in Non-Patent Document 1, when the target block spans a Coding Tree Block (CTU, Coding TreeBlock), the history merge index registered in the history merge table may be initialized.

(成对平均合并)(Pairwise Average Merged)

图16是示出通过成对平均合并算出的新的运动矢量与半像素索引的组合的图。FIG. 16 is a diagram showing a combination of a new motion vector and half-pixel index calculated by pairwise average merging.

成对平均合并是如下技术:使用与已登记在合并列表中的两组合并索引对应的运动矢量、参考图像索引、半像素索引,生成新的运动矢量、参考图像索引、半像素索引。Pairwise average merging is a technique of generating a new motion vector, reference image index, half-pixel index using motion vectors, reference image indices, half-pixel indices corresponding to the two sets of merge indices already registered in the merge list.

关于用于成对平均合并的两组合并索引,可以与非专利文献1同样地,固定利用登记在合并列表中的合并索引的第0个及第1个,也可以根据设计者的意图,自由设定为另两组的组合。Regarding the two sets of merge indexes used for pairwise average merge, as in Non-Patent Document 1, the 0th and 1st merge indexes registered in the merge list may be used fixedly, or they may be freely used according to the intention of the designer. Set as a combination of the other two groups.

如图16所示,成对平均合并中的新运动矢量的生成方法是对与合并列表的两组合并索引对应的运动矢量取平均值而生成。As shown in FIG. 16 , the method for generating a new motion vector in pairwise average merging is to generate an average value of motion vectors corresponding to two sets of merge indices in the merge list.

具体来说,例如,当与两组合并索引对应的运动矢量分别为两个时(即,为双向预测时),根据L0及L1方向的运动矢量mvL0P0/mvL1P0及mvL0P1/mvL1P1,分别以如下方式独立地算出成对平均合并的运动矢量mvL0Avg及mvL1Avg。Specifically, for example, when there are two motion vectors corresponding to the two sets of merge indices (ie, bidirectional prediction), according to the motion vectors mvL0P 0 /mvL1P 0 and mvL0P 1 /mvL1P 1 in the L0 and L1 directions, The pairwise average combined motion vectors mvL0Avg and mvL1Avg are independently calculated as follows.

mvL0Avg=(mvL0P0+mvL0P1)/2mvL0Avg=(mvL0P 0 +mvL0P 1 )/2

mvL1Avg=(mvL1P0+mvL1P1)/2mvL1Avg=(mvL1P 0 +mvL1P 1 )/2

此处,当mvL0P0/mvL1P0或mvL0P1/mvL1P1中的一方不存在时,将不存在的运动矢量除外,进行上述计算。Here, when one of mvL0P 0 /mvL1P 0 or mvL0P 1 /mvL1P 1 does not exist, the above calculation is performed excluding the motion vector that does not exist.

此时,在非专利文献1中,规定始终使用与合并索引P0相关联的参考图像索引RefIdxL0P0及RefIdxL1P0,作为与成对平均合并索引相关联的参考图像索引。At this time, in Non-Patent Document 1, it is stipulated that the reference picture indexes RefIdxL0P 0 and RefIdxL1P 0 associated with the merge index P 0 are always used as the reference picture indexes associated with the pairwise average merge index.

并且,如图17(a)及图17(b)所示,通过成对平均合并生成的新半像素索引hpelIfIdxAvg是基于与已登记在合并列表中的两组合并索引对应的两组半像素索引hpelIfIdxP0及hpelIfIdxP1来设定。Also, as shown in FIGS. 17( a ) and 17 ( b ), the new half-pixel index hpelIfIdxAvg generated by the pairwise average merging is based on the two sets of half-pixel indices corresponding to the two sets of merge indices registered in the merge list. hpelIfIdxP 0 and hpelIfIdxP 1 are set.

具体来说,在步骤S17-1中,判断hpelIfIdxP0与hpelIfIdxP1是否相同。当相同时,本处理进入步骤S17-2,当不相同时,本处理进入步骤S17-3。Specifically, in step S17-1, it is determined whether hpelIfIdxP 0 and hpelIfIdxP 1 are the same. When they are the same, the process proceeds to step S17-2, and when they are not the same, the process proceeds to step S17-3.

在步骤S17-2中,将hpelIfIdxAvg设定为hpelIfIdxP0In step S17-2, hpelIfIdxAvg is set to hpelIfIdxP 0 .

在步骤S17-3中,将hpelIfIdxAvg设定为无效即“0”。In step S17-3, hpelIfIdxAvg is set to "0" which is invalid.

此处,当hpelIfIdxP0及hpelIfIdxP1可取的值为“0”或“1”时,也可以将图17(a)所示的步骤S17-1及步骤S17-3的处理替换为图17(b)的步骤S17-4至步骤S17-6的处理。Here, when the possible values of hpelIfIdxP 0 and hpelIfIdxP 1 are "0" or "1", the processing of step S17-1 and step S17-3 shown in Fig. 17(a) may be replaced with Fig. 17(b) ) of steps S17-4 to S17-6.

(时间合并中的半像素索引的导入)(Import of half-pixel index in temporal binning)

下面,参考图18对本实施方式的时间合并中的半像素索引的导入进行说明。图18是表示本实施方式的合并列表构建例的图。Next, the introduction of the half-pixel index in the temporal binning of the present embodiment will be described with reference to FIG. 18 . FIG. 18 is a diagram showing an example of constructing a merge list according to the present embodiment.

在非专利文献1中,当在合并列表中登记有时间合并的合并索引时,与该合并索引对应的半像素索引始终设定为“0”。因此,对于时间合并,在非专利文献1中,不使用平滑化滤波器,而是在运动矢量参考小数像素精度位置时,始终使用HEVC滤波器。In Non-Patent Document 1, when a merging index for temporal merging is registered in the merging list, the half-pixel index corresponding to the merging index is always set to "0". Therefore, for temporal combining, in Non-Patent Document 1, the smoothing filter is not used, but the HEVC filter is always used when the motion vector refers to a fractional pixel precision position.

因此,在本实施方式中,并非将该时间合并的半像素索引始终设定为“0”,而是直接沿用参考块的半像素索引,并登记在合并列表中。Therefore, in this embodiment, the half-pixel index of the temporal integration is not always set to "0", but the half-pixel index of the reference block is directly used and registered in the integration list.

由此,对于时间合并,也可以使用平滑化滤波器。这意味着,对于合并列表整体来说,平滑化滤波器的选择机会增加,因此,能够通过根据图像特性,适应性地切换滤波器,来提高预测精度,从而提高编码性能。Thus, a smoothing filter can also be used for temporal combining. This means that the selection opportunity of the smoothing filter increases for the entire merge list, and therefore, by adaptively switching the filter according to the image characteristics, the prediction accuracy can be improved, and the encoding performance can be improved.

(向构建合并列表时的pruning处理中导入利用半像素索引进行的判断)(Introduction of judgment by half-pixel index to the pruning process when building the merged list)

以下,对本实施方式的向构建合并列表时的pruning处理中导入利用半像素索引进行的判断进行说明。Hereinafter, the introduction of the judgment using the half-pixel index into the pruning process when constructing the merge list according to the present embodiment will be described.

在非专利文献1中,记载有一种被称为pruning处理的检查机制,是在构建合并列表时,不将具有相同的运动矢量及参考图像索引的合并索引登记在合并列表中。Non-Patent Document 1 describes a checking mechanism called pruning processing, in which merge indexes having the same motion vector and reference image index are not registered in the merge list when the merge list is constructed.

具体来说,当在合并列表中追加新合并索引时,该pruning处理发挥作用,当与要新追加的合并索引相关联的运动矢量及参考索引、和与已登记的合并索引相关联的运动矢量及参考索引相同时,不将该合并索引追加在合并列表中。Specifically, this pruning process works when a new merge index is added to the merge list, and the motion vector and reference index associated with the merge index to be newly added and the motion vector associated with the registered merge index are used. When the index is the same as the reference index, the merge index is not added to the merge list.

这是要有意增加登记在合并列表中的运动矢量的变化,从图像编码装置100侧来看,可选的运动矢量的变化增加意味着,用于抑制编码成本的预测精度更高的运动矢量的选择机会增加。This is to intentionally increase the change of the motion vector registered in the merge list. From the image coding apparatus 100 side, the increase in the change of the optional motion vector means that the prediction accuracy of the motion vector for suppressing the coding cost is higher. Choice opportunities increase.

并且,从图像解码装置200侧来看,能够基于由图像编码装置100选择的高预测精度的运动矢量,生成MC预测图像,结果可以期待编码性能的提高效果。Furthermore, from the side of the image decoding device 200 , an MC predicted image can be generated based on a motion vector with high prediction accuracy selected by the image encoding device 100 , and as a result, the effect of improving the encoding performance can be expected.

然而,在非专利文献1中,在该pruning处理的判断中未使用半像素索引,与已有的合并索引具有相同的运动矢量及参考图像索引、但具有不同的半像素索引的合并索引未被登记在合并列表中。However, in Non-Patent Document 1, the half-pixel index is not used in the judgment of the pruning process, and the merge index that has the same motion vector and reference image index as the existing merge index but has a different half-pixel index is not used. Registered in the consolidated list.

因此,在本实施方式中,在该合并列表构建中的pruning处理中追加半像素索引的判断。Therefore, in the present embodiment, the determination of the half-pixel index is added to the pruning process in the merge list construction.

由此,与以往的方式相比,即便在与已有的合并索引具有相同的运动矢量及参考图像索引的情况下,具有不同的半像素索引的合并索引也会被登记在合并列表中。Accordingly, even when the existing merge index has the same motion vector and reference image index as the conventional method, a merge index having a different half-pixel index is registered in the merge list.

这暗示了对合并列表来说,平滑化滤波器的选择机会增加,从图像编码装置100的角度来看,意味着能够根据图像特性,适应性地选择编码成本更小的内插滤波器。This implies that the selection opportunity of the smoothing filter increases for the merge list, and from the perspective of the image encoding apparatus 100, it means that an interpolation filter with a lower encoding cost can be adaptively selected according to the image characteristics.

并且,从图像解码装置200侧来看,能够使用由图像编码装置100选择的编码成本较小的内插滤波器,来生成MC预测图像,结果可以期待编码性能的提高效果。In addition, from the image decoding device 200 side, the MC predicted image can be generated using the interpolation filter selected by the image encoding device 100 with a low encoding cost, and as a result, the effect of improving the encoding performance can be expected.

[变更例:pruning处理的扩展][Example of change: Extension of pruning processing]

在上述例中,示出了在pruning处理中追加半像素索引的判断的情况,而在非专利文献1中,只有在利用空间合并、历史合并构建合并列表时才进行pruning处理。In the above example, the judgment of adding a half-pixel index is shown in the pruning process, but in Non-Patent Document 1, the pruning process is performed only when a merging list is constructed using spatial merging and historical merging.

并且,在空间合并时,对于上述5个候补(处理顺序:A1、B1、B0、A0、B2),当三角合并无效时,也只进行B0与B1、A0与A1、B2与A1及B1的比较。In addition, for the above-mentioned five candidates (processing order: A1, B1, B0, A0, B2), when the triangular merge is invalid, only B0 and B1, A0 and A1, B2 and A1 and B1 are performed in the spatial merge. Compare.

因此,在空间合并中的B0、A0、B2、时间合并、成对平均合并中,运动矢量、参考图像索引及半像素索引有可能会与分别未进行比较的前一阶段的合并候补重复。Therefore, in spatial merging of B0, A0, B2, temporal merging, and pairwise average merging, there is a possibility that the motion vector, reference image index, and half-pixel index may overlap with the merging candidates of the previous stage that are not compared.

因此,在非专利文献1的未采用pruning处理的合并候补及合并列表构建方法中,在将pruning处理扩展后,追加半像素索引的判断的话,便可以避免将具有相同的运动矢量、参考图像索引及半像素索引的合并候补追加至合并列表内,因此,可以期待预测精度的提高,进一步可以期待编码性能的提高效果。Therefore, in the method of constructing a merge candidate and a merge list that does not use the pruning process of Non-Patent Document 1, if the pruning process is extended and the judgment of the half-pixel index is added, it is possible to avoid the use of the same motion vector and reference image index. Since merging candidates and half-pixel indices are added to the merging list, an improvement in prediction accuracy can be expected, and an effect of further improving coding performance can be expected.

(向构建历史合并表时的pruning处理中导入利用半像素索引进行的判断)(Introduction of judgment by half-pixel index to the pruning process when constructing the history merge table)

以下,对本实施方式的向构建历史合并表时的pruning处理中导入利用半像素索引进行的判断进行说明。Hereinafter, the introduction of the judgment by the half-pixel index into the pruning process when constructing the history merge table according to the present embodiment will be described.

在非专利文献1中,有被称为pruning处理的检查机制,是在构建历史合并表时,不将具有相同的运动矢量及参考图像索引的历史合并候补登记在历史合并表中。In Non-Patent Document 1, there is a checking mechanism called pruning processing, and when the history merging table is constructed, the history merging candidates having the same motion vector and reference picture index are not registered in the history merging table.

具体来说,当在历史合并表中追加新历史合并候补时,该pruning处理发挥作用,当与要新追加的历史合并候补相关联的运动矢量及参考索引、和与已登记的历史合并候补相关联的运动矢量及参考索引相同时,不将历史合并候补追加在历史合并表中。Specifically, this pruning process is used when a new history merging candidate is added to the history merging table, and the motion vector and reference index associated with the history merging candidate to be newly added are related to the registered history merging candidate. If the associated motion vector and reference index are the same, the history merge candidate is not added to the history merge table.

这是要有意增加登记在历史合并表中的运动矢量的变化,从图像编码装置100侧来看,可选的运动矢量的变化增加意味着,用于抑制编码成本的预测精度更高的运动矢量的选择机会增加。This is to intentionally increase the change of the motion vector registered in the historical merge table, and from the side of the image coding apparatus 100, the increase of the change of the optional motion vector means that the motion vector with higher prediction accuracy for suppressing the coding cost increased choice.

并且,从图像解码装置200侧来看,能够基于由图像编码装置100选择的高预测精度的运动矢量,生成MC预测图像,结果可以期待编码性能的提高效果。Furthermore, from the side of the image decoding device 200 , an MC predicted image can be generated based on a motion vector with high prediction accuracy selected by the image encoding device 100 , and as a result, the effect of improving the encoding performance can be expected.

然而,在非专利文献1中,在该pruning处理的判断中未使用半像素索引,与已有的历史合并候补具有相同的运动矢量及参考图像索引、但具有不同的半像素索引的历史合并候补未被登记在历史合并表中。However, in Non-Patent Document 1, the half-pixel index is not used in the judgment of the pruning process, and the historical merging candidate has the same motion vector and reference image index as the existing historical merging candidate, but has a different half-pixel index. Not registered in the historical consolidation table.

因此,在本实施方式中,在该历史合并表构建中的pruning处理中追加半像素索引的判断。Therefore, in the present embodiment, the determination of the half-pixel index is added to the pruning process in the construction of the historical merge table.

由此,与以往的方式相比,即便在与已有的历史合并候补具有相同的运动矢量及参考图像索引的情况下,具有不同的半像素索引的历史合并候补也会被登记在合并列表中。As a result, compared with the conventional method, even when the existing historical merging candidates have the same motion vector and reference image index, the historical merging candidates with different half-pixel indices are registered in the merging list. .

这暗示了对历史合并表来说,平滑化滤波器的选择机会增加,从图像编码装置100来看,意味着能够根据图像特性,适应性地选择编码成本更小的内插滤波器。This implies that the selection opportunity of the smoothing filter is increased for the history merge table, and from the perspective of the image encoding apparatus 100, it means that an interpolation filter with a lower encoding cost can be adaptively selected according to the image characteristics.

并且,从图像解码装置200侧来看,能够使用由图像编码装置100选择的编码成本更小的内插滤波器,来生成MC预测图像,结果可以期待编码性能的提高效果。In addition, from the image decoding device 200 side, the MC predicted image can be generated using an interpolation filter with a lower encoding cost selected by the image encoding device 100, and as a result, the effect of improving the encoding performance can be expected.

根据本发明,通过在构建合并列表时或历史合并表时的pruning处理的判断条件中追加半像素索引的判断,平滑化滤波器的选择机会增加,结果可以期待编码性能的提高。According to the present invention, by adding the judgment of the half-pixel index to the judgment condition of the pruning process when constructing the merge list or the history merge table, the selection opportunity of the smoothing filter is increased, and as a result, the improvement of the coding performance can be expected.

上述图像编码装置100及图像解码装置200也可以通过使计算机执行各功能(各步骤)的程序来实现。The image encoding device 100 and the image decoding device 200 described above can also be realized by a program for causing a computer to execute each function (each step).

另外,在上述各实施方式中,以将本发明应用于图像编码装置100及图像解码装置200为例进行了说明,但本发明并不仅限于此,同样也可以应用于具有图像编码装置100及图像解码装置200的各功能的图像编码系统及图像解码系统。In addition, in each of the above-described embodiments, the present invention has been described as an example in which the present invention is applied to the image encoding device 100 and the image decoding device 200, but the present invention is not limited to this, and the present invention can also be applied to devices having the image encoding device 100 and the image decoding device 200 as an example. An image encoding system and an image decoding system of each function of the decoding device 200 .

[符号说明][Symbol Description]

10:图像处理系统;100:图像编码装置;111、241:帧间预测部;111A:mv导出部;111A1、241A1:AMVP部;111A2、241A2:合并部;111B:AMVR部;111C、241B:mv细化部;111D、241C:预测信号生成部;111D1、241C1:滤波器判断部;111D2、241C2:滤波器应用部;112、242:帧内预测部;121:减法器;122、230:加法器;131:变换及量化部;132、220:逆变换及逆量化部;140:编码部;150、250:环路滤波处理部;160、260:帧缓冲器;200:图像解码装置;210:解码部;241A:mv解码部;241B1:MMVD部;241B2:DMVR部。10: image processing system; 100: image coding device; 111, 241: inter prediction unit; 111A: mv derivation unit; 111A1, 241A1: AMVP unit; 111A2, 241A2: combining unit; 111B: AMVR unit; mv refinement unit; 111D, 241C: prediction signal generation unit; 111D1, 241C1: filter determination unit; 111D2, 241C2: filter application unit; 112, 242: intra prediction unit; 121: subtractor; 122, 230: adder; 131: transform and quantization unit; 132, 220: inverse transform and inverse quantization unit; 140: coding unit; 150, 250: loop filter processing unit; 160, 260: frame buffer; 200: image decoding device; 210: decoding unit; 241A: mv decoding unit; 241B1: MMVD unit; 241B2: DMVR unit.

Claims (5)

1. An image decoding apparatus, comprising:
a merging unit configured to decode a motion vector and a half-pixel index indicating whether or not the motion vector refers to an 1/2-pixel-precision position, based on a merge index;
a Motion Vector Refinement unit configured to refine the Motion Vector by mmvd (large Motion Vector difference) or DMVR (Decoder-side Motion Vector reference);
a filter determination unit configured to determine whether to use an interpolation filter and an interpolation filter type based on the refined motion vector and the half-pixel index; and
a filter application unit configured to generate a motion-compensated prediction pixel signal using the interpolation filter; and the number of the first and second electrodes,
the merging unit is configured to generate a merge list by a specific merge list construction method, decode the motion vector and the half-pixel index based on the merge list and the merge index,
the object blocks are merged together and,
the merging unit is configured to register the motion vector and the reference picture index corresponding to the different merge indices in the merge list as different merge indices when the half-pixel indices corresponding to the merge indices are different even if the motion vector and the reference picture index corresponding to the different merge indices are the same when the merge list is constructed.
2. An image decoding apparatus, comprising:
a merging unit configured to decode a motion vector and a half-pixel index indicating whether or not the motion vector refers to an 1/2-pixel-precision position, based on a merge index;
a Motion Vector Refinement unit configured to refine the Motion Vector by mmvd (large Motion Vector difference) or DMVR (Decoder-side Motion Vector reference);
a filter determination unit configured to determine whether to use an interpolation filter and an interpolation filter type based on the refined motion vector and the half-pixel index; and
a filter application unit configured to generate a motion-compensated prediction pixel signal using the interpolation filter; and the number of the first and second electrodes,
the merging unit is configured to generate a merge list by a specific merge list construction method, decode the motion vector and the half-pixel index based on the merge list and the merge index,
the object blocks are merged together and,
the merging unit is configured to register a different history merge candidate in the history merge table when a half-pixel index corresponding to the history merge candidate is different even if a motion vector and a reference image index corresponding to the different history merge candidate are the same when the history merge table is constructed.
3. An image decoding apparatus, comprising:
a merging unit configured to decode a motion vector and a half-pixel index indicating whether or not the motion vector refers to an 1/2-pixel-precision position, based on a merge index;
a Motion Vector Refinement unit configured to refine the Motion Vector by mmvd (large Motion Vector difference) or DMVR (Decoder-side Motion Vector reference);
a filter determination unit configured to determine whether to use an interpolation filter and an interpolation filter type based on the refined motion vector and the half-pixel index; and
a filter application unit configured to generate a motion-compensated prediction pixel signal using the interpolation filter; and the number of the first and second electrodes,
the merging unit is configured to generate a merge list by a specific merge list construction method, decode the motion vector and the half-pixel index based on the merge list and the merge index,
the object blocks are merged together and,
the merging unit is configured to continue using the half-pixel index of the reference block and register the half-pixel index in the merge list when registering a temporally merged merge index in the merge list.
4. An image decoding method, comprising: step A, decoding a motion vector and a half-pixel index according to a merged index, wherein the half-pixel index represents whether the motion vector refers to 1/2 pixel precision positions;
b, thinning the Motion Vector through MMVD (Large Motion Vector difference) or DMVR (Decoder-side Motion Vector reference);
step C, based on the refined motion vector and the half-pixel index, judging whether to use an interpolation filter and an interpolation filter type; and
a step D of generating a motion-compensated prediction pixel signal using the interpolation filter; and the number of the first and second electrodes,
in the step a, a merge list is generated by a specific merge list construction method, and the motion vector and the half-pel index are decoded according to the merge list and the merge index,
the object blocks are merged together and,
the merging unit is configured to, when the half-pixel index corresponding to the merge index is different from the reference image index, register the motion vector and the reference image index as a different merge index in the merge list, even if the motion vector and the reference image index corresponding to the different merge index are the same.
5. A program for causing a computer to function as an image decoding device,
the image decoding apparatus includes:
a merging unit configured to decode a motion vector and a half-pixel index indicating whether or not the motion vector refers to an 1/2-pixel-precision position, based on a merge index;
a Motion Vector Refinement unit configured to refine the Motion Vector by mmvd (large Motion Vector difference) or DMVR (Decoder-side Motion Vector reference);
a filter determination unit configured to determine whether to use an interpolation filter and an interpolation filter type based on the refined motion vector and the half-pixel index; and
a filter application unit configured to generate a motion-compensated prediction pixel signal using the interpolation filter; and the number of the first and second electrodes,
the merging unit is configured to generate a merge list by a specific merge list construction method, decode the motion vector and the half-pixel index based on the merge list and the merge index,
the object blocks are merged together and,
the merging unit is configured to register the motion vector and the reference picture index corresponding to the different merge indices in the merge list as different merge indices when the half-pixel indices corresponding to the merge indices are different even if the motion vector and the reference picture index corresponding to the different merge indices are the same when the merge list is constructed.
CN202080057643.3A 2019-09-20 2020-08-21 Image decoding device, image decoding method, and program Active CN114303379B (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2019172237A JP7267885B2 (en) 2019-09-20 2019-09-20 Image decoding device, image decoding method and program
JP2019-172237 2019-09-20
PCT/JP2020/031560 WO2021054036A1 (en) 2019-09-20 2020-08-21 Image decoding device, image decoding method, and program

Publications (2)

Publication Number Publication Date
CN114303379A true CN114303379A (en) 2022-04-08
CN114303379B CN114303379B (en) 2024-09-10

Family

ID=74883517

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080057643.3A Active CN114303379B (en) 2019-09-20 2020-08-21 Image decoding device, image decoding method, and program

Country Status (3)

Country Link
JP (1) JP7267885B2 (en)
CN (1) CN114303379B (en)
WO (1) WO2021054036A1 (en)

Citations (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050108189A1 (en) * 2003-11-14 2005-05-19 Samsonov Yevgeniy A. System and method for building a large index
US20110274158A1 (en) * 2010-05-10 2011-11-10 Mediatek Inc. Method and Apparatus of Adaptive Loop Filtering
JP2013077897A (en) * 2011-09-29 2013-04-25 Jvc Kenwood Corp Image decoding device, image decoding method and image decoding program
JP2013102260A (en) * 2011-11-07 2013-05-23 Jvc Kenwood Corp Moving image decoder, moving image decoding method and moving image decoding program
CN104012094A (en) * 2011-11-07 2014-08-27 李英锦 Method of decoding video data
US20140269916A1 (en) * 2011-11-28 2014-09-18 Sk Telecom Co., Ltd. Method and apparatus for video encoding/decoding using improved merge
US20140307795A1 (en) * 2013-04-10 2014-10-16 Qualcomm Incorporated Backward view synthesis prediction
AU2015200360A1 (en) * 2011-09-09 2015-02-19 Kt Corporation Method for deriving a temporal predictive motion vector, and apparatus using the method
US20150326866A1 (en) * 2012-12-28 2015-11-12 Sharp Kabushiki Kaisha Image decoding device and data structure
CN106488249A (en) * 2010-09-30 2017-03-08 三菱电机株式会社 Dynamic image encoding device and its method, moving image decoding apparatus and its method
WO2018026118A1 (en) * 2016-08-01 2018-02-08 한국전자통신연구원 Image encoding/decoding method
CN108028939A (en) * 2015-09-02 2018-05-11 联发科技股份有限公司 Method and apparatus for decoder-side motion derivation for video coding
US20180199057A1 (en) * 2017-01-12 2018-07-12 Mediatek Inc. Method and Apparatus of Candidate Skipping for Predictor Refinement in Video Coding
US20190200040A1 (en) * 2016-07-12 2019-06-27 Electronics And Telecommunications Research Institute Image encoding/decoding method and recording medium therefor
US20190246103A1 (en) * 2016-10-04 2019-08-08 Electronics And Telecommunications Research Institute Method and apparatus for encoding and decoding image, and recording medium for storing bitstream
US20190246113A1 (en) * 2018-02-05 2019-08-08 Tencent America LLC Method and apparatus for video coding
US20190281286A1 (en) * 2016-11-07 2019-09-12 Lg Electronics Inc. Image decoding method and device in image coding system

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2020250609B2 (en) 2019-04-01 2023-09-07 Beijing Bytedance Network Technology Co., Ltd. Using interpolation filters for history based motion vector prediction

Patent Citations (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050108189A1 (en) * 2003-11-14 2005-05-19 Samsonov Yevgeniy A. System and method for building a large index
US20110274158A1 (en) * 2010-05-10 2011-11-10 Mediatek Inc. Method and Apparatus of Adaptive Loop Filtering
CN106488249A (en) * 2010-09-30 2017-03-08 三菱电机株式会社 Dynamic image encoding device and its method, moving image decoding apparatus and its method
AU2015200360A1 (en) * 2011-09-09 2015-02-19 Kt Corporation Method for deriving a temporal predictive motion vector, and apparatus using the method
JP2013077897A (en) * 2011-09-29 2013-04-25 Jvc Kenwood Corp Image decoding device, image decoding method and image decoding program
JP2013102260A (en) * 2011-11-07 2013-05-23 Jvc Kenwood Corp Moving image decoder, moving image decoding method and moving image decoding program
CN104012094A (en) * 2011-11-07 2014-08-27 李英锦 Method of decoding video data
US20140269916A1 (en) * 2011-11-28 2014-09-18 Sk Telecom Co., Ltd. Method and apparatus for video encoding/decoding using improved merge
US20150326866A1 (en) * 2012-12-28 2015-11-12 Sharp Kabushiki Kaisha Image decoding device and data structure
US20140307795A1 (en) * 2013-04-10 2014-10-16 Qualcomm Incorporated Backward view synthesis prediction
CN108028939A (en) * 2015-09-02 2018-05-11 联发科技股份有限公司 Method and apparatus for decoder-side motion derivation for video coding
US20190200040A1 (en) * 2016-07-12 2019-06-27 Electronics And Telecommunications Research Institute Image encoding/decoding method and recording medium therefor
WO2018026118A1 (en) * 2016-08-01 2018-02-08 한국전자통신연구원 Image encoding/decoding method
US20190246103A1 (en) * 2016-10-04 2019-08-08 Electronics And Telecommunications Research Institute Method and apparatus for encoding and decoding image, and recording medium for storing bitstream
US20190281286A1 (en) * 2016-11-07 2019-09-12 Lg Electronics Inc. Image decoding method and device in image coding system
US20180199057A1 (en) * 2017-01-12 2018-07-12 Mediatek Inc. Method and Apparatus of Candidate Skipping for Predictor Refinement in Video Coding
US20190246113A1 (en) * 2018-02-05 2019-08-08 Tencent America LLC Method and apparatus for video coding

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
BENJAMIN BROSS等: "Versatile Video Coding (Draft 6),JVET-O2001-vE", 《JOINT VIDEO EXPERTS TEAM (JVET) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11 15TH MEETING: GOTHENBURG, SE, 3–12 JULY 2019》, 31 July 2019 (2019-07-31) *

Also Published As

Publication number Publication date
CN114303379B (en) 2024-09-10
WO2021054036A1 (en) 2021-03-25
JP7267885B2 (en) 2023-05-02
JP2021052242A (en) 2021-04-01

Similar Documents

Publication Publication Date Title
CN111436226B (en) Motion vector storage for inter prediction
CN111357294B (en) Reduced entropy coding and decoding based on motion information lists of sub-blocks
KR102635518B1 (en) Use of converted single prediction candidates
WO2020084556A1 (en) Sub-block motion candidate list in video coding
CN113545069B (en) Motion vector management for decoder-side motion vector refinement
CN110740321B (en) Motion prediction based on updated motion vectors
JP6961115B2 (en) Image decoding device, image decoding method and program
CN114287129B (en) Initialize the history-based motion vector predictor table
KR20140095607A (en) Method for inter prediction and apparatus thereof
CN114009033A (en) Method and apparatus for signaling symmetric motion vector difference mode
TW202327351A (en) Method and apparatus for coding mode selection in video coding system
JP2024169690A (en) Image decoding device, image decoding method and program
CN114303379B (en) Image decoding device, image decoding method, and program
CN113545038A (en) Size dependent inter-frame coding
CN114270861B (en) Image decoding device, image decoding method and program product
JP2023071641A (en) Method and apparatus for coding image of video sequence and terminal device
WO2025051137A1 (en) Methods and apparatus of inheriting cross-component models from rescaled reference picture in video coding
CN113727119B (en) Inter-frame prediction method, encoder, decoder, and computer storage medium
CN113632477B (en) Derivation of converted uni-directional prediction candidates

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
GR01 Patent grant
GR01 Patent grant