BR122020014034B1 - INTRAPREDICTION METHOD FROM A VIDEO - Google Patents

INTRAPREDICTION METHOD FROM A VIDEO Download PDF

Info

Publication number
BR122020014034B1
BR122020014034B1 BR122020014034-8A BR122020014034A BR122020014034B1 BR 122020014034 B1 BR122020014034 B1 BR 122020014034B1 BR 122020014034 A BR122020014034 A BR 122020014034A BR 122020014034 B1 BR122020014034 B1 BR 122020014034B1
Authority
BR
Brazil
Prior art keywords
adjacent
adjacent pixel
pixel
coding
unit
Prior art date
Application number
BR122020014034-8A
Other languages
Portuguese (pt)
Inventor
Tammy Lee
Jianle Chen
Original Assignee
Samsung Electronics Co., Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Samsung Electronics Co., Ltd filed Critical Samsung Electronics Co., Ltd
Publication of BR122020014034B1 publication Critical patent/BR122020014034B1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock

Abstract

Um método e aparelho para intrapredição de um vídeo. O método inclui: determinar disponibilidade de um número predeterminado de pixels adjacentes utilizados para intrapredição de um bloco atual; se um primeiro pixel adjacente for não disponível, buscar um segundo pixel adjacente que é disponível por buscar o número predeterminado de pixels adjacentes em uma direção predeterminada com base no primeiro pixel adjacente; e substituir um valor de pixel do primeiro pixel adjacente com um valor de pixel de um segundo pixel adjacente encontrado. Pelo menos um terceiro pixel adjacente em outro local, que não é disponível e exclui o primeiro pixel adjacente em um local predeterminado, é sequencialmente substituído utilizando um pixel diretamente adjacente em uma direção predeterminada.A method and apparatus for intrapredicting a video. The method includes: determining availability of a predetermined number of adjacent pixels used for intraprediction of a current block; if a first adjacent pixel is unavailable, fetching a second adjacent pixel that is available by fetching the predetermined number of adjacent pixels in a predetermined direction based on the first adjacent pixel; and replacing a pixel value of the first adjacent pixel with a pixel value of a found second adjacent pixel. At least a third adjacent pixel at another location, which is unavailable and excludes the first adjacent pixel at a predetermined location, is sequentially replaced using a directly adjacent pixel in a predetermined direction.

Description

Campo da invençãoField of invention

[0001] A presente invenção refere-se à intrapredição de um vídeo, e mais particularmente a um método e aparelho para intrapredição de um vídeo, que envolve substituir um pixel adjacente não disponível em um modo de intrapredição limitado que limita um uso de um pixel adjacente, e utilizar o pixel adjacente substituído como um pixel de referência.[0001] The present invention relates to intraprediction of a video, and more particularly to a method and apparatus for intraprediction of a video, which involves replacing an unavailable adjacent pixel in a limited intraprediction mode that limits a use of a pixel adjacent, and use the replaced adjacent pixel as a reference pixel.

TÉCNICA ANTECEDENTEPREVIOUS TECHNIQUE

[0002] Em um método de compressão de imagem, como Moving Picture Experts Group (MPEG)-1, MPEG-2, MPEG-4 ou H.264/MPEG-4 Codificação avançada de vídeo (AVC), uma quadro é dividida em macroblocos para codificar uma imagem. Cada dos macroblocos é codificado em todos os modos de codificação que podem ser utilizados em interpredição ou intrapredição, e então é codificado em um modo de codificação que é selecionado de acordo com uma taxa de bits utilizada para codificar o macrobloco e um grau de distorção entre um macrobloco decodificado e o macrobloco original.[0002] In an image compression method, such as Moving Picture Experts Group (MPEG)-1, MPEG-2, MPEG-4, or H.264/MPEG-4 Advanced Video Coding (AVC), a frame is divided into macroblocks for encoding an image. Each of the macroblocks is encoded in all encoding modes that can be used in interprediction or intraprediction, and is then encoded in a encoding mode that is selected according to a bit rate used to encode the macroblock and a degree of distortion between a decoded macroblock and the original macroblock.

[0003] À medida que hardware para reproduzir e armazenar conteúdo de vídeo de alta resolução ou qualidade elevada está sendo desenvolvido e fornecido, há uma necessidade crescente para um codec de vídeo capaz de codificar ou decodificar eficazmente o conteúdo de vídeo de alta resolução ou qualidade elevada. Em um codec de vídeo convencional, um vídeo é codificado em unidades de macroblocos cada tendo um tamanho predeterminado.[0003] As hardware for playing and storing high-resolution or high-quality video content is being developed and shipped, there is an increasing need for a video codec capable of effectively encoding or decoding high-resolution or high-quality video content. high. In a conventional video codec, a video is encoded into units of macroblocks each having a predetermined size.

DESCRIÇÃO DETALHADA DA INVENÇÃODETAILED DESCRIPTION OF THE INVENTION PROBLEMA TÉCNICOTECHNICAL PROBLEM

[0004] A presente invenção provê um método de substituir um pixel adjacente não disponível em um modo intrapredição limitado que limita um uso de um pixel adjacente utilizado em intrapredição.[0004] The present invention provides a method of replacing an unavailable adjacent pixel in a limited intraprediction mode that limits the use of an adjacent pixel used in intraprediction.

SOLUÇÃO TÉCNICATECHNICAL SOLUTION

[0005] método para intrapredizer vídeo determina disponibilidade de um número predeterminado de pixels adjacentes utilizados para intrapredição, se um primeiro pixel adjacente não disponível exigir, busca um segundo pixel adjacente que é disponível por buscar um número predeterminado de pixels adjacentes em uma direção predeterminada com base no primeiro pixel adjacente, e substitui um valor de pixel do primeiro pixel adjacente com um valor de pixel de um segundo pixel adjacente encontrado. Para um terceiro pixel adjacente não disponível, um processo de substituição é realizado utilizando um pixel adjacente em uma direção predeterminada.[0005] method for intrapredicting video determines availability of a predetermined number of adjacent pixels used for intraprediction, if an unavailable first adjacent pixel requires, fetches a second adjacent pixel that is available by fetching a predetermined number of adjacent pixels in a predetermined direction with based on the first adjacent pixel, and replaces a pixel value of the first adjacent pixel with a pixel value of a second adjacent pixel found. For an unavailable third adjacent pixel, a replacement process is performed using an adjacent pixel in a predetermined direction.

EFEITOS VANTAJOSOSADVANTAGEOUS EFFECTS

[0006] De acordo com uma ou mais modalidades da presente invenção, a complexidade de um processo de determinar um pixel de referência utilizado para intrapredição pode ser reduzida por procurar e substituir um pixel adjacente disponível, com base em uma direção de busca predeterminada, com um pixel adjacente não disponível.[0006] In accordance with one or more embodiments of the present invention, the complexity of a process of determining a reference pixel used for intraprediction can be reduced by searching and replacing an available adjacent pixel, based on a predetermined search direction, with an adjacent pixel is unavailable.

DESCRIÇÃO DOS DESENHOSDESCRIPTION OF THE DRAWINGS

[0007] A figura 1 é um diagrama de blocos de um aparelho para codificar um vídeo, de acordo com uma modalidade da presente invenção;[0007] Figure 1 is a block diagram of an apparatus for encoding a video, according to an embodiment of the present invention;

[0008] A figura 2 é um diagrama de blocos de um aparelho para decodificar um vídeo, de acordo com uma modalidade da presente invenção;[0008] Figure 2 is a block diagram of an apparatus for decoding a video, according to an embodiment of the present invention;

[0009] A figura 3 é um diagrama para descrever um conceito de unidades de codificação de acordo com uma modalidade da presente invenção;[0009] Figure 3 is a diagram for describing a concept of coding units according to an embodiment of the present invention;

[00010] A figura 4 é um diagrama de blocos de um codificador de imagem com base em unidades de codificação de acordo com uma modalidade da presente invenção;[00010] Figure 4 is a block diagram of an image encoder based on coding units according to an embodiment of the present invention;

[00011] A figura 5 é um diagrama de blocos de um decodificador de imagem com base em unidades de codificação de acordo com uma modalidade da presente invenção;[00011] Figure 5 is a block diagram of an image decoder based on coding units according to an embodiment of the present invention;

[00012] A figura 6 é um diagrama que ilustra unidades de codificação mais profundas de acordo com profundidades, e partições de acordo com uma modalidade da presente invenção;[00012] Figure 6 is a diagram illustrating deeper coding units according to depths, and partitions according to an embodiment of the present invention;

[00013] A figura 7 é um diagrama para descrever uma relação entre uma unidade de codificação e unidades de transformação, de acordo com uma modalidade da presente invenção;[00013] Figure 7 is a diagram for describing a relationship between a coding unit and transformation units, according to an embodiment of the present invention;

[00014] A figura 8 é um diagrama para descrever informações de codificação de unidades de codificação correspondendo a uma profundidade codificada, de acordo com uma modalidade da presente invenção;[00014] Figure 8 is a diagram for describing coding information of coding units corresponding to a coded depth, in accordance with an embodiment of the present invention;

[00015] A figura 9 é um diagrama de unidades de codificação mais profundas de acordo com profundidades, de acordo com uma modalidade da presente invenção;[00015] Figure 9 is a diagram of deeper coding units according to depths, according to an embodiment of the present invention;

[00016] As figuras 10 até 12 são diagramas para descrever uma relação entre unidades de codificação, unidades de predição, e unidades de transformação, de acordo com uma modalidade da presente invenção;[00016] Figures 10 to 12 are diagrams for describing a relationship between coding units, prediction units, and transformation units, in accordance with an embodiment of the present invention;

[00017] A figura 13 é um diagrama para descrever uma relação entre uma unidade de codificação, uma unidade de predição ou uma partição, e uma unidade de transformação, de acordo com informações de modo de codificação da tabela 1;[00017] Figure 13 is a diagram for describing a relationship between a coding unit, a prediction unit or a partition, and a transformation unit, in accordance with coding mode information from table 1;

[00018] A figura 14 é uma tabela que mostra um número de modos intrapredição de acordo com um tamanho de uma unidade de predição, de acordo com uma modalidade da presente invenção;[00018] Figure 14 is a table showing a number of intraprediction modes according to a size of a prediction unit, according to an embodiment of the present invention;

[00019] A figura 15 é um diagrama de referência para descrever modos intrapredição tendo várias diretividades, de acordo com uma modalidade da presente invenção;[00019] Figure 15 is a reference diagram for describing intraprediction modes having various directivities, in accordance with an embodiment of the present invention;

[00020] A figura 16 é um diagrama para descrever uma relação entre um pixel atual e pixels adjacentes dispostos em uma linha de extensão tendo uma diretividade de (dx, dy), de acordo com uma modalidade da presente invenção;[00020] Figure 16 is a diagram for describing a relationship between a current pixel and adjacent pixels arranged in an extension line having a directivity of (dx, dy), in accordance with an embodiment of the present invention;

[00021] As figuras 17 e 18 são diagramas que mostram direções de um modo intrapredição, de acordo com modalidades da presente invenção;[00021] Figures 17 and 18 are diagrams showing directions in an intraprediction manner, in accordance with embodiments of the present invention;

[00022] A figura 19 é um diagrama que mostra direções de um modo intrapredição tendo 33 diretividades, de acordo com uma modalidade da presente invenção;[00022] Figure 19 is a diagram showing directions of an intraprediction mode having 33 directivities, according to an embodiment of the present invention;

[00023] A figura 20 é um diagrama de um pixel adjacente que é não disponível durante intrapredição de um bloco atual de acordo com um tipo de um bloco adjacente, de acordo com uma modalidade da presente invenção;[00023] Figure 20 is a diagram of an adjacent pixel that is unavailable during intraprediction of a current block according to a type of an adjacent block, according to an embodiment of the present invention;

[00024] A figura 21 é um diagrama para descrever um processo de substituir um pixel adjacente não disponível, de acordo com uma modalidade da presente invenção;[00024] Figure 21 is a diagram for describing a process of replacing an unavailable adjacent pixel, in accordance with an embodiment of the present invention;

[00025] A figura 22 é um diagrama para descrever um processo de substituir um pixel adjacente não disponível, de acordo com outra modalidade da presente invenção;[00025] Figure 22 is a diagram for describing a process of replacing an unavailable adjacent pixel, according to another embodiment of the present invention;

[00026] A figura 23 é um diagrama para descrever um processo de substituir um pixel adjacente não disponível, de acordo com outar modalidade da presente invenção;[00026] Figure 23 is a diagram for describing a process of replacing an unavailable adjacent pixel, in accordance with another embodiment of the present invention;

[00027] A figura 24 é um diagrama de blocos de um aparelho intrapredição de acordo com uma modalidade da presente invenção;[00027] Figure 24 is a block diagram of an intraprediction apparatus according to an embodiment of the present invention;

[00028] A figura 25A é um diagrama de um pixel adjacente filtrado de um bloco atual;[00028] Figure 25A is a diagram of a filtered adjacent pixel of a current block;

[00029] A figura 25B é um diagrama de referência para descrever um processo de filtração de um pixel adjacente de um bloco atual;[00029] Figure 25B is a reference diagram for describing a process of filtering an adjacent pixel of a current block;

[00030] A figura 26 é um fluxograma que ilustra um método de intrapredição de um vídeo, de acordo com uma modalidade da presente invenção;[00030] Figure 26 is a flowchart illustrating a video intraprediction method, according to an embodiment of the present invention;

[00031] A figura 27A ilustra uma estrutura física de um disco que armazena um programa, de acordo com uma modalidade da presente invenção;[00031] Figure 27A illustrates a physical structure of a disk that stores a program, according to an embodiment of the present invention;

[00032] A figura 27B ilustra uma unidade de disco que grava e lê um programa utilizando um disco;[00032] Figure 27B illustrates a disk unit that writes and reads a program using a disk;

[00033] A figura 28 ilustra uma estrutura inteira de um sistema de fornecimento de conteúdo que provê um serviço de distribuição de conteúdo;[00033] Figure 28 illustrates an entire structure of a content delivery system that provides a content distribution service;

[00034] As figuras 29 e 30 ilustram estruturas externas e internas de um telefone celular ao qual um método de codificação de vídeo e um método de decodificação de vídeo são aplicados, de acordo com uma modalidade da presente invenção;[00034] Figures 29 and 30 illustrate external and internal structures of a cell phone to which a video coding method and a video decoding method are applied, in accordance with an embodiment of the present invention;

[00035] A figura 31 ilustra um sistema de broadcasting digital que emprega um sistema de comunicação, de acordo com uma modalidade da presente invenção; e[00035] Figure 31 illustrates a digital broadcasting system that employs a communication system, according to an embodiment of the present invention; It is

[00036] A figura 32 ilustra uma estrutura de rede de um sistema de computação de nuvem utilizando um aparelho de codificação de vídeo e um aparelho de decodificação de vídeo, de acordo com uma modalidade da presente invenção.[00036] Figure 32 illustrates a network structure of a cloud computing system using a video coding device and a video decoding device, in accordance with an embodiment of the present invention.

Melhor modoBest way

[00037] De acordo com um aspecto da presente invenção, é fornecido um método de intrapredição de um vídeo, o método compreendendo: determinar disponibilidade de um número predeterminado de pixels adjacentes utilizados para intrapredição de um bloco atual entre blocos obtidos por dividir um quadro que forma o vídeo de acordo com uma estrutura hierárquica; se um primeiro pixel adjacente for não disponível no número predeterminado de pixels adjacentes, buscar um segundo pixel adjacente que é disponível por buscar o número predeterminado de pixels adjacentes em uma direção predeterminada com base no primeiro pixel adjacente; substituir um valor de pixel do primeiro pixel adjacente com um valor de pixel de um segundo pixel adjacente encontrado; e executar intrapredição no bloco atual utilizando o número predeterminado de pixels adjacentes compreendendo o primeiro pixel adjacente substituído.[00037] In accordance with one aspect of the present invention, there is provided a method of intrapredicting a video, the method comprising: determining availability of a predetermined number of adjacent pixels used for intraprediction of a current block between blocks obtained by dividing a frame that forms the video according to a hierarchical structure; if a first adjacent pixel is unavailable in the predetermined number of adjacent pixels, fetching a second adjacent pixel that is available by fetching the predetermined number of adjacent pixels in a predetermined direction based on the first adjacent pixel; replacing a pixel value of the first adjacent pixel with a pixel value of a found second adjacent pixel; and performing intraprediction on the current block using the predetermined number of adjacent pixels comprising the first substituted adjacent pixel.

[00038] A determinação da disponibilidade compreende determinar pixels adjacentes, que são incluídos no bloco adjacente que é interpredito ou que pertence a uma fatia diferente de uma fatia a qual o bloco atual pertence, como sendo não disponíveis.[00038] Determining availability comprises determining adjacent pixels, which are included in the adjacent block that is interpredicted or which belong to a slice other than a slice to which the current block belongs, as being unavailable.

[00039] primeiro pixel adjacente pode ser um pixel em um local predeterminado entre o número predeterminado de pixels adjacentes, e a busca pelo segundo pixel adjacente pode compreender determinar um pixel adjacente disponível, que foi incialmente encontrado por buscar o número predeterminado de pixels adjacentes na direção predeterminada com base no primeiro pixel adjacente, como sendo o segundo pixel adjacente.[00039] first adjacent pixel may be a pixel at a predetermined location among the predetermined number of adjacent pixels, and searching for the second adjacent pixel may comprise determining an available adjacent pixel, which was initially found by searching the predetermined number of adjacent pixels in the predetermined direction based on the first adjacent pixel being the second adjacent pixel.

[00040] primeiro pixel adjacente pode ser um pixel adjacente localizado em um canto esquerdo superior do bloco atual, e a busca pelo segundo pixel adjacente pode compreender buscar o segundo pixel adjacente por buscar pixels adjacentes da direita superior e de topo do bloco atual da esquerda para a direita com base no primeiro pixel adjacente, e se um segundo pixel adjacente for não disponível nos pixels adjacentes da direita superior e de topo do bloco atual, buscar pixels adjacentes da esquerda inferiores e esquerda do bloco atual a partir do topo para a parte inferior com base no primeiro pixel adjacente.[00040] first adjacent pixel may be an adjacent pixel located in a top left corner of the current block, and searching for the second adjacent pixel may comprise searching for the second adjacent pixel by searching top right and top right adjacent pixels of the current left block to the right based on the first adjacent pixel, and if a second adjacent pixel is unavailable in the upper right and top adjacent pixels of the current block, fetch lower left and left adjacent pixels of the current block from the top to the part bottom based on the first adjacent pixel.

[00041] primeiro pixel adjacente pode ser um pixel adjacente localizado em um canto esquerdo superior do bloco atual, e a busca pelo segundo pixel adjacente pode compreender buscar o segundo pixel adjacente por buscar pixels adjacentes da esquerda inferiores e esquerda do bloco atual a partir do topo até a parte inferior com base no primeiro pixel adjacente, e se um segundo pixel adjacente for não disponível à esquerda de pixels adjacentes da esquerda inferiores do bloco atual, buscar pixels adjacentes da direita superior e de topo do bloco atual a partir da esquerda para a direita com base no primeiro pixel adjacente.[00041] first adjacent pixel may be an adjacent pixel located in an upper left corner of the current block, and searching for the second adjacent pixel may comprise searching for the second adjacent pixel by searching lower left and left adjacent pixels of the current block from the top to bottom based on the first adjacent pixel, and if a second adjacent pixel is unavailable to the left of the current block's bottom left adjacent pixels, fetch top right and top right adjacent pixels of the current block from the left to the right based on the first adjacent pixel.

[00042] primeiro pixel adjacente pode ser um pixel adjacente localizado em um canto esquerdo superior do bloco atual, e a busca pelo segundo pixel adjacente pode compreender determinar um pixel adjacente esquerdo disponível por buscar pixels adjacentes da esquerda inferior e esquerda do bloco atual a partir do topo para a parte inferior com base no primeiro pixel adjacente, e determinar um pixel adjacente superior disponível por buscar pixels adjacentes da direita superior e de topo do bloco atual a partir da esquerda para a direita com base no primeiro pixel adjacente; e substituir o valor de pixel do primeiro pixel adjacente utilizando um valor médio do pixel adjacente da esquerda disponível e pixel adjacente superior disponível.[00042] first adjacent pixel may be an adjacent pixel located in an upper left corner of the current block, and searching for the second adjacent pixel may comprise determining an available left adjacent pixel by searching lower left and left adjacent pixels of the current block from from top to bottom based on the first adjacent pixel, and determining an available top adjacent pixel by fetching adjacent top and top right pixels of the current block from left to right based on the first adjacent pixel; and replacing the pixel value of the first adjacent pixel using an average value of the available left adjacent pixel and available top adjacent pixel.

[00043] primeiro pixel adjacente pode ser um pixel adjacente localizado em um canto esquerdo superior do bloco atual, e a busca pelo segundo pixel adjacente pode compreender determinar um pixel adjacente esquerdo disponível por buscar pixels adjacentes da esquerda inferior e esquerda do bloco atual a partir do topo para a parte inferior com base no primeiro pixel adjacente, determinar um pixel adjacente superior disponível por buscar pixels adjacentes da direita superior e de topo do bloco atual a partir da esquerda para direita com base no primeiro pixel adjacente, e determinar um pixel adjacente, que é mais próximo ao primeiro pixel adjacente entre os pixels adjacentes de topo e esquerdo buscados, para ser o segundo pixel adjacente.[00043] first adjacent pixel may be an adjacent pixel located in an upper left corner of the current block, and searching for the second adjacent pixel may comprise determining an available left adjacent pixel by searching lower left and left adjacent pixels of the current block from from top to bottom based on the first adjacent pixel, determine an available top adjacent pixel by fetching adjacent top and top right pixels of the current block from left to right based on the first adjacent pixel, and determine an adjacent pixel , which is closest to the first adjacent pixel among the fetched top and left adjacent pixels, to be the second adjacent pixel.

[00044] primeiro pixel adjacente pode ser um pixel adjacente esquerdo mais baixo entre pixels adjacentes da esquerda inferior e esquerda do bloco atual, e a busca pelo segundo pixel adjacente pode compreender buscar o segundo pixel adjacente por buscar pixels adjacentes da esquerda inferior e esquerda do bloco atual a partir da parte inferior para o topo com base no primeiro pixel adjacente, e se um segundo pixel adjacente for não disponível nos pixels adjacentes da esquerda e esquerda inferior do bloco atual, buscar pixels adjacentes da direita superior e de topo do bloco atual a partir da esquerda para a direita.[00044] first adjacent pixel may be a lower left adjacent pixel between lower left and left adjacent pixels of the current block, and searching for the second adjacent pixel may comprise searching for the second adjacent pixel by searching lower left and left adjacent pixels of the current block from bottom to top based on the first adjacent pixel, and if a second adjacent pixel is unavailable in the left and bottom left adjacent pixels of the current block, fetch adjacent pixels from the top right and top of the current block from left to right.

[00045] primeiro pixel adjacente pode ser um pixel adjacente mais à direita superior entre pixels adjacentes da direita superior e de topo do bloco atual, e a busca pelo segundo pixel adjacente pode compreender buscar o segundo pixel adjacente por buscar pixels adjacentes da direita superior e de topo do bloco atual a partir da direita para a esquerda com base no primeiro pixel adjacente, e se um segundo pixel adjacente for não disponível nos pixels adjacentes da direita superior e de topo do bloco atual, buscar pixels adjacentes da esquerda inferior e esquerda do bloco atual a partir do topo para a parte inferior.[00045] first adjacent pixel may be a top-rightmost adjacent pixel between top-right and top-right adjacent pixels of the current block, and searching for the second adjacent pixel may comprise searching for the second adjacent pixel by searching for top-right adjacent pixels and of the current block from right to left based on the first adjacent pixel, and if a second adjacent pixel is unavailable in the top right and top right adjacent pixels of the current block, fetch adjacent pixels from the bottom left and left of the current block. current block from top to bottom.

[00046] método pode compreender ainda se pelo menos um terceiro pixel adjacente for não disponível, substituir um valor de pixel de pelo menos um terceiro pixel adjacente com um valor de pixel de um pixel adjacente anteriormente busco com base na direção predeterminada.[00046] method may further comprise if at least one third adjacent pixel is unavailable, replacing a pixel value of at least one third adjacent pixel with a pixel value of a previously searched adjacent pixel based on the predetermined direction.

[00047] primeiro pixel adjacente pode ser um pixel adjacente localizado em um canto esquerdo superior do bloco atual, e se pelo menos um terceiro pixel adjacente for localizado em um topo do bloco atual, o método pode compreender ainda sequencialmente substituir pelo menos um terceiro pixel adjacente a partir de um terceiro pixel adjacente mais da esquerda com um pixel adjacente para a esquerda de pelo menos um terceiro pixel adjacente, e se pelo menos um terceiro pixel adjacente for localizado à esquerda do bloco atual, sequencialmente substituir pelo menos um terceiro pixel adjacente a partir de um terceiro pixel adjacente mais superior com um pixel adjacente acima de pelo menos um terceiro pixel adjacente.[00047] first adjacent pixel may be an adjacent pixel located in a top left corner of the current block, and if at least one third adjacent pixel is located in a top left corner of the current block, the method may further comprise sequentially replacing at least one third pixel adjacent from a third adjacent leftmost pixel with an adjacent pixel to the left of at least one third adjacent pixel, and if at least one third adjacent pixel is located to the left of the current block, sequentially replace at least one third adjacent pixel from a third uppermost adjacent pixel with an adjacent pixel above at least one third adjacent pixel.

[00048] primeiro pixel adjacente pode ser um pixel adjacente localizado em um canto esquerdo mais baixo do bloco atual, e se pelo menos um terceiro pixel adjacente for localizado à esquerda do bloco atual, o método pode compreender ainda sequencialmente substituir pelo menos um terceiro pixel adjacente a partir de um terceiro pixel adjacente mais inferior com um pixel adjacente abaixo de pelo menos um terceiro pixel adjacente, e se pelo menos um terceiro pixel adjacente for localizado em um topo do bloco atual, sequencialmente substituir pelo menos um terceiro pixel adjacente a partir de um terceiro pixel adjacente mais esquerdo com um pixel adjacente à esquerda de pelo menos um terceiro pixel adjacente.[00048] first adjacent pixel may be an adjacent pixel located in a lower left corner of the current block, and if at least one third adjacent pixel is located to the left of the current block, the method may further comprise sequentially replacing at least one third pixel adjacent from a lower third adjacent pixel with an adjacent pixel below at least one third adjacent pixel, and if at least one third adjacent pixel is located at a top of the current block, sequentially replace at least one third adjacent pixel from of a third leftmost adjacent pixel with an adjacent pixel to the left of at least a third adjacent pixel.

[00049] primeiro pixel adjacente pode ser um pixel adjacente localizado em um canto mais à direita superior do bloco atual, e se pelo menos um terceiro pixel adjacente for localizado em um topo do bloco atual, o método pode compreender ainda sequencialmente substituir pelo menos um terceiro pixel adjacente a partir de um terceiro pixel adjacente mais à direita com um pixel adjacente à direita de pelo menos um terceiro pixel adjacente, e se pelo menos um terceiro pixel adjacente for localizado à esquerda do bloco atual, sequencialmente substituir pelo menos um terceiro pixel adjacente a partir de um terceiro pixel adjacente mais superior com um pixel adjacente acima de pelo menos um terceiro pixel adjacente.[00049] first adjacent pixel may be an adjacent pixel located in a top rightmost corner of the current block, and if at least one third adjacent pixel is located in a top right corner of the current block, the method may further comprise sequentially replacing at least one third adjacent pixel from a rightmost adjacent third pixel with an adjacent pixel to the right of at least one third adjacent pixel, and if at least one third adjacent pixel is located to the left of the current block, sequentially replace at least one third adjacent pixel adjacent from a third uppermost adjacent pixel with an adjacent pixel above at least one third adjacent pixel.

[00050] método pode compreender ainda substituir o valor de pixel do primeiro pixel adjacente com um valor predeterminado se o segundo pixel adjacente não existir no número predeterminado de pixels adjacentes.[00050] method may further comprise replacing the pixel value of the first adjacent pixel with a predetermined value if the second adjacent pixel does not exist in the predetermined number of adjacent pixels.

[00051] valor predeterminado pode ser determinado com base em uma profundidade de bits de um pixel.[00051] predetermined value can be determined based on a bit depth of a pixel.

[00052] De acordo com outro aspecto da presente invenção, é fornecido um aparelho para intrapredição de um vídeo, o aparelho compreendendo: um determinador de disponibilidade para determinar disponibilidade de um número predeterminado de pixels adjacentes utilizados para intrapredição de um bloco atual entre blocos obtidos por dividir um quadro formando o vídeo de acordo com uma estrutura hierárquica; um meio de substituição para, se um primeiro pixel adjacente for não disponível no número predeterminado de pixels adjacentes, buscar um segundo pixel adjacente que é disponível por buscar o número predeterminado de pixels adjacentes em uma direção predeterminada com base no primeiro pixel adjacente, e substituir um valor de pixel do primeiro pixel adjacente com um valor de pixel de um segundo pixel adjacente encontrado; e um meio de execução de intrapredição para executar intrapredição no bloco atual utilizando o número predeterminado de pixels adjacentes compreendendo o primeiro pixel adjacente substituído.[00052] According to another aspect of the present invention, an apparatus for intrapredicting a video is provided, the apparatus comprising: an availability determiner for determining availability of a predetermined number of adjacent pixels used for intrapredicting a current block between blocks obtained by dividing a frame forming the video according to a hierarchical structure; a replacement means for, if a first adjacent pixel is unavailable in the predetermined number of adjacent pixels, fetching a second adjacent pixel that is available by fetching the predetermined number of adjacent pixels in a predetermined direction based on the first adjacent pixel, and replacing a pixel value of the first adjacent pixel with a pixel value of a second adjacent pixel found; and an intraprediction execution means for performing intraprediction on the current block using the predetermined number of adjacent pixels comprising the first substituted adjacent pixel.

DESCRIÇÃO DETALHADA DA INVENÇÃODETAILED DESCRIPTION OF THE INVENTION

[00053] A seguir, a presente invenção será descrita mais completamente com referência aos desenhos em anexo, nos quais modalidades exemplares da invenção são mostradas.[00053] In the following, the present invention will be described more fully with reference to the attached drawings, in which exemplary embodiments of the invention are shown.

[00054] A figura 1 é um diagrama de blocos de um aparelho de codificação de vídeo 100, de acordo com uma modalidade da presente invenção.[00054] Figure 1 is a block diagram of a video coding apparatus 100, in accordance with an embodiment of the present invention.

[00055] aparelho de codificação de vídeo 100 inclui um divisor de unidade de código máximo 110, um determinador de unidade de codificação 120 e uma unidade de saída 130.[00055] video coding apparatus 100 includes a maximum code unit divider 110, a coding unit determiner 120, and an output unit 130.

[00056] divisor de unidade de codificação máxima 110 pode dividir um quadro atual com base em uma unidade de codificação máxima para o quadro atual de uma imagem. Se o quadro atual for maior do que a unidade de codificação máxima, dados de imagem do quadro atual podem ser divididos pelo menos em uma unidade de codificação máxima. A unidade de codificação máxima de acordo com uma modalidade da presente invenção pode ser uma unidade de dados tendo um tamanho de 32x32, 64x64, 128x128, 256x256, etc., em que um formato da unidade de dados é um quadrado tendo uma largura e comprimento em quadrados de 2. Os dados de imagem podem ser transmitidos para o determinador de unidade de codificação 120 de acordo com pelo menos uma unidade de codificação máxima.[00056] maximum coding unit divider 110 can divide a current frame based on a maximum coding unit for the current frame of an image. If the current frame is larger than the maximum coding unit, image data of the current frame may be divided into at least one maximum coding unit. The maximum coding unit according to an embodiment of the present invention may be a data unit having a size of 32x32, 64x64, 128x128, 256x256, etc., wherein a format of the data unit is a square having a width and length in squares of 2. Image data may be transmitted to the coding unit determiner 120 according to at least one maximum coding unit.

[00057] Uma unidade de codificação de acordo com uma modalidade da presente invenção pode ser caracterizada por uma profundidade e tamanho máximo. A profundidade indica um número de vezes em que a unidade de codificação é espacialmente dividida a partir da unidade de codificação máxima, e à medida que a profundidade aprofunda, unidades de codificação mais profundas de acordo com as profundidades podem ser divididas a partir da unidade de codificação máxima em uma unidade de codificação mínima. Uma profundidade da unidade de codificação máxima é uma profundidade mais superior e uma profundidade da unidade de codificação mínima é uma profundidade mais inferior. Uma vez que um tamanho de uma unidade de codificação correspondendo a cada profundidade diminui à medida que a profundidade da unidade de codificação máxima aprofunda, uma unidade de codificação correspondendo a uma profundidade superior pode incluir uma pluralidade de unidades de codificação correspondendo a profundidades mais baixas.[00057] A coding unit according to an embodiment of the present invention can be characterized by a maximum depth and size. The depth indicates a number of times the coding unit is spatially divided from the maximum coding unit, and as the depth deepens, deeper coding units according to the depths can be divided from the maximum coding unit. maximum encoding in a minimum encoding unit. A maximum coding unit depth is a higher depth and a minimum coding unit depth is a lower depth. Since a size of a coding unit corresponding to each depth decreases as the depth of the maximum coding unit deepens, a coding unit corresponding to a higher depth may include a plurality of coding units corresponding to lower depths.

[00058] Como descrito acima, os dados de imagem do quadro atual são divididos nas unidades de codificação máxima de acordo com um tamanho máximo da unidade de codificação, e cada das unidades de codificação máxima pode incluir unidades de codificação mais profundas que são divididas de acordo com as profundidades. Uma vez que a unidade de codificação máxima de acordo com uma modalidade da presente invenção é dividida de acordo com profundidades, os dados de imagem de um domínio espacial incluído na unidade de codificação máxima podem ser hierarquicamente classificados de acordo com profundidades.[00058] As described above, the image data of the current frame is divided into the maximum coding units according to a maximum coding unit size, and each of the maximum coding units may include deeper coding units that are divided accordingly. depending on the depths. Since the maximum coding unit according to an embodiment of the present invention is divided according to depths, image data of a spatial domain included in the maximum coding unit can be hierarchically classified according to depths.

[00059] Uma profundidade máxima e um tamanho máximo de uma unidade de codificação, que limitam o número total de vezes que uma altura e uma largura da unidade de codificação máxima são hierarquicamente divididas podem ser predeterminados.[00059] A maximum depth and a maximum size of a coding unit, which limit the total number of times a height and a width of the maximum coding unit are hierarchically divided can be predetermined.

[00060] O determinador de unidade de codificação 120 codifica pelo menos uma região dividida obtida por dividir uma região da unidade de codificação máxima de acordo com as profundidades, e determina uma profundidade para transmitir dados de imagem finamente codificados de acordo com pelo menos uma região dividida. Em outras palavras, o determinador de unidade de codificação 120 determina uma profundidade codificada por codificar os dados de imagem nas unidades de codificação mais profundas de acordo com as profundidades, de acordo com a unidade de codificação máxima do quadro atual, e selecionar uma profundidade tendo o erro de codificação mínimo. A profundidade codificada determinada e os dados de imagem codificados de acordo com a profundidade codificada determinada são transmitidos para a unidade de saída 130.[00060] The coding unit determiner 120 encodes at least one divided region obtained by dividing a region of the maximum coding unit according to depths, and determines a depth for transmitting finely coded image data according to at least one region divided. In other words, the coding unit determiner 120 determines a coded depth by coding the image data into the deepest coding units according to the depths, according to the maximum coding unit of the current frame, and selecting a depth having the minimum coding error. The determined coded depth and image data coded according to the determined coded depth are transmitted to the output unit 130.

[00061] Os dados de imagem na unidade de codificação máxima são codificados com base nas unidades de codificação mais profundas correspondendo a pelo menos uma profundidade igual a ou abaixo da profundidade máxima, e resultados da codificação dos dados de imagem são comparados com base em cada das unidades de codificação mais profundas. Uma profundidade tendo o erro de codificação mínimo pode ser selecionada após comparar erros de codificação das unidades de codificação mais profundos. Pelo menos uma profundidade codificada pode ser selecionada para cada unidade de codificação máxima.[00061] The image data in the maximum coding unit is encoded based on the deepest coding units corresponding to at least a depth equal to or below the maximum depth, and results of encoding the image data are compared based on each of the deepest coding units. A depth having the minimum 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.

[00062] tamanho da unidade de codificação máxima é dividido à medida que uma unidade de codificação é hierarquicamente dividida de acordo com profundidades, e à medida que o número de unidades de codificação aumenta. Além disso, mesmo se unidades de codificação corresponderem à mesma profundidade em uma unidade de codificação máxima, é determinado se deve dividir cada das unidades de codificação correspondendo à mesma profundidade em uma profundidade mais baixa por medir um erro de codificação dos dados de imagem de cada unidade de codificação, separadamente. Por conseguinte, mesmo quando dados de imagem são incluídos em uma unidade de codificação máxima, os erros de codificação podem diferir de acordo com regiões em uma unidade de codificação máxima, e desse modo as profundidades codificadas podem diferir de acordo com regiões nos dados de imagem. Desse modo, uma ou mais profundidades codificadas podem ser determinadas em uma unidade de codificação máxima, e os dados de imagem da unidade de codificação máxima podem ser divididos de acordo com unidades de codificação de pelo menos uma profundidade codificada.[00062] maximum coding unit size is divided as a coding unit is hierarchically divided according to depths, and as the number of coding units increases. Furthermore, even if coding units correspond to the same depth at a maximum coding unit, it is determined whether to divide each of the coding units corresponding to the same depth into a lower depth by measuring a coding error of the image data of each encoding unit, separately. Therefore, even when image data is included in a maximum coding unit, coding errors may differ according to regions in a maximum coding unit, and thus encoded depths may differ according to regions in the image data. . Thereby, one or more coded depths can be determined in a maximum coding unit, and the image data of the maximum coding unit can be divided according to coding units of at least one coded depth.

[00063] Por conseguinte, o determinador de unidade de codificação 120 pode determinar unidades de codificação tendo uma estrutura de árvore incluída na unidade de codificação máxima. As ‘unidades de codificação tendo uma estrutura de árvore’ de acordo com uma modalidade da presente invenção incluem unidades de codificação correspondendo a uma profundidade determinada para ser a profundidade codificada, a partir de entre todas as unidades de codificação mais profundas incluídas na unidade de codificação máxima. Uma unidade de codificação de uma profundidade codificada pode ser hierarquicamente determinada de acordo com profundidades na mesma região da unidade de codificação máxima, e pode ser independentemente determinada em regiões diferentes. Similarmente, uma profundidade codificada em uma região atual pode ser independentemente determinada a partir de uma profundidade codificada em outra região.[00063] Therefore, the coding unit determiner 120 can determine coding units having a tree structure included in the maximum coding unit. The 'coding units having a tree structure' according to an embodiment of the present invention include coding units corresponding to a depth determined to be the coded depth, from among all the deepest coding units included in the coding unit maximum. A coding unit of a coded depth can be hierarchically determined according to depths in the same region as the maximum coding unit, and can be independently determined in different regions. Similarly, a depth encoded in a current region can be independently determined from a depth encoded in another region.

[00064] Uma profundidade máxima de acordo com uma modalidade d apresente invenção é um índice relacionado ao número de tempos de divisão a partir de uma unidade de codificação máxima até uma unidade de codificação mínima. Uma primeira profundidade máxima de acordo com uma modalidade da presente invenção pode indicar o número total de tempos de divisão a partir da unidade de codificação máxima até a unidade de codificação mínima. Uma segunda profundidade máxima de acordo com uma modalidade da presente invenção pode indicar o número total de níveis de profundidade a partir da unidade de codificação máxima até a unidade de codificação mínima. Por exemplo, quando uma profundidade da unidade de codificação máxima é 0, uma profundidade de uma unidade de codificação, na qual a unidade de codificação máxima é dividida uma vez, pode ser ajustada em 1, e uma profundidade de uma unidade de codificação, na qual a unidade de codificação máxima é dividida duas vezes, pode ser ajustada em 2. Aqui, se a unidade de codificação mínima for uma unidade de codificação na qual a unidade de codificação máxima é dividida quatro vezes, 5 níveis de profundidade de profundidades 0, 1, 2, 3 e 4 existem, e desse modo a primeira profundidade máxima pode ser definida em 4, e a segunda profundidade máxima pode ser definida em 5.[00064] A maximum depth according to an embodiment of the present invention is an index related to the number of division times from a maximum coding unit to a minimum coding unit. A first maximum depth according to an embodiment of the present invention may indicate the total number of division times from the maximum coding unit to the minimum coding unit. A second maximum depth according to 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 coding unit depth is 0, a coding unit depth in which the maximum coding unit is divided once can be set to 1, and a coding unit depth in which the maximum coding unit is divided twice, can be set to 2. Here, if the minimum coding unit is a coding unit in which the maximum coding unit is divided four times, 5 depth levels of depths 0, 1, 2, 3, and 4 exist, and so the first maximum depth can be set to 4, and the second maximum depth can be set to 5.

[00065] A codificação de predição e a transformação podem ser realizadas de acordo com a unidade de codificação máxima. A codificação de predição e a transformação são também realizadas com base nas unidades de codificação mais profundas de acordo com uma profundidade igual a ou profundidades menores do que a profundidade máxima, de acordo com a unidade de codificação máxima.[00065] Prediction coding and transformation can be performed according to the maximum coding unit. Predictive coding and transformation are also performed based on the deepest coding units according to a depth equal to or depths less than the maximum depth according to the maximum coding unit.

[00066] Uma vez que o número de unidades de codificação mais profunda aumenta sempre que a unidade de codificação máxima é dividida de acordo com profundidades, a codificação incluindo a codificação de predição e a transformação é realizada em todas as unidades de codificação mais profundas geradas à medida que a profundidade aumenta. Para conveniência de descrição, a codificação de predição e a transformação serão descritas agora com base em uma unidade de codificação de uma profundidade atual, em uma unidade de codificação máxima.[00066] Since the number of deepest coding units increases whenever the maximum coding unit is divided according to depths, coding including prediction coding and transformation is performed on all generated deepest coding units as the depth increases. For convenience of description, prediction coding and transformation will now be described based on a coding unit of a current depth, in a maximum coding unit.

[00067] aparelho de codificação de vídeo 100 pode selecionar de forma variada um tamanho ou formato de uma unidade de dados para codificar os dados de imagem. Para codificar os dados de imagem, operações, como codificação de predição, transformação e codificação por entropia, são realizadas, e dessa vez, a mesma unidade de dados pode ser utilizada para todas as operações ou unidades de dados diferentes podem ser utilizadas para cada operação.[00067] video encoding apparatus 100 may variously select a size or format of a data unit for encoding the image data. To encode the image data, operations such as prediction coding, transformation and entropy coding are performed, and this time, the same data unit can be used for all operations or different data units can be used for each operation. .

[00068] Por exemplo, o aparelho de codificação de vídeo 100 pode selecionar não somente uma unidade de codificação para codificar os dados de imagem, como também uma unidade de dados diferente da unidade de codificação de modo a executar a codificação por predição nos dados de imagem na unidade de codificação.[00068] For example, the video coding apparatus 100 may select not only a coding unit to encode the image data, but also a data unit other than the coding unit in order to perform predictive coding on the image data. image in the encoding unit.

[00069] Para executar a codificação por predição na unidade de codificação máxima, a codificação por predição pode ser realizada com base em uma unidade de codificação correspondendo a uma profundidade codificada, isto é, baseado, em uma unidade de codificação que não mais é dividido para unidades de codificação correspondendo a uma profundidade mais baixa. A seguir, a unidade de codificação que não mais é dividida e se torna uma unidade de base para codificação por predição será agora mencionada como uma ‘unidade de predição’. Uma partição obtida por dividir a unidade de predição pode incluir uma unidade de predição ou uma unidade de dados obtida por dividir pelo menos um de uma altura e uma largura da unidade de predição.[00069] To perform predictive coding at the maximum coding unit, predictive coding can be performed based on a coding unit corresponding to a coded depth, that is, based on a coding unit that is no longer divided for coding units corresponding to a lower depth. In the following, the coding unit that is no longer divided and becomes a base unit for predictive coding will now be referred to as a ‘predictive unit’. A partition obtained by dividing the prediction unit may include a prediction unit or a data unit obtained by dividing at least one of a height and a width of the prediction unit.

[00070] Por exemplo, quando uma unidade de codificação de 2Nx2N (onde N é um número inteiro positivo) não mais é dividida e se torna uma unidade de predição de 2Nx2N, e um tamanho de uma partição pode ser 2Nx2N, 2NxN, Nx2N ou NxN. Os exemplos de um tipo de partição incluem partições simétricas que são obtidas por dividir simetricamente uma altura ou largura da unidade de predição, partições obtidas por dividir assimetricamente a altura ou largura da unidade de predição como 1:n ou n:1, partições que são obtidas por dividir geometricamente a unidade de predição, e partições tendo formatos arbitrários.[00070] For example, when a 2Nx2N coding 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 prediction unit height or width, partitions obtained by asymmetrically dividing the prediction unit height or width as 1:n or n:1, partitions that are obtained by geometrically dividing the prediction unit, and partitions having arbitrary shapes.

[00071] Um modo de predição da unidade de predição pode ser pelo menos um de um modo intra, um modo Inter e um modo de pular. Por exemplo, o modo intra ou o modo inter podem ser executados na partição de 2Nx2N, 2NxN, Nx2N ou NxN. Além disso, o modo de pular pode ser executado somente na partição de 2Nx2N. a codificação é independentemente executada em uma unidade de predição em uma unidade de codificação, desse modo selecionando um modo de predição tendo um erro de codificação mínimo.[00071] 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 run on the 2Nx2N, 2NxN, Nx2N, or NxN partition. Additionally, skip mode can only be performed on the 2Nx2N partition. coding is independently performed in a prediction unit in a coding unit, thereby selecting a prediction mode having a minimum coding error.

[00072] aparelho de codificação de vídeo 100 pode executar também a transformação nos dados de imagem em uma unidade de codificação com base não somente na unidade de codificação para codificar os dados de imagem, como também baseado em uma unidade de dados que é diferente da unidade de codificação.[00072] video coding apparatus 100 may also perform transformation on the image data into a coding unit based not only on the coding unit for encoding the image data, but also based on a data unit that is different from the coding unit.

[00073] Para executar a transformação na unidade de codificação, a transformação pode ser executada com base em uma unidade de dados tendo um tamanho menor do que ou igual à unidade de codificação. Por exemplo, a unidade de dados para a transformação pode incluir uma unidade de dados para um modo[00073] To perform the transformation on the coding unit, the transformation can be performed based on a data unit having a size less than or equal to the coding unit. For example, the data unit for the transformation may include a data unit for a mode

[00074] Uma unidade de dados utilizada como uma base da transformação será mencionada agora como uma ‘unidade de transformação’. Similarmente à unidade de codificação, a unidade de transformação na unidade de codificação pode ser recursivamente dividida em regiões de tamanho menor, de modo que a unidade de transformação possa ser determinada independentemente em unidades de regiões. Desse modo, dados residuais na unidade de codificação podem ser divididos de acordo com a unidade de transformação tendo a estrutura de árvore de acordo com profundidades de transformação.[00074] A data unit used as a basis of transformation will now be referred to as a 'transformation unit'. Similar to the coding unit, the transformation unit in the coding unit can be recursively divided into regions of smaller size, so that the transformation unit can be independently determined into region units. In this way, residual data in the coding unit can be divided according to the transformation unit having the tree structure according to transformation depths.

[00075] Uma profundidade de transformação indicando o número de tempos de divisão para atingir a unidade de transformação por dividir a altura e largura da unidade de codificação também pode ser ajustada na unidade de transformação. Por exemplo, em uma unidade de codificação atual de 2Nx2N, uma profundidade de transformação pode ser 0 quando o tamanho de uma unidade de transformação é 2Nx2N, pode ser 1 quando o tamanho da unidade de transformação é desse modo NxN, e pode ser 2 quando o tamanho da unidade de transformação é desse modo N/2xN/2. Em outras palavras, a unidade de transformação tendo a estrutura de árvore pode ser definida de acordo com as profundidades de transformação.[00075] A transformation depth indicating the number of division times to reach the transformation unit by dividing the height and width of the encoding unit can also be adjusted in the transformation unit. For example, in a current encoding unit of 2Nx2N, a transformation depth may be 0 when the size of a transformation unit is 2Nx2N, may be 1 when the size of the transformation unit is thus NxN, and may be 2 when the size of the transformation unit is therefore N/2xN/2. In other words, the transformation unit having the tree structure can be defined according to the transformation depths.

[00076] Informações de codificação de acordo com unidades de codificação correspondendo a uma profundidade codificada exigem não somente informações sobre a profundidade codificada, como também sobre informações relacionadas à codificação de predição e transformação. Por conseguinte, o determinador de unidade de codificação 120 não somente determina uma profundidade codificada tendo um erro de codificação mínimo, como também determina um tipo de partição em uma unidade de predição, um modo de predição de acordo com unidades de predição, e um tamanho de uma unidade de transformação para transformação.[00076] Coding information according to coding units corresponding to a coded depth requires not only information about the coded depth, but also information related to prediction and transformation coding. Therefore, the coding unit determiner 120 not only determines a coded depth having a minimum coding error, but also determines a partition type in a prediction unit, a prediction mode according to prediction units, and a size from a processing unit to processing.

[00077] Unidades de codificação de acordo com uma estrutura de árvore em uma unidade de codificação máxima e um método de determina uma partição, de acordo com modalidades da presente invenção, serão descritas em detalhe posteriormente com referência às figuras 3 até 12.[00077] Coding units according to a tree structure in a maximum coding unit and a method of determining a partition, according to embodiments of the present invention, will be described in detail later with reference to figures 3 to 12.

[00078] determinador de unidade de codificação 120 pode medir um erro de codificação de unidades de codificação mais profunda de acordo com profundidades utilizando Otimização de distorção de taxa com base em multiplicadores Lagrangianos.[00078] coding unit determiner 120 can measure a coding error of deeper coding units according to depths using Rate Distortion Optimization based on Lagrangian multipliers.

[00079] A unidade de saída 130 transmite os dados de imagem da unidade de codificação máxima, que são codificados com base pelo menos em uma profundidade codificada determinada pelo determinador de unidade de codificação 120, e informações sobre o modo de codificação de acordo com a profundidade codificada, em fluxos de bits.[00079] The output unit 130 transmits the image data of the maximum coding unit, which is encoded based on at least one coded depth determined by the coding unit determiner 120, and information about the coding mode in accordance with the encoded depth, in bit streams.

[00080] Os dados de imagem codificados podem ser obtidos por codificar dados residuais de uma imagem.[00080] Encoded image data can be obtained by encoding residual data of an image.

[00081] As informações sobre o modo de codificação de acordo com profundidade codificada podem incluir informações sobre a profundidade codificada, sobre o tipo de partição na unidade de predição, modo de predição e o tamanho da unidade de transformação.[00081] Information about the coding mode according to coded depth may include information about the coded depth, about the type of partition in the prediction unit, prediction mode and the size of the transformation unit.

[00082] As informações sobre a profundidade codificada podem ser definidas utilizando informações divididas de acordo com profundidades, que indicam se a codificação é realizada em unidades de codificação de uma profundidade mais baixa ao invés de uma profundidade atual. Se a profundidade atual da unidade de codificação atual for a profundidade codificada, dados de imagem na unidade de codificação atual são codificados e transmitidos e desse modo as informações divididas podem ser definidas não para dividir a unidade de codificação atual para uma profundidade mais baixa. Alternativamente, se a profundidade atual da unidade de codificação atual não for a profundidade codificada, a codificação é realizada na unidade de codificação da profundidade mais baixa, e desse modo as informações divididas podem ser definidas para dividir a unidade de codificação atual para obter as unidades de codificação da profundidade mais baixa.[00082] Coded depth information can be defined using information divided according to depths, which indicates whether coding is performed in coding units of a lower depth rather than a current depth. If the current depth of the current coding unit is the coded depth, image data in the current coding unit is encoded and transmitted and thereby the split information can be set not to split the current coding unit to a lower depth. Alternatively, if the current depth of the current coding unit is not the coded depth, coding is performed at the coding unit of the lowest depth, and thus the split information can be set to divide the current coding unit to obtain the units coding depth.

[00083] Se a profundidade atual não for a profundidade codificada, a codificação é realizada na unidade de codificação que é dividida na unidade de codificação da profundidade mais baixa. Uma vez que pelo menos uma unidade de codificação da profundidade mais baixa existe em uma unidade de codificação da profundidade atual, a codificação é repetidamente executada em cada unidade de codificação da profundidade mais baixa, e desse modo a codificação pode ser recursivamente executada para as unidades de codificação tendo a mesma profundidade.[00083] If the current depth is not the encoded depth, encoding is performed in the encoding unit that is divided into the encoding unit of the lowest depth. Since at least one coding unit of the lowest depth exists in a coding unit of the current depth, coding is repeatedly performed on each coding unit of the lowest depth, and thus coding can be recursively performed for the coding units of the lowest depth. encoding having the same depth.

[00084] Uma vez que as unidades de codificação tendo uma estrutura de árvore são determinadas para uma unidade de codificação máxima, e informações sobre pelo menos um modo de codificação são determinadas para uma unidade de codificação de uma profundidade codificada, informações sobre pelo menos um modo de codificação podem ser determinadas para uma unidade de codificação máxima. Além disso, uma profundidade codificada dos dados de imagem da unidade de codificação máxima pode ser diferente de acordo com locais uma vez que os dados de imagem são hierarquicamente divididos de acordo com profundidades, e desse modo informações sobre a profundidade codificada e o modo de codificação podem ser definidas para os dados de imagem.[00084] Since coding units having a tree structure are determined to a maximum coding unit, and information about at least one coding mode is determined to a coding unit of a coded depth, information about at least one encoding mode can be determined for a maximum encoding unit. Furthermore, an encoded depth of the image data of the maximum coding unit may be different according to locations since the image data is hierarchically divided according to depths, and thus information about the encoded depth and the encoding mode can be defined for image data.

[00085] Por conseguinte, a unidade de saída 130 pode atribuir informações de codificação sobre uma profundidade codificada correspondente e um modo de codificação para pelo menos uma da unidade de codificação, unidade de predição e uma unidade mínima incluída na unidade de codificação máxima.[00085] Therefore, the output unit 130 can assign coding information about a corresponding coded depth and a coding mode to at least one of the coding unit, prediction unit and a minimum unit included in the maximum coding unit.

[00086] A unidade mínima de acordo com uma modalidade da presente invenção é uma unidade de dados quadrados obtida por dividir a unidade de codificação mínima constituindo a profundidade mais baixa por 4. Alternativamente, a unidade mínima pode ser uma unidade de dados quadrados máximas que pode ser incluída em todas as unidades de codificação, unidades de predição, unidades de partição e unidades de transformação incluídas na unidade de codificação máxima.[00086] The minimum unit according to one embodiment of the present invention is a square data unit obtained by dividing the minimum coding unit constituting the lowest depth by 4. Alternatively, the minimum unit may be a maximum square data unit that can be included in all coding units, prediction units, partition units, and transformation units included in the maximum coding unit.

[00087] Por exemplo, as informações de codificação transmitidas através da unidade de saída 130 podem ser classificadas em informações de codificação de acordo com unidades de codificação e informações de codificação de acordo com unidades de predição. As informações de codificação de acordo com as unidades de codificação podem incluir as informações sobre o modo de predição e sobre o tamanho das partições. As informações de codificação de acordo com as unidades de predição podem incluir informações sobre uma direção estimada de um modo inter, sobre um índice de imagem de referência do modo Inter, sobre um vetor de movimento, sobre um componente croma de um modo intra, e sobre um método de interpolação do modo intra. Além disso, informações sobre um tamanho máximo da unidade de codificação definida de acordo com quadros, fatias, ou GOPs, e informações sobre uma profundidade máxima podem ser inseridas em um cabeçalho de um fluxo de bits.[00087] For example, the coding information transmitted through the output unit 130 can be classified into coding information according to coding units and coding information according to prediction units. The coding information according to the coding units may include information about the prediction mode and the size of the partitions. The coding information according to the prediction units may include information about an estimated direction of an inter mode, about an inter mode reference image index, about a motion vector, about a chroma component of an intra mode, and about an intra mode interpolation method. Additionally, information about a maximum size of the coding unit defined according to frames, slices, or GOPs, and information about a maximum depth may be inserted into a header of a bit stream.

[00088] No aparelho de codificação de vídeo 100, a unidade de codificação mais profunda pode ser uma unidade de codificação obtida por dividir uma altura ou largura de uma unidade de codificação de uma profundidade superior, que é uma camada acima, por dois. Em outras palavras, quando o tamanho da unidade de codificação da profundidade atual é 2Nx2N, o tamanho da unidade de codificação da profundidade mais baixa é NxN. Além disso, a unidade de codificação da profundidade atual tendo o tamanho de 2Nx2N pode incluir máximo 4 da unidade de codificação da profundidade inferior.[00088] In the video coding apparatus 100, the deepest coding unit may be a coding unit obtained by dividing a height or width of a coding unit of a higher depth, which is one layer above, by two. In other words, when the coding unit size of the current depth is 2Nx2N, the coding unit size of the lowest depth is NxN. Furthermore, the current depth coding unit having the size of 2Nx2N can include maximum 4 of the lower depth coding unit.

[00089] Por conseguinte, o aparelho de codificação de vídeo 100 pode formar as unidades de codificação tendo a estrutura de árvore por determinar unidades de codificação tendo um formato ótimo e um tamanho ótimo para cada unidade de codificação máxima, com base no tamanho da unidade de codificação máxima e a profundidade máxima determinada considerando características do quadro atual. Além disso, uma vez que a codificação pode ser realizada em cada unidade de codificação máxima utilizando qualquer um de vários modos de predição e transformações, um modo de codificação ótimo pode ser determinado considerando características da unidade de codificação de vários tamanhos de imagem.[00089] Therefore, the video coding apparatus 100 can form the coding units having the tree structure by determining coding units having an optimal format and an optimal size for each maximum coding unit, based on the size of the unit. maximum coding depth and the maximum depth determined considering characteristics of the current frame. Furthermore, since coding can be performed on each maximum coding unit using any of several prediction modes and transformations, an optimal coding mode can be determined by considering coding unit characteristics of various image sizes.

[00090] Desse modo, se uma imagem tendo elevada resolução ou quantidade grande de dados for codificada em um macrobloco convencional, um número de macroblocos por quadro aumenta excessivamente. Por conseguinte, um número de pedaços de informações comprimidas geradas para cada macrobloco aumenta, e desse modo é difícil transmitir as informações comprimidas e eficiência de compressão de dados diminui. Entretanto, por utilizar o aparelho de codificação de vídeo 100, eficiência de compressão de imagem pode ser aumentada uma vez que uma unidade de codificação é ajustada enquanto considera características de uma imagem enquanto aumenta um tamanho máximo de uma unidade de codificação enquanto considera um tamanho da imagem.[00090] Thus, if an image having high resolution or large amount of data is encoded in a conventional macroblock, a number of macroblocks per frame increases excessively. Therefore, a number of compressed information pieces generated for each macroblock increases, and thus it is difficult to transmit the compressed information and data compression efficiency decreases. However, by utilizing video coding apparatus 100, image compression efficiency can be increased since a coding unit is adjusted while considering characteristics of an image while increasing a maximum size of a coding unit while considering a size of the image.

[00091] A figura 2 é um diagrama de blocos de um aparelho de decodificação de vídeo 200, de acordo com uma modalidade da presente invenção.[00091] Figure 2 is a block diagram of a video decoding apparatus 200, in accordance with an embodiment of the present invention.

[00092] aparelho de decodificação de vídeo 200 inclui um receptor 210, um extrator de informações de codificação e dados de imagem 220, e um decodificador de dados de imagem 230. As definições de vários termos, como uma unidade de codificação, uma profundidade, uma unidade de predição, uma unidade de transformação, e informações sobre vários modos de codificação, para várias operações do aparelho de decodificação de vídeo 200 são idênticas àquelas descritas com referência à figura 1 e o aparelho de codificação de vídeo 100.[00092] video decoding apparatus 200 includes a receiver 210, a coding information extractor and image data 220, and an image data decoder 230. Definitions of various terms, such as a coding unit, a depth, a prediction unit, a transformation unit, and information about various coding modes, for various operations of the video decoding apparatus 200 are identical to those described with reference to FIG. 1 and the video coding apparatus 100.

[00093] receptor 210 recebe e analisa um fluxo de bits de um vídeo codificado. O extrator de informações de codificação e dados de imagem 220 extrai dados de imagem codificados para cada unidade de codificação a partir do fluxo de bits analisado, em que as unidades de codificação têm uma estrutura de árvore de acordo com cada unidade de codificação máxima, e transmite os dados de imagem extraídos para o decodificador de dados de imagem 230. O extrator de informações de codificação e dados de imagem 220 pode extrair informações sobre um tamanho máximo de uma unidade de codificação de um quadro atual, a partir de um cabeçalho sobre o quadro atual.[00093] receiver 210 receives and analyzes a bit stream of an encoded video. The coding information and image data extractor 220 extracts coded image data for each coding unit from the analyzed bit stream, wherein the coding units have a tree structure according to each maximum coding unit, and transmits the extracted image data to the image data decoder 230. The encoding information and image data extractor 220 can extract information about a maximum size of a coding unit of a current frame from a header about the current frame.

[00094] Além disso, o extrator de informações de codificação e dados de imagem 220 extrai informações sobre uma profundidade codificada e um modo de codificação para as unidades de codificação tendo uma estrutura de árvore de acordo com cada unidade de codificação máxima, a partir do fluxo de bits analisado. As informações extraídas sobre a profundidade codificada e o modo de codificação são transmitidas para o decodificador de dados de imagem 230. Em outras palavras, os dados de imagem em um fluxo de bits são divididos na unidade de codificação máxima de modo que o decodificador de dados de imagem 230 decodifique os dados de imagem para cada unidade de codificação máxima.[00094] Furthermore, the coding information and image data extractor 220 extracts information about a coded depth and a coding mode for the coding units having a tree structure according to each maximum coding unit, from the analyzed bit stream. The extracted information about the encoded depth and encoding mode is transmitted to the image data decoder 230. In other words, the image data in a bit stream is divided into the maximum coding unit so that the data decoder of image 230 decode the image data for each maximum encoding unit.

[00095] As informações sobre a profundidade codificada e o modo de codificação de acordo com a unidade de codificação máxima podem ser definidas para informações sobre pelo menos uma unidade de codificação correspondendo à profundidade codificada, e informações sobre um modo de codificação podem incluir informações sobre um tipo de partição de uma unidade de codificação correspondente correspondendo à profundidade codificada, sobre um modo de predição, e um tamanho da unidade de transformação. Além disso, informações de divisão de acordo com profundidades podem ser extraídas como as informações sobre a profundidade codificada.[00095] Information about the encoded depth and the encoding mode according to the maximum coding unit can be set to information about at least one coding unit corresponding to the encoded depth, and information about a coding mode can include information about a partition type of a corresponding coding unit corresponding to the coded depth, about a prediction mode, and a size of the transformation unit. Furthermore, division information according to depths can be extracted as the encoded depth information.

[00096] As informações sobre a profundidade codificada e o modo de codificação de acordo com cada unidade de codificação máxima extraída pelo extrator de informações de codificação e dados de imagem 220 são informações sobre uma profundidade codificada e um modo de codificação determinado para gerar um erro de codificação mínimo quando um codificador, como o aparelho de codificação de vídeo 100, repetidamente executa codificação para cada unidade de codificação mais profunda de acordo com profundidades de acordo com cada unidade de codificação máxima. Por conseguinte, o aparelho de decodificação de vídeo 200 pode recuperar uma imagem por decodificar os dados de imagem de acordo com uma profundidade codificada e um modo de codificação que gera o erro de codificação mínimo.[00096] Information about the encoded depth and coding mode according to each maximum coding unit extracted by the coding information extractor and image data 220 is information about a coded depth and coding mode determined to generate an error minimum coding unit when an encoder, such as video coding apparatus 100, repeatedly performs coding for each deepest coding unit in accordance with depths in accordance with each maximum coding unit. Therefore, the video decoding apparatus 200 can recover an image by decoding the image data according to a coded depth and a coding mode that generates the minimum coding error.

[00097] Uma vez que informações de codificação sobre a profundidade codificada e o modo de codificação podem ser atribuídas a uma unidade de dados predeterminada entre uma unidade de codificação correspondente, uma unidade de predição, e uma unidade mínima, o extrator de informações de codificação e dados de imagem 220 pode extrair as informações sobre a profundidade codificada e o modo de codificação de acordo com as unidades de dados predeterminadas. Se informações sobre uma profundidade codificada e modo de codificação de uma unidade de codificação máxima correspondente forem registradas de acordo com unidades de dados predeterminados, as unidades de dados predeterminados às quais as mesmas informações sobre a profundidade codificada e o modo de codificação são atribuídas podem ser inferidas como sendo as unidades de dados incluídas na mesma unidade de codificação máxima.[00097] Since coding information about the coding depth and coding mode can be assigned to a predetermined data unit among a corresponding coding unit, a prediction unit, and a minimum unit, the coding information extractor and image data 220 can extract information about the encoded depth and encoding mode according to predetermined data units. If information about a coded depth and coding mode of a corresponding maximum coding unit is recorded according to predetermined data units, the predetermined data units to which the same information about the coded depth and coding mode is assigned can be inferred to be the data units included in the same maximum coding unit.

[00098] decodificador de dados de imagem 230 recupera o quadro atual por decodificar os dados de imagem em cada unidade de codificação máxima com base nas informações sobre a profundidade codificada e o modo de codificação de acordo com as unidades de codificação máxima. Em outras palavras, o decodificador de dados de imagem 230 pode decodificar os dados de imagem codificados com base nas informações extraídas sobre o tipo de partição, o modo de predição, e a unidade de transformação para cada unidade de codificação entre as unidades de codificação tendo a estrutura de árvore incluída em cada unidade de codificação máxima. Um processo de decodificação pode incluir uma predição que inclui intrapredição e compensação de movimento, e uma transformação inversa.[00098] image data decoder 230 recovers the current frame by decoding the image data into each maximum coding unit based on information about the encoded depth and the coding mode according to the maximum coding units. In other words, the image data decoder 230 can decode the encoded image data based on the extracted information about the partition type, the prediction mode, and the transformation unit for each coding unit among the coding units having the tree structure included in each maximum encoding unit. A decoding process may include a prediction that includes intraprediction and motion compensation, and an inverse transformation.

[00099] O decodificador de dados de imagem 230 pode executar intrapredição ou compensação de movimento de acordo com uma partição e um modo de predição de cada unidade de codificação, com base nas informações sobre o tipo de partição e modo de predição da unidade de predição da unidade de codificação de acordo com profundidades codificadas.[00099] The image data decoder 230 may perform intra-prediction or motion compensation according to a partition and a prediction mode of each coding unit, based on information about the partition type and prediction mode of the prediction unit. of the coding unit according to coded depths.

[000100] Além disso, o decodificador de dados de imagem 230 pode executar transformação inversa de acordo com cada unidade de transformação na unidade de codificação, com base nas informações sobre o tamanho da unidade de transformação da unidade de codificação de acordo com profundidades codificadas, de modo a executar a transformação inversa de acordo com unidades de codificação máxima.[000100] Furthermore, the image data decoder 230 can perform inverse transformation according to each transformation unit in the coding unit, based on information about the size of the transformation unit of the coding unit according to encoded depths, in order to perform the inverse transformation according to maximum coding units.

[000101] O decodificador de dados de imagem 230 pode determinar pelo menos uma profundidade codificada de uma unidade de codificação máxima atual utilizando informações divididas de acordo com profundidades. Se as informações divididas indicarem que os dados de imagem não mais são divididos na profundidade atual, a profundidade atual é uma profundidade codificada. Por conseguinte, o decodificador de dados de imagem 230 pode decodificar dados codificados de pelo menos uma unidade de codificação correspondendo a cada profundidade codificada na unidade de codificação máxima atual utilizando as informações sobre o tipo de partição da unidade de predição, o modo de predição, e o tamanho da unidade de transformação para cada unidade de codificação correspondendo à profundidade codificada.[000101] The image data decoder 230 can determine at least one encoded depth from a current maximum coding unit using information divided according to depths. If the split information indicates that the image data is no longer split at the current depth, the current depth is an encoded depth. Therefore, the image data decoder 230 may decode data encoded from at least one coding unit corresponding to each depth encoded in the current maximum coding unit using information about the prediction unit partition type, the prediction mode, and the size of the transformation unit for each encoding unit corresponding to the encoded depth.

[000102] Em outras palavras, unidades de dados contendo as informações de codificação incluindo as mesmas informações divididas podem ser coletadas por observar o conjunto de informações de codificação atribuído para a unidade de dados predeterminada entre a unidade de codificação, a unidade de predição, e a unidade mínima, e as unidades de dados coletadas podem ser consideradas como sendo uma unidade de dados a ser decodificada pelo decodificador de dados de imagem 230 no mesmo modo de codificação.[000102] In other words, data units containing the coding information including the same divided information can be collected by observing the set of coding information assigned to the predetermined data unit between the coding unit, the prediction unit, and the minimum unit, and the collected data units can be considered to be a data unit to be decoded by the image data decoder 230 in the same encoding mode.

[000103] O aparelho de decodificação de vídeo 200 pode obter informações sobre pelo menos uma unidade de codificação que gera o erro de codificação mínimo quando a codificação é recursivamente realizada para cada unidade de codificação máxima, e pode utilizar as informações para decodificar o quadro atual. Em outras palavras, as unidades de codificação tendo a estrutura de árvore determinada como sendo as unidades de codificação ótimas em cada unidade de codificação máxima podem ser decodificadas.[000103] Video decoding apparatus 200 may obtain information about at least one coding unit that generates the minimum coding error when coding is recursively performed for each maximum coding unit, and may use the information to decode the current frame . In other words, the coding units having the tree structure determined to be the optimal coding units in each maximum coding unit can be decoded.

[000104] Por conseguinte, mesmo se dados de imagem tiverem resolução elevada e uma grande quantidade de dados, os dados de imagem podem ser eficientemente decodificados e recuperados por utilizar um tamanho de uma unidade de codificação e um modo de codificação, que são adaptavelmente determinados de acordo com características dos dados de imagem, utilizando informações sobre um modo de codificação ótimo recebido a partir de um codificador.[000104] Therefore, even if image data has high resolution and a large amount of data, the image data can be efficiently decoded and recovered by using a size of a coding unit and a coding mode, which are adaptively determined according to characteristics of the image data, using information about an optimal coding mode received from an encoder.

[000105] Um método de determinar unidades de codificação tendo uma estrutura de árvore, uma unidade de predição, e uma unidade de transformação, de acordo com uma modalidade da presente invenção, será descrito agora com referência às figuras 3 até 13.[000105] A method of determining coding units having a tree structure, a prediction unit, and a transformation unit, in accordance with an embodiment of the present invention, will now be described with reference to figures 3 to 13.

[000106] A figura 3 é um diagrama para descrever um conceito de unidades de codificação de acordo com uma modalidade da presente invenção.[000106] Figure 3 is a diagram for describing a concept of coding units according to an embodiment of the present invention.

[000107] Um tamanho de uma unidade de codificação pode ser expresso em largura x altura, e pode ser 64x64, 32x32, 16x16 e 8x8. Uma unidade de codificação de 64x64 pode ser dividida em partições de 64x64, 64x32, 32x64 ou 32x32, e uma unidade de codificação de 32x32 pode ser dividida em partições de 32x32, 32x16, 16x32 ou 16x16, uma unidade de codificação de 16x16 pode ser dividida em partições de 16x16, 16x8, 8x16 ou 8x8 e uma unidade de codificação de 8x8 pode ser dividida em partições de 8x8, 8x4, 4x8, ou 4x4.[000107] A size of a coding unit can be expressed in width x height, and can be 64x64, 32x32, 16x16 and 8x8. A 64x64 encoding unit can be divided into 64x64, 64x32, 32x64, or 32x32 partitions, and a 32x32 encoding unit can be divided into 32x32, 32x16, 16x32, or 16x16 partitions, a 16x16 encoding unit can be divided into 16x16, 16x8, 8x16, or 8x8 partitions and an 8x8 encoding unit can be divided into 8x8, 8x4, 4x8, or 4x4 partitions.

[000108] Em dados de vídeo 310, uma resolução é 1920 x 1080, um tamanho máximo de uma unidade de codificação é 64, e uma profundidade máxima é 2. Em dados de vídeo 320, uma resolução é 1920x1080, um tamanho máximo de uma unidade de codificação é 64, e uma profundidade máxima é 3. Em dados de vídeo 330, uma resolução é 352x288, um tamanho máximo de uma unidade de codificação é 16, e uma profundidade máxima é 1. A profundidade máxima mostrada na figura 13 indica um número total de divisões a partir de uma unidade de codificação máxima até uma unidade de decodificação mínima.[000108] In 310 video data, a resolution is 1920x1080, a maximum size of a coding unit is 64, and a maximum depth is 2. In 320 video data, a resolution is 1920x1080, a maximum size of a coding unit is 64, and a maximum depth is 3. In 330 video data, a resolution is 352x288, a maximum size of a coding unit is 16, and a maximum depth is 1. The maximum depth shown in Figure 13 indicates a total number of divisions from a maximum encoding unit to a minimum decoding unit.

[000109] Se uma resolução for elevada ou uma quantidade de dados for grande, um tamanho máximo de uma unidade de codificação pode ser grande de modo a não somente aumentar a eficiência de codificação como também refletir precisamente características de uma imagem. Por conseguinte, o tamanho máximo da unidade de codificação dos dados de vídeo 310 e 320 tendo a resolução mais elevada do que os dados de vídeo 330 pode ser 64.[000109] If a resolution is high or an amount of data is large, a maximum size of a coding unit can be large so as to not only increase coding efficiency but also accurately reflect characteristics of an image. Therefore, the maximum coding unit size of video data 310 and 320 having higher resolution than video data 330 may be 64.

[000110] Uma vez que a profundidade máxima dos dados de vídeo 310 é 2, unidades de codificação 315 dos dados de vídeo 310 podem incluir uma unidade de codificação máxima tendo um tamanho de eixo geométrico longo de 64, e unidades de codificação tendo tamanhos de eixo geométrico longo de 32 e 16 uma vez que as profundidades são aprofundadas para duas camadas por dividir a unidade de codificação máxima duas vezes. Enquanto isso, uma vez que a profundidade máxima dos dados de vídeo 330 é 1, unidades de codificação 335 dos dados de vídeo 330 podem incluir uma unidade de codificação máxima tendo um tamanho de eixo geométrico longo de 16, e unidades de codificação tendo um tamanho de eixo geométrico longo de 8 uma vez que profundidades são aumentadas para uma camada por dividir a unidade de codificação máxima uma vez.[000110] Since the maximum depth of video data 310 is 2, coding units 315 of video data 310 may include a maximum coding unit having a long axis size of 64, and coding units having sizes of long axis of 32 and 16 since the depths are deepened to two layers by dividing the maximum coding unit twice. Meanwhile, since the maximum depth of video data 330 is 1, coding units 335 of video data 330 may include a maximum coding unit having a long axis size of 16, and coding units having a size long axis of 8 since depths are increased for a layer by dividing the maximum coding unit once.

[000111] Uma vez que a profundidade máxima dos dados de vídeo 320 é 3, unidades de codificação 325 dos dados de vídeo 320 podem incluir uma unidade de codificação máxima tendo um tamanho de eixo geométrico longo de 64, e unidades de codificação tendo tamanhos de eixo geométrico longo de 32, 16 e 8 uma vez que as profundidades são aumentadas para 3 camadas por dividir a unidade de codificação máxima três vezes. À medida que uma profundidade aumenta, informações detalhadas podem ser precisamente expressas.[000111] Since the maximum depth of video data 320 is 3, coding units 325 of video data 320 may include a maximum coding unit having a long axis size of 64, and coding units having sizes of long axis of 32, 16 and 8 since the depths are increased to 3 layers by dividing the maximum encoding unit three times. As depth increases, detailed information can be precisely expressed.

[000112] A figura 4 é um diagrama de blocos de um codificador de imagem 400 com base em unidades de codificação, de acordo com uma modalidade da presente invenção.[000112] Figure 4 is a block diagram of an image encoder 400 based on coding units, according to an embodiment of the present invention.

[000113] codificador de imagem 400 executa operações do determinador de unidade de codificação 120 do aparelho de codificação de vídeo 100 para codificar dados de imagem. Em outras palavras, um intra preditor 410 executa intrapredição em unidades de codificação em um modo intra, entre um quadro atual 405, e um estimador de movimento 420 e um compensador de movimento 425 executa inter estimação e compensação de movimento em unidades de codificação em um modo inter entre o quadro atual 405 utilizando o quadro atual 405, e um quadro de referência 495.[000113] image encoder 400 performs operations of the coding unit determiner 120 of the video coding apparatus 100 to encode image data. In other words, an intra predictor 410 performs intraprediction in coding units in an intra mode, between a current frame 405, and a motion estimator 420 and a motion compensator 425 perform interestimation and motion compensation in coding units in an intra mode. inter mode between the current frame 405 using the current frame 405, and a reference frame 495.

[000114] Os dados transmitidos a partir do intra preditor 410, estimador de movimento 420, e compensador de movimento 425 são transmitidos como um coeficiente de transformação quantizada através de um transformador 430 e um quantizador 440. O coeficiente de transformação quantizada é recuperado como dados em um domínio espacial através de um quantizador inverso 460 e um transformador inverso 470, e os dados recuperados no domínio espacial são transmitidos como o quadro de referência 495 após serem processados posteriormente através de uma unidade de desbloqueio 480 e uma unidade de filtração de loop 490. O coeficiente de transformação quantizada pode ser transmitido como um fluxo de bits 455 através de um codificador de entropia 450.[000114] Data transmitted from the intra predictor 410, motion estimator 420, and motion compensator 425 is transmitted as a quantized transformation coefficient through a transformer 430 and a quantizer 440. The quantized transformation coefficient is recovered as data in a spatial domain through an inverse quantizer 460 and an inverse transformer 470, and the data recovered in the spatial domain is transmitted as the reference frame 495 after being further processed through an unblocking unit 480 and a loop filtering unit 490 The quantized transformation coefficient may be transmitted as a bit stream 455 through an entropy encoder 450.

[000115] Para que o codificador de imagem 400 seja aplicado no aparelho de codificação de vídeo 100, todos os elementos do codificador de imagem 400, isto é, o intra preditor 410, o estimador de movimento 420, o compensador de movimento 425, o transformador 430, o quantizador 440, o codificador de entropia 450, o quantizador inverso 460, o transformador inverso 470, a unidade de desbloqueio 480, e a unidade de filtração de loop 490 executam operações baseadas em cada unidade de codificação entre unidades de codificação tendo uma estrutura de árvore enquanto considera a profundidade máxima de cada unidade de codificação máxima.[000115] For the image encoder 400 to be applied to the video coding apparatus 100, all elements of the image encoder 400, i.e., the intra predictor 410, the motion estimator 420, the motion compensator 425, the transformer 430, the quantizer 440, the entropy encoder 450, the inverse quantizer 460, the inverse transformer 470, the deblocking unit 480, and the loop filtering unit 490 perform operations based on each coding unit between coding units having a tree structure while considering the maximum depth of each maximum coding unit.

[000116] Especificamente, o intra preditor 410, o estimador de movimento 420, e o compensador de movimento 425 determinam partições e um modo de predição de cada unidade de codificação entre as unidades de codificação tendo uma estrutura de árvore enquanto considera o tamanho máximo e a profundidade máxima de uma unidade de codificação máxima atual, e o transformador 430 determina o tamanho da unidade de transformação em cada unidade de codificação entre as unidades de codificação tendo uma estrutura de árvore.[000116] Specifically, the intra predictor 410, the motion estimator 420, and the motion compensator 425 determine partitions and a prediction mode of each coding unit among the coding units having a tree structure while considering the maximum size and the maximum depth of a current maximum coding unit, and the transformer 430 determines the size of the transformation unit in each coding unit among the coding units having a tree structure.

[000117] A figura 5 é um diagrama de blocos de um decodificador de imagem 500 com base em unidades de codificação, de acordo com uma modalidade da presente invenção.[000117] Figure 5 is a block diagram of an image decoder 500 based on coding units, according to an embodiment of the present invention.

[000118] Um analisador 510 analisa dados de imagem codificados para serem decodificados e informações sobre a codificação exigida para decodificação de um fluxo de bits 505. os dados de imagem codificados são transmitidos como dados quantizados inversos através de um decodificador de entropia 520 e um quantizador inverso 530, e os dados quantizados inversos são recuperados para dados de imagem em um domínio espacial através de um transformador inverso 540.[000118] An analyzer 510 analyzes encoded image data to be decoded and information about the encoding required for decoding a bit stream 505. The encoded image data is transmitted as inverse quantized data through an entropy decoder 520 and a quantizer inverse 530, and the inverse quantized data is recovered to image data in a spatial domain via an inverse transformer 540.

[000119] Um intra preditor 550 executa intrapredição em unidades de codificação em um modo intra com relação aos dados de imagem no domínio espacial, e um compensador de movimento 560 executa compensação de movimento em unidades de codificação em um modo inter por utilizar um quadro de referência 585.[000119] An intra predictor 550 performs intraprediction on coding units in an intra mode with respect to image data in the spatial domain, and a motion compensator 560 performs motion compensation on coding units in an inter mode by utilizing a frame of reference 585.

[000120] Os dados de imagem no domínio espacial, que passaram através do intra preditor 550 e compensador de movimento 560, podem ser transmitidos como um quadro recuperado 595 após serem processados posteriormente através de uma unidade de desbloqueio 570 e uma unidade de filtração de loop 580. Além disso, os dados de imagem que são processados posteriormente através da unidade de desbloqueio 570 e a unidade de filtração de loop 580 podem ser transmitidos como o quadro de referência 585.[000120] Image data in the spatial domain, which has passed through the intra predictor 550 and motion compensator 560, can be transmitted as a recovered frame 595 after being further processed through an unblocking unit 570 and a loop filtering unit 580. Furthermore, image data that is further processed through the deblocking unit 570 and the loop filtering unit 580 can be transmitted as the reference frame 585.

[000121] Para decodificar os dados de imagem no decodificador de dados de imagem 230 do aparelho de decodificação de vídeo 200, o decodificador de imagem 500 pode executar operações que são executadas após o analisador 510.[000121] To decode the image data in the image data decoder 230 of the video decoding apparatus 200, the image decoder 500 may perform operations that are performed after the analyzer 510.

[000122] Para que o decodificador de imagem 500 seja aplicado no aparelho de decodificação de vídeo 200, todos os elementos do decodificador de imagem 500, isto é, analisador 510, decodificador de entropia 520, quantizador inverso 530, transformador inverso 540, intra preditor 550, compensador de movimento 560, unidade de desbloqueio 570, e unidade de filtração de loop 580 executam operações baseadas em unidades de codificação tendo uma estrutura de árvore para cada unidade de codificação máxima.[000122] For image decoder 500 to be applied to video decoding apparatus 200, all elements of image decoder 500, i.e., analyzer 510, entropy decoder 520, inverse quantizer 530, inverse transformer 540, intra predictor 550, motion compensator 560, deblocking unit 570, and loop filtering unit 580 perform operations based on coding units having a tree structure for each maximum coding unit.

[000123] Especificamente, a intrapredição 550 e o compensador de movimento 560 executam operações com base em partições e um modo de predição para cada das unidades de codificação tendo uma estrutura de árvore, e o transformador inverso 540 executa operações baseadas em um tamanho de uma unidade de transformação para cada unidade de codificação.[000123] Specifically, the intraprediction 550 and the motion compensator 560 perform operations based on partitions and a prediction mode for each of the coding units having a tree structure, and the inverse transformer 540 performs operations based on a size of a transformation unit for each coding unit.

[000124] A figura 6 é um diagrama que ilustra unidades de codificação mais profunda de acordo com profundidades, e partições, de acordo com uma modalidade da presente invenção.[000124] Figure 6 is a diagram illustrating deeper coding units according to depths, and partitions, according to an embodiment of the present invention.

[000125] aparelho de codificação de vídeo 100 e o parelho de decodificação de vídeo 200 utilizam unidades de codificação hierárquica de modo a considerar características de uma imagem. Uma altura máxima, uma largura máxima, e uma profundidade máxima de unidades de codificação podem ser adaptavelmente determinadas de acordo com as características da imagem, ou podem ser diferentemente ajustadas por um usuário. Os tamanhos de unidades de codificação mais profunda de acordo com profundidades podem ser determinados de acordo com o tamanho máximo predeterminado da unidade de codificação.[000125] video coding apparatus 100 and video decoding apparatus 200 use hierarchical coding units in order to consider characteristics of an image. A maximum height, a maximum width, and a maximum depth of coding units can be adaptively determined according to the characteristics of the image, or can be differently adjusted by a user. The sizes of deeper coding units according to depths can be determined according to the predetermined maximum size of the coding unit.

[000126] Em uma estrutura hierárquica 600 de unidades de codificação, de acordo com uma modalidade da presente invenção, a altura máxima e a largura máxima das unidades de codificação são individualmente 64, e a profundidade máxima é 4. Uma vez que uma profundidade aumenta ao longo de um eixo geométrico vertical da estrutura hierárquica 600, uma altura e uma largura da unidade de codificação mais profunda são individualmente divididas. Além disso, uma unidade de predição e partições, que são bases para codificação por predição de cada unidade de codificação mais profunda, é mostrada ao longo de um eixo geométrico horizontal da estrutura hierárquica 600.[000126] In a hierarchical structure 600 of coding units, according to an embodiment of the present invention, the maximum height and maximum width of the coding units are individually 64, and the maximum depth is 4. As a depth increases Along a vertical geometric axis of the hierarchical structure 600, a height and a width of the deepest coding unit are individually divided. Furthermore, a prediction unit and partitions, which are bases for predictive coding of each deeper coding unit, are shown along a horizontal geometric axis of the hierarchical structure 600.

[000127] Em outras palavras, uma unidade de codificação 610 é uma unidade de codificação máxima na estrutura hierárquica 600, em que uma profundidade é 0 e um tamanho, isto é, uma altura por largura, é 64x64. A profundidade aumenta ao longo do eixo geométrico vertical, e uma unidade de codificação 620 tendo um tamanho de 32x32 e uma profundidade de 1, uma unidade de codificação 630 tendo um tamanho de 16x16 e uma profundidade de 2, uma unidade de codificação 640 tendo um tamanho de 8x8 e uma profundidade de 3, e uma unidade de codificação 650 tendo um tamanho de 4x4 e uma profundidade de 4 existem. A unidade de codificação 650 tendo o tamanho de 4x4 e a profundidade de 4 é uma unidade de codificação mínima.[000127] In other words, a coding unit 610 is a maximum coding unit in the hierarchical structure 600, where a depth is 0 and a size, that is, a height by width, is 64x64. Depth increases along the vertical axis, and an encoding unit 620 having a size of 32x32 and a depth of 1, an encoding unit 630 having a size of 16x16 and a depth of 2, an encoding unit 640 having a size of 8x8 and a depth of 3, and a 650 encoding unit having a size of 4x4 and a depth of 4 exist. The coding unit 650 having the size of 4x4 and the depth of 4 is a minimum coding unit.

[000128] A unidade de predição e as partições de uma unidade de codificação são dispostas ao longo do eixo geométrico horizontal de acordo com cada profundidade. Em outras palavras, se a unidade de codificação 610 tendo o tamanho de 64x64 e a profundidade de 0 for uma unidade de predição, a unidade de predição pode ser dividida em partições incluídas na unidade de codificação 610, isto é, uma partição 610 tendo um tamanho de 64x64, partições 612 tendo o tamanho de 64x32, partições 614 tendo o tamanho de 32x64, ou partições 616 tendo o tamanho de 32x32.[000128] The prediction unit and the partitions of a coding unit are arranged along the horizontal geometric axis according to each depth. In other words, if the coding unit 610 having the size of 64x64 and the depth of 0 is a prediction unit, the prediction unit can be divided into partitions included in the coding unit 610, that is, a partition 610 having a size of 64x64, 612 partitions having the size of 64x32, 614 partitions having the size of 32x64, or 616 partitions having the size of 32x32.

[000129] Similarmente, uma unidade de predição da unidade de codificação 620 tendo o tamanho de 32x32 e a profundidade de 1 pode ser dividida em partições incluídas na unidade de codificação 620, isto é, uma partição 620 tendo um tamanho de 32x32, partições 622 tendo um tamanho de 32x16, partições 624 tendo um tamanho de 16x32, e partições 626 tendo um tamanho de 16x16.[000129] Similarly, a prediction unit of the coding unit 620 having the size of 32x32 and the depth of 1 can be divided into partitions included in the coding unit 620, that is, a partition 620 having a size of 32x32, partitions 622 having a size of 32x16, 624 partitions having a size of 16x32, and 626 partitions having a size of 16x16.

[000130] Similarmente, uma unidade de predição da unidade de codificação 630 tendo o tamanho de 16x16 e a profundidade de 2 pode ser dividida em partições incluídas na unidade de codificação 630, isto é, uma partição tendo um tamanho de 16x16 incluída na unidade de codificação 630, partições 632 tendo um tamanho de 16x8, partições 634 tendo um tamanho de 8x16, e partições 636 tendo um tamanho de 8x8.[000130] Similarly, a prediction unit of the coding unit 630 having the size of 16x16 and the depth of 2 can be divided into partitions included in the coding unit 630, that is, a partition having a size of 16x16 included in the coding unit 630. encoding 630, partitions 632 having a size of 16x8, partitions 634 having a size of 8x16, and partitions 636 having a size of 8x8.

[000131] Similarmente, uma unidade de predição da unidade de codificação 640 tendo o tamanho de 8x8 e a profundidade de 3 pode ser dividida em partições incluídas na unidade de codificação 640, isto é, uma partição tendo um tamanho de 8x8 incluída na unidade de codificação 640, partições 642 tendo um tamanho de 8x4, partições 644 tendo um tamanho de 4x8, e partições 646 tendo um tamanho de 4x4.[000131] Similarly, a prediction unit of the coding unit 640 having the size of 8x8 and the depth of 3 can be divided into partitions included in the coding unit 640, that is, a partition having a size of 8x8 included in the coding unit 640. encoding 640, partitions 642 having a size of 8x4, partitions 644 having a size of 4x8, and partitions 646 having a size of 4x4.

[000132] A unidade de codificação 650 tendo o tamanho de 4x4 e a profundidade de 4 é a unidade de codificação mínima e uma unidade de codificação da profundidade mais baixa. Uma unidade de predição da unidade de codificação 650 é somente atribuída a uma partição tendo um tamanho de 4x4.[000132] The coding unit 650 having the size of 4x4 and the depth of 4 is the minimum coding unit and a coding unit of the lowest depth. A prediction unit of coding unit 650 is only assigned to a partition having a size of 4x4.

[000133] Para determinar pelo menos uma profundidade codificada das unidades de codificação constituindo a unidade de codificação máxima 610, o determinador de unidade de codificação 120 do aparelho de codificação de vídeo 100 executa codificação para unidades de codificação correspondendo a cada profundidade incluída na unidade de codificação máxima 610.[000133] To determine at least one coded depth of the coding units constituting the maximum coding unit 610, the coding unit determiner 120 of the video coding apparatus 100 performs coding for coding units corresponding to each depth included in the coding unit. maximum encoding 610.

[000134] Um número de unidades de codificação mais profunda de acordo com profundidades incluindo dados na mesma faixa e mesmo tamanho aumenta à medida que a profundidade aumenta. Por exemplo, quatro unidades de codificação correspondendo a uma profundidade de 2 são exigidas para cobrir dados que são incluídos em uma unidade de codificação correspondendo a uma profundidade de 1. Por conseguinte, para comparar resultados de codificação dos mesmos dados de acordo com profundidades, a unidade de codificação correspondendo à profundidade de 1 e quatro unidades de codificação correspondendo à profundidade de 2 são individualmente codificados.[000134] A number of deeper coding units according to depths including data in the same range and 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 one coding unit corresponding to a depth of 1. Therefore, to compare results of coding the same data according to depths, the coding unit corresponding to depth 1 and four coding units corresponding to depth 2 are individually coded.

[000135] Para executar codificação para uma profundidade atual entre as profundidades, um erro de codificação mínimo pode ser selecionado para a profundidade atual por executar codificação para cada unidade de predição nas unidades de codificação correspondendo à profundidade atual, ao longo do eixo geométrico horizontal da estrutura hierárquica 600. Alternativamente, o erro de codificação mínimo pode ser buscado por comparar os erros de codificação mínimos de acordo com as profundidades, por executar codificação para cada profundidade à medida que a profundidade aumenta ao longo do eixo geométrico vertical da estrutura hierárquica 600. Uma profundidade e uma partição tendo o erro de codificação mínimo na unidade de codificação 610 podem ser selecionadas como a profundidade codificada e um tipo de partição da unidade de codificação 610.[000135] To perform encoding for a current depth between depths, a minimum encoding error can be selected for the current depth by performing encoding for each prediction unit in the encoding units corresponding to the current depth, along the horizontal geometric axis of the depth. hierarchical structure 600. Alternatively, the minimum coding error can be sought by comparing the minimum coding errors according to the depths, by performing coding for each depth as the depth increases along the vertical geometric axis of the hierarchical structure 600. A depth and a partition having the minimum coding error in the coding unit 610 may be selected as the coding depth and a partition type of the coding unit 610.

[000136] A figura 7 é um diagrama para descrever uma relação entre uma unidade de codificação 710 e unidades de transformação 720, de acordo com uma modalidade da presente invenção.[000136] Figure 7 is a diagram for describing a relationship between a coding unit 710 and transformation units 720, according to an embodiment of the present invention.

[000137] aparelho de codificação de vídeo 100 ou o aparelho de decodificação de vídeo 200 codifica ou decodifica uma imagem de acordo com unidades de codificação tendo tamanhos menores do que ou iguais a uma unidade de codificação máxima para cada unidade de codificação máxima. Os tamanhos de unidades de transformação para transformação durante codificação podem ser selecionados com base em unidades de dados que não são maiores do que uma unidade de codificação correspondente.[000137] video coding apparatus 100 or video decoding apparatus 200 encodes or decodes an image according to coding units having sizes less than or equal to a maximum coding unit for each maximum coding unit. Transformation unit sizes for transformation during encoding can be selected based on data units that are not larger than a corresponding encoding unit.

[000138] Por exemplo, no aparelho de codificação de vídeo 100 ou aparelho de decodificação de vídeo 200, se um tamanho da unidade de codificação 710 for 64x64, transformação pode ser realizada utilizando as unidades de transformação 720 tendo um tamanho de 32x32.[000138] For example, in video coding apparatus 100 or video decoding apparatus 200, if a size of coding unit 710 is 64x64, transformation can be performed using transformation units 720 having a size of 32x32.

[000139] Além disso, dados da unidade de codificação 710 tendo o tamanho de 64x64 podem ser codificados por executar a transformação em cada das unidades de transformação tendo o tamanho de 32x32, 16x16, 8x8 e 4x4, que são menores do que 64x64 e então uma unidade de transformação tendo o erro de codificação mínimo pode ser selecionada.[000139] Furthermore, data from the coding unit 710 having the size of 64x64 can be encoded by performing the transformation in each of the transformation units having the size of 32x32, 16x16, 8x8 and 4x4, which are smaller than 64x64 and then a transformation unit having the minimum coding error can be selected.

[000140] A figura 8 é um diagrama para descrever informações de codificação de unidades de codificação correspondendo a uma profundidade codificada, de acordo com uma modalidade da presente invenção.[000140] Figure 8 is a diagram for describing coding information of coding units corresponding to a coded depth, in accordance with an embodiment of the present invention.

[000141] A unidade de saída 130 do aparelho de codificação de vídeo 100 pode codificar e transmitir informações 800 sobre um tipo de partição, informações 810 sobre um modo de predição e informações 820 sobre um tamanho de uma unidade de transformação para cada unidade de codificação correspondendo a uma profundidade codificada, como informações sobre um modo de codificação.[000141] The output unit 130 of the video coding apparatus 100 may encode and transmit information 800 about a partition type, information 810 about a prediction mode, and information 820 about a size of a transformation unit for each coding unit. corresponding to an encoded depth, such as information about an encoding mode.

[000142] As informações 800 indicam informações sobre um formato de uma partição obtida por dividir uma unidade de predição de uma unidade de codificação atual, em que a partição é uma unidade de dados para codificação por predição da unidade de codificação atual. Por exemplo, uma unidade de codificação atual CU_O tendo um tamanho de 2Nx2N pode ser dividida em qualquer uma de uma partição 802 tendo um tamanho de 2Nx2N, uma partição 804 tendo um tamanho de 2NxN, uma partição 806 tendo um tamanho de Nx2N, e uma partição 808 tendo um tamanho de NxN. Aqui, as informações 800 sobre um tipo de partição são definidas para indicar uma da partição 804 tendo um tamanho de 2NxN, a partição 806 tendo um tamanho de Nx2N, e a partição 808 tendo um tamanho de NxN.[000142] Information 800 indicates information about a format of a partition obtained by dividing a prediction unit from a current coding unit, wherein the partition is a data unit for coding by predicting the current coding unit. For example, a current coding unit CU_O having a size of 2Nx2N can be divided into any of a partition 802 having a size of 2Nx2N, a partition 804 having a size of 2NxN, a partition 806 having a size of Nx2N, and a 808 partition having a size of NxN. Here, information 800 about a partition type is defined to indicate one of the partition 804 having a size of 2NxN, the partition 806 having a size of Nx2N, and the partition 808 having a size of NxN.

[000143] As informações 810 indicam um modo de predição de cada partição. Por exemplo, as informações 810 podem indicar um modo de codificação por predição executado em uma partição indicada pelas informações 800, isto é, um modo intra 812, um modo inter 814, ou um modo de pular 816.[000143] Information 810 indicates a prediction mode for each partition. For example, information 810 may indicate a predictive coding mode performed on a partition indicated by information 800, i.e., an intra mode 812, an inter mode 814, or a skip mode 816.

[000144] As informações 820 indicam uma unidade de transformação a ser baseada em quando a transformação é realizada em uma unidade de codificação atual. Por exemplo, a unidade de transformação pode ser uma primeira unidade de transformação intra 822, uma segunda unidade de transformação intra 824, uma primeira unidade de transformação inter 826, ou uma segunda unidade de transformação intra 828.[000144] Information 820 indicates a transformation unit to be based on when the transformation is performed on a current encoding unit. For example, the transformation unit may be a first intra transformation unit 822, a second intra transformation unit 824, a first inter transformation unit 826, or a second intra transformation unit 828.

[000145] extrator de informações de codificação e dados de imagem 220 do aparelho de decodificação de vídeo 200 pode extrair e utilizar as informações 800, 810 e 820 para decodificação, de acordo com cada unidade de codificação mais profunda.[000145] encoding information extractor and image data 220 from video decoding apparatus 200 can extract and use information 800, 810 and 820 for decoding, according to each deeper coding unit.

[000146] A figura 9 é um diagrama de unidades de codificação mais profundas de acordo com profundidades, de acordo com uma modalidade da presente invenção.[000146] Figure 9 is a diagram of deeper coding units according to depths, according to an embodiment of the present invention.

[000147] Informações divididas podem ser utilizadas para indicar uma alteração de uma profundidade. As informações divididas indicam se uma unidade de codificação de uma profundidade atual é dividida em unidades de codificação de uma profundidade mais baixa.[000147] Split information can be used to indicate a change in depth. Split information indicates whether a coding unit of a current depth is split into coding units of a lower depth.

[000148] Uma unidade de predição 910 para codificação por predição de uma unidade de codificação 900 tendo uma profundidade de 0 e um tamanho de 2N_0x2N_0 pode incluir partições de um tipo de partição 912 tendo um tamanho de 2N_0x2N_0, um tipo de partição 914 tendo um tamanho de 2N_0xN_0, um tipo de partição 916 tendo um tamanho de N_0x2N_0, e um tipo de partição 918 tendo um tamanho de N_0xN_0. A figura 9 somente ilustra os tipos de partição 912 até 918 que são obtidos por dividir simetricamente a unidade de predição 910, porém um tipo de partição não é limitado aos mesmos e as partições da unidade de predição 910 podem incluir partições assimétricas, partições tendo um formato predeterminado, e partições tendo um formato geométrico.[000148] A prediction unit 910 for predictive coding of a coding 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 2N_0x2N_0, a partition type 914 having a size of 2N_0xN_0, a partition type 916 having a size of N_0x2N_0, and a partition type 918 having a size of N_0xN_0. Figure 9 only illustrates the partition types 912 to 918 that are obtained by symmetrically dividing the prediction unit 910, but a partition type is not limited thereto and the partitions of the prediction unit 910 may include asymmetric partitions, partitions having a predetermined format, and partitions having a geometric shape.

[000149] A codificação por predição é repetidamente realizada em uma partição tendo um tamanho de 2N_0xN_0, duas partições tendo um tamanho de N_0x2N_0, e quatro partições tendo um tamanho de N_0xN_0, de acordo com cada tipo de partição. A codificação por predição em um modo intra e um modo inter pode ser realizada nas partições tendo os tamanhos de 2N_0x2N_0, N_0x2N_0, 2N_0xN_0, e N_0xN_0. A codificação por predição em um modo de pular é executada somente na partição tendo o tamanho de 2N_0x2N_0.[000149] Predictive coding is repeatedly performed on one partition having a size of 2N_0xN_0, two partitions having a size of N_0x2N_0, and four partitions having a size of N_0xN_0, according to each partition type. Predictive coding in an intra mode and an inter mode can be performed on partitions having the sizes of 2N_0x2N_0, N_0x2N_0, 2N_0xN_0, and N_0xN_0. Predictive coding in a skip mode is performed only on the partition having the size of 2N_0x2N_0.

[000150] Se um erro de codificação for menor em um dos tipos de partição 912 até 916, a unidade de predição 910 pode não ser dividida em uma profundidade inferior.[000150] If a coding error is minor in one of the partition types 912 through 916, the prediction unit 910 may not be partitioned to a lower depth.

[000151] Se o erro de codificação for o menor no tipo de partição 918, uma profundidade é alterada de 0 para 1 para dividir o tipo de partição 918 em operação 920, e a codificação é repetidamente executada em unidades de codificação 930 tendo uma profundidade de 2 e um tamanho de N_0xN_0 para buscar um erro de codificação mínimo.[000151] If the encoding error is the smallest in partition type 918, a depth is changed from 0 to 1 to divide partition type 918 into operation 920, and encoding is repeatedly performed in encoding units 930 having a depth of 2 and a size of N_0xN_0 to seek minimum coding error.

[000152] Uma unidade de predição 940 para codificação por predição da unidade de codificação 930 tendo uma profundidade de 1 e um tamanho de 2N_1x2N_1 (=N_0xN_0) pode incluir partições de um tipo de partição 942 tendo um tamanho de 2N_1x2N_1, um tipo de partição 944 tendo um tamanho de 2N_1xN_1, um tipo de partição 946 tendo um tamanho de N_1x2N_1, and um tipo de partição 948 tendo um tamanho de N_1xN_1.[000152] A prediction unit 940 for predictive coding of the coding unit 930 having a depth of 1 and a size of 2N_1x2N_1 (=N_0xN_0) may include partitions of a partition type 942 having a size of 2N_1x2N_1, a partition type 944 having a size of 2N_1xN_1, a partition type 946 having a size of N_1x2N_1, and a partition type 948 having a size of N_1xN_1.

[000153] Se um erro de codificação for o menor no tipo de partição 948, uma profundidade é alterada de 1 para 2 para dividir o tipo de partição 948 em operação 950, e codificação é repetidamente realizada nas unidades de codificação 960, que têm uma profundidade de 2 e um tamanho de N_2xN_2 para procurar um erro de codificação mínimo.[000153] If a coding error is the smallest in partition type 948, a depth is changed from 1 to 2 to divide partition type 948 into operation 950, and coding is repeatedly performed in coding units 960, which have a depth of 2 and a size of N_2xN_2 to look for a minimum coding error.

[000154] Quando uma profundidade máxima é d, a operação dividida de acordo com cada profundidade pode ser executada até quando uma profundidade se torna d-1, e informações divididas podem ser codificadas como até quando uma profundidade é um de 0 a d-2. Em outras palavras, quando codificação é executada até quando a profundidade é d-1 após uma unidade de codificação correspondendo a uma profundidade de d-2 é dividida na operação 970, uma unidade de predição 990 para codificação por predição de uma unidade de codificação 980 tendo uma profundidade de -1 e um tamanho de 2N_(d-1)x2N_(d-1) pode incluir partições de um tipo de partição 992 tendo um tamanho de 2N_(d-1)x2N_(d-1), um tipo de partição 994 tendo um tamanho de 2N_(d-1)xN_(d-1), um tipo de partição 996 tendo um tamanho de N_(d-1)x2N_(d-1), e um tipo de partição 998 tendo um tamanho de N_(d-1)xN_(d-1).[000154] When a maximum depth is d, the operation divided according to each depth can be performed until when a depth becomes d-1, and divided information can be encoded as until 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 operation 970, a prediction unit 990 for coding by predicting a coding unit 980 having a depth of -1 and a size of 2N_(d-1)x2N_(d-1) may include partitions of a partition type 992 having a size of 2N_(d-1)x2N_(d-1), a type of partition type 994 having a size of 2N_(d-1)xN_(d-1), a partition type 996 having a size of N_(d-1)x2N_(d-1), and a partition type 998 having a size of N_(d-1)xN_(d-1).

[000155] A codificação por predição pode ser repetidamente realizada em uma partição tendo um tamanho de 2N_(d-1)x2N_(d- 1), duas partições tendo um tamanho de 2N_(d-1)xN_(d-1), duas partições tendo um tamanho de N_(d-1)x2N_(d-1), quatro partições tendo um tamanho de N_(d-1)xN_(d-1) entre os tipos de partição 992 até 998 para procurar um tipo de partição tendo um erro de codificação mínimo.[000155] Predictive coding can be repeatedly performed on a partition having a size of 2N_(d-1)x2N_(d-1), two partitions having a size of 2N_(d-1)xN_(d-1), two partitions having a size of N_(d-1)x2N_(d-1), four partitions having a size of N_(d-1)xN_(d-1) between partition types 992 through 998 to search for a type of partition having minimal coding error.

[000156] Mesmo quando o tipo de partição 998 tem o erro de codificação mínimo, uma vez que uma profundidade máxima é d, uma unidade de codificação CU_(d-1) tendo uma profundidade de d-1 não mais é dividida em uma profundidade inferior, e uma profundidade codificada para as unidades de codificação constituindo uma unidade de codificação máxima atual 900 é determinada ser d-1 e um tipo de partição da unidade de codificação máxima atual 900 pode ser determinada como sendo N_(d-1)xN_(d-1). Além disso, uma vez que a profundidade máxima é d e uma unidade de codificação mínima 980 tendo uma profundidade mais baixa de d-1 não mais é dividida para uma profundidade inferior, informações divididas para a unidade de[000156] Even when partition type 998 has the minimum coding error, since a maximum depth is d, a CU_(d-1) coding unit having a depth of d-1 is no longer divided into a depth lower, and a coded depth for the coding units constituting a current maximum coding unit 900 is determined to be d-1 and a partition type of the current maximum coding unit 900 may be determined to be N_(d-1)xN_( d-1). Furthermore, since the maximum depth is d and a minimum coding unit 980 having a lower depth of d-1 is no longer split to a lower depth, information split to the coding unit

[000157] Uma unidade de dados 999 pode ser uma ‘unidade mínima’ para a unidade de codificação máxima atual. Uma unidade mínima de acordo com uma modalidade da presente invenção pode ser uma unidade de dados quadrados obtida por dividir uma unidade de codificação mínima 980 por 4. Por executar a codificação repetidamente, o aparelho de codificação de vídeo 100 pode selecionar uma profundidade tendo o erro de codificação mínimo por comparar erros de codificação de acordo com profundidades da unidade de codificação 900 para determinar uma profundidade codificada, e definir um tipo de partição correspondente e um modo de predição como um modo de codificação da profundidade codificada.[000157] A data unit 999 may be a 'minimum unit' for the current maximum coding unit. A minimum unit in accordance with an embodiment of the present invention may be a square data unit obtained by dividing a minimum coding unit 980 by 4. By performing coding repeatedly, the video coding apparatus 100 may select a depth having the error minimum coding by comparing coding errors according to depths of the coding unit 900 to determine a coded depth, and defining a corresponding partition type and a prediction mode as a coding mode of the coded depth.

[000158] Como tal, os erros de codificação mínima de acordo com profundidades são comparados em todas as profundirdes de 1 até d, e uma profundidade tendo o erro de codificação mínimo pode ser determinada como uma profundidade codificada. A profundidade codificada, o tipo de partição da unidade de predição, e o modo de predição podem ser codificados e transmitidos como informações sobre um modo de codificação. Além disso, uma vez que uma unidade de codificação é dividida de uma profundidade de 0 a uma profundidade codificada, somente informações divididas da profundidade codificada são definidas em 0, e informações divididas de profundidades excluindo a profundidade codificada são definidas em 1.[000158] As such, the minimum coding errors according to depths are compared at all depths from 1 to d, and a depth having the minimum 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 a coding mode. Furthermore, since a coding unit is divided from a depth of 0 to an encoded depth, only divided information of the encoded depth is set to 0, and divided information of depths excluding the encoded depth is set to 1.

[000159] extrator de informações de codificação e dados de imagem 220 do aparelho de decodificação de vídeo 200 pode extrair e utilizar as informações sobre a profundidade codificada e a unidade de predição da unidade de codificação 900 para decodificar a partição 912. O aparelho de decodificação de vídeo 200 pode determinar uma profundidade, na qual informações divididas são 0, como uma profundidade codificada utilizando informações divididas de acordo com profundidades, e usar informações sobre um modo de codificação da profundidade correspondente para decodificação.[000159] encoding information extractor and image data 220 from video decoding apparatus 200 may extract and use information about the encoded depth and prediction unit from encoding unit 900 to decode partition 912. The decoding apparatus video device 200 may determine a depth, in which divided information is 0, as a depth encoded using information divided according to depths, and use information about an encoding mode of the corresponding depth for decoding.

[000160] As figuras 10 até 12 são diagramas para descrever uma relação entre unidades de codificação 1010, unidades de predição 1060, e unidades de transformação 1070, de acordo com uma modalidade da presente invenção.[000160] Figures 10 to 12 are diagrams for describing a relationship between coding units 1010, prediction units 1060, and transformation units 1070, in accordance with an embodiment of the present invention.

[000161] As unidades de codificação 1010 são unidades de codificação tendo uma estrutura de árvore, correspondendo a profundidades codificadas determinadas pelo aparelho de codificação de vídeo 100, em uma unidade de codificação máxima. As unidades de predição 1060 são partições de unidades de predição de cada das unidades de codificação 1010, e as unidades de transformação 1070 são unidades de transformação de cada das unidades de codificação 1010.[000161] Coding units 1010 are coding units having a tree structure, corresponding to coded depths determined by video coding apparatus 100, in a maximum coding unit. The prediction units 1060 are partitions of prediction units of each of the coding units 1010, and the transformation units 1070 are transformation units of each of the coding units 1010.

[000162] Quando uma profundidade de uma unidade de codificação máxima é 0 nas unidades de codificação 1010, profundidade de unidades de codificação 1012 e 1054 são 1, profundidades de unidades de codificação 1014, 1016, 1018, 1028, 1050, e 1052 são 2, profundidades de unidades de codificação 1020, 1022, 1024, 1026, 1030, 1032, e 1048 são 3, e profundidades de unidades de codificação 1040, 1042, 1044, e 1046 são 4.[000162] When a depth of a maximum coding unit is 0 in coding units 1010, depth of coding units 1012 and 1054 are 1, depths of coding units 1014, 1016, 1018, 1028, 1050, and 1052 are 2 , depths of coding units 1020, 1022, 1024, 1026, 1030, 1032, and 1048 are 3, and depths of coding units 1040, 1042, 1044, and 1046 are 4.

[000163] Nas unidades de predição 1060, algumas unidades de codificação 1014, 1016, 1022, 1032, 1048, 1050, 1052, e 1054 são obtidas por dividir as unidades de codificação nas unidades de codificação. Em outras palavras, tipos de partição nas unidades de codificação 1014, 1022, 1050, e 1054 tem um tamanho de 2NxN, tipos de partição nas unidades de codificação 1016, 1048, e 1052 têm um tamanho de Nx2N, e um tipo de partição da unidade de codificação 1032 tem um tamanho de NxN. Unidades de predição e partições das unidades de codificação 1010 são menores do que ou iguais a cada unidade de codificação.[000163] In prediction units 1060, some coding units 1014, 1016, 1022, 1032, 1048, 1050, 1052, and 1054 are obtained by dividing the coding units into coding units. In other words, partition types in encoding units 1014, 1022, 1050, and 1054 have a size of 2NxN, partition types in encoding units 1016, 1048, and 1052 have a size of Nx2N, and a partition type in encoding unit 1032 has a size of NxN. Prediction units and partitions of the coding units 1010 are less than or equal to each coding unit.

[000164] A transformação ou transformação inversa é executada em dados de imagem da unidade de codificação 1052 nas unidades de transformação 1070 em uma unidade de dados que é menor do que a unidade de codificação 1052. Além disso, as unidades de codificação 1014, 1016, 1022, 1032, 1048, 1050, e 1052 nas unidades de transformação 1070 são diferentes daquelas nas unidades de predição 1060 em termos de tamanhos e formatos. Em outras palavras, os aparelhos de codificação e decodificação de vídeo 100 e 200 podem executar intrapredição, estimação de movimento, compensação de movimento, transformação e transformação inversa individualmente em uma unidade de dados na mesma unidade de codificação.[000164] The transformation or inverse transformation is performed on image data from the coding unit 1052 in the transformation units 1070 into a data unit that is smaller than the coding unit 1052. Additionally, the coding units 1014, 1016 , 1022, 1032, 1048, 1050, and 1052 in the transformation units 1070 are different from those in the prediction units 1060 in terms of sizes and shapes. In other words, video encoding and decoding apparatus 100 and 200 can perform intraprediction, motion estimation, motion compensation, transformation, and inverse transformation individually on a data unit in the same coding unit.

[000165] Por conseguinte, a codificação e recursivamente realizada em cada das unidades de codificação tendo uma estrutura hierárquica em cada região de uma unidade de codificação máxima para determinar uma unidade de codificação ótima, e desse modo unidades de codificação tendo uma estrutura de árvore recursiva podem ser obtidas. Informações de codificação podem incluir informações divididas sobre uma unidade de codificação, informações sobre um tipo de partição, informações sobre um modo de predição, e informações sobre um tamanho de uma unidade de transformação. A tabela 1 mostra as informações de codificação que podem ser definidas pelos aparelhos de codificação e decodificação 100 e 200.Tabela 1 [000165] Therefore, coding is recursively performed in each of the coding units having a hierarchical structure in each region of a maximum coding unit to determine an optimal coding unit, and thereby coding units having a recursive tree structure can be obtained. Coding information may include partition information about a coding unit, information about a partition type, information about a prediction mode, and information about a size of a transformation unit. Table 1 shows the encoding information that can be set by encoding and decoding apparatus 100 and 200. Table 1

[000166] A unidade de saída 130 do aparelho de codificação de vídeo 100 pode transmitir as informações de codificação sobre as unidades de codificação tendo uma estrutura de árvore, e o extrator de informações de codificação e dados de imagem 220 do aparelho de decodificação de vídeo 200 pode extrair as informações de codificação sobre as unidades de codificação tendo uma estrutura de árvore a partir de um fluxo de bits recebido.[000166] The output unit 130 of the video coding apparatus 100 can transmit the coding information about the coding units having a tree structure, and the coding information and image data extractor 220 of the video decoding apparatus 200 can extract coding information about coding units having a tree structure from a received bit stream.

[000167] Informações divididas indicam se uma unidade de codificação atual é dividida em unidades de codificação de uma profundidade inferior. Se informações divididas de uma profundidade atual d forem 0, uma profundidade na qual uma unidade de codificação atual não mais é dividida em uma profundidade inferior, é uma profundidade codificada, e desse modo informações sobre um tipo de partição, modo de predição e um tamanho de uma unidade de transformação podem ser definidas para a profundidade codificada. Se a unidade de codificação atual for adicionalmente dividida de acordo com as informações divididas, a codificação é independentemente realizada em quatro unidades de codificação divididas de uma profundidade inferior.[000167] Split information indicates whether a current coding unit is split into coding units of a lower depth. If split information of a current depth d is 0, a depth at which a current coding unit is no longer split to a lower depth is an encoded depth, and thus information about a partition type, prediction mode, and a size of a transformation unit can be set to the encoded depth. If the current coding unit is further divided according to the split information, coding is independently carried out into four split coding units of a lower depth.

[000168] Um modo de predição pode ser um de um modo intra, um modo inter, e um modo pular. O modo intra e o modo inter podem ser definidos em todos os tipos de partição, e o modo pular é definido somente em um tipo de partição tendo um tamanho de 2Nx2N.[000168] A prediction mode can be one of an intra mode, an inter mode, and a skip mode. Intra mode and inter mode can be set on all partition types, and skip mode is set only on a partition type having a size of 2Nx2N.

[000169] As informações sobre o tipo de partição podem indicar tipos de partição simétrica tendo tamanhos de 2Nx2N, 2NxN, Nx2N e NxN, que são obtidos por dividir simetricamente uma altura ou uma largura de uma unidade de predição, e tipos de partição assimétrica tendo tamanhos de 2NxnU, 2NxnD, nLx2N e nRx2N, que são obtidos por dividir assimetricamente a altura ou largura da unidade de predição. Os tipos de partição assimétrica tendo os tamanhos de 2NxnU e 2NxnD podem ser respectivamente obtidos por dividir a altura da unidade de predição em 1:3 e 3:1, e os tipos de partição assimétrica tendo os tamanhos de nLx2N e nRx2N podem ser respectivamente obtidos por dividir a largura da unidade de predição em 1:3 e 3:1.[000169] The partition type information may indicate symmetric partition types having sizes of 2Nx2N, 2NxN, Nx2N and NxN, which are obtained by symmetrically dividing a height or a width of a prediction unit, and asymmetric partition types having sizes of 2NxnU, 2NxnD, nLx2N and nRx2N, which are obtained by asymmetrically dividing the height or width of the prediction unit. The asymmetric partition types having the sizes of 2NxnU and 2NxnD can be respectively obtained 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 respectively obtained by dividing the width of the prediction unit into 1:3 and 3:1.

[000170] tamanho da unidade de transformação pode ser ajustado para ser dois tipos no modo intra e dois tipos no modo Inter. Em outras palavras, se informações divididas da unidade de transformação forem 0, o tamanho da unidade de transformação pode ser 2Nx2N, que é o tamanho da unidade de codificação atual. Se informações divididas da unidade de transformação forem 1, as unidades de transformação podem ser obtidas por dividir a unidade de codificação atual. Além disso, se um tipo de partição da unidade de codificação atual tendo o tamanho de 2Nx2N for um tipo de partição simétrica, um tamanho de uma unidade de transformação pode ser NxN, e se o tipo de partição da unidade de codificação atual for um tipo de partição assimétrica o tamanho da unidade de transformação opor ser N/2xN/2.[000170] size of the transformation unit can be adjusted to be two types in intra mode and two types in inter mode. In other words, if split 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 divided information of the transformation unit is 1, the transformation units can be obtained by dividing the current encoding unit. Furthermore, if a partition type of the current coding unit having the size of 2Nx2N is a symmetric partition type, a size of a transformation unit may be NxN, and if the partition type of the current coding unit is a type of asymmetric partition the size of the transformation unit can be N/2xN/2.

[000171] As informações de codificação sobre unidades de codificação tendo uma estrutura de árvore podem incluir pelo menos um de uma unidade de codificação correspondendo a uma profundidade codificada, uma unidade de predição e uma unidade mínima. A unidade de codificação correspondendo à profundidade codificada pode incluir pelo menos uma de uma unidade de predição e uma unidade mínima contendo as mesmas informações de codificação.[000171] Coding information about coding units having a tree structure may include at least one of a coding unit corresponding to a coded depth, a prediction unit, and a minimum unit. The coding unit corresponding to the coded depth may include at least one of a prediction unit and a minimum unit containing the same coding information.

[000172] Por conseguinte, é determinado se unidades de dados adjacentes são incluídas na mesma unidade de codificação correspondendo à profundidade codificada por comparar informações de codificação das unidades de dados adjacentes. Além disso, uma unidade de codificação correspondente correspondendo a uma profundidade codificada é determinada utilizando informações de codificação de uma unidade de dados, e desse modo uma distribuição de profundidades codificadas em uma unidade de codificação máxima pode ser determinada.[000172] Therefore, it is determined whether adjacent data units are included in the same coding unit corresponding to the coded depth by comparing coding information of adjacent data units. Furthermore, a corresponding coding unit corresponding to a coded depth is determined using coding information of a data unit, and thereby a distribution of coded depths in a maximum coding unit can be determined.

[000173] Por conseguinte, se uma unidade de codificação atual for predita com base em informações de codificação de unidades de dados adjacentes, informações de codificação de unidades de dados em unidades de codificação mais profunda adjacentes à unidade de codificação atual podem ser diretamente referidas e utilizadas.[000173] Therefore, if a current coding unit is predicted based on coding information from adjacent data units, coding information from data units in deeper coding units adjacent to the current coding unit can be directly referred to and used.

[000174] Alternativamente, se uma unidade de codificação atual for predita com base em informações de codificação de unidades de dados adjacentes, unidades de dados adjacentes à unidade de codificação atual são buscadas utilizando informações codificadas das unidades de dados, e as unidades de codificação adjacentes buscadas podem ser referidas para prever a unidade de codificação atual.[000174] Alternatively, if a current coding unit is predicted based on coding information from adjacent data units, data units adjacent to the current coding unit are searched using coding information from the data units, and the adjacent coding units queries can be referred to to predict the current coding unit.

[000175] A figura 13 é um diagrama para descrever uma relação entre uma unidade de codificação, uma unidade de predição ou uma partição, e uma unidade de transformação de acordo com informações de modo de codificação da tabela 1.[000175] Figure 13 is a diagram for describing a relationship between a coding unit, a prediction unit or a partition, and a transformation unit according to coding mode information from table 1.

[000176] Uma unidade de codificação máxima 1300 inclui unidades de codificação 1302, 1304, 1306, 1312, 1314, 1316, e 1318 de profundidades codificadas. Aqui, uma vez que a unidade de codificação 1318 é uma unidade de codificação de uma profundidade codificada, informações divididas podem ser definidas em 0. Informações sobre um tipo de partição da unidade de codificação 1318 tendo um tamanho de 2Nx2N podem ser definidas para ser um de um tipo de partição 1322 tendo um tamanho de 2Nx2N, um tipo de partição 1324 tendo um tamanho de 2NxN, um tipo de partição 1326 tendo um tamanho de Nx2N, um tipo de partição 1328 tendo um tamanho de NxN, um tipo de partição 1332 tendo um tamanho de 2NxnU, um tipo de partição 1334 tendo um tamanho de 2NxnD, um tipo de partição 1336 tendo um tamanho de nLx2N, e um tipo de partição 1338 tendo um tamanho de nRx2N.[000176] A maximum coding unit 1300 includes coding units 1302, 1304, 1306, 1312, 1314, 1316, and 1318 of coded depths. Here, since the coding unit 1318 is a coding unit of a coded depth, split information can be set to 0. Information about a partition type of the coding unit 1318 having a size of 2Nx2N can be set to be a of a partition type 1322 having a size of 2Nx2N, a partition type 1324 having a size of 2NxN, a partition type 1326 having a size of Nx2N, a partition type 1328 having a size of NxN, a partition type 1332 having a size of 2NxnU, a partition type 1334 having a size of 2NxnD, a partition type 1336 having a size of nLx2N, and a partition type 1338 having a size of nRx2N.

[000177] Quando o tipo de partição é definido para ser simétrico, isto é o tipo de partição 1322, 1324, 1326, ou 1328, uma unidade de transformação 1342 tendo um tamanho de 2Nx2N é definida se informações divididas (indicador de tamanho TU) de uma unidade de transformação forem 0, e uma unidade de transformação 1344 tendo um tamanho de NxN é definida se um indicador de tamanho TU é 1.[000177] When the partition type is defined to be symmetric, that is, partition type 1322, 1324, 1326, or 1328, a transformation unit 1342 having a size of 2Nx2N is defined if split information (TU size indicator) of a transformation unit are 0, and a transformation unit 1344 having a size of NxN is defined if a size indicator TU is 1.

[000178] Quando o tipo de partição é definido para ser assimétrico, isto é, o tipo de partição 1332, 1334, 1336, ou 1338, uma unidade de transformação 1352 tendo um tamanho de 2Nx2N é definida se um indicador de tamanho TU é 0, e uma unidade de transformação 1354 tendo um tamanho de N/2xN/2 é definida se um indicador de tamanho TU é 1.[000178] When the partition type is defined to be asymmetric, that is, the partition type 1332, 1334, 1336, or 1338, a transformation unit 1352 having a size of 2Nx2N is defined if a size indicator TU is 0 , and a transformation unit 1354 having a size of N/2xN/2 is defined if a size indicator TU is 1.

[000179] A seguir, intrapredição executada em uma unidade de predição pelo intra preditor 410 do aparelho de codificação de vídeo 100 da figura 4 e intra preditor 550 do aparelho de decodificação de vídeo 200 da figura 5 serão descritos em detalhe.[000179] Next, intraprediction performed in a prediction unit by the intra predictor 410 of the video coding apparatus 100 of figure 4 and intra predictor 550 of the video decoding apparatus 200 of figure 5 will be described in detail.

[000180] Os intra preditores 410 e 550 executam intrapredição para obter um valor de predição de uma unidade de predição atual utilizando pixels adjacentes da unidade de predição atual. Considerando que uma unidade de predição tem um tamanho igual a ou mais elevado do que 16x16, os intra preditores 410 e 550 executam adicionalmente um modo intrapredição tendo várias diretividades utilizando um parâmetro (dx, dy) bem como um modelo de intrapredição tendo uma diretividade limitada de acordo com uma técnica relacionada. O modo intrapredição tendo várias diretividades de acordo com uma modalidade da presente invenção será descrito posteriormente em detalhe.[000180] Intra predictors 410 and 550 perform intraprediction to obtain a prediction value from a current prediction unit using adjacent pixels of the current prediction unit. Considering that a prediction unit has a size equal to or greater than 16x16, the intra predictors 410 and 550 additionally perform an intraprediction mode having multiple directivities using one parameter (dx, dy) as well as an intraprediction model having a limited directivity according to a related technique. The intraprediction mode having multiple directivities according to an embodiment of the present invention will be described later in detail.

[000181] A figura 14 é uma tabela que mostra um número de modos de intrapredição de acordo com um tamanho de uma unidade de predição, de acordo com uma modalidade da presente invenção.[000181] Figure 14 is a table showing a number of intraprediction modes according to a size of a prediction unit, according to an embodiment of the present invention.

[000182] Os intra preditores 410 e 550 podem definir de forma variada o número de modos de intrapredição a serem aplicados na unidade de predição de acordo com o tamanho da unidade de predição. Por exemplo, com referência à figura 14, quando o tamanho da unidade de predição a ser intra predita é NxN, os números de modos de intrapredição realizados efetivamente nas unidades de predição tendo os tamanhos de 2x2, 4x4, 8x8, 16x16, 32x32, 64x64 e 128x128 podem ser respectivamente definidos em 5,9, 9, 17, 33, 5 e 5 no exemplo 2. O número de modos de intrapredição na realidade executados difere de acordo com o tamanho da unidade de predição porque overhead para codificar informações de modo de predição difere de acordo com o tamanho da unidade de predição. Em outras palavras, embora uma porção de uma unidade de predição que ocupa uma imagem inteira seja pequena, overhead para transmitir informações adicionais, como um modo de predição de tal unidade de predição pequena pode ser grande. Por conseguinte, quando uma unidade de predição tendo um tamanho pequeno é codificada em muitos modos de predição, uma quantidade de bits pode aumentar e desse modo eficiência de compressão pode diminuir. Além disso, uma vez que uma unidade de predição tendo um tamanho grande, por exemplo, uma unidade de predição tendo um tamanho igual a ou maior do que 64x64, é genericamente na maior parte selecionado como uma unidade de predição de uma região plana de uma imagem, pode ser insuficiente em termos de eficiência de compressão para codificar a unidade de predição tendo um tamanho grande, que é na maior parte selecionado para codificar uma região plana, em muitos modos de predição. Por conseguinte, quando um tamanho de uma unidade de predição é demasiadamente grande ou demasiadamente pequeno em comparação com um tamanho predeterminado, um número relativamente pequeno de modos de intrapredição pode ser aplicado. Entretanto, o número de modos de intrapredição aplicado de acordo com o tamanho de uma unidade de predição não é limitado à figura 14, e pode variar. O número de modos de intrapredição aplicados de acordo com o tamanho de uma unidade de predição, como mostrado na figura 14, é somente um exemplo, e pode variar. Alternativamente, o número de modos de intrapredição aplicados à unidade de predição pode ser sempre uniforme independente do tamanho de uma unidade de predição.[000182] The intra predictors 410 and 550 can variously define the number of intraprediction modes to be applied to the prediction unit according to the size of the prediction unit. For example, with reference to Figure 14, when the size of the prediction unit to be intra-predicted is NxN, the numbers of intra-prediction modes actually performed in the prediction units having the sizes of 2x2, 4x4, 8x8, 16x16, 32x32, 64x64 and 128x128 can be respectively set to 5.9, 9, 17, 33, 5 and 5 in example 2. The number of intraprediction modes actually performed differs according to the size of the prediction unit because overhead for encoding mode information prediction differs according to the size of the prediction unit. In other words, although a portion of a prediction unit that occupies an entire image is small, overhead for transmitting additional information such as a prediction mode from such a small prediction unit can be large. Therefore, when a prediction unit having a small size is encoded in many prediction modes, a number of bits may increase and thus compression efficiency may decrease. Furthermore, since a prediction unit having a large size, for example, a prediction unit having a size equal to or greater than 64x64, is generally generally selected as a prediction unit of a flat region of a image, may be insufficient in terms of compression efficiency to encode the prediction unit having a large size, which is mostly selected to encode a flat region, in many prediction modes. Therefore, when a size of a prediction unit is too large or too small compared to a predetermined size, a relatively small number of intraprediction modes can be applied. However, the number of intraprediction modes applied according to the size of a prediction unit is not limited to Figure 14, and may vary. The number of intraprediction modes applied according to the size of a prediction unit, as shown in figure 14, is just an example, and may vary. Alternatively, the number of intraprediction modes applied to the prediction unit can always be uniform regardless of the size of a prediction unit.

[000183] Os intra preditores 410 e 550 podem incluir, com um modo de intrapredição aplicado a uma unidade de predição, um modo de intrapredição que determina um pixel de referência adjacente utilizando uma linha tendo um ângulo predeterminado com base em um pixel em uma unidade de predição e utilizando o pixel de referência adjacente determinado como um preditor do pixel. O ângulo de tal linha pode ser definido utilizando um parâmetro (dx, dy), em que dx e dy são individualmente um número inteiro. Por exemplo, quando 33 modos de predição são respectivamente definidos como sendo modos N, em que N é um número inteiro de 0 a 32, um modo 0 é definido para um modo vertical, um modo 1 é definido para um modo horizontal, um modo 2 é definido como um modo DC, um modo 3 é definido como um modo plano, e um modo 32 é definido como um modo plano. Além disso, modos 4 até 31 podem ser definidos como sendo modos de intrapredição determinando um pixel de referência adjacente utilizando uma linha tendo uma diretividade de tan-1(dy/dx) utilizando (dx, dy) respectivamente expresso por (1,-1), (1,1), (1,2), (2,1), (1,-2), (2,1), (1,-2), (2,-1), (2,-11), (5,-7), (10,-7), (11,3), (4,3), (1,11), (1,-1), (12,-3), (1,-11), (1,-7), (3,-10), (5,-6), (7,-6), (7,-4), (11,1), (6,1), (8,3), (5,3), (5,7), (2,7), (5,-7), e (4,-3) da tabela 1, e utilizando o pixel de referência adjacente determinado para intrapredição.Tabela 2 [000183] The intra predictors 410 and 550 may include, with an intraprediction mode applied to a prediction unit, an intraprediction mode that determines an adjacent reference pixel using a line having a predetermined angle based on a pixel in a unit of prediction and using the determined adjacent reference pixel as a predictor of the pixel. The angle of such a line can be defined using a parameter (dx, dy), where dx and dy are individually an integer. For example, when 33 prediction modes are respectively defined to be N modes, where N is an integer from 0 to 32, a mode 0 is defined for a vertical mode, a mode 1 is defined for a horizontal mode, a mode 2 is defined as a DC mode, a 3 mode is defined as a flat mode, and a 32 mode is defined as a flat mode. Furthermore, modes 4 to 31 can be defined as being intraprediction modes determining an adjacent reference pixel using a line having a directivity of tan-1(dy/dx) using (dx, dy) respectively expressed by (1,-1 ), (1,1), (1,2), (2,1), (1,-2), (2,1), (1,-2), (2,-1), (2, -11), (5,-7), (10,-7), (11,3), (4,3), (1,11), (1,-1), (12,-3), (1,-11), (1,-7), (3,-10), (5,-6), (7,-6), (7,-4), (11,1), (6 ,1), (8,3), (5,3), (5,7), (2,7), (5,-7), and (4,-3) from table 1, and using the pixel adjacent reference determined for intraprediction.Table 2

[000184] número de modos intrapredição utilizados pelos intra preditores 410 e 550 não é limitado à tabela 2, e pode variar com base em se uma unidade de predição atual é um componente de crominância ou componente de luminância ou baseado em um tamanho da unidade de predição atual. Além disso, cada modo N pode indicar um modo de intrapredição diferente do acima. Por exemplo, o número de modos intrapredição pode ser 36, em que um modo 0 é um modo planar descrito posteriormente, um modo 1 é um modo DC, modos 2 até 34 são modos intrapredição tendo 33 diretividades como descrito posteriormente e um modo 35 é um modo intrapredição intra_FromLuma utilizando uma unidade de predição em um componente de luminância correspondendo a uma unidade de predição em um componente de crominância. O modo 35, isto é, o modo intrapredição Intra_FromLuma utilizando a unidade de predição no componente de luminância correspondendo à unidade de predição no componente de crominância é somente aplicado à unidade de predição no componente de crominância, e não é utilizado para intrapredizer a unidade de predição no componente de luminância.[000184] number of intraprediction modes used by intrapredictors 410 and 550 is not limited to Table 2, and may vary based on whether a current prediction unit is a chrominance component or luminance component or based on a size of the prediction unit. current prediction. Furthermore, each N mode can indicate a different intraprediction mode than the one above. For example, the number of intraprediction modes may be 36, where a mode 0 is a planar mode described later, a mode 1 is a DC mode, modes 2 through 34 are intraprediction modes having 33 directivities as described later, and a mode 35 is an intra_FromLuma intraprediction mode using a prediction unit on a luminance component corresponding to a prediction unit on a chrominance component. Mode 35, that is, the Intra_FromLuma intraprediction mode using the prediction unit in the luminance component corresponding to the prediction unit in the chrominance component, is only applied to the prediction unit in the chrominance component, and is not used to intrapredict the prediction on the luminance component.

[000185] A figura 15 é um diagrama de referência para descrever modos intrapredição tendo várias diretividades, de acordo com uma modalidade da presente invenção.[000185] Figure 15 is a reference diagram for describing intraprediction modes having various directivities, in accordance with an embodiment of the present invention.

[000186] Como descrito acima, os intra preditores 410 e 550 podem determinar um pixel de referência adjacente utilizando uma linha tendo um ângulo de tan-1(dy/dx) determinado de acordo com uma pluralidade de parâmetros (dx, dy), e executar intrapredição utilizando o pixel de referência adjacente determinado.[000186] As described above, intra predictors 410 and 550 can determine an adjacent reference pixel using a line having an angle of tan-1(dy/dx) determined according to a plurality of parameters (dx, dy), and perform intraprediction using the determined adjacent reference pixel.

[000187] Com referência à figura 15, pixels adjacentes A e B localizados em uma linha de extensão 150 tendo um ângulo de tan- 1(dy/dx) determinado de acordo com um valor de (dx, dy) de acordo com os modos intrapredição da Tabela 2 com base em um pixel atual P a ser predito em uma unidade de predição atual podem ser utilizados como preditores do pixel atual P. aqui, um pixel adjacente utilizado como um preditor pode ser um pixel de uma unidade de predição anterior que é pré-codificada e pré- recuperada e é localizada acima, à esquerda, direita superior, ou esquerda inferior de uma unidade de predição atual. Como tal, por executar codificação de predição de acordo com modos intrapredição tendo várias diretividades, a compressão pode ser efetivamente realizada de acordo com características de uma imagem.[000187] With reference to figure 15, adjacent pixels A and B located on an extension line 150 having an angle of tan- 1(dy/dx) determined according to a value of (dx, dy) according to the modes intraprediction of Table 2 based on a current pixel P to be predicted in a current prediction unit can be used as predictors of the current pixel P. Here, an adjacent pixel used as a predictor can be a pixel from a previous prediction unit that is pre-coded and pre-retrieved and is located above, to the left, top right, or bottom left of a current prediction unit. As such, by performing prediction coding according to intraprediction modes having various directivities, compression can be effectively performed according to characteristics of an image.

[000188] Na figura 15, quando um preditores do pixel atual p é gerado utilizando um pixel adjacente localizado em ou perto da linha de extensão 150, a linha de extensão 150 tem na realidade uma diretividade de tan-1(dy/dx) e uma divisão de (dy/dx) é necessária para determinar o pixel adjacente utilizando a linha de extensão 150, e desse modo hardware ou software pode incluir uma operação de ponto decimal, desse modo aumentando capacidade de transmissão. Por conseguinte, quando uma direção de predição para selecionar um pixel de referência é definida utilizando parâmetros (dx, dy), dx e dy podem ser definidos para diminuir uma capacidade de transmissão.[000188] In Figure 15, when a predictor of the current pixel p is generated using an adjacent pixel located at or near extension line 150, extension line 150 actually has a directivity of tan-1(dy/dx) and a division of (dy/dx) is necessary to determine the adjacent pixel using extension line 150, and thus hardware or software may include a decimal point operation, thereby increasing transmission capacity. Therefore, when a prediction direction for selecting a reference pixel is defined using parameters (dx, dy), dx and dy can be defined to decrease a transmission capacity.

[000189] A figura 16 é um diagrama para descrever uma relação entre um pixel atual e pixels adjacentes dispostos em uma linha de extensão tendo uma diretividade de (dx, dy), de acordo com uma modalidade da presente invenção.[000189] Figure 16 is a diagram for describing a relationship between a current pixel and adjacent pixels arranged in an extension line having a directivity of (dx, dy), in accordance with an embodiment of the present invention.

[000190] Com referência à figura 16, P 1610 indica o pixel atual localizado em (j, i) e A 1611 e B 1612 respectivamente indicam um pixel superior adjacente e um pixel esquerdo adjacente localizado em uma linha de extensão tendo uma diretividade, isto é, um ângulo de tan-1(dy/dx) passando através do pixel atual P 1610. É assumido que um tamanho de uma unidade de predição que inclui o pixel atual P 1610 é nSxnS em que ns é um número inteiro positivo, uma localização de pixel da unidade de predição é um de (0, 0) a (nS-1, nS-1), uma localização do pixel superior adjacente A 1611 e um eixo geométrico x é (m, -1) em que m é um número inteiro, e uma localização do pixel esquerdo adjacente B 1612 em um eixo geométrico y é (-1, n) em que n é um número inteiro. A localização do pixel superior adjacente A 1611 encontrando a linha de extensão passando através do pixel atual P1610 é (j+i*dx/dy, -1), e a localização do pixel esquerdo adjacente B 1612 é (-1, i+j*dy/dx). Por conseguinte, para determinar o pixel superior adjacente A 1611 ou pixel esquerdo adjacente B 1612 para prever o pixel atual P1610, uma operação de divisão, como dx/dy ou dy/dx é exigida. Como descrito acima, uma vez que a complexidade de operação da operação de divisão é elevada, uma velocidade de operação em software ou hardware pode ser baixa. Por conseguinte, pelo menos um de dx e dy indicando uma diretividade de um modo de predição para determinar um pixel adjacente pode ser uma potência de 2. Em outras palavras, quando n e m são individualmente um número inteiro, dx e dy podem ser respectivamente 2An e 2Am.[000190] With reference to figure 16, P 1610 indicates the current pixel located at (j, i) and A 1611 and B 1612 respectively indicate an adjacent top pixel and an adjacent left pixel located on an extension line having a directivity, i.e. is, an angle of tan-1(dy/dx) passing through the current pixel P 1610. It is assumed that a size of a prediction unit that includes the current pixel P 1610 is nSxnS where ns is a positive integer, a prediction unit pixel location is one of (0, 0) to (nS-1, nS-1), an adjacent top pixel location A 1611 and an x axis is (m, -1) where m is an integer, and a location of the adjacent left pixel B 1612 on a y axis is (-1, n) where n is an integer. The location of the adjacent top pixel A 1611 meeting the extension line passing through the current pixel P1610 is (j+i*dx/dy, -1), and the location of the adjacent left pixel B 1612 is (-1, i+j *dy/dx). Therefore, to determine the adjacent top pixel A 1611 or adjacent left pixel B 1612 to predict the current pixel P1610, a division operation such as dx/dy or dy/dx is required. As described above, since the operation complexity of the division operation is high, an operation speed in software or hardware may be low. Therefore, at least one of dx and dy indicating a directivity of a prediction mode to determine an adjacent pixel may be a power of 2. In other words, when n and m are individually an integer, dx and dy may respectively be 2An and 2am.

[000191] Quando o pixel esquerdo adjacente B 1612 é utilizado como um preditor do pixel atual P 1610 e dx tem um valor de 2An, uma operação j*dy/dx exigida para determinar (-1, i+j*dy/dx), isto é uma localização do pixel esquerdo adjacente B 1612, pode ser (i*dy)/(2An) e uma operação de divisão utilizando uma potência de 2 pode ser realizada através de uma operação de comutação, como (i*dy)>>n, e desse modo uma capacidade de transmissão é diminuída.[000191] When the adjacent left pixel B 1612 is used as a predictor of the current pixel P 1610 and dx has a value of 2An, a j*dy/dx operation required to determine (-1, i+j*dy/dx) , i.e. a location of the adjacent left pixel B 1612, can be (i*dy)/(2An) and a division operation using a power of 2 can be performed through a switching operation, such as (i*dy)> >n, and thus a transmission capacity is decreased.

[000192] Similarmente, quando o pixel superior adjacente A 1611 é utilizado como um preditor do pixel atual P 1610 e dy tem um valor de 2Am, uma operação i*dx/dy exigida para determinar (j+i*dx/dy,-1), isto é, uma localização do pixel superior adjacente A 1611 pode ser (i*dx)/(2Am) e uma operação de divisão utilizando uma potência de 2 pode ser realizada através de uma operação de comutação, como (i*dx)>>m.[000192] Similarly, when the adjacent top pixel A 1611 is used as a predictor of the current pixel P 1610 and dy has a value of 2Am, an i*dx/dy operation required to determine (j+i*dx/dy,- 1), that is, an adjacent upper pixel location A 1611 may be (i*dx)/(2Am) and a division operation using a power of 2 may be performed through a switching operation such as (i*dx )>>m.

[000193] As figuras 17 e 18 são diagramas que mostram direções de um modo intrapredição, de acordo com modalidades da presente invenção.[000193] Figures 17 and 18 are diagrams showing directions in an intrapredictive manner, in accordance with embodiments of the present invention.

[000194] Genericamente, padrões de linha reta mostrados em um sinal de vídeo ou imagem são na maior parte verticais ou horizontais. Desse modo, quando um modo intrapredição tendo várias diretividades é definido utilizando um parâmetro (dx, dy), os valores de dx e dy podem ser definidos como a seguir para melhorar a eficiência de codificação de uma imagem.[000194] Generally, straight line patterns shown in a video signal or image are mostly vertical or horizontal. Thus, when an intraprediction mode having multiple directivities is defined using a parameter (dx, dy), the values of dx and dy can be defined as follows to improve the coding efficiency of an image.

[000195] Em detalhe, quando dy tem um valor fixo de 2Am, um valor absoluto de dx pode ser definido de tal modo que um intervalo entre direções de predição próximas a uma direção vertical é estreito e um intervalo entre modos de predição aumenta em direção a uma direção de predição próxima a uma direção horizontal. Por exemplo, com referência à figura 17, quando dy é 2A5, isto é, 32, dx pode ser definido em 2, 5, 9,13, 17, 21, 26, 32, -2, -5, -9, -13, -17, -21, -26, e -32 de tal modo que um intervalo entre direções de predição próximas a uma direção vertical seja relativamente estreita e um intervalo entre modos de predição aumente em direção a uma direção de predição próxima a uma direção horizontal.[000195] In detail, when dy has a fixed value of 2Am, an absolute value of dx can be defined such that a gap between prediction directions close to a vertical direction is narrow and a gap between prediction modes increases toward to a prediction direction close to a horizontal direction. For example, with reference to figure 17, when dy is 2A5, that is, 32, dx can be set to 2, 5, 9,13, 17, 21, 26, 32, -2, -5, -9, - 13, -17, -21, -26, and -32 such that a gap between prediction directions close to a vertical direction is relatively narrow and a gap between prediction modes increases toward a prediction direction close to a vertical direction. horizontal direction.

[000196] Similarmente, quando dx tem um valor fixo de 2An, um valor absoluto de dy pode ser definido de tal modo que um intervalo entre direções de predição próximas a uma direção horizontal seja estreita e um intervalo entre modos de predição aumente no sentido de uma direção de predição próxima a uma direção horizontal. Por exemplo, com referência à figura 18, quando dx é 2A5, isto é, 32, dy pode ser definido em 2, 5, 9, 13, 17, 21, 26, 32, -2, -5, -9, -13, -17, -21, -26, e -32 de tal modo que um intervalo entre direções de predição próximas a uma direção horizontal seja relativamente estreito e um intervalo entre modos de predição aumente no sentido de uma direção de predição próxima a uma direção vertical.[000196] Similarly, when dx has a fixed value of 2An, an absolute value of dy can be defined such that a gap between prediction directions close to a horizontal direction is narrow and a gap between prediction modes increases towards a prediction direction close to a horizontal direction. For example, with reference to figure 18, when dx is 2A5, that is, 32, dy can be set to 2, 5, 9, 13, 17, 21, 26, 32, -2, -5, -9, - 13, -17, -21, -26, and -32 such that a gap between prediction directions close to a horizontal direction is relatively narrow and a gap between prediction modes increases towards a prediction direction close to a horizontal direction. vertical direction.

[000197] Além disso, quando um dos valores de dx e dy é fixo, o outro valor pode ser definido de modo a aumentar de acordo com modos de predição. Por exemplo, quando o valor de dy é fixo, um intervalo entre valores de dx pode ser definido para aumentar por um valor predeterminado. Tal incremento pode ser definido de acordo com ângulos divididos entre uma direção horizontal e uma direção vertical. Por exemplo, quando dy é fixo, dx pode ter um incremento a em uma seção onde um ângulo com um eixo geométrico vertical é menor do que 15°, um incremento b em uma seção onde o ângulo está entre 15° e 30°, e um incremento c em uma seção onde o ângulo é mais elevado do que 30°.[000197] Furthermore, when one of the values of dx and dy is fixed, the other value can be set to increase according to prediction modes. For example, when the value of dy is fixed, an interval between values of dx can be set to increase by a predetermined amount. Such an increment can be defined according to angles divided between a horizontal direction and a vertical direction. For example, when dy is fixed, dx may have an increment a in a section where an angle with a vertical axis is less than 15°, an increment b in a section where the angle is between 15° and 30°, and an increment c in a section where the angle is greater than 30°.

[000198] Por exemplo, modos de predição tendo diretividades de tan-1(dy/dx) usando (dx, dy) pode ser definidos por parâmetros (dx, dy) mostrados nas tabelas 3 a 5.Tabela 3 Tabela 4Tabela 5 [000198] For example, prediction modes having directivities of tan-1(dy/dx) using (dx, dy) can be defined by parameters (dx, dy) shown in tables 3 to 5. Table 3 Table 4 Table 5

[000199] Como descrito acima, os modos intrapredição utilizando parâmetros (dx, dy) utilizam o pixel esquerdo adjacente (-1,i+j*dy/dx) ou o pixel superior adjacente (j+i*dx/dy,-1) como um preditor de um pixel localizado em (j,i). Quando pelo menos um de dx e dy tem uma potência de 2 como mostrado na tabela 2, localizações do pixel esquerdo (-1, i+j*dy/dx) e pixel superior adjacente (j+i*dx/dy,-1) podem ser obtidas através de operações de multiplicação e comutação sem uma operação de divisão. Quando dx é 2An, isto é, 32, em (dx, dy) como mostrado na tabela 2, uma operação de divisão utilizando dx pode ser substituída por uma operação de comutação direita, e desse modo uma localização de um pixel esquerdo adjacente pode ser obtido sem uma operação de divisão baseada em (i*dy)>>n. Similarmente, quando dy é 2Am, isto é, 32, em (dx, dy) como mostrado na tabela 2, uma operação de divisão utilizando dx pode ser substituída por uma operação de comutação direita, e desse modo uma localização de um pixel superior adjacente pode ser obtido sem uma operação de divisão baseada em (i*dx)>>m.[000199] As described above, intraprediction modes using parameters (dx, dy) use the adjacent left pixel (-1,i+j*dy/dx) or the adjacent top pixel (j+i*dx/dy,-1 ) as a predictor of a pixel located at (j,i). When at least one of dx and dy has a power of 2 as shown in Table 2, locations of the left pixel (-1, i+j*dy/dx) and adjacent top pixel (j+i*dx/dy,-1 ) can be obtained through multiplication and commutation operations without a division operation. When dx is 2An, that is, 32, in (dx, dy) as shown in table 2, a division operation using dx can be replaced by a right switching operation, and thus a location of an adjacent left pixel can be obtained without a division operation based on (i*dy)>>n. Similarly, when dy is 2Am, that is, 32, in (dx, dy) as shown in table 2, a division operation using dx can be replaced by a right switching operation, and thereby a location of an adjacent upper pixel can be obtained without a division operation based on (i*dx)>>m.

[000200] A figura 19 é um diagrama que mostra direções de um modo intrapredição tendo 33 diretividades, de acordo com uma modalidade da presente invenção.[000200] Figure 19 is a diagram showing directions of an intraprediction mode having 33 directivities, in accordance with an embodiment of the present invention.

[000201] Os intra preditores 410 e 550 podem determinar um pixel adjacente a ser utilizado como um preditor de um pixel atual de acordo com modos intrapredição tendo 33 diretividades mostrados na figura 19. Como descrito acima, direções de modos intrapredição podem ser definidas de tal modo que um intervalo entre modos de predição diminui no sentido de uma direção horizontal ou vertical e aumenta adicionalmente a partir de uma direção vertical ou horizontal.[000201] Intra predictors 410 and 550 may determine an adjacent pixel to be used as a predictor of a current pixel in accordance with intraprediction modes having 33 directivities shown in Figure 19. As described above, directions of intraprediction modes may be defined in such a way. such that an interval between prediction modes decreases towards a horizontal or vertical direction and further increases from a vertical or horizontal direction.

[000202] Enquanto isso, o uso de pixels adjacentes utilizados como pixels de referência de um bloco atual podem ser limitados de acordo com os modos intrapredição tendo várias diretividades como descrito com referência à figura 19. Por exemplo, o uso de um pixel adjacente incluído em um bloco inter predito através de interpredição pode ser limitado durante intrapredição do bloco atual. Como tal, o uso do pixel adjacente incluído no bloco inter é limitado de modo a evitar propagação de um erro incluído no bloco inter. Além disso, o uso de um bloco adjacente incluído em uma fatia diferente daquela do bloco atual que é intra predito pode ser limitado durante intrapredição do bloco atual. O uso do bloco adjacente incluído na fatia diferente é limitado porque o uso dos dados do bloco adjacente incluídos na fita diferente pode ser limitado como dados de referência do bloco atual uma vez que dados de imagem são encapsulados e independentemente processados em uma unidade de fatia de acordo com um processo de imagem geral. Por conseguinte, os intra preditores 410 e 550 podem determinar se deve utilizar um pixel adjacente para intrapredição do bloco atual com base em um modo de predição de um bloco adjacente incluindo o pixel adjacente ou baseado em se uma fatia incluindo o bloco adjacente é igual a uma fatia incluindo o bloco atual. O intra preditor 410 do codificador de imagem 400 pode definir um valor de um indicador (constrained_intra_pred_flag) indicando se deve utilizar um pixel adjacente incluído em um bloco inter para intrapredição de um bloco atual, e então adicionar o constrained_intra_pred_flag a um fluxo de bits codificado de modo a sinalizar uma limitação de uso do pixel adjacente incluído no inter bloco. Por exemplo, quando o valor de constrained_intra_pred_flag é 0, o pixel adjacente é utilizado para a intrapredição do bloco atual independente de um modo de predição de um bloco adjacente. Quando o valor de constrained_intra_pred_ flag é 1, o pixel adjacente incluído no bloco inter pode ser limitado durante a intrapredição do bloco atual. Alternativamente, os intra preditores 410 e 550 podem limitar um pixel de um bloco adjacente incluído em uma fatia diferente daquela do bloco atual para nunca ser utilizado para a intrapredição do bloco atual.[000202] Meanwhile, the use of adjacent pixels used as reference pixels of a current block may be limited according to intraprediction modes having various directivities as described with reference to Figure 19. For example, the use of an adjacent pixel included in an inter-block predicted through inter-prediction may be limited during intra-prediction of the current block. As such, the use of the adjacent pixel included in the inter block is limited so as to prevent propagation of an error included in the inter block. Furthermore, the use of an adjacent block included in a different slice than the current block that is intrapredicted may be limited during intraprediction of the current block. The use of the adjacent block included in the different slice is limited because the use of data from the adjacent block included in the different tape may be limited as reference data of the current block since image data is encapsulated and independently processed in a single slice unit. according to a general image process. Therefore, intra predictors 410 and 550 can determine whether to use an adjacent pixel for intraprediction of the current block based on a prediction mode of an adjacent block including the adjacent pixel or based on whether a slice including the adjacent block is equal to a slice including the current block. The intra predictor 410 of the image encoder 400 may set a value of an indicator (constrained_intra_pred_flag) indicating whether to use an adjacent pixel included in an inter block for intraprediction of a current block, and then add the constrained_intra_pred_flag to an encoded bitstream of in order to signal a limitation on the use of the adjacent pixel included in the inter block. For example, when the value of constrained_intra_pred_flag is 0, the adjacent pixel is used for intraprediction of the current block regardless of a prediction mode of an adjacent block. When the value of constrained_intra_pred_ flag is 1, the adjacent pixel included in the inter block can be constrained during the intraprediction of the current block. Alternatively, intra predictors 410 and 550 may limit a pixel from an adjacent block included in a slice other than that of the current block to never be used for the intraprediction of the current block.

[000203] A seguir, assumindo que o valor de constrained_intra_pred_flag seja 1, isto é, o uso do bloco adjacente incluído no inter bloco, como um pixel de referência é limitado durante a intrapredição do bloco atual, um processo dos intra preditores 410 e 550 substituindo um pixel adjacente tendo uso limitado como um pixel de referência com outro pixel adjacente é descrito em detalhe com referência às figuras 20 até 26. Além disso, é assumido que o uso do pixel do bloco adjacente incluído na fatia diferente daquela do bloco atual é sempre limitado durante a intrapredição do bloco atual.[000203] Next, assuming that the value of constrained_intra_pred_flag is 1, that is, the use of the adjacent block included in the inter block as a reference pixel is limited during the intraprediction of the current block, a process of the intra predictors 410 and 550 replacing an adjacent pixel having limited use as a reference pixel with another adjacent pixel is described in detail with reference to figures 20 to 26. Furthermore, it is assumed that the use of the pixel of the adjacent block included in the slice other than that of the current block is always limited during the intraprediction of the current block.

[000204] A figura 24 é um diagrama de blocos de um aparelho de intrapredição 2400 de acordo com uma modalidade d apresente invenção. O aparelho de intrapredição 2400 da figura 24 corresponde aos intra preditores 410 e 550 das figuras 4 e 5.[000204] Figure 24 is a block diagram of an intraprediction apparatus 2400 according to an embodiment of the present invention. The intraprediction apparatus 2400 of Figure 24 corresponds to the intrapredictors 410 and 550 of Figures 4 and 5.

[000205] Com referência à figura 24, o aparelho de intrapredição 2400 inclui um determinador de disponibilidade 2410, um meio de substituição 2420, e um meio de execução de intrapredição 2430.[000205] Referring to Figure 24, the intraprediction apparatus 2400 includes an availability determiner 2410, a replacement means 2420, and an intraprediction execution means 2430.

[000206] O determinador de disponibilidade 2410 determina disponibilidade de um número predeterminado de pixels adjacentes utilizados para intrapredição de um bloco atual. aqui, a disponibilidade indica se um pixel adjacente é utilizável para a intrapredição como um pixel de referência do bloco atual. Como descrito acima, uma vez que o valor de constrained_intra_pred_flag é assumido como sendo 1, é determinado que um pixel adjacente incluído em um bloco adjacente incluído em uma fatia diferente de uma fatia incluindo o bloco atual ou um bloco adjacente intra-predito não é disponível. Por conseguinte, o determinador de disponibilidade 2410 determina se o número predeterminado de pixels adjacentes do bloco atual inclui o pixel adjacente incluído no bloco adjacente incluído na fatia diferente da fatia incluindo o bloco atual ou se o número predeterminado de pixels adjacentes do bloco atual inclui o pixel adjacente incluído no bloco adjacente inter-predito. O número predeterminado de pixels adjacentes pode ser definido de acordo com qualquer padrão. Por exemplo, quando um tamanho do bloco atual é nTxnT, em que nT é um número inteiro, a disponibilidade pode ser determinada em um total de 4nT+1 pixels adjacentes incluindo 2nT pixels adjacentes superiores localizados no topo e direita superior do bloco atual, 2nT pixels adjacentes esquerdos localizados a esquerda e esquerda inferior do bloco atual e um pixel adjacente localizado em um canto esquerdo superior do bloco atual. Entretanto, um número e localizações de pixels adjacentes cuja disponibilidade é determinada podem variar.[000206] Availability determiner 2410 determines availability of a predetermined number of adjacent pixels used for intraprediction of a current block. here, availability indicates whether an adjacent pixel is usable for intraprediction as a reference pixel of the current block. As described above, once the value of constrained_intra_pred_flag is assumed to be 1, it is determined that an adjacent pixel included in an adjacent block included in a slice other than a slice including the current block or an intra-predicted adjacent block is not available . Accordingly, the availability determiner 2410 determines whether the predetermined number of adjacent pixels of the current block includes the adjacent pixel included in the adjacent block included in the slice other than the slice including the current block or whether the predetermined number of adjacent pixels of the current block includes the adjacent pixel included in inter-predicted adjacent block. The predetermined number of adjacent pixels can be set according to any pattern. For example, when a current block size is nTxnT, where nT is an integer, availability can be determined on a total of 4nT+1 adjacent pixels including 2nT upper adjacent pixels located at the top and upper right of the current block, 2nT left adjacent pixels located to the left and bottom left of the current block and an adjacent pixel located in an upper left corner of the current block. However, the number and locations of adjacent pixels whose availability is determined may vary.

[000207] Se os pixels adjacentes forem todos determinados como sendo não disponíveis, o meio de substituição 2420 pode substituir um valor de pixel de um pixel adjacente não disponível com um valor predeterminado. Aqui o valor predeterminado pode ser um valor determinado com base em uma profundidade de bit de um pixel. A profundidade de bit do pixel é um número de bit utilizado para expressar um valor de pixel de um pixel, e pode ser 8 a 14 bits. Como tal, uma profundidade de bit variável BitDepth pode ser representada por uma equação; BitDepth=BaseBitDepth+Increased_bit_depth, através de uma profundidade de bit de base BaseBitDepth e um aumento variável de profundidade de bit increased_bit_ depth. Se a profundidade de bit estiver na faixa de 8 a 14 bits como descrito acima, a profundidade de bit de base BaseBitDepth tem um valor de 8 e o aumento de profundidade de bit increased_bit_depth tem um valor de 0 a 6. Se os pixels adjacentes forem todos não disponíveis, o meio de substituição 2420 pode substituir todos os valores dos pixels adjacentes com um valor 1<<((BitDepth)-1). Por exemplo, quando a profundidade de bit BitDepth é 8, o meio de substituição 2420 pode substituir todos os valores dos pixels adjacentes para ter um valor de pixel de 1<<(8-1), isto é, 128, que é 1x2A7, se os pixels adjacentes forem todos não disponíveis.[000207] If the adjacent pixels are all determined to be unavailable, the replacement means 2420 may replace a pixel value of an unavailable adjacent pixel with a predetermined value. Here the default value may be a value determined based on a bit depth of a pixel. Pixel bit depth is a bit number used to express a pixel value of a pixel, and can be 8 to 14 bits. As such, a variable bit depth BitDepth can be represented by an equation; BitDepth=BaseBitDepth+Increased_bit_depth, through a BaseBitDepth base bit depth and a variable increased bit depth increased_bit_depth. If the bit depth is in the range of 8 to 14 bits as described above, the base bit depth BaseBitDepth has a value of 8 and the increased bit depth increased_bit_depth has a value of 0 to 6. If the adjacent pixels are all unavailable, the replacement means 2420 can replace all adjacent pixel values with a value 1<<((BitDepth)-1). For example, when the BitDepth bit depth is 8, the replacement means 2420 can replace all adjacent pixel values to have a pixel value of 1<<(8-1), that is, 128, which is 1x2A7, if the adjacent pixels are all unavailable.

[000208] Se for determinado pelo determinador de disponibilidade 2410 que nem todo número predeterminado de pixels adjacentes são indisponíveis, porém pelo menos um pixel adjacente é indisponível, o meio de substituição 2420 busca um pixel adjacente disponível por procurar o número predeterminado de pixels adjacentes em uma direção predeterminada com base no pixel adjacente não disponível, e substitui um valor de pixel do pixel adjacente não disponível com um valor de pixel de um pixel adjacente disponível encontrado. Um processo de substituir o pixel adjacente não disponível será descrito abaixo com referência às figuras 20 até 23.[000208] If it is determined by the availability determiner 2410 that not every predetermined number of adjacent pixels are unavailable, but at least one adjacent pixel is unavailable, the replacement means 2420 searches for an available adjacent pixel by searching the predetermined number of adjacent pixels in a predetermined direction based on the unavailable adjacent pixel, and replaces a pixel value of the unavailable adjacent pixel with a pixel value of a found available adjacent pixel. A process of replacing the unavailable adjacent pixel will be described below with reference to figures 20 to 23.

[000209] Quando o pixel adjacente não disponível é substituído com o pixel adjacente disponível, o meio de execução de intrapredição 2430 executa intrapredição no bloco atual utilizando o pixel adjacente substituído e os pixels adjacentes disponíveis, e gera um bloco de predição do bloco atual.[000209] When the unavailable adjacent pixel is replaced with the available adjacent pixel, the intraprediction execution means 2430 performs intraprediction on the current block using the replaced adjacent pixel and the available adjacent pixels, and generates a prediction block of the current block.

[000210] A seguir, um processo de substituir um pixel adjacente não disponível durante intrapredição de um bloco atual será descrito em detalhe com referência às figuras 20 até 23.[000210] In the following, a process of replacing an adjacent pixel not available during intraprediction of a current block will be described in detail with reference to figures 20 to 23.

[000211] A figura 20 é um diagrama de um pixel adjacente que é indisponível durante intrapredição de um bloco atual 2000 de acordo com um tipo de um bloco adjacente, de acordo com uma modalidade da presente invenção.[000211] Figure 20 is a diagram of an adjacent pixel that is unavailable during intraprediction of a current block 2000 according to a type of an adjacent block, according to an embodiment of the present invention.

[000212] Com referência à figura 20, quando um tamanho do bloco atual 2000 é nTxnT, o determinador de disponibilidade 2410 determina se blocos adjacentes A, B, C, D e E incluindo pixels adjacentes de topo 2nT localizados no topo e direita superior do bloco atual 2000 são inter blocos ou são blocos incluídos em uma fatia diferente a partir de uma fatia incluindo o bloco atual 2000. Além disso, o determinador de disponibilidade 2410 determina se blocos adjacentes G, H, I, J e K incluindo pixels adjacentes da esquerda 2nT localizados a esquerda e esquerda inferior do bloco atual 2000 e um bloco adjacente F incluindo um pixel adjacente localizado em um canto esquerdo superior do bloco atual 2000 são inter blocos ou blocos incluídos em uma fatia diferente a partir da fatia incluindo o bloco atual 2000.[000212] Referring to Figure 20, when a current block size 2000 is nTxnT, the availability determiner 2410 determines whether adjacent blocks A, B, C, D and E including adjacent top 2nT pixels located at the top and upper right of the current block 2000 are interblocks or are blocks included in a different slice from a slice including current block 2000. Additionally, availability determinator 2410 determines whether adjacent blocks G, H, I, J and K including adjacent pixels of the left 2nT located to the left and bottom left of the current block 2000 and an adjacent block F including an adjacent pixel located in an upper left corner of the current block 2000 are interblocks or blocks included in a different slice from the slice including the current block 2000 .

[000213] O determinador de disponibilidade 2410 determina um pixel adjacente incluído em um inter bloco ou um bloco incluído na fatia diferente entre os blocos adjacentes A até K como sendo um pixel adjacente não disponível. Na figura 20, uma vez que os blocos adjacentes A, B, D, E, F, H e I são blocos inter inter- preditos, o determinador de disponibilidade 2410 determina pixels adjacentes 2011, 2012 e 2013 incluídos nos blocos adjacentes A, B, D, E, F, H e I como sendo pixels adjacentes não disponíveis. Como descrito acima, o meio de substituição 2420 busca um pixel adjacente disponível em uma direção predeterminada como base no pixel adjacente não disponível e substitui um valor de pixel do pixel adjacente não disponível com um valor de pixel do pixel adjacente disponível encontrado.[000213] The availability determiner 2410 determines an adjacent pixel included in an inter block or a block included in the different slice between adjacent blocks A through K as being an unavailable adjacent pixel. In Figure 20, since the adjacent blocks A, B, D, E, F, H and I are inter-predicted blocks, the availability determiner 2410 determines adjacent pixels 2011, 2012 and 2013 included in the adjacent blocks A, B , D, E, F, H and I as adjacent unavailable pixels. As described above, the replacement means 2420 searches for an available adjacent pixel in a predetermined direction based on the unavailable adjacent pixel and replaces a pixel value of the unavailable adjacent pixel with a pixel value of the found available adjacent pixel.

[000214] Em detalhe, o determinador de disponibilidade 2410 de acordo com uma modalidade primeiramente determina disponibilidade de um pixel adjacente (a seguir, mencionado como um primeiro pixel adjacente) em um local predeterminado entre pixels adjacentes. Se o primeiro pixel adjacente não estiver disponível, o meio de substituição 2420 busca um segundo pixel adjacente que é disponível por buscar pixels adjacentes em uma direção predeterminada. Além disso, o meio de substituição 2420 substitui o primeiro pixel adjacente com o segundo pixel adjacente encontrado.[000214] In detail, the availability determiner 2410 according to one embodiment first determines availability of an adjacent pixel (hereinafter referred to as a first adjacent pixel) at a predetermined location between adjacent pixels. If the first adjacent pixel is not available, the replacement means 2420 searches for a second adjacent pixel that is available by searching for adjacent pixels in a predetermined direction. Furthermore, the replacement means 2420 replaces the first adjacent pixel with the second adjacent pixel found.

[000215] Um pixel adjacente não disponível restante (a seguir, mencionado como um terceiro pixel adjacente) excluindo o primeiro pixel adjacente é anteriormente processado e substituído com base em uma direção predeterminada ou é substituído com um pixel adjacente disponível original. Os terceiros pixels adjacentes não disponíveis são sequencialmente substituídos de acordo com uma ordem de busca utilizada para buscar o segundo pixel adjacente. Quando o primeiro pixel adjacente é disponível, um processo de substituir o primeiro pixel adjacente é pulado, e somente um processo de substituir o terceiro pixel adjacente é executado.[000215] A remaining unavailable adjacent pixel (hereinafter referred to as a third adjacent pixel) excluding the first adjacent pixel is previously processed and replaced based on a predetermined direction or is replaced with an original available adjacent pixel. The unavailable third adjacent pixels are sequentially replaced according to a search order used to search for the second adjacent pixel. When the first adjacent pixel is available, a process of replacing the first adjacent pixel is skipped, and only a process of replacing the third adjacent pixel is performed.

[000216] A seguir, é assumido que tamanhos de blocos atuais 2100, 2200 e 2300 das figuras 21 até 23 são nTxnT e P(x,y) indica um pixel adjacente cuja disponibilidade é determinada para intrapredição dos blocos atuais 2100, 2200 e 2300, em que x=-1, y=-1, ..., 2nT-1 e x=0, ..., 2nT-1, y=1.[000216] In the following, it is assumed that current block sizes 2100, 2200 and 2300 of figures 21 through 23 are nTxnT and P(x,y) indicates an adjacent pixel whose availability is determined for intraprediction of current blocks 2100, 2200 and 2300 , where x=-1, y=-1, ..., 2nT-1 and x=0, ..., 2nT-1, y=1.

[000217] A figura 21 é um diagrama para descrever um processo de substituir um pixel adjacente não disponível de acordo com uma modalidade da presente invenção.[000217] Figure 21 is a diagram for describing a process of replacing an unavailable adjacent pixel in accordance with an embodiment of the present invention.

[000218] Com referência à figura 21, um primeiro pixel adjacente cuja disponibilidade é primeiramente determinada entre pixels adjacentes é assumido como sendo um pixel adjacente P(-1,-1) 2110 localizado em um canto esquerdo superior do bloco atual 2100. O determinador de disponibilidade 2410 primeiramente determina disponibilidade do primeiro pixel adjacente P(-1,-1) 2110. Se for determinado que o primeiro pixel adjacente P(-1,- 1) 2110 é não disponível, o meio de substituição 2420 busca um pixel adjacente disponível nos pixels adjacentes sequencialmente de acordo com uma direção predeterminada baseada no primeiro pixel adjacente P(-1,-1) 2110 e substitui o primeiro pixel adjacente P(-1,-1) 2110 com um pixel adjacente disponível inicialmente encontrado (a seguir, mencionado como um segundo pixel adjacente). Por exemplo, o meio de substituição 2420 busca pixels adjacentes da direita superior e topo do bloco atual 2100 de acordo com uma primeira direção de busca a partir da esquerda para a direita com base no primeiro pixel adjacente P(-1,-1) 2110, e se o segundo pixel adjacente não existe nos pixels adjacentes da direita superior e topo do bloco atual 2100, busca o segundo bloco adjacente por buscar pixels adjacentes à esquerda e esquerda inferior do bloco atual 2100 a partir do topo para a parte inferior com base no primeiro pixel adjacente P(-1,-1) 2110. O meio de substituição 2420 substitui o primeiro pixel adjacente P(-1,-1) 2110 com o segundo pixel adjacente que é incialmente encontrado de acordo com tal direção de busca e ordem. Por exemplo, se um pixel adjacente P(nT-2, -1) 2120 for o segundo pixel adjacente que é inicialmente encontrado nos pixels adjacentes da direita superior e de topo, o meio de substituição 2420 substitui um valor de pixel do primeiro pixel adjacente P(-1,-1) 2110 com um valor de pixel do segundo pixel adjacente P(nT-2, -1) 2120.[000218] Referring to Figure 21, a first adjacent pixel whose availability is first determined between adjacent pixels is assumed to be an adjacent pixel P(-1,-1) 2110 located in an upper left corner of the current block 2100. The determiner of availability 2410 first determines availability of the first adjacent pixel P(-1,-1) 2110. If it is determined that the first adjacent pixel P(-1,-1) 2110 is unavailable, the replacement means 2420 searches for an adjacent pixel available in adjacent pixels sequentially according to a predetermined direction based on the first adjacent pixel P(-1,-1) 2110 and replaces the first adjacent pixel P(-1,-1) 2110 with an initially found available adjacent pixel (hereinafter , referred to as a second adjacent pixel). For example, the replacement means 2420 searches top and top right adjacent pixels of the current block 2100 according to a first search direction from left to right based on the first adjacent pixel P(-1,-1) 2110 , and if the second adjacent pixel does not exist in the top right and top adjacent pixels of the current block 2100, fetches the second adjacent block by fetching left and bottom left adjacent pixels of the current block 2100 from the top to the bottom based in the first adjacent pixel P(-1,-1) 2110. The replacement means 2420 replaces the first adjacent pixel P(-1,-1) 2110 with the second adjacent pixel that is initially found according to such search direction and order. For example, if an adjacent pixel P(nT-2, -1) 2120 is the second adjacent pixel that is initially found in the top right and top adjacent pixels, the replacement means 2420 substitutes a pixel value of the first adjacent pixel P(-1,-1) 2110 with a pixel value of the second adjacent pixel P(nT-2, -1) 2120.

[000219] meio de substituição 2420 substitui o terceiro pixel adjacente não disponível restante, excluindo o primeiro pixel adjacente P(-1,-1) 2110, com um pixel adjacente é anteriormente processado e substituído com base em uma direção de busca predeterminada, ou um pixel adjacente originalmente disponível. Por exemplo, o meio de substituição 2420 substitui o primeiro pixel adjacente P(-1,-1) 2110 como segundo pixel adjacente P(nT- 2, -1) 2120, e então substitui um pixel adjacente não disponível seguinte P(0, -1), com o primeiro pixel adjacente P(-1,-1) 2110. Uma vez que o primeiro pixel adjacente P(-1,-1) 2110 é substituído com o segundo pixel adjacente P(nT-2, -1) 2120, o pixel adjacente P(0,-1) tem o mesmo valor que o segundo pixel adjacente P(nT-2, -1) 2120. Se o primeiro pixel adjacente P(- 1,-1) 2110 for originalmente disponível, um processo de substituir o primeiro pixel adjacente P(-1,-1) 2110 é pulado, e desse modo o meio de substituição 2420 substitui o valor de pixel do pixel adjacente P(0,-1) com o valor de pixel do primeiro pixel adjacente P(-1,-1) 2110. Um valor de pixel de um pixel adjacente P(1, -1) é substituído com um valor de pixel pré-processado do pixel adjacente P(0,-1).[000219] replacement means 2420 replaces the third remaining unavailable adjacent pixel, excluding the first adjacent pixel P(-1,-1) 2110, with an adjacent pixel that is previously processed and replaced based on a predetermined search direction, or an adjacent originally available pixel. For example, the replacement means 2420 replaces the first adjacent pixel P(-1,-1) 2110 with the second adjacent pixel P(nT-2, -1) 2120, and then replaces a next unavailable adjacent pixel P(0, -1), with the first adjacent pixel P(-1,-1) 2110. Since the first adjacent pixel P(-1,-1) 2110 is replaced with the second adjacent pixel P(nT-2, -1 ) 2120, the adjacent pixel P(0,-1) has the same value as the second adjacent pixel P(nT-2, -1) 2120. If the first adjacent pixel P(- 1,-1) 2110 is originally available , a process of replacing the first adjacent pixel P(-1,-1) 2110 is skipped, and thereby the replacement means 2420 replaces the pixel value of the adjacent pixel P(0,-1) with the pixel value of the first adjacent pixel P(-1,-1) 2110. A pixel value from an adjacent pixel P(1, -1) is replaced with a preprocessed pixel value from the adjacent pixel P(0,-1).

[000220] Tal processo de substituição é repetido para todos os terceiros pixels adjacentes não disponíveis. Na figura 21, o segundo pixel adjacente P(nT-2, -1) 2120 que é disponível entre os pixels adjacentes de topo não é substituído e mantém seu valor de pixel original. Como tal, o meio de substituição 2420 substitui um pixel adjacente de topo não disponível com um pixel adjacente que é pré-substituído ou um pixel adjacente originalmente disponível de acordo com uma direção de busca predeterminada. Em outras palavras, excluindo o primeiro pixel adjacente P(-1,-1) 2110 e o pixel adjacente originalmente disponível, o meio de substituição 2420 substitui o primeiro pixel adjacente por um pixel adjacente imediatamente à esquerda se uma direção de busca for da esquerda para a direita. Como tal, quando uma pluralidade de terceiros pixels adjacentes existe no topo do bloco atual 2100, o meio de substituição 2420 sequencialmente substitui os terceiros pixels adjacentes da esquerda para a direita com um pixel adjacente da esquerda respectivo. Aqui, o pixel adjacente da esquerda utilizado para substituir o terceiro pixel adjacente pode ser um pixel adjacente anteriormente substituído ou originalmente disponível. Similarmente, o meio de substituição 2420 substitui o terceiro pixel adjacente que é indisponível entre os pixels adjacentes da esquerda e esquerda inferior do bloco atual 2100 com um pixel adjacente imediatamente acima. Por exemplo, o meio de substituição 2420 substitui um pixel adjacente não disponível P(-1,0) pelo primeiro pixel adjacente P(-1,-1) 2110. Como descrito acima, se o primeiro pixel adjacente P(-1,-1) 2110 for originalmente disponível, o processo de substituir o primeiro pixel adjacente P(-1,-1) 2110 é pulado, e desse modo o meio de substituição 2420 substitui o pixel adjacente P(-1, 0), com o primeiro pixel adjacente P(-1,-1) 2110. Um valor de pixel de um pixel adjacente P(-1, 1) é substituído com um valor de pixel pré-processado do pixel adjacente P(-1, 0). Como o processo de substituir os terceiros pixels adjacentes de topo descritos acima, se uma pluralidade de terceiros pixels adjacentes existe à esquerda do bloco atual 2100, o meio de substituição 2420 substitui sequencialmente os terceiros pixels adjacentes do topo para a parte inferior com um pixel adjacente de topo respectivo. Aqui, o pixel adjacente de topo utilizado para substituir o terceiro pixel adjacente pode ser um pixel adjacente pré- substituído ou originalmente disponível.[000220] Such replacement process is repeated for all third adjacent unavailable pixels. In figure 21, the second adjacent pixel P(nT-2, -1) 2120 that is available among the top adjacent pixels is not replaced and retains its original pixel value. As such, the replacement means 2420 replaces an unavailable top adjacent pixel with an adjacent pixel that is pre-substituted or an originally available adjacent pixel in accordance with a predetermined search direction. In other words, by deleting the first adjacent pixel P(-1,-1) 2110 and the originally available adjacent pixel, the replacement means 2420 replaces the first adjacent pixel with an adjacent pixel immediately to the left if a search direction is from the left. to the right. As such, when a plurality of third adjacent pixels exists on top of the current block 2100, the replacement means 2420 sequentially replaces the third adjacent left-to-right pixels with a respective left-adjacent pixel. Here, the left adjacent pixel used to replace the third adjacent pixel may be a previously replaced or originally available adjacent pixel. Similarly, the replacement means 2420 replaces the third adjacent pixel that is unavailable among the left and bottom left adjacent pixels of the current block 2100 with an adjacent pixel immediately above. For example, the replacement means 2420 replaces an unavailable adjacent pixel P(-1,0) with the first adjacent pixel P(-1,-1) 2110. As described above, if the first adjacent pixel P(-1,- 1) 2110 is originally available, the process of replacing the first adjacent pixel P(-1,-1) 2110 is skipped, and thereby the replacement means 2420 replaces the adjacent pixel P(-1, 0) with the first adjacent pixel P(-1,-1) 2110. A pixel value from an adjacent pixel P(-1, 1) is replaced with a preprocessed pixel value from the adjacent pixel P(-1, 0). Like the process of replacing the top third adjacent pixels described above, if a plurality of adjacent third pixels exists to the left of the current block 2100, the replacement means 2420 sequentially replaces the top to bottom third adjacent pixels with an adjacent pixel respective top. Here, the top adjacent pixel used to replace the third adjacent pixel may be a pre-replaced or originally available adjacent pixel.

[000221] Tal processo de substituição é repetido para todos os terceiros pixels adjacentes à esquerda e esquerda inferior que são não disponíveis. Um pixel adjacente P(-1, nT+1) 2130 disponível entre os pixels adjacentes à esquerda não é substituído, porém mantém seu valor de pixel original. Como tal, o meio de substituição 2420 substitui o pixel adjacente à esquerda que é não disponível com um pixel adjacente pré- substituído ou originalmente disponível de acordo com uma direção de busca predeterminada. Em outras palavras, se uma direção de busca for do topo para a parte inferior, o meio de substituição 2420 substitui o terceiro pixel adjacente com um pixel adjacente imediatamente acima. Alternativamente, se todos os pixels adjacentes disponíveis no topo e à esquerda do bloco atual 2100 forem procurados, o meio de substituição 2420 pode substituir o primeiro pixel adjacente P(-1,-1), com um valor médio dos pixels adjacentes encontrados. Por exemplo, na figura 21, um valor de pixel do primeiro pixel adjacente P(-1, -1) pode ser substituído com um valor médio do segundo pixel adjacente P(nT-2,-1) 2120 inicialmente encontrado como sendo disponível entre os pixels adjacentes de topo e o pixel adjacente P(-1,nT+1) 2130 inicialmente encontrado como sendo disponível entre os pixels adjacentes à esquerda. Em outras palavras, quando PRA indica um valor de pixel do segundo pixel adjacente P(nT-2, -1) 2120 e PLB indica um valor de pixel do pixel adjacente P(-1, nT+1) 2130, um valor médio PT obtido através de uma equação: PT=(PRA + PLB + 1) >>1 pode substituir o valor de pixel do primeiro pixel adjacente P(-1, -1) 2110.[000221] Such replacement process is repeated for all third left and bottom left adjacent pixels that are unavailable. An adjacent pixel P(-1, nT+1) 2130 available among the adjacent pixels on the left is not replaced, but retains its original pixel value. As such, the replacement means 2420 replaces the left adjacent pixel that is unavailable with a pre-substituted or originally available adjacent pixel in accordance with a predetermined search direction. In other words, if a search direction is from top to bottom, the replacement means 2420 replaces the third adjacent pixel with an adjacent pixel immediately above. Alternatively, if all available adjacent pixels at the top and left of the current block 2100 are searched, the replacement means 2420 may replace the first adjacent pixel P(-1,-1), with an average value of the adjacent pixels found. For example, in Figure 21, a pixel value of the first adjacent pixel P(-1, -1) may be replaced with an average value of the second adjacent pixel P(nT-2,-1) 2120 initially found to be available between the top adjacent pixels and the adjacent pixel P(-1,nT+1) 2130 initially found to be available among the left adjacent pixels. In other words, when PRA indicates a pixel value of the second adjacent pixel P(nT-2, -1) 2120 and PLB indicates a pixel value of the adjacent pixel P(-1, nT+1) 2130, an average value PT obtained through an equation: PT=(PRA + PLB + 1) >>1 can replace the pixel value of the first adjacent pixel P(-1, -1) 2110.

[000222] Alternativamente se todos os pixels adjacentes disponíveis no topo e à esquerda do bloco atual 2100 forem procurados, o meio de substituição 2420 pode substituir o primeiro pixel adjacente P(-1,-1) 2110 por determinar um pixel adjacente disponível mais próximo ao primeiro pixel adjacente P(-1,-1) 2110 com base em uma distância a partir do primeiro pixel adjacente P(-1,-1) 2110 como o segundo pixel adjacente, ao invés de somente utilizar o pixel adjacente inicialmente encontrado de acordo com a direção de busca predeterminada. Na figura 21, uma vez que uma distância entre o primeiro pixel adjacente P(-1,-1) 2110 e o Segundo pixel adjacente P(nT-2,-1) 2120 inicialmente encontrado como sendo disponível no topo do bloco atual é (nT-2)-(-1), isto é, nT-1 e uma distância entre o primeiro pixel adjacente P(-1,-1) 2110 e o pixel adjacente P(- 1,nT+1) 2130 inicialmente encontrado como sendo disponível à esquerda do bloco atual 2100 é (nT+1)-(-1), isto é, nT+2, o meio de substituição 2420 pode substituir o primeiro pixel adjacente P(-1,-1) 2110 com o segundo pixel adjacente P(nT-2, -1) 2120.[000222] Alternatively if all adjacent available pixels at the top and left of the current block 2100 are searched, the replacement means 2420 may replace the first adjacent pixel P(-1,-1) 2110 by determining a nearest available adjacent pixel to the first adjacent pixel P(-1,-1) 2110 based on a distance from the first adjacent pixel P(-1,-1) 2110 as the second adjacent pixel, rather than just using the initially found adjacent pixel of according to the predetermined search direction. In figure 21, since a distance between the first adjacent pixel P(-1,-1) 2110 and the second adjacent pixel P(nT-2,-1) 2120 initially found to be available at the top of the current block is ( nT-2)-(-1), i.e., nT-1 and a distance between the first adjacent pixel P(-1,-1) 2110 and the adjacent pixel P(- 1,nT+1) 2130 initially found as being available to the left of the current block 2100 is (nT+1)-(-1), that is, nT+2, the replacement means 2420 can replace the first adjacent pixel P(-1,-1) 2110 with the second adjacent pixel P(nT-2, -1) 2120.

[000223] Alternativamente, para reduzir complexidade de um processo de procurar um Segundo pixel adjacente para substituir o primeiro pixel adjacente P(-1,-1) 2110, o meio de substituição 2420 pode somente buscar pixels P(-1,0) e P(0,-1) imediatamente adjacentes ao primeiro pixel adjacente P(-1,-1) 2110 ao invés de buscar todos os pixels adjacentes no topo e à esquerda do bloco atual 2110, e pode substituir o primeiro pixel adjacente P(-1,- 1) 2110 com um pixel adjacente disponível entre os pixels P(- 1,0) e P(0,-1). Por exemplo, o meio de substituição 2420 pode buscar pixels adjacentes em uma ordem dos pixels P(-1,0) e P(0,- 1) ou vice versa, e substituir o primeiro pixel adjacente P(- 1,-1) 2110 com um valor de pixel de um pixel adjacente disponível que é encontrado primeiramente. Se um pixel adjacente disponível não for encontrado nos pixels P(-1,0) e P(0,-1), o meio de substituição 2420 pode substituir o primeiro pixel adjacente P(- 1,-1) 2110 com um valor predeterminado com base em uma profundidade de bit como descrito acima. Se os dois pixels P(- 1,0) e P(0,-1) forem disponíveis, o meio de substituição 2420 pode substituir o primeiro pixel adjacente P(-1,-1) 2110 utilizando um valor médio dos pixels P(-1,0) e P(0,-1).[000223] Alternatively, to reduce complexity of a process of searching for a second adjacent pixel to replace the first adjacent pixel P(-1,-1) 2110, the replacement means 2420 may only search for pixels P(-1,0) and P(0,-1) immediately adjacent to the first adjacent pixel P(-1,-1) 2110 instead of fetching all adjacent pixels to the top and left of the current block 2110, and may replace the first adjacent pixel P(- 1,- 1) 2110 with an adjacent pixel available between pixels P(- 1,0) and P(0,-1). For example, the replacement means 2420 may search for adjacent pixels in an order of pixels P(-1,0) and P(0,-1) or vice versa, and replace the first adjacent pixel P(-1,-1) 2110 with a pixel value from an available adjacent pixel that is found first. If an available adjacent pixel is not found in pixels P(-1,0) and P(0,-1), the replacement means 2420 may replace the first adjacent pixel P(-1,-1) 2110 with a predetermined value based on a bit depth as described above. If both pixels P(-1,0) and P(0,-1) are available, the replacement means 2420 may replace the first adjacent pixel P(-1,-1) 2110 using an average value of the pixels P( -1,0) and P(0,-1).

[000224] Enquanto isso, uma ordem de busca e uma direção de busca dos pixels adjacentes à esquerda e superior pode ser alterada. Em outras palavras, o meio de substituição 2420 pode primeiramente buscar pixels adjacentes à esquerda e esquerda inferior do bloco atual 2100, e se um pixel adjacente disponível não for encontrado, pode então buscar pixels adjacentes à direita superior e de topo. Também, ao invés de buscar um pixel adjacente disponível por buscar os pixels adjacentes à esquerda e esquerda inferior do topo até a parte inferior, o meio de substituição 2420 pode buscar os pixels adjacentes à esquerda e esquerda inferior da parte inferior para o topo. Além disso, ao invés de buscar um pixel adjacente disponível por buscar os pixels adjacentes à direita superior e de topo da esquerda para a direita, o meio de substituição 2420 pode buscar os pixels adjacentes à direita superior e de topo da direita para a esquerda.[000224] Meanwhile, a search order and search direction of the left and top adjacent pixels can be changed. In other words, the replacement means 2420 may first search for pixels adjacent to the left and bottom left of the current block 2100, and if an available adjacent pixel is not found, it may then search for pixels adjacent to the upper and top right. Also, instead of searching for an available adjacent pixel by searching the left and lower left adjacent pixels from the top to the bottom, the replacement means 2420 may search the left and lower left adjacent pixels from the bottom to the top. Furthermore, instead of fetching an available adjacent pixel by fetching the top right and top right adjacent pixels from left to right, the replacement means 2420 may fetch the top right and top right adjacent pixels from right to left.

[000225] Alternativamente, o meio de substituição 2420 pode substituir um valor de pixel do primeiro pixel adjacente P(-1,- 1) 2110 com um valor médio de todos os pixels adjacentes disponíveis entre os pixels adjacentes de topo, direita superior, esquerda e esquerda inferior do bloco atual 2100, ao invés de utilizar o pixel adjacente inicialmente encontrado disponível entre os pixels adjacentes de topo ou à esquerda para substituir o primeiro pixel adjacente P(-1,-1) 2110.[000225] Alternatively, the replacement means 2420 may replace a pixel value of the first adjacent pixel P(-1,-1) 2110 with an average value of all adjacent pixels available among the adjacent pixels of top, top right, left and bottom left of the current block 2100, rather than using the adjacent pixel initially found available among the top or left adjacent pixels to replace the first adjacent pixel P(-1,-1) 2110.

[000226] A figura 22 é um diagrama para descrever um processo de substituir um pixel adjacente não disponível, de acordo com outra modalidade da presente invenção.[000226] Figure 22 is a diagram for describing a process of replacing an unavailable adjacent pixel, according to another embodiment of the present invention.

[000227] Com referência à figura 22, é assumido que um primeiro pixel adjacente cuja disponibilidade é primeiramente determinada entre pixels adjacentes é um pixel adjacente P(-1,2nT-1) 2210 localizado à esquerda mais inferior do bloco atual 2200. Em outras palavras, o determinador de disponibilidade 2410 primeiramente determinada disponibilidade do primeiro pixel adjacente P(-1, 2nT-1) 2210. Se for determinado que o primeiro pixel adjacente P(-1,2nT-1) 2210 é não disponível, o meio de substituição 2420 busca um pixel adjacente disponível entre os pixels adjacentes sequencialmente de acordo com uma ordem predeterminada com base no primeiro pixel adjacente P(-1,2nT-1) 2210 e substitui o primeiro pixel adjacente P(-1,2nT-1) 2210 com um segundo pixel adjacente disponível que é inicialmente encontrado. Por exemplo, o meio de substituição 2420 busca pixels adjacentes à esquerda e esquerda inferior do bloco atual 2200 de acordo com uma primeira direção de busca da parte inferior até o topo com base no primeiro pixel adjacente P(-1,2nT-1) 2210 e se o segundo pixel adjacente disponível não for encontrado nos pixels adjacentes à esquerda e esquerda inferior, busca o segundo pixel adjacente disponível por buscar pixels adjacentes de topo e direita superior do bloco atual 2200 de acordo com uma segunda direção de busca da esquerda para a direita. O meio de substituição 2420 substitui o primeiro pixel adjacente P(-1,2nT- 1) 2210 com o segundo pixel adjacente disponível inicialmente encontrado de acordo com tal direção de busca e uma ordem de busca. Por exemplo, se um pixel adjacente P(-1,nT-2) 2220 entre os pixels adjacentes à esquerda for o segundo pixel adjacente disponível que é inicialmente encontrado de acordo com a ordem de busca, o meio de substituição 2420 substitui um valor de pixel do primeiro pixel adjacente P(-1,2nT-1) 2210 por um valor de pixel do segundo pixel adjacente P(-1, nT-2) 2220.[000227] Referring to Figure 22, it is assumed that a first adjacent pixel whose availability is first determined between adjacent pixels is an adjacent pixel P(-1,2nT-1) 2210 located to the lower left of the current block 2200. In other words, In other words, the availability determiner 2410 first determines availability of the first adjacent pixel P(-1, 2nT-1) 2210. If it is determined that the first adjacent pixel P(-1,2nT-1) 2210 is unavailable, the means of replacement 2420 searches for an available adjacent pixel among the adjacent pixels sequentially according to a predetermined order based on the first adjacent pixel P(-1.2nT-1) 2210 and replaces the first adjacent pixel P(-1.2nT-1) 2210 with a second available adjacent pixel that is initially found. For example, the replacement means 2420 searches left and bottom left adjacent pixels of the current block 2200 according to a first search direction from bottom to top based on the first adjacent pixel P(-1.2nT-1) 2210 and if the second available adjacent pixel is not found in the left and bottom left adjacent pixels, searches for the second available adjacent pixel by fetching top and top right adjacent pixels of the current block 2200 according to a second search direction from left to left. right. The replacement means 2420 replaces the first adjacent pixel P(-1.2nT-1) 2210 with the second available adjacent pixel initially found in accordance with such search direction and a search order. For example, if an adjacent pixel P(-1,nT-2) 2220 among the left adjacent pixels is the second available adjacent pixel that is initially found according to the search order, the replacement means 2420 substitutes a value of pixel of the first adjacent pixel P(-1,2nT-1) 2210 by a pixel value of the second adjacent pixel P(-1, nT-2) 2220.

[000228] Similarmente à modalidade descrita cima, o meio de substituição 2420 substitui um terceiro pixel adjacente não disponível restante excluindo o primeiro pixel adjacente P(- 1,2nT-1) 2210 por um pixel adjacente anteriormente processado e substituído ou um pixel adjacente originalmente disponível com base em uma direção de busca predeterminada. Por exemplo, o meio de substituição 2420 substitui o primeiro pixel adjacente P(- 1,2nT-1) 2210 com o segundo pixel adjacente P(-1, nT-2) 2220, e então substitui um pixel adjacente não disponível seguinte P(- 1, 2nT-2) com o primeiro pixel adjacente P(-1,2nT-1) 2210 . se o primeiro pixel adjacente P(-1,2nT-1) 2210 for originalmente disponível, um processo de substituir o primeiro pixel adjacente P(-1,2nT-1) 2210 é pulado, e desse modo o meio de substituição 2420 substitui um valor de pixel do pixel adjacente P(-1, 2nT- 2) com o valor de pixel do primeiro pixel adjacente P(-1,2nT-1) 2210 .[000228] Similar to the embodiment described above, the replacement means 2420 replaces a third remaining unavailable adjacent pixel excluding the first adjacent pixel P(- 1.2nT-1) 2210 with a previously processed and replaced adjacent pixel or an originally adjacent pixel available based on a predetermined search direction. For example, the replacement means 2420 replaces the first adjacent pixel P(-1,2nT-1) 2210 with the second adjacent pixel P(-1, nT-2) 2220, and then replaces a next unavailable adjacent pixel P( - 1, 2nT-2) with the first adjacent pixel P(-1,2nT-1) 2210 . if the first adjacent pixel P(-1.2nT-1) 2210 is originally available, a process of replacing the first adjacent pixel P(-1.2nT-1) 2210 is skipped, and thereby the replacement means 2420 replaces a pixel value of the adjacent pixel P(-1, 2nT- 2) with the pixel value of the first adjacent pixel P(-1,2nT-1) 2210 .

[000229] Tal processo de substituição é repetido para todos os terceiros pixels adjacentes não disponíveis. Na figura 22, o segundo pixel adjacente P(-1, nT-2) 2220 e um pixel adjacente p(nT+1, -1) 2230 que são disponíveis entre os pixels adjacentes à esquerda e superior não são substituídos e mantém seus valores de pixel originais. Como tal, o meio de substituição 2420 busca os pixels adjacentes à esquerda e superior do bloco atual 2200 respectivamente a partir do topo para a parte inferior e da esquerda para a direita com base no primeiro pixel adjacente P(- 1,2nT-1) 2210 e substitui o terceiro pixel adjacente por um pixel adjacente imediatamente abaixo ou à esquerda. Em outras palavras, o meio de substituição 2420 substitui os terceiros pixels adjacentes não disponíveis localizados à esquerda e esquerda inferior do bloco atual 2200, excluindo o primeiro pixel adjacente P(-1,2nT-1) 2210 e o pixel adjacente originalmente disponível, com o pixel adjacente imediatamente abaixo respectivo, e substitui os terceiros pixels adjacentes não disponíveis localizados no topo e direita superior do bloco atual 2200 com um pixel adjacente imediatamente à esquerda respectivo. Como tal, o meio de substituição 2420 substitui respectivamente uma pluralidade de terceiros pixels adjacentes localizados à esquerda do bloco atual 2200 a partir da parte inferior para o topo com um pixel adjacente abaixo respectivo, e respectivamente substitui uma pluralidade de terceiros pixels adjacentes localizados no topo do bloco atual 2200 a partir da esquerda para a direita com um pixel adjacente à esquerda respectivo. Como descrito acima, o pixel adjacente à esquerda ou inferior respetivo utilizado para substituição pode ser um pixel adjacente pré-substituído ou originalmente disponível.[000229] Such replacement process is repeated for all third adjacent unavailable pixels. In figure 22, the second adjacent pixel P(-1, nT-2) 2220 and an adjacent pixel p(nT+1, -1) 2230 that are available between the left and top adjacent pixels are not replaced and maintain their values of original pixels. As such, the replacement means 2420 fetches the left and top adjacent pixels of the current block 2200 respectively from top to bottom and left to right based on the first adjacent pixel P(-1.2nT-1) 2210 and replaces the third adjacent pixel with an adjacent pixel immediately below or to the left. In other words, the replacement means 2420 replaces the third unavailable adjacent pixels located to the left and bottom left of the current block 2200, excluding the first adjacent pixel P(-1.2nT-1) 2210 and the originally available adjacent pixel, with the respective immediately below adjacent pixel, and replaces the third unavailable adjacent pixels located at the top and upper right of the current block 2200 with a respective immediately left adjacent pixel. As such, the replacement means 2420 respectively replaces a plurality of adjacent third pixels located to the left of the current block 2200 from the bottom to the top with a respective adjacent pixel below, and respectively replaces a plurality of adjacent third pixels located on the top of the current block 2200 from left to right with a respective left adjacent pixel. As described above, the respective left or bottom adjacent pixel used for replacement may be a pre-replaced or originally available adjacent pixel.

[000230] Como descrito acima, uma ordem de busca ou uma direção de busca dos pixels adjacentes de topo e a esquerda pode ser alterada. Em outras palavras, o meio de substituição 2420 pode primeiramente buscar os pixels adjacentes à direita superior e de topo do bloco atual 2200 a partir da direita para a esquerda, e se um pixel adjacente for não disponível, pode então buscar os pixels adjacentes à esquerda inferior e a esquerda do bloco atual 2200 a partir do topo para a parte inferior para buscar um segundo pixel adjacente para substituir o primeiro pixel adjacente P(-1,2nT-1) 2210 .[000230] As described above, a search order or a search direction of the top and left adjacent pixels can be changed. In other words, the replacement means 2420 may first search the top and top right adjacent pixels of the current block 2200 from right to left, and if an adjacent pixel is unavailable, it may then search the left adjacent pixels. bottom and left of the current block 2200 from top to bottom to fetch a second adjacent pixel to replace the first adjacent pixel P(-1,2nT-1) 2210 .

[000231] A figura 23 é um diagrama para descrever um processo de substituir um pixel adjacente não disponível, de acordo com outra modalidade da presente invenção.[000231] Figure 23 is a diagram for describing a process of replacing an unavailable adjacent pixel, according to another embodiment of the present invention.

[000232] Com referência à figura 23, é assumido que um primeiro pixel adjacente cuja disponibilidade é inicialmente determinada entre pixels adjacentes é um pixel adjacente P(2nT-1,-1) 2310 localizado superior mais à direita do bloco atual 2300. Em outras palavras, o determinador de disponibilidade 2410 primeiramente determina disponibilidade do primeiro pixel adjacente P(2nT-1,- 1) 2310. Se o primeiro pixel adjacente P(2nT-1,-1) 2310 for determinado como sendo não disponível, o meio de substituição 2420 busca um pixel adjacente disponível por sequencialmente procurar os pixels adjacentes de acordo com uma direção predeterminada baseada no primeiro pixel adjacente P(2nT-1,-1) 2310 e substitui o primeiro pixel adjacente P(2nT-1,-1) 2310 por um segundo pixel adjacente disponível inicialmente encontrado. Por exemplo, o meio de substituição 2420 busca pixels adjacentes à direita superior e de topo do bloco atual 2300 de acordo com uma primeira direção de busca da direita para a esquerda com base no primeiro pixel adjacente P(2nT-1,-1) 2310, e se o segundo pixel adjacente for não disponível nos pixels adjacentes a direita superior e de topo, procura o segundo pixel adjacente disponível por buscar pixels adjacentes à esquerda inferior e a esquerda do bloco atual 2300 a partir do topo até a parte inferior. O meio de substituição 2420 substitui o primeiro pixel adjacente P(2nT-1,-1) 2310 com o segundo pixel adjacente disponível inicialmente encontrado de acordo com tal direção de busca e ordem de busca. Por exemplo, quando um pixel adjacente P(nT+1, -1) 2320 entre os pixels adjacentes superiores é um segundo pixel adjacente disponível que é inicialmente encontrado de acordo com uma ordem de busca, o meio de substituição 2420 substitui um valor de pixel do primeiro pixel adjacente P(2nT- 1,-1) 2310 com um valor de pixel do segundo pixel adjacente P(nT+1, -1) 2320.[000232] Referring to Figure 23, it is assumed that a first adjacent pixel whose availability is initially determined between adjacent pixels is an adjacent pixel P(2nT-1,-1) 2310 located uppermost to the right of the current block 2300. In other words, In other words, the availability determiner 2410 first determines availability of the first adjacent pixel P(2nT-1,-1) 2310. If the first adjacent pixel P(2nT-1,-1) 2310 is determined to be unavailable, the means of replacement 2420 searches for an available adjacent pixel by sequentially searching the adjacent pixels according to a predetermined direction based on the first adjacent pixel P(2nT-1,-1) 2310 and replacing the first adjacent pixel P(2nT-1,-1) 2310 by a second available adjacent pixel initially found. For example, the replacement means 2420 searches top and top right adjacent pixels of the current block 2300 according to a first right-to-left search direction based on the first adjacent pixel P(2nT-1,-1) 2310 , and if the second adjacent pixel is unavailable in the upper right and top adjacent pixels, searches for the second available adjacent pixel by searching for lower left and left adjacent pixels of the current block 2300 from the top to the bottom. The replacement means 2420 replaces the first adjacent pixel P(2nT-1,-1) 2310 with the second available adjacent pixel initially found in accordance with such search direction and search order. For example, when an adjacent pixel P(nT+1, -1) 2320 among the upper adjacent pixels is a second available adjacent pixel that is initially found according to a search order, the replacement means 2420 substitutes a pixel value of the first adjacent pixel P(2nT- 1,-1) 2310 with a pixel value of the second adjacent pixel P(nT+1, -1) 2320.

[000233] Além disso, o meio de substituição 2420 substitui um terceiro pixel adjacente não disponível restante excluindo o primeiro pixel adjacente P(2nT-1,-1) 2310 com um pixel adjacente pré-processado e substituído ou originalmente disponível com base em uma direção de busca predeterminada. Por exemplo, o meio de substituição 2420 substitui o primeiro pixel adjacente P(2nT- 1,-1) 2310 com o segundo pixel adjacente P(nT+1, -1), e então substitui um pixel adjacente não disponível seguinte P(2nT-2, - 1) com o primeiro pixel adjacente P(2nT-1,-1) 2310.[000233] Furthermore, the replacement means 2420 replaces a third remaining unavailable adjacent pixel excluding the first adjacent pixel P(2nT-1,-1) 2310 with a preprocessed and replaced or originally available adjacent pixel based on a default search direction. For example, the replacement means 2420 replaces the first adjacent pixel P(2nT-1,-1) 2310 with the second adjacent pixel P(nT+1, -1), and then replaces a next unavailable adjacent pixel P(2nT -2, - 1) with the first adjacent pixel P(2nT-1,-1) 2310.

[000234] Se o primeiro pixel adjacente P(2nT-1,-1) 2310 for originalmente disponível, um processo de substituir o primeiro pixel adjacente P(2nT-1,-1) 2310 é pulado, e desse modo o meio de substituição 2420 substitui um valor de pixel do pixel adjacente P(2nT-2, -1) com um valor de pixel original do primeiro pixel adjacente P(2nT-1,-1) 2310.[000234] If the first adjacent pixel P(2nT-1,-1) 2310 is originally available, a process of replacing the first adjacent pixel P(2nT-1,-1) 2310 is skipped, and thereby the replacement means 2420 replaces a pixel value of the adjacent pixel P(2nT-2, -1) with an original pixel value of the first adjacent pixel P(2nT-1,-1) 2310.

[000235] Tal processo de substituição é repetido em todos os terceiros pixels adjacentes não disponíveis. Na figura 23, o segundo pixel adjacente disponível P(nT+1,-1) 2320 e um pixel adjacente disponível P(-1,nT-1) 2320 entre os pixels adjacentes esquerda e de topo não são substituídos e mantêm seus valores de pixel originais. Como tal, o meio de substituição 2420 busca os pixels adjacentes esquerda e de topo do bloco atual 2300 respectivamente da direita para a esquerda e de topo para a parte inferior com base no primeiro pixel adjacente P(2nT-1,-1) 2310, e sequencialmente substitui os terceiros pixels adjacentes não disponíveis com um pixel adjacente esquerdo ou de topo. Em outras palavras, o meio de substituição 2420 sequencialmente substitui os terceiros pixels adjacentes não disponíveis localizados no topo e direita superior do bloco atual 2300 com um pixel adjacente imediatamente à esquerda respectivo, e os terceiros pixels adjacentes não disponíveis localizados à esquerda e esquerda inferior do bloco atual 2300 por um pixel adjacente imediatamente acima respectivo, excluindo o primeiro pixel adjacente P(2nT-1,-1) 2310 e um pixel adjacente originalmente disponível.[000235] Such replacement process is repeated on all third adjacent unavailable pixels. In figure 23, the second available adjacent pixel P(nT+1,-1) 2320 and one available adjacent pixel P(-1,nT-1) 2320 between the left and top adjacent pixels are not replaced and maintain their values of original pixels. As such, the replacement means 2420 fetches the left and top adjacent pixels of the current block 2300 respectively from right to left and top to bottom based on the first adjacent pixel P(2nT-1,-1) 2310, and sequentially replaces the unavailable third adjacent pixels with a left or top adjacent pixel. In other words, the replacement means 2420 sequentially replaces the unavailable third adjacent pixels located at the top and upper right of the current block 2300 with a respective immediately left adjacent pixel, and the unavailable third adjacent pixels located at the lower left and left of the respective block. current block 2300 by an immediately above respective adjacent pixel, excluding the first adjacent pixel P(2nT-1,-1) 2310 and an originally available adjacent pixel.

[000236] Como descrito acima, uma ordem de busca e uma direção de busca dos pixels adjacentes de topo e esquerda podem ser alteradas. Em outras palavras, o meio de substituição 2420 primeiramente busca os pixels adjacentes à esquerda e esquerda inferior do bloco atual 2300 a partir da parte inferior para o topo, e se um pixel adjacente for não disponível, então busca os pixels adjacentes à direita superior e de topo do bloco atual 2300 da esquerda para a direita de modo a buscar por um segundo pixel adjacente para substituir o primeiro pixel adjacente P(2nT-1, -1) 2310.[000236] As described above, a search order and a search direction of the top and left adjacent pixels can be changed. In other words, the replacement means 2420 first searches the left and lower left adjacent pixels of the current block 2300 from the bottom to the top, and if an adjacent pixel is unavailable, then searches the upper right and left adjacent pixels. of the current block 2300 from left to right in order to search for a second adjacent pixel to replace the first adjacent pixel P(2nT-1, -1) 2310.

[000237] Enquanto isso, se um processo de substituir pixels adjacentes não disponíveis entre pixels adjacentes for concluído, um processo de filtrar os pixels adjacentes pode ser realizado. O fato de se utilizar um pixel adjacente filtrado pode ser determinado com base em um tamanho de um bloco atual. Por exemplo, o pixel adjacente filtrado pode ser utilizado somente quando o tamanho do bloco atual é 16x16.[000237] Meanwhile, if a process of replacing unavailable adjacent pixels between adjacent pixels is completed, a process of filtering adjacent pixels can be carried out. Whether to use a filtered adjacent pixel can be determined based on a current block size. For example, the filtered adjacent pixel can be used only when the current block size is 16x16.

[000238] A figura 25A é um diagrama de pixels adjacentes filtrados 2510 e 2520 de um bloco atual 2500.[000238] Figure 25A is a diagram of filtered adjacent pixels 2510 and 2520 of a current block 2500.

[000239] Com referência à figura 25A, os pixels adjacentes X 2510 no topo do bloco atual 2500 e os pixels adjacentes Y 2520 à esquerda do bloco atual 2500 podem ser filtrados pelo menos uma vez, e um pixel adjacente filtrado pode ser utilizado para intrapredição do bloco atual 2500. Aqui, quando um tamanho do bloco atual 2500 é nTxnT, X pode ser 2nT e Y pode ser 2nT.[000239] Referring to Figure 25A, the adjacent pixels of the current block 2500. Here, when a current block size 2500 is nTxnT, X can be 2nT and Y can be 2nT.

[000240] Quando ContextOrg[n] indica pixels originais X+Y no topo e a esquerda do bloco atual 2500 tendo o tamanho de nTxnT, em que n é um número inteiro de 0 a X+Y-1, n é 0 em um pixel mais baixo adjacente entre pixels adjacentes à esquerda, isto é, ContextOrg[0], e n é X+Y-1 em um pixel adjacente mais a direita entre pixels adjacentes de topo, isto é, ContextOrg[X+Y-1].[000240] When ContextOrg[n] indicates original pixels X+Y on top and left of the current block 2500 having the size of nTxnT, where n is an integer from 0 to X+Y-1, n is 0 in a lowest adjacent pixel between left-adjacent pixels, that is, ContextOrg[0], and n is X+Y-1 in a right-most adjacent pixel between top-adjacent pixels, that is, ContextOrg[X+Y-1].

[000241] A figura 25B é um diagrama de referência para descrever um processo de filtração de um pixel adjacente de um bloco atual.[000241] Figure 25B is a reference diagram for describing a process of filtering an adjacent pixel of a current block.

[000242] Com referência à figura 25B, quando ContextOrg[n] indica pixels adjacentes no topo e à esquerda de um bloco atual, em que n é um número inteiro de 0 a 4nT-1, os pixels adjacentes podem ser filtrados através de um valor médio ponderal entre os pixels adjacentes. Quando ContextFiltered1[n] indica um pixel adjacente filtrado de uma vez, pixels adjacentes filtrados por aplicação um filtro de 3 derivações aos pixels adjacentes ContextOrg[n] podem ser obtidos de acordo com uma equação ContextFiltered1[n]=(ContextOrg[n-1]+2*ContextOrg[n]+ ContextOrg [n+1])/4. Similarmente, um pixel adjacente filtrado duas vezes ContextFiltered2[n] pode ser gerado por calcular novamente um valor médio ponderal entre os pixels adjacentes filtrados de uma vez ContextFiltered1[n]. Por exemplo, pixels adjacentes filtrados por aplicar um filtro de 3 derivações aos pixels adjacentes filtrados ContextFiltered1[n] podem ser gerados de acordo com uma equação ContextFiltered2[n]=(ContextFiltered1[n- 1]+2*ContextFiltered1 [n]+ContextFiltered1[n+1])/4.[000242] Referring to Figure 25B, when ContextOrg[n] indicates adjacent pixels at the top and left of a current block, where n is an integer from 0 to 4nT-1, adjacent pixels can be filtered through a weighted average value between adjacent pixels. When ContextFiltered1[n] indicates an adjacent pixel filtered at once, adjacent pixels filtered by applying a 3-lead filter to the adjacent pixels ContextOrg[n] can be obtained according to an equation ContextFiltered1[n]=(ContextOrg[n-1 ]+2*ContextOrg[n]+ ContextOrg [n+1])/4. Similarly, a twice-filtered adjacent pixel ContextFiltered2[n] can be generated by recomputing a weighted average value between adjacent pixels filtered once ContextFiltered1[n]. For example, adjacent pixels filtered by applying a 3-lead filter to adjacent pixels filtered ContextFiltered1[n] can be generated according to an equation ContextFiltered2[n]=(ContextFiltered1[n- 1]+2*ContextFiltered1 [n]+ContextFiltered1 [n+1])/4.

[000243] A figura 26 é um fluxograma que ilustra um método de intrapredição de um vídeo, de acordo com uma modalidade da presente invenção.[000243] Figure 26 is a flowchart illustrating a video intraprediction method, according to an embodiment of the present invention.

[000244] Em operação 2610, o determinador de disponibilidade 2410 determina disponibilidade de um número predeterminado de pixels adjacentes utilizados para intrapredição de um bloco atual entre blocos obtidos por dividir um quadro que forma um vídeo em uma estrutura hierárquica. Como descrito acima, se um pixel adjacente incluído em um bloco adjacente de uma fatia diferente a partir de uma fatia incluindo um bloco adjacente inter-predito ou o bloco atual existe entre o número predeterminado de pixels adjacentes, o determinado de disponibilidade 2410 determina o pixel adjacente correspondente como um pixel adjacente não disponível.[000244] In operation 2610, the availability determiner 2410 determines availability of a predetermined number of adjacent pixels used for intraprediction of a current block between blocks obtained by dividing a frame that forms a video into a hierarchical structure. As described above, if an adjacent pixel included in an adjacent block of a different slice from a slice including an inter-predicted adjacent block or the current block exists among the predetermined number of adjacent pixels, the availability determinate 2410 determines the pixel corresponding adjacent as an unavailable adjacent pixel.

[000245] Na operação 2620, se um primeiro pixel adjacente for não disponível no número predeterminado de pixels adjacentes, o meio de substituição 2420 busca um segundo pixel adjacente disponível por buscar o número predeterminado de pixels adjacentes em uma direção predeterminada com base no primeiro pixel adjacente. Na operação 2630, o meio de substituição 2420 substitui um valor de pixel do primeiro pixel adjacente com um valor de pixel do segundo pixel adjacente. Se o primeiro pixel adjacente em um local predeterminado for disponível, o primeiro pixel adjacente é utilizado como um pixel de referência para a intrapredição do bloco atual, e um processo de substituir o primeiro pixel adjacente é pulado. Como tal, quando o primeiro pixel adjacente é não disponível e desse modo substituído com o segundo pixel adjacente ou é disponível e desse modo o processo de substituição é pulado, um processo de substituir um terceiro pixel adjacente não disponível entre os pixels adjacentes é realizado.[000245] In operation 2620, if a first adjacent pixel is unavailable in the predetermined number of adjacent pixels, the replacement means 2420 searches for an available second adjacent pixel by searching the predetermined number of adjacent pixels in a predetermined direction based on the first pixel adjacent. In operation 2630, the replacement means 2420 replaces a pixel value of the first adjacent pixel with a pixel value of the second adjacent pixel. If the first adjacent pixel at a predetermined location is available, the first adjacent pixel is used as a reference pixel for the intraprediction of the current block, and a process of replacing the first adjacent pixel is skipped. As such, when the first adjacent pixel is unavailable and thereby replaced with the second adjacent pixel or is available and thus the replacement process is skipped, a process of replacing an unavailable third adjacent pixel among the adjacent pixels is performed.

[000246] Como descrito acima, o meio de substituição 2420 de acordo com uma modalidade determina disponibilidade de um primeiro pixel adjacente localizado em um canto esquerdo mais superior do bloco atual, se o primeiro pixel adjacente for não disponível, busca o segundo pixel adjacente disponível por buscar pixels adjacentes à direita superior e de topo a partir da esquerda para a direita com base no primeiro pixel adjacente, e se o segundo pixel adjacente for não disponível nos pixels adjacentes à direita superior e de topo, busca o segundo pixel adjacente disponível por buscar pixels adjacentes à esquerda inferior e esquerda a partir do topo até a parte inferior com base no primeiro pixel adjacente. O meio de substituição 2420 determina um pixel adjacente disponível inicialmente encontrão de acordo com tal direção de busca e uma ordem de busca como o segundo pixel adjacente. A seguir, o meio de substituição 2420 substitui o valor de pixel do primeiro pixel adjacente com o valor de pixel do segundo pixel adjacente. Além disso, o meio de substituição 2420 substitui pelo menos um terceiro pixel adjacente não disponível localizado à esquerda e esquerda inferior do bloco atual com um pixel adjacente imediatamente acima, excluindo o primeiro pixel adjacente e um pixel adjacente originalmente disponível, e substitui pelo menos um terceiro pixel adjacente não disponível localizado no topo e à direita superior do bloco atual por um pixel adjacente imediatamente à esquerda. Em outras palavras, o meio de substituição 2420 executa um processo de substituir os terceiros pixels adjacentes não disponíveis em outros locais, excluindo o primeiro pixel adjacente em um local predeterminado, utilizando um pixel imediatamente adjacente em uma direção predeterminada.[000246] As described above, the replacement means 2420 according to one embodiment determines availability of a first adjacent pixel located in an upper left corner of the current block, if the first adjacent pixel is unavailable, seeks the second available adjacent pixel by fetching top and top right adjacent pixels from left to right based on the first adjacent pixel, and if the second adjacent pixel is unavailable in the top and top right adjacent pixels, fetches the second available adjacent pixel by fetch adjacent pixels from the bottom left and left from the top to the bottom based on the first adjacent pixel. The replacement means 2420 determines an initially available adjacent pixel according to such a search direction and a search order as the second adjacent pixel. Next, the replacement means 2420 replaces the pixel value of the first adjacent pixel with the pixel value of the second adjacent pixel. Furthermore, the replacement means 2420 replaces at least one unavailable third adjacent pixel located to the left and lower left of the current block with an adjacent pixel immediately above, excluding the first adjacent pixel and an originally available adjacent pixel, and replaces at least one third unavailable adjacent pixel located at the top and upper right of the current block by an adjacent pixel immediately to the left. In other words, the replacement means 2420 performs a process of replacing third adjacent pixels not available at other locations by deleting the first adjacent pixel at a predetermined location using an immediately adjacent pixel in a predetermined direction.

[000247] meio de substituição 2420 de acordo com outra modalidade determina disponibilidade de um primeiro pixel adjacente localizado à esquerda mais inferior do bloco atual, e se o primeiro pixel adjacente for não disponível, determina um pixel adjacente disponível inicialmente encontrado como o segundo pixel adjacente por buscar os pixels adjacentes à esquerda e esquerda inferior a partir da parte inferior até o topo com base no primeiro pixel adjacente. Se o segundo pixel adjacente for não disponível nos pixels adjacentes à esquerda e esquerda inferior, o meio de substituição 2420 determina um pixel adjacente disponível inicialmente encontrado como o segundo pixel adjacente por buscar os pixels adjacentes à direita superior e de topo a partir da esquerda para a direita. Além disso, o meio de substituição 2420 substitui o valor de pixel do primeiro pixel adjacente com o valor de pixel do segundo pixel adjacente. Além disso, o meio de substituição 2420 sequencialmente substitui os terceiros pixels adjacentes não disponíveis à esquerda e esquerda inferior pelo pixel adjacente imediatamente abaixo respectivo, e os terceiros pixels adjacentes não disponíveis no topo e direita superior pelo pixel adjacente imediatamente esquerda respectivo, excluindo o primeiro pixel adjacente e o pixel adjacente originalmente disponível. Em outras palavras, o meio de substituição 2420 executa um processo de substituir os terceiros pixels adjacentes não disponíveis em outros locais por um pixel imediatamente adjacentes em uma direção predeterminada, excluindo o primeiro pixel adjacente no local predeterminado.[000247] substitution means 2420 according to another embodiment determines availability of a first adjacent pixel located to the lower left of the current block, and if the first adjacent pixel is unavailable, determines an available adjacent pixel initially found as the second adjacent pixel by fetching the left and bottom left adjacent pixels from the bottom to the top based on the first adjacent pixel. If the second adjacent pixel is unavailable in the left and bottom left adjacent pixels, the substitution means 2420 determines an initially found available adjacent pixel as the second adjacent pixel by searching the top right and top right adjacent pixels from the left to on the right. Furthermore, the replacement means 2420 replaces the pixel value of the first adjacent pixel with the pixel value of the second adjacent pixel. Furthermore, the replacement means 2420 sequentially replaces the unavailable third adjacent pixels on the respective lower left and immediately below with the respective immediately below adjacent pixel, and the respective unavailable third adjacent pixels on the top and upper right with the respective immediately left adjacent pixel, excluding the first adjacent pixel and the originally available adjacent pixel. In other words, the replacement means 2420 performs a process of replacing third adjacent pixels not available at other locations with an immediately adjacent pixel in a predetermined direction, deleting the first adjacent pixel at the predetermined location.

[000248] meio de substituição 2420 de acordo com outra modalidade determina disponibilidade de um primeiro pixel adjacente localizado na parte superior mais à direita do bloco atual, e se o primeiro pixel adjacente é não disponível, determina um pixel adjacente disponível inicialmente encontrado como o segundo pixel adjacente por buscar pixels adjacentes à direita superior e de topo a partir da direita para a esquerda com base no primeiro pixel adjacente. Se o segundo pixel adjacente for não disponível nos pixels adjacentes à direita superior e de topo, o meio de substituição 2420 determina um pixel adjacente disponível inicialmente encontrado como o segundo pixel adjacente por buscar pixels adjacentes à esquerda e esquerda inferior a partir do topo para a parte inferior. A seguir, o meio de substituição 2420 substitui um valor de pixel do primeiro pixel adjacente com um valor de pixel do segundo pixel adjacente. Além disso, o meio de substituição 2420 substitui pelo menos um terceiro pixel adjacente não disponível localizado no topo e direita superior do bloco atual por um pixel adjacente imediatamente à direita, e substitui pelo menos um terceiro pixel adjacente não disponível localizado à esquerda e esquerda inferior do bloco atual por um pixel adjacente imediatamente acima, excluindo o primeiro pixel adjacente e um pixel adjacente originalmente disponível. Em outras palavras, o meio de substituição 2420 executa um processo de substituir os terceiros pixels adjacentes não disponíveis em outros locais, excluindo o primeiro pixel adjacente em um local predeterminado, com um pixel imediatamente adjacente em uma direção predeterminada. Na operação 2640, o meio de execução de intrapredição 2430 executa intrapredição no bloco atual utilizando os pixels adjacentes originais e os pixels adjacentes substituídos de acordo com disponibilidade.[000248] substitution means 2420 according to another embodiment determines availability of a first adjacent pixel located in the upper rightmost part of the current block, and if the first adjacent pixel is unavailable, determines an available adjacent pixel initially found as the second adjacent pixel by fetching top right and top right adjacent pixels from right to left based on the first adjacent pixel. If the second adjacent pixel is unavailable in the top and top right adjacent pixels, the substitution means 2420 determines an available adjacent pixel initially found as the second adjacent pixel by searching left and bottom left adjacent pixels from the top to the bottom. lower part. Next, the substitution means 2420 replaces a pixel value of the first adjacent pixel with a pixel value of the second adjacent pixel. Furthermore, the replacement means 2420 replaces at least one third adjacent unavailable pixel located at the top and upper right of the current block with an adjacent pixel immediately to the right, and replaces at least one third adjacent unavailable pixel located at the left and lower left. of the current block by an adjacent pixel immediately above, excluding the first adjacent pixel and an originally available adjacent pixel. In other words, the replacement means 2420 performs a process of replacing third adjacent pixels not available in other locations by deleting the first adjacent pixel at a predetermined location with an immediately adjacent pixel in a predetermined direction. In operation 2640, the intraprediction execution means 2430 performs intraprediction on the current block using the original adjacent pixels and the substituted adjacent pixels according to availability.

[000249] Como descrito acima, a complexidade de um processo de determinar um pixel de referência utilizado para intrapredição pode ser reduzida por buscar e substituir um pixel adjacente disponível, com base em uma direção de busca predeterminada com um pixel adjacente não disponível.[000249] As described above, the complexity of a process of determining a reference pixel used for intraprediction can be reduced by searching and replacing an available adjacent pixel, based on a predetermined search direction with an unavailable adjacent pixel.

[000250] Como programas para realizar o método interpredição descrito com referência às figuras 1 até 26 são armazenados na mídia de gravação legível em computador, um sistema de computador independente pode facilmente realizar operações de acordo com os programas armazenados na mídia de gravação legível em computador.[000250] As programs for carrying out the interprediction method described with reference to Figures 1 to 26 are stored on the computer-readable recording medium, an independent computer system can easily perform operations in accordance with the programs stored on the computer-readable recording medium .

[000251] Um meio de gravação legível em computação armazenando um programa, por exemplo, um disco 26000, de acordo com uma modalidade da presente invenção será descrito agora em detalhe.[000251] A computer-readable recording medium storing a program, for example, a disk 26000, in accordance with an embodiment of the present invention will now be described in detail.

[000252] A figura 27A é um diagrama de uma estrutura física do disco 26000 no qual um programa é armazenado, de acordo com uma modalidade da presente invenção. O disco 26000, que é um meio de armazenagem, pode ser uma unidade rígida, um disco de memória somente de leitura de compact disc (CD-ROM), um disco Blu-ray, ou um digital versatile disc (DVD). O disco 26000 inclui uma pluralidade de trilhas concentrics Tr que são individualmente divididas em um número específico de setores Se em uma direção circunferencial do disco 26000. Em uma região específica do disco 26000, um programa que executa o método interpredição descrito acima pode ser atribuído e armazenado.[000252] Figure 27A is a diagram of a physical structure of disk 26000 on which a program is stored, in accordance with an embodiment of the present invention. Disc 26000, which is a storage medium, may be a hard drive, a compact disc read-only memory disc (CD-ROM), a Blu-ray disc, or a digital versatile disc (DVD). Disk 26000 includes a plurality of concentric tracks Tr that are individually divided into a specific number of Se sectors in a circumferential direction of disk 26000. In a specific region of disk 26000, a program that performs the interprediction method described above may be assigned and stored.

[000253] Um sistema de computador incorporado utilizando um meio de armazenagem que armazena um programa para executar o método intrapredição como descrito acima será descrito agora com referência à figura 27B.[000253] An embedded computer system utilizing a storage medium that stores a program for performing the intraprediction method as described above will now be described with reference to Figure 27B.

[000254] A figura 27B é um diagrama de uma unidade de disco 26800 para gravar e ler um programa utilizando o disco 26000. Um sistema de computador 27000 pode armazenar um programa que executa um método intrapredição de acordo com uma modalidade da presente invenção, no disco 26000 através da unidade de disco 26800. Para rodar o programa armazenado no disco 26000 no sistema de computador 27000, o programa pode ser lido a partir do disco 26000 e ser transmitido para o sistema de computador 26700 utilizando a unidade de disco 27000.[000254] Figure 27B is a diagram of a disk drive 26800 for writing and reading a program using disk 26000. A computer system 27000 can store a program that performs an intraprediction method in accordance with an embodiment of the present invention, in the disk 26000 via disk drive 26800. To run the program stored on disk 26000 on computer system 27000, the program can be read from disk 26000 and transmitted to computer system 26700 using disk drive 27000.

[000255] programa que executa um método intrapredição de acordo com uma modalidade da presente invenção pode ser armazenado não somente no disco 26000 ilustrado na figura 27A ou 27B porém também em um cartão de memória, um cassete ROM, ou uma unidade de estado sólido (SSD).[000255] program that performs an intraprediction method according to an embodiment of the present invention can be stored not only on the disk 26000 illustrated in Figure 27A or 27B but also on a memory card, a ROM cassette, or a solid state drive ( SSD).

[000256] Um sistema ao qual o método intrapredição descrito acima é aplicado será descrito abaixo.[000256] A system to which the intraprediction method described above is applied will be described below.

[000257] A figura 28 é um diagrama de uma estrutura geral de um sistema de fornecimento de conteúdo 11000 para fornecer um serviço de distribuição de conteúdo. Uma área de serviço de um sistema de comunicação é dividida em células de tamanho predeterminado, e estações base sem fio 11700, 11800, 11900 e 12000 são instaladas nessas células, respectivamente.[000257] Figure 28 is a diagram of a general structure of a content delivery system 11000 for providing a content distribution service. A service area of a communication system is divided into cells of predetermined size, and wireless base stations 11700, 11800, 11900 and 12000 are installed in these cells, respectively.

[000258] sistema de fornecimento de conteúdo 11000 inclui uma pluralidade de dispositivos independentes. Por exemplo, a pluralidade de dispositivos independentes, como um computador 12100, um assistente pessoal digital (PDA) 12200, uma câmera de vídeo 12300, e um telefone celular 12500, são conectados à internet 11100 através de um provedor de serviço de Internet 11200, uma rede de comunicação 11400, e as estações base sem fio 11700, 11800, 11900, e 12000.[000258] content delivery system 11000 includes a plurality of independent devices. For example, the plurality of independent devices, such as a computer 12100, a personal digital assistant (PDA) 12200, a video camera 12300, and a cell phone 12500, are connected to the Internet 11100 through an Internet service provider 11200, a communication network 11400, and wireless base stations 11700, 11800, 11900, and 12000.

[000259] Entretanto, o sistema de fornecimento de conteúdo 11000 não é limitado como ilustrado na figura 28, e dispositivos podem ser seletivamente conectados ao mesmo. A pluralidade de dispositivos independentes pode ser diretamente conectada a rede de comunicação 11400, não através das estações base sem fio 11700, 11800, 11900 e 12000.[000259] However, the content delivery system 11000 is not limited as illustrated in Figure 28, and devices can be selectively connected to it. The plurality of independent devices may be directly connected to the communication network 11400, not through the wireless base stations 11700, 11800, 11900 and 12000.

[000260] A câmera de vídeo 12300 é um dispositivo de imageamento, por exemplo, uma câmera de vídeo digital, que é capaz de capturar imagens de vídeo. O telefone celular 12500 pode empregar pelo menos um método de comunicação entre vários protocolos, por exemplo, Comunicações digitais pessoais (PDC), Acesso múltiplo por divisão de código (CDMA), Acesso múltiplo por divisão de código de banda larga (W-CDMA), Sistema global para comunicações móveis (GSM), e Sistema de Handyphone pessoal (PHS).[000260] Video camera 12300 is an imaging device, e.g., a digital video camera, that is capable of capturing video images. The cellular telephone 12500 may employ at least one communication method between multiple protocols, e.g., Personal Digital Communications (PDC), Code Division Multiple Access (CDMA), Wideband Code Division Multiple Access (W-CDMA) , Global System for Mobile Communications (GSM), and Personal Handyphone System (PHS).

[000261] A câmera de vídeo 12300 pode ser conectada a um servidor de streaming 11300 através da estação base sem fio 11900 e a rede de comunicação 11400. O servidor de streaming 11300 permite que conteúdo recebido de um usuário através da câmera de vídeo 12300 seja streamed através de um broadcast em tempo real. O conteúdo recebido a partir da câmera de vídeo 12300 pode ser codificado utilizando a câmera de vídeo 12300 ou o servidor de streaming 1130. Dados de vídeo capturados pela câmera de vídeo 12300 podem ser transmitidos para o servidor de streaming 1130 via computador 12100.[000261] The video camera 12300 can be connected to a streaming server 11300 via the wireless base station 11900 and the communication network 11400. The streaming server 11300 allows content received from a user via the video camera 12300 to be streamed through a real-time broadcast. Content received from the video camera 12300 may be encoded using the video camera 12300 or the streaming server 1130. Video data captured by the video camera 12300 may be transmitted to the streaming server 1130 via computer 12100.

[000262] Dados de vídeo capturados por uma câmera 12600 também podem ser transmitidos para o servidor de streaming 1130 através do computador 12100. A câmera 12600 é um dispositivo de imageamento capaz de capturar tanto imagens fixas como imagens de vídeo, similares a uma câmera digital. Os dados de vídeo capturados pela câmera 12600 podem ser codificados utilizando a câmera 12600 ou o computador 12100. Software que executa codificação e decodificação de vídeo pode ser armazenado em um meio de gravação legível em computador, por exemplo, um disco de CD-ROM, um disco flexível, uma unidade de disco rígido, um SSD, ou um cartão de memória, que podem ser acessíveis pelo computador 12100.[000262] Video data captured by a camera 12600 may also be transmitted to the streaming server 1130 via the computer 12100. The camera 12600 is an imaging device capable of capturing both still images and video images, similar to a digital camera . Video data captured by camera 12600 may be encoded using camera 12600 or computer 12100. Software that performs video encoding and decoding may be stored on a computer-readable recording medium, e.g., a CD-ROM disk, a floppy disk, a hard disk drive, an SSD, or a memory card, which may be accessible by the computer 12100.

[000263] Se dados de vídeo forem capturados por uma câmera construída no telefone celular 12500, os dados de vídeo podem ser recebidos a partir do telefone celular 12500.[000263] If video data is captured by a camera built into the cell phone 12500, the video data can be received from the cell phone 12500.

[000264] Os dados de vídeo também podem ser codificados por um sistema de circuito integrado de escala grande (LSI) instalado na câmera de vídeo 12300, telefone celular 12500 ou câmera 12600.[000264] Video data may also be encoded by a large-scale integrated circuit (LSI) system installed in the video camera 12300, cell phone 12500, or camera 12600.

[000265] sistema de fornecimento de conteúdo 11000 pode codificar dados de conteúdo gravados por um usuário utilizando a câmera de vídeo 12300, a câmera 12600, o telefone celular 12500, ou outro dispositivo de imageamento, por exemplo, conteúdo gravado durante um concerto, e transmitir os dados de conteúdo codificado para o servidor de streaming 11300. O servidor de streaming 11300 pode transmitir os dados de conteúdo codificados em um tipo de um conteúdo de streaming para outros clientes que solicitam os dados de conteúdo.[000265] content delivery system 11000 may encode content data recorded by a user using the video camera 12300, the camera 12600, the cell phone 12500, or other imaging device, e.g., content recorded during a concert, and transmit the encoded content data to the streaming server 11300. The streaming server 11300 may transmit the content data encoded in a type of a streaming content to other clients requesting the content data.

[000266] Os clientes são dispositivos capazes de decodificar os dados de conteúdo codificados, por exemplo, o computador 12100, o PDA 12200, a câmera de vídeo 12300, ou o telefone celular 12500. Desse modo, o sistema de fornecimento de conteúdo 11000 permite que os clientes receberam e reproduzam os dados de conteúdo codificados. Além disso, o sistema de fornecimento de conteúdo 11000 permite que os clientes recebam os dados de conteúdo codificado e decodifiquem e reproduzam os dados de conteúdo codificado em tempo real, desse modo habilitando broadcasting pessoal.[000266] Clients are devices capable of decoding the encoded content data, e.g., the computer 12100, the PDA 12200, the video camera 12300, or the cell phone 12500. In this way, the content delivery system 11000 allows that clients have received and reproduce the encoded content data. Additionally, the content delivery system 11000 allows clients to receive the encoded content data and decode and reproduce the encoded content data in real time, thereby enabling personal broadcasting.

[000267] As operações de codificação e decodificação da pluralidade de dispositivos independentes incluídos no sistema de fornecimento de conteúdo 11000 podem ser similares a um método intrapredição de acordo com uma modalidade da presente invenção.[000267] The encoding and decoding operations of the plurality of independent devices included in the content delivery system 11000 may be similar to an intraprediction method in accordance with an embodiment of the present invention.

[000268] telefone celular 12500 incluído no sistema de fornecimento de conteúdo 11000 de acordo com uma modalidade da presente invenção será descrito agora em maior detalhe com referência às figuras 29 e 30.[000268] cellular telephone 12500 included in the content delivery system 11000 according to an embodiment of the present invention will now be described in greater detail with reference to figures 29 and 30.

[000269] A figura 29 ilustra uma estrutura externa do telefone celular 12500 ao qual um método intrapredição é aplicado, de acordo com uma modalidade da presente invenção. O telefone celular 12500 pode ser um smart phone, cujas funções não são limitadas e um número grande das funções do qual pode ser alterada ou expandida.[000269] Figure 29 illustrates an external structure of the cell phone 12500 to which an intraprediction method is applied, in accordance with an embodiment of the present invention. The cell phone 12500 may be a smart phone, the functions of which are not limited and a large number of the functions of which can be changed or expanded.

[000270] telefone móvel 12500 inclui uma antena interna 12510 através da qual um sinal de radiofrequência (RF) pode ser permutado com a estação base sem fio 12000 da figura 21, e inclui uma tela de exibição 12520 para exibir imagens capturadas por uma câmera 12530 ou imagens que são recebidas através da antena 12510 e decodificadas, por exemplo, um display de cristal líquido (LCD) ou uma tela de diodo de emissão de luz orgânico (OLED). O telefone celular 12500 inclui um painel de operações 12540 que inclui um botão de controle e um painel de toque. Se a tela de exibição 12520 for uma tela de toque, o painel de operação 12540 inclui ainda um painel de sentir toque da tela de exibição 12520. O telefone celular 12500 inclui um alto-falante 12580 para transmitir voz e som ou outro tipo de unidade de entrada de som. O telefone celular 12500 inclui ainda a câmera 12530, como uma câmera de dispositivo acoplado de carga (CCD), para capturar imagens fixas e vídeo. O telefone celular 12500 pode incluir ainda um meio de armazenagem 12570 para armazenar dados codificados/decodificados, por exemplo, imagens fixas ou de vídeo capturadas pela câmera 12530, recebidas via e-mail, ou obtidas de acordo com vários modos; e uma partição 12560 através da qual o meio de armazenagem 12570 é carregado no telefone celular 12500. O meio de armazenagem 12570 pode ser uma memória flash, por exemplo, um cartão digital seguro (SD) ou uma memória somente de leitura programável e eletricamente apagável (EEPROM) incluída em um estojo de plástico.[000270] mobile phone 12500 includes an internal antenna 12510 through which a radio frequency (RF) signal can be exchanged with the wireless base station 12000 of Figure 21, and includes a display screen 12520 for displaying images captured by a camera 12530 or images that are received through the antenna 12510 and decoded, for example, a liquid crystal display (LCD) or an organic light emitting diode (OLED) screen. The cellular telephone 12500 includes an operations panel 12540 that includes a control button and a touch panel. If the display screen 12520 is a touch screen, the operation panel 12540 further includes a touch panel of the display screen 12520. The cell phone 12500 includes a speaker 12580 for transmitting voice and sound or other type of unit sound input. The cell phone 12500 further includes the camera 12530, as a charge-coupled device (CCD) camera, for capturing still images and video. The cellular telephone 12500 may further include a storage medium 12570 for storing encoded/decoded data, e.g., still or video images captured by camera 12530, received via e-mail, or obtained in accordance with various modes; and a partition 12560 through which the storage medium 12570 is loaded into the cell phone 12500. The storage medium 12570 may be a flash memory, e.g., a secure digital (SD) card or an electrically erasable programmable read-only memory. (EEPROM) included in a plastic case.

[000271] A figura 30 ilustra uma estrutura interna do telefone celular 12500, de acordo com uma modalidade da presente invenção. Para controlar sistemicamente partes do telefone celular 12500 incluindo a tela de exibição 12520 e o painel de operação 12540, um circuito de fornecimento de energia 12700, um controlador de entrada de operação 12640, uma unidade de codificação de imagem 12720, uma interface de câmera 12630, um controlador LCD 12620, uma unidade de decodificação de imagem 12690, um multiplexor/demultiplexor 12680, uma unidade de gravação/leitura 12670, uma unidade de modulação/demodulação 12660, e um processador de som 12650 são conectados a um controlador central 12710 através de um barramento de sincronização 12730.[000271] Figure 30 illustrates an internal structure of the cell phone 12500, according to an embodiment of the present invention. To systemically control portions of the cellular telephone 12500 including the display screen 12520 and the operation panel 12540, a power supply circuit 12700, an operation input controller 12640, an image coding unit 12720, a camera interface 12630 , an LCD controller 12620, an image decoding unit 12690, a multiplexor/demultiplexer 12680, a write/read unit 12670, a modulation/demodulation unit 12660, and a sound processor 12650 are connected to a central controller 12710 through of a 12730 sync bus.

[000272] Se um usuário opera um botão de energia e define de um estado de energia desligada para um estado de energia ligada, o circuito de fornecimento de energia 12700 fornece energia para todas as partes do telefone celular 12500 a partir de uma bateria, desse modo ajustando o telefone celular 12500 em um modo de operação.[000272] If a user operates a power button and sets it from a power-off state to a power-on state, the power supply circuit 12700 provides power to all parts of the cell phone 12500 from a battery, thereby mode by setting the cell phone 12500 into an operating mode.

[000273] controlador central 12710 inclui uma unidade de processamento central (CPU), uma ROM e uma RAM.[000273] central controller 12710 includes a central processing unit (CPU), a ROM, and a RAM.

[000274] Embora o telefone celular 12500 transmita dados de comunicação para o exterior, um sinal digital é gerado pelo telefone celular 12500 sob controle do controlador central 12710. Por exemplo, o processador de som 12650 pode gerar um sinal de som digital, a unidade de codificação de imagem 12720 pode gerar um sinal de imagem digital, e dados de texto de uma mensagem podem ser gerados através do painel de operação 12540 e o controlador de entrada de operação 12640. Quando um sinal digital é transmitido para a unidade de modulação/demodulação 12660 sob controle do controlador central 12710, a unidade de modulação/demodulação 12660 modula uma faixa de frequência do sinal digital, e um circuito de comunicação 12610 executa conversão digital em analógico (DAC) e conversão de frequência no sinal de som digital modulado em faixa de frequência. Um sinal de transmissão transmitida a partir do circuito de comunicação 12610 pode ser transmitido para uma estação base de comunicação de voz ou a estação base sem fio 12000 através da antena 12510.[000274] Although the cell phone 12500 transmits communication data to the outside, a digital signal is generated by the cell phone 12500 under control of the central controller 12710. For example, the sound processor 12650 can generate a digital sound signal, the unit image coding unit 12720 can generate a digital image signal, and text data of a message can be generated through the operation panel 12540 and the operation input controller 12640. When a digital signal is transmitted to the modulation unit/ demodulation 12660 under control of the central controller 12710, the modulation/demodulation unit 12660 modulates a frequency range of the digital signal, and a communication circuit 12610 performs digital-to-analog conversion (DAC) and frequency conversion on the modulated digital sound signal. frequency range. A broadcast signal transmitted from the communication circuit 12610 may be transmitted to a voice communication base station or the wireless base station 12000 via the antenna 12510.

[000275] Por exemplo, quando o telefone celular 12500 está em um modo de conversão, um sinal de som obtido através do microfone 12550 é transformado em um sinal de som digital pelo processador de som 12650, sob controle do controlador central 12710. O sinal de som digital pode ser transformado em um sinal de transformação através da unidade de modulação/demodulação 12660 e o circuito de comunicação 12610, e pode ser transmitido através da antena 12510.[000275] For example, when the cell phone 12500 is in a conversion mode, a sound signal obtained through the microphone 12550 is transformed into a digital sound signal by the sound processor 12650, under control of the central controller 12710. The signal digital sound can be transformed into a transformation signal through the modulation/demodulation unit 12660 and the communication circuit 12610, and can be transmitted through the antenna 12510.

[000276] Quando uma mensagem de texto, por exemplo, e-mail, é transmitida em um modo de comunicação de dados, dados de texto da mensagem de texto são entrados através do painel de operação 12540 e são transmitidos para o controlador central 12610 através do controlador de entrada de operação 12640. Sob controle do controlador central 12610, os dados de texto são transformados em um sinal de transmissão através da unidade de modulação/demodulação 12660 e o circuito de comunicação 12610 e é transmitido para a estação base sem fio 12000 através da antena 12510.[000276] When a text message, for example e-mail, is transmitted in a data communication mode, text data of the text message is input through the operation panel 12540 and is transmitted to the central controller 12610 through of the operation input controller 12640. Under control of the central controller 12610, the text data is transformed into a transmission signal through the modulation/demodulation unit 12660 and the communication circuit 12610 and is transmitted to the wireless base station 12000 through antenna 12510.

[000277] Para transmitir dados de imagem no modo de comunicação de dados, dados de imagem capturados pela câmera 12530 são fornecidos para a unidade de codificação de imagem 12720 através da interface de câmera 12630. Os dados de imagem capturados podem ser diretamente exibidos na tela de exibição 12520 através da interface de câmera 12630 e o controlador LCD 12620.[000277] To transmit image data in data communication mode, image data captured by camera 12530 is provided to image coding unit 12720 through camera interface 12630. The captured image data can be directly displayed on the screen of display 12520 through the camera interface 12630 and the LCD controller 12620.

[000278] Uma estrutura da unidade de codificação de imagem 12720 pode corresponder àquela do aparelho de codificação de vídeo 100 descrito acima. A unidade de codificação de imagem 12720 pode transformar os dados de imagem recebidos a partir da câmera 12530 em dados de imagem comprimidos e codificados de acordo com um método de codificação de vídeo empregado pelo aparelho de codificação de vídeo 100 ou o codificador de imagem 400 descrito acima, e então transmitir os dados de imagem codificados para o multiplexor/demultiplexor 12680. Durante uma operação de gravação da câmera 12530, um sinal de som obtido pelo microfone 12550 do telefone celular 12500 pode ser transformado em dados de som digitais através do processador de som 12650, e os dados de som digitais podem ser transmitidos para o multiplexor/demultiplexor 12680.[000278] A structure of the image coding unit 12720 may correspond to that of the video coding apparatus 100 described above. The image coding unit 12720 may transform the image data received from the camera 12530 into compressed image data encoded in accordance with a video coding method employed by the video coding apparatus 100 or the image encoder 400 described. above, and then transmit the encoded image data to the multiplexor/demultiplexor 12680. During a recording operation of the camera 12530, a sound signal obtained by the microphone 12550 of the cell phone 12500 can be transformed into digital sound data through the image processor. sound 12650, and digital sound data can be transmitted to the multiplexor/demultiplexor 12680.

[000279] multiplexor/demultiplexor 12680 multiplexa os dados de imagem codificados recebidos a partir da unidade de codificação de imagem 12720, juntamente com os dados de som recebidos do processador de som 12650. Um resultado de multiplexar os dados pode ser transformado em um sinal de transmissão através da unidade de modulação/demodulação 12660 e o circuito de comunicação 12610, e pode ser então transmitido através da antena 12510.[000279] multiplexor/demultiplexor 12680 multiplexes the encoded image data received from the image coding unit 12720 together with the sound data received from the sound processor 12650. A result of multiplexing the data can be transformed into a signal transmission through the modulation/demodulation unit 12660 and the communication circuit 12610, and can then be transmitted through the antenna 12510.

[000280] Embora o telefone celular 12500 receba dados de comunicação a partir do exterior, recuperação de frequência e ADC são realizadas em um sinal recebido através da antena 12510 para transformar o sinal em um sinal digital. A unidade de modulação/demodulação 12660 modula uma faixa de frequência do sinal digital. O sinal digital modulado em faixa de frequência é transmitido para a unidade de decodificação de vídeo 12690, o processador de som 12650, ou o controlador LCD 12620, de acordo com o tipo do sinal digital.[000280] Although the cell phone 12500 receives communication data from outside, frequency recovery and ADC are performed on a signal received through the antenna 12510 to transform the signal into a digital signal. The 12660 modulation/demodulation unit modulates a frequency range of the digital signal. The frequency range modulated digital signal is transmitted to the video decoding unit 12690, the sound processor 12650, or the LCD controller 12620, according to the type of the digital signal.

[000281] No modo de conversação, o telefone celular 12500 amplifica um sinal recebido através da antena 12510, e obtém um sinal de som digital por executar conversão de frequência e ADC no sinal amplificado. Um sinal de som digital recebido é transformado em um sinal de som analógico através da unidade de modulação/demodulação 12660 e o processador de som 12650, e o sinal de som analógico é transmitido através do alto-falante 12580, sob controle do controlador central 12710.[000281] In conversation mode, the cell phone 12500 amplifies a signal received through the antenna 12510, and obtains a digital sound signal by performing frequency conversion and ADC on the amplified signal. A received digital sound signal is transformed into an analog sound signal through the modulation/demodulation unit 12660 and the sound processor 12650, and the analog sound signal is transmitted through the speaker 12580 under control of the central controller 12710 .

[000282] Quando no modo de comunicação de dados, dados de um arquivo de vídeo acessado em um website de internet são recebidos, um sinal recebido a partir da estação base sem fio 12000 através da antena 12510 é transmitido como dados multiplexados através da unidade de modulação/demodulação 12660, e os dados multiplexados são transmitidos para o multiplexor/demultiplexor 12680.[000282] When in data communication mode, data from a video file accessed on an internet website is received, a signal received from the wireless base station 12000 through the antenna 12510 is transmitted as multiplexed data through the wireless base station 12000 modulation/demodulation 12660, and the multiplexed data is transmitted to the multiplexor/demultiplexor 12680.

[000283] Para decodificar os dados multiplexados recebidos através da antena 12510, o multiplexor/demultiplexor 12680 demultiplexa os dados multiplexados para um fluxo de dados de vídeo codificado e um fluxo de dados de áudio codificado. Através do barramento de sincronização 12730, o fluxo de dados de vídeo codificado e o fluxo de dados de áudio codificado são fornecidos para a unidade de decodificação de vídeo 12690 e processador de som 12650, respectivamente.[000283] To decode the multiplexed data received through the antenna 12510, the multiplexor/demultiplexer 12680 demultiplexes the multiplexed data into a coded video data stream and a coded audio data stream. Through the synchronization bus 12730, the encoded video data stream and the encoded audio data stream are provided to the video decoding unit 12690 and sound processor 12650, respectively.

[000284] Uma estrutura da unidade de decodificação de imagem 12690 pode corresponder àquela do aparelho de decodificação de vídeo 200 descrito acima. A unidade de decodificação de imagem 12690 pode decodificar os dados de vídeo codificados para obter dados de vídeo recuperados e fornecer os dados de vídeo recuperados para a tela de exibição 12520 através do controlador LCD 12620, de acordo com um método de decodificação de vídeo empregado pelo aparelho de decodificação de vídeo 200 ou decodificador de imagem 500 descrito acima.[000284] A structure of the image decoding unit 12690 may correspond to that of the video decoding apparatus 200 described above. The image decoding unit 12690 may decode the encoded video data to obtain recovered video data and provide the recovered video data to the display screen 12520 through the LCD controller 12620 in accordance with a video decoding method employed by the video decoding apparatus 200 or image decoder 500 described above.

[000285] Desse modo, os dados do arquivo de vídeo acessado na website de internet podem ser exibidos na tela de exibição 12520. Ao mesmo tempo, o processador de som 12650 pode transformar dados de áudio em um sinal de som analógico e fornece o sinal de som analógico para o alto-falante 12580. Desse modo, dados de áudio contidos no arquivo de vídeo acessado na website de internet também podem ser reproduzidos através do alto-falante 12580.[000285] In this way, the video file data accessed on the internet website can be displayed on the display screen 12520. At the same time, the sound processor 12650 can transform audio data into an analog sound signal and provide the signal analog sound to the speaker 12580. In this way, audio data contained in the video file accessed on the website can also be played back through the speaker 12580.

[000286] telefone celular 12500 ou outro tipo de terminal de comunicação pode ser um terminal transceptor que inclui tanto um aparelho de codificação de vídeo como um aparelho de decodificação de vídeo de acordo com uma modalidade da presente invenção, pode ser um terminal transceptor incluindo somente o aparelho de codificação de vídeo, ou pode ser um terminal transceptor incluindo somente o aparelho de decodificação de vídeo.[000286] cellular telephone 12500 or other type of communication terminal may be a transceiver terminal that includes both a video encoding apparatus and a video decoding apparatus in accordance with an embodiment of the present invention, may be a transceiver terminal including only the video encoding apparatus, or it may be a transceiver terminal including only the video decoding apparatus.

[000287] Um sistema de comunicação de acordo com a presente invenção não é limitado ao sistema de comunicação descrito acima com referência à figura 28. Por exemplo, a figura 31 ilustra um sistema broadcasting digital que emprega um sistema de comunicação, de acordo com uma modalidade da presente invenção. O sistema de broadcasting digital da figura 31 pode receber um broadcast digital transmitido através de um satélite ou uma rede terrestre utilizando um aparelho de codificação de vídeo e um aparelho de decodificação de vídeo de acordo com uma modalidade da presente invenção.[000287] A communication system in accordance with the present invention is not limited to the communication system described above with reference to figure 28. For example, figure 31 illustrates a digital broadcasting system that employs a communication system, in accordance with a embodiment of the present invention. The digital broadcasting system of Figure 31 can receive a digital broadcast transmitted over a satellite or a terrestrial network using a video encoding apparatus and a video decoding apparatus in accordance with an embodiment of the present invention.

[000288] Especificamente, uma estação de broadcasting 12890 transmite um fluxo de dados de vídeo para um satélite de comunicação ou um satélite de broadcasting 12900 utilizando ondas de rádio. O satélite de broadcasting 12900 transmite um sinal de broadcast, e o sinal de broadcast é transmitido para um receptor de broadcast de satélite através de uma antena doméstica 12860. Em toda casa, um fluxo de vídeo codificado pode ser decodificado e reproduzido por um receptor de TV 12810, um conversor de sinais de frequência 12870 ou outro dispositivo.[000288] Specifically, a broadcasting station 12890 transmits a video data stream to a communications satellite or a broadcasting satellite 12900 using radio waves. The broadcasting satellite 12900 transmits a broadcast signal, and the broadcast signal is transmitted to a satellite broadcast receiver through a home antenna 12860. In every home, an encoded video stream can be decoded and played back by a broadcast receiver. TV 12810, a frequency converter 12870 or other device.

[000289] Quando um aparelho de decodificação de vídeo de acordo com uma modalidade da presente invenção é implementado em um aparelho de reprodução 12830, o aparelho de reprodução 12830 pode analisar e decodificar um fluxo de vídeo codificado gravado em um meio de armazenagem 12820, como um disco ou um cartão de memória para recuperar sinais digitais. Desse modo, o sinal de vídeo recuperado pode ser reproduzido, por exemplo, em um monitor 12840.[000289] When a video decoding apparatus in accordance with an embodiment of the present invention is implemented in a playback apparatus 12830, the playback apparatus 12830 can analyze and decode a coded video stream recorded on a storage medium 12820, such as a disk or a memory card to recover digital signals. In this way, the recovered video signal can be reproduced, for example, on a 12840 monitor.

[000290] No conversor de sinais de frequência 12870 conectado à antena 12860 para um broadcast terrestre/satélite ou uma antenna de cabo 12850 para receber um broadcast de televisão de cabo (TV), um aparelho de decodificação de vídeo de acordo com uma modalidade da presente invenção pode ser instalado. Dados transmitidos a partir do conversor de sinais de frequência 12870 também podem ser reproduzidos em um monitor de TV 12880.[000290] In the frequency signal converter 12870 connected to the antenna 12860 for a terrestrial/satellite broadcast or a cable antenna 12850 for receiving a cable television (TV) broadcast, a video decoding apparatus in accordance with an embodiment of the present invention can be installed. Data transmitted from the 12870 frequency converter can also be played back on a 12880 TV monitor.

[000291] Como outro exemplo, um aparelho de decodificação de vídeo de acordo com uma modalidade da presente invenção pode ser instalado no receptor de TV 12810 ao invés do conversor de sinais de frequência 12870.[000291] As another example, a video decoding apparatus according to an embodiment of the present invention can be installed in the TV receiver 12810 instead of the frequency signal converter 12870.

[000292] Um automóvel 12920 que tem uma antena apropriada 12910 pode receber um sinal transmitido a partir do satélite 12900 ou a estação base sem fio 11700 da figura 21. Um vídeo decodificado pode ser reproduzido em uma tela de exibição de um sistema de navegação de automóvel 12930 instalado no automóvel 12920.[000292] An automobile 12920 that has a suitable antenna 12910 can receive a signal transmitted from the satellite 12900 or the wireless base station 11700 of Figure 21. A decoded video can be played on a display screen of a navigation system. car 12930 installed on car 12920.

[000293] Um sinal de vídeo pode ser codificado por um aparelho de codificação de vídeo de acordo com uma modalidade da presente invenção e pode ser então armazenado em um meio de armazenagem. Especificamente, um sinal de imagem pode ser armazenado em um disco de DVD 12960 por um gravador de DVD ou pode ser armazenado em um disco rígido por um gravador de disco rígido 12950. Como outro exemplo, o sinal de vídeo pode ser armazenado em um cartão SD 12970. Se o gravador de disco rígido 12950 incluir um aparelho de decodificação de vídeo de acordo com uma modalidade da presente invenção, um sinal de vídeo gravado no disco de DVD 12960, o cartão SD 12970, ou outro meio de armazenagem pode ser reproduzido no monitor de TV 12880.[000293] A video signal can be encoded by a video coding apparatus in accordance with an embodiment of the present invention and can then be stored on a storage medium. Specifically, an image signal may be stored on a DVD disc 12960 by a DVD recorder or may be stored on a hard disk by a hard disk recorder 12950. As another example, the video signal may be stored on a card SD 12970. If the hard disk recorder 12950 includes a video decoding apparatus in accordance with an embodiment of the present invention, a video signal recorded on the DVD disc 12960, the SD card 12970, or other storage medium can be played back on the 12880 TV monitor.

[000294] sistema de navegação de automóvel 12930 pode não incluir a câmera 12530, a interface de câmera 12630, e a unidade de codificação de imagem 12720 da figura 30. Por exemplo, o computador 12100 e o receptor de TV 12810 podem não ser incluídos na câmera 12530, a interface de câmera 12630, e uma unidade de codificação de imagem 12720 da figura 30.[000294] automobile navigation system 12930 may not include the camera 12530, the camera interface 12630, and the image coding unit 12720 of Figure 30. For example, the computer 12100 and the TV receiver 12810 may not be included in camera 12530, camera interface 12630, and an image coding unit 12720 of Figure 30.

[000295] A figura 32 é um diagrama que ilustra uma estrutura de rede de um sistema de computação de nuvem utilizando um aparelho de codificação de vídeo e um aparelho de decodificação de vídeo, de acordo com uma modalidade da presente invenção.[000295] Figure 32 is a diagram illustrating a network structure of a cloud computing system using a video encoding apparatus and a video decoding apparatus, in accordance with an embodiment of the present invention.

[000296] sistema de computação de nuvem pode incluir um servidor de computação de nuvem 14000, um banco de dados de usuário (DB) 14100, uma pluralidade de recursos de computação 14200, e um terminal de usuário.[000296] cloud computing system may include a cloud computing server 14000, a user database (DB) 14100, a plurality of computing resources 14200, and a user terminal.

[000297] sistema de computação de nuvem provê um serviço de outsourcing em demanda da pluralidade de recursos de computação 14200 através de uma rede de comunicação de dados, por exemplo, Internet, em resposta a uma solicitação a partir do terminal de usuário. Sob um ambiente de computação de nuvem, um provedor de serviço provê aos usuários serviços desejados por combinar recursos de computação em centros de dados localizados em locais fisicamente diferentes utilizando tecnologia de virtualização. Um usuário de serviço não tem de instalar recursos de computação, por exemplo, um aplicativo, uma armazenagem, um sistema operacional (OS) e segurança, em seu próprio terminal para utilizar os mesmos, porém pode selecionar e utilizar serviços desejados entre serviços em um espaço virtual gerado através da tecnologia de virtualização, em um ponto desejado em tempo.[000297] cloud computing system provides an on-demand outsourcing service of the plurality of computing resources 14200 over a data communication network, e.g., Internet, in response to a request from the user terminal. Under a cloud computing environment, a service provider provides users with desired services by combining computing resources in data centers located in physically different locations using virtualization technology. A service user does not have to install computing resources, for example, an application, storage, operating system (OS), and security, on his own terminal to use them, but can select and use desired services among services on a virtual space generated through virtualization technology, at a desired point in time.

[000298] Um terminal de usuário de um usuário de serviço especificado é conectado ao servidor de computação de nuvem 14000 através de uma rede de comunicação de dados incluindo a Internet e uma rede de telecomunicação móvel. Terminais de usuário podem ser fornecido serviços de computação de nuvem, e particularmente serviços de reprodução de vídeo, a partir do servidor de computação de nuvem 14000. Os terminais de usuário podem ser vários tipos de dispositivos eletrônicos capazes de serem conectados a internet, por exemplo, um PC de mesa 14300, uma TV smart 14400, um smart phone 14500, um computador de notebook 14600, um tocador de multimídia portátil (MPM) 14700, um PC tablet 14800 e similar.[000298] A user terminal of a specified service user is connected to the cloud computing server 14000 via a data communication network including the Internet and a mobile telecommunications network. User terminals may be provided with cloud computing services, and particularly video playback services, from the cloud computing server 14000. The user terminals may be various types of electronic devices capable of being connected to the Internet, e.g. , a desktop PC 14300, a smart TV 14400, a smart phone 14500, a notebook computer 14600, a portable multimedia player (MPM) 14700, a tablet PC 14800 and the like.

[000299] servidor de computação de nuvem 14000 pode combinar a pluralidade de recursos de computação 14200 distribuída em uma rede de nuvem e fornecer aos terminais de usuário um resultado de combinação. A pluralidade de recursos de computação 14200 pode incluir vários serviços de dados, e pode incluir dados uploaded a partir de terminais de usuário. Como descrito acima, o servidor de computação de nuvem 14000 pode fornecer aos terminais de usuário serviços desejados por combinar banco de dados de vídeo distribuído em regiões diferentes de acordo com a tecnologia de virtualização.[000299] cloud computing server 14000 can combine the plurality of computing resources 14200 distributed in a cloud network and provide user terminals with a combination result. The plurality of computing resources 14200 may include various data services, and may include data uploaded from user terminals. As described above, the cloud computing server 14000 can provide user terminals with desired services by combining video database distributed in different regions according to virtualization technology.

[000300] Informações de usuário sobre usuários que subscreveram para um serviço de computação de nuvem são armazenadas no DB de usuário 14100. As informações de usuário podem incluir registrar informações, endereços, nomes e informações de crédito pessoal dos usuários. As informações de usuário podem incluir ainda índices de vídeos. Aqui, os índices podem incluir uma lista de vídeos que já foram reproduzidos, uma lista de vídeos que estão sendo reproduzidos, um ponto de pausar de um vídeo que estava sendo reproduzido, e similar.[000300] User information about users who have subscribed to a cloud computing service is stored in user DB 14100. The user information may include recording information, addresses, names, and personal credit information of users. User information may also include video indexes. Here, the indexes may include a list of videos that have already been played, a list of videos that are currently playing, a pause point for a video that was playing, and the like.

[000301] Informações sobre um vídeo armazenado no DB de usuário 14100 podem ser compartilhadas entre dispositivos de usuário. Por exemplo, quando um serviço de vídeo é fornecido ao computador de notebook 14600 em resposta a uma solicitação a partir do computador de notebook 14600, um histórico de reprodução do serviço de vídeo é armazenado no DB de usuário 14100. Quando uma solicitação para reproduzir esse serviço de vídeo é recebida a partir do smart phone 14500, o servidor de computação de nuvem 14000 busca e reproduz esse serviço de vídeo, com base no DB de usuário 14100. Quando o smart phone 14500 recebe um fluxo de dados de vídeo a partir do servidor de computação de nuvem 14000, um processo de reproduzir vídeo por decodificar o fluxo de dados de vídeo é similar a uma operação do telefone celular 12500 descrito acima com referência à figura 30.[000301] Information about a video stored in user DB 14100 can be shared between user devices. For example, when a video service is provided to notebook computer 14600 in response to a request from notebook computer 14600, a playback history of the video service is stored in user DB 14100. When a request to play this video service is received from the smart phone 14500, the cloud computing server 14000 fetches and plays that video service, based on the user DB 14100. When the smart phone 14500 receives a stream of video data from the cloud computing server 14000, a process of playing video by decoding the video data stream is similar to an operation of the cell phone 12500 described above with reference to Figure 30.

[000302] servidor de computação de nuvem 14000 pode se referir a um histórico de reprodução de um serviço de vídeo desejado, armazenado no DB de usuário 14100. Por exemplo, o servidor de computação de nuvem 14000 recebe uma solicitação para reproduzir um vídeo armazenado no DB de usuário 14100, a partir de um terminal de usuário. Se esse vídeo estava sendo reproduzido, então um método de streaming esse vídeo, executado pelo servidor de computação de nuvem 14000, pode variar de acordo com a solicitação a partir do terminal de usuário, isto é, de acordo com se o vídeo será reproduzido, começando a partir de um início do mesmo ou um ponto de pausar do mesmo. Por exemplo, se o terminal de usuário solicitar reproduzir o vídeo, começando a partir do início do mesmo, o servidor de computação de nuvem 14000 transmite dados de streaming do vídeo começando a partir de um primeiro quadro do mesmo para o terminal de usuário. Se o terminal de usuário solicitar reproduzir o vídeo, começando a partir do ponto de pausar do mesmo, o servidor de computação de nuvem 14000 transmite dados de streaming do vídeo começando a partir de um quadro que corresponde ao ponto de pausar, para o terminal de usuário.[000302] cloud computing server 14000 may refer to a playback history of a desired video service stored in user DB 14100. For example, cloud computing server 14000 receives a request to play a video stored in User DB 14100, from a user terminal. If that video was being played, then a method of streaming that video, executed by the cloud computing server 14000, may vary according to the request from the user terminal, that is, according to whether the video will be played, starting from a start of it or a pause point of it. For example, if the user terminal requests to play the video starting from the beginning thereof, the cloud computing server 14000 transmits streaming data of the video starting from a first frame thereof to the user terminal. If the user terminal requests to play the video, starting from the pause point of the video, the cloud computing server 14000 transmits streaming data of the video starting from a frame corresponding to the pause point, to the user terminal. user.

[000303] Nesse caso, o terminal de usuário pode incluir um aparelho de decodificação de vídeo como descrito acima. Como outro exemplo, o terminal de usuário pode incluir um aparelho de codificação de vídeo, como descrito acima. Alternativamente, o terminal de usuário pode incluir tanto o aparelho de decodificação de vídeo como o aparelho de codificação de vídeo como descrito acima.[000303] In this case, the user terminal may include a video decoding apparatus as described above. As another example, the user terminal may include a video encoding apparatus as described above. Alternatively, the user terminal may include both video decoding apparatus and video encoding apparatus as described above.

[000304] Várias aplicações de um método de codificação de vídeo,um método de decodificação de vídeo, um aparelho de codificação de vídeo, e um aparelho de decodificação de vídeo de acordo com modalidades da presente invenção descritas acima foram descritas acima com referência às figuras 27A a 32. Entretanto, métodos de armazenar o método de codificação de vídeo e o método de decodificação de vídeo em um meio de armazenagem ou métodos de implementar o aparelho de codificação de vídeo e o aparelho de decodificação de vídeo em um dispositivo, de acordo com várias modalidades da presente invenção, não são limitadas as modalidades descritas acima com referência ás figuras 27A a 32.[000304] Various applications of a video coding method, a video decoding method, a video coding apparatus, and a video decoding apparatus in accordance with embodiments of the present invention described above have been described above with reference to the figures 27A to 32. However, methods of storing the video encoding method and the video decoding method on a storage medium or methods of implementing the video encoding apparatus and the video decoding apparatus on a device, in accordance with With various embodiments of the present invention, the embodiments described above with reference to Figures 27A to 32 are not limited.

[000305] De acordo com uma ou mais modalidades da presente invenção, a complexidade de um processo de determinar um pixel de referência utilizado para intrapredição pode ser reduzida por buscar e substituir um pixel adjacente disponível, com base em uma direção de busca predeterminada, com um pixel adjacente não disponível.[000305] According to one or more embodiments of the present invention, the complexity of a process of determining a reference pixel used for intraprediction can be reduced by searching and replacing an available adjacent pixel, based on a predetermined search direction, with an adjacent pixel is unavailable.

[000306] Embora a presente invenção tenha sido particularmente mostarda e descrita com referência a modalidades exemplares da mesma, será entendida por aqueles de conhecimentos comuns na técnica que várias alterações em forma e detalhes podem ser feitas na mesma sem se afastar do espírito e escopo da presente invenção como definido pelas seguintes reivindicações.[000306] Although the present invention has been particularly well described and described with reference to exemplary embodiments thereof, it will be understood by those of ordinary skill in the art that various changes in form and details may be made therein without departing from the spirit and scope of the invention. present invention as defined by the following claims.

Claims (1)

1. MÉTODO DE INTRAPREDIÇÃO DE UM VÍDEO, o método caracterizado por compreender: determinar (2610) disponibilidade de um número predeterminado de pixels adjacentes utilizados para intrapredição de um bloco atual possuindo um tamanho de nTxnT, onde nT é um inteiro; quando todo o número predeterminado de pixels adjacentes estiver indisponível, substituir os valores de pixel da totalidade do número predeterminado de pixels adjacentes com um valor predeterminado com base na profundidade de bits do pixel; quando existir um ou mais pixels adjacentes disponíveis entre o número predeterminado de pixels adjacentes e um primeiro pixel adjacente (2210) entre o número predeterminado de pixels adjacentes não estiver disponível, onde o primeiro pixel adjacente (2210) está localizado na parte inferior entre os pixels adjacentes de 2nT incluindo nT pixels adjacentes, adjacentes ao lado esquerdo do bloco atual e nT pixels adjacentes localizados abaixo dos nT pixels adjacentes, adjacentes ao lado esquerdo do bloco atual, buscar (2620) por um segundo pixel adjacente disponível e mais próximo do primeiro pixel adjacente mediante busca do número predeterminado de pixels adjacentes em uma direção predeterminada a partir de um pixel adjacente, adjacente ao primeiro pixel adjacente, a predeterminada uma direção indicando uma direção de busca de baixo para cima ao longo de um lado esquerdo do bloco atual e da esquerda para a direita ao longo de um lado superior do bloco atual; quando um segundo pixel adjacente disponível é encontrado, substituir um valor de pixel do primeiro pixel adjacente por um valor de pixel do segundo pixel adjacente (2630) disponível; quando existir pelo menos um pixel adjacente indisponível localizado no lado esquerdo do bloco atual, exceto do primeiro pixel adjacente, substituir um valor de pixel do pelo menos um pixel adjacente indisponível localizado no lado esquerdo do bloco atual sequencialmente de baixo para cima ao longo do lado esquerdo do bloco atual com um valor de pixel de um pixel adjacente inferior localizado diretamente abaixo do pelo menos um pixel adjacente indisponível; quando existir um pixel adjacente indisponível localizado no lado superior do bloco atual, substituindo um valor de pixel do pixel adjacente indisponível localizado no lado superior do bloco atual sequencialmente da esquerda para a direita ao longo do lado superior do bloco atual por um pixel valor de um pixel adjacente esquerdo localizado diretamente no lado esquerdo do pixel adjacente indisponível; e realizar intrapredição no bloco atual usando o número predeterminado de pixels adjacentes compreendendo o pixel adjacente substituído (2640), em que a determinação da disponibilidade compreende determinar pixels adjacentes que pertencem a uma fatia diferente de uma fatia à qual o bloco atual pertence ou pertence a um bloco adjacente entre predições, a estar indisponível, em que o número predeterminado de pixels adjacentes é (4nT+1).1. VIDEO INTRAPREDICTION METHOD, the method characterized by comprising: determining (2610) availability of a predetermined number of adjacent pixels used for intraprediction of a current block having a size of nTxnT, where nT is an integer; when the entire predetermined number of adjacent pixels is unavailable, replacing the pixel values of the entire predetermined number of adjacent pixels with a predetermined value based on the bit depth of the pixel; when there are one or more adjacent pixels available among the predetermined number of adjacent pixels and a first adjacent pixel (2210) among the predetermined number of adjacent pixels is not available, wherein the first adjacent pixel (2210) is located at the bottom between the pixels 2nT adjacent pixels including nT adjacent pixels, adjacent to the left side of the current block and nT adjacent pixels located below the nT adjacent pixels, adjacent to the left side of the current block, search (2620) for a second available adjacent pixel closest to the first pixel adjacent by searching the predetermined number of adjacent pixels in a predetermined direction from an adjacent pixel, adjacent to the first adjacent pixel, the predetermined direction indicating a search direction from bottom to top along a left side of the current block and the left to right along a top side of the current block; when a second available adjacent pixel is found, replacing a pixel value of the first adjacent pixel with a pixel value of the second available adjacent pixel (2630); when there is at least one unavailable adjacent pixel located on the left side of the current block other than the first adjacent pixel, replace a pixel value of the at least one unavailable adjacent pixel located on the left side of the current block sequentially from bottom to top along the side left of the current block with a pixel value of a lower adjacent pixel located directly below the at least one unavailable adjacent pixel; when there is an unavailable adjacent pixel located on the top side of the current block, replacing a pixel value of the unavailable adjacent pixel located on the top side of the current block sequentially from left to right along the top side of the current block with a pixel value of one left adjacent pixel located directly on the left side of the unavailable adjacent pixel; and performing intraprediction on the current block using the predetermined number of adjacent pixels comprising the substituted adjacent pixel (2640), wherein determining availability comprises determining adjacent pixels that belong to a slice other than a slice to which the current block belongs or belongs to an adjacent block between predictions, to be unavailable, where the predetermined number of adjacent pixels is (4nT+1).
BR122020014034-8A 2011-10-28 2012-10-29 INTRAPREDICTION METHOD FROM A VIDEO BR122020014034B1 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US61/552,692 2011-10-28

Publications (1)

Publication Number Publication Date
BR122020014034B1 true BR122020014034B1 (en) 2023-08-15

Family

ID=

Similar Documents

Publication Publication Date Title
JP7103961B2 (en) Video intra-prediction method and its device
AU2018203530B2 (en) Method and apparatus for determining reference images for inter prediction
CA2883363C (en) Method and apparatus for motion vector determination in video encoding or decoding
BR112014015171B1 (en) VIDEO DECODING DEVICE
AU2018200540B2 (en) Method and apparatus for intra prediction of video
BR122020014034B1 (en) INTRAPREDICTION METHOD FROM A VIDEO
BR122020014050B1 (en) INTRAPREDICTION METHOD FROM A VIDEO
BR122020014040B1 (en) DEVICE TO DECODE A VIDEO
BR122020014045B1 (en) DEVICE TO DECODE A VIDEO
AU2015202343B2 (en) Method and apparatus for intra prediction of video