Video encoding / decoding method and apparatus, and method for transmitting bitstream
Patent Information
- Application Number
- PCT/KR2026/002755
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2025-03-26
- Filing Date
- 2026-02-13
- Publication Date
- 2026-10-01
Smart Images

Figure KR2026002755_01102026_PF_FP_ABST
Abstract
Description
Video encoding / decoding method, device, and method for transmitting a bitstream
[0001] The present invention relates to an image encoding / decoding method, an apparatus, and a method for transmitting a bitstream. Specifically, the present invention relates to an image encoding / decoding method, an apparatus, and a method for transmitting a bitstream for efficiently predicting the partitioning structure of blocks.
[0002] Recently, the demand for high-resolution, high-quality video, such as Ultra High Definition (UHD) video, has been increasing across various application fields. As video data becomes higher in resolution and quality, the relative volume of data increases compared to conventional video data; consequently, transmission and storage costs increase when video data is transmitted using existing wired or wireless broadband lines or stored using existing storage media. To address these issues arising from the increase in video data resolution and quality, high-efficiency video encoding and decoding technologies for videos with higher resolution and quality are required. Accordingly, a method for predicting the partition structure of a picture is required to efficiently predict the partition structure of blocks constituting a picture during the encoding and decoding process of high-resolution video. This method reduces the computational load associated with partition search, improves encoding and decoding efficiency, and ultimately saves transmission bandwidth and storage space.
[0003] The present invention aims to provide an image encoding / decoding method and apparatus with improved encoding / decoding efficiency.
[0004] In addition, the present invention aims to provide a recording medium storing a bitstream generated by an image encoding / decoding method or device according to the present invention.
[0005] In addition, the present invention aims to provide a method for efficiently predicting the partitioning structure of blocks.
[0006] An image decoding method according to one embodiment of the present invention includes the steps of predicting a partitioning structure of a current block, partitioning the current block based on the predicted partitioning structure, and decoding the partitioned current block, wherein the predicted partitioning structure is predicted based on the partitioning structure of a reference block, and the reference block may be different from the current block.
[0007] In the image decoding method, the current block may be a chrominance block, and the reference block may be a luminance block corresponding to the current block.
[0008] In an image decoding method, the predicted segmentation structure can be predicted by pruning the segmentation structure of the luminance block and performing a geometric transformation on the pruned segmentation structure of the luminance block.
[0009] In a video decoding method, the current block is included within the current coding tree unit, the reference block is included within the current coding tree unit, and the reference block may be adjacent to the current block in any one of the horizontal, vertical, or diagonal directions.
[0010] In a video decoding method, the predicted partition structure may be identical to the partition structure of the reference block.
[0011] In a video decoding method, the predicted partition structure may be a structure in which the partition structure of a reference block is mirrored in at least one of the horizontal and vertical directions.
[0012] In an image decoding method, the predicted partition structure can be predicted by pruning the partition structure of a reference block and performing a geometric transformation on the pruned partition structure of the reference block.
[0013] In a video decoding method, the reference block is a block at a lower level than the current block, and the predicted partition structure may be a structure obtained by upscaling the partition structure of the reference block.
[0014] In a video decoding method, the reference block is a block of a higher layer than the current block, and the predicted partition structure may be a structure obtained by downscaling the partition structure of the reference block.
[0015] In a video decoding method, the predicted partition structure may be a structure obtained by rotating the partition structure of a reference block in either a clockwise or counterclockwise direction.
[0016] In the image decoding method, the current block is included within the current coding tree unit, and the reference block may be included within a reference coding tree unit different from the current coding tree unit.
[0017] In an image decoding method, the block vector of the current block is derived based on the block vector of a neighboring block adjacent to the current block, and the reference block can be determined based on the block vector.
[0018] In a video decoding method, the block vector of the current block is derived based on information indicating one block vector among a plurality of block vectors, and the reference block can be determined based on the block vector.
[0019] In a video decoding method, the current block is contained within a first video unit, and a neighbor block adjacent to the current block is contained within a second video unit different from the first video unit, and the first video unit and the second video unit are any one of a frame, a slice, and a picture, and the reference block may be contained within a reference picture different from the current picture.
[0020] In a video decoding method, the position of a reference block within a reference picture can correspond to the position of a current block within a current picture.
[0021] In a video decoding method, the motion vector of the current block is derived based on the motion vector of a neighboring block adjacent to the current block, and the reference block can be determined based on the motion vector.
[0022] In a video decoding method, a reference block can be determined based on information indicating the reference block among a plurality of candidate blocks.
[0023] In an image decoding method, the step of predicting the partitioning structure of the current block can be predicted based on information indicating one geometric transformation among a plurality of geometric transformations.
[0024] A video encoding method according to one embodiment of the present invention includes the steps of determining a partitioning structure of a current block, partitioning a current block based on the partitioning structure of the current block, and encoding the partitioned current block, wherein partitioning structure prediction information used to predict the partitioning structure of the current block based on the partitioning structure of a reference block can be encoded.
[0025] In a method for transmitting a bitstream according to an embodiment of the present invention, the transmission method includes the step of transmitting a bitstream generated by an image encoding method, and the image encoding method includes the step of determining a partitioning structure of a current block, the step of partitioning a current block based on the partitioning structure of a current block, and the step of encoding the partitioned current block, wherein partitioning structure prediction information used to predict the partitioning structure of a current block based on the partitioning structure of a reference block may be encoded.
[0026] The features briefly summarized above regarding the present disclosure are merely exemplary aspects of the detailed description of the present disclosure that follows and do not limit the scope of the present disclosure.
[0027] According to the present invention, an image encoding / decoding method and apparatus with improved encoding / decoding efficiency may be provided.
[0028] The effects obtainable from the present disclosure are not limited to those mentioned above, and other unmentioned effects will be clearly understood by those skilled in the art to which the present disclosure pertains from the description below.
[0029] FIG. 1 is a block diagram showing the configuration according to one embodiment of an encoding device to which the present invention is applied.
[0030] FIG. 2 is a block diagram showing the configuration according to one embodiment of a decoding device to which the present invention is applied.
[0031] FIG. 3 is a schematic diagram showing a video coding system to which the present invention can be applied.
[0032] FIG. 4 is a drawing illustrating a divided structure of a picture to which the present invention can be applied.
[0033] FIG. 5 is a diagram illustrating a method for predicting the partition structure of a current block according to an embodiment of the present invention.
[0034] FIG. 6 is a diagram illustrating a method for predicting the partition structure of a current block according to an embodiment of the present invention.
[0035] FIG. 7 is a diagram illustrating a method for predicting the partition structure of a current block according to an embodiment of the present invention.
[0036] FIG. 8 is a diagram illustrating a method for predicting the partition structure of a current block according to an embodiment of the present invention.
[0037] FIG. 9 is a diagram illustrating a method for predicting the partition structure of a current block according to an embodiment of the present invention.
[0038] FIG. 10 is a diagram illustrating a method for predicting the partition structure of a current block according to an embodiment of the present invention.
[0039] FIG. 11 is a diagram illustrating a method for predicting the partition structure of a current block according to an embodiment of the present invention.
[0040] FIG. 12 is a diagram illustrating a method for predicting the partition structure of a current block according to an embodiment of the present invention.
[0041] FIG. 13 is a drawing for explaining a method for inducing a division structure of a current block according to an embodiment of the present invention.
[0042] FIG. 14 is a drawing for explaining a method for inducing a division structure of a current block according to an embodiment of the present invention.
[0043] FIG. 15 is a drawing for explaining a method for inducing a division structure of a current block according to an embodiment of the present invention.
[0044] FIG. 16 is a drawing for explaining a method for inducing a division structure of a current block according to an embodiment of the present invention.
[0045] FIG. 17 is a drawing for explaining a method for inducing a division structure of a current block according to an embodiment of the present invention.
[0046] FIG. 18 is a flowchart illustrating an image decoding method according to an embodiment of the present invention.
[0047] FIG. 19 is a flowchart illustrating an image encoding method according to an embodiment of the present invention.
[0048] FIG. 20 is a drawing illustrating an exemplary content streaming system to which an embodiment according to the present invention can be applied.
[0049] The present invention is susceptible to various modifications and may have various embodiments; specific embodiments are illustrated in the drawings and described in detail in the detailed description. However, this is not intended to limit the invention to specific embodiments, and it should be understood that the invention includes all modifications, equivalents, and substitutions that fall within the spirit and scope of the invention. Similar reference numerals in the drawings refer to the same or similar functions across various aspects. The shapes and sizes of elements in the drawings may be provided illustratively for clearer explanation. The detailed description of the exemplary embodiments described below refers to the accompanying drawings, which illustrate specific embodiments. These embodiments are described in sufficient detail to enable those skilled in the art to practice the embodiments. It should be understood that various embodiments are different but need not be mutually exclusive. For example, specific shapes, structures, and characteristics described herein may be implemented in other embodiments without departing from the spirit and scope of the invention in relation to one embodiment. Furthermore, it should be understood that the location or arrangement of individual components within each disclosed embodiment may be changed without departing from the spirit and scope of the embodiment. Accordingly, the following detailed description is not intended to be taken in a limiting sense, and the scope of exemplary embodiments is limited only by the appended claims, together with all equivalents to those claimed therein, provided they are properly described.
[0050] In the present invention, terms such as "first," "second," etc. may be used to describe various components, but said components should not be limited by said terms. These terms are used solely for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, the first component may be named the second component, and similarly, the second component may be named the first component. The term "and / or" includes a combination of a plurality of related described items or any of a plurality of related described items.
[0051] The components shown in the embodiments of the present invention are illustrated independently to represent different characteristic functions and do not imply that each component consists of separate hardware or a single software unit. That is, each component is listed and included as a separate component for the convenience of explanation; however, at least two of the components may be combined to form a single component, or a single component may be divided into multiple components to perform a function, and such integrated and separated embodiments of each component are included within the scope of the present invention as long as they do not deviate from the essence of the invention.
[0052] The terms used in this invention are used merely to describe specific embodiments and are not intended to limit the invention. Singular expressions include plural expressions unless the context clearly indicates otherwise. Furthermore, some components of this invention may not be essential components performing an essential function in this invention, but may be optional components merely for enhancing performance. This invention may be implemented by including only the components essential to embody the essence of this invention, excluding components used solely for performance enhancement, and a structure including only the essential components, excluding optional components used solely for performance enhancement, is also included within the scope of this invention.
[0053] In the embodiments, the term "at least one" may mean one of a number of 1 or more, such as 1, 2, 3, and 4. In the embodiments, the term "a plurality of" may mean one of a number of 2 or more, such as 2, 3, and 4.
[0054] Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. In describing the embodiments of this specification, if it is determined that a detailed description of related known configurations or functions may obscure the gist of this specification, such detailed description is omitted; similar reference numerals are used for identical components in the drawings, and redundant descriptions of identical components are omitted.
[0055] Glossary of Terms
[0056] In the following, “image” may refer to a single picture constituting a video, or it may refer to the video itself. For example, “encoding and / or decoding of an image” may mean “encoding and / or decoding of an image”, and may also mean “encoding and / or decoding of one of the images constituting the video”.
[0057] In the following, "video" and "video" may be used interchangeably with the same meaning. Additionally, the target image may be an image to be encoded and / or an image to be decoded. Furthermore, the target image may be an input image fed into an encoding device and an input image fed into a decoding device. Here, the target image may have the same meaning as the current image.
[0058] In the following, the terms encoder and image encoding device may be used interchangeably.
[0059] In the following, the decoder and the image decoder may be used interchangeably with each other.
[0060] In the following, "image," "picture," "frame," and "screen" may be used interchangeably with the same meaning.
[0061] In the following, “target block” may be an encoding target block that is the target of encoding and / or a decoding target block that is the target of decoding. Additionally, the target block may be a current block that is the target of current encoding and / or decoding. For example, “target block” and “current block” may be used interchangeably.
[0062] In the following description, "block" and "unit" may be used interchangeably. Additionally, to distinguish it from a block, "unit" may refer to a block containing a luminance (Luma) component block and a corresponding chroma (Chroma) component block. For example, a Coding Tree Unit (CTU) may consist of a single luminance component (Y) coding tree block (CTB) and two chroma component (Cb, Cr) coding tree blocks associated with it.
[0063] In the following, “sample,” “pixel,” and “pixel” may be used interchangeably with the same meaning. Here, a sample may represent a basic unit constituting a block.
[0064] In the following, “inter” and “inter-screen” may be used interchangeably with the same meaning.
[0065] In the following, “intra” and “in-screen” may be used interchangeably with the same meaning.
[0066]
[0067] FIG. 1 is a block diagram showing the configuration according to one embodiment of an encoding device to which the present invention is applied.
[0068] The encoding device (100) may be an encoder, a video encoding device, or an image encoding device. The video may include one or more images. The encoding device (100) may sequentially encode one or more images.
[0069] Referring to FIG. 1, the encoding device (100) may include an image segmentation unit (110), an intra prediction unit (120), a motion prediction unit (121), a motion compensation unit (122), a switch (115), a subtractor (113), a converter (130), a quantization unit (140), an entropy encoding unit (150), an inverse quantization unit (160), an inverse converter (170), an adder (117), a filter unit (180), and a reference picture buffer (190).
[0070] Additionally, the encoding device (100) can generate a bitstream containing encoded information through encoding of an input image and can output the generated bitstream. The generated bitstream can be stored on a computer-readable recording medium or streamed via a wired / wireless transmission medium.
[0071] The video segmentation unit (110) can divide the input video into various forms to increase the efficiency of video encoding / decoding. That is, the input video consists of multiple pictures, and a single picture can be processed by hierarchically dividing it for compression efficiency, parallel processing, etc. For example, a single picture can be divided into one or more tiles or slices and then divided again into multiple CTUs (Coding Tree Units). Alternatively, a single picture can first be divided into multiple sub-pictures defined as groups of rectangular slices, and each sub-picture can be divided into the said tiles / slices. Here, the sub-pictures can be utilized to support the function of partially and independently encoding / decoding and transmitting the picture. Since multiple sub-pictures can each be restored individually, they have the advantage of being easy to edit in applications that configure multi-channel inputs into a single picture. In addition, the tiles can be divided horizontally to create bricks. Here, a brick can be utilized as the basic unit of parallel processing within a picture. Additionally, a single CTU can be recursively partitioned into a Quadtree (QT), and the terminal node of the partition can be defined as a Coding Unit (CU). The CU can be divided into a Prediction Unit (PU) and a Transform Unit (TU) to perform prediction and transformation. Meanwhile, the CU can be utilized as the prediction unit and / or the transformation unit itself. Here, for flexible partitioning, each CTU can be recursively partitioned into a Multi-Type Tree (MTT) as well as a Quadtree (QT). The partitioning of the CTU into a Multi-Type Tree can begin at the terminal node of the QT, and the MTT can be composed of a Binary Tree (BT) and a Triple Tree (TT).For example, the MTT structure can be classified into vertical binary splitting mode (SPLIT_BT_VER), horizontal binary splitting mode (SPLIT_BT_HOR), vertical ternary splitting mode (SPLIT_TT_VER), and horizontal ternary splitting mode (SPLIT_TT_HOR). Additionally, when splitting, the minimum block size (MinQTSize) of the quad tree for the luminance block can be set to 16x16, the maximum block size (MaxBtSize) of the binary tree to 128x128, and the maximum block size (MaxTtSize) of the triple tree to 64x64. Furthermore, the minimum block size (MinBtSize) of the binary tree and the minimum block size (MinTtSize) of the triple tree can be set to 4x4, and the maximum depth (MaxMttDepth) of the multi-type tree can be set to 4. Additionally, to increase the encoding efficiency of the I slice, a dual tree can be applied that uses different CTU splitting structures for the luminance and chrominance components. On the other hand, in P and B slices, the luminance and color difference CTBs (Coding Tree Blocks) within the CTU can be divided into a single tree that shares a coding tree structure.
[0072] The encoding device (100) may perform encoding on an input image in an intra mode and / or inter mode. Alternatively, the encoding device (100) may perform encoding on an input image in a third mode other than the intra mode and inter mode (e.g., IBC mode, Palette mode, etc.). However, if the third mode has functional characteristics similar to the intra mode or inter mode, it may be classified as an intra mode or inter mode for convenience of explanation. In the present invention, the third mode will be classified and described separately only when a specific explanation of the third mode is required.
[0073] When intra mode is used as the prediction mode, the switch (115) can be switched to intra, and when inter mode is used as the prediction mode, the switch (115) can be switched to inter. Here, intra mode may mean an intra-frame prediction mode, and inter mode may mean an inter-frame prediction mode. The encoding device (100) can generate a prediction block for an input block of an input image. Additionally, after the prediction block is generated, the encoding device (100) can encode a residual block using the residual of the input block and the prediction block. The input image may be referred to as the current image that is the subject of current encoding. The input block may be referred to as the current block that is the subject of current encoding or the encoding target block.
[0074] When the prediction mode is an intra mode, the intra prediction unit (120) may use a sample of a block that has already been encoded / decoded around the current block as a reference sample. The intra prediction unit (120) may perform spatial prediction for the current block using the reference sample and generate prediction samples for the input block through spatial prediction. Here, intra prediction may mean intra-frame prediction.
[0075] In the intra prediction method, non-directional prediction modes such as DC mode and Planar mode, and directional prediction modes (e.g., 65 directions) may be applied. Here, the intra prediction method can be expressed as an intra prediction mode or an intra-frame prediction mode.
[0076] When the prediction mode is an inter mode, the motion prediction unit (121) can search for the region that best matches the input block from the reference image during the motion prediction process and derive a motion vector using the searched region. At this time, the search region can be used as the region. The reference image can be stored in the reference picture buffer (190). Here, the reference image can be stored in the reference picture buffer (190) when encoding / decoding of the reference image is processed.
[0077] The motion compensation unit (122) can generate a prediction block for the current block by performing motion compensation using a motion vector. Here, inter-prediction may mean inter-frame prediction or motion compensation.
[0078] The motion prediction unit (121) and motion compensation unit (122) can generate a prediction block by applying an interpolation filter to a portion of the reference image when the value of the motion vector does not have an integer value. To perform inter-frame prediction or motion compensation, based on the encoding unit, it can determine whether the motion prediction and motion compensation method of the prediction unit included in the corresponding encoding unit is a Skip Mode, Merge Mode, Advanced Motion Vector Prediction (AMVP) Mode, or Intra Block Copy (IBC) Mode, and can perform inter-frame prediction or motion compensation according to each mode.
[0079] In addition, based on the above-mentioned inter-frame prediction method, the AFFINE mode of sub-PU-based prediction, the SbTMVP (Subblock-based Temporal Motion Vector Prediction) mode, and the MMVD (Merge with MVD) mode and GPM (Geometric Partitioning Mode) mode of PU-based prediction may be applied. Furthermore, to improve the performance of each mode, HMVP (History based MVP), PAMVP (Pairwise Average MVP), CIIP (Combined Intra / Inter Prediction), AMVR (Adaptive Motion Vector Resolution), BDOF (Bi-Directional Optical-Flow), BCW (Bi-predictive with CU Weights), LIC (Local Illumination Compensation), TM (Template Matching), OBMC (Overlapped Block Motion Compensation), etc. may be applied.
[0080] Among these, AFFINE mode is a technology used in both AMVP and MERGE modes and also offers high encoding efficiency. Conventional video coding standards have the disadvantage of failing to properly compensate for real-world movements, such as zoom in / out and rotation, because they perform Motion Compensation (MC) by considering only the translation of blocks. To address this, a 4-parameter affine motion model using two control point motion vectors (CPMV) and a 6-parameter affine motion model using three control point motion vectors can be applied to inter-prediction. Here, CPMV is a vector representing one of the affine motion models of the top-left, top-right, or bottom-left corners of the current block.
[0081] The subtractor (113) can generate a residual block using the difference between the input block and the prediction block. The residual block may also be referred to as a residual signal. The residual signal may represent the difference between the original signal and the prediction signal. Alternatively, the residual signal may be a signal generated by transforming, quantizing, or both transforming and quantizing the difference between the original signal and the prediction signal. The residual block may be a residual signal in block units.
[0082] The transformation unit (130) can generate a transform coefficient by performing a transform on the remaining block and output the generated transform coefficient. Here, the transform coefficient may be a coefficient value generated by performing a transform on the remaining block. When a transform skip mode is applied, the transformation unit (130) may skip the transform on the remaining block.
[0083] A quantized level can be generated by applying quantization to a conversion coefficient or a residual signal. In the following embodiments, the quantized level may also be referred to as a conversion coefficient.
[0084] For example, a 4x4 luminance residual block generated through intra-frame prediction can be transformed using a Discrete Sine Transform (DST)-based basis vector, while the remaining residual blocks can be transformed using a Discrete Cosine Transform (DCT)-based basis vector. Additionally, the transformation blocks for a single block can be divided into a quad tree form using Residual Quad Tree (RQT) technology, and after performing transformation and quantization on each transformation block divided by RQT, a coded block flag (cbf) can be transmitted to increase coding efficiency in the case where all coefficients become zero.
[0085] As another alternative, the Multiple Transform Selection (MTS) technique can be applied to perform transformations using multiple transformation bases selectively. In other words, instead of dividing a CU into TUs via RQT, a function similar to TU division can be performed using the Sub-block Transform (SBT) technique. Specifically, SBT is applied only to inter-frame prediction blocks and, unlike RQT, divides the current block into ½ or ¼ sizes in the vertical or horizontal direction, and then performs a transformation on only one of the blocks. For example, if divided vertically, a transformation can be performed on the leftmost or rightmost block, and if divided horizontally, a transformation can be performed on the topmost or bottommost block.
[0086] In addition, Low Frequency Non-Separable Transform (LFNST), a secondary transform technique that further transforms the residual signal converted to the frequency domain through DCT or DST, can also be applied. LFNST performs additional transformation on the 4x4 or 8x8 low-frequency region in the upper left corner, thereby allowing the residual coefficients to be concentrated in the upper left corner.
[0087] The quantization unit (140) can generate a quantized level by quantizing a transformation coefficient or residual signal according to a quantization parameter (QP, Quantization parameter) and can output the generated quantized level. At this time, the quantization unit (140) can quantize the transformation coefficient using a quantization matrix.
[0088] For example, a quantizer using QP values from 0 to 51 can be used. Alternatively, if the image size is larger and higher coding efficiency is required, QP values from 0 to 63 can be used. Additionally, a Dependent Quantization (DQ) method using two quantizers instead of a single one can be applied. DQ performs quantization using two quantizers (e.g., Q0, Q1), but can be applied so that the quantizer to be used for the next transform coefficient is selected based on the current state through a state transition model, even without signaling information regarding the use of a specific quantizer.
[0089] The entropy encoding unit (150) can generate a bitstream and output a bitstream by performing entropy encoding according to a probability distribution on values calculated by the quantization unit (140) or coding parameter values calculated during the encoding process. The entropy encoding unit (150) can perform entropy encoding on information regarding a sample of an image and information for decoding an image. For example, information for decoding an image may include syntax elements, etc.
[0090] When entropy coding is applied, a small number of bits are allocated to symbols with a high probability of occurrence and a large number of bits are allocated to symbols with a low probability of occurrence, thereby representing the symbols and reducing the size of the bit sequence for the symbols to be encoded. The entropy coding unit (150) may use encoding methods such as exponential Golomb, CAVLC (Context-Adaptive Variable Length Coding), and CABAC (Context-Adaptive Binary Arithmetic Coding) for entropy coding. For example, the entropy coding unit (150) may perform entropy coding using a Variable Length Coding (VLC) table. In addition, the entropy encoding unit (150) may perform arithmetic encoding using the derived binarization method, probability model, and context model after deriving a binarization method of the target symbol and a probability model of the target symbol / bin.
[0091] In this regard, when applying CABAC, in order to reduce the size of the probability table stored in the decoder, the table probability update method may be changed to a table update method using a simple formula. In addition, two different probability models may be used to obtain more accurate symbol probability values.
[0092] The entropy encoding unit (150) can convert a 2-dimensional block form coefficient into a 1-dimensional vector form through a transform coefficient scanning method to encode a transform coefficient level (quantized level).
[0093] Coding parameters may include information (flags, indexes, etc.) that is encoded in the encoding device (100) and signaled to the decoding device (200), such as syntax elements, as well as information derived during the encoding process or decoding process, and may refer to information required when encoding or decoding images.
[0094] Here, signaling a flag or index may mean that in an encoder, the corresponding flag or index is entropy encoded and included in a bitstream, and in a decoder, the corresponding flag or index is entropy decoded from the bitstream.
[0095] The encoded current image can be used as a reference image for other images processed later. Accordingly, the encoding device (100) can restore or decode the encoded current image again, and can store the restored or decoded image as a reference image in the reference picture buffer (190).
[0096] The quantized level can be dequantized in the dequantization unit (160) and inverse transformed in the inverse transform unit (170). The dequantized and / or inverse transformed coefficients can be added to the prediction block through the adder (117). A reconstructed block can be generated by adding the dequantized and / or inverse transformed coefficients and the prediction block. Here, the dequantized and / or inverse transformed coefficients refer to coefficients for which at least one of dequantization and inverse transformation has been performed, and may refer to the reconstructed residual block. The dequantization unit (160) and the inverse transform unit (170) can be performed as the reverse process of the quantization unit (140) and the transformation unit (130).
[0097] The restoration block may pass through a filter section (180). The filter section (180) may apply a deblocking filter, Sample Adaptive Offset (SAO), Adaptive Loop Filter (ALF), Bilateral filter (BIF), LMCS (Luma Mapping with Chroma Scaling), etc., to the restoration sample, restoration block, or restoration image as a whole or part of the filtering technique. The filter section (180) may also be referred to as an in-loop filter. In this case, the term in-loop filter is also used as a name that excludes LMCS.
[0098] Deblocking filters can remove block distortion occurring at the boundaries between blocks. To determine whether to perform deblocking, the decision to apply the filter to the current block can be made based on samples contained in a few columns or rows within the block. When applying a deblocking filter to a block, different filters can be applied depending on the required deblocking filtering intensity.
[0099] To compensate for encoding errors using a sample adaptive offset, an appropriate offset value can be added to the sample value. The sample adaptive offset can correct the offset from the original image on a sample-by-sample basis for the deblocked image. One method may be to divide the samples included in the image into a certain number of regions, determine the region to be offset, and apply the offset to that region, or to apply the offset by considering the edge information of each sample.
[0100] A bilateral filter (BIF) can also correct the offset from the original image on a sample-by-sample basis for the deblocked image.
[0101] An adaptive loop filter can perform filtering based on a comparison of the reconstructed image and the original image. After dividing the samples included in the image into predetermined groups, a filter to be applied to each group can be determined, thereby performing filtering differently for each group. Information regarding whether to apply an adaptive loop filter can be signaled per coding unit (CU), and the shape and filter coefficients of the adaptive loop filter to be applied may vary depending on each block.
[0102] In LMCS (Luma Mapping with Chroma Scaling), Luma mapping (LM) refers to remapping luminance values through a piece-wise linear model, and Chroma scaling (CS) refers to a technique that scales the residual values of the chrominance component according to the average luminance value of the predicted signal. In particular, LMCS can be utilized as an HDR correction technique that reflects the characteristics of HDR (High Dynamic Range) video.
[0103] The restored block or restored image that has passed through the filter unit (180) can be stored in the reference picture buffer (190). The restored block that has passed through the filter unit (180) may be part of the reference image. That is to say, the reference image may be a restored image composed of the restored blocks that have passed through the filter unit (180). The stored reference image may subsequently be used for inter-frame prediction or motion compensation.
[0104] FIG. 2 is a block diagram showing the configuration according to one embodiment of a decoding device to which the present invention is applied.
[0105] The decoding device (200) may be a decoder, a video decoding device, or an image decoding device.
[0106] Referring to FIG. 2, the decoding device (200) may include an entropy decoding unit (210), an inverse quantization unit (220), an inverse transformation unit (230), an intra prediction unit (240), a motion compensation unit (250), an adder (201), a switch (203), a filter unit (260), and a reference picture buffer (270).
[0107] The decoding device (200) can receive a bitstream output from the encoding device (100). The decoding device (200) can receive a bitstream stored in a computer-readable recording medium or a bitstream stream streamed through a wired / wireless transmission medium. The decoding device (200) can perform decoding on the bitstream in intra mode or inter mode. Additionally, the decoding device (200) can generate a restored image or a decoded image through decoding and can output the restored image or the decoded image.
[0108] If the prediction mode used for decoding is intra mode, the switch (203) can be switched to intra. If the prediction mode used for decoding is inter mode, the switch (203) can be switched to inter.
[0109] The decoding device (200) can decode the input bitstream to obtain a reconstructed residual block and generate a prediction block. Once the reconstructed residual block and the prediction block are obtained, the decoding device (200) can generate a reconstructed block to be decoded by adding the reconstructed residual block and the prediction block. The block to be decoded may be referred to as the current block.
[0110] The entropy decoding unit (210) can generate symbols by performing entropy decoding according to the probability distribution of the bitstream. The generated symbols may include symbols in the form of quantized levels. Here, the entropy decoding method may be the inverse process of the entropy encoding method described above.
[0111] The entropy decoding unit (210) can convert a one-dimensional vector-shaped coefficient into a two-dimensional block-shaped coefficient through a conversion coefficient scanning method to decode a conversion coefficient level (quantized level).
[0112] The quantized level can be dequantized in the dequantization unit (220) and inversely transformed in the inverse transformation unit (230). The quantized level can be generated as a restored residual block as a result of performing dequantization and / or inverse transformation. At this time, the dequantization unit (220) can apply a quantization matrix to the quantized level. The dequantization unit (220) and the inverse transformation unit (230) applied to the decoding device can apply the same technology as the dequantization unit (160) and the inverse transformation unit (170) applied to the aforementioned encoding device.
[0113] When an intra mode is used, the intra prediction unit (240) can generate a prediction block by performing a spatial prediction on the current block using sample values of already decoded blocks around the block to be decoded. The intra prediction unit (240) applied to the decoding device can apply the same technology as the intra prediction unit (120) applied to the aforementioned encoding device.
[0114] When an inter mode is used, the motion compensation unit (250) can generate a prediction block by performing motion compensation on the current block using a motion vector and a reference image stored in the reference picture buffer (270). The motion compensation unit (250) can generate a prediction block by applying an interpolation filter to a portion of the reference image when the value of the motion vector does not have an integer value. To perform motion compensation, it can be determined whether the motion compensation method of the prediction unit included in the corresponding encoding unit is a skip mode, merge mode, AMVP mode, or current picture reference mode based on the encoding unit, and motion compensation can be performed according to each mode. The motion compensation unit (250) applied to the decoder can apply the same technology as the motion compensation unit (122) applied to the aforementioned encoding unit.
[0115] The adder (201) can generate a restored block by adding the restored residual block and the prediction block. The filter unit (260) can apply at least one of the following to the restored block or the restored image: an inverse-LMCS, a deblocking filter, a sample adaptive offset, and an adaptive loop filter. The filter unit (260) applied to the decoder can apply the same filtering technology as the filter unit (180) applied to the aforementioned encoding device.
[0116] The filter unit (260) can output a restored image. The restored block or the restored image can be stored in a reference picture buffer (270) and used for inter-frame prediction. The restored block that has passed through the filter unit (260) may be part of the reference image. That is to say, the reference image may be a restored image composed of the restored blocks that have passed through the filter unit (260). The stored reference image may subsequently be used for inter-frame prediction or motion compensation.
[0117] FIG. 3 is a schematic diagram showing a video coding system to which the present invention can be applied.
[0118] A video coding system according to one embodiment may include an encoding device (10) and a decoding device (20). The encoding device (10) may transmit encoded video and / or image information or data to the decoding device (20) via a digital storage medium or network in the form of a file or streaming.
[0119] An encoding device (10) according to one embodiment may include a video source generation unit (11), an encoding unit (12), and a transmission unit (13). A decoding device (20) according to one embodiment may include a receiving unit (21), a decoding unit (22), and a rendering unit (23). The encoding unit (12) may be called a video / image encoding unit, and the decoding unit (22) may be called a video / image decoding unit. The transmission unit (13) may be included in the encoding unit (12). The receiving unit (21) may be included in the decoding unit (22). The rendering unit (23) may include a display unit, and the display unit may be composed of a separate device or an external component.
[0120] The video source generation unit (11) can acquire video / image through a process of capturing, synthesizing, or generating video / image. The video source generation unit (11) may include a video / image capture device and / or a video / image generation device. The video / image capture device may include, for example, one or more cameras, a video / image archive containing previously captured video / image, etc. The video / image generation device may include, for example, a computer, a tablet, and a smartphone, etc., and can generate video / image (electronically). For example, a virtual video / image may be generated through a computer, etc., in which case the video / image capture process may be replaced by a process of generating related data.
[0121] The encoding unit (12) can encode the input video / image. The encoding unit (12) can perform a series of procedures such as prediction, conversion, and quantization for compression and encoding efficiency. The encoding unit (12) can output the encoded data (encoded video / image information) in the form of a bitstream. The detailed configuration of the encoding unit (12) can also be configured in the same way as the encoding device (100) of FIG. 1 described above.
[0122] The transmission unit (13) can transmit encoded video / image information or data output in the form of a bitstream to the receiving unit (21) of the decoding device (20) via a digital storage medium or network in the form of a file or streaming. The digital storage medium may include various storage media such as USB, SD, CD, DVD, Blu-ray, HDD, SSD, etc. The transmission unit (13) may include elements for creating a media file through a predetermined file format and elements for transmission via a broadcasting / communication network. The receiving unit (21) can extract / receive the bitstream from the storage medium or network and transmit it to the decoding unit (22).
[0123] The decoding unit (22) can decode a video / image by performing a series of procedures such as inverse quantization, inverse transformation, and prediction corresponding to the operation of the encoding unit (12). The detailed configuration of the decoding unit (22) can also be configured to be identical to the decoding device (200) of FIG. 2 described above.
[0124] The rendering unit (23) can render the decoded video / image. The rendered video / image can be displayed through the display unit.
[0125]
[0126] Hereinafter, with reference to FIGS. 4 to 19, a method for deriving the partition structure of the current block by applying geometric transformation rules to the structure of adjacent blocks will be explained.
[0127]
[0128] FIG. 4 is a drawing illustrating a divided structure of a picture to which the present invention can be applied.
[0129] Referring to FIG. 4, the current picture may include a plurality of coding tree units (CTU). Each coding tree unit (CTU) may include a plurality of CUs (Coding Units) or TUs (Transform Units).
[0130] In addition, the current block may refer to a block of an intermediate node in the process of splitting from a CTU to a CU. However, embodiments of the present invention are not limited thereto, and it is obvious that the current block to which the present invention can be applied may be a CTU (Coding Tree Unit).
[0131]
[0132] Hereinafter, methods for deriving the partition structure of the current block by applying at least one geometric transformation rule to the partition structure of an adjacent block will be described. For example, geometric transformations may include methods of using the partition structure of a reference block identically, methods of using it by mirroring it in a horizontal, vertical, or diagonal direction, methods of using the partition structure of a reference block by pruning it, or methods of using the partition structure of a reference block by rotating it clockwise or counterclockwise. The reference block may include blocks that are spatially adjacent to the current block, as well as blocks that are temporally adjacent and blocks that are adjacent in the channel direction. Additionally, the reference block may include blocks that are not adjacent to the current block.
[0133]
[0134] FIG. 5 is a diagram illustrating a method for inducing a division structure of a current block according to an embodiment of the present invention.
[0135] Referring to FIG. 5, the current coding tree unit (CTU) may include multiple blocks. For example, the blocks may be CUs (Coding Units) or TUs (Transform Units). The multiple blocks within the current coding tree unit (CTU) may be represented through a partition tree. The partition tree may be composed of multiple layers having sequential depth.
[0136] For example, the current coding tree unit (CTU) may include a current block and a reference block adjacent to the current block. The reference block may be represented by a first node (n1) and may include a plurality of sub-nodes. The sub-nodes of the first node (n1) may represent the partition structure of the reference block. The current block may be represented by a second node (n2).
[0137] The first node (n1) and the second node (n2) may have a common parent node (n0). Additionally, the first node (n1) and the second node (n2) may be located at the same depth within the partition tree. For example, both the first node (n1) and the second node (n2) may have a second depth (depth2). However, embodiments of the present invention are not limited thereto, and the first node (n1) and the second node (n2) may have different depths within the partition tree.
[0138] To predict the partition structure of the current block, a reference block may be selected by searching blocks adjacent to the current block. The reference block may be a block that has already been decrypted. Here, the reference block may be determined based on signaling information (e.g., a reference block index). Additionally, the reference block may be determined as an adjacent block at a predefined location relative to the current block.
[0139] The partition structure of the current block can be predicted based on the partition structure of the reference block adjacent to the current block. The partition structure (or child nodes) of the current block can be predicted through geometric transformations of the partition structure (or child nodes) of the adjacent block.
[0140] In one embodiment, a copy flag may be signaled to a second node (n2) corresponding to the current block. Based on the copy flag, the child nodes of the second node (n2) can be predicted by identically copying the child nodes of the first node (n1). That is, the partition structure of the current block can be predicted by identically copying the partition structure of the reference block adjacent to the current block.
[0141]
[0142] FIG. 6 is a diagram illustrating a method for inducing a division structure of a current block according to an embodiment of the present invention.
[0143] Referring to FIG. 6, the current coding tree unit (CTU) may include multiple blocks. The multiple blocks within the current coding tree unit (CTU) may be represented through a partition tree. The partition tree may be composed of multiple layers having sequential depth.
[0144] For example, the current coding tree unit (CTU) may include a current block and a reference block horizontally adjacent to the current block. The reference block may be represented by a first node (n1) and may include a plurality of sub-nodes. The sub-nodes of the first node (n1) may represent the partition structure of the reference block. The current block may be represented by a second node (n2).
[0145] The first node (n1) and the second node (n2) may have a common parent node (n0). Additionally, the first node (n1) and the second node (n2) may be located at the same depth within the partition tree. For example, both the first node (n1) and the second node (n2) may have a second depth (depth2). However, embodiments of the present invention are not limited thereto, and the first node (n1) and the second node (n2) may have different depths within the partition tree.
[0146] To predict the partition structure of the current block, a reference block may be selected by searching blocks adjacent to the current block. The reference block may be a block that has already been decrypted. Here, the reference block may be determined based on signaling information (e.g., a reference block index). Additionally, the reference block may be determined as an adjacent block at a predefined location relative to the current block.
[0147] The partition structure of the current block can be predicted based on the partition structure of the reference block adjacent to the current block. The partition structure (or child nodes) of the current block can be predicted through geometric transformations of the partition structure (or child nodes) of the adjacent block.
[0148] In one embodiment, a horizontal mirroring flag may be signaled to a second node (n2) corresponding to the current block. Based on the horizontal mirroring flag, the sub-nodes of the second node (n2) can be predicted by horizontally mirroring the sub-nodes of the first node (n1). That is, the partition structure of the current block can be predicted by horizontally mirroring the partition structure of a reference block adjacent to the current block.
[0149] Although only the horizontal mirroring method is illustrated in FIG. 6, the sub-nodes of the second node (n2) can be predicted by mirroring the sub-nodes of the first node (n1) in the vertical direction.
[0150] In one embodiment, a vertical mirroring flag may be signaled to a second node (n2) corresponding to the current block. Based on the vertical mirroring flag, the sub-nodes of the second node (n2) can be predicted by vertically mirroring the sub-nodes of the first node (n1). That is, the partition structure of the current block can be predicted by vertically mirroring the partition structure of a reference block adjacent to the current block.
[0151]
[0152] FIG. 7 is a drawing for explaining a method for inducing a division structure of a current block according to an embodiment of the present invention.
[0153] Referring to FIG. 7, the current coding tree unit (CTU) may include multiple blocks. For example, the blocks may be CUs (Coding Units) or TUs (Transform Units). The multiple blocks within the current coding tree unit (CTU) may be represented through a partition tree. The partition tree may be composed of multiple layers having sequential depth.
[0154] For example, the current coding tree unit (CTU) may include a current block and a reference block diagonally adjacent to the current block. The reference block may be represented by a first node (n1) and may include a plurality of sub-nodes. The sub-nodes of the first node (n1) may represent the partition structure of the reference block. The current block may be represented by a second node (n2).
[0155] The first node (n1) and the second node (n2) may have a common parent node (n0). Additionally, the first node (n1) and the second node (n2) may be located at the same depth within the partition tree. For example, both the first node (n1) and the second node (n2) may have a second depth (depth2). However, the embodiments of the present invention are not limited thereto, and the child nodes of the second node (n2) may have different depths within the partition tree.
[0156] To predict the partition structure of the current block, a reference block may be selected by searching blocks adjacent to the current block. The reference block may be a block that has already been decrypted. Here, the reference block may be determined based on signaling information (e.g., a reference block index). Additionally, the reference block may be determined as an adjacent block at a predefined location relative to the current block.
[0157] The partition structure of the current block can be predicted based on the partition structure of the reference block adjacent to the current block. The partition structure (or child nodes) of the current block can be predicted through geometric transformations of the partition structure (or child nodes) of the adjacent block.
[0158] In one embodiment, a diagonal mirroring flag may be signaled to a second node (n2) corresponding to the current block. Based on the diagonal mirroring flag, the sub-nodes of the second node (n2) can be predicted by mirroring the sub-nodes of the first node (n1) in horizontal and vertical directions. That is, the partition structure of the current block can be predicted by mirroring the partition structure of a reference block adjacent to the current block in horizontal and vertical directions (i.e., diagonal directions).
[0159]
[0160] FIG. 8 is a drawing for explaining a method for inducing a division structure of a current block according to an embodiment of the present invention.
[0161] Referring to FIG. 8, the current coding tree unit (CTU) may include multiple blocks. For example, the blocks may be CUs (Coding Units) or TUs (Transform Units). The multiple blocks within the current coding tree unit (CTU) may be represented through a partition tree. The partition tree may be composed of multiple layers having sequential depth.
[0162] For example, the current coding tree unit (CTU) may include a current block and a reference block adjacent to the current block. A reference block may be represented by a first node (n1) and may include multiple sub-nodes of different depths. The first node (n1) may correspond to a second depth (depth2). The first node (n1) may include a third node (n3), a fourth node (n4), a fifth node (n5), and a sixth node (n6) corresponding to a third depth (depth3). The sixth node (n6) may include multiple sub-nodes. The sixth node (n6) may include a seventh node (n7) and an eighth node (n8) corresponding to a fourth depth (depth4). The second depth (depth2) may be shallower than the third depth (depth3), and the third depth (depth3) may be shallower than the fourth depth (depth4). The sub-nodes of the first node (n1) can represent the partition structure of the reference block. The current block can be represented by the second node (n2).
[0163] The first node (n1) and the second node (n2) may have a common parent node (n0). Additionally, the first node (n1) and the second node (n2) may be located at the same depth within the partition tree. For example, both the first node (n1) and the second node (n2) may have a second depth (depth2). However, embodiments of the present invention are not limited thereto, and the first node (n1) and the second node (n2) may have different depths within the partition tree.
[0164] To predict the partition structure of the current block, a reference block may be selected by searching blocks adjacent to the current block. The reference block may be a block that has already been decrypted. The partition structure of the current block can be predicted based on the partition structure of the reference block adjacent to the current block. Here, the reference block may be determined based on signaling information (e.g., a reference block index). Additionally, the reference block may be determined as an adjacent block at a predefined location relative to the current block.
[0165] Geometric transformations for predicting the partition structure (or child nodes) of the current block may involve pruning. That is, at least one geometric transformation and pruning may be performed on the partition structure (or child nodes) of the reference block.
[0166] Pruning may mean that some structures within the partitioning structure of a reference block are omitted or removed, and geometric transformations are performed. Alternatively, pruning may mean that when geometric transformations are performed on a reference block, geometric transformations for some structures are disabled.
[0167] In one embodiment, a vertical mirroring flag and a pruning flag may be signaled to the second node (n2) corresponding to the current block. Based on the pruning flag, pruning may be performed on the sub-nodes of the first node (n1). Through pruning, geometric transformations for at least some of the sub-nodes branching from the first node (n1) may be disabled. For example, mirroring may be disabled for the seventh node (n7) and the eighth node (n8) corresponding to the deepest fourth depth (depth4) among the sub-nodes branching from the first node (n1). And, based on the vertical mirroring flag, the sub-nodes of the first node (n1) on which pruning has been performed may be mirrored in the vertical direction.
[0168] Through this, the total depth of the sub-nodes branching from the second node (n2) may be smaller than the total depth of the sub-nodes branching from the first node (n1). For example, the lowest node included in the first node (n1) may correspond to a fourth depth (depth4). By performing pruning prior to mirroring the sub-nodes of the first node (n1), the lowest node among the predicted sub-nodes of the second node (n2) may correspond to a third depth (depth3). That is, the total depth of the predicted partition structure of the current block may be smaller than the total depth of the partition structure of the reference block.
[0169] Although only the vertical mirroring and pruning method is illustrated in FIG. 8, the sub-nodes of the second node (n2) can be predicted by copying and pruning the sub-nodes of the first node (n1).
[0170] In one embodiment, a copy flag and a pruning flag may be signaled to a second node (n2) corresponding to the current block. Based on the pruning flag, pruning may be performed on the sub-nodes of the first node (n1). Through pruning, geometric transformations for at least some of the sub-nodes branching from the first node (n1) may be disabled. For example, mirroring for the seventh node (n7) and the eighth node (n8) corresponding to the deepest fourth depth (depth4) among the sub-nodes branching from the first node (n1) may be disabled. And, based on the copy flag, the sub-nodes of the second node (n2) can be predicted by identically copying the sub-nodes of the first node (n1) on which pruning was performed. That is, the partition structure of the current block can be predicted by omitting or disabling a part of the partition structure of the reference block adjacent to the current block and copying it.
[0171]
[0172] FIG. 9 is a drawing for explaining a method for inducing a division structure of a current block according to an embodiment of the present invention.
[0173] Referring to FIG. 9, the current coding tree unit (CTU) may include multiple blocks. For example, the blocks may be CUs (Coding Units) or TUs (Transform Units). The multiple blocks within the current coding tree unit (CTU) may be represented through a partition tree. The partition tree may be composed of multiple layers having sequential depth.
[0174] For example, the current coding tree unit (CTU) may include a current block and a reference block adjacent to the current block. The reference block may be represented by a first node (n1) and may include a plurality of sub-nodes. The first node (n1) may correspond to a third depth (depth3) and may include a third node (n3) and a fourth node (n4) corresponding to a fourth depth (depth4). The third depth (depth3) may be shallower than the fourth depth (depth4). The sub-nodes of the first node (n1) may represent the partition structure of the reference block. The current block may be represented by a second node (n2). The second node (n2) may correspond to a second depth (depth2).
[0175] The first node (n1) and the second node (n2) may have a common parent node (n0). In this case, the first node (n1) and the second node (n2) may have different depths within the partition tree. The depth of the first node (n1) may be deeper than the depth of the second node (n2).
[0176] To predict the partition structure of the current block, a reference block may be selected by searching blocks adjacent to the current block. The reference block may be a block that has already been decrypted. The reference block may be a block at a lower level than the current block. Alternatively, the depth of the reference block within the partition tree may be deeper than the depth of the current block. Alternatively, the size of the reference block may be smaller than the size of the current block. Meanwhile, the reference block may be determined based on signaling information (e.g., a reference block index). Additionally, the reference block may be determined as an adjacent block at a predefined position relative to the current block.
[0177] The partition structure of the current block can be predicted based on the partition structure of the reference block adjacent to the current block. The partition structure (or child nodes) of the current block can be predicted through geometric transformations of the partition structure (or child nodes) of the adjacent block.
[0178] In one embodiment, a vertical mirroring flag and an upscaling flag may be signaled to a second node (n2) corresponding to the current block. Based on the vertical mirroring flag, the sub-nodes of the first node (n1) may be mirrored in the vertical direction.
[0179] And, based on the upscaling flag, the sub-nodes of the second node (n2) can be predicted by upscaling the sub-nodes of the first node (n1) that are mirrored in the vertical direction. That is, by mirroring and upscaling the partition structure of the reference block adjacent to the current block, the partition structure of the current block can be predicted.
[0180]
[0181] FIG. 10 is a drawing for explaining a method for inducing a division structure of a current block according to an embodiment of the present invention.
[0182] Referring to FIG. 10, the current coding tree unit (CTU) may include multiple blocks. For example, the blocks may be CUs (Coding Units) or TUs (Transform Units). The multiple blocks within the current coding tree unit (CTU) may be represented through a partition tree. The partition tree may be composed of multiple layers having sequential depth.
[0183] For example, the current coding tree unit (CTU) may include a current block and a reference block adjacent to the current block. The reference block may be represented by a first node (n1) and may include a plurality of sub-nodes. The first node (n1) may correspond to a second depth (depth2) and may include a third node (n3) corresponding to a third depth (depth3), a fourth node (n4), a fifth node (n5), and a sixth node (n6). The second depth (depth2) may be shallower than the third depth (depth3). The sub-nodes of the first node (n1) may represent the partition structure of the reference block. The current block may be represented by a second node (n2). The second node (n2) may correspond to a third depth (depth3).
[0184] The first node (n1) and the second node (n2) may have a common parent node (n0). In this case, the first node (n1) and the second node (n2) may have different depths within the partition tree. The depth of the second node (n2) may be deeper than the depth of the first node (n1).
[0185] To predict the partition structure of the current block, a reference block may be selected by searching blocks adjacent to the current block. The reference block may be a block that has already been decrypted. The reference block may be a block at a higher level than the current block. Alternatively, the depth of the current block within the partition tree may be deeper than the depth of the reference block. Alternatively, the size of the reference block may be larger than the size of the current block. Meanwhile, the reference block may be determined based on signaling information (e.g., the reference block index). Additionally, the reference block may be determined as an adjacent block at a predefined position relative to the current block.
[0186] The partition structure of the current block can be predicted based on the partition structure of the reference block adjacent to the current block. The partition structure (or child nodes) of the current block can be predicted through geometric transformations of the partition structure (or child nodes) of the adjacent block.
[0187] In one embodiment, a vertical mirroring flag and a downscaling flag may be signaled to a second node (n2) corresponding to the current block. Based on the vertical mirroring flag, the sub-nodes of the first node (n1) may be mirrored in the vertical direction.
[0188] And, based on the downscaling flag, the child nodes of the second node (n2) can be predicted by downscaling the child nodes of the first node (n1) that are mirrored in the vertical direction. At this time, the first node (n1) and the second node (n2) may have different depths within the partition tree. That is, the partition structure of the current block can be predicted by mirroring and downscaling the partition structure of the reference block adjacent to the current block.
[0189]
[0190] FIG. 11 is a drawing for explaining a method for inducing a division structure of a current block according to an embodiment of the present invention.
[0191] Referring to FIG. 11, the current coding tree unit (CTU) may include a plurality of blocks. For example, the blocks may be CU (Coding Unit) or TU (Transform Unit).
[0192] For example, the current coding tree unit (CTU) may include a current block and a reference block adjacent to the current block.
[0193] To predict the partition structure of the current block, a reference block may be selected by searching blocks adjacent to the current block. The reference block may be a block that has already been decrypted. Here, the reference block may be determined based on signaling information (e.g., a reference block index). Additionally, the reference block may be determined as an adjacent block at a predefined location relative to the current block.
[0194] The partition structure of the current block can be predicted based on the partition structure of the reference block adjacent to the current block. The partition structure of the current block can be predicted through geometric transformations of the partition structure of the adjacent block.
[0195] In one embodiment, a rotation flag may be signaled to the current block. Based on the rotation flag, the partition structure of the current block can be predicted by rotating the partition structure of the reference block 90 degrees clockwise. However, embodiments of the present invention are not limited thereto, and the angle and direction in which the partition structure of the reference block rotates may vary. For example, the partition structure of the current block can be predicted by rotating the partition structure of the reference block 90 degrees counterclockwise.
[0196]
[0197] FIG. 12 is a drawing for explaining a method for inducing a division structure of a current block according to an embodiment of the present invention.
[0198] Referring to FIG. 12, the first coding tree unit (CTU1) and the second coding tree unit (CTU2) may each include a plurality of blocks. For example, the blocks may be CUs (Coding Units) or TUs (Transform Units). The plurality of blocks within the first coding tree unit (CTU1) and the second coding tree unit (CTU2) may be represented through a partition tree. The partition tree may be composed of a plurality of layers having sequential depth.
[0199] For example, the second coding tree unit (CTU2) may include a current block, and the first coding tree unit (CTU1) may include a reference block adjacent to the current block. The reference block may be represented by a first node (n1) and may include a plurality of sub-nodes. The sub-nodes of the first node (n1) may represent the partition structure of the reference block. The current block may be represented by a second node (n2).
[0200] The first node (n1) and the second node (n2) may have different parent nodes. That is, the first node (n1) and the second node (n2) may not have a common parent node.
[0201] To predict the partition structure of the current block, a reference block may be selected by searching blocks adjacent to the current block. The reference block may be a block that has already been decrypted. Here, the reference block may be determined based on signaling information (e.g., a reference block index). Additionally, the reference block may be determined as an adjacent block at a predefined location relative to the current block.
[0202] The partition structure of the current block can be predicted based on the partition structure of the reference block adjacent to the current block. The partition structure (or child nodes) of the current block can be predicted through geometric transformations of the partition structure (or child nodes) of the adjacent block.
[0203] In one embodiment, a horizontal mirroring flag may be signaled to a second node (n2) corresponding to the current block. Based on the horizontal mirroring flag, the sub-nodes of the second node (n2) can be predicted by horizontally mirroring the sub-nodes of the first node (n1). That is, the partition structure of the current block can be predicted by horizontally mirroring the partition structure of a reference block that is included in a different CTU from the current block but is adjacent to the current block.
[0204] Although only the horizontal mirroring method is illustrated in FIG. 12, the sub-nodes of the second node (n2) can be predicted by mirroring the sub-nodes of the first node (n1) in a vertical direction. That is, by mirroring the partition structure of a reference block that is included in a different CTU from the current block but is adjacent to the current block in a vertical direction, the partition structure of the current block can be predicted.
[0205]
[0206] FIG. 13 is a drawing for explaining a method for inducing a division structure of a current block according to an embodiment of the present invention.
[0207] Referring to FIG. 13, the first coding tree unit (CTU1) and the second coding tree unit (CTU2) may each include a plurality of blocks. For example, the blocks may be CUs (Coding Units) or TUs (Transform Units). The plurality of blocks within the first coding tree unit (CTU1) and the second coding tree unit (CTU2) may be represented through a partition tree. The partition tree may be composed of a plurality of layers having sequential depth.
[0208] For example, the second coding tree unit (CTU2) may include a current block. To predict the partition structure of the current block, a block vector (BV) of the current block may be derived.
[0209] The block vector (BV) of the current block may be determined, for example, based on the block vector of an adjacent block (e.g., Block 1). Alternatively, the block vector (BV) of the current block may be a predefined block vector.
[0210] A reference block for predicting the partition structure of the current block can be determined based on the block vector (BV) of the current block. The block vector (BV) of the current block may indicate a reference block within the first coding tree unit (CTU1). The reference block may be a block that has already been decoded. The reference block may be represented by a first node (n1) and may include a plurality of sub-nodes. The sub-nodes of the first node (n1) may represent the partition structure of the reference block. The current block may be represented by a second node (n2).
[0211] The partition structure of the current block can be predicted based on the partition structure of the reference block indicated by the block vector (BV). The partition structure (or child nodes) of the current block can be predicted through at least one geometric transformation of the partition structure (or child nodes) of the reference block. For example, the geometric transformation may include using the partition structure of the reference block identically, using it by mirroring it in a horizontal direction, a vertical direction, or a horizontal / vertical direction, using the partition structure of the reference block by pruning it, or using the partition structure of the reference block by rotating it clockwise or counterclockwise.
[0212] In one embodiment, a copy flag may be signaled to a second node (n2) corresponding to the current block. Based on the copy flag, the sub-nodes of the second node (n2) can be predicted by identically copying the sub-nodes of the first node (n1). That is, the partition structure of the current block can be predicted by identically copying the partition structure of the reference block indicated by the block vector (BV).
[0213]
[0214] FIG. 14 is a drawing for explaining a method for inducing a division structure of a current block according to an embodiment of the present invention.
[0215] Referring to FIG. 14, the current block may be a block included in the current picture.
[0216] To predict the partition structure of the current block, blocks adjacent to the current block may be searched. The partition structure of the current block can be predicted based on the partition structure of a reference block placed at the same location as the current block. The reference block may be a block contained within a reference picture different from the current picture and placed at the same location as the current block. The reference block may be an already decrypted block.
[0217] Meanwhile, a reference picture containing a reference block may be explicitly determined based on signaling information (e.g., partition structure prediction reference picture index) or implicitly determined as a reference picture with a predefined sequence number in the reference picture list (e.g., the first reference picture in the reference picture list).
[0218] The partition structure of the current block can be predicted through at least one geometric transformation of the partition structure of the reference block. For example, the geometric transformation may include a method of using the partition structure of the reference block identically, a method of using it by mirroring it in a horizontal direction, a vertical direction, or a horizontal / vertical direction, a method of using the partition structure of the reference block by pruning it, a method of using the partition structure of the reference block by rotating it clockwise or counterclockwise, etc.
[0219] The embodiment of FIG. 14 can be performed when the adjacent block of the current block is not available (for example, when the current block is adjacent to a picture boundary, frame boundary, or slice boundary).
[0220]
[0221] FIG. 15 is a drawing for explaining a method for inducing a division structure of a current block according to an embodiment of the present invention.
[0222] Referring to FIG. 15, the current block may be a block included in the current picture.
[0223] To predict the partition structure of the current block, blocks adjacent to the current block can be searched. If the blocks adjacent to the current block are included in a picture different from the current picture, the motion vector (MV) of the current block can be derived.
[0224] The motion vector (MV) of the current block can be determined, for example, based on the motion vector of an adjacent block. Alternatively, the motion vector (MV) of the current block may be a predefined motion vector.
[0225] A reference block can be determined to predict the partition structure of the current block based on the motion vector (MV) of the current block. The motion vector (MV) of the current block may indicate a reference block within a reference picture. The reference block may be an already decoded block.
[0226] Meanwhile, the reference picture containing the reference block can be explicitly determined based on signaling information (e.g., partition structure prediction reference picture index). Additionally, the reference picture containing the reference block can be implicitly determined based on the reference picture at a predefined sequence number in the reference picture list (e.g., the first reference picture in the reference picture list) or the reference picture information of the block referenced when deriving the motion vector.
[0227] The partition structure of the current block can be predicted based on the partition structure of the reference block indicated by the motion vector (MV). The partition structure of the current block can be predicted through at least one geometric transformation of the partition structure of the reference block. For example, the geometric transformation may include a method of using the partition structure of the reference block identically, a method of using it by mirroring it in the horizontal direction, the vertical direction, or the horizontal / vertical direction, or a method of using the partition structure of the reference block by pruning it.
[0228] In one embodiment, the partition structure of the current block can be predicted by identically copying the partition structure of the reference block indicated by the motion vector (MV).
[0229]
[0230] FIG. 16 is a drawing for explaining a method for inducing a division structure of a current block according to an embodiment of the present invention.
[0231] Referring to FIG. 16, the current block may be a chrominance block. The reference block may be a corresponding luminance block corresponding to the current block, which is the chrominance block. The partitioning structure of the current block can be predicted based on the partitioning structure of the reference block. The reference block may be a block that has already been decoded.
[0232] The partition structure of the current block can be predicted through at least one geometric transformation of the partition structure of the reference block. For example, the geometric transformation may include a method of identically copying the partition structure of the reference block (a), a method of pruning the partition structure of the reference block (b), a method of downscaling the partition structure of the reference block (c), a method of pruning and downscaling the partition structure of the reference block (d), etc.
[0233] In one embodiment (b), when predicting the partition structure of the current color difference block, geometric transformations for at least some of the partition structures of the corresponding luminance block, which is a reference block, may be disabled. Subsequently, the partition structure of the current color difference block can be predicted by copying the remaining partition structures in which geometric transformations are not disabled.
[0234] Meanwhile, in another embodiment (b), when predicting the division structure of the current color difference block based on the division structure of the corresponding luminance block of the current color difference block, at least some of the division structures of the corresponding luminance block are deactivated based on the division characteristics of the corresponding luminance block, and the division structure of the current color difference block can be predicted by copying them. Here, the division characteristics of the corresponding luminance block may include an average binary tree division depth, an average multi-tree division depth, and an average ternary tree division depth. And, the deactivated block division structure may be any one of binary tree division, ternary tree division, and multi-tree division.
[0235]
[0236] FIG. 17 is a diagram illustrating a segmented structure prediction information signaling method according to one embodiment of the present invention.
[0237] Referring to FIG. 17, the partition structure of the current block included in the current picture can be predicted through at least one geometric transformation rule for the partition structure of the reference block. The reference block and the type of geometric transformation applied to the reference block can be determined through explicitly signaled information.
[0238] In one embodiment, the image encoding device may determine one reference block from a candidate group including at least one candidate block and transmit information (e.g., an index number) indicating the determined reference block to the image decoding device. Each candidate block included in the candidate group may be assigned an index number indicating the corresponding block. For example, the candidate group of candidate blocks for predicting the partition structure of the current block may include a first block (B1) to a fifth block (B5). Each of the first block (B1) to the fifth block (B5) may be assigned a first index number (Idx0) to a fifth index number (Idx4).
[0239] The first block (B1), the second block (B2), and the third block (B3) may be blocks spatially adjacent to the current block within the current picture. The fourth block (B4) may be a block placed at the same location as the current block within the first picture (Picture1), which is different from the current picture. If the current block is a color difference block, the fifth block (B5) may be a corresponding luminance block corresponding to the current block.
[0240] The reference block can be determined based on the index number. The partition structure of the current block can be predicted through at least one geometric transformation of the partition structure of the reference block.
[0241] For example, when a video decoder receives a first index number (Idx0) and a diagonal mirroring flag from a video encoder, the sub-nodes of the second node (n2) can be predicted by mirroring the sub-nodes of the first node (n1) in horizontal and vertical directions.
[0242] In another embodiment, the image encoding device may determine one position information and / or a picture to which the reference block belongs from a group of candidates including at least one position information of a reference block and / or a picture to which the reference block belongs, and transmit information indicating the determined position information and the picture to which the reference block belongs to an image decoder. The position information of the reference block may include a motion vector or a block vector.
[0243]
[0244] In another embodiment, the image encoding device may determine whether to use a prediction method for a block partitioning structure and transmit information indicating whether to use it to the image decoder.
[0245] For example, if the current block is a chrominance block, the image encoding device may determine whether to use the corresponding luminance block's division structure when performing a prediction of the current block's division structure. Then, it may transmit information indicating whether to use it to the image decoder.
[0246] In another example, when predicting the segmentation structure of the current block, the chrominance block, the image encoding device may determine whether geometric transformations for at least some of the segmentation structures of the reference block, the corresponding luminance block, are disabled. Then, it may transmit information indicating whether geometric transformations for at least some of the segmentation structures of the corresponding luminance block are disabled to the image decoder.
[0247] Alternatively, the video encoding device may transmit information indicating whether to use a prediction method for a block partitioning structure in units such as a sequence parameter set, a picture parameter set, a slice, a tile, or a CTU.
[0248] In another embodiment, the image encoding device may determine at least one geometric transformation method from a group of candidates including at least one geometric transformation method, and transmit information indicating the determined geometric transformation method to the image decoding device.
[0249] The partitioning structure of the current block can be predicted based on the partitioning structure of the reference block. The geometric transformation method applied to the partitioning structure of the reference block can be determined based on information indicating the geometric transformation method transmitted from the image encoding device.
[0250]
[0251] FIG. 18 is a flowchart illustrating an image decoding method according to an embodiment of the present invention. The flowchart of FIG. 18 can be performed in an image decoding device.
[0252] Referring to FIG. 18, the partition structure of the current block can be predicted (S1810).
[0253] The partition structure of the current block can be predicted based on the partition structure of a reference block that is different from the current block.
[0254] In one embodiment, the current block may be a color difference block, and the reference block may be a luminance block corresponding to the current block.
[0255] In another embodiment, the reference block corresponds to a first node in the partition tree, and the predicted partition structure may correspond to a second node. The predicted partition structure is a structure in which at least some of the child nodes branching from the first node are removed, and the total depth of the child nodes branching from the second node may be smaller than the total depth of the child nodes branching from the first node.
[0256] In another embodiment, the current block is contained within the current coding tree unit, and the reference block is contained within the current coding tree unit, and the reference block may be adjacent to the current block in any one of the horizontal, vertical, or diagonal directions.
[0257] In another embodiment, the predicted partition structure may be the same as the partition structure of the reference block.
[0258] In another embodiment, the predicted partition structure may be a structure that mirrors the partition structure of the reference block in at least one of the horizontal and vertical directions.
[0259] In another embodiment, the predicted partition structure is predicted through a geometric transformation of the partition structure of the reference block, at least some of the partition structures of the reference block have the geometric transformation disabled, and the total depth of the predicted partition structure may be smaller than the total depth of the partition structure of the reference block.
[0260] In another embodiment, the reference block corresponds to a first node in the partition tree, the predicted partition structure corresponds to a second node, the depth of the first node is deeper than the depth of the second node, and the predicted partition structure may be a structure that upscales the partition structure of the reference block.
[0261] In another embodiment, the reference block corresponds to a first node in the partition tree, the predicted partition structure corresponds to a second node, the depth of the second node is deeper than the depth of the first node, and the predicted partition structure may be a structure that downscales the partition structure of the reference block.
[0262] In another embodiment, the predicted partition structure may be a structure obtained by rotating the partition structure of the reference block in either a clockwise or a counterclockwise direction.
[0263] In another embodiment, the current block is contained within the current coding tree unit, and the reference block may be contained within a reference coding tree unit different from the current coding tree unit.
[0264] In another embodiment, the block vector of the current block is derived based on the block vector of a neighboring block adjacent to the current block, and the reference block can be determined based on the block vector.
[0265] In another embodiment, the block vector of the current block is derived based on information indicating one block vector among a plurality of block vectors, and the reference block can be determined based on the block vector.
[0266] In another embodiment, the current block is contained within a first image unit, and neighbor blocks adjacent to the current block are contained within a second image unit different from the first image unit, the first image unit and the second image unit are any one of a frame, a slice, and a picture, and the reference block may be contained within a reference picture different from the current picture.
[0267] In another embodiment, the position of the reference block within the reference picture may correspond to the position of the current block within the current picture.
[0268] In another embodiment, the motion vector of the current block is derived based on the motion vector of a neighboring block adjacent to the current block, and the reference block can be determined based on the motion vector.
[0269] In another embodiment, the reference block may be determined based on information indicating the reference block among a plurality of candidate blocks.
[0270] In another embodiment, the step of predicting the partition structure of the current block can be predicted based on information indicating one geometric transformation among a plurality of geometric transformations.
[0271] Based on the predicted partition structure, the current block can be partitioned (S1820). Then, the partitioned current block can be decoded (S1830).
[0272]
[0273] FIG. 19 is a flowchart illustrating an image encoding method according to an embodiment of the present invention. The flowchart of FIG. 19 can be performed in an image encoding device.
[0274] Referring to FIG. 19, the partition structure of the current block can be determined (S1910).
[0275] And, based on the division structure of the current block, the current block can be divided (S1920), and, the divided current block can be encoded (S1930).
[0276] In one embodiment, partition structure prediction information used to predict the partition structure of the current block based on the partition structure of a reference block different from the current block is generated, and this can be encoded and transmitted to an image decoder via a bitstream. Here, the partition structure prediction information may include the information described in FIGS. 5 to 17.
[0277]
[0278] FIG. 20 is a drawing illustrating an exemplary content streaming system to which an embodiment according to the present invention can be applied.
[0279] As illustrated in FIG. 20, a content streaming system to which an embodiment of the present invention is applied may largely include an encoding server, a streaming server, a web server, a media storage, a user device, and a multimedia input device.
[0280] The encoding server described above compresses content input from multimedia input devices, such as smartphones, cameras, and CCTVs, into digital data to generate a bitstream and transmits it to the streaming server. As another example, if multimedia input devices, such as smartphones, cameras, and CCTVs, generate the bitstream directly, the encoding server may be omitted.
[0281] The bitstream above may be generated by a video encoding method and / or video encoding device to which an embodiment of the present invention is applied, and the streaming server may temporarily store the bitstream during the process of transmitting or receiving the bitstream.
[0282] The streaming server transmits multimedia data to a user device based on a user request through a web server, and the web server can act as a medium to inform the user of available services. When a user requests a desired service from the web server, the web server transmits it to the streaming server, and the streaming server can transmit multimedia data to the user. At this time, the content streaming system may include a separate control server, and in this case, the control server can perform the role of controlling commands and responses between each device within the content streaming system.
[0283] The streaming server can receive content from a media storage and / or an encoding server. For example, when receiving content from the encoding server, the content can be received in real time. In this case, to provide a seamless streaming service, the streaming server can store the bitstream for a certain period of time.
[0284] Examples of the above user devices may include mobile phones, smartphones, laptop computers, digital broadcasting terminals, PDAs (personal digital assistants), PMPs (portable multimedia players), navigation systems, slate PCs, tablet PCs, ultrabooks, wearable devices (e.g., smartwatches, smart glasses, HMDs (head-mounted displays)), digital TVs, desktop computers, digital signage, etc.
[0285] Each server within the above-mentioned content streaming system can be operated as a distributed server, and in this case, data received from each server can be processed in a distributed manner.
[0286]
[0287] The above embodiments may be performed in the same or a corresponding way in the encoding device and the decoding device. Additionally, an image may be encoded / decoded using at least one of the above embodiments or a combination of at least one.
[0288] The order in which the above embodiments are applied may differ between the encoding device and the decoder. Alternatively, the order in which the above embodiments are applied may be the same between the encoding device and the decoder.
[0289] The above embodiments may be performed for each of the luminance and chrominance signals. Alternatively, the above embodiments for the luminance and chrominance signals may be performed in the same way.
[0290] In the above embodiments, methods are described based on flowcharts as a series of steps or units; however, the present invention is not limited to the order of the steps, and some steps may occur in a different order or simultaneously with other steps as described above. Furthermore, those skilled in the art will understand that the steps shown in the flowcharts are not exclusive, that other steps may be included, or that one or more steps of the flowcharts may be omitted without affecting the scope of the present invention.
[0291] The above embodiments may be implemented in the form of program instructions that can be executed through various computer components and recorded on a computer-readable recording medium. The computer-readable recording medium may include program instructions, data files, data structures, etc., either individually or in combination. The program instructions recorded on the computer-readable recording medium may be those specifically designed and configured for the present invention, or they may be those known and available to those skilled in the art of computer software.
[0292] The bitstream generated by the encoding method according to the above embodiment may be stored in a non-transient computer-readable recording medium. Additionally, the bitstream stored in the non-transient computer-readable recording medium may be decoded by the decoding method according to the above embodiment.
[0293] Herein, examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tapes; optical recording media such as CD-ROMs and DVDs; magneto-optical media such as floptical disks; and hardware devices specifically configured to store and execute program instructions such as ROM, RAM, and flash memory. Examples of program instructions include machine code, such as that generated by a compiler, as well as high-level language code that can be executed by a computer using an interpreter, etc. The hardware devices may be configured to operate as one or more software modules to perform processing according to the present invention, and vice versa.
[0294] Although the present invention has been described above with specific details such as specific components, limited embodiments, and drawings, this is provided only to aid in a more comprehensive understanding of the invention, and the invention is not limited to the above embodiments, and a person skilled in the art to which the invention belongs can make various modifications and variations from this description.
[0295] Accordingly, the scope of the present invention should not be limited to the embodiments described above, and all modifications equivalent to or equivalent to the claims set forth below, as well as the claims described below, shall be considered to fall within the scope of the concept of the present invention.
[0296]
[0297] The present invention can be used in a device for encoding / decoding images and a recording medium storing a bitstream.
Claims
1. A step of predicting the partition structure of the current block; A step of dividing the current block based on the predicted division structure; and The step of decoding the above-mentioned divided current block, comprising: The above predicted partition structure is predicted based on the partition structure of the reference block, and An image decoding method characterized in that the above reference block is different from the above current block.
2. In Paragraph 1, An image decoding method characterized in that the current block is a color difference block and the reference block is a luminance block corresponding to the current block.
3. In Paragraph 2, The above predicted partition structure is, Pruning the segmented structure of the above luminance block, and An image decoding method characterized by being predicted through a geometric transformation of the segmented structure of the pruned luminance block above.
4. In Paragraph 1, The above current block is included within the current coding tree unit, and The above reference block is included within the current coding tree unit, and An image decoding method characterized in that the above reference block is adjacent to the above current block in any one of horizontal, vertical, or diagonal directions.
5. In Paragraph 1, An image decoding method characterized in that the predicted partition structure is identical to the partition structure of the reference block.
6. In Paragraph 1, An image decoding method characterized in that the predicted partition structure is a structure that mirrors the partition structure of the reference block in at least one of the horizontal and vertical directions.
7. In Paragraph 1, The above predicted partition structure is, Pruning the partition structure of the above reference block, and An image decoding method characterized by being predicted through a geometric transformation of the partition structure of the above-mentioned pruned reference block.
8. In Paragraph 1, The above reference block is a block at a lower level than the above current block, and An image decoding method characterized in that the predicted partition structure is a structure that upscales the partition structure of the reference block.
9. In Paragraph 1, The above reference block is a block at a higher level than the above current block, and An image decoding method characterized in that the predicted partition structure is a structure that downscales the partition structure of the reference block.
10. In Paragraph 1, An image decoding method characterized in that the predicted partition structure is a structure obtained by rotating the partition structure of the reference block in either a clockwise or counterclockwise direction.
11. In Paragraph 1, The above current block is included within the current coding tree unit, and An image decoding method characterized in that the above reference block is included within a reference coding tree unit different from the current coding tree unit.
12. In Paragraph 11, The block vector of the current block is derived based on the block vector of a neighboring block adjacent to the current block, and An image decoding method characterized in that the above reference block is determined based on the above block vector.
13. In Paragraph 11, The block vector of the current block above is derived based on information indicating one block vector among a plurality of block vectors, and An image decoding method characterized in that the above reference block is determined based on the above block vector.
14. In Paragraph 1, The above current block is included within the first image unit, and Neighbor blocks adjacent to the current block are included within a second image unit different from the first image unit, and The first image unit and the second image unit are any one of a frame, a slice, and a picture, and A video decoding method characterized in that the above reference block is contained within a reference picture different from the current picture.
15. In Paragraph 14, A video decoding method characterized in that the position of the reference block within the reference picture corresponds to the position of the current block within the current picture.
16. In Paragraph 14, The motion vector of the current block is derived based on the motion vector of a neighboring block adjacent to the current block, and An image decoding method characterized in that the above reference block is determined based on the above motion vector.
17. In Paragraph 1, The above reference block is, An image decoding method characterized by determining, among a plurality of candidate blocks, based on information indicating the reference block.
18. In Paragraph 1, The step of predicting the partition structure of the current block above is, An image decoding method characterized by predicting based on information indicating one geometric transformation among a plurality of geometric transformations.
19. Step to determine the partition structure of the current block; A step of dividing the current block based on the division structure of the current block; and The step of encoding the above-mentioned divided current block, comprising: An image encoding method characterized by encoding partition structure prediction information used to predict the partition structure of the current block based on the partition structure of the reference block.
20. A method for transmitting a bitstream generated by a video encoding method, The above transmission method includes the step of transmitting the bitstream, and The above image encoding method is, Step of determining the partition structure of the current block; A step of dividing the current block based on the division structure of the current block; and The step of encoding the above-mentioned divided current block, comprising: A transmission method characterized by encoding partition structure prediction information used to predict the partition structure of the current block based on the partition structure of the reference block.