WO2021045491A1 - Video encoding/decoding method and apparatus for performing intra prediction of chroma component, and method for transmitting bitstream - Google Patents

Video encoding/decoding method and apparatus for performing intra prediction of chroma component, and method for transmitting bitstream Download PDF

Info

Publication number
WO2021045491A1
WO2021045491A1 PCT/KR2020/011722 KR2020011722W WO2021045491A1 WO 2021045491 A1 WO2021045491 A1 WO 2021045491A1 KR 2020011722 W KR2020011722 W KR 2020011722W WO 2021045491 A1 WO2021045491 A1 WO 2021045491A1
Authority
WO
WIPO (PCT)
Prior art keywords
intra prediction
block
chroma
prediction mode
mode
Prior art date
Application number
PCT/KR2020/011722
Other languages
French (fr)
Korean (ko)
Inventor
허진
최장원
Original Assignee
엘지전자 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엘지전자 주식회사 filed Critical 엘지전자 주식회사
Publication of WO2021045491A1 publication Critical patent/WO2021045491A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/186Methods 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 a colour or a chrominance component
    • 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/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Definitions

  • the present disclosure relates to an image encoding/decoding method, an apparatus, and a method of transmitting a bitstream, and more particularly, an image encoding/decoding method, an apparatus and a method for performing an intra prediction process based on an MPM list for a current chroma block, and It relates to a method of transmitting a bitstream generated by an image encoding method/apparatus of the present disclosure.
  • An object of the present disclosure is to provide a video encoding/decoding method and apparatus with improved encoding/decoding efficiency.
  • an object of the present disclosure is to provide an image encoding/decoding method and apparatus for performing improved intra prediction on a chroma component.
  • an object of the present disclosure is to provide an image encoding/decoding method and apparatus for performing a unified intra prediction process based on an MPM list for a luma component and a chroma component.
  • an object of the present disclosure is to provide a method for transmitting a bitstream generated by an image encoding method or apparatus according to the present disclosure.
  • an object of the present disclosure is to provide a recording medium storing a bitstream generated by an image encoding method or apparatus according to the present disclosure.
  • an object of the present disclosure is to provide a recording medium storing a bitstream that is received and decoded by an image decoding apparatus according to the present disclosure and used for restoring an image.
  • An image decoding method includes decoding intra prediction mode information of a current chroma block from a bitstream, based on the intra prediction mode information and an intra prediction mode of a neighboring chroma block adjacent to the current chroma block. , Constructing a candidate list including intra prediction mode candidates of the current chroma block, determining an intra prediction mode of the current chroma block based on the intra prediction mode information and the candidate list, and the current chroma It may include generating a prediction block for the current chroma block by performing intra prediction based on the intra prediction mode of the block.
  • An image decoding apparatus includes a memory and at least one processor, wherein the at least one processor decodes intra prediction mode information of a current chroma block from a bitstream, and includes the intra prediction mode information and A candidate list including intra prediction mode candidates of the current chroma block is constructed based on an intra prediction mode of a neighboring chroma block adjacent to the current chroma block, and the current chroma is based on the intra prediction mode information and the candidate list.
  • a prediction block for the current chroma block may be generated by determining an intra prediction mode of a block and performing intra prediction based on the intra prediction mode of the current chroma block.
  • An image encoding method includes determining an intra prediction mode of a current chroma block, and performing intra prediction based on the intra prediction mode of the current chroma block, thereby providing a prediction block for the current chroma block.
  • a transmission method may transmit a bitstream generated by the image encoding apparatus or image encoding method of the present disclosure.
  • a computer-readable recording medium may store a bitstream generated by the image encoding method or image encoding apparatus of the present disclosure.
  • an image encoding/decoding method and apparatus with improved encoding/decoding efficiency may be provided.
  • an image encoding/decoding method and apparatus for performing improved intra prediction on a chroma component may be provided.
  • an image encoding/decoding method and apparatus for performing unified intra prediction based on an MPM list on a luma component and a chroma component may be provided.
  • a method for transmitting a bitstream generated by an image encoding method or an apparatus according to the present disclosure may be provided.
  • a recording medium storing a bitstream generated by an image encoding method or apparatus according to the present disclosure may be provided.
  • a recording medium may be provided that stores a bitstream that is received and decoded by the image decoding apparatus according to the present disclosure and used for image restoration.
  • FIG. 1 is a diagram schematically illustrating a video coding system to which an embodiment according to the present disclosure can be applied.
  • FIG. 2 is a schematic diagram of an image encoding apparatus to which an embodiment according to the present disclosure can be applied.
  • FIG. 3 is a schematic diagram of an image decoding apparatus to which an embodiment according to the present disclosure can be applied.
  • FIG. 4 is a flowchart illustrating a video/video encoding method based on intra prediction.
  • FIG. 5 is a diagram illustrating a configuration of an intra prediction unit according to the present disclosure.
  • FIG. 6 is a flowchart illustrating a video/video decoding method based on intra prediction.
  • FIG. 7 is a diagram illustrating an exemplary configuration of an intra prediction unit according to the present disclosure.
  • FIG. 8A is a diagram illustrating an intra prediction direction according to an embodiment of the present disclosure.
  • 8B is a diagram illustrating an intra prediction direction according to another embodiment of the present disclosure.
  • 9A to 9C are diagrams for explaining a relationship between a luma component block (a luma component array) and a chroma component block (a chroma component array) according to a chroma format.
  • FIG. 10 is a diagram illustrating an example of an SPS syntax including signaling information in a chroma format.
  • FIG. 11 is a diagram illustrating a predetermined position for deriving an intra prediction mode of a current chroma block in the case of a DM.
  • FIG. 12 is a diagram illustrating a size of a current chroma block according to a chroma format.
  • FIG. 13 is a flowchart illustrating an intra prediction mode signaling procedure in an image encoding apparatus according to an embodiment of the present disclosure.
  • FIG. 14 is a flowchart illustrating a procedure for determining an intra prediction mode in an image decoding apparatus according to an embodiment of the present disclosure.
  • 15 is a flowchart for describing a procedure for deriving an intra prediction mode in more detail.
  • 16 is a flowchart illustrating an intra prediction mode signaling procedure in an image encoding apparatus according to another embodiment of the present disclosure.
  • 17 is a diagram showing syntax of a slice header including slice type information.
  • FIG. 18 is a flowchart illustrating a procedure for determining an intra prediction mode in an image decoding apparatus according to another embodiment of the present disclosure.
  • 19 is a flowchart illustrating an intra prediction mode signaling procedure in an image encoding apparatus according to another embodiment of the present disclosure.
  • 20 is a flowchart illustrating a procedure for determining an intra prediction mode in an image decoding apparatus according to another embodiment of the present disclosure.
  • 21 is a flowchart illustrating an intra prediction mode signaling procedure in an image encoding apparatus according to another embodiment of the present disclosure.
  • 22 is a flowchart illustrating a procedure for determining an intra prediction mode in an image decoding apparatus according to another embodiment of the present disclosure.
  • FIG. 23 is a flowchart illustrating an intra prediction mode signaling procedure in an image encoding apparatus according to another embodiment of the present disclosure.
  • 24 is a flowchart illustrating a procedure for determining an intra prediction mode in an image decoding apparatus according to another embodiment of the present disclosure.
  • 25 is a diagram illustrating a content streaming system to which an embodiment according to the present disclosure can be applied.
  • a component when a component is said to be “connected”, “coupled” or “connected” with another component, it is not only a direct connection relationship, but also an indirect connection relationship in which another component exists in the middle. It can also include.
  • a certain component when a certain component “includes” or “have” another component, it means that other components may be further included rather than excluding other components unless otherwise stated. .
  • first and second are used only for the purpose of distinguishing one component from other components, and do not limit the order or importance of the components unless otherwise noted. Accordingly, within the scope of the present disclosure, a first component in one embodiment may be referred to as a second component in another embodiment, and similarly, a second component in one embodiment is referred to as a first component in another embodiment. It can also be called.
  • components that are distinguished from each other are intended to clearly describe each feature, and do not necessarily mean that the components are separated. That is, a plurality of components may be integrated into one hardware or software unit, or one component may be distributed to form a plurality of hardware or software units. Therefore, even if not stated otherwise, such integrated or distributed embodiments are also included in the scope of the present disclosure.
  • components described in various embodiments do not necessarily mean essential components, and some may be optional components. Accordingly, an embodiment consisting of a subset of components described in an embodiment is also included in the scope of the present disclosure. In addition, embodiments including other elements in addition to the elements described in the various embodiments are included in the scope of the present disclosure.
  • the present disclosure relates to encoding and decoding of an image, and terms used in the present disclosure may have a common meaning commonly used in the technical field to which the present disclosure belongs unless newly defined in the present disclosure.
  • a “picture” generally refers to a unit representing one image in a specific time period
  • a slice/tile is a coding unit constituting a part of a picture
  • one picture is one It may be composed of more than one slice/tile.
  • a slice/tile may include one or more coding tree units (CTU).
  • pixel or “pel” may mean a minimum unit constituting one picture (or image).
  • sample may be used as a term corresponding to a pixel.
  • a sample may generally represent a pixel or a value of a pixel, may represent only a pixel/pixel value of a luma component, or may represent only a pixel/pixel value of a chroma component.
  • unit may represent a basic unit of image processing.
  • the unit may include at least one of a specific area of a picture and information related to the corresponding area.
  • the unit may be used interchangeably with terms such as “sample array”, “block”, or “area” depending on the case.
  • the MxN block may include samples (or sample arrays) consisting of M columns and N rows, or a set (or array) of transform coefficients.
  • current block may mean one of “current coding block”, “current coding unit”, “coding object block”, “decoding object block”, or “processing object block”.
  • current block may mean “current prediction block” or “prediction target block”.
  • transformation inverse transformation
  • quantization inverse quantization
  • current block may mean “current transform block” or “transform target block”.
  • filtering is performed, “current block” may mean “block to be filtered”.
  • current block may mean a block including both a luma component block and a chroma component block or "a luma block of the current block” unless explicitly stated as a chroma block.
  • the luma component block of the current block may be explicitly expressed by including an explicit description of a luma component block, such as a "luma block” or a "current luma block”.
  • the chroma component block of the current block may be explicitly expressed by including an explicit description of a chroma component block such as a "chroma block” or a "current chroma block”.
  • FIG. 1 is a diagram schematically illustrating a video coding system to which an embodiment according to the present disclosure can be applied.
  • a video coding system may include an encoding device 10 and a decoding device 20.
  • the encoding device 10 may transmit the encoded video and/or image information or data in a file or streaming format to the decoding device 20 through a digital storage medium or a network.
  • the encoding apparatus 10 may include a video source generator 11, an encoding unit 12, and a transmission unit 13.
  • the decoding apparatus 20 may include a receiving unit 21, a decoding unit 22, and a rendering unit 23.
  • the encoder 12 may be referred to as a video/image encoder, and the decoder 22 may be referred to as a video/image decoder.
  • the transmission unit 13 may be included in the encoding unit 12.
  • the receiving unit 21 may be included in the decoding unit 22.
  • the rendering unit 23 may include a display unit, and the display unit may be configured as a separate device or an external component.
  • the video source generator 11 may acquire a video/image through a process of capturing, synthesizing, or generating a video/image.
  • the video source generator 11 may include a video/image capturing device and/or a video/image generating device.
  • the video/image capture device may include, for example, one or more cameras, a video/image archive including previously captured video/images, and the like.
  • the video/image generating device may include, for example, a computer, a tablet and a smartphone, and may (electronically) generate a video/image.
  • a virtual video/image may be generated through a computer or the like, and in this case, a video/image capturing process may be substituted as a process of generating related data.
  • the encoder 12 may encode an input video/image.
  • the encoder 12 may perform a series of procedures such as prediction, transformation, and quantization for compression and encoding efficiency.
  • the encoder 12 may output encoded data (coded video/image information) in the form of a bitstream.
  • the transmission unit 13 may transmit the encoded video/image information or data output in the form of a bitstream to the reception unit 21 of the decoding apparatus 20 through a digital storage medium or a network in a file or streaming form.
  • Digital storage media may include various storage media such as USB, SD, CD, DVD, Blu-ray, HDD, and SSD.
  • the transmission unit 13 may include an element for generating a media file through a predetermined file format, and may include an element for transmission through a broadcast/communication network.
  • the receiving unit 21 may extract/receive the bitstream from the storage medium or network and transmit it to the decoding unit 22.
  • the decoder 22 may decode the video/image by performing a series of procedures such as inverse quantization, inverse transformation, and prediction corresponding to the operation of the encoder 12.
  • the rendering unit 23 may render the decoded video/image.
  • the rendered video/image may be displayed through the display unit.
  • FIG. 2 is a schematic diagram of an image encoding apparatus to which an embodiment according to the present disclosure can be applied.
  • the image encoding apparatus 100 includes an image segmentation unit 110, a subtraction unit 115, a transformation unit 120, a quantization unit 130, an inverse quantization unit 140, and an inverse transformation unit ( 150), an addition unit 155, a filtering unit 160, a memory 170, an inter prediction unit 180, an intra prediction unit 185, and an entropy encoding unit 190.
  • the inter prediction unit 180 and the intra prediction unit 185 may be collectively referred to as a “prediction unit”.
  • the transform unit 120, the quantization unit 130, the inverse quantization unit 140, and the inverse transform unit 150 may be included in a residual processing unit.
  • the residual processing unit may further include a subtraction unit 115.
  • All or at least some of the plurality of constituent units constituting the image encoding apparatus 100 may be implemented as one hardware component (eg, an encoder or a processor) according to embodiments.
  • the memory 170 may include a decoded picture buffer (DPB), and may be implemented by a digital storage medium.
  • DPB decoded picture buffer
  • the image segmentation unit 110 may divide an input image (or picture, frame) input to the image encoding apparatus 100 into one or more processing units.
  • the processing unit may be referred to as a coding unit (CU).
  • the coding unit is a coding tree unit (CTU) or a largest coding unit (LCU) recursively according to a QT/BT/TT (Quad-tree/binary-tree/ternary-tree) structure ( It can be obtained by dividing recursively.
  • one coding unit may be divided into a plurality of coding units of a deeper depth based on a quad tree structure, a binary tree structure, and/or a ternary tree structure.
  • a quad tree structure may be applied first and a binary tree structure and/or a ternary tree structure may be applied later.
  • the coding procedure according to the present disclosure may be performed based on the final coding unit that is no longer divided.
  • the largest coding unit may be directly used as the final coding unit, or a coding unit of a lower depth obtained by dividing the largest coding unit may be used as the final cornet unit.
  • the coding procedure may include a procedure such as prediction, transformation, and/or restoration, which will be described later.
  • the processing unit of the coding procedure may be a prediction unit (PU) or a transform unit (TU).
  • the prediction unit and the transform unit may be divided or partitioned from the final coding unit, respectively.
  • the prediction unit may be a unit of sample prediction
  • the transform unit may be a unit for inducing a transform coefficient and/or a unit for inducing a residual signal from the transform coefficient.
  • the prediction unit (inter prediction unit 180 or intra prediction unit 185) performs prediction on a block to be processed (current block), and generates a predicted block including prediction samples for the current block. Can be generated.
  • the prediction unit may determine whether intra prediction or inter prediction is applied in units of a current block or CU.
  • the prediction unit may generate various information on prediction of the current block and transmit it to the entropy encoding unit 190.
  • the information on prediction may be encoded by the entropy encoding unit 190 and output in the form of a bitstream.
  • the intra prediction unit 185 may predict the current block by referring to samples in the current picture.
  • the referenced samples may be located in a neighborhood of the current block or may be located away from each other according to an intra prediction mode and/or an intra prediction technique.
  • the intra prediction modes may include a plurality of non-directional modes and a plurality of directional modes.
  • the non-directional mode may include, for example, a planar mode and a DC mode.
  • the directional mode may include, for example, 33 directional prediction modes or 65 directional prediction modes, depending on the degree of detail of the prediction direction. However, this is an example, and more or less directional prediction modes may be used depending on the setting.
  • the intra prediction unit 185 may determine a prediction mode applied to the current block by using the prediction mode applied to the neighboring block.
  • the inter prediction unit 180 may derive a predicted block for the current block based on a reference block (reference sample array) specified by a motion vector on the reference picture.
  • motion information may be predicted in units of blocks, subblocks, or samples based on a correlation between motion information between a neighboring block and a current block.
  • the motion information may include a motion vector and a reference picture index.
  • the motion information may further include inter prediction direction (L0 prediction, L1 prediction, Bi prediction, etc.) information.
  • the neighboring block may include a spatial neighboring block existing in the current picture and a temporal neighboring block existing in the reference picture.
  • the reference picture including the reference block and the reference picture including the temporal neighboring block may be the same or different from each other.
  • the temporal neighboring block may be referred to by a name such as a collocated reference block and a collocated CU (colCU).
  • a reference picture including the temporal neighboring block may be referred to as a collocated picture (colPic).
  • the inter prediction unit 180 constructs a motion information candidate list based on neighboring blocks, and provides information indicating which candidate is used to derive a motion vector and/or a reference picture index of the current block. Can be generated. Inter prediction may be performed based on various prediction modes.
  • the inter prediction unit 180 may use motion information of a neighboring block as motion information of a current block.
  • a residual signal may not be transmitted.
  • MVP motion vector prediction
  • a motion vector of a neighboring block is used as a motion vector predictor, and an indicator for a motion vector difference and a motion vector predictor ( indicator) to signal the motion vector of the current block.
  • the motion vector difference may mean a difference between a motion vector of a current block and a motion vector predictor.
  • the prediction unit may generate a prediction signal based on various prediction methods and/or prediction techniques to be described later.
  • the prediction unit may apply intra prediction or inter prediction for prediction of the current block, and may simultaneously apply intra prediction and inter prediction.
  • a prediction method in which intra prediction and inter prediction are applied simultaneously for prediction of the current block may be referred to as combined inter and intra prediction (CIIP).
  • the prediction unit may perform intra block copy (IBC) for prediction of the current block.
  • the intra block copy may be used for content image/movie coding such as games, such as, for example, screen content coding (SCC).
  • IBC is a method of predicting a current block by using a reference block in a current picture at a distance from the current block by a predetermined distance. When IBC is applied, the position of the reference block in the current picture may be encoded as a vector (block vector) corresponding to the predetermined distance.
  • the prediction signal generated through the prediction unit may be used to generate a reconstructed signal or may be used to generate a residual signal.
  • the subtraction unit 115 subtracts the prediction signal (predicted block, prediction sample array) output from the prediction unit from the input image signal (original block, original sample array), and subtracts a residual signal (remaining block, residual sample array). ) Can be created.
  • the generated residual signal may be transmitted to the converter 120.
  • the transform unit 120 may generate transform coefficients by applying a transform technique to the residual signal.
  • the transformation technique uses at least one of DCT (Discrete Cosine Transform), DST (Discrete Sine Transform), KLT (Karhunen-Loeve Transform), GBT (Graph-Based Transform), or CNT (Conditionally Non-linear Transform).
  • DCT Discrete Cosine Transform
  • DST Discrete Sine Transform
  • KLT Kerhunen-Loeve Transform
  • GBT Graph-Based Transform
  • CNT Conditionally Non-linear Transform
  • GBT refers to the transformation obtained from this graph when the relationship information between pixels is expressed in a graph.
  • CNT refers to a transformation obtained based on generating a prediction signal using all previously reconstructed pixels.
  • the conversion process may be applied to a block of pixels having the same size of a square, or may be applied to a block of a variable size other than a square.
  • the quantization unit 130 may quantize the transform coefficients and transmit the quantization to the entropy encoding unit 190.
  • the entropy encoding unit 190 may encode a quantized signal (information on quantized transform coefficients) and output it as a bitstream. Information about the quantized transform coefficients may be called residual information.
  • the quantization unit 130 may rearrange the quantized transform coefficients in a block form into a one-dimensional vector form based on a coefficient scan order, and the quantized transform coefficients in the form of the one-dimensional vector It is also possible to generate information about transform coefficients.
  • the entropy encoding unit 190 may perform various encoding methods such as exponential Golomb, context-adaptive variable length coding (CAVLC), and context-adaptive binary arithmetic coding (CABAC).
  • the entropy encoding unit 190 may encode together or separately information necessary for video/image restoration (eg, values of syntax elements) in addition to quantized transform coefficients.
  • the encoded information (e.g. encoded video/video information) may be transmitted or stored in a bitstream format in units of network abstraction layer (NAL) units.
  • the video/video information may further include information on various parameter sets, such as an adaptation parameter set (APS), a picture parameter set (PPS), a sequence parameter set (SPS), or a video parameter set (VPS).
  • the video/video information may further include general constraint information.
  • the signaling information, transmitted information, and/or syntax elements mentioned in the present disclosure may be encoded through the above-described encoding procedure and included in the bitstream.
  • the bitstream may be transmitted through a network or may be stored in a digital storage medium.
  • the network may include a broadcasting network and/or a communication network
  • the digital storage medium may include various storage media such as USB, SD, CD, DVD, Blu-ray, HDD, and SSD.
  • a transmission unit (not shown) for transmitting the signal output from the entropy encoding unit 190 and/or a storage unit (not shown) for storing may be provided as an internal/external element of the image encoding apparatus 100, or transmission The unit may be provided as a component of the entropy encoding unit 190.
  • the quantized transform coefficients output from the quantization unit 130 may be used to generate a residual signal.
  • a residual signal residual block or residual samples
  • inverse quantization and inverse transform residual transforms
  • the addition unit 155 adds the reconstructed residual signal to the prediction signal output from the inter prediction unit 180 or the intra prediction unit 185 to obtain a reconstructed signal (a reconstructed picture, a reconstructed block, and a reconstructed sample array). Can be generated.
  • a reconstructed signal (a reconstructed picture, a reconstructed block, and a reconstructed sample array).
  • the predicted block may be used as a reconstructed block.
  • the addition unit 155 may be referred to as a restoration unit or a restoration block generation unit.
  • the generated reconstructed signal may be used for intra prediction of the next processing target block in the current picture, and may be used for inter prediction of the next picture through filtering as described later.
  • LMCS luma mapping with chroma scaling
  • the filtering unit 160 may improve subjective/objective image quality by applying filtering to the reconstructed signal.
  • the filtering unit 160 may apply various filtering methods to the reconstructed picture to generate a modified reconstructed picture, and the modified reconstructed picture may be converted to the memory 170, specifically, the DPB of the memory 170. Can be saved on.
  • the various filtering methods may include, for example, deblocking filtering, sample adaptive offset, adaptive loop filter, bilateral filter, and the like.
  • the filtering unit 160 may generate various information about filtering and transmit it to the entropy encoding unit 190 as described later in the description of each filtering method. Information about filtering may be encoded by the entropy encoding unit 190 and output in the form of a bitstream.
  • the modified reconstructed picture transmitted to the memory 170 may be used as a reference picture in the inter prediction unit 180.
  • the image encoding apparatus 100 may avoid prediction mismatch between the image encoding apparatus 100 and the image decoding apparatus, and may improve encoding efficiency.
  • the DPB in the memory 170 may store a reconstructed picture modified to be used as a reference picture in the inter prediction unit 180.
  • the memory 170 may store motion information of a block from which motion information in a current picture is derived (or encoded) and/or motion information of blocks in a picture that have already been reconstructed.
  • the stored motion information may be transmitted to the inter prediction unit 180 in order to be used as motion information of a spatial neighboring block or motion information of a temporal neighboring block.
  • the memory 170 may store reconstructed samples of reconstructed blocks in the current picture, and may be transmitted to the intra prediction unit 185.
  • FIG. 3 is a schematic diagram of an image decoding apparatus to which an embodiment according to the present disclosure can be applied.
  • the image decoding apparatus 200 includes an entropy decoding unit 210, an inverse quantization unit 220, an inverse transform unit 230, an addition unit 235, a filtering unit 240, and a memory 250. ), an inter prediction unit 260 and an intra prediction unit 265.
  • the inter prediction unit 260 and the intra prediction unit 265 may be collectively referred to as a “prediction unit”.
  • the inverse quantization unit 220 and the inverse transform unit 230 may be included in the residual processing unit.
  • All or at least some of the plurality of constituent units constituting the image decoding apparatus 200 may be implemented as one hardware component (eg, a decoder or a processor) according to embodiments.
  • the memory 170 may include a DPB, and may be implemented by a digital storage medium.
  • the image decoding apparatus 200 receiving a bitstream including video/image information may reconstruct an image by performing a process corresponding to the process performed by the image encoding apparatus 100 of FIG. 2.
  • the image decoding apparatus 200 may perform decoding using a processing unit applied by the image encoding apparatus.
  • the processing unit of decoding may be, for example, a coding unit.
  • the coding unit may be a coding tree unit or may be obtained by dividing the largest coding unit.
  • the reconstructed image signal decoded and output through the image decoding apparatus 200 may be reproduced through a reproducing apparatus (not shown).
  • the image decoding apparatus 200 may receive a signal output from the image encoding apparatus of FIG. 2 in the form of a bitstream.
  • the received signal may be decoded through the entropy decoding unit 210.
  • the entropy decoding unit 210 may parse the bitstream to derive information (eg, video/video information) necessary for image restoration (or picture restoration).
  • the video/video information may further include information on various parameter sets, such as an adaptation parameter set (APS), a picture parameter set (PPS), a sequence parameter set (SPS), or a video parameter set (VPS).
  • the video/video information may further include general constraint information.
  • the image decoding apparatus may additionally use information on the parameter set and/or the general restriction information to decode an image.
  • the signaling information, received information, and/or syntax elements mentioned in the present disclosure may be obtained from the bitstream by decoding through the decoding procedure.
  • the entropy decoding unit 210 decodes information in a bitstream based on a coding method such as exponential Golomb coding, CAVLC, or CABAC, and a value of a syntax element required for image restoration, a quantized value of a transform coefficient related to a residual Can be printed.
  • the CABAC entropy decoding method a bin corresponding to each syntax element is received in a bitstream, and information on the syntax element to be decoded, decoding information of a neighboring block and a block to be decoded, or information of a symbol/bin decoded in a previous step
  • the context model is determined by using and, according to the determined context model, the probability of occurrence of bins is predicted to perform arithmetic decoding of the bins to generate a symbol corresponding to the value of each syntax element.
  • the CABAC entropy decoding method may update the context model using information of the decoded symbol/bin for the context model of the next symbol/bin after the context model is determined.
  • information about prediction is provided to the prediction unit (inter prediction unit 260 and intra prediction unit 265), and the register on which entropy decoding is performed by the entropy decoding unit 210
  • the dual value that is, quantized transform coefficients and related parameter information may be input to the inverse quantization unit 220.
  • information about filtering among information decoded by the entropy decoding unit 210 may be provided to the filtering unit 240.
  • a receiving unit for receiving a signal output from the image encoding device may be additionally provided as an inner/outer element of the image decoding device 200, or the receiving unit is provided as a component of the entropy decoding unit 210 It could be.
  • the video decoding apparatus may include an information decoder (video/video/picture information decoder) and/or a sample decoder (video/video/picture sample decoder).
  • the information decoder may include an entropy decoding unit 210, and the sample decoder includes an inverse quantization unit 220, an inverse transform unit 230, an addition unit 235, a filtering unit 240, a memory 250, It may include at least one of the inter prediction unit 260 and the intra prediction unit 265.
  • the inverse quantization unit 220 may inverse quantize the quantized transform coefficients and output transform coefficients.
  • the inverse quantization unit 220 may rearrange the quantized transform coefficients in a two-dimensional block shape. In this case, the rearrangement may be performed based on a coefficient scan order performed by the image encoding apparatus.
  • the inverse quantization unit 220 may perform inverse quantization on quantized transform coefficients using a quantization parameter (eg, quantization step size information) and obtain transform coefficients.
  • a quantization parameter eg, quantization step size information
  • the inverse transform unit 230 may inverse transform the transform coefficients to obtain a residual signal (residual block, residual sample array).
  • the prediction unit may perform prediction on the current block and generate a predicted block including prediction samples for the current block.
  • the prediction unit may determine whether intra prediction or inter prediction is applied to the current block based on the prediction information output from the entropy decoding unit 210, and determine a specific intra/inter prediction mode (prediction technique). I can.
  • the prediction unit can generate the prediction signal based on various prediction methods (techniques) to be described later.
  • the intra prediction unit 265 may predict the current block by referring to samples in the current picture.
  • the description of the intra prediction unit 185 may be equally applied to the intra prediction unit 265.
  • the inter prediction unit 260 may derive a predicted block for the current block based on a reference block (reference sample array) specified by a motion vector on the reference picture.
  • motion information may be predicted in units of blocks, subblocks, or samples based on a correlation between motion information between a neighboring block and a current block.
  • the motion information may include a motion vector and a reference picture index.
  • the motion information may further include inter prediction direction (L0 prediction, L1 prediction, Bi prediction, etc.) information.
  • the neighboring block may include a spatial neighboring block existing in the current picture and a temporal neighboring block existing in the reference picture.
  • the inter prediction unit 260 may construct a motion information candidate list based on neighboring blocks, and derive a motion vector and/or a reference picture index of the current block based on the received candidate selection information.
  • Inter prediction may be performed based on various prediction modes (techniques), and the information on prediction may include information indicating a mode (technique) of inter prediction for the current block.
  • the addition unit 235 is reconstructed by adding the obtained residual signal to the prediction signal (predicted block, prediction sample array) output from the prediction unit (including the inter prediction unit 260 and/or the intra prediction unit 265).
  • a signal (restored picture, reconstructed block, reconstructed sample array) can be generated.
  • the description of the addition unit 155 may be equally applied to the addition unit 235.
  • LMCS luma mapping with chroma scaling
  • the filtering unit 240 may improve subjective/objective image quality by applying filtering to the reconstructed signal.
  • the filtering unit 240 may apply various filtering methods to the reconstructed picture to generate a modified reconstructed picture, and the modified reconstructed picture may be converted to the memory 250, specifically, the DPB of the memory 250. Can be saved on.
  • the various filtering methods may include, for example, deblocking filtering, sample adaptive offset, adaptive loop filter, bilateral filter, and the like.
  • the reconstructed picture (modified) stored in the DPB of the memory 250 may be used as a reference picture in the inter prediction unit 260.
  • the memory 250 may store motion information of a block from which motion information in a current picture is derived (or decoded) and/or motion information of blocks in a picture that have already been reconstructed.
  • the stored motion information may be transmitted to the inter prediction unit 260 to be used as motion information of a spatial neighboring block or motion information of a temporal neighboring block.
  • the memory 250 may store reconstructed samples of reconstructed blocks in the current picture, and may be transmitted to the intra prediction unit 265.
  • embodiments described in the filtering unit 160, the inter prediction unit 180, and the intra prediction unit 185 of the image encoding apparatus 100 are respectively the filtering unit 240 of the image decoding apparatus 200, The same or corresponding to the inter prediction unit 260 and the intra prediction unit 265 may be applied.
  • Intra prediction may represent prediction of generating prediction samples for a current block based on reference samples in a picture (hereinafter, referred to as a current picture) to which the current block belongs.
  • a current picture a picture to which the current block belongs.
  • neighboring reference samples to be used for intra prediction of the current block may be derived.
  • the neighboring reference samples of the current block are a sample adjacent to the left boundary of the current block of size nWxnH, a total of 2xnH samples adjacent to the bottom-left, and a sample adjacent to the top boundary of the current block. And a total of 2xnW samples adjacent to the top-right side and one sample adjacent to the top-left side of the current block.
  • the peripheral reference samples of the current block may include a plurality of columns of upper peripheral samples and a plurality of rows of left peripheral samples.
  • the neighboring reference samples of the current block are a total of nH samples adjacent to the right boundary of the current block of size nWxnH, a total of nW samples adjacent to the bottom boundary of the current block, and the lower right side of the current block. It may include one sample adjacent to (bottom-right).
  • the decoder may construct neighboring reference samples to be used for prediction by substituting samples that are not available with available samples.
  • neighboring reference samples to be used for prediction may be configured through interpolation of available samples.
  • a prediction sample can be derived based on an average or interpolation of neighboring reference samples of the current block, and (ii) neighboring reference samples of the current block Among them, the prediction sample may be derived based on a reference sample existing in a specific (prediction) direction with respect to the prediction sample.
  • it may be called a non-directional mode or a non-angular mode
  • it may be called a directional mode or an angular mode.
  • LIP linear interpolation intra prediction
  • chroma prediction samples may be generated based on luma samples using a linear model. This case may be called LM (Linear Model) mode.
  • LM Linear Model
  • a temporary prediction sample of the current block is derived based on the filtered surrounding reference samples, and at least one derived according to the intra prediction mode among the existing surrounding reference samples, that is, unfiltered surrounding reference samples.
  • a prediction sample of the current block may be derived by weighted summation of a reference sample and the temporary prediction sample. This case may be called PDPC (Position dependent intra prediction).
  • a reference sample line having the highest prediction accuracy among the neighboring multi-reference sample lines of the current block may be selected, and a prediction sample may be derived using a reference sample positioned in the prediction direction from the corresponding line.
  • information on the used reference sample line eg, intra_luma_ref_idx
  • MRL multi-reference line intra prediction
  • the current block may be divided into vertical or horizontal subpartitions, and intra prediction may be performed for each subpartition based on the same intra prediction mode.
  • neighboring reference samples for intra prediction may be derived for each subpartition. That is, the reconstructed sample of the previous sub-partition in the encoding/decoding order may be used as a neighboring reference sample of the current sub-partition.
  • the intra prediction mode for the current block is equally applied to the subpartitions, but the intra prediction performance may be improved in some cases by deriving and using neighboring reference samples in units of the subpartition.
  • This prediction method may be called intra sub-partitions (ISP) or ISP-based intra prediction.
  • the intra prediction technique may include at least one of the aforementioned LIP, LM, PDPC, MRL, and ISP. Meanwhile, post-processing filtering may be performed on the derived prediction samples as necessary.
  • the intra prediction procedure may include an intra prediction mode/type determination step, a neighbor reference sample derivation step, and an intra prediction mode/type-based prediction sample derivation step. Also, if necessary, a post-filtering step may be performed on the derived prediction samples.
  • FIG. 4 is a flowchart illustrating a video/video encoding method based on intra prediction.
  • the encoding method of FIG. 4 may be performed by the video encoding apparatus of FIG. 2. Specifically, step S410 may be performed by the intra prediction unit 185, and step S420 may be performed by the residual processing unit. Specifically, step S420 may be performed by the subtraction unit 115. Step S430 may be performed by the entropy encoding unit 190.
  • the prediction information of step S430 may be derived by the intra prediction unit 185, and the residual information of step S430 may be derived by the residual processing unit.
  • the residual information is information on the residual samples.
  • the residual information may include information on quantized transform coefficients for the residual samples.
  • the residual samples may be derived as transform coefficients through the transform unit 120 of the image encoding apparatus, and the transform coefficients may be derived as quantized transform coefficients through the quantization unit 130.
  • Information on the quantized transform coefficients may be encoded by the entropy encoding unit 190 through a residual coding procedure.
  • the image encoding apparatus may perform intra prediction on the current block (S410).
  • the video encoding apparatus determines the intra prediction mode/type for the current block, derives neighboring reference samples of the current block, and then generates prediction samples in the current block based on the intra prediction mode/type and the neighboring reference samples. can do.
  • the procedure of determining the intra prediction mode/type, deriving neighboring reference samples, and generating prediction samples may be performed simultaneously, or one procedure may be performed before the other procedure.
  • FIG. 5 is a diagram illustrating a configuration of an intra prediction unit according to the present disclosure.
  • the intra prediction unit 185 of the video encoding apparatus may include an intra prediction mode/type determination unit 186, a reference sample derivation unit 187, and/or a prediction sample derivation unit 188.
  • the intra prediction mode/type determiner 186 may determine an intra prediction mode/type for the current block.
  • the reference sample derivation unit 187 may derive neighboring reference samples of the current block.
  • the prediction sample derivation unit 188 may derive prediction samples of the current block.
  • the intra prediction unit 185 may further include a prediction sample filter unit (not shown).
  • the image encoding apparatus may determine a mode/type applied to the current block from among a plurality of intra prediction modes/types.
  • the video encoding apparatus may compare RD costs for the intra prediction modes/types and determine an optimal intra prediction mode/type for the current block.
  • the image encoding apparatus may perform a prediction sample filtering procedure.
  • Predictive sample filtering may be referred to as post filtering. Some or all of the prediction samples may be filtered by the prediction sample filtering procedure. In some cases, the prediction sample filtering procedure may be omitted.
  • the apparatus for encoding an image may generate residual samples for the current block based on prediction samples or filtered prediction samples (S420).
  • the image encoding apparatus may derive the residual samples by subtracting the prediction samples from original samples of the current block. That is, the image encoding apparatus may derive the residual sample value by subtracting the corresponding predicted sample value from the original sample value.
  • the image encoding apparatus may encode image information including information about the intra prediction (prediction information) and residual information about the residual samples (S430).
  • the prediction information may include intra prediction mode information and/or intra prediction technique information.
  • the image encoding apparatus may output the encoded image information in the form of a bitstream.
  • the output bitstream may be delivered to an image decoding apparatus through a storage medium or a network.
  • the residual information may include a residual coding syntax to be described later.
  • the image encoding apparatus may transform/quantize the residual samples to derive quantized transform coefficients.
  • the residual information may include information on the quantized transform coefficients.
  • the image encoding apparatus may generate a reconstructed picture (including reconstructed samples and a reconstructed block). To this end, the image encoding apparatus may perform inverse quantization/inverse transformation on the quantized transform coefficients again to derive (modified) residual samples. The reason why the residual samples are transformed/quantized and then inverse quantized/inverse transformed is performed to derive residual samples that are the same as the residual samples derived from the image decoding apparatus.
  • the image encoding apparatus may generate a reconstructed block including reconstructed samples for the current block based on the prediction samples and the (modified) residual samples. A reconstructed picture for the current picture may be generated based on the reconstructed block. As described above, an in-loop filtering procedure or the like may be further applied to the reconstructed picture.
  • FIG. 6 is a flowchart illustrating a video/video decoding method based on intra prediction.
  • the image decoding apparatus may perform an operation corresponding to an operation performed by the image encoding apparatus.
  • the decoding method of FIG. 6 may be performed by the video decoding apparatus of FIG. 3.
  • Steps S610 to S630 may be performed by the intra prediction unit 265, and the prediction information of step S610 and the residual information of step S640 may be obtained from the bitstream by the entropy decoding unit 210.
  • the residual processing unit of the image decoding apparatus may derive residual samples for the current block based on the residual information (S640).
  • the inverse quantization unit 220 of the residual processing unit derives transform coefficients by performing inverse quantization based on the quantized transform coefficients derived based on the residual information
  • the inverse transform unit of the residual processing unit ( 230) may derive residual samples for the current block by performing inverse transform on the transform coefficients.
  • Step S650 may be performed by the addition unit 235 or the restoration unit.
  • the image decoding apparatus may derive an intra prediction mode/type for the current block based on the received prediction information (intra prediction mode/type information) (S610). Also, the image decoding apparatus may derive neighboring reference samples of the current block (S620). The image decoding apparatus may generate prediction samples in the current block based on the intra prediction mode/type and the neighboring reference samples (S630). In this case, the image decoding apparatus may perform a prediction sample filtering procedure. Predictive sample filtering may be referred to as post filtering. Some or all of the prediction samples may be filtered by the prediction sample filtering procedure. In some cases, the prediction sample filtering procedure may be omitted.
  • the image decoding apparatus may generate residual samples for the current block based on the received residual information (S640).
  • the image decoding apparatus may generate reconstructed samples for the current block based on the prediction samples and the residual samples, and derive a reconstructed block including the reconstructed samples (S650).
  • a reconstructed picture for the current picture may be generated based on the reconstructed block.
  • an in-loop filtering procedure or the like may be further applied to the reconstructed picture.
  • FIG. 7 is a diagram illustrating an exemplary configuration of an intra prediction unit according to the present disclosure.
  • the intra prediction unit 265 of the image decoding apparatus may include an intra prediction mode/type determination unit 266, a reference sample derivation unit 267, and a prediction sample derivation unit 268. .
  • the intra prediction mode/type determiner 266 determines an intra prediction mode/type for the current block based on intra prediction mode/type information generated and signaled by the intra prediction mode/type determiner 186 of the image encoding apparatus.
  • the reference sample deriving unit 266 may derive neighboring reference samples of the current block from the reconstructed reference region in the current picture.
  • the prediction sample derivation unit 268 may derive prediction samples of the current block.
  • the intra prediction unit 265 may further include a prediction sample filter unit (not shown).
  • the intra prediction mode information may include flag information (eg intra_luma_mpm_flag and/or intra_chroma_mpm_flag) indicating whether a most probable mode (MPM) is applied to the current block or a remaining mode is applied, for example. And, when the MPM is applied to the current block, the intra prediction mode information may further include index information (eg intra_luma_mpm_idx and/or intra_chroma_mpm_idx) indicating one of intra prediction mode candidates (MPM candidates).
  • the intra prediction mode candidates (MPM candidates) may be composed of an MPM candidate list or an MPM list.
  • the intra prediction mode information includes remaining mode information (eg intra_luma_mpm_remainder and/or intra_luma_mpm_remainder) indicating one of the remaining intra prediction modes excluding the intra prediction mode candidates (MPM candidates).
  • intra_chroma_mpm_remainder may be further included.
  • the video decoding apparatus may determine an intra prediction mode of the current block based on the intra prediction mode information.
  • the MPM candidate modes may include an intra prediction mode and additional candidate modes of a neighboring block (e.g. a left neighboring block and/or an upper neighboring block) of the current block.
  • FIG. 8A is a diagram illustrating an intra prediction direction according to an embodiment of the present disclosure.
  • the intra prediction mode may include two non-directional intra prediction modes and 33 directional intra prediction modes.
  • the non-directional intra prediction modes may include a planar mode and a DC mode, and the directional intra prediction modes may include intra prediction modes 2 to 34.
  • the planar intra prediction mode may be referred to as a planner mode, and the DC intra prediction mode may be referred to as a DC mode.
  • the intra prediction mode includes two non-directional intra prediction modes and 65 extended directional intra prediction. It can include modes.
  • the non-directional intra prediction modes may include a planar mode and a DC mode, and the extended directional intra prediction modes may include intra prediction modes 2 to 66.
  • the intra prediction mode can be applied to blocks of all sizes, and can be applied to both a luma component (a luma block) and a chroma component (a chroma block).
  • the intra prediction mode may include two non-directional intra prediction modes and 129 directional intra prediction modes.
  • the non-directional intra prediction modes may include a planar mode and a DC mode, and the directional intra prediction modes may include 2 to 130 intra prediction modes.
  • the intra prediction mode may further include a cross-component linear model (CCLM) mode for chroma samples in addition to the aforementioned intra prediction modes.
  • CCLM cross-component linear model
  • the CCLM mode can be divided into L_CCLM, T_CCLM, and LT_CCLM depending on whether left samples are considered, upper samples are considered, or both are considered to derive LM parameters, and can be applied only to a chroma component.
  • the intra prediction mode may be indexed, for example, as shown in Table 1 below.
  • a mode number of a planner mode may be 0, and a mode number of a DC mode may be 1.
  • mode numbers of the plurality of directional intra prediction modes may be 2 to 66.
  • mode numbers of the LT_CCLM mode, the L_CCLM mode, and the T_CCLM mode may be 81 to 83.
  • an intra prediction mode in order to capture an arbitrary edge direction presented in a natural video, includes 93 directions along with two non-directional intra prediction modes. It may include an intra prediction mode. Non-directional intra prediction modes may include planar mode and DC mode.
  • the directional intra prediction mode may include an intra prediction mode composed of times 2 to 80 and -1 to -14 as indicated by the arrow of FIG. 8B.
  • the planar mode may be indicated as INTRA_PLANAR, and the DC mode may be indicated as INTRA_DC.
  • the directional intra prediction mode may be expressed as INTRA_ANGULAR-14 to INTRA_ANGULAR-1, and INTRA_ANGULAR2 to INTRA_ANGULAR80.
  • the intra prediction technique information may be implemented in various forms.
  • the intra prediction technique information may include intra prediction technique index information indicating one of a plurality of intra prediction techniques.
  • the intra prediction technique information includes reference sample line information (eg intra_luma_ref_idx) indicating whether the MRL is applied to the current block and, if applied, a reference sample line (eg intra_luma_ref_idx), and the ISP is applied to the current block.
  • ISP flag information indicating whether it is applied (eg intra_subpartitions_mode_flag), ISP type information indicating the split type of subpartitions when the ISP is applied (eg intra_subpartitions_split_flag), flag information indicating whether or not PDPC is applied, or indicating whether the LIP is applied. It may include at least one of flag information.
  • the ISP flag information may be referred to as an ISP application indicator.
  • the intra prediction mode information and/or the intra prediction technique information may be encoded/decoded using the coding method described in the present disclosure.
  • the intra prediction mode information and/or the intra prediction method information may be encoded/decoded through entropy coding (e.g. CABAC, CAVLC) based on a truncated (rice) binary code.
  • entropy coding e.g. CABAC, CAVLC
  • 9A to 9C are diagrams for explaining a relationship between a luma component block (a luma component array) and a chroma component block (a chroma component array) according to a chroma format.
  • the source or coded picture/video may include a luma component (Y) block and two chroma component (cb, cr) blocks. That is, one pixel of a picture/image may include a luma sample and two chroma samples cb and cr.
  • the chroma format may represent a configuration format of a luma sample and a chroma sample (cb, cr), and may also be called a color format.
  • the chroma format may be predetermined or may be signaled adaptively. For example, the chroma format may be signaled based on at least one of chroma_format_idc and separate_colour_plane_flag as shown in Table 2.
  • chroma_format_idc is information indicating a format of a luma sample and a chroma sample corresponding thereto
  • separate_colour_plane_flag indicates whether three color components (Y, cb, cr) are separately encoded in a 4:4:4 chroma format.
  • chroma_format_idc when chroma_format_idc is 0, the chroma format corresponds to monochrome, and the current block does not include a chroma component block and includes only a luma component block.
  • chroma_format_idc when chroma_format_idc is 1, the chroma format corresponds to a 4:2:0 chroma format, and the width and height of the chroma component block correspond to half of the width and height of the luma component block, respectively.
  • 9A is a diagram showing a positional relationship between a luma sample and a chroma sample in a 4:2:0 chroma format.
  • the chroma format corresponds to the 4:2:2 chroma format
  • the width of the chroma component block is half the width of the luma component block
  • the height of the chroma component block is the luma component block. Is equal to the height of 9B is a diagram showing a positional relationship between a luma sample and a chroma sample in a 4:2:2 chroma format.
  • chroma_format_idc 3
  • the chroma format corresponds to a 4:4:4 chroma format
  • the width and height of the chroma component block are the same as the width and height of the luma component block, respectively.
  • 9C is a diagram showing a positional relationship between a luma sample and a chroma sample in a 4:4:4 chroma format.
  • SubWidthC and SubHeightC represent the ratio between the luma sample and the chroma sample.
  • the width and height of the luma component block are CbWidth and CbHeight, respectively
  • the width and height of the corresponding chroma component block may be derived as (CbWidth/SubwidthC) and (CbHeight/SubHeightC), respectively.
  • FIG. 10 is a diagram illustrating an example of an SPS syntax including signaling information in a chroma format. As shown in FIG. 10, chroma_format_idc and separate_colour_plane_flag may be signaled through SPS, which is a high-level syntax.
  • intra prediction When intra prediction is performed on the current block, prediction on a luma component block (luma block) of the current block and prediction on a chroma component block (chroma block) may be performed.
  • the intra prediction mode for the chroma block is It can be set separately from the intra prediction mode for the luma block.
  • an intra prediction mode for a chroma block may be indicated based on intra chroma prediction mode information, and the intra chroma prediction mode information may be signaled in the form of an intra_chroma_pred_mode syntax element.
  • the intra-chroma prediction mode information includes one of a planar mode, a DC mode, a vertical mode, a horizontal mode, a derived mode (DM), and a cross-component linear model (CCLM) mode.
  • the planar mode may indicate a 0th intra prediction mode
  • the DC mode may indicate a 1st intra prediction mode
  • the vertical mode may indicate a 26th intra prediction mode
  • the horizontal mode may indicate a 10th intra prediction mode.
  • DM can also be called direct mode.
  • CCLM may be referred to as a linear model (LM).
  • DM and CCLM are dependent intra prediction modes for predicting a chroma block using information of a luma block.
  • the DM may represent a mode in which an intra prediction mode identical to an intra prediction mode for the luma component is applied as an intra prediction mode for the chroma component.
  • the CCLM subsamples the reconstructed samples of the luma block in the process of generating the prediction block for the chroma block, and then applies CCLM parameters ⁇ and ⁇ to the subsampled samples to be derived as shown in Equation 1. It may represent an intra prediction mode in which samples are used as prediction samples of the chroma block.
  • pred c (i,j) may represent a predicted sample of (i,j) coordinates of the current chroma block in the current CU.
  • rec L '(i,j) may represent a reconstructed sample of the (i,j) coordinate of the current luma block in the CU.
  • rec L '(i,j) may represent a down-sampled reconstructed sample of the current luma block.
  • the linear model coefficients ⁇ and ⁇ may be signaled, but may also be derived from surrounding samples.
  • the intra prediction mode of the current chroma block may be derived as the intra prediction mode of the corresponding luma block.
  • the intra prediction mode at a predetermined position of the corresponding luma block may be used as the intra prediction mode of the current chroma block.
  • DM may be referred to as a chroma DM.
  • FIG. 11 is a diagram illustrating a predetermined position for deriving an intra prediction mode of a current chroma block in the case of a DM.
  • a chroma block is divided into vertical binaries, and a current chroma block may be a block of a hatched area.
  • the luma block corresponding to the current chroma block may be a block of a shaded area within the luma block.
  • the intra prediction mode (intra chroma prediction mode) of the current chroma block predicted by the DM may be derived to an intra prediction mode (intra luma prediction mode) at a predetermined position in the corresponding luma block.
  • the intra prediction mode of the block covering the lower right center sample (center position) CR in the corresponding luma block may be determined as the intra prediction mode of the current chroma block.
  • the predetermined position is not limited to the center position, and may be another position in the corresponding luma block, such as, for example, the upper left position TL.
  • MDM Direct Modes
  • the multiple DM is a mode in which the single DM is extended to a plurality of modes, and a DM candidate list including a plurality of DM candidates is constructed to induce an intra prediction mode of the current chroma block, and included in the DM candidate list.
  • One of the candidates may be derived as an intra prediction mode of the current chroma block.
  • the DM candidate list may include at least one of a plurality of DM candidates below.
  • -Directional mode derived by adding or subtracting a predetermined offset (e.g. 1) to the already included directional mode
  • -Default DM candidate mode vertical mode, horizontal mode, 2, 34, 66, 10, 26 modes (in case of 65 directional modes)
  • the intra prediction modes of the chroma block may be encoded using a total of eight intra prediction modes.
  • the eight intra prediction modes may include conventional five intra prediction modes and a cross-component linear model mode (CCLM) mode(s).
  • CCLM cross-component linear model mode
  • Whether the CCLM is available may be determined based on information signaled at a higher level (e.g. sps_cclm_enabled_flag transmitted at the sequence level).
  • the intra prediction mode of the chroma block may be derived based on the intra chroma prediction mode information (intra_chroma_pred_mode) and/or the intra prediction mode (IntraPredModeY) of the corresponding luma block.
  • the intra prediction mode of the corresponding luma block may be determined as an intra prediction mode of the luma block that covers the current block or the lower right center sample (center position) of the chroma block.
  • the center of the lower right sample position is derived as (xCb + cbWidth / 2, yCb + cbHeight / 2), where (xCb, yCb) means the coordinates of the top-left sample of the corresponding luma block.
  • cbWidth and cbHeight mean the width and height of the corresponding luma block, respectively.
  • the intra prediction mode of the chroma block is determined as 0 (planner mode), and if the intra_chroma_pred_mode is 1, the intra prediction mode of the chroma block is determined as mode 50 (vertical mode). I can.
  • the intra_chroma_pred_mode is 2
  • the intra prediction mode of the chroma block is determined as mode 18 (horizontal mode)
  • the intra_chroma_pred_mode is 3, the intra prediction mode of the chroma block may be determined as mode 1 (DC mode).
  • the intra prediction mode of the chroma block may be determined to be the same value as the intra prediction mode of the corresponding luma block. That is, when the intra_chroma_pred_mode is 4, it indicates that the intra prediction mode of the chroma block is derived as DM.
  • the indexes of the intra prediction mode (IntraPredModeC[ xCb ][ yCb ]) of the chroma block derived based on Table 3 may correspond to the indexes of the intra prediction mode shown in Table 1 above.
  • the intra prediction mode of the chroma block is determined to be mode 66 instead of the aforementioned intra prediction mode (planner mode, vertical mode, horizontal mode, DC mode) according to the IntraPredModeY value.
  • an intra_chroma_pred_mode value of 0 indicates a planar mode.
  • IntraPredModeY is 0 (planar mode)
  • the intra prediction mode of the chroma block is determined as mode 66.
  • the intra_chroma_pred_mode value is determined to be 4 indicating DM, not 0. Therefore, when the intra_chroma_pred_mode value is 0 to 3, the case where the intra prediction mode of the chroma block is determined to be 66 does not substantially occur. That is, when the intra_chroma_pred_mode is 0 to 3, the intra prediction mode of the chroma block may be derived as one of the planar mode, the vertical mode, the horizontal mode, and the DC mode based on the intra_chroma_pred_mode value. When the intra_chroma_pred_mode is 4, the intra prediction mode of the chroma block The prediction mode may be derived based on an intra_chroma_pred_mode value and an intra prediction mode of a corresponding luma block.
  • Table 4 is a case in which the CCLM is available, and may include modes for signaling the CCLM mode in addition to the modes of Table 3.
  • intra_chroma_pred_mode when intra_chroma_pred_mode is 4 to 6, INTRA_LT_CCLM, INTRA_L_CCLM, and INTRA_T_CCLM may be indicated, respectively.
  • the cases where intra_chroma_pred_mode is 0 to 3 and 7 may correspond to cases where the intra_chroma_pred_mode is 0 to 4 in Table 3, respectively. That is, when the intra_chroma_pred_mode is 7, it indicates that the intra prediction mode of the chroma block is derived as DM.
  • an intra prediction mode of a chroma block may be derived based on intra-chroma prediction mode information (intra_chroma_pred_mode) and/or an intra prediction mode of a corresponding luma block.
  • intra-chroma prediction mode information indicates DM
  • the intra prediction mode of the chroma block may be determined to be the same as the intra prediction mode of the corresponding luma block.
  • intra prediction for a current luma block is performed based on an MPM list, and intra prediction for a current chroma block may be performed based on a predetermined default mode and/or DM (chroma DM).
  • the default intra prediction mode may include a planar mode, a DC mode, a vertical mode, and a horizontal mode.
  • the chroma DM may indicate that the intra prediction mode of the current chroma block is derived to an intra prediction mode at a predetermined position in the luma block corresponding to the current chroma block.
  • the size of the current chroma block may vary according to the chroma format, as described above with reference to FIGS. 9A to 9C.
  • FIG. 12 is a diagram illustrating a size of a current chroma block according to a chroma format.
  • the size of a current chroma block corresponding to a 64x128 luma block is 32x64 in a 4:2:0 chroma format, 32x128 in a 4:2:2 chroma format, and 64x128 in a 4:4:4 chroma format.
  • the size of the current chroma block may increase, which may mean that the amount of information on the chroma component also increases.
  • the chroma format is 4:2:0, since the information amount of the chroma component is relatively small, performance deterioration of intra prediction for the current chroma block does not occur even if the above-described method is followed. However, when the chroma format is 4:2:2 or 4:4:4, since the amount of information on the chroma component is relatively large, performance deterioration of intra prediction for the current chroma block may occur when the above-described method is followed.
  • the complexity of the image encoding/decoding process may increase.
  • the intra prediction process for the current luma block may be performed in the same or similar manner to the current chroma block.
  • the image encoding/decoding apparatus may use an intra prediction mode and additional candidate modes of a neighboring luma block (eg, a left neighboring block and/or an upper neighboring block) adjacent to the current luma block with respect to the current luma block. You can configure an MPM list for luma blocks.
  • the image encoding/decoding apparatus uses intra prediction modes and additional candidate modes of a neighboring chroma block (eg, a left neighboring block and/or an upper neighboring block) adjacent to the current chroma block with respect to the current chroma block. You can configure the MPM list for.
  • the neighboring chroma block may exist at the same position (or corresponding position) as the neighboring luma blocks used to induce the intra prediction mode of the luma block (corresponding luma block) corresponding to the current chroma block. have.
  • at least some of the surrounding chroma blocks may exist in different positions from the surrounding luma blocks.
  • the MPM list for the current chroma block may include a chroma DM indicating that an intra prediction mode of the current chroma block is derived to an intra prediction mode of a corresponding luma block corresponding to the current chroma block.
  • the intra prediction mode of the current chroma block determined as the chroma DM may be derived as an intra prediction mode at a predetermined position in the corresponding luma block. For example, as described above with reference to FIG.
  • the intra prediction mode of a block covering the lower right center sample (center position) in the corresponding luma block may be determined as the intra prediction mode of the current chroma block.
  • the intra prediction mode of the block covering the upper left sample in the corresponding luma block may be determined as the intra prediction mode of the current chroma block.
  • the MPM list may be referred to in various terms such as a candidate list and candModeList.
  • the MPM list for the current luma block may be referred to as a luma MPM list
  • the MPM list for the current chroma block may be referred to as a chroma MPM list.
  • the image decoding apparatus may select one of the MPM candidates in the MPM list as the intra prediction mode based on the MPM index received from the image encoding apparatus.
  • the video decoding apparatus may select one of the remaining intra prediction modes that are not included in the MPM list as the intra prediction mode based on the remaining mode information received from the video encoding apparatus.
  • Whether the intra prediction mode currently applied to the chroma block is among MPM candidates (i.e., is included in the chroma MPM list) or in the remaining mode may be indicated based on the MPM flag (eg intra_chroma_mpm_flag) for the current chroma block.
  • a first value (eg 1) of the MPM flag may indicate that an intra prediction mode of the current chroma block is among MPM candidates, and a second value (eg 0) of the MPM flag is an intra prediction mode of the current chroma block. May indicate that is not among the MPM candidates.
  • the MPM index may be signaled in the form of an mpm_idx or intra_luma_mpm_idx syntax element for the current luma block, and may be signaled in the form of an mpm_idx or intra_chroma_mpm_idx syntax element for the current chroma block.
  • the remaining mode information may be signaled in the form of rem_intra_luma_pred_mode or intra_luma_mpm_remainder syntax element for the current luma block, and may be signaled in the form of rem_intra_chroma_pred_mode or intra_chroma_mpm_remainder syntax element for the current chroma block.
  • the remaining mode information includes indexing the remaining intra prediction modes that are not included in the MPM candidates (candidates included in the luma MPM list or chroma MPM list) among all intra prediction modes in order of prediction mode number. You can direct one.
  • the intra prediction mode information may include the MPM flag (eg intra_luma_mpm_flag or intra_chroma_mpm_flag), the MPM index (eg mpm_idx, intra_luma_mpm_idx or intra_chroma_mpm_idx), and the remapping mode information (rem_intra_luma_pred_mode, intra_chroma_pred_mode, intra_chroma_pred_mode, intra_chroma_mainder_, or at least one of). , May be signaled through a bitstream.
  • the MPM flag eg intra_luma_mpm_flag or intra_chroma_mpm_flag
  • the MPM index eg mpm_idx, intra_luma_mpm_idx or intra_chroma_mpm_idx
  • remapping mode information rem_intra_luma_pred_mode, intra_chroma_
  • an intra prediction process for a luma block may be applied equally or similarly to a chroma block. Accordingly, since the intra prediction process for the luma block and the intra prediction process for the chroma block can be unified, the complexity of the image encoding/decoding process can be reduced.
  • accuracy of intra prediction may be improved by performing intra prediction on a chroma block based on an MPM list.
  • Embodiment #1 of the present disclosure may configure a chroma MPM list for the current chroma block in an intra prediction process for the current chroma block.
  • FIG. 13 is a flowchart illustrating an intra prediction mode signaling procedure in an image encoding apparatus according to an embodiment of the present disclosure.
  • the apparatus for encoding an image may configure a chroma MPM list (candidate list) for a current chroma block (S1310).
  • the chroma MPM list may include one or more intra prediction mode candidates (MPM candidates) that are highly likely to be applied to the current chroma block.
  • MPM candidates intra prediction mode candidates
  • N is an integer greater than or equal to 1
  • M is an integer greater than or equal to 1
  • N ⁇ M is an integer greater than or equal to 1
  • N ⁇ M is an integer greater than or equal to 1
  • N1 is an integer greater than or equal to 1
  • the chroma format is 4:2:2
  • the number of MPM candidates is N2.
  • N2 is an integer greater than or equal to 1
  • N3 is an integer greater than or equal to 1
  • the number of MPM candidates (N, N1, N2 or N3) may be predefined or adaptively determined. For example, when the number of MPM candidates for the current luma block is 6, the number of MPM candidates for the current chroma block (N, N1, N2, or N3) may be determined as one of 3 to 6.
  • K K ⁇ L
  • L L is an integer greater than or equal to 1
  • K K is an integer greater than or equal to 1
  • K ⁇ L K
  • L is 67 (two non-directional modes and 65 directional modes)
  • K may be 35 (two non-directional modes and 33 directional modes).
  • the 33 directional modes for the current chroma block may be modes having an even number (or odd number) among 65 directional modes for the current luma block.
  • the number K of intra prediction modes applicable to the current chroma block may be adaptively determined based on a chroma format.
  • the number K of intra prediction modes applicable to the current chroma block may increase. have.
  • K is 35
  • the chroma format of the current chroma block is 4:2:2 or 4:4:4
  • K is 67.
  • the number of intra prediction modes applicable to the chroma block may increase. Accordingly, the intra prediction accuracy for the current chroma block having an increased amount of information may be further improved.
  • the chroma MPM list may be constructed using at least one neighboring chroma block (e.g. a left neighboring block and/or an upper neighboring block) adjacent to the current chroma block.
  • the neighboring chroma block may exist at the same position (or corresponding position) as the neighboring luma blocks used to induce the intra prediction mode of the luma block (corresponding luma block) corresponding to the current chroma block. have.
  • at least some of the surrounding chroma blocks may exist in different positions from the surrounding luma blocks.
  • the image encoding apparatus uses at least one of the remaining intra prediction modes not included in the chroma MPM list to determine the chroma MPM. You can fill the list further.
  • the image encoding apparatus may further fill the chroma MPM list by using at least one of a plurality of non-directional modes and a plurality of directional modes that are not included in the MPM list.
  • the image encoding apparatus may further fill the chroma MPM list by using at least one of a +1 mode, a +2 mode, a -1 mode, and a -2 mode of a directional mode included in the chroma MPM list.
  • One or more MPM candidates may have a predetermined priority and be included in the chroma MPM list for the current chroma block.
  • the MPM candidate having the highest occurrence frequency may have the highest priority and may be included as a first candidate in the chroma MPM list.
  • the MPM candidate with the least occurrence frequency has the lowest priority and may be included as an Nth candidate in the chroma MPM list.
  • the MPM candidates may be indexed in the order of the highest priority in the chroma MPM list.
  • the MPM index of the first candidate may have a first value (e.g. 0)
  • the MPM index of the N-th candidate may have an Nth value (e.g. N-1).
  • the chroma MPM list may further include specific intra prediction modes according to a predetermined method.
  • the chroma MPM list may further include a chroma DM indicating that an intra prediction mode of the current chroma block is derived to an intra prediction mode of a corresponding luma block.
  • the chroma DM may be included as a first candidate in the chroma MPM list.
  • the image encoding apparatus may perform a redundancy check on the chroma MPM list so that duplicate MPM candidates are not included in the chroma MPM list.
  • the video encoding apparatus may remove the remainder except for one of the duplicate MPM candidates from the chroma MPM list.
  • the redundancy check may be performed whenever a new MPM candidate is inserted into the chroma MPM list. That is, when the same MPM candidate is already included in the chroma MPM list, the new MPM candidate may not be included in the chroma MPM candidate list. Accordingly, when the chroma MPM list is not completely filled, the image encoding apparatus may further fill the chroma MPM list by using at least one of a plurality of non-directional modes and a plurality of directional modes as described above. . Meanwhile, as an example, the image encoding apparatus may skip the redundancy check in order to reduce computational complexity.
  • Cases 1 to 3 show a method of constructing a chroma MPM list including a total of 5 MPM candidates.
  • an MPM list (candModeList[x]) is configured as follows.
  • an MPM list (candModeList[x]) is configured as follows.
  • MinAB Min( candIntraPredModeA, candIntraPredModeB)
  • the first candidate (candModeList[0]) and the second candidate (candModeList[1]) of the MPM list are configured as follows.
  • the third to fifth candidates (candModeList[2] to candModeList[4]) of the MPM list are configured as follows.
  • the first to fifth candidates (candModeList[0] to candModeList[4]) of the MPM list are configured as follows.
  • the first MPM candidate (candIntraPredModeA) and the second MPM candidate (candIntraPredModeB) are, as described above, blocks located around the current chroma block (eg, the left neighboring block and/or the upper peripheral Block).
  • the MPM list (chroma MPM list) for the current chroma block is an intra prediction mode of the current chroma block as an MPM candidate.
  • a chroma DM indicating that the prediction mode is derived to the intra prediction mode of the corresponding luma block may be further included.
  • the apparatus for encoding an image may determine an intra prediction mode of a current chroma block (S1320).
  • the image encoding apparatus may determine an optimal intra prediction mode by performing rate-distortion optimization (RDO) on a plurality of intra prediction modes.
  • RDO rate-distortion optimization
  • the plurality of intra prediction modes may include at least one of a plurality of non-directional modes and a plurality of directional modes.
  • the video encoding apparatus may determine the optimal intra prediction mode using only MPM candidates included in the chroma MPM list, or all MPM candidates included in the chroma MPM list as well as all applicable to intra prediction of the chroma block.
  • the optimal intra prediction mode may be determined using intra prediction modes. For example, when the intra prediction type of the current chroma block is a specific type (eg LIP, MRL, or ISP) other than a normal intra prediction type, the video encoding apparatus determines the optimal intra prediction mode using only the MPM candidates. I can. In this case, the intra prediction mode for the current chroma block may be determined only among the MPM candidates, and the MPM flag may not be encoded/signaled. In the case of the specific type, the video decoding apparatus may estimate that the MPM flag has a first value (e.g. 1) without separately signaling the MPM flag.
  • a first value e.g. 1
  • the intra prediction mode of the current chroma block determined in step S1320 is one of the MPM candidates included in the chroma MPM list (when the MPM flag has a first value (eg 1))
  • the video encoding apparatus is selected from among the MPM candidates.
  • An MPM index indicating one eg mpm_idx or intra_chroma_mpm_idx
  • the intra prediction mode of the current chroma block is not in the chroma MPM list (when the MPM flag has a second value (eg 0)
  • the image encoding apparatus is selected from among the remaining intra prediction modes not included in the chroma MPM list. Remaining mode information indicating the same mode as the intra prediction mode of the current chroma block may be generated.
  • the image encoding apparatus may encode the intra prediction mode information and output it in the form of a bitstream (S1330).
  • the intra prediction mode information may include the aforementioned MPM flag, MPM index, and/or remaining mode information.
  • the MPM index and the remaining mode information have an alternate relationship, and may not be signaled at the same time when indicating an intra prediction mode for a current chroma block. That is, when the MPM flag has a first value, the MPM index may be signaled, and when the MPM flag has a second value, the remaining mode information may be signaled.
  • the intra prediction mode information may include only the MPM index.
  • the intra prediction mode information may be encoded using various coding methods described in this disclosure.
  • the intra prediction mode information and/or the intra prediction type information may be encoded through entropy coding (e.g. CABAC, CAVLC) based on truncated (rice) binary code.
  • step S1320 may be performed before step S1310 or may be performed simultaneously with step S1310.
  • step S1310 may be performed prior to step S1320.
  • step S1320 may be performed before step S1310. Or, it may be performed simultaneously with step S1310.
  • FIG. 14 is a flowchart illustrating a procedure for determining an intra prediction mode in an image decoding apparatus according to an embodiment of the present disclosure.
  • the image decoding apparatus may determine an intra prediction mode of the current chroma block based on intra prediction mode information determined and signaled by the image encoding apparatus.
  • the apparatus for decoding an image may obtain intra prediction mode information for a current chroma block from a bitstream (S1410).
  • the intra prediction mode information may include an MPM flag, an MPM index, and/or a remaining intra prediction mode.
  • the video decoding apparatus may configure a chroma MPM list (S1420).
  • the chroma MPM list may have the same configuration as the chroma MPM list configured in the video encoding apparatus.
  • the chroma MPM list may include an intra prediction mode of a neighboring chroma block (e.g. a left neighboring block and/or an upper neighboring block) adjacent to the current chroma block.
  • the neighboring chroma block may exist at the same position as the neighboring luma block used for intra prediction of the luma block (corresponding luma block) corresponding to the current chroma block, or may exist at a different position from the neighboring luma block.
  • the chroma MPM list may further include predetermined intra prediction modes according to a predetermined method.
  • step S1420 may be performed prior to step S1410, or may be performed simultaneously with step S1410.
  • the video decoding apparatus may determine an intra prediction mode of the current chroma block based on the intra prediction mode information and the chroma MPM list (S1430). Step S1430 will be described in more detail with reference to FIG. 15.
  • 15 is a flowchart for describing a procedure for deriving an intra prediction mode in more detail.
  • Steps S1510 and S1520 of FIG. 15 may correspond to steps S1410 and S1420 of FIG. 14, respectively. Therefore, detailed descriptions of steps S1510 and S1520 will be omitted.
  • the image decoding apparatus may obtain intra prediction mode information for the current chroma block from the bitstream, construct a chroma MPM list (S1510 and S1520), and then determine a predetermined condition (S1530).
  • the video decoding apparatus selects a candidate indicated by an MPM index among MPM candidates in the chroma MPM list.
  • the intra prediction mode of the current chroma block may be determined (S1540).
  • the MPM flag has a second value (eg 0) (No in S1530)
  • the video decoding apparatus performs intra prediction indicated by remaining mode information among the remaining intra prediction modes not included in the chroma MPM list.
  • a mode may be determined as an intra prediction mode of the current chroma block (S1550).
  • the video decoding apparatus does not check the value of the MPM flag, and the chroma MPM A candidate indicated by the MPM index among MPM candidates in the list may be determined as an intra prediction mode of the current chroma block (S1540).
  • the MPM flag is not signaled and may be inferred as a first value.
  • the video decoding apparatus is the remaining mode among the remaining intra prediction modes not included in the MPM list.
  • An intra prediction mode indicated by information may be determined as an intra prediction mode of the current chroma block (S1550).
  • the apparatus for encoding/decoding an image configures a chroma MPM list for a current chroma block.
  • the intra prediction process for intra prediction can be unified.
  • intra prediction accuracy for a chroma block may be improved.
  • Embodiment #2 of the present disclosure may configure a chroma MPM list for the current chroma block based on a slice type of a current slice including the current chroma block.
  • 16 is a flowchart illustrating an intra prediction mode signaling procedure in an image encoding apparatus according to another embodiment of the present disclosure.
  • Steps S1620, S1630, and S1650 of FIG. 16 may correspond to steps S1310 to S1330 of FIG. 13, respectively. Therefore, descriptions of steps S1620, S1630, and S1650 will be briefly described.
  • the apparatus for encoding an image may determine whether a current slice including a current chroma block satisfies a predetermined slice type condition (S1610).
  • the slice type condition may be when the current slice is an intra slice.
  • the intra slice may mean an I slice.
  • inter prediction may not be performed, but only intra prediction may be performed.
  • the intra slice may have a single tree structure or a dual tree structure. In the single tree structure, a luma block and a chroma block may be divided into the same block tree structure. In contrast, in the dual tree structure, a luma block and a chroma block may be divided into different block tree structures.
  • the block tree structure for the luma block may be referred to as a dual tree luma (DUAL_TREE_LUMA), and the block tree structure for the chroma block may be referred to as a dual tree chroma (DUAL_TREE_CHROMA).
  • DUAL_TREE_LUMA dual tree luma
  • DUAL_TREE_CHROMA dual tree chroma
  • the slice type condition may be a case in which the current slice is an inter slice.
  • the inter slice may mean a P slice and/or a B slice.
  • intra prediction or inter prediction may be performed.
  • the inter-slice may have only the single tree structure described above.
  • the slice type information (e.g. slice_type) of the current slice may be signaled in the form of a syntax element of a slice header.
  • a specific example of the slice header is as shown in FIG. 17.
  • 17 is a diagram showing syntax of a slice header including slice type information.
  • a slice header may include information and parameters commonly applicable to all blocks in a current slice including a current chroma block (e.g. sh_picture_header_in_slice_header_flag, sh_subpic_id, etc.).
  • the slice header may include a syntax element (sh_slice_type) indicating type information of the current slice.
  • a chroma MPM list for the current chroma block may be configured regardless of the slice type of the current slice. That is, when the current slice is an intra slice as well as when the current slice is an inter slice, the chroma MPM list may be configured. In this case, Embodiment #1 of the present disclosure described above with reference to FIGS. 13 to 15 may be applied.
  • the image encoding apparatus may configure a chroma MPM list for the current chroma block (S1620).
  • the chroma MPM list may include a chroma DM indicating that an intra prediction mode of the current chroma block is derived to an intra prediction mode of a corresponding luma block.
  • the video encoding apparatus may perform a redundancy check on the chroma MPM list to remove the redundancy of the intra prediction mode indicated by the chroma DM in the chroma MPM list.
  • the image encoding apparatus may determine an intra prediction mode of the current chroma block (S1630). For example, the image encoding apparatus may determine an optimal intra prediction mode by performing rate-distortion optimization (RDO) only on MPM candidates included in the chroma MPM list. In this case, as shown in FIG. 16, step S1620 may precede step S1630. Alternatively, the apparatus for encoding an image may determine an optimal intra prediction mode by performing RDO on all intra prediction modes applicable to the current chroma block. In this case, unlike shown in FIG. 16, step S1630 may precede step S1620 or may be performed simultaneously.
  • RDO rate-distortion optimization
  • the intra prediction mode of the current chroma block is one of the MPM candidates in the chroma MPM list (when the MPM flag has a first value (eg 1))
  • an MPM index indicating one of the MPM candidates eg mpm_idx or intra_chroma_mpm_idx
  • the video encoding apparatus includes the remaining intra prediction modes not included in the chroma MPM list. Among them, remaining mode information indicating the same mode as the intra prediction mode of the current chroma block may be generated.
  • the image encoding apparatus may determine and/or encode an intra prediction mode of the current chroma block without configuring a chroma MPM list for the current chroma block. For example, the image encoding apparatus may determine an intra prediction mode of the current chroma block based on a predetermined default mode and chroma DM (S1640). For example, the image encoding apparatus may determine an optimal intra prediction mode by performing rate-distortion optimization (RDO) on the default mode and the chroma DM.
  • RDO rate-distortion optimization
  • the default mode may include a planar mode, a DM mode, a vertical mode, and a horizontal mode.
  • the present invention is not limited thereto, and the default mode may include a predetermined intra prediction mode that is preset based on the frequency of occurrence.
  • the apparatus for encoding an image may determine an optimal intra prediction mode by performing an additional RDO for a cross-component linear model (CCLM) mode.
  • CCLM cross-component linear model
  • the CCLM mode may be divided into L_CCLM, T_CCLM, and LT_CCLM according to whether left samples of the current chroma block are considered, upper samples are considered, or both are considered.
  • An intra prediction mode for the current chroma block may be determined separately from an intra prediction mode for a luma block (corresponding luma block) corresponding to the current chroma block, and may be indicated based on intra prediction mode information.
  • the intra prediction mode information may indicate an intra prediction mode of the current chroma block, and may be signaled in the form of an intra_chroma_pred_mode syntax element as described above with reference to Tables 3 and 4, for example.
  • the image encoding apparatus may encode intra prediction mode information for the current chroma block and output it in the form of a bitstream (S1650).
  • the intra prediction mode information may include an MPM flag, an MPM index, and/or remaining mode information.
  • the intra prediction mode information may include information indicating an intra prediction mode of the current chroma block determined in step S1640 (eg intra_chroma_pred_mode). I can.
  • FIG. 18 is a flowchart illustrating a procedure for determining an intra prediction mode in an image decoding apparatus according to another embodiment of the present disclosure.
  • the video decoding apparatus may configure a chroma MPM list for the current chroma block only when the current chroma block is included in a predetermined type of slice. Conversely, when the current chroma block is not included in the predetermined type of slice, the video decoding apparatus may not configure the chroma MPM list.
  • the image decoding apparatus may determine whether a current slice including the current chroma block satisfies a predetermined slice type condition (S1810).
  • the slice type condition may be when the current slice is an intra slice.
  • the intra slice may mean an I slice in which only intra prediction can be performed on blocks included in the intra slice.
  • the slice type condition may be a case in which the current slice is an inter slice.
  • the inter slice may mean a P slice and/or a B slice in which intra prediction or inter prediction may be performed on blocks included in the inter slice.
  • the slice type information of the current slice may be obtained, for example, by decoding the slice_type syntax of the slice header (slice_header) described above with reference to FIG. 17.
  • a chroma MPM list for the current chroma block may be configured regardless of the slice type of the current slice. That is, when the current slice is an intra slice, as well as when the current slice is an inter slice, the chroma MPM list may be configured. In this case, Embodiment #1 of the present disclosure described above with reference to FIGS. 13 to 15 may be applied.
  • the image decoding apparatus may obtain intra prediction mode information for the current chroma block from the bitstream (S1820).
  • the intra prediction mode information may include an MPM flag, an MPM index, and/or a remaining intra prediction mode, as described above with reference to FIG. 16.
  • the video decoding apparatus may configure a chroma MPM list for the current chroma block (S1830).
  • the chroma MPM list may be configured in the same way as the chroma MPM list configured in the video encoding apparatus.
  • the chroma MPM list may be configured using a neighboring chroma block (e.g. a left neighboring block and/or an upper neighboring block) adjacent to the current chroma block.
  • the neighboring chroma block may exist at the same position as the neighboring luma block used for intra prediction of the luma block (corresponding luma block) corresponding to the current chroma block, or may exist at a different position from the neighboring luma block.
  • the chroma MPM list may further include specific intra prediction modes according to a predetermined method.
  • the chroma MPM list may further include a chroma DM indicating that an intra prediction mode of the current chroma block is derived to an intra prediction mode of a corresponding luma block.
  • the video decoding apparatus may remove duplicate MPM candidates included in the chroma MPM list by performing a redundancy check on the chroma MPM list.
  • step S1830 may be performed prior to step S1820, or may be performed simultaneously with step S1820.
  • the image decoding apparatus may obtain intra prediction mode information for the current chroma block from the bitstream (S1840).
  • the intra prediction mode information may include information (e.g. intra_chroma_pred_mode) indicating an intra prediction mode of the current chroma block determined by the image encoding apparatus, as described above with reference to FIG. 16.
  • the video decoding apparatus may not configure a chroma MPM list for the current chroma block.
  • the image decoding apparatus may determine an intra prediction mode of the current chroma block (S1850).
  • the video decoding apparatus may determine the intra prediction mode of the current chroma block based on the intra prediction mode information acquired in step S1820 and the chroma MPM list configured in step S1830. Specifically, when the MPM flag has a first value (e.g. 1), the video decoding apparatus may determine a candidate indicated by an MPM index among MPM candidates in the chroma MPM list as the intra prediction mode of the current chroma block. In contrast, when the MPM flag has a second value (eg 0), the video decoding apparatus selects an intra prediction mode indicated by remaining mode information among the remaining intra prediction modes not included in the MPM list as the current chroma block. It can be determined as the intra prediction mode of.
  • the MPM flag has a first value (e.g. 1)
  • the video decoding apparatus may determine a candidate indicated by an MPM index among MPM candidates in the chroma MPM list as the intra prediction mode of the current chroma block.
  • the MPM flag has a second value (
  • the video decoding apparatus does not check the value of the MPM flag, and the MPM index among MPM candidates in the chroma MPM list A candidate indicated by may be derived as an intra prediction mode of the current chroma block.
  • a specific type eg LIP, MRL, ISP, etc.
  • the video decoding apparatus does not configure a chroma MPM list, and may determine an intra prediction mode of the current chroma block based on the intra prediction mode information obtained in step S1840.
  • the image decoding apparatus may determine an intra prediction mode of the current chroma block based on intra prediction mode information (e.g. intra_chroma_pred_mode) obtained from a bitstream.
  • intra prediction mode information e.g. intra_chroma_pred_mode
  • the intra prediction mode of the current chroma block may be determined as one of a predetermined default mode and a chroma DM.
  • the default mode may include a planar mode, a DC mode, a vertical mode, and a horizontal mode.
  • the intra prediction mode of the current chroma block may be determined as a cross-component linear model (CCLM) mode.
  • CCLM cross-component linear model
  • the image encoding/decoding apparatus generates a chroma MPM list for the current chroma block only when the current chroma block is included in a slice of a predetermined type.
  • an intra prediction process for a luma block and an intra prediction process for a chroma block can be unified based on a block division structure.
  • a division structure of the current chroma block may be the same as a division structure of a luma block (corresponding luma block) corresponding to the current chroma block.
  • a division structure of the current chroma block may be different from the division structure of the corresponding luma block. Therefore, when the current chroma block has the dual tree structure (that is, when the current chroma block is included in an intra slice), the unification effect of the intra prediction process according to Embodiment #2 of the present disclosure can be more maximized. have.
  • Embodiment #3 of the present disclosure may configure a chroma MPM list for the current chroma block based on whether the intra prediction mode of the current chroma block is the same as the predetermined first mode.
  • 19 is a flowchart illustrating an intra prediction mode signaling procedure in an image encoding apparatus according to another embodiment of the present disclosure.
  • the apparatus for encoding an image may determine an intra prediction mode of a current chroma block (S1910).
  • the image encoding apparatus may determine an optimal intra prediction mode by performing rate-distortion optimization (RDO) on a plurality of intra prediction modes.
  • the plurality of intra prediction modes may include at least one of a plurality of non-directional modes (e.g. a planar mode, a DC mode) and a plurality of directional modes.
  • the apparatus for encoding an image may determine the intra prediction mode of the current chroma block as a chroma DM indicating an intra prediction mode at a predetermined position in a luma block (corresponding luma block) corresponding to the current chroma block.
  • the image encoding apparatus may determine whether the intra prediction mode of the current chroma block is the same as a predetermined first mode (S1920).
  • the first mode may be preset based on the frequency of occurrence.
  • the first mode may be preset as an intra prediction mode having the largest occurrence frequency among the plurality of intra prediction modes.
  • the first mode may be chroma DM.
  • the first mode may be a planner mode.
  • the image encoding apparatus When the intra prediction mode of the current chroma block is the first mode (Yes in S1920), the image encoding apparatus encodes a first mode flag indicating whether the determined intra prediction mode is the first mode, and converts it into a bitstream form. Can be output (S1930).
  • the encoded first mode flag may have a first value (e.g. 1), and the image encoding apparatus may not configure a chroma MPM list for the current chroma block.
  • the image encoding apparatus may encode only the first mode flag as intra prediction mode information of the current chroma block. That is, in this case, the intra prediction mode information of the current chroma block may include only the first mode flag and may not include the above-described MPM flag, MPM index, and remaining mode information.
  • the image encoding apparatus may configure a chroma MPM list for the current chroma block (S1940).
  • the chroma MPM list may include N intra prediction mode candidates (MPM candidates) that are highly likely to be applied to the current chroma block (N is an integer greater than or equal to 1).
  • N is an integer greater than or equal to 1
  • the number (N) of the MPM candidates may be less than or equal to the number (M) of the MPM candidates for the luma block (corresponding luma block) corresponding to the current chroma block (N ⁇ M).
  • the number (N) of the MPM candidates may increase in proportion to the information amount of the chroma component of the current chroma block.
  • the number of MPM candidates (N1) is when the chroma format of the current chroma block is 4:2:2 or 4:4:4 It may be less than or equal to the number of MPM candidates (N2) (N1 ⁇ N2).
  • the number (N) of the MPM candidates may be predefined or may be signaled through a bitstream.
  • the chroma MPM list may be configured using an intra prediction mode of at least one neighboring chroma block (e.g. a left neighboring block and/or an upper neighboring block) adjacent to the current chroma block.
  • the neighboring chroma block may exist at the same position as the neighboring luma block used for intra prediction of the luma block (corresponding luma block) corresponding to the current chroma block, or may exist at a different position from the neighboring luma block.
  • the chroma MPM list includes a chroma DM indicating that the intra prediction mode of the current chroma block is determined as an intra prediction mode of a predetermined position (eg center position) of the corresponding luma block. can do.
  • the image encoding apparatus may encode the intra prediction mode information of the current chroma block and output it in the form of a bitstream (S1950).
  • the intra prediction mode information may include the aforementioned first mode flag.
  • the encoded first mode flag may have a second value (e.g. 0).
  • the intra prediction mode information may further include the above-described MPM flag, MPM index, and/or remaining mode information. That is, the MPM flag, the MPM index, and/or the remaining mode information may be signaled only when the first mode flag has a second value (e.g. 0).
  • 20 is a flowchart illustrating a procedure for determining an intra prediction mode in an image decoding apparatus according to another embodiment of the present disclosure.
  • the apparatus for decoding an image may obtain intra prediction mode information for a current chroma block from a bitstream (S2010).
  • the intra prediction mode information may include a first mode flag as described above with reference to FIG. 19.
  • the intra prediction mode information may further include an MPM flag, an MPM index, and/or remaining mode information.
  • the image decoding apparatus may determine whether the first mode flag has a first value (e.g. 1) (S2020).
  • the image decoding apparatus may determine the intra prediction mode of the current chroma block as the first mode (S2030).
  • the first mode may be chroma DM.
  • the first mode may be a planner mode.
  • the video decoding apparatus may not configure a chroma MPM list for the current chroma block.
  • the image decoding apparatus uses the current chroma block
  • a chroma MPM list for can be configured (S2040).
  • the chroma MPM list may be configured in the same way as the chroma MPM list configured by the video encoding apparatus.
  • the chroma MPM list may be configured using a neighboring chroma block (e.g. a left neighboring block and/or an upper neighboring block) adjacent to the current chroma block.
  • the neighboring chroma block may exist at the same position as the neighboring luma block used for intra prediction of the luma block (corresponding luma block) corresponding to the current chroma block, or may exist at a different position from the neighboring luma block.
  • the chroma MPM list may further include specific intra prediction modes according to a predetermined method. For example, if the first mode is not chroma DM, the chroma MPM list indicates that the intra prediction mode of the current chroma block is determined as an intra prediction mode of a predetermined position (eg center position) of the corresponding luma block. DM can be included.
  • the video decoding apparatus may determine an intra prediction mode of the current chroma block based on the intra prediction mode information and a chroma MPM list (S2050). Specifically, when the MPM flag has a first value (e.g. 1), the video decoding apparatus may determine a candidate indicated by an MPM index among MPM candidates in the chroma MPM list as the intra prediction mode of the current chroma block. In contrast, when the MPM flag has a second value (eg 0), the video decoding apparatus selects an intra prediction mode indicated by the remaining mode information among the remaining intra prediction modes not included in the MPM list. It can be determined as the intra prediction mode of the block.
  • a first value e.g. 1
  • the video decoding apparatus may determine a candidate indicated by an MPM index among MPM candidates in the chroma MPM list as the intra prediction mode of the current chroma block.
  • the MPM flag has a second value (eg 0)
  • the video decoding apparatus selects an intra prediction
  • the video decoding apparatus does not decode the value of the MPM flag.
  • a candidate indicated by the MPM index among MPM candidates in the chroma MPM list may be determined as an intra prediction mode of the current chroma block.
  • the image encoding/decoding apparatus configures a chroma MPM list for a current chroma block based on a predetermined first mode flag, thereby encoding an image. /Can improve decryption efficiency.
  • Embodiment #4 of the present disclosure is a modified example of Embodiment #3 of the present disclosure, in which a chroma MPM list for a current chroma block is constructed, and an intra prediction mode of the current chroma block is used by using a predetermined first mode flag. And intra prediction mode information may be adaptively determined.
  • 21 is a flowchart illustrating an intra prediction mode signaling procedure in an image encoding apparatus according to another embodiment of the present disclosure.
  • Steps S2110 and S2120 of FIG. 21 may correspond to steps S1910 and S1940 of FIG. 19, respectively. Therefore, the description of steps S2110 and S2120 will be briefly described.
  • the apparatus for encoding an image may determine an intra prediction mode of a current chroma block (S2110).
  • the image encoding apparatus may determine an optimal intra prediction mode by performing rate-distortion optimization (RDO) on a plurality of intra prediction modes.
  • RDO rate-distortion optimization
  • the image encoding apparatus may configure a chroma MPM list for the current chroma block (S2120).
  • the chroma MPM list may include one or more intra prediction mode candidates (MPM candidates) that are highly likely to be applied to the current chroma block.
  • MPM candidates intra prediction mode candidates
  • the number of MPM candidates may be less than or equal to the number of MPM candidates in a luma MPM list for a luma block corresponding to the current chroma block.
  • the number of MPM candidates may increase in proportion to an information amount of a chroma component of the current chroma block.
  • the number of MPM candidates may be predefined or may be signaled through a bitstream.
  • the chroma MPM list may be configured using an intra prediction mode of at least one neighboring chroma block (e.g. a left neighboring block and/or an upper neighboring block) adjacent to the current chroma block.
  • the neighboring chroma block may exist at the same position as the neighboring luma block used for intra prediction of the luma block corresponding to the current chroma block, or may exist at a different position from the neighboring luma block.
  • the image encoding apparatus may determine whether the intra prediction mode of the current chroma block is included in the chroma MPM list or is the same as a predetermined first mode (S2130).
  • the first mode may be preset as one of MPM candidates not included in the chroma MPM list.
  • the first mode may be a chroma DM or a planar mode.
  • the image encoding apparatus determines whether the intra prediction mode of the current chroma block is the same as the first mode. Can be determined (S2140).
  • the video encoding apparatus encodes an MPM flag and a first mode flag as intra prediction mode information of the current chroma block to a bitstream. It can be output in the form (S2150).
  • the MPM flag and the first mode flag may be encoded with a first value (e.g. 1), respectively.
  • the image encoding apparatus may include an MPM flag, a first mode flag, and an MPM index as intra prediction mode information of the current chroma block. May be encoded and output in the form of a bitstream (S2160).
  • the MPM flag may be encoded as a first value (e.g. 1)
  • the first mode flag may be encoded as a second value (e.g. 0).
  • the intra prediction mode of the current chroma block is not included in the chroma MPM list, and is not the same as the first mode (No in S2130), the video encoding apparatus, the intra prediction mode of the current chroma block As information, the MPM flag and the remaining mode information may be encoded and output in the form of a bitstream (S2170).
  • 22 is a flowchart illustrating a procedure for determining an intra prediction mode in an image decoding apparatus according to another embodiment of the present disclosure.
  • Steps S2210 and S2220 of FIG. 22 may correspond to steps S2010 and S2040 of FIG. 20, respectively. Therefore, the description of steps S2210 and S2220 will be briefly described.
  • the image decoding apparatus may obtain intra prediction mode information for a current chroma block from a bitstream (S2210).
  • the intra prediction mode information may include an MPM flag and a first mode flag.
  • the intra prediction mode information may include an MPM flag, a first mode flag, and an MPM index.
  • the intra prediction mode information may include an MPM flag and remaining mode information.
  • the video decoding apparatus may configure a chroma MPM list for the current chroma block (S2220).
  • the chroma MPM list may be configured in the same way as the chroma MPM list configured by the video encoding apparatus.
  • the chroma MPM list may be configured using a neighboring chroma block (e.g. a left neighboring block and/or an upper neighboring block) adjacent to the current chroma block.
  • the chroma MPM list may further include specific intra prediction modes according to a predetermined method. For example, when a predetermined first mode indicated by the first mode flag is not chroma DM, the chroma MPM list may include the chroma DM.
  • the image decoding apparatus may determine whether the MPM flag acquired in step S2210 has a first value (e.g. 1) (S2230).
  • the image decoding apparatus may determine whether the first mode flag obtained in step S2210 has a first value (e.g. 1) (S2240).
  • the image decoding apparatus may determine an intra prediction mode of the current chroma block as the first mode.
  • the first mode may be preset based on the frequency of occurrence or may be signaled through a bitstream.
  • the first mode may be a chroma DM or a planar mode.
  • the video decoding apparatus may determine the intra prediction mode of the current chroma block as an intra prediction mode indicated by the MPM index obtained in step S2210. Yes (S2260).
  • the video decoding apparatus may determine the intra prediction mode of the current chroma block as the intra prediction mode indicated by the remaining mode information obtained in step S2210. Yes (S2270).
  • the image encoding/decoding apparatus uses a predetermined first mode flag to determine the intra prediction mode and intra prediction mode information of the current chroma block. By adaptively determining, video encoding/decoding efficiency can be improved.
  • Embodiment #5 of the present disclosure is a modified example of embodiment #3, wherein the current chroma block is based on whether the intra prediction mode of the current chroma block is the same as a predetermined first intra prediction mode or a second intra prediction mode. You can configure a chroma MPM list for.
  • FIG. 23 is a flowchart illustrating an intra prediction mode signaling procedure in an image encoding apparatus according to another embodiment of the present disclosure.
  • Steps S2310, S2360, and S2370 of FIG. 23 may correspond to steps S1910, S1940, and S1950 of FIG. 19, respectively. Therefore, descriptions of steps S2310, S2360, and S2370 will be briefly described.
  • the apparatus for encoding an image may determine an intra prediction mode of a current chroma block (S2310).
  • the image encoding apparatus may determine an optimal intra prediction mode by performing rate-distortion optimization (RDO) on a plurality of intra prediction modes.
  • RDO rate-distortion optimization
  • the image encoding apparatus may determine whether the intra prediction mode of the current chroma block is the same as a predetermined first mode (S2320).
  • the first mode may be predefined based on the frequency of occurrence or may be signaled through a bitstream.
  • the first mode may be a chroma DM indicating that the intra prediction mode of the current chroma block is determined as an intra prediction mode of a predetermined position (e.g. a center position) in a corresponding luma block.
  • the first mode may be a planar mode. Whether the intra prediction mode of the current chroma block is the same as the first mode may be indicated based on a first mode flag.
  • a first value (eg 1) of the first mode flag may indicate that the intra prediction mode of the current chroma block is the first mode, and a second value (eg 0) of the first mode flag is the current chroma It may indicate that the intra prediction mode of the block is not the first mode.
  • the image encoding apparatus When the intra prediction mode of the current chroma block is the first mode (when the first mode flag has a first value) (Yes in S2320), the image encoding apparatus encodes the first mode flag to form a bitstream. It can be output as (S2330). In this case, the image encoding apparatus may not configure a chroma MPM list for the current chroma block. Also, the image encoding apparatus may encode only the first mode flag as intra prediction mode information of the current chroma block. That is, the intra prediction mode information of the current chroma block may not include the above-described MPM flag, MPM index, and remaining mode information.
  • the video encoding apparatus determines the intra prediction mode of the current chroma block. It may be determined whether it is the same as the second mode of (S2340).
  • the second mode may be predefined based on the frequency of occurrence or may be signaled through a bitstream. In one example, the second mode may be a planar mode. In another example, the second mode may be a chroma DM indicating that an intra prediction mode of the current chroma block is determined as an intra prediction mode of a predetermined position in a corresponding luma block.
  • Whether the intra prediction mode of the current chroma block is the same as the second mode may be indicated based on a second mode flag.
  • a first value (eg 1) of the second mode flag may indicate that the intra prediction mode of the current chroma block is the second mode, and a second value (eg 0) of the second mode flag is the current chroma It may indicate that the intra prediction mode of the block is not the second mode.
  • the image encoding apparatus When the intra prediction mode of the current chroma block is the second mode (when the second mode flag has a first value) (Yes in S2340), the image encoding apparatus includes the first mode flag and the second mode flag May be encoded and output in the form of a bitstream (S2350). In this case, the image encoding apparatus may not configure a chroma MPM list for the current chroma block. Also, the image encoding apparatus may encode only the first mode flag and the second mode flag as intra prediction mode information of the current chroma block. That is, the intra prediction mode information of the current chroma block may not include the above-described MPM flag, MPM index, and remaining mode information.
  • the image encoding apparatus provides a chroma MPM list for the current chroma block. It can be configured (S2360).
  • the chroma MPM list may be configured using an intra prediction mode of at least one neighboring chroma block (e.g. a left neighboring block and/or an upper neighboring block) adjacent to the current chroma block.
  • the neighboring chroma block may exist at the same position as the neighboring luma block used for intra prediction of the luma block (corresponding luma block) corresponding to the current chroma block, or may exist at a different position from the neighboring luma block.
  • the chroma MPM list may further include specific intra prediction modes according to a predetermined method. For example, if the first mode and the second mode are not chroma DM, the chroma MPM list indicates that the intra prediction mode of the current chroma block is an intra prediction mode of a predetermined position (eg a center position) of the corresponding luma block. It may include a chroma DM indicating that it is determined.
  • the image encoding apparatus may encode the intra prediction mode information of the current chroma block and output it in the form of a bitstream (S2370).
  • the intra prediction mode information may include the aforementioned first mode flag and second mode flag.
  • the intra prediction mode information may further include the above-described MPM flag, MPM index, and/or remaining mode information.
  • the first mode flag since the intra prediction mode of the current chroma block is not the first mode, the first mode flag may have a second value (e.g. 0). Also, since the intra prediction mode of the current chroma block is not the second mode, the second mode flag may have a second value (e.g. 0).
  • 24 is a flowchart illustrating a procedure for determining an intra prediction mode in an image decoding apparatus according to another embodiment of the present disclosure.
  • Steps S2410, S2460, and S2470 of FIG. 24 may correspond to steps S2010, S2040, and S2050 of FIG. 20, respectively. Therefore, descriptions of steps S2410, S2460, and S2470 will be briefly described.
  • the apparatus for decoding an image may obtain intra prediction mode information for a current chroma block from a bitstream (S2410).
  • the intra prediction mode information may include only a first mode flag.
  • the intra prediction mode information may include a first mode flag and a second mode flag.
  • the intra prediction mode information may include a first mode flag, a second mode flag, an MPM flag, an MPM index, and/or remaining mode information.
  • the image decoding apparatus may determine whether the first mode flag has a first value (e.g. 1) (S2420).
  • the image decoding apparatus may determine an intra prediction mode of the current chroma block as the first mode (S2430).
  • the first mode may be a chroma DM indicating that an intra prediction mode of the current chroma block is determined as an intra prediction mode of a corresponding luma block.
  • the first mode may be a planar mode.
  • the image decoding apparatus is in the second mode It may be determined whether the flag has a first value (eg 1) (S2440).
  • the image decoding apparatus may determine the intra prediction mode of the current chroma block as the second mode (S2450).
  • the second mode may be a planar mode.
  • the second mode may be chroma DM.
  • the video decoding apparatus may not configure a chroma MPM list for the current chroma block. .
  • the image decoding apparatus uses the current chroma block
  • a chroma MPM list for can be configured (S2460).
  • the chroma MPM list may be configured in the same way as the chroma MPM list configured by the video encoding apparatus.
  • the chroma MPM list may be configured using an intra prediction mode of a neighboring chroma block (e.g. a left neighboring block and/or an upper neighboring block) adjacent to the current chroma block.
  • the neighboring chroma block may exist at the same position as the neighboring luma block used for intra prediction of the luma block (corresponding luma block) corresponding to the current chroma block, or may exist at a different position from the neighboring luma block.
  • the chroma MPM list may include specific intra prediction modes according to a predetermined method. For example, if the first mode and the second mode are not chroma DM, the chroma MPM list indicates that the intra prediction mode of the current chroma block is an intra prediction mode of a predetermined position (eg a center position) of the corresponding luma block. It may include a chroma DM indicating that it is determined.
  • the video decoding apparatus may determine an intra prediction mode of the current chroma block based on the intra prediction mode information and the chroma MPM list (S2470). Specifically, when the MPM flag has a first value (e.g. 1), the video decoding apparatus may determine a candidate indicated by an MPM index among MPM candidates in the chroma MPM list as the intra prediction mode of the current chroma block. In contrast, when the MPM flag has a second value (eg 0), the video decoding apparatus selects an intra prediction mode indicated by the remaining mode information among the remaining intra prediction modes not included in the MPM list. It can be determined as the intra prediction mode of the block.
  • a first value e.g. 1
  • the video decoding apparatus may determine a candidate indicated by an MPM index among MPM candidates in the chroma MPM list as the intra prediction mode of the current chroma block.
  • the MPM flag has a second value (eg 0)
  • the video decoding apparatus selects an intra prediction mode
  • the video decoding apparatus does not decode the value of the MPM flag, and among MPM candidates in the chroma MPM list A candidate indicated by the MPM index may be determined as an intra prediction mode of the current chroma block.
  • a specific type eg LIP, MRL, ISP, etc.
  • the first mode is a chroma DM (or planar mode) and the second mode is a planar mode (or chroma DM).
  • the first mode and the second mode may be configured by a combination of various intra prediction modes.
  • the first mode may be a chroma DM and the second mode may be a DC mode, or the first mode may be a planner mode and the second mode may be a DC mode.
  • the number of intra prediction modes to be compared with the intra prediction mode of the current chroma block may be variously changed.
  • the apparatus for encoding/decoding an image may additionally encode/decode a third mode flag indicating whether the intra prediction mode of the current chroma block is the same as the third mode.
  • the apparatus for encoding/decoding an image may improve image encoding/decoding efficiency by configuring a chroma MPM list for a current chroma block based on a predetermined first mode flag and a second mode flag. I can.
  • the chroma MPM list according to the embodiments #1 to #5 of the present disclosure described with reference to FIGS. 10 to 22 may be configured singly for all chroma components of the current chroma block, or the chroma It may be configured separately for each of the components.
  • the image encoding/decoding apparatus is One commonly applied chroma MPM list can be configured.
  • the image encoding/decoding apparatus may configure a first chroma MPM list for the first chroma component and a second chroma MPM list for the second chroma component.
  • the first chroma MPM list and the second chroma MPM list may be configured in various forms.
  • the first chroma MPM list and the second chroma MPM list may include different numbers of MPM candidates.
  • the first chroma MPM list and the second chroma MPM list may all include the same MPM candidates, or at least some may include different MPM candidates.
  • the chroma DM included in the chroma MPM list according to the embodiments #1 to #5 of the present disclosure may be a multiple direct mode (MDM).
  • the multiple DM is a mode in which a single DM is extended to a plurality of modes, and may indicate that an intra prediction mode indicated by one of a plurality of DM candidates in a DM candidate list is determined as an intra prediction mode of the current chroma block.
  • the DM candidate list may include a plurality of DM candidates below, for example, as described above with reference to FIG. 11.
  • -Directional mode derived by adding or subtracting a predetermined offset (e.g. 1) to the already included directional mode
  • -Default DM candidate mode vertical mode, horizontal mode, 2, 34, 66, 10, 26 modes (in case of 65 directional modes)
  • the exemplary methods of the present disclosure are expressed as a series of operations for clarity of description, this is not intended to limit the order in which steps are performed, and each step may be performed simultaneously or in a different order if necessary.
  • the exemplary steps may include additional steps, other steps may be included excluding some steps, or may include additional other steps excluding some steps.
  • an image encoding apparatus or an image decoding apparatus performing a predetermined operation may perform an operation (step) of confirming an execution condition or situation of a corresponding operation (step). For example, when it is described that a predetermined operation is performed when a predetermined condition is satisfied, the video encoding apparatus or the video decoding apparatus performs an operation to check whether the predetermined condition is satisfied, and then performs the predetermined operation. I can.
  • various embodiments of the present disclosure may be implemented by hardware, firmware, software, or a combination thereof.
  • one or more ASICs Application Specific Integrated Circuits
  • DSPs Digital Signal Processors
  • DSPDs Digital Signal Processing Devices
  • PLDs Programmable Logic Devices
  • FPGAs Field Programmable Gate Arrays
  • general purpose It may be implemented by a processor (general processor), a controller, a microcontroller, a microprocessor, or the like.
  • the image decoding device and the image encoding device to which the embodiment of the present disclosure is applied include a multimedia broadcasting transmission/reception device, a mobile communication terminal, a home cinema video device, a digital cinema video device, a surveillance camera, a video chat device, and a real-time communication device such as video communication , Mobile streaming devices, storage media, camcorders, video-on-demand (VoD) service providers, OTT video (Over the top video) devices, Internet streaming service providers, three-dimensional (3D) video devices, video telephony video devices, and medical use. It may be included in a video device or the like, and may be used to process a video signal or a data signal.
  • an OTT video (Over the top video) device may include a game console, a Blu-ray player, an Internet-connected TV, a home theater system, a smartphone, a tablet PC, and a digital video recorder (DVR).
  • 25 is a diagram illustrating a content streaming system to which an embodiment according to the present disclosure can be applied.
  • the content streaming system to which the embodiment of the present disclosure is applied may largely include an encoding server, a streaming server, a web server, a media storage device, a user device, and a multimedia input device.
  • the encoding server serves to generate a bitstream by compressing content input from multimedia input devices such as a smartphone, a camera, and a camcorder into digital data, and transmits it to the streaming server.
  • multimedia input devices such as smart phones, cameras, camcorders, etc. directly generate bitstreams
  • the encoding server may be omitted.
  • the bitstream may be generated by an image encoding method and/or an image encoding apparatus to which an embodiment of the present disclosure is applied, and the streaming server may temporarily store the bitstream while transmitting or receiving the bitstream.
  • the streaming server may transmit multimedia data to a user device based on a user request through a web server, and the web server may serve as an intermediary for notifying the user of a service.
  • the web server transmits the request to the streaming server, and the streaming server transmits multimedia data to the user.
  • the content streaming system may include a separate control server, and in this case, the control server may play a role of controlling a command/response between devices in the content streaming system.
  • the streaming server may receive content from a media storage and/or encoding server. For example, when content is received from the encoding server, the content may be received in real time. In this case, in order to provide a smooth streaming service, the streaming server may store the bitstream for a predetermined time.
  • Examples of the user device include a mobile phone, a smart phone, a laptop computer, a digital broadcasting terminal, a personal digital assistant (PDA), a portable multimedia player (PMP), a navigation system, a slate PC, and Tablet PC (tablet PC), ultrabook (ultrabook), wearable device (e.g., smartwatch, glass terminal (smart glass), HMD (head mounted display)), digital TV, desktop There may be computers, digital signage, etc.
  • PDA personal digital assistant
  • PMP portable multimedia player
  • slate PC slate PC
  • Tablet PC Tablet PC
  • ultrabook ultrabook
  • wearable device e.g., smartwatch, glass terminal (smart glass), HMD (head mounted display)
  • digital TV desktop There may be computers, digital signage, etc.
  • Each server in the content streaming system may be operated as a distributed server, and in this case, data received from each server may be distributedly processed.
  • the scope of the present disclosure is software or machine-executable instructions (e.g., operating systems, applications, firmware, programs, etc.) that cause an operation according to the method of various embodiments to be executed on a device or computer, and such software or It includes a non-transitory computer-readable medium (non-transitory computer-readable medium) which stores instructions and the like and is executable on a device or a computer.
  • a non-transitory computer-readable medium non-transitory computer-readable medium
  • An embodiment according to the present disclosure may be used to encode/decode an image.

Landscapes

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

Abstract

Provided are video encoding/decoding method and apparatus. A video decoding method according to the present disclosure may comprise the steps of: decoding intra prediction mode information of a current chroma block from a bitstream; constructing a candidate list including intra prediction mode candidates of the current chroma block on the basis of the intra prediction mode information and an intra prediction mode of a neighboring chroma block adjacent to the current chroma block; determining an intra prediction mode of the current chroma block on the basis of the intra prediction mode information and the candidate list; and generating a prediction block for the current chroma block by performing intra prediction on the basis of the intra prediction mode of the current chroma block.

Description

크로마 성분의 인트라 예측을 수행하는 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법Video encoding/decoding method, apparatus, and bitstream transmission method for performing intra prediction of chroma components
본 개시는 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법에 관한 것으로서, 보다 상세하게는, 현재 크로마 블록에 대해 MPM 리스트를 기반으로 인트라 예측 과정을 수행하는 영상 부호화/복호화 방법, 장치 및 본 개시의 영상 부호화 방법/장치에 의해 생성된 비트스트림을 전송하는 방법에 관한 것이다.The present disclosure relates to an image encoding/decoding method, an apparatus, and a method of transmitting a bitstream, and more particularly, an image encoding/decoding method, an apparatus and a method for performing an intra prediction process based on an MPM list for a current chroma block, and It relates to a method of transmitting a bitstream generated by an image encoding method/apparatus of the present disclosure.
최근 HD(High Definition) 영상 및 UHD(Ultra High Definition) 영상과 같은 고해상도, 고품질의 영상에 대한 수요가 다양한 분야에서 증가하고 있다. 영상 데이터가 고해상도, 고품질이 될수록 기존의 영상 데이터에 비해 상대적으로 전송되는 정보량 또는 비트량이 증가하게 된다. 전송되는 정보량 또는 비트량의 증가는 전송 비용과 저장 비용의 증가를 초래한다.Recently, demand for high-resolution and high-quality images such as high definition (HD) images and ultra high definition (UHD) images is increasing in various fields. As the image data becomes high-resolution and high-quality, the amount of information or bits to be transmitted increases relative to the existing image data. An increase in the amount of information or bits to be transmitted leads to an increase in transmission cost and storage cost.
이에 따라, 고해상도, 고품질 영상의 정보를 효과적으로 전송하거나 저장하고, 재생하기 위한 고효율의 영상 압축 기술이 요구된다.Accordingly, there is a need for a highly efficient image compression technology for effectively transmitting, storing, and reproducing information of high-resolution and high-quality images.
본 개시는 부호화/복호화 효율이 향상된 영상 부호화/복호화 방법 및 장치를 제공하는 것을 목적으로 한다.An object of the present disclosure is to provide a video encoding/decoding method and apparatus with improved encoding/decoding efficiency.
또한, 본 개시는 크로마 성분에 대해 개선된 인트라 예측을 수행하는 영상 부호화/복호화 방법 및 장치를 제공하는 것을 목적으로 한다.In addition, an object of the present disclosure is to provide an image encoding/decoding method and apparatus for performing improved intra prediction on a chroma component.
또한, 본 개시는 루마 성분 및 크로마 성분에 대해 대해 MPM 리스트에 기반한 단일화된 인트라 예측 과정을 수행하는 영상 부호화/복호화 방법 및 장치를 제공하는 것을 목적으로 한다.In addition, an object of the present disclosure is to provide an image encoding/decoding method and apparatus for performing a unified intra prediction process based on an MPM list for a luma component and a chroma component.
또한, 본 개시는 본 개시에 따른 영상 부호화 방법 또는 장치에 의해 생성된 비트스트림을 전송하는 방법을 제공하는 것을 목적으로 한다.In addition, an object of the present disclosure is to provide a method for transmitting a bitstream generated by an image encoding method or apparatus according to the present disclosure.
또한, 본 개시는 본 개시에 따른 영상 부호화 방법 또는 장치에 의해 생성된 비트스트림을 저장한 기록 매체를 제공하는 것을 목적으로 한다.In addition, an object of the present disclosure is to provide a recording medium storing a bitstream generated by an image encoding method or apparatus according to the present disclosure.
또한, 본 개시는 본 개시에 따른 영상 복호화 장치에 의해 수신되고 복호화되어 영상의 복원에 이용되는 비트스트림을 저장한 기록 매체를 제공하는 것을 목적으로 한다.In addition, an object of the present disclosure is to provide a recording medium storing a bitstream that is received and decoded by an image decoding apparatus according to the present disclosure and used for restoring an image.
본 개시에서 이루고자 하는 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급하지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The technical problems to be achieved in the present disclosure are not limited to the technical problems mentioned above, and other technical problems that are not mentioned will be clearly understood by those of ordinary skill in the technical field to which the present disclosure belongs from the following description. I will be able to.
본 개시의 일 양상에 따른 영상 복호화 방법은, 비트스트림으로부터 현재 크로마 블록의 인트라 예측 모드 정보를 복호화하는 단계, 상기 인트라 예측 모드 정보 및 상기 현재 크로마 블록에 인접한 주변 크로마 블록의 인트라 예측 모드를 기반으로, 상기 현재 크로마 블록의 인트라 예측 모드 후보들을 포함하는 후보 리스트를 구성하는 단계, 상기 인트라 예측 모드 정보 및 상기 후보 리스트를 기반으로, 상기 현재 크로마 블록의 인트라 예측 모드를 결정하는 단계, 및 상기 현재 크로마 블록의 인트라 예측 모드를 기반으로 인트라 예측을 수행함으로써, 상기 현재 크로마 블록에 대한 예측 블록을 생성하는 단계를 포함할 수 있다.An image decoding method according to an aspect of the present disclosure includes decoding intra prediction mode information of a current chroma block from a bitstream, based on the intra prediction mode information and an intra prediction mode of a neighboring chroma block adjacent to the current chroma block. , Constructing a candidate list including intra prediction mode candidates of the current chroma block, determining an intra prediction mode of the current chroma block based on the intra prediction mode information and the candidate list, and the current chroma It may include generating a prediction block for the current chroma block by performing intra prediction based on the intra prediction mode of the block.
본 개시의 다른 양상에 따른 영상 복호화 장치는, 메모리 및 적어도 하나의 프로세서를 포함하며, 상기 적어도 하나의 프로세서는, 비트스트림으로부터 현재 크로마 블록의 인트라 예측 모드 정보를 복호화하고, 상기 인트라 예측 모드 정보 및 상기 현재 크로마 블록에 인접한 주변 크로마 블록의 인트라 예측 모드를 기반으로, 상기 현재 크로마 블록의 인트라 예측 모드 후보들을 포함하는 후보 리스트를 구성하고, 상기 인트라 예측 모드 정보 및 상기 후보 리스트를 기반으로 상기 현재 크로마 블록의 인트라 예측 모드를 결정하며, 상기 현재 크로마 블록의 인트라 예측 모드를 기반으로 인트라 예측을 수행함으로써, 상기 현재 크로마 블록에 대한 예측 블록을 생성할 수 있다.An image decoding apparatus according to another aspect of the present disclosure includes a memory and at least one processor, wherein the at least one processor decodes intra prediction mode information of a current chroma block from a bitstream, and includes the intra prediction mode information and A candidate list including intra prediction mode candidates of the current chroma block is constructed based on an intra prediction mode of a neighboring chroma block adjacent to the current chroma block, and the current chroma is based on the intra prediction mode information and the candidate list. A prediction block for the current chroma block may be generated by determining an intra prediction mode of a block and performing intra prediction based on the intra prediction mode of the current chroma block.
본 개시의 또 다른 양상에 따른 영상 부호화 방법은, 현재 크로마 블록의 인트라 예측 모드를 결정하는 단계, 상기 현재 크로마 블록의 인트라 예측 모드를 기반으로 인트라 예측을 수행함으로써, 상기 현재 크로마 블록에 대한 예측 블록을 생성하는 단계, 상기 현재 크로마 블록에 인접한 주변 크로마 블록의 인트라 예측 모드를 기반으로, 상기 현재 크로마 블록의 인트라 예측 모드 후보들을 포함하는 후보 리스트를 구성하는 단계, 및 상기 후보 리스트를 기반으로 상기 현재 크로마 블록의 인트라 예측 모드 정보를 부호화하는 단계를 포함할 수 있다.An image encoding method according to another aspect of the present disclosure includes determining an intra prediction mode of a current chroma block, and performing intra prediction based on the intra prediction mode of the current chroma block, thereby providing a prediction block for the current chroma block. Generating, based on an intra prediction mode of a neighboring chroma block adjacent to the current chroma block, constructing a candidate list including intra prediction mode candidates of the current chroma block, and the current based on the candidate list It may include encoding intra prediction mode information of a chroma block.
본 개시의 또 다른 양상에 따른 전송 방법은, 본 개시의 영상 부호화 장치 또는 영상 부호화 방법에 의해 생성된 비트스트림을 전송할 수 있다.A transmission method according to another aspect of the present disclosure may transmit a bitstream generated by the image encoding apparatus or image encoding method of the present disclosure.
본 개시의 또 다른 양상에 따른 컴퓨터 판독 가능한 기록 매체는, 본 개시의 영상 부호화 방법 또는 영상 부호화 장치에 의해 생성된 비트스트림을 저장할 수 있다.A computer-readable recording medium according to another aspect of the present disclosure may store a bitstream generated by the image encoding method or image encoding apparatus of the present disclosure.
본 개시에 대하여 위에서 간략하게 요약된 특징들은 후술하는 본 개시의 상세한 설명의 예시적인 양상일 뿐이며, 본 개시의 범위를 제한하는 것은 아니다.Features briefly summarized above with respect to the present disclosure are only exemplary aspects of the detailed description of the present disclosure described below, and do not limit the scope of the present disclosure.
본 개시에 따르면, 부호화/복호화 효율이 향상된 영상 부호화/복호화 방법 및 장치가 제공될 수 있다.According to the present disclosure, an image encoding/decoding method and apparatus with improved encoding/decoding efficiency may be provided.
또한, 본 개시에 따르면, 크로마 성분에 대해 개선된 인트라 예측을 수행하는 영상 부호화/복호화 방법 및 장치가 제공될 수 있다.In addition, according to the present disclosure, an image encoding/decoding method and apparatus for performing improved intra prediction on a chroma component may be provided.
또한, 본 개시에 따르면, 루마 성분 및 크로마 성분에 대해 MPM 리스트에 기반한 단일화된 인트라 예측을 수행하는 영상 부호화/복호화 방법 및 장치가 제공될 수 있다.Further, according to the present disclosure, an image encoding/decoding method and apparatus for performing unified intra prediction based on an MPM list on a luma component and a chroma component may be provided.
또한, 본 개시에 따르면, 본 개시에 따른 영상 부호화 방법 또는 장치에 의해 생성된 비트스트림을 전송하는 방법이 제공될 수 있다.In addition, according to the present disclosure, a method for transmitting a bitstream generated by an image encoding method or an apparatus according to the present disclosure may be provided.
또한, 본 개시에 따르면, 본 개시에 따른 영상 부호화 방법 또는 장치에 의해 생성된 비트스트림을 저장한 기록 매체가 제공될 수 있다.Further, according to the present disclosure, a recording medium storing a bitstream generated by an image encoding method or apparatus according to the present disclosure may be provided.
또한, 본 개시에 따르면, 본 개시에 따른 영상 복호화 장치에 의해 수신되고 복호화되어 영상의 복원에 이용되는 비트스트림을 저장한 기록 매체가 제공될 수 있다.Further, according to the present disclosure, a recording medium may be provided that stores a bitstream that is received and decoded by the image decoding apparatus according to the present disclosure and used for image restoration.
본 개시에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The effects obtainable in the present disclosure are not limited to the above-mentioned effects, and other effects not mentioned may be clearly understood by those of ordinary skill in the art from the following description. will be.
도 1은 본 개시에 따른 실시예가 적용될 수 있는 비디오 코딩 시스템을 개략적으로 나타낸 도면이다.1 is a diagram schematically illustrating a video coding system to which an embodiment according to the present disclosure can be applied.
도 2는 본 개시에 따른 실시예가 적용될 수 있는 영상 부호화 장치를 개략적으로 나타낸 도면이다.2 is a schematic diagram of an image encoding apparatus to which an embodiment according to the present disclosure can be applied.
도 3은 본 개시에 따른 실시예가 적용될 수 있는 영상 복호화 장치를 개략적으로 나타낸 도면이다.3 is a schematic diagram of an image decoding apparatus to which an embodiment according to the present disclosure can be applied.
도 4는 인트라 예측 기반 비디오/영상 인코딩 방법을 나타낸 흐름도이다.4 is a flowchart illustrating a video/video encoding method based on intra prediction.
도 5는 본 개시에 따른 인트라 예측부의 구성을 예시적으로 나타낸 도면이다.5 is a diagram illustrating a configuration of an intra prediction unit according to the present disclosure.
도 6은 인트라 예측 기반 비디오/영상 디코딩 방법을 나타낸 흐름도이다.6 is a flowchart illustrating a video/video decoding method based on intra prediction.
도 7은 본 개시에 따른 인트라 예측부의 구성을 예시적으로 나타낸 도면이다.7 is a diagram illustrating an exemplary configuration of an intra prediction unit according to the present disclosure.
도 8a는 본 개시의 일 실시예에 따른 인트라 예측 방향을 나타낸 도면이다.8A is a diagram illustrating an intra prediction direction according to an embodiment of the present disclosure.
도 8b는 본 개시의 다른 실시예에 따른 인트라 예측 방향을 나타낸 도면이다.8B is a diagram illustrating an intra prediction direction according to another embodiment of the present disclosure.
도 9a 내지 도 9c는 크로마 포맷에 따른 루마 성분 블록(루마 성분 어레이)과 크로마 성분 블록(크로마 성분 어레이)의 관계를 설명하기 위한 도면들이다.9A to 9C are diagrams for explaining a relationship between a luma component block (a luma component array) and a chroma component block (a chroma component array) according to a chroma format.
도 10은 크로마 포맷의 시그널링 정보를 포함하는 SPS 신택스의 일 예를 나타낸 도면이다.10 is a diagram illustrating an example of an SPS syntax including signaling information in a chroma format.
도 11은 DM의 경우 현재 크로마 블록의 인트라 예측 모드를 도출하기 위한 소정 위치를 도시한 도면이다.11 is a diagram illustrating a predetermined position for deriving an intra prediction mode of a current chroma block in the case of a DM.
도 12는 크로마 포맷에 따른 현재 크로마 블록의 크기를 예시적으로 나타낸 도면이다.12 is a diagram illustrating a size of a current chroma block according to a chroma format.
도 13은 본 개시의 일 실시예에 따른 영상 부호화 장치에서 인트라 예측 모드 시그널링 절차를 나타낸 흐름도이다.13 is a flowchart illustrating an intra prediction mode signaling procedure in an image encoding apparatus according to an embodiment of the present disclosure.
도 14는 본 개시의 일 실시예에 따른 영상 복호화 장치에서 인트라 예측 모드 결정 절차를 나타낸 흐름도이다.14 is a flowchart illustrating a procedure for determining an intra prediction mode in an image decoding apparatus according to an embodiment of the present disclosure.
도 15는 인트라 예측 모드 도출 절차를 보다 구체적으로 설명하기 위한 흐름도이다.15 is a flowchart for describing a procedure for deriving an intra prediction mode in more detail.
도 16은 본 개시의 다른 실시예에 따른 영상 부호화 장치에서 인트라 예측 모드 시그널링 절차를 나타낸 흐름도이다.16 is a flowchart illustrating an intra prediction mode signaling procedure in an image encoding apparatus according to another embodiment of the present disclosure.
도 17은 슬라이스 타입 정보를 포함하는 슬라이스 헤더의 신택스를 나타낸 도면이다.17 is a diagram showing syntax of a slice header including slice type information.
도 18은 본 개시의 다른 실시예에 따른 영상 복호화 장치에서 인트라 예측 모드 결정 절차를 나타낸 흐름도이다.18 is a flowchart illustrating a procedure for determining an intra prediction mode in an image decoding apparatus according to another embodiment of the present disclosure.
도 19는 본 개시의 또 다른 실시예에 따른 영상 부호화 장치에서 인트라 예측 모드 시그널링 절차를 나타낸 흐름도이다.19 is a flowchart illustrating an intra prediction mode signaling procedure in an image encoding apparatus according to another embodiment of the present disclosure.
도 20은 본 개시의 또 다른 실시예에 따른 영상 복호화 장치에서 인트라 예측 모드 결정 절차를 나타낸 흐름도이다.20 is a flowchart illustrating a procedure for determining an intra prediction mode in an image decoding apparatus according to another embodiment of the present disclosure.
도 21은 본 개시의 또 다른 실시예에 따른 영상 부호화 장치에서 인트라 예측 모드 시그널링 절차를 나타낸 흐름도이다.21 is a flowchart illustrating an intra prediction mode signaling procedure in an image encoding apparatus according to another embodiment of the present disclosure.
도 22는 본 개시의 또 다른 실시예에 따른 영상 복호화 장치에서 인트라 예측 모드 결정 절차를 나타낸 흐름도이다.22 is a flowchart illustrating a procedure for determining an intra prediction mode in an image decoding apparatus according to another embodiment of the present disclosure.
도 23은 본 개시의 또 다른 실시예에 따른 영상 부호화 장치에서 인트라 예측 모드 시그널링 절차를 나타낸 흐름도이다.23 is a flowchart illustrating an intra prediction mode signaling procedure in an image encoding apparatus according to another embodiment of the present disclosure.
도 24는 본 개시의 또 다른 실시예에 따른 영상 복호화 장치에서 인트라 예측 모드 결정 절차를 나타낸 흐름도이다.24 is a flowchart illustrating a procedure for determining an intra prediction mode in an image decoding apparatus according to another embodiment of the present disclosure.
도 25는 본 개시에 따른 실시예가 적용될 수 있는 컨텐츠 스트리밍 시스템을 예시적으로 나타낸 도면이다.25 is a diagram illustrating a content streaming system to which an embodiment according to the present disclosure can be applied.
이하에서는 첨부한 도면을 참고로 하여 본 개시의 실시예에 대하여 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나, 본 개시는 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. Hereinafter, embodiments of the present disclosure will be described in detail with reference to the accompanying drawings so that those of ordinary skill in the art may easily implement the embodiments. However, the present disclosure may be implemented in various different forms and is not limited to the embodiments described herein.
본 개시의 실시예를 설명함에 있어서 공지 구성 또는 기능에 대한 구체적인 설명이 본 개시의 요지를 흐릴 수 있다고 판단되는 경우에는 그에 대한 상세한 설명은 생략한다. 그리고, 도면에서 본 개시에 대한 설명과 관계없는 부분은 생략하였으며, 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.In describing an embodiment of the present disclosure, when it is determined that a detailed description of a known configuration or function may obscure the subject matter of the present disclosure, a detailed description thereof will be omitted. In addition, parts not related to the description of the present disclosure in the drawings are omitted, and similar reference numerals are attached to similar parts.
본 개시에 있어서, 어떤 구성요소가 다른 구성요소와 "연결", "결합" 또는 "접속"되어 있다고 할 때, 이는 직접적인 연결관계뿐만 아니라, 그 중간에 또 다른 구성요소가 존재하는 간접적인 연결관계도 포함할 수 있다. 또한 어떤 구성요소가 다른 구성요소를 "포함한다" 또는 "가진다"고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 배제하는 것이 아니라 또 다른 구성요소를 더 포함할 수 있는 것을 의미한다.In the present disclosure, when a component is said to be "connected", "coupled" or "connected" with another component, it is not only a direct connection relationship, but also an indirect connection relationship in which another component exists in the middle. It can also include. In addition, when a certain component "includes" or "have" another component, it means that other components may be further included rather than excluding other components unless otherwise stated. .
본 개시에 있어서, 제1, 제2 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용되며, 특별히 언급되지 않는 한 구성요소들간의 순서 또는 중요도 등을 한정하지 않는다. 따라서, 본 개시의 범위 내에서 일 실시예에서의 제1 구성요소는 다른 실시예에서 제2 구성요소라고 칭할 수도 있고, 마찬가지로 일 실시예에서의 제2 구성요소를 다른 실시예에서 제1 구성요소라고 칭할 수도 있다. In the present disclosure, terms such as first and second are used only for the purpose of distinguishing one component from other components, and do not limit the order or importance of the components unless otherwise noted. Accordingly, within the scope of the present disclosure, a first component in one embodiment may be referred to as a second component in another embodiment, and similarly, a second component in one embodiment is referred to as a first component in another embodiment. It can also be called.
본 개시에 있어서, 서로 구별되는 구성요소들은 각각의 특징을 명확하게 설명하기 위함이며, 구성요소들이 반드시 분리되는 것을 의미하지는 않는다. 즉, 복수의 구성요소가 통합되어 하나의 하드웨어 또는 소프트웨어 단위로 이루어질 수도 있고, 하나의 구성요소가 분산되어 복수의 하드웨어 또는 소프트웨어 단위로 이루어질 수도 있다. 따라서, 별도로 언급하지 않더라도 이와 같이 통합된 또는 분산된 실시예도 본 개시의 범위에 포함된다. In the present disclosure, components that are distinguished from each other are intended to clearly describe each feature, and do not necessarily mean that the components are separated. That is, a plurality of components may be integrated into one hardware or software unit, or one component may be distributed to form a plurality of hardware or software units. Therefore, even if not stated otherwise, such integrated or distributed embodiments are also included in the scope of the present disclosure.
본 개시에 있어서, 다양한 실시예에서 설명하는 구성요소들이 반드시 필수적인 구성요소들은 의미하는 것은 아니며, 일부는 선택적인 구성요소일 수 있다. 따라서, 일 실시예에서 설명하는 구성요소들의 부분집합으로 구성되는 실시예도 본 개시의 범위에 포함된다. 또한, 다양한 실시예에서 설명하는 구성요소들에 추가적으로 다른 구성요소를 포함하는 실시예도 본 개시의 범위에 포함된다. In the present disclosure, components described in various embodiments do not necessarily mean essential components, and some may be optional components. Accordingly, an embodiment consisting of a subset of components described in an embodiment is also included in the scope of the present disclosure. In addition, embodiments including other elements in addition to the elements described in the various embodiments are included in the scope of the present disclosure.
본 개시는 영상의 부호화 및 복호화에 관한 것으로서, 본 개시에서 사용되는 용어는, 본 개시에서 새롭게 정의되지 않는 한 본 개시가 속한 기술 분야에서 통용되는 통상의 의미를 가질 수 있다. The present disclosure relates to encoding and decoding of an image, and terms used in the present disclosure may have a common meaning commonly used in the technical field to which the present disclosure belongs unless newly defined in the present disclosure.
본 개시에서 "픽처(picture)"는 일반적으로 특정 시간대의 하나의 영상을 나타내는 단위를 의미하며, 슬라이스(slice)/타일(tile)은 픽처의 일부를 구성하는 부호화 단위로서, 하나의 픽처는 하나 이상의 슬라이스/타일로 구성될 수 있다. 또한, 슬라이스/타일은 하나 이상의 CTU(coding tree unit)를 포함할 수 있다. In the present disclosure, a “picture” generally refers to a unit representing one image in a specific time period, and a slice/tile is a coding unit constituting a part of a picture, and one picture is one It may be composed of more than one slice/tile. In addition, a slice/tile may include one or more coding tree units (CTU).
본 개시에서 "픽셀(pixel)" 또는 "펠(pel)"은 하나의 픽처(또는 영상)를 구성하는 최소의 단위를 의미할 수 있다. 또한, 픽셀에 대응하는 용어로서 "샘플(sample)"이 사용될 수 있다. 샘플은 일반적으로 픽셀 또는 픽셀의 값을 나타낼 수 있으며, 루마(luma) 성분의 픽셀/픽셀값만을 나타낼 수도 있고, 크로마(chroma) 성분의 픽셀/픽셀 값만을 나타낼 수도 있다.In the present disclosure, “pixel” or “pel” may mean a minimum unit constituting one picture (or image). In addition, “sample” may be used as a term corresponding to a pixel. A sample may generally represent a pixel or a value of a pixel, may represent only a pixel/pixel value of a luma component, or may represent only a pixel/pixel value of a chroma component.
본 개시에서 "유닛(unit)"은 영상 처리의 기본 단위를 나타낼 수 있다. 유닛은 픽처의 특정 영역 및 해당 영역에 관련된 정보 중 적어도 하나를 포함할 수 있다. 유닛은 경우에 따라서 "샘플 어레이", "블록(block)" 또는 "영역(area)" 등의 용어와 혼용하여 사용될 수 있다. 일반적인 경우, MxN 블록은 M개의 열과 N개의 행으로 이루어진 샘플들(또는 샘플 어레이) 또는 변환 계수(transform coefficient)들의 집합(또는 어레이)을 포함할 수 있다.In the present disclosure, "unit" may represent a basic unit of image processing. The unit may include at least one of a specific area of a picture and information related to the corresponding area. The unit may be used interchangeably with terms such as "sample array", "block", or "area" depending on the case. In general, the MxN block may include samples (or sample arrays) consisting of M columns and N rows, or a set (or array) of transform coefficients.
본 개시에서 "현재 블록"은 "현재 코딩 블록", "현재 코딩 유닛", "부호화 대상 블록", "복호화 대상 블록" 또는 "처리 대상 블록" 중 하나를 의미할 수 있다. 예측이 수행되는 경우, "현재 블록"은 "현재 예측 블록" 또는 "예측 대상 블록"을 의미할 수 있다. 변환(역변환)/양자화(역양자화)가 수행되는 경우, "현재 블록"은 "현재 변환 블록" 또는 "변환 대상 블록"을 의미할 수 있다. 필터링이 수행되는 경우, "현재 블록"은 "필터링 대상 블록"을 의미할 수 있다.In the present disclosure, "current block" may mean one of "current coding block", "current coding unit", "coding object block", "decoding object block", or "processing object block". When prediction is performed, "current block" may mean "current prediction block" or "prediction target block". When transformation (inverse transformation)/quantization (inverse quantization) is performed, "current block" may mean "current transform block" or "transform target block". When filtering is performed, “current block” may mean “block to be filtered”.
본 개시에서 "현재 블록"은 크로마 블록이라는 명시적인 기재가 없는 한 루마 성분 블록과 크로마 성분 블록을 모두 포함하는 블록 또는 "현재 블록의 루마 블록"을 의미할 수 있다. 현재 블록의 루마 성분 블록은 명시적으로 "루마 블록" 또는 "현재 루마 블록"과 같이 루마 성분 블록이라는 명시적인 기재를 포함하여 표현될 수 있다. 또한, 현재 블록의 크로마 성분 블록은 명시적으로 "크로마 블록" 또는 "현재 크로마 블록"과 같이 크로마 성분 블록이라는 명시적인 기재를 포함하여 표현될 수 있다.In the present disclosure, "current block" may mean a block including both a luma component block and a chroma component block or "a luma block of the current block" unless explicitly stated as a chroma block. The luma component block of the current block may be explicitly expressed by including an explicit description of a luma component block, such as a "luma block" or a "current luma block". In addition, the chroma component block of the current block may be explicitly expressed by including an explicit description of a chroma component block such as a "chroma block" or a "current chroma block".
본 개시에서 "/"와 ","는 "및/또는"으로 해석될 수 있다. 예를 들어, "A/B"와 "A, B"는 "A 및/또는 B"로 해석될 수 있다. 또한, "A/B/C"와 "A, B, C"는 "A, B 및/또는 C 중 적어도 하나"를 의미할 수 있다.In the present disclosure, "/" and "," may be interpreted as "and/or". For example, "A/B" and "A, B" may be interpreted as "A and/or B". In addition, “A/B/C” and “A, B, C” may mean “at least one of A, B and/or C”.
본 개시에서 "또는"은 "및/또는"으로 해석될 수 있다. 예를 들어, "A 또는 B"는, 1) "A" 만을 의미하거나 2) "B" 만을 의미하거나, 3) "A 및 B"를 의미할 수 있다. 또는, 본 개시에서 "또는"은 "추가적으로 또는 대체적으로(additionally or alternatively)"를 의미할 수 있다.In the present disclosure, "or" may be interpreted as "and/or". For example, "A or B" may mean 1) only "A", 2) only "B", or 3) "A and B". Alternatively, in the present disclosure, "or" may mean "additionally or alternatively".
비디오 코딩 시스템 개요Video coding system overview
도 1은 본 개시에 따른 실시예가 적용될 수 있는 비디오 코딩 시스템을 개략적으로 나타낸 도면이다.1 is a diagram schematically illustrating a video coding system to which an embodiment according to the present disclosure can be applied.
일 실시예에 따른 비디오 코딩 시스템은 부호화 장치(10) 및 복호화 장치(20)를 포함할 수 있다. 부호화 장치(10)는 부호화된 비디오(video) 및/또는 영상(image) 정보 또는 데이터를 파일 또는 스트리밍 형태로 디지털 저장매체 또는 네트워크를 통하여 복호화 장치(20)로 전달할 수 있다. A video coding system according to an embodiment may include an encoding device 10 and a decoding device 20. The encoding device 10 may transmit the encoded video and/or image information or data in a file or streaming format to the decoding device 20 through a digital storage medium or a network.
일 실시예에 따른 부호화 장치(10)는 비디오 소스 생성부(11), 부호화부(12), 전송부(13)를 포함할 수 있다. 일 실시예에 따른 복호화 장치(20)는 수신부(21), 복호화부(22) 및 렌더링부(23)를 포함할 수 있다. 상기 부호화부(12)는 비디오/영상 부호화부라고 불릴 수 있고, 상기 복호화부(22)는 비디오/영상 복호화부라고 불릴 수 있다. 전송부(13)는 부호화부(12)에 포함될 수 있다. 수신부(21)는 복호화부(22)에 포함될 수 있다. 렌더링부(23)는 디스플레이부를 포함할 수도 있고, 디스플레이부는 별개의 디바이스 또는 외부 컴포넌트로 구성될 수도 있다. The encoding apparatus 10 according to an embodiment may include a video source generator 11, an encoding unit 12, and a transmission unit 13. The decoding apparatus 20 according to an embodiment may include a receiving unit 21, a decoding unit 22, and a rendering unit 23. The encoder 12 may be referred to as a video/image encoder, and the decoder 22 may be referred to as a video/image decoder. The transmission unit 13 may be included in the encoding unit 12. The receiving unit 21 may be included in the decoding unit 22. The rendering unit 23 may include a display unit, and the display unit may be configured as a separate device or an external component.
비디오 소스 생성부(11)는 비디오/영상의 캡쳐, 합성 또는 생성 과정 등을 통하여 비디오/영상을 획득할 수 있다. 비디오 소스 생성부(11)는 비디오/영상 캡쳐 디바이스 및/또는 비디오/영상 생성 디바이스를 포함할 수 있다. 비디오/영상 캡쳐 디바이스는 예를 들어, 하나 이상의 카메라, 이전에 캡쳐된 비디오/영상을 포함하는 비디오/영상 아카이브 등을 포함할 수 있다. 비디오/영상 생성 디바이스는 예를 들어 컴퓨터, 타블렛 및 스마트폰 등을 포함할 수 있으며 (전자적으로) 비디오/영상을 생성할 수 있다. 예를 들어, 컴퓨터 등을 통하여 가상의 비디오/영상이 생성될 수 있으며, 이 경우 관련 데이터가 생성되는 과정으로 비디오/영상 캡쳐 과정이 갈음될 수 있다.The video source generator 11 may acquire a video/image through a process of capturing, synthesizing, or generating a video/image. The video source generator 11 may include a video/image capturing device and/or a video/image generating device. The video/image capture device may include, for example, one or more cameras, a video/image archive including previously captured video/images, and the like. The video/image generating device may include, for example, a computer, a tablet and a smartphone, and may (electronically) generate a video/image. For example, a virtual video/image may be generated through a computer or the like, and in this case, a video/image capturing process may be substituted as a process of generating related data.
부호화부(12)는 입력 비디오/영상을 부호화할 수 있다. 부호화부(12)는 압축 및 부호화 효율을 위하여 예측, 변환, 양자화 등 일련의 절차를 수행할 수 있다. 부호화부(12)는 부호화된 데이터(부호화된 비디오/영상 정보)를 비트스트림(bitstream) 형태로 출력할 수 있다.The encoder 12 may encode an input video/image. The encoder 12 may perform a series of procedures such as prediction, transformation, and quantization for compression and encoding efficiency. The encoder 12 may output encoded data (coded video/image information) in the form of a bitstream.
전송부(13)는 비트스트림 형태로 출력된 부호화된 비디오/영상 정보 또는 데이터를 파일 또는 스트리밍 형태로 디지털 저장매체 또는 네트워크를 통하여 복호화 장치(20)의 수신부(21)로 전달할 수 있다. 디지털 저장 매체는 USB, SD, CD, DVD, 블루레이, HDD, SSD 등 다양한 저장 매체를 포함할 수 있다. 전송부(13)는 미리 정해진 파일 포맷을 통하여 미디어 파일을 생성하기 위한 엘리먼트를 포함할 수 있고, 방송/통신 네트워크를 통한 전송을 위한 엘리먼트를 포함할 수 있다. 수신부(21)는 상기 저장매체 또는 네트워크로부터 상기 비트스트림을 추출/수신하여 복호화부(22)로 전달할 수 있다.The transmission unit 13 may transmit the encoded video/image information or data output in the form of a bitstream to the reception unit 21 of the decoding apparatus 20 through a digital storage medium or a network in a file or streaming form. Digital storage media may include various storage media such as USB, SD, CD, DVD, Blu-ray, HDD, and SSD. The transmission unit 13 may include an element for generating a media file through a predetermined file format, and may include an element for transmission through a broadcast/communication network. The receiving unit 21 may extract/receive the bitstream from the storage medium or network and transmit it to the decoding unit 22.
복호화부(22)는 부호화부(12)의 동작에 대응하는 역양자화, 역변환, 예측 등 일련의 절차를 수행하여 비디오/영상을 복호화할 수 있다. The decoder 22 may decode the video/image by performing a series of procedures such as inverse quantization, inverse transformation, and prediction corresponding to the operation of the encoder 12.
렌더링부(23)는 복호화된 비디오/영상을 렌더링할 수 있다. 렌더링된 비디오/영상은 디스플레이부를 통하여 디스플레이될 수 있다.The rendering unit 23 may render the decoded video/image. The rendered video/image may be displayed through the display unit.
영상 부호화 장치 개요Video encoding device overview
도 2는 본 개시에 따른 실시예가 적용될 수 있는 영상 부호화 장치를 개략적으로 나타낸 도면이다.2 is a schematic diagram of an image encoding apparatus to which an embodiment according to the present disclosure can be applied.
도 2에 도시된 바와 같이, 영상 부호화 장치(100)는 영상 분할부(110), 감산부(115), 변환부(120), 양자화부(130), 역양자화부(140), 역변환부(150), 가산부(155), 필터링부(160), 메모리(170), 인터 예측부(180), 인트라 예측부(185) 및 엔트로피 인코딩부(190)를 포함할 수 있다. 인터 예측부(180) 및 인트라 예측부(185)는 합쳐서 "예측부"라고 지칭될 수 있다. 변환부(120), 양자화부(130), 역양자화부(140), 역변환부(150)는 레지듀얼(residual) 처리부에 포함될 수 있다. 레지듀얼 처리부는 감산부(115)를 더 포함할 수도 있다. As shown in FIG. 2, the image encoding apparatus 100 includes an image segmentation unit 110, a subtraction unit 115, a transformation unit 120, a quantization unit 130, an inverse quantization unit 140, and an inverse transformation unit ( 150), an addition unit 155, a filtering unit 160, a memory 170, an inter prediction unit 180, an intra prediction unit 185, and an entropy encoding unit 190. The inter prediction unit 180 and the intra prediction unit 185 may be collectively referred to as a “prediction unit”. The transform unit 120, the quantization unit 130, the inverse quantization unit 140, and the inverse transform unit 150 may be included in a residual processing unit. The residual processing unit may further include a subtraction unit 115.
영상 부호화 장치(100)를 구성하는 복수의 구성부들의 전부 또는 적어도 일부는 실시예에 따라 하나의 하드웨어 컴포넌트(예를 들어, 인코더 또는 프로세서)로 구현될 수 있다. 또한 메모리(170)는 DPB(decoded picture buffer)를 포함할 수 있고, 디지털 저장 매체에 의하여 구현될 수 있다. All or at least some of the plurality of constituent units constituting the image encoding apparatus 100 may be implemented as one hardware component (eg, an encoder or a processor) according to embodiments. In addition, the memory 170 may include a decoded picture buffer (DPB), and may be implemented by a digital storage medium.
영상 분할부(110)는 영상 부호화 장치(100)에 입력된 입력 영상(또는, 픽쳐, 프레임)을 하나 이상의 처리 유닛(processing unit)으로 분할할 수 있다. 일 예로, 상기 처리 유닛은 코딩 유닛(coding unit, CU)이라고 불릴 수 있다. 코딩 유닛은 코딩 트리 유닛(coding tree unit, CTU) 또는 최대 코딩 유닛(largest coding unit, LCU)을 QT/BT/TT (Quad-tree/binary-tree/ternary-tree) 구조에 따라 재귀적으로(recursively) 분할함으로써 획득될 수 있다. 예를 들어, 하나의 코딩 유닛은 쿼드 트리 구조, 바이너리 트리 구조 및/또는 터너리 트리 구조를 기반으로 하위(deeper) 뎁스의 복수의 코딩 유닛들로 분할될 수 있다. 코딩 유닛의 분할을 위해, 쿼드 트리 구조가 먼저 적용되고 바이너리 트리 구조 및/또는 터너리 트리 구조가 나중에 적용될 수 있다. 더 이상 분할되지 않는 최종 코딩 유닛을 기반으로 본 개시에 따른 코딩 절차가 수행될 수 있다. 최대 코딩 유닛이 바로 최종 코딩 유닛으로 사용될 수 있고, 최대 코딩 유닛을 분할하여 획득한 하위 뎁스의 코딩 유닛이 최종 코닛 유닛으로 사용될 수도 있다. 여기서 코딩 절차라 함은 후술하는 예측, 변환 및/또는 복원 등의 절차를 포함할 수 있다. 다른 예로, 상기 코딩 절차의 처리 유닛은 예측 유닛(PU: Prediction Unit) 또는 변환 유닛(TU: Transform Unit)일 수 있다. 상기 예측 유닛 및 상기 변환 유닛은 각각 상기 최종 코딩 유닛으로부터 분할 또는 파티셔닝될 수 있다. 상기 예측 유닛은 샘플 예측의 단위일 수 있고, 상기 변환 유닛은 변환 계수를 유도하는 단위 및/또는 변환 계수로부터 레지듀얼 신호(residual signal)를 유도하는 단위일 수 있다. The image segmentation unit 110 may divide an input image (or picture, frame) input to the image encoding apparatus 100 into one or more processing units. For example, the processing unit may be referred to as a coding unit (CU). The coding unit is a coding tree unit (CTU) or a largest coding unit (LCU) recursively according to a QT/BT/TT (Quad-tree/binary-tree/ternary-tree) structure ( It can be obtained by dividing recursively. For example, one coding unit may be divided into a plurality of coding units of a deeper depth based on a quad tree structure, a binary tree structure, and/or a ternary tree structure. For the division of the coding unit, a quad tree structure may be applied first and a binary tree structure and/or a ternary tree structure may be applied later. The coding procedure according to the present disclosure may be performed based on the final coding unit that is no longer divided. The largest coding unit may be directly used as the final coding unit, or a coding unit of a lower depth obtained by dividing the largest coding unit may be used as the final cornet unit. Here, the coding procedure may include a procedure such as prediction, transformation, and/or restoration, which will be described later. As another example, the processing unit of the coding procedure may be a prediction unit (PU) or a transform unit (TU). The prediction unit and the transform unit may be divided or partitioned from the final coding unit, respectively. The prediction unit may be a unit of sample prediction, and the transform unit may be a unit for inducing a transform coefficient and/or a unit for inducing a residual signal from the transform coefficient.
예측부(인터 예측부(180) 또는 인트라 예측부(185))는 처리 대상 블록(현재 블록)에 대한 예측을 수행하고, 상기 현재 블록에 대한 예측 샘플들을 포함하는 예측된 블록(predicted block)을 생성할 수 있다. 예측부는 현재 블록 또는 CU 단위로 인트라 예측이 적용되는지 또는 인터 예측이 적용되는지 결정할 수 있다. 예측부는 현재 블록의 예측에 관한 다양한 정보를 생성하여 엔트로피 인코딩부(190)로 전달할 수 있다. 예측에 관한 정보는 엔트로피 인코딩부(190)에서 인코딩되어 비트스트림 형태로 출력될 수 있다. The prediction unit (inter prediction unit 180 or intra prediction unit 185) performs prediction on a block to be processed (current block), and generates a predicted block including prediction samples for the current block. Can be generated. The prediction unit may determine whether intra prediction or inter prediction is applied in units of a current block or CU. The prediction unit may generate various information on prediction of the current block and transmit it to the entropy encoding unit 190. The information on prediction may be encoded by the entropy encoding unit 190 and output in the form of a bitstream.
인트라 예측부(185)는 현재 픽처 내의 샘플들을 참조하여 현재 블록을 예측할 수 있다. 상기 참조되는 샘플들은 인트라 예측 모드 및/또는 인트라 예측 기법에 따라 상기 현재 블록의 주변(neighbor)에 위치할 수 있고, 또는 떨어져서 위치할 수도 있다. 인트라 예측 모드들은 복수의 비방향성 모드와 복수의 방향성 모드를 포함할 수 있다. 비방향성 모드는 예를 들어 플래너(Planar) 모드 및 DC 모드를 포함할 수 있다. 방향성 모드는 예측 방향의 세밀한 정도에 따라, 예를 들어 33개의 방향성 예측 모드 또는 65개의 방향성 예측 모드를 포함할 수 있다. 다만, 이는 예시로서 설정에 따라 그 이상 또는 그 이하의 개수의 방향성 예측 모드들이 사용될 수 있다. 인트라 예측부(185)는 주변 블록에 적용된 예측 모드를 이용하여, 현재 블록에 적용되는 예측 모드를 결정할 수도 있다.The intra prediction unit 185 may predict the current block by referring to samples in the current picture. The referenced samples may be located in a neighborhood of the current block or may be located away from each other according to an intra prediction mode and/or an intra prediction technique. The intra prediction modes may include a plurality of non-directional modes and a plurality of directional modes. The non-directional mode may include, for example, a planar mode and a DC mode. The directional mode may include, for example, 33 directional prediction modes or 65 directional prediction modes, depending on the degree of detail of the prediction direction. However, this is an example, and more or less directional prediction modes may be used depending on the setting. The intra prediction unit 185 may determine a prediction mode applied to the current block by using the prediction mode applied to the neighboring block.
인터 예측부(180)는 참조 픽처 상에서 움직임 벡터에 의해 특정되는 참조 블록(참조 샘플 어레이)을 기반으로, 현재 블록에 대한 예측된 블록을 유도할 수 있다. 이때, 인터 예측 모드에서 전송되는 움직임 정보의 양을 줄이기 위해 주변 블록과 현재 블록 간의 움직임 정보의 상관성에 기반하여 움직임 정보를 블록, 서브블록 또는 샘플 단위로 예측할 수 있다. 상기 움직임 정보는 움직임 벡터 및 참조 픽처 인덱스를 포함할 수 있다. 상기 움직임 정보는 인터 예측 방향(L0 예측, L1 예측, Bi 예측 등) 정보를 더 포함할 수 있다. 인터 예측의 경우, 주변 블록은 현재 픽처 내에 존재하는 공간적 주변 블록(spatial neighboring block)과 참조 픽처에 존재하는 시간적 주변 블록(temporal neighboring block)을 포함할 수 있다. 상기 참조 블록을 포함하는 참조 픽처와 상기 시간적 주변 블록을 포함하는 참조 픽처는 동일할 수도 있고, 서로 다를 수도 있다. 상기 시간적 주변 블록은 동일 위치 참조 블록(collocated reference block), 동일 위치 CU(colCU) 등의 이름으로 불릴 수 있다. 상기 시간적 주변 블록을 포함하는 참조 픽처는 동일 위치 픽처(collocated picture, colPic)라고 불릴 수 있다. 예를 들어, 인터 예측부(180)는 주변 블록들을 기반으로 움직임 정보 후보 리스트를 구성하고, 상기 현재 블록의 움직임 벡터 및/또는 참조 픽처 인덱스를 도출하기 위하여 어떤 후보가 사용되는지를 지시하는 정보를 생성할 수 있다. 다양한 예측 모드를 기반으로 인터 예측이 수행될 수 있으며, 예를 들어 스킵 모드와 머지 모드의 경우에, 인터 예측부(180)는 주변 블록의 움직임 정보를 현재 블록의 움직임 정보로 이용할 수 있다. 스킵 모드의 경우, 머지 모드와 달리 레지듀얼 신호가 전송되지 않을 수 있다. 움직임 정보 예측(motion vector prediction, MVP) 모드의 경우, 주변 블록의 움직임 벡터를 움직임 벡터 예측자(motion vector predictor)로 이용하고, 움직임 벡터 차분(motion vector difference) 및 움직임 벡터 예측자에 대한 지시자(indicator)를 부호화함으로써 현재 블록의 움직임 벡터를 시그널링할 수 있다. 움직임 벡터 차분은 현재 블록의 움직임 벡터와 움직임 벡터 예측자 간의 차이를 의미할 수 있다.The inter prediction unit 180 may derive a predicted block for the current block based on a reference block (reference sample array) specified by a motion vector on the reference picture. In this case, in order to reduce the amount of motion information transmitted in the inter prediction mode, motion information may be predicted in units of blocks, subblocks, or samples based on a correlation between motion information between a neighboring block and a current block. The motion information may include a motion vector and a reference picture index. The motion information may further include inter prediction direction (L0 prediction, L1 prediction, Bi prediction, etc.) information. In the case of inter prediction, the neighboring block may include a spatial neighboring block existing in the current picture and a temporal neighboring block existing in the reference picture. The reference picture including the reference block and the reference picture including the temporal neighboring block may be the same or different from each other. The temporal neighboring block may be referred to by a name such as a collocated reference block and a collocated CU (colCU). A reference picture including the temporal neighboring block may be referred to as a collocated picture (colPic). For example, the inter prediction unit 180 constructs a motion information candidate list based on neighboring blocks, and provides information indicating which candidate is used to derive a motion vector and/or a reference picture index of the current block. Can be generated. Inter prediction may be performed based on various prediction modes. For example, in the case of a skip mode and a merge mode, the inter prediction unit 180 may use motion information of a neighboring block as motion information of a current block. In the case of the skip mode, unlike the merge mode, a residual signal may not be transmitted. In the case of motion vector prediction (MVP) mode, a motion vector of a neighboring block is used as a motion vector predictor, and an indicator for a motion vector difference and a motion vector predictor ( indicator) to signal the motion vector of the current block. The motion vector difference may mean a difference between a motion vector of a current block and a motion vector predictor.
예측부는 후술하는 다양한 예측 방법 및/또는 예측 기법을 기반으로 예측 신호를 생성할 수 있다. 예를 들어, 예측부는 현재 블록의 예측을 위해 인트라 예측 또는 인터 예측을 적용할 수 있을 뿐 아니라, 인트라 예측과 인터 예측을 동시에 적용할 수 있다. 현재 블록의 예측을 위해 인트라 예측과 인터 예측을 동시에 적용하는 예측 방법은 combined inter and intra prediction (CIIP)라고 불릴 수 있다. 또한, 예측부는 현재 블록의 예측을 위해 인트라 블록 카피(intra block copy, IBC)를 수행할 수도 있다. 인트라 블록 카피는 예를 들어 SCC(screen content coding) 등과 같이 게임 등의 컨텐츠 영상/동영상 코딩을 위하여 사용될 수 있다. IBC는 현재 블록으로부터 소정의 거리만큼 떨어진 위치의 현재 픽처 내 기복원된 참조 블록을 이용하여 현재 블록을 예측하는 방법이다. IBC가 적용되는 경우, 현재 픽처 내 참조 블록의 위치는 상기 소정의 거리에 해당하는 벡터(블록 벡터)로서 부호화될 수 있다. The prediction unit may generate a prediction signal based on various prediction methods and/or prediction techniques to be described later. For example, the prediction unit may apply intra prediction or inter prediction for prediction of the current block, and may simultaneously apply intra prediction and inter prediction. A prediction method in which intra prediction and inter prediction are applied simultaneously for prediction of the current block may be referred to as combined inter and intra prediction (CIIP). In addition, the prediction unit may perform intra block copy (IBC) for prediction of the current block. The intra block copy may be used for content image/movie coding such as games, such as, for example, screen content coding (SCC). IBC is a method of predicting a current block by using a reference block in a current picture at a distance from the current block by a predetermined distance. When IBC is applied, the position of the reference block in the current picture may be encoded as a vector (block vector) corresponding to the predetermined distance.
예측부를 통해 생성된 예측 신호는 복원 신호를 생성하기 위해 이용되거나 레지듀얼 신호를 생성하기 위해 이용될 수 있다. 감산부(115)는 입력 영상 신호(원본 블록, 원본 샘플 어레이)로부터 예측부에서 출력된 예측 신호(예측된 블록, 예측 샘플 어레이)를 감산하여 레지듀얼 신호(residual signal, 잔여 블록, 잔여 샘플 어레이)를 생성할 수 있다. 생성된 레지듀얼 신호는 변환부(120)로 전송될 수 있다. The prediction signal generated through the prediction unit may be used to generate a reconstructed signal or may be used to generate a residual signal. The subtraction unit 115 subtracts the prediction signal (predicted block, prediction sample array) output from the prediction unit from the input image signal (original block, original sample array), and subtracts a residual signal (remaining block, residual sample array). ) Can be created. The generated residual signal may be transmitted to the converter 120.
변환부(120)는 레지듀얼 신호에 변환 기법을 적용하여 변환 계수들(transform coefficients)을 생성할 수 있다. 예를 들어, 변환 기법은 DCT(Discrete Cosine Transform), DST(Discrete Sine Transform), KLT(Karhunen-Loeve Transform), GBT(Graph-Based Transform), 또는 CNT(Conditionally Non-linear Transform) 중 적어도 하나를 포함할 수 있다. 여기서, GBT는 픽셀 간의 관계 정보를 그래프로 표현한다고 할 때 이 그래프로부터 얻어진 변환을 의미한다. CNT는 이전에 복원된 모든 픽셀(all previously reconstructed pixel)을 이용하여 예측 신호를 생성하고 그에 기반하여 획득되는 변환을 의미한다. 변환 과정은 정사각형의 동일한 크기를 갖는 픽셀 블록에 적용될 수도 있고, 정사각형이 아닌 가변 크기의 블록에도 적용될 수 있다.The transform unit 120 may generate transform coefficients by applying a transform technique to the residual signal. For example, the transformation technique uses at least one of DCT (Discrete Cosine Transform), DST (Discrete Sine Transform), KLT (Karhunen-Loeve Transform), GBT (Graph-Based Transform), or CNT (Conditionally Non-linear Transform). Can include. Here, GBT refers to the transformation obtained from this graph when the relationship information between pixels is expressed in a graph. CNT refers to a transformation obtained based on generating a prediction signal using all previously reconstructed pixels. The conversion process may be applied to a block of pixels having the same size of a square, or may be applied to a block of a variable size other than a square.
양자화부(130)는 변환 계수들을 양자화하여 엔트로피 인코딩부(190)로 전송할 수 있다. 엔트로피 인코딩부(190)는 양자화된 신호(양자화된 변환 계수들에 관한 정보)를 인코딩하여 비트스트림으로 출력할 수 있다. 상기 양자화된 변환 계수들에 관한 정보는 레지듀얼 정보라고 불릴 수 있다. 양자화부(130)는 계수 스캔 순서(scan order)를 기반으로 블록 형태의 양자화된 변환 계수들을 1차원 벡터 형태로 재정렬할 수 있고, 상기 1차원 벡터 형태의 양자화된 변환 계수들을 기반으로 상기 양자화된 변환 계수들에 관한 정보를 생성할 수도 있다. The quantization unit 130 may quantize the transform coefficients and transmit the quantization to the entropy encoding unit 190. The entropy encoding unit 190 may encode a quantized signal (information on quantized transform coefficients) and output it as a bitstream. Information about the quantized transform coefficients may be called residual information. The quantization unit 130 may rearrange the quantized transform coefficients in a block form into a one-dimensional vector form based on a coefficient scan order, and the quantized transform coefficients in the form of the one-dimensional vector It is also possible to generate information about transform coefficients.
엔트로피 인코딩부(190)는 예를 들어 지수 골롬(exponential Golomb), CAVLC(context-adaptive variable length coding), CABAC(context-adaptive binary arithmetic coding) 등과 같은 다양한 인코딩 방법을 수행할 수 있다. 엔트로피 인코딩부(190)는 양자화된 변환 계수들 외 비디오/이미지 복원에 필요한 정보들(예컨대 신택스 요소들(syntax elements)의 값 등)을 함께 또는 별도로 인코딩할 수도 있다. 인코딩된 정보(e.g. 인코딩된 비디오/영상 정보)는 비트스트림 형태로 NAL(network abstraction layer) 유닛 단위로 전송 또는 저장될 수 있다. 상기 비디오/영상 정보는 어댑테이션 파라미터 세트(APS), 픽처 파라미터 세트(PPS), 시퀀스 파라미터 세트(SPS) 또는 비디오 파라미터 세트(VPS) 등 다양한 파라미터 세트에 관한 정보를 더 포함할 수 있다. 또한 상기 비디오/영상 정보는 일반 제한 정보(general constraint information)를 더 포함할 수 있다. 본 개시에서 언급된 시그널링 정보, 전송되는 정보 및/또는 신택스 요소들은 상술한 인코딩 절차를 통하여 인코딩되어 상기 비트스트림에 포함될 수 있다. The entropy encoding unit 190 may perform various encoding methods such as exponential Golomb, context-adaptive variable length coding (CAVLC), and context-adaptive binary arithmetic coding (CABAC). The entropy encoding unit 190 may encode together or separately information necessary for video/image restoration (eg, values of syntax elements) in addition to quantized transform coefficients. The encoded information (e.g. encoded video/video information) may be transmitted or stored in a bitstream format in units of network abstraction layer (NAL) units. The video/video information may further include information on various parameter sets, such as an adaptation parameter set (APS), a picture parameter set (PPS), a sequence parameter set (SPS), or a video parameter set (VPS). In addition, the video/video information may further include general constraint information. The signaling information, transmitted information, and/or syntax elements mentioned in the present disclosure may be encoded through the above-described encoding procedure and included in the bitstream.
상기 비트스트림은 네트워크를 통하여 전송될 수 있고, 또는 디지털 저장매체에 저장될 수 있다. 여기서 네트워크는 방송망 및/또는 통신망 등을 포함할 수 있고, 디지털 저장매체는 USB, SD, CD, DVD, 블루레이, HDD, SSD 등 다양한 저장매체를 포함할 수 있다. 엔트로피 인코딩부(190)로부터 출력된 신호를 전송하는 전송부(미도시) 및/또는 저장하는 저장부(미도시)가 영상 부호화 장치(100)의 내/외부 엘리먼트로서 구비될 수 있고, 또는 전송부는 엔트로피 인코딩부(190)의 구성요소로서 구비될 수도 있다.The bitstream may be transmitted through a network or may be stored in a digital storage medium. Here, the network may include a broadcasting network and/or a communication network, and the digital storage medium may include various storage media such as USB, SD, CD, DVD, Blu-ray, HDD, and SSD. A transmission unit (not shown) for transmitting the signal output from the entropy encoding unit 190 and/or a storage unit (not shown) for storing may be provided as an internal/external element of the image encoding apparatus 100, or transmission The unit may be provided as a component of the entropy encoding unit 190.
양자화부(130)로부터 출력된 양자화된 변환 계수들은 레지듀얼 신호를 생성하기 위해 이용될 수 있다. 예를 들어, 양자화된 변환 계수들에 역양자화부(140) 및 역변환부(150)를 통해 역양자화 및 역변환을 적용함으로써 레지듀얼 신호(레지듀얼 블록 or 레지듀얼 샘플들)를 복원할 수 있다. The quantized transform coefficients output from the quantization unit 130 may be used to generate a residual signal. For example, a residual signal (residual block or residual samples) may be restored by applying inverse quantization and inverse transform to the quantized transform coefficients through the inverse quantization unit 140 and the inverse transform unit 150.
가산부(155)는 복원된 레지듀얼 신호를 인터 예측부(180) 또는 인트라 예측부(185)로부터 출력된 예측 신호에 더함으로써 복원(reconstructed) 신호(복원 픽처, 복원 블록, 복원 샘플 어레이)를 생성할 수 있다. 스킵 모드가 적용된 경우와 같이 처리 대상 블록에 대한 레지듀얼이 없는 경우, 예측된 블록이 복원 블록으로 사용될 수 있다. 가산부(155)는 복원부 또는 복원 블록 생성부라고 불릴 수 있다. 생성된 복원 신호는 현재 픽처 내 다음 처리 대상 블록의 인트라 예측을 위하여 사용될 수 있고, 후술하는 바와 같이 필터링을 거쳐서 다음 픽처의 인터 예측을 위하여 사용될 수도 있다. The addition unit 155 adds the reconstructed residual signal to the prediction signal output from the inter prediction unit 180 or the intra prediction unit 185 to obtain a reconstructed signal (a reconstructed picture, a reconstructed block, and a reconstructed sample array). Can be generated. When there is no residual for a block to be processed, such as when the skip mode is applied, the predicted block may be used as a reconstructed block. The addition unit 155 may be referred to as a restoration unit or a restoration block generation unit. The generated reconstructed signal may be used for intra prediction of the next processing target block in the current picture, and may be used for inter prediction of the next picture through filtering as described later.
한편, 후술하는 바와 같이 픽처 인코딩 과정에서 LMCS(luma mapping with chroma scaling)가 적용될 수도 있다.Meanwhile, as described later, luma mapping with chroma scaling (LMCS) may be applied in the picture encoding process.
필터링부(160)는 복원 신호에 필터링을 적용하여 주관적/객관적 화질을 향상시킬 수 있다. 예를 들어 필터링부(160)는 복원 픽처에 다양한 필터링 방법을 적용하여 수정된(modified) 복원 픽처를 생성할 수 있고, 상기 수정된 복원 픽처를 메모리(170), 구체적으로 메모리(170)의 DPB에 저장할 수 있다. 상기 다양한 필터링 방법은 예를 들어, 디블록킹 필터링, 샘플 적응적 오프셋(sample adaptive offset), 적응적 루프 필터(adaptive loop filter), 양방향 필터(bilateral filter) 등을 포함할 수 있다. 필터링부(160)는 각 필터링 방법에 대한 설명에서 후술하는 바와 같이 필터링에 관한 다양한 정보를 생성하여 엔트로피 인코딩부(190)로 전달할 수 있다. 필터링에 관한 정보는 엔트로피 인코딩부(190)에서 인코딩되어 비트스트림 형태로 출력될 수 있다. The filtering unit 160 may improve subjective/objective image quality by applying filtering to the reconstructed signal. For example, the filtering unit 160 may apply various filtering methods to the reconstructed picture to generate a modified reconstructed picture, and the modified reconstructed picture may be converted to the memory 170, specifically, the DPB of the memory 170. Can be saved on. The various filtering methods may include, for example, deblocking filtering, sample adaptive offset, adaptive loop filter, bilateral filter, and the like. The filtering unit 160 may generate various information about filtering and transmit it to the entropy encoding unit 190 as described later in the description of each filtering method. Information about filtering may be encoded by the entropy encoding unit 190 and output in the form of a bitstream.
메모리(170)에 전송된 수정된 복원 픽처는 인터 예측부(180)에서 참조 픽처로 사용될 수 있다. 영상 부호화 장치(100)는 이를 통하여 인터 예측이 적용되는 경우, 영상 부호화 장치(100)와 영상 복호화 장치에서의 예측 미스매치를 피할 수 있고, 부호화 효율도 향상시킬 수 있다. The modified reconstructed picture transmitted to the memory 170 may be used as a reference picture in the inter prediction unit 180. When inter prediction is applied through this, the image encoding apparatus 100 may avoid prediction mismatch between the image encoding apparatus 100 and the image decoding apparatus, and may improve encoding efficiency.
메모리(170) 내 DPB는 인터 예측부(180)에서의 참조 픽처로 사용하기 위해 수정된 복원 픽처를 저장할 수 있다. 메모리(170)는 현재 픽처 내 움직임 정보가 도출된(또는 인코딩된) 블록의 움직임 정보 및/또는 이미 복원된 픽처 내 블록들의 움직임 정보를 저장할 수 있다. 상기 저장된 움직임 정보는 공간적 주변 블록의 움직임 정보 또는 시간적 주변 블록의 움직임 정보로 활용하기 위하여 인터 예측부(180)에 전달될 수 있다. 메모리(170)는 현재 픽처 내 복원된 블록들의 복원 샘플들을 저장할 수 있고, 인트라 예측부(185)에 전달할 수 있다.The DPB in the memory 170 may store a reconstructed picture modified to be used as a reference picture in the inter prediction unit 180. The memory 170 may store motion information of a block from which motion information in a current picture is derived (or encoded) and/or motion information of blocks in a picture that have already been reconstructed. The stored motion information may be transmitted to the inter prediction unit 180 in order to be used as motion information of a spatial neighboring block or motion information of a temporal neighboring block. The memory 170 may store reconstructed samples of reconstructed blocks in the current picture, and may be transmitted to the intra prediction unit 185.
영상 복호화 장치 개요Overview of video decoding device
도 3은 본 개시에 따른 실시예가 적용될 수 있는 영상 복호화 장치를 개략적으로 나타낸 도면이다.3 is a schematic diagram of an image decoding apparatus to which an embodiment according to the present disclosure can be applied.
도 3에 도시된 바와 같이, 영상 복호화 장치(200)는 엔트로피 디코딩부(210), 역양자화부(220), 역변환부(230), 가산부(235), 필터링부(240), 메모리(250), 인터 예측부(260) 및 인트라 예측부(265)를 포함하여 구성될 수 있다. 인터 예측부(260) 및 인트라 예측부(265)를 합쳐서 "예측부"라고 지칭될 수 있다. 역양자화부(220), 역변환부(230)는 레지듀얼 처리부에 포함될 수 있다. 3, the image decoding apparatus 200 includes an entropy decoding unit 210, an inverse quantization unit 220, an inverse transform unit 230, an addition unit 235, a filtering unit 240, and a memory 250. ), an inter prediction unit 260 and an intra prediction unit 265. The inter prediction unit 260 and the intra prediction unit 265 may be collectively referred to as a “prediction unit”. The inverse quantization unit 220 and the inverse transform unit 230 may be included in the residual processing unit.
영상 복호화 장치(200)를 구성하는 복수의 구성부들의 전부 또는 적어도 일부는 실시예에 따라 하나의 하드웨어 컴포넌트(예를 들어 디코더 또는 프로세서)로 구현될 수 있다. 또한 메모리(170)는 DPB를 포함할 수 있고, 디지털 저장 매체에 의하여 구현될 수 있다. All or at least some of the plurality of constituent units constituting the image decoding apparatus 200 may be implemented as one hardware component (eg, a decoder or a processor) according to embodiments. In addition, the memory 170 may include a DPB, and may be implemented by a digital storage medium.
비디오/영상 정보를 포함하는 비트스트림을 수신한 영상 복호화 장치(200)는 도 2의 영상 부호화 장치(100)에서 수행된 프로세스에 대응하는 프로세스를 수행하여 영상을 복원할 수 있다. 예를 들어, 영상 복호화 장치(200)는 영상 부호화 장치에서 적용된 처리 유닛을 이용하여 디코딩을 수행할 수 있다. 따라서 디코딩의 처리 유닛은 예를 들어 코딩 유닛일 수 있다. 코딩 유닛은 코딩 트리 유닛이거나 또는 최대 코딩 유닛을 분할하여 획득될 수 있다. 그리고, 영상 복호화 장치(200)를 통해 디코딩 및 출력된 복원 영상 신호는 재생 장치(미도시)를 통해 재생될 수 있다.The image decoding apparatus 200 receiving a bitstream including video/image information may reconstruct an image by performing a process corresponding to the process performed by the image encoding apparatus 100 of FIG. 2. For example, the image decoding apparatus 200 may perform decoding using a processing unit applied by the image encoding apparatus. Thus, the processing unit of decoding may be, for example, a coding unit. The coding unit may be a coding tree unit or may be obtained by dividing the largest coding unit. In addition, the reconstructed image signal decoded and output through the image decoding apparatus 200 may be reproduced through a reproducing apparatus (not shown).
영상 복호화 장치(200)는 도 2의 영상 부호화 장치로부터 출력된 신호를 비트스트림 형태로 수신할 수 있다. 수신된 신호는 엔트로피 디코딩부(210)를 통해 디코딩될 수 있다. 예를 들어, 엔트로피 디코딩부(210)는 상기 비트스트림을 파싱하여 영상 복원(또는 픽처 복원)에 필요한 정보(예컨대, 비디오/영상 정보)를 도출할 수 있다. 상기 비디오/영상 정보는 어댑테이션 파라미터 세트(APS), 픽처 파라미터 세트(PPS), 시퀀스 파라미터 세트(SPS) 또는 비디오 파라미터 세트(VPS) 등 다양한 파라미터 세트에 관한 정보를 더 포함할 수 있다. 또한 상기 비디오/영상 정보는 일반 제한 정보(general constraint information)를 더 포함할 수 있다. 영상 복호화 장치는 영상을 디코딩하기 위해 상기 파라미터 세트에 관한 정보 및/또는 상기 일반 제한 정보를 추가적으로 이용할 수 있다. 본 개시에서 언급된 시그널링 정보, 수신되는 정보 및/또는 신택스 요소들은 상기 디코딩 절차를 통하여 디코딩됨으로써 상기 비트스트림으로부터 획득될 수 있다. 예컨대, 엔트로피 디코딩부(210)는 지수 골롬 부호화, CAVLC 또는 CABAC 등의 코딩 방법을 기초로 비트스트림 내 정보를 디코딩하고, 영상 복원에 필요한 신택스 엘리먼트의 값, 레지듀얼에 관한 변환 계수의 양자화된 값들을 출력할 수 있다. 보다 상세하게, CABAC 엔트로피 디코딩 방법은, 비트스트림에서 각 구문 요소에 해당하는 빈을 수신하고, 디코딩 대상 구문 요소 정보와 주변 블록 및 디코딩 대상 블록의 디코딩 정보 혹은 이전 단계에서 디코딩된 심볼/빈의 정보를 이용하여 문맥(context) 모델을 결정하고, 결정된 문맥 모델에 따라 빈(bin)의 발생 확률을 예측하여 빈의 산술 디코딩(arithmetic decoding)을 수행하여 각 구문 요소의 값에 해당하는 심볼을 생성할 수 있다. 이때, CABAC 엔트로피 디코딩 방법은 문맥 모델 결정 후 다음 심볼/빈의 문맥 모델을 위해 디코딩된 심볼/빈의 정보를 이용하여 문맥 모델을 업데이트할 수 있다. 엔트로피 디코딩부(210)에서 디코딩된 정보 중 예측에 관한 정보는 예측부(인터 예측부(260) 및 인트라 예측부(265))로 제공되고, 엔트로피 디코딩부(210)에서 엔트로피 디코딩이 수행된 레지듀얼 값, 즉 양자화된 변환 계수들 및 관련 파라미터 정보는 역양자화부(220)로 입력될 수 있다. 또한, 엔트로피 디코딩부(210)에서 디코딩된 정보 중 필터링에 관한 정보는 필터링부(240)로 제공될 수 있다. 한편, 영상 부호화 장치로부터 출력된 신호를 수신하는 수신부(미도시)가 영상 복호화 장치(200)의 내/외부 엘리먼트로서 추가적으로 구비될 수 있고, 또는 수신부는 엔트로피 디코딩부(210)의 구성요소로서 구비될 수도 있다. The image decoding apparatus 200 may receive a signal output from the image encoding apparatus of FIG. 2 in the form of a bitstream. The received signal may be decoded through the entropy decoding unit 210. For example, the entropy decoding unit 210 may parse the bitstream to derive information (eg, video/video information) necessary for image restoration (or picture restoration). The video/video information may further include information on various parameter sets, such as an adaptation parameter set (APS), a picture parameter set (PPS), a sequence parameter set (SPS), or a video parameter set (VPS). In addition, the video/video information may further include general constraint information. The image decoding apparatus may additionally use information on the parameter set and/or the general restriction information to decode an image. The signaling information, received information, and/or syntax elements mentioned in the present disclosure may be obtained from the bitstream by decoding through the decoding procedure. For example, the entropy decoding unit 210 decodes information in a bitstream based on a coding method such as exponential Golomb coding, CAVLC, or CABAC, and a value of a syntax element required for image restoration, a quantized value of a transform coefficient related to a residual Can be printed. In more detail, in the CABAC entropy decoding method, a bin corresponding to each syntax element is received in a bitstream, and information on the syntax element to be decoded, decoding information of a neighboring block and a block to be decoded, or information of a symbol/bin decoded in a previous step The context model is determined by using and, according to the determined context model, the probability of occurrence of bins is predicted to perform arithmetic decoding of the bins to generate a symbol corresponding to the value of each syntax element. I can. In this case, the CABAC entropy decoding method may update the context model using information of the decoded symbol/bin for the context model of the next symbol/bin after the context model is determined. Among the information decoded by the entropy decoding unit 210, information about prediction is provided to the prediction unit (inter prediction unit 260 and intra prediction unit 265), and the register on which entropy decoding is performed by the entropy decoding unit 210 The dual value, that is, quantized transform coefficients and related parameter information may be input to the inverse quantization unit 220. In addition, information about filtering among information decoded by the entropy decoding unit 210 may be provided to the filtering unit 240. Meanwhile, a receiving unit (not shown) for receiving a signal output from the image encoding device may be additionally provided as an inner/outer element of the image decoding device 200, or the receiving unit is provided as a component of the entropy decoding unit 210 It could be.
한편, 본 개시에 따른 영상 복호화 장치는 비디오/영상/픽처 복호화 장치라고 불릴 수 있다. 상기 영상 복호화 장치는 정보 디코더(비디오/영상/픽처 정보 디코더) 및/또는 샘플 디코더(비디오/영상/픽처 샘플 디코더)를 포함할 수도 있다. 상기 정보 디코더는 엔트로피 디코딩부(210)를 포함할 수 있고, 상기 샘플 디코더는 역양자화부(220), 역변환부(230), 가산부(235), 필터링부(240), 메모리(250), 인터 예측부(260) 및 인트라 예측부(265) 중 적어도 하나를 포함할 수 있다.Meanwhile, the video decoding apparatus according to the present disclosure may be referred to as a video/video/picture decoding apparatus. The video decoding apparatus may include an information decoder (video/video/picture information decoder) and/or a sample decoder (video/video/picture sample decoder). The information decoder may include an entropy decoding unit 210, and the sample decoder includes an inverse quantization unit 220, an inverse transform unit 230, an addition unit 235, a filtering unit 240, a memory 250, It may include at least one of the inter prediction unit 260 and the intra prediction unit 265.
역양자화부(220)에서는 양자화된 변환 계수들을 역양자화하여 변환 계수들을 출력할 수 있다. 역양자화부(220)는 양자화된 변환 계수들을 2차원의 블록 형태로 재정렬할 수 있다. 이 경우 상기 재정렬은 영상 부호화 장치에서 수행된 계수 스캔 순서에 기반하여 수행될 수 있다. 역양자화부(220)는 양자화 파라미터(예를 들어 양자화 스텝 사이즈 정보)를 이용하여 양자화된 변환 계수들에 대한 역양자화를 수행하고, 변환 계수들(transform coefficient)을 획득할 수 있다. The inverse quantization unit 220 may inverse quantize the quantized transform coefficients and output transform coefficients. The inverse quantization unit 220 may rearrange the quantized transform coefficients in a two-dimensional block shape. In this case, the rearrangement may be performed based on a coefficient scan order performed by the image encoding apparatus. The inverse quantization unit 220 may perform inverse quantization on quantized transform coefficients using a quantization parameter (eg, quantization step size information) and obtain transform coefficients.
역변환부(230)에서는 변환 계수들를 역변환하여 레지듀얼 신호(레지듀얼 블록, 레지듀얼 샘플 어레이)를 획득할 수 있다. The inverse transform unit 230 may inverse transform the transform coefficients to obtain a residual signal (residual block, residual sample array).
예측부는 현재 블록에 대한 예측을 수행하고, 상기 현재 블록에 대한 예측 샘플들을 포함하는 예측된 블록(predicted block)을 생성할 수 있다. 예측부는 엔트로피 디코딩부(210)로부터 출력된 상기 예측에 관한 정보를 기반으로 상기 현재 블록에 인트라 예측이 적용되는지 또는 인터 예측이 적용되는지 결정할 수 있고, 구체적인 인트라/인터 예측 모드(예측 기법)를 결정할 수 있다.The prediction unit may perform prediction on the current block and generate a predicted block including prediction samples for the current block. The prediction unit may determine whether intra prediction or inter prediction is applied to the current block based on the prediction information output from the entropy decoding unit 210, and determine a specific intra/inter prediction mode (prediction technique). I can.
예측부가 후술하는 다양한 예측 방법(기법)을 기반으로 예측 신호를 생성할 수 있음은 영상 부호화 장치(100)의 예측부에 대한 설명에서 언급된 바와 동일하다. It is the same as described in the description of the prediction unit of the image encoding apparatus 100 that the prediction unit can generate the prediction signal based on various prediction methods (techniques) to be described later.
인트라 예측부(265)는 현재 픽처 내의 샘플들을 참조하여 현재 블록을 예측할 수 있다. 인트라 예측부(185)에 대한 설명은 인트라 예측부(265)에 대해서도 동일하게 적용될 수 있다.The intra prediction unit 265 may predict the current block by referring to samples in the current picture. The description of the intra prediction unit 185 may be equally applied to the intra prediction unit 265.
인터 예측부(260)는 참조 픽처 상에서 움직임 벡터에 의해 특정되는 참조 블록(참조 샘플 어레이)을 기반으로, 현재 블록에 대한 예측된 블록을 유도할 수 있다. 이때, 인터 예측 모드에서 전송되는 움직임 정보의 양을 줄이기 위해 주변 블록과 현재 블록 간의 움직임 정보의 상관성에 기반하여 움직임 정보를 블록, 서브블록 또는 샘플 단위로 예측할 수 있다. 상기 움직임 정보는 움직임 벡터 및 참조 픽처 인덱스를 포함할 수 있다. 상기 움직임 정보는 인터 예측 방향(L0 예측, L1 예측, Bi 예측 등) 정보를 더 포함할 수 있다. 인터 예측의 경우에, 주변 블록은 현재 픽처 내에 존재하는 공간적 주변 블록(spatial neighboring block)과 참조 픽처에 존재하는 시간적 주변 블록(temporal neighboring block)을 포함할 수 있다. 예를 들어, 인터 예측부(260)는 주변 블록들을 기반으로 움직임 정보 후보 리스트를 구성하고, 수신한 후보 선택 정보를 기반으로 상기 현재 블록의 움직임 벡터 및/또는 참조 픽처 인덱스를 도출할 수 있다. 다양한 예측 모드(기법)를 기반으로 인터 예측이 수행될 수 있으며, 상기 예측에 관한 정보는 상기 현재 블록에 대한 인터 예측의 모드(기법)를 지시하는 정보를 포함할 수 있다. The inter prediction unit 260 may derive a predicted block for the current block based on a reference block (reference sample array) specified by a motion vector on the reference picture. In this case, in order to reduce the amount of motion information transmitted in the inter prediction mode, motion information may be predicted in units of blocks, subblocks, or samples based on a correlation between motion information between a neighboring block and a current block. The motion information may include a motion vector and a reference picture index. The motion information may further include inter prediction direction (L0 prediction, L1 prediction, Bi prediction, etc.) information. In the case of inter prediction, the neighboring block may include a spatial neighboring block existing in the current picture and a temporal neighboring block existing in the reference picture. For example, the inter prediction unit 260 may construct a motion information candidate list based on neighboring blocks, and derive a motion vector and/or a reference picture index of the current block based on the received candidate selection information. Inter prediction may be performed based on various prediction modes (techniques), and the information on prediction may include information indicating a mode (technique) of inter prediction for the current block.
가산부(235)는 획득된 레지듀얼 신호를 예측부(인터 예측부(260) 및/또는 인트라 예측부(265) 포함)로부터 출력된 예측 신호(예측된 블록, 예측 샘플 어레이)에 더함으로써 복원 신호(복원 픽처, 복원 블록, 복원 샘플 어레이)를 생성할 수 있다. 가산부(155)에 대한 설명은 가산부(235)에 대해서도 동일하게 적용될 수 있다.The addition unit 235 is reconstructed by adding the obtained residual signal to the prediction signal (predicted block, prediction sample array) output from the prediction unit (including the inter prediction unit 260 and/or the intra prediction unit 265). A signal (restored picture, reconstructed block, reconstructed sample array) can be generated. The description of the addition unit 155 may be equally applied to the addition unit 235.
한편, 후술하는 바와 같이 픽처 디코딩 과정에서 LMCS(luma mapping with chroma scaling)가 적용될 수도 있다.Meanwhile, luma mapping with chroma scaling (LMCS) may be applied in the picture decoding process as described later.
필터링부(240)는 복원 신호에 필터링을 적용하여 주관적/객관적 화질을 향상시킬 수 있다. 예를 들어 필터링부(240)는 복원 픽처에 다양한 필터링 방법을 적용하여 수정된(modified) 복원 픽처를 생성할 수 있고, 상기 수정된 복원 픽처를 메모리(250), 구체적으로 메모리(250)의 DPB에 저장할 수 있다. 상기 다양한 필터링 방법은 예를 들어, 디블록킹 필터링, 샘플 적응적 오프셋(sample adaptive offset), 적응적 루프 필터(adaptive loop filter), 양방향 필터(bilateral filter) 등을 포함할 수 있다. The filtering unit 240 may improve subjective/objective image quality by applying filtering to the reconstructed signal. For example, the filtering unit 240 may apply various filtering methods to the reconstructed picture to generate a modified reconstructed picture, and the modified reconstructed picture may be converted to the memory 250, specifically, the DPB of the memory 250. Can be saved on. The various filtering methods may include, for example, deblocking filtering, sample adaptive offset, adaptive loop filter, bilateral filter, and the like.
메모리(250)의 DPB에 저장된 (수정된) 복원 픽처는 인터 예측부(260)에서 참조 픽쳐로 사용될 수 있다. 메모리(250)는 현재 픽처 내 움직임 정보가 도출된(또는 디코딩된) 블록의 움직임 정보 및/또는 이미 복원된 픽처 내 블록들의 움직임 정보를 저장할 수 있다. 상기 저장된 움직임 정보는 공간적 주변 블록의 움직임 정보 또는 시간적 주변 블록의 움직임 정보로 활용하기 위하여 인터 예측부(260)에 전달할 수 있다. 메모리(250)는 현재 픽처 내 복원된 블록들의 복원 샘플들을 저장할 수 있고, 인트라 예측부(265)에 전달할 수 있다.The reconstructed picture (modified) stored in the DPB of the memory 250 may be used as a reference picture in the inter prediction unit 260. The memory 250 may store motion information of a block from which motion information in a current picture is derived (or decoded) and/or motion information of blocks in a picture that have already been reconstructed. The stored motion information may be transmitted to the inter prediction unit 260 to be used as motion information of a spatial neighboring block or motion information of a temporal neighboring block. The memory 250 may store reconstructed samples of reconstructed blocks in the current picture, and may be transmitted to the intra prediction unit 265.
본 명세서에서, 영상 부호화 장치(100)의 필터링부(160), 인터 예측부(180) 및 인트라 예측부(185)에서 설명된 실시예들은 각각 영상 복호화 장치(200)의 필터링부(240), 인터 예측부(260) 및 인트라 예측부(265)에도 동일 또는 대응되도록 적용될 수 있다.In this specification, embodiments described in the filtering unit 160, the inter prediction unit 180, and the intra prediction unit 185 of the image encoding apparatus 100 are respectively the filtering unit 240 of the image decoding apparatus 200, The same or corresponding to the inter prediction unit 260 and the intra prediction unit 265 may be applied.
인트라 예측의 개요Overview of intra prediction
이하, 본 개시에 따른 인트라 예측에 대해 설명한다.Hereinafter, intra prediction according to the present disclosure will be described.
인트라 예측은 현재 블록이 속하는 픽처(이하, 현재 픽처) 내의 참조 샘플들을 기반으로 현재 블록에 대한 예측 샘플들을 생성하는 예측을 나타낼 수 있다. 현재 블록에 인트라 예측이 적용되는 경우, 현재 블록의 인트라 예측에 사용할 주변 참조 샘플들이 도출될 수 있다. 상기 현재 블록의 주변 참조 샘플들은 nWxnH 크기의 현재 블록의 좌측(left) 경계에 인접한 샘플 및 좌하측(bottom-left)에 이웃하는 총 2xnH 개의 샘플들, 현재 블록의 상측(top) 경계에 인접한 샘플 및 우상측(top-right)에 이웃하는 총 2xnW 개의 샘플들 및 현재 블록의 좌상측(top-left)에 이웃하는 1개의 샘플을 포함할 수 있다. 또는, 상기 현재 블록의 주변 참조 샘플들은 복수열의 상측 주변 샘플들 및 복수행의 좌측 주변 샘플들을 포함할 수도 있다. 또한, 상기 현재 블록의 주변 참조 샘플들은 nWxnH 크기의 현재 블록의 우측(right) 경계에 인접한 총 nH 개의 샘플들, 현재 블록의 하측(bottom) 경계에 인접한 총 nW 개의 샘플들 및 현재 블록의 우하측(bottom-right)에 이웃하는 1개의 샘플을 포함할 수도 있다. Intra prediction may represent prediction of generating prediction samples for a current block based on reference samples in a picture (hereinafter, referred to as a current picture) to which the current block belongs. When intra prediction is applied to the current block, neighboring reference samples to be used for intra prediction of the current block may be derived. The neighboring reference samples of the current block are a sample adjacent to the left boundary of the current block of size nWxnH, a total of 2xnH samples adjacent to the bottom-left, and a sample adjacent to the top boundary of the current block. And a total of 2xnW samples adjacent to the top-right side and one sample adjacent to the top-left side of the current block. Alternatively, the peripheral reference samples of the current block may include a plurality of columns of upper peripheral samples and a plurality of rows of left peripheral samples. In addition, the neighboring reference samples of the current block are a total of nH samples adjacent to the right boundary of the current block of size nWxnH, a total of nW samples adjacent to the bottom boundary of the current block, and the lower right side of the current block. It may include one sample adjacent to (bottom-right).
다만, 현재 블록의 주변 참조 샘플들 중 일부는 아직 디코딩되지 않았거나, 이용 가능하지 않을 수 있다. 이 경우, 디코더는 이용 가능한 샘플들로 이용 가능하지 않은 샘플들을 대체(substitution)하여 예측에 사용할 주변 참조 샘플들을 구성할 수 있다. 또는, 이용 가능한 샘플들의 보간(interpolation)을 통하여 예측에 사용할 주변 참조 샘플들을 구성할 수 있다.However, some of the neighboring reference samples of the current block have not yet been decoded or may not be available. In this case, the decoder may construct neighboring reference samples to be used for prediction by substituting samples that are not available with available samples. Alternatively, neighboring reference samples to be used for prediction may be configured through interpolation of available samples.
주변 참조 샘플들이 도출된 경우, (i) 현재 블록의 주변(neighboring) 참조 샘플들의 평균(average) 혹은 인터폴레이션(interpolation)을 기반으로 예측 샘플을 유도할 수 있고, (ii) 현재 블록의 주변 참조 샘플들 중 예측 샘플에 대하여 특정 (예측) 방향에 존재하는 참조 샘플을 기반으로 상기 예측 샘플을 유도할 수도 있다. (i)의 경우는 비방향성 모드 또는 비각도 모드, (ii)의 경우는 방향성(directional) 모드 또는 각도(angular) 모드라고 불릴 수 있다. When neighboring reference samples are derived, (i) a prediction sample can be derived based on an average or interpolation of neighboring reference samples of the current block, and (ii) neighboring reference samples of the current block Among them, the prediction sample may be derived based on a reference sample existing in a specific (prediction) direction with respect to the prediction sample. In the case of (i), it may be called a non-directional mode or a non-angular mode, and in the case of (ii), it may be called a directional mode or an angular mode.
또한, 상기 주변 참조 샘플들 중 상기 현재 블록의 예측 대상 샘플을 기준으로 상기 현재 블록의 인트라 예측 모드의 예측 방향에 위치하는 제1 주변 샘플과 그 반대 방향에 위치하는 제2 주변 샘플과의 보간을 통하여 상기 예측 샘플이 생성될 수도 있다. 상술한 경우는 선형 보간 인트라 예측(Linear interpolation intra prediction, LIP) 이라고 불릴 수 있다. In addition, interpolation between a first neighboring sample positioned in the prediction direction of the intra prediction mode of the current block and a second neighboring sample positioned in the opposite direction based on the prediction target sample of the current block among the neighboring reference samples is performed. Through this, the prediction sample may be generated. The above-described case may be referred to as linear interpolation intra prediction (LIP).
또한, 선형 모델(linear model)을 이용하여 루마 샘플들을 기반으로 크로마 예측 샘플들이 생성될 수도 있다. 이 경우는 LM(Linear Model) 모드라고 불릴 수 있다. Also, chroma prediction samples may be generated based on luma samples using a linear model. This case may be called LM (Linear Model) mode.
또한, 필터링된 주변 참조 샘플들을 기반으로 상기 현재 블록의 임시 예측 샘플을 도출하고, 상기 기존의 주변 참조 샘플들, 즉, 필터링되지 않은 주변 참조 샘플들 중 상기 인트라 예측 모드에 따라 도출된 적어도 하나의 참조 샘플과 상기 임시 예측 샘플을 가중합(weighted sum)하여 상기 현재 블록의 예측 샘플을 도출할 수도 있다. 이 경우는 PDPC(Position dependent intra prediction) 라고 불릴 수 있다. In addition, a temporary prediction sample of the current block is derived based on the filtered surrounding reference samples, and at least one derived according to the intra prediction mode among the existing surrounding reference samples, that is, unfiltered surrounding reference samples. A prediction sample of the current block may be derived by weighted summation of a reference sample and the temporary prediction sample. This case may be called PDPC (Position dependent intra prediction).
또한, 현재 블록의 주변 다중 참조 샘플 라인 중 가장 예측 정확도가 높은 참조 샘플 라인을 선택하여 해당 라인에서 예측 방향에 위치하는 참조 샘플을 이용하여 예측 샘플을 도출할 수 있다. 이 때, 사용된 참조 샘플 라인에 관한 정보(예컨대, intra_luma_ref_idx)는 비트스트림에 부호화되어 시그널링될 수 있다. 이 경우는 multi-reference line intra prediction (MRL) 또는 MRL 기반 인트라 예측이라고 불릴 수 있다. In addition, a reference sample line having the highest prediction accuracy among the neighboring multi-reference sample lines of the current block may be selected, and a prediction sample may be derived using a reference sample positioned in the prediction direction from the corresponding line. In this case, information on the used reference sample line (eg, intra_luma_ref_idx) may be signaled by being encoded in the bitstream. This case may be referred to as multi-reference line intra prediction (MRL) or MRL-based intra prediction.
또한, 현재 블록을 수직 또는 수평의 서브파티션들로 분할하고, 각 서브파티션에 대해 동일한 인트라 예측 모드를 기반으로 인트라 예측을 수행할 수 있다. 이 때, 인트라 예측의 주변 참조 샘플들은 각 서브파티션 단위로 도출될 수 있다. 즉, 부호화/복호화 순서 상 이전 서브파티션의 복원된 샘플이 현재 서브파티션의 주변 참조 샘플로서 이용될 수 있다. 이 경우 현재 블록에 대한 인트라 예측 모드가 상기 서브파티션들에 동일하게 적용되되, 상기 서브파티션 단위로 주변 참조 샘플을 도출하여 이용함으로써 경우에 따라 인트라 예측 성능을 높일 수 있다. 이러한 예측 방법은 intra sub-partitions(ISP) 또는 ISP 기반 인트라 예측이라고 불릴 수 있다.In addition, the current block may be divided into vertical or horizontal subpartitions, and intra prediction may be performed for each subpartition based on the same intra prediction mode. In this case, neighboring reference samples for intra prediction may be derived for each subpartition. That is, the reconstructed sample of the previous sub-partition in the encoding/decoding order may be used as a neighboring reference sample of the current sub-partition. In this case, the intra prediction mode for the current block is equally applied to the subpartitions, but the intra prediction performance may be improved in some cases by deriving and using neighboring reference samples in units of the subpartition. This prediction method may be called intra sub-partitions (ISP) or ISP-based intra prediction.
전술한 인트라 예측 기법들은 방향성 또는 비방향성의 인트라 예측 모드와 구분하여 인트라 예측 타입 또는 부가 인트라 예측 모드 등 다양한 용어로 불릴 수 있다. 예를 들어 상기 인트라 예측 기법(인트라 예측 타입 또는 부가 인트라 예측 모드 등)은 상술한 LIP, LM, PDPC, MRL, ISP 중 적어도 하나를 포함할 수 있다. 한편, 필요에 따라서 도출된 예측 샘플에 대한 후처리 필터링이 수행될 수도 있다.The above-described intra prediction techniques may be referred to in various terms such as an intra prediction type or an additional intra prediction mode in distinction from a directional or non-directional intra prediction mode. For example, the intra prediction technique (such as an intra prediction type or an additional intra prediction mode) may include at least one of the aforementioned LIP, LM, PDPC, MRL, and ISP. Meanwhile, post-processing filtering may be performed on the derived prediction samples as necessary.
구체적으로, 인트라 예측 절차는 인트라 예측 모드/타입 결정 단계, 주변 참조 샘플 도출 단계, 인트라 예측 모드/타입 기반 예측 샘플 도출 단계를 포함할 수 있다. 또한, 필요에 따라서 도출된 예측 샘플에 대한 후처리 필터링(post-filtering) 단계가 수행될 수도 있다.Specifically, the intra prediction procedure may include an intra prediction mode/type determination step, a neighbor reference sample derivation step, and an intra prediction mode/type-based prediction sample derivation step. Also, if necessary, a post-filtering step may be performed on the derived prediction samples.
도 4는 인트라 예측 기반 비디오/영상 인코딩 방법을 나타낸 흐름도이다.4 is a flowchart illustrating a video/video encoding method based on intra prediction.
도 4의 인코딩 방법은 도 2의 영상 부호화 장치에 의해 수행될 수 있다. 구체적으로, 단계 S410은 인트라 예측부(185)에 의하여 수행될 수 있고, 단계 S420은 레지듀얼 처리부에 의하여 수행될 수 있다. 구체적으로 단계 S420은 감산부(115)에 의하여 수행될 수 있다. 단계 S430은 엔트로피 인코딩부(190)에 의하여 수행될 수 있다. 단계 S430의 예측 정보는 인트라 예측부(185)에 의하여 도출되고, 단계 S430의 레지듀얼 정보는 레지듀얼 처리부에 의하여 도출될 수 있다. 상기 레지듀얼 정보는 상기 레지듀얼 샘플들에 관한 정보이다. 상기 레지듀얼 정보는 상기 레지듀얼 샘플들에 대한 양자화된 변환 계수들에 관한 정보를 포함할 수 있다. 전술한 바와 같이 상기 레지듀얼 샘플들은 영상 부호화 장치의 변환부(120)를 통하여 변환 계수들로 도출되고, 상기 변환 계수들은 양자화부(130)를 통하여 양자화된 변환 계수들로 도출될 수 있다. 상기 양자화된 변환 계수들에 관한 정보가 레지듀얼 코딩 절차를 통하여 엔트로피 인코딩부(190)에서 인코딩될 수 있다. The encoding method of FIG. 4 may be performed by the video encoding apparatus of FIG. 2. Specifically, step S410 may be performed by the intra prediction unit 185, and step S420 may be performed by the residual processing unit. Specifically, step S420 may be performed by the subtraction unit 115. Step S430 may be performed by the entropy encoding unit 190. The prediction information of step S430 may be derived by the intra prediction unit 185, and the residual information of step S430 may be derived by the residual processing unit. The residual information is information on the residual samples. The residual information may include information on quantized transform coefficients for the residual samples. As described above, the residual samples may be derived as transform coefficients through the transform unit 120 of the image encoding apparatus, and the transform coefficients may be derived as quantized transform coefficients through the quantization unit 130. Information on the quantized transform coefficients may be encoded by the entropy encoding unit 190 through a residual coding procedure.
영상 부호화 장치는 현재 블록에 대한 인트라 예측을 수행할 수 있다(S410). 영상 부호화 장치는 현재 블록에 대한 인트라 예측 모드/타입을 결정하고, 현재 블록의 주변 참조 샘플들을 도출한 후, 상기 인트라 예측 모드/타입 및 상기 주변 참조 샘플들을 기반으로 상기 현재 블록 내 예측 샘플들을 생성할 수 있다. 여기서 인트라 예측 모드/타입 결정, 주변 참조 샘플들 도출 및 예측 샘플들 생성 절차는 동시에 수행될 수도 있고, 어느 한 절차가 다른 절차보다 먼저 수행될 수도 있다. The image encoding apparatus may perform intra prediction on the current block (S410). The video encoding apparatus determines the intra prediction mode/type for the current block, derives neighboring reference samples of the current block, and then generates prediction samples in the current block based on the intra prediction mode/type and the neighboring reference samples. can do. Here, the procedure of determining the intra prediction mode/type, deriving neighboring reference samples, and generating prediction samples may be performed simultaneously, or one procedure may be performed before the other procedure.
도 5는 본 개시에 따른 인트라 예측부의 구성을 예시적으로 나타낸 도면이다.5 is a diagram illustrating a configuration of an intra prediction unit according to the present disclosure.
도 5에 도시된 바와 같이, 영상 부호화 장치의 인트라 예측부(185)는 인트라 예측 모드/타입 결정부(186), 참조 샘플 도출부(187) 및/또는 예측 샘플 도출부(188)를 포함할 수 있다. 인트라 예측 모드/타입 결정부(186)는 상기 현재 블록에 대한 인트라 예측 모드/타입을 결정할 수 있다. 참조 샘플 도출부(187)는 상기 현재 블록의 주변 참조 샘플들을 도출할 수 있다. 예측 샘플 도출부(188)는 상기 현재 블록의 예측 샘플들을 도출할 수 있다. 한편, 비록 도시되지는 않았지만, 후술하는 예측 샘플 필터링 절차가 수행되는 경우, 인트라 예측부(185)는 예측 샘플 필터부(미도시)를 더 포함할 수도 있다. 5, the intra prediction unit 185 of the video encoding apparatus may include an intra prediction mode/type determination unit 186, a reference sample derivation unit 187, and/or a prediction sample derivation unit 188. I can. The intra prediction mode/type determiner 186 may determine an intra prediction mode/type for the current block. The reference sample derivation unit 187 may derive neighboring reference samples of the current block. The prediction sample derivation unit 188 may derive prediction samples of the current block. Meanwhile, although not shown, when a prediction sample filtering procedure described later is performed, the intra prediction unit 185 may further include a prediction sample filter unit (not shown).
영상 부호화 장치는 복수의 인트라 예측 모드/타입들 중 상기 현재 블록에 대하여 적용되는 모드/타입을 결정할 수 있다. 영상 부호화 장치는 상기 인트라 예측 모드/타입들에 대한 율왜곡 비용(RD cost)을 비교하고 상기 현재 블록에 대한 최적의 인트라 예측 모드/타입을 결정할 수 있다. The image encoding apparatus may determine a mode/type applied to the current block from among a plurality of intra prediction modes/types. The video encoding apparatus may compare RD costs for the intra prediction modes/types and determine an optimal intra prediction mode/type for the current block.
한편, 영상 부호화 장치는 예측 샘플 필터링 절차를 수행할 수도 있다. 예측 샘플 필터링은 포스트 필터링이라 불릴 수 있다. 상기 예측 샘플 필터링 절차에 의하여 상기 예측 샘플들 중 일부 또는 전부가 필터링될 수 있다. 경우에 따라 상기 예측 샘플 필터링 절차는 생략될 수 있다. Meanwhile, the image encoding apparatus may perform a prediction sample filtering procedure. Predictive sample filtering may be referred to as post filtering. Some or all of the prediction samples may be filtered by the prediction sample filtering procedure. In some cases, the prediction sample filtering procedure may be omitted.
다시 도 4를 참조하면, 영상 부호화 장치는 예측 샘플들 또는 필터링된 예측 샘플들을 기반으로 상기 현재 블록에 대한 레지듀얼 샘플들을 생성할 수 있다(S420). 영상 부호화 장치는 현재 블록의 원본 샘플들로부터 상기 예측 샘플들을 감산하여 상기 레지듀얼 샘플들을 도출할 수 있다. 즉, 영상 부호화 장치는 원본 샘플값으로부터 대응하는 예측 샘플값을 감산함으로써, 레지듀얼 샘플값을 도출할 수 있다.Referring back to FIG. 4, the apparatus for encoding an image may generate residual samples for the current block based on prediction samples or filtered prediction samples (S420). The image encoding apparatus may derive the residual samples by subtracting the prediction samples from original samples of the current block. That is, the image encoding apparatus may derive the residual sample value by subtracting the corresponding predicted sample value from the original sample value.
영상 부호화 장치는 상기 인트라 예측에 관한 정보(예측 정보) 및 상기 레지듀얼 샘플들에 관한 레지듀얼 정보를 포함하는 영상 정보를 인코딩할 수 있다(S430). 상기 예측 정보는 인트라 예측 모드 정보 및/또는 인트라 예측 기법 정보를 포함할 수 있다. 영상 부호화 장치는 인코딩된 영상 정보를 비트스트림 형태로 출력할 수 있다. 출력된 비트스트림은 저장 매체 또는 네트워크를 통하여 영상 복호화 장치로 전달될 수 있다.The image encoding apparatus may encode image information including information about the intra prediction (prediction information) and residual information about the residual samples (S430). The prediction information may include intra prediction mode information and/or intra prediction technique information. The image encoding apparatus may output the encoded image information in the form of a bitstream. The output bitstream may be delivered to an image decoding apparatus through a storage medium or a network.
상기 레지듀얼 정보는 후술하는 레지듀얼 코딩 신택스를 포함할 수 있다. 영상 부호화 장치는 상기 레지듀얼 샘플들을 변환/양자화하여 양자화된 변환 계수들을 도출할 수 있다. 상기 레지듀얼 정보는 상기 양자화된 변환 계수들에 대한 정보를 포함할 수 있다.The residual information may include a residual coding syntax to be described later. The image encoding apparatus may transform/quantize the residual samples to derive quantized transform coefficients. The residual information may include information on the quantized transform coefficients.
한편, 전술한 바와 같이 영상 부호화 장치는 복원 픽처(복원 샘플들 및 복원 블록 포함)를 생성할 수 있다. 이를 위하여 영상 부호화 장치는 상기 양자화된 변환 계수들을 다시 역양자화/역변환 처리하여 (수정된) 레지듀얼 샘플들을 도출할 수 있다. 이와 같이 레지듀얼 샘플들을 변환/양자화 후 다시 역양자화/역변환을 수행하는 이유는 영상 복호화 장치에서 도출되는 레지듀얼 샘플들과 동일한 레지듀얼 샘플들을 도출하기 위함이다. 영상 부호화 장치는 상기 예측 샘플들과 상기 (수정된) 레지듀얼 샘플들을 기반으로 상기 현재 블록에 대한 복원 샘플들을 포함하는 복원 블록을 생성할 수 있다. 상기 복원 블록을 기반으로 상기 현재 픽처에 대한 복원 픽처가 생성될 수 있다. 상기 복원 픽처에 인루프 필터링 절차 등이 더 적용될 수 있음은 전술한 바와 같다.Meanwhile, as described above, the image encoding apparatus may generate a reconstructed picture (including reconstructed samples and a reconstructed block). To this end, the image encoding apparatus may perform inverse quantization/inverse transformation on the quantized transform coefficients again to derive (modified) residual samples. The reason why the residual samples are transformed/quantized and then inverse quantized/inverse transformed is performed to derive residual samples that are the same as the residual samples derived from the image decoding apparatus. The image encoding apparatus may generate a reconstructed block including reconstructed samples for the current block based on the prediction samples and the (modified) residual samples. A reconstructed picture for the current picture may be generated based on the reconstructed block. As described above, an in-loop filtering procedure or the like may be further applied to the reconstructed picture.
도 6은 인트라 예측 기반 비디오/영상 디코딩 방법을 나타낸 흐름도이다.6 is a flowchart illustrating a video/video decoding method based on intra prediction.
영상 복호화 장치는 상기 영상 부호화 장치에서 수행된 동작과 대응되는 동작을 수행할 수 있다. The image decoding apparatus may perform an operation corresponding to an operation performed by the image encoding apparatus.
도 6의 디코딩 방법은 도 3의 영상 복호화 장치에 의해 수행될 수 있다. 단계 S610 내지 S630은 인트라 예측부(265)에 의하여 수행될 수 있고, 단계 S610의 예측 정보 및 단계 S640의 레지듀얼 정보는 엔트로피 디코딩부(210)에 의하여 비트스트림으로부터 획득될 수 있다. 영상 복호화 장치의 레지듀얼 처리부는 상기 레지듀얼 정보를 기반으로 현재 블록에 대한 레지듀얼 샘플들을 도출할 수 있다(S640). 구체적으로 상기 레지듀얼 처리부의 역양자화부(220)는 상기 레지듀얼 정보를 기반으로 도출된 양자화된 변환 계수들을 기반으로, 역양자화를 수행하여 변환 계수들을 도출하고, 상기 레지듀얼 처리부의 역변환부(230)는 상기 변환 계수들에 대한 역변환을 수행하여 상기 현재 블록에 대한 레지듀얼 샘플들을 도출할 수 있다. 단계 S650은 가산부(235) 또는 복원부에 의하여 수행될 수 있다.The decoding method of FIG. 6 may be performed by the video decoding apparatus of FIG. 3. Steps S610 to S630 may be performed by the intra prediction unit 265, and the prediction information of step S610 and the residual information of step S640 may be obtained from the bitstream by the entropy decoding unit 210. The residual processing unit of the image decoding apparatus may derive residual samples for the current block based on the residual information (S640). Specifically, the inverse quantization unit 220 of the residual processing unit derives transform coefficients by performing inverse quantization based on the quantized transform coefficients derived based on the residual information, and the inverse transform unit of the residual processing unit ( 230) may derive residual samples for the current block by performing inverse transform on the transform coefficients. Step S650 may be performed by the addition unit 235 or the restoration unit.
구체적으로 영상 복호화 장치는 수신된 예측 정보(인트라 예측 모드/타입 정보)를 기반으로 현재 블록에 대한 인트라 예측 모드/타입을 도출할 수 있다(S610). 또한, 영상 복호화 장치는 상기 현재 블록의 주변 참조 샘플들을 도출할 수 있다(S620). 영상 복호화 장치는 상기 인트라 예측 모드/타입 및 상기 주변 참조 샘플들을 기반으로 상기 현재 블록 내 예측 샘플들을 생성할 수 있다(S630). 이 경우 영상 복호화 장치는 예측 샘플 필터링 절차를 수행할 수 있다. 예측 샘플 필터링은 포스트 필터링이라 불릴 수 있다. 상기 예측 샘플 필터링 절차에 의하여 상기 예측 샘플들 중 일부 또는 전부가 필터링될 수 있다. 경우에 따라 예측 샘플 필터링 절차는 생략될 수 있다.In more detail, the image decoding apparatus may derive an intra prediction mode/type for the current block based on the received prediction information (intra prediction mode/type information) (S610). Also, the image decoding apparatus may derive neighboring reference samples of the current block (S620). The image decoding apparatus may generate prediction samples in the current block based on the intra prediction mode/type and the neighboring reference samples (S630). In this case, the image decoding apparatus may perform a prediction sample filtering procedure. Predictive sample filtering may be referred to as post filtering. Some or all of the prediction samples may be filtered by the prediction sample filtering procedure. In some cases, the prediction sample filtering procedure may be omitted.
영상 복호화 장치는 수신된 레지듀얼 정보를 기반으로 상기 현재 블록에 대한 레지듀얼 샘플들을 생성할 수 있다(S640). 영상 복호화 장치는 상기 예측 샘플들 및 상기 레지듀얼 샘플들을 기반으로 상기 현재 블록에 대한 복원 샘플들을 생성하고, 상기 복원 샘플들을 포함하는 복원 블록을 도출할 수 있다(S650). 상기 복원 블록을 기반으로 상기 현재 픽처에 대한 복원 픽처가 생성될 수 있다. 상기 복원 픽처에 인루프 필터링 절차 등이 더 적용될 수 있음은 전술한 바와 같다.The image decoding apparatus may generate residual samples for the current block based on the received residual information (S640). The image decoding apparatus may generate reconstructed samples for the current block based on the prediction samples and the residual samples, and derive a reconstructed block including the reconstructed samples (S650). A reconstructed picture for the current picture may be generated based on the reconstructed block. As described above, an in-loop filtering procedure or the like may be further applied to the reconstructed picture.
도 7은 본 개시에 따른 인트라 예측부의 구성을 예시적으로 나타낸 도면이다.7 is a diagram illustrating an exemplary configuration of an intra prediction unit according to the present disclosure.
도 7에 도시된 바와 같이, 영상 복호화 장치의 인트라 예측부(265)는 인트라 예측 모드/타입 결정부(266), 참조 샘플 도출부(267), 예측 샘플 도출부(268)를 포함할 수 있다. 인트라 예측 모드/타입 결정부(266)는 영상 부호화 장치의 인트라 예측 모드/타입 결정부(186)에서 생성되어 시그널링된 인트라 예측 모드/타입 정보를 기반으로 상기 현재 블록에 대한 인트라 예측 모드/타입을 결정하고, 참조 샘플 도출부(266)는 현재 픽처 내 복원된 참조 영역으로부터 상기 현재 블록의 주변 참조 샘플들을 도출할 수 있다. 예측 샘플 도출부(268)는 상기 현재 블록의 예측 샘플들을 도출할 수 있다. 한편, 비록 도시되지는 않았지만, 전술한 예측 샘플 필터링 절차가 수행되는 경우, 인트라 예측부(265)는 예측 샘플 필터부(미도시)를 더 포함할 수도 있다.As shown in FIG. 7, the intra prediction unit 265 of the image decoding apparatus may include an intra prediction mode/type determination unit 266, a reference sample derivation unit 267, and a prediction sample derivation unit 268. . The intra prediction mode/type determiner 266 determines an intra prediction mode/type for the current block based on intra prediction mode/type information generated and signaled by the intra prediction mode/type determiner 186 of the image encoding apparatus. Then, the reference sample deriving unit 266 may derive neighboring reference samples of the current block from the reconstructed reference region in the current picture. The prediction sample derivation unit 268 may derive prediction samples of the current block. Meanwhile, although not shown, when the above-described prediction sample filtering procedure is performed, the intra prediction unit 265 may further include a prediction sample filter unit (not shown).
상기 인트라 예측 모드 정보는 예를 들어 MPM(most probable mode)가 상기 현재 블록에 적용되는지 아니면 리메이닝 모드(remaining mode)가 적용되는지 여부를 나타내는 플래그 정보(e.g. intra_luma_mpm_flag 및/또는 intra_chroma_mpm_flag)를 포함할 수 있고, 상기 MPM이 상기 현재 블록에 적용되는 경우 상기 인트라 예측 모드 정보는 인트라 예측 모드 후보들(MPM 후보들) 중 하나를 지시하는 인덱스 정보(e.g. intra_luma_mpm_idx 및/또는 intra_chroma_mpm_idx)를 더 포함할 수 있다. 상기 인트라 예측 모드 후보들(MPM 후보들)은 MPM 후보 리스트 또는 MPM 리스트로 구성될 수 있다. 또한, 상기 MPM이 상기 현재 블록에 적용되지 않는 경우, 상기 인트라 예측 모드 정보는 상기 인트라 예측 모드 후보들(MPM 후보들)을 제외한 나머지 인트라 예측 모드들 중 하나를 지시하는 리메이닝 모드 정보(e.g. intra_luma_mpm_remainder 및/또는 intra_chroma_mpm_remainder)를 더 포함할 수 있다. 영상 복호화 장치는 상기 인트라 예측 모드 정보를 기반으로 상기 현재 블록의 인트라 예측 모드를 결정할 수 있다. MPM 후보 모드들은 현재 블록의 주변 블록(e.g. 좌측 주변 블록 및/또는 상측 주변 블록)의 인트라 예측 모드 및 추가적인 후보 모드들을 포함할 수 있다.The intra prediction mode information may include flag information (eg intra_luma_mpm_flag and/or intra_chroma_mpm_flag) indicating whether a most probable mode (MPM) is applied to the current block or a remaining mode is applied, for example. And, when the MPM is applied to the current block, the intra prediction mode information may further include index information (eg intra_luma_mpm_idx and/or intra_chroma_mpm_idx) indicating one of intra prediction mode candidates (MPM candidates). The intra prediction mode candidates (MPM candidates) may be composed of an MPM candidate list or an MPM list. In addition, when the MPM is not applied to the current block, the intra prediction mode information includes remaining mode information (eg intra_luma_mpm_remainder and/or intra_luma_mpm_remainder) indicating one of the remaining intra prediction modes excluding the intra prediction mode candidates (MPM candidates). Alternatively, intra_chroma_mpm_remainder) may be further included. The video decoding apparatus may determine an intra prediction mode of the current block based on the intra prediction mode information. The MPM candidate modes may include an intra prediction mode and additional candidate modes of a neighboring block (e.g. a left neighboring block and/or an upper neighboring block) of the current block.
도 8a는 본 개시의 일 실시예에 따른 인트라 예측 방향을 나타낸 도면이다. 8A is a diagram illustrating an intra prediction direction according to an embodiment of the present disclosure.
인트라 예측 모드는 일 예로 2개의 비방향성 인트라 예측 모드들과 33개의 방향성 인트라 예측 모드들을 포함할 수 있다. 상기 비방향성 인트라 예측 모드들은 플래너(planar) 모드 및 DC 모드를 포함할 수 있고, 상기 방향성 인트라 예측 모드들은 2번 내지 34번 인트라 예측 모드들을 포함할 수 있다. 상기 플래너 인트라 예측 모드는 플래너 모드라고 불릴 수 있고, 상기 DC 인트라 예측 모드는 DC 모드라고 불릴 수 있다.As an example, the intra prediction mode may include two non-directional intra prediction modes and 33 directional intra prediction modes. The non-directional intra prediction modes may include a planar mode and a DC mode, and the directional intra prediction modes may include intra prediction modes 2 to 34. The planar intra prediction mode may be referred to as a planner mode, and the DC intra prediction mode may be referred to as a DC mode.
또는, 자연 영상(natural video)에서 제시된 임의의 에지 방향(edge direction)을 캡쳐하기 위하여, 도 8a에 도시된 바와 같이 인트라 예측 모드는 2개의 비방향성 인트라 예측 모드들과 65개의 확장된 방향성 인트라 예측 모드들을 포함할 수 있다. 상기 비방향성 인트라 예측 모드들은 플래너 모드 및 DC 모드를 포함할 수 있고, 상기 확장된 방향성 인트라 예측 모드들은 2번 내지 66번 인트라 예측 모드들을 포함할 수 있다. 상기 인트라 예측 모드는 모든 사이즈의 블록들에 적용될 수 있고, 루마 성분(루마 블록) 및 크로마 성분(크로마 블록) 모두에 적용될 수 있다.Alternatively, in order to capture an arbitrary edge direction presented in a natural video, as shown in FIG. 8A, the intra prediction mode includes two non-directional intra prediction modes and 65 extended directional intra prediction. It can include modes. The non-directional intra prediction modes may include a planar mode and a DC mode, and the extended directional intra prediction modes may include intra prediction modes 2 to 66. The intra prediction mode can be applied to blocks of all sizes, and can be applied to both a luma component (a luma block) and a chroma component (a chroma block).
또는, 상기 인트라 예측 모드는 2개의 비방향성 인트라 예측 모드들과 129개의 방향성 인트라 예측 모드들을 포함할 수 있다. 상기 비방향성 인트라 예측 모드들은 플래너 모드 및 DC 모드를 포함할 수 있고, 상기 방향성 인트라 예측 모드들은 2번 내지 130번 인트라 예측 모드들을 포함할 수 있다.Alternatively, the intra prediction mode may include two non-directional intra prediction modes and 129 directional intra prediction modes. The non-directional intra prediction modes may include a planar mode and a DC mode, and the directional intra prediction modes may include 2 to 130 intra prediction modes.
한편, 상기 인트라 예측 모드는 전술한 인트라 예측 모드들 외에도 크로마 샘플을 위한 CCLM(cross-component linear model) 모드를 더 포함할 수 있다. CCLM 모드는 LM 파라미터 도출을 위하여 좌측 샘플들을 고려하는지, 상측 샘플들을 고려하는지, 둘 다를 고려하는지에 따라 L_CCLM, T_CCLM, LT_CCLM으로 나누어질 수 있으며, 크로마 성분에 대하여만 적용될 수 있다. Meanwhile, the intra prediction mode may further include a cross-component linear model (CCLM) mode for chroma samples in addition to the aforementioned intra prediction modes. The CCLM mode can be divided into L_CCLM, T_CCLM, and LT_CCLM depending on whether left samples are considered, upper samples are considered, or both are considered to derive LM parameters, and can be applied only to a chroma component.
인트라 예측 모드는 예를 들어 아래 표 1과 같이 인덱싱될 수 있다.The intra prediction mode may be indexed, for example, as shown in Table 1 below.
Figure PCTKR2020011722-appb-T000001
Figure PCTKR2020011722-appb-T000001
표 1을 참조하면, 비방향성 인트라 예측 모드로서, 플래너 모드의 모드 번호는 0이고, DC 모드의 모드 번호는 1일 수 있다. 또한, 복수의 방향성 인트라 예측 모드들의 모드 번호들은 2 내지 66일 수 있다. 또한, 부가 인트라 예측 모드로서, LT_CCLM 모드, L_CCLM 모드 및 T_CCLM 모드의 모드 번호들은 81 내지 83일 수 있다.Referring to Table 1, as a non-directional intra prediction mode, a mode number of a planner mode may be 0, and a mode number of a DC mode may be 1. Also, mode numbers of the plurality of directional intra prediction modes may be 2 to 66. Also, as an additional intra prediction mode, mode numbers of the LT_CCLM mode, the L_CCLM mode, and the T_CCLM mode may be 81 to 83.
도 8b는 본 개시의 다른 실시예에 따른 인트라 예측 방향을 나타낸 도면이다. 도 8b에서, 점선 방향은 정사각형이 아닌 블록에만 적용되는 광각(wide angle) 모드를 도시한다. 도 8b에 도시된 바와 같이, 자연 영상(natural video)에서 제시된 임의의 에지 방향(edge direction)을 캡쳐하기 위하여, 일 실시예에 따른 인트라 예측 모드는 2개의 비방향성 인트라 예측 모드와 함께 93개의 방향성 인트라 예측 모드를 포함할 수 있다. 비방향성 인트라 예측 모드들은 플래너 모드 및 DC 모드를 포함할 수 있다. 방향성 인트라 예측 모드는 도 8b의 화살표로 나타낸 바와 같이 2번 내지 80번과 -1번 내지 -14번으로 구성되는 인트라 예측 모드를 포함할 수 있다. 상기 플래너 모드는 INTRA_PLANAR로 표기될 수 있고, DC 모드는 INTRA_DC로 표기될 수 있다. 그리고 방향성 인트라 예측 모드는 INTRA_ANGULAR-14 내지 INTRA_ANGULAR-1, 및 INTRA_ANGULAR2 내지 INTRA_ANGULAR80으로 표기될 수 있다.8B is a diagram illustrating an intra prediction direction according to another embodiment of the present disclosure. In Fig. 8B, the dotted line direction shows a wide angle mode that is applied only to blocks that are not square. As shown in FIG. 8B, in order to capture an arbitrary edge direction presented in a natural video, an intra prediction mode according to an embodiment includes 93 directions along with two non-directional intra prediction modes. It may include an intra prediction mode. Non-directional intra prediction modes may include planar mode and DC mode. The directional intra prediction mode may include an intra prediction mode composed of times 2 to 80 and -1 to -14 as indicated by the arrow of FIG. 8B. The planar mode may be indicated as INTRA_PLANAR, and the DC mode may be indicated as INTRA_DC. In addition, the directional intra prediction mode may be expressed as INTRA_ANGULAR-14 to INTRA_ANGULAR-1, and INTRA_ANGULAR2 to INTRA_ANGULAR80.
한편, 상기 인트라 예측 기법 정보는 다양한 형태로 구현될 수 있다. 일 예로, 상기 인트라 예측 기법 정보는 복수의 인트라 예측 기법들 중 하나를 지시하는 인트라 예측 기법 인덱스 정보를 포함할 수 있다. 다른 예로, 상기 인트라 예측 기법 정보는 상기 MRL이 상기 현재 블록에 적용되는지 및 적용되는 경우에는 몇번째 참조 샘플 라인이 이용되는지 여부를 나타내는 참조 샘플 라인 정보(e.g. intra_luma_ref_idx), 상기 ISP가 상기 현재 블록에 적용되는지를 나타내는 ISP 플래그 정보(e.g. intra_subpartitions_mode_flag), 상기 ISP가 적용되는 경우에 서브파티션들의 분할 타입을 지시하는 ISP 타입 정보 (e.g. intra_subpartitions_split_flag), PDPC의 적용 여부를 나타내는 플래그 정보 또는 LIP의 적용 여부를 나타내는 플래그 정보 중 적어도 하나를 포함할 수 있다. 본 개시에서 ISP 플래그 정보는 ISP 적용 지시자로 불릴 수 있다. Meanwhile, the intra prediction technique information may be implemented in various forms. For example, the intra prediction technique information may include intra prediction technique index information indicating one of a plurality of intra prediction techniques. As another example, the intra prediction technique information includes reference sample line information (eg intra_luma_ref_idx) indicating whether the MRL is applied to the current block and, if applied, a reference sample line (eg intra_luma_ref_idx), and the ISP is applied to the current block. ISP flag information indicating whether it is applied (eg intra_subpartitions_mode_flag), ISP type information indicating the split type of subpartitions when the ISP is applied (eg intra_subpartitions_split_flag), flag information indicating whether or not PDPC is applied, or indicating whether the LIP is applied. It may include at least one of flag information. In this disclosure, the ISP flag information may be referred to as an ISP application indicator.
상기 인트라 예측 모드 정보 및/또는 상기 인트라 예측 기법 정보는 본 개시에서 설명된 코딩 방법을 이용하여 부호화/복호화될 수 있다. 예를 들어, 상기 인트라 예측 모드 정보 및/또는 상기 인트라 예측 기법 정보는 truncated (rice) binary code를 기반으로 엔트로피 코딩(e.g. CABAC, CAVLC)을 통하여 부호화/복호화될 수 있다.The intra prediction mode information and/or the intra prediction technique information may be encoded/decoded using the coding method described in the present disclosure. For example, the intra prediction mode information and/or the intra prediction method information may be encoded/decoded through entropy coding (e.g. CABAC, CAVLC) based on a truncated (rice) binary code.
이하, 크로마 포맷 및 크로마 성분 블록의 인트라 예측에 대해 설명한다.Hereinafter, a chroma format and intra prediction of a chroma component block will be described.
크로마 포맷의 개요Overview of chroma format
도 9a 내지 도 9c는 크로마 포맷에 따른 루마 성분 블록(루마 성분 어레이)과 크로마 성분 블록(크로마 성분 어레이)의 관계를 설명하기 위한 도면들이다.9A to 9C are diagrams for explaining a relationship between a luma component block (a luma component array) and a chroma component block (a chroma component array) according to a chroma format.
소스 또는 코딩된 픽처/영상은 루마 성분(Y) 블록과 두 개의 크로마 성분(cb, cr) 블록을 포함할 수 있다. 즉, 픽처/영상의 하나의 픽셀은 루마 샘플 및 두 개의 크로마 샘플들(cb, cr)을 포함할 수 있다. 크로마 포맷은 루마 샘플과 크로마 샘플(cb, cr)의 구성 포맷을 나타낼 수 있으며, 컬러 포맷이라고 불릴 수도 있다. 크로마 포맷은 미리 정해질 수도 있고, 또는 적응적으로 시그널링될 수도 있다. 예를 들어, 상기 크로마 포맷은 표 2와 같이 chroma_format_idc 및 separate_colour_plane_flag 중 적어도 하나를 기반으로 시그널링될 수 있다.The source or coded picture/video may include a luma component (Y) block and two chroma component (cb, cr) blocks. That is, one pixel of a picture/image may include a luma sample and two chroma samples cb and cr. The chroma format may represent a configuration format of a luma sample and a chroma sample (cb, cr), and may also be called a color format. The chroma format may be predetermined or may be signaled adaptively. For example, the chroma format may be signaled based on at least one of chroma_format_idc and separate_colour_plane_flag as shown in Table 2.
Figure PCTKR2020011722-appb-T000002
Figure PCTKR2020011722-appb-T000002
상기 표 2에서, chroma_format_idc는 루마 샘플과 이에 대응하는 크로마 샘플의 포맷을 지시하는 정보이고, separate_colour_plane_flag는 4:4:4 크로마 포맷에서 3개의 색 성분(Y, cb, cr)이 별도로 부호화되는지 여부를 나타내는 정보이다.상기 표 2에서, chroma_format_idc가 0인 경우, 크로마 포맷은 모노크롬(monochrome)에 해당하며, 현재 블록은 크로마 성분 블록을 포함하지 않고 루마 성분 블록만을 포함한다. In Table 2, chroma_format_idc is information indicating a format of a luma sample and a chroma sample corresponding thereto, and separate_colour_plane_flag indicates whether three color components (Y, cb, cr) are separately encoded in a 4:4:4 chroma format. In Table 2, when chroma_format_idc is 0, the chroma format corresponds to monochrome, and the current block does not include a chroma component block and includes only a luma component block.
상기 표 2에서, chroma_format_idc가 1인 경우, 크로마 포맷은 4:2:0 크로마 포맷에 해당하며, 크로마 성분 블록의 너비 및 높이는 루마 성분 블록의 너비 및 높이의 절반에 각각 해당한다. 도 9a는 4:2:0 크로마 포맷에서의 루마 샘플과 크로마 샘플의 위치 관계를 도시한 도면이다.In Table 2, when chroma_format_idc is 1, the chroma format corresponds to a 4:2:0 chroma format, and the width and height of the chroma component block correspond to half of the width and height of the luma component block, respectively. 9A is a diagram showing a positional relationship between a luma sample and a chroma sample in a 4:2:0 chroma format.
상기 표 2에서, chroma_format_idc가 2인 경우, 크로마 포맷은 4:2:2 크로마 포맷에 해당하며, 크로마 성분 블록의 너비는 루마 성분 블록의 너비의 절반에 해당하고, 크로마 성분 블록의 높이는 루마 성분 블록의 높이와 동일하다. 도 9b는 4:2:2 크로마 포맷에서의 루마 샘플과 크로마 샘플의 위치 관계를 도시한 도면이다.In Table 2, when chroma_format_idc is 2, the chroma format corresponds to the 4:2:2 chroma format, the width of the chroma component block is half the width of the luma component block, and the height of the chroma component block is the luma component block. Is equal to the height of 9B is a diagram showing a positional relationship between a luma sample and a chroma sample in a 4:2:2 chroma format.
상기 표 2에서, chroma_format_idc가 3인 경우, 크로마 포맷은 4:4:4 크로마 포맷에 해당하며, 크로마 성분 블록의 너비 및 높이는 루마 성분 블록의 너비 및 높이와 각각 동일하다. 도 9c는 4:4:4 크로마 포맷에서의 루마 샘플과 크로마 샘플의 위치 관계를 도시한 도면이다.In Table 2, when chroma_format_idc is 3, the chroma format corresponds to a 4:4:4 chroma format, and the width and height of the chroma component block are the same as the width and height of the luma component block, respectively. 9C is a diagram showing a positional relationship between a luma sample and a chroma sample in a 4:4:4 chroma format.
상기 표 2에서, SubWidthC와 SubHeightC는 루마 샘플과 크로마 샘플 사이의 비율을 나타낸다. 예컨대, 루마 성분 블록의 너비 및 높이가 각각 CbWidth 및 CbHeight일 때, 대응하는 크로마 성분 블록의 너비 및 높이는 각각 (CbWidth/SubwidthC) 및 (CbHeight/SubHeightC)로 유도될 수 있다.In Table 2, SubWidthC and SubHeightC represent the ratio between the luma sample and the chroma sample. For example, when the width and height of the luma component block are CbWidth and CbHeight, respectively, the width and height of the corresponding chroma component block may be derived as (CbWidth/SubwidthC) and (CbHeight/SubHeightC), respectively.
도 10은 크로마 포맷의 시그널링 정보를 포함하는 SPS 신택스의 일 예를 나타낸 도면이다. 도 10에 도시된 바와 같이, chroma_format_idc 및 separate_colour_plane_flag는 상위 레벨 신택스인 SPS를 통해 시그널링될 수 있다.10 is a diagram illustrating an example of an SPS syntax including signaling information in a chroma format. As shown in FIG. 10, chroma_format_idc and separate_colour_plane_flag may be signaled through SPS, which is a high-level syntax.
크로마 블록의 인트라 예측Intra prediction of chroma blocks
현재 블록에 인트라 예측이 수행되는 경우, 현재 블록의 루마 성분 블록(루마 블록)에 대한 예측 및 크로마 성분 블록(크로마 블록)에 대한 예측이 수행될 수 있으며, 이 경우 크로마 블록에 대한 인트라 예측 모드는 루마 블록에 대한 인트라 예측 모드와 개별적으로 설정될 수 있다.When intra prediction is performed on the current block, prediction on a luma component block (luma block) of the current block and prediction on a chroma component block (chroma block) may be performed. In this case, the intra prediction mode for the chroma block is It can be set separately from the intra prediction mode for the luma block.
예를 들어, 크로마 블록에 대한 인트라 예측 모드는 인트라 크로마 예측 모드 정보를 기반으로 지시될 수 있으며, 상기 인트라 크로마 예측 모드 정보는 intra_chroma_pred_mode 신택스 요소의 형태로 시그널링될 수 있다. 일 예로, 상기 인트라 크로마 예측 모드 정보는 플래너(Planar) 모드, DC 모드, 수직(vertical) 모드, 수평(horizontal) 모드, DM(Derived Mode), CCLM(Cross-component linear model) 모드들 중 하나를 가리킬 수 있다. 여기서, 상기 플래너 모드는 0번 인트라 예측 모드, 상기 DC 모드는 1번 인트라 예측 모드, 상기 수직 모드는 26번 인트라 예측 모드, 상기 수평 모드는 10번 인트라 예측 모드를 나타낼 수 있다. DM은 direct mode라고 불릴 수도 있다. 또한, CCLM은 LM(linear model)이라고 불릴 수도 있다.For example, an intra prediction mode for a chroma block may be indicated based on intra chroma prediction mode information, and the intra chroma prediction mode information may be signaled in the form of an intra_chroma_pred_mode syntax element. For example, the intra-chroma prediction mode information includes one of a planar mode, a DC mode, a vertical mode, a horizontal mode, a derived mode (DM), and a cross-component linear model (CCLM) mode. Can point. Here, the planar mode may indicate a 0th intra prediction mode, the DC mode may indicate a 1st intra prediction mode, the vertical mode may indicate a 26th intra prediction mode, and the horizontal mode may indicate a 10th intra prediction mode. DM can also be called direct mode. Further, CCLM may be referred to as a linear model (LM).
한편, DM과 CCLM은 루마 블록의 정보를 이용하여 크로마 블록을 예측하는 종속적인 인트라 예측 모드이다. 상기 DM은 상기 루마 성분에 대한 인트라 예측 모드와 동일한 인트라 예측 모드가 상기 크로마 성분에 대한 인트라 예측 모드로 적용되는 모드를 나타낼 수 있다. 또한, 상기 CCLM은 크로마 블록에 대한 예측 블록을 생성하는 과정에서 루마 블록의 복원된 샘플들을 서브샘플링한 후, 서브샘플링된 샘플들에 CCLM 파라미터인 α 및 β를 적용하여 수학식 1과 같이 도출되는 샘플들을 상기 크로마 블록의 예측 샘플들로 사용하는 인트라 예측 모드를 나타낼 수 있다.Meanwhile, DM and CCLM are dependent intra prediction modes for predicting a chroma block using information of a luma block. The DM may represent a mode in which an intra prediction mode identical to an intra prediction mode for the luma component is applied as an intra prediction mode for the chroma component. In addition, the CCLM subsamples the reconstructed samples of the luma block in the process of generating the prediction block for the chroma block, and then applies CCLM parameters α and β to the subsampled samples to be derived as shown in Equation 1. It may represent an intra prediction mode in which samples are used as prediction samples of the chroma block.
Figure PCTKR2020011722-appb-M000001
Figure PCTKR2020011722-appb-M000001
여기서, predc(i,j) 는 현재 CU 내 상기 현재 크로마 블록의 (i,j) 좌표의 예측 샘플을 나타낼 수 있다. recL'(i,j)는 상기 CU 내 상기 현재 루마 블록의 (i,j) 좌표의 복원 샘플을 나타낼 수 있다. 예를 들어, 상기 recL'(i,j)는 상기 현재 루마 블록의 다운 샘플링(down-sampled)된 복원 샘플을 나타낼 수 있다. 선형 모델 계수 α와 β는 시그널링될 수도 있지만, 주변 샘플로부터 유도될 수도 있다.Here, pred c (i,j) may represent a predicted sample of (i,j) coordinates of the current chroma block in the current CU. rec L '(i,j) may represent a reconstructed sample of the (i,j) coordinate of the current luma block in the CU. For example, rec L '(i,j) may represent a down-sampled reconstructed sample of the current luma block. The linear model coefficients α and β may be signaled, but may also be derived from surrounding samples.
DM의 개요DM overview
현재 크로마 블록이 DM으로 예측된 경우, 현재 크로마 블록의 인트라 예측 모드는 대응하는 루마 블록의 인트라 예측 모드로 도출될 수 있다. 예를 들어, 대응 루마 블록의 소정 위치의 인트라 예측 모드를 현재 크로마 블록의 인트라 예측 모드로 사용할 수 있다. 본 개시에서 현재 크로마 블록에 대한 인트라 예측 모드로서 DM은 크로마 DM으로 불릴 수도 있다.When the current chroma block is predicted as DM, the intra prediction mode of the current chroma block may be derived as the intra prediction mode of the corresponding luma block. For example, the intra prediction mode at a predetermined position of the corresponding luma block may be used as the intra prediction mode of the current chroma block. In the present disclosure, as an intra prediction mode for a current chroma block, DM may be referred to as a chroma DM.
도 11은 DM의 경우 현재 크로마 블록의 인트라 예측 모드를 도출하기 위한 소정 위치를 도시한 도면이다.11 is a diagram illustrating a predetermined position for deriving an intra prediction mode of a current chroma block in the case of a DM.
도 11에서, 예를 들어 크로마 블록은 수직 바이너리 분할되고, 현재 크로마 블록은 빗금친 영역의 블록일 수 있다. 이 때, 현재 크로마 블록에 대응하는 루마 블록은 루마 블록 내 빗금친 영역의 블록일 수 있다.In FIG. 11, for example, a chroma block is divided into vertical binaries, and a current chroma block may be a block of a hatched area. In this case, the luma block corresponding to the current chroma block may be a block of a shaded area within the luma block.
도 11에서, DM으로 예측된 현재 크로마 블록의 인트라 예측 모드(인트라 크로마 예측 모드)는 대응 루마 블록 내 소정 위치의 인트라 예측 모드(인트라 루마 예측 모드)로 유도될 수 있다. 예를 들어, 대응 루마 블록 내 센터 우하측 샘플(중심 위치)(CR)을 커버하는 블록의 인트라 예측 모드가 현재 크로마 블록의 인트라 예측 모드로 결정될 수 있다. 그러나, 상기 소정 위치는 상기 중심 위치로 한정되지 않으며, 예를 들어, 좌상단 위치(TL)와 같이 대응 루마 블록 내 다른 위치일 수도 있다.In FIG. 11, the intra prediction mode (intra chroma prediction mode) of the current chroma block predicted by the DM may be derived to an intra prediction mode (intra luma prediction mode) at a predetermined position in the corresponding luma block. For example, the intra prediction mode of the block covering the lower right center sample (center position) CR in the corresponding luma block may be determined as the intra prediction mode of the current chroma block. However, the predetermined position is not limited to the center position, and may be another position in the corresponding luma block, such as, for example, the upper left position TL.
또는, 현재 크로마 블록에 다중 DM(Multiple Direct Modes: MDM)이 적용될 수도 있다. Alternatively, multiple Direct Modes (MDM) may be applied to the current chroma block.
다중 DM은 상기 단일 DM을 복수의 모드로 확장하여 사용하는 모드로서, 현재 크로마 블록의 화면 내 예측 모드를 유도하기 위해 복수의 DM 후보들을 포함하는 DM 후보 리스트를 구성하고, DM 후보 리스트에 포함된 후보들 중 하나를 현재 크로마 블록의 인트라 예측 모드로 도출할 수 있다. 다중 DM이 적용되는 경우, DM 후보 리스트는 아래의 복수의 DM 후보들 중 적어도 하나를 포함할 수 있다.The multiple DM is a mode in which the single DM is extended to a plurality of modes, and a DM candidate list including a plurality of DM candidates is constructed to induce an intra prediction mode of the current chroma block, and included in the DM candidate list. One of the candidates may be derived as an intra prediction mode of the current chroma block. When multiple DM is applied, the DM candidate list may include at least one of a plurality of DM candidates below.
- 대응 루마 블록의 CR, TL, TR, BL, BR 위치의 인트라 예측 모드-Intra prediction mode of CR, TL, TR, BL, BR position of corresponding luma block
- 현재 크로마 블록의 주변 블록인 L, A, BL, AR, AL 위치의 인트라 예측 모드-Intra prediction mode at the location of L, A, BL, AR, AL, neighboring blocks of the current chroma block
- 플래너(Planar) 모드 및 DC 모드-Planar mode and DC mode
- 이미 포함된 방향성 모드에 소정의 오프셋(e.g. 1)을 가감하여 도출되는 방향성 모드-Directional mode derived by adding or subtracting a predetermined offset (e.g. 1) to the already included directional mode
- 디폴트 DM 후보 모드: 수직 모드, 수평 모드, 2, 34, 66, 10, 26번 모드(65개 방향성 모드의 경우)-Default DM candidate mode: vertical mode, horizontal mode, 2, 34, 66, 10, 26 modes (in case of 65 directional modes)
- 4개의 디폴트 DM 후보(PLANAR 모드, DC 모드, 수직 모드 및 수평 모드)가 DM 후보 리스트에 포함되지 않은 경우, 포함되지 않은 디폴트 DM 후보로 리스트에 이미 포함된 DM 후보 대체-If four default DM candidates (PLANAR mode, DC mode, vertical mode and horizontal mode) are not included in the DM candidate list, the DM candidates already included in the list are replaced with the default DM candidates that are not included.
크로마 블록의 인트라 예측 모드의 시그널링 개요Signaling overview of intra prediction mode of chroma block
크로마 블록의 인트라 예측 모드는 총 8개의 인트라 예측 모드를 이용하여 인코딩될 수 있다. 상기 8개의 인트라 예측 모드들은 종래 5개의 인트라 예측 모드들과 CCLM (cross-component linear model mode) 모드(들)을 포함할 수 있다. The intra prediction modes of the chroma block may be encoded using a total of eight intra prediction modes. The eight intra prediction modes may include conventional five intra prediction modes and a cross-component linear model mode (CCLM) mode(s).
CCLM이 가용한지의 여부는 상위 레벨에서 시그널링되는 정보(e.g. 시퀀스 레벨에서 전송되는 sps_cclm_enabled_flag)에 기초하여 판단될 수 있다. 표 3은 CCLM이 가용하지 않은 경우(sps_cclm_enabled_flag = 0), 크로마 블록의 인트라 예측 모드를 도출하기 위한 매핑 테이블을 나타낸다.Whether the CCLM is available may be determined based on information signaled at a higher level (e.g. sps_cclm_enabled_flag transmitted at the sequence level). Table 3 shows a mapping table for deriving an intra prediction mode of a chroma block when CCLM is not available (sps_cclm_enabled_flag = 0).
Figure PCTKR2020011722-appb-T000003
Figure PCTKR2020011722-appb-T000003
표 3에 나타낸 바와 같이 크로마 블록의 인트라 예측 모드는 인트라 크로마 예측 모드 정보(intra_chroma_pred_mode) 및/또는 대응 루마 블록의 인트라 예측 모드(IntraPredModeY)에 기반하여 유도될 수 있다. 대응 루마 블록의 인트라 예측 모드는 현재 블록 또는 크로마 블록의 센터 우하측 샘플(중심 위치)을 커버하는 루마 블록의 인트라 예측 모드로 결정될 수 있다. 상기 센터 우하측 샘플 위치는 (xCb + cbWidth / 2, yCb + cbHeight / 2)로 유도되며, 이 때, (xCb, yCb)는 대응 루마 블록의 좌상단 샘플(top-left sample)의 좌표를 의미하고, cbWidth와 cbHeight는 각각 대응 루마 블록의 너비와 높이를 의미한다. As shown in Table 3, the intra prediction mode of the chroma block may be derived based on the intra chroma prediction mode information (intra_chroma_pred_mode) and/or the intra prediction mode (IntraPredModeY) of the corresponding luma block. The intra prediction mode of the corresponding luma block may be determined as an intra prediction mode of the luma block that covers the current block or the lower right center sample (center position) of the chroma block. The center of the lower right sample position is derived as (xCb + cbWidth / 2, yCb + cbHeight / 2), where (xCb, yCb) means the coordinates of the top-left sample of the corresponding luma block. , cbWidth and cbHeight mean the width and height of the corresponding luma block, respectively.
예를 들어, 표 3에서, intra_chroma_pred_mode가 0이면, 크로마 블록의 인트라 예측 모드는 0(플래너 모드)로 결정되고, intra_chroma_pred_mode가 1이면, 크로마 블록의 인트라 예측 모드는 50번 모드(수직 모드)로 결정될 수 있다. 또한, intra_chroma_pred_mode가 2이면, 크로마 블록의 인트라 예측 모드는 18번 모드(수평 모드)로 결정되고, intra_chroma_pred_mode가 3이면, 크로마 블록의 인트라 예측 모드는 1번 모드(DC 모드)로 결정될 수 있다. 또한, intra_chroma_pred_mode가 4이면, 크로마 블록의 인트라 예측 모드는 대응 루마 블록의 인트라 예측 모드와 동일한 값으로 결정될 수 있다. 즉, intra_chroma_pred_mode가 4인 것은 크로마 블록의 인트라 예측 모드가 DM으로 도출되는 것을 나타낸다. 표 3에 기반하여 도출되는 크로마 블록의 인트라 예측 모드(IntraPredModeC[ xCb ][ yCb ])의 인덱스들은 상기 표 1에 나타낸 인트라 예측 모드의 인덱스들과 대응될 수 있다.For example, in Table 3, if the intra_chroma_pred_mode is 0, the intra prediction mode of the chroma block is determined as 0 (planner mode), and if the intra_chroma_pred_mode is 1, the intra prediction mode of the chroma block is determined as mode 50 (vertical mode). I can. In addition, if the intra_chroma_pred_mode is 2, the intra prediction mode of the chroma block is determined as mode 18 (horizontal mode), and if the intra_chroma_pred_mode is 3, the intra prediction mode of the chroma block may be determined as mode 1 (DC mode). In addition, if the intra_chroma_pred_mode is 4, the intra prediction mode of the chroma block may be determined to be the same value as the intra prediction mode of the corresponding luma block. That is, when the intra_chroma_pred_mode is 4, it indicates that the intra prediction mode of the chroma block is derived as DM. The indexes of the intra prediction mode (IntraPredModeC[ xCb ][ yCb ]) of the chroma block derived based on Table 3 may correspond to the indexes of the intra prediction mode shown in Table 1 above.
표 3에 따르면, intra_chroma_pred_mode 값이 0 내지 3 일 때, IntraPredModeY 값에 따라 크로마 블록의 인트라 예측 모드가 전술한 인트라 예측 모드(플래너 모드, 수직 모드, 수평 모드, DC 모드)가 아닌 66번 모드로 결정되는 경우가 있다. 예를 들어, intra_chroma_pred_mode 값 0은 플래너 모드를 나타내는데, 이 때 IntraPredModeY가 0(플래너 모드)이면, 크로마 블록의 인트라 예측 모드는 66번 모드로 결정된다. 그러나, 상기와 같이, 크로마 블록의 인트라 예측 모드와 대응 루마 블록의 인트라 예측 모드가 모두 플래너 모드로서 동일한 경우 intra_chroma_pred_mode 값은 0이 아닌 DM을 지시하는 4로 결정된다. 따라서, intra_chroma_pred_mode 값이 0 내지 3 일 때, 크로마 블록의 인트라 예측 모드가 66으로 결정되는 경우는 실질적으로 발생하지 않는다. 즉, intra_chroma_pred_mode가 0 내지 3인 경우, 크로마 블록의 인트라 예측 모드는 intra_chroma_pred_mode 값에 기반하여 플래너 모드, 수직 모드, 수평 모드 및 DC 모드 중 하나로 도출될 수 있고, intra_chroma_pred_mode가 4인 경우, 크로마 블록의 인트라 예측 모드는 intra_chroma_pred_mode 값과 대응 루마 블록의 인트라 예측 모드에 기반하여 도출될 수 있다.According to Table 3, when the intra_chroma_pred_mode value is 0 to 3, the intra prediction mode of the chroma block is determined to be mode 66 instead of the aforementioned intra prediction mode (planner mode, vertical mode, horizontal mode, DC mode) according to the IntraPredModeY value. There are cases. For example, an intra_chroma_pred_mode value of 0 indicates a planar mode. In this case, if IntraPredModeY is 0 (planar mode), the intra prediction mode of the chroma block is determined as mode 66. However, as described above, when both the intra prediction mode of the chroma block and the intra prediction mode of the corresponding luma block are the same as the planar mode, the intra_chroma_pred_mode value is determined to be 4 indicating DM, not 0. Therefore, when the intra_chroma_pred_mode value is 0 to 3, the case where the intra prediction mode of the chroma block is determined to be 66 does not substantially occur. That is, when the intra_chroma_pred_mode is 0 to 3, the intra prediction mode of the chroma block may be derived as one of the planar mode, the vertical mode, the horizontal mode, and the DC mode based on the intra_chroma_pred_mode value. When the intra_chroma_pred_mode is 4, the intra prediction mode of the chroma block The prediction mode may be derived based on an intra_chroma_pred_mode value and an intra prediction mode of a corresponding luma block.
표 4는 CCLM이 가용한 경우(sps_cclm_enabled_flag=1), 크로마 블록의 인트라 예측 모드를 도출하기 위한 매핑 테이블을 나타낸다.Table 4 shows a mapping table for deriving an intra prediction mode of a chroma block when CCLM is available (sps_cclm_enabled_flag=1).
Figure PCTKR2020011722-appb-T000004
Figure PCTKR2020011722-appb-T000004
표 4는 CCLM이 가용한 경우로서, 표 3의 모드들에 더하여 추가적으로 CCLM 모드를 시그널링하기 위한 모드들을 포함할 수 있다. 표 4에서, intra_chroma_pred_mode가 4 내지 6인 경우, 각각 INTRA_LT_CCLM, INTRA_L_CCLM, INTRA_T_CCLM을 나타낼 수 있다. 표 4에서 intra_chroma_pred_mode가 0 내지 3, 및 7인 경우는, 표 3에서 intra_chroma_pred_mode가 0 내지 4인 경우에 각각 대응될 수 있다. 즉, intra_chroma_pred_mode가 7인 것은 크로마 블록의 인트라 예측 모드가 DM으로 도출되는 것을 나타낸다.Table 4 is a case in which the CCLM is available, and may include modes for signaling the CCLM mode in addition to the modes of Table 3. In Table 4, when intra_chroma_pred_mode is 4 to 6, INTRA_LT_CCLM, INTRA_L_CCLM, and INTRA_T_CCLM may be indicated, respectively. In Table 4, the cases where intra_chroma_pred_mode is 0 to 3, and 7 may correspond to cases where the intra_chroma_pred_mode is 0 to 4 in Table 3, respectively. That is, when the intra_chroma_pred_mode is 7, it indicates that the intra prediction mode of the chroma block is derived as DM.
이상 표 3 및 표 4를 참조하여 설명한 바와 같이, 크로마 블록의 인트라 예측 모드는 인트라 크로마 예측 모드 정보(intra_chroma_pred_mode) 및/또는 대응 루마 블록의 인트라 예측 모드에 기반하여 도출될 수 있다. 예를 들어, 인트라 크로마 예측 모드 정보가 DM을 나타내는 경우, 크로마 블록의 인트라 예측 모드는 대응 루마 블록의 인트라 예측 모드와 동일하게 결정될 수 있다.As described above with reference to Tables 3 and 4, an intra prediction mode of a chroma block may be derived based on intra-chroma prediction mode information (intra_chroma_pred_mode) and/or an intra prediction mode of a corresponding luma block. For example, when the intra chroma prediction mode information indicates DM, the intra prediction mode of the chroma block may be determined to be the same as the intra prediction mode of the corresponding luma block.
전술한 인트라 예측 방법에 따르면, 현재 루마 블록에 대한 인트라 예측은 MPM 리스트에 기반하여 수행되고, 현재 크로마 블록에 대한 인트라 예측은 소정의 디폴트 모드 및/또는 DM(크로마 DM)에 기반하여 수행될 수 있다. 상기 디폴트 인트라 예측 모드는 플래너 모드, DC 모드, 수직 모드(vertical mode) 및 수평 모드(horizontal mode)를 포함할 수 있다. 상기 크로마 DM은 상기 현재 크로마 블록의 인트라 예측 모드가 상기 현재 크로마 블록에 대응하는 루마 블록 내 소정 위치의 인트라 예측 모드로 유도되는 것을 나타낼 수 있다.According to the above-described intra prediction method, intra prediction for a current luma block is performed based on an MPM list, and intra prediction for a current chroma block may be performed based on a predetermined default mode and/or DM (chroma DM). have. The default intra prediction mode may include a planar mode, a DC mode, a vertical mode, and a horizontal mode. The chroma DM may indicate that the intra prediction mode of the current chroma block is derived to an intra prediction mode at a predetermined position in the luma block corresponding to the current chroma block.
현재 크로마 블록의 크기는 도 9a 내지 도 9c를 참조하여 전술한 바와 같이, 크로마 포맷에 따라 달라질 수 있다. The size of the current chroma block may vary according to the chroma format, as described above with reference to FIGS. 9A to 9C.
도 12는 크로마 포맷에 따른 현재 크로마 블록의 크기를 예시적으로 나타낸 도면이다.12 is a diagram illustrating a size of a current chroma block according to a chroma format.
도 12를 참조하면, 64x128 루마 블록에 대응하는 현재 크로마 블록의 크기는, 4:2:0 크로마 포맷에서 32x64이고, 4:2:2 크로마 포맷에서 32x128이며, 4:4:4 크로마 포맷에서 64x128일 수 있다. 즉, 현재 블록의 크로마 성분에 대한 샘플링율이 증가함에 따라 현재 크로마 블록의 크기는 증가할 수 있고, 이는 상기 크로마 성분의 정보량도 함께 증가한다는 것을 의미할 수 있다.Referring to FIG. 12, the size of a current chroma block corresponding to a 64x128 luma block is 32x64 in a 4:2:0 chroma format, 32x128 in a 4:2:2 chroma format, and 64x128 in a 4:4:4 chroma format. Can be That is, as the sampling rate for the chroma component of the current block increases, the size of the current chroma block may increase, which may mean that the amount of information on the chroma component also increases.
크로마 포맷이 4:2:0인 경우, 크로마 성분의 정보량이 상대적으로 적으므로, 전술한 방법에 따르더라도 현재 크로마 블록에 대한 인트라 예측의 성능 열화는 발생하지 않는다. 그러나, 크로마 포맷이 4:2:2 또는 4:4:4인 경우, 크로마 성분의 정보량이 상대적으로 많아지므로, 전술한 방법에 따를 경우 현재 크로마 블록에 대한 인트라 예측의 성능 열화가 발생할 수 있다.When the chroma format is 4:2:0, since the information amount of the chroma component is relatively small, performance deterioration of intra prediction for the current chroma block does not occur even if the above-described method is followed. However, when the chroma format is 4:2:2 or 4:4:4, since the amount of information on the chroma component is relatively large, performance deterioration of intra prediction for the current chroma block may occur when the above-described method is followed.
또한, 전술한 인트라 예측 방법에 따르면, 현재 루마 블록에 대한 인트라 예측 과정과 현재 크로마 블록에 대한 인트라 예측 과정이 서로 상이하므로, 영상 부호화/복호화 과정의 복잡도가 증가할 수 있다.In addition, according to the aforementioned intra prediction method, since the intra prediction process for the current luma block and the intra prediction process for the current chroma block are different from each other, the complexity of the image encoding/decoding process may increase.
상기 문제점들을 해결하기 위하여, 본 개시의 인트라 예측 방법에 따르면, 현재 루마 블록에 대한 인트라 예측 과정이 현재 크로마 블록에 대해서도 동일 또는 유사하게 수행될 수 있다.In order to solve the above problems, according to the intra prediction method of the present disclosure, the intra prediction process for the current luma block may be performed in the same or similar manner to the current chroma block.
예를 들어, 영상 부호화/복호화 장치는, 현재 루마 블록에 대하여 상기 현재 루마 블록에 인접한 주변 루마 블록(e.g. 좌측 주변 블록 및/또는 상측 주변 블록)의 인트라 예측 모드 및 추가적인 후보 모드들을 이용하여 상기 현재 루마 블록에 대한 MPM 리스트를 구성할 수 있다. 마찬가지로, 영상 부호화/복호화 장치는, 현재 크로마 블록에 대하여 상기 현재 크로마 블록에 인접한 주변 크로마 블록(e.g. 좌측 주변 블록 및/또는 상측 주변 블록)의 인트라 예측 모드 및 추가적인 후보 모드들을 이용하여 상기 현재 크로마 블록에 대한 MPM 리스트를 구성할 수 있다. 일 예에서, 상기 주변 크로마 블록은 상기 현재 크로마 블록에 대응하는 루마 블록(대응 루마 블록)의 인트라 예측 모드를 유도하는 데 이용된 주변 루마 블록들과 동일한 위치(또는, 대응하는 위치)에 존재할 수 있다. 또는, 상기 주변 크로마 블록 중 적어도 일부는 상기 주변 루마 블록들과 상이한 위치에 존재할 수도 있다.For example, the image encoding/decoding apparatus may use an intra prediction mode and additional candidate modes of a neighboring luma block (eg, a left neighboring block and/or an upper neighboring block) adjacent to the current luma block with respect to the current luma block. You can configure an MPM list for luma blocks. Likewise, the image encoding/decoding apparatus uses intra prediction modes and additional candidate modes of a neighboring chroma block (eg, a left neighboring block and/or an upper neighboring block) adjacent to the current chroma block with respect to the current chroma block. You can configure the MPM list for. In one example, the neighboring chroma block may exist at the same position (or corresponding position) as the neighboring luma blocks used to induce the intra prediction mode of the luma block (corresponding luma block) corresponding to the current chroma block. have. Alternatively, at least some of the surrounding chroma blocks may exist in different positions from the surrounding luma blocks.
현재 크로마 블록에 대한 MPM 리스트는, 상기 현재 크로마 블록의 인트라 예측 모드가 상기 현재 크로마 블록에 대응하는 대응 루마 블록의 인트라 예측 모드로 유도되는 것을 나타내는 크로마 DM을 포함할 수 있다. 일 예에서, 상기 크로마 DM은 상기 현재 크로마 블록에 대한 MPM 리스트에 첫번째 후보(e.g. MPM 인덱스=0)로 포함될 수 있다. 상기 크로마 DM으로 결정된 상기 현재 크로마 블록의 인트라 예측 모드는 상기 대응 루마 블록 내 소정 위치의 인트라 예측 모드로 유도될 수 있다. 예를 들어, 도 11을 참조하여 전술한 바와 같이, 상기 대응 루마 블록 내 센터 우하측 샘플(중심 위치)을 커버하는 블록의 인트라 예측 모드가 상기 현재 크로마 블록의 인트라 예측 모드로 결정될 수 있다. 또는, 상기 대응 루마 블록 내 좌상단 샘플을 커버하는 블록의 인트라 예측 모드가 상기 현재 크로마 블록의 인트라 예측 모드로 결정될 수도 있다.The MPM list for the current chroma block may include a chroma DM indicating that an intra prediction mode of the current chroma block is derived to an intra prediction mode of a corresponding luma block corresponding to the current chroma block. In one example, the chroma DM may be included as a first candidate (e.g. MPM index = 0) in the MPM list for the current chroma block. The intra prediction mode of the current chroma block determined as the chroma DM may be derived as an intra prediction mode at a predetermined position in the corresponding luma block. For example, as described above with reference to FIG. 11, the intra prediction mode of a block covering the lower right center sample (center position) in the corresponding luma block may be determined as the intra prediction mode of the current chroma block. Alternatively, the intra prediction mode of the block covering the upper left sample in the corresponding luma block may be determined as the intra prediction mode of the current chroma block.
본 개시에서 MPM 리스트는 후보 리스트, candModeList 등 다양한 용어로 불릴 수 있다. 또한, 본 개시에서, 현재 루마 블록에 대한 MPM 리스트는 루마 MPM 리스트로 불릴 수 있고, 현재 크로마 블록에 대한 MPM 리스트는 크로마 MPM 리스트로 불릴 수 있다.In the present disclosure, the MPM list may be referred to in various terms such as a candidate list and candModeList. In addition, in the present disclosure, the MPM list for the current luma block may be referred to as a luma MPM list, and the MPM list for the current chroma block may be referred to as a chroma MPM list.
현재 루마 블록 및 현재 크로마 블록에 대한 인트라 예측 과정에 있어서, 영상 복호화 장치는 영상 부호화 장치로부터 수신된 MPM 인덱스를 기반으로 MPM 리스트 내 MPM 후보들 중 하나를 인트라 예측 모드로 선택할 수 있다. 또는, 영상 복호화 장치는 영상 부호화 장치로부터 수신된 리메이닝 모드 정보를 기반으로 상기 MPM 리스트에 포함되지 않는 나머지 인트라 예측 모드들 중 하나를 인트라 예측 모드로 선택할 수도 있다.In the intra prediction process for the current luma block and the current chroma block, the image decoding apparatus may select one of the MPM candidates in the MPM list as the intra prediction mode based on the MPM index received from the image encoding apparatus. Alternatively, the video decoding apparatus may select one of the remaining intra prediction modes that are not included in the MPM list as the intra prediction mode based on the remaining mode information received from the video encoding apparatus.
현재 크로마 블록에 적용되는 인트라 예측 모드가 MPM 후보들 중에 있는지(즉, 크로마 MPM 리스트에 포함되어 있는지) 아니면 리메이닝 모드 중에 있는지는, 상기 현재 크로마 블록에 대한 MPM 플래그(e.g. intra_chroma_mpm_flag)를 기반으로 지시될 수 있다. 상기 MPM 플래그의 제1 값(e.g. 1)은 상기 현재 크로마 블록의 인트라 예측 모드가 MPM 후보들 중에 있음을 나타낼 수 있으며, 상기 MPM 플래그의 제2 값(e.g. 0)은 상기 현재 크로마 블록의 인트라 예측 모드가 MPM 후보들 중에 없음을 나타낼 수 있다.Whether the intra prediction mode currently applied to the chroma block is among MPM candidates (i.e., is included in the chroma MPM list) or in the remaining mode may be indicated based on the MPM flag (eg intra_chroma_mpm_flag) for the current chroma block. have. A first value (eg 1) of the MPM flag may indicate that an intra prediction mode of the current chroma block is among MPM candidates, and a second value (eg 0) of the MPM flag is an intra prediction mode of the current chroma block. May indicate that is not among the MPM candidates.
상기 MPM 인덱스는 현재 루마 블록에 대해서는 mpm_idx 또는 intra_luma_mpm_idx 신택스 요소의 형태로 시그널링될 수 있고, 현재 크로마 블록에 대해서는 mpm_idx 또는 intra_chroma_mpm_idx 신택스 요소의 형태로 시그널링될 수 있다. 또한, 상기 리메이닝 모드 정보는 현재 루마 블록에 대해서는 rem_intra_luma_pred_mode 또는 intra_luma_mpm_remainder 신택스 요소의 형태로 시그널링될 수 있고, 현재 크로마 블록에 대해서는 rem_intra_chroma_pred_mode 또는 intra_chroma_mpm_remainder 신택스 요소의 형태로 시그널링될 수 있다. 예를 들어, 상기 리메이닝 모드 정보는 전체 인트라 예측 모드들 중에서 상기 MPM 후보들(루마 MPM 리스트 또는 크로마 MPM 리스트에 포함된 후보들)에 포함되지 않는 나머지 인트라 예측 모드들을 예측 모드 번호 순으로 인덱싱하여 그 중 하나를 지시할 수 있다.The MPM index may be signaled in the form of an mpm_idx or intra_luma_mpm_idx syntax element for the current luma block, and may be signaled in the form of an mpm_idx or intra_chroma_mpm_idx syntax element for the current chroma block. In addition, the remaining mode information may be signaled in the form of rem_intra_luma_pred_mode or intra_luma_mpm_remainder syntax element for the current luma block, and may be signaled in the form of rem_intra_chroma_pred_mode or intra_chroma_mpm_remainder syntax element for the current chroma block. For example, the remaining mode information includes indexing the remaining intra prediction modes that are not included in the MPM candidates (candidates included in the luma MPM list or chroma MPM list) among all intra prediction modes in order of prediction mode number. You can direct one.
인트라 예측 모드 정보는, 상기 MPM 플래그(e.g. intra_luma_mpm_flag 또는 intra_chroma_mpm_flag), 상기 MPM 인덱스(e.g. mpm_idx, intra_luma_mpm_idx 또는 intra_chroma_mpm_idx), 상기 리메이닝 모드 정보(rem_intra_luma_pred_mode, intra_luma_mpm_remainder, rem_intra_chroma_pred_mode 또는 intra_chroma_mpm_remainder) 중 적어도 하나를 포함할 수 있으며, 비트스트림을 통해 시그널링될 수 있다.The intra prediction mode information may include the MPM flag (eg intra_luma_mpm_flag or intra_chroma_mpm_flag), the MPM index (eg mpm_idx, intra_luma_mpm_idx or intra_chroma_mpm_idx), and the remapping mode information (rem_intra_luma_pred_mode, intra_chroma_pred_mode, intra_chroma_pred_mode, intra_chroma_mainder_, or at least one of). , May be signaled through a bitstream.
본 개시에 따르면, 루마 블록에 대한 인트라 예측 과정이 크로마 블록에 대해 동일 또는 유사하게 적용할 수 있다. 이에 따라, 루마 블록에 대한 인트라 예측 과정과 크로마 블록에 대한 인트라 예측 과정을 단일화할 수 있으므로, 영상 부호화/복호화 과정의 복잡도가 감소할 수 있다.According to the present disclosure, an intra prediction process for a luma block may be applied equally or similarly to a chroma block. Accordingly, since the intra prediction process for the luma block and the intra prediction process for the chroma block can be unified, the complexity of the image encoding/decoding process can be reduced.
또한, 본 개시에 따르면, 크로마 블록에 대해 MPM 리스트를 기반으로 인트라 예측을 수행함으로써, 인트라 예측의 정확도를 향상시킬 수 있다.Further, according to the present disclosure, accuracy of intra prediction may be improved by performing intra prediction on a chroma block based on an MPM list.
이하, 본 개시에 따른 다양한 실시예들을 구체적으로 설명한다.Hereinafter, various embodiments according to the present disclosure will be described in detail.
실시예 #1 Example #1
본 개시의 실시예 #1은, 현재 크로마 블록에 대한 인트라 예측 과정에서 상기 현재 크로마 블록에 대한 크로마 MPM 리스트를 구성할 수 있다. Embodiment #1 of the present disclosure may configure a chroma MPM list for the current chroma block in an intra prediction process for the current chroma block.
도 13은 본 개시의 일 실시예에 따른 영상 부호화 장치에서 인트라 예측 모드 시그널링 절차를 나타낸 흐름도이다.13 is a flowchart illustrating an intra prediction mode signaling procedure in an image encoding apparatus according to an embodiment of the present disclosure.
도 13을 참조하면, 영상 부호화 장치는 현재 크로마 블록에 대한 크로마 MPM 리스트(후보 리스트)를 구성할 수 있다(S1310).Referring to FIG. 13, the apparatus for encoding an image may configure a chroma MPM list (candidate list) for a current chroma block (S1310).
상기 크로마 MPM 리스트는 상기 현재 크로마 블록에 적용될 가능성이 높은 하나 이상의 인트라 예측 모드 후보들(MPM 후보들)을 포함할 수 있다.The chroma MPM list may include one or more intra prediction mode candidates (MPM candidates) that are highly likely to be applied to the current chroma block.
상기 MPM 후보들의 개수를 N(N은 1 이상의 정수), 상기 현재 크로마 블록에 대응하는 루마 블록에 대한 MPM 후보들의 개수를 M(M은 1 이상의 정수)이라 할 때, N≤M 일 수 있다. 상기 MPM 후보들의 개수 N은 상기 현재 크로마 블록의 크로마 포맷(컬러 포맷)에 따라 가변될 수 있다. 예를 들어, 상기 크로마 포맷이 4:2:0인 경우의 상기 MPM 후보들의 개수를 N1(N1은 1 이상의 정수), 상기 크로마 포맷이 4:2:2인 경우의 상기 MPM 후보들의 개수를 N2(N2는 1 이상의 정수), 상기 크로마 포맷이 4:4:4인 경우의 상기 MPM 후보들의 개수를 N3(N3은 1 이상의 정수)라 할 때, N1≤N2≤N3 일 수 있다. 즉, 크로마 성분의 정보량이 증가함에 따라(상기 크로마 포맷이 4:2:0에서 4:2:2 또는 4:4:4로 변경됨에 따라) 상기 MPM 후보들의 개수를 증가시킴으로써, 상기 현재 크로마 블록에 대한 인트라 예측 모드의 시그널링 효율과 인트라 예측 정확도를 향상시킬 수 있다. 상기 MPM 후보들의 개수(N, N1, N2 또는 N3)는 기정의되거나 적응적으로 결정될 수 있다. 예를 들어, 현재 루마 블록에 대한 MPM 후보들의 개수가 6일 때, 현재 크로마 블록에 대한 MPM 후보들의 개수(N, N1, N2 또는 N3)는 3 내지 6 중 하나로 결정될 수 있다.When the number of MPM candidates is N (N is an integer greater than or equal to 1), and the number of MPM candidates for the luma block corresponding to the current chroma block is M (M is an integer greater than or equal to 1), N≤M. The number N of the MPM candidates may vary according to the chroma format (color format) of the current chroma block. For example, when the chroma format is 4:2:0, the number of MPM candidates is N1 (N1 is an integer greater than or equal to 1), and when the chroma format is 4:2:2, the number of MPM candidates is N2. (N2 is an integer greater than or equal to 1), and when the number of MPM candidates in the case where the chroma format is 4:4:4 is N3 (N3 is an integer greater than or equal to 1), N1≤N2≤N3. That is, as the information amount of the chroma component increases (as the chroma format is changed from 4:2:0 to 4:2:2 or 4:4:4), the number of MPM candidates is increased, so that the current chroma block It is possible to improve signaling efficiency and intra prediction accuracy of the intra prediction mode for. The number of MPM candidates (N, N1, N2 or N3) may be predefined or adaptively determined. For example, when the number of MPM candidates for the current luma block is 6, the number of MPM candidates for the current chroma block (N, N1, N2, or N3) may be determined as one of 3 to 6.
또한, 현재 루마 블록에 적용 가능한 인트라 예측 모드의 개수를 L(L은 1 이상의 정수), 현재 크로마 블록에 적용 가능한 인트라 예측 모드의 개수를 K(K는 1 이상의 정수)라 할 때, K≤L 일 수 있다. 예를 들어, L이 67(2개의 비방향성 모드와 65개의 방향성 모드)일 때, K는 35(2개의 비방향성 모드와 33개의 방향성 모드)일 수 있다. 여기서, 상기 현재 크로마 블록에 대한 33개의 방향성 모드는 상기 현재 루마 블록에 대한 65개의 방향성 모드들 중 짝수 번호(또는, 홀수 번호)를 갖는 모드들일 수 있다. 상기 현재 크로마 블록에 적용 가능한 인트라 예측 모드의 개수 K는 크로마 포맷에 기반하여 적응적으로 결정될 수 있다. 일 예로, 상기 현재 크로마 블록의 크로마 포맷이 4:2:0에서 4:2:2 또는 4:4:4로 변경됨에 따라, 상기 현재 크로마 블록에 적용 가능한 인트라 예측 모드의 개수 K는 증가할 수 있다. 예를 들어, 상기 현재 크로마 블록의 크로마 포맷이 4:2:0인 경우의 K는 35이고, 상기 현재 크로마 블록의 크로마 포맷이 4:2:2 또는 4:4:4인 경우의 K는 67일 수 있다. 즉, 크로마 포맷이 변경되어 크로마 성분의 정보량이 증가함에 따라, 크로마 블록에 적용 가능한 인트라 예측 모드의 수도 증가할 수 있다. 이에 따라, 정보량이 증가한 현재 크로마 블록에 대한 인트라 예측 정확도는 보다 향상될 수 있다.In addition, when the number of intra prediction modes applicable to the current luma block is L (L is an integer greater than or equal to 1), and the number of intra prediction modes applicable to the current chroma block is K (K is an integer greater than or equal to 1), K ≤ L Can be For example, when L is 67 (two non-directional modes and 65 directional modes), K may be 35 (two non-directional modes and 33 directional modes). Here, the 33 directional modes for the current chroma block may be modes having an even number (or odd number) among 65 directional modes for the current luma block. The number K of intra prediction modes applicable to the current chroma block may be adaptively determined based on a chroma format. For example, as the chroma format of the current chroma block is changed from 4:2:0 to 4:2:2 or 4:4:4, the number K of intra prediction modes applicable to the current chroma block may increase. have. For example, when the chroma format of the current chroma block is 4:2:0, K is 35, and when the chroma format of the current chroma block is 4:2:2 or 4:4:4, K is 67. Can be That is, as the chroma format is changed and the information amount of the chroma component increases, the number of intra prediction modes applicable to the chroma block may increase. Accordingly, the intra prediction accuracy for the current chroma block having an increased amount of information may be further improved.
크로마 MPM 리스트는 현재 크로마 블록에 인접한 적어도 하나의 주변 크로마 블록(e.g. 좌측 주변 블록 및/또는 상측 주변 블록)을 이용하여 구성될 수 있다. 일 예에서, 상기 주변 크로마 블록은 상기 현재 크로마 블록에 대응하는 루마 블록(대응 루마 블록)의 인트라 예측 모드를 유도하는 데 이용된 주변 루마 블록들과 동일한 위치(또는, 대응하는 위치)에 존재할 수 있다. 또는, 상기 주변 크로마 블록 중 적어도 일부는 상기 주변 루마 블록들과 상이한 위치에 존재할 수도 있다.The chroma MPM list may be constructed using at least one neighboring chroma block (e.g. a left neighboring block and/or an upper neighboring block) adjacent to the current chroma block. In one example, the neighboring chroma block may exist at the same position (or corresponding position) as the neighboring luma blocks used to induce the intra prediction mode of the luma block (corresponding luma block) corresponding to the current chroma block. have. Alternatively, at least some of the surrounding chroma blocks may exist in different positions from the surrounding luma blocks.
한편, 상기 주변 크로마 블록들의 인트라 예측 모드들을 이용하여 상기 크로마 MPM 리스트가 전부 채워지지 않는 경우, 영상 부호화 장치는 상기 크로마 MPM 리스트에 포함되지 않는 나머지 인트라 예측 모드들 중 적어도 하나를 이용하여 상기 크로마 MPM 리스트를 더 채울 수 있다. 예를 들어, 영상 부호화 장치는 상기 MPM 리스트에 포함되지 않는 복수의 비방향성 모드들 및 복수의 방향성 모드들 중 적어도 하나를 이용하여 상기 크로마 MPM 리스트를 더 채울 수 있다. 또한, 영상 부호화 장치는 상기 크로마 MPM 리스트에 포함된 방향성 모드의 +1 모드, +2 모드, -1 모드 및 -2 모드 중 적어도 하나를 이용하여 상기 크로마 MPM 리스트를 더 채울 수도 있다.Meanwhile, when the chroma MPM list is not completely filled using intra prediction modes of the neighboring chroma blocks, the image encoding apparatus uses at least one of the remaining intra prediction modes not included in the chroma MPM list to determine the chroma MPM. You can fill the list further. For example, the image encoding apparatus may further fill the chroma MPM list by using at least one of a plurality of non-directional modes and a plurality of directional modes that are not included in the MPM list. In addition, the image encoding apparatus may further fill the chroma MPM list by using at least one of a +1 mode, a +2 mode, a -1 mode, and a -2 mode of a directional mode included in the chroma MPM list.
하나 이상의 MPM 후보들은 소정의 우선순위를 갖고 현재 크로마 블록에 대한 크로마 MPM 리스트에 포함될 수 있다. 예를 들어, N개의 MPM 후보들을 갖는 크로마 MPM 리스트에 있어서, 발생 빈도가 가장 큰 MPM 후보는 가장 높은 우선순위를 갖고 상기 크로마 MPM 리스트에 첫번째 후보로 포함될 수 있다. 이와 달리, 발생 빈도가 가장 작은 MPM 후보는 가장 낮은 우선순위를 갖고 상기 크로마 MPM 리스트에 N번째 후보로 포함될 수 있다. 상기 MPM 후보들은 상기 크로마 MPM 리스트 내에서 상기 우선순위가 높은 순서에 따라 인덱싱될 수 있다. 예를 들어, 상술한 예에서, 상기 첫번째 후보의 MPM 인덱스는 제1 값(e.g. 0)을 갖고, 상기 N번째 후보의 MPM 인덱스는 제N 값(e.g. N-1)을 가질 수 있다.One or more MPM candidates may have a predetermined priority and be included in the chroma MPM list for the current chroma block. For example, in a chroma MPM list having N MPM candidates, the MPM candidate having the highest occurrence frequency may have the highest priority and may be included as a first candidate in the chroma MPM list. In contrast, the MPM candidate with the least occurrence frequency has the lowest priority and may be included as an Nth candidate in the chroma MPM list. The MPM candidates may be indexed in the order of the highest priority in the chroma MPM list. For example, in the above-described example, the MPM index of the first candidate may have a first value (e.g. 0), and the MPM index of the N-th candidate may have an Nth value (e.g. N-1).
상기 크로마 MPM 리스트는 미리 정해진 방법에 따라 특정 인트라 예측 모드들을 더 포함할 수도 있다. 예를 들어, 상기 크로마 MPM 리스트는, 상기 현재 크로마 블록의 인트라 예측 모드가 대응 루마 블록의 인트라 예측 모드로 유도되는 것을 나타내는 크로마 DM을 더 포함할 수 있다.The chroma MPM list may further include specific intra prediction modes according to a predetermined method. For example, the chroma MPM list may further include a chroma DM indicating that an intra prediction mode of the current chroma block is derived to an intra prediction mode of a corresponding luma block.
일 예로, 상기 크로마 DM은 상기 크로마 MPM 리스트에 첫번째 후보로 포함될 수 있다. 이 경우, 영상 부호화 장치는 상기 크로마 MPM 리스트에 중복된 MPM 후보들이 포함되지 않도록 상기 크로마 MPM 리스트에 대한 중복성 체크를 수행할 수 있다. 상기 중복성 체크를 수행한 결과, 상기 크로마 MPM 리스트에 중복된 MPM 후보들이 포함되는 경우, 영상 부호화 장치는 상기 중복된 MPM 후보들 중 하나를 제외한 나머지를 상기 크로마 MPM 리스트에서 제거할 수 있다.For example, the chroma DM may be included as a first candidate in the chroma MPM list. In this case, the image encoding apparatus may perform a redundancy check on the chroma MPM list so that duplicate MPM candidates are not included in the chroma MPM list. As a result of performing the redundancy check, when duplicate MPM candidates are included in the chroma MPM list, the video encoding apparatus may remove the remainder except for one of the duplicate MPM candidates from the chroma MPM list.
상기 중복성 체크는 상기 크로마 MPM 리스트에 새로운 MPM 후보를 삽입할 때마다 수행될 수 있다. 즉, 상기 크로마 MPM 리스트에 동일한 MPM 후보가 이미 포함되어 있는 경우, 상기 새로운 MPM 후보는 상기 크로마 MPM 후보 리스트에 포함시키지 않을 수 있다. 이에 따라, 상기 크로마 MPM 리스트가 완전히 채워지지 않게 되는 경우, 영상 부호화 장치는 전술한 바와 같이 복수의 비방향성 모드들 및 복수의 방향성 모드들 중 적어도 하나를 이용하여 상기 크로마 MPM 리스트를 더 채울 수 있다. 한편, 일 예로, 영상 부호화 장치는 연산 복잡도를 감소시키기 위하여 상기 중복성 체크를 스킵할 수도 있다.The redundancy check may be performed whenever a new MPM candidate is inserted into the chroma MPM list. That is, when the same MPM candidate is already included in the chroma MPM list, the new MPM candidate may not be included in the chroma MPM candidate list. Accordingly, when the chroma MPM list is not completely filled, the image encoding apparatus may further fill the chroma MPM list by using at least one of a plurality of non-directional modes and a plurality of directional modes as described above. . Meanwhile, as an example, the image encoding apparatus may skip the redundancy check in order to reduce computational complexity.
상기 크로마 MPM 리스트를 구성하는 방법의 구체적인 일 예는 아래의 Case 1 내지 Case 3에 나타낸 바와 같다. Case 1 내지 Case 3은 총 5개의 MPM 후보들을 포함하는 크로마 MPM 리스트를 구성하는 방법을 나타낸다.A specific example of a method of configuring the chroma MPM list is as shown in Cases 1 to 3 below. Cases 1 to 3 show a method of constructing a chroma MPM list including a total of 5 MPM candidates.
(Case 1) 제1 MPM 후보(candIntraPredModeA)의 모드 번호와 제2 MPM 후보(candIntraPredModeB)의 모드 번호가 같고, 상기 제1 MPM 후보의 모드 번호가 1보다 큰 경우(즉, 상기 제1 MPM 후보 및 상기 제2 MPM 후보가 모두 방향성 모드인 경우), MPM 리스트(candModeList[x])는 아래와 같이 구성됨.(Case 1) When the mode number of the first MPM candidate (candIntraPredModeA) and the mode number of the second MPM candidate (candIntraPredModeB) are the same, and the mode number of the first MPM candidate is greater than 1 (i.e., the first MPM candidate and When all the second MPM candidates are in a directional mode), an MPM list (candModeList[x]) is configured as follows.
candModeList[ 0 ] = candIntraPredModeAcandModeList[ 0] = candIntraPredModeA
candModeList[ 1 ] = 2 + ( ( candIntraPredModeA + 61 ) % 64 )candModeList[ 1] = 2 + ((candIntraPredModeA + 61)% 64)
candModeList[ 2 ] = 2 + ( ( candIntraPredModeA - 1 ) % 64 )candModeList[ 2] = 2 + ((candIntraPredModeA-1)% 64)
candModeList[ 3 ] = 2 + ( ( candIntraPredModeA + 60 ) % 64 )candModeList[ 3] = 2 + ((candIntraPredModeA + 60)% 64)
candModeList[ 4 ] = 2 + ( candIntraPredModeA % 64 )candModeList[ 4] = 2 + (candIntraPredModeA% 64)
(Case 2) 상기 Case 1의 조건이 충족되지 않는 경우로서, 상기 제1 MPM 후보의 모드 번호와 상기 제2 MPM 후보의 모드 번호가 같지 않고, 상기 제1 MPM 후보의 모드 번호 또는 상기 제2 MPM 후보의 모드 번호가 1보다 큰 경우(즉, 상기 제1 MPM 후보 또는 상기 제2 MPM 후보가 방향성 모드인 경우), MPM 리스트(candModeList[x])는 아래와 같이 구성됨.(Case 2) When the condition of Case 1 is not satisfied, the mode number of the first MPM candidate and the mode number of the second MPM candidate are not the same, and the mode number of the first MPM candidate or the second MPM When the mode number of the candidate is greater than 1 (that is, when the first MPM candidate or the second MPM candidate is a directional mode), an MPM list (candModeList[x]) is configured as follows.
(1) minAB, maxAB 도출(1) Derivation of minAB and maxAB
minAB = Min( candIntraPredModeA, candIntraPredModeB )minAB = Min( candIntraPredModeA, candIntraPredModeB)
maxAB = Max( candIntraPredModeA, candIntraPredModeB )maxAB = Max( candIntraPredModeA, candIntraPredModeB)
(2) 상기 제1 MPM 후보의 모드 번호와 상기 제2 MPM 후보의 모드 번호가 모두 1보다 큰 경우(즉, 상기 제1 MPM 후보와 상기 제2 MPM 후보가 모두 방향성 모드인 경우)(2) When the mode number of the first MPM candidate and the mode number of the second MPM candidate are both greater than 1 (that is, when both the first MPM candidate and the second MPM candidate are in a directional mode)
1) 상기 MPM 리스트의 첫번째 후보(candModeList[0]) 및 두번째 후보(candModeList[1])은 아래와 같이 구성됨.1) The first candidate (candModeList[0]) and the second candidate (candModeList[1]) of the MPM list are configured as follows.
candModeList[ 0 ] = candIntraPredModeAcandModeList[ 0] = candIntraPredModeA
candModeList[ 1 ] = candIntraPredModeBcandModeList[ 1] = candIntraPredModeB
2) 상기 MPM 리스트의 세번째 후보 내지 다섯번째 후보(candModeList[2] 내지 candModeList[4])는 아래와 같이 구성됨.2) The third to fifth candidates (candModeList[2] to candModeList[4]) of the MPM list are configured as follows.
2-1) maxAB - minAB의 값이 1인 경우2-1) maxAB-when minAB value is 1
candModeList[ 2 ] = 2 + ( ( minAB + 61 ) % 64 )candModeList[ 2] = 2 + ((minAB + 61)% 64)
candModeList[ 3 ] = 2 + ( ( maxAB - 1 ) % 64 )candModeList[ 3] = 2 + ((maxAB-1)% 64)
candModeList[ 4 ] = 2 + ( ( minAB + 60 ) % 64 )candModeList[ 4] = 2 + ((minAB + 60)% 64)
2-2) maxAB - minAB의 값이 62 이상인 경우2-2) maxAB-When the value of minAB is more than 62
candModeList[ 2 ] = 2 + ( ( minAB - 1 ) % 64 )candModeList[ 2] = 2 + ((minAB-1)% 64)
candModeList[ 3 ] = 2 + ( ( maxAB + 61 ) % 64 )candModeList[ 3] = 2 + ((maxAB + 61)% 64)
candModeList[ 4 ] = 2 + ( minAB % 64 )candModeList[ 4] = 2 + (minAB% 64)
2-3) maxAB - minAB의 값이 2인 경우2-3) maxAB-when minAB value is 2
candModeList[ 2 ] = 2 + ( ( minAB - 1 ) % 64 )candModeList[ 2] = 2 + ((minAB-1)% 64)
candModeList[ 3 ] = 2 + ( ( minAB + 61 ) % 64 )candModeList[ 3] = 2 + ((minAB + 61)% 64)
candModeList[ 4 ] = 2 + ( ( maxAB - 1 ) % 64 )candModeList[ 4] = 2 + ((maxAB-1)% 64)
2-4) 상기 2-1) 내지 2-3)의 조건들이 충족되지 않는 경우2-4) When the conditions of 2-1) to 2-3) are not satisfied
candModeList[ 2 ] = 2 + ( ( minAB + 61 ) % 64 )candModeList[ 2] = 2 + ((minAB + 61)% 64)
candModeList[ 3 ] = 2 + ( ( minAB - 1 ) % 64 )candModeList[ 3] = 2 + ((minAB-1)% 64)
candModeList[ 4 ] = 2 + ( ( maxAB + 61 ) % 64 )candModeList[ 4] = 2 + ((maxAB + 61)% 64)
(3) 상기 제1 MPM 후보의 모드 번호 또는 상기 제2 MPM 후보의 모드 번호가 1보다 큰 경우(즉, 상기 제1 MPM 후보 또는 상기 제2 MPM 후보 중 하나는 방향성 모드이고, 나머지 하나는 비방향성 모드인 경우), 상기 MPM 리스트의 첫번째 후보 내지 다섯번째 후보(candModeList[0] 내지 candModeList[4])는 아래와 같이 구성됨.(3) When the mode number of the first MPM candidate or the mode number of the second MPM candidate is greater than 1 (i.e., one of the first MPM candidate or the second MPM candidate is a directional mode, and the other In the case of a directional mode), the first to fifth candidates (candModeList[0] to candModeList[4]) of the MPM list are configured as follows.
candModeList[ 0 ] = maxABcandModeList[ 0] = maxAB
candModeList[ 1 ] = 2 + ( ( maxAB + 61 ) % 64 )candModeList[ 1] = 2 + ((maxAB + 61)% 64)
candModeList[ 2 ] = 2 + ( ( maxAB - 1 ) % 64 )candModeList[ 2] = 2 + ((maxAB-1)% 64)
candModeList[ 3 ] = 2 + ( ( maxAB + 60 ) % 64 )candModeList[ 3] = 2 + ((maxAB + 60)% 64)
candModeList[ 4 ] = 2 + ( maxAB % 64 )candModeList[ 4] = 2 + (maxAB% 64)
(Case 3) 상기 Case 1 및 상기 Case 2의 조건들이 모두 충족되지 않는 경우, 상기 MPM 리스트의 첫번째 후보 내지 다섯번째 후보(candModeList[0] 내지 candModeList[4])는 아래와 같이 구성됨.(Case 3) When the conditions of Case 1 and Case 2 are not satisfied, the first to fifth candidates (candModeList[0] to candModeList[4]) of the MPM list are configured as follows.
candModeList[ 0 ] = INTRA_DCcandModeList[ 0] = INTRA_DC
candModeList[ 1 ] = INTRA_ANGULAR50candModeList[ 1] = INTRA_ANGULAR50
candModeList[ 2 ] = INTRA_ANGULAR18candModeList[ 2] = INTRA_ANGULAR18
candModeList[ 3 ] = INTRA_ANGULAR46candModeList[ 3] = INTRA_ANGULAR46
candModeList[ 4 ] = INTRA_ANGULAR54candModeList[ 4] = INTRA_ANGULAR54
상기 Case 1 내지 Case 3에서, 상기 제1 MPM 후보(candIntraPredModeA) 및 상기 제2 MPM 후보(candIntraPredModeB)는, 상술한 바와 같이 현재 크로마 블록의 주변에 위치한 블록들(e.g. 좌측 주변 블록 및/또는 상측 주변 블록)의 인트라 예측 모드로 유도될 수 있다.현재 루마 블록에 대한 MPM 리스트(루마 MPM 리스트)와 달리, 현재 크로마 블록에 대한 MPM 리스트(크로마 MPM 리스트)는, MPM 후보로서 상기 현재 크로마 블록의 인트라 예측 모드가 대응 루마 블록의 인트라 예측 모드로 유도되는 것을 나타내는 크로마 DM을 더 포함할 수 있다. 이 경우, 상기 크로마 DM은 Case 1 내지 Case 3에 따라 생성된 크로마 MPM 리스트의 소정 위치에 삽입될 수 있다. 예를 들어, 현재 크로마 블록에 대한 인트라 예측 모드로서 상기 크로마 DM이 선택될 확률이 가장 높은 점을 고려하여, 상기 크로마 DM은 상기 크로마 MPM 리스트의 첫번째 위치(e.g. MPM 인덱스=0)에 삽입될 수 있다.In Cases 1 to 3, the first MPM candidate (candIntraPredModeA) and the second MPM candidate (candIntraPredModeB) are, as described above, blocks located around the current chroma block (eg, the left neighboring block and/or the upper peripheral Block). Unlike the MPM list (luma MPM list) for the current luma block, the MPM list (chroma MPM list) for the current chroma block is an intra prediction mode of the current chroma block as an MPM candidate. A chroma DM indicating that the prediction mode is derived to the intra prediction mode of the corresponding luma block may be further included. In this case, the chroma DM may be inserted at a predetermined position in the chroma MPM list generated according to Cases 1 to 3. For example, considering that the chroma DM has the highest probability of being selected as an intra prediction mode for the current chroma block, the chroma DM may be inserted at the first position (eg MPM index = 0) of the chroma MPM list. have.
다시 도 13을 참조하면, 영상 부호화 장치는 현재 크로마 블록의 인트라 예측 모드를 결정할 수 있다(S1320). 영상 부호화 장치는 복수의 인트라 예측 모드들에 대해 RDO(rate-distortion optimization)을 수행하여 최적의 인트라 예측 모드를 결정할 수 있다. 상기 복수의 인트라 예측 모드들은 복수의 비방향성 모드들 및 복수의 방향성 모드들 중 적어도 하나를 포함할 수 있다.Referring back to FIG. 13, the apparatus for encoding an image may determine an intra prediction mode of a current chroma block (S1320). The image encoding apparatus may determine an optimal intra prediction mode by performing rate-distortion optimization (RDO) on a plurality of intra prediction modes. The plurality of intra prediction modes may include at least one of a plurality of non-directional modes and a plurality of directional modes.
영상 부호화 장치는 상기 크로마 MPM 리스트에 포함된 MPM 후보들만을 이용하여 상기 최적의 인트라 예측 모드를 결정할 수도 있고, 또는 상기 크로마 MPM 리스트에 포함된 MPM 후보들뿐 아니라 상기 크로마 블록의 인트라 예측에 적용될 수 있는 모든 인트라 예측 모드들을 이용하여 상기 최적의 인트라 예측 모드를 결정할 수도 있다. 예를 들어, 상기 현재 크로마 블록의 인트라 예측 타입이 노멀 인트라 예측 타입이 아닌 특정 타입(e.g. LIP, MRL 또는 ISP)인 경우, 영상 부호화 장치는 상기 MPM 후보들만을 이용하여 상기 최적의 인트라 예측 모드를 결정할 수 있다. 이 경우, 상기 현재 크로마 블록에 대한 인트라 예측 모드는 상기 MPM 후보들 중에서만 결정될 수 있으며, MPM 플래그를 부호화/시그널링하지 않을 수 있다. 영상 복호화 장치는 상기 특정 타입의 경우에는 MPM 플래그를 별도로 시그널링 받지 않고도 MPM 플래그가 제1 값(e.g. 1)을 갖는 것으로 추정할 수 있다.The video encoding apparatus may determine the optimal intra prediction mode using only MPM candidates included in the chroma MPM list, or all MPM candidates included in the chroma MPM list as well as all applicable to intra prediction of the chroma block. The optimal intra prediction mode may be determined using intra prediction modes. For example, when the intra prediction type of the current chroma block is a specific type (eg LIP, MRL, or ISP) other than a normal intra prediction type, the video encoding apparatus determines the optimal intra prediction mode using only the MPM candidates. I can. In this case, the intra prediction mode for the current chroma block may be determined only among the MPM candidates, and the MPM flag may not be encoded/signaled. In the case of the specific type, the video decoding apparatus may estimate that the MPM flag has a first value (e.g. 1) without separately signaling the MPM flag.
한편, 단계 S1320에서 결정된 현재 크로마 블록의 인트라 예측 모드가 크로마 MPM 리스트 내에 포함된 MPM 후보들 중 하나인 경우(MPM 플래그가 제1 값(e.g. 1)을 갖는 경우), 영상 부호화 장치는 상기 MPM 후보들 중 하나를 지시하는 MPM 인덱스(e.g. mpm_idx 또는 intra_chroma_mpm_idx)를 생성할 수 있다. 상기 현재 크로마 블록의 인트라 예측 모드가 상기 크로마 MPM 리스트 내에 없는 경우(MPM 플래그가 제2 값(e.g. 0)을 갖는 경우), 영상 부호화 장치는 상기 크로마 MPM 리스트에 포함되지 않는 나머지 인트라 예측 모드들 중에서 상기 현재 크로마 블록의 인트라 예측 모드와 같은 모드를 지시하는 리메이닝 모드 정보를 생성할 수 있다.On the other hand, when the intra prediction mode of the current chroma block determined in step S1320 is one of the MPM candidates included in the chroma MPM list (when the MPM flag has a first value (eg 1)), the video encoding apparatus is selected from among the MPM candidates. An MPM index indicating one (eg mpm_idx or intra_chroma_mpm_idx) may be generated. When the intra prediction mode of the current chroma block is not in the chroma MPM list (when the MPM flag has a second value (eg 0)), the image encoding apparatus is selected from among the remaining intra prediction modes not included in the chroma MPM list. Remaining mode information indicating the same mode as the intra prediction mode of the current chroma block may be generated.
영상 부호화 장치는 인트라 예측 모드 정보를 인코딩하여 비트스트림 형태로 출력할 수 있다(S1330). 상기 인트라 예측 모드 정보는 전술한 MPM 플래그, MPM 인덱스 및/또는 리메이닝 모드 정보를 포함할 수 있다. 상기 MPM 인덱스와 상기 리메이닝 모드 정보는 대체적인(alternative) 관계로서, 현재 크로마 블록에 대한 인트라 예측 모드를 지시함에 있어서 동시에 시그널링되지 않을 수 있다. 즉, 상기 MPM 플래그가 제1 값을 갖는 경우 상기 MPM 인덱스가 시그널링되고, 상기 MPM 플래그가 제2 값을 갖는 경우 상기 리메이닝 모드 정보가 시그널링될 수 있다. 다만, 전술한 바와 같이 상기 현재 크로마 블록에 특정 인트라 예측 타입이 적용되는 경우에는 상기 MPM 플래그가 시그널링되지 않고 그 값이 1로 추론(infer)되며, 상기 MPM 인덱스만이 시그널링될 수도 있다. 즉, 이 경우, 상기 인트라 예측 모드 정보는 상기 MPM 인덱스만을 포함할 수 있다. 상기 인트라 예측 모드 정보는 본 개시에서 설명한 다양한 코딩 방법을 이용하여 부호화될 수 있다. 예를 들어, 상기 인트라 예측 모드 정보 및/또는 상기 인트라 예측 타입 정보는 truncated (rice) binary code에 기반한 엔트로피 코딩(e.g. CABAC, CAVLC)을 통해 부호화될 수 있다.The image encoding apparatus may encode the intra prediction mode information and output it in the form of a bitstream (S1330). The intra prediction mode information may include the aforementioned MPM flag, MPM index, and/or remaining mode information. The MPM index and the remaining mode information have an alternate relationship, and may not be signaled at the same time when indicating an intra prediction mode for a current chroma block. That is, when the MPM flag has a first value, the MPM index may be signaled, and when the MPM flag has a second value, the remaining mode information may be signaled. However, as described above, when a specific intra prediction type is applied to the current chroma block, the MPM flag is not signaled and its value is inferred as 1, and only the MPM index may be signaled. That is, in this case, the intra prediction mode information may include only the MPM index. The intra prediction mode information may be encoded using various coding methods described in this disclosure. For example, the intra prediction mode information and/or the intra prediction type information may be encoded through entropy coding (e.g. CABAC, CAVLC) based on truncated (rice) binary code.
한편, 도 13에 도시한 바와 달리, 단계 S1320은 단계 S1310보다 먼저 수행될 수도 있고, 또는 단계 S1310과 동시에 수행될 수도 있다. 예를 들어, 영상 부호화 장치가 상기 크로마 MPM 리스트에 포함된 MPM 후보들만을 이용하여 상기 최적의 인트라 예측 모드를 결정하는 경우, 단계 S1310은 단계 S1320에 선행하여 수행될 수 있다. 또한, 예를 들어, 영상 부호화 장치가 상기 현재 크로마 블록의 인트라 예측에 적용될 수 있는 모든 인트라 예측 모드들을 이용하여 상기 최적의 인트라 예측 모드를 결정하는 경우, 단계 S1320은 단계 S1310보다 먼저 수행될 수도 있고, 또는 단계 S1310과 동시에 수행될 수도 있다.Meanwhile, unlike FIG. 13, step S1320 may be performed before step S1310 or may be performed simultaneously with step S1310. For example, when the image encoding apparatus determines the optimal intra prediction mode using only MPM candidates included in the chroma MPM list, step S1310 may be performed prior to step S1320. Also, for example, when the video encoding apparatus determines the optimal intra prediction mode using all intra prediction modes applicable to intra prediction of the current chroma block, step S1320 may be performed before step S1310. Or, it may be performed simultaneously with step S1310.
도 14는 본 개시의 일 실시예에 따른 영상 복호화 장치에서 인트라 예측 모드 결정 절차를 나타낸 흐름도이다.14 is a flowchart illustrating a procedure for determining an intra prediction mode in an image decoding apparatus according to an embodiment of the present disclosure.
영상 복호화 장치는 영상 부호화 장치에서 결정 및 시그널링된 인트라 예측 모드 정보에 기반하여 현재 크로마 블록의 인트라 예측 모드를 결정할 수 있다.The image decoding apparatus may determine an intra prediction mode of the current chroma block based on intra prediction mode information determined and signaled by the image encoding apparatus.
도 14를 참조하면, 영상 복호화 장치는 비트스트림으로부터 현재 크로마 블록에 대한 인트라 예측 모드 정보를 획득할 수 있다(S1410). 상기 인트라 예측 모드 정보는 전술한 바와 같이 MPM 플래그, MPM 인덱스 및/또는 리메이닝 인트라 예측 모드를 포함할 수 있다.Referring to FIG. 14, the apparatus for decoding an image may obtain intra prediction mode information for a current chroma block from a bitstream (S1410). As described above, the intra prediction mode information may include an MPM flag, an MPM index, and/or a remaining intra prediction mode.
영상 복호화 장치는 크로마 MPM 리스트를 구성할 수 있다(S1420). 상기 크로마 MPM 리스트는 영상 부호화 장치에서 구성된 크로마 MPM 리스트와 동일한 구성을 가질 수 있다. 예를 들어, 상기 크로마 MPM 리스트는 상기 현재 크로마 블록에 인접한 주변 크로마 블록(e.g. 좌측 주변 블록 및/또는 상측 주변 블록)의 인트라 예측 모드를 포함할 수 있다. 상기 주변 크로마 블록은 상기 현재 크로마 블록에 대응하는 루마 블록(대응 루마 블록)의 인트라 예측에 이용된 주변 루마 블록과 동일한 위치에 존재할 수도 있고, 또는 상기 주변 루마 블록과 상이한 위치에 존재할 수도 있다. 또한, 상기 크로마 MPM 리스트는 미리 정해진 방법에 따른 소정의 인트라 예측 모드들을 더 포함할 수도 있다. The video decoding apparatus may configure a chroma MPM list (S1420). The chroma MPM list may have the same configuration as the chroma MPM list configured in the video encoding apparatus. For example, the chroma MPM list may include an intra prediction mode of a neighboring chroma block (e.g. a left neighboring block and/or an upper neighboring block) adjacent to the current chroma block. The neighboring chroma block may exist at the same position as the neighboring luma block used for intra prediction of the luma block (corresponding luma block) corresponding to the current chroma block, or may exist at a different position from the neighboring luma block. In addition, the chroma MPM list may further include predetermined intra prediction modes according to a predetermined method.
한편, 도 14에 도시한 바와 달리, 단계 S1420은 단계 S1410보다 먼저 수행될 수도 있고, 또는 단계 S1410과 동시에 수행될 수도 있다.Meanwhile, unlike FIG. 14, step S1420 may be performed prior to step S1410, or may be performed simultaneously with step S1410.
영상 복호화 장치는 상기 인트라 예측 모드 정보 및 상기 크로마 MPM 리스트를 기반으로 상기 현재 크로마 블록의 인트라 예측 모드를 결정할 수 있다(S1430). 단계 S1430은 도 15를 참조하여 보다 구체적으로 설명한다.The video decoding apparatus may determine an intra prediction mode of the current chroma block based on the intra prediction mode information and the chroma MPM list (S1430). Step S1430 will be described in more detail with reference to FIG. 15.
도 15는 인트라 예측 모드 도출 절차를 보다 구체적으로 설명하기 위한 흐름도이다.15 is a flowchart for describing a procedure for deriving an intra prediction mode in more detail.
도 15의 단계 S1510 및 S1520은 각각 도 14의 단계 S1410 및 S1420에 대응될 수 있다. 따라서, 단계 S1510 및 S1520에 대한 구체적인 설명은 생략하기로 한다.Steps S1510 and S1520 of FIG. 15 may correspond to steps S1410 and S1420 of FIG. 14, respectively. Therefore, detailed descriptions of steps S1510 and S1520 will be omitted.
영상 복호화 장치는 비트스트림으로부터 현재 크로마 블록에 대한 인트라 예측 모드 정보를 획득하고, 크로마 MPM 리스트를 구성한 후(S1510, S1520), 소정의 조건을 판단할 수 있다(S1530).The image decoding apparatus may obtain intra prediction mode information for the current chroma block from the bitstream, construct a chroma MPM list (S1510 and S1520), and then determine a predetermined condition (S1530).
구체적으로, 도 15에 도시된 바와 같이, MPM 플래그가 제1 값(e.g. 1)을 갖는 경우(S1530에서 Yes), 영상 복호화 장치는 상기 크로마 MPM 리스트 내의 MPM 후보들 중에서 MPM 인덱스가 지시하는 후보를 상기 현재 크로마 블록의 인트라 예측 모드로 결정할 수 있다(S1540). 이와 달리, 상기 MPM 플래그가 제2 값(e.g. 0)을 갖는 경우(S1530에서 No), 영상 복호화 장치는 상기 크로마 MPM 리스트에 포함되지 않는 나머지 인트라 예측 모드들 중에서 리메이닝 모드 정보가 지시하는 인트라 예측 모드를 상기 현재 크로마 블록의 인트라 예측 모드로 결정할 수 있다(S1550).Specifically, as shown in FIG. 15, when the MPM flag has a first value (eg 1) (Yes in S1530), the video decoding apparatus selects a candidate indicated by an MPM index among MPM candidates in the chroma MPM list. The intra prediction mode of the current chroma block may be determined (S1540). On the contrary, when the MPM flag has a second value (eg 0) (No in S1530), the video decoding apparatus performs intra prediction indicated by remaining mode information among the remaining intra prediction modes not included in the chroma MPM list. A mode may be determined as an intra prediction mode of the current chroma block (S1550).
또 다른 예로서, 상기 현재 크로마 블록의 인트라 예측 타입이 특정 타입(e.g. LIP, MRL 또는 ISP 등)인 경우(S1530에서 Yes), 영상 복호화 장치는 상기 MPM 플래그의 값을 확인하지 않고, 상기 크로마 MPM 리스트 내의 MPM 후보들 중에서 상기 MPM 인덱스가 지시하는 후보를 상기 현재 크로마 블록의 인트라 예측 모드로 결정할 수도 있다(S1540). 이 때, 상술한 바와 같이, 상기 MPM 플래그는 시그널링되지 않고, 제1 값으로 추론될 수 있다. 이와 달리, 상기 현재 크로마 블록의 인트라 예측 타입이 상기 특정 타입이 아닌 경우(S1530에서 No), 상술한 바와 같이, 영상 복호화 장치는 상기 MPM 리스트에 포함되지 않는 나머지 인트라 예측 모드들 중에서 상기 리메이닝 모드 정보가 지시하는 인트라 예측 모드를 상기 현재 크로마 블록의 인트라 예측 모드로 결정할 수 있다(S1550).As another example, when the intra prediction type of the current chroma block is a specific type (eg LIP, MRL, ISP, etc.) (Yes in S1530), the video decoding apparatus does not check the value of the MPM flag, and the chroma MPM A candidate indicated by the MPM index among MPM candidates in the list may be determined as an intra prediction mode of the current chroma block (S1540). In this case, as described above, the MPM flag is not signaled and may be inferred as a first value. On the contrary, when the intra prediction type of the current chroma block is not the specific type (No in S1530), as described above, the video decoding apparatus is the remaining mode among the remaining intra prediction modes not included in the MPM list. An intra prediction mode indicated by information may be determined as an intra prediction mode of the current chroma block (S1550).
이상, 도 13 내지 도 15를 참조하여 설명한 본 개시의 실시예 #1에 따르면, 영상 부호화/복호화 장치는 현재 크로마 블록에 대한 크로마 MPM 리스트를 구성함으로써, 루마 블록에 대한 인트라 예측 과정과 크로마 블록에 대한 인트라 예측 과정을 단일화할 수 있다. 또한, 크로마 블록에 대한 인트라 예측 정확도를 향상시킬 수 있다.As described above, according to Embodiment #1 of the present disclosure described with reference to FIGS. 13 to 15, the apparatus for encoding/decoding an image configures a chroma MPM list for a current chroma block. The intra prediction process for intra prediction can be unified. In addition, intra prediction accuracy for a chroma block may be improved.
실시예 #2 Example #2
본 개시의 실시예 #2는, 현재 크로마 블록이 포함된 현재 슬라이스의 슬라이스 타입에 기반하여 상기 현재 크로마 블록에 대한 크로마 MPM 리스트를 구성할 수 있다. Embodiment #2 of the present disclosure may configure a chroma MPM list for the current chroma block based on a slice type of a current slice including the current chroma block.
도 16은 본 개시의 다른 실시예에 따른 영상 부호화 장치에서 인트라 예측 모드 시그널링 절차를 나타낸 흐름도이다.16 is a flowchart illustrating an intra prediction mode signaling procedure in an image encoding apparatus according to another embodiment of the present disclosure.
도 16의 단계 S1620, S1630 및 S1650은 각각 도 13의 단계 S1310 내지 S1330에 대응될 수 있다. 따라서, 단계 S1620, S1630 및 S1650에 대한 설명은 간략히 하기로 한다.Steps S1620, S1630, and S1650 of FIG. 16 may correspond to steps S1310 to S1330 of FIG. 13, respectively. Therefore, descriptions of steps S1620, S1630, and S1650 will be briefly described.
도 16을 참조하면, 영상 부호화 장치는 현재 크로마 블록이 포함된 현재 슬라이스가 소정의 슬라이스 타입 조건을 충족하는지 여부를 판단할 수 있다(S1610).Referring to FIG. 16, the apparatus for encoding an image may determine whether a current slice including a current chroma block satisfies a predetermined slice type condition (S1610).
일 예로, 상기 슬라이스 타입 조건은 상기 현재 슬라이스가 인트라 슬라이스인 경우일 수 있다. 상기 인트라 슬라이스는 I 슬라이스를 의미할 수 있다. 상기 인트라 슬라이스에 포함되는 블록들에 대해서는, 인터 예측은 수행되지 않고, 인트라 예측만이 수행될 수 있다. 또한, 상기 인트라 슬라이스는 싱글 트리 구조 또는 듀얼 트리 구조를 가질 수 있다. 상기 싱글 트리 구조에서 루마 블록 및 크로마 블록은 동일한 블록 트리 구조로 분할될 수 있다. 이와 달리, 상기 듀얼 트리 구조에서 루마 블록 및 크로마 블록은 서로 다른 블록 트리 구조로 분할될 수 있다. 이 경우, 상기 루마 블록에 대한 블록 트리 구조는 듀얼 트리 루마(DUAL_TREE_LUMA)라고 불릴 수 있고, 상기 크로마 블록에 대한 블록 트리 구조는 듀얼 트리 크로마(DUAL_TREE_CHROMA)라고 불릴 수 있다.As an example, the slice type condition may be when the current slice is an intra slice. The intra slice may mean an I slice. For blocks included in the intra slice, inter prediction may not be performed, but only intra prediction may be performed. In addition, the intra slice may have a single tree structure or a dual tree structure. In the single tree structure, a luma block and a chroma block may be divided into the same block tree structure. In contrast, in the dual tree structure, a luma block and a chroma block may be divided into different block tree structures. In this case, the block tree structure for the luma block may be referred to as a dual tree luma (DUAL_TREE_LUMA), and the block tree structure for the chroma block may be referred to as a dual tree chroma (DUAL_TREE_CHROMA).
또 다른 예로, 상기 슬라이스 타입 조건은 상기 현재 슬라이스가 인터 슬라이스인 경우일 수도 있다. 상기 인터 슬라이스는 P 슬라이스 및/또는 B 슬라이스를 의미할 수 있다. 상기 인터 슬라이스에 포함되는 블록들에 대해서는, 인트라 예측 또는 인터 예측이 수행될 수 있다. 또한, 상기 인터 슬라이스는 상술한 싱글 트리 구조만을 가질 수 있다.As another example, the slice type condition may be a case in which the current slice is an inter slice. The inter slice may mean a P slice and/or a B slice. For blocks included in the inter slice, intra prediction or inter prediction may be performed. In addition, the inter-slice may have only the single tree structure described above.
상기 현재 슬라이스의 슬라이스 타입 정보(e.g. slice_type)는 슬라이스 헤더의 신택스 요소의 형태로 시그널링될 수 있다. 상기 슬라이스 헤더의 구체적인 일 예는 도 17에 도시된 바와 같다.The slice type information (e.g. slice_type) of the current slice may be signaled in the form of a syntax element of a slice header. A specific example of the slice header is as shown in FIG. 17.
도 17은 슬라이스 타입 정보를 포함하는 슬라이스 헤더의 신택스를 나타낸 도면이다.17 is a diagram showing syntax of a slice header including slice type information.
도 17을 참조하면, 슬라이스 헤더(slice_header)는 현재 크로마 블록을 포함하는 현재 슬라이스 내의 모든 블록들에 공통적으로 적용할 수 있는 정보 및 파라미터들(e.g. sh_picture_header_in_slice_header_flag, sh_subpic_id 등)을 포함할 수 있다. 예를 들어, 상기 슬라이스 헤더(slice_header)는 상기 현재 슬라이스의 타입 정보를 나타내는 신택스 요소(sh_slice_type)를 포함할 수 있다.Referring to FIG. 17, a slice header (slice_header) may include information and parameters commonly applicable to all blocks in a current slice including a current chroma block (e.g. sh_picture_header_in_slice_header_flag, sh_subpic_id, etc.). For example, the slice header (slice_header) may include a syntax element (sh_slice_type) indicating type information of the current slice.
한편, 상기 현재 슬라이스의 슬라이스 타입과 관계없이 상기 현재 크로마 블록에 대한 크로마 MPM 리스트가 구성될 수도 있다. 즉, 상기 현재 슬라이스가 인트라 슬라이스인 경우는 물론이고 상기 현재 슬라이스가 인터 슬라이스인 경우에도, 상기 크로마 MPM 리스트가 구성될 수도 있다. 이 경우, 도 13 내지 도 15를 참조하여 전술한 본 개시의 실시예 #1이 적용될 수 있다.Meanwhile, a chroma MPM list for the current chroma block may be configured regardless of the slice type of the current slice. That is, when the current slice is an intra slice as well as when the current slice is an inter slice, the chroma MPM list may be configured. In this case, Embodiment #1 of the present disclosure described above with reference to FIGS. 13 to 15 may be applied.
다시 도 16을 참조하면, 상기 슬라이스 타입 조건이 충족되는 경우(S1610의 Yes), 영상 부호화 장치는 상기 현재 크로마 블록에 대한 크로마 MPM 리스트를 구성할 수 있다(S1620). 일 예로, 상기 크로마 MPM 리스트는 상기 현재 크로마 블록의 인트라 예측 모드가 대응 루마 블록의 인트라 예측 모드로 유도되는 것을 나타내는 크로마 DM를 포함할 수 있다. 상기 크로마 DM은 상기 크로마 MPM 리스트에 첫번째 후보(e.g. MPM 인덱스=0)로 포함될 수도 있고, 또는 상기 크로마 MPM 리스트에 K번째 후보(e.g. MPM 인덱스=K-1, K는 1보다 큰 정수)로 포함될 수도 있다. 이 경우, 영상 부호화 장치는 상기 크로마 MPM 리스트에 대해 중복성 체크를 수행하여, 상기 크로마 MPM 리스트 내에서 상기 크로마 DM이 지시하는 인트라 예측 모드의 중복성을 제거할 수 있다.Referring back to FIG. 16, when the slice type condition is satisfied (Yes in S1610), the image encoding apparatus may configure a chroma MPM list for the current chroma block (S1620). For example, the chroma MPM list may include a chroma DM indicating that an intra prediction mode of the current chroma block is derived to an intra prediction mode of a corresponding luma block. The chroma DM may be included as a first candidate (eg MPM index = 0) in the chroma MPM list, or included as a K-th candidate (eg MPM index = K-1, K is an integer greater than 1) in the chroma MPM list. May be. In this case, the video encoding apparatus may perform a redundancy check on the chroma MPM list to remove the redundancy of the intra prediction mode indicated by the chroma DM in the chroma MPM list.
영상 부호화 장치는 상기 현재 크로마 블록의 인트라 예측 모드를 결정할 수 있다(S1630). 예를 들어, 영상 부호화 장치는 상기 크로마 MPM 리스트에 포함되는 MPM 후보들에 대해서만 RDO(rate-distortion optimization)을 수행하여 최적의 인트라 예측 모드를 결정할 수 있다. 이 경우, 도 16에 도시된 바와 같이, 단계 S1620은 단계 S1630에 선행할 수 있다. 또는, 영상 부호화 장치는 상기 현재 크로마 블록에 적용 가능한 모든 인트라 예측 모드들에 대해 RDO을 수행하여 최적의 인트라 예측 모드를 결정할 수도 있다. 이 경우, 도 16에 도시된 바와는 달리, 단계 S1630은 단계 S1620에 선행하거나 동시에 수행될 수도 있다.The image encoding apparatus may determine an intra prediction mode of the current chroma block (S1630). For example, the image encoding apparatus may determine an optimal intra prediction mode by performing rate-distortion optimization (RDO) only on MPM candidates included in the chroma MPM list. In this case, as shown in FIG. 16, step S1620 may precede step S1630. Alternatively, the apparatus for encoding an image may determine an optimal intra prediction mode by performing RDO on all intra prediction modes applicable to the current chroma block. In this case, unlike shown in FIG. 16, step S1630 may precede step S1620 or may be performed simultaneously.
상기 현재 크로마 블록의 인트라 예측 모드가 상기 크로마 MPM 리스트 내의 MPM 후보들 중 하나인 경우(MPM 플래그가 제1 값(e.g. 1)을 갖는 경우), 영상 부호화 장치는 상기 MPM 후보들 중 하나를 지시하는 MPM 인덱스(e.g. mpm_idx 또는 intra_chroma_mpm_idx)를 생성할 수 있다. 상기 현재 크로마 블록의 인트라 예측 모드가 상기 크로마 MPM 리스트 내에 존재하지 않는 경우(MPM 플래그가 제2 값(e.g. 0)을 갖는 경우), 영상 부호화 장치는 상기 크로마 MPM 리스트에 포함되지 않은 나머지 인트라 예측 모드들 중에서 상기 현재 크로마 블록의 인트라 예측 모드와 같은 모드를 지시하는 리메이닝 모드 정보를 생성할 수 있다.When the intra prediction mode of the current chroma block is one of the MPM candidates in the chroma MPM list (when the MPM flag has a first value (eg 1)), an MPM index indicating one of the MPM candidates (eg mpm_idx or intra_chroma_mpm_idx) can be created. When the intra prediction mode of the current chroma block does not exist in the chroma MPM list (when the MPM flag has a second value (eg 0)), the video encoding apparatus includes the remaining intra prediction modes not included in the chroma MPM list. Among them, remaining mode information indicating the same mode as the intra prediction mode of the current chroma block may be generated.
상기 슬라이스 타입 조건이 충족되지 않는 경우(S1610의 No), 영상 부호화 장치는, 현재 크로마 블록에 대한 크로마 MPM 리스트를 구성하지 않고 현재 크로마 블록의 인트라 예측 모드를 결정 및/또는 부호화할 수 있다. 예컨대, 영상 부호화 장치는 소정의 디폴트 모드 및 크로마 DM을 기반으로 상기 현재 크로마 블록의 인트라 예측 모드를 결정할 수 있다(S1640). 예를 들어, 영상 부호화 장치는 상기 디폴트 모드 및 상기 크로마 DM에 대해 RDO(rate-distortion optimization)을 수행하여 최적의 인트라 예측 모드를 결정할 수 있다. 일 예로, 상기 디폴트 모드는 플래너(Planar) 모드, DM 모드, 수직 모드 및 수평 모드를 포함할 수 있다. 그러나, 이에 한정되지 않으며, 상기 디폴트 모드는 발생 빈도를 기반으로 미리 설정되는 소정의 인트라 예측 모드를 포함할 수 있다. 또 다른 예로, 영상 부호화 장치는 CCLM(cross-component linear model) 모드에 대해 추가적인 RDO을 수행하여 최적의 인트라 예측 모드를 결정할 수도 있다. 상기 CCLM 모드는 CCLM 파라미터를 도출하기 위하여, 상기 현재 크로마 블록의 좌측 샘플들을 고려하는지, 상측 샘플들을 고려하는지, 둘 다를 고려하는지에 따라 L_CCLM, T_CCLM, LT_CCLM으로 나누어질 수 있다.When the slice type condition is not satisfied (No in S1610), the image encoding apparatus may determine and/or encode an intra prediction mode of the current chroma block without configuring a chroma MPM list for the current chroma block. For example, the image encoding apparatus may determine an intra prediction mode of the current chroma block based on a predetermined default mode and chroma DM (S1640). For example, the image encoding apparatus may determine an optimal intra prediction mode by performing rate-distortion optimization (RDO) on the default mode and the chroma DM. For example, the default mode may include a planar mode, a DM mode, a vertical mode, and a horizontal mode. However, the present invention is not limited thereto, and the default mode may include a predetermined intra prediction mode that is preset based on the frequency of occurrence. As another example, the apparatus for encoding an image may determine an optimal intra prediction mode by performing an additional RDO for a cross-component linear model (CCLM) mode. In order to derive a CCLM parameter, the CCLM mode may be divided into L_CCLM, T_CCLM, and LT_CCLM according to whether left samples of the current chroma block are considered, upper samples are considered, or both are considered.
상기 현재 크로마 블록에 대한 인트라 예측 모드는 상기 현재 크로마 블록에 대응하는 루마 블록(대응 루마 블록)에 대한 인트라 예측 모드와 개별적으로 결정될 수 있으며, 인트라 예측 모드 정보를 기반으로 지시될 수 있다. 상기 인트라 예측 모드 정보는 상기 현재 크로마 블록의 인트라 예측 모드를 나타낼 수 있으며, 예를 들어 표 3 및 표 4를 참조하여 전술한 바와 같이 intra_chroma_pred_mode 신택스 요소의 형태로 시그널링될 수 있다.An intra prediction mode for the current chroma block may be determined separately from an intra prediction mode for a luma block (corresponding luma block) corresponding to the current chroma block, and may be indicated based on intra prediction mode information. The intra prediction mode information may indicate an intra prediction mode of the current chroma block, and may be signaled in the form of an intra_chroma_pred_mode syntax element as described above with reference to Tables 3 and 4, for example.
영상 부호화 장치는 상기 현재 크로마 블록에 대한 인트라 예측 모드 정보를 부호화하여 비트스트림 형태로 출력할 수 있다(S1650). 상기 현재 크로마 블록이 소정의 슬라이스 타입 조건을 충족하는 경우(S1610의 Yes), 상기 인트라 예측 모드 정보는 MPM 플래그, MPM 인덱스 및/또는 리메이닝 모드 정보를 포함할 수 있다. 반대로, 상기 현재 크로마 블록이 상기 슬라이스 타입 조건을 충족하지 않는 경우(S1610의 No), 상기 인트라 예측 모드 정보는 단계 S1640에서 결정된 상기 현재 크로마 블록의 인트라 예측 모드를 나타내는 정보(e.g. intra_chroma_pred_mode)를 포함할 수 있다.The image encoding apparatus may encode intra prediction mode information for the current chroma block and output it in the form of a bitstream (S1650). When the current chroma block satisfies a predetermined slice type condition (Yes in S1610), the intra prediction mode information may include an MPM flag, an MPM index, and/or remaining mode information. Conversely, when the current chroma block does not satisfy the slice type condition (No in S1610), the intra prediction mode information may include information indicating an intra prediction mode of the current chroma block determined in step S1640 (eg intra_chroma_pred_mode). I can.
도 18은 본 개시의 다른 실시예에 따른 영상 복호화 장치에서 인트라 예측 모드 결정 절차를 나타낸 흐름도이다.18 is a flowchart illustrating a procedure for determining an intra prediction mode in an image decoding apparatus according to another embodiment of the present disclosure.
영상 복호화 장치는 현재 크로마 블록이 소정 타입의 슬라이스에 포함되는 경우에만 상기 현재 크로마 블록에 대한 크로마 MPM 리스트를 구성할 수 있다. 반대로, 영상 복호화 장치는 상기 현재 크로마 블록이 상기 소정 타입의 슬라이스에 포함되지 않는 경우 상기 크로마 MPM 리스트를 구성하지 않을 수 있다.The video decoding apparatus may configure a chroma MPM list for the current chroma block only when the current chroma block is included in a predetermined type of slice. Conversely, when the current chroma block is not included in the predetermined type of slice, the video decoding apparatus may not configure the chroma MPM list.
도 18을 참조하면, 영상 복호화 장치는 상기 현재 크로마 블록이 포함된 현재 슬라이스가 소정의 슬라이스 타입 조건을 충족하는지 여부를 판단할 수 있다(S1810).Referring to FIG. 18, the image decoding apparatus may determine whether a current slice including the current chroma block satisfies a predetermined slice type condition (S1810).
일 예로, 상기 슬라이스 타입 조건은 상기 현재 슬라이스가 인트라 슬라이스인 경우일 수 있다. 상기 인트라 슬라이스는, 상기 인트라 슬라이스에 포함되는 블록들에 대해 인트라 예측만이 수행될 수 있는 I 슬라이스를 의미할 수 있다.As an example, the slice type condition may be when the current slice is an intra slice. The intra slice may mean an I slice in which only intra prediction can be performed on blocks included in the intra slice.
또 다른 예로, 상기 슬라이스 타입 조건은 상기 현재 슬라이스가 인터 슬라이스인 경우일 수도 있다. 상기 인터 슬라이스는, 상기 인터 슬라이스에 포함되는 블록들에 대해 인트라 예측 또는 인터 예측이 수행될 수 있는 P 슬라이스 및/또는 B 슬라이스를 의미할 수 있다.As another example, the slice type condition may be a case in which the current slice is an inter slice. The inter slice may mean a P slice and/or a B slice in which intra prediction or inter prediction may be performed on blocks included in the inter slice.
상기 현재 슬라이스의 슬라이스 타입 정보는, 예를 들어 도 17을 참조하여 전술한 슬라이스 헤더(slice_header)의 slice_type 신택스를 복호화함으로써 획득될 수 있다.The slice type information of the current slice may be obtained, for example, by decoding the slice_type syntax of the slice header (slice_header) described above with reference to FIG. 17.
한편, 상기 현재 슬라이스의 슬라이스 타입과 관계없이 상기 현재 크로마 블록에 대한 크로마 MPM 리스트가 구성될 수도 있다. 즉, 상기 현재 슬라이스가 인트라 슬라이스인 경우는 물론이고, 상기 현재 슬라이스가 인터 슬라이스인 경우에도, 상기 크로마 MPM 리스트가 구성될 수도 있다. 이 경우, 도 13 내지 도 15를 참조하여 전술한 본 개시의 실시예 #1이 적용될 수 있다.Meanwhile, a chroma MPM list for the current chroma block may be configured regardless of the slice type of the current slice. That is, when the current slice is an intra slice, as well as when the current slice is an inter slice, the chroma MPM list may be configured. In this case, Embodiment #1 of the present disclosure described above with reference to FIGS. 13 to 15 may be applied.
다시 도 18을 참조하면, 상기 슬라이스 타입 조건이 충족되는 경우(S1810의 Yes), 영상 복호화 장치는 비트스트림으로부터 현재 크로마 블록에 대한 인트라 예측 모드 정보를 획득할 수 있다(S1820). 상기 인트라 예측 모드 정보는 도 16을 참조하여 전술한 바와 같이, MPM 플래그, MPM 인덱스 및/또는 리메이닝 인트라 예측 모드를 포함할 수 있다.Referring back to FIG. 18, when the slice type condition is satisfied (Yes in S1810), the image decoding apparatus may obtain intra prediction mode information for the current chroma block from the bitstream (S1820). The intra prediction mode information may include an MPM flag, an MPM index, and/or a remaining intra prediction mode, as described above with reference to FIG. 16.
영상 복호화 장치는 상기 현재 크로마 블록에 대한 크로마 MPM 리스트를 구성할 수 있다(S1830). 상기 크로마 MPM 리스트는 영상 부호화 장치에서 구성된 크로마 MPM 리스트와 동일하게 구성될 수 있다. 예를 들어, 상기 크로마 MPM 리스트는 상기 현재 크로마 블록에 인접한 주변 크로마 블록(e.g. 좌측 주변 블록 및/또는 상측 주변 블록)을 이용하여 구성될 수 있다. 상기 주변 크로마 블록은 상기 현재 크로마 블록에 대응하는 루마 블록(대응 루마 블록)의 인트라 예측에 이용된 주변 루마 블록과 동일한 위치에 존재할 수도 있고, 또는 상기 주변 루마 블록과 상이한 위치에 존재할 수도 있다. 또한, 상기 크로마 MPM 리스트는 미리 정해진 방법에 따라 특정 인트라 예측 모드들을 더 포함할 수도 있다. 예를 들어, 상기 크로마 MPM 리스트는, 상기 현재 크로마 블록의 인트라 예측 모드가 대응 루마 블록의 인트라 예측 모드로 유도되는 것을 나타내는 크로마 DM을 더 포함할 수 있다. 이 경우, 상기 크로마 DM은 상기 크로마 MPM 리스트에 첫번째 후보(e.g. MPM 인덱스=0)로 포함될 수도 있고, 또는 상기 크로마 MPM 리스트에 K번째 후보(e.g. MPM 인덱스=K-1, K는 1보다 큰 정수)로 포함될 수도 있다. 영상 복호화 장치는 상기 크로마 MPM 리스트에 대해 중복성 체크를 수행하여, 상기 크로마 MPM 리스트에 포함되는 중복된 MPM 후보들을 제거할 수 있다.The video decoding apparatus may configure a chroma MPM list for the current chroma block (S1830). The chroma MPM list may be configured in the same way as the chroma MPM list configured in the video encoding apparatus. For example, the chroma MPM list may be configured using a neighboring chroma block (e.g. a left neighboring block and/or an upper neighboring block) adjacent to the current chroma block. The neighboring chroma block may exist at the same position as the neighboring luma block used for intra prediction of the luma block (corresponding luma block) corresponding to the current chroma block, or may exist at a different position from the neighboring luma block. In addition, the chroma MPM list may further include specific intra prediction modes according to a predetermined method. For example, the chroma MPM list may further include a chroma DM indicating that an intra prediction mode of the current chroma block is derived to an intra prediction mode of a corresponding luma block. In this case, the chroma DM may be included as a first candidate (eg MPM index = 0) in the chroma MPM list, or the K-th candidate (eg MPM index = K-1, K is an integer greater than 1) in the chroma MPM list. ) Can also be included. The video decoding apparatus may remove duplicate MPM candidates included in the chroma MPM list by performing a redundancy check on the chroma MPM list.
한편, 도 18에 도시한 바와 달리, 단계 S1830은 단계 S1820보다 먼저 수행될 수도 있고, 또는 단계 S1820과 동시에 수행될 수도 있다.Meanwhile, unlike FIG. 18, step S1830 may be performed prior to step S1820, or may be performed simultaneously with step S1820.
상기 슬라이스 타입 조건이 충족되지 않는 경우(S1810의 No), 영상 복호화 장치는 비트스트림으로부터 현재 크로마 블록에 대한 인트라 예측 모드 정보를 획득할 수 있다(S1840). 상기 인트라 예측 모드 정보는 도 16을 참조하여 전술한 바와 같이, 영상 부호화 장치에 의해 결정된 상기 현재 크로마 블록의 인트라 예측 모드를 나타내는 정보(e.g. intra_chroma_pred_mode)를 포함할 수 있다. 또한, 영상 복호화 장치는 상기 현재 크로마 블록에 대해 크로마 MPM 리스트를 구성하지 않을 수 있다.If the slice type condition is not satisfied (No in S1810), the image decoding apparatus may obtain intra prediction mode information for the current chroma block from the bitstream (S1840). The intra prediction mode information may include information (e.g. intra_chroma_pred_mode) indicating an intra prediction mode of the current chroma block determined by the image encoding apparatus, as described above with reference to FIG. 16. Also, the video decoding apparatus may not configure a chroma MPM list for the current chroma block.
영상 복호화 장치는 상기 현재 크로마 블록의 인트라 예측 모드를 결정할 수 있다(S1850).The image decoding apparatus may determine an intra prediction mode of the current chroma block (S1850).
상기 슬라이스 타입 조건이 충족되는 경우(S1810의 Yes), 영상 복호화 장치는 단계 S1820에서 획득한 인트라 예측 모드 정보 및 단계 S1830에서 구성된 크로마 MPM 리스트를 기반으로 상기 현재 크로마 블록의 인트라 예측 모드를 결정할 수 있다. 구체적으로, MPM 플래그가 제1 값(e.g. 1)을 갖는 경우, 영상 복호화 장치는 상기 크로마 MPM 리스트 내의 MPM 후보들 중에서 MPM 인덱스가 지시하는 후보를 상기 현재 크로마 블록의 인트라 예측 모드로 결정할 수 있다. 이와 달리, 상기 MPM 플래그가 제2 값(e.g. 0)을 갖는 경우, 영상 복호화 장치는 상기 MPM 리스트에 포함되지 않는 나머지 인트라 예측 모드들 중에서 리메이닝 모드 정보가 지시하는 인트라 예측 모드를 상기 현재 크로마 블록의 인트라 예측 모드로 결정할 수 있다.When the slice type condition is satisfied (Yes in S1810), the video decoding apparatus may determine the intra prediction mode of the current chroma block based on the intra prediction mode information acquired in step S1820 and the chroma MPM list configured in step S1830. . Specifically, when the MPM flag has a first value (e.g. 1), the video decoding apparatus may determine a candidate indicated by an MPM index among MPM candidates in the chroma MPM list as the intra prediction mode of the current chroma block. In contrast, when the MPM flag has a second value (eg 0), the video decoding apparatus selects an intra prediction mode indicated by remaining mode information among the remaining intra prediction modes not included in the MPM list as the current chroma block. It can be determined as the intra prediction mode of.
한편, 상기 현재 크로마 블록의 인트라 예측 타입이 특정 타입(e.g. LIP, MRL 또는 ISP 등)인 경우, 영상 복호화 장치는 상기 MPM 플래그의 값을 확인하지 않고, 상기 크로마 MPM 리스트 내의 MPM 후보들 중에서 상기 MPM 인덱스가 지시하는 후보를 상기 현재 크로마 블록의 인트라 예측 모드로 도출할 수도 있다.Meanwhile, when the intra prediction type of the current chroma block is a specific type (eg LIP, MRL, ISP, etc.), the video decoding apparatus does not check the value of the MPM flag, and the MPM index among MPM candidates in the chroma MPM list A candidate indicated by may be derived as an intra prediction mode of the current chroma block.
상기 슬라이스 타입 조건이 충족되지 않는 경우(S1810의 No), 영상 복호화 장치는 크로마 MPM 리스트를 구성하지 않고, 단계 S1840에서 획득한 인트라 예측 모드 정보를 기반으로 상기 현재 크로마 블록의 인트라 예측 모드를 결정할 수 있다. 예를 들어, 영상 복호화 장치는 비트스트림으로부터 획득되는 인트라 예측 모드 정보(e.g. intra_chroma_pred_mode)를 기반으로 상기 현재 크로마 블록의 인트라 예측 모드를 결정할 수 있다. 예를 들어, 상기 현재 크로마 블록의 인트라 예측 모드는 소정의 디폴트 모드 및 크로마 DM 중 하나로 결정될 수 있다. 일 예에서, 상기 디폴트 모드는 플래너(planar) 모드, DC 모드, 수직 모드 및 수평 모드를 포함할 수 있다. 또는, 상기 현재 크로마 블록의 인트라 예측 모드는 CCLM(cross-component linear model) 모드로 결정될 수도 있다.When the slice type condition is not satisfied (No in S1810), the video decoding apparatus does not configure a chroma MPM list, and may determine an intra prediction mode of the current chroma block based on the intra prediction mode information obtained in step S1840. have. For example, the image decoding apparatus may determine an intra prediction mode of the current chroma block based on intra prediction mode information (e.g. intra_chroma_pred_mode) obtained from a bitstream. For example, the intra prediction mode of the current chroma block may be determined as one of a predetermined default mode and a chroma DM. In one example, the default mode may include a planar mode, a DC mode, a vertical mode, and a horizontal mode. Alternatively, the intra prediction mode of the current chroma block may be determined as a cross-component linear model (CCLM) mode.
이상, 도 16 내지 도 18을 참조하여 설명한 본 개시의 실시예 #2에 따르면, 영상 부호화/복호화 장치는 현재 크로마 블록이 소정 타입의 슬라이스에 포함되는 경우에만 상기 현재 크로마 블록에 대한 크로마 MPM 리스트를 구성함으로써, 루마 블록에 대한 인트라 예측 과정과 크로마 블록에 대한 인트라 예측 과정을 블록 분할 구조에 기반하여 단일화할 수 있다.Above, according to Embodiment #2 of the present disclosure described with reference to FIGS. 16 to 18, the image encoding/decoding apparatus generates a chroma MPM list for the current chroma block only when the current chroma block is included in a slice of a predetermined type. By configuring, an intra prediction process for a luma block and an intra prediction process for a chroma block can be unified based on a block division structure.
상기 현재 크로마 블록이 싱글 트리 구조를 갖는 경우, 상기 현재 크로마 블록의 분할 구조는 상기 현재 크로마 블록에 대응하는 루마 블록(대응 루마 블록)의 분할 구조와 같을 수 있다. 이와 달리, 상기 현재 크로마 블록이 듀얼 트리 구조를 갖는 경우, 상기 현재 크로마 블록의 분할 구조는 상기 대응 루마 블록의 분할 구조와 다를 수 있다. 따라서, 상기 현재 크로마 블록이 상기 듀얼 트리 구조를 갖는 경우(즉, 상기 현재 크로마 블록이 인트라 슬라이스에 포함되는 경우), 본 개시의 실시예 #2에 따른 인트라 예측 과정의 단일화 효과가 보다 극대화될 수 있다.When the current chroma block has a single tree structure, a division structure of the current chroma block may be the same as a division structure of a luma block (corresponding luma block) corresponding to the current chroma block. In contrast, when the current chroma block has a dual tree structure, a division structure of the current chroma block may be different from the division structure of the corresponding luma block. Therefore, when the current chroma block has the dual tree structure (that is, when the current chroma block is included in an intra slice), the unification effect of the intra prediction process according to Embodiment #2 of the present disclosure can be more maximized. have.
실시예 #3 Example #3
본 개시의 실시예 #3은, 현재 크로마 블록의 인트라 예측 모드가 소정의 제1 모드와 동일한지 여부에 기반하여, 상기 현재 크로마 블록에 대한 크로마 MPM 리스트를 구성할 수 있다. Embodiment #3 of the present disclosure may configure a chroma MPM list for the current chroma block based on whether the intra prediction mode of the current chroma block is the same as the predetermined first mode.
도 19는 본 개시의 또 다른 실시예에 따른 영상 부호화 장치에서 인트라 예측 모드 시그널링 절차를 나타낸 흐름도이다.19 is a flowchart illustrating an intra prediction mode signaling procedure in an image encoding apparatus according to another embodiment of the present disclosure.
도 19를 참조하면, 영상 부호화 장치는 현재 크로마 블록의 인트라 예측 모드를 결정할 수 있다(S1910). 영상 부호화 장치는 복수의 인트라 예측 모드들에 대해 RDO(rate-distortion optimization)을 수행하여 최적의 인트라 예측 모드를 결정할 수 있다. 상기 복수의 인트라 예측 모드들은 복수의 비방향성 모드들(e.g. 플래너(planar) 모드, DC 모드) 및 복수의 방향성 모드들 중 적어도 하나를 포함할 수 있다. 일 예로, 영상 부호화 장치는 상기 현재 크로마 블록의 인트라 예측 모드를 상기 현재 크로마 블록에 대응하는 루마 블록(대응 루마 블록) 내 소정 위치의 인트라 예측 모드를 지시하는 크로마 DM으로 결정할 수도 있다.Referring to FIG. 19, the apparatus for encoding an image may determine an intra prediction mode of a current chroma block (S1910). The image encoding apparatus may determine an optimal intra prediction mode by performing rate-distortion optimization (RDO) on a plurality of intra prediction modes. The plurality of intra prediction modes may include at least one of a plurality of non-directional modes (e.g. a planar mode, a DC mode) and a plurality of directional modes. As an example, the apparatus for encoding an image may determine the intra prediction mode of the current chroma block as a chroma DM indicating an intra prediction mode at a predetermined position in a luma block (corresponding luma block) corresponding to the current chroma block.
영상 부호화 장치는 상기 현재 크로마 블록의 인트라 예측 모드가 소정의 제1 모드와 동일한지 여부를 판단할 수 있다(S1920). 상기 제1 모드는 발생 빈도를 기반으로 미리 설정될 수 있다. 예를 들어, 상기 제1 모드는 상기 복수의 인트라 예측 모드들 중 발생 빈도가 가장 큰 인트라 예측 모드로 미리 설정될 수 있다. 일 예로, 상기 제1 모드는 크로마 DM일 수 있다. 또 다른 예로, 상기 제1 모드는 플래너 모드일 수 있다.The image encoding apparatus may determine whether the intra prediction mode of the current chroma block is the same as a predetermined first mode (S1920). The first mode may be preset based on the frequency of occurrence. For example, the first mode may be preset as an intra prediction mode having the largest occurrence frequency among the plurality of intra prediction modes. For example, the first mode may be chroma DM. As another example, the first mode may be a planner mode.
상기 현재 크로마 블록의 인트라 예측 모드가 상기 제1 모드인 경우(S1920의 Yes), 영상 부호화 장치는 상기 결정된 인트라 예측 모드가 상기 제1 모드인지 여부를 나타내는 제1 모드 플래그를 부호화하여 비트스트림 형태로 출력할 수 있다(S1930). 여기서, 상기 부호화된 제1 모드 플래그는 제1 값(e.g. 1)을 가질 수 있으며, 영상 부호화 장치는 상기 현재 크로마 블록에 대한 크로마 MPM 리스트를 구성하지 않을 수 있다. 또한, 영상 부호화 장치는 상기 현재 크로마 블록의 인트라 예측 모드 정보로서 상기 제1 모드 플래그만을 부호화할 수 있다. 즉, 이 경우 상기 현재 크로마 블록의 인트라 예측 모드 정보는 상기 제1 모드 플래그만을 포함하고, 전술한 MPM 플래그, MPM 인덱스 및 리메이닝 모드 정보를 포함하지 않을 수 있다.When the intra prediction mode of the current chroma block is the first mode (Yes in S1920), the image encoding apparatus encodes a first mode flag indicating whether the determined intra prediction mode is the first mode, and converts it into a bitstream form. Can be output (S1930). Here, the encoded first mode flag may have a first value (e.g. 1), and the image encoding apparatus may not configure a chroma MPM list for the current chroma block. Also, the image encoding apparatus may encode only the first mode flag as intra prediction mode information of the current chroma block. That is, in this case, the intra prediction mode information of the current chroma block may include only the first mode flag and may not include the above-described MPM flag, MPM index, and remaining mode information.
상기 현재 크로마 블록의 인트라 예측 모드가 상기 제1 모드가 아닌 경우(S1920의 No), 영상 부호화 장치는 상기 현재 크로마 블록에 대한 크로마 MPM 리스트를 구성할 수 있다(S1940).When the intra prediction mode of the current chroma block is not the first mode (No in S1920), the image encoding apparatus may configure a chroma MPM list for the current chroma block (S1940).
상기 크로마 MPM 리스트는 상기 현재 크로마 블록에 적용될 가능성이 높은 N개(N은 1 이상의 정수)의 인트라 예측 모드 후보들(MPM 후보들)을 포함할 수 있다. 일 예로, 상기 MPM 후보들의 개수(N)는 상기 현재 크로마 블록에 대응하는 루마 블록(대응 루마 블록)에 대한 MPM 후보들의 개수(M)보다 작거나 같을 수 있다(N≤M). 또한, 일 예로, 상기 MPM 후보들의 개수(N)는 상기 현재 크로마 블록의 크로마 성분의 정보량에 비례하여 증가할 수 있다. 예를 들어, 상기 현재 크로마 블록의 크로마 포맷이 4:2:0인 경우 상기 MPM 후보들의 개수(N1)는, 상기 현재 크로마 블록의 크로마 포맷이 4:2:2 또는 4:4:4인 경우 상기 MPM 후보들의 개수(N2)보다 작거나 같을 수 있다(N1≤N2). 상기 MPM 후보들의 개수(N)는 기정의되거나 비트스트림을 통해 시그널링될 수 있다.The chroma MPM list may include N intra prediction mode candidates (MPM candidates) that are highly likely to be applied to the current chroma block (N is an integer greater than or equal to 1). For example, the number (N) of the MPM candidates may be less than or equal to the number (M) of the MPM candidates for the luma block (corresponding luma block) corresponding to the current chroma block (N≤M). In addition, as an example, the number (N) of the MPM candidates may increase in proportion to the information amount of the chroma component of the current chroma block. For example, when the chroma format of the current chroma block is 4:2:0, the number of MPM candidates (N1) is when the chroma format of the current chroma block is 4:2:2 or 4:4:4 It may be less than or equal to the number of MPM candidates (N2) (N1≤N2). The number (N) of the MPM candidates may be predefined or may be signaled through a bitstream.
상기 크로마 MPM 리스트는 상기 현재 크로마 블록에 인접한 적어도 하나의 주변 크로마 블록(e.g. 좌측 주변 블록 및/또는 상측 주변 블록)의 인트라 예측 모드를 이용하여 구성될 수 있다. 상기 주변 크로마 블록은 상기 현재 크로마 블록에 대응하는 루마 블록(대응 루마 블록)의 인트라 예측에 이용된 주변 루마 블록과 동일한 위치에 존재할 수도 있고, 또는 상기 주변 루마 블록과 다른 위치에 존재할 수도 있다.The chroma MPM list may be configured using an intra prediction mode of at least one neighboring chroma block (e.g. a left neighboring block and/or an upper neighboring block) adjacent to the current chroma block. The neighboring chroma block may exist at the same position as the neighboring luma block used for intra prediction of the luma block (corresponding luma block) corresponding to the current chroma block, or may exist at a different position from the neighboring luma block.
또한, 상기 제1 모드가 크로마 DM이 아닌 경우, 상기 크로마 MPM 리스트는 상기 현재 크로마 블록의 인트라 예측 모드가 대응 루마 블록의 소정 위치(e.g. 중심 위치)의 인트라 예측 모드로 결정됨을 나타내는 크로마 DM을 포함할 수 있다. 이 경우, 상기 크로마 DM은 상기 크로마 MPM 리스트에 첫번째 후보(e.g. MPM 인덱스=0)로 포함될 수도 있고, 또는 K번째 후보(e.g. MPM 인덱스=K-1, K는 1보다 크고 N보다 작은 정수)로 포함될 수도 있다.In addition, when the first mode is not chroma DM, the chroma MPM list includes a chroma DM indicating that the intra prediction mode of the current chroma block is determined as an intra prediction mode of a predetermined position (eg center position) of the corresponding luma block. can do. In this case, the chroma DM may be included as a first candidate (eg MPM index = 0) in the chroma MPM list, or as a K-th candidate (eg MPM index = K-1, K is an integer greater than 1 and less than N). It may be included.
영상 부호화 장치는 상기 현재 크로마 블록의 인트라 예측 모드 정보를 부호화하여 비트스트림 형태로 출력할 수 있다(S1950). 상기 인트라 예측 모드 정보는 전술한 제1 모드 플래그를 포함할 수 있다. 이 경우, 상기 부호화된 제1 모드 플래그는 제2 값(e.g. 0)을 가질 수 있다. 또한, 상기 인트라 예측 모드 정보는 전술한 MPM 플래그, MPM 인덱스 및/또는 리메이닝 모드 정보를 더 포함할 수 있다. 즉, 상기 MPM 플래그, 상기 MPM 인덱스 및/또는 상기 리메이닝 모드 정보는 상기 제1 모드 플래그가 제2 값(e.g. 0)을 갖는 경우에만 시그널링될 수 있다.The image encoding apparatus may encode the intra prediction mode information of the current chroma block and output it in the form of a bitstream (S1950). The intra prediction mode information may include the aforementioned first mode flag. In this case, the encoded first mode flag may have a second value (e.g. 0). In addition, the intra prediction mode information may further include the above-described MPM flag, MPM index, and/or remaining mode information. That is, the MPM flag, the MPM index, and/or the remaining mode information may be signaled only when the first mode flag has a second value (e.g. 0).
도 20은 본 개시의 또 다른 실시예에 따른 영상 복호화 장치에서 인트라 예측 모드 결정 절차를 나타낸 흐름도이다.20 is a flowchart illustrating a procedure for determining an intra prediction mode in an image decoding apparatus according to another embodiment of the present disclosure.
도 20을 참조하면, 영상 복호화 장치는 비트스트림으로부터 현재 크로마 블록에 대한 인트라 예측 모드 정보를 획득할 수 있다(S2010). 상기 인트라 예측 모드 정보는 도 19를 참조하여 전술한 바와 같이 제1 모드 플래그를 포함할 수 있다. 또한, 상기 인트라 예측 모드 정보는 MPM 플래그, MPM 인덱스 및/또는 리메이닝 모드 정보를 더 포함할 수 있다. Referring to FIG. 20, the apparatus for decoding an image may obtain intra prediction mode information for a current chroma block from a bitstream (S2010). The intra prediction mode information may include a first mode flag as described above with reference to FIG. 19. In addition, the intra prediction mode information may further include an MPM flag, an MPM index, and/or remaining mode information.
영상 복호화 장치는 상기 제1 모드 플래그가 제1 값(e.g. 1)을 갖는지 여부를 판단할 수 있다(S2020).The image decoding apparatus may determine whether the first mode flag has a first value (e.g. 1) (S2020).
상기 제1 모드 플래그가 상기 제1 값을 갖는 경우(S2020의 Yes), 영상 복호화 장치는 상기 현재 크로마 블록의 인트라 예측 모드를 제1 모드로 결정할 수 있다(S2030). 일 예로, 상기 제1 모드는 크로마 DM일 수 있다. 또 다른 예로, 상기 제1 모드는 플래너 모드일 수 있다.When the first mode flag has the first value (Yes in S2020), the image decoding apparatus may determine the intra prediction mode of the current chroma block as the first mode (S2030). For example, the first mode may be chroma DM. As another example, the first mode may be a planner mode.
상기 현재 크로마 블록의 인트라 예측 모드가 상기 제1 모드로 결정된 경우(S2030), 영상 복호화 장치는 상기 현재 크로마 블록에 대한 크로마 MPM 리스트를 구성하지 않을 수 있다.When the intra prediction mode of the current chroma block is determined as the first mode (S2030), the video decoding apparatus may not configure a chroma MPM list for the current chroma block.
상기 제1 모드 플래그가 상기 제1 값을 갖지 않는 경우(예를 들어, 상기 제1 모드 플래그가 제2 값(e.g. 0)을 갖는 경우)(S2020의 No), 영상 복호화 장치는 상기 현재 크로마 블록에 대한 크로마 MPM 리스트를 구성할 수 있다(S2040). 상기 크로마 MPM 리스트는 영상 부호화 장치에 의해 구성된 크로마 MPM 리스트와 동일하게 구성될 수 있다. 예를 들어, 상기 크로마 MPM 리스트는 상기 현재 크로마 블록에 인접한 주변 크로마 블록(e.g. 좌측 주변 블록 및/또는 상측 주변 블록)을 이용하여 구성될 수 있다. 상기 주변 크로마 블록은 상기 현재 크로마 블록에 대응하는 루마 블록(대응 루마 블록)의 인트라 예측에 이용된 주변 루마 블록과 동일한 위치에 존재할 수도 있고, 또는 상기 주변 루마 블록과 상이한 위치에 존재할 수도 있다. 또한, 상기 크로마 MPM 리스트는 미리 정해진 방법에 따라 특정 인트라 예측 모드들을 더 포함할 수 있다. 예를 들어, 상기 제1 모드가 크로마 DM이 아닌 경우, 상기 크로마 MPM 리스트는 상기 현재 크로마 블록의 인트라 예측 모드가 상기 대응 루마 블록의 소정 위치(e.g. 중심 위치)의 인트라 예측 모드로 결정됨을 나타내는 크로마 DM을 포함할 수 있다.When the first mode flag does not have the first value (e.g., when the first mode flag has a second value (eg 0)) (No in S2020), the image decoding apparatus uses the current chroma block A chroma MPM list for can be configured (S2040). The chroma MPM list may be configured in the same way as the chroma MPM list configured by the video encoding apparatus. For example, the chroma MPM list may be configured using a neighboring chroma block (e.g. a left neighboring block and/or an upper neighboring block) adjacent to the current chroma block. The neighboring chroma block may exist at the same position as the neighboring luma block used for intra prediction of the luma block (corresponding luma block) corresponding to the current chroma block, or may exist at a different position from the neighboring luma block. In addition, the chroma MPM list may further include specific intra prediction modes according to a predetermined method. For example, if the first mode is not chroma DM, the chroma MPM list indicates that the intra prediction mode of the current chroma block is determined as an intra prediction mode of a predetermined position (eg center position) of the corresponding luma block. DM can be included.
영상 복호화 장치는 상기 인트라 예측 모드 정보 및 크로마 MPM 리스트를 기반으로 상기 현재 크로마 블록의 인트라 예측 모드를 결정할 수 있다(S2050). 구체적으로, MPM 플래그가 제1 값(e.g. 1)을 갖는 경우, 영상 복호화 장치는 상기 크로마 MPM 리스트 내의 MPM 후보들 중에서 MPM 인덱스가 지시하는 후보를 상기 현재 크로마 블록의 인트라 예측 모드로 결정할 수 있다. 이와 달리, 상기 MPM 플래그가 제2 값(e.g. 0)을 갖는 경우, 영상 복호화 장치는 상기 MPM 리스트에 포함되지 않는 나머지 인트라 예측 모드들 중에서 상기 리메이닝 모드 정보가 지시하는 인트라 예측 모드를 상기 현재 크로마 블록의 인트라 예측 모드로 결정할 수 있다.The video decoding apparatus may determine an intra prediction mode of the current chroma block based on the intra prediction mode information and a chroma MPM list (S2050). Specifically, when the MPM flag has a first value (e.g. 1), the video decoding apparatus may determine a candidate indicated by an MPM index among MPM candidates in the chroma MPM list as the intra prediction mode of the current chroma block. In contrast, when the MPM flag has a second value (eg 0), the video decoding apparatus selects an intra prediction mode indicated by the remaining mode information among the remaining intra prediction modes not included in the MPM list. It can be determined as the intra prediction mode of the block.
또 다른 예로서, 상기 현재 크로마 블록의 인트라 예측 타입이 특정 타입(e.g. LIP, MRL 또는 ISP 등)인 경우, MPM 플래그는 제1 값으로 추론되므로, 영상 복호화 장치는 상기 MPM 플래그의 값을 복호화하지 않고, 상기 크로마 MPM 리스트 내의 MPM 후보들 중에서 상기 MPM 인덱스가 지시하는 후보를 상기 현재 크로마 블록의 인트라 예측 모드로 결정할 수도 있다.As another example, when the intra prediction type of the current chroma block is a specific type (eg LIP, MRL, ISP, etc.), since the MPM flag is inferred as a first value, the video decoding apparatus does not decode the value of the MPM flag. Alternatively, a candidate indicated by the MPM index among MPM candidates in the chroma MPM list may be determined as an intra prediction mode of the current chroma block.
이상, 도 19 및 도 20을 참조하여 설명한 본 개시의 실시예 #3에 따르면, 영상 부호화/복호화 장치는 소정의 제1 모드 플래그를 기반으로 현재 크로마 블록에 대한 크로마 MPM 리스트를 구성함으로써, 영상 부호화/복호화 효율을 향상시킬 수 있다.As described above, according to Embodiment #3 of the present disclosure described with reference to FIGS. 19 and 20, the image encoding/decoding apparatus configures a chroma MPM list for a current chroma block based on a predetermined first mode flag, thereby encoding an image. /Can improve decryption efficiency.
실시예 #4 Example #4
본 개시의 실시예 #4는, 본 개시의 실시예 #3의 변형예로서, 현재 크로마 블록에 대한 크로마 MPM 리스트를 구성하되, 소정의 제1 모드 플래그를 이용하여 상기 현재 크로마 블록의 인트라 예측 모드 및 인트라 예측 모드 정보를 적응적으로 결정할 수 있다. Embodiment #4 of the present disclosure is a modified example of Embodiment #3 of the present disclosure, in which a chroma MPM list for a current chroma block is constructed, and an intra prediction mode of the current chroma block is used by using a predetermined first mode flag. And intra prediction mode information may be adaptively determined.
도 21은 본 개시의 또 다른 실시예에 따른 영상 부호화 장치에서 인트라 예측 모드 시그널링 절차를 나타낸 흐름도이다.21 is a flowchart illustrating an intra prediction mode signaling procedure in an image encoding apparatus according to another embodiment of the present disclosure.
도 21의 단계 S2110 및 S2120은 각각 도 19의 단계 S1910 및 S1940에 대응될 수 있다. 따라서, 단계 S2110 및 S2120에 대한 설명은 간략히 하기로 한다.Steps S2110 and S2120 of FIG. 21 may correspond to steps S1910 and S1940 of FIG. 19, respectively. Therefore, the description of steps S2110 and S2120 will be briefly described.
도 21을 참조하면, 영상 부호화 장치는 현재 크로마 블록의 인트라 예측 모드를 결정할 수 있다(S2110). 영상 부호화 장치는 복수의 인트라 예측 모드들에 대해 RDO(rate-distortion optimization)을 수행하여 최적의 인트라 예측 모드를 결정할 수 있다.Referring to FIG. 21, the apparatus for encoding an image may determine an intra prediction mode of a current chroma block (S2110). The image encoding apparatus may determine an optimal intra prediction mode by performing rate-distortion optimization (RDO) on a plurality of intra prediction modes.
영상 부호화 장치는 상기 현재 크로마 블록에 대한 크로마 MPM 리스트를 구성할 수 있다(S2120).The image encoding apparatus may configure a chroma MPM list for the current chroma block (S2120).
상기 크로마 MPM 리스트는 상기 현재 크로마 블록에 적용될 가능성이 높은 하나 이상의 인트라 예측 모드 후보들(MPM 후보들)을 포함할 수 있다. 일 예로, 상기 MPM 후보들의 개수는 상기 현재 크로마 블록에 대응하는 루마 블록에 대한 루마 MPM 리스트의 MPM 후보들의 개수보다 작거나 같을 수 있다. 또한, 일 예로, 상기 MPM 후보들의 개수는 상기 현재 크로마 블록의 크로마 성분의 정보량에 비례하여 증가할 수 있다. 상기 MPM 후보들의 개수는 기정의되거나 비트스트림을 통해 시그널링될 수 있다.The chroma MPM list may include one or more intra prediction mode candidates (MPM candidates) that are highly likely to be applied to the current chroma block. For example, the number of MPM candidates may be less than or equal to the number of MPM candidates in a luma MPM list for a luma block corresponding to the current chroma block. In addition, as an example, the number of MPM candidates may increase in proportion to an information amount of a chroma component of the current chroma block. The number of MPM candidates may be predefined or may be signaled through a bitstream.
상기 크로마 MPM 리스트는 상기 현재 크로마 블록에 인접한 적어도 하나의 주변 크로마 블록(e.g. 좌측 주변 블록 및/또는 상측 주변 블록)의 인트라 예측 모드를 이용하여 구성될 수 있다. 상기 주변 크로마 블록은 상기 현재 크로마 블록에 대응하는 루마 블록의 인트라 예측에 이용된 주변 루마 블록과 동일한 위치에 존재할 수도 있고, 또는 상기 주변 루마 블록과 다른 위치에 존재할 수도 있다.The chroma MPM list may be configured using an intra prediction mode of at least one neighboring chroma block (e.g. a left neighboring block and/or an upper neighboring block) adjacent to the current chroma block. The neighboring chroma block may exist at the same position as the neighboring luma block used for intra prediction of the luma block corresponding to the current chroma block, or may exist at a different position from the neighboring luma block.
영상 부호화 장치는, 상기 현재 크로마 블록의 인트라 예측 모드가 상기 크로마 MPM 리스트에 포함되거나 소정의 제1 모드와 동일한지 여부를 판단할 수 있다(S2130). 상기 제1 모드는 상기 크로마 MPM 리스트에 포함되지 않는 MPM 후보들 중 하나로 미리 설정될 수 있다. 일 예에서, 상기 제1 모드는 크로마 DM 또는 플래너(Planar) 모드일 수 있다. The image encoding apparatus may determine whether the intra prediction mode of the current chroma block is included in the chroma MPM list or is the same as a predetermined first mode (S2130). The first mode may be preset as one of MPM candidates not included in the chroma MPM list. In one example, the first mode may be a chroma DM or a planar mode.
상기 현재 크로마 블록의 인트라 예측 모드가 상기 크로마 MPM 리스트에 포함되거나 상기 제1 모드와 동일한 경우(S2130의 Yes), 영상 부호화 장치는 상기 현재 크로마 블록의 인트라 예측 모드가 상기 제1 모드와 동일한지 여부를 판단할 수 있다(S2140).When the intra prediction mode of the current chroma block is included in the chroma MPM list or is the same as the first mode (Yes in S2130), the image encoding apparatus determines whether the intra prediction mode of the current chroma block is the same as the first mode. Can be determined (S2140).
상기 현재 크로마 블록의 인트라 예측 모드가 상기 제1 모드와 동일한 경우(S2140의 Yes), 영상 부호화 장치는, 상기 현재 크로마 블록의 인트라 예측 모드 정보로서, MPM 플래그 및 제1 모드 플래그를 부호화하여 비트스트림 형태로 출력할 수 있다(S2150). 이 경우, 상기 MPM 플래그 및 상기 제1 모드 플래그는 각각 제1 값(e.g. 1)으로 부호화될 수 있다.When the intra prediction mode of the current chroma block is the same as the first mode (Yes in S2140), the video encoding apparatus encodes an MPM flag and a first mode flag as intra prediction mode information of the current chroma block to a bitstream. It can be output in the form (S2150). In this case, the MPM flag and the first mode flag may be encoded with a first value (e.g. 1), respectively.
상기 현재 크로마 블록의 인트라 예측 모드가 상기 제1 모드와 동일하지 않은 경우(S2140의 No), 영상 부호화 장치는, 상기 현재 크로마 블록의 인트라 예측 모드 정보로서, MPM 플래그, 제1 모드 플래그 및 MPM 인덱스를 부호화하여 비트스트림 형태로 출력할 수 있다(S2160). 이 경우, 상기 MPM 플래그는 제1 값(e.g. 1)으로 부호화되고, 상기 제1 모드 플래그는 제2 값(e.g. 0)으로 부호화될 수 있다.When the intra prediction mode of the current chroma block is not the same as that of the first mode (No in S2140), the image encoding apparatus may include an MPM flag, a first mode flag, and an MPM index as intra prediction mode information of the current chroma block. May be encoded and output in the form of a bitstream (S2160). In this case, the MPM flag may be encoded as a first value (e.g. 1), and the first mode flag may be encoded as a second value (e.g. 0).
마지막으로, 상기 현재 크로마 블록의 인트라 예측 모드가 상기 크로마 MPM 리스트에 포함되지 않고, 또한 상기 제1 모드와 동일하지도 않은 경우(S2130의 No), 영상 부호화 장치는, 상기 현재 크로마 블록의 인트라 예측 모드 정보로서, MPM 플래그 및 리메이닝 모드 정보를 부호화하여 비트스트림 형태로 출력할 수 있다(S2170).Finally, when the intra prediction mode of the current chroma block is not included in the chroma MPM list, and is not the same as the first mode (No in S2130), the video encoding apparatus, the intra prediction mode of the current chroma block As information, the MPM flag and the remaining mode information may be encoded and output in the form of a bitstream (S2170).
도 22는 본 개시의 또 다른 실시예에 따른 영상 복호화 장치에서 인트라 예측 모드 결정 절차를 나타낸 흐름도이다.22 is a flowchart illustrating a procedure for determining an intra prediction mode in an image decoding apparatus according to another embodiment of the present disclosure.
도 22의 단계 S2210 및 S2220은 각각 도 20의 단계 S2010 및 S2040에 대응될 수 있다. 따라서, 단계 S2210 및 S2220에 대한 설명은 간략히 하기로 한다.Steps S2210 and S2220 of FIG. 22 may correspond to steps S2010 and S2040 of FIG. 20, respectively. Therefore, the description of steps S2210 and S2220 will be briefly described.
도 22를 참조하면, 영상 복호화 장치는 비트스트림으로부터 현재 크로마 블록에 대한 인트라 예측 모드 정보를 획득할 수 있다(S2210). 도 21을 참조하여 전술한 바와 같이, 상기 인트라 예측 모드 정보는 MPM 플래그 및 제1 모드 플래그를 포함할 수 있다. 또는, 상기 인트라 예측 모드 정보는 MPM 플래그, 제1 모드 플래그 및 MPM 인덱스를 포함할 수 있다. 또는, 상기 인트라 예측 모드 정보는 MPM 플래그 및 리메이닝 모드 정보를 포함할 수 있다.Referring to FIG. 22, the image decoding apparatus may obtain intra prediction mode information for a current chroma block from a bitstream (S2210). As described above with reference to FIG. 21, the intra prediction mode information may include an MPM flag and a first mode flag. Alternatively, the intra prediction mode information may include an MPM flag, a first mode flag, and an MPM index. Alternatively, the intra prediction mode information may include an MPM flag and remaining mode information.
영상 복호화 장치는 상기 현재 크로마 블록에 대한 크로마 MPM 리스트를 구성할 수 있다(S2220). 상기 크로마 MPM 리스트는 영상 부호화 장치에 의해 구성된 크로마 MPM 리스트와 동일하게 구성될 수 있다. 예를 들어, 상기 크로마 MPM 리스트는 상기 현재 크로마 블록에 인접한 주변 크로마 블록(e.g. 좌측 주변 블록 및/또는 상측 주변 블록)을 이용하여 구성될 수 있다. 또한, 상기 크로마 MPM 리스트는 미리 정해진 방법에 따라 특정 인트라 예측 모드들을 더 포함할 수 있다. 예를 들어, 상기 제1 모드 플래그가 지시하는 소정의 제1 모드가 크로마 DM이 아닌 경우, 상기 크로마 MPM 리스트는 상기 크로마 DM을 포함할 수 있다.The video decoding apparatus may configure a chroma MPM list for the current chroma block (S2220). The chroma MPM list may be configured in the same way as the chroma MPM list configured by the video encoding apparatus. For example, the chroma MPM list may be configured using a neighboring chroma block (e.g. a left neighboring block and/or an upper neighboring block) adjacent to the current chroma block. In addition, the chroma MPM list may further include specific intra prediction modes according to a predetermined method. For example, when a predetermined first mode indicated by the first mode flag is not chroma DM, the chroma MPM list may include the chroma DM.
영상 복호화 장치는 단계 S2210에서 획득되는 MPM 플래그가 제1 값(e.g. 1)을 갖는지 여부를 판단할 수 있다(S2230).The image decoding apparatus may determine whether the MPM flag acquired in step S2210 has a first value (e.g. 1) (S2230).
상기 MPM 플래그가 상기 제1 값을 갖는 경우(S2230의 Yes), 영상 복호화 장치는 단계 S2210에서 획득되는 제1 모드 플래그가 제1 값(e.g. 1)을 갖는지 여부를 판단할 수 있다(S2240).When the MPM flag has the first value (Yes in S2230), the image decoding apparatus may determine whether the first mode flag obtained in step S2210 has a first value (e.g. 1) (S2240).
상기 제1 모드 플래그가 상기 제1 값을 갖는 경우(S2240의 Yes), 영상 복호화 장치는 상기 현재 크로마 블록의 인트라 예측 모드를 상기 제1 모드로 결정할 수 있다. 상기 제1 모드는 발생 빈도를 기반으로 미리 설정되거나 비트스트림을 통해 시그널링될 수 있다. 일 예에서, 상기 제1 모드는 크로마 DM 또는 플래너(Planar) 모드일 수 있다. When the first mode flag has the first value (Yes in S2240), the image decoding apparatus may determine an intra prediction mode of the current chroma block as the first mode. The first mode may be preset based on the frequency of occurrence or may be signaled through a bitstream. In one example, the first mode may be a chroma DM or a planar mode.
상기 제1 모드 플래그가 상기 제1 값을 갖지 않는 경우(S2240의 No), 영상 복호화 장치는, 상기 현재 크로마 블록의 인트라 예측 모드를 단계 S2210에서 획득되는 MPM 인덱스가 지시하는 인트라 예측 모드로 결정할 수 있다(S2260).When the first mode flag does not have the first value (No in S2240), the video decoding apparatus may determine the intra prediction mode of the current chroma block as an intra prediction mode indicated by the MPM index obtained in step S2210. Yes (S2260).
상기 MPM 플래그가 상기 제1 값을 갖지 않는 경우(S2230의 No), 영상 복호화 장치는, 상기 현재 크로마 블록의 인트라 예측 모드를 단계 S2210에서 획득되는 리메이닝 모드 정보가 지시하는 인트라 예측 모드로 결정할 수 있다(S2270).When the MPM flag does not have the first value (No in S2230), the video decoding apparatus may determine the intra prediction mode of the current chroma block as the intra prediction mode indicated by the remaining mode information obtained in step S2210. Yes (S2270).
이상, 도 21 및 도 22를 참조하여 설명한 본 개시의 실시예 #4에 따르면, 영상 부호화/복호화 장치는 소정의 제1 모드 플래그를 이용하여 상기 현재 크로마 블록의 인트라 예측 모드 및 인트라 예측 모드 정보를 적응적으로 결정함으로써, 영상 부호화/복호화 효율을 향상시킬 수 있다.As described above, according to Embodiment #4 of the present disclosure described with reference to FIGS. 21 and 22, the image encoding/decoding apparatus uses a predetermined first mode flag to determine the intra prediction mode and intra prediction mode information of the current chroma block. By adaptively determining, video encoding/decoding efficiency can be improved.
실시예 #5 Example #5
본 개시의 실시예 #5는, 실시예 #3의 변형예로서, 현재 크로마 블록의 인트라 예측 모드가 소정의 제1 인트라 예측 모드 또는 제2 인트라 예측 모드와 동일한지 여부에 기반하여 상기 현재 크로마 블록에 대한 크로마 MPM 리스트를 구성할 수 있다. Embodiment #5 of the present disclosure is a modified example of embodiment #3, wherein the current chroma block is based on whether the intra prediction mode of the current chroma block is the same as a predetermined first intra prediction mode or a second intra prediction mode. You can configure a chroma MPM list for.
도 23은 본 개시의 또 다른 실시예에 따른 영상 부호화 장치에서 인트라 예측 모드 시그널링 절차를 나타낸 흐름도이다.23 is a flowchart illustrating an intra prediction mode signaling procedure in an image encoding apparatus according to another embodiment of the present disclosure.
도 23의 단계 S2310, S2360 및 S2370은 각각 도 19의 단계 S1910, S1940 및 S1950에 대응될 수 있다. 따라서, 단계 S2310, S2360 및 S2370에 대한 설명은 간략히 하기로 한다.Steps S2310, S2360, and S2370 of FIG. 23 may correspond to steps S1910, S1940, and S1950 of FIG. 19, respectively. Therefore, descriptions of steps S2310, S2360, and S2370 will be briefly described.
도 23을 참조하면, 영상 부호화 장치는 현재 크로마 블록의 인트라 예측 모드를 결정할 수 있다(S2310). 영상 부호화 장치는 복수의 인트라 예측 모드들에 대해 RDO(rate-distortion optimization)을 수행하여 최적의 인트라 예측 모드를 결정할 수 있다.Referring to FIG. 23, the apparatus for encoding an image may determine an intra prediction mode of a current chroma block (S2310). The image encoding apparatus may determine an optimal intra prediction mode by performing rate-distortion optimization (RDO) on a plurality of intra prediction modes.
영상 부호화 장치는 상기 현재 크로마 블록의 인트라 예측 모드가 소정의 제1 모드와 동일한지 여부를 판단할 수 있다(S2320). 상기 제1 모드는 발생 빈도를 기반으로 기정의되거나 비트스트림을 통해 시그널링될 수 있다. 일 예에서, 상기 제1 모드는 상기 현재 크로마 블록의 인트라 예측 모드가 대응 루마 블록 내 소정 위치(e.g. 중심 위치)의 인트라 예측 모드로 결정됨을 나타내는 크로마 DM일 수 있다. 또 다른 예에서, 상기 제1 모드는 플래너(Planar) 모드일 수 있다. 상기 현재 크로마 블록의 인트라 예측 모드가 상기 제1 모드와 동일한지 여부는 제1 모드 플래그를 기반으로 지시될 수 있다. 상기 제1 모드 플래그의 제1 값(e.g. 1)은 상기 현재 크로마 블록의 인트라 예측 모드가 상기 제1 모드인 것을 나타낼 수 있으며, 상기 제1 모드 플래그의 제2 값(e.g. 0)은 상기 현재 크로마 블록의 인트라 예측 모드가 상기 제1 모드가 아닌 것을 나타낼 수 있다.The image encoding apparatus may determine whether the intra prediction mode of the current chroma block is the same as a predetermined first mode (S2320). The first mode may be predefined based on the frequency of occurrence or may be signaled through a bitstream. In an example, the first mode may be a chroma DM indicating that the intra prediction mode of the current chroma block is determined as an intra prediction mode of a predetermined position (e.g. a center position) in a corresponding luma block. In another example, the first mode may be a planar mode. Whether the intra prediction mode of the current chroma block is the same as the first mode may be indicated based on a first mode flag. A first value (eg 1) of the first mode flag may indicate that the intra prediction mode of the current chroma block is the first mode, and a second value (eg 0) of the first mode flag is the current chroma It may indicate that the intra prediction mode of the block is not the first mode.
상기 현재 크로마 블록의 인트라 예측 모드가 상기 제1 모드인 경우(상기 제1 모드 플래그가 제1 값을 갖는 경우)(S2320의 Yes), 영상 부호화 장치는 상기 제1 모드 플래그를 부호화하여 비트스트림 형태로 출력할 수 있다(S2330). 이 경우, 영상 부호화 장치는 상기 현재 크로마 블록에 대한 크로마 MPM 리스트를 구성하지 않을 수 있다. 또한, 영상 부호화 장치는 상기 현재 크로마 블록의 인트라 예측 모드 정보로서 상기 제1 모드 플래그만을 부호화할 수 있다. 즉, 상기 현재 크로마 블록의 인트라 예측 모드 정보는 전술한 MPM 플래그, MPM 인덱스 및 리메이닝 모드 정보를 포함하지 않을 수 있다.When the intra prediction mode of the current chroma block is the first mode (when the first mode flag has a first value) (Yes in S2320), the image encoding apparatus encodes the first mode flag to form a bitstream. It can be output as (S2330). In this case, the image encoding apparatus may not configure a chroma MPM list for the current chroma block. Also, the image encoding apparatus may encode only the first mode flag as intra prediction mode information of the current chroma block. That is, the intra prediction mode information of the current chroma block may not include the above-described MPM flag, MPM index, and remaining mode information.
상기 현재 크로마 블록의 인트라 예측 모드가 상기 제1 모드가 아닌 경우(상기 제1 모드 플래그가 제2 값을 갖는 경우)(S2320의 No), 영상 부호화 장치는 상기 현재 크로마 블록의 인트라 예측 모드가 소정의 제2 모드와 동일한지 여부를 판단할 수 있다(S2340). 상기 제2 모드는 발생 빈도를 기반으로 기정의되거나 비트스트림을 통해 시그널링될 수 있다. 일 예에서, 상기 제2 모드는 플래너(Planar) 모드일 수 있다. 또 다른 예에서, 상기 제2 모드는 상기 현재 크로마 블록의 인트라 예측 모드가 대응 루마 블록 내 소정 위치의 인트라 예측 모드로 결정됨을 나타내는 크로마 DM일 수 있다. 상기 현재 크로마 블록의 인트라 예측 모드가 상기 제2 모드와 동일한지 여부는 제2 모드 플래그를 기반으로 지시될 수 있다. 상기 제2 모드 플래그의 제1 값(e.g. 1)은 상기 현재 크로마 블록의 인트라 예측 모드가 상기 제2 모드인 것을 나타낼 수 있으며, 상기 제2 모드 플래그의 제2 값(e.g. 0)은 상기 현재 크로마 블록의 인트라 예측 모드가 상기 제2 모드가 아닌 것을 나타낼 수 있다.When the intra prediction mode of the current chroma block is not the first mode (when the first mode flag has a second value) (No in S2320), the video encoding apparatus determines the intra prediction mode of the current chroma block. It may be determined whether it is the same as the second mode of (S2340). The second mode may be predefined based on the frequency of occurrence or may be signaled through a bitstream. In one example, the second mode may be a planar mode. In another example, the second mode may be a chroma DM indicating that an intra prediction mode of the current chroma block is determined as an intra prediction mode of a predetermined position in a corresponding luma block. Whether the intra prediction mode of the current chroma block is the same as the second mode may be indicated based on a second mode flag. A first value (eg 1) of the second mode flag may indicate that the intra prediction mode of the current chroma block is the second mode, and a second value (eg 0) of the second mode flag is the current chroma It may indicate that the intra prediction mode of the block is not the second mode.
상기 현재 크로마 블록의 인트라 예측 모드가 상기 제2 모드인 경우(상기 제2 모드 플래그가 제1 값을 갖는 경우)(S2340의 Yes), 영상 부호화 장치는 상기 제1 모드 플래그 및 상기 제2 모드 플래그를 부호화하여 비트스트림 형태로 출력할 수 있다(S2350). 이 경우, 영상 부호화 장치는 상기 현재 크로마 블록에 대한 크로마 MPM 리스트를 구성하지 않을 수 있다. 또한, 영상 부호화 장치는 상기 현재 크로마 블록의 인트라 예측 모드 정보로서 상기 제1 모드 플래그 및 상기 제2 모드 플래그만을 부호화할 수 있다. 즉, 상기 현재 크로마 블록의 인트라 예측 모드 정보는 전술한 MPM 플래그, MPM 인덱스 및 리메이닝 모드 정보를 포함하지 않을 수 있다.When the intra prediction mode of the current chroma block is the second mode (when the second mode flag has a first value) (Yes in S2340), the image encoding apparatus includes the first mode flag and the second mode flag May be encoded and output in the form of a bitstream (S2350). In this case, the image encoding apparatus may not configure a chroma MPM list for the current chroma block. Also, the image encoding apparatus may encode only the first mode flag and the second mode flag as intra prediction mode information of the current chroma block. That is, the intra prediction mode information of the current chroma block may not include the above-described MPM flag, MPM index, and remaining mode information.
상기 현재 크로마 블록의 인트라 예측 모드가 상기 제2 모드가 아닌 경우(상기 제2 모드 플래그가 제2 값을 갖는 경우)(S2340의 No), 영상 부호화 장치는 상기 현재 크로마 블록에 대한 크로마 MPM 리스트를 구성할 수 있다(S2360). 상기 크로마 MPM 리스트는 상기 현재 크로마 블록에 인접한 적어도 하나의 주변 크로마 블록(e.g. 좌측 주변 블록 및/또는 상측 주변 블록)의 인트라 예측 모드를 이용하여 구성될 수 있다. 상기 주변 크로마 블록은 상기 현재 크로마 블록에 대응하는 루마 블록(대응 루마 블록)의 인트라 예측에 이용된 주변 루마 블록과 동일한 위치에 존재할 수도 있고, 또는 상기 주변 루마 블록과 상이한 위치에 존재할 수도 있다. 또한, 상기 크로마 MPM 리스트는 미리 정해진 방법에 따라 특정 인트라 예측 모드들을 더 포함할 수도 있다. 예를 들어, 상기 제1 모드 및 제2 모드가 크로마 DM이 아닐 경우, 상기 크로마 MPM 리스트는 상기 현재 크로마 블록의 인트라 예측 모드가 상기 대응 루마 블록의 소정 위치(e.g. 중심 위치)의 인트라 예측 모드로 결정됨을 나타내는 크로마 DM을 포함할 수 있다.When the intra prediction mode of the current chroma block is not the second mode (when the second mode flag has a second value) (No in S2340), the image encoding apparatus provides a chroma MPM list for the current chroma block. It can be configured (S2360). The chroma MPM list may be configured using an intra prediction mode of at least one neighboring chroma block (e.g. a left neighboring block and/or an upper neighboring block) adjacent to the current chroma block. The neighboring chroma block may exist at the same position as the neighboring luma block used for intra prediction of the luma block (corresponding luma block) corresponding to the current chroma block, or may exist at a different position from the neighboring luma block. In addition, the chroma MPM list may further include specific intra prediction modes according to a predetermined method. For example, if the first mode and the second mode are not chroma DM, the chroma MPM list indicates that the intra prediction mode of the current chroma block is an intra prediction mode of a predetermined position (eg a center position) of the corresponding luma block. It may include a chroma DM indicating that it is determined.
영상 부호화 장치는 상기 현재 크로마 블록의 인트라 예측 모드 정보를 부호화하여 비트스트림 형태로 출력할 수 있다(S2370). 상기 인트라 예측 모드 정보는 전술한 제1 모드 플래그 및 제2 모드 플래그를 포함할 수 있다. 또한, 상기 인트라 예측 모드 정보는 전술한 MPM 플래그, MPM 인덱스 및/또는 리메이닝 모드 정보를 더 포함할 수 있다. 이 경우, 상기 현재 크로마 블록의 인트라 예측 모드는 제1 모드가 아니므로, 상기 제1 모드 플래그는 제2 값(e.g. 0)을 가질 수 있다. 또한, 상기 현재 크로마 블록의 인트라 예측 모드는 제2 모드가 아니므로, 상기 제2 모드 플래그는 제2 값(e.g. 0)을 가질 수 있다.The image encoding apparatus may encode the intra prediction mode information of the current chroma block and output it in the form of a bitstream (S2370). The intra prediction mode information may include the aforementioned first mode flag and second mode flag. In addition, the intra prediction mode information may further include the above-described MPM flag, MPM index, and/or remaining mode information. In this case, since the intra prediction mode of the current chroma block is not the first mode, the first mode flag may have a second value (e.g. 0). Also, since the intra prediction mode of the current chroma block is not the second mode, the second mode flag may have a second value (e.g. 0).
도 24는 본 개시의 또 다른 실시예에 따른 영상 복호화 장치에서 인트라 예측 모드 결정 절차를 나타낸 흐름도이다.24 is a flowchart illustrating a procedure for determining an intra prediction mode in an image decoding apparatus according to another embodiment of the present disclosure.
도 24의 단계 S2410, S2460 및 S2470은 각각 도 20의 단계 S2010, S2040 및 S2050에 대응될 수 있다. 따라서, 단계 S2410, S2460 및 S2470에 대한 설명은 간략히 하기로 한다.Steps S2410, S2460, and S2470 of FIG. 24 may correspond to steps S2010, S2040, and S2050 of FIG. 20, respectively. Therefore, descriptions of steps S2410, S2460, and S2470 will be briefly described.
도 24를 참조하면, 영상 복호화 장치는 비트스트림으로부터 현재 크로마 블록에 대한 인트라 예측 모드 정보를 획득할 수 있다(S2410). 상기 인트라 예측 모드 정보는 전술한 바와 같이 제1 모드 플래그만을 포함할 수 있다. 또는, 상기 인트라 예측 모드 정보는 제1 모드 플래그 및 제2 모드 플래그를 포함할 수 있다. 또는, 상기 인트라 예측 모드 정보는 제1 모드 플래그, 제2 모드 플래그, MPM 플래그, MPM 인덱스 및/또는 리메이닝 모드 정보를 포함할 수 있다.Referring to FIG. 24, the apparatus for decoding an image may obtain intra prediction mode information for a current chroma block from a bitstream (S2410). As described above, the intra prediction mode information may include only a first mode flag. Alternatively, the intra prediction mode information may include a first mode flag and a second mode flag. Alternatively, the intra prediction mode information may include a first mode flag, a second mode flag, an MPM flag, an MPM index, and/or remaining mode information.
영상 복호화 장치는 상기 제1 모드 플래그가 제1 값(e.g. 1)을 갖는지 여부를 판단할 수 있다(S2420).The image decoding apparatus may determine whether the first mode flag has a first value (e.g. 1) (S2420).
상기 제1 모드 플래그가 상기 제1 값을 갖는 경우(S2420의 Yes), 영상 복호화 장치는 상기 현재 크로마 블록의 인트라 예측 모드를 제1 모드로 결정할 수 있다(S2430). 일 예로, 상기 제1 모드는 상기 현재 크로마 블록의 인트라 예측 모드가 대응 루마 블록의 인트라 예측 모드로 결정됨을 나타내는 크로마 DM일 수 있다. 또 다른 예로, 상기 제1 모드는 플래너(Planar) 모드일 수 있다.When the first mode flag has the first value (Yes in S2420), the image decoding apparatus may determine an intra prediction mode of the current chroma block as the first mode (S2430). For example, the first mode may be a chroma DM indicating that an intra prediction mode of the current chroma block is determined as an intra prediction mode of a corresponding luma block. As another example, the first mode may be a planar mode.
상기 제1 모드 플래그가 상기 제1 값을 갖지 않는 경우(예를 들어, 상기 제1 모드 플래그가 제2 값(e.g. 0)을 갖는 경우)(S2420의 No), 영상 복호화 장치는 상기 제2 모드 플래그가 제1 값(e.g. 1)을 갖는지 여부를 판단할 수 있다(S2440).When the first mode flag does not have the first value (e.g., when the first mode flag has a second value (eg 0)) (No in S2420), the image decoding apparatus is in the second mode It may be determined whether the flag has a first value (eg 1) (S2440).
상기 제2 모드 플래그가 상기 제1 값을 갖는 경우(S2440의 Yes), 영상 복호화 장치는 상기 현재 크로마 블록의 인트라 예측 모드를 제2 모드로 결정할 수 있다(S2450). 일 예로, 상기 제2 모드는 플래너(Planar) 모드일 수 있다. 또 다른 예로, 상기 제2 모드는 크로마 DM일 수 있다.When the second mode flag has the first value (Yes in S2440), the image decoding apparatus may determine the intra prediction mode of the current chroma block as the second mode (S2450). For example, the second mode may be a planar mode. As another example, the second mode may be chroma DM.
상기 현재 크로마 블록의 인트라 예측 모드가 상기 제1 모드 또는 상기 제2 모드로 결정된 경우(S2420의 Yes 또는 S2440의 Yes), 영상 복호화 장치는 상기 현재 크로마 블록에 대한 크로마 MPM 리스트를 구성하지 않을 수 있다.When the intra prediction mode of the current chroma block is determined as the first mode or the second mode (Yes in S2420 or Yes in S2440), the video decoding apparatus may not configure a chroma MPM list for the current chroma block. .
상기 제2 모드 플래그가 상기 제1 값을 갖지 않는 경우(예를 들어, 상기 제2 모드 플래그가 제2 값(e.g. 0)을 갖는 경우)(S2440의 No), 영상 복호화 장치는 상기 현재 크로마 블록에 대한 크로마 MPM 리스트를 구성할 수 있다(S2460). 상기 크로마 MPM 리스트는 영상 부호화 장치에 의해 구성된 크로마 MPM 리스트와 동일하게 구성될 수 있다. 예를 들어, 상기 크로마 MPM 리스트는 상기 현재 크로마 블록에 인접한 주변 크로마 블록(e.g. 좌측 주변 블록 및/또는 상측 주변 블록)의 인트라 예측 모드를 이용하여 구성될 수 있다. 상기 주변 크로마 블록은 상기 현재 크로마 블록에 대응하는 루마 블록(대응 루마 블록)의 인트라 예측에 이용된 주변 루마 블록과 동일한 위치에 존재할 수도 있고, 또는 상기 주변 루마 블록과 상이한 위치에 존재할 수도 있다. 또한, 상기 크로마 MPM 리스트는 미리 정해진 방법에 따라 특정 인트라 예측 모드들을 포함할 수 있다. 예를 들어, 상기 제1 모드 및 제2 모드가 크로마 DM이 아닐 경우, 상기 크로마 MPM 리스트는 상기 현재 크로마 블록의 인트라 예측 모드가 상기 대응 루마 블록의 소정 위치(e.g. 중심 위치)의 인트라 예측 모드로 결정됨을 나타내는 크로마 DM을 포함할 수 있다.When the second mode flag does not have the first value (e.g., when the second mode flag has a second value (eg 0)) (No in S2440), the image decoding apparatus uses the current chroma block A chroma MPM list for can be configured (S2460). The chroma MPM list may be configured in the same way as the chroma MPM list configured by the video encoding apparatus. For example, the chroma MPM list may be configured using an intra prediction mode of a neighboring chroma block (e.g. a left neighboring block and/or an upper neighboring block) adjacent to the current chroma block. The neighboring chroma block may exist at the same position as the neighboring luma block used for intra prediction of the luma block (corresponding luma block) corresponding to the current chroma block, or may exist at a different position from the neighboring luma block. In addition, the chroma MPM list may include specific intra prediction modes according to a predetermined method. For example, if the first mode and the second mode are not chroma DM, the chroma MPM list indicates that the intra prediction mode of the current chroma block is an intra prediction mode of a predetermined position (eg a center position) of the corresponding luma block. It may include a chroma DM indicating that it is determined.
영상 복호화 장치는 상기 인트라 예측 모드 정보 및 상기 크로마 MPM 리스트를 기반으로 상기 현재 크로마 블록의 인트라 예측 모드를 결정할 수 있다(S2470). 구체적으로, MPM 플래그가 제1 값(e.g. 1)을 갖는 경우, 영상 복호화 장치는 상기 크로마 MPM 리스트 내의 MPM 후보들 중에서 MPM 인덱스가 지시하는 후보를 상기 현재 크로마 블록의 인트라 예측 모드로 결정할 수 있다. 이와 달리, 상기 MPM 플래그가 제2 값(e.g. 0)을 갖는 경우, 영상 복호화 장치는 상기 MPM 리스트에 포함되지 않는 나머지 인트라 예측 모드들 중에서 상기 리메이닝 모드 정보가 지시하는 인트라 예측 모드를 상기 현재 크로마 블록의 인트라 예측 모드로 결정할 수 있다.The video decoding apparatus may determine an intra prediction mode of the current chroma block based on the intra prediction mode information and the chroma MPM list (S2470). Specifically, when the MPM flag has a first value (e.g. 1), the video decoding apparatus may determine a candidate indicated by an MPM index among MPM candidates in the chroma MPM list as the intra prediction mode of the current chroma block. In contrast, when the MPM flag has a second value (eg 0), the video decoding apparatus selects an intra prediction mode indicated by the remaining mode information among the remaining intra prediction modes not included in the MPM list. It can be determined as the intra prediction mode of the block.
또 다른 예로서, 상기 현재 크로마 블록의 인트라 예측 타입이 특정 타입(e.g. LIP, MRL 또는 ISP 등)인 경우, 영상 복호화 장치는 상기 MPM 플래그의 값을 복호화하지 않고, 상기 크로마 MPM 리스트 내의 MPM 후보들 중에서 상기 MPM 인덱스가 지시하는 후보를 상기 현재 크로마 블록의 인트라 예측 모드로 결정할 수도 있다.As another example, when the intra prediction type of the current chroma block is a specific type (eg LIP, MRL, ISP, etc.), the video decoding apparatus does not decode the value of the MPM flag, and among MPM candidates in the chroma MPM list A candidate indicated by the MPM index may be determined as an intra prediction mode of the current chroma block.
이상, 도 23 및 도 24를 참조하여 설명한 본 개시의 실시예 #5에서, 상기 제1 모드는 크로마 DM(또는, 플래너(Planar) 모드)이고 상기 제2 모드는 플래너 모드(또는, 크로마 DM)인 경우를 설명하고 있으나, 이는 예시적인 것일 뿐 본 개시의 실시예 #5가 이에 한정되는 것은 아니다. 즉, 상기 제1 모드와 상기 제2 모드는 다양한 인트라 예측 모드들의 조합으로 구성될 수 있다. 예를 들어, 상기 제1 모드는 크로마 DM이고 상기 제2 모드는 DC 모드일 수 있고, 또는 상기 제1 모드는 플래너 모드이고 상기 제2 모드는 DC 모드일 수도 있다.Above, in Embodiment #5 of the present disclosure described with reference to FIGS. 23 and 24, the first mode is a chroma DM (or planar mode) and the second mode is a planar mode (or chroma DM). Although the case of is described, this is only an example, and Embodiment #5 of the present disclosure is not limited thereto. That is, the first mode and the second mode may be configured by a combination of various intra prediction modes. For example, the first mode may be a chroma DM and the second mode may be a DC mode, or the first mode may be a planner mode and the second mode may be a DC mode.
또한, 상기 현재 크로마 블록의 인트라 예측 모드와의 비교 대상이 되는 인트라 예측 모드들의 개수는 다양하게 가변될 수 있다. 예를 들어, 영상 부호화/복호화 장치는 상기 현재 크로마 블록의 인트라 예측 모드가 제3 모드와 동일한지 여부를 지시하는 제3 모드 플래그가 추가적으로 부호화/복호화할 수도 있다.In addition, the number of intra prediction modes to be compared with the intra prediction mode of the current chroma block may be variously changed. For example, the apparatus for encoding/decoding an image may additionally encode/decode a third mode flag indicating whether the intra prediction mode of the current chroma block is the same as the third mode.
본 개시의 실시예 #5에 따르면, 영상 부호화/복호화 장치는 소정의 제1 모드 플래그 및 제2 모드 플래그를 기반으로 현재 크로마 블록에 대한 크로마 MPM 리스트를 구성함으로써, 영상 부호화/복호화 효율을 향상시킬 수 있다.According to Embodiment #5 of the present disclosure, the apparatus for encoding/decoding an image may improve image encoding/decoding efficiency by configuring a chroma MPM list for a current chroma block based on a predetermined first mode flag and a second mode flag. I can.
응용예Application example
이상, 도 10 내지 도 22를 참조하여 설명한 본 개시의 실시예 #1 내지 실시예 #5에 따른 크로마 MPM 리스트는, 현재 크로마 블록의 모든 크로마 성분들에 대해 단일하게 구성될 수도 있고, 또는 상기 크로마 성분들 각각에 대해 별개로 구성될 수도 있다.Above, the chroma MPM list according to the embodiments #1 to #5 of the present disclosure described with reference to FIGS. 10 to 22 may be configured singly for all chroma components of the current chroma block, or the chroma It may be configured separately for each of the components.
예를 들어, 현재 크로마 블록이 제1 크로마 성분(e.g. Cb 성분) 및 제2 크로마 성분(e.g. Cr 성분)을 포함하는 경우, 영상 부호화/복호화 장치는 상기 제1 크로마 성분 및 상기 제2 크로마 성분에 공통적으로 적용되는 하나의 크로마 MPM 리스트를 구성할 수 있다.For example, when the current chroma block includes a first chroma component (eg Cb component) and a second chroma component (eg Cr component), the image encoding/decoding apparatus is One commonly applied chroma MPM list can be configured.
또는, 영상 부호화/복호화 장치는 상기 제1 크로마 성분에 대해 제1 크로마 MPM 리스트를 구성하고, 상기 제2 크로마 성분에 대해 제2 크로마 MPM 리스트를 구성할 수 있다. 이 경우, 상기 제1 크로마 MPM 리스트 및 상기 제2 크로마 MPM 리스트는 다양한 형태로 구성될 수 있다. 예를 들어, 상기 제1 크로마 MPM 리스트 및 상기 제2 크로마 MPM 리스트는 서로 다른 개수의 MPM 후보들을 포함할 수 있다. 또는, 상기 제1 크로마 MPM 리스트 및 상기 제2 크로마 MPM 리스트는 전부 동일한 MPM 후보들을 포함할 수도 있고, 또는 적어도 일부가 상이한 MPM 후보들을 포함할 수도 있다.Alternatively, the image encoding/decoding apparatus may configure a first chroma MPM list for the first chroma component and a second chroma MPM list for the second chroma component. In this case, the first chroma MPM list and the second chroma MPM list may be configured in various forms. For example, the first chroma MPM list and the second chroma MPM list may include different numbers of MPM candidates. Alternatively, the first chroma MPM list and the second chroma MPM list may all include the same MPM candidates, or at least some may include different MPM candidates.
또한, 본 개시의 실시예 #1 내지 실시예 #5에 따른 크로마 MPM 리스트에 포함되는 크로마 DM은 다중 DM(Multiple Direct Mode: MDM)일 수 있다. 상기 다중 DM은 단일 DM을 복수의 모드로 확장하여 사용하는 모드로서, DM 후보 리스트 내의 복수의 DM 후보들 중 하나가 지시하는 인트라 예측 모드가 상기 현재 크로마 블록의 인트라 예측 모드로 결정됨을 나타낼 수 있다. 상기 DM 후보 리스트는, 예를 들어 도 11을 참조하여 전술한 바와 같이 아래의 복수의 DM 후보들을 포함할 수 있다.In addition, the chroma DM included in the chroma MPM list according to the embodiments #1 to #5 of the present disclosure may be a multiple direct mode (MDM). The multiple DM is a mode in which a single DM is extended to a plurality of modes, and may indicate that an intra prediction mode indicated by one of a plurality of DM candidates in a DM candidate list is determined as an intra prediction mode of the current chroma block. The DM candidate list may include a plurality of DM candidates below, for example, as described above with reference to FIG. 11.
- 대응 루마 블록의 CR, TL, TR, BL, BR 위치의 인트라 예측 모드-Intra prediction mode of CR, TL, TR, BL, BR position of corresponding luma block
- 현재 크로마 블록의 주변 블록인 L, A, BL, AR, AL 위치의 인트라 예측 모드-Intra prediction mode at the location of L, A, BL, AR, AL, neighboring blocks of the current chroma block
- 플래너(Planar) 모드 및 DC 모드-Planar mode and DC mode
- 이미 포함된 방향성 모드에 소정의 오프셋(e.g. 1)을 가감하여 도출되는 방향성 모드-Directional mode derived by adding or subtracting a predetermined offset (e.g. 1) to the already included directional mode
- 디폴트 DM 후보 모드: 수직 모드, 수평 모드, 2, 34, 66, 10, 26번 모드(65개 방향성 모드의 경우)-Default DM candidate mode: vertical mode, horizontal mode, 2, 34, 66, 10, 26 modes (in case of 65 directional modes)
- 4개의 디폴트 DM 후보(PLANAR 모드, DC 모드, 수직 모드 및 수평 모드)가 DM 후보 리스트에 포함되지 않은 경우, 포함되지 않은 디폴트 DM 후보로 리스트에 이미 포함된 DM 후보 대체-If four default DM candidates (PLANAR mode, DC mode, vertical mode and horizontal mode) are not included in the DM candidate list, the DM candidates already included in the list are replaced with the default DM candidates that are not included.
본 개시의 예시적인 방법들은 설명의 명확성을 위해서 동작의 시리즈로 표현되어 있지만, 이는 단계가 수행되는 순서를 제한하기 위한 것은 아니며, 필요한 경우에는 각각의 단계가 동시에 또는 상이한 순서로 수행될 수도 있다. 본 개시에 따른 방법을 구현하기 위해서, 예시하는 단계에 추가적으로 다른 단계를 포함하거나, 일부의 단계를 제외하고 나머지 단계를 포함하거나, 또는 일부의 단계를 제외하고 추가적인 다른 단계를 포함할 수도 있다.Although the exemplary methods of the present disclosure are expressed as a series of operations for clarity of description, this is not intended to limit the order in which steps are performed, and each step may be performed simultaneously or in a different order if necessary. In order to implement the method according to the present disclosure, the exemplary steps may include additional steps, other steps may be included excluding some steps, or may include additional other steps excluding some steps.
본 개시에 있어서, 소정의 동작(단계)을 수행하는 영상 부호화 장치 또는 영상 복호화 장치는 해당 동작(단계)의 수행 조건이나 상황을 확인하는 동작(단계)을 수행할 수 있다. 예컨대, 소정의 조건이 만족되는 경우 소정의 동작을 수행한다고 기재된 경우, 영상 부호화 장치 또는 영상 복호화 장치는 상기 소정의 조건이 만족되는지 여부를 확인하는 동작을 수행한 후, 상기 소정의 동작을 수행할 수 있다.In the present disclosure, an image encoding apparatus or an image decoding apparatus performing a predetermined operation (step) may perform an operation (step) of confirming an execution condition or situation of a corresponding operation (step). For example, when it is described that a predetermined operation is performed when a predetermined condition is satisfied, the video encoding apparatus or the video decoding apparatus performs an operation to check whether the predetermined condition is satisfied, and then performs the predetermined operation. I can.
본 개시의 다양한 실시예는 모든 가능한 조합을 나열한 것이 아니고 본 개시의 대표적인 양상을 설명하기 위한 것이며, 다양한 실시예에서 설명하는 사항들은 독립적으로 적용되거나 또는 둘 이상의 조합으로 적용될 수도 있다.Various embodiments of the present disclosure are not intended to list all possible combinations, but to describe representative aspects of the present disclosure, and matters described in the various embodiments may be applied independently or may be applied in combination of two or more.
또한, 본 개시의 다양한 실시예는 하드웨어, 펌웨어(firmware), 소프트웨어, 또는 그들의 결합 등에 의해 구현될 수 있다. 하드웨어에 의한 구현의 경우, 하나 또는 그 이상의 ASICs(Application Specific Integrated Circuits), DSPs(Digital Signal Processors), DSPDs(Digital Signal Processing Devices), PLDs(Programmable Logic Devices), FPGAs(Field Programmable Gate Arrays), 범용 프로세서(general processor), 컨트롤러, 마이크로 컨트롤러, 마이크로 프로세서 등에 의해 구현될 수 있다. In addition, various embodiments of the present disclosure may be implemented by hardware, firmware, software, or a combination thereof. For implementation by hardware, one or more ASICs (Application Specific Integrated Circuits), DSPs (Digital Signal Processors), DSPDs (Digital Signal Processing Devices), PLDs (Programmable Logic Devices), FPGAs (Field Programmable Gate Arrays), general purpose It may be implemented by a processor (general processor), a controller, a microcontroller, a microprocessor, or the like.
또한, 본 개시의 실시예가 적용된 영상 복호화 장치 및 영상 부호화 장치는 멀티미디어 방송 송수신 장치, 모바일 통신 단말, 홈 시네마 비디오 장치, 디지털 시네마 비디오 장치, 감시용 카메라, 비디오 대화 장치, 비디오 통신과 같은 실시간 통신 장치, 모바일 스트리밍 장치, 저장 매체, 캠코더, 주문형 비디오(VoD) 서비스 제공 장치, OTT 비디오(Over the top video) 장치, 인터넷 스트리밍 서비스 제공 장치, 3차원(3D) 비디오 장치, 화상 전화 비디오 장치, 및 의료용 비디오 장치 등에 포함될 수 있으며, 비디오 신호 또는 데이터 신호를 처리하기 위해 사용될 수 있다. 예를 들어, OTT 비디오(Over the top video) 장치로는 게임 콘솔, 블루레이 플레이어, 인터넷 접속 TV, 홈시어터 시스템, 스마트폰, 태블릿 PC, DVR(Digital Video Recoder) 등을 포함할 수 있다.In addition, the image decoding device and the image encoding device to which the embodiment of the present disclosure is applied include a multimedia broadcasting transmission/reception device, a mobile communication terminal, a home cinema video device, a digital cinema video device, a surveillance camera, a video chat device, and a real-time communication device such as video communication , Mobile streaming devices, storage media, camcorders, video-on-demand (VoD) service providers, OTT video (Over the top video) devices, Internet streaming service providers, three-dimensional (3D) video devices, video telephony video devices, and medical use. It may be included in a video device or the like, and may be used to process a video signal or a data signal. For example, an OTT video (Over the top video) device may include a game console, a Blu-ray player, an Internet-connected TV, a home theater system, a smartphone, a tablet PC, and a digital video recorder (DVR).
도 25는 본 개시에 따른 실시예가 적용될 수 있는 컨텐츠 스트리밍 시스템을 예시적으로 나타낸 도면이다.25 is a diagram illustrating a content streaming system to which an embodiment according to the present disclosure can be applied.
도 25에 도시된 바와 같이, 본 개시의 실시예가 적용된 컨텐츠 스트리밍 시스템은 크게 인코딩 서버, 스트리밍 서버, 웹 서버, 미디어 저장소, 사용자 장치 및 멀티미디어 입력 장치를 포함할 수 있다.As shown in FIG. 25, the content streaming system to which the embodiment of the present disclosure is applied may largely include an encoding server, a streaming server, a web server, a media storage device, a user device, and a multimedia input device.
상기 인코딩 서버는 스마트폰, 카메라, 캠코더 등과 같은 멀티미디어 입력 장치들로부터 입력된 컨텐츠를 디지털 데이터로 압축하여 비트스트림을 생성하고 이를 상기 스트리밍 서버로 전송하는 역할을 한다. 다른 예로, 스마트폰, 카메라, 캠코더 등과 같은 멀티미디어 입력 장치들이 비트스트림을 직접 생성하는 경우, 상기 인코딩 서버는 생략될 수 있다.The encoding server serves to generate a bitstream by compressing content input from multimedia input devices such as a smartphone, a camera, and a camcorder into digital data, and transmits it to the streaming server. As another example, when multimedia input devices such as smart phones, cameras, camcorders, etc. directly generate bitstreams, the encoding server may be omitted.
상기 비트스트림은 본 개시의 실시예가 적용된 영상 부호화 방법 및/또는 영상 부호화 장치에 의해 생성될 수 있고, 상기 스트리밍 서버는 상기 비트스트림을 전송 또는 수신하는 과정에서 일시적으로 상기 비트스트림을 저장할 수 있다.The bitstream may be generated by an image encoding method and/or an image encoding apparatus to which an embodiment of the present disclosure is applied, and the streaming server may temporarily store the bitstream while transmitting or receiving the bitstream.
상기 스트리밍 서버는 웹 서버를 통한 사용자 요청에 기반하여 멀티미디어 데이터를 사용자 장치에 전송하고, 상기 웹 서버는 사용자에게 어떠한 서비스가 있는지를 알려주는 매개체 역할을 할 수 있다. 사용자가 상기 웹 서버에 원하는 서비스를 요청하면, 상기 웹 서버는 이를 스트리밍 서버에 전달하고, 상기 스트리밍 서버는 사용자에게 멀티미디어 데이터를 전송할 수 있다. 이때, 상기 컨텐츠 스트리밍 시스템은 별도의 제어 서버를 포함할 수 있고, 이 경우 상기 제어 서버는 상기 컨텐츠 스트리밍 시스템 내 각 장치 간 명령/응답을 제어하는 역할을 수행할 수 있다.The streaming server may transmit multimedia data to a user device based on a user request through a web server, and the web server may serve as an intermediary for notifying the user of a service. When a user requests a desired service from the web server, the web server transmits the request to the streaming server, and the streaming server transmits multimedia data to the user. In this case, the content streaming system may include a separate control server, and in this case, the control server may play a role of controlling a command/response between devices in the content streaming system.
상기 스트리밍 서버는 미디어 저장소 및/또는 인코딩 서버로부터 컨텐츠를 수신할 수 있다. 예를 들어, 상기 인코딩 서버로부터 컨텐츠를 수신하는 경우, 상기 컨텐츠를 실시간으로 수신할 수 있다. 이 경우, 원활한 스트리밍 서비스를 제공하기 위하여 상기 스트리밍 서버는 상기 비트스트림을 일정 시간동안 저장할 수 있다.The streaming server may receive content from a media storage and/or encoding server. For example, when content is received from the encoding server, the content may be received in real time. In this case, in order to provide a smooth streaming service, the streaming server may store the bitstream for a predetermined time.
상기 사용자 장치의 예로는, 휴대폰, 스마트 폰(smart phone), 노트북 컴퓨터(laptop computer), 디지털방송용 단말기, PDA(personal digital assistants), PMP(portable multimedia player), 네비게이션, 슬레이트 PC(slate PC), 태블릿 PC(tablet PC), 울트라북(ultrabook), 웨어러블 디바이스(wearable device, 예를 들어, 워치형 단말기 (smartwatch), 글래스형 단말기 (smart glass), HMD(head mounted display)), 디지털 TV, 데스크탑 컴퓨터, 디지털 사이니지 등이 있을 수 있다.Examples of the user device include a mobile phone, a smart phone, a laptop computer, a digital broadcasting terminal, a personal digital assistant (PDA), a portable multimedia player (PMP), a navigation system, a slate PC, and Tablet PC (tablet PC), ultrabook (ultrabook), wearable device (e.g., smartwatch, glass terminal (smart glass), HMD (head mounted display)), digital TV, desktop There may be computers, digital signage, etc.
상기 컨텐츠 스트리밍 시스템 내 각 서버들은 분산 서버로 운영될 수 있으며, 이 경우 각 서버에서 수신하는 데이터는 분산 처리될 수 있다.Each server in the content streaming system may be operated as a distributed server, and in this case, data received from each server may be distributedly processed.
본 개시의 범위는 다양한 실시예의 방법에 따른 동작이 장치 또는 컴퓨터 상에서 실행되도록 하는 소프트웨어 또는 머신-실행가능한 명령들(예를 들어, 운영체제, 애플리케이션, 펌웨어(firmware), 프로그램 등), 및 이러한 소프트웨어 또는 명령 등이 저장되어 장치 또는 컴퓨터 상에서 실행 가능한 비-일시적 컴퓨터-판독가능 매체(non-transitory computer-readable medium)를 포함한다.The scope of the present disclosure is software or machine-executable instructions (e.g., operating systems, applications, firmware, programs, etc.) that cause an operation according to the method of various embodiments to be executed on a device or computer, and such software or It includes a non-transitory computer-readable medium (non-transitory computer-readable medium) which stores instructions and the like and is executable on a device or a computer.
본 개시에 따른 실시예는 영상을 부호화/복호화하는데 이용될 수 있다.An embodiment according to the present disclosure may be used to encode/decode an image.

Claims (15)

  1. 영상 복호화 장치에 의해 수행되는 영상 복호화 방법으로서,An image decoding method performed by an image decoding apparatus, comprising:
    비트스트림으로부터 현재 크로마 블록의 인트라 예측 모드 정보를 복호화하는 단계;Decoding intra prediction mode information of a current chroma block from the bitstream;
    상기 인트라 예측 모드 정보 및 상기 현재 크로마 블록에 인접한 주변 크로마 블록의 인트라 예측 모드를 기반으로, 상기 현재 크로마 블록의 인트라 예측 모드 후보들을 포함하는 후보 리스트를 구성하는 단계;Constructing a candidate list including intra prediction mode candidates of the current chroma block based on the intra prediction mode information and an intra prediction mode of a neighboring chroma block adjacent to the current chroma block;
    상기 인트라 예측 모드 정보 및 상기 후보 리스트를 기반으로, 상기 현재 크로마 블록의 인트라 예측 모드를 결정하는 단계; 및Determining an intra prediction mode of the current chroma block based on the intra prediction mode information and the candidate list; And
    상기 현재 크로마 블록의 인트라 예측 모드를 기반으로 인트라 예측을 수행함으로써, 상기 현재 크로마 블록에 대한 예측 블록을 생성하는 단계를 포함하는Generating a prediction block for the current chroma block by performing intra prediction based on the intra prediction mode of the current chroma block
    영상 복호화 방법.Video decoding method.
  2. 제1항에 있어서,The method of claim 1,
    상기 인트라 예측 모드 후보들의 개수는, 상기 현재 크로마 블록에 대응하는 루마 블록의 인트라 예측 모드 후보들의 개수보다 작거나 같은The number of intra prediction mode candidates is less than or equal to the number of intra prediction mode candidates of the luma block corresponding to the current chroma block.
    영상 복호화 방법.Video decoding method.
  3. 제1항에 있어서,The method of claim 1,
    크로마 포맷이 4:2:0인 경우의 상기 인트라 예측 모드 후보들의 개수는, 크로마 포맷이 4:2:2 또는 4:4:4인 경우의 상기 인트라 예측 모드 후보들의 개수보다 작거나 같은The number of intra prediction mode candidates when the chroma format is 4:2:0 is less than or equal to the number of intra prediction mode candidates when the chroma format is 4:2:2 or 4:4:4
    영상 복호화 방법.Video decoding method.
  4. 제1항에 있어서,The method of claim 1,
    상기 후보 리스트는, 상기 현재 크로마 블록의 인트라 예측 모드가 상기 현재 크로마 블록에 대응하는 루마 블록의 인트라 예측 모드로 결정되는 것을 나타내는 크로마 DM을 포함하는The candidate list includes a chroma DM indicating that an intra prediction mode of the current chroma block is determined as an intra prediction mode of a luma block corresponding to the current chroma block.
    영상 복호화 방법.Video decoding method.
  5. 제4항에 있어서,The method of claim 4,
    상기 크로마 DM은, 상기 후보 리스트에 첫번째 후보로 포함되는The chroma DM is included as a first candidate in the candidate list.
    영상 복호화 방법.Video decoding method.
  6. 제4항에 있어서,The method of claim 4,
    상기 인트라 예측 모드 정보는, 상기 현재 크로마 블록의 인트라 예측 모드가 상기 크로마 DM인지 여부를 나타내는 제1 모드 플래그를 포함하는The intra prediction mode information includes a first mode flag indicating whether the intra prediction mode of the current chroma block is the chroma DM.
    영상 복호화 방법.Video decoding method.
  7. 제6항에 있어서,The method of claim 6,
    상기 제1 모드 플래그가 제1 값을 갖는 경우,When the first mode flag has a first value,
    상기 후보 리스트를 구성하는 단계는 스킵되고,The step of constructing the candidate list is skipped,
    상기 현재 크로마 블록의 인트라 예측 모드는 상기 크로마 DM으로 결정되는The intra prediction mode of the current chroma block is determined as the chroma DM.
    영상 복호화 방법.Video decoding method.
  8. 제6항에 있어서,The method of claim 6,
    상기 제1 모드 플래그가 제2 값을 갖는 경우,When the first mode flag has a second value,
    상기 인트라 예측 모드 정보는, 상기 현재 크로마 블록의 인트라 예측 모드가 플래너 모드인지 여부를 나타내는 제2 모드 플래그를 더 포함하는The intra prediction mode information further includes a second mode flag indicating whether the intra prediction mode of the current chroma block is a planar mode.
    영상 복호화 방법.Video decoding method.
  9. 제1항에 있어서,The method of claim 1,
    상기 주변 크로마 블록은, 상기 현재 크로마 블록에 대응하는 루마 블록의 인트라 예측 모드를 결정하는데 이용된 주변 루마 블록과 동일한 위치에 존재하는The neighboring chroma block is present at the same position as the neighboring luma block used to determine the intra prediction mode of the luma block corresponding to the current chroma block.
    영상 복호화 방법.Video decoding method.
  10. 제1항에 있어서,The method of claim 1,
    상기 현재 크로마 블록을 포함하는 현재 슬라이스가 소정의 슬라이스 타입을 갖는 경우, 상기 후보 리스트를 구성하는 단계는 스킵되는When the current slice including the current chroma block has a predetermined slice type, the step of constructing the candidate list is skipped.
    영상 복호화 방법.Video decoding method.
  11. 제1항에 있어서,The method of claim 1,
    상기 현재 크로마 블록은 제1 크로마 성분 및 제2 크로마 성분을 포함하고,The current chroma block includes a first chroma component and a second chroma component,
    상기 후보 리스트는 상기 제1 크로마 성분 및 상기 제2 크로마 성분에 대해 동일하게 구성되는The candidate list is configured identically for the first chroma component and the second chroma component
    영상 복호화 방법.Video decoding method.
  12. 제1항에 있어서,The method of claim 1,
    상기 현재 크로마 블록은 제1 크로마 성분 및 제2 크로마 성분을 포함하고,The current chroma block includes a first chroma component and a second chroma component,
    상기 후보 리스트는 상기 제1 크로마 성분 및 상기 제2 크로마 성분에 대해 별개로 구성되는The candidate list is configured separately for the first chroma component and the second chroma component.
    영상 복호화 방법.Video decoding method.
  13. 메모리 및 적어도 하나의 프로세서를 포함하는 영상 복호화 장치로서,An image decoding apparatus comprising a memory and at least one processor,
    상기 적어도 하나의 프로세서는,The at least one processor,
    비트스트림으로부터 현재 크로마 블록의 인트라 예측 모드 정보를 복호화하고,Decode intra prediction mode information of the current chroma block from the bitstream,
    상기 인트라 예측 모드 정보 및 상기 현재 크로마 블록에 인접한 주변 크로마 블록의 인트라 예측 모드를 기반으로, 상기 현재 크로마 블록의 인트라 예측 모드 후보들을 포함하는 후보 리스트를 구성하고,Construct a candidate list including intra prediction mode candidates of the current chroma block based on the intra prediction mode information and an intra prediction mode of a neighboring chroma block adjacent to the current chroma block,
    상기 인트라 예측 모드 정보 및 상기 후보 리스트를 기반으로, 상기 현재 크로마 블록의 인트라 예측 모드를 결정하며,Determine an intra prediction mode of the current chroma block based on the intra prediction mode information and the candidate list,
    상기 현재 크로마 블록의 인트라 예측 모드를 기반으로 인트라 예측을 수행함으로써, 상기 현재 크로마 블록에 대한 예측 블록을 생성하는Generating a prediction block for the current chroma block by performing intra prediction based on the intra prediction mode of the current chroma block
    영상 복호화 장치.Video decoding device.
  14. 영상 부호화 장치에 의해 수행되는 영상 부호화 방법으로서, 상기 영상 부호화 방법은,An image encoding method performed by an image encoding apparatus, wherein the image encoding method comprises:
    현재 크로마 블록의 인트라 예측 모드를 결정하는 단계;Determining an intra prediction mode of a current chroma block;
    상기 현재 크로마 블록의 인트라 예측 모드를 기반으로 인트라 예측을 수행함으로써, 상기 현재 크로마 블록에 대한 예측 블록을 생성하는 단계;Generating a prediction block for the current chroma block by performing intra prediction based on the intra prediction mode of the current chroma block;
    상기 현재 크로마 블록에 인접한 주변 크로마 블록의 인트라 예측 모드를 기반으로, 상기 현재 크로마 블록의 인트라 예측 모드 후보들을 포함하는 후보 리스트를 구성하는 단계; 및Constructing a candidate list including intra prediction mode candidates of the current chroma block based on an intra prediction mode of a neighboring chroma block adjacent to the current chroma block; And
    상기 후보 리스트를 기반으로 상기 현재 크로마 블록의 인트라 예측 모드 정보를 부호화하는 단계를 포함하는And encoding intra prediction mode information of the current chroma block based on the candidate list.
    영상 부호화 방법.Video encoding method.
  15. 제14항의 영상 부호화 방법에 의해 생성된 비트스트림을 전송하는 방법.A method of transmitting a bitstream generated by the video encoding method of claim 14.
PCT/KR2020/011722 2019-09-02 2020-09-01 Video encoding/decoding method and apparatus for performing intra prediction of chroma component, and method for transmitting bitstream WO2021045491A1 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201962894943P 2019-09-02 2019-09-02
US62/894,943 2019-09-02
US201962896512P 2019-09-05 2019-09-05
US62/896,512 2019-09-05

Publications (1)

Publication Number Publication Date
WO2021045491A1 true WO2021045491A1 (en) 2021-03-11

Family

ID=74852025

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2020/011722 WO2021045491A1 (en) 2019-09-02 2020-09-01 Video encoding/decoding method and apparatus for performing intra prediction of chroma component, and method for transmitting bitstream

Country Status (1)

Country Link
WO (1) WO2021045491A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11563963B2 (en) 2020-05-19 2023-01-24 Qualcomm Incorporated Determining whether to code picture header data of pictures of video data in slice headers

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160009109A (en) * 2011-06-17 2016-01-25 미디어텍 인크. Method and apparatus for coding of intra prediction mode
KR20180075422A (en) * 2016-12-26 2018-07-04 에스케이텔레콤 주식회사 Video Encoding and Decoding Using Intra Prediction
US20180205946A1 (en) * 2017-01-13 2018-07-19 Qualcomm Incorporated Coding video data using derived chroma mode
KR20190033559A (en) * 2016-08-15 2019-03-29 퀄컴 인코포레이티드 Intra-video coding using decoupled tree structure
KR20190077298A (en) * 2010-12-23 2019-07-03 삼성전자주식회사 Method and apparatus for decoding image

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190077298A (en) * 2010-12-23 2019-07-03 삼성전자주식회사 Method and apparatus for decoding image
KR20160009109A (en) * 2011-06-17 2016-01-25 미디어텍 인크. Method and apparatus for coding of intra prediction mode
KR20190033559A (en) * 2016-08-15 2019-03-29 퀄컴 인코포레이티드 Intra-video coding using decoupled tree structure
KR20180075422A (en) * 2016-12-26 2018-07-04 에스케이텔레콤 주식회사 Video Encoding and Decoding Using Intra Prediction
US20180205946A1 (en) * 2017-01-13 2018-07-19 Qualcomm Incorporated Coding video data using derived chroma mode

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11563963B2 (en) 2020-05-19 2023-01-24 Qualcomm Incorporated Determining whether to code picture header data of pictures of video data in slice headers

Similar Documents

Publication Publication Date Title
WO2020050678A1 (en) Intra prediction-based image coding method using mpm list and apparatus therefor
WO2020226424A1 (en) Image encoding/decoding method and device for performing mip and lfnst, and method for transmitting bitstream
WO2020251330A1 (en) Image encoding/decoding method and device for utilizing simplified mpm list generation method, and method for transmitting bitstream
WO2020251329A1 (en) Image encoding/decoding method and device having simplified mip mode mapping, and method for transmitting bitstream
WO2020251328A1 (en) Image encoding/decoding method and device based on intra prediction mode conversion, and method for transmitting bitstream
WO2021060847A1 (en) Image encoding/decoding method and device for determining division mode on basis of color format, and method for transmitting bitstream
WO2020036390A1 (en) Method and apparatus for processing image signal
WO2020213931A1 (en) Method and device for coding/decoding image using differential coding of residual coefficient, and method for transmitting bitstream
WO2020130680A1 (en) Method and device for processing video signal by using intra-prediction
WO2021172914A1 (en) Image decoding method for residual coding and device for same
WO2021060844A1 (en) Image encoding/decoding method and device using palette mode, and method for transmitting bitstream
WO2021040410A1 (en) Method for decoding video for residual coding and device therefor
WO2020213976A1 (en) Video encoding/decoding method and device using bdpcm, and method for transmitting bitstream
WO2021006579A1 (en) Video encoding/decoding method and device for deriving weight index for bidirectional prediction of merge candidate, and method for transmitting bitstream
WO2021015536A1 (en) Image encoding/decoding method and apparatus for performing deblocking filtering according to whether palette mode is applied, and method for transmitting bitstream
WO2021060834A1 (en) Method and device for subpicture-based image encoding/decoding, and method for transmitting bitstream
WO2021006697A1 (en) Image decoding method for residual coding and apparatus therefor
WO2020262962A1 (en) Method and apparatus for encoding/decoding video using maximum size limitation of chroma transform block, and method for transmitting bitstream
WO2020185018A1 (en) Method and apparatus for encoding/decoding video and method for transmitting bitstream
WO2020231144A1 (en) Image encoding/decoding method and device using affine tmvp, and method for transmitting bit stream
WO2021045491A1 (en) Video encoding/decoding method and apparatus for performing intra prediction of chroma component, and method for transmitting bitstream
WO2020256485A1 (en) Image encoding/decoding method and device using adaptive size limiting of chroma block and bitstream transmission method
WO2020256488A1 (en) Image encoding/decoding method and apparatus for limiting size of chroma block, and method for transmitting bitstream
WO2021172907A1 (en) Image decoding method and apparatus therefor
WO2021172916A1 (en) Image decoding method and apparatus therefor

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

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

Country of ref document: EP

Kind code of ref document: A1