WO2024063532A1 - Mrl(multi reference line)을 이용한 인트라 예측 모드에 기반한 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장하는 기록 매체 - Google Patents

Mrl(multi reference line)을 이용한 인트라 예측 모드에 기반한 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장하는 기록 매체 Download PDF

Info

Publication number
WO2024063532A1
WO2024063532A1 PCT/KR2023/014265 KR2023014265W WO2024063532A1 WO 2024063532 A1 WO2024063532 A1 WO 2024063532A1 KR 2023014265 W KR2023014265 W KR 2023014265W WO 2024063532 A1 WO2024063532 A1 WO 2024063532A1
Authority
WO
WIPO (PCT)
Prior art keywords
prediction
reference sample
mode
current block
sample
Prior art date
Application number
PCT/KR2023/014265
Other languages
English (en)
French (fr)
Inventor
홍명오
임재현
최장원
Original Assignee
엘지전자 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엘지전자 주식회사 filed Critical 엘지전자 주식회사
Publication of WO2024063532A1 publication Critical patent/WO2024063532A1/ko

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/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/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • 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/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • 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, device, and recording medium for storing bitstreams, and more specifically, to an image encoding/decoding method, device, and video encoding/decoding method based on an intra prediction mode using MRL (Multi Reference Lins). It relates to a recording medium that stores a bitstream generated by a video encoding method/device.
  • MRL Multi Reference Lins
  • HD High Definition
  • UHD Ultra High Definition
  • the purpose of the present disclosure is to provide a video encoding/decoding method and device with improved encoding/decoding efficiency.
  • the present disclosure aims to provide an image encoding/decoding method and device that performs intra prediction mode.
  • the present disclosure aims to provide a video encoding/decoding method and device that performs an intra prediction mode using MRL (Multi Reference Line).
  • MRL Multi Reference Line
  • the present disclosure aims to provide an image encoding/decoding method and device for combining a plurality of prediction blocks generated using MRL.
  • the present disclosure aims to provide a video encoding/decoding method and device that performs Planar mode using MRL.
  • the present disclosure aims to provide an image encoding/decoding method and device for generating samples in planar mode in a template area of TIMD (Template based Intra Mode Derivation) mode.
  • TIMD Temporally based Intra Mode Derivation
  • the present disclosure aims to provide a non-transitory computer-readable recording medium that stores a bitstream generated by the video encoding method or device according to the present disclosure.
  • the present disclosure aims to provide a non-transitory computer-readable recording medium that stores a bitstream that is received and decoded by an image decoding device according to the present disclosure and used to restore an image.
  • the present disclosure aims to provide a method for transmitting a bitstream generated by the video encoding method or device according to the present disclosure.
  • an image decoding method performed by an image decoding apparatus includes the steps of determining reference samples that are separated by a distance of n samples from a current block and reference samples that are separated by a distance of m samples from the current block (the above Reference samples separated by n sample distances include an upper reference sample and an upper right reference sample, and reference samples separated by an m sample distance include a left reference sample and a lower left reference sample) and at least two of the determined reference samples Generating a prediction block of the current block based on a weighted sum of reference samples, wherein the weight used in the weighted sum is determined based on n or m, and n and m may be natural numbers. .
  • generating a prediction block of the current block includes generating prediction blocks of the current block based on a weighted sum of the reference samples and generating the prediction block of the current block based on the prediction blocks. It may include generating the final prediction block of the block.
  • the reference samples are reference samples generated by correcting reference samples separated by the n sample distance based on the n, and reference samples separated by the m sample distance are corrected based on the m. Reference samples generated by doing so may be further included.
  • the reference samples include the upper reference sample, the left reference sample, the upper-right reference sample, the lower-left reference sample, the upper-left reference sample adjacent to the current block, and the lower-left reference sample. Further comprising reference samples generated in a planar mode based on at least two of a reference sample adjacent to or a reference sample adjacent to the upper right reference sample, wherein the planar mode may include a horizontal planar mode and a vertical planar mode. You can.
  • the reference samples include the upper reference sample, the left reference sample, the upper-right reference sample, the lower-left reference sample, the upper-left reference sample adjacent to the current block, and the lower-left reference sample. It further includes reference samples generated by averaging sample values of a plurality of reference samples generated in a planar mode based on at least two of a reference sample adjacent to or a reference sample adjacent to the upper right reference sample, wherein the planar mode is a horizontal Can include planner mode and vertical planner mode.
  • an image decoding method performed by an image decoding apparatus includes deriving a first prediction mode and a second prediction mode for a current block based on a template matching cost (the first prediction mode (the template matching cost calculated based on is less than the template matching cost calculated based on the second prediction mode), the first prediction block based on the first prediction mode and the first reference sample line, and the second prediction mode, and Generating a second prediction block based on a second reference sample line and generating a final prediction block of the current block based on the first prediction block and the second prediction block, wherein the first prediction mode Alternatively, at least one of the first reference sample line and the second reference sample line may be determined based on whether the second prediction mode is a planar mode.
  • the first reference sample line is determined to be the first reference sample line adjacent to the current block, and the second reference sample line is the It can be determined as the rth reference sample line adjacent to the current block.
  • the first reference sample line is determined to be the r-th reference sample line adjacent to the current block, and the second reference sample line is It may be determined as the first reference sample line adjacent to the current block.
  • the first prediction mode and the second prediction mode including a planar mode and a non-planar mode
  • based on the first reference sample line adjacent to the current block A first prediction block generated in planar mode, a second prediction block generated in planar mode based on the r-th reference sample line adjacent to the current block, and a second prediction block generated in non-planar mode based on the r-th reference sample line.
  • the final prediction block can be generated by weighting the third prediction blocks.
  • the template matching cost is calculated based on a prediction block that predicts the template area of the current block in planner mode, and the upper reference sample and upper right reference used for prediction of the template area
  • a sample may be obtained from the first reference sample line adjacent to the upper template area
  • the left reference sample and lower left reference sample used for prediction of the template area may be obtained from the first reference sample line adjacent to the left template area.
  • the template area includes an upper template area and a left template area
  • the lower left reference sample used for prediction of the upper template area is the same as the lower left reference sample of the left template area
  • the upper right reference sample used for prediction of the left template area may be the same as the upper right reference sample of the upper template area
  • the template area includes an upper template area and a left template area
  • the lower left reference sample used for prediction of the upper template area has the same y coordinate as the lower left sample of the upper template area.
  • the upper right reference sample used for prediction of the left template area may have the same x coordinate as the upper right sample of the left template area.
  • the value of the left reference sample and the value of the lower left reference sample used for prediction of the upper template area are corrected based on the width of the left template area, and are used for prediction of the left template area.
  • the value of the upper reference sample and the upper right reference sample used may be corrected based on the height of the upper template area.
  • an image encoding method performed by an image encoding apparatus includes deriving a first prediction mode and a second prediction mode for a current block based on a template matching cost, the first prediction mode and generating a first prediction block based on a first reference sample line, generating a second prediction block based on the second prediction mode and a second reference sample line, and the first prediction block and the second prediction block. generating a final prediction block of the current block based on the first reference sample line or the second reference sample based on whether the first prediction mode or the second prediction mode is a planner mode. At least one of the lines can be determined.
  • it may be a computer-readable recording medium that stores a bitstream generated by an image encoding method.
  • the image encoding method includes a first prediction mode and a second prediction mode for the current block based on a template matching cost. deriving, generating a first prediction block based on the first prediction mode and a first reference sample line, generating a second prediction block based on the second prediction mode and a second reference sample line, and Generating a final prediction block of the current block based on the first prediction block and the second prediction block, and generating the final prediction block of the current block based on whether the first prediction mode or the second prediction mode is a planner mode. At least one of the first reference sample line or the second reference sample line may be determined.
  • an image encoding/decoding method and device with improved encoding/decoding efficiency can be provided.
  • an image encoding/decoding method and device that performs an intra prediction mode can be provided.
  • an image encoding/decoding method and device that performs an intra prediction mode using MRL (Multi Reference Line) can be provided.
  • an image encoding/decoding method and device for combining a plurality of prediction blocks generated using MRL can be provided.
  • an image encoding/decoding method and device that performs Planar mode using MRL can be provided.
  • an image encoding/decoding method and device for generating samples in planar mode in a template area of TIMD (Template based Intra Mode Derivation) mode can be provided.
  • a non-transitory computer-readable recording medium that stores a bitstream generated by the image encoding method or device according to the present disclosure may be provided.
  • a non-transitory computer-readable recording medium that stores a bitstream received and decoded by the video decoding device according to the present disclosure and used for image restoration can be provided.
  • a method for transmitting a bitstream generated by the video encoding method or device according to the present disclosure may be provided.
  • FIG. 1 is a diagram schematically showing a video coding system to which an embodiment according to the present disclosure can be applied.
  • FIG. 2 is a diagram schematically showing a video encoding device to which an embodiment according to the present disclosure can be applied.
  • Figure 3 is a diagram schematically showing an image decoding device to which an embodiment according to the present disclosure can be applied.
  • Figure 4 is a flowchart showing an intra prediction-based video/image encoding method.
  • Figure 5 is a diagram illustrating the configuration of an intra prediction unit according to the present disclosure.
  • Figure 6 is a flowchart showing an intra prediction-based video/image decoding method.
  • Figure 7 is a diagram illustrating the configuration of an intra prediction unit according to the present disclosure.
  • FIGS 8 and 9 are diagrams showing reference sample lines used in MRL (Multi Reference Line)-based intra prediction according to the present disclosure.
  • FIG. 10 is a diagram illustrating a template area and a reference sample used in TIMD (Template based intra mode derivation) according to the present disclosure.
  • FIG. 11 is a diagram illustrating a method of configuring a histogram of gradient (HoG) in decoder-side intra mode derivation (DIMD) mode according to the present disclosure.
  • FIG. 12 is a diagram illustrating a method of configuring a prediction block when applying the DIMD mode according to the present disclosure.
  • Figure 13 is a diagram illustrating an MRL-based intra prediction method according to an embodiment of the present disclosure.
  • FIG. 14 is a diagram illustrating reference samples used to generate prediction samples according to the present disclosure.
  • FIG. 15 is a diagram illustrating reference samples used to generate prediction samples according to another embodiment of the present disclosure.
  • FIG. 16 is a diagram illustrating reference samples used to generate prediction samples according to another embodiment of the present disclosure.
  • FIG. 17 is a diagram illustrating corrected reference samples for generating prediction samples according to an embodiment of the present disclosure.
  • FIG. 18 is a diagram illustrating corrected reference samples for generating prediction samples according to another embodiment of the present disclosure.
  • Figure 19 is a flowchart of an image encoding/decoding method according to the present disclosure.
  • FIG. 20 is a diagram illustrating a reference sample line for generating a prediction block according to the present disclosure.
  • FIG. 21 is a diagram illustrating reference samples used to generate a prediction block based on a Template-based Intra Mode Derivation (TIMD) mode according to an embodiment of the present disclosure.
  • TMD Template-based Intra Mode Derivation
  • FIG. 22 is a diagram illustrating reference samples used to generate a TIMD mode-based prediction block according to another embodiment of the present disclosure.
  • FIG. 23 is a diagram illustrating reference samples used to generate a TIMD mode-based prediction block according to another embodiment of the present disclosure.
  • Figure 24 is a flowchart of an image encoding/decoding method according to the present disclosure.
  • Figure 25 is a diagram illustrating a content streaming system to which an embodiment of the present disclosure can be applied.
  • a component when a component is said to be “connected,” “coupled,” or “connected” to another component, this is not only a direct connection relationship, but also an indirect connection relationship in which another component exists in between. It may also be included.
  • a component when a component is said to "include” or “have” another component, this does not mean excluding the other component, but may further include another component, unless specifically stated to the contrary. .
  • first, second, etc. are used only for the purpose of distinguishing one component from other components, and do not limit the order or importance of components unless specifically mentioned. 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, the second component in one embodiment may be referred to as a first component in another embodiment. It may also be called.
  • distinct components are intended to clearly explain each feature, and do not necessarily mean that the components are separated. That is, a plurality of components may be integrated to form one hardware or software unit, or one component may be distributed to form a plurality of hardware or software units. Accordingly, even if not specifically mentioned, 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, embodiments consisting of a subset of the elements described in one embodiment are also included in the scope of the present disclosure. Additionally, embodiments that include other components in addition to the components described in the various embodiments are also included in the scope of the present disclosure.
  • This disclosure relates to video encoding and decoding, and terms used in this disclosure may have common meanings commonly used in the technical field to which this disclosure belongs, unless they are newly defined in this disclosure.
  • video may mean a set of a series of images over time.
  • a “picture” generally refers to a unit representing one image at a specific time
  • a slice/tile is a coding unit that constitutes a part of a picture, and one picture is one. It may consist of more than one slice/tile. Additionally, a slice/tile may include one or more coding tree units (CTUs).
  • CTUs coding tree units
  • pixel or “pel” may refer to the minimum unit that constitutes one picture (or video). Additionally, “sample” may be used as a term corresponding to a pixel. A sample may generally represent a pixel or a pixel value, and may represent only a pixel/pixel value of a luma component, or only a pixel/pixel value of a chroma component.
  • unit may represent a basic unit of image processing.
  • a unit may include at least one of a specific area of a picture and information related to the area.
  • unit may be used interchangeably with terms such as “sample array,” “block,” or “area.”
  • an MxN block may include a set (or array) of samples (or a sample array) or transform coefficients consisting of M columns and N rows.
  • “current block” may mean one of “current coding block”, “current coding unit”, “encoding target block”, “decoding target block”, or “processing target block”.
  • “current block” may mean “current prediction block” or “prediction target block.”
  • transformation inverse transformation
  • quantization inverse quantization
  • “current block” may mean “current transformation block” or “transformation target block.”
  • filtering filtering target block.”
  • current block may mean a block containing both a luma component block and a chroma component block or “the luma block of the current block” unless explicitly stated as a chroma block.
  • the luma component block of the current block may be expressed by explicitly including an explicit description of the luma component block, such as “luma block” or “current luma block.”
  • the chroma component block of the current block may be expressed including an explicit description of the chroma component block, such as “chroma block” or “current chroma block.”
  • “/” and “,” may be interpreted as “and/or.”
  • “A/B” and “A, B” can be interpreted as “A and/or B.”
  • “A/B/C” and “A, B, C” may mean “at least one of A, B and/or C.”
  • “at least one of A, B, and C” can mean “only A,” “only B,” “only C,” or “any and all combinations of A, B, and C.” Additionally, “at least one A, B or C” or “at least one A, B and/or C” can mean “at least one A, B and C.”
  • Parentheses used in this disclosure may mean “for example.” For example, when “prediction (intra prediction)” is displayed, “intra prediction” may be proposed as an example of “prediction.” In other words, “prediction” in the present disclosure is not limited to “intra prediction,” and “intra prediction” may be proposed as an example of “prediction.” Additionally, even when “prediction (i.e., intra prediction)” is indicated, “intra prediction” may be proposed as an example of “prediction.”
  • FIG. 1 is a diagram schematically showing 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 encoded video and/or image information or data in file or streaming form to the decoding device 20 through a digital storage medium or network.
  • the encoding device 10 may include a video source generator 11, an encoder 12, and a transmitter 13.
  • the decoding device 20 may include a receiving unit 21, a decoding unit 22, and a rendering unit 23.
  • the encoder 12 may be called a video/image encoder
  • the decoder 22 may be called 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 composed of a separate device or external component.
  • the video source generator 11 may acquire video/image through a video/image capture, synthesis, or creation process.
  • the video source generator 11 may include a video/image capture device and/or a video/image generation device.
  • a video/image capture device may include, for example, one or more cameras, a video/image archive containing previously captured video/images, etc.
  • Video/image generating devices may include, for example, computers, tablets, and smartphones, and are capable of generating video/images (electronically). For example, a virtual video/image may be created through a computer, etc., and in this case, the video/image capture process may be replaced by the process of generating related data.
  • the encoder 12 can encode the input video/image.
  • the encoder 12 can perform a series of procedures such as prediction, transformation, and quantization for compression and encoding efficiency.
  • the encoder 12 may output encoded data (encoded video/image information) in the form of a bitstream.
  • the transmitting unit 13 can obtain encoded video/image information or data output in the form of a bitstream, and transmit it to the receiving unit 21 of the decoding device 20 through a digital storage medium or network in the form of a file or streaming. It can be passed to another external object.
  • 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 elements for creating a media file through a predetermined file format and may include elements for transmission through a broadcasting/communication network.
  • the transmission unit 13 may be provided as a separate transmission device from the encoder 120. In this case, the transmission device includes at least one processor that acquires encoded video/image information or data output in the form of a bitstream. It may include a transmission unit that delivers the message in file or streaming form.
  • This receiving unit 21 can extract/receive the bitstream from the storage medium or network and transmit it to the decoding unit 22.
  • the decoder 22 can decode the video/image by performing a series of procedures such as inverse quantization, inverse transformation, and prediction corresponding to the operations of the encoder 12.
  • the rendering unit 23 may render the decrypted video/image.
  • the rendered video/image may be displayed through the display unit.
  • FIG. 2 is a diagram schematically showing a video encoding device to which an embodiment according to the present disclosure can be applied.
  • the image encoding device 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 adder 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 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 a portion of the plurality of components constituting the image encoding device 100 may be implemented as one hardware component (eg, the image encoding device 100 or a processor) depending on the embodiment.
  • 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 device 100 into one or more processing units.
  • the processing unit may be called a coding unit (CU).
  • the coding unit is a coding tree unit (CTU) or largest coding unit (LCU) recursively according to the 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 deeper depth based on a quad tree structure, binary tree structure, and/or ternary tree structure.
  • the quad tree structure may be applied first and the binary tree structure and/or ternary tree structure may be applied later.
  • the coding procedure according to the present disclosure can be performed based on the final coding unit that is no longer divided.
  • the largest coding unit can be directly used as the final coding unit, and a lower-depth coding unit obtained by dividing the maximum coding unit can be used as the final coding unit.
  • the coding procedure may include procedures such as prediction, conversion, 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 each be divided or partitioned from the final coding unit.
  • the prediction unit may be a unit of sample prediction
  • the transform unit may be a unit for deriving a transform coefficient and/or a unit for deriving a residual signal from the transform coefficient.
  • the prediction unit (inter prediction unit 180 or intra prediction unit 185) performs prediction on the block to be processed (current block) and generates a predicted block including prediction samples for the current block. can be created.
  • the prediction unit may determine whether intra prediction or inter prediction is applied on a current block or CU basis.
  • the prediction unit may generate various information regarding prediction of the current block and transmit it to the entropy encoding unit 190.
  • Information about prediction may be encoded in the entropy encoding unit 190 and output in the form of a bitstream.
  • the intra prediction unit 185 can predict the current block by referring to samples in the current picture.
  • the referenced samples may be located in the neighborhood of the current block or may be located away from the current block depending on the intra prediction mode and/or intra prediction technique.
  • Intra prediction modes may include a plurality of non-directional modes and a plurality of directional modes.
  • Non-directional modes may include, for example, DC mode and planar mode.
  • the directional mode may include, for example, 33 directional prediction modes or 65 directional prediction modes, depending on the level 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 the prediction mode applied to the current block 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 in the reference picture.
  • motion information can be predicted in blocks, subblocks, or samples based on the correlation of motion information between neighboring blocks and the 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.
  • neighboring blocks may include a spatial neighboring block existing in the current picture and a temporal neighboring block existing in the reference picture.
  • a reference picture including the reference block and a reference picture including the temporal neighboring block may be the same or different from each other.
  • the temporal neighboring block may be called a collocated reference block, a collocated reference block, or a collocated CU (colCU).
  • a reference picture including the temporal neighboring block may be called a collocated picture (colPic).
  • the inter prediction unit 180 configures a motion information candidate list based on neighboring blocks and provides information indicating which candidate is used to derive the motion vector and/or reference picture index of the current block. can be created. Inter prediction may be performed based on various prediction modes. For example, in the case of skip mode and merge mode, the inter prediction unit 180 may use motion information of neighboring blocks as motion information of the current block.
  • motion vector prediction MVP
  • the motion vector of the neighboring block is used as a motion vector predictor, and the motion vector difference and indicator for the motion vector predictor ( The motion vector of the current block can be signaled by encoding the indicator).
  • Motion vector difference may mean the difference between the motion vector of the current block and the motion vector predictor.
  • the prediction unit may generate a prediction signal based on various prediction methods and/or prediction techniques described later. For example, the prediction unit can not only apply intra prediction or inter prediction for prediction of the current block, but also can apply intra prediction and inter prediction simultaneously.
  • a prediction method that simultaneously applies intra prediction and inter prediction to predict the current block may be called combined inter and intra prediction (CIIP).
  • the prediction unit may perform intra block copy (IBC) to predict the current block.
  • Intra block copy can be used, for example, for video/video coding of content such as games, such as screen content coding (SCC).
  • IBC is a method of predicting the current block using a previously restored reference block in the current picture located a predetermined distance away from the current block.
  • the position of the reference block in the current picture can be encoded as a vector (block vector) corresponding to the predetermined distance.
  • IBC basically performs prediction within the current picture, but can be performed similarly to inter prediction in that it derives a reference block within the current picture. That is, IBC can use at least one of the inter prediction techniques described in this disclosure.
  • the prediction signal generated through the prediction unit may be used to generate a restored signal or 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) to generate a residual signal (residual 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 may be at least one of Discrete Cosine Transform (DCT), Discrete Sine Transform (DST), Karhunen-Loeve Transform (KLT), Graph-Based Transform (GBT), or Conditionally Non-linear Transform (CNT). It can be included.
  • DCT Discrete Cosine Transform
  • DST Discrete Sine Transform
  • KLT Karhunen-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 as a graph.
  • CNT refers to the transformation obtained by generating a prediction signal using all previously reconstructed pixels and obtaining it based on it.
  • the conversion process may be applied to square pixel blocks of the same size, or to non-square blocks of variable size.
  • the quantization unit 130 may quantize the transform coefficients and transmit them to the entropy encoding unit 190.
  • the entropy encoding unit 190 may encode a quantized signal (information about 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 block form into a one-dimensional vector form based on the coefficient scan order, and the quantized transform coefficients based on the quantized transform coefficients in the one-dimensional vector form. Information about transformation coefficients may also be generated.
  • 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 information necessary for video/image restoration (e.g., values of syntax elements, etc.) in addition to the quantized transformation coefficients together or separately.
  • Encoded information (ex. encoded video/picture information) may be transmitted or stored in bitstream form in units of NAL (network abstraction layer) units.
  • the video/image information may further include information about 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). Additionally, the video/image information may further include general constraint information. Signaling information, transmitted information, and/or syntax elements mentioned in this disclosure may be encoded through the above-described encoding procedure and included in the bitstream.
  • the bitstream can be transmitted over a network or 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) that transmits the signal output from the entropy encoding unit 190 and/or a storage unit (not shown) that stores the signal may be provided as an internal/external element of the video encoding device 100, or may be transmitted.
  • the unit may be provided as a component of the entropy encoding unit 190.
  • Quantized transform coefficients output from the quantization unit 130 can be used to generate a residual signal.
  • a residual signal residual block or residual samples
  • inverse quantization and inverse transformation residual block or residual samples
  • the adder 155 adds the reconstructed residual signal to the prediction signal output from the inter prediction unit 180 or the intra prediction unit 185 to generate a reconstructed signal (reconstructed picture, reconstructed block, reconstructed sample array). can be created. If there is no residual for the block to be processed, such as when skip mode is applied, the predicted block can be used as a restoration block.
  • the addition unit 155 may be called a restoration unit or a restoration block generation unit.
  • the generated reconstructed signal can be used for intra prediction of the next processing target block in the current picture, and can also be used for inter prediction of the next picture after filtering, as will be described later.
  • LMCS luma mapping with chroma scaling
  • the filtering unit 160 may improve subjective/objective image quality by applying filtering to the restored signal.
  • the filtering unit 160 may generate a modified reconstructed picture by applying various filtering methods to the reconstructed picture, and store the modified reconstructed picture in the memory 170, specifically the DPB of the memory 170. It can be saved in .
  • the various filtering methods may include, for example, deblocking filtering, sample adaptive offset, adaptive loop filter, bilateral filter, etc.
  • the filtering unit 160 may generate various information regarding filtering and transmit it to the entropy encoding unit 190, as will be described later in the description of each filtering method. Information about filtering may be encoded in the entropy encoding unit 190 and output in the form of a bitstream.
  • the modified reconstructed picture transmitted to the memory 170 can be used as a reference picture in the inter prediction unit 180.
  • the video encoding device 100 can avoid prediction mismatch in the video encoding device 100 and the video decoding device, and can also improve coding efficiency.
  • the DPB in the memory 170 can store a modified reconstructed picture 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 the current picture is derived (or encoded) and/or motion information of blocks in an already reconstructed picture.
  • the stored motion information may be transmitted to the inter prediction unit 180 to be used as motion information of spatial neighboring blocks or motion information of temporal neighboring blocks.
  • the memory 170 can store reconstructed samples of reconstructed blocks in the current picture and transmit them to the intra prediction unit 185.
  • Figure 3 is a diagram schematically showing an image decoding device to which an embodiment according to the present disclosure can be applied.
  • the image decoding device 200 includes an entropy decoding unit 210, an inverse quantization unit 220, an inverse transform unit 230, an adder 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 a portion of the plurality of components constituting the image decoding device 200 may be implemented as one hardware component (eg, the image decoding device 200 or a processor) depending on the embodiment.
  • the memory 170 may include a DPB and may be implemented by a digital storage medium.
  • the image decoding device 200 which has received a bitstream containing video/image information, may restore the image by performing a process corresponding to the process performed by the image encoding device 100 of FIG. 2.
  • the image decoding device 200 may perform decoding using a processing unit applied in the image encoding device 100. Therefore, the processing unit of decoding may be a coding unit, for example.
  • the coding unit may be a coding tree unit or may be obtained by dividing the largest coding unit.
  • the restored video signal decoded and output through the video decoding device 200 can be played through a playback device (not shown).
  • the video decoding device 200 may receive a signal output from the video encoding device 100 of FIG. 2 in the form of a bitstream.
  • the received signal may be decoded through the entropy decoding unit 210.
  • the entropy decoder 210 may parse the bitstream to derive information (eg, video/picture information) necessary for image restoration (or picture restoration).
  • the video/image information may further include information about 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). Additionally, the video/image information may further include general constraint information.
  • the video decoding device 200 may additionally use the information about the parameter set and/or the general restriction information to decode the video.
  • Signaling information, received information, and/or syntax elements mentioned in this disclosure may be obtained from the bitstream by being decoded through the decoding procedure.
  • the entropy decoding unit 210 decodes information in the bitstream based on a coding method such as exponential Golomb coding, CAVLC, or CABAC, and quantizes the values of syntax elements necessary for image restoration and transform coefficients related to residuals. The values can be output.
  • the CABAC entropy decoding method receives bins corresponding to each syntax element in the bitstream, and includes decoding target syntax element information and surrounding blocks and decoding information of the decoding target block or information of symbols/bins decoded in the previous step.
  • the CABAC entropy decoding method can update the context model using information on the decoded symbol/bin for the context model of the next symbol/bin after determining the context model.
  • 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 was performed in the entropy decoding unit 210
  • Dual values that is, quantized transform coefficients and related parameter information, may be input to the inverse quantization unit 220.
  • information about filtering among the information decoded by the entropy decoding unit 210 may be provided to the filtering unit 240.
  • a receiving unit (not shown) that receives the signal output from the video encoding device 100 may be additionally provided as an internal/external element of the video decoding device 200, or the receiving unit may be a component of the entropy decoding unit 210. It may also be provided as an element.
  • the video decoding device 200 may be called a video/image/picture decoding device.
  • the video decoding device 200 may include an information decoder (video/image/picture information decoder) and/or a sample decoder (video/image/picture sample decoder).
  • the information decoder may include an entropy decoding unit 210
  • the sample decoder may include 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 inversely quantize the quantized transform coefficients and output the transform coefficients.
  • the inverse quantization unit 220 may rearrange the quantized transform coefficients into a two-dimensional block form. In this case, the reordering may be performed based on the coefficient scan order performed by the image encoding device 100.
  • the inverse quantization unit 220 may perform inverse quantization on quantized transform coefficients using quantization parameters (eg, quantization step size information) and obtain transform coefficients.
  • the inverse transform unit 230 can inversely 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 information about the prediction output from the entropy decoding unit 210, and determine a specific intra/inter prediction mode (prediction technique). You can.
  • the prediction unit can generate a prediction signal based on various prediction methods (techniques) described later is the same as mentioned in the description of the prediction unit of the video encoding apparatus 100.
  • the intra prediction unit 265 can predict the current block by referring to samples in the current picture.
  • the description of the intra prediction unit 185 can 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 in the reference picture.
  • motion information can be predicted in blocks, subblocks, or samples based on the correlation of motion information between neighboring blocks and the 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.
  • neighboring blocks 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 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 about the prediction may include information indicating the mode (technique) of inter prediction for the current block.
  • the adder 235 restores the obtained residual signal by adding it 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, restored block, restored sample array) can be generated. If there is no residual for the block to be processed, such as when skip mode is applied, the predicted block can be used as a restoration block.
  • the description of the addition unit 155 can be equally applied to the addition unit 235.
  • the addition unit 235 may be called a restoration unit or a restoration block generation unit.
  • the generated reconstructed signal can be used for intra prediction of the next processing target block in the current picture, and can also be used for inter prediction of the next picture after filtering, as will be described later.
  • the filtering unit 240 can improve subjective/objective image quality by applying filtering to the restored signal.
  • the filtering unit 240 may generate a modified reconstructed picture by applying various filtering methods to the reconstructed picture, and store the modified reconstructed picture in the memory 250, specifically the DPB of the memory 250. It can be saved in .
  • the various filtering methods may include, for example, deblocking filtering, sample adaptive offset, adaptive loop filter, bilateral filter, etc.
  • the (corrected) reconstructed picture stored in the DPB of the memory 250 can 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 the current picture is derived (or decoded) and/or motion information of blocks in a picture that has already been reconstructed.
  • the stored motion information can be transmitted to the inter prediction unit 260 to be used as motion information of spatial neighboring blocks or motion information of temporal neighboring blocks.
  • the memory 250 can store reconstructed samples of reconstructed blocks in the current picture and transmit them to the intra prediction unit 265.
  • the embodiments described in the filtering unit 160, the inter prediction unit 180, and the intra prediction unit 185 of the video encoding apparatus 100 are the filtering unit 240 and the intra prediction unit 185 of the video decoding apparatus 200, respectively. It may also be applied to the inter prediction unit 260 and the intra prediction unit 265 in the same or corresponding manner.
  • Intra prediction may refer to prediction that generates prediction samples for the current block based on reference samples within the picture to which the current block belongs (hereinafter, current picture).
  • surrounding reference samples to be used for intra prediction of the current block may be derived.
  • the surrounding reference samples of the current block include samples adjacent/adjacent to the left border of the current block of size nWxnH, a total of 2xnH samples neighboring the bottom-left, and the upper side of the current block ( It may include a sample adjacent to the (top) boundary, a total of 2xnW samples adjacent to the top-right, and one sample adjacent to the top-left of the current block.
  • the peripheral reference samples of the current block may include multiple rows of upper peripheral samples and multiple rows of left peripheral samples.
  • the surrounding reference samples of the current block include a total of nH samples adjacent to the right border of the current block of size nWxnH, a total of nW samples adjacent to the bottom border of the current block, and a total of nW samples adjacent to the bottom border of the current block. It may also include one sample neighboring (bottom-right).
  • the image decoding apparatus 200 may configure surrounding reference samples to be used for prediction by substituting unavailable samples with available samples.
  • surrounding reference samples to be used for prediction can be configured through interpolation of available samples.
  • a prediction sample can be derived based on the average or interpolation of the neighboring reference samples of the current block, and (ii) the neighboring reference sample of the current block Among these, the prediction sample may be derived based on a reference sample that exists in a specific (prediction) direction with respect to the prediction sample. In case (i), it can be called a non-directional mode or non-angular mode, and in case (ii), it can be called a directional mode or angular mode.
  • interpolation is performed between a first neighboring sample located in the prediction direction of the intra prediction mode of the current block based on the prediction target sample of the current block among the neighboring reference samples and a second neighboring sample located in the opposite direction.
  • the prediction sample may be generated through.
  • 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 filtered neighboring reference samples, and at least one derived according to the intra prediction mode among the existing neighboring reference samples, that is, unfiltered neighboring reference samples
  • the prediction sample of the current block may be derived by performing a weighted sum of the reference sample and the temporary prediction sample. This case may be called PDPC (Position dependent intra prediction).
  • a reference sample line with the highest prediction accuracy among multiple reference sample lines surrounding the current block can be selected and a prediction sample can be derived using a reference sample located in the prediction direction from that line.
  • information about the used reference sample line eg, intra_luma_ref_idx
  • MRL multi-reference line intra prediction
  • reference samples may be derived from a reference sample line directly adjacent to the current block, in which case information about the reference sample line may not be signaled.
  • the current block may be divided into vertical or horizontal subpartitions, and intra prediction may be performed based on the same intra prediction mode for each subpartition.
  • surrounding reference samples for intra prediction can be derived in units of each subpartition. That is, the restored sample of the previous subpartition in the encoding/decoding order can be used as a surrounding reference sample of the current subpartition.
  • the intra prediction mode for the current block is equally applied to the subpartitions, but intra prediction performance can be improved in some cases by deriving and using surrounding reference samples for each subpartition.
  • This prediction method may be called intra sub-partitions (ISP) or ISP-based intra prediction.
  • the above-described intra prediction techniques can be distinguished from directional or non-directional intra prediction modes and may be called various terms such as intra prediction type or additional intra prediction mode.
  • the intra prediction technique may include at least one of the above-described LIP, LM, PDPC, MRL, and ISP.
  • a general intra prediction method excluding specific intra prediction types such as LIP, LM, PDPC, MRL, and ISP may be called a normal intra prediction type.
  • the normal intra prediction type can be generally applied when the specific intra prediction type as described above is not applied, and prediction can be performed based on the intra prediction mode described above. Meanwhile, post-processing filtering may be performed on the derived prediction samples as needed.
  • the intra prediction procedure may include an intra prediction mode/type determination step, a peripheral reference sample derivation step, and an intra prediction mode/type-based prediction sample derivation step. Additionally, a post-filtering step may be performed on the derived prediction sample as needed.
  • affine linear weighted intra prediction can be used.
  • the ALWIP may also be called linear weighted intra prediction (LWIP) or matrix weighted intra prediction or matrix based intra prediction (MIP).
  • LWIP linear weighted intra prediction
  • MIP matrix based intra prediction
  • prediction samples for the current block can be derived by further performing horizontal/vertical interpolation procedures.
  • the intra prediction modes used for the MIP may be configured differently from the intra prediction modes used in the above-described LIP, PDPC, MRL, and ISP intra prediction or normal intra prediction.
  • the intra prediction mode for the MIP may be called MIP intra prediction mode, MIP prediction mode, or MIP mode.
  • MIP intra prediction mode MIP prediction mode
  • MIP mode MIP mode
  • the metrics and offset used in the matrix vector multiplication may be set differently depending on the intra prediction mode for the MIP.
  • the matrix may be called a (MIP) weight matrix
  • the offset may be called a (MIP) offset vector or (MIP) bias vector.
  • MIP weight matrix
  • MIP MIP offset vector
  • MIP bias vector
  • Figure 4 is a flowchart showing an intra prediction-based video/image encoding method.
  • the encoding method of FIG. 4 may be performed by the video encoding device 100 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 about the residual samples.
  • the residual information may include information about quantized transform coefficients for the residual samples.
  • the residual samples can be derived as transform coefficients through the transform unit 120 of the image encoding device 100, and the transform coefficients can be derived as quantized transform coefficients through the quantizer 130. there is.
  • Information about the quantized transform coefficients may be encoded in the entropy encoding unit 190 through a residual coding procedure.
  • the image encoding device 100 may perform intra prediction on the current block (S410).
  • the image encoding apparatus 100 determines the intra prediction mode/type for the current block, derives surrounding reference samples of the current block, and then makes prediction within the current block based on the intra prediction mode/type and the surrounding reference samples. Samples can be created.
  • the procedures for determining intra prediction mode/type, deriving peripheral 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 the configuration of the intra prediction unit 185 according to the present disclosure.
  • the intra prediction unit 185 of the image encoding device 100 includes an intra prediction mode/type determination unit 186, a reference sample derivation unit 187, and/or a prediction sample derivation unit 188. may include.
  • the intra prediction mode/type determination unit 186 may determine the intra prediction mode/type for the current block.
  • the reference sample deriving unit 187 may derive surrounding reference samples of the current block.
  • the prediction sample deriving 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 100 may determine a mode/type applied to the current block among a plurality of intra prediction modes/types.
  • the image encoding apparatus 100 may compare rate distortion costs (RD cost) for the intra prediction modes/types and determine the optimal intra prediction mode/type for the current block.
  • RD cost rate distortion costs
  • the image encoding device 100 may perform a prediction sample filtering procedure.
  • Predictive sample filtering can be called 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 encoding apparatus 100 may generate residual samples for the current block based on prediction samples or filtered prediction samples (S420).
  • the image encoding apparatus 100 may derive the residual samples by subtracting the prediction samples from the original samples of the current block. That is, the image encoding device 100 can derive the residual sample value by subtracting the corresponding predicted sample value from the original sample value.
  • the image encoding apparatus 100 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 the intra prediction mode information and/or the intra prediction technique information.
  • the video encoding device 100 may output encoded video information in the form of a bitstream.
  • the output bitstream may be transmitted to the video decoding device 200 through a storage medium or network.
  • the residual information may include residual coding syntax, which will be described later.
  • the image encoding apparatus 100 may transform/quantize the residual samples to derive quantized transform coefficients.
  • the residual information may include information about the quantized transform coefficients.
  • the image encoding apparatus 100 can generate a reconstructed picture (including reconstructed samples and a reconstructed block).
  • the image encoding device 100 may perform inverse quantization/inverse transformation on the quantized transformation coefficients to derive (corrected) residual samples.
  • the reason for performing inverse quantization/inverse transformation again after transforming/quantizing the residual samples in this way is to derive residual samples that are identical to the residual samples derived from the image decoding apparatus 200.
  • the image encoding apparatus 100 may generate a restored block including restored samples for the current block based on the prediction samples and the (corrected) residual samples.
  • a reconstructed picture for the current picture may be generated based on the reconstructed block.
  • an in-loop filtering procedure, etc. may be further applied to the reconstructed picture.
  • Figure 6 is a flowchart showing an intra prediction-based video/image decoding method.
  • the video decoding device 200 may perform operations corresponding to the operations performed by the video encoding device 100.
  • the decoding method of FIG. 6 may be performed by the video decoding apparatus 200 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 200 may derive residual samples for the current block based on the residual information (S640).
  • the inverse quantization unit 220 of the residual processing unit performs inverse quantization to derive transform coefficients based on the quantized transform coefficients derived based on the residual information
  • the inverse transform unit of the residual processing unit ( 230) may perform inverse transformation on the transform coefficients to derive residual samples for the current block.
  • Step S650 may be performed by the addition unit 235 or the restoration unit.
  • the video decoding device 200 may derive the intra prediction mode/type for the current block based on the received prediction information (intra prediction mode/type information) (S610). Additionally, the image decoding apparatus 200 may derive peripheral reference samples of the current block (S620). The image decoding apparatus 200 may generate prediction samples within the current block based on the intra prediction mode/type and the surrounding reference samples (S630). In this case, the image decoding device 200 may perform a prediction sample filtering procedure. Predictive sample filtering can be called 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 video decoding apparatus 200 may generate residual samples for the current block based on the received residual information (S640).
  • the image decoding apparatus 200 may generate restored samples for the current block based on the prediction samples and the residual samples and derive a restored block including the restored 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, etc. may be further applied to the reconstructed picture.
  • FIG. 7 is a diagram illustrating the configuration of the intra prediction unit 265 according to the present disclosure.
  • the intra prediction unit 265 of the image decoding device 200 includes an intra prediction mode/type determination unit 266, a reference sample derivation unit 267, and a prediction sample derivation unit 268. can do.
  • the intra prediction mode/type decision unit 266 determines the intra prediction mode/type information for the current block based on the intra prediction mode/type information generated and signaled by the intra prediction mode/type decision unit 186 of the video encoding device 100. /Determine the type, and the reference sample derivation unit 266 may derive surrounding reference samples of the current block from the reconstructed reference area in the current picture.
  • the prediction sample deriving 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, for example, flag information (ex. intra_luma_mpm_flag) indicating whether MPM (most probable mode) or retaining mode is applied to the current block, When MPM is applied to the current block, the intra prediction mode information may further include index information (ex. intra_luma_mpm_idx) indicating one of the 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 reminding mode information (ex. intra_luma_mpm_remainder) indicating one of the remaining intra prediction modes excluding the intra prediction mode candidates (MPM candidates). More may be included.
  • the image decoding apparatus 200 may determine the intra prediction mode of the current block based on the intra prediction mode information.
  • 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 the intra prediction techniques.
  • the intra prediction technique information includes reference sample line information (ex. intra_luma_ref_idx) indicating whether the MRL is applied to the current block and, if applied, which reference sample line is used, and the ISP ISP flag information (ex. intra_subpartitions_mode_flag) indicating whether the ISP is applied, ISP type information (ex. intra_subpartitions_split_flag) indicating the split type of subpartitions when the ISP is applied, flag information indicating whether PDPC is applied, or application of LIP. It may include at least one of flag information indicating whether or not.
  • the intra prediction type information may include an MIP flag indicating whether MIP is applied to the current block.
  • ISP flag information may be called an ISP application indicator.
  • the intra prediction mode information and/or the intra prediction technique information may be encoded/decoded through the coding method described in this disclosure.
  • the intra prediction mode information and/or the intra prediction technique information may be encoded/decoded through entropy coding (ex. CABAC, CAVLC) based on truncated (rice) binary code.
  • the intra prediction mode may further include a cross-component linear model (CCLM) mode for chroma samples in addition to PLANAR mode, DC mode, and directional intra prediction modes.
  • CCLM mode can be divided into L_CCLM, T_CCLM, and LT_CCLM depending on whether left samples, upper samples, or both are considered to derive CCLM parameters, and can be applied only to chroma components.
  • Intra prediction modes can be indexed, for example, as shown in Table 1 below.
  • the intra prediction type (or additional intra prediction mode, etc.) may include at least one of the above-described LIP, PDPC, MRL, ISP, and MIP.
  • the intra prediction type may be indicated based on intra prediction type information, and the intra prediction type information may be implemented in various forms.
  • the intra prediction type information may include intra prediction type index information indicating one of the intra prediction types.
  • the intra prediction type information includes reference sample line information (ex. intra_luma_ref_idx) indicating whether the MRL is applied to the current block and, if applied, which reference sample line is used, and the ISP determines whether the current block ISP flag information (ex.
  • intra_subpartitions_mode_flag indicating whether the ISP is applied
  • ISP type information (ex. intra_subpartitions_split_flag) indicating the split type of subpartitions when the ISP is applied
  • flag information indicating whether PDCP is applied, or application of LIP. It may include at least one of flag information indicating whether or not.
  • the intra prediction type information may include a MIP flag (or may be called intra_mip_flag) indicating whether MIP is applied to the current block.
  • MDL Multi Reference Line
  • Conventional intra prediction uses only the neighboring samples of the upper first line and the neighboring samples of the left first line of the current block as reference samples for intra prediction.
  • the image encoding device 100 and/or the image decoding device 200 uses surrounding samples located on a sample line that is one to three sample distances away from the upper and/or left side of the current block as reference samples. You can perform intra prediction using .
  • Figures 8 and 9 are diagrams showing reference sample lines used in MRL-based intra prediction according to the present disclosure.
  • Figure 8 may be an example of multiple reference lines.
  • the multiple reference line index (ex. mrl_idx) may be information indicating a reference sample line used for intra prediction.
  • multiple reference line indices can be signaled through coding unit syntax as shown in Table 2 below.
  • a multiple reference line index may be configured in the form of an intra_luma_ref_idx syntax element.
  • intra_luma_ref_idx[x0][y0] may represent the intra reference line index IntraLumaRefLineIdx[x0][y0] as shown in Table 3 below. If intra_luma_ref_idx[x0][y0] does not exist (not signaled), intra_luma_ref_idx[x0][y0] can be inferred to be 0.
  • intra_luma_ref_idx may be called (intra) reference sample line index or mrl_idx. Additionally, intra_luma_ref_idx may also be called intra_luma_ref_line_idx.
  • MRL may not be used for blocks on the first line (row) within a CTU (coding tree unit). This may be to prevent extended reference lines outside the current CTU line from being used. In other words, this may be to prevent external reference samples not included in the current CTU from being used. Additionally, when the above-described additional reference line is used, position dependent intra prediction (PDPC) may not be used. That is, PDPC may not be used when extended reference samples are used.
  • PDPC position dependent intra prediction
  • the MRL method can perform intra prediction using neighboring samples located on a sample line one to three sample distances away from the top and/or left of the current block as reference samples.
  • intra prediction can be performed using neighboring samples located on a sample line twelve samples away from the top and/or left of the current block as reference samples.
  • a plurality of reference sample lines adjacent to the current block may be configured as an extended MRL candidate list.
  • the reference sample line index of the extended MRL list may consist of ⁇ 1, 3, 5, 7, 12 ⁇ .
  • intr_luma_ref_idx When extended MRL is used, intr_luma_ref_idx can be configured as shown in Table 4 below.
  • intra_luma_ref_idx[x0][y0] may indicate an intra reference line index IntraLumaRefLineIdx[x0][y0]. If intra_luma_ref_idx[x0][y0] does not exist (not signaled), intra_luma_ref_idx[x0][y0] can be inferred to be 0.
  • intra_luma_ref_idx may be called (intra) reference sample line index or mrl_idx. Additionally, intra_luma_ref_idx may also be called intra_luma_ref_line_idx.
  • FIG. 10 is a diagram illustrating a template area and a reference sample used in TIMD according to the present disclosure.
  • TIMD calculates the SATD (Sum of absolute transformed difference) between the prediction block predicted from the template area 1010 and the actual restored sample for the IPM (Intra Prediction Mode) intra mode of adjacent intra blocks and inter blocks, and then calculates the most This may be a mode in which a mode with a small SATD is selected as the intra mode of the current block.
  • SATD Standard of absolute transformed difference
  • the present disclosure may select two modes with the lowest SATD and then generate prediction blocks for each of the two selected prediction modes.
  • the prediction block of the current block can be generated by blending the two generated prediction blocks using a weighted sum method.
  • the method of blending the two modes can be performed when the conditions of Equation 1 below are satisfied.
  • costMode1 may mean the mode with the smallest SATD.
  • costMode2 may refer to the mode with the second smallest SATD.
  • the final prediction block can be generated by blending prediction blocks generated using two modes. Otherwise, the final prediction block can be generated using only one mode with the minimum SATD value.
  • the applied weight ratio may be as shown in Equation 2 below.
  • weight1 may mean a weight applied to the prediction block generated based on the mode with the smallest SATD.
  • weight2 may refer to the weight applied to the prediction block generated based on the mode with the second smallest SATD.
  • FIG. 11 is a diagram illustrating a method of configuring a Histogram of Gradient (HoG) in DIMD mode according to the present disclosure.
  • the DIMD mode according to the present disclosure can be derived and used in the video encoding device 100 and the video decoding device 200 without directly transmitting intra prediction mode information.
  • DIMD mode can be performed by obtaining the horizontal gradient and vertical gradient from the second surrounding reference column and row adjacent to the current block, and constructing the HoG from them.
  • HoG can be obtained by applying a Sobel filter using 3 pixel L-shaped columns and rows 1110 around the current block. At this time, if the boundaries of blocks exist in different CTUs, pixels surrounding the current block may not be used for texture analysis.
  • the Sobel filter may also be called a Sobel operator, and may be an efficient filter for detecting edges.
  • a Sobel filter two types can be used: a Sobel filter for the vertical direction and a Sobel filter for the horizontal direction.
  • FIG. 12 is a diagram illustrating a method of configuring a prediction block when applying the DIMD mode according to the present disclosure.
  • the DIMD mode selects two intra modes 1210 with the largest histogram amplitude, and predicts prediction blocks 1220 and 1230 using the selected two intra modes and a planner. This can be performed by blending the prediction blocks 1240 predicted by mode to form the final prediction block 1250.
  • the weight applied when blending prediction blocks may be derived from the amplitude of the histogram (1260).
  • the DIMD flag is transmitted in block units, so it is possible to check whether DIMD is being used.
  • This disclosure may relate to a method of performing planner mode using MRL technology. That is, the present disclosure may be a method of performing a planar mode using previously restored samples located on a sample line separated by a k sample distance from the top and/or left of the current block as reference samples.
  • k may be a natural number.
  • an effective planner prediction block can be generated by performing the planner mode by considering the position of the sample in the current block and the distance between non-adjacent reference samples.
  • Figure 13 is a diagram illustrating an MRL-based intra prediction method according to the present disclosure.
  • the prediction sample p(x, y) 1320 at the (x, y) location in the current block 1310 is the upper reference sample T of (x, y), the upper right reference sample TR, and the left reference. It may be generated using sample L and/or the lower left reference sample BL.
  • the video encoding apparatus 100 and/or the video decoding apparatus 200 may generate a prediction sample 1320 using a horizontal planner mode and/or a vertical planner mode.
  • the horizontal planner mode uses the left reference sample L located at (-k-1, y) and the upper right sample located at (W, -k-1).
  • Predicted sample at position (x,y) with reference sample TR It may be a mode that generates .
  • k may be the distance between the current block and the reference sample line.
  • W may be the width of the current block.
  • prediction sample Can be calculated using Equation 3 below.
  • Equation 3 m h and n h may be weights applied to L and TR, respectively.
  • m h and n h can be calculated using Equation 4 below. That is, m h and n h may be determined based on the distance between the current block and the reference sample line, the size of the current block, and/or the location of the prediction sample.
  • the vertical planner mode uses the upper reference sample T located at (x, -k-1) and the lower left pixel located at (-k-1, H). This may be a mode that generates a predicted sample p v (x,y) at the (x, y) location using the reference sample BL.
  • k may be the distance between the current block and the reference sample line.
  • H may be the height of the current block.
  • the predicted sample p v (x,y) can be calculated using Equation 5 below.
  • Equation 5 m v and n v may be weights applied to T and BL, respectively.
  • m v and n v can be calculated using Equation 6 below. That is, m v and n v may be determined based on the distance between the current block and the reference sample line, the size of the current block, and/or the location of the prediction sample.
  • the final prediction sample according to the present disclosure can be calculated using Equation 7.
  • the final prediction sample may be a prediction sample p h (x,y) generated using the horizontal planner mode.
  • the final prediction sample may be a prediction sample p v (x,y) generated using vertical planner mode.
  • the final prediction sample may be the average of the prediction samples p h (x,y) generated using the horizontal planner mode and the prediction samples p v (x,y) generated using the vertical planner mode.
  • the prediction sample p h (x,y) generated using the horizontal planner mode and the prediction sample p v (x,y) generated using the vertical planner mode are each expressed by Equation It can also be calculated using 8.
  • int h may be a value converted to an integer by approximating m h , and may have a value of 0 to 2 i .
  • int v may be a value converted to an integer by approximating m v and may have a value of 0 to 2 i .
  • i may be a natural number.
  • FIG. 14 is a diagram illustrating reference samples used to generate prediction samples according to an embodiment of the present disclosure.
  • the present disclosure can use a TR sample at the (2 ⁇ -k, -k-1) position, which is 2 ⁇ away from the left reference sample line in the horizontal direction, as shown in FIG. 14.
  • the video encoding device 100 and/or the video decoding device 200 may generate a prediction sample 1420 within the current block 1410 using Equation 3 above.
  • m h may be a weight applied to L.
  • n h may be a weight applied to TR.
  • m h and n h can be calculated using Equation 9 below.
  • the present disclosure can use a BL sample at a (-k-1, 2 ⁇ -k) position that is 2 ⁇ away from the upper reference sample line in the vertical direction to perform the vertical planar mode.
  • the image encoding device 100 and/or the image decoding device 200 may generate a prediction sample 1420 within the current block 1410 using Equation 5 above.
  • m v may be a weight applied to T.
  • n v may be a weight applied to BL.
  • m v and n v can be calculated using Equation 10 below.
  • FIG. 15 is a diagram illustrating reference samples used to generate prediction samples according to another embodiment of the present disclosure.
  • the present disclosure can perform planar mode prediction using previously restored samples located on a reference sample line that is a distance of k samples to the left and 1 sample to the top of the current block 1510 as reference samples. .
  • k may be a natural number.
  • the present disclosure can generate a prediction sample 1520 using Equation 3 above to perform the horizontal planner mode. That is, in order to perform the horizontal planner mode, the image encoding device 100 and/or the image decoding device 200 uses a left reference sample L that is a distance of k samples from the current block 1510 and 1 from the current block 1510.
  • the upper right reference sample TR which is separated by the sample distance, can be used.
  • m h may be a weight applied to L.
  • n h may be a weight applied to TR.
  • m h and n h can be calculated using Equation 11 below.
  • the present disclosure can generate a prediction sample 1520 using Equation 5 above to perform vertical planner mode. That is, in order to perform the vertical planner mode, the image encoding device 100 and/or the image decoding device 200 uses an upper reference sample T that is 1 sample distance away from the current block 1510 and k from the current block 1510.
  • the lower left reference sample BL which is separated by the sample distance, can be used.
  • m v may be a weight applied to T.
  • n v may be a weight applied to BL.
  • m v and n v can be calculated using Equation 12 below.
  • FIG. 16 is a diagram illustrating reference samples used to generate prediction samples according to another embodiment of the present disclosure.
  • the present disclosure can perform planar mode prediction using previously restored samples located on a reference sample line 1 sample distance to the left and k sample distance above the current block 1610 as reference samples. .
  • k may be a natural number.
  • the present disclosure can generate a prediction sample 1620 using Equation 3 above. That is, in order to perform the horizontal planner mode, the image encoding device 100 and/or the image decoding device 200 uses a left reference sample L that is 1 sample distance away from the current block 1610 and k from the current block 1610.
  • the upper right reference sample TR which is separated by the sample distance, can be used.
  • m h may be a weight applied to L.
  • n h may be a weight applied to TR.
  • m h and n h can be calculated using Equation 13 below.
  • the present disclosure can generate a prediction sample 1620 using Equation 5 above to perform vertical planner mode. That is, in order to perform the vertical planner mode, the image encoding device 100 and/or the image decoding device 200 uses an upper reference sample T that is a distance of k samples from the current block 1610 and 1 from the current block 1610.
  • the lower left reference sample BL which is separated by the sample distance, can be used.
  • m v may be a weight applied to T.
  • n v may be a weight applied to BL.
  • m v and n v can be calculated using Equation 14 below.
  • FIG. 17 is a diagram illustrating corrected reference samples for generating prediction samples according to an embodiment of the present disclosure.
  • FIG. 17 is a diagram in which the upper left position of the current block 1710 is defined as (0, 0), and the left and upper areas of the current block 1710 may be previously restored areas.
  • the current block 1710 A more accurate planner prediction mode can be performed using the left reference sample L' adjacent to and the lower left reference sample BL' adjacent to the current block 1710.
  • L' and BL' may be reference samples included in the previously restored area, and may be defined in various ways.
  • L' may be a restored sample at the (-1, y) position
  • BL' may be a restored sample at the (-1, H) position
  • y may be the y coordinate of the prediction sample 1720 to be predicted.
  • H may be the height of the current block 1710.
  • L' may be the previously restored sample L at the (-1-k, y) position. That is, L and L' may be the same.
  • BL' may be a previously restored sample BL at the (-1-k, H) position. That is, BL and BL' may be the same.
  • d may be the distance between the reference sample p and the reference sample q.
  • d may be the difference between the sample value of the reference sample p and the sample value of the reference sample q.
  • L' and BL' may be generated in horizontal planar mode using the left reference sample L and the upper right reference sample TR.
  • L' and BL' may be generated in vertical planar mode using the reference sample q and the lower left reference sample BL.
  • BL' may be generated in vertical planar mode using reference sample q and a reference sample at the (-k-1, H+1) position.
  • L' and BL' may be generated as the average of the horizontal planar mode using the left reference sample L and the upper right reference sample TR and the vertical planar mode using the reference sample q and the lower left reference sample BL. That is, L' and BL' are the sample values of the sample created in horizontal planner mode using the left reference sample L and the upper right reference sample TR, and the sample values generated in vertical planner mode using the reference sample q and the lower left reference sample BL. It can be created as the average of the sample values of the sample.
  • BL' is generated as the average of the horizontal planar mode using the left reference sample L and the upper right reference sample TR and the vertical planar mode using the reference sample q and the reference sample at the (-k-1, H+1) position. It can be. That is, BL' is the sample value of the sample created in horizontal planner mode using the left reference sample L and the upper right reference sample TR, the reference sample q, and the reference sample at the (-k-1, H+1) position. It can be generated as the average of sample values of samples generated in vertical planner mode.
  • Equation 15 To generate the prediction sample 1720 in horizontal planner mode using L' and BL', Equation 15 below can be used.
  • m h may be a weight applied to L'.
  • n h may be a weight applied to TR.
  • m h and n h can be calculated using Equation 16 below.
  • Equation 17 To generate the prediction sample 1720 in vertical planner mode using L' and BL', Equation 17 below can be used.
  • m v may be a weight applied to T.
  • n v may be a weight applied to BL'.
  • Equation 18 Equation 18 below.
  • FIG. 18 is a diagram illustrating corrected reference samples for generating prediction samples according to another embodiment of the present disclosure.
  • FIG. 18 is a diagram in which the upper left position of the current block 1810 is defined as (0, 0), and the left and upper areas of the current block 1810 may be previously restored areas.
  • the current block 1810 A more accurate planner prediction mode can be performed using the upper reference sample T' adjacent to and the upper right reference sample TR' adjacent to the current block 1810.
  • T' and TR' may be reference samples included in the previously restored region, and may be defined in various ways.
  • T' may be a previously restored sample at the (x, -1) position
  • TR' may be a previously restored sample at the (W, -1) position
  • x may be the x-coordinate of the prediction sample 1820 to be predicted.
  • W may be the width of the current block 1810.
  • T' may be a previously restored sample T at the (x, -1-k) position. That is, T' may be the same as T.
  • TR' may be a previously restored sample TR at the (W, -1-k) position. That is, TR' may be the same as TR.
  • d may be the distance between the reference sample p and the reference sample q.
  • d may be the difference between the sample value of the reference sample p and the sample value of the reference sample q.
  • T' and TR' may be generated in horizontal planar mode using the reference sample q and the upper right reference sample TR.
  • T' and TR' may be generated in vertical planar mode using the upper reference sample T and the lower left reference sample BL.
  • TR' may be generated in horizontal planar mode using reference sample q and a reference sample at the (W+1, -k-1) position.
  • T' and TR' may be generated as the average of the horizontal planar mode using the reference sample q and the upper right reference sample TR and the vertical planar mode using the upper reference sample T and the lower left reference sample BL. That is, T' and TR' are the sample values of the sample generated in horizontal planar mode using the reference sample q and the upper-right reference sample TR, and the sample values generated in vertical planar mode using the upper reference sample T and the lower-left reference sample BL. It can be created as the average of the sample values of the sample.
  • TR' is generated as the average of the horizontal planar mode using reference sample q and the reference sample at the (W+1, -k-1) position and the vertical planar mode using the upper reference sample T and the lower left reference sample BL. It can be. That is, TR' is the sample value of the sample created in horizontal planner mode using the reference sample q and the reference sample at the (W+1, -k-1) position, the upper reference sample T, and the lower left reference sample BL. It can be generated as the average of sample values of samples generated in vertical planner mode.
  • Equation 19 To generate the prediction sample 1820 in horizontal planner mode using T' and TR', Equation 19 below can be used.
  • m h may be a weight applied to L.
  • n h may be a weight applied to TR'.
  • m h and n h can be calculated using Equation 20 below.
  • Equation 21 To generate the prediction sample 1820 in vertical planner mode using T' and TR', Equation 21 below can be used.
  • m v may be a weight applied to T'.
  • n v may be a weight applied to BL.
  • Equation 22 m v and n v can be calculated using Equation 22 below.
  • Figure 19 is a flowchart of an image encoding/decoding method according to the present disclosure.
  • the image encoding device 100 and/or the image decoding device 200 may determine reference samples that are n sample distances away from the current block and reference samples that are m sample distances away from the current block (S1910).
  • reference samples separated by an n sample distance may include an upper reference sample and an upper right reference sample.
  • reference samples separated by a m sample distance may include a left reference sample and a lower left reference sample.
  • n and m may be natural numbers.
  • the image encoding apparatus 100 and/or the image decoding apparatus 200 may generate a prediction block of the current block based on a weighted sum of at least two reference samples among the determined reference samples (S1920).
  • the weight used in the weighted sum may be determined based on n and/or m. That is, the weight may be determined based on the distance between the current block and the reference sample.
  • the image encoding apparatus 100 and/or the image decoding apparatus 200 may generate a plurality of prediction blocks based on a weighted sum of at least two reference samples among the determined reference samples. .
  • the final prediction block of the current block may be generated based on the generated prediction blocks.
  • a prediction block can be generated in horizontal planner mode using a left reference sample and an upper right reference sample.
  • the prediction block can be generated in vertical planner mode using the upper reference sample and the lower left reference sample.
  • a final prediction block may be generated based on the weighted sum of the prediction block generated in horizontal planner mode and the prediction block generated in vertical planner mode.
  • reference samples for generating a prediction block may include reference samples generated by correcting reference samples separated by a distance of n samples based on n. Additionally, reference samples for generating a prediction block may include reference samples generated by correcting reference samples separated by a distance of m samples based on m.
  • the upper reference sample and the upper right reference sample can be corrected based on n.
  • a prediction block of the current block may be generated based on at least two of a corrected upper reference sample, a corrected upper right reference sample, a left reference sample, or a lower left reference sample.
  • the left reference sample and the lower left reference sample may be corrected based on m.
  • a prediction block of the current block may be generated based on at least two of a corrected left reference sample, a corrected lower left reference sample, an upper reference sample, or an upper right reference sample. If there are multiple prediction blocks generated, the final prediction block may be generated by weighted summing the multiple prediction blocks.
  • reference samples for generating prediction blocks of the current block include an upper reference sample, a left reference sample, an upper-right reference sample, a lower-left reference sample, an upper-left reference sample adjacent to the current block, and a lower-left reference sample. It may be generated in Planar mode based on at least two of a reference sample adjacent to the reference sample or a reference sample adjacent to the upper right reference sample.
  • reference samples for generating prediction blocks of the current block include an upper reference sample, a left reference sample, an upper-right reference sample, a lower-left reference sample, an upper-left reference sample adjacent to the current block, and a lower-left reference sample. It may further include reference samples generated by averaging sample values of a plurality of reference samples generated in planner mode based on at least two of a reference sample adjacent to the reference sample or a reference sample adjacent to the upper right reference sample.
  • Planar modes mentioned in embodiments according to the present disclosure may include a horizontal planner mode and a vertical planner mode.
  • the present disclosure may relate to a method of blending between a prediction block predicted in planner mode and other prediction blocks when performing MRL mode. If the planner prediction block used for blending is generated using a previously restored reference sample close to the current block, a more accurate planner prediction block can be generated. In other words, the prediction accuracy of a planner prediction block generated using a previously restored reference sample close to the current block may be high.
  • a more accurate planner prediction block can be generated.
  • the planner prediction block may be a prediction block predicted in planner mode.
  • a new predictor can be created by blending the generated planner prediction block with other prediction blocks, and this can improve coding efficiency.
  • the prediction block predicted in planner mode and Blending between different prediction blocks may be performed.
  • the reference sample line used to generate a prediction block using the MRL mode may be a reference sample line with indexes greater than 0, such as reference sample lines with indices 1, 3, 5, 7, and 12.
  • FIG. 20 is a diagram illustrating a reference sample line for generating a prediction block according to the present disclosure.
  • the image encoding device 100 and/or the image decoding device 200 uses a prediction block predicted in planar mode and an r reference sample. You can blend predicted blocks using lines.
  • the prediction block when the first mode induced into the TIMD mode or DIMD mode is the planner mode, the prediction block may be generated using reference sample line 0 regardless of the signaled MRL index. At this time, reference sample line 0 may mean the first reference sample line adjacent to the current block. Additionally, the second mode derived from TIMD mode or DIMD mode can generate a prediction block using r reference sample lines. That is, a prediction block can be generated in the second mode derived from TIMD mode or DIMD mode using the r reference sample line. At this time, r can be determined by an explicitly signaled index. Accordingly, the final prediction block may be generated by blending the prediction block generated using the above-described first mode and the prediction block generated using the second mode.
  • a prediction block when the second mode of the TIMD mode or DIMD mode is the planner mode, a prediction block may be generated using reference sample line 0 regardless of the signaled MRL index. Additionally, the prediction block may be generated using the r reference sample line in the first mode derived from TIMD mode or DIMD mode. That is, a prediction block can be generated in the first mode derived from TIMD mode or DIMD mode using the r reference sample line. At this time, r can be determined by an explicitly signaled index. Accordingly, the final prediction block can be generated by blending the prediction block generated using the above-described first mode and the prediction block generated using the second mode.
  • the first prediction block uses reference sample line 0 regardless of the signaled MRL index. It can be created in planner mode. Additionally, the second prediction block can be generated in planner mode using r reference sample lines. At this time, r can be determined by an explicitly signaled index.
  • the final prediction block is generated by blending the three prediction blocks.
  • the first prediction block can be generated in planner mode using reference sample line 0, regardless of the signaled MRL index.
  • the second prediction block can be generated in planner mode using r reference sample lines.
  • the third prediction block can be generated in a non-planar mode (non-planar mode) using the r reference sample line.
  • the weight used to blend prediction blocks may be an average between prediction blocks, may be determined using a predetermined weight, or may be determined through a selective combination of the above methods. That is, the weight may be determined based on at least one of the average of prediction values between prediction blocks or a predetermined weight. Additionally, the weight may be determined based on whether the first mode of TIMD mode or DIMD mode is planar mode. Alternatively, the weight may be determined based on whether the second mode of TIMD mode or DIMD mode is a planar mode. Alternatively, the weight may be determined based on whether the planar mode is included in the TIMD mode or the modes derived from the DIMD mode. Alternatively, the weight may be determined through a selective combination of the above methods.
  • the planner prediction block used for blending may be a horizontal planner prediction block, a vertical planner prediction block, or an average of the horizontal planner prediction block and the vertical planner prediction block.
  • the planner prediction block may be a prediction block predicted in planner mode.
  • the vertical planner prediction block may be a prediction block predicted in vertical planner mode.
  • the horizontal planner prediction block may be a prediction block predicted in horizontal planner mode.
  • the present disclosure may relate to a method of generating samples in planar mode in the upper template area and left template area of the current block when using TIMD mode. That is, the present disclosure may relate to a method of generating a prediction sample in the upper template area or the left template area of the current block in planner mode.
  • the TIMD mode may be a mode in which the template cost between the prediction block predicted from the template area and the actual restored sample is calculated, and then the mode with the lowest template cost is used as the intra prediction mode of the current block.
  • the mode with the lowest template cost is the planner mode
  • a sample at the (x, y) position in the current block with a width of W and a height of H is used to predict the sample at the (-1, H) position in the planner prediction mode.
  • the lower left energy restoration sample, the upper right energy restoration sample at the (W, -1) position, the upper energy restoration sample at the (x, -1) position, and/or the left energy restoration sample at the (-1, y) position may be used. You can.
  • the template cost for the planner mode can be obtained more accurately by performing the planner mode with a previously restored reference pixel close to the reference pixel used in the current block even in the template area. That is, in order to calculate a more accurate template cost in the template area, the planner mode can be performed using a previously restored reference sample that is close to the reference sample used in the current block.
  • FIG. 21 is a diagram illustrating reference samples used to generate a TIMD mode-based prediction block according to an embodiment of the present disclosure.
  • FIG. 21 is a diagram in which the upper left position of the current block 2110 is defined as (0,0).
  • the upper right reference sample TR of the upper template area 2130 located at (W, -TH-1) and the lower left reference sample of the left template area 2140 located at (-TH-1, H).
  • a prediction sample may be generated in planner mode using BL, a reference sample T above the sample 2120 to be predicted in the template area, and/or a reference sample L to the left of the sample 2120 to be predicted in the template area.
  • TH may be the height of the upper template area 2130.
  • the prediction sample can be generated based on various mathematical equations used in Example 1 described above.
  • FIG. 22 is a diagram illustrating reference samples used to generate a TIMD mode-based prediction block according to another embodiment of the present disclosure.
  • FIG. 22 is a diagram in which the upper left position of the upper template area 2230 is defined as (0,0).
  • an accurate planner prediction sample 2220 can be generated using L' and BL' reference samples at positions adjacent to the upper template area 2230 of the current block 2210.
  • L' and BL' can be defined in various ways.
  • L' may be a previously restored sample at the (-1, y) position.
  • BL' may be a restored sample at the (-1, TH) position.
  • TH may be the height of the upper template area 2230.
  • L' may be L+d
  • BL' may be BL+d.
  • TW may be the width of the left template area or the distance between the current block and the left reference sample line.
  • d may be the distance between the reference sample p and the reference sample q or the difference between the sample value of the reference sample p and the sample value of the reference sample q.
  • the prediction sample 2220 can be generated using Equation 15 and/or Equation 17 above.
  • L' and BL' may be generated in horizontal planar mode using the left reference sample L and the upper right reference sample TR.
  • L' and BL' may be generated in vertical planar mode using the reference sample q and the lower left reference sample BL.
  • BL' can be generated in vertical planar mode using reference sample q and samples of (-TW-1, TH+1).
  • L' and BL' may be generated as the average of the horizontal planar mode using the left reference sample L and the upper right reference sample TR and the vertical planar mode using the reference sample q and the lower left reference sample BL. That is, L' and BL' are the sample values of the sample generated in horizontal planar mode using the left reference sample L and the upper right reference sample TR, and the sample values generated in vertical planar mode using the reference sample q and the lower left reference sample BL. It can be created as the average of the sample values of the sample.
  • BL' is the average of the horizontal planar mode using the lower left reference sample BL and the upper right reference sample TR and the vertical planar mode using the reference sample q and the reference sample at the (-TW-1, TH+1) position.
  • BL' uses the sample value of the sample created in horizontal planner mode using the lower left reference sample BL and the upper right reference sample TR, the reference sample q, and the reference sample at the (-TW-1, TH+1) position.
  • it can be generated as the average of the sample values of the samples generated in vertical planner mode.
  • FIG. 23 is a diagram illustrating reference samples used to generate a TIMD mode-based prediction block according to another embodiment of the present disclosure.
  • FIG. 23 is a diagram in which the upper left position of the left template area 2330 is defined as (0, 0).
  • an accurate planner prediction sample 2320 can be generated using T' and TR' reference samples at positions adjacent to the left template area 2330 of the current block 2310.
  • T' and TR' can be defined in various ways.
  • T' may be a previously restored sample at the (x, -1) position.
  • TR' may be a previously restored sample at the (TW, -1) position.
  • TW may be the width of the left template area 2330.
  • T' may be T+d
  • TR' may be TR+d.
  • TH may be the height of the upper template area or the distance between the current block and the upper reference sample line.
  • d may be the distance between the reference sample p and the reference sample q or the difference between the sample value of the reference sample p and the sample value of the reference sample q.
  • the prediction sample 2320 can be generated in planar mode using T', TR', L, and BL, and can be generated using Equation 19 and/or Equation 21 above.
  • T' and TR' may be generated in horizontal planar mode using the reference sample q and the upper right reference sample TR.
  • T' and TR' may be generated in vertical planar mode using the upper reference sample T and the lower left reference sample BL.
  • TR' may be generated in horizontal planar mode using a reference sample q and a sample at the (TW+1, -TH-1) position.
  • T' and TR' may be generated as the average of the horizontal planar mode using the reference sample q and the upper right reference sample TR and the vertical planar mode using the upper reference sample T and the lower left reference sample BL. That is, T' and TR' are the sample values of the sample generated in horizontal planar mode using the reference sample q and the upper-right reference sample TR, and the sample values generated in vertical planar mode using the upper reference sample T and the lower-left reference sample BL. It can be created as the average of the sample values of the sample.
  • TR' may be generated as the average of the horizontal planar mode using the reference sample q and the sample at the (TW+1, -TH-1) position and the vertical planar mode using the upper reference sample T and the lower left reference sample BL.
  • TR' is the sample value of the sample created in horizontal planner mode using the reference sample q and the sample at the (TW+1, -TH-1) position, and the vertical value using the upper reference sample T and the lower left reference sample BL. It can be created as the average of sample values of samples created in planner mode.
  • the above-described embodiments may include a horizontal planner mode or a vertical planner mode as intra-mode candidates for finding a mode with the lowest template cost in the left and/or upper template area of the TIMD mode. Additionally, if the mode with a low template cost is the horizontal planner mode, the current block can be predicted in the horizontal planner mode. Alternatively, if the mode with the lowest template cost is the vertical planner mode, the current block can be predicted in the vertical planner mode.
  • Figure 24 is a flowchart of an image encoding/decoding method according to the present disclosure.
  • the video encoding apparatus 100 and/or the video decoding apparatus 200 may derive a first prediction mode and a second prediction mode for the current block based on the template matching cost (S2410).
  • the template matching cost calculated based on the first prediction mode may be smaller than the template matching cost calculated based on the second prediction mode.
  • the template matching cost can be calculated based on a prediction block that predicts the template area of the current block in planner mode.
  • the upper reference sample and the upper right reference sample used for prediction of the template area can be obtained from the first reference sample line adjacent to the upper template area, and the left reference sample and lower left reference sample used for prediction of the template area are from the left template. It can be obtained from the first reference sample line adjacent to the region.
  • the template area may include an upper template area and a left template area.
  • the lower left reference sample used for prediction of the upper template area may be the same as the lower left reference sample of the left template area
  • the upper right reference sample used for prediction of the left template area may be the upper right reference sample of the upper template area. It may be the same as .
  • the template area may include an upper template area and a left template area.
  • the lower left reference sample used for prediction of the upper template area may have the same y coordinate as the lower left sample of the upper template area
  • the upper right reference sample used for prediction of the left template area may be at the upper right of the left template area. It may have the same x-coordinate as the sample.
  • the value of the left reference sample and the lower left reference sample used for prediction of the upper template area can be corrected based on the width of the left template area, and the value of the upper reference sample used for prediction of the left template area and the upper right
  • the value of the reference sample can be corrected based on the height of the upper template area.
  • the image encoding device 100 and/or the image decoding device 200 may generate a first prediction block based on a first prediction mode and a first reference sample line and a second prediction block based on a second prediction mode and a second reference sample line. Can be created (S2420).
  • at least one of the first reference sample line and the second reference sample line may be determined based on whether the first prediction mode or the second prediction mode is a planar mode.
  • the first reference sample line when the first prediction mode is the planar mode, the first reference sample line is determined to be the first reference sample line adjacent to the current block, and the second reference sample line is determined to be the r-th adjacent to the current block. It can be determined from a reference sample line.
  • the second prediction mode when the second prediction mode is the planar mode, the first reference sample line is determined to be the r-th reference sample line adjacent to the current block, and the second reference sample line is determined to be the r-th reference sample line adjacent to the current block. It can be determined from a reference sample line.
  • the image encoding apparatus 100 and/or the image decoding apparatus 200 may generate the final prediction block of the current block based on the first prediction block and the second prediction block (S2430).
  • the planar mode is based on the first reference sample line adjacent to the current block. Weight the generated first prediction block, the second prediction block generated in planar mode based on the r-th reference sample line adjacent to the current block, and the third prediction block generated in non-planar mode based on the r-th reference sample line. By doing so, the final prediction block can be generated. Weighted sum according to the present disclosure can be performed based on the equations used in the above-described embodiments.
  • Exemplary methods of the present disclosure are expressed as a series of operations for clarity of explanation, but this is not intended to limit the order in which the steps are performed, and each step may be performed simultaneously or in a different order, if necessary.
  • other steps may be included in addition to the exemplified steps, some steps may be excluded and the remaining steps may be included, or some steps may be excluded and additional other steps may be included.
  • the video encoding device 100 or the video decoding device 200 that performs a predetermined operation may perform an operation (step) of checking performance conditions or situations of the corresponding operation (step).
  • the video encoding device 100 or the video decoding device 200 performs an operation to check whether the predetermined condition is satisfied, and then performs the operation to determine whether the predetermined condition is satisfied.
  • Predetermined operations can be performed.
  • 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 can be implemented by a processor (general processor), controller, microcontroller, microprocessor, etc.
  • the video decoding device 200 and the video encoding device 100 to which the embodiment of the present disclosure is applied include multimedia broadcasting transmission and reception devices, mobile communication terminals, home cinema video devices, digital cinema video devices, surveillance cameras, video chat devices, and video chat devices.
  • Real-time communication devices such as telecommunications, mobile streaming devices, storage media, camcorders, video on demand (VoD) service providing devices, OTT video (Over the top video) devices, Internet streaming service providing devices, three-dimensional (3D) video devices, images It may be included in telephone video devices, medical video devices, etc., and may be used to process video signals or data signals.
  • OTT video (Over the top video) devices may include game consoles, Blu-ray players, Internet-connected TVs, home theater systems, smartphones, tablet PCs, and DVRs (Digital Video Recorders).
  • Figure 25 is a diagram illustrating a content streaming system to which an embodiment according to the present disclosure can be applied.
  • a content streaming system to which an embodiment of the present disclosure is applied may largely include an encoding server, a streaming server, a web server, a media storage, a user device, and a multimedia input device.
  • the encoding server compresses content input from multimedia input devices such as smartphones, cameras, camcorders, etc. into digital data, generates a bitstream, and transmits it to the streaming server.
  • multimedia input devices such as smartphones, 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 device 100 to which an embodiment of the present disclosure is applied, and the streaming server may temporarily store the bitstream in the process of transmitting or receiving the bitstream. You can.
  • the streaming server transmits multimedia data to the user device based on a user request through a web server, and the web server can serve as a medium to inform the user of what services are available.
  • the web server delivers it to a streaming server, and the streaming server can transmit multimedia data to the user.
  • the content streaming system may include a separate control server, and in this case, the control server may control commands/responses between each device in the content streaming system.
  • the streaming server may receive content from a media repository and/or encoding server. For example, when receiving content from the encoding server, the content can 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 certain period of time.
  • Examples of the user devices include mobile phones, smart phones, laptop computers, digital broadcasting terminals, personal digital assistants (PDAs), portable multimedia players (PMPs), navigation, slate PCs, Tablet PC, ultrabook, wearable device (e.g. smartwatch, smart glass, head mounted display), digital TV, desktop There may be computers, digital signage, etc.
  • PDAs personal digital assistants
  • PMPs portable multimedia players
  • navigation slate PCs
  • Tablet PC ultrabook
  • wearable device e.g. smartwatch, smart glass, 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 system, application, firmware, program, etc.) that cause operations according to the methods of various embodiments to be executed on a device or computer, and such software or It includes non-transitory computer-readable medium in which instructions, etc. are stored and can be executed on a device or computer.
  • software or machine-executable instructions e.g., operating system, application, firmware, program, etc.
  • Embodiments according to the present disclosure can be used to encode/decode images.

Landscapes

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

Abstract

영상 부호화/복호화 방법 및 장치가 제공된다. 본 개시에 따른 영상 복호화 방법은, 현재 블록으로부터 n 샘플 거리만큼 떨어진 참조 샘플들과 상기 현재 블록으로부터 m 샘플 거리만큼 떨어진 참조 샘플들을 결정하는 단계 (상기 n 샘플 거리만큼 떨어진 참조 샘플들은 상측 참조 샘플 및 우상측 참조 샘플을 포함하고, 상기 m 샘플 거리만큼 떨어진 참조 샘플들은 좌측 참조 샘플 및 좌하측 참조 샘플을 포함함) 및 상기 결정된 참조 샘플들 중 적어도 두 개의 참조 샘플의 가중합에 기반하여 상기 현재 블록의 예측 블록을 생성하는 단계를 포함하되, 상기 가중합에 이용되는 가중치는 상기 n 또는 m에 기반하여 결정되고, 상기 n 및 m은 자연수일 수 있다.

Description

MRL(MULTI REFERENCE LINE)을 이용한 인트라 예측 모드에 기반한 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장하는 기록 매체
본 개시는 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장하는 기록 매체에 관한 것으로서, 보다 상세하게는 MRL(Multi Reference Lins)을 이용한 인트라 예측 모드에 기반한 영상 부호화/복호화 방법, 장치 및 본 개시의 영상 부호화 방법/장치에 의해 생성된 비트스트림을 저장하는 기록 매체에 관한 것이다.
최근 HD(High Definition) 영상 및 UHD(Ultra High Definition) 영상과 같은 고해상도, 고품질의 영상에 대한 수요가 다양한 분야에서 증가하고 있다. 영상 데이터가 고해상도, 고품질이 될수록 기존의 영상 데이터에 비해 상대적으로 전송되는 정보량 또는 비트량이 증가하게 된다. 전송되는 정보량 또는 비트량의 증가는 전송 비용과 저장 비용의 증가를 초래한다.
이에 따라, 고해상도, 고품질 영상의 정보를 효과적으로 전송하거나 저장하고, 재생하기 위한 고효율의 영상 압축 기술이 요구된다.
본 개시는 부호화/복호화 효율이 향상된 영상 부호화/복호화 방법 및 장치를 제공하는 것을 목적으로 한다.
또한, 본 개시는 인트라 예측 모드를 수행하는 영상 부호화/복호화 방법 및 장치를 제공하는 것을 목적으로 한다.
또한, 본 개시는 MRL(Multi Reference Line)을 이용한 인트라 예측 모드를 수행하는 영상 부호화/복호화 방법 및 장치를 제공하는 것을 목적으로 한다.
또한, 본 개시는 MRL을 이용하여 생성된 복수의 예측 블록을 결합(fusion)하는 영상 부호화/복호화 방법 및 장치를 제공하는 것을 목적으로 한다.
또한, 본 개시는 MRL을 이용하여 플래너(Planar) 모드를 수행하는 영상 부호화/복호화 방법 및 장치를 제공하는 것을 목적으로 한다.
또한, 본 개시는 TIMD(Template based Intra Mode Derivation) 모드의 템플릿 영역에서 플래너 모드로 샘플을 생성하는 영상 부호화/복호화 방법 및 장치를 제공하는 것을 목적으로 한다.
또한, 본 개시는 본 개시에 따른 영상 부호화 방법 또는 장치에 의해 생성된 비트스트림을 저장하는 비일시적 컴퓨터 판독 가능한 기록 매체를 제공하는 것을 목적으로 한다.
또한, 본 개시는 본 개시에 따른 영상 복호화 장치에 의해 수신되고 복호화되어 영상의 복원에 이용되는 비트스트림을 저장하는 비일시적 컴퓨터 판독 가능한 기록 매체를 제공하는 것을 목적으로 한다.
또한, 본 개시는 본 개시에 따른 영상 부호화 방법 또는 장치에 의해 생성된 비트스트림을 전송하는 방법을 제공하는 것을 목적으로 한다.
본 개시에서 이루고자 하는 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급하지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
본 개시의 일 실시예에 따르면, 영상 복호화 장치에 의해 수행되는 영상 복호화 방법으로서, 현재 블록으로부터 n 샘플 거리만큼 떨어진 참조 샘플들과 상기 현재 블록으로부터 m 샘플 거리만큼 떨어진 참조 샘플들을 결정하는 단계 (상기 n 샘플 거리만큼 떨어진 참조 샘플들은 상측 참조 샘플 및 우상측 참조 샘플을 포함하고, 상기 m 샘플 거리만큼 떨어진 참조 샘플들은 좌측 참조 샘플 및 좌하측 참조 샘플을 포함함) 및 상기 결정된 참조 샘플들 중 적어도 두 개의 참조 샘플의 가중합에 기반하여 상기 현재 블록의 예측 블록을 생성하는 단계를 포함하되, 상기 가중합에 이용되는 가중치는 상기 n 또는 m에 기반하여 결정되고, 상기 n 및 m은 자연수일 수 있다.
본 개시의 일 실시예에 따르면, 상기 현재 블록의 예측 블록을 생성하는 단계는, 상기 참조 샘플들의 가중합에 기반하여 상기 현재 블록의 예측 블록들을 생성하는 단계 및 상기 예측 블록들에 기반하여 상기 현재 블록의 최종 예측 블록을 생성하는 단계를 포함할 수 있다.
본 개시의 일 실시예에 따르면, 상기 참조 샘플들은 상기 n 샘플 거리만큼 떨어진 참조 샘플들을 상기 n에 기반하여 보정함으로써 생성된 참조 샘플들 및 상기 m 샘플 거리만큼 떨어진 참조 샘플들을 상기 m에 기반하여 보정함으로써 생성된 참조 샘플들을 더 포함할 수 있다.
본 개시의 일 실시예에 따르면, 상기 참조 샘플들은 상기 상측 참조 샘플, 상기 좌측 참조 샘플, 상기 우상측 참조 샘플, 상기 좌하측 참조 샘플, 상기 현재 블록에 인접한 좌상측 참조 샘플, 상기 좌하측 참조 샘플에 인접한 참조 샘플 또는 상기 우상측 참조 샘플에 인접한 참조 샘플 중 적어도 두 개에 기반하여 플래너(planar) 모드로 생성된 참조 샘플들을 더 포함하고, 상기 플래너 모드는 수평 플래너 모드 및 수직 플래너 모드를 포함할 수 있다.
본 개시의 일 실시예에 따르면, 상기 참조 샘플들은 상기 상측 참조 샘플, 상기 좌측 참조 샘플, 상기 우상측 참조 샘플, 상기 좌하측 참조 샘플, 상기 현재 블록에 인접한 좌상측 참조 샘플, 상기 좌하측 참조 샘플에 인접한 참조 샘플 또는 상기 우상측 참조 샘플에 인접한 참조 샘플 중 적어도 두 개에 기반하여 플래너 모드로 생성된 복수의 참조 샘플들의 샘플 값을 평균하여 생성된 참조 샘플들을 더 포함하고, 상기 플래너 모드는 수평 플래너 모드 및 수직 플래너 모드를 포함할 수 있다.
본 개시의 일 실시예에 따르면, 영상 복호화 장치에 의해 수행되는 영상 복호화 방법으로서, 템플릿 매칭 비용에 기반하여 현재 블록에 대한 제1 예측 모드 및 제2 예측 모드를 유도하는 단계 (상기 제1 예측 모드에 기반하여 계산된 템플릿 매칭 비용이 상기 제2 예측 모드에 기반하여 계산된 템플릿 매칭 비용보다 작음), 상기 제1 예측 모드 및 제1 참조 샘플 라인에 기반한 제1 예측 블록 및 상기 제2 예측 모드 및 제2 참조 샘플 라인에 기반한 제2 예측 블록을 생성하는 단계 및 상기 제1 예측 블록 및 상기 제2 예측 블록에 기반하여 상기 현재 블록의 최종 예측 블록을 생성하는 단계를 포함하되, 상기 제1 예측 모드 또는 상기 제2 예측 모드가 플래너 모드인지의 여부에 기반하여 상기 제1 참조 샘플 라인 또는 상기 제2 참조 샘플 라인 중 적어도 하나가 결정될 수 있다.
본 개시의 일 실시예에 따르면, 상기 제1 예측 모드가 플래너 모드인 것에 기반하여, 상기 제1 참조 샘플 라인은 상기 현재 블록에 인접한 첫번째 참조 샘플 라인으로 결정되고, 상기 제2 참조 샘플 라인은 상기 현재 블록에 인접한 r 번째 참조 샘플 라인으로 결정될 수 있다.
본 개시의 일 실시예에 따르면, 상기 제2 예측 모드가 플래너 모드인 것에 기반하여, 상기 제1 참조 샘플 라인은 상기 현재 블록에 인접한 r 번째 참조 샘플 라인으로 결정되고, 상기 제2 참조 샘플 라인은 상기 현재 블록에 인접한 첫번째 참조 샘플 라인으로 결정될 수 있다.
본 개시의 일 실시예에 따르면, 상기 제1 예측 모드 및 상기 제2 예측 모드가 플래너 모드와 비플래너(non-Planar) 모드를 포함하는 것에 기반하여, 상기 현재 블록에 인접한 첫번째 참조 샘플 라인에 기반하여 플래너 모드로 생성된 제1 예측 블록, 상기 현재 블록에 인접한 r번째 참조 샘플 라인에 기반하여 플래너 모드로 생성된 제2 예측 블록 및 상기 r번째 참조 샘플 라인에 기반하여 상기 비플래너 모드로 생성된 제3 예측 블록을 가중합함으로써 상기 최종 예측 블록을 생성할 수 있다.
본 개시의 일 실시예에 따르면, 상기 템플릿 매칭 비용은, 상기 현재 블록의 템플릿 영역을 플래너 모드로 예측한 예측 블록에 기반하여 계산되며, 상기 템플릿 영역의 예측에 이용되는 상측 참조 샘플 및 우상측 참조 샘플은 상측 템플릿 영역에 인접한 첫번째 참조 샘플 라인으로부터 획득되고, 상기 템플릿 영역의 예측에 이용되는 좌측 참조 샘플 및 좌하측 참조 샘플은 좌측 템플릿 영역에 인접한 첫번째 참조 샘플 라인으로부터 획득될 수 있다.
본 개시의 일 실시예에 따르면, 상기 템플릿 영역은 상측 템플릿 영역 및 좌측 템플릿 영역을 포함하고, 상기 상측 템플릿 영역의 예측에 이용되는 좌하측 참조 샘플은 상기 좌측 템플릿 영역의 좌하측 참조 샘플과 동일하고, 상기 좌측 템플릿 영역의 예측에 이용되는 우상측 참조 샘플은 상기 상측 템플릿 영역의 우상측 참조 샘플과 동일할 수 있다.
본 개시의 일 실시예에 따르면, 상기 템플릿 영역은 상측 템플릿 영역 및 좌측 템플릿 영역을 포함하고, 상기 상측 템플릿 영역의 예측에 이용되는 좌하측 참조 샘플은 상기 상측 템플릿 영역의 좌하측 샘플과 동일한 y좌표를 갖고, 상기 좌측 템플릿 영역의 예측에 이용되는 우상측 참조 샘플은 상기 좌측 템플릿 영역의 우상측 샘플과 동일한 x좌표를 가질 수 있다.
본 개시의 일 실시예에 따르면, 상기 상측 템플릿 영역의 예측에 이용되는 좌측 참조 샘플의 값 및 좌하측 참조 샘플의 값은 상기 좌측 템플릿 영역의 너비에 기반하여 보정되고, 상기 좌측 템플릿 영역의 예측에 이용되는 상측 참조 샘플의 값 및 우상측 참조 샘플의 값은 상기 상측 템플릿 영역의 높이에 기반하여 보정될 수 있다.
본 개시의 일 실시예에 따르면, 영상 부호화 장치에 의해 수행되는 영상 부호화 방법으로서, 템플릿 매칭 비용에 기반하여 현재 블록에 대한 제1 예측 모드 및 제2 예측 모드를 유도하는 단계, 상기 제1 예측 모드 및 제1 참조 샘플 라인에 기반한 제1 예측 블록을 생성하는 단계, 상기 제2 예측 모드 및 제2 참조 샘플 라인에 기반한 제2 예측 블록을 생성하는 단계 및 상기 제1 예측 블록 및 상기 제2 예측 블록에 기반하여 상기 현재 블록의 최종 예측 블록을 생성하는 단계를 포함하고, 상기 제1 예측 모드 또는 상기 제2 예측 모드가 플래너 모드인지의 여부에 기반하여 상기 제1 참조 샘플 라인 또는 상기 제2 참조 샘플 라인 중 적어도 하나가 결정될 수 있다.
본 개시의 일 실시예에 따르면, 영상 부호화 방법에 의해 생성된 비트스트림을 저장한 컴퓨터 판독 가능한기록 매체일 수 있다.
본 개시의 일 실시예에 따르면, 영상 부호화 방법에 의해 생성된 비트스트림을 전송하는 방법에 있어서, 상기 영상 부호화 방법은, 템플릿 매칭 비용에 기반하여 현재 블록에 대한 제1 예측 모드 및 제2 예측 모드를 유도하는 단계, 상기 제1 예측 모드 및 제1 참조 샘플 라인에 기반한 제1 예측 블록을 생성하는 단계, 상기 제2 예측 모드 및 제2 참조 샘플 라인에 기반한 제2 예측 블록을 생성하는 단계 및 상기 제1 예측 블록 및 상기 제2 예측 블록에 기반하여 상기 현재 블록의 최종 예측 블록을 생성하는 단계를 포함하고, 상기 제1 예측 모드 또는 상기 제2 예측 모드가 플래너 모드인지의 여부에 기반하여 상기 제1 참조 샘플 라인 또는 상기 제2 참조 샘플 라인 중 적어도 하나가 결정될 수 있다.
본 개시에 따르면, 부호화/복호화 효율이 향상된 영상 부호화/복호화 방법 및 장치가 제공될 수 있다.
또한, 본 개시에 따르면, 인트라 예측 모드를 수행하는 영상 부호화/복호화 방법 및 장치가 제공될 수 있다.
또한, 본 개시에 따르면, MRL(Multi Reference Line)을 이용한 인트라 예측 모드를 수행하는 영상 부호화/복호화 방법 및 장치가 제공될 수 있다.
또한, 본 개시에 따르면, MRL을 이용하여 생성된 복수의 예측 블록을 결합(fusion)하는 영상 부호화/복호화 방법 및 장치가 제공될 수 있다.
또한, 본 개시에 따르면, MRL을 이용하여 플래너(Planar) 모드를 수행하는 영상 부호화/복호화 방법 및 장치가 제공될 수 있다.
또한, 본 개시에 따르면 TIMD(Template based Intra Mode Derivation) 모드의 템플릿 영역에서 플래너 모드로 샘플을 생성하는 영상 부호화/복호화 방법 및 장치가 제공될 수 있다.
또한, 본 개시에 따르면, 본 개시에 따른 영상 부호화 방법 또는 장치에 의해 생성된 비트스트림을 저장하는 비일시적 컴퓨터 판독 가능한 기록 매체가 제공될 수 있다.
또한, 본 개시에 따르면, 본 개시에 따른 영상 복호화 장치에 의해 수신되고 복호화되어 영상의 복원에 이용되는 비트스트림을 저장하는 비일시적 컴퓨터 판독 가능한 기록 매체가 제공될 수 있다.
또한, 본 개시에 따르면, 본 개시에 따른 영상 부호화 방법 또는 장치에 의해 생성된 비트스트림을 전송하는 방법이 제공될 수 있다.
본 개시에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
도 1은 본 개시에 따른 실시예가 적용될 수 있는 비디오 코딩 시스템을 개략적으로 나타내는 도면이다.
도 2는 본 개시에 따른 실시예가 적용될 수 있는 영상 부호화 장치를 개략적으로 나타내는 도면이다.
도 3은 본 개시에 따른 실시예가 적용될 수 있는 영상 복호화 장치를 개략적으로 나타내는 도면이다.
도 4는 인트라 예측 기반 비디오/영상 인코딩 방법을 도시한 흐름도이다.
도 5는 본 개시에 따른 인트라 예측부의 구성을 예시적으로 도시한 도면이다.
도 6은 인트라 예측 기반 비디오/영상 디코딩 방법을 도시한 흐름도이다.
도 7은 본 개시에 따른 인트라 예측부의 구성을 예시적으로 도시한 도면이다.
도 8 및 도 9는 본 개시에 따른 MRL(Multi Reference Line) 기반 인트라 예측에 이용되는 참조 샘플 라인을 도시한 도면이다.
도 10은 본 개시에 따른 TIMD(Template based intra mode derivation)에 사용되는 템플릿 영역과 참조 샘플을 도시한 도면이다.
도 11은 본 개시에 따른 DIMD(Decoder-side intra mode derivation) 모드에서 HoG(Histogram of Gradient)를 구성하는 방법을 도시한 도면이다.
도 12는 본 개시에 따른 DIMD 모드 적용 시 예측 블록을 구성하는 방법을 도시한 도면이다.
도 13은 본 개시의 실시예에 따른 MRL 기반 인트라 예측 방법을 도시한 도면이다.
도 14는 본 개시에 따른 예측 샘플 생성을 위해 사용되는 참조 샘플들을 도시한 도면이다.
도 15는 본 개시의 다른 실시예에 따른 예측 샘플 생성을 위해 사용되는 참조 샘플들을 도시한 도면이다.
도 16은 본 개시의 또 다른 실시예에 따른 예측 샘플 생성을 위해 사용되는 참조 샘플들을 도시한 도면이다.
도 17은 본 개시의 일 실시예에 따른 예측 샘플 생성을 위한 보정된 참조 샘플들을 도시한 도면이다.
도 18은 본 개시의 다른 실시예에 따른 예측 샘플 생성을 위한 보정된 참조 샘플들을 도시한 도면이다.
도 19는 본 개시에 따른 영상 부호화/복호화 방법의 흐름도이다.
도 20은 본 개시에 따른 예측 블록 생성을 위한 참조 샘플 라인을 도시한 도면이다.
도 21은 본 개시의 일 실시예에 따른 TIMD(Template-based Intra Mode Derivation) 모드 기반 예측 블록 생성에 사용되는 참조 샘플들을 도시한 도면이다.
도 22는 본 개시의 다른 실시예에 따른 TIMD 모드 기반 예측 블록 생성에 사용되는 참조 샘플들을 도시한 도면이다.
도 23은 본 개시의 또 다른 실시예에 따른 TIMD 모드 기반 예측 블록 생성에 사용되는 참조 샘플들을 도시한 도면이다.
도 24는 본 개시에 따른 영상 부호화/복호화 방법의 흐름도이다.
도 25는 본 개시의 일 실시예가 적용될 수 있는 컨텐츠 스트리밍 시스템을 예시적으로 나타낸 도면이다.
이하에서는 첨부한 도면을 참고로 하여 본 개시의 실시예에 대하여 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나, 본 개시는 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다.
본 개시의 실시예를 설명함에 있어서 공지 구성 또는 기능에 대한 구체적인 설명이 본 개시의 요지를 흐릴 수 있다고 판단되는 경우에는 그에 대한 상세한 설명은 생략한다. 그리고, 도면에서 본 개시에 대한 설명과 관계없는 부분은 생략하였으며, 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
본 개시에 있어서, 어떤 구성요소가 다른 구성요소와 "연결", "결합" 또는 "접속"되어 있다고 할 때, 이는 직접적인 연결관계뿐만 아니라, 그 중간에 또 다른 구성요소가 존재하는 간접적인 연결관계도 포함할 수 있다. 또한 어떤 구성요소가 다른 구성요소를 "포함한다" 또는 "가진다"고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 배제하는 것이 아니라 또 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
본 개시에 있어서, 제1, 제2 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용되며, 특별히 언급되지 않는 한 구성요소들간의 순서 또는 중요도 등을 한정하지 않는다. 따라서, 본 개시의 범위 내에서 일 실시예에서의 제1 구성요소는 다른 실시예에서 제2 구성요소라고 칭할 수도 있고, 마찬가지로 일 실시예에서의 제2 구성요소를 다른 실시예에서 제1 구성요소라고 칭할 수도 있다.
본 개시에 있어서, 서로 구별되는 구성요소들은 각각의 특징을 명확하게 설명하기 위함이며, 구성요소들이 반드시 분리되는 것을 의미하지는 않는다. 즉, 복수의 구성요소가 통합되어 하나의 하드웨어 또는 소프트웨어 단위로 이루어질 수도 있고, 하나의 구성요소가 분산되어 복수의 하드웨어 또는 소프트웨어 단위로 이루어질 수도 있다. 따라서, 별도로 언급하지 않더라도 이와 같이 통합된 또는 분산된 실시예도 본 개시의 범위에 포함된다.
본 개시에 있어서, 다양한 실시예에서 설명하는 구성요소들이 반드시 필수적인 구성요소들은 의미하는 것은 아니며, 일부는 선택적인 구성요소일 수 있다. 따라서, 일 실시예에서 설명하는 구성요소들의 부분 집합으로 구성되는 실시예도 본 개시의 범위에 포함된다. 또한, 다양한 실시예에서 설명하는 구성요소들에 추가적으로 다른 구성요소를 포함하는 실시예도 본 개시의 범위에 포함된다.
본 개시는 영상의 부호화 및 복호화에 관한 것으로서, 본 개시에서 사용되는 용어는, 본 개시에서 새롭게 정의되지 않는 한 본 개시가 속한 기술 분야에서 통용되는 통상의 의미를 가질 수 있다.
본 개시에서 "비디오(video)"는 시간의 흐름에 따른 일련의 영상(image)들의 집합을 의미할 수 있다.
본 개시에서 "픽처(picture)"는 일반적으로 특정 시간대의 하나의 영상을 나타내는 단위를 의미하며, 슬라이스(slice)/타일(tile)은 픽처의 일부를 구성하는 부호화 단위로서, 하나의 픽처는 하나 이상의 슬라이스/타일로 구성될 수 있다. 또한, 슬라이스/타일은 하나 이상의 CTU(coding tree unit)를 포함할 수 있다.
본 개시에서 "픽셀(pixel)" 또는 "펠(pel)"은 하나의 픽처(또는 영상)를 구성하는 최소의 단위를 의미할 수 있다. 또한, 픽셀에 대응하는 용어로서 "샘플(sample)"이 사용될 수 있다. 샘플은 일반적으로 픽셀 또는 픽셀의 값을 나타낼 수 있으며, 루마(luma) 성분의 픽셀/픽셀값만을 나타낼 수도 있고, 크로마(chroma) 성분의 픽셀/픽셀값만을 나타낼 수도 있다.
본 개시에서 "유닛(unit)"은 영상 처리의 기본 단위를 나타낼 수 있다. 유닛은 픽처의 특정 영역 및 해당 영역에 관련된 정보 중 적어도 하나를 포함할 수 있다. 유닛은 경우에 따라서 "샘플 어레이", "블록(block)" 또는 "영역(area)" 등의 용어와 혼용하여 사용될 수 있다. 일반적인 경우, MxN 블록은 M개의 열과 N개의 행으로 이루어진 샘플들(또는 샘플 어레이) 또는 변환 계수(transform coefficient)들의 집합(또는 어레이)을 포함할 수 있다.
본 개시에서 "현재 블록"은 "현재 코딩 블록", "현재 코딩 유닛", "부호화 대상 블록", "복호화 대상 블록" 또는 "처리 대상 블록" 중 하나를 의미할 수 있다. 예측이 수행되는 경우, "현재 블록"은 "현재 예측 블록" 또는 "예측 대상 블록"을 의미할 수 있다. 변환(역변환)/양자화(역양자화)가 수행되는 경우, "현재 블록"은 "현재 변환 블록" 또는 "변환 대상 블록"을 의미할 수 있다. 필터링이 수행되는 경우, "현재 블록"은 "필터링 대상 블록"을 의미할 수 있다.
본 개시에서 "현재 블록"은 크로마 블록이라는 명시적인 기재가 없는 한 루마 성분 블록과 크로마 성분 블록을 모두 포함하는 블록 또는 "현재 블록의 루마 블록"을 의미할 수 있다. 현재 블록의 루마 성분 블록은 명시적으로 "루마 블록" 또는 "현재 루마 블록"과 같이 루마 성분 블록이라는 명시적인 기재를 포함하여 표현될 수 있다. 또한, 현재 블록의 크로마 성분 블록은 명시적으로 "크로마 블록" 또는 "현재 크로마 블록"과 같이 크로마 성분 블록이라는 명시적인 기재를 포함하여 표현될 수 있다.
본 개시에서 "/"와 ","는 "및/또는"으로 해석될 수 있다. 예를 들어, "A/B"와 "A, B"는 "A 및/또는 B"로 해석될 수 있다. 또한, "A/B/C"와 "A, B, C"는 "A, B 및/또는 C 중 적어도 하나"를 의미할 수 있다.
본 개시에서 "또는"은 "및/또는"으로 해석될 수 있다. 예를 들어, "A 또는 B"는, 1) "A" 만을 의미하거나 2) "B" 만을 의미하거나, 3) "A 및 B"를 의미할 수 있다. 또는, 본 개시에서 "또는"은 "추가적으로 또는 대체적으로(additionally or alternatively)"를 의미할 수 있다.
본 개시에서 "적어도 하나의 A, B 및 C"는 "오직 A", "오직 B", "오직 C", 또는 "A, B 및 C의 임의의 모든 조합"를 의미할 수 있다. 또한, "적어도 하나의 A, B 또는 C"나 "적어도 하나의 A, B 및/또는 C"는 "적어도 하나의 A, B 및 C"를 의미할 수 있다.
본 개시에서 사용되는 괄호는 "예를 들어"를 의미할 수 있다. 예를 들어, "예측(인트라 예측)"으로 표시된 경우, "예측"의 일례로 "인트라 예측"이 제안된 것일 수 있다. 달리 표현하면 본 개시의 "예측"은 "인트라 예측"으로 제한되지 않고, "인트라 예측"이 "예측"의 일례로 제안될 것일 수 있다. 또한, "예측(즉, 인트라 예측)"으로 표시된 경우에도, "예측"의 일례로 "인트라 예측"이 제안된 것일 수 있다.
비디오 코딩 시스템 개요
도 1은 본 개시에 따른 실시예가 적용될 수 있는 비디오 코딩 시스템을 개략적으로 나타내는 도면이다.
일 실시예에 따른 비디오 코딩 시스템은 부호화 장치(10) 및 복호화 장치(20)를 포함할 수 있다. 부호화 장치(10)는 부호화된 비디오(video) 및/또는 영상(image) 정보 또는 데이터를 파일 또는 스트리밍 형태로 디지털 저장매체 또는 네트워크를 통하여 복호화 장치(20)로 전달할 수 있다.
일 실시예에 따른 부호화 장치(10)는 비디오 소스 생성부(11), 부호화부(12), 전송부(13)를 포함할 수 있다. 일 실시예에 따른 복호화 장치(20)는 수신부(21), 복호화부(22) 및 렌더링부(23)를 포함할 수 있다. 상기 부호화부(12)는 비디오/영상 부호화부라고 불릴 수 있고, 상기 복호화부(22)는 비디오/영상 복호화부라고 불릴 수 있다. 전송부(13)는 부호화부(12)에 포함될 수 있다. 수신부(21)는 복호화부(22)에 포함될 수 있다. 렌더링부(23)는 디스플레이부를 포함할 수도 있고, 디스플레이부는 별개의 디바이스 또는 외부 컴포넌트로 구성될 수도 있다.
비디오 소스 생성부(11)는 비디오/영상의 캡쳐, 합성 또는 생성 과정 등을 통하여 비디오/영상을 획득할 수 있다. 비디오 소스 생성부(11)는 비디오/영상 캡쳐 디바이스 및/또는 비디오/영상 생성 디바이스를 포함할 수 있다. 비디오/영상 캡쳐 디바이스는 예를 들어, 하나 이상의 카메라, 이전에 캡쳐된 비디오/영상을 포함하는 비디오/영상 아카이브 등을 포함할 수 있다. 비디오/영상 생성 디바이스는 예를 들어 컴퓨터, 타블렛 및 스마트폰 등을 포함할 수 있으며 (전자적으로) 비디오/영상을 생성할 수 있다. 예를 들어, 컴퓨터 등을 통하여 가상의 비디오/영상이 생성될 수 있으며, 이 경우 관련 데이터가 생성되는 과정으로 비디오/영상 캡쳐 과정이 갈음될 수 있다.
부호화부(12)는 입력 비디오/영상을 부호화할 수 있다. 부호화부(12)는 압축 및 부호화 효율을 위하여 예측, 변환, 양자화 등 일련의 절차를 수행할 수 있다. 부호화부(12)는 부호화된 데이터(부호화된 비디오/영상 정보)를 비트스트림(bitstream) 형태로 출력할 수 있다.
전송부(13)는 비트스트림 형태로 출력된 부호화된 비디오/영상 정보 또는 데이터를 획득할 수 있으며, 이를 파일 또는 스트리밍 형태로 디지털 저장매체 또는 네트워크를 통하여 복호화 장치(20)의 수신부(21) 또는 다른 외부 객체로 전달할 수 있다. 디지털 저장 매체는 USB, SD, CD, DVD, 블루레이, HDD, SSD 등 다양한 저장 매체를 포함할 수 있다. 전송부(13)는 미리 정해진 파일 포맷을 통하여 미디어 파일을 생성하기 위한 엘리먼트를 포함할 수 있고, 방송/통신 네트워크를 통한 전송을 위한 엘리먼트를 포함할 수 있다. 전송부(13)는 부호화부(120)와는 별개의 전송 장치로 구비될 수 있으며, 이 경우 전송 장치는 비트스트림 형태로 출력된 부호화된 비디오/영상 정보 또는 데이터를 획득하는 적어도 하나의 프로세서와 이를 파일 또는 스트리밍 형태로 전달하는 전송부를 포함할 수 있다. 이 수신부(21)는 상기 저장매체 또는 네트워크로부터 상기 비트스트림을 추출/수신하여 복호화부(22)로 전달할 수 있다.
복호화부(22)는 부호화부(12)의 동작에 대응하는 역양자화, 역변환, 예측 등 일련의 절차를 수행하여 비디오/영상을 복호화할 수 있다.
렌더링부(23)는 복호화된 비디오/영상을 렌더링할 수 있다. 렌더링된 비디오/영상은 디스플레이부를 통하여 디스플레이될 수 있다.
영상 부호화 장치 개요
도 2는 본 개시에 따른 실시예가 적용될 수 있는 영상 부호화 장치를 개략적으로 도시한 도면이다.
도 2에 도시된 바와 같이, 영상 부호화 장치(100)는 영상 분할부(110), 감산부(115), 변환부(120), 양자화부(130), 역양자화부(140), 역변환부(150), 가산부(155), 필터링부(160), 메모리(170), 인터 예측부(180), 인트라 예측부(185) 및 엔트로피 인코딩부(190)를 포함할 수 있다. 인터 예측부(180) 및 인트라 예측부(185)는 합쳐서 "예측부"라고 지칭될 수 있다. 변환부(120), 양자화부(130), 역양자화부(140), 역변환부(150)는 레지듀얼(residual) 처리부에 포함될 수 있다. 레지듀얼 처리부는 감산부(115)를 더 포함할 수도 있다.
영상 부호화 장치(100)를 구성하는 복수의 구성부들의 전부 또는 적어도 일부는 실시예에 따라 하나의 하드웨어 컴포넌트(예를 들어, 영상 부호화 장치(100) 또는 프로세서)로 구현될 수 있다. 또한 메모리(170)는 DPB(decoded picture buffer)를 포함할 수 있고, 디지털 저장 매체에 의하여 구현될 수 있다.
영상 분할부(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)를 유도하는 단위일 수 있다.
예측부(인터 예측부(180) 또는 인트라 예측부(185))는 처리 대상 블록(현재 블록)에 대한 예측을 수행하고, 상기 현재 블록에 대한 예측 샘플들을 포함하는 예측된 블록(predicted block)을 생성할 수 있다. 예측부는 현재 블록 또는 CU 단위로 인트라 예측이 적용되는지 또는 인터 예측이 적용되는지 결정할 수 있다. 예측부는 현재 블록의 예측에 관한 다양한 정보를 생성하여 엔트로피 인코딩부(190)로 전달할 수 있다. 예측에 관한 정보는 엔트로피 인코딩부(190)에서 인코딩되어 비트스트림 형태로 출력될 수 있다.
인트라 예측부(185)는 현재 픽처 내의 샘플들을 참조하여 현재 블록을 예측할 수 있다. 상기 참조되는 샘플들은 인트라 예측 모드 및/또는 인트라 예측 기법에 따라 상기 현재 블록의 주변(neighbor)에 위치할 수 있고, 또는 떨어져서 위치할 수도 있다. 인트라 예측 모드들은 복수의 비방향성 모드와 복수의 방향성 모드를 포함할 수 있다. 비방향성 모드는 예를 들어 DC 모드 및 플래너 모드(Planar 모드)를 포함할 수 있다. 방향성 모드는 예측 방향의 세밀한 정도에 따라, 예를 들어 33개의 방향성 예측 모드 또는 65개의 방향성 예측 모드를 포함할 수 있다. 다만, 이는 예시로서 설정에 따라 그 이상 또는 그 이하의 개수의 방향성 예측 모드들이 사용될 수 있다. 인트라 예측부(185)는 주변 블록에 적용된 예측 모드를 이용하여, 현재 블록에 적용되는 예측 모드를 결정할 수도 있다.
인터 예측부(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)를 부호화함으로써 현재 블록의 움직임 벡터를 시그널링할 수 있다. 움직임 벡터 차분은 현재 블록의 움직임 벡터와 움직임 벡터 예측자 간의 차이를 의미할 수 있다.
예측부는 후술하는 다양한 예측 방법 및/또는 예측 기법을 기반으로 예측 신호를 생성할 수 있다. 예를 들어, 예측부는 현재 블록의 예측을 위해 인트라 예측 또는 인터 예측을 적용할 수 있을 뿐 아니라, 인트라 예측과 인터 예측을 동시에 적용할 수 있다. 현재 블록의 예측을 위해 인트라 예측과 인터 예측을 동시에 적용하는 예측 방법은 combined inter and intra prediction (CIIP)라고 불릴 수 있다. 또한, 예측부는 현재 블록의 예측을 위해 인트라 블록 카피(intra block copy, IBC)를 수행할 수도 있다. 인트라 블록 카피는 예를 들어 SCC(screen content coding) 등과 같이 게임 등의 컨텐츠 영상/동영상 코딩을 위하여 사용될 수 있다. IBC는 현재 블록으로부터 소정의 거리만큼 떨어진 위치의 현재 픽처 내 기 복원된 참조 블록을 이용하여 현재 블록을 예측하는 방법이다. IBC가 적용되는 경우, 현재 픽처 내 참조 블록의 위치는 상기 소정의 거리에 해당하는 벡터(블록 벡터)로서 부호화될 수 있다. IBC는 기본적으로 현재 픽처 내에서 예측을 수행하나, 현재 픽처 내에서 참조 블록을 도출하는 점에서, 인터 예측과 유사하게 수행될 수 있다. 즉 IBC는 본 개시에서 설명되는 인터 예측 기법들 중 적어도 하나를 이용할 수 있다.
예측부를 통해 생성된 예측 신호는 복원 신호를 생성하기 위해 이용되거나 레지듀얼 신호를 생성하기 위해 이용될 수 있다. 감산부(115)는 입력 영상 신호(원본 블록, 원본 샘플 어레이)로부터 예측부에서 출력된 예측 신호(예측된 블록, 예측 샘플 어레이)를 감산하여 레지듀얼 신호(residual signal, 잔여 블록, 잔여 샘플 어레이)를 생성할 수 있다. 생성된 레지듀얼 신호는 변환부(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)을 이용하여 예측 신호를 생성하고 그에 기반하여 획득되는 변환을 의미한다. 변환 과정은 정사각형의 동일한 크기를 갖는 픽셀 블록에 적용될 수도 있고, 정사각형이 아닌 가변 크기의 블록에도 적용될 수 있다.
양자화부(130)는 변환 계수들을 양자화하여 엔트로피 인코딩부(190)로 전송할 수 있다. 엔트로피 인코딩부(190)는 양자화된 신호(양자화된 변환 계수들에 관한 정보)를 인코딩하여 비트스트림으로 출력할 수 있다. 상기 양자화된 변환 계수들에 관한 정보는 레지듀얼 정보라고 불릴 수 있다. 양자화부(130)는 계수 스캔 순서(scan order)를 기반으로 블록 형태의 양자화된 변환 계수들을 1차원 벡터 형태로 재정렬할 수 있고, 상기 1차원 벡터 형태의 양자화된 변환 계수들을 기반으로 상기 양자화된 변환 계수들에 관한 정보를 생성할 수도 있다.
엔트로피 인코딩부(190)는 예를 들어 지수 골롬(exponential Golomb), CAVLC(context-adaptive variable length coding), CABAC(context-adaptive binary arithmetic coding) 등과 같은 다양한 인코딩 방법을 수행할 수 있다. 엔트로피 인코딩부(190)는 양자화된 변환 계수들 외 비디오/이미지 복원에 필요한 정보들(예를 들어 신택스 요소들(syntax elements)의 값 등)을 함께 또는 별도로 인코딩할 수도 있다. 인코딩된 정보(ex. 인코딩된 비디오/영상 정보)는 비트스트림 형태로 NAL(network abstraction layer) 유닛 단위로 전송 또는 저장될 수 있다. 상기 비디오/영상 정보는 어댑테이션 파라미터 세트(APS), 픽처 파라미터 세트(PPS), 시퀀스 파라미터 세트(SPS) 또는 비디오 파라미터 세트(VPS) 등 다양한 파라미터 세트에 관한 정보를 더 포함할 수 있다. 또한 상기 비디오/영상 정보는 일반 제한 정보(general constraint information)를 더 포함할 수 있다. 본 개시에서 언급된 시그널링 정보, 전송되는 정보 및/또는 신택스 요소들은 상술한 인코딩 절차를 통하여 인코딩되어 상기 비트스트림에 포함될 수 있다.
상기 비트스트림은 네트워크를 통하여 전송될 수 있고, 또는 디지털 저장매체에 저장될 수 있다. 여기서 네트워크는 방송망 및/또는 통신망 등을 포함할 수 있고, 디지털 저장매체는 USB, SD, CD, DVD, 블루레이, HDD, SSD 등 다양한 저장매체를 포함할 수 있다. 엔트로피 인코딩부(190)로부터 출력된 신호를 전송하는 전송부(미도시) 및/또는 저장하는 저장부(미도시)가 영상 부호화 장치(100)의 내/외부 엘리먼트로서 구비될 수 있고, 또는 전송부는 엔트로피 인코딩부(190)의 구성요소로서 구비될 수도 있다.
양자화부(130)로부터 출력된 양자화된 변환 계수들은 레지듀얼 신호를 생성하기 위해 이용될 수 있다. 예를 들어, 양자화된 변환 계수들에 역양자화부(140) 및 역변환부(150)를 통해 역양자화 및 역변환을 적용함으로써 레지듀얼 신호(레지듀얼 블록 or 레지듀얼 샘플들)를 복원할 수 있다.
가산부(155)는 복원된 레지듀얼 신호를 인터 예측부(180) 또는 인트라 예측부(185)로부터 출력된 예측 신호에 더함으로써 복원(reconstructed) 신호(복원 픽처, 복원 블록, 복원 샘플 어레이)를 생성할 수 있다. 스킵 모드가 적용된 경우와 같이 처리 대상 블록에 대한 레지듀얼이 없는 경우, 예측된 블록이 복원 블록으로 사용될 수 있다. 가산부(155)는 복원부 또는 복원 블록 생성부라고 불릴 수 있다. 생성된 복원 신호는 현재 픽처 내 다음 처리 대상 블록의 인트라 예측을 위하여 사용될 수 있고, 후술하는 바와 같이 필터링을 거쳐서 다음 픽처의 인터 예측을 위하여 사용될 수도 있다.
한편 픽처 인코딩 및/또는 복원 과정에서 LMCS(luma mapping with chroma scaling)가 적용될 수도 있다.
필터링부(160)는 복원 신호에 필터링을 적용하여 주관적/객관적 화질을 향상시킬 수 있다. 예를 들어 필터링부(160)는 복원 픽처에 다양한 필터링 방법을 적용하여 수정된(modified) 복원 픽처를 생성할 수 있고, 상기 수정된 복원 픽처를 메모리(170), 구체적으로 메모리(170)의 DPB에 저장할 수 있다. 상기 다양한 필터링 방법은 예를 들어, 디블록킹 필터링, 샘플 적응적 오프셋(sample adaptive offset), 적응적 루프 필터(adaptive loop filter), 양방향 필터(bilateral filter) 등을 포함할 수 있다. 필터링부(160)는 각 필터링 방법에 대한 설명에서 후술하는 바와 같이 필터링에 관한 다양한 정보를 생성하여 엔트로피 인코딩부(190)로 전달할 수 있다. 필터링에 관한 정보는 엔트로피 인코딩부(190)에서 인코딩되어 비트스트림 형태로 출력될 수 있다.
메모리(170)에 전송된 수정된 복원 픽처는 인터 예측부(180)에서 참조 픽처로 사용될 수 있다. 영상 부호화 장치(100)는 이를 통하여 인터 예측이 적용되는 경우, 영상 부호화 장치(100)와 영상 복호화 장치에서의 예측 미스매치를 피할 수 있고, 부호화 효율도 향상시킬 수 있다.
메모리(170) 내 DPB는 인터 예측부(180)에서의 참조 픽처로 사용하기 위해 수정된 복원 픽처를 저장할 수 있다. 메모리(170)는 현재 픽처 내 움직임 정보가 도출된(또는 인코딩된) 블록의 움직임 정보 및/또는 이미 복원된 픽처 내 블록들의 움직임 정보를 저장할 수 있다. 상기 저장된 움직임 정보는 공간적 주변 블록의 움직임 정보 또는 시간적 주변 블록의 움직임 정보로 활용하기 위하여 인터 예측부(180)에 전달될 수 있다. 메모리(170)는 현재 픽처 내 복원된 블록들의 복원 샘플들을 저장할 수 있고, 인트라 예측부(185)에 전달할 수 있다.
영상 복호화 장치 개요
도 3은 본 개시에 따른 실시예가 적용될 수 있는 영상 복호화 장치를 개략적으로 도시한 도면이다.
도 3에 도시된 바와 같이, 영상 복호화 장치(200)는 엔트로피 디코딩부(210), 역양자화부(220), 역변환부(230), 가산부(235), 필터링부(240), 메모리(250), 인터 예측부(260) 및 인트라 예측부(265)를 포함하여 구성될 수 있다. 인터 예측부(260) 및 인트라 예측부(265)를 합쳐서 "예측부"라고 지칭될 수 있다. 역양자화부(220), 역변환부(230)는 레지듀얼 처리부에 포함될 수 있다.
영상 복호화 장치(200)를 구성하는 복수의 구성부들의 전부 또는 적어도 일부는 실시예에 따라 하나의 하드웨어 컴포넌트(예를 들어 영상 복호화 장치(200) 또는 프로세서)로 구현될 수 있다. 또한 메모리(170)는 DPB를 포함할 수 있고, 디지털 저장 매체에 의하여 구현될 수 있다.
비디오/영상 정보를 포함하는 비트스트림을 수신한 영상 복호화 장치(200)는 도 2의 영상 부호화 장치(100)에서 수행된 프로세스에 대응하는 프로세스를 수행하여 영상을 복원할 수 있다. 예를 들어, 영상 복호화 장치(200)는 영상 부호화 장치(100)에서 적용된 처리 유닛을 이용하여 디코딩을 수행할 수 있다. 따라서 디코딩의 처리 유닛은 예를 들어 코딩 유닛일 수 있다. 코딩 유닛은 코딩 트리 유닛이거나 또는 최대 코딩 유닛을 분할하여 획득될 수 있다. 그리고, 영상 복호화 장치(200)를 통해 디코딩 및 출력된 복원 영상 신호는 재생 장치(미도시)를 통해 재생될 수 있다.
영상 복호화 장치(200)는 도 2의 영상 부호화 장치(100)로부터 출력된 신호를 비트스트림 형태로 수신할 수 있다. 수신된 신호는 엔트로피 디코딩부(210)를 통해 디코딩될 수 있다. 예를 들어, 엔트로피 디코딩부(210)는 상기 비트스트림을 파싱하여 영상 복원(또는 픽처 복원)에 필요한 정보(예를 들어, 비디오/영상 정보)를 도출할 수 있다. 상기 비디오/영상 정보는 어댑테이션 파라미터 세트(APS), 픽처 파라미터 세트(PPS), 시퀀스 파라미터 세트(SPS) 또는 비디오 파라미터 세트(VPS) 등 다양한 파라미터 세트에 관한 정보를 더 포함할 수 있다. 또한 상기 비디오/영상 정보는 일반 제한 정보(general constraint information)를 더 포함할 수 있다. 영상 복호화 장치(200)는 영상을 디코딩하기 위해 상기 파라미터 세트에 관한 정보 및/또는 상기 일반 제한 정보를 추가적으로 이용할 수 있다. 본 개시에서 언급된 시그널링 정보, 수신되는 정보 및/또는 신택스 요소들은 상기 디코딩 절차를 통하여 디코딩됨으로써 상기 비트스트림으로부터 획득될 수 있다. 예를 들어, 엔트로피 디코딩부(210)는 지수 골롬 부호화, CAVLC 또는 CABAC 등의 코딩 방법을 기초로 비트스트림 내 정보를 디코딩하고, 영상 복원에 필요한 신택스 엘리먼트의 값, 레지듀얼에 관한 변환 계수의 양자화된 값들을 출력할 수 있다. 보다 상세하게, CABAC 엔트로피 디코딩 방법은, 비트스트림에서 각 구문 요소에 해당하는 빈을 수신하고, 디코딩 대상 구문 요소 정보와 주변 블록 및 디코딩 대상 블록의 디코딩 정보 혹은 이전 단계에서 디코딩된 심볼/빈의 정보를 이용하여 문맥(context) 모델을 결정하고, 결정된 문맥 모델에 따라 빈(bin)의 발생 확률을 예측하여 빈의 산술 디코딩(arithmetic decoding)을 수행하여 각 구문 요소의 값에 해당하는 심볼을 생성할 수 있다. 이때, CABAC 엔트로피 디코딩 방법은 문맥 모델 결정 후 다음 심볼/빈의 문맥 모델을 위해 디코딩된 심볼/빈의 정보를 이용하여 문맥 모델을 업데이트할 수 있다. 엔트로피 디코딩부(210)에서 디코딩된 정보 중 예측에 관한 정보는 예측부(인터 예측부(260) 및 인트라 예측부(265))로 제공되고, 엔트로피 디코딩부(210)에서 엔트로피 디코딩이 수행된 레지듀얼 값, 즉 양자화된 변환 계수들 및 관련 파라미터 정보는 역양자화부(220)로 입력될 수 있다. 또한, 엔트로피 디코딩부(210)에서 디코딩된 정보 중 필터링에 관한 정보는 필터링부(240)로 제공될 수 있다. 한편, 영상 부호화 장치(100)로부터 출력된 신호를 수신하는 수신부(미도시)가 영상 복호화 장치(200)의 내/외부 엘리먼트로서 추가적으로 구비될 수 있고, 또는 수신부는 엔트로피 디코딩부(210)의 구성요소로서 구비될 수도 있다.
한편, 본 개시에 따른 영상 복호화 장치(200)는 비디오/영상/픽처 복호화 장치라고 불릴 수 있다. 상기 영상 복호화 장치(200)는 정보 디코더(비디오/영상/픽처 정보 디코더) 및/또는 샘플 디코더(비디오/영상/픽처 샘플 디코더)를 포함할 수도 있다. 상기 정보 디코더는 엔트로피 디코딩부(210)를 포함할 수 있고, 상기 샘플 디코더는 역양자화부(220), 역변환부(230), 가산부(235), 필터링부(240), 메모리(250), 인터 예측부(260) 및 인트라 예측부(265) 중 적어도 하나를 포함할 수 있다.
역양자화부(220)에서는 양자화된 변환 계수들을 역양자화하여 변환 계수들을 출력할 수 있다. 역양자화부(220)는 양자화된 변환 계수들을 2차원의 블록 형태로 재정렬할 수 있다. 이 경우 상기 재정렬은 영상 부호화 장치(100)에서 수행된 계수 스캔 순서에 기반하여 수행될 수 있다. 역양자화부(220)는 양자화 파라미터(예를 들어 양자화 스텝 사이즈 정보)를 이용하여 양자화된 변환 계수들에 대한 역양자화를 수행하고, 변환 계수들(transform coefficient)을 획득할 수 있다.
역변환부(230)에서는 변환 계수들을 역변환하여 레지듀얼 신호(레지듀얼 블록, 레지듀얼 샘플 어레이)를 획득할 수 있다.
예측부는 현재 블록에 대한 예측을 수행하고, 상기 현재 블록에 대한 예측 샘플들을 포함하는 예측된 블록(predicted block)을 생성할 수 있다. 예측부는 엔트로피 디코딩부(210)로부터 출력된 상기 예측에 관한 정보를 기반으로 상기 현재 블록에 인트라 예측이 적용되는지 또는 인터 예측이 적용되는지 결정할 수 있고, 구체적인 인트라/인터 예측 모드(예측 기법)를 결정할 수 있다.
예측부가 후술하는 다양한 예측 방법(기법)을 기반으로 예측 신호를 생성할 수 있음은 영상 부호화 장치(100)의 예측부에 대한 설명에서 언급된 바와 동일하다.
인트라 예측부(265)는 현재 픽처 내의 샘플들을 참조하여 현재 블록을 예측할 수 있다. 인트라 예측부(185)에 대한 설명은 인트라 예측부(265)에 대해서도 동일하게 적용될 수 있다.
인터 예측부(260)는 참조 픽처 상에서 움직임 벡터에 의해 특정되는 참조 블록(참조 샘플 어레이)을 기반으로, 현재 블록에 대한 예측된 블록을 유도할 수 있다. 이때, 인터 예측 모드에서 전송되는 움직임 정보의 양을 줄이기 위해 주변 블록과 현재 블록 간의 움직임 정보의 상관성에 기반하여 움직임 정보를 블록, 서브블록 또는 샘플 단위로 예측할 수 있다. 상기 움직임 정보는 움직임 벡터 및 참조 픽처 인덱스를 포함할 수 있다. 상기 움직임 정보는 인터 예측 방향(L0 예측, L1 예측, Bi 예측 등) 정보를 더 포함할 수 있다. 인터 예측의 경우에, 주변 블록은 현재 픽처 내에 존재하는 공간적 주변 블록(spatial neighboring block)과 참조 픽처에 존재하는 시간적 주변 블록(temporal neighboring block)을 포함할 수 있다. 예를 들어, 인터 예측부(260)는 주변 블록들을 기반으로 움직임 정보 후보 리스트를 구성하고, 수신한 후보 선택 정보를 기반으로 상기 현재 블록의 움직임 벡터 및/또는 참조 픽처 인덱스를 도출할 수 있다. 다양한 예측 모드(기법)를 기반으로 인터 예측이 수행될 수 있으며, 상기 예측에 관한 정보는 상기 현재 블록에 대한 인터 예측의 모드(기법)를 지시하는 정보를 포함할 수 있다.
가산부(235)는 획득된 레지듀얼 신호를 예측부(인터 예측부(260) 및/또는 인트라 예측부(265) 포함)로부터 출력된 예측 신호(예측된 블록, 예측 샘플 어레이)에 더함으로써 복원 신호(복원 픽처, 복원 블록, 복원 샘플 어레이)를 생성할 수 있다. 스킵 모드가 적용된 경우와 같이 처리 대상 블록에 대한 레지듀얼이 없는 경우, 예측된 블록이 복원 블록으로 사용될 수 있다. 가산부(155)에 대한 설명은 가산부(235)에 대해서도 동일하게 적용될 수 있다. 가산부(235)는 복원부 또는 복원 블록 생성부라고 불릴 수 있다. 생성된 복원 신호는 현재 픽처 내 다음 처리 대상 블록의 인트라 예측을 위하여 사용될 수 있고, 후술하는 바와 같이 필터링을 거쳐서 다음 픽처의 인터 예측을 위하여 사용될 수도 있다.
필터링부(240)는 복원 신호에 필터링을 적용하여 주관적/객관적 화질을 향상시킬 수 있다. 예를 들어 필터링부(240)는 복원 픽처에 다양한 필터링 방법을 적용하여 수정된(modified) 복원 픽처를 생성할 수 있고, 상기 수정된 복원 픽처를 메모리(250), 구체적으로 메모리(250)의 DPB에 저장할 수 있다. 상기 다양한 필터링 방법은 예를 들어, 디블록킹 필터링, 샘플 적응적 오프셋(sample adaptive offset), 적응적 루프 필터(adaptive loop filter), 양방향 필터(bilateral filter) 등을 포함할 수 있다.
메모리(250)의 DPB에 저장된 (수정된) 복원 픽처는 인터 예측부(260)에서 참조 픽처로 사용될 수 있다. 메모리(250)는 현재 픽처 내 움직임 정보가 도출된(또는 디코딩된) 블록의 움직임 정보 및/또는 이미 복원된 픽처 내 블록들의 움직임 정보를 저장할 수 있다. 상기 저장된 움직임 정보는 공간적 주변 블록의 움직임 정보 또는 시간적 주변 블록의 움직임 정보로 활용하기 위하여 인터 예측부(260)에 전달할 수 있다. 메모리(250)는 현재 픽처 내 복원된 블록들의 복원 샘플들을 저장할 수 있고, 인트라 예측부(265)에 전달할 수 있다.
본 명세서에서, 영상 부호화 장치(100)의 필터링부(160), 인터 예측부(180) 및 인트라 예측부(185)에서 설명된 실시예들은 각각 영상 복호화 장치(200)의 필터링부(240), 인터 예측부(260) 및 인트라 예측부(265)에도 동일 또는 대응되도록 적용될 수 있다.
인트라 예측의 개요
이하, 본 개시에 따른 인트라 예측에 대해 설명한다.
인트라 예측은 현재 블록이 속하는 픽처(이하, 현재 픽처) 내의 참조 샘플들을 기반으로 현재 블록에 대한 예측 샘플들을 생성하는 예측을 나타낼 수 있다. 현재 블록에 인트라 예측이 적용되는 경우, 현재 블록의 인트라 예측에 사용할 주변 참조 샘플들이 도출될 수 있다. 상기 현재 블록의 주변 참조 샘플들은 nWxnH 크기의 현재 블록의 좌측(left) 경계에 인접(neigbor/adjacent)한 샘플 및 좌하측(bottom-left)에 이웃하는 총 2xnH 개의 샘플들, 현재 블록의 상측(top) 경계에 인접한 샘플 및 우상측(top-right)에 이웃하는 총 2xnW 개의 샘플들 및 현재 블록의 좌상측(top-left)에 이웃하는 1개의 샘플을 포함할 수 있다. 또는, 상기 현재 블록의 주변 참조 샘플들은 복수열의 상측 주변 샘플들 및 복수행의 좌측 주변 샘플들을 포함할 수도 있다. 또한, 상기 현재 블록의 주변 참조 샘플들은 nWxnH 크기의 현재 블록의 우측(right) 경계에 인접한 총 nH 개의 샘플들, 현재 블록의 하측(bottom) 경계에 인접한 총 nW 개의 샘플들 및 현재 블록의 우하측(bottom-right)에 이웃하는 1개의 샘플을 포함할 수도 있다.
다만, 현재 블록의 주변 참조 샘플들 중 일부는 아직 디코딩되지 않았거나, 이용 가능하지 않을 수 있다. 이 경우, 영상 복호화 장치(200)는 이용 가능한 샘플들로 이용 가능하지 않은 샘플들을 대체(substitution)하여 예측에 사용할 주변 참조 샘플들을 구성할 수 있다. 또는, 이용 가능한 샘플들의 보간(interpolation)을 통하여 예측에 사용할 주변 참조 샘플들을 구성할 수 있다.
주변 참조 샘플들이 도출된 경우, (i) 현재 블록의 주변(neighboring) 참조 샘플들의 평균(average) 혹은 인터폴레이션(interpolation)을 기반으로 예측 샘플을 유도할 수 있고, (ii) 현재 블록의 주변 참조 샘플들 중 예측 샘플에 대하여 특정 (예측) 방향에 존재하는 참조 샘플을 기반으로 상기 예측 샘플을 유도할 수도 있다. (i)의 경우는 비방향성 모드 또는 비각도 모드, (ii)의 경우는 방향성(directional) 모드 또는 각도(angular) 모드라고 불릴 수 있다.
또한, 상기 주변 참조 샘플들 중 상기 현재 블록의 예측 대상 샘플을 기준으로 상기 현재 블록의 인트라 예측 모드의 예측 방향에 위치하는 제1 주변 샘플과 그 반대 방향에 위치하는 제2 주변 샘플과의 보간을 통하여 상기 예측 샘플이 생성될 수도 있다. 상술한 경우는 선형 보간 인트라 예측(Linear interpolation intra prediction, LIP) 이라고 불릴 수 있다.
또한, 선형 모델(linear model)을 이용하여 루마 샘플들을 기반으로 크로마 예측 샘플들이 생성될 수도 있다. 이 경우는 LM(Linear Model) 모드라고 불릴 수 있다.
또한, 필터링된 주변 참조 샘플들을 기반으로 상기 현재 블록의 임시 예측 샘플을 도출하고, 상기 기존의 주변 참조 샘플들, 즉, 필터링되지 않은 주변 참조 샘플들 중 상기 인트라 예측 모드에 따라 도출된 적어도 하나의 참조 샘플과 상기 임시 예측 샘플을 가중합(weighted sum)하여 상기 현재 블록의 예측 샘플을 도출할 수도 있다. 이 경우는 PDPC(Position dependent intra prediction) 라고 불릴 수 있다.
또한, 현재 블록의 주변 다중 참조 샘플 라인 중 가장 예측 정확도가 높은 참조 샘플 라인을 선택하여 해당 라인에서 예측 방향에 위치하는 참조 샘플을 이용하여 예측 샘플을 도출할 수 있다. 이 때, 사용된 참조 샘플 라인에 관한 정보(예컨대, intra_luma_ref_idx)는 비트스트림에 부호화되어 시그널링될 수 있다. 이 경우는 multi-reference line intra prediction (MRL) 또는 MRL 기반 인트라 예측이라고 불릴 수 있다. MRL이 적용되지 않는 경우, 현재 블록에 직접 인접한 참조 샘플 라인으로부터 참조 샘플들이 도출될 수 있고, 이 경우, 참조 샘플 라인에 관한 정보는 시그널링되지 않을 수 있다.
또한, 현재 블록을 수직 또는 수평의 서브파티션들로 분할하고, 각 서브파티션에 대해 동일한 인트라 예측 모드를 기반으로 인트라 예측을 수행할 수 있다. 이 때, 인트라 예측의 주변 참조 샘플들은 각 서브파티션 단위로 도출될 수 있다. 즉, 부호화/복호화 순서 상 이전 서브파티션의 복원된 샘플이 현재 서브파티션의 주변 참조 샘플로서 이용될 수 있다. 이 경우 현재 블록에 대한 인트라 예측 모드가 상기 서브파티션들에 동일하게 적용되되, 상기 서브파티션 단위로 주변 참조 샘플을 도출하여 이용함으로써 경우에 따라 인트라 예측 성능을 높일 수 있다. 이러한 예측 방법은 intra sub-partitions (ISP) 또는 ISP 기반 인트라 예측이라고 불릴 수 있다.
전술한 인트라 예측 기법들은 방향성 또는 비방향성의 인트라 예측 모드와 구분하여 인트라 예측 타입 또는 부가 인트라 예측 모드 등 다양한 용어로 불릴 수 있다. 예를 들어 상기 인트라 예측 기법(인트라 예측 타입 또는 부가 인트라 예측 모드 등)은 상술한 LIP, LM, PDPC, MRL, ISP 중 적어도 하나를 포함할 수 있다. 상기 LIP, LM, PDPC, MRL, ISP 등의 특정 인트라 예측 타입을 제외한 일반 인트라 예측 방법은 노멀 인트라 예측 타입이라고 불릴 수 있다. 노멀 인트라 예측 타입은 상기와 같은 특정 인트라 예측 타입이 적용되지 않는 경우 일반적으로 적용될 수 있으며, 전술한 인트라 예측 모드를 기반으로 예측이 수행될 수 있다. 한편, 필요에 따라서 도출된 예측 샘플에 대한 후처리 필터링이 수행될 수도 있다.
구체적으로, 인트라 예측 절차는 인트라 예측 모드/타입 결정 단계, 주변 참조 샘플 도출 단계, 인트라 예측 모드/타입 기반 예측 샘플 도출 단계를 포함할 수 있다. 또한, 필요에 따라서 도출된 예측 샘플에 대한 후처리 필터링(post-filtering) 단계가 수행될 수도 있다.
한편, 상술한 인트라 예측 타입들 외에도 affine linear weighted intra prediction (ALWIP)이 사용될 수 있다. 상기 ALWIP는 LWIP(linear weighted intra prediction) 또는 MIP(matrix weighted intra prediction 또는 matrix based intra prediction)이라고 불릴 수도 있다. 상기 MIP가 현재 블록에 대하여 적용되는 경우, i) 에버러징(averaging) 절차가 수행된 주변 참조 샘플들을 이용하여 ii) 메트릭스 벡터 멀티플리케이션(matrix-vector-multiplication) 절차를 수행하고, iii) 필요에 따라 수평/수직 보간(interpolation) 절차를 더 수행하여 상기 현재 블록에 대한 예측 샘플들을 도출할 수 있다. 상기 MIP를 위하여 사용되는 인트라 예측 모드들은 상술한 LIP, PDPC, MRL, ISP 인트라 예측이나, 노멀 인트라 예측에서 사용되는 인트라 예측 모드들과 다르게 구성될 수 있다. 상기 MIP를 위한 인트라 예측 모드는 MIP intra prediction mode, MIP prediction mode 또는 MIP mode라고 불릴 수 있다. 예를 들어, 상기 MIP를 위한 인트라 예측 모드에 따라 상기 메트릭스 벡터 멀티플리케이션에서 사용되는 메트릭스 및 오프셋이 다르게 설정될 수 있다. 여기서 상기 메트릭스는 (MIP) 가중치 메트릭스라고 불릴 수 있고, 상기 오프셋은 (MIP) 오프셋 벡터 또는 (MIP) 바이어스(bias) 벡터라고 불릴 수 있다. 구체적인 MIP 방법에 대하여는 후술한다.
인트라 예측에 기반한 블록 복원 절차 및 인코딩 장치 내 인트라 예측부는 도4 및 도5를 통해 후술한다.
도 4는 인트라 예측 기반 비디오/영상 인코딩 방법을 도시한 흐름도이다.
도 4의 인코딩 방법은 도 2의 영상 부호화 장치(100)에 의해 수행될 수 있다. 구체적으로, 단계 S410은 인트라 예측부(185)에 의하여 수행될 수 있고, 단계 S420은 레지듀얼 처리부에 의하여 수행될 수 있다. 구체적으로 단계 S420은 감산부(115)에 의하여 수행될 수 있다. 단계 S430은 엔트로피 인코딩부(190)에 의하여 수행될 수 있다. 단계 S430의 예측 정보는 인트라 예측부(185)에 의하여 도출되고, 단계 S430의 레지듀얼 정보는 레지듀얼 처리부에 의하여 도출될 수 있다. 상기 레지듀얼 정보는 상기 레지듀얼 샘플들에 관한 정보이다. 상기 레지듀얼 정보는 상기 레지듀얼 샘플들에 대한 양자화된 변환 계수들에 관한 정보를 포함할 수 있다. 전술한 바와 같이 상기 레지듀얼 샘플들은 영상 부호화 장치(100)의 변환부(120)를 통하여 변환 계수들로 도출되고, 상기 변환 계수들은 양자화부(130)를 통하여 양자화된 변환 계수들로 도출될 수 있다. 상기 양자화된 변환 계수들에 관한 정보가 레지듀얼 코딩 절차를 통하여 엔트로피 인코딩부(190)에서 인코딩될 수 있다.
영상 부호화 장치(100)는 현재 블록에 대한 인트라 예측을 수행할 수 있다(S410). 영상 부호화 장치(100)는 현재 블록에 대한 인트라 예측 모드/타입을 결정하고, 현재 블록의 주변 참조 샘플들을 도출한 후, 상기 인트라 예측 모드/타입 및 상기 주변 참조 샘플들을 기반으로 상기 현재 블록 내 예측 샘플들을 생성할 수 있다. 여기서 인트라 예측 모드/타입 결정, 주변 참조 샘플들 도출 및 예측 샘플들 생성 절차는 동시에 수행될 수도 있고, 어느 한 절차가 다른 절차보다 먼저 수행될 수도 있다.
도 5는 본 개시에 따른 인트라 예측부(185)의 구성을 예시적으로 도시한 도면이다.
도 5에 도시된 바와 같이, 영상 부호화 장치(100)의 인트라 예측부(185)는 인트라 예측 모드/타입 결정부(186), 참조 샘플 도출부(187) 및/또는 예측 샘플 도출부(188)를 포함할 수 있다. 인트라 예측 모드/타입 결정부(186)는 상기 현재 블록에 대한 인트라 예측 모드/타입을 결정할 수 있다. 참조 샘플 도출부(187)는 상기 현재 블록의 주변 참조 샘플들을 도출할 수 있다. 예측 샘플 도출부(188)는 상기 현재 블록의 예측 샘플들을 도출할 수 있다. 한편, 비록 도시되지는 않았지만, 후술하는 예측 샘플 필터링 절차가 수행되는 경우, 인트라 예측부(185)는 예측 샘플 필터부(미도시)를 더 포함할 수도 있다.
영상 부호화 장치(100)는 복수의 인트라 예측 모드/타입들 중 상기 현재 블록에 대하여 적용되는 모드/타입을 결정할 수 있다. 영상 부호화 장치(100)는 상기 인트라 예측 모드/타입들에 대한 율왜곡 비용(RD cost)을 비교하고 상기 현재 블록에 대한 최적의 인트라 예측 모드/타입을 결정할 수 있다.
한편, 영상 부호화 장치(100)는 예측 샘플 필터링 절차를 수행할 수도 있다. 예측 샘플 필터링은 포스트 필터링이라 불릴 수 있다. 상기 예측 샘플 필터링 절차에 의하여 상기 예측 샘플들 중 일부 또는 전부가 필터링될 수 있다. 경우에 따라 상기 예측 샘플 필터링 절차는 생략될 수 있다.
다시 도 4를 참조하여, 영상 부호화 장치(100)는 예측 샘플들 또는 필터링된 예측 샘플들을 기반으로 상기 현재 블록에 대한 레지듀얼 샘플들을 생성할 수 있다(S420). 영상 부호화 장치(100)는 현재 블록의 원본 샘플들로부터 상기 예측 샘플들을 감산하여 상기 레지듀얼 샘플들을 도출할 수 있다. 즉, 영상 부호화 장치(100)는 원본 샘플값으로부터 대응하는 예측 샘플값을 감산함으로써, 레지듀얼 샘플값을 도출할 수 있다.
영상 부호화 장치(100)는 상기 인트라 예측에 관한 정보(예측 정보) 및 상기 레지듀얼 샘플들에 관한 레지듀얼 정보를 포함하는 영상 정보를 인코딩할 수 있다(S430). 상기 예측 정보는 상기 인트라 예측 모드 정보 및/또는 상기 인트라 예측 기법 정보를 포함할 수 있다. 영상 부호화 장치(100)는 인코딩된 영상 정보를 비트스트림 형태로 출력할 수 있다. 출력된 비트스트림은 저장 매체 또는 네트워크를 통하여 영상 복호화 장치(200)로 전달될 수 있다.
상기 레지듀얼 정보는 후술하는 레지듀얼 코딩 신택스를 포함할 수 있다. 영상 부호화 장치(100)는 상기 레지듀얼 샘플들을 변환/양자화하여 양자화된 변환 계수들을 도출할 수 있다. 상기 레지듀얼 정보는 상기 양자화된 변환 계수들에 대한 정보를 포함할 수 있다.
한편, 전술한 바와 같이 영상 부호화 장치(100)는 복원 픽처(복원 샘플들 및 복원 블록 포함)를 생성할 수 있다. 이를 위하여 영상 부호화 장치(100)는 상기 양자화된 변환 계수들을 다시 역양자화/역변환 처리하여 (수정된) 레지듀얼 샘플들을 도출할 수 있다. 이와 같이 레지듀얼 샘플들을 변환/양자화 후 다시 역양자화/역변환을 수행하는 이유는 영상 복호화 장치(200)에서 도출되는 레지듀얼 샘플들과 동일한 레지듀얼 샘플들을 도출하기 위함이다. 영상 부호화 장치(100)는 상기 예측 샘플들과 상기 (수정된) 레지듀얼 샘플들을 기반으로 상기 현재 블록에 대한 복원 샘플들을 포함하는 복원 블록을 생성할 수 있다. 상기 복원 블록을 기반으로 상기 현재 픽처에 대한 복원 픽처가 생성될 수 있다. 상기 복원 픽처에 인루프 필터링 절차 등이 더 적용될 수 있음은 전술한 바와 같다.
도 6은 인트라 예측 기반 비디오/영상 디코딩 방법을 도시한 흐름도이다.
영상 복호화 장치(200)는 상기 영상 부호화 장치(100)에서 수행된 동작과 대응되는 동작을 수행할 수 있다.
도 6의 디코딩 방법은 도 3의 영상 복호화 장치(200)에 의해 수행될 수 있다. 단계 S610 내지 S630은 인트라 예측부(265)에 의하여 수행될 수 있고, 단계 S610의 예측 정보 및 단계 S640의 레지듀얼 정보는 엔트로피 디코딩부(210)에 의하여 비트스트림으로부터 획득될 수 있다. 영상 복호화 장치(200)의 레지듀얼 처리부는 상기 레지듀얼 정보를 기반으로 현재 블록에 대한 레지듀얼 샘플들을 도출할 수 있다(S640). 구체적으로 상기 레지듀얼 처리부의 역양자화부(220)는 상기 레지듀얼 정보를 기반으로 도출된 양자화된 변환 계수들을 기반으로, 역양자화를 수행하여 변환 계수들을 도출하고, 상기 레지듀얼 처리부의 역변환부(230)는 상기 변환 계수들에 대한 역변환을 수행하여 상기 현재 블록에 대한 레지듀얼 샘플들을 도출할 수 있다. 단계 S650은 가산부(235) 또는 복원부에 의하여 수행될 수 있다.
구체적으로 영상 복호화 장치(200)는 수신된 예측 정보(인트라 예측 모드/타입 정보)를 기반으로 현재 블록에 대한 인트라 예측 모드/타입을 도출할 수 있다(S610). 또한, 영상 복호화 장치(200)는 상기 현재 블록의 주변 참조 샘플들을 도출할 수 있다(S620). 영상 복호화 장치(200)는 상기 인트라 예측 모드/타입 및 상기 주변 참조 샘플들을 기반으로 상기 현재 블록 내 예측 샘플들을 생성할 수 있다(S630). 이 경우 영상 복호화 장치(200)는 예측 샘플 필터링 절차를 수행할 수 있다. 예측 샘플 필터링은 포스트 필터링이라 불릴 수 있다. 상기 예측 샘플 필터링 절차에 의하여 상기 예측 샘플들 중 일부 또는 전부가 필터링될 수 있다. 경우에 따라 예측 샘플 필터링 절차는 생략될 수 있다.
영상 복호화 장치(200)는 수신된 레지듀얼 정보를 기반으로 상기 현재 블록에 대한 레지듀얼 샘플들을 생성할 수 있다(S640). 영상 복호화 장치(200)는 상기 예측 샘플들 및 상기 레지듀얼 샘플들을 기반으로 상기 현재 블록에 대한 복원 샘플들을 생성하고, 상기 복원 샘플들을 포함하는 복원 블록을 도출할 수 있다(S650). 상기 복원 블록을 기반으로 상기 현재 픽처에 대한 복원 픽처가 생성될 수 있다. 상기 복원 픽처에 인루프 필터링 절차 등이 더 적용될 수 있음은 전술한 바와 같다.
도 7은 본 개시에 따른 인트라 예측부(265)의 구성을 예시적으로 도시한 도면이다.
도 7에 도시된 바와 같이, 영상 복호화 장치(200)의 인트라 예측부(265)는 인트라 예측 모드/타입 결정부(266), 참조 샘플 도출부(267), 예측 샘플 도출부(268)를 포함할 수 있다. 인트라 예측 모드/타입 결정부(266)는 영상 부호화 장치(100)의 인트라 예측 모드/타입 결정부(186)에서 생성되어 시그널링된 인트라 예측 모드/타입 정보를 기반으로 상기 현재 블록에 대한 인트라 예측 모드/타입을 결정하고, 참조 샘플 도출부(266)는 현재 픽처 내 복원된 참조 영역으로부터 상기 현재 블록의 주변 참조 샘플들을 도출할 수 있다. 예측 샘플 도출부(268)는 상기 현재 블록의 예측 샘플들을 도출할 수 있다. 한편, 비록 도시되지는 않았지만, 전술한 예측 샘플 필터링 절차가 수행되는 경우, 인트라 예측부(265)는 예측 샘플 필터부(미도시)를 더 포함할 수도 있다.
상기 인트라 예측 모드 정보는 예를 들어 MPM(most probable mode)가 상기 현재 블록에 적용되는지 아니면 리메이닝 모드(remaining mode)가 적용되는지 여부를 나타내는 플래그 정보(ex. intra_luma_mpm_flag)를 포함할 수 있고, 상기 MPM이 상기 현재 블록에 적용되는 경우 상기 인트라 예측 모드 정보는 상기 인트라 예측 모드 후보들(MPM 후보들) 중 하나를 가리키는 인덱스 정보(ex. intra_luma_mpm_idx)를 더 포함할 수 있다. 상기 인트라 예측 모드 후보들(MPM 후보들)은 MPM 후보 리스트 또는 MPM 리스트로 구성될 수 있다. 또한, 상기 MPM이 상기 현재 블록에 적용되지 않는 경우, 상기 인트라 예측 모드 정보는 상기 인트라 예측 모드 후보들(MPM 후보들)을 제외한 나머지 인트라 예측 모드들 중 하나를 가리키는 리메이닝 모드 정보(ex. intra_luma_mpm_remainder)를 더 포함할 수 있다. 영상 복호화 장치(200)는 상기 인트라 예측 모드 정보를 기반으로 상기 현재 블록의 인트라 예측 모드를 결정할 수 있다.
또한, 상기 인트라 예측 기법 정보는 다양한 형태로 구현될 수 있다. 일 예로, 상기 인트라 예측 기법 정보는 상기 인트라 예측 기법들 중 하나를 지시하는 인트라 예측 기법 인덱스 정보를 포함할 수 있다. 다른 예로, 상기 인트라 예측 기법 정보는 상기 MRL이 상기 현재 블록에 적용되는지 및 적용되는 경우에는 몇 번째 참조 샘플 라인이 이용되는지 여부를 나타내는 참조 샘플 라인 정보(ex. intra_luma_ref_idx), 상기 ISP가 상기 현재 블록에 적용되는지를 나타내는 ISP 플래그 정보(ex. intra_subpartitions_mode_flag), 상기 ISP가 적용되는 경우에 서브파티션들의 분할 타입을 지시하는 ISP 타입 정보 (ex. intra_subpartitions_split_flag), PDPC의 적용 여부를 나타내는 플래그 정보 또는 LIP의 적용 여부를 나타내는 플래그 정보 중 적어도 하나를 포함할 수 있다. 또한, 상기 인트라 예측 타입 정보는 상기 현재 블록에 MIP가 적용되는지 여부를 나타내는 MIP 플래그를 포함할 수 있다. 본 개시에서 ISP 플래그 정보는 ISP 적용 지시자로 불릴 수 있다.
상기 인트라 예측 모드 정보 및/또는 상기 인트라 예측 기법 정보는 본 개시에서 설명된 코딩 방법을 통하여 인코딩/디코딩될 수 있다. 예를 들어, 상기 인트라 예측 모드 정보 및/또는 상기 인트라 예측 기법 정보는 truncated (rice) binary code를 기반으로 엔트로피 코딩(ex. CABAC, CAVLC)을 통하여 인코딩/디코딩될 수 있다.
한편, 상기 인트라 예측 모드는 PLANAR 모드, DC 모드 및 방향성 인트라 예측 모드들 외에도 크로마 샘플을 위한 CCLM(cross-component linear model) 모드를 더 포함할 수 있다. CCLM 모드는 CCLM 파라미터 도출을 위하여 좌측 샘플들을 고려하는지, 상측 샘플들을 고려하는지, 둘 다를 고려하는지에 따라 L_CCLM, T_CCLM, LT_CCLM으로 나누어질 수 있으며, 크로마 성분에 대하여만 적용될 수 있다.
인트라 예측 모드는 예를 들어 아래 표 1과 같이 인덱싱될 수 있다.
Figure PCTKR2023014265-appb-img-000001
한편, 상기 인트라 예측 타입(또는 부가 인트라 예측 모드 등)은 상술한 LIP, PDPC, MRL, ISP, MIP 중 적어도 하나를 포함할 수 있다. 상기 인트라 예측 타입은 인트라 예측 타입 정보를 기반으로 지시될 수 있으며, 상기 인트라 예측 타입 정보는 다양한 형태로 구현될 수 있다. 일 예로, 상기 인트라 예측 타입 정보는 상기 인트라 예측 타입들 중 하나를 지시하는 인트라 예측 타입 인덱스 정보를 포함할 수 있다. 다른 예로, 상기 인트라 예측 타입 정보는 상기 MRL이 상기 현재 블록에 적용되는지 및 적용되는 경우에는 몇 번째 참조 샘플 라인이 이용되는지 여부를 나타내는 참조 샘플 라인 정보(ex. intra_luma_ref_idx), 상기 ISP가 상기 현재 블록에 적용되는지를 나타내는 ISP 플래그 정보(ex. intra_subpartitions_mode_flag), 상기 ISP가 적용되는 경우에 서브파티션들이 분할 타입을 지시하는 ISP 타입 정보 (ex. intra_subpartitions_split_flag), PDCP의 적용 여부를 나타내는 플래그 정보 또는 LIP의 적용 여부를 나타내는 플래그 정보 중 적어도 하나를 포함할 수 있다. 또한, 상기 인트라 예측 타입 정보는 상기 현재 블록에 MIP가 적용되는지 여부를 나타내는 MIP 플래그(또는 intra_mip_flag라고 불릴 수 있다)를 포함할 수 있다.
MRL(Multi Reference Line) 개요
종래의 인트라 예측은 현재 블록의 상측 첫 번째 라인의 주변 샘플들 및 좌측 첫 번째 라인의 주변 샘플들만을 인트라 예측을 위한 참조 샘플들로 이용하였다. 그러나, MRL 방법에서, 영상 부호화 장치(100) 및/또는 영상 복호화 장치(200)는 현재 블록의 상측 및/또는 좌측에 대하여 하나 내지 세 개 샘플 거리만큼 떨어진 샘플 라인에 위치한 주변 샘플들을 참조 샘플들로 이용하여 인트라 예측을 수행할 수 있다.
도 8 및 도 9는 본 개시에 따른 MRL 기반 인트라 예측에 이용되는 참조 샘플 라인을 도시한 도면이다. 도 8은 다중 참조 라인의 예일 수 있다. 도 8을 참조하면, 참조 샘플 라인 0(Reference line 0), 참조 샘플 라인 1(Reference line 1), 참조 샘플 라인 2(Reference line 2) 또는 참조 샘플 라인 3(Reference line 3) 중 적어도 하나가 현재 블록의 예측을 위하여 사용될 수 있다. 여기서, 다중 참조 라인 인덱스(ex. mrl_idx)는 인트라 예측을 위해 사용되는 참조 샘플 라인을 지시하는 정보일 수 있다. 예를 들어, 다중 참조 라인 인덱스는 아래의 표 2와 같이 코딩 유닛 신택스를 통하여 시그널링될 수 있다. 다중 참조 라인 인덱스는 intra_luma_ref_idx syntax element 형태로 구성될 수 있다.
Figure PCTKR2023014265-appb-img-000002
여기서, intra_luma_ref_idx[x0][y0]는 아래의 표 3과 같이 인트라 참조 라인 인덱스 IntraLumaRefLineIdx[x0][y0]를 나타낼 수 있다. intra_luma_ref_idx[x0][y0]가 존재하지 않는 경우(시그널링되지 않는 경우), intra_luma_ref_idx[x0][y0]는 0으로 추론될 수 있다. intra_luma_ref_idx는 (인트라) 참조 샘플 라인 인덱스 또는 mrl_idx로 불릴 수 있다. 또한, intra_luma_ref_idx는 intra_luma_ref_line_idx라고 불릴 수도 있다.
Figure PCTKR2023014265-appb-img-000003
MRL은 CTU(coding tree unit) 내 첫 번째 라인(행)의 블록들에 대하여는 사용되지 않을 수 있다. 이는 현재 CTU 라인 외부의 확장 참조 샘플들(extended reference lines)이 사용되는 것을 막기 위한 것일 수 있다. 즉, 현재 CTU 내에 포함되지 않은 외부의 참조 샘플들이 사용되는 것을 막기 위한 것일 수 있다. 또한, 상술한 추가 참조 라인이 사용되는 경우에는 PDPC(Position dependent intra prediction)가 사용되지 않을 수 있다. 즉, 확장 참조 샘플들이 사용되는 경우 PDPC가 사용되지 않을 수 있다.
MRL 방법은 현재 블록의 상측 및/또는 좌측에 대하여 하나 내지 세 개의 샘플 거리만큼 떨어진 샘플 라인에 위치한 주변 샘플들을 참조 샘플들로 이용하여 인트라 예측을 수행할 수 있다. 그러나, extended MRL에서는 현재 블록의 상측 및/또는 좌측에 대하여 열두개 샘플 거리만큼 떨어진 샘플 라인에 위치한 주변 샘플들을 참조 샘플들로 이용하여 인트라 예측이 수행될 수 있다. 도 9를 참조하면, 현재 블록에 인접한 복수의 참조 샘플 라인들이 extended MRL 후보 리스트로 구성될 수 있다. 예를 들어, extended MRL list의 참조 샘플 라인 인덱스는 {1, 3, 5, 7, 12}로 구성될 수 있다.
extended MRL이 사용되는 경우, intr_luma_ref_idx는 아래의 표 4와 같이 구성될 수 있다. intra_luma_ref_idx[x0][y0]는 인트라 참조 라인 인덱스 IntraLumaRefLineIdx[x0][y0]를 나타낼 수 있다. intra_luma_ref_idx[x0][y0]가 존재하지 않는 경우(시그널링되지 않는 경우), intra_luma_ref_idx[x0][y0]는 0으로 추론될 수 있다. intra_luma_ref_idx는 (인트라) 참조 샘플 라인 인덱스 또는 mrl_idx로 불릴 수 있다. 또한, intra_luma_ref_idx는 intra_luma_ref_line_idx라고 불릴 수도 있다.
Figure PCTKR2023014265-appb-img-000004
TIMD(Template based intra mode derivation) 개요
도 10은 본 개시에 따른 TIMD에 사용되는 템플릿 영역과 참조 샘플을 도시한 도면이다. TIMD는 주변의 인접한 인트라 블록 및 인터 블록의 IPM(Intra Prediction Mode) 인트라 모드에 대하여, 템플릿 영역(1010)으로부터 예측한 예측 블록과 실제 복원 샘플과의 SATD(Sum of absolute transformed difference)를 구한 뒤 가장 적은 SATD를 갖는 모드를 현재 블록의 인트라 모드로 선택하는 모드일 수 있다.
본 개시의 다른 실시예에 따르면, 본 개시는 가장 적은 SATD를 갖는 2개의 모드를 선택한 뒤, 선택된 두 개의 예측 모드에 대한 예측 블록들을 각각 생성할 수 있다. 생성된 두 개의 예측 블록들을 가중 합(weighted sum)하는 방법으로 블렌딩(blending)하여 현재 블록의 예측 블록이 생성될 수 있다. 여기서, 두 개의 모드를 블렌딩하는 방법은 아래의 수학식 1의 조건을 만족하는 경우 수행될 수 있다.
Figure PCTKR2023014265-appb-img-000005
여기서, costMode1은 가장 작은 SATD를 갖는 모드를 의미할 수 있다. 또한, costMode2는 두 번째로 작은 SATD를 갖는 모드를 의미할 수 있다.
수학식 1의 조건을 만족할 경우, 최종 예측 블록은 2개의 모드를 이용하여 생성된 예측 블록들을 블렌딩하여 생성될 수 있다. 그렇지 않은 경우, 최종 예측 블록은 최소 SATD 값을 갖는 1개의 모드만을 이용하여 생성될 수 있다.
최소 SATD를 갖는 2개의 예측 모드들을 이용하여 생성된 예측 블록들을 블렌딩할 경우 적용되는 가중치 비율은 아래의 수학식 2와 같을 수 있다.
Figure PCTKR2023014265-appb-img-000006
여기서, weight1은 가장 작은 SATD를 갖는 모드에 기반하여 생성된 예측 블록에 적용되는 가중치를 의미할 수 있다. 또한, weight2는 두번째로 작은 SATD를 갖는 모드에 기반하여 생성된 예측 블록에 적용되는 가중치를 의미할 수 있다.
DIMD(Decoder-side intra mode derivation) 개요
도 11은 본 개시에 따른 DIMD 모드에서 HoG(Histogram of Gradient)를 구성하는 방법을 도시한 도면이다. 본 개시에 따른 DIMD 모드는 인트라 예측 모드 정보를 직접 전송하지 않고 영상 부호화 장치(100) 및 영상 복호화 장치(200)에서 유도하여 사용할 수 있다. DIMD 모드는 현재 블록에 인접한 두 번째 주변 참조 행(column)과 열(row)로부터 수평 그라디언트(gradient) 및 수직 그라디언트를 구하고, 그로부터 HoG를 구성함으로써 수행될 수 있다.
도 11을 참조하면, HoG는 현재 블록 주변 3 픽셀 L-모양 열 및 행(1110)을 이용하여 소벨 필터(Sobel filter)를 적용함으로써 구할 수 있다. 이때, 블록의 경계가 서로 다른 CTU에 존재하는 경우, 현재 블록의 주변 픽셀들은 텍스쳐 분석(texture analysis)에 사용되지 않을 수 있다.
한편, 소벨 필터는 소벨 연산자(sobel operator)라고도 불릴 수 있으며, 가장자리를 디텍팅(detecting)하는데 효율적인 필터일 수 있다. 소벨 필터를 사용하는 경우, 수직 방향용 소벨 필터와 수평 방향용 소벨 필터의 두 가지 유형의 소벨 필터가 사용될 수 있다.
도 12는 본 개시에 따른 DIMD 모드 적용 시 예측 블록을 구성하는 방법을 도시한 도면이다. 도 12에 따르면, DIMD 모드는 가장 큰 히스토그램 진폭(histogram amplitude)를 갖는 2개의 인트라 모드들(1210)을 선택하고, 선택된 2개의 인트라 모드들을 이용하여 예측한 예측 블록들(1220, 1230)과 플래너 모드로 예측한 예측 블록(1240)을 블렌딩하여 최종 예측 블록(1250)을 구성함으로써 수행될 수 있다. 이때, 예측 블록들을 블렌딩할 때 적용되는 가중치는 히스토그램의 진폭으로부터 유도될 수 있다(1260). 또한, DIMD 플래그가 블록 단위로 전송되어 DIMD 사용 여부를 확인할 수 있다.
이하, 본 개시의 다양한 실시예에 따른 영상 부호화/복호화 방법을 상세하게 설명하기로 한다.
실시예 1
본 개시는 MRL 기술을 이용한 플래너 모드 수행 방법에 관한 것일 수 있다. 즉, 본 개시는 현재 블록의 상측 및/또는 좌측에 대하여 k 샘플 거리만큼 떨어진 샘플 라인에 위치한 기 복원 샘플들을 참조 샘플로 이용하여 플래너 모드를 수행하는 방법일 수 있다. 여기서, k는 자연수일 수 있다. 이때, 현재 블록 내 샘플의 위치와 인접하지 않은 참조 샘플간 거리를 고려하여 플래너 모드를 수행함으로써 효과적인 플래너 예측 블록을 생성할 수 있다.
도 13은 본 개시에 따른 MRL 기반 인트라 예측 방법을 도시한 도면이다. 도 13을 참조하면, 현재 블록(1310) 내 (x, y) 위치의 예측 샘플 p(x, y)(1320)은 (x, y)의 상측 참조 샘플 T, 우상측 참조 샘플 TR, 좌측 참조 샘플 L 및/또는 좌하측 참조 샘플 BL을 이용하여 생성될 수 있다.
본 개시의 일 실시예에 따르면, 영상 부호화 장치(100) 및/또는 영상 복호화 장치(200)는 수평 방향 플래너 모드 및/또는 수직 방향 플래너 모드를 이용하여 예측 샘플(1320)을 생성할 수 있다. 현재 블록의 좌상측 샘플의 위치를 (0, 0)이라고 했을 때, 수평 방향 플래너 모드는 (-k-1, y)에 위치한 좌측 참조 샘플 L과 (W, -k-1)에 위치한 우상측 참조 샘플 TR으로 (x,y) 위치의 예측 샘플
Figure PCTKR2023014265-appb-img-000007
를 생성하는 모드일 수 있다. 여기서, k는 현재 블록과 참조 샘플 라인 사이의 거리일 수 있다. 또한, W는 현재 블록의 너비일 수 있다. 예측 샘플
Figure PCTKR2023014265-appb-img-000008
는 아래의 수학식 3을 이용하여 계산될 수 있다.
Figure PCTKR2023014265-appb-img-000009
수학식 3에서 mh 및 nh는 각각 L 및 TR에 적용되는 가중치일 수 있다. mh 및 nh는 아래의 수학식 4를 이용하여 계산될 수 있다. 즉, mh 및 nh는 현재 블록과 참조 샘플 라인 사이의 거리, 현재 블록의 크기 및/또는 예측 샘플의 위치에 기반하여 결정될 수 있다.
Figure PCTKR2023014265-appb-img-000010
현재 블록의 좌상측 픽셀의 위치를 (0, 0)이라고 했을 때, 수직 방향 플래너 모드는 (x, -k-1)에 위치한 상측 참조 샘플 T 및 (-k-1, H)에 위치한 좌하측 참조 샘플 BL을 이용하여 (x, y) 위치의 예측 샘플 pv(x,y)를 생성하는 모드일 수 있다. 여기서, k는 현재 블록과 참조 샘플 라인 사이의 거리일 수 있다. 또한, H는 현재 블록의 높이일 수 있다. 예측 샘플 pv(x,y)는 아래의 수학식 5를 이용하여 계산될 수 있다.
Figure PCTKR2023014265-appb-img-000011
수학식 5에서 mv 및 nv는 각각 T 및 BL에 적용되는 가중치일 수 있다. mv 및 nv는 아래의 수학식 6을 이용하여 계산될 수 있다. 즉, mv 및 nv는 현재 블록과 참조 샘플 라인 사이의 거리, 현재 블록의 크기 및/또는 예측 샘플의 위치에 기반하여 결정될 수 있다.
Figure PCTKR2023014265-appb-img-000012
본 개시에 따른 최종 예측 샘플은 수학식 7을 이용하여 계산할 수 있다. 예를 들어, 최종 예측 샘플은 수평 방향 플래너 모드를 이용하여 생성된 예측 샘플 ph(x,y)일 수 있다. 또는, 최종 예측 샘플은 수직 방향 플래너 모드를 이용하여 생성된 예측 샘플 pv(x,y)일 수 있다. 또는, 최종 예측 샘플은 수평 방향 플래너 모드를 이용하여 생성된 예측 샘플 ph(x,y) 및 수직 방향 플래너 모드를 이용하여 생성된 예측 샘플 pv(x,y)의 평균일 수 있다.
Figure PCTKR2023014265-appb-img-000013
본 개시의 다른 실시예에 따르면, 수평 방향 플래너 모드를 이용하여 생성된 예측 샘플 ph(x,y) 및 수직 방향 플래너 모드를 이용하여 생성된 예측 샘플 pv(x,y)는 각각 수학식 8을 이용하여 계산될 수도 있다.
Figure PCTKR2023014265-appb-img-000014
수학식 8에서 inth는 mh를 근사하여 정수로 변환한 값일 수 있으며, 0 ~ 2i의 값을 가질 수 있다. 또한, intv는 mv를 근사하여 정수로 변환한 값일 수 있으며, 0 ~ 2i의 값을 가질 수 있다. 이때, i는 자연수일 수 있다.
도 14는 본 개시의 실시예에 따른 예측 샘플 생성을 위해 사용되는 참조 샘플들을 도시한 도면이다. 본 개시는 수평 방향 플래너 모드를 수행하기 위해 도 14와 같이 좌측 참조 샘플 라인으로부터 수평 방향으로 2α만큼 떨어진 (2α-k, -k-1) 위치의 TR 샘플을 이용할 수 있다. 이 경우, 영상 부호화 장치(100) 및/또는 영상 복호화 장치(200)는 상기 수학식 3을 이용하여 현재 블록(1410) 내 예측 샘플(1420)을 생성할 수 있다. 이때, mh는 L에 적용되는 가중치일 수 있다. 또한, nh는 TR에 적용되는 가중치일 수 있다. mh 및 nh는 아래의 수학식 9를 이용하여 계산될 수 있다.
Figure PCTKR2023014265-appb-img-000015
도 14를 참고하면, 본 개시는 수직 방향 플래너 모드를 수행하기 위해 상측 참조 샘플 라인으로부터 수직 방향으로 2β만큼 떨어진 (-k-1, 2β-k) 위치의 BL 샘플을 이용할 수 있다. 이 경우, 영상 부호화 장치(100) 및/또는 영상 복호화 장치(200)는 상기 수학식 5를 이용하여 현재 블록(1410) 내 예측 샘플(1420)을 생성할 수 있다. 이때, mv는 T에 적용되는 가중치일 수 있다. 또한, nv는 BL에 적용되는 가중치일 수 있다. mv 및 nv는 아래의 수학식 10을 이용하여 계산될 수 있다.
Figure PCTKR2023014265-appb-img-000016
도 15는 본 개시의 다른 실시예에 따른 예측 샘플 생성을 위해 사용되는 참조 샘플들을 도시한 도면이다. 도 15를 참조하면, 본 개시는 현재 블록(1510)의 좌측으로 k 샘플 거리, 상측으로 1 샘플 거리만큼 떨어진 참조 샘플 라인에 위치한 기 복원 샘플들을 참조 샘플로 이용하여 플래너 모드 예측을 수행할 수 있다. 여기서, k는 자연수일 수 있다. 본 개시는 수평 방향 플래너 모드를 수행하기 위하여 상기 수학식 3을 이용하여 예측 샘플(1520)을 생성할 수 있다. 즉, 수평 방향 플래너 모드를 수행하기 위하여, 영상 부호화 장치(100) 및/또는 영상 복호화 장치(200)는 현재 블록(1510)으로부터 k 샘플 거리만큼 떨어진 좌측 참조 샘플 L 및 현재 블록(1510)으로부터 1 샘플 거리만큼 떨어진 우상측 참조 샘플 TR을 이용할 수 있다. 이때, mh는 L에 적용되는 가중치일 수 있다. 또한, nh는 TR에 적용되는 가중치일 수 있다. mh 및 nh는 아래의 수학식 11을 이용하여 계산될 수 있다.
Figure PCTKR2023014265-appb-img-000017
본 개시는 수직 방향 플래너 모드를 수행하기 위해 상기 수학식 5를 이용하여 예측 샘플(1520)을 생성할 수 있다. 즉, 수직 방향 플래너 모드를 수행하기 위하여, 영상 부호화 장치(100) 및/또는 영상 복호화 장치(200)는 현재 블록(1510)으로부터 1 샘플 거리만큼 떨어진 상측 참조 샘플 T 및 현재 블록(1510)으로부터 k 샘플 거리만큼 떨어진 좌하측 참조 샘플 BL을 이용할 수 있다. 이때, mv는 T에 적용되는 가중치일 수 있다. 또한, nv는 BL에 적용되는 가중치일 수 있다. mv 및 nv는 아래의 수학식 12를 이용하여 계산될 수 있다.
Figure PCTKR2023014265-appb-img-000018
도 16은 본 개시의 또 다른 실시예에 따른 예측 샘플 생성을 위해 사용되는 참조 샘플들을 도시한 도면이다. 도 16을 참조하면, 본 개시는 현재 블록(1610)의 좌측으로 1 샘플 거리, 상측으로 k 샘플 거리만큼 떨어진 참조 샘플 라인에 위치한 기 복원 샘플들을 참조 샘플로 이용하여 플래너 모드 예측을 수행할 수 있다. 여기서, k는 자연수일 수 있다. 수평 방향 플래너 모드를 수행하기 위하여, 본 개시는 상기 수학식 3을 이용하여 예측 샘플(1620)을 생성할 수 있다. 즉, 수평 방향 플래너 모드를 수행하기 위하여, 영상 부호화 장치(100) 및/또는 영상 복호화 장치(200)는 현재 블록(1610)으로부터 1 샘플 거리만큼 떨어진 좌측 참조 샘플 L 및 현재 블록(1610)으로부터 k 샘플 거리만큼 떨어진 우상측 참조 샘플 TR을 이용할 수 있다. 이때, mh는 L에 적용되는 가중치일 수 있다. 또한, nh는 TR에 적용되는 가중치일 수 있다. mh 및 nh는 아래의 수학식 13을 이용하여 계산될 수 있다.
Figure PCTKR2023014265-appb-img-000019
본 개시는 수직 방향 플래너 모드를 수행하기 위해 상기 수학식 5를 이용하여 예측 샘플(1620)을 생성할 수 있다. 즉, 수직 방향 플래너 모드를 수행하기 위하여, 영상 부호화 장치(100) 및/또는 영상 복호화 장치(200)는 현재 블록(1610)으로부터 k 샘플 거리만큼 떨어진 상측 참조 샘플 T 및 현재 블록(1610)으로부터 1 샘플 거리만큼 떨어진 좌하측 참조 샘플 BL을 이용할 수 있다. 이때, mv는 T에 적용되는 가중치일 수 있다. 또한, nv는 BL에 적용되는 가중치일 수 있다. mv 및 nv는 아래의 수학식 14를 이용하여 계산될 수 있다.
Figure PCTKR2023014265-appb-img-000020
도 17은 본 개시의 일 실시예에 따른 예측 샘플 생성을 위한 보정된 참조 샘플들을 도시한 도면이다. 도 17은 현재 블록(1710)의 좌상측 위치를 (0, 0)으로 정의한 도면이며, 현재 블록(1710)의 좌측 영역 및 상측 영역은 기 복원된 영역일 수 있다. 도 17을 참조하면, 본 개시는 현재 블록(1710)의 좌측으로 k+1 샘플 거리, 상측으로 1 샘플 거리만큼 떨어진 참조 샘플 라인에 위치한 기 복원 샘플들을 참조 샘플로 이용할 때, 현재 블록(1710)과 인접한 좌측 참조 샘플 L' 및 현재 블록(1710)과 인접한 좌하측 참조 샘플 BL'를 이용하여 보다 정확한 플래너 예측 모드를 수행할 수 있다. 이때, L' 및 BL'는 기 복원 영역에 포함된 참조 샘플들일 수 있으며, 다양한 방법으로 정의될 수 있다.
예를 들어, L'는 (-1, y) 위치의 기 복원 샘플일 수 있으며, BL'는 (-1, H) 위치의 기 복원 샘플일 수 있다. 여기서, y는 예측하고자 하는 예측 샘플(1720)의 y좌표일 수 있다. 또한, H는 현재 블록(1710)의 높이일 수 있다. 다른 예로, L'는 (-1-k, y) 위치의 기 복원 샘플 L일 수 있다. 즉, L과 L'는 동일할 수 있다. 또한, BL'는 (-1-k, H) 위치의 기 복원 샘플 BL일 수 있다. 즉, BL과 BL'는 동일할 수 있다. 또 다른 예로, L' 및 BL'는 (-k-1, -1)에 위치한 참조 샘플 p와 (-1, -1)에 위치한 참조 샘플 q 사이의 차이 값 d(= q-p)에 기반하여 정의될 수 있다. 즉, L'는 L+d일 수 있으며, BL'는 BL+d일 수 있다. 여기서, d는 참조 샘플 p와 참조 샘플 q 사이의 거리일 수 있다. 또는, d는 참조 샘플 p의 샘플 값과 참조 샘플 q의 샘플 값의 차이일 수도 있다.
또 다른 예로, L' 및 BL'는 좌측 참조 샘플 L 및 우상측 참조 샘플 TR을 이용하여 수평 플래너 모드로 생성될 수 있다. 또 다른 예로, L' 및 BL'는 참조 샘플 q 및 좌하측 참조 샘플 BL을 이용하여 수직 플래너 모드로 생성될 수 있다. 또 다른 예로, BL'는 참조 샘플 q 및 (-k-1, H+1) 위치의 참조 샘플을 이용하여 수직 플래너 모드로 생성될 수 있다.
또 다른 예로, L' 및 BL'는 좌측 참조 샘플 L 및 우상측 참조 샘플 TR을 이용한 수평 플래너 모드와 참조 샘플 q 및 좌하측 참조 샘플 BL을 이용한 수직 플래너 모드의 평균으로 생성될 수 있다. 즉, L' 및 BL'는 좌측 참조 샘플 L 및 우상측 참조 샘플 TR을 이용하여 수평 플래너 모드로 생성한 샘플의 샘플 값과 참조 샘플 q 및 좌하측 참조 샘플 BL을 이용하여 수직 플래너 모드로 생성한 샘플의 샘플 값의 평균으로 생성될 수 있다.
또 다른 예로, BL'는 좌측 참조 샘플 L 및 우상측 참조 샘플 TR을 이용한 수평 플래너 모드와 참조 샘플 q 및 (-k-1, H+1) 위치의 참조 샘플을 이용한 수직 플래너 모드의 평균으로 생성될 수 있다. 즉, BL'는 좌측 참조 샘플 L 및 우상측 참조 샘플 TR을 이용하여 수평 플래너 모드로 생성된 샘플의 샘플 값과 참조 샘플 q 및 (-k-1, H+1) 위치의 참조 샘플을 이용하여 수직 플래너 모드로 생성된 샘플의 샘플 값의 평균으로 생성될 수 있다.
L' 및 BL'를 이용하여 수평 방향 플래너 모드로 예측 샘플(1720)을 생성하기 위하여, 아래의 수학식 15가 사용될 수 있다. 수학식 15에서 mh는 L'에 적용되는 가중치일 수 있다. 또한, nh는 TR에 적용되는 가중치일 수 있다. mh 및 nh는 아래의 수학식 16을 이용하여 계산될 수 있다.
Figure PCTKR2023014265-appb-img-000021
Figure PCTKR2023014265-appb-img-000022
L' 및 BL'를 이용하여 수직 방향 플래너 모드로 예측 샘플(1720)을 생성하기 위하여, 아래의 수학식 17이 사용될 수 있다. 수학식 17에서 mv는 T에 적용되는 가중치일 수 있다. 또한, nv는 BL'에 적용되는 가중치일 수 있다. mv 및 nv는 아래의 수학식 18을 이용하여 계산될 수 있다.
Figure PCTKR2023014265-appb-img-000023
Figure PCTKR2023014265-appb-img-000024
도 18은 본 개시의 다른 실시예에 따른 예측 샘플 생성을 위한 보정된 참조 샘플들을 도시한 도면이다. 도 18은 현재 블록(1810)의 좌상측 위치를 (0, 0)으로 정의한 도면이며, 현재 블록(1810)의 좌측 영역 및 상측 영역은 기 복원된 영역일 수 있다. 도 18을 참조하면, 본 개시는 현재 블록(1810)의 좌측으로 1 샘플 거리, 상측으로 k+1 샘플 거리만큼 떨어진 참조 샘플 라인에 위치한 기 복원 샘플들을 참조 샘플로 이용할 때, 현재 블록(1810)과 인접한 상측 참조 샘플 T' 및 현재 블록(1810)과 인접한 우상측 참조 샘플 TR'을 이용하여 보다 정확한 플래너 예측 모드를 수행할 수 있다. 이때, T' 및 TR'는 기 복원 영역에 포함된 참조 샘플들일 수 있으며, 다양한 방법으로 정의될 수 있다.
예를 들어, T'는 (x, -1) 위치의 기 복원 샘플일 수 있으며, TR'는 (W, -1) 위치의 기 복원 샘플일 수 있다. 여기서, x는 예측하고자 하는 예측 샘플(1820)의 x좌표일 수 있다. 또한, W는 현재 블록(1810)의 너비일 수 있다. 또 다른 예로, T'는 (x, -1-k) 위치의 기 복원 샘플 T일 수 있다. 즉, T'는 T와 동일할 수 있다. 또한, TR'는 (W, -1-k) 위치의 기 복원 샘플 TR일 수 있다. 즉, TR'는 TR과 동일할 수 있다.
또 다른 예로, T' 및 TR'는 (-1, -k-1)에 위치한 참조 샘플 p와 (-1, -1)에 위치한 참조 샘플 q 사이의 차이 값 d(= q-p)에 기반하여 정의될 수 있다. 즉, T'는 T+d일 수 있으며, TR'는 TR+d일 수 있다. 여기서, d는 참조 샘플 p와 참조 샘플 q 사이의 거리일 수 있다. 또는, d는 참조 샘플 p의 샘플 값과 참조 샘플 q의 샘플 값의 차이일 수도 있다.
또 다른 예로, T' 및 TR'는 참조 샘플 q 및 우상측 참조 샘플 TR을 이용하여 수평 플래너 모드로 생성될 수 있다. 또 다른 예로, T' 및 TR'는 상측 참조 샘플 T 및 좌하측 참조 샘플 BL을 이용하여 수직 플래너 모드로 생성될 수 있다. 또 다른 예로, TR'는 참조 샘플 q 및 (W+1, -k-1) 위치의 참조 샘플을 이용하여 수평 플래너 모드로 생성될 수 있다.
또 다른 예로, T' 및 TR'는 참조 샘플 q 및 우상측 참조 샘플 TR을 이용한 수평 플래너 모드와 상측 참조 샘플 T 및 좌하측 참조 샘플 BL을 이용한 수직 플래너 모드의 평균으로 생성될 수 있다. 즉, T' 및 TR'는 참조 샘플 q 및 우상측 참조 샘플 TR을 이용하여 수평 플래너 모드로 생성된 샘플의 샘플 값과 상측 참조 샘플 T 및 좌하측 참조 샘플 BL을 이용하여 수직 플래너 모드로 생성된 샘플의 샘플 값의 평균으로 생성될 수 있다.
또 다른 예로, TR'는 참조 샘플 q 및 (W+1, -k-1) 위치의 참조 샘플을 이용한 수평 플래너 모드와 상측 참조 샘플 T 및 좌하측 참조 샘플 BL을 이용한 수직 플래너 모드의 평균으로 생성될 수 있다. 즉, TR'는 참조 샘플 q 및 (W+1, -k-1) 위치의 참조 샘플을 이용하여 수평 플래너 모드로 생성된 샘플의 샘플 값과 상측 참조 샘플 T 및 좌하측 참조 샘플 BL을 이용하여 수직 플래너 모드로 생성된 샘플의 샘플 값의 평균으로 생성될 수 있다.
T' 및 TR'를 이용하여 수평 방향 플래너 모드로 예측 샘플(1820)을 생성하기 위하여, 아래의 수학식 19가 사용될 수 있다. 수학식 19에서 mh는 L에 적용되는 가중치일 수 있다. 또한, nh는 TR'에 적용되는 가중치일 수 있다. mh 및 nh는 아래의 수학식 20을 이용하여 계산될 수 있다.
Figure PCTKR2023014265-appb-img-000025
Figure PCTKR2023014265-appb-img-000026
T' 및 TR'를 이용하여 수직 방향 플래너 모드로 예측 샘플(1820)을 생성하기 위하여, 아래의 수학식 21이 사용될 수 있다. 수학식 21에서 mv는 T'에 적용되는 가중치일 수 있다. 또한, nv는 BL에 적용되는 가중치일 수 있다. mv 및 nv는 아래의 수학식 22을 이용하여 계산될 수 있다.
Figure PCTKR2023014265-appb-img-000027
Figure PCTKR2023014265-appb-img-000028
도 19는 본 개시에 따른 영상 부호화/복호화 방법의 흐름도이다. 도 19에 따르면, 영상 부호화 장치(100) 및/또는 영상 복호화 장치(200)는 현재 블록으로부터 n 샘플 거리만큼 떨어진 참조 샘플들과 현재 블록으로부터 m 샘플 거리만큼 떨어진 참조 샘플들을 결정할 수 있다(S1910). 이때, n 샘플 거리만큼 떨어진 참조 샘플들은 상측 참조 샘플 및 우상측 참조 샘플을 포함할 수 있다. 또한, m 샘플 거리만큼 떨어진 참조 샘플들은 좌측 참조 샘플 및 좌하측 참조 샘플을 포함할 수 있다. 여기서, n 및 m은 자연수일 수 있다.
영상 부호화 장치(100) 및/또는 영상 복호화 장치(200)는 결정된 참조 샘플들 중 적어도 두 개의 참조 샘플의 가중합에 기반하여 현재 블록의 예측 블록을 생성할 수 있다(S1920). 가중합에 이용되는 가중치는 n 및/또는 m에 기반하여 결정될 수 있다. 즉, 가중치는 현재 블록과 참조 샘플 사이의 거리에 기반하여 결정될 수 있다.
본 개시의 일 실시예에 따르면, 영상 부호화 장치(100) 및/또는 영상 복호화 장치(200)는 결정된 참조 샘플들 중 적어도 두 개의 참조 샘플들의 가중합에 기반하여 복수의 예측 블록들을 생성할 수 있다. 이 경우, 생성된 예측 블록들에 기반하여 현재 블록의 최종 예측 블록이 생성될 수 있다. 예를 들어, 예측 블록은 좌측 참조 샘플 및 우상측 참조 샘플을 이용하여 수평 플래너 모드로 생성될 수 있다. 또한, 예측 블록은 상측 참조 샘플 및 좌하측 참조 샘플을 이용하여 수직 플래너 모드로 생성될 수 있다. 수평 플래너 모드로 생성된 예측 블록 및 수직 플래너 모드로 생성된 예측 블록의 가중합에 기반하여 최종 예측 블록이 생성될 수 있다.
본 개시의 다른 실시예에 따르면, 예측 블록을 생성하기 위한 참조 샘플들은 n 샘플 거리만큼 떨어진 참조 샘플들을 n에 기반하여 보정함으로써 생성된 참조 샘플들을 포함할 수 있다. 또한, 예측 블록을 생성하기 위한 참조 샘플들은 m 샘플 거리만큼 떨어진 참조 샘플들을 m에 기반하여 보정함으로써 생성된 참조 샘플들을 포함할 수 있다.
예를 들어, 상측 참조 샘플 및 우상측 참조 샘플은 n에 기반하여 보정될 수 있다. 보정된 상측 참조 샘플, 보정된 우상측 참조 샘플, 좌측 참조 샘플 또는 좌하측 참조 샘플 중 적어도 두 개에 기반하여 현재 블록의 예측 블록이 생성될 수 있다. 또 다른 예로, 좌측 참조 샘플 및 좌하측 참조 샘플은 m에 기반하여 보정될 수 있다. 보정된 좌측 참조 샘플, 보정된 좌하측 참조 샘플, 상측 참조 샘플 또는 우상측 참조 샘플 중 적어도 두 개에 기반하여 현재 블록의 예측 블록이 생성될 수 있다. 생성된 예측 블록이 복수인 경우, 최종 예측 블록은 복수의 예측 블록들을 가중합함으로써 생성될 수 있다.
본 개시의 다른 실시예에 따르면, 현재 블록의 예측 블록들을 생성하기 위한 참조 샘플들은 상측 참조 샘플, 좌측 참조 샘플, 우상측 참조 샘플, 좌하측 참조 샘플, 현재 블록에 인접한 좌상측 참조 샘플, 좌하측 참조 샘플에 인접한 참조 샘플 또는 우상측 참조 샘플에 인접한 참조 샘플 중 적어도 두 개에 기반하여 플래너(Planar) 모드로 생성될 수 있다.
본 개시의 다른 실시예에 따르면, 현재 블록의 예측 블록들을 생성하기 위한 참조 샘플들은 상측 참조 샘플, 좌측 참조 샘플, 우상측 참조 샘플, 좌하측 참조 샘플, 현재 블록에 인접한 좌상측 참조 샘플, 좌하측 참조 샘플에 인접한 참조 샘플 또는 우상측 참조 샘플에 인접한 참조 샘플 중 적어도 두 개에 기반하여 플래너 모드로 생성된 복수의 참조 샘플들의 샘플 값을 평균하여 생성된 참조 샘플들을 더 포함할 수 있다. 본 개시에 따른 실시예들에서 언급한 플래너 모드는 수평 플래너 모드 및 수직 플래너 모드를 포함할 수 있다.
실시예 2
본 개시는 MRL 모드를 수행할 때 플래너 모드로 예측한 예측 블록과 다른 예측 블록 간 블렌딩(blending)하는 방법에 관한 것일 수 있다. 블렌딩에 사용되는 플래너 예측 블록이 현재 블록과 가까운 기 복원 참조 샘플을 사용하여 생성된 것인 경우, 더 정확한 플래너 예측 블록이 생성될 수 있다. 즉, 현재 블록과 가까운 기 복원 참조 샘플을 사용하여 생성된 플래너 예측 블록의 예측 정확도가 높을 수 있다.
예를 들어, 현재 블록과 인접한 0번 참조 샘플 라인을 사용하는 경우, 더 정확한 플래너 예측 블록이 생성될 수 있다. 여기서, 플래너 예측 블록은 플래너 모드로 예측한 예측 블록일 수 있다. 또한, 생성된 플래너 예측 블록과 다른 예측 블록을 블렌딩함으로써 새로운 예측자(predictor)가 생성될 수 있으며, 이를 통해 코딩 효율이 향상될 수 있다.
본 개시의 일 실시예에 따르면, TIMD(Template-based Intra Mode Derivation) 모드 또는 DIMD(Decoder-side Intra Mode Derivation) 모드에서 플래너 모드가 유도되고 MRL 모드가 사용될 때, 플래너 모드로 예측한 예측 블록과 다른 예측 블록 간 블렌딩이 수행될 수 있다. 여기서, MRL 모드를 이용하여 예측 블록을 생성하기 위해 사용되는 참조 샘플 라인은 인덱스가 1, 3, 5, 7, 12번인 참조 샘플 라인과 같이 0보다 큰 참조 샘플 라인일 수 있다.
도 20은 본 개시에 따른 예측 블록 생성을 위한 참조 샘플 라인을 도시한 도면이다. 도 20을 참조하면, 현재 블록(2010) 내 예측 샘플(2020)을 생성하기 위하여, 영상 부호화 장치(100) 및/또는 영상 복호화 장치(200)는 플래너 모드로 예측한 예측 블록 및 r 번 참조 샘플 라인을 이용하여 예측한 예측 블록을 블렌딩할 수 있다.
본 개시의 일 실시예에 따르면, TIMD 모드 또는 DIMD 모드로 유도된 첫 번째 모드가 플래너 모드인 경우, 예측 블록은 시그널링한 MRL 인덱스와 관련없이 0번 참조 샘플 라인을 이용하여 생성될 수 있다. 이때, 0번 참조 샘플 라인은 현재 블록에 인접한 첫 번째 참조 샘플 라인을 의미할 수 있다. 또한, TIMD 모드 또는 DIMD 모드로 유도된 두 번째 모드는 r 번 참조 샘플 라인을 이용하여 예측 블록을 생성할 수 있다. 즉, r번 참조 샘플 라인을 이용하여 TIMD 모드 또는 DIMD 모드로 유도된 두 번째 모드로 예측 블록이 생성될 수 있다. 이때, r은 명시적으로 시그널링된 인덱스에 의해 결정될 수 있다. 이에 따라, 최종 예측 블록은 상술한 첫 번째 모드를 이용하여 생성된 예측 블록 및 두 번째 모드를 이용하여 생성된 예측 블록을 블렌딩하여 생성될 수 있다.
본 개시의 다른 실시예에 따르면, TIMD 모드 또는 DIMD 모드의 두 번째 모드가 플래너 모드인 경우, 시그널링한 MRL 인덱스와 관련 없이 0번 참조 샘플 라인을 이용하여 예측 블록이 생성될 수 있다. 또한, 예측 블록은 TIMD 모드 또는 DIMD 모드로 유도된 첫 번째 모드는 r번 참조 샘플 라인을 이용하여 생성될 수 있다. 즉, r번 참조 샘플 라인을 이용하여 TIMD 모드 또는 DIMD 모드로 유도된 첫 번째 모드로 예측 블록이 생성될 수 있다. 이때, r은 명시적으로 시그널링된 인덱스에 의해 결정될 수 있다. 이에 따라, 상술한 첫 번째 모드를 이용하여 생성된 예측 블록 및 두 번째 모드를 이용하여 생성된 예측 블록을 블렌딩하여 최종 예측 블록이 생성될 수 있다.
본 개시의 다른 실시예에 따르면, TIMD 모드 또는 DIMD 모드로 유도한 첫 번째 모드 및 두 번째 모드가 모두 플래너 모드인 경우, 첫 번째 예측 블록은 시그널링한 MRL 인덱스와 관련없이 0번 참조 샘플 라인을 이용하여 플래너 모드로 생성될 수 있다. 또한, 두 번째 예측 블록은 r번 참조 샘플 라인을 이용하여 플래너 모드로 생성될 수 있다. 이때, r은 명시적으로 시그널링된 인덱스에 의해 결정될 수 있다.
본 개시의 다른 실시예에 따르면, TIMD 모드 또는 DIMD 모드로 유도한 첫 번째 모드 및 두 번째 모드가 서로 다르고, 이 중 하나가 플래너 모드인 경우, 세 개의 예측 블록을 블렌딩하여 최종 예측 블록이 생성될 수 있다. 첫 번째 예측 블록은 시그널링한 MRL 인덱스와 관련없이 0번 참조 샘플 라인을 이용하여 플래너 모드로 생성될 수 있다. 두 번째 예측 블록은 r번 참조 샘플 라인을 이용하여 플래너 모드로 생성될 수 있다. 세 번째 예측 블록은 r번 참조 샘플 라인을 이용하여 플래너 모드가 아닌 모드(비플래너 모드, non-Planar mode)로 생성될 수 있다.
본 개시의 다양한 실시예들에서 예측 블록들을 블렌딩하기 위해 사용되는 가중치는 예측 블록 간 평균이거나, 사전에 정해진 가중치를 사용하거나 또는 상기 방법들의 선택적 조합을 통해서 결정될 수 있다. 즉, 가중치는 예측 블록 간 예측 값의 평균 또는 사전에 정해진 가중치 중 적어도 하나에 기반하여 결정될 수 있다. 또한, 가중치는 TIMD 모드 또는 DIMD 모드의 첫 번째 모드가 플래너 모드인지 여부에 기반하여 결정될 수 있다. 또는, 가중치는 TIMD 모드 또는 DIMD 모드의 두 번째 모드가 플래너 모드인지 여부에 기반하여 결정될 수 있다. 또는, 가중치는 TIMD 모드 또는 DIMD 모드로 유도한 모드들에 플래너 모드가 포함되어 있는지 여부에 기반하여 결정될 수 있다. 또는, 가중치는 상기 방법들의 선택적 조합을 통해 결정될 수도 있다.
본 개시의 일 실시예에 따르면, 블렌딩에 사용되는 플래너 예측 블록은 수평 플래너 예측 블록, 수직 플래너 예측 블록 또는 수평 플래너 예측 블록과 수직 플래너 예측 블록의 평균일 수 있다. 여기서, 플래너 예측 블록은 플래너 모드로 예측된 예측 블록일 수 있다. 수직 플래너 예측 블록은 수직 플래너 모드로 예측된 예측 블록일 수 있다. 수평 플래너 예측 블록은 수평 플래너 모드로 예측된 예측 블록일 수 있다.
실시예 3
본 개시는 TIMD 모드를 이용할 때 현재 블록의 상측 템플릿 영역 및 좌측 템플릿 영역에 플래너 모드로 샘플을 생성하는 방법에 관한 것일 수 있다. 즉, 본 개시는 현재 블록의 상측 템플릿 영역 내 예측 샘플 또는 좌측 템플릿 영역 내 예측 샘플을 플래너 모드로 생성하는 방법에 관한 것일 수 있다.
TIMD 모드는 템플릿 영역으로부터 예측한 예측 블록과 실제 복원 샘플과의 템플릿 비용(cost)를 구한 후, 가장 적은 템플릿 비용을 갖는 모드를 현재 블록의 인트라 예측 모드로 사용하는 모드일 수 있다. 이때, 가장 적은 템플릿 비용을 갖는 모드가 플래너 모드인 경우, 너비가 W이고 높이가 H인 현재 블록 내 (x, y) 위치의 샘플을 플래너 예측 모드로 예측하기 위해 (-1, H) 위치의 좌하측 기 복원 샘플, (W, -1) 위치의 우상측 기 복원 샘플, (x, -1) 위치의 상측 기 복원 샘플 및/또는 (-1, y) 위치의 좌측 기 복원 샘플이 이용될 수 있다.
따라서, 본 개시는 템플릿 영역에서도 현재 블록에서 사용하는 참조 픽셀과 가까운 기 복원 참조 픽셀로 플래너 모드를 수행하여 더 정확하게 플래너 모드에 대한 템플릿 비용을 구할 수 있다. 즉, 템플릿 영역에서 더 정확한 템플릿 비용을 계산하기 위하여, 현재 블록에서 사용하는 참조 샘플과 가까운 기 복원 참조 샘플을 이용하여 플래너 모드가 수행될 수 있다.
도 21은 본 개시의 일 실시예에 따른 TIMD 모드 기반 예측 블록 생성에 사용되는 참조 샘플들을 도시한 도면이다. 도 21은 현재 블록(2110)의 좌상측 위치를 (0,0)으로 정의한 도면이다. 도 21을 참조하면, (W, -TH-1)에 위치한 상측 템플릿 영역(2130)의 우상측 참조 샘플 TR, (-TH-1, H)에 위치한 좌측 템플릿 영역(2140)의 좌하측 참조 샘플 BL, 템플릿 영역 내 예측하고자 하는 샘플(2120)의 상측 참조 샘플 T 및/또는 템플릿 영역 내 예측하고자 하는 샘플(2120)의 좌측 참조 샘플 L을 이용하여 플래너 모드로 예측 샘플이 생성될 수 있다. 여기서, TH는 상측 템플릿 영역(2130)의 높이일 수 있다. 이때, 예측 샘플은 상술한 실시예 1에서 사용되는 다양한 수학식들에 기반하여 생성될 수 있다.
도 22는 본 개시의 다른 실시예에 따른 TIMD 모드 기반 예측 블록 생성에 사용되는 참조 샘플들을 도시한 도면이다. 도 22는 상측 템플릿 영역(2230)의 좌상측 위치를 (0,0)으로 정의한 도면이다. 도 22를 참조하면, 현재 블록(2210)의 상측 템플릿 영역(2230)과 인접한 위치의 L' 및 BL' 참조 샘플을 이용하여 정확한 플래너 예측 샘플(2220)이 생성될 수 있다.
이때, L' 및 BL'는 다양한 방법으로 정의될 수 있다. 예를 들어, L'는 (-1, y) 위치의 기 복원 샘플일 수 있다. 또한, BL'는 (-1, TH) 위치의 기 복원 샘플일 수 있다. 여기서, TH는 상측 템플릿 영역(2230)의 높이일 수 있다. 또 다른 예로, L' 및 BL'는 상측 템플릿 영역(2230)에 대해 (-TW-1, -1)에 위치한 참조 샘플 p와 (-1, -1)에 위치한 참조 샘플 q 사이의 차이 값 d(= p-q)에 기반하여 결정될 수 있다. L'는 L+d일 수 있으며, BL'는 BL+d일 수 있다. 여기서, TW는 좌측 템플릿 영역의 너비 또는 현재 블록과 좌측 참조 샘플 라인사이의 거리일 수 있다. 또한, d는 참조 샘플 p와 참조 샘플 q 사이의 거리 또는 참조 샘플 p의 샘플 값 및 참조 샘플 q의 샘플 값의 차이일 수도 있다. 예측 샘플(2220)은 상기 수학식 15 및/또는 수학식 17을 이용하여 생성될 수 있다.
또 다른 예로, L' 및 BL'는 좌측 참조 샘플 L 및 우상측 참조 샘플 TR을 이용하여 수평 플래너 모드로 생성될 수 있다. 또 다른 예로, L' 및 BL'는 참조 샘플 q 및 좌하측 참조 샘플 BL을 이용하여 수직 플래너 모드로 생성될 수 있다. 또 다른 예로, BL'는 참조 샘플 q 및 (-TW-1, TH+1)의 샘플을 이용하여 수직 플래너 모드로 생성될 수 있다.
또 다른 예로, L' 및 BL'는 좌측 참조 샘플 L 및 우상측 참조 샘플 TR을 이용한 수평 플래너 모드와 참조 샘플 q 및 좌하측 참조 샘플 BL을 이용한 수직 플래너 모드의 평균으로 생성될 수 있다. 즉, L' 및 BL'는 좌측 참조 샘플 L 및 우상측 참조 샘플 TR을 이용하여 수평 플래너 모드로 생성된 샘플의 샘플 값 및 참조 샘플 q 및 좌하측 참조 샘플 BL을 이용하여 수직 플래너 모드로 생성된 샘플의 샘플 값의 평균으로 생성될 수 있다.
또 다른 예로, BL'는 좌하측 참조 샘플 BL 및 우상측 참조 샘플 TR을 이용한 수평 플래너 모드와 참조 샘플 q 및 (-TW-1, TH+1) 위치의 참조 샘플을 이용한 수직 플래너 모드의 평균으로 생성될 수 있다. 즉, BL'는 좌하측 참조 샘플 BL 및 우상측 참조 샘플 TR을 이용하여 수평 플래너 모드로 생성된 샘플의 샘플 값과 참조 샘플 q 및 (-TW-1, TH+1) 위치의 참조 샘플을 이용하여 수직 플래너 모드로 생성된 샘플의 샘플 값의 평균으로 생성될 수 있다.
도 23은 본 개시의 또 다른 실시예에 따른 TIMD 모드 기반 예측 블록 생성에 사용되는 참조 샘플들을 도시한 도면이다. 도 23은 좌측 템플릿 영역(2330)의 좌상측 위치를 (0, 0)으로 정의한 도면이다. 도 23을 참조하면, 현재 블록(2310)의 좌측 템플릿 영역(2330)과 인접한 위치의 T' 및 TR' 참조 샘플을 이용하여 정확한 플래너 예측 샘플(2320)이 생성될 수 있다.
T' 및 TR'는 다양한 방법으로 정의될 수 있다. 예를 들어, T'는 (x, -1) 위치의 기 복원 샘플일 수 있다. 또한, TR'는 (TW, -1) 위치의 기 복원 샘플일 수 있다. 여기서, TW는 좌측 템플릿 영역(2330)의 너비일 수 있다. 또 다른 예로, T' 및 TR'는 좌측 템플릿 영역(2230)에 대해 (-1, -TH-1)에 위치한 참조 샘플 p와 (-1, -1)에 위치한 참조 샘플 q 사이의 차이 값 d(= p-q)에 기반하여 결정될 수 있다. T'는 T+d일 수 있으며, TR'는 TR+d일 수 있다. 여기서, TH는 상측 템플릿 영역의 높이 또는 현재 블록과 상측 참조 샘플 라인사이의 거리일 수 있다. 또한, d는 참조 샘플 p와 참조 샘플 q 사이의 거리 또는 참조 샘플 p의 샘플 값 및 참조 샘플 q의 샘플 값의 차이일 수도 있다. 예측 샘플(2320)은 T', TR', L 및 BL을 이용하여 플래너 모드로 생성될 수 있으며, 상기 수학식 19 및/또는 수학식 21을 이용하여 생성될 수 있다.
또 다른 예로, T' 및 TR'는 참조 샘플 q 및 우상측 참조 샘플 TR을 이용하여 수평 플래너 모드로 생성될 수 있다. 또 다른 예로, T' 및 TR'는 상측 참조 샘플 T 및 좌하측 참조 샘플 BL을 이용하여 수직 플래너 모드로 생성될 수 있다. 또 다른 예로, TR'는 참조 샘플 q 및 (TW+1, -TH-1) 위치의 샘플을 이용하여 수평 플래너 모드로 생성될 수 있다.
또 다른 예로, T' 및 TR'는 참조 샘플 q 및 우상측 참조 샘플 TR을 이용한 수평 플래너 모드와 상측 참조 샘플 T 및 좌하측 참조 샘플 BL을 이용한 수직 플래너 모드의 평균으로 생성될 수 있다. 즉, T' 및 TR'는 참조 샘플 q 및 우상측 참조 샘플 TR을 이용하여 수평 플래너 모드로 생성된 샘플의 샘플 값 및 상측 참조 샘플 T 및 좌하측 참조 샘플 BL을 이용하여 수직 플래너 모드로 생성된 샘플의 샘플 값의 평균으로 생성될 수 있다.
또 다른 예로, TR'는 참조 샘플 q 및 (TW+1, -TH-1) 위치의 샘플을 이용한 수평 플래너 모드와 상측 참조 샘플 T 및 좌하측 참조 샘플 BL을 이용한 수직 플래너 모드의 평균으로 생성될 수 있다. 즉, TR'는 참조 샘플 q 및 (TW+1, -TH-1) 위치의 샘플을 이용하여 수평 플래너 모드로 생성된 샘플의 샘플 값과 상측 참조 샘플 T 및 좌하측 참조 샘플 BL을 이용하여 수직 플래너 모드로 생성된 샘플의 샘플 값의 평균으로 생성될 수 있다.
상술한 실시예들은 TIMD 모드의 좌측 및/또는 상측 템플릿 영역에서 가장 적은 템플릿 비용을 가지는 모드를 구하기 위한 인트라 모드 후보로 수평 플래너 모드 또는 수직 플래너 모드를 포함할 수 있다. 또한, 적은 템플릿 비용을 가지는 모드가 수평 플래너 모드인 경우, 현재 블록은 수평 플래너 모드로 예측될 수 있다. 또는, 가장 적은 템플릿 비용을 가지는 모드가 수직 플래너 모드인 경우, 현재 블록은 수직 플래너 모드로 예측될 수 있다.
도 24는 본 개시에 따른 영상 부호화/복호화 방법의 흐름도이다. 도 24를 참조하면, 영상 부호화 장치(100) 및/또는 영상 복호화 장치(200)는 템플릿 매칭 비용에 기반하여 현재 블록에 대한 제1 예측 모드 및 제2 예측 모드를 유도할 수 있다(S2410). 이때, 제1 예측 모드에 기반하여 계산된 템플릿 매칭 비용은 제2 예측 모드에 기반하여 계산된 템플릿 매칭 비용보다 작을 수 있다.
템플릿 매칭 비용은 현재 블록의 템플릿 영역을 플래너 모드로 예측한 예측 블록에 기반하여 계산될 수 있다. 템플릿 영역의 예측에 이용되는 상측 참조 샘플 및 우상측 참조 샘플은 상측 템플릿 영역에 인접한 첫 번째 참조 샘플 라인으로부터 획득될 수 있으며, 템플릿 영역의 예측에 이용되는 좌측 참조 샘플 및 좌하측 참조 샘플은 좌측 템플릿 영역에 인접한 첫 번째 참조 샘플 라인으로부터 획득될 수 있다.
본 개시의 일 실시예에 따르면, 템플릿 영역은 상측 템플릿 영역 및 좌측 템플릿 영역을 포함할 수 있다. 이때, 상측 템플릿 영역의 예측에 이용되는 좌하측 참조 샘플은 좌측 템플릿 영역의 좌하측 참조 샘플과 동일할 수 있으며, 좌측 템플릿 영역의 예측에 이용되는 우상측 참조 샘플은 상측 템플릿 영역의 우상측 참조 샘플과 동일할 수 있다.
본 개시의 다른 실시예에 따르면, 템플릿 영역은 상측 템플릿 영역 및 좌측 템플릿 영역을 포함할 수 있다. 이때, 상측 템플릿 영역의 예측에 이용되는 좌하측 참조 샘플은 상측 템플릿 영역의 좌하측 샘플과 동일한 y좌표를 가질 수 있으며, 좌측 템플릿 영역의 예측에 이용되는 우상측 참조 샘플은 좌측 템플릿 영역의 우상측 샘플과 동일한 x좌표를 가질 수 있다. 상측 템플릿 영역의 예측에 이용되는 좌측 참조 샘플의 값 및 좌하측 참조 샘플의 값은 좌측 템플릿 영역의 너비에 기반하여 보정될 수 있으며, 좌측 템플릿 영역의 예측에 이용되는 상측 참조 샘플의 값 및 우상측 참조 샘플의 값은 상측 템플릿 영역의 높이에 기반하여 보정될 수 있다.
영상 부호화 장치(100) 및/또는 영상 복호화 장치(200)는 제1 예측 모드 및 제1 참조 샘플 라인에 기반한 제1 예측 블록 및 제2 예측 모드 및 제2 참조 샘플 라인에 기반한 제2 예측 블록을 생성할 수 있다(S2420). 여기서, 제1 참조 샘플 라인 및 제2 참조 샘플 라인 중 적어도 하나는 제1 예측 모드 또는 제2 예측 모드가 플래너 모드인지 여부에 기반하여 결정될 수 있다.
본 개시의 일 실시예에 따르면, 제1 예측 모드가 플래너 모드인 경우, 제1 참조 샘플 라인은 현재 블록에 인접한 첫 번째 참조 샘플 라인으로 결정되고, 제2 참조 샘플 라인은 현재 블록에 인접한 r 번째 참조 샘플 라인으로 결정될 수 있다. 본 개시의 다른 실시예에 따르면, 제2 예측 모드가 플래너 모드인 경우, 제1 참조 샘플 라인은 현재 블록에 인접한 r 번째 참조 샘플 라인으로 결정되고, 제2 참조 샘플 라인은 현재 블록에 인접한 첫 번째 참조 샘플 라인으로 결정될 수 있다.
영상 부호화 장치(100) 및/또는 영상 복호화 장치(200)는 제1 예측 블록 및 제2 예측 블록에 기반하여 현재 블록의 최종 예측 블록을 생성할 수 있다(S2430). 본 개시의 일 실시예에 따르면, 제1 예측 모드 및 제2 예측 모드가 플래너 모드와 비플래너(non-Planar) 모드를 포함하는 경우, 현재 블록에 인접한 첫 번째 참조 샘플 라인에 기반하여 플래너 모드로 생성된 제1 예측 블록, 현재 블록에 인접한 r 번째 참조 샘플 라인에 기반하여 플래너 모드로 생성된 제2 예측 블록 및 r 번째 참조 샘플 라인에 기반하여 비플래너 모드로 생성된 제3 예측 블록을 가중합함으로써 최종 예측 블록을 생성할 수 있다. 본 개시에 따른 가중합은 상술한 실시예들에서 사용되는 수학식들에 기반하여 수행될 수 있다.
본 개시의 예시적인 방법들은 설명의 명확성을 위해서 동작의 시리즈로 표현되어 있지만, 이는 단계가 수행되는 순서를 제한하기 위한 것은 아니며, 필요한 경우에는 각각의 단계가 동시에 또는 상이한 순서로 수행될 수도 있다. 본 개시에 따른 방법을 구현하기 위해서, 예시하는 단계에 추가적으로 다른 단계를 포함하거나, 일부의 단계를 제외하고 나머지 단계를 포함하거나, 또는 일부의 단계를 제외하고 추가적인 다른 단계를 포함할 수도 있다.
본 개시에 있어서, 소정의 동작(단계)을 수행하는 영상 부호화 장치(100) 또는 영상 복호화 장치(200)는 해당 동작(단계)의 수행 조건이나 상황을 확인하는 동작(단계)을 수행할 수 있다. 예컨대, 소정의 조건이 만족되는 경우 소정의 동작을 수행한다고 기재된 경우, 영상 부호화 장치(100) 또는 영상 복호화 장치(200)는 상기 소정의 조건이 만족되는지 여부를 확인하는 동작을 수행한 후, 상기 소정의 동작을 수행할 수 있다.
본 개시의 다양한 실시예는 모든 가능한 조합을 나열한 것이 아니고 본 개시의 대표적인 양상을 설명하기 위한 것이며, 다양한 실시예에서 설명하는 사항들은 독립적으로 적용되거나 또는 둘 이상의 조합으로 적용될 수도 있다.
또한, 본 개시의 다양한 실시예는 하드웨어, 펌웨어(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), 컨트롤러, 마이크로 컨트롤러, 마이크로 프로세서 등에 의해 구현될 수 있다.
또한, 본 개시의 실시예가 적용된 영상 복호화 장치(200) 및 영상 부호화 장치(100)는 멀티미디어 방송 송수신 장치, 모바일 통신 단말, 홈 시네마 비디오 장치, 디지털 시네마 비디오 장치, 감시용 카메라, 비디오 대화 장치, 비디오 통신과 같은 실시간 통신 장치, 모바일 스트리밍 장치, 저장 매체, 캠코더, 주문형 비디오(VoD) 서비스 제공 장치, OTT 비디오(Over the top video) 장치, 인터넷 스트리밍 서비스 제공 장치, 3차원(3D) 비디오 장치, 화상 전화 비디오 장치, 및 의료용 비디오 장치 등에 포함될 수 있으며, 비디오 신호 또는 데이터 신호를 처리하기 위해 사용될 수 있다. 예를 들어, OTT 비디오(Over the top video) 장치로는 게임 콘솔, 블루레이 플레이어, 인터넷 접속 TV, 홈시어터 시스템, 스마트폰, 태블릿 PC, DVR(Digital Video Recoder) 등을 포함할 수 있다.
도 25는 본 개시에 따른 실시예가 적용될 수 있는 컨텐츠 스트리밍 시스템을 예시적으로 나타낸 도면이다.
도 25에 도시된 바와 같이, 본 개시의 실시예가 적용된 컨텐츠 스트리밍 시스템은 크게 인코딩 서버, 스트리밍 서버, 웹 서버, 미디어 저장소, 사용자 장치 및 멀티미디어 입력 장치를 포함할 수 있다.
상기 인코딩 서버는 스마트폰, 카메라, 캠코더 등과 같은 멀티미디어 입력 장치들로부터 입력된 컨텐츠를 디지털 데이터로 압축하여 비트스트림을 생성하고 이를 상기 스트리밍 서버로 전송하는 역할을 한다. 다른 예로, 스마트폰, 카메라, 캠코더 등과 같은 멀티미디어 입력 장치들이 비트스트림을 직접 생성하는 경우, 상기 인코딩 서버는 생략될 수 있다.
상기 비트스트림은 본 개시의 실시예가 적용된 영상 부호화 방법 및/또는 영상 부호화 장치(100)에 의해 생성될 수 있고, 상기 스트리밍 서버는 상기 비트스트림을 전송 또는 수신하는 과정에서 일시적으로 상기 비트스트림을 저장할 수 있다.
상기 스트리밍 서버는 웹 서버를 통한 사용자 요청에 기반하여 멀티미디어 데이터를 사용자 장치에 전송하고, 상기 웹 서버는 사용자에게 어떠한 서비스가 있는지를 알려주는 매개체 역할을 할 수 있다. 사용자가 상기 웹 서버에 원하는 서비스를 요청하면, 상기 웹 서버는 이를 스트리밍 서버에 전달하고, 상기 스트리밍 서버는 사용자에게 멀티미디어 데이터를 전송할 수 있다. 이때, 상기 컨텐츠 스트리밍 시스템은 별도의 제어 서버를 포함할 수 있고, 이 경우 상기 제어 서버는 상기 컨텐츠 스트리밍 시스템 내 각 장치 간 명령/응답을 제어하는 역할을 수행할 수 있다.
상기 스트리밍 서버는 미디어 저장소 및/또는 인코딩 서버로부터 컨텐츠를 수신할 수 있다. 예를 들어, 상기 인코딩 서버로부터 컨텐츠를 수신하는 경우, 상기 컨텐츠를 실시간으로 수신할 수 있다. 이 경우, 원활한 스트리밍 서비스를 제공하기 위하여 상기 스트리밍 서버는 상기 비트스트림을 일정 시간동안 저장할 수 있다.
상기 사용자 장치의 예로는, 휴대폰, 스마트 폰(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, 데스크탑 컴퓨터, 디지털 사이니지 등이 있을 수 있다.
상기 컨텐츠 스트리밍 시스템 내 각 서버들은 분산 서버로 운영될 수 있으며, 이 경우 각 서버에서 수신하는 데이터는 분산 처리될 수 있다.
본 개시의 범위는 다양한 실시예의 방법에 따른 동작이 장치 또는 컴퓨터 상에서 실행되도록 하는 소프트웨어 또는 머신-실행가능한 명령들(예를 들어, 운영체제, 애플리케이션, 펌웨어(firmware), 프로그램 등), 및 이러한 소프트웨어 또는 명령 등이 저장되어 장치 또는 컴퓨터 상에서 실행 가능한 비-일시적 컴퓨터-판독가능 매체(non-transitory computer-readable medium)를 포함한다.
본 개시에 따른 실시예는 영상을 부호화/복호화하는데 이용될 수 있다.

Claims (16)

  1. 영상 복호화 장치에 의해 수행되는 영상 복호화 방법으로서,
    현재 블록으로부터 n 샘플 거리만큼 떨어진 참조 샘플들과 상기 현재 블록으로부터 m 샘플 거리만큼 떨어진 참조 샘플들을 결정하는 단계 - 상기 n 샘플 거리만큼 떨어진 참조 샘플들은 상측 참조 샘플 및 우상측 참조 샘플을 포함하고, 상기 m 샘플 거리만큼 떨어진 참조 샘플들은 좌측 참조 샘플 및 좌하측 참조 샘플을 포함함; 및
    상기 결정된 참조 샘플들 중 적어도 두 개의 참조 샘플의 가중합에 기반하여 상기 현재 블록의 예측 블록을 생성하는 단계를 포함하되,
    상기 가중합에 이용되는 가중치는 상기 n 또는 m에 기반하여 결정되고,
    상기 n 및 m은 자연수인,
    영상 복호화 방법.
  2. 제1항에 있어서,
    상기 현재 블록의 예측 블록을 생성하는 단계는,
    상기 참조 샘플들의 가중합에 기반하여 상기 현재 블록의 예측 블록들을 생성하는 단계; 및
    상기 예측 블록들에 기반하여 상기 현재 블록의 최종 예측 블록을 생성하는 단계를 포함하는,
    영상 복호화 방법.
  3. 제2항에 있어서,
    상기 참조 샘플들은 상기 n 샘플 거리만큼 떨어진 참조 샘플들을 상기 n에 기반하여 보정함으로써 생성된 참조 샘플들 및 상기 m 샘플 거리만큼 떨어진 참조 샘플들을 상기 m에 기반하여 보정함으로써 생성된 참조 샘플들을 더 포함하는,
    영상 복호화 방법.
  4. 제2항에 있어서,
    상기 참조 샘플들은 상기 상측 참조 샘플, 상기 좌측 참조 샘플, 상기 우상측 참조 샘플, 상기 좌하측 참조 샘플, 상기 현재 블록에 인접한 좌상측 참조 샘플, 상기 좌하측 참조 샘플에 인접한 참조 샘플 또는 상기 우상측 참조 샘플에 인접한 참조 샘플 중 적어도 두 개에 기반하여 플래너(planar) 모드로 생성된 참조 샘플들을 더 포함하고,
    상기 플래너 모드는 수평 플래너 모드 및 수직 플래너 모드를 포함하는,
    영상 복호화 방법.
  5. 제2항에 있어서,
    상기 참조 샘플들은 상기 상측 참조 샘플, 상기 좌측 참조 샘플, 상기 우상측 참조 샘플, 상기 좌하측 참조 샘플, 상기 현재 블록에 인접한 좌상측 참조 샘플, 상기 좌하측 참조 샘플에 인접한 참조 샘플 또는 상기 우상측 참조 샘플에 인접한 참조 샘플 중 적어도 두 개에 기반하여 플래너 모드로 생성된 복수의 참조 샘플들의 샘플 값을 평균하여 생성된 참조 샘플들을 더 포함하고,
    상기 플래너 모드는 수평 플래너 모드 및 수직 플래너 모드를 포함하는,
    영상 복호화 방법.
  6. 영상 복호화 장치에 의해 수행되는 영상 복호화 방법으로서,
    템플릿 매칭 비용에 기반하여 현재 블록에 대한 제1 예측 모드 및 제2 예측 모드를 유도하는 단계 - 상기 제1 예측 모드에 기반하여 계산된 템플릿 매칭 비용이 상기 제2 예측 모드에 기반하여 계산된 템플릿 매칭 비용보다 작음;
    상기 제1 예측 모드 및 제1 참조 샘플 라인에 기반한 제1 예측 블록 및 상기 제2 예측 모드 및 제2 참조 샘플 라인에 기반한 제2 예측 블록을 생성하는 단계; 및
    상기 제1 예측 블록 및 상기 제2 예측 블록에 기반하여 상기 현재 블록의 최종 예측 블록을 생성하는 단계를 포함하되,
    상기 제1 예측 모드 또는 상기 제2 예측 모드가 플래너 모드인지의 여부에 기반하여 상기 제1 참조 샘플 라인 또는 상기 제2 참조 샘플 라인 중 적어도 하나가 결정되는,
    영상 복호화 방법.
  7. 제6항에 있어서,
    상기 제1 예측 모드가 플래너 모드인 것에 기반하여, 상기 제1 참조 샘플 라인은 상기 현재 블록에 인접한 첫번째 참조 샘플 라인으로 결정되고, 상기 제2 참조 샘플 라인은 상기 현재 블록에 인접한 r 번째 참조 샘플 라인으로 결정되는,
    영상 복호화 방법.
  8. 제6항에 있어서,
    상기 제2 예측 모드가 플래너 모드인 것에 기반하여, 상기 제1 참조 샘플 라인은 상기 현재 블록에 인접한 r 번째 참조 샘플 라인으로 결정되고, 상기 제2 참조 샘플 라인은 상기 현재 블록에 인접한 첫번째 참조 샘플 라인으로 결정되는,
    영상 복호화 방법.
  9. 제6항에 있어서,
    상기 제1 예측 모드 및 상기 제2 예측 모드가 플래너 모드와 비플래너(non-Planar) 모드를 포함하는 것에 기반하여, 상기 현재 블록에 인접한 첫번째 참조 샘플 라인에 기반하여 플래너 모드로 생성된 제1 예측 블록, 상기 현재 블록에 인접한 r번째 참조 샘플 라인에 기반하여 플래너 모드로 생성된 제2 예측 블록 및 상기 r번째 참조 샘플 라인에 기반하여 상기 비플래너 모드로 생성된 제3 예측 블록을 가중합함으로써 상기 최종 예측 블록을 생성하는,
    영상 복호화 방법.
  10. 제6항에 있어서,
    상기 템플릿 매칭 비용은,
    상기 현재 블록의 템플릿 영역을 플래너 모드로 예측한 예측 블록에 기반하여 계산되며,
    상기 템플릿 영역의 예측에 이용되는 상측 참조 샘플 및 우상측 참조 샘플은 상측 템플릿 영역에 인접한 첫번째 참조 샘플 라인으로부터 획득되고,
    상기 템플릿 영역의 예측에 이용되는 좌측 참조 샘플 및 좌하측 참조 샘플은 좌측 템플릿 영역에 인접한 첫번째 참조 샘플 라인으로부터 획득되는,
    영상 복호화 방법.
  11. 제10항에 있어서,
    상기 템플릿 영역은 상측 템플릿 영역 및 좌측 템플릿 영역을 포함하고,
    상기 상측 템플릿 영역의 예측에 이용되는 좌하측 참조 샘플은 상기 좌측 템플릿 영역의 좌하측 참조 샘플과 동일하고,
    상기 좌측 템플릿 영역의 예측에 이용되는 우상측 참조 샘플은 상기 상측 템플릿 영역의 우상측 참조 샘플과 동일한,
    영상 복호화 방법.
  12. 제10항에 있어서,
    상기 템플릿 영역은 상측 템플릿 영역 및 좌측 템플릿 영역을 포함하고,
    상기 상측 템플릿 영역의 예측에 이용되는 좌하측 참조 샘플은 상기 상측 템플릿 영역의 좌하측 샘플과 동일한 y좌표를 갖고,
    상기 좌측 템플릿 영역의 예측에 이용되는 우상측 참조 샘플은 상기 좌측 템플릿 영역의 우상측 샘플과 동일한 x좌표를 갖는,
    영상 복호화 방법.
  13. 제12항에 있어서,
    상기 상측 템플릿 영역의 예측에 이용되는 좌측 참조 샘플의 값 및 좌하측 참조 샘플의 값은 상기 좌측 템플릿 영역의 너비에 기반하여 보정되고,
    상기 좌측 템플릿 영역의 예측에 이용되는 상측 참조 샘플의 값 및 우상측 참조 샘플의 값은 상기 상측 템플릿 영역의 높이에 기반하여 보정되는,
    영상 복호화 방법.
  14. 영상 부호화 장치에 의해 수행되는 영상 부호화 방법으로서,
    템플릿 매칭 비용에 기반하여 현재 블록에 대한 제1 예측 모드 및 제2 예측 모드를 유도하는 단계;
    상기 제1 예측 모드 및 제1 참조 샘플 라인에 기반한 제1 예측 블록을 생성하는 단계;
    상기 제2 예측 모드 및 제2 참조 샘플 라인에 기반한 제2 예측 블록을 생성하는 단계; 및
    상기 제1 예측 블록 및 상기 제2 예측 블록에 기반하여 상기 현재 블록의 최종 예측 블록을 생성하는 단계를 포함하고,
    상기 제1 예측 모드 또는 상기 제2 예측 모드가 플래너 모드인지의 여부에 기반하여 상기 제1 참조 샘플 라인 또는 상기 제2 참조 샘플 라인 중 적어도 하나가 결정되는,
    영상 부호화 방법.
  15. 제14항의 영상 부호화 방법에 의해 생성된 비트스트림을 저장한 컴퓨터 판독 가능한기록 매체.
  16. 영상 부호화 방법에 의해 생성된 비트스트림을 전송하는 방법에 있어서, 상기 영상 부호화 방법은,
    템플릿 매칭 비용에 기반하여 현재 블록에 대한 제1 예측 모드 및 제2 예측 모드를 유도하는 단계;
    상기 제1 예측 모드 및 제1 참조 샘플 라인에 기반한 제1 예측 블록을 생성하는 단계;
    상기 제2 예측 모드 및 제2 참조 샘플 라인에 기반한 제2 예측 블록을 생성하는 단계; 및
    상기 제1 예측 블록 및 상기 제2 예측 블록에 기반하여 상기 현재 블록의 최종 예측 블록을 생성하는 단계를 포함하고,
    상기 제1 예측 모드 또는 상기 제2 예측 모드가 플래너 모드인지의 여부에 기반하여 상기 제1 참조 샘플 라인 또는 상기 제2 참조 샘플 라인 중 적어도 하나가 결정되는,
    비트스트림 전송 방법.
PCT/KR2023/014265 2022-09-20 2023-09-20 Mrl(multi reference line)을 이용한 인트라 예측 모드에 기반한 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장하는 기록 매체 WO2024063532A1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20220118765 2022-09-20
KR10-2022-0118765 2022-09-20

Publications (1)

Publication Number Publication Date
WO2024063532A1 true WO2024063532A1 (ko) 2024-03-28

Family

ID=90454964

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2023/014265 WO2024063532A1 (ko) 2022-09-20 2023-09-20 Mrl(multi reference line)을 이용한 인트라 예측 모드에 기반한 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장하는 기록 매체

Country Status (1)

Country Link
WO (1) WO2024063532A1 (ko)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210134267A (ko) * 2016-10-19 2021-11-09 에스케이텔레콤 주식회사 영상 부호화 또는 복호화하기 위한 장치 및 방법
KR20220016937A (ko) * 2016-10-14 2022-02-10 세종대학교산학협력단 영상의 부호화/복호화 방법 및 장치
KR102416257B1 (ko) * 2016-08-03 2022-07-04 주식회사 케이티 비디오 신호 처리 방법 및 장치

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102416257B1 (ko) * 2016-08-03 2022-07-04 주식회사 케이티 비디오 신호 처리 방법 및 장치
KR20220016937A (ko) * 2016-10-14 2022-02-10 세종대학교산학협력단 영상의 부호화/복호화 방법 및 장치
KR20210134267A (ko) * 2016-10-19 2021-11-09 에스케이텔레콤 주식회사 영상 부호화 또는 복호화하기 위한 장치 및 방법

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
L. XU (OPPO), Y. YU (OPPO), H. YU (OPPO), D. WANG(OPPO), K. CAO (QUALCOMM), V. SEREGIN (QUALCOMM), M. KARCZEWICZ(QUALCOMM): "Non-EE2: Combination of JVET-AA0120 and JVET-AA0137", 27. JVET MEETING; 20220713 - 20220722; TELECONFERENCE; (THE JOINT VIDEO EXPLORATION TEAM OF ISO/IEC JTC1/SC29/WG11 AND ITU-T SG.16 ), 18 July 2022 (2022-07-18), XP030303165 *
X. LI (ALIBABA-INC), R.-L. LIAO (ALIBABA-INC), J. CHEN (ALIBABA-INC), Y. YE (ALIBABA): "Non-EE2: On planar horizontal mode and planar vertical mode", 27. JVET MEETING; 20220713 - 20220722; TELECONFERENCE; (THE JOINT VIDEO EXPLORATION TEAM OF ISO/IEC JTC1/SC29/WG11 AND ITU-T SG.16 ), 18 July 2022 (2022-07-18), XP030302900 *

Similar Documents

Publication Publication Date Title
WO2020184991A1 (ko) Ibc 모드를 이용한 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법
WO2020055107A1 (ko) 영상 코딩 시스템에서 어파인 mvp 후보 리스트를 사용하는 어파인 움직임 예측에 기반한 영상 디코딩 방법 및 장치
WO2020180119A1 (ko) Cclm 예측에 기반한 영상 디코딩 방법 및 그 장치
WO2020251257A1 (ko) 예측 샘플을 생성하기 위한 가중치 인덱스 정보를 도출하는 영상 디코딩 방법 및 그 장치
WO2020185047A1 (ko) 인트라 예측을 수행하는 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법
WO2020141879A1 (ko) 영상 코딩 시스템에서 서브 블록 기반 시간적 머지 후보를 사용하는 어파인 움직임 예측에 기반한 영상 디코딩 방법 및 장치
WO2021015512A1 (ko) Ibc를 이용한 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법
WO2021112633A1 (ko) 동일 위치 픽처에 관한 정보를 포함하는 픽처 헤더에 기반한 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법
WO2020262962A1 (ko) 크로마 변환 블록의 최대 크기 제한을 이용한 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법
WO2020262960A1 (ko) 크로마 성분 부호화 블록의 최대 변환 크기 제한을 이용한 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법
WO2020262963A1 (ko) 크로마 블록의 최대 변환 크기 설정을 이용한 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법
WO2020149616A1 (ko) 영상 코딩 시스템에서 cclm 예측 기반 영상 디코딩 방법 및 그 장치
WO2019031842A1 (ko) 영상 처리 방법 및 이를 위한 장치
WO2021133100A1 (ko) Pdpc를 수행하는 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법
WO2021049865A1 (ko) Bdof를 수행하는 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법
WO2020184990A1 (ko) Ibc 예측을 이용한 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법
WO2020185045A1 (ko) 크로마 블록에 대한 분할 제한을 이용한 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법
WO2020197222A1 (ko) Isp를 이용한 잔차 신호 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법
WO2024063532A1 (ko) Mrl(multi reference line)을 이용한 인트라 예측 모드에 기반한 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장하는 기록 매체
WO2019194462A1 (ko) 인터 예측 모드 기반 영상 처리 방법 및 이를 위한 장치
WO2020009366A1 (ko) 영상 코딩 시스템에서 인트라 예측에 따른 영상 디코딩 방법 및 장치
WO2020013583A1 (ko) 영상 코딩 시스템에서 인트라 예측에 따른 영상 디코딩 방법 및 장치
WO2019199152A1 (ko) 어파인 예측을 이용하여 비디오 신호를 처리하는 방법 및 장치
WO2024043745A1 (ko) Mrl(multi reference line)을 이용한 인트라 예측 모드에 기반한 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장하는 기록 매체
WO2019194513A1 (ko) 어파인 예측을 이용하여 비디오 신호를 처리하는 방법 및 장치

Legal Events

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

Ref document number: 23868584

Country of ref document: EP

Kind code of ref document: A1