Method and apparatus for coding video and method and apparatus for decoding video accompanied with arithmetic coding.
Abstract
La presente invención se refiere a un método para decodificar un video a través de la decodificación de símbolos, el método incluye analizar símbolos de bloques de imagen de una corriente de bits recibida; clasificar un símbolo actual en una secuencia de bits de prefijo y una secuencia de bits de sufijo con base en un valor umbral determinado de acuerdo con el tamaño de un bloque actual; realizar la decodificación aritmética mediante el uso de un método de decodificación aritmética determinado para cada una de la secuencia de bits de prefijo y la secuencia de bits de sufijo; y realizar una binarización inversa mediante el uso de un método de binarización determinado para cada una de la secuencia de bits de prefijo y la secuencia de bits de sufijo.

Term
5.8 yearsleft in the term
Expires 27 June 2032.
- Priority
- Filed
- Granted
- Today
- Expires
4 claims: 2 independent, 2 dependent
- 1REIVINDICACIONES INSTITUTO MEXICANO DE LA PROPIEDA ' INDUSTRL' Habiéndose descrito la invención como antecede se reclama como propiedad lo contenido en las siguientes 5 reivindicaciones:1. Un método para decodificar un video, el cual caracterizado porque comprende: recibir una corriente de bits que incluye información acerca de una última ubicación de coeficiente de 10 un bloque de transformación;obtener una secuencia de bits de prefijo de la última ubicación de coeficiente entre la información acerca de la última ubicación de coeficiente al realizar decodificación aritmética a base de contexto en la corriente 15 de bits;cuando la secuencia de bits de prefijo es mayor que un valor predeterminado, obtener, de la corriente de bits, una secuencia de bits de sufijo de conformidad con un modo de derivación;20 realizar binarización inversa en la secuencia de bits de prefijo de conformidad con un esquema de binarización truncado para obtener un prefijo binarizado inverso;realizar binarización inversa en la secuencia de bits de sufijo de conformidad con un esquema de binarización 25 de longitud fija para obtener un sufijo binarizado inverso;y 105 Instituto mexicano DE LA PROPIEDAD industrial reconstruir un símbolo que indica la última ubicación de coeficiente del bloque de transformación al usar el prefijo binarizado inverso y el sufijo binarizado inverso, en donde un intervalo de un valor del prefijo binarizado inverso se determina con base en un tamaño del bloque de transformación y se determina un intervalo de un valor del sufijo binarizado inverso con base en el valor del prefijo binarizado inverso, y en donde un valor del símbolo que indica la última ubicación de coeficiente del bloque de transformación se reconstruye al usar el valor del prefijo binarizado inverso y el valor del sufijo binarizado inverso.
- 2El método de conformidad con la reivindicación 1, caracterizado porque la información acerca de la última ubicación de coeficiente incluye información acerca de una coordenada x de la última ubicación de coeficiente en una dirección de anchuras del bloque de transformación e información acerca de una coordenada y de la última ubicación de coeficiente en una dirección de alturas del bloque de transformación, en donde la reconstrucción de un símbolo comprende:reconstruir un símbolo de una coordenada x de la última ubicación de coeficiente utilizando un prefijo y un sufijo que se generan de la información acerca de la coordenada x de la última ubicación de coeficiente;y 106 IMPI^ INSTITUTO MEXICANO Y^· DE LA PROPIEDAD INDUSTRIAL reconstruir un símbolo de una coordenada y do la última ubicación de coeficiente utilizando un prefijo y un sufijo que se generan de la información acerca de la coordenada y de la última ubicación de coeficiente.
- 35 3. El método de conformidad con la reivindicación 1, caracterizado porque comprende además:determinar la última ubicación de coeficiente del bloque de transformación utilizando el símbolo reconstruido;reconstruir coeficientes de transformación del
- 410 bloque de transformación utilizando la última ubicación de coeficiente determinada;y reconstruir residuos del bloque de transformación al realizar cuantificación inversa y transformación inversa en los coeficientes de transformación reconstruidos. 107 INSTITUTO MEXICANO DE LA PROPIEDAD INDUSTRIAL
Independent claims4
691 paragraphs in 64 sections, as filed
(54) Title: METHOD AND APPARATUS TO CODE VIDEO AND METHOD AND APPARATUS TO DECODE VIDEO ACCOMPANIED BY AN ARITHMETIC CODIFICATION.
(54) Title: METHOD AND APPARATUS FOR CODING VIDEO AND METHOD AND APPARATUS FOR DECODING VIDEO ACCOMPANIED WITH ARITHMETIC CODING.
(57) Summary
The present invention relates to a method of decoding a video through symbol decoding, the method includes analyzing image block symbols from a received bit stream; classify a current symbol into a prefix bit sequence and a suffix bit sequence based on a threshold value determined according to the size of a current block; perform arithmetic decoding by using a particular arithmetic decoding method for each of the prefix bitstream and suffix bitstream; and performing a reverse binarization by using a particular binarization method for each of the prefix bitstream and the suffix bitstream.
(57) Abstract
The present invention discloses a method for decoding a video through Symbol decoding. Disclosed is the method for decoding the video, comprising the steps of: parsing symbols of image blocks from a bitstream which is received; performing arithmetic coding according to each arithmetic coding formula, which is individually decided with respect to a prefix bit string and a suffix bit string, by categorizing a current Symbol into the prefix bit string and the suffix bit string with a critical value that is decided based on the size of the current block; and performing reverse binarization, after the arithmetic coding, according to each binarization formula, which is individually decided with respect to the prefix bit string and the suffix bit string.
PATENT TITLE NO. 337232 _SE_
StCRtWBW Oí K & M3MÍA í, -, S «• Le- -Af'Ύίκ) ·
Institute
Mexican Property
Industrial
<img file="MX337232B_D0001.tif" />
Headlines):
Home:
Denomination:
Classification:
Inventor (s):
SAMSUNG ELECTRONICS CO., LTD.
129, Samsung-ro, Yeongtong-gu, Suwon-si, Gyeonggi-do, 443-742, REPUBLIC OF KOREA
METHOD AND APPARATUS TO CODE VIDEO AND METHOD AND APPARATUS TO DECODE VIDEO ACCOMPANIED BY AN ARITHMETIC CODING.
lnt.CI.8: H04N19 / 13; H04N19 / 157; H04N19 / 176
VADIM SEREGIN: IL-KOO KIM
<img file="MX337232B_D0002.tif" />
inct
01/1 lustrial.
MproBog ables, keep vi | before lll and 7 · bis 2 of the s and of 10/25/1996, 12/26/1997, 1 15/1999, 12 and 09/04/2012); Articles 1, 3 iction V ¿ΛΜΜΜΜ of the Mexican Institute of Industrial Property (DOF 12/27/1999, amended on 10/10/2002, 07/29/2004, 08/04/2004 and 09/13/2007); 1, 3 and 5 Clause a) of the Agreement that delegates powers to the Deputy Directors General, Coordinator, Divisional Directors, Holders of the Regional Offices, Divisional Deputy Directors, Departmental Coordinators and other subordinates of the Mexican Institute of Industrial Property. (DOF 12/15/1999, amended on 02/04/2000, 07/29/2004, 08/04/2004 and 09/13/2007).
<img file="MX337232B_D0003.tif" />
Issue Date: February 18, 2016
THE DIVISIONAL DIRECTOR OF PATENTS
<img file="MX337232B_D0004.tif" />
NAHANNY CANAL REYES
<img file="MX337232B_D0005.tif" />
<img file="MX337232B_D0006.tif" />
Arenal No 550, Floor 1,
Cof. Puebio Santa María Tepopan,
Xochimilco, CP 16020.
Mexico City
Tel (56) 63 34 07 00 www.impi.cob tnx
MX / 2016/14980
337232aots / y * fGS lA / í fi 'í>
METHOD AND APPARATUS FOR CODING VIDEO AND METHOD
DECODE VIDEO ACCOMPANIED BY AN ARITHMETIC CODING
<img file="MX337232B_D0007.tif" />
Field of the Invention
The present invention relates to video encoding and video decoding involving arithmetic encoding and arithmetic decoding, respectively.
Background of the Invention
As the hardware (physical components) for reproducing and storing high-resolution or high-quality video content is being developed and delivered, the need for a video encoder / decoder to effectively encode or decode video content is growing. high resolution or high quality. In a conventional video encoder / decoder, a video is encoded according to a limited macroblock based encoding method having a predetermined size.
Image data from a spatial domain is converted to coefficients of a frequency region by using a frequency conversion method. A video encoder / decoder encodes frequency coefficients in block units by dividing an image into a plurality of blocks that have a predetermined size
Ref: 255880 and perform a conversion of
<img file="MX337232B_D0008.tif" />
INSTITUTE MEK'vAN j DBIAFROHEbAO
Indust λ:. ·.!.
<img file="MX337232B_D0009.tif" />
cosine iffc'TTmr —---- discrete transform (DCT) for fast frequency conversion operation. The coefficients of the frequency region are easily compressed. compared to image data from the spatial domain. In particular, a pixel value of an image in the spatial domain is represented as a prediction error and thus if the frequency conversion is performed on the prediction error, a large amount of data can be converted to 0. A Video encoder / decoder converts data that is continuously and repeatedly generated into small data to reduce an amount of data.
Brief Description of the Invention
Technical problem
The present invention provides a method and apparatus for performing arithmetic encoding and arithmetic decoding of a video by classifying a symbol into prefix and suffix bit sequences.
Technical Solution
In accordance with one aspect of the present invention, a method is provided for decoding a video through symbol decoding, the method includes: parsing image block symbols from a received bitstream; classify a current symbol in a sequence of ut PROPERTY «ndustrml
<img file="MX337232B_D0010.tif" />
prefix bits and a sequence of suffix bits L'Uix bu> .w. ^ ea, a threshold value determined according to the size of a current block; perform an arithmetic decoding by using a particular arithmetic decoding method for each of the prefix bitstream and suffix bitstream; perform a reverse binarization by using a particular binarization method for each of the prefix bitstream and suffix bitstream; and restoring the image blocks by performing inverse transformation and prediction on the current block by using the restored current symbol through arithmetic decoding and inverse binarization.
Advantageous Effects
The efficiency of a symbol encoding / decoding process is improved by performing a binarization method that has a relatively small amount of operation load in the suffix region or suffix bitstream, or by skipping context modeling during Context-based arithmetic encoding / decoding for symbol encoding / decoding.
Brief Description of the Figures
FIGURE 1 is a block diagram of a video encoding apparatus, according to one embodiment of the
<img file="MX337232B_D0011.tif" />
MEXICAN INSTITUTE OF EA PROPERTY
INDUSTRIAL
<img file="MX337232B_D0012.tif" />
present invention; / FIGURE 2 is a block diagram of a video decoding apparatus, in accordance with an embodiment of the present invention;
FIGURES 3 and 4 are diagrams for describing arithmetic coding by classifying a symbol into a prefix bit sequence and a suffix bit sequence according to a predetermined threshold value, in accordance with an embodiment of the present invention;
/ FIGURE 5 is a flow chart for describing a video encoding method, in accordance with an embodiment of the present invention;
FIGURE 6 / is a flowchart for describing a video decoding method, in accordance with an embodiment of the present invention;
FIGURE 7 is a block diagram of a video encoding apparatus based on encoding units having a tree structure, in accordance with an embodiment of the present invention;
FIGURE 8 4s is a block diagram of a video decoding apparatus based on an encoding unit having a tree structure, in accordance with an embodiment of the present invention;
FIGURE 9 4s a conceptual diagram of units <sup>Τ</sup>ΡΪ
MEXICAN INSTITUTE OF INDUSTRIAL PROPERTY
<img file="MX337232B_D0013.tif" />
coding, according to an embodiment dS'lS 'prfi'S'SlTtíS invention;
FIGURE 10 is a block diagram of an image encoder based on encoding units, in accordance with an embodiment of the present invention;
FIGURE 11 is a block diagram of an image decoder based on encoding units, in accordance with an embodiment of the present invention;
FIGURE 12 is a diagram showing coding units according to depths and partitions, according to a mode ^ of the present invention;
FIGURE 13 is a diagram for describing a relationship between a coding unit and transformation units, in accordance with an embodiment of the present invention;
FIGURE 14<sup>Z</sup> it is a diagram for describing encoding information of encoding units according to depths, in accordance with an embodiment of the present invention;
FIGURE 15 is a diagram showing coding units according to depths, in accordance with an embodiment of the present invention;
<sup>Z</sup> / / FIGURES 16 to 18 are diagrams for describing a relationship between encoding units, prediction units, and transformation units, in accordance with one embodiment of the present invention; and
<img file="MX337232B_D0014.tif" />
FIGURE 19 is a diagram for describing a relationship between a coding unit, a prediction unit, and a transformation unit according to coding mode information in Table 1.
Detailed description of the invention
In accordance with one aspect of the present invention, a method is provided for decoding a video through symbol decoding, the method includes: parsing image block symbols from a received bitstream; classify a current symbol into a prefix bit sequence and a suffix bit sequence based on a threshold value determined according to the size of a current block; perform an arithmetic decoding by using a particular arithmetic decoding method for each of the prefix bitstream and suffix bitstream; perform a reverse binarization by using a particular binarization method for each of the prefix bitstream and suffix bitstream; and restoring the image blocks by performing inverse transformation and prediction on the current block by using the restored current symbol through arithmetic decoding and inverse binarization.
Performing reverse binarization can
<img file="MX337232B_D0015.tif" />
include restoring a prefix region and üITá “TEJCpiÓii du · suffix of the symbol when performing a reverse binarization according to the binarization method determined for each of the prefix bit sequence and suffix bit sequence.
Performing arithmetic decoding may include: performing arithmetic decoding to determine context modeling in the prefix bit stream according to bit locations; and perform arithmetic decoding to bypass context modeling in the suffix bitstream in a bypass mode.
Performing arithmetic decoding may include performing arithmetic decoding using a context of a predetermined index that is pre-assigned to the bit locations of the prefix bit sequence, when the symbol is final coefficient position information of a transformation coefficient.
The current symbol may include at least one of an intra-prediction mode and position information of the final coefficient of the current block.
The binarization method may further include at least one selected from the group consisting of unkria binarization, truncated nail binarization, exponential Golomb binarization, and length binarization.
<img file="MX337232B_D0016.tif" />
fixed. , ~ IT. ~ .iatn> ~ »rw
In accordance with another aspect of the present invention, there is provided a method for encoding a video through symbol encoding, the method includes: generating symbols by performing a prediction and image block transformation; classify a current symbol into a prefix region and a suffix region based on a threshold value determined according to the size of a current block; generate a prefix bit sequence and suffix bit sequence by using a particular binarization method for each of the prefix region and suffix region; perform symbol encoding using a particular arithmetic encoding method for each of the prefix bitstream and suffix bitstream; and sending the generated bit streams through symbol encoding in the form of bit streams.
The embodiment of symbol encoding may include: performing symbol encoding in the prefix bitstream by using an arithmetic encoding method to perform context modeling according to bit locations; and performing symbol encoding in the suffix bitstream by using an arithmetic encoding method to bypass context modeling in a bypass mode.
INSTITUTO MEfciC / nr. DI W PKOf! ÍO., Ó
BWUÍifttP.i
<img file="MX337232B_D0017.tif" />
Performing symbol encoding may include performing arithmetic encoding by using a context of a predetermined index that is pre-assigned to the bit locations of the prefix bit stream, when the symbol is coefficient position information end of a transformation coefficient.
The current symbol may include at least one of an intra-prediction mode and position information of the final coefficient of the current block.
The binarization method may further include at least one selected from the group consisting of unary binarization, truncated unary binarization, exponential Golomb binarization, and fixed length binarization.
In accordance with another aspect of the present invention, there is provided an apparatus for decoding a video through symbol decoding, the apparatus includes: an analyzer for analyzing image block symbols from a received bitstream; a symbol decoder to classify a current symbol into a prefix bit stream and suffix bit stream based on a threshold value determined according to the size of a current block and perform arithmetic decoding using a arithmetic decoding method determined for each of the prefix bitstream
<img file="MX337232B_D0018.tif" />
ÍNDÚSTktÁt and the suffix bitstream and then — róáTi'ársnr — a reverse binarization by using a particular binarization method for each of the prefix bitstream and suffix bitstream; and an image restoration unit for restoring image blocks by performing inverse transformation and prediction on the current block by using the restored current symbol through arithmetic decoding and inverse binarization.
In accordance with another aspect of the present invention, an apparatus for encoding a video through symbol encoding is provided, the apparatus includes: an image encoder for generating symbols by performing a prediction and image block transformation; a symbol encoder to classify a current symbol into a prefix region and a suffix region based on a threshold value determined according to the size of a current block and generate a prefix bit sequence and suffix bit sequence by using a particular binarization method for each of the prefix region and suffix region and then perform symbol encoding using an arithmetic encoding method determined for each of the prefix bitstream and suffix bitstream; and a bit stream output unit for
<img file="MX337232B_D0019.tif" />
send the generated bitstreams to CT'avéb Alo. ' lu.
symbol encoding in the form of bit streams.
In accordance with another aspect of the present invention, there is provided a computer readable recording medium having a computer program incorporated therein for executing the method of decoding a video through decoding symbols.
In accordance with another aspect of the present invention, there is provided a computer readable recording medium having a computer program incorporated therein for executing the encoding method of a video through symbol encoding.
Mode of Invention
Hereinafter, the present invention will be described more fully with reference to the associated figures, in which exemplary embodiments of the invention are shown. Expressions such as at least one of, when preceding an item list, modify the entire item list and do not modify the individual items in the list.
A video encoding method involving arithmetic encoding and a video decoding method involving arithmetic decoding in accordance with an embodiment of the present invention will be described with reference to FIGURES 1 to 6. Also, a method of
<img file="MX337232B_D0020.tif" />
<img file="MX337232B_D0021.tif" />
and a video decoding method involving arithmetic decoding based on encoding units having a tree structure according to an embodiment of the present invention will be described with reference to FIGURES 7 to 19. Hereinafter, an image may refer to a still image from a video or a movie, that is, a video itself.
Hereinafter, a video encoding method and a video decoding method, according to an embodiment of the present invention, based on a prediction method in an intra-prediction mode will be described with reference to FIGS. 1 to 6.
FIGURE 1 is a block diagram of a video encoding apparatus 10, in accordance with an embodiment of the present invention.
The video encoding apparatus 10 can encode video data from a spatial domain through intra-prediction / inter-prediction, transformation, quantization, and symbol encoding. Hereinafter, the operations that occur when the video coding apparatus 10 encodes symbols generated by intra-prediction / inter-prediction, transformation, and quantization through arithmetic coding will be described in detail.
<img file="MX337232B_D0022.tif" />
The video encoding apparatus lcClíkÜlliyfc; hit image encoder 12, a symbol encoder 14 and a bitstream output unit 16.
The video encoding apparatus 10 can divide video image data into a plurality of data units and encode the image data according to the data units. The data unit may have a square or rectangular shape or it may have an arbitrary geometric shape, but the data unit is not limited to a data unit having a predetermined size. According to the video encoding method based on the encoding units having a tree structure, a data unit can be a maximum encoding unit, an encoding unit, a prediction unit, a transformation unit, or the like. An example where an arithmetic encoding / decoding method according to an embodiment of the present invention is used in the video encoding / decoding method based on encoding units having a tree structure will be described with reference to FIGURES 7 to 19.
For the convenience of description, a video encoding method for a block which is a kind of data unit will be described in detail. However, the video encoding method according to various «1DUÍI ÍUÁt
<img file="MX337232B_D0023.tif" />
Embodiments of the present invention is not TiiúltclÜD ™ ttl · · video encoding method for the block and can be used for multiple data units.
Image encoder 12 performs operations, such as intra-prediction / inter-prediction, transformation, or quantization, on image blocks to generate symbols.
Symbol encoder 14 classifies a current symbol into a prefix region and a suffix region based on a threshold value determined according to the size of a current block to encode the current symbol from among the symbols generated according to the blocks . Symbol encoder 14 can determine the threshold value to classify the current symbol into the prefix region and suffix region based on at least one of a current block width and length.
Symbol encoder 14 can determine a symbol encoding method for each of the prefix region and suffix region and encode each of the prefix region and suffix region in accordance with the symbol encoding method.
Symbol encoding can be divided into a binarization process to transform a symbol into bit sequences and an arithmetic encoding process to perform context based arithmetic encoding on the bit sequences. The symbol encoder 14
<img file="MX337232B_D0024.tif" />
You can determine a binarization method for each of the prefix region and suffix region of the symbol, and binarize each of the prefix region and suffix region according to the binarization method. A prefix bit stream and a suffix bit stream can be generated from the prefix region and suffix region, respectively.
Alternatively, symbol encoder 14 can determine an arithmetic encoding method for each of the prefix bitstream and suffix bit sequence of the symbol and perform arithmetic encoding on each of the prefix bitstream and the suffix bit sequence according to the arithmetic coding method.
Too, symbol encoder 14 can determine a binarization method for each of the prefix region and suffix region of the symbol and perform a binarization on each of the prefix region and suffix region according to the binarization method and you can determine an arithmetic encoding method for each of the prefix bitstream and suffix bitstream of the symbol and perform arithmetic encoding on the prefix bitstream and the suffix bit stream according to the arithmetic coding method.
<img file="MX337232B_D0025.tif" />
The embodiment of the present invention can determine a binarization method for each of the prefix region and the suffix region. The binarization methods determined for the prefix region and suffix region may be different from each other.
Symbol encoder 14 can determine an arithmetic encoding method for each of the prefix bitstream and the suffix bitstream. The determined arithmetic encoding methods for the prefix bit stream and the suffix bit stream may be different from each other.
Accordingly, the symbol encoder 14 can binarize the prefix region and suffix region by using different methods only in a binarization process of a symbol decoding process or it can encode the prefix bit sequence and sequence. suffix bits by using different methods only in an arithmetic encoding process. Also, the symbol encoder 14 can encode the prefix region (prefix bitstream) and the suffix region (suffix bitstream) by using different methods in both binarization and arithmetic encoding processes.
The selected binarization method can be
MEXICAN INSTITUTE
OF THE PROPERTY
INDUSTRIAL
<img file="MX337232B_D0026.tif" />
at least one of the binarization methods STON — gain unary binarization, truncated unary binarization, exponential Golomb binarization, and fixed length binarization.
Symbol encoder 14 can perform symbol encoding by performing arithmetic encoding to perform context modeling on the prefix bit stream according to bit locations and by performing arithmetic encoding to skip context modeling in the sequence of suffix bits in a bypass mode.
Symbol encoder 14 can individually perform symbol encoding in the prefix region and suffix region with respect to symbols including at least one of the intra-prediction mode and the position information of the final coefficient of a coefficient of transformation.
Symbol encoder 14 can also perform arithmetic encoding by using a context of a predetermined index that is pre-assigned to the prefix bit stream. For example, symbol encoder 14 can perform arithmetic encoding by using a context of a predetermined index that is pre-assigned to each location of bits in the prefix bitstream when the symbol
<img file="MX337232B_D0027.tif" />
INSTITUTO MEXÍCANO oe LA PSO7ÍF5A0 INDUSTRIAL is position information of the final coefficient of the transformation coefficient.
Bit stream output unit 16 sends bit streams generated through symbol encoding in the form of bit streams.
The video encoding apparatus 10 can perform arithmetic encoding on the block symbols of a video and send the symbols.
Video encoding apparatus 10 may include a core processor (which is not shown) to control the entire image encoder 12, symbol encoder 14, and bit stream output unit 16. Alternatively, the image encoder 12, the symbol encoder 14 and the bit stream output unit 16 can be operated by processors (which are not shown) respectively installed therein and the complete video encoding apparatus 10 can be operated by systematically operating the processors (which are not shown). Alternatively, the image encoder 12, the symbol encoder 14 and the bit stream output unit 16 can be controlled by an external processor (not shown) of the video encoding apparatus 10.
Video encoding apparatus 10 can include at least one data storage unit
MEXICAN INSTITUTE of Industrial Property
<img file="MX337232B_D0028.tif" />
(which is not shown) To store rnie are input / output to / from image encoder 12, symbol encoder 14 and bit stream output unit 16. Video encoding apparatus 10 may include a controller memory (which is not shown) to control the input / output of data stored in the data storage unit (which is not shown).
The video encoding apparatus 10 is operated by being linked with an internal video encoding processor or an external video encoding processor to perform the video encoding including a prediction and a transformation, thereby sending a result of the video encoding. The internal video encoding processor of the video encoding apparatus 10 can perform a basic video encoding operation not only by using a separate processor, but also by including a video encoding processing module in the encoding apparatus. 10, a centrally operated apparatus, or a graphically operated apparatus.
FIGURE 2 is a block diagram of a video decoding apparatus 20, in accordance with an embodiment of the present invention.
The video decoding apparatus 20 can decode the video data encoded by the video apparatus.
ΜΡΙ
<img file="MX337232B_D0029.tif" />
MEXICAN INSTITUTE OF PROPERTY
INDUSTRIAL
<img file="MX337232B_D0030.tif" />
10 video encoding through da.1, analysis, symbol decoding, inverse quantization, inverse transformation, intra-prediction / motion compensation, etc. and restore the video data close to the original video data of the spatial domain. Hereinafter, a process will be described in which the video decoding apparatus 20 performs arithmetic decoding on the parsed symbols of a bitstream to restore the symbols.
The video decoding apparatus 20 includes an analyzer 22, a symbol decoder 24 and an image restoration unit 26.
The video decoding apparatus 20 can receive a bit stream that includes encoded data from a video. Analyzer 22 can analyze bitstream image block symbols.
Analyzer 22 can analyze the symbols encoded through arithmetic encoding with respect to the video blocks of the bit stream.
The analyzer 22 can analyze symbols including a video block intra-prediction mode, position information of the final coefficient of a transformation coefficient, etc. of the received bitstream.
Symbol decoder 24 determines a value • uto no - <3
INDUSTRY i
INSTJTbTi del.
justrustrial suffix sequence. The threshold threshold value for classifying a current symbol into a prefix bits and a symbol decoder bit sequence 24 can determine the to classify the current symbol into the prefix bit sequence and suffix bit sequence based on the size of a current block, that is, at least one of a width and a height of the current block. Symbol decoder 24 determines an arithmetic decoding method for each of the prefix bitstream and the suffix bitstream. Symbol decoder 24 performs symbol decoding using the determined arithmetic decoding method for each of the prefix bitstream and suffix bitstream.
The determined arithmetic decoding methods for the prefix bit stream and the suffix bit stream may be different from each other.
Symbol decoder 24 can determine a binarization method for each of the prefix bit sequence and suffix bit sequence of the symbol. Accordingly, the symbol decoder 24 can reverse binary the symbol prefix bit sequence using the binarization method. The binarization methods determined for the prefix bit stream and suffix bit stream may be • * - ** · * · πλ different from each other.
INSTITUTE λ D £ LZ. F, h \ ¡
<img file="MX337232B_D0031.tif" />
Also, the symbol decoder 24 can perform arithmetic decoding by using the determined arithmetic decoding method for each of the prefix bit sequence and suffix bit sequence of the symbol and can perform reverse binarization by using the binarization method determined for each of the prefix bitstream and suffix bitstream generated through arithmetic decoding.
Accordingly, the symbol decoder 24 can decode the prefix bit stream and suffix bit stream by using different methods only in an arithmetic decoding process of a symbol decoding process or it can perform reverse binarization by using different methods only in a reverse binarization process. Also, the symbol decoder 24 can decode the prefix bit stream and suffix bit stream by using different methods in both arithmetic decoding and reverse binarization processes.
The binarization method determined for each of the prefix bitstream and suffix bitstream of the symbol can be not only a general binarization method, but can also be at least ^ r! TUT<sub>OM</sub>r ;;<sub>SPOUT </sub>Ce U. -. '. Ol'IEDAD
INDUSTRIAL
<img file="MX337232B_D0032.tif" />
one of the truncated unary / BlTrd'iiiuiüiüiéi unary binarization, exponential Golomb binarization, and fixed length binarization methods.
Symbol decoder 24 can perform arithmetic decoding to perform context modeling on the prefix bitstream according to bit locations. Symbol decoder 24 can use an arithmetic decoding method to bypass context modeling in the suffix bitstream in a bypass mode. Accordingly, symbol decoder 24 may perform symbol decoding through arithmetic decoding performed on each of the prefix bit sequence and suffix bit sequence of the symbol.
Symbol decoder 24 can perform arithmetic decoding in the prefix bit sequence and symbol suffix bit sequence including at least one of an intra-prediction mode and position information of the final coefficient of a coefficient of transformation.
Symbol decoder 24 can perform arithmetic decoding by using a context of a predetermined index that is pre-assigned according to bit locations in the prefix bit sequence when the symbol is information about the & -, ί'λ; 'ί
S- Jl j.t_ MEXICAN INSTITUTE OF THE ΡΧΟ »ΊΕΰΑΙ>
INDUSTRIAL
<img file="MX337232B_D0033.tif" />
position of the final coefficient of the αο & £ 1οίρηΐ-ρ of transformation.
The image restoration unit 26 can restore a prefix region and a symbol suffix region by performing arithmetic decoding and reverse binarization on each of the prefix bit sequence and suffix bit sequence. The image restoration unit 26 can restore the symbol by synthesizing the prefix region and suffix region of the symbol.
The image restoration unit 26 performs inverse transformation and prediction on the current block by using the restored current symbol through arithmetic decoding and inverse binarization. The image restoration unit 26 can restore image blocks by performing operations, such as inverse quantization, inverse transformation, or intra-prediction / motion compensation, by using the corresponding symbols for each of the image blocks.
Video decoding apparatus 20 in accordance with one embodiment of the present invention may include a central processor (not shown) to control the entire analyzer 22, symbol decoder 24, and image restoration unit 26 Alternatively, '' you.
INSTITUTO MEJCC / MO DE LA Pí (C?; = Íjad
INDUSTRIAL
<img file="MX337232B_D0034.tif" />
of symbols ”^<sup>1</sup> and the unit can be operated by shown) installed the analyzer 22, the image restoration decoder 26 processors (which are not respectively therein) and the complete video decoding apparatus 20 can be operated by the systematic operation of the processors ( which are not shown). Alternatively, the analyzer 22, the symbol decoder 24 and the image restoration unit 26 can be controlled by an external processor (which is not shown) of the video decoding apparatus 20.
Video decoding apparatus 20 may include at least one data storage unit (which is not shown) for storing data that is input / sent to / from analyzer 22, symbol decoder 24 and restore unit of images 26. The video decoding apparatus 20 may include a memory controller (which is not shown) to control the input / output of data stored in the data storage unit (which is not shown).
The video decoding apparatus 20 is operated by being linked with an internal video decoding processor or an external video decoding processor to perform the video decoding including a reverse transformation. The internal video decoding processor of the video decoding apparatus 20 can iva jr I
INSTITUTO MF.X'C / 'NO DE LA FaOríEDAD incustajai.
perform a basic vine decoding operation ..... not only by using a separate processor, but also by including a video decoding processing module in the video decoding apparatus 20, a central operating apparatus, or a graphic operating apparatus.
Context-based adaptive binary arithmetic coding (CABAC) is widely used as a context-based arithmetic encoding / decoding method for symbol encoding / decoding. In accordance with context-based arithmetic encoding / decoding, each bit of a symbol bit sequence can be a binary number of a context and a location of each bit can be mapped to a binary number index. A length of the bit stream, that is, a length of the binary number, can vary according to the size of a symbol value. Context modeling to determine a symbol context is required to perform context-based arithmetic encoding / decoding.
The context is refreshed according to the bit locations of the symbol bit stream, that is, at each bit index, to perform context modeling and thus requires a complicated operation process.
<img file="MX337232B_D0035.tif" />
In accordance with the video encoding apparatus of the video decoding apparatus 20 described with
MEXICAN INSTITUTE OF LA PROPINAD
INDUSTRIAL
<img file="MX337232B_D0036.tif" />
Referring to FIGURES 1 and 2, the symbol is ^ -1 ossified in the prefix region and suffix region, and a relatively simple binarization method can be used for the suffix region compared to the prefix region. Also, arithmetic encoding / decoding through context modeling is done in the prefix bit stream and context modeling is not done in the suffix bit stream and thus loading an operation quantity for the Context-based arithmetic encoding / decoding can be reduced. Therefore, video encoding apparatus 10 and video decoding apparatus 20 can improve the efficiency of a symbol encoding / decoding process by performing a binarization method that has a relatively small amount of operating load in the suffix or suffix bit stream or skipping context modeling during context-based arithmetic encoding / decoding for symbol encoding / decoding.
Hereinafter, various modalities for arithmetic coding will be described that can be performed by video encoding apparatus 10 and video decoding apparatus 20.
FIGURES 3 and 4 are diagrams for describing arithmetic encoding by classifying a symbol into a
Mexican Institute of Industrial Property
<img file="MX337232B_D0037.tif" />
prefix bit stream and a. ^. bit sequence. suffix according to a predetermined threshold value, according to an embodiment of the present invention.
Referring to FIGURE 3, a process for performing symbol encoding, in accordance with one embodiment of the present invention, on the position information of the ending coefficient of a symbol will be described in detail. The final coefficient position information is a symbol that represents a location of a final coefficient, not 0, among the transformation coefficients of a block. Since the block size is defined as a width and a height, the position information of the final coefficient can be represented by two-dimensional coordinates, that is, an x coordinate in a width direction and a y coordinate in a height direction. For convenience of description, FIGURE 3 shows a case where symbol encoding is performed at the x coordinate in the width direction of the final coefficient position information when a width of a block is w.
An interval of the x coordinate of the final coefficient position information is within the width of the block and thus the x coordinate of the final coefficient position information is equal to or greater than 0 and equal to or less than w-1 . For arithmetic coding of
IV. _ __
INSTITUTO .mexicano
Dt THE PRICy
INDUSTRiAL • i
<img file="MX337232B_D0038.tif" />
<img file="MX337232B_D0039.tif" />
symbol, the symbol can be classified into a legion of<sup>1 </sup>prefix and a suffix region based on a predetermined threshold value th. In this way, arithmetic encoding can be performed in the prefix bitstream in which the prefix region is binarized, based on the context determined through context modeling. Also, arithmetic encoding can be performed in the suffix bitstream in which the suffix region is binarized, in a bypass mode in which context modeling is omitted.
In this document, the threshold value th to classify the symbol into the prefix region and suffix region can be determined based on the width w of the block. For example, the threshold value th can be determined to be (w / 2) -l to divide the bit stream by two (threshold value determination formula 1). Alternatively, the width w of the block generally has a square of 2 and thus the threshold value th can be determined based on a logarithmic value of the width w (threshold value determination formula 2).
<threshold value determination formula 1> th = (w / 2) - 1;
<threshold value determination formula 2> th = (log2w << l) - 1;
In FIGURE 3, according to the formula of
MEXICAN INSTITUTE OF PROPERTY
INDUSTRIAL
<img file="MX337232B_D0040.tif" />
determination of threshold value 1, when the width w of the block is 8, the formula provides a threshold value th = (8/2) - 1 = 3. Thus, at the x coordinate of the position information of the final coefficient, 3 can be classified as the prefix region and the rest of the values different from 3 can be classified as the suffix region. The prefix region and the suffix region are
<td>can binarize</td><td>of</td><td>agreement</td><td>with the</td><td>binarization method</td>
<td>determined for</td><td>every</td><td>one of</td><td>the region</td><td>prefix and region</td>
<td>suffix.</td><td></td><td></td><td></td><td></td>
<td>When</td><td>a</td><td colspan="2">coordinate χ N</td><td>of the information of</td>
position of the current final coefficient is 5, the x coordinate of the final coefficient position information can be classified as N = th + 2 = 3 + 2. In other words, at the x coordinate of the final coefficient position information, 3 can be classified as the prefix region and 2 can be classified as the suffix region.
In accordance with an embodiment of the present invention, the prefix region and suffix region can be binarized according to different binarization methods determined for the prefix region and suffix region, respectively. For example, the prefix region can be binarized according to a unary binarization method and the suffix region can be binarized according to a general binarization method.
MEXICAN INSTITUTE
ÜE EA PROPERTY
INDUSTRY!
<img file="MX337232B_D0041.tif" />
Therefore, after 3 is binar'i ζΑ ^ 'Ήθ according to the nail binarization method, a 320001 prefix bit sequence can be generated from the prefix region and after 2 is binarized accordingly With the general binarization method, the suffix bit sequence 34 010 can be generated from the suffix region.
Also, context-based arithmetic encoding can be performed in the prefix bit stream
0001 through context modeling. In this way, a context index can be determined for each binary number in the 32,0001 prefix bit stream.
Arithmetic encoding can be performed on suffix bitstream 34 010 in a bypass mode without performing context modeling. Arithmetic coding can be done without performing context modeling assuming that in derivation mode each binary number has a context of an equal probability state, that is, the context of 50%.
Accordingly, context-based arithmetic encoding can be performed on each of the prefix bitstream 32 0001 and the suffix bitstream 34 010 to complete the encoding of symbols with respect to the co N coordinate of the information. position of the current final coefficient.
<img file="MX337232B_D0042.tif" />
-κ-IL. ιί __
INSTITUTE Μ EX)<sub>SPOUT </sub>SAY THE INDUSTRIAL PROPERTY
Although symbol encoding has been described in the law ^ XaL ^ nal modality by way of binarization and arithmetic encoding, symbol decoding can be performed in the same manner. In other words, a parsed symbol bit stream can be classified into a prefix bit stream and a suffix bit stream based on block width w, arithmetic decoding can be performed on the prefix bit stream 32 through context modeling and arithmetic decoding can be done in suffix bitstream 34 without doing context modeling. Reverse binarization can be performed in the prefix 32 bit sequence after arithmetic decoding using the unary binarization method and the prefix region can be restored. Also, reverse binarization can be performed in suffix bit sequence 34 after arithmetic encoding using the general binarization method and in this way the suffix region can be restored. The symbol can be restored by synthesizing the restored prefix region and suffix region.
Although the modality in which the unary binarization method is used for the prefix region (prefix bitstream) and the general binarization method is used for the suffix region '' DUSTSML has been described.
<img file="MX337232B_D0043.tif" />
(suffix bit stream), the binarization method is not limited thereto. Alternatively, a truncated unary binarization method can be used for the prefix region (prefix bitstream) and a fixed length binarization method can be used for the suffix region (suffix bitstream).
Although only the modality with respect to the final coefficient position information in a block width direction has been described, a modality with respect to the final coefficient position information in a block height direction can also be used.
Also, there is no need to perform context modeling on the suffix bitstream to perform arithmetic encoding using a context that has a fixed probability, but there is a need for variable context modeling on the sequence. of prefix bits. The context modeling that is performed on the prefix bit stream can be determined according to the size of the block.
Context Mapping Table
<td>Block Size</td><td>Binary Index No. of the Selected Context</td>
<td>4x4</td><td> 0,1,2,2</td>
<td>8x8</td><td> 3, 4, 5, 5</td>
<td>16x16</td><td> 6, 7, 8, 9,10,10,11,11</td>
<td>32x32</td><td> 12, 13,14, 15, 16, 16, 16, 16, 17, 17,17, 17, 18, 18, 18, 18,</td>
<img file="MX337232B_D0044.tif" />
Mexican INSTITUTE OF PROPERTY
INDUSTRIAL
<img file="MX337232B_D0045.tif" />
In the context mapping table, one location of each number corresponds to the binary number index of the prefix bitstream, and the number indicates a context index that is used at a location of the corresponding bit. For the convenience of description, for example, in a 4x4 block, the prefix bit sequence is comprised of a total of four bits and when k is 0,
1, 2 and 3 according to the context mapping table, the context indices 0, 1, 2 and 2 are determined for the k-th binary number index and in this way arithmetic coding can be performed based on context modeling.
FIGURE 4 shows an embodiment in which an intra prediction mode includes an intra luma mode and an intra chroma mode indicating an intra prediction direction of a luma block and a chroma block, respectively. When the intra-prediction mode is 6, a symbol bit sequence 40 0000001 is generated according to a nail binarization method. In this case, the arithmetic encoding can be performed on a first bit 41 0 of the symbol bit sequence 40 of the intra-prediction mode, through context modeling, and the arithmetic encoding can be performed on the rest of the bits 45 000001 of symbol bit sequence 40, in a bypass mode. In other words, the first bit 41 of the symbol bit sequence corresponds to a prefix bit sequence and the rest
<img file="MX337232B_D0046.tif" />
of bits 45 of the symbol bit sequence '4ΤΓ corresponds to a suffix bit sequence.
How many bits in symbol bit stream 40 are encoded in arithmetic encoding as the prefix bit stream through context modeling and how many bits in symbol bit stream 40 are encoded in arithmetic encoding as sequence suffix bits in bypass mode can be determined according to the size of a block or the size of a set of blocks. For example, with respect to a 64x64 block, arithmetic encoding can be performed only on a first bit of the bit streams in an intra-prediction mode, and arithmetic encoding can be performed on the rest of the bits in a bypass mode. With respect to blocks having other sizes, arithmetic encoding can be performed on all bits of the bitstream sequences from intraprediction mode to derivation mode.
In general, information about bits near least significant bit (LSB) is relatively less important than information about bits near least significant bit (MSB). of a sequence of symbol bits. Accordingly, the video encoding apparatus 10 and the video decoding apparatus 20 can
INSTITUTE ΛΊΓΧίΟ, ΝΟ D £ LA PRC-PíuOaÓ industrial
<img file="MX337232B_D0047.tif" />
select an arithmetical encoding methodGg * 'Üe uuuuiiJÍt with a binarization method that has a relatively high accuracy with respect to the prefix bitstream close to the MSB even when there is a load of an operation quantity and can select an encoding method arithmetic according to a binarization method capable of performing a simple operation with respect to the suffix bit sequence close to the LSB. Also, the video encoding apparatus 10 and the video decoding apparatus 20 can select an arithmetic encoding method based on context modeling with respect to context modeling and can select an arithmetic encoding method, without performing the modeling. of context, with respect to the suffix bitstream close to the LSB.
In the above description, the mode in which the binarization is performed in the prefix bit sequence and the suffix bit sequence of the position information of the final coefficient of the transformation coefficient by using different methods has been described with reference to FIGURE 3. Also, the mode in which arithmetic encoding is performed on the prefix bitstream and the suffix bitstream between the intra-prediction mode bitstreams using different methods has been described with
MEXICAN INSTITUTE OF PROPERTY
INDUSTRIAL
<img file="MX337232B_D0048.tif" />
—------- -------- .... .____ reference to FIGURE 4.
However, in accordance with various embodiments of the present invention, A symbol encoding method in which individually determined arithmetic encoding / binarization methods are used for the prefix bit sequence and suffix bitstream or different arithmetic encoding / binarization methods are used is not limited to the embodiments described. With reference to FIGURES 3 and 4 and various arithmetic encoding / binarization methods can be used for various symbols.
FIGURE 5 is a flowchart for describing a video encoding method, in accordance with an embodiment of the present invention.
In step 51, the symbols are generated by performing a prediction and transformation on the image blocks.
In step 53, a current symbol is classified into a prefix region and a suffix region based on a threshold value * determined according to the size of a current block.
In step 55, a prefix bit sequence and suffix bit sequence are generated by using binarization methods determined individually for the prefix region and the region of
<img file="MX337232B_D0049.tif" />
H / snwl?
<img file="MX337232B_D0050.tif" />
symbol suffix.
In step 57, a symbol encoding is performed by using individually determined arithmetic encoding methods for the prefix bit stream and suffix bit stream.
In step 59, the bit streams generated through symbol encoding are sent in the form of bit streams.
In step 57, symbol encoding can be performed in the prefix bit stream by using an arithmetic encoding method to perform context modeling according to bit locations, and symbol encoding can also be performed in the suffix bitstream by using an arithmetic encoding method to bypass context modeling in a bypass mode.
In step 57, when the symbol is the position information of the final coefficient of a transform coefficient, arithmetic encoding can be performed by using a context of a predetermined index that is pre-assigned to the bit locations of the prefix bit stream.
FIGURE 6 is a flowchart for describing a video decoding method, in accordance with an embodiment of the present invention.
<img file="MX337232B_D0051.tif" />
<sup>BCT</sup>Mup'í<sup>a, c</sup>w
INDUSTRIAL
<img file="MX337232B_D0052.tif" />
In step 61, the block symbols ün —— image are parsed from a received bitstream.
In step 63, a current symbol is classified into a prefix bit stream and a suffix bit stream based on a threshold value determined according to the size of a current block.
In step 65, arithmetic decoding is performed by using a particular arithmetic decoding method for each of the prefix bitstream and suffix bitstream of the current symbol.
In step 67, after arithmetic decoding, reverse binarization is performed by using a particular binarization method for each of the prefix bit stream and suffix bit stream.
The prefix region and suffix region of the symbol can be restored by performing reverse binarization using the given binarization method for each of the prefix bitstream and suffix bitstream.
In step 69, the image blocks can be restored by performing a reverse transformation and prediction on the current block by using the restored current symbol through arithmetic decoding and
<img file="MX337232B_D0053.tif" />
reverse binarization. '......-.....
In step 65, arithmetic decoding to determine context modeling according to bit locations can be performed in the prefix bit stream, and arithmetic decoding to skip context modeling can be done in the bit stream suffix in a bypass mode.
In step 65, when the symbol is the transform coefficient final coefficient position information, arithmetic decoding can be performed using the default index context that is pre-assigned to the bit locations of the bit stream prefix.
In the video encoding apparatus 10 according to one embodiment of the present invention and the video decoding apparatus 20 according to another embodiment of the present invention, the blocks into which the video data is divided are divided into units coding that have a tree structure, the prediction units are used to make an intra-prediction in the coding units and a transformation unit is used to transform the coding units.
Hereinafter, a method and apparatus for encoding a video and a method and apparatus for
<img file="MX337232B_D0054.tif" />
decode a unit-based video that has a tree structure, prediction, and a transformation unit.
FIGURE 7 is a block diagram of video encoding apparatus 5 100, based on encoding units having a tree structure, in accordance with one embodiment of the present invention.
The video encoding apparatus 100 involving video prediction based on the encoding unit 10 having a tree structure includes a maximum encoding unit divisor 110, an encoding unit determiner 120 and an output unit 130. For convenience of description, the video encoding apparatus 100 involving video prediction based on the encoding unit having a tree structure will be referred to as a video encoding apparatus 100.
The maximum encoding unit divisor 110 can divide a current image based on a maximum encoding unit for the current image of an image. If the current image is larger than the maximum encoding unit, the image data of the current image can be divided into at least the maximum encoding unit. The maximum encoding unit according to an embodiment of the present invention may be a data unit having ^<sup>YOU</sup>™ T ° MEXICANO
OF PROPERTY
INDUSTRIAL
<img file="MX337232B_D0055.tif" />
a size of 32x32, 64x64, 128x128, 256x256, etcélüUid, where the shape of the data unit is a box that has a width and length in boxes of 2. The image data can be sent to the encoder unit determiner 120 according to at least the maximum encoding unit.
A coding unit according to an embodiment of the present invention can be characterized by a maximum size and depth. Depth indicates a number of times the coding unit is spatially divided from the maximum coding unit, and as the depth increases, the deepest coding units according to the depths can be divided from the maximum coding unit up to a minimum coding unit. A maximum code unit depth is the top depth and a minimum code unit depth is the bottom depth. Since a size of a coding unit corresponding to each depth decreases as the depth of the maximum coding unit increases, a coding unit corresponding to a higher depth may include a plurality of coding units corresponding to deeper depths. low.
As described above, the image data of the current image is divided into the units of
<img file="MX337232B_D0056.tif" />
encoding unit, and each of the maximum encoding units may include deeper encoding units that are divided according to depth. Since the maximum encoding unit according to an embodiment of the present invention is divided according to the depths, the image data of a spatial domain included in the maximum encoding unit can be hierarchically classified according to the depths.
A maximum depth and maximum size of a coding unit can be predetermined, which limit the total number of times that a height and width of the maximum coding unit are hierarchically divided.
The encoding unit determiner 120 encodes at least one divided region which is obtained by dividing a region of the maximum encoding unit according to the depths and determines a depth to send image data finally encoded according to at least the divided region. In other words, the encoding unit determiner 120 determines an encoded depth by encoding the image data in the deepest encoding units according to the depths, according to the encoding unit
<img file="MX337232B_D0057.tif" />
maximum of the current image and select m-> „nrH flad that has the smallest encoding error.
Image data in the maximum encoding unit is encoded based on the deepest encoding units corresponding to at least a depth equal to or smaller than the maximum depth and the encoding results of the image data are compared based on each of the deepest coding units. A depth having the smallest coding error can be selected after comparing coding errors of the deepest coding units. At least one encoded depth can be selected for each maximum encoding unit.
The size of the maximum encoding unit is divided as one encoding unit is hierarchically divided according to depths and as the number of encoding units increases. Also, even if the coding units correspond to the same depth by one maximum coding unit, it is determined whether each of the coding units corresponding to the same depth is divided to a lower depth by measuring a coding error of the image data of each encoding unit, separately. Therefore, even when the image data is included in an encoding unit,
TNBUSTiUAl Mexican Institute.
Image data is divided into regions according to depths, and encoding errors may differ according to regions in the maximum encoding unit, and thus encoded depths may differ according to regions in the image data. In this way, one or more encoded depths can be determined in a maximum encoding unit and the image data of the maximum encoding unit can be divided according to encoding units of at least one encoded depth.
Accordingly, encoding unit determiner 120 can determine encoding units that have a tree structure included in the maximum encoding unit. Coding units having a tree structure according to an embodiment of the present invention include coding units corresponding to a given depth which is the coded depth, out of all the deeper coding units that are included in the maximum encoding. A coding unit of a coded depth can be hierarchically determined according to depths in the same region of the maximum coding unit and can be independently determined in different regions.
<img file="MX337232B_D0058.tif" />
Similarly, a depth encoded in uaa ,,., Current ragion can be determined independently of a depth encoded in another region.
A maximum depth according to an embodiment of the present invention is an index related to the number of times division from a maximum encoding unit to a minimum encoding unit is performed. A first maximum depth in accordance with an embodiment of the present invention may indicate the total number of times division from the maximum encoding unit to the minimum encoding unit is performed. A second maximum depth in accordance with an embodiment of the present invention may indicate the total number of depth levels from the maximum coding unit to the minimum coding unit. For example, when a maximum encoding unit depth is 0, a depth of one encoding unit, into which the maximum encoding unit is divided once, can be set to 1, and a depth of one encoding unit , in which the maximum encoding unit is divided twice, can be set to 2. In this document, if the minimum coding unit is a coding unit in which the maximum coding unit is divided four times, there are 5 depth levels of depths 0, 1, 2, 3, and 4, and thus the first maximum depth can be set as
Mexican Institute OF PROPERTY
INDUSTRIAL
<img file="MX337232B_D0059.tif" />
and the second maximum depth can be set UJiTiC '5.
Prediction encoding and transformation can be performed according to the maximum encoding unit. Prediction encoding and transformation are also performed based on the deepest encoding units according to a depth equal to or depths less than the maximum depth, according to the maximum encoding unit.
Since the number of deeper encoding units increases as the maximum encoding unit is divided according to depths, encoding that includes prediction encoding and transformation is performed on all the deeper encoding units that are generated as depth increases. For the convenience of description, prediction coding and transformation will now be described based on a coding unit of current depth, in a maximum coding unit.
The video encoding apparatus 100 can variously select a size or shape of a data unit to encode the image data. For the purpose of encoding the image data, operations, such as prediction encoding, transformation, and entropy encoding, are performed, and at that time, the same data unit can be used for all operations or Mexican 'nstitlto de INDUSTRIAL PROPERTY
<img file="MX337232B_D0060.tif" />
different units of data can be used — for— operation.
For example, the video encoding apparatus 100 may select not only one encoding unit to encode the image data, but also a different data unit from the encoding unit in order to perform the prediction encoding on the image data. image in the encoding unit.
For the purpose of performing a prediction coding in the maximum coding unit, the prediction coding can be performed based on a coding unit corresponding to a coded depth, i.e. based on a coding unit that already it is not divided into coding units corresponding to a lower depth. Hereinafter, the encoding unit that is no longer divided and becomes a base unit for prediction encoding will now be referred to as a prediction unit. A partition obtained by dividing the prediction unit can include a prediction unit or a data unit obtained by dividing at least one of a height and a width of the prediction unit. A partition is a data unit that has a way in which the prediction unit is divided from the encoding unit and the prediction unit can be a partition that is the same size
MEXICAN INSTITUTE
FROM THE VK PROPERTY ?;
industry!
than the encoding unit. .............-- i ...
For example, when a 2Nx2N encoding unit (where N is a positive integer) is no longer divided and becomes a 2Nx2N prediction unit, and a partition size can be 2Nx2N, 2NxN, Nx2N, or NxN. Examples of a partition type include symmetric partitions that are obtained by symmetrically dividing a height or width of the prediction unit, partitions obtained by asymmetrically dividing the height or width of the prediction unit, such as l: non: l, partitions obtained by geometrically dividing the prediction unit and partitions having arbitrary shapes.
A prediction mode of the prediction unit can be at least one of an intra mode, an inter mode and a skip mode. For example, intra mode or inter mode can be performed on the 2Nx2N, 2NxN, Nx2N or NxN partition. Also, bypass mode can be performed only on the 2Nx2N partition. Coding is performed independently in a prediction unit in a coding unit, thereby selecting a prediction mode that has a smaller coding error.
The video encoding apparatus 100 can also perform transformation of the image data into an encoding unit based not only on the encoding unit for encoding the image data, but also based on a data unit that .. .is .. ¿Afferent
VI1VI .Γ1
MEXICAN INSTITUTE
WtAPROPIpOAD Oa «.ííj £
INDÜSTAiÁi.
of the coding unit. For the purpose of performing the transformation in the encoding unit, the transformation can be performed based on a data unit that is smaller than or equal to the encoding unit. For example, the data unit for transformation can include a transformation unit for an intra mode and a transformation unit for an Inter mode.
Similar to the coding unit, the transformation unit in the coding unit can be recursively divided into regions of smaller dimensions. In this way, the residual data in the encoding unit can be divided according to the transformation unit having the tree structure according to transformation depths.
A transformation depth indicating the number of times division is performed to reach the transformation unit by dividing the height and width of the encoding unit can also be set in the transformation unit. For example, in a current 2Nx2N encoding unit, a transformation depth may be 0 when the size of a transformation unit is also 2Nx2N, it may be 1 when the size of a transformation unit is NxN, and it may be 2
<img file="MX337232B_D0061.tif" />
when the size of a transformation unit is N / 2xN / 2. In other words, the transformation unit that the tree structure has can be established according to the transformation depths.
Coding information according to coding units corresponding to a coded depth requires not only information about the coded depth, but also information related to a prediction coding and transformation. Accordingly, the encoding unit determiner 120 not only determines an encoding depth having a smallest encoding error, but also determines a partition type in a prediction unit, a prediction mode according to prediction units, and a size of a transformation unit for the transformation.
Coding units according to a tree structure in a maximum coding unit and a method for determining a prediction / partition unit and a transformation unit, in accordance with embodiments of the present invention, will be described in detail below with reference to the
FIGURES 7 to 19.
Coding unit determiner 120 can measure coding error of deeper coding units according to depths
<img file="MX337232B_D0062.tif" />
INSTITUTO MXX! CV-! O OF THE PROPERTY
IND'jST & iAl
<img file="MX337232B_D0063.tif" />
by using Distortion Rate Optimization based on Lagrange multipliers.
The output unit 130 outputs the image data of the maximum encoding unit, which is encoded based on at least the encoded depth that is determined by the encoder unit determiner 120 and information about the encoding mode of according to the encoded depth, in bit streams.
The encoded image data can be obtained by encoding residual data from an image.
Information about the encoding mode according to the encoded depth may include information about the encoded depth, the partition type in the prediction unit, the prediction mode and the size of the transformation unit.
The information about the coded depth can be defined by using depth division information, which indicates whether the encoding is done in encoding units of a lower depth rather than a current depth. If the current depth of the current encoding unit is the encoded depth, the image data in the current encoding unit is encoded and sent, and thus the division information can be defined to not
MEXICAN INSTITUTE OF LA Plb? Í ¡üA'A'D
INDOSISIAL
<img file="MX337232B_D0064.tif" />
divide current encoding unit to lowest n-na-. Alternatively, if the current depth of the current encoding unit is not the encoded depth, the encoding is performed in the lowest depth encoding unit and thus division information can be defined to divide the current encoding unit to get the lowest depth encoding units.
If the current depth is not the encoded depth, the encoding is done in the encoding unit that is divided into the lowest depth encoding unit. Since at least one encoding unit of the lowest depth exists in one encoding unit of the current depth, the encoding is performed repeatedly on each encoding unit of the lowest depth and thus the encoding can be performed recursively. for encoding units that have the same depth.
Since the coding units having a tree structure are determined for a maximum coding unit and the information about at least the coding mode is determined for a coding unit of a coded depth, the information about at least an encoding mode can be determined for a maximum encoding unit. Too,
ΙΜΡΙ
Mexican Institute of Industrial Property
<img file="MX337232B_D0065.tif" />
an encoded depth of the image data of the maximum encoding unit may be different according to locations since the image data is hierarchically divided according to depths and thus the information about the encoded depth and the encoding mode can be set for image data.
Accordingly, the output unit 130 can assign encoding information about a corresponding encoded depth and encoding mode to at least one of the encoding unit, the prediction unit, and a minimum unit included in the encoding unit. maximum.
The minimum unit according to an embodiment of the present invention is a rectangular data unit which is obtained by dividing the minimum coding unit by constituting the lowest depth by 4. Alternatively, the minimum unit may be a maximum rectangular unit of data. which can be included in all encoding units, prediction units, partition units, and transformation units included in the maximum encoding unit.
For example, the encoding information sent through the output unit 130 can be classified into encoding information according to units of
<img file="MX337232B_D0066.tif" />
<sup>lNÍt</sup>«I<sup>or</sup>? '° MEXICAN BUST (<sub>To the</sub>
<img file="MX337232B_D0067.tif" />
encoding and encoding information according to prediction units. The encoding information according to the encoding units may include the information about the prediction mode and about the size of the partitions. The encoding information according to the prediction units may include information about an estimated direction of an Inter mode, about a reference image index of the inter mode, about a motion vector, about a chroma component of a intra mode and about an interpolation method of intra mode. Also, the information about the maximum size of the coding unit defined according to images, cuts or groups of images (GOPs) and the information about the maximum depth can be inserted in a set of parameters of sequence (SPS) or a set of imaging parameters (PPS).
Also, information about the maximum transformation unit size allowed for the current video and information about the minimum transformation unit size can be sent via a bitstream header, an SPS, or a PPS. The output unit
130 can encode and send reference information, individual address prediction information, cut type information including a fourth type of
<img file="MX337232B_D0068.tif" />
above with reference to FIGURES 1 through 6.
In video encoding apparatus 100, the deepest encoding unit may be an encoding unit obtained by dividing a height or width of a higher depth encoding unit, which is one layer up, by two. In other words, when the size of the current depth encoding unit is 2Nx2N, the size of the lowest depth encoding unit is NxN. Also, the current depth encoding unit that is 2Nx2N in size can include at most 4 lowest depth encoding units.
Accordingly, the video encoding apparatus 100 can form the encoding units that have the tree structure by determining encoding units that are optimally shaped and optimally sized for each maximum encoding unit, based on the size of the unit. of maximum coding and the maximum depth determined considering the characteristics of the current image. Also, since encoding can be performed on each maximum encoding unit by using any of several prediction modes and transformations, an optimal encoding mode can be determined considering characteristics of the encoding unit of
IMPI • * «ιτυτο<sub>Μ £ χ</sub>, ο,<sub>ΝΟ</sub>· «* LA PROPISíja ·., INDUSTRIAL
<img file="MX337232B_D0069.tif" />
various sizes of images. ——- In this way, if an image that has high resolution or a large amount of data is encoded in a)
conventional macroblock, a number of macroblocks per image increases excessively. Consequently, a number of pieces of compressed information generated for each macroblock increases and thus it is difficult to transmit the compressed information and the efficiency of data compression decreases. However, by using the video encoding apparatus 100, the image compression efficiency can be increased since one encoding unit is adjusted while considering the characteristics of an image while increasing a maximum size of one encoding unit. while considering an image size.
The video encoding apparatus 100 of the
FIGURE 7 may perform operations of the video encoding apparatus 10 described with reference to FIGURE
1.
The encoding unit determiner 120 can perform operations of the image encoder 12 of the video encoding apparatus 10. The encoding unit determiner 120 can determine a prediction unit for intra-prediction according to encoding units having a tree structure for
<img file="MX337232B_D0070.tif" />
For each maximum encoding unit, perform ^ SP ^ i ^^ lTO ^ prediction on each prediction unit, determine a transformation unit for the transformation, and perform the transformation on each transformation unit.
Output unit 130 can perform operations of a symbol encoding unit 14 and a bit stream output unit 16 of video encoding apparatus 10. Symbols are generated for various data units, such as an image, slice, maximum encoding unit, encoding unit, prediction unit, and transformation unit, and each symbol is classified into a prefix region and a region of suffix according to a threshold value determined based on the size of the corresponding data unit. The output unit 130 can generate a prefix bit sequence and a suffix bit sequence by using a particular binarization method for each of the prefix region and the symbol suffix region. Any of a general binarization, a unary binarization, a truncated unary binarization, an exponential Golomb binarization, and a fixed length binarization are selected to binarize the prefix region and suffix region, thereby generating the prefix bit sequence and the suffix bit sequence.
Output unit 130 can perform ü
<img file="MX337232B_D0071.tif" />
symbol encoding using the
INSTITUTE ΜϊΧΚΛΝς ', D £ U ρ; »όΜ & ε · Α ·>
iNDUíTStl-U
<img file="MX337232B_D0072.tif" />
real H h<sub>or</sub> a given arithmetic encoding for each of the prefix bitstream and the suffix bitstream. Output unit 130 can perform symbol encoding by performing arithmetic encoding to perform context modeling according to bit locations in the prefix bit stream and by performing arithmetic encoding to skip context modeling in the sequence of suffix bits in a bypass mode.
For example, when the final coefficient position information of a transformation coefficient of the transformation unit is encoded, the threshold value for sorting the prefix bit sequence and suffix bit sequence can be determined according to size (width or height) of the transformation unit.
Alternatively, the threshold value can be determined according to cut sizes that include the current transformation unit, a maximum coding unit, a coding unit, a prediction unit, and so on.
Alternatively, it is possible to determine by means of a maximum index of an intra-prediction mode how many bits of a symbol bit sequence are encoded in an arithmetic encoding as the prefix bit sequence through context modeling in the mode of intra60
<img file="MX337232B_D0073.tif" />
prediction and how many bits of the symbol hit sequence are encoded in arithmetic encoding as the suffix bit sequence in a bypass mode. For example, a total of 34 intra-prediction modes can be used for prediction units having sizes of 8x8, 16x16 and
32x32, a total of 17 intra-prediction modes can be used for a prediction unit having a size of 4x4, and a total of intra-prediction modes of numbers can be used for a prediction unit that has a size of 64x64. In this case, since the prediction units capable of using the same number of intra-prediction modes are considered to have similar statistical characteristics, a first bit among the bit sequences in the intra-prediction mode can be coded to through context modeling for arithmetic coding with respect to prediction units having sizes of 8x8, 16x16 and 32x32. Also, all the bits among the bit sequences in the intraprediction mode can be encoded in the derivation mode for arithmetic encoding with respect to the rest of the prediction units, that is, the prediction units that have sizes of 4x4 and 64x64.
The output unit 130 can send the generated bit streams through symbol encoding in the form of bit streams.
<img file="MX337232B_D0074.tif" />
FIGURE 8 is a block diagram of the video decoding application 200 based on an encoding unit having a tree structure, in accordance with an embodiment of the present invention.
The video decoding apparatus 200 that performs a video prediction based on the encoding unit having a tree structure includes a receiver 210, an image data extractor and encoding information 220 and an image data decoder
230.
Definitions of various terms, such as an encoding unit, depth, prediction unit, transformation unit, and information about various encoding modes, for various operations of the video decoding apparatus 200 are identical to those described with reference to the FIGURE 7 and the video encoding apparatus 100.
Receiver 210 receives and analyzes a bit stream of encoded video. The encoding information and image data extractor 220 extracts the encoded image data for each encoding unit from the analyzed bit stream, where the encoding units have a tree structure according to each maximum encoding unit and sends the image data extracted to the image data decoder 230. The image extractor
<img file="MX337232B_D0075.tif" />
MEXICAN INSTITUTE OF LA FROMEftAn
INDUSTRIAL
<img file="MX337232B_D0076.tif" />
Image data and encoding information icaoái4amraiafl ...... can extract information about a maximum size of an encoding unit from a current image, from a header about the current image, or an SPS or a PPS.
Also, the encoding information and image data extractor 220 extracts information about an encoded depth and an encoding mode for encoding units having a tree structure according to each maximum encoding unit, from the analyzed bitstream. . The extracted information about the encoded depth and the encoding mode is sent to the image data decoder 230. In other words, the image data in a bit stream is divided into the maximum encoding unit so that the image data decoder 230 decodes the image data for each maximum encoding unit.
The information about the encoded depth and the encoding mode according to the maximum encoding unit can be set for the information about at least one encoding unit corresponding to the encoded depth and the information about an encoding mode may include information about a partition type of a corresponding encoding unit which corresponds to the encoded depth, a prediction mode and a unit size
VJL JL __ MEXICAN INSTITUTE
DB LA FACVKDad INDUSTRIAL
<img file="MX337232B_D0077.tif" />
of transformation. Also, the information dtidl ^ í'y'iún<sup>1</sup> According to the depths it can be extracted as the information about the coded depth.
The information about the encoded depth and the encoding mode according to each maximum encoding unit extracted by the image data extractor and encoding information 220 is information about an encoded depth and a certain encoding mode to generate an error. minimum encoding when an encoder, such as video encoding apparatus 100, repeatedly encode for each deepest encoding unit according to depths according to each maximum encoding unit. Accordingly, the video decoding apparatus 200 can restore an image by decoding the image data according to an encoded depth and an encoding mode that generates the least encoding error.
Since the encoding information about the encoded depth and the encoding mode can be assigned to a predetermined data unit from among a corresponding encoding unit, a prediction unit and a minimum unit, the image and information data extractor. encoding 220 can extract the information about the encoded depth and the mode of
<img file="MX337232B_D0078.tif" />
encoding according to units ^ '- of <sup>1</sup> · default data. It can be inferred that the default data units to which the same information about the encoded depth and the encoding mode are assigned are the data units included in the same maximum encoding unit.
The image data decoder 230 restores the current image by decoding the image data in each maximum encoding unit based on the information about the encoded depth and the encoding mode according to the maximum encoding units. In other words, the image data decoder 230 can decode the encoded image data based on the extracted information about the partition type, prediction mode, and transformation unit for each encoding unit from among the encoding units. that have the tree structure included in each maximum coding unit. A decoding process can include a prediction that includes intra-prediction and motion compensation, and inverse transformation.
The image data decoder 23 0 can perform intra-prediction or motion compensation according to a partition and a prediction mode of each encoding unit, based on information about the partition type and the prediction mode of the unit of
<img file="MX337232B_D0079.tif" />
prediction of the Hp artierdo coding unit. with coded depths.
Also, the image data decoder 230 can perform the reverse transformation according to each transformation unit in the encoding unit, based on the information about the transformation unit according to the encoding units having a tree structure. , in order to perform the inverse transformation according to the maximum encoding units. A pixel value of a spatial domain in the encoding unit can be restored through the inverse transformation.
The image data decoder 230 can determine at least one encoded depth of a current maximum encoding unit by using division information according to the depths. If the split information indicates that the image data is no longer split at the current depth, the current depth is a coded depth. Accordingly, the image data decoder 230 can decode encoded data from at least one encoding unit corresponding to each encoded depth in the current maximum encoding unit by using the information about the partition type of the unit. prediction mode, prediction mode, and transformation unit size
<img file="MX337232B_D0080.tif" />
for each encoding unit that corlLÍ ^ SpullÜe the encoded depth and sends the image data of the current maximum encoding unit.
In other words, the data units containing the encoding information including the same division information can be collected by looking at the assigned encoding information set for the default data unit from among the encoding unit, the prediction unit and the minimum unit, and the collected data units can be considered to be a data unit that is decoded by the image data decoder 230 in the same encoding mode. Decoding of the current encoding unit can be performed by obtaining information about the encoding mode for each encoding unit determined in this way.
Also, the video decoding apparatus 200 of FIGURE 8 can perform operations of the video decoding apparatus 20 described above with reference to FIGURE 2.
The receiver 210 and the image data extractor and encoding information 220 can perform operations of the analyzer 22 and the symbol decoder 24 of the video decoding apparatus 20. The image data decoder 230 can perform operations of the
<img file="MX337232B_D0081.tif" />
symbol decoder 24 of the apparatus of Ηαι - ^ - ϊ fi nai-i ón. Hp video 20.
Receiver 210 receives a bitstream of an image and image data extractor and encoding information 220 parses image block symbols from the received bitstream.
The encoding information and image data extractor 220 can classify a current symbol into a prefix bit sequence and a suffix bit sequence based on a threshold value determined according to the size of a current block. For example, when the position information of the final coefficient of the transformation coefficient of the transformation unit is decoded, the threshold value for sorting the prefix bit sequence and suffix bit sequence can be determined according to size ( width or height) of the transformation unit. Alternatively, the threshold value can be determined according to cut sizes that include the current transformation unit, the maximum coding unit, the coding unit, the prediction unit, and so on. Alternatively, it can be determined by the maximum index of the intra-prediction mode how many bits of the symbol bit sequence are encoded in the arithmetic encoding as the prefix bit sequence through context modeling in the intra-mode. prediction and how many bits in the bit stream of
<img file="MX337232B_D0082.tif" />
Λ. VAT r A i * institute &: «.? í; o iΆ O £ LA ΡΛΟ.-ί o V
INüUSTíU / U. ? · ~ Symbol are encoded in arithmetic encoding as suffix bitstream in derivation mode.
Arithmetic decoding is done by using a particular arithmetic decoding method for each of the prefix bitstream and suffix bitstream of the current symbol. Arithmetic decoding to determine context modeling according to bit positions can be done in the prefix bitstream, and arithmetic decoding to skip context modeling can be done in the suffix bitstream by using the bypass mode.
After arithmetic decoding, reverse binarization is performed according to a particular binarization method for each of the prefix bitstream and suffix bitstream. The prefix region and suffix region of the symbol can be restored by performing reverse binarization according to the binarization method determined for each of the prefix bit sequence and suffix bit sequence.
The image data decoder 230 can restore image blocks by performing a reverse transformation and prediction on the current block by using
I <sup>:</sup> IMPI
Mexican Institute DELA PROPERTY INDUSTKUU.
<img file="MX337232B_D0083.tif" />
of the current symbol restored through ^ arithmetic coding and reverse binarization.
Consequently, the video decoding apparatus 200 can obtain information about at least one encoding unit that generates the minimum encoding error when the encoding is performed recursively for each maximum encoding unit and can use the information to decode the current image. . In other words, the encoding units having the determined tree structure that are the optimal encoding units in each maximum encoding unit can be decoded.
Accordingly, even if the image data has high resolution and a large amount of data, the image data can be decoded - efficiently and can be restored by using one encoding unit size and one encoding mode. which are adaptively determined according to characteristics of the image data, by using information about an optimal encoding mode received from an encoder.
FIGURE 9 is a conceptual diagram of encoding units according to an embodiment of the present invention.
An encoding unit size can be expressed in width and height and can be 64x64, 32x32, 16x16
<img file="MX337232B_D0084.tif" />
INDUSTRIAL and 8x8. A 64x64 encoding unit can be divided into 64x64, 64x32, 32x64 or 32x32 partitions, a 32x32 encoding unit can be divided into 32x32, 32x16, 16x32 or 16x16 partitions, a 16x16 encoding unit can be divided into partitions. 16x16, 16x8, 8x16, or 8x8 and an 8x8 encoding unit can be divided into 8x8, 8x4, 4x8, or 4x4 partitions.
In video data 310, a resolution is
1920x1080, a maximum size of one encoding unit is 64 and a maximum depth is 2. In 320 video data, a resolution is 1920x1080, a maximum size of one encoding unit is 64, and a maximum depth of 3. 330 video data, a resolution is 352x288, a maximum size of one encoding unit is 16, and a maximum depth is 1. The maximum depth shown in FIGURE 9 indicates the total number of divisions from a maximum encoding unit to a minimum decoding unit.
If a resolution is high or a data amount is large, a maximum size of one encoding unit can be large in order not only to increase the encoding efficiency, but also to accurately reflect the characteristics of an image. Accordingly, the maximum size of the encoding unit for video data 310 and 320 having the highest resolution than video data 330 may be 64.
MEXICAN INSTITUTE L> t LA .ROPIEDAD
INDUSTRIAL
<img file="MX337232B_D0085.tif" />
Since the maximum depth of the video data 310 is 2, the encoding units 315 of the video data 310 may include a maximum encoding unit that has a long axis size of 64 and encoding units that have axis sizes length of 32 and 16 since depths are increased to two layers by dividing the maximum coding unit twice. Meanwhile, since the maximum depth of the video data
330 is 1, encoding units 335 of video data 330 may include a maximum encoding unit that has a long axis size of 16 and encoding units that have a long axis size of 8 since the depths are increased to one layer by dividing the maximum encoding unit once.
Since the maximum depth of the video data 320 is 3, the encoding units 325 of the video data 320 can include a maximum encoding unit that has a long axis size of 64 and encoding units that have axis sizes length of 32, 16 and 8 since depths are increased to 3 layers by dividing the maximum coding unit three times. As depth increases, detailed information can be accurately expressed.
FIGURE 10 is a block diagram of a unit-based image encoder 400
<img file="MX337232B_D0086.tif" />
INSTITUTO MTXKL'.i.'O Dí LA TROPIF.UAD INDUSTRIAL coding invention.
in accordance with a modality of the present
Image encoder 400 performs operations of encoder unit determiner 120 of video encoding apparatus 100 to encode image data. In other words, an intra-predictor 410 performs an intra-prediction in encoding units in an intra mode, between a current frame 405 and a motion estimator 420 and a motion compensator 425 performs an inter-estimation and a motion compensation in encoding units in an Inter mode between the current frame 405 by using the current frame 405 and a reference frame 495.
The data output of the intra-predictor 410, the motion estimator 420 and the motion compensator
425 it is sent as a quantized transform coefficient through a 43 0 transformer and a 440 quantizer. The quantized transform coefficient is restored as data in a spatial domain through a 460 inverse quantizer and a 470 inverse transformer and the restored data in the spatial domain they are sent as reference frame 495 after being postprocessed through an unlock unit 480 and a loop filter unit 490. The quantized transform coefficient can be sent as a 455 bit stream through an entropic encoder
<img file="MX337232B_D0087.tif" />
450 .
In order for the image encoder 400 to be applied to the video encoding apparatus 100, all of the elements of the image encoder 400, i.e. intra-predictor 410, motion estimator 420, motion compensator 425, transformer 430, quantizer 440, entropic encoder 450, reverse quantizer 460, reverse transformer 470, unlock unit 480 and loop filter unit 490 perform operations based on each encoding unit among the encoding units having a tree structure while considering the maximum depth of each maximum encoding unit.
Specifically, intra-predictor 410, motion estimator 420, and motion compensator 425 determine partitions and a prediction mode of each encoding unit among the encoding units having a tree structure while considering the maximum size and the maximum depth of a maximum encoding unit, current and transformer 430 determines the size of the transformation unit in each encoding unit from among the encoding units having a tree structure.
In particular, the entropic encoder 450 can perform symbol encoding in the prefix region, PI
Mexican Institute of Industrial Property
<img file="MX337232B_D0088.tif" />
and the suffix region when classifying a symbol in the region
Mfca —— MMW WlWilim 11TU41 U of prefix and suffix region according to a predetermined threshold value and use different binarization and arithmetic coding methods with respect to prefix region and suffix region.
The threshold value for classifying the symbol into the prefix region and suffix region can be determined based on the symbol's data unit sizes, i.e. a cut, a maximum encoding unit, an encoding unit, a unit of prediction, a transformation unit, etc.
FIGURE 11 is a block diagram of an image decoder 500 based on encoding units, in accordance with an embodiment of the present invention.
An analyzer 510 analyzes the encoded image data that is decoded and the encoding information required for decoding a bit stream 505. The encoded image data is sent as reverse quantized data through an entropic decoder 520 and an inverse quantizer 530, and the inverse quantized data is restored to image data in a spatial domain through an inverse transformer 540.
An intra-predictor 550 performs an intra-prediction
<img file="MX337232B_D0089.tif" />
INSTITUTO MF.X.TM 'Ό OSLA PRO, TEDA O industrial
<img file="MX337232B_D0090.tif" />
in encoding units in an intra r? x-> n τ-pg mode relative to image data in the spatial domain and a motion compensator 560 performs motion compensation in encoding units in an inter mode by using a reference frame 585.
Image data in the spatial domain, which passed through intra-predictor 550 and motion compensator 560, can be sent as a restored frame 595 after being post-processed via an unlock unit 570 and a Loop Filtering Unit 580. Also, the image data, which is post-processed through the Unlocking Unit 57 0 and the Loop Filtering Unit 580, can be sent as the reference frame 585.
For the purpose of decoding the image data in the image data decoder 230 of the video decoding apparatus 200, the image decoder 500 can perform operations that are performed after the analyzer 510.
In order for the image decoder 500 to be applied to the video decoding apparatus 200, all the elements of the image decoder 500, i.e. analyzer 510, entropic decoder 520, inverse quantizer 530, inverse transformer 540, intrapredictor 550 , motion compensator 560, unit
<img file="MX337232B_D0091.tif" />
MEXICAN INSTITUTE DS LA PRCPIÍ U. '. U
INDUSTRIAL unlocking 570 and loop filtering unit · 50 0 roalisan, operations based on coding units that have a tree structure for each maximum coding unit.
Specifically, intra-predictor 550 and motion compensator 560 perform partition-based operations and a prediction mode for each of the encoding units that have a tree structure, and inverse transformer 540 performs operations based on the size of one transformation unit for each coding unit.
In particular, the entropic decoder 520 can perform symbol decoding for each of 'a prefix bit sequence and a suffix bit sequence by classifying the parsed symbol bit sequence into the prefix bit sequence and sequence of suffix bits according to a threshold value, default and use different arithmetic decoding and binarization methods with respect to prefix bitstream and suffix bitstream.
The threshold value for classifying the symbol bit stream into the prefix bit stream and suffix bit stream can be determined based on symbol data unit sizes, i.e. a cut, a maximum encoding unit , a unit of
<img file="MX337232B_D0092.tif" />
DS LA PRO «S3aD INDUSTRIAL
<img file="MX337232B_D0093.tif" />
encoding, a prediction unit, a transformation unit, and so on.
FIGURE 12 is a diagram showing deeper encoding units according to depths and partitions, according to an embodiment of the present invention.
The video encoding apparatus 100 and the video decoding apparatus 200 use hierarchical encoding units in order to consider characteristics of an image. A maximum height, maximum width and maximum depth of the encoding units can be adaptively determined according to the image characteristics or can be set differently by a user. The sizes of the deepest coding units according to the depths can be determined according to the maximum, predetermined size of the coding unit.
In a hierarchical structure 600 of the coding units, according to an embodiment of the present invention, the maximum height and maximum width of the coding units are each 64 and the maximum depth is 4. Herein, the depth maximum indicates that a total number of times division is performed from the maximum encoding unit to the minimum encoding unit. Since a depth increases over a
X
MEXICAN INSTITUTE
OF THE Ρ, ΤΟΡΙΕΟλΟ
INDUSTRIAL
<img file="MX337232B_D0094.tif" />
vertical axis of hierarchical structure 600, ΙΙΙΙϋ á<sup>,</sup>ÍFÜra * '<sup>,</sup>and a width of the deepest coding unit are divided each. Also, a prediction unit and partitions, which are the basis for the prediction coding of each deeper coding unit, are shown along a horizontal axis of hierarchical structure 600.
In other words, an encoding unit 610 is a maximum encoding unit in hierarchical structure 600, where a depth of 0 and a size, ie height by width, is 64x64. The depth increases along the vertical axis and there is a 620 encoder unit that is 32x32 in size and 1 in depth, a 630 encoder that is 16x16 in size and a depth of 2, a 640 encoder unit which has a size of 8x8 and a depth of 3 and a coding unit 650 that has a size of 4x4 and a depth of 4. Coding unit 650 which is 4x4 in size and depth of 4 is a minimal coding unit.
The prediction unit and partitions of a
<td>unit of</td><td>coding</td><td>I know</td><td>dispose</td><td>the length</td><td>of the</td><td>axis</td>
<td>horizontal</td><td>agree</td><td>with</td><td colspan="2">every depth.</td><td colspan="2">In others</td>
<td>words,</td><td>if unity</td><td>of</td><td>coding</td><td>610 that</td><td>has</td><td>the</td>
size 64x64 and depth 0 is a unit of
<img file="MX337232B_D0095.tif" />
INSTITUTO .MEXICANO
OF THE
INDUSTRIAL
<img file="MX337232B_D0096.tif" />
prediction, the prediction unit can be divided. ..in. partitions included in encoding unit 610, that is, a 610 partition that is 64x64 in size, 612 partitions that are 64x32 in size, 614 partitions that are 32x64 in size, or 616 partitions that are 32x32 in size.
Similarly, a 620 encoding unit prediction unit having the size of 32x32 and a depth of 1 can be divided into partitions included in the 620 encoding unit, i.e. a 620 partition having a size of 32x32, 622 partitions that are 32x16 in size, 624 partitions that are 16x32 in size and 626 partitions that are 16x16 in size.
Similarly, a 630 encoding unit prediction unit having the size of 16x16 and depth of 2 can be divided into partitions included in the 630 encoding unit, i.e. a partition having a size of 16x16 included in the unit Encoding 630, 632 partitions that are 16x8 in size, 634 partitions that are 8x16 in size, and 636 partitions that are 8x8 in size.
Similarly, a prediction unit of coding unit 640 having the size of 8x8 and depth of 3 can be divided into partitions included in coding unit 64 0, i.e. a partition that π<sup>Λ</sup>
MEXICAN INSTITUTE '
DELÁfRpi'líiS-.O
1NBÜ3TR¡hL has a size of 8x8 included in the coding unit
<img file="MX337232B_D0097.tif" />
640, 642 partitions that are 8x4 in size, 644 partitions that are 4x8 in size, and 646 partitions that are 4x4 in size.
The 650 encoding unit having the size of 4x4 and the depth of 4 is the minimum encoding unit and one encoding unit of the lowest depth. A prediction unit of encoding unit 650 is assigned only to a partition that is 4x4 in size.
For the purpose of determining at least the encoded depth of the encoding units that
<td>constitute</td><td>the</td><td>Unit</td><td>of</td><td>coding</td><td>maximum 610, the</td>
<td>determiner</td><td>of</td><td>units</td><td>of</td><td>coding</td><td>120 of the</td>
<td>coding</td><td>of</td><td>video</td><td> 100</td><td>make a</td><td>coding for</td>
<td>units of</td><td colspan="2">coding</td><td>than</td><td>correspond</td><td>at every depth</td>
included in the maximum encoding unit 610.
A number of deeper encoding units according to depths that include data in the same interval and the same size increases as the depth increases. For example, four coding units corresponding to a depth of 2 are required to cover data that is included in a coding unit corresponding to a depth of 1. Therefore, for the purpose of comparing the results of
INSTITUTO MSZICAKO DtU PRCT'I¿5A0
INDUSTRIAL
<img file="MX337232B_D0098.tif" />
encoding the same water data · - with —-Lae ».
depths, the coding unit corresponding to the depth of 1 and four coding units corresponding to the depth of 2 are each coded.
For the purpose of encoding for a current depth from among the depths, a smaller encoding error for the current depth can be selected by performing an encoding for each prediction unit in the encoding units corresponding to the current depth, along the horizontal axis of hierarchical structure 600. Alternatively, the minimum coding error can be found by comparing the smallest coding errors according to depths and coding for each depth as the depth increases along the vertical axis of hierarchical structure 600. A depth and partition that have the minimum encoding error in encoding unit 610 can be selected as the encoded depth and a partition type of encoding unit 610.
FIGURE 13 is a diagram for describing a relationship between a coding unit and transformation units, in accordance with an embodiment of the present invention.
The 100 or 200 video encoding apparatus
<img file="MX337232B_D0099.tif" />
encodes or decodes an image in accordance with decoding codes that have sizes smaller than or equal to one maximum encoding unit for each maximum encoding unit. Transformation unit sizes for transformation during encoding can be selected based on data units that are no larger than a corresponding encoding unit.
For example, in the video encoding apparatus
100 or 200, if a 710 encoding unit size is
64x64, transformation can be performed by using 720 transformation units that have a size of
32x32.
Also, data from the 710 encoding unit that is 64x64 in size can be encoded by performing the transformation in each of the transformation units that are 32x32, 16x16, 8x8, and 4x4 in size, which are smaller than 64x64, and then you can select a transformation unit that has the smallest encoding error.
FIGURE 14 is a diagram for describing encoding information of encoding units corresponding to an encoded depth, in accordance with an embodiment of the present invention.
The output unit 130 of the coding apparatus
<img file="MX337232B_D0100.tif" />
INSTITUTO MSXIC.'NO DE LA MOPi; ft »o
INOUSTRIAL
<img file="MX337232B_D0101.tif" />
video code 100 can encode and transmit ί An an n about a partition type, information 810 about a prediction mode, and information 82 0 about a transformation unit size for each encoding unit that corresponds to an encoded depth , as information about a coding mode.
Information 800 indicates information about a shape of a partition obtained by dividing a prediction unit from a current encoding unit, wherein the partition is a data unit for prediction encoding from the current encoding unit. For example, a current CU_0 encoding unit that is 2Nx2N in size can be split into any one of an 802 partition that is 2Nx2N in size, an 804 partition that is 2NxN in size, an 806 partition that is Nx2N in size and an 808 partition that is NxN in size. In this document, information 800 about a partition type is set to indicate one of partition 804 that is 2NxN in size, partition 806 that is Nx2N in size, and partition 808 that is NxN in size.
Information 810 indicates a prediction mode for each partition. For example, information 810 may indicate a prediction encoding mode performed on a partition indicated by information 800, i.e., an intra 812 mode, an Inter 814 mode, or a skip mode 816.
IM
MEXICAN INSTITUTE of industrial disaster
<img file="MX337232B_D0102.tif" />
Information 820 indicates a transformation - (1111 lldll based on when the transformation is performed in the current encoding unit. For example, the transformation unit may be a first intra-transformation unit 822, a second intra-unit -transformation 824, a first intertransformation unit 826 or a second intertransformation unit 828.
The image data extractor and encoding information 220 of the video decoding apparatus 200 can extract and use the information 800, 810 and 820 for decoding, according to each deeper encoding unit.
FIGURE 15 is a diagram showing deeper encoding units according to depths, in accordance with an embodiment of the present invention.
The division information can be used to indicate a change in depth. The division information indicates whether a coding unit of a current depth is divided into coding units of a lower depth.
A prediction unit 910 for the prediction coding of a code unit 900 having a depth of 0 and a size of 2N_0x2N_0 may include partitions of a partition type 912 having a size of the Mexican industrial property institute.
<img file="MX337232B_D0103.tif" />
2N_Ox2N_0, a partition type 914 that is A & 2N_0xN_0, a partition type 916 that is N_0x2N_0, and a partition type 918 that is N_OxN_0. FIGURE 15 only illustrates partition types 912 through 918 which are obtained by symmetrically dividing prediction unit 910, but the partition type is not limited thereto, and prediction unit 910 partitions may include asymmetric partitions. , partitions that have a default shape, and partitions that have a geometric shape.
Prediction encoding is performed repeatedly on one partition that is 2N_0x2N_0 in size, two partitions that are 2N_0xN_0 in size, two partitions that are N_0x2N_0 in size, and four partitions that are N_0xN_O in size, according to each type of partition. Prediction encoding in an intra mode and an Inter mode can be performed on partitions that have the sizes 2N_0x2N_0, N_0x2N_0, 2N_0xN_0, and N_0xN_0. Prediction encoding in a bypass mode is performed only on the partition that is 2N_0x2N_0 in size.
Coding errors that include prediction coding in partition types 912 through 918 are compared and the smallest coding error is determined between the partition types. If an error by (TUTO MEXICANO
Industrial property
<img file="MX337232B_D0104.tif" />
encoding is the smallest in one of a kind <sup>1 </sup>partition 912 to 916, the prediction unit 910 cannot be divided into a lower depth.
If the encoding error is the smallest in partition type 918, a depth is changed from 0 to 1 to divide partition type 918 in operation 920, and encoding is performed repeatedly on 930 encoding units that have a depth of 2 and a size of N_0xN_0 to look for a minimal encoding error.
A prediction unit 940 for the prediction coding of the coding unit 930 having a depth of 1 and a size of 2N_lx2N_l (= N_0xN_0) can
<td>include partitions of a partition type 942</td><td>than</td><td>has</td><td>a</td>
<td>size of 2N_lx2N_l, a partition type 944</td><td>than</td><td>has</td><td>a</td>
<td>size of 2N_lxN_l, a partition type 946</td><td>than</td><td>has</td><td>a</td>
<td>N size lx2N_l and a partition type 94 8</td><td>than</td><td>has</td><td>a</td>
<td>size of N_lxN_l.</td><td></td><td></td><td></td>
<td>If a coding error is the most</td><td colspan="2">small in</td><td>the</td>
partition type 948, a depth is changed from 1 to 2 to divide the partition type 948 in operation 950 and the encoding is performed repeatedly on the 960 encoding units, which have a depth of 2 and a size of N_2xN_2 for look for a minimal coding error.
When a maximum depth is d, the unit of ιι mi ιιι · | ——
<img file="MX337232B_D0105.tif" />
MEXICAN INSTITUTE OF PROPERTY
INDUSTRIAL
<img file="MX337232B_D0106.tif" />
encoding according to each depth π .... ee can »be performed up to when a depth becomes d-1, and the division information can be encoded up to when a depth is one from 0 to d-2. In other words, when coding is performed up to when the depth is d-1 after a coding unit corresponding to a depth of d-2 is divided in step 970, a prediction unit 990 for the prediction coding a 980 encoding unit that has a depth of d-1 and a size of 2N_ (dl) x2N_ (dl) can include partitions of a partition type 992 that is 2N_ (d-1) x2N_ (d- one) , a partition type 994 that is 2N_ (dl) xN_ (dl), a partition type 996 that is N_ (dl) x2N_ (dl), and a partition type 998 that is N __ ( dl) xN_ (dl).
Prediction encoding can be performed repeatedly on one partition that is 2N_ (dl) x2N_ (dl) in size, two partitions that are 2N_ (dl) xN_ (dl) in size, two partitions that are N_ ( dl) x2N_ (dl), four partitions that have a size of N_ (dl) xN_ (dl) from partition types 992 to 998 to find a partition type that has minimal encoding error.
Even when partition type 998 has minimal encoding error, since a depth
IMPI
MEXICAN INSTITUTE Dt LA PXOP.'f D / .iT industrial
<img file="MX337232B_D0107.tif" />
maximum is d, a CU_ (dl) encoding unit having a depth of d-1 is no longer divided to a shallower depth, and a coded depth for the encoding units constituting a current maximum encoding unit 900 is determined to be it is d-1 and a partition type of the current maximum encoding unit 900 can be determined to be N_ (d-1) xN_ (d-1). Also, since the maximum depth is d and a minimum 980 encoding unit that has the lowest depth of d-1 is no longer divided to a lower depth, the division information for the 980 minimum encoding unit is not set.
A 999 data unit can be a minimum unit for the current maximum encoding unit. A minimum unit according to an embodiment of the present invention may be a rectangular data unit obtained by dividing a minimum coding unit 980 by 4. By repeatedly performing the encoding, the video encoding apparatus 100 can select a depth having the smallest encoding error by comparing encoding errors according to the depths of the encoding unit 900 to determine an encoded depth and set a type of corresponding partition and a prediction mode as a coding mode of the coded depth.
As such, the minimum coding errors of
<img file="MX337232B_D0108.tif" />
According to the depths they are compared at all depths from 1 to d and a depth that has the smallest coding error can be determined as a coded depth. The encoded depth, the prediction unit partition type and the prediction mode can be encoded and transmitted as information about an encoding mode. Also, since a coding unit is divided from a depth of 0 to a coded depth, only the coded depth division information is set to 0 and the depth division information excluding the coded depth is set to 1.
The image data and encoding information extractor 220 of the video decoding apparatus 200 can extract and use the information about the encoded depth and the prediction unit of the encoding unit 900 to decode partition 912. The video decoding apparatus 200 can determine a depth, at which the division information is 0, as a depth encoded by using division information according to depths and can use information about the encoding mode of the corresponding depth for decoding.
FIGURES 16-18 are diagrams to describe a relationship between encoding units,
<img file="MX337232B_D0109.tif" />
l Ν 5 7! ? 'J? Ο Μ £ XIC A Ν Ο DE LA? AO? I £ 'úAD
INDUSTRIAL
<img file="MX337232B_D0110.tif" />
prediction units and transformation units, according to an embodiment of the present invention.
The encoding units 1010 are encoding units that have a tree structure, corresponding to encoded depths that are determined by the video encoding apparatus 100, in a maximum encoding unit. Prediction units 1060 are prediction unit partitions of each of the 1010 encoding units and transformation units 1070 are transformation units of each of the 1010 encoding units.
When a depth of a maximum coding unit is 0 in the coding units
1010, the depths of coding units 1012 and 1054 are 1, the depths of coding units 1014, 1016, 1018, 1028, 1050 and 1052 are 2, the depths of coding units 1020, 1022,
1024, 1026, 1030, 1032 and 1048 are 3 and the depths of the 1040, 1042, 1044 and 1046 encoding units are 4.
In 1060 prediction units, some 1014, 1016, 1022, 1032, 1048, 1050 encoding units,
1052 and 1054 are obtained by dividing the encoding units into the 1010 encoding units. In other words, the partition types in the 1014, 1022, 1050, and 1054 encoding units have a size of
MEXICAN INSTITUTE OF PROPERTY
INDUSTRIAL
<img file="MX337232B_D0111.tif" />
2NxN, the partition types in cüilff units have 1016, 1048, and 1052 each have a size of Nx2N and a partition type of the 1032 encoding unit has a size of NxN. The prediction units and partitions of the 1010 encoding units are smaller than or equal to each encoding unit.
The transformation or reverse transformation is performed on image data from encoding unit 1052 in transformation units 1070 into a data unit that is smaller than encoding unit 1052. Also, encoding units 1014, 1016, 1022, 1032, 1048, 1050, and 1052 in transformation units 1070 are different from those in prediction units 1060 in terms of sizes and shapes. In other words, the video encoding and decoding apparatuses 100 and 200 can perform intra-prediction, motion estimation, motion compensation, transformation and inverse transformation individually in one data unit in the same encoding unit.
Accordingly, encoding is performed recursively on each of the encoding units having a hierarchical structure in each region of a maximum encoding unit to determine an optimal encoding unit and thus encoding units having an structure
<img file="MX337232B_D0112.tif" />
recursive tree. The encoding information may include division information about an encoding unit, information about a partition type, information about a prediction mode, and information about a size of a transformation unit. The Table shows the encoding information that can be set by the video encoding and decoding apparatus 100 and 200.
Table 1
<td colspan="5">Division 0 information (Coding in Coding Unit</td><td rowspan="2">Information of Division 1</td>
<td></td><td colspan="4">which has a Size of 2Nx2N and a Current Depth of d)</td>
<td>Mode of</td><td colspan="2">Partition Type</td><td colspan="2">Transformation Unit Size</td><td></td>
<td>Prediction</td><td></td><td></td><td></td><td></td><td></td>
<td>Intra Inter</td><td>Kind of Partition Symmetric</td><td>Kind of Partition Asymmetric</td><td>Information of Division 0 of the Unit of Transformation</td><td>Information of Division 1 of the Unit of Transformation</td><td>Encode Repeatedly the units of</td>
<td>Omission (Alone 2Nx2N)</td><td>2Nx2N 2 NxN Nx2N NxN</td><td>2NxnU 2NxnD nLx2N nRx2N</td><td>2Nx2N</td><td>NxN (Symmetrical Type) N / 2XN / 2 (Asymmetric Type)</td><td>Coding they have a Depth Lower d d + 1</td>
The output unit 130 of the video encoding apparatus 100 can send the encoding information about the encoding units having a tree structure and the image data extractor and encoding information 220 of the video decoding apparatus 200 can extract encoding information
<img file="MX337232B_D0113.tif" />
about the encoding units that <sup>1</sup> they have a tree structure of a received bitstream.
The division information indicates whether a current encoding unit is divided into encoding units of a lower depth. If the division information of a current depth d is 0, a depth, in which a current encoding unit is no longer divided into a lower depth, is an encoded depth and thus information about a partition type , prediction mode and size of a transformation unit can be defined for the coded depth. If the current encoding unit is further divided according to the division information, the encoding is performed independently into four divided encoding units of a lower depth.
A prediction mode can be one of an intra mode, an inter mode, and a skip mode. Intra mode and inter mode can be defined on all partition types and bypass mode is defined only on a partition type that is 2Nx2N in size.
Information about the partition type can indicate symmetric partition types that have sizes of 2Nx2N, 2NxN, Nx2N, and NxN, which are obtained by symmetrically dividing a height or width of a prediction unit and asymmetric partition types that have sizes
IMPI
MEXICAN INSTITUTE OF INDUSTRIAL PROPERTY
<img file="MX337232B_D0114.tif" />
of 2NxnU, 2NxnD, nLx2N and nRx2N, which are effected by dividing the height or width of the prediction unit asymmetrically. The asymmetric partition types having the sizes of 2NxnU and 2NxnD can be obtained respectively by dividing the height of the prediction unit into 1: 3 and 3: 1 and the asymmetric partition types having the sizes of nLx2N and nRx2N can be obtained Obtain respectively by dividing the width of the prediction unit into 1: 3 and 3: 1.
The transformation unit size can be set to be two types in intra mode and two types in inter mode. In other words, if the division information of the transformation unit is 0, the size of the transformation unit can be 2Nx2N, which is the size of the current encoding unit. If the division information of the transformation unit is 1, the transformation units can be obtained by dividing the current encoding unit. Also, if a partition type of the current encoding unit that is 2Nx2N is a symmetric partition type, a transform unit size can be NxN and if the partition type of the current encoding unit is a Asymmetric partition type, the transformation unit size can be N / 2xN / 2.
Coding information about coding units that have a tree structure can
MEXICAN INSTITUTE
OF THE PROPERTY
INDUSTRIAL codfrf iuaeítfir ^ ge a coding unit crue include at least one of a unit of corresponds to a coded depth, prediction and a minimum unit. The unit of corresponds to the coded depth can include at least one of a prediction unit and a minimum unit that contains the same coding information.
Accordingly, it is determined whether the adjacent data units are included in the same encoding unit that corresponds to the encoded depth by comparing encoding information from the adjacent data units. Also, a corresponding coding unit which corresponds to a coded depth is determined by using coding information from a data unit and thus a coded depth distribution can be determined in a maximum coding unit.
Therefore, if a current encoding unit is predicted based on encoding information from
I adjacent data units, the encoding information of data units in deeper encoding units that are adjacent to the current encoding unit can be directly referenced and used.
Alternatively, if a current encoding unit is predicted based on encoding information from adjacent data units, the data units that are
<img file="MX337232B_D0115.tif" />
MEXICAN INSTITUTE OF PROPERTY
INDUSTRIAL
<img file="MX337232B_D0116.tif" />
Adjacent to the current encoding unit are searched using encoded information from the data units and the adjacent, searched encoding units can be referenced to predict the current encoding unit.
FIGURE 19 is a diagram for describing a relationship between a coding unit, a prediction unit, a prediction unit, and a transformation unit, according to. Coding mode information from Table 1.
A maximum coding unit 1300 includes coding units 1302, 1304, 1306, 1312, 1314, 1316 and 1318 of the coded depths. In this document, since the coding unit 1318 is a coding unit of a coded depth, the division information can be set to 0. Information about a partition type of the 1318 encoding unit that is 2Nx2N in size can be set to be one of a 1322 partition type that is 2Nx2N in size, a 1324 partition type that is 2NxN, a type of
<td>partition</td><td> 1326</td><td>than</td><td>has</td><td>a</td><td>size</td><td>of Nx2N,</td><td>a</td><td>type</td><td>of</td>
<td>partition</td><td> 1328</td><td>than</td><td>has</td><td>a</td><td>size</td><td>of NxN,</td><td>a</td><td>type</td><td>of</td>
<td>partition</td><td> 1332</td><td>than</td><td>has</td><td>a</td><td>size</td><td>2NxnU,</td><td>a</td><td>type</td><td>of</td>
<td>partition</td><td> 1334</td><td>than</td><td>has</td><td>a</td><td>size</td><td>from 2NxnD,</td><td>a</td><td>type</td><td>of</td>
<td>partition</td><td> 1336</td><td>than</td><td>has</td><td>a</td><td colspan="2">nLx2N size and</td><td>a</td><td>type</td><td>of</td>
partition 1338 that is nRx2N in size.
MEXICAN INSTITUTE OF PROPERTY
INDUSTRIAL
<img file="MX337232B_D0117.tif" />
The division information (size indicator of
TU) of a transformation unit is a class of a transformation index and a transformation unit size that corresponds to the transformation index can vary according to a type of the prediction unit or the partition of the encoding unit.
<td></td><td>For example,</td><td>when</td><td>the</td><td>type</td><td>of</td><td>partition</td><td>I know</td>
<td>establishes</td><td>to be</td><td colspan="2">symmetrical,</td><td>is</td><td>say</td><td>the type</td><td>of</td>
<td>partition</td><td> 1322, 1324,</td><td> 1326</td><td>or</td><td> 1328,</td><td>a</td><td>Unit</td><td>of</td>
transformation 1342 that has a size of 2Nx2N is set if the division information of a transformation unit is 0 and a 1344 transformation unit that has a size of NxN is set if a TU size indicator is 1.
When the partition type is set to be asymmetric, i.e. partition type 1332, 1334,
1336 or 1338, a 1352 transformation unit that has a size of 2Nx2N is set if a TU size indicator is 0 and a 1354 transformation unit that is N / 2xN / 2 size is set if a TU size indicator is 1.
Referring to FIGURE 19, the TU size indicator is an indicator that has a value of 0 or 1, but the TU size indicator is not limited to 1 bit and a transformation unit can be hierarchically divided having a structure tree-like while the TU size indicator increases from 0. The indicator of
Tr
Γ
ΡΓ
- '' • MSXICANO
Ι α ΑΛΟΡΙΠΟΛΟ
WUSTRML
<img file="MX337232B_D0118.tif" />
TU size can be used as a modality of the · ,,, transformation index.
In this case, if the transformation information of the transformation unit is used together with the size of the maximum transformation unit and the size of the minimum transformation unit, the size of the transformation unit that is actually used can be expressed . The video encoding apparatus 100 can encode maximum transformation unit size information, minimum transformation unit size information, and maximum transformation unit division information. The maximum transformation unit size information, the minimum transformation unit size information and the maximum transformation unit division information encoded can be inserted into an SPS. The video decoding apparatus 200 can perform the video decoding using the maximum transformation unit size information, the minimum transformation unit size information and the maximum transformation unit division information.
For example, if a current encoding unit is 64x64 in size and the maximum transformation unit size is 32x32, when the transformation unit division information is 0, a transformation unit size can be set to 32x32 when
MEXICAN INSTITUTE of LA PRONEDa industrial
<img file="MX337232B_D0119.tif" />
the division information of the transfer unit ae
1, the transformation unit size can be set to 16x16 and when the transformation unit division information is 2, the transformation unit size can be set to 8x8.
Alternatively, if the current encoding unit is 32x32 in size and the minimum transformation unit size is 32x32, when the transformation unit division information is 1, the transformation unit size can be set to 32x32 and since the size of the transformation unit is equal to or greater than 32x32, no further division information of the transformation unit can be set.
Alternatively, if the current encoding unit is 64x64 in size and the maximum transformation unit division information is 1, the transformation unit division information can be set to 0 or 1 and no other information can be set. of division of the transformation unit.
Therefore, if the division information of the maximum transformation unit is defined as
MaxTransformSizelndex, if a minimum transformation unit size is defined as MinTransformSize and if a transformation unit size is defined as
RootTuSize when drive division information
100
MEXICAN INSTITUTE GIVES THE PRO? I6OAD industrial
<img file="MX337232B_D0120.tif" />
of transformation is 0, CurrMinTuSize the cudi'efl a Luiuuííu of the minimum transformation unit available in the current coding unit can be defined by the formula (1) below
CurrMinTuSize = max (MinTransformSize, ΠοοίΤυβίζβ / ^ ΛΜθχΤΓβηβίοΓΓηβίζβΙηόθχ)) ... (1) Compared to CurrMinTuSize which is the size of the minimum transformation unit available in the current encoding unit, RootTuSize which is a unit size transformation when the division information of the transformation unit is 0 can represent a maximum transformation unit size that can be adopted in a system. In other words, according to formula (1),
RootTuSize / (2 ^ MaxTransformSizelndex) is a transformation unit size into which RootTuSize is divided a number of times corresponding to the division information of the maximum transformation unit and MinTransformSize is a size of the minimum transformation unit and in this way a smaller value of between
RootTuSize / (2<sup>TO</sup>MaxTransformSizeIndex) and MinTransformSize can be CurrMinTuSize which is the size of the minimum transformation unit available in the current encoding unit.
The RootTuSize which is the size of the unit
101
MEXICAN INSTITUTE OF PROPERTY
INDUSTRIAL maximum transformation may vary according to a prediction mod¿T.
For example, if a current prediction mode is an Inter mode, the RootTuSize can be determined according to formula (2) below. In formula (1),
MaxTransformSize indicates a maximum transformation unit size, and PUSize indicates a current prediction unit size.
RootTuSize = min (MaxTransformSize, PUSize) ......... (2)
In other words, if the current prediction mode is an Inter mode, the RootTuSize which is a size of the transformation unit when the transformation information of the transformation unit is 0 can be set to a smaller value of between the size of the maximum transformation unit and the size of the current prediction unit.
If a prediction mode of a current partition unit is an intra mode, the RootTuSize can be determined according to formula (3) below. PartitionSize indicates a size of the current partition drive.
RootTuSize = min (MaxTransformSize, PartitionSize) ......... (3)
In other words, if the current prediction mode is an intra mode, the RootTuSize can be set to a smaller value between the size of the maximum transformation unit and the size of the partition unit
102
<img file="MX337232B_D0121.tif" />
current.
MEXICAN INSTITUTE OF PROPERTY
INDUSTRIAL
<img file="MX337232B_D0122.tif" />
However, the size of the current RootTuSize maximum transformation unit that varies according to a partition unit prediction mode is just an example and a factor in determining the size of the current maximum transformation unit is not limited thereto. .
Image data from a spatial domain is encoded for each encoding unit having a tree structure by using a video encoding method based on the encoding units having a tree structure described above with reference to FIGS. 7 to 19 and the decoding is performed in each maximum encoding unit by using a decoding method based on the encoding units having a structure tree and in this way the image data of the spatial domain is restored, thereby restoring a video which is an image and a sequence of images. The restored video can be played through a playback device, can be stored on a storage medium, or can be transmitted over a network.
The embodiments of the present invention can be written as computer programs and can be implemented in general-purpose digital computers running the
103
<img file="MX337232B_D0123.tif" />
<img file="MX337232B_D0124.tif" />
MEXICAN INSTITUTE H THE PROPERTY
INDUSTRIAL
<img file="MX337232B_D0125.tif" />
programs using a computer-readable recording medium. Examples of the computer-readable recording medium include magnetic storage media (eg, ROMs, floppy disks, hard drives, etc.) and optical recording media (eg, CD-ROMs or DVDs).
While this invention has been particularly shown and described with reference to preferred embodiments thereof, those of ordinary experience in the field will understand that various changes in form and details may be made herein without departing from the spirit and scope of the invention as defined by the appended claims. Preferred modalities are to be considered in a descriptive sense only and not for purposes of limitation. Therefore, the scope of the invention is not defined by the detailed description of the invention but by the appended claims and all differences within the scope will be interpreted as being included in the present invention.
It is noted that in relation to this date, the best method known by the applicant to put the aforementioned invention into practice is the one that is clear from the present description of the invention.
104
Contents64
140 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4 Sheet 5 Sheet 6 Sheet 7 Sheet 8 Sheet 9 Sheet 10 Sheet 11 Sheet 12 Sheet 13 Sheet 14 Sheet 15 Sheet 16 Sheet 17 Sheet 18 Sheet 19 Sheet 20 Sheet 21 Sheet 22 Sheet 23 Sheet 24 Sheet 25 Sheet 26 Sheet 27 Sheet 28 Sheet 29 Sheet 30 Sheet 31 Sheet 32 Sheet 33 Sheet 34 Sheet 35 Sheet 36 Sheet 37 Sheet 38 Sheet 39 Sheet 40 Sheet 41 Sheet 42 Sheet 43 Sheet 44 Sheet 45 Sheet 46 Sheet 47 Sheet 48 Sheet 49 Sheet 50 Sheet 51 Sheet 52 Sheet 53 Sheet 54 Sheet 55 Sheet 56 Sheet 57 Sheet 58 Sheet 59 Sheet 60 Sheet 61 Sheet 62 Sheet 63 Sheet 64 Sheet 65 Sheet 66 Sheet 67 Sheet 68 Sheet 69 Sheet 70 Sheet 71 Sheet 72 Sheet 73 Sheet 74 Sheet 75 Sheet 76 Sheet 77 Sheet 78 Sheet 79 Sheet 80 Sheet 81 Sheet 82 Sheet 83 Sheet 84 Sheet 85 Sheet 86 Sheet 87 Sheet 88 Sheet 89 Sheet 90 Sheet 91 Sheet 92 Sheet 93 Sheet 94 Sheet 95 Sheet 96 Sheet 97 Sheet 98 Sheet 99 Sheet 100 Sheet 101 Sheet 102 Sheet 103 Sheet 104 Sheet 105 Sheet 106 Sheet 107 Sheet 108 Sheet 109 Sheet 110 Sheet 111 Sheet 112 Sheet 113 Sheet 114 Sheet 115 Sheet 116 Sheet 117 Sheet 118 Sheet 119 Sheet 120 Sheet 121 Sheet 122 Sheet 123 Sheet 124 Sheet 125 Sheet 126 Sheet 127 Sheet 128 Sheet 129 Sheet 130 Sheet 131 Sheet 132 Sheet 133 Sheet 134 Sheet 135 Sheet 136 Sheet 137 Sheet 138 Sheet 139 Sheet 140
154 members in 27 offices
Priority claims9
| Document | Office | Kind | Date |
|---|---|---|---|
| 201161502038 | United States of America | P | |
| 201161502038 | United States of America | P | |
| 61502038 | United States of America | – | |
| 2012005087 | Republic of Korea | W | |
| 2012005087 | Republic of Korea | W | |
| 61502038 | – | – | – |
| KR1205087 | – | – | – |
| US201161502038P | – | – | – |
| WO2012KR05087 | – | – | – |
Members154
| Document | Office | Kind | |
|---|---|---|---|
| CA2840481A1 | Canada | A1 | |
| CA2975695A1 | Canada | A1 | |
| WO2013002555A2 | World Intellectual Property Organization (WIPO) | A2 | |
| KR20130002285A | Republic of Korea | A | |
| TW201309031A | Taiwan Province of China | A | |
| WO2013002555A3 | World Intellectual Property Organization (WIPO) | A3 | |
| AU2012276453A1 | Australia | A1 | |
| MX2014000172A | Mexico | A | |
| CN103782597A | China | A | |
| EP2728866A2 | European Patent Office (EPO) | A2 | |
| KR20140075658A | Republic of Korea | A | |
| JP2014525166A | Japan | A | |
| KR101457399B1 | Republic of Korea | B1 | |
| KR20140146561A | Republic of Korea | A | |
| EP2728866A4 | European Patent Office (EPO) | A4 | |
| EP2849445A1 | European Patent Office (EPO) | A1 | |
| KR20150046772A | Republic of Korea | A | |
| KR20150046773A | Republic of Korea | A | |
| KR20150046774A | Republic of Korea | A | |
| US2015139299A1 | United States of America | A1 | |
| US2015139332A1 | United States of America | A1 | |
| EP2884749A1 | European Patent Office (EPO) | A1 | |
| JP5735710B2 | Japan | B2 | |
| US2015181224A1 | United States of America | A1 | |
| US2015181225A1 | United States of America | A1 | |
| RU2014102581A | Russian Federation | A | |
| JP2015149770A | Japan | A | |
| JP2015149771A | Japan | A | |
| JP2015149772A | Japan | A | |
| JP2015149773A | Japan | A | |
| JP2015149774A | Japan | A | |
| ZA201400647B | South Africa | B | |
| KR101560549B1 | Republic of Korea | B1 | |
| KR101560550B1 | Republic of Korea | B1 | |
| KR101560551B1 | Republic of Korea | B1 | |
| KR101560552B1 | Republic of Korea | B1 | |
| US9247270B2 | United States of America | B2 | |
| MX336876B | Mexico | B | |
| US9258571B2 | United States of America | B2 | |
| MX337230B | Mexico | B | |
| MX337232BThis record | Mexico | B | |
| CN105357540A | China | A | |
| CN105357541A | China | A | |
| JP5873200B2 | Japan | B2 | |
| JP5873201B2 | Japan | B2 | |
| JP5873202B2 | Japan | B2 | |
| JP5873203B2 | Japan | B2 | |
| CN105516732A | China | A | |
| EP3013054A1 | European Patent Office (EPO) | A1 | |
| CN105554510A | China | A | |
| AU2012276453B2 | Australia | B2 | |
| EP3021591A1 | European Patent Office (EPO) | A1 | |
| US2016156939A1 | United States of America | A1 | |
| RU2586321C2 | Russian Federation | C2 | |
| JP5934413B2 | Japan | B2 | |
| AU2016206258A1 | Australia | A1 | |
| AU2016206259A1 | Australia | A1 | |
| AU2016206260A1 | Australia | A1 | |
| AU2016206261A1 | Australia | A1 | |
| TWI562618B | Taiwan Province of China | B | |
| TW201701675A | Taiwan Province of China | A | |
| US9554157B2 | United States of America | B2 | |
| ZA201502759B | South Africa | B | |
| ZA201502760B | South Africa | B | |
| ZA201502761B | South Africa | B | |
| US9565455B2 | United States of America | B2 | |
| MY160178A | Malaysia | A | |
| MY160179A | Malaysia | A | |
| MY160180A | Malaysia | A | |
| MY160181A | Malaysia | A | |
| MY160326A | Malaysia | A | |
| RU2618511C1 | Russian Federation | C1 | |
| AU2016206258B2 | Australia | B2 | |
| US9668001B2 | United States of America | B2 | |
| BR112013033708A2 | Brazil | A2 | |
| AU2016206259B2 | Australia | B2 | |
| US2017237985A1 | United States of America | A1 | |
| TWI597975B | Taiwan Province of China | B | |
| CA2840481C | Canada | C | |
| PH12017500999A1 | Philippines | A1 | |
| PH12017500999B1 | Philippines | B1 | |
| PH12017501000A1 | Philippines | A1 | |
| PH12017501000B1 | Philippines | B1 | |
| PH12017501001A1 | Philippines | A1 | |
| PH12017501001B1 | Philippines | B1 | |
| PH12017501002A1 | Philippines | A1 | |
| PH12017501002B1 | Philippines | B1 | |
| TW201737713A | Taiwan Province of China | A | |
| AU2016206260B2 | Australia | B2 | |
| AU2016206261B2 | Australia | B2 | |
| EP2884749B1 | European Patent Office (EPO) | B1 | |
| PT2884749T | Portugal | T | |
| DK2884749T3 | Denmark | T3 | |
| AU2018200070A1 | Australia | A1 | |
| LT2884749T | Lithuania | T | |
| HRP20180051T1 | Croatia | T1 | |
| TWI615020B | Taiwan Province of China | B | |
| ES2655917T3 | Spain | T3 | |
| NO3064648T3 | Norway | T3 | |
| KR101835641B1 | Republic of Korea | B1 |
Numbers
- Publication
- 337232
- Publication, DOCDB
- 337232
- Publication, EPODOC
- MX337232
- Application
- 2015004485
- Application, DOCDB
- 2015004485
- Application, EPODOC
- MX20150004485
Titles
- Spanish
- METODO Y APARATO PARA CODIFICAR VIDEO Y METODO Y APARATO PARA DECODIFICAR VIDEO ACOMPAÑADOS POR UNA CODIFICACION ARITMETICA.
Classification
- CPC, 12
- H04N19/91
- H04N19/13
- H04N19/1883
- H04N19/157
- H04N19/176
- H04N19/44
- H04N19/593
- H04N19/60
- H04N19/50
- H04N19/186
- H04N19/59
- H04N19/70
- IPC, 3
- H04N19 13
- H04N19 157
- H04N19 176