Image decoding method and apparatus in image encoding system according to block separation structure
By segmenting images into non-square blocks and decoding them using a multi-segmentation tree (MPT) structure, the problem of high transmission and storage costs for high-resolution images is solved, and the efficiency of compilation and transformation is improved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- LG ELECTRONICS INC
- Filing Date
- 2018-04-03
- Publication Date
- 2026-07-21
AI Technical Summary
The transmission and storage of high-resolution and high-quality images are costly, and existing technologies struggle to effectively compress and decode them.
The image is separated into non-square blocks using a multi-segment tree (MPT) structure, and decoding is performed based on each non-square block using an entropy decoder and a predictor.
It improves image compilation and transformation efficiency, and enhances overall compilation efficiency.
Smart Images

Figure CN116489355B_ABST
Abstract
Description
[0001] This application is a divisional application of patent application No. 201880029236.4 (PCT / KR2018 / 003919), filed on November 1, 2019, with an international application date of April 3, 2018, entitled "Image Decoding Method and Apparatus Based on Block Separation Structure in Image Compilation System". Technical Field
[0002] This disclosure relates to image compilation technology, and more specifically, to an image decoding method and apparatus based on a block segmentation structure in an image compilation system. Background Technology
[0003] The demand for high-resolution, high-quality images, such as high-definition (HD) and ultra-high-definition (UHD) images, is increasing across various sectors. Because image data is high-resolution and high-quality, the amount of information or bits that needs to be transmitted increases compared to traditional image data. Therefore, transmission and storage costs increase when using media such as traditional wired / wireless broadband lines to transmit image data or when storing image data using existing storage media.
[0004] Therefore, there is a need for an efficient image compression technology for effectively sending, storing, and reproducing information from high-resolution and high-quality images. Summary of the Invention
[0005] Technical Purpose
[0006] The technical objective of this disclosure is to provide a method and apparatus that can enhance image compilation efficiency.
[0007] Another technical objective of this disclosure is to provide a method and apparatus for separating (or segmenting) images based on a multiple segmentation tree (MPT) structure.
[0008] Another technical objective of this disclosure is to provide a method and apparatus that can separate (or segment) an image into non-square blocks according to a multi-segmentation tree (MPT) structure and can perform decoding based on each non-square block.
[0009] Technical solution
[0010] According to exemplary embodiments of the present disclosure, this document provides a video decoding method performed by a decoding device. The method includes the steps of: acquiring first separation information for a first target block, and separating the first target block into a first sub-block when a first separation flag indicates that the first target block has been separated; acquiring multi-partition tree (MPT) separation information for a second target block, wherein the second target block is one of the first sub-blocks of the first target block; separating the second target block into a second sub-block based on the MPT separation information; and decoding the second sub-block, wherein the second sub-block is a non-square block.
[0011] According to another exemplary embodiment of this disclosure, a decoding apparatus for performing image decoding is provided herein. The decoding apparatus includes: an entropy decoder that acquires first separation information for a first target block via a bitstream and acquires multiple segmentation tree (MPT) separation information for a second target block via a bitstream, wherein the second target block is one of the first sub-blocks of the first target block; an image segmenter that segments the first target block into first sub-blocks when a first separation flag indicates that the first target block has been separated, and segments the second target block into second sub-blocks based on the MPT separation information; and a predictor that decodes the second sub-block, wherein the second sub-block is a non-square block.
[0012] According to yet another exemplary embodiment of this disclosure, a video encoding method performed by an encoding device is provided herein. The method includes the steps of: separating a first target block into a first sub-block; separating a second target block into a second sub-block, wherein the second target block is one of the first sub-blocks; decoding the second sub-blocks; and generating first separation information for the first target block and MPT separation information for the second target block, and encoding and outputting the generated information, wherein the second sub-block is a non-square block.
[0013] According to yet another exemplary embodiment of this disclosure, a video encoding apparatus is provided herein. The encoding apparatus includes: an image segmenter that separates a first target block into a first sub-block and a second target block into a second sub-block, wherein the second target block is one of the first sub-blocks; a predictor that decodes the second sub-blocks; and an entropy encoder that generates first separation information for the first target block and MPT separation information for the second target block, and encodes and outputs the generated information, wherein the second sub-block is a non-square block.
[0014] Beneficial effects
[0015] According to this disclosure, an image can be separated (or segmented) into blocks of varying shapes based on a multi-segmentation tree (MPT) structure, thereby enhancing prediction efficiency and overall compilation efficiency.
[0016] According to this disclosure, an image can be separated (or segmented) into blocks of varying shapes based on a multi-segmentation tree (MPT) structure, thereby enhancing transformation efficiency and overall compilation efficiency. Attached Figure Description
[0017] Figure 1 This is a schematic diagram illustrating the configuration of a video encoding device to which the present invention can be applied.
[0018] Figure 2 This is a schematic diagram illustrating the configuration of a video decoding device to which the present invention can be applied.
[0019] Figure 3 This shows an example of separating the CU based on the quadtree binary tree (QTBT) structure and the syntax of the QTBT structure.
[0020] Figure 4 An exemplary transmission of the syntax for the QTBT structure for the target CU is shown.
[0021] Figure 5 An example of separating the target CU according to the QTMPT structure is shown.
[0022] Figure 6 An exemplary transmission of the syntax for the QTMPT structure for the target CU is shown.
[0023] Figure 7 An exemplary transmission of the syntax for the QTMPT structure for the target CU is shown.
[0024] Figure 8 This is an overall diagram of a video coding method performed by an encoding device according to the present invention.
[0025] Figure 9 This is an overall diagram of a video decoding method performed by a decoding device according to the present invention. Detailed Implementation
[0026] This disclosure may be modified in various forms, and specific embodiments thereof will be described and illustrated in the accompanying drawings. However, the embodiments are not intended to limit this disclosure. The terminology used in the following description is for the purpose of describing particular embodiments only and is not intended to limit this disclosure. Singular expressions include plural expressions, provided that it is read clearly in a different manner. Terms such as “comprising” and “having” are intended to indicate the presence of the features, numbers, steps, operations, elements, components or combinations thereof used in the following description, and therefore should be understood not to exclude the possibility of the presence or addition of one or more different features, numbers, steps, operations, elements, components or combinations thereof.
[0027] On the other hand, the elements in the accompanying drawings described in this disclosure are drawn independently for ease of explanation of different specific functions, but this does not mean that these elements are implemented by independent hardware or independent software. For example, two or more elements may be combined to form a single element, or an element may be divided into multiple elements. Embodiments in which elements are combined and / or divided are part of this disclosure without departing from its concept.
[0028] In the following, embodiments of the present disclosure will be described in detail with reference to the accompanying drawings. Furthermore, throughout the drawings, the same reference numerals are used to indicate the same elements, and the same descriptions of the same elements will be omitted.
[0029] In this specification, the term "picture" generally refers to a unit representing an image at a specific time, while a slice is a unit that makes up a portion of a picture. A picture can be composed of multiple slices, and the terms picture and slice can be used interchangeably as needed.
[0030] A pixel or image unit can refer to the smallest unit that makes up a picture (or image). Additionally, the term "sample" can be used as the counterpart to a pixel. A sample can typically represent a pixel or a pixel value; it can represent a pixel containing only the luminance component (pixel value) or a pixel containing only the chrominance component (pixel value).
[0031] A unit refers to a basic unit of image processing. This unit may include at least one of a specific region and information associated with that region. Optionally, the unit may be combined with terms such as block, region, etc. Typically, an M×N block may represent a set of samples or transform coefficients arranged in M columns and N rows.
[0032] Figure 1 A simplified diagram illustrates the structure of a video encoding device to which this disclosure can be applied.
[0033] refer to Figure 1 The video encoding device (100) may include an image segmenter (105), a predictor (110), a residual processor (120), an entropy encoder (130), an adder (140), a filter (150), and a memory (160). The residual processor (120) may include a subtractor (121), a transformer (122), a quantizer (123), a rearranger (124), a dequantizer (125), and an inverse transformer (126).
[0034] The image segmenter (105) can separate the input image into at least one processing unit.
[0035] In the example, a processing unit may be referred to as a compilation unit (CU). In this case, compilation units can be recursively separated from the largest compilation unit (LCU) according to a quadtree-binary tree (QTBT) structure. For example, a compilation unit can be separated into multiple compilation units of greater depth based on a quadtree structure and / or a binary tree structure. In this case, for example, a quadtree structure can be applied first, and a binary tree structure can be applied later. Alternatively, a binary tree structure can be applied first. The compilation process according to this disclosure can be performed based on the final compilation unit that is no longer further separated. In this case, depending on the image characteristics, the largest compilation unit can be used as the final compilation unit based on compilation efficiency, etc., or the compilation unit can be recursively separated into lower-depth compilation units as needed, and the compilation unit with the optimal size can be used as the final compilation unit. Here, the compilation process may include processes such as prediction, transformation, and reconstruction, which will be described later.
[0036] In another example, the processing unit may include a compilation unit (CU), a prediction unit (PU), or a transform unit (TU). The compilation unit can be separated from the largest compilation unit (LCU) into deeper compilation units according to a quadtree structure. In this case, depending on the image characteristics, the largest compilation unit can be directly used as the final compilation unit based on compilation efficiency, etc., or the compilation unit can be recursively separated into deeper compilation units as needed, and the compilation unit with the optimal size can be used as the final compilation unit. When a minimum compilation unit (SCU) is set, the compilation unit may not be separated into compilation units smaller than the minimum compilation unit. Here, the final compilation unit refers to the compilation unit that has been segmented or separated into prediction units or transform units. The prediction unit is a unit segmented from the compilation unit and can be a unit for sample prediction. Here, the prediction unit can be divided into sub-blocks. The transform unit can be segmented from the compilation unit according to a quadtree structure and can be a unit for deriving transform coefficients and / or a unit for deriving residual signals from transform coefficients. In the following text, the compilation unit may be referred to as a compilation block (CB), the prediction unit may be referred to as a prediction block (PB), and the transform unit may be referred to as a transform block (TB). A prediction block or prediction unit can refer to a specific region in the form of a block in an image and includes an array of prediction samples. Similarly, a transform block or transform unit can refer to a specific region in the form of a block in an image and includes an array of transform coefficients or residual samples.
[0037] The predictor (110) can perform predictions on the target block (hereinafter, the current block) and can generate a prediction block that includes prediction samples of the current block. The prediction unit executed in the predictor (110) can be a compilation block, a transformation block, or a prediction block.
[0038] The predictor (110) can determine whether to apply intra-prediction or inter-prediction to the current block. For example, the predictor (110) can determine whether to apply intra-prediction or inter-prediction at the CU unit level.
[0039] In the case of intraprediction, the predictor (110) can derive a prediction sample for the current block based on reference samples outside the current block in the image to which the current block belongs (hereinafter, the current image). In this case, the predictor (110) can derive the prediction sample based on the average or interpolation of the neighboring reference samples of the current block (case (i)), or it can derive the prediction sample based on reference samples among the neighboring reference samples of the current block regarding the presence of the prediction sample in a specific (prediction) direction (case (ii)). Case (i) can be referred to as a non-directional mode or a non-angular mode, and case (ii) can be referred to as a directional mode or an angular mode. In intraprediction, the prediction modes can include, for example, 33 directional modes and at least two non-directional modes. Non-directional modes can include DC modes and planar modes. The predictor (110) can determine the prediction mode to be applied to the current block by using the prediction modes applied to neighboring blocks.
[0040] In the case of inter-block prediction, the predictor (110) can derive the predicted sample of the current block based on the sample specified by the motion vector on the reference image. The predictor (110) can derive the predicted sample of the current block by applying any of the skip mode, merge mode, and motion vector prediction (MVP) mode. In the cases of skip mode and merge mode, the predictor (110) can use the motion information of neighboring blocks as the motion information of the current block. In the case of skip mode, unlike the merge mode, the difference (residual) between the predicted sample and the original sample is not sent. In the case of MVP mode, the motion vectors of neighboring blocks are used as motion vector predictors, and therefore are used as motion vector predictors of the current block to derive the motion vector of the current block.
[0041] In the case of inter-prediction, neighboring blocks can include spatially neighboring blocks existing in the current image and temporally neighboring blocks existing in a reference image. The reference image including temporally neighboring blocks can also be called a colpic. Motion information can include motion vectors and reference image indices. Information such as prediction mode information and motion information can be encoded (entropy) and then output as a bitstream.
[0042] When using motion information from temporally adjacent blocks in skip and merge modes, the highest-ranking image in the reference image list can be used as the reference image. Reference images included in the reference image list can be aligned based on the difference in Picture Order Count (POC) between the current image and its corresponding reference image. The POC corresponds to the display order and can be distinguished from the compilation order.
[0043] The subtractor (121) generates a residual sample, which is the difference between the original sample and the predicted sample. If the skip mode is applied, residual samples may not be generated as described above.
[0044] Transformer (122) transforms residual samples in units of transform blocks to generate transform coefficients. Transformer (122) can perform the transformation based on the size of the corresponding transform block and the prediction mode applied to the compile block or prediction block that overlaps with the transform block in space. For example, if the intraprediction is applied to the compile block or prediction block that overlaps with the transform block and the transform block is a 4×4 residual array, the residual samples can be transformed using a Discrete Sine Transform (DST) kernel, and in other cases, a Discrete Cosine Transform (DCT) kernel can be used to transform the residual samples.
[0045] The quantizer (123) can quantize the transform coefficients to generate quantized transform coefficients.
[0046] The rearranger (124) rearranges the quantized transform coefficients. The rearranger (124) can rearrange the quantized transform coefficients in block form into a one-dimensional vector using a coefficient scan method. Although the rearranger (124) is described as a separate component, the rearranger (124) can be part of the quantizer (123).
[0047] The entropy encoder (130) can perform entropy encoding on the quantized transform coefficients. Entropy encoding can include encoding methods such as exponential Golomb, context-adaptive variable-length compilation (CAVLC), context-adaptive binary arithmetic compilation (CABAC), etc. In addition to the quantized transform coefficients, the entropy encoder (130) can encode information required for video reconstruction (e.g., syntax element values, etc.) together or separately. The entropy-encoded information can be sent or stored in bitstream form at the Network Abstraction Layer (NAL) level.
[0048] The dequantizer (125) dequantizes the values (transform coefficients) quantized by the quantizer (123), and the inverse transformer (126) performs an inverse transformation on the values dequantized by the dequantizer (125) to generate residual samples.
[0049] The adder (140) adds residual samples to the prediction samples to reconstruct the image. Residual samples can be added to the prediction samples in blocks to generate reconstructed blocks. Although the adder (140) is described as a separate component, it can be part of the predictor (110). Furthermore, the adder (140) can be referred to as a reconstructor or a reconstructed block generator.
[0050] The filter (150) can apply deblocking filtering and / or sample adaptive shifting to the reconstructed image. Deblocking filtering and / or sample adaptive shifting can correct artifacts at block boundaries or distortions in quantization in the reconstructed image. After deblocking filtering is complete, sample adaptive shifting can be applied on a sample-by-sample basis. The filter (150) can also apply an adaptive loop filter (ALF) to the reconstructed image. The ALF can be applied to the reconstructed image after deblocking filtering and / or sample adaptive shifting has been applied.
[0051] The memory (160) can store information required for reconstructing (decoding) images or encoding / decoding. Here, the reconstructed image can be a reconstructed image filtered by the filter (150). The stored reconstructed image can be used as a reference image for (inter)prediction of other images. For example, the memory (160) can store (reference) images for interprediction. Here, the images for interprediction can be specified according to a set of reference images or a list of reference images.
[0052] Figure 2 A simplified diagram illustrates the structure of a video decoding device to which this disclosure can be applied.
[0053] refer to Figure 2 The video decoding device (200) may include an entropy decoder (210), a residual processor (220), a predictor (230), an adder (240), a filter (250), and a memory (260). The residual processor (220) may include a rearranger (221), a dequantizer (222), and an inverse transformer (223).
[0054] When a bitstream containing video information is input, the video decoding device (200) can reconstruct the video in association with the process of processing the video information in the video encoding device.
[0055] For example, a video decoding device (200) can perform video decoding using processing units applied in a video encoding device. Therefore, the processing unit block for video decoding can be, for example, a compilation unit, and in another example, it can be a compilation unit, a prediction unit, or a transform unit. Compilation units can be separated from the largest compilation unit according to a quadtree structure and / or a binary tree structure.
[0056] In some cases, prediction units and transform units can be further used, and in this case, the prediction block is a block derived or segmented from the compilation unit, and can be a unit for sample prediction. Here, the prediction unit can be divided into sub-blocks. The transform unit can be separated from the compilation unit according to a quadtree structure, and can be a unit for deriving transform coefficients or a unit for deriving residual signals from transform coefficients.
[0057] The entropy decoder (210) can parse the bitstream to output the information required for video reconstruction or image reconstruction. For example, the entropy decoder (210) can decode the information in the bitstream based on compilation methods such as exponential Golomb coding, CAVLC, CABAC, etc., and can output the values of the syntax elements required for video reconstruction and the quantization values of the transform coefficients with respect to the residuals.
[0058] More specifically, the CABAC entropy decoding method can receive a bin corresponding to each syntax element in the bitstream, determine a context model using information about the target syntax element and the decoding information of neighboring and target blocks, or information about symbols / bins decoded in previous steps, predict the bin generation probability based on the determined context model, and perform arithmetic decoding of the bins to generate symbols corresponding to each syntax element value. Here, the CABAC entropy decoding method can update the context model after determining it using information about symbols / bins decoded for the next symbol / bin using the context model.
[0059] Information about the prediction from the information decoded in the entropy decoder (210) can be provided to the predictor (250), and the residual value of the entropy decoding performed by the entropy decoder (210), i.e., the quantized transform coefficients, can be input to the rearranger (221).
[0060] The rearranger (221) can rearrange the quantized transform coefficients into a two-dimensional block form. The rearranger (221) can perform a rearrangement corresponding to the coefficient scan performed by the encoding device. Although the rearranger (221) is described as a separate component, the rearranger (221) can be part of the dequantizer (222).
[0061] The dequantizer (222) can dequantize the quantized transform coefficients based on the (de)quantization parameters to output the transform coefficients. In this case, information for deriving the quantization parameters can be sent from the encoding device via a signal.
[0062] The inverse transformer (223) can perform an inverse transformation on the transformation coefficients to derive the residual samples.
[0063] The predictor (230) can perform predictions on the current block and can generate a prediction block that includes prediction samples of the current block. The unit of prediction performed in the predictor (230) can be a compilation block, a transformation block, or a prediction block.
[0064] The predictor (230) can determine whether to apply intra-application prediction or inter-application prediction based on information about the prediction. In this case, the unit used to determine which one to use between intra-application and inter-application prediction can be different from the unit used to generate the prediction samples. Furthermore, the unit used to generate the prediction samples can also be different in inter-application and intra-application prediction. For example, the unit used to determine which one to apply between inter-application and intra-application prediction can be CU. Additionally, for example, in inter-application prediction, prediction samples can be generated by determining the prediction mode using PU, and in intra-application prediction, prediction samples can be generated by determining the prediction mode using TU.
[0065] In the case of intra-prediction, the predictor (230) can derive the predicted sample of the current block based on neighboring reference samples in the current image. The predictor (230) can derive the predicted sample of the current block by applying either a directional or non-directional mode based on the neighboring reference samples of the current block. In this case, the prediction mode to be applied to the current block can be determined by using the intra-prediction mode of neighboring blocks.
[0066] In the case of inter-prediction, the predictor (230) can derive the prediction sample for the current block based on the sample specified in the reference picture according to the motion vector. The predictor (230) can derive the prediction sample for the current block using one of the skip mode, merge mode, and MVP mode. Here, the motion information required for inter-prediction of the current block provided by the video encoding device, such as motion vectors and information about the reference picture index, can be obtained or derived based on the information about the prediction.
[0067] In skip and merge modes, motion information from neighboring blocks can be used as motion information for the current block. Here, neighboring blocks can include spatially neighboring blocks and temporally neighboring blocks.
[0068] The predictor (230) can construct a merge candidate list using motion information of available neighboring blocks and use the information indicated by the merge index on the merge candidate list as the motion vector of the current block. The merge index can be transmitted by a signal from the encoding device. The motion information can include motion vectors and reference pictures. When using motion information of temporally neighboring blocks in skip mode and merge mode, the highest picture in the reference picture list can be used as the reference picture.
[0069] In the skip mode, the difference (residual) between the predicted sample and the original sample is not sent, unlike the merge mode.
[0070] In MVP mode, the motion vectors of neighboring blocks can be used as motion vector predictors to derive the motion vector of the current block. Here, neighboring blocks can include spatially neighboring blocks and temporally neighboring blocks.
[0071] When a merge mode is applied, for example, a merge candidate list can be generated using the motion vectors of reconstructed spatially neighboring blocks and / or the motion vectors corresponding to Col blocks that are temporally neighboring blocks. The motion vectors of candidate blocks selected from the merge candidate list are used as the motion vectors of the current block in the merge mode. The aforementioned information about the prediction may include a merge index that indicates the candidate block with the best motion vector selected from the candidate blocks included in the merge candidate list. Here, the predictor (230) can use the merge index to derive the motion vector of the current block.
[0072] When applying the Motion Vector Prediction (MVP) mode as another example, a candidate list of motion vector predictors can be generated using the motion vectors of the reconstructed spatially neighboring blocks and / or the motion vectors corresponding to the Col blocks, which are temporally neighboring blocks. That is, the motion vectors of the reconstructed spatially neighboring blocks and / or the motion vectors corresponding to the Col blocks, which are temporally neighboring blocks, can be used as motion vector candidates. The aforementioned information about prediction can include a predicted motion vector index indicating the best motion vector to be selected from the motion vector candidates included in the list. Here, the predictor (230) can use the motion vector index to select the predicted motion vector of the current block from the motion vector candidates included in the motion vector candidate list. The predictor of the encoding device can obtain the motion vector difference (MVD) between the motion vector of the current block and the motion vector predictor, encode the MVD, and output the encoded MVD as a bitstream. That is, the MVD can be obtained by subtracting the motion vector predictor from the motion vector of the current block. Here, the predictor (230) can obtain the motion vectors included in the information about prediction and derive the motion vector of the current block by adding the motion vector difference to the motion vector predictor. Additionally, the predictor can obtain or derive a reference image index indicating a reference image from the aforementioned information about prediction.
[0073] The adder (240) can add residual samples to the prediction samples to reconstruct the current block or the current image. The adder (240) can reconstruct the current image by adding residual samples to the prediction samples on a block-by-block basis. When the skip mode is applied, no residuals are sent, and therefore the prediction samples can become the reconstructed samples. Although the adder (240) is described as a separate component, the adder (240) can be part of the predictor (230). Meanwhile, the adder (240) can be referred to as a reconstructor or a reconstructed block generator.
[0074] The filter (250) can apply deblocking filtering, sample adaptive shifting, and / or ALF to the reconstructed image. Here, sample adaptive shifting can be applied on a sample-by-sample basis after deblocking filtering. ALF can be applied after deblocking filtering and / or after applying sample adaptive shifting.
[0075] The memory (260) can store reconstructed images (decoded images) or information required for decoding. Here, the reconstructed image can be a reconstructed image filtered by the filter (250). For example, the memory (260) can store images used for inter-prediction. Here, the images used for inter-prediction can be specified according to a set of reference images or a list of reference images. The reconstructed images can be used as reference images for other images. The memory (260) can output the reconstructed images in the output order.
[0076] When encoding the input image as described above, encoding can be performed based on a single processing unit. This processing unit can be designated as a compilation unit (CU). Furthermore, since compilation is performed on regions within the image that contain similar information, transformation efficiency can be improved. And by doing so, overall compilation efficiency can be improved. Additionally, since compilation is performed on regions within the image that contain similar information, prediction efficiency can be improved. And by doing so, overall compilation efficiency can be improved. However, if the image is only separated (or segmented) into square CUs by applying a quadtree (QT) structure, there may be limitations in performing the separation (or segmentation) so that the CUs accurately include similar information. For example, information indicating a specific entity within the image can be widely located along the diagonal. And in this case, if only one CU is used to include information indicating a specific entity, a wider range of other information can be included in addition to information indicating a specific entity. And if multiple square CUs are used to include information indicating a specific entity, compilation will be performed on each of the multiple CUs. Therefore, compilation efficiency may decrease. In this case, by separating the image into non-square CUs that include information indicating specific entities, compilation efficiency can be further improved. Therefore, this disclosure proposes a method for separating (or segmenting) an input image into square CUs and non-square CUs using a different separation structure and a quadtree (QT) structure. By doing so, the image can be separated into CUs of different shapes based on the information contained within the image, and compilation can be performed more efficiently.
[0077] Figure 3 This shows an example of separating the CU based on the quadtree binary tree (QTBT) structure and the syntax of the QTBT structure.
[0078] A QTBT structure can indicate a structure in which CUs (or CTUs) are separated (or partitioned) according to a QT structure, and then further partitioned according to a binary tree (BT) structure. More specifically, a QTBT structure can indicate a partitioned structure configured by a combination of QT and BT structures. Here, in the case of compiling an image in units of CTUs, CTUs can be separated (or partitioned) according to a QT structure, and leaf nodes of the QT structure can be further partitioned according to a BT structure. Here, leaf nodes can indicate CUs that are no longer partitioned in the QT structure, and leaf nodes can also be called terminal nodes. Furthermore, a QT structure can indicate the partitioning of a 2N×2N CU (or CTU) into four N×N sub-CUs, while a BT structure can indicate the partitioning of a 2N×2N CU into two N×2N sub-CUs, or two 2N×N sub-CUs. (See reference) Figure 3 (a) can be separated into square CUs of lower depth according to the QT structure, and furthermore, in the square CUs, a particular CU can be separated into non-square CUs of lower depth according to the BT structure.
[0079] Figure 3 (b) can illustrate an exemplary transmission of the syntax of the QTBT structure. For example... Figure 3 As shown in (b), solid lines indicate QT structures, while dashed lines indicate BT structures. Additionally, starting from the top and extending downwards (i.e., from top to bottom), the syntax for CUs (Complex Units) from higher to lower depths can be indicated. Furthermore, starting from the left end and moving towards the right end (i.e., from left to right), the syntax for the upper left CU, upper right CU, lower left CU, and lower right CU can be indicated respectively. More specifically, the index shown at the highest (or topmost) position indicates the syntax for an n-depth CU, the index shown at the second highest position indicates the syntax for an (n+1)-depth CU, the index shown at the third position from the top indicates the syntax for an (n+2)-depth CU, and the index shown at the fourth position from the top indicates the syntax for an (n+3)-depth CU. Moreover, indices marked in bold indicate the values of the syntax corresponding to QT structures, while indices not marked in bold indicate the values of the syntax corresponding to BT structures.
[0080] refer to Figure 3(b) can send a QT split flag indicating whether to separate (or segment) the CUs according to the QT structure. More specifically, a flag indicating whether to split a 2N×2N CU into four N×N sub-CUs can be sent. The QT_split_flag can indicate the syntax element used for the QT split flag. For example, when the value of the QT split flag is equal to 1, the CI can be split into four sub-CUs. And when the value of the QT split flag is equal to 0, the CUs may not be split. In addition, in order to adjust the QT structure corresponding to the input image, information about the maximum CU size, minimum CU size, maximum depth, etc., within the QT structure can be sent. The above information about the QT structure can be sent separately for each slice type or for each image component (luminance component, chrominance component, etc.).
[0081] refer to Figure 3 (b) Information about the BT structure can be sent to the terminal nodes that are no longer separated in the QT structure. More specifically, information about the BT structure can be sent to the CUs corresponding to the terminal nodes in the QT structure. Here, the information including information about the BT structure can be called MPT information. For example, an indication can be sent to whether to perform CU separation (or splitting) according to the BT structure, that is, whether to apply the BT separation flag for the CU. BT_split_flag can indicate the syntax element used for the BT separation flag. More specifically, when the value of the BT separation flag is equal to 1, the CU can be separated into 2 sub-CUs, and when the value of the BT separation flag is equal to 0, the CU can not be separated. In addition, in order to adjust the BT structure corresponding to the input image, information about the maximum CU size, minimum CU size, maximum depth, etc., within the BT structure can be sent. The above information about the QT structure can be sent separately for each slice type or for each image component. When separating CUs according to the BT structure, the CUs can be separated in the horizontal or vertical direction. In other words, a 2N×2N CU can be split into two N×N sub-CUs, or a 2N×2N CU can be split into N×2N sub-CUs. A BT split mode index indicating the direction in which the CU will be split can be sent; that is, the split type of the CU. The BT_split_mode can indicate the syntax element used for the BT split mode index. For example, if the value of the BT split mode index is equal to 1, the CU can be split vertically, i.e., split into N×2N sub-CUs, and if the value of the BT split mode index is equal to 0, the CU can be split horizontally, i.e., split into 2N×N sub-CUs.
[0082] Figure 4 An exemplary transmission of the syntax for the QTBT structure for the target CU is shown.
[0083] refer to Figure 4 You can send a QT_split_flag for the target CU. As mentioned above, QT_split_flag can indicate whether the target CU is split according to the QT structure. More specifically, QT_split_flag can indicate whether the target CU is split into sub-CUs with sizes corresponding to half the height and half the width of the target CU.
[0084] More specifically, for example, if the value of QT_split_flag for the target CU is equal to 1, that is, if QT_split_flag indicates that the target CU is to be split into sub-CUs, each having half the height and half the width of the target CU, then the target CU can be split into the corresponding sub-CUs. In this case, the QT_split_flag corresponding to the sub-CU can be sent. More specifically, the target CU can be recursively split into CUs of lower depth, thereby deriving the CUs of the terminal nodes that can no longer be split.
[0085] Simultaneously, when the QT_split_flag value of the target CU on the terminal node is equal to 0, that is, when QT_split_flag indicates that the target CU has not been split into sub-CUs, each having half the height and half the width corresponding to the target CU, a BT_split_flag corresponding to the target CU can be sent. As mentioned above, BT_split_flag can indicate whether the target CU is split according to the BT structure. More specifically, for example, BT_split_flag indicates whether a 2N×2N target CU is split into N×2N or 2N×N sub-CUs. When the BT structure is applied to the target CU, the shape of the CU split from the target CU can be determined based on the BT_split_flag and BT_split_mode values.
[0086] More specifically, when the value of BT_split_flag is equal to 1, the target CU can be split into N×2N sub-CUs or 2N×N sub-CUs. If the value of the BT split flag is equal to 0, the target CU cannot be split. Furthermore, when BT_split_flag indicates that the target CU is to be split according to the BT structure, BT_split_mode for the target CU can be sent. BT_split_mode can indicate the direction in which the CU will be split, i.e., the type of CU split. For example, when the value of BT_split_mode is equal to 1, the CU can be split vertically, i.e., split into N×2N sub-CUs, and when the value of BT_split_mode is equal to 0, the CU can be split horizontally, i.e., split into 2N×N sub-CUs.
[0087] Additionally, the syntax of the QTBT structure can be indicated as shown in the table below.
[0088] [Table 1]
[0089]
[0090]
[0091] Here, QT_split_flag can indicate the syntax element of the QT split flag mentioned above, BT_split_flag can indicate the syntax element of the BT split flag mentioned above, and BT_split_mode can indicate the syntax element of the BT split mode index mentioned above.
[0092] The CU can be separated, and the leaf nodes of the QT structure can be further separated according to the MPT structure.
[0093] According to the QTBT structure described above, the target CU of size 2N×2N corresponding to the leaf node of the QT structure can be separated into two sub-CUs of size N×2N, or it can be separated into two sub-CUs of size 2N×N. However, as Figure 5 As shown in (a) to (j), the target CU corresponding to the leaf node of the QT structure can be separated into 2, 3, or 4 sub-CUs of different shapes. More specifically, the MPT structure can represent a structure in which the target CU is separated into multiple non-square sub-CUs of different shapes.
[0094] More specifically, see reference Figure 5In (a) and (b), according to the MPT structure, the target CU can be separated into two sub-CUs along the vertical or horizontal direction. More specifically, according to the MPT structure, a target CU of size 2N×2N can be separated into two sub-CUs of size N×2N, or it can be separated into two sub-CUs of size 2N×N.
[0095] Additionally, refer to Figure 5 From (c) to (h), according to the MPT structure, the target CU can be separated into three sub-CUs along the vertical or horizontal direction. If the target CU is separated into three sub-CUs, the target CU can be separated into one large sub-CU and two small sub-CUs, or the target CU can be equally separated into three sub-CUs, that is, the target CU can be separated into three sub-CUs of equal size. The scheme for separating the target CU into one large sub-CU and two small sub-CUs can include various separation (or segmentation) methods depending on the position of the large sub-CU.
[0096] For example, such as Figure 5 As shown in (c), according to the MPT structure, the target CU of size 2N×2N can be separated into a sub-CU of size N / 2×2N, an N×2N sub-CU, and an N / 2×2N sub-CU. Figure 5 As shown in (c), the target CU of size 2N×2N can be separated from left to right according to the MPT structure in the order of a sub-CU of size N / 2×2N, an N×2N CU and an N / 2×2N sub-CU.
[0097] Alternative locations, for example, Figure 5 As shown in (d), according to the MPT structure, the target CU of size 2N×2N can be separated into a sub-CU of size N / 2×2N, an N / 2×2N sub-CU, and an N×2N sub-CU. More specifically, as... Figure 5 As shown in (d), the target CU of size 2N×2N can be separated from left to right according to the MPT structure in the order of one N / 2×2N sub-CU, one N / 2×2N sub-CU, and one N×2N sub-CU.
[0098] Alternative locations, for example, Figure 5 As shown in (e), according to the MPT structure, the target CU of size 2N×2N can be separated into a sub-CU of size N×2N, an N / 2×2N sub-CU, and an N / 2×2N sub-CU. More specifically, as... Figure 5 As shown in (e), the target CU of size 2N×2N can be separated from left to right according to the MPT structure in the order of an N×2N sub-CU, an N / 2×2N sub-CU, and an N / 2×2N sub-CU.
[0099] Alternative locations, for example, Figure 5 As shown in (f), according to the MPT structure, the target CU of size 2N×2N can be separated into a sub-CU of size 2N×N / 2, a sub-CU of size 2N×N, and a sub-CU of size 2N×N / 2. More specifically, as... Figure 5 As shown in (f), the target CU of size 2N×2N can be separated from top to bottom according to the MPT structure in the order of a sub-CU of size 2N×N / 2, a sub-CU of size 2N×N, and a sub-CU of size 2N×N / 2.
[0100] Alternative locations, for example, Figure 5 As shown in (g), according to the MPT structure, a target CU of size 2N×2N can be separated into a sub-CU of size 2N×N / 2, a sub-CU of size 2N×N / 2, and a sub-CU of size 2N×N. More specifically, as... Figure 5 As shown in (g), the target CU of size 2N×2N can be separated from top to bottom according to the MPT structure in the order of a sub-CU of size 2N×N / 2, a sub-CU of size 2N×N / 2, and a sub-CU of size 2N×N.
[0101] Alternative locations, for example, Figure 5 As shown in (h), according to the MPT structure, the target CU of size 2N×2N can be separated into a sub-CU of size 2N×N, a sub-CU of size 2N×N / 2, and a sub-CU of size 2N×N / 2. More specifically, as... Figure 5 As shown in (h), the target CU of size 2N×2N can be separated from top to bottom according to the MPT structure in the order of one 2N×N sub-CU, one 2N×N / 2 sub-CU and one 2N×N / 2 sub-CU.
[0102] Alternative locations, for example, Figure 5 As shown in (i) and (j), according to the MPT structure, a target CU of size 2N×2N can be separated into 4 sub-CUs along either the vertical or horizontal direction. More specifically, the target CU of size 2N×2N can be separated into 4 sub-CUs of size N / 2×2N, or it can be separated into 4 sub-CUs of size 2N×N / 2. Furthermore, if the separation according to the BT structure is recursively applied to the target CU and its sub-CUs, then... Figure 5 Separation is performed as shown in (i) or (j). However, in the MPT structure, the target CU can be separated into 4 sub-CUs through a single separation process without repeating the separation process.
[0103] Simultaneously, to adjust the MPT structure corresponding to the input image, information regarding the maximum CU size, minimum CU size, maximum depth, etc., within the MPT structure can be sent. This information regarding the MPT structure can be sent separately for each slice type or for each image component (luminance component, chrominance component, etc.). Alternatively, this information regarding the MPT structure can be sent via the Sequence Parameter Set (SPS), Picture Parameter Set (PPS), or slice header.
[0104] Figure 6 An exemplary transmission of the syntax for the QTMPT structure for the target CU is shown.
[0105] refer to Figure 6 You can send a QT_split_flag for the target CU. As mentioned above, QT_split_flag can indicate whether the target CU is split according to the QT structure. More specifically, QT_split_flag can indicate whether the target CU is split into sub-CUs with sizes corresponding to half the height and half the width of the target CU.
[0106] More specifically, for example, if the target CU's QT_split_flag value is equal to 1, that is, if QT_split_flag indicates that the target CU is to be split into sub-CUs, each with a size corresponding to half the height and half the width of the target CU, then the target CU can be split into the corresponding sub-CUs. In this case, the QT_split_flag corresponding to the sub-CU can be sent. More specifically, the target CU can be recursively split into CUs of lower depth, thereby deriving the CUs of the terminal nodes that can no longer be split.
[0107] Simultaneously, when the value of QT_split_flag for the target CU of the terminal node is equal to 0, that is, when QT_split_flag indicates that the target CU has not been split into sub-CUs, each having a size corresponding to half the height and half the width of the target CU, information about the MPT structure corresponding to the target CU of the terminal node can be sent. Here, the information including information about the MPT structure can be referred to as MPT splitting information. For example, MPT splitting information can include MPT splitting type information corresponding to the target CU. More specifically, when the value of QT_split_flag for the target CU of the terminal node is equal to 0, MPT_split_type for the target CU can be sent. MPT_split_type can indicate the syntax for the MPT splitting type information. MPT_split_type can, for example, indicate whether the 2N×2N target CU is split into multiple non-square sub-CUs of different shapes. Non-square sub-CUs can include sub-CUs of size N / 2×2N, sub-CUs of size N×2N, sub-CUs of size 2N×N / 2, and / or sub-CUs of size 2N×N.
[0108] More specifically, for example, if the value of MPT_split_type for the target CU is equal to 0, the target CU may not be separated. Conversely, if the value of MPT_split_type for the target CU is not equal to 0, the shape of the sub-CU separated from the target CU can be determined based on MPT_split_type and MPT_split_mode. More specifically, the MPT separation information may include MPT separation type information and MPT separation direction information corresponding to the target CU. Here, MPT_split_type may indicate the syntax corresponding to the MPT separation type information, and MPT_split_mode may indicate the syntax corresponding to the MPT separation direction information.
[0109] For example, if the value of MPT_split_type is equal to 1, the target CU can be split into 2 sub-CUs. More specifically, when both the value of MPT_split_type and the value of MPT_split_mode are equal to 1, the target CU can be split into 2 sub-CUs of size N×2N, as described above. Figure 5 As shown in (a). Furthermore, when the value of MPT_split_type is equal to 1 and the value of MPT_split_mode is equal to 0, the target CU can be split into two sub-CUs of size 2N×N, as described above. Figure 5 As shown in (b).
[0110] Furthermore, for example, when the value of MPT_split_type is equal to 2, the target CU can be split into 3 sub-CUs. Also, when the value of MPT_split_type is equal to 2 and the value of MPT_split_mode is equal to 1, the target CU can be split into 3 sub-CUs along the vertical direction. Furthermore, when the value of MPT_split_type is equal to 2 and the value of MPT_split_mode is equal to 0, the target CU can be split into 3 sub-CUs along the horizontal direction. When deriving the split direction of the target CU based on MPT_split_type, an MPT_sub_split_type corresponding to the target CU can be sent, and the MPT_sub_split_type can indicate the sub-split information of the target CU. The MPT split information can include MPT sub-split type information corresponding to the target CU. Furthermore, in this document, MPT_sub_split_type can indicate the syntax used for the MPT sub-split type information.
[0111] More specifically, when the target CU is split into 3 sub-CUs, the sub-split information of the target CU can be derived based on MPT_sub_split_type.
[0112] More specifically, when the value of MPT_split_type is equal to 2, the value of MPT_split_mode is equal to 1, and the value of MPT_sub_split_type is equal to 0, the target CU can be split into a left sub-CU of size N / 2×2N, a central sub-CU of size N×2N, and a right sub-CU of size N / 2×2N, as described above. Figure 5 As shown in (c). Additionally, when the value of MPT_split_type is equal to 2, the value of MPT_split_mode is equal to 1, and the value of MPT_sub_split_type is equal to 1, the target CU can be split into a left sub-CU of size N / 2 × 2N, a central sub-CU of size N / 2 × 2N, and a right sub-CU of size N × 2N, as described above. Figure 5 As shown in (d). Additionally, when the value of MPT_split_type is equal to 2, the value of MPT_split_mode is equal to 1, and the value of MPT_sub_split_type is equal to 2, the target CU can be split into a left sub-CU of size N×2N, a central sub-CU of size N / 2×2N, and a right sub-CU of size N / 2×2N, as described above. Figure 5As shown in (e). Furthermore, when the value of MPT_split_type is equal to 2, the value of MPT_split_mode is equal to 0, and the value of MPT_sub_split_type is equal to 0, the target CU can be split into an upper sub-CU of size 2N×N / 2, a central sub-CU of size 2N×N, and a lower sub-CU of size 2N×N / 2, as described above. Figure 5 As shown in (f). Additionally, when the value of MPT_split_type is equal to 2, the value of MPT_split_mode is equal to 0, and the value of MPT_sub_split_type is equal to 1, the target CU can be split into an upper sub-CU of size 2N×N / 2, a central sub-CU of size 2N×N / 2, and a lower sub-CU of size 2N×N, as described above. Figure 5 As shown in (g). Additionally, when the value of MPT_split_type is equal to 2, the value of MPT_split_mode is equal to 0, and the value of MPT_sub_split_type is equal to 2, the target CU can be split into an upper sub-CU of size 2N×N, a central sub-CU of size 2N×N / 2, and a lower sub-CU of size 2N×N / 2, as described above. Figure 5 As shown in (h).
[0113] Furthermore, for example, when the value of MPT_split_type is equal to 3, the target CU can be split into 4 sub-CUs. More specifically, when the value of MPT_split_type is equal to 3 and the value of MPT_split_mode is equal to 1, the target CU can be split into 4 sub-CUs of size N / 2 × 2N, as described above. Figure 5 As shown in (i). Additionally, when the value of MPT_split_type is equal to 3 and the value of MPT_split_mode is equal to 0, the target CU can be split into four sub-CUs of size 2N×N / 2, as described above. Figure 5 As shown in (j).
[0114] Meanwhile, although the syntax of the QTMPT structure can be sent as described above, an exemplary transmission of another QTMPT structure syntax can be proposed as described below.
[0115] Figure 7 An exemplary transmission of the syntax for the QTMPT structure targeting the CU is shown. Figure 6 As described above, MPT_split_mode can be sent jointly when the value of MPT_split_type is not equal to 0. However, refer to... Figure 7It can resolve MPT_split_mode earlier than MPT_split_type.
[0116] refer to Figure 7 You can send a QT_split_flag for the target CU. As mentioned above, QT_split_flag can indicate whether the target CU is split according to the QT structure. More specifically, QT_split_flag can indicate whether the target CU is split into sub-CUs with sizes corresponding to half the height and half the width of the target CU.
[0117] More specifically, for example, if the target CU's QT_split_flag value is equal to 1, that is, if QT_split_flag indicates that the target CU is to be split into sub-CUs, each having half the height and half the width of the target CU, then the target CU can be split into the corresponding sub-CUs. In this case, the QT_split_flag corresponding to the sub-CU can be sent. More specifically, the target CU can be recursively split into CUs of lower depth, thereby deriving the CUs of the terminal nodes that can no longer be split.
[0118] Simultaneously, when the value of QT_split_flag for the target CU at the terminal node is equal to 0, that is, when QT_split_flag indicates that the target CU will not be split into sub-CUs with sizes corresponding to half the height and half the width of the target CU, the MPT splitting information may include the MPT splitting flag for the target CU. More specifically, when the value of QT_split_flag for the target CU at the terminal node is equal to 0, an MPT_split_flag for the target CU can be sent. MPT_split_flag may indicate the syntax used for the MPT splitting flag. MPT_split_flag may indicate whether the target CU is split according to the MPT structure. More specifically, for example, MPT_split_flag may indicate whether a 2N×2N target CU is split into non-square sub-CUs of various shapes. Non-square sub-CUs may include sub-CUs of size N / 2×2N, N×2N, 2N×N / 2, and / or 2N×N. When the value of MPT_split_flag is equal to 0, the target CU can be left unsplit. Conversely, when the value of MPT_split_flag is equal to 1, the target CU can be split according to the MPT structure, and MPT_split_mode and MPT_split_type can be sent. When the value of MPT_split_flag is equal to 1, that is, when the target CU is split according to the MPT structure, the shape of the CU split from the target CU can be determined based on MPT_split_mode and MPT_split_type.
[0119] More specifically, when the value of MPT_split_flag is equal to 1, that is, when the target CU is separated according to the MPT structure, the separation direction of the target CU can be derived based on MPT_split_mode. For example, when the value of MPT_split_mode is equal to 1, the target CU can be separated in the vertical direction, and when the value of MPT_split_mode is equal to 0, the target CU can be separated in the horizontal direction.
[0120] Subsequently, the split type of the target CU can be derived based on MPT_split_type. For example, when the value of MPT_split_type is equal to 0, the target CU can be split into 2 sub-CUs. More specifically, when the value of MPT_split_mode is equal to 1 and the value of MPT_split_type is equal to 0, the target CU can be split into 2 N×2N sub-CUs, as described above. Figure 5As described in (a). Furthermore, when both MPT_split_mode and MPT_split_type are equal to 0, the target CU can be split into two sub-CUs of size 2N×N, as described above. Figure 5 As stated in (b).
[0121] Additionally, as another example, when the value of MPT_split_type is equal to 1, the target CU can be split into 3 sub-CUs. When the value of MPT_split_type is equal to 1, that is, when the target CU is split into 3 sub-CUs, an MPT_sub_split_type can be sent for the target CU, and the MPT_sub_split_type can indicate the sub-split information of the target CU. More specifically, when the target CU is split into 3 sub-CUs, the sub-split information of the target CU can be derived based on the MPT_sub_split_type.
[0122] More specifically, when the value of MPT_split_mode is equal to 1, the value of MPT_split_type is equal to 1, and the value of MPT_sub_split_type is equal to 0, the target CU can be split into a left sub-CU of size N / 2×2N, a center sub-CU of size N×2N, and a right sub-CU of size N / 2×2N, as described above. Figure 5 As shown in (c). Furthermore, when the values of MPT_split_mode, MPT_split_type, and MPT_sub_split_type are all equal to 1, the target CU can be split into a left CU of size N / 2 × 2N, a central sub-CU of size N / 2 × 2N, and a right sub-CU of size N × 2N, as described above. Figure 5 As shown in (d). Additionally, when the value of MPT_split_mode is equal to 1, the value of MPT_split_type is equal to 1, and the value of MPT_sub_split_type is equal to 2, the target CU can be split into a left sub-CU of size N×2N, a central sub-CU of size N / 2×2N, and a right sub-CU of size N / 2×2N, as described above. Figure 5 As described in (e). Furthermore, when the value of MPT_split_mode is equal to 0, the value of MPT_split_type is equal to 1, and the value of MPT_sub_split_type is equal to 0, the target CU can be split into an upper sub-CU of size 2N×N / 2, a central sub-CU of size 2N×N, and a lower sub-CU of size 2N×N / 2, as described above. Figure 5As described in (f). Furthermore, when the value of MPT_split_mode is equal to 0, the value of MPT_split_type is equal to 1, and the value of MPT_sub_split_type is equal to 1, the target CU can be separated into an upper sub-CU of size 2N×N / 2, a central sub-CU of size 2N×N / 2, and a lower sub-CU of size 2N×N, as described above. Figure 5 As described in (g). Furthermore, when the value of MPT_split_mode is equal to 0, the value of MPT_split_type is equal to 1, and the value of MPT_sub_split_type is equal to 2, the target CU can be split into an upper sub-CU of size 2N×N, a central sub-CU of size 2N×N / 2, and a lower sub-CU of size 2N×N / 2, as described above. Figure 5 As described in (h).
[0123] Additionally, as another example, when the value of MPT_split_type is equal to 2, the target CU can be split into 4 sub-CUs. More specifically, when the value of MPT_split_mode is equal to 1 and the value of MPT_split_type is equal to 2, the target CU can be split into 4 sub-CUs of size N / 2 × 2N, as shown above. Figure 5 As described in (i). Furthermore, when the value of MPT_split_mode is equal to 0 and the value of MPT_split_type is equal to 2, the target CU can be split into four sub-CUs of size 2N×N / 2, as described above. Figure 5 As described in (j).
[0124] As mentioned above, the number of sub-CUs derived by splitting the target CU can be derived based on MPT_split_type. Meanwhile, typically, the number of segments into which a block is split—that is, the split type of the generated block—can vary depending on the input image. More specifically, the ratio (or proportion) of block split types can vary depending on the input image. For example, the proportion of block types that split a block into 2 segments might be high, or the proportion of block types that split a block into 3 segments might be high, or the proportion of block types that split a block into 4 segments might be high. Therefore, compilation efficiency can be improved by using a binarization method that assigns a small number of bits of binarized string to the syntax with a high proportion of split types.
[0125] Therefore, for those derived based on various binarization methods Figure 5The binary strings of the above-mentioned split types MPT_slice_type and MPT_sub_slice_type shown in (a) to (j) can be exported as shown in the table below.
[0126] [Table 2]
[0127] Binarization method 1 Binarization method 2 Binarization method 3 MPT-2(5(a),5(b)) 0 00 0 MPT-3 type 0(5(c),5(f)) 100 10 10 MPT-3 Type 1 (5(d), 5(g)) 1010 110 1110 MPT-3 type 2 (5(e), 5(h)) 1011 111 1111 MPT-4(5(i),5(j)) 11 01 110
[0128] Here, MPT-2 indicates the separation type based on how it separates (or divides) a block into two sub-blocks, such as... Figure 5 As shown in (a) and (b), MPT-3 type 0 indicates a separation type, according to which the block is separated (or divided) into 3 sub-blocks, as follows. Figure 5 As shown and described in (c) and (f), and here, MPT-3 type 0 indicates that the central sub-block corresponds to a sub-block with a larger size. MPT-3 type 1 indicates a separation type, according to which a block is separated (or divided) into 3 sub-blocks, such as... Figure 5 As shown and described in (d) and (g), and here, MPT-3 Type 1 indicates that the right-side or lower-side sub-block corresponds to a sub-block with a larger size. MPT-3 Type 2 indicates a separation type, according to which the block is separated (or divided) into 3 sub-blocks, as in Figure 5 As shown and described in (e) and (h), and here, MPT-3 type 2 indicates that the left or upper sub-block corresponds to a sub-block with a larger size. Furthermore, MPT-4 indicates the separation type according to which it divides the block into 4 sub-blocks, as in... Figure 5 As shown and described in (i) and (j).
[0129] Referring to Table 2, binarization method 1 can first determine whether the separation type corresponds to MPT-2. More specifically, if the first value of the syntax of the information obtained about the MPT structure of the target block is equal to 0, the separation type of the target block can be determined to be MPT-2.
[0130] When the split type of the target block does not correspond to MPT-2, that is, when the first value of the syntax regarding the MPT structure information of the target block is not equal to 0, MPT-4 and MPT-4 can be distinguished from each other based on the second value of the syntax regarding the MPT structure information of the target block. More specifically, when the second value of the syntax regarding the MPT structure information of the target block is equal to 0, the split type of the target block can be determined as MPT-3. And, when the second value of the syntax regarding the MPT structure information of the target block is equal to 1, the split type of the target block can be determined as MPT-4. Simultaneously, the syntax can indicate the aforementioned MPT_split_type. More specifically, according to binarization method 1, when MPT_split_type is equal to 0, the split type of the target block can be derived as MPT-2. When MPT_split_type is equal to 10, the split type of the target block can be derived as MPT-3. And, when MPT_split_type is equal to 11, the split type of the target block can be derived as MPT-4.
[0131] Furthermore, the split type of the target block is determined to be MPT-3; that is, when MPT_split_type equals 10, the MPT_sub_split_type of the target block can be sent separately. Based on MPT_sub_split_type, the split type of the target block can be determined as MPT-3 type 0, MPT-3 type 1, or MPT-3 type 2. According to binarization method 1, when MPT_sub_split_type equals 0, the split type of the target block can be derived as MPT-3 type 0. When MPT_sub_split_type equals 10, the split type of the target block can be derived as MPT-3 type 1. And, when MPT_sub_split_type equals 11, the split type of the target block can be derived as MPT-3 type 2. Therefore, according to binarization method 1, when the split type of the target block corresponds to MPT-3 type 0, the binarized string indicating the syntax of the MPT structure of the target block can be indicated as 100. When the separation type of the target block corresponds to MPT-3 type 1, the binarized string indicating the syntax of the MPT structure of the target block can be indicated as 1010. When the separation type of the target block corresponds to MPT-3 type 2, the binarized string indicating the syntax of the MPT structure of the target block can be indicated as 1011. This binarization method can be used when the proportion (or ratio) of blocks with separation type MPT-2 and the proportion (or ratio) of blocks with separation type MPT-4 in the input image is high. Therefore, compilation efficiency can be improved.
[0132] Furthermore, referring to Table 2, binarization method 2 can first determine whether the separation type corresponds to MPT-2 or MPT-4. More specifically, when the first value of the syntax of the acquired information about the MPT structure of the target block is equal to 0, the separation type of the target block can be determined as MPT-2 or MPT-4. And, when the first value of the syntax of the acquired information about the MPT structure of the target block is not equal to 0, the separation type of the target block can be determined as MPT-3. More specifically, when the separation type of the target block is determined to be MPT-2 or MPT-4, that is, when the first value of the syntax of the acquired information related to the MPT structure of the target block is equal to 0, MPT-2 and MPT-4 can be distinguished from each other based on the second value of the syntax of the information about the MPT structure of the target block. More specifically, when the second value of the syntax of the information about the MPT structure of the target block is equal to 0, the separation type of the target block can be determined as MPT-2. And, when the second value of the syntax of the information about the MPT structure of the target block is equal to 1, the separation type of the target block can be determined as MPT-4. Simultaneously, the syntax can indicate the aforementioned MPT_split_type. More specifically, according to binarization method 2, when MPT_split_type equals 00, the split type of the target block can be exported as MPT-2. When MPT_split_type equals 1, the split type of the target block can be exported as MPT-3. Furthermore, when MPT_split_type equals 01, the split type of the target block can be exported as MPT-4.
[0133] Furthermore, when the split type of the target block is determined to be MPT-3, i.e., when MPT_split_type equals 1, the MPT_sub_split_type of the target block can be sent separately. Based on MPT_sub_split_type, the split type of the target block can be determined as MPT-3 type 0, MPT-3 type 1, or MPT-3 type 2. According to binarization method 2, when MPT_sub_split_type equals 0, the split type of the target block can be derived as MPT-3 type 0. When MPT_sub_split_type equals 10, the split type of the target block can be derived as MPT-3 type 1. And, when MPT_sub_split_type equals 11, the split type of the target block can be derived as MPT-3 type 2. Therefore, according to binarization method 2, when the split type of the target block corresponds to MPT-3 type 0, the binarized string indicating the syntax of the MPT structure of the target block can be indicated as 10. When the separation type of the target block corresponds to MPT-3 type 1, the binarized string indicating the syntax of the MPT structure of the target block can be represented as 110. When the separation type of the target block corresponds to MPT-3 type 2, the binarized string indicating the syntax of the MPT structure of the target block can be represented as 111. Binarization method 2 can be used when the proportion (or ratio) of blocks with the MPT-3 separation type in the input image is greater than the proportion of blocks with the MPT-2 separation type (MPT-3). Therefore, compilation efficiency can be improved.
[0134] Furthermore, referring to Table 2, binarization method 3 can first determine whether the separation type corresponds to MPT-2. For example, if the first value of the syntax of the information obtained regarding the MPT structure of the target block is equal to 0, the separation type of the target block can be determined to be MPT-2.
[0135] If the separation type of the target block does not correspond to MPT-2, that is, if the first value of the syntax for obtaining information about the MPT structure of the target block is not equal to 0, the separation type of the target block can be determined based on the second value of the syntax for obtaining information about the MPT structure of the target block. For example, if the second value of the syntax for obtaining information about the MPT structure of the target block is equal to 0, the separation type of the target block can be determined to be MPT-3 type 0.
[0136] If the separation type of the target block does not correspond to MPT-3 type 0, that is, if the second value of the syntax for obtaining information about the MPT structure of the target block is not equal to 0, the separation type of the target block can be determined to be MPT-4 based on the third value of the syntax for obtaining information about the MPT structure of the target block. For example, if the third value of the syntax for obtaining information about the MPT structure of the target block is equal to 0, the separation type of the target block can be determined to be MPT-4.
[0137] When the separation type of the target block does not correspond to MPT-4, that is, when the third value of the syntax for obtaining information about the MPT structure of the target block is not equal to 0, the separation type of the target block can be determined to be either MPT-3 type 1 or MPT-3 type 2 based on the residual value of the syntax for obtaining information about the MPT structure of the target block. For example, if the residual value of the syntax for obtaining information about the MPT structure of the target block is equal to 10, the separation type of the target block can be determined to be MPT-3 type 1. And if the residual value of the syntax for obtaining information related to the MPT structure of the target block is equal to 11, the separation type of the target block can be determined to be MPT-3 type 2. When the proportion (or ratio) of blocks with the separation type of MPT-3 type 0 in the input image is higher than the proportion (or ratio) of blocks with the separation type of MPT-4 type, binarization method 3 can be used. Therefore, compilation efficiency can be improved.
[0138] Simultaneously, a binarization method indicating the separation type of the target block according to the MPT structure can be adaptively selected at the unit level, such as Sequence Parameter Set (SPS), Picture Parameter Set (PPS), slice, or block, and transmission can be performed at the unit level, such as SPS, PPS, slice, or block. Alternatively, a binarization method indicating the separation type of the target block according to the MPT structure can be adaptively derived at the unit level, such as slice or block.
[0139] Alternatively, as another example, it can be determined first whether to perform separation on the target block according to the MPT. In this case, a binarized string indicating the MPT separation (or splitting) information can be derived as shown in the table below.
[0140] [Table 3]
[0141] Binarization method 1 Binarization method 2 Binarization method 3 No separation 0 0 0 MPT-2(5(a),5(b)) 1 0 1 00 1 0 MPT-3 type 0(5(c),5(f)) 1 10 0 1 10 1 10 MPT-3 Type 1 (5(d), 5(g)) 1 10 10 1 11 0 1 11 10 MPT-3 type 2 (5(e), 5(h)) 1 10 11 1 11 1 1 11 11 MPT-4(5(i),5(j)) 1 11 1 01 1 11 0
[0142] Here, MPT-2 indicates the separation type based on how it separates (or divides) a block into two sub-blocks, as in... Figure 5 As shown and described in (a) and (b), MPT-3 type 0 indicates a separation type according to which the block is separated (or divided) into 3 sub-blocks, such as... Figure 5As shown and described in (c) and (f), MPT-3 type 0 indicates that the central sub-block has a larger size. MPT-3 type 1 indicates a separation type, according to which the block is separated (or divided) into 3 sub-blocks, as above. Figure 5 As shown and described in (d) and (g), and here, MPT-3 Type 1 indicates that the right-side or lower-side sub-block has a larger size. MPT-3 Type 2 indicates a separation type, according to which the block is separated (or divided) into 3 sub-blocks, as described above. Figure 5 As shown and described in (e) and (h), and here, MPT-3 type 2 indicates that the left or top sub-block has a larger size. Furthermore, MPT-4 indicates the separation type based on which it divides the block into 4 sub-blocks, as described above. Figure 5 As shown and described in (i) and (j).
[0143] Referring to binarization method 1 in Table 3, it can first be determined whether to perform separation (or splitting) based on the MPT. More specifically, if the first value of the syntax of the information obtained about the MPT structure of the target block is equal to 0, the target block can be split without relying on the MPT.
[0144] When separating a target block according to MPT, that is, when the first value of the syntax of the information about the MPT structure of the target block is not equal to 0, it can be determined whether the separation type corresponds to MPT-2 based on the second value of the syntax of the information about the MPT structure of the target block. More specifically, when the second value of the obtained syntax of the MPT structure of the target block is equal to 0, the separation type of the target block can be determined to be MPT-2.
[0145] When the split type of the target block does not correspond to MPT-2, that is, when the second value of the syntax regarding the MPT structure information of the target block is not equal to 0, MPT-3 and MPT-4 can be distinguished from each other based on the third value of the syntax regarding the MPT structure information of the target block. More specifically, when the third value of the syntax regarding the MPT structure information of the target block is equal to 0, the split type of the target block can be determined as MPT-3. And when the third value of the syntax regarding the MPT structure information of the target block is equal to 1, the split type of the target block can be determined as MPT-4. Simultaneously, the syntax can indicate the aforementioned MPT_split_type. More specifically, according to binarization method 1, when MPT_split_type is equal to 10, the split type of the target block can be derived as MPT-2. When MPT_split_type is equal to 110, the split type of the target block can be derived as MPT-3. And when MPT_split_type is equal to 111, the split type of the target block can be derived as MPT-4.
[0146] Furthermore, the split type of the target block is determined to be MPT-3. That is, when MPT_split_type equals 110, the MPT_sub_split_type of the target block can be sent separately. Based on MPT_sub_split_type, the split type of the target block can be determined as MPT-3 type 0, MPT-3 type 1, or MPT-3 type 2. According to binarization method 1, when MPT_sub_split_type equals 0, the split type of the target block can be derived as MPT-3 type 0. When MPT_sub_split_type equals 10, the split type of the target block can be derived as MPT-3 type 1. And, when MPT_sub_split_type equals 11, the split type of the target block can be derived as MPT-3 type 2. Therefore, according to binarization method 1, when the split type of the target block corresponds to MPT-3 type 0, the binarized string indicating the syntax of the MPT structure of the target block can be indicated as 1100. When the separation type of the target block corresponds to MPT-3 type 1, the binarized string indicating the syntax of the MPT structure of the target block can be represented as 11010. When the separation type of the target block corresponds to MPT-3 type 2, the binarized string indicating the syntax of the MPT structure of the target block can be represented as 11011. Binarization method 1 can be used when both the proportion (or ratio) of blocks with MPT-2 separation type and the proportion of blocks with MPT-4 separation type are high within the input image. Therefore, compilation efficiency can be improved.
[0147] Additionally, referring to binarization method 2 in Table 3, it can be determined first whether to perform separation (or splitting) based on the MPT. More specifically, if the first value of the syntax of the information obtained regarding the MPT structure of the target block is equal to 0, the target block can be separated without using the MPT.
[0148] When separating a target block according to MPT, that is, when the first value of the syntax of the information about the MPT structure of the target block is not equal to 0, the separation type can first be determined as MPT-2 or MPT-4 based on the second value of the syntax of the information about the MPT structure of the target block. More specifically, when the second value of the syntax of the information about the MPT structure of the target block is equal to 0, the separation type of the target block can be determined as MPT-2 or MPT-4. Furthermore, when the second value of the syntax of the information about the MPT structure of the target block is not equal to 0, the separation type of the target block can be determined as MPT-3. More specifically, when the separation type of the target block is determined as MPT-2 or MPT-4, that is, when the second value of the syntax of the information about the MPT structure of the target block is equal to 0, MPT-2 and MPT-4 can be distinguished from each other based on the third value of the syntax of the information related to the MPT structure of the target block. More specifically, when the third value of the syntax of the information about the MPT structure of the target block is equal to 0, the separation type of the target block can be determined as MPT-2. Furthermore, when the third value of the syntax regarding the MPT structure information of the target block is equal to 1, the split type of the target block can be determined as MPT-4. Simultaneously, the syntax can indicate the aforementioned MPT_split_type. More specifically, according to binarization method 2, when MPT_split_type equals 100, the split type of the target block can be derived as MPT-2. When MPT_split_type equals 11, the split type of the target block can be derived as MPT-3. And when MPT_split_type equals 101, the split type of the target block can be derived as MPT-4.
[0149] Furthermore, when the split type of the target block is determined to be MPT-3, i.e., when MPT_split_type equals 11, an additional MPT_sub_split_type for the target block can be sent. Based on MPT_sub_split_type, the split type of the target block can be determined as MPT-3 type 0, MPT-3 type 1, or MPT-3 type 2. According to binarization method 2, when MPT_sub_split_type equals 0, the split type of the target block can be derived as MPT-3 type 0. When MPT_sub_split_type equals 10, the split type of the target block can be derived as MPT-3 type 1. And, when MPT_sub_split_type equals 11, the split type of the target block can be derived as MPT-3 type 2. Therefore, according to binarization method 2, when the split type of the target block corresponds to MPT-3 type 0, the binarized string indicating the syntax of the MPT structure of the target block can be indicated as 110. When the separation type of the target block corresponds to MPT-3 type 1, the binarized string indicating the syntax of the MPT structure of the target block can be indicated as 1110. When the separation type of the target block corresponds to MPT-3 type 2, the binarized string indicating the syntax of the MPT structure of the target block can be indicated as 1111. Binarization method 2 can be used when the proportion (or ratio) of blocks with the MPT-3 separation type in the input image is greater than the proportion of blocks with the MPT-2 separation type. Therefore, compilation efficiency can be improved.
[0150] Furthermore, referring to binarization method 3 in Table 3, it can be determined first whether to perform target block separation based on MPT. More specifically, if the first value of the syntax of the information obtained regarding the MPT structure of the target block is equal to 0, the target block can be separated without relying on MPT.
[0151] When separating a target block according to MPT, that is, when the first value of the syntax of the information obtained regarding the MPT structure of the target block is not equal to 0, it can be determined first based on the second value of the syntax of the information regarding the MPT structure of the target block whether the separation type corresponds to MPT-2. For example, when the second value of the syntax of the information obtained regarding the MPT structure of the target block is equal to 0, the separation type of the target block can be determined to be MPT-2.
[0152] If the separation type of the target block does not correspond to MPT-2, that is, if the second value of the syntax for obtaining information about the MPT structure of the target block is not equal to 0, the separation type of the target block can be determined based on the third value of the syntax for obtaining information about the MPT structure of the target block. For example, if the third value of the syntax for obtaining information about the MPT structure of the target block is equal to 0, the separation type of the target block can be determined to be MPT-3 type 0.
[0153] If the separation type of the target block does not correspond to MPT-3 type 0, that is, if the third value of the syntax for obtaining information about the MPT structure of the target block is not equal to 0, the separation type of the target block can be determined based on the fourth value of the syntax for obtaining information about the MPT structure of the target block. For example, if the fourth value of the syntax for obtaining information about the MPT structure of the target block is equal to 0, the separation type of the target block can be determined to be MPT-4.
[0154] When the separation type of the target block does not correspond to MPT-4, that is, when the fourth value of the syntax for obtaining information about the MPT structure of the target block is not equal to 0, the separation type of the target block can be determined to be either MPT-3 type 1 or MPT-3 type 2 based on the residual value of the syntax for obtaining information about the MPT structure of the target block. For example, if the residual value of the syntax for obtaining information about the MPT structure of the target block is equal to 10, the separation type of the target block can be determined to be MPT-3 type 1. And if the residual value of the syntax for obtaining information related to the MPT structure of the target block is equal to 11, the separation type of the target block can be determined to be MPT-3 type 2. When the proportion (or ratio) of blocks with the separation type of MPT-3 type 0 in the input image is higher than the proportion of blocks with the separation type of MPT-4, binarization method 3 can be used. Therefore, compilation efficiency can be improved.
[0155] Simultaneously, a binarization method indicating the separation type of the target block according to the MPT structure can be adaptively selected at the unit level, such as Sequence Parameter Set (SPS), Picture Parameter Set (PPS), slice, or block, and transmission can be performed at the unit level, such as SPS, PPS, slice, or block. Alternatively, a binarization method indicating the separation type of the target block according to the MPT structure can be adaptively derived at the unit level, such as slice or block.
[0156] Alternatively, among the above-mentioned slicing types, an MPT structure using only MPT-2, MPT-3 type 0, and MPT-4, but excluding MPT-3 type 1 and MPT-3 type 2, can be applied. In this case, the binary strings of the slicing type's MPT_slice_type and MPT_sub_slice_type can be derived as shown in the table below.
[0157] [Table 4]
[0158] Binarization method 4 Binarization method 5 Binarization method 6 MPT-2(5(a),5(b)) 0 10 10 MPT-3 type 0(5(c),5(f)) 10 0 11 MPT-4(5(i),5(j)) 11 11 0
[0159] Here, MPT-2 indicates the separation type based on how it separates (or divides) a block into two sub-blocks, as shown above. Figure 5 As shown and described in (a) and (b), MPT-3 type 0 indicates a separation type, according to which the block is separated (or divided) into 3 sub-blocks, such as... Figure 5 As shown and described in (c) and (f), MPT-3 type 0 indicates that the central sub-block has a larger size. Furthermore, MPT-4 indicates the separation type based on how it divides the block into four sub-blocks, as described above. Figure 5 As shown and described in (i) and (j).
[0160] Referring to binarization method 4 in Table 4, we can first determine whether the separation type of the target block corresponds to MPT-2. More specifically, if the first value of the syntax of the information obtained about the MPT structure of the target block is equal to 0, the separation type of the target block can be determined to be MPT-2.
[0161] When the split type of the target block does not correspond to MPT-2, that is, when the first value of the syntax regarding the MPT structure of the target block is not equal to 0, MPT-3 type 0 and MPT-4 can be distinguished from each other based on the second value of the syntax regarding the MPT structure of the target block. More specifically, when the second value of the syntax regarding the MPT structure of the target block is equal to 0, the split type of the target block can be determined as MPT-3 type 0. And, when the second value of the syntax regarding the MPT structure of the target block is equal to 1, the split type of the target block can be determined as MPT-4. Simultaneously, the syntax can indicate the aforementioned MPT_split_type. More specifically, according to binarization method 4, when MPT_split_type is equal to 0, the split type of the target block can be derived as MPT-2. When MPT_split_type is equal to 10, the split type of the target block can be derived as MPT-3 type 0. And, when MPT_split_type is equal to 11, the split type of the target block can be derived as MPT-4. When the proportion (or ratio) of blocks with separation type MPT-2 within the input image is high, binarization method 4 can be used. Therefore, compilation efficiency can be improved.
[0162] Additionally, referring to binarization method 5 in Table 4, it can be first determined whether the separation type of the target block corresponds to MPT-3 type 0. More specifically, if the first value of the syntax for the information obtained regarding the MPT structure of the target block is equal to 0, the separation type of the target block can be determined to be MPT-3 type 0.
[0163] When the split type of the target block does not correspond to MPT-3 type 0, that is, when the first value of the syntax regarding the MPT structure of the target block is not equal to 0, MPT-2 and MPT-4 can be distinguished from each other based on the second value of the syntax regarding the MPT structure of the target block. More specifically, when the second value of the syntax regarding the MPT structure of the target block is equal to 0, the split type of the target block can be determined as MPT-2. And, when the second value of the syntax regarding the MPT structure of the target block is equal to 1, the split type of the target block can be determined as MPT-4. Simultaneously, the syntax can indicate the aforementioned MPT_split_type. More specifically, according to binarization method 5, when MPT_split_type is equal to 0, the split type of the target block can be derived as MPT-3 type 0. When MPT_split_type is equal to 10, the split type of the target block can be derived as MPT-2. And, when MPT_split_type is equal to 11, the split type of the target block can be derived as MPT-4. When the proportion (or ratio) of blocks with MPT-3 type 0 separation type in the input image is high, binarization method 5 can be used. Therefore, compilation efficiency can be improved.
[0164] Additionally, referring to binarization method 6 in Table 4, it can be first determined whether the separation type of the target block corresponds to MPT-4. More specifically, if the first value of the syntax of the information obtained regarding the MPT structure of the target block is equal to 0, the separation type of the target block can be determined to be MPT-4.
[0165] When the split type of the target block does not correspond to MPT-4, that is, when the first value of the syntax regarding the MPT structure of the target block is not equal to 0, MPT-2 and MPT-3 type 0 can be distinguished from each other based on the second value of the syntax regarding the MPT structure of the target block. More specifically, when the second value of the syntax regarding the MPT structure of the target block is equal to 0, the split type of the target block can be determined as MPT-2. And, when the second value of the syntax regarding the MPT structure of the target block is equal to 1, the split type of the target block can be determined as MPT-3 type 0. Simultaneously, the syntax can indicate the aforementioned MPT_split_type. More specifically, according to binarization method 6, when MPT_split_type is equal to 0, the split type of the target block can be derived as MPT-4. When MPT_split_type is equal to 10, the split type of the target block can be derived as MPT-2. And, when MPT_split_type is equal to 11, the split type of the target block can be derived as MPT-3 type 0. When the proportion (or ratio) of blocks with separation type MPT-4 is high within the input image, binarization method 6 can be used. Therefore, compilation efficiency can be improved.
[0166] Simultaneously, a binarization method indicating the separation type of the target block according to the MPT structure can be adaptively selected at the unit level, such as Sequence Parameter Set (SPS), Picture Parameter Set (PPS), slice, or block, and transmission can be performed at the unit level, such as SPS, PPS, slice, or block. Alternatively, a binarization method indicating the separation type of the target block according to the MPT structure can be adaptively derived at the unit level, such as slice or block.
[0167] Alternatively, as another example, the binary strings for separating the MPT_slice_type and MPT_sub_slice_type types can be exported as shown in the table below.
[0168] [Table 5]
[0169] Binarization method 4 Binarization method 5 Binarization method 6 No separation 0 0 0 MPT-2(5(a),5(b)) 1 0 1 10 1 10 MPT-3 type 0(5(c),5(f)) 1 10 1 0 1 11 MPT-4(5(i),5(j)) 111 111 10
[0170] Here, MPT-2 indicates the separation type based on how it splits (or divides) a block into two sub-blocks, as shown above. Figure 5 As shown and described in (a) and (b), MPT-3 type 0 indicates a separation type, according to which the block is separated (or divided) into 3 sub-blocks, as above. Figure 5 As shown in (c) and (f), MPT-3 type 0 indicates that the central sub-block has a larger size. Furthermore, MPT-4 indicates a separation type that divides the block into four sub-blocks, as described above. Figure 5 As shown and described in (i) and (j).
[0171] Referring to binarization method 4 in Table 5, it can be determined first whether to perform separation (or splitting) based on the MPT. More specifically, if the first value of the syntax of the information obtained about the MPT structure of the target block is equal to 0, the target block can be split without relying on the MPT.
[0172] When separating a target block according to MPT, that is, when the first value of the syntax of the information obtained about the MPT structure of the target block is not equal to 0, it can be determined first whether the separation type corresponds to MPT-2 based on the second value of the syntax of the information about the MPT structure of the target block. More specifically, when the second value of the syntax of the obtained information about the MPT structure of the target block is equal to 0, the separation type of the target block can be determined to be MPT-2.
[0173] When the split type of the target block does not correspond to MPT-2, that is, when the second value of the syntax of the information about the MPT structure of the target block is not equal to 0, MPT-3 type 0 and MPT-4 can be distinguished from each other based on the third value of the syntax of the information about the MPT structure of the target block. More specifically, when the third value of the syntax of the information about the MPT structure of the target block is equal to 0, the split type of the target block can be determined as MPT-3 type 0. And, when the third value of the syntax of the information about the MPT structure of the target block is equal to 1, the split type of the target block can be determined as MPT-4. At the same time, this syntax can indicate the aforementioned MPT_split_type. More specifically, according to binarization method 4, when MPT_split_type is equal to 10, the split type of the target block can be derived as MPT-2. When MPT_split_type is equal to 110, the split type of the target block can be derived as MPT-3 type 0. And, when MPT_split_type is equal to 111, the split type of the target block can be derived as MPT-4. When the proportion (or ratio) of blocks with separation type MPT-2 within the input image is high, binarization method 4 can be used. Therefore, compilation efficiency can be improved.
[0174] Referring to binarization method 5 in Table 5, it can be first determined whether to perform separation (or segmentation) based on the MPT. More specifically, if the first value of the syntax of the information obtained about the MPT structure of the target block is equal to 0, the target block can be separated without using the MPT.
[0175] When separating a target block according to MPT, that is, when the first value of the syntax of the information about the MPT structure of the target block is not equal to 0, the separation type of the target block can be determined based on the second value of the syntax of the obtained information about the MPT structure of the target block. More specifically, when the second value of the syntax of the obtained information about the MPT structure of the target block is equal to 0, the separation type of the target block can be determined to be MPT-3 type 0.
[0176] When the split type of the target block does not correspond to MPT-3 type 0, that is, when the second value of the syntax regarding the MPT structure information of the target block is not equal to 0, MPT-2 and MPT-4 can be distinguished from each other based on the third value of the syntax regarding the MPT structure information of the target block. More specifically, when the third value of the syntax regarding the MPT structure information of the target block is equal to 0, the split type of the target block can be determined as MPT-2. And, when the third value of the syntax regarding the MPT structure information of the target block is equal to 1, the split type of the target block can be determined as MPT-4. Simultaneously, the syntax can indicate the aforementioned MPT_split_type. More specifically, according to binarization method 5, when MPT_split_type is equal to 10, the split type of the target block can be derived as MPT-3 type 0. When MPT_split_type is equal to 110, the split type of the target block can be derived as MPT-2. And, when MPT_split_type is equal to 111, the split type of the target block can be derived as MPT-4. When the proportion (or ratio) of blocks with MPT-3 type 0 separation type in the input image is high, binarization method 5 can be used. Therefore, compilation efficiency can be improved.
[0177] Efficiency can be enhanced.
[0178] Referring to binarization method 6 in Table 5, it can be first determined whether to perform separation (or splitting) based on the MPT. More specifically, if the first value of the syntax of the information obtained about the MPT structure of the target block is equal to 0, the target block can be split without relying on the MPT.
[0179] When separating a target block according to MPT, that is, when the first value of the syntax of the information about the MPT structure of the target block is not equal to 0, based on the second value of the syntax of the obtained information about the MPT structure of the target block, it can first be determined whether the separation type of the target block corresponds to MPT-4. More specifically, when the second value of the syntax of the obtained information about the MPT structure of the target block is equal to 0, the separation type of the target block can be determined to be MPT-4.
[0180] When the split type of the target block does not correspond to MPT-4, that is, when the second value of the syntax for obtaining information about the MPT structure of the target block is not equal to 0, MPT-2 and MPT-3 type 0 can be distinguished from each other by the third value of the syntax based on the information about the MPT structure of the target block. More specifically, when the third value of the syntax for obtaining information about the MPT structure of the target block is equal to 0, the split type of the target block can be determined as MPT-2. And when the third value of the syntax for obtaining information about the MPT structure of the target block is equal to 1, the split type of the target block can be determined as MPT-3 type 0. At the same time, the syntax can indicate the aforementioned MPT_split_type. More specifically, according to binarization method 6, when MPT_split_type is equal to 10, the split type of the target block can be derived as MPT-4. When MPT_split_type is equal to 110, the split type of the target block can be derived as MPT-2. Furthermore, when MPT_split_type equals 111, the split type of the target block can be exported as MPT-3 type 0. When the proportion (or ratio) of blocks with split type MPT-4 within the input image is high, binarization method 6 can be used. Therefore, compilation efficiency can be improved.
[0181] Simultaneously, a binarization method indicating the separation type of the target block according to the MPT structure can be adaptively selected at the unit level, such as Sequence Parameter Set (SPS), Picture Parameter Set (PPS), slice, or block, and transmission can be performed at the unit level, such as SPS, PPS, slice, or block. Alternatively, a binarization method indicating the separation type of the target block according to the MPT structure can be adaptively derived at the unit level, such as slice or block.
[0182] Alternatively, among the above-described slicing types, an MPT structure using only MPT-2 and MPT-3 type 0 can be applied. In this case, the binary string for the MPT_slice_type used for the slicing type can be derived as shown in the table below.
[0183] [Table 6]
[0184] Binarization method 7 No separation 0 MPT-2(3(a),3(b)) 1 0 MPT-3 type 0(3(c),3(f)) 1 1
[0185] Here, MPT-2 indicates the separation type based on how it splits (or divides) a block into two sub-blocks, as shown above. Figure 5 As shown and described in (a) and (b). Furthermore, MPT-3 type 0 indicates a separation type, according to which the block is separated (or divided) into 3 sub-blocks, as above. Figure 5As shown and described in (c) and (f), and here, MPT-3 type 0 indicates a separation type, where the central sub-block corresponds to a sub-block with a larger size.
[0186] Referring to binarization method 7 in Table 6, it can be first determined whether to perform separation (or splitting) based on the MPT. More specifically, if the first value of the syntax of the acquired information about the MPT structure of the target block is equal to 0, the separation type of the target block indicates that MPT separation (or splitting) should not be performed.
[0187] If the separation type of the target block does not correspond to MPT separation, that is, if the first value of the syntax information regarding the MPT structure of the target block is not equal to 0, the separation type of the target block can be determined first, based on the second value of the syntax information regarding the MPT structure of the target block, whether it corresponds to MPT-2 or MPT-3 type 0. More specifically, if the second value of the syntax information regarding the MPT structure of the target block is equal to 0, the separation type of the target block can be determined to be MPT-2.
[0188] If the split type of the target block does not correspond to MPT-2, that is, if the second value of the syntax for obtaining information about the MPT structure of the target block is not equal to 0, the type of the split target block can be determined to be MPT-3 type 0. Meanwhile, the syntax can indicate the aforementioned MPT_split_type.
[0189] More specifically, according to binarization method 7 in Table 6, when MPT_split_type equals 10, the split type of the target block can be exported as MPT-2. When MPT_split_type equals 11, the split type of the target block can be exported as MPT-3 type 0.
[0190] Figure 8 This is an overall diagram of a video coding method performed by an encoding device according to the present invention. Figure 8 The method shown can be used by... Figure 1 The encoding device disclosed in the document is used to execute it. More specifically, for example, Figure 8 Steps S800 to S810 can be performed by the image segmenter of the encoding device, step S820 can be performed by the predictor of the encoding device, and step S830 can be performed by the entropy encoder of the encoding device.
[0191] The encoding device separates (or divides) the first target block into first sub-blocks (S800). The encoding device can separate the first target block into first sub-blocks according to a quadtree (QT) structure. More specifically, for example, the encoding device can separate the first target block into four first sub-blocks. Each first sub-block may have dimensions corresponding to half the height and half the width of the target block. Simultaneously, the encoding device can generate a quadtree (QT) separation flag corresponding to the first target block. The QT separation flag indicates whether to separate the target block into sub-blocks with sizes corresponding to half the height and half the width of the target block.
[0192] The encoding device separates the second target block, which is one of the first sub-blocks, into a second sub-block (S810). The second target block can be separated without considering the QT structure. If the second target block is not separated according to the QT structure, the encoding device can separate the second target block into a second sub-block. The second sub-block can correspond to a non-square block.
[0193] The second target block can be separated into second sub-blocks based on a Multiple Partition Tree (MPT) structure. In this case, the second target block can be separated into second sub-blocks, each corresponding to multiple non-square blocks of varying shapes. The separation can be done vertically or horizontally.
[0194] For example, according to the MPT separation structure, the second target block can be separated into 2, 3, or 4 second sub-blocks along the vertical or horizontal direction. More specifically, when the size of the second target block corresponds to 2N×2N, the second target block can be separated into 2 N×2N second sub-blocks, 2 2N×N second sub-blocks, 1 N×2N second sub-block and 2 N / 2×2N second sub-blocks, 1 2N×N second sub-block and 2 2N×N / 2 second sub-blocks, 4 N / 2×2N second sub-blocks, or 4 2N×N / 2 second sub-blocks. Here, when the second target block is separated into 1 N×2N second sub-block and 2 N / 2×2N second sub-blocks, the N×2N second sub-block can be derived as a left-side second sub-block, a center second sub-block, or a right-side second sub-block. Furthermore, when the second target block is separated into one 2N×N second sub-block and two 2N×N / 2 second sub-blocks, the 2N×N second sub-block can be exported as an upper second sub-block, a central second sub-block, or a lower second sub-block. Simultaneously, the encoding device can generate MPT separation information indicating the MPT separation type of the second target block. The number of bits in the binarized string indicating the MPT separation information can vary based on the separation type of the second target block. For example, the binarized string of MPT separation information indicating the separation type most frequently applied to the block within the input image (or target image) can be exported as a binarized string with the minimum number of bits among the binarized strings indicating the separation type. As shown in Table 2 or Table 3 above, the binarized string of MPT separation information derived based on the separation type can be exported. For example, when the second target block is separated into two second sub-blocks along a vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 0. When the second target block is separated into three second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 100, where the second sub-block of size N×2N or 2N×N corresponds to the left or top second sub-block. When the second target block is separated into three second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 1010, where the second sub-block of size N×2N or 2N×N corresponds to the central second sub-block. When the second target block is separated into three second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 1011, where the second sub-block of size N×2N or 2N×N corresponds to the right or bottom second sub-block. When the second target block is separated into four second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 11.Alternatively, when the second target block is separated into two second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 00. When the second target block is separated into three second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 10, where the second sub-block of size N×2N or 2N×N corresponds to the left or top second sub-block. When the second target block is separated into three second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 110, where the second sub-block of size N×2N or 2N×N corresponds to the central second sub-block. When the second target block is separated into three second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 111, where the second sub-block of size N×2N or 2N×N corresponds to the right or bottom second sub-block. When the second target block is separated into four second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 01. Alternatively, when the second target block is separated into two second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 0. When the second target block is separated into three second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 10, where the second sub-block of size N×2N or 2N×N corresponds to the left or top second sub-block. When the second target block is separated into three second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 1110, where the second sub-block of size N×2N or 2N×N corresponds to the central second sub-block. When the second target block is separated into three second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 1111, where the second sub-block of size N×2N or 2N×N corresponds to the right or bottom second sub-block. When the second target block is separated into four second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 110. Alternatively, if the second target block is not separated according to MPT, the binarized string of the MPT separation information can be equal to 0. If the second target block is separated into two second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 10. If the second target block is separated into three second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 1100, where the second sub-block of size N×2N or 2N×N corresponds to the left or top second sub-block.When the second target block is separated into three second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 11010, where the second sub-block of size N×2N or 2N×N corresponds to the central second sub-block. When the second target block is separated into three second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 11011, where the second sub-block of size N×2N or 2N×N corresponds to the right or bottom second sub-block. When the second target block is separated into four second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 111. Alternatively, when the second target block is not separated according to MPT, the binarized string of the MPT separation information can be equal to 0. When the second target block is separated into two second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 100. When the second target block is separated into three second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 110, where the second sub-block of size N×2N or 2N×N corresponds to the left or top second sub-block. When the second target block is separated into three second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 1110, where the second sub-block of size N×2N or 2N×N corresponds to the central second sub-block. When the second target block is separated into three second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 1111, where the second sub-block of size N×2N or 2N×N corresponds to the right or bottom second sub-block. When the second target block is separated into four second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 101. Alternatively, when the second target block is not separated according to MPT, the binarized string of the MPT separation information can be equal to 0. When the second target block is separated into two second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 10. When the second target block is separated into three second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 110, where the N×2N or 2N×N second sub-block corresponds to the left or top second sub-block. When the second target block is separated into three second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 11110, where the N×2N or 2N×N second sub-block corresponds to the central second sub-block. When the second target block is separated into three second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 11111, where the N×2N or 2N×N second sub-block corresponds to the right or bottom second sub-block.When the second target block is separated into four second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 1110.
[0195] Alternatively, as another example, according to the MPT separation structure, the second target block can be separated into 2, 3, or 4 second sub-blocks along the vertical or horizontal direction. More specifically, when the size of the second target block corresponds to 2N×2N, the second target block can be separated into 2 N×2N second sub-blocks, 2 2N×N second sub-blocks, 1 N×2N second sub-block and 2 N / 2×2N second sub-blocks, 1 2N×N second sub-block and 2 2N×N / 2 second sub-blocks, 4 N / 2×2N second sub-blocks, or 4 2N×N / 2 second sub-blocks. Here, in the case where the second target block is separated into 1 N×2N second sub-block and 2 N / 2×2N second sub-blocks, the N×2N second sub-block can be derived as the central second sub-block. Furthermore, when the second target block is separated into one 2N×N second sub-block and two 2N×N / 2 second sub-blocks, the 2N×N second sub-block can be derived as the central second sub-block. Simultaneously, the encoding device can generate MPT separation information indicating the MPT separation type of the second target block. The number of bits indicating the MPT separation information in the binarized string can vary based on the separation type of the second target block. In this case, for example, as shown in Table 4 or Table 5 above, a binarized string of MPT separation information derived based on the separation type can be derived. For example, when the second target block is separated into two second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 0. When the second target block is separated into three second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 10. When the second target block is separated into four second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 11. Alternatively, if the second target block is separated into two second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 10. If the second target block is separated into three second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 0. If the second target block is separated into four second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 11. Alternatively, if the second target block is separated into two second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 10. If the second target block is separated into three second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 11. If the second target block is separated into four second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 0.Alternatively, when the second target block is not separated according to MPT, the binarized string of the MPT separation information can be equal to 0. When the second target block is separated into two second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 10. When the second target block is separated into three second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 110. When the second target block is separated into four second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 111. Alternatively, when the second target block is not separated according to MPT, the binarized string of the MPT separation information can be equal to 0. When the second target block is separated into two second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 110. When the second target block is separated into three second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 10. When the second target block is separated into four second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 111. Alternatively, when the second target block is not separated according to MPT, the binarized string of the MPT separation information can be equal to 0. When the second target block is separated into two second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 110. When the second target block is separated into three second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 111. When the second target block is separated into four second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 10.
[0196] Alternatively, as another example, according to the MPT separation structure, the second target block can be separated into 2 or 3 second sub-blocks along the vertical or horizontal direction. More specifically, based on the MPT separation information, the second target block can be separated into 2 or 3 second sub-blocks along the vertical or horizontal direction. Here, when the size of the second target block corresponds to 2N×2N and the second target block is separated into 2 second sub-blocks along the vertical direction, the second target block can be separated into second sub-blocks of size N×2N. Furthermore, when the size of the second target block corresponds to 2N×2N and the second target block is separated into 2 second sub-blocks along the horizontal direction, the second target block can be separated into 2N×N second sub-blocks. And, when the size of the second target block corresponds to 2N×2N and the second target block is separated into 3 second sub-blocks along the vertical direction, the second target block can be separated into a left second sub-block of size N / 2×2N, a center second sub-block of size N×2N, and a right second sub-block of size N / 2×2N. Furthermore, when the size of the second target block corresponds to 2N×2N and the second target block is divided into 3 second sub-blocks along the horizontal direction, the second target block can be divided into an upper second sub-block of size 2N×N / 2, a central second sub-block of size 2N×N, and a lower second sub-block of size 2N×N / 2. Simultaneously, the encoding device can generate MPT separation information indicating the MPT separation type of the second target block. The number of bits indicating the MPT separation information in the binarized string can vary depending on the separation type of the second target block. In this case, for example, the binarized string of the MPT separation information derived based on the separation type can be derived as shown in Table 6 above. For example, when the second target block is divided into 2 second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 10. And when the second target block is divided into 3 second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 11. Additionally, when the second target block is not separated according to MPT, the binarized string of the MPT separation information can be equal to 0.
[0197] The encoding device decodes the second sub-block (S820). The encoding device can perform processes such as transforms and intra / intermediate predictions on the second sub-block, and can generate reconstructed samples corresponding to the second sub-block. Then, the encoding device can generate a reconstructed image based on the generated reconstructed samples.
[0198] The encoding device generates first separation information for a first target block and MPT separation information for a second target block, and encodes and outputs the generated information (S830). The encoding device can encode the first separation information and the MPT separation information corresponding to the second target block, and can output the encoded information via a bit stream, which can be stored in a recording medium (non-transitory computer-readable medium). The encoding device can generate the first separation information corresponding to the first target block. The first separation information may include a quadtree (QT) separation flag corresponding to the first target block. The QT separation flag can indicate whether to separate the target block into sub-blocks with sizes corresponding to half the height and half the width of the target block. Additionally, the encoding device can generate second separation information corresponding to the second target block, and the second separation information may include a QT separation flag corresponding to the second target block.
[0199] Furthermore, the encoding device can generate MPT separation information corresponding to the second target block. Simultaneously, MPT separation information can be generated when the second target block is separated based on QT separation information corresponding to it. More specifically, MPT separation information can be generated without separating the second target block according to the QT structure.
[0200] For example, MPT separation information may include Multi-Segment Tree (MPT) separation type information and MPT separation direction information corresponding to the second target block. The MPT separation type information may indicate the number of second sub-blocks into which the second target block is separated. Furthermore, the MPT separation direction information may indicate the separation direction of the second target block. More specifically, when the value of the MPT separation type information is equal to 0, it indicates that the second target block has not been separated. When the value of the MPT separation type information is equal to 1, it indicates that the number of second sub-blocks is equal to 2. When the value of the MPT separation type information is equal to 2, it indicates that the number of second sub-blocks is equal to 3. And when the value of the MPT separation type information is equal to 3, it indicates that the number of second sub-blocks is equal to 4. Additionally, when the value of the MPT separation direction information is equal to 0, it indicates that the separation direction of the second target block corresponds to the horizontal direction. And when the value of the MPT separation direction information is equal to 1, it indicates that the separation direction of the second target block corresponds to the vertical direction.
[0201] Furthermore, when the number of second sub-blocks indicated by the MPT separation type information is equal to 3 and the separation direction of the second target block indicated by the MPT separation direction information corresponds to the vertical direction, the MPT separation information may include MPT sub-separation type information corresponding to the second target block. When the number of second sub-blocks indicated by the MPT separation type information is equal to 3 and the separation direction of the second target block indicated by the MPT separation direction information corresponds to the vertical direction, it can indicate whether the separation type of the second target block corresponds to type 0, type 1, or type 2. More specifically, when the value of the MPT sub-separation type information is equal to 0, the MPT sub-separation type information can indicate type 0. When the value of the MPT sub-separation type information is equal to 1, the MPT sub-separation type information can indicate type 1. When the value of the MPT sub-separation type information is equal to 2, the MPT sub-separation type information can indicate type 2. When the MPT sub-separation type information indicates type 0, the leftmost second sub-block within the second sub-block can be exported as an N×2N size second sub-block. When the MPT sub-separation type information indicates type 1, the central second sub-block within the second sub-block can be exported as an N×2N size second sub-block. In the case of MPT sub-separation type information indicating type 2, the second sub-block on the right can be exported as a second sub-block of size N×2N in the second sub-block.
[0202] Furthermore, when the number of second sub-blocks indicated by the MPT separation type information is equal to 3 and the separation direction of the second target block indicated by the MPT separation direction information corresponds to the horizontal direction, the MPT separation information may include MPT sub-separation type information corresponding to the second target block. When the number of second sub-blocks indicated by the MPT separation type information is equal to 3 and the separation direction of the second target block indicated by the MPT separation direction information corresponds to the horizontal direction, the separation type of the second target block can be indicated as type 0, type 1, or type 2. More specifically, when the value of the MPT sub-separation type information is equal to 0, the MPT sub-separation type information can indicate type 0. When the value of the MPT sub-separation type information is equal to 1, the MPT sub-separation type information can indicate type 1. When the value of the MPT sub-separation type information is equal to 2, the MPT sub-separation type information can indicate type 2. When the MPT sub-separation type information indicates type 0, the upper second sub-block can be derived as a 2N×N size second sub-block within the second sub-block. When the MPT sub-separation type information indicates type 1, the central second sub-block can be derived as a 2N×N size second sub-block within the second sub-block. In the case of MPT sub-separation type information indicating type 2, the lower second sub-block can be exported as a second sub-block of size 2N×N within the second sub-block.
[0203] Additionally, as another example, the MPT separation information may include a Multi-Partition Tree (MPT) separation flag for the second target block. The MPT separation flag may indicate whether the second target block is separated into second sub-blocks corresponding to non-square blocks. More specifically, when the MPT separation flag value is 0, it indicates that the second target block has not been separated. And, when the MPT separation flag value is 1, it indicates that the second target block is separated into second sub-blocks according to the MPT structure. More specifically, when the MPT separation flag value is 1, it indicates that the second target block is separated into second sub-blocks corresponding to non-square blocks.
[0204] Additionally, when the MPT separation flag value is equal to 1, the MPT separation information can include MPT separation direction information and MPT separation type information for the second target block. The MPT separation direction information indicates the separation direction of the second target block. Furthermore, the MPT separation type information indicates the number of second sub-blocks into which the second target block is separated. More specifically, when the MPT separation direction information value is equal to 0, this indicates that the separation direction of the second target block corresponds to the horizontal direction. And when the MPT separation direction information value is equal to 1, this indicates that the separation direction of the second target block corresponds to the vertical direction. Furthermore, when the MPT separation type information value is equal to 0, the MPT separation type information indicates that the number of second sub-blocks is equal to 2. When the MPT separation type information value is equal to 1, the MPT separation type information indicates that the number of second sub-blocks is equal to 3. And when the MPT separation type information value is equal to 2, the MPT separation type information indicates that the number of second sub-blocks is equal to 4.
[0205] Furthermore, when the number of second sub-blocks indicated by the MPT separation type information is equal to 3 and the separation direction of the second target block indicated by the MPT separation direction information corresponds to the vertical direction, the MPT separation information may include MPT sub-separation type information corresponding to the second target block. When the number of second sub-blocks indicated by the MPT separation type information is equal to 3 and the separation direction of the second target block indicated by the MPT separation direction information corresponds to the vertical direction, it can indicate whether the separation type of the second target block corresponds to type 0, type 1, or type 2. More specifically, when the value of the MPT sub-separation type information is equal to 0, the MPT sub-separation type information can indicate type 0. When the value of the MPT sub-separation type information is equal to 1, the MPT sub-separation type information can indicate type 1. When the value of the MPT sub-separation type information is equal to 2, the MPT sub-separation type information can indicate type 2. When the MPT sub-separation type information indicates type 0, the left-hand second sub-block can be derived as an N×2N size second sub-block within the second sub-block. When the MPT sub-separation type information indicates type 1, the center second sub-block can be derived as an N×2N size second sub-block within the second sub-block. In the case of MPT sub-separation type information indicating type 2, the second sub-block on the right can be exported as a second sub-block of size N×2N in the second sub-block.
[0206] Furthermore, when the number of second sub-blocks indicated by the MPT separation type information is equal to 3 and the separation direction of the second target block indicated by the MPT separation direction information corresponds to the horizontal direction, the MPT separation information may include MPT sub-separation type information corresponding to the second target block. When the number of second sub-blocks indicated by the MPT separation type information is equal to 3 and the separation direction of the second target block indicated by the MPT separation direction information corresponds to the horizontal direction, the separation type of the second target block can be indicated as type 0, type 1, or type 2. More specifically, when the value of the MPT sub-separation type information is equal to 0, the MPT sub-separation type information can indicate type 0. When the value of the MPT sub-separation type information is equal to 1, the MPT sub-separation type information can indicate type 1. When the value of the MPT sub-separation type information is equal to 2, the MPT sub-separation type information can indicate type 2. When the MPT sub-separation type information indicates type 0, the upper second sub-block can be derived as a 2N×N size second sub-block within the second sub-block. When the MPT sub-separation type information indicates type 1, the central second sub-block can be derived as a 2N×N size second sub-block within the second sub-block. In the case of MPT sub-separation type information indicating type 2, the lower second sub-block can be exported as a second sub-block of size 2N×N in the second sub-block.
[0207] Meanwhile, MPT separation information can be sent via signals such as Sequence Parameter Set (SPS), Picture Parameter Set (PPS), or slice header.
[0208] Furthermore, the number of bits in the binarized string indicating MPT separation information can vary based on the separation type of the second target block. For example, the binarized string indicating the MPT separation information that most frequently applies to the block among the separation types within the input image (or target image) can be derived as the binarized string with the smallest number of bits among the binarized strings indicating the separation type. The binarized string of MPT separation information derived based on the separation type can be derived as shown in Tables 2, 3, 4, 5, or 6 above. Simultaneously, the bitstream including the MPT separation information can be transmitted to the decoding device via a network or (digital) storage medium. Here, the network can include broadcast networks and / or communication networks, etc., and the digital storage medium can include various storage media such as USB, SD, CD, DVD, Blu-ray, HDD, SSD, etc.
[0209] Figure 9 This is an overall diagram of a video decoding method performed by a decoding device according to the present invention. Figure 9 The method shown can be derived from Figure 2 The decoding device is publicly available. More specifically, for example, steps S900 and S920 can be executed by the entropy decoder of the decoding device, steps S910 and S930 can be executed by the image segmenter of the decoding device, and step S940 can be executed by the predictor of the decoding device.
[0210] The decoding device acquires first separation information for the first target block via a bit stream (S900). The decoding device can acquire the first separation information corresponding to the first target block via the bit stream. The first information may include a quadtree (QT) separation flag corresponding to the first target block. The QT separation flag can indicate whether to separate the target block into sub-blocks with sizes corresponding to half the height and half the width of the target block.
[0211] When the first separation information indicates that the first target block has been separated, the decoding device separates the first target block into first sub-blocks (S910). If the QT separation flag included in the first separation information indicates that the first target block is being separated, the decoding device can separate the first target block into first sub-blocks. For example, the first target block can be separated into four first sub-blocks, and each first sub-block can correspond to a sub-block with a size corresponding to half the height and half the width of the target block.
[0212] The decoding device acquires the MPT separation information of the second target block, which is one of the first sub-blocks of the first target block (S920). The decoding device can acquire the MPT separation information of the second target block through a bitstream. Furthermore, the MPT separation information can be transmitted via signals such as the Sequence Parameter Set (SPS), Picture Parameter Set (PPS), or slice header.
[0213] The decoding device separates the second target block into second sub-blocks based on MPT separation information (S930). The decoding device can separate the second target block into second sub-blocks according to a Multiple Partition Tree (MPT) separation type derived from the MPT separation information. Simultaneously, second separation information corresponding to the second target block can be obtained via the bitstream, and the second target block can be separated into second sub-blocks based on the MPT separation information even if it is not separated based on the second separation information corresponding to the second target block. More specifically, the second separation information may include a QT separation flag for the second target block. MPT separation information can be obtained when the QT separation flag corresponding to the second target block indicates that the second target block has not been separated into sub-blocks with sizes corresponding to half the height and half the width of the second target block. More specifically, MPT separation information can be obtained even if the second target block is not separated based on the QT separation flag corresponding to the second target block.
[0214] For example, the second target block can be separated into 2, 3, or 4 second sub-blocks along the vertical or horizontal direction based on MPT separation information. More specifically, when the size of the second target block corresponds to 2N×2N, the second target block can be separated into 2 N×2N second sub-blocks, 2 2N×N second sub-blocks, 1 N×2N second sub-block and 2 N / 2×2N second sub-blocks, 1 2N×N second sub-block and 2 2N×N / 2 second sub-blocks, 4 N / 2×2N second sub-blocks, or 4 2N×N / 2 second sub-blocks. Here, when the second target block is separated into 1 N×2N second sub-block and 2 N / 2×2N second sub-blocks, the N×2N second sub-block can be derived as the left-hand second sub-block, the center second sub-block, or the right-hand second sub-block. Furthermore, when the second target block is separated into one 2N×N second sub-block and two 2N×N / 2 second sub-blocks, the 2N×N second sub-block can be exported as the upper second sub-block, the center second sub-block, or the lower second sub-block. Simultaneously, the number of bits in the binarized string indicating the MPT separation information can vary based on the separation type of the second target block. For example, the binarized string of the MPT separation information indicating the separation type most frequently applied to the block within the input image (or target image) can be the binarized string with the smallest number of bits among the binarized strings indicating the separation type. As shown in Table 2 or Table 3 above, the binarized string of the MPT separation information derived based on the separation type can be exported. For example, when the second target block is separated into two second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 0. When the second target block is separated into three second sub-blocks along a vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 100, where the second sub-block of size N×2N or 2N×N corresponds to the left or top second sub-block. When the second target block is separated into three second sub-blocks along a vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 1010, where the second sub-block of size N×2N or 2N×N corresponds to the central second sub-block. When the second target block is separated into three second sub-blocks along a vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 1011, where the second sub-block of size N×2N or 2N×N corresponds to the right or bottom second sub-block. When the second target block is separated into four second sub-blocks along a vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 11. Alternatively, when the second target block is separated into two second sub-blocks along a vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 00.When the second target block is separated into three second sub-blocks along a vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 10, where the second sub-block of size N×2N or 2N×N corresponds to the left or top second sub-block. When the second target block is separated into three second sub-blocks along a vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 110, where the second sub-block of size N×2N or 2N×N corresponds to the central second sub-block. When the second target block is separated into three second sub-blocks along a vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 111, where the second sub-block of size N×2N or 2N×N corresponds to the right or bottom second sub-block. When the second target block is separated into four second sub-blocks along a vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 01. Alternatively, when the second target block is separated into two second sub-blocks along a vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 0. When the second target block is separated into three second sub-blocks along a vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 10, where the second sub-block of size N×2N or 2N×N corresponds to the left or top second sub-block. When the second target block is separated into three second sub-blocks along a vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 1110, where the second sub-block of size N×2N or 2N×N corresponds to the central second sub-block. When the second target block is separated into three second sub-blocks along a vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 1111, where the second sub-block of size N×2N or 2N×N corresponds to the right or bottom second sub-block. When the second target block is separated into four second sub-blocks along a vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 110. Alternatively, when the second target block is not separated according to MPT, the binarized string of the MPT separation information can be equal to 0. When the second target block is separated into two second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 10. When the second target block is separated into three second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 1100, where the N×2N or 2N×N second sub-block corresponds to the left or top second sub-block. When the second target block is separated into three second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 11010, where the N×2N or 2N×N second sub-block corresponds to the central second sub-block.When the second target block is separated into three second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 11011, where the second sub-block of size N×2N or 2N×N corresponds to the right or bottom second sub-block. When the second target block is separated into four second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 111. Alternatively, when the second target block is not separated according to MPT, the binarized string of the MPT separation information can be equal to 0. When the second target block is separated into two second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 100. When the second target block is separated into three second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 110, where the second sub-block of size N×2N or 2N×N corresponds to the left or top second sub-block. When the second target block is separated into three second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 1110, where the second sub-block of size N×2N or 2N×N corresponds to the central second sub-block. When the second target block is separated into three second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 1111, where the second sub-block of size N×2N or 2N×N corresponds to the right or bottom second sub-block. When the second target block is separated into four second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 101. Alternatively, when the second target block is not separated according to MPT, the binarized string of the MPT separation information can be equal to 0. When the second target block is separated into two second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 10. When the second target block is separated into three second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 110, where the second sub-block of size N×2N or 2N×N corresponds to the left or top second sub-block. When the second target block is separated into three second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 11110, where the second sub-block of size N×2N or 2N×N corresponds to the central second sub-block. When the second target block is separated into three second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 11111, where the second sub-block of size N×2N or 2N×N corresponds to the right or bottom second sub-block. When the second target block is separated into four second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 1110.
[0215] Alternatively, as another example, according to the MPT separation structure, the second target block can be separated into 2, 3, or 4 second sub-blocks along the vertical or horizontal direction. More specifically, when the size of the second target block corresponds to 2N×2N, the second target block can be separated into 2 N×2N second sub-blocks, 2 2N×N second sub-blocks, 1 N×2N second sub-block and 2 N / 2×2N second sub-blocks, 1 2N×N second sub-block and 2 2N×N / 2 second sub-blocks, 4 N / 2×2N second sub-blocks, or 4 2N×N / 2 second sub-blocks. Here, in the case where the second target block is separated into 1 N×2N second sub-block and 2 N / 2×2N second sub-blocks, the N×2N second sub-block can be derived as the central second sub-block. Furthermore, when the second target block is separated into one 2N×N second sub-block and two 2N×N / 2 second sub-blocks, the 2N×N second sub-block can be derived as the central second sub-block. Simultaneously, the number of bits in the binarized string indicating the MPT separation information can vary based on the separation type of the second target block. In this case, for example, as shown in Table 4 or Table 5 above, the binarized string of the MPT separation information derived based on the separation type can be derived. For example, when the second target block is separated into two second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 0. When the second target block is separated into three second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 10. When the second target block is separated into four second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 11. Alternatively, when the second target block is separated into two second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 10. When the second target block is separated into three second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 0. When the second target block is separated into four second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 11. Alternatively, when the second target block is separated into two second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 10. When the second target block is separated into three second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 11. When the second target block is separated into four second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 0. Alternatively, when the second target block is not separated according to MPT, the binarized string of the MPT separation information can be equal to 0.When the second target block is separated into two second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 10. When the second target block is separated into three second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 110. When the second target block is separated into four second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 111. Alternatively, when the second target block is not separated according to MPT, the binarized string of the MPT separation information can be equal to 0. When the second target block is separated into two second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 110. When the second target block is separated into three second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 10. When the second target block is separated into four second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 111. Alternatively, if the second target block is not separated according to MPT, the binarized string of the MPT separation information can be equal to 0. If the second target block is separated into two second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 110. If the second target block is separated into three second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 111. If the second target block is separated into four second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 10.
[0216] Alternatively, as another example, the second target block can be separated into 2 or 3 second sub-blocks along the vertical or horizontal direction based on the MPT separation information. More specifically, based on the MPT separation information, the second target block can be separated into 2 or 3 second sub-blocks along the vertical or horizontal direction. Here, when the size of the second target block corresponds to 2N×2N and the second target block is separated into 2 second sub-blocks along the vertical direction, the second target block can be separated into second sub-blocks of size N×2N. Furthermore, when the size of the second target block corresponds to 2N×2N and the second target block is separated into 2 second sub-blocks along the horizontal direction, the second target block can be separated into second sub-blocks of size 2N×N. And, when the size of the second target block corresponds to 2N×2N and the second target block is separated into 3 second sub-blocks along the vertical direction, the second target block can be separated into a left second sub-block of size N / 2×2N, a center second sub-block of size N×2N, and a right second sub-block of size N / 2×2N. Furthermore, when the size of the second target block corresponds to 2N×2N and the second target block is divided into 3 second sub-blocks along the horizontal direction, the second target block can be divided into an upper second sub-block of size 2N×N / 2, a central second sub-block of size 2N×N, and a lower second sub-block of size 2N×N / 2. Meanwhile, the number of bits in the binarized string indicating the MPT separation information can vary based on the separation type of the second target block. In this case, for example, the binarized string of the MPT separation information derived based on the separation type can be derived as shown in Table 6 above. For example, when the second target block is divided into 2 second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 10. And when the second target block is divided into 3 second sub-blocks along the vertical or horizontal direction, the binarized string of the MPT separation information can be equal to 11. Additionally, when the second target block is not separated according to MPT, the binarized string of the MPT separation information can be equal to 0.
[0217] Meanwhile, the MPT separation information may include the following information.
[0218] For example, MPT separation information may include Multi-Segment Tree (MPT) separation type information and MPT separation direction information corresponding to the second target block. The MPT separation type information may indicate the number of second sub-blocks into which the second target block is separated. Furthermore, the MPT separation direction information may indicate the separation direction of the second target block. More specifically, when the value of the MPT separation type information is equal to 0, it indicates that the second target block has not been separated. When the value of the MPT separation type information is equal to 1, it indicates that the number of second sub-blocks is equal to 2. When the value of the MPT separation type information is equal to 2, it indicates that the number of second sub-blocks is equal to 3. And when the value of the MPT separation type information is equal to 3, it indicates that the number of second sub-blocks is equal to 4. Additionally, when the value of the MPT separation direction information is equal to 0, this may indicate that the separation direction of the second target block corresponds to the horizontal direction. And when the value of the MPT separation direction information is equal to 1, this may indicate that the separation direction of the second target block corresponds to the vertical direction. The second target block can be separated into second sub-blocks based on the MPT separation information.
[0219] Here, when the size of the second target block corresponds to 2N×2N and the number of second sub-blocks indicated by the MPT separation information is equal to 2, and when the separation direction of the second target block indicated by the MPT separation direction information corresponds to the vertical direction, the second target block can be separated into second sub-blocks of size N×2N. Furthermore, when the size of the second target block corresponds to 2N×2N and the number of second sub-blocks indicated by the MPT separation information is equal to 2, and when the separation direction of the second target block indicated by the MPT separation direction information corresponds to the horizontal direction, the second target block can be separated into second sub-blocks of size 2N×N.
[0220] Furthermore, as another example, when the size of the second target block is equal to 2N×2N, and the number of second sub-blocks indicated by the MPT separation type information is equal to 3, and the separation direction of the second target block indicated by the MPT separation direction information corresponds to the vertical direction, the second target block can be separated into a second sub-block of size N×2N and a second sub-block of size N / 2×2N. Also, when the size of the second target block is equal to 2N×2N, and the number of second sub-blocks indicated by the MPT separation type information is equal to 3, and the separation direction of the second target block indicated by the second separation direction information corresponds to the horizontal direction, the second target block can be separated into a second sub-block of size 2N×N and a second sub-block of size 2N×N / 2. In this case, for example, when the separation direction of the second target block indicated by the MPT separation direction information corresponds to the vertical direction, the central second sub-block can be derived as a second sub-block of size N×2N within the second sub-block. And, when the separation direction of the second target block indicated by the MPT separation direction information corresponds to the horizontal direction, the central second sub-block can be derived as a second sub-block of size 2N×N within the second sub-block. Simultaneously, when the size of the second target block is equal to 2N×2N, and when the number of second sub-blocks indicated by the MPT separation type information is equal to 3, and when the block separation direction of the second target indicated by the MPT separation direction information corresponds to the vertical direction, the MPT separation information may include MPT sub-separation type information. When the value of the MPT sub-separation type information is equal to 0, the MPT sub-separation type information may indicate type 0. When the value of the MPT sub-separation type information is equal to 1, the MPT sub-separation type information may indicate type 1. Furthermore, when the value of the MPT sub-separation type information is equal to 2, the MPT sub-separation type information may indicate type 2. When the MPT sub-separation type information indicates type 0, the leftmost second sub-block in the second sub-block can be exported as an N×2N size second sub-block. When the MPT sub-separation type information indicates type 1, the central second sub-block in the second sub-block can be exported as an N×2N size second sub-block. Furthermore, when the MPT sub-separation type information indicates type 2, the rightmost second sub-block in the second sub-block can be exported as an N×2N size second sub-block. Furthermore, when the size of the second target block is equal to 2N×2N, and when the number of second sub-blocks indicated by the MPT separation type information is equal to 3, and when the separation direction of the second target block indicated by the MPT separation direction information corresponds to the horizontal direction, the MPT separation information may include MPT sub-separation type information. When the value of the MPT sub-separation type information is equal to 0, the MPT sub-separation type information may indicate type 0. When the value of the MPT sub-separation type information is equal to 1, the MPT sub-separation type information may indicate type 1.Furthermore, when the MPT sub-separation type information value is equal to 2, the MPT sub-separation type information can indicate type 2. When the MPT sub-separation type information indicates type 0, the upper second sub-block can be exported as a 2N×N size second sub-block within the second sub-block. When the MPT sub-separation type information indicates type 1, the central second sub-block within the second sub-block can be exported as a 2N×N size second sub-block. Furthermore, when the MPT sub-separation type information indicates type 2, the lower second sub-block within the second sub-block can be exported as a 2N×N size second sub-block.
[0221] Here, when the size of the second target block corresponds to 2N×2N and the number of second sub-blocks indicated by the MPT separation information is equal to 4, and when the separation direction of the second target block indicated by the MPT separation direction information corresponds to the vertical direction, the second target block can be separated into second sub-blocks of size N / 2×2N. Furthermore, when the size of the second target block corresponds to 2N×2N and the number of second sub-blocks indicated by the MPT separation information is equal to 4, and when the separation direction of the second target block indicated by the MPT separation direction information corresponds to the horizontal direction, the second target block can be separated into second sub-blocks of size 2N×N / 2.
[0222] Additionally, as another example, the MPT separation information may include a Multi-Partition Tree (MPT) separation flag for the second target block. The MPT separation flag can indicate whether the second target block is being separated into second sub-blocks corresponding to non-square blocks. More specifically, when the MPT separation flag value is 0, it indicates that the second target block has not been separated. And, when the MPT separation flag value is 1, it indicates that the second target block is being separated into second sub-blocks according to the MPT structure. More specifically, when the MPT separation flag value is 1, it indicates that the second target block has been separated into second sub-blocks corresponding to non-square blocks.
[0223] Additionally, when the MPT separation flag value is equal to 1, the MPT separation information can include MPT separation direction information and MPT separation type information for the second target block. The MPT separation direction information indicates the separation direction of the second target block. Furthermore, the MPT separation type information indicates the number of second sub-blocks into which the second target block is separated. More specifically, when the MPT separation direction information value is equal to 0, this indicates that the separation direction of the second target block corresponds to the horizontal direction. And when the MPT separation direction information value is equal to 1, this indicates that the separation direction of the second target block corresponds to the vertical direction. Furthermore, when the MPT separation type information value is equal to 0, the MPT separation type information indicates that the number of second sub-blocks is equal to 2. When the MPT separation type information value is equal to 1, the MPT separation type information indicates that the number of second sub-blocks is equal to 3. And when the MPT separation type information value is equal to 2, the MPT separation type information indicates that the number of second sub-blocks is equal to 4. The second target block can be separated into second sub-blocks based on the MPT separation information.
[0224] Here, when the size of the second target block corresponds to 2N×2N and the number of second sub-blocks indicated by the MPT separation information is equal to 2, and the separation direction of the second target block indicated by the MPT separation direction information corresponds to the vertical direction, the second target block can be separated into second sub-blocks of size N×2N. Furthermore, when the size of the second target block corresponds to 2N×2N and the number of second sub-blocks indicated by the MPT separation information is equal to 2, and the separation direction of the second target block indicated by the MPT separation direction information corresponds to the horizontal direction, the second target block can be separated into second sub-blocks of size 2N×N.
[0225] Furthermore, as another example, when the size of the second target block is equal to 2N×2N, and the number of second sub-blocks indicated by the MPT separation type information is equal to 3, and the separation direction of the second target block indicated by the MPT separation direction information corresponds to the vertical direction, the second target block can be separated into a second sub-block of size N×2N and a second sub-block of size N / 2×2N. Also, when the size of the second target block is equal to 2N×2N, and the number of second sub-blocks indicated by the MPT separation type information is equal to 3, and the separation direction of the second target block indicated by the MPT separation direction information corresponds to the horizontal direction, the second target block can be separated into a second sub-block of size 2N×N and a second sub-block of size 2N×N / 2. In this case, for example, when the separation direction of the second target block indicated by the MPT separation direction information corresponds to the vertical direction, the central second sub-block can be derived into a second sub-block of size N×2N within the second sub-block. And, when the separation direction of the second target block indicated by the MPT separation direction information corresponds to the horizontal direction, the central second sub-block can be derived into a second sub-block of size 2N×N within the second sub-block. Simultaneously, when the size of the second target block is equal to 2N×2N, and when the number of second sub-blocks indicated by the MPT separation type information is equal to 3, and when the separation direction of the second target block indicated by the MPT separation direction information corresponds to the vertical direction, the MPT separation information may include MPT sub-separation type information. When the value of the MPT sub-separation type information is equal to 0, the MPT sub-separation type information may indicate type 0. When the value of the MPT sub-separation type information is equal to 1, the MPT sub-separation type information may indicate type 1. Furthermore, when the value of the MPT sub-separation type information is equal to 2, the MPT sub-separation type information may indicate type 2. When the MPT sub-separation type information indicates type 0, the leftmost second sub-block can be exported as an N×2N size second sub-block within the second sub-block. When the MPT sub-separation type information indicates type 1, the central second sub-block can be exported as an N×2N size second sub-block within the second sub-block. Furthermore, when the MPT sub-separation type information indicates type 2, the rightmost second sub-block can be exported as an N×2N size second sub-block within the second sub-block. Furthermore, when the size of the second target block is equal to 2N×2N, and when the number of second sub-blocks indicated by the MPT separation type information is equal to 3, and when the separation direction of the second target block indicated by the MPT separation direction information corresponds to the horizontal direction, the MPT separation information may include MPT sub-separation type information. When the value of the MPT sub-separation type information is equal to 0, the MPT sub-separation type information may indicate type 0. When the value of the MPT sub-separation type information is equal to 1, the MPT sub-separation type information may indicate type 1.Furthermore, when the MPT sub-separation type information value is equal to 2, the MPT sub-separation type information can indicate type 2. When the MPT sub-separation type information indicates type 0, the upper second sub-block can be derived as a 2N×N size second sub-block within the second sub-block. When the MPT sub-separation type information indicates type 1, the central second sub-block can be derived as a 2N×N size second sub-block within the second sub-block. Furthermore, when the MPT sub-separation type information indicates type 2, the lower second sub-block can be derived as a 2N×N size second sub-block within the second sub-block.
[0226] Here, when the size of the second target block corresponds to 2N×2N and the number of second sub-blocks indicated by the MPT separation information is equal to 4, and the separation direction of the second target block indicated by the MPT separation direction information corresponds to the vertical direction, the second target block can be separated into second sub-blocks of size N / 2×2N. Furthermore, when the size of the second target block corresponds to 2N×2N and the number of second sub-blocks indicated by the MPT separation information is equal to 4, and the separation direction of the second target block indicated by the MPT separation direction information corresponds to the horizontal direction, the second target block can be separated into second sub-blocks of size 2N×N / 2.
[0227] Meanwhile, the number of bits in the binarized string indicating the MPT separation information based on the separation type of the second target block can be variable. For example, the binarized string of the MPT separation information indicating the separation type most frequently applied to the block within the input image (or target image) can be derived as the binarized string with the smallest number of bits among the binarized strings indicating the separation type. The binarized string of the MPT separation information derived based on the separation type can be derived as shown in Tables 2, 3, 4, 5, or 6 above.
[0228] The decoding device decodes the second sub-block (S940). The decoding device can decode the second sub-block. More specifically, the decoding device can generate a prediction sample of the second sub-block by performing intra- or inter-prediction on the second sub-block. Thereafter, the decoding device can generate a reconstruction (or restoration) sample corresponding to the second sub-block based on the prediction sample, and then can generate a reconstructed image based on the generated reconstruction sample.
[0229] Simultaneously, although not shown in the accompanying drawings, the decoding device can directly use the predicted samples as reconstruction (or restoration) samples based on the prediction mode, or the decoding device can generate reconstruction samples by adding residual samples to the predicted samples. In the presence of residual samples for the target block, the decoding device can receive information about the residuals of the target block, and this information may include phase information. The residual information may include transform coefficients corresponding to the residual samples. The decoding device can derive residual samples (or an array of residual samples) corresponding to the target block based on the residual information. The decoding device can generate reconstruction samples based on the predicted samples and residual samples. Then, the decoding device can derive the reconstruction block or reconstructed image based on the restored samples. Subsequently, as described above, the decoding device can apply loop filtering processes such as deblocking filtering and / or SAO processes to the restored image as needed to enhance subjective / objective image quality.
[0230] According to the above disclosure, an image can be separated (or segmented) into blocks of different shapes based on a multi-segmentation tree (MPT) structure, and by doing so, prediction efficiency can be improved and overall compilation efficiency can be enhanced.
[0231] Furthermore, according to this disclosure, an image can be separated (or segmented) into blocks of varying shapes based on a multi-segment tree (MPT) structure, thereby enhancing transformation efficiency and overall compilation efficiency.
[0232] In the above embodiments, the method is described based on a flowchart having a series of steps or blocks. This disclosure is not limited to the order of the steps or blocks described above. As mentioned above, some steps or blocks may occur simultaneously or in a different order than other steps or blocks. Furthermore, those skilled in the art will understand that the steps shown in the above flowchart are not exclusive and may include other steps, or one or more steps in the flowchart may be deleted without affecting the scope of this disclosure.
[0233] The methods described above according to this disclosure can be implemented in software. The encoding and / or decoding devices according to this disclosure can be included in devices performing image processing, such as televisions, computers, smartphones, set-top boxes, or display devices.
[0234] When the embodiments of this disclosure are implemented in software, the above methods can be implemented by modules (procedures, functions, etc.) that perform the above functions. Such modules can be stored in memory and executed by a processor. The memory can be internal or external to the processor, and various known means can be used to couple the memory to the processor. The processor may include application-specific integrated circuits (ASICs), other chipsets, logic circuits, and / or data processing devices. The memory may include ROM (read-only memory), RAM (random access memory), flash memory, memory cards, storage media, and / or other storage devices.
Claims
1. A decoding device for video decoding, the decoding device comprising: Memory; as well as At least one processor, connected to the memory, is configured to: Obtain first separation information for the first target block from the bit stream; Based on the first separation information indicating that the first target block has been separated, the first target block is separated into a first sub-block; Obtain multi-segment tree (MPT) separation information for a second target block from the bit stream, wherein the second target block is one of the first sub-blocks of the first target block; Based on the MPT separation information, the second target block is separated into a second sub-block; and Decode the second sub-block. The second sub-block is a non-square block. The MPT separation information includes an MPT separation flag for the second target block. The MPT separation flag indicates whether the second target block is separated into a second sub-block that is not a square block. Wherein, based on the value of the MPT separation flag being equal to 1, the MPT separation information includes MPT separation direction information and MPT separation type information for the second target block. Wherein, the MPT separation direction information indicates the separation direction of the second target block. The MPT separation type information indicates the number of second sub-blocks into which the second target block is separated. Specifically, based on the fact that the size of the second target block is 2N×2N, the number of second sub-blocks represented by the MPT separation type information is equal to 2, and the separation direction of the second target block represented by the MPT separation direction information is the vertical direction, the second target block is separated into second sub-blocks of size N×2N. Specifically, based on the fact that the size of the second target block is 2N×2N, the number of second sub-blocks represented by the MPT separation type information is equal to 2, and the separation direction of the second target block represented by the MPT separation direction information is horizontal, the second target block is separated into second sub-blocks of size 2N×N. Specifically, based on the second target block having a size of 2N×2N, the number of second sub-blocks notified by the MPT separation type information being equal to 3, and the separation direction of the second target block notified by the MPT separation direction information being the vertical direction, the second target block is separated into a second sub-block of size N×2N and a second sub-block of size N / 2×2N. Specifically, based on the fact that the size of the second target block is 2N×2N, the number of second sub-blocks notified by the MPT separation type information is equal to 3, and the separation direction of the second target block notified by the MPT separation direction information is horizontal, the second target block is separated into a second sub-block of size 2N×N and a second sub-block of size 2N×N / 2. Information regarding MPT structures, including 2-segment and 3-segment types, is obtained through the first high-level syntax (HLS) and the second HLS. Wherein, the first HLS is a sequence parameter set (SPS), and the second HLS is a lower syntactic structure of the SPS. The 2-segmentation type refers to a type in which a block is split into two sub-blocks. Wherein, the 3-segmentation type is a type in which a block is separated into 3 sub-blocks, and The information regarding the MPT structure includes information about the maximum depth of intra-frame slices in the MPT structure, information about the maximum block size of intra-frame slices in the MPT structure, information about the maximum depth of inter-frame slices in the MPT structure, and information about the maximum block size of inter-frame slices in the MPT structure.
2. An encoding device for video encoding, the encoding device comprising: Memory; as well as At least one processor, connected to the memory, is configured to: Separate the first target block into the first sub-block; Separate the second target block, which is one of the first sub-blocks, into a second sub-block; and Generate and encode first separation information for the first target block and multi-segment tree (MPT) separation information for the second target block. The second sub-block is a non-square block. The MPT separation information includes an MPT separation flag for the second target block, MPT separation direction information, and MPT separation type information. The MPT separation flag indicates whether the second target block is separated into a second sub-block that is not a square block. Wherein, the MPT separation direction information indicates the separation direction of the second target block. The MPT separation type information indicates the number of second sub-blocks into which the second target block is separated. Specifically, based on the fact that the size of the second target block is 2N×2N, the number of second sub-blocks represented by the MPT separation type information is equal to 2, and the separation direction of the second target block represented by the MPT separation direction information is the vertical direction, the second target block is separated into second sub-blocks of size N×2N. Specifically, based on the fact that the size of the second target block is 2N×2N, the number of second sub-blocks represented by the MPT separation type information is equal to 2, and the separation direction of the second target block represented by the MPT separation direction information is horizontal, the second target block is separated into second sub-blocks of size 2N×N. Specifically, based on the second target block having a size of 2N×2N, the number of second sub-blocks notified by the MPT separation type information being equal to 3, and the separation direction of the second target block notified by the MPT separation direction information being the vertical direction, the second target block is separated into a second sub-block of size N×2N and a second sub-block of size N / 2×2N. Specifically, based on the second target block having a size of 2N×2N, the number of second sub-blocks notified by the MPT separation type information being equal to 3, and the separation direction of the second target block notified by the MPT separation direction information being horizontal, the second target block is separated into a second sub-block of size 2N×N and a second sub-block of size 2N×N / 2. Information regarding MPT structures, including 2-segment and 3-segment types, is obtained through the first high-level syntax (HLS) and the second HLS. Wherein, the first HLS is a sequence parameter set (SPS), and the second HLS is a lower syntactic structure of the SPS. The 2-segmentation type refers to a type in which a block is split into two sub-blocks. Wherein, the 3-segmentation type is a type in which a block is separated into 3 sub-blocks, and The information regarding the MPT structure includes information about the maximum depth of intra-frame slices in the MPT structure, information about the maximum block size of intra-frame slices in the MPT structure, information about the maximum depth of inter-frame slices in the MPT structure, and information about the maximum block size of inter-frame slices in the MPT structure.
3. An apparatus for transmitting data for video, the apparatus comprising: At least one processor configured to obtain a bitstream of the video, wherein the bitstream is generated based on: splitting a first target block into a first sub-block, splitting a second target block, which is one of the first sub-blocks, into a second sub-block, and generating and encoding first separation information for the first target block and multi-segment tree (MPT) separation information for the second target block; and A transmitter configured to transmit data including the bitstream. The second sub-block is a non-square block. The MPT separation information includes an MPT separation flag for the second target block, MPT separation direction information, and MPT separation type information. The MPT separation flag indicates whether the second target block is separated into a second sub-block that is not a square block. Wherein, the MPT separation direction information indicates the separation direction of the second target block. The MPT separation type information indicates the number of second sub-blocks into which the second target block is separated. Specifically, based on the fact that the size of the second target block is 2N×2N, the number of second sub-blocks represented by the MPT separation type information is equal to 2, and the separation direction of the second target block represented by the MPT separation direction information is the vertical direction, the second target block is separated into second sub-blocks of size N×2N. Specifically, based on the fact that the size of the second target block is 2N×2N, the number of second sub-blocks represented by the MPT separation type information is equal to 2, and the separation direction of the second target block represented by the MPT separation direction information is horizontal, the second target block is separated into second sub-blocks of size 2N×N. Specifically, based on the second target block having a size of 2N×2N, the number of second sub-blocks notified by the MPT separation type information being equal to 3, and the separation direction of the second target block notified by the MPT separation direction information being the vertical direction, the second target block is separated into a second sub-block of size N×2N and a second sub-block of size N / 2×2N. Specifically, based on the second target block having a size of 2N×2N, the number of second sub-blocks notified by the MPT separation type information being equal to 3, and the separation direction of the second target block notified by the MPT separation direction information being horizontal, the second target block is separated into a second sub-block of size 2N×N and a second sub-block of size 2N×N / 2. Information regarding MPT structures, including 2-segment and 3-segment types, is obtained through the first high-level syntax (HLS) and the second HLS. Wherein, the first HLS is a sequence parameter set (SPS), and the second HLS is a lower syntactic structure of the SPS. The 2-segmentation type refers to a type in which a block is split into two sub-blocks. Wherein, the 3-segmentation type is a type in which a block is separated into 3 sub-blocks, and The information regarding the MPT structure includes information about the maximum depth of intra-frame slices in the MPT structure, information about the maximum block size of intra-frame slices in the MPT structure, information about the maximum depth of inter-frame slices in the MPT structure, and information about the maximum block size of inter-frame slices in the MPT structure.