# US 12,003,750 B2 · Video decoding method and apparatus using multi-core transform, and video encoding method and apparatus using multi-core transform

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,003,750 B2
- Document ID: US12003750B2
- Status: Granted
- Kind: B2
- Application number: 18/094,805
- Filed: 2023-01-09
- Published: 2023-05-25
- Granted: 2024-06-04
- Earliest claimed: 2017-07-04
- Assignees: Samsung Electronics Co., Ltd.
- Applicants: Samsung Electronics Co., Ltd.
- Inventors: Ki-ho Choi; Min-soo Park; Elena Alshina
- Web page: https://patentgrep.com/patent/US12003750B2

## CPC

- H04N 19/12: Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
- H04N 19/45: {performing compensation of the inverse transform mismatch, e.g. Inverse Discrete Cosine Transform [IDCT] mismatch}
- H04N 19/122: Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
- H04N 19/159: Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
- H04N 19/176: the region being a block, e.g. a macroblock
- H04N 19/186: the unit being a colour or a chrominance component
- H04N 19/463: by compressing encoding parameters before transmission
- H04N 19/91: Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION

## Abstract

A method and apparatus for performing transformation and inverse transformation on a current block by using multi-core transform kernels in video encoding and decoding processes. A video decoding method may include obtaining, from a bitstream, multi-core transformation information indicating whether multi-core transformation kernels are to be used according to a size of a current block; obtaining horizontal transform kernel information and vertical transform kernel information from the bitstream when the multi-core transformation kernels are used according to the multi-core transformation information; determining a horizontal transform kernel for the current block according to the horizontal transform kernel information; determining a vertical transform kernel for the current block according to the vertical transform kernel information; and performing inverse transformation on the current block by using the horizontal transform kernel and the vertical transform kernel.

## Claims

### Claim 1

A video decoding method comprising:
splitting a current picture into a plurality of maximum coding units using information about a maximum size of coding unit obtained from a bitstream;
splitting a maximum coding unit, among the plurality of maximum coding units, into a plurality of coding units including a current coding unit, using split information about a coding unit obtained from the bitstream;
obtaining, from the bitstream, information about a multi-core transformation according to a size of the current coding unit and whether a specific tool is applied or not, the information about the multi-core transformation indicating which transform kernel set among a plurality of transform kernel sets is to be applied, wherein the transform kernel set includes a horizontal transform kernel for inverse transformation of the current coding unit in a horizontal direction and a vertical transform kernel for inverse transformation of the current coding unit in a vertical direction;
determining the horizontal transform kernel and the vertical transform kernel according to the information about the multi-core transformation; and
performing the inverse transformation of the current coding unit by using the horizontal transform kernel and the vertical transform kernel.

### Claim 2

A video encoding method comprising:
splitting a current picture into a plurality of maximum coding units;
splitting a maximum coding unit, among the plurality of maximum coding units, into a plurality of coding units including a current coding unit;
generating information about a multi-core transformation according to a size of the current coding unit and whether a specific tool is applied or not, the information about the multi-core transformation indicating which transform kernel set among a plurality of transform kernel sets is to be applied, wherein the transform kernel set includes a horizontal transform kernel for transformation of the current coding unit in a horizontal direction and a vertical transform kernel for transformation of the current coding unit in a vertical direction;
determining the horizontal transform kernel and the vertical transform kernel according to the information about the multi-core transformation; and
performing the transformation of the current coding unit by using the horizontal transform kernel and the vertical transform kernel.

### Claim 3

A non-transitory computer-readable medium for recording a bitstream, the bitstream comprising:
information about a multi-core transformation,
wherein, the information about the multi-core transformation is obtained by:
splitting a current picture into a plurality of maximum coding units;
splitting a maximum coding unit, among the plurality of maximum coding units, into a plurality of coding units including a current coding unit;
generating the information about the multi-core transformation according to a size of the current coding unit and whether a specific tool is applied or not, the information about the multi-core transformation indicating which transform kernel set among a plurality of transform kernel sets is to be applied, wherein the transform kernel set includes a horizontal transform kernel for transformation of the current coding unit in a horizontal direction and a vertical transform kernel for transformation of the current coding unit in a vertical direction;
determining the horizontal transform kernel and the vertical transform kernel according to the information about the multi-core transformation; and
performing the transformation of the current coding unit by using the horizontal transform kernel and the vertical transform kernel.
