Image encoding / decoding method and device, and recording medium on which bitstream is stored

The method addresses inefficiencies in encoding high-resolution images by employing tree-based block division with temporal segmentation prediction, optimizing block segmentation depth and signaling, thereby improving encoding efficiency and reducing bit overhead.

WO2025216552A1PCT designated stage Publication Date: 2025-10-16LG ELECTRONICS INC
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
PCT/KR2025/004820
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-04-17
Filing Date
2025-04-09
Publication Date
2025-10-16

AI Technical Summary

Technical Problem

Existing video encoding technologies face challenges in efficiently compressing high-resolution and high-quality images, particularly in managing block division and signaling syntax elements for tree-based block segmentation, leading to inefficiencies in encoding and decoding processes.

Method used

The method employs a tree-based block division approach with temporal segmentation prediction, allowing for adaptive control of block segmentation depth based on quantization parameters and reference pictures, and signaling of syntax elements to optimize block partitioning.

Benefits of technology

This approach enhances encoding efficiency by reducing bit overhead and improving image encoding efficiency through adaptive control of block division and temporal segmentation prediction.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure KR2025004820_16102025_PF_FP_ABST
    Figure KR2025004820_16102025_PF_FP_ABST
Patent Text Reader

Abstract

An image decoding method and device according to the present disclosure can divide the current block into a plurality of coding blocks on the basis of temporal division prediction, generate a prediction block for a coding block of the current block, generate a residual block of the coding block, and reconstruct the coding block on the basis of the prediction block and the residual block.
Need to check novelty before this filing date? Find Prior Art

Description

Video encoding / decoding method and device, and recording medium storing bitstream

[0001] The present invention relates to a video encoding / decoding method and device, and a recording medium storing a bitstream.

[0002] Recently, the demand for high-resolution, high-quality images, such as HD (High Definition) images and UHD (Ultra High Definition) images, is increasing in various application fields, and accordingly, high-efficiency image compression technologies are being discussed.

[0003] There are various technologies for image compression, such as inter prediction technology that predicts pixel values ​​included in the current picture from pictures before or after the current picture, intra prediction technology that predicts pixel values ​​included in the current picture using pixel information within the current picture, and entropy encoding technology that assigns short codes to values ​​with high frequency of appearance and long codes to values ​​with low frequency of appearance, and these technologies can be used to effectively compress and transmit or store image data.

[0004] The present disclosure provides a tree-based block division method and device.

[0005] The present disclosure provides a method and apparatus for signaling a syntax element for tree-based block segmentation.

[0006] The present disclosure provides a temporal segmentation prediction method and device.

[0007] The video decoding method and device according to the present disclosure can divide a current block into a plurality of coding blocks based on temporal segmentation prediction, generate a prediction block for the coding block of the current block, generate a residual block of the coding block, and restore the coding block based on the prediction block and the residual block.

[0008] In the image decoding method and device according to the present disclosure, the maximum segmentation depth of the current block can be adjusted based on the segmentation depth of a block position corresponding to the current block within a reference picture temporally adjacent to the current picture to which the current block belongs.

[0009] In the video decoding method and device according to the present disclosure, when the split depth with respect to the quad tree of the current block is greater than the split depth with respect to the quad tree at the block position, the maximum split depth of the current block can be increased.

[0010] In the video decoding method and device according to the present disclosure, when the split depth with respect to the quad tree of the current block is smaller than the minimum split depth with respect to the quad tree at the block position, the maximum split depth of the current block may be reduced.

[0011] In the video decoding method and device according to the present disclosure, when the split depth of the quad tree of the current block is smaller than the split depth of the quad tree at the block location, the quad split flag may be signaled before the split flag. Here, the quad split flag may indicate whether the current block is split based on quad splitting, and the split flag may indicate whether the current block is split into any one of a plurality of block split types.

[0012] In the image decoding method and device according to the present disclosure, the temporal segmentation prediction can be performed based on at least one of a quantization parameter of a current slice to which the current block belongs or a quantization parameter of a corresponding slice in a reference picture.

[0013] In the image decoding method and device according to the present disclosure, the reference picture for temporal segmentation prediction can be selected based on at least one of a quantization parameter, a POC, or a temporal layer identifier.

[0014] In the video decoding method and device according to the present disclosure, at least one of a first syntax element regarding whether to apply a method of increasing the maximum segmentation depth of the current block or a second syntax element regarding whether to apply a method of decreasing the maximum segmentation depth of the current block may be signaled.

[0015] In the image decoding method and device according to the present disclosure, the temporal segmentation prediction can be adaptively performed based on a flag regarding whether or not the temporal segmentation prediction is applied.

[0016] The video encoding method and device according to the present disclosure can divide a current block into a plurality of coding blocks based on temporal segmentation prediction, generate a prediction block for the coding block of the current block, derive transform coefficients based on a residual block of the coding block, and encode residual information regarding the transform coefficients.

[0017] A computer-readable digital storage medium is provided, which stores encoded video / image information that causes a decoding device according to the present disclosure to perform a video decoding method.

[0018] A computer-readable digital storage medium storing video / image information generated by a video encoding method according to the present disclosure is provided.

[0019] A method and device for transmitting video / image information generated by a video encoding method according to the present disclosure are provided.

[0020] According to the present disclosure, encoding efficiency can be improved by effectively controlling block division through prediction of image complexity.

[0021] According to the present disclosure, bit overhead due to signaling of syntax elements for tree-based block partitioning can be reduced.

[0022] According to the present disclosure, image encoding efficiency can be improved by adaptively controlling temporal segmentation prediction.

[0023] FIG. 1 illustrates a video / image coding system according to the present disclosure.

[0024] FIG. 2 is a schematic block diagram of an encoding device to which an embodiment of the present disclosure can be applied and in which encoding of a video / image signal is performed.

[0025] FIG. 3 is a schematic block diagram of a decoding device to which an embodiment of the present disclosure can be applied and in which decoding of a video / image signal is performed.

[0026] FIG. 4 illustrates a decoding method performed by a decoding device (300) as an embodiment according to the present disclosure.

[0027] Figure 5 illustrates an example of a picture reference structure for video encoding / decoding and the resulting change in QP.

[0028] FIG. 6 illustrates a schematic configuration of a decoding device (300) that performs a decoding method according to the present disclosure.

[0029] FIG. 7 illustrates an encoding method performed by an encoding device (200) as an embodiment according to the present disclosure.

[0030] FIG. 8 illustrates a schematic configuration of an encoding device (200) that performs an encoding method according to the present disclosure.

[0031] FIG. 9 illustrates an example of a content streaming system to which embodiments of the present disclosure can be applied.

[0032] The video decoding method and device according to the present disclosure can divide a current block into a plurality of coding blocks based on temporal segmentation prediction, generate a prediction block for the coding block of the current block, generate a residual block of the coding block, and restore the coding block based on the prediction block and the residual block.

[0033] In the video decoding method and device according to the present disclosure, the maximum segmentation depth of the current block can be adjusted based on the segmentation depth of a block position corresponding to the current block within a reference picture temporally adjacent to the current picture to which the current block belongs.

[0034] In the video decoding method and device according to the present disclosure, when the split depth with respect to the quad tree of the current block is greater than the split depth with respect to the quad tree at the block position, the maximum split depth of the current block can be increased.

[0035] In the video decoding method and device according to the present disclosure, when the split depth of the quad tree of the current block is smaller than the minimum split depth of the quad tree at the block location, the maximum split depth of the current block may be reduced.

[0036] In the video decoding method and device according to the present disclosure, when the split depth of the quad tree of the current block is smaller than the split depth of the quad tree at the block location, the quad split flag may be signaled before the split flag. Here, the quad split flag may indicate whether the current block is split based on quad splitting, and the split flag may indicate whether the current block is split into any one of a plurality of block split types.

[0037] In the image decoding method and device according to the present disclosure, the temporal segmentation prediction can be performed based on at least one of a quantization parameter of a current slice to which the current block belongs or a quantization parameter of a corresponding slice in a reference picture.

[0038] In the image decoding method and device according to the present disclosure, the reference picture for temporal segmentation prediction can be selected based on at least one of a quantization parameter, a POC, or a temporal layer identifier.

[0039] In the video decoding method and device according to the present disclosure, at least one of a first syntax element regarding whether to apply a method of increasing the maximum segmentation depth of the current block or a second syntax element regarding whether to apply a method of decreasing the maximum segmentation depth of the current block may be signaled.

[0040] In the image decoding method and device according to the present disclosure, the temporal segmentation prediction can be adaptively performed based on a flag regarding whether or not the temporal segmentation prediction is applied.

[0041] The video encoding method and device according to the present disclosure can divide a current block into a plurality of coding blocks based on temporal segmentation prediction, generate a prediction block for the coding block of the current block, derive transform coefficients based on a residual block of the coding block, and encode residual information about the transform coefficients.

[0042] A computer-readable digital storage medium is provided, which stores encoded video / image information that causes a decoding device according to the present disclosure to perform a video decoding method.

[0043] A computer-readable digital storage medium storing video / image information generated by a video encoding method according to the present disclosure is provided.

[0044] A method and device for transmitting video / image information generated by a video encoding method according to the present disclosure are provided.

[0045] The present disclosure may be modified in various ways and encompasses numerous embodiments. Specific embodiments are illustrated in the drawings and described in detail in the detailed description. However, this is not intended to limit the present disclosure to specific embodiments, but rather to encompass all modifications, equivalents, and alternatives falling within the spirit and technical scope of the present disclosure. Similar reference numerals have been used to designate similar components throughout the description of each drawing.

[0046] While terms such as "first" and "second" may be used to describe various components, these components should not be limited by these terms. These terms are used solely to distinguish one component from another. For example, without departing from the scope of the present disclosure, a first component could be referred to as a "second component," and similarly, a second component could also be referred to as a "first component." The term "and / or" includes a combination of multiple related items described herein or any of multiple related items described herein.

[0047] When a component is referred to as being "connected" or "connected" to another component, it should be understood that it may be directly connected or connected to that other component, but that there may be other components intervening. Conversely, when a component is referred to as being "directly connected" or "connected" to another component, it should be understood that there are no other components intervening.

[0048] The terminology used in this application is only used to describe specific embodiments and is not intended to limit the present disclosure. The singular expression includes the plural expression unless the context clearly indicates otherwise. In this application, it should be understood that the terms "comprise" or "have" indicate the presence of a feature, number, step, operation, component, part, or combination thereof described in the specification, but do not preclude the possibility of the presence or addition of one or more other features, numbers, steps, operations, components, parts, or combinations thereof.

[0049] The present disclosure relates to video / image coding. For example, the methods / embodiments disclosed in this specification can be applied to methods disclosed in the versatile video coding (VVC) standard. In addition, the methods / embodiments disclosed in this specification can be applied to methods disclosed in the essential video coding (EVC) standard, the AOMedia Video 1 (AV1) standard, the second generation of audio video coding standard (AVS2), or the next generation of video / image coding standards (e.g., H.267 or H.268).

[0050] This specification presents various embodiments of video / image coding, and unless otherwise stated, the embodiments may be performed in combination with each other.

[0051] In this specification, a video may refer to a set of images over time. A picture generally refers to a unit representing one image at a specific time point, and a slice / tile is a unit that constitutes part of a picture in coding. A slice / tile may include one or more coding tree units (CTUs). A picture may be composed of one or more slices / tiles. A tile is a rectangular area consisting of multiple CTUs within a specific tile column and a specific tile row of a picture. A tile column is a rectangular area of ​​CTUs that has a height equal to the height of the picture and a width specified by the syntax requirements of the picture parameter set. A tile row is a rectangular area of ​​CTUs that has a height specified by the picture parameter set and a width equal to the width of the picture. CTUs within a tile are arranged consecutively according to the CTU raster scan, while tiles within a picture may be arranged consecutively according to the tile raster scan. A slice may contain an integer number of complete tiles or an integer number of contiguous complete CTU rows within a picture, which may be exclusively contained within a single NAL unit. Meanwhile, a picture may be divided into two or more subpictures. A subpicture may be a rectangular region of one or more slices within a picture.

[0052] A pixel, or pel, can refer to the smallest unit that constitutes a picture (or image). Additionally, the term "sample" can be used as a counterpart to a pixel. A sample can generally represent a pixel or a pixel value, and can represent only the pixel / pixel value of the luminance component, or only the pixel / pixel value of the chrominance component.

[0053] A unit may represent a basic unit of image processing. A unit may include at least one of a specific region of a picture and information related to the region. One unit may include one luma block and two chroma (e.g., cb, cr) blocks. In some cases, the term "unit" may be used interchangeably with terms such as "block" or "area." In general, an MxN block may include a set (or array) of samples (or sample array) or transform coefficients consisting of M columns and N rows.

[0054] As used herein, "A or B" can mean "only A," "only B," or "both A and B." In other words, as used herein, "A or B" can be interpreted as "A and / or B." For example, as used herein, "A, B or C" can mean "only A," "only B," "only C," or "any combination of A, B and C."

[0055] As used herein, a slash ( / ) or a comma can mean "and / or." For example, "A / B" can mean "A and / or B." Accordingly, "A / B" can mean "only A," "only B," or "both A and B." For example, "A, B, C" can mean "A, B, or C."

[0056] In this specification, "at least one of A and B" may mean "only A", "only B" or "both A and B". Additionally, in this specification, the expressions "at least one of A or B" or "at least one of A and / or B" may be interpreted identically to "at least one of A and B".

[0057] Additionally, in this specification, “at least one of A, B and C” can mean “only A,” “only B,” “only C,” or “any combination of A, B and C.” Additionally, “at least one of A, B or C” or “at least one of A, B and / or C” can mean “at least one of A, B and C.”

[0058] Additionally, parentheses used herein may mean "for example." Specifically, when "prediction (intra-prediction)" is indicated, "intra-prediction" may be suggested as an example of "prediction." In other words, "prediction" in this specification is not limited to "intra-prediction," and "intra-prediction" may be suggested as an example of "prediction." Furthermore, even when "prediction (i.e., intra-prediction)" is indicated, "intra-prediction" may be suggested as an example of "prediction."

[0059] Technical features individually described in a single drawing in this specification may be implemented individually or simultaneously.

[0060] FIG. 1 illustrates a video / image coding system according to the present disclosure.

[0061] Referring to FIG. 1, a video / image coding system may include a first device (source device) and a second device (receiving device).

[0062] A source device can transmit encoded video / image information or data to a receiving device via a digital storage medium or a network in the form of a file or streaming. The source device may include a video source, an encoding device, and a transmitting device. The receiving device may include a receiving device, a decoding device, and a renderer. The encoding device may be referred to as a video / image encoding device, and the decoding device may be referred to as a video / image decoding device. The transmitter may be included in the encoding device. The receiver may be included in the decoding device. The renderer may include a display unit, and the display unit may be configured as a separate device or an external component.

[0063] A video source may obtain video / images through a process of capturing, synthesizing, or generating video / images. The video source may include a video / image capture device and / or a video / image generation device. The video / image capture device may include one or more cameras, a video / image archive containing previously captured video / images, etc. The video / image generation device may include a computer, a tablet, a smartphone, etc., and may (electronically) generate video / images. For example, a virtual video / image may be generated through a computer, etc., in which case the video / image capture process may be replaced by a process of generating related data.

[0064] An encoding device can encode input video / images. The encoding device can perform a series of procedures, such as prediction, transformation, and quantization, to improve compression and coding efficiency. The encoded data (encoded video / image information) can be output in the form of a bitstream.

[0065] The transmission unit can transmit encoded video / image information or data output in the form of a bitstream to the receiving unit of a receiving device via a digital storage medium or network in the form of a file or streaming. The digital storage medium can include various storage media such as USB, SD, CD, DVD, Blu-ray, HDD, SSD, etc. The transmission unit can include an element for generating a media file via a predetermined file format and an element for transmission via a broadcasting / communication network. The receiving unit can receive / extract the bitstream and transmit it to a decoding device.

[0066] The decoding device can decode the video / image by performing a series of procedures such as inverse quantization, inverse transformation, and prediction corresponding to the operation of the encoding device.

[0067] The renderer can render decoded video / images. The rendered video / images can be displayed through the display unit.

[0068] FIG. 2 is a schematic block diagram of an encoding device to which an embodiment of the present disclosure can be applied and in which encoding of a video / image signal is performed.

[0069] Referring to FIG. 2, the encoding device (200) may be configured to include an image partitioner (210), a prediction unit (predictor) 220, a residual processor (residual processor) 230, an entropy encoder (entropy encoder) 240, an adder (adder) 250, a filter (filter) 260, and a memory (memory) 270. The prediction unit (220) may include an inter prediction unit (221) and an intra prediction unit (222). The residual processor (230) may include a transformer (transformer) 232, a quantizer (quantizer) 233, a dequantizer (dequantizer) 234, and an inverse transformer (inverse transformer) 235. The residual processing unit (230) may further include a subtractor (231). The addition unit (250) may be called a reconstructor or a recontructed block generator. The image segmentation unit (210), the prediction unit (220), the residual processing unit (230), the entropy encoding unit (240), the addition unit (250), and the filtering unit (260) described above may be configured by one or more hardware components (e.g., an encoding device chipset or processor) according to an embodiment. In addition, the memory (270) may include a decoded picture buffer (DPB) and may be configured by a digital storage medium. The hardware component may further include the memory (270) as an internal / external component.

[0070] The image segmentation unit (210) can segment an input image (or picture, frame) input to the encoding device (200) into one or more processing units. For example, the processing unit may be called a coding unit (CU). In this case, the coding unit may be recursively segmented from a coding tree unit (CTU) or a largest coding unit (LCU) according to a QTBTTT (Quad-tree binary-tree ternary-tree) structure.

[0071] For example, a single coding unit may be split into multiple coding units with deeper depths based on a quad-tree structure, a binary tree structure, and / or a ternary structure. In this case, for example, the quad-tree structure may be applied first, and the binary tree structure and / or the ternary structure may be applied later. Alternatively, the binary tree structure may be applied before the quad-tree structure. The coding procedure according to the present specification may be performed based on the final coding unit that is no longer split. In this case, based on coding efficiency according to image characteristics, etc., the largest coding unit may be used directly as the final coding unit, or, if necessary, the coding unit may be recursively split into coding units of lower depths, and the coding unit with the optimal size may be used as the final coding unit. Here, the coding procedure may include procedures such as prediction, transformation, and restoration, which will be described later.

[0072] As another example, the processing unit may further include a prediction unit (PU) or a transform unit (TU). In this case, the prediction unit and the transform unit may each be split or partitioned from the final coding unit described above. The prediction unit may be a unit of sample prediction, and the transform unit may be a unit for deriving a transform coefficient and / or a unit for deriving a residual signal from a transform coefficient.

[0073] The term "unit" may be used interchangeably with terms such as "block" or "area" depending on the case. In general, an MxN block can represent a set of samples or transform coefficients consisting of M columns and N rows. A sample can generally represent a pixel or a pixel value, and can represent only the pixel / pixel value of the luminance component, or only the pixel / pixel value of the chrominance component. A sample can be used as a term corresponding to a pixel or pel in a picture (or image).

[0074] The encoding device (200) can generate a residual signal (residual block, residual sample array) by subtracting a prediction signal (prediction block, prediction sample array) output from an inter prediction unit (221) or an intra prediction unit (222) from an input video signal (original block, original sample array), and the generated residual signal is transmitted to a conversion unit (232). In this case, a unit that subtracts a prediction signal (prediction block, prediction sample array) from an input video signal (original block, original sample array) within the encoding device (200) may be called a subtraction unit (231).

[0075] The prediction unit (220) can perform a prediction on a block to be processed (hereinafter, referred to as a current block) and generate a predicted block including prediction samples for the current block. The prediction unit (220) can determine whether intra prediction or inter prediction is applied on a current block or CU basis. The prediction unit (220) can generate various information related to prediction, such as prediction mode information, as described later in the description of each prediction mode, and transmit the information to the entropy encoding unit (240). The information related to prediction can be encoded by the entropy encoding unit (240) and output in the form of a bitstream.

[0076] The intra prediction unit (222) 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 a certain distance away from the current block, depending on the prediction mode. In intra prediction, the prediction modes may include one or more non-directional modes and multiple directional modes. The non-directional mode may include at least one of a DC mode or a planar mode. The directional mode may include 33 directional modes or 65 directional modes depending on the degree of detail in the prediction direction. However, this is only an example, and a greater or lesser number of directional modes may be used depending on the settings. The intra prediction unit (222) may also determine the prediction mode applied to the current block by using the prediction mode applied to the neighboring blocks.

[0077] The inter prediction unit (221) can derive a prediction block for the current block based on a reference block (reference sample array) specified by a motion vector on a reference picture. At this time, in order to reduce the amount of motion information transmitted in the inter prediction mode, the motion information can be predicted in units of blocks, subblocks, or samples based on the correlation of motion information between neighboring blocks and the current block. The motion information can include a motion vector and a reference picture index. The motion information can further include inter prediction direction information (L0 prediction, L1 prediction, Bi prediction, etc.). In the case of inter prediction, the neighboring block can include a spatial neighboring block existing in the current picture and a temporal neighboring block existing in the reference picture. The reference picture including the reference block and the reference picture including the temporal neighboring block may be the same or different. The above temporal neighboring blocks may be called collocated reference blocks, collocated CUs (colCUs), etc., and the reference pictures including the temporal neighboring blocks may be called collocated pictures (colPic). For example, the inter prediction unit (221) may construct a motion information candidate list based on the neighboring blocks, and generate information indicating which candidate is used to derive the motion vector and / or reference picture index of the current block. Inter prediction may be performed based on various prediction modes, and for example, in the case of skip mode and merge mode, the inter prediction unit (221) may use the motion information of the neighboring blocks as the motion information of the current block. In the case of skip mode, unlike the merge mode, a residual signal may not be transmitted.In the motion vector prediction (MVP) mode, the motion vector of the surrounding blocks is used as a motion vector predictor, and the motion vector of the current block can be indicated by signaling the motion vector difference.

[0078] The prediction unit (220) can generate a prediction signal based on various prediction methods described below. For example, the prediction unit can apply intra prediction or inter prediction for prediction of a single block, and can also apply intra prediction and inter prediction simultaneously. This can be called combined inter and intra prediction (CIIP) mode. In addition, the prediction unit can be based on an intra block copy (IBC) prediction mode or a palette mode for prediction of a block. The IBC prediction mode or palette mode can be used for content image / video coding such as games, such as screen content coding (SCC). 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 utilize at least one of the inter prediction techniques described herein. Palette mode can be viewed as an example of intra coding or intra prediction. When the palette mode is applied, sample values ​​within a picture can be signaled based on information about the palette table and palette index. The prediction signal generated through the prediction unit (220) can be used to generate a restoration signal or a residual signal.

[0079] The transform unit (232) can apply a transform technique to the residual signal to generate transform coefficients. For example, the transform technique can include at least one of a Discrete Cosine Transform (DCT), a Discrete Sine Transform (DST), a Karhunen-Loeve Transform (KLT), a Graph-Based Transform (GBT), or a Conditionally Non-linear Transform (CNT). Here, GBT refers to a transform obtained from a graph when the relationship information between pixels is expressed as a graph. CNT refers to a transform obtained based on generating a prediction signal using all previously restored pixels. In addition, the transform process can be applied to a pixel block having a square size and the same size, or can be applied to a block of a non-square variable size.

[0080] The quantization unit (233) quantizes the transform coefficients and transmits them to the entropy encoding unit (240), and the entropy encoding unit (240) can encode the quantized signal (information about the quantized transform coefficients) and output it as a bitstream. The information about the quantized transform coefficients can be called residual information. The quantization unit (233) can rearrange the quantized transform coefficients in a block form into a one-dimensional vector form based on the coefficient scan order, and can also generate information about the quantized transform coefficients based on the quantized transform coefficients in the one-dimensional vector form.

[0081] The entropy encoding unit (240) can perform various encoding methods such as exponential Golomb, context-adaptive variable length coding (CAVLC), context-adaptive binary arithmetic coding (CABAC), etc. The entropy encoding unit (240) can also encode information necessary for video / image restoration (e.g., values ​​of syntax elements, etc.) together or separately from quantized transform coefficients.

[0082] Encoded information (e.g., encoded video / image information) can be transmitted or stored in the form of a bitstream in units of NAL (network abstraction layer) units. The video / image information may further include information on various parameter sets, such as an adaptation parameter set (APS), a picture parameter set (PPS), a sequence parameter set (SPS), or a video parameter set (VPS). In addition, the video / image information may further include general constraint information. In the present specification, information and / or syntax elements transmitted / signaled from an encoding device to a decoding device may be included in the video / image information. The video / image information may be encoded through the above-described encoding procedure and included in the bitstream. The bitstream may be transmitted via a network or stored in a digital storage medium. Here, the network may include a broadcasting network and / or a communication network, and the digital storage medium may include various storage media, such as a USB, SD, CD, DVD, Blu-ray, HDD, or SSD. The signal output from the entropy encoding unit (240) may be configured as an internal / external element of the encoding device (200) by a transmitting unit (not shown) and / or a storing unit (not shown), or the transmitting unit may be included in the entropy encoding unit (240).

[0083] The quantized transform coefficients output from the quantization unit (233) can be used to generate a prediction signal. For example, by applying inverse quantization and inverse transformation to the quantized transform coefficients through the inverse quantization unit (234) and the inverse transform unit (235), a residual signal (residual block or residual samples) can be reconstructed. The addition unit (250) can generate a reconstructed signal (reconstructed picture, reconstructed block, reconstructed sample array) by adding the reconstructed residual signal to the prediction signal output from the inter prediction unit (221) or the intra prediction unit (222). When 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 reconstructed block. The addition unit (250) may be called a reconstructor or a reconstructed block generation unit. The generated restoration signal can be used for intra prediction of the next processing target block within the current picture, and can also be used for inter prediction of the next picture after filtering as described below. Meanwhile, LMCS (luma mapping with chroma scaling) may be applied during the picture encoding and / or restoration process.

[0084] The filtering unit (260) can improve subjective / objective picture quality by applying filtering to the restoration signal. For example, the filtering unit (260) can apply various filtering methods to the restoration picture to generate a modified restoration picture, and store the modified restoration picture in the memory (270), specifically, in the DPB of the memory (270). The various filtering methods can include deblocking filtering, sample adaptive offset, adaptive loop filter, bilateral filter, etc. The filtering unit (260) can generate various information regarding filtering and transmit it to the entropy encoding unit (240). The information regarding filtering can be encoded by the entropy encoding unit (240) and output in the form of a bitstream.

[0085] The modified restored picture transmitted to the memory (270) can be used as a reference picture in the inter prediction unit (221). Through this, when inter prediction is applied, the encoding device can avoid prediction mismatch between the encoding device (200) and the decoding device, and can also improve encoding efficiency.

[0086] The DPB of the memory (270) can store the modified restored picture to be used as a reference picture in the inter prediction unit (221). The memory (270) can store motion information of a block from which motion information is derived (or encoded) within the current picture and / or motion information of blocks within a picture that has already been restored. The stored motion information can be transferred to the inter prediction unit (221) to be used as motion information of a spatial neighboring block or motion information of a temporal neighboring block. The memory (270) can store restored samples of restored blocks within the current picture and transfer them to the intra prediction unit (222).

[0087] FIG. 3 is a schematic block diagram of a decoding device to which an embodiment of the present disclosure can be applied and in which decoding of a video / image signal is performed.

[0088] Referring to FIG. 3, the decoding device (300) may be configured to include an entropy decoder (310), a residual processor (320), a predictor (330), an adder (340), a filter (350), and a memory (360). The predictor (330) may include an inter-prediction unit (332) and an intra-prediction unit (331). The residual processor (320) may include a dequantizer (321) and an inverse transformer (321).

[0089] The entropy decoding unit (310), residual processing unit (320), prediction unit (330), addition unit (340), and filtering unit (350) described above may be configured by a single hardware component (e.g., a decoding device chipset or processor) depending on the embodiment. In addition, the memory (360) may include a decoded picture buffer (DPB) and may be configured by a digital storage medium. The hardware component may further include the memory (360) as an internal / external component.

[0090] When a bitstream including video / image information is input, the decoding device (300) can restore the image corresponding to the process in which the video / image information is processed in the encoding device of FIG. 2. For example, the decoding device (300) can derive units / blocks based on block division-related information obtained from the bitstream. The decoding device (300) can perform decoding using a processing unit applied in the encoding device. Accordingly, the processing unit of decoding may be a coding unit, and the coding unit may be divided from a coding tree unit or a maximum coding unit according to a quad tree structure, a binary tree structure, and / or a ternary tree structure. One or more transform units may be derived from the coding unit. Then, the restored image signal decoded and output through the decoding device (300) can be reproduced through a reproduction device.

[0091] The decoding device (300) can receive a signal output from the encoding device of FIG. 2 in the form of a bitstream, and the received signal can be decoded through the entropy decoding unit (310). For example, the entropy decoding unit (310) can parse the bitstream to derive information (e.g., video / image information) necessary for image restoration (or picture restoration). The video / image information may further include information on various parameter sets, such as an adaptation parameter set (APS), a picture parameter set (PPS), a sequence parameter set (SPS), or a video parameter set (VPS). In addition, the video / image information may further include general constraint information. The decoding device can decode the picture further based on the information on the parameter set and / or the general constraint information. The signaling / received information and / or syntax elements described later in this specification can be decoded through the decoding procedure and obtained from the bitstream. For example, the entropy decoding unit (310) can decode information in a bitstream based on a coding method such as exponential Golomb coding, CAVLC, or CABAC, and output the values ​​of syntax elements required for image restoration and the quantized values ​​of transform coefficients for residuals. More specifically, the CABAC entropy decoding method receives a bin corresponding to each syntax element in the bitstream, determines a context model using information of the syntax element to be decoded and decoding information of the surrounding and decoding target blocks or information of symbols / bins decoded in the previous step, and predicts the occurrence probability of the bin according to the determined context model to perform arithmetic decoding of the bin to generate a symbol corresponding to the value of each syntax element.At this time, the CABAC entropy decoding method can update the context model using the information of the decoded symbol / bin for the context model of the next symbol / bin after determining the context model. Information regarding prediction among the information decoded by the entropy decoding unit (310) is provided to the prediction unit (inter prediction unit (332) and intra prediction unit (331)), and residual values ​​on which entropy decoding is performed by the entropy decoding unit (310), i.e., quantized transform coefficients and related parameter information, can be input to the residual processing unit (320). The residual processing unit (320) can derive a residual signal (residual block, residual samples, residual sample array). In addition, information regarding filtering among the information decoded by the entropy decoding unit (310) can be provided to the filtering unit (350). Meanwhile, a receiving unit (not shown) that receives a signal output from an encoding device may be further configured as an internal / external element of a decoding device (300), or the receiving unit may be a component of an entropy decoding unit (310).

[0092] Meanwhile, a decoding device according to the present specification may be called a video / video / picture decoding device, and the decoding device may be divided into an information decoding device (video / video / picture information decoding device) and a sample decoding device (video / video / picture sample decoding device). The information decoding device may include the entropy decoding unit (310), and the sample decoding device may include at least one of the inverse quantization unit (321), the inverse transformation unit (322), the adding unit (340), the filtering unit (350), the memory (360), the inter prediction unit (332), and the intra prediction unit (331).

[0093] The inverse quantization unit (321) can inverse quantize the quantized transform coefficients and output the transform coefficients. The inverse quantization unit (321) can rearrange the quantized transform coefficients into a two-dimensional block form. In this case, the rearrangement can be performed based on the coefficient scanning order performed in the encoding device. The inverse quantization unit (321) can perform inverse quantization on the quantized transform coefficients using quantization parameters (e.g., quantization step size information) and obtain transform coefficients.

[0094] In the inverse transform unit (322), the transform coefficients are inversely transformed to obtain a residual signal (residual block, residual sample array).

[0095] The prediction unit (320) can perform a prediction on the current block and generate a predicted block including prediction samples for the current block. The prediction unit (320) can determine whether intra-prediction or inter-prediction is applied to the current block based on the information regarding the prediction output from the entropy decoding unit (310), and can determine a specific intra / inter-prediction mode.

[0096] The prediction unit (320) can generate a prediction signal based on various prediction methods described below. For example, the prediction unit (320) can apply intra prediction or inter prediction for prediction of a single block, and can also apply intra prediction and inter prediction simultaneously. This can be called combined inter and intra prediction (CIIP) mode. In addition, the prediction unit can be based on an intra block copy (IBC) prediction mode or a palette mode for prediction of a block. The IBC prediction mode or palette mode can be used for content image / video coding such as games, such as screen content coding (SCC). 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 utilize at least one of the inter prediction techniques described herein. Palette mode can be viewed as an example of intra coding or intra prediction. When palette mode is applied, information about the palette table and palette index may be included and signaled in the video / image information.

[0097] The intra prediction unit (331) can predict the current block by referring to samples within the current picture. The referenced samples may be located in the neighborhood of the current block, or may be located a certain distance away from the current block, depending on the prediction mode. In intra prediction, the prediction modes may include one or more non-directional modes and multiple directional modes. The intra prediction unit (331) may also determine the prediction mode applied to the current block by using the prediction mode applied to the neighboring blocks.

[0098] The inter prediction unit (332) can derive a prediction block for the current block based on a reference block (reference sample array) specified by a motion vector on a reference picture. At this time, in order to reduce the amount of motion information transmitted in the inter prediction mode, the motion information can be predicted in units of blocks, subblocks, or samples based on the correlation of the motion information between the neighboring blocks and the current block. The motion information can include a motion vector and a reference picture index. The motion information can further include inter prediction direction information (L0 prediction, L1 prediction, Bi prediction, etc.). In the case of inter prediction, the neighboring blocks can include spatial neighboring blocks existing in the current picture and temporal neighboring blocks existing in the reference picture. For example, the inter prediction unit (332) can construct a motion information candidate list based on the neighboring blocks, and derive the motion vector and / or reference picture index of the current block based on the received candidate selection information. Inter prediction can be performed based on various prediction modes, and information about the prediction can include information indicating an inter prediction mode for the current block.

[0099] The addition unit (340) can generate a restoration signal (restored picture, restoration block, restoration sample array) by adding the acquired residual signal to the prediction signal (prediction block, prediction sample array) output from the prediction unit (including the inter-prediction unit (332) and / or intra-prediction unit (331)). When there is no residual for the block to be processed, such as when skip mode is applied, the prediction block can be used as the restoration block.

[0100] The addition unit (340) may be referred to as a restoration unit or restoration block generation unit. The generated restoration signal may be used for intra prediction of the next processing target block within the current picture, may be output after filtering as described below, or may be used for inter prediction of the next picture. Meanwhile, LMCS (luma mapping with chroma scaling) may be applied during the picture decoding process.

[0101] The filtering unit (350) can improve subjective / objective image quality by applying filtering to the restored signal. For example, the filtering unit (350) can apply various filtering methods to the restored picture to generate a modified restored picture, and transmit the modified restored picture to the memory (360), specifically, to the DPB of the memory (360). The various filtering methods can include deblocking filtering, sample adaptive offset, adaptive loop filter, bilateral filter, etc.

[0102] The (corrected) reconstructed picture stored in the DPB of the memory (360) can be used as a reference picture in the inter prediction unit (332). The memory (360) can store motion information of a block from which motion information is derived (or decoded) in the current picture and / or motion information of blocks in a picture that has already been reconstructed. The stored motion information can be transferred to the inter prediction unit (332) to be used as motion information of a spatial neighboring block or motion information of a temporal neighboring block. The memory (360) can store reconstructed samples of reconstructed blocks in the current picture and transfer them to the intra prediction unit (331).

[0103] In this specification, the embodiments described in the filtering unit (260), the inter prediction unit (221), and the intra prediction unit (222) of the encoding device (200) can be applied to the filtering unit (350), the inter prediction unit (332), and the intra prediction unit (331) of the decoding device (300) in the same or corresponding manner, respectively.

[0104] FIG. 4 illustrates an image decoding method performed by a decoding device (300) as an embodiment according to the present disclosure.

[0105] Referring to FIG. 4, the current block can be divided into multiple coding blocks based on temporal segmentation prediction (S400).

[0106] Temporal segmentation prediction according to the present disclosure may be a method of adjusting the segmentation depth of a current block based on block segmentation information of a reference picture temporally adjacent to the current picture.

[0107] The current picture may be a picture to which the current block belongs. The reference picture may be a picture for which encoding / decoding was performed before the current picture in the encoding / decoding order. In addition, the reference picture may refer to one or more reference pictures among a plurality of reference pictures in a reference picture list for the current picture. The block partition information of the reference picture may refer to block partition information stored in units of blocks pre-defined for the corresponding reference picture. The stored block partition information may include at least one of a partition depth for a quad tree (QT) or a partition depth for a multi-type tree (MTT). Here, the multi-type tree may include at least one of a binary tree (BT) or a ternary tree (TT). Alternatively, the block partition information of the reference picture may refer to an average value, a maximum value, or a minimum value of the aforementioned partition depths. The above-defined block unit may be a 4x4 block unit, an 8x8 block unit, or a 16x16 block unit.

[0108] The segmentation depth of the current block can be adjusted based on the block segmentation information of temporally adjacent reference pictures. Here, the segmentation depth is the (maximum) segmentation depth according to tree-based block segmentation, and may be at least one of the segmentation depth for a quad tree (QtDepth) or the segmentation depth for a multi-type tree (MtDepth).

[0109] Within temporally adjacent reference pictures, the maximum segmentation depth of the current block may be increased or decreased based on a comparison of the segmentation depth of the block position corresponding to the current block and the segmentation depth of the current block. Hereinafter, the block position corresponding to the current block within the temporally adjacent reference pictures will be referred to as a reference position.

[0110] For example, if a first condition pre-defined in the encoding device and the decoding device is satisfied, the maximum MtDepth for the current block can be increased. The first condition may include at least one of the conditions 1-1 to 1-3 described below.

[0111] (Condition 1-1) The QtDepth of the current block is greater than the average QtDepth of the reference location. Here, the average QtDepth can be derived based on the average of multiple QtDepths stored in the reference location (or the block of the reference location). In this case, the average QtDepth can be replaced with the maximum value, minimum value, median value, etc. of QtDepth.

[0112] (Condition 1-2) The maximum MtDepth value of the block position corresponding to the current block in the reference picture is greater than or equal to the maximum MtDepth supported by the reference picture. Here, the maximum MtDepth value can be derived based on the maximum value among multiple QtDepth values ​​stored in the reference position (or the block of the reference position).

[0113] (Condition 1-3) The MtDepth of the current block is equal to the maximum MtDepth.

[0114] According to Condition 1-1, if the QtDepth of the current block is greater than the average QtDepth of the reference positions, it can be determined that the image characteristics of the current block position indicate complexity. According to Condition 1-2, if the maximum MtDepth of the reference position is greater than or equal to the maximum MtDepth supported by the reference picture, it means that many block splits have occurred at the position, so it can be determined that the image characteristics of the reference position indicate complexity. If the image characteristics of the reference position indicate complexity, it can be predicted that the current block also indicates image complexity. According to Condition 1-3, if the MtDepth of the current block is equal to the maximum MtDepth, it can be determined that the image characteristics of the current block position indicate complexity. Therefore, when Conditions 1-1 to 1-3 are satisfied, the encoding efficiency can be improved by performing additional block splitting by increasing the maximum splitting depth.

[0115] Alternatively, the maximum MtDepth for the current block may be reduced if a second condition pre-defined in the encoding device and the decoding device is satisfied. The second condition may include at least one of the conditions 2-1 to 2-3 described below.

[0116] (Condition 2-1) The QtDepth of the current block is smaller than the minimum QtDepth value of the reference location. Here, the minimum QtDepth value can be derived based on the minimum value among multiple QtDepth values ​​stored in the reference location (or the block of the reference location).

[0117] (Condition 2-2) The average MtDepth value of the reference position is less than the maximum MtDepth supported by the reference picture.

[0118] (Condition 2-3) The MtDepth of the current block is 1 less than the maximum MtDepth.

[0119] According to Condition 2-1, if the QtDepth of the current block is smaller than the minimum QtDepth of the reference position, it can be determined that the image complexity can be coded with the size of the current block without additional block splitting for the corresponding image area. According to Condition 2-2, if the average MtDepth of the reference position is smaller than the maximum MtDepth supported by the corresponding reference picture, it can be determined that the image complexity does not maximize block splitting at the reference position. According to Condition 2-3, if the MtDepth of the current block is 1 less than the maximum MtDepth, it means that the MtDepth of the current block is the last MtDepth allowed for the current block. In other words, if Condition 2-3 is additionally satisfied in addition to Conditions 2-1 and 2-2, it can be determined that the encoding efficiency is not reduced even if the maximum MtDepth of the current block is reduced in consideration of the image complexity of the reference position, thereby restricting additional multi-type tree-based splitting. Therefore, when conditions 2-1 and 2-3 are satisfied, the maximum splitting depth can be reduced to limit additional block splitting, and the overhead of signaling for block splitting can be reduced, thereby improving encoding efficiency and reducing the complexity of encoding / decoding.

[0120] Table 1 below shows a pseudo code that adjusts the maximum split depth of the current block based on the split depth of the current block and the split depth of the reference location.

[0121] if (curQtDepth >= colQtDepth && colMaxMtDepth >= colMaxMtDepthInPic&& curMtDepth == maxBTD){maxBTD++;}if (curQtDepth < colMinQtDepth && colMtDepth < colMaxMtDepthInPic&& curMtDepth == maxBTD-1){maxBTD--;}

[0122] In Table 1, curQtDepth can mean the QtDepth of the current block, curMtDepth can mean the MtDepth of the current block, respectively. colQtDepth can mean the average QtDepth of the reference position, colMaxMtDepth can mean the maximum MtDepth of the reference position, and colMaxMtDepthInPic can mean the maximum MtDepth supported by the reference picture, respectively. maxBTD can mean the maximum MtDepth for the current block. colMinQtDepth can mean the minimum QtDepth of the reference position, and colMtDepth can mean the average MtDepth of the reference position, respectively.

[0123] However, the size comparison using the minimum, maximum, and average values ​​of QtDepth / MtDepth is not limited to the combinations described in Table 1, and the embodiments of the present disclosure may be implemented based on size comparisons of other combinations.

[0124] According to Table 1, when all of Conditions 1-1 to 1-3 are satisfied, the maximum MtDepth can be increased, and when all of Conditions 2-1 to 2-3 are satisfied, the maximum MtDepth can be decreased. However, this is only an example, and the maximum MtDepth can also be increased or decreased even when some of the above-mentioned conditions are satisfied. In addition, although the method of adjusting the block division performance according to whether the above conditions are satisfied is expressed as MtDepth, the scope of the present disclosure is not limited to the method of adjusting the block division performance to a multi-type tree (MTT), and it can be configured to perform any block division other than MTT depending on whether the above conditions are satisfied.

[0125] According to the present disclosure, when dividing a current block into a plurality of sub-blocks, the signaling order of syntax for block division can be changed based on block division information of temporally adjacent reference pictures.

[0126] Method 1

[0127] A split flag (split_cu_flag) can be signaled or parsed for the current block. split_cu_flag can be information about whether the current block is split into one of multiple block split types. If split_cu_flag is TRUE, this can mean that the current block is split into one of multiple block split types, and if split_cu_flag is FALSE, this can mean that the current block is not split.

[0128] If split_cu_flag is TRUE, the quad split flag (split_qt_flag) can be signaled or parsed. split_qt_flag can be syntax for whether the current block is split based on quad splitting. If split_qt_flag is TRUE, it can mean that the current block is split based on quad splitting, and if split_qt_flag is FALSE, it can mean that the current block is not split based on quad splitting. In other words, if split_cu_flag is TRUE and split_qt_flag is FLASE, it can mean that the current block is split based on a block split type other than quad splitting, such as binary splitting, ternary splitting, or another block split type. If split_cu_flag is TRUE and split_qt_flag is FALSE, information about additional block splitting can be signaled or parsed. If binary split and ternary split are supported as additional block split types, mtt_split_cu_vertical_flag, which indicates whether the current block is split by binary split, and mtt_split_cu_binary_flag, which indicates the split direction, can be signaled or parsed. Through this, it is possible to determine which block type among BT_HOR, BT_VER, TT_HOR, and TT_VER is split into. Here, BT_HOR can mean horizontal BT split, BT_VER can mean vertical BT split, TT_HOR can mean horizontal TT split, and TT_VER can mean vertical TT split, respectively.

[0129] Method 2

[0130] Method 2 relates to a method of signaling a syntax for block division based on block division information of temporally adjacent reference pictures when dividing a current block into multiple sub-blocks.

[0131] For the current block, it is possible to determine whether temporal conditions (temporal_conditions) are satisfied using block segmentation information of temporally adjacent reference pictures. Temporal_conditions may be a size comparison (condition 1) between the QtDepth of the current block and the average QtDepth of the reference location. Alternatively, temporal_conditions may be a size comparison (condition 2) between the QtDepth of the current block and the minimum QtDepth of the reference location. Alternatively, temporal_conditions may be a size comparison (condition 3) between the QtDepth of the current block and the maximum QtDepth of the reference location. Temporal_conditions may include at least two of the above-described conditions 1 to 3.

[0132] Based on the QtDepth of the reference location, it is possible to determine whether the current block is likely to be split based on quad partitioning. Alternatively, based on the QtDepth of the reference location, it is possible to determine whether the split_qt_flag exists for the current block. Here, the QtDepth of the reference location can be the average QtDepth of the aforementioned reference locations, the minimum QtDepth of the reference location, or the maximum QtDepth of the reference location.

[0133] If the QtDepth of the current block is smaller than the QtDepth of the reference position, indicating that the image complexity is high because the QtDepth of the reference position is sufficiently divided into multiple QT splits, then the current block can be judged to be more likely to be split based on quad splitting. In this case, the split_qt_flag can be signaled or parsed before the split_cu_flag.

[0134] When split_qt_flag is TRUE, QT-based block splitting can split the current block into four sub-blocks, and syntax for additional block splitting can be signaled or parsed for each sub-block. That is, when temporal_conditions are TRUE and split_qt_flag is TRUE, the effect of omitting the signaling of split_cu_flag can be obtained compared to method 1 described above. Therefore, in this case, the bit overhead required to signal split_cu_flag can be effectively reduced, thereby improving encoding efficiency.

[0135] On the other hand, if split_qt_flag is FALSE, split_cu_flag can be signaled or parsed for the current block to determine whether the current block is split. If split_cu_flag is TRUE, this may mean that the current block is split into one of the block partition types other than quad partition. If split_cu_flag is FALSE, this may mean that the current block is not split. Since split_qt_flag was signaled or parsed before split_cu_flag to determine that the current block is split into one of the block partition types other than quad partition, there is no need to signal or parse split_qt_flag again if split_cu_flag is TRUE. Therefore, depending on the judgment of if(!temproal_conditions), the next block split syntax, mtt_split_cu_vertical_flag and mtt_split_cu_binary_flag, are signaled or parsed to determine block splitting for the current block as BT_HOR, BT_VER, TT_HOR, or TT_VER.

[0136] If temporal_conditions is FALSE, the syntax for block splitting can be signaled or parsed according to the method 1 described above. In other words, split_cu_flag can be signaled or parsed first. If split_cu_flag indicates that the current block is split, split_qt_flag can be signaled or parsed. If split_qt_flag is TRUE, the current block is split based on quad splitting, and if split_qt_flag is FALSE, information for additional block splitting can be signaled or parsed. At this time, if binary split and ternary split are supported as additional block split types, mtt_split_cu_vertical_flag and mtt_split_cu_binary_flag can be signaled or parsed to determine which block split type among BT_HOR, BT_VER, TT_HOR, or TT_VER the current block is split into.

[0137] Table 2 below is a syntax for a method of signaling syntax for block segmentation based on block segmentation information of temporally adjacent reference pictures.

[0138] coding_tree( x0, y0, cbWidth, cbHeight, qgOnY, qgOnC, cbSubdiv, cqtDepth, mttDepth, depthOffset, partIdx, treeTypeCurr,modeTypeCurr ) {Descriptorif( temporal_conditions ) {if( ( allowSplitBtVer | | allowSplitBtHor | | allowSplitTtVer | | allowSplitTtHor ) &&allowSplitQT )split_qt_flagae(v)}if( !split_qt_flag ) {if( ( allowSplitBtVer | | allowSplitBtHor | | allowSplitTtVer | | allowSplitTtHor | |allowSplitQT ) && ( x0 + cbWidth <= pic_width_in_luma_samples ) &&( y0 + cbHeight <= pic_height_in_luma_samples ) )split_cu_flagae(v)…if( split_cu_flag ) {if( ( allowSplitBtVer | | allowSplitBtHor | | allowSplitTtVer | | allowSplitTtHor ) &&allowSplitQT && !temporal_conditions )split_qt_flagae(v)if( !split_qt_flag ) {if( ( allowSplitBtHor | | allowSplitTtHor ) && ( allowSplitBtVer | | allowSplitTtVer ) )mtt_split_cu_vertical_flagae(v)if( ( allowSplitBtVer && allowSplitTtVer && mtt_split_cu_vertical_flag ) | |( allowSplitBtHor && allowSplitTtHor && !mtt_split_cu_vertical_flag ) )mtt_split_cu_binary_flagae(v)}}…}…},

[0139] The aforementioned temporal segmentation prediction can be performed adaptively based on at least one of the quantization parameter (QP) of the current slice or the QP of the corresponding slice within the reference picture.

[0140] For example, whether to perform temporal segmentation prediction can be determined based on a size comparison between the QP of the current slice and the QP of the corresponding slice in the reference picture.

[0141] FIG. 5 illustrates an example of a picture reference structure for video encoding / decoding and a change in QP according to the structure. The case illustrated in FIG. 5 is an embodiment that can be utilized in a low delay environment, and illustrates a case where only a temporally preceding picture is used as a reference picture when encoding / decoding a single picture. At this time, in order to improve encoding efficiency, the amount of change in QP can be varied according to POC (picture of count) based on the initial QP. In FIG. 5, based on the QP of POC0, QP+7 is used for pictures of POC1, POC3, POC5, and POC7, QP+5 is used for pictures of POC2, POC4, and POC6, and QP+2 is used for picture of POC8. There may be cases where a picture of QP+5 references a picture of QP+7, or a picture of QP+2 references a picture of QP+5 or QP+7. That is, in a low-latency environment, the picture being currently encoded or decoded can use a picture with a QP higher than the current QP as a reference picture. This may mean that encoding and decoding are performed by referencing a picture with an objective or subjective lower quality than the picture being currently encoded or decoded.

[0142] In the case of the temporal segmentation prediction proposed in the present disclosure, the block segmentation information of the reference position is used to predict the segmentation depth of the current block, but the QP difference between the current picture and the reference picture may affect the segmentation depth or segmentation shape regardless of the image complexity. That is, when performing block segmentation prediction using a reference picture having a lower QP than the QP of the current picture, the block segmentation information of the reference position may have a larger value of depth information compared to the current block. On the other hand, when performing block segmentation prediction using a reference picture having a higher QP than the QP of the current picture, the occurrence bit rate may be determined to be lowered based on the importance of the occurrence bit rate and the degree of image deterioration (distortion) according to the increase in QP, regardless of the image complexity of the reference position. Therefore, when the QP of the picture (or slice) including the current block is smaller than the QP of the reference picture (or corresponding slice), a problem occurs in that the prediction accuracy for block segmentation may be lowered when applying the temporal segmentation prediction proposed in the present disclosure.

[0143] If the QP of the picture (or slice) containing the current block is smaller than the QP of the reference picture (or the corresponding slice within the reference picture), the temporal segmentation prediction proposed in the present disclosure may not be applied. That is, whether to perform temporal segmentation prediction may be determined based on a size comparison between the QP of the current slice and the QP of the corresponding slice within the reference picture.

[0144] A reference picture for temporal segmentation prediction can be selected based on at least one of a QP, a picture of count (POC), or a temporal layer ID.

[0145] As described above, in predicting the segmentation of the current block, the base-base / decoded block segmentation information at the corresponding block location of the temporally adjacent reference picture can be used. At this time, the prediction performance of the block segmentation may vary depending on whether the QPs of the current slice and the reference slice (i.e., the corresponding slice within the reference picture) are the same, the QP of the current slice is larger than the QP of the reference slice, or the QP of the current slice is smaller than the QP of the reference slice.

[0146] For example, the conditions for temporal segmentation prediction may differ depending on the size comparison of the QPs between the current slice and the reference slice. Table 3 shows how MtDepth increases / decreases according to temporal segmentation prediction depending on the QPs of the current slice and the reference slice.

[0147] uint8_t isColQpLow = pColSliceQp < curSliceQp() ? 1 : 0;if (isColQpLow){if (curQtDepth >= colQtDepth && colMaxMtDepth >= colMaxMtDepthInPic&& curMtDepth == maxBTD){maxBTD++;}if (curQtDepth < colMinQtDepth && colMtDepth < colMaxMtDepthInPic&& curMtDepth == maxBTD-1){maxBTD--;}}else{if (curQtDepth >= colMaxQtDepth && colMtDepth >= colMaxMtDepthInPic&& curMtDepth == maxBTD){maxBTD++;}if (curQtDepth < colMinQtDepth && colMaxMtDepth < colMaxMtDepthInPic&& curMtDepth == maxBTD-1){maxBTD--;}}

[0148] The QP between the current slice and the reference slice can be compared. If the QP of the reference slice is smaller than the QP of the current slice, the maximum MtDepth can be increased by determining a condition using at least one of the QtDepth of the current block or the QtDepth / MtDepth of the reference location.

[0149] According to Table 3, if the QtDepth (curQtDepth) of the current block is greater than or equal to the average QtDepth value (colQtDepth) of the reference position, the maximum MtDepth value (colMaxMtDepth) of the reference position is greater than or equal to the maximum MtDepth supported by the reference picture (colMaxMtDepthInPic), and the MtDepth (curMtDepth) of the current block is equal to the maximum MtDepth (maxBTD) for the current block, the maxBTD for the current block can be increased.

[0150] On the other hand, if the QP of the reference slice is greater than or equal to the QP of the current slice, the maximum MtDepth can be increased by determining a condition using at least one of the QtDepth of the current block or the QtDepth / MtDepth of the reference location.

[0151] According to Table 3, if the QtDepth of the current block (curQtDepth) is greater than or equal to the maximum QtDepth of the reference position (colMaxMtDepth), the average MtDepth of the reference position (colMtDepth) is greater than or equal to the maximum MtDepth supported by the reference picture (colMaxMtDepthInPic), and the MtDepth of the current block (curMtDepth) is equal to the maximum MtDepth for the current block (maxBTD), the maxBTD for the current block can be increased.

[0152] In this way, in determining conditions using the QtDepth of the current block and the QtDepth / MtDepth of the reference position, temporal segmentation prediction can be performed using different conditions depending on the QP difference between the current slice and the reference slice. However, in the case of size comparison using the minimum, maximum, or average values ​​of QtDepth / MtDepth, it is not limited to the combinations described in Table 3, and the embodiments of the present disclosure can also be implemented through size comparison of other combinations.

[0153] When predicting the segmentation of the current block, the base-base / decoded block segmentation information can be used at the corresponding block positions of temporally adjacent reference pictures. At this time, the temporal prediction performance of the block segmentation may vary depending on the POC difference between the current picture and the reference picture. That is, the larger the POC difference between the current picture and the reference picture, the lower the temporal similarity between the current picture and the reference picture, and thus the lower the image complexity similarity between the corresponding blocks of the current block and the reference picture. Therefore, temporal segmentation prediction can be adaptively applied based on the POC difference between the current picture and the reference picture.

[0154] For example, as shown in Table 4, if the POC difference between the current picture and the reference picture is greater than K, temporal segmentation prediction may not be applied, and if the POC difference between the current picture and the reference picture is less than K, temporal segmentation prediction may be applied. Here, K may be an integer of 1, 2, 3, 4, or more. K may be a value that is predefined identically for the encoding device and the decoding device.

[0155] bool isLongTerm =std::abs(pColPic->getPOC() - cs.slice->getPic()->getPOC()) > A ? 1 : 0;if (!isLongTerm){if (curQtDepth >= colQtDepth && colMaxMtDepth >= colMaxMtDepthInPic&& curMtDepth == maxBTD){maxBTD++;}if (curQtDepth < colMinQtDepth && colMtDepth < colMaxMtDepthInPic&& curMtDepth == maxBTD-1){maxBTD--;}}

[0156] In Table 4, the comparison of sizes using the minimum, maximum, or average values ​​of QtDepth / MtDepth is not limited to the combinations described in Table 4, and the embodiments of the present disclosure may be implemented through comparison of sizes of other combinations.

[0157] Temporal segmentation prediction can be adaptively applied based on whether the temporal layer identifier (TID) of the current picture is greater than the TID of the reference picture. For example, if the TID of the current picture is greater than the TID of the reference picture, the segmentation level or depth may be relatively lower compared to the reference picture. In this case, temporal segmentation prediction may not be applied to the current block.

[0158] In adjusting the segmentation depth of the current block based on temporal segmentation prediction, a syntax element can be defined regarding whether to apply a method of increasing the segmentation depth or a method of decreasing the segmentation depth.

[0159] As described above, the maximum segmentation depth of the current block can be increased or decreased based on a comparison of the segmentation depth of the block position corresponding to the current block among temporally adjacent reference pictures and the segmentation depth of the current block.

[0160] For at least one of a method of increasing the maximum segmentation depth of the current block and a method of decreasing the maximum segmentation depth of the current block, a syntax element regarding whether to apply (or activate) temporal segmentation prediction can be signaled using high level syntax (HLS).

[0161] seq_parameter_set_rbsp() {Descriptor… sps_max_mtt_depth_increament_flagu(1)sps_max_mtt_depth_decreament_flagu(1)…}

[0162] sps_max_mtt_depth_increament_flagequal to 1 specifies that adaptive increament process of the maximum MTT depth may be applied. sps_max_mtt_depth_increament_flag equal to 0 specifies that adaptive increament process of the maximum MTT depth is not applied. When sps_max_mtt_depth_increament_flag is not present, it is inferred to be equal to 0.sps_max_mtt_depth_decreament_flagequal to 1 specifies that adaptive decreament process of the maximum MTT depth may be applied. sps_max_mtt_depth_decreament_flag equal to 0 specifies that adaptive decreament process of the maximum MTT depth is not applied. When sps_max_mtt_depth_decreament_flag is not present, it is inferred to be equal to 0.

[0163] Table 5 shows the syntax elements that determine whether the adaptive maximum MtDepth increase and adaptive maximum MtDepth decrease methods are applied (or enabled). These syntax elements can be signaled in the sequence parameter set (SPS). Table 6 describes the semantics for the syntax elements defined in Table 5.

[0164] As shown in Tables 5 and 6, the adaptive maximum MtDepth increasing method and the adaptive maximum MtDepth decreasing method can be signaled in the form of flags. If the value of the flag indicating whether the adaptive maximum MtDepth increasing method is applied is signaled as 1, the method of increasing the maximum MtDepth can be applied. On the other hand, if the value of the flag indicating whether the adaptive maximum MtDepth increasing method is applied is signaled as 0, the method of increasing the maximum MtDepth is not applied. In addition, if the value of the flag indicating whether the adaptive maximum MtDepth decreasing method is signaled as 1, the method of decreasing the maximum MtDepth can be applied. On the other hand, if the value of the flag indicating whether the adaptive maximum MtDepth decreasing method is signaled as 0, the method of decreasing the maximum MtDepth is not applied.

[0165] Syntax elements regarding whether temporal segmentation prediction is applied (or enabled) can be signaled via higher-level syntax.

[0166] seq_parameter_set_rbsp() {Descriptor… sps_temporal_partitioning_prediction_flagu(1)if( sps_temporal_partitioning_prediction_flag ){sps_max_mtt_depth_increament_flagu(1)sps_max_mtt_depth_decreament_flagu(1)…}…}

[0167] sps_temporal_partitioning_prediction_flagequal to 1 specifies that temporal partitioning prediction may be applied. sps_temporal_partitioning_prediction_flag equal to 0 specifies that adaptive increament process of the maximum MTT depth is not applied. When sps_temporal_partitioning_prediction_flag is not present, it is inferred to be equal to 0.

[0168] Table 7 illustrates the syntax for signaling whether temporal segmentation prediction is applied in the sequence parameter set (SPS). Table 8 also illustrates the semantics for the syntaxes defining temporal segmentation prediction as defined in Table 7.

[0169] As shown in Tables 7 and 8, whether temporal segmentation prediction is applied can be signaled in the form of a flag. When the value of the flag regarding whether temporal segmentation prediction is applied is signaled as 1, temporal segmentation prediction can be applied. In addition, when the value of the flag is signaled as 1, syntaxes regarding whether the aforementioned maximum MtDepth increasing method and the adaptive maximum MtDepth decreasing method are applied can be additionally signaled. On the other hand, when the value of the flag regarding whether temporal segmentation prediction is applied is signaled as 0, temporal segmentation prediction may not be applied to the current block. In this case, syntaxes regarding whether the aforementioned maximum MtDepth increasing method and the adaptive maximum MtDepth decreasing method are additionally signaled can be omitted.

[0170] The examples in Tables 5 to 8 describe signaling using a Sequence Parameter Set (SPS), but this is merely an example. The syntax elements may be signaled in at least one of a Picture Parameter Set (PPS), a Picture Header (PH), or a Slice Header (SH). At this time, the values ​​of the higher-level syntax that are ultimately signaled may be updated (e.g., overridden) and stored or used.

[0171] Temporal segmentation prediction may also be adaptively applied only to pictures with specific temporal layer identifiers. In such cases, flags such as those in Tables 5 to 8 above may be signaled in PH or SH.

[0172] Referring to FIG. 4, a prediction block for the coding block of the current block can be generated (S410).

[0173] A prediction block for a coding block can be generated based on at least one of intra prediction or inter prediction.

[0174] Referring to FIG. 4, a residual block of a coding block can be generated (S420).

[0175] Residual information of a coding block can be obtained from a bitstream. Transform coefficients can be derived based on the residual information. A residual block can be generated based on at least one of inverse quantization or inverse transform for the transform coefficients. Here, the inverse transform can be performed based on at least one of a separable transform and a non-separable transform. The non-separable transform can represent a low frequency non-separable transform (LFNST) and / or a non-separable primary transform (NSPT).

[0176] Referring to FIG. 4, a coding block can be restored based on a prediction block and a residual block (S430).

[0177] FIG. 6 illustrates a schematic configuration of a decoding device (300) that performs a decoding method according to the present disclosure.

[0178] Referring to FIG. 6, the decoding device (300) may include a block division unit (600), a prediction block generation unit (510), a residual block generation unit (520), and a restoration unit (530).

[0179] The block division unit (600) can divide the current block into multiple coding blocks based on temporal division prediction, as described with reference to FIG. 4.

[0180] The prediction block generation unit (510) can generate a prediction block based on at least one of intra prediction or inter prediction for each of a plurality of coding blocks obtained by dividing the current block.

[0181] The residual block generation unit (520) can generate a residual block for each of a plurality of coding blocks obtained by dividing the current block.

[0182] The restoration unit (530) can restore the coding block based on the prediction block and the residual block.

[0183] FIG. 7 illustrates an encoding method performed by an encoding device (200) as an embodiment according to the present disclosure.

[0184] Referring to FIG. 7, the current block can be divided into multiple coding blocks based on temporal segmentation prediction (S700).

[0185] The temporal segmentation prediction method is as described with reference to Fig. 4.

[0186] In other words, the segmentation depth of the current block can be adjusted based on the block segmentation information of the reference pictures that are temporally adjacent to the current picture. A syntax for block segmentation can be generated based on the block segmentation information of the reference pictures that are temporally adjacent to the current picture and can be encoded in the bitstream. The temporal segmentation prediction can be adaptively performed based on at least one of a quantization parameter (QP) of the current slice or the QP of the corresponding slice within the reference picture. The reference picture for the temporal segmentation prediction can be selected based on at least one of a QP, a picture of count (POC), or a temporal layer identifier (ID). A separate syntax element regarding whether to apply (or activate) the temporal segmentation prediction can be signaled through the higher-level syntax.

[0187] Referring to FIG. 7, a prediction block of a coding block can be generated (S710). The prediction block of a coding block can be generated based on intra prediction or inter prediction.

[0188] Referring to FIG. 7, the transform coefficients of the coding block can be derived based on the residual block of the coding block (S720).

[0189] Specifically, a residual block of the coding block can be generated based on a prediction block of the coding block. Transform coefficients of the coding block can be derived based on at least one of a transform or a quantization of the residual block. Here, the transform can be performed based on at least one of a separable transform and a non-separable transform. The non-separable transform can represent a low frequency non-separable transform (LFNST) and / or a non-separable primary transform (NSPT).

[0190] Referring to FIG. 7, a bitstream can be generated by encoding residual information regarding the transform coefficients of the current block (S730).

[0191] FIG. 8 illustrates a schematic configuration of an encoding device (200) that performs an encoding method according to the present disclosure.

[0192] Referring to FIG. 8, the encoding device (200) may include a block division unit (800), a prediction block generation unit (810), a transform coefficient derivation unit (820), and a residual information encoding unit (830).

[0193] The block splitter (800) can split the current block into multiple coding blocks based on temporal split prediction.

[0194] The prediction block generation unit (810) can generate a prediction block based on at least one of intra prediction or inter prediction for each of a plurality of coding blocks obtained by dividing the current block.

[0195] The transform coefficient derivation unit (820) can derive transform coefficients based on at least one of transform or quantization for the residual block of the coding block.

[0196] The residual information encoding unit (830) can encode residual information regarding transform coefficients.

[0197] In the embodiments described above, the methods are described based on a flowchart as a series of steps or blocks. However, the embodiments are not limited to the order of the steps, and some steps may occur in a different order or simultaneously with other steps described above. Furthermore, those skilled in the art will understand that the steps depicted in the flowchart are not exclusive, and other steps may be included, or one or more steps in the flowchart may be deleted without affecting the scope of the embodiments of this document.

[0198] The method according to the embodiments of the present document described above can be implemented in the form of software, and the encoding device and / or decoding device according to the present document can be included in a device that performs image processing, such as a TV, a computer, a smartphone, a set-top box, a display device, etc.

[0199] When the embodiments in this document are implemented as software, the above-described method can be implemented as a module (process, function, etc.) that performs the above-described function. The module can be stored in memory and executed by a processor. The memory can be internal or external to the processor and can be connected to the processor by various well-known means. The processor can include an application-specific integrated circuit (ASIC), another chipset, logic circuit, and / or data processing device. The memory can include a read-only memory (ROM), a random access memory (RAM), flash memory, a memory card, a storage medium, and / or other storage devices. That is, the embodiments described in this document can be implemented and performed on a processor, a microprocessor, a controller, or a chip. For example, the functional units illustrated in each drawing can be implemented and performed on a computer, a processor, a microprocessor, a controller, or a chip. In this case, information for implementation (e.g., information on instructions) or an algorithm can be stored on a digital storage medium.

[0200] In addition, the decoding device and encoding device to which the embodiment(s) of the present specification are applied may be included in a multimedia broadcasting transmitting and receiving device, a mobile communication terminal, a home cinema video device, a digital cinema video device, a surveillance camera, a video conversation device, a real-time communication device such as a video communication, a mobile streaming device, a storage medium, a camcorder, a video-on-demand (VoD) service providing device, an OTT (Over the top video) device, an Internet streaming service providing device, a three-dimensional (3D) video device, a VR (virtual reality) device, an AR (argumente reality) device, a video phone video device, a transportation terminal (ex. a vehicle (including an autonomous vehicle) terminal, an airplane terminal, a ship terminal, etc.), and a medical video device, and may be used to process a video signal or a data signal. For example, the OTT (Over the top video) device may include a game console, a Blu-ray player, an Internet-connected TV, a home theater system, a smartphone, a tablet PC, a DVR (Digital Video Recorder), etc.

[0201] In addition, the processing method to which the embodiment(s) of the present specification are applied can be produced in the form of a computer-executable program and can be stored in a computer-readable recording medium. Multimedia data having a data structure according to the embodiment(s) of the present specification can also be stored in a computer-readable recording medium. The computer-readable recording medium includes all types of storage devices and distributed storage devices in which computer-readable data is stored. The computer-readable recording medium can include, for example, a Blu-ray disc (BD), a universal serial bus (USB), a ROM, a PROM, an EPROM, an EEPROM, a RAM, a CD-ROM, a magnetic tape, a floppy disk, and an optical data storage device. In addition, the computer-readable recording medium includes a medium implemented in the form of a carrier wave (e.g., transmission via the Internet). In addition, a bitstream generated by an encoding method can be stored in a computer-readable recording medium or transmitted via a wired or wireless communication network.

[0202] Additionally, the embodiments of the present disclosure may be implemented as a computer program product by program code, and the program code may be executed on a computer by the embodiments of the present disclosure. The program code may be stored on a computer-readable carrier.

[0203] FIG. 9 illustrates an example of a content streaming system to which embodiments of the present disclosure can be applied.

[0204] Referring to FIG. 9, a content streaming system to which the embodiment(s) of the present specification are applied may largely include an encoding server, a streaming server, a web server, a media storage, a user device, and a multimedia input device.

[0205] The encoding server compresses content input from multimedia input devices such as smartphones, cameras, and camcorders into digital data, generates a bitstream, and transmits it to the streaming server. Alternatively, if multimedia input devices such as smartphones, cameras, and camcorders directly generate bitstreams, the encoding server may be omitted.

[0206] The above bitstream can be generated by an encoding method or a bitstream generation method to which the embodiment(s) of the present specification are applied, and the streaming server can temporarily store the bitstream during the process of transmitting or receiving the bitstream.

[0207] The streaming server transmits multimedia data to a user device based on a user request via a web server, and the web server acts as an intermediary to inform the user of available services. When a user requests a desired service from the web server, the web server transmits the request to the streaming server, and the streaming server transmits the multimedia data to the user. At this time, the content streaming system may include a separate control server, in which case the control server controls commands / responses between each device within the content streaming system.

[0208] The streaming server can receive content from a media repository and / or an encoding server. For example, when receiving content from the encoding server, the content can be received in real time. In this case, to provide a smooth streaming service, the streaming server can store the bitstream for a certain period of time.

[0209] Examples of the user devices may include mobile phones, smart phones, laptop computers, digital broadcasting terminals, personal digital assistants (PDAs), portable multimedia players (PMPs), navigation devices, slate PCs, tablet PCs, ultrabooks, wearable devices (e.g., smartwatches, smart glasses, HMDs), digital TVs, desktop computers, digital signage, etc.

[0210] Each server within the above content streaming system can be operated as a distributed server, in which case data received from each server can be processed in a distributed manner.

[0211] The claims set forth in this specification may be combined in various ways. For example, the technical features of the method claims of this specification may be combined and implemented as a device, and the technical features of the device claims of this specification may be combined and implemented as a method. Furthermore, the technical features of the method claims and the technical features of the device claims of this specification may be combined and implemented as a device, and the technical features of the method claims and the technical features of the device claims of this specification may be combined and implemented as a method.

Claims

1. A step of dividing a current block into multiple coding blocks based on temporal segmentation prediction; A step of generating a prediction block for the coding block of the current block; A step of generating a residual block of the above coding block; and A method comprising the step of restoring the coding block based on the prediction block and the residual block.

2. In paragraph 1, A method in which the maximum segmentation depth of the current block is adjusted based on the segmentation depth of a block position corresponding to the current block within a reference picture temporally adjacent to the current picture to which the current block belongs.

3. In paragraph 2, A method in which the maximum split depth of the current block is increased when the split depth of the quad tree of the current block is greater than the split depth of the quad tree of the block location.

4. In paragraph 2, A method in which the maximum split depth of the current block is reduced when the split depth of the quad tree of the current block is less than the minimum split depth of the quad tree at the block location.

5. In paragraph 1, If the split depth of the quad tree of the current block is less than the split depth of the quad tree of the block location, the quad split flag is signaled before the split flag, The above quad split flag indicates whether the current block is split based on quad splitting, A method wherein the above split flag indicates whether the current block is split into any one of a plurality of block split types.

6. In paragraph 1, A method wherein the temporal segmentation prediction is performed based on at least one of a quantization parameter of a current slice to which the current block belongs or a quantization parameter of a corresponding slice within a reference picture.

7. In paragraph 1, A method wherein a reference picture for the above temporal segmentation prediction is selected based on at least one of a quantization parameter, a POC, or a temporal layer identifier.

8. In paragraph 1, A method wherein at least one of a first syntax element regarding whether a method of increasing the maximum splitting depth of the current block is applied or a second syntax element regarding whether a method of decreasing the maximum splitting depth of the current block is applied is signaled.

9. In paragraph 8, A method in which the above temporal segmentation prediction is adaptively performed based on a flag regarding whether the above temporal segmentation prediction is applied.

10. A step of dividing the current block into multiple coding blocks based on temporal segmentation prediction; A step of generating a prediction block for the coding block of the current block; A step of deriving transform coefficients based on the residual block of the above coding block; and A method comprising the step of encoding residual information regarding the above transformation coefficients.

11. A computer-readable storage medium storing a bitstream generated by the method according to Article 10.

12. A step of obtaining a bitstream for image information; wherein the bitstream is generated based on a step of dividing a current block into a plurality of coding blocks based on temporal segmentation prediction, a step of generating a prediction block for a coding block of the current block, a step of deriving transform coefficients based on a residual block of the coding block, and a step of encoding residual information about the transform coefficients, and A method comprising the step of transmitting data including the bitstream.

Citation Information

Patent Citations

  • Sample region merging

    JP2023126788A

  • Device and method for extracting alternative word and computer readable program for the same

    KR1020240015471A

  • Electric vehicle charging state control system and charging state control method therefor

    KR1020240025886A

  • Methods and Apparatuses of High Throughput Video Encoder

    US20230119972A1