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

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

Info

Publication number
WO2022219888A1
WO2022219888A1 PCT/JP2022/003993 JP2022003993W WO2022219888A1 WO 2022219888 A1 WO2022219888 A1 WO 2022219888A1 JP 2022003993 W JP2022003993 W JP 2022003993W WO 2022219888 A1 WO2022219888 A1 WO 2022219888A1
Authority
WO
WIPO (PCT)
Prior art keywords
obmc
prediction
block
target block
flag
Prior art date
Application number
PCT/JP2022/003993
Other languages
French (fr)
Japanese (ja)
Inventor
佳隆 木谷
恭平 海野
圭 河村
Original Assignee
Kddi株式会社
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株式会社 filed Critical Kddi株式会社
Publication of WO2022219888A1 publication Critical patent/WO2022219888A1/en

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/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/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/583Motion compensation with overlapping blocks

Definitions

  • the present invention relates to an image decoding device, an image decoding method and a program.
  • Non-Patent Document 1 and Non-Patent Document 2 disclose a technique called motion compensation (MC: Motion Compensation) prediction. Furthermore, Non-Patent Document 2 discloses a technique called Overlapped Block Motion Compensation (OBMC) prediction.
  • MC Motion Compensation
  • OBMC Overlapped Block Motion Compensation
  • the interpolation filter length (the number of taps) for the luminance signal and the color difference signal used in MC in Non-Patent Document 1 is a maximum of 8 taps and 4 taps, respectively, whereas MC in Non-Patent Document 2 uses The interpolation filter lengths for luma and chrominance signals are up to 12 taps and 4 taps, respectively.
  • the interpolation filter lengths for luminance and color difference signals used in OBMC in Non-Patent Document 2 are also the same maximum 12 taps and 4 taps.
  • Non-Patent Document 2 there are MCs for each of the small size blocks of uni-prediction and bi-prediction that are not (restricted) in Non-Patent Document 1 (not restricted).
  • the application of OBMC to such small size blocks is limited.
  • Non-Patent Document 2 has the following three extensions to the technology disclosed in Non-Patent Document 1, so that the encoding performance is improved.
  • the reference pixel area (memory band) required for generation increases. 1.
  • Addition of OBMC 2.
  • Extension of interpolation filter length for MC and OBMC 3.
  • Lifting of restrictions on MC for small size blocks in uni-prediction and bi-prediction Therefore, the present invention has been made in view of the above problems. It is an object of the present invention to provide an image decoding device, an image decoding method, and a program that can maintain the effect of improving coding performance while suppressing an increase in memory bandwidth.
  • a first feature of the present invention is an image decoding device to which OBMC prediction can be applied, the OBMC applicability determination unit configured to determine applicability of the OBMC prediction for each target block; Determining whether or not an OBMC processing unit configured to process the OBMC prediction for each target block and an OBMC flag configured to control applicability of the OBMC prediction for each target block are decoded. and a decoding unit configured to decode the OBMC flag.
  • a second feature of the present invention is an image decoding method to which OBMC prediction is applicable, comprising a step of determining applicability of the OBMC prediction for each target block, and processing the OBMC prediction for each target block. and determining whether or not an OBMC flag configured to control applicability of the OBMC prediction for each target block is decoded, and decoding the OBMC flag.
  • a third feature of the present invention is a program that causes a computer to function as an image decoding device to which OBMC prediction is applicable, wherein the image decoding device determines whether or not the OBMC prediction is applicable for each target block.
  • an OBMC processing unit configured to process the OBMC prediction for each target block; and the applicability of the OBMC prediction for each target block.
  • a decoding unit configured to determine whether or not the OBMC flag configured as above is decoded, and decode the OBMC flag.
  • an image decoding device an image decoding method, and a program that can maintain the effect of improving coding performance while suppressing an increase in memory bandwidth.
  • FIG. 1 is a diagram showing an example of the configuration of an image processing system 1 according to one embodiment.
  • FIG. 2 is a diagram showing an example of functional blocks of the image encoding device 100 according to one embodiment.
  • FIG. 3 is a diagram showing an example of functional blocks of the image decoding device 200 according to one embodiment.
  • FIG. 4 is a diagram illustrating an example of functional blocks of the inter prediction unit 241 of the image decoding device 200 according to one embodiment.
  • FIG. 5 is a diagram showing an example of functional blocks of the motion-compensated prediction signal generation unit 241B of the inter prediction unit 241 of the image decoding device 200 according to one embodiment.
  • FIG. 6 is a diagram showing an example of a mechanism for generating a normal MC prediction signal and an OBMC prediction signal from a target MV and adjacent MVs.
  • FIG. 7 is a diagram showing an example of a memory band expansion element common to normal MC and OBMC.
  • FIG. 8 is a diagram showing an example of a memory band expansion element common to normal MC and OBMC.
  • FIG. 9 is a diagram showing an example of a memory band expansion element common to normal MC and OBMC.
  • FIG. 10A is a diagram showing an example of a memory bandwidth expansion element in OBMC.
  • FIG. 10B is a diagram illustrating an example of a memory bandwidth expansion element in OBMC.
  • FIG. 11 is an example of a comparison table of the interpolation filter types for normal MC and the interpolation filter types for OBMC according to Non-Patent Document 1, Non-Patent Document 2, the prior application, and the present embodiment, respectively.
  • FIG. 12 is a diagram showing an example of frequency response characteristics of the 8-tap and 12-tap interpolation filters disclosed in Non-Patent Document 1 and Non-Patent Document 2.
  • FIG. 13 is an example of a comparison table of minimum sizes of uni-prediction or bi-prediction target blocks or target sub-blocks to which normal MC can be applied according to Non-Patent Document 1, Non-Patent Document 2, the prior application, and the present embodiment. is.
  • FIG. 12 is a diagram showing an example of frequency response characteristics of the 8-tap and 12-tap interpolation filters disclosed in Non-Patent Document 1 and Non-Patent Document 2.
  • FIG. 13 is an example of a comparison table of minimum sizes of uni-prediction or bi-prediction target blocks or target sub-block
  • FIG. 14 is an example of a comparison table of applicable block sizes of OBMC according to Non-Patent Document 2, the prior application, and the present embodiment.
  • FIG. 15 is an example of a comparison table of the number of blending lines of OBMC according to Non-Patent Document 2, the prior application, and the present embodiment.
  • FIG. 16 is a flowchart showing an example of processing for determining whether to decode the OBMC flag.
  • FIG. 17 is an example of a comparison table of the OBMC flag decoding condition 1, the OBMC flag decoding condition 2, and the determination method of OBMC applicability according to Non-Patent Document 2, the prior application, and the present embodiment, respectively.
  • FIG. 18 is an example of a comparison table of the OBMC flag decoding condition 1, the OBMC flag decoding condition 2, and the determination method of OBMC applicability according to Non-Patent Document 2, the prior application, and the present embodiment, respectively, in a modified example.
  • FIG. 19 is a diagram for explaining an example of processing for determining transmission accuracy that can be controlled by AMVR in a modified example.
  • FIG. 20 is a diagram for explaining an example of processing for determining MVD added by MMVD in a modified example.
  • FIG. 1 is a diagram showing an image processing system 10 according to this embodiment.
  • an image processing system 10 As shown in FIG. 1, an image processing system 10 according to this embodiment has an image encoding device 100 and an image decoding device 200 .
  • the image encoding device 100 is configured to generate encoded data by encoding an input image signal (picture).
  • the image decoding device 200 is configured to generate an output image signal by decoding encoded data.
  • such encoded data may be transmitted from the image encoding device 100 to the image decoding device 200 via a transmission path.
  • the encoded data may be stored in a storage medium and then provided from the image encoding device 100 to the image decoding device 200 .
  • FIG. 2 is a diagram showing an example of functional blocks of the image encoding device 100 according to this embodiment.
  • the image coding apparatus 100 includes an inter prediction unit 111, an intra prediction unit 112, a subtractor 121, an adder 122, a transform/quantization unit 131, an inverse transform/inverse quantization It has a section 132 , an encoding section 140 , an in-loop filtering section 150 and a frame buffer 160 .
  • the inter prediction unit 111 is configured to generate a prediction signal by inter prediction (inter-frame prediction).
  • the inter prediction unit 111 identifies a reference block included in the reference frame by comparing a frame to be encoded (target frame) with a reference frame stored in the frame buffer 160, and identifies a reference block included in the reference frame. It is configured to determine a motion vector (MV) for the block.
  • MV motion vector
  • the inter prediction unit 111 is configured to generate a prediction signal included in the encoding target block (hereinafter referred to as target block) for each target block based on the reference block and the motion vector.
  • the inter prediction section 111 is configured to output the prediction signal to the subtractor 121 and the adder 122 .
  • the reference frame is a frame different from the target frame.
  • the intra prediction unit 112 is configured to generate a prediction signal by intra prediction (intra-frame prediction).
  • the intra prediction unit 112 is configured to identify reference blocks included in the target frame and generate a prediction signal for each target block based on the identified reference blocks. Also, the intra prediction unit 112 is configured to output the prediction signal to the subtractor 121 and the adder 122 .
  • the reference block is a block that is referenced for the target block.
  • the reference block is a block adjacent to the target block.
  • the subtractor 121 is configured to subtract the prediction signal from the input image signal and output the prediction residual signal to the transformation/quantization section 131 .
  • the subtractor 121 is configured to generate a prediction residual signal that is a difference between a prediction signal generated by intra prediction or inter prediction and an input image signal.
  • the adder 122 adds the prediction signal to the prediction residual signal output from the inverse transform/inverse quantization unit 132 to generate a pre-filtering decoded signal. It is configured to output to the loop filter processing unit 150 .
  • the unfiltered decoded signal constitutes a reference block used by intra prediction section 112 .
  • the transform/quantization unit 131 is configured to perform transform processing on the prediction residual signal and acquire the coefficient level value. Further, the transform/quantization unit 131 may be configured to quantize the coefficient level values.
  • the transform processing is processing for transforming the prediction residual signal into a frequency component signal.
  • a base pattern (transformation matrix) corresponding to a discrete cosine transform hereinafter referred to as DCT
  • a discrete sine transform hereinafter referred to as DST
  • a base pattern (transformation matrix) corresponding to may be used.
  • the inverse transform/inverse quantization unit 132 is configured to perform inverse transform processing on the coefficient level values output from the transform/quantization unit 131 .
  • the inverse transform/inverse quantization unit 132 may be configured to perform inverse quantization of the coefficient level values prior to the inverse transform processing.
  • the inverse transform processing and inverse quantization are performed in a procedure opposite to the transform processing and quantization performed by the transform/quantization unit 131 .
  • the encoding unit 140 is configured to encode the coefficient level values output from the transform/quantization unit 131 and output encoded data.
  • the encoding is entropy encoding that assigns codes of different lengths based on the probability of occurrence of coefficient level values.
  • the encoding unit 140 is configured to encode control data used in the decoding process in addition to the coefficient level values.
  • control data may include size data such as encoding block size, prediction block size, transform block size.
  • the in-loop filtering unit 150 is configured to perform filtering on the pre-filtering decoded signal output from the adder 122 and to output the post-filtering decoded signal to the frame buffer 160 .
  • the filter processing includes deblocking filter processing for reducing distortion occurring at the boundary portion of blocks (encoding blocks, prediction blocks or transform blocks), filter coefficients and filter selection information transmitted from the image encoding device 100. , adaptive loop filtering that switches the filter based on the local characteristics of the pattern of the image.
  • the frame buffer 160 is configured to accumulate reference frames used by the inter prediction section 111 .
  • the decoded signal after filtering constitutes a reference frame used in inter prediction section 111 .
  • FIG. 3 is a diagram showing an example of functional blocks of the image decoding device 200 according to this embodiment.
  • the image decoding device 200 includes a decoding unit 210, an inverse transform/inverse quantization unit 220, an adder 230, an inter prediction unit 241, an intra prediction unit 242, and an in-loop filtering unit. 250 and a frame buffer 260 .
  • the decoding unit 210 is configured to decode the encoded data generated by the image encoding device 100 and decode the coefficient level values.
  • the decoding is, for example, entropy decoding in a procedure opposite to the entropy encoding performed by the encoding unit 140.
  • the decoding unit 210 may be configured to acquire the control data by decoding the encoded data.
  • the control data may include size data, header information, and the like.
  • the inverse transform/inverse quantization unit 220 is configured to perform inverse transform processing on the coefficient level values output from the decoding unit 210 .
  • the inverse transform/inverse quantization unit 220 may be configured to perform inverse quantization of the coefficient level values prior to the inverse transform processing.
  • the inverse transform processing and inverse quantization are performed in a procedure opposite to the transform processing and quantization performed by the transform/quantization unit 131 .
  • the adder 230 adds the prediction signal to the prediction residual signal output from the inverse transform/inverse quantization unit 220 to generate a pre-filtering decoded signal. It is configured to output to the filter processing unit 250 .
  • the unfiltered decoded signal constitutes a reference block used by the intra prediction unit 242.
  • the inter prediction section 24 is configured to generate a prediction signal by inter prediction (inter-frame prediction).
  • the inter prediction unit 241 is configured to generate a prediction signal based on a motion vector decoded from encoded data and a reference signal included in a reference frame.
  • the inter prediction section 241 is configured to output a prediction signal to the adder 230 .
  • the intra prediction unit 24 like the intra prediction unit 112, is configured to generate a prediction signal by intra prediction (intra-frame prediction).
  • the intra prediction unit 242 is configured to identify reference blocks included in the target frame and generate a prediction signal for each prediction block based on the identified reference blocks.
  • the intra prediction section 242 is configured to output the prediction signal to the adder 230 .
  • in-loop filtering section 250 performs filtering on the unfiltered decoded signal output from adder 230 and outputs the filtered decoded signal to frame buffer 260 . is configured to
  • the filter processing includes deblocking filter processing for reducing distortion occurring at boundaries of blocks (encoding blocks, prediction blocks, transform blocks, or sub-blocks obtained by dividing them), transmission from the image encoding device 100
  • deblocking filter processing for reducing distortion occurring at boundaries of blocks (encoding blocks, prediction blocks, transform blocks, or sub-blocks obtained by dividing them), transmission from the image encoding device 100
  • This is adaptive loop filtering that switches filters based on the filter coefficients, filter selection information, and local characteristics of the pattern of the image.
  • the frame buffer 260 like the frame buffer 160, is configured to accumulate reference frames used in the inter prediction section 241.
  • the decoded signal after filtering constitutes a reference frame used by the inter prediction unit 241 .
  • FIG. 4 is a diagram showing an example of functional blocks of the inter prediction unit 241 according to this embodiment.
  • the inter prediction unit 241 has a motion vector (MV) derivation unit 241A and a motion compensation (MC) prediction signal generation unit 241B.
  • MV motion vector
  • MC motion compensation
  • the motion vector (MV) derivation unit 241A acquires the motion vector of the target block by decoding the target frame and the reference frame input from the frame buffer 260 and the control data received from the image encoding device 100, It is configured to output a motion vector to a motion compensation (MC) prediction signal generator 241B.
  • MC motion compensation
  • Non-Patent Document 1 As a method of deriving the motion vector of the target block, the techniques of AMVP (Adaptive Motion Vector Prediction) mode and merge mode disclosed in Non-Patent Document 1 are used.
  • AMVP Adaptive Motion Vector Prediction
  • AMVP mode and merge mode include Affine mode and SbTMVP (Sub-block Temporal Motion Vector) in which a target block is divided into sub-block units and a motion vector is derived for each sub-block (hereinafter referred to as target sub-block). Prediction) mode.
  • Affine mode and SbTMVP Sub-block Temporal Motion Vector
  • Non-Patent Document 1 or Non-Patent Document 2 can be applied to the present embodiment as it is, the mode for deriving the motion vector of the target block will be omitted.
  • the motion compensation (MC) prediction signal generation unit 241B generates prediction signals based on the motion vector (hereinafter referred to as target MV) of the target block or target sub-block input from the motion vector (MV) derivation unit 241A. is configured as The details of the method of generating the prediction signal from the motion vector will be described later.
  • FIG. 5 is a diagram showing an example of functional blocks of the motion compensation (MC) prediction unit 241B according to this embodiment.
  • the motion compensation (MC) prediction unit 241B has a normal MC processing unit 241B1, an OBMC applicability determination unit 241B2, and an OBMC processing unit 241B3.
  • the normal MC processing unit 241B1 is configured to generate a normal MC prediction signal for the target block or target sub-block based on the target MV.
  • an interpolation filter is used to generate a normal MC prediction signal for the target block or target sub-block.
  • the type of interpolation filter is selected based on the control data decoded by the decoding unit 210 and the mode information when the motion vector is derived by the motion vector (MV) deriving unit 241A. be.
  • the details of the interpolation filter type for normal MC will be described later.
  • the OBMC applicability determination unit 241B2 is configured to determine the applicability of OBMC to the target block or target sub-block.
  • the process of determining whether or not OBMC is applicable may be performed in units of 4 ⁇ 4 pixel blocks facing block boundaries or sub-block boundaries, as in Non-Patent Document 2.
  • the OBMC applicability determining unit 241B2 is configured to notify the subsequent OBMC processing 241B3 of that effect.
  • the OBMC applicability determination unit 241B2 is configured to output the normal MC prediction signal generated by the normal MC processing unit 241B1 as an inter prediction signal.
  • the OBMC processing unit 241B3 calculates motion vectors (hereinafter, adjacent MV ) and a reference frame to generate a prediction signal (hereinafter referred to as an OBMC prediction signal) for an arbitrary number of lines (hereinafter referred to as the number of blending lines) from the block boundary or sub-block boundary for the target block or target sub-block. is configured as
  • the OBMC prediction signal generation process may be performed in units of 4 ⁇ 4 pixel blocks facing block boundaries or sub-block boundaries.
  • the OBMC processing unit 241B3 is configured to blend the OBMC prediction signal generated in this way with the normal MC prediction signal of the target block or target sub-block, and output as an inter prediction signal.
  • FIG. 6 is a diagram showing an example of a mechanism for generating a normal MC prediction signal and an OBMC prediction signal from a target MV and adjacent MVs.
  • normal MC obtains reference pixels for generating a normal MC prediction signal from a reference frame using the target MV.
  • an interpolation filter is used to generate a normal MC prediction signal, so the reference pixel area is expanded with respect to the area of the reference block corresponding to the target block.
  • OBMC uses adjacent MVs to obtain reference pixels for OBMC prediction signals from reference frames.
  • the area for obtaining reference pixels is the number of blending lines across the boundary of the target block or target sub-block.
  • the reference pixel region is Expanding.
  • the reference pixel area obtained from the reference frame to generate the normal MC prediction signal and OBMC prediction signal is defined as the memory band.
  • FIGS. 7 to 9 are diagrams showing examples of memory band expansion elements common to normal MC and OBMC.
  • FIG. 7 shows an example in which the longer the interpolation filter length (the number of taps), the larger the reference pixel area. Specifically, in the example of FIG. 7, the reference pixel areas are compared when the interpolation filter length is 2 taps, 4 taps, and 8 taps.
  • FIG. 8 shows an example in which the reference pixel area expands as the number of target MVs or adjacent MVs increases. Specifically, in the example of FIG. 8, the reference pixel regions for prediction with one motion vector (uni-prediction) and prediction with two motion vectors (bi-prediction) are compared.
  • FIG. 9 shows an example in which the smaller the target block or target sub-block is, the larger the reference pixel area is. Specifically, in the example of FIG. 9, reference pixel areas of a 16 ⁇ 16 pixel block and a 4 ⁇ 4 pixel block are compared.
  • FIG. 10 is a diagram showing an example of memory bandwidth expansion elements in OBMC.
  • the reference pixel area expands as the number of OBMC application locations increases with respect to block boundaries or sub-block boundaries having a total of four surfaces. Also, as shown in FIG. 10B, the larger the number of OBMC blending lines, the larger the reference pixel area.
  • FIG. 11 is an example of a comparison table of normal MC interpolation filter types and OBMC interpolation filter types according to Non-Patent Document 1, Non-Patent Document 2, the prior application, and the present embodiment. Note that the types of interpolation filters for OBMC will be described later.
  • FIG. 12 is a diagram showing an example of frequency response characteristics of the 8-tap and 12-tap interpolation filters disclosed in Non-Patent Document 1 and Non-Patent Document 2.
  • FIG. 12 is a diagram showing an example of frequency response characteristics of the 8-tap and 12-tap interpolation filters disclosed in Non-Patent Document 1 and Non-Patent Document 2.
  • the interpolation filter type for normal MC in Non-Patent Document 1 branches depending on which of the following three conditions the target block or target sub-block meets. A1. In the case of a luminance signal and a mode other than Affine A2. In case of luminance signal and Affine mode A3. Color Difference Signal If the target block or target sub-block is a luminance signal and is in a mode other than Affine (case A1. above), the following two conditions are applied.
  • hpelIfIdx is an internal parameter indicating whether or not the SIF (Switchable Interpolation Filter) disclosed in Non-Patent Document 1 is applicable.
  • the 8-tap interpolation filter disclosed in Non-Patent Document 1 is selected.
  • Non-Patent Document 1 When the target block or target sub-block is a luminance signal and is in Affine mode (case A2. above), the 6-tap interpolation filter disclosed in Non-Patent Document 1 is selected.
  • the target block or target sub-block is a chrominance signal (however, the chrominance signal down-sampled with respect to the luminance signal) (case A3 above), the 4-tap interpolation disclosed in Non-Patent Document 1 A filter is selected.
  • the interpolation filter type for normal MC in Non-Patent Document 2 branches depending on which of the following three conditions the target block or target sub-block meets. B1. In the case of a luminance signal and a mode other than Affine B2. Luminance signal and Affine mode B3. Color-difference signal If the target block or target sub-block is a luminance signal and is in a mode other than Affine (case B1 above), the following two conditions are applied.
  • the 12-tap interpolation filter disclosed in Non-Patent Document 2 is selected.
  • Non-Patent Document 2 When the target block or target sub-block is a luminance signal and is in Affine mode (case B2 above), the 12-tap interpolation filter disclosed in Non-Patent Document 2 is selected.
  • the target block or target sub-block is a chrominance signal (however, the chrominance signal down-sampled with respect to the luminance signal) (case B3 above), the 4-tap interpolation disclosed in Non-Patent Document 2 A filter is selected.
  • Non-Patent Document 2 has an extended interpolation filter length (number of taps) compared to Non-Patent Document 1. As a result, compared to Non-Patent Document 1, Non-Patent Document 2 has a steeper frequency response in the transition region as shown in FIG. Better performance. On the other hand, Non-Patent Document 2 has an increased memory bandwidth compared to Non-Patent Document 1.
  • the interpolation filter type for normal MC of the prior application has the same configuration as Non-Patent Document 1.
  • the interpolation filter type for normal MC according to the present embodiment may have the same configuration as in Non-Patent Document 1 or Non-Patent Document 2.
  • the interpolation filter type for normal MC according to the present embodiment has the same configuration as Non-Patent Document 2
  • the memory band increases as compared to Non-Patent Document 2 as compared to Non-Patent Document 2, but encoding Better performance.
  • FIG. 13 is an example of a comparison table of minimum sizes of uni-prediction or bi-prediction target blocks or target sub-blocks to which normal MC can be applied according to Non-Patent Document 1, Non-Patent Document 2, the prior application, and the present embodiment. is.
  • the minimum size of a target block or target sub-block for uni-prediction is denoted as S Uni-Min
  • the minimum size of a target block or target sub-block for bi-prediction is denoted as S Bi-Min .
  • S Uni-Min and S Bi-Min in Non-Patent Document 1 are 4 ⁇ 8/8 ⁇ 4 pixels and 8 ⁇ 8 pixels, respectively.
  • S Uni-Min and S Bi-Min in Non-Patent Document 2 are 4 ⁇ 4 pixels and 4 ⁇ 4 pixels, respectively. As a result, motion compensation prediction can be performed with a finer block size according to the image characteristics. increases.
  • S Uni-Min and S Bi-Min in this embodiment may have the same configuration as in Non-Patent Document 1 or Non-Patent Document 2.
  • FIG. 13 when S Uni-Min and S Bi-Min in the present embodiment have the same configuration as Non-Patent Document 2, the coding performance is improved in the same manner as Non-Patent Document 2 with respect to Non-Patent Document 1. , the memory bandwidth increases.
  • FIG. 14 is an example of a comparison table of block sizes applicable to OBMC according to Non-Patent Document 2, the prior application, and the present embodiment.
  • Non-Patent Document 2 makes it possible to apply OBMC to blocks of 64 pixels or more for both uni-prediction and bi-prediction. That is, Non-Patent Document 2 has a configuration in which OBMC is not applied to blocks of 32 pixels or less (4 ⁇ 4 pixels or 4 ⁇ 8/8 ⁇ 4 pixels).
  • Non-Patent Document 1 The prior application states that OBMC can be applied to uni-prediction blocks. Furthermore, the applicable block size is 4 ⁇ 8/8 ⁇ 4 pixels or more, which is the minimum size of Non-Patent Document 1.
  • the increase in memory bandwidth due to OBMC can be limited to uni-prediction normal MC.
  • OBMC can be applied from small-sized blocks where the memory bandwidth tends to increase. The improvement in coding performance can be maintained while suppressing the increase.
  • the present embodiment enables OBMC to be applied to uni-prediction or bi-prediction blocks with a minimum size of 4 ⁇ 4 pixels or more, which is the minimum size of Non-Patent Document 2, respectively.
  • the number of blocks to which OBMC can be applied is increased, and the potential performance improvement effect of OBMC can be exploited.
  • a new increase in flag decoding amount (transmission amount from the encoder's point of view) occurs. The details of how to solve these two problems will be described later.
  • OBMC may be set to 32 pixels or more for uni-prediction or bi-prediction blocks. good.
  • FIG. 11 is an example of a comparison table of interpolation filter types for normal MC and interpolation filter types for OBMC according to Non-Patent Document 1, Non-Patent Document 2, the prior application, and the present embodiment, respectively. Note that the types of interpolation filters for normal MC are as described above.
  • the OBMC interpolation filter type of Non-Patent Document 2 branches depending on which of the following two conditions the target block or target sub-block meets. C1. If it is a luminance signal C2. Color difference signal When the target block or target sub-block is a luminance signal (C1. above), the following two conditions are branched.
  • the 12-tap interpolation filter disclosed in Non-Patent Document 1 is selected.
  • the target block or target sub-block is a chrominance signal (however, the chrominance signal down-sampled with respect to the luminance signal) (case C2 above), the 4-tap interpolation disclosed in Non-Patent Document 1 A filter is selected.
  • the OBMC interpolation filter type of the prior application branches depending on whether the target block or target sub-block satisfies the following two conditions. D1. If it is a luminance signal D2. When the target block or target sub-block is a luminance signal (in the case of D1. above), 2-tap to 8-tap disclosed in Non-Patent Document 1 can be selected depending on the size of the block. An interpolation filter is selected.
  • the smaller the block size the shorter the interpolation filter length (short tap) interpolation filter (eg, 2-tap filter) is selected, and the larger the block size, the longer the interpolation filter length (long tap) interpolation filter. (eg, an 8-tap filter) is selected.
  • Non-Patent Document 1 to 4 An interpolation filter of taps is selected. Specifically, a short-tap interpolation filter is selected for a smaller block size, and a long-tap interpolation filter is selected for a larger block size.
  • interpolation filter length (number of taps) of the interpolation filter can be selected for which block size may be designed to be below the upper limit of the memory bandwidth intended by the designer in advance. It is shown that.
  • shortening the interpolation filter length of OBMC for small-sized blocks means that the potential effect of improving the coding performance of OBMC cannot be exploited. This is because, as described above, the longer the interpolation filter length, the smaller the prediction error for sharp edges and the like, but the shorter the interpolation filter length, the larger the prediction error for steep edges and the like.
  • OBMC is likely to reduce prediction errors at block boundaries or sub-block boundaries.
  • the present embodiment controls the interpolation filter length as follows according to the block size of the target block or target sub-block, contrary to the prior application.
  • a long-tap interpolation filter length (use a long-tap interpolation filter for OBMC)
  • a short-tap interpolation filter for OBMC a plurality of block size thresholds for switching the interpolation filter length may be provided.
  • a long-tap (12-tap or 8-tap) interpolation filter is used for a small size block of 32 pixels or less (4 ⁇ 4 pixels or 4 ⁇ 8/8 ⁇ 4 pixels).
  • a short-tap (4-tap or 2-tap) interpolation filter is used.
  • a 6-tap Gaussian filter with a high smoothing effect may be preferentially used for large-sized blocks.
  • the increase in memory bandwidth due to the application of long-tap OBMC to small-sized blocks is controlled by adjusting the following parameters, which will be described later. 1. Number of adjacent MVs2. Number of Blending Lines If there are two or more adjacent MVs, select one adjacent MV and apply OBMC.
  • FIG. 15 is an example of a comparison table of OBMC blending line numbers according to Non-Patent Document 2, the prior application, and the present embodiment.
  • L luma_B represents the number of blending lines for the target block boundary in the luminance signal
  • L chroma_B represents the number of blending lines for the target block boundary in the chrominance signal
  • L luma_SbB represents the number of blending lines for the target sub-block boundary in the luminance signal
  • L chroma_SbB represents the number of blending lines for the target sub-block boundary in the luminance signal
  • Non-Patent Document 2 fixed values of 4 lines, 1 line, 3 lines, and 1 line are used for L luma_B , L chroma_B , L luma_SbB , and L chroma_SbB , respectively.
  • the prior application shows a method of decreasing the number of blending lines when the block size of OBMC is small, and increasing the number of blending lines when the block size is large.
  • variable values of 2 lines and 4 lines according to the block size are used for L luma_B and L chroma_B , and a fixed value of 1 line is used for L luma_SbB and L chroma_SbB . It is configured.
  • L luma_B and L chroma_B have two blending lines in the parallel direction to the boundary where the horizontal or vertical width of the block is 4 pixels or less.
  • the number of blending lines in the direction parallel to the boundary of 4 pixels or less is 4 lines.
  • the following two OBMC blending line number control methods are used as techniques for suppressing the memory bandwidth and further improving the encoding performance.
  • a plurality of threshold values may be provided for each block size. For example, in the case of 32 pixels or less (4 ⁇ 4 pixels or 4 ⁇ 8/8 ⁇ 4 pixels), 1 line or 2 lines are used, and in the case of 64 pixels or more and less than 256 pixels, 4 lines or 3 lines are used. In the case of pixels or more, 8 lines may be used.
  • the number of lines for the width and length of the block may be controlled separately. For example, for a block of 4 ⁇ 16 pixels/16 ⁇ 4 pixels, etc., the number of blending lines in the direction parallel to the short side (4 pixels) is 1 or 2, and the blending line in the direction parallel to the long side (16 pixels) is The number of in-lines may be 4 lines or 3 lines. The increase and decrease in the number of lines in the parallel direction (short side and long side) may be reversed.
  • a long-tap interpolation filter can be applied to OBMC.
  • Non-Patent Document 2 as a method for determining whether or not OBMC is applicable, a method of decoding in target block units (transmission from the image encoding apparatus 100) and control data for controlling whether or not OBMC is applicable A method of making a determination using a flag (OBMC flag) is disclosed.
  • the decoding unit 210 determines whether or not to decode the OBMC flag. Specifically, the flowchart shown in FIG. 16 shows such processing.
  • step S16-1 the decoding unit 210 determines decoding condition 1 of the OBMC flag.
  • step S16-2 if the decoding condition 1 of the OBMC flag is not satisfied, the process proceeds to step S16-2. On the other hand, if the decoding condition 1 of the OBMC flag is satisfied, the process proceeds to step S16-3. The details of the decoding condition 1 of the OBMC flag will be described later.
  • the decoding unit 210 determines the decoding condition 2 of the OBMC flag.
  • step S16-4 if the decoding condition 2 of the OBMC flag is satisfied, the process proceeds to step S16-5.
  • the decoding condition 2 of the OBMC flag is not satisfied, the process proceeds to step S16-5.
  • step S16-3 the decoding unit 210 does not decode the OBMC flag, estimates the value of the OBMC flag to be 0, and terminates this process.
  • the decoding unit 210 decodes the OBMC flag, and ends this process.
  • step S16-5 the decoding unit 210 does not decode the OBMC flag, estimates the value of the OBMC flag to be 1, and terminates this process.
  • the value of the OBMC flag consists of 0 or 1.
  • An OBMC flag value of 1 indicates that OBMC is applicable, and an OBMC flag value of 0 indicates that OBMC is not applicable.
  • the OBMC applicability determination unit 241B2 uses the value of the OBMC flag, the block size and prediction mode of the target block, the prediction mode of the adjacent block, the target MV and the adjacent MV to finally determine whether or not OBMC is applicable. is configured to Details of such a determination method will be described later.
  • FIG. 17 is an example of a comparison table of the OBMC flag decoding condition 1, the OBMC flag decoding condition 2, and the determination method for OBMC applicability according to Non-Patent Document 2, the prior application, and the present embodiment, respectively.
  • the decoding condition 1 of the OBMC flag in Non-Patent Document 2 is composed of the following conditions. E1.
  • the OBMC flag for each slice is 0.
  • the target block is in intra prediction mode.
  • the target block is in IBC mode.
  • the target block is in LIC mode.
  • the OBMC flag for each slice is a flag that controls whether or not OBMC decoding for each target slice is applicable. Such an OBMC flag may be decoded on a picture-by-picture basis instead of being decoded on a slice-by-slice basis.
  • the value of the OBMC flag consists of 0 and 1, and has the same meaning as the object block unit.
  • Decoding condition 2 of the OBMC flag in Non-Patent Document 2 consists only of the condition that the target block is in merge mode.
  • the target block is in intra prediction mode. F3.
  • the target block is in IBC mode.
  • the target block is in LIC mode.
  • the neighboring block is in intra prediction mode.
  • the target MV and adjacent MV are the same.
  • the decoding condition 1 of the OBMC flag of the prior application consists of the following conditions. G1.
  • the OBMC flag for each slice is 0.
  • the target block is in intra prediction mode.
  • the target block is in IBC mode.
  • the OBMC flag for each slice is a flag that controls whether or not OBMC decoding for each target slice is applicable. Such an OBMC flag may be decoded on a picture-by-picture basis instead of being decoded on a slice-by-slice basis.
  • the value of the OBMC flag consists of 0 and 1, and has the same meaning as the object block unit.
  • the decoding condition 2 of the OBMC flag of the prior application consists of the following two conditions. H1.
  • the target block is in merge mode.
  • the target block is in AMVP mode and the target block size is 256 pixels or more.
  • the decoding condition 1 of the OBMC flag in this embodiment may be the same as in Non-Patent Document 2 or the prior application.
  • the decoding condition 2 of the OBMC flag of this embodiment is composed of the following three conditions. J1.
  • the target block is in merge mode.
  • the target block is in AMVP mode and the target block size is 256 pixels or more.
  • the target block is in AMVP mode and the target block size is 32 pixels or less.
  • a long-tap interpolation filter can be applied to small-sized blocks.
  • the effect of reducing the OBMC prediction error in small-sized blocks can be expected, but if the OBMC flag is decoded for each small-sized block, the amount of code increases accordingly.
  • a small-sized block (specifically, the target block is AMVP mode and the target block size is 32 pixels below), by omitting the decoding process of the OBMC flag, an increase in the code amount of the OBMC flag in the small size block can be reduced.
  • the block size threshold for omitting the OBMC flag decoding process for the current block in AMVP mode may be controlled according to the block size applicable to OBMC and the interpolation filter length that can be used in OBMC.
  • Judgment condition J4. is configured as follows. J4. The target block is in AMVP mode and the target block size is equal to or larger than the lower limit of the block size to which OBMC is applicable.
  • the lower limit of the block size to which the above-mentioned OBMC can be applied is, for example, in Non-Patent Document 2 and in the present embodiment, 64 pixels or 32 pixels, which allows long-tap interpolation filters to be used from small size blocks.
  • This J4. to J2. and J3. can further simplify the decoding condition regarding whether or not the OBMC flag is decoded.
  • the above threshold may be set large.
  • One method is to set such a threshold to the lower limit of the block size at which the long-tap interpolation filter can be applied. For example, if a short-tap interpolation filter can be applied to a target block of less than 256 pixels, and a long-tap interpolation filter can be applied to a target block of 256 pixels or more, even if the threshold is set to 256 pixels, good.
  • the method of determining whether or not OBMC is applicable in this embodiment may be the same as in Non-Patent Document 2 or the prior application.
  • the following two conditions are added to the OBMC flag decoding condition 1 determined by the decoding unit 210 and the OBMC applicability determination condition determined by the OBMC applicability determination unit 241B.
  • AMVR is valid and MVD is decimal pixel precision in the target block.
  • the target block DMMVD is valid and MVD is decimal pixel precision.
  • AMVR Adaptive Motion Vector Resolution
  • MMVD Merge with Motion Vector Difference
  • AMVR is a technology that controls the transmission accuracy of the motion vector difference (MVD) added to the motion vector prediction (MVP) derived by AMVP, and the final target MV is rounded to the transmission accuracy of such MVD.
  • MVD motion vector difference
  • MVP motion vector prediction
  • the transmission precision that can be controlled by AMVR is defined for each of Affine AMVP, normal AMVP, and IBC, as shown in FIG. ), an Affine mode non-applicability flag (inter_affine_flag), and an internal parameter (MODE_IBC) indicating that the target block is in the IBC mode.
  • MMVD MVD (MmvdDistance) added by MMVD is ph_mmvd_fullpel_only_flag decoded in picture units and mmvd_distance_idx decoded in target block units, as shown in FIG. is determined by
  • the decoding unit 210 decodes the OBMC flag. and assumes the value of the OBMC flag to be 0.
  • the decoding unit 210 sets the value of the OBMC flag to 0 without decoding the OBMC flag. presume.
  • the decoding unit 210 (in the control data decoding stage) to determine whether the target MV has decimal pixel precision or integer pixel precision.
  • the target MV has sub-pixel accuracy even by AMVR or MMVD, it can be regarded as fine motion compensation prediction, so discontinuity (prediction error) at block boundaries is less likely to occur. Therefore, OBMC may not be applicable.
  • the target MV is rounded to integer pixel precision by AMVR or MMVD, it can be regarded as coarse motion compensation prediction, so discontinuity (prediction error) at block boundaries is likely to occur.
  • OBMC always-on OBMC that reduces prediction errors
  • the decoding unit 210 decodes the OBMC flag without decoding the OBMC flag. is assumed to be 1, OBMC can always be applied when the target MV is rounded to integer pixel accuracy by AMVR and MMVD described above, and unnecessary code amount can be reduced.
  • the OBMC interpolation filter length according to the target block size or the number of OBMC blending lines, it is possible to maintain the effect of improving the coding performance while suppressing an increase in the memory bandwidth.
  • Non-Patent Document 2 a case may occur where interpolation filter lengths with different properties are used for normal MC prediction and OBMC prediction. Specifically, this is a case where a normal interpolation filter is applied to one side and the SIF (6-tap Gaussian filter) is applied to the other side.
  • the hpelIfIdx value of the adjacent block is ignored, and the hpelIfIdx value of the target block is prioritized to determine the type of interpolation filter.
  • the hpelIfIdx value of the target block is prioritized to perform interpolation of both the target block and the adjacent block.
  • the filter type can be matched with a normal interpolation filter.
  • the interpolation filter of both the target block and the adjacent block is selected.
  • the type can be matched with SIF.
  • the SIF may be invalid. It may be matched with an interpolation filter.
  • the image encoding device 100 and the image decoding device 200 described above may be implemented as a program that causes a computer to execute each function (each process).
  • the present invention is applied to the image encoding device 100 and the image decoding device 200 as examples, but the present invention is not limited to this.
  • the same can be applied to an image encoding system and an image decoding system having the functions of the device 100 and the image decoding device 200.

Landscapes

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

Abstract

The image-decoding device 200 according to the present invention comprises: an OBMC application possibility determination unit 241B2 configured so as to determine the possibility of applying OBMC prediction to each subject block; an OBMC processing unit 241B3 configured so as to process OBMC prediction for each subject block; and a decoding unit 210 that is configured so as to determine whether to decode an OBMC flag configured so as to control the possibility of applying OBMC prediction to each subject block, and so as to decode the OBMC flag.

Description

画像復号装置、画像復号方法及びプログラムImage decoding device, image decoding method and program
 本発明は、画像復号装置、画像復号方法及びプログラムに関する。 The present invention relates to an image decoding device, an image decoding method and a program.
 非特許文献1及び非特許文献2では、動き補償(MC:Motion Compensation)予測という技術が開示されている。さらに、非特許文献2では、重複ブロック動き補償(OBMC:Overlapped Block Motion Compensation)予測という技術が開示されている。 Non-Patent Document 1 and Non-Patent Document 2 disclose a technique called motion compensation (MC: Motion Compensation) prediction. Furthermore, Non-Patent Document 2 discloses a technique called Overlapped Block Motion Compensation (OBMC) prediction.
 非特許文献1におけるMCで使用される輝度信号及び色差信号向けの補間フィルタ長(タップ数)は、それぞれ最大8タップ及び4タップであるのに対して、非特許文献2におけるMCで使用される輝度信号及び色差信号向けの補間フィルタ長は、それぞれ最大12タップ及び4タップである。 The interpolation filter length (the number of taps) for the luminance signal and the color difference signal used in MC in Non-Patent Document 1 is a maximum of 8 taps and 4 taps, respectively, whereas MC in Non-Patent Document 2 uses The interpolation filter lengths for luma and chrominance signals are up to 12 taps and 4 taps, respectively.
 また、非特許文献2におけるOBMCで使用される輝度信号及び色差信号向けの補間フィルタ長も、同じ最大12タップ及び4タップである。 Also, the interpolation filter lengths for luminance and color difference signals used in OBMC in Non-Patent Document 2 are also the same maximum 12 taps and 4 taps.
 さらに、非特許文献2では、非特許文献1にない(制限されている)片予測及び双予測のそれぞれの小サイズブロックに対するMCが存在する(制限されていない)。他方、非特許文献2では、かかる小サイズブロックに対するOBMCの適用は、制限されている。 Furthermore, in Non-Patent Document 2, there are MCs for each of the small size blocks of uni-prediction and bi-prediction that are not (restricted) in Non-Patent Document 1 (not restricted). On the other hand, in Non-Patent Document 2, the application of OBMC to such small size blocks is limited.
 しかしながら、非特許文献2に開示されている技術では、非特許文献1に開示されている技術に対して、以下の3点の拡張があるため、符号化性能が改善するが、動き補償予測画素生成に必要な参照画素領域(メモリ帯域)が増加するという問題点があった。
1. OBMCの追加
2. MC及びOBMC向けの補間フィルタ長の拡張
3. 片予測及び双予測の小サイズブロックに対するMCの制限解除 そこで、本発明は、上述の課題に鑑みてなされたものであり、メモリ帯域の増加を抑制しつつ、符号化性能の改善効果を維持することができる画像復号装置、画像復号方法及びプログラムを提供することを目的とする。
However, the technology disclosed in Non-Patent Document 2 has the following three extensions to the technology disclosed in Non-Patent Document 1, so that the encoding performance is improved. There is a problem that the reference pixel area (memory band) required for generation increases.
1. Addition of OBMC 2. Extension of interpolation filter length for MC and OBMC 3. Lifting of restrictions on MC for small size blocks in uni-prediction and bi-prediction Therefore, the present invention has been made in view of the above problems. It is an object of the present invention to provide an image decoding device, an image decoding method, and a program that can maintain the effect of improving coding performance while suppressing an increase in memory bandwidth.
 本発明の第1の特徴は、OBMC予測が適用可能な画像復号装置であって、対象ブロックごとの前記OBMC予測の適用可不可を判定するように構成されているOBMC適用可不可判定部と、前記対象ブロックごとの前記OBMC予測を処理するように構成されているOBMC処理部と、前記対象ブロックごとの前記OBMC予測の適用可不可を制御するように構成されているOBMCフラグの復号有無を判定して、前記OBMCフラグを復号するように構成されている復号部とを備えることを要旨とする。 A first feature of the present invention is an image decoding device to which OBMC prediction can be applied, the OBMC applicability determination unit configured to determine applicability of the OBMC prediction for each target block; Determining whether or not an OBMC processing unit configured to process the OBMC prediction for each target block and an OBMC flag configured to control applicability of the OBMC prediction for each target block are decoded. and a decoding unit configured to decode the OBMC flag.
 本発明の第2の特徴は、OBMC予測が適用可能な画像復号方法であって、対象ブロックごとの前記OBMC予測の適用可不可を判定する工程と、前記対象ブロックごとの前記OBMC予測を処理する工程と、前記対象ブロックごとの前記OBMC予測の適用可不可を制御するように構成されているOBMCフラグの復号有無を判定して、前記OBMCフラグを復号する工程とを有することを要旨とする。 A second feature of the present invention is an image decoding method to which OBMC prediction is applicable, comprising a step of determining applicability of the OBMC prediction for each target block, and processing the OBMC prediction for each target block. and determining whether or not an OBMC flag configured to control applicability of the OBMC prediction for each target block is decoded, and decoding the OBMC flag.
 本発明の第3の特徴は、コンピュータを、OBMC予測が適用可能な画像復号装置として機能させるプログラムであって、前記画像復号装置は、対象ブロックごとの前記OBMC予測の適用可不可を判定するように構成されているOBMC適用可不可判定部と、前記対象ブロックごとの前記OBMC予測を処理するように構成されているOBMC処理部と、前記対象ブロックごとの前記OBMC予測の適用可不可を制御するように構成されているOBMCフラグの復号有無を判定して、前記OBMCフラグを復号するように構成されている復号部とを備えることを要旨とする。 A third feature of the present invention is a program that causes a computer to function as an image decoding device to which OBMC prediction is applicable, wherein the image decoding device determines whether or not the OBMC prediction is applicable for each target block. an OBMC processing unit configured to process the OBMC prediction for each target block; and the applicability of the OBMC prediction for each target block. and a decoding unit configured to determine whether or not the OBMC flag configured as above is decoded, and decode the OBMC flag.
 本発明によれば、メモリ帯域の増加を抑制しつつ、符号化性能の改善効果を維持することができる画像復号装置、画像復号方法及びプログラムを提供することができる。 According to the present invention, it is possible to provide an image decoding device, an image decoding method, and a program that can maintain the effect of improving coding performance while suppressing an increase in memory bandwidth.
図1は、一実施形態に係る画像処理システム1の構成の一例を示す図である。FIG. 1 is a diagram showing an example of the configuration of an image processing system 1 according to one embodiment. 図2は、一実施形態に係る画像符号化装置100の機能ブロックの一例を示す図である。FIG. 2 is a diagram showing an example of functional blocks of the image encoding device 100 according to one embodiment. 図3は、一実施形態に係る画像復号装置200の機能ブロックの一例を示す図である。FIG. 3 is a diagram showing an example of functional blocks of the image decoding device 200 according to one embodiment. 図4は、一実施形態に係る画像復号装置200のインター予測部241の機能ブロックの一例を示す図である。FIG. 4 is a diagram illustrating an example of functional blocks of the inter prediction unit 241 of the image decoding device 200 according to one embodiment. 図5は、一実施形態に係る画像復号装置200のインター予測部241の動き補償予測信号生成部241Bの機能ブロックの一例を示す図である。FIG. 5 is a diagram showing an example of functional blocks of the motion-compensated prediction signal generation unit 241B of the inter prediction unit 241 of the image decoding device 200 according to one embodiment. 図6は、対象MV及び隣接MVから通常MC予測信号及びOBMC予測信号が生成される仕組みの一例を示す図である。FIG. 6 is a diagram showing an example of a mechanism for generating a normal MC prediction signal and an OBMC prediction signal from a target MV and adjacent MVs. 図7は、通常MC及びOBMCで共通するメモリ帯域の拡大要素の一例を示す図である。FIG. 7 is a diagram showing an example of a memory band expansion element common to normal MC and OBMC. 図8は、通常MC及びOBMCで共通するメモリ帯域の拡大要素の一例を示す図である。FIG. 8 is a diagram showing an example of a memory band expansion element common to normal MC and OBMC. 図9は、通常MC及びOBMCで共通するメモリ帯域の拡大要素の一例を示す図である。FIG. 9 is a diagram showing an example of a memory band expansion element common to normal MC and OBMC. 図10Aは、OBMCにおけるメモリ帯域の拡大要素の一例を示す図である。FIG. 10A is a diagram showing an example of a memory bandwidth expansion element in OBMC. 図10Bは、OBMCにおけるメモリ帯域の拡大要素の一例を示す図である。FIG. 10B is a diagram illustrating an example of a memory bandwidth expansion element in OBMC. 図11は、非特許文献1、非特許文献2、先出願及び本実施形態のそれぞれに係る通常MC向け補間フィルタ種別とOBMC向け補間フィルタ種別との比較表の一例である。FIG. 11 is an example of a comparison table of the interpolation filter types for normal MC and the interpolation filter types for OBMC according to Non-Patent Document 1, Non-Patent Document 2, the prior application, and the present embodiment, respectively. 図12は、非特許文献1及び非特許文献2で開示されている8タップ及び12タップの補間フィルタの周波数応答特性の一例を示す図である。FIG. 12 is a diagram showing an example of frequency response characteristics of the 8-tap and 12-tap interpolation filters disclosed in Non-Patent Document 1 and Non-Patent Document 2. In FIG. 図13は、非特許文献1、非特許文献2、先出願及び本実施形態のそれぞれに係る通常MCが適用可能な片予測又は双予測の対象ブロック又は対象サブブロックの最小サイズの比較表の一例である。FIG. 13 is an example of a comparison table of minimum sizes of uni-prediction or bi-prediction target blocks or target sub-blocks to which normal MC can be applied according to Non-Patent Document 1, Non-Patent Document 2, the prior application, and the present embodiment. is. 図14は、非特許文献2、先出願及び本実施形態のそれぞれに係るOBMCの適用可能なブロックサイズの比較表の一例である。FIG. 14 is an example of a comparison table of applicable block sizes of OBMC according to Non-Patent Document 2, the prior application, and the present embodiment. 図15は、非特許文献2、先出願及び本実施形態のそれぞれに係るOBMCのブレンディングライン数の比較表の一例である。FIG. 15 is an example of a comparison table of the number of blending lines of OBMC according to Non-Patent Document 2, the prior application, and the present embodiment. 図16は、OBMCフラグを復号するか否かについて判定する処理の一例について示すフローチャートである。FIG. 16 is a flowchart showing an example of processing for determining whether to decode the OBMC flag. 図17は、非特許文献2、先出願及び本実施形態のそれぞれに係るOBMCフラグの復号条件1、OBMCフラグの復号条件2及びOBMC適用可不可についての判定方法の比較表の一例である。FIG. 17 is an example of a comparison table of the OBMC flag decoding condition 1, the OBMC flag decoding condition 2, and the determination method of OBMC applicability according to Non-Patent Document 2, the prior application, and the present embodiment, respectively. 図18は、一変更例における非特許文献2、先出願及び本実施形態のそれぞれに係るOBMCフラグの復号条件1、OBMCフラグの復号条件2及びOBMC適用可不可についての判定方法の比較表の一例である。FIG. 18 is an example of a comparison table of the OBMC flag decoding condition 1, the OBMC flag decoding condition 2, and the determination method of OBMC applicability according to Non-Patent Document 2, the prior application, and the present embodiment, respectively, in a modified example. is. 図19は、一変更例において、AMVRで制御できる伝送精度を判別する処理の一例について説明するための図である。FIG. 19 is a diagram for explaining an example of processing for determining transmission accuracy that can be controlled by AMVR in a modified example. 図20は、一変更例において、MMVDが加算するMVDを判別する処理の一例について説明するための図である。FIG. 20 is a diagram for explaining an example of processing for determining MVD added by MMVD in a modified example.
 以下、本発明の実施の形態について、図面を参照しながら説明する。なお、以下の実施形態における構成要素は、適宜、既存の構成要素等との置き換えが可能であり、また、他の既存の構成要素との組み合わせを含む様々なバリエーションが可能である。したがって、以下の実施形態の記載をもって、特許請求の範囲に記載された発明の内容を限定するものではない。 Hereinafter, embodiments of the present invention will be described with reference to the drawings. It should be noted that constituent elements in the following embodiments can be appropriately replaced with existing constituent elements and the like, and various variations including combinations with other existing constituent elements are possible. Therefore, the following description of the embodiments is not intended to limit the scope of the invention described in the claims.
<第1実施形態>
 以下、図1~図20を参照して、本発明の第1実施形態に係る画像処理システム10について説明する。図1は、本実施形態に係る画像処理システム10について示す図である。
<First Embodiment>
An image processing system 10 according to a first embodiment of the present invention will be described below with reference to FIGS. 1 to 20. FIG. FIG. 1 is a diagram showing an image processing system 10 according to this embodiment.
(画像処理システム10)
 図1に示すように、本実施形態に係る画像処理システム10は、画像符号化装置100及び画像復号装置200を有する。
(Image processing system 10)
As shown in FIG. 1, an image processing system 10 according to this embodiment has 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 (picture). The image decoding device 200 is configured to generate an output image signal by decoding encoded data.
 ここで、かかる符号化データは、画像符号化装置100から画像復号装置200に対して伝送路を介して送信されてもよい。また、符号化データは、記憶媒体に格納された上で、画像符号化装置100から画像復号装置200に提供されてもよい。 Here, such encoded data may be transmitted from the image encoding device 100 to the image decoding device 200 via a transmission path. Also, the encoded data may be stored in a storage medium and then provided from the image encoding device 100 to the image decoding device 200 .
(画像符号化装置100)
 以下、図2を参照して、本実施形態に係る画像符号化装置100について説明する。図2は、本実施形態に係る画像符号化装置100の機能ブロックの一例について示す図である。
(Image encoding device 100)
The image coding apparatus 100 according to this embodiment will be described below with reference to FIG. FIG. 2 is a diagram showing an example of functional blocks of the image encoding device 100 according to this 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/quantization unit 131, an inverse transform/inverse quantization It has a section 132 , an encoding section 140 , an in-loop filtering section 150 and a frame buffer 160 .
 インター予測部111は、インター予測(フレーム間予測)によって予測信号を生成するように構成されている。 The inter prediction unit 111 is configured to generate a prediction signal by inter prediction (inter-frame prediction).
 具体的には、インター予測部111は、符号化対象のフレーム(対象フレーム)とフレームバッファ160に格納される参照フレームとの比較によって、参照フレームに含まれる参照ブロックを特定し、特定された参照ブロックに対する動きベクトル(MV:Motion Vector)を決定するように構成されている。 Specifically, the inter prediction unit 111 identifies a reference block included in the reference frame by comparing a frame to be encoded (target frame) with a reference frame stored in the frame buffer 160, and identifies a reference block included in the reference frame. It is configured to determine a motion vector (MV) for the block.
 また、インター予測部111は、参照ブロック及び動きベクトルに基づいて符号化対象ブロック(以下、対象ブロック)に含まれる予測信号を対象ブロック毎に生成するように構成されている。インター予測部111は、予測信号を減算器121及び加算器122に出力するように構成されている。ここで、参照フレームは、対象フレームとは異なるフレームである。 Also, the inter prediction unit 111 is configured to generate a prediction signal included in the encoding target block (hereinafter referred to as target block) for each target block based on the reference block and the motion vector. The inter prediction section 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 target frame.
 イントラ予測部112は、イントラ予測(フレーム内予測)によって予測信号を生成するように構成されている。 The intra prediction unit 112 is configured to generate a prediction signal by intra prediction (intra-frame prediction).
 具体的には、イントラ予測部112は、対象フレームに含まれる参照ブロックを特定し、特定された参照ブロックに基づいて予測信号を対象ブロック毎に生成するように構成されている。また、イントラ予測部112は、予測信号を減算器121及び加算器122に出力するように構成されている。 Specifically, the intra prediction unit 112 is configured to identify reference blocks included in the target frame and generate a prediction signal for each target block based on the identified reference blocks. Also, 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 a block that is referenced for the target block. For example, the reference block is a block adjacent to the target 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 transformation/quantization section 131 . Here, the subtractor 121 is configured to generate a prediction residual signal that is a difference between a prediction signal generated by intra prediction or inter prediction and an input image signal.
 加算器122は、逆変換・逆量子化部132から出力される予測残差信号に予測信号を加算してフィルタ処理前復号信号を生成し、かかるフィルタ処理前復号信号をイントラ予測部112及びインループフィルタ処理部150に出力するように構成されている。 The adder 122 adds the prediction signal to the prediction residual signal output from the inverse transform/inverse quantization unit 132 to generate a pre-filtering decoded signal. It is configured to output to the loop filter processing unit 150 .
 ここで、フィルタ処理前復号信号は、イントラ予測部112で用いる参照ブロックを構成する。 Here, the unfiltered decoded signal constitutes a reference block used by intra prediction section 112 .
 変換・量子化部131は、予測残差信号の変換処理を行うとともに、係数レベル値を取得するように構成されている。さらに、変換・量子化部131は、係数レベル値の量子化を行うように構成されていてもよい。 The transform/quantization unit 131 is configured to perform transform processing on the prediction residual signal and acquire the coefficient level value. Further, the transform/quantization unit 131 may be configured to quantize the coefficient level values.
 ここで、変換処理は、予測残差信号を周波数成分信号に変換する処理である。かかる変換処理としては、離散コサイン変換(Discrete Cosine Transform、以下、DCTと記す)に対応する基底パタン(変換行列)が用いられてもよく、離散サイン変換(Discrete Sine Transform、以下、DSTと記す)に対応する基底パタン(変換行列)が用いられてもよい。 Here, the transform processing is processing for transforming the prediction residual signal into a frequency component signal. As such transformation processing, a base pattern (transformation matrix) corresponding to a discrete cosine transform (hereinafter referred to as DCT) may be used, and a discrete sine transform (hereinafter referred to as DST) may be used. A base pattern (transformation matrix) corresponding to may be used.
 逆変換・逆量子化部132は、変換・量子化部131から出力される係数レベル値の逆変換処理を行うように構成されている。ここで、逆変換・逆量子化部132は、逆変換処理に先立って、係数レベル値の逆量子化を行うように構成されていてもよい。 The inverse transform/inverse quantization unit 132 is configured to perform inverse transform processing on the coefficient level values output from the transform/quantization unit 131 . Here, the inverse transform/inverse quantization unit 132 may be configured to perform inverse quantization of the coefficient level values prior to the inverse transform processing.
 ここで、逆変換処理及び逆量子化は、変換・量子化部131で行われる変換処理及び量子化とは逆の手順で行われる。 Here, the inverse transform processing and inverse quantization are performed in a procedure opposite to the transform processing and quantization performed by the transform/quantization unit 131 .
 符号化部140は、変換・量子化部131から出力された係数レベル値を符号化し、符号化データを出力するように構成されている。 The encoding unit 140 is configured to encode the coefficient level values output from the transform/quantization unit 131 and output encoded data.
 ここで、例えば、符号化は、係数レベル値の発生確率に基づいて異なる長さの符号を割り当てるエントロピー符号化である。 Here, for example, the encoding is entropy encoding that assigns codes of different lengths based on the probability of occurrence of coefficient level values.
 また、符号化部140は、係数レベル値に加えて、復号処理で用いる制御データを符号化するように構成されている。 Also, the encoding unit 140 is configured to encode control data used in the decoding process in addition to the coefficient level values.
 ここで、制御データは、符号化ブロックサイズ、予測ブロックサイズ、変換ブロックサイズ等のサイズデータを含んでもよい。 Here, the control data may include size data such as encoding block size, prediction block size, transform block size.
 インループフィルタ処理部150は、加算器122から出力されるフィルタ処理前復号信号に対してフィルタ処理を行うとともに、フィルタ処理後復号信号をフレームバッファ160に出力するように構成されている。 The in-loop filtering unit 150 is configured to perform filtering on the pre-filtering decoded signal output from the adder 122 and to output the post-filtering decoded signal to the frame buffer 160 .
 ここで、例えば、フィルタ処理は、ブロック(符号化ブロック、予測ブロック又は変換ブロック)の境界部分で生じる歪みを減少するデブロッキングフィルタ処理や画像符号化装置100から伝送されるフィルタ係数やフィルタ選択情報、画像の絵柄の局所的な性質等に基づいてフィルタを切り替える適応ループフィルタ処理である。 Here, for example, the filter processing includes deblocking filter processing for reducing distortion occurring at the boundary portion of blocks (encoding blocks, prediction blocks or transform blocks), filter coefficients and filter selection information transmitted from the image encoding device 100. , adaptive loop filtering that switches the filter based on the local characteristics of the pattern of the image.
 フレームバッファ160は、インター予測部111で用いる参照フレームを蓄積するように構成されている。 The frame buffer 160 is configured to accumulate reference frames used by the inter prediction section 111 .
 ここで、フィルタ処理後復号信号は、インター予測部111で用いる参照フレームを構成する。 Here, the decoded signal after filtering constitutes a reference frame used in inter prediction section 111 .
(画像復号装置200)
 以下、図3を参照して、本実施形態に係る画像復号装置200について説明する。図3は、本実施形態に係る画像復号装置200の機能ブロックの一例について示す図である。
(Image decoding device 200)
The image decoding device 200 according to this embodiment will be described below with reference to FIG. FIG. 3 is a diagram showing an example of functional blocks of the image decoding device 200 according to this embodiment.
 図3に示すように、画像復号装置200は、復号部210と、逆変換・逆量子化部220と、加算器230と、インター予測部241と、イントラ予測部242と、インループフィルタ処理部250と、フレームバッファ260とを有する。 As shown in FIG. 3, the image decoding device 200 includes a decoding unit 210, an inverse transform/inverse quantization unit 220, an adder 230, an inter prediction unit 241, an intra prediction unit 242, and an in-loop filtering 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 decode the coefficient level values.
 ここで、復号は、例えば、符号化部140で行われるエントロピー符号化とは逆の手順のエントロピー復号である。 Here, the decoding is, for example, entropy decoding in a procedure opposite to the entropy encoding performed by the encoding unit 140.
 また、復号部210は、符号化データの復号処理によって制御データを取得するように構成されていてもよい。なお、上述したように、制御データは、サイズデータやヘッダ情報等を含んでもよい。 Further, the decoding unit 210 may be configured to acquire the control data by decoding the encoded data. Note that, as described above, the control data may include size data, header information, and the like.
 逆変換・逆量子化部220は、復号部210から出力される係数レベル値の逆変換処理を行うように構成されている。ここで、逆変換・逆量子化部220は、逆変換処理に先立って、係数レベル値の逆量子化を行うように構成されていてもよい。 The inverse transform/inverse quantization unit 220 is configured to perform inverse transform processing on the coefficient level values output from the decoding unit 210 . Here, the inverse transform/inverse quantization unit 220 may be configured to perform inverse quantization of the coefficient level values prior to the inverse transform processing.
 ここで、逆変換処理及び逆量子化は、変換・量子化部131で行われる変換処理及び量子化とは逆の手順で行われる。 Here, the inverse transform processing and inverse quantization are performed in a procedure opposite to the transform processing and quantization performed by the transform/quantization unit 131 .
 加算器230は、逆変換・逆量子化部220から出力される予測残差信号に予測信号を加算してフィルタ処理前復号信号を生成し、フィルタ処理前復号信号をイントラ予測部242及びインループフィルタ処理部250に出力するように構成されている。 The adder 230 adds the prediction signal to the prediction residual signal output from the inverse transform/inverse quantization unit 220 to generate a pre-filtering decoded signal. It is configured to output to the filter processing unit 250 .
 ここで、フィルタ処理前復号信号は、イントラ予測部242で用いる参照ブロックを構成する。 Here, the unfiltered decoded signal constitutes a reference block used by the intra prediction unit 242.
 インター予測部241は、インター予測部111と同様に、インター予測(フレーム間予測)によって予測信号を生成するように構成されている。 The inter prediction section 241, like the inter prediction section 111, is configured to generate a prediction signal by inter prediction (inter-frame prediction).
 具体的には、インター予測部241は、符号化データから復号した動きベクトル及び参照フレームに含まれる参照信号に基づいて予測信号を生成するように構成されている。インター予測部241は、予測信号を加算器230に出力するように構成されている。 Specifically, the inter prediction unit 241 is configured to generate a prediction signal based on a motion vector decoded from encoded data and a reference signal included in a reference frame. The inter prediction section 241 is configured to output a prediction signal to the adder 230 .
 イントラ予測部242は、イントラ予測部112と同様に、イントラ予測(フレーム内予測)によって予測信号を生成するように構成されている。 The intra prediction unit 242, like the intra prediction unit 112, is configured to generate a prediction signal by intra prediction (intra-frame prediction).
 具体的には、イントラ予測部242は、対象フレームに含まれる参照ブロックを特定し、特定された参照ブロックに基づいて予測信号を予測ブロック毎に生成するように構成されている。イントラ予測部242は、予測信号を加算器230に出力するように構成されている。 Specifically, the intra prediction unit 242 is configured to identify reference blocks included in the target frame and generate a prediction signal for each prediction block based on the identified reference blocks. The intra prediction section 242 is configured to output the prediction signal to the adder 230 .
 インループフィルタ処理部250は、インループフィルタ処理部150と同様に、加算器230から出力されるフィルタ処理前復号信号に対してフィルタ処理を行うとともに、フィルタ処理後復号信号をフレームバッファ260に出力するように構成されている。 Similar to in-loop filtering section 150 , in-loop filtering section 250 performs filtering on the unfiltered decoded signal output from adder 230 and outputs the filtered decoded signal to frame buffer 260 . is configured to
 ここで、例えば、フィルタ処理は、ブロック(符号化ブロック、予測ブロック、変換ブロック或いはそれらを分割したサブブロック)の境界部分で生じる歪みを減少するデブロッキングフィルタ処理や、画像符号化装置100から伝送されるフィルタ係数やフィルタ選択情報や画像の絵柄の局所的な性質等に基づいてフィルタを切り替える適応ループフィルタ処理である。 Here, for example, the filter processing includes deblocking filter processing for reducing distortion occurring at boundaries of blocks (encoding blocks, prediction blocks, transform blocks, or sub-blocks obtained by dividing them), transmission from the image encoding device 100 This is adaptive loop filtering that switches filters based on the filter coefficients, filter selection information, and local characteristics of the pattern of the image.
 フレームバッファ260は、フレームバッファ160と同様に、インター予測部241で用いる参照フレームを蓄積するように構成されている。 The frame buffer 260, like the frame buffer 160, is configured to accumulate reference frames used in the inter prediction section 241.
 ここで、フィルタ処理後復号信号は、インター予測部241で用いる参照フレームを構成する。 Here, the decoded signal after filtering constitutes a reference frame used by the inter prediction unit 241 .
(インター予測部241)
 以下、図4を参照して、本実施形態に係るインター予測部241について説明する。図4は、本実施形態に係るインター予測部241の機能ブロックの一例について示す図である。
(Inter prediction unit 241)
The inter prediction unit 241 according to this embodiment will be described below with reference to FIG. FIG. 4 is a diagram showing an example of functional blocks of the inter prediction unit 241 according to this embodiment.
 図4に示すように、インター予測部241は、動きベクトル(MV)導出部241Aと、動き補償(MC)予測信号生成部241Bとを有する。 As shown in FIG. 4, the inter prediction unit 241 has a motion vector (MV) derivation unit 241A and a motion compensation (MC) prediction signal generation unit 241B.
 動きベクトル(MV)導出部241Aは、フレームバッファ260から入力される対象フレーム及び参照フレームと、画像符号化装置100から受信する制御データの復号とによって、対象ブロックの動きベクトルを取得し、後段の動き補償(MC)予測信号生成部241Bに動きベクトルを出力するように構成されている。 The motion vector (MV) derivation unit 241A acquires the motion vector of the target block by decoding the target frame and the reference frame input from the frame buffer 260 and the control data received from the image encoding device 100, It is configured to output a motion vector to a motion compensation (MC) prediction signal generator 241B.
 ここで、対象ブロックの動きベクトルの導出方法としては、非特許文献1で開示されているAMVP(Adaptive Motion Vector Prediction)モード及びマージモードという技術が使用される。 Here, as a method of deriving the motion vector of the target block, the techniques of AMVP (Adaptive Motion Vector Prediction) mode and merge mode disclosed in Non-Patent Document 1 are used.
 さらに、AMVPモード及びマージモードには、対象ブロックがサブブロック単位に分割されて、かかるサブブロック(以下、対象サブブロック)単位で動きベクトルが導出されるAffineモードやSbTMVP(Sub-block Temporal Motion Vector Prediction)モードが含まれる。 Furthermore, AMVP mode and merge mode include Affine mode and SbTMVP (Sub-block Temporal Motion Vector) in which a target block is divided into sub-block units and a motion vector is derived for each sub-block (hereinafter referred to as target sub-block). Prediction) mode.
 対象ブロックの動きベクトルがいずれのモードで導出されるかは、非特許文献1又は非特許文献2で開示されている技術をそのまま本実施形態に適用することができるため、説明については省略する。 Since the technique disclosed in Non-Patent Document 1 or Non-Patent Document 2 can be applied to the present embodiment as it is, the mode for deriving the motion vector of the target block will be omitted.
 動き補償(MC)予測信号生成部241Bは、動きベクトル(MV)導出部241Aから入力される対象ブロック又は対象サブブロックの動きベクトル(以下、対象MV)に基づいて、それらの予測信号を生成するように構成されている。動きベクトルから予測信号を生成する方法の詳細については後述する。 The motion compensation (MC) prediction signal generation unit 241B generates prediction signals based on the motion vector (hereinafter referred to as target MV) of the target block or target sub-block input from the motion vector (MV) derivation unit 241A. is configured as The details of the method of generating the prediction signal from the motion vector will be described later.
(動き補償(MC)予測信号生成部241B)
 以下、図5を参照して、本実施形態に係る動き補償(MC)予測信号生成部241Bについて説明する。図5は、本実施形態に係る動き補償(MC)予測部241Bの機能ブロックの一例について示す図である。
(Motion Compensation (MC) Prediction Signal Generation Unit 241B)
The motion compensation (MC) prediction signal generator 241B according to this embodiment will be described below with reference to FIG. FIG. 5 is a diagram showing an example of functional blocks of the motion compensation (MC) prediction unit 241B according to this embodiment.
 図5に示すように、動き補償(MC)予測部241Bは、通常MC処理部241B1と、OBMC適用可不可判定部241B2と、OBMC処理部241B3とを有する。 As shown in FIG. 5, the motion compensation (MC) prediction unit 241B has a normal MC processing unit 241B1, an OBMC applicability determination unit 241B2, and an OBMC processing unit 241B3.
 通常MC処理部241B1は、対象MVに基づいて、対象ブロック又は対象サブブロックに対する通常MC予測信号を生成するように構成されている。 The normal MC processing unit 241B1 is configured to generate a normal MC prediction signal for the target block or target sub-block based on the target MV.
 ここで、対象MVが小数画素精度位置を示す場合は、補間フィルタが使用されて、対象ブロック又は対象サブブロックの通常MC予測信号が生成される。 Here, if the target MV indicates a sub-pixel precision position, an interpolation filter is used to generate a normal MC prediction signal for the target block or target sub-block.
 なお、補間フィルタが使用される場合、かかる補間フィルタの種別は、復号部210で復号された制御データ及び動きベクトル(MV)導出部241Aで動きベクトルを導出した際のモード情報に基づいて選択される。ここで、通常MC向け補間フィルタ種別の詳細については後述する。 When an interpolation filter is used, the type of interpolation filter is selected based on the control data decoded by the decoding unit 210 and the mode information when the motion vector is derived by the motion vector (MV) deriving unit 241A. be. Here, the details of the interpolation filter type for normal MC will be described later.
 OBMC適用可不可判定部241B2は、対象ブロック又は対象サブブロックに対するOBMCの適用可不可を判定するように構成されている。 The OBMC applicability determination unit 241B2 is configured to determine the applicability of OBMC to the target block or target sub-block.
 ここで、OBMCの適用可不可の判定処理は、非特許文献2のように、ブロック境界又はサブブロック境界に面する4×4画素ブロック単位で実施されてもよい。 Here, the process of determining whether or not OBMC is applicable may be performed in units of 4×4 pixel blocks facing block boundaries or sub-block boundaries, as in Non-Patent Document 2.
 OBMCが適用可と判定される場合は、OBMC適用可不可判定部241B2は、後段のOBMC処理241B3に対して、その旨を通知するように構成されている。 When it is determined that OBMC is applicable, the OBMC applicability determining unit 241B2 is configured to notify the subsequent OBMC processing 241B3 of that effect.
 一方、OBMCが適用不可と判定される場合は、OBMC適用可不可判定部241B2は、通常MC処理部241B1で生成された通常MC予測信号をインター予測信号として出力するように構成されている。 On the other hand, when it is determined that OBMC is not applicable, the OBMC applicability determination unit 241B2 is configured to output the normal MC prediction signal generated by the normal MC processing unit 241B1 as an inter prediction signal.
 ここで、OBMCの適用可不可の判定方法の詳細については後述する。 Here, the details of the method for determining whether or not OBMC is applicable will be described later.
 OBMC処理部241B3は、対象ブロックの境界(以下、ブロック境界)又は対象サブブロックの境界(以下、サブブロック境界)を跨いで隣接するブロック(以下、隣接ブロック)の有する動きベクトル(以下、隣接MV)及び参照フレームを用いて、対象ブロック又は対象サブブロックに対して、ブロック境界又はサブブロック境界から任意のライン数分(以下、ブレンディングライン数)の予測信号(以下、OBMC予測信号)を生成するように構成されている。 The OBMC processing unit 241B3 calculates motion vectors (hereinafter, adjacent MV ) and a reference frame to generate a prediction signal (hereinafter referred to as an OBMC prediction signal) for an arbitrary number of lines (hereinafter referred to as the number of blending lines) from the block boundary or sub-block boundary for the target block or target sub-block. is configured as
 ここで、OBMC予測信号の生成処理は、非特許文献2のように、ブロック境界又はサブブロック境界に面する4×4画素ブロック単位で実施されてもよい。 Here, as in Non-Patent Document 2, the OBMC prediction signal generation process may be performed in units of 4×4 pixel blocks facing block boundaries or sub-block boundaries.
 OBMC処理部241B3は、このように生成したOBMC予測信号を、対象ブロック又は対象サブブロックの通常MC予測信号にブレンディングして、インター予測信号として出力するように構成されている。 The OBMC processing unit 241B3 is configured to blend the OBMC prediction signal generated in this way with the normal MC prediction signal of the target block or target sub-block, and output as an inter prediction signal.
 ここで、OBMC予測信号の生成手法の詳細については後述する。 Details of the method of generating the OBMC prediction signal will be described later.
(通常MC及びOBMCによる参照画素領域(メモリ帯域)の拡大)
 以下、図6~9を参照して、非特許文献1、非特許文献2、特願2018-246858(以下、先出願)及び本実施形態のそれぞれに係る通常MC及びOBMCによる参照画素領域の拡大について説明する。なお、かかる先出願と同様の内容について、IEEE ICIP2020にて発表されている。
(Enlargement of reference pixel area (memory band) by normal MC and OBMC)
6 to 9, enlargement of the reference pixel region by normal MC and OBMC according to Non-Patent Document 1, Non-Patent Document 2, Japanese Patent Application No. 2018-246858 (hereinafter referred to as the prior application), and the present embodiment, respectively, with reference to FIGS. will be explained. Note that the content similar to that of the earlier application was announced at IEEE ICIP2020.
 図6は、対象MV及び隣接MVから通常MC予測信号及びOBMC予測信号が生成される仕組みの一例を示す図である。 FIG. 6 is a diagram showing an example of a mechanism for generating a normal MC prediction signal and an OBMC prediction signal from a target MV and adjacent MVs.
 図6に示すように、通常MCは、対象MVを用いて参照フレームから通常MC予測信号の生成のために参照画素を取得する。このとき、対象MVが小数画素精度位置を参照する場合、補間フィルタを用いて通常MC予測信号が生成されるため、対象ブロックに対応する参照ブロックの面積に対して参照画素領域が拡大する。 As shown in FIG. 6, normal MC obtains reference pixels for generating a normal MC prediction signal from a reference frame using the target MV. At this time, when the target MV refers to sub-pixel precision positions, an interpolation filter is used to generate a normal MC prediction signal, so the reference pixel area is expanded with respect to the area of the reference block corresponding to the target block.
 他方、OBMCは、隣接MVを用いて参照フレームからOBMC予測信号向けの参照画素を取得する。このとき、参照画素の取得エリアは、対象ブロック又は対象サブブロックの境界を跨いだブレンディングライン数分である。 On the other hand, OBMC uses adjacent MVs to obtain reference pixels for OBMC prediction signals from reference frames. At this time, the area for obtaining reference pixels is the number of blending lines across the boundary of the target block or target sub-block.
 さらに、隣接MVが小数画素精度位置を参照する場合は、通常MCと同様に、補間フィルタを用いてOBMC予測信号を生成するために、上述の参照画素の取得エリアに対して、参照画素領域が拡大する。 Furthermore, when the adjacent MV refers to the sub-pixel precision position, the reference pixel region is Expanding.
 通常MC予測信号及びOBMC予測信号を生成するために参照フレームから取得する参照画素領域のことを、本実施形態では、メモリ帯域と定義する。 In this embodiment, the reference pixel area obtained from the reference frame to generate the normal MC prediction signal and OBMC prediction signal is defined as the memory band.
 図7~図9は、通常MC及びOBMCで共通するメモリ帯域の拡大要素の一例を示す図である。 7 to 9 are diagrams showing examples of memory band expansion elements common to normal MC and OBMC.
 図7は、補間フィルタ長(タップ数)が長いほど、参照画素領域が拡大する一例を示している。具体的に、図7の例では、補間フィルタ長が2タップ、4タップ及び8タップの場合の参照画素領域を比較している。 FIG. 7 shows an example in which the longer the interpolation filter length (the number of taps), the larger the reference pixel area. Specifically, in the example of FIG. 7, the reference pixel areas are compared when the interpolation filter length is 2 taps, 4 taps, and 8 taps.
 図8は、対象MV又は隣接MVの本数が多いほど、参照画素領域が拡大する一例を示している。具体的に、図8の例では、動きベクトルが1本の予測(片予測)及び2本の予測(双予測)の参照画素領域を比較している。 FIG. 8 shows an example in which the reference pixel area expands as the number of target MVs or adjacent MVs increases. Specifically, in the example of FIG. 8, the reference pixel regions for prediction with one motion vector (uni-prediction) and prediction with two motion vectors (bi-prediction) are compared.
 図9は、対象ブロック又は対象サブブロックのサイズが小さいほど、参照画素領域が拡大する一例を示している。具体的に、図9の例では、16×16画素ブロックと4×4画素ブロックの参照画素領域を比較している。 FIG. 9 shows an example in which the smaller the target block or target sub-block is, the larger the reference pixel area is. Specifically, in the example of FIG. 9, reference pixel areas of a 16×16 pixel block and a 4×4 pixel block are compared.
 図10は、OBMCにおけるメモリ帯域の拡大要素の一例を示す図である。 FIG. 10 is a diagram showing an example of memory bandwidth expansion elements in OBMC.
 図10Aに示すように、OBMCの適用箇所が全部で4面あるブロック境界又はサブブロック境界に対して多いほど参照画素領域は拡大する。また、図10Bに示すように、OBMCのブレンディングライン数が多いほど、参照画素領域は拡大する。 As shown in FIG. 10A, the reference pixel area expands as the number of OBMC application locations increases with respect to block boundaries or sub-block boundaries having a total of four surfaces. Also, as shown in FIG. 10B, the larger the number of OBMC blending lines, the larger the reference pixel area.
(通常MC向け補間フィルタ種別)
 以下、図11及び図12を参照して、非特許文献1、非特許文献2、先出願及び本実施形態のそれぞれに係る通常MC向け補間フィルタ種別について説明する。
(Interpolation filter type for normal MC)
Hereinafter, interpolation filter types for normal MC according to Non-Patent Document 1, Non-Patent Document 2, the prior application, and the present embodiment will be described with reference to FIGS. 11 and 12 .
 図11は、非特許文献1、非特許文献2、先出願及び本実施形態のそれぞれに係る通常MC向け補間フィルタ種別とOBMC向け補間フィルタ種別との比較表の一例である。なお、OBMC向け補間フィルタ種別については後述する。 FIG. 11 is an example of a comparison table of normal MC interpolation filter types and OBMC interpolation filter types according to Non-Patent Document 1, Non-Patent Document 2, the prior application, and the present embodiment. Note that the types of interpolation filters for OBMC will be described later.
 図12は、非特許文献1及び非特許文献2で開示されている8タップ及び12タップの補間フィルタの周波数応答特性の一例を示す図である。 FIG. 12 is a diagram showing an example of frequency response characteristics of the 8-tap and 12-tap interpolation filters disclosed in Non-Patent Document 1 and Non-Patent Document 2. FIG.
 非特許文献1の通常MC向け補間フィルタ種別は、図11に示すように、対象ブロック又は対象サブブロックが、以下の3つの条件のいずれに該当するかで分岐する。
A1.輝度信号かつAffine以外のモードである場合
A2.輝度信号かつAffineモードである場合
A3.色差信号である場合
 対象ブロック又は対象サブブロックが輝度信号かつAffine以外のモードである場合(上述のA1.の場合)は、さらに以下の2つの条件に分岐する。
As shown in FIG. 11, the interpolation filter type for normal MC in Non-Patent Document 1 branches depending on which of the following three conditions the target block or target sub-block meets.
A1. In the case of a luminance signal and a mode other than Affine A2. In case of luminance signal and Affine mode A3. Color Difference Signal If the target block or target sub-block is a luminance signal and is in a mode other than Affine (case A1. above), the following two conditions are applied.
 第1に、対象ブロックのhpelIfIdxが有効(hpelIfIdx=1)かつ対象MVが1/2画素精度位置を参照する場合は、6タップのGaussianフィルタが選択される。ここで、hpelIfIdxは、非特許文献1で開示されているSIF(Switchable Interpolation Filter)の適用可不可を示す内部パラメータである。 First, if the target block's hpelIfIdx is valid (hpelIfIdx=1) and the target MV references half-pixel precision locations, a 6-tap Gaussian filter is selected. Here, hpelIfIdx is an internal parameter indicating whether or not the SIF (Switchable Interpolation Filter) disclosed in Non-Patent Document 1 is applicable.
 第2に、上述以外の場合には、非特許文献1で開示されている8タップの補間フィルタが選択される。 Second, in cases other than the above, the 8-tap interpolation filter disclosed in Non-Patent Document 1 is selected.
 対象ブロック又は対象サブブロックが輝度信号かつAffineモードである場合(上述のA2.の場合)は、非特許文献1で開示されている6タップの補間フィルタが選択される。 When the target block or target sub-block is a luminance signal and is in Affine mode (case A2. above), the 6-tap interpolation filter disclosed in Non-Patent Document 1 is selected.
 対象ブロック又は対象サブブロックが色差信号(ただし、輝度信号に対してダウンサンプリングされた色差信号)である場合(上述のA3.の場合)は、非特許文献1で開示されている4タップの補間フィルタが選択される。 When the target block or target sub-block is a chrominance signal (however, the chrominance signal down-sampled with respect to the luminance signal) (case A3 above), the 4-tap interpolation disclosed in Non-Patent Document 1 A filter is selected.
 図11に示すように、非特許文献2の通常MC向け補間フィルタ種別は、対象ブロック又は対象サブブロックが、以下の3つの条件のいずれに該当するかで分岐する。
B1.輝度信号かつAffine以外のモードである場合
B2.輝度信号かつAffineモードである場合
B3.色差信号である場合
 対象ブロック又は対象サブブロックが輝度信号かつAffine以外のモードである場合(上述のB1.の場合)は、さらに以下の2つの条件に分岐する。
As shown in FIG. 11, the interpolation filter type for normal MC in Non-Patent Document 2 branches depending on which of the following three conditions the target block or target sub-block meets.
B1. In the case of a luminance signal and a mode other than Affine B2. Luminance signal and Affine mode B3. Color-difference signal If the target block or target sub-block is a luminance signal and is in a mode other than Affine (case B1 above), the following two conditions are applied.
 第1に、対象ブロックのhpelIfIdxが有効(hpelIfIdx=1)かつ対象MVが1/2画素精度位置を参照する場合は、6タップのGaussianフィルタが選択される。 First, if the target block's hpelIfIdx is valid (hpelIfIdx=1) and the target MV references half-pixel precision locations, a 6-tap Gaussian filter is selected.
 第2に、上述以外の場合は、非特許文献2で開示されている12タップの補間フィルタが選択される。 Second, in cases other than the above, the 12-tap interpolation filter disclosed in Non-Patent Document 2 is selected.
 対象ブロック又は対象サブブロックが輝度信号かつAffineモードである場合(上述のB2.の場合)は、非特許文献2で開示されている12タップの補間フィルタが選択される。 When the target block or target sub-block is a luminance signal and is in Affine mode (case B2 above), the 12-tap interpolation filter disclosed in Non-Patent Document 2 is selected.
 対象ブロック又は対象サブブロックが色差信号(ただし、輝度信号に対してダウンサンプリングされた色差信号)である場合(上述のB3.の場合)は、非特許文献2で開示されている4タップの補間フィルタが選択される。 When the target block or target sub-block is a chrominance signal (however, the chrominance signal down-sampled with respect to the luminance signal) (case B3 above), the 4-tap interpolation disclosed in Non-Patent Document 2 A filter is selected.
 以上のように、非特許文献2は、非特許文献1に対して補間フィルタ長(タップ数)が拡張している。これにより、非特許文献2は、非特許文献1に対して、図12に示すように、遷移領域の周波数応答が急峻になるため、結果として画像のエッジ部分に対する予測誤差が低減し、符号化性能が向上する。他方、非特許文献2は、非特許文献1に対して、メモリ帯域が増加する。 As described above, Non-Patent Document 2 has an extended interpolation filter length (number of taps) compared to Non-Patent Document 1. As a result, compared to Non-Patent Document 1, Non-Patent Document 2 has a steeper frequency response in the transition region as shown in FIG. Better performance. On the other hand, Non-Patent Document 2 has an increased memory bandwidth compared to Non-Patent Document 1.
 図11に示すように、先出願の通常MC向け補間フィルタ種別は、非特許文献1と同じ構成である。 As shown in FIG. 11, the interpolation filter type for normal MC of the prior application has the same configuration as Non-Patent Document 1.
 図11に示すように、本実施形態に係る通常MC向け補間フィルタ種別は、非特許文献1又は非特許文献2と同じ構成であってもよい。ただし、本実施形態に係る通常MC向け補間フィルタ種別が、非特許文献2と同じ構成をとる場合は、非特許文献1に対して非特許文献2と同様にメモリ帯域が増加するが、符号化性能が向上する。 As shown in FIG. 11, the interpolation filter type for normal MC according to the present embodiment may have the same configuration as in Non-Patent Document 1 or Non-Patent Document 2. However, when the interpolation filter type for normal MC according to the present embodiment has the same configuration as Non-Patent Document 2, the memory band increases as compared to Non-Patent Document 2 as compared to Non-Patent Document 2, but encoding Better performance.
(通常MCが適用可能なブロックサイズ)
 以下、図13を参照して、非特許文献1、非特許文献2、先出願及び本実施形態のそれぞれに係る通常MC向け補間フィルタ種別について説明する。
(Block size to which MC is normally applicable)
Hereinafter, interpolation filter types for normal MC according to Non-Patent Document 1, Non-Patent Document 2, the prior application, and the present embodiment will be described with reference to FIG.
 図13は、非特許文献1、非特許文献2、先出願及び本実施形態のそれぞれに係る通常MCが適用可能な片予測又は双予測の対象ブロック又は対象サブブロックの最小サイズの比較表の一例である。以下、片予測の対象ブロック又は対象サブブロックの最小サイズをSUni-Minと表記し、双測の対象ブロック又は対象サブブロックの最小サイズをSBi-Minと表記する。 FIG. 13 is an example of a comparison table of minimum sizes of uni-prediction or bi-prediction target blocks or target sub-blocks to which normal MC can be applied according to Non-Patent Document 1, Non-Patent Document 2, the prior application, and the present embodiment. is. Hereinafter, the minimum size of a target block or target sub-block for uni-prediction is denoted as S Uni-Min , and the minimum size of a target block or target sub-block for bi-prediction is denoted as S Bi-Min .
 非特許文献1におけるSUni-Min及びSBi-Minは、それぞれ4×8/8×4画素及び8×8画素である。 S Uni-Min and S Bi-Min in Non-Patent Document 1 are 4×8/8×4 pixels and 8×8 pixels, respectively.
 非特許文献2におけるSUni-Min及びSBi-Minは、それぞれ4×4画素及び4×4画素である。これにより、画像特性に応じてより細かいブロックサイズで動き補償予測が出来るため、非特許文献2は、非特許文献1に対して、予測誤差が低減して符号化性能が向上するが、メモリ帯域が増加する。 S Uni-Min and S Bi-Min in Non-Patent Document 2 are 4×4 pixels and 4×4 pixels, respectively. As a result, motion compensation prediction can be performed with a finer block size according to the image characteristics. increases.
 先出願におけるSUni-Min及びSBi-Minは、非特許文献1と同じである。 S Uni-Min and S Bi-Min in the prior application are the same as in Non-Patent Document 1.
 図13に示すように、本実施形態におけるSUni-Min及びSBi-Minは、非特許文献1又は非特許文献2と同じ構成であってもよい。ただし、本実施形態におけるSUni-Min及びSBi-Minが、非特許文献2と同じ構成をとる場合は、非特許文献1に対して非特許文献2と同様に符号化性能が向上するが、メモリ帯域が増加する。 As shown in FIG. 13, S Uni-Min and S Bi-Min in this embodiment may have the same configuration as in Non-Patent Document 1 or Non-Patent Document 2. FIG. However, when S Uni-Min and S Bi-Min in the present embodiment have the same configuration as Non-Patent Document 2, the coding performance is improved in the same manner as Non-Patent Document 2 with respect to Non-Patent Document 1. , the memory bandwidth increases.
(OBMCの適用可能なブロックサイズ)
 以下、図14を参照して、非特許文献2、先出願及び本実施形態のそれぞれに係るOBMCの適用可能なブロックサイズについて説明する。
(Applicable block size of OBMC)
Hereinafter, with reference to FIG. 14, block sizes applicable to OBMC according to Non-Patent Document 2, the prior application, and the present embodiment will be described.
 図14は、非特許文献2、先出願及び本実施形態のそれぞれに係るOBMCの適用可能なブロックサイズの比較表の一例である。 FIG. 14 is an example of a comparison table of block sizes applicable to OBMC according to Non-Patent Document 2, the prior application, and the present embodiment.
 非特許文献2は、片予測及び双予測ともに64画素以上のブロックに対してOBMCを適用可能としている。すなわち、非特許文献2は、32画素以下のブロック(4×4画素又は4×8/8×4画素)に対してはOBMCが適用されない構成となっている。 Non-Patent Document 2 makes it possible to apply OBMC to blocks of 64 pixels or more for both uni-prediction and bi-prediction. That is, Non-Patent Document 2 has a configuration in which OBMC is not applied to blocks of 32 pixels or less (4×4 pixels or 4×8/8×4 pixels).
 先出願は、OBMCを片予測のブロックに対して適用可能としている。さらに、その適用可能なブロックサイズは、非特許文献1の最小サイズである4×8/8×4画素以上である。 The prior application states that OBMC can be applied to uni-prediction blocks. Furthermore, the applicable block size is 4×8/8×4 pixels or more, which is the minimum size of Non-Patent Document 1.
 これにより、先出願では、OBMCによるメモリ帯域の増加を、片予測の通常MCに限定できる。また、後述する対象ブロック又は対象サブブロックのブロックサイズ又は隣接MV数に応じた補間フィルタ長(タップ数)の制御により、メモリ帯域が増加しやすい小サイズブロックからOBMCが適用できるため、メモリ帯域の増加を抑制しつつ、符号化性能の改善を維持できる。 As a result, in the prior application, the increase in memory bandwidth due to OBMC can be limited to uni-prediction normal MC. In addition, by controlling the interpolation filter length (number of taps) according to the block size of the target block or target sub-block or the number of adjacent MVs, which will be described later, OBMC can be applied from small-sized blocks where the memory bandwidth tends to increase. The improvement in coding performance can be maintained while suppressing the increase.
 本実施形態は、上述の従来技術に対して、OBMCを片予測又は双予測のブロックに対してそれぞれ非特許文献2の最小サイズである4×4画素以上で適用可能とする。 In contrast to the conventional technology described above, the present embodiment enables OBMC to be applied to uni-prediction or bi-prediction blocks with a minimum size of 4×4 pixels or more, which is the minimum size of Non-Patent Document 2, respectively.
 これにより、本実施形態では、OBMCが適用可能なブロック数が増えて、OBMCの潜在的な性能改善効果が引き出せる一方で、メモリ帯域の増加及び符号量の増加(OBMCの適用可不可を判定するフラグの復号量(エンコーダ観点では伝送量)の増加)が新たに発生する。この2つの課題の解決方法の詳細については後述する。 As a result, in the present embodiment, the number of blocks to which OBMC can be applied is increased, and the potential performance improvement effect of OBMC can be exploited. A new increase in flag decoding amount (transmission amount from the encoder's point of view) occurs. The details of how to solve these two problems will be described later.
 変更例として、画像復号装置200に予め用意されている補間フィルタのタップ長によっては(例えば、8タップフィルタの場合は)、OBMCを片予測又は双予測のブロックに対して、32画素以上としてもよい。 As a modification, depending on the tap length of the interpolation filter prepared in advance in the image decoding device 200 (for example, in the case of an 8-tap filter), OBMC may be set to 32 pixels or more for uni-prediction or bi-prediction blocks. good.
(OBMC向け補間フィルタ種別)
 以下、図11を参照して、非特許文献2、先出願及び本実施形態のそれぞれに係るOBMC向け補間フィルタ種別について説明する。
(Interpolation filter type for OBMC)
OBMC interpolation filter types according to Non-Patent Document 2, the prior application, and the present embodiment will be described below with reference to FIG.
 図11は、非特許文献1、非特許文献2、先出願及び本実施形態のそれぞれに係る通常MC向け補間フィルタ種別及びOBMC向け補間フィルタ種別の比較表の一例である。なお、通常MC向け補間フィルタ種別については、上述の通りである。 FIG. 11 is an example of a comparison table of interpolation filter types for normal MC and interpolation filter types for OBMC according to Non-Patent Document 1, Non-Patent Document 2, the prior application, and the present embodiment, respectively. Note that the types of interpolation filters for normal MC are as described above.
 図11に示すように、非特許文献2のOBMC向け補間フィルタ種別は、対象ブロック又は対象サブブロックが、以下の2つの条件のいずれに該当するかで分岐する。
C1.輝度信号である場合
C2.色差信号である場合
 対象ブロック又は対象サブブロックが輝度信号である場合(上述のC1.の場合)は、さらに以下2つの条件に分岐する。
As shown in FIG. 11, the OBMC interpolation filter type of Non-Patent Document 2 branches depending on which of the following two conditions the target block or target sub-block meets.
C1. If it is a luminance signal C2. Color difference signal When the target block or target sub-block is a luminance signal (C1. above), the following two conditions are branched.
 第1に、対象ブロックのhpelIfIdxが有効(hpelIfIdx=1)かつ隣接MVが1/2画素精度位置を参照する場合は、6タップのGaussianフィルタが選択される。 First, if the target block's hpelIfIdx is valid (hpelIfIdx=1) and the neighboring MVs refer to half-pixel precision locations, a 6-tap Gaussian filter is selected.
 第2に、上述以外の場合は、非特許文献1で開示されている12タップの補間フィルタが選択される。 Second, in cases other than the above, the 12-tap interpolation filter disclosed in Non-Patent Document 1 is selected.
 対象ブロック又は対象サブブロックが色差信号(ただし、輝度信号に対してダウンサンプリングされた色差信号)である場合(上述のC2.の場合)は、非特許文献1で開示されている4タップの補間フィルタが選択される。 When the target block or target sub-block is a chrominance signal (however, the chrominance signal down-sampled with respect to the luminance signal) (case C2 above), the 4-tap interpolation disclosed in Non-Patent Document 1 A filter is selected.
 図11に示すように、先出願のOBMC向け補間フィルタ種別は、対象ブロック又は対象サブブロックが、以下の2つの条件のいずれに該当するかで分岐する。
D1.輝度信号である場合
D2.色差信号である場合
 対象ブロック又は対象サブブロックが輝度信号である場合(上述のD1.の場合)は、それらのブロックのサイズに応じて非特許文献1で開示されている2タップから8タップの補間フィルタが選択される。
As shown in FIG. 11, the OBMC interpolation filter type of the prior application branches depending on whether the target block or target sub-block satisfies the following two conditions.
D1. If it is a luminance signal D2. When the target block or target sub-block is a luminance signal (in the case of D1. above), 2-tap to 8-tap disclosed in Non-Patent Document 1 can be selected depending on the size of the block. An interpolation filter is selected.
 具体的に、ブロックサイズが小さいほど補間フィルタ長が短い(ショートタップの)補間フィルタ(例えば、2タップのフィルタ)が選択され、ブロックサイズが大きいほど補間フィルタ長が長い(ロングタップの)補間フィルタ(例えば、8タップのフィルタ)が選択される。これにより、メモリ帯域の増加を一定程度に抑制しつつ、符号化性能改善効果を維持できる。 Specifically, the smaller the block size, the shorter the interpolation filter length (short tap) interpolation filter (eg, 2-tap filter) is selected, and the larger the block size, the longer the interpolation filter length (long tap) interpolation filter. (eg, an 8-tap filter) is selected. As a result, the effect of improving the coding performance can be maintained while suppressing an increase in memory bandwidth to a certain degree.
 対象ブロック又は対象サブブロックが色差信号(ただし、輝度信号に対してダウンサンプリングされた色差信号)である場合(上述のD2.の場合)は、非特許文献1で開示されている2タップから4タップの補間フィルタが選択される。具体的に、ブロックサイズが小さいほどショートタップの補間フィルタが選択され、ブロックサイズが大きいほどロングタップの補間フィルタが選択される。 When the target block or target sub-block is a chrominance signal (however, the chrominance signal down-sampled with respect to the luminance signal) (case D2. above), 2 taps disclosed in Non-Patent Document 1 to 4 An interpolation filter of taps is selected. Specifically, a short-tap interpolation filter is selected for a smaller block size, and a long-tap interpolation filter is selected for a larger block size.
 どのブロックサイズに対して、どの補間フィルタ長(タップ数)の補間フィルタが選択できるかは、予め設計者が意図するメモリ帯域の上限値を考慮して、それを下回るように設計してもよいことを示している。 Which interpolation filter length (number of taps) of the interpolation filter can be selected for which block size may be designed to be below the upper limit of the memory bandwidth intended by the designer in advance. It is shown that.
 また、先出願では、補間フィルタ種別の選択方法の変更例として、対象ブロック又は対象サブブロックのブロックサイズだけでなく、隣接MV数を鑑みて、選択可能な補間フィルタ長を可変させる方法を示している。 In addition, in the prior application, as a modification of the interpolation filter type selection method, a method of varying the selectable interpolation filter length in consideration of not only the block size of the target block or target sub-block but also the number of adjacent MVs is shown. there is
 以上に従えば、先出願のOBMC向け補間フィルタ種別の選択方法を用いれば、メモリ帯域の増加を一定程度に抑制しつつ、符号化性能改善効果を維持できる。 According to the above, by using the interpolation filter type selection method for OBMC of the prior application, it is possible to maintain the effect of improving the coding performance while suppressing the increase in the memory band to a certain extent.
 一方で、小サイズブロックに対してOBMCの補間フィルタ長を短くすることは、OBMCの潜在的な符号化性能改善効果を引き出せないことを意味する。なぜなら、前述の通り、補間フィルタ長が長くなれば、急峻なエッジ等に対する予測誤差が低減するが、逆に補間フィルタ長が短くなれば、急峻なエッジ等に対する予測誤差が増加する。 On the other hand, shortening the interpolation filter length of OBMC for small-sized blocks means that the potential effect of improving the coding performance of OBMC cannot be exploited. This is because, as described above, the longer the interpolation filter length, the smaller the prediction error for sharp edges and the like, but the shorter the interpolation filter length, the larger the prediction error for steep edges and the like.
 小サイズブロックは、急峻なエッジや動きが多い複雑な画像特性を有する領域で選択されやすいため、補間フィルタ長が長い方が、予測誤差が低減させられる。 Since small-sized blocks are more likely to be selected in areas with complex image characteristics such as sharp edges and a lot of motion, the longer the interpolation filter length is, the more the prediction error is reduced.
 また、小サイズブロックは、その性質上、隣接するブロック間のMVの差が大きくなりやすいため、OBMCによるブロック境界又はサブブロック境界の予測誤差の低減効果が得られやすい。 In addition, since small-sized blocks tend to have large differences in MV between adjacent blocks due to their nature, OBMC is likely to reduce prediction errors at block boundaries or sub-block boundaries.
 かかる従来技術の課題を考慮して、本実施形態は、先出願とは逆に、対象ブロック又は対象サブブロックのブロックサイズに応じて、補間フィルタ長を以下の様に制御する。 Considering such a problem of the conventional technology, the present embodiment controls the interpolation filter length as follows according to the block size of the target block or target sub-block, contrary to the prior application.
 対象ブロック又は対象サブブロックのブロックサイズが小さい場合は、補間フィルタ長を長くする(ロングタップの補間フィルタをOBMC向けに使用する)
 一方、対象ブロック又は対象サブブロックのブロックサイズが大きい場合は、補間フィルタ長を短くする(ショートタップの補間フィルタをOBMC向けに使用する)
 ここで、補間フィルタ長を切替えるブロックサイズの閾値を複数個設けてもよい。例えば、32画素以下(4×4画素又は4×8/8×4画素)といった小サイズブロックに対してはロングタップ(12タップや8タップ)の補間フィルタを用いる。
If the block size of the target block or target sub-block is small, lengthen the interpolation filter length (use a long-tap interpolation filter for OBMC)
On the other hand, if the block size of the target block or target sub-block is large, shorten the interpolation filter length (use a short-tap interpolation filter for OBMC).
Here, a plurality of block size thresholds for switching the interpolation filter length may be provided. For example, a long-tap (12-tap or 8-tap) interpolation filter is used for a small size block of 32 pixels or less (4×4 pixels or 4×8/8×4 pixels).
 一方で、256画素以上又は512画素以上又は1024画素以上といった大サイズブロックに対しては、ショートタップ(4タップや2タップ)の補間フィルタを用いる。 On the other hand, for large-sized blocks such as 256 pixels or more, 512 pixels or more, or 1024 pixels or more, a short-tap (4-tap or 2-tap) interpolation filter is used.
 変更例として、大サイズブロックに対しては、平滑化効果が高い6タップのGaussianフィルタを優先的に用いることとしてもよい。 As a modification, a 6-tap Gaussian filter with a high smoothing effect may be preferentially used for large-sized blocks.
 小サイズブロックに対するロングタップのOBMCの適用によるメモリ帯域の増加に対しては、後述する以下のパラメータの調整により制御する。
1.隣接MV数
2.ブレンディングライン数
 隣接MV数が2本以上ある場合は、1つの隣接MVを選択してOBMCを適用する。
The increase in memory bandwidth due to the application of long-tap OBMC to small-sized blocks is controlled by adjusting the following parameters, which will be described later.
1. Number of adjacent MVs2. Number of Blending Lines If there are two or more adjacent MVs, select one adjacent MV and apply OBMC.
 なお、本実施形態に係るブレンディングライン数の制御方法の詳細については、後述する。 The details of the method for controlling the number of blending lines according to this embodiment will be described later.
(OBMCのブレンディングライン数)
 以下、図15を参照して、非特許文献2、先出願及び本実施形態のそれぞれに係るOBMCのブレンディングライン数について説明する。
(Number of OBMC blending lines)
Hereinafter, the number of blending lines of OBMC according to Non-Patent Document 2, the prior application, and the present embodiment will be described with reference to FIG.
 図15は、非特許文献2、先出願及び本実施形態のそれぞれに係るOBMCのブレンディングライン数の比較表の一例である。 FIG. 15 is an example of a comparison table of OBMC blending line numbers according to Non-Patent Document 2, the prior application, and the present embodiment.
 ここで、輝度信号における対象ブロック境界に対するブレンディングライン数をLluma_Bとして示し、色差信号における対象ブロック境界に対するブレンディングライン数をLchroma_Bとして示し、輝度信号における対象サブブロック境界に対するブレンディングライン数をLluma_SbBとして示し、色差信号における対象サブブロック境界に対するブレンディングライン数をLchroma_SbBとして示している。 Here, L luma_B represents the number of blending lines for the target block boundary in the luminance signal, L chroma_B represents the number of blending lines for the target block boundary in the chrominance signal, and L luma_SbB represents the number of blending lines for the target sub-block boundary in the luminance signal . , and the number of blending lines for the target sub-block boundary in the chrominance signal is indicated as L chroma_SbB .
 非特許文献2では、Lluma_B、Lchroma_B、Lluma_SbB及びLchroma_SbBとして、それぞれ、4ライン、1ライン、3ライン及び1ラインと固定の値が用いられている。 In Non-Patent Document 2, fixed values of 4 lines, 1 line, 3 lines, and 1 line are used for L luma_B , L chroma_B , L luma_SbB , and L chroma_SbB , respectively.
 これに対して、先出願は、OBMCのブロックサイズが小さい場合は、ブレンディングライン数を減少させる一方、ブロックサイズが大きい場合は、ブレンディングライン数を増大させる方法を示している。 In contrast, the prior application shows a method of decreasing the number of blending lines when the block size of OBMC is small, and increasing the number of blending lines when the block size is large.
 具体的に、先出願では、Lluma_B及びLchroma_Bとしては、ブロックサイズに応じた2ライン及び4ラインの可変値が用いられ、Lluma_SbB及びLchroma_SbBがとしては、1ラインの固定値が用いられる構成となっている。 Specifically, in the prior application, variable values of 2 lines and 4 lines according to the block size are used for L luma_B and L chroma_B , and a fixed value of 1 line is used for L luma_SbB and L chroma_SbB . It is configured.
 より具体的に、先出願では、Lluma_B及びLchroma_Bは、ブロックの横幅又は縦幅が4画素以下の場合は、4画素以下となる境界と並行方向のブレンディングライン数が2ラインとなり、それ以外の場合は、4画素以下となる境界と並行方向のブレンディングライン数が4ラインとなる構成となっている。 More specifically, in the prior application, L luma_B and L chroma_B have two blending lines in the parallel direction to the boundary where the horizontal or vertical width of the block is 4 pixels or less. In the case of , the number of blending lines in the direction parallel to the boundary of 4 pixels or less is 4 lines.
 この結果、先出願によれば、小サイズブロックに対するOBMCの適用によるメモリ帯域の増加を抑制できる。 As a result, according to the prior application, it is possible to suppress an increase in memory bandwidth due to the application of OBMC to small-sized blocks.
 上述の従来技術に対して、本実施形態によれば、メモリ帯域を抑制し、符号化性能をさらに改善する技術として、以下の2つのOBMCのブレンディングライン数の制御方法を用いる。
・ 小サイズブロックに対して、OBMCのブレンディングライン数をさらに削減する(4ライン~1ライン)
・ 大サイズブロックに対して、OBMCのブレンディングライン数をさらに拡張する(4ライン~8ライン)
 これを実現する手段として、例えば、ブロックサイズごとに閾値を複数個設けてもよい。例えば、32画素以下(4×4画素又は4×8/8×4画素)の場合は、1ライン又は2ラインとし、64画素以上かつ256画素未満の場合は、4ライン又は3ラインとし、256画素以上の場合は、8ラインとしてもよい。
In contrast to the above-described prior art, according to the present embodiment, the following two OBMC blending line number control methods are used as techniques for suppressing the memory bandwidth and further improving the encoding performance.
・ Further reduce the number of OBMC blending lines for small size blocks (4 lines to 1 line)
・ Further expand the number of blending lines of OBMC for large size blocks (4 lines to 8 lines)
As means for realizing this, for example, a plurality of threshold values may be provided for each block size. For example, in the case of 32 pixels or less (4×4 pixels or 4×8/8×4 pixels), 1 line or 2 lines are used, and in the case of 64 pixels or more and less than 256 pixels, 4 lines or 3 lines are used. In the case of pixels or more, 8 lines may be used.
 また、ブロックの横と縦に対するライン数を別々に制御してもよい。例えば、4×16画素/16×4画素等のブロックについては、短辺(4画素)と平行方向のブレンディイングライン数を1ライン又は2ラインとし、長辺(16画素)と平行方向のブレンディイングライン数を4ライン又は3ラインとしてもよい。これら(短辺と長辺)の平行方向のライン数の増減が逆であってもよい。 Also, the number of lines for the width and length of the block may be controlled separately. For example, for a block of 4×16 pixels/16×4 pixels, etc., the number of blending lines in the direction parallel to the short side (4 pixels) is 1 or 2, and the blending line in the direction parallel to the long side (16 pixels) is The number of in-lines may be 4 lines or 3 lines. The increase and decrease in the number of lines in the parallel direction (short side and long side) may be reversed.
 上述の結果、以下の効果が期待できる。 As a result of the above, the following effects can be expected.
 小サイズブロックについては、ライン数を従来技術に対してさらに削減することで、OBMCに対してロングタップの補間フィルタが適用可能になる。これにより、補間フィルタ長の拡張によるOBMCのメモリ帯域の増加を抑制しつつ、ロングタップの補間フィルタの適用による予測誤差低減の恩恵が享受できる。 For small-sized blocks, by further reducing the number of lines compared to the conventional technology, a long-tap interpolation filter can be applied to OBMC. As a result, while suppressing an increase in the OBMC memory bandwidth due to the extension of the interpolation filter length, it is possible to enjoy the benefit of reduction in prediction error due to the application of the long-tap interpolation filter.
 一方、大サイズブロックについては、ライン数を従来技術に対してさらに増加することで、大サイズブロックで顕在化しやすいブロック境界の不連続を境界から広い範囲で平滑化する効果が享受しやすくなる。 On the other hand, for large-sized blocks, by further increasing the number of lines compared to the conventional technology, it becomes easier to enjoy the effect of smoothing discontinuities at block boundaries, which tend to occur in large-sized blocks, over a wide range from the boundaries.
(OBMCの適用可不可判定方法)
 以下、図16及び図17を参照して、非特許文献2、先出願及び本実施形態のそれぞれに係るOBMCの適用可不可についての判定方法について説明する。
(Method for judging applicability of OBMC)
A method for determining whether OBMC is applicable or not according to Non-Patent Document 2, the prior application, and the present embodiment will be described below with reference to FIGS. 16 and 17. FIG.
 非特許文献2及び先出願では、OBMCの適用可不可についての判定方法として、対象ブロック単位で復号する(画像符号化装置100からみれば伝送する)手法及びOBMCの適用可不可を制御する制御データフラグ(OBMCフラグ)を用いて判定する手法が開示されている。 In Non-Patent Document 2 and the prior application, as a method for determining whether or not OBMC is applicable, a method of decoding in target block units (transmission from the image encoding apparatus 100) and control data for controlling whether or not OBMC is applicable A method of making a determination using a flag (OBMC flag) is disclosed.
 ここで、復号部210が、OBMCフラグを復号するか否かについて判定する。具体的には、図16に示すフローチャートで、かかる処理が示される。 Here, the decoding unit 210 determines whether or not to decode the OBMC flag. Specifically, the flowchart shown in FIG. 16 shows such processing.
 図16に示すように、ステップS16-1において、復号部210は、OBMCフラグの復号条件1について判定する。 As shown in FIG. 16, in step S16-1, the decoding unit 210 determines decoding condition 1 of the OBMC flag.
 ここで、OBMCフラグの復号条件1が満たされない場合は、本処理は、ステップS16-2に進む。一方、OBMCフラグの復号条件1が満たされる場合は、本処理は、ステップS16-3に進む。OBMCフラグの復号条件1の詳細については、後述する。 Here, if the decoding condition 1 of the OBMC flag is not satisfied, the process proceeds to step S16-2. On the other hand, if the decoding condition 1 of the OBMC flag is satisfied, the process proceeds to step S16-3. The details of the decoding condition 1 of the OBMC flag will be described later.
 ステップS16-2において、復号部210は、OBMCフラグの復号条件2について判定する。 At step S16-2, the decoding unit 210 determines the decoding condition 2 of the OBMC flag.
 ここで、OBMCフラグの復号条件2が満たされる場合は、本処理は、ステップS16-4に進む。一方、OBMCフラグの復号条件2が満たされない場合は、本処理は、ステップS16-5に進む。OBMCフラグの復号条件2の詳細については、後述する。 Here, if the decoding condition 2 of the OBMC flag is satisfied, the process proceeds to step S16-4. On the other hand, if the decoding condition 2 of the OBMC flag is not satisfied, the process proceeds to step S16-5. The details of the decoding condition 2 of the OBMC flag will be described later.
 ステップS16-3において、復号部210は、OBMCフラグについては復号せず、OBMCフラグの値を0と推定し、本処理を終了する。 In step S16-3, the decoding unit 210 does not decode the OBMC flag, estimates the value of the OBMC flag to be 0, and terminates this process.
 ステップS16-4において、復号部210は、OBMCフラグについて復号し、本処理を終了する。 At step S16-4, the decoding unit 210 decodes the OBMC flag, and ends this process.
 ステップS16-5において、復号部210は、OBMCフラグについては復号せず、OBMCフラグの値を1と推定し、本処理を終了する。 In step S16-5, the decoding unit 210 does not decode the OBMC flag, estimates the value of the OBMC flag to be 1, and terminates this process.
 なお、OBMCフラグの値は、0又は1で構成される。OBMCフラグの値が1の場合は、OBMCが適用可能であることを示し、OBMCフラグの値が0の場合は、OBMCが適用不可であることを示す。  The value of the OBMC flag consists of 0 or 1. An OBMC flag value of 1 indicates that OBMC is applicable, and an OBMC flag value of 0 indicates that OBMC is not applicable.
 OBMC適用可不可判定部241B2が、OBMCフラグの値、対象ブロックのブロックサイズ及び予測モード、隣接ブロックの予測モード、対象MV及び隣接MVを用いて、最終的にOBMCの適用可不可について判定するように構成されている。かかる判定方法の詳細については、後述する。 The OBMC applicability determination unit 241B2 uses the value of the OBMC flag, the block size and prediction mode of the target block, the prediction mode of the adjacent block, the target MV and the adjacent MV to finally determine whether or not OBMC is applicable. is configured to Details of such a determination method will be described later.
 図17は、非特許文献2、先出願及び本実施形態のそれぞれに係るOBMCフラグの復号条件1、OBMCフラグの復号条件2及びOBMC適用可不可についての判定方法の比較表の一例である。 FIG. 17 is an example of a comparison table of the OBMC flag decoding condition 1, the OBMC flag decoding condition 2, and the determination method for OBMC applicability according to Non-Patent Document 2, the prior application, and the present embodiment, respectively.
 第1に、非特許文献2に係る各復号条件及び判定方法について説明する。 First, each decoding condition and determination method according to Non-Patent Document 2 will be described.
 非特許文献2のOBMCフラグの復号条件1は、以下の条件で構成されている。
E1.スライス単位のOBMCフラグが0である。
E2.対象ブロックがイントラ予測モードである。
E3.対象ブロックがIBCモードである。
E4.対象ブロックがLICモードである。
The decoding condition 1 of the OBMC flag in Non-Patent Document 2 is composed of the following conditions.
E1. The OBMC flag for each slice is 0.
E2. The target block is in intra prediction mode.
E3. The target block is in IBC mode.
E4. The target block is in LIC mode.
 ここで、スライス単位のOBMCフラグは、対象スライス単位で復号するOBMCの適用可不可を制御するフラグである。かかるOBMCフラグは、スライス単位で復号される以外に、ピクチャ単位で復号されてもよい。かかるOBMCフラグの値は、0及び1で構成され、対象ブロック単位と同様の意味を持つ。 Here, the OBMC flag for each slice is a flag that controls whether or not OBMC decoding for each target slice is applicable. Such an OBMC flag may be decoded on a picture-by-picture basis instead of being decoded on a slice-by-slice basis. The value of the OBMC flag consists of 0 and 1, and has the same meaning as the object block unit.
 上述のE1.~E4.の条件の組み合わせについては、設計者の意図で変更してもよい。 The combination of conditions E1. to E4. above may be changed according to the designer's intention.
 非特許文献2のOBMCフラグの復号条件2は、対象ブロックがマージモードであるという条件のみで構成されている。 Decoding condition 2 of the OBMC flag in Non-Patent Document 2 consists only of the condition that the target block is in merge mode.
 非特許文献2のOBMC適用可不可についての判定方法は、以下のF1.~F6.の条件で構成されている。かかるF1.~F6.の条件のいずれかが満たされる場合は、OBMCが適用不可であると判定される。かかるF1.~F6.の条件のいずれも満たされない場合は、OBMCが適用可であると判定される。
F1.OBMCフラグ=0である。
F2.対象ブロックがイントラ予測モードである。
F3.対象ブロックがIBCモードである。
F4.対象ブロックがLICモードである。
F5.隣接ブロックがイントラ予測モードである。
F6.対象MV及び隣接MVが同一である。
The method of determining whether or not OBMC can be applied in Non-Patent Document 2 consists of the following conditions F1. to F6. If any one of the conditions F1.-F6. is satisfied, it is determined that OBMC is not applicable. If none of the conditions F1.-F6. are satisfied, it is determined that OBMC is applicable.
F1. OBMC flag=0.
F2. The target block is in intra prediction mode.
F3. The target block is in IBC mode.
F4. The target block is in LIC mode.
F5. The neighboring block is in intra prediction mode.
F6. The target MV and adjacent MV are the same.
 上述のF1.~F6.の条件の組み合わせについては、設計者の意図で変更してもよい。 The combination of the above conditions F1. to F6. may be changed according to the designer's intention.
 第2に、先出願に係る各復号条件及び判定方法について説明する。 Secondly, each decoding condition and determination method related to the prior application will be explained.
 先出願のOBMCフラグの復号条件1は、以下の条件で構成されている。
G1.スライス単位のOBMCフラグが0である。
G2.対象ブロックがイントラ予測モードである。
G3.対象ブロックがIBCモードである。
The decoding condition 1 of the OBMC flag of the prior application consists of the following conditions.
G1. The OBMC flag for each slice is 0.
G2. The target block is in intra prediction mode.
G3. The target block is in IBC mode.
 ここで、スライス単位のOBMCフラグは、対象スライス単位で復号するOBMCの適用可不可を制御するフラグである。かかるOBMCフラグは、スライス単位で復号される以外に、ピクチャ単位で復号されてもよい。かかるOBMCフラグの値は、0及び1で構成されており、対象ブロック単位と同様の意味を持つ。 Here, the OBMC flag for each slice is a flag that controls whether or not OBMC decoding for each target slice is applicable. Such an OBMC flag may be decoded on a picture-by-picture basis instead of being decoded on a slice-by-slice basis. The value of the OBMC flag consists of 0 and 1, and has the same meaning as the object block unit.
 上述のG1.~G3.の条件の組み合わせについては、設計者の意図で変更してもよい。 The combination of conditions G1. to G3. above may be changed according to the designer's intention.
 先出願のOBMCフラグの復号条件2は、以下の2つの条件で構成されている。
H1.対象ブロックがマージモードである。
H2.対象ブロックがAMVPモードかつ対象ブロックサイズが256画素以上である。
The decoding condition 2 of the OBMC flag of the prior application consists of the following two conditions.
H1. The target block is in merge mode.
H2. The target block is in AMVP mode and the target block size is 256 pixels or more.
 先出願のOBMC適用可不可の判定方法は、以下のI1.~I5.の条件で構成されている。かかるI1.~I5.の条件のいずれかが満たされる場合は、OBMCが適用不可であると判定される。かかるI1.~I5.の条件のいずれも満たされない場合は、OBMCが適用可であると判定される。
I1.OBMCフラグ=0である。
I2.対象ブロックがイントラ予測モードである。
I3.対象ブロックがIBCモードである。
I4.隣接ブロックがイントラ予測モードである。
I5.対象MVと隣接MVとの誤差が閾値未満(片予測時は1.5画素、双予測は1画素)
 上述のI1.~I6.の条件の組み合わせについては、設計者の意図で変更してもよい。
The method for judging the applicability of OBMC in the prior application consists of the following conditions I1. to I5. If any one of the conditions I1.-I5. is satisfied, it is determined that OBMC is not applicable. If none of the conditions I1.-I5. are satisfied, it is determined that OBMC is applicable.
I1. OBMC flag=0.
I2. The target block is in intra prediction mode.
I3. The target block is in IBC mode.
I4. The neighboring block is in intra prediction mode.
I5. The error between the target MV and the adjacent MV is less than the threshold (1.5 pixels for uni-prediction, 1 pixel for bi-prediction)
Combinations of the above conditions I1. to I6. may be changed according to the designer's intention.
 第3に、本実施形態に係る各復号条件及び判定方法について説明する。 Third, each decoding condition and determination method according to this embodiment will be described.
 本実施形態のOBMCフラグの復号条件1は、非特許文献2又は先出願と同じであってもよい。 The decoding condition 1 of the OBMC flag in this embodiment may be the same as in Non-Patent Document 2 or the prior application.
 本実施形態のOBMCフラグの復号条件2は、以下の3つの条件で構成されている。
J1.対象ブロックがマージモードである。
J2.対象ブロックがAMVPモードかつ対象ブロックサイズが256画素以上である。
J3.対象ブロックがAMVPモードかつ対象ブロックサイズが32画素以下である。
The decoding condition 2 of the OBMC flag of this embodiment is composed of the following three conditions.
J1. The target block is in merge mode.
J2. The target block is in AMVP mode and the target block size is 256 pixels or more.
J3. The target block is in AMVP mode and the target block size is 32 pixels or less.
 上述の条件J3.が追加されることで、以下の効果が期待できる。 By adding the above condition J3., the following effects can be expected.
 上述の通り、本実施形態に係るOBMCでは、小サイズブロックにおいてロングタップの補間フィルタが適用可能である。これにより、小サイズブロックにおけるOBMCの予測誤差が低減するという効果が期待できるが、小サイズブロックごとにOBMCフラグを復号すると、その分の符号量が増加する。 As described above, in OBMC according to the present embodiment, a long-tap interpolation filter can be applied to small-sized blocks. As a result, the effect of reducing the OBMC prediction error in small-sized blocks can be expected, but if the OBMC flag is decoded for each small-sized block, the amount of code increases accordingly.
 かかる事態を回避する手段として、OBMCの小サイズブロックに対してロングタップの補間フィルタが用意されている場合に、小サイズブロック(具体的には、対象ブロックがAMVPモードかつ対象ブロックサイズが32画素以下)に対して、OBMCフラグの復号処理を省略することで、小サイズブロックにおけるOBMCフラグの符号量の増加を削減できる。 As a means of avoiding such a situation, when a long-tap interpolation filter is prepared for a small-sized block of OBMC, a small-sized block (specifically, the target block is AMVP mode and the target block size is 32 pixels below), by omitting the decoding process of the OBMC flag, an increase in the code amount of the OBMC flag in the small size block can be reduced.
 その他の変更例として、OBMCが適用可能なブロックサイズ及びOBMCで使用できる補間フィルタ長に応じて、AMVPモードの対象ブロックに対するOBMCフラグの復号処理を省略するブロックサイズの閾値を制御してもよい。 As another modification, the block size threshold for omitting the OBMC flag decoding process for the current block in AMVP mode may be controlled according to the block size applicable to OBMC and the interpolation filter length that can be used in OBMC.
 例えば、小サイズブロック及び大サイズブロックの双方にロングタップの補間フィルタが適用可能である場合は、上述の閾値を小さく設定する。1つの方法として、OBMCが適用可能なブロックサイズの下限値を、かかる閾値として設定してもよい。判定条件J4.として以下のように構成される。
J4.対象ブロックがAMVPモードかつ対象ブロックサイズが、OBMCが適用可能なブロックサイズの下限値以上である。
For example, if a long-tap interpolation filter can be applied to both small-sized blocks and large-sized blocks, the above threshold is set small. One method is to set the lower limit of the block size applicable to OBMC as such a threshold. Judgment condition J4. is configured as follows.
J4. The target block is in AMVP mode and the target block size is equal to or larger than the lower limit of the block size to which OBMC is applicable.
 上述のOBMCが適用可能なブロックサイズの下限値は、例えば、非特許文献2や本実施形態においては、ロングタップの補間フィルタが小サイズブロックから使用できる64画素や32画素である。 The lower limit of the block size to which the above-mentioned OBMC can be applied is, for example, in Non-Patent Document 2 and in the present embodiment, 64 pixels or 32 pixels, which allows long-tap interpolation filters to be used from small size blocks.
 このJ4.をJ2.及びJ3.に置き換えることで、OBMCフラグの復号有無に関する復号条件をより簡素化できる。 This J4. to J2. and J3. can further simplify the decoding condition regarding whether or not the OBMC flag is decoded.
 一方で、小サイズサイズブロックにショートタップの補間フィルタが適用可能であり、大サイズブロックにロングタップの補間フィルタが適用可能である場合は、上述の閾値を大きく設定してもよい。1つの方法として、かかる閾値を、ロングタップの補間フィルタが適用可能になるブロックサイズの下限値に設定してもよい。例えば、256画素未満の対象ブロックにショートタップの補間フィルタが適用可能であり、256画素以上の対象ブロックにロングタップの補間フィルタが適用可能である場合は、かかる閾値が256画素と設定してもよい。 On the other hand, if a short-tap interpolation filter is applicable to small-sized blocks and a long-tap interpolation filter is applicable to large-sized blocks, the above threshold may be set large. One method is to set such a threshold to the lower limit of the block size at which the long-tap interpolation filter can be applied. For example, if a short-tap interpolation filter can be applied to a target block of less than 256 pixels, and a long-tap interpolation filter can be applied to a target block of 256 pixels or more, even if the threshold is set to 256 pixels, good.
 これにより、ブロックサイズに応じた補間フィルタ長の制御(小サイズブロックにはショートタップの補間フィルタを適用)によるメモリ帯域の削減効果、及び、OBMCフラグの復号処理の省略による符号量の削減効果が期待できる。 As a result, the effect of reducing the memory bandwidth by controlling the interpolation filter length according to the block size (applying a short-tap interpolation filter to small-sized blocks) and the effect of reducing the code amount by omitting the decoding process of the OBMC flag are obtained. I can expect it.
 本実施形態のOBMC適用可不可についての判定方法は、非特許文献2又は先出願と同じであってもよい。 The method of determining whether or not OBMC is applicable in this embodiment may be the same as in Non-Patent Document 2 or the prior application.
(OBMC適用可不可判定方法の変更例)
 以下、図18~図20を参照して、非特許文献2、先出願及び本実施形態のそれぞれに係るOBMCの適用可不可についての判定方法の変更例について説明する。
(Example of modification of OBMC applicability determination method)
Hereinafter, with reference to FIGS. 18 to 20, modified examples of the method of determining the applicability of OBMC according to Non-Patent Document 2, the prior application, and the present embodiment will be described.
 本変更例では、復号部210が判定するOBMCのフラグの復号条件1と、OBMC適用可不可判定部241Bが判定するOBMCの適用可不可判定条件に、以下の2つの条件が追加されている。
K1.対象ブロックでAMVRが有効かつMVDが小数画素精度である。
K2.対象ブロックDMMVDが有効かつMVDが小数画素精度である。
In this modification, the following two conditions are added to the OBMC flag decoding condition 1 determined by the decoding unit 210 and the OBMC applicability determination condition determined by the OBMC applicability determination unit 241B.
K1. AMVR is valid and MVD is decimal pixel precision in the target block.
K2. The target block DMMVD is valid and MVD is decimal pixel precision.
 ここで、AMVR(Adaptive Motion Vector Resolution)及びMMVD(Merge with Motion Vector Difference)は、それぞれ非特許文献1で開示されている技術である。 Here, AMVR (Adaptive Motion Vector Resolution) and MMVD (Merge with Motion Vector Difference) are technologies disclosed in Non-Patent Document 1, respectively.
 AMVRは、AMVPで導出される動きベクトル予測(MVP)に加算される動きベクトル差分(MVD)の伝送精度を制御する技術であり、最終的な対象MVは、かかるMVDの伝送精度に丸められる。 AMVR is a technology that controls the transmission accuracy of the motion vector difference (MVD) added to the motion vector prediction (MVP) derived by AMVP, and the final target MV is rounded to the transmission accuracy of such MVD.
 AMVRで制御できる伝送精度は、図19に示すように、Affine AMVP、通常AMVP、IBCごとにそれぞれ規定されており、AMVRの適用可不可を示すフラグ(amvr_flag)や、伝送精度を示すインデックス(amvr_precision_idx)や、Affineモードの適用可不可フラグ(inter_affine_flag)や、対象ブロックがIBCモード化を示す内部パラメータ(MODE_IBC)によって判別される。 The transmission precision that can be controlled by AMVR is defined for each of Affine AMVP, normal AMVP, and IBC, as shown in FIG. ), an Affine mode non-applicability flag (inter_affine_flag), and an internal parameter (MODE_IBC) indicating that the target block is in the IBC mode.
 MMVDが加算するMVD(MmvdDistance)は、図20に示すように、ピクチャ単位で復号するph_mmvd_fullpel_only_flag及び対象ブロック単位で復号するmmvd_distance_idx
で判別される。
MVD (MmvdDistance) added by MMVD is ph_mmvd_fullpel_only_flag decoded in picture units and mmvd_distance_idx decoded in target block units, as shown in FIG.
is determined by
 本変更例では、対象ブロックでAMVRが有効な場合において、例えば、Affine AMVPや通常AMVPに対して、AMVRによってMVDの伝送精度が小数画素精度になる場合に、復号部210は、OBMCフラグを復号せず、OBMCフラグの値を0と推定する。 In this modified example, when AMVR is valid in the target block, for example, when the transmission precision of MVD becomes decimal pixel precision for Affine AMVP and normal AMVP, the decoding unit 210 decodes the OBMC flag. and assumes the value of the OBMC flag to be 0.
 また、本変更例では、対象ブロックでMMVDが有効な場合において、MMVDが加算するMVDが小数画素精度になる場合に、復号部210は、OBMCフラグを復号せず、OBMCフラグの値を0と推定する。 Further, in this modified example, when the MMVD is valid in the target block and the MVD added by the MMVD has decimal pixel precision, the decoding unit 210 sets the value of the OBMC flag to 0 without decoding the OBMC flag. presume.
 かかる制御による効果は、以下の通りである。 The effects of such control are as follows.
 対象ブロックに対してAMVRやMMVDが有効な場合に、対象MVが小数画素精度若しくは整数画素精度であるかについて、復号部210(制御データの復号段階)で判別可能である。 When AMVR or MMVD is valid for the target block, it is possible for the decoding unit 210 (in the control data decoding stage) to determine whether the target MV has decimal pixel precision or integer pixel precision.
 対象MVがAMVRやMMVDによっても小数画素精度である場合は、それは細かい動き補償予測とみなせるため、ブロック境界での不連続性(予測誤差)が発生しづらい。そのため、OBMCは、適用不可であってもよい。 If the target MV has sub-pixel accuracy even by AMVR or MMVD, it can be regarded as fine motion compensation prediction, so discontinuity (prediction error) at block boundaries is less likely to occur. Therefore, OBMC may not be applicable.
 他方、対象MVがAMVRやMMVDによって整数画素精度に丸められる場合は、それは粗い動き補償予測とみなせるため、ブロック境界での不連続性(予測誤差)が発生しやすくなる。この場合、予測誤差を低減させる常時OBMCを適用可とすることで、符号化性能の改善効果が期待できる。 On the other hand, if the target MV is rounded to integer pixel precision by AMVR or MMVD, it can be regarded as coarse motion compensation prediction, so discontinuity (prediction error) at block boundaries is likely to occur. In this case, by making it possible to apply always-on OBMC that reduces prediction errors, an improvement in coding performance can be expected.
 なお、OBMCフラグの復号条件2において、対象ブロックでAMVR又はMMVDが有効であり、かつ、かかるMVDの精度が整数精度と特定できる場合は、復号部210は、OBMCフラグを復号せずにOBMCフラグの値を1と推定することで、上述のAMVR及びMMVDによって対象MVが整数画素精度に丸められる場合において、OBMCを常時適用可とすることができ、さらに不要な符号量を削減できる。 In addition, in the decoding condition 2 of the OBMC flag, if AMVR or MMVD is valid in the target block and the precision of the MVD can be identified as integer precision, the decoding unit 210 decodes the OBMC flag without decoding the OBMC flag. is assumed to be 1, OBMC can always be applied when the target MV is rounded to integer pixel accuracy by AMVR and MMVD described above, and unnecessary code amount can be reduced.
 上述の本実施形態によれば、対象ブロックサイズ又はOBMCのブレンディングライン数に応じて、OBMCの補間フィルタ長を制御することで、メモリ帯域増加を抑制しつつ、符号化性能の改善効果を維持できる。 According to the present embodiment described above, by controlling the OBMC interpolation filter length according to the target block size or the number of OBMC blending lines, it is possible to maintain the effect of improving the coding performance while suppressing an increase in the memory bandwidth. .
 また、本実施形態によれば、対象ブロックサイズ又はMC及びOBMCの補間フィルタ長に応じて、OBMCのブレンディングライン数を制御することで、メモリ帯域増加を抑制しつつ、符号化性能の改善効果を維持できる。 Further, according to the present embodiment, by controlling the number of blending lines of OBMC according to the target block size or the interpolation filter lengths of MC and OBMC, an increase in memory bandwidth can be suppressed while improving the coding performance. can be maintained.
 また、本実施形態によれば、対象ブロックサイズ又はMC及びOBMCの補間フィルタ長に応じて、OBMCの適用可不可の制御することで、対象ブロック単位で伝送されるOBMCフラグの過剰な復号処理(ビット量)を削減できる。 Further, according to the present embodiment, by controlling whether or not OBMC can be applied according to the target block size or the interpolation filter lengths of MC and OBMC, excessive decoding processing ( bit amount) can be reduced.
 さらに、本実施形態によれば、対象ブロック又は隣接ブロックのMV精度に応じて、OBMCの適用可不可を制御することで、対象ブロック単位で伝送されるOBMCフラグの過剰な復号処理(ビット量)を削減できる。 Furthermore, according to the present embodiment, by controlling whether or not OBMC can be applied according to the MV accuracy of the target block or adjacent blocks, excessive decoding processing (bit amount) of the OBMC flag transmitted in target block units can be reduced.
(通常MC及びOBMC予測に使用する補間フィルタ種別の一致)
 以下に、通常MC及びOBMC予測に使用する補間フィルタ種別を一致させる実施例を説明する。非特許文献2では、通常MC予測及びOBMC予測で性質の異なる補間フィルタ長が使用される場合が起こりうる。具体的には、片方に通常の補間フィルタが適用され、もう片方に前記SIF(6タップのGaussianフィルタ)が適用されるケースである。
(Matching interpolation filter types used for normal MC and OBMC prediction)
An embodiment for matching the types of interpolation filters used for normal MC and OBMC prediction will be described below. In Non-Patent Document 2, a case may occur where interpolation filter lengths with different properties are used for normal MC prediction and OBMC prediction. Specifically, this is a case where a normal interpolation filter is applied to one side and the SIF (6-tap Gaussian filter) is applied to the other side.
 上述のケースは、通常MC予測で使用する補間フィルタにOBMC予測で使用する補間フィルタを一致させることで回避できる。 The above case can be avoided by matching the interpolation filter used for OBMC prediction with the interpolation filter used for normal MC prediction.
 1つの方法として、OBMC予測において、隣接ブロックのhpelIfIdxの値は無視し、対象ブロックのhpelIfIdxの値を優先して、補間フィルタの種別を決定する。 As one method, in OBMC prediction, the hpelIfIdx value of the adjacent block is ignored, and the hpelIfIdx value of the target block is prioritized to determine the type of interpolation filter.
 例えば、対象ブロックのhpelIfIdxが無効でSIFが選択されず、隣接ブロックのhpelIfIdxが有効でSIFが選択される場合において、対象ブロックのhpelIfIdxの値を優先することで、対象ブロックと隣接ブロック双方の補間フィルタ種別を通常の補間フィルタに一致させられる。 For example, when the hpelIfIdx of the target block is invalid and the SIF is not selected, and the hpelIfIdx of the adjacent block is valid and the SIF is selected, the hpelIfIdx value of the target block is prioritized to perform interpolation of both the target block and the adjacent block. The filter type can be matched with a normal interpolation filter.
 他方、対象ブロックのhpelIfIdxが有効でSIFが選択されず、隣接ブロックのhpelIfIdxが無効でSIFが選択されない場合において、対象ブロックのhpelIfIdxの値を優先することで、対象ブロックと隣接ブロック双方の補間フィルタ種別をSIFに一致させられる。 On the other hand, when the hpelIfIdx of the target block is valid and the SIF is not selected, and the hpelIfIdx of the adjacent block is invalid and the SIF is not selected, by prioritizing the value of the hpelIfIdx of the target block, the interpolation filter of both the target block and the adjacent block is selected. The type can be matched with SIF.
 ただし、隣接ブロックの隣接MVが1/2画素精度位置ではない場合は、SIFが無効になる可能性があるため、更なる変更例として、隣接MVの画素精度位置も無視して、対象ブロックの補間フィルタと一致させてもよい。 However, if the adjacent MV of the adjacent block is not a 1/2 pixel precision position, the SIF may be invalid. It may be matched with an interpolation filter.
 以上により、性質の異なる補間フィルタが適用された参照画素がOBMC予測によりブレンディングされることを回避することができ、予測性能が向上して、結果として符号化性能の改善できる。 As described above, it is possible to avoid blending of reference pixels to which interpolation filters having different properties are applied by OBMC prediction, improve prediction performance, and as a result improve coding performance.
 上述の画像符号化装置100及び画像復号装置200は、コンピュータに各機能(各工程)を実行させるプログラムであって実現されていてもよい。 The image encoding device 100 and the image decoding device 200 described above may be implemented as a program that causes a computer to execute each function (each process).
 なお、上述の各実施形態では、本発明を画像符号化装置100及び画像復号装置200への適用を例にして説明したが、本発明は、これのみに限定されるものではなく、画像符号化装置100及び画像復号装置200の各機能を備えた画像符号化システム及び画像復号システムにも同様に適用できる。 In each of the above-described embodiments, the present invention is applied to the image encoding device 100 and the image decoding device 200 as examples, but the present invention is not limited to this. The same can be applied to an image encoding system and an image decoding system having the functions of the device 100 and the image decoding device 200. FIG.
10…画像処理システム
100…画像符号化装置
111、241…インター予測部
112、242…イントラ予測部
121…減算器
122、230…加算器
131…変換・量子化部
132、220…逆変換・逆量子化部
140…符号化部
150、250…インループフィルタ処理部
160、260…フレームバッファ
200…画像復号装置
210…復号部
241A…動きベクトル(MV)導出部
241B…動き補償(MC)予測信号生成部
241B1…通常MC処理部
241B2…OBMC適用可不可判定部
241B3…OBMC処理部
DESCRIPTION OF SYMBOLS 10... Image processing system 100... Image encoding apparatus 111, 241... Inter prediction part 112, 242... Intra prediction part 121... Subtractor 122, 230... Adder 131... Transform/ quantization part 132, 220... Inverse transform/inverse Quantization unit 140 Encoding units 150, 250 In- loop filtering units 160, 260 Frame buffer 200 Image decoding device 210 Decoding unit 241A Motion vector (MV) deriving unit 241B Motion compensation (MC) prediction signal Generation unit 241B1: Normal MC processing unit 241B2: OBMC applicability determination unit 241B3: OBMC processing unit

Claims (10)

  1.  OBMC予測が適用可能な画像復号装置であって、
     対象ブロックごとの前記OBMC予測の適用可不可を判定するように構成されているOBMC適用可不可判定部と、
     前記対象ブロックごとの前記OBMC予測を処理するように構成されているOBMC処理部と、
     前記対象ブロックごとの前記OBMC予測の適用可不可を制御するように構成されているOBMCフラグの復号有無を判定して、前記OBMCフラグを復号するように構成されている復号部とを備えることを特徴とする画像復号装置。
    An image decoding device to which OBMC prediction is applicable,
    an OBMC applicability determination unit configured to determine applicability of the OBMC prediction for each target block;
    an OBMC processing unit configured to process the OBMC prediction for each target block;
    a decoding unit configured to determine whether or not an OBMC flag configured to control applicability of the OBMC prediction for each target block is decoded, and to decode the OBMC flag. An image decoding device characterized by:
  2.  前記OBMC処理部は、前記対象ブロックのブロックサイズ又はOBMCブレンディンライン数に応じて、OBMC向けの補間フィルタ長を可変させるように構成されていることを特徴とする請求項1に記載の画像復号装置。 2. The image decoding apparatus according to claim 1, wherein the OBMC processing unit is configured to vary an interpolation filter length for OBMC according to the block size of the target block or the number of OBMC blending lines. .
  3.  前記OBMC処理部は、前記OBMCブレンディンライン数が一定範囲に収まる場合に、小サイズブロックの前記OBMC処理でロングタップの補間フィルタを使用し、大サイズブロックの前記OBMC処理でショートタップの補間フィルタを使用するように構成されていることを特徴とする請求項2に記載の画像復号装置。 The OBMC processing unit uses a long-tap interpolation filter in the OBMC processing of small-sized blocks and uses a short-tap interpolation filter in the OBMC processing of large-sized blocks when the number of OBMC blending lines falls within a certain range. 3. An image decoding device according to claim 2, characterized in that it is adapted to use.
  4.  前記OBMC処理部は、前記対象ブロックのブロックサイズ又はOBMC向け補間フィルタ長に応じて、OBMCのブレンディングライン数を可変させるように構成されていることを特徴とする請求項1に記載の画像復号装置。 2. The image decoding device according to claim 1, wherein the OBMC processing unit is configured to vary the number of OBMC blending lines according to the block size of the target block or an interpolation filter length for OBMC. .
  5.  前記OBMC処理部は、OBMC向けの補間フィルタ長が一定範囲に収まる場合に、小サイズブロックに対しては前記OBMCのブレンディングライン数を削減し、大サイズブロックに対しては前記OBMCのブレンディングライン数を拡張するように構成されていることを特徴とする請求項4に記載の画像復号装置。 When the interpolation filter length for OBMC falls within a certain range, the OBMC processing unit reduces the number of OBMC blending lines for small-sized blocks, and reduces the number of OBMC blending lines for large-sized blocks. 5. The image decoding device according to claim 4, wherein the image decoding device is configured to extend the .
  6.  前記復号部は、小サイズブロックに対してロングタップの補間フィルタを用いた前記OBMC予測が適用可能な場合に、前記OBMCフラグを復号せずに前記OBMCフラグの値を1と推定するように構成されていることを特徴とする請求項1に記載の画像復号装置。 The decoding unit is configured to estimate the value of the OBMC flag to be 1 without decoding the OBMC flag when the OBMC prediction using a long-tap interpolation filter is applicable to small-sized blocks. 2. The image decoding device according to claim 1, wherein:
  7.  前記復号部は、前記対象ブロックにおいてAMVR又はMMVDが有効な場合に、MVDの精度を制御データから特定し、対象MVが小数画素精度と特定される場合、前記OBMCフラグを復号せずに前記OBMCフラグの値を0と推定するように構成されていることを特徴とする請求項1に記載の画像復号装置。 The decoding unit specifies the accuracy of MVD from control data when AMVR or MMVD is valid in the target block, and the OBMC without decoding the OBMC flag when the target MV is specified as decimal pixel precision. 2. The image decoding device according to claim 1, wherein the value of the flag is estimated to be 0.
  8.  前記復号部は、前記対象ブロックにおいてAMVR又はMMVDが有効な場合に、MVDの精度を制御データから特定し、対象MVが整数画素精度と特定される場合、前記OBMCフラグを復号せずに前記OBMCフラグの値1と推定するように構成されていることを特徴とする請求項1に記載の請求項1又は7に記載の画像復号装置。 The decoding unit specifies the accuracy of MVD from control data when AMVR or MMVD is valid in the target block, and when the target MV is specified as integer pixel precision, the OBMC without decoding the OBMC flag. 8. The image decoding device according to claim 1, which is configured to estimate a flag value of 1.
  9.  OBMC予測が適用可能な画像復号方法であって、
     対象ブロックごとの前記OBMC予測の適用可不可を判定する工程と、
     前記対象ブロックごとの前記OBMC予測を処理する工程と、
     前記対象ブロックごとの前記OBMC予測の適用可不可を制御するように構成されているOBMCフラグの復号有無を判定して、前記OBMCフラグを復号する工程とを有することを特徴とする画像復号方法。
    An image decoding method to which OBMC prediction is applicable,
    determining applicability of the OBMC prediction for each target block;
    processing the OBMC prediction for each target block;
    determining whether or not an OBMC flag configured to control applicability of the OBMC prediction for each target block is decoded, and decoding the OBMC flag.
  10.  コンピュータを、OBMC予測が適用可能な画像復号装置として機能させるプログラムであって、
     前記画像復号装置は、
     対象ブロックごとの前記OBMC予測の適用可不可を判定するように構成されているOBMC適用可不可判定部と、
     前記対象ブロックごとの前記OBMC予測を処理するように構成されているOBMC処理部と、
     前記対象ブロックごとの前記OBMC予測の適用可不可を制御するように構成されているOBMCフラグの復号有無を判定して、前記OBMCフラグを復号するように構成されている復号部とを備えることを特徴とするプログラム。
    A program that causes a computer to function as an image decoding device to which OBMC prediction can be applied,
    The image decoding device is
    an OBMC applicability determination unit configured to determine applicability of the OBMC prediction for each target block;
    an OBMC processing unit configured to process the OBMC prediction for each target block;
    a decoding unit configured to determine whether or not an OBMC flag configured to control applicability of the OBMC prediction for each target block is decoded, and to decode the OBMC flag. Program characterized.
PCT/JP2022/003993 2021-04-12 2022-02-02 Image-decoding device, image-decoding method, and program WO2022219888A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2021-067390 2021-04-12
JP2021067390A JP2022162484A (en) 2021-04-12 2021-04-12 Image decoding device, image decoding method, and program

Publications (1)

Publication Number Publication Date
WO2022219888A1 true WO2022219888A1 (en) 2022-10-20

Family

ID=83639550

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2022/003993 WO2022219888A1 (en) 2021-04-12 2022-02-02 Image-decoding device, image-decoding method, and program

Country Status (2)

Country Link
JP (1) JP2022162484A (en)
WO (1) WO2022219888A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2023074968A (en) * 2021-11-18 2023-05-30 Kddi株式会社 Image decoding device, image decoding method, and program

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018509032A (en) * 2015-01-26 2018-03-29 クアルコム,インコーポレイテッド Overlapping motion compensation for video coding
JP2020088577A (en) * 2018-11-22 2020-06-04 シャープ株式会社 Predictive image generation device, moving image decoding device, and moving image encoding device
JP2020108055A (en) * 2018-12-28 2020-07-09 Kddi株式会社 Image decoder, image encoder, image decoding method and program

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018509032A (en) * 2015-01-26 2018-03-29 クアルコム,インコーポレイテッド Overlapping motion compensation for video coding
JP2020088577A (en) * 2018-11-22 2020-06-04 シャープ株式会社 Predictive image generation device, moving image decoding device, and moving image encoding device
JP2020108055A (en) * 2018-12-28 2020-07-09 Kddi株式会社 Image decoder, image encoder, image decoding method and program

Also Published As

Publication number Publication date
JP2022162484A (en) 2022-10-24

Similar Documents

Publication Publication Date Title
US7535961B2 (en) Video encoding/decoding apparatus and method for color image
US10694179B2 (en) Video coding using hybrid intra prediction
KR101641400B1 (en) Decoding apparatus and method
US9503758B2 (en) Method of applying edge offset
US20100135389A1 (en) Method and apparatus for image encoding and image decoding
JP5248632B2 (en) Techniques for motion estimation
JP2008503177A (en) Method for color difference deblocking
WO2022219888A1 (en) Image-decoding device, image-decoding method, and program
US20230087432A1 (en) Filtering method and video decoding apparatus
US20210306628A1 (en) Filtering method and video decoding apparatus
WO2023021989A1 (en) Image decoding device, image decoding method, and program
US20240171752A1 (en) Image decoding device, image decoding method, and program
JP7299362B2 (en) Image decoding device, image encoding device, image decoding method and program
WO2023277129A1 (en) Image decoding device, image decoding method, and program
WO2023090309A1 (en) Image-decoding device, image-decoding method, and program
CN114051727B (en) Encoding device, decoding device, and computer-readable storage medium
JP6839246B2 (en) Video processing equipment, processing methods and computer-readable storage media
JP7102663B2 (en) Inter-predictors and methods for video coding
US20220174283A1 (en) Image decoding device, image decoding method, and program
WO2023021988A1 (en) Image decoding device, image decoding method, and program
WO2023047820A1 (en) Image-decoding device, image-decoding method, and program
Matsuo et al. LCU-based adaptive interpolation filter
JP2023107974A (en) Image decoder, image encoder, image decoding method and program
Matsuo et al. Enhanced region-based adaptive interpolation filter
Wu et al. Fast intra 4X4 mode elimination approaches for H. 264

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22787816

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 22787816

Country of ref document: EP

Kind code of ref document: A1