[go: up one dir, main page]

WO2013039363A2 - Procédé de codage/décodage d'image et dispositif correspondant - Google Patents

Procédé de codage/décodage d'image et dispositif correspondant Download PDF

Info

Publication number
WO2013039363A2
WO2013039363A2 PCT/KR2012/007419 KR2012007419W WO2013039363A2 WO 2013039363 A2 WO2013039363 A2 WO 2013039363A2 KR 2012007419 W KR2012007419 W KR 2012007419W WO 2013039363 A2 WO2013039363 A2 WO 2013039363A2
Authority
WO
WIPO (PCT)
Prior art keywords
mode
split
symbol
flag
value
Prior art date
Application number
PCT/KR2012/007419
Other languages
English (en)
Korean (ko)
Other versions
WO2013039363A3 (fr
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 한국전자통신연구원
Priority claimed from KR1020120102763A external-priority patent/KR101959482B1/ko
Publication of WO2013039363A2 publication Critical patent/WO2013039363A2/fr
Publication of WO2013039363A3 publication Critical patent/WO2013039363A3/fr

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/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/96Tree coding, e.g. quad-tree coding

Definitions

  • the present invention relates to image processing, and more particularly, to an entropy encoding / decoding method and apparatus.
  • an inter prediction technique for predicting pixel values included in a current picture from a previous and / or subsequent picture in time, and predicting pixel values included in a current picture using pixel information in the current picture.
  • An intra prediction technique an entropy encoding technique of allocating a short code to a symbol with a high frequency of appearance and a long code to a symbol with a low frequency of appearance may be used.
  • An object of the present invention is to provide an image encoding method and apparatus capable of improving image encoding / decoding efficiency and reducing complexity.
  • Another object of the present invention is to provide an image decoding method and apparatus capable of improving image encoding / decoding efficiency and reducing complexity.
  • Another object of the present invention is to provide an entropy encoding method and apparatus capable of improving image encoding / decoding efficiency and reducing complexity.
  • Another technical problem of the present invention is to provide an entropy decoding method and apparatus capable of improving image encoding / decoding efficiency and reducing complexity.
  • One embodiment of the present invention is a video decoding method.
  • the method may further include receiving a bitstream, performing entropy decoding on the bitstream to derive decryption information corresponding to a decoding object block, and reconstructing a block corresponding to the decoding object block based on the decoding information.
  • Generating a first partial bitstream corresponding to a combined symbol having a plurality of symbols combined; and deriving the decoding information comprises: generating the decoding information with respect to the first partial bitstream; Deriving a symbol value of the combined symbol by performing entropy decoding, and based on a mapping table representing a plurality of symbols corresponding to the combined symbol and a mapping relationship between the combined symbol, The method may further include deriving a symbol value of each of the plurality of symbols.
  • the bitstream may further include a second partial bitstream corresponding to a merge flag symbol indicating whether a prediction mode of the decoding object block is a merge mode, and the combined symbol is the merge flag symbol.
  • a plurality of symbols except for may be a combined symbol.
  • the deriving of the decoding information may further include deriving a symbol value of the merge flag symbol by performing entropy decoding on the second partial bitstream separately from the first partial bitstream. Can be.
  • entropy decoding may be performed on the second partial bitstream based on a fixed length code of 1 bit.
  • the plurality of symbols corresponding to the combined symbol may include a coding unit division flag symbol indicating whether a coding unit (CU) corresponding to the decoding target block is divided into a plurality of sub-units, and the decoding target block.
  • the symbol value corresponding to the asymmetric motion division mode and the symbol value corresponding to the symmetric motion division mode may be located above the symbol value corresponding to the intra mode and included in the mapping table.
  • the symbol value may correspond to a shorter codeword as it is located at the top of the mapping table.
  • the asymmetric motion splitting mode and the symmetric motion splitting mode are split modes corresponding to inter modes, and the asymmetric motion splitting mode is 2NxnU.
  • the symmetric motion splitting mode may include splitting modes of 2NxN and Nx2N.
  • a symbol value indicating that a coding unit corresponding to the decoding target block is divided into a plurality of sub-units and a symbol value corresponding to a skip mode are symbol values corresponding to an asymmetric motion division mode and symmetry.
  • the symbol value included in the mapping table may correspond to a shorter codeword as the symbol value included in the mapping table corresponds to a shorter codeword
  • the asymmetric motion division mode and the The symmetric motion splitting mode may be a split mode corresponding to an inter mode
  • the asymmetric motion splitting mode may include splitting modes of 2NxnU, 2NxnD, nLx2N, and nRx2N
  • the symmetric motion splitting mode may include splitting modes of 2NxN and Nx2N. have.
  • the mapping table may be updated based on an occurrence probability of each of a plurality of symbols corresponding to the combined symbol, based on an adaptive sorting table.
  • the mapping table may be selected from a plurality of mapping tables based on a depth value of a coding unit corresponding to the decoding target block.
  • the mapping table may be selected from a plurality of mapping tables based on a difference value between a depth value of a coding unit corresponding to the decoding target block and a depth value of a smallest coding unit (SCU).
  • the mapping table may be selected from a plurality of mapping tables based on whether the size of the coding unit corresponding to the decoding target block and the size of the minimum coding unit (SCU) are the same.
  • Another embodiment of the present invention is an entropy decoding method.
  • the method includes receiving a bitstream and performing entropy decoding on the bitstream to derive decoding information corresponding to a decoding target block, wherein the bitstream includes a combined symbol having a plurality of symbols combined.
  • the decoded information may include a corresponding first partial bitstream, and the deriving information may include deriving a symbol value of the combined symbol by performing entropy decoding on the first partial bitstream and the combined symbol.
  • the method may further include deriving a symbol value of each of the plurality of symbols corresponding to the symbol value of the combined symbol, based on a mapping table indicating a mapping relationship between the plurality of symbols corresponding to the combined symbol and the combined symbol.
  • the bitstream may further include a second partial bitstream corresponding to a merge flag symbol indicating whether a prediction mode of the decoding object block is a merge mode, and the combined symbol is the merge flag symbol.
  • a plurality of symbols except for may be a combined symbol.
  • the deriving of the decoding information may further include deriving a symbol value of the merge flag symbol by performing entropy decoding on the second partial bitstream separately from the first partial bitstream. Can be.
  • entropy decoding may be performed on the second partial bitstream based on a fixed length code of 1 bit.
  • the plurality of symbols corresponding to the combined symbol may include a coding unit division flag symbol indicating whether a coding unit (CU) corresponding to the decoding target block is divided into a plurality of sub-units, and the decoding target block.
  • the symbol value corresponding to the asymmetric motion division mode and the symbol value corresponding to the symmetric motion division mode may be located above the symbol value corresponding to the intra mode and included in the mapping table.
  • the symbol value may correspond to a shorter codeword as it is located at the top of the mapping table.
  • the asymmetric motion splitting mode and the symmetric motion splitting mode are split modes corresponding to inter modes, and the asymmetric motion splitting mode is 2NxnU.
  • the symmetric motion splitting mode may include splitting modes of 2NxN and Nx2N.
  • a symbol value indicating that a coding unit corresponding to the decoding target block is divided into a plurality of sub-units and a symbol value corresponding to a skip mode are symbol values corresponding to an asymmetric motion division mode and symmetry.
  • the symbol value included in the mapping table may correspond to a shorter codeword as the symbol value included in the mapping table corresponds to a shorter codeword
  • the asymmetric motion division mode and the The symmetric motion splitting mode may be a split mode corresponding to an inter mode
  • the asymmetric motion splitting mode may include splitting modes of 2NxnU, 2NxnD, nLx2N, and nRx2N
  • the symmetric motion splitting mode may include splitting modes of 2NxN and Nx2N. have.
  • the mapping table may be updated based on an occurrence probability of each of a plurality of symbols corresponding to the combined symbol, based on an adaptive sorting table.
  • the mapping table may be selected from a plurality of mapping tables based on a depth value of a coding unit corresponding to the decoding target block.
  • the mapping table may be selected from a plurality of mapping tables based on a difference value between a depth value of a coding unit corresponding to the decoding target block and a depth value of a smallest coding unit (SCU).
  • the mapping table may be selected from a plurality of mapping tables based on whether the size of the coding unit corresponding to the decoding target block and the size of the minimum coding unit (SCU) are the same.
  • the image encoding / decoding efficiency can be improved and the complexity can be reduced.
  • the image decoding method According to the image decoding method according to the present invention, the image encoding / decoding efficiency can be improved and the complexity can be reduced.
  • image encoding / decoding efficiency may be improved and complexity may be reduced.
  • image encoding / decoding efficiency can be improved and complexity can be reduced.
  • FIG. 1 is a block diagram illustrating a configuration of an image encoding apparatus according to an embodiment of the present invention.
  • FIG. 2 is a block diagram illustrating a configuration of an image decoding apparatus according to an embodiment of the present invention.
  • FIG. 3 is a conceptual diagram schematically illustrating an embodiment in which one coding unit is divided into a plurality of sub-units.
  • FIG. 4 is a diagram schematically illustrating an embodiment of a prediction unit corresponding to a coding unit.
  • FIG. 5 is a flowchart schematically illustrating an embodiment of an inter prediction process.
  • FIG. 6 is a flowchart schematically illustrating an embodiment of an intra prediction process.
  • FIG. 7 is a flowchart schematically illustrating an embodiment of a method of transmitting encoded information according to an embodiment of the present invention.
  • FIG. 8 is a flowchart schematically showing an embodiment of a decoding method according to an embodiment of the present invention.
  • FIG. 9 is a diagram schematically illustrating a PU index value of each of four prediction units belonging to one coding unit having a split mode of N ⁇ N.
  • 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.
  • each component shown in the embodiments of the present invention are shown independently to represent different characteristic functions, and do not mean that each component is made of separate hardware or one software component unit.
  • each component is included in each component for convenience of description, and at least two of the components may be combined into one component, or one component may be divided into a plurality of components to perform a function.
  • Integrated and separate embodiments of the components are also included within the scope of the present invention without departing from the spirit of the invention.
  • the components may not be essential components for performing essential functions in the present invention, but may be optional components for improving performance.
  • the present invention can be implemented including only the components essential for implementing the essentials of the present invention except for the components used for improving performance, and the structure including only the essential components except for the optional components used for improving performance. Also included in the scope of the present invention.
  • FIG. 1 is a block diagram illustrating a configuration of an image encoding apparatus according to an embodiment of the present invention.
  • the image encoding apparatus 100 may include a motion predictor 111, a motion compensator 112, an intra predictor 120, a switch 115, a subtractor 125, and a converter 130.
  • the quantizer 140 may include an entropy encoder 150, an inverse quantizer 160, an inverse transform unit 170, an adder 175, a filter unit 180, and a reference picture buffer 190.
  • the image encoding apparatus 100 may encode an input image in an intra mode or an inter mode and output a bitstream. In the intra mode, the switch 115 may be switched to intra, and in the inter mode, the switch 115 may be switched to inter. The image encoding apparatus 100 may generate a prediction block for an input block of an input image and then encode a residual between the input block and the prediction block.
  • the image encoding apparatus 100 may determine the prediction mode of the current block (input block).
  • Prediction mode information indicating a prediction mode (eg, skip mode, intra mode, inter mode, etc.) of the current block (input block) may be represented as PredMode, for example.
  • PredMode prediction mode information indicating a prediction mode of a current block will be referred to as a PredMode.
  • the intra predictor 120 may generate a prediction block by performing spatial prediction using pixel values of blocks that are already encoded around the current block.
  • the motion estimator 111 may obtain a motion vector by finding a region that best matches the input block in the reference image stored in the reference picture buffer 190 during the motion prediction process. have.
  • the motion compensator 112 may generate a prediction block by performing motion compensation using the motion vector.
  • the subtractor 125 may generate a residual block by the difference between the input block and the generated prediction block.
  • the transform unit 130 may output a transform coefficient by performing a transform on the residual block.
  • the quantization unit 140 may output the quantized coefficient by quantizing the input transform coefficient according to the quantization parameter.
  • the entropy encoder 150 performs probability distribution on a symbol based on values (eg, quantized coefficients) calculated by the quantizer 140 and / or encoding parameter values calculated in the encoding process. According to the entropy encoding can be output a bit stream (bit stream).
  • the entropy encoding method is a method of receiving symbols having various values and expressing them in a decodable column while removing statistical redundancy.
  • Encoding parameters are parameters necessary for encoding and decoding, and may include information that may be inferred during encoding or decoding, as well as information encoded by an encoder and transmitted to a decoder, such as syntax elements. Means necessary information. Coding parameters include, for example, intra / inter prediction modes, moving / motion vectors, reference picture indices, coding block patterns, presence or absence of residual signals, transform coefficients, quantized transform coefficients, quantization parameters, block sizes, block partitioning information, or the like. May include statistics.
  • the residual signal may mean a difference between the original signal and the prediction signal, and a signal in which the difference between the original signal and the prediction signal is transformed or a signal in which the difference between the original signal and the prediction signal is converted and quantized It may mean.
  • the residual signal may be referred to as a residual block in block units.
  • Encoding methods such as exponential golomb, Context-Adaptive Variable Length Coding (CAVLC), and Context-Adaptive Binary Arithmetic Coding (CABAC) for entropy coding
  • CAVLC Context-Adaptive Variable Length Coding
  • CABAC Context-Adaptive Binary Arithmetic Coding
  • the entropy encoder 150 may store a table for performing entropy encoding, such as a variable length coding (VLC) table, and the entropy encoder 150 may store the stored variable length encoding. Entropy encoding may be performed using the (VLC) table.
  • VLC variable length coding
  • the entropy encoder 150 derives a binarization method of a target symbol and a probability model of a target symbol / bin, and then performs entropy encoding using the derived binarization method or a probability model. You may.
  • binarization means expressing a symbol value as a binary sequence (bin sequence / string).
  • a bin means the value of each binary number (0 or 1) when the symbol is represented as a column of binary numbers through binarization.
  • the probability model refers to a predicted probability of a symbol / bin to be encoded / decoded, which can be derived through a context information / context model.
  • the context information / context model refers to information for determining a probability of a symbol / bin to be encoded / decoded.
  • the CABAC entropy encoding method binarizes non-binarized symbols to transform them into bins, and uses the encoding information of neighboring and encoding target blocks or the information of symbols / bins encoded in the previous step to construct a context model.
  • the bitstream may be generated by performing an arithmetic encoding of the bin by predicting the occurrence probability of the bin according to the determined context model.
  • the CABAC entropy encoding method may update the context model using information on the encoded symbol / bin for the context model of the next symbol / bin.
  • an adaptive sorting table may be used.
  • the adaptive sort table may be composed of a table index to which symbol values are mapped and a code number to which the table index is mapped.
  • the entropy encoder 150 updates a table index on an adaptive sort table and a code number mapped to the table index so that a symbol value having a high occurrence probability is mapped to a short length codeword. can do. That is, the adaptive sort table allows a small code number to be mapped to a frequently occurring symbol value, and the small code number is assigned to a short length codeword on a variable length code table (VLC table). By mapping, the encoding / decoding efficiency can be improved.
  • the variable length code table may include a code number and a codeword to which the code number is mapped, and one or more variable length code tables used for one symbol may be used.
  • the entropy encoder 150 maps a symbol value to a table index corresponding to the symbol value, and maps the table index to a code number on the adaptive sort table. Can be mapped to At this time, the entropy encoder 150 may update the adaptive alignment table in consideration of the probability of occurrence of a symbol value.
  • the code number may be mapped to a codeword by a variable length code table. Accordingly, the table index value may be regarded as a value to which a symbol value is mapped during encoding, and the code number may be regarded as a value to which a table index value is mapped at encoding.
  • the image encoding apparatus Since the image encoding apparatus according to the embodiment of FIG. 1 performs inter prediction, the currently 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 160 and inversely transformed by the inverse transformer 170. The inverse quantized and inverse transformed coefficients are added to the prediction block by the adder 175 and a reconstruction block is generated.
  • the reconstruction block passes through the filter unit 180, and the filter unit 180 applies at least one or more of a deblocking filter, a sample adaptive offset (SAO), and an adaptive loop filter (ALF) to the reconstruction block or the reconstruction picture. can do.
  • the filter unit 180 may be referred to as an adaptive in-loop filter.
  • the deblocking filter can remove block distortion generated at the boundary between blocks.
  • SAO can add an appropriate offset to the pixel value to compensate for coding errors.
  • the ALF may perform filtering based on a value obtained by comparing the reconstructed image with the original image, and may be performed only when high efficiency is applied.
  • the reconstructed block that has passed through the filter unit 180 may be stored in the reference picture buffer 190.
  • FIG. 2 is a block diagram illustrating a configuration of an image decoding apparatus according to an embodiment of the present invention.
  • the image decoding apparatus 200 may include an entropy decoder 210, an inverse quantizer 220, an inverse transformer 230, an intra predictor 240, a motion compensator 250, and an adder ( 255, a filter unit 260, and a reference picture buffer 270.
  • the image decoding apparatus 200 may receive a bitstream output from the encoder and perform decoding in an intra mode or an inter mode, and output a reconstructed image, that is, a reconstructed image.
  • the switch In the intra mode, the switch may be switched to intra, and in the inter mode, the switch may be switched to inter.
  • the image decoding apparatus 200 may obtain a residual block from the input bitstream, generate a prediction block, and then add the residual block and the prediction block to generate a reconstructed block, that is, a reconstruction block.
  • the entropy decoder 210 may entropy decode the input bitstream according to a probability distribution to generate symbols including symbols in the form of quantized coefficients.
  • the entropy decoding method is a method of generating each symbol by receiving a binary string. The process of determining the value of a syntax element by performing entropy decoding may be called parsing.
  • the entropy decoder 210 may determine a symbol corresponding to the syntax element by determining a value of the syntax element.
  • the entropy decoding method is similar to the entropy coding method described above.
  • the entropy decoder 210 may store a table for performing entropy decoding, such as a variable length coding (VLC) table.
  • VLC variable length coding
  • the entropy decoding unit 210 may perform entropy decoding using the stored variable length coding (VLC) table.
  • the CABAC entropy decoding method receives a bin corresponding to each syntax element in a bitstream, and uses a context model by using syntax element information, decoding information of neighboring and decoding blocks, or symbol / bin information decoded in a previous step.
  • a symbol corresponding to the value of each syntax element may be generated by performing arithmetic decoding of a bin by predicting a probability of occurrence of a bin according to the determined context model.
  • the CABAC entropy decoding method may update the context model by using the information of the decoded symbol / bin for the context model of the next symbol / bin.
  • an adaptive sorting table may be used as in the entropy encoding process.
  • the adaptive sort table may include a table index to which symbol values are mapped and a code number to which the table index is mapped.
  • the entropy decoder 210 may map a codeword to a code number based on a variable length code table.
  • the entropy decoder 210 may map a code number to a table index based on an adaptive sort table (and / or a reverse adaptive sort table).
  • the entropy decoder 210 may update the adaptive sort table (and / or the reverse adaptive sort table).
  • the entropy decoder 210 may map the table index to a symbol value. Therefore, the code number may be viewed as a value mapped to a table index value at the time of decoding, and the table index value may be viewed as a value at which a code number is mapped at the time of decoding.
  • the entropy decoding method When the entropy decoding method is applied, a small number of bits are allocated to a symbol having a high probability of occurrence and a large number of bits are allocated to a symbol having a low probability of occurrence, whereby the size of the bit string for each symbol is increased. Can be reduced. Therefore, the compression performance of image decoding can be improved through an entropy decoding method.
  • the quantized coefficient is inversely quantized by the inverse quantizer 220 and inversely transformed by the inverse transformer 230, and as a result of the inverse quantization / inverse transformation of the quantized coefficient, a residual block may be generated.
  • the intra predictor 240 may generate a prediction block by performing spatial prediction using pixel values of blocks that are already decoded around the current block.
  • the motion compensator 250 may generate a predictive block by performing motion compensation using the reference image stored in the motion vector and the reference picture buffer 270.
  • the residual block and the prediction block may be added through the adder 255, and the added block may pass through the filter unit 260.
  • the filter unit 260 may apply at least one or more of the deblocking filter, SAO, and ALF to the reconstructed block or the reconstructed picture.
  • the filter unit 260 may output a reconstructed image, that is, a reconstructed image.
  • the reconstructed picture may be stored in the reference picture buffer 270 and used for inter prediction.
  • a unit and / or a block means a unit of image encoding and decoding.
  • a coding or decoding unit refers to a divided unit when the image is divided and encoded or decoded. Therefore, a macroblock, a coding unit (CU), a prediction unit (PU), and a transform are used. It may be called a unit (Transform Unit), a transform block, or the like.
  • One block may be further divided into smaller sub-blocks.
  • FIG. 3 is a conceptual diagram schematically illustrating an embodiment in which one coding unit is divided into a plurality of sub-units.
  • the coding unit may mean a unit in which image encoding and decoding are performed.
  • One coding unit may be hierarchically divided with depth information based on a tree structure. Each divided subunit may have depth information. Since the depth information indicates the number and / or degree of division of the unit, the depth information may include information about the size of the sub-unit.
  • the highest node may be called a root node and may have the smallest depth value.
  • the highest node may have a depth of level 0 and may represent the first unit that is not divided.
  • the first undivided unit may have, for example, a depth value of zero. Since the first unit that is not divided corresponds to a coding unit having a maximum size, it may be referred to as a largest coding unit (LCU).
  • LCU largest coding unit
  • a lower node having a depth of level 1 may indicate a unit in which the first unit is divided once
  • a lower node having a depth of level 2 may indicate a unit in which the first unit is divided twice.
  • unit 320 corresponding to node a in 320 of FIG. 3 is a unit divided once in the original unit, may have a depth of level 1
  • Unit and may have a level 2 depth.
  • a unit in which the first unit is divided once may have a depth value 1
  • a unit in which the first unit is divided twice may have a depth value 2.
  • a leaf node of level 3 may indicate a unit in which the first unit is divided three times.
  • the unit d corresponding to the node d in 320 of FIG. 3 may be a unit divided three times in the first unit and may have a depth of level 3.
  • FIG. 3 the leaf node at level 3, which is the lowest node, may have the deepest depth. Since a coding unit corresponding to the lowest node corresponds to a coding unit having a minimum size, it may be referred to as a smallest coding unit (SCU).
  • SCU smallest coding unit
  • each coding unit may have coding unit split flag information.
  • the coding unit splitting flag may indicate whether a coding unit corresponding to the flag is divided into a plurality of lower units (coding units).
  • the coding unit split flag information may be represented by split_coding_unit_flag.
  • split_coding_unit_flag For example, when 1 is allocated to split_coding_unit_flag, the flag may indicate that the coding unit is split into a plurality of sub-units.
  • the flag may indicate that the coding unit is not divided into a plurality of sub-units.
  • split_coding_unit_flag information indicating whether a coding unit is divided into a plurality of sub-units.
  • FIG. 4 is a diagram schematically illustrating an embodiment of a prediction unit corresponding to a coding unit.
  • One coding unit may be used as a prediction unit or may be divided into a plurality of prediction units.
  • 410 of FIG. 4 illustrates an embodiment of a prediction unit corresponding to a coding unit in an intra mode
  • 420 and 430 of FIG. 4 illustrate an embodiment of a prediction unit corresponding to a coding unit in an inter mode.
  • the division scheme of the coding unit and / or the size (and / or shape) of the prediction unit corresponding to the coding unit may be represented by the division mode.
  • the split mode may indicate whether a coding unit is used as a prediction unit or split into a plurality of prediction units.
  • the split mode may be represented as PartMode.
  • the division mode indicating the division scheme of the coding unit and / or the size (and / or shape) of the prediction unit corresponding to the coding unit will be referred to as PartMode.
  • a split mode for a coding unit and / or a prediction unit in an intra mode may be 2N ⁇ 2N or N ⁇ N (N is a positive integer).
  • the coding unit may be used as the prediction unit as it is. That is, the split mode of 2N ⁇ 2N may represent that the coding unit is not split into a plurality of prediction units.
  • the split mode when the split mode is NxN, the coding unit may be divided into four square prediction units having an NxN size. Since the information indicating the split mode of 2Nx2N and NxN described above is split mode information in the intra mode, it may also be referred to as intra split mode information.
  • the intra split mode information may indicate the division scheme of the coding unit and / or the size (and / or shape) of the prediction unit corresponding to the coding unit in the intra mode.
  • Intra split mode information may be represented by intra_part_mode, for example.
  • intra_part_mode intra split mode information indicating a split scheme of a coding unit and / or a size (and / or shape) of a prediction unit corresponding to the coding unit in the intra mode.
  • the splitting mode for the coding unit and / or the prediction unit in the inter mode may be 2N ⁇ 2N, 2N ⁇ N, N ⁇ 2N, or N ⁇ N (N is a positive integer).
  • the coding unit when the split mode is 2N ⁇ 2N, the coding unit may be used as the prediction unit as it is. That is, the split mode of 2N ⁇ 2N may represent that the coding unit is not split into a plurality of prediction units.
  • the coding unit when the split mode is NxN, the coding unit may be divided into four square prediction units having an NxN size.
  • the split mode when the split mode is Nx2N, the coding unit may be split into two rectangular prediction units having an Nx2N size. That is, when the split mode is Nx2N, a square coding unit may be symmetrically divided into two left and right prediction units, which may correspond to vertical division.
  • the coding unit may be split into two rectangular prediction units having a size of 2N ⁇ N. That is, when the splitting mode is 2N ⁇ N, a square coding unit may be symmetrically divided into two up and down prediction units, which may correspond to horizontal division.
  • the splitting modes of 2Nx2N and NxN are the splitting modes in the inter mode in which motion prediction is performed and the prediction unit has a square shape in the splitting mode
  • the splitting modes of the 2Nx2N and NxN are square motion splitting modes. It is called.
  • the split mode of 2NxN and Nx2N described above is a split mode in inter mode in which motion prediction is performed, and the prediction unit has a symmetrical shape in the split mode
  • the split mode of 2NxN and Nx2N is symmetrical in the present specification. It is called symmetric motion partitioning mode.
  • the splitting mode for the coding unit and / or the prediction unit in the inter mode may be 2NxnU, 2NxnD, nLx2N, or nRx2N (N is a positive integer).
  • the coding unit may be split into two prediction units having sizes of 2Nx (1/2) N and 2Nx (3/2) N, respectively. That is, when the split mode is 2NxnU and 2NxnD, a square coding unit may be asymmetrically divided into two up and down prediction units, which may correspond to horizontal division.
  • a 2Nx (1/2) N size prediction unit may be located at the top of the coding unit, and when the split mode is 2NxnD, the 2Nx (1/2) N size prediction unit may be It may be located at the lower end in the coding unit.
  • the prediction unit located at the bottom may be larger, and when the split mode is 2NxnD, the prediction unit located at the top may be larger.
  • the coding unit may be split into two prediction units having sizes (1/2) Nx2N and (3/2) Nx2N, respectively. That is, when the splitting modes are nLx2N and nRx2N, a square coding unit may be asymmetrically divided into two prediction units, which may correspond to vertical division.
  • a (1/2) Nx2N size prediction unit may be located on the left side of the coding unit, and when the split mode is nRx2N, the (1/2) Nx2N size prediction unit is a coding unit It may be located on the right side of the inside. That is, when the split mode is nLx2N, the prediction unit located on the right side may be larger, and when the split mode is nRx2N, the prediction unit located on the left side may be larger.
  • the splitting modes of 2NxnU, 2NxnD, nLx2N, and nRx2N are the splitting modes in the inter mode in which motion prediction is performed and the prediction unit has an asymmetric shape in the splitting mode
  • the partition mode of is called asymmetric motion partitioning (AMP) mode.
  • AMP asymmetric motion partitioning
  • the asymmetric motion division modes 2NxnU, 2NxnD, nLx2N, and nRx2N may be indicated by the asymmetric motion division information.
  • the asymmetric motion segmentation information may be represented by, for example, inter_amp_mode.
  • inter_amp_mode may be assigned a value of 0, 1, 2, or 3, and values 0, 1, 2, and 3 of the asymmetric motion splitting information may indicate splitting modes 2NxnU, 2NxnD, nLx2N, and nRx2N, respectively.
  • inter_amp_mode asymmetric motion segmentation information
  • At least one split mode among 2Nx2N and NxN may be used in the intra mode.
  • the inter mode at least one split mode among 2Nx2N, 2NxN, Nx2N, NxN, 2NxnU, 2NxnD, nLx2N, and nRx2N may be used.
  • the prediction unit having the NxN division mode may be used only for the smallest coding unit (SCU) corresponding to the predetermined size.
  • the NxN split mode may be applied only to a minimum coding unit (SCU) of size 8x8.
  • the size of the prediction unit corresponding to the minimum coding unit may be 4 ⁇ 4.
  • prediction (inter prediction and / or intra prediction) based on a 4x4 size prediction unit is referred to as 4x4 prediction (inter prediction and / or intra prediction).
  • splitting modes (symmetrical motion splitting mode and asymmetrical motion splitting mode) of 2NxN, Nx2N, 2NxnU, 2NxnD, nLx2N, and nRx2N among the splitting modes in the inter mode are, in one embodiment, a horizontal splitting flag and a remaining splitting flag. It may be represented.
  • the horizontal splitting flag may indicate whether the horizontal length of the prediction unit is longer or shorter than the vertical length of the prediction unit.
  • the horizontal division flag may be represented by inter_part_horz_flag. For example, when the value of the horizontal division flag is 1, the horizontal division length of the prediction unit may be longer than the vertical length, so the division modes indicated by the horizontal division flag are 2NxN, 2NxnU, and 2NxnD. Can be. Further, when the value of the horizontal division flag is 0, the horizontal division length of the prediction unit may be shorter than the vertical length, and thus the division modes indicated by the horizontal division flag may be Nx2N, nLx2N, and nRx2N. have.
  • the remaining split flag may indicate which split mode is the split mode for the coding unit and / or the prediction unit among the split modes indicated by the horizontal split flag.
  • the values 0, 1, and 2 of the remaining division flag may be values indicating 2N ⁇ N, 2N ⁇ nU, and 2N ⁇ nD, respectively.
  • the values 0, 1, and 2 of the remaining division flag may be values indicating Nx2N, nLx2N, and nRx2N, respectively.
  • the remaining division flag may be represented by, for example, rem_inter_part_mode.
  • inter_part_horz_flag the horizontal splitting flag
  • rem_inter_part_mode the remaining splitting flag
  • FIG. 5 is a flowchart schematically illustrating an embodiment of an inter prediction process.
  • the encoder and the decoder may perform prediction on the current block by using various motion prediction methods, and each prediction method may be applied in different prediction modes.
  • prediction modes used in inter prediction may include a skip mode, a merge mode, and an advanced motion vector prediction (AMVP) mode.
  • AMVP advanced motion vector prediction
  • the skip flag information may be represented by skip_flag.
  • skip_flag when 1 is assigned to skip_flag, the flag may indicate that the inter prediction mode of the current block is the skip mode.
  • the flag when 0 is assigned to skip_flag, the flag may indicate that the inter prediction mode of the current block is not the skip mode.
  • the merge flag information may be represented by merge_flag.
  • merge_flag when 1 is assigned to merge_flag, the flag may indicate that the inter prediction mode of the current block is a merge mode.
  • merge_flag when 0 is assigned to merge_flag, the flag may indicate that the inter prediction mode of the current block is not a merge mode.
  • the encoder and the decoder may derive motion information of the current block (S510).
  • the merge mode motion information of neighboring blocks located around the current block and call information corresponding to the current block may be used as motion information of the current block.
  • the call block may mean a block corresponding to the current block in a reference picture referenced by the current picture (picture belonging to the current block). That is, the merge may mean that motion information of the current block is derived from a neighboring block located near the current block and a call block corresponding to the current block.
  • motion information of the current block may be derived in the same manner as in the merge mode, and the skip mode in this case may also be called a merge skip mode.
  • the encoder and the decoder may generate a prediction block corresponding to the current block by performing inter prediction based on the derived motion information (S520).
  • the encoder may generate a residual block by the difference between the current block and the generated prediction block, and the residual block may be encoded and transmitted to the decoder.
  • the decoder may reconstruct the current block based on the transmitted residual block and the generated prediction block.
  • the value of the residual signal between the current block and the prediction block may be zero. Accordingly, the residual signal may not be transmitted from the encoder to the decoder, and the prediction block generated based on the motion information may be used as a reconstruction block corresponding to the current block.
  • FIG. 6 is a flowchart schematically illustrating an embodiment of an intra prediction process.
  • the encoder and the decoder may determine an intra prediction mode corresponding to the current block (S610). Intra prediction may be performed according to the intra prediction mode of the current block, and each of the intra prediction modes may have a prediction direction corresponding thereto.
  • the encoder may encode and transmit the information about the determined intra prediction mode to the decoder, and the decoder may determine the intra prediction mode of the current block based on the transmitted information.
  • the encoder may use a method of predicting the intra prediction mode in order to reduce the amount of transmitted bits and to increase the coding efficiency.
  • the encoder may encode the intra prediction mode of the current block based on the intra prediction mode of the reconstructed neighboring block.
  • An intra prediction mode of the current block may be determined based on the intra prediction mode of the reconstructed neighboring block.
  • the intra prediction mode derived based on the reconstructed neighboring block may be used as a prediction value for the intra prediction mode of the current block.
  • the intra prediction mode used as a prediction value for the intra prediction mode of the reconstructed current block may be referred to as Most Probable Mode (MPM).
  • MPM Most Probable Mode
  • the encoder and the decoder may derive a plurality of MPM candidates corresponding to the current block based on the reconstructed neighboring block, and generate an MPM list based on the derived MPM candidate.
  • the encoder determines whether the same MPM candidate as the intra prediction mode of the current block exists in the MPM list, and obtains MPM flag information indicating whether the same MPM candidate as the intra prediction mode of the current block exists in the MPM list. Can be sent to the decoder.
  • the decoder may determine whether the same MPM candidate as the intra prediction mode of the current block exists in the MPM list based on the transmitted MPM flag information.
  • the MPM flag information may indicate whether there is a candidate used as an intra prediction mode of the current block among the MPM candidate modes.
  • the MPM flag information may be represented as prev_intra_luma_pred_flag.
  • prev_intra_luma_pred_flag the MPM flag information will be referred to as prev_intra_luma_pred_flag.
  • the encoder encodes and transmits MPM index information indicating which MPM candidate among MPM candidates in the MPM list is the same as the MPM candidate in the MPM list. Can be.
  • the decoder may determine the MPM candidate indicated by the MPM index information as the intra prediction mode of the current block.
  • the MPM index information may be represented as mpm_idx.
  • the MPM index information will be referred to as mpm_idx.
  • the encoder may derive a remaining mode based on the intra prediction mode and the MPM list of the current block.
  • the remaining mode may be derived based on the intra prediction mode excluding the MPM candidate.
  • the encoder may encode the generated remaining mode and transmit it to the decoder, and the decoder may determine an intra prediction mode of the current block based on the transmitted remaining mode.
  • the remaining mode may be represented by rem_intra_luma_pred_mode.
  • the encoder and the decoder may generate a prediction block corresponding to the current block by performing intra prediction based on the determined intra prediction mode (S620).
  • FIG. 7 is a flowchart schematically illustrating an embodiment of a method of transmitting encoded information according to an embodiment of the present invention.
  • the encoder may generate encoding information (and / or encoding target symbol) for the CU before performing entropy encoding on the CU (S710).
  • the encoding information includes encoding unit split flag information (split_coding_unit_flag), skip flag information (skip_flag), merge flag information (merge_flag), prediction mode information (PredMode), split mode information (PartMode), intra split mode information (intra_part_mode), MPM flag information (prev_intra_luma_pred_flag) and MPM index information (mpm_idx) may be included.
  • the encoder may perform entropy encoding on a plurality of syntax elements corresponding to the generated encoding information (S720).
  • the encoder may use an entropy encoding scheme such as CAVLC, CABAC, or the like for entropy encoding.
  • the encoder may improve image encoding efficiency by performing entropy encoding by combining two or more different syntax elements in consideration of a probability of occurrence of a symbol corresponding to each syntax element.
  • there may be two or more syntax elements that may improve encoding efficiency by applying a joint encoding scheme.
  • an encoding scheme for performing entropy encoding by combining a plurality of syntax elements and / or a plurality of syntax element values derived for the same syntax element is referred to as a joint coding scheme.
  • a value of 0 or 1 may be transmitted based on a fixed length coding scheme.
  • one bit may be coded in the same manner as in a symbol value having a small occurrence probability, even for a symbol value having a large occurrence probability among two symbol values.
  • the joint encoding scheme is applied to a symbol having two symbol values having different occurrence probabilities, different bit amounts may be allocated to the two symbol values according to the occurrence probability, thereby improving encoding efficiency.
  • the encoder may use one representative symbol corresponding to two or more symbols.
  • the encoder may combine two or more symbol values into one group and assign one representative symbol value to the combined group.
  • the encoder may determine an additional bit corresponding to the representative symbol value and transmit it to the decoder in order to distinguish a plurality of symbol values belonging to the group indicated by the representative symbol value.
  • a symbol to which additional bits are applied and / or used to distinguish a plurality of symbol values corresponding to one representative symbol value may be referred to as an escape symbol.
  • the encoder may improve the efficiency of probability update performed based on a sorting table during entropy encoding. That is, when the probability of a plurality of symbols is not individually updated, but the probability is updated in a group unit for a plurality of combined symbols, the probability of symbols, events, parameters, etc. belonging to the group may be updated at once. The accuracy of probability prediction can be improved.
  • the above-described joint encoding scheme may not be applied only to a plurality of different syntax elements, but may also be applied to a plurality of syntax element values derived for the same syntax element.
  • the encoder may combine a plurality of syntax element values corresponding to the encoding unit, the prediction unit, and / or the transform unit into one group and assign one representative symbol value to the combined group. That is, the encoder may combine the plurality of syntax element values derived for the same syntax element and encode the combined plurality of syntax element values into one syntax element (and / or one syntax element value).
  • the joint encoding scheme may have various advantages in performing entropy encoding, and may improve encoding efficiency. Since specific embodiments of the joint encoding scheme are described below, a description thereof will be omitted.
  • the encoder may transmit the syntax element information jointly encoded by the above-described process to the decoder (S730).
  • FIG. 8 is a flowchart schematically showing an embodiment of a decoding method according to an embodiment of the present invention.
  • the decoder may perform entropy decoding on the jointly encoded syntax element information (S810).
  • entropy decoding performed on a jointly encoded syntax element is referred to as joint decoding.
  • the decoder may use an entropy decoding scheme such as CAVLC, CABAC, or the like for entropy decoding.
  • the decoder may perform a joint decoding process on two or more different syntax elements and / or a plurality of syntax element values corresponding to the same syntax element in consideration of a probability of occurrence of a symbol corresponding to each syntax element. Image decoding efficiency can be improved.
  • a value of 0 or 1 may be transmitted based on a fixed length coding scheme.
  • one bit may be coded in the same manner as in a symbol value having a small occurrence probability, even for a symbol value having a large occurrence probability among two symbol values.
  • the combined decoding scheme is applied to a symbol having two symbol values having different occurrence probabilities, different bit amounts may be allocated to the two symbol values according to the occurrence probability, thereby improving the decoding efficiency.
  • the decoder may use one representative symbol corresponding to two or more symbols.
  • the decoder may determine one representative symbol value by entropy decoding, and may derive two or more symbol values corresponding to the representative symbol value based on the determined representative symbol value.
  • the decoder may read an additional bit corresponding to the representative symbol value to distinguish a plurality of symbol values belonging to the group indicated by the representative symbol value.
  • the additional bit corresponding to the representative symbol value may be determined by the encoder and transmitted to the decoder.
  • a symbol in which an additional bit is applied and / or used to distinguish a plurality of symbol values corresponding to one representative symbol value may be referred to as an escape symbol.
  • the decoder can improve the efficiency of the probability update performed based on a sorting table during entropy encoding. That is, when the probability of a plurality of symbols is not individually updated, but the probability is updated in a group unit for a plurality of combined symbols, the probability of symbols, events, parameters, etc. belonging to the group may be updated at once. The accuracy of probability prediction can be improved.
  • the above-described combined decoding scheme may be applied not only to a plurality of syntax elements different from each other but also to a plurality of syntax element values derived for the same syntax element.
  • one representative syntax element value corresponding to the group of the plurality of syntax element values may be derived by an entropy decoding process. That is, the decoder may determine one representative syntax element value by entropy decoding, and derive a plurality of syntax element values corresponding to the representative syntax element value based on the determined representative syntax element value.
  • the combined decoding scheme may have various advantages in performing entropy decoding, and may improve decoding efficiency. Since specific embodiments of the joint decoding scheme will be described later, a description thereof will be omitted.
  • the decoder may obtain decoding information corresponding to the encoding information based on the jointly decoded syntax element information (S820). That is, the decoder may acquire decoding information corresponding to the encoding information before performing the decoding process (the restoration block generation process) for the coding unit.
  • the decoding information includes coding unit split flag information (split_coding_unit_flag), skip flag information (skip_flag), merge flag information (merge_flag), prediction mode information (PredMode), split mode information (PartMode), intra split mode information (intra_part_mode), MPM flag information (prev_intra_luma_pred_flag) and MPM index information (mpm_idx) may be included.
  • the decoder may generate a reconstruction block corresponding to a decoding object block (eg, a coding unit, a prediction unit, and / or a transform unit) based on the obtained decoding information (S830).
  • a decoding object block eg, a coding unit, a prediction unit, and / or a transform unit
  • each symbol (and / or syntax element) representing the encoding information and the values assigned to each symbol (and / or syntax element) are arbitrary and modified embodiments. If it corresponds to the technical spirit substantially the same as the content described in the embodiments described later, will be included in the scope of the present invention.
  • Table 1 below shows an embodiment of a joint encoding / combination decoding method when the size of an encoding / decoding target unit is larger than the SCU.
  • MODE_SKIP may mean that the prediction mode of the coding unit (and / or the prediction unit) is the skip mode.
  • MODE_INTER may mean that the prediction mode of the coding unit (and / or the prediction unit) is the inter mode.
  • MODE_INTRA may mean that the prediction mode of the coding unit (and / or the prediction unit) is an intra mode.
  • PART_2Nx2N, PART_2NxN, PART_Nx2N, PART_NxN, PART_2NxnU, PART_2NxnD, PART_nLx2N and PART_nRx2N can each represent split modes 2Nx2N, 2NxN, Nx2N, NxN, 2NxNN, Nx2N, and Nx2N.
  • one representative syntax element may be determined in consideration of the occurrence probability of each of the plurality of syntax elements. Can be. Representative syntax elements may be mapped to each of the plurality of syntax elements. For example, the representative syntax element may be represented by cu_split_pred_part_mode as in the embodiment of Table 1.
  • the encoder may determine a representative syntax element value based on the plurality of syntax element values, and may perform entropy encoding on the representative syntax element and transmit it to the decoder.
  • the decoder may determine a representative syntax element value by performing entropy decoding on the transmitted information, and may derive the plurality of syntax element values based on the representative syntax element value.
  • Table 2 below shows another embodiment of a joint encoding / combination decoding method.
  • the encoder / decoder combines a plurality of syntax elements split_coding_unit_flag, skip_flag, merge_flag, Predmode, and Partmode as well as prev_intra_luma_pred_flag corresponding to intra encoding / decoding information to improve encoding / decoding performance.
  • Entropy encoding / decoding may be performed.
  • one representative syntax element may be determined in consideration of the occurrence probability of each of the plurality of syntax elements.
  • Representative syntax elements may be mapped to each of the plurality of syntax elements.
  • the representative syntax element may be represented by cu_split_pred_part_mode as in the embodiment of Table 2.
  • the encoder / decoder may use an adaptive sort table in which the table index is re-assigned adaptively during the entropy encoding / decoding process.
  • each of the plurality of prediction units may have a prev_intra_luma_pred_flag value, and thus, a plurality of prev_intra_luma_pred_flag values may exist.
  • the encoder / decoder may apply the joint encoding / combination decoding scheme to all of the plurality of prev_intra_luma_pred_flag values in a similar manner as in the embodiment of Table 2. Even in this case, the encoder / decoder may use an adaptive sort table in which table indexes are re-assigned adaptively during entropy encoding / decoding.
  • Table 3 shows another embodiment of a joint encoding / combination decoding method.
  • mpm_idx may be combined with a plurality of syntax elements split_coding_unit_flag, skip_flag, merge_flag, Predmode, Partmode, and prev_intra_luma_pred_flag to be encoded / decoded.
  • one representative syntax element corresponding to the plurality of syntax elements to be combined may be determined, and the representative syntax elements may be mapped to each of the plurality of syntax elements.
  • the representative syntax element may be represented by cu_split_pred_part_mode as in the embodiment of Table 3.
  • the encoder / decoder may use an adaptive sort table in which the table index is re-assigned adaptively during the entropy encoding / decoding process.
  • the encoder / decoder may use an adaptive sort table in which the table index is re-assigned adaptively according to the occurrence probability of the symbol for cu_split_pred_part_mode, and thus, the occurrence probability of the symbol corresponding to MODE_INTRA and PART_2Nx2N is determined. You can use an escape symbol to increase it.
  • the decoder may further parse one bit (first bit) corresponding to the symbol value.
  • the prediction mode of the prediction unit is determined as MODE_INTRA and the split mode of the prediction unit (and / or coding unit) is determined as PART_2Nx2N, and the value assigned to prev_intra_luma_pred_flag May be determined to be zero.
  • the prediction mode of the prediction unit (and / or coding unit) is determined as MODE_INTRA and the splitting mode of the prediction unit (and / or coding unit) is determined as PART_2Nx2N, and the value assigned to prev_intra_luma_pred_flag is 1 Can be determined.
  • the decoder may further parse one bit (second bit) corresponding to the symbol value. In this case, if the parsed value is 0, the value assigned to mpm_idx may be determined as 0. If the parsed value is 1, the value assigned to mpm_idx may be determined as 1.
  • prev_intra_luma_pred_flag and mpm_idx may be jointly encoded / complexed through cu_split_pred_part_mode. Accordingly, an effect of encoding / decoding of prev_intra_luma_pred_flag and mpm_idx, which are syntax elements related to intra prediction, may be combined with each other.
  • Table 4 below shows another embodiment of a joint encoding / combination decoding method.
  • an escape symbol may be used for an asymmetric motion partitioning mode (AMP mode).
  • the encoder / decoder may use an adaptive sort table in which the table index is re-assigned adaptively during the entropy encoding / decoding process.
  • the encoder / decoder can use an adaptive sort table in which the table index is re-assigned adaptively according to the occurrence probability of the symbol with respect to cu_split_pred_part_mode, the occurrence probability of the symbol corresponding to the asymmetric motion partitioning mode is used. You can use an escape symbol to increase this.
  • the decoder may further parse one bit (first bit) corresponding to the symbol value.
  • the division mode of the prediction unit (and / or encoding unit) may correspond to horizontal division, and the decoder may further include one bit corresponding to the symbol value ( Second bit) can be further parsed. If the value parsed for the second bit is 0, the division mode of the prediction unit (and / or encoding unit) may correspond to PART_2NxnU. If the value parsed for the second bit is 1, the prediction unit (and / or encoding unit) ) May correspond to PART_2NXnD.
  • the division mode of the prediction unit (and / or encoding unit) may correspond to vertical division, and the decoder may further include one bit corresponding to the symbol value (first 2 bits) can be parsed further.
  • the division mode of the prediction unit (and / or encoding unit) may correspond to PART_nLx2N
  • the prediction unit (and / or Alternatively, the split mode of the coding unit may correspond to PART_nRx2N.
  • the encoder / decoder may perform entropy encoding / decoding by combining intra_part_mode and prev_intra_luma_pred_flag.
  • the probability distribution corresponding to the symbol value of each of intra_part_mode and prev_intra_luma_pred_flag may be represented as shown in the embodiments of Tables 5 and 6 below.
  • part_size may mean a split mode in the intra mode.
  • Intra_2Nx2N may indicate a split mode of 2Nx2N
  • Intra_NxN may indicate a split mode of NxN.
  • the encoder / decoder performs entropy encoding / decoding by combining the two syntax elements intra_part_mode and prev_intra_luma_pred_flag in consideration of the occurrence probability of the two syntax elements shown in the embodiments of Tables 5 and 6, thereby improving coding efficiency. Can be. This can be represented by Table 7 below.
  • one representative syntax element may be determined in consideration of the occurrence probability of two syntax elements intra_part_mode and prev_intra_luma_pred_flag.
  • the representative syntax element may be mapped to each of the two syntax elements.
  • the representative syntax element may be represented by intra_part_mpm_mode as in the embodiment of Table 7.
  • the encoder / decoder may use an adaptive sort table in which the table index is re-assigned adaptively during the entropy encoding / decoding process.
  • the encoder / decoder may perform joint encoding / combination decoding on a plurality of prev_intra_luma_pred_flag values corresponding to one coding unit.
  • the encoder / decoder may perform entropy encoding / entropy decoding on unified_prev_intra_luma_pred_flag indicating whether the plurality of prev_intra_luma_pred_flag values corresponding to the coding unit are jointly encoded / combined and decoded.
  • the split mode of the current coding unit (and / or prediction unit) is Intra_NxN and 1 is assigned to unified_prev_intra_luma_pred_flag
  • all of the values allocated to prev_intra_luma_pred_flag of four prediction units having NxN sizes may be determined to be zero.
  • entropy encoding / entropy decoding may not be performed on prev_intra_luma_pred_flag of four prediction units having an Intra_NxN split mode.
  • the encoder / decoder may perform entropy encoding / entropy decoding on all prev_intra_luma_pred_flag of four prediction units having the Intra_NxN division mode.
  • Table 8 shows another embodiment of a joint encoding / combination decoding method.
  • four prediction units belonging to one coding unit having a split mode of NxN may have NxN PU index values of 0, 1, 2, and 3, respectively.
  • FIG. 9 is a diagram schematically illustrating a PU index value of each of four prediction units belonging to one coding unit having a split mode of N ⁇ N.
  • the PU index value of the upper left prediction unit is 0, the PU index value of the upper right prediction unit is 1, and the PU index value of the lower left prediction unit Is 2 and the PU index value of the lower right prediction unit may be 3.
  • one representative syntax element corresponding to the plurality of prev_intra_luma_pred_flag values is not used without using unified_prev_intra_luma_pred_flag. It is available.
  • the representative syntax element may be mapped to a combination of the plurality of prev_intra_luma_pred_flag values.
  • the representative syntax element may be represented as unified_prev_intra_luma_pred_mode as in the embodiment of Table 8.
  • the encoder may determine a representative syntax element value (unified_prev_intra_luma_pred_mode) based on the plurality of syntax element values, and may perform entropy encoding on the representative syntax element and transmit it to the decoder.
  • the decoder may determine a representative syntax element value (unified_prev_intra_luma_pred_mode) by performing entropy decoding on the transmitted information, and may derive the plurality of syntax element values based on the representative syntax element value.
  • the encoder / decoder may use an adaptive sort table in which the table index is re-assigned adaptively during the entropy encoding / decoding process.
  • the encoder / decoder may perform entropy encoding / entropy decoding by combining intra mode encoding related information such as split_coding_unit_flag, prev_intra_luma_pred_flag, and mpm_idx.
  • intra mode encoding related information such as split_coding_unit_flag, prev_intra_luma_pred_flag, and mpm_idx.
  • one representative syntax element corresponding to the plurality of syntax elements to be combined may be determined, and the representative syntax elements may be mapped to each of the plurality of syntax elements.
  • the representative syntax element may be represented as intra_cu_split_pred_part_mode.
  • Table 9 shows an embodiment of a codeword table applied to joint encoding / combination decoding based on intra_cu_split_pred_part_mode when the size of a coding unit to be encoded / decoded is larger than SCU.
  • Table 10 shows an embodiment of a codeword table applied to joint encoding / combination decoding based on intra_cu_split_pred_part_mode when the size of a coding unit to be encoded / decoded is equal to the SCU.
  • CUSize may indicate the size of a CU to be encoded / decoded.
  • the encoder may determine a representative syntax element value based on the plurality of syntax element values, and may perform entropy encoding on the representative syntax element and transmit it to the decoder.
  • the decoder may determine a representative syntax element value by performing entropy decoding on the transmitted information, and may derive the plurality of syntax element values based on the representative syntax element value.
  • the encoder / decoder may use an adaptive sort table in which the table index is re-assigned adaptively during the entropy encoding / decoding process.
  • each of the plurality of prediction units may have a prev_intra_luma_pred_flag value, an mpm_idx value, or the like, and thus, a plurality of prev_intra_luma_pred_flag values and a plurality of mpm_idx values may exist.
  • the encoder / decoder may apply the joint encoding / combination decoding scheme to the plurality of prev_intra_luma_pred_flag values and the plurality of mpm_idx values in a similar manner as in the embodiments of Table 9 and Table 10. Even in this case, the encoder / decoder may use an adaptive sort table in which table indexes are re-assigned adaptively during entropy encoding / decoding.
  • Table 11 shows an embodiment of syntax elements when joint encoding / combination decoding is performed based on intra_cu_split_pred_part_mode.
  • the intra_cu_split_pred_part_mode syntax may be defined in a coding tree along with cu_split_pred_part_mode and split_coding_unit_flag, for example.
  • Table 12 below shows another embodiment of a joint encoding / combination decoding method.
  • Table 12 may correspond to an embodiment of a table applied when the size of a coding unit to be encoded / decoded is larger than the SCU.
  • the encoder / decoder may perform entropy encoding / entropy decoding by combining a plurality of syntax elements split_coding_unit_flag, skip_flag, PredMode, and PartMode except one merge_flag into one representative syntax element cu_split_pred_part_mode.
  • the encoder / decoder may perform entropy encoding / entropy decoding by combining only a plurality of syntax elements except for merge_flag in order to reduce degradation of encoding / decoding performance due to merge_flag.
  • the encoder / decoder may perform joint encoding / combination decoding on split_coding_unit_flag, skip_flag, Predmode, and Partmode as in the embodiment of Table 12.
  • the encoder / decoder may use an adaptive sort table in which the table index is re-assigned adaptively during the entropy encoding / decoding process.
  • the encoder / decoder may independently perform entropy encoding / entropy decoding on cu_split_pred_part_mode and merge_flag.
  • Table 13 below shows another embodiment of a joint encoding / combination decoding method.
  • Table 13 may correspond to another embodiment of a combined encoding / combination decoding method for split_coding_unit_flag, skip_flag, PredMode, and PartMode when merge_flag is encoded / decoded as a separate syntax element distinguished from cu_split_pred_part_mode.
  • Table 13 may correspond to an embodiment of a table applied when the size of a coding unit to be encoded / decoded is the same as the SCU and 4x4 inter prediction is allowed.
  • the encoder / decoder may use escape symbols corresponding to PART_2Nx2N of MODE_INTRA, PART_NxN of MODE_INTRA, and PART_NxN of MODE_INTER.
  • the encoder / decoder may use an adaptive alignment table in which a table index is adaptively reassigned during entropy encoding / entropy decoding.
  • Table 14 below shows another embodiment of a joint encoding / combination decoding method.
  • Table 14 may correspond to another embodiment of a combined encoding / combination decoding method for split_coding_unit_flag, skip_flag, PredMode, and PartMode when merge_flag is encoded / decoded as a separate syntax element distinguished from cu_split_pred_part_mode.
  • Table 14 may correspond to an embodiment of a table applied when the size of a coding unit to be encoded / decoded is the same as that of the SCU and 4x4 inter prediction is not allowed.
  • the encoder / decoder may use escape symbols corresponding to PART_2Nx2N of MODE_INTRA and PART_NxN of MODE_INTRA.
  • the encoder / decoder may use an adaptive alignment table in which a table index is adaptively reassigned during entropy encoding / entropy decoding.
  • Table 15 shows an embodiment of semantics of the syntax element cu_split_pred_part_mode when merge_flag is encoded / decoded as a separate syntax element distinguished from cu_split_pred_part_mode.
  • syntax elements of the coding unit level of split_coding_unit_flag, skip_flag, Predmode, and Partmode may be used in a joint encoding / combination decoding process based on cu_split_pred_part_mode.
  • the joint encoding / combination decoding may be performed only for.
  • cu_split_pred_part_mode may indicate split_coding_unit_flag.
  • cu_split_pred_part_mode may indicate skip_flag [x0] [y0], PredMode, and PartMode of the coding unit.
  • X0 and y0 corresponding to the array index may indicate the position of the leftmost upper luma pixel in the coding unit with respect to the position of the leftmost upper luma pixel in the picture to which the coding unit belongs.
  • Table 16 below shows an embodiment of prediction unit syntax when merge_flag is encoded / decoded as a separate syntax element distinguished from cu_split_pred_part_mode.
  • the decoder may parse the merge_flag without checking an entropy decoding method and a condition regarding a split mode of the prediction unit. At this time, in the encoding / decoding process of the merge_flag, a fixed length code having a length of 1 bit may be used.
  • merge_flag When merge_flag is combined with cu_split_pred_part_mode to perform entropy encoding / entropy decoding, merge_flag may be parsed when the split mode of the prediction unit (and / or encoding unit) is not 2N ⁇ 2N. However, if merge_flag is encoded / decoded as a separate syntax element distinguished from cu_split_pred_part_mode, the decoder can parse merge_flag in the same manner as in other split modes, even when the split mode of the prediction unit (and / or coding unit) is 2Nx2N. have. At this time, since the decoder can parse merge_flag without checking a specific condition, the complexity in the decoder can be reduced.
  • mapping table 17 shows an embodiment of a mapping table applied to cu_split_pred_part_mode when merge_flag is encoded / decoded as a separate syntax element distinguished from cu_split_pred_part_mode.
  • the mapping table may mean a table indicating a mapping relationship between a code number and a table index.
  • the mapping table corresponding to cu_split_pred_part_mode may be represented by splitPredPartModeTable.
  • the embodiment of Table 17 may correspond to an initialized table corresponding to the mapping table.
  • cuDepth represents a depth value of a coding unit
  • codeNum represents a code number.
  • splitPredPartModeTable may have a different code number according to the depth value of the coding unit. Accordingly, the decoder may derive a plurality of symbols split_coding_unit_flag, skip_flag, Predmode, and Partmode corresponding to the representative syntax element cu_split_pred_part_mode according to the depth value of each coding unit based on splitPredPartModeTable. In this case, the decoder may apply an adaptive sort table to the splitPredPartModeTable during entropy decoding.
  • each code number value may be mapped to a table index value of 0 to 9.
  • a code number value of 0 to 4 may exist. At this time, each code number value may be mapped to a table index value of 1 to 5.
  • the maximum number of code numbers may be equal to the maximum number of symbols corresponding to cu_split_pred_part_mode, and the number of symbols may correspond to the number of table indexes.
  • a table index value corresponding to a code number having a value of 5 or more may correspond to a meaningless value that is not actually used. This is because when the depth value of the coding unit is 3, only five code numbers having a value of 0 to 4 can be used.
  • Table 18 shows an example of code number and codeword allocation corresponding to cu_split_pred_part_mode when merge_flag is encoded / decoded as a separate syntax element distinguished from cu_split_pred_part_mode.
  • Table 18 may correspond to an embodiment of a table applied when the size of a coding unit to be encoded / decoded is larger than the SCU.
  • the value x allocated to cu_split_pred_part_mode may have a range of 0 ⁇ x ⁇ S, and at this time, the maximum value of x may be limited to S.
  • each value allocated to cu_split_pred_part_mode may correspond to a table index, and the maximum value may be 9.
  • cu_split_pred_part_mode since the maximum value assigned to cu_split_pred_part_mode is determined, cu_split_pred_part_mode can be encoded as a truncated unary code with high coding efficiency. Therefore, the decoder may parse the bitstream corresponding to cu_split_pred_part_mode based on the truncated unary code. For example, when a table index value is N (N is an integer greater than or equal to 0), the cutting type unary code corresponding to the table index value may be composed of N '0's and one' 1 '.
  • the truncated unary code corresponding to the table index value may be configured with N max '0's.
  • N is an integer greater than or equal to 0
  • the cut unary code corresponding to the table index value may be composed of N '1's and one' 0 '.
  • the truncated unary code corresponding to the table index value may be configured with N max '1's.
  • the decoder After reading the codeword corresponding to cu_split_pred_part_mode from the bitstream, the decoder can derive symbol information (eg, split_coding_unit_flag, skip_flag, PredMode, PartMode, etc.) corresponding to the codeword based on Table 18. For example, when the codeword is '001', the codeword may be mapped to code number 2, and the code number 2 may be mapped to cu_split_pred_part_mode value 2. Accordingly, split_coding_unit_flag, skip_flag, PredMode, and PartMode may be determined as values and / or modes corresponding to cu_split_pred_part_mode value 2, respectively.
  • symbol information eg, split_coding_unit_flag, skip_flag, PredMode, PartMode, etc.
  • the value of split_coding_unit_flag may be determined as 0, and the value of skip_flag may be determined as 0.
  • PredMode may be determined as MODE_INTER and PartMode may be determined as PART_2Nx2N.
  • the code number and cu_split_pred_part_mode (and / or table index of cu_split_pred_part_mode) mapped to the code number may be updated based on the adaptive sort table.
  • Table 19 shows another embodiment of code number and codeword allocation corresponding to cu_split_pred_part_mode when merge_flag is encoded / decoded as a separate syntax element distinguished from cu_split_pred_part_mode.
  • Table 19 may correspond to an embodiment of a table applied when the size of a coding unit to be encoded / decoded is the same as the SCU and 4x4 inter prediction is allowed.
  • the value x allocated to cu_split_pred_part_mode may have a range of 0 ⁇ x ⁇ S, and at this time, the maximum value of x may be limited to S.
  • each value allocated to cu_split_pred_part_mode may correspond to a table index, and a maximum value may be four.
  • cu_split_pred_part_mode since the maximum value assigned to cu_split_pred_part_mode is determined, cu_split_pred_part_mode can be encoded as a truncated unary code with high coding efficiency. Therefore, the decoder may parse the bitstream corresponding to cu_split_pred_part_mode based on the truncated unary code.
  • the decoder After reading the codeword corresponding to cu_split_pred_part_mode from the bitstream, the decoder can derive symbol information (eg, split_coding_unit_flag, skip_flag, PredMode, PartMode, etc.) corresponding to the codeword based on Table 19.
  • symbol information eg, split_coding_unit_flag, skip_flag, PredMode, PartMode, etc.
  • split_coding_unit_flag, skip_flag, PredMode, and PartMode may be determined as values and / or modes corresponding to cu_split_pred_part_mode value 2, respectively.
  • the value of split_coding_unit_flag may be determined as 0.
  • PredMode may be determined as MODE_INTER and PartMode may be determined as PART_2Nx2N.
  • the code number and cu_split_pred_part_mode (and / or table index of cu_split_pred_part_mode) mapped to the code number may be updated based on the adaptive sort table.
  • the symbol when the cu_split_pred_part_mode value is 4, the symbol may be used as an escape symbol. For example, if the cu_split_pred_part_mode value is 4, the decoder may further parse one bit (first bit) corresponding to the symbol value. At this time, if the parsed value is 1, PredMode may be determined as MODE_INTRA and PartMode may be determined as PART_2N ⁇ 2N.
  • the decoder may further parse one bit (second bit) corresponding to the symbol value.
  • PredMode may be determined as MODE_INTRA and PartMode may be determined as PART_NxN.
  • PredMode may be determined as MODE_INTER and PartMode may be determined as PART_NxN.
  • Table 20 below shows another embodiment of code number and codeword allocation corresponding to cu_split_pred_part_mode when merge_flag is encoded / decoded as a separate syntax element distinguished from cu_split_pred_part_mode.
  • Table 20 may correspond to an embodiment of a table applied when the size of a coding unit to be encoded / decoded is equal to the SCU and 4x4 inter prediction is not allowed.
  • the value x allocated to cu_split_pred_part_mode may have a range of 0 ⁇ x ⁇ S, and at this time, the maximum value of x may be limited to S.
  • each value allocated to cu_split_pred_part_mode may correspond to a table index, and a maximum value may be four.
  • cu_split_pred_part_mode since the maximum value assigned to cu_split_pred_part_mode is determined, cu_split_pred_part_mode can be encoded as a truncated unary code with high coding efficiency. Therefore, the decoder may parse the bitstream corresponding to cu_split_pred_part_mode based on the truncated unary code.
  • the decoder may derive symbol information (eg, split_coding_unit_flag, skip_flag, PredMode, PartMode, etc.) corresponding to the codeword based on Table 20.
  • symbol information eg, split_coding_unit_flag, skip_flag, PredMode, PartMode, etc.
  • split_coding_unit_flag, skip_flag, PredMode, and PartMode may be determined as values and / or modes corresponding to cu_split_pred_part_mode value 3, respectively.
  • the value of split_coding_unit_flag may be determined to be zero.
  • PredMode may be determined as MODE_INTER
  • PartMode may be determined as PART_Nx2N.
  • the code number and cu_split_pred_part_mode (and / or table index of cu_split_pred_part_mode) mapped to the code number may be updated based on the adaptive sort table.
  • the symbol when the cu_split_pred_part_mode value is 4, the symbol may be used as an escape symbol.
  • the decoder may further parse one bit (first bit) corresponding to the symbol value.
  • PredMode may be determined as MODE_INTRA and PartMode may be determined as PART_2Nx2N.
  • PredMode may be determined as MODE_INTRA and PartMode may be determined as PART_NxN.
  • Table 21 shows another embodiment of a joint encoding / combination decoding method.
  • Table 21 may correspond to an embodiment of a table applied when the size of a coding unit to be encoded / decoded is larger than the SCU.
  • the encoder / decoder includes one representative of a plurality of syntax elements split_coding_unit_flag, skip_flag, PredMode, and PartMode except merge_flag (merge flag), inter_part_horz_flag (horizontal split flag), and rem_inter_part_mode (remaining split flag).
  • Entropy encoding / entropy decoding can be performed by combining with the syntax element cu_split_pred_part_mode.
  • Table 21 may correspond to an embodiment of a table applied when merge_flag, inter_part_horz_flag, and rem_inter_part_mode are encoded / decoded separately from cu_split_pred_part_mode.
  • inter_part_horz_flag and rem_inter_part_mode may also be regarded as information related to the asymmetric motion division mode and the symmetric motion division mode.
  • the encoder / decoder may perform entropy encoding / entropy decoding by combining only a plurality of syntax elements except merge_flag, inter_part_horz_flag, and rem_inter_part_mode to reduce degradation of encoding / decoding performance due to merge_flag, inter_part_horz_flag, and rem_inter_part_mode.
  • the encoder / decoder may perform joint encoding / combination decoding on split_coding_unit_flag, skip_flag, Predmode, and Partmode as in the embodiment of Table 21.
  • the encoder / decoder may use an adaptive sort table in which the table index is re-assigned adaptively during the entropy encoding / decoding process.
  • merge_flag, inter_part_horz_flag, and rem_inter_part_mode are not combined with cu_split_pred_part_mode, and thus may correspond to separate syntax elements distinguished from cu_split_pred_part_mode. Accordingly, the encoder / decoder may independently perform entropy encoding / entropy decoding on cu_split_pred_part_mode, merge_flag, inter_part_horz_flag, and rem_inter_part_mode.
  • Table 22 below shows another embodiment of a joint encoding / combination decoding method.
  • Table 22 may correspond to another embodiment of a table applied when merge_flag, inter_part_horz_flag, and rem_inter_part_mode are encoded / decoded as separate syntax elements distinguished from cu_split_pred_part_mode.
  • Table 22 may correspond to an embodiment of a table applied when the size of a coding unit to be encoded / decoded is equal to the SCU and 4x4 inter prediction is allowed.
  • the encoder / decoder may use an escape symbol corresponding to PART_2NxN of MODE_INTER, PART_Nx2N of MODE_INTER, PART_2Nx2N of MODE_INTRA, PART_NxN of MODE_INTRA, and escape symbol corresponding to PART_NxN of MODE_INTER.
  • the encoder / decoder may use an adaptive alignment table in which a table index is adaptively reassigned during the entropy encoding / entropy decoding process.
  • Table 23 shows another embodiment of a joint encoding / combination decoding method.
  • Table 23 may correspond to another embodiment of a table applied when merge_flag, inter_part_horz_flag, and rem_inter_part_mode are encoded / decoded as separate syntax elements distinguished from cu_split_pred_part_mode.
  • Table 23 may correspond to an embodiment of a table applied when the size of a coding unit to be encoded / decoded is equal to the SCU and 4x4 inter prediction is not allowed.
  • the encoder / decoder may use an escape symbol corresponding to PART_2NxN of MODE_INTER, PART_Nx2N of MODE_INTER, and an escape symbol corresponding to PART_2Nx2N of MODE_INTRA, and PART_NxN of MODE_INTRA.
  • the encoder / decoder may use an adaptive alignment table in which a table index is adaptively reassigned during the entropy encoding / entropy decoding process.
  • Table 24 shows an example of semantics of the syntax element cu_split_pred_part_mode when merge_flag, inter_part_horz_flag, and rem_inter_part_mode are encoded / decoded as separate syntax elements distinguished from cu_split_pred_part_mode.
  • inter_part_horz_flag and rem_inter_part_mode a case where the encoding / decoding as a separate syntax element in a distinct and cu_split_pred_part_mode, in a combined coding / combining decoding process based on the cu_split_pred_part_mode split_coding_unit_flag, skip_flag, Predmode and 2Nx2N and NxN
  • the joint encoding / combination decoding may be performed only on the syntax elements of the coding unit level of the part mode.
  • cu_split_pred_part_mode may indicate split_coding_unit_flag.
  • cu_split_pred_part_mode may indicate skip_flag [x0] [y0], PredMode and PartMode corresponding to 2Nx2N and NxN of the coding unit.
  • X0 and y0 corresponding to the array index may indicate the position of the leftmost upper luma pixel in the coding unit with respect to the position of the leftmost upper luma pixel in the picture to which the coding unit belongs.
  • Table 25 shows an embodiment of prediction unit syntax when merge_flag is encoded / decoded as a separate syntax element distinguished from cu_split_pred_part_mode.
  • the decoder may parse the merge_flag without checking an entropy decoding method and a condition regarding a split mode of the prediction unit. At this time, in the encoding / decoding process of the merge_flag, a fixed length code having a length of 1 bit may be used.
  • merge_flag When merge_flag is combined with cu_split_pred_part_mode to perform entropy encoding / entropy decoding, merge_flag may be parsed when the split mode of the prediction unit (and / or encoding unit) is not 2N ⁇ 2N. However, if merge_flag is encoded / decoded as a separate syntax element distinguished from cu_split_pred_part_mode, the decoder can parse merge_flag in the same manner as in other split modes, even when the split mode of the prediction unit (and / or coding unit) is 2Nx2N. have. At this time, since the decoder can parse merge_flag without checking a specific condition, the complexity in the decoder can be reduced.
  • Table 26 shows an embodiment of encoding unit syntax when inter_part_horz_flag and rem_inter_part_mode are encoded / decoded as separate syntax elements distinguished from cu_split_pred_part_mode.
  • inter_part_horz_flag and rem_inter_part_mode may be encoded and / or decoded as separate syntax elements distinguished from cu_split_pred_part_mode.
  • a fixed length code having a length of 1 bit may be used in the entropy encoding / entropy decoding process of the inter_part_horz_flag.
  • a variable length code may be used in the entropy encoding / entropy decoding process of rem_inter_part_mode.
  • mapping table 27 shows an embodiment of a mapping table applied to cu_split_pred_part_mode when merge_flag, inter_part_horz_flag, and rem_inter_part_mode are encoded / decoded as separate syntax elements distinguished from cu_split_pred_part_mode.
  • the mapping table may mean a table indicating a mapping relationship between a code number and a table index.
  • the mapping table corresponding to cu_split_pred_part_mode may be represented by splitPredPartModeTable.
  • the embodiment of Table 27 may correspond to an initialized table corresponding to the mapping table.
  • cuDepth represents a depth value of a coding unit
  • codeNum represents a code number.
  • splitPredPartModeTable may have a different code number according to the depth value of the coding unit. Accordingly, the decoder may derive a plurality of symbols split_coding_unit_flag, skip_flag, Predmode, and Partmode corresponding to the representative syntax element cu_split_pred_part_mode according to the depth value of each coding unit based on splitPredPartModeTable. In this case, the decoder may apply an adaptive sort table to the splitPredPartModeTable during entropy decoding.
  • each code number value may be mapped to a table index value of 0 to 4.
  • a code number value of 0 to 3 may exist. At this time, each code number value may be mapped to a table index value of 1 to 4.
  • the maximum number of code numbers may be equal to the maximum number of symbols corresponding to cu_split_pred_part_mode, and the number of symbols may correspond to the number of table indexes.
  • a table index value corresponding to a code number having a value of 4 or more may correspond to a meaningless value that is not actually used. This is because when the depth value of the coding unit is 3, only four code numbers having a value of 0 to 3 can be used.
  • Table 28 below shows an embodiment of code numbers and codeword assignments corresponding to cu_split_pred_part_mode when merge_flag, inter_part_horz_flag, and rem_inter_part_mode are encoded / decoded as separate syntax elements distinguished from cu_split_pred_part_mode.
  • Table 28 may correspond to an embodiment of a table applied when the size of a coding unit to be encoded / decoded is larger than the SCU.
  • the value x allocated to cu_split_pred_part_mode may have a range of 0 ⁇ x ⁇ S, and at this time, the maximum value of x may be limited to S.
  • each value allocated to cu_split_pred_part_mode may correspond to a table index, and the maximum value may be 4.
  • cu_split_pred_part_mode since the maximum value assigned to cu_split_pred_part_mode is determined, cu_split_pred_part_mode can be encoded as a truncated unary code with high coding efficiency. Therefore, the decoder may parse the bitstream corresponding to cu_split_pred_part_mode based on the truncated unary code.
  • the decoder may derive symbol information (eg, split_coding_unit_flag, skip_flag, PredMode, PartMode, etc.) corresponding to the codeword based on Table 28. For example, when the codeword is '001', the codeword may be mapped to code number 2, and the code number 2 may be mapped to cu_split_pred_part_mode value 2. Accordingly, split_coding_unit_flag, skip_flag, PredMode, and PartMode may be determined as values and / or modes corresponding to cu_split_pred_part_mode value 2, respectively.
  • symbol information eg, split_coding_unit_flag, skip_flag, PredMode, PartMode, etc.
  • the value of split_coding_unit_flag may be determined as 0, the value of skip_flag may be determined as 0, and PredMode may be determined as MODE_INTER.
  • PredMode may be determined as MODE_INTER.
  • PartMode may be determined based on two syntax elements inter_part_horz_flag and rem_inter_part_mode corresponding to coding unit syntax.
  • the code number and cu_split_pred_part_mode (and / or table index of cu_split_pred_part_mode) mapped to the code number may be updated based on the adaptive sort table.
  • Table 29 below shows an embodiment of code number and codeword allocation corresponding to cu_split_pred_part_mode when merge_flag, inter_part_horz_flag, and rem_inter_part_mode are encoded / decoded as separate syntax elements distinguished from cu_split_pred_part_mode.
  • Table 29 may correspond to an embodiment of a table applied when the size of a coding unit to be encoded / decoded is the same as that of the SCU and 4x4 inter prediction is allowed.
  • the value x allocated to cu_split_pred_part_mode may have a range of 0 ⁇ x ⁇ S, and at this time, the maximum value of x may be limited to S.
  • each value allocated to cu_split_pred_part_mode may correspond to a table index, and the maximum value may be 3.
  • cu_split_pred_part_mode since the maximum value assigned to cu_split_pred_part_mode is determined, cu_split_pred_part_mode can be encoded as a truncated unary code with high coding efficiency. Therefore, the decoder may parse the bitstream corresponding to cu_split_pred_part_mode based on the truncated unary code.
  • the decoder may derive symbol information (eg, split_coding_unit_flag, skip_flag, PredMode, PartMode, etc.) corresponding to the codeword based on Table 29. For example, when the codeword is '01', the codeword may be mapped to code number 2, and the code number 2 may be mapped to cu_split_pred_part_mode value 1. Accordingly, split_coding_unit_flag, skip_flag, PredMode, and PartMode may be determined as values and / or modes corresponding to cu_split_pred_part_mode value 1, respectively.
  • symbol information eg, split_coding_unit_flag, skip_flag, PredMode, PartMode, etc.
  • the value of split_coding_unit_flag may be determined as 0, and the value of skip_flag may be determined as 0.
  • PredMode may be determined as MODE_INTER
  • PartMode may be determined as PART_2Nx2N.
  • the symbol when the cu_split_pred_part_mode value is 2 or 3, the symbol may be used as an escape symbol.
  • the decoder may further parse one bit (first bit) corresponding to the symbol value. At this time, if the parsed value is 1, PredMode may be determined as MODE_INTRA and PartMode may be determined as PART_2N ⁇ 2N.
  • the decoder may further parse one bit (second bit) corresponding to the symbol value.
  • PredMode may be determined as MODE_INTRA and PartMode may be determined as PART_NxN.
  • PredMode may be determined as MODE_INTER and PartMode may be determined as PART_NxN.
  • the code number and cu_split_pred_part_mode (and / or table index of cu_split_pred_part_mode) mapped to the code number may be updated based on the adaptive sort table.
  • Table 30 shows an embodiment of a code number and codeword assignment corresponding to cu_split_pred_part_mode when merge_flag, inter_part_horz_flag, and rem_inter_part_mode are encoded / decoded as separate syntax elements distinguished from cu_split_pred_part_mode.
  • Table 30 may correspond to an embodiment of a table applied when the size of a coding unit to be encoded / decoded is equal to the SCU and 4x4 inter prediction is not allowed.
  • the value x allocated to cu_split_pred_part_mode may have a range of 0 ⁇ x ⁇ S, and at this time, the maximum value of x may be limited to S.
  • each value allocated to cu_split_pred_part_mode may correspond to a table index, and the maximum value may be 3.
  • cu_split_pred_part_mode since the maximum value assigned to cu_split_pred_part_mode is determined, cu_split_pred_part_mode can be encoded as a truncated unary code with high coding efficiency. Therefore, the decoder may parse the bitstream corresponding to cu_split_pred_part_mode based on the truncated unary code.
  • the decoder After reading the codeword corresponding to cu_split_pred_part_mode from the bitstream, the decoder can derive symbol information (eg, split_coding_unit_flag, skip_flag, PredMode, PartMode, etc.) corresponding to the codeword based on Table 30. For example, when the codeword is '001', the codeword may be mapped to code number 3, and the code number 3 may be mapped to cu_split_pred_part_mode value 2. Accordingly, split_coding_unit_flag, skip_flag, PredMode, and PartMode may be determined as values and / or modes corresponding to cu_split_pred_part_mode value 2, respectively.
  • symbol information eg, split_coding_unit_flag, skip_flag, PredMode, PartMode, etc.
  • split_coding_unit_flag may be determined as 0
  • skip_flag may be determined as 0
  • PredMode may be determined as MODE_INTER.
  • PartMode may be determined based on two syntax elements inter_part_horz_flag and rem_inter_part_mode corresponding to coding unit syntax.
  • the symbol when the cu_split_pred_part_mode value is 2 or 3, the symbol may be used as an escape symbol. For example, if the cu_split_pred_part_mode value is 3, the decoder may further parse one bit (first bit) corresponding to the symbol value. At this time, if the parsed value is 1, PredMode may be determined as MODE_INTRA and PartMode may be determined as PART_2Nx2N. In addition, if the parsed value is 0, PredMode may be determined as MODE_INTRA and PartMode may be determined as PART_NxN.
  • the code number and cu_split_pred_part_mode (and / or table index of cu_split_pred_part_mode) mapped to the code number may be updated based on the adaptive sort table.
  • Table 31 below shows another embodiment of a joint encoding / combination decoding method.
  • Table 31 may correspond to an embodiment of a table applied when the size of a coding unit to be encoded / decoded is larger than the SCU. Further, in the embodiment of Table 31, the encoder / decoder combines a plurality of syntax elements split_coding_unit_flag, skip_flag, PredMode and PartMode except merge_flag (merge flag) and inter_amp_mode (asymmetric motion splitting information) into one representative syntax element cu_split_pred_part_mode to entropy. Encoding / entropy decoding can be performed. That is, Table 31 may correspond to an embodiment of a table applied when merge_flag and inter_amp_mode are encoded / decoded separately from cu_split_pred_part_mode.
  • the encoder / decoder may perform entropy encoding / entropy decoding by combining only a plurality of syntax elements except for merge_flag and inter_amp_mode to reduce degradation of encoding / decoding performance due to merge_flag and inter_amp_mode.
  • the encoder / decoder may perform joint encoding / combination decoding on split_coding_unit_flag, skip_flag, Predmode, and Partmode as in the embodiment of Table 31.
  • the encoder / decoder may use an adaptive sort table in which the table index is re-assigned adaptively during the entropy encoding / decoding process.
  • merge_flag and inter_amp_mode are not combined with cu_split_pred_part_mode, and thus may correspond to separate syntax elements distinguished from cu_split_pred_part_mode. Accordingly, the encoder / decoder may independently perform entropy encoding / entropy decoding on cu_split_pred_part_mode, merge_flag, and inter_amp_mode. In this case, a fixed length code or a variable length code may be used in the encoding / decoding process of the inter_amp_mode.
  • Table 32 below shows another embodiment of a joint encoding / combination decoding method.
  • Table 32 may correspond to another embodiment of a table applied when merge_flag and inter_amp_mode are encoded / decoded as separate syntax elements distinguished from cu_split_pred_part_mode.
  • Table 32 may correspond to an embodiment of a table applied when the size of a coding unit to be encoded / decoded is the same as the SCU and 4x4 inter prediction is allowed.
  • the encoder / decoder may use an adaptive alignment table in which a table index is adaptively reassigned in the entropy encoding / entropy decoding process.
  • Table 33 below shows another embodiment of a joint encoding / combination decoding method.
  • Table 33 may correspond to another embodiment of a table applied when merge_flag and inter_amp_mode are encoded / decoded as separate syntax elements distinguished from cu_split_pred_part_mode.
  • Table 33 may correspond to an embodiment of a table applied when the size of a coding unit to be encoded / decoded is the same as that of the SCU and 4x4 inter prediction is not allowed.
  • the encoder / decoder may use an adaptive alignment table in which a table index is adaptively reassigned during the entropy encoding / entropy decoding process.
  • Table 34 shows an embodiment of semantics of syntax elements cu_split_pred_part_mode when merge_flag and inter_amp_mode are encoded / decoded as separate syntax elements distinguished from cu_split_pred_part_mode.
  • cu_split_pred_part_mode may indicate split_coding_unit_flag.
  • cu_split_pred_part_mode may indicate skip_flag [x0] [y0], PredMode and PartMode corresponding to 2Nx2N, 2NxN, Nx2N, and NxN of the coding unit.
  • X0 and y0 corresponding to the array index may indicate the position of the leftmost upper luma pixel in the coding unit with respect to the position of the leftmost upper luma pixel in the picture to which the coding unit belongs.
  • Table 35 shows an embodiment of prediction unit syntax when merge_flag is encoded / decoded as a separate syntax element distinguished from cu_split_pred_part_mode.
  • the decoder may parse the merge_flag without checking an entropy decoding method and a condition regarding a split mode of the prediction unit.
  • a fixed length code having a length of 1 bit may be used.
  • merge_flag When merge_flag is combined with cu_split_pred_part_mode to perform entropy encoding / entropy decoding, merge_flag may be parsed when the split mode of the prediction unit (and / or encoding unit) is not 2N ⁇ 2N. However, if merge_flag is encoded / decoded as a separate syntax element distinguished from cu_split_pred_part_mode, the decoder can parse merge_flag in the same manner as in other split modes, even when the split mode of the prediction unit (and / or coding unit) is 2Nx2N. have. At this time, since the decoder can parse merge_flag without checking a specific condition, the complexity in the decoder can be reduced.
  • Table 36 shows an embodiment of encoding unit syntax when inter_amp_mode is encoded / decoded as a separate syntax element distinguished from cu_split_pred_part_mode.
  • inter_amp_mode may be encoded and / or decoded as a separate syntax element distinguished from cu_split_pred_part_mode.
  • a fixed length code or a variable length code may be used in the entropy encoding / entropy decoding process of the inter_amp_mode.
  • mapping table 37 shows an embodiment of a mapping table applied to cu_split_pred_part_mode when merge_flag and inter_amp_mode are encoded / decoded as separate syntax elements distinguished from cu_split_pred_part_mode.
  • the mapping table may mean a table indicating a mapping relationship between a code number and a table index.
  • the mapping table corresponding to cu_split_pred_part_mode may be represented by splitPredPartModeTable.
  • the embodiment of Table 37 may correspond to an initialized table corresponding to the mapping table.
  • Coding Type represents a coding type and codeNum represents a code number. Specific embodiments of the method for determining a value assigned to the coding type will be described later in Table 38.
  • splitPredPartModeTable may have a different code number according to a value assigned to an encoding type. Accordingly, the decoder may derive a plurality of symbols split_coding_unit_flag, skip_flag, Predmode, and Partmode corresponding to the representative syntax element cu_split_pred_part_mode according to the value assigned to each encoding type based on splitPredPartModeTable. In this case, the decoder may apply an adaptive sort table to the splitPredPartModeTable during entropy decoding.
  • each code number value may be mapped to a table index value of 0 to 6.
  • a code number value of 0 to 5 may exist. At this time, each code number value may be mapped to a table index value of 1 to 6.
  • the maximum number of code numbers may be equal to the maximum number of symbols corresponding to cu_split_pred_part_mode, and the number of symbols may correspond to the number of table indexes.
  • a table index value corresponding to a code number having a value of 6 or more may correspond to a meaningless value that is not actually used. This is because when the value assigned to the encoding type is 3, only six code numbers having a value of 0 to 5 can be used.
  • Table 38 shows an embodiment of a coding type applied to a coding unit to be encoded / decoded when merge_flag and inter_amp_mode are encoded / decoded as separate syntax elements distinguished from cu_split_pred_part_mode.
  • the encoding type of Table 38 may be applied to, for example, an initial table corresponding to one coding unit (eg, an initial table according to the embodiment of Table 37, splitPredPartModeTable).
  • an initial table corresponding to one coding unit eg, an initial table according to the embodiment of Table 37, splitPredPartModeTable.
  • the coding unit to be encoded / decoded is called a current coding unit.
  • CU-depth represents the depth (and / or size) of the current coding unit
  • Coding Type represents the coding type.
  • 'Prediction mode-top CU' indicates information (eg, prediction mode information, coding unit split flag information) of a top coding unit (top CU) adjacent to a top of a current coding unit, and indicates a Prediction mode-left CU ' May represent information (eg, prediction mode information, coding unit split flag information) of a left coding unit (left CU) adjacent to a left side of the current coding unit.
  • SKIP may represent the skip mode (MODE_SKIP)
  • "INTER” may represent the inter mode (MODE_INTER)
  • "INTRA” may represent the intra mode (MODE_INTRA).
  • 'SKIP', 'INTER' and 'INTRA' may correspond to prediction mode information.
  • 'CU splitting' may also indicate that the current coding unit is split into lower units. That is, the “CU splitting” may correspond to coding unit split flag information split_coding_unit_flag.
  • CU size> 8x8 (min) may indicate that the size of the current coding unit is larger than the SCU
  • the coding type corresponding to the current coding unit includes size information of the current coding unit, information of the upper coding unit (for example, prediction mode information and coding unit split flag information, and the like) and information of the left coding unit. (For example, prediction mode information and coding unit split flag information, etc.).
  • information of the upper coding unit for example, prediction mode information and coding unit split flag information, and the like
  • information of the left coding unit for example, prediction mode information and coding unit split flag information, etc.
  • one of four values from 0 to 3 may be allocated to the encoding type according to the size information of the current coding unit, the information of the upper coding unit, and the information of the left coding unit.
  • Table 39 below shows an embodiment of code number and codeword allocation corresponding to cu_split_pred_part_mode when merge_flag and inter_amp_mode are encoded / decoded as separate syntax elements distinguished from cu_split_pred_part_mode.
  • Table 39 may correspond to an embodiment of a table applied when a size of a coding unit to be encoded / decoded is larger than an SCU.
  • the value x allocated to cu_split_pred_part_mode may have a range of 0 ⁇ x ⁇ S, and at this time, the maximum value of x may be limited to S.
  • each value allocated to cu_split_pred_part_mode may correspond to a table index, and the maximum value may be 6.
  • cu_split_pred_part_mode since the maximum value assigned to cu_split_pred_part_mode is determined, cu_split_pred_part_mode can be encoded as a truncated unary code with high coding efficiency. Therefore, the decoder may parse the bitstream corresponding to cu_split_pred_part_mode based on the truncated unary code.
  • the decoder may derive symbol information (eg, split_coding_unit_flag, skip_flag, PredMode, PartMode, etc.) corresponding to the codeword based on Table 39.
  • symbol information eg, split_coding_unit_flag, skip_flag, PredMode, PartMode, etc.
  • split_coding_unit_flag, skip_flag, PredMode, and PartMode may be determined as values and / or modes corresponding to cu_split_pred_part_mode value 2, respectively.
  • the value of split_coding_unit_flag may be determined as 0, and the value of skip_flag may be determined as 0.
  • PredMode may be determined as MODE_INTRA
  • PartMode may be determined as PART_2Nx2N.
  • split_coding_unit_flag, skip_flag, PredMode, and PartMode may be determined as values and / or modes corresponding to cu_split_pred_part_mode value 6, respectively.
  • the value of split_coding_unit_flag may be determined as 0, the value of skip_flag may be determined as 0, and PredMode may be determined as MODE_INTER
  • PartMode may be a syntax element inter_amp_mode corresponding to encoding unit syntax It can be determined based on.
  • the code number and cu_split_pred_part_mode (and / or table index of cu_split_pred_part_mode) mapped to the code number may be updated based on the adaptive sort table.
  • Table 40 shows an embodiment of code number and codeword allocation corresponding to cu_split_pred_part_mode when merge_flag and inter_amp_mode are encoded / decoded as separate syntax elements distinguished from cu_split_pred_part_mode.
  • Table 40 may correspond to an embodiment of a table applied when the size of a coding unit to be encoded / decoded is equal to the SCU and 4x4 inter prediction is allowed.
  • the value x allocated to cu_split_pred_part_mode may have a range of 0 ⁇ x ⁇ S, and at this time, the maximum value of x may be limited to S.
  • each value allocated to cu_split_pred_part_mode may correspond to a table index, and the maximum value may be 6.
  • cu_split_pred_part_mode since the maximum value assigned to cu_split_pred_part_mode is determined, cu_split_pred_part_mode can be encoded as a truncated unary code with high coding efficiency. Therefore, the decoder may parse the bitstream corresponding to cu_split_pred_part_mode based on the truncated unary code.
  • the decoder may derive symbol information (eg, split_coding_unit_flag, skip_flag, PredMode, PartMode, etc.) corresponding to the codeword based on Table 40.
  • symbol information eg, split_coding_unit_flag, skip_flag, PredMode, PartMode, etc.
  • split_coding_unit_flag, skip_flag, PredMode, and PartMode may be determined as values and / or modes corresponding to cu_split_pred_part_mode value 1, respectively.
  • the value of split_coding_unit_flag may be determined as 0, and the value of skip_flag may be determined as 0.
  • PredMode may be determined as MODE_INTER
  • PartMode may be determined as PART_2Nx2N.
  • split_coding_unit_flag, skip_flag, PredMode, and PartMode may be determined as values and / or modes corresponding to cu_split_pred_part_mode value 6, respectively.
  • the value of split_coding_unit_flag may be determined as 0, and the value of skip_flag may be determined as 0.
  • PredMode may be determined as MODE_INTER
  • PartMode may be determined as PART_NxN.
  • the code number and cu_split_pred_part_mode (and / or table index of cu_split_pred_part_mode) mapped to the code number may be updated based on the adaptive sort table.
  • Table 41 shows an embodiment of a code number and codeword assignment corresponding to cu_split_pred_part_mode when merge_flag and inter_amp_mode are encoded / decoded as separate syntax elements distinguished from cu_split_pred_part_mode.
  • Table 41 may correspond to an embodiment of a table applied when the size of a coding unit to be encoded / decoded is equal to the SCU and 4x4 inter prediction is not allowed.
  • the value x allocated to cu_split_pred_part_mode may have a range of 0 ⁇ x ⁇ S, and at this time, the maximum value of x may be limited to S.
  • each value allocated to cu_split_pred_part_mode may correspond to a table index, and the maximum value may be five.
  • cu_split_pred_part_mode since the maximum value assigned to cu_split_pred_part_mode is determined, cu_split_pred_part_mode can be encoded as a truncated unary code with high coding efficiency. Therefore, the decoder may parse the bitstream corresponding to cu_split_pred_part_mode based on the truncated unary code.
  • the decoder After reading the codeword corresponding to cu_split_pred_part_mode from the bitstream, the decoder can derive symbol information (eg, split_coding_unit_flag, skip_flag, PredMode, PartMode, etc.) corresponding to the codeword based on Table 41.
  • symbol information eg, split_coding_unit_flag, skip_flag, PredMode, PartMode, etc.
  • split_coding_unit_flag, skip_flag, PredMode, and PartMode may be determined as values and / or modes corresponding to cu_split_pred_part_mode value 2, respectively.
  • the value of split_coding_unit_flag may be determined as 0, and the value of skip_flag may be determined as 0.
  • PredMode may be determined as MODE_INTRA
  • PartMode may be determined as PART_2Nx2N.
  • split_coding_unit_flag, skip_flag, PredMode, and PartMode may be determined as values and / or modes corresponding to cu_split_pred_part_mode value 5, respectively.
  • the value of split_coding_unit_flag may be determined as 0, and the value of skip_flag may be determined as 0.
  • PredMode may be determined as MODE_INTRA
  • PartMode may be determined as PART_NxN.
  • the code number and cu_split_pred_part_mode (and / or table index of cu_split_pred_part_mode) mapped to the code number may be updated based on the adaptive sort table.
  • the table in the encoder / decoder, in the joint encoding / combination decoding, the table may be selectively applied according to the depth value (and / or the size of the coding unit) of the coding unit to be encoded / decoded. That is, the encoder / decoder may select one table from among a plurality of tables based on the depth value (and / or size of the coding unit) of the coding unit, and perform joint coding / combination decoding based on the selected table. Can be done.
  • the table may be a mapping table representing a mapping relationship between a representative syntax element (for example, cu_split_pred_part_mode) and a plurality of syntax elements coupled to the representative syntax element (hereinafter, referred to as a 'cu_split_pred_part_mode table') and / or code number
  • a mapping table eg, splitPredPartModeTable
  • a method of selecting a table according to the depth value of the coding unit may be represented as Table 42 in an embodiment.
  • table A when the depth value of the coding unit is 0, table A may be applied, and when the depth value of the coding unit is 1, table B may be applied.
  • table C when the depth value of the coding unit is 2, table C may be applied, and when the depth value of the coding unit is 3, table D may be applied.
  • Table A, Table B, Table C, and Table D will be described later.
  • one table corresponds to one depth value, but the encoder / decoder may apply one table to a plurality of depth values.
  • table A may be applied when the depth values of the coding unit are 0 and 1 in the joint encoding / combination decoding process
  • table B may be applied when the depth values of the coding unit are 2 and 3.
  • the table is selected based only on the depth value (and / or the size of the coding unit) of the coding unit to be encoded / decoded, but the present invention is not limited thereto.
  • the encoder / decoder compares the depth value (and / or size of the coding unit) of the coding unit and the depth value (and / or size of the coding unit) of the minimum coding unit (SCU), and according to the comparison result
  • a table used for joint encoding / combination decoding may be selected differently.
  • the table A may mean a table corresponding to the depth value 0 of the coding unit
  • the table B may mean a table corresponding to the depth value 1 of the coding unit
  • the table C may mean a table corresponding to the depth value 2 of the coding unit
  • the table D may mean a table corresponding to the depth value 3 of the coding unit.
  • Table 43 shows an embodiment of Table A applied to cu_split_pred_part_mode when inter_part_horz_flag and rem_inter_part_mode are encoded / decoded as separate syntax elements distinguished from cu_split_pred_part_mode.
  • Table 43 may correspond to an embodiment of Table A applied when the depth value of the coding unit to be encoded / decoded is 0. Also, in the embodiment of Table 43, the encoder / decoder performs entropy encoding / entropy decoding by combining a plurality of syntax elements split_coding_unit_flag, skip_flag, merge_flag, PredMode, and PartMode except one of inter_part_horz_flag and rem_inter_part_mode into one representative syntax element cu_split_pred_part_mode. have.
  • Table 43 may correspond to an embodiment of a table applied when inter_part_horz_flag and rem_inter_part_mode are encoded / decoded separately from cu_split_pred_part_mode.
  • inter_part_horz_flag and rem_inter_part_mode may also be regarded as information related to the asymmetric motion division mode and the symmetric motion division mode.
  • the encoder / decoder may perform entropy encoding / entropy decoding by combining only a plurality of syntax elements except inter_part_horz_flag and rem_inter_part_mode to reduce degradation of encoding / decoding performance due to inter_part_horz_flag and rem_inter_part_mode.
  • the encoder / decoder may perform joint encoding / combination decoding on split_coding_unit_flag, skip_flag, merge_flag, Predmode, and Partmode as in the embodiment of Table 43.
  • the encoder / decoder may use an adaptive sort table in which the table index is re-assigned adaptively during the entropy encoding / decoding process.
  • inter_part_horz_flag and rem_inter_part_mode are not combined with cu_split_pred_part_mode, they may correspond to separate syntax elements distinguished from cu_split_pred_part_mode. Accordingly, the encoder / decoder may independently perform entropy encoding / entropy decoding on cu_split_pred_part_mode, inter_part_horz_flag, and rem_inter_part_mode.
  • Table 44 shows an embodiment of Table B applied to cu_split_pred_part_mode when inter_part_horz_flag and rem_inter_part_mode are encoded / decoded as separate syntax elements distinguished from cu_split_pred_part_mode.
  • Table 44 may correspond to another embodiment of a table applied when inter_part_horz_flag and rem_inter_part_mode are encoded / decoded as separate syntax elements distinguished from cu_split_pred_part_mode.
  • Table 44 may correspond to an embodiment of Table B applied when the depth value of the coding unit to be encoded / decoded is 1.
  • the encoder / decoder may use an adaptive alignment table in which a table index is adaptively reassigned during the entropy encoding / entropy decoding process.
  • Table 45 shows an embodiment of table C applied to cu_split_pred_part_mode when inter_part_horz_flag and rem_inter_part_mode are encoded / decoded as separate syntax elements distinguished from cu_split_pred_part_mode.
  • Table 45 may correspond to another embodiment of a table applied when inter_part_horz_flag and rem_inter_part_mode are encoded / decoded as separate syntax elements distinguished from cu_split_pred_part_mode.
  • Table 45 may correspond to an embodiment of Table C applied when the depth value of the coding unit to be encoded / decoded is 2.
  • the encoder / decoder may use an adaptive alignment table in which a table index is adaptively reassigned during the entropy encoding / entropy decoding process.
  • Table 46 shows an embodiment of table D applied to cu_split_pred_part_mode when inter_part_horz_flag and rem_inter_part_mode are encoded / decoded as separate syntax elements distinguished from cu_split_pred_part_mode.
  • Table 46 may correspond to another embodiment of a table applied when inter_part_horz_flag and rem_inter_part_mode are encoded / decoded as separate syntax elements distinguished from cu_split_pred_part_mode.
  • Table 46 may correspond to an embodiment of Table D applied when a depth value of a coding unit to be encoded / decoded is 3 and 4x4 inter prediction is allowed.
  • the encoder / decoder may use an escape symbol corresponding to PART_2NxN of MODE_INTER, PART_Nx2N of MODE_INTER, PART_2Nx2N of MODE_INTRA, PART_NxN of MODE_INTRA, and escape symbol corresponding to PART_NxN of MODE_INTER.
  • the encoder / decoder may use an adaptive alignment table in which a table index is adaptively reassigned during the entropy encoding / entropy decoding process.
  • Table 47 below shows another embodiment of table D applied to cu_split_pred_part_mode when inter_part_horz_flag and rem_inter_part_mode are encoded / decoded as separate syntax elements distinguished from cu_split_pred_part_mode.
  • Table 47 may correspond to another embodiment of a table applied when inter_part_horz_flag and rem_inter_part_mode are encoded / decoded as separate syntax elements distinguished from cu_split_pred_part_mode.
  • Table 47 may correspond to an embodiment of Table D applied when a depth value of a coding unit to be encoded / decoded is 3 and 4x4 inter prediction is not allowed.
  • the encoder / decoder may use an escape symbol corresponding to PART_2NxN of MODE_INTER, PART_Nx2N of MODE_INTER, and an escape symbol corresponding to PART_2Nx2N of MODE_INTRA, and PART_NxN of MODE_INTRA.
  • the encoder / decoder may use an adaptive alignment table in which a table index is adaptively reassigned during entropy encoding / entropy decoding.
  • Table 48 below shows an example of semantics of syntax elements cu_split_pred_part_mode when inter_part_horz_flag and rem_inter_part_mode are encoded / decoded as separate syntax elements distinguished from cu_split_pred_part_mode.
  • inter_part_horz_flag and rem_inter_part_mode a case where the encoding / decoding as a separate syntax element in a distinct and cu_split_pred_part_mode, in a combined coding / combining decoding process based on the cu_split_pred_part_mode split_coding_unit_flag, skip_flag, merge_flag, Predmode and 2Nx2N and NxN
  • the joint encoding / combination decoding may be performed only on the syntax elements of the coding unit level of the part mode.
  • cu_split_pred_part_mode may indicate split_coding_unit_flag.
  • cu_split_pred_part_mode may indicate skip_flag [x0] [y0], PredMode and PartMode corresponding to 2Nx2N and NxN of the coding unit.
  • X0 and y0 corresponding to the array index may indicate the position of the leftmost upper luma pixel in the coding unit with respect to the position of the leftmost upper luma pixel in the picture to which the coding unit belongs.
  • the split modes of 2NxN, Nx2N, 2NxnU, 2NxnD, nLx2N, and nRx2N among the split modes in the inter mode may be determined based on cu_split_pred_part_mode, inter_part_horz_flag, and rem_inter_part_mode.
  • Table 49 shows an embodiment of encoding unit syntax when inter_part_horz_flag and rem_inter_part_mode are encoded / decoded as separate syntax elements distinguished from cu_split_pred_part_mode.
  • inter_part_horz_flag and rem_inter_part_mode may be encoded and / or decoded as separate syntax elements distinguished from cu_split_pred_part_mode.
  • a fixed length code having a length of 1 bit may be used in the entropy encoding / entropy decoding process of the inter_part_horz_flag.
  • a variable length code may be used in the entropy encoding / entropy decoding process of rem_inter_part_mode.
  • a truncated unary code may be used in the entropy encoding / entropy decoding process of rem_inter_part_mode.
  • the depth (cuDepth) value of the coding unit is a log value of the maximum coding unit (LCU) size (eg, Log2MaxCUSize) and a log value of the size of the coding unit to be encoded / decoded (eg For example, it may be derived based on Log2CUSize).
  • the log values may correspond to a value of performing a log 2 x operation on an actual value x.
  • mapping table may mean a table indicating a mapping relationship between a code number and a table index.
  • the mapping table corresponding to cu_split_pred_part_mode may be represented by splitPredPartModeTable.
  • Embodiments of Tables 50 and 51 may correspond to an initialized table corresponding to the mapping table, respectively.
  • cuDepth represents a depth value of a coding unit
  • codeNum represents a code number.
  • splitPredPartModeTable may have a different code number according to the depth value of the coding unit. Accordingly, the decoder may derive a plurality of symbols split_coding_unit_flag, skip_flag, merge_flag, Predmode, and Partmode corresponding to the representative syntax element cu_split_pred_part_mode according to the depth value of each coding unit based on splitPredPartModeTable. In this case, the decoder may apply an adaptive sort table to the splitPredPartModeTable during entropy decoding.
  • each code number value may be mapped to a table index value of 0 to 5.
  • a code number value of 0 to 4 may exist. In this case, each code number value may be mapped to a table index value of 1 to 5.
  • the maximum number of code numbers may be equal to the maximum number of symbols corresponding to cu_split_pred_part_mode, and the number of symbols may correspond to the number of table indexes.
  • a table index value corresponding to a code number having a value of 5 or more may correspond to a meaningless value that is not actually used. This is because when the depth value of the coding unit is 3, only five code numbers having a value of 0 to 4 can be used.
  • Table 52 below shows an example of code number and codeword allocation corresponding to cu_split_pred_part_mode when inter_part_horz_flag and rem_inter_part_mode are encoded / decoded as separate syntax elements distinguished from cu_split_pred_part_mode.
  • Table 52 may correspond to an embodiment of Table A applied when a depth value of a coding unit to be encoded / decoded is 0.
  • the value x allocated to cu_split_pred_part_mode may have a range of 0 ⁇ x ⁇ S, and at this time, the maximum value of x may be limited to S.
  • each value allocated to cu_split_pred_part_mode may correspond to a table index, and the maximum value may be five.
  • cu_split_pred_part_mode since the maximum value assigned to cu_split_pred_part_mode is determined, cu_split_pred_part_mode can be encoded as a truncated unary code with high coding efficiency. Therefore, the decoder may parse the bitstream corresponding to cu_split_pred_part_mode based on the truncated unary code.
  • the decoder may derive symbol information (eg, split_coding_unit_flag, skip_flag, merge_flag, PredMode, PartMode, etc.) corresponding to the codeword based on Table 52.
  • symbol information eg, split_coding_unit_flag, skip_flag, merge_flag, PredMode, PartMode, etc.
  • split_coding_unit_flag, skip_flag, merge_flag, PredMode, and PartMode may be determined as values and / or modes corresponding to cu_split_pred_part_mode value 2, respectively.
  • the value of split_coding_unit_flag may be determined to be zero.
  • the decoder may further parse two syntax elements inter_part_horz_flag and rem_inter_part_mode corresponding to coding unit syntax, and determine PredMode and PartMode based on the parsed inter_part_horz_flag and rem_inter_part_mode.
  • split_coding_unit_flag, skip_flag, merge_flag, PredMode, and PartMode may be determined as values and / or modes corresponding to cu_split_pred_part_mode value 4, respectively.
  • the value of split_coding_unit_flag may be determined as 0, the value of skip_flag may be determined as 0, and the value of merge_flag may be determined as 1.
  • PredMode may be determined as MODE_INTER
  • PartMode may be determined as PART_2Nx2N.
  • the code number and cu_split_pred_part_mode (and / or table index of cu_split_pred_part_mode) mapped to the code number may be updated based on the adaptive sort table.
  • Table 53 shows an example of code number and codeword allocation corresponding to cu_split_pred_part_mode when inter_part_horz_flag and rem_inter_part_mode are encoded / decoded as separate syntax elements distinguished from cu_split_pred_part_mode.
  • Table 53 may correspond to an embodiment of Table B applied when the depth value of the coding unit to be encoded / decoded is 1.
  • the value x allocated to cu_split_pred_part_mode may have a range of 0 ⁇ x ⁇ S, and at this time, the maximum value of x may be limited to S.
  • each value allocated to cu_split_pred_part_mode may correspond to a table index, and a maximum value may be five.
  • cu_split_pred_part_mode since the maximum value assigned to cu_split_pred_part_mode is determined, cu_split_pred_part_mode can be encoded as a truncated unary code with high coding efficiency. Therefore, the decoder may parse the bitstream corresponding to cu_split_pred_part_mode based on the truncated unary code.
  • the decoder After reading the codeword corresponding to cu_split_pred_part_mode from the bitstream, the decoder can derive symbol information (eg, split_coding_unit_flag, skip_flag, merge_flag, PredMode, PartMode, etc.) corresponding to the codeword based on Table 53.
  • symbol information eg, split_coding_unit_flag, skip_flag, merge_flag, PredMode, PartMode, etc.
  • split_coding_unit_flag, skip_flag, merge_flag, PredMode, and PartMode may be determined as values and / or modes corresponding to cu_split_pred_part_mode value 2, respectively.
  • the value of split_coding_unit_flag may be determined to be zero.
  • the decoder may further parse two syntax elements inter_part_horz_flag and rem_inter_part_mode corresponding to coding unit syntax, and determine PredMode and PartMode based on the parsed inter_part_horz_flag and rem_inter_part_mode.
  • split_coding_unit_flag, skip_flag, merge_flag, PredMode, and PartMode may be determined as values and / or modes corresponding to cu_split_pred_part_mode value 4, respectively.
  • the value of split_coding_unit_flag may be determined as 0, the value of skip_flag may be determined as 0, and the value of merge_flag may be determined as 0.
  • PredMode may be determined as MODE_INTER
  • PartMode may be determined as PART_2Nx2N.
  • the code number and cu_split_pred_part_mode (and / or table index of cu_split_pred_part_mode) mapped to the code number may be updated based on the adaptive sort table.
  • Table 54 shows an embodiment of code numbers and codeword assignments corresponding to cu_split_pred_part_mode when inter_part_horz_flag and rem_inter_part_mode are encoded / decoded as separate syntax elements distinguished from cu_split_pred_part_mode.
  • Table 54 may correspond to an embodiment of Table C applied when the depth value of the coding unit to be encoded / decoded is 2.
  • the value x allocated to cu_split_pred_part_mode may have a range of 0 ⁇ x ⁇ S, and at this time, the maximum value of x may be limited to S.
  • each value allocated to cu_split_pred_part_mode may correspond to a table index, and a maximum value may be five.
  • cu_split_pred_part_mode since the maximum value assigned to cu_split_pred_part_mode is determined, cu_split_pred_part_mode can be encoded as a truncated unary code with high coding efficiency. Therefore, the decoder may parse the bitstream corresponding to cu_split_pred_part_mode based on the truncated unary code.
  • the decoder After reading the codeword corresponding to cu_split_pred_part_mode from the bitstream, the decoder can derive symbol information (eg, split_coding_unit_flag, skip_flag, merge_flag, PredMode, PartMode, etc.) corresponding to the codeword based on Table 54.
  • symbol information eg, split_coding_unit_flag, skip_flag, merge_flag, PredMode, PartMode, etc.
  • split_coding_unit_flag, skip_flag, merge_flag, PredMode, and PartMode may be determined as values and / or modes corresponding to cu_split_pred_part_mode value 2, respectively.
  • the value of split_coding_unit_flag may be determined to be zero.
  • the decoder may further parse two syntax elements inter_part_horz_flag and rem_inter_part_mode corresponding to coding unit syntax, and determine PredMode and PartMode based on the parsed inter_part_horz_flag and rem_inter_part_mode.
  • split_coding_unit_flag, skip_flag, merge_flag, PredMode, and PartMode may be determined as values and / or modes corresponding to cu_split_pred_part_mode value 0, respectively.
  • the value of split_coding_unit_flag may be determined as 0 and the value of skip_flag may be determined as 1.
  • PredMode may be determined as MODE_SKIP
  • PartMode may be determined as PART_2Nx2N.
  • the code number and cu_split_pred_part_mode (and / or table index of cu_split_pred_part_mode) mapped to the code number may be updated based on the adaptive sort table.
  • Table 55 shows an embodiment of a code number and codeword allocation corresponding to cu_split_pred_part_mode when inter_part_horz_flag and rem_inter_part_mode are encoded / decoded as separate syntax elements distinguished from cu_split_pred_part_mode.
  • Table 55 may correspond to an embodiment of Table D applied when a depth value of a coding unit to be encoded / decoded is 3 and 4x4 inter prediction is allowed.
  • the value x allocated to cu_split_pred_part_mode may have a range of 0 ⁇ x ⁇ S, and at this time, the maximum value of x may be limited to S.
  • each value allocated to cu_split_pred_part_mode may correspond to a table index, and a maximum value may be four.
  • cu_split_pred_part_mode since the maximum value assigned to cu_split_pred_part_mode is determined, cu_split_pred_part_mode can be encoded as a truncated unary code with high coding efficiency. Therefore, the decoder may parse the bitstream corresponding to cu_split_pred_part_mode based on the truncated unary code.
  • the decoder After reading the codeword corresponding to cu_split_pred_part_mode from the bitstream, the decoder can derive symbol information (eg, split_coding_unit_flag, skip_flag, merge_flag, PredMode, PartMode, etc.) corresponding to the codeword based on Table 55.
  • symbol information eg, split_coding_unit_flag, skip_flag, merge_flag, PredMode, PartMode, etc.
  • split_coding_unit_flag, skip_flag, merge_flag, PredMode, and PartMode may be determined as values and / or modes corresponding to cu_split_pred_part_mode value 1, respectively.
  • the value of split_coding_unit_flag may be determined to be zero.
  • the decoder may further parse two syntax elements inter_part_horz_flag and rem_inter_part_mode corresponding to coding unit syntax, and determine PredMode and PartMode based on the parsed inter_part_horz_flag and rem_inter_part_mode.
  • the symbol when the cu_split_pred_part_mode value is 3, the symbol may be used as an escape symbol. For example, if the cu_split_pred_part_mode value is 3, the decoder may further parse one bit (first bit) corresponding to the symbol value. At this time, if the parsed value is 1, PredMode may be determined as MODE_INTRA and PartMode may be determined as PART_2Nx2N.
  • the decoder may further parse one bit (second bit) corresponding to the symbol value. At this time, if the parsed value is 1, PredMode may be determined as MODE_INTRA and PartMode may be determined as PART_NxN. In addition, if the parsed value is 0, PredMode may be determined as MODE_INTER and PartMode may be determined as PART_NxN.
  • the code number and cu_split_pred_part_mode (and / or table index of cu_split_pred_part_mode) mapped to the code number may be updated based on the adaptive sort table.
  • Table 56 shows an example of code number and codeword allocation corresponding to cu_split_pred_part_mode when inter_part_horz_flag and rem_inter_part_mode are encoded / decoded as separate syntax elements distinguished from cu_split_pred_part_mode.
  • Table 56 may correspond to another embodiment of the table D applied when the depth value of the coding unit to be encoded / decoded is 3 and 4x4 inter prediction is not allowed.
  • the value x allocated to cu_split_pred_part_mode may have a range of 0 ⁇ x ⁇ S, and at this time, the maximum value of x may be limited to S.
  • each value allocated to cu_split_pred_part_mode may correspond to a table index, and a maximum value may be four.
  • cu_split_pred_part_mode since the maximum value assigned to cu_split_pred_part_mode is determined, cu_split_pred_part_mode can be encoded as a truncated unary code with high coding efficiency. Therefore, the decoder may parse the bitstream corresponding to cu_split_pred_part_mode based on the truncated unary code.
  • the decoder After reading the codeword corresponding to cu_split_pred_part_mode from the bitstream, the decoder can derive symbol information (eg, split_coding_unit_flag, skip_flag, merge_flag, PredMode, PartMode, etc.) corresponding to the codeword based on Table 56.
  • symbol information eg, split_coding_unit_flag, skip_flag, merge_flag, PredMode, PartMode, etc.
  • split_coding_unit_flag, skip_flag, merge_flag, PredMode, and PartMode may be determined as values and / or modes corresponding to cu_split_pred_part_mode value 2, respectively.
  • the value of split_coding_unit_flag may be determined as 0, the value of skip_flag may be determined as 0, and the value of merge_flag may be determined as 1.
  • PredMode may be determined as MODE_INTER
  • PartMode may be determined as PART_2Nx2N.
  • the symbol when the cu_split_pred_part_mode value is 3, the symbol may be used as an escape symbol. For example, if the cu_split_pred_part_mode value is 3, the decoder may further parse one bit (first bit) corresponding to the symbol value. At this time, if the parsed value is 1, PredMode may be determined as MODE_INTRA and PartMode may be determined as PART_2Nx2N. In addition, if the parsed value is 0, PredMode may be determined as MODE_INTRA and PartMode may be determined as PART_NxN.
  • the code number and cu_split_pred_part_mode (and / or table index of cu_split_pred_part_mode) mapped to the code number may be updated based on the adaptive sort table.
  • the encoder / decoder is jointly encoded according to the depth value (and / or size of the coding unit) of the coding unit to be encoded / decoded and the depth value (and / or size of the coding unit) of the minimum coding unit (SCU).
  • the table may mean 'cu_split_pred_part_mode table' and / or 'splitPredPartModeTable'.
  • a table applied at the time of joint encoding / combination decoding may include a difference value between a depth value of a coding unit to be encoded / decoded and a depth value of a minimum coding unit (SCU) (hereinafter, the embodiments of Tables 57 to 61).
  • the difference value That is, the encoder / decoder may select one table from among a plurality of tables based on the difference value, and perform joint encoding / combination decoding based on the selected table.
  • the method of selecting a table based on the difference value may be represented as shown in Table 57 in one embodiment.
  • the size of the coding unit to be encoded / decoded may be the same as the size of the minimum coding unit (SCU).
  • the table E when the difference value is 0, the table E may be selected, and when the difference value is 1, the table F may be selected. In addition, when the difference value is 2, the table G may be selected, and when the difference value is 3, the table H may be selected.
  • Table E when the difference value is 0, the table E may be selected, and when the difference value is 1, the table F may be selected.
  • the table G when the difference value is 2, the table G may be selected, and when the difference value is 3, the table H may be selected.
  • the table E may mean a table corresponding to the difference value 0
  • the table F may mean a table corresponding to the difference value 1.
  • the table G may mean a table corresponding to the difference value 2
  • the table H may mean a table corresponding to the difference value 3.
  • Table 58 shows an embodiment of Table E applied to cu_split_pred_part_mode when inter_part_horz_flag and rem_inter_part_mode are encoded / decoded as separate syntax elements distinguished from cu_split_pred_part_mode.
  • Table 58 may correspond to an embodiment of Table E applied when the difference value is 0 and 4x4 inter prediction is not allowed.
  • Table 58 since the details of the table and the joint encoding / combining decoding method for split_coding_unit_flag, skip_flag, merge_flag, PredMode, and PartMode are similar to those in Tables 43 to 47, detailed description thereof will be omitted.
  • Table 59 shows an embodiment of a table F applied to cu_split_pred_part_mode when inter_part_horz_flag and rem_inter_part_mode are encoded / decoded as separate syntax elements distinguished from cu_split_pred_part_mode.
  • Table 59 may correspond to an embodiment of the table F applied when the difference value is 1.
  • Table 59 the details of the table and the joint encoding / combination decoding method for split_coding_unit_flag, skip_flag, merge_flag, PredMode, and PartMode are similar to those in Tables 43 to 47, and thus a detailed description thereof will be omitted.
  • Table 60 shows an embodiment of Table G applied to cu_split_pred_part_mode when inter_part_horz_flag and rem_inter_part_mode are encoded / decoded as separate syntax elements distinguished from cu_split_pred_part_mode.
  • Table 60 may correspond to an embodiment of table G applied when the difference value is two.
  • Table 60 the details of the table and the joint encoding / combining decoding method for split_coding_unit_flag, skip_flag, merge_flag, PredMode, and PartMode are similar to those in Tables 43 to 47, and thus a detailed description thereof will be omitted.
  • Table 61 shows an embodiment of the table H applied to cu_split_pred_part_mode when inter_part_horz_flag and rem_inter_part_mode are encoded / decoded as separate syntax elements distinguished from cu_split_pred_part_mode.
  • Table 61 may correspond to an embodiment of table H applied when the difference value is 3.
  • Table 61 the details of the table and the joint encoding / combining decoding method for split_coding_unit_flag, skip_flag, merge_flag, PredMode, and PartMode are similar to those in Tables 43 to 47, and thus a detailed description thereof will be omitted.
  • the encoder / decoder compares the size (and / or depth value of the coding unit) of the coding unit to be encoded / decoded with the size (and / or depth value of the coding unit) of the minimum coding unit (SCU).
  • a table used for joint encoding / combination decoding may be differently selected. That is, the encoder / decoder compares the size of the coding unit (and / or the depth value of the coding unit) with the size of the minimum coding unit (SCU) (and / or the depth value of the coding unit), thereby selecting one of a plurality of tables.
  • a table may be selected, and joint encoding / combination decoding may be performed based on the selected table.
  • the table may mean 'cu_split_pred_part_mode table' and / or 'splitPredPartModeTable'.
  • a method of selecting a table used for joint encoding / combination decoding by comparing the size of a coding unit to be encoded / decoded with the size of a minimum coding unit (SCU) may be represented as shown in Table 62 below.
  • the table I when the size of the coding unit CU to be encoded / decoded is larger than the size of the minimum coding unit SCU, the table I may be selected and the coding unit to be encoded / decoded ( When the size of the CU) is the same as the size of the minimum coding unit SCU, the table J may be selected.
  • Table 63 below shows an embodiment of Table I applied to cu_split_pred_part_mode when inter_part_horz_flag and rem_inter_part_mode are encoded / decoded as separate syntax elements distinguished from cu_split_pred_part_mode.
  • Table 63 may correspond to an embodiment of Table I applied when the size of the coding unit CU that is an encoding / decoding target is larger than the size of the minimum coding unit SCU.
  • Table 63 the details of the table and the joint encoding / combination decoding method for split_coding_unit_flag, skip_flag, merge_flag, PredMode, and PartMode are similar to those in Tables 43 to 47, and thus a detailed description thereof will be omitted.
  • Table 64 shows an embodiment of Table J applied to cu_split_pred_part_mode when inter_part_horz_flag and rem_inter_part_mode are encoded / decoded as separate syntax elements distinguished from cu_split_pred_part_mode.
  • Table 64 may correspond to an embodiment of Table J applied when the size of the encoding unit CU and the minimum coding unit SCU that are encoding / decoding targets are the same and 4x4 inter prediction is not allowed.
  • Table 64 the details of the table and the joint encoding / combination decoding method for split_coding_unit_flag, skip_flag, merge_flag, PredMode, and PartMode are similar to those in Tables 43 to 47, and thus a detailed description thereof will be omitted.
  • the encoder / decoder may selectively apply a table according to a predetermined criterion in performing joint encoding / combination decoding.
  • the table may mean 'cu_split_pred_part_mode table' and / or 'splitPredPartModeTable'.
  • each table used for joint encoding / combination decoding may have characteristics of the table itself.
  • a small table index may be located at the top of a table compared to a large table index.
  • a table index of a small value may be mapped to a code number and a short codeword of a small value.
  • the up and down order of symbols included in the initial table may be determined according to the occurrence probability of the symbols.
  • the up and down order of the symbols may correspond to the characteristics of the table itself, and the up and down order of the symbols may correspond to the initial order of the symbols in the table.
  • a symbol located at the top of the initial table corresponds to a relatively short codeword
  • a symbol having a high probability of occurrence may be located at the top of the initial table.
  • a symbol located at the bottom of the initial table corresponds to a relatively long codeword
  • a symbol having a low probability of occurrence may be located at the bottom of the initial table.
  • the symbol in the initial table is relatively located at the top may mean that the symbol corresponds to a relatively small table index, a small code number, and / or a short codeword.
  • a symbol in the initial table is located at a relatively lower end may mean that the symbol corresponds to a relatively large table index, a large code number, and / or a long codeword.
  • Table 65 below schematically shows an embodiment of an initial order of symbols included in the table.
  • Table 65 may correspond to an embodiment where inter_part_horz_flag and rem_inter_part_mode are encoded / decoded as separate syntax elements distinguished from cu_split_pred_part_mode.
  • the encoder / decoder determines the initial order of each symbol corresponding to cu_split_pred_part_mode, the symmetric motion partitioning mode such as PART_2NxN, PART_Nx2N and / or PART_2NxnU, PART_2NxnD, PART_nLx2N, PART_nRx2N, PART_nRx2N, etc.
  • the mode may be positioned above the square motion splitting modes such as PART_2Nx2N and PART_NxN. This is because the probability of occurrence of the asymmetric motion splitting mode and the symmetric motion splitting mode may be higher than that of the square motion splitting mode.
  • the encoder / decoder may place a symbol having a high probability of occurrence at the top of the table, thereby allowing a short codeword to be assigned to a symbol having a high probability of occurrence and improving encoding / decoding efficiency.
  • the cu_split_pred_part_mode table according to the embodiment of Table 65 may be previously stored in the encoder and the decoder in the same manner.
  • the encoder / decoder may perform joint encoding / combination decoding based on the cu_split_pred_part_mode table.
  • Table 66 below schematically shows another embodiment of an initial order of symbols included in the table.
  • Table 66 may correspond to an embodiment where inter_part_horz_flag and rem_inter_part_mode are encoded / decoded as separate syntax elements distinguished from cu_split_pred_part_mode, and 4x4 inter prediction is allowed.
  • the encoder / decoder determines the initial order of each symbol corresponding to cu_split_pred_part_mode, the symmetric motion partitioning mode such as PART_2NxN, PART_Nx2N, and / or PART_2NxnU, PART_2NxnD
  • the asymmetric motion splitting modes such as PART_nLx2N and PART_nRx2N may be positioned above the square motion splitting modes such as PART_2Nx2N and PART_NxN. This is because the probability of occurrence of the asymmetric motion splitting mode and the symmetric motion splitting mode may be higher than that of the square motion splitting mode.
  • the encoder / decoder can place a symbol having a high probability of occurrence at the top of the table, thereby allowing a short codeword to be assigned to a symbol having a high probability of occurrence and improving coding efficiency.
  • the cu_split_pred_part_mode table according to the embodiment of Table 66 may be previously stored in the encoder and the decoder in the same manner.
  • the encoder / decoder may perform joint encoding / combination decoding based on the cu_split_pred_part_mode table.
  • Table 67 below schematically shows another embodiment of an initial order of symbols included in the table.
  • Table 67 may correspond to an embodiment where inter_part_horz_flag and rem_inter_part_mode are encoded / decoded as separate syntax elements distinguished from cu_split_pred_part_mode.
  • the inter mode (MODE_INTER) and / or PART_2NxnU, PART_2NxnD, PART_nLn2x, PART_2NxN, PART_Nx2N, etc.
  • the inter mode MODE_INTER corresponding to the asymmetric motion splitting mode such as the above may be positioned at the upper end of the table than the intra mode MODE_INTRA. This is because the occurrence probability of the inter mode corresponding to the asymmetric motion splitting mode and the inter mode corresponding to the symmetric motion splitting mode may be higher than that of the intra mode.
  • the encoder / decoder can place a symbol having a high probability of occurrence at the top of the table, thereby allowing a short codeword to be assigned to a symbol having a high probability of occurrence and improving coding efficiency.
  • the cu_split_pred_part_mode table according to the embodiment of Table 67 may be previously stored in the encoder and the decoder in the same manner.
  • the encoder / decoder may perform joint encoding / combination decoding based on the cu_split_pred_part_mode table.
  • Table 68 below schematically shows another embodiment of an initial order of symbols included in the table.
  • Table 68 may correspond to an embodiment where inter_part_horz_flag and rem_inter_part_mode are encoded / decoded as separate syntax elements distinguished from cu_split_pred_part_mode, and 4x4 inter prediction is not allowed.
  • the inter mode (MODE_INTER) and / or PART_2NxnU, PART_2NxnD, PART_nLn2x, PART_2NxN, PART_Nx2N, etc.
  • the inter mode MODE_INTER corresponding to the asymmetric motion splitting mode such as the above may be positioned at the upper end of the table than the intra mode MODE_INTRA. This is because the occurrence probability of the inter mode corresponding to the asymmetric motion splitting mode and the inter mode corresponding to the symmetric motion splitting mode may be higher than that of the intra mode.
  • the encoder / decoder can place a symbol having a high probability of occurrence at the top of the table, thereby allowing a short codeword to be assigned to a symbol having a high probability of occurrence and improving coding efficiency.
  • the cu_split_pred_part_mode table according to the embodiment of Table 68 may be previously stored in the encoder and the decoder in the same manner.
  • the encoder / decoder may perform joint encoding / combination decoding based on the cu_split_pred_part_mode table.
  • Table 69 schematically shows another embodiment of the initial order of the symbols included in the table.
  • Table 69 may correspond to an embodiment where inter_part_horz_flag and rem_inter_part_mode are encoded / decoded as separate syntax elements distinguished from cu_split_pred_part_mode.
  • coding unit split flag information split_coding_unit_flag
  • MODE_SKIP skip mode information
  • an occurrence probability of coding unit split flag information and skip mode information to which a value of 1 is assigned may be higher than that of symmetric motion split mode information and / or asymmetric motion split mode information.
  • the encoder / decoder can place a symbol having a high probability of occurrence at the top of the table, thereby allowing a short codeword to be assigned to a symbol having a high probability of occurrence and improving coding efficiency.
  • the encoding unit split flag information to which a value of 1 is allocated may indicate that the coding unit is divided into a plurality of sub-units.
  • the cu_split_pred_part_mode table according to the embodiment of Table 69 may be previously stored in the encoder and the decoder in the same manner.
  • the encoder / decoder may perform joint encoding / combination decoding based on the cu_split_pred_part_mode table.
  • Table 70 schematically shows another embodiment of the initial order of the symbols included in the table.
  • Table 70 may correspond to an embodiment where inter_part_horz_flag and rem_inter_part_mode are encoded / decoded as separate syntax elements distinguished from cu_split_pred_part_mode.
  • coding unit split flag information split_coding_unit_flag
  • MODE_SKIP skip mode information
  • an occurrence probability of coding unit split flag information and skip mode information to which a value of 1 is assigned may be higher than that of symmetric motion split mode information and / or asymmetric motion split mode information.
  • the encoder / decoder can place a symbol having a high probability of occurrence at the top of the table, thereby allowing a short codeword to be assigned to a symbol having a high probability of occurrence and improving coding efficiency.
  • the cu_split_pred_part_mode table according to the embodiment of Table 70 may be previously stored in the encoder and the decoder in the same manner.
  • the encoder / decoder may perform joint encoding / combination decoding based on the cu_split_pred_part_mode table.
  • Table 71 schematically shows another embodiment of the initial order of the symbols included in the table.
  • Table 71 may correspond to an embodiment where inter_part_horz_flag and rem_inter_part_mode are encoded / decoded as separate syntax elements distinguished from cu_split_pred_part_mode, and 4x4 inter prediction is allowed.
  • the intra mode information MODE_INTRA may be located at the top of the table than the inter mode information corresponding to INTER_2Nx2N. This is because the occurrence probability of the intra mode information may be higher than the occurrence probability of the inter mode information corresponding to INTER_2Nx2N.
  • the inter mode information corresponding to INTER_2Nx2N may mean inter mode information when PredMode is MODE_INTER, PartMode is 2Nx2N, and a value assigned to merge_flag is 0.
  • the encoder / decoder can place a symbol having a high probability of occurrence at the top of the table, thereby allowing a short codeword to be assigned to a symbol having a high probability of occurrence and improving coding efficiency.
  • the cu_split_pred_part_mode table according to the embodiment of Table 71 may be previously stored in the encoder and the decoder in the same manner.
  • the encoder / decoder may perform joint encoding / combination decoding based on the cu_split_pred_part_mode table.
  • Table 72 below schematically shows another embodiment of an initial order of symbols included in the table.
  • Table 72 may correspond to an embodiment where inter_part_horz_flag and rem_inter_part_mode are encoded / decoded as separate syntax elements distinguished from cu_split_pred_part_mode, and 4x4 inter prediction is not allowed.
  • the intra mode information MODE_INTRA may be located at the top of the table than the inter mode information corresponding to INTER_2Nx2N. This is because the occurrence probability of the intra mode information may be higher than the occurrence probability of the inter mode information corresponding to INTER_2Nx2N.
  • the encoder / decoder can place a symbol having a high probability of occurrence at the top of the table, thereby allowing a short codeword to be assigned to a symbol having a high probability of occurrence and improving coding efficiency.
  • the cu_split_pred_part_mode table according to the embodiment of Table 72 may be previously stored in the encoder and the decoder in the same manner.
  • the encoder / decoder may perform joint encoding / combination decoding based on the cu_split_pred_part_mode table.
  • Table 73 schematically shows another embodiment of the initial order of the symbols included in the table.
  • the embodiment of Table 73 shows an initial order of symbols when the size of the coding unit CU to be encoded / decoded is larger than the size of the minimum coding unit SCU.
  • Coding unit split flag information split_coding_unit_flag
  • MODE_SKIP skip mode information
  • symmetrical motion splitting mode information such as PART_2NxN, PART_Nx2N
  • asymmetric motion splitting mode information such as PART_2NxnU, PART_2NxnD, PART_nLx2N, and PART_nRx2N. It can be located at.
  • the occurrence probability of coding unit split flag information and skip mode information to which a value of 1 is assigned is symmetrical motion split mode information. And / or higher than an occurrence probability of the asymmetric motion splitting mode information.
  • the encoder / decoder can place a symbol having a high probability of occurrence at the top of the table, thereby allowing a short codeword to be assigned to a symbol having a high probability of occurrence and improving coding efficiency.
  • the cu_split_pred_part_mode table according to the embodiment of Table 73 may be previously stored in the encoder and the decoder in the same manner.
  • the encoder / decoder may perform joint encoding / combination decoding based on the cu_split_pred_part_mode table.
  • Table 74 below schematically shows another embodiment of an initial order of symbols included in the table.
  • the embodiment of Table 74 shows the initial order of symbols when the size of the coding unit CU to be encoded / decoded is the same as the size of the minimum coding unit SCU and 4x4 inter prediction is allowed.
  • the encoder / decoder determines the initial order of each symbol corresponding to cu_split_pred_part_mode.
  • the intra mode MODE_INTRA is higher than the inter mode corresponding to the symmetric motion splitting modes such as PART_2NxN and PART_Nx2N, and the asymmetric motion splitting modes such as PART_2NxnU, PART_2NxnD, PART_nLx2N, and PART_nRx2N. It can be located at.
  • the encoder / decoder may make the PART_Nx2N above the PART_2NxN in the table according to the occurrence probability.
  • the cu_split_pred_part_mode table according to the embodiment of Table 74 may be previously stored in the encoder and the decoder in the same manner.
  • the encoder / decoder may perform joint encoding / combination decoding based on the cu_split_pred_part_mode table.
  • Table 75 below schematically shows another embodiment of the initial order of the symbols included in the table.
  • the embodiment of Table 75 shows the initial order of symbols when the size of the coding unit CU to be encoded / decoded is the same as the size of the minimum coding unit SCU and 4x4 inter prediction is not allowed.
  • the encoder / decoder initializes each symbol corresponding to cu_split_pred_part_mode.
  • the inter mode MODE_INTER corresponding to the symmetric motion splitting modes such as PART_2NxN, PART_Nx2N, and the asymmetric motion splitting modes such as PART_2NxnU, PART_2NxnD, PART_nLx2N, PART_nRx2N, etc. It can be located at the top.
  • the encoder / decoder may make the PART_Nx2N above the PART_2NxN in the table according to the occurrence probability.
  • the cu_split_pred_part_mode table according to the embodiment of Table 75 may be previously stored in the encoder and the decoder in the same manner.
  • the encoder / decoder may perform joint encoding / combination decoding based on the cu_split_pred_part_mode table.
  • the methods are described based on a flowchart as a series of steps or blocks, but the present invention is not limited to the order of steps, and any steps may occur in a different order than or simultaneously with other steps as described above. Can be. Also, one of ordinary skill in the art would appreciate that the steps shown in the flowcharts are not exclusive, that other steps may be included, or that one or more steps in the flowcharts may be deleted without affecting the scope of the present invention. I can understand.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Abstract

L'invention concerne un procédé de décodage d'image qui comprend les étapes consistant à recevoir un train de bits, à en déduire une information de décodage par décodage entropique du train de bits et à générer un bloc de restauration correspondant à un bloc cible de décodage sur la base de l'information de décodage. La présente invention permet d'améliorer l'efficacité du codage/décodage d'image tout en réduisant la complexité.
PCT/KR2012/007419 2011-09-16 2012-09-17 Procédé de codage/décodage d'image et dispositif correspondant WO2013039363A2 (fr)

Applications Claiming Priority (10)

Application Number Priority Date Filing Date Title
KR20110093563 2011-09-16
KR10-2011-0093563 2011-09-16
KR20110115047 2011-11-07
KR10-2011-0115047 2011-11-07
KR10-2011-0117198 2011-11-10
KR20110117198 2011-11-10
KR10-2011-0121124 2011-11-18
KR20110121124 2011-11-18
KR10-2012-0102763 2012-09-17
KR1020120102763A KR101959482B1 (ko) 2011-09-16 2012-09-17 영상 부호화/복호화 방법 및 그 장치

Publications (2)

Publication Number Publication Date
WO2013039363A2 true WO2013039363A2 (fr) 2013-03-21
WO2013039363A3 WO2013039363A3 (fr) 2013-05-10

Family

ID=47883898

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2012/007419 WO2013039363A2 (fr) 2011-09-16 2012-09-17 Procédé de codage/décodage d'image et dispositif correspondant

Country Status (1)

Country Link
WO (1) WO2013039363A2 (fr)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111416975A (zh) * 2019-01-08 2020-07-14 华为技术有限公司 预测模式确定方法和装置
KR20210020103A (ko) * 2018-09-30 2021-02-23 광동 오포 모바일 텔레커뮤니케이션즈 코포레이션 리미티드 데이터 처리 방법 및 장치, 전자 기기 및 저장 매체
US20210076036A1 (en) * 2018-05-16 2021-03-11 Huawei Technologies Co., Ltd. Encoding method and apparatus, and decoding method and apparatus
CN112672132A (zh) * 2018-09-30 2021-04-16 Oppo广东移动通信有限公司 数据处理方法及装置、电子设备及存储介质

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6563953B2 (en) * 1998-11-30 2003-05-13 Microsoft Corporation Predictive image compression using a single variable length code for both the luminance and chrominance blocks for each macroblock
CN101682769B (zh) * 2007-04-12 2016-11-09 汤姆森特许公司 用于视频编码和解码的跳过-直接模式的取决于环境的合并的方法和装置

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210076036A1 (en) * 2018-05-16 2021-03-11 Huawei Technologies Co., Ltd. Encoding method and apparatus, and decoding method and apparatus
US11936861B2 (en) * 2018-05-16 2024-03-19 Huawei Technologies Co., Ltd. Encoding method and apparatus, and decoding method and apparatus
KR20210020103A (ko) * 2018-09-30 2021-02-23 광동 오포 모바일 텔레커뮤니케이션즈 코포레이션 리미티드 데이터 처리 방법 및 장치, 전자 기기 및 저장 매체
CN112672132A (zh) * 2018-09-30 2021-04-16 Oppo广东移动通信有限公司 数据处理方法及装置、电子设备及存储介质
KR102521595B1 (ko) * 2018-09-30 2023-04-12 광동 오포 모바일 텔레커뮤니케이션즈 코포레이션 리미티드 데이터 처리 방법 및 장치, 전자 기기 및 저장 매체
CN112672132B (zh) * 2018-09-30 2023-12-26 Oppo广东移动通信有限公司 数据处理方法及装置、电子设备及存储介质
CN111416975A (zh) * 2019-01-08 2020-07-14 华为技术有限公司 预测模式确定方法和装置
US12160566B2 (en) 2019-01-08 2024-12-03 Huawei Technologies Co., Ltd. Method and apparatus for determining prediction mode with mode status

Also Published As

Publication number Publication date
WO2013039363A3 (fr) 2013-05-10

Similar Documents

Publication Publication Date Title
US11503282B2 (en) Intra prediction mode encoding/decoding method and apparatus for same
KR102785771B1 (ko) 화면내 예측 모드 부호화/복호화 방법 및 장치
KR101867884B1 (ko) 인트라 예측 모드 부호화/복호화 방법 및 장치
KR102171380B1 (ko) 병렬 엔트로피 부호화/복호화 방법 및 장치
KR101959482B1 (ko) 영상 부호화/복호화 방법 및 그 장치
KR20170046112A (ko) 예측 모드에 기초한 변환 생략 정보의 엔트로피 복호화 방법 및 장치
WO2013039363A2 (fr) Procédé de codage/décodage d'image et dispositif correspondant
HK40003647A (en) Intra prediction mode encoding/decoding method and appartus for same
HK1243261B (zh) 视频解码设备、视频编码设备和计算机可读记录介质
HK1243258B (zh) 视频解码设备
HK1243258A1 (en) Video decoding apparatus

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

Country of ref document: EP

Kind code of ref document: A2

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 12832136

Country of ref document: EP

Kind code of ref document: A2