WO2020175914A1 - 영상 신호 부호화/복호화 방법 및 이를 위한 장치 - Google Patents

영상 신호 부호화/복호화 방법 및 이를 위한 장치 Download PDF

Info

Publication number
WO2020175914A1
WO2020175914A1 PCT/KR2020/002752 KR2020002752W WO2020175914A1 WO 2020175914 A1 WO2020175914 A1 WO 2020175914A1 KR 2020002752 W KR2020002752 W KR 2020002752W WO 2020175914 A1 WO2020175914 A1 WO 2020175914A1
Authority
WO
WIPO (PCT)
Prior art keywords
tile
slice
block
picture
syntax
Prior art date
Application number
PCT/KR2020/002752
Other languages
English (en)
French (fr)
Inventor
이배근
Original Assignee
주식회사 엑스리스
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 엑스리스 filed Critical 주식회사 엑스리스
Priority to US17/259,139 priority Critical patent/US11394971B2/en
Priority to CN202080004122.1A priority patent/CN112470479A/zh
Priority to MX2021010005A priority patent/MX2021010005A/es
Publication of WO2020175914A1 publication Critical patent/WO2020175914A1/ko
Priority to US17/548,622 priority patent/US11716471B2/en
Priority to US18/208,813 priority patent/US20240022720A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • H04N19/122Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/174Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a slice, e.g. a line of blocks or a group of blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation

Definitions

  • the present invention relates to a video signal encoding/decoding method and an apparatus therefor.
  • Video services are in demand.
  • the biggest problem with high-definition video services is that the amount of data increases significantly, and to solve this problem, research to improve the video compression rate is actively being conducted.
  • MPEG Motion Picture Experts Group
  • ITU-T International Telecommunication Union
  • JCT-VC Joint Collaborative Team on Video Coding
  • An object of the present invention is to provide a method for dividing a picture into a plurality of tiles or a plurality of slices, and an apparatus for performing the above method in encoding/decoding a video signal.
  • An object of the present invention is to provide a method for dividing a picture into a plurality of tiles, and a method for partitioning a slice based on a tile index and an apparatus for performing the method.
  • an object of the present invention is to provide a method for adaptively determining whether to encode/decrypt a tile index and an apparatus for performing the method.
  • the current picture is made of a plurality of tiles.
  • segmentation it may include a step of decoding information indicating a method of determining the slice, and defining at least one tile as a slice.
  • the information indicating the method of determining the slice is defined according to the raster scan order. of 2020/175914 1»(:1 ⁇ 1 ⁇ 2020/002752
  • the first slice is based on the tile at the position set in the first slice. Is defined as, and when the first slice is not the last slice in the current picture, a first syntax for identifying the tile at the preset position in the first slice is parsed from the bitstream, and the first slice is a picture In the case of the last slice, the parsing of the first syntax may be omitted.
  • the current picture is composed of a plurality of tiles.
  • the step of encoding information indicating the method of determining the slice, and the step of defining at least one tile as a slice may be included.
  • the information indicating the method of determining the slice is defined according to the raster scan order.
  • the method of determining the slice indicates the method of defining a square shape
  • the first slice is based on the tile at the position set for the first slice. Is defined as, and when the first slice is not the last slice in the current picture, a first syntax for identifying the tile at the preset position in the first slice is encoded in the bitstream, and the first slice is the picture In the case of the last slice, the encoding of the first syntax may be omitted.
  • the first syntax may indicate an index difference value between the tile at the preset position in the first slice and the tile at the position set for the second slice.
  • the first syntax is a value obtained by dividing a predetermined value from the index difference value between the tile at the preset position in the first slice and the tile at the position set for the second slice Can represent
  • a second syntax indicating the size of the first slice is additionally parsed/coded, and the first slice If the slice is the last slice in the current picture, the parsing/encoding of the second syntax may be omitted.
  • the first slice is determined based on the number of tiles included in the first slice, and when the first slice is not the last slice in the current picture, the When the third syntax indicating the number of tiles included in the first slice is parssim/encoded and the first slice is the last slice in the picture, parsym/encoding of the third syntax may be omitted.
  • encoding/decoding efficiency can be improved by dividing a picture into a plurality of tiles or slices.
  • Encoding/decoding efficiency can be improved.
  • the encoding/decoding efficiency can be improved by adaptively determining whether or not to encode/decode the tile index according to the slide switch.
  • FIG. 1 is a block diagram of an image encoder (encoder) according to an embodiment of the present invention.
  • FIG. 2 is a block diagram of an image decoder (decoder) according to an embodiment of the present invention.
  • FIG. 3 is a diagram showing a basic coding tree unit according to an embodiment of the present invention.
  • FIG. 4 is a diagram showing various division types of a coding block.
  • FIG. 5 is a diagram showing an example of a division of a coding tree unit.
  • FIG. 6 is a flow chart of an inter prediction method according to an embodiment of the present invention.
  • Figure 7 is a process of inducing the motion information of the current block in the merge mode.
  • FIG. 8 is a diagram illustrating candidate blocks used to induce a merge candidate.
  • FIG. 9 is a diagram for explaining an example of determining a motion vector for each subblock.
  • Fig. is a diagram to explain the update pattern of the motion information table.
  • FIG. 11 is a diagram showing an update pattern of a motion information table.
  • FIG. 12 is a diagram showing an example in which an index of a previously stored motion information candidate is updated.
  • FIG. 13 is a diagram showing the location of a representative sub-block.
  • FIG. 14 shows an example in which a motion information table is generated for each inter prediction mode.
  • 15 is a diagram showing an example in which a redundancy test is performed only for some of the merge candidates.
  • Fig. 16 is a diagram showing an example in which a redundancy test with a specific merge candidate is omitted.
  • 17 is a flow chart of an intra prediction method according to an embodiment of the present invention.
  • 18 is a diagram showing intra prediction modes.
  • 19 and 20 are diagrams showing examples of a one-dimensional arrangement in which reference samples are arranged in a line.
  • 21 is a diagram illustrating an angle in which directional intra prediction modes form a straight line parallel to the X axis.
  • Fig. 23 is a diagram showing wide-angle intra ie modes.
  • 24 is a flow chart showing the process of determining the block strength.
  • 26 is a diagram showing a picture dividing method according to an embodiment of the present invention.
  • FIG. 27 shows an example in which a picture is divided into a plurality of tiles.
  • Fig. 28 is a view for explaining the generation of a brick.
  • Figs. 29 and 30 show an example of defining a tile group based on the raster order.
  • Fig. 31 is a diagram showing an example in which only square tile groups are allowed.
  • Encoding and decoding of an image is performed in block units. For example, encoding/decoding processing such as transformation, quantization, prediction, in-loop filtering, or restoration is performed on a coding block, a transformation block, or a prediction block.
  • encoding/decoding processing such as transformation, quantization, prediction, in-loop filtering, or restoration is performed on a coding block, a transformation block, or a prediction block.
  • the current block may represent a coding block, a transform block, or, for example, a block according to the current encoding/decoding process step.
  • the term'unit' used in this specification denotes a basic unit for performing a specific de-encryption/decryption process
  • 'block' denotes a sample array of a predetermined size.
  • ,'Block' and'unit' may be used as equivalent meanings.
  • the coding block and the coding unit have the same meaning.
  • FIG. 1 is a block diagram of an image encoder (encoder) according to an embodiment of the present invention.
  • the image encoding apparatus 100 includes a picture division unit 110, a prediction unit 120, 125,
  • Conversion unit 130 quantization unit 135, re-alignment unit 160, entropy encoding unit 165,
  • An inverse quantization unit 140, an inverse transform unit 145, a filter unit 150, and a memory 155 may be included.
  • Each of the components shown in Fig. 1 is shown independently to represent different characteristic functions in the image encoding apparatus, and does not mean that each component is made up of separate hardware or a single software component. That is, each component is For convenience of explanation, it is listed and included in each component, and at least two components of each component are combined to form a single component, or one component can be divided into multiple components to perform functions, and the integrated embodiment and separation of each component
  • the embodiments described above are also included in the scope of the present invention as long as it does not depart from the essence of the present invention.
  • some of the components may not be essential components to perform the essential functions of the present invention, but may be optional components to improve performance only.
  • the present invention is the only component used to improve performance. Structures including only essential components, excluding optional components used for performance improvement, are also included in the scope of the rights of the present invention.
  • the picture dividing unit (no) can divide the input picture into at least one processing unit.
  • the processing unit may be a prediction unit (prediction unit:
  • TU Transform Unit
  • CU coding unit
  • a picture is divided into a combination of a plurality of coding units, prediction units, and transformation units.
  • a picture can be coded by selecting a combination of a coding unit, a prediction unit, and a conversion unit based on a predetermined criterion (for example, a cost function).
  • a picture can be divided into a plurality of coding units.
  • a recursive tree structure such as a quad tree structure can be used.
  • a coding unit divided into other coding units using the largest coding unit as a root can be divided with as many child nodes as the number of divided coding units.
  • a coding unit that is no longer divided according to certain restrictions becomes a leaf node, i.e., assuming that only square division is possible for one coding unit, one coding unit can be divided into up to four different coding units.
  • the coding unit is the unit that performs the coding.
  • a prediction unit is at least one of the same size within a coding unit.
  • It may be divided into a shape such as a square or a rectangle, and one of the prediction units divided within one coding unit may be divided so that one prediction unit has a different shape and/or size from the other prediction unit. have.
  • intra example can be performed without dividing into a plurality of prediction units NxN.
  • These prediction units 120 and 125 may include an inter prediction unit 120 that performs inter prediction and an intra prediction unit 125 that performs intra prediction. Whether to use inter prediction or intra prediction for the prediction unit You can decide whether to perform the prediction, and determine specific information (e.g., intra prediction mode, motion vector, reference picture, etc.) for each prediction method. At this time, the processing unit in which the prediction is performed, the prediction method, and the specific content are determined. The processing unit may be different. For example, the method of prediction and the mode of prediction are determined by the prediction unit, and the execution of the prediction may be performed by the conversion unit.
  • the residual value (residual block) between the generated prediction block and the original block can be input to the transform unit 130.
  • the prediction mode information and motion vector information used for prediction are included in the entropy encoding unit together with the residual value. ), and transmitted to the decoder.
  • the prediction block is transmitted through the prediction units (120, 125). It is also possible to encode the original block as it is and transmit it to the decoder without creating it.
  • the inter prediction unit 120 may predict the prediction unit based on information of at least one of the previous or subsequent pictures of the current picture.
  • the prediction unit may be predicted based on the prediction unit.
  • the inter prediction unit 120 may include a reference picture interpolation unit, a motion prediction unit, and a motion compensation unit.
  • the reference picture interpolation unit receives reference picture information from the memory 155 and can generate pixel information less than an integer pixel from the reference picture. In the case of a luminance pixel, pixel information less than an integer pixel in units of 1/4 pixel A DCT-based 8-tap interpolation filter with different filter coefficients can be used to generate a color difference signal. A DCT-based 4-tap interpolation filter that is different can be used.
  • Motion prediction unit performs motion based on the reference picture interpolated by the reference picture interpolation unit.
  • Prediction can be performed.
  • FBMA Full search-based Block Matching Algorithm
  • TSS Three Step Search
  • NTS New TSS
  • the motion vector can have a motion vector value of 1/2 or 1/4 pixel unit based on the interpolated pixel.
  • the current prediction unit can be predicted by different motion prediction methods: skip method, merge method, AMVP (Advanced Motion Vector Prediction) method, Intra Block Copy method. ) Method, etc., can be used.
  • the intra prediction unit 125 may generate a prediction unit based on reference pixel information around the current block, which is pixel information in the current picture. Since the surrounding block of the current prediction unit is a block on which inter prediction has been performed, the reference pixel In the case of this inter-predictioned pixel, the reference pixel included in the inter-prediction block can be replaced with the reference pixel information of the surrounding intra-prediction block, i.e., when the reference pixel is not available. In this case, at least one reference pixel among the available reference pixels can be used to replace the unavailable reference pixel information.
  • the prediction mode may have a directional prediction mode that uses reference pixel information according to the prediction direction and a non-directional mode that does not use directional information when performing prediction.
  • a mode for predicting luminance information and a mode for chrominance information The mode for predicting a may be different, and the intra prediction mode information or the predicted luminance signal information used to predict the luminance information to predict the color difference information can be utilized.
  • intra prediction can be performed using a reference pixel based on the conversion unit.
  • the NxN division is used only for the smallest coding unit. Intra prediction can be used.
  • the intra prediction method can generate a prediction block after applying the AIS (Adaptive Intra Smoothing) filter to the reference pixel according to the prediction mode.
  • the type of AIS filter applied to the reference pixel may be different.
  • the intra prediction mode of the prediction unit can be predicted from the intra prediction mode of the prediction unit existing around the current prediction unit.
  • the prediction mode of the current prediction unit is predicted using the mode information predicted from the surrounding prediction unit, the current prediction unit is predicted. If the intra prediction mode of the unit and the surrounding prediction unit is the same, information indicating that the prediction mode of the current prediction unit and the surrounding prediction unit is the same can be transmitted using predefined flag information. If the prediction mode of the current prediction unit and the surrounding prediction unit is virtual In this case, entropy encoding can be performed to encode prediction mode information of the current block.
  • a residual block including residual information which is a difference between the prediction unit and the original block of the prediction unit based on the prediction unit generated by the prediction units 120 and 125, can be generated.
  • the generated residual block may be input to the transform unit 130.
  • the original block and the residual block including residual information of the prediction unit generated through the prediction units 120 and 125 are transformed, such as DCT (Discrete Cosine Transform) or DST (Discrete Sine Transform). It can be converted using method.
  • the DCT conversion core includes at least one of DCT2 or DCT8, and the DST conversion core includes DST7. Whether to apply DCT or DST to convert the residual block, the prediction unit used to generate the residual block Intra 21
  • the prediction mode information can be determined based on the prediction mode information.
  • the transformation for the residual block can also be skipped.
  • the flag indicating whether the transformation for the residual block will be skipped can be encoded. Transformation skipping means that the size is a threshold. The following may be acceptable for residual blocks, luma components, or chroma components under the 4:4:4 format.
  • the quantization unit 135 may quantize values converted into the frequency domain by the transform unit 130.
  • the quantization coefficient may vary depending on the block or the importance of the image.
  • the value calculated by the quantization unit 135 may be provided to the inverse quantization unit 140 and the re-alignment unit 160.
  • the rearrangement unit 160 may rearrange the coefficient values with respect to the quantized residual values.
  • the rearrangement unit 160 may change the two-dimensional block shape coefficient into a one-dimensional vector shape through a coefficient scanning method. For example,
  • the rearrangement unit 160 can scan from DC coefficients to coefficients in the high frequency domain and change them to a one-dimensional vector form using a Zig-Zag Scan method. -Instead of zag scan A vertical scan that scans two-dimensional block shape coefficients in the column direction, and a horizontal scan that scans two-dimensional block shape coefficients in the row direction can also be used, i.e., zig-zag scan depending on the size of the transformation unit and the intra prediction mode. You can decide which scanning method will be used, vertical scanning and horizontal scanning.
  • the entropy encoding unit 165 uses the values calculated by the re-alignment unit 160 as the basis.
  • Entropy coding can be performed using various coding methods such as exponential is (Exponential Golomb), CAVLC (Context-Adaptive Variable Length Coding), and CAB AC (Context-Adaptive Binary Arithmetic Coding). .
  • the entropy encoding unit 165 is the residual value coefficient information and block type information, prediction mode information, division unit information, prediction unit information and transmission unit information of the coding unit from the reordering unit 160 and the prediction units 120 and 125. , Motion vector information, reference frame information, block interpolation information, filtering information, etc. can be encoded.
  • the inverse quantization unit 140 and the inverse transform unit 145 inverse quantize values quantized by the quantization unit 135 and inverse transform the values transformed by the transform unit 130.
  • Inverse quantization unit 140 and inverse transform unit 145 The residual value (Residual) generated in (145) is combined with the prediction unit predicted through the motion estimation unit, motion compensation unit, and intra prediction unit included in the prediction units (120, 125) to create a reconstructed block. have.
  • the filter unit 150 may include at least one of a deblocking filter, an offset correction unit, and an ALF (Adaptive Loop Filter).
  • a deblocking filter may include at least one of a deblocking filter, an offset correction unit, and an ALF (Adaptive Loop Filter).
  • ALF Adaptive Loop Filter
  • the deblocking filter can remove block distortion caused by the boundary between blocks in the restored picture. To determine whether to perform deblocking, based on how many columns or rows included in the block, the current pixel is included. It is possible to determine whether to apply a deblocking filter to a block. When applying a deblocking filter to a block, a strong filter or a weak filter can be applied depending on the required deblocking filtering strength. Also, a deblocking filter can be applied. In application, when performing vertical filtering and horizontal filtering, horizontal filtering and vertical filtering can be processed in parallel.
  • the offset correction unit can correct the offset from the original image in pixel units for the deblocking image.
  • the pixels included in the image are divided into a certain number of areas and then offset. It is possible to use a method of deciding an area to perform the data and applying an offset to the corresponding area, or a method of applying an offset by considering the edge information of each pixel.
  • This ALF Adaptive Loop Filtering
  • This ALF can be performed on the basis of a value obtained by comparing the filtered restored image and the original image. After dividing the pixels included in the image into predetermined groups, one filter to be applied to the group is determined. To filter differently for each group Can be done. Information related to whether or not to apply ALF, the luminance signal can be transmitted for each coding unit (CU), and the shape and filter coefficient of the ALF filter to be applied may vary depending on each block. In addition, the characteristics of the block to be applied may be different. The same type (fixed type) of ALF filter may be applied regardless of.
  • the memory 155 may store the restored block or picture calculated through the filter unit 150, and the stored restored block or picture may be provided to the prediction units 120 and 125 when performing inter prediction.
  • FIG. 2 is a block diagram of an image decoder (decoder) according to an embodiment of the present invention.
  • the image decoder 200 includes an entropy decoding unit 210,
  • a rearrangement unit 215, an inverse quantization unit 220, an inverse transform unit 225, prediction units 230 and 235, a filter unit 240, and a memory 245 may be included.
  • the input bitstream can be decoded in a procedure opposite to that of the video encoder.
  • the entropy decoding unit (2W) can perform entropy decoding in a procedure opposite to that of performing entropy encoding in the entropy encoding unit of the image encoder. For example, in response to the method performed in the image encoder, exponential Golomb (Exponential
  • CAB AC Context-Adaptive Binary Arithmetic Coding
  • the rearrangement unit 215 is the entropy decryption unit 210
  • Reordering can be performed based on the method of rearranging the bitstream in the encoder.
  • the coefficients expressed in the form of a one-dimensional vector can be restored and rearranged into coefficients in the form of a two-dimensional block.
  • the re-alignment unit 215 receives information related to the coefficient scanning performed in the encoding unit, and the scanning performed in the encoding unit Reordering can be done through the reverse scanning method based on the sequence.
  • the inverse quantization unit 220 may perform inverse quantization based on the quantization parameter provided by the encoder and the coefficient value of the re-aligned block.
  • the inverse transform unit 225 may perform inverse transform, that is, inverse DCT or inverse DST, for the transform performed by the transform unit, that is, DCT or DST with respect to the quantization result performed by the image encoder.
  • the DCT transform core May include at least one of DCT2 or DCT8, and the DST conversion core may include DST7.
  • the inverse conversion unit 225 may not perform the inverse conversion. Inverse conversion is performed in the image encoder. It can be performed on the basis of the determined transmission unit.
  • a transformation technique e.g., DCT or DST
  • a plurality of pieces of information such as the prediction method, the size of the current block, and the prediction direction. Can be done.
  • This prediction unit (230, 235) is related to the prediction block generation provided by the entropy decoding unit (210) Based on the information and previously decoded block or picture information provided in the memory 245, for example, a block can be created.
  • the prediction units 230 and 235 may include a prediction unit determination unit, an inter prediction unit, and an intra prediction unit.
  • the prediction unit determination unit information about prediction units input from the entropy decoding unit 210, and prediction of an intra prediction method. By receiving various information such as mode information and motion prediction related information of the inter prediction method, it is possible to classify the prediction unit in the current coding unit, and to determine whether the prediction unit performs inter prediction or intra prediction.
  • (230) uses the information necessary for inter prediction of the current prediction unit provided by the image encoder, based on the information contained in at least one picture of the current picture containing the current prediction unit or the picture after the current prediction unit. Inter prediction may be performed, or inter prediction may be performed based on information of a partial region previously-restored in the current picture including the current prediction unit.
  • the coding unit is
  • the motion prediction method of the included prediction unit can be judged whether the method is skip mode, merge mode (Merge mode), motion vector prediction mode (AMVP mode), or intrablock copy mode.
  • the intra prediction unit 235 may generate a prediction block based on pixel information in the current picture.
  • the prediction unit is a prediction unit that has performed intra prediction, an image
  • the intra prediction mode information of the prediction unit provided by the encoder can be used to perform intra prediction mode information.
  • the intra example name section 235 may include an AIS (Adaptive Intra Smoothing) filter, a reference pixel interpolation section, and a DC filter.
  • the AIS filter is a part that performs filtering on the reference pixel of the current block, and can be applied by determining whether to apply the filter according to the prediction mode of the current prediction unit. Using the prediction mode of the prediction unit and AIS filter information provided by the image encoder AIS filtering can be performed on the reference pixel of the current block. When the prediction mode of the current block is a mode that does not perform AIS filtering, the AIS filter may not be applied.
  • the reference pixel interpolation unit can generate a reference pixel of a pixel unit less than an integer value by interpolating the reference pixel. If the prediction mode of the current prediction unit is a prediction mode that generates a prediction block without interpolating a reference pixel, the reference pixel is It may not be interpolated.
  • the DC filter can generate a prediction block through filtering when the prediction mode of the current block is DC mode.
  • the reconstructed block or picture may be provided to the filter unit 240.
  • the filter unit 240 may be provided to the filter unit 240.
  • It can include a deblocking filter, an offset correction unit, and ALF.
  • the deblocking filter of the image decoder information related to the deblocking filter provided by the image encoder is provided, and the image decoder can perform deblocking filtering on the corresponding block.
  • the offset correction unit can perform offset correction on the restored image based on the type of offset correction and information on the offset value applied to the image at the time of encoding.
  • ALF is the ALF application information and ALF coefficient information provided from the encoder.
  • This ALF information can be provided by being included in a specific parameter set.
  • This memory 245 stores the restored picture or block
  • the restored picture can be provided as an output unit.
  • FIG. 3 is a diagram showing a basic coding tree unit according to an embodiment of the present invention.
  • a coding block of the largest size can be defined as a coding tree block.
  • One picture is divided into a plurality of coding tree units (CTU).
  • the coding tree unit is a coding unit of the largest size, and LCU (LCU). Largest Coding Unit).
  • Fig. 3 shows an example in which one picture is divided into a plurality of coding tree units.
  • the size of the coding tree unit can be defined at the picture level or the sequence level. For this purpose, information indicating the size of the coding tree unit can be signaled through a picture parameter set or a sequence parameter set.
  • the size of the coding tree unit for all pictures in the sequence is 128x128.
  • either 128x128 or 256x256 at the picture level can be determined as the size of the coding tree unit.
  • the size of the coding tree unit is set to 128x128 in the first picture, and the coding tree is set to 128x128 in the second picture.
  • the predictive encoding mode refers to the method of generating the predictive image.
  • the encoding mode is an intra-screen example (Intra Prediction, Intra example), and inter-screen For example (Inter Prediction, i.e.), Current Picture Referencing (CPR, or Intra Block Copy (IBC)) or Combined (Combined)
  • Prediction For a coding block, at least one of intra prediction, inter prediction, current picture reference, or complex prediction can be used to generate a prediction block for the coding block.
  • the information may be a 1-bit flag indicating whether the predictive encoding mode is intra mode or inter mode. Only when the predictive encoding mode of the current block is determined to be inter mode, the current picture reference or Complex predictions may be available.
  • the current picture means a picture including the current block.
  • Information indicating whether or not the current picture reference is applied to the current block is the bitstream.
  • the information may be a 1-bit flag. If the flag is true, the predictive encoding mode of the current block is referred to as the current picture reference.
  • the prediction mode of the current block may be determined by inter prediction.
  • the predictive encoding mode of the current block can be determined. For example, when the reference picture index points to the current picture, the predictive encoding mode of the current block can be determined with the current picture reference. If the reference picture index points to a picture other than the current picture, the prediction encoding mode of the current block can be determined by inter prediction, i.e., the current picture reference is a prediction method using the information of the area where the current picture has been internally encoded/decoded. The inter prediction is a prediction method using information of another picture that has been encoded/decoded.
  • Composite prediction represents an encoding mode in which two or more of intra prediction, inter prediction, and current picture reference are combined. For example, when complex prediction is applied, one of intra prediction, inter prediction, or current picture reference is based on one of the following. As a result, a first prediction block may be generated, and a second prediction block may be generated based on the other. When the first prediction block and the second prediction block are generated, an average operation or weighting operation of the first prediction block and the second prediction block is performed. Through the bitstream, the last prediction block can be generated. Information indicating whether the complex prediction is applied can be signaled through the bitstream. The information may be a 1-bit flag.
  • FIG. 4 is a diagram showing various division types of a coding block.
  • Coding block is divided into quadtree, binary tree, or triple tree.
  • a divided coding block can be divided into a plurality of coding blocks based on a quad tree division, a binary tree division, or a triple tree division.
  • Quadtree partitioning represents a partitioning technique that divides the current block into four blocks. As a result of the quadtree division, the current block can be divided into four square partitions (refer to (a) of FIG. 4, SPLIT_QT).
  • Binary tree segmentation is a segmentation technique that divides the current block into two blocks.
  • Dividing the current block into two blocks along the vertical direction can be referred to as a vertical binary tree division
  • along the horizontal direction i.e., the current block is horizontally
  • the current block is horizontally
  • the current block can be divided into two non-square partitions.
  • b)'SPLIT_BT_VER' shows the result of the vertical direction binary tree division
  • (c)'SPLIT_BT_HOR' of FIG. 4 shows the result of the horizontal direction binary tree division.
  • Triple tree division is a division technique that divides the current block into 3 blocks.
  • Dividing the current block into three blocks along the vertical direction can be called vertical triple tree division, and along the horizontal direction (i.e., the current block Dividing the current block into three blocks can be referred to as horizontal triple-tree division.
  • the current block can be divided into three non-square partitions.
  • the width/height of the partition located in the center of the current block may be twice the width/height of the other partitions.
  • (d)'SPLIT_TT_VER' shows the result of splitting the vertical triple tree
  • ( e)'SPLIT_TT_HOR' is the result of splitting a triple tree in the horizontal direction.
  • the number of divisions of the coding tree unit can be defined as the partitioning depth.
  • the maximum division depth of the coding tree unit can be determined at the sequence or picture level. Accordingly, the maximum division depth of the coding tree unit may be different for each sequence or field.
  • the maximum dividing depth for each of the dividing techniques can be determined individually.
  • the maximum partition depth allowed for a quadtree partition may be different from the maximum partition depth allowed for a binary tree partition and/or a triple tree partition.
  • the encoder can signal information representing at least one of the partition shape or the partition depth of the current block through the bitstream.
  • FIG. 5 is a diagram showing an example of a division of a coding tree unit.
  • Division such as quad tree division, binary tree division and/or triple tree division
  • the division depth of the sub-coding blocks is set to No+1.
  • the encoding block with no division depth can be referred to as an upper coding block.
  • the partition type of the current coding block can be determined based on at least one of the partition type of the parent coding block or the partition type of the neighboring coding block.
  • the neighboring coding block is adjacent to the current coding block, and the current coding block It can include at least one of the uppermost neighboring block, the left neighboring block, or the neighboring block adjacent to the upper left corner, where the partition type is whether to divide a quadtree, whether to divide a binary tree, divide a binary tree, or divide a triple tree. Whether or not, it may contain at least one of the directions for splitting a triple tree.
  • the indicated information can be signaled through the bitstream.
  • the information is a 1-bit flag', and the flag being true indicates that the coding block is divided by the head tree division technique.
  • the coding block is It is possible to determine whether to perform binary tree division or triple tree division.
  • information indicating the division direction can be signaled through the bitstream.
  • the above information may be 1 bit of neullag 1111:1;_8 ⁇ 1_ ⁇ 6]1 1_:(3 ⁇ 4. Based on the neullag, whether the division direction is a vertical direction or a horizontal direction can be determined.
  • information indicating which of binary tree division or triple tree division is applied to the coding block can be signaled through the bitstream, which is a 1-bit flag. Based on the flag, whether the binary tree division is applied to the coding block or the triple tree Whether or not segmentation is applied can be determined.
  • Inter prediction is a prediction coding mode in which the current block is predicted by using information of the previous picture.
  • a block hereinafter referred to as a collocated block
  • It can be set as a prediction block of a block.
  • a prediction block generated based on a block at the same position as the current block will be referred to as a collocated, i.e., a collocated prediction block.
  • the current block can be effectively predicted by using the motion of the object. For example, if the moving direction and size of the object can be known by comparing the previous picture with the current picture, the current block's prediction is made by considering the object's motion information.
  • a block (or prediction image) can be generated.
  • a prediction block generated using motion information may be referred to as a motion prediction block.
  • a residual block By differentiating the prediction block from the current block, a residual block can be generated.
  • the residual block By using the motion prediction block instead of the collocated prediction block, the residual block It reduces energy and, accordingly, can improve the compression performance of the residual block.
  • a prediction block can be generated based on motion compensation prediction.
  • the motion information may include at least one of a motion vector, a reference picture index, a predictive direction or a bidirectional weight index.
  • the motion vector indicates the moving direction and size of the object.
  • the reference picture index is a reference picture included in the reference picture list. Among the pictures, the reference picture of the current block is specified.
  • the prediction direction indicates either one-way L0 prediction, one-way L1 prediction, or two-way prediction (L0 prediction and L1 prediction). Depending on the prediction direction of the current block, movement in the L0 direction. At least one of human information or motion information in the L1 direction can be used.
  • the bidirectional weight index specifies the weight applied to the L0 prediction block and the weight applied to the L1, i.e., the block.
  • FIG. 6 is a flow diagram of an inter prediction method according to an embodiment of the present invention.
  • the inter prediction method includes: determining an inter prediction mode of a current block (S601), acquiring motion information of a current block according to the determined inter prediction mode (S602), and acquired movement Based on the information, a step of performing motion compensation prediction for the current block (S603).
  • the inter prediction mode is used to determine the motion information of the current block.
  • the techniques may include an inter prediction mode using translation motion information and an inter prediction mode using affine motion information.
  • an inter prediction mode using translation motion information is a merge mode.
  • a motion vector prediction mode, and the inter prediction mode using affine motion information may include an Rastere merge mode and an Rane motion vector prediction mode.
  • the motion information of the current block is, according to the inter prediction mode, the current block It can be determined based on the information parsed from the neighboring block or bitstream.
  • the motion information of the current block may be derived from the motion information of the other block of the current block.
  • the other block may be a block encoded/decoded with inter prediction ahead of the current block.
  • the motion information of the current block can be derived from the motion information of the other block. Setting the same as the motion information can be defined as the merge mode.
  • setting the motion vector of the other block as the predicted value of the motion vector of the current block can be defined as a motion vector prediction mode.
  • Fig. 7 shows a process of inducing the motion information of the current block in the merge mode.
  • the merge candidate of the current block can be derived (S701).
  • the merge candidate of the current block can be derived from the encoded/decrypted block by inter prediction before the current block.
  • FIG. 8 is a diagram illustrating candidate blocks used to induce a merge candidate.
  • Candidate blocks may include at least one of neighboring blocks containing a sample adjacent to the current block or non-neighboring blocks containing a sample not adjacent to the current block.
  • the candidate blocks are determined.
  • Samples are defined as reference samples.
  • a reference sample adjacent to the current block will be referred to as a neighbor reference sample
  • a reference sample not adjacent to the current block will be referred to as a non-neighbor reference sample.
  • the neighboring reference sample can be included in the neighboring column of the leftmost column of the current block or the neighboring row of the topmost row of the current block. For example, when the coordinates of the upper left sample of the current block are (0, 0). , A block containing the reference sample at the (-1, H-1) position, a block containing the reference sample at the (W-1, -1) position, a block containing the reference sample at the (W, -1) position, At least one of the blocks containing the reference sample at the (-1, H) position or the block containing the reference sample at the (-1, -1) position can be used as a candidate block. Referring to the drawing, index 0 to index 4 neighboring blocks can be used as candidate blocks.
  • the non-neighboring reference sample represents a sample in which at least one of the X-axis distance or y-axis distance from the reference sample adjacent to the current block has a predefined value. For example, getting the X-axis distance from the left reference sample A block containing a defined value of the reference sample, a non-neighbor whose y-axis distance from the top reference sample is a predefined value, or a block containing a block containing the sample, whose y-axis distance from the upper left reference sample and the y-axis distance is a predefined value At least one of the blocks containing the sample may be used as a candidate block.
  • the predefined value may be a natural number such as 4, 8, 12, 16, etc. Referring to the drawing, at least one of the blocks of indexes 5 to 26 Can be used as a candidate block. 2020/175914 1»(:1 ⁇ 1 ⁇ 2020/002752
  • the reference sample may be set as unavailable as a candidate. For example, if the reference sample deviates from the upper boundary of the coding tree unit to which the current block belongs, the reference sample is
  • the containing candidate block may be set to be unavailable as a merge candidate.
  • Merge candidates can be derived from a block. Any one of the reference pictures included in the reference picture list can be set as a collocated picture. Index information identifying a collocated picture among the reference pictures is signaled through a bitstream. Or, among the reference pictures, a reference picture having a defined index is
  • the motion information of the merge candidate can be set the same as the motion information of the candidate block.
  • At least one of the motion vector of the candidate block, the reference picture index, and the prediction direction or bidirectional weight index may be set as the motion information of the future candidate.
  • a merge candidate list containing merge candidates can be created 702).
  • the indexes of the merged candidates may be assigned in a predetermined order. For example, a merge candidate derived from the left neighbor block, a merge candidate derived from the upper neighbor block, a merge candidate derived from the upper right neighbor block, a merge candidate derived from the lower left neighbor block, and a merge candidate derived from the upper left neighbor block. And indexes in the order of merge candidates derived from temporal neighboring blocks.
  • a merge candidate includes multiple candidate candidates
  • at least one of the plurality of candidate candidates may be selected 703).
  • information for specifying any one of the plurality of candidate candidates is signaled through the bitstream. For example, information indicating the index of any one of the merge candidates included in the merge candidate list.
  • FIG. 9 is a diagram for explaining an example of determining a motion vector for each subblock.
  • any one of the multiple merge candidates included in the merge candidate list can be set as the initial motion vector of the current block.
  • the merge candidate used to derive the initial motion vector is the syntax 111 is 6:1. (Can be determined by 1.
  • an initial motion vector can be derived from the first available merge candidate found.
  • the predetermined scan order is the neighboring block 1) adjacent to the left of the current block, the neighboring block adjacent to the top of the current block (example), the neighboring block 0) and the left of the current block. It can be the order of the neighboring block 0) adjacent to the lower corner.
  • the predetermined scan order is all 1, 60, It can be defined in order, or it can be decided in the order of yes, yes, and new.
  • the collocated picture of the current block can be determined.
  • the collocated picture can be set as a reference picture having a defined index among reference pictures included in the reference picture list.
  • the predefined index may be 0 or the largest index.
  • information for determining the call picture may be signaled through the bitstream.
  • the syntax collocated_ref_idx specifying the call picture in the reference picture processing string is bitwise. It can be signaled through a stream.
  • a block that is separated by the initial motion vector from the collocated block can be determined.
  • a block specified by the initial motion vector may be referred to as a call picture corresponding block.
  • the initial motion vector in FIG. 9, the motion vector of block A1 When) is (xl, yl)
  • a block spaced apart by (xl, yl) from a block (collocated block) at the same position as the current block in the call picture can be determined as a call picture corresponding block.
  • the motion vectors of the sub-blocks in the call picture-corresponding block can be set as the motion vectors of the sub-blocks in the current block.
  • the current block is divided into 4x4 sized subblocks.
  • the bidirectional motion vector of the subblock in the call picture-corresponding block is converted to the bidirectional motion vector of the subblock in the current block It can be taken as.
  • the L0 motion vector or only the L1 motion vector may be taken from the sub-block in the call picture corresponding block.
  • the motion vector of the subblock in the current block can be derived by scaling the motion vector of the subblock in the call picture corresponding block.
  • the reference picture and bidirectional prediction of the current block may be set the same as the merge candidate used to derive the initial motion vector. Or, information for specifying the reference picture of the current block and/or bidirectional through the bitstream. Information indicating whether or not it is predicted can be signaled.
  • the above information may be a 1-bit flag, but is not limited thereto. Or, a bidirectional prediction in the current block
  • Motion information candidates included in the information table can be added to the merge candidate list as merge candidates, where the threshold is the number of days the maximum number of merge candidates that the merge candidate list can contain or the maximum number of merge candidates minus the offset. have.
  • the offset may be a natural number such as 1 or 2.
  • the motion information table is encoded/decoded based on the inter prediction in the current picture.
  • motion information candidates derived from the block includes motion information candidates derived from the block.
  • motion information of motion information candidates included in the motion information table may be set to be the same as motion information of a block encoded/decoded based on inter prediction.
  • the motion information may include at least one of a motion vector, a reference picture index, a predictive direction, or a bidirectional weight index.
  • Motion information candidates included in the motion information table may be referred to as inter-area merge candidates or predicted-area merge candidates.
  • the maximum number of motion information candidates that the motion information table can contain may be predefined in the encoder and decoder.
  • the maximum number of motion information candidates that the motion information table can contain is 1, 2, 3, 4, 5, 6, 7, 8 or more (for example,
  • the information represented can be signaled through a bitstream.
  • the information can be signaled at the sequence, picture, or slice level.
  • the information can represent the maximum number of motion information candidates that the motion information table can contain. or , The above information may indicate the difference between the maximum number of motion information candidates that the motion information table can contain and the maximum number of merge candidates that the merge candidate list can contain.
  • the maximum number of motion information candidates that the motion information table can contain can be determined depending on the size of the picture, the size of the slice, or the size of the coding tree unit.
  • the motion information table can be initialized in units of picture, slice, tile, brick, coding tree unit, or coding tree unit line (row or column). For example, when a slice is initialized, the motion information table is also initialized. , The motion information table may not contain any motion information candidates.
  • the information can also be signaled through a bitstream.
  • the information can be signaled at the slice, tile, brick or block level. Until the information instructs to initialize the motion information table, the constructed motion information table can be used.
  • information about the initial motion information candidate may be signaled through a picture parameter set or a slice header. Even if the slice is initialized, the motion information table may contain the initial motion information candidate. Accordingly, the first encoding in the slice /The initial motion information candidate can also be used for the block to be decrypted.
  • Motion information candidates can be set as the initial motion information candidate, for example, the motion information candidate with the smallest motion information candidate or the motion information candidate with the largest index in the motion information table included in the motion information table of the previous coding tree unit. have.
  • Blocks are encoded/decoded according to the encoding/decoding order, but blocks encoded/decoded based on inter prediction can be sequentially set as motion information candidates according to the encoding/decoding order.
  • [174] is a diagram for explaining the update pattern of the motion information table.
  • motion information candidates can be derived based on the current block ( ⁇ 002).
  • the motion information of the motion information candidate is the same as the motion information of the current block. Can be set.
  • the motion information candidate derived based on the current block can be added to the motion information table (004).
  • a redundancy check for the motion information of the current block (or the motion information candidate derived based on this) can be performed (005).
  • the redundancy check is to determine whether the motion information of the motion information candidate previously stored in the motion information table and the motion information of the current block are the same.
  • the redundancy check can be performed on all motion information candidates previously stored in the motion information table. Or, it is possible to perform a redundancy test for motion information candidates whose DEX among motion information candidates previously stored in the motion information table is greater than or equal to the threshold value; or, a predefined number of motion information candidates. For example, two motion information candidates with a small index or two Wim motion information candidates with a large index may be determined as targets for the redundancy test.
  • motion information candidates derived based on the current block can be added to the motion information table ( ⁇ 008). Whether the motion information candidates are the same is determined by the motion information of the motion information candidates (e.g., motion vector and / Or reference picture index, etc.) can be determined on the basis of whether they are the same.
  • the motion information of the motion information candidates e.g., motion vector and / Or reference picture index, etc.
  • the oldest motion information candidate is deleted 1007), and the motion information candidate derived based on the current block is stored in the motion information table. Can be added ( ⁇ 008).
  • the oldest motion information candidate may be a motion information candidate with the largest index or a motion information candidate with the smallest index.
  • Motion information candidates can be identified by their respective indexes.
  • the lowest index eg, 0
  • the index of the stored motion information candidates can be increased by 1.
  • the motion information candidate with the largest index is 2020/175914 1»(:1 ⁇ 1 ⁇ 2020/002752
  • the motion information candidate derived from the current block is added to the motion information table.
  • the largest index can be assigned to the motion information candidate. For example, if the number of motion information candidates previously stored in the motion information table is less than the maximum value, the motion information candidate has the number of previously stored motion information candidates. In addition, if the number of motion information candidates stored in the motion information table is equal to the maximum value, the motion information candidate can be assigned an index subtracting 1 from the maximum value. The motion information candidate with the smallest index is removed, and the remaining indexes of the motion information candidates stored are 1
  • FIG. 11 is a diagram showing an update pattern of a motion information table.
  • the motion information candidate derived from the current block is added to the motion information table, and the largest index is assigned to the motion information candidate.
  • the motion information table already stores the maximum number of motion information candidates. I assume.
  • the motion information candidate derived based on the current block may not be added to the motion information table ( ⁇ 009).
  • the motion information candidate derived based on the current block is added to the motion information table.
  • FIG. 12 is a diagram showing an example in which the index of the previously stored motion information candidate is updated.
  • the index of motion information candidates stored for the same time as the motion information candidates derived based on the current block is 111 (in case of urine, the previously stored motion information candidate is deleted, and the index is 111 (the index of motion information candidates larger than urine) Can be reduced by 1. Same as day ⁇ Ahga motion information The index from 1 ⁇ (1[3] to 13 ⁇ 4 1 ⁇ 1 ⁇ (1[ 11 ]) is shown to decrease by one.
  • motion information candidate derived based on the current block 11 ⁇ 0 (1 is motion information
  • the index assigned to the motion information candidate stored in the same time as the motion information candidate derived based on the current block may be updated. For example, of the previously stored motion information candidate. 2020/175914 1»(:1 ⁇ 1 ⁇ 2020/002752
  • Motion information of blocks included in a predetermined area may be set not to be added to the motion information table.
  • motion information candidates derived based on the motion information of blocks included in the merge processing area are in the motion information table. It may not be added. Since the encoding/decoding order of the blocks included in the merge processing area is not defined, it is inappropriate to use one of these motion information for inter prediction of other blocks. Accordingly, the block included in the merge processing area is inappropriate. Motion information candidates derived on the basis of these may not be added to the motion information table.
  • the motion information of the block smaller than the preset size is displayed in the motion information table.
  • motion information of a coding block with a width or height less than 4 or 8 or motion information candidates derived based on the motion information of a 4x4 coding block may not be added to the motion information table. have.
  • motion information candidates can be derived based on the motion information of the representative sub-block among a plurality of sub-blocks included in the current block. For example, for the current block When the sub-block merge candidate is used, the motion information candidate can be derived based on the motion information of the representative sub-block among the sub-blocks.
  • the motion vector of the subblocks can be derived in the following order: First, one of the merge candidates included in the merge candidate list of the current block is selected, based on the motion vector of the selected merge candidate, and an initial shift vector. ⁇ : ⁇ You can induce burrs. Then, the position of the reference sample (e.g., upper left sample or middle position sample) of the coding block is added with the initial shift vector to the position ⁇ 315, 8, and the position of the reference sample is ⁇ 001815, 0181). Equation 1 below represents the equation for deriving the shift subblock.
  • the reference sample e.g., upper left sample or middle position sample
  • the motion vector of the corresponding collocated block can be set as the motion vector of the sub-block including the ratio (31) and 3 ratio.
  • the representative sub-block can mean a sub-block containing the top left sample or the center sample of the current block.
  • FIG. 13 is a diagram showing the location of a representative sub-block.
  • Figure 13 shows an example in which the sub-block located at the top left of the current block is set as the representative sub-block
  • Figure 13 shows an example in which the sub-block located at the center of the current block is set as the representative sub-block.
  • the encoded/decoded block may be set to be unavailable as a motion information candidate. Accordingly, even if the current block is encoded/decoded by inter prediction, if the inter prediction mode of the current block is the Rane prediction mode, the current block is The motion information table may not be updated as a basis.
  • motion information candidates may be derived based on at least one subblock vector among subblocks included in the encoded/decoded block based on the affine motion model. For example, in the upper left corner of the current block. Motion information candidates can be derived by using a sub-block located in the center, a sub-block located in the center, or a sub-block located in the upper right corner, or the average value of the sub-block vectors of the multiple sub-blocks is set as the motion vector of the motion information candidate. May be
  • At least one of the first affine seed vector, the second affine seed vector, or the third affine seed vector of the current block is the motion information candidate. It can be set as a motion vector of.
  • a motion information table can be configured for each inter prediction mode.
  • a motion information table for a block encoded/decoded with an intra block copy a motion information table for an encoded/decoded block based on a translational motion model.
  • At least one of the motion information tables for the coded/decoded block can be defined based on the table or the affine motion model.
  • any one of a plurality of motion information tables can be selected.
  • FIG. 14 shows an example in which a motion information table is generated for each inter prediction mode.
  • Motion information candidates guided as a basis 1 1 0 (1 is non-neo fine motion information table
  • Motion information candidates can be set to include additional information in addition to motion information. For example, at least one of the size, shape, or partition information of the block can be additionally stored for the motion information candidate.
  • the merge candidate list of the current block the current block, size, shape, or partition information among the motion information candidates Only motion information candidates that are identical or similar can be used, or motion information candidates having the same or similar size, shape, or partition information as the current block can be added to the merge candidate list first.
  • the motion information candidate included in the motion information table may be added to the merge candidate list as a merge candidate.
  • the indexes of the candidates are sorted in ascending or descending order. For example, the motion information candidate with the largest index can be added to the merge candidate list of the current block.
  • a redundancy check may be performed between the motion information candidates and the merge candidates previously stored in the merge candidate list. Motion information candidates with the same motion information as the candidate may not be added to the merge candidate list.
  • the redundancy check is performed on some of the motion information candidates included in the motion information table.
  • a redundancy test can be performed only for motion information candidates whose index is above or below the threshold value, or N motion information candidates with the largest index or N motion information candidates with the smallest index. Only the redundancy test can be performed.
  • a redundancy check only for some of the merge candidates previously stored in the merge candidate list. For example, only for merge candidates whose index is above or below the threshold value, or for merge candidates derived from blocks at a specific location.
  • a redundancy check can be performed, where a specific location can include at least one of the left neighboring block, the upper neighboring block, the upper right neighboring block, or the lower left neighboring block of the current block.
  • 15 is a diagram showing an example in which a redundancy test is performed only for some of the merge candidates.
  • 111 can perform a redundancy test with 60&11(11 1; 11111] 6-2] and 1116 60&11(11 1;[] ⁇ 11111
  • 111 can perform a redundancy test with 60&11(11 1; 11111] 6-2] and 1116 60&11(11 1;[] ⁇ 11111
  • a redundancy test can be performed with the merge candidate for only some of the motion information candidates. For example, only N motion information candidates with a large index or N motion information candidates with a small index among the motion information candidates included in the motion information table.
  • a redundancy check can be performed. For example, a redundancy check can be performed only for motion information candidates having an index in which the number and difference of motion information candidates included in the motion information table is less than or equal to the threshold value. If the threshold value is 2, motion information can be performed.
  • the redundancy test may be performed only for the three motion information candidates with the largest dex value among the motion information candidates included in the information table. For the motion information candidates excluding the three motion information candidates, the redundancy test may be omitted. If is omitted, the motion information candidate can be added to the merge candidate list, regardless of whether they have the same motion information as the merge candidate.
  • the number of motion information candidates for which the redundancy check is performed may be predefined in the encoder and the decoder.
  • the threshold may be an integer such as 0, 1, or 2.
  • the threshold may be determined based on at least one of the number of merge candidates included in the merge candidate list or the number of motion information candidates included in the motion information table.
  • the redundancy test with the same merge candidate as the first motion information candidate above may be omitted during the redundancy test for the second motion information candidate.
  • 16 is a diagram showing an example in which the redundancy test with a specific merge candidate is omitted.
  • a merge candidate with the average of the motion vectors of the candidates as a motion vector and a zero merge candidate means a merge candidate with a motion vector of 0.
  • the merge candidate list of the current block can be added in the following order.
  • Spatial merge candidates are from at least one of the neighboring or non-neighboring blocks.
  • the affine motion information candidate represents the motion information candidate derived from the block encoded/decoded with the Matte motion model, while the derived merge candidate means the temporal merge candidate derived from the previous reference picture.
  • Intra prediction is based on the encoding/decryption completed restoration sample around the current block.
  • the current block is predicted.
  • a restoration sample before the in-loop filter is applied can be used.
  • Intra prediction techniques include intra prediction based on a matrix and general intra prediction taking into account the directionality of the surrounding restoration samples.
  • Information indicating the intra prediction technique of the current block can be signaled through the bitstream. The above information may be a 1-bit flag.
  • the intra prediction technique of the current block can be determined based on at least one of the location, size, shape of the current block, or intra prediction techniques of a neighboring block. For example, the current block If it exists across this picture boundary, it may be set so that intra prediction based on the matrix is not applied to the current block.
  • Information for specifying any one of a plurality of previously stored matrices can be signaled through the bitstream. have.
  • the decoder can determine a matrix for intra prediction of the current block based on the information and the size of the current block.
  • General intra prediction is a method of acquiring a prediction block for the current block based on the non-directional intra prediction mode or the directional intra prediction mode.
  • the intra prediction execution process based on the general intra prediction Let's take a closer look at
  • 17 is a flow diagram of an intra prediction method according to an embodiment of the present invention.
  • the reference sample of the current block can be determined ( ⁇ 701).
  • the reference sample refers to the set of reference samples contained in the line no-th away from the top and/or left of the current block.
  • the reference sample is the current sample.
  • Block periphery encoding/decoding can be derived from the completed restored sample.
  • index information identifying the reference sample of the current block may be signaled through the bitstream.
  • the reference sample of the current block For example, the reference sample of the current block.
  • Index information to specify the line 1:3 ⁇ 4_11111ta_ 1 ? _1 (1 can be signaled through a bitstream.
  • the index information can be signaled in units of coding blocks.
  • a plurality of reference samples may include at least one of the top and/or left 1st line, 2nd line, and 3rd line in the current block.
  • adjacent to the top of the current block A reference sample consisting of a row and a column adjacent to the left side of the current block is called a adjacent reference sample, and other reference sample lines can also be called a non-adjacent reference sample.
  • Table 1 shows the indexes assigned to each of the candidate reference samples.
  • the reference sample of the current block can be determined based on at least one of the position, size, shape of the current block, or prediction coding mode of the neighboring block.
  • the current block is a picture, tile, slice, or coding tree unit.
  • the adjacent reference sample can be determined as the reference sample of the current block.
  • Reference samples are the top reference samples located at the top of the current block and the current
  • Top reference samples and left reference samples can be derived from restored samples around the current block.
  • the restored samples may be in a state before the in-loop filter is applied.
  • the intra prediction mode of the current block (S1702).
  • the intra prediction mode of the current block at least one of the non-directional intra prediction mode or the directional intra prediction mode can be determined as the intra prediction mode of the current block.
  • the non-directional intra prediction mode includes a planner and DC, and the directional intra prediction mode includes 33 or 65 modes from a lower left diagonal to an upper right diagonal.
  • 18 is a diagram showing intra prediction modes.
  • Fig. 18(a) shows 35 intra prediction modes
  • Fig. 18(a) shows 67 intra prediction modes.
  • More or fewer intra prediction modes may be defined than those shown in FIG. 18.
  • MPM Most Probable Mode
  • the neighboring block is the left neighboring block adjacent to the left of the current block and the top of the current block. It can contain the top neighboring block that is neighboring. 2020/175914 1»(:1 ⁇ 1 ⁇ 2020/002752
  • the number of MPMs included in the MPM list can be preset in the encoder and decoder.
  • the number of MPMs can be 3, 4, 5, or 6.
  • the number of MPMs can be set.
  • the indicated information can be signaled through the bitstream.
  • the number of MPMs can be determined based on at least one of the prediction coding mode of the neighboring block, the size and shape of the current block, or the reference sample index. For example, adjacent references When the sample line is determined as the reference sample of the current block, N MPMs are used, whereas when the non-adjacent reference sample is determined as the reference sample of the current block, M MPMs can be used.
  • M is a natural number less than N, for example, N is 6, and M can be 5, 4, or 3. Accordingly, if the index of the reference sample line of the current block is 0, and the MPM flag is true, the current block's Intra prediction mode is determined by any one of 6 candidate intra prediction modes, whereas if the index of the reference sample of the current block is greater than 0 and the MPM flag is true, the intra prediction mode of the current block is 5 candidate intra predictions. It can be determined by any of the modes.
  • MPM candidates may be used.
  • An MPM list including a plurality of MPMs can be created, and information indicating whether an MPM that is the same as the intra prediction mode of the current block is included in the MPM list can be signaled through a bitstream.
  • the information is 1-bit. If the above MPM flag indicates that the same MPM as the current block is included in the MPM list, index information identifying one of the MPMs may be signaled through the bitstream. As, index information specifying any one of a plurality of MPMs 11 ⁇ 111_ through a bitstream
  • the specified MPM can be set to the intra prediction mode of the current block by the index information. If the MPM flag indicates that the same MPM as the current block is not included in the MPM list, the remaining intra excluding MPMs.
  • the residual mode information indicating one of the prediction modes
  • the residual mode information indicates the index value corresponding to the intra prediction mode of the current block when the indexes are reassigned to the remaining intra prediction modes excluding MPMs.
  • the intra prediction mode of the current block can be determined by sorting in ascending order and comparing the remaining mode information with the MPMs. For example, when the remaining mode information is equal to or smaller than the MPM, 1 is added to the remaining mode information to determine the intra-prediction mode of the current block.
  • the prediction mode can be derived.
  • the comparison of some of the MPMs and the residual mode information may be omitted.
  • the MPMs in the non-directional intra prediction mode may be excluded from the comparison target.
  • the residual mode information indicates the directional intra prediction mode.
  • the number of non-directional intra prediction modes can be added to the residual mode information, and the result can be compared with the remaining MPMs.
  • the information is a 1-bit flag, and the flag can be referred to as the default mode flag.
  • the default mode flag is the MPM flag whose MPM flag is the same as the current block. It can be signaled only if it indicates that it is included in the MPM list.
  • the default mode may include at least one of the planner, IX:, vertical mode or horizontal mode. For example, planner If the default mode is set to the default mode, the default mode flag can indicate whether or not the intra prediction mode of the current block is a planner. If the default mode flag indicates that the intra prediction mode of the current block is not the default mode, indicated by index information. You can set one of the MPMs to be in the intra prediction mode of the current block.
  • the mode can be set not to be set to MPM. For example, if the default mode flag indicates whether the intra prediction mode of the current block is a planner, 5 MPMs excluding the MPMs corresponding to the planner are used. Intra prediction mode can be induced.
  • index information indicating any one of the default modes may be signaled further.
  • the intra prediction mode of the current block is set to the default mode indicated by the index information. Can be.
  • the non-adjacent reference sample is determined as the reference sample of the current block, it is possible to disable the non-directional intra prediction mode such as IX: mode or planner mode. Accordingly, reference sample If the index of the line is not 0, the default mode flag is not signaled, and the value of the default mode flag can be set to a predefined value (ie, false).
  • prediction samples for the current block can be obtained based on the determined intra prediction mode (703).
  • prediction samples for the current block are generated based on the average value of the reference samples. Specifically, the values of all samples in the prediction block can be generated based on the average value of the reference samples. The average value is the top reference samples located at the top of the current block and the left reference samples located at the left of the current block. 2020/175914 1»(:1 ⁇ 1 ⁇ 2020/002752
  • At least one of the 30 can be used to induce.
  • the number or range of reference samples used to derive the average value may vary. For example, if the current block is an irregular block whose width is larger than the height, only the top reference samples are used.
  • the average value can be calculated, whereas if the current block is an amorphous block whose width is less than the height, the average value can be calculated using only the left reference samples, i.e. if the width and height of the current block are different, the length is more.
  • the average value can be calculated using only the reference samples adjacent to the long side; or, based on the ratio of the width and height of the current block, whether to calculate the average value using only the top reference samples or the average value using only the left reference samples. You can decide whether or not to calculate.
  • a sample can be obtained, where the horizontal direction e.g. the sample is obtained based on the left reference sample and the right reference sample positioned on the same horizontal line as the sample, and the vertical predicted sample is the same as the predicted sample.
  • the upper reference sample and the lower reference sample located on the vertical line are obtained based on the reference sample, where the right reference sample is generated by copying the reference sample adjacent to the upper right corner of the current block, and the lower reference sample is It can be generated by copying the reference sample adjacent to the lower left corner.
  • the horizontal prediction sample is obtained based on the weighted sum operation of the left reference sample and the right reference sample, and the vertical prediction sample is obtained by copying the upper reference sample and the lower reference sample.
  • the weight given to each reference sample can be determined according to the position of the predicted sample.
  • the predicted sample is based on the average operation of the horizontal direction predicted sample and the vertical direction predicted sample or weighted sum operation. If a weighted sum operation is performed, based on the position of the predicted sample, it is possible to determine the horizontal direction i.e. the fine and the vertical direction i.e. the weight given to the sample.
  • a parameter indicating the prediction direction (or prediction angle) of the selected directional prediction mode can be determined.
  • Table 2 below shows the intra direction parameters for each intra prediction mode: 1 ⁇ 3 ⁇ 43 ⁇ 46 (1 show 13 ⁇ 4 It represents
  • Table 2 shows the intra direction parameters of each of the intra prediction modes with an index of 2 to 34, when 35 intra prediction modes are defined.
  • the intra direction parameters for each directional intra prediction mode can be set further by subdividing Table 2.
  • a prediction sample can be obtained based on the value of the intra direction parameter.
  • the left side Reference samples and top reference samples can be arranged in a line.
  • 19 and 20 are diagrams showing an example of a one-dimensional arrangement in which reference samples are arranged in a line.
  • 19 is a diagram of a one-dimensional arrangement in a vertical direction in which reference samples are arranged in a vertical direction.
  • FIG. 20 shows an example of a one-dimensional arrangement in a horizontal direction in which reference samples are arranged in a horizontal direction. Assuming that 35 intra prediction modes are defined, the embodiments of FIGS. 19 and 20 will be described.
  • the intra prediction mode index is any one of 11 to 18, see above.
  • the left reference samples can be rotated clockwise and the vertical one-dimensional array can be applied. In arranging them in a row, the intra prediction mode angle can be considered.
  • the reference sample determination parameter can be determined based on the intra direction parameter.
  • the reference sample determination parameter may include a reference sample index for specifying the reference sample and a weight parameter for determining a weight applied to the reference sample.
  • the reference sample index ildx and the weight parameter ifact can be obtained through the following equations 2 and 3, respectively.
  • P ang represents an intra direction parameter.
  • a reference sample specified by the reference sample index ildx corresponds to an integer pel.
  • At least one reference sample can be specified. Specifically, taking into account the slope of the prediction mode, it is possible to specify the location of the reference sample used to derive the prediction sample.
  • the reference sample index ildx can be used to specify the reference sample used to derive the sample. have.
  • a prediction sample can be generated by interpolating a plurality of reference samples.
  • the slope of the intra prediction mode is the prediction sample and the first reference sample.
  • the predicted sample can be obtained by interpolating the first reference sample and the second reference sample, i.e., an angular line following the intra predicted angle. If the line) does not pass the reference sample located in the constant pel, the predicted sample can be obtained by interpolating the reference samples located adjacent to the left, right or above and below the angular line passing position.
  • Equation 4 shows an example of obtaining a predicted sample based on the reference samples.
  • Equation 4 all of the predicted samples are denoted, and Ref_lD denotes one of the one-dimensional arrayed reference samples.
  • the position of the reference sample is at the position of the predicted sample (x, y) and the reference sample index ildx.
  • Equation 4 can be simplified as in Equation 5 below.
  • intra prediction for the current block based on a plurality of intra prediction modes. For example, an intra prediction mode is induced for each prediction sample, and prediction is based on the intra prediction mode assigned to each prediction sample. Samples can be derived.
  • the intra prediction mode may be induced for each area, and intra prediction for each area may be performed based on the intra prediction mode assigned to each area.
  • 2020/175914 1 (:1 ⁇ 1 ⁇ 2020/002752
  • the region may contain at least one sample. At least one of the size or shape of the region may be adaptively determined based on at least one of the size, shape, or intra prediction mode of the current block. Or, the encoder and In the decoder, at least one of the size or shape of the region may be predefined independently from the size or shape of the current block.
  • 21 is a diagram illustrating an angle at which directional intra prediction modes form a straight line parallel to the X axis.
  • the directional prediction modes may exist between the lower left diagonal direction and the upper right diagonal direction.
  • the directional prediction modes are, from 45 degrees (diagonal to the lower left corner),
  • -It can exist between 135 degrees (diagonal direction at the top right).
  • the current block is amorphous, according to the intra prediction mode of the current block, among the reference samples located on the angular line along the intra prediction angle, a reference sample that is closer to the prediction sample instead of a reference sample that is closer to the prediction sample There may be cases in which predicted samples are derived by using.
  • 22 is a diagram showing a pattern in which a predicted sample is obtained when the current block has an amorphous shape.
  • the current block is amorphous with a width larger than the height
  • the intra prediction mode of the current block is directional intra prediction with an angle between 0 degrees and 45 degrees.
  • the prediction above instead of the top reference sample I that is close to the prediction sample. It may happen that the sample and the far left reference sample are used.
  • the directional intra prediction mode of Fig. 22 (as in the non-shown example, where the current block is amorphous with a height greater than the width and the intra prediction mode of the current block is between -90 degrees and -135 degrees)
  • the prediction sample and the prediction sample are replaced with the left reference sample close to the prediction sample. It can happen that the far top reference sample is used.
  • the intra prediction mode of the current block can be replaced with the intra prediction mode in the opposite direction. Accordingly, for the non-square block, as shown in FIG.
  • Directional prediction modes with a larger or smaller angle than the directional prediction modes can be used.
  • Such directional intra prediction mode can be defined as a wide angle intra prediction mode.
  • the wide angle intra prediction mode ranges from 45 degrees to 135 degrees. It represents a directional intra prediction mode that does not belong to the above.
  • 23 is a diagram showing wide angle intra prediction modes.
  • Intra prediction modes with an index between 67 and 80 represent wide-angle intra prediction modes.
  • the length of the top reference samples can be set to 2 ⁇ +1, and the length of the left reference samples can be set to 211+1.
  • the sample show shown in Fig. 23 is predicted using reference sample 1, and the (non-shown sample show shown in Fig. 23) can be predicted using the reference sample. have.
  • Table 3 shows the intra direction parameters of the intra prediction modes when 20 wide angle intra prediction modes are defined.
  • the intra prediction mode of the current block can be converted to the wide angle intra prediction mode.
  • the conversion range is currently It can be determined based on at least one of the size, shape, or ratio of the block, where the ratio can represent the ratio between the width and height of the current block.
  • the transform range can be set from the index of the intra prediction mode in the upper right diagonal direction (eg 66) to the index -ratio of the intra prediction mode in the upper right diagonal direction.
  • N may be determined based on the ratio of the current block.
  • the intra prediction mode of the current block falls within the conversion range, the intra prediction mode may be converted to a wide angle intra prediction mode. The conversion may be by subtracting a predefined value from the intra prediction mode, and The defined value may be the total number of intra prediction modes excluding wide-angle intra prediction modes (eg, 6 ⁇ ).
  • the intra prediction modes 66 to 53 are respectively
  • the conversion range can be set from the index of the intra prediction mode in the lower left diagonal direction (eg 2) to (index of the intra prediction mode in the lower left diagonal direction + M).
  • M can be determined based on the ratio of the current block.
  • the intra prediction mode of the current block falls within the conversion range, the intra prediction mode can be converted to a wide angle intra prediction mode.
  • the transformation may be by adding a predefined value to the intra prediction mode, and the predefined value may be the total number of directional intra prediction modes excluding wide angle intra prediction modes (eg, 65).
  • each of the intra prediction modes 2 to 15 can be converted into wide angle intra prediction modes between 67 and 80.
  • the intra prediction modes that fall within the conversion range will be referred to as wide-angle intra replacement prediction modes.
  • the conversion range can be determined based on the ratio of the current block.
  • Tables 4 and 5 each assume 35 intra prediction modes excluding wide angle intra prediction modes, and 67 intra prediction modes. In case, it indicates the range of conversion.
  • the intra prediction mode of the current block is determined as the wide-angle intra prediction mode
  • the non-adjacent reference samples are set as not available as the reference samples of the current block, or one of the plurality of reference samples. It is possible to disable the multi-line intra prediction encoding method of selecting one. When the multi-line intra prediction encoding method is not used, the adjacent reference sample line can be determined as the reference sample of the current block.
  • the adjacent reference sample with a distance from the current block is ⁇ 13 ⁇ 4 ⁇ + within + 0 ⁇ 8.
  • ⁇ + My + 0 ⁇ 8 can include an uncharted left reference sample, i.e. the distance from the current block is invisible adjacent reference sample (21113 ⁇ 4 ⁇ + 21 ⁇ 1 ⁇ + ( ⁇ Yorami + 0 ⁇ 8) Can contain +1) reference samples.
  • adjacent reference sample 21113 ⁇ 4 ⁇ + 21 ⁇ 1 ⁇ + ( ⁇ Yorami + 0 ⁇ 8)
  • the yaw value can be set larger than the value of 0 ⁇ 8 ⁇ .
  • the value of ( ⁇ is set to 1, and the value of 0 ⁇ ⁇ is 0.
  • Than the value It can be set to be larger; for example, the value of offsetX can be set to 0, and the value of offsetY can be set to 1.
  • the resource required to encode the wide-angle intra prediction modes increases, and the encoding efficiency can be lowered. Accordingly, instead of encoding the wide-angle intra prediction modes as they are, the alternative to the wide-angle intra prediction modes, the tra prediction mode. By encoding them, the encoding efficiency can be improved.
  • the current block uses 67 wide-angle intra prediction mode
  • the tra prediction mode 2 which is an alternative to the wide angle of 67, can be coded with the intra prediction mode of the current block.
  • the current block is coded with the -1 wide angle intra prediction mode,-1 wide angle
  • the alternative intra prediction mode, 66 can be coded as the intra prediction mode of the current block.
  • the decoder can decode the intra prediction mode of the current block and determine whether the decoded intra prediction mode is included in the transformation range.
  • intra prediction mode In the case where the decoded intra prediction mode is a wide-angle alternative, intra prediction mode, intra prediction mode The mode can be converted to a wide-angle intra prediction mode.
  • the wide angle intra prediction mode can be coded as it is.
  • the encoding of the intra prediction mode can be done based on the MPM list described above. Specifically, when the neighboring block is encoded in the wide-angle intra prediction mode, the MPM can be set based on the tra prediction mode, which is a wide-angle replacement corresponding to the wide-angle intra prediction mode.
  • the residual image is displayed.
  • the current block can be transformed to decompose into two-dimensional frequency components.
  • the transformation can be performed using a transformation technique such as DCT (Discrete Cosine Transform) or DST (Discrete Sine Transform).
  • the conversion method can be determined on a block basis.
  • the conversion technique can be determined based on at least one of the prediction coding mode of the current block, the size of the current block, or the size of the current block. For example, the current block is in the intra. If it is encoded in side mode and the size of the current block is smaller than NxN, conversion can be performed using the conversion technique DST. On the other hand, when the above conditions are not satisfied, conversion is performed using the conversion technique DCT. 2020/175914 1»(:1 ⁇ 1 ⁇ 2020/002752
  • the second transform is to define the transform based on that or as the first transform, and convert the block to which the first transform is applied again. It can be defined as this.
  • the first conversion may be performed using any one of a plurality of conversion core candidates.
  • the first transformation may be performed using any one of DCT2, 0018 or 1X17.
  • the units of the first transformation and the second transformation may be different.
  • the first transformation can be performed on an 8x8 block
  • the second transformation can be performed on a subblock of 4x4 size among the converted 8x8 blocks.
  • whether or not to perform the second conversion may be determined. For example, only when the horizontal direction conversion core and the vertical direction conversion core are the same, The second transformation may be performed. Alternatively, the second transformation may be performed only when the horizontal direction transformation core and the vertical direction transformation core are different.
  • the second transformation may be allowed only when a transformation core defined as transformation in the horizontal direction and transformation in the vertical direction is used.
  • a transformation core defined as transformation in the horizontal direction and transformation in the vertical direction is used.
  • a second transformation may be allowed.
  • the second transformation it is possible to determine whether to perform the second transformation based on the number of the thesis-zero transformation coefficients of the current block. For example, when the thesis-zero transformation coefficient of the current block is less than or equal to the threshold, the second transformation is not used. When the non-zero transform coefficient of the current block is larger than the threshold value, the second transform may be set to be used. Only when the current block is encoded by intra prediction, the second transform may be set to be used.
  • the decoder can perform the inverse transformation of the second transformation (the second inverse transformation), and the inverse transformation of the first transformation (the first inverse transformation) on the result of the execution. As a result of performing the inverse transformation, residual signals for the current block can be obtained.
  • the decoder can obtain the residual block through inverse quantization and inverse transformation.
  • the prediction block and the residual block are added to obtain a restored block for the current block.
  • In-loop filters include deblocking filters, sample adaptive offset filters (SAO), or adaptive loop filters. ALF).
  • SAO sample adaptive offset filters
  • ALF adaptive loop filters
  • a second restoration block may be obtained by applying at least one of the deblocking filter, SAO or ALF to the first restoration block.
  • the SAO or ALF may be applied after the deblocking filter is applied.
  • This deblocking filter is a block that occurs when quantization is performed on a block basis.
  • Blocking Strength (BS) can be determined.
  • 24 is a flow chart showing a process of determining the block strength.
  • the neighbor restoration block may be neighboring to the left or top of the current block.
  • whether to apply the deblocking filter can be determined. For example, if the block strength is 0, filtering may not be performed.
  • SAO is aimed at mitigating the ringing artifact that occurs as it performs quantization in the frequency domain.
  • SAO can be performed by adding or subtracting an offset determined in consideration of the pattern of the first reconstructed image.
  • the offset determination method includes an edge offset (EO) or a band offset.
  • EO represents a method of determining the offset of the current sample according to the pattern of the main changing stations.
  • BO represents a method of applying a common offset to a set of pixels with similar brightness values in the area, specifically, dividing the pixel brightness into 32 equal sections, and setting pixels with similar brightness values as a set For example, four adjacent bands out of 32 bands can be grouped together. It can be set, and the same offset value can be applied to samples belonging to four bands.
  • [336] is a method of generating a second restored image by applying a filter of a predefined size/shape to the first restored image or the restored image to which the deblocking filter is applied. Equation 6 below shows an application example of ALF.
  • Each filter candidate may be of any size or shape.
  • Figure 25 shows the predefined filter candidates.
  • At least one of a 5x5, 7x7, or 9x9 diamond shape may be selected.
  • chroma component only a 5x5 diamond shape can be used.
  • a tile represents the basic unit of parallel encoding/decoding. Each tile can be processed in parallel.
  • the tile can have a rectangular shape.
  • a non-rectangular shape tile can be accepted.
  • Information indicating whether a tile is allowed or whether a non-rectangular shape tile is present may be signaled through the bitstream.
  • Image encoding/decoding information can be signaled through the slice header.
  • Information signaled through the slice header may be commonly applied to coding tree units or tiles included in the slice.
  • 26 is a diagram showing a picture dividing method according to an embodiment of the present invention.
  • the processing unit can contain at least one of a tile or slice.
  • a syntax indicating whether the current picture is divided into multiple tiles or slices is 110 n ⁇ (ni 3011 011_: ( 3 ⁇ 4 can be signaled through the Gbitstream.
  • a value of 0 in the syntax 110N ⁇ (Nee)1 011_:( ⁇ indicates that the current picture is split into at least one tile or at least one slice.
  • Syntax 110N ⁇ (Nee)111;011_:(3 ⁇ 4 means that a value of 1 indicates that the current picture is not divided into multiple tiles or multiple slices.
  • the dividing process of the current picture can be terminated.
  • the current picture is composed of one tile and one slice (or group of tiles). Can be understood.
  • the tile segmentation information can be signaled through the bitstream. Based on the signaled tile segmentation information, the picture can be divided into at least one tile (2620).
  • a group of tiles can be determined by merging multiple tiles or dividing one tile 2630).
  • FIG. 27 shows an example in which a picture is divided into a plurality of tiles.
  • a tile may contain at least one coding tree unit.
  • the boundary of the tile may be set to match the boundary of the coding tree unit. That is, a partition type in which one coding tree unit is divided into multiple units may not be allowed. have.
  • Information indicating a picture division type can be signaled through a bitstream.
  • the information may be encoded and signaled through a picture parameter set or a sequence parameter set.
  • the information indicating the partition type of the picture is that the tiles are of equal size.
  • It may include at least one of information indicating whether to be divided, information indicating the number of tile columns, or information indicating the number of tile rows.
  • the information indicating whether the tiles are divided into equal size may be a 1-bit flag unifoml_spacing_flag.
  • unifoml_spacing_flag When it is determined that the picture is divided into tiles of equal size, the picture adjacent to the right and/or lower boundary Except for the tile(s), the remaining tiles may have the same size.
  • each of the tiles belongs to a different column (0 0 1 1111111 ) and/or a row (yo 0 ⁇ ).
  • 2020/175914 1 (:1 ⁇ 1 ⁇ 2020/002752
  • information indicating the number of tile columns and/or the number of tile rows may be signaled. For example, information generated by dividing a picture may be signaled.
  • the number of tile columns is 4 and the number of tile rows is 3. Accordingly, 1111111_1116_00111111118_11nan 111181 can represent 3, and 1111111_1116_]'0 ⁇ 8_111 urine 11181 can represent 2.
  • the size of the tile can be determined based on 1111111_1116_]'0 ⁇ 8_1111111181.
  • the size of each tile can be determined.
  • the size of the remaining tiles excluding the tiles adjacent to the right and/or lower boundary in the current picture is information indicating the width of the tile and the tile It can be determined based on information representing the height of
  • One tile may be composed of at least one coding tree unit.
  • the remaining tiles excluding tiles adjacent to the right or lower boundary of the picture may be set not to include a smaller area than the coding tree unit.
  • the boundary of the tile matches the boundary of the coding tree unit.
  • a set of tiles belonging to one line can be called a tile set.
  • a horizontal tile set may refer to a set of tiles belonging to one row
  • a vertical tile set may refer to a set of tiles belonging to one column.
  • tiles may have the same size in all areas except for the picture boundary.
  • the heights of tiles adjacent in the horizontal direction are set the same, or the widths of tiles adjacent in the vertical direction are set to be the same. It can be set the same.
  • Information indicating the size of the tile column and/or the size of the tile row can be signaled through the bitstream.
  • the size of the tile column can be determined based on the number of coding tree unit columns included in the tile column, and the size of the tile row. Can be determined based on the number of coding tree unit rows included in the tile row.
  • first syntax single_tile_in_pic_flag 7] 1 can be ring day. Shows the syntax being a single_tile_in_pic_flag 7] 1, are not the picture is not divided into a plurality of tiles.
  • 2020/175914 1 (:1 ⁇ 1 ⁇ 2020/002752
  • the single_tile_in_pic_flag of 0 indicates that the current picture is divided into a plurality of tiles.
  • Information for determining the size of the tile can be encoded and signaled.
  • the syntax element bar 6_ ⁇ ⁇ 11:11_1111111181 [1] and the height of the Saturday tile row
  • the syntax element 1 high school 6_116 111;_1111111181] indicating [0103] can be encoded in the bitstream.
  • Information for specifying the number of tile columns in which the width of the tile column in the current picture is explicitly signaled may be signaled through the bitstream.
  • the width of the tile column is used to determine the number of tile columns to be signaled.
  • 1111111_6 ]3_1116_.0111111118_1111111181 can be signaled through the bitstream.
  • the syntax 1111111_6 ]3_1116_.0111111118_1111111181 can be the value that the width of the tile column is the value of the number of tile columns that are signaled by one.
  • the width of the tile column index is one tile column. If it is smaller than the number of tile rows to be ringed, the width of the tile rows is
  • the width of the tile column can be set equal to the last signaled syntax _ ⁇ 11_111 1181 [1].
  • 1 may be a smaller integer.
  • information for specifying the number of tile rows to which the height of the tile row in the current picture is signaled may be signaled through a bitstream.
  • the height of the tile row is the number of tile rows to which the signal is signaled.
  • 1111111_6 ]3_1116_]'0 ⁇ 8_1111111181 can be signaled through the bitstream.
  • the syntax 1111111_6 ]3_1116_]'0 ⁇ 8_1111111181 may be the value of the height of a tile row divided by one from the number of tile rows signaled. If the index 1 of the group is smaller than the number of signaled tile rows, the height of the tile row is
  • the decoder can determine the size of the tile based on the number of coding tree unit columns and/or the number of coding tree unit rows and the size of the coding tree unit derived based on the syntax elements. For example, the first The width of the tile column is
  • Example 6_1 Can be set as 1;_1111111181 []] + 1) * (height of coding tree unit)).
  • information indicating the size of the coding tree unit can be signaled through a sequence parameter set or a picture parameter set.
  • tile index For each coding tree unit, an identifier (hereinafter referred to as tile index, hereinafter) for identifying the tile to which the coding tree unit belongs can be assigned.
  • Tile index can be assigned.
  • the order of tile index allocation may be predefined in the encoder and the decoder. For example, according to the raster scan order, a tile index can be assigned, or, taking into account the size (e.g., width or/and height) of the first tile of the tile, the scan order can be determined.
  • the width of the first tile is the height.
  • Each tile can be divided into multiple tiles.
  • Each of a plurality of tiles created by dividing a tile can be called a subtile or brick.
  • Bricks can be a unit of parallel processing.
  • bricks can be encoded/decoded independently of each other.
  • When encoding/decoding a block included in a brick it can be set not to use the data of other blocks.
  • the samples included in the tabric may be set to be unavailable as a reference sample for intra prediction, or the data in the tablock may be set not to be used as a merge candidate, motion vector prediction candidate (AMVP candidate) or motion information candidate. have.
  • AMVP candidate motion vector prediction candidate
  • Figure 28 is a view for explaining the generation of a brick.
  • a brick can be created by dividing the tile in the horizontal direction.
  • a scan can be applied; for example, after scanning all the bricks contained in a particular tile, the next tile can be scanned, i.e. the brick can have the same status as the tile.
  • the boundary of the brick can match the boundary of the coding tree unit, i.e., at least one row of the coding tree unit in the tile can be defined as a brick.
  • a value of 1 for the syntax indicates that a tile with a tile index of 1 is divided into two or more bricks. Index; indicates that one-in-tile is not divided.
  • a syntax unifoml_brick_spacing_flag of 1 indicates that the height of the bricks in the tile is uniform. If the uniform_brick_spacing_flag value is 1, the syntax 1 ]01 111_1111111181 indicating the basic height of the brick can be signaled. The remaining bricks excluding the last brick in the tile can have a basic height determined by syntax 1 no_11 (:_1111111181). The last brick in the tile can be set as the remaining area excluding the remaining bricks.
  • the height of the last brick in the tile can be derived by dividing the sum of the heights of the previous bricks from the height of the tile.
  • Nono_11 1;_1111111181 [1] may have a value less than the height of the tile containing the brick, divided by one. For example, a tile's height.
  • syntax 1 no 101 111;_111 urine 11181 [1] is 0 to 1'0 ⁇ ? It can have a value between 13 ⁇ 4 111,2.
  • 3"0 ⁇ 3 ⁇ 4 represents the number of coding tree unit rows that the tile contains.
  • Tiles and bricks can be identified by tile index.
  • a tile index can be assigned to each tile and brick according to the raster scan order. When one tile is divided into multiple bricks, each of the plurality of bricks can be identified. Tile index can be assigned.
  • tile is not only a tile
  • At least one tile can be defined as a processing unit.
  • a plurality of tiles can be defined as a tile group.
  • a tile group can also be called a slice.
  • one tile may be divided into a plurality of processing units.
  • one tile may be divided into a plurality of slices.
  • one slice may contain at least one row of coding tree units. If a tile is divided into multiple slices, information indicating the height of each slice is
  • Information indicating the total number of tile groups in a sequence or picture can be signaled through a bitstream.
  • a syntax indicating the total number of tile groups in a sequence or picture! 1111111'01 1116(3 ⁇ 4011]3_1111111181 can be signaled.
  • the address information of the tile group can be signaled to identify each tile group. For example, syntax visible signaling that points to the index of each tile group for each tile group. Can be
  • Image encoding/decoding information can be signaled through the tile group header.
  • the information signaled through the tile group header is stored in tiles belonging to the tile group.
  • the information may be signaled.
  • the information may include information indicating the number of tile groups in the picture and/or the information may include information indicating a method of dividing the tile group. For example, syntax indicating the number of tile groups in a picture
  • 1111111_1116]'01 8_: ⁇ ni3no_1111111181 can be signaled through the bitstream.
  • the syntax rec_tile_group_flag is a tile based on the raster scan order of the tiles.
  • rec_tile_group_flag 0 indicates that a tile group is defined based on the raster scan order of the tiles.
  • rec_tile_group_flag of 1 indicates that a rectangular tile group is defined.
  • the form indicates that a tile group is defined.
  • a tile group can be defined based on the raster scan order of the tiles.
  • a raster scan tile group is one or more consecutive tile(s) defined as a tile group according to the raster scan order.
  • the raster scan tile group is to be applied.
  • non-rectangular tile groups may be created.
  • 29 and 30 are diagrams showing an example of defining a tile group based on a raster order.
  • the first tile group tile group O when it is assumed that the first tile group tile group O includes 3 tiles, the first tile group tile group O is defined to include TileO or Tile2 according to the raster scan order. Assuming that the second tile group tile groupl contains 6 tiles, the second tile group tile groupl can be defined as including Tile 3 to Tile 8 according to the raster scan order. The last tile group tile group 2 is Depending on the raster scan order, the remaining tiles can include Tile 9 or Tile l.
  • tile groups are defined according to the raster scan order, information indicating the number of tiles each tile group contains can be signaled to determine which tiles each tile group contains. For the last tile group, The signaling of the information indicating the number of tiles contained in the tile group may be omitted.
  • the width or height of the tiles included in the tile group may be different. For example, among the tiles included in the second tile group Tile groupl, the height of Tile3 is shown to be different from the remaining tiles.
  • tiles with different widths or heights may be set so that they are not included in one tile group.
  • tile group including Tile 3 to Tile 8 shown in FIG. 29 is divided into two tile groups, tile group 1 and tile group 2. Accordingly, The second tile group tile goupl has a height of 2
  • tile group tile group2 includes Tile4 to Tile8 whose height is 3.
  • a tile group may be defined as a square shape.
  • a square tile group is a tile The group is defined as a rectangle. When a rectangular tile group is applied, tiles located at the four corners of the tile group belong to the same row or column.
  • 31 is a diagram showing an example in which only a square-shaped tile group is allowed.
  • the fourth tile group tile group tile group 3 includes Tile5, Tile6, Tile9, and TileLO.
  • Tile5 Tile6, Tile9
  • TileLO TileLO
  • One tile group can be defined as a rectangle with the upper left tile and the lower right tile as two vertices that make up the tile group.
  • the boundary of the tile group may coincide with the picture boundary and/or the boundary of the tile.
  • the left boundary or the top boundary of the tile group is set as the boundary of the picture, or the left boundary or the top boundary of the tile group is the tile boundary. It can be set as a boundary.
  • information for identifying the tiles included in each tile group may be signaled to determine the tiles included in each tile group.
  • the above information is the upper left corner of the tile group. It may be to identify the index of the tile located at the bottom of the tile group and the index of the tile located at the bottom right of the tile group, for example, the syntax topjefuilejdx and the right of the tile group to identify the index of the tile located at the top left of the tile group.
  • the syntax bottom_right_tile_idx for identifying the index of the tile located at the bottom can be signaled through the bitstream.
  • the syntax for identifying the index of the tile located at the top left of the tile group or at the bottom right of the tile group At least one of the syntaxes for identifying the index of the tile to be located may be omitted.
  • tile group O As an example, in the example shown in FIG. 31, tile group O, tile group 1, and tile group 2
  • the index topjefuilejdx of the tile located at the top left of each tile group and the index bottom_right_tile_idx of the tile located at the bottom right of each tile group can be signaled.
  • the last tile group in the picture the top_left_tile_idx and bottom_right_tile idx of the tile group. Coding may be omitted.
  • the index of the upper left tile of tile group 3 is set as the index of the tile located at the upper left of the remaining area excluding tile group O, tile group 1 and tile group 2 of the picture, and the index of the lower right tile of tile group 3 is located at the lower right of the remaining area. It can be set as the index of the tile (or the tile located at the bottom right of the picture).
  • information indicating the difference between the index of the tile located at the top left of the tile group and the index of the tile located at the bottom right of the tile group can be signaled through the bitstream.
  • the i-th tile group For example, the syntax for identifying the index of the tile located at the top left of the tile group top_left_tile_idx[i] and the syntax indicating the difference between the index of the tile located at the top left of the tile group and the index of the tile located at the bottom right of the tile group bottom_right_tile_idx_delta[i] can be signaled.
  • the index of the lower right tile of the ith tile group is
  • margin 51 can be 11 ⁇ . 2020/175914 1»(:1 ⁇ 1 ⁇ 2020/002752
  • Table 9 shows a syntax table containing information indicating index differences.
  • Encoding/decoding efficiency can be increased by encoding.
  • the encoding of 1:01)_163 ⁇ 4_13 10(1 _111111118[1] can be omitted.
  • Sen ⁇ represents the smallest integer greater than or equal to &.
  • the index of the upper left tile of the first tile group can be set as 1;0]3_1613 ⁇ 4_15 10(1 _1111111181] plus 1.
  • At least one of the horizontal index difference information indicating the index difference between the rightmost tiles or the vertical index difference information indicating the index difference between the first tile in the tile group and the lowest tile belonging to the same tile column can be coded. For example, the right side of the picture.
  • at least one of the horizontal index difference information or the vertical index difference information may be encoded and signaled.
  • the predetermined position is a tile. It can be at least one of the top left, top right, bottom left, bottom right, or center of the group.
  • the index of the tile located at the top left of the 1st tile group and the tile located at the top left of the 1 + 1st tile group Syntax 1;0]3_16 _15 10(1 _(1 &[1]) can be signaled.
  • a syntax indicating the difference between the indexes between tiles 1; 01 ) _163 ⁇ 4_15 10 ( 1 _ ( 1 & can be omitted.
  • the table shows a syntax table containing information indicating the difference in the upper left tile index between the two tile groups.
  • Equation 8 shows an example of deriving the index of the upper left tile of the current tile group.
  • the index difference from the upper left tile of the previous tile group i.e., one-valued one-person tile group
  • the index of the upper left tile in the second tile group Can also be encoded.
  • Table 11 shows a syntax table containing information indicating the index difference value of the lower right tiles within the two tile groups.
  • the index of the right lower tile of the i-th tile group can be derived by summing the index of the upper right tile of the previous tile group (i.e., the i-1th tile group) with bottom_right_brick_idx_delta[i].
  • the mathematical formula W Shows an example of deriving the index of the lower right tile of the current tile group.
  • BottomRightIdx[i-l] represents the index of the lower right tile in the i-1th tile group.
  • Index 600A3 ⁇ 4on 1(1 [0] can be set the same as 150110111_]' 111;_15 10(1 _(1 [0]).
  • the syntax 1?01;1;0111_] 111;_1 Nono_1 is the lower right tile of the current tile group (eg, 1st tile group) It can be defined as the difference between the index of the next tile group (e.g., the first tile group) and the index of the right tile of the next tile group. In this case, 150110111_] 111;_1 for the last tile group. Signaling can be omitted.
  • _ _ _ _ _ _ 111181[ is the difference between the index of the upper left tile of the previous tile group (eg, your first tile group) and the index of the upper left tile of the current tile group (eg: 1st tile group) It represents the value minus 1 from the value. () 2020/175914 1»(:1/10 ⁇ 020/002752
  • the index of the upper left tile of the fifth tile group can be derived by summing the index of the upper left tile of the previous tile group (i.e., 1-1st tile group) and 1.
  • Equation 12 is the current tile.
  • deriving the index of the upper left tile of the group is an example of deriving the index of the upper left tile of the group.
  • TopLeftBrickldx [/] TopLeftBrickIdx[i- 1] + top left brick idx delta minus 1 [/] + 1
  • Information indicating the size of a tile group can be signaled through a bitstream. For example, a syntax calculation indicating the width of the first tile group 16 ⁇ 1'0111)_ ⁇ (1111_:111_(1168_1111111181 [1] and the syntax indicating the height of the Saturdayth tile group (: ⁇ 1'0111)_11 ⁇ 11(:_111_(1168_1111111181 [Can be signaled through this bitstream. Syntax Mountain 16 ⁇ 1) '0111)_ ⁇ 1(1111_111_(1168_1111111181 [indicates the value obtained by subtracting 1 from the number of tile columns in the Saturday tile group,
  • Acid 1 pyon 0111 _ ⁇ _ ⁇ & ⁇ 1_ (1168_111 ⁇ 11181 and syntax acid 0111) for 11 _11 (: ⁇ _ 1_ can be omitted (1168_111 ⁇ 1118] ⁇ Coding.
  • Syntax Ma 1111_6 1)_81 8_:111_(11 characters 1] can have the same or smaller value as the number of tile groups included in the tile.
  • Syntax Ma 1111_6 1)_81 68_:111_(11 characters 1] Syntax indicating the height 6 ! ⁇ _81 6_11 For 11011_(:(:11_1111111181
  • [46 is the syntax when the number of tile columns in the current picture is 1
  • the syntax bar 6 indicating the width of the tile group is]'011]3_ ⁇ 1(3 ⁇ 411_:111_11168_111 ⁇ 11181 encoding is omitted, and the distance to the predetermined location tile in the adjacent tile group can be set as the width of the tile group.
  • syntax By 0]3_163 ⁇ 4_15 10(1 _(1 D1], the upper left tile of the 1+1st tile group adjacent to the right of the 1st tile group can be specified.
  • the width of the first tile group is the difference between the X coordinate of the top left tile in the first tile group (eg, the X coordinate of the top left sample) and the X coordinate of the top left tile in the first tile group (eg, the X coordinate of the top left sample).
  • the encoding of]'011]3_116 111:_111_11168_1111111181 can be omitted, and the distance to the predetermined position tile in the adjacent tile group can be set as the width of the tile group.
  • , the upper left tile of the second tile group located at the bottom of the Saturday tile group can be specified.
  • the height of the first tile group can be derived from the difference between the X coordinate of the top left tile in the first tile group (eg, the coordinates of the top left sample) and the coordinate of the top left tile in the second tile group (eg, the X coordinate of the top left sample).
  • information indicating whether or not the difference value information is used may be signaled through the bitstream.
  • 86111;_£ ⁇ can be signaled through the bitstream.
  • (1 &_1 ⁇ 86111;_13 ⁇ 4 means that the value of 1 is the tile index 2020/175914 1»(:1 ⁇ 1 ⁇ 2020/002752
  • the syntax bar 6 representing the size of the tile group is]'011]3_ ⁇ 1(1&_:111_11168_111 ⁇ 11181 [ni and syntax
  • Bar 6 is]'011]3_116 111:_111_11168_1111111181] and difference value information for determining the position of the upper left tile or the upper right tile within the tile group (e.g.,
  • Bar 6 can be defined by]'011]3_116 111:_111_ bought 168_1111111181 ].
  • the tile groups adjacent to the right side of the tile group that are in contact with the left boundary of the current picture can be set to have the same height. Accordingly, the height of the tile group only for the tile group that is in contact with the left boundary of the current picture. It is possible to signal information indicating the height of the tile group and to omit the signaling of the information indicating the height of the tile group for a tile group that does not touch the left border of the current picture.
  • the tile group is defined according to the raster scan order of the tiles, but it is also possible to define the tile group according to the vertical scan, horizontal scan, or diagonal scan.
  • the previous tile group can be determined according to the index of the tile group or a predetermined scan order.
  • the previous tile group may be determined as a tile group whose index is 1 smaller than the current tile group, or the previous tile group may be determined according to at least one of raster scan order, horizontal scan order, vertical scan order, or diagonal scan order.
  • It may include at least one of the displayed information, information indicating whether the width of the previous tile group and the current tile group are the same, or information indicating whether the height of the previous tile group and the current tile group are the same.
  • [47 is an example, syntax 1186_ indicating whether the size of the current tile group is the same as the size of the previous tile group] and ⁇ 0118_1(3_8 _:(3 ⁇ 4 can be signaled.
  • Urine 6_: ⁇ 3 ⁇ 4 of 1 indicates that the size of the fifth tile group is the same as the size of the first tile group. If the syntax is 1, the encoding of information to determine the tiles included in the second tile group is omitted. For example, information indicating the number of tiles included in the tile group 2020/175914 1»(:1 ⁇ 1 ⁇ 2020/002752
  • information for determining tiles included in the fifth tile group may be encoded and signaled.
  • the current picture is divided into at least one tile and then a tile group is defined.
  • a tile group is first defined, and then the tile group is divided into a plurality of tiles. It can also be divided.
  • Table 13 shows an example of dividing each tile group into at least one tile.
  • Information on the composition of a tile group in a picture can be signaled through a bitstream.
  • the information on the composition of a tile group is information indicating whether or not a picture is composed of one tile. It may include at least one of information indicating whether or not it is composed of tiles, information indicating whether a tile group is a square, information indicating the number of tile groups, information indicating the number of tile group columns, or information indicating the number of tile group rows. .
  • a syntax indicating whether the current picture is divided into a plurality of tiles can be signaled through a bitstream.
  • a single_tile_in_pic_flag of 0 indicates that the current picture is divided into a plurality of tiles.
  • a single_tile_per_tile_group_flag can be signaled through a bitstream.
  • a syntax single_tile_per_tile_group_flag of 1 indicates that each tile group consists of only one tile.
  • a syntax single_tile_per_tile_group_flag of 0 indicates that a plurality of tile groups consist of at least one tile.
  • the segmentation information of each tile group can be signaled through the bitstream.
  • the first Uniform_tile_spacing_inTG[i] indicating whether or not a tile group is divided into tiles of equal size can be signaled through the bitstream.
  • the syntax uniform_tile_spacing_inTG[i] can be signaled only when the uniform_tile_spacing_flag is 0.
  • uniform_tile_spacing_inTG[i] It is possible to determine whether to encode uniform_tile_spacing_inTG[i]. For example, the syntax unifomi_tile_spacing_inTG[i] can be coded only when the tile group is a square type. When the tile group is a non-square type, the encoding of uniform_tile_spacing_inTG[i] is Can be omitted.
  • num_tile_columns_minus_in_TG[i] can be signaled.
  • a syntax num_tile_rows_minus_in_TG[i] indicating the number of tile rows included in the i-th tile group can be signaled.
  • tile_column_width_minus[i][j] can be signaled.
  • tile_column_wid ⁇ i_minus[i][j] represents the width of the j-th tile column in the i-th tile group.
  • syntax tile_row_height_minus[i][j] displays the height of the tile row included in the tile group for each tile group.
  • the syntax tile_row_height_minus[i][j] is the height of the jth tile row in the ith tile group.
  • each of the components (e.g., units, modules, etc.) constituting the block diagram in the above-described embodiment is hardware It may be implemented as a device or software, or may be implemented as a single hardware device or software by combining a plurality of components.
  • the above-described embodiments are implemented in the form of program instructions that can be executed through various computer components and are computer-readable.
  • the recording medium can be recorded on a recording medium.
  • the computer-readable recording medium may contain program commands, data files, data structures, etc. alone or in combination.
  • 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, magnetic-optical media such as floptical disks. media), and program instructions such as ROM, RAM, flash memory, etc. 2020/175914 1»(:1 ⁇ 1 ⁇ 2020/002752
  • 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.
  • the present invention can be applied to an electronic device that encodes/decodes an image.

Landscapes

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

Abstract

본 발명에 따른 영상 복호화 방법은, 픽처를 복수의 타일들로 분할하는 단계; 및 상기 복수의 타일들을 기초로, 적어도 하나의 슬라이스를 결정하는 단계를 포함할 수 있다. 이때, 상기 픽처를 복수의 타일들로 분할하는 단계는, 상기 픽처 내 제1 타일 열의 너비를 결정하는 단계; 및 상기 제1 타일 열에 이웃하는 제2 타일 열의 너비를 결정하는 단계를 포함할 수 있다.

Description

() 2020/175914 1»(:1/10公020/002752 명세서
발명의명칭 :영상신호부호화/복호화방법및이를위한장치 기술분야
[1] 본발명은영상신호부호화/복호화방법및이를위한장치에관한것이다. 배경기술
[2] 디스플레이패널이점점더대형화되는추세에따라점점더높은화질의
비디오서비스가요구되고있다.고화질비디오서비스의가장큰문제는 데이터량이크게증가하는것이며 ,이러한문제를해결하기위해,비디오 압축율을향상시키기위한연구가활발하게진행되고있다.대표적인예로,
2009년에 MPEG(Motion Picture Experts Group)과 ITU -T (International
Telecommunication Union-Telecommunication)산하의 VCEG( Video Coding Experts Group)에서는 JCT-VC(Joint Collaborative Team on Video Coding)를결성하였다. JCT-VC는 H.264/AVC에비해약 2배의압축성능을갖는비디오압축표준인 HEVC(High Efficiency Video Coding)를제안하였으며 , 2013년 1월 25일에표준 승인되었다.고화질비디오서비스의급격한발전에따라 HEVC의성능도점차 적으로그한계를드러내고있다.
발명의상세한설명
기술적과제
[3] 본발명은비디오신호를부호화/복호화함에있어서,픽처를복수의타일들 또는복수의슬라이스들로분할하는방법및상기방법을수행하기위한장치를 제공하는것을목적으로한다.
[4] 본발명은픽처를복수의타일들로분할함에 있어서,타일인덱스를기초로 슬라이스를구획하는방법및상기방법을수행하기위한장치를제공하는것을 목적으로한다.
[5] 본발명은픽처를복수의슬라이스들로분할함에 있어서,슬라이스위치에
따라,타일인덱스의부호화/복호화여부를적응적으로결정하는방법및상기 방법을수행하기위한장치를제공하는것을목적으로한다.
[6] 본발명에서이루고자하는기술적과제들은이상에서언급한기술적과제들로 제한되지않으며,언급하지않은또다른기술적과제들은아래의기재로부터본 발명이속하는기술분야에서통상의지식을가진자에게명확하게이해될수 있을것이다.
과제해결수단
[7] 본발명에따른비디오신호복호화방법은,현재픽처가복수의타일들로
분할되는경우,슬라이스의결정방법을나타내는정보를복호화하는단계,및 적어도하나의타일을슬라이스로정의하는단계를포함할수있다.이때,상기 슬라이스의결정방법을나타내는정보는래스터스캔순서에따른정의방법을 2020/175914 1»(:1^1{2020/002752
2 기초로정의되는지또는사각형태로의 정의방법을나타낼수있다.또한,상기 슬라이스의 결정방법이사각형태로의 정의방법을나타내는경우,제 1 슬라이스는상기제 1슬라이스내기설정된위치의타일을기초로정의되고, 상기 제 1슬라이스가상기 현재픽처내마지막슬라이스가아닌경우,상기 제 1 슬라이스내상기 기설정된위치의타일을식별하기위한제 1신택스가 비트스트림으로부터 파싱되고,상기제 1슬라이스가픽처 내마지막슬라이스인 경우,상기 제 1신택스의 파싱이 생략될수있다.
[8] 본발명에 따른비디오신호부호화방법은,현재픽처가복수의타일들로
분할되는경우,슬라이스의결정 방법을나타내는정보를부호화하는단계,및 적어도하나의타일을슬라이스로정의하는단계를포함할수있다.이때,상기 슬라이스의 결정방법을나타내는정보는래스터스캔순서에따른정의방법을 기초로정의되는지또는사각형태로의 정의방법을나타낼수있다.또한,상기 슬라이스의 결정방법이사각형태로의 정의방법을나타내는경우,제 1 슬라이스는상기제 1슬라이스내기설정된위치의타일을기초로정의되고, 상기 제 1슬라이스가상기 현재픽처내마지막슬라이스가아닌경우,상기 제 1 슬라이스내상기 기설정된위치의타일을식별하기위한제 1신택스가 비트스트림에부호화되고,상기제 1슬라이스가픽처 내마지막슬라이스인 경우,상기 제 1신택스의부호화가생략될수있다.
[9] 본발명에 따른비디오신호복호화방법에 있어서 ,상기 제 1신택스는상기제 1 슬라이스내상기 기설정된위치의타일과제 2슬라이스내기 설정된위치의 타일사이의 인덱스차분값을나타낼수있다.
[1이 본발명에 따른비디오신호복호화방법에 있어서 ,상기 제 1신택스는상기제 1 슬라이스내상기 기설정된위치의타일과제 2슬라이스내기 설정된위치의 타일사이의 인덱스차분값에서기결정된값을차분한값을나타낼수있다.
[11] 본발명에 따른비디오신호복호화방법에 있어서,상기 제 1슬라이스가상기 현재픽처내마지막슬라이스가아닌경우,상기 제 1슬라이스의크기를 나타내는제 2신택스가추가파심/부호화되고,상기 제 1슬라이스가상기 현재 픽처 내마지막슬라이스인경우,제 2신택스의파심/부호화가생략될수있다.
[12] 본발명에 따른비디오신호복호화방법에 있어서,상기슬라이스의결정
방법이 래스터스캔순서에따른정의방법을나타내는경우,상기 제 1 슬라이스는상기제 1슬라이스에포함된타일들의 개수에 기초하여결정되고, 상기 제 1슬라이스가상기 현재픽처내마지막슬라이스가아닌경우,상기 제 1 슬라이스에포함된타일들의 개수를나타내는제 3신택스가파심/부호화되고, 상기 제 1슬라이스가픽처내마지막슬라이스인경우,상기제 3신택스의 파심/부호화가생략될수있다.
[13] 본발명에 대하여위에서 간략하게요약된특징들은후술하는본발명의
상세한설명의 예시적인양상일뿐이며 ,본발명의범위를제한하는것은 아니다. 2020/175914 1»(:1^1{2020/002752
3 발명의효과
[14] 본발명에의하면,픽처를복수의타일들또는슬라이스들로분할함으로써, 부호화/복호화효율을향상시킬수있다.
[15] 본발명에의하면,타일인덱스를기초로슬라이스를구획함으로써,
부호화/복호화효율을향상시킬수있다.
[16] 본발명에의하면,슬라이스위치에따라,타일인덱스의부호화/복호화여부를 적응적으로결정함으로써,부호화/복호화효율을향상시킬수있다.
[17] 본발명에서얻을수있는효과는이상에서언급한효과들로제한되지않으며, 언급하지않은또다른효과들은아래의기재로부터본발명이속하는
기술분야에서통상의지식을가진자에게명확하게이해될수있을것이다.
도면의간단한설명
[18] 도 1은본발명의일실시예에따른영상부호화기(인코더기)의블록도이다.
[19] 도 2는본발명의일실시예에따른영상복호화기(디코더기)의블록도이다.
[2이 도 3은본발명의일실시예에따른기본코딩트리유닛을도시한도면이다.
[21] 도 4는코딩블록의다양한분할형태를나타낸도면이다.
[22] 도 5는코딩트리유닛의분할양상을예시한도면이다.
[23] 도 6은본발명의일실시예에따른인터예측방법의흐름도이다.
[24] 도 7은머지모드하에서현재블록의움직임정보를유도하는과정의
흐름도이다.
[25] 도 8은머지후보를유도하기위해사용되는후보블록들을예시한도면이다.
[26] 도 9는서브블록별로움직임벡터를결정하는예를설명하기위한도면이다.
[27] 도 은모션정보테이블의업데이트양상을설명하기위한도면이다.
[28] 도 11은모션정보테이블의업데이트양상을나타낸도면이다.
[29] 도 12는기저장된모션정보후보의인덱스가갱신되는예를나타낸도면이다.
[3이 도 13는대표서브블록의위치를나타낸도면이다.
[31] 도 14는인터예측모드별로모션정보테이블이생성되는예를나타낸것이다.
[32] 도 15는머지후보들중일부에대해서만중복성검사가수행되는예를도시한 도면이다.
[33] 도 16은특정머지후보와의중복성검사가생략되는예를나타낸도면이다.
[34] 도 17은본발명의일실시예에따른,인트라예측방법의흐름도이다.
[35] 도 18은인트라예측모드들을나타낸도면이다.
[36] 도 19및도 20은참조샘플들을일렬로배열하는일차원배열의예시를나타낸 도면이다.
[37] 도 21는방향성인트라예측모드들이 X축과평행한직선과형성하는각도를 예시한도면이다.
[38] 도 22은현재블록이비정방형태인경우,예측샘플이획득되는양상을나타낸 도면이다. () 2020/175914 1»(:1/10公020/002752
4 도 23은와이드앵글인트라예즉모드들을나타낸도면이다.
도 24는블록강도를결정하는과정을나타낸흐름도이다.
도 25는기정의된필터후보들을나타낸다.
도 26은본발명의 일실시예에 따른,픽처분할방법을나타낸도면이다.
도 27은픽처가복수의 타일들로분할된예를나타낸다.
[44] 도 28은브릭의 생성 양상을설명하기 위한도면이다.
[45] 도 29및도 30은래스터순서에기초하여 타일그룹을정의한예를나타낸
도면이다.
[46] 도 31은사각형태의 타일그룹만이 허용되는예를나타낸도면이다.
발명의실시를위한형태
[47] 이하에서는도면을참조하여본발명의실시예를상세히설명한다.
[48] 영상의부호화및복호화는블록단위로수행된다.일예로,코딩블록,변환 블록,또는예측블록에 대해,변환,양자화,예측,인루프필터링,또는복원등의 부호화/복호화처리가수행될수있다.
이하,부호화/복호화대상인블록을’현재블록’이라호칭하기로한다.일예로, 현재블록은현재부호화/복호화처리 단계에따라,코딩블록,변환블록,또는 예즉블록을나타낼수있다.
50] 아울러,본명세서에서사용되는용어’유닛’은특정부호화/복호화프로세스를 수행하기 위한기본단위를나타내고,’블록’은소정크기의 샘플어레이를 나타내는것으로이해될수있다.별도의 설명이 없는한,’블록’과’유닛’은 동등한의미로사용될수있다.일 예로,후술되는실시예에서,코딩블록과코딩 유닛은상호동등한의미를갖는것으로이해될수있다.
도 1은본발명의 일실시예에 따른영상부호화기 (인코더기)의블록도이다.
52] 도 1을참조하면,영상부호화장치 (100)는픽쳐분할부 (110),예측부 (120, 125),
902331
4444553 49 변환부 (130),양자화부 (135),재정렬부 (160),엔트로피부호화부 (165),
역양자화부 (140),역변환부 (145),필터부 (150)및메모리 (155)를포함할수있다. 도 1에 나타난각구성부들은영상부호화장치에서서로다른특징적인 기능들을나타내기위해독립적으로도시한것으로,각구성부들이분리된 하드웨어나하나의소프트웨어구성단위로이루어짐을의미하지 않는다.즉,각 구성부는설명의편의상각각의구성부로나열하여포함한것으로각구성부중 적어도두개의구성부가합쳐져하나의구성부로이루어지거나,하나의 구성부가복수개의구성부로나뉘어져기능을수행할수있고이러한각 구성부의통합된실시예 및분리된실시예도본발명의본질에서 벗어나지 않는 한본발명의 권리범위에포함된다.
54] 또한,일부의구성요소는본발명에서본질적인기능을수행하는필수적인 구성요소는아니고단지성능을향상시키기위한선택적구성요소일수있다. 본발명은단지성능향상을위해사용되는구성요소를제외한본발명의 본질을구현하는데필수적인구성부만을포함하여구현될수있고,단지성능 향상을위해사용되는선택적구성요소를제외한필수구성요소만을포함한 구조도본발명의권리범위에포함된다.
[55] 픽쳐분할부 (no)는입력된픽쳐를적어도하나의처리단위로분할할수있다. 이때,처리단위는예측단위 (Prediction Unit:모미일수도있고,변환
단위 (Transform Unit: TU)일수도있으며,부호화단위 (Coding Unit: CU)일수도 있다.픽쳐분할부 (no)에서는하나의픽쳐에대해복수의부호화단위,예측 단위및변환단위의조합으로분할하고소정의기준 (예를들어,비용함수)으로 하나의부호화단위,예측단위및변환단위조합을선택하여픽쳐를부호화할 수있다.
[56] 예를들어,하나의픽쳐는복수개의부호화단위로분할될수있다.픽쳐에서 부호화단위를분할하기위해서는쿼드트리구조 (Quad Tree Structure)와같은 재귀적인트리구조를사용할수있는데하나의영상또는최대크기부호화 단위 (largest coding unit)를루트로하여다른부호화단위로분할되는부호화 유닛은분할된부호화단위의개수만큼의자식노드를가지고분할될수있다. 일정한제한에따라더이상분할되지않는부호화단위는리프노드가된다.즉, 하나의코딩유닛에대하여정방형분할만이가능하다고가정하는경우,하나의 부호화단위는최대 4개의다른부호화단위로분할될수있다.
[57] 이하,본발명의실시예에서는부호화단위는부호화를수행하는단위의
의미로사용할수도있고,복호화를수행하는단위의의미로사용할수도있다.
[58] 예측단위는하나의부호화단위내에서동일한크기의적어도하나의
정사각형또는직사각형등의형태를가지고분할된것일수도있고,하나의 부호화단위내에서분할된예측단위중어느하나의 예측단위가다른하나의 예측단위와상이한형태및/또는크기를가지도록분할된것일수도있다.
[59] 부호화단위를기초로인트라예측을수행하는예측단위를생성시최소
부호화단위가아닌경우,복수의예측단위 NxN으로분할하지않고인트라 예즉을수행할수있다.
[6이 예측부 (120, 125)는인터예측을수행하는인터 예측부 (120)와인트라예측을 수행하는인트라예측부 (125)를포함할수있다.예측단위에대해인터예측을 사용할것인지또는인트라예측을수행할것인지를결정하고,각예측방법에 따른구체적인정보 (예컨대,인트라예측모드,모션벡터,참조픽쳐등)를 결정할수있다.이때,예측이수행되는처리단위와예측방법및구체적인 내용이정해지는처리단위는다를수있다.예컨대,예측의방법과예측모드 등은예측단위로결정되고,예측의수행은변환단위로수행될수도있다.
생성된예측블록과원본블록사이의잔차값 (잔차블록)은변환부 (130)로 입력될수있다.또한,예측을위해사용한예측모드정보,모션벡터정보등은 잔차값과함께엔트로피부호화부 (165)에서부호화되어복호화기에전달될수 있다.특정한부호화모드를사용할경우,예측부 (120, 125)를통해예측블록을 생성하지않고,원본블록을그대로부호화하여복호화부에전송하는것도 가능하다.
[61] 인터예측부 (120)는현재픽쳐의이전픽쳐또는이후픽쳐중적어도하나의 픽쳐의정보를기초로예측단위를예측할수도있고,경우에따라서는현재 픽쳐내의부호화가완료된일부영역의정보를기초로예측단위를예측할수도 있다.인터 예측부 (120)는참조픽쳐보간부,모션예측부,움직임보상부를 포함할수있다.
[62] 참조픽쳐보간부에서는메모리 (155)로부터참조픽쳐정보를제공받고참조 픽쳐에서정수화소이하의화소정보를생성할수있다.휘도화소의경우, 1/4 화소단위로정수화소이하의화소정보를생성하기위해필터계수를달리하는 DCT기반의 8탭보간필터 (DCT-based Interpolation Filter)가사용될수있다.색차 신호의경우 1/8화소단위로정수화소이하의화소정보를생성하기위해필터 계수를달리하는 DCT기반의 4탭보간필터 (DCT-based Interpolation Filter)가 사용될수있다.
[63] 모션예측부는참조픽쳐보간부에의해보간된참조픽쳐를기초로모션
예측을수행할수있다.모션벡터를산출하기위한방법으로 FBMA(Full search-based Block Matching Algorithm), TSS (Three Step Search), NTS(New
Three-Step Search Algorithm)등다양한방법이사용될수있다.모션벡터는 보간된화소를기초로 1/2또는 1/4화소단위의모션벡터값을가질수있다. 모션예측부에서는모션예측방법을다르게하여현재예측단위를예측할수 있다.모션예즉방법으로스킵 (Skip)방법 ,머지 (Merge)방법 , AMVP( Advanced Motion Vector Prediction)방법 ,인트라블록카피 (Intra Block Copy)방법등 다양한방법이사용될수있다.
[64] 인트라예측부 (125)는현재픽쳐내의화소정보인현재블록주변의참조픽셀 정보를기초로예측단위를생성할수있다.현재예측단위의주변블록이인터 예측을수행한블록이어서,참조픽셀이인터 예측을수행한픽셀일경우,인터 예측을수행한블록에포함되는참조픽셀을주변의인트라예측을수행한 블록의참조픽셀정보로대체하여사용할수있다.즉,참조픽셀이가용하지 않는경우,가용하지않은참조픽셀정보를가용한참조픽셀중적어도하나의 참조픽셀로대체하여사용할수있다.
[65] 인트라예측에서 예측모드는참조픽셀정보를예측방향에따라사용하는 방향성 예측모드와예측을수행시방향성정보를사용하지않는비방향성 모드를가질수있다.휘도정보를예측하기위한모드와색차정보를예측하기 위한모드가상이할수있고,색차정보를예측하기위해휘도정보를예측하기 위해사용된인트라예측모드정보또는예측된휘도신호정보를활용할수 있다.
[66] 인트라예측을수행할때예측단위의크기와변환단위의크기가동일할경우, 예측단위의좌측에존재하는픽셀,좌측상단에존재하는픽셀,상단에 () 2020/175914 1»(:1/10公020/002752
7 존재하는픽셀을기초로예즉단위에대한인트라예즉을수행할수있다.
그러나인트라예측을수행할때예측단위의크기와변환단위의크기가상이할 경우,변환단위를기초로한참조픽셀을이용하여인트라예측을수행할수 있다.또한,최소부호화단위에대해서만 NxN분할을사용하는인트라예측을 사용할수있다.
인트라예측방법은예측모드에따라참조화소에 AIS(Adaptive Intra Smoothing)필터를적용한후예측블록을생성할수있다.참조화소에적용되는 AIS필터의종류는상이할수있다.인트라예측방법을수행하기위해현재예측 단위의인트라예측모드는현재예측단위의주변에존재하는예측단위의 인트라예측모드로부터 예측할수있다.주변예측단위로부터예측된모드 정보를이용하여현재예측단위의 예측모드를예측하는경우,현재예측 단위와주변예측단위의인트라예측모드가동일하면소정의플래그정보를 이용하여현재예측단위와주변예측단위의 예측모드가동일하다는정보를 전송할수있고,만약현재예측단위와주변예측단위의 예측모드가상이하면 엔트로피부호화를수행하여현재블록의 예측모드정보를부호화할수있다.
[68] 또한,예측부 (120, 125)에서생성된예측단위를기초로예측을수행한예측 단위와예측단위의원본블록과차이값인잔차값 (Residual)정보를포함하는 잔차블록이생성될수있다.생성된잔차블록은변환부 (130)로입력될수있다. 변환부 (130)에서는원본블록과예측부 (120, 125)를통해생성된예측단위의 잔차값 (residual)정보를포함한잔차블록을 DCT(Discrete Cosine Transform)또는 DST(Discrete Sine Transform)와같은변환방법을사용하여변환시킬수있다. 여기서 , DCT변환코어는 DCT2또는 DCT8중적어도하나를포함하고, DST 변환코어는 DST7을포함한다.잔차블록을변환하기위해 DCT를적용할지 또는 DST를적용할지는잔차블록을생성하기위해사용된예측단위의인트라 21
77 6 6791 예측모드정보를기초로결정할수있다.잔차블록에대한변환을스킵할수도 있다.잔차블록에대한변환을스킵할것인지여부를나타내는플래그를 부호화할수있다.변환스킵은,크기가문턱값이하인잔차블록,루마성분또는 4:4:4포맷하에서의크로마성분에대해허용될수있다.
[70] 양자화부 (135)는변환부 (130)에서주파수영역으로변환된값들을양자화할수 있다.블록에따라또는영상의중요도에따라양자화계수는변할수있다. 양자화부 (135)에서산출된값은역양자화부 (140)와재정렬부 (160)에제공될수 있다.
재정렬부 (160)는양자화된잔차값에대해계수값의재정렬을수행할수있다. 재정렬부 (160)는계수스캐닝 (Coefficient Scanning)방법을통해 2차원의블록 형태계수를 1차원의벡터형태로변경할수있다.예를들어,
재정렬부 (160)에서는지그-재그스캔 (Zig-Zag Scan)방법을이용하여 DC 계수부터고주파수영역의계수까지스캔하여 1차원벡터형태로변경시킬수 있다.변환단위의크기및인트라예측모드에따라지그-재그스캔대신 2차원의블록형태계수를열방향으로스캔하는수직스캔, 2차원의블록형태 계수를행방향으로스캔하는수평스캔이사용될수도있다.즉,변환단위의 크기및인트라예측모드에따라지그-재그스캔,수직방향스캔및수평방향 스캔중어떠한스캔방법이사용될지여부를결정할수있다.
3] 엔트로피부호화부 (165)는재정렬부 (160)에의해산출된값들을기초로
엔트로피부호화를수행할수있다.엔트로피부호화는예를들어,지수 is (Exponential Golomb), CAVLC(Context- Adaptive Variable Length Coding), CAB AC(Context- Adaptive Binary Arithmetic Coding)과같은다양한부호화 방법을사용할수있다.
4] 엔트로피부호화부 (165)는재정렬부 (160)및예측부 (120, 125)로부터부호화 단위의잔차값계수정보및블록타입정보,예측모드정보,분할단위정보, 예측단위정보및전송단위정보,모션벡터정보,참조프레임정보,블록의 보간정보,필터링정보등다양한정보를부호화할수있다.
5] 엔트로피부호화부 (165)에서는재정렬부 (160)에서입력된부호화단위의
계수값을엔트로피부호화할수있다.
6] 역양자화부 (140)및역변환부 (145)에서는양자화부 (135)에서양자화된값들을 역양자화하고변환부 ( 130)에서변환된값들을역변환한다.역양자화부 (140)및 역변환부 (145)에서생성된잔차값 (Residual)은예측부 (120, 125)에포함된움직임 추정부,움직임보상부및인트라예측부를통해서예측된예측단위와합쳐져 복원블록 (Recons仕 ucted Block)을생성할수있다.
[77] 필터부 (150)는디블록킹필터 ,오프셋보정부, ALF(Adaptive Loop Filter)중 적어도하나를포함할수있다.
8] 디블록킹필터는복원된픽쳐에서블록간의경계로인해생긴블록왜곡을 제거할수있다.디블록킹을수행할지여부를판단하기위해블록에포함된몇 개의열또는행에포함된픽셀을기초로현재블록에디블록킹필터적용할지 여부를판단할수있다.블록에디블록킹필터를적용하는경우필요한디블록킹 필터링강도에따라강한필터 (Strong Filter)또는약한필터 (Weak Filter)를 적용할수있다.또한디블록킹필터를적용함에있어수직필터링및수평 필터링수행시수평방향필터링및수직방향필터링이병행처리되도록할수 있다.
9] 오프셋보정부는디블록킹을수행한영상에대해픽셀단위로원본영상과의 오프셋을보정할수있다.특정픽쳐에대한오프셋보정을수행하기위해 영상에포함된픽셀을일정한수의영역으로구분한후오프셋을수행할영역을 결정하고해당영역에오프셋을적용하는방법또는각픽셀의에지정보를 고려하여오프셋을적용하는방법을사용할수있다.
[8이 ALF(Adaptive Loop Filtering)는필터링한복원영상과원래의영상을비교한 값을기초로수행될수있다.영상에포함된픽셀을소정의그룹으로나눈후 해당그룹에적용될하나의필터를결정하여그룹마다차별적으로필터링을 수행할수있다. ALF를적용할지여부에관련된정보는휘도신호는부호화 단위 (Coding Unit, CU)별로전송될수있고,각각의블록에따라적용될 ALF 필터의모양및필터계수는달라질수있다.또한,적용대상블록의특성에 상관없이동일한형태 (고정된형태)의 ALF필터가적용될수도있다.
[81] 메모리 (155)는필터부 (150)를통해산출된복원블록또는픽쳐를저장할수 있고,저장된복원블록또는픽쳐는인터예측을수행시 예측부 (120, 125)에 제공될수있다.
[82] 도 2는본발명의일실시예에따른영상복호화기 (디코더기 )의블록도이다.
[83] 도 2를참조하면,영상복호화기 (200)는엔트로피복호화부 (210),
재정렬부 (215),역양자화부 (220),역변환부 (225),예측부 (230, 235),필터부 (240), 메모리 (245)가포함될수있다.
[84] 영상부호화기에서영상비트스트림이입력된경우,입력된비트스트림은영상 부호화기와반대의절차로복호화될수있다.
[85] 엔트로피복호화부 (2 W)는영상부호화기의엔트로피부호화부에서엔트로피 부호화를수행한것과반대의절차로엔트로피복호화를수행할수있다.예를 들어 ,영상부호화기에서수행된방법에대응하여지수골롬 (Exponential
Golomb), CAVLC(Context- Adaptive Variable Length Coding),
CAB AC(Context- Adaptive Binary Arithmetic Coding)과같은다양한방법이 적용될수있다.
[86] 엔트로피복호화부 (210)에서는부호화기에서수행된인트라예측및인터
예측에관련된정보를복호화할수있다.
[87] 재정렬부 (215)는엔트로피복호화부 (210)에서엔트로피복호화된
비트스트림을부호화부에서재정렬한방법을기초로재정렬을수행할수있다.
1차원벡터형태로표현된계수들을다시 2차원의블록형태의계수로복원하여 재정렬할수있다.재정렬부 (215)에서는부호화부에서수행된계수스캐닝에 관련된정보를제공받고해당부호화부에서수행된스캐닝순서에기초하여 역으로스캐닝하는방법을통해재정렬을수행할수있다.
[88] 역양자화부 (220)는부호화기에서제공된양자화파라미터와재정렬된블록의 계수값을기초로역양자화를수행할수있다.
[89] 역변환부 (225)는영상부호화기에서수행한양자화결과에대해변환부에서 수행한변환즉, DCT또는 DST에대해역변환즉,역 DCT또는역 DST를수행할 수있다.여기서 , DCT변환코어는 DCT2또는 DCT8중적어도하나를포함하고, DST변환코어는 DST7을포함할수있다.또는,영상부호화기에서변환이 스킵된경우,역변환부 (225)에서도역변환을수행하지않을수있다.역변환은 영상부호화기에서결정된전송단위를기초로수행될수있다.영상복호화기의 역변환부 (225)에서는예측방법,현재블록의크기및예측방향등복수의 정보에따라변환기법 (예를들어, DCT또는 DST)이선택적으로수행될수있다.
[9이 예측부 (230, 235)는엔트로피복호화부 (210)에서제공된예측블록생성관련 정보와메모리 (245)에서제공된이전에복호화된블록또는픽쳐정보를기초로 예즉블록을생성할수있다.
[91] 전술한바와같이영상부호화기에서의동작과동일하게인트라예측을수행시 예측단위의크기와변환단위의크기가동일할경우,예측단위의좌측에 존재하는픽셀,좌측상단에존재하는픽셀,상단에존재하는픽셀을기초로 예측단위에대한인트라예측을수행하지만,인트라예측을수행시예측단위의 크기와변환단위의크기가상이할경우,변환단위를기초로한참조픽셀을 이용하여인트라예측을수행할수있다.또한,최소부호화단위에대해서만 NxN분할을사용하는인트라예측을사용할수도있다.
[92] 예측부 (230, 235)는예측단위판별부,인터예측부및인트라예측부를포함할 수있다.예측단위판별부는엔트로피복호화부 (210)에서입력되는예측단위 정보,인트라예측방법의 예측모드정보,인터예측방법의모션예측관련정보 등다양한정보를입력받고현재부호화단위에서예측단위를구분하고,예측 단위가인터예측을수행하는지아니면인트라예측을수행하는지여부를 판별할수있다.인터 예측부 (230)는영상부호화기에서제공된현재예측단위의 인터 예측에필요한정보를이용해현재예측단위가포함된현재픽쳐의이전 픽쳐또는이후픽쳐중적어도하나의픽쳐에포함된정보를기초로현재예측 단위에대한인터 예측을수행할수있다.또는,현재예측단위가포함된현재 픽쳐내에서기-복원된일부영역의정보를기초로인터예측을수행할수도 있다.
[93] 인터예측을수행하기위해부호화단위를기준으로해당부호화단위에
포함된예측단위의모션예측방법이스킵모드 (Skip Mode),머지모드 (Merge 모드),모션벡터예측모드 (AMVP Mode),인트라블록카피모드중어떠한 방법인지여부를판단할수있다.
[94] 인트라예측부 (235)는현재픽쳐내의화소정보를기초로예측블록을생성할 수있다.예측단위가인트라예측을수행한예측단위인경우,영상
부호화기에서제공된예측단위의인트라예측모드정보를기초로인트라 예즉을수행할수있다.인트라예즉부 (235)에는 AIS(Adaptive Intra Smoothing) 필터,참조화소보간부, DC필터를포함할수있다. AIS필터는현재블록의 참조화소에필터링을수행하는부분으로써현재예측단위의예측모드에따라 필터의적용여부를결정하여적용할수있다.영상부호화기에서제공된예측 단위의 예측모드및 AIS필터정보를이용하여현재블록의참조화소에 AIS 필터링을수행할수있다.현재블록의 예측모드가 AIS필터링을수행하지않는 모드일경우, AIS필터는적용되지않을수있다.
[95] 참조화소보간부는예측단위의예측모드가참조화소를보간한화소값을 기초로인트라예측을수행하는예측단위일경우,참조화소를보간하여정수값 이하의화소단위의참조화소를생성할수있다.현재예측단위의예측모드가 참조화소를보간하지않고예측블록을생성하는예측모드일경우참조화소는 보간되지않을수있다. DC필터는현재블록의예측모드가 DC모드일경우 필터링을통해서예측블록을생성할수있다.
[96] 복원된블록또는픽쳐는필터부 (240)로제공될수있다.필터부 (240)는
디블록킹필터,오프셋보정부, ALF를포함할수있다.
[97] 영상부호화기로부터해당블록또는픽쳐에디블록킹필터를적용하였는지 여부에대한정보및디블록킹필터를적용하였을경우,강한필터를
적용하였는지또는약한필터를적용하였는지에대한정보를제공받을수있다. 영상복호화기의디블록킹필터에서는영상부호화기에서제공된디블록킹 필터관련정보를제공받고영상복호화기에서해당블록에대한디블록킹 필터링을수행할수있다.
[98] 오프셋보정부는부호화시영상에적용된오프셋보정의종류및오프셋값 정보등을기초로복원된영상에오프셋보정을수행할수있다.
[99] ALF는부호화기로부터제공된 ALF적용여부정보, ALF계수정보등을
기초로부호화단위에적용될수있다.이러한 ALF정보는특정한파라메터셋에 포함되어제공될수있다.
[10이 메모리 (245)는복원된픽쳐또는블록을저장하여참조픽쳐또는참조
블록으로사용할수있도록할수있고또한복원된픽쳐를출력부로제공할수 있다.
[101]
[102] 도 3은본발명의일실시예에따른기본코딩트리유닛을도시한도면이다.
[103] 최대크기의코딩블록을코딩트리블록이라정의할수있다.하나의픽처는 복수개의코딩트리유닛 (Coding Tree Unit, CTU)으로분할된다.코딩트리 유닛은최대크기의코딩유닛으로, LCU (Largest Coding Unit)라호칭될수도 있다.도 3은하나의픽처가복수개의코딩트리유닛으로분할된예를나타낸 것이다.
[104] 코딩트리유닛의크기는픽처레벨또는시퀀스레벨에서정의될수있다.이를 위해,코딩트리유닛의크기를나타내는정보가픽처파라미터세트또는 시퀀스파라미터세트를통해시그날링될수있다.
[105] 일예로,시퀀스내전체픽처에대한코딩트리유닛의크기가 128x128로
설정될수있다.또는,픽처레벨에서 128x128또는 256x256중어느하나를코딩 트리유닛의크기로결정할수있다.일예로,제 1픽처에서는코딩트리유닛의 크기가 128x128로설정되고,제 2픽처에서는코딩트리유닛의크기가
256x256으로설정될수있다.
[106] 코딩트리유닛을분할하여,코딩블록을생성할수있다.코딩블록은
부호화/복호화처리를위한기본단위를나타낸다.일예로,코딩블록별로예측 또는변환이수행되거나,코딩블록별로예측부호화모드가결정될수있다. 여기서,예측부호화모드는예측영상을생성하는방법을나타낸다.일예로, 예즉부호화모드는화면내예즉 (Intra Prediction,인트라예즉),화면간 예즉 (Inter Prediction,인터예즉),현재픽처참조 (Current Picture Referencing, CPR, 또는인트라블록카피 (Intra Block Copy, IBC))또는복합예즉 (Combined
Prediction)을포함할수있다.코딩블록에대해,인트라예측,인터 예측,현재 픽처참조또는복합예측중적어도하나의예측부호화모드를이용하여 ,코딩 블록에대한예측블록을생성할수있다.
[107] 현재블록의 예측부호화모드를나타내는정보가비트스트림을통해
시그날링될수있다.일예로,상기정보는예측부호화모드가인트라모드인지 또는인터모드인지여부를나타내는 1비트플래그일수있다.현재블록의예측 부호화모드가인터모드로결정된경우에한하여,현재픽처참조또는복합 예측이이용가능할수있다.
[108] 현재픽처참조는현재픽처를참조픽처로설정하고,현재픽처내이미
부호화/복호화가완료된영역으로부터현재블록의 예측블록을획득하기위한 것이다.여기서,현재픽처는현재블록을포함하는픽처를의미한다.현재 블록에현재픽처참조가적용되는지여부를나타내는정보가비트스트림을 통해시그날링될수있다.일예로,상기정보는 1비트의플래그일수있다.상기 플래그가참인경우,현재블록의예측부호화모드는현재픽처참조로
결정되고,상기플래그가거짓인경우,현재블록의 예측모드는인터예측으로 결정될수있다.
[109] 또는,참조픽처인덱스를기초로,현재블록의예측부호화모드가결정될수 있다.일예로,참조픽처인덱스가현재픽처를가리키는경우,현재블록의 예측 부호화모드는현재픽처참조로결정될수있다.참조픽처인덱스가현재 픽처가아닌다른픽처를가리키는경우,현재블록의 예측부호화모드는인터 예측으로결정될수있다.즉,현재픽처참조는현재픽처내부호화/복호화가 완료된영역의정보를이용한예측방법이고,인터예측은부호화/복호화가 완료된다른픽처의정보를이용한예측방법이다.
[110] 복합예측은인트라예측,인터 예측및현재픽처참조중둘이상을조합된 부호화모드를나타낸다.일예로,복합예측이적용되는경우,인트라예측,인터 예측또는현재픽처참조중어느하나를기초로제 1예측블록이생성되고, 다른하나를기초로제 2예측블록이생성될수있다.제 1예측블록및제 2예측 블록이생성되면,제 1예측블록및제 2예측블록의평균연산또는가중합 연산을통해최종예측블록이생성될수있다.복합예측이적용되는지여부를 나타내는정보가비트스트림을통해시그날링될수있다.상기정보는 1비트의 플래그일수있다.
[111] 도 4는코딩블록의다양한분할형태를나타낸도면이다.
[112] 코딩블록은쿼드트리분할,바이너리트리분할또는트리플트리분할을
기초로복수의코딩블록들로분할될수있다.분할된코딩블록도다시쿼드 트리분할,바이터리트리분할또는트리플트리분할을기초로다시복수의 코딩블록들로분할될수있다. [113] 쿼드트리분할은현재블록을 4개의블록들로분할하는분할기법을나타낸다. 쿼드트리분할의결과,현재블록은 4개의정방형태파티션들로분할될수있다 (도 4의 (a),SPLIT_QT참조).
[114] 바이너리트리분할은현재블록을 2개의블록들로분할하는분할기법을
나타낸다.수직방향을따라 (즉,현재블록을가로지르는수직선을이용)현재 블록을두개의블록들로분할하는것을수직방향바이너리트리분할이라 호칭할수있고,수평방향을따라 (즉,현재블록을가로지르는수평선을이용) 현재블록을두개의블록들로분할하는것을수평방향바이너리트리분할이라 호칭할수있다.바이너리트리분할결과,현재블록은 2개의비정방형태 파티션들로분할될수있다.도 4의 (b)’SPLIT_BT_VER’는수직방향바이너리 트리분할결과를나타낸것이고,도 4의 (c)’SPLIT_BT_HOR’는수평방향 바이너리트리분할결과를나타낸것이다.
[115] 트리플트리분할은현재블록을 3개의블록들로분할하는분할기법을
나타낸다.수직방향을따라 (즉,현재블록을가로지르는두개의수직선을이용) 현재블록을세개의블록들로분할하는것을수직방향트리플트리분할이라 호칭할수있고,수평방향을따라 (즉,현재블록을가로지르는두개의수평선을 이용)현재블록을세개의블록들로분할하는것을수평방향트리플트리 분할이라호칭할수있다.트리플트리분할결과,현재블록은 3개의비정방 형태파티션들로분할될수있다.이때,현재블록의중앙에위치하는파티션의 너비/높이는다른파티션들의너비/높이대비 2배일수있다.도 4의 (d) ’SPLIT_TT_VER’는수직방향트리플트리분할결과를나타낸것이고,도 4의 (e) ’SPLIT_TT_HOR’는수평방향트리플트리분할결과를나타낸것이다.
[116] 코딩트리유닛의분할횟수를분할깊이 (Partitioning Depth)라정의할수있다. 시퀀스또는픽처레벨에서코딩트리유닛의최대분할깊이가결정될수있다. 이에따라,시퀀스또는필처별로코딩트리유닛의최대분할깊이가상이할수 있다.
[117] 또는,분할기법들각각에대한최대분할깊이를개별적으로결정할수있다. 일예로,쿼드트리분할이허용되는최대분할깊이는바이너리트리분할 및/또는트리플트리분할이허용되는최대분할깊이와상이할수있다.
[118] 부호화기는현재블록의분할형태또는분할깊이중적어도하나를나타내는 정보를비트스트림을통해시그날링할수있다.복호화기는
비트스트림으로부터파싱되는상기정보에기초하여코딩트리유닛의분할 형태및분할깊이를결정할수있다.
[119] 도 5는코딩트리유닛의분할양상을예시한도면이다.
[120] 쿼드트리분할,바이너리트리분할및/또는트리플트리분할등의분할
기법을이용하여코딩블록을분할하는것을멀티트리분할 (Multi Tree
Partitioning)이라호칭할수있다.
[121] 코딩블록에멀티트리분할을적용하여생성되는코딩블록들을하위코딩 2020/175914 1»(:1^1{2020/002752
14 블록들이라호칭할수있다.코딩블록의분할깊이가노인경우,하위코딩 블록들의분할깊이는노+1로설정된다.
[122] 반대로,분할깊이가노+1인코딩블록들에대해,분할깊이가노인코딩블록을 상위코딩블록이라호칭할수있다.
[123] 현재코딩블록의분할타입은상위코딩블록의분할형태또는이웃코딩 블록의분할타입중적어도하나를기초로결정될수있다.여기서,이웃코딩 블록은현재코딩블록에인접하는것으로,현재코딩블록의상단이웃블록, 좌측이웃블록,또는좌측상단코너에인접하는이웃블록중적어도하나를 포함할수있다.여기서,분할타입은,쿼드트리분할여부,바이너리트리분할 여부,바이너리트리분할방향,트리플트리분할여부,또는트리플트리분할 방향중적어도하나를포함할수있다.
[124] 코딩블록의분할형태를결정하기위해,코딩블록이분할되는지여부를
나타내는정보가비트스트림을통해시그날링될수있다.상기정보는 1비트의 플래그 ’로,상기플래그가참인것은,머리트리분할기법에의해 코딩블록이분할됨을나타낸다.
[125] 8떼에_:^§가참인경우,코딩블록이쿼드트리분할되는지여부를나타내는 정보가비트스트림을통해시그날링될수있다.상기정보는 1비트의플래그
Figure imgf000015_0001
플래그가참인경우,코딩블록은 4개의블록들로분할될수 있다.
[126] 일예로,도 5에도시된예에서는,코딩트리유닛이쿼드트리분할됨에따라, 분할깊이가 1인 4개의코딩블록들이생성되는것으로도시되었다.또한,쿼드 트리분할결과로생성된 4개의코딩블록들중첫번째코딩블록및네번째코딩 블록에다시쿼드트리분할이적용된것으로도시되었다.그결과,분할깊이가 2인 4개의코딩블록들이생성될수있다.
[127] 또한,분할깊이가 2인코딩블록에다시쿼드트리분할을적용함으로써,분할 깊이가 3인코딩블록을생성할수있다.
[128] 코딩블록에쿼드트리분할이적용되지않는경우,코딩블록의크기,코딩 블록이픽처경계에위치하는지여부,최대분할깊이또는이웃블록의분할 형태중적어도하나를고려하여,상기코딩블록에바이너리트리분할또는 트리플트리분할을수행할것인지여부를결정할수있다.상기코딩블록에 바이너리트리분할또는트리플트리분할이수행되는것으로결정된경우, 분할방향을나타내는정보가비트스트림을통해시그날링될수있다.상기 정보는 1비트의늘래그 1111:1;_8몌以1_¥6]1 1_:(¾은일수있다.상기늘래그에 기초하여,분할방향이수직방향인지또는수평방향인지여부가결정될수 있다.추가로,바이너리트리분할또는트리플트리분할중어느것이상기코딩 블록에적용되는지를나타내는정보가비트스트림을통해시그날링될수있다. 상기정보는 1비트의플래그
Figure imgf000015_0002
있다.상기플래그에 기초하여,상기코딩블록에바이너리트리분할이적용되는지또는트리플트리 분할이 적용되는지 여부가결정될수있다.
[129] 일예로,도 5에도시된예에서는,분할깊이 1인코딩블록에수직 방향
바이너리트리분할이 적용되고,상기분할결과로생성된코딩블록들중좌측 코딩블록에는수직 방향트리플트리분할이 적용되고,우측코딩블록에는 수직 방향바이너리트리분할이 적용된것으로도시되었다.
[B이
[131] 인터 예측은이전픽처의 정보를이용하여,현재블록을예측하는예측부호화 모드이다.일 예로,이전픽처 내현재블록과동일한위치의블록 (이하, 콜로케이티드블록, Collocated block)을현재블록의 예측블록으로설정할수 있다.이하,현재블록과동일한위치의블록을기초로생성된예측블록을 콜로케이티드예즉블록 (Collocated Prediction Block)이라호칭하기로한다.
[132] 반면,이전픽처에존재한오브젝트가현재픽처에서는다른위치로
이동하였다면,오브젝트의움직임을이용하여 효과적으로현재블록을예측할 수있다.예를들어,이전픽처와현재픽처를비교함으로써오브젝트의 이동 방향및크기를알수있다면,오브젝트의움직임 정보를고려하여 현재블록의 예측블록 (또는,예측영상)을생성할수있다.이하,움직임 정보를이용하여 생성된예측블록을움직임 예측블록이라호칭할수있다.
[133] 현재블록에서 예측블록을차분하여 ,잔차블록 (residual block)을생성할수 있다.이때,오브젝트의움직임이존재하는경우라면,콜로케이티드예측블록 대신움직임 예측블록을이용함으로써 ,잔차블록의 에너지를줄이고,이에 따라,잔차블록의 압축성능을향상시킬수있다.
[134] 위처럼,움직임정보를이용하여 예측블록을생성하는것을움직임보상
예측이라호칭할수있다.대부분의 인터 예측에서는움직임보상예측에 기초하여 예측블록을생성할수있다.
[135] 움직임정보는모션벡터 ,참조픽처 인덱스,예측방향또는양방향가중치 인덱스중적어도하나를포함할수있다.모션벡터는오브젝트의 이동방향및 크기를나타낸다.참조픽처 인덱스는참조픽처 리스트에포함된참조픽처들 중현재블록의 참조픽처를특정한다.예측방향은단방향 L0예측,단방향 L1 예측또는양방향예측 (L0예측및 L1예측)중어느하나를가리킨다.현재 블록의 예측방향에 따라, L0방향의움직인정보또는 L1방향의움직임 정보중 적어도하나가이용될수있다.양방향가중치 인덱스는 L0예측블록에 적용되는가중치 및 L1예즉블록에 적용되는가중치를특정한다.
[136] 도 6은본발명의 일실시예에 따른인터 예측방법의흐름도이다.
[137] 도 6을참조하면,인터 예측방법은,현재블록의 인터 예측모드를결정하는 단계 (S601),결정된인터 예측모드에따라현재블록의움직임정보를획득하는 단계 (S602)및획득된움직임정보에 기초하여,현재블록에 대한움직임보상 예측을수행하는단계 (S603)를포함한다.
[138] 여기서,인터 예측모드는현재블록의움직임 정보를결정하기 위한다양한 기법들을나타내는것으로,병진 (Translation)움직임정보를이용하는인터예측 모드와,어파인 (Affine)움직임정보를이용하는인터예측모드를포함할수 있다.일예로,병진움직임정보를이용하는인터예측모드는,머지모드및 모션벡터예측모드를포함하고,어파인움직임정보를이용하는인터 예측 모드는어파인머지모드및어파인모션벡터예측모드를포함할수있다.현재 블록의움직임정보는,인터 예측모드에따라,현재블록에이웃하는이웃블록 또는비트스트림으로부터파싱되는정보를기초로결정될수있다.
[139] 현재블록의움직임정보는현재블록타블록의움직임정보로부터유도될수 있다.여기서,타블록은현재블록보다앞서인터예측으로부호화/복호화된 블록일수있다.현재블록의움직임정보를타블록의움직임정보와동일하게 설정하는것을머지모드라정의할수있다.또한,타블록의움직임벡터를현재 블록의움직임벡터의 예측값으로설정하는것을모션벡터예측모드라정의할 수있다.
[14이 도 7은머지모드하에서현재블록의움직임정보를유도하는과정의
흐름도이다.
[141] 현재블록의머지후보를유도할수있다 (S701).현재블록의머지후보는현재 블록보다앞서인터 예측으로부호화/복호화된블록으로부터유도될수있다.
[142] 도 8은머지후보를유도하기위해사용되는후보블록들을예시한도면이다.
[143] 후보블록들은,현재블록에인접하는샘플을포함하는이웃블록들또는현재 블록에인접하지않는샘플을포함하는비이웃블록들중적어도하나를포함할 수있다.이하,후보블록들을결정하는샘플들을기준샘플들이라정의한다. 또한,현재블록에인접하는기준샘플을이웃기준샘플이라호칭하고,현재 블록에인접하지않는기준샘플을비이웃기준샘플이라호칭하기로한다.
[144] 이웃기준샘플은,현재블록의최좌측열의이웃열또는현재블록의최상단 행의이웃행에포함될수있다.일예로,현재블록의좌측상단샘플의좌표를 (0, 0)이라할때, (-1, H-1)위치의기준샘플을포함하는블록, (W-1, -1)위치의 기준샘플을포함하는블록, (W, -1)위치의기준샘플을포함하는블록, (-1, H) 위치의기준샘플을포함하는블록또는 (-1, -1)위치의기준샘플을포함하는 블록중적어도하나가후보블록으로이용될수있다.도면을참조하면,인덱스 0내지인덱스 4의이웃블록들이후보블록들로이용될수있다.
[145] 비이웃기준샘플은,현재블록에인접하는기준샘플과의 X축거리또는 y축 거리중적어도하나가기정의된값을갖는샘플을나타낸다.일예로,좌측기준 샘플과의 X축거리가기정의된값인기준샘플을포함하는블록,상단기준 샘플과의 y축거리가기정의된값인비이웃샘플을포함하는블록또는좌측 상단기준샘플과의 X축거리및 y축거리가기정의된값인비이웃샘플을 포함하는블록중적어도하나가후보블록으로이용될수있다.기정의된값은, 4, 8, 12, 16등의자연수일수있다.도면을참조하면,인덱스 5내지 26의블록들 중적어도하나가후보블록으로이용될수있다. 2020/175914 1»(:1^1{2020/002752
17
[146] 또는,현재블록과동일한코딩트리유닛에속하지 않는후보블록은머지
후보로이용불가능한것으로설정될수있다.일 예로,기준샘플이 현재블록이 속하는코딩트리유닛의상단경계를벗어나는경우,상기기준샘플을
포함하는후보블록은머지후보로서 이용불가능한것으로설정될수있다.
[147] 현재블록과상이한픽처에포함된시간적 이웃블록으로부터 머지후보를
유도할수도있다.일 예로,콜로케이티드픽처에포함된콜로케이티드
블록으로부터 머지후보를유도할수있다.참조픽처 리스트에포함된참조 픽처들중어느하나가콜로케이티드픽처로설정될수있다.참조픽처들중 콜로케이티드픽처를식별하는인덱스정보가비트스트림을통해시그날링될 수있다.또는,참조픽처들중기 정의된인덱스를갖는참조픽처가
콜로케이티드픽처로결정될수있다.
[148] 머지후보의움직임정보는후보블록의움직임정보와동일하게설정될수
있다.일 예로,후보블록의모션벡터,참조픽처 인덱스,예측방향또는양방향 가중치 인덱스중적어도하나를머지후보의움직임정보로설정할수있다.
[149] 머지후보를포함하는머지후보리스트를생성할수있다 702).
[150] 머지후보리스트내머지후보들의 인덱스는소정순서에따라할당될수있다. 일 예로,좌측이웃블록으로부터유도된머지후보,상단이웃블록으로부터 유도된머지후보,우측상단이웃블록으로부터유도된머지후보,좌측하단 이웃블록으로부터유도된머지후보,좌측상단이웃블록으로부터유도된머지 후보및시간적 이웃블록으로부터유도된머지후보순으로인덱스를부여할수 있다.
[151] 머지후보에복수의머지후보들이포함된경우,복수의머지후보들중적어도 하나를선택할수있다 703).구체적으로,복수의머지후보들중어느하나를 특정하기 위한정보가비트스트림을통해시그날링될수있다.일예로,머지 후보리스트에포함된머지후보들중어느하나의 인덱스를나타내는정보
가비트스트림을통해시그날링될수있다.
[152] 서브블록별로움직임 벡터를유도할수도있다.
[153] 도 9는서브블록별로움직임 벡터를결정하는예를설명하기위한도면이다.
[154] 머지후보리스트에포함된복수의머지후보들중어느하나의움직임 벡터를 현재블록의초기움직임 벡터로설정할수있다.이때,초기움직임 벡터를 유도하는데 이용되는머지후보는신택스 111 은6_:1(1 에의해결정될수있다. 또는,현재블록에 이웃하는이웃블록들을소정스캔순서에따라탐색하였을 때,첫번째로발견된가용머지후보로부터초기움직임 벡터를유도할수있다. 여기서,소정스캔순서는,현재블록의좌측에 인접하는이웃블록 1),현재 블록의상단에 인접하는이웃블록예),현재블록의우측상단코너에 인접하는 이웃블록여0)및현재블록의좌측하단코너에 인접하는이웃블록 0)의 순서일수있다.또는,소정스캔순서를모1, 60,
Figure imgf000018_0001
순으로정의하거나, ,사,예및새의순으로결정할수도있다. [155] 초기움직임벡터가결정되면,현재블록의콜픽처 (Collocated Picture)를 결정할수있다.이때,콜픽처는참조픽처리스트에포함된참조픽처들중기 정의된인덱스를갖는참조픽처로설정될수있다.예컨대,기정의된인덱스는 0또는가장큰인덱스일수있다.또는,콜픽처를결정하기위한정보가 비트스트림을통해시그날링될수있다.일예로,참조픽처리스트내콜픽처를 특정하는신택스 collocated_ref_idx가비트스트림을통해시그날링될수있다.
[156] 콜픽처가결정되면,콜픽처내현재블록과동일한위치및크기를갖는
콜로케이티드블록으로부터초기움직임벡터만큼떨어진블록을결정할수 있다.초기움직임벡터에의해특정되는블록을콜픽처대응블록이라호칭할 수있다.일예로,초기움직임벡터 (도 9에서는 A1블록의움직임벡터)가 (xl, yl)인경우,콜픽처내현재블록과동일한위치의블록 (콜로케이티드 블록)으로부터 (xl, yl)만큼이격된블록을콜픽처대응블록으로결정할수 있다.
[157] 콜픽처대응블록이결정되면,콜픽처대응블록내서브블록들의움직임 벡터를현재블록내서브블록들의움직임벡터로설정할수있다.일예로,현재 블록이 4x4크기의서브블록들로분할된경우,콜픽처대응블록내 4x4크기의 서브블록들에대한움직임벡터를,현재블록내각서브블록의움직임벡터로 설정할수있다.
[158] 콜픽처대응블록내서브블록이양방향움직임벡터를갖는경우 (예컨대, L0 움직임벡터및 L1움직임벡터),콜픽처대응블록내서브블록의양방향 움직임벡터를현재블록내서브블록의양방향움직임벡터로취할수있다. 또는,현재블록의양방향예측여부에기초하여,콜픽처대응블록내서브 블록으로부터 L0움직임벡터만을취하거나, L1움직임벡터만을취할수도 있다.
[159] 또한,현재픽처와콜픽처대응블록의참조픽처가상이한경우,콜픽처대응 블록내서브블록의움직임벡터를스케일링하여,현재블록내서브블록의 움직임벡터를유도할수있다.
[160] 현재블록의참조픽처및양방향예측여부는초기움직임벡터를유도하는데 이용된머지후보와동일하게설정될수있다.또는,비트스트림을통해현재 블록의참조픽처를특정하기위한정보및/또는양방향예측여부를나타내는 정보가시그날링될수있다.
[161] 서브블록별로움직임벡터를유도할것인지여부를나타내는정보가
비트스트림을통해시그날링될수있다.상기정보는 1비트의플래그일수 있으나,이에한정되지는않는다.또는,현재블록에양방향예측이
적용되었는지여부또는이용가능한머지후보의개수중적어도하나에 기초하여,서브블록별로움직임벡터를유도할것인지여부가결정될수있다.
[162]
[163] 머지후보리스트에포함된머지후보들의개수가문턱값보다작은경우,모션 \¥0 2020/175914 1»(그!710{2020/002752
19 정보테이블에포함된모션정보후보를머지후보로서머지후보리스트에 추가할수있다.여기서 ,문턱값은머지후보리스트가포함할수있는최대머지 후보의개수또는최대머지후보의개수에서오프셋을차감한값일수있다. 오프셋은, 1또는 2등의자연수일수있다.
[164] 모션정보테이블은현재픽처내인터예측을기초로부호화/복호화된
블록으로부터유도되는모션정보후보를포함한다.일예로,모션정보 테이블에포함된모션정보후보의움직임정보는인터예측을기초로 부호화/복호화된블록의움직임정보와동일하게설정될수있다.여기서, 움직임정보는모션벡터 ,참조픽처인덱스,예측방향또는양방향가중치 인덱스중적어도하나를포함할수있다.
[165] 모션정보테이블에포함된모션정보후보를인터영역머지후보또는예측 영역머지후보라호칭할수도있다.
[166] 모션정보테이블이포함할수있는모션정보후보의최대개수는부호화기및 복호화기에서기정의되어 있을수있다.일예로,모션정보테이블이포함할수 있는최대모션정보후보의개수는, 1, 2, 3, 4, 5, 6, 7, 8또는그이상(예컨대,
16)일수있다.
[167] 또는,모션정보테이블이포함할수있는모션정보후보의최대개수를
나타내는정보가비트스트림을통해시그날링될수있다.상기정보는,시퀀스, 픽처,또는슬라이스레벨에서시그날링될수있다.상기정보는모션정보 테이블이포함할수있는모션정보후보의최대개수를나타낼수있다.또는, 상기정보는모션정보테이블이포함할수있는모션정보후보의최대개수와 머지후보리스트가포함할수있는머지후보의최대개수사이의차분을 나타낼수있다.
[168] 또는,픽처의크기,슬라이스의크기또는코딩트리유닛의크기에따라,모션 정보테이블이포함할수있는모션정보후보의최대개수가결정될수있다.
[169] 모션정보테이블은픽처,슬라이스,타일,브릭,코딩트리유닛,또는코딩트리 유닛라인(행또는열)단위로초기화될수있다.일예로,슬라이스가초기화되는 경우,모션정보테이블도초기화되어 ,모션정보테이블은어떠한모션정보 후보도포함하지않을수있다.
[170] 또는,모션정보테이블을초기화할것인지여부를나타내는정보가
비트스트림을통해시그날링될수도있다.상기정보는슬라이스,타일,브릭 또는블록레벨에서시그날링될수있다.상기정보가모션정보테이블을 초기화할것을지시하기전까지,기구성된모션정보테이블이이용될수있다.
[171] 또는,픽처파라미터세트또는슬라이스헤더를통해초기모션정보후보에 대한정보가시그날링될수있다.슬라이스가초기화되더라도,모션정보 테이블은초기모션정보후보를포함할수있다.이에따라,슬라이스내첫번째 부호화/복호화대상인블록에대해서도초기모션정보후보를이용할수있다.
[172] 또는,이전코딩트리유닛의모션정보테이블에포함된모션정보후보를초기 2020/175914 1»(:1^1{2020/002752
20 모션정보후보로설정할수있다.일예로,이전코딩트리유닛의모션정보 테이블에포함된모션정보후보들중인덱스가가장작은모션정보후보또는 인덱스가가장큰모션정보후보가초기모션정보후보로설정될수있다.
[173] 부호화/복호화순서에 따라블록들을부호화/복호화하되 ,인터 예측을기초로 부호화/복호화된블록들을부호화/복호화순서에따라순차적으로모션정보 후보로설정할수있다.
[174] 도 은모션정보테이블의 업데이트양상을설명하기 위한도면이다.
[175] 현재블록에 대해,인터 예측이수행된경우(別 001),현재블록을기초로모션 정보후보를유도할수있다(別 002).모션정보후보의움직임정보는현재 블록의움직임정보와동일하게설정될수있다.
[176] 모션정보테이블이빈상태인경우 1003),현재블록을기초로유도된모션 정보후보를모션정보테이블에추가할수있다( 004).
[177] 모션정보테이블이 이미모션정보후보를포함하고있는경우(別 003),현재 블록의움직임정보(또는,이를기초로유도된모션정보후보)에 대한중복성 검사를실시할수있다( 005).중복성검사는모션정보테이블에기 저장된 모션정보후보의움직임정보와현재블록의움직임정보가동일한지 여부를 결정하기 위한것이다.중복성 검사는모션정보테이블에 기 저장된모든모션 정보후보들을대상으로수행될수있다.또는,모션정보테이블에기 저장된 모션정보후보들중인덱스가문턱값이상또는문턱값이하인모션정보 후보들을대상으로중복성 검사를수행할수있다.또는,기 정의된개수의모션 정보후보들을대상으로중복성검사가수행될수있다.일예로,인덱스가작은 2개의모션정보후보들또는인덱스가큰 2개윔모션정보후보들이중복성 검사대상으로결정될수있다.
[178] 현재블록의움직임정보와동일한움직임 정보를갖는모션정보후보가
포함되어 있지 않은경우,현재블록을기초로유도된모션정보후보를모션 정보테이블에추가할수있다(別 008).모션정보후보들이동일한지 여부는, 모션정보후보들의움직임정보(예컨대,모션벡터 및/또는참조픽처 인덱스 등)가동일한지 여부를기초로결정될수있다.
[179] 이때,모션정보테이블에 이미 최대개수의모션정보후보들이 저장되어 있을 경우 1006),가장오래된모션정보후보를삭제하고 1007),현재블록을 기초로유도된모션정보후보를모션정보테이블에추가할수있다(別 008). 여기서,가장오래된모션정보후보는인덱스가가장큰모션정보후보또는 인덱스가가장작은모션정보후보일수있다.
[180] 모션정보후보들은각기 인덱스에의해식별될수있다.현재블록으로부터 유도된모션정보후보가모션정보테이블에추가되는경우,상기모션정보 후보에 가장낮은인덱스(예컨대, 0)를할당하고,기 저장된모션정보후보들의 인덱스를 1씩증가시킬수있다.이때 ,모션정보테이블에 이미최대 개수의 모션정보후보들이 저장되었던경우,인덱스가가장큰모션정보후보가 2020/175914 1»(:1^1{2020/002752
21 제거된다.
[181] 또는,현재블록으로부터유도된모션정보후보가모션정보테이블에
추가되는경우,상기모션정보후보에 가장큰인덱스를할당할수있다.일 예로,모션정보테이블에 기 저장된모션정보후보들의 개수가최대값보다 작은경우,상기모션정보후보에는기 저장된모션정보후보들의 개수와 동일한값의 인덱스가할당될수있다.또는,모션정보테이블에기 저장된모션 정보후보들의 개수가최대값과같은경우,상기모션정보후보에는최대값에서 1을차감한인덱스가할당될수있다.또한,인덱스가가장작은모션정보 후보가제거되고,잔여기 저장된모션정보후보들의 인덱스들이 1씩
감소하게된다.
[182] 도 11은모션정보테이블의 업데이트양상을나타낸도면이다.
[183] 현재블록으로부터유도된모션정보후보가모션정보테이블에추가되면서 , 상기모션정보후보에가장큰인덱스가할당되는것으로가정한다.또한,모션 정보테이블에는이미 최대개수의모션정보후보가저장된것으로가정한다.
[184] 현재블록으로부터유도된모션정보후보 1 (1[11+1]를모션정보테이블 는경우,기 저장된모션정보후보들중인덱스가가장 [이를삭제하고,잔여모션정보후보들의 수있다.또한,현재블록으로부터유도된모션정보후보
Figure imgf000022_0001
스를최대값(도 11에도시된예에서는미으로설정할수 있다.
[185] 현재블록을기초로유도된모션정보후보와동일한모션정보후보가기
저장되어 있을경우 1005),현재블록을기초로유도된모션정보후보를모션 정보테이블에추가하지 않을수있다(別 009).
[186] 또는,현재블록을기초로유도된모션정보후보를모션정보테이블에
추가하면서,상기모션정보후보와동일한기 저장된모션정보후보를제거할 수도있다.이경우,기 저장된모션정보후보의 인덱스가새롭게갱신되는것과 동일한효과가야기된다.
[187] 도 12는기 저장된모션정보후보의 인덱스가갱신되는예를나타낸도면이다.
[188] 현재블록을기초로유도된모션정보후보 와동일한기 저장된모션 정보후보의 인덱스가 111(뇨인경우,상기 기 저장된모션정보후보를삭제하고, 인덱스가 111(뇨보다큰모션정보후보들의 인덱스를 1만큼감소시킬수있다.일 동일한 ^ 아幻가모션정보
Figure imgf000022_0002
1幻 (1[3]부터 1¾1^1幻 (1[11]까지의 인덱스가 1씩감소하는것으로도시되었다.
[189] 그리고,현재블록을기초로유도된모션정보후보 11^0 (1를모션정보
테이블의마지막에추가할수있다.
[190] 또는,현재블록을기초로유도된모션정보후보와동일한기 저장된모션정보 후보에 할당된인덱스를갱신할수있다.예컨대,기 저장된모션정보후보의 2020/175914 1»(:1^1{2020/002752
22 인덱스를최소값또는최대값으로변경할수있다.
[191] 소정영역에포함된블록들의움직임정보는모션정보테이블에추가되지 않도록설정될수있다.일예로,머지처리영역에포함된블록의움직임정보를 기초로유도되는모션정보후보는모션정보테이블에추가하지않을수있다. 머지처리영역에포함된블록들에대해서는부호화/복호화순서가정의되어 있지않은바,이들중어느하나의움직임정보를다른블록의인터 예측시에 이용하는것은부적절하다.이에따라,머지처리영역에포함된블록들을 기초로유도된모션정보후보들은모션정보테이블에추가하지않을수있다.
[192] 또는,기설정된크기보다작은블록의움직임정보는모션정보테이블에
추가되지않도록설정될수있다.일예로,너비또는높이가 4또는 8보다작은 코딩블록의움직임정보,또는 4x4크기의코딩블록의움직임정보를기초로 유도되는모션정보후보는모션정보테이블에추가하지않을수있다.
[193] 서브블록단위로움직임보상예측이수행된경우,현재블록에포함된복수의 서브블록들중대표서브블록의움직임정보를기초로모션정보후보를 유도할수있다.일예로,현재블록에대해서브블록머지후보가사용된경우, 서브블록들중대표서브블록의움직임정보를기초로모션정보후보를 유도할수있다.
[194] 서브블록들의움직임벡터는다음의순서로유도될수있다.먼저,현재블록의 머지후보리스트에포함된머지후보들중어느하나를선택하고,선택된머지 후보의움직임벡터를기초로,초기시프트벡터知:^ 버를유도할수있다. 그리고,코딩블록내각서브블록의기준샘플(예컨대,좌상단샘플또는중간 위치샘플)의위치江315, 8비에초기시프트벡터를가산하여,기준샘플의 위치가江001815, 0181))인시프트서브블록을유도할수있다.하기수학식 1은 시프트서브블록을유도하기위한수식을나타낸다.
[195] [수식 1]
Figure imgf000023_0001
[196] 그리고나서 ,()光0 15, 비를포함하는서브블록의센터포지션에
대응하는콜로케이티드블록의모션벡터를( 31), 3비를포함하는서브블록의 모션벡터로설정할수있다.
[197] 대표서브블록은현재블록의좌측상단샘플또는중앙샘플을포함하는서브 블록을의미할수있다.
[198] 도 13은대표서브블록의위치를나타낸도면이다.
[199] 도 13의(幻는현재블록의좌측상단에위치한서브블록이대표서브블록으로 설정된예를나타내고,도 13의 )는현재블록의중앙에위치한서브블록이 대표서브블록으로설정된예를나타낸다.서브블록단위로움직임보상 예측이수행된경우,현재블록의좌측상단샘플을포함하는서브블록또는 현재블록의중앙샘플을포함하는서브블록의움직임벡터를기초로,현재 블록의모션정보후보를유도할수있다. 2020/175914 1»(:1^1{2020/002752
23
[200] 현재블록의 인터 예측모드를기초로,현재블록을모션정보후보로이용할 것인지 여부를결정할수도있다.일 예로,어파인모션모델을기초로
부호화/복호화된블록은모션정보후보로이용불가능한것으로설정될수 있다.이에 따라,현재블록이 인터 예측으로부호화/복호화되었다하더라도, 현재블록의 인터 예측모드가어파인예측모드인경우에는,현재블록을 기초로모션정보테이블을업데이트하지 않을수있다.
[201] 또는,어파인모션모델을기초로부호화/복호화된블록에포함된서브블록중 적어도하나의서브블록벡터를기초로모션정보후보를유도할수도있다.일 예로,현재블록의좌측상단에위치하는서브블록,중앙에 위치하는서브블록 또는우측상단에 위치하는서브블록을이용하여모션정보후보를유도할수 있다.또는,복수서브블록들의서브블록벡터들의평균값을모션정보후보의 움직임 벡터로설정할수도있다.
[202] 또는,어파인모션모델을기초로부호화/복호화된블록의 어파인시드
벡터들의 평균값을기초로모션정보후보를유도할수도있다.일 예로,현재 블록의 제 1어파인시드벡터,제 2어파인시드벡터또는제 3어파인시드벡터 중적어도하나의 평균을모션정보후보의움직임 벡터로설정할수있다.
[203] 또는,인터 예측모드별로모션정보테이블을구성할수있다.일 예로,인트라 블록카피로부호화/복호화된블록을위한모션정보테이블,병진모션모델을 기초로부호화/복호화된블록을위한모션정보테이블또는어파인모션모델을 기초로부호화/복호화된블록을위한모션정보테이블중적어도하나가정의될 수있다.현재블록의 인터 예측모드에따라,복수의모션정보테이블중어느 하나가선택될수있다.
[204] 도 14는인터 예측모드별로모션정보테이블이 생성되는예를나타낸것이다.
[205] 블록이논어파인모션모델을기초로부호화/복호화된경우,상기블록을
기초로유도된모션정보후보 11 0 (1는논어파인모션정보테이블
Figure imgf000024_0001
추가될수있다.
[206] 모션정보후보가움직임 정보이외에추가정보를포함하도록설정할수있다. 일 예로,모션정보후보에 대해블록의크기,형태또는블록의 파티션정보중 적어도하나를추가저장할수있다.현재블록의 머지후보리스트구성시,모션 정보후보들중현재블록과크기,형태또는파티션정보가동일또는유사한 모션정보후보만을사용하거나,현재블록과크기,형태또는파티션정보가 동일또는유사한모션정보후보를먼저 머지후보리스트에추가할수있다.
[207] 현재블록의 머지후보리스트에포함된머지후보의 개수가문턱값보다작은 경우,모션정보테이블에포함된모션정보후보를머지후보로서 머지후보 리스트에추가할수있다.상기추가과정은모션정보후보들의 인덱스를 오름차순또는내림차순으로정렬하였을때의순서를따라수행된다.일예로, 인덱스가가장큰모션정보후보부터 현재블록의머지후보리스트에추가할 수있다. 2020/175914 1»(:1^1{2020/002752
24
[208] 모션정보테이블에포함된모션정보후보를머지후보리스트에추가하고자 하는경우,모션정보후보와머지후보리스트에 기 저장된머지후보들간의 중복성 검사가수행될수있다.중복성 검사수행결과,기 저장된머지후보와 동일한움직임정보를갖는모션정보후보는머지후보리스트에추가되지 않을 수있다.
[209] 중복성검사는,모션정보테이블에포함된모션정보후보들중일부에
대해서만수행될수도있다.일예로,인덱스가문턱값이상또는문턱값이하인 모션정보후보에 대해서만중복성 검사가수행될수있다.또는인덱스가가장 큰 N개의모션정보후보또는인덱스가가장작은 N개의모션정보후보에 대해서만중복성검사가수행될수있다.
[210] 또는,머지후보리스트에기 저장된머지후보들중일부에 대해서만중복성 검사를수행할수있다.일예로,인덱스가문턱값이상또는문턱값이하인머지 후보또는특정 위치의블록으로부터유도된머지후보에 대해서만중복성 검사가수행될수있다.여기서,특정위치는,현재블록의좌측이웃블록,상단 이웃블록,우측상단이웃블록또는좌측하단이웃블록중적어도하나를 포함할수있다.
[211] 도 15는머지후보들중일부에 대해서만중복성 검사가수행되는예를도시한 도면이다.
[212]
Figure imgf000025_0001
스트에에추가하고자하는경우, 모션정보후보에 대해 인덱스가가장큰 2개의머지후보들
111 은60&11(11 1; 11111] 은6-2]및 1116 60&11(11 1;[]^11111| 6 6-1]과의중복성 검사를 수행할수있다.여기서, NumMerge는가용한공간적머지후보및시간적머지 후보의 개수를나타낼수있다.
[213]
Figure imgf000025_0002
스트에에
추가하고자하는경우,모션정보후보에 대해 인덱스가가장작은최대 2개의 머지후보와의중복성 검사를수행할수도있다.예컨대, 111때 ^(11 [이및 여부를확인할수있다.
[214]
Figure imgf000025_0003
서만중복성 검사를수행할수 있다.일 예로,현재블록의좌측에위치하는주변블록으로부터유도된머지 후보또는현재블록의상단에 위치하는주변블록으로부터유도된머지후보중 적어도하나에 대해중복성검사를수행할수있다.머지후보리스트에특정 위치에서유도된머지후보가존재하지 않는경우,중복성 검사없이모션정보 후보를머지후보리스트에추가할수있다.
[215]
Figure imgf000025_0004
스트에에추가하고자하는경우, 모션정보후보에 대해 인덱스가가장큰 2개의머지후보들
111 은60&11(11 1; 11111] 은6-2]및 1116 60&11(11 1;[]^11111| 6 6-1]과의중복성 검사를 수행할수있다.여기서, NumMerge는가용한공간적머지후보및시간적머지 후보의 개수를나타낼수있다. 2020/175914 1»(:1^1{2020/002752
25
[216] 모션정보후보들중일부에 대해서만머지후보와의중복성검사를수행할 수도있다.일예로,모션정보테이블에포함된모션정보후보들중인덱스가큰 N개또는인덱스가작은 N개의모션정보후보에 대해서만중복성 검사가 수행될수있다.일 예로,모션정보테이블에포함된모션정보후보들의 개수와 차분이문턱값이하인인덱스를갖는모션정보후보들에 대해서만중복성 검사가수행될수있다.문턱값이 2인경우,모션정보테이블에포함된모션 정보후보들중인덱스값이 가장큰 3개의모션정보후보들에 대해서만중복성 검사가수행될수있다.상기 3개의모션정보후보들을제외한모션정보 후보들에 대해서는중복성 검사가생략될수있다.중복성 검사가생략되는 경우,머지후보와동일한움직임정보를갖는지 여부와관계없이,모션정보 후보를머지후보리스트에추가할수있다.
[217] 이와반대로,모션정보테이블에포함된모션정보후보들의 개수와차분이 문턱값이상인인덱스를갖는모션정보후보들에 대해서만중복성 검사가 수행되도록설정할수도있다.
[218] 중복성검사가수행되는모션정보후보의 개수는부호화기 및복호화기에서 기 정의되어 있을수있다.예컨대,문턱값은 0, 1또는 2와같은정수일수있다.
[219] 또는,머지후보리스트에포함된머지후보의 개수또는모션정보테이블에 포함된모션정보후보들의 개수중적어도하나를기초로문턱값을결정할수 있다.
[22이 제 1모션정보후보와동일한머지후보가발견된경우,제 2모션정보후보에 대한중복성검사시상기제 1모션정보후보와동일한머지후보와의중복성 검사를생략할수있다.
[221] 도 16은특정머지후보와의중복성 검사가생략되는예를나타낸도면이다.
[222]
Figure imgf000026_0001
스트에추가하고자 하는경우,상기모션정보후보와머지후보리스트에기 저장된머지후보들 사이의중복성검사가수행된다.이때,모션정보후 일한
Figure imgf000026_0002
발견된경우,모션정보 머지 후보리스트에추가하지 않고,인덱스가 1인모션 -1]와 머지후보들간의중복성검사를수행할수있다.이
Figure imgf000026_0003
1¾11¥1)0&11( -1]과머지후보 1116 &11(11 1;[]]사이의중복성검사는생략할수 있다.
[223] 일예로,도 16에도시된예에서는, 1¾11¥] ¾11(1[1]와 1116 60 (11 1;[2]가동일한 것으로결정되었다.이에따라, 는머지후보리스트에추가되지 않고, &!1 따-1]에 대한중복성 검사가수행될수있다.이때,
13\011] 뇨11(1 -1]과 1116 60&11(11 1;[2]사이의중복성검사는생략될수있다.
[224] 현재블록의 머지후보리스트에포함된머지후보의 개수가문턱값보다작은 경우,모션정보후보이외에도,페어와이즈머지후보또는제로머지후보중 적어도하나가더포함될수도있다.페어와이즈머지후보는둘이상의 머지 2020/175914 1»(:1^1{2020/002752
26 후보들의움직임벡터들을평균한값을움직임벡터로갖는머지후보를 의미하고,제로머지후보는모션벡터가 0인머지후보를의미한다.
[225] 현재블록의머지후보리스트는다음의순서를따라,머지후보가추가될수 있다.
[226] 공간적머지후보 -시간적머지후보 -모션정보후보 -(어파인모션정보 후보) -페어와이즈머지후보 -제로머지후보
[227] 공간적머지후보는이웃블록또는비이웃블록중적어도하나로부터
유도되는머지후보를의미하고,시간적머지후보는이전참조픽처에서 유도되는머지후보를의미한다.어파인모션정보후보는어파인모션모델로 부호화/복호화된블록으로부터유도된모션정보후보를나타낸다.
[228] 인트라예측은현재블록주변에부호화/복호화가완료된복원샘플을
이용하여,현재블록을예측하는것이다.이때,현재블록의인트라예측에는, 인루프필터가적용되기전의복원샘플이이용될수있다.
[229] 인트라예측기법은매트릭스(Matrix)에기반한인트라예측및주변복원 샘플과의방향성을고려한일반인트라예측을포함한다.현재블록의인트라 예측기법을지시하는정보가비트스트림을통해시그날링될수있다.상기 정보는 1비트의플래그일수있다.또는,현재블록의위치,크기,형태또는이웃 블록의인트라예측기법중적어도하나에기초하여,현재블록의인트라예측 기법을결정할수있다.일예로,현재블록이픽처바운더리를걸쳐존재하는 경우,현재블록에는매트릭트에기반한인트라예측이적용되지않도록설정될 수있다.
[23이 매트릭스에기반한인트라예측은,부호화기및복호화기에서기저장된
매트릭스와,현재블록주변의복원샘플사이의행렬곱에기반하여,현재 블록의 예측블록을획득하는방법이다.기저장된복수개의매트릭스들중어느 하나를특정하기위한정보가비트스트림을통해시그날링될수있다.
복호화기는상기정보및현재블록의크기에기초하여,현재블록의인트라 예측을위한매트릭스를결정할수있다.
[231] 일반인트라예측은,비방향성인트라예측모드또는방향성인트라예측 모드에기초하여,현재블록에대한예측블록을획득하는방법이다.이하, 도면을참조하여,일반인트라예측에기초한인트라예측수행과정에대해 보다상세히살펴보기로한다.
[232] 도 17은본발명의일실시예에따른,인트라예측방법의흐름도이다.
[233] 현재블록의참조샘플라인을결정할수있다(別701).참조샘플라인은현재 블록의상단및/또는좌측으로부터노번째떨어진라인에포함된참조샘플들의 집합을의미한다.참조샘플은현재블록주변부호화/복호화가완료된복원 샘플로부터유도될수있다.
[234] 복수의참조샘플라인들중현재블록의참조샘플라인을식별하는인덱스 정보가비트스트림을통해시그날링될수있다.일예로,현재블록의참조샘플 라인을특정하기위한인덱스정보 1:¾_11111따_ 1?_1(1 가비트스트림을통해 시그날링될수있다.상기인덱스정보는코딩블록단위로시그날링될수있다.
[235] 복수의참조샘플라인들은,현재블록에상단및/또는좌측 1번째라인, 2번째 라인, 3번째라인중적어도하나를포함할수있다.복수개의참조샘플라인들 중현재블록의상단에인접하는행및현재블록의좌측에인접하는열로 구성된참조샘플라인을인접참조샘플라인이라호칭하고,그이외의참조 샘플라인을비인접참조샘플라인이라호칭할수도있다.
[236] 표 1은후보참조샘플라인들각각에할당되는인덱스를나타낸것이다.
[237] [표 1]
Figure imgf000028_0001
[238] 현재블록의위치,크기,형태또는이웃블록의 예측부호화모드중적어도 하나에기초하여,현재블록의참조샘플라인을결정할수도있다.일예로,현재 블록이픽처,타일,슬라이스또는코딩트리유닛의경계에접하는경우,인접 참조샘플라인을현재블록의참조샘플라인으로결정할수있다.
[239] 참조샘플라인은현재블록의상단에위치하는상단참조샘플들및현재
블록의좌측에위치하는좌측참조샘플들을포함할수있다.상단참조샘플들 및좌측참조샘플들은현재블록주변의복원샘플들로부터유도될수있다. 상기복원샘플들은인루프필터가적용되기이전상태일수있다.
[24이 다음으로,현재블록의인트라예측모드를결정할수있다 (S1702).현재블록의 인트라예측모드는비방향성인트라예측모드또는방향성인트라예측모드 중적어도하나가현재블록의인트라예측모드로결정될수있다.비방향성 인트라예측모드는,플래너및 DC를포함하고,방향성인트라예측모드는 좌하단대각방향부터우상단대각방향까지 33개또는 65개의모드들을 포함한다.
[241] 도 18은인트라예측모드들을나타낸도면이다.
[242] 도 18의 (a)는 35개의인트라예측모드를나타낸것이고,도 18의 (비는 67개의 인트라예측모드들을나타낸것이다.
[243] 도 18에도시된것보다더많은수혹은더적은수의인트라예측모드들이 정의될수도있다.
[244] 현재블록에인접하는이웃블록의인트라예측모드를기초로, MPM(Most Probable Mode)을설정할수있다.여기서,이웃블록은,현재블록의좌측에 인접하는좌측이웃블록및현재블록의상단에이웃하는상단이웃블록을 포함할수있다. 2020/175914 1»(:1^1{2020/002752
28
[245] MPM리스트에포함되는 MPM의개수는부호화기및복호화기에서기설정될 수있다.일예로, MPM의개수는, 3개, 4개, 5개혹은 6개일수있다.또는, MPM의 개수를나타내는정보가비트스트림을통해시그날링될수있다.또는,이웃 블록의 예측부호화모드,현재블록의크기,형태또는참조샘플라인인덱스중 적어도하나에기초하여 MPM의개수가결정될수있다.일예로,인접참조샘플 라인이현재블록의참조샘플라인으로결정된경우에는 N개의 MPM들이 이용되는반면,비인접참조샘플라인이현재블록의참조샘플라인으로 결정된경우에는 M개의 MPM들이이용될수있다. M은N보다작은자연수로, 일예로, N은 6이고, M은 5, 4또는 3일수있다.이에따라,현재블록의참조샘플 라인의인덱스가 0이고, MPM플래그가참인경우,현재블록의인트라예측 모드는 6개의후보인트라예측모드들중어느하나로결정되는반면,현재 블록의참조샘플라인의인덱스가 0보다크고, MPM플래그가참인경우,현재 블록의인트라예측모드는 5개의후보인트라예측모드들중어느하나로 결정될수있다.
[246] 또는,현재블록의참조샘플라인의인덱스와무관하게고정된개수(예컨대,
6개또는 5개)의 MPM후보를사용할수도있다.
[247] 복수의 MPM을포함하는 MPM리스트를생성하고,현재블록의인트라예측 모드와동일한 MPM이 MPM리스트에포함되어 있는지여부를나타내는정보를 비트스트림을통해시그날링할수있다.상기정보는 1비트의플래그로 MPM 플래그라호칭될수있다.상기 MPM플래그가현재블록과동일한 MPM이 MPM리스트에포함되어있음을나타내는경우, MPM들중하나를식별하는 인덱스정보가비트스트림을통해시그날링될수있다.일예로,복수의 MPM들 중어느하나를특정하는인덱스정보 11平111_ 가비트스트림을통해
시그날링될수있다.상기인덱스정보에의해특정된 MPM이현재블록의 인트라예측모드로설정될수있다.상기 MPM플래그가현재블록과동일한 MPM이 MPM리스트에포함되어 있지않음을나타내는경우, MPM들을제외한 잔여인트라예측모드들중어느하나를지시하는잔여모드정보가
비트스트림을통해시그날링될수있다.잔여모드정보는 MPM들을제외한 잔여인트라예측모드들에인덱스를재할당하였을때,현재블록의인트라예측 모드에대응되는인덱스값을가리킨다.복호화기에서는 MPM들을
오름차순으로정렬하고,잔여모드정보를 MPM들과비교하여현재블록의 인트라예측모드를결정할수있다.일예로,잔여모드정보가 MPM과같거나 작은경우,잔여모드정보에 1을가산하여현재블록의인트라예측모드를 유도할수있다.
[248] 현재블록의인트라예측모드유도시, MPM들중일부와잔여모드정보에 대한비교는생략될수있다.일예로, MPM들중비방향성인트라예측모드인 MPM들은비교대상에서제외될수있다.비방향성인트라예측모드들이 MPM들로설정된경우,잔여모드정보는방향성인트라예측모드를가리킴이 2020/175914 1»(:1^1{2020/002752
29 명확하므로,비방향성인트라예측모드들을제외한잔여 MPM들과잔여모드 정보와의비교를통해현재블록의인트라예측모드를유도할수있다.
비방향성인트라예측모드들을비교대상으로제외하는대신,잔여모드정보에 비방향성인트라예측모드들의개수를가산한뒤,그결과값을잔여 MPM들과 비교할수있다.
[249] 디폴트모드를 MPM으로설정하는대신,현재블록의인트라예측모드가
디폴트모드인지여부를나타내는정보를비트스트림을통해시그날링할수 있다.상기정보는 1비트의플래그이고,상기플래그를디폴트모드플래그라 호칭할수있다.상기디폴트모드플래그는 MPM플래그가현재블록과동일한 MPM이 MPM리스트에포함되어 있음을나타내는경우에한하여시그날링될수 있다.상술한바와같이,디폴트모드는,플래너, IX:,수직방향모드또는수평 방향모드중적어도하나를포함할수있다.일예로,플래너가디폴트모드로 설정된경우,디폴트모드플래그는현재블록의인트라예측모드가플래너인지 여부를지시할수있다.디폴트모드플래그가현재블록의인트라예측모드가 디폴트모드가아님을가리키는경우,인덱스정보에의해지시되는 MPM들중 하나를현재블록의인트라예측모드로설정할수있다.
[25이 디폴트모드플래그가이용되는경우,디폴트모드와동일한인트라예측
모드는 MPM으로설정되지않도록설정될수있다.일예로,디폴트모드 플래그가현재블록의인트라예측모드가플래너인지여부를지시하는경우, 플래너에해당하는 MPM을제외한 5개의 MPM들을이용하여 ,현재블록의 인트라예측모드를유도할수있다.
[251] 복수개의인트라예측모드들이디폴트모드들로설정된경우,디폴트모드들 중어느하나를지시하는인덱스정보가더시그날링될수있다.현재블록의 인트라예측모드는상기인덱스정보가가리키는디폴트모드로설정될수 있다.
[252] 현재블록의참조샘플라인의인덱스가 0이아닌경우에는디폴트모드를
이용하지못하도록설정할수있다.일예로,비인접참조샘플라인이현재 블록의참조샘플라인으로결정된경우, IX:모드또는플래너모드와같은 비방향성인트라예측모드를사용하지않도록설정할수있다.이에따라,참조 샘플라인의인덱스가 0이아닌경우에는디폴트모드플래그를시그날링하지 않고,상기디폴트모드플래그의값을기정의된값(즉,거짓)으로설정할수 있다.
[253] 현재블록의인트라예측모드가결정되면,결정된인트라예측모드를기초로, 현재블록에대한예측샘플들을획득할수있다( 703).
[254] IX:모드가선택된경우,참조샘플들의평균값을기초로,현재블록에대한 예측샘플들이생성된다.구체적으로,예측블록내전체샘플들의값은참조 샘플들의평균값을기초로생성될수있다.평균값은,현재블록의상단에 위치하는상단참조샘플들및현재블록의좌측에위치하는좌측참조샘플들 2020/175914 1»(:1^1{2020/002752
30 중적어도하나를이용하여유도될수있다.
[255] 현재블록의 형태에따라,평균값을유도하는데이용되는참조샘플들의 개수 또는범위가달라질수있다.일 예로,현재블록이 너비가높이보다큰비정방형 블록인경우,상단참조샘플들만을이용하여 평균값을계산할수있다.반면, 현재블록이너비가높이보다작은비정방형블록인경우,좌측참조샘플들만을 이용하여 평균값을계산할수있다.즉,현재블록의너비 및높이가상이한경우, 길이가더 긴쪽에 인접하는참조샘플들만을이용하여평균값을계산할수 있다.또는,현재블록의너비와높이비율에 기초하여,상단참조샘플들만을 이용하여 평균값을계산할것인지 여부또는좌측참조샘플들만을이용하여 평균값을계산할것인지 여부를결정할수있다.
[256] 플래너모드가선택된경우,수평 방향예측샘플과수직 방향예측샘플을
이용하여,예즉샘늘을획득할수있다.여기서,수평 방향예즉샘늘은,예즉 샘플과동일한수평선상에 위치하는좌측참조샘플및우측참조샘플을기초로 획득되고,수직 방향예측샘플은,예측샘플과동일한수직선상에 위치하는 상단참조샘플및하단참조샘플을기초로획득된다.여기서,우측참조샘플은, 현재블록의우측상단코너에 인접하는참조샘플을복사하여 생성되고,하단 참조샘플은,현재블록의좌측하단코너에 인접하는참조샘플을복사하여 생성될수있다.수평 방향예측샘플은좌측참조샘플및우측참조샘플의 가중합연산을기초로획득되고,수직방향예측샘플은상단참조샘플및하단 참조샘플의가중합연산을기초로획득될수있다.이때,각참조샘플에 부여되는가중치는예측샘플의위치에 따라결정될수있다.예측샘플은수평 방향예측샘플및수직 방향예측샘플의평균연산또는가중합연산을기초로 획득될수있다.가중합연산이수행되는경우,예측샘플의 위치에기초하여 수평 방향예즉샘늘및수직방향예즉샘늘에부여되는가중치를결정할수 있다.
[257] 방향성 예측모드가선택되는경우,선택된방향성 예측모드의 예측방향(또는 예측각도)을나타내는파라미터를결정할수있다.하기표 2는인트라예측 모드별인트라방향파라미터:1加¾¾6(1쇼1¾를나타낸것이다.
2020/175914 1»(:1^1{2020/002752
31
[258] [표 2]
Figure imgf000032_0001
[259] 표 2는 35개의 인트라예측모드가정의되어 있을때,인덱스가 2내지 34중 어느하나인인트라예측모드들각각의 인트라방향파라미터를나타낸다.
33개보다더 많은방향성 인트라예측모드가정의되어 있는경우,표 2를보다 세분화하여,방향성 인트라예측모드각각의 인트라방향파라미터를설정할수 있다.
[26이 현재블록의상단참조샘플들및좌측참조샘플들을일렬로배열한뒤,인트라 방향파라미터의값을기초로,예측샘플을획득할수있다.이때,인트라방향 파라미터의 값이음수인경우,좌측참조샘플들과상단참조샘플들을일렬로 배열할수있다.
[261] 도 19및도 20은참조샘플들을일렬로배열하는일차원배열의 예시를나타낸 도면이다.
[262] 도 19는참조샘플들을수직방향으로배열하는수직 방향일차원배열의
예시를나타낸것이고,도 20은참조샘플들을수평 방향으로배열하는수평 방향일차원배열의 예시를나타낸것이다. 35개의 인트라예측모드가정의된 경우를가정하여,도 19및도 20의실시예를설명한다.
[263] 인트라예측모드인덱스가 11내지 18중어느하나인경우,상단참조
샘플들을반시계방향으로회전한수평 방향일차원배열을적용하고,인트라 예측모드인덱스가 19내지 25중어느하나인경우,좌측참조샘플들을시계 방향으로회전한수직 방향일차원배열을적용할수있다.참조샘플들을 일렬로배열함에 있어서,인트라예측모드각도를고려할수있다.
[264] 인트라방향파라미터에기초하여,참조샘플결정 파라미터를결정할수있다. 참조샘플결정 파라미터는참조샘플을특정하기 위한참조샘플인덱스및 참조샘플에 적용되는가중치를결정하기 위한가중치 파라미터를포함할수 있다. [265] 참조샘플인덱스 ildx및가중치파라미터 ifact는각각다음의수학식 2및 3을 통해획득될수있다.
[266] [수식 2]
ildx iy+XTP^J^
[267] [수식 3]
ifact= [ 0 + 1 ) * ]及:31
[268] 수학식 2및 3에서 Pang는인트라방향파라미터를나타낸다.참조샘플인덱스 ildx에의해특정되는참조샘플은정수펠 (Integer pel)에해당한다.
[269] 예측샘플을유도하기위해,적어도하나이상의참조샘플을특정할수있다. 구체적으로,예측모드의기울기를고려하여,예측샘플을유도하는데이용되는 참조샘플의위치를특정할수있다.일예로,참조샘플인덱스 ildx를이용하여, 예즉샘늘을유도하는데이용되는참조샘늘을특정할수있다.
[27이 이때,인트라예측모드의기울기가하나의참조샘플로는표현되지않는경우, 복수의참조샘플들을보간하여예측샘플을생성할수있다.일예로,인트라 예측모드의기울기가예측샘플과제 1참조샘플사이의기울기및예측샘플과 제 2참조샘플사이의기울기사이의값인경우,제 1참조샘플및제 2참조 샘플을보간하여예측샘플을획득할수있다.즉,인트라예측각도를따르는 앵귤러라인 (Angular Line)이정수펠에위치한참조샘플을지나지않는경우, 상기 앵귤러라인이지나는위치의좌우또는상하에인접위치하는참조 샘플들을보간하여예측샘플을획득할수있다.
[271] 하기수학식 4는참조샘플들을기초로,예측샘플을획득하는예를나타낸
것이다.
[272] [수식 4]
P{x,y) = { {32-ifact)!32yRef_in(x+iIdx+ \ )+(. ifacJ^2)*Ref_lD(x+iIdx+2)
[273] 수학식 4에서,모는예측샘플을나타내고, Ref_lD은일차원배열된참조샘플들 중어느하나를나타낸다.이때,참조샘플의위치는예측샘플의위치 (x, y)및 참조샘플인덱스 ildx에의해결정될수있다.
[274] 인트라예측모드의기울기가하나의참조샘플로표현가능한경우,가중치 파라미터 는 0으로설정된다.이에따라,수학식 4는다음수학식 5와같이 간소화될수있다.
[275] [수식 5]
Figure imgf000033_0001
[276] 복수의인트라예측모드에기초하여현재블록에대한인트라예측을수행할 수도있다.일예로,예측샘플별로인트라예측모드를유도하고,각각의예측 샘플에할당된인트라예측모드에기초하여예측샘플을유도할수있다.
[277] 또는,영역별로인트라예측모드를유도하고,각각의영역에할당된인트라 예측모드에기초하여각영역에대한인트라예측을수행할수있다.여기서, 2020/175914 1»(:1^1{2020/002752
33 상기 영역은적어도하나의 샘플을포함할수있다.상기 영역의크기또는형태 중적어도하나는현재블록의크기,형태또는인트라예측모드중적어도 하나에 기초하여 적응적으로결정될수있다.또는,부호화기 및복호화기에서 현재블록의크기또는형태와는독립적으로영역의크기또는형태중적어도 하나가기정의되어 있을수있다.
[278] 도 21은방향성 인트라예측모드들이 X축과평행한직선과형성하는각도를 예시한도면이다.
[279] 도 21에 나타난예에서와같이 ,방향성 예측모드들은좌측하단대각방향부터 우측상단대각방향사이에존재할수있다. X축과방향성 예측모드가형성하는 각도로설명하면,방향성 예측모드들은, 45도(좌측하단대각방향)부터 ,
- 135도(우측상단대각방향)사이에존재할수있다.
[28이 현재블록이 비정방형태인경우,현재블록의 인트라예측모드에따라,인트라 예측각도를따르는앵귤러 라인상에위치하는참조샘플들중예측샘플에 보다가까운참조샘플대신예측샘플에보다먼참조샘플을이용하여 예측 샘플을유도하는경우가발생할수있다.
[281] 도 22는현재블록이 비정방형태인경우,예측샘플이 획득되는양상을나타낸 도면이다.
[282] 일예로,도 22의知)에도시된예에서와같이 ,현재블록이너비가높이보다큰 비정방형이고,현재블록의 인트라예측모드가 0도부터 45도사이의각도를 갖는방향성 인트라예측모드인것으로가정한다.위 경우,현재블록의우측열 부근의 예측샘플쇼를유도할때,상기각도를따르는앵귤러모드상에 위치하는참조샘플들중상기 예측샘플과가까운상단참조샘플 I대신상기 예측샘플과먼좌측참조샘플 을이용하는경우가발생할수있다.
[283] 다른예로,도 22의(비에도시된예에서와같이,현재블록이높이가너비보다 큰비정방형이고,현재블록의 인트라예측모드가- 90도부터 - 135도사이인 방향성 인트라예측모드인것으로가정한다.위경우,현재블록의하단행 부근의 예측샘플쇼를유도할때,상기각도를따르는앵귤러모드상에 위치하는참조샘플들중상기 예측샘플과가까운좌측참조샘플 대신상기 예측샘플과먼상단참조샘플 를이용하는경우가발생할수있다.
[284] 위와같은문제점을해소하기 위해 ,현재블록이 비정방형인경우,현재블록의 인트라예측모드를반대방향의 인트라예측모드로치환할수있다.이에 따라, 비정방형블록에 대해서는도 18에도시된방향성 예측모드들보다더큰혹은 더 작은각도를갖는방향성 예측모드들을사용할수있다.이와같은,방향성 인트라예측모드를와이드앵글인트라예측모드라정의할수있다.와이드 앵글인트라예측모드는 45도내지 - 135도범위에속하지 않는방향성 인트라 예측모드를나타낸다.
[285] 도 23은와이드앵글인트라예측모드들을나타낸도면이다.
[286] 도 23에도시된예에서,인덱스가 -1부터 - 14인인트라예측모드들및 2020/175914 1»(:1^1{2020/002752
34 인덱스가 67부터 80사이인인트라예측모드들이와이드앵글인트라예측 모드들을나타낸다.
[287] 도 23에서는각도가 45도보다큰 14개의와이드앵글인트라예측모드들(-1 부터 -14)및각도가 - 135도보다작은 14개의와이드앵글인트라예측모드들(67 부터 80)을예시하였으나,이보다더많은수또는더적은수의와이드앵글 인트라예측모드들이정의될수있다.
[288] 와이드앵글인트라예측모드가사용되는경우,상단참조샘플들의길이는 2\¥+1로설정되고,좌측참조샘플들의길이는 211+1로설정될수있다.
[289] 와이드앵글인트라예측모드를사용함에따라,도 23의如에도시된샘플쇼는 참조샘플 1를이용하여 예측되고,도 23의(비에도시된샘플쇼는참조샘플 을 이용하여 예측될수있다.
[29이 기존인트라예측모드들과 N개의와이드앵글인트라예측모드들을더해,총
67 + N개의인트라예측모드들을사용할수있다.일예로,표 3은 20개의와이드 앵글인트라예측모드가정의된경우,인트라예측모드들의인트라방향 파라미터를나타낸것이다.
2020/175914 1»(:1^1{2020/002752
35
[291] [표 3]
Figure imgf000036_0001
[292] 현재블록이비정방형이고, 32502단계에서획득된현재블록의인트라예측 모드가변환범위에속하는경우,현재블록의인트라예측모드를와이드앵글 인트라예측모드로변환할수있다.상기변환범위는현재블록의크기,형태 또는비율중적어도하나를기초로결정될수있다.여기서,상기비율은현재 블록의너비및높이사이의비율을나타낼수있다.
[293] 현재블록이너비가높이보다큰비정방형인경우,변환범위는우측상단대각 방향의인트라예측모드인덱스(예컨대, 66)부터(우측상단대각방향인인트라 예측모드의인덱스 -비로설정될수있다.여기서, N은현재블록의비율을 기초로결정될수있다.현재블록의인트라예측모드가변환범위에속하는 경우,상기인트라예측모드를와이드앵글인트라예측모드로변환할수있다. 상기변환은상기인트라예측모드에기정의된값을차감하는것일수있고,기 정의된값은와이드앵글인트라예측모드들을제외한인트라예측모드들의총 개수(예컨대, 6刀일수있다.
[294] 상기실시예에의해, 66번부터 53번사이의인트라예측모드들은,각각
-1번부터 -14번사이의와이드앵글인트라예측모드들로변환될수있다.
[295] 현재블록이높이가너비보다큰비정방형인경우,변환범위는좌측하단대각 방향의인트라예측모드인덱스(예컨대, 2)부터(좌측하단대각방향의인트라 예측모드의인덱스 + M)으로설정될수있다.여기서, M은현재블록의비율을 기초로결정될수있다.현재블록의인트라예측모드가변환범위에속하는 경우,상기인트라예측모드를와이드앵글인트라예측모드로변환할수있다. 상기변환은상기인트라예측모드에기정의된값을가산하는것일수있고,기 정의된값은와이드앵글인트라예측모드들을제외한방향성인트라예측 모드들의총개수(예컨대, 65)일수있다.
[296] 상기실시예에의해, 2번부터 15번사이의인트라예측모드들각각은 67번부터 80번사이의와이드앵글인트라예측모드들로변환될수있다.
[297] 이하,변환범위에속하는인트라예측모드들을와이드앵글인트라대체예측 모드로호칭하기로한다.
[298] 변환범위는현재블록의비율에기초하여결정될수있다.일예로,표 4및표 5는각각와이드앵글인트라예측모드제외 35개의인트라예측모드가정의된 경우와 67개의인트라예측모드가정의된경우,변환범위를나타낸다.
[299] [표 4]
Figure imgf000037_0001
[300] [표 5]
Figure imgf000037_0002
[301] 표 4및표 5에나타난예에서와같이,현재블록의비율에따라,변환범위에 포함되는와이드앵글인트라대체예측모드들의개수가상이할수있다.
[302] 현재블록의비율을보다세분화하여,다음표 6과같이변환범위를설정할 수도있다.
[303] [표 6]
Figure imgf000038_0004
[304] 비인접참조샘플라인이현재블록의참조샘플라인으로결정된경우,또는, 복수의참조샘플라인들중어느하나를선택하는멀티라인인트라예측 부호화방법이사용된경우에있어서,와이드앵글인트라예측모드가사용되지 않도록설정될수있다.즉,현재블록이비정방형이고,현재블록의인트라예측 모드가변환범위에속하는경우라하더라도,현재블록의인트라예측모드를 와이드앵글인트라예측모드로변환하지않을수있다.
[305] 또는,현재블록의인트라예측모드가와이드앵글인트라예측모드로결정된 경우,비인접참조샘플라인들을현재블록의참조샘플라인으로이용 가능하지않은것으로설정하거나,복수의참조샘플라인들중어느하나를 선택하는멀티라인인트라예측부호화방법이사용되지않도록설정할수 있다.멀티라인인트라예측부호화방법이사용되지않는경우,인접참조샘플 라인이현재블록의참조샘플라인으로결정될수있다.
[306] 와이드앵글인트라예측모드가사용되지않는
Figure imgf000038_0001
와 !미 의합으로설정할수있다.이에따라,좌측상단참조샘플제외,현재 블록과의거리가 인비인접레퍼런스샘플은知1¾\¥ + 내 + 0江8라 [니)개의 상단참조샘플과知1¾\¥ + 내 + 0江8라꺄미개의좌측참조샘플을포함할수 있다.즉,현재블록과의거리가 인비인접레퍼런스샘플은(2111¾\¥ + 21付1出 + (浪요라 미 + 0江8라꺄니 + 1)개의참조샘플들을포함할수있다.예를들어,
\vhRatio의값이 1보다큰경우에는 요 의값을 0伴8竹의값보다크게설정할 수있다.일예로,(浪 의값은 1로설정되고, 0伴 ¥의값은 0으
있다.반면,
Figure imgf000038_0003
값보다
Figure imgf000038_0002
더크게설정할수있다.일예로, offsetX의값은 0으로설정되고, offsetY의값은 1로설정될수있다.
[307] 기존의인트라예측모드들에추가로와이드앵글인트라예측모드들이
사용됨에따라,와이드앵글인트라예측모드들을부호화하는데필요한 리소스가증가하여,부호화효율이낮아질수있다.이에따라,와이드앵글 인트라예측모드들을그대로부호화하는대신,와이드앵글인트라예측 모드들에대한대체인트라예측모드들을부호화하여,부호화효율을향상시킬 수있다.
[308] 일예로,현재블록이 67번의와이드앵글인트라예측모드를이용하여
부호화된경우, 67번의와이드앵글대체인트라예측모드인 2번을현재블록의 인트라예측모드로부호화할수있다.또한,현재블록이 -1번의와이드앵글 인트라예측모드로부호화된경우, - 1번의와이드앵글대체인트라예측모드인 66번을현재블록의인트라예측모드로부호화할수있다.
[309] 복호화기에서는현재블록의인트라예측모드를복호화하고,복호화된인트라 예측모드가변환범위에포함되는지여부를판단할수있다.복호화된인트라 예측모드가와이드앵글대체인트라예측모드인경우,인트라예측모드를 와이드앵글인트라예측모드로변환할수있다.
[310] 또는,현재블록이와이드앵글인트라예측모드로부호화된경우,와이드앵글 인트라예측모드를그대로부호화할수도있다.
[311] 인트라예측모드의부호화는상술한 MPM리스트를기초로이루어질수있다. 구체적으로,이웃블록이와이드앵글인트라예측모드로부호화된경우,상기 와이드앵글인트라예측모드에대응하는와이드앵글대체인트라예측모드를 기초로, MPM을설정할수있다.
[312]
[313] 원본영상에서 예측영상을차분하여유도된잔차영상을유도할수있다.이때 , 잔차영상을주파수도메인으로변경하였을때,주파수성분들중고주파 성분들을제거하더라도,영상의주관적화질은크게떨어지지않는다.이에 따라,고주파성분들의값을작게변환하거나,고주파성분들의값을 0으로 설정한다면,시각적왜곡이크게발생하지않으면서도압축효율을증가시킬수 있는효과가있다.위특성을반영하여,잔차영상을 2차원주파수성분들로 분해하기위해현재블록을변환할수있다.상기변환은 DCT(Discrete Cosine Transform)또는 DST(Discrete Sine Transform)등의변환기법을이용하여수행될 수있다.
[314] 변환기법은블록단위로결정될수있다.변환기법은현재블록의 예측부호화 모드,현재블록의크기또는현재블록의크기중적어도하나를기초로결정될 수있다.일예로,현재블록이인트라에측모드로부호화되고,현재블록의 크기가 NxN보다작은경우에는변환기법 DST를사용하여변환이수행될수 있다.반면,상기조건을만족하지않는경우,변환기법 DCT를사용하여변환이 2020/175914 1»(:1^1{2020/002752
39 수행될수있다.
[315] 잔차영상중일부블록에대해서는 2차원영상변환이수행되지않을수도
있다. 2차원영상변환을
Figure imgf000040_0001
호칭할수있다.변환스킵이적용된경우,변환이수행되지않는잔차값들을 대상으로양자화가적용될수있다.
[316]
Figure imgf000040_0002
이용하여현재블록을변환한뒤,변환된현재블록을다시 변환할수있다.이때,。(그또는 에기초한변환을제 1변환이라정의하고, 제 1변환이적용된블록을다시변환하는것을제 2변환이라정의할수있다.
[317] 제 1변환은복수개의변환코어후보들중어느하나를이용하여수행될수
있다.일예로, DCT2, 0018또는 1X17중어느하나를이용하여제 1변환이 수행될수있다.
[318] 수평방향및수직방향에대해상이한변환코어가사용될수도있다.수평
방향의변환코어및수직방향의변환코어의조합을나타내는정보가
비트스트림을통해시그날링될수도있다.
[319] 제 1변환및제 2변환의수행단위가상이할수있다.일예로, 8x8블록에대해 제 1변환을수행하고,변환된 8x8블록중 4x4크기의서브블록에대해제 2 변환을수행할수있다.이때,제 2변환이수행되지않는잔여영역들의변환 계수를 0으로설정할수도있다.
[32이 또는, 4x4블록에대해제 1변환을수행하고,변환된 4x4블록을포함하는 8x8 크기의영역에대해제 2변환을수행할수도있다.
[321] 제 2변환의수행여부를나타내는정보가비트스트림을통해시그날링될수 있다.
[322] 또는,수평방향변환코어와수직방향변환코어가동일한지여부에기초하여, 제 2변환의수행여부가결정될수있다.일예로,수평방향변환코어와수직 방향변환코어가동일한경우에만,제 2변환이수행될수있다.또는,수평방향 변환코어와수직방향변환코어가상이한경우에만,제 2변환이수행될수 있다.
[323] 또는,수평방향의변환및수직방향의변환이기정의된변환코어를이용된 경우에한하여,제 2변환이허용될수있다.일예로,수평방향의변환및수직 방향의변환에 0012변환코어가사용된경우에 ,제 2변환이허용될수있다.
[324] 또는,현재블록의논제로변환계수의개수를기초로제 2변환의수행여부를 결정할수있다.일예로,현재블록의논제로변환계수가문턱값보다작거나 같은경우,제 2변환을사용하지않도록설정하고,현재블록의논제로변환 계수가문턱값보다큰경우,제 2변환을사용하도록설정될수있다.현재블록이 인트라예측으로부호화된경우에한하여,제 2변환을사용하도록설정될수도 있다.
[325] 복호화기에서는제 2변환의역변환(제 2역변환)을수행하고,그수행결과에 제 1변환의역변환(제 1역변환)을수행할수있다.상기제 2역변환및제 1 역변환의수행결과,현재블록에대한잔차신호들이획득될수있다.
[326] 부호화기에서변환및양자화를수행하면,복호화기는역양자화및역변환을 통해잔차블록을획득할수있다.복호화기에서는예측블록과잔차블록을 더하여 ,현재블록에대한복원블록을획득할수있다.
[327]
[328] 현재블록의복원블록이획득되면,인루프필터링 (In-loop filtering)을통해
양자화및부호화과정에서발생하는정보의손실을줄일수있다.인루프 필터는디블록킹필터 (Deblocking filter),샘늘적응적오프셋필터 (Sample Adaptive Offset filter, SAO)또는적응적루프필터 (Adaptive Loop Filter, ALF)중 적어도하나를포함할수있다.이하,인루프필터가적용되기전의복원블록을 제 1복원블록이라호칭하고,인루프필터가적용된이후의복원블록을제 2 복원블록이라호칭하기로한다.
[329] 제 1복원블록에디블록킹필터 , SAO또는 ALF중적어도하나를적용하여제 2 복원블록을획득할수있다.이때, SAO또는 ALF는디블록킹필터가적용된 이후에적용될수있다.
[33이 디블록킹필터는블록단위로양자화를수행함에따라발생하는블록의
경계에서의화질열화 (Blocking Artifact)를완화시키기위한것이다.디블록킹 필터를적용하기위해,제 1복원블록과이웃복원블록사이의블록
강도 (Blocking Strength, BS)를결정할수있다.
[331] 도 24는블록강도를결정하는과정을나타낸흐름도이다.
[332] 도 24에도시된예에서 ,모는제 1복원블록을나타내고, Q는이웃복원블록을 나타낸다.여기서,이웃복원블록은현재블록의좌측또는상단에이웃하는 것일수있다.
[333] 도 24에도시된예에서는, P및 Q의 예측부호화모드, 0이아닌변환계수가 포함되어 있는지여부,동일한참조픽처를이용하여인터 예측되었는지여부 또는움직임벡터들의차분값이문턱값이상인지여부를고려하여블록강도가 결정되는것으로도시되었다.
[334] 블록강도에기초하여,디블록킹필터의적용여부가결정될수있다.일예로, 블록강도가 0인경우에는필터링이수행되지않을수있다.
[335] SAO는주파수영역에서양자화를수행함에따라발생하는링잉현상 (Ringing Artifact)를완화시키기위한것이다. SAO는제 1복원영상의패턴을고려하여 결정되는오프셋을가산또는감산함으로써수행될수있다.오프셋의결정 방법은에지오프셋 (Edge Offset, EO)또는밴드오프셋 (Band Offset)을포함한다. EO는주변화소들의패턴에따라,현재샘플의오프셋을결정하는방법을 나타낸다. BO는영역내비슷한밝기값을갖는화소들의집합에대해공통의 오프셋을적용하는방법을나타낸다.구체적으로,화소밝기를 32개의균등한 구간으로나누고,유사한밝기값을갖는화소들을하나의집합으로설정할수 있다.일예로, 32개의밴드들중인접한 4개의밴드를하나의그룹으로 설정하고 , 4개 밴드에속한샘플들에는동일한오프셋값을적용할수있다.
[336] 사 는제 1복원영상또는디블록킹필터가적용된복원영상에기 정의된 크기/모양의 필터를적용하여 제 2복원영상을생성하는방법이다.하기수학식 6은 ALF의 적용예를나타낸다.
[337] [수식 6]
Figure imgf000042_0001
[338] 픽처,코딩트리유닛,코딩블록,예측블록또는변환블록단위로,기정의된 필터후보들중어느하나를선택할수있다.각각의필터후보들은크기또는 모양중어느하나가상이할수있다.
[339] 도 25는기정의된필터후보들을나타낸다.
[34이 도 25에도시된예에서와같이, 5x5, 7x7또는 9x9크기의다이아몬드형태중 적어도하나를선택할수있다.
[341] 크로마성분에 대해서는 5x5크기의다이아몬드형태만이사용될수있다.
[342]
[343] 파노라믹비디오, 360도비디오또는 4K/8K UHD(Ultra High Definition)영상등 고해상도영상의실시간또는저지연부호화를위해하나의픽처를복수개의 영역으로나누고,복수개의 영역을병렬로부호화/복호화하는방안을고려할수 있다.구체적으로,처리목적에따라,픽처를타일또는슬라이스(또는타일 그룹)으로분할할수있다.
[344] 타일은병렬부호화/복호화의기본단위를나타낸다.각타일은병렬처리될수 있다.타일은직사각형 형태를가질수있다.또는,비-직사각형 형태의 타일을 허용할수도있다.비-직사각형 형태의타일의 허용여부또는비-직사각형 형태의 타일이존재하는지 여부를나타내는정보가비트스트림을통해 시그날링될수있다.
[345] 타일의부호화/복호화시,다른타일의 데이터는이용하지 않도록설정될수 있다.타일간부호화/복호화종속성을제거하여,타일들의 병렬처리를지원할 수있다·구체적으로,타일단위로 CAB AC(Context adaptive Binary Arithmetic Coding)컨텍스트의확률테이블을초기화할수있으며 ,타일들의경계에서는 인루프필터가적용되지 않도록설정할수있다.또한,다른타일에 있는 데이터를움직임 벡터유도를위한후보로사용하지 않을수있다.예컨대,타 타일에 있는데이터는머지후보,움직임 벡터 예측후보(AMVP후보)또는모션 정보후보로이용되지 않도록설정될수있다.또한,다른타일에 있는데이터를 심볼의 컨텍스트계산에 이용하지 않도록설정할수있다.
[346] 2020/175914 1»(:1^1{2020/002752
42
[347] 슬라이스헤더를통해서는영상부호화/복호화정보가시그날링될수있다. 슬라이스헤더를통해시그날링되는정보들은슬라이스에포함된코딩트리 유닛들또는타일들에 공통적용될수있다.
[348] 도 26은본발명의 일실시예에 따른,픽처분할방법을나타낸도면이다.
[349] 먼저,현재픽처를복수의처리 단위로분할할것인지 여부를결정할수
있다 26 ).여기서,처리 단위는타일또는슬라이스중적어도하나를포함할 수있다.일예로,현재픽처가복수의 타일들또는슬라이스들로분할되는지 여부를나타내는신택스 110니^(니3011 011_:(¾은가비트스트림을통해시그날링될 수있다.신택스 110니^(니 ]1 011_:(^의 값이 0인것은,현재픽처가적어도 하나의 타일또는적어도하나의슬라이스로분할됨을나타낸다.반면,신택스 110니^(니 ]111;011_:(¾은의 값이 1인것은,현재픽처가복수의타일또는복수의 슬라이스로분할되지 않음을나타낸다.
[35이 현재픽처가복수의처리 단위들로분할되지 않는것으로결정되는경우,현재 픽처의분할과정을종료할수있다.이경우,현재픽처는하나의 타일및하나의 슬라이스(또는타일그룹)로구성된것으로이해될수있다.
[351] 현재픽처가복수의처리 단위들로분할되는것으로결정되는경우,
비트스트림을통해타일분할정보를시그날링할수있다.상기시그날링된타일 분할정보를기초로,픽처를적어도하나의 타일로분할할수있다 2620).
[352] 현재픽처가복수의타일들로분할된경우,복수의 타일들을병합하거나, 하나의 타일을분할하여,타일그룹(또는슬라이스)를결정할수있다 2630).
[353] 이하,본발명에 따른,타일분할방법 및타일그룹결정방법에 대해상세히 살펴보기로한다.
[354] 도 27은픽처가복수의 타일들로분할된예를나타낸다.
[355] 타일은적어도하나의코딩트리유닛을포함할수있다.타일의경계는코딩 트리유닛의경계와일치하도록설정될수있다.즉,하나의코딩트리유닛이 복수개로분할되는분할형태는허용되지 않을수있다.
[356] 픽처의분할형태를나타내는정보가비트스트림을통해시그날링될수있다. 상기 정보는픽처 파라미터세트또는시퀀스파라미터세트를통해부호화되어 시그날링될수있다.
[357] 픽처의분할형태를나타내는정보는정보는타일들이균등한크기로
분할되는지 여부를나타내는정보,타일열의 개수를나타낸정보또는타일 행의 개수를나타내는정보중적어도하나를포함할수있다.
[358] 타일들이균등한크기로분할되는지 여부를나타내는정보는 1비트의플래그 unifoml_spacing_flag일수있다.픽처가균등한크기의 타일들로분할되는 것으로결정된경우,픽처의우측및/또는하단경계에 인접하는타일(들)을 제외한잔여타일들은동등한크기를가질수있다.
[359] 픽처를가로지르는수직선또는수평선중적어도하나를이용하여픽처를 분할함에 따라,타일들각각은상이한열(0011111111)및/또는행(요0\¥)에속한다. 2020/175914 1»(:1^1{2020/002752
43 픽처의분할형태를결정하기위해,타일열의 개수및/또는타일행의 개수를 나타내는정보가시그날링될수있다.일 예로,픽처를분할함에 따라생성되는
Figure imgf000044_0001
타일열의 개수에서 1을차분한값을나타낸다.
[36이 도 27에도시된예에서 ,타일열의 개수는 4개이고,타일행의 개수는 3개 이다. 이에 따라, 1111111_1116_00111111118_11난111181은 3을나타내고, 1111111_1116_]'0\¥8_111뇨11181은 2를나타낼수있다.
[361] 신택스 unifOTm_tile_spacing_flag의 값이 1인경우,타일행의 개수를나타내는 신택스 및타일열의 개수를나타내는신택스
1111111_1116_]'0\¥8_1111111181에 기초하여타일의크기가결정될수있다.
[362] 신택스 unifoml_tile_spacing_flag의 값이 1인경우,타일의너비를나타내는
정보및타일의높이를나타내는정보에기초하여,각타일의크기를결정할수 있다.현재픽처내우측및/또는하단경계에 인접한타일들을제외한잔여 타일들의크기는상기 타일의너비를나타내는정보및상기 타일의높이를 나타내는정보에기초하여 결정될수있다.
[363] 하나의타일은적어도하나의코딩트리유닛으로구성될수있다.픽처우측 또는하단경계에 인접하는타일을제외한잔여 타일들은코딩트리유닛보다 작은영역을포함하여구성되지 않도록설정할수있다.즉,타일의경계는코딩 트리유닛의경계와일치한다.
[364] 하나의 라인(행또는열)에속한타일들의 집합을타일세트라호칭할수있다. 일 예로,가로방향타일세트는하나의 행에속한타일들의 집합을의미할수 있고,세로방향타일세트는하나의 열에속한타일들의 집합을의미할수있다.
[365] 픽처의분할형태에따라,픽처 바운더리를제외한모든영역에서 타일들이 동일한크기를가질수있다.또는,수평 방향으로인접하는타일들의높이가 동일하게설정되거나,수직방향으로인접하는타일들의 너비가동일하게 설정될수있다.
[366] 타일열의크기 및/또는타일행의크기를나타내는정보가비트스트림을통해 시그날링될수있다.타일열의크기는타일열에포함된코딩트리유닛 열의 개수를기초로결정될수있고,타일행의크기는타일행에포함된코딩트리 유닛 행의 개수를기초로결정될수있다.
[367]
[368] 현재픽처가복수의타일들로분할되는지 여부를나타내는정보가
비트스트림을통해시그날링될수있다.일 예로,비트스트림을통해신택스 single_tile_in_pic_flag 7 ] 1그날링될수있1다.신택스 single_tile_in_pic_flag 7 ] 1인 것은,현재픽처가복수의 타일들로분할되지 않음을나타낸다.반면, 2020/175914 1»(:1^1{2020/002752
44 single_tile_in_pic_flag가 0인것은,현재픽처가복수의타일들로분할됨을 나타낸다.
[369] 현재픽처가복수의타일들로분할되는것으로결정되는경우,타일열및타일 행의 개수를결정하기 위한정보,타일들의균등분할여부를나타내는정보및 타일열및타일행의크기를결정하기 위한정보가부호화될수있다.
[37이 [표 7]
Figure imgf000045_0001
[371] 타일의크기를결정하기위한정보가부호화되어시그날링될수있다.일예로, 土번째타일열의 너비를나타내는신택스요소바6_\\^(11:11_1111111181 [1]및土번째타일 행의높이를나타내는신택스요소 1고6_116 111;_1111111181 ]가비트스트림에 부호화될수있다.
[372] 현재픽처 내타일열의너비가명시적으로시그날링되는타일열의 개수를 특정하기 위한정보가비트스트림을통해시그날링될수있다.일예로,타일 열의 너비가시그날링되는타일열의 개수를결정하기 위한신택스
1111111_6 ]3_1116_。0111111118_1111111181이 비트스트림을통해시그날링될수있다.신택스 1111111_6 ]3_1116_。0111111118_1111111181은타일열의 너비가시그날링되는타일열의 개수에서 1을차분한값일수있다.타일열의 인덱스 1가타일열의 너비가 시그날링되는타일열의 개수보다작은경우,해당타일열의너비는
비트스트림을통해시그날링되는신택스出6_\¥ 出_111 1181 [1]에 기초하여결정될 2020/175914 1»(:1^1{2020/002752
45 수있다.반면,타일열의 인덱스 가타일열의 너비가시그날링되는타일열의 개수이상인경우,해당타일열의 너비는가장마지막으로시그날링된신택스 _\¥ 11_111 1181 [1]와동일하게설정될수있다.여기서, 1은 보다작은정수일 수있다.
[373] 또는,현재픽처 내타일행의높이가시그날링되는타일행의 개수를특정하기 위한정보가비트스트림을통해시그날링될수있다.일 예로,타일행의높이가 시그날링되는타일행의 개수를결정하기 위한신택스
1111111_6 ]3_1116_]'0\¥8_1111111181이 비트스트림을통해시그날링될수있다.신택스 1111111_6 ]3_1116_]'0\¥8_1111111181은타일행의높이가시그날링되는타일행의 개수에서 1을차분한값일수있다.타일행의 인덱스 1가타일행의높이가 시그날링되는타일행의 개수보다작은경우,해당타일행의높이는
비트스트림을통해시그날링되는신택스 !; _116 111;_1111111181 [1]에 기초하여 결정될수있다.반면,타일행의 인덱스 가타일행의높이가시그날링되는타일 행의 개수이상인경우,해당타일행의높이는가장마지막으로시그날링된
Figure imgf000046_0001
동일하게설정될수있다.여기서, 1은 보다작은 정수일수있다.
[374]
[375] 복호화기는상기신택스요소들을기초로유도된코딩트리유닛열의 개수 및/또는코딩트리유닛행의 개수와코딩트리유닛의크기를기초로,타일의 크기를결정할수있다.일예로, 1번째타일열의 너비는
예6_\¥ 1仕1_111뇨11181 ] + 1)*(코딩트리유닛의너비)로설정되고, 번째타일행의 높이는
Figure imgf000046_0002
트리유닛의높이)로설정될수있다.이에 따라, 1번째타일열및 번째타일행에속한타일의크기는
(((116_\¥ 1仕1_111뇨11181 [1]+1)*(코딩트리유닛의너비) X
예6_1 1;_1111111181 []] + 1)*(코딩트리유닛의높이))로설정될수있다.
[376] 한편,코딩트리유닛의크기를나타내는정보는시퀀스파라미터 세트또는 픽처 파라미터세트를통해시그날링될수있다.
[377]
[378] 각각의코딩트리유닛에 대해,코딩트리유닛이속하는타일을식별하기 위한 식별자(이하,타일인덱스, 라함)를할당할수있다.래스터스캔,수직 스캔,수평스캔또는대각스캔순서를따라,타일인덱스가할당될수있다. 타일인덱스할당순서는부호화기 및복호화기에서 기정의되어 있을수있다. 일 예로,래스터스캔순서를따라,타일인덱스가할당될수있다.또는,타일의 첫번째타일의크기(예컨대,너비또는/및높이)를고려하여,스캔순서를결정할 수있다.첫번째타일의 너비가높이보다큰경우,수평스캔을이용하고,첫번째 타일의높이가너비보다큰경우,수직스캔을이용할수있다.첫번째타일의 너비와높이가동일한경우,래스터스캔또는대각스캔을이용할수있다.
[379] 2020/175914 1»(:1^1{2020/002752
46
[38이 타일을재귀적으로분할할수있다.일예로,하나의 타일을복수의 타일들로 분할할수도있다.타일을분할하여 생성된복수의타일들각각을서브타일 또는브릭이라호칭할수도있다.브릭은병렬처리의 단위일수있다.일예로, 브릭은서로독립적으로부호화/복호화될수있다.브릭에포함된블록의 부호화/복호화시,타블록의 데이터를이용하지 않도록설정할수있다.일예로, 타브릭에포함된샘플은인트라예측을위한참조샘플로서 이용불가능한 것으로설정될수있다.또는,타브록에 있는데이터는머지후보,움직임 벡터 예측후보(AMVP후보)또는모션정보후보로이용되지 않도록설정될수있다.
[381] 다른예로,브릭간병렬처리가요구되는지 여부를나타내는정보가
비트스트림을통해시그날링될수있다.상기 정보에의해,블록의
부호화/복호화시 타브릭에포함된데이터의 이용여부가결정될수있다.
[382] 도 28은브릭의 생성 양상을설명하기 위한도면이다.
[383] 타일을수평 방향으로분할하여,브릭을생성할수있다.일예로,도 28에
도시된예에서는,현재픽처 내마지막타일열에속한타일들이 2개의브릭들로 분할되는것으로도시되었다.
[384] 타일들에 래스터스캔이 적용된다고가정할경우,브릭들간에도,래스터
스캔이 적용될수있다.일예로,특정 타일에포함된브릭들을모두스캔한뒤, 다음타일을스캔할수있다.즉,브릭은타일과동등한지위를가질수있다.
[385] 브릭의경계는코딩트리유닛의경계와일치할수있다.즉,타일내 적어도 하나의코딩트리유닛행을브릭으로정의할수있다.
[386] 타일이복수의브릭들로분할되는지 여부를나타내는정보가비트스트림을 통해시그날링될수있다.표 8은타일의분할여부를결정하기 위한정보를 포함하는신택스테이블을나타낸것이다.
[387] [S.8]
Figure imgf000048_0001
() 2020/175914 1»(:1/10公020/002752
48
Figure imgf000049_0002
[388] 현재픽처내복수의브릭들로분할되는타일이존재하는것으로결정되는 경우, 1번째타일이복수의브릭들로분할되는지여부를나타내는신택스
가시그날링될수있다.일예로,신택스 의 값이 1인것은타일인덱스가 1인타일이두개이상의브릭들로분할됨을 나타낸다.
Figure imgf000049_0001
인덱스가;1인타일이 분할되지않음을나타낸다.
[389] 타일이복수의브릭들로분할되는경우,타일의분할양상을결정하기위한 정보가비트스트림을통해시그날링될수있다.일예로,신택스
uniform_brick_spacing_flag7]-비트스트림을통해시그날링될수있다.신택스 unifoml_brick_spacing_flag가 1인것은타일내브릭의높이가균등함을 나타낸다. uniform_brick_spacing_flag값이 1이면,브릭의기본높이를나타내는 신택스 1 ]01 111_1111111181이시그날링될수있다.타일내마지막브릭을 제외한잔여브릭들은신택스 1 노_11 (:_1111111181에의해결정되는기본높이를 가질수있다.타일내마지막브릭은잔여브릭들을제외한잔여영역으로 설정될수있다.
[390] 신택스 unifoml_brick_spacing_flag값이 0이면,오번째타일내브릭의개수를 2020/175914 1»(:1^1{2020/002752
49 나타내는신택스 1111111_15 노_1'0\¥8_1111111181 [1]과 번째타일내 번째브릭의높이를 나타내는신택스 1 노노_]'0\¥_116 111;_1111111181 ] []]를시그날링할수있다.
[391] 타일내마지막브릭에 대해서는신택스 1 노노_]'0\\?_116 111;_111뇨11181 [1]의
시그날링이 생략될수있다.타일내마지막브릭의높이는타일의높이에서 이전브릭들의높이들의 합을차분하여유도할수있다.
[392] 브릭의높이를나타내는신택스 1 노노_11 1;_1111111181 [1]은브릭을포함하는 타일의높이에 1을차분한값보다작은값을가질수있다.일예로,타일의
Figure imgf000050_0001
경우,신택스 1 노101 111;_111뇨11181 [1]는 0내지 1'0\\?1¾ 111,2 사이의 값을가질수있다.여기서, 3"0\¥¾ 는타일이포함하는코딩트리유닛 행의 개수를나타낸다.
[393] 타일및브릭은타일인덱스에의해식별될수있다.래스터스캔순서에따라 타일및브릭 각각에타일인덱스가할당될수있다.하나의 타일이복수의 브릭들로분할된경우,복수의브릭각각에 타일인덱스가할당될수있다.
[394] 후술되는실시예에서,’타일’이라는용어는타일뿐만아니라,타일을
분할함으로써 생성된타일들(즉,서브타일또는브릭)을포함할수있다.
[395] 적어도하나이상의타일을하나의처리 단위로정의할수있다.일 예로, 복수개의 타일들을하나의 타일그룹으로정의할수있다.타일그룹을 슬라이스라호칭할수도있다.
[396] 또는,하나의타일을복수개의처리 단위로분할할수도있다.일 예로,하나의 타일을복수개의슬라이스로분할할수도있다.이 때,하나의슬라이스는 적어도하나의코딩트리유닛 열을포함할수있다.하나의 타일이복수의 슬라이스로분할되는경우,각슬라이스의높이를나타내는정보가
비트스트림을통해시그날링될수있다.
[397] 시퀀스또는픽처내타일그룹들의총개수를나타내는정보가비트스트림을 통해시그날링될수있다.일예로,시퀀스또는픽처 내타일그룹들의총개수를 나타내는신택스! 1111111'01 1116(¾011]3_1111111181이시그날링될수있다.
[398] 픽처에복수의 타일그룹들이포함된경우,각타일그룹을식별하기위해타일 그룹의주소정보를시그날링할수있다.일예로,각타일그룹마다각타일 그룹의 인덱스를가리키는신택스 가시그날링될수있다.
[399] 타일그룹헤더를통해 영상부호화/복호화정보가시그날링될수있다.타일 그룹헤더를통해시그날링되는정보들은타일그룹에속한타일들에
공통적으로적용될수있다.
[400] 픽처가포함하는타일그룹을결정하기위한정보가비트스트림을통해
시그날링될수있다.상기 정보는픽처 내타일그룹의 개수를나타내는정보 및/또는상기정보는타일그룹의분할방법을나타내는정보를포함할수있다. 일 예로,픽처내타일그룹의 개수를나타내는신택스
1111111_1116은]'01 8_:^니3노_1111111181가비트스트림을통해시그날링될수있다.또한, 타일그룹의분할방법을나타내는신택스 0_(116_은]'011]3_:(¾은가비트스트림을 통해시그날링될수있다.
[401] 신택스 rec_tile_group_flag는타일들의래스터스캔순서에기초하여타일
그룹이정의되는지여부또는사각형태로타일그룹이정의되는지여부를 나타낸다.일예로, rec_tile_group_flag가 0인것은타일들의 래스터스캔순서에 기초하여타일그룹이정의됨을나타낸다.반면, rec_tile_group_flag가 1인것은, 사각형태로타일그룹이정의됨을나타낸다.
[402] 이하,타일그룹을결정하기위한위두방법에대해상세히살펴보기로한다.
[403] 타일그룹은타일들의래스터스캔순서를기초로정의될수있다.래스터스캔 타일그룹은래스터스캔순서를따라하나이상의연속된타일(들)을타일 그룹으로정의하는것이다.래스터스캔타일그룹이적용될경우,비-사각 형태의타일그룹이생성될수도있다.
[404] 도 29및도 30은래스터순서에기초하여타일그룹을정의한예를나타낸 도면이다.
[405] 일예로,도 29에도시된예에서 ,첫번째타일그룹 tile groupO이 3개의타일들을 포함한다고가정하였을때,첫번째타일그룹 tile groupO은래스터스캔순서에 따라, TileO내지 Tile2를포함하는것으로정의될수있다.두번째타일그룹 tile groupl이 6개의타일들을포함한다고가정하였을때,두번째타일그룹 tile groupl은래스터스캔순서에따라, Tile3내지 Tile 8을포함하는것으로정의될 수있다.마지막타일그룹 tile group2은래스터스캔순서에따라,잔여타일들 Tile 9내지 Tilel l을포함할수있다.
[406] 래스터스캔순서에따라타일그룹이정의되는경우,각타일그룹이포함하는 타일들을결정하기위해,각타일그룹이포함하는타일의개수를나타내는 정보가시그날링될수있다.마지막타일그룹에대해서는타일그룹이포함하는 타일의개수를나타내는정보의시그날링이생략될수있다.
[407] 타일그룹이포함하는타일들의너비또는높이는상이할수있다.일예로, 두번째타일그룹 Tile groupl이포함하는타일들중 Tile3의높이는잔여 타일들과상이한것으로도시되었다.
[408] 또는,너비또는높이가상이한타일들이하나의타일그룹에포함되지않도록 설정할수있다.일예로,도 29에도시된예에서는,높이가 2인 Tile3과높이가
3인 Tile4내지 Tile8이하나의타일그룹을구성하는것으로도시되었으나,이와 같은타일들의조합은허용하지않도록설정될수있다.즉,도 30에도시된 예에서와같이,하나의타일그룹이높이가상이한타일들을포함하지않도록 설정될수있다.도 30에도시된예에서는,도 29에도시된 Tile3내지 Tile 8을 포함하는타일그룹이두개의타일그룹 tile groupl및 tile group 2로분할된 것으로도시되었다.이에따라,두번째타일그룹 tile goupl은높이가 2인
Tile3만을포함하고,세번째타일그룹 tile group2는높이가 3인 Tile4내지 Tile8을 포함한다.
[409] 타일그룹은사각형태로정의될수도있다.사각형태타일그룹은,타일 그룹을직사각형형태로정의하는것이다.사각형태타일그룹이적용되는 경우,타일그룹의네모서리에위치하는타일들이같은행또는같은열에 속하게된다.
[410] 도 31은사각형태의타일그룹만이허용되는예를나타낸도면이다.
[411] 도 31에도시된예에서와같이,네번째타일그룹타일그룹 tile group3는 Tile5, Tile6, Tile9및 TilelO를포함한다.도시된예에서와같이,타일그룹이복수의 타일들을포함하는경우,타일그룹을구성하는좌측상단타일및우측하단 타일을두꼭지점으로하는직사각형을하나의타일그룹으로정의할수있다.
[412] 타일그룹의경계는픽처경계및/또는타일의경계와일치할수있다.일예로, 타일그룹의좌측경계또는상단경계가픽처의경계로설정되거나,타일 그룹의좌측경계또는상단경계가타일의경계로설정될수있다.
[413] 사각형태로타일그룹이정의되는경우,각타일그룹이포함하는타일들을 결정하기위해,각타일그룹이포함하는타일들을식별하기위한정보가 시그날링될수있다.상기정보는타일그룹의좌상단에위치하는타일의인덱스 및타일그룹의우하단에위치하는타일의인덱스를식별하기위한것일수 있다.일예로,타일그룹의좌상단에위치하는타일의인덱스를식별하기위한 신택스 topjefuilejdx및타일그룹의우하단에위치하는타일의인덱스를 식별하기위한신택스 bottom_right_tile_idx가비트스트림을통해시그날링될수 있다.마지막타일그룹에대해서는타일그룹의좌상단에위치하는타일의 인덱스를식별하기위한신택스또는타일그룹의우하단에위치하는타일의 인덱스를식별하기위한신택스중적어도하나의부호화가생략될수있다.
[414] 일예로,도 31에도시된예에서, tile groupO, tile group 1및 tile group2에
대해서는,각타일그룹의좌상단에위치하는타일의인덱스 topjefuilejdx및 각타일그룹의우하단에위치하는타일의인덱스 bottom_right_tile_idx가 시그날링될수있다.반면,픽처내마지막타일그룹인 tile groups대해서는 top_left_tile_idx및 bottom_right_tile idx의부호화가생략될수있다. tile group3의 좌상단타일의인덱스는픽처에서 tile groupO, tile group 1및 tile group2를제외한 잔여영역내좌상단에위치하는타일의인덱스로설정되고, tile group3의우하단 타일의인덱스는상기잔여영역내우하단에위치하는타일(또는,픽처의 우하단에위치하는타일)의인덱스로설정될수있다.
[415] 또는,타일그룹의좌상단에위치하는타일의인덱스와타일그룹의우하단에 위치하는타일의인덱스의차분값을나타내는정보를비트스트림을통해 시그날링할수있다.일예로, i번째타일그룹에대해,타일그룹의좌상단에 위치하는타일의인덱스를식별하기위한신택스 top_left_tile_idx[i]및타일 그룹의좌상단에위치하는타일의인덱스와타일그룹의우하단에위치하는 타일의인덱스의차분을나타내는신택스 bottom_right_tile_idx_delta[i]가 시그날링될수있다 . i번째타일그룹의우측하단타일의인덱스는
top_left_tile_idx [i]및 bottom_right_tile_idx_delta[i] ¾: ¾하·여유 51될수있11牛. 2020/175914 1»(:1^1{2020/002752
52 마지막타일그룹에대해서는타일그룹의좌상단에위치하는타일의인덱스를 나타내는신택스또는타일그룹의좌상단에위치하는타일의인덱스와타일 그룹의우하단에위치하는타일의인덱스의차분을나타내는신택스중적어도 하나의부호화가생략될수있다.
[416] 표 9는인덱스차분을나타내는정보를포함하는신택스테이블을나타낸 것이다.
[417] [5.9]
Figure imgf000054_0001
() 2020/175914 1»(:1/10公020/002752
54
Figure imgf000055_0003
[418] 표 9에 나타난예에서와같이, 1번째타일그룹의좌상단타일의 인덱스를
나타내는신택스(:01)_16 _13 노_1(1 _111111118[1]를비트스트림을통해시그날링될수 있다.현재픽처내 첫번째타일그룹을제외한잔여타일그룹에서는좌상단 타일의 인덱스가항상 0보다큰값을갖는다.이에 따라,좌상단타일의 인덱스에서 1을차분한값을나타내는(:01)_16¾_1 。노_1(1 _1111111181 [1]를
부호화함으로써부호화/복호화효율을증가시킬수있다.현재픽처 내 첫번째 타일그룹에 대해서는 1:01)_16¾_13 10(1 _111111118[1]의부호화를생략할수있다. 신택스(:01)_16¾_1 。노_1(1: _1111111181 [니의비트수는다음수학식 7과같이 결정될수 있다.
[419] [수식 7]
Figure imgf000055_0001
[42이 수학식 7에서,
Figure imgf000055_0002
픽처 내타일의 개수를나타낸다.함수
센如는 &보다크거나같은가장작은정수를나타낸다. 1번째타일그룹의 좌상단타일의 인덱스는 1;0]3_161¾_15 10(1 _1111111181 ]에 1을더한값으로설정될 수있다.
[421] 또는,타일그룹내 첫번째타일(즉,좌측상단타일)과동일한타일행에속하는 2020/175914 1»(:1^1{2020/002752
55
최우측타일사이의인덱스차분을나타내는수평인덱스차분정보또는타일 그룹내첫번째타일과동일한타일열에속하는최하단타일사이의인덱스 차분을나타내는수직인덱스차분정보중적어도하나를부호화할수있다.일 예로,픽처의우측경계또는하단경계에인접하는타일그룹에서는수평 인덱스차분정보또는수직인덱스차분정보중적어도하나가부호화되어 시그날링될수있다.
[422] 또는,제 1타일그룹내소정위치타일의인덱스와제 2타일그룹내소정위치 타일의인덱스사이의차분을나타내는정보를비트스트림을통해시그날링할 수있다.여기서,소정위치는,타일그룹의좌측상단,우측상단,좌측하단,우측 하단또는중앙중적어도하나일수있다.일예로, 1번째타일그룹의좌상단에 위치하는타일의인덱스와니번째또는 1+1번째타일그룹의좌상단에위치하는 타일의인덱스사이의차분을나타내는신택스 1;0]3_16 _15 10(1 _(1 &[1]가 시그날링될수있다.첫번째타일그룹또는마지막타일그룹에대해서는타일 간인덱스의차분을나타내는신택스 1;01)_16¾_15 10(1 _(1 &의부호화를생략할 수있다.
[423] 표 은두타일그룹간좌측상단타일인덱스의차분을나타내는정보를 포함하는신택스테이블을나타낸것이다.
2020/175914 1»(:1^1{2020/002752
56
Figure imgf000057_0003
타일그룹)의좌측상단타일의인덱스와현재타일그룹(예컨대, 1번째타일 그룹)의좌측상단타일의인덱스사이의차분값을나타낸다.두타일그룹간 타일인덱스의차분을나타내는정보가부호화될경우,타일그룹내특정 타일의인덱스를나타내는정보(예컨대,좌측상단타일의위치를나타내는 신택스및/또는우측하단타일의위치를나타내는신택스)의부호화가생략될 수있다.
[426] 오번째타일그룹의좌상단타일의인덱스는
Figure imgf000057_0001
타일그룹(즉, 1-1번째타일그룹)의좌측상단타일의인덱스를합하여유도할 수있다.일예로,수학식 8은현재타일그룹의좌측상단타일의인덱스를 유도하는예를나타낸다.
[427] [수식 8]
[428] 내고,
Figure imgf000057_0002
() 2020/175914 1»(:1/10公020/002752
57 나타낸다.
[429] 신택스 1애_노:¾_15 ]0(뇨_(노:_1]의최대비트수는다음의수학식 9와같이 결정될수있다.
[430] [수식 9]
Figure imgf000058_0001
[431] 수학식 9 포함하는타일들의개수를
나타내고,
Figure imgf000058_0002
그룹내좌측상단타일의 인덱스를나타낸다.
[432] 첫번째타일그룹(즉, 1가 0인타일그룹)에대해서는,신택스
1;0]3_16 :_15 10(1 _(1 &[1]의부호화가생략될수있다.첫번째슬라이스의좌즉 상단타일의인덱스
Figure imgf000058_0003
는 0으로설정될수있다.
[433] 두번째타일그룹(즉, 1가 1인타일그룹)에대해서는이전타일그룹의좌측 상단타일과의인덱스차분을나타내는
Figure imgf000058_0004
두번째타일그룹내좌측상단타일의인덱스를나타내는
Figure imgf000058_0005
를 부호화할수도있다.
[434] 표 10에도시된예와달리,신택스
Figure imgf000058_0006
그룹(예컨대, 1번째타일그룹)의좌측상단타일의인덱스와다음타일 그룹(예컨대, 1+1번째타일그룹)의좌측상단타일의인덱스사이의차분으로 정의할수있다.이경우,마지막타일그룹에대해신택스
(:0!)_: 1:_15 10(뇨_(노11&[1]의부호화가생략될수있다.
[435] 두타일그룹내우측하단타일들의인덱스차분값을나타내는정보를
부호화할수도있다.일예로,표 11은두타일그룹내우측하단타일들의 인덱스차분값을나타내는정보를포함하는신택스테이블을나타낸것이다.
[436] [표 11]
Figure imgf000059_0003
[437] 표 11에서신택스 bottom_right_brick_idx_diff[i]는이전타일그룹(예컨대 ,
i-1번째타일그룹)의우측하단타일의인덱스와현재타일그룹(예컨대, i번째 타일그룹)의우측하단타일의인덱스사이의차분값을나타낸다.
[438] i번째타일그룹의우즉하단타일의인덱스는 bottom_right_brick_idx_delta[i]에 이전타일그룹(즉, i-1번째타일그룹)의우측상단타일의인덱스를합하여 유도할수있다.일예로,수학식 W은현재타일그룹의우측하단타일의 인덱스를유도하는예를나타낸다.
[439] [수식 10]
Figure imgf000059_0001
[44이 BottomRightIdx[i]는 i번째타일그룹내우측하단타일의인덱스를나타내고,
BottomRightIdx[i-l]은 i-1번째타일그룹내우측하단타일의인덱스를나타낸다.
[441] 신택스 bottom_right_brick_idx_delta[i]의최대비트수는다음의수학식 11과
같이결정될수있다.
[442] [수식 11]
Figure imgf000059_0002
[443] 첫번째타일그룹(즉, 1가 0인타일그룹)의우측하단타일의
인덱스 600아¾온 1(1 [0]은 150110111_]' 111;_15 10(1 _(1 [0]과동일하게설정될수 있다.
[444] 표 11에도시된예와달리,신택스 1?01;1;0111_] 111;_1 노노_1(뇨_(1냔 ]를현재타일 그룹(예컨대, 1번째타일그룹)의우측하단타일의 인덱스와다음타일 그룹(예컨대, 1번째타일그룹)의우측타일의 인덱스사이의차분으로정의할 수있다.이경우,마지막타일그룹에 대해서는 150110111_] 111;_1 신^_1(뇨_(1 ]의 시그날링이 생략될수있다.
[445] 두타일그룹내소정위치 타일의 인덱스차분을나타내는값에기 설정된값을 차분하여유도되는신택스를부호화할수도있다.표 12는두타일그룹내좌측 상단타일들의 인덱스차분에 1을차분한값이부호화되는예를나타낸것이다.
[446] [표 12]
Figure imgf000060_0001
[447] _ _ _ _ _ 111181[ 는이전타일그룹(예컨대, 니번째타일그룹)의좌측상단타일의 인덱스와현재타일그룹(예컨대, :1번째 타일그룹)의좌측상단타일의 인덱스사이의차분값에서 1을차감한값을 나타낸다. () 2020/175914 1»(:1/10公020/002752
60
[448] 오번째타일그룹의좌상단타일의 인덱스는 에 이전 타일그룹(즉, 1- 1번째타일그룹)의좌측상단타일의 인덱스및 1을합하여 유도할수있다.일 예로,수학식 12는현재타일그룹의좌측상단타일의 인덱스를유도하는예를나타낸다.
[449] [수식 12]
TopLeftBrickldx [ /] = TopLeftBrickIdx[i- 1 ] + top left brick idx delta minus 1 [ /] + 1
[450] 신택스 top_left_brick_idx_delta_minusl[i]의 최대비트수는다음의수학식 13과 같이 결정될수있다.
[451] [수식 13]
리 7(쇼 0용2(\¾/72 太 > ¾7 ? 7"<? 7서/? /灰/(쇼:(/- 1)))
[452] 타일그룹내소정 위치의타일이 결정되면,타일그룹의크기를나타내는
정보를이용하여,타일그룹을정의할수있다.타일그룹의크기를나타내는 정보는비트스트림을통해시그날링될수있다.일예로, 1번째타일그룹의 너비를나타내는신택스산16寒1'0111)_\ (1111_:111_(1168_1111111181 [1]및土번째타일그룹의 높이를나타내는신택스(: 寒1'0111)_11 寒11(:_111_(1168_1111111181 [니이 비트스트림을통해 시그날링될수있다.신택스산16寒1'0111)_\¥1(1111_111_(1168_1111111181 [ 는土번째타일그룹 내타일열의 개수에서 1을차분한값을나타내고,
(116寒1'0111)_116 11(:_111_(1168_1111111181 ]는土번째타일그룹내타일행의 개수에서 1을 차분한값을나타낸다.
[453] 번째타일그룹의좌상단타일이
Figure imgf000061_0001
타일그룹의 너비 및높이를 결정할수있다.현재픽처내마지막타일그룹에 대해서는신택스
산1푠 0111)_\¥ &_^1_(1168_111^11181및신택스산 0111)_11 용11(:_^1_(1168_111^1118 ]^의 부호화를생략할수있다.
[454] 신택스산16용1*0111)_\ (1社1_土11_(168_11난111181[니및신택스
산16용1*0111)_11 11011_(1168_1111111181 ]가모두 0인것은,타일그룹이하나의
타일만으로구성되거나,하나의타일이복수의타일들로분할됨을나타낸다.
[455] 신택스산16용1*0111)_\ (1社1_ _(1168_11난111181[니및신택스
산 寒1'0111)_11 寒11(:_111_(1168_11닌111181 [니가모두 0인경우,타일이복수의타일그룹으로 분할되는지 여부를나타내는정보가시그날링될수있다.일 예로,명시적으로 시그날링되어야하는타일그룹높이의 개수를나타내는정보를나타내는 신택스 111따1_6 1)_81 8_:111_(11 ]가비트스트림을통해시그날링될수있다.
신택스마1111_6 1)_81 8_:111_(11아1]는타일이포함하는타일그룹의 개수와동일 또는작은값을가질수있다.신택스마1111_6 1)_81 68_:111_(11아1]개수만큼 슬라이스의높이를나타내는신택스 6 !^_81 6_11 용11011_(:(:11_1111111181이
시그날링할수있다. 2020/175914 1»(:1^1{2020/002752
61
[456] 신택스 ]3_81노6_116 111:_^1_。1;11_1111111181 []]는타일내 번째슬라이스의높이를 나타낸다.구체적으로, ]3_81노6_116 111;_111_^;11_111 11181는타일내 번째
슬라이스가차지하는코딩트리유닛타일그룹행의 개수에서 1을차분한값을 나타낸다.
[457] 마지막 6 ]3_81노6_116 111:_111_。1;11_1111111181가시그날링되었음에도,타일내잔여 영역에 대한코딩트리유닛 행의크기가마지막
]3_81노6_116 11011_아;11_1111111181에 1을가산한것보다큰경우,잔여 영역에 대한 코딩트리유닛 행의크기가마지막 6 ]3_81노6_116 111:_^1_。1;11_1111111181에 1을가산한 것과같거나작아질때까지 ,잔여 영역을반복구획하여슬라이스를생성할수 있다.
[458] 신택스 1111111_6 1)_81노68_111_샀16 ]이 0인것은오번째타일그룹이하나의타일로 구성됨을나타낸다.신택스 1111111_6 ]3_81노68_:111_111 ]이 0보다큰것은, 번째타일 그룹을포함하는타일이복수의타일그룹들로분할됨을나타낸다.
[459]
[46이 현재픽처 내타일열의 개수가 1개인경우신택스
바6은]'011]3_\¥1(¾11_:111_11168_1111111181의부호화가생략되고,현재픽처 내타일행의 개수가 1개인경우신택스산16은]'011]3_116 111:_111_11168_1111111181의부호화가생략될수 있다.
[461] 또는,타일그룹의 너비를나타내는정보또는타일그룹의크기를나타내는 정보중적어도하나의부호화를생략할수있다.일예로,타일그룹의너비를 나타내는신택스바6은]'011]3_\¥1(¾11_:111_11168_111^11181의부호화를생략하고,인접 타일그룹내소정위치 타일과의거리를타일그룹의 너비로설정할수있다. 구체적으로,신택스); 0]3_16¾_15 10(1 _(1 라1]에의해, :1번째타일그룹의우즉에 인접하는 1+1번째타일그룹의좌상단타일이특정될수있다. 1번째타일그룹의 너비는 1번째타일그룹내좌상단타일의 X좌표(예컨대,좌상단샘플의 X좌표)와, 1번째타일그룹내좌상단타일의 X좌표(예컨대,좌상단샘플의 X좌표)사이의 차분으로유도될수있다.
[462] 또는,타일그룹의높이를나타내는신택스바6은]'011]3_116 111:_111_11168_1111111181의 부호화를생략하고,인접타일그룹내소정위치 타일과의거리를타일그룹의 너비로설정할수있다.구체적을,신택스 1;0]3_16代_1 노노_1(뇨_(1611&[卜1:|에의해 , 土번째타일그룹의하단에위치하는 번째타일그룹의좌상단타일이특정될수 있다. 1번째타일그룹의높이는 1번째타일그룹내좌상단타일의 X좌표(예컨대, 좌상단샘플의 좌표)와 번째타일그룹내좌상단타일의 좌표(예컨대,좌상단 샘플의 X좌표)사이의차분으로유도될수있다.
[463] 또는,사각형태의 타일그룹을정의하는데 있어서,차분값정보가이용되는지 여부를나타내는정보가비트스트림을통해시그날링될수있다.일예로, 차분값정보의 이용여부를나타내는(1 &_] 86111;_£^가비트스트림을통해 시그날링될수있다.신택스(1 &_1^86111;_1¾은의값이 1인것은타일인덱스의 2020/175914 1»(:1^1{2020/002752
62 차분값을나타내는신택스가부호화되어시그날링됨을나타낸다.일예로,
Figure imgf000063_0001
경우, 번째타일그룹은타일그룹의크기를 나타내는신택스바6은]'011]3_\¥1(1&_:111_11168_111^11181 [니및신택스
바6은]'011]3_116 111:_111_11168_1111111181 ]과타일그룹내좌즉상단타일의위치또는 우측상단타일의위치를결정하기위한차분값정보 (예컨대,
1:0]3_16탸;_15 10(1 _(1 &[1-1]또는 1?01;1:0111_] 111:_1) 10(1 _(1 &[ 1 ])에의해정의될 수있다.
[464]
Figure imgf000063_0002
경우, 번째타일그룹은타일그룹의
크기를나타내는신택스 1고6은1'011]3_\\^(1比 1_뇨1_11168_111뇨11181 [1]및신택스
바6은]'011]3_116 111:_111_샀168_1111111181 ]에의해정의될수있다.신택스
의값이 0인경우,현재픽처의좌측경계에접하는타일그룹의 우측에인접하는타일그룹은서로동일한높이를갖도록설정될수있다.이에 따라,현재픽처의좌측경계에접하는타일그룹에대해서만타일그룹의 높이를나타내는정보를시그날링하고,현재픽처의좌측경게에접하지않는 타일그룹에대해서는타일그룹의높이를나타내는정보의시그날링을생략할 수있다.
[465] 타일그룹의인덱스대신코딩트리유닛의인덱스에기초하여타일그룹을 정의하는것도가능하다.
[466] 상술한예에서는타일들의래스터스캔순서를따라타일그룹이정의되는 것으로설명하였으나,수직스캔,수평스캔또는대각스캔을따라타일그룹을 정의할수도있다.
[467]
[468] 이전타일그룹과현재타일그룹의크기가동일한지여부를나타내는정보가 시그날링될수있다.여기서,이전타일그룹은타일그룹의인덱스또는소정의 스캔순서에따라결정될수있다.일예로,이전타일그룹은현재타일그룹보다 인덱스가 1이작은타일그룹으로결정될수있다.또는,이전타일그룹은 래스터스캔순서,수평스캔순서,수직스캔순서또는대각스캔순서중 적어도하나를따라결정될수있다.
[469] 상기정보는이전타일그룹과현재타일그룹의크기가동일한지여부를
나타내는정보,이전타일그룹의너비와현재타일그룹의너비가동일한지 여부를나타내는정보또는이전타일그룹의높이와현재타일그룹의높이가 동일한지여부를나타내는정보중적어도하나를포함할수있다.
[47이 일예로,현재타일그룹의크기가이전타일그룹의크기와동일한지여부를 나타내는신택스 1186_]고 土0118_1(3_8 _:(¾은가시그날링될수있다.신택스 1^_1^ :10118_1(3_8뇨6_:^ ¾가 1인것은오번째타일그룹의크기가 1번째타일 그룹의크기와동일함을나타낸다.신택스 가 1인 경우, 번째타일그룹이포함하는타일들을결정하기위한정보의부호화가 생략될수있다.예컨대,타일그룹이포함하는타일들의개수를나타내는정보 2020/175914 1»(:1^1{2020/002752
63 또는타일그룹이포함하는타일들의 인덱스를나타내는정보의부호화가 생략될수있다.
[471] 신택스애6_ :10118_1(3_8뇨6_:¾ [ 가 0인것은오번째타일그룹의크기와 니번째타일그룹의크기가상이함을나타낸다.신택스
Figure imgf000064_0001
경우,오번째타일그룹이포함하는타일들을 결정하기 위한정보가부호화되어시그날링될수있다.
[472]
[473] 상술한실시예들에서는,현재픽처를적어도하나이상의 타일로분할한뒤, 타일그룹을정의하는것으로설명하였다.다른예로,타일그룹을먼저정의한 뒤,타일그룹을복수의 타일들로분할할수도있다.
[474] 표 13은각타일그룹을적어도하나의타일들로분할하는예를나타낸
도면이다.
[475] [5.13]
Figure imgf000065_0001
2020/175914 1»(:1^1{2020/002752
65
Figure imgf000066_0001
[476] 픽처내타일그룹의구성에관한정보가비트스트림을통해시그날링될수 있다.타일그룹의구성에관한정보는,픽처가하나의타일로구성되었는지 여부를나타내는정보,각타일그룹이하나의타일로구성되었는지여부를 나타내는정보,타일그룹이사각형인지여부를나타내는정보,타일그룹의 개수를나타내는정보,타일그룹열의개수를나타내는정보또는타일그룹 행의개수를나타내는정보중적어도하나를포함할수있다.
[477] 일예로,현재픽처가복수의타일들로분할되는지여부를나타내는신택스 가비트스트림을통해시그날링될수있다.신택스
1¾16_1116_:11^노_:(?^가 1인것은,현재픽처가복수의타일들로분할되지 않으며,현재픽처내타일그룹의개수가 1개임을나타낸다.신택스
single_tile_in_pic_flag가 0인것은,현재픽처가복수의타일들로분할됨을 나타낸다.
[478] 픽처가복수의타일들로분할되는것으로결정되는경우,각타일그룹이 하나의타일로구성되는지여부를나타내는신택스
single_tile_per_tile_group_flag가비트스트림을통해시그날링될수있다.신택스 single_tile_per_tile_group_flag가 1인것은각타일그룹이하나의타일만으로 구성됨을나타낸다.신택스 single_tile_per_tile_group_flag가 0인것은적어도 하나의타일그룹이복수의타일들로구성됨을나타낸다.
[479] 적어도하나의타일그룹이복수의타일들로구성되는것으로결정된경우,각 타일그룹의분할정보가비트스트림을통해시그날링될수있다.일예로, 1번째 타일그룹이균등한크기의타일들로분할되는지여부를나타내는 uniform_tile_spacing_inTG[i]가비트스트림을통해시그날링될수있다.신택스 uniform_tile_spacing_inTG[i]는 uniform_tile_spacing_flag가 0인경우에한하여 시그날링될수있다.신택스 uniform_tile_spacing_inTG[i]가시그날링되지않는 경우,그값을 0으로설정할수있다.또는,타일그룹의형태에따라,
uniform_tile_spacing_inTG[i]의부호화여부를결정할수있다.일예로,신택스 unifomi_tile_spacing_inTG[i]는타일그룹이사각형태인경우에한하여부호화될 수있다·타일그룹이비-사각형태인경우, uniform_tile_spacing_inTG[i]의 부호화가생략될수있다.
[48이 i번째타일그룹에포함된타일열의개수를나타내는신택스
num_tile_columns_minus_in_TG[i]가시그날링될수있다.또한, i번째타일그룹에 포함된타일행의개수를나타내는신택스 num_tile_rows_minus_in_TG[i]가 시그날링될수있다.
[481] 각타일그룹마다타일그룹에포함된타일열의너비를나타내는신택스
tile_column_width_minus[i][j]가시그날링될수있다.신택스
tile_column_wid比 i_minus[i][j]는 i번째타일그룹내 j번째타일열의너비를 나타낸다.또한,각타일그룹마다타일그룹에포함된타일행의높이를 나타내는신택스 tile_row_height_minus[i][j]가시그날링될수있다.신택스 tile_row_height_minus[i][j]는 i번째타일그룹내 j번째타일행의높이를
나타낸다.
[482]
[483] 복호화과정또는부호화과정을중심으로설명된실시예들을,부호화과정 또는복호화과정에적용하는것은,본발명의범주에포함되는것이다.소정의 순서로설명된실시예들을,설명된것과상이한순서로변경하는것역시,본 발명의범주에포함되는것이다.
[484] 상술한실시예는일련의단계또는순서도를기초로설명되고있으나,이는
발명의시계열적순서를한정한것은아니며,필요에따라동시에수행되거나 다른순서로수행될수있다.또한,상술한실시예에서블록도를구성하는 구성요소 (예를들어,유닛,모듈등)각각은하드웨어장치또는소프트웨어로 구현될수도있고,복수의구성요소가결합하여하나의하드웨어장치또는 소프트웨어로구현될수도있다.상술한실시예는다양한컴퓨터구성요소를 통하여수행될수있는프로그램명령어의형태로구현되어컴퓨터판독가능한 기록매체에기록될수있다.상기컴퓨터판독가능한기록매체는프로그램 명령어 ,데이터파일,데이터구조등을단독으로또는조합하여포함할수있다. 컴퓨터판독가능한기록매체의 예에는,하드디스크,플로피디스크및자기 테이프와같은자기매체 , CD-ROM, DVD와같은광기록매체 ,플롭티컬 디스크 (floptical disk)와같은자기 -광매체 (magneto-optical media),및 ROM, RAM, 플래시메모리등과같은프로그램명령어를저장하고수행하도록특별히 2020/175914 1»(:1^1{2020/002752
67 구성된하드웨어장치가포함된다.상기하드웨어장치는본발명에따른처리를 수행하기위해하나이상의소프트웨어모듈로서작동하도록구성될수있으며, 그역도마찬가지이다.
산업상이용가능성
[485] 본발명은영상을부호화/복호화하는전자장치에적용될수있다.

Claims

() 2020/175914 1»(:1/10公020/002752 68 청구범위
[청구항 1] 현재픽처가복수의타일들로분할되는경우,슬라이스의결정방법을 나타내는정보를복호화하는단계,상기슬라이스의결정방법을 나타내는정보는래스터스캔순서에따른정의방법을기초로
정의되는지또는사각형태로의정의방법을나타냄;및
적어도하나의타일을슬라이스로정의하는단계를포함하되, 상기슬라이스의결정방법이사각형태로의정의방법을나타내는경우, 제 1슬라이스는상기제 1슬라이스내기설정된위치의타일을기초로 정의되고,
상기제 1슬라이스가상기현재픽처내마지막슬라이스가아닌경우, 상기제 1슬라이스내상기기설정된위치의타일을식별하기위한제 1 신택스가비트스트림으로부터파싱되고,
상기제 1슬라이스가픽처내마지막슬라이스인경우,상기제 1신택스의 파싱이생략되는것을특징으로하는,영상복호화방법 .
[청구항 2] 제 1항에있어서,
상기제 1신택스는상기제 1슬라이스내상기기설정된위치의타일과 제 2슬라이스내기설정된위치의타일사이의인덱스차분값을 나타내는것을특징으로하는,영상복호화방법 .
[청구항 3] 제 1항에있어서,
상기제 1신택스는상기제 1슬라이스내상기기설정된위치의타일과 제 2슬라이스내기설정된위치의타일사이의인덱스차분값에서 기결정된값을차분한값을나타내는것을특징으로하는,영상복호화 방법.
[청구항 4] 제 1항에있어서,
상기제 1슬라이스가상기현재픽처내마지막슬라이스가아닌경우, 상기제 1슬라이스의크기를나타내는제 2신택스가추가파싱되고, 상기제 1슬라이스가상기현재픽처내마지막슬라이스인경우,제 2 신택스의파싱이생략되는것을특징으로하는,영상복호화방법 .
[청구항 5] 제 1항에있어서,
상기슬라이스의결정방법이래스터스캔순서에따른정의방법을 나타내는경우,상기제 1슬라이스는상기제 1슬라이스에포함된 타일들의개수에기초하여결정되고,
상기제 1슬라이스가상기현재픽처내마지막슬라이스가아닌경우, 상기제 1슬라이스에포함된타일들의개수를나타내는제 3신택스가 비트스트림으로부터파싱되고,
상기제 1슬라이스가픽처내마지막슬라이스인경우,상기제 3신택스의 파싱이생략되는것을특징으로하는,영상복호화방법 . 2020/175914 1»(:1^1{2020/002752
69
[청구항 6] 현재픽처가복수의타일들로분할되는경우,슬라이스의결정방법을 나타내는정보를부호화하는단계,상기슬라이스의결정방법을 나타내는정보는래스터스캔순서에따른정의방법을기초로
정의되는지또는사각형태로의정의방법을나타냄;및
적어도하나의타일을슬라이스로정의하는단계를포함하되,
상기슬라이스의결정방법이사각형태로의정의방법인경우,제 1 슬라이스는상기제 1슬라이스내기설정된위치의타일을기초로 정의되고,
상기제 1슬라이스가상기현재픽처내마지막슬라이스가아닌경우, 상기제 1슬라이스내상기기설정된위치의타일을식별하기위한제 1 신택스가비트스트림에부호화되고,
상기제 1슬라이스가픽처내마지막슬라이스인경우,상기제 1신택스의 부호화가생략되는것을특징으로하는,영상부호화방법 .
[청구항 7] 제 6항에있어서,
상기제 1신택스는상기제 1슬라이스내상기기설정된위치의타일과 제 2슬라이스내기설정된위치의타일사이의인덱스차분값을 나타내는것을특징으로하는,영상부호화방법 .
[청구항 8] 제 6항에있어서,
상기제 1신택스는상기제 1슬라이스내상기기설정된위치의타일과 제 2슬라이스내기설정된위치의타일사이의인덱스차분값에서 기결정된값을차분한값을나타내는것을특징으로하는,영상부호화 방법.
[청구항 9] 제 6항에있어서,
상기제 1슬라이스가상기현재픽처내마지막슬라이스가아닌경우, 상기제 1슬라이스의크기를나타내는제 2신택스가추가부호화되고, 상기제 1슬라이스가상기현재픽처내마지막슬라이스인경우,제 2 신택스의부호화가생략되는것을특징으로하는,영상부호화방법.
[청구항 10] 제 6항에있어서 ,
상기슬라이스의결정방법이래스터스캔순서에따른정의방법인경우, 상기제 1슬라이스는상기제 1슬라이스에포함된타일들의개수에 기초하여결정되고,
상기제 1슬라이스가상기현재픽처내마지막슬라이스가아닌경우, 상기제 1슬라이스에포함된타일들의개수를나타내는제 3신택스가 비트스트림에부호화되고,
상기제 1슬라이스가픽처내마지막슬라이스인경우,상기제 3신택스의 부호화가생략되는것을특징으로하는,영상부호화방법 .
PCT/KR2020/002752 2019-02-26 2020-02-26 영상 신호 부호화/복호화 방법 및 이를 위한 장치 WO2020175914A1 (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
US17/259,139 US11394971B2 (en) 2019-02-26 2020-02-26 Image signal encoding/decoding method and device for same
CN202080004122.1A CN112470479A (zh) 2019-02-26 2020-02-26 图像信号编码/解码方法及其装置
MX2021010005A MX2021010005A (es) 2019-02-26 2020-02-26 Metodo de codificacion/decodificacion de se?ales de imagen y dispositivo para el mismo.
US17/548,622 US11716471B2 (en) 2019-02-26 2021-12-13 Image signal encoding/decoding method and device for same
US18/208,813 US20240022720A1 (en) 2019-02-26 2023-06-12 Image signal encoding/decoding method and device for same

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR20190022760 2019-02-26
KR10-2019-0022760 2019-02-26
KR10-2019-0080408 2019-07-03
KR20190080408 2019-07-03

Related Child Applications (2)

Application Number Title Priority Date Filing Date
US17/259,139 A-371-Of-International US11394971B2 (en) 2019-02-26 2020-02-26 Image signal encoding/decoding method and device for same
US17/548,622 Continuation US11716471B2 (en) 2019-02-26 2021-12-13 Image signal encoding/decoding method and device for same

Publications (1)

Publication Number Publication Date
WO2020175914A1 true WO2020175914A1 (ko) 2020-09-03

Family

ID=72238992

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2020/002752 WO2020175914A1 (ko) 2019-02-26 2020-02-26 영상 신호 부호화/복호화 방법 및 이를 위한 장치

Country Status (5)

Country Link
US (3) US11394971B2 (ko)
KR (1) KR20200104252A (ko)
CN (1) CN112470479A (ko)
MX (1) MX2021010005A (ko)
WO (1) WO2020175914A1 (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112470479A (zh) 2019-02-26 2021-03-09 株式会社 Xris 图像信号编码/解码方法及其装置
CN112930683A (zh) 2019-06-20 2021-06-08 株式会社 Xris 用于对图像信号进行编码/解码的方法及其设备
US11212530B2 (en) * 2019-06-24 2021-12-28 Tencent America LLC Method for slice, tile and brick signaling
GB2593222B (en) * 2020-03-20 2024-07-17 Canon Kk High level syntax for video coding and decoding

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100100493A (ko) * 2009-03-06 2010-09-15 주식회사 코아로직 비트스트림 디코딩 장치와 방법 및 그 장치를 포함하는 멀티미디어 장치
US20130101035A1 (en) * 2011-10-24 2013-04-25 Qualcomm Incorporated Grouping of tiles for video coding
US20160165248A1 (en) * 2013-07-23 2016-06-09 Nokia Technologies Oy An apparatus, a method and a computer program for video coding and decoding

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9325999B2 (en) * 2011-03-10 2016-04-26 Sharp Kabushiki Kaisha Video decoder for slices
US20120230398A1 (en) * 2011-03-10 2012-09-13 Christopher Andrew Segall Video decoder parallelization including slices
US8767824B2 (en) 2011-07-11 2014-07-01 Sharp Kabushiki Kaisha Video decoder parallelization for tiles
WO2017091007A1 (ko) * 2015-11-24 2017-06-01 삼성전자 주식회사 영상 부호화 방법 및 장치, 영상 복호화 방법 및 장치
WO2017171438A1 (ko) * 2016-03-30 2017-10-05 한국전자통신연구원 픽쳐 분할 정보를 사용하는 비디오의 부호화 및 복호화를 위한 방법 및 장치
US10834419B2 (en) 2016-04-13 2020-11-10 Qualcomm Incorporated Conformance constraint for collocated reference index in video coding
WO2018155939A1 (ko) * 2017-02-22 2018-08-30 에스케이텔레콤 주식회사 영상 복호화 방법 및 장치
CN112470479A (zh) 2019-02-26 2021-03-09 株式会社 Xris 图像信号编码/解码方法及其装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100100493A (ko) * 2009-03-06 2010-09-15 주식회사 코아로직 비트스트림 디코딩 장치와 방법 및 그 장치를 포함하는 멀티미디어 장치
US20130101035A1 (en) * 2011-10-24 2013-04-25 Qualcomm Incorporated Grouping of tiles for video coding
US20160165248A1 (en) * 2013-07-23 2016-06-09 Nokia Technologies Oy An apparatus, a method and a computer program for video coding and decoding

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
BROSS, BENJAMIN ET AL.: "Versatile Video Coding (Draft 4", JOINT VIDEO EXPERTS TEAM (JVET) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11. JVET-M1001-V7. 13TH MEETING, 18 January 2019 (2019-01-18), Marrakech, MA, pages 1 - 290, XP055734591, Retrieved from the Internet <URL:http://phenix.int-evry.fr/jvetx> [retrieved on 20200513] *
ETAAN, WOO-JIN: "HEVC Video Compression Technology Introduction", THE KOREAN INSTITUTE OF BROADCAST AND MEDIA ENGINEERS, BROADCASTING AND MEDIA MAGAZINE, vol. 17, no. 4, October 2012 (2012-10-01), pages 35 - 46, Retrieved from the Internet <URL:http://www.dbpia.co.kr/journal/articleDetail?nodeId=NODE02011280> [retrieved on 20200514] *

Also Published As

Publication number Publication date
US20220103819A1 (en) 2022-03-31
US11716471B2 (en) 2023-08-01
KR20200104252A (ko) 2020-09-03
US20240022720A1 (en) 2024-01-18
MX2021010005A (es) 2021-09-21
US20210160497A1 (en) 2021-05-27
US11394971B2 (en) 2022-07-19
CN112470479A (zh) 2021-03-09

Similar Documents

Publication Publication Date Title
WO2020175938A1 (ko) 영상 신호 부호화/복호화 방법 및 이를 위한 장치
WO2020175915A1 (ko) 영상 신호 부호화/복호화 방법 및 이를 위한 장치
KR20200054105A (ko) 영상 신호 부호화/복호화 방법 및 이를 위한 장치
KR20180126382A (ko) 비디오 신호 처리 방법 및 장치
KR20180065953A (ko) 비디오 신호 처리 방법 및 장치
CN112930685A (zh) 视频信号的编码方法和解码方法及其装置
WO2020175913A1 (ko) 영상 신호 부호화/복호화 방법 및 이를 위한 장치
US11758176B2 (en) Image signal encoding/decoding method and non-transitory computer-readable medium
KR20200054104A (ko) 영상 신호 부호화/복호화 방법 및 이를 위한 장치
JP7459069B2 (ja) 映像信号符号化/復号化方法及びその装置
KR20200145742A (ko) 영상 신호 부호화/복호화 방법 및 이를 위한 장치
KR20180126384A (ko) 비디오 신호 처리 방법 및 장치
KR102619997B1 (ko) 영상 신호 부호화/복호화 방법 및 이를 위한 장치
WO2020175914A1 (ko) 영상 신호 부호화/복호화 방법 및 이를 위한 장치
KR20200122254A (ko) 영상 신호 부호화/복호화 방법 및 이를 위한 장치
KR20210030889A (ko) 영상 신호 부호화/복호화 방법 및 이를 위한 장치
KR20210023754A (ko) 영상 신호 부호화/복호화 방법 및 이를 위한 장치
KR20210077625A (ko) 영상 신호 부호화/복호화 방법 및 이를 위한 장치
KR20210042257A (ko) 영상 신호 부호화/복호화 방법 및 이를 위한 장치
KR20210022510A (ko) 영상 신호 부호화/복호화 방법 및 이를 위한 장치
KR20200145763A (ko) 영상 신호 부호화/복호화 방법 및 이를 위한 장치
KR20210123950A (ko) 비디오 신호 처리 방법 및 장치
KR20210061944A (ko) 영상 신호 부호화/복호화 방법 및 이를 위한 장치
KR20210111602A (ko) 비디오 신호 처리 방법 및 장치
KR20210082877A (ko) 영상 신호 부호화/복호화 방법 및 이를 위한 장치

Legal Events

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

Ref document number: 20762971

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20762971

Country of ref document: EP

Kind code of ref document: A1