WO2018117334A1 - High-efficiency video coding mode determination method and determination device - Google Patents

High-efficiency video coding mode determination method and determination device Download PDF

Info

Publication number
WO2018117334A1
WO2018117334A1 PCT/KR2017/002190 KR2017002190W WO2018117334A1 WO 2018117334 A1 WO2018117334 A1 WO 2018117334A1 KR 2017002190 W KR2017002190 W KR 2017002190W WO 2018117334 A1 WO2018117334 A1 WO 2018117334A1
Authority
WO
WIPO (PCT)
Prior art keywords
rate
mode
distortion cost
lower limit
encoding
Prior art date
Application number
PCT/KR2017/002190
Other languages
French (fr)
Korean (ko)
Inventor
정진우
김용환
김성제
Original Assignee
전자부품연구원
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 전자부품연구원 filed Critical 전자부품연구원
Publication of WO2018117334A1 publication Critical patent/WO2018117334A1/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/103Selection of coding mode or of prediction mode
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/174Methods 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 slice, e.g. a line of blocks or a group of blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/19Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding using optimisation based on Lagrange multipliers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Definitions

  • the present invention relates to a method and an apparatus for determining a high efficiency video coding mode, and more particularly, to speed up intra PU mode determination, to speed up intra CU size determination, and to speed up inter CU / PU mode determination for HEVC (High Efficiency Video Codec) high speed coding. It is about.
  • HEVC High Efficiency Video Codec
  • HEVC is a next-generation video compression standard developed by ISO / IEC's Moving Picture Expert Group (MPEG) and ITU-T's Video Coding Expert Group (VCEG), which has standardized H.264 / AVC.
  • MPEG Moving Picture Expert Group
  • VCEG Video Coding Expert Group
  • HEVC effectively compresses video through block-by-block prediction, transformation, quantization, and entropy coding, similar to the existing video compression standard technology.
  • HEVC uses a deblocking filter similar to H.264 / AVC to solve the problem of deterioration of the reconstructed image caused by the quantization process, and additionally, SAO (Sample Adaptive Offset) filtering on the image to which the deblocking filter is applied. It is structured to perform one more time.
  • SAO Sample Adaptive Offset
  • HEVC has high compression performance of up to about 2 times that of the same image quality compared to H.264 / AVC, which is a conventional video compression standard technology, enabling efficient management of ultra-high definition images.
  • the coding complexity has been greatly increased because many complicated and precise techniques are included to maximize the compression rate.
  • the number of prediction modes calculated to determine the intra prediction mode is nine in H.264 / AVC, while the HEVC supports 35 prediction modes. Therefore, in order to perform encoding in an actual commercial encoder, it is necessary to reduce encoding complexity while maintaining compression efficiency and image quality.
  • 1 is an exemplary diagram illustrating a CU structure of HEVC.
  • a CU may be divided into various sizes.
  • a method of finding an optimal CU size among various CU sizes is to perform encoding on all cases of CUs, and then find a CU size having an optimal encoding cost among them.
  • this method has a disadvantage in that a large amount of encoding operations are required because encoding must be performed for all CU sizes.
  • Conventional methods of determining intra / inter prediction modes at high speed include a fast coding unit (CU) sizing algorithm, a fast intra prediction mode decision algorithm, and a fast inter mode decision algorithm.
  • CU fast coding unit
  • the conventional method does not have a small amount of RDcost calculation, so there is room for improvement.
  • An object of the present invention for solving the above problems is to provide an apparatus and method for mode determination for HEVC fast coding without loss of coding performance.
  • the high efficiency video encoding mode determination method for achieving the above object, the high efficiency video encoding mode determination method, the lower limit of the rate-distortion cost of the general encoding mode based on the number of syntax elements and syntax required for encoding Calculating a; Selecting one of the encoding modes as a current encoding mode and calculating a rate-distortion cost of the selected current encoding mode; Comparing a rate-distortion cost of the current encoding mode with a lower limit of the rate-distortion cost; And if the rate-distortion cost of the current encoding mode is less than the lower limit of the rate-distortion cost, selecting the current encoding mode as an optimal encoding mode.
  • the method may further include comparing the rate-distortion cost of the general encoding mode with the rate-distortion cost of the current encoding mode, and selecting an optimal encoding mode among them.
  • the lower limit of the rate-distortion cost is a minimum value of the rate-distortion cost (RDcost) that coding modes may have, and may be based on the number of bits used in actual encoding.
  • RDcost rate-distortion cost
  • the high efficiency video coding mode determination method is required for encoding.
  • a lower limit of the rate-distortion cost of the non-MPM mode as 7 ⁇ based on the number of elements and syntax, wherein ⁇ is a lagrangian multiplier;
  • the minimum rate-distortion cost is not less than the lower limit of the rate-distortion cost, calculating a rate-distortion cost of a mode other than MPM; And comparing the rate-distortion cost of the non-MPM mode with the minimum rate-distortion cost, and selecting an optimal mode among them.
  • the high efficiency video encoding mode determination method may include syntax elements and syntax required for encoding. Calculating a lower limit of the rate-distortion cost of four sub-CUs formed by dividing one CU based on the number as 32 ⁇ , wherein ⁇ is a lagrangian multiplier; Calculating a rate-distortion cost of the current CU; And comparing the rate-distortion cost of the current CU with the lower limit of the rate-distortion cost, wherein if the rate-distortion cost of the current CU is less than the lower limit of the rate-distortion cost, the current CU is divided. It doesn't work.
  • the method of determining a high efficiency video encoding mode includes (a) syntax elements and syntax required for encoding; Based on the number of (syntax), 2N ⁇ 2N MERGE, 2N ⁇ 2N INTER, N ⁇ 2N MERGE, N ⁇ 2N INTER, asymmetric motion partition (AMP), N ⁇ N MERGE and N ⁇ N as comparison criteria Calculating a lower limit of the rate-distortion cost of the INTER mode encoding; (b) selecting the SKIP mode as the first comparison target and calculating the rate-distortion cost of the SKIP mode; (c) comparing whether the rate-distortion cost of the first comparison target is smaller than a lower limit of the rate-distortion cost of the 2N ⁇ 2N MERGE mode as the comparison criterion; (d) selecting a comparison target if the
  • prediction_unit it may include CU / PU mode determination for B-Slice or CU / PU mode determination for P-Slice.
  • the rate-distortion cost of the SKIP mode is smaller than the lower limit, 10 ⁇ , of the rate-distortion cost of the 2N ⁇ 2N MERGE mode
  • the SKIP mode is selected, and the rate-distortion cost of the second comparison target is the N ⁇ 2N MERGE mode.
  • the lower limit of the rate-distortion cost is less than 8 ⁇
  • a second comparison target having an optimal rate-distortion cost is selected, and the rate-distortion cost of the second comparison target is the lower limit of the rate-distortion cost of the N ⁇ N MERGE mode. If less than 12 ⁇ , then a second comparison target with an optimal rate-distortion cost can be selected.
  • high-speed encoding is possible by reducing the complexity of mode determination of HEVC without loss of encoding performance.
  • 1 is an exemplary diagram illustrating a CU structure of HEVC.
  • FIG. 2 is a block diagram of an encoder including a mode determining apparatus according to an embodiment of the present invention.
  • FIG. 3 is a block diagram of a mode determining apparatus according to an embodiment of the present invention.
  • FIG. 4 is a flowchart of a method of determining an encoding mode of HEVC according to an embodiment of the present invention.
  • FIG. 5 is an exemplary diagram illustrating a current PU and a neighboring PU for MPM acquisition in HEVC.
  • FIG. 6 is a flowchart of a method of determining an MPM of an HEVC intra PU according to an embodiment of the present invention.
  • FIG. 7 is a flowchart of a method of determining an HEVC intra prediction mode according to an embodiment of the present invention.
  • FIG. 8 is a flowchart of a HEVC CU size determination method.
  • FIG. 9 is a flowchart of a method of determining HEVC intra CU size according to an embodiment of the present invention.
  • FIG. 10 is an exemplary diagram illustrating a type of HEVC inter mode.
  • FIG. 11 is a flowchart of a method of determining an inter CU / PU mode of HEVC for B-Slice according to an embodiment of the present invention.
  • FIG. 12 is a flowchart of a method of determining an inter CU / PU mode of HEVC for P-Slice according to an embodiment of the present invention.
  • first and second may be used to describe various components, but the components should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another.
  • the first component may be referred to as the second component, and similarly, the second component may also be referred to as the first component.
  • FIG. 2 is a block diagram of an encoder including a mode determining apparatus according to an embodiment of the present invention.
  • an encoder may include a mode determination apparatus 100, a motion predictor 210, a motion guarantee unit 220, a switch 230, an intra predictor 300, and a subtractor ( 350, the transformer 400, the inverse transformer 450, the adder 455, the quantizer 500, the inverse quantizer 550, the entropy encoder 600, the filter 700, and the reference image buffer 800. ).
  • the encoder may perform encoding on an input image in an intra mode or an inter mode and output a bit stream.
  • Intra prediction means intra prediction and inter prediction means inter prediction.
  • the switch 230 may be switched to intra, and in the inter mode, the switch 230 may be switched to inter.
  • FIG. 3 is a block diagram of an apparatus for determining HEVC encoding mode according to an embodiment of the present invention.
  • the mode determining apparatus 100 includes a rate-distortion cost calculating unit 110 and a mode determining unit 120.
  • the rate-distortion cost calculator 110 calculates the rate-distortion cost or calculates a lower limit of the rate-distortion cost when the input image is encoded according to the selected mode.
  • the mode determiner 120 determines an optimal mode by comparing the lower limit of the rate-distortion cost or the rate-distortion cost.
  • the encoder may generate a prediction block for the input block of the input image and then encode a residual between the input block and the prediction block.
  • the input image may mean an original picture.
  • the intra predictor 300 may generate a predictive block by performing spatial prediction using pixel values of blocks that are already encoded around the current block.
  • the motion predictor 210 may obtain a motion vector by searching for a region that best matches an input block in the reference image stored in the reference image buffer 800 during the motion prediction process.
  • the motion compensator 220 may generate a prediction block by performing motion compensation using the motion vector.
  • the motion vector is a two-dimensional vector used for inter prediction and may represent an offset between the current block and a block in the reference picture.
  • the motion predictor 210, the motion compensator 220, and the intra predictor 300 are illustrated in separate configurations, but the present invention is not limited thereto.
  • the motion predictor 210 and the motion compensator 220 may configure one inter predictor, and the motion predictor 210, the motion compensator 220, and the intra predictor 300 may predict one. You can also configure wealth.
  • the subtractor 350 may generate a residual block by the difference between the input block and the generated prediction block.
  • the transform unit 400 may perform a transform on the residual block to output a transform coefficient.
  • the quantization unit 500 may output the quantized coefficient by quantizing the input transform coefficient according to the quantization parameter.
  • the entropy encoder 600 may output a bit stream by performing entropy encoding based on values calculated by the quantizer 500 or encoding parameter values calculated in the encoding process.
  • the entropy encoder 600 may use an encoding method such as an exponential-Golomb code, context-adaptive variable length coding (CAVLC), or context-adaptive binary arithmetic coding (CABAC) for entropy encoding.
  • an exponential-Golomb code context-adaptive variable length coding
  • CABAC context-adaptive binary arithmetic coding
  • the encoder according to the embodiment of FIG. 2 performs inter prediction encoding, that is, inter prediction encoding
  • the current encoded image needs to be decoded and stored to be used as a reference image.
  • the quantized coefficients are inversely quantized by the inverse quantizer 550 and inversely transformed by the inverse transformer 450.
  • the inverse quantized and inverse transformed coefficients become reconstructed residual blocks, added with predictor blocks through adder 455, and a reconstructed block is generated.
  • the reconstruction block passes through the filter unit 700, and the filter unit 700 may apply at least one or more of a deblocking filter and a sample adaptive offset (SAO) to the reconstructed block or the reconstructed picture.
  • the filter unit 700 may be referred to as an in-loop filter.
  • the deblocking filter may remove block distortion and / or blocking artifacts that occur at the boundaries between blocks.
  • SAO may add an appropriate offset value to the pixel value to compensate for coding errors.
  • the reconstructed block that has passed through the filter unit 700 may be stored in the reference image buffer 800.
  • the mode determination method of HEVC may be applied to (1) intra prediction mode determination method, (2) CU size determination method, and (3) inter prediction CU / PU mode determination method.
  • HEVC uses Rate-Distortion Optimization (RDO) as shown in Equation 1 to select an optimal coding parameter.
  • RDO Rate-Distortion Optimization
  • D MODE refers to a distortion occurring between the original image and the reconstructed image when encoded / decoded as a MODE, and may be specifically defined as shown in Equation 2.
  • R MODE means the sum of bits generated when an image is encoded in the MODE. [lambda] is a parameter associated with a quantization parameter as a Lagrangian multiplier.
  • Org (x, y) means the original image
  • Rec MODE (x, y) is the reconstructed image generated when encoded / decoded by MODE.
  • SSE Sum of Squared Error
  • J MODE is the rate-distortion cost (Rate-Distortion cost: RDcost below) is determined, the mode having the minimum value, based on J J MODE MODE to the best mode (MODE).
  • the RDcost is calculated for all candidate modes (MODE) using the above RDO technique, and the mode having the smallest RDcost is determined as the optimal mode.
  • MODE candidate modes
  • a coding process must be performed for all modes, which requires a very complicated calculation process. This means that the encoding process should be performed even for the non-optimal mode, which means that computation is unnecessary.
  • the present invention proposes a method for determining a mode of HEVC at high speed by removing unnecessary operations.
  • R MODE is a bit required for encoding a syntax element configured when a mode is encoded.
  • the present invention estimates the minimum RDcost that a normal mode may have, and if a specific mode other than the normal mode is smaller than this RDcost, the RDcost calculation of the normal mode is omitted and specified. It is about how the mode is selected as the optimal mode.
  • the above process can be expressed by the following equation.
  • Equation 3 refers to the general mode and the distortion D is always greater than 0, so Equation 3 always satisfies Equation 4.
  • R MODE2 Equation 5 is satisfied if the lower limit of R L MODE2 . Therefore, equation (6) is derived.
  • FIG. 4 is a flowchart of a method of determining an encoding mode of HEVC according to an embodiment of the present invention.
  • ⁇ R L MODE2 is precomputed before start.
  • the Rdcosts of J MODE1 are calculated.
  • MODE1 is determined as an optimal mode. If No, Rdcosts of MODE2 is calculated next.
  • Rdcosts of MODE1 and Rdcosts of MODE2 are compared, and an optimal one of them can be determined. This series of steps is performed for the full mode, and the optimal mode can be determined before performing the full mode.
  • a key factor in determining the performance of the present invention is the method of determining the lower limit of RDcost.
  • the lower limit of the RDcost is determined based on the number of syntaxes and the distribution of syntaxes for encoding a mode. The result of the determination is different for each mode, and an example of each mode is shown below.
  • intra prediction modes There are 35 intra prediction modes for efficient intra prediction in HEVC.
  • an optimal prediction mode is selected and encoded from 35 prediction modes.
  • the most probable mode is introduced in HEVC.
  • MPM means that only information indicating that the intra prediction mode of the current PU uses the same intra prediction mode as the neighboring mode is the same as the intra prediction mode of the neighboring PU. Therefore, when the current PU is selected as the MPM, bits for intra prediction mode encoding may be greatly reduced.
  • FIG. 5 is an exemplary diagram illustrating a current PU and a neighboring PU for MPM acquisition in HEVC.
  • the MPM of the current PU is determined using the intra prediction mode of the left PU and the upper PU of the current PU. There are three modes of MPM, so there are 32 intra prediction modes in non-MPM.
  • FIG. 6 is a flowchart of a method of determining an MPM of an HEVC intra PU.
  • two of the three prediction modes (or one prediction mode when the surrounding modes are the same) set the MPM using the surrounding mode, and the other modes generate the MPM statistically. Set to.
  • the fast decision algorithm uses a difference between intra prediction mode bits in the case of MPM and non-MPM.
  • intra prediction one PU is encoded using the syntax shown in Table 1.
  • prev_intra_luma_flag mpm_idx
  • cbf_luma residual_coing
  • residual_coing if the current PU is MPM, prev_intra_luma_flag, rem_intra_luma_pred_flag, cbf_luma, and residual_coing () should be encoded.
  • the difference between MPM and Non-MPM is the difference between mpm_idx and rem_intra_luma_pred_flag, mpm_idx selects one of three MPMs, and rem_intra_luma_pred_flag selects one of 32, so more bits are needed for encoding. And using this method is proposed a mode determination method of HEVC according to an embodiment of the present invention.
  • RDcost of Non-MPM may be defined as in Equation 7.
  • D N - MPM MPM is Non-meaningful distortion and, R N- MPM when the means the total number of bits when the Non-MPM.
  • R N- MPM may be expressed again as in Equation 8.
  • Equation 8 R prev N - MPM , R rem N - MPM , R cbf N - MPM , and R residual () N - MPM mean bits for encoding prev_intra_luma_flag, rem_intra_lum_pred_mode, cbf_luma, and residual_coding (), respectively. Equation 8 may be converted as shown in Equation 9. In the right part of Equation 9, R residual () N - MPM is 0 because cbf is 0, so it is not necessary to encode it, and D N - MPM is greater than 0. On the other hand, the left part of the right term is always the signals to be encoded.
  • Equation 9 may be converted back to Equation 10.
  • FIG. 7 is a flowchart of a method of determining an intra prediction mode of HEVC according to an embodiment of the present invention.
  • the lower limit of the RDcosts of the Non-MPMs is calculated as 7 ⁇ and predetermined.
  • the RDcosts of the MPMs are calculated, and an optimal MPM having a minimum RDcost is selected among them.
  • the RDcosts of the optimal MPM and the Rdcosts of the Non-MPMs are compared, and the optimal one can be determined. This series of steps is performed for the full mode, and the optimal mode can be determined before performing the full mode.
  • FIG. 8 is a flowchart of a HEVC CU size determination method.
  • one CU may be divided into four sub-CUs, and the presence or absence of the CU is determined by comparing the RDcost of the CU with the sum of the RDcosts of the sub-CU. That is, if the RDcost of the CU is less than the sum of the RDcosts of the four sub-CUs, the current CU is no longer split. In the opposite case, the CU is divided so that the sub-CU becomes an optimal CU.
  • the syntax of one intra CU is analyzed and the lower limit of the RDcost agreement of four sub-CUs is obtained based on the syntax.
  • the RDcost of the upper CU and the lower limit of the RDcost of the sub-CU are compared to determine whether the intra CU is divided. Details are as follows.
  • the CU is always no longer divided into the sub-CU since the RDcost of the CU is always smaller than the sum of the RDcosts of the sub-CU.
  • FIG. 9 is a flowchart of a method of determining intra CU size of HEVC according to an embodiment of the present invention.
  • the lower limit of the RDcost of the sub-CU may vary depending on the CU size. This occurs because certain syntax elements do not need to be encoded because of encoding constraints. For example, in HEVC, since 8 ⁇ 8 is the minimum CU unit, split_cu_flag does not need to be encoded if the sub-CU size is 8 ⁇ 8. Therefore, the lower limit of the RDcost of the 8x8 sub-CU in this case is 28 ⁇ .
  • FIG. 10 is an exemplary diagram illustrating a type of HEVC inter mode.
  • HEVC provides various PU modes such as SKIP, MERGE, INTER 2N ⁇ 2N, INTER 2N ⁇ N, INTER N ⁇ 2N, and INTER N ⁇ N as shown in FIG. 11 for efficient inter prediction.
  • the syntax element for encoding each PU mode or the number of syntax required for encoding are different from each other.
  • a method of estimating the minimum number of required syntax elements for each mode and ending the mode determination process in advance is disclosed.
  • Non-SKIP Non-SKIP required inter-CU syntax elements are shown in Table 4, Table 5 and Table 6 below.
  • Semantics cu_skip_flag Bit indicating whether the current CU should be signed with SKIP pred_mode_flag Bit indicating whether the current CU is an intra CU or an inter CU part_mode Bit indicating PU type of inter mode prediction_unit () Information for Encoding a PU rqt_root_cbf Bit indicating whether the current CU contains the residual signal of Luma, Cb, Cr transform_tree () Information for Encoding Residual Signal
  • the total number of syntaxes required for SKIP is two, and assuming that each syntax element is encoded with one bit, the minimum number of bits required is two. Therefore, if the RDcost of the other CU mode is less than 2 ⁇ , it is not necessary to calculate the RDcost of the SKIP mode.
  • merge_flag indicates whether or not the current PU is MERGE. If MERGE, merge_idx is encoded. If not MERGE, inter_pred_idc, ref_idx_l0, mvp_l0_flag, ref_idx_l1, mvp_l1_flag, and mvd_coding () are encoded. Therefore, the number of syntax elements to be encoded varies depending on whether or not the current PU is MERGE. In addition, one prediction_unit () is encoded for each PU.
  • the present invention determines the lower limit of RDcost for the method of determining inter mode of HEVC.
  • abs_mvd_greater1_flag [0] and mvd_sign_flag [0] are values present when abs_mvd_greater0_flag [0] is 1, and abs_mvd_greater1_flag [1] and mvd_sign_flag [1] are 1 when abs_mvd_greater0_flag [1] is 1, respectively.
  • abs_mvd_minus2 [0] is a value in which abs_mvd_greater0_flag [0] and abs_mvd_greater1_flag [0] must both be 1, and abs_mvd_minus2 [1] is absent in both abs_mvd_greater0_flag [1] and abs_mvd_greater1_flag [1]. Accordingly, mvd_coding () requires at least two to eight syntax elements according to the motion vector in the encoding process.
  • the mode determination method of HEVC according to an embodiment of the present invention can be applied to both B slices and P slices.
  • the lower limit of the RDcost is determined in proportion to the number of syntax elements, the lower the number of prediction_unit (), the lower the lower limit of the RDcost. Therefore, the lower limit of the RDcost is calculated in order of the small number of prediction_unit ().
  • the number of prediction_unit () for each inter mode type is shown in Table 7 below.
  • part_mode number of prediction_unit () 2Nx2N One 2NxN, Nx2N 2 NxN 4 nRx2N, nLx2N, 2NxnU, 2NxnD 2
  • the lower limit of RNcost of 2N ⁇ 2N is first calculated, and then the lower limit of 2N ⁇ N, N ⁇ 2N, nR ⁇ 2N, nL ⁇ 2N, 2N ⁇ nU, 2N ⁇ nD is calculated, and finally, N ⁇ N.
  • the lower limit of RDcost is calculated.
  • the lower limits of the RDcost correspond to comparison criteria, and the RDcost of the SKIP mode corresponds to the first comparison target.
  • 2N ⁇ 2N can be divided into MERGE mode and INTER mode.
  • MERGE mode the syntax elements necessary to encode 2N ⁇ 2N MERGE are shown in Table 8.
  • mvd_coding which is a function of encoding a motion vector difference, requires two to eight syntaxes, and it is determined that at least two syntaxes are required because it is a lower limit operation. And if all residual signals are 0, only rqt_root_cbf needs to be encoded. In this case, transform_tree () does not need encoding. In this case, the required number of bits is 14 bits in total. Therefore, if the RDcost of the other mode is less than 14 ⁇ , it is not necessary to calculate the RDcost of the 2N ⁇ 2N Inter PU mode.
  • the lower limit of RDcost can be used in common.
  • the syntax elements required to encode one prediction_unit () are two for MERGE and ten for MERGE.
  • the minimum syntax elements to be encoded except for prediction_unit () are four of cu_skip_flag, pred_mode_flag, part_mode, and rqt_root_cbf.
  • At least one PU in 2N ⁇ N, N ⁇ 2N, nR ⁇ 2N, nL ⁇ 2N, 2N ⁇ nD, and 2N ⁇ nU may be in an INTER mode.
  • the lower limit can be thought of as one prediction_unit () is INTER and the other is MERGE.
  • the lower limit of RDcost is two syntax elements for MERGE, ten syntax elements for INTER, and syntax other than prediction_unit (). In total, 16 syntax elements are required.
  • N ⁇ N has four prediction units ().
  • one or more INTER PU modes may exist in N ⁇ N.
  • two prediction_unit () is INTER and two prediction_unit () are MERGE in order to determine the presence or absence of an N ⁇ N INTER RDcost operation.
  • the lower limit of RDcost is two syntax elements for MERGE, 10 syntax elements for INTER, and syntax elements other than prediction_unit (), and a total of 28 syntax elements are required. Therefore, if the RDcost of the other mode is less than 28 ⁇ , it is not necessary to calculate the RDcost for the INTER of the NxN mode.
  • FIG. 11 is a flowchart of a method of determining an inter CU / PU mode of HEVC for B-Slice according to an embodiment of the present invention.
  • the entire inter mode process is terminated and the SKIP mode is selected as the optimal mode. If the RDcost of the SKIP mode is greater than 10 ⁇ , the RDcost of the MERGE is calculated and the smallest RDcost of the SKIP mode and the RDcost of the MERGE is determined as the second comparison target J temp-best . If the second comparison target J temp-best is less than 14 ⁇ , the RDcost for the 2N ⁇ 2N INTER is skipped.
  • the inter mode process is terminated and the mode having the second comparison target J temp-best is selected as the optimal mode. If the second comparison target J temp-best is greater than 8 ⁇ and less than 16 ⁇ , only the RDcost for the MERGE of N ⁇ 2N is calculated, and if the second comparison target J temp-best is greater than 16 ⁇ , the MERGE of N ⁇ 2N and RDcost for INTER is calculated. If the RDcost of N ⁇ 2N is less than the second comparison target J temp-best , the RDcost of N ⁇ 2N is updated to the second comparison target J temp-best . The same method as for the N ⁇ 2N method is applied to the remaining modes.
  • FIG. 12 is a flowchart of a method of determining an inter CU / PU mode for P-Slice of HEVE encoding according to an embodiment of the present invention.
  • the threshold of P-Slice is calculated in the same way as in B-Slice. Since P-Slice uses only one-way prediction, the number of syntax elements is smaller than that of B-Slice, so the threshold is lower than that of B-Slice. Descriptions overlapping with the description of FIG. 12 will be omitted.
  • Mode determination methods according to the present invention can be implemented in the form of program instructions that can be executed by various computer means can be recorded on a computer readable medium.
  • Computer-readable media may include, alone or in combination with the program instructions, data files, data structures, and the like.
  • the program instructions recorded on the computer readable medium may be those specially designed and constructed for the present invention, or may be known and available to those skilled in computer software.
  • Examples of computer readable media include hardware devices that are specifically configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like.
  • Examples of program instructions include machine language code, such as produced by a compiler, as well as high-level language code that can be executed by a computer using an interpreter or the like.
  • the hardware device described above may be configured to operate with at least one software module to perform the operations of the present invention, and vice versa.
  • high-speed encoding is possible by reducing the complexity of mode determination of HEVC without loss of encoding performance.

Landscapes

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

Abstract

A method for determining an HEVC mode is disclosed. The method for determining an HEVC mode comprises: calculating a lower limit of rate-distortion costs of a general coding mode on the basis of the numbers of syntax elements and syntaxes, which are needed for coding; selecting any one mode of coding modes as a current coding mode, and calculating rate-distortion costs of the selected current coding mode; comparing the rate-distortion costs of the current coding mode with the lower limit of the rate-distortion costs; and selecting the current coding mode as the optimal coding mode when the rate-distortion costs of the current coding mode are lower than the lower limit of the rate-distortion costs.

Description

고효율 비디오 부호화 모드 결정방법 및 결정장치High efficiency video encoding mode determination method and determination device
본 발명은 고효율 비디오 부호화 모드 결정방법 및 결정장치에 관한 것으로, 더욱 상세하게는 HEVC(High Efficiency Video Codec) 고속 부호화를 위한 인트라 PU 모드 결정 고속화, 인트라 CU 크기 결정 고속화, 인터 CU/PU 모드 결정 고속화에 관한 것이다.The present invention relates to a method and an apparatus for determining a high efficiency video coding mode, and more particularly, to speed up intra PU mode determination, to speed up intra CU size determination, and to speed up inter CU / PU mode determination for HEVC (High Efficiency Video Codec) high speed coding. It is about.
HEVC는 H.264/AVC의 표준화를 수행하였던 ISO/IEC의 MPEG(Moving Picture Expert Group)과 ITU-T의 VCEG(Video Coding Expert Group)이 공동으로 개발한 차세대 동영상 압축 표준 기술이다. HEVC는 기존의 동영상 압축 표준 기술과 유사하게 블록 단위의 예측, 변환, 양자화, 엔트로피 코딩을 통해 동영상을 효과적으로 압축한다. 또한, HEVC는 양자화 과정에서 발생하는 복원 영상의 화질 열화 문제를 해결하기 위하여, H.264/AVC와 유사한 디블로킹 필터를 사용하며, 추가로 디블로킹 필터가 적용된 영상에 SAO(Sample Adaptive Offset) 필터링을 한 번 더 수행하는 구조로 되어 있다.HEVC is a next-generation video compression standard developed by ISO / IEC's Moving Picture Expert Group (MPEG) and ITU-T's Video Coding Expert Group (VCEG), which has standardized H.264 / AVC. HEVC effectively compresses video through block-by-block prediction, transformation, quantization, and entropy coding, similar to the existing video compression standard technology. In addition, HEVC uses a deblocking filter similar to H.264 / AVC to solve the problem of deterioration of the reconstructed image caused by the quantization process, and additionally, SAO (Sample Adaptive Offset) filtering on the image to which the deblocking filter is applied. It is structured to perform one more time.
HEVC는 종전의 동영상 압축 표준 기술인 H.264/AVC와 비교하여 동일 화질 대비 최대 약 2배까지의 높은 압축 성능을 보여줌으로써 초고화질 영상의 효율적인 관리가 가능해졌다. 그러나 압축률을 극대화하기 위하여 복잡하고 정밀한 기법을 많이 포함하였기 때문에 부호화 복잡도가 큰 폭으로 증가하였다. 인트라 예측 모드를 결정하기 위하여 계산하는 예측 모드의 수가 H.264/AVC에서는 9가지인 반면, HEVC에서는 35가지의 예측 모드를 지원하는 점을 예로 들 수 있다. 따라서 실제 상용 부호화기에서 부호화를 수행하기 위해서는, 압축 효율과 화질을 유지하면서 부호화 복잡도를 줄일 필요가 있다. HEVC has high compression performance of up to about 2 times that of the same image quality compared to H.264 / AVC, which is a conventional video compression standard technology, enabling efficient management of ultra-high definition images. However, the coding complexity has been greatly increased because many complicated and precise techniques are included to maximize the compression rate. For example, the number of prediction modes calculated to determine the intra prediction mode is nine in H.264 / AVC, while the HEVC supports 35 prediction modes. Therefore, in order to perform encoding in an actual commercial encoder, it is necessary to reduce encoding complexity while maintaining compression efficiency and image quality.
도 1은 HEVC의 CU 구조를 나타내는 예시도이다.1 is an exemplary diagram illustrating a CU structure of HEVC.
도 1을 참조하면 CU는 다양한 크기로 분할될 수 있다. 다양한 CU 크기 중에 최적의 CU 크기를 찾는 방법은 모든 경우의 CU에 대하여 부호화를 수행한 다음, 이들 중 최적의 부호화 비용을 갖는 CU 크기를 찾는 것이다. 그러나 이와 같은 방법은 모든 CU 크기에 대하여 부호화를 수행해야 함으로 부호화 연산량이 매우 많다는 단점을 지닌다.Referring to FIG. 1, a CU may be divided into various sizes. A method of finding an optimal CU size among various CU sizes is to perform encoding on all cases of CUs, and then find a CU size having an optimal encoding cost among them. However, this method has a disadvantage in that a large amount of encoding operations are required because encoding must be performed for all CU sizes.
고속으로 인트라/인터 예측 모드를 결정하는 종래의 방법은 고속 CU (Coding Unit) 크기 결정 알고리즘, 고속 인트라 예측 모드 결정 알고리즘 및 고속 인터 모드 결정 알고리즘을 포함한다. 그러나 종래의 방법은 RDcost 연산량이 적지 않으므로 개선의 여지가 남아있다.Conventional methods of determining intra / inter prediction modes at high speed include a fast coding unit (CU) sizing algorithm, a fast intra prediction mode decision algorithm, and a fast inter mode decision algorithm. However, the conventional method does not have a small amount of RDcost calculation, so there is room for improvement.
기존의 고속 알고리즘은 현재 CU와 주변 CU와의 관계, RDcost의 통계적 특성 등을 이용하여 고속화를 달성하였다. 그러나 고속화를 위한 임계치(threshold) 설정은 경험치 및 실험치에 기반하여 설정하였으며 그로 인하여 부호화 성능의 저하가 관찰된다.Existing high speed algorithm achieves high speed by using relation between current CU and neighboring CU and statistical characteristics of RDcost. However, the threshold for fastening is set based on the empirical and experimental values, and the degradation of the coding performance is observed.
상기와 같은 문제점을 해결하기 위한 본 발명의 목적은 부호화 성능의 손실 없이 HEVC 고속 부호화를 위한 모드 결정 장치 및 방법을 제공하는데 있다.An object of the present invention for solving the above problems is to provide an apparatus and method for mode determination for HEVC fast coding without loss of coding performance.
상기 과제를 달성하기 위한 본 발명의 일 실시예에 따르면, 고효율 비디오 부호화 모드 결정방법은, 부호화에 필요한 신택스 (syntax) 요소 및 신택스 (syntax) 개수에 기반하여 일반 부호화 모드의 율-왜곡비용의 하한을 연산하는 단계; 부호화 모드들 중에서 어느 하나의 모드를 현재 부호화 모드로 선택하고, 선택된 현재 부호화 모드의 율-왜곡 비용을 연산하는 단계; 상기 현재 부호화 모드의 율-왜곡 비용과 상기 율-왜곡 비용의 하한을 비교하는 단계; 및 상기 현재 부호화 모드의 율-왜곡 비용이 상기 율-왜곡 비용의 하한보다 작은 경우, 상기 현재 부호화 모드를 최적의 부호화 모드로 선택하는 단계를 포함한다.According to an embodiment of the present invention for achieving the above object, the high efficiency video encoding mode determination method, the lower limit of the rate-distortion cost of the general encoding mode based on the number of syntax elements and syntax required for encoding Calculating a; Selecting one of the encoding modes as a current encoding mode and calculating a rate-distortion cost of the selected current encoding mode; Comparing a rate-distortion cost of the current encoding mode with a lower limit of the rate-distortion cost; And if the rate-distortion cost of the current encoding mode is less than the lower limit of the rate-distortion cost, selecting the current encoding mode as an optimal encoding mode.
여기서, 상기 현재 부호화 모드의 율-왜곡 비용이 상기 율-왜곡 비용의 하한보다 작지 않은 경우, 상기 일반 부호와 모드의 율-왜곡 비용을 연산하는 단계; 상기 일반 부호화 모드의 율-왜곡 비용과 상기 현재 부호화 모드의 율-왜곡 비용을 비교하고, 이들 중에서 최적의 부호화 모드를 선택하는 단계를 더 포함할 수 있다.Calculating a rate-distortion cost of the general code and a mode if the rate-distortion cost of the current encoding mode is not less than a lower limit of the rate-distortion cost; The method may further include comparing the rate-distortion cost of the general encoding mode with the rate-distortion cost of the current encoding mode, and selecting an optimal encoding mode among them.
여기서, 상기 율-왜곡 비용의 하한은, 부호화 모드들이 가질 수 있는 율-왜곡 비용 (rate-distortion cost, RDcost)의 최소값으로서, 실제 부호화 시에 소요되는 비트 수에 기반할 수 있다.Here, the lower limit of the rate-distortion cost is a minimum value of the rate-distortion cost (RDcost) that coding modes may have, and may be based on the number of bits used in actual encoding.
본 발명의 다른 실시예에 따르면, 고효율 비디오 부호화(High Efficiency Video Coding, HEVC) 인트라 (intrapicture) PU (prediction unit) 예측 모드 결정방법에 있어서, 고효율 비디오 부호화 모드 결정방법은 부호화에 필요한 신택스(syntax) 요소 및 신택스(syntax) 개수에 기반하여 MPM이 아닌(Non-MPM) 모드의 율-왜곡비용의 하한을 7λ으로 연산하는 단계, 여기서 λ는 라그랑지안 계수(lagrangian multiplier); 인트라 PU 예측 모드 중에서 MPM 모드들의 율-왜곡 비용을 연산하고, 이 중에서 최소 율-왜곡 비용을 갖는 최적의 MPM 모드를 찾는 단계; 상기 최소 율-왜곡 비용과 상기 율-왜곡비용의 하한을 비교하는 단계; 및 상기 최소 율-왜곡 비용이 상기 율-왜곡비용의 하한보다 작은 경우, 상기 최적의 MPM 모드를 예측 모드로 선택하는 단계를 포함한다.According to another embodiment of the present invention, in the high efficiency video coding (HEVC) intra picture prediction unit (PU) prediction mode determination method, the high efficiency video coding mode determination method is required for encoding. Calculating a lower limit of the rate-distortion cost of the non-MPM mode as 7 λ based on the number of elements and syntax, wherein λ is a lagrangian multiplier; Calculating the rate-distortion cost of the MPM modes among the intra PU prediction modes, and finding an optimal MPM mode having a minimum rate-distortion cost among them; Comparing the minimum rate-distortion cost with a lower limit of the rate-distortion cost; And if the minimum rate-distortion cost is less than the lower limit of the rate-distortion cost, selecting the optimal MPM mode as the prediction mode.
여기서, 상기 최소 율-왜곡 비용이 상기 율-왜곡비용의 하한보다 작지 않은 경우, MPM이 아닌 모드의 율-왜곡 비용을 계산하는 단계; 및 상기 MPM이 아닌 모드의 율-왜곡 비용과 상기 최소 율-왜곡 비용을 비교하고, 이들 중에서 최적의 모드를 선택하는 단계를 더 포함할 수 있다.If the minimum rate-distortion cost is not less than the lower limit of the rate-distortion cost, calculating a rate-distortion cost of a mode other than MPM; And comparing the rate-distortion cost of the non-MPM mode with the minimum rate-distortion cost, and selecting an optimal mode among them.
본 발명의 일 실시예에 따르면, 고효율 비디오 부호화(High Efficiency Video Coding, HEVC)의 인트라 CU 크기 결정방법에 있어서, 고효율 비디오 부호화 모드 결정방법은, 부호화에 필요한 신택스(syntax) 요소 및 신택스(syntax) 개수에 기반하여 하나의 CU가 분할되어 형성된 4개의 sub-CU들의 율-왜곡비용의 하한을 32λ으로 연산하는 단계, 여기서 λ는 라그랑지안 계수(lagrangian multiplier); 현재 CU의 율-왜곡 비용을 연산하는 단계; 및 상기 율-왜곡비용의 하한과 상기 현재 CU의 율-왜곡비용을 비교하는 단계를 포함하되, 상기 현재 CU의 율-왜곡 비용이 상기 율-왜곡비용의 하한보다 작은 경우, 상기 현재 CU는 분할되지 않는다.According to an embodiment of the present invention, in the intra CU size determination method of High Efficiency Video Coding (HEVC), the high efficiency video encoding mode determination method may include syntax elements and syntax required for encoding. Calculating a lower limit of the rate-distortion cost of four sub-CUs formed by dividing one CU based on the number as 32 λ , wherein λ is a lagrangian multiplier; Calculating a rate-distortion cost of the current CU; And comparing the rate-distortion cost of the current CU with the lower limit of the rate-distortion cost, wherein if the rate-distortion cost of the current CU is less than the lower limit of the rate-distortion cost, the current CU is divided. It doesn't work.
여기서, 상기 현재 CU의 율-왜곡 비용이 상기 율-왜곡비용의 하한보다 작지 않은 경우, 상기 sub-CU들의 율-왜곡 비용들의 합을 연산하는 단계; 및 상기 현재 CU의 율-왜곡 비용과 상기 sub-CU들의 율-왜곡 비용들의 합을 비교하는 단계를 더 포함하되, 상기 현재 CU의 율-왜곡 비용이 상기 sub-CU들의 율-왜곡 비용들의 합보다 작은 경우, 상기 현재 CU는 분할되지 않고, 상기 현재 CU의 율-왜곡 비용이 상기 sub-CU들의 율-왜곡 비용들의 합보다 작지 않은 경우, 상기 현재 CU는 분할될 수 있다.Calculating a sum of rate-distortion costs of the sub-CUs if the rate-distortion cost of the current CU is not less than a lower limit of the rate-distortion cost; And comparing the rate-distortion cost of the current CU with the sum of the rate-distortion costs of the sub-CUs, wherein the rate-distortion cost of the current CU is a sum of the rate-distortion costs of the sub-CUs. If smaller, the current CU is not split, and if the rate-distortion cost of the current CU is not less than the sum of the rate-distortion costs of the sub-CUs, the current CU may be split.
본 발명의 다른 실시예에 따르면, 고효율 비디오 부호화(High Efficiency Video Coding, HEVC) 인터 CU/PU 모드 결정방법에 있어서, 고효율 비디오 부호화 모드 결정 방법은 (a) 부호화에 필요한 신택스(syntax) 요소 및 신택스(syntax) 개수에 기반하여, 비교 기준으로서 2N×2N MERGE, 2N×2N INTER, N×2N MERGE, N×2N INTER, 비대칭 모션 분할(asymmetric motion partition, AMP), N×N MERGE 및 N×N INTER 모드 부호화의 율-왜곡 비용의 하한을 연산하는 단계; (b) 제1 비교 타겟으로서 SKIP 모드를 선택하고, SKIP 모드의 율-왜곡 비용을 연산하는 단계; (c) 상기 제1 비교 타겟의 율-왜곡 비용이 상기 비교 기준인 2N×2N MERGE 모드의 율-왜곡 비용의 하한보다 작은지 비교하는 단계; (d) 상기 제1 비교 타겟의 율-왜곡 비용이 상기 비교 기준보다 더 작은 경우 비교 타겟을 선택하고, 그렇지 않은 경우 상기 비교 기준의 율-왜곡 비용을 연산하고, 비교 타겟의 율-왜곡 비용과 비교 기준인 2N×2N MERGE의 율-왜곡 비용을 비교하고, 이 중에서 최적의 율-왜곡 비용을 갖는 모드를 제2 비교 타겟으로 업데이트하는 단계; 순서대로 나머지 2N×2N INTER, N×2N MERGE, N×2N INTER, 비대칭 모션 분할(AMP), N×N MERGE 및 N×N INTER 모드에 대해서, 상기 제2 비교 타겟의 율-왜곡 비용을 이용하여 상기 (c) 및 (d)를 반복함으로써 제2 비교 타겟이 최적의 율-왜곡 비용을 갖는 모드가 되도록 제2 비교 타겟을 계속 업데이트 하고, 최종 업데이트된 제2 비교 타겟의 모드를 선택하는 단계를 포함한다.According to another embodiment of the present invention, in the method of determining a high efficiency video coding (HEVC) inter CU / PU mode, the method of determining a high efficiency video encoding mode includes (a) syntax elements and syntax required for encoding; Based on the number of (syntax), 2N × 2N MERGE, 2N × 2N INTER, N × 2N MERGE, N × 2N INTER, asymmetric motion partition (AMP), N × N MERGE and N × N as comparison criteria Calculating a lower limit of the rate-distortion cost of the INTER mode encoding; (b) selecting the SKIP mode as the first comparison target and calculating the rate-distortion cost of the SKIP mode; (c) comparing whether the rate-distortion cost of the first comparison target is smaller than a lower limit of the rate-distortion cost of the 2N × 2N MERGE mode as the comparison criterion; (d) selecting a comparison target if the rate-distortion cost of the first comparison target is less than the comparison criterion, otherwise calculating the rate-distortion cost of the comparison criteria, and comparing the rate-distortion cost of the comparison target with Comparing the rate-distortion cost of the comparison criteria 2N × 2N MERGE, wherein updating the mode having the optimal rate-distortion cost to the second comparison target; Use the rate-distortion cost of the second comparison target for the remaining 2N × 2N INTER, N × 2N MERGE, N × 2N INTER, Asymmetric Motion Division (AMP), N × N MERGE, and N × N INTER modes in order. Repeating steps (c) and (d) to continuously update the second comparison target so that the second comparison target is in a mode having an optimal rate-distortion cost, and selecting a mode of the last updated second comparison target. It includes.
여기서, prediction_unit()에 포함될 수 있는 신택스 요소에 따라, B-Slice를 위한 CU/PU 모드 결정 또는 P-Slice를 위한 CU/PU 모드 결정을 포함할 수 있다.Here, according to the syntax element that may be included in prediction_unit (), it may include CU / PU mode determination for B-Slice or CU / PU mode determination for P-Slice.
여기서, SKIP 모드의 율-왜곡 비용이 2N×2N MERGE 모드의 율-왜곡 비용의 하한, 10λ보다 작은 경우, SKIP 모드를 선택하고, 제2 비교 타겟의 율-왜곡 비용이 N×2N MERGE 모드의 율-왜곡 비용의 하한, 8λ보다 작은 경우, 최적의 율-왜곡 비용을 갖는 제2 비교 타겟을 선택하고, 제2 비교 타겟의 율-왜곡 비용이 N×N MERGE 모드의 율-왜곡 비용의 하한, 12λ보다 작은 경우, 최적의 율-왜곡 비용을 갖는 제2 비교 타겟을 선택할 수 있다.Here, when the rate-distortion cost of the SKIP mode is smaller than the lower limit, 10λ, of the rate-distortion cost of the 2N × 2N MERGE mode, the SKIP mode is selected, and the rate-distortion cost of the second comparison target is the N × 2N MERGE mode. If the lower limit of the rate-distortion cost is less than 8λ, a second comparison target having an optimal rate-distortion cost is selected, and the rate-distortion cost of the second comparison target is the lower limit of the rate-distortion cost of the N × N MERGE mode. If less than 12λ, then a second comparison target with an optimal rate-distortion cost can be selected.
본 발명에 의하면, 부호화 성능의 손실 없이 HEVC의 모드 결정의 복잡도를 낮춤으로써 고속의 부호화가 가능하다.According to the present invention, high-speed encoding is possible by reducing the complexity of mode determination of HEVC without loss of encoding performance.
도 1은 HEVC의 CU 구조를 나타내는 예시도이다.1 is an exemplary diagram illustrating a CU structure of HEVC.
도 2은 본 발명의 실시예에 따른 모드 결정장치를 포함하는 부호화기의 블록도이다.2 is a block diagram of an encoder including a mode determining apparatus according to an embodiment of the present invention.
도 3은 본 발명의 실시예에 따른 모드 결정장치의 블록도이다.3 is a block diagram of a mode determining apparatus according to an embodiment of the present invention.
도 4는 본 발명의 실시예에 따른 HEVC의 부호화 모드 결정방법의 흐름도이다.4 is a flowchart of a method of determining an encoding mode of HEVC according to an embodiment of the present invention.
도 5는 HEVC에서 MPM 획득을 위한 현재의 PU 및 주변 PU를 나타내는 예시도이다.5 is an exemplary diagram illustrating a current PU and a neighboring PU for MPM acquisition in HEVC.
도 6은 본 발명의 실시예에 따른 HEVC인트라 PU의 MPM 결정방법의 흐름도이다.6 is a flowchart of a method of determining an MPM of an HEVC intra PU according to an embodiment of the present invention.
도 7은 본 발명의 실시예에 따른 HEVC 인트라 예측 모드 결정방법의 흐름도이다.7 is a flowchart of a method of determining an HEVC intra prediction mode according to an embodiment of the present invention.
도 8은 HEVC CU 크기 결정방법의 흐름도이다.8 is a flowchart of a HEVC CU size determination method.
도 9는 본 발명의 실시예에 따른 HEVC 인트라 CU 크기 결정방법의 흐름도이다.9 is a flowchart of a method of determining HEVC intra CU size according to an embodiment of the present invention.
도 10은 HEVC 인터 모드 종류를 나타내는 예시도이다.10 is an exemplary diagram illustrating a type of HEVC inter mode.
도 11는 본 발명의 실시예에 따른 B-Slice를 위한 HEVC의 인터 CU/PU 모드 결정방법의 흐름도이다.11 is a flowchart of a method of determining an inter CU / PU mode of HEVC for B-Slice according to an embodiment of the present invention.
도 12는 본 발명의 실시예에 따른 P-Slice를 위한 HEVC의 인터 CU/PU 모드 결정방법의 흐름도이다.12 is a flowchart of a method of determining an inter CU / PU mode of HEVC for P-Slice according to an embodiment of the present invention.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.As the present invention allows for various changes and numerous embodiments, particular embodiments will be illustrated in the drawings and described in detail in the written description. However, this is not intended to limit the present invention to specific embodiments, it should be understood to include all modifications, equivalents, and substitutes included in the spirit and scope of the present invention.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.Terms such as first and second may be used to describe various components, but the components should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, the first component may be referred to as the second component, and similarly, the second component may also be referred to as the first component. The term and / or includes a combination of a plurality of related items or any item of a plurality of related items.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.When a component is referred to as being "connected" or "connected" to another component, it may be directly connected to or connected to that other component, but it may be understood that other components may be present in between. Should be. On the other hand, when a component is said to be "directly connected" or "directly connected" to another component, it should be understood that there is no other component in between.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used herein is for the purpose of describing particular example embodiments only and is not intended to be limiting of the present invention. Singular expressions include plural expressions unless the context clearly indicates otherwise. In this application, the terms "comprise" or "have" are intended to indicate that there is a feature, number, step, operation, component, part, or combination thereof described in the specification, and one or more other features. It is to be understood that the present invention does not exclude the possibility of the presence or the addition of numbers, steps, operations, components, components, or a combination thereof.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가진 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art. Terms such as those defined in the commonly used dictionaries should be construed as having meanings consistent with the meanings in the context of the related art and shall not be construed in ideal or excessively formal meanings unless expressly defined in this application. Do not.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 본 발명을 설명함에 있어 전체적인 이해를 용이하게 하기 위하여 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.Hereinafter, with reference to the accompanying drawings, it will be described in detail a preferred embodiment of the present invention. In the following description of the present invention, the same reference numerals are used for the same elements in the drawings and redundant descriptions of the same elements will be omitted.
도 2는 본 발명의 실시예에 따른 모드 결정장치를 포함하는 부호화기의 블록도이다.2 is a block diagram of an encoder including a mode determining apparatus according to an embodiment of the present invention.
도 2를 참조하면, 본 발명의 실시예에 따른 부호화기는 모드 결정장치(100), 움직임 예측부(210), 움직임 보장부(220), 스위치(230), 인트라 예측부(300), 감산기(350), 변환부(400), 역변환부(450), 가산기(455) 양자화부(500), 역양자화부(550), 엔트로피 부호화부(600), 필터부(700) 및 참조영상 버퍼(800)을 포함한다.Referring to FIG. 2, an encoder according to an embodiment of the present invention may include a mode determination apparatus 100, a motion predictor 210, a motion guarantee unit 220, a switch 230, an intra predictor 300, and a subtractor ( 350, the transformer 400, the inverse transformer 450, the adder 455, the quantizer 500, the inverse quantizer 550, the entropy encoder 600, the filter 700, and the reference image buffer 800. ).
부호화부는 입력 영상에 대해 인트라(intra) 모드 또는 인터(inter) 모드로 부호화를 수행하고 비트 스트림(bit stream)을 출력할 수 있다. 인트라 예측은 화면 내 예측, 인터 예측은 화면 간 예측을 의미한다. 인트라 모드인 경우 스위치(230)가 인트라로 전환되고, 인터 모드인 경우 스위치(230)가 인터로 전환될 수 있다.The encoder may perform encoding on an input image in an intra mode or an inter mode and output a bit stream. Intra prediction means intra prediction and inter prediction means inter prediction. In the intra mode, the switch 230 may be switched to intra, and in the inter mode, the switch 230 may be switched to inter.
도 3은 본 발명의 실시예에 따른 HEVC부호화 모드 결정장치의 블록도이다.3 is a block diagram of an apparatus for determining HEVC encoding mode according to an embodiment of the present invention.
도 3을 참조하면, 모드 결정장치(100)는 율-왜곡 비용 연산부(110) 및 모드 결정부(120)을 포함한다. 율-왜곡 비용 연산부(110)는 입력 영상이 선택된 모드에 따라 부호화되는 경우 율-왜곡 비용을 연산하거나 율-왜곡 비용의 하한을 연산한다. 모드 결정부(120)는 율-왜곡 비용 또는 율-왜곡 비용의 하한을 비교하여 최적의 모드를 결정한다.Referring to FIG. 3, the mode determining apparatus 100 includes a rate-distortion cost calculating unit 110 and a mode determining unit 120. The rate-distortion cost calculator 110 calculates the rate-distortion cost or calculates a lower limit of the rate-distortion cost when the input image is encoded according to the selected mode. The mode determiner 120 determines an optimal mode by comparing the lower limit of the rate-distortion cost or the rate-distortion cost.
부호화기는 입력 영상의 입력 블록에 대한 예측 블록을 생성한 후, 입력 블록과 예측 블록의 차분(residual)을 부호화할 수 있다. 이때, 입력 영상은 원 영상(original picture)을 의미할 수 있다.The encoder may generate a prediction block for the input block of the input image and then encode a residual between the input block and the prediction block. In this case, the input image may mean an original picture.
인트라 모드인 경우, 인트라 예측부(300)는 현재 블록 주변의 이미 부호화된 블록의 픽셀 값을 이용하여 공간적 예측을 수행하여 예측 블록을 생성할 수 있다.In the intra mode, the intra predictor 300 may generate a predictive block by performing spatial prediction using pixel values of blocks that are already encoded around the current block.
인터 모드인 경우, 움직임 예측부(210)는 움직임 예측 과정에서 참조 영상 버퍼(800)에 저장되어 있는 참조 영상에서 입력 블록과 가장 매치가 잘 되는 영역을 찾아 움직임 벡터를 구할 수 있다. 움직임 보상부(220)는 움직임 벡터를 이용하여 움직임 보상을 수행함으로써 예측 블록을 생성할 수 있다. 여기서, 움직임 벡터는 인터 예측에 사용되는 2차원 벡터이며, 현재 블록과 참조 영상 내 블록 사이의 오프셋을 나타낼 수 있다.In the inter mode, the motion predictor 210 may obtain a motion vector by searching for a region that best matches an input block in the reference image stored in the reference image buffer 800 during the motion prediction process. The motion compensator 220 may generate a prediction block by performing motion compensation using the motion vector. Here, the motion vector is a two-dimensional vector used for inter prediction and may represent an offset between the current block and a block in the reference picture.
도 2에서 움직임 예측부(210), 움직임 보상부(220) 및 인트라 예측부(300)는 각각 별개의 구성으로 도시되어 있으나, 본 발명이 이에 한정되는 것은 아니다. 예컨대, 움직임 예측부(210) 및 움직임 보상부(220)는 하나의 인터 예측부를 구성할 수도 있으며, 움직임 예측부(210), 움직임 보상부(220) 및 인트라 예측부(300)는 하나의 예측부를 구성할 수도 있다.In FIG. 2, the motion predictor 210, the motion compensator 220, and the intra predictor 300 are illustrated in separate configurations, but the present invention is not limited thereto. For example, the motion predictor 210 and the motion compensator 220 may configure one inter predictor, and the motion predictor 210, the motion compensator 220, and the intra predictor 300 may predict one. You can also configure wealth.
감산기(350)는 입력 블록과 생성된 예측 블록의 차분에 의해 잔차 블록(residual block)을 생성할 수 있다. 변환부(400)는 잔차 블록에 대해 변환(transform)을 수행하여 변환 계수(transform coefficient)를 출력할 수 있다. 그리고 양자화부(500)는 입력된 변환 계수를 양자화 파라미터에 따라 양자화하여 양자화된 계수(quantized coefficient)를 출력할 수 있다.The subtractor 350 may generate a residual block by the difference between the input block and the generated prediction block. The transform unit 400 may perform a transform on the residual block to output a transform coefficient. The quantization unit 500 may output the quantized coefficient by quantizing the input transform coefficient according to the quantization parameter.
엔트로피 부호화부(600)는, 양자화부(500)에서 산출된 값들 또는 부호화 과정에서 산출된 부호화 파라미터 값 등을 기초로 엔트로피 부호화를 수행하여 비트 스트림(bit stream)을 출력할 수 있다.The entropy encoder 600 may output a bit stream by performing entropy encoding based on values calculated by the quantizer 500 or encoding parameter values calculated in the encoding process.
엔트로피 부호화가 적용되는 경우, 높은 발생 확률을 갖는 심볼(symbol)에 적은 수의 비트가 할당되고 낮은 발생 확률을 갖는 심볼에 많은 수의 비트가 할당되어 심볼이 표현됨으로써, 부호화 대상 심볼들에 대한 비트열의 크기가 감소될 수 있다. 따라서 엔트로피 부호화를 통해서 영상 부호화의 압축 성능이 높아질 수 있다. 엔트로피 부호화부(600)는 엔트로피 부호화를 위해 지수-골롬 코드(Exponential-Golomb Code), CAVLC(Context-Adaptive Variable Length Coding), CABAC(Context-Adaptive Binary Arithmetic Coding)과 같은 부호화 방법을 사용할 수 있다.When entropy encoding is applied, a small number of bits are assigned to a symbol having a high probability of occurrence and a large number of bits are assigned to a symbol having a low probability of occurrence, thereby representing bits for encoding symbols. The size of the heat can be reduced. Therefore, compression performance of image encoding may be increased through entropy encoding. The entropy encoder 600 may use an encoding method such as an exponential-Golomb code, context-adaptive variable length coding (CAVLC), or context-adaptive binary arithmetic coding (CABAC) for entropy encoding.
도 2의 실시예에 따른 부호화기는 인터 예측 부호화, 즉 화면 간 예측 부호화를 수행하므로, 현재 부호화된 영상은 참조 영상으로 사용되기 위해 복호화되어 저장될 필요가 있다. 따라서 양자화된 계수는 역양자화부(550)에서 역양자화되고 역변환부(450)에서 역변환된다. 역양자화 및 역변환된 계수는 복원된 잔차 블록이 되어 가산기(455)를 통해 예측 블록과 더해지고 복원 블록이 생성된다.Since the encoder according to the embodiment of FIG. 2 performs inter prediction encoding, that is, inter prediction encoding, the current encoded image needs to be decoded and stored to be used as a reference image. Accordingly, the quantized coefficients are inversely quantized by the inverse quantizer 550 and inversely transformed by the inverse transformer 450. The inverse quantized and inverse transformed coefficients become reconstructed residual blocks, added with predictor blocks through adder 455, and a reconstructed block is generated.
복원 블록은 필터부(700)를 거치고, 필터부(700)는 디블록킹 필터(deblocking filter), SAO(Sample Adaptive Offset) 중 적어도 하나 이상을 복원 블록 또는 복원 픽처에 적용할 수 있다. 필터부(700)는 인루프(in-loop) 필터로 불릴 수도 있다. 디블록킹 필터는 블록 간의 경계에 생긴 블록 왜곡 및/또는 블록킹 아티팩트(blocking artifact)를 제거할 수 있다. SAO는 코딩 에러를 보상하기 위해 픽셀 값에 적정 오프셋(offset) 값을 더해줄 수 있다. 필터부(700)를 거친 복원 블록은 참조 영상 버퍼(800)에 저장될 수 있다.The reconstruction block passes through the filter unit 700, and the filter unit 700 may apply at least one or more of a deblocking filter and a sample adaptive offset (SAO) to the reconstructed block or the reconstructed picture. The filter unit 700 may be referred to as an in-loop filter. The deblocking filter may remove block distortion and / or blocking artifacts that occur at the boundaries between blocks. SAO may add an appropriate offset value to the pixel value to compensate for coding errors. The reconstructed block that has passed through the filter unit 700 may be stored in the reference image buffer 800.
이하 본 발명의 실시예에 따른 모드 결정장치(100)에 의해 수행되는 HEVC의 모드 결정방법에 대해 설명하기로 한다.Hereinafter, a mode determination method of HEVC performed by the mode determination apparatus 100 according to an embodiment of the present invention will be described.
본 발명의 하나의 실시예에 따른 HEVC의 모드 결정방법에 따르면, 모드들에서 발생 가능한 RDcost의 하한을 추정한 후 현재 모드의 RDcost가 그 하한보다 작을 경우에는 더 이상 모드 결정 과정이 진행되지 않는다. 상기 HEVC의 모드 결정방법은 (1) 인트라 예측 모드 결정방법 (2) CU 크기 결정방법 (3) 인터 예측 CU/PU 모드 결정방법 에 적용될 수 있다.According to the mode determination method of HEVC according to an embodiment of the present invention, if the RDcost of the current mode is smaller than the lower limit after estimating the lower limit of the RDcost that may occur in the modes, the mode determination process no longer proceeds. The HEVC mode determination method may be applied to (1) intra prediction mode determination method, (2) CU size determination method, and (3) inter prediction CU / PU mode determination method.
HEVC는 최적의 부호화 파라미터를 선택하기 위하여 수학식 1과 같은 율-왜곡 최적화 (Rate-Distortion Optimization, 이하 RDO)를 사용한다.HEVC uses Rate-Distortion Optimization (RDO) as shown in Equation 1 to select an optimal coding parameter.
Figure PCTKR2017002190-appb-M000001
Figure PCTKR2017002190-appb-M000001
수학식 1에서 DMODE는 원영상과 MODE로 부호화/복호화 되었을 때의 복원된 영상 사이에 발생하는 왜곡(Distortion)을 의미하며 수학식 2와 같이 구체적으로 정의될 수 있다. RMODE는 영상이 MODE로 부호화되었을 때 발생되는 비트의 합을 의미한다. λ는 라그랑지안 계수(Lagrangian multiplier)로서 양자화 파라미터(Quantization parameter)와 연관된 파라미터이다.In Equation 1, D MODE refers to a distortion occurring between the original image and the reconstructed image when encoded / decoded as a MODE, and may be specifically defined as shown in Equation 2. R MODE means the sum of bits generated when an image is encoded in the MODE. [lambda] is a parameter associated with a quantization parameter as a Lagrangian multiplier.
Figure PCTKR2017002190-appb-M000002
Figure PCTKR2017002190-appb-M000002
Org(x,y)는 원영상을 의미하며 RecMODE(x,y)는 MODE로 부호화/ 복호화하였을 때 생성되는 복원된 영상이다. 하나의 CU안에서의 원영상과 복원 영상의 차이의 제곱을 더한 것이 SSE(Sum of Squared Error)가 된다. 최종적으로 JMODE는 율-왜곡 비용(Rate-Distortion cost: 이하 RDcost)이며 JMODE 을 기준으로 최소값의 JMODE를 갖는 모드가 최적의 모드(MODE)로 결정된다.Org (x, y) means the original image, and Rec MODE (x, y) is the reconstructed image generated when encoded / decoded by MODE. The sum of the squares of the difference between the original image and the reconstructed image in one CU becomes SSE (Sum of Squared Error). Finally J MODE is the rate-distortion cost (Rate-Distortion cost: RDcost below) is determined, the mode having the minimum value, based on J J MODE MODE to the best mode (MODE).
HEVC에서는 위의 RDO 기법을 사용하여 모든 후보 모드(MODE)에 대하여 RDcost가 산출되고 그 중 가장 작은 RDcost를 갖는 모드가 최적의 모드로 결정된다. 그러나 RDcost를 산출하기 위해서는 모든 모드에 대하여 부호화 과정이 수행되어야 하므로 매우 복잡한 연산 과정이 소요된다. 이는 최적이 아닌 모드에 대하여도 부호화 과정이 수행되어야 하는 것으로서 연산이 불필요하게 수행됨을 의미한다. 이를 해결하기 위해 본 발명에서는 불필요한 연산을 제거하여 고속으로 HEVC의 모드 결정을 할 수 있는 방법이 제안된다. In HEVC, the RDcost is calculated for all candidate modes (MODE) using the above RDO technique, and the mode having the smallest RDcost is determined as the optimal mode. However, in order to calculate RDcost, a coding process must be performed for all modes, which requires a very complicated calculation process. This means that the encoding process should be performed even for the non-optimal mode, which means that computation is unnecessary. In order to solve this problem, the present invention proposes a method for determining a mode of HEVC at high speed by removing unnecessary operations.
RDO 과정에서 RMODE는 모드가 부호화될 때 구성되는 신택스(Syntax) 요소가 부호화되기 위해 필요한 비트이다. 본 발명은 모드마다 필요한 신택스 요소가 서로 다르다는 점에 착안하여, 일반 모드가 가질 수 있는 최소의 RDcost를 예측하고, 일반 모드 이외의 특정 모드가 이 RDcost보다 작으면 일반 모드의 RDcost 계산은 생략되고 특정 모드가 최적의 모드로 선택되는 방법에 관한 것이다. 상기 과정은 다음과 같은 수식으로 표현될 수 있다. In the RDO process, R MODE is a bit required for encoding a syntax element configured when a mode is encoded. In view of the fact that the syntax elements required for each mode are different from each other, the present invention estimates the minimum RDcost that a normal mode may have, and if a specific mode other than the normal mode is smaller than this RDcost, the RDcost calculation of the normal mode is omitted and specified. It is about how the mode is selected as the optimal mode. The above process can be expressed by the following equation.
Figure PCTKR2017002190-appb-M000003
Figure PCTKR2017002190-appb-M000003
Figure PCTKR2017002190-appb-M000004
Figure PCTKR2017002190-appb-M000004
Figure PCTKR2017002190-appb-M000005
Figure PCTKR2017002190-appb-M000005
수학식 3의 MODE2는 일반 모드를 의미하며 왜곡 D는 항상 0보다 크므로 수학식 3은 수학식 4를 항상 만족한다. 또한 RMODE2 의 하한이 RL MODE2라고 한다면 수학식 5가 만족된다. 따라서 수학식 6이 도출된다.MODE2 of Equation 3 refers to the general mode and the distortion D is always greater than 0, so Equation 3 always satisfies Equation 4. R MODE2 Equation 5 is satisfied if the lower limit of R L MODE2 . Therefore, equation (6) is derived.
Figure PCTKR2017002190-appb-M000006
Figure PCTKR2017002190-appb-M000006
특정 모드인 MODE1의 RDcost가 JMODE1이고 JMODE1이 λRL MODE2보다 작다면, JMODE2는 JMODE1보다 항상 크므로 MODE2의 RDcost와 상관없이 MODE1이 최적의 모드임에 해당된다.If the RDcost of a particular mode, MODE1, is J MODE1 and J MODE1 is smaller than λ R L MODE2 , J MODE2 is always greater than J MODE1 , which means that MODE1 is the optimal mode regardless of the RDcost of MODE2.
도 4는 본 발명의 실시예에 따른 HEVC의 부호화 모드 결정방법의 흐름도이다.4 is a flowchart of a method of determining an encoding mode of HEVC according to an embodiment of the present invention.
도 4를 참조하면, 시작 이전에 λRL MODE2이 미리 연산된다. 다음으로 JMODE1의 Rdcosts가 연산된다. 다음으로 JMODE1의 Rdcosts가 λRL MODE2보다 작은지 판단된다. 판단 결과 Yes이면 최적의 모드로 MODE1이 결정되고, No이면 다음에서 MODE2의 Rdcosts가 연산된다. 다음으로 MODE1의 Rdcosts 와 MODE2 Rdcosts가 비교되고, 이 중에서 최적의 것이 결정될 수 있다. 이러한 일련의 단계들은 전체 모드에 대해서 수행되며, 전체 모드에 수행되기 전에 최적의 모드가 결정될 수 있다.4, λ R L MODE2 is precomputed before start. Next, the Rdcosts of J MODE1 are calculated. Next, it is determined whether Rdcosts of J MODE1 is smaller than λ R L MODE2 . As a result of determination, MODE1 is determined as an optimal mode. If No, Rdcosts of MODE2 is calculated next. Next, Rdcosts of MODE1 and Rdcosts of MODE2 are compared, and an optimal one of them can be determined. This series of steps is performed for the full mode, and the optimal mode can be determined before performing the full mode.
본 발명의 성능을 결정짓는 핵심 요소는 RDcost의 하한을 결정하는 방법이다. 본 발명에서 RDcost의 하한은 모드를 부호화하기 위한 신택스의 개수와 신택스의 분포에 기반하여 결정된다. 그 결정 결과는 각각의 모드마다 다르며 아래에서 각각의 모드에 대한 예시가 나타나 있다.A key factor in determining the performance of the present invention is the method of determining the lower limit of RDcost. In the present invention, the lower limit of the RDcost is determined based on the number of syntaxes and the distribution of syntaxes for encoding a mode. The result of the determination is different for each mode, and an example of each mode is shown below.
(1) HEVC의 인트라 PU 예측 결정 방법(1) method of determining intra PU prediction of HEVC
HEVC에서 효율적인 화면 내 예측을 위해 35개의 인트라 예측 모드가 존재한다. 인트라 PU일 경우 35개의 예측 모드 중 최적의 예측 모드가 선택되어 부호화 된다. 인트라 예측 모드 비트를 효율적으로 부호화하기 위해 HEVC에서는 MPM(most probable mode)이 도입되었다.There are 35 intra prediction modes for efficient intra prediction in HEVC. In the case of an intra PU, an optimal prediction mode is selected and encoded from 35 prediction modes. In order to efficiently encode intra prediction mode bits, the most probable mode (MPM) is introduced in HEVC.
MPM이란 현재 PU의 인트라 예측 모드가 주변 PU의 인트라 예측 모드와 동일할 경우 주변 모드와 동일한 인트라 예측 모드를 사용한다는 정보만 부호화하는 것을 의미한다. 따라서 현재 PU가 MPM으로 선택될 경우 인트라 예측 모드 부호화를 위한 비트가 크게 감소될 수 있다.MPM means that only information indicating that the intra prediction mode of the current PU uses the same intra prediction mode as the neighboring mode is the same as the intra prediction mode of the neighboring PU. Therefore, when the current PU is selected as the MPM, bits for intra prediction mode encoding may be greatly reduced.
도 5는 HEVC에서 MPM 획득을 위한 현재의 PU 및 주변 PU를 나타내는 예시도이다.5 is an exemplary diagram illustrating a current PU and a neighboring PU for MPM acquisition in HEVC.
도 5를 참조하면, 현재 PU의 왼쪽 PU와 상위 PU의 인트라 예측 모드를 사용하여 현재 PU의 MPM이 결정된다. MPM은 3개의 모드가 존재하며 따라서 MPM이 아닌 경우(Non-MPM)에는 32개의 인트라 예측 모드가 존재한다.Referring to FIG. 5, the MPM of the current PU is determined using the intra prediction mode of the left PU and the upper PU of the current PU. There are three modes of MPM, so there are 32 intra prediction modes in non-MPM.
도 6은 HEVC인트라 PU의 MPM 결정방법의 흐름도이다.6 is a flowchart of a method of determining an MPM of an HEVC intra PU.
도 6을 참조하면, 3개의 예측 모드 중 2개의 예측 모드(또는 주변의 모드가 동일할 때는 1개의 예측 모드)는 주변 모드를 이용하여 MPM을 설정하고 나머지 모드는 통계적으로 많이 발생하는 모드를 MPM으로 설정한다.Referring to FIG. 6, two of the three prediction modes (or one prediction mode when the surrounding modes are the same) set the MPM using the surrounding mode, and the other modes generate the MPM statistically. Set to.
본 발명에서 고속 결정 알고리즘은 MPM인 경우와 MPM이 아닌 경우 인트라 예측 모드 비트의 차이를 이용한다. 인트라 예측에서 하나의 PU는 표1과 같은 신택스를 이용하여 부호화 한다.In the present invention, the fast decision algorithm uses a difference between intra prediction mode bits in the case of MPM and non-MPM. In intra prediction, one PU is encoded using the syntax shown in Table 1.
현재 PU가 MPM일 경우에는 표 1에서 prev_intra_luma_flag, mpm_idx, cbf_luma, residual_coing()이 부호화 되어야 한다. 반면 현재 PU가 MPM이 아닐 경우, prev_intra_luma_flag, rem_intra_luma_pred_flag, cbf_luma, residual_coing()이 부호화 되어야 한다.If the current PU is MPM, prev_intra_luma_flag, mpm_idx, cbf_luma, and residual_coing () should be coded in Table 1. On the other hand, if the current PU is not MPM, prev_intra_luma_flag, rem_intra_luma_pred_flag, cbf_luma, and residual_coing () should be encoded.
MPM과 Non-MPM 사이의 차이는 mpm_idx와 rem_intra_luma_pred_flag 의 차이이고 mpm_idx는 3개의 MPM 중 한 개를 선택하고, rem_intra_luma_pred_flag 는 32개 중 한 개를 선택하기 때문에 rem_intra_luma_pred_flag가 부호화를 위해 더 많은 비트가 필요하다. 그리고 이를 이용하여 본 발명의 실시예에 따른 HEVC의 모드 결정방법이 제안된다.The difference between MPM and Non-MPM is the difference between mpm_idx and rem_intra_luma_pred_flag, mpm_idx selects one of three MPMs, and rem_intra_luma_pred_flag selects one of 32, so more bits are needed for encoding. And using this method is proposed a mode determination method of HEVC according to an embodiment of the present invention.
Syntax(신택스)Syntax Semantics(시맨틱)Semantics
prev_intra_luma_flagprev_intra_luma_flag 현재 PU가 MPM인지 아닌지를 가리키는 비트A bit indicating whether or not the current PU is an MPM
if(prev_intra_luma_flag==1)mpm_idxif (prev_intra_luma_flag == 1) mpm_idx MPM일 경우 3개의 MPM 중한 개를 가리키는 인덱스 비트Index bit for one of three MPMs if MPM
if(prev_intra_luma_flag==0)rem_intra_lum_pred_modeif (prev_intra_luma_flag == 0) rem_intra_lum_pred_mode MPM이 아닐 경우 MPM을 제외한 32개의 나머지 모드 중 한 개를 표시하는 비트Bit indicating one of the 32 remaining modes except MPM if not MPM
cbf_lumacbf_luma 잔여 신호의 유무를 가리키는 비트Bit indicating presence or absence of residual signal
residual_coding()residual_coding () 잔여 신호 코딩을 위한 함수Function for Residual Signal Coding
[하나의 인트라 PU를 부호화하기 위한 신택스 및 시맨틱][Syntax and Semantics for Encoding One Intra PU]
Non-MPM의 RDcost는 수학식 7과 같이 정의될 수 있다. DN - MPM은 Non-MPM일 때의 왜곡을 의미하고, RN- MPM은 Non-MPM일 때의 총 비트를 의미한다. RN- MPM은 다시 수학식 8과 같이 표현될 수 있다. RDcost of Non-MPM may be defined as in Equation 7. D N - MPM MPM is Non-meaningful distortion and, R N- MPM when the means the total number of bits when the Non-MPM. R N- MPM may be expressed again as in Equation 8.
Figure PCTKR2017002190-appb-M000007
Figure PCTKR2017002190-appb-M000007
Figure PCTKR2017002190-appb-M000008
Figure PCTKR2017002190-appb-M000008
Figure PCTKR2017002190-appb-M000009
Figure PCTKR2017002190-appb-M000009
수학식 8에서 Rprev N - MPM, Rrem N - MPM, Rcbf N - MPM, Rresidual() N - MPM는 각각 prev_intra_luma_flag, rem_intra_lum_pred_mode, cbf_luma, residual_coding()을 부호화하기 위한 비트를 의미한다. 수학식 8은 수학식 9와 같이 변환될 수 있다. 수학식 9 우측항의 오른쪽 부분에서 Rresidual() N - MPM이 만약 cbf가 0이면 부호화 할 필요가 없으므로 0이고, DN - MPM은 0보다 큰 값이다. 반면에 우측항의 왼쪽 부분은 항상 부호화해야 할 신호들이다. 왼쪽 부분의 신택스 파라미터는 CABAC(Context-adaptive binary arithmetic coding)에 의해서 부호화하기 때문에 정확한 비트 수는 실제 인코딩 되어야 알 수 있으나, 고속 알고리즘을 위해 본 발명에서는 그 값을 예측하도록 한다. Rprev N - MPM와 Rcbf N - MPM은 해당 신택스 정보에 대한 유무만을 판단하기 때문에 각각 1 비트로 부호화 가능하다고 볼 수 있다. Rrem N - MPM는 32개의 인트라 모드 중에 한 개를 선택하는 것이고 만약 32개의 인트라 모드의 확률 분포가 평탄(uniform)하다고 가정하면 부호화하기 위해 5개의 비트가 필요하다. 따라서 수학식 9는 다시 수학식 10과 같이 변환될 수 있다.In Equation 8, R prev N - MPM , R rem N - MPM , R cbf N - MPM , and R residual () N - MPM mean bits for encoding prev_intra_luma_flag, rem_intra_lum_pred_mode, cbf_luma, and residual_coding (), respectively. Equation 8 may be converted as shown in Equation 9. In the right part of Equation 9, R residual () N - MPM is 0 because cbf is 0, so it is not necessary to encode it, and D N - MPM is greater than 0. On the other hand, the left part of the right term is always the signals to be encoded. Since the syntax parameter of the left part is encoded by Context-adaptive binary arithmetic coding (CABAC), the exact number of bits must be actually encoded, but the present invention predicts the value for a fast algorithm. Since R prev N - MPM and R cbf N - MPM only determine whether there is syntax information, it can be regarded that each can be encoded by 1 bit. R rem N - MPM selects one of the 32 intra modes and assumes that if the probability distribution of the 32 intra modes is uniform, 5 bits are required to encode. Therefore, Equation 9 may be converted back to Equation 10.
Figure PCTKR2017002190-appb-M000010
Figure PCTKR2017002190-appb-M000010
앞서 언급하였듯이 (DN - MPM+λRresidual() N - MPM)은 0보다 크므로 결국 Non-MPM이 가질 수 있는 RDcost의 범위는 수학식 11과 같고 Non-MPM의 RDcost의 하한은 7λ임을 알 수 있다.As mentioned earlier, (D N - MPM + λR residual () N - MPM ) is greater than 0, so the range of RDcost that Non-MPM can have is equal to Equation 11, and the lower limit of RDcost of Non-MPM is 7λ. Can be.
Figure PCTKR2017002190-appb-M000011
Figure PCTKR2017002190-appb-M000011
따라서 만약 MPM의 RDcost JMPM이 7λ 보다 작다면 최적의 모드는 MPM임을 알 수 있고 Non-MPM을 위한 RDcost는 계산할 필요가 없음을 알 수 있다.Therefore, if the MPD's RDcost J MPM is less than 7λ, it can be seen that the optimal mode is MPM and the RDcost for non-MPM does not need to be calculated.
도 7은 본 발명의 실시예에 따른 HEVC의 인트라 예측 모드 결정방법의 흐름도이다.7 is a flowchart of a method of determining an intra prediction mode of HEVC according to an embodiment of the present invention.
도 7을 참조하면, 시작 이전에 Non-MPMs의 RDcosts의 하한이 7λ으로 연산되어 미리 결정된다. 다음으로 MPMs의 RDcosts가 연산되고, 이들 중에서 최소의 RDcost를 갖는 최적의 MPM이 선택된다. 다음으로 최적의 MPM의 RDcost(JMPM)가 7λ보다 작은지 판단된다. 판단 결과 Yes이면 최적의 모드로 MPM이 결정되고, No이면 Non-MPMs의 Rdcosts가 연산된다. 다음으로 최적의 MPM의 RDcost와 Non-MPMs의 Rdcosts가 비교되고, 이 중에서 최적의 것이 결정될 수 있다. 이러한 일련의 단계들은 전체 모드에 대해서 수행되며, 전체 모드에 수행되기 전에 최적의 모드가 결정될 수 있다.Referring to FIG. 7, before the start, the lower limit of the RDcosts of the Non-MPMs is calculated as 7λ and predetermined. Next, the RDcosts of the MPMs are calculated, and an optimal MPM having a minimum RDcost is selected among them. Next, it is determined whether the optimal MPM RDcost (J MPM ) is smaller than 7λ. If the result of the determination is Yes, the MPM is determined as the optimal mode. If No, the Rdcosts of the Non-MPMs are calculated. Next, the RDcosts of the optimal MPM and the Rdcosts of the Non-MPMs are compared, and the optimal one can be determined. This series of steps is performed for the full mode, and the optimal mode can be determined before performing the full mode.
(2) HEVC의 인트라 CU 크기 결정방법(2) How to determine intra CU size of HEVC
본 발명의 다른 실시예에 따른 HEVC 인트라 CU 크기 결정 방법에 대해 설명하기로 한다.An HEVC intra CU size determination method according to another embodiment of the present invention will be described.
도 8은 HEVC CU 크기 결정방법의 흐름도이다.8 is a flowchart of a HEVC CU size determination method.
도 8를 참조하면, 하나의 CU는 4개의 sub-CU로 분할 될 수 있으며 분할 유무는 CU의 RDcost와 sub-CU의 RDcost의 합과의 비교에 의해 결정된다. 즉 CU의 RDcost가 4개 sub-CU의 RDcost의 합보다 작으면, 현재 CU는 더 이상 분할 되지 않는다. 그 반대일 경우는 CU는 분할되어 sub-CU가 최적의 CU가 된다.Referring to FIG. 8, one CU may be divided into four sub-CUs, and the presence or absence of the CU is determined by comparing the RDcost of the CU with the sum of the RDcosts of the sub-CU. That is, if the RDcost of the CU is less than the sum of the RDcosts of the four sub-CUs, the current CU is no longer split. In the opposite case, the CU is divided so that the sub-CU becomes an optimal CU.
본 발명의 실시예에 따른 HEVC CU 크기 결정방법에서는 한 개의 인트라 CU가 가지는 신택스를 분석하고 이에 기반하여 4개의 sub-CU의 RDcost 합의 하한을 구하도록 한다. 상위 CU의 RDcost와 sub-CU의 RDcost 합의 하한을 비교하여 인트라 CU의 분할 유무를 결정하도록 한다. 자세한 사항은 아래와 같다.In the HEVC CU size determination method according to an embodiment of the present invention, the syntax of one intra CU is analyzed and the lower limit of the RDcost agreement of four sub-CUs is obtained based on the syntax. The RDcost of the upper CU and the lower limit of the RDcost of the sub-CU are compared to determine whether the intra CU is divided. Details are as follows.
Syntax(신택스)Syntax Semantics (시맨틱)Semantics
prev_intra_luma_flagprev_intra_luma_flag 현재 PU가 MPM인지 아닌지를 가리키는 비트A bit indicating whether or not the current PU is an MPM
if(prev_intra_luma_flag==1)mpm_idxif (prev_intra_luma_flag == 1) mpm_idx MPM일 경우 3개의 MPM 중 한 개를 가리키는 인덱스 비트Index bit pointing to one of three MPMs if MPM
if(prev_intra_luma_flag==0)rem_intra_lum_pred_modeif (prev_intra_luma_flag == 0) rem_intra_lum_pred_mode MPM이 아닐 경우 MPM을 제외한 32개의 나머지 모드 중 한 개를 표시하는 비트Bit indicating one of the 32 remaining modes except MPM if not MPM
intra_chroma_pred_modeintra_chroma_pred_mode 색차 신호의 예측 모드를 가리키는 비트Bits indicating the prediction mode of the chrominance signal
split_transform_flagsplit_transform_flag TU의 분할 유무를 가리키는 비트Bit indicating whether TU is split
cbf_lumacbf_luma Luma 잔여 신호의 유무를 가리키는 비트Bit indicating the presence or absence of luma residual signal
cbf_cbcbf_cb Chroma(Cb) 잔여 신호의 유무를 가리키는 비트Chroma (Cb) Bit indicating presence of residual signal
cbf_crcbf_cr Chroma(Cr) 잔여 신호의 유무를 가리키는 비트Chroma (Cr) Bit indicating the presence of residual signal
split_cu_flagsplit_cu_flag CU의 분할 유무를 가리키는 비트Bit indicating whether CU is split
residual_coding()residual_coding () 잔여 신호 코딩을 위한 함수Function for Residual Signal Coding
[하나의 인트라 CU를 구성하는 신택스 구성요소][Syntax component constituting one intra CU]
표 2에서, mpm_idx와 rem_intra_lum_pred_mode는 MPM 유무에 따라 두 개 중 한 개만 선택된다. 따라서 잔여 신호 부호화인 residual_coding()이 제외된다고 가정하면 하나의 CU당 최소 8개의 신택스 요소가 필요함을 알 수 있다. 따라서 4개의 sub-CU는 최소한 총 32개의 신택스 요소가 부호화 되어야 한다. 만약 한 개의 신택스가 최소 1 비트 이상이 필요하다고 가정하면 4개의 sub-CU를 위해서는 최소 32비트 이상이 필요함을 알 수 있다. 그리고 왜곡은 항상 0보다 크므로 4개의 sub-CU의 RDcost의 합은 항상 32λ보다 크다. 따라서 는 4개의 sub-CU의 RDcost의 합의 하한이 된다.In Table 2, only one of the mpm_idx and rem_intra_lum_pred_mode is selected depending on the presence or absence of the MPM. Therefore, assuming that residual_coding (), which is residual signal coding, is excluded, it can be seen that at least eight syntax elements are required per CU. Therefore, at least 32 syntax elements must be encoded in four sub-CUs. If one syntax requires at least one bit, it can be seen that at least 32 bits are required for four sub-CUs. And since the distortion is always greater than zero, the sum of the RDcosts of the four sub-CUs is always greater than 32λ. Therefore, is the lower limit of the RDcost of the four sub-CUs.
최종적으로 본 발명에서는 CU의 RDcost가 sub-CU의 RDcost 합의 하한인 32λ 보다 작으면 CU의 RDcost가 항상 sub-CU의 RDcost의 합보다 작으므로 sub-CU로 더 이상 분할되지 않는다.Finally, in the present invention, if the RDcost of the CU is smaller than the lower limit of 32λ, the lower limit of the RDcost of the sub-CU, the CU is always no longer divided into the sub-CU since the RDcost of the CU is always smaller than the sum of the RDcosts of the sub-CU.
도 9는 본 발명의 실시예에 따른 HEVC의 인트라 CU 크기 결정방법의 흐름도이다.9 is a flowchart of a method of determining intra CU size of HEVC according to an embodiment of the present invention.
sub-CU의 RDcost의 하한은 CU 크기에 따라 변할 수 있다. 이는 부호화의 제약 조건으로 인하여 특정 신택스 요소는 부호화 할 필요가 없기 때문에 발생한다. 예를 들어 HEVC에서는 8×8이 최소 CU단위이기 때문에 sub-CU의 크기가 8×8이면 더 이상 CU를 분할할 필요가 없으므로 split_cu_flag는 부호화 할 필요가 없다. 따라서 이 경우의 8×8 sub-CU의 RDcost의 하한은 28λ가 된다.The lower limit of the RDcost of the sub-CU may vary depending on the CU size. This occurs because certain syntax elements do not need to be encoded because of encoding constraints. For example, in HEVC, since 8 × 8 is the minimum CU unit, split_cu_flag does not need to be encoded if the sub-CU size is 8 × 8. Therefore, the lower limit of the RDcost of the 8x8 sub-CU in this case is 28λ.
*(3) 고속 인터 CU/PU 모드 결정 방법 * (3) How to determine high speed inter CU / PU mode
도 10은 HEVC 인터 모드 종류를 나타내는 예시도이다.10 is an exemplary diagram illustrating a type of HEVC inter mode.
HEVC는 효율적인 인터 예측을 위하여 도 11과 같이 SKIP, MERGE, INTER 2N×2N, INTER 2N×N, INTER N×2N, INTER N×N 등 다양한 PU 모드를 제공한다. 각각의 PU 모드를 부호화 하기 위한 신택스 요소나 부호화하기 위해 필요한 신택스 개수는 서로 상이하다.HEVC provides various PU modes such as SKIP, MERGE, INTER 2N × 2N, INTER 2N × N, INTER N × 2N, and INTER N × N as shown in FIG. 11 for efficient inter prediction. The syntax element for encoding each PU mode or the number of syntax required for encoding are different from each other.
이하 상기 차이점을 이용하여 본 발명의 다른 실시예에 따른 HEVC 인터 CU 및 PU 모드 결정방법에 대해 설명하기로 한다.Hereinafter, a method of determining an HEVC inter-CU and a PU mode according to another embodiment of the present invention will be described using the difference.
각각의 모드에 대한 필요한 신택스 요소의 최소 개수를 추정하고 이에 기반 하여 모드 결정과정을 미리 종료하는 방법이 개시된다.A method of estimating the minimum number of required syntax elements for each mode and ending the mode determination process in advance is disclosed.
Syntax(신택스)Syntax Semantics (시맨틱)Semantics
cu_skip_flagcu_skip_flag 현재 CU를 SKIP으로 부호할지 유무를 가리키는 비트 Bit indicating whether the current CU should be signed with SKIP
merge_idxmerge_idx SKIP을 위한 움직임 벡터 후보 중 한 개를 가리키는 인덱스 비트Index bit pointing to one of the motion vector candidates for SKIP
[SKIP CU를 부호화하기 위해 필요한 신택스 및 시맨틱][Syntax and Semantics for Encoding SKIP CU]
SKIP CU를 위해 필요한 신택스 요소는 위의 표 3과 같다.The syntax elements required for the SKIP CU are shown in Table 3 above.
그리고 SKIP 이 아닐 경우 (Non-SKIP) 필요한 인터 CU 신택스 요소는 아래 표 4, 표 5 및 표 6과 같다.And non-SKIP (Non-SKIP) required inter-CU syntax elements are shown in Table 4, Table 5 and Table 6 below.
Syntax (신택스)Syntax Semantics (시맨틱)Semantics
cu_skip_flagcu_skip_flag 현재 CU를 SKIP으로 부호할지 유무를 가리키는 비트Bit indicating whether the current CU should be signed with SKIP
pred_mode_flagpred_mode_flag 현재 CU가 인트라 CU인지 인터 CU인지 가리키는 비트Bit indicating whether the current CU is an intra CU or an inter CU
part_modepart_mode 인터 모드의 PU 타입을 가리키는 비트Bit indicating PU type of inter mode
prediction_unit()prediction_unit () PU를 부호화 하기 위한 정보Information for Encoding a PU
rqt_root_cbfrqt_root_cbf 현재 CU에 Luma, Cb, Cr의 잔여 신호가 포함되어 있는지 아닌지를 가리키는 비트Bit indicating whether the current CU contains the residual signal of Luma, Cb, Cr
transform_tree()transform_tree () 잔여 신호를 부호화하기 위한 정보Information for Encoding Residual Signal
[Non-SKIP CU를 부호화하기 위해 필요한 신택스 및 시맨틱][Syntax and Semantics for Encoding Non-SKIP CUs]
Syntax (신택스)Syntax Semantics (시맨틱)Semantics
merge_flagmerge_flag 현재 PU가 MERGE인지 아닌지를 가리키는 비트A bit indicating whether the current PU is MERGE
merge_idxmerge_idx MERGE를 위한 움직임 벡터 후보 중 한 개를 가리키는 인덱스 비트Index bit pointing to one of the motion vector candidates for MERGE
inter_pred_idcinter_pred_idc 단방향 예측 중 List0만 사용할지 List1만 사용할지 아니면 쌍방향 예측을 사용할지를 가리키는 비트Bits that indicate whether to use List0, List1, or Bidirectional Prediction only in one-way prediction.
ref_idx_10ref_idx_10 현재 PU를 위한 List0 참조 번호를 가리키는 비트Bit pointing to the List0 refnum for the current PU
mvp_10_flagmvp_10_flag List0의 움직임 벡터 예측기 후보 중 한 개를 가리키는 비트Bits pointing to one of the motion vector predictor candidates in List0
ref_idx_11ref_idx_11 현재 PU를 위한 List1 참조 번호를 가리키는 비트Bit pointing to the List1 reference number for the current PU
mvp_11_flagmvp_11_flag List1의 움직임 벡터 예측기 후보 중 한 개를 가리키는 비트Bits pointing to one of the motion vector predictor candidates in List1
mvd_coding()mvd_coding () 움직임 벡터 코딩을 위한 함수Function for motion vector coding
[prediction_unit()이 포함하는 신택스 및 시맨틱][Syntax and semantics included in prediction_unit ()]
Syntax (신택스)Syntax Semantics (시맨틱)Semantics
abs_mvd_greater()_flag[0]abs_mvd_greater () _ flag [0] x 방향 움직임 벡터의 절대 값이 0보다 큰지를 가리키는 비트Bit indicating whether the absolute value of the x-direction motion vector is greater than zero
abs_mvd_greater()_flag[1]abs_mvd_greater () _ flag [1] y 방향 움직임 벡터의 절대 값이 0보다 큰지를 가리키는 비트Bit indicating whether the absolute value of the y-direction motion vector is greater than 0
abs_mvd_greater1_flag[0]abs_mvd_greater1_flag [0] x 방향 움직임 벡터의 절대 값이 1보다 큰지를 가리키는 비트Bit indicating whether the absolute value of the x-direction motion vector is greater than 1
abs_mvd_greater1_flag[1]abs_mvd_greater1_flag [1] y 방향 움직임 벡터의 절대 값이 1보다 큰지를 가리키는 비트Bit indicating whether the absolute value of the y-direction motion vector is greater than 1
abs_mvd_minus2[0]abs_mvd_minus2 [0] x 방향 움직임 벡터의 절대 값에 2를 뺀 값Absolute value of motion vector in x direction minus 2
mvd_sign_flag[0]mvd_sign_flag [0] x 방향 움직임 벡터의 부호sign of x direction motion vector
abs_mvd_minus2[1]abs_mvd_minus2 [1] y 방향 움직임 벡터의 절대 값에 2를 뺀 값Absolute value of y-direction motion vector minus 2
mvd_sign_flag[1]mvd_sign_flag [1] y 방향 움직임 벡터의 부호sign of y-direction motion vector
[mvd_coding()이 포함하는 신택스 및 시맨틱][Syntax and semantics included in mvd_coding ()]
SKIP을 위해 필요한 총 신택스의 수는 2개이고, 각각의 신택스 요소를 1비트로 부호화 한다고 가정하면 필요한 최소 비트 수는 2이다. 따라서 만약 다른 CU 모드의 RDcost가 2λ보다 작으면 SKIP모드의 RDcost를 연산할 필요가 없다.The total number of syntaxes required for SKIP is two, and assuming that each syntax element is encoded with one bit, the minimum number of bits required is two. Therefore, if the RDcost of the other CU mode is less than 2λ, it is not necessary to calculate the RDcost of the SKIP mode.
표 4의 prediction_unit()이 포함하는 정보는 위의 표 5에 나타난다. merge_flag는 현재 PU가 MERGE인지 아닌지를 가리킨다. 만약 MERGE이면 merge_idx를 부호화하며, MERGE가 아닌 경우 inter_pred_idc, ref_idx_l0, mvp_l0_flag, ref_idx_l1, mvp_l1_flag, mvd_coding() 등을 부호화 한다. 따라서 현재 PU가 MERGE인지 아닌지에 따라서 부호화될 신택스 요소의 수가 달라진다. 또한, prediction_unit()은 PU마다 한 개씩 부호화 된다. 예를 들어 2N×2N의 경우에는 하나의 CU에 한 개의 PU가 존재하고, 2N×N 또는 N×2N인 경우에는 2개의 PU가 존재한다. N×N의 경우에는 총 4개의 PU가 존재한다. 슬라이스 유형에 따라 prediction_unit()에 포함될 수 있는 신택스 요소가 다르다. 예를 들어 P 슬라이스의 경우에는 전방향으로만 예측할 수 있기 때문에 List0에 연관된 신택스 요소만 필요하다. 반면에 B 슬라이스의 경우에는 양방향 및 전방향으로 예측이 가능하기 때문에 List0및 List1에 연관된 신택스 요소가 모두 필요하다. 이런 다양한 특징들을 조합하여 본 발명에서는 HEVC의 인터 모드 결정방법을 위한 RDcost의 하한을 결정한다.Information included in prediction_unit () of Table 4 is shown in Table 5 above. merge_flag indicates whether or not the current PU is MERGE. If MERGE, merge_idx is encoded. If not MERGE, inter_pred_idc, ref_idx_l0, mvp_l0_flag, ref_idx_l1, mvp_l1_flag, and mvd_coding () are encoded. Therefore, the number of syntax elements to be encoded varies depending on whether or not the current PU is MERGE. In addition, one prediction_unit () is encoded for each PU. For example, in the case of 2N × 2N, one PU exists in one CU, and in the case of 2N × N or N × 2N, two PUs exist. In the case of N × N, there are four PUs in total. Different syntax elements may be included in prediction_unit () depending on the slice type. For example, a P slice can only be predicted in all directions, so only the syntax elements associated with List0 are needed. On the other hand, in the case of B slices, since the prediction is bidirectional and omnidirectional, all of the syntax elements associated with List0 and List1 are required. By combining these various features, the present invention determines the lower limit of RDcost for the method of determining inter mode of HEVC.
mvd_coding()이 포함하는 신택스 요소는 표 6이 보여준다. abs_mvd_greater1_flag[0] 및 mvd_sign_flag[0]는 abs_mvd_greater0_flag[0]가 1인 경우에 존재하는 값이고, abs_mvd_greater1_flag[1] 및 mvd_sign_flag[1]는 abs_mvd_greater0_flag[1]가 1인 경우에 존재하는 값이다. abs_mvd_minus2[0]는 abs_mvd_greater0_flag[0] 및 abs_mvd_greater1_flag[0]가 모두 1이어야 존재하는 값이고, abs_mvd_minus2[1]는 abs_mvd_greater0_flag[1] 및 abs_mvd_greater1_flag[1]이 모두 1이어야 존재하는 값이다. 따라서 mvd_coding()는 움직임 벡터에 따라 최소 2개부터 최대 8개까지의 신택스 요소가 부호화 과정에 요구된다.The syntax elements included in mvd_coding () are shown in Table 6. abs_mvd_greater1_flag [0] and mvd_sign_flag [0] are values present when abs_mvd_greater0_flag [0] is 1, and abs_mvd_greater1_flag [1] and mvd_sign_flag [1] are 1 when abs_mvd_greater0_flag [1] is 1, respectively. abs_mvd_minus2 [0] is a value in which abs_mvd_greater0_flag [0] and abs_mvd_greater1_flag [0] must both be 1, and abs_mvd_minus2 [1] is absent in both abs_mvd_greater0_flag [1] and abs_mvd_greater1_flag [1]. Accordingly, mvd_coding () requires at least two to eight syntax elements according to the motion vector in the encoding process.
표 4 내지 표 6까지의 정보를 조합하여 본 발명에서는 SKIP을 제외한 다른 인터 모드에 대한 RDcost의 하한을 결정된다. 본 발명의 실시예에 따른 HEVC의 모드 결정방법은 B 슬라이스 및 P 슬라이스 모두에 적용될 수 있다.By combining the information of Tables 4 to 6, the lower limit of the RDcost for the other inter modes except for SKIP is determined in the present invention. The mode determination method of HEVC according to an embodiment of the present invention can be applied to both B slices and P slices.
이하 B 슬라이스에 대한 예시에 대해 설명하기로 한다.Hereinafter, an example for the B slice will be described.
RDcost의 하한은 신택스 요소의 수에 비례하여 결정되므로 prediction_unit()의 수가 작을수록 RDcost의 하한은 낮아진다. 따라서 prediction_unit()의 수가 작은 순서대로 RDcost의 하한이 연산된다. 각 인터 모드 유형마다 prediction_unit()의 수는 아래 표 7과 같다.Since the lower limit of the RDcost is determined in proportion to the number of syntax elements, the lower the number of prediction_unit (), the lower the lower limit of the RDcost. Therefore, the lower limit of the RDcost is calculated in order of the small number of prediction_unit (). The number of prediction_unit () for each inter mode type is shown in Table 7 below.
part_modepart_mode prediction_unit() 수number of prediction_unit ()
2Nx2N2Nx2N 1One
2NxN, Nx2N2NxN, Nx2N 22
NxN NxN 44
nRx2N, nLx2N,2NxnU, 2NxnDnRx2N, nLx2N, 2NxnU, 2NxnD 22
[인터 PU 모드에 따른 prediction_unit()의 수][Number of prediction_unit () according to inter PU mode]
본 발명에서는 먼저 2N×2N의 RDcost 하한이 연산되고, 그 다음 2N×N, N×2N, nR×2N, nL×2N, 2N×nU, 2N×nD의 하한이 연산되고, 마지막에 N×N의 RDcost 하한이 연산된다. 상기 RDcost의 하한들은 비교 기준들에 해당되고, SKIP 모드의 RDcost는 제1 비교 타겟에 해당된다.In the present invention, the lower limit of RNcost of 2N × 2N is first calculated, and then the lower limit of 2N × N, N × 2N, nR × 2N, nL × 2N, 2N × nU, 2N × nD is calculated, and finally, N × N. The lower limit of RDcost is calculated. The lower limits of the RDcost correspond to comparison criteria, and the RDcost of the SKIP mode corresponds to the first comparison target.
2N×2N은 MERGE모드인 경우와 INTER 모드인 경우로 나눌 수 있다. 먼저 2N×2N MERGE를 부호화 하기 위해 필요한 syntax 요소는 표 8과 같다.2N × 2N can be divided into MERGE mode and INTER mode. First, the syntax elements necessary to encode 2N × 2N MERGE are shown in Table 8.
Syntax (신택스)Syntax 필요 비트Need bit
cu_skip_flagcu_skip_flag
pred_modepred_mode
part_modepart_mode
prediction_unit()prediction_unit ()
merge_idxmerge_idx 1One
transform_tree()transform_tree ()
cbf_lumacbf_luma 1One
cbf_cbcbf_cb 1One
cbf_crcbf_cr 1One
transform_unit()transform_unit () 1One
[2N×2N MERGE PU를 부호화하기 위해 필요한 신택스][Syntax necessary to encode 2N × 2N MERGE PU]
표 8과 같이 총 10개의 신택스 요소가 필요하며 따라서 각각의 신택스 요소를 최소 1비트로 코딩한다고 가정하였을 때 최소 10비트가 필요하다. 따라서 만약 다른 모드의 RDcost가 10λ보다 작으면 2N×2N MERGE모드의 RDcost를 연산할 필요가 없다.As shown in Table 8, a total of 10 syntax elements are required. Therefore, a minimum of 10 bits is required assuming that each syntax element is coded with at least 1 bit. Therefore, if the RDcost of the other mode is less than 10 λ , it is not necessary to calculate the RDcost of the 2N × 2N MERGE mode.
Syntax (신택스)Syntax
cu_skip_flagcu_skip_flag
pred_mode_flagpred_mode_flag
part_modepart_mode
prediction_unit()prediction_unit () merge_flagmerge_flag 1One
inter_pred_idcinter_pred_idc 1One
ref_idx_10ref_idx_10 1One
mvp_10_flagmvp_10_flag 1One
mvd_coding()mvd_coding () 2~82 ~ 8
ref_idx_11ref_idx_11 1One
mvp_11_flagmvp_11_flag 1One
mvd_coding()mvd_coding () 2~82 ~ 8
rqt_root_cbfrqt_root_cbf
[2N×2N INTER PU를 부호화하기 위해 필요한 신택스][Syntax necessary to encode 2N × 2N INTER PU]
2N×2N INTER모드를 부호화하기 위해 필요한 신택스 요소는 위의 표 9와 같다.The syntax elements required to encode the 2N × 2N INTER mode are shown in Table 9 above.
B 슬라이스를 가정하였으므로 전방향, 후방향, 및 쌍방향 예측이 수행될 수 있다. 일반적으로 쌍방향 예측의 효율이 가장 높으므로 본 발명에서는 쌍방향 예측이 사용될 경우를 가정한다. 또한 움직임 벡터 차이를 부호화하는 함수인 mvd_coding()은 2개부터 8개의 신택스를 요구하며, 하한의 연산이므로 최소인 2개의 신택스가 필요한 것으로 결정된다. 그리고 모든 잔여 신호가 0이라고 가정하면 rqt_root_cbf만이 부호화 되면 되고 이 경우 transform_tree()는 부호화의 필요성이 없다. 이럴 경우 필요한 비트 수는 총 14비트이다. 따라서 만약 다른 모드의 RDcost가 14λ보다 작으면 2N×2N Inter PU모드의 RDcost를 연산할 필요가 없다.Since a B slice is assumed, forward, backward, and bidirectional prediction may be performed. In general, since the efficiency of bidirectional prediction is the highest, it is assumed in the present invention that bidirectional prediction is used. In addition, mvd_coding (), which is a function of encoding a motion vector difference, requires two to eight syntaxes, and it is determined that at least two syntaxes are required because it is a lower limit operation. And if all residual signals are 0, only rqt_root_cbf needs to be encoded. In this case, transform_tree () does not need encoding. In this case, the required number of bits is 14 bits in total. Therefore, if the RDcost of the other mode is less than 14λ, it is not necessary to calculate the RDcost of the 2N × 2N Inter PU mode.
2N×N, N×2N, nR×2N, nL×2N, 2N×nD, 2N×nU는 모두 2개의 prediction unit()을 가지므로 RDcost 하한을 공통을 사용할 수 있다. 2N×2N 모드에서 본 것처럼 한 prediction_unit()을 부호화기 위해 필요한 신택스 요소는 MERGE일 경우 2개이고 MERGE가 아닐 경우에는 10개이다. 그리고 prediction_unit()을 제외하고 부호화해야 할 최소의 신택스 요소는 cu_skip_flag, pred_mode_flag, part_mode, rqt_root_cbf로 4개이다. 따라서 prediction_unit()이 2개일 때 최소의 신택스 개수는 prediction_unit()이 모두 MERGE인 경우고, 이 경우의 총 신택스 요소의 수는 4+2×2 = 8개이다. 따라서 만약 다른 모드의 RDcost가 보다 작으면 2N×N, N×2N, nR×2N, nL×2N, 2N×nD, 2N×nU 모드의 RDcost를 연산할 필요가 없다.Since 2N × N, N × 2N, nR × 2N, nL × 2N, 2N × nD, and 2N × nU all have two prediction units (), the lower limit of RDcost can be used in common. As seen in the 2N × 2N mode, the syntax elements required to encode one prediction_unit () are two for MERGE and ten for MERGE. The minimum syntax elements to be encoded except for prediction_unit () are four of cu_skip_flag, pred_mode_flag, part_mode, and rqt_root_cbf. Therefore, when the prediction_unit () is two, the minimum syntax number is the case where the prediction_unit () is both MERGE, and the total number of syntax elements in this case is 4 + 2 × 2 = 8. Therefore, if the RDcost of the other mode is smaller, it is not necessary to calculate the RDcost of 2N × N, N × 2N, nR × 2N, nL × 2N, 2N × nD, and 2N × nU modes.
2N×N, N×2N, nR×2N, nL×2N, 2N×nD, 2N×nU에서 하나 이상의 PU가 INTER모드일 수 있다. 이 경우의 하한은 한 개의 prediction_unit()은 INTER이고 다른 한 개는 MERGE일 경우로 볼 수 있으며 RDcost의 하한은 MERGE를 위한 2개 신택스 요소, INTER를 위한 신택스 요소 10개, prediction_unit() 이외의 신택스 요소로 총 16개의 신택스 요소가 필요하다. 따라서 만약 다른 모드의 RDcost가 보다 작으면 2N×N, N×2N, nR×2N, nL×2N, 2N×nD, 2N×nU 모드의 INTER에 대한 RDcost를 연산할 필요가 없다.  At least one PU in 2N × N, N × 2N, nR × 2N, nL × 2N, 2N × nD, and 2N × nU may be in an INTER mode. In this case, the lower limit can be thought of as one prediction_unit () is INTER and the other is MERGE.The lower limit of RDcost is two syntax elements for MERGE, ten syntax elements for INTER, and syntax other than prediction_unit (). In total, 16 syntax elements are required. Therefore, if the RDcost of the other mode is smaller, it is not necessary to calculate the RDcost for the INTER of 2N × N, N × 2N, nR × 2N, nL × 2N, 2N × nD, and 2N × nU modes.
N×N은 4개의 prediction unit()을 가진다. prediction_unit()이 4개일 때 최소의 신택스 개수는 prediction_unit()이 모두 MERGE인 경우고, 이 경우의 총 신택스 요소의 수는 4+4×2 = 12개이다. 따라서 만약 다른 모드의 RDcost가 보다 작으면 N×N 모드의 RDcost를 연산할 필요가 없다.  N × N has four prediction units (). The minimum syntax number when prediction_unit () is 4 is when prediction_unit () is all MERGE, and the total number of syntax elements in this case is 4 + 4 × 2 = 12. Therefore, if the RDcost of the other mode is smaller, it is not necessary to calculate the RDcost of the N × N mode.
2N×N의 경우처럼 N×N에서도 하나 이상의 INTER PU 모드가 존재할 수 있다. N×N INTER의 RDcost 연산의 유무를 결정하기 위해 본 발명에서는 2개의 prediction_unit()은 INTER이고 2개의 prediction_unit()은 MERGE라고 가정하였다. 이 경우 RDcost의 하한은 MERGE를 위한 2개 신택스 요소, INTER를 위한 신택스 요소 10개, prediction_unit() 이외의 신택스 요소로 총 28개의 신택스 요소가 필요하다. 따라서 만약 다른 모드의 RDcost가 28λ보다 작으면 N×N 모드의 INTER에 대한 RDcost를 연산할 필요가 없다. As in the case of 2N × N, one or more INTER PU modes may exist in N × N. In the present invention, it is assumed that two prediction_unit () is INTER and two prediction_unit () are MERGE in order to determine the presence or absence of an N × N INTER RDcost operation. In this case, the lower limit of RDcost is two syntax elements for MERGE, 10 syntax elements for INTER, and syntax elements other than prediction_unit (), and a total of 28 syntax elements are required. Therefore, if the RDcost of the other mode is less than 28λ, it is not necessary to calculate the RDcost for the INTER of the NxN mode.
도 11은 본 발명의 실시예에 따른 B-Slice를 위한 HEVC의 인터 CU/PU 모드 결정방법의 흐름도이다.11 is a flowchart of a method of determining an inter CU / PU mode of HEVC for B-Slice according to an embodiment of the present invention.
도 11을 참조하면, 먼저 SKIP 모드의 RDcost가 산출된 후 SKIP 모드의 RDcost가 10λ보다 작으면 전체 인터 모드 과정이 종료되고 SKIP 모드가 최적의 모드로 선택된다. 만약 SKIP 모드의 RDcost가 10λ보다 크면 MERGE의 RDcost이 연산되고 SKIP 모드와 MERGE의 RDcost 중 가장 작은 RDcost가 제2 비교 타겟(Jtemp-best)으로 결정된다. 제2 비교 타겟(Jtemp-best)이 만약 14λ보다 작으면 2N×2N INTER에 대한 RDcost가 스킵된다. 만약 제2 비교 타겟(Jtemp-best)이 8λ보다 작으면 인터 모드 과정이 종료되고 제2 비교 타겟(Jtemp-best)을 가진 모드를 최적의 모드로 선택한다. 만약 제2 비교 타겟(Jtemp-best)이 8λ보다 크고 16λ보다 작으면 N×2N의 MERGE에 대한 RDcost만이 연산되고 제2 비교 타겟(Jtemp-best)이 16λ보다 크면 N×2N의 MERGE와 INTER에 대한 RDcost이 연산된다. N×2N의 RDcost가 제2 비교 타겟(Jtemp-best)보다 작으면 N×2N의 RDcost가 제2 비교 타겟(Jtemp-best)으로 업데이트된다. 나머지 모드에 대하여도 N×2N의 방법과 동일한 방법이 적용된다.Referring to FIG. 11, when the RDcost of the SKIP mode is first calculated and the RDcost of the SKIP mode is less than 10λ, the entire inter mode process is terminated and the SKIP mode is selected as the optimal mode. If the RDcost of the SKIP mode is greater than 10λ, the RDcost of the MERGE is calculated and the smallest RDcost of the SKIP mode and the RDcost of the MERGE is determined as the second comparison target J temp-best . If the second comparison target J temp-best is less than 14λ, the RDcost for the 2N × 2N INTER is skipped. If the second comparison target J temp-best is less than 8λ, the inter mode process is terminated and the mode having the second comparison target J temp-best is selected as the optimal mode. If the second comparison target J temp-best is greater than 8λ and less than 16λ, only the RDcost for the MERGE of N × 2N is calculated, and if the second comparison target J temp-best is greater than 16λ, the MERGE of N × 2N and RDcost for INTER is calculated. If the RDcost of N × 2N is less than the second comparison target J temp-best , the RDcost of N × 2N is updated to the second comparison target J temp-best . The same method as for the N × 2N method is applied to the remaining modes.
도 12는 본 발명의 실시예에 따른 HEVE 부호화의 P-Slice를 위한 인터 CU/PU 모드 결정방법의 흐름도이다.12 is a flowchart of a method of determining an inter CU / PU mode for P-Slice of HEVE encoding according to an embodiment of the present invention.
도 13을 참조하면, P-Slice의 임계치는 B-Slice에서의 방법과 동일하게 산출 된다. P-Slice는 단방향 예측만 사용되므로 B-Slice에 비해 신택스 요소의 수가 작으므로 임계치가 B-Slice에 비해 낮은 것이 특징이다. 도 12의 설명과 중복되는 설명은 생략하기로 한다.Referring to Fig. 13, the threshold of P-Slice is calculated in the same way as in B-Slice. Since P-Slice uses only one-way prediction, the number of syntax elements is smaller than that of B-Slice, so the threshold is lower than that of B-Slice. Descriptions overlapping with the description of FIG. 12 will be omitted.
본 발명에 따른 모드 결정방법들은 다양한 컴퓨터 수단을 통해 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 컴퓨터 판독 가능 매체에 기록되는 프로그램 명령은 본 발명을 위해 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다.Mode determination methods according to the present invention can be implemented in the form of program instructions that can be executed by various computer means can be recorded on a computer readable medium. Computer-readable media may include, alone or in combination with the program instructions, data files, data structures, and the like. The program instructions recorded on the computer readable medium may be those specially designed and constructed for the present invention, or may be known and available to those skilled in computer software.
컴퓨터 판독 가능 매체의 예에는 롬(rom), 램(ram), 플래시 메모리(flash memory) 등과 같이 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러(compiler)에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터(interpreter) 등을 사용해서 컴퓨터에 의해 실행될 수 있는 고급 언어 코드를 포함한다. 상술한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 적어도 하나의 소프트웨어 모듈로 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.Examples of computer readable media include hardware devices that are specifically configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like. Examples of program instructions include machine language code, such as produced by a compiler, as well as high-level language code that can be executed by a computer using an interpreter or the like. The hardware device described above may be configured to operate with at least one software module to perform the operations of the present invention, and vice versa.
이상 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.Although it has been described above with reference to the preferred embodiment of the present invention, those skilled in the art will be able to variously modify and change the present invention without departing from the spirit and scope of the invention described in the claims below. It will be appreciated.
본 발명에 의하면, 부호화 성능의 손실 없이 HEVC의 모드 결정의 복잡도를 낮춤으로써 고속의 부호화가 가능하다.According to the present invention, high-speed encoding is possible by reducing the complexity of mode determination of HEVC without loss of encoding performance.

Claims (10)

  1. 고효율 비디오 부호화(High Efficiency Video Coding, HEVC)의 모드 결정방법에 있어서,In the mode determination method of High Efficiency Video Coding (HEVC),
    부호화에 필요한 신택스(syntax) 요소 및 신택스(syntax) 개수에 기반하여 일반 부호화 모드의 율-왜곡비용의 하한을 연산하는 단계;Calculating a lower limit of the rate-distortion cost of the general encoding mode based on syntax elements required for encoding and the number of syntaxes;
    부호화 모드들 중에서 어느 하나의 모드를 현재 부호화 모드로 선택하고, 선택된 현재 부호화 모드의 율-왜곡 비용을 연산하는 단계;Selecting one of the encoding modes as a current encoding mode and calculating a rate-distortion cost of the selected current encoding mode;
    상기 현재 부호화 모드의 율-왜곡 비용과 상기 율-왜곡 비용의 하한을 비교하는 단계; 및Comparing a rate-distortion cost of the current encoding mode with a lower limit of the rate-distortion cost; And
    상기 현재 부호화 모드의 율-왜곡 비용이 상기 율-왜곡 비용의 하한보다 작은 경우,If the rate-distortion cost of the current encoding mode is less than the lower limit of the rate-distortion cost,
    상기 현재 부호화 모드를 최적의 부호화 모드로 선택하는 단계를 포함하는, 고효율 비디오 부호화 모드 결정방법.And selecting the current encoding mode as an optimal encoding mode.
  2. 청구항 1에서,In claim 1,
    상기 현재 부호화 모드의 율-왜곡 비용이 상기 율-왜곡 비용의 하한보다 작지 않은 경우,If the rate-distortion cost of the current encoding mode is not less than the lower limit of the rate-distortion cost,
    상기 일반 부호와 모드의 율-왜곡 비용을 연산하는 단계;Calculating a rate-distortion cost of the generic code and mode;
    상기 일반 부호화 모드의 율-왜곡 비용과 상기 현재 부호화 모드의 율-왜곡 비용을 비교하고, 이들 중에서 최적의 부호화 모드를 선택하는 단계를 더 포함하는, 고효율 비디오 부호화 모드 결정방법.And comparing the rate-distortion cost of the general encoding mode with the rate-distortion cost of the current encoding mode, and selecting an optimal encoding mode among them.
  3. 청구항 2에 있어서,The method according to claim 2,
    상기 율-왜곡 비용의 하한은,The lower limit of the rate-distortion cost is
    부호화 모드들이 가질 수 있는 율-왜곡 비용(rate-distortion cost, RDcost)의 최소값으로서, 실제 부호화 시에 소요되는 비트 수에 기반하는, 고효율 비디오 부호화 모드 결정방법.A method of determining a high efficiency video encoding mode, based on the number of bits consumed in actual encoding, as a minimum value of a rate-distortion cost (RDcost) that encoding modes may have.
  4. 고효율 비디오 부호화(High Efficiency Video Coding, HEVC)의 인트라 (intrapicture) PU(prediction unit) 예측 모드 결정방법에 있어서,In the intra picture prediction unit (PU) prediction mode determination method of High Efficiency Video Coding (HEVC),
    부호화에 필요한 신택스(syntax) 요소 및 신택스(syntax) 개수에 기반하여 MPM(most probable mode)이 아닌(Non-MPM) 모드의 율-왜곡비용의 하한을 7λ으로 연산하는 단계, 여기서 λ는 라그랑지안 계수(lagrangian multiplier);Calculating a lower limit of the rate-distortion cost of a non-MPM mode as 7 λ based on syntax elements and syntax numbers required for coding, wherein λ is a Lagrangian Lagrangian multiplier;
    인트라 PU 예측 모드 중에서 MPM 모드들의 율-왜곡 비용을 연산하고, 이 중에서 최소 율-왜곡 비용을 갖는 최적의 MPM 모드를 찾는 단계;Calculating the rate-distortion cost of the MPM modes among the intra PU prediction modes, and finding an optimal MPM mode having a minimum rate-distortion cost among them;
    상기 최소 율-왜곡 비용과 상기 율-왜곡비용의 하한을 비교하는 단계; 및Comparing the minimum rate-distortion cost with a lower limit of the rate-distortion cost; And
    상기 최소 율-왜곡 비용이 상기 율-왜곡비용의 하한보다 작은 경우,If the minimum rate-distortion cost is less than the lower limit of the rate-distortion cost,
    상기 최적의 MPM 모드를 예측 모드로 선택하는 단계를 포함하는, 고효율 비디오 부호화 모드 결정방법.Selecting the optimal MPM mode as a prediction mode.
  5. 청구항 4에서,In claim 4,
    상기 최소 율-왜곡 비용이 상기 율-왜곡비용의 하한보다 작지 않은 경우,If the minimum rate-distortion cost is not less than a lower limit of the rate-distortion cost,
    MPM이 아닌 모드의 율-왜곡 비용을 계산하는 단계; 및Calculating the rate-distortion cost of the non-MPM mode; And
    상기 MPM이 아닌 모드의 율-왜곡 비용과 상기 최소 율-왜곡 비용을 비교하고, 이들 중에서 최적의 모드를 선택하는 단계를 더 포함하는, 고효율 비디오 부호화 모드 결정방법.Comparing the rate-distortion cost and the minimum rate-distortion cost of the non-MPM mode, and selecting an optimal mode among them.
  6. 고효율 비디오 부호화(High Efficiency Video Coding, HEVC)의 인트라 CU 크기 결정방법에 있어서,In the intra CU size determination method of High Efficiency Video Coding (HEVC),
    부호화에 필요한 신택스(syntax) 요소 및 신택스(syntax) 개수에 기반하여 하나의 CU가 분할되어 형성된 4개의 sub-CU들의 율-왜곡비용의 하한을 32λ으로 연산하는 단계, 여기서 λ는 라그랑지안 계수(lagrangian multiplier);Calculating a lower limit of the rate-distortion cost of four sub-CUs formed by dividing one CU based on a syntax element and syntax number required for encoding into 32 λ , wherein λ is a Lagrangian coefficient ( lagrangian multiplier);
    현재 CU의 율-왜곡 비용을 연산하는 단계; 및Calculating a rate-distortion cost of the current CU; And
    상기 율-왜곡비용의 하한과 상기 현재 CU의 율-왜곡비용을 비교하는 단계를 포함하되,Comparing the lower limit of the rate-distortion cost with the rate-distortion cost of the current CU,
    상기 현재 CU의 율-왜곡 비용이 상기 율-왜곡비용의 하한보다 작은 경우,If the rate-distortion cost of the current CU is less than the lower limit of the rate-distortion cost,
    상기 현재 CU는 분할되지 않는, 고효율 비디오 부호화 모드 결정방법.And the current CU is not split.
  7. 청구항 6에서,In claim 6,
    상기 현재 CU의 율-왜곡 비용이 상기 율-왜곡비용의 하한보다 작지 않은 경우,If the rate-distortion cost of the current CU is not less than the lower limit of the rate-distortion cost,
    상기 sub-CU들의 율-왜곡 비용들의 합을 연산하는 단계; 및Calculating a sum of rate-distortion costs of the sub-CUs; And
    상기 현재 CU의 율-왜곡 비용과 상기 sub-CU들의 율-왜곡 비용들의 합을 비교하는 단계를 더 포함하되,Comparing the sum of the rate-distortion costs of the current CU with the rate-distortion costs of the sub-CUs,
    상기 현재 CU의 율-왜곡 비용이 상기 sub-CU들의 율-왜곡 비용들의 합보다 작은 경우, 상기 현재 CU는 분할되지 않고,If the rate-distortion cost of the current CU is less than the sum of the rate-distortion costs of the sub-CUs, the current CU is not divided,
    상기 현재 CU의 율-왜곡 비용이 상기 sub-CU들의 율-왜곡 비용들의 합보다 작지 않은 경우, 상기 현재 CU는 분할되는, 고효율 비디오 부호화 모드 결정방법.And if the rate-distortion cost of the current CU is not less than the sum of the rate-distortion costs of the sub-CUs, the current CU is split.
  8. 고효율 비디오 부호화(High Efficiency Video Coding, HEVC)의 인터 CU/PU 모드 결정방법에 있어서,In the method of determining inter CU / PU mode of High Efficiency Video Coding (HEVC),
    (a) 부호화에 필요한 신택스(syntax) 요소 및 신택스(syntax) 개수에 기반하여, 비교 기준으로서 2N×2N MERGE, 2N×2N INTER, N×2N MERGE, N×2N INTER, 비대칭 모션 분할(asymmetric motion partition, AMP), N×N MERGE 및 N×N INTER 모드 부호화의 율-왜곡 비용의 하한을 연산하는 단계;(a) 2N × 2N MERGE, 2N × 2N INTER, N × 2N MERGE, N × 2N INTER, asymmetric motion partitioning based on the number of syntax elements and syntax required for encoding partition, AMP), calculating the lower limit of the rate-distortion cost of N × N MERGE and N × N INTER mode encoding;
    (b) 제1 비교 타겟으로서 SKIP 모드를 선택하고, SKIP 모드의 율-왜곡 비용을 연산하는 단계;(b) selecting the SKIP mode as the first comparison target and calculating the rate-distortion cost of the SKIP mode;
    (c) 상기 제1 비교 타겟의 율-왜곡 비용이 상기 비교 기준인 2N×2N MERGE 모드의 율-왜곡 비용의 하한보다 작은지 비교하는 단계;(c) comparing whether the rate-distortion cost of the first comparison target is smaller than a lower limit of the rate-distortion cost of the 2N × 2N MERGE mode as the comparison criterion;
    (d) 상기 제1 비교 타겟의 율-왜곡 비용이 상기 비교 기준보다 더 작은 경우 비교 타겟을 선택하고,(d) selecting a comparison target if the rate-distortion cost of the first comparison target is smaller than the comparison criterion,
    그렇지 않은 경우 상기 비교 기준의 율-왜곡 비용을 연산하고,Otherwise calculate the rate-distortion cost of the comparison criterion,
    비교 타겟의 율-왜곡 비용과 비교 기준인 2N×2N MERGE의 율-왜곡 비용을 비교하고, 이 중에서 최적의 율-왜곡 비용을 갖는 모드를 제2 비교 타겟으로 업데이트하는 단계;Comparing the rate-distortion cost of the comparison target with the rate-distortion cost of the 2N × 2N MERGE as a reference, and updating a mode having an optimal rate-distortion cost among the comparison targets to the second comparison target;
    순서대로 나머지 2N×2N INTER, N×2N MERGE, N×2N INTER, 비대칭 모션 분할(AMP), N×N MERGE 및 N×N INTER 모드에 대해서, 상기 제2 비교 타겟의 율-왜곡 비용을 이용하여 상기 (c) 및 (d)를 반복함으로써 제2 비교 타겟이 최적의 율-왜곡 비용을 갖는 모드가 되도록 제2 비교 타겟을 계속 업데이트 하고,Use the rate-distortion cost of the second comparison target for the remaining 2N × 2N INTER, N × 2N MERGE, N × 2N INTER, Asymmetric Motion Division (AMP), N × N MERGE, and N × N INTER modes in order. Repeating steps (c) and (d) to continuously update the second comparison target such that the second comparison target is in a mode having an optimal rate-distortion cost,
    최종 업데이트된 제2 비교 타겟의 모드를 선택하는 단계를 포함하는, 고효율 비디오 부호화 모드 결정방법.Selecting a mode of a last updated second comparison target.
  9. 청구항 8에서,In claim 8,
    신택스 요소 prediction_unit에 포함될 수 있는 신택스 요소에 따라, B-Slice를 위한 CU/PU 모드 결정 또는 P-Slice를 위한 CU/PU 모드 결정을 포함하는, 고효율 비디오 부호화 모드 결정방법.A method for determining a high efficiency video encoding mode comprising a CU / PU mode decision for a B-Slice or a CU / PU mode decision for a P-Slice, according to a syntax element that may be included in the syntax element prediction_unit.
  10. 청구항 8에서,In claim 8,
    SKIP 모드의 율-왜곡 비용이 2N×2N MERGE 모드의 율-왜곡 비용의 하한, 10λ보다 작은 경우, SKIP 모드를 선택하고,If the rate-distortion cost of the SKIP mode is less than the lower limit, 10λ, of the rate-distortion cost of the 2N × 2N MERGE mode, select the SKIP mode,
    제2 비교 타겟의 율-왜곡 비용이 N×2N MERGE 모드의 율-왜곡 비용의 하한, 8λ보다 작은 경우, 최적의 율-왜곡 비용을 갖는 제2 비교 타겟을 선택하고,If the rate-distortion cost of the second comparison target is less than the lower limit of the rate-distortion cost of the N × 2N MERGE mode, 8λ, the second comparison target having the optimal rate-distortion cost is selected,
    제2 비교 타겟의 율-왜곡 비용이 N×N MERGE 모드의 율-왜곡 비용의 하한, 12λ보다 작은 경우, 최적의 율-왜곡 비용을 갖는 제2 비교 타겟을 선택하는, 고효율 비디오 부호화 모드 결정방법.If the rate-distortion cost of the second comparison target is less than the lower limit of the rate-distortion cost of the N × N MERGE mode, 12λ, a method of determining a high efficiency video encoding mode for selecting a second comparison target having an optimal rate-distortion cost .
PCT/KR2017/002190 2016-12-21 2017-02-28 High-efficiency video coding mode determination method and determination device WO2018117334A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2016-0175385 2016-12-21
KR1020160175385A KR101967028B1 (en) 2016-12-21 2016-12-21 Apparatus and method for determining mode of high efficiency video coding

Publications (1)

Publication Number Publication Date
WO2018117334A1 true WO2018117334A1 (en) 2018-06-28

Family

ID=62626735

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2017/002190 WO2018117334A1 (en) 2016-12-21 2017-02-28 High-efficiency video coding mode determination method and determination device

Country Status (2)

Country Link
KR (1) KR101967028B1 (en)
WO (1) WO2018117334A1 (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110087087A (en) * 2019-04-09 2019-08-02 同济大学 VVC interframe encode unit prediction mode shifts to an earlier date decision and block divides and shifts to an earlier date terminating method
CN110139106A (en) * 2019-04-04 2019-08-16 中南大学 A kind of video encoding unit dividing method and its system, device, storage medium
CN111654696A (en) * 2020-04-24 2020-09-11 北京大学 Intra-frame multi-reference-line prediction method and device, storage medium and terminal
CN111901602A (en) * 2020-08-07 2020-11-06 北京奇艺世纪科技有限公司 Video data encoding method, video data encoding device, computer equipment and storage medium
CN111918058A (en) * 2020-07-02 2020-11-10 北京大学深圳研究生院 Hardware-friendly intra prediction mode fast determination method, device and storage medium
CN112702598A (en) * 2020-12-03 2021-04-23 浙江智慧视频安防创新中心有限公司 Method, device, electronic equipment and medium for encoding and decoding based on displacement operation
US20220191477A1 (en) * 2020-02-17 2022-06-16 Tencent Technology (Shenzhen) Company Limited Coding mode selection method and apparatus, and electronic device and computer-readable medium
CN116170594A (en) * 2023-04-19 2023-05-26 中国科学技术大学 Coding method and device based on rate distortion cost prediction
WO2023147780A1 (en) * 2022-02-07 2023-08-10 杭州未名信科科技有限公司 Video frame coding mode screening method and apparatus, and electronic device

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020171673A1 (en) * 2019-02-24 2020-08-27 엘지전자 주식회사 Video signal processing method and apparatus for intra prediction
US20220124309A1 (en) * 2019-02-28 2022-04-21 Lg Electronics Inc. Unified mpm list-based intra prediction

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150099165A (en) * 2014-02-21 2015-08-31 연세대학교 산학협력단 Tsm rate-distortion optimizing method, encoding method and device using the same, and apparatus for processing picture
KR20150115833A (en) * 2013-02-01 2015-10-14 퀄컴 인코포레이티드 Mode decision simplification for intra prediction
KR20150115886A (en) * 2013-02-06 2015-10-14 퀄컴 인코포레이티드 Intra prediction mode decision with reduced storage
KR20160106348A (en) * 2015-03-02 2016-09-12 한국전자통신연구원 Video Coding Method and Apparatus thereof
KR20160110589A (en) * 2015-03-09 2016-09-22 한국전자통신연구원 Method and apparatus of adaptive coding mode ordering for early mode decision of hevc

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101359496B1 (en) * 2008-08-06 2014-02-11 에스케이 텔레콤주식회사 Encoding Mode Determination Method and Apparatus and Video Encoding Apparatus Using Same

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150115833A (en) * 2013-02-01 2015-10-14 퀄컴 인코포레이티드 Mode decision simplification for intra prediction
KR20150115886A (en) * 2013-02-06 2015-10-14 퀄컴 인코포레이티드 Intra prediction mode decision with reduced storage
KR20150099165A (en) * 2014-02-21 2015-08-31 연세대학교 산학협력단 Tsm rate-distortion optimizing method, encoding method and device using the same, and apparatus for processing picture
KR20160106348A (en) * 2015-03-02 2016-09-12 한국전자통신연구원 Video Coding Method and Apparatus thereof
KR20160110589A (en) * 2015-03-09 2016-09-22 한국전자통신연구원 Method and apparatus of adaptive coding mode ordering for early mode decision of hevc

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110139106A (en) * 2019-04-04 2019-08-16 中南大学 A kind of video encoding unit dividing method and its system, device, storage medium
CN110139106B (en) * 2019-04-04 2023-01-17 中南大学 Video coding unit partitioning method and system, device and storage medium thereof
CN110087087B (en) * 2019-04-09 2023-05-12 同济大学 VVC inter-frame coding unit prediction mode early decision and block division early termination method
CN110087087A (en) * 2019-04-09 2019-08-02 同济大学 VVC interframe encode unit prediction mode shifts to an earlier date decision and block divides and shifts to an earlier date terminating method
US20220191477A1 (en) * 2020-02-17 2022-06-16 Tencent Technology (Shenzhen) Company Limited Coding mode selection method and apparatus, and electronic device and computer-readable medium
CN111654696A (en) * 2020-04-24 2020-09-11 北京大学 Intra-frame multi-reference-line prediction method and device, storage medium and terminal
CN111654696B (en) * 2020-04-24 2022-08-05 北京大学 Intra-frame multi-reference-line prediction method and device, storage medium and terminal
CN111918058B (en) * 2020-07-02 2022-10-28 北京大学深圳研究生院 Hardware-friendly intra prediction mode fast determination method, device and storage medium
CN111918058A (en) * 2020-07-02 2020-11-10 北京大学深圳研究生院 Hardware-friendly intra prediction mode fast determination method, device and storage medium
CN111901602B (en) * 2020-08-07 2022-09-30 北京奇艺世纪科技有限公司 Video data encoding method, video data encoding device, computer equipment and storage medium
CN111901602A (en) * 2020-08-07 2020-11-06 北京奇艺世纪科技有限公司 Video data encoding method, video data encoding device, computer equipment and storage medium
CN112702598A (en) * 2020-12-03 2021-04-23 浙江智慧视频安防创新中心有限公司 Method, device, electronic equipment and medium for encoding and decoding based on displacement operation
CN112702598B (en) * 2020-12-03 2024-06-04 浙江智慧视频安防创新中心有限公司 Method, device, electronic equipment and medium for encoding and decoding based on displacement operation
WO2023147780A1 (en) * 2022-02-07 2023-08-10 杭州未名信科科技有限公司 Video frame coding mode screening method and apparatus, and electronic device
CN116170594A (en) * 2023-04-19 2023-05-26 中国科学技术大学 Coding method and device based on rate distortion cost prediction
CN116170594B (en) * 2023-04-19 2023-07-14 中国科学技术大学 Coding method and device based on rate distortion cost prediction

Also Published As

Publication number Publication date
KR101967028B1 (en) 2019-04-09
KR20180072133A (en) 2018-06-29

Similar Documents

Publication Publication Date Title
WO2018117334A1 (en) High-efficiency video coding mode determination method and determination device
WO2018080135A1 (en) Video encoding/decoding method and apparatus, and recording medium in which bit stream is stored
WO2017164645A2 (en) Method and apparatus for encoding/decoding video signal
WO2018117546A1 (en) Video signal processing method and device
WO2018056603A1 (en) Illumination compensation-based inter-prediction method and apparatus in image coding system
WO2018044088A1 (en) Method and device for processing video signal
WO2017034331A1 (en) Method and device for chroma sample intra prediction in video coding system
WO2016052977A1 (en) Method and apparatus for processing video signal
WO2012081879A1 (en) Method for decoding inter predictive encoded motion pictures
WO2018008904A2 (en) Video signal processing method and apparatus
WO2013100635A1 (en) Method and device for encoding three-dimensional image, and decoding method and device
WO2013109124A1 (en) Method and device for encoding video to limit bidirectional prediction and block merging, and method and device for decoding video
WO2012023763A2 (en) Inter prediction encoding method
WO2016143991A1 (en) Image encoding and decoding method based on low-complexity transformation, and apparatus using same
WO2012173415A2 (en) Method and apparatus for encoding motion information and method and apparatus for decoding same
WO2011010900A2 (en) Method and apparatus for encoding images and method and apparatus for decoding images
WO2019078581A1 (en) Method, device, and recording medium storing bit stream, for encoding/decoding image
WO2016085229A1 (en) Video signal processing method and device
WO2013109122A1 (en) Method and apparatus for encoding video and method and apparatus for decoding video changing scanning order depending on hierarchical coding unit
WO2018101687A1 (en) Image encoding/decoding method and device, and recording medium in which bitstream is stored
WO2013154366A1 (en) Transform method based on block information, and apparatus using said method
WO2019240449A1 (en) Method and device for encoding/decoding residual block on basis of quantization parameter
WO2018056702A1 (en) Method and apparatus for processing video signal
WO2016159610A1 (en) Method and apparatus for processing video signal
WO2019078664A1 (en) Video signal processing method and device

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: 17884422

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: 17884422

Country of ref document: EP

Kind code of ref document: A1